Changeset 1201
- Timestamp:
- 08/07/08 09:48:08
- Files:
-
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/interfaces.py (modified) (1 diff)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/kssactions.zcml (modified) (1 diff)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/plonetabs.py (modified) (5 diffs)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/resources/plonetabs.kss (modified) (2 diffs)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/templates/autogenerated.pt (modified) (1 diff)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/templates/autogeneratedlist.pt (added)
- qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/templates/plonetabs.pt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/interfaces.py
r1085 r1201 22 22 """ Return html code for actions list with given category """ 23 23 24 def getAutoGenereatedSection(cat_name, errors): 25 """ Return html code for all autogenerated section """ 26 24 27 def getGeneratedTabs(): 25 28 """ Return html code for autogenerated tabs """ qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/kssactions.zcml
r1198 r1201 74 74 permission="cmf.ManagePortal" 75 75 /> 76 <browser:page 77 for="plone.app.kss.interfaces.IPortalObject" 78 attribute="kss_changeCategory" 79 class=".plonetabs.PloneTabsControlPanel" 80 name="plonetabs-changeCategory" 81 permission="cmf.ManagePortal" 82 /> 76 83 77 84 </configure> qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/plonetabs.py
r1200 r1201 50 50 actionslist_template = ViewPageTemplateFile("templates/actionslist.pt") 51 51 autogenerated_template = ViewPageTemplateFile("templates/autogenerated.pt") 52 autogenerated_list = ViewPageTemplateFile("templates/autogeneratedlist.pt") 52 53 53 54 # custom templates used to update page sections … … 285 286 return self.actionslist_template(**kw) 286 287 288 def getAutoGenereatedSection(self, cat_name, errors={}): 289 """ See interface """ 290 return self.autogenerated_template(category=cat_name, errors=errors) 291 287 292 def getGeneratedTabs(self): 288 293 """ See interface """ 289 return self.autogenerated_ template()294 return self.autogenerated_list() 290 295 291 296 def getRootTabs(self): … … 385 390 ########################## 386 391 392 #@kssaction 393 def kss_changeCategory(self, cat_name): 394 """ Change action category to manage """ 395 ksscore = self.getCommandSet('core') 396 397 # update actions list 398 actionslist = self.getActionsList(category=cat_name) 399 ksscore.replaceInnerHTML(ksscore.getHtmlIdSelector('tabslist'), actionslist) 400 401 # update autogenerated sections 402 section = self.getAutoGenereatedSection(cat_name) 403 ksscore.replaceHTML(ksscore.getHtmlIdSelector('autogeneration_section'), section) 404 405 # update category hidden field on adding form 406 ksscore.setAttribute(ksscore.getCssSelector('#addaction input[name=category]'), 'value', cat_name) 407 408 # update state variable 'plonetabs-category' on client 409 ksscore.setStateVar('plonetabs-category', cat_name) 410 return self.render() 411 387 412 @kssaction 388 413 def kss_toggleGeneratedTabs(self, field, checked='0'): … … 525 550 # update client 526 551 ksscore = self.getCommandSet("core") 527 content = self. actionslist_template(tabs=[action_info,])552 content = self.getActionsList(category=cat_name, tabs=[action_info,]) 528 553 ksscore.replaceHTML(ksscore.getHtmlIdSelector(id), content) 529 554 … … 538 563 # update client 539 564 ksscore = self.getCommandSet("core") 540 content = self. actionslist_template(tabs=[action,])565 content = self.getActionsList(category=cat_name, tabs=[action,]) 541 566 ksscore.replaceHTML(ksscore.getHtmlIdSelector(id), content) 542 567 qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/resources/plonetabs.kss
r1200 r1201 29 29 }*/ 30 30 31 /* Remember portal actions category */32 #select_category:load {33 action-client: setStateVar;34 setStateVar-varname: plonetabs-category;35 setStateVar-value: currentFormVar();36 }37 38 31 /* Collapse expanded sections on load */ 39 32 .collapseAdvanced:load { … … 44 37 } 45 38 39 /* Remember portal actions category */ 40 #select_category:load { 41 action-client: setStateVar; 42 setStateVar-varname: plonetabs-category; 43 setStateVar-value: currentFormVar(); 44 } 45 46 46 /* Change portal actions category page */ 47 47 #select_category:change { 48 action- client: plonetabs-redirectTo;49 plonetabs- redirectTo-searchparams: 'category';50 plonetabs- redirectTo-searchvalues: currentFormVar();48 action-server: plonetabs-changeCategory; 49 plonetabs-changeCategory-cat_name: currentFormVar(); 50 plonetabs-changeCategory-error: plonetabs-handleServerError; 51 51 } 52 52 qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/templates/autogenerated.pt
r1174 r1201 1 1 <metal:header_macro use-macro="context/@@plonetabs-header-macro/macros/header" /> 2 2 3 <tal:tabs tal:define="dummy python:request.RESPONSE.setHeader('Expires', 'Mon, 26 Jul 1996 05:00:00 GMT')" 4 tal:repeat="tab view/getRootTabs"> 5 <li tal:define="id tab/id; 6 visible not: tab/exclude_from_nav" 7 tal:attributes="id string:roottabs_${id}; 8 title tab/description|nothing; 9 class python:view.test(visible, '', 'invisible')"> 10 <div class="bridge"> 11 <input type="checkbox" class="visibility" value="1" name="id" title="visibility" 12 tal:attributes="name id; 13 checked python:view.test(visible, 'checked', None)" /> 3 <div id="autogeneration_section" 4 tal:define="category options/category; 5 errors options/errors|nothing; 6 test nocall:view/test"> 7 8 <form name="generated_tabs_form" 9 action="@@plonetabs-controlpanel" 10 method="post" 11 tal:attributes="action string:${portal_url}/${attrs/action}" 12 tal:condition="python:category == 'portal_tabs'"> 13 14 <input type="hidden" name="form.submitted:boolean" value="True" /> 15 16 <div class="field" 17 tal:define="generated_tabs request/generated_tabs|view/isGeneratedTabs; 18 error errors/generated_tabs|nothing" 19 tal:attributes="class python:test(error, 'field error', 'field')"> 20 <input type="checkbox" 21 id="generated_tabs" 22 name="generated_tabs" 23 value="1" 24 tal:attributes="checked python:test(generated_tabs, 'checked', None)" /> 25 <label for="generated_tabs" i18n:translate="label_generated_tabs_enable">Automatically generate tabs</label> 26 <div class="formHelp" i18n:translate="help_generated_tabs"> 27 By default, all folders created at the root level will have global section 28 navigation generated. You can turn this off if you prefer manually constructing 29 this part of the navigation. 30 </div> 31 </div> 32 33 <div class="field" 34 tal:define="nonfolderish_tabs request/nonfolderish_tabs|view/isNotFoldersGenerated; 35 error errors/nonfolderish_tabs|nothing" 36 tal:attributes="class python:test(error, 'field error', 'field')"> 37 <input type="checkbox" 38 id="nonfolderish_tabs" 39 name="nonfolderish_tabs" 40 value="1" 41 tal:attributes="checked python:test(nonfolderish_tabs, 'checked', None)" /> 42 <label for="nonfolderish_tabs" i18n:translate="label_nonfolderish_tabs_enable">Generate tabs for items other than folders</label> 43 <div class="formHelp" i18n:translate="help_nonfolderish_tabs"> 44 By default, any content item in the root of the portal will be shown as 45 a global section. If you turn this option off, only folders will be shown. 46 This only has an effect if "Automatically generate tabs" is enabled 47 </div> 48 </div> 49 50 <ul class="csshover" id="roottabs" 51 tal:content="structure view/getGeneratedTabs" /> 52 53 <div id="autogeneration_controls"> 54 <input class="submit-button" type="submit" name="autogenerated.save" value="Save" /> 55 </div> 56 57 </form> 58 14 59 </div> 15 <span class="url-helper" tal:content="tab/url">Tab Action</span>16 <span class="tab-title" tal:content="tab/name">Tab Name</span>17 </li>18 </tal:tabs>qPloneTabs/branches/quintagroup.plonetabs/trunk/quintagroup/plonetabs/browser/templates/plonetabs.pt
r1199 r1201 144 144 </form> 145 145 146 <div id="autogeneration_section" tal:condition="python:category == 'portal_tabs'"> 147 148 <form name="generated_tabs_form" 149 action="@@plonetabs-controlpanel" 150 method="post" 151 tal:attributes="action string:${portal_url}/${attrs/action}"> 152 153 <input type="hidden" name="form.submitted:boolean" value="True" /> 154 155 <div class="field" 156 tal:define="generated_tabs request/generated_tabs|view/isGeneratedTabs; 157 error errors/generated_tabs|nothing" 158 tal:attributes="class python:test(error, 'field error', 'field')"> 159 <input type="checkbox" 160 id="generated_tabs" 161 name="generated_tabs" 162 value="1" 163 tal:attributes="checked python:test(generated_tabs, 'checked', None)" /> 164 <label for="generated_tabs" i18n:translate="label_generated_tabs_enable">Automatically generate tabs</label> 165 <div class="formHelp" i18n:translate="help_generated_tabs"> 166 By default, all folders created at the root level will have global section 167 navigation generated. You can turn this off if you prefer manually constructing 168 this part of the navigation. 169 </div> 170 </div> 171 172 <div class="field" 173 tal:define="nonfolderish_tabs request/nonfolderish_tabs|view/isNotFoldersGenerated; 174 error errors/nonfolderish_tabs|nothing" 175 tal:attributes="class python:test(error, 'field error', 'field')"> 176 <input type="checkbox" 177 id="nonfolderish_tabs" 178 name="nonfolderish_tabs" 179 value="1" 180 tal:attributes="checked python:test(nonfolderish_tabs, 'checked', None)" /> 181 <label for="nonfolderish_tabs" i18n:translate="label_nonfolderish_tabs_enable">Generate tabs for items other than folders</label> 182 <div class="formHelp" i18n:translate="help_nonfolderish_tabs"> 183 By default, any content item in the root of the portal will be shown as 184 a global section. If you turn this option off, only folders will be shown. 185 This only has an effect if "Automatically generate tabs" is enabled 186 </div> 187 </div> 188 189 <ul class="csshover" id="roottabs" 190 tal:content="structure view/getGeneratedTabs" /> 191 192 <div id="autogeneration_controls"> 193 <input class="submit-button" type="submit" name="autogenerated.save" value="Save" /> 194 </div> 195 196 </form> 197 198 </div> 146 <tal:autogenerated_section tal:replace="structure python:view.getAutoGenereatedSection(cat_name=category, errors=errors)" /> 199 147 200 148 </div>
