version 1.175.2.27, 2011/08/16 16:27:08
|
version 1.175.2.32, 2011/08/25 15:05:22
|
Line 1
|
Line 1
|
from OFS.Folder import Folder |
from OFS.Folder import Folder |
from OFS.Image import File |
|
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate |
from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
from Products.PageTemplates.PageTemplateFile import PageTemplateFile |
|
from App.ImageFile import ImageFile |
|
from App.Common import rfc1123_date |
|
#from Products.ZSimpleFile.ZSimpleFile import ZSimpleFile |
from AccessControl import ClassSecurityInfo |
from AccessControl import ClassSecurityInfo |
from AccessControl import getSecurityManager |
from AccessControl import getSecurityManager |
from Globals import package_home |
from Globals import package_home |
|
|
#from Ft.Xml import EMPTY_NAMESPACE, Parse |
|
#import Ft.Xml.Domlette |
|
|
|
import xml.etree.ElementTree as ET |
import xml.etree.ElementTree as ET |
|
|
import os.path |
import os |
|
import stat |
import sys |
import sys |
import urllib |
import urllib |
import logging |
import logging |
Line 106 def getParentPath(path, cnt=1):
|
Line 106 def getParentPath(path, cnt=1):
|
# split by /, shorten, and reassemble |
# split by /, shorten, and reassemble |
return '/'.join(path.split('/')[0:-cnt]) |
return '/'.join(path.split('/')[0:-cnt]) |
|
|
|
def devImageFileIndexHtml(self, REQUEST, RESPONSE): |
|
"""index_html method for App.ImageFile that updates the file info for each request.""" |
|
stat_info = os.stat(self.path) |
|
self.size = stat_info[stat.ST_SIZE] |
|
self.lmt = float(stat_info[stat.ST_MTIME]) or time.time() |
|
self.lmh = rfc1123_date(self.lmt) |
|
# call original method |
|
return ImageFile.index_html(self, REQUEST, RESPONSE) |
|
|
## |
## |
## documentViewer class |
## documentViewer class |
Line 124 class documentViewer(Folder):
|
Line 132 class documentViewer(Folder):
|
|
|
# templates and forms |
# templates and forms |
viewer_text = PageTemplateFile('zpt/viewer_text', globals()) |
viewer_text = PageTemplateFile('zpt/viewer_text', globals()) |
|
viewer_images = PageTemplateFile('zpt/viewer_images', globals()) |
viewer_main = PageTemplateFile('zpt/viewer_main', globals()) |
viewer_main = PageTemplateFile('zpt/viewer_main', globals()) |
toc_thumbs = PageTemplateFile('zpt/toc_thumbs', globals()) |
toc_thumbs = PageTemplateFile('zpt/toc_thumbs', globals()) |
toc_text = PageTemplateFile('zpt/toc_text', globals()) |
toc_text = PageTemplateFile('zpt/toc_text', globals()) |
Line 137 class documentViewer(Folder):
|
Line 146 class documentViewer(Folder):
|
page_main_pureXml = PageTemplateFile('zpt/page_main_pureXml', globals()) |
page_main_pureXml = PageTemplateFile('zpt/page_main_pureXml', globals()) |
head_main = PageTemplateFile('zpt/head_main', globals()) |
head_main = PageTemplateFile('zpt/head_main', globals()) |
info_xml = PageTemplateFile('zpt/info_xml', globals()) |
info_xml = PageTemplateFile('zpt/info_xml', globals()) |
# TODO: can this be nicer? |
docuviewer_css = ImageFile('css/docuviewer.css',globals()) |
docuviewer_css = File('docuviewer_css','',open(os.path.join(package_home(globals()),'css/docuviewer.css')), content_type='text/css') |
# make ImageFile better for development |
|
docuviewer_css.index_html = devImageFileIndexHtml |
|
|
|
|
thumbs_main_rss = PageTemplateFile('zpt/thumbs_main_rss', globals()) |
thumbs_main_rss = PageTemplateFile('zpt/thumbs_main_rss', globals()) |
Line 918 def manage_AddDocumentViewer(self,id,ima
|
Line 928 def manage_AddDocumentViewer(self,id,ima
|
|
|
if RESPONSE is not None: |
if RESPONSE is not None: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
## DocumentViewerTemplate class |
|
class DocumentViewerTemplate(ZopePageTemplate): |
|
"""Template for document viewer""" |
|
meta_type="DocumentViewer Template" |
|
|
|
|
|
def manage_addDocumentViewerTemplateForm(self): |
|
"""Form for adding""" |
|
pt=PageTemplateFile('zpt/addDocumentViewerTemplate', globals()).__of__(self) |
|
return pt() |
|
|
|
def manage_addDocumentViewerTemplate(self, id='viewer_main', title=None, text=None, |
|
REQUEST=None, submit=None): |
|
"Add a Page Template with optional file content." |
|
|
|
self._setObject(id, DocumentViewerTemplate(id)) |
|
ob = getattr(self, id) |
|
txt=file(os.path.join(package_home(globals()),'zpt/viewer_main.zpt'),'r').read() |
|
logging.info("txt %s:"%txt) |
|
ob.pt_edit(txt,"text/html") |
|
if title: |
|
ob.pt_setTitle(title) |
|
try: |
|
u = self.DestinationURL() |
|
except AttributeError: |
|
u = REQUEST['URL1'] |
|
|
|
u = "%s/%s" % (u, urllib.quote(id)) |
|
REQUEST.RESPONSE.redirect(u+'/manage_main') |
|
return '' |
|
|
|
|
|
|
|