Changeset 052e5f in indico


Ignore:
Timestamp:
04/18/12 16:15:15 (13 months ago)
Author:
Jose Benito <jose.benito.gonzalez@…>
Branches:
master, hello-world-walkthrough, ipv6, v0.98-series, v0.98.2, v0.98.3, v0.99, 051b2622c51afb171a1dedb46a0df4fbb0cbd02e, d9941f8582b36b24821a11ea5ba16fda6a457fb1
Children:
ba777ee
Parents:
8cde5f
git-author:
Alberto Resco Perez <alberto.resco.perez@…> (03/16/12 17:17:44)
git-committer:
Jose Benito <jose.benito.gonzalez@…> (04/18/12 16:15:15)
Message:

[REF] Contribution list refactor

  • Deleted all HTML code from python.
  • Created separate file for filter panel.
Location:
indico/MaKaC/webinterface
Files:
3 added
2 edited

Legend:

Unmodified
Added
Removed
  • indico/MaKaC/webinterface/pages/conferences.py

    r8cde5f r052e5f  
    72337233        self._displayContribs=int(displayContribs) 
    72347234        self._order = order 
    7235         if len(self._conf.getTrackList()) > 0: 
    7236             self._displayTrackFilter = True 
    7237         else: 
    7238             self._displayTrackFilter = False 
    7239         if len(self._conf.getContribTypeList()) > 0: 
    7240             self._displayTypeFilter = True 
    7241         else: 
    7242             self._displayTypeFilter = False 
    7243  
    7244     def _getMaterialIcon(self, iconURL, alt): 
    7245         return """ 
    7246                 <img src="%s" alt="%s" border="0"> 
    7247                """%(iconURL, alt) 
    72487235 
    72497236    def _getURL( self ): 
     
    72737260        return url 
    72747261 
    7275     def _getContribFullHTML( self, contrib ): 
    7276         tzUtil = DisplayTZ(self._aw,self._conf) 
    7277         tz = tzUtil.getDisplayTZ() 
    7278         sdate = "" 
    7279         if contrib.isScheduled(): 
    7280            sdate=contrib.getAdjustedStartDate(tz).strftime("%d-%b-%Y %H:%M" ) 
    7281            sdate = sdate 
    7282         title = """<a href=%s>%s</a>"""%( quoteattr( str( urlHandlers.UHContributionDisplay.getURL( contrib ) ) ), self.htmlText( contrib.getTitle() )) 
    7283         contribType = "" 
    7284         if contrib.getType() is not None: 
    7285             contribType = contrib.getType().getName() 
    7286         l = [] 
    7287         for spk in contrib.getSpeakerList(): 
    7288             l.append( self.htmlText( spk.getFullName() ) ) 
    7289         speaker = "<br>".join( l ) 
    7290         session = "" 
    7291         if contrib.getSession() is not None: 
    7292             if contrib.getSession().getCode() != "no code": 
    7293                 session=self.htmlText(contrib.getSession().getCode()) 
    7294             else: 
    7295                 session=self.htmlText(contrib.getSession().getTitle()) 
    7296         track = "" 
    7297         if contrib.getTrack() is not None: 
    7298             track = self.htmlText( contrib.getTrack().getCode() ) 
    7299         trackHTML = typeHTML = "" 
    7300         if self._displayTrackFilter: 
    7301             trackHTML = """ 
    7302                 <td class="abstractDataCell">%s</td>""" % (track or "&nbsp;") 
    7303         if self._displayTypeFilter: 
    7304             typeHTML = """ 
    7305                 <td class="abstractDataCell">%s</td>""" % (contribType or "&nbsp;") 
    7306         mat = [] 
    7307         if contrib.getSlides(): 
    7308             if contrib.getSlides().canView(self._aw): 
    7309                 url = urlHandlers.UHMaterialDisplay.getURL(contrib.getSlides()) 
    7310                 mat.append("<a href=%s>%s</a>" % ( quoteattr(str(url)),self._getMaterialIcon(Config.getInstance().getSystemIconURL( "slides" ), "Slides"))) 
    7311         if contrib.getPaper(): 
    7312             if contrib.getPaper().canView(self._aw): 
    7313                 url = urlHandlers.UHMaterialDisplay.getURL(contrib.getPaper()) 
    7314                 mat.append("<a href=%s>%s</a>" % ( quoteattr(str(url)),self._getMaterialIcon(Config.getInstance().getSystemIconURL( "paper" ), "Paper"))) 
    7315         material = "".join(mat) 
    7316         abst = [] 
    7317         if self._conf.getAbstractMgr().showAttachedFilesContribList() and isinstance(contrib, conference.AcceptedContribution) and len(contrib.getAbstract().getAttachments()) > 0: 
    7318             for file in contrib.getAbstract().getAttachments().values(): 
    7319                 abst.append("""<div style="padding-bottom:3px;"><a href="%s">%s</a></div>""" % (str(urlHandlers.UHAbstractAttachmentFileAccess.getURL(file)), file.getFileName())) 
    7320         abstracts = "".join(abst) 
    7321         html = """ 
    7322             <tr> 
    7323                 <td valign="top" nowrap><input type="checkbox" name="contributions" value=%s></td> 
    7324                 <td class="abstractLeftDataCell">%s</td> 
    7325                 <td class="abstractDataCell">%s</td> 
    7326                 %s 
    7327                 <td class="abstractDataCell">%s</td> 
    7328                 <td class="abstractDataCell">%s</td> 
    7329                 <td class="abstractDataCell">%s</td> 
    7330                 %s 
    7331                 <td class="abstractDataCell">%s</td> 
    7332                 <td class="abstractDataCell">%s</td> 
    7333             </tr> 
    7334                 """%(contrib.getId(), self.htmlText( contrib.getId() ), 
    7335                     sdate or "&nbsp;", typeHTML, 
    7336                     title or "&nbsp;", speaker or "&nbsp;", 
    7337                     session or "&nbsp;", trackHTML, material or "&nbsp;", abstracts or "&nbsp;" ) 
    7338         return html 
    7339  
    7340     def _getContribMinHTML( self, contrib ): 
    7341         title = """<a href=%s>%s</a>"""%( quoteattr( str( urlHandlers.UHContributionDisplay.getURL( contrib ) ) ), self.htmlText( contrib.getTitle() )) 
    7342         mat = [] 
    7343         if contrib.getSlides(): 
    7344             if contrib.getSlides().canView(self._aw): 
    7345                 mat.append(self._getMaterialIcon(Config.getInstance().getSystemIconURL( "slides" ), _("Slides"))) 
    7346         if contrib.getPaper(): 
    7347             if contrib.getPaper().canView(self._aw): 
    7348                 mat.append(self._getMaterialIcon(Config.getInstance().getSystemIconURL( "paper" ), _("Paper"))) 
    7349         material = "".join(mat) 
    7350         abst = [] 
    7351         if self._conf.getAbstractMgr().showAttachedFilesContribList() and isinstance(contrib, conference.AcceptedContribution) and len(contrib.getAbstract().getAttachments()) > 0: 
    7352             for file in contrib.getAbstract().getAttachments().values(): 
    7353                 abst.append("""<div style="padding-bottom:3px;"><a href="%s">%s</a></div>""" % (str(urlHandlers.UHAbstractAttachmentFileAccess.getURL(file)), file.getFileName())) 
    7354         abstracts = "".join(abst) 
    7355         trackHTML = typeHTML = "" 
    7356         if self._displayTrackFilter: 
    7357             trackHTML = """ 
    7358                 <td class="abstractDataCell"></td>""" 
    7359         if self._displayTypeFilter: 
    7360             typeHTML = """ 
    7361                 <td class="abstractDataCell"></td>""" 
    7362         html = """ 
    7363             <tr> 
    7364                 <td><input type="checkbox" name="contributions" value=%s></td> 
    7365                 <td class="abstractLeftDataCell">%s</td> 
    7366                 <td class="abstractDataCell">%s</td> 
    7367                 %s 
    7368                 <td class="abstractDataCell">%s</td> 
    7369                 <td class="abstractDataCell">%s</td> 
    7370                 <td class="abstractDataCell">%s</td> 
    7371                 %s 
    7372                 <td class="abstractDataCell">%s</td> 
    7373                 <td class="abstractDataCell">%s</td> 
    7374             </tr> 
    7375                 """%(self.htmlText( contrib.getId() ), "&nbsp;", "&nbsp;", typeHTML, title or "&nbsp;", "&nbsp;", "&nbsp;", trackHTML,  material or "&nbsp;", abstracts or "&nbsp;"  ) 
    7376         return html 
    7377  
    7378     def _getTypeFilterItemList( self ): 
    7379         checked = "" 
    7380         if self._filterCrit.getField("type").getShowNoValue(): 
    7381             checked = " checked" 
    7382         l = [ i18nformat("""<input type="checkbox" name="typeShowNoValue"%s> --_("not specified")--""")%checked] 
    7383         for type in self._conf.getContribTypeList(): 
    7384             checked = "" 
    7385             if type.getId() in self._filterCrit.getField("type").getValues(): 
    7386                 checked = " checked" 
    7387             l.append( """<input type="checkbox" name="selTypes" value=%s%s> %s"""%(quoteattr(type.getId()), checked, self.htmlText(type.getName())) ) 
    7388         return l 
    7389  
    7390     def _getTrackFilterItemList( self ): 
    7391         checked = "" 
    7392         if self._filterCrit.getField("track").getShowNoValue(): 
    7393             checked = " checked" 
    7394         l = [ i18nformat("""<input type="checkbox" name="trackShowNoValue"%s> --_("not specified")--""")%checked] 
    7395         for t in self._conf.getTrackList(): 
    7396             checked = "" 
    7397             if t.getId() in self._filterCrit.getField("track").getValues(): 
    7398                 checked = " checked" 
    7399             l.append( """<input type="checkbox" name="selTracks" value=%s%s> (%s) %s"""%(quoteattr(t.getId()), checked, self.htmlText(t.getCode()), self.htmlText(t.getTitle()) ) ) 
    7400         return l 
    7401  
    7402     def _getSessionFilterItemList( self ): 
    7403         checked = "" 
    7404         if self._filterCrit.getField("session").getShowNoValue(): 
    7405             checked = " checked" 
    7406         l = [ i18nformat("""<input type="checkbox" name="sessionShowNoValue"%s> --_("not specified")--""")%checked] 
    7407         for s in self._conf.getSessionListSorted(): 
    7408             checked = "" 
    7409             if s.getCode() != "no code": 
    7410                 codeText = "(%s) " % self.htmlText(s.getCode()) 
    7411             else: 
    7412                 codeText = "" 
    7413             if s.getId() in self._filterCrit.getField("session").getValues(): 
    7414                 checked = " checked" 
    7415             l.append( """<input type="checkbox" name="selSessions" value=%s%s>%s%s"""%(quoteattr(s.getId()), checked, codeText, self.htmlText(s.getTitle()) ) ) 
    7416         return l 
     7262    def getOrderURL(self, currentSorting, num, invertedOrder, typeOrder): 
     7263        url = self._getURL() 
     7264        url.addParam("sortBy", typeOrder) 
     7265        url.addParam("sc",(num-self._displayContribs)) 
     7266        if currentSorting == typeOrder: 
     7267            url.addParam("order", invertedOrder) 
     7268        return url 
    74177269 
    74187270    def getVars( self ): 
    74197271        vars = wcomponents.WTemplated.getVars( self ) 
    7420         vars["types"] = vars["tracks"] = "" 
    7421         vars["typeFilterHeader"] = vars["trackFilterHeader"] = "" 
    7422         if self._displayTypeFilter: 
    7423             vars["typeFilterHeader"] = i18nformat("""<td align="center" class="titleCellFormat" style="padding-right:10px"> _("show contribution types")</td>""") 
    7424             vars["types"] = """<td valign="top" style="border-right:1px solid #777777;">%s</td>""" % "<br>".join( self._getTypeFilterItemList() ) 
    7425         if self._displayTrackFilter: 
    7426             vars["trackFilterHeader"] = i18nformat("""<td align="center" class="titleCellFormat"> _("show tracks")</td>""") 
    7427             vars["tracks"] = """<td valign="top">%s</td>""" % "<br>".join( self._getTrackFilterItemList() ) 
    7428         vars["sessions"] = "<br>".join( self._getSessionFilterItemList() ) 
    74297272        l = [] 
    74307273        contribsToPrint = [] 
    74317274        f = filters.SimpleFilter( self._filterCrit, self._sortingCrit ) 
    74327275        contribList = f.apply( self._conf.getContributionList() ) 
    7433         num=1 
    7434         self._endContrib=(self._startContrib+self._displayContribs)-1 
     7276        num = 1 
     7277        self._endContrib = (self._startContrib + self._displayContribs) - 1 
     7278 
    74357279        for contrib in contribList: 
    7436             if num<self._startContrib: 
    7437                 num+=1 
     7280            if num < self._startContrib: 
     7281                num += 1 
    74387282                continue 
    7439             elif num>self._endContrib: 
     7283            elif num > self._endContrib: 
    74407284                break 
    74417285            else: 
    7442                 num+=1 
    7443             if contrib.canAccess( self._aw ): 
    7444                 l.append( self._getContribFullHTML( contrib ) ) 
    7445                 contribsToPrint.append("""<input type="hidden" name="contributions" value="%s">"""%contrib.getId()) 
    7446             #elif contrib.canView( self._aw ): 
    7447             else: 
    7448                 l.append( self._getContribMinHTML( contrib ) ) 
    7449                 contribsToPrint.append("""<input type="hidden" name="contributions" value="%s">"""%contrib.getId()) 
     7286                num += 1 
     7287            l.append(contrib) 
     7288            contribsToPrint.append(contrib.getId()) 
     7289 
    74507290        if self._order =="up": 
    74517291            l.reverse() 
    7452         vars["numContribs"]=len(contribList) 
    7453         vars["contribSetIndex"]=_("showing")+" %s-%s "%(self._startContrib,self._endContrib) 
    7454         if self._startContrib!=1: 
    7455             iconURL=Config.getInstance().getSystemIconURL("arrow_previous") 
     7292 
     7293        vars["numContribs"] = len(contribList) 
     7294        vars["contribSetIndex"]="" 
     7295        vars["startContrib"] = self._startContrib 
     7296        vars["endContrib"] = self._endContrib 
     7297 
     7298        if self._startContrib != 1: 
    74567299            url=self._getURL() 
    74577300            newSc=self._startContrib-self._displayContribs 
     
    74607303            url.addParam("sc",newSc) 
    74617304            url.setSegment("contribs") 
    7462             vars["contribSetIndex"]="""<a href=%s><img src=%s border="0" style="vertical-align:middle" alt=""></a>%s"""%(quoteattr(str(url)),quoteattr(str(iconURL)),vars["contribSetIndex"]) 
     7305            vars["previousContribsURL"]= url 
    74637306        if self._endContrib<vars["numContribs"]: 
    7464             iconURL=Config.getInstance().getSystemIconURL("arrow_next") 
    74657307            url=self._getURL() 
    74667308            url.setSegment("contribs") 
    74677309            url.addParam("sc",num) 
    7468             vars["contribSetIndex"]="""%s<a href=%s><img src=%s border="0" style="vertical-align:middle" alt=""></a>"""%(vars["contribSetIndex"],quoteattr(str(url)),quoteattr(str(iconURL))) 
    7469  
    7470         vars["contributions"] = "".join(l) 
    7471         vars["contribsToPrint"] = "\n".join(contribsToPrint) 
    7472  
    7473         vars["newContribURL"] = urlHandlers.UHConfAddContribution.getURL( self._conf ) 
    7474  
    7475         sortingField = self._sortingCrit.getField() 
    7476         vars["currentSorting"]="" 
    7477  
    7478         url=self._getURL() 
    7479  
    7480         url.addParam("sortBy","number") 
    7481         vars["numberImg"]="" 
    7482         url.addParam("sc",(num-self._displayContribs)) 
    7483         if sortingField and sortingField.getId() == "number": 
    7484  
    7485             vars["currentSorting"] = i18nformat("""<input type="hidden" name="sortBy" value="_("number")">""") 
    7486             if self._order == "down": 
    7487                 vars["numberImg"] = """<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7488                 url.addParam("order","up") 
    7489             elif self._order == "up": 
    7490                 vars["numberImg"] = """<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7491                 url.addParam("order","down") 
    7492  
    7493         vars["numberSortingURL"]=quoteattr(str(url)) 
    7494         url = self._getURL() 
    7495         url.addParam("sortBy", "date") 
    7496         vars["dateImg"] = "" 
    7497         url.addParam("sc",(num-self._displayContribs)) 
    7498         if sortingField and sortingField.getId() == "date": 
    7499  
    7500             vars["currentSorting"]= i18nformat("""<input type="hidden" name="sortBy" value="_("date")">""") 
    7501             if self._order == "down": 
    7502                 vars["dateImg"]="""<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7503                 url.addParam("order","up") 
    7504             elif self._order == "up": 
    7505                 vars["dateImg"]="""<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7506                 url.addParam("order","down") 
    7507         vars["dateSortingURL"]=quoteattr(str(url)) 
    7508  
    7509         if self._displayTypeFilter: 
    7510             url = self._getURL() 
    7511             url.addParam("sortBy", "type") 
    7512             typeImg = "" 
    7513             url.addParam("sc",(num-self._displayContribs)) 
    7514             if sortingField and sortingField.getId() == "type": 
    7515                 vars["currentSorting"]= i18nformat("""<input type="hidden" name="sortBy" value="_("type")">""") 
    7516                 if self._order == "down": 
    7517                     typeImg="""<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7518                     url.addParam("order","up") 
    7519                 elif self._order == "up": 
    7520                     typeImg="""<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7521                     url.addParam("order","down") 
    7522             typeSortingURL = quoteattr( str( url ) ) 
    7523             vars["typeHeader"] = """<td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> %s<a href=%s>Type</a></td>""" % (typeImg,typeSortingURL) 
    7524         else: 
    7525             vars["typeHeader"] = "" 
    7526  
    7527         url = self._getURL() 
    7528         url.addParam("sortBy", "name") 
    7529         vars["titleImg"] = "" 
    7530         url.addParam("sc",(num-self._displayContribs)) 
    7531         if sortingField and sortingField.getId() == "name": 
    7532             vars["currentSorting"]="""<input type="hidden" name="sortBy" value="name">""" 
    7533             if self._order == "down": 
    7534                 vars["titleImg"]="""<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7535                 url.addParam("order","up") 
    7536             elif self._order == "up": 
    7537                 vars["titleImg"]="""<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7538                 url.addParam("order","down") 
    7539         vars["titleSortingURL"]=quoteattr(str(url)) 
    7540  
    7541         url = self._getURL() 
    7542         url.addParam("sortBy", "speaker") 
    7543         vars["speakerImg"] = "" 
    7544         url.addParam("sc",(num-self._displayContribs)) 
    7545         if sortingField and sortingField.getId() == "speaker": 
    7546             vars["currentSorting"] = i18nformat("""<input type="hidden" name="sortBy" value="_("speaker")">""") 
    7547             if self._order == "down": 
    7548                 vars["speakerImg"] = """<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7549                 url.addParam("order","up") 
    7550             elif self._order == "up": 
    7551                 vars["speakerImg"] = """<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7552                 url.addParam("order","down") 
    7553         vars["speakerSortingURL"]=quoteattr( str( url ) ) 
    7554  
    7555         url = self._getURL() 
    7556         url.addParam("sortBy", "session") 
    7557         vars["sessionImg"] = "" 
    7558         url.addParam("sc",(num-self._displayContribs)) 
    7559         if sortingField and sortingField.getId() == "session": 
    7560             vars["currentSorting"] = i18nformat("""<input type="hidden" name="sortBy" value="_("session")">""") 
    7561             if self._order == "down": 
    7562                 vars["sessionImg"] = """<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7563                 url.addParam("order","up") 
    7564             elif self._order == "up": 
    7565                 vars["sessionImg"] = """<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7566                 url.addParam("order","down") 
    7567         vars["sessionSortingURL"]=quoteattr( str( url ) ) 
    7568  
    7569         if self._displayTrackFilter: 
    7570             url = self._getURL() 
    7571             url.addParam("sortBy", "track") 
    7572             trackImg = "" 
    7573             url.addParam("sc",(num-self._displayContribs)) 
    7574             if sortingField and sortingField.getId() == "track": 
    7575                 vars["currentSorting"]= i18nformat("""<input type="hidden" name="sortBy" value="_("track")">""") 
    7576                 if self._order == "down": 
    7577                     trackImg="""<img src=%s alt="down">"""%(quoteattr(Config.getInstance().getSystemIconURL("downArrow"))) 
    7578                     url.addParam("order","up") 
    7579                 elif self._order == "up": 
    7580                     trackImg="""<img src=%s alt="up">"""%(quoteattr(Config.getInstance().getSystemIconURL("upArrow"))) 
    7581                     url.addParam("order","down") 
    7582             trackSortingURL = quoteattr( str( url ) ) 
    7583             vars["trackHeader"] = i18nformat("""<td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> %s<a href=%s> _("Track")</a></td>""") % (trackImg,trackSortingURL) 
    7584         else: 
    7585             vars["trackHeader"] = "" 
     7310            vars["nextContribsURL"] = url 
     7311 
     7312        vars["contributions"] = l 
     7313        vars["contribsToPrint"] = contribsToPrint 
     7314 
     7315        currentSorting = self._sortingCrit.getField().getId() if self._sortingCrit.getField() else "" 
     7316        vars["currentSorting"]= currentSorting 
     7317        vars["sortingOrder"] = self._order 
     7318        invertedOrder = "up" if self._order == "down" else ("down" if self._order == "up" else self._order) 
     7319 
     7320        vars["getOrderURL"] = lambda type: quoteattr(str(self.getOrderURL(currentSorting, num, invertedOrder, type))) 
    75867321 
    75877322        url = urlHandlers.UHContributionListFilter.getURL( self._conf ) 
     
    75927327        vars["contributionsPDFURL"]=quoteattr(str(urlHandlers.UHContributionListToPDF.getURL(self._conf))) 
    75937328        vars["showAttachedFiles"] = self._conf.getAbstractMgr().showAttachedFilesContribList() 
     7329        vars["conf"] = self._conf 
     7330        vars["accessWrapper"] = self._aw 
     7331        vars["filterCriteria"] = self._filterCrit 
     7332        vars["timezone"] = DisplayTZ(self._aw, self._conf).getDisplayTZ() 
    75947333 
    75957334        return vars 
  • indico/MaKaC/webinterface/tpls/ConfContributionList.tpl

    r3a480c r052e5f  
    11<table width="100%"> 
    2     <tr> 
    3         <td> 
    4             <form action=${ filterPostURL } method="POST"> 
    5                 ${ currentSorting } 
    6                 <table width="100%" align="center" border="0"> 
    7                     <tr> 
    8                         <td class="groupTitle">${ _("Display options")}</td> 
    9                     </tr> 
    10                     <tr> 
    11                         <td> 
    12                             <table width="100%"> 
    13                                 <tr> 
    14                                     <td> 
    15                                         <table align="center" cellspacing="10" width="100%"> 
    16                                             <tr style="background-color: #ECECEC;"> 
    17                                             ${ typeFilterHeader } 
    18                                                 <td align="center" class="titleCellFormat"> ${ _("show sessions")}</td> 
    19                                             ${ trackFilterHeader } 
    20                                             </tr> 
    21                                             <tr> 
    22                                             ${ types } 
    23                                                 <td valign="top" style="border-right:1px solid #777777;">${ sessions }</td> 
    24                                             ${ tracks } 
    25                                             </tr> 
    26                                         </table> 
    27                                     </td> 
    28                                 </tr> 
    29                                 <tr> 
    30                                     <td align="center" style="background-color: #ECECEC; padding:5px; margin: 10px 0 30px 0; display: block"><input type="submit" class="btn" name="OK" value="${ _("apply")}"></input></td> 
    31                                 </tr> 
    32                             </table> 
    33                         </td> 
    34                     </tr> 
    35                 </table> 
    36             </form> 
    37         </td> 
    38     </tr> 
     2<%include file="ConfContributionListFilters.tpl"/> 
     3 
    394    <tr> 
    405        <td> 
     
    4712                            <tr> 
    4813                                <td class="groupTitle" width="100%" style="margin-bottom: 20px;">${ _("Contribution List")} (${ numContribs })</td> 
    49                                 <td nowrap align="right" style="border-bottom: 1px solid #777777;">${ contribSetIndex }</td> 
     14                                <td nowrap align="right" style="border-bottom: 1px solid #777777;"> 
     15                                % if startContrib != 1: 
     16                                    <a href="${previousContribsURL}"> 
     17                                        <img src="${Config.getInstance().getSystemIconURL('arrow_previous')}" border="0" style="vertical-align:middle" alt=""> 
     18                                    </a> 
     19                                % endif 
     20                                ${_(" showing ") + str(startContrib) + "-" + str(endContrib)} 
     21                                % if endContrib < numContribs: 
     22                                    <a href="${nextContribsURL}"> 
     23                                        <img src="${Config.getInstance().getSystemIconURL('arrow_next')}" border="0" style="vertical-align:middle" alt=""> 
     24                                    </a> 
     25                                % endif 
     26                                </td> 
    5027                            </tr> 
    5128                        </table> 
     
    5734                <tr> 
    5835                    <td></td> 
    59                     <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> ${ numberImg }<a href=${ numberSortingURL }> ${ _("Id")}</a></td> 
    60                     <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> ${ dateImg }<a href=${ dateSortingURL }> ${ _("Date")}</a></td> 
    61                     ${ typeHeader } 
    62                     <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;">${ titleImg }<a href=${ titleSortingURL }> ${ _("Title")}</a></td> 
    63                     <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> ${ speakerImg }<a href=${ speakerSortingURL }> ${ _("Presenter")}</a></td> 
    64                     <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;">${ sessionImg }<a href=${ sessionSortingURL }> ${ _("Session")}</a> </td> 
    65                     ${ trackHeader } 
     36                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     37                        % if currentSorting == "number": 
     38                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     39                        % endif 
     40                        <a href=${ getOrderURL("number") }> ${ _("Id")}</a> 
     41                    </td> 
     42                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     43                       % if currentSorting == "date": 
     44                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     45                        % endif 
     46                        <a href=${ getOrderURL("date") }> ${ _("Date")}</a> 
     47                    </td> 
     48                    % if len(conf.getContribTypeList()) > 0: 
     49                        <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     50                        % if currentSorting == "type": 
     51                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     52                        % endif 
     53                            <a href=${ getOrderURL("type") }> ${_("Type")}</a> 
     54                        </td> 
     55                    % endif 
     56                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     57                        % if currentSorting == "title": 
     58                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     59                        % endif 
     60                        <a href=${ getOrderURL("title") }> ${ _("Title")}</a> 
     61                    </td> 
     62                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     63                        % if currentSorting == "speaker": 
     64                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     65                        % endif 
     66                        <a href=${ getOrderURL("speaker") }> ${ _("Presenter")}</a> 
     67                    </td> 
     68                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     69                        % if currentSorting == "session": 
     70                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     71                        % endif 
     72                        <a href=${ getOrderURL("session") }> ${ _("Session")}</a> 
     73                    </td> 
     74                    % if len(conf.getTrackList()) > 0: 
     75                        <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> 
     76                        % if currentSorting == "track": 
     77                            <img src='${Config.getInstance().getSystemIconURL(sortingOrder + "Arrow")}' alt="${sortingOrder}"> 
     78                        % endif 
     79                            <a href=${ getOrderURL("track") }> ${_("Track")}</a> 
     80                        </td> 
     81                    % endif 
    6682                    <td nowrap class="titleCellFormat" style="border-right:5px solid #FFFFFF;border-left:5px solid #FFFFFF;border-bottom: 1px solid #5294CC;"> ${ _("Files")}</td> 
    6783                    % if showAttachedFiles: 
     
    7187                </tr> 
    7288                <form action=${ contribSelectionAction } method="post" target="_blank"> 
    73                 ${ contributions } 
     89                    % for contrib in contributions: 
     90                        % if contrib.canAccess(accessWrapper): 
     91                            <%include file="ConfContributionListContribFull.tpl" args="contrib=contrib"/> 
     92                        % else: 
     93                            <%include file="ConfContributionListContribMin.tpl" args="contrib=contrib"/> 
     94                        % endif 
     95                    % endfor 
    7496                <tr> 
    75                     <td colspan="9" align="right">${ contribSetIndex }</td> 
     97                    <td colspan="9" align="right"> 
     98                        % if startContrib != 1: 
     99                            <a href="${previousContribsURL}"> 
     100                                <img src="${Config.getInstance().getSystemIconURL('arrow_previous')}" border="0" style="vertical-align:middle" alt=""> 
     101                            </a> 
     102                        % endif 
     103                        ${_("showing")+ str(startContrib) + "-" + str(endContrib)} " 
     104                        % if sendContrib < numContribs: 
     105                            <a href="${nextContribsURL}"> 
     106                                <img src="${Config.getInstance().getSystemIconURL('arrow_next')}" border="0" style="vertical-align:middle" alt=""> 
     107                            </a> 
     108                        % endif 
     109                    </td> 
    76110                </tr> 
    77111                <tr> 
     
    84118                    <form action=${ contributionsPDFURL } method="post" target="_blank"> 
    85119                    <td colspan="9" valign="bottom" align="left"> 
    86                             ${ contribsToPrint } 
    87                             <input type="submit" class="btn" value="${ _("booklet of all contributions")}" style="width:264px"> 
     120                        % for contribId in contribsToPrint: 
     121                            <input type="hidden" name="contributions" value="${contribId}"> 
     122                        % endfor 
     123                        <input type="submit" class="btn" value="${ _("booklet of all contributions")}" style="width:264px"> 
    88124                    </td> 
    89125                    </form> 
Note: See TracChangeset for help on using the changeset viewer.