Diff for /documentViewer/MpdlXmlTextServer.py between versions 1.238.2.13 and 1.238.2.14

version 1.238.2.13, 2011/08/12 14:41:39 version 1.238.2.14, 2011/08/16 16:27:08
Line 479  class MpdlXmlTextServer(SimpleItem): Line 479  class MpdlXmlTextServer(SimpleItem):
   
         return docinfo          return docinfo
           
     def getTocPage(self, mode="text", pn=0, pageinfo=None, docinfo=None):      def getTocPage(self, mode="text", pn=None, start=None, size=None, pageinfo=None, docinfo=None):
         """returns single page from the table of contents"""          """returns single page from the table of contents"""
         logging.debug("getTocPage mode=%s, pn=%s"%(mode,pn))          logging.debug("getTocPage mode=%s, pn=%s"%(mode,pn))
         if mode == "text":          if mode == "text":
Line 494  class MpdlXmlTextServer(SimpleItem): Line 494  class MpdlXmlTextServer(SimpleItem):
         tocxml = docinfo.get('tocXML_%s'%mode, None)          tocxml = docinfo.get('tocXML_%s'%mode, None)
         if not tocxml:          if not tocxml:
             logging.error("getTocPage: unable to find tocXML")              logging.error("getTocPage: unable to find tocXML")
             return "No ToC"              return "Error: no table of contents!"
                   
         pagesize = pageinfo['tocPageSize']          if size is None:
         tocPN = pageinfo['tocPN']              size = pageinfo.get('tocPageSize', 30)
         if not pn:              
             pn = tocPN          if start is None:
               start = (pn - 1) * size
   
         fulltoc = ET.fromstring(tocxml)          fulltoc = ET.fromstring(tocxml)
                   
         if fulltoc:          if fulltoc:
             # paginate              # paginate
             start = (pn - 1) * pagesize * 2              first = (start - 1) * 2
             len = pagesize * 2              len = size * 2
             del fulltoc[:start]              del fulltoc[:first]
             del fulltoc[len:]              del fulltoc[len:]
             tocdivs = fulltoc              tocdivs = fulltoc
                           
Line 525  class MpdlXmlTextServer(SimpleItem): Line 526  class MpdlXmlTextServer(SimpleItem):
                     else:                      else:
                         logging.warning("getTocPage: Problem with link=%s"%href)                          logging.warning("getTocPage: Problem with link=%s"%href)
                                                   
             return serialize(tocdivs)              # fix two-divs-per-row with containing div
               newtoc = ET.Element('div', {'class':'queryResultPage'})
               for (d1,d2) in zip(tocdivs[::2],tocdivs[1::2]):
                   e = ET.Element('div',{'class':'tocline'})
                   e.append(d1)
                   e.append(d2)
                   newtoc.append(e)
                   
               return serialize(newtoc)
           
           return "ERROR: no table of contents!"
           
           
     def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None):      def manage_changeMpdlXmlTextServer(self,title="",serverUrl="http://mpdl-text.mpiwg-berlin.mpg.de/mpdl/interface/",timeout=40,RESPONSE=None):

Removed from v.1.238.2.13  
changed lines
  Added in v.1.238.2.14


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>