version 1.1.2.17, 2008/09/07 17:13:32
|
version 1.1.2.25, 2010/02/10 18:25:45
|
Line 60 class MPIWGRoot(ZSQLExtendFolder):
|
Line 60 class MPIWGRoot(ZSQLExtendFolder):
|
'WEB_project_description':'WEB_project_description', |
'WEB_project_description':'WEB_project_description', |
'WEB_related_pub':'WEB_related_pub'} |
'WEB_related_pub':'WEB_related_pub'} |
|
|
|
# (is this used?) |
folders=['MPIWGProject','Folder','ECHO_Navigation'] |
folders=['MPIWGProject','Folder','ECHO_Navigation'] |
|
# language of this instance |
|
lang = 'en' |
# types of objects that show up in navigation |
# types of objects that show up in navigation |
nav_meta_types = ['MPIWGTemplate','MPIWGLink','MPIWGFolder'] |
nav_meta_types = ['MPIWGTemplate','MPIWGLink','MPIWGFolder'] |
|
|
Line 78 class MPIWGRoot(ZSQLExtendFolder):
|
Line 80 class MPIWGRoot(ZSQLExtendFolder):
|
ret=[] # nimmt das Array auf, dass spaeter zurueckgegeben wird |
ret=[] # nimmt das Array auf, dass spaeter zurueckgegeben wird |
ranges=[] #Array mit tupeln x,y wobei x die Position des Anfang und y des Endes der i-ten Umgebung angiebt |
ranges=[] #Array mit tupeln x,y wobei x die Position des Anfang und y des Endes der i-ten Umgebung angiebt |
|
|
|
wordStr=wordStr.lstrip().rstrip() |
|
|
def isInRanges(nr,length): |
def isInRanges(nr,length): |
"""test ob eine gegeben Position nr schon irgendwo in einer Umgebung ist, gibt den Index des ersten Wertes aus ranges zurueck, |
"""test ob eine gegeben Position nr schon irgendwo in einer Umgebung ist, gibt den Index des ersten Wertes aus ranges zurueck, |
-1, wenn kein Treffer |
-1, wenn kein Treffer |
Line 226 class MPIWGRoot(ZSQLExtendFolder):
|
Line 230 class MPIWGRoot(ZSQLExtendFolder):
|
else: |
else: |
return array[idx] |
return array[idx] |
|
|
|
def getLang(self): |
|
"""returns the default language""" |
|
return self.lang |
|
|
def browserCheck(self): |
def browserCheck(self): |
"""check the browsers request to find out the browser type""" |
"""check the browsers request to find out the browser type""" |
Line 338 class MPIWGRoot(ZSQLExtendFolder):
|
Line 345 class MPIWGRoot(ZSQLExtendFolder):
|
return subret |
return subret |
|
|
def subNav(self,obj): |
def subNav(self,obj): |
"""return subnav elemente""" |
"""return sub-navigation elements i.e. below sections""" |
#if obj.meta_type in ['MPIWGTemplate','MPIWGLink']: |
# get section -> parent should be MPIWGRoot |
# id=obj.aq_parent.getId() |
p = obj |
#else: |
sec = None |
|
# descend parents to the root (and remember the last id) |
#id=obj.getId() |
while p is not None and p.meta_type != 'MPIWGRoot': |
|
sec = p |
|
p = p.aq_parent |
#suche die zweite ebene |
|
|
subsecs = sec.objectItems(self.nav_meta_types) |
if not obj.aq_parent.getId() in ['de','en']: |
subsecs = [s for s in subsecs if s[1].title != ""] |
obj=obj.aq_parent |
subsecs.sort(sortWeight) |
|
return subsecs |
while not self.ZopeFind(self,obj_ids=[obj.getId()]): |
|
obj=obj.aq_parent |
|
|
|
|
|
if hasattr(self,obj.getId()): |
|
|
|
subs=self.ZopeFind(getattr(self,obj.getId()),obj_metatypes=self.nav_meta_types) |
|
subret=[] |
|
|
|
for x in subs: |
|
if not(x[1].title==""): |
|
subret.append(x) |
|
subret.sort(sortWeight) |
|
return subret |
|
else: |
|
return None |
|
|
|
def isType(self,object,meta_type): |
def isType(self,object,meta_type): |
"""teste ob ein object vom meta_type ist.""" |
"""teste ob ein object vom meta_type ist.""" |
Line 395 class MPIWGRoot(ZSQLExtendFolder):
|
Line 386 class MPIWGRoot(ZSQLExtendFolder):
|
else: |
else: |
return style |
return style |
|
|
def getFeatures(self): |
def getFeatures(self, num=None): |
"""returns a list of all Features""" |
"""returns a list of the last num Features""" |
dir = getattr(self, 'features') |
dir = getattr(self, 'features') |
features = dir.objectItems(['MPIWGFeature']) |
features = dir.objectItems(['MPIWGFeature']) |
features.sort(sortWeight) |
features.sort(sortWeight) |
|
if num is not None: |
|
# take only the last num elements |
|
features = features[-num:] |
# return pure list of objects |
# return pure list of objects |
return [f[1] for f in features] |
return [f[1] for f in features] |
|
|
|
|
|
def getMPIWGRoot(self): |
|
"""returns the MPIWG root""" |
|
return self |
|
|
def MPIWGrootURL(self): |
def MPIWGrootURL(self): |
"""returns the URL to the root""" |
"""returns the URL to the root""" |
return self.absolute_url() |
return self.absolute_url() |
Line 591 class MPIWGRoot(ZSQLExtendFolder):
|
Line 589 class MPIWGRoot(ZSQLExtendFolder):
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeMPIWGRootForm')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','changeMPIWGRootForm')).__of__(self) |
return pt() |
return pt() |
|
|
def changeMPIWGRoot(self,title,disciplineList,themesList,connection_id,RESPONSE=None): |
def changeMPIWGRoot(self,title,disciplineList,themesList,connection_id,lang=None,RESPONSE=None): |
"""change""" |
"""change""" |
self.title=title |
self.title=title |
self.connection_id=connection_id |
self.connection_id=connection_id |
self.disciplineList=disciplineList |
self.disciplineList=disciplineList |
self.themesList=themesList |
self.themesList=themesList |
|
if lang is not None: |
|
self.lang = lang |
|
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
Line 635 class MPIWGRoot(ZSQLExtendFolder):
|
Line 635 class MPIWGRoot(ZSQLExtendFolder):
|
ret.append(project) |
ret.append(project) |
|
|
#logging.debug("getContexts: childs=%s parents=%s depth=%s => %s"%(childs,parents,depth,repr(ret))) |
#logging.debug("getContexts: childs=%s parents=%s depth=%s => %s"%(childs,parents,depth,repr(ret))) |
|
|
return ret |
return ret |
|
|
|
|
Line 778 class MPIWGRoot(ZSQLExtendFolder):
|
Line 779 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
|
|
result,msg=MPIWGStaff.createNewDBEntry(self,data['publish_the_data'],data['key'],data['last_name'], |
result,msg=MPIWGStaff.createNewDBEntry(self,data['publish_the_data'],data['key'],data['last_name'], |
data['first_name'],data['title'],data['status'],"", |
data['first_name'],data['titles_new'],data['status'],"", |
"",data['date_from'],data['date_to'], |
"",data['date_from'],data['date_to'], |
data['department'],data['home_inst'],data['funded_by'], |
data['department'],'',data['funded_by'], |
data['e_mail2'],data['current_work'],"yes",data['date_stay_at_mpiwg'],data['group'],"no",data['current_work']) |
data['e_mail2'],data['current_work'],"yes",data['date_stay_at_mpiwg'],data['group'],"no",data['current_work']) |
|
|
return result,msg |
return result,msg |
Line 929 class MPIWGRoot(ZSQLExtendFolder):
|
Line 930 class MPIWGRoot(ZSQLExtendFolder):
|
try: |
try: |
|
|
self.ProjectCatalog.manage_catalogReindex(self.REQUEST,RESPONSE,self.REQUEST['URL1']) |
self.ProjectCatalog.manage_catalogReindex(self.REQUEST,RESPONSE,self.REQUEST['URL1']) |
|
logger("MPIWG Root (reindexCatalog: projects)",logging.INFO,"DONE") |
|
except: |
|
logger("MPIWG Root (reindexCatalog: projects)",logging.WARNING," %s %s"%sys.exc_info()[:2]) |
|
|
|
try: |
|
|
|
self.MembersCatalog.manage_catalogReindex(self.REQUEST,RESPONSE,self.REQUEST['URL1']) |
|
logger("MPIWG Root (reindexCatalog: members)",logging.INFO,"DONE") |
|
except: |
|
logger("MPIWG Root (reindexCatalog: members)",logging.WARNING," %s %s"%sys.exc_info()[:2]) |
|
|
|
try: |
|
|
|
self.fulltextProjectsMembers.manage_catalogReindex(self.REQUEST,RESPONSE,self.REQUEST['URL1']) |
|
logger("MPIWG Root (reindexCatalog: fulltextProjectsMembers)",logging.INFO,"DONE") |
except: |
except: |
logger("MPIWG Root (updatehomepage)",logging.WARNING," %s %s"%sys.exc_info()[:2]) |
logger("MPIWG Root (reindexCatalog: fulltextProjectsMembers)",logging.WARNING," %s %s"%sys.exc_info()[:2]) |
|
|
|
|
|
|
Line 950 class MPIWGRoot(ZSQLExtendFolder):
|
Line 966 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
results=self.MembersCatalog({'isPublished':True}) |
results=self.MembersCatalog({'isPublished':True}) |
|
|
ret=[(", ".join([proj.lastName, proj.firstName]).decode('utf-8'),proj.getKey) for proj in results] |
ret=[(unicodify(", ".join([proj.lastName, proj.firstName])), proj.getKey) for proj in results] |
|
|
ret.sort(sorter) |
ret.sort(sorter) |
return ret |
return ret |