- Timestamp:
- 23.11.2009 08:14:48 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CMESS/misc/trunk/org/cmess/misc/zms/org.cmess.misc.metaobj.xml
r767 r801 6 6 <item key="__obj_attrs__" type="list"><list> 7 7 <item type="dictionary"><dictionary> 8 <item key="id"><![CDATA[interface1]]></item> 9 <item key="mandatory" type="int">0</item> 10 <item key="multilang" type="int">0</item> 11 <item key="name"><![CDATA[<dtml-if "URL.find('/manage') > 0"> 12 <dtml-if "REQUEST.get('update_overview', None)"> 13 <dtml-call "ZMSOverview_updateStaticList()"> 14 <dtml-call "RESPONSE.redirect('manage_main?lang=%s&manage_lang=%s'%(lang, manage_lang))"> 15 </dtml-if> 16 </dtml-if>]]></item> 17 <item key="repetitive" type="int">0</item> 18 <item key="type"><![CDATA[interface]]></item> 8 <item key="id"><![CDATA[ZMSOverview_type]]></item> 9 <item key="keys" type="list"><list> 10 <item><![CDATA[<dtml-return "[['index', 'Index'], ['toc', 'Inhaltsverzeichnis']]">]]></item> 11 </list> 12 </item> 13 <item key="mandatory" type="int">1</item> 14 <item key="multilang" type="int">1</item> 15 <item key="name"><![CDATA[Typ]]></item> 16 <item key="repetitive" type="int">0</item> 17 <item key="type"><![CDATA[select]]></item> 18 </dictionary> 19 </item> 20 <item type="dictionary"><dictionary> 21 <item key="id"><![CDATA[ZMSOverview_pageTypes]]></item> 22 <item key="keys" type="list"><list> 23 <item><![CDATA[<dtml-let result="[]">]]></item> 24 <item><![CDATA[<dtml-in "getMetaobjIds()">]]></item> 25 <item><![CDATA[<dtml-if "getMetaobj(_['sequence-item'])['type'] in ['ZMSDocument']">]]></item> 26 <item><![CDATA[<dtml-call "result.append([_['sequence-item'], nvl(getZMILangStr('TYPE_' + _['sequence-item'].upper()), getMetaobj(_['sequence-item'])['name'], 'TYPE_' + _['sequence-item'].upper())])">]]></item> 27 <item><![CDATA[</dtml-if>]]></item> 28 <item><![CDATA[</dtml-in>]]></item> 29 <item><![CDATA[<dtml-return "result">]]></item> 30 <item><![CDATA[</dtml-let>]]></item> 31 </list> 32 </item> 33 <item key="mandatory" type="int">0</item> 34 <item key="multilang" type="int">1</item> 35 <item key="name"><![CDATA[Elemente]]></item> 36 <item key="repetitive" type="int">0</item> 37 <item key="type"><![CDATA[multiselect]]></item> 19 38 </dictionary> 20 39 </item> … … 24 43 <item key="mandatory" type="int">0</item> 25 44 <item key="multilang" type="int">1</item> 26 <item key="name"><![CDATA[rekursiv ]]></item>45 <item key="name"><![CDATA[rekursiv?]]></item> 27 46 <item key="repetitive" type="int">0</item> 28 47 <item key="type"><![CDATA[boolean]]></item> 48 </dictionary> 49 </item> 50 <item type="dictionary"><dictionary> 51 <item key="default"><![CDATA[1]]></item> 52 <item key="id"><![CDATA[ZMSOverview_static]]></item> 53 <item key="mandatory" type="int">0</item> 54 <item key="multilang" type="int">1</item> 55 <item key="name"><![CDATA[statisch?]]></item> 56 <item key="repetitive" type="int">0</item> 57 <item key="type"><![CDATA[boolean]]></item> 58 </dictionary> 59 </item> 60 <item type="dictionary"><dictionary> 61 <item key="id"><![CDATA[delimiter0]]></item> 62 <item key="mandatory" type="int">0</item> 63 <item key="multilang" type="int">0</item> 64 <item key="name"><![CDATA[FÃŒr Index]]></item> 65 <item key="repetitive" type="int">0</item> 66 <item key="type"><![CDATA[delimiter]]></item> 29 67 </dictionary> 30 68 </item> … … 34 72 <item key="mandatory" type="int">0</item> 35 73 <item key="multilang" type="int">1</item> 36 <item key="name"><![CDATA[ zeige Header]]></item>74 <item key="name"><![CDATA[Buchstaben Kopfzeile?]]></item> 37 75 <item key="repetitive" type="int">0</item> 38 76 <item key="type"><![CDATA[boolean]]></item> … … 44 82 <item key="mandatory" type="int">0</item> 45 83 <item key="multilang" type="int">1</item> 46 <item key="name"><![CDATA[ Header mit kompletten Alphabet]]></item>84 <item key="name"><![CDATA[Komplettes Alphabet?]]></item> 47 85 <item key="repetitive" type="int">0</item> 48 86 <item key="type"><![CDATA[boolean]]></item> … … 50 88 </item> 51 89 <item type="dictionary"><dictionary> 90 <item key="id"><![CDATA[_ZMSOverview_staticList]]></item> 91 <item key="mandatory" type="int">0</item> 92 <item key="multilang" type="int">1</item> 93 <item key="name"><![CDATA[_ZMSOverview_staticList]]></item> 94 <item key="repetitive" type="int">0</item> 95 <item key="type"><![CDATA[list]]></item> 96 </dictionary> 97 </item> 98 <item type="dictionary"><dictionary> 52 99 <item key="default"><![CDATA[0]]></item> 53 <item key="id"><![CDATA[ ZMSOverview_static]]></item>54 <item key="mandatory" type="int">0</item> 55 <item key="multilang" type="int">1</item> 56 <item key="name"><![CDATA[ statische Liste]]></item>100 <item key="id"><![CDATA[_ZMSOverview_updateStaticList]]></item> 101 <item key="mandatory" type="int">0</item> 102 <item key="multilang" type="int">1</item> 103 <item key="name"><![CDATA[_ZMSOverview_updateStaticList]]></item> 57 104 <item key="repetitive" type="int">0</item> 58 105 <item key="type"><![CDATA[boolean]]></item> … … 60 107 </item> 61 108 <item type="dictionary"><dictionary> 62 <item key="id"><![CDATA[ZMSOverview_staticList]]></item>63 <item key="mandatory" type="int">0</item>64 <item key="multilang" type="int">1</item>65 <item key="name"/>66 <item key="repetitive" type="int">0</item>67 <item key="type"><![CDATA[list]]></item>68 </dictionary>69 </item>70 <item type="dictionary"><dictionary>71 <item key="id"><![CDATA[interface0]]></item>72 <item key="mandatory" type="int">0</item>73 <item key="multilang" type="int">0</item>74 <item key="name"><![CDATA[<dtml-if "URL.find('/manage') > 0">75 <table cellspacing="0" cellpadding="1" border="0" width="100%">76 <colgroup>77 <col width="20%" />78 <col width="80%" />79 </colgroup>80 <tr valign="top">81 <td><div class="form-label"> </div></td>82 <td><div class="form-label"><input type="button" value="aktualisieren" onclick="window.location.href='<dtml-var "absolute_url()">/manage_main?lang=<dtml-var "lang">&update_overview=1'" /></div></td>83 </tr>84 </table>85 </dtml-if>]]></item>86 <item key="repetitive" type="int">0</item>87 <item key="type"><![CDATA[interface]]></item>88 </dictionary>89 </item>90 <item type="dictionary"><dictionary>91 109 <item key="custom"><![CDATA[<dtml-comment>--// BO bodyContentZMSCustom_ZMSOverview //--</dtml-comment> 110 111 <dtml-if "(URL.find('/manage') > 0) and (getObjProperty('_ZMSOverview_updateStaticList', REQUEST) == True)"> 112 <dtml-call "ZMSOverview_updateStaticList()"> 113 <dtml-call "setObjProperty('_ZMSOverview_updateStaticList', False, lang)"> 114 </dtml-if> 92 115 93 116 <dtml-var "ZMSOverview_renderOverview()"> … … 109 132 for one_item in obj_list: 110 133 temp_dict = {} 134 temp_dict['level'] = one_item['level'] 111 135 temp_dict['title_alt'] = one_item['title_alt'] 112 136 temp_dict['title'] = one_item['title'] … … 124 148 if ((item_list is not None) and (context.operator_gettype(item_list) == context.operator_gettype([]))): 125 149 for one_item in item_list: 126 if (one_item['title _alt'].startswith('Ã')):150 if (one_item['title'].startswith('Ã')): 127 151 temp_first_char = 'A' 128 elif (one_item['title _alt'].startswith('Ã')):152 elif (one_item['title'].startswith('Ã')): 129 153 temp_first_char = 'O' 130 elif (one_item['title _alt'].startswith('Ã')):154 elif (one_item['title'].startswith('Ã')): 131 155 temp_first_char = 'U' 132 156 else: 133 temp_first_char = one_item['title _alt'][:1].upper()157 temp_first_char = one_item['title'][:1].upper() 134 158 135 159 if (temp_first_char != temp_act_char): … … 168 192 return temp_result 169 193 194 def renderToc(item_list): 195 temp_base_level = context.getLevel() 196 temp_level = 0 197 temp_result = '' 198 199 if ((item_list is not None) and (context.operator_gettype(item_list) == context.operator_gettype([]))): 200 for one_item in item_list: 201 temp_level = one_item['level'] - temp_base_level 202 temp_result += '<a href="%s"%s>%s</a><br />\n'%(one_item['url'], \ 203 (temp_level > 0) and ' style="margin-left: %iem;"'%temp_level or '', one_item['title']) 204 205 return temp_result 206 170 207 ################################################################################################## 171 208 REQUEST = context.REQUEST … … 174 211 175 212 if (context.getObjProperty('ZMSOverview_static', REQUEST)): 176 temp_overview_list = context.getObjProperty(' ZMSOverview_staticList', REQUEST)213 temp_overview_list = context.getObjProperty('_ZMSOverview_staticList', REQUEST) 177 214 else: 178 215 temp_overview_list = convertObjs(context.ZMSOverview_getObjList()) 179 216 180 temp_output_body, temp_chars = renderOverview(temp_overview_list, temp_header) 181 temp_output_head = temp_header and renderOverviewHead(temp_chars, context.getObjProperty('ZMSOverview_completeAlphabet', REQUEST), True) or '' 182 183 return temp_output_head + temp_output_body 217 if (context.getObjProperty('ZMSOverview_type', REQUEST) == 'index'): 218 temp_output_body, temp_chars = renderOverview(temp_overview_list, temp_header) 219 temp_output_head = temp_header and renderOverviewHead(temp_chars, context.getObjProperty('ZMSOverview_completeAlphabet', REQUEST), True) or '' 220 221 temp_result = temp_output_head + temp_output_body 222 else: 223 temp_result = renderToc(temp_overview_list) 224 225 return temp_result 184 226 185 227 # --// EO ZMSOverview_renderOverview //-- … … 205 247 temp_result += '<item key="title"><![CDATA' + '[' + one_item['title'] + ']' + ']></item>\n' 206 248 temp_result += '<item key="url"><![CDATA' + '[' + one_item['obj'].absolute_url() + ']' + ']></item>\n' 249 temp_result += '<item key="level" type="int">' + str(one_item['level']) + '</item>\n' 207 250 temp_result += '</dictionary></item>\n' 208 251 … … 213 256 temp_xml = '<list>\n%s</list>\n' 214 257 215 context.setObjProperty(' ZMSOverview_staticList', \258 context.setObjProperty('_ZMSOverview_staticList', \ 216 259 temp_xml%createStaticXML(context.ZMSOverview_getObjList()), \ 217 260 REQUEST.get('lang', context.getPrimaryLanguage())) … … 235 278 <item key="custom"><![CDATA[# --// BO ZMSOverview_getObjList //-- 236 279 237 def getOverviewObjects(parent_folder, recursive = False):280 def getOverviewObjects(parent_folder, page_types, meta_types, recursive = False): 238 281 temp_result = [] 239 282 240 if ((parent_folder is not None) and (parent_folder.isMetaType('ZMSFolder'))): 241 for one_child in parent_folder.filteredChildNodes(meta_types = ['ZMSFolder', 'ZMSDocument']): 242 if (one_child.isMetaType('ZMSDocument')): 243 temp_result.append({'obj' : one_child, 'title' : one_child.getTitle(REQUEST), 'title_alt' : one_child.getTitlealt(REQUEST)}) 244 elif (one_child.isMetaType('ZMSFolder') and recursive): 245 temp_result += getOverviewObjects(one_child, recursive) 283 if ((parent_folder is not None) and (parent_folder.isMetaType(['ZMS', 'ZMSFolder']))): 284 for one_child in parent_folder.filteredChildNodes(meta_types = meta_types): 285 if (not one_child.isResource(REQUEST)): 286 if (one_child.isMetaType(page_types)): 287 temp_result.append({'obj' : one_child, 'title' : one_child.getTitle(REQUEST), 'title_alt' : one_child.getTitlealt(REQUEST), 'level' : one_child.getLevel()}) 288 if (one_child.isMetaType('ZMSFolder') and recursive): 289 temp_result += getOverviewObjects(one_child, page_types, meta_types, recursive) 246 290 247 291 return temp_result 248 292 249 293 ################################################################################################## 250 REQUEST = context.REQUEST 251 temp_parent = context.getParentNode() 252 253 return context.sort_list(getOverviewObjects(temp_parent, context.getObjProperty('ZMSOverview_recursive')), 'title') 294 REQUEST = context.REQUEST 295 temp_parent = context.getParentNode() 296 # get meta_types which user wants to see at overview 297 temp_page_types = context.getObjProperty('ZMSOverview_pageTypes', REQUEST) 298 # copy meta_types 299 temp_meta_types = context.copy_list(temp_page_types) 300 # meta_types to search for in parent_folder - find ZMSFolder too, to look recursive 301 if (not 'ZMSFolder' in temp_meta_types): 302 temp_meta_types.append('ZMSFolder') 303 304 temp_result = getOverviewObjects(temp_parent, temp_page_types, temp_meta_types, context.getObjProperty('ZMSOverview_recursive')) 305 306 if (context.getObjProperty('ZMSOverview_type', REQUEST) == 'index'): 307 temp_result = context.sort_list(temp_result, 'title') 308 309 return temp_result 254 310 255 311 # --// EO ZMSOverview_getObjList //-- … … 261 317 <item key="repetitive" type="int">0</item> 262 318 <item key="type"><![CDATA[Script (Python)]]></item> 319 </dictionary> 320 </item> 321 <item type="dictionary"><dictionary> 322 <item key="custom"><![CDATA[<dtml-comment>--// BO onChangeObjEvt //--</dtml-comment> 323 324 <dtml-if "REQUEST.form.get('btn', None) == getZMILangStr('BTN_SAVE')"> 325 <dtml-call "setObjProperty('_ZMSOverview_updateStaticList', True, lang)"> 326 </dtml-if> 327 328 <dtml-comment>--// EO onChangeObjEvt //--</dtml-comment> 329 ]]></item> 330 <item key="id"><![CDATA[onChangeObjEvt]]></item> 331 <item key="mandatory" type="int">0</item> 332 <item key="multilang" type="int">0</item> 333 <item key="name"><![CDATA[onChangeObjEvt]]></item> 334 <item key="repetitive" type="int">0</item> 335 <item key="type"><![CDATA[method]]></item> 263 336 </dictionary> 264 337 </item> … … 291 364 <item key="enabled" type="int">1</item> 292 365 <item key="id"><![CDATA[ZMSOverview]]></item> 293 <item key="name"><![CDATA[ Ãbersicht]]></item>366 <item key="name"><![CDATA[ZMSOverview]]></item> 294 367 <item key="package"><![CDATA[org.cmess.misc]]></item> 295 <item key="revision"><![CDATA[0. 2.1]]></item>368 <item key="revision"><![CDATA[0.3.0]]></item> 296 369 <item key="type"><![CDATA[ZMSObject]]></item> 297 370 </dictionary> … … 324 397 <item key="name"><![CDATA[org.cmess.misc]]></item> 325 398 <item key="package"/> 326 <item key="revision"><![CDATA[0. 2.1]]></item>399 <item key="revision"><![CDATA[0.3.0]]></item> 327 400 <item key="type"><![CDATA[ZMSPackage]]></item> 328 401 </dictionary>
Note: See TracChangeset
for help on using the changeset viewer.
