--- MPIWGWeb/MPIWGProjects.py 2005/05/09 10:01:54 1.47 +++ MPIWGWeb/MPIWGProjects.py 2005/05/27 06:47:19 1.47.2.4 @@ -66,6 +66,22 @@ class MPIWGTemplate(ZopePageTemplate): meta_type="MPIWGTemplate" + manage_options=ZopePageTemplate.manage_options+( + {'label':'Change Weight','action':'changeWeightForm'}, + ) + + def changeWeightForm(self): + """change weight form""" + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','MPIWGTemplateChangeWeight.zpt')).__of__(self) + return pt() + + def changeWeight(self,weight,RESPONSE=None): + """change weight""" + self.weight=weight + if RESPONSE is not None: + RESPONSE.redirect('manage') + + def __init__(self, id, text=None, content_type=None,MPIWGType=None): self.id = str(id) @@ -81,6 +97,12 @@ class MPIWGTemplate(ZopePageTemplate): """change form""" + def isActive(self): + """teste ob ausgewaehlt""" + if self.absolute_url()==self.REQUEST['URL']: + return "aktiv" + else: + return "" def manage_addMPIWGTemplateForm(self): """Form for adding""" @@ -90,7 +112,7 @@ def manage_addMPIWGTemplateForm(self): from urllib import quote -def manage_addMPIWGTemplate(self, MPIWGType,id, title=None,REQUEST=None): +def manage_addMPIWGTemplate(self, MPIWGType,id, title=None,weight=0,REQUEST=None): "Add a Page Template with optional file content." if type(MPIWGType)==StringType: MPIWGTypes=[MPIWGType] @@ -125,7 +147,9 @@ def manage_addMPIWGTemplate(self, MPIWGT except AttributeError: u = REQUEST['URL1'] - + ob = getattr(self, id) + ob.weight=weight + REQUEST.RESPONSE.redirect(u+'/manage_main') return '' @@ -144,6 +168,37 @@ class MPIWGRoot(ZSQLExtendFolder): folders=['MPIWGProject','Folder','ECHO_Navigation'] meta_type='MPIWGRoot' + def isNewCapital(self,text=None,reset=None): + if reset: + self.REQUEST['capital']="A" + return True + else: + if len(text)>0 and not (text[0]==self.REQUEST['capital']): + self.REQUEST['capital']=text[0] + return True + else: + return False + + def subNav(self,id): + """return subnav elemente""" + def sortWeight(x,y): + x1=int(getattr(x[1],'weight','0')) + y1=int(getattr(y[1],'weight','0')) + return cmp(x1,y1) + if hasattr(self,id): + subs=self.ZopeFind(getattr(self,id),obj_metatypes=['MPIWGTemplate']) + subs.sort(sortWeight) + return subs + else: + return None + def isActive(self,name): + """teste ob subnavigation aktiv""" + for part in self.REQUEST['URL'].split("/"): + if part==name: + return True + return False + + def upDateSQL(self,fileName): """updates SQL databases using fm.jar""" fmJarPath=os.path.join(package_home(globals()), 'updateSQL/fm.jar') @@ -567,7 +622,48 @@ class MPIWGRoot(ZSQLExtendFolder): return returnList + def formatElementsAsList(self,elements): + """formatiere tree als liste""" + + actualDepth=0 + ret="" + for element in elements: + if (element[0]>actualDepth): + #fuege soviele ul ein wie unterschied in tiefe + if element[0]==1: + ret+="""
""") + tmp=splitted[1].split("
") + self.REQUEST.SESSION['image']=tmp[0].split("\"")[1].encode('utf-8') + split2="".join(tmp[1:]) + + text3=splitted[0]+split2 + + splitted=text3.split("""""") + tmp=splitted[1].split("
") + print tmp + self.REQUEST.SESSION['imagecap']=tmp[0].encode('utf-8') + split4="".join(tmp[1:]) + + text5=splitted[0]+split4 + + else: + text5=text2 + #teste ob WEB_project_description und keine führenden p tags - if (len(text2)>4) and (not text2[0:3]=='') and (field=='WEB_project_description'): - return "
"+text2+"
" + if (len(text5)>4) and (not text5[0:3]=='') and (field=='WEB_project_description'): + return "
"+text5+"
" - return text2.encode('utf-8') + #filter image + + + return text5.encode('utf-8') def show_html(self): """simple index"""