--- documentViewer/documentViewer.py 2010/11/02 15:32:44 1.151 +++ documentViewer/documentViewer.py 2010/12/20 13:52:07 1.161 @@ -147,10 +147,12 @@ class documentViewer(Folder): toc_text = PageTemplateFile('zpt/toc_text', globals()) toc_figures = PageTemplateFile('zpt/toc_figures', globals()) page_main_images = PageTemplateFile('zpt/page_main_images', globals()) + page_main_double = PageTemplateFile('zpt/page_main_double', globals()) page_main_text = PageTemplateFile('zpt/page_main_text', globals()) page_main_text_dict = PageTemplateFile('zpt/page_main_text_dict', globals()) page_main_gis =PageTemplateFile ('zpt/page_main_gis', globals()) page_main_xml = PageTemplateFile('zpt/page_main_xml', globals()) + page_main_pureXml = PageTemplateFile('zpt/page_main_pureXml', globals()) head_main = PageTemplateFile('zpt/head_main', globals()) docuviewer_css = PageTemplateFile('css/docuviewer.css', globals()) info_xml = PageTemplateFile('zpt/info_xml', globals()) @@ -199,10 +201,18 @@ class documentViewer(Folder): """get query""" return self.template.fulltextclient.getQuery(**args) - def getPDF(self, **args): + def getQueryResultHits(self, **args): """get query""" - return self.template.fulltextclient.getPDF(**args) - + return self.template.fulltextclient.getQueryResultHits(**args) + + def getQueryResultHitsText(self, **args): + """get query""" + return self.template.fulltextclient.getQueryResultHitsText(**args) + + def getQueryResultHitsFigures(self, **args): + """get query""" + return self.template.fulltextclient.getQueryResultHitsFigures(**args) + def getSearch(self, **args): """get search""" return self.template.fulltextclient.getSearch(**args) @@ -219,6 +229,18 @@ class documentViewer(Folder): """get original page number """ return self.template.fulltextclient.getOrigPages(**args) + def getAllPlaces(self, **args): + """get original page number """ + return self.template.fulltextclient.getAllPlaces(**args) + + def getTocEntries(self, **args): + """get original page number """ + return self.template.fulltextclient.getTocEntries(**args) + + def getFigureEntries(self, **args): + """get original page number """ + return self.template.fulltextclient.getFigureEntries(**args) + def getNumPages(self, docinfo): """get numpages""" return self.template.fulltextclient.getNumPages(docinfo) @@ -270,7 +292,7 @@ class documentViewer(Folder): pt = getattr(self.template, 'thumbs_main_rss') if viewMode=="auto": # automodus gewaehlt - if docinfo.has_key("textURL") or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert + if docinfo.has_key("textURL") or docinfo.get('textURLPath',None): #texturl gesetzt und textViewer konfiguriert viewMode="text" else: viewMode="images" @@ -278,7 +300,7 @@ class documentViewer(Folder): return pt(docinfo=docinfo,pageinfo=pageinfo,viewMode=viewMode) security.declareProtected('View','index_html') - def index_html(self,url,mode="texttool",viewMode="auto",tocMode="thumbs",start=None,pn=1,mk=None, query=None, querySearch=None, characterNormalization=""): + def index_html(self,url,mode="texttool",viewMode="auto",tocMode="thumbs",start=None,pn=1,mk=None): ''' view it @param mode: defines how to access the document behind url @@ -306,7 +328,7 @@ class documentViewer(Folder): docinfo = self.getToc(mode=tocMode, docinfo=docinfo) if viewMode=="auto": # automodus gewaehlt - if docinfo.has_key('textURL') or docinfo.has_key('textURLPath'): #texturl gesetzt und textViewer konfiguriert + if docinfo.has_key('textURL') or docinfo.get('textURLPath',None): #texturl gesetzt und textViewer konfiguriert viewMode="text_dict" else: viewMode="images" @@ -331,7 +353,6 @@ class documentViewer(Folder): """getBrowser the version of browser """ names="" names = browserCheck(self) - #logging.debug("XXXXXXXXXXXXXXXX: %s"%names) return names def findDigilibUrl(self): @@ -397,6 +418,20 @@ class documentViewer(Folder): pt = getattr(self.template, 'info_xml') return pt(docinfo=docinfo) + def getOptionToggle(self, newState=None, optionName='text_options_open', initialState=True): + """returns new option state""" + if not self.REQUEST.SESSION.has_key(optionName): + # not in session -- initial + opt = {'lastState': newState, 'state': initialState} + else: + opt = self.REQUEST.SESSION.get(optionName) + if opt['lastState'] != newState: + # state in session has changed -- toggle + opt['state'] = not opt['state'] + opt['lastState'] = newState + + self.REQUEST.SESSION[optionName] = opt + return opt['state'] def isAccessible(self, docinfo): """returns if access to the resource is granted""" @@ -769,13 +804,17 @@ class documentViewer(Folder): else: logging.error("documentViewer (getdocinfo) unknown mode: %s!"%mode) raise ValueError("Unknown mode %s! Has to be one of 'texttool','imagepath','filepath'."%(mode)) - + + # FIXME: fake texturlpath + if not docinfo.has_key('textURLPath'): + docinfo['textURLPath'] = None + logging.debug("documentViewer (getdocinfo) docinfo: %s"%docinfo) #logging.debug("documentViewer (getdocinfo) docinfo: %s"%) self.REQUEST.SESSION['docinfo'] = docinfo return docinfo - def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None,characterNormalization=""): + def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None): """returns pageinfo with the given parameters""" pageinfo = {} current = getInt(current) @@ -799,10 +838,9 @@ class documentViewer(Folder): pageinfo['numgroups'] += 1 pageinfo['viewMode'] = viewMode pageinfo['tocMode'] = tocMode - #pageinfo ['originalPage'] = self.getOrigPages(docinfo=None, pageinfo=None) - pageinfo['characterNormalization'] = self.REQUEST.get('characterNormalization','') - pageinfo['query'] = self.REQUEST.get('query','') - #pageinfo['optionsClose']= self.REQUEST.get('optionsClose','') + pageinfo['characterNormalization'] = self.REQUEST.get('characterNormalization','reg') + pageinfo['optionToggle'] = self.REQUEST.get('optionToggle','') + pageinfo['query'] = self.REQUEST.get('query','') pageinfo['queryType'] = self.REQUEST.get('queryType','') pageinfo['querySearch'] =self.REQUEST.get('querySearch', 'fulltext') pageinfo['textPN'] = self.REQUEST.get('textPN','1')