version 1.67, 2008/01/29 13:53:22
|
version 1.71, 2008/08/05 16:47:15
|
Line 47 def makeXML(str):
|
Line 47 def makeXML(str):
|
</page>"""%str |
</page>"""%str |
|
|
|
|
|
def checkXMLfrag(str): |
|
"""checks and returns str as XML fragment""" |
|
|
|
xmltempl = """<?xml version="1.0" encoding="utf-8" ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
|
<txt>%s</txt>""" |
|
try: |
|
dom=xml.dom.minidom.parseString(xmltempl%str) |
|
return str |
|
except: |
|
str=str.replace("& ","& ") |
|
|
|
dom=xml.dom.minidom.parseString(xmltempl%str) |
|
return str |
|
|
|
|
|
|
def getText(nodelist): |
def getText(nodelist): |
|
|
Line 217 class VLP_essay(Folder):
|
Line 232 class VLP_essay(Folder):
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
|
def getPageList(self): |
|
"""returns sorted list of (id,object) of page objects""" |
|
|
|
def sortFind(x,y): |
|
return cmp(x[0],y[0]) |
|
|
|
# pages=[] |
|
# pagestmp=self.ZopeFind(self,obj_metatypes=['DTML Document','File']) |
|
# for page in pagestmp: |
|
# if not (page[1].getId()[0]=="."): |
|
# pages.append(page) |
|
|
|
pages = self.objectItems(['DTML Document','File']) |
|
pages.sort(sortFind) |
|
return pages |
|
|
|
|
|
def getPageXMLfrag(self, pageNum=None, pageId=None, pageObj=None): |
|
"""returns XML fragment of page with id""" |
|
xml = None |
|
|
|
if pageNum is not None: |
|
pl = self.getPageList() |
|
pageObj = pl[int(pageNum)-1][1] |
|
|
|
if pageId is not None: |
|
pageObj = getattr(self, pageId, None) |
|
|
|
if pageObj is not None: |
|
txt = "" |
|
data = pageObj.data |
|
while data is not None: |
|
txt += data |
|
if isinstance(data, str): |
|
data = None |
|
else: |
|
data = data.next |
|
|
|
xml = checkXMLfrag(txt) |
|
|
|
return xml |
|
|
|
|
def getPage(self,pagenum): |
def getPage(self,pagenum): |
"""gibt essay page mit num aus""" |
"""gibt essay page mit num aus""" |
Line 232 class VLP_essay(Folder):
|
Line 289 class VLP_essay(Folder):
|
#print str(pages[int(pagenum)][1]()) |
#print str(pages[int(pagenum)][1]()) |
|
|
if pages[int(pagenum)-1][1].meta_type=='File': |
if pages[int(pagenum)-1][1].meta_type=='File': |
|
|
#return makeXML(str(pages[int(pagenum)-1][1])) |
#return makeXML(str(pages[int(pagenum)-1][1])) |
#txt=pages[int(pagenum)-1][1].data.decode('utf-8') |
#txt=pages[int(pagenum)-1][1].data.decode('utf-8') |
txt=pages[int(pagenum)-1][1].data |
txt=pages[int(pagenum)-1][1].data |
#print txt.encode('utf-8') |
#print txt.encode('utf-8') |
|
|
return self.xml2html(makeXML(txt),quote="no") |
return self.xml2html(makeXML(txt),quote="no") |
else: |
else: |
|
|
|
|
|
|
return self.xml2html(makeXML(pages[int(pagenum)-1][1]()),quote="no") |
return self.xml2html(makeXML(pages[int(pagenum)-1][1]()),quote="no") |
|
|
def nextPage(self,pagenum,url): |
def nextPage(self,pagenum,url): |
Line 628 class VLP_resource(ECHO_resource,Cacheab
|
Line 680 class VLP_resource(ECHO_resource,Cacheab
|
|
|
if os.path.isdir(os.path.join(self.vlp_basis,self.resourceID,'pageimg')): |
if os.path.isdir(os.path.join(self.vlp_basis,self.resourceID,'pageimg')): |
return os.path.join(self.vlp_basis,self.resourceID,'pageimg') |
return os.path.join(self.vlp_basis,self.resourceID,'pageimg') |
elif os.path.isdir(os.path.join(self.vlp_basis,self.resourceID,'pagesHi')): |
elif os.path.isdir(os.path.join(self.vlp_basis,self.resourceID,'pages')): |
return os.path.join(self.vlp_basis,self.resourceID,'pagesHi') |
return os.path.join(self.vlp_basis,self.resourceID,'pages') |
else: |
else: |
return "<error>no images </error>" |
return "<error>no images </error>" |
|
|
Line 766 class VLP_resource(ECHO_resource,Cacheab
|
Line 818 class VLP_resource(ECHO_resource,Cacheab
|
#size of hi resolution |
#size of hi resolution |
files=[] |
files=[] |
try: |
try: |
pathHi=os.path.join(self.vlp_basis,self.resourceID,'pagesHi') |
pathHi=os.path.join(self.vlp_basis,self.resourceID,'pages') |
files=os.listdir(pathHi) |
files=os.listdir(pathHi) |
hi=0 |
hi=0 |
for f in files: |
for f in files: |
Line 813 class VLP_resource(ECHO_resource,Cacheab
|
Line 865 class VLP_resource(ECHO_resource,Cacheab
|
ret=os.listdir(os.path.join(self.vlp_basis,self.resourceID,'pageimg')) |
ret=os.listdir(os.path.join(self.vlp_basis,self.resourceID,'pageimg')) |
self.imagePath='pageimg' |
self.imagePath='pageimg' |
except: |
except: |
ret=os.listdir(os.path.join(self.vlp_basis,self.resourceID,'pagesHi')) |
ret=os.listdir(os.path.join(self.vlp_basis,self.resourceID,'pages')) |
self.imagePath='pagesHi' |
self.imagePath='pages' |
temp=[] |
temp=[] |
ret.sort() |
ret.sort() |
for x in ret: |
for x in ret: |