Changeset 465
- Timestamp:
- 08/14/06 11:09:06
- Files:
-
- qPloneDropDownMenu/branches/0.2/DropDownMenuTool.py (modified) (3 diffs)
- qPloneDropDownMenu/branches/0.2/Extensions/Install.py (modified) (4 diffs)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/dropdownmenu_edit.cpy (deleted)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/dropdownmenu_edit.cpy.metadata (deleted)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/dropdownmenu_update.cpy (deleted)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/dropdownmenu_update.cpy.metadata (deleted)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/javascripts/qplonedropdownmenu.js (modified) (9 diffs)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/qpdm_add.py (modified) (1 diff)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/stylesheets/qplonedropdownmenu.css.dtml (modified) (2 diffs)
- qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/validate_dropdownmenu_edit.vpy (deleted)
- qPloneDropDownMenu/branches/0.2/www/ddmtEdit.zpt (deleted)
- qPloneDropDownMenu/branches/0.2/www/editSubMenus.zpt (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
qPloneDropDownMenu/branches/0.2/DropDownMenuTool.py
r464 r465 16 16 from Products.CMFCore.utils import getToolByName, UniqueObject 17 17 from Products.CMFCore.Expression import Expression, createExprContext 18 from Products.CMFCore. permissions import ManagePortal, View18 from Products.CMFCore.CMFCorePermissions import ManagePortal, View 19 19 20 20 from config import UNIQUE_ID … … 121 121 'actionExpression': \ 122 122 Expression(act.getActionExpression())(createExprContext(portal, portal, portal))} 123 result.append(data)123 result.append(data) 124 124 return result 125 125 … … 128 128 """ Create top-level subMenu mapping. """ 129 129 mapping = self._submenu_mapping 130 for item in mapping.keys():131 for tab in self.listPortalTabActions():132 if item == tab['title']:133 present = True134 break135 else: present = False136 if not present: del mapping[item]130 #for item in mapping.keys(): 131 #for tab in self.listPortalTabActions(): 132 #if item == tab['title']: 133 #present = True 134 #break 135 #else: present = False 136 #if not present: del mapping[item] 137 137 for tab in self.listPortalTabActions(): 138 138 if tab['title'] not in mapping.keys(): qPloneDropDownMenu/branches/0.2/Extensions/Install.py
r464 r465 4 4 from Products.CMFCore.utils import getToolByName 5 5 from Products.CMFCore.DirectoryView import addDirectoryViews 6 from Products.CMFCore. permissions import ManagePortal6 from Products.CMFCore.CMFCorePermissions import ManagePortal 7 7 8 8 from Products.qPloneDropDownMenu.config import * … … 69 69 def setupSkin(self, out, skinFolder): 70 70 skinstool=getToolByName(self, 'portal_skins') 71 addDirectoryViews(skinstool, SKINS_DIR, GLOBALS)72 71 for skin in skinstool.getSkinSelections(): 73 72 path = skinstool.getSkinPath(skin) … … 117 116 registerCSS(self, out) 118 117 out.write('setupSkin... \n') 118 skinstool=getToolByName(self, 'portal_skins') 119 addDirectoryViews(skinstool, SKINS_DIR, GLOBALS) 119 120 setupSkin(self, out, 'qPloneDropDownMenu') 120 121 mtool = getToolByName(self, 'portal_migration') 121 122 plone_version = mtool.getFileSystemVersion() 122 123 if plone_version == '2.0.5': 123 setupSkin(self, out, PROJECT _NAME+'/2.0.5')124 out.write('Added %s/2.0.5 Layer to portal_skins\n' % PROJECT _NAME)124 setupSkin(self, out, PROJECTNAME+'/2.0.5') 125 out.write('Added %s/2.0.5 Layer to portal_skins\n' % PROJECTNAME) 125 126 setupConfiglets(self, out) 126 127 out.write('Added %s to the portal root folder\n' % (UNIQUE_ID)) … … 132 133 unregisterCSS(self, out) 133 134 removeConfiglets(self, out) 134 removeSkin(self, [PROJECTNAME, ])135 removeSkin(self, [PROJECTNAME, PROJECTNAME+'/2.0.5']) 135 136 deleteTool(self, out) 136 137 return out.getvalue() qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/javascripts/qplonedropdownmenu.js
r464 r465 1 var gObj = {title:'',url:'',el:null,opened:null,edited:null,added:null}, 2 gHoverElement = null, i=0, gBeforeReorderFragment = null, 3 gEditCancel = {}, gReorderingLi = null; 1 var gObj = {title:'',url:''}, gEditCancel = {}, gReorderingLi = null; 4 2 5 3 var myrules = { … … 10 8 expandItem(li); 11 9 reorderDisplaying(li,true); 12 gObj['opened'] = li;13 10 } 14 11 else { … … 26 23 if (getChildLis(ul).length > 1){ 27 24 isCollapsed(li)?expandItem(li):''; 28 gBeforeReorderFragment = ul ? ul.innerHTML : null;29 25 gReorderingLi = li; 30 26 Element.addClassName(li, 'childsort'); 31 disableScreen(' alert', 'new', null, 'rootMenu', li);27 disableScreen('rootMenu', li); 32 28 }; 33 29 Event.stop(ev); … … 186 182 ul = document.getElementsByClassName('tabslist', item)[0]; 187 183 if (img && ul){ 188 Element.removeClassName(img, 'expanded_icon'); 189 Element.addClassName(img, 'collapsed_icon'); 190 Element.removeClassName(ul, 'showLevel'); 191 Element.addClassName(ul, 'hideLevel'); 184 shiftClasses(img, 'expanded_icon', 'collapsed_icon'); 185 shiftClasses(ul, 'showLevel', 'hideLevel'); 192 186 return true; 193 187 } … … 199 193 ul = document.getElementsByClassName('tabslist', item)[0]; 200 194 if (img && ul){ 201 Element.removeClassName(img, 'collapsed_icon'); 202 Element.addClassName(img, 'expanded_icon'); 203 Element.removeClassName(ul, 'hideLevel'); 204 Element.addClassName(ul, 'showLevel'); 195 shiftClasses(img, 'collapsed_icon', 'expanded_icon'); 196 shiftClasses(ul, 'hideLevel', 'showLevel'); 205 197 return true; 206 198 } … … 213 205 }; 214 206 215 function initLightbox ( className,li) {207 function initLightbox (li) { 216 208 var objBody = document.getElementsByTagName("body").item(0), 217 209 objOverlay = document.createElement("div"), … … 219 211 objOverlay.setAttribute('id', 'overlay_modal'); 220 212 objLi.setAttribute('id', 'overlay_li'); 221 objOverlay.className = "overlay_ " + className;213 objOverlay.className = "overlay_alert"; 222 214 objLi.className = "overlay_li childsort"; 223 215 objOverlay.style.display = 'none'; … … 234 226 }; 235 227 236 function disableScreen( className, overlayId, contentId,overElement, li) {237 initLightbox( className,li);228 function disableScreen(overElement, li) { 229 initLightbox(li); 238 230 var objOverlay = $('overlay_modal'), objLi = $('overlay_li'), 239 231 ul = objLi.getElementsByTagName('UL')[0]; … … 286 278 var ev = ev?ev:window.event, li = Event.findElement(ev, 'LI'), 287 279 path = li.getElementsByTagName('INPUT')[0].value, 288 ul = li.getElementsByTagName('UL')[0], params = '', doReq = 0,280 ul = li.getElementsByTagName('UL')[0], params = '', 289 281 ulOrigin = gReorderingLi.getElementsByTagName('UL')[0]; 290 $A( ul.childNodes).each(function(i){282 $A(getChildLis(ul)).each(function(i){ 291 283 var val = i.getElementsByTagName('INPUT')[1].value; 292 if (val != '') { 293 doReq++; 294 params += '&idxs='+val; 295 } 284 params += val?'&idxs='+val:''; 296 285 }); 297 if (doReq>1) { 298 new Ajax.Request('qpdm_reorder', 299 {method: 'post', 300 parameters: 'submenu_path='+path+params, 301 onSuccess: function(request){ 302 new Effect.Highlight(ulOrigin, {duration: 0.7, afterFinish: function(){ 303 Element.removeClassName(gReorderingLi, 'childsort'); 304 Element.update(ulOrigin.parentNode, request.responseText); 305 enableScreen(ev); 306 Behaviour.apply();}}); 307 }, 308 onFailure: function(request){window.alert(getMes(request.responseText));}, 309 } 310 ); 311 } 312 else { 313 Element.removeClassName(gReorderingLi, 'childsort'); 314 enableScreen(ev); 315 new Effect.Highlight(ulOrigin, {duration: 0.7, afterFinish: function(){Behaviour.apply();}}); 316 }; 286 new Ajax.Request('qpdm_reorder', 287 {method: 'post', 288 parameters: 'submenu_path='+path+params, 289 onSuccess: function(request){ 290 new Effect.Highlight(ulOrigin, {duration: 0.7, afterFinish: function(){ 291 Element.removeClassName(gReorderingLi, 'childsort'); 292 Element.update(ulOrigin.parentNode, request.responseText); 293 enableScreen(ev); 294 Behaviour.apply();}}); 295 }, 296 onFailure: function(request){window.alert(getMes(request.responseText));}, 297 } 298 ); 317 299 Event.stop(ev); 318 300 return false; qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/qpdm_add.py
r464 r465 45 45 <div class="sub-items"> 46 46 <ul class="tabslist hideLevel"> 47 <li >47 <li class="addItem"> 48 48 <form class="addform" method="post" action="%(portal_url)s/prefs_dropdownmenu_edit_form"> 49 49 <input name="submenu_path" value="%(submenu_path)s/%(num)s" type="hidden"> qPloneDropDownMenu/branches/0.2/skins/qPloneDropDownMenu/stylesheets/qplonedropdownmenu.css.dtml
r464 r465 15 15 #app .editform, 16 16 #app li.childedit ul, 17 #app li.childedit span, 17 18 #app li.childsort ul li ul, 18 19 #app li.childsort ul li .item_icon, … … 80 81 81 82 83 /*************************************************************/ 84 82 85 /* </dtml-with> (do not remove this either :) */
