comparison documentViewer.py @ 128:4db49915d825 Root_modularisierung

Last lemma
author abukhman
date Fri, 11 Jun 2010 12:34:24 +0200
parents 49f381f896d0
children 5c779d7b5f71
comparison
equal deleted inserted replaced
127:49f381f896d0 128:4db49915d825
637 raise ValueError("Unknown mode %s! Has to be one of 'texttool','imagepath','filepath'."%(mode)) 637 raise ValueError("Unknown mode %s! Has to be one of 'texttool','imagepath','filepath'."%(mode))
638 638
639 logger("documentViewer (getdocinfo)", logging.INFO,"docinfo: %s"%docinfo) 639 logger("documentViewer (getdocinfo)", logging.INFO,"docinfo: %s"%docinfo)
640 self.REQUEST.SESSION['docinfo'] = docinfo 640 self.REQUEST.SESSION['docinfo'] = docinfo
641 return docinfo 641 return docinfo
642 642
643
644 def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None): 643 def getPageinfo(self, current, start=None, rows=None, cols=None, docinfo=None, viewMode=None, tocMode=None):
645 """returns pageinfo with the given parameters""" 644 """returns pageinfo with the given parameters"""
646 pageinfo = {} 645 pageinfo = {}
647 current = getInt(current) 646 current = getInt(current)
648 pageinfo['current'] = current 647 pageinfo['current'] = current
659 if (docinfo is not None) and ('numPages' in docinfo): 658 if (docinfo is not None) and ('numPages' in docinfo):
660 np = int(docinfo['numPages']) 659 np = int(docinfo['numPages'])
661 pageinfo['end'] = min(pageinfo['end'], np) 660 pageinfo['end'] = min(pageinfo['end'], np)
662 pageinfo['numgroups'] = int(np / grpsize) 661 pageinfo['numgroups'] = int(np / grpsize)
663 if np % grpsize > 0: 662 if np % grpsize > 0:
664 pageinfo['numgroups'] += 1 663 pageinfo['numgroups'] += 1
665
666
667 pageinfo['viewMode'] = viewMode 664 pageinfo['viewMode'] = viewMode
668 pageinfo['tocMode'] = tocMode 665 pageinfo['tocMode'] = tocMode
669 pageinfo['query'] = self.REQUEST.get('query',' ') 666 pageinfo['query'] = self.REQUEST.get('query',' ')
670 pageinfo['queryType'] = self.REQUEST.get('queryType',' ') 667 pageinfo['queryType'] = self.REQUEST.get('queryType',' ')
671 pageinfo['querySearch'] =self.REQUEST.get('querySearch', 'fulltext') 668 pageinfo['querySearch'] =self.REQUEST.get('querySearch', 'fulltext')
678 pageinfo['textPages'] =int (toc) 675 pageinfo['textPages'] =int (toc)
679 676
680 if 'tocSize_%s'%tocMode in docinfo: 677 if 'tocSize_%s'%tocMode in docinfo:
681 tocSize = int(docinfo['tocSize_%s'%tocMode]) 678 tocSize = int(docinfo['tocSize_%s'%tocMode])
682 tocPageSize = int(pageinfo['tocPageSize']) 679 tocPageSize = int(pageinfo['tocPageSize'])
683 # cached toc 680 # cached toc
684
685 if tocSize%tocPageSize>0: 681 if tocSize%tocPageSize>0:
686 tocPages=tocSize/tocPageSize+1 682 tocPages=tocSize/tocPageSize+1
687 else: 683 else:
688 tocPages=tocSize/tocPageSize 684 tocPages=tocSize/tocPageSize
689 pageinfo['tocPN'] = min (tocPages,toc) 685 pageinfo['tocPN'] = min (tocPages,toc)
690
691 pageinfo['searchPN'] =self.REQUEST.get('searchPN','1') 686 pageinfo['searchPN'] =self.REQUEST.get('searchPN','1')
692 pageinfo['sn'] =self.REQUEST.get('sn','') 687 pageinfo['sn'] =self.REQUEST.get('sn','')
693
694 return pageinfo 688 return pageinfo
695 689
696 def getSearch(self, pn=1, pageinfo=None, docinfo=None, query=None, queryType=None): 690 def getSearch(self, pn=1, pageinfo=None, docinfo=None, query=None, queryType=None, lemma=None):
697 """get search list""" 691 """get search list"""
698 docpath = docinfo['textURLPath'] 692 docpath = docinfo['textURLPath']
699 url = docinfo['url'] 693 url = docinfo['url']
700 logging.debug("documentViewer (gettoc) docpath: %s"%(docpath)) 694 logging.debug("documentViewer (gettoc) docpath: %s"%(docpath))
701 logging.debug("documentViewer (gettoc) url: %s"%(url)) 695 logging.debug("documentViewer (gettoc) url: %s"%(url))
723 href = hrefNode.nodeValue 717 href = hrefNode.nodeValue
724 if href.startswith('page-fragment.xql'): 718 if href.startswith('page-fragment.xql'):
725 selfurl = self.absolute_url() 719 selfurl = self.absolute_url()
726 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN)) 720 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN))
727 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) 721 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl)
728 return serializeNode(pagenode) 722 return serializeNode(pagenode)
729
730 if (queryType=="fulltextMorph"): 723 if (queryType=="fulltextMorph"):
731 pagedivs = pagedom.xpath("//div[@class='queryResult']") 724 pagedivs = pagedom.xpath("//div[@class='queryResult']")
732 if len(pagedivs)>0: 725 if len(pagedivs)>0:
733 pagenode=pagedivs[0] 726 pagenode=pagedivs[0]
734 links=pagenode.xpath("//a") 727 links=pagenode.xpath("//a")
739 if href.startswith('page-fragment.xql'): 732 if href.startswith('page-fragment.xql'):
740 selfurl = self.absolute_url() 733 selfurl = self.absolute_url()
741 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN)) 734 pagexml=href.replace('mode=text','mode=texttool&viewMode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s&tocMode=%s&searchPN=%s&tocPN=%s'%(viewMode,queryType,query,pagesize,pn,tocMode,pn,tocPN))
742 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl) 735 hrefNode.nodeValue = pagexml.replace('page-fragment.xql','%s'%selfurl)
743 if href.startswith('../lt/lemma.xql'): 736 if href.startswith('../lt/lemma.xql'):
744 737 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_lemma_New'%(selfurl))
745 hrefNode.nodeValue = href.replace('../lt/lemma.xql','%s/template/head_main_lemma'%selfurl)
746 l.setAttributeNS(None, 'target', '_blank') 738 l.setAttributeNS(None, 'target', '_blank')
747 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") 739 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;")
748 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();') 740 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();')
749 pagedivs = pagedom.xpath("//div[@class='queryResultMorphExpansion']") 741 pagedivs = pagedom.xpath("//div[@class='queryResultMorphExpansion']")
750 return serializeNode(pagenode) 742 return serializeNode(pagenode)
751
752 if (queryType=="ftIndex")or(queryType=="ftIndexMorph"): 743 if (queryType=="ftIndex")or(queryType=="ftIndexMorph"):
753 pagedivs= pagedom.xpath("//div[@class='queryResultPage']") 744 pagedivs= pagedom.xpath("//div[@class='queryResultPage']")
754 if len(pagedivs)>0: 745 if len(pagedivs)>0:
755 pagenode=pagedivs[0] 746 pagenode=pagedivs[0]
756 links=pagenode.xpath("//a") 747 links=pagenode.xpath("//a")
757 for l in links: 748 for l in links:
758 hrefNode = l.getAttributeNodeNS(None, u"href") 749 hrefNode = l.getAttributeNodeNS(None, u"href")
759 if hrefNode: 750 if hrefNode:
760 href = hrefNode.nodeValue 751 href = hrefNode.nodeValue
761 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s'%(viewMode,tocMode,tocPN,pn)) 752 hrefNode.nodeValue=href.replace('mode=text','mode=texttool&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s'%(viewMode,tocMode,tocPN,pn))
762
763 if href.startswith('../lt/lex.xql'): 753 if href.startswith('../lt/lex.xql'):
764 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_voc'%selfurl) 754 hrefNode.nodeValue = href.replace('../lt/lex.xql','%s/template/head_main_voc'%selfurl)
765 l.setAttributeNS(None, 'target', '_blank') 755 l.setAttributeNS(None, 'target', '_blank')
766 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;") 756 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=400, scrollbars=1'); return false;")
767 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();') 757 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();')
788 url = docinfo['url'] 778 url = docinfo['url']
789 viewMode= pageinfo['viewMode'] 779 viewMode= pageinfo['viewMode']
790 tocMode = pageinfo['tocMode'] 780 tocMode = pageinfo['tocMode']
791 tocPN = pageinfo['tocPN'] 781 tocPN = pageinfo['tocPN']
792 selfurl = self.absolute_url() 782 selfurl = self.absolute_url()
793
794 #pn = pageinfo['searchPN']
795
796 if mode == "text_dict": 783 if mode == "text_dict":
797 textmode = "textPollux" 784 textmode = "textPollux"
798 else: 785 else:
799 textmode = mode 786 textmode = mode
800 787
801 textParam = "document=%s&mode=%s&pn=%s"%(docpath,textmode,pn) 788 textParam = "document=%s&mode=%s&pn=%s"%(docpath,textmode,pn)
802 if highlightQuery is not None: 789 if highlightQuery is not None:
803 textParam +="&highlightQuery=%s&sn=%s"%(highlightQuery,sn) 790 textParam +="&highlightQuery=%s&sn=%s"%(highlightQuery,sn)
804
805 pagexml=self.template.fulltextclient.eval("/mpdl/interface/page-fragment.xql", textParam, outputUnicode=False) 791 pagexml=self.template.fulltextclient.eval("/mpdl/interface/page-fragment.xql", textParam, outputUnicode=False)
806 pagedom = Parse(pagexml) 792 pagedom = Parse(pagexml)
807 # plain text mode 793 # plain text mode
808 if mode == "text": 794 if mode == "text":
809 # first div contains text 795 # first div contains text
810 pagedivs = pagedom.xpath("/div") 796 pagedivs = pagedom.xpath("/div")
811 #queryResultPage
812 if len(pagedivs) > 0: 797 if len(pagedivs) > 0:
813 pagenode = pagedivs[0] 798 pagenode = pagedivs[0]
814 links = pagenode.xpath("//a") 799 links = pagenode.xpath("//a")
815 for l in links: 800 for l in links:
816 hrefNode = l.getAttributeNodeNS(None, u"href") 801 hrefNode = l.getAttributeNodeNS(None, u"href")
817
818 if hrefNode: 802 if hrefNode:
819 href= hrefNode.nodeValue 803 href= hrefNode.nodeValue
820 if href.startswith('#note-'): 804 if href.startswith('#note-'):
821 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn)) 805 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn))
822
823 return serializeNode(pagenode) 806 return serializeNode(pagenode)
824 if mode == "xml": 807 if mode == "xml":
825 # first div contains text 808 # first div contains text
826 pagedivs = pagedom.xpath("/div") 809 pagedivs = pagedom.xpath("/div")
827 if len(pagedivs) > 0: 810 if len(pagedivs) > 0:
852 # change href 835 # change href
853 hrefNode.nodeValue = href.replace('lt/lex.xql','%s/template/head_main_voc'%selfurl) 836 hrefNode.nodeValue = href.replace('lt/lex.xql','%s/template/head_main_voc'%selfurl)
854 # add target 837 # add target
855 l.setAttributeNS(None, 'target', '_blank') 838 l.setAttributeNS(None, 'target', '_blank')
856 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=700, scrollbars=1'); return false;") 839 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=700, scrollbars=1'); return false;")
857 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();') 840 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();')
858
859 if href.startswith('lt/lemma.xql'): 841 if href.startswith('lt/lemma.xql'):
860 selfurl = self.absolute_url() 842 selfurl = self.absolute_url()
861 hrefNode.nodeValue = href.replace('lt/lemma.xql','%s/template/head_main_lemma'%selfurl) 843 hrefNode.nodeValue = href.replace('lt/lemma.xql','%s/template/head_main_lemma'%selfurl)
862 l.setAttributeNS(None, 'target', '_blank') 844 l.setAttributeNS(None, 'target', '_blank')
863 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=700, scrollbars=1'); return false;") 845 l.setAttributeNS(None, 'onClick',"popupWin = window.open(this.href, 'contacts', 'location,width=500,height=600,top=180, left=700, scrollbars=1'); return false;")
864 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();') 846 l.setAttributeNS(None, 'onDblclick', 'popupWin.focus();')
865
866 if href.startswith('#note-'): 847 if href.startswith('#note-'):
867 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn)) 848 hrefNode.nodeValue = href.replace('#note-',"?url=%s&viewMode=%s&tocMode=%s&tocPN=%s&pn=%s#note-"%(url,viewMode,tocMode,tocPN,pn))
868
869
870 return serializeNode(pagenode) 849 return serializeNode(pagenode)
871
872 return "no text here" 850 return "no text here"
873 851
874 def getTranslate(self, query=None, language=None): 852 def getTranslate(self, query=None, language=None):
875 """translate into another languages""" 853 """translate into another languages"""
876 pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lex.xql","document=&language="+str(language)+"&query="+url_quote(str(query))) 854 pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lex.xql","document=&language="+str(language)+"&query="+url_quote(str(query)))
877 return pagexml 855 return pagexml
878 856
879 def getLemma(self, lemma=None, language=None): 857 def getLemma(self, lemma=None, language=None):
880 """simular words lemma """ 858 """simular words lemma """
881 pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lemma.xql","document=&language="+str(language)+"&lemma="+url_quote(str(lemma))) 859 pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lemma.xql","document=&language="+str(language)+"&lemma="+url_quote(str(lemma)))
882 #pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lemma.xql","lemma=%s&language=%s"%(lemma,language),outputUnicode=False) 860 return pagexml
861
862 def getLemmaNew(self, query=None, language=None):
863 """simular words lemma """
864 pagexml=self.template.fulltextclient.eval("/mpdl/interface/lt/lemma.xql","document=&language="+str(language)+"&lemma="+url_quote(str(query)))
883 return pagexml 865 return pagexml
884 866
885 def getQuery (self, docinfo=None, pageinfo=None, query=None, queryType=None, pn=1): 867 def getQuery (self, docinfo=None, pageinfo=None, query=None, queryType=None, pn=1):
886 """number of""" 868 """number of"""
887 docpath = docinfo['textURLPath'] 869 docpath = docinfo['textURLPath']
888 pagesize = pageinfo['queryPageSize'] 870 pagesize = pageinfo['queryPageSize']
889 pn = pageinfo['searchPN'] 871 pn = pageinfo['searchPN']
890 query =pageinfo['query'] 872 query =pageinfo['query']
891 queryType =pageinfo['queryType'] 873 queryType =pageinfo['queryType']
892
893 tocSearch = 0 874 tocSearch = 0
894 tocDiv = None 875 tocDiv = None
895 pagexml=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath, 'text', queryType, query, pagesize, pn) ,outputUnicode=False) 876 pagexml=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql","document=%s&mode=%s&queryType=%s&query=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath, 'text', queryType, query, pagesize, pn) ,outputUnicode=False)
896
897 pagedom = Parse(pagexml) 877 pagedom = Parse(pagexml)
898 numdivs = pagedom.xpath("//div[@class='queryResultHits']") 878 numdivs = pagedom.xpath("//div[@class='queryResultHits']")
899 tocSearch = int(getTextFromNode(numdivs[0])) 879 tocSearch = int(getTextFromNode(numdivs[0]))
900 tc=int((tocSearch/10)+1) 880 tc=int((tocSearch/10)+1)
901 logging.debug("documentViewer (gettoc) tc: %s"%(tc)) 881 logging.debug("documentViewer (gettoc) tc: %s"%(tc))
903 883
904 def getToc(self, mode="text", docinfo=None): 884 def getToc(self, mode="text", docinfo=None):
905 """loads table of contents and stores in docinfo""" 885 """loads table of contents and stores in docinfo"""
906 logging.debug("documentViewer (gettoc) mode: %s"%(mode)) 886 logging.debug("documentViewer (gettoc) mode: %s"%(mode))
907 if mode == "none": 887 if mode == "none":
908 return docinfo 888 return docinfo
909
910 if 'tocSize_%s'%mode in docinfo: 889 if 'tocSize_%s'%mode in docinfo:
911 # cached toc 890 # cached toc
912 return docinfo 891 return docinfo
913 892
914 docpath = docinfo['textURLPath'] 893 docpath = docinfo['textURLPath']
927 pagedom = Parse(pagexml) 906 pagedom = Parse(pagexml)
928 # get number of entries 907 # get number of entries
929 numdivs = pagedom.xpath("//div[@class='queryResultHits']") 908 numdivs = pagedom.xpath("//div[@class='queryResultHits']")
930 if len(numdivs) > 0: 909 if len(numdivs) > 0:
931 tocSize = int(getTextFromNode(numdivs[0])) 910 tocSize = int(getTextFromNode(numdivs[0]))
932 # div contains text
933 #pagedivs = pagedom.xpath("//div[@class='queryResultPage']")
934 #if len(pagedivs) > 0:
935 # tocDiv = pagedivs[0]
936
937 docinfo['tocSize_%s'%mode] = tocSize 911 docinfo['tocSize_%s'%mode] = tocSize
938 #docinfo['tocDiv_%s'%mode] = tocDiv
939 return docinfo 912 return docinfo
940 913
941 def getTocPage(self, mode="text", pn=1, pageinfo=None, docinfo=None): 914 def getTocPage(self, mode="text", pn=1, pageinfo=None, docinfo=None):
942 """returns single page from the table of contents""" 915 """returns single page from the table of contents"""
943 # TODO: this should use the cached TOC 916 # TODO: this should use the cached TOC
944 if mode == "text": 917 if mode == "text":
945 queryType = "toc" 918 queryType = "toc"
946 else: 919 else:
947 queryType = mode 920 queryType = mode
948 docpath = docinfo['textURLPath'] 921 docpath = docinfo['textURLPath']
949 path = docinfo['textURLPath'] 922 path = docinfo['textURLPath']
950 #logging.debug("documentViewer (gettoc) pathNomer: %s"%(pathNomer))
951 pagesize = pageinfo['tocPageSize'] 923 pagesize = pageinfo['tocPageSize']
952 pn = pageinfo['tocPN'] 924 pn = pageinfo['tocPN']
953 url = docinfo['url'] 925 url = docinfo['url']
954 selfurl = self.absolute_url() 926 selfurl = self.absolute_url()
955 viewMode= pageinfo['viewMode'] 927 viewMode= pageinfo['viewMode']
956 tocMode = pageinfo['tocMode'] 928 tocMode = pageinfo['tocMode']
957 tocPN = pageinfo['tocPN'] 929 tocPN = pageinfo['tocPN']
958
959 pagexml=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql", "document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath,queryType, pagesize, pn), outputUnicode=False) 930 pagexml=self.template.fulltextclient.eval("/mpdl/interface/doc-query.xql", "document=%s&queryType=%s&queryResultPageSize=%s&queryResultPN=%s"%(docpath,queryType, pagesize, pn), outputUnicode=False)
960 page = pagexml.replace('page-fragment.xql?document=%s'%str(path),'%s?url=%s&viewMode=%s&tocMode=%s&tocPN=%s'%(selfurl,url, viewMode, tocMode, tocPN)) 931 page = pagexml.replace('page-fragment.xql?document=%s'%str(path),'%s?url=%s&viewMode=%s&tocMode=%s&tocPN=%s'%(selfurl,url, viewMode, tocMode, tocPN))
961 text = page.replace('mode=image','mode=texttool') 932 text = page.replace('mode=image','mode=texttool')
962 return text 933 return text
963 # post-processing downloaded xml 934
964 #pagedom = Parse(text) 935 def changeDocumentViewer(self,title="",digilibBaseUrl=None,thumbrows=2,thumbcols=5,authgroups='mpiwg',RESPONSE=None):
965 # div contains text
966 #pagedivs = pagedom.xpath("//div[@class='queryResultPage']")
967 #if len(pagedivs) > 0:
968 # pagenode = pagedivs[0]
969 # return serializeNode(pagenode)
970 #else:
971 # return "No TOC!"
972
973 def changeDocumentViewer(self,title="",digilibBaseUrl=None,thumbrows=2,thumbcols=5,authgroups='mpiwg',RESPONSE=None):
974 """init document viewer""" 936 """init document viewer"""
975 self.title=title 937 self.title=title
976 self.digilibBaseUrl = digilibBaseUrl 938 self.digilibBaseUrl = digilibBaseUrl
977 self.thumbrows = thumbrows 939 self.thumbrows = thumbrows
978 self.thumbcols = thumbcols 940 self.thumbcols = thumbcols
979 self.authgroups = [s.strip().lower() for s in authgroups.split(',')] 941 self.authgroups = [s.strip().lower() for s in authgroups.split(',')]
980 if RESPONSE is not None: 942 if RESPONSE is not None:
981 RESPONSE.redirect('manage_main') 943 RESPONSE.redirect('manage_main')
982
983
984 944
985 def manage_AddDocumentViewerForm(self): 945 def manage_AddDocumentViewerForm(self):
986 """add the viewer form""" 946 """add the viewer form"""
987 pt=PageTemplateFile('zpt/addDocumentViewer', globals()).__of__(self) 947 pt=PageTemplateFile('zpt/addDocumentViewer', globals()).__of__(self)
988 return pt() 948 return pt()
993 self._setObject(id,newObj) 953 self._setObject(id,newObj)
994 954
995 if RESPONSE is not None: 955 if RESPONSE is not None:
996 RESPONSE.redirect('manage_main') 956 RESPONSE.redirect('manage_main')
997 957
998
999 ##
1000 ## DocumentViewerTemplate class 958 ## DocumentViewerTemplate class
1001 ##
1002 class DocumentViewerTemplate(ZopePageTemplate): 959 class DocumentViewerTemplate(ZopePageTemplate):
1003 """Template for document viewer""" 960 """Template for document viewer"""
1004 meta_type="DocumentViewer Template" 961 meta_type="DocumentViewer Template"
1005 962
1006 963