version 1.37, 2004/10/14 09:01:32
|
version 1.40, 2004/10/21 14:28:55
|
Line 13 import string
|
Line 13 import string
|
import re |
import re |
import os |
import os |
from types import * |
from types import * |
|
import zLOG |
import xmlhelper # Methoden zur Verwaltung der projekt xmls |
import xmlhelper # Methoden zur Verwaltung der projekt xmls |
from OFS.SimpleItem import SimpleItem |
from OFS.SimpleItem import SimpleItem |
from OFS.Folder import Folder |
from OFS.Folder import Folder |
Line 138 class MPIWGRoot(ZSQLExtendFolder):
|
Line 138 class MPIWGRoot(ZSQLExtendFolder):
|
'xdata_13':'Funding institutions','WEB_project_header':'WEB_project_header', |
'xdata_13':'Funding institutions','WEB_project_header':'WEB_project_header', |
'WEB_project_description':'WEB_project_description','WEB_related_pub':'WEB_related_pub'} |
'WEB_project_description':'WEB_project_description','WEB_related_pub':'WEB_related_pub'} |
|
|
folders=['MPIWGProject','Folder'] |
folders=['MPIWGProject','Folder','ECHO_Navigation'] |
meta_type='MPIWGRoot' |
meta_type='MPIWGRoot' |
|
|
def upDateSQL(self,fileName): |
def upDateSQL(self,fileName): |
"""updates SQL databases using fm.jar""" |
"""updates SQL databases using fm.jar""" |
fmJarPath=os.path.join(package_home(globals()), 'updateSQL/fm.jar') |
fmJarPath=os.path.join(package_home(globals()), 'updateSQL/fm.jar') |
xmlPath=os.path.join(package_home(globals()), "updateSQL/%s"%fileName) |
xmlPath=os.path.join(package_home(globals()), "updateSQL/%s"%fileName) |
|
zLOG.LOG("MPIWG Web",zLOG.INFO,"java -classpath %s -Djava.awt.headless=true Convert %s"%(fmJarPath,xmlPath)) |
os.popen("java -classpath %s -Djava.awt.headless=true Convert %s"%(fmJarPath,xmlPath),"r").read() |
ret=os.popen("java -classpath %s -Djava.awt.headless=true Convert %s"%(fmJarPath,xmlPath),"r").read() |
|
zLOG.LOG("MPIWG Web",zLOG.INFO,"result convert: %s"%ret) |
return 1 |
return 1 |
|
|
def patchProjects(self,RESPONSE): |
def patchProjects(self,RESPONSE): |
Line 391 class MPIWGRoot(ZSQLExtendFolder):
|
Line 391 class MPIWGRoot(ZSQLExtendFolder):
|
def getProjectFields(self,fieldName,folder=None,sort=None): |
def getProjectFields(self,fieldName,folder=None,sort=None): |
"""getListofFieldNames""" |
"""getListofFieldNames""" |
ret=[] |
ret=[] |
#print "FN",fieldName |
|
if not folder: |
objects=self.ZopeFind(self,obj_metatypes=['MPIWGProject'],search_sub=1) |
folder=self |
|
for object in folder.__dict__: |
|
|
for object in objects: |
obj=getattr(folder,object) |
obj=object[1] |
if hasattr(obj,'meta_type'): |
|
#print obj.meta_type |
|
if obj.meta_type=='MPIWGProject': |
|
if fieldName=="WEB_title_or_short": |
if fieldName=="WEB_title_or_short": |
#print "HI!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" |
|
#print len(obj.getContent('xdata_07')) |
|
if len(obj.getContent('xdata_07'))<3: # hack weil z.Z. manchmal noch ein Trennzeichen ; oder , im Feld statt leer |
if len(obj.getContent('xdata_07'))<3: # hack weil z.Z. manchmal noch ein Trennzeichen ; oder , im Feld statt leer |
fieldNameTmp="WEB_title" |
fieldNameTmp="WEB_title" |
else: |
else: |
Line 412 class MPIWGRoot(ZSQLExtendFolder):
|
Line 408 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
ret.append((obj,obj.getContent(fieldNameTmp))) |
ret.append((obj,obj.getContent(fieldNameTmp))) |
|
|
if obj.meta_type in self.folders: |
|
|
|
ret += self.getProjectFields(fieldName,obj) |
|
|
|
if sort=="int": |
if sort=="int": |
ret.sort(sortI) |
ret.sort(sortI) |
Line 470 class MPIWGRoot(ZSQLExtendFolder):
|
Line 463 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
def updateHomepages(self,RESPONSE): |
def updateHomepages(self,RESPONSE): |
"""lege members an""" |
"""lege members an""" |
|
|
self.upDateSQL('personalwww.xml') |
self.upDateSQL('personalwww.xml') |
founds=self.ZSQLInlineSearch(_table='personal_www') |
founds=self.ZSQLInlineSearch(_table='personal_www',publish_the_data='yes') |
project=getattr(self,'members') |
project=getattr(self,'members') |
for found in founds: |
for found in founds: |
|
|
Line 485 class MPIWGRoot(ZSQLExtendFolder):
|
Line 479 class MPIWGRoot(ZSQLExtendFolder):
|
RESPONSE.write("<p>old:%s (%s,%s)</p>\n"%(found.username,found.name,found.vorname)) |
RESPONSE.write("<p>old:%s (%s,%s)</p>\n"%(found.username,found.name,found.vorname)) |
|
|
|
|
|
#delete non existing |
|
|
|
|
|
foundUserNames=[x.username for x in founds] |
|
for member in self.ZopeFind(self,obj_metatypes=["MPIWGStaff"],search_sub=1): |
|
|
|
if member[1].getId() not in foundUserNames: |
|
member[1].aq_parent.manage_delObjects(ids=[member[1].getId()]) |
|
RESPONSE.write("<p>deleted:%s</p>\n"%member[1].getId()) |
|
|
|
self.MembersCatalog.manage_catalogReindex(self.REQUEST,RESPONSE,self.REQUEST['URL1']) |
|
|
|
|
|
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
Line 700 class MPIWGRoot(ZSQLExtendFolder):
|
Line 707 class MPIWGRoot(ZSQLExtendFolder):
|
ret=[] |
ret=[] |
splitNeu=[] |
splitNeu=[] |
if email: |
if email: |
members=self.ZopeFind(self.members,obj_metatypes=['MPIWGStaff'],obj_ids=[email]) |
#print "IIII:",self.getId() |
|
members=self.ZopeFind(self,obj_metatypes=['MPIWGStaff'],obj_ids=[email],search_sub=1) |
name = members[0][1].title.decode('utf-8') |
name = members[0][1].title.decode('utf-8') |
|
|
y=name |
y=name |
Line 838 class MPIWGProject(Folder):
|
Line 846 class MPIWGProject(Folder):
|
|
|
meta_type='MPIWGProject' |
meta_type='MPIWGProject' |
|
|
|
|
def crossLinker(self): |
def crossLinker(self): |
"""experimental crosslinker""" |
"""experimental crosslinker""" |
splitted=self.WEB_project_description[0].split() |
splitted=self.WEB_project_description[0].split() |
Line 907 class MPIWGProject(Folder):
|
Line 916 class MPIWGProject(Folder):
|
pt=PageTemplateFile('Products/MPIWGWeb/zpt/project_main').__of__(self) |
pt=PageTemplateFile('Products/MPIWGWeb/zpt/project_main').__of__(self) |
return pt() |
return pt() |
|
|
|
|
def getDataFields(self): |
def getDataFields(self): |
"""giveListofDatafields""" |
"""giveListofDatafields""" |
ret=[] |
ret=[] |