|
|
| version 1.1.2.5, 2008/08/28 15:18:49 | version 1.1.2.6, 2008/08/28 18:20:09 |
|---|---|
| Line 30 import updatePersonalWWW | Line 30 import updatePersonalWWW |
| import MPIWGStaff | import MPIWGStaff |
| from MPIWGHelper import * | from MPIWGHelper import * |
| def sortWeight(x,y): | |
| x1=int(getattr(x[1],'weight','0')) | |
| y1=int(getattr(y[1],'weight','0')) | |
| return cmp(x1,y1) | |
| class MPIWGRoot(ZSQLExtendFolder): | class MPIWGRoot(ZSQLExtendFolder): |
| """Stammordner fuer den Web-Server""" | """Stammordner fuer den Web-Server""" |
| fieldLabels={'WEB_title':'WEB_Title','xdata_01':'Responsible Scientists','xdata_02':'Department', | fieldLabels={'WEB_title':'WEB_Title', |
| 'xdata_03':'Historical Persons','xdata_04':'Time period', | 'xdata_01':'Responsible Scientists', |
| 'xdata_05':'Sorting number','xdata_06':'Keywords','xdata_07':'Short title', | 'xdata_02':'Department', |
| 'xdata_08':'Other involved scholars' ,'xdata_09':'Disciplines','xdata_10':'Themes', | 'xdata_03':'Historical Persons', |
| 'xdata_11':'Object Digitallibrary','xdata_12':'Cooperation partners', | 'xdata_04':'Time period', |
| 'xdata_13':'Funding institutions','WEB_project_header':'WEB_project_header', | 'xdata_05':'Sorting number', |
| 'WEB_project_description':'WEB_project_description','WEB_related_pub':'WEB_related_pub'} | 'xdata_06':'Keywords', |
| 'xdata_07':'Short title', | |
| 'xdata_08':'Other involved scholars' , | |
| 'xdata_09':'Disciplines', | |
| 'xdata_10':'Themes', | |
| 'xdata_11':'Object Digitallibrary', | |
| 'xdata_12':'Cooperation partners', | |
| 'xdata_13':'Funding institutions', | |
| 'WEB_project_header':'WEB_project_header', | |
| 'WEB_project_description':'WEB_project_description', | |
| 'WEB_related_pub':'WEB_related_pub'} | |
| folders=['MPIWGProject','Folder','ECHO_Navigation'] | folders=['MPIWGProject','Folder','ECHO_Navigation'] |
| meta_type='MPIWGRoot' | meta_type='MPIWGRoot' |
| Line 68 class MPIWGRoot(ZSQLExtendFolder): | Line 85 class MPIWGRoot(ZSQLExtendFolder): |
| return ret | return ret |
| def harvestProjects(self): | def harvestProjects(self): |
| """harvest""" | """harvest""" |
| folder="/tmp" | folder="/tmp" |
| Line 265 class MPIWGRoot(ZSQLExtendFolder): | Line 281 class MPIWGRoot(ZSQLExtendFolder): |
| return True | return True |
| return False | return False |
| def getSection(self): | |
| """returns the current section name""" | def getSections(self): |
| root = self.absolute_url() | """returns a list of all sections i.e. top-level MPIWGFolders""" |
| url = self.REQUEST['URL'] | secs = self.objectItems(['MPIWGFolder']) |
| if not url: | secs.sort(sortWeight) |
| return None | #logging.debug("root: %s secs: %s"%(repr(self.absolute_url()), repr(secs))) |
| path = string.replace(url, root, '') | return secs |
| paths = path.split('/') | |
| if len(paths) > 0: | |
| sec = paths[1] | |
| if sec.find('.') < 0: | |
| return sec | |
| else: | |
| return None | |
| return None | |
| def getSectionStyle(self, name, style=""): | def getSectionStyle(self, name, style=""): |
| """returns a string with the given style + '-sel' if the current section == name""" | """returns a string with the given style + '-sel' if the current section == name""" |
| Line 485 class MPIWGRoot(ZSQLExtendFolder): | Line 493 class MPIWGRoot(ZSQLExtendFolder): |
| RESPONSE.redirect('manage_main') | RESPONSE.redirect('manage_main') |
| def getContexts(self,childs=None,parents=None,depth=None,date=None,onlyActive=True): | def getContexts(self,childs=None,parents=None,depth=None,date=None,onlyActive=True): |
| """childs alle childs, alle parents""" | """childs alle childs, alle parents""" |
| ret=[] | ret=[] |
| if parents: | if parents: |
| splitted=parents.split(".") | pnums=parents.split(".") |
| parentId=string.join(splitted[0:len(splitted)-1],".") | while len(pnums) > 1: |
| pnums.pop() | |
| parentId=string.join(pnums,".") | |
| for project in self.getProjectFields('xdata_05',sort='int',date=date): | for project in self.getProjectFields('xdata_05',sort='int',date=date): |
| if project[1]==parentId: | if project[1]==parentId: |
| ret.append(project) | ret.append(project) |
| if (depth is not None) and (len(ret) >= depth): | |
| break | |
| if childs: | if childs: |
| for project in self.getProjectFields('xdata_05',sort='int',date=date): | for project in self.getProjectFields('xdata_05',sort='int',date=date): |
| searchStr=childs+"(\..*)" | searchStr=childs+"(\..*)" |
| Line 512 class MPIWGRoot(ZSQLExtendFolder): | Line 524 class MPIWGRoot(ZSQLExtendFolder): |
| ret.append(project) | ret.append(project) |
| else: | else: |
| ret.append(project) | ret.append(project) |
| logging.debug("getContexts: childs=%s parents=%s depth=%s => %s"%(childs,parents,depth,repr(ret))) | |
| return ret | return ret |
| def getProjectFields(self,fieldName,date=None,folder=None,sort=None): | def getProjectFields(self,fieldName,date=None,folder=None,sort=None): |
| """getListofFieldNames""" | """getListofFieldNames""" |
| ret=[] | ret=[] |