Changeset 342

Show
Ignore:
Timestamp:
05/02/08 16:36:15 (8 months ago)
Author:
johnbywater
Message:

Unified list/listall/find/search templates context setup.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/dm/view/base.py

    r332 r342  
    929929        domainClassRegister = self.registry.getDomainClassRegister() 
    930930        objectRegister = self.getManipulatedObjectRegister() 
    931         objectRegisterCount = len(objectRegister) 
    932         isRegisterCountLow = objectRegisterCount < self.registerSizeThreshold 
    933         isRegisterCountSingle = objectRegisterCount == 1 
    934         isRegisterCountZero = objectRegisterCount == 0 
     931        objectCount = len(objectRegister) 
     932        isCountSingle = objectCount == 1 
     933        isCountZero = objectCount == 0 
     934        isCountLow = objectCount < self.registerSizeThreshold 
    935935        self.context.update({ 
    936936            'domainClassNameList' : domainClassRegister.keys(), # todo: remove 
    937             'domainObjectList'    : objectRegister, 
    938             'domainClassName'     : objectRegister.typeName, 
    939             'objectRegister'      : objectRegister, 
    940             'registerCount'       : objectRegisterCount, 
    941             'isRegisterCountLow'  : isRegisterCountLow, 
    942             'isRegisterCountSingle' : isRegisterCountSingle, 
    943             'isRegisterCountZero' : isRegisterCountZero, 
     937            'domainObjectList': objectRegister, 
     938            'domainClassName': objectRegister.typeName, 
     939            'objectRegister': objectRegister, 
     940            'objectCount': objectCount, 
     941            'isCountSingle': isCountSingle, 
     942            'isCountZero': isCountZero, 
     943            'showRegisterAllLink': not isCountLow, 
     944            'showRegisterTable': isCountLow, 
     945            'showRegisterIndex': not isCountLow, 
     946            'showRegisterSearch': False, 
    944947        }) 
    945948 
     
    967970    def setContext(self): 
    968971        super(AbstractSearchView, self).setContext() 
     972        self.context.update({ 
     973            'showRegisterSearch': True, 
     974            'showRegisterIndex': True, 
     975        }) 
    969976        if self.startsWith or self.userQuery: 
    970977            searchResultList = self.searchManipulatedRegister() 
     978            objectCount = len(searchResultList) 
    971979            self.context.update({ 
    972                 'isResultsRequest' : True, 
    973                 'domainObjectList' : searchResultList, 
    974                 'resultsCount'     : len(searchResultList), 
    975                 'isResultSingular' : len(searchResultList) == 1, 
    976                 'userQuery'        : self.userQuery.replace('"', '&quot;'), 
    977                 'startsWith'       : self.startsWith, 
     980                'isResultsRequest': True, 
     981                'domainObjectList': searchResultList, 
     982                'objectCount': objectCount, 
     983                'isCountZero': objectCount == 0, 
     984                'isCountSingle': objectCount == 1, 
     985                'userQuery': self.userQuery.replace('"', '&quot;'), 
     986                'startsWith': self.startsWith, 
     987                'showRegisterTable': bool(objectCount), 
    978988                # todo: Improve above HTML character substitution. 
     989            }) 
     990        else: 
     991            objectRegister = self.getManipulatedObjectRegister() 
     992            objectCount = len(objectRegister) 
     993            self.context.update({ 
     994                'objectCount': objectCount, 
     995                'showRegisterTable': False, 
    979996            }) 
    980997 
     
    10081025    def setContext(self): 
    10091026        super(AbstractFindView, self).setContext() 
     1027        self.context.update({ 
     1028            'showRegisterSearch': True, 
     1029            'showRegisterIndex': True, 
     1030        }) 
    10101031        if self.startsWith: 
    10111032            resultList = self.findDomainObjects() 
     1033            objectCount = len(resultList) 
    10121034            self.context.update({ 
    1013                 'isResultsRequest' : True, 
    1014                 'domainObjectList' : resultList, 
    1015                 'resultsCount'     : len(resultList), 
    1016                 'isResultSingular' : len(resultList) == 1, 
    1017                 'startsWith'       : self.startsWith, 
     1035                'isResultsRequest': True, 
     1036                'domainObjectList': resultList, 
     1037                'objectCount': objectCount, 
     1038                'isCountZero': objectCount == 0, 
     1039                'isCountSingle': objectCount == 1, 
     1040                'startsWith': self.startsWith, 
     1041                'showRegisterTable': bool(objectCount), 
    10181042            }) 
    1019  
     1043        else: 
     1044            objectRegister = self.getManipulatedObjectRegister() 
     1045            objectCount = len(objectRegister) 
     1046            self.context.update({ 
     1047                'objectCount': objectCount, 
     1048                'showRegisterTable': False, 
     1049            }) 
     1050     
    10201051    def findDomainObjects(self): 
    10211052        if not self.domainClassName: 
  • trunk/src/dm/view/registry.py

    r313 r342  
    279279        kwds['actionName'] = actionName 
    280280        super(RegistryListallView, self).__init__(**kwds) 
     281 
     282    def setContext(self, **kwds): 
     283        super(RegistryListallView, self).setContext(**kwds) 
     284        self.context.update({ 
     285            'showRegisterTable': True, 
     286            'showRegisterIndex': True, 
     287            'showRegisterAllLink': False, 
     288        }) 
    281289 
    282290    def makeTemplatePath(self):