[1] | 1 | ## Script (Python) "qpt_add" |
---|
| 2 | ##bind container=container |
---|
| 3 | ##bind context=context |
---|
| 4 | ##bind namespace= |
---|
| 5 | ##bind script=script |
---|
| 6 | ##bind subpath=traverse_subpath |
---|
| 7 | ##parameters= idx, name, action='', id, condition='', visible=False |
---|
| 8 | ##title= |
---|
| 9 | ## |
---|
| 10 | |
---|
| 11 | from Products.CMFCore.utils import getToolByName |
---|
| 12 | |
---|
| 13 | if action: |
---|
| 14 | from Products.qPloneTabs.utils import processUrl |
---|
| 15 | action = processUrl(context, str(action)) |
---|
| 16 | if visible: |
---|
| 17 | checked = """checked="checked" """ |
---|
| 18 | liClass = "" |
---|
| 19 | visible = True |
---|
| 20 | else: |
---|
| 21 | checked = "" |
---|
| 22 | liClass = "invisible" |
---|
| 23 | visible = False |
---|
| 24 | params = {'id':id, 'name':name, 'action':action, 'condition':condition, |
---|
| 25 | 'permission':'View', 'category':'portal_tabs', 'visible':visible} |
---|
| 26 | act_tool = getToolByName(context, 'portal_actions') |
---|
| 27 | act_tool.addAction(**params) |
---|
| 28 | params.update({'idx':idx, 'abs_url':context.portal_url(), 'checked':checked, 'class':liClass}) |
---|
| 29 | return """ |
---|
| 30 | <li id="tabslist_%(id)s" class="%(class)s"> |
---|
| 31 | <img class="drag-handle" src="drag.gif" alt="" height="11" width="25"> |
---|
| 32 | <div class="bridge"><input class="visibility" value="1" name="i%(idx)s_visibility" %(checked)s type="checkbox" title="visibility"></div> |
---|
| 33 | <a class="delete" href="#">Delete</a> |
---|
| 34 | <span class="url-helper">%(action)s</span> |
---|
| 35 | <span class="tab-title">%(name)s</span> |
---|
| 36 | <form class="editform" method="post" action="%(abs_url)s/prefs_tabs_form" name="f%(idx)s"> |
---|
| 37 | <input type="hidden" name="idx" value="%(idx)s" /> |
---|
| 38 | <dl> |
---|
| 39 | <dt><label>Name</label></dt> |
---|
| 40 | <dd><input type="text" value="%(name)s" name="i%(idx)s_name" /></dd> |
---|
| 41 | </dl> |
---|
| 42 | <dl class="collapseAdvanced collapsedBlock"> |
---|
| 43 | <dt class="headerAdvanced">Advanced</dt> |
---|
| 44 | <dd class="contentAdvanced"> |
---|
| 45 | <dl> |
---|
| 46 | <dt><label>URL (Expression)</label></dt> |
---|
| 47 | <dd><input type="text" value="%(action)s" name="i%(idx)s_action" size="30" /></dd> |
---|
| 48 | </dl> |
---|
| 49 | <dl> |
---|
| 50 | <dt><label>Id</label></dt> |
---|
| 51 | <dd><input type="text" value="%(id)s" name="i%(idx)s_id" /></dd> |
---|
| 52 | </dl> |
---|
| 53 | <dl> |
---|
| 54 | <dt><label>Condition (Expression)</label></dt> |
---|
| 55 | <dd><input type="text" value="%(condition)s" name="i%(idx)s_condition" size="30" /></dd> |
---|
| 56 | </dl> |
---|
| 57 | <div class="visualClear"><!-- --></div> |
---|
| 58 | </dd> |
---|
| 59 | </dl> |
---|
| 60 | <div> |
---|
| 61 | <input type="submit" class="editsave" value="Save" /> |
---|
| 62 | <input type="submit" class="editcancel" value="Cancel" /> |
---|
| 63 | </div> |
---|
| 64 | </form> |
---|
| 65 | </li>\n""" % params |
---|