Changeset 1377


Ignore:
Timestamp:
02/15/07 21:37:55 (13 years ago)
Author:
jukka
Message:

Worked on #1115, spent 4h. Works except editing multiple uploaded slides in presentation.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LargeSectionFolder.py

    r1376 r1377  
    239239 
    240240        # if the same search has just been done, return it instead of going through all of this 
    241         if hasattr(REQUEST, 'SESSION'):         
    242             if REQUEST.SESSION.get('latest_st')== request_opened['searchterms']: 
    243                 return REQUEST.SESSION.get('results_n_dict') 
     241#        if hasattr(REQUEST, 'SESSION'):         
     242#            if REQUEST.SESSION.get('latest_st')== request_opened['searchterms']: 
     243#                return REQUEST.SESSION.get('results_n_dict') 
    244244 
    245245        pcatalog = getToolByName(self, 'portal_catalog') 
     
    258258 
    259259        results = pcatalog.searchResults(REQUEST, **kw) 
     260        #print [(x.portal_type, x.Title, x.id) for x in results if x.portal_type in SEARCHABLE_TYPES] 
    260261 
    261262        if topic_name=='published':  
     
    273274        for k in MATERIAL_TYPES: del rc[k] 
    274275         
    275         if hasattr(REQUEST, 'SESSION'):         
    276             REQUEST.SESSION.set('latest_st', request_opened['searchterms']) 
    277             REQUEST.SESSION.set('results_n_dict', rc) 
     276#        if hasattr(REQUEST, 'SESSION'):         
     277#            REQUEST.SESSION.set('latest_st', request_opened['searchterms']) 
     278#            REQUEST.SESSION.set('results_n_dict', rc) 
     279        #print rc 
    278280 
    279281        return rc 
  • trunk/Resources.py

    r1350 r1377  
    164164 
    165165        self.recalculateAuthors() 
     166 
     167 
     168    def checkTitle(self,title): 
     169        def zero_fill(matchobj): 
     170            return matchobj.group().zfill(8) 
     171        pc=getToolByName(self, 'portal_catalog') 
     172        plone_tool = getToolByName(self, 'plone_utils', None) 
     173        sortabletitle = title.lower().strip() 
     174        # Replace numbers with zero filled numbers 
     175        num_sort_regex = re.compile('\d+') 
     176        sortabletitle = num_sort_regex.sub(zero_fill, sortabletitle) 
     177        sortabletitle = sortabletitle[:30] 
     178        delete_list=[] 
     179         
     180        # Is title ok as a title? 
     181        matches=pc({'sortable_title':sortabletitle}) 
     182        if matches: 
     183            for match in matches: 
     184                if match.portal_type=='Redirector' or match.review_state=='Deleted': 
     185                    delete_list.append(match) 
     186                elif match.UID==self.UID(): 
     187                    pass 
     188                else: 
     189                    return False 
     190 
     191        # Will this title make a good id?         
     192        tempid=plone_tool.normalizeString(title) 
     193        matches=pc({'id':tempid}) 
     194        if matches: 
     195            for match in matches: 
     196                if match.portal_type=='Redirector' or match.review_state=='Deleted': 
     197                    delete_list.append(match) 
     198                elif match.UID==self.UID(): 
     199                    pass 
     200                else: 
     201                    return False 
     202 
     203        # If otherwise ok, delete Redirectors and Deleted objects from our way. 
     204        for obj in delete_list:             
     205            delpath=obj.location 
     206            delid=obj.id 
     207            obj=obj.getObject() 
     208            context=obj.aq_parent 
     209            context.manage_delObject([delid]) 
     210            print 'deleted redirector/deleted %s in %s' % (delid,context)   
     211        return True          
     212 
    166213 
    167214    security.declarePrivate('migrate_history') 
  • trunk/__init__.py

    r1316 r1377  
    121121        ).initialize(context) 
    122122 
    123  
    124123class LeMillCustomizationPolicy(DefaultCustomizationPolicy): 
    125124    """Customization policy for the LeMill site.""" 
  • trunk/skins/lemill/base_edit.cpt.metadata

    r614 r1377  
    33 
    44[validators] 
    5 validators = validate_base 
     5validators = validate_base, validate_title 
    66validators..form_add = 
    77validators..cancel = 
Note: See TracChangeset for help on using the changeset viewer.