From 197fdee2a47a39305ae546eb9cee416e57235bd2 Mon Sep 17 00:00:00 2001 From: Ralf Becker Date: Fri, 15 Oct 2010 10:04:07 +0000 Subject: [PATCH] updated dhtmlxtree to version 2.6 --- phpgwapi/js/dhtmlxtree/License_GPL.html | 73 + phpgwapi/js/dhtmlxtree/css/dhtmlxtree.css | 136 + .../js/dhtmlxtree/dhtmlxConnector/readme.txt | 4 + .../codebase/dhtmlxdataprocessor.js | 152 + .../codebase/dhtmlxdataprocessor_debug.js | 27 + .../dhtmlxdataprocessor_deprecated.js | 17 + .../dhtmlxtree/dhtmlxDataProcessor/readme.txt | 3 + .../sources/dhtmlxdataprocessor.js | 584 + .../sources/dhtmlxdataprocessor_debug.js | 171 + .../sources/dhtmlxdataprocessor_deprecated.js | 45 + .../dhtmlxTree/codebase/dhtmlxcommon.js | 928 ++ .../dhtmlxTree/codebase/dhtmlxtree.css | 136 + .../dhtmlxTree/codebase/dhtmlxtree.js | 211 + .../codebase/ext/dhtmlxtree_dragin.js | 18 + .../dhtmlxTree/codebase/ext/dhtmlxtree_ed.js | 22 + .../dhtmlxTree/codebase/ext/dhtmlxtree_er.js | 18 + .../codebase/ext/dhtmlxtree_json.js | 33 + .../codebase/ext/dhtmlxtree_start.js | 23 + .../dhtmlxTree/codebase/imgs/blank.gif | Bin 0 -> 56 bytes .../dhtmlxTree/codebase/imgs/but_cut.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_bluebooks/blank.gif | Bin 0 -> 56 bytes .../codebase/imgs/csh_bluebooks/book.gif | Bin 0 -> 260 bytes .../imgs/csh_bluebooks/book_titel.gif | Bin 0 -> 210 bytes .../codebase/imgs/csh_bluebooks/but_cut.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_bluebooks/close2.gif | Bin 0 -> 1042 bytes .../imgs/csh_bluebooks/folderClosed.gif | Bin 0 -> 250 bytes .../imgs/csh_bluebooks/folderOpen.gif | Bin 0 -> 257 bytes .../imgs/csh_bluebooks/iconCheckAll.gif | Bin 0 -> 275 bytes .../imgs/csh_bluebooks/iconCheckDis.gif | Bin 0 -> 270 bytes .../imgs/csh_bluebooks/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_bluebooks/iconChecked.gif | Bin 0 -> 257 bytes .../codebase/imgs/csh_bluebooks/iconSafe.gif | Bin 0 -> 261 bytes .../codebase/imgs/csh_bluebooks/iconText.gif | Bin 0 -> 208 bytes .../imgs/csh_bluebooks/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_bluebooks/iconUncheckDis.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_bluebooks/leaf.gif | Bin 0 -> 260 bytes .../codebase/imgs/csh_bluebooks/line.gif | Bin 0 -> 169 bytes .../codebase/imgs/csh_bluebooks/line1.gif | Bin 0 -> 169 bytes .../codebase/imgs/csh_bluebooks/line1_rtl.gif | Bin 0 -> 169 bytes .../codebase/imgs/csh_bluebooks/line2.gif | Bin 0 -> 165 bytes .../codebase/imgs/csh_bluebooks/line2_rtl.gif | Bin 0 -> 167 bytes .../codebase/imgs/csh_bluebooks/line3.gif | Bin 0 -> 171 bytes .../codebase/imgs/csh_bluebooks/line3_rtl.gif | Bin 0 -> 173 bytes .../codebase/imgs/csh_bluebooks/line4.gif | Bin 0 -> 159 bytes .../codebase/imgs/csh_bluebooks/line4_rtl.gif | Bin 0 -> 159 bytes .../codebase/imgs/csh_bluebooks/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_bluebooks/minus.gif | Bin 0 -> 211 bytes .../codebase/imgs/csh_bluebooks/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_bluebooks/minus2.gif | Bin 0 -> 223 bytes .../imgs/csh_bluebooks/minus2_rtl.gif | Bin 0 -> 222 bytes .../codebase/imgs/csh_bluebooks/minus3.gif | Bin 0 -> 225 bytes .../imgs/csh_bluebooks/minus3_rtl.gif | Bin 0 -> 226 bytes .../codebase/imgs/csh_bluebooks/minus4.gif | Bin 0 -> 222 bytes .../imgs/csh_bluebooks/minus4_rtl.gif | Bin 0 -> 220 bytes .../codebase/imgs/csh_bluebooks/minus5.gif | Bin 0 -> 216 bytes .../imgs/csh_bluebooks/minus5_rtl.gif | Bin 0 -> 214 bytes .../codebase/imgs/csh_bluebooks/plus.gif | Bin 0 -> 212 bytes .../codebase/imgs/csh_bluebooks/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_bluebooks/plus2.gif | Bin 0 -> 220 bytes .../codebase/imgs/csh_bluebooks/plus2_rtl.gif | Bin 0 -> 221 bytes .../codebase/imgs/csh_bluebooks/plus3.gif | Bin 0 -> 222 bytes .../codebase/imgs/csh_bluebooks/plus3_rtl.gif | Bin 0 -> 225 bytes .../codebase/imgs/csh_bluebooks/plus4.gif | Bin 0 -> 219 bytes .../codebase/imgs/csh_bluebooks/plus4_rtl.gif | Bin 0 -> 219 bytes .../codebase/imgs/csh_bluebooks/plus5.gif | Bin 0 -> 213 bytes .../codebase/imgs/csh_bluebooks/plus5_rtl.gif | Bin 0 -> 213 bytes .../codebase/imgs/csh_bluebooks/radio_off.gif | Bin 0 -> 249 bytes .../codebase/imgs/csh_bluebooks/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_bluebooks/tombs.gif | Bin 0 -> 231 bytes .../codebase/imgs/csh_bluefolders/blank.gif | Bin 0 -> 56 bytes .../imgs/csh_bluefolders/folderClosed.gif | Bin 0 -> 261 bytes .../imgs/csh_bluefolders/folderOpen.gif | Bin 0 -> 266 bytes .../imgs/csh_bluefolders/iconCheckAll.gif | Bin 0 -> 275 bytes .../imgs/csh_bluefolders/iconCheckAll_2.gif | Bin 0 -> 273 bytes .../imgs/csh_bluefolders/iconCheckDis.gif | Bin 0 -> 270 bytes .../imgs/csh_bluefolders/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_bluefolders/iconChecked.gif | Bin 0 -> 257 bytes .../imgs/csh_bluefolders/iconFlag.gif | Bin 0 -> 247 bytes .../imgs/csh_bluefolders/iconGraph.gif | Bin 0 -> 250 bytes .../imgs/csh_bluefolders/iconSound.gif | Bin 0 -> 244 bytes .../imgs/csh_bluefolders/iconText.gif | Bin 0 -> 248 bytes .../imgs/csh_bluefolders/iconTexts.gif | Bin 0 -> 256 bytes .../imgs/csh_bluefolders/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_bluefolders/iconUncheckDis.gif | Bin 0 -> 268 bytes .../imgs/csh_bluefolders/iconWrite1.gif | Bin 0 -> 278 bytes .../imgs/csh_bluefolders/iconWrite2.gif | Bin 0 -> 272 bytes .../codebase/imgs/csh_bluefolders/leaf.gif | Bin 0 -> 237 bytes .../codebase/imgs/csh_bluefolders/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_bluefolders/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_bluefolders/line2.gif | Bin 0 -> 70 bytes .../codebase/imgs/csh_bluefolders/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_bluefolders/line4.gif | Bin 0 -> 69 bytes .../codebase/imgs/csh_bluefolders/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_bluefolders/minus.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_bluefolders/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_bluefolders/minus2.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_bluefolders/minus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_bluefolders/minus4.gif | Bin 0 -> 90 bytes .../codebase/imgs/csh_bluefolders/minus5.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_bluefolders/plus.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_bluefolders/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_bluefolders/plus2.gif | Bin 0 -> 95 bytes .../codebase/imgs/csh_bluefolders/plus3.gif | Bin 0 -> 96 bytes .../codebase/imgs/csh_bluefolders/plus4.gif | Bin 0 -> 94 bytes .../codebase/imgs/csh_bluefolders/plus5.gif | Bin 0 -> 92 bytes .../imgs/csh_bluefolders/radio_off.gif | Bin 0 -> 249 bytes .../imgs/csh_bluefolders/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_books/blank.gif | Bin 0 -> 56 bytes .../codebase/imgs/csh_books/folderClosed.gif | Bin 0 -> 189 bytes .../codebase/imgs/csh_books/folderOpen.gif | Bin 0 -> 187 bytes .../codebase/imgs/csh_books/iconCheckAll.gif | Bin 0 -> 275 bytes .../codebase/imgs/csh_books/iconCheckDis.gif | Bin 0 -> 270 bytes .../codebase/imgs/csh_books/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_books/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_books/iconUncheckDis.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_books/leaf.gif | Bin 0 -> 184 bytes .../codebase/imgs/csh_books/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_books/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_books/line2.gif | Bin 0 -> 70 bytes .../codebase/imgs/csh_books/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_books/line4.gif | Bin 0 -> 69 bytes .../codebase/imgs/csh_books/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_books/minus.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_books/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_books/minus2.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_books/minus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_books/minus4.gif | Bin 0 -> 90 bytes .../codebase/imgs/csh_books/minus5.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_books/plus.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_books/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_books/plus2.gif | Bin 0 -> 95 bytes .../codebase/imgs/csh_books/plus3.gif | Bin 0 -> 96 bytes .../codebase/imgs/csh_books/plus4.gif | Bin 0 -> 94 bytes .../codebase/imgs/csh_books/plus5.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_books/radio_off.gif | Bin 0 -> 249 bytes .../codebase/imgs/csh_books/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_books/tombs.gif | Bin 0 -> 169 bytes .../codebase/imgs/csh_books/tombs_open.gif | Bin 0 -> 169 bytes .../codebase/imgs/csh_dhx_skyblue/blank.gif | Bin 0 -> 56 bytes .../imgs/csh_dhx_skyblue/folderClosed.gif | Bin 0 -> 227 bytes .../imgs/csh_dhx_skyblue/folderOpen.gif | Bin 0 -> 341 bytes .../imgs/csh_dhx_skyblue/iconCheckAll.gif | Bin 0 -> 342 bytes .../imgs/csh_dhx_skyblue/iconCheckDis.gif | Bin 0 -> 342 bytes .../imgs/csh_dhx_skyblue/iconCheckGray.gif | Bin 0 -> 342 bytes .../imgs/csh_dhx_skyblue/iconChecked.gif | Bin 0 -> 615 bytes .../imgs/csh_dhx_skyblue/iconFlag.gif | Bin 0 -> 623 bytes .../imgs/csh_dhx_skyblue/iconGraph.gif | Bin 0 -> 608 bytes .../imgs/csh_dhx_skyblue/iconSound.gif | Bin 0 -> 639 bytes .../imgs/csh_dhx_skyblue/iconText.gif | Bin 0 -> 613 bytes .../imgs/csh_dhx_skyblue/iconTexts.gif | Bin 0 -> 622 bytes .../imgs/csh_dhx_skyblue/iconUncheckAll.gif | Bin 0 -> 219 bytes .../imgs/csh_dhx_skyblue/iconUncheckDis.gif | Bin 0 -> 217 bytes .../imgs/csh_dhx_skyblue/iconWrite1.gif | Bin 0 -> 630 bytes .../imgs/csh_dhx_skyblue/iconWrite2.gif | Bin 0 -> 635 bytes .../codebase/imgs/csh_dhx_skyblue/leaf.gif | Bin 0 -> 614 bytes .../codebase/imgs/csh_dhx_skyblue/line.gif | Bin 0 -> 65 bytes .../codebase/imgs/csh_dhx_skyblue/line1.gif | Bin 0 -> 65 bytes .../codebase/imgs/csh_dhx_skyblue/line2.gif | Bin 0 -> 64 bytes .../codebase/imgs/csh_dhx_skyblue/line3.gif | Bin 0 -> 67 bytes .../codebase/imgs/csh_dhx_skyblue/line4.gif | Bin 0 -> 63 bytes .../codebase/imgs/csh_dhx_skyblue/lock.gif | Bin 0 -> 208 bytes .../codebase/imgs/csh_dhx_skyblue/minus.gif | Bin 0 -> 203 bytes .../codebase/imgs/csh_dhx_skyblue/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_dhx_skyblue/minus2.gif | Bin 0 -> 208 bytes .../codebase/imgs/csh_dhx_skyblue/minus3.gif | Bin 0 -> 210 bytes .../codebase/imgs/csh_dhx_skyblue/minus4.gif | Bin 0 -> 208 bytes .../codebase/imgs/csh_dhx_skyblue/minus5.gif | Bin 0 -> 205 bytes .../codebase/imgs/csh_dhx_skyblue/plus.gif | Bin 0 -> 205 bytes .../codebase/imgs/csh_dhx_skyblue/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_dhx_skyblue/plus2.gif | Bin 0 -> 211 bytes .../codebase/imgs/csh_dhx_skyblue/plus3.gif | Bin 0 -> 212 bytes .../codebase/imgs/csh_dhx_skyblue/plus4.gif | Bin 0 -> 211 bytes .../codebase/imgs/csh_dhx_skyblue/plus5.gif | Bin 0 -> 208 bytes .../imgs/csh_dhx_skyblue/radio_off.gif | Bin 0 -> 249 bytes .../imgs/csh_dhx_skyblue/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_scbrblue/blank.gif | Bin 0 -> 56 bytes .../imgs/csh_scbrblue/folderClosed.gif | Bin 0 -> 99 bytes .../codebase/imgs/csh_scbrblue/folderOpen.gif | Bin 0 -> 98 bytes .../imgs/csh_scbrblue/iconCheckAll.gif | Bin 0 -> 275 bytes .../imgs/csh_scbrblue/iconCheckDis.gif | Bin 0 -> 270 bytes .../imgs/csh_scbrblue/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_scbrblue/iconChecked.gif | Bin 0 -> 257 bytes .../codebase/imgs/csh_scbrblue/iconFlag.gif | Bin 0 -> 248 bytes .../codebase/imgs/csh_scbrblue/iconGraph.gif | Bin 0 -> 250 bytes .../codebase/imgs/csh_scbrblue/iconSound.gif | Bin 0 -> 242 bytes .../codebase/imgs/csh_scbrblue/iconText.gif | Bin 0 -> 132 bytes .../codebase/imgs/csh_scbrblue/iconTexts.gif | Bin 0 -> 139 bytes .../imgs/csh_scbrblue/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_scbrblue/iconUncheckDis.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_scbrblue/iconWrite1.gif | Bin 0 -> 276 bytes .../codebase/imgs/csh_scbrblue/iconWrite2.gif | Bin 0 -> 270 bytes .../codebase/imgs/csh_scbrblue/leaf.gif | Bin 0 -> 237 bytes .../codebase/imgs/csh_scbrblue/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_scbrblue/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_scbrblue/line2.gif | Bin 0 -> 70 bytes .../codebase/imgs/csh_scbrblue/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_scbrblue/line4.gif | Bin 0 -> 69 bytes .../codebase/imgs/csh_scbrblue/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_scbrblue/minus.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_scbrblue/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_scbrblue/minus2.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_scbrblue/minus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_scbrblue/minus4.gif | Bin 0 -> 90 bytes .../codebase/imgs/csh_scbrblue/minus5.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_scbrblue/plus.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_scbrblue/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_scbrblue/plus2.gif | Bin 0 -> 95 bytes .../codebase/imgs/csh_scbrblue/plus3.gif | Bin 0 -> 96 bytes .../codebase/imgs/csh_scbrblue/plus4.gif | Bin 0 -> 94 bytes .../codebase/imgs/csh_scbrblue/plus5.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_scbrblue/radio_off.gif | Bin 0 -> 249 bytes .../codebase/imgs/csh_scbrblue/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_scbrblue/safe_close.gif | Bin 0 -> 259 bytes .../codebase/imgs/csh_scbrblue/safe_open.gif | Bin 0 -> 261 bytes .../codebase/imgs/csh_vista/blank.gif | Bin 0 -> 56 bytes .../codebase/imgs/csh_vista/folderClosed.gif | Bin 0 -> 284 bytes .../codebase/imgs/csh_vista/folderOpen.gif | Bin 0 -> 277 bytes .../codebase/imgs/csh_vista/iconCheckAll.gif | Bin 0 -> 237 bytes .../codebase/imgs/csh_vista/iconCheckDis.gif | Bin 0 -> 237 bytes .../codebase/imgs/csh_vista/iconCheckGray.gif | Bin 0 -> 239 bytes .../codebase/imgs/csh_vista/iconChecked.gif | Bin 0 -> 281 bytes .../codebase/imgs/csh_vista/iconFlag.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_vista/iconGraph.gif | Bin 0 -> 274 bytes .../codebase/imgs/csh_vista/iconSound.gif | Bin 0 -> 305 bytes .../codebase/imgs/csh_vista/iconText.gif | Bin 0 -> 235 bytes .../codebase/imgs/csh_vista/iconTexts.gif | Bin 0 -> 246 bytes .../imgs/csh_vista/iconUncheckAll.gif | Bin 0 -> 233 bytes .../imgs/csh_vista/iconUncheckDis.gif | Bin 0 -> 232 bytes .../codebase/imgs/csh_vista/iconWrite1.gif | Bin 0 -> 270 bytes .../codebase/imgs/csh_vista/iconWrite2.gif | Bin 0 -> 270 bytes .../codebase/imgs/csh_vista/leaf.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_vista/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_vista/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_vista/line2.gif | Bin 0 -> 70 bytes .../codebase/imgs/csh_vista/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_vista/line4.gif | Bin 0 -> 69 bytes .../codebase/imgs/csh_vista/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_vista/minus.gif | Bin 0 -> 131 bytes .../codebase/imgs/csh_vista/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_vista/minus2.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_vista/minus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_vista/minus4.gif | Bin 0 -> 90 bytes .../codebase/imgs/csh_vista/minus5.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_vista/plus.gif | Bin 0 -> 130 bytes .../codebase/imgs/csh_vista/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_vista/plus2.gif | Bin 0 -> 95 bytes .../codebase/imgs/csh_vista/plus3.gif | Bin 0 -> 96 bytes .../codebase/imgs/csh_vista/plus4.gif | Bin 0 -> 94 bytes .../codebase/imgs/csh_vista/plus5.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_vista/radio_off.gif | Bin 0 -> 249 bytes .../codebase/imgs/csh_vista/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_winstyle/blank.gif | Bin 0 -> 56 bytes .../imgs/csh_winstyle/folderClosed.gif | Bin 0 -> 245 bytes .../codebase/imgs/csh_winstyle/folderOpen.gif | Bin 0 -> 252 bytes .../imgs/csh_winstyle/iconCheckAll.gif | Bin 0 -> 275 bytes .../imgs/csh_winstyle/iconCheckDis.gif | Bin 0 -> 270 bytes .../imgs/csh_winstyle/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_winstyle/iconChecked.gif | Bin 0 -> 257 bytes .../codebase/imgs/csh_winstyle/iconFlag.gif | Bin 0 -> 269 bytes .../codebase/imgs/csh_winstyle/iconGraph.gif | Bin 0 -> 263 bytes .../codebase/imgs/csh_winstyle/iconSound.gif | Bin 0 -> 283 bytes .../codebase/imgs/csh_winstyle/iconText.gif | Bin 0 -> 228 bytes .../codebase/imgs/csh_winstyle/iconTexts.gif | Bin 0 -> 237 bytes .../imgs/csh_winstyle/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_winstyle/iconUncheckDis.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_winstyle/iconWrite1.gif | Bin 0 -> 275 bytes .../codebase/imgs/csh_winstyle/iconWrite2.gif | Bin 0 -> 270 bytes .../codebase/imgs/csh_winstyle/leaf.gif | Bin 0 -> 219 bytes .../codebase/imgs/csh_winstyle/leaves.gif | Bin 0 -> 227 bytes .../codebase/imgs/csh_winstyle/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_winstyle/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_winstyle/line2.gif | Bin 0 -> 68 bytes .../codebase/imgs/csh_winstyle/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_winstyle/line4.gif | Bin 0 -> 63 bytes .../codebase/imgs/csh_winstyle/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_winstyle/minus.gif | Bin 0 -> 78 bytes .../codebase/imgs/csh_winstyle/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_winstyle/minus2.gif | Bin 0 -> 86 bytes .../codebase/imgs/csh_winstyle/minus3.gif | Bin 0 -> 88 bytes .../codebase/imgs/csh_winstyle/minus4.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_winstyle/minus5.gif | Bin 0 -> 81 bytes .../codebase/imgs/csh_winstyle/plus.gif | Bin 0 -> 82 bytes .../codebase/imgs/csh_winstyle/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_winstyle/plus2.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_winstyle/plus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_winstyle/plus4.gif | Bin 0 -> 88 bytes .../codebase/imgs/csh_winstyle/plus5.gif | Bin 0 -> 83 bytes .../codebase/imgs/csh_winstyle/radio_off.gif | Bin 0 -> 249 bytes .../codebase/imgs/csh_winstyle/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_yellowbooks/blank.gif | Bin 0 -> 56 bytes .../imgs/csh_yellowbooks/books_close.gif | Bin 0 -> 284 bytes .../imgs/csh_yellowbooks/books_open.gif | Bin 0 -> 236 bytes .../imgs/csh_yellowbooks/folderClosed.gif | Bin 0 -> 284 bytes .../imgs/csh_yellowbooks/folderOpen.gif | Bin 0 -> 273 bytes .../imgs/csh_yellowbooks/iconCheckAll.gif | Bin 0 -> 275 bytes .../imgs/csh_yellowbooks/iconCheckDis.gif | Bin 0 -> 270 bytes .../imgs/csh_yellowbooks/iconCheckGray.gif | Bin 0 -> 279 bytes .../imgs/csh_yellowbooks/iconText.gif | Bin 0 -> 129 bytes .../imgs/csh_yellowbooks/iconUncheckAll.gif | Bin 0 -> 279 bytes .../imgs/csh_yellowbooks/iconUncheckDis.gif | Bin 0 -> 268 bytes .../codebase/imgs/csh_yellowbooks/leaf.gif | Bin 0 -> 284 bytes .../codebase/imgs/csh_yellowbooks/leaf2.gif | Bin 0 -> 236 bytes .../codebase/imgs/csh_yellowbooks/leaf3.gif | Bin 0 -> 284 bytes .../codebase/imgs/csh_yellowbooks/leaf_2.gif | Bin 0 -> 284 bytes .../codebase/imgs/csh_yellowbooks/line.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_yellowbooks/line1.gif | Bin 0 -> 71 bytes .../codebase/imgs/csh_yellowbooks/line2.gif | Bin 0 -> 70 bytes .../codebase/imgs/csh_yellowbooks/line3.gif | Bin 0 -> 73 bytes .../codebase/imgs/csh_yellowbooks/line4.gif | Bin 0 -> 69 bytes .../codebase/imgs/csh_yellowbooks/lock.gif | Bin 0 -> 116 bytes .../codebase/imgs/csh_yellowbooks/minus.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_yellowbooks/minus1.gif | Bin 0 -> 85 bytes .../codebase/imgs/csh_yellowbooks/minus2.gif | Bin 0 -> 92 bytes .../codebase/imgs/csh_yellowbooks/minus3.gif | Bin 0 -> 93 bytes .../codebase/imgs/csh_yellowbooks/minus4.gif | Bin 0 -> 90 bytes .../codebase/imgs/csh_yellowbooks/minus5.gif | Bin 0 -> 87 bytes .../codebase/imgs/csh_yellowbooks/plus.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_yellowbooks/plus1.gif | Bin 0 -> 89 bytes .../codebase/imgs/csh_yellowbooks/plus2.gif | Bin 0 -> 95 bytes .../codebase/imgs/csh_yellowbooks/plus3.gif | Bin 0 -> 96 bytes .../codebase/imgs/csh_yellowbooks/plus4.gif | Bin 0 -> 94 bytes .../codebase/imgs/csh_yellowbooks/plus5.gif | Bin 0 -> 92 bytes .../imgs/csh_yellowbooks/radio_off.gif | Bin 0 -> 249 bytes .../imgs/csh_yellowbooks/radio_on.gif | Bin 0 -> 251 bytes .../codebase/imgs/csh_yellowbooks/tombs.gif | Bin 0 -> 259 bytes .../imgs/csh_yellowbooks/tombs_open.gif | Bin 0 -> 261 bytes .../dhtmlxTree/codebase/imgs/folderClosed.gif | Bin 0 -> 135 bytes .../dhtmlxTree/codebase/imgs/folderOpen.gif | Bin 0 -> 139 bytes .../dhtmlxTree/codebase/imgs/iconCheckAll.gif | Bin 0 -> 123 bytes .../dhtmlxTree/codebase/imgs/iconCheckDis.gif | Bin 0 -> 126 bytes .../codebase/imgs/iconCheckGray.gif | Bin 0 -> 126 bytes .../codebase/imgs/iconUncheckAll.gif | Bin 0 -> 111 bytes .../codebase/imgs/iconUncheckDis.gif | Bin 0 -> 117 bytes .../dhtmlxTree/codebase/imgs/leaf.gif | Bin 0 -> 123 bytes .../dhtmlxTree/codebase/imgs/line.gif | Bin 0 -> 71 bytes .../dhtmlxTree/codebase/imgs/line1.gif | Bin 0 -> 71 bytes .../dhtmlxTree/codebase/imgs/line1_rtl.gif | Bin 0 -> 64 bytes .../dhtmlxTree/codebase/imgs/line2.gif | Bin 0 -> 70 bytes .../dhtmlxTree/codebase/imgs/line2_rtl.gif | Bin 0 -> 64 bytes .../dhtmlxTree/codebase/imgs/line3.gif | Bin 0 -> 73 bytes .../dhtmlxTree/codebase/imgs/line3_rtl.gif | Bin 0 -> 67 bytes .../dhtmlxTree/codebase/imgs/line4.gif | Bin 0 -> 69 bytes .../dhtmlxTree/codebase/imgs/line4_rtl.gif | Bin 0 -> 64 bytes .../dhtmlxTree/codebase/imgs/lock.gif | Bin 0 -> 116 bytes .../dhtmlxTree/codebase/imgs/minus.gif | Bin 0 -> 85 bytes .../dhtmlxTree/codebase/imgs/minus1.gif | Bin 0 -> 85 bytes .../dhtmlxTree/codebase/imgs/minus2.gif | Bin 0 -> 92 bytes .../dhtmlxTree/codebase/imgs/minus2_rtl.gif | Bin 0 -> 84 bytes .../dhtmlxTree/codebase/imgs/minus3.gif | Bin 0 -> 93 bytes .../dhtmlxTree/codebase/imgs/minus3_rtl.gif | Bin 0 -> 85 bytes .../dhtmlxTree/codebase/imgs/minus4.gif | Bin 0 -> 90 bytes .../dhtmlxTree/codebase/imgs/minus4_rtl.gif | Bin 0 -> 85 bytes .../dhtmlxTree/codebase/imgs/minus5.gif | Bin 0 -> 87 bytes .../dhtmlxTree/codebase/imgs/minus5_rtl.gif | Bin 0 -> 82 bytes .../dhtmlxTree/codebase/imgs/minus_ar.gif | Bin 0 -> 68 bytes .../dhtmlxTree/codebase/imgs/plus.gif | Bin 0 -> 89 bytes .../dhtmlxTree/codebase/imgs/plus1.gif | Bin 0 -> 89 bytes .../dhtmlxTree/codebase/imgs/plus2.gif | Bin 0 -> 95 bytes .../dhtmlxTree/codebase/imgs/plus2_rtl.gif | Bin 0 -> 88 bytes .../dhtmlxTree/codebase/imgs/plus3.gif | Bin 0 -> 96 bytes .../dhtmlxTree/codebase/imgs/plus3_rtl.gif | Bin 0 -> 89 bytes .../dhtmlxTree/codebase/imgs/plus4.gif | Bin 0 -> 94 bytes .../dhtmlxTree/codebase/imgs/plus4_rtl.gif | Bin 0 -> 89 bytes .../dhtmlxTree/codebase/imgs/plus5.gif | Bin 0 -> 92 bytes .../dhtmlxTree/codebase/imgs/plus5_rtl.gif | Bin 0 -> 87 bytes .../dhtmlxTree/codebase/imgs/plus_ar.gif | Bin 0 -> 70 bytes .../dhtmlxTree/codebase/imgs/radio_off.gif | Bin 0 -> 241 bytes .../dhtmlxTree/codebase/imgs/radio_on.gif | Bin 0 -> 361 bytes .../codebase/imgs/sky_blue_sel_tree.png | Bin 0 -> 114 bytes phpgwapi/js/dhtmlxtree/dhtmlxTree/readme.txt | 3 + .../samples/01_appearance/09_tree_design.html | 193 + .../01_appearance/10_tree_iconset.html | 155 + .../01_appearance/11_tree_text_image.html | 184 + .../samples/01_appearance/index.html | 45 + .../02_checkboxes/05_tree_checkboxes.html | 159 + .../samples/02_checkboxes/index.html | 45 + .../samples/05_drag_n_drop/12_tree_drag.html | 139 + .../inc/pro_drag_frame2_f1.html | 38 + .../inc/pro_drag_frame2_f2.html | 78 + .../inc/pro_drag_frame2_f3.html | 16 + .../05_drag_n_drop/inc/pro_drag_frame_f1.html | 34 + .../05_drag_n_drop/inc/pro_drag_frame_f2.html | 27 + .../05_drag_n_drop/inc/pro_drag_frame_f3.html | 19 + .../samples/05_drag_n_drop/index.html | 45 + .../samples/07_events/03_tree_events.html | 198 + .../dhtmlxTree/samples/07_events/index.html | 45 + .../02_tree_init_from_html.html | 237 + .../03_tree_init_xml.html | 107 + .../04_tree_init_o_api.html | 87 + .../index.html | 45 + .../13_tree_dyn_loading.html | 88 + .../12_loading_processing_data/index.html | 45 + .../php/tree_perf_xml.php | 15 + .../12_loading_processing_data/php/xml.php | 13 + .../05_tree_add_delete.html | 170 + .../06_tree_open_close.html | 135 + .../samples/13_nodes_manipulation/index.html | 45 + .../dhtmlxTree/samples/common/_context.xml | 10 + .../dhtmlxTree/samples/common/big_data.json | 12102 ++++++++++++++++ .../dhtmlxTree/samples/common/big_xml.xml | 1 + .../dhtmlxTree/samples/common/config.php | 13 + .../dhtmlxTree/samples/common/css/style.css | 484 + .../dhtmlxTree/samples/common/data.csv | 5 + .../dhtmlxTree/samples/common/data.js | 4 + .../dhtmlxTree/samples/common/data.json | 1 + .../dhtmlxTree/samples/common/grid.xml | 113 + .../samples/common/icons/accordion.gif | Bin 0 -> 394 bytes .../dhtmlxTree/samples/common/icons/ajax.gif | Bin 0 -> 371 bytes .../dhtmlxTree/samples/common/icons/arrow.gif | Bin 0 -> 185 bytes .../samples/common/icons/bullet.gif | Bin 0 -> 51 bytes .../samples/common/icons/calendar.gif | Bin 0 -> 207 bytes .../dhtmlxTree/samples/common/icons/chart.gif | Bin 0 -> 1671 bytes .../dhtmlxTree/samples/common/icons/chm.gif | Bin 0 -> 671 bytes .../samples/common/icons/colorpicker.gif | Bin 0 -> 352 bytes .../dhtmlxTree/samples/common/icons/combo.gif | Bin 0 -> 186 bytes .../samples/common/icons/connector.gif | Bin 0 -> 635 bytes .../samples/common/icons/dataprocessor.gif | Bin 0 -> 173 bytes .../samples/common/icons/dataview.gif | Bin 0 -> 222 bytes .../samples/common/icons/editor.gif | Bin 0 -> 280 bytes .../dhtmlxTree/samples/common/icons/file.gif | Bin 0 -> 622 bytes .../samples/common/icons/file_link.gif | Bin 0 -> 1109 bytes .../samples/common/icons/folders.gif | Bin 0 -> 637 bytes .../dhtmlxTree/samples/common/icons/form.gif | Bin 0 -> 153 bytes .../dhtmlxTree/samples/common/icons/gantt.gif | Bin 0 -> 1010 bytes .../dhtmlxTree/samples/common/icons/grid.gif | Bin 0 -> 191 bytes .../samples/common/icons/layout.gif | Bin 0 -> 635 bytes .../dhtmlxTree/samples/common/icons/menu.gif | Bin 0 -> 270 bytes .../dhtmlxTree/samples/common/icons/none.gif | Bin 0 -> 45 bytes .../dhtmlxTree/samples/common/icons/old.gif | Bin 0 -> 388 bytes .../dhtmlxTree/samples/common/icons/pdf.gif | Bin 0 -> 646 bytes .../samples/common/icons/scheduler.gif | Bin 0 -> 432 bytes .../samples/common/icons/slider.gif | Bin 0 -> 363 bytes .../samples/common/icons/source.gif | Bin 0 -> 333 bytes .../samples/common/icons/tabbar.gif | Bin 0 -> 258 bytes .../samples/common/icons/toolbar.gif | Bin 0 -> 243 bytes .../dhtmlxTree/samples/common/icons/tree.gif | Bin 0 -> 261 bytes .../samples/common/icons/treegrid.gif | Bin 0 -> 322 bytes .../dhtmlxTree/samples/common/icons/vault.gif | Bin 0 -> 262 bytes .../samples/common/icons/windows.gif | Bin 0 -> 267 bytes .../samples/common/images/blank.gif | Bin 0 -> 56 bytes .../dhtmlxTree/samples/common/images/blue.gif | Bin 0 -> 75 bytes .../dhtmlxTree/samples/common/images/book.gif | Bin 0 -> 184 bytes .../samples/common/images/books_close.gif | Bin 0 -> 189 bytes .../samples/common/images/books_open.gif | Bin 0 -> 187 bytes .../samples/common/images/close2.gif | Bin 0 -> 181 bytes .../samples/common/images/folderClosed.gif | Bin 0 -> 135 bytes .../samples/common/images/folderOpen.gif | Bin 0 -> 139 bytes .../samples/common/images/green.gif | Bin 0 -> 75 bytes .../samples/common/images/iconCheckAll.gif | Bin 0 -> 123 bytes .../samples/common/images/iconCheckDis.gif | Bin 0 -> 126 bytes .../samples/common/images/iconCheckGray.gif | Bin 0 -> 126 bytes .../samples/common/images/iconUncheckAll.gif | Bin 0 -> 111 bytes .../samples/common/images/iconUncheckDis.gif | Bin 0 -> 117 bytes .../samples/common/images/item2c.gif | Bin 0 -> 267 bytes .../samples/common/images/item2o.gif | Bin 0 -> 263 bytes .../dhtmlxTree/samples/common/images/leaf.gif | Bin 0 -> 123 bytes .../samples/common/images/line1.gif | Bin 0 -> 71 bytes .../samples/common/images/line1_rtl.gif | Bin 0 -> 64 bytes .../samples/common/images/line2.gif | Bin 0 -> 70 bytes .../samples/common/images/line2_rtl.gif | Bin 0 -> 64 bytes .../samples/common/images/line3.gif | Bin 0 -> 73 bytes .../samples/common/images/line3_rtl.gif | Bin 0 -> 67 bytes .../samples/common/images/line4.gif | Bin 0 -> 69 bytes .../samples/common/images/line4_rtl.gif | Bin 0 -> 64 bytes .../samples/common/images/minus.gif | Bin 0 -> 85 bytes .../samples/common/images/minus2.gif | Bin 0 -> 92 bytes .../samples/common/images/minus2_rtl.gif | Bin 0 -> 84 bytes .../samples/common/images/minus3.gif | Bin 0 -> 93 bytes .../samples/common/images/minus3_rtl.gif | Bin 0 -> 85 bytes .../samples/common/images/minus4.gif | Bin 0 -> 90 bytes .../samples/common/images/minus4_rtl.gif | Bin 0 -> 85 bytes .../samples/common/images/minus5.gif | Bin 0 -> 87 bytes .../samples/common/images/minus5_rtl.gif | Bin 0 -> 82 bytes .../samples/common/images/minus_ar.gif | Bin 0 -> 68 bytes .../samples/common/images/open2.gif | Bin 0 -> 207 bytes .../dhtmlxTree/samples/common/images/plus.gif | Bin 0 -> 89 bytes .../samples/common/images/plus2.gif | Bin 0 -> 95 bytes .../samples/common/images/plus2_rtl.gif | Bin 0 -> 88 bytes .../samples/common/images/plus3.gif | Bin 0 -> 96 bytes .../samples/common/images/plus3_rtl.gif | Bin 0 -> 89 bytes .../samples/common/images/plus4.gif | Bin 0 -> 94 bytes .../samples/common/images/plus4_rtl.gif | Bin 0 -> 89 bytes .../samples/common/images/plus5.gif | Bin 0 -> 92 bytes .../samples/common/images/plus5_rtl.gif | Bin 0 -> 87 bytes .../samples/common/images/plus_ar.gif | Bin 0 -> 70 bytes .../samples/common/images/radio_off.gif | Bin 0 -> 241 bytes .../samples/common/images/radio_on.gif | Bin 0 -> 361 bytes .../dhtmlxTree/samples/common/images/red.gif | Bin 0 -> 75 bytes .../samples/common/images/white.gif | Bin 0 -> 75 bytes .../samples/common/images/yellow.gif | Bin 0 -> 75 bytes .../samples/common/img/6_IE_inside2.png | Bin 0 -> 1543 bytes .../dhtmlxTree/samples/common/img/Thumbs.db | Bin 0 -> 71680 bytes .../dhtmlxTree/samples/common/img/arrow.gif | Bin 0 -> 59 bytes .../samples/common/img/bookmark.gif | Bin 0 -> 1388 bytes .../samples/common/img/border-dotted-ccc.gif | Bin 0 -> 44 bytes .../samples/common/img/border-dotted.gif | Bin 0 -> 44 bytes .../dhtmlxTree/samples/common/img/bullet.gif | Bin 0 -> 51 bytes .../samples/common/img/doc-button.png | Bin 0 -> 607 bytes .../samples/common/img/doc-button_inact.png | Bin 0 -> 916 bytes .../samples/common/img/footer-bg.gif | Bin 0 -> 43 bytes .../samples/common/img/footer-logo.gif | Bin 0 -> 501 bytes .../samples/common/img/grid-placeholder.gif | Bin 0 -> 15903 bytes .../dhtmlxTree/samples/common/img/head_bg.png | Bin 0 -> 250 bytes .../dhtmlxTree/samples/common/img/logo.png | Bin 0 -> 3549 bytes .../samples/common/img/logo_accordion.gif | Bin 0 -> 2621 bytes .../samples/common/img/logo_ajax.gif | Bin 0 -> 2672 bytes .../samples/common/img/logo_calendar.gif | Bin 0 -> 1122 bytes .../samples/common/img/logo_chart.gif | Bin 0 -> 2292 bytes .../samples/common/img/logo_colorpicker.gif | Bin 0 -> 1300 bytes .../samples/common/img/logo_combo.gif | Bin 0 -> 2031 bytes .../samples/common/img/logo_connector.gif | Bin 0 -> 3175 bytes .../samples/common/img/logo_dataview.gif | Bin 0 -> 4334 bytes .../samples/common/img/logo_editor.gif | Bin 0 -> 1766 bytes .../samples/common/img/logo_folders.gif | Bin 0 -> 3009 bytes .../samples/common/img/logo_form.gif | Bin 0 -> 1412 bytes .../samples/common/img/logo_gantt.gif | Bin 0 -> 2025 bytes .../samples/common/img/logo_grid.gif | Bin 0 -> 2038 bytes .../samples/common/img/logo_layout.gif | Bin 0 -> 2834 bytes .../samples/common/img/logo_menu.gif | Bin 0 -> 2120 bytes .../samples/common/img/logo_scheduler.gif | Bin 0 -> 2359 bytes .../samples/common/img/logo_slider.gif | Bin 0 -> 2698 bytes .../samples/common/img/logo_tabbar.gif | Bin 0 -> 1513 bytes .../samples/common/img/logo_toolbar.gif | Bin 0 -> 1954 bytes .../samples/common/img/logo_tree.gif | Bin 0 -> 1495 bytes .../samples/common/img/logo_treegrid.gif | Bin 0 -> 1600 bytes .../samples/common/img/logo_vault.gif | Bin 0 -> 1801 bytes .../samples/common/img/logo_windows.gif | Bin 0 -> 1190 bytes .../samples/common/img/samples-but.png | Bin 0 -> 525 bytes .../samples/common/img/samples-but_inact.png | Bin 0 -> 796 bytes .../samples/common/img/search-button.png | Bin 0 -> 730 bytes .../samples/common/img/search-field.png | Bin 0 -> 338 bytes .../samples/common/img/source-bg.gif | Bin 0 -> 43 bytes .../dhtmlxTree/samples/common/img/source.gif | Bin 0 -> 270 bytes .../samples/common/img/toc-arrow.gif | Bin 0 -> 70 bytes .../samples/common/img/toolbar5.944_left2.png | Bin 0 -> 3099 bytes .../dhtmlxTree/samples/common/tree.xml | 61 + .../dhtmlxTree/samples/common/tree3.xml | 64 + .../tree3_14_selection_sorting_navigation.xml | 64 + .../dhtmlxTree/samples/common/tree4.xml | 61 + .../samples/common/tree_02_checkboxes.xml | 61 + .../samples/common/tree_05_drag_n_drop.xml | 61 + .../dhtmlxTree/samples/common/tree_a.xml | 40 + .../dhtmlxTree/samples/common/tree_b.xml | 42 + .../dhtmlxTree/samples/common/tree_bg.xml | 2 + .../dhtmlxTree/samples/common/tree_cl.xml | 29 + .../dhtmlxTree/samples/common/tree_lc.xml | 68 + .../dhtmlxTree/samples/common/tree_lg.xml | 33 + .../dhtmlxTree/samples/common/tree_mixed.xml | 66 + .../dhtmlxTree/samples/common/tree_ml.xml | 64 + .../dhtmlxTree/samples/common/tree_ol.xml | 27 + .../dhtmlxTree/samples/common/tree_p.xml | 70 + .../dhtmlxTree/samples/common/tree_radio.xml | 21 + .../dhtmlxTree/samples/common/tree_st.xml | 64 + .../dhtmlxTree/samples/common/tree_to.xml | 62 + .../dhtmlxTree/samples/common/tree_ud.xml | 71 + .../dhtmlxtree/dhtmlxTree/samples/index.html | 42 + .../dhtmlxTree/sources/dhtmlxcommon.js | 928 ++ .../dhtmlxTree/sources/dhtmlxtree.js | 3808 +++++ .../sources/ext/dhtmlxtree_dragin.js | 75 + .../dhtmlxTree/sources/ext/dhtmlxtree_ed.js | 196 + .../dhtmlxTree/sources/ext/dhtmlxtree_er.js | 79 + .../dhtmlxTree/sources/ext/dhtmlxtree_json.js | 226 + .../sources/ext/dhtmlxtree_start.js | 104 + .../docsExplorer/codebase/css/style.css | 484 + .../docsExplorer/codebase/default.css | 3 + .../docsExplorer/codebase/icons/accordion.gif | Bin 0 -> 394 bytes .../docsExplorer/codebase/icons/ajax.gif | Bin 0 -> 371 bytes .../docsExplorer/codebase/icons/arrow.gif | Bin 0 -> 185 bytes .../docsExplorer/codebase/icons/bullet.gif | Bin 0 -> 51 bytes .../docsExplorer/codebase/icons/calendar.gif | Bin 0 -> 207 bytes .../docsExplorer/codebase/icons/chart.gif | Bin 0 -> 1671 bytes .../docsExplorer/codebase/icons/chm.gif | Bin 0 -> 671 bytes .../codebase/icons/colorpicker.gif | Bin 0 -> 352 bytes .../docsExplorer/codebase/icons/combo.gif | Bin 0 -> 186 bytes .../docsExplorer/codebase/icons/connector.gif | Bin 0 -> 635 bytes .../codebase/icons/dataprocessor.gif | Bin 0 -> 173 bytes .../docsExplorer/codebase/icons/dataview.gif | Bin 0 -> 222 bytes .../docsExplorer/codebase/icons/editor.gif | Bin 0 -> 280 bytes .../docsExplorer/codebase/icons/file.gif | Bin 0 -> 622 bytes .../docsExplorer/codebase/icons/file_link.gif | Bin 0 -> 1109 bytes .../docsExplorer/codebase/icons/folders.gif | Bin 0 -> 637 bytes .../docsExplorer/codebase/icons/form.gif | Bin 0 -> 153 bytes .../docsExplorer/codebase/icons/gantt.gif | Bin 0 -> 1010 bytes .../docsExplorer/codebase/icons/grid.gif | Bin 0 -> 191 bytes .../docsExplorer/codebase/icons/layout.gif | Bin 0 -> 635 bytes .../docsExplorer/codebase/icons/menu.gif | Bin 0 -> 270 bytes .../docsExplorer/codebase/icons/none.gif | Bin 0 -> 45 bytes .../docsExplorer/codebase/icons/old.gif | Bin 0 -> 388 bytes .../docsExplorer/codebase/icons/pdf.gif | Bin 0 -> 646 bytes .../docsExplorer/codebase/icons/scheduler.gif | Bin 0 -> 432 bytes .../docsExplorer/codebase/icons/slider.gif | Bin 0 -> 363 bytes .../docsExplorer/codebase/icons/source.gif | Bin 0 -> 333 bytes .../docsExplorer/codebase/icons/tabbar.gif | Bin 0 -> 258 bytes .../docsExplorer/codebase/icons/toolbar.gif | Bin 0 -> 243 bytes .../docsExplorer/codebase/icons/tree.gif | Bin 0 -> 261 bytes .../docsExplorer/codebase/icons/treegrid.gif | Bin 0 -> 322 bytes .../docsExplorer/codebase/icons/vault.gif | Bin 0 -> 262 bytes .../docsExplorer/codebase/icons/windows.gif | Bin 0 -> 267 bytes .../codebase/images/fileicons/bz2.png | Bin 0 -> 720 bytes .../codebase/images/fileicons/conf.png | Bin 0 -> 717 bytes .../codebase/images/fileicons/deb.png | Bin 0 -> 716 bytes .../codebase/images/fileicons/doc.png | Bin 0 -> 659 bytes .../codebase/images/fileicons/file.png | Bin 0 -> 720 bytes .../codebase/images/fileicons/gif.png | Bin 0 -> 1001 bytes .../codebase/images/fileicons/gz.png | Bin 0 -> 716 bytes .../codebase/images/fileicons/htm.png | Bin 0 -> 748 bytes .../codebase/images/fileicons/html.png | Bin 0 -> 748 bytes .../codebase/images/fileicons/jpeg.png | Bin 0 -> 1001 bytes .../codebase/images/fileicons/jpg.png | Bin 0 -> 1001 bytes .../codebase/images/fileicons/odc.png | Bin 0 -> 749 bytes .../codebase/images/fileicons/odf.png | Bin 0 -> 807 bytes .../codebase/images/fileicons/odg.png | Bin 0 -> 788 bytes .../codebase/images/fileicons/odi.png | Bin 0 -> 788 bytes .../codebase/images/fileicons/odp.png | Bin 0 -> 744 bytes .../codebase/images/fileicons/ods.png | Bin 0 -> 749 bytes .../codebase/images/fileicons/odt.png | Bin 0 -> 577 bytes .../codebase/images/fileicons/pdf.png | Bin 0 -> 663 bytes .../codebase/images/fileicons/png.png | Bin 0 -> 1001 bytes .../codebase/images/fileicons/ppt.png | Bin 0 -> 762 bytes .../codebase/images/fileicons/ps.png | Bin 0 -> 534 bytes .../codebase/images/fileicons/rar.png | Bin 0 -> 631 bytes .../codebase/images/fileicons/rpm.png | Bin 0 -> 638 bytes .../codebase/images/fileicons/rtf.png | Bin 0 -> 474 bytes .../codebase/images/fileicons/swf.png | Bin 0 -> 843 bytes .../codebase/images/fileicons/sxc.png | Bin 0 -> 749 bytes .../codebase/images/fileicons/sxd.png | Bin 0 -> 788 bytes .../codebase/images/fileicons/sxi.png | Bin 0 -> 744 bytes .../codebase/images/fileicons/sxw.png | Bin 0 -> 577 bytes .../codebase/images/fileicons/tar.png | Bin 0 -> 747 bytes .../codebase/images/fileicons/tgz.png | Bin 0 -> 716 bytes .../codebase/images/fileicons/txt.png | Bin 0 -> 542 bytes .../codebase/images/fileicons/xls.png | Bin 0 -> 731 bytes .../codebase/images/fileicons/xml.png | Bin 0 -> 475 bytes .../codebase/images/fileicons/zip.png | Bin 0 -> 874 bytes .../codebase/images/smileys/delete.gif | Bin 0 -> 1421 bytes .../codebase/images/smileys/fixme.gif | Bin 0 -> 1435 bytes .../codebase/img/6_IE_inside2.png | Bin 0 -> 1543 bytes .../docsExplorer/codebase/img/Thumbs.db | Bin 0 -> 71680 bytes .../docsExplorer/codebase/img/arrow.gif | Bin 0 -> 59 bytes .../docsExplorer/codebase/img/bookmark.gif | Bin 0 -> 1388 bytes .../codebase/img/border-dotted-ccc.gif | Bin 0 -> 44 bytes .../codebase/img/border-dotted.gif | Bin 0 -> 44 bytes .../docsExplorer/codebase/img/bullet.gif | Bin 0 -> 51 bytes .../docsExplorer/codebase/img/doc-button.png | Bin 0 -> 607 bytes .../codebase/img/doc-button_inact.png | Bin 0 -> 916 bytes .../docsExplorer/codebase/img/footer-bg.gif | Bin 0 -> 43 bytes .../docsExplorer/codebase/img/footer-logo.gif | Bin 0 -> 501 bytes .../codebase/img/grid-placeholder.gif | Bin 0 -> 15903 bytes .../docsExplorer/codebase/img/head_bg.png | Bin 0 -> 250 bytes .../docsExplorer/codebase/img/logo.png | Bin 0 -> 3549 bytes .../codebase/img/logo_accordion.gif | Bin 0 -> 2621 bytes .../docsExplorer/codebase/img/logo_ajax.gif | Bin 0 -> 2672 bytes .../codebase/img/logo_calendar.gif | Bin 0 -> 1122 bytes .../docsExplorer/codebase/img/logo_chart.gif | Bin 0 -> 2292 bytes .../codebase/img/logo_colorpicker.gif | Bin 0 -> 1300 bytes .../docsExplorer/codebase/img/logo_combo.gif | Bin 0 -> 2031 bytes .../codebase/img/logo_connector.gif | Bin 0 -> 3175 bytes .../codebase/img/logo_dataview.gif | Bin 0 -> 4334 bytes .../docsExplorer/codebase/img/logo_editor.gif | Bin 0 -> 1766 bytes .../codebase/img/logo_folders.gif | Bin 0 -> 3009 bytes .../docsExplorer/codebase/img/logo_form.gif | Bin 0 -> 1412 bytes .../docsExplorer/codebase/img/logo_gantt.gif | Bin 0 -> 2025 bytes .../docsExplorer/codebase/img/logo_grid.gif | Bin 0 -> 2038 bytes .../docsExplorer/codebase/img/logo_layout.gif | Bin 0 -> 2834 bytes .../docsExplorer/codebase/img/logo_menu.gif | Bin 0 -> 2120 bytes .../codebase/img/logo_scheduler.gif | Bin 0 -> 2359 bytes .../docsExplorer/codebase/img/logo_slider.gif | Bin 0 -> 2698 bytes .../docsExplorer/codebase/img/logo_tabbar.gif | Bin 0 -> 1513 bytes .../codebase/img/logo_toolbar.gif | Bin 0 -> 1954 bytes .../docsExplorer/codebase/img/logo_tree.gif | Bin 0 -> 1495 bytes .../codebase/img/logo_treegrid.gif | Bin 0 -> 1600 bytes .../docsExplorer/codebase/img/logo_vault.gif | Bin 0 -> 1801 bytes .../codebase/img/logo_windows.gif | Bin 0 -> 1190 bytes .../docsExplorer/codebase/img/samples-but.png | Bin 0 -> 525 bytes .../codebase/img/samples-but_inact.png | Bin 0 -> 796 bytes .../codebase/img/search-button.png | Bin 0 -> 730 bytes .../codebase/img/search-field.png | Bin 0 -> 338 bytes .../docsExplorer/codebase/img/source-bg.gif | Bin 0 -> 43 bytes .../docsExplorer/codebase/img/source.gif | Bin 0 -> 270 bytes .../docsExplorer/codebase/img/toc-arrow.gif | Bin 0 -> 70 bytes .../codebase/img/toolbar5.944_left2.png | Bin 0 -> 3099 bytes .../codebase/tpl/dhtmlx/images/arrow.gif | Bin 0 -> 59 bytes .../codebase/tpl/dhtmlx/images/bookmark.gif | Bin 0 -> 1388 bytes .../codebase/tpl/dhtmlx/images/bullet.gif | Bin 0 -> 50 bytes .../tpl/dhtmlx/images/buttonshadow.png | Bin 0 -> 257 bytes .../codebase/tpl/dhtmlx/images/closed.gif | Bin 0 -> 54 bytes .../codebase/tpl/dhtmlx/images/doc-button.png | Bin 0 -> 607 bytes .../codebase/tpl/dhtmlx/images/favicon.ico | Bin 0 -> 1150 bytes .../codebase/tpl/dhtmlx/images/file.gif | Bin 0 -> 613 bytes .../codebase/tpl/dhtmlx/images/footer-bg.gif | Bin 0 -> 43 bytes .../tpl/dhtmlx/images/footer-logo.gif | Bin 0 -> 501 bytes .../codebase/tpl/dhtmlx/images/head_bg.png | Bin 0 -> 250 bytes .../codebase/tpl/dhtmlx/images/link_icon.gif | Bin 0 -> 942 bytes .../codebase/tpl/dhtmlx/images/logo.png | Bin 0 -> 3549 bytes .../tpl/dhtmlx/images/logo_accordion.gif | Bin 0 -> 2621 bytes .../codebase/tpl/dhtmlx/images/logo_ajax.gif | Bin 0 -> 2672 bytes .../tpl/dhtmlx/images/logo_calendar.gif | Bin 0 -> 1122 bytes .../tpl/dhtmlx/images/logo_colorpicker.gif | Bin 0 -> 1300 bytes .../codebase/tpl/dhtmlx/images/logo_combo.gif | Bin 0 -> 2031 bytes .../tpl/dhtmlx/images/logo_connector.gif | Bin 0 -> 3175 bytes .../tpl/dhtmlx/images/logo_editor.gif | Bin 0 -> 1766 bytes .../tpl/dhtmlx/images/logo_folders.gif | Bin 0 -> 3009 bytes .../codebase/tpl/dhtmlx/images/logo_grid.gif | Bin 0 -> 2038 bytes .../tpl/dhtmlx/images/logo_layout.gif | Bin 0 -> 2834 bytes .../codebase/tpl/dhtmlx/images/logo_menu.gif | Bin 0 -> 2120 bytes .../tpl/dhtmlx/images/logo_scheduler.gif | Bin 0 -> 2359 bytes .../tpl/dhtmlx/images/logo_slider.gif | Bin 0 -> 2698 bytes .../tpl/dhtmlx/images/logo_tabbar.gif | Bin 0 -> 1513 bytes .../tpl/dhtmlx/images/logo_toolbar.gif | Bin 0 -> 1954 bytes .../codebase/tpl/dhtmlx/images/logo_tree.gif | Bin 0 -> 1495 bytes .../tpl/dhtmlx/images/logo_treegrid.gif | Bin 0 -> 1600 bytes .../codebase/tpl/dhtmlx/images/logo_vault.gif | Bin 0 -> 1801 bytes .../tpl/dhtmlx/images/logo_windows.gif | Bin 0 -> 1190 bytes .../codebase/tpl/dhtmlx/images/mail_icon.gif | Bin 0 -> 918 bytes .../codebase/tpl/dhtmlx/images/open.gif | Bin 0 -> 54 bytes .../tpl/dhtmlx/images/samples-button.png | Bin 0 -> 796 bytes .../tpl/dhtmlx/images/search-button.png | Bin 0 -> 730 bytes .../tpl/dhtmlx/images/search-field.png | Bin 0 -> 338 bytes .../tpl/dhtmlx/images/search-hits.png | Bin 0 -> 151 bytes .../dhtmlx/images/search-quick-rezult-bg.gif | Bin 0 -> 43 bytes .../tpl/dhtmlx/images/search-rez-bg.png | Bin 0 -> 109 bytes .../tpl/dhtmlx/images/search-rezult-dark.gif | Bin 0 -> 204 bytes .../tpl/dhtmlx/images/search-rezult.gif | Bin 0 -> 309 bytes .../codebase/tpl/dhtmlx/images/toc-arrow.gif | Bin 0 -> 70 bytes .../codebase/tpl/dhtmlx/images/tocdot2.gif | Bin 0 -> 810 bytes .../docsExplorer/dhtmlxconnector/_media.txt | 7 + .../dhtmlxconnector/_structure.xml | 1 + .../dhtmlxconnector___base_concept.html | 162 + ...nector___client_side_other_components.html | 224 + .../dhtmlxconnector___combodataitem.html | 131 + .../dhtmlxconnector___complex_updates.html | 177 + .../dhtmlxconnector___connector_object.html | 224 + ...tmlxconnector___connectors_and_oracle.html | 146 + .../dhtmlxconnector___custom_queries.html | 220 + .../dhtmlxconnector___data_export.html | 188 + .../dhtmlxconnector___dataaction_object.html | 335 + .../dhtmlxconnector___dataitem_object.html | 199 + ...efining_grid_structure_on_server_side.html | 293 + ...tmlxconnector___defining_header_server.png | Bin 0 -> 16616 bytes .../dhtmlxconnector___dynamical_loading.html | 179 + ...onnector___error_handling_and_logging.html | 177 + .../dhtmlxconnector___event_afterdelete.html | 120 + .../dhtmlxconnector___event_afterinsert.html | 121 + ...tmlxconnector___event_afterprocessing.html | 129 + .../dhtmlxconnector___event_afterupdate.html | 120 + .../dhtmlxconnector___event_beforedelete.html | 120 + .../dhtmlxconnector___event_beforefilter.html | 143 + .../dhtmlxconnector___event_beforeinsert.html | 120 + .../dhtmlxconnector___event_beforeoutput.html | 158 + ...mlxconnector___event_beforeprocessing.html | 120 + .../dhtmlxconnector___event_beforerender.html | 127 + .../dhtmlxconnector___event_beforesort.html | 140 + .../dhtmlxconnector___event_beforeupdate.html | 145 + .../dhtmlxconnector___events_system.html | 157 + .../dhtmlxconnector___excel_file.html | 180 + ...or___extending_existing_functionality.html | 123 + .../dhtmlxconnector___file_system.html | 219 + .../dhtmlxconnector___file_system.png | Bin 0 -> 31472 bytes .../dhtmlxconnector___filtering.html | 219 + ...mlxconnector___filterinterface_object.html | 185 + ...rmatting_changing_data_before_loading.html | 248 + ...riddataitem_treegriddataitem_specific.html | 245 + .../dhtmlxconnector___group_connector.html | 141 + ...r___initialization_of_dhtmlxconnector.html | 201 + .../dhtmlxconnector___keygrid_connector.html | 133 + ...htmlxconnector___loading_editing_data.html | 271 + ...nector___migration_from_older_version.html | 157 + .../dhtmlxconnector___multi-table_tree.html | 165 + .../dhtmlxconnector___multitable_tree.png | Bin 0 -> 8802 bytes .../dhtmlxconnector___new_in_version_1.0.html | 133 + ...connector___order_of_events_execution.html | 163 + .../dhtmlxconnector___porting_connectors.html | 333 + .../dhtmlxconnector___protocol_details.html | 268 + .../dhtmlxconnector___security.html | 165 + ...onnector___select-box_columns_in_grid.html | 158 + ...lxconnector___select-box_in_scheduler.html | 143 + .../dhtmlxconnector___server_side_others.html | 266 + .../dhtmlxconnector___sorting.html | 169 + ...htmlxconnector___sortinterface_object.html | 182 + ...nnector___toc_dhtmlxconnector_event_o.html | 148 + ...nnector___toc_what_is_dhtmlxconnector.html | 211 + .../dhtmlxconnector___tree_group.png | Bin 0 -> 89090 bytes .../dhtmlxconnector___treedataitem.html | 206 + .../dhtmlxconnector___treegrid_multitable.png | Bin 0 -> 15712 bytes .../dhtmlxconnector___treegriddataitem.html | 150 + .../dhtmlxconnector___url_manipulation.html | 174 + .../dhtmlxconnector___validating_data.html | 128 + ...nector___xml_format_used_by_connector.html | 260 + .../dhtmlxconnector/icons___connector.gif | Bin 0 -> 635 bytes .../dhtmlxconnector/icons___file.gif | Bin 0 -> 622 bytes .../docsExplorer/dhtmlxconnector/index.html | 176 + .../dhtmlxdataprocessor/_media.txt | 4 + .../dhtmlxdataprocessor/_structure.xml | 1 + .../dhtmlxdataprocessor/common___any_ed.gif | Bin 0 -> 143 bytes ...rocessor___adjusting_server_side_code.html | 192 + ...hod_dataprocessor_afterupdatecallback.html | 139 + ..._api_method_dataprocessor_attachevent.html | 142 + ...ethod_dataprocessor_checkbeforeupdate.html | 133 + ...method_dataprocessor_clearverificator.html | 133 + ..._api_method_dataprocessor_detachevent.html | 129 + ..._method_dataprocessor_enabledatanames.html | 133 + ...d_dataprocessor_enablepartialdatasend.html | 133 + ...ethod_dataprocessor_enableutfencoding.html | 133 + ...api_method_dataprocessor_getsyncstate.html | 131 + ...sor___api_method_dataprocessor_ignore.html | 136 + ...essor___api_method_dataprocessor_init.html | 133 + ...r___api_method_dataprocessor_senddata.html | 133 + ...i_method_dataprocessor_setdatacolumns.html | 133 + ...ataprocessor_setonbeforeupdatehandler.html | 133 + ...thod_dataprocessor_settransactionmode.html | 135 + ...__api_method_dataprocessor_setupdated.html | 137 + ...pi_method_dataprocessor_setupdatemode.html | 133 + ...i_method_dataprocessor_setverificator.html | 146 + .../dhtmlxdataprocessor___api_toc_alpha.html | 163 + ...mlxdataprocessor___api_toc_categories.html | 121 + ...rocessor___client_side_initialization.html | 142 + .../dhtmlxdataprocessor___common_errors.html | 142 + .../dhtmlxdataprocessor___common_tasks.html | 226 + ...cessor___custom_server_side_responses.html | 152 + ...processor___customizing_color_marking.html | 141 + ...mlxdataprocessor___data_sending_modes.html | 201 + .../dhtmlxdataprocessor___debug_mode.html | 125 + ...lxdataprocessor___event_onafterupdate.html | 138 + ...processor___event_onafterupdatefinish.html | 123 + ...processor___event_onbeforedatasending.html | 132 + ...xdataprocessor___event_onbeforeupdate.html | 135 + ...htmlxdataprocessor___event_onfullsync.html | 123 + ...dhtmlxdataprocessor___event_onrowmark.html | 138 + ...processor___event_onvalidatationerror.html | 134 + .../dhtmlxdataprocessor___events.html | 138 + .../dhtmlxdataprocessor___validation.html | 163 + .../dhtmlxgrid___dataprocessor.png | Bin 0 -> 9104 bytes .../icons___dataprocessor.gif | Bin 0 -> 173 bytes .../dhtmlxdataprocessor/icons___file.gif | Bin 0 -> 622 bytes .../dhtmlxdataprocessor/index.html | 181 + .../docsExplorer/dhtmlxtree/_media.txt | 12 + .../docsExplorer/dhtmlxtree/_structure.xml | 1 + .../dhtmlxtree/common___any_ed.gif | Bin 0 -> 143 bytes .../dhtmlxtree/common___pro_ed.gif | Bin 0 -> 145 bytes .../dhtmlxtree___api_constructor.html | 165 + .../dhtmlxtree___api_constructor_object.html | 239 + ...pi_method_dhtmlxtreeobject_assignkeys.html | 133 + ...i_method_dhtmlxtreeobject_attachevent.html | 143 + ..._method_dhtmlxtreeobject_changeitemid.html | 135 + ..._api_method_dhtmlxtreeobject_clearcut.html | 126 + ...ethod_dhtmlxtreeobject_clearselection.html | 133 + ...method_dhtmlxtreeobject_closeallitems.html | 133 + ...api_method_dhtmlxtreeobject_closeitem.html | 133 + ...ethod_dhtmlxtreeobject_defineitemform.html | 133 + ...hod_dhtmlxtreeobject_deletechilditems.html | 133 + ...pi_method_dhtmlxtreeobject_deleteitem.html | 135 + ...pi_method_dhtmlxtreeobject_destructor.html | 126 + ...i_method_dhtmlxtreeobject_detachevent.html | 133 + ...thod_dhtmlxtreeobject_disablecheckbox.html | 135 + ...e___api_method_dhtmlxtreeobject_docut.html | 126 + ...__api_method_dhtmlxtreeobject_dopaste.html | 133 + ..._api_method_dhtmlxtreeobject_edititem.html | 133 + ...d_dhtmlxtreeobject_enableactiveimages.html | 133 + ...lxtreeobject_enableautosavingselected.html | 133 + ...d_dhtmlxtreeobject_enableautotooltips.html | 133 + ...hod_dhtmlxtreeobject_enablecheckboxes.html | 135 + ...od_dhtmlxtreeobject_enablecontextmenu.html | 133 + ...lxtreeobject_enabledistributedparsing.html | 137 + ...od_dhtmlxtreeobject_enabledraganddrop.html | 135 + ...treeobject_enabledraganddropscrolling.html | 133 + ...d_dhtmlxtreeobject_enablehighlighting.html | 133 + ...hod_dhtmlxtreeobject_enableieimagefix.html | 133 + ...thod_dhtmlxtreeobject_enableimagedrag.html | 133 + ...hod_dhtmlxtreeobject_enableitemeditor.html | 133 + ...lxtreeobject_enablekeyboardnavigation.html | 133 + ...thod_dhtmlxtreeobject_enablekeysearch.html | 133 + ...od_dhtmlxtreeobject_enableloadingitem.html | 133 + ...thod_dhtmlxtreeobject_enablemercydrag.html | 133 + ...dhtmlxtreeobject_enablemultilineitems.html | 133 + ...dhtmlxtreeobject_enablemultiselection.html | 135 + ...d_dhtmlxtreeobject_enableradiobuttons.html | 135 + ...api_method_dhtmlxtreeobject_enablertl.html | 133 + ...htmlxtreeobject_enablesingleradiomode.html | 135 + ...htmlxtreeobject_enablesmartcheckboxes.html | 133 + ...dhtmlxtreeobject_enablesmartrendering.html | 126 + ...htmlxtreeobject_enablesmartxmlparsing.html | 133 + ...thod_dhtmlxtreeobject_enabletextsigns.html | 133 + ...treeobject_enablethreestatecheckboxes.html | 133 + ...hod_dhtmlxtreeobject_enabletreeimages.html | 133 + ...thod_dhtmlxtreeobject_enabletreelines.html | 133 + ..._api_method_dhtmlxtreeobject_finditem.html | 137 + ...od_dhtmlxtreeobject_finditemidbylabel.html | 137 + ...api_method_dhtmlxtreeobject_focusitem.html | 133 + ...method_dhtmlxtreeobject_getallchecked.html | 126 + ...htmlxtreeobject_getallcheckedbranches.html | 126 + ...thod_dhtmlxtreeobject_getallchildless.html | 126 + ..._dhtmlxtreeobject_getallitemswithkids.html | 126 + ...tmlxtreeobject_getallpartiallychecked.html | 126 + ...ethod_dhtmlxtreeobject_getallsubitems.html | 133 + ...thod_dhtmlxtreeobject_getallunchecked.html | 126 + ...htmlxtreeobject_getchilditemidbyindex.html | 135 + ...treeobject_getdistributedparsingstate.html | 131 + ..._method_dhtmlxtreeobject_getindexbyid.html | 133 + ..._method_dhtmlxtreeobject_getitemcolor.html | 133 + ...hod_dhtmlxtreeobject_getitemidbyindex.html | 135 + ..._method_dhtmlxtreeobject_getitemimage.html | 137 + ..._dhtmlxtreeobject_getitemparsingstate.html | 131 + ...i_method_dhtmlxtreeobject_getitemtext.html | 133 + ...ethod_dhtmlxtreeobject_getitemtooltip.html | 133 + ..._api_method_dhtmlxtreeobject_getlevel.html | 133 + ..._method_dhtmlxtreeobject_getopenstate.html | 133 + ...i_method_dhtmlxtreeobject_getparentid.html | 133 + ...od_dhtmlxtreeobject_getselecteditemid.html | 126 + ..._dhtmlxtreeobject_getselecteditemtext.html | 126 + ...i_method_dhtmlxtreeobject_getsubitems.html | 133 + ...i_method_dhtmlxtreeobject_getuserdata.html | 135 + ...i_method_dhtmlxtreeobject_getxmlstate.html | 126 + ...i_method_dhtmlxtreeobject_haschildren.html | 133 + ..._method_dhtmlxtreeobject_hideitemform.html | 133 + ...ethod_dhtmlxtreeobject_insertnewchild.html | 149 + ...method_dhtmlxtreeobject_insertnewnext.html | 149 + ...method_dhtmlxtreeobject_isitemchecked.html | 133 + ..._api_method_dhtmlxtreeobject_islocked.html | 136 + ...__api_method_dhtmlxtreeobject_loadcsv.html | 135 + ...method_dhtmlxtreeobject_loadcsvstring.html | 135 + ...i_method_dhtmlxtreeobject_loadjsarray.html | 135 + ...thod_dhtmlxtreeobject_loadjsarrayfile.html | 135 + ..._api_method_dhtmlxtreeobject_loadjson.html | 135 + ...ethod_dhtmlxtreeobject_loadjsonobject.html | 135 + ...ethod_dhtmlxtreeobject_loadopenstates.html | 133 + ...api_method_dhtmlxtreeobject_loadstate.html | 133 + ...__api_method_dhtmlxtreeobject_loadxml.html | 135 + ...method_dhtmlxtreeobject_loadxmlstring.html | 135 + ..._api_method_dhtmlxtreeobject_lockitem.html | 135 + ..._api_method_dhtmlxtreeobject_locktree.html | 133 + ...hod_dhtmlxtreeobject_makealldraggable.html | 133 + ...method_dhtmlxtreeobject_makedraggable.html | 135 + ..._api_method_dhtmlxtreeobject_moveitem.html | 139 + ..._method_dhtmlxtreeobject_openallitems.html | 133 + ..._dhtmlxtreeobject_openallitemsdynamic.html | 133 + ..._api_method_dhtmlxtreeobject_openitem.html | 133 + ...hod_dhtmlxtreeobject_openitemsdynamic.html | 137 + ...thod_dhtmlxtreeobject_openonitemadded.html | 133 + ...hod_dhtmlxtreeobject_preventiecaching.html | 133 + ...i_method_dhtmlxtreeobject_refreshitem.html | 133 + ..._method_dhtmlxtreeobject_refreshitems.html | 135 + ...od_dhtmlxtreeobject_registerxmlentity.html | 140 + ..._dhtmlxtreeobject_restoreselecteditem.html | 133 + ...ethod_dhtmlxtreeobject_saveopenstates.html | 135 + ...hod_dhtmlxtreeobject_saveselecteditem.html | 135 + ...api_method_dhtmlxtreeobject_savestate.html | 135 + ...pi_method_dhtmlxtreeobject_selectitem.html | 137 + ...method_dhtmlxtreeobject_serializetree.html | 126 + ..._dhtmlxtreeobject_serializetreetojson.html | 126 + ..._api_method_dhtmlxtreeobject_setcheck.html | 135 + ...hod_dhtmlxtreeobject_setchildcalchtml.html | 135 + ...hod_dhtmlxtreeobject_setchildcalcmode.html | 133 + ...htmlxtreeobject_setcustomsortfunction.html | 133 + ...i_method_dhtmlxtreeobject_setdatamode.html | 133 + ...thod_dhtmlxtreeobject_setdragbehavior.html | 135 + ...d_dhtmlxtreeobject_seteditstartaction.html | 135 + ...thod_dhtmlxtreeobject_setescapingmode.html | 133 + ...thod_dhtmlxtreeobject_setformappearon.html | 137 + ...d_dhtmlxtreeobject_setformdisappearon.html | 137 + ...i_method_dhtmlxtreeobject_seticonpath.html | 133 + ...i_method_dhtmlxtreeobject_seticonsize.html | 137 + ...ethod_dhtmlxtreeobject_setimagearrays.html | 143 + ..._method_dhtmlxtreeobject_setimagepath.html | 133 + ...hod_dhtmlxtreeobject_setitemcloseable.html | 135 + ..._method_dhtmlxtreeobject_setitemcolor.html | 137 + ...d_dhtmlxtreeobject_setitemcontextmenu.html | 135 + ..._method_dhtmlxtreeobject_setitemimage.html | 137 + ...method_dhtmlxtreeobject_setitemimage2.html | 139 + ..._method_dhtmlxtreeobject_setitemstyle.html | 135 + ...i_method_dhtmlxtreeobject_setitemtext.html | 137 + ...hod_dhtmlxtreeobject_setitemtopoffset.html | 135 + ...hod_dhtmlxtreeobject_setlistdelimeter.html | 133 + ...ethod_dhtmlxtreeobject_setlockedicons.html | 137 + ...dhtmlxtreeobject_setondblclickhandler.html | 133 + ...d_dhtmlxtreeobject_setonformdismissal.html | 133 + ...mlxtreeobject_setonforminitialisation.html | 133 + ...htmlxtreeobject_setserializationlevel.html | 141 + ..._method_dhtmlxtreeobject_setstdimages.html | 137 + ...method_dhtmlxtreeobject_setsubchecked.html | 135 + ...i_method_dhtmlxtreeobject_setuserdata.html | 137 + ...od_dhtmlxtreeobject_setxmlautoloading.html | 133 + ...treeobject_setxmlautoloadingbehaviour.html | 133 + ...hod_dhtmlxtreeobject_showitemcheckbox.html | 135 + ..._method_dhtmlxtreeobject_showitemform.html | 133 + ..._method_dhtmlxtreeobject_showitemsign.html | 135 + ...d_dhtmlxtreeobject_smartrefreshbranch.html | 135 + ...hod_dhtmlxtreeobject_smartrefreshitem.html | 135 + ..._api_method_dhtmlxtreeobject_sorttree.html | 137 + ..._api_method_dhtmlxtreeobject_stopedit.html | 126 + ...pi_method_dhtmlxtreeobject_updateitem.html | 143 + .../dhtmlxtree___api_toc_alpha.html | 721 + .../dhtmlxtree___api_toc_categories.html | 785 + .../dhtmlxtree___checkboxes_manipulation.html | 347 + ...tibility_with_other_dhtmlx_components.html | 234 + .../dhtmlxtree___dgr5rjkf_220gbgmh9gf_b.gif | Bin 0 -> 3073 bytes .../dhtmlxtree___dgr5rjkf_221cf28k8ff_b.gif | Bin 0 -> 3204 bytes .../dhtmlxtree___dgr5rjkf_222gz6tpsdc_b.gif | Bin 0 -> 4527 bytes .../dhtmlxtree___dgr5rjkf_223fnxr7chh_b.gif | Bin 0 -> 4159 bytes .../dhtmlxtree___dgr5rjkf_224ggpqf8gx_b.gif | Bin 0 -> 3596 bytes .../dhtmlxtree___dgr5rjkf_225fpw796gk_b.gif | Bin 0 -> 4481 bytes .../dhtmlxtree___dgr5rjkf_226c3td7kc7_b.gif | Bin 0 -> 4208 bytes .../dhtmlxtree___dgr5rjkf_227f8jk4hd8_b.gif | Bin 0 -> 4750 bytes .../dhtmlxtree___drag_and_drop_handling.html | 339 + .../dhtmlxtree___error_handling.html | 138 + .../dhtmlxtree___event_onbeforecheck.html | 139 + .../dhtmlxtree___event_onbeforedrag.html | 132 + .../dhtmlxtree___event_oncheck.html | 128 + .../dhtmlxtree___event_onclick.html | 141 + .../dhtmlxtree___event_ondblclick.html | 138 + .../dhtmlxtree/dhtmlxtree___event_ondrag.html | 145 + .../dhtmlxtree___event_ondragin.html | 143 + .../dhtmlxtree/dhtmlxtree___event_ondrop.html | 133 + .../dhtmlxtree/dhtmlxtree___event_onedit.html | 136 + .../dhtmlxtree___event_onmousein.html | 127 + .../dhtmlxtree___event_onmouseout.html | 127 + .../dhtmlxtree___event_onopendynamicend.html | 135 + .../dhtmlxtree___event_onopenend.html | 128 + .../dhtmlxtree___event_onopenstart.html | 133 + .../dhtmlxtree___event_onrightclick.html | 128 + .../dhtmlxtree___event_onselect.html | 127 + .../dhtmlxtree/dhtmlxtree___event_onxle.html | 127 + .../dhtmlxtree/dhtmlxtree___event_onxls.html | 128 + .../dhtmlxtree___events_handling.html | 238 + ...xtree___increasing_tree_s_performance.html | 380 + ...lxtree___initialization_of_dhtmlxtree.html | 593 + ...ee___navigation_and_selection_in_tree.html | 306 + .../dhtmlxtree___nodes_manipulation.html | 1420 ++ ...tmlxtree___radio_buttons_manipulation.html | 180 + ...xtree___searching_and_sorting_in_tree.html | 252 + ...rialization_caching_and_removing_tree.html | 241 + .../dhtmlxtree___setting_tree_appearance.html | 676 + ...tmlxtree___simultaneous_server_update.html | 237 + .../dhtmlxtree___syntax_templates.html | 461 + .../docsExplorer/dhtmlxtree/icons___file.gif | Bin 0 -> 622 bytes .../docsExplorer/dhtmlxtree/icons___tree.gif | Bin 0 -> 261 bytes .../docsExplorer/dhtmlxtree/index.html | 220 + .../others___supported_browsers.html | 130 + .../js/dhtmlxtree/docsExplorer/index.html | 126 + .../js/dhtmlxtree/docsExplorer/samples.html | 104 + .../dhtmlxtree/docsExplorer/start/_media.txt | 24 + .../docsExplorer/start/_structure.xml | 1 + .../start/dhtmlx_overall_logic_en.html | 443 + .../docsExplorer/start/icons___accordion.gif | Bin 0 -> 394 bytes .../docsExplorer/start/icons___ajax.gif | Bin 0 -> 371 bytes .../docsExplorer/start/icons___calendar.gif | Bin 0 -> 207 bytes .../docsExplorer/start/icons___chm.gif | Bin 0 -> 671 bytes .../start/icons___colorpicker.gif | Bin 0 -> 352 bytes .../docsExplorer/start/icons___combo.gif | Bin 0 -> 186 bytes .../docsExplorer/start/icons___connector.gif | Bin 0 -> 635 bytes .../start/icons___dataprocessor.gif | Bin 0 -> 173 bytes .../docsExplorer/start/icons___editor.gif | Bin 0 -> 280 bytes .../docsExplorer/start/icons___file.gif | Bin 0 -> 622 bytes .../docsExplorer/start/icons___folders.gif | Bin 0 -> 637 bytes .../docsExplorer/start/icons___grid.gif | Bin 0 -> 191 bytes .../docsExplorer/start/icons___layout.gif | Bin 0 -> 635 bytes .../docsExplorer/start/icons___menu.gif | Bin 0 -> 270 bytes .../docsExplorer/start/icons___scheduler.gif | Bin 0 -> 432 bytes .../docsExplorer/start/icons___slider.gif | Bin 0 -> 363 bytes .../docsExplorer/start/icons___tabbar.gif | Bin 0 -> 258 bytes .../docsExplorer/start/icons___toolbar.gif | Bin 0 -> 243 bytes .../docsExplorer/start/icons___tree.gif | Bin 0 -> 261 bytes .../docsExplorer/start/icons___treegrid.gif | Bin 0 -> 322 bytes .../docsExplorer/start/icons___vault.gif | Bin 0 -> 262 bytes .../docsExplorer/start/icons___windows.gif | Bin 0 -> 267 bytes .../dhtmlxtree/docsExplorer/start/index.html | 246 + .../docsExplorer/start/layout2_sum_trans.gif | Bin 0 -> 4094 bytes .../start/others___complier-interface2.png | Bin 0 -> 85697 bytes .../start/others___migration_version_25.html | 154 + ...rs___special_characters_in_dhtmlxgrid.html | 140 + .../others___special_characters_in_xml.html | 139 + ...rs___special_characters_serialization.html | 121 + .../others___special_encodings_in_xml.html | 122 + .../others___toc_dhtmlx_2_0_step_by_step.html | 558 + .../others___toc_handling_special_charac.html | 132 + .../start/others___toc_libcompiler.html | 314 + ...thers___troubleshooting_common_errors.html | 193 + phpgwapi/js/dhtmlxtree/index.html | 14 + phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js | 928 ++ phpgwapi/js/dhtmlxtree/js/dhtmlXTree.js | 211 + .../js/dhtmlxtree/js/ext/dhtmlxtree_dragin.js | 18 + .../js/dhtmlxtree/js/ext/dhtmlxtree_ed.js | 22 + .../js/dhtmlxtree/js/ext/dhtmlxtree_er.js | 18 + .../js/dhtmlxtree/js/ext/dhtmlxtree_json.js | 33 + .../js/dhtmlxtree/js/ext/dhtmlxtree_start.js | 23 + .../js/dhtmlxtree/libCompiler/buttons.xml | 8 + .../js/dhtmlxtree/libCompiler/components.xml | 635 + .../js/dhtmlxtree/libCompiler/convert.php | 179 + phpgwapi/js/dhtmlxtree/libCompiler/core.js | 160 + .../js/dhtmlxtree/libCompiler/dhtmlxcommon.js | 928 ++ .../dhtmlxtree/libCompiler/dhtmlxcontainer.js | 1173 ++ .../js/dhtmlxtree/libCompiler/get_files.php | 22 + phpgwapi/js/dhtmlxtree/libCompiler/images.php | 274 + .../libCompiler/imgs/big/black_skin.png | Bin 0 -> 22769 bytes .../libCompiler/imgs/big/blue_skin.png | Bin 0 -> 22692 bytes .../libCompiler/imgs/big/skyblue_skin.png | Bin 0 -> 13415 bytes .../dhtmlxtree/libCompiler/imgs/check-all.gif | Bin 0 -> 248 bytes .../libCompiler/imgs/collapse-all.gif | Bin 0 -> 239 bytes .../libCompiler/imgs/expand-all.gif | Bin 0 -> 246 bytes .../dhtmlxtree/libCompiler/imgs/generate.gif | Bin 0 -> 1062 bytes .../libCompiler/imgs/small/black_skin.png | Bin 0 -> 35001 bytes .../libCompiler/imgs/small/blue_skin.png | Bin 0 -> 37644 bytes .../libCompiler/imgs/small/skyblue_skin.png | Bin 0 -> 14081 bytes .../libCompiler/imgs/small/web_skin.png | Bin 0 -> 31125 bytes .../libCompiler/imgs/uncheck-all.gif | Bin 0 -> 252 bytes phpgwapi/js/dhtmlxtree/libCompiler/index.html | 304 + .../js/dhtmlxtree/libCompiler/progress.html | 1 + phpgwapi/js/dhtmlxtree/libCompiler/readme.txt | 5 + .../build/yuicompressor-2.3.5.jar | Bin 0 -> 847528 bytes .../yui/yuicompressor-2.3.5/doc/CHANGELOG | 193 + .../yui/yuicompressor-2.3.5/doc/README | 135 + phpgwapi/js/dhtmlxtree/libCompiler/zip.php | 11 + phpgwapi/js/dhtmlxtree/libCompiler/ziplib.php | 249 + phpgwapi/js/dhtmlxtree/readme.EGroupware.txt | 14 + phpgwapi/js/dhtmlxtree/readme.txt | 3 + 1114 files changed, 79484 insertions(+) create mode 100755 phpgwapi/js/dhtmlxtree/License_GPL.html create mode 100755 phpgwapi/js/dhtmlxtree/css/dhtmlxtree.css create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxConnector/readme.txt create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor_debug.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor_deprecated.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/readme.txt create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor_debug.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor_deprecated.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxcommon.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.css create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_dragin.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_ed.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_er.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_json.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_start.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/but_cut.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book_titel.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/but_cut.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/close2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconSafe.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/tombs.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckAll_2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconFlag.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconGraph.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconSound.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconTexts.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconWrite1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconWrite2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs_open.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconFlag.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconGraph.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconSound.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconTexts.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconWrite1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconWrite2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconFlag.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconGraph.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconSound.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconTexts.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/safe_close.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/safe_open.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconFlag.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconGraph.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconSound.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconTexts.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconWrite1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconWrite2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconChecked.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconFlag.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconGraph.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconSound.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconTexts.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconWrite1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconWrite2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/leaves.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/books_close.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/books_open.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconText.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf_2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/tombs.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/tombs_open.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/lock.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus_ar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus_ar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/sky_blue_sel_tree.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/readme.txt create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/09_tree_design.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/10_tree_iconset.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/11_tree_text_image.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/05_tree_checkboxes.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/12_tree_drag.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f1.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f2.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f3.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f1.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f2.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f3.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/03_tree_events.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/02_tree_init_from_html.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/03_tree_init_xml.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/04_tree_init_o_api.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/13_tree_dyn_loading.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/tree_perf_xml.php create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/xml.php create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/05_tree_add_delete.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/06_tree_open_close.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/_context.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_data.json create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_xml.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/config.php create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/css/style.css create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.csv create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.json create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/grid.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/bullet.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/chart.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/chm.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/dataprocessor.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/dataview.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/file.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/file_link.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/form.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/gantt.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/none.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/old.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/pdf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/source.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blank.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blue.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/book.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/books_close.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/books_open.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/close2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/folderClosed.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/folderOpen.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/green.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconCheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconCheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconCheckGray.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconUncheckAll.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconUncheckDis.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2c.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2o.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/leaf.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line1.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line1_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus_ar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/open2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5_rtl.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus_ar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_off.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_on.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/red.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/white.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/yellow.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/6_IE_inside2.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/Thumbs.db create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/bookmark.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted-ccc.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/bullet.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button_inact.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/footer-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/footer-logo.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/grid-placeholder.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/head_bg.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_chart.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_dataview.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_form.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_gantt.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but_inact.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/search-button.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/search-field.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/source-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/source.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toc-arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toolbar5.944_left2.png create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3_14_selection_sorting_navigation.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree4.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_02_checkboxes.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_05_drag_n_drop.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_a.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_b.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_bg.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_cl.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lc.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lg.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_mixed.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ml.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ol.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_p.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_radio.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_st.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_to.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ud.xml create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/index.html create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxcommon.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxtree.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/ext/dhtmlxtree_dragin.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/ext/dhtmlxtree_ed.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/ext/dhtmlxtree_er.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/ext/dhtmlxtree_json.js create mode 100755 phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/ext/dhtmlxtree_start.js create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/css/style.css create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/default.css create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/bullet.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/chart.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/chm.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/dataprocessor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/dataview.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/file_link.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/form.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/gantt.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/none.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/old.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/pdf.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/source.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/bz2.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/conf.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/deb.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/doc.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/file.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/gif.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/gz.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/htm.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/html.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/jpeg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/jpg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odc.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odf.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odi.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odp.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ods.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odt.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/pdf.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/png.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ppt.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ps.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rar.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rpm.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rtf.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/swf.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxc.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxd.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxi.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxw.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/tar.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/tgz.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/txt.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/xls.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/xml.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/zip.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/smileys/delete.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/smileys/fixme.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/6_IE_inside2.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/Thumbs.db create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/bookmark.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted-ccc.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/bullet.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button_inact.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/footer-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/footer-logo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/grid-placeholder.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/head_bg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_chart.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_dataview.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_form.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_gantt.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but_inact.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/search-button.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/search-field.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/source-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/source.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toc-arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toolbar5.944_left2.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/bookmark.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/bullet.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/buttonshadow.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/closed.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/doc-button.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/favicon.ico create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-logo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/head_bg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/link_icon.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/mail_icon.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/open.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/samples-button.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-button.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-field.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-hits.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-quick-rezult-bg.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-rez-bg.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-rezult-dark.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-rezult.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/toc-arrow.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/tocdot2.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/_media.txt create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/_structure.xml create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___base_concept.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___client_side_other_components.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___combodataitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___complex_updates.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connector_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connectors_and_oracle.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___custom_queries.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___data_export.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataaction_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataitem_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_grid_structure_on_server_side.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_header_server.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dynamical_loading.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___error_handling_and_logging.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterdelete.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterinsert.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterprocessing.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterupdate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforedelete.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforefilter.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeinsert.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeoutput.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeprocessing.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforerender.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforesort.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeupdate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___events_system.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___excel_file.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___extending_existing_functionality.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filtering.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filterinterface_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___formatting_changing_data_before_loading.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___griddataitem_treegriddataitem_specific.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___group_connector.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___initialization_of_dhtmlxconnector.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___keygrid_connector.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___loading_editing_data.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___migration_from_older_version.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multi-table_tree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multitable_tree.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___new_in_version_1.0.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___order_of_events_execution.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___porting_connectors.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___protocol_details.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___security.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_columns_in_grid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_in_scheduler.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___server_side_others.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sorting.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sortinterface_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_dhtmlxconnector_event_o.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_what_is_dhtmlxconnector.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___tree_group.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treedataitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegrid_multitable.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegriddataitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___url_manipulation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___validating_data.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___xml_format_used_by_connector.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/icons___connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/icons___file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/index.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_media.txt create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_structure.xml create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/common___any_ed.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___adjusting_server_side_code.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_afterupdatecallback.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_attachevent.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_checkbeforeupdate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_clearverificator.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_detachevent.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enabledatanames.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enablepartialdatasend.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enableutfencoding.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_getsyncstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_ignore.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_init.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_senddata.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setdatacolumns.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setonbeforeupdatehandler.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_settransactionmode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdated.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdatemode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setverificator.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_alpha.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_categories.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___client_side_initialization.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_errors.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_tasks.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___custom_server_side_responses.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___customizing_color_marking.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___data_sending_modes.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___debug_mode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdatefinish.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforedatasending.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforeupdate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onfullsync.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onrowmark.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onvalidatationerror.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___events.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___validation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxgrid___dataprocessor.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___dataprocessor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/index.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_media.txt create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_structure.xml create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/common___any_ed.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/common___pro_ed.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor_object.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_assignkeys.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_attachevent.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_changeitemid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearcut.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearselection.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeallitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_defineitemform.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deletechilditems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deleteitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_destructor.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_detachevent.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_disablecheckbox.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_docut.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_dopaste.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_edititem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableactiveimages.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautosavingselected.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautotooltips.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecheckboxes.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecontextmenu.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledistributedparsing.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddrop.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddropscrolling.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablehighlighting.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableieimagefix.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableimagedrag.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableitemeditor.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeyboardnavigation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeysearch.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableloadingitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemercydrag.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultilineitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultiselection.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableradiobuttons.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablertl.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesingleradiomode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartcheckboxes.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartrendering.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartxmlparsing.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletextsigns.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablethreestatecheckboxes.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreeimages.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreelines.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditemidbylabel.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_focusitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchecked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallcheckedbranches.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchildless.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallitemswithkids.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallpartiallychecked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallsubitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallunchecked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getchilditemidbyindex.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getdistributedparsingstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getindexbyid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemcolor.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemidbyindex.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemimage.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemparsingstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtext.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtooltip.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getlevel.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getopenstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getparentid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemtext.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getsubitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getuserdata.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getxmlstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_haschildren.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_hideitemform.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewchild.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewnext.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_isitemchecked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_islocked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsv.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsvstring.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarray.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarrayfile.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjson.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsonobject.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadopenstates.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadstate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxml.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxmlstring.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_lockitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_locktree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makealldraggable.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makedraggable.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_moveitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitemsdynamic.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitemsdynamic.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openonitemadded.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_preventiecaching.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitems.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_registerxmlentity.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_restoreselecteditem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveopenstates.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveselecteditem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_savestate.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_selectitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetreetojson.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcheck.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalchtml.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalcmode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcustomsortfunction.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdatamode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdragbehavior.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seteditstartaction.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setescapingmode.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformappearon.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformdisappearon.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonpath.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonsize.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagearrays.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagepath.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcloseable.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcolor.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcontextmenu.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage2.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemstyle.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtext.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtopoffset.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlistdelimeter.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlockedicons.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setondblclickhandler.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonformdismissal.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonforminitialisation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setserializationlevel.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setstdimages.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setsubchecked.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setuserdata.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloading.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloadingbehaviour.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemcheckbox.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemform.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemsign.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshbranch.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_sorttree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_stopedit.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_updateitem.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_alpha.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_categories.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___checkboxes_manipulation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___compatibility_with_other_dhtmlx_components.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_220gbgmh9gf_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_221cf28k8ff_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_222gz6tpsdc_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_223fnxr7chh_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_224ggpqf8gx_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_225fpw796gk_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_226c3td7kc7_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_227f8jk4hd8_b.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___drag_and_drop_handling.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___error_handling.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforecheck.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforedrag.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_oncheck.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onclick.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondblclick.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrag.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondragin.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrop.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onedit.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmousein.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmouseout.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopendynamicend.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenend.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenstart.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onrightclick.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onselect.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxle.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxls.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___events_handling.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___increasing_tree_s_performance.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___initialization_of_dhtmlxtree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___navigation_and_selection_in_tree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___nodes_manipulation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___radio_buttons_manipulation.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___searching_and_sorting_in_tree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___serialization_caching_and_removing_tree.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___setting_tree_appearance.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___simultaneous_server_update.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___syntax_templates.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/index.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/others___supported_browsers.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/index.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/samples.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/_media.txt create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/_structure.xml create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/dhtmlx_overall_logic_en.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___accordion.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___ajax.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___calendar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___chm.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___colorpicker.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___combo.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___connector.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___dataprocessor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___editor.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___file.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___folders.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___grid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___layout.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___menu.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___scheduler.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___slider.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___tabbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___toolbar.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___tree.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___treegrid.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___vault.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___windows.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/index.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/layout2_sum_trans.gif create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___complier-interface2.png create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___migration_version_25.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_dhtmlxgrid.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_xml.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_serialization.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_encodings_in_xml.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_dhtmlx_2_0_step_by_step.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_handling_special_charac.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_libcompiler.html create mode 100755 phpgwapi/js/dhtmlxtree/docsExplorer/start/others___troubleshooting_common_errors.html create mode 100755 phpgwapi/js/dhtmlxtree/index.html create mode 100755 phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js create mode 100755 phpgwapi/js/dhtmlxtree/js/dhtmlXTree.js create mode 100755 phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_dragin.js create mode 100755 phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_ed.js create mode 100755 phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_er.js create mode 100755 phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_json.js create mode 100755 phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_start.js create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/buttons.xml create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/components.xml create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/convert.php create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/core.js create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcommon.js create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcontainer.js create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/get_files.php create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/images.php create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/black_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/blue_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/skyblue_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/check-all.gif create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/collapse-all.gif create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/expand-all.gif create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/generate.gif create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/black_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/blue_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/skyblue_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/web_skin.png create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/imgs/uncheck-all.gif create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/index.html create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/progress.html create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/readme.txt create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/build/yuicompressor-2.3.5.jar create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/CHANGELOG create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/README create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/zip.php create mode 100755 phpgwapi/js/dhtmlxtree/libCompiler/ziplib.php create mode 100644 phpgwapi/js/dhtmlxtree/readme.EGroupware.txt create mode 100755 phpgwapi/js/dhtmlxtree/readme.txt diff --git a/phpgwapi/js/dhtmlxtree/License_GPL.html b/phpgwapi/js/dhtmlxtree/License_GPL.html new file mode 100755 index 0000000000..afe2ef33f0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/License_GPL.html @@ -0,0 +1,73 @@ +

GNU GENERAL PUBLIC LICENSE

+Version 2, June 1991

+

+

Copyright (C) 1989, 1991 Free Software Foundation, Inc.

+

59 Temple Place - Suite 330, Boston, MA 02111-1307, USA

+

+

Everyone is permitted to copy and distribute verbatim copies

+

of this license document, but changing it is not allowed.

+

+

+

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

+

0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

+

+

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

+

+

1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

+

+

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

+

+

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

+

+

+

a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

+

+

b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

+

+

c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

+

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

+

+

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

+

+

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

+

+

3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

+

+

a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

+

+

b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

+

+

c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)

+

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

+

+

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

+

+

4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

+

+

5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

+

+

6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

+

+

7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

+

+

If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

+

+

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

+

+

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

+

+

8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

+

+

9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

+

+

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

+

+

10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

+

+

NO WARRANTY

+

+

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

+

+

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

+

+

\ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/css/dhtmlxtree.css b/phpgwapi/js/dhtmlxtree/css/dhtmlxtree.css new file mode 100755 index 0000000000..65f4f16f0b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/css/dhtmlxtree.css @@ -0,0 +1,136 @@ +.defaultTreeTable{ + margin : 0px; + padding : 0px; + border : 0px; +} +.containerTableStyle { overflow : auto; position:relative; top:0; font-size : 12px; -khtml-user-select: none;} +.containerTableStyleRTL span { direction: rtl; unicode-bidi: bidi-override; } +.containerTableStyleRTL { direction: rtl; overflow : auto; position:relative; top:0; font-size : 12px;} +.standartTreeRow { font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.selectedTreeRow{ background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.dragAndDropRow{ background-color : navy; color:white; } +.standartTreeRow_lor{ text-decoration:underline; background-color : #FFFFF0; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.selectedTreeRow_lor{ text-decoration:underline; background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } + +.standartTreeImage{ width:18px; height:18px; overflow:hidden; border:0; padding:0; margin:0; +font-size:1px; } +.hiddenRow { width:1px; overflow:hidden; } +.dragSpanDiv,.dragSpanDiv td{ font-size : 12px; background-color:white; z-index:999; } +.a_dhx_hidden_input{ position:absolute; top:-1px; left:-1px; width:1px; height:1px; border:none; background:none; } +.a_dhx_hidden_input{ position:absolute; top:-1px; left:-1px; width:1px; height:1px; border:none; background:none; } + +.selectionBox{ +background-color: #FFFFCC; +} +.selectionBar { + top:0; + background-color: Black; + position:absolute; + overflow:hidden; + height: 2px; + z-index : 11; +} + +.intreeeditRow{ + font-size:8pt; height:16px; border:1px solid silver; padding:0; margin:0; + margin-left:4px; + -moz-user-select: text; + -khtml-user-select: text; +} +.dhx_tree_textSign{ + font-size:8pt; + font-family:monospace; + width:21px; + color:black; + padding:0px; + margin:0px; + cursor:pointer; + text-align: center; +} +.dhx_tree_opacity{ + opacity:0; + -moz-opacity:0; + filter:alpha(opacity=0); +} +.dhx_bg_img_fix{ +width:18px; +height:18px; +background-repeat: no-repeat; +background-position: center; +background-position-x: center; +background-position-y: center; +} + +.dhxtree_dhx_black, .dhxtree_dhx_skyblue{ + background:white; + color:black; +} +*html .dhxtree_dhx_skyblue .standartTreeRow, *html .dhxtree_dhx_skyblue .standartTreeRow_lor{ + border-right:0px solid red; + border-left:0px solid red; +} +*html .dhxtree_dhx_skyblue span.standartTreeRow, *html .dhxtree_dhx_skyblue span.standartTreeRow_lor{ + margin-left:1px; +} + +.dhxtree_dhx_skyblue .standartTreeRow, .dhxtree_dhx_skyblue .standartTreeRow_lor{ + border-right:1px solid transparent; + border-left: 1px solid transparent; + font-family:Tahoma; + font-size:11px !important; + overflow:hidden; + padding:0px 0px 0px 0px; +} +.dhxtree_dhx_skyblue .selectedTreeRow_lor, .dhxtree_dhx_skyblue .selectedTreeRow{ + background-color:white; + background-image:url(imgs/sky_blue_sel_tree.png); + background-repeat:repeat-x; + border:1px solid #FFB951; + color:black; + + line-height:17px; + + font-size:11px !important; + font-family:Tahoma; + overflow:hidden; +} +html > body /**/ .dhxtree_dhx_skyblue .selectedTreeRow, html > body /**/ .dhxtree_dhx_skyblue .selectedTreeRow_lor{ + padding:1px 0px 1px 0px; + line-height:normal; + display:inline-block !ie; + height:13px; +} +body:nth-of-type(1) .dhxtree_dhx_skyblue span.selectedTreeRow, body:nth-of-type(1) .dhxtree_dhx_skyblue span.selectedTreeRow_lor{ + padding:1px 0px 1px 0px; + display:inline-block; + padding-top:0px; + height:13px; +} +body:nth-of-type(1) .dhxtree_dhx_skyblue span.standartTreeRow, body:nth-of-type(1) .dhxtree_dhx_skyblue span.standartTreeRow_lor{ + display:inline-block; + height:14px; +} + +.dhxtree_dhx_web .selectedTreeRow_lor, .dhxtree_dhx_web .selectedTreeRow{ + background-color:transparent; + +} +.dhxtree_dhx_web span.selectedTreeRow_lor , .dhxtree_dhx_web span.selectedTreeRow{ + background-color:#ACDAF0; + color:black; +} + +.dhxtree_dhx_web td.standartTreeRow, .dhxtree_dhx_web td.selectedTreeRow{ + padding-left:2px; +} +.dhxtree_dhx_web span.standartTreeRow, .dhxtree_dhx_web span.selectedTreeRow{ + padding-left:3px !important; +} + + + +.dhxtree_dhx_web .standartTreeRow, .dhxtree_dhx_web .standartTreeRow, .dhxtree_dhx_web .selectedTreeRow_lor, .dhxtree_dhx_web .selectedTreeRow{ + font-size:12px; + font-family:Tahoma; + overflow:hidden; +} diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxConnector/readme.txt b/phpgwapi/js/dhtmlxtree/dhtmlxConnector/readme.txt new file mode 100755 index 0000000000..7250a6791c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxConnector/readme.txt @@ -0,0 +1,4 @@ +dhtmlxConnector is available for different server side platforms. +Please visit its home page to learn more and download necessary package. + +http://www.dhtmlx.com/docs/products/dhtmlxConnector/index.shtml \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor.js b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor.js new file mode 100755 index 0000000000..17d9d4ad82 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor.js @@ -0,0 +1,152 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ + +function dataProcessor(serverProcessorURL){this.serverProcessor = serverProcessorURL;this.action_param="!nativeeditor_status";this.object = null;this.updatedRows = [];this.autoUpdate = true;this.updateMode = "cell";this._tMode="GET";this.post_delim = "_";this._waitMode=0;this._in_progress={};this._invalid={};this.mandatoryFields=[];this.messages=[];this.styles={updated:"font-weight:bold;", + inserted:"font-weight:bold;", + deleted:"text-decoration : line-through;", + invalid:"background-color:FFE0E0;", + invalid_cell:"border-bottom:2px solid red;", + error:"color:red;", + clear:"font-weight:normal;text-decoration:none;" + };this.enableUTFencoding(true);dhtmlxEventable(this);return this;};dataProcessor.prototype={setTransactionMode:function(mode,total){this._tMode=mode;this._tSend=total;}, + escape:function(data){if (this._utf)return encodeURIComponent(data);else + return escape(data);}, + + enableUTFencoding:function(mode){this._utf=convertStringToBoolean(mode);}, + + setDataColumns:function(val){this._columns=(typeof val == "string")?val.split(","):val;}, + + getSyncState:function(){return !this.updatedRows.length;}, + + enableDataNames:function(mode){this._endnm=convertStringToBoolean(mode);}, + + enablePartialDataSend:function(mode){this._changed=convertStringToBoolean(mode);}, + + setUpdateMode:function(mode,dnd){this.autoUpdate = (mode=="cell");this.updateMode = mode;this.dnd=dnd;}, + ignore:function(code,master){this._silent_mode=true;code.call(master||window);this._silent_mode=false;}, + + setUpdated:function(rowId,state,mode){if (this._silent_mode)return;var ind=this.findRow(rowId);mode=mode||"updated";var existing = this.obj.getUserData(rowId,this.action_param);if (existing && mode == "updated")mode=existing;if (state){this.set_invalid(rowId,false);this.updatedRows[ind]=rowId;this.obj.setUserData(rowId,this.action_param,mode);if (this._in_progress[rowId])this._in_progress[rowId]="wait";}else{if (!this.is_invalid(rowId)){this.updatedRows.splice(ind,1);this.obj.setUserData(rowId,this.action_param,"");}};if (!state)this._clearUpdateFlag(rowId);this.markRow(rowId,state,mode);if (state && this.autoUpdate)this.sendData(rowId);}, + _clearUpdateFlag:function(id){}, + markRow:function(id,state,mode){var str="";var invalid=this.is_invalid(id);if (invalid){str=this.styles[invalid];state=true;};if (this.callEvent("onRowMark",[id,state,mode,invalid])){str=this.styles[state?mode:"clear"]+str;this.obj[this._methods[0]](id,str);if (invalid && invalid.details){str+=this.styles[invalid+"_cell"];for (var i=0;i < invalid.details.length;i++)if (invalid.details[i])this.obj[this._methods[1]](id,i,str);}}}, + getState:function(id){return this.obj.getUserData(id,this.action_param);}, + is_invalid:function(id){return this._invalid[id];}, + set_invalid:function(id,mode,details){if (details)mode={value:mode, details:details, toString:function(){return this.value.toString();}};this._invalid[id]=mode;}, + + checkBeforeUpdate:function(rowId){return true;}, + + sendData:function(rowId){if (this._waitMode && (this.obj.mytype=="tree" || this.obj._h2)) return;if (this.obj.editStop)this.obj.editStop();if(typeof rowId == "undefined" || this._tSend)return this.sendAllData();if (this._in_progress[rowId])return false;this.messages=[];if (!this.checkBeforeUpdate(rowId)&& this.callEvent("onValidatationError",[rowId,this.messages])) return false;this._beforeSendData(this._getRowData(rowId),rowId);}, + _beforeSendData:function(data,rowId){if (!this.callEvent("onBeforeUpdate",[rowId,this.getState(rowId),data])) return false;this._sendData(data,rowId);}, + serialize:function(data, id){if (typeof id != "undefined")return this.serialize_one(data,"");else{var stack = [];var keys = [];for (var key in data)if (data.hasOwnProperty(key)){stack.push(this.serialize_one(data[key],key+this.post_delim));keys.push(key);};stack.push("ids="+this.escape(keys.join(",")));return stack.join("&");}}, + serialize_one:function(data, pref){if (typeof data == "string")return data;var stack = [];for (var key in data)if (data.hasOwnProperty(key)) + stack.push(this.escape((pref||"")+key)+"="+this.escape(data[key]));return stack.join("&");}, + _sendData:function(a1,rowId){if (!a1)return;if (!this.callEvent("onBeforeDataSending",rowId?[rowId,this.getState(rowId),a1]:[null, null, a1])) return false;if (rowId)this._in_progress[rowId]=(new Date()).valueOf();var a2=new dtmlXMLLoaderObject(this.afterUpdate,this,true);var a3 = this.serverProcessor+(this._user?(getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&")):"");if (this._tMode!="POST")a2.loadXML(a3+((a3.indexOf("?")!=-1)?"&":"?")+this.serialize(a1,rowId));else + a2.loadXML(a3,true,this.serialize(a1));this._waitMode++;}, + sendAllData:function(){if (!this.updatedRows.length)return;this.messages=[];var valid=true;for (var i=0;i[close] [clear]  DataProcessor

 Current state
 Log:
";if (document.body)document.body.insertBefore(c,document.body.firstChild);else dhtmlxEvent(window,"load",function(){document.body.insertBefore(c,document.body.firstChild);}) + dhtmlxEvent(window,"dblclick",function(){c.style.display='';}) + return c;};dataProcessor.prototype._error=function(data){this._log(""+data+"");};dataProcessor.prototype._log=function(data){var div=document.createElement("DIV");div.innerHTML = data;var parent=this._console.childNodes[2];parent.appendChild(div);parent.scrollTop=parent.scrollHeight;if (window.console && window.console.log)window.console.log("DataProcessor :: "+data.replace(" "," ").replace("","").replace("",""));};dataProcessor.prototype._updateStat=function(data){var data=[" Current state"];for(var i=0;i")+"
Current mode: "+this.updateMode;};dataProcessor.prototype.xml_analize=function(xml){if (_isFF){if (!xml.xmlDoc.responseXML)this._error("Not an XML, probably incorrect content type specified ( must be text/xml ), or some text output was started before XML data");else if (xml.xmlDoc.responseXML.firstChild.tagName=="parsererror")this._error(xml.xmlDoc.responseXML.firstChild.textContent);else return true;}else if (_isIE){if (xml.xmlDoc.responseXML.parseError.errorCode)this._error("XML error : "+xml.xmlDoc.responseXML.parseError.reason);else if (!xml.xmlDoc.responseXML.documentElement)this._error("Not an XML, probably incorrect content type specified ( must be text/xml ), or some text output was started before XML data");else return true;};return false;};dataProcessor.wrap=function(name,before,after){var d=dataProcessor.prototype;if (!d._wrap)d._wrap={};d._wrap[name]=d[name];d[name]=function(){if (before)before.apply(this,arguments);var res=d._wrap[name].apply(this,arguments);if (after)after.apply(this,[arguments,res]);return res;}};dataProcessor.wrap("setUpdated",function(rowId,state,mode){this._log(" row "+rowId+" "+(state?"marked":"unmarked")+" ["+(mode||"updated")+","+(this.is_invalid(rowId)||"valid")+"]");},function(){this._updateStat();});dataProcessor.wrap("sendData",function(rowId){if (rowId){this._log(" Initiating data sending for "+rowId+"");if (this.obj.mytype=="tree"){if (!this.obj._idpull[rowId])this._log(" Error! item with such ID not exists "+rowId+"");}else {if (!this.obj.rowsAr[rowId])this._log(" Error! row with such ID not exists "+rowId+"");}}},function(){});dataProcessor.wrap("sendAllData",function(){this._log(" Initiating data sending for all rows ");},function(){});dataProcessor.logSingle=function(data,id){var tdata = {};if (id)tdata[id] = data;else + tdata = data;var url = [];for (var key in tdata){url.push("
"+key+"");var suburl = [];for (var ikey in tdata[key])suburl.push(ikey+" = "+tdata[key][ikey]);url.push(suburl.join("
"));url.push("
");};return url.join("");};dataProcessor.wrap("_sendData",function(data,rowId){if (rowId)this._log(" Sending in one-by-one mode, current ID = "+rowId);else + this._log(" Sending all data at once");this._log(" Server url: "+this.serverProcessor+" parameters");var url = [];this._log("
"+dataProcessor.logSingle(data,rowId)+"
");},function(){});dataProcessor.wrap("afterUpdate",function(that,b,c,d,xml){that._log(" Server response received details
"+(xml.xmlDoc.responseText||"").replace(/\&/g,"&").replace(//g,">")+"
");if (!that.xml_analize(xml)) return;var atag=xml.doXPath("//data/action");if (!atag){that._log(" No actions found");var atag=xml.getXMLTopNode("data");if (!atag)that._log(" XML not valid");else that._log(" Incorrect content type - need to be text/xml");}},function(){});dataProcessor.wrap("afterUpdateCallback",function(sid,tid,action){if (this.obj.mytype=="tree"){if (!this.obj._idpull[sid])this._log("Incorrect SID, item with such ID not exists in grid");}else {if (!this.obj.rowsAr[sid])this._log("Incorrect SID, row with such ID not exists in grid");};this._log(" Action: "+action+" SID:"+sid+" TID:"+tid);},function(){}); + + + + + + + +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor_deprecated.js b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor_deprecated.js new file mode 100755 index 0000000000..2ce6e2cd59 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/codebase/dhtmlxdataprocessor_deprecated.js @@ -0,0 +1,17 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ + + + dataProcessor.prototype.setOnAfterUpdate = function(ev){this.attachEvent("onAfterUpdate",ev);};dataProcessor.prototype.enableDebug = function(mode){};dataProcessor.prototype.setOnBeforeUpdateHandler=function(func){this.attachEvent("onBeforeDataSending",func);}; +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/readme.txt b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/readme.txt new file mode 100755 index 0000000000..03c882bcbe --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/readme.txt @@ -0,0 +1,3 @@ +dhtmlxDataProcessor v.2.6 Standard edition build 100722 + +(c) DHTMLX Ltd. \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor.js b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor.js new file mode 100755 index 0000000000..b9ccc77c6f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor.js @@ -0,0 +1,584 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ +/** + * @desc: constructor, data processor object + * @param: serverProcessorURL - url used for update + * @type: public + */ +function dataProcessor(serverProcessorURL){ + this.serverProcessor = serverProcessorURL; + this.action_param="!nativeeditor_status"; + + this.object = null; + this.updatedRows = []; //ids of updated rows + + this.autoUpdate = true; + this.updateMode = "cell"; + this._tMode="GET"; + this.post_delim = "_"; + + this._waitMode=0; + this._in_progress={};//? + this._invalid={}; + this.mandatoryFields=[]; + this.messages=[]; + + this.styles={ + updated:"font-weight:bold;", + inserted:"font-weight:bold;", + deleted:"text-decoration : line-through;", + invalid:"background-color:FFE0E0;", + invalid_cell:"border-bottom:2px solid red;", + error:"color:red;", + clear:"font-weight:normal;text-decoration:none;" + }; + + this.enableUTFencoding(true); + dhtmlxEventable(this); + + return this; + } + +dataProcessor.prototype={ + /** + * @desc: select GET or POST transaction model + * @param: mode - GET/POST + * @param: total - true/false - send records row by row or all at once (for grid only) + * @type: public + */ + setTransactionMode:function(mode,total){ + this._tMode=mode; + this._tSend=total; + }, + escape:function(data){ + if (this._utf) + return encodeURIComponent(data); + else + return escape(data); + }, + /** + * @desc: allows to set escaping mode + * @param: true - utf based escaping, simple - use current page encoding + * @type: public + */ + enableUTFencoding:function(mode){ + this._utf=convertStringToBoolean(mode); + }, + /** + * @desc: allows to define, which column may trigger update + * @param: val - array or list of true/false values + * @type: public + */ + setDataColumns:function(val){ + this._columns=(typeof val == "string")?val.split(","):val; + }, + /** + * @desc: get state of updating + * @returns: true - all in sync with server, false - some items not updated yet. + * @type: public + */ + getSyncState:function(){ + return !this.updatedRows.length; + }, + /** + * @desc: enable/disable named field for data syncing, will use column ids for grid + * @param: mode - true/false + * @type: public + */ + enableDataNames:function(mode){ + this._endnm=convertStringToBoolean(mode); + }, + /** + * @desc: enable/disable mode , when only changed fields and row id send to the server side, instead of all fields in default mode + * @param: mode - true/false + * @type: public + */ + enablePartialDataSend:function(mode){ + this._changed=convertStringToBoolean(mode); + }, + /** + * @desc: set if rows should be send to server automaticaly + * @param: mode - "row" - based on row selection changed, "cell" - based on cell editing finished, "off" - manual data sending + * @type: public + */ + setUpdateMode:function(mode,dnd){ + this.autoUpdate = (mode=="cell"); + this.updateMode = mode; + this.dnd=dnd; + }, + ignore:function(code,master){ + this._silent_mode=true; + code.call(master||window); + this._silent_mode=false; + }, + /** + * @desc: mark row as updated/normal. check mandatory fields,initiate autoupdate (if turned on) + * @param: rowId - id of row to set update-status for + * @param: state - true for "updated", false for "not updated" + * @param: mode - update mode name + * @type: public + */ + setUpdated:function(rowId,state,mode){ + if (this._silent_mode) return; + var ind=this.findRow(rowId); + + mode=mode||"updated"; + var existing = this.obj.getUserData(rowId,this.action_param); + if (existing && mode == "updated") mode=existing; + if (state){ + this.set_invalid(rowId,false); //clear previous error flag + this.updatedRows[ind]=rowId; + this.obj.setUserData(rowId,this.action_param,mode); + if (this._in_progress[rowId]) + this._in_progress[rowId]="wait"; + } else{ + if (!this.is_invalid(rowId)){ + this.updatedRows.splice(ind,1); + this.obj.setUserData(rowId,this.action_param,""); + } + } + + //clear changed flag + if (!state) + this._clearUpdateFlag(rowId); + + this.markRow(rowId,state,mode); + if (state && this.autoUpdate) this.sendData(rowId); + }, + _clearUpdateFlag:function(id){}, + markRow:function(id,state,mode){ + var str=""; + var invalid=this.is_invalid(id); + if (invalid){ + str=this.styles[invalid]; + state=true; + } + if (this.callEvent("onRowMark",[id,state,mode,invalid])){ + //default logic + str=this.styles[state?mode:"clear"]+str; + + this.obj[this._methods[0]](id,str); + + if (invalid && invalid.details){ + str+=this.styles[invalid+"_cell"]; + for (var i=0; i < invalid.details.length; i++) + if (invalid.details[i]) + this.obj[this._methods[1]](id,i,str); + } + } + }, + getState:function(id){ + return this.obj.getUserData(id,this.action_param); + }, + is_invalid:function(id){ + return this._invalid[id]; + }, + set_invalid:function(id,mode,details){ + if (details) mode={value:mode, details:details, toString:function(){ return this.value.toString(); }}; + this._invalid[id]=mode; + }, + /** + * @desc: check mandatory fields and varify values of cells, initiate update (if specified) + * @param: rowId - id of row to set update-status for + * @type: public + */ + checkBeforeUpdate:function(rowId){ + return true; + }, + /** + * @desc: send row(s) values to server + * @param: rowId - id of row which data to send. If not specified, then all "updated" rows will be send + * @type: public + */ + sendData:function(rowId){ + if (this._waitMode && (this.obj.mytype=="tree" || this.obj._h2)) return; + if (this.obj.editStop) this.obj.editStop(); + + + if(typeof rowId == "undefined" || this._tSend) return this.sendAllData(); + if (this._in_progress[rowId]) return false; + + this.messages=[]; + if (!this.checkBeforeUpdate(rowId) && this.callEvent("onValidatationError",[rowId,this.messages])) return false; + this._beforeSendData(this._getRowData(rowId),rowId); + }, + _beforeSendData:function(data,rowId){ + if (!this.callEvent("onBeforeUpdate",[rowId,this.getState(rowId),data])) return false; + this._sendData(data,rowId); + }, + serialize:function(data, id){ + if (typeof id != "undefined") + return this.serialize_one(data,""); + else{ + var stack = []; + var keys = []; + for (var key in data) + if (data.hasOwnProperty(key)){ + stack.push(this.serialize_one(data[key],key+this.post_delim)); + keys.push(key); + } + stack.push("ids="+this.escape(keys.join(","))); + return stack.join("&"); + } + }, + serialize_one:function(data, pref){ + if (typeof data == "string") + return data; + var stack = []; + for (var key in data) + if (data.hasOwnProperty(key)) + stack.push(this.escape((pref||"")+key)+"="+this.escape(data[key])); + return stack.join("&"); + }, + _sendData:function(a1,rowId){ + if (!a1) return; //nothing to send + if (!this.callEvent("onBeforeDataSending",rowId?[rowId,this.getState(rowId),a1]:[null, null, a1])) return false; + + if (rowId) + this._in_progress[rowId]=(new Date()).valueOf(); + var a2=new dtmlXMLLoaderObject(this.afterUpdate,this,true); + + var a3 = this.serverProcessor+(this._user?(getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&")):""); + + if (this._tMode!="POST") + a2.loadXML(a3+((a3.indexOf("?")!=-1)?"&":"?")+this.serialize(a1,rowId)); + else + a2.loadXML(a3,true,this.serialize(a1)); + + this._waitMode++; + }, + sendAllData:function(){ + if (!this.updatedRows.length) return; + + this.messages=[]; var valid=true; + for (var i=0; i[close] [clear]  DataProcessor
 Current state
 Log:
"; + if (document.body) document.body.insertBefore(c,document.body.firstChild); + else dhtmlxEvent(window,"load",function(){ + document.body.insertBefore(c,document.body.firstChild); + }) + dhtmlxEvent(window,"dblclick",function(){ + c.style.display=''; + }) + return c; +} + +dataProcessor.prototype._error=function(data){ + this._log(""+data+""); +} +dataProcessor.prototype._log=function(data){ + var div=document.createElement("DIV"); + div.innerHTML = data; + var parent=this._console.childNodes[2]; + parent.appendChild(div); + parent.scrollTop=parent.scrollHeight; + + if (window.console && window.console.log) + window.console.log("DataProcessor :: "+data.replace(" "," ").replace("","").replace("","")); + +} +dataProcessor.prototype._updateStat=function(data){ + var data=[" Current state"]; + for(var i=0;i")+"
Current mode: "+this.updateMode; +} +dataProcessor.prototype.xml_analize=function(xml){ + if (_isFF){ + if (!xml.xmlDoc.responseXML) + this._error("Not an XML, probably incorrect content type specified ( must be text/xml ), or some text output was started before XML data"); + else if (xml.xmlDoc.responseXML.firstChild.tagName=="parsererror") + this._error(xml.xmlDoc.responseXML.firstChild.textContent); + else return true; + } else if (_isIE){ + if (xml.xmlDoc.responseXML.parseError.errorCode) + this._error("XML error : "+xml.xmlDoc.responseXML.parseError.reason); + else if (!xml.xmlDoc.responseXML.documentElement) + this._error("Not an XML, probably incorrect content type specified ( must be text/xml ), or some text output was started before XML data"); + else return true; + } + return false; +} + +dataProcessor.wrap=function(name,before,after){ + var d=dataProcessor.prototype; + if (!d._wrap) d._wrap={}; + d._wrap[name]=d[name]; + d[name]=function(){ + if (before) before.apply(this,arguments); + var res=d._wrap[name].apply(this,arguments); + if (after) after.apply(this,[arguments,res]); + return res; + } +}; + +dataProcessor.wrap("setUpdated",function(rowId,state,mode){ + this._log(" row "+rowId+" "+(state?"marked":"unmarked")+" ["+(mode||"updated")+","+(this.is_invalid(rowId)||"valid")+"]"); +},function(){ + this._updateStat(); +}); + + + +dataProcessor.wrap("sendData",function(rowId){ + if (rowId){ + this._log(" Initiating data sending for "+rowId+""); + if (this.obj.mytype=="tree"){ + if (!this.obj._idpull[rowId]) + this._log(" Error! item with such ID not exists "+rowId+""); + } else { + if (!this.obj.rowsAr[rowId]) + this._log(" Error! row with such ID not exists "+rowId+""); + } + } +},function(){ + +}); + +dataProcessor.wrap("sendAllData",function(){ + this._log(" Initiating data sending for all rows "); +},function(){ + +}); +dataProcessor.logSingle=function(data,id){ + var tdata = {}; + if (id) + tdata[id] = data; + else + tdata = data; + + var url = []; + for (var key in tdata) { + url.push("
"+key+""); + var suburl = []; + + for (var ikey in tdata[key]) + suburl.push(ikey+" = "+tdata[key][ikey]); + + url.push(suburl.join("
")); + url.push("
"); + } + return url.join(""); +} +dataProcessor.wrap("_sendData",function(data,rowId){ + if (rowId) + this._log(" Sending in one-by-one mode, current ID = "+rowId); + else + this._log(" Sending all data at once"); + this._log(" Server url: "+this.serverProcessor+" parameters"); + var url = []; + this._log("
"+dataProcessor.logSingle(data,rowId)+"
"); +},function(){ + +}); + + +dataProcessor.wrap("afterUpdate",function(that,b,c,d,xml){ + that._log(" Server response received details
"+(xml.xmlDoc.responseText||"").replace(/\&/g,"&").replace(//g,">")+"
"); + if (!that.xml_analize(xml)) return; + var atag=xml.doXPath("//data/action"); + if (!atag){ + that._log(" No actions found"); + var atag=xml.getXMLTopNode("data"); + if (!atag) that._log(" XML not valid"); + else that._log(" Incorrect content type - need to be text/xml"); + } +},function(){ + +}); + +dataProcessor.wrap("afterUpdateCallback",function(sid,tid,action){ + if (this.obj.mytype=="tree"){ + if (!this.obj._idpull[sid]) this._log("Incorrect SID, item with such ID not exists in grid"); + } else { + if (!this.obj.rowsAr[sid]) this._log("Incorrect SID, row with such ID not exists in grid"); + } + this._log(" Action: "+action+" SID:"+sid+" TID:"+tid); +},function(){ + +}); + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor_deprecated.js b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor_deprecated.js new file mode 100755 index 0000000000..9d8dc6b793 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxDataProcessor/sources/dhtmlxdataprocessor_deprecated.js @@ -0,0 +1,45 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ + + /** + * @desc: set function called after row updated + * @param: func - event handling function (or its name) + * @type: deprecated + * @topic: 10 + * @event: onAfterUpdate + * @eventdesc: Event raised after row updated on server side + * @eventparam: ID of clicked row + * @eventparam: type of command + * @eventparam: new Id, for _insert_ command + */ + dataProcessor.prototype.setOnAfterUpdate = function(ev){ + this.attachEvent("onAfterUpdate",ev); + } + + /** + * @desc: enable/disable debuging + * @param: mode - true/false + * @type: deprecated + */ + dataProcessor.prototype.enableDebug = function(mode){ + } + +/** +* @desc: set function called before server request sent ( can be used for including custom client server transport system) +* @param: func - event handling function +* @type: public +* @topic: 0 +* @event: onBeforeUpdate +* @eventdesc: Event occured in moment before data sent to server +* @eventparam: ID of item which need to be updated +* @eventparam: type of operation +* @eventreturns: false to block default sending routine +*/ + dataProcessor.prototype.setOnBeforeUpdateHandler=function(func){ + this.attachEvent("onBeforeDataSending",func); + }; \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxcommon.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxcommon.js new file mode 100755 index 0000000000..e8144c718a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxcommon.js @@ -0,0 +1,928 @@ +dhtmlx=function(obj){ + for (var a in obj) dhtmlx[a]=obj[a]; + return dhtmlx; //simple singleton +}; +dhtmlx.extend_api=function(name,map,ext){ + var t = window[name]; + if (!t) return; //component not defined + window[name]=function(obj){ + if (obj && typeof obj == "object" && !obj.tagName){ + var that = t.apply(this,(map._init?map._init(obj):arguments)); + //global settings + for (var a in dhtmlx) + if (map[a]) this[map[a]](dhtmlx[a]); + //local settings + for (var a in obj){ + if (map[a]) this[map[a]](obj[a]); + else if (a.indexOf("on")==0){ + this.attachEvent(a,obj[a]); + } + } + } else + var that = t.apply(this,arguments); + if (map._patch) map._patch(this); + return that||this; + }; + window[name].prototype=t.prototype; + if (ext) + dhtmlXHeir(window[name].prototype,ext); +}; + +dhtmlxAjax={ + get:function(url,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<3); + t.waitCall=callback; + t.loadXML(url) + return t; + }, + post:function(url,post,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<4); + t.waitCall=callback; + t.loadXML(url,true,post) + return t; + }, + getSync:function(url){ + return this.get(url,null,true) + }, + postSync:function(url,post){ + return this.post(url,post,null,true); + } +} + +/** + * @desc: xmlLoader object + * @type: private + * @param: funcObject - xml parser function + * @param: object - jsControl object + * @param: async - sync/async mode (async by default) + * @param: rSeed - enable/disable random seed ( prevent IE caching) + * @topic: 0 + */ +function dtmlXMLLoaderObject(funcObject, dhtmlObject, async, rSeed){ + this.xmlDoc=""; + + if (typeof (async) != "undefined") + this.async=async; + else + this.async=true; + + this.onloadAction=funcObject||null; + this.mainObject=dhtmlObject||null; + this.waitCall=null; + this.rSeed=rSeed||false; + return this; +}; +/** + * @desc: xml loading handler + * @type: private + * @param: dtmlObject - xmlLoader object + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ + var once = true; + this.check=function (){ + if ((dhtmlObject)&&(dhtmlObject.onloadAction != null)){ + if ((!dhtmlObject.xmlDoc.readyState)||(dhtmlObject.xmlDoc.readyState == 4)){ + if (!once) + return; + + once=false; //IE 5 fix + if (typeof dhtmlObject.onloadAction == "function") + dhtmlObject.onloadAction(dhtmlObject.mainObject, null, null, null, dhtmlObject); + + if (dhtmlObject.waitCall){ + dhtmlObject.waitCall.call(this,dhtmlObject); + dhtmlObject.waitCall=null; + } + } + } + }; + return this.check; +}; + +/** + * @desc: return XML top node + * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) + * @type: private + * @returns: top XML node + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName, oldObj){ + if (this.xmlDoc.responseXML){ + var temp = this.xmlDoc.responseXML.getElementsByTagName(tagName); + if(temp.length==0 && tagName.indexOf(":")!=-1) + var temp = this.xmlDoc.responseXML.getElementsByTagName((tagName.split(":"))[1]); + var z = temp[0]; + } else + var z = this.xmlDoc.documentElement; + + if (z){ + this._retry=false; + return z; + } + + if ((_isIE)&&(!this._retry)){ + //fall back to MS.XMLDOM + var xmlString = this.xmlDoc.responseText; + var oldObj = this.xmlDoc; + this._retry=true; + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=false; + this.xmlDoc["loadXM"+"L"](xmlString); + + return this.getXMLTopNode(tagName, oldObj); + } + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (oldObj||this.xmlDoc), + this.mainObject + ]); + + return document.createElement("DIV"); +}; + +/** + * @desc: load XML from string + * @type: private + * @param: xmlString - xml string + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ + { + try{ + var parser = new DOMParser(); + this.xmlDoc=parser.parseFromString(xmlString, "text/xml"); + } + catch (e){ + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=this.async; + this.xmlDoc["loadXM"+"L"](xmlString); + } + } + + this.onloadAction(this.mainObject, null, null, null, this); + + if (this.waitCall){ + this.waitCall(); + this.waitCall=null; + } +} +/** + * @desc: load XML + * @type: private + * @param: filePath - xml file path + * @param: postMode - send POST request + * @param: postVars - list of vars for post request + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXML=function(filePath, postMode, postVars, rpc){ + if (this.rSeed) + filePath+=((filePath.indexOf("?") != -1) ? "&" : "?")+"a_dhx_rSeed="+(new Date()).valueOf(); + this.filePath=filePath; + + if ((!_isIE)&&(window.XMLHttpRequest)) + this.xmlDoc=new XMLHttpRequest(); + else { + this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"); + } + + if (this.async) + this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); + this.xmlDoc.open(postMode ? "POST" : "GET", filePath, this.async); + + if (rpc){ + this.xmlDoc.setRequestHeader("User-Agent", "dhtmlxRPC v0.1 ("+navigator.userAgent+")"); + this.xmlDoc.setRequestHeader("Content-type", "text/xml"); + } + + else if (postMode) + this.xmlDoc.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); + + this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"); + this.xmlDoc.send(null||postVars); + + if (!this.async) + (new this.waitLoadFunction(this))(); +}; +/** + * @desc: destructor, cleans used memory + * @type: private + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.destructor=function(){ + this._filterXPath = null; + this._getAllNamedChilds = null; + this._retry = null; + this.async = null; + this.rSeed = null; + this.filePath = null; + this.onloadAction = null; + this.mainObject = null; + this.xmlDoc = null; + this.doXPath = null; + this.doXPathOpera = null; + this.doXSLTransToObject = null; + this.doXSLTransToString = null; + this.loadXML = null; + this.loadXMLString = null; + // this.waitLoadFunction = null; + this.doSerialization = null; + this.xmlNodeToJSON = null; + this.getXMLTopNode = null; + this.setXSLParamValue = null; + return null; +} + +dtmlXMLLoaderObject.prototype.xmlNodeToJSON = function(node){ + var t={}; + for (var i=0; i-1) + _isChrome=true; + +if ((navigator.userAgent.indexOf('Safari') != -1)||(navigator.userAgent.indexOf('Konqueror') != -1)){ + var _KHTMLrv = parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Safari')+7, 5)); + + if (_KHTMLrv > 525){ //mimic FF behavior for Safari 3.1+ + _isFF=true; + var _FFrv = 1.9; + } else + _isKHTML=true; +} else if (navigator.userAgent.indexOf('Opera') != -1){ + _isOpera=true; + _OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Opera')+6, 3)); +} + + +else if (navigator.appName.indexOf("Microsoft") != -1){ + _isIE=true; + if (navigator.appVersion.indexOf("MSIE 8.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; + if (navigator.appVersion.indexOf("MSIE 9.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; +} else { + _isFF=true; + var _FFrv = parseFloat(navigator.userAgent.split("rv:")[1]) +} + + +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPath=function(xpathExp, docObj, namespace, result_type){ + if (_isKHTML || (!_isIE && !window.XPathResult)) + return this.doXPathOpera(xpathExp, docObj); + + if (_isIE){ //IE + if (!docObj) + if (!this.xmlDoc.nodeName) + docObj=this.xmlDoc.responseXML + else + docObj=this.xmlDoc; + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (namespace != null) + docObj.setProperty("SelectionNamespaces", "xmlns:xsl='"+namespace+"'"); // + + if (result_type == 'single'){ + return docObj.selectSingleNode(xpathExp); + } + else { + return docObj.selectNodes(xpathExp)||new Array(0); + } + } else { //Mozilla + var nodeObj = docObj; + + if (!docObj){ + if (!this.xmlDoc.nodeName){ + docObj=this.xmlDoc.responseXML + } + else { + docObj=this.xmlDoc; + } + } + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (docObj.nodeName.indexOf("document") != -1){ + nodeObj=docObj; + } + else { + nodeObj=docObj; + docObj=docObj.ownerDocument; + } + var retType = XPathResult.ANY_TYPE; + + if (result_type == 'single') + retType=XPathResult.FIRST_ORDERED_NODE_TYPE + var rowsCol = new Array(); + var col = docObj.evaluate(xpathExp, nodeObj, function(pref){ + return namespace + }, retType, null); + + if (retType == XPathResult.FIRST_ORDERED_NODE_TYPE){ + return col.singleNodeValue; + } + var thisColMemb = col.iterateNext(); + + while (thisColMemb){ + rowsCol[rowsCol.length]=thisColMemb; + thisColMemb=col.iterateNext(); + } + return rowsCol; + } +} + +function _dhtmlxError(type, name, params){ + if (!this.catches) + this.catches=new Array(); + + return this; +} + +_dhtmlxError.prototype.catchError=function(type, func_name){ + this.catches[type]=func_name; +} +_dhtmlxError.prototype.throwError=function(type, name, params){ + if (this.catches[type]) + return this.catches[type](type, name, params); + + if (this.catches["ALL"]) + return this.catches["ALL"](type, name, params); + + alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]); + return null; +} + +window.dhtmlxError=new _dhtmlxError(); + + +//opera fake, while 9.0 not released +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPathOpera=function(xpathExp, docObj){ + //this is fake for Opera + var z = xpathExp.replace(/[\/]+/gi, "/").split('/'); + var obj = null; + var i = 1; + + if (!z.length) + return []; + + if (z[0] == ".") + obj=[docObj]; else if (z[0] == ""){ + obj=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(z[i].replace(/\[[^\]]*\]/g, "")); + i++; + } else + return []; + + for (i; i < z.length; i++)obj=this._getAllNamedChilds(obj, z[i]); + + if (z[i-1].indexOf("[") != -1) + obj=this._filterXPath(obj, z[i-1]); + return obj; +} + +dtmlXMLLoaderObject.prototype._filterXPath=function(a, b){ + var c = new Array(); + var b = b.replace(/[^\[]*\[\@/g, "").replace(/[\[\]\@]*/g, ""); + + for (var i = 0; i < a.length; i++) + if (a[i].getAttribute(b)) + c[c.length]=a[i]; + + return c; +} +dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(a, b){ + var c = new Array(); + + if (_isKHTML) + b=b.toUpperCase(); + + for (var i = 0; i < a.length; i++)for (var j = 0; j < a[i].childNodes.length; j++){ + if (_isKHTML){ + if (a[i].childNodes[j].tagName&&a[i].childNodes[j].tagName.toUpperCase() == b) + c[c.length]=a[i].childNodes[j]; + } + + else if (a[i].childNodes[j].tagName == b) + c[c.length]=a[i].childNodes[j]; + } + + return c; +} + +function dhtmlXHeir(a, b){ + for (var c in b) + if (typeof (b[c]) == "function") + a[c]=b[c]; + return a; +} + +function dhtmlxEvent(el, event, handler){ + if (el.addEventListener) + el.addEventListener(event, handler, false); + + else if (el.attachEvent) + el.attachEvent("on"+event, handler); +} + +//============= XSL Extension =================================== + +dtmlXMLLoaderObject.prototype.xslDoc=null; +dtmlXMLLoaderObject.prototype.setXSLParamValue=function(paramName, paramValue, xslDoc){ + if (!xslDoc) + xslDoc=this.xslDoc + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML; + var item = + this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+paramName+"']", xslDoc, + "http:/\/www.w3.org/1999/XSL/Transform", "single"); + + if (item != null) + item.firstChild.nodeValue=paramValue +} +dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(xslDoc, xmlDoc){ + if (!xslDoc) + xslDoc=this.xslDoc; + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML + + if (!xmlDoc) + xmlDoc=this.xmlDoc; + + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + + //MOzilla + if (!_isIE){ + if (!this.XSLProcessor){ + this.XSLProcessor=new XSLTProcessor(); + this.XSLProcessor.importStylesheet(xslDoc); + } + var result = this.XSLProcessor.transformToDocument(xmlDoc); + } else { + var result = new ActiveXObject("Msxml2.DOMDocument.3.0"); + try{ + xmlDoc.transformNodeToObject(xslDoc, result); + }catch(e){ + result = xmlDoc.transformNode(xslDoc); + } + } + return result; +} + +dtmlXMLLoaderObject.prototype.doXSLTransToString=function(xslDoc, xmlDoc){ + var res = this.doXSLTransToObject(xslDoc, xmlDoc); + if(typeof(res)=="string") + return res; + return this.doSerialization(res); +} + +dtmlXMLLoaderObject.prototype.doSerialization=function(xmlDoc){ + if (!xmlDoc) + xmlDoc=this.xmlDoc; + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + if (!_isIE){ + var xmlSerializer = new XMLSerializer(); + return xmlSerializer.serializeToString(xmlDoc); + } else + return xmlDoc.xml; +} + +/** +* @desc: +* @type: private +*/ +dhtmlxEventable=function(obj){ + obj.attachEvent=function(name, catcher, callObj){ + name='ev_'+name.toLowerCase(); + if (!this[name]) + this[name]=new this.eventCatcher(callObj||this); + + return(name+':'+this[name].addEvent(catcher)); //return ID (event name & event ID) + } + obj.callEvent=function(name, arg0){ + name='ev_'+name.toLowerCase(); + if (this[name]) + return this[name].apply(this, arg0); + return true; + } + obj.checkEvent=function(name){ + return (!!this['ev_'+name.toLowerCase()]) + } + obj.eventCatcher=function(obj){ + var dhx_catch = []; + var z = function(){ + var res = true; + for (var i = 0; i < dhx_catch.length; i++){ + if (dhx_catch[i] != null){ + var zr = dhx_catch[i].apply(obj, arguments); + res=res&&zr; + } + } + return res; + } + z.addEvent=function(ev){ + if (typeof (ev) != "function") + ev=eval(ev); + if (ev) + return dhx_catch.push(ev)-1; + return false; + } + z.removeEvent=function(id){ + dhx_catch[id]=null; + } + return z; + } + obj.detachEvent=function(id){ + if (id != false){ + var list = id.split(':'); //get EventName and ID + this[list[0]].removeEvent(list[1]); //remove event + } + } + obj.detachAllEvents = function(){ + for (var name in this){ + if (name.indexOf("ev_")==0) + delete this[name]; + } + } +} diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.css b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.css new file mode 100755 index 0000000000..65f4f16f0b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.css @@ -0,0 +1,136 @@ +.defaultTreeTable{ + margin : 0px; + padding : 0px; + border : 0px; +} +.containerTableStyle { overflow : auto; position:relative; top:0; font-size : 12px; -khtml-user-select: none;} +.containerTableStyleRTL span { direction: rtl; unicode-bidi: bidi-override; } +.containerTableStyleRTL { direction: rtl; overflow : auto; position:relative; top:0; font-size : 12px;} +.standartTreeRow { font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.selectedTreeRow{ background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.dragAndDropRow{ background-color : navy; color:white; } +.standartTreeRow_lor{ text-decoration:underline; background-color : #FFFFF0; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } +.selectedTreeRow_lor{ text-decoration:underline; background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif; font-size : 12px; -moz-user-select: none; } + +.standartTreeImage{ width:18px; height:18px; overflow:hidden; border:0; padding:0; margin:0; +font-size:1px; } +.hiddenRow { width:1px; overflow:hidden; } +.dragSpanDiv,.dragSpanDiv td{ font-size : 12px; background-color:white; z-index:999; } +.a_dhx_hidden_input{ position:absolute; top:-1px; left:-1px; width:1px; height:1px; border:none; background:none; } +.a_dhx_hidden_input{ position:absolute; top:-1px; left:-1px; width:1px; height:1px; border:none; background:none; } + +.selectionBox{ +background-color: #FFFFCC; +} +.selectionBar { + top:0; + background-color: Black; + position:absolute; + overflow:hidden; + height: 2px; + z-index : 11; +} + +.intreeeditRow{ + font-size:8pt; height:16px; border:1px solid silver; padding:0; margin:0; + margin-left:4px; + -moz-user-select: text; + -khtml-user-select: text; +} +.dhx_tree_textSign{ + font-size:8pt; + font-family:monospace; + width:21px; + color:black; + padding:0px; + margin:0px; + cursor:pointer; + text-align: center; +} +.dhx_tree_opacity{ + opacity:0; + -moz-opacity:0; + filter:alpha(opacity=0); +} +.dhx_bg_img_fix{ +width:18px; +height:18px; +background-repeat: no-repeat; +background-position: center; +background-position-x: center; +background-position-y: center; +} + +.dhxtree_dhx_black, .dhxtree_dhx_skyblue{ + background:white; + color:black; +} +*html .dhxtree_dhx_skyblue .standartTreeRow, *html .dhxtree_dhx_skyblue .standartTreeRow_lor{ + border-right:0px solid red; + border-left:0px solid red; +} +*html .dhxtree_dhx_skyblue span.standartTreeRow, *html .dhxtree_dhx_skyblue span.standartTreeRow_lor{ + margin-left:1px; +} + +.dhxtree_dhx_skyblue .standartTreeRow, .dhxtree_dhx_skyblue .standartTreeRow_lor{ + border-right:1px solid transparent; + border-left: 1px solid transparent; + font-family:Tahoma; + font-size:11px !important; + overflow:hidden; + padding:0px 0px 0px 0px; +} +.dhxtree_dhx_skyblue .selectedTreeRow_lor, .dhxtree_dhx_skyblue .selectedTreeRow{ + background-color:white; + background-image:url(imgs/sky_blue_sel_tree.png); + background-repeat:repeat-x; + border:1px solid #FFB951; + color:black; + + line-height:17px; + + font-size:11px !important; + font-family:Tahoma; + overflow:hidden; +} +html > body /**/ .dhxtree_dhx_skyblue .selectedTreeRow, html > body /**/ .dhxtree_dhx_skyblue .selectedTreeRow_lor{ + padding:1px 0px 1px 0px; + line-height:normal; + display:inline-block !ie; + height:13px; +} +body:nth-of-type(1) .dhxtree_dhx_skyblue span.selectedTreeRow, body:nth-of-type(1) .dhxtree_dhx_skyblue span.selectedTreeRow_lor{ + padding:1px 0px 1px 0px; + display:inline-block; + padding-top:0px; + height:13px; +} +body:nth-of-type(1) .dhxtree_dhx_skyblue span.standartTreeRow, body:nth-of-type(1) .dhxtree_dhx_skyblue span.standartTreeRow_lor{ + display:inline-block; + height:14px; +} + +.dhxtree_dhx_web .selectedTreeRow_lor, .dhxtree_dhx_web .selectedTreeRow{ + background-color:transparent; + +} +.dhxtree_dhx_web span.selectedTreeRow_lor , .dhxtree_dhx_web span.selectedTreeRow{ + background-color:#ACDAF0; + color:black; +} + +.dhxtree_dhx_web td.standartTreeRow, .dhxtree_dhx_web td.selectedTreeRow{ + padding-left:2px; +} +.dhxtree_dhx_web span.standartTreeRow, .dhxtree_dhx_web span.selectedTreeRow{ + padding-left:3px !important; +} + + + +.dhxtree_dhx_web .standartTreeRow, .dhxtree_dhx_web .standartTreeRow, .dhxtree_dhx_web .selectedTreeRow_lor, .dhxtree_dhx_web .selectedTreeRow{ + font-size:12px; + font-family:Tahoma; + overflow:hidden; +} diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.js new file mode 100755 index 0000000000..b5816eee04 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/dhtmlxtree.js @@ -0,0 +1,211 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ + + +function xmlPointer(data){this.d=data;};xmlPointer.prototype={text:function(){if (!_isFF)return this.d.xml;var x = new XMLSerializer();return x.serializeToString(this.d);}, + get:function(name){return this.d.getAttribute(name);}, + exists:function(){return !!this.d }, + content:function(){return this.d.firstChild?this.d.firstChild.data:"";}, + each:function(name,f,t,i){var a=this.d.childNodes;var c=new xmlPointer();if (a.length)for (i=i||0;i0){beforeNode=new Object;beforeNode.tr=parentObject.childNodes[0].tr.previousSibling;};parentObject._has_top=true;for (ik=Count;ik>0;ik--)Nodes[ik]=Nodes[ik-1];Count=0;break;}}};var n;if (!(n=this._idpull[itemId])|| n.span!=-1){n=Nodes[Count]=new dhtmlXTreeItemObject(itemId,itemText,parentObject,this,itemActionHandler,1);itemId = Nodes[Count].id;parentObject.childsCount++;};if(!n.htmlNode){n.label=itemText;n.htmlNode=this._createItem((this.checkBoxOff?1:0),n);n.htmlNode.objBelong=n;};if(image1)n.images[0]=image1;if(image2)n.images[1]=image2;if(image3)n.images[2]=image3;var tr=this._drawNewTr(n.htmlNode);if ((this.XMLloadingWarning)||(this._hAdI)) + n.htmlNode.parentNode.parentNode.style.display="none";if ((beforeNode)&&(beforeNode.tr.nextSibling)) + parentObject.htmlNode.childNodes[0].insertBefore(tr,beforeNode.tr.nextSibling);else + if (this.parsingOn==parentObject.id){this.parsedArray[this.parsedArray.length]=tr;}else + parentObject.htmlNode.childNodes[0].appendChild(tr);if ((beforeNode)&&(!beforeNode.span)) beforeNode=null;if (this.XMLsource)if ((childs)&&(childs!=0)) n.XMLload=0;else n.XMLload=1;n.tr=tr;tr.nodem=n;if (parentObject.itemId==0)tr.childNodes[0].className="hiddenRow";if ((parentObject._r_logic)||(this._frbtr)) + this._setSrc(n.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0],this.imPath+this.radioArray[0]);if (optionStr){var tempStr=optionStr.split(",");for (var i=0;i=2){this._correctPlus(Nodes[parentObject.childsCount-2]);this._correctLine(Nodes[parentObject.childsCount-2]);};if (parentObject.childsCount!=2)this._correctPlus(Nodes[0]);if (this.tscheck)this._correctCheckStates(parentObject);if (this._onradh){if (this.xmlstate==1){var old=this.onXLE;this.onXLE=function(id){this._onradh(itemId);if (old)old(id);}}else + this._onradh(itemId);}};return n;};dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){var parentObject=this._globalIdStorageFind(parentId);if (!parentObject)return (-1);var nodez=this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children);return nodez;};dhtmlXTreeObject.prototype.insertNewChild=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){return this.insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children);};dhtmlXTreeObject.prototype._parseXMLTree=function(a,b,c,d,xml){var p=new xmlPointer(xml.getXMLTopNode("tree"));a._parse(p);a._p=p;};dhtmlXTreeObject.prototype._parseItem=function(c,temp,preNode,befNode){var id;if (this._srnd && (!this._idpull[id=c.get("id")] || !this._idpull[id].span)) + {this._addItemSRND(temp.id,id,c);return;};var a=c.get_all();if ((typeof(this.waitUpdateXML)=="object")&&(!this.waitUpdateXML[a.id])){this._parse(c,a.id,1);return;};var zST=[];if (a.select)zST.push("SELECT");if (a.top)zST.push("TOP");if (a.call)this.nodeAskingCall=a.id;if (a.checked==-1)zST.push("HCHECKED");else if (a.checked)zST.push("CHECKED");if (a.open)zST.push("OPEN");if (this.waitUpdateXML){if (this._globalIdStorageFind(a.id)) + var newNode=this.updateItem(a.id,a.text,a.im0,a.im1,a.im2,a.checked);else{if (this.npl==0)zST.push("TOP");else preNode=temp.childNodes[this.npl];var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,0,preNode);preNode=null;}}else + var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,(befNode||0),preNode);if (a.tooltip)newNode.span.parentNode.parentNode.title=a.tooltip;if (a.style)if (newNode.span.style.cssText)newNode.span.style.cssText+=(";"+a.style);else + newNode.span.setAttribute("style",newNode.span.getAttribute("style")+";"+a.style);if (a.radio)newNode._r_logic=true;if (a.nocheckbox){var check_node=newNode.span.parentNode.previousSibling.previousSibling;check_node.childNodes[0].style.display='none';if (window._KHTMLrv)check_node.style.display="none";newNode.nocheckbox=true;};if (a.disabled){if (a.checked!=null)this._setCheck(newNode,a.checked);this.disableCheckbox(newNode,1);};newNode._acc=a.child||0;if (this.parserExtension)this.parserExtension._parseExtension.call(this,c,a,(temp?temp.id:0));this.setItemColor(newNode,a.aCol,a.sCol);if (a.locked=="1")this.lockItem(newNode.id,true,true);if ((a.imwidth)||(a.imheight)) this.setIconSize(a.imwidth,a.imheight,newNode);if ((a.closeable=="0")||(a.closeable=="1")) this.setItemCloseable(newNode,a.closeable);var zcall="";if (a.topoffset)this.setItemTopOffset(newNode,a.topoffset);if ((!this.slowParse)||(typeof(this.waitUpdateXML)=="object")){if (c.sub_exists("item")) + zcall=this._parse(c,a.id,1);};if (zcall!="")this.nodeAskingCall=zcall;c.each("userdata",function(u){this.setUserData(c.get("id"),u.get("name"),u.content());},this) + + + };dhtmlXTreeObject.prototype._parse=function(p,parentId,level,start){if (this._srnd && !this.parentObject.offsetHeight){var self=this;return window.setTimeout(function(){self._parse(p,parentId,level,start);},100);};if (!p.exists()) return;this.skipLock=true;if (!parentId){parentId=p.get("id");if (p.get("radio")) + this.htmlNode._r_logic=true;this.parsingOn=parentId;this.parsedArray=new Array();this.setCheckList="";this.nodeAskingCall="";};var temp=this._globalIdStorageFind(parentId);if (!temp)return dhtmlxError.throwError("DataStructure","XML refers to not existing parent");this.parsCount=this.parsCount?(this.parsCount+1):1;this.XMLloadingWarning=1;if ((temp.childsCount)&&(!start)&&(!this._edsbps)&&(!temp._has_top)) + var preNode=0;else + var preNode=0;this.npl=0;p.each("item",function(c,i){temp.XMLload=1;if ((this._epgps)&&(this._epgpsC==this.npl)){this._setNextPageSign(temp,this.npl+1*(start||0),level,node);return -1;};this._parseItem(c,temp,0,preNode);this.npl++;},this,start);if (!level){p.each("userdata",function(u){this.setUserData(p.get("id"),u.get("name"),u.content());},this);temp.XMLload=1;if (this.waitUpdateXML){this.waitUpdateXML=false;for (var i=temp.childsCount-1;i>=0;i--)if (temp.childNodes[i]._dmark)this.deleteItem(temp.childNodes[i].id);};var parsedNodeTop=this._globalIdStorageFind(this.parsingOn);for (var i=0;i1){if ( ( (Nodes[1].style.display!="none")|| (mode==1) ) && (mode!=2) ) {this.allTree.childNodes[0].border = "1";this.allTree.childNodes[0].border = "0";nodestyle="none";}else nodestyle="";for (var i=1;i7)td2.style.width="999999px";else if (!window._KHTMLrv)td2.style.width="100%";itemObject.span.innerHTML=itemObject.label;td2.appendChild(itemObject.span);td2.parentObject=itemObject;td1.parentObject=itemObject;td2.onclick=this.onRowSelect;td1.onclick=this.onRowClick;td2.ondblclick=this.onRowClick2;if (this.ettip)tr.title=itemObject.label;if (this.dragAndDropOff){if (this._aimgs){this.dragger.addDraggableItem(td12,this);td12.parentObject=itemObject;};this.dragger.addDraggableItem(td2,this);};itemObject.span.style.paddingLeft="5px";itemObject.span.style.paddingRight="5px";td2.style.verticalAlign="";td2.style.fontSize="10pt";td2.style.cursor=this.style_pointer;tr.appendChild(td1);tr.appendChild(td11);tr.appendChild(td12);tr.appendChild(td2);tbody.appendChild(tr);table.appendChild(tbody);if (this.ehlt || this.checkEvent("onMouseIn")|| this.checkEvent("onMouseOut")){tr.onmousemove=this._itemMouseIn;tr[(_isIE)?"onmouseleave":"onmouseout"]=this._itemMouseOut;};return table;};dhtmlXTreeObject.prototype.setImagePath=function( newPath ){this.imPath=newPath;this.iconURL=newPath;};dhtmlXTreeObject.prototype.setIconPath=function(path){this.iconURL=path;};dhtmlXTreeObject.prototype.setOnRightClickHandler=function(func){this.attachEvent("onRightClick",func);};dhtmlXTreeObject.prototype.setOnClickHandler=function(func){this.attachEvent("onClick",func);};dhtmlXTreeObject.prototype.setOnSelectStateChange=function(func){this.attachEvent("onSelect",func);};dhtmlXTreeObject.prototype.setXMLAutoLoading=function(filePath){this.XMLsource=filePath;};dhtmlXTreeObject.prototype.setOnCheckHandler=function(func){this.attachEvent("onCheck",func);};dhtmlXTreeObject.prototype.setOnOpenHandler=function(func){this.attachEvent("onOpenStart",func);};dhtmlXTreeObject.prototype.setOnOpenStartHandler=function(func){this.attachEvent("onOpenStart",func);};dhtmlXTreeObject.prototype.setOnOpenEndHandler=function(func){this.attachEvent("onOpenEnd",func);};dhtmlXTreeObject.prototype.setOnDblClickHandler=function(func){this.attachEvent("onDblClick",func);};dhtmlXTreeObject.prototype.openAllItems=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;this._xopenAll(temp);};dhtmlXTreeObject.prototype.getOpenState=function(itemId){var temp=this._globalIdStorageFind(itemId);if (!temp)return "";return this._getOpenState(temp);};dhtmlXTreeObject.prototype.closeAllItems=function(itemId) + {if (itemId===window.undefined)itemId=this.rootId;var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;this._xcloseAll(temp);this.allTree.childNodes[0].border = "1";this.allTree.childNodes[0].border = "0";};dhtmlXTreeObject.prototype.setUserData=function(itemId,name,value){var sNode=this._globalIdStorageFind(itemId,0,true);if (!sNode)return;if(name=="hint")sNode.htmlNode.childNodes[0].childNodes[0].title=value;if (typeof(sNode.userData["t_"+name])=="undefined"){if (!sNode._userdatalist)sNode._userdatalist=name;else sNode._userdatalist+=","+name;};sNode.userData["t_"+name]=value;};dhtmlXTreeObject.prototype.getUserData=function(itemId,name){var sNode=this._globalIdStorageFind(itemId,0,true);if (!sNode)return;return sNode.userData["t_"+name];};dhtmlXTreeObject.prototype.getItemColor=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;var res= new Object();if (temp.acolor)res.acolor=temp.acolor;if (temp.scolor)res.scolor=temp.scolor;return res;};dhtmlXTreeObject.prototype.setItemColor=function(itemId,defaultColor,selectedColor) + {if ((itemId)&&(itemId.span)) + var temp=itemId;else + var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;else {if (temp.i_sel){if (selectedColor)temp.span.style.color=selectedColor;}else + {if (defaultColor)temp.span.style.color=defaultColor;};if (selectedColor)temp.scolor=selectedColor;if (defaultColor)temp.acolor=defaultColor;}};dhtmlXTreeObject.prototype.getItemText=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;return(temp.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML);};dhtmlXTreeObject.prototype.getParentId=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if ((!temp)||(!temp.parentObject)) return "";return temp.parentObject.id;};dhtmlXTreeObject.prototype.changeItemId=function(itemId,newItemId) + {if (itemId==newItemId)return;var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;temp.id=newItemId;temp.span.contextMenuId=newItemId;this._idpull[newItemId]=this._idpull[itemId];delete this._idpull[itemId];};dhtmlXTreeObject.prototype.doCut=function(){if (this.nodeCut)this.clearCut();this.nodeCut=(new Array()).concat(this._selected);for (var i=0;i=2){this._correctPlus(Nodes[targetObject.childsCount-2]);this._correctLine(Nodes[targetObject.childsCount-2]);};this._correctPlus(Nodes[targetObject.childsCount-1]);if (this.tscheck)this._correctCheckStates(targetObject);if (oldTree.tscheck)oldTree._correctCheckStates(z);};if (c>1){oldTree._correctPlus(z.childNodes[c-2]);oldTree._correctLine(z.childNodes[c-2]);};oldTree._correctPlus(z);oldTree._correctLine(z);this.callEvent("onDrop",[itemObject.id,targetObject.id,(beforeNode?beforeNode.id:null),oldTree,targetObject.treeNod]);return itemObject.id;};dhtmlXTreeObject.prototype._clearStyles=function(itemObject){if (!itemObject.htmlNode)return;var td1=itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[1];var td3=td1.nextSibling.nextSibling;itemObject.span.innerHTML=itemObject.label;itemObject.i_sel=false;if (itemObject._aimgs)this.dragger.removeDraggableItem(td1.nextSibling);if (this.checkBoxOff){td1.childNodes[0].style.display="";td1.childNodes[0].onclick=this.onCheckBoxClick;this._setSrc(td1.childNodes[0],this.imPath+this.checkArray[itemObject.checkstate]);}else td1.childNodes[0].style.display="none";td1.childNodes[0].treeNod=this;this.dragger.removeDraggableItem(td3);if (this.dragAndDropOff)this.dragger.addDraggableItem(td3,this);if (this._aimgs)this.dragger.addDraggableItem(td1.nextSibling,this);td3.childNodes[0].className="standartTreeRow";td3.onclick=this.onRowSelect;td3.ondblclick=this.onRowClick2;td1.previousSibling.onclick=this.onRowClick;this._correctLine(itemObject);this._correctPlus(itemObject);for (var i=0;i0)) + {if (node.childNodes[i].unParsed)var zb=this._getAllScraggyItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllScraggyItems(node.childNodes[i]) + + if (zb)if (z)z+=this.dlmtr+zb;else z=zb;}else + if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;};return z;};dhtmlXTreeObject.prototype._getAllFatItems =function(node) + {var z="";for (var i=0;i0)) + {if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;if (node.childNodes[i].unParsed)var zb=this._getAllFatItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllFatItems(node.childNodes[i]) + + if (zb)z+=this.dlmtr+zb;}};return z;};dhtmlXTreeObject.prototype._getAllSubItems =function(itemId,z,node) + {if (node)temp=node;else {var temp=this._globalIdStorageFind(itemId);};if (!temp)return 0;z="";for (var i=0;i=z.childsCount)) return null;return z.childNodes[index].id;};dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){var z=this._globalIdStorageFind(itemId);if ((!z)||(index>=z.childsCount)) return null;return z.childNodes[index].id;};dhtmlXTreeObject.prototype.setDragHandler=function(func){this.attachEvent("onDrag",func);};dhtmlXTreeObject.prototype._clearMove=function(){if (this._lastMark){this._lastMark.className=this._lastMark.className.replace(/dragAndDropRow/g,"");this._lastMark=null;};this.allTree.className=this.allTree.className.replace(" selectionBox","");};dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode,rmode){if (mode=="temporary_disabled"){this.dADTempOff=false;mode=true;}else + this.dADTempOff=true;this.dragAndDropOff=convertStringToBoolean(mode);if (this.dragAndDropOff)this.dragger.addDragLanding(this.allTree,this);if (arguments.length>1)this._ddronr=(!convertStringToBoolean(rmode));};dhtmlXTreeObject.prototype._setMove=function(htmlNode,x,y){if (htmlNode.parentObject.span){var a1=getAbsoluteTop(htmlNode);var a2=getAbsoluteTop(this.allTree)-this.allTree.scrollTop;this.dadmodec=this.dadmode;this.dadmodefix=0;var zN=htmlNode.parentObject.span;zN.className+=" dragAndDropRow";this._lastMark=zN;this._autoScroll(null,a1,a2);}};dhtmlXTreeObject.prototype._autoScroll=function(node,a1,a2){if (this.autoScroll){if (node){a1=getAbsoluteTop(node);a2=getAbsoluteTop(this.allTree);};if ( (a1-a2-parseInt(this.allTree.scrollTop))>(parseInt(this.allTree.offsetHeight)-50) ) + this.allTree.scrollTop=parseInt(this.allTree.scrollTop)+20;if ( (a1-a2)<(parseInt(this.allTree.scrollTop)+30) ) + this.allTree.scrollTop=parseInt(this.allTree.scrollTop)-20;}};dhtmlXTreeObject.prototype._createDragNode=function(htmlObject,e){if (!this.dADTempOff)return null;var obj=htmlObject.parentObject;if (!this.callEvent("onBeforeDrag",[obj.id])) return null;if (!obj.i_sel)this._selectItem(obj,e);var dragSpan=document.createElement('div');var text=new Array();if (this._itim_dg)for (var i=0;i"+this._selected[i].span.innerHTML+"";else + text=this.getSelectedItemText().split(this.dlmtr);dragSpan.innerHTML=text.join("");dragSpan.style.position="absolute";dragSpan.className="dragSpanDiv";this._dragged=(new Array()).concat(this._selected);return dragSpan;};dhtmlXTreeObject.prototype._focusNode=function(item){var z=getAbsoluteTop(item.htmlNode)-getAbsoluteTop(this.allTree);if ((z>(this.allTree.offsetHeight-30))||(z<0)) + this.allTree.scrollTop=z+this.allTree.scrollTop;};dhtmlXTreeObject.prototype._preventNsDrag=function(e){if ((e)&&(e.preventDefault)) {e.preventDefault();return false;};return false;};dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){if (this._autoOpenTimer)clearTimeout(this._autoOpenTimer);if (!targetHtmlObject.parentObject){targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0];this.dadmodec=0;};this._clearMove();var z=sourceHtmlObject.parentObject.treeNod;if ((z)&&(z._clearMove)) z._clearMove("");if ((!this.dragMove)||(this.dragMove())) + {if ((!z)||(!z._clearMove)||(!z._dragged)) var col=new Array(sourceHtmlObject.parentObject);else var col=z._dragged;var trg=targetHtmlObject.parentObject;for (var i=0;i2)?(sNode.checkstate-3):sNode.checkstate);this._setCheck(sNode);if (sNode.dscheck<3)sNode.dscheck=false;};dhtmlXTreeObject.prototype.setEscapingMode=function(mode){this.utfesc=mode;};dhtmlXTreeObject.prototype.enableHighlighting=function(mode) {this.ehlt=true;this.ehlta=convertStringToBoolean(mode);};dhtmlXTreeObject.prototype._itemMouseOut=function(){var that=this.childNodes[3].parentObject;var tree=that.treeNod;tree.callEvent("onMouseOut",[that.id]);if (that.id==tree._l_onMSI)tree._l_onMSI=null;if (!tree.ehlta)return;that.span.className=that.span.className.replace("_lor","");};dhtmlXTreeObject.prototype._itemMouseIn=function(){var that=this.childNodes[3].parentObject;var tree=that.treeNod;if (tree._l_onMSI!=that.id)tree.callEvent("onMouseIn",[that.id]);tree._l_onMSI=that.id;if (!tree.ehlta)return;that.span.className=that.span.className.replace("_lor","");that.span.className=that.span.className.replace(/((standart|selected)TreeRow)/,"$1_lor");};dhtmlXTreeObject.prototype.enableActiveImages=function(mode){this._aimgs=convertStringToBoolean(mode);};dhtmlXTreeObject.prototype.focusItem=function(itemId){var sNode=this._globalIdStorageFind(itemId);if (!sNode)return (0);this._focusNode(sNode);};dhtmlXTreeObject.prototype.getAllSubItems =function(itemId){return this._getAllSubItems(itemId);};dhtmlXTreeObject.prototype.getAllChildless =function(){return this._getAllScraggyItems(this.htmlNode);};dhtmlXTreeObject.prototype.getAllLeafs=dhtmlXTreeObject.prototype.getAllChildless;dhtmlXTreeObject.prototype._getAllScraggyItems =function(node) + {var z="";for (var i=0;i0)) + {if (node.childNodes[i].unParsed)var zb=this._getAllScraggyItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllScraggyItems(node.childNodes[i]) + + if (zb)if (z)z+=this.dlmtr+zb;else z=zb;}else + if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;};return z;};dhtmlXTreeObject.prototype._getAllFatItems =function(node) + {var z="";for (var i=0;i0)) + {if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;if (node.childNodes[i].unParsed)var zb=this._getAllFatItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllFatItems(node.childNodes[i]) + + if (zb)z+=this.dlmtr+zb;}};return z;};dhtmlXTreeObject.prototype.getAllItemsWithKids =function(){return this._getAllFatItems(this.htmlNode);};dhtmlXTreeObject.prototype.getAllFatItems=dhtmlXTreeObject.prototype.getAllItemsWithKids;dhtmlXTreeObject.prototype.getAllChecked=function(){return this._getAllChecked("","",1);};dhtmlXTreeObject.prototype.getAllUnchecked=function(itemId){if (itemId)itemId=this._globalIdStorageFind(itemId);return this._getAllChecked(itemId,"",0);};dhtmlXTreeObject.prototype.getAllPartiallyChecked=function(){return this._getAllChecked("","",2);};dhtmlXTreeObject.prototype.getAllCheckedBranches=function(){var temp= this._getAllChecked("","",1);if (temp!="")temp+=this.dlmtr;return temp+this._getAllChecked("","",2);};dhtmlXTreeObject.prototype._getAllChecked=function(htmlNode,list,mode){if (!htmlNode)htmlNode=this.htmlNode;if (htmlNode.checkstate==mode)if (!htmlNode.nocheckbox){if (list)list+=this.dlmtr+htmlNode.id;else list=htmlNode.id;};var j=htmlNode.childsCount;for (var i=0;i";temp.span.style.paddingRight=temp.span.style.paddingLeft='0px';temp.span.onclick = temp.span.ondblclick= function(e){(e||event).cancelBubble = true;};temp.span.childNodes[0].value=editText;temp.span.childNodes[0].onselectstart=function(e){(e||event).cancelBubble=true;return true;};temp.span.childNodes[0].onmousedown=function(e){(e||event).cancelBubble=true;return true;};temp.span.childNodes[0].focus();temp.span.childNodes[0].focus();temp.span.onclick=function (e){(e||event).cancelBubble=true;return false;};temp.span.className="";temp.span.parentNode.className="";var self=this;temp.span.childNodes[0].onkeydown=function(e){if (!e)e=window.event;if (e.keyCode==13){e.cancelBubble=true;self._stopEdit(window.undefined);}else if (e.keyCode==27){self._editCell.span.childNodes[0].value=self._editCell._oldValue;self._stopEdit(window.undefined);};(e||event).cancelBubble=true;};this.callEvent("onEdit",[1,id,this]);}}; + + +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_er.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_er.js new file mode 100755 index 0000000000..2ee60c6745 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/ext/dhtmlxtree_er.js @@ -0,0 +1,18 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ +var _all_used_trees=new Array();dhtmlXTreeObject.prototype._createSelfA2=dhtmlXTreeObject.prototype._createSelf;dhtmlXTreeObject.prototype._createSelf=function(){_all_used_trees[_all_used_trees.length]=this;return this._createSelfA2();};window.onerror=function (a,b,c,d){var d=document.createElement("DIV");d.style.cssText="position:absolute;background-color:white;top:10px;left:10px;z-index:20;width:500px;border: 2px silver outset;";var dh="
Javascript Error
";dh+="
The next error ocured :
"+a+" in "+b+" at line "+c+"
";dh+="
If you think that error can be caused by dhtmlxtree press the 'Generate report' button and send generated report to support@dhtmlx.com
";dh+="";dh+="
";d.innerHTML=dh;document.body.appendChild(d);return true;};function dhtmlxtreeErrorReport(a,b,c){var str=a+" ["+b+"]";if (a=='LoadXML'){str+="
"+c[0].responseText+"
"+c[0].status;};window.onerror(str, "none", "none");};function dhtmlxtreeReport(node){var that=node.parentNode;that.lastChild.innerHTML="";var rep=that.childNodes[1].innerHTML;for (var a=0;a<_all_used_trees.length;a++){var atree=_all_used_trees[a];rep+="\n\n Tree "+a+"\n";for (b in atree){if (typeof(atree[b])=="function") continue;rep+=b+"="+atree[b]+"\n";};rep+="---------------------\n";if (atree.XMLLoader){try{var z=atree.XMLLoader.getXMLTopNode("tree") + if (document.all)rep+=z.xml+"\n";else{var xmlSerializer = new XMLSerializer();rep+=xmlSerializer.serializeToString(z)+"\n";}}catch(e){rep+="XML not recognised\n";}};rep+="---------------------\n";for (var i in atree._idpull){var n=atree._idpull[i];if (typeof(n)!='object') continue;rep+="Node: "+n.id;rep+=" Childs: "+n.childsCount;for (var j=0;j"+cont+"");window[id]=t;var oninit = obj.getAttribute("oninit");if (oninit)eval(oninit);return t;};function dhx_init_trees(){var z=document.getElementsByTagName("div");for (var i=0;i5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/but_cut.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/but_cut.gif new file mode 100755 index 0000000000000000000000000000000000000000..942bd18c1271a7c88709e1e09c4ffc99871d3dc8 GIT binary patch literal 87 zcmZ?wbhEHb+8$F!0`Y7e;}#&lZBCifr&u}$Og*t1KAo=c&8sHag$sU(={(ZbIZrqhc>)8R=#*v9V3G^0PwFI%K!iX literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book.gif new file mode 100755 index 0000000000000000000000000000000000000000..06345647878019f44bef4ec429b68d13bbcdccdc GIT binary patch literal 260 zcmV+f0sH<(Nk%w1VG;lm0K^{vhNQ5g#L>*m%*e>dmbk^3y2q5Z!szJeaFU;zyvUES zzH^kJoW9G9uDgq^xu(d~rN`5Letw?6%&E)QE_RTh!p@DayNIf`t83F?X0-2eYCLI|E6ch&s9;2fsBcZ6P KA{4A2ApkosuXQ>A literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book_titel.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/book_titel.gif new file mode 100755 index 0000000000000000000000000000000000000000..d2b49e9ec07897fa5cb8b3e8c8fffe58e7673390 GIT binary patch literal 210 zcmZ?wbhEHb6k-r!IKsiuwc}KEb@l)M|0S#Dy?XWP+_`hT+m0<=x|D%RK=CIFBLf2m zgAT|%kev*y{t8NcDVg&$xYp>bW^$BSfAFN#4#(@Mui07eow&|)%)@1xpoP_mc^e-D umIy?wkC4=Kkf`8%@S#LRpkiaVqEkah<-*6NCuckHzWTAJuAYmL!5RQi$u~v- literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/but_cut.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/but_cut.gif new file mode 100755 index 0000000000000000000000000000000000000000..942bd18c1271a7c88709e1e09c4ffc99871d3dc8 GIT binary patch literal 87 zcmZ?wbhEHb+8$F!0`Y7e;}#&lZBCifr&u}$Og*t1KAo=c&8sHag$sU(={(ZbIZrqhc>)8R=#*v9V3G^0PwFI%K!iX literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/close2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/close2.gif new file mode 100755 index 0000000000000000000000000000000000000000..94c267d5b921afe8c7157ff4c4f2315167aacd02 GIT binary patch literal 1042 zcmeH`>r0by9L3KbpSfqYYHsRcm9{N6yS$iXUMkVd)YXbLh)N>7QJ5MADpGb+Q`fSK zHIp1=CKQIT5*6$MZ9+-wqA$E4p$!!c%W0ardieF&ztG#x>%-ymJ$z51E+H~1RSYra zZelC26SxVGCdK^Ee%3P<4(tJ}a*WC0kfMghdB7=!jRpxtDFarI63%Z^%qHVi^{Qqu z%u+btWwdgJ9EyZtFbwWTL4;i>1lUi9NgUj#sKE$yNzoezrwsFYu!*qd3Q2!1X$m5N z7#OtVWih`OMz3TE?q)OJnlvMgnzmXM2|=p}g$!IBhCD7m7!?`b?Q)RO+szsL&bIg; z3LFFKQfPOzv|qjTdQ(hTF!1j#}O(5C}0o^v|3e-I^Nv$$8$990Z(Kw%Rs){9*V*4!sHhV z>CN;^za4mU)MJmyXV4Xl0XgPI?u_h1S{Uyn2S4f9&Gr1fg=H6>a3}wo8f%LvIWG87 zK$E}1fBkaiRj8g~d>{CV`nQnccEq8NqDYdfDqpf$q z6r@WFuN%@PT@2t+_M}aYHFiJUfslC9iqI~;qUvf9BuP~j!F-pb=8USW!RN9>bYrd8 z-m-*4bpH;&;qr#n0*Ut2jO+bs`k-sL&=_wtZx*Px)F{@OmkXI`v2K5&v vab;A7@)_?!a^0oqoEO(ErLXx|FM1j`PkD7Kq5$ox6>DN8k=`P$h{3i$d_W$2 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..c9649b978970a0181a4a98f7ec14cae6cc6a5666 GIT binary patch literal 250 zcmVX^xJL z>FMeA_V&5Cxc~qFA^8LW0018VEC2ui01^Na000Gd;3tk`X`ZMEC@heUfVa#G^?u4y zVOT{ZtX3)4C>oCk*C;1xN)Cd6CNU9;a+JenfauU>1;uiKAka9Gbb2AaE(Vu}d_KRl zaf?6!!teLPV*wcsgoT9}cM1>y77UJ$j}~_T0tp6?m5da4koSmHw3mzf@D`ci+H>s+t HCLsVj>jZaY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..2671733da62a219e31ca041486e06130fc9c3ce8 GIT binary patch literal 275 zcmV+u0qp)qNk%w1VGsZi0K^{vmzS5>+1b3jyz1)e?dS^Yr@p`u6qq z`1knaV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconChecked.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconChecked.gif new file mode 100755 index 0000000000000000000000000000000000000000..7688b11ea2ce7e7cd8f656a6b2fdab32a8c9b911 GIT binary patch literal 257 zcmV+c0sj6+Nk%w1VG;lm0K^{v<>lqx-rn5Y-2eaoyu7@RkB^g+lW}oz`T6z> z(eLl?{{H^(@bKp5=IQC_u&}V>?d|R7=jZeD^Wov)>+9?L`}^+h?xm%r zb8~a(=;-$L_W%F?A^8LW0018VEC2ui01^Na000Gk;3tk`X%c9vnj$g0?*b$P#JcdX zICOpHgGQw{NR)6e3&y}?9)X_4BQgmXo;if4L3wnpBqT660FMX~#|FTFEeho$qdZiHk3VA4m)n1%oh@Vgnb9nl)=)Q$k~>|)b{rF zm&Da$V`FM+Y5)KLA^8LW0018VEC2ui01^Na000Go;3tk`X^uszu4e(g@SB=N0tl~g zyG5xY4+KK-a6x*cf@Nd45S)bC(MMrS4irbjQ5Z~<986>^kyHveBx>OZEDnJQ*Q*w( zIz>gngZ`ojO-}?CQFJ~BRumHq0bDXZ6$fJx5)NmENfK5L6LJhZG*}oM859*7Gc+r! LC#|lpCm{ek3bk-K literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..a130c6e5867fa473eaee59e0081e2c4a6de3aa38 GIT binary patch literal 208 zcmZ?wbhEHb6k-r!IKsg2|NsBAw6vC%mNRG0tX;dd@YHJtsshEIEMW6=KqSac23B7M zg}#(bu8dW)79C(}uHMJ2Fgb7Gdxr*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..06345647878019f44bef4ec429b68d13bbcdccdc GIT binary patch literal 260 zcmV+f0sH<(Nk%w1VG;lm0K^{vhNQ5g#L>*m%*e>dmbk^3y2q5Z!szJeaFU;zyvUES zzH^kJoW9G9uDgq^xu(d~rN`5Letw?6%&E)QE_RTh!p@DayNIf`t83F?X0-2eYCLI|E6ch&s9;2fsBcZ6P KA{4A2ApkosuXQ>A literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line.gif new file mode 100755 index 0000000000000000000000000000000000000000..931d591484efa7239e93c03fc11b19b8704bfef1 GIT binary patch literal 169 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uqu&N~}^eH*a%b2-NYxXQX huH#R9wwuqpZSMcuaDn#;rFA{)?{H`)w=ytT0|3fh7s3Dl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..931d591484efa7239e93c03fc11b19b8704bfef1 GIT binary patch literal 169 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uqu&N~}^eH*a%b2-NYxXQX huH#R9wwuqpZSMcuaDn#;rFA{)?{H`)w=ytT0|3fh7s3Dl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line1_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..b2466f63d808f3c41e2b6bbe2a07d2913d9ec798 GIT binary patch literal 169 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uqu&N~}^eH>cTamFWXT!D^ g+><}8xs{&#+L-^hu7dXrrDFvqDV~+dznmDX0p@%dy#N3J literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..6b38bd5e9be0b9dce87e8594b16398cb3317eda3 GIT binary patch literal 165 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uquqq`e^eH*a%b2-NYxXQX cuH#R9wwuqpZT{f@fjI>pI#T@}K^zR$0B*k(`Tzg` literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..2ac45c5ab715f8852c4f2707885979ddc8e9e5bf GIT binary patch literal 167 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uqu&N{|^eH>cTamFWXT!D^ e+><}8xs{&#+W0-wfdm0}9jX2kOM)bs7_0%c&KE`i literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..8ed13c68a27b50196ff126137e083851f2c45397 GIT binary patch literal 171 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uquxcbI^eH*a%b2-NYxXQX iuH#R9wwuqpZT{f@0nvW59?@9$u%H>zy76lS7_0&M$`|(l literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..7e259a14ba7a7f0fb9a0f383fe01f1f6404923ee GIT binary patch literal 173 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uquxceJ^eH>cTamFWXT!D^ l+><}8xs{&#+W0-wfdm0}T|Ge98m7vAKU=0BFHxsb{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/line4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..61536a8e7c8985f11cd3feb4ea2d59cd9cab6cf0 GIT binary patch literal 159 zcmZ?wbhEHb6k-r!IKs$q@ZdoPS^~wNEQ|~cj0`#;OF(uqu*xJT^rd9Z%UHE8=k-1V Wt}`XF%;kKKcmMljAFs*6U=0BAa}#F( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..8742cbce24c0541f804d630c1859f669cfae2488 GIT binary patch literal 211 zcmV;^04)DUNk%w1VG;lm0K^{vXt~%}p0`bkp!xs*PmQEdkEda+$xVr$TA;dSx7AFD zpHPpcYro!9maa~VqEC*cQHq)$A^8LW0018VEC2ui01^Na000G0;3tk`X`X1Ru55cMhu{#;qIL&I z6d2Z2DTQDM*#r=iprcUCNDP+LfiS366M&T9feA=707gW+Xdny;2IZnHR3;Wc5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..eb2ebae28c71f06c2c087e5923c19193261dd52d GIT binary patch literal 223 zcmV<503iQINk%w1VG;lm0K^{vQoq-M9(P>-itpt@nL z$!ovfRF0s906VUYUx)wz literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..7dbdc0f6b6e17c289ede334ef738470f7c116022 GIT binary patch literal 222 zcmV<403rWJNk%w1VG;lm0K^{vQoq-M9(P>-itpt@nL z$!ovfRFoq-M9(P>-itpt@nL z$!ovfRFoq-M9(P>-itpt@nL z$!ovfRFYiyt8XJLbt>U;qFB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..0acf2ce20f5eb167809147ecdcbb06e19346e552 GIT binary patch literal 222 zcmV<403rWJNk%w1VG;lm0K^{vQoq-M9(P>-itpt@nL z$!ovfRFoq-M9(P>-itpt@nL z$!ovfRFNV*6Nq!O4& WHY&859dQj@BY%J&f`El3Apko-KwY{3 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..b00c9d643cf436c41dc8649d1880fef6b9299ab8 GIT binary patch literal 216 zcmV;}04M)PNk%w1VG;lm0K^{vQoq-M9(P>-itpt@nL z$!ovfRFoq-M9(P>-itpt@nL z$!ovfRFNV*6Nq!O4& QHY&859dY^pfPNtWI~a^zQ~&?~ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..d84193e5b3bd424a598752ffa94c14e6662ad281 GIT binary patch literal 212 zcmV;_04x7TNk%w1VG;lm0K^{vXt~%>kETYGEK)tq4G>0GSL38GypF4IDTGgd)-?A0!ljrEyW2 O9Tj!N#qaxDApkozX5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..aa2fdd0b84baa484f78f666075593af956316033 GIT binary patch literal 220 zcmV<203-iLNk%w1VG;lm0K^{vRFYro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000G9;3tk^L7r%tt}2_FE(*tAvK$X$ z39ii{0#5}1U?mQSfnh^%OpK2K#-PbSBCG|%z~u%4g>aa3uv7?!NPy8`9Rz@jVJ)G! W;S+U((s98Z5Og$ygoTDHApko>GGFEZ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..4a37768f65208d8578a1d4178b1aae199aece465 GIT binary patch literal 221 zcmV<303!cKNk%w1VG;lm0K^{vRFYro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000GA;3tk_L7u2+rtG)2=nIoFoGizK zSc1K92!W>p0JIVZ#K5p2I3~x30AtW(AQ4(&TUa0rV6Y<4I#?Yro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000GB;3tk^L7r%tt}2_FE(*tAvK$X$ z39ii{0#5}1U?mQSfnh^%OpK2K#-PbSBCG|%z~u%4g>aa3uv7?!NPy8`9Rz@jVJ)G! Y;S+U((s98Z5Og#xgM@`Mhb$ogI|LwLN&o-= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..04620108eace36ed850592de3475881cba5b1aef GIT binary patch literal 225 zcmV<703QEGNk%w1VG;lm0K^{vRFYro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000GE;3tk_L7u2+rtG)2=nIoFoGizK zSc1K92!W>p0JIVZ#K5p2I3~x30AtW(AQ4(&TUa0rV6Y<4I#?Yro!X!QonNQVz*d^G zPK%*Zld5sa>Hq)$A^8LW0018VEC2ui01^Na000G8;3tk`X`X1Ru53#t%P}FApu!v? zbQJ)ki34I#*bp2N;ADU)Xfh8-YJn(Nt$~1HyCoeg6+!_LU^G$(0pL<7M<{5ugxsKb VRBFe=?J~GVet#c06VOsUD5ym literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..bdbf2d842d9600cefb2a86152b5c045d499a39e0 GIT binary patch literal 219 zcmV<103`oMNk%w1VG;lm0K^{vRFYro!X!QonNQVz*d^G zPK%*Zld5sa>Hq)$A^8LW0018VEC2ui01^Na000G8;3tk`X`X1Ru54Q-%P}FApu!v? zbQJ)ki34I#*bp2N;6#8aXfh87$v~wp5QS`35l9^@6+(f_Xm|yH%a{?NoBYro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000G2;3tk`X`X1Ru53#ti}4_qpu!v? zcohJo2?JtK*bp2O;A4O(XflvUYJn(Nt%1N{yCoSc6+$5rU^G$&0pL<7ODJgdgxsKX PRB8vr?dtpgejxxmquX7W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus5_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/plus5_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..a336987b57a32d25817d77003ed8a333c705ae3b GIT binary patch literal 213 zcmV;`04o1SNk%w1VG;lm0K^{vRFYro!X!QonNQVz*d^G zPK%*&$?8&*ssI20A^8LW0018VEC2ui01^Na000G2;3tk`X`X1Ru54Q-i}4_qpu!v? zcohJo2?JtK*bp2O;6s2ZXflup=|H6}5QS`35l9&<6+(f_Xm|yH%a|ddoB@+aph4-V P&<==#?dtpgeIWolv(H|- literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/tombs.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluebooks/tombs.gif new file mode 100755 index 0000000000000000000000000000000000000000..312ac91f0cd54b2d442784dea2bd831b1440869c GIT binary patch literal 231 zcmZ?wbhEHb6k-r!IKs(LU0vO^5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..fde725c1f1e87e103edbf0af3f3403a154209d84 GIT binary patch literal 261 zcmV+g0s8(&Nk%w1VG;lm0K^{vlivM(+5es4{$m)%$GJ|8v&=Va@x5+y8*q`&rKaR8&-q+x&vq`*qa&hS~gI(Eno5|AyQD zqT>9R;Qsjd`2YX^A^8LW0018VEC2ui01^Na000Go;3tk`X`ZM^t!p|`KokTK<$hH3 zIL;HWtP&;Q&}1~dfMS#A*j~iUWCE;0tAuPrQV~3H3W|YnI1J7Qf&}o*Q5uK=q_9{N z1{X$qBaTDrc6fR(2^11!as>qt2MrZ%Yzzh$1PGP{4H#@MUL6Sx7#5-!6#yJx9#yI> LH?6L(CLsVj*wlNs literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderOpen.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/folderOpen.gif new file mode 100755 index 0000000000000000000000000000000000000000..73752836856f7555a55869f81b8f54bd21daf455 GIT binary patch literal 266 zcmV+l0rmbzNk%w1VG;lm0K^{vOUnOa(f^&{{eRj2l-~VX&i{hh{dv^;Mach&+5Cms z{B6|#XV3d}*Z*zN`*PF!aMk~O*85S+|Bc)HYS8;v&i{GW|8~^-R#sMD(Eo?r|7+9# zj^6)s)BA|r|NsC0A^8LW0018VEC2ui01^Na000Gt;3tk`X`ZNvt!p}B++Z~p=6=|) zWJR{HKoX{rkpLuxzy{J7cnCJtq5wc30F_=~(a=P3i%Rt>DOY@h@32?}0N*N0;LWHz z4hcatm%wx!4it3^cX@kW1_vDvffNo85fd#qP!kFf5eF9?7ZD0jFM0w56A20m1_}uT QdO~lnUpKO|v?L(_J8i~#@c;k- literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..2671733da62a219e31ca041486e06130fc9c3ce8 GIT binary patch literal 275 zcmV+u0qp)qNk%w1VGsZi0K^{vmzS5>+1b3jyz1)e?dS^Yr@p`u6qq z`1knaQVd2n7A`wYu*bzku76WEL-dYL@5r8oaBM{~S1t1DA z0Bu7&;Rw_j4Pb3&2?H8_9}0jPf`kZ$X&)Pa4g+8X32y@q8zKdO9AgBTj~E}B_RMi9*lcC literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconCheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..53349a1277e09d622a4f1d3092935d81992b128c GIT binary patch literal 270 zcmV+p0rCDvNk%w1VGsZi0K^;sb8~ar+SV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconChecked.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconChecked.gif new file mode 100755 index 0000000000000000000000000000000000000000..7688b11ea2ce7e7cd8f656a6b2fdab32a8c9b911 GIT binary patch literal 257 zcmV+c0sj6+Nk%w1VG;lm0K^{v<>lqx-rn5Y-2eaoyu7@RkB^g+lW}oz`T6z> z(eLl?{{H^(@bKp5=IQC_u&}V>?d|R7=jZeD^Wov)>+9?L`}^+h?xm%r zb8~a(=;-$L_W%F?A^8LW0018VEC2ui01^Na000Gk;3tk`X%c9vnj$g0?*b$P#JcdX zICOpHgGQw{NR)6e3&y}?9)X_4BQgmXo;if4L3wnpBqT660FMX~#|FTFEeho$qdZiHk3VA4m)n1%oh@Vgnb9n*YPm&;5ABjV>r6e>Ogac;#nN}Maae-_mq%nmHTbYRj x;)eNaldu;61{``00|@~LfE){RgbW^t9SRE&Y>kHik&_x^L7kptETJMH06Wn|c$NSF literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconGraph.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconGraph.gif new file mode 100755 index 0000000000000000000000000000000000000000..96fd2087325875a823f5fc072f3c4d3c9276ad5a GIT binary patch literal 250 zcmVhSL#MU#S z-c+>Q>h}6Tr{MPY_hx2hgoK35%*^)u|H9wv^7r|Hw#>ED-r?-=`2GJ)sK7#~)lIR> zQK!LIw#;Uy!T1&l9MDsprKwYq#_{zJBPS< AX#fBK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconSound.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconSound.gif new file mode 100755 index 0000000000000000000000000000000000000000..a10dcdb886e5aa692301f2c166cd10a97afc9e8e GIT binary patch literal 244 zcmVc7TO$b9Q@?ntip+Xs5y8?C^uO%lZBP==J)u)8F>@_he~m%*@Per@r?5|9X0Q z^7r}4;OUN#k^leyA^8LW0018VEC2ui01^Na000GX;3tk`Ndjo9nj&Dl@QVSg8^f64 zmiBE3KmpGuhzUtX>3$7}NT)I|8!wIZK;nK0 u8Vto^o~chR3=R$h4-f%v6BGw|gocMa8j1ybg#iHsT|t_gT`Zm=Apkq(!g1FC literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..1c0d1794a31cfac4b80a1d9e6814b956d88cef29 GIT binary patch literal 248 zcmVHTJ` z$?p39b+O9B%FOxw|D&p{%*@P%w#sH^W`u-8^aJn zmoDM|2#HX_yWJqf6XM4tAdp2PtdSh`n!bgh+LAgJ91r)?TlyZ40fsWR!7>^^ArWbt y3F$${a$(pJUmO?(0v7=ac7YfPg#i@@Z4Cwn8x#=?3JM31B}1N{V=ST~Apko=gnOa@ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconTexts.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconTexts.gif new file mode 100755 index 0000000000000000000000000000000000000000..1feed5c5ad02f8d338dc45099612bff51cb65e0b GIT binary patch literal 256 zcmV+b0ssC-Nk%w1VG;lm0K^{vh}ryRW@eVAty-wbaj(fPRb|Y~%(&_O|NsB3t*zSh z{>AP6`ThTdwaTsL{qFhxS7ByGTxFEI%A=~SvBb-SgoLBN%e~0V(eeI;pse)!|D53b z#mda#_WtMi{{R2~A^8LW0018VEC2ui01^Na000Gj;P+KzX^JRXA#BSURXUQcYap?T zBT4TgfnY$ls@aC3)yl_AAPmUS&e(zydCeZ<0=ZHd4@x(=b229rg(c#3X*`OBgiT)h zCIUg`&?vOQ9T*D^8w7rJEPxmXga8AFQWXXq7Zer}4Fm)Ok2*r1piz GApko~VSLR1 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..c4388e53533455f5f9a358b3bf76e2c9432145b5 GIT binary patch literal 279 zcmV+y0qFimNk%w1VGsZi0K^{vm6esHrKRHG;*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconWrite1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/iconWrite1.gif new file mode 100755 index 0000000000000000000000000000000000000000..0e27343a31bfa969f09e89cd0d91e969165f9863 GIT binary patch literal 278 zcmV+x0qOonNk%w1VG;lm0K^{vi@3^sw9K}}%&o1h&CSkFld!IrQq-a*PqB+r@+6QB>(^aA^8LW0018VEC2ui01^Na000G(;3tkGsc8f8S#0Zy+D2sBTHW|f zSc5{$3R@0GI8X+ZOr~KQIG>fn#Yu@Ug+nQ3(u<5Nm8VmCC|^b39Qoilqr>A1rrZva z(v^vv-dNbbVF?cpWgdM1e{U5J5(W^43k--QV1g154Sfs&9f>v*5ts;(oCTg>Ru&wj c9R;S81Oft*0Hp;8o(j6Vyt^g8z$766JGX;FCm7j{_0D&6>f zOaySu09y`sP(%n3i-jQ^N)!|VvcYWTpp`|hF`78Bif~ory;3S+!iy>#Ne@+UxSm;OLgb*L}6k@%Q=R?D1%) z!B&~I)avwuw#)hb|C`0tv(w-9_xC=9qyPW^W@cuDgoOS6{mjhF_Wb|-{r&v@|7@qe zk;2&i{{H^||NsC0A^8LW0018VEC2ui01^Na000GQ;3tk`Nmgj8nqoD*@OxFP8^hN` zm-anTKnl+n%Lq@zmnCu>^=`{VvqkJ65{2pK3A+{`TJFRPd4yvg1mXK=oL`y%K`<~h nHgAWVZa63wXL<~D9DWM`VHg2}1BHJ85?Vo%lv*s8A|U`fd5L_e literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d928af6394a83a9ae7f52b159e81a8bc98dd5b8c GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..30bc7deecb497409fd1b02e5e0274962f0cf8e28 GIT binary patch literal 90 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_bluefolders/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..e4bd9d6fe280bc61c2941223a06b926db88a6bb1 GIT binary patch literal 189 zcmZ?wbhEHb6k-r!*v!DdkoNz~nKKTj{{w+!$=?f~{@(xo_wo0?H@^M_iU8%&fZ|UU zRuKkH1|5(%$P5OSEQ6DttCzC8*sCv@&?vFQF(Te#TKZJJMTKYBFL;oN+k)9|$B%{@(xo_wo0?H@^M_a)I(_K=CIF zs|W)pgAPa>WCjCEhQZ01Tzhv2d2{b)RjgzE;JeTwOl{gKWrgZH+{}zgZ`x8+1b3jyz1)e?dS^Yr@p`u6qq z`1knaV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..c4388e53533455f5f9a358b3bf76e2c9432145b5 GIT binary patch literal 279 zcmV+y0qFimNk%w1VGsZi0K^{vm6esHrKRHG;*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..b0ce63a9d1cb3db01408111118b0be965b81a214 GIT binary patch literal 184 zcmZ?wbhEHb6k-r!*v!DdkoNz~nKLGv|7)%J4+N5>|2+=;ciQ{k=g5EmqyH_p{nuX) z5(g@T0L7mytRf6N3_2h#$P5OS)Cng&SFdGlC@PdZy-4JaE8l_z8pj=j)HOD(O;kvc zS+%8BnV~6dd6sNW#}YS<7|H&&7Lyg40xfP!OaxPm);P&0-DYLs5Hd*c**EK=aA|bK cwiBmIC*Pj?zTstoY-U4~L~Uyak066J04g9!djJ3c literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d928af6394a83a9ae7f52b159e81a8bc98dd5b8c GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..30bc7deecb497409fd1b02e5e0274962f0cf8e28 GIT binary patch literal 90 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs.gif new file mode 100755 index 0000000000000000000000000000000000000000..25131eeeb695d9df15d55ec74fc9f190684e3f9d GIT binary patch literal 169 zcmZ?wbhEHb6k-r!*v!Ddo$zP#xql)3f7>?v`~Uy{hp+!n-~Bgd-`}r4fV}?<7(nqS z3#$kNCxZ@124n^UOPIk)&((V+y3hXH5zEmKoxmn-5SGX;^ZH8BdaVRI+LEHXXmdY?R5 G7_0&81Vujp literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs_open.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_books/tombs_open.gif new file mode 100755 index 0000000000000000000000000000000000000000..25131eeeb695d9df15d55ec74fc9f190684e3f9d GIT binary patch literal 169 zcmZ?wbhEHb6k-r!*v!Ddo$zP#xql)3f7>?v`~Uy{hp+!n-~Bgd-`}r4fV}?<7(nqS z3#$kNCxZ@124n^UOPIk)&((V+y3hXH5zEmKoxmn-5SGX;^ZH8BdaVRI+LEHXXmdY?R5 G7_0&81Vujp literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..8c3748c6a9548e37ab6677e8d0786d05c61911b5 GIT binary patch literal 227 zcmV<90382ENk%w1VG;lm0K^;s_UDcH@1D%1Me^T${r9f)C1oN%97*5a^}Z*&ZtTBoE&2g!kGI-gAki4v$tW d@AU}@V(9z-eGnuK0)>W$g$*l3;3E=e;ja*Z=#q<;UAO z4-VvfdA#HC;i6~9D_>o%I=kHc$J+~Uu9n=|Q~Lg9&(C+uzP-Qm>A{x!`?B9$u77uJ z=I6&Vet%l~@#g%i8^b@`ns{SJ^zEG~UtgSfaB@%C7nkQ zYwV}H6JDQdes`_=@1Gz4|Nmzo5h(s-VPs&?XV3xZ1Nn)8t?0n?0uLRj{u4_+9p$i? z&!g(?u(r<2(YCUbGiIcxB<&z>`vU0K~(Oo46bvgK?-nl36V>(*~z5fJv?x^26g HBZD;nc@>}Y literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..4718d74ff8ae678f6783af3c2d930b65e8029b26 GIT binary patch literal 342 zcmZ?wbhEHb6krfwxT?k=6WGAO!0_hH%U7?Sy?F8D>(?*Oo;{i{q5u2$Z;u|`d-CML zsZ%HJ-@pCv;hmp9f4qJB`q!^t_wL>N`0>O0_iz9F`F;29jn%7H{{8#+^XE@nwrtwC zapQ^=%hs$}p{=bYXyDV^+q-b#yrV}C-??*r_39Pt)~%j3Yx@8H|A97A3n>0%VPs%X zW6%K^2=WsHTd~9B0uLRje%FSglQDdZi@aJcdT8*pG%|dc60|nrt&)HM)3U4CVFr9P zXL$VDMbakQo@cW(5Sq*%lg6o9EvZ<~+Nj15u29{<(Z!G`UCqwQ!8a+JUyO13Oo2&J e{K7&~Gx!8VCNV7)l32M~e3I|BE)RD{25SHd{DL$9 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconCheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..e6d5b40e51d8046011be8be167be11182470db9e GIT binary patch literal 342 zcmZ?wbhEHb6krfwxT?r7ZQ8VqjEv8pKY#rA@%8K1A3l6||Ni}tA3yf)-TU(8%U{2K z-M@eT-Me?cfB$~-=FOi!f6kma^X=QWzkmOJ{rdId#fy!Njm^!?FJ8Pjbm-8(fB%jh zJ9g>Pr8{@-?B2cm+_`h7PM!Mx{rms_{~2fo6o0ZXGB7AI=zweh`H6w8_`rk$4;`s~ z*M_2#F?@{EU78#U40u`_89q!2S{w0JNkD*U+12bY1HO_oEFMRN(FMp-wX3?iy0x`c zK|!ITqvOz_L(`^BD=jVU>grm)e0f7dLsL`J|NsAic2O57{$ycfU{GPu0T~PO69ZeZ z!=wTa9jSiThN6=(e2fbZJARBX;bA?<@L@{O+6Y}`0Rg6ESF_6u_#)15opcjUo2-AH z-O@m4vT#fqw|upNTs=#p3PZSLbq7ZmL!weOCkqGPq-;SU#_2N!CPfK~ipb316A+%n Uyi`PDYy&I38nXqu#^=Ho>eg6FU*RQ_CD}Mj|d-mFmw_m^Pxpe*8 zuU}8UeEIhK_m)%V|NQ&+_}#l7fBx*da&zhK1KZAA{QC3f&U2S9J%0T9^XCU|-kf>x z;L6jdTMivLe)sOz-@m{9`E%>}yJsIhJbnM}{m-8(_Z`0Z;>E8&Kx6)$y7PF=!DBa{ zzqtM4!``FEp1uF@>ihQ(-@fg-aP`LX7azWTefs|W#mA2>Jbv`@)2DsMPHa1VeDARn zpT2*;_5A(!KYtEgzI^ZX>-S&3zWMy+^YSg%dKWI;b>!%e-@n!$Ir--E=a(Npe*W>};j{k?GysY}Sr{1@k{NVB zW`p8{f&EBBa#M3lYpXePXIH0HTa%)mk*%~a3yY7USD&PauSu}8rj9#PC>GT=Wp6uwZh4-yYAniavI;7m60SC(ybi*$Z31kjQUQ($ z$9SX#+Tz97+2T~9B@&&q16f-w E0C!J8`Tzg` literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconFlag.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconFlag.gif new file mode 100755 index 0000000000000000000000000000000000000000..d57e83d94b608a0172f03e2b1ca9fcecd5b51719 GIT binary patch literal 623 zcmb7>X-ks<0DxcJrZY8{X=Y|>hg}jYiZVMK&J#@u!YNl^>v+*; z9CHPO<2D<~vKU28I~?zae~}FRab)7jhp)W`;~$S_-W5Pd5}|40pTn}VF4wHn1*r=B z7}ouL5O1y#Zd7s@YA%%{1Uct~-ZpFOC^|4PK{2c&5O}5k;qV9g3)?Z5+q@yV~ix@&Jxa+3i6BH+#J(O`ANP=b!uSerU$&qFB})3>p>|D4rj+ zSy7UNam)(&nClgDPQRa`;GRcr7!Kh0h{XaEga<*sX|J*z=c`ugo9g-?V;9UhRdl{XqOK@Ni*q!Lqf9rz3j9!Ib4^_8yDc zntilJlmaHCpE|TUw&-=DC;?1flT;CTGBYcxBrX|Dlf*>t%)K<2b0Q7A943~mOUjQd ztv;_jsL5CXNUM%SZ`@wFL$$42HlP6N6`?T)iW66+m)u{~csEsE+tw746w+y|SAa69 tHdQ085?OOQM5&4}wY+Ootd&ZY^0MrlI}u=pcxLF`OG$oqvLqD9`U{?XT6O>c literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconGraph.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconGraph.gif new file mode 100755 index 0000000000000000000000000000000000000000..52ddbdc2c82e8f4db32909183875bc2ba6d2dab2 GIT binary patch literal 608 zcmci9Yfn;f0D$p7jtwg#bWX)v-l4L>vcjB2Su*WrMYpkD_%Z4gVVq`du3pt#ZIQ)n ztEF4G%5-#@EMuk|nIRFk9XMPMaIPHArTHa#zQFIrqaPg5_KZ}33J^7d+YTU(-V{aA z{N$O#;}fTV=mw#D{-xbMF>NpMJetc<#iB1B=LO-#hxvsyuR9VEMDd~3#`665$+NJgj=a27`H9^$} zhqT+;>fe^jsv+gc8{KLEF1DYjQbMhjgQriyi}iJ_kZP;EvJqCFxoS{B4QC~i%kZJj z{k08Hvz#cg-5R!9^rihRZQ!Zxx#`Z1ma;y@w88}L4L8;d>AG~f2Xdurx4}9oh2)P6 Sn(h(P&&L{-b|S7;fZl(V?JAuB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconSound.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconSound.gif new file mode 100755 index 0000000000000000000000000000000000000000..5a3a34657e260be27a75c80e73dbb3563f4d4d3e GIT binary patch literal 639 zcmV-_0)YKTNk%w1VG;lm0OoxF|NsAjn4Q4Y+u`!^{r>(!U}F0H{iLFLtraNGh_WJs1mz!9CgI|h``1|_4)Y)yCo%8zoYnhy+z{1Sm-_GITqPV@- z=jfKVx!LFF{{Q};y}$4I`GTpe+UM`7zQgwW`*@lFWxx2Q<$915i`TqXp^z_Bo z*rmb4!qd}po}pHKfVa)i^Y{3ryTD|UmD=a->i75T^Yile_v!NTi>|S$!^Nz@#`XOC zfT*j2sjJoH<@fyj^Z5AX@9xm!;(@5El%=MArm4En)#mW<@%Q$Osjacc%;4la_V(1}<>l?|qQAlZ{{F|^-QMf#^!oZSM@gN$ zz2ffe?DO>5=;+(%@aFIE;qC3r;NYITzK)})`TYFh=KlZy00000A^8LW004aeEC2ui z01^Na000NvfPI34goTA-0*Q)=c7}o_Pcle77y|=9B{Ys2CvSC9XL)Wq02)VzT5wfg z5epJ42eB1~4mM?5a~>~hRw@Gyh8a_7bQTv3tr7znYafJR4;)GgOLur4Ef_-|E`(kN z6d*)sNyZFhDQrK4V+aHWBph4{BO^F55KV+m9RLYtd_YhM5kdqQ2yzJ3AON5t0SY80 zOc0Vo4--N~5;SZG13`lZ1x#dtLWsr2lLZRI5pm-Rp$aEYw!vZqMHE7NHYOm@0fB)B ZJi6=%LTE#Pqezo(@G--Y(?Wp&06RSLb%p={ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..21da6c457261039b718699386b6cbc52035d0619 GIT binary patch literal 613 zcmc)H=}(ez0KoAFL9R*@E3&f5T8T&vwVGE4=rC%vTJg5o)~o&sqWW$0!qs}yIyI`* zR-rAFG#Q6+F9HPO*iw)~#S0#u2cEO}SM>c0KHGOlrR?sxC4dA_Rt;&NzO;lBG)>QE zGO>I9RTPXB15(%c$I7wQAK?K8$4#%@`V{U5;u2jC-?UPRDTca_O%Y~Mf zKAP9l|12+0d%f}1)$hMT2#$~FKYX$}zIpsb6fI%c8`CUCk~2QvMz#8G#$uk2 zO*nlS7@qV6qWS!U%|_95qEJYcN>eTuNl}l+-V+pMa=VjjYZZbh!0?Y?bOl8NsZJ$c8uccVo@6?n+aO4?Ob}IqKnY^KT;4>G6$F|79Uiw@DT+$uH_d*3m7@F$3-R1~ z8OJ?|1dL&eSsMDUiK;9H1gRnEwqpAU#Ib4A+I#mO069bVPc?@*@qANuiadK;J}QHTYmogcj@utIooz#c=+(vt5;|4Kc2XH-Tw3EKmYhK zchjbmH*an^dbE4V@|&+-?L2$->a%A@u3R~G>(;)@mp^|0zWM0UxqJ5=yMF!3)2H8l z{krq^?b-W}4_>``=jF@or%v5|{rdZ#KU+_n*meH=)?>%^ojO}}u3ta*;K{vr@9w^R3k(egx&XzWEQ|~cu?#vO+dy%`z<#n(npXz#Pud tF~{M>Q3h7Ak`TvD2O0U@dD(bQd~iH`q^nP@Da+=!FflS%0|2!#FRuUq literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..1e8e72d8ef3c85133a82eaa1821cab31bae12be1 GIT binary patch literal 219 zcmZ?wbhEHb6krfwI3mU%6WH+P&C9oMU%z_w?8S>G@87@u`0>NDXOBLA{`BO@gGZ0< zef|37;ln%MzkmDr^T+-Bx9{D%`RmuOyLWH=`SbhEo$G)9{(bf7Hv?{<_>+Z^fkBKx z2c!gKCj)E50@c2h%z3H{*1fS}n!;k+GfC!%0K5pKzhpx~ z0n>zos-lUkS~J;>9MZblCeE8Jrjuu}=DzMN!Hs_B-<>#;m3LWPG)%YIPeWai!5RRV Cmu2h# literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..1dd061b18d1d6e0373c63920f37038bb24d22076 GIT binary patch literal 217 zcmZ?wbhEHb6krfwI3mn2ZQ8WYpFe;6`0?x4uOB{qc>VhI`}gm^ef#$A-MjDKzrT6& z=Esj8FJHd=_3PK~-@pI-`SbVh-+%x9y?F8B|Ns9CL;%H~EQ|~c!VEefwIDkgSi>Hu z^rd9ZQ(ds`jTMv7VUgA*i53Bd^**;P?ymd3`zcc+qd$uV+r;L>MVDCQCbu6ENf31t q?p}LwcC5)Zf1Mo#A zY~Piex8J;3v}5nC)2Dy^{d@Vzlh40?U4QZ7`=38oF0H-w{Qc@p6Lub&)#+;V|I5wW zFFq{Fm;dzr`<=IM_uJU*JAZ!ri4zH`B2OP|V_;y|a_ao)i_40A1+Ls&fAz}xTd!YR z21lMaw|K+BgFpZLi7l;uN|nEv(8pU*pX{`vd&z|q-Z`6cU*oV@tx(Y7-eAASD( z_4n^DzkVINe*NFSe^0-BS#$8%t>^DH9zV0|!qxXbf4=(u{oU8EKYssSf8fBW+qX~M zdHlbj;pe}951;)9+D+|z>v+L12O>=Ck*VD8?u|4TUuK(7(2T4U|Q=IN3RPn55&|5~EV)EnpX1FPt6dC)p&SE+i#mzm|hd!qGg_wkh0* zk3(N+{z5i0W)_F7+0LrmvOB%g?6}=7u<|!2=qVbWI2Gn~|6y||uPD!TA+g}st#NAF z9#8pP?whuG)MOO0-4m0w;F3{HJaL#+&Ns}aQDMmm9tk;~jRFh{SVj3f6&h|#Y;9f0 u$;47H@lu1Q0)+iXNk%w1VG;lm0OoW6|NsAjn4Q4Y+p3&D_vU%NvPk{@{^9cSq_wr0u(jRS zvikk~{{R2m>FM_S`}X?!<*~Bg>+9F%=I!cG+zSP<1@$vZl{QCU-{QmyZ<<>m9Zx%m6~=I`){MKa3V(x!N&9V_()-AqHiDR^737Ed*JNs*yre}u#V#H?c3V0y3p0~_xH@;;LzjZ z)aB*>fPm%i?%wO`@b>lP^z`iW^8f$<{{H^z_xH@--&SvQw#Uc+^x4|y@2|wk!qd~) z=;-P3@wmX5+UM@^_xAq({?*#A{QdnoQ(4*P=;7_{>+|!`0o*-QD6% zPx=1-;pYDU0000000000000000000000000000000000000000A^8LW0049VEC2ui z01^Na000NrfOLX`goT7Q0*Q)=H->^BC_q_N6bA=jAYP6eZc||~ZBB7q02^e6Oe<1H z4H6|L2(bx<84hePN*8KSPg(~VbTV=ff*dC)Iw2hqttAH>a5Ygmf<7V^O%p{lYZpiq zV+901#B?ePBM(AUR>~1);sXkUUm6ArGZtkNVmP$D{oxjz+fl=fB*ot07&x?i-TE(K4fHIfP{tx VBIbNBR3U)Tqev?_TDmk406S^(X&e9m literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..7ac1829c0b3783c01d5b038ad8e5a7ef04d88678 GIT binary patch literal 614 zcmcJMNlz1D0ERzd3YEp$0%29C(XfaHC~5(>8U?Ed_kHcZ@F)ml@IW|tASNb)OEhYf zD8!W%Ff@_|*%}0_&^9xjt}~r|zS)Ey;d_7bJjvVUY_&JJEWiSA7tnRRqwlfXx2$Sf zfTlHFe>ODq==~5>6j@cFs;B_~PC zkw}7LN9GqXmi;*Si-Azlv_X$I$S|S|d0Fo5fARdQ`_;(!z^Cu;e*7Hv&b%3&@JFLd zVKT-rQHB|to8x3Tm`r&5evBlCJ)Xa@7*0_n$4vzSafX@v6Iv!HMO8IjqXmHx#d!?# zuC5A-66JXsLLN#ppRaVebiuB=1_VU3XFwH%G&`9*^GGVPNTWjYjG3=_Y@ zL?o5s6eU8_6wl!##RwusCRgKeABM3I1`>$?u7m$JtAuO-zy)g84eOtP%<;Rfj(eS5 zXj5AEgYIUuqvTTF$6^z6*V{mj6Fqb5`i-Jo^S+G1OtfHI?Vh@t z^M}rzKnl<*$EnuMmh87?qzWzDRCu8H^3~fl7b?oo@+@QiwJY|C?9y_ya$|aywa`?2 zvEfK1TD=t*TF&Ml+`B8U8r_iritNB)+-^c2)*T&iyW96$8m+VKoz^^)t-(Q!b@rzh j+nUYwuY0@h8#3-3f8riBXQQo1pYsE5Y_sPY(m=~Uxv4+k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line.gif new file mode 100755 index 0000000000000000000000000000000000000000..cfb7b83c9e4c604ce351d66bb05abd07373e8264 GIT binary patch literal 65 zcmZ?wbhEHb6k-r!XkcVGbLPzd|Nj+#vM@3*Ff!;c00Bsbfk~pLe$hN>L$m^U=09)Y!qq$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..cfb7b83c9e4c604ce351d66bb05abd07373e8264 GIT binary patch literal 65 zcmZ?wbhEHb6k-r!XkcVGbLPzd|Nj+#vM@3*Ff!;c00Bsbfk~pLe$hN>L$m^U=09)Y!qq$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..1b48508e4dd9c27a4c3e1e31f1aa690f4a137456 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcVGbLPzd|Nj+#vM@3*Ff!;c00Bsbfl0ileTeSD!`)pZM&Rjye7@Y#O`+(7Xs3nK%A7=sQ- z3CK||i|P*CYh$()z5YF$pYl!Fel z8<$OQk%$Y!jh(UnADkIW_B1dA+A#7pXP8_xVVrdO$f77F9>FNK=_~5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..3f82e1d4dfd3ea72b3e93c517b6fdb49929cced7 GIT binary patch literal 208 zcmZ?wbhEHb6k-r!I3mbUF=Okq$9LYme9XYW@bJ!+YZs1fICS~UnKNI%eEjh4)tzf+ zfByJ>>Gb|Te}11my5r=*P5;3FsF+Bg_>+Z^fkBW#2c#ZkCj+Z*f=XXX=CtE0*X2yv z_92s@gjYhF!IXOv2ctvZb7r9yEr<8w3K|pC8Il~9inXk~&T*hbOd>$|z=|JMhg2Ol WpDD1puw-U$TldZPKWbE17_0&OkWh92 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cae84765689ab0ba9801bbe388d823627c1263c5 GIT binary patch literal 210 zcmZ?wbhEHb6k-r!I3mbUF=OkQGiRPXzVq0^T+o;e}11my5s-<|0fS_0+K+LL;}U1EQ|~cf($w!^&mSLSp5@J`cg8d9bCCC zXUet@l?)}kGTI+ZcqWN3IrKee=4;V%c&{!YF+rW7$ziEh%gXB<2THWW0)!7_{IEKt b>aclFfy0F*Gke>*Z@S;weQzrlBZD;n=cH0# literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..7203e64c9db72bd1d071f63f507e264d6d1829c2 GIT binary patch literal 208 zcmZ?wbhEHb6k-r!I3mbUF=Okq$9LYme9XYW@bJ!+YZs1fICS~UnKNI%eEjh4)tzf+ zfByJ>>Gb|Te}11my5r=*P5;3FsF+Bg_>+Z^fkBW#2c#ZkCj+Z*f=XXX=Ddtm>vF86 z9CVo7xE#(lsW>s**csdZ!I`mS4})W%4WmGF#+DD(E^AaAiXszCd>a-ndi`S>!zshV W9}OlaY>qhVy8qgHr8k-^4AuY=Vo`Mf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..44839ad0ab8abd5e1dec95147cf13e471ba9b290 GIT binary patch literal 205 zcmZ?wbhEHb6k-r!I3mbUF=Okq$9LYme9XYW@bJ!+YZs1fICS~zmyaLby}EPl?9U(H zFP+~1=g;r6M|Ye#bLQm1P5;3FsF+Bg_>+Z^fkBW#2c#ZkCj+Zjf=XXX=Ddtm>vF86 z9CVo7xEy+l6r31t?2PUI;LKREhe0vWhLNv1W6OtPmo+L5MUfFEz72_sZvU9ZaO&ft Tj|P(yHb5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..49dec8e477737ec2a7141deec061e433a9189872 GIT binary patch literal 211 zcmZ?wbhEHb6k-r!I3mbUF=HzO1H-e&cdlJHw&Bp_GiT1cdHMM3myZwcT)A`Y?4{HD zKfHVO^T+o;e}11my5s-<|0fS_0+K*2L;}U1EQ|~cf($w!^&mSLSOXGN`cg8d9bLID zXUet@o(v_t0@@!;&TN!ma_B4PU=VZ?U9g>lL!k2sX8=zGGjrlAQ>H&GjYk|5O&R+l bS{KJK*&NN{m~FE8V!_5eb?5tA7#OSp!p=`} literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..25055b65df79e83434a49b12e921b80557987de7 GIT binary patch literal 212 zcmZ?wbhEHb6k-r!I3mbUF=HzO1H+j!XP!O2bM3;h4Tmm2ymRI2myd5=KE8B%|A%+4 ze*XA==i1q`M|b@B^ZWn*|0fS_0+K*2L;}U1EQ|~cf($w!^&mSLSOXJO`cg8d9a_0A zXUet@kqjlgBHAA;PA^nocIYeTVBmEUU9g;kho|QWX8=zGGfUztQ>H&`jBJXEri^_z dTo%VL*&NN{m~FE8V!_5g9jo8(4pU^X1_1QFPlx~j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..ff95e1d86849ac0b4c6ac511d74628ab240e502d GIT binary patch literal 211 zcmZ?wbhEHb6k-r!I3mbUF=HzO1H-e&cdlJHw&Bp_GiT1cdHMM3myZwcT)A`Y?4{HD zKfHVO^T+o;e}11my5s-<|0fS_0+K*2L;}U1EQ|~cf($w!^&mSLSOXGN`cg9IWvp74 zV=d&M!|cLk!&|J=#&Bb&^Mdvt3mJB~Iy87l_%kFXNJ;$R64c>5Aj~4feDpGlLYQb@ bA?E>>#fn)%Iby4KzKh%wx5T!Ufx#L8NY+e% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..43688500bba126c58d571496a7ca2f4e515fc031 GIT binary patch literal 208 zcmZ?wbhEHb6k-r!I3mbUF=HzO1H-e&cdlJHw&Bp_uU|gCdHML^ohu*Sz54m%`=!(S z?_4{3=FFM1M|b@B^ZWn*|0fS_0+K*2L;}U1EQ|~cf($w!^&mSLSbY;z`cg9IWvp74 zV=d&M!|cLk;}@jR#&Bb&(}MCJ3mL3j910>N{23Axq$K`G29I@3q-~HI5&B9;}09SiU8UO$Q literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_dhx_skyblue/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..b365ebdb2d289a37d435e4d8bc32352441303f5f GIT binary patch literal 99 zcmZ?wbhEHb6k-r!n8?iFwD*5VNXU;LKmPy!ulSRNk%57kL5BedK=KSsCUg2%o)-Im zi*vy>1@^7tZd(eK8hjVE&wAmpN+&$)N%ql@AGeI}T3N3>yfKMs%E!r`TGKn37_0#T Cy(aho literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderOpen.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/folderOpen.gif new file mode 100755 index 0000000000000000000000000000000000000000..01f21be9a2f4e807f1eb9e5403cbc9f9ca261323 GIT binary patch literal 98 zcmZ?wbhEHb6k-r!n8?K7wD*5lSlIvn{}~t<6o0ZXGB7YP=m6P3Ss@_XcuN1u(_;T` zaW1%~z`9l3X-nZF(_Xb_Gn7}Yoj0B7y=1$V*G+Z3)nc+1b3jyz1)e?dS^Yr@p`u6qq z`1knaV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconChecked.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconChecked.gif new file mode 100755 index 0000000000000000000000000000000000000000..7688b11ea2ce7e7cd8f656a6b2fdab32a8c9b911 GIT binary patch literal 257 zcmV+c0sj6+Nk%w1VG;lm0K^{v<>lqx-rn5Y-2eaoyu7@RkB^g+lW}oz`T6z> z(eLl?{{H^(@bKp5=IQC_u&}V>?d|R7=jZeD^Wov)>+9?L`}^+h?xm%r zb8~a(=;-$L_W%F?A^8LW0018VEC2ui01^Na000Gk;3tk`X%c9vnj$g0?*b$P#JcdX zICOpHgGQw{NR)6e3&y}?9)X_4BQgmXo;if4L3wnpBqT660FMX~#|FTFEeho$qdZiHk3VA4m)n1%oh@Vgnb9nGl(bxdU~oh|~M=_W7OJ`2=;P)6L0)~`{VDU4?p^E{D1cK@68W?fQB&O0E$0Z7#SGE z8FWDMAUhdY%O9xrrFimXteW+RVb2F{-Zj#P1s+WM#>?Trs4vFBz{Bd|TA{=?VNz?8 zf9#=m8Jl4Wu jSAO2S%4$Y-S6;z9Zn5N&wy7eijtds1>MT)GWUvMR)yi$< literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconSound.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconSound.gif new file mode 100755 index 0000000000000000000000000000000000000000..5328b86889d78ca39a12c5759218276994f9f1e6 GIT binary patch literal 242 zcmV{{2S2{{8*^ zjA^8LW0018VEC2ui01^Na000GV;3tk`Nk(X@nqm~Z@M}e^8^c!M zmi8S8KmpGufNg{)q9>41AV)n|Bau)Ho-JP^bCEo-pXdu|*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite1.gif new file mode 100755 index 0000000000000000000000000000000000000000..63be3218e5b90c3bf39e851430a2d73765c93de3 GIT binary patch literal 276 zcmV+v0qg!pNk%w1VG;lm0K^{vso3+at*re{PjW@gan z^;3?nv9*zr)cL*Q^^cE_|NsAlgoND7j+d%`x~WsGtZBEmx4OuTI@Au~B=J4?A zz_NqA(cDJ9{{R2~A^8LW0018VEC2ui01^Na000G%;3tkGiD5zUMQrPem{wTW3f=f! zL_t!_30n?VFgyYei{)SoIG+#$!ub#|g+r-?(G!d!kf&2isTi&zaE@G=pwrURgBuqIevu7`HVgun3y=T}1Ds%13mKxM arIQ`60I{P310I|SxVgHyCB42RApkp=h{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/iconWrite2.gif new file mode 100755 index 0000000000000000000000000000000000000000..c761c8bdd00664343583b94b41212e53983321ed GIT binary patch literal 270 zcmV+p0rCDvNk%w1VG;lm0K^{vg@uL5u}0?4h5!Hm2nYym$^6jh_0-O;tE;Qd&d%bj z8Y@LqW@ctnj;_7p^{CqSk<|I|@#(v>UZ=Hq@!qDlx3`;{o4?An;;5f=-24i6BHUK|9H4U7;4m;+P|7@h^7C1xF^ Um7fJ0jtsK1w6i6*xFjI}JNrz0E&u=k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb850004cbd28a3da011cc60870a4f7c7e2f18e GIT binary patch literal 237 zcmV8^cjU zm-gK_KnKqkvj|VbmxOa1^=^_*q1hs8JcR`H^L%Y4S;Ds4m>?1a#`uOo0Me8-?BEtK nC4O#0Sjw|0vU)46X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d928af6394a83a9ae7f52b159e81a8bc98dd5b8c GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..30bc7deecb497409fd1b02e5e0274962f0cf8e28 GIT binary patch literal 90 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/safe_close.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_scbrblue/safe_close.gif new file mode 100755 index 0000000000000000000000000000000000000000..bcaa457e2c24077c18ddd1c437742ef3cffe4eff GIT binary patch literal 259 zcmZ?wbhEHb6k-r!I3mN4kdRPy;eXEQ|7j=xCm#R*>+k>g-7Imzy8O@#`awMUv%z&$+`dE{`^l)PR`28diV2x-kJZg$NpDb z_zwgOFrfI8g^__lhCv4;0J4*TwLw9>FD0|jVbwZyfju8)&tgzj)GylYu+oT^P5Dv* zYn2KEOR%TNoYq?x%_SsQn48)d1bim<9Zy^nz`|BTlE{{H`T&i`u5|8UL!{{H^@`uc9n|9H^+#{c&G|6N^O z^7{Yy`1t?-{{R30A^8LW0015UEC2ui01^Na000GopeK%GX^udut|t(@@SB=I^c?ST zyFjTj4F+S=a0PlK00*OiD4dGg(Ki?r1Oq~b01!-*6NzD*NC*HpB+5ZpI0TCV*Q*w- z?&vQHuc9aUDl$n36%+`D9SA9YC|Ctn0}EU{J^}(`1_=abGd>Ac1O;*fos|O;6Bh#l L7IlAsCLsVjNCkAC literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..6cba317afebb7ade89a1b28f7c69a71475e1b204 GIT binary patch literal 284 zcmV+%0ptEhNk%w1VG;lm0K^{v`{Shl_Tlr#R{7L+{OGmRqALIP-uvsr^1@5-zD4=o zmh;SM|NQg$+l%__$?Djv^vh!Y^49+F&ETvo@4P?GohAG4(94=4%$+Fn&U56d7@>qc z@4!p!)t%+AE&u=jA^8LW0018VEC2ui01^Na000G<;3r;WXHSnIT|go^1TKXGaAXKXBm@G$03}RU*Mn9Oi9l({ix{A23?dt-;(KAc z2N27pQfSO=cMt*sKNTJs8D2pH3xWsK`{}Ln#7pka zbpG+k{`1oFz(M=%$jh1{|M%Pe_vGZN7X96O?$LPu<(dBAhxzZ)|N8Ff#a;IH_VT|y z>BUK*ggx@-%K!iWA^8LW0018VEC2ui01^Na000G&;3qz0X+C25nMGS*8YZCX!$D3N zMOt*wsRsn&%8?d7)oRFWVIGHMjR{#GBM$@uIAS0X6$^v$5X_WNuw_DEbjs&im`woW z6!`dv4ge%_6oCo`Ko10Uehq|p3Ii8~eF+I00gHH!g^~@Fl@9}-m_Z4foP?mEBNC(= b4LKRF10Gx?stv6tTtT!sO1(8Cz99fRhqZ-y literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..e076d0e159a24ddee825cbe00202abb07a5d7280 GIT binary patch literal 237 zcmVd(>+9>iy}jh)~ZM@K= z>jpp!he$*On+T2qMu!s+W{8`Hrjm3pg^w3T7^yfG&4?jOgfzH=u;D`fzz_tk&_IE- n-EGYq^78W2)6>+{ z)X&e)_xJbo^z{1q`S9@X?d|Q?*Vp9a+9?7?(OdG@VB?O_xJkS+uNa`q4DwY z_4N42$jJZy{{R30A^8LW0015UEC2ui01yBW000GQpeK%GX`UsZuIxGj0TawLJ-k7o z>qECh5`jPjD;SOj3gmGRUWlBDMv<&Ag@6}EC{R>3O~D{b3{1F@@W4X$z!D3taDWK3 n-;nqmL9pX84Gjrme0_HT5)2Lw3WbI^HIaTqEtPF3Cm{ekMU{Pv literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckGray.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconCheckGray.gif new file mode 100755 index 0000000000000000000000000000000000000000..e4df89838750ead7a9b9824c43164a3374bc0ef2 GIT binary patch literal 239 zcmVyi}^nMOkddt5GvONXM+2nocEf-?{tC- pVF81j?y%!31p{&r01kb33<&}ef`x{DW;GKvkZ&!QZYU=q06T+LZFv9y literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconChecked.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconChecked.gif new file mode 100755 index 0000000000000000000000000000000000000000..24b68357226e4eada83f4c095f40abc8c33fdb06 GIT binary patch literal 281 zcmV+!0p|WkNk%w1VG;lm0K^{v^YioU?Ck35>SJSL+1c6q`}<^MWcT;?(`cRU?(X^d z`S|$w(rBFe`ug_v_Vo1h(r29M>FM?L_0MFP*4EbX@$vBR@ZR3u-{0Tn=H~D3@7vqk z-QC^P)YQ;sn*aa*A^8LW0018VEC2ui01^Na000G+;3tk`X&Pv%nxAnrMJykOaW=rC zTS-LMB}2ina5w-O-_JG@E}jlaMeqYQ3oz{AVF^Ss1*S+S(>^MRK$t`>Hx81?1TbLB z5DrBF0`XuXbyo!lgb4@?5Cj(qfn$S&43Q8N8v+VqEklrq6dVBuYgY<}haDFI3ow{u fqX+~T33@TB3o)Y^u`&yoEhz)PD!eSiA0Yrc6yJoj literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconFlag.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconFlag.gif new file mode 100755 index 0000000000000000000000000000000000000000..2784d0f3d0b63a0aa9a06928f844aa35d1c732bf GIT binary patch literal 268 zcmV+n0rUPxNk%w1VG;lm0K^{v+kJi5d3o^g@agI4?(Xi>)6>n(&HMZNWMpLb_xJkx z`uOlq}_V)Gl_4M@gudlD#+S=UQ+~ecp;o;%YU0u>&U)Fed z?d|RJ^Ygj6x&QzFA^8LW0018VEC2ui01^Na000Gv;3tk`X(DKlaX>FN0R_+iIi=;-KT$6x2? z=lc5k_V)Jl^z`-h_5IOE{?SSC@$q2AUGDDg)P7d-{0Tt?CfF3Ui0(w z@bK{R^73B9TmS$6A^8LW0018VEC2ui01^Na000G#;3tk`X$oknnx8N%K`al0a4uV; za}z?>B|(5;U@#<}!VfqS8lFeMWoc^$VAqNSV<}JqRgq8@I8-Q+Nd`y z*w(pF literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconSound.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconSound.gif new file mode 100755 index 0000000000000000000000000000000000000000..11fe41c9c2431917618c4efa8377e31ddd6ac7c8 GIT binary patch literal 305 zcmV-10nYwMNk%w1VG;lm0K^{v+}zxoo13bts)~w=goK1_Y;48F#gUPbqN1X_yu8iL z&17U``T6EYqw^78WV@bGbQabaO$OiWB)UtjzC`}ghB*XaE2IA^8LW0018VEC2ui01^Na000H9;3tk`X)b80n%}Z#eh-@MGdOq=0z_orJ4gnDbju}H54FLv+TNV}ts2CRu z92^V^5F3{O01E({5f`ou3>yrWB0~%U9=ff^z%4Qc7BbFT!N1Pa4A8+U*eER9CLsVj D({X=r literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..d0cf49ae6a74a716d0fa929f6efca993d29edcf3 GIT binary patch literal 235 zcmZ?wbhEHb6k-r!I3mcfYuB#dzkjEsq)78T4Eflr> zrdW8HhJrxKtD6$ni#UHAZVU@Q-(4GRRMBFPnO4ux$eNwanyITbNkeC&K5D-@kwV{Q2{jFJHcX{rd6a$9M1E z{rvg!*|TS_UcH(!Wy*{hGv2&;^WnpX7cX8+o;>;g|NjhxfZ|UUMg|5E1|5(>kev*y z#R{r@DVco^tClV25OG#uKgu%Yb%M-9C03r}XIZ%!n3__I8VqdO816pwP*4!+oq4fU zL}qHj!D&vaGO5jn6c;x1?7x>6!83O*bMwKZK#e`S3ySNF$}8IpOFbJCo84HVqS9i# Ww5K|!^iMFFq&7`kcY(ShgEat9LT1qb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e64821e216c7135072a501ebdc8e4e1e86a7384 GIT binary patch literal 233 zcmVgxah|K;W7^78Wb_V(=T?EL)v`uh5=uCDO# z@b2#J`1ttr^z`E5;^5%mrl+TjjEwd4`lO_!+}zyW-rnTnm=jZ6@=;-6)reu8lA8!Np-?uJhb3bO;);}tW5ARNKg8%XupktiLkZ-e!2}du1Q;txlnsgo<04qY j0M!EGAgEtq9$k8TeRdKYX@rG;HH|ZWEs<9!Cm{ek_QZjf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..71e86442e22528663a8b47fe9a3bff1e88b55b2c GIT binary patch literal 232 zcmVtw6wJN`27F>|HQ<^_xJbc=;-Q@x{i*?(Xi<(b4Pc>-hNi+uPgZyuM$ftv_6C>R$O1>+FJ6$^_7WhoPOh)}8IK`=Cjfk`qVfpihyYrvt193U4BN05e9 is0KtrK)1p$TzPwZbpaV?gM@xHj5B^MkX9%sApkov$$U}( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconWrite1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/iconWrite1.gif new file mode 100755 index 0000000000000000000000000000000000000000..24687cb125df59ce4955a0a5e211831edbc2b649 GIT binary patch literal 270 zcmV+p0rCDvNk%w1VG;lm0K^{v)vIdi&v*Lz`t|ko!^6YAiAvtYpVhB`_TqNosc7ii zxcu_x?bM6>_RRCzyzK1k#GGRH=eyv;i}L5i_37O5?BkhxOz_!`WMpLg{QS_CUE$5N z`Ol;I(4lf(I{*LwA^8LW0018VEC2ui01^Na000Gx;3tk`X<}%qnjba@a4ZZ1cFr{Y zJc0ro0LKWEAsCN@h{Ull0EU@ZPH~AC9Ge3aNtj$3h`^z+fM(7aFBox2*tSLmW8J2_ zMZ~j0LQhmOcP&L55(WVX3<*YnBzX`E2?YQU6flfi791TK1xS~8XC4+12Ng1(f?Qmv U7y@XoXaa#PDzzvqxF#V0J0cT%!T_RRCzy!ZF_%bjHR=eyv;i}L5i_37O5?BkhxOz_!`WMpIf{QUXQq0p9H z;mx$ijXU|zqyPW^A^8LW0018VEC2ui01^Na000Gx;3tk`X<}%qnjiKcaEv?;b|OHY z8wR2Tg@9v($tSVS}E%r|_vBy2>Pg28rE z;G!a0A*m-S8F(#H91;Wq2Mh@`2!cfjWeFVt5EL|lB##yz8XE&LjhSc|77zs$GMHST Usg4L~uxX*0DzzvqxF#V0J5|YkWB>pF literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..f101ba8b410c4a87bb7246ffad82082fdce3aedc GIT binary patch literal 251 zcmZ?wbhEHb6k-r!I3mjM`}gmZl$7t^zyJF6>&K5DKY#xG^5x67Z{NOt{rd6a#}6Mq zynOlc)2C1G-o1PC=FR8NpI^Uz{p!`Lr%#{0c=6)>`}hC<|7XAp6o0ZXGBAiT=zvs# z>||iANKoxd$z;n|H7its$3chNserG4q4rsq>q{9PI9SL?OgYMLAtW@9-9>5B7E?xp zH3t?n=%_HP_RzR2CB*AK!$psug~KhWR`)m;3rmyTw&QI6Of|ZB%*?E;Ce67K?HwK6 eWo?rUl3MD@rZKY2Fk+detF=f&XQ`SZgEau*`e>>E literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..2bf2b398d7a2a9276eea5de05a9f64edd2bc233e GIT binary patch literal 131 zcmZ?wbhEHb6k-r!*v!um78Yh{X=!U~8yOk7bLUPcC#RsGprWFpl#~=-U*C%tFM4`< zW@KbEH8oXLRsH|}U-2gkBLf3JgAM}_fXrZEG5B!ObM;;e|3@XNhadT#V&r(d*uPVx6D+9k<5XUw)5pFjH0}sjm6HAIt<}6cUum%8kgDq|V literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d928af6394a83a9ae7f52b159e81a8bc98dd5b8c GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..30bc7deecb497409fd1b02e5e0274962f0cf8e28 GIT binary patch literal 90 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..8f747585742e5b072d775bad2f21a39ff5bb1999 GIT binary patch literal 130 zcmV-|0Db>QNk%w1VG;lm0J9GOqobqI(b1lsp1r-j+1c5$va+eEslma)udlD(-rnZs z=ETIr&d$!cxw*;7$^ZZVA^8LW000jFEC2ui01^Na000Cp@X1N5y*TU5`xSyG2>>7h k22yxNF&sl@G)}-Q95Mt+(jf4^XUJLudyL;wH) literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_vista/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/folderClosed.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/folderClosed.gif new file mode 100755 index 0000000000000000000000000000000000000000..5f07acb92561fe24072506003b9b9c3498341e8c GIT binary patch literal 245 zcmV#%}4*< zhH`RpUS3{(eSMUal$x5F|Ni{?wgLasUH|5!@zMeJ*8+xyhNY#YR#sMyj*kE7ulV@* z``ZR-X=(rZ+yDRnA^8LW0018VEC2ui01^Na000GY;3tk`X`X1Reum&0D;o^-aIL~n zQB>tIu2(5nC>oCe*obI+G!`8OMkvZ%9vO=RP@@3^%fYs$QJBpGaCKmTAl`5|ME%Jv v0ExU_{|zrD2Z4fu6LbO`1`-5|jEoX=1`P}mjg=8}8wOKBoIx?4pdkP|`9r)wu!x--`e2x_o?m|M=#Vl$2jzU#qLDww?jkodM6!&;R8+ z|JG>#y9MT`0ssI1A^8LW0018VEC2ui01^Na000Gf;3tk`X`X1Re#+n~D_amWajgR( z>>FUYuTl;{EE+MeQLeyjItv3*&OohN4N)b5!R0!BK-cY)gE%IS#{^KLNwVdKgaV*M z8u&)!;1HE35(|QZf)N#C0|FTp2aS%791j{I3JwY$37MLj9RmR(0WD#pE-|L3Apkp1 C7H^{f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..2671733da62a219e31ca041486e06130fc9c3ce8 GIT binary patch literal 275 zcmV+u0qp)qNk%w1VGsZi0K^{vmzS5>+1b3jyz1)e?dS^Yr@p`u6qq z`1knaV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconChecked.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconChecked.gif new file mode 100755 index 0000000000000000000000000000000000000000..7688b11ea2ce7e7cd8f656a6b2fdab32a8c9b911 GIT binary patch literal 257 zcmV+c0sj6+Nk%w1VG;lm0K^{v<>lqx-rn5Y-2eaoyu7@RkB^g+lW}oz`T6z> z(eLl?{{H^(@bKp5=IQC_u&}V>?d|R7=jZeD^Wov)>+9?L`}^+h?xm%r zb8~a(=;-$L_W%F?A^8LW0018VEC2ui01^Na000Gk;3tk`X%c9vnj$g0?*b$P#JcdX zICOpHgGQw{NR)6e3&y}?9)X_4BQgmXo;if4L3wnpBqT660FMX~#|FTFEeho$qdZiHk3VA4m)n1%oh@Vgnb9nkF|9@1xL)6>)c|NqZWQ1$iolarITMMc^* zHOm$j`uh6V*x2ak=)AnV@$vEQ?(VU%vDXz9%#e`Z-`~N(!EteMuwokC*Vo;tTFlJM z&W9t5i;LC7#Q*>QA^8LW0018VEC2ui01^Na000Gw;3tk`X+CJGn&MNuZxj%P#JX@H z)AgAb5C^Y7D7hGiWT4SOI1$Ezrjel}5|&1#0wuW?28CiVku)5R?#RU%OeTxP!|_tL z3Ig{60I<*tb{{SR1^@#T6b%q{Q40wa9%ly(j9vv88x0YYIe{)11b;uCmlY8|m1_k^ Tl&FCO7qPOl7ey?$Bq0Dh7aMnT literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconGraph.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconGraph.gif new file mode 100755 index 0000000000000000000000000000000000000000..0dee8e5361d7dfd58941ffa5d6a9ebdeeda3e22d GIT binary patch literal 263 zcmV+i0r>t$Nk%w1VG;lm0K^{viqG<FMeEsR-la zlW}oz)6>%=mewzz+x)!=u&}Uo#qImB4f*-` z;Nak#*!MxI;s5{tA^8LW0018VEC2ui01^Na000Gq;3tk`X+~(OnqmaKFR@S%#=0;h z)AgA{hZ&4gatQ>l146=N79q!1gMd(QIFe@+vS}Qs%je~i>vUdOl1rn37z_{q0R7Y? z-0)0>u7)@q5CH)Y4-b4JE(3rJ3=ke3hb<5T0}urT5Ed4ZABmNh5ET`iI6paQBNP*> NtgRD7EU_dZ06P>gco6^q literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconSound.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconSound.gif new file mode 100755 index 0000000000000000000000000000000000000000..ed1d0c22cb57dea487899d1724009f7725d603f2 GIT binary patch literal 283 zcmV+$0p$KiNk%w1VG;lm0K^{v=H}+%;o;M1%A^8LW0018VEC2ui01^Na000G;;3tk`X%=Xznqon`Zv`ks#=7s6 z$aH?d#lTn) z9)U)J;QlZW7a9%@7#IW%0SJ426bKOugBlkv8we77BL)TwoDLR~IWK)J1dkCGFfgMZ hI1d=8shA`<1QG_ZvLm#(q9qENz`>eEEX5=t06X@$cGLg> literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..f80329c7565c8ec1a02b928c0cb530110deee2da GIT binary patch literal 228 zcmZ?wbhEHb6k-r!I3mID|Ns9hSFY^YvuE<;$%Tc5moHy_|Ni}k4I9p$J$v%x$qN@Q zyng-q>({UM@83Um?AX(%PhY-#`QpWkXV0E}`0(NL=g&WX{ycvC_?tIxfaWk@1ByRc z7#SEO7<53AAUhdY6BX3@QZl(RR?S+(uxI^8kpl;J86G$fYXNvq{2Y zuIGXP$1N68%^B+s&4^K$sB=3YC?1b*;2ft_|7{q?A(@Oblt(hp>N*d+wZQ;joM!Pxhkf%D677q aHI*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconWrite1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/iconWrite1.gif new file mode 100755 index 0000000000000000000000000000000000000000..99a2d76dd95514af4eacaa9d4270abcd7a1363cd GIT binary patch literal 275 zcmV+u0qp)qNk%w1VG;lm0K^{v;I)sjj&t|Oi_no?>+9?P@X`3yx^Z!F)YR0xyu6Z- zj@q7c|Im1sUo-y1o6OA2|NsBtkyNIprm?ZHrks=i^5^;a`NDli-=1pkylnIH^Z(F- z`0L{|G&F*Gb^rhWA^8LW0018VEC2ui01^Na000G$;3tk`X(ni@nqmUIFF_#C#JVsf z(+~zkhLH>P<>lq!kyNv@v;Xqv`T6<7en+L5kofE4 z@4RgP-opRTg8%>jA^8LW0018VEC2ui01^Na000Gx;3tk`X(ni@nqmUIZ$u%G#kw#g z(~u!lhY=38gGdgSLqM2=OdCjp4_?21{rU6f=g*&i`}XbU&!3MUKL(n>fEy_OWMO1r5M$5* zDFNBZz#6eYwJ#-;Eo0TJB!)ft69pO$?lK54D5-tM(6WSGVM@UU4wnNda*dM@E&PfEy_OWMO1r5M$5* zDFNBZz?!f?waYPc-s21=o#+6Tf+b-LH*^CGHqN=VLoDeMvp~pp83iUmi@7HhP6rx< z$niRc%#2VFVe6bWB}D7^)=fKG+13^3ezn$%y?pzv1-F_X)w1E_Uhl Y%`V^DI3r@>B+iBXR;BFOj;svU03qiW#sB~S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..f9db803e5e55af69d71fe2085e599b2fd99f2bdd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!XkcVGc<|u=|Nj+#vM@3*Ff!;c00Bsbfl00>zv1-F_X)w1E_Uhl Y%`V^DI3r@>B+iBXR;BFOj;svU03qiW#sB~S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..80190499e360bc559e7cea92365785fc3cb82723 GIT binary patch literal 68 zcmZ?wbhEHb6k-r!XkcVGc<|u=|Nj+#vM@3*Ff!;c00Bsbfl0b2zv1-F_X)w1E_Uhl V%`V@|_{gK|S?97>r<7P3tO4J*7$5)u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..9ff1084482895b47548d4fad7b7b203b06766d95 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!XkcVGc<|u=|Nj+#vM@3*Ff!;c00Bsbfk~k!zv1-F_X)w1E_Uhl b%`V@|_{hUfp)73W7N@m0W#6-iGFSruQ)?MB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..15fa54e78d5f7985158be0dc654db7bc81e6c200 GIT binary patch literal 63 zcmZ?wbhEHb6k-r!XkcVGc<|u=|Nj+#vM@3*Ff!;c00Bsbfk~{Vf92`7{EO#IY3ep+ Qo_d?F?$MKpzKjgk09}9-lK=n! literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..398000fe27092eec943fbf929749d764b846b9ac GIT binary patch literal 78 zcmZ?wbhEHb6k-r!n8?I%`t)fA28RFt{{u5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..fb482e4e0f9294b3bd8d9dd3bf42330e45e3f321 GIT binary patch literal 86 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNU{arx-+21w q`-I?07p)rZIeg-;jnT+j(y%D%z$TAOy8`vY^E#gXI%m(yU=0B6R3JkD literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..3d99428deb3d791b79278a47f84a979010eb80e3 GIT binary patch literal 88 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNVA7nE-+21w s`-I?07p)rZIeg-;jnT+j(y%D%z$TAOy8`vY^EzC2?u)k#VPLQZ04Uoa00000 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..e90389cb22934acb8e4617f67e869f656c75ee46 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNU{agYzw-23 oer2XDOzFj^%ZgudF7jYqW?3t~c%655VUU7siS3=O>qHo=0fR*xTL1t6 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..ae8ef742aaf560fab0ebdcc5a4f59f6e1a689c31 GIT binary patch literal 81 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNU{adXzw-23 ker2XDOzFj^%ZgudF7jYqW?3t~c%655;U%BzC5#N#02fXhE&u=k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..2a89621cfbded30b9df0549ec32850a02c45362d GIT binary patch literal 82 zcmZ?wbhEHb6k-r!n8?I%`t)fA28RFt{{uU9=(iQhs^~04pYKzvnT>lo#z+epk+^-v= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..000ad64b783d7a283702ae64c55445fe9100ed27 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNVA7hC-+21w t`-I?07p)rZIeg+TWD?JN9LBY373;e0jwi~Czog$+IQISDeGLW%YXD3`A_M>c literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..92cd8df682296af203c115d622c13010e2763f8e GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNVA7kD-+21w x`-I?07p)rZIeg+TWD?JN9LBY373;e0jwi~Czog$+FpH`AZ~ddf*@cn88UW8=B8C6} literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..40fe33fd50ed219575a9dcbed5c2ad348e856447 GIT binary patch literal 88 zcmZ?wbhEHb6k-r!n8?g<`t<382M;nZF#P}jU-2gkBLf37gAR}jloeuNVA7n^zw-23 ser2XDOzFj&552n;I^SVZNW&uG7ltvrQwnsv8%yr|Snzmn5CelX01{gui~s-t literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..9e5bf6125b18775f1d3bca5dbf754dc5e9e9ae8b GIT binary patch literal 83 zcmZ?wbhEHb6k-r!n8?g<`t)fA28M$N5B~rEU-2gkBLf37gAPyxC@aLkz@###f92`7 n{K`yQn9_?kAAEN!G~Qv-l!isZFAQULrxfUTf9t)^%3uuuX73%6 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_winstyle/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/books_close.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/books_close.gif new file mode 100755 index 0000000000000000000000000000000000000000..e53024635f91ac21e765ef9240344e45208d6ef3 GIT binary patch literal 284 zcmV+%0ptEhNk%w1VG;lm0K^{vSy@^C&vpOJZ;6SC|G!56yFJ;E3H!1u|HM}R|Nr^0 zDU_6y|HfSZ)rIk>A^*Wl){O>aWMu!zV(Fk6ot>Tkxi*rLlJ2D*_N^voXJ`GiEsTte z|I&Q_+LiOFBme*ZA^8LW0018VEC2ui01^Na000G<;P+8LX`Uq|iU2fWlXE%obxpwf zwV38$il74HapYDl1>#UCI13ex;>dz1B!jGW0Hy8>2hKwxC<`Qrf)@a8AOzZgfI(Qd z-+{cGZa=sMdV6&`Y<_rpb83WlfQWpHhK+f1gGgXvWM&c%ik1o;1q1{SqoNgS5E}~? i77MPftQmw98wn8+3AwrnUKAN6wuLj?I}+`EI?{r^DI*_t}42qtesUlbf4+WlP2B z4K)iFF6`*)JAVB5oQd@-SFHkSVIUeP{$ycfU=U=`0qFqQ$-tVKAfo7)IZsuoi_wsw zK!-j1irjjgHw=64waMhDzqs1a%GjUrM^LV9iO#cR!2(aE%~{Giiw@oVxave!cTCC* yE4zmCFU%^qyyNdbUv^b@>Fu9hm7MO(%*A!49Gtw&o*J5_N_+yXJQGb78LRlp*jZmA1WB0N&vc|J8@Z$N{>&0q>s>^rRK{rx^dpWqEmd zjEs!`!B5fA(f|MdA^8LW0018VEC2ui01^Na000G<;I}knX)a%?HipGmN*r5_x*E)6 zRXnfMwhv35PxF+KG!^7g@;{Blj|Gqu{odEy0 z0H~`0&d~s5WMrM4o$c@+-r*3XrvbXX0maAxY;A4Z-VJ$qdC}3)jEs!u=jYGVMVFXW z>g^nxo14kZ0ssI1A^8LW0018VEC2ui01^Na000G!;O7WrDNqFAd~7R3k|zOxMj(XH zx{(J-lL+1b3jyz1)e?dS^Yr@p`u6qq z`1knaV{o{O|AY_xJbu`TG3( z{Qmv^@$vEZ_V@Mm_4@ky)YR1b`}@w$&g$yw$;rvl(b3n}*WTXV`S|(S+1cmk=Z%ex z|Ns900000000000A^8LW000~SEC2ui01yBW000GxASaGw$pvVts$y`w#~{yd(8dg* z@4A+WmIK4lKp2k`06+v85E_ZcBNBNe0RraWvbiV>;A;UQstlBXz+xfBR74U+1%1&d z3yy>Yo`az84F(T;927$d7H9$H&K?pP!SH zlK}w%yu7@RkB_OTsjRH5va+(5mzSuhsI#-P#KXk0v9hkMuCubUsi>*6v$U|Uu&%DI znwpxUqoZ$cZ~y=QA^8LW0018VEC2ui01yBW000G);3tk``7vm!sv=_;l7u<5gT+j1 zI7RXNz`}qa8b}HjjbOQ~02T|;#PQHTE|ZLw0`-Ulo63Sf2?PcRXhb0DLB{|>dJ(A< zM7zgZuBJc?A{`C@0&jf*7abxA4jTs$ZxIIrhzTMb4i*rPbd!`293l~!6#)Pc6a$n2 d6%ir|R00qas~Hmz0tzAxyuH4@Ccz~k06PUwbSD4+ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconText.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconText.gif new file mode 100755 index 0000000000000000000000000000000000000000..c5deed273886f504beb69cc6842cea6bf382da23 GIT binary patch literal 129 zcmZ?wbhEHb6k-r!Sj5Wk|NsBTvqaO<(pp+t&YU>|}H_pAa+sp6zr-gZ&7OF+O c_}Q>SankaZQye$el&y-W-0#z6!N_0@0OwCKg#Z8m literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..c4388e53533455f5f9a358b3bf76e2c9432145b5 GIT binary patch literal 279 zcmV+y0qFimNk%w1VGsZi0K^{vm6esHrKRHG;*VC*ySuxboSgps{=B@rkB^V~`uhF+{rvp=`uY0y_4f4h^ziTSa|-(g+NP3t`E;95kZALUBn{5Sa|3lDG__oP!5ZphO~+0>bnCY{Hg8WFnDF zA_dDv6hI~@6Apq76BG#nd`J}$5`zvB5fz9Z4T_A8kQEIgl?Q);gM|s39{_N2bar?a d03rZW9tjx*v;`Rn9<3h`yuH4@Ccz~k06Q&MjH>_u literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..174eff4a1b437beee77dac8d68ccd365af27a2d6 GIT binary patch literal 268 zcmZ?wbhEHb6krfwI3mSx>(;G5fByXY_wUf5Lw|n%`St79$B!RBeE9J7>(?)zzx@6C z_ut=t@87@w_4C*F@88dzJ9qTx(UT`n{{H>@$M+vsuU`H6({UU z|Nox>6)65>VPs&CV$cBzgY0Br?OdSNm$H&EW7R691AERWp4Y!{jBVN*o3tCVcn&vg zu;}yPR#ILhBQ(uzp~6HTX)&+K7McP~4;U62T+Grtaw>ddgvODn-7g$-SVWrkJh)qN zrjwPCyNZdMk+n`ru%W4?ja5*oo1?6vs%D~;KxTGsK8vV;l7PQ3uMo>h79n2YMN-Tg OH*MamwoO%$!5RP&uYu|S literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..e53024635f91ac21e765ef9240344e45208d6ef3 GIT binary patch literal 284 zcmV+%0ptEhNk%w1VG;lm0K^{vSy@^C&vpOJZ;6SC|G!56yFJ;E3H!1u|HM}R|Nr^0 zDU_6y|HfSZ)rIk>A^*Wl){O>aWMu!zV(Fk6ot>Tkxi*rLlJ2D*_N^voXJ`GiEsTte z|I&Q_+LiOFBme*ZA^8LW0018VEC2ui01^Na000G<;P+8LX`Uq|iU2fWlXE%obxpwf zwV38$il74HapYDl1>#UCI13ex;>dz1B!jGW0Hy8>2hKwxC<`Qrf)@a8AOzZgfI(Qd z-+{cGZa=sMdV6&`Y<_rpb83WlfQWpHhK+f1gGgXvWM&c%ik1o;1q1{SqoNgS5E}~? i77MPftQmw98wn8+3AwrnUKAN6wuLj?I}+`EI?{r^DI*_t}42qtesUlbf4+WlP2B z4K)iFF6`*)JAVB5oQd@-SFHkSVIUeP{$ycfU=U=`0qFqQ$-tVKAfo7)IZsuoi_wsw zK!-j1irjjgHw=64waMhDzqs1a%GjUrM^LV9iO#cR!2(aE%~{Giiw@oVxave!cTCC* yE4zmCFU%^qyyNdbUv^b@>Fu9hm7MO(%*A!49Gtw&o*J5_N_+yXJQGb78LR>>KCm8QR?piHV8M(E!)l38o6~o2>rKbVh-wtGCWSyOzy1fC_*awo5lF7>fz`_BHjEvCJ0_*M_ zXJ=={$N}^ACIA2bA^8LW0018VEC2ui01^Na000G<;P*{HX`baIiU34i)Pp@ShEc%! zwU_o>h#=z9dE{0tM50hJI1LpI;>dy^9E7Zv0Hy8@g-ygEC<`13gBJj9Bm~-kfH7FN z-+{cGZZEh6dV6&`Y<_rpb83WlfQWpHhK+f1gGgXvWM&Q#ik1i-1_J{TqoNgS5E%;= i77MPftQ>?B843~-3c0!pUK1Q8w>>KCm8QR?piHV8M(E!)l38o6~o2>rKbVh-wtGCWSyOzy1fC_*awo5lF7>fz`_BHjEvCJ0_*M_ zXJ=={$N}^ACIA2bA^8LW0018VEC2ui01^Na000G<;P*{HX`baIiU34i)Pp@ShEc%! zwU_o>h#=z9dE{0tM50hJI1LpI;>dy^9E7Zv0Hy8@g-ygEC<`13gBJj9Bm~-kfH7FN z-+{cGZZEh6dV6&`Y<_rpb83WlfQWpHhK+f1gGgXvWM&Q#ik1i-1_J{TqoNgS5E%;= i77MPftQ>?B843~-3c0!pUK1Q8wX*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d928af6394a83a9ae7f52b159e81a8bc98dd5b8c GIT binary patch literal 93 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..30bc7deecb497409fd1b02e5e0274962f0cf8e28 GIT binary patch literal 90 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..b3baf66957418ec627161067d0d10155f206b193 GIT binary patch literal 249 zcmVfz$v-_!v_W1SP-`%{*++2dBBvyp2zRXm5oTRqAWQL@?%GC1m?)CHY zq_)I#lC1Ug@Bjb*A^8LW0018VEC2ui01yBW000Gc;3tk`X`ZN9P1IDSQhOyUC7F_S z4TQots~d?j<1qw|MTSCJMT~+)!*Ia7L=#SeaFlu=fXrk>iEyJD1EhcmFtL@ch7G7o z#wts4iYNde2OU=;6crjC1pxpL2Qei%6&rpB4|hT&F&Gk+7&a*t7A=D*DIowmL9ToE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..476fbb3291d6043c2829b2552f7286c721b01710 GIT binary patch literal 251 zcmVNk%w1VGsZi0K^{vXo;rd<>GyPee3P(SXfx`@$LEh`L?#U;o{z8WMuaD z_4@q!-r(Nm=;reD^8Ee$^!4-I-`%{*+$2_ntiH@#f}~V>oTRqA!NI}2%G9*N%&)Jn zg@uKrw#4)E?*IS)A^8LW0018VEC2ui01yBW000Ge;3tk`X`ZM^RZ~T!QhPD$B$<+R zAwkd#s~c%DujVvT!3BryOI4-x=2DHIkhg()c^06QOw Bbo2lK literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/tombs.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/csh_yellowbooks/tombs.gif new file mode 100755 index 0000000000000000000000000000000000000000..791daee0a4cefcf1358afec3df4ebe26dad38821 GIT binary patch literal 259 zcmZ?wbhEHb6k-r!I3mN4kdW|qi~hH@8lP9Geps&b|IhdL%M?2!8UJrH{IXi@|G&Q< zS13nCMFj^3|J~mPPPF-NnhuO0Zh$!k8?RHpc*5mg0 zU;%5D3Il6!pvauoTNlkGBv_c6S{Vdi_!i z|Mukft||Zj{{R30A^8LW0015UEC2ui01^Na000GopeK%GX^udut|t(@@SB=|G#&48 zyFjTj6b8dWaRquLfQGYaES!tl(Ki?r1Ovi_01!-*j)!5KNC*HpBq~BsLAc1O;*fos|O*4iy6e L9d&*9!obd;15yD} z%fReYvFpyif?i9`4`?y4AuZc+B|;% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/folderOpen.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/folderOpen.gif new file mode 100755 index 0000000000000000000000000000000000000000..c193e869f19b0553efa0244e817e413a2c34959c GIT binary patch literal 139 zcmZ?wbhEHb6k-r!Si}GV|If^vIg{c4|Nm#sr2YRt6UYDxD*j|)6=7gw&;h9csbyde z$k=t~--J%f$3n{KiG@G!I|N>0n0L#8VS44hqpNyMT#u}IxYto|4a>}PUtj(#ICy8m ob8ZfX^I;z)R;*jJcHXvM)mo*dQV+5vW}i>*t~%SN!oXk+0BBM?ssI20 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..d90899259bbd5ad85adf03a42f221d53a46af70c GIT binary patch literal 123 zcmZ?wbhEHb6krfwSj5V}XI-@7)K}TECkzY>|G@yr00PCIEQ|~ctPDCJ4oEEnvqQwL zJK6?b9&$S@+E=kCBuL~ TzHvnfS8yaVnX+Y1_-%^#tc!qxia%LcMHtu_bQpjD zq?Uo%xnkEHZv!umd72jKfufp@8eMmo`yL8Rxo63zRbA6K>rl3NvqjEn6L~!ro1bp3 d6ML5|UO0olvBYaCXI-@7)K}TEC;!2K0R|L*vM@3*urTO=1VCyTm`yx(-O)Di zvXI+h(Y}gBB0(Z=TE?Wi>3uQ}*XD5YuULKPtM&8mr_OJgrr@9>mF+Mw`DBis5Q8-U Du<#}? literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..eec88a7e1beaa110b1c6f95da85c85efb9ba4780 GIT binary patch literal 117 zcmV-*0E+)dNk%w1VGsZi0HOc@)6>(cs;Z!>wU?>BQfh-KHA4UY{{R30A^8La6aWSQ zEC2ui01yBW0009zXu8}>FiHqsxj2uiNC{vV3Y_7IC~2Xh+I=kOns7Xyad6k{p6ex? XEjSPukH^gdz-&63j;M6HNB{skw}>oR literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/leaf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/leaf.gif new file mode 100755 index 0000000000000000000000000000000000000000..1cf40f1e0c4f01b8f23052434deaca77727e8057 GIT binary patch literal 123 zcmZ?wbhEHb6k-r!Si}GV|Ns9#bLLD-OAC+z761{7KUr8s7+4r|Kpc=-24)A3U3csZ zyq3G|_|fHX*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1.gif new file mode 100755 index 0000000000000000000000000000000000000000..60f2ccb26efc24e92c7bba5f35f2ca243d4838dd GIT binary patch literal 71 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line1_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..96db473332db2f371f4de0a22ae74168d7cec4c3 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{ujG2o@7!&2t}F81 Ri%)NALp7pQUx+YR0{}`36h;65 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e6c6fcf793354c9dd690740e0a406567b661166 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{ujG2o@7!&2t}Alc R+SB`6A9+k$7Qw(^4FE_16iomC literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..df7f5d805b79926663e30ae1767f3b02e02a5c1e GIT binary patch literal 67 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFiG|FujG2o@7!&2t}Alc U+SB`67tDxFNu4(>n1R6>0ErM4cK`qY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/line4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..6c9745208fb34a7b82447d228af45c5d871d2749 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{uRQ&hfAO3xjRnT* R{uI5c4bpH*krZLD1^`)h6eIuu literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/lock.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/lock.gif new file mode 100755 index 0000000000000000000000000000000000000000..1d06b0d84eaf87bec570f2a742391dd305df28ad GIT binary patch literal 116 zcmZ?wbhEHb6k-r!n8*ME|NsA=IddkERQ$=pD#F0bpaT*G$ulsy&goytes{J5$0DYT zlmap4kC6))YU9nOy-b+Y#eDd^%k?X*EeX!uJ7Yf^YFYE9PG$TyL1$5NWs-)vlgP(c OC5B0cx@^G=4Aubdq$vyl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..521c2bf92ec1df08f3dd28711f148573e684cc85 GIT binary patch literal 84 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxPU&CC^_t(c lyQH!EmYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..837f7c329426b5d2e98e14c36c85d64a9cf763de GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxP3d3B^_t(c myQH!EmYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..6dd9fbef59d545cca9e7b74d41c19b4942d94eee GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxP3d2G`YpdQ m)0S&&VQJQ-Uu6^BxDHlwJzSEg`#o!#>eXXe?mGe)7_0%s3K|gr literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus5_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..ae0885b73bb5a94bf0751a3994c2f6a6c0c5c697 GIT binary patch literal 82 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%PGPw8KI`YpdQ j)0S&&VQJQ-Uu6^BxDHlwJzSEg`#o!#>eX+$q72pmbi5eH literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus_ar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/minus_ar.gif new file mode 100755 index 0000000000000000000000000000000000000000..4428ba150031442de188ee8ae60993327805a3cc GIT binary patch literal 68 zcmZ?wbhEHb6k-r!n8?7u!^6YC!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QRPU&BH`Yr$B VIVDZisvHg9xY{0h1hFz$0|5Ip5m5jD literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus1.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus1.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..f1ba5825bfba225a5a88545007fe5e8dd5b30a3d GIT binary patch literal 88 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`PU&CC^_t(c qyQH!E*gb#p)2rvc?+ajHum%7b7#uDD literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..b8cad187409bbdc5e3479796c03d5890cff0c2e0 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`P3d3B^_t(c ryQH!E*gb#p)2n))>-K9fFjxZsF=rd% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..ce882e49cf97aaa9bb1cc1861a68d66990ce9f9a GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`P3d2G`YpdQ r)0S&&VQJAVmo@LEw>Y&`9sD)(vg14no^wiRk(c5=)$P|{V6X-NRgxVb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus5_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..15455b597fc445b38769b90e2d410bfd89e65ef9 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`OzB^F`YpdQ p)0S&&VQJAVmo@LEw>Y&`9sD)(vg14no^wiRk(bVW4`O7n1^^oI9Dx7; literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus_ar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/plus_ar.gif new file mode 100755 index 0000000000000000000000000000000000000000..d2fcaf0120f7b906cf1e933c056b428db2f25078 GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7u!^6YC!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QRPw8KI`Yr$B XIYI%9Z&)0U`&3@{n5GuVz+epk7x)o^ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..27dc5f99748cd0915cb2b9138cd5b2482591d9e7 GIT binary patch literal 241 zcmZ?wbhEHb6krfwIKsg2|Ns9#|Ni{>_2?Z}dCdrBs)NoiXW)3hX{YK}@+3j+ZI1gJs>qzYsw18bgw zLSIVeJPiknU{gz$T{|Wm3hUk(5YY68EiBJv#T5~U=EgwFo(L{^r$_@9mA;El8s|uH zwK_ByN`~$VSzQ!x(P~fP>WV-yON~q?8-bHuUAzg5MU2LV%GL%fNv*=pD#k+GtwI)> N<$4C1vl$c_tO2{*UAq7P literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..efd74ee2eb7b4fccda9d9b67587e7e19120dc82b GIT binary patch literal 361 zcmZ?wbhEHb6krfwxXQrr|Ns9#|Ni{>_26yJo7m?xJAXJ zgsOSvofSDb*~G-eWfa&L85N!7g%kPYCi6{;aTbtfV`USRtDGiL=aeqM#5!$DaDh_{ c&(zI~JEIk)dG<;~dU(r+uz8+laAdFs0KG$SLI3~& literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/sky_blue_sel_tree.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/codebase/imgs/sky_blue_sel_tree.png new file mode 100755 index 0000000000000000000000000000000000000000..f090efc1d831f7fcf21dd52c97af6eb31361fc25 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrK!2~2%)f%k>Qk(@Ik;M!Q+`=Ht$S`Y;1W-`L z)5S5Q;#TsH|4GuqhyU06@bLUs`0{_hhlx;{!?XX%Nk9IJGlWc+>3n!yU^`GfgQu&X J%Q~loCIGm1Ap8IT literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/readme.txt b/phpgwapi/js/dhtmlxtree/dhtmlxTree/readme.txt new file mode 100755 index 0000000000..63b6496e0e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/readme.txt @@ -0,0 +1,3 @@ +dhtmlxTree v.2.6 Standard edition build 100722 + +(c) DHTMLX Ltd. \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/09_tree_design.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/09_tree_design.html new file mode 100755 index 0000000000..c8b966ee87 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/09_tree_design.html @@ -0,0 +1,193 @@ + + + + Easy skinable design + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Easy skinable design

+
+ + + + + +

dhtmlxTree is highly customizable JavaScript tree menu. Choose one of four tree + designs to see how easily the tree appearance can be changed.

+ + + + + + + + +
+ + +

+ +
+ + Set design 1
+ Set design 2
+ Set design 3
+ Set design 4
+ + + +
+ + + + + + +
+
+
Source
+
+
<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
+<script  src="../../codebase/dhtmlxcommon.js"></script>
+<script  src="../../codebase/dhtmlxtree.js"></script>    
+ 
+<script>
function setDesign(n) {
+    switch (n) {
+    case 4:
+        ;
+        tree.enableTreeLines(true);
+        tree.setImageArrays("plus", "plus2.gif", "plus3.gif", "plus4.gif", "plus.gif", "plus5.gif");
+        tree.setImageArrays("minus", "minus2.gif", "minus3.gif", "minus4.gif", "minus.gif", "minus5.gif");
+        tree.setStdImages("book.gif", "books_open.gif", "books_close.gif");
+        break;
+        break;
+    case 3:
+        ;
+        tree.enableTreeLines(true);
+        tree.setImageArrays("plus", "open2.gif", "open2.gif", "open2.gif", "open2.gif", "open2.gif");
+        tree.setImageArrays("minus", "close2.gif", "close2.gif", "close2.gif", "close2.gif", "close2.gif");
+        tree.setStdImages("leaf.gif", "folderOpen.gif", "folderClosed.gif");
+        break;
+    case 2:
+        ;
+        tree.enableTreeLines(true);
+        tree.setImageArrays("plus", "open2.gif", "open2.gif", "open2.gif", "open2.gif", "open2.gif");
+        tree.setImageArrays("minus", "close2.gif", "close2.gif", "close2.gif", "close2.gif", "close2.gif");
+        tree.setStdImages("book.gif", "books_open.gif", "books_close.gif");
+        break;
+    case 1:
+        ;
+        tree.enableTreeLines(false);
+        tree.setImageArrays("plus", "", "", "", "plus_ar.gif", "plus_ar.gif");
+        tree.setImageArrays("minus", "", "", "", "minus_ar.gif", "minus_ar.gif");
+        tree.setStdImages("book.gif", "books_open.gif", "books_close.gif");
+        break;
+    }
+    tree.refreshItem(0);
+}
</script> +<table> + <tr> + <td valign="top"> + + <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;"></div><br> + </td> + <td rowspan="2" style="padding-left:25" valign="top"> + <a href="javascript:void(0)" onclick="setDesign(1);">Set design 1</a><br> + <a href="javascript:void(0)" onclick="setDesign(2);">Set design 2</a><br> + <a href="javascript:void(0)" onclick="setDesign(3);">Set design 3</a><br> + <a href="javascript:void(0)" onclick="setDesign(4);">Set design 4</a><br> + + </td> + </tr> +</table> + +<script>
tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../common/images/");
+tree.enableDragAndDrop(0);
+tree.enableTreeLines(false);
+tree.setImageArrays("plus", "", "", "", "plus.gif");
+tree.setImageArrays("minus", "", "", "", "minus.gif");
+tree.setStdImages("book.gif", "books_open.gif", "books_close.gif");
+tree.setXMLAutoLoading("../common/tree4.xml");
+tree.loadXML("../common/tree4.xml");
</script>
+
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/10_tree_iconset.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/10_tree_iconset.html new file mode 100755 index 0000000000..f92d496459 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/10_tree_iconset.html @@ -0,0 +1,155 @@ + + + + Changing iconsets + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Changing iconsets

+
+ + + + + + + +

dhtmlxTree is highly customizable JavaScript tree menu. You can use different iconsets for trees by changing images path.

+ + + + + + + + + + + + + + + + + + +
+

+ +
 
+

+ +
 
+

+ +
+ + + + + + +
+
+
Source
+
+
<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
+<script  src="../../codebase/dhtmlxcommon.js"></script>
+<script  src="../../codebase/dhtmlxtree.js"></script>
+ 
+ 
+ 
+<table width="100%">
+    <tr>
+        <td valign="top">
+            <div id="treeboxbox_tree0" style="width:250px; height:218px;border :1px solid Silver;"></div><br>
+        </td>
+    </tr>
+    <tr>
+        <td>&nbsp;</td>
+    </tr>
+    <tr>
+        <td valign="top">
+            <div id="treeboxbox_tree1" style="width:250px; height:218px;border :1px solid Silver;"></div><br>
+        </td>
+    </tr>
+    <tr>
+        <td>&nbsp;</td>
+    </tr>
+    <tr>
+        <td>
+        <div id="treeboxbox_tree2" style="width:250px; height:218px;border :1px solid Silver;; overflow:auto;"></div><br>
+        </td>
+    </tr>
+</table>
+ 
+<script>
tree = new dhtmlXTreeObject("treeboxbox_tree0", "100%", "100%", 0);
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/");
+tree.loadXML("../common/tree_b.xml");
+tree = new dhtmlXTreeObject("treeboxbox_tree1", "100%", "100%", 0);
+ 
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/csh_scbrblue/");
+tree.loadXML("../common/tree_a.xml");
+tree = new dhtmlXTreeObject("treeboxbox_tree2", "100%", "100%", 0);
+ 
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/csh_yellowbooks/");
+tree.loadXML("../common/tree_b.xml");
</script>
+
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/11_tree_text_image.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/11_tree_text_image.html new file mode 100755 index 0000000000..e3a566a24c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/11_tree_text_image.html @@ -0,0 +1,184 @@ + + + + Dynamical icon/text/style changing + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Dynamical icon/text/style changing

+
+ + + + + + +

You can customize this JavaScript tree to look just the way you want. + Select a tree item you want to edit then click on image or color to make appropriate changes. + To change tree item's text, you should type new text in the box and click "Set new item label".

+ + + + + + + + +
+
+
+ + + Set new item label 

+ + To change item's image - click on one of next images: + + + + + + + + + + + + +
+
+
+
+ To change item's color - click on one of next colors: + + + + + + + + + + + + + + + + +
 
 
 
 
 
 
 
 
 
+
+ + + + + +
+
+
Source
+
+
<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
+<script  src="../../codebase/dhtmlxcommon.js"></script>
+<script  src="../../codebase/dhtmlxtree.js"></script>
+ 
+    
+<script>
function setColor(color1, color2); {
+    tree.setItemColor(tree.getSelectedItemId(), color1, color2);
+}
</script> +<table> + <tr> + <td valign="top"> + <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;"></div> + </td> + <td rowspan="2" style="padding-left:25" valign="top"> + + <a href="javascript:void(0);" onClick="var d=new Date(); tree.setItemText(tree.getSelectedItemId(),document.getElementById('ed1').value);">Set new item label</a>&nbsp;<input type="text" value="New label" id="ed1"><br><br> + To change item's image - click on one of next images: + <table> + <tr><td> + <a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'tombs.gif','tombs.gif','tombs.gif');"><img src="../../codebase/imgs/csh_yellowbooks/tombs.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'tombs_open.gif','tombs_open.gif','tombs_open.gif');"><img src="../../codebase/imgs/csh_yellowbooks/tombs_open.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'leaf.gif','leaf.gif','leaf.gif');"><img src="../../codebase/imgs/csh_yellowbooks/leaf.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'leaf2.gif','leaf2.gif','leaf2.gif');"><img src="../../codebase/imgs/csh_yellowbooks/leaf2.gif" border="0"></a></td> + </td></tr> + <tr><td nowrap> + <a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'iconText.gif','iconText.gif','iconText.gif');"><img src="../../codebase/imgs/csh_yellowbooks/iconText.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'folderOpen.gif','folderOpen.gif','folderOpen.gif');"><img src="../../codebase/imgs/csh_yellowbooks/folderOpen.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'folderClosed.gif','folderClosed.gif','folderClosed.gif');"><img src="../../codebase/imgs/csh_yellowbooks/folderClosed.gif" border="0"></a></td> + <td><a href="javascript:void(0);" onClick="tree.setItemImage2(tree.getSelectedItemId(),'leaf3.gif','leaf3.gif','leaf3.gif');"><img src="../../codebase/imgs/csh_yellowbooks/leaf3.gif" border="0"></a></td> + </td></tr> + </table> + <br> + To change item's color - click on one of next colors: + <table> + <tr> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#ff0000;" onClick="setColor('#ff0000','#ff0000')">&nbsp;</div></td> + <td><div style="cursor:pointer;width:20px; height:20px; background-color:#ffa500;" onClick="setColor('#ffa500','#ffa500')">&nbsp;</div></td> + <td><div style="cursor:pointer;width:20px; height:20px; background-color:#ffff00;" onClick="setColor('#ffff00','#ffff00')">&nbsp;</div></td> + </tr> + <tr> + <td><div style="cursor:pointer;width:20px; height:20px; background-color:#008000;" onClick="setColor('#008000','#adff2f')">&nbsp;</div></td> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#00ff7f;" onClick="setColor('#00ff7f','#adff2f')">&nbsp;</div></td> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#adff2f;" onClick="setColor('#adff2f')">&nbsp;</div></td> + </tr> + <tr> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#0000ff;" onClick="setColor('#0000ff','#87ceeb')">&nbsp;</div></td> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#9932cc;" onClick="setColor('#9932cc','#9932cc')">&nbsp;</div></td> + <td><div style="cursor:pointer; width:20px; height:20px; background-color:#87ceeb;" onClick="setColor('#87ceeb','#87ceeb')">&nbsp;</div></td> + </tr> + </table> + </td> + </tr> +</table> + +<script>
tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/csh_yellowbooks/");
+tree.loadXML("../common/tree.xml");
</script>
+
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/index.html new file mode 100755 index 0000000000..5eab55ba9f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/01_appearance/index.html @@ -0,0 +1,45 @@ + + + + Appearance + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+ + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/05_tree_checkboxes.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/05_tree_checkboxes.html new file mode 100755 index 0000000000..ba9272758d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/05_tree_checkboxes.html @@ -0,0 +1,159 @@ + + + + Checkboxes + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Checkboxes

+
+ + + + + + + +

This JavaScript tree has checkbox system in order to use this component as a navigation bar + with selection lists. Besides usual two-state checkboxes (checked item, unchecked item), + there is a possibility to use three state checkboxes with "partly-checked" value (some sub-items are checked). To test any of these functionalities you should select an item in a tree and then click on an appropriate action link.

+ + + + + + + + + + + +
+
+
+ + Two state checkboxes

+ Check item

+ UnCheck item

+ Check branch

+ UnCheck branch

+ + Get list of checked

+ +
+
+
+ Three state checkboxes
+
+ + Check item

+ UnCheck item

+ + Get list of checked

+ +
+ + + + +
+
+
Source
+
+
<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
+<script  src="../../codebase/dhtmlxcommon.js"></script>
+<script  src="../../codebase/dhtmlxtree.js"></script>
+ 
+ 
+<table>
+    <tr>
+        <td valign="top">
+            <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;"></div>
+        </td>
+        <td  style="padding-left:25" valign="top">
+        Two state checkboxes<br><br>
+        <a href="javascript:void(0);" onClick="tree.setCheck(tree.getSelectedItemId(),true);">Check item</a><br><br>
+        <a href="javascript:void(0);" onClick="tree.setCheck(tree.getSelectedItemId(),false);">UnCheck item</a><br><br>
+        <a href="javascript:void(0);" onClick="tree.setSubChecked(tree.getSelectedItemId(),true);">Check branch</a><br><br>
+        <a href="javascript:void(0);" onClick="tree.setSubChecked(tree.getSelectedItemId(),false);">UnCheck branch</a><br><br>
+        <a href="javascript:void(0);" onClick="alert(tree.getAllChecked());">Get list of checked</a><br><br>
+        </td>
+    </tr>
+    <tr>
+        <td valign="top">
+            <div id="treeboxbox_tree2" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"></div>
+        </td>
+        <td  style="padding-left:25" valign="top">
+            Three state checkboxes<br>
+            <br>
+        <a href="javascript:void(0);" onClick="tree2.setCheck(tree2.getSelectedItemId(),true);">Check item</a><br><br>
+        <a href="javascript:void(0);" onClick="tree2.setCheck(tree2.getSelectedItemId(),false);">UnCheck item</a><br><br>
+        <a href="javascript:void(0);" onClick="alert(tree2.getAllChecked());">Get list of checked</a><br><br>
+        </td>
+    </tr>
+</table>    
+<script>
tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
+tree.enableCheckBoxes(1);
+tree.loadXML("../common/tree3.xml");
+tree2 = new dhtmlXTreeObject("treeboxbox_tree2", "100%", "100%", 0);
+ 
+tree2.setSkin('dhx_skyblue');
+tree2.setImagePath("../../codebase/imgs/csh_bluebooks/");
+tree2.enableCheckBoxes(1);
+tree2.enableThreeStateCheckboxes(true);
+tree2.loadXML("../common/tree3.xml");
</script>
+
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/index.html new file mode 100755 index 0000000000..632d5ff942 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/02_checkboxes/index.html @@ -0,0 +1,45 @@ + + + + Checkboxes + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Checkboxes

+
+ +
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/12_tree_drag.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/12_tree_drag.html new file mode 100755 index 0000000000..bc1acaa324 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/12_tree_drag.html @@ -0,0 +1,139 @@ + + + + Drag and Drop + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Drag and Drop

+
+ + + + + + + +

This JavaScript tree menu has extended drag-and-drop functionality + (within one tree, between trees, between frames). Drop-as-sibling behavior makes + it easy to reorder nodes in a tree view. +You can easily edit the tree by dragging nodes within one tree or between trees or even to another object.

+ + + + + + + + +
+ +

+ + +
+ +

+ + +
+

Drag-and-Drop works in each tree and between trees too.

+ + + + + + +
+
+
Source
+
+
<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
+<script  src="../../codebase/dhtmlxcommon.js"></script>
+<script  src="../../codebase/dhtmlxtree.js"></script>
+ 
+ 
+<table>
+    <tr>
+        <td valign="top">
+            <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;overflow:hidden"></div><br>
+            
+        </td>
+        <td style="padding-left:25px" valign="top">
+            <div id="treeboxbox_tree2" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;overflow:hidden"></div><br>
+ 
+        </td>
+    </tr>
+</table>
+ 
+ 
+<script>
tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
+ 
+tree.setSkin('dhx_skyblue');
+tree.setImagePath("../../codebase/imgs/csh_yellowbooks/");
+tree.enableDragAndDrop(true);
+tree.loadXML("../common/tree_05_drag_n_drop.xml");
+ 
+tree2 = new dhtmlXTreeObject("treeboxbox_tree2", "100%", "100%", 0);
+ 
+tree2.setSkin('dhx_skyblue');
+tree2.setImagePath("../../codebase/imgs/csh_yellowbooks/");
+tree2.enableDragAndDrop(true);
+tree2.loadXML("../common/tree_05_drag_n_drop.xml");
</script>
+
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f1.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f1.html new file mode 100755 index 0000000000..5b6bdd94e0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f1.html @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+ + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f2.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f2.html new file mode 100755 index 0000000000..9e08052311 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f2.html @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + +

+
+
 
+
 
+
 
+
 
+
+ + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f3.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f3.html new file mode 100755 index 0000000000..28874629cc --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame2_f3.html @@ -0,0 +1,16 @@ + + + + + + + + + +

Drag and Drop between frames

+

Frame without tree

+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f1.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f1.html new file mode 100755 index 0000000000..7ddbd38287 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f1.html @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + +
+
+
+ + +
+ + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f2.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f2.html new file mode 100755 index 0000000000..024b0eeca7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f2.html @@ -0,0 +1,27 @@ + + + + + + + + + + + + +
+ + + +

+ + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f3.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f3.html new file mode 100755 index 0000000000..e78f8f8548 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/inc/pro_drag_frame_f3.html @@ -0,0 +1,19 @@ + + + + + + + + + +

Frame without tree

+ + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/index.html new file mode 100755 index 0000000000..3aa42dca30 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/05_drag_n_drop/index.html @@ -0,0 +1,45 @@ + + + + Drag-n-drop + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Drag-n-drop

+
+ +
+ + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/03_tree_events.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/03_tree_events.html new file mode 100755 index 0000000000..41596138e0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/03_tree_events.html @@ -0,0 +1,198 @@ + + + + Event handlers + + + + + + + + + + +
+ +
DHTMLX Docs & Samples Explorer
+
+ +
+
+ + +
+
+
+ +
+

Event handlers

+
+ + + + + + +

This JavaScript tree example illustrates the ability to assign user-defined functions to different + event handlers (e.g. Mouse Over, Mouse Out, Check, UnCheck, Select, Deselect). If you try to change + a checkbox value, an alert box will appear. Alert box is displayed also when a tree node is selected. + Confirm box will pop up if user opens or closes a node.
+So, dhtmlxTree allows you to define any functions and attach them to event handlers in order to customize +tree behavior. That enriches possibilities for user interaction with JavaScript tree interface.

+ + + + + + + + + + +
+
+
+
+
 
+ +
  • Selected node ID will be passed to function specified as argument for setDefaultAction(funcObj)
  • +
  • Dropped node ID and new parent node ID will be passed to function specified as argument for setDragFunction(funcObj)
  • +
  • node ID will be passed to the function specified as argument for setOpenAction(aFunc)
  • +
  • node ID will be passed to the function specified as argument for setDblClickAction(aFunc)
  • + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    + 
    + 
    +<table>
    +    <tr>
    +        <td>
    +            <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver; "/>
    +        </td>
    +        <td rowspan="2" style="padding-left:25" valign="top">
    +            <div id="logarea" style="background-color:lightgrey;height:218px;width:400px; padding:3px; overflow:auto;"></div>
    +        </td>
    +    </tr>
    +    <tr>
    +        <td>&nbsp;</td>
    +    </tr>
    +</table>
    +    <li>Selected node ID will be passed to function specified as argument for setDefaultAction(funcObj)</li>
    +    <li>Dropped node ID and new parent node ID  will be passed to function specified as argument for setDragFunction(funcObj)</li>
    +    <li>node ID will be passed to the function specified as argument for setOpenAction(aFunc)</li>
    +    <li>node ID will be passed to the function specified as argument for setDblClickAction(aFunc)</li>
    +<script>
    function doLog(str) {
    +    var log = document.getElementById("logarea");
    +    log.innerHTML = log.innerHTML + str + "<br/>";
    +    log.scrollTop = log.scrollHeight;
    +}
    +function tonclick(id) {
    +    doLog("Item " + tree.getItemText(id) + " was selected");
    +};
    +function tondblclick(id) {
    +    doLog("Item " + tree.getItemText(id) + " was doubleclicked");
    +};
    +function tondrag(id, id2) {
    +    return confirm("Do you want to move node " + tree.getItemText(id) + " to item " + tree.getItemText(id2) + "?");
    +};
    +function tonopen(id, mode) {
    +    return confirm("Do you want to " + (mode > 0 ? "close": "open") + " node " + tree.getItemText(id) + "?");
    +};
    +function toncheck(id, state) {
    +    doLog("Item " + tree.getItemText(id) + " was " + ((state) ? "checked": "unchecked"));
    +};
    + 
    +tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
    + 
    +tree.setSkin('dhx_skyblue');
    +tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
    +tree.enableCheckBoxes(1);
    +tree.enableDragAndDrop(1);
    +tree.setOnOpenHandler(tonopen);
    +tree.attachEvent("onOpenEnd", function(nodeId, event) {
    +    doLog("An id of open item is " + nodeId);
    +});
    +tree.setOnClickHandler(tonclick);
    +tree.setOnCheckHandler(toncheck);
    +tree.setOnDblClickHandler(tondblclick);
    +tree.setDragHandler(tondrag);
    +tree.loadXML("../common/tree3.xml");
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/index.html new file mode 100755 index 0000000000..f65a717aa5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/07_events/index.html @@ -0,0 +1,45 @@ + + + + Events + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Events

    +
    + +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/02_tree_init_from_html.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/02_tree_init_from_html.html new file mode 100755 index 0000000000..b62fef4050 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/02_tree_init_from_html.html @@ -0,0 +1,237 @@ + + + + Initialize from HTML + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Initialize from HTML

    +
    + + + + + + + + +

    + To do automatic conversion: +

      +
    • Add dhtmlXTree_start.js file into the page
    • +
    • Set class attribute of the top div element to dhtmlxTree
    • +
    • Set some attributes defining tree-specific properties of the top div element +
        +
      • setImagePath - sets path to tree's image files
      • +
      • id - name of javascript variable referred to the tree object
      • +
      +
    • +
    +

    +
    Initilize from list
    + + + + + +
    +
    +
      +
    • Root +
        +
      • Child1 +
          +
        • Child 1-1
        • +
        +
      • +
      • Child2
      • +
      • Bold Italic
      • +
      +
    • +
    +
    +
    +
    +
      +
    • Root +
        +
      • Child1 +
          +
        • Child 1-1
        • +
        +
      • +
      • Child2
      • +
      • Bold Italic
      • +
      +
    • +
    +
    +
    + + + +
    Initialize from inline XML structure
    +
    It is possible to use standard dhtmlxTree XML structure enclosed in XMP +tag inside div element which is a tree container.
    +
    +
    + + <item text="Root" open="1" id="11"> + <item text="Child1" select="1" open="1" id="12"> + <item text="Child1-1" id="13"/> + </item> + <item text="Child2" id="14"/> + <item id="15" text="Text"/> + </item> + +
    + + + + + +
    Initialize from HTML using script command
    +
    It is possible to convert existing html structure calling an appropriate script command. To test it press the Confirm button.
    +
    +
      +
    • Root +
        +
      • Child1 +
          +
        • Child 1-1
        • +
        +
      • +
      • Child2
      • +
      • Bold Italic
      • +
      +
    • +
    +
    + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    +<script  src="../../codebase/ext/dhtmlxtree_start.js"></script>
    +<script>
    dhtmlx.skin = "dhx_skyblue";
    </script> + +<div class="h3">Initilize from list</div> +<table> + <tr> + <td> +<div id="treeboxbox_tree" setImagePath="../../codebase/imgs/csh_bluebooks/" xclass="dhtmlxTree" style="width:250px; height:218px; background-color:#f5f5f5;border :1px solid Silver; "> + <ul> + <li>Root + <ul> + <li>Child1 + <ul> + <li>Child 1-1</li> + </ul> + </li> + <li>Child2</li> + <li><b>Bold</b> <i>Italic</i></li> + </ul> + </li> + </ul></li> +</div> + </td> + <td> +<div id="treeboxbox_tree" setImagePath="../../codebase/imgs/csh_bluebooks/" class="dhtmlxTree" style="width:250px; height:218px; background-color:#f5f5f5;border :1px solid Silver;"> + <ul> + <li>Root + <ul> + <li>Child1 + <ul> + <li>Child 1-1</li> + </ul> + </li> + <li>Child2</li> + <li><b>Bold</b> <i>Italic</i></li> + </ul> + </li> + </ul></li> +</div> + </td> + </tr> +</table> + +<!--- Start ---> +<div class="h3"><strong>Initialize from inline XML structure</strong></div> +<div class="txt">It is possible to use standard dhtmlxTree XML structure enclosed in <strong>XMP</strong> +tag inside div element which is a tree container.<br> +<br> +<div id="treeboxbox_tree2" setImagePath="../../codebase/imgs/" class="dhtmlxTree" style="width:250px; height:218px; background-color:#f5f5f5;border :1px solid Silver;;"> +<xmp container="true"> +<item text="Root" open="1" id="11"> + <item text="Child1" select="1" open="1" id="12"> + <item text="Child1-1" id="13"/> + </item> + <item text="Child2" id="14"/> + <item id="15" text="Text"/> +</item> +</xmp> +</div> + + +<!--- Start ---> +<div class="h3"><strong>Initialize from HTML using script command</strong></div> +<div class="txt">It is possible to convert existing html structure calling an appropriate script command. To test it press the Confirm button.</div> +<div id="listBox" setImagePath="../../codebase/imgs/" style="width:250px; height:218px; background-color:#f5f5f5;border :1px solid Silver;"> +<ul> + <li>Root + <ul> + <li>Child1 + <ul> + <li>Child 1-1</li> + </ul> + </li> + <li>Child2</li> + <li><b>Bold</b> <i>Italic</i></li> + </ul> + </li> +</ul> +</div> +<button onClick="var myTree = dhtmlXTreeFromHTML('listBox');">Convert</button>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/03_tree_init_xml.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/03_tree_init_xml.html new file mode 100755 index 0000000000..53966076b8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/03_tree_init_xml.html @@ -0,0 +1,107 @@ + + + + Initialization from xml + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Initialization from xml

    +
    + + + + + + + +

    You can place this JavaScript tree menu anywhere on your web page, attaching the tree + to any object.
    + Set up tree parameters to determine the appearance of the tree. + Specify whether the tree items will be loaded dynamically from XML. dhtmlxTree uses + AJAX for fast and flexible data loading.

    + + + + + + + + + +
    +
    +
    + + +
     
    + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    + 
    + 
    +<table>
    +    <tr>
    +        <td>
    +            <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"/>
    +        </td>
    +        <td rowspan="2" style="padding-left:25" valign="top">
    +    
    +        </td>
    +    </tr>
    +    <tr>
    +        <td>&nbsp;</td>
    +    </tr>
    +</table>
    +<script>
    tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
    +tree.setSkin('dhx_skyblue');
    +tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
    +tree.loadXML("../common/tree3.xml");
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/04_tree_init_o_api.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/04_tree_init_o_api.html new file mode 100755 index 0000000000..fe6fce5e0e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/04_tree_init_o_api.html @@ -0,0 +1,87 @@ + + + + Object constructor + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Object constructor

    +
    + + + + + + + + + + +
    + + + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    + 
    + 
    +            <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"/>
    + 
    +<script>
    tree = new dhtmlXTreeObject({
    +    skin: "dhx_skyblue",
    +    parent: "treeboxbox_tree",
    +    image_path: "../../codebase/imgs/csh_bluebooks/",
    +    checkbox: true,
    +    xml: "../common/tree3.xml";
    +});
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/index.html new file mode 100755 index 0000000000..75b08a695c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/09_initialization_general_settings/index.html @@ -0,0 +1,45 @@ + + + + Initialization, general settings + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Initialization, general settings

    +
    + +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/13_tree_dyn_loading.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/13_tree_dyn_loading.html new file mode 100755 index 0000000000..ead1a6fe61 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/13_tree_dyn_loading.html @@ -0,0 +1,88 @@ + + + + Autoloading from XML + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Autoloading from XML

    +
    + + + + + + +

    Advanced processing of XML allows this JavaScript tree menu to handle large amount of data. + Dynamical items loading from XML stream enables you to create DHTML trees with unlimited + number of nodes. You can load data asynchronously in dhtmlxTree as-needed (using AJAX) + that increases overall performance of the tree. It means that the script specified in setXMLAutoLoading() method will be called when you click the tree to expand any of the parent nodes (which child nodes were not loaded). The script will get the id of the node to open, and return the XML with description of the child items.

    + +
    +
    + + + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    + 
    + 
    +<div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"></div>
    +<br>                
    + 
    +<script>
    tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
    +tree.setSkin('dhx_skyblue');
    +tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
    +tree.setXMLAutoLoading("php/xml.php");
    +tree.loadXML("php/xml.php?id=0");
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/index.html new file mode 100755 index 0000000000..5acaf6acd7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/index.html @@ -0,0 +1,45 @@ + + + + Loading/Processing data + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Loading/Processing data

    +
    + +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/tree_perf_xml.php b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/tree_perf_xml.php new file mode 100755 index 0000000000..5cf1f2fe2a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/tree_perf_xml.php @@ -0,0 +1,15 @@ +'; + + for ($i=0; $i"; + for ($j=0; $j<$data[$i]; $j++) + echo ""; + echo ""; + } + echo ''; +?> diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/xml.php b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/xml.php new file mode 100755 index 0000000000..8127acf182 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/12_loading_processing_data/php/xml.php @@ -0,0 +1,13 @@ +"); +if (isset($_GET["id"])) + $url_var=$_GET["id"]; +else + $url_var=0; +print(""); + for ($inta=0; $inta<4; $inta++) + print("ud_data"); +print(""); +?> diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/05_tree_add_delete.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/05_tree_add_delete.html new file mode 100755 index 0000000000..03fba5bad1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/05_tree_add_delete.html @@ -0,0 +1,170 @@ + + + + Add / Delete items + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Add / Delete items

    +
    + +

    You can freely customize a tree view. This sample illustrates that the tree items can be easily + added/deleted dynamically through the graphical user interface. + You can insert new sibling or child node as well. + This feature allows you to configure a DHTML tree menu effortlessly.

    + + + + + + + + + + + + +
    + + +
    +
    + + + Insert new child item Item label

    + + Insert new item next Item label

    + + Delete item

    + +
    + + + +
  • zeros passed to the function for arguments 4-7 (function to call on select, images) mean the usage of default values for them
  • +
  • Last argument is a comma delimited string of the following possible value (upper case only):
  • +
  • SELECT - move selection to this node after inserting
  • +
  • CALL - call function on select
  • +
  • TOP - add node to the top position
  • +
  • CHILD - node has child items
  • +
  • CHECKED - checkbox is checked (if exists)
  • + + + +
    +
    +
    Source
    +
    +
     
    +<link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    +<script>
    function fixImage(id) {
    +    switch (tree.getLevel(id)) {
    +    case 1:
    +        ;
    +        tree.setItemImage2(id, 'folderClosed.gif', 'folderOpen.gif', 'folderClosed.gif');
    +        break;
    +    case 2:
    +        ;
    +        tree.setItemImage2(id, 'folderClosed.gif', 'folderOpen.gif', 'folderClosed.gif');
    +        break;
    +    case 3:
    +        ;
    +        tree.setItemImage2(id, 'folderClosed.gif', 'folderOpen.gif', 'folderClosed.gif');
    +        break;
    +    default:
    +        ;
    +        tree.setItemImage2(id, 'leaf.gif', 'folderClosed.gif', 'folderOpen.gif');
    +        break;
    +    }
    +}
    </script> +<table> + <tr> + <td valign="top"> + + <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"></div> + </td> + <td rowspan="2" style="padding-left:25" valign="top"> + + <a href="javascript:void(0);" onClick="var d=new Date(); tree.insertNewItem(tree.getSelectedItemId(),d.valueOf(),document.getElementById('ed1').value,0,0,0,0,'SELECT'); fixImage(d.valueOf());">Insert new child item</a> Item label <input type="text" value="New item" id="ed1"><br><br> + <a href="javascript:void(0);" onClick="var d=new Date(); tree.insertNewNext(tree.getSelectedItemId(),d.valueOf(),document.getElementById('ed2').value,0,0,0,0,'SELECT'); fixImage(d.valueOf());">Insert new item next</a> Item label <input type="text" value="New item" id="ed2"><br><br> + <a href="javascript:void(0);" onClick="tree.deleteItem(tree.getSelectedItemId(),true);">Delete item</a><br><br> + </td> + </tr> +</table> + + <li>zeros passed to the function for arguments 4-7 (function to call on select, images) mean the usage of default values for them</li> + <li>Last argument is a comma delimited string of the following possible value (upper case only):</li> + <li type="circle">SELECT - move selection to this node after inserting</li> + <li type="circle">CALL - call function on select</li> + <li type="circle">TOP - add node to the top position </li> + <li type="circle">CHILD - node has child items</li> + <li type="circle">CHECKED - checkbox is checked (if exists)</li> +<script>
    tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
    +tree.setSkin('dhx_skyblue');
    +tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
    +tree.loadXML("../common/tree3.xml");
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/06_tree_open_close.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/06_tree_open_close.html new file mode 100755 index 0000000000..dd2594aea5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/06_tree_open_close.html @@ -0,0 +1,135 @@ + + + + Collapse/Expand nodes + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Collapse/Expand nodes

    +
    + + + + + +

    You can easily collapse/expand any node, branch or the entire tree.

    + + + + + + + + + + +
    + + +
    +
    + + + Expand all

    + Collapse all

    + Close selected item

    + Open selected item

    + Collapse selected branch

    + Expand selected branch

    + +
     
    + + + + + + +
    +
    +
    Source
    +
    +
    <link rel="STYLESHEET" type="text/css" href="../../codebase/dhtmlxtree.css">
    +<script  src="../../codebase/dhtmlxcommon.js"></script>
    +<script  src="../../codebase/dhtmlxtree.js"></script>
    + 
    +<script>
    function closeAllRoots() {
    +    var rootsAr = tree.getSubItems(0).split(",");
    +    for (var i = 0; i < rootsAr.length; i++) {
    +        tree.closeAllItems(rootsAr[i]);
    +    }
    +}
    </script> +<table> + <tr> + <td valign="top"> + + <div id="treeboxbox_tree" style="width:250px; height:218px;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"></div> + </td> + <td rowspan="2" style="padding-left:25" valign="top"> + + <a href="javascript:void(0);" onClick="tree.openAllItems(0);">Expand all</a><br><br> + <a href="javascript:void(0);" onClick="tree.closeAllItems(0);">Collapse all</a><br><br> + <a href="javascript:void(0);" onClick="tree.closeItem(tree.getSelectedItemId());">Close selected item</a><br><br> + <a href="javascript:void(0);" onClick="tree.openItem(tree.getSelectedItemId());">Open selected item</a><br><br> + <a href="javascript:void(0);" onClick="tree.closeAllItems(tree.getSelectedItemId());">Collapse selected branch</a><br><br> + <a href="javascript:void(0);" onClick="tree.openAllItems(tree.getSelectedItemId());">Expand selected branch</a><br><br> + </td> + </tr> + <tr> + <td>&nbsp;</td> + </tr> +</table> + +<script>
    tree = new dhtmlXTreeObject("treeboxbox_tree", "100%", "100%", 0);
    +tree.setSkin('dhx_skyblue');
    +tree.setImagePath("../../codebase/imgs/csh_bluebooks/");
    +tree.loadXML("../common/tree3.xml");
    </script>
    +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/index.html new file mode 100755 index 0000000000..160e5384fc --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/13_nodes_manipulation/index.html @@ -0,0 +1,45 @@ + + + + Nodes manipulations + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +
    +

    Nodes manipulations

    +
    + +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/_context.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/_context.xml new file mode 100755 index 0000000000..7187b45245 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/_context.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_data.json b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_data.json new file mode 100755 index 0000000000..68864b1f75 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_data.json @@ -0,0 +1,12102 @@ +{id:'0', item:[ +{id:'0--', text:'level 1-0', item:[ + {id:'0-0-', text:'level 2-0-0', item:[ + {id:'0-0-0', text:'level 3-0-0-0'} +, {id:'0-0-1', text:'level 3-0-0-1'} +, {id:'0-0-2', text:'level 3-0-0-2'} +, {id:'0-0-3', text:'level 3-0-0-3'} +, {id:'0-0-4', text:'level 3-0-0-4'} +, {id:'0-0-5', text:'level 3-0-0-5'} +, {id:'0-0-6', text:'level 3-0-0-6'} +, {id:'0-0-7', text:'level 3-0-0-7'} +, {id:'0-0-8', text:'level 3-0-0-8'} +, {id:'0-0-9', text:'level 3-0-0-9'} +]} +, {id:'0-1-10', text:'level 2-0-1', item:[ + {id:'0-1-0', text:'level 3-0-1-0'} +, {id:'0-1-1', text:'level 3-0-1-1'} +, {id:'0-1-2', text:'level 3-0-1-2'} +, {id:'0-1-3', text:'level 3-0-1-3'} +, {id:'0-1-4', text:'level 3-0-1-4'} +, {id:'0-1-5', text:'level 3-0-1-5'} +, {id:'0-1-6', text:'level 3-0-1-6'} +, {id:'0-1-7', text:'level 3-0-1-7'} +, {id:'0-1-8', text:'level 3-0-1-8'} +, {id:'0-1-9', text:'level 3-0-1-9'} +]} +, {id:'0-2-10', text:'level 2-0-2', item:[ + {id:'0-2-0', text:'level 3-0-2-0'} +, {id:'0-2-1', text:'level 3-0-2-1'} +, {id:'0-2-2', text:'level 3-0-2-2'} +, {id:'0-2-3', text:'level 3-0-2-3'} +, {id:'0-2-4', text:'level 3-0-2-4'} +, {id:'0-2-5', text:'level 3-0-2-5'} +, {id:'0-2-6', text:'level 3-0-2-6'} +, {id:'0-2-7', text:'level 3-0-2-7'} +, {id:'0-2-8', text:'level 3-0-2-8'} +, {id:'0-2-9', text:'level 3-0-2-9'} +]} +, {id:'0-3-10', text:'level 2-0-3', item:[ + {id:'0-3-0', text:'level 3-0-3-0'} +, {id:'0-3-1', text:'level 3-0-3-1'} +, {id:'0-3-2', text:'level 3-0-3-2'} +, {id:'0-3-3', text:'level 3-0-3-3'} +, {id:'0-3-4', text:'level 3-0-3-4'} +, {id:'0-3-5', text:'level 3-0-3-5'} +, {id:'0-3-6', text:'level 3-0-3-6'} +, {id:'0-3-7', text:'level 3-0-3-7'} +, {id:'0-3-8', text:'level 3-0-3-8'} +, {id:'0-3-9', text:'level 3-0-3-9'} +]} +, {id:'0-4-10', text:'level 2-0-4', item:[ + {id:'0-4-0', text:'level 3-0-4-0'} +, {id:'0-4-1', text:'level 3-0-4-1'} +, {id:'0-4-2', text:'level 3-0-4-2'} +, {id:'0-4-3', text:'level 3-0-4-3'} +, {id:'0-4-4', text:'level 3-0-4-4'} +, {id:'0-4-5', text:'level 3-0-4-5'} +, {id:'0-4-6', text:'level 3-0-4-6'} +, {id:'0-4-7', text:'level 3-0-4-7'} +, {id:'0-4-8', text:'level 3-0-4-8'} +, {id:'0-4-9', text:'level 3-0-4-9'} +]} +, {id:'0-5-10', text:'level 2-0-5', item:[ + {id:'0-5-0', text:'level 3-0-5-0'} +, {id:'0-5-1', text:'level 3-0-5-1'} +, {id:'0-5-2', text:'level 3-0-5-2'} +, {id:'0-5-3', text:'level 3-0-5-3'} +, {id:'0-5-4', text:'level 3-0-5-4'} +, {id:'0-5-5', text:'level 3-0-5-5'} +, {id:'0-5-6', text:'level 3-0-5-6'} +, {id:'0-5-7', text:'level 3-0-5-7'} +, {id:'0-5-8', text:'level 3-0-5-8'} +, {id:'0-5-9', text:'level 3-0-5-9'} +]} +, {id:'0-6-10', text:'level 2-0-6', item:[ + {id:'0-6-0', text:'level 3-0-6-0'} +, {id:'0-6-1', text:'level 3-0-6-1'} +, {id:'0-6-2', text:'level 3-0-6-2'} +, {id:'0-6-3', text:'level 3-0-6-3'} +, {id:'0-6-4', text:'level 3-0-6-4'} +, {id:'0-6-5', text:'level 3-0-6-5'} +, {id:'0-6-6', text:'level 3-0-6-6'} +, {id:'0-6-7', text:'level 3-0-6-7'} +, {id:'0-6-8', text:'level 3-0-6-8'} +, {id:'0-6-9', text:'level 3-0-6-9'} +]} +, {id:'0-7-10', text:'level 2-0-7', item:[ + {id:'0-7-0', text:'level 3-0-7-0'} +, {id:'0-7-1', text:'level 3-0-7-1'} +, {id:'0-7-2', text:'level 3-0-7-2'} +, {id:'0-7-3', text:'level 3-0-7-3'} +, {id:'0-7-4', text:'level 3-0-7-4'} +, {id:'0-7-5', text:'level 3-0-7-5'} +, {id:'0-7-6', text:'level 3-0-7-6'} +, {id:'0-7-7', text:'level 3-0-7-7'} +, {id:'0-7-8', text:'level 3-0-7-8'} +, {id:'0-7-9', text:'level 3-0-7-9'} +]} +, {id:'0-8-10', text:'level 2-0-8', item:[ + {id:'0-8-0', text:'level 3-0-8-0'} +, {id:'0-8-1', text:'level 3-0-8-1'} +, {id:'0-8-2', text:'level 3-0-8-2'} +, {id:'0-8-3', text:'level 3-0-8-3'} +, {id:'0-8-4', text:'level 3-0-8-4'} +, {id:'0-8-5', text:'level 3-0-8-5'} +, {id:'0-8-6', text:'level 3-0-8-6'} +, {id:'0-8-7', text:'level 3-0-8-7'} +, {id:'0-8-8', text:'level 3-0-8-8'} +, {id:'0-8-9', text:'level 3-0-8-9'} +]} +, {id:'0-9-10', text:'level 2-0-9', item:[ + {id:'0-9-0', text:'level 3-0-9-0'} +, {id:'0-9-1', text:'level 3-0-9-1'} +, {id:'0-9-2', text:'level 3-0-9-2'} +, {id:'0-9-3', text:'level 3-0-9-3'} +, {id:'0-9-4', text:'level 3-0-9-4'} +, {id:'0-9-5', text:'level 3-0-9-5'} +, {id:'0-9-6', text:'level 3-0-9-6'} +, {id:'0-9-7', text:'level 3-0-9-7'} +, {id:'0-9-8', text:'level 3-0-9-8'} +, {id:'0-9-9', text:'level 3-0-9-9'} +]} +, {id:'0-10-10', text:'level 2-0-10', item:[ + {id:'0-10-0', text:'level 3-0-10-0'} +, {id:'0-10-1', text:'level 3-0-10-1'} +, {id:'0-10-2', text:'level 3-0-10-2'} +, {id:'0-10-3', text:'level 3-0-10-3'} +, {id:'0-10-4', text:'level 3-0-10-4'} +, {id:'0-10-5', text:'level 3-0-10-5'} +, {id:'0-10-6', text:'level 3-0-10-6'} +, {id:'0-10-7', text:'level 3-0-10-7'} +, {id:'0-10-8', text:'level 3-0-10-8'} +, {id:'0-10-9', text:'level 3-0-10-9'} +]} +, {id:'0-11-10', text:'level 2-0-11', item:[ + {id:'0-11-0', text:'level 3-0-11-0'} +, {id:'0-11-1', text:'level 3-0-11-1'} +, {id:'0-11-2', text:'level 3-0-11-2'} +, {id:'0-11-3', text:'level 3-0-11-3'} +, {id:'0-11-4', text:'level 3-0-11-4'} +, {id:'0-11-5', text:'level 3-0-11-5'} +, {id:'0-11-6', text:'level 3-0-11-6'} +, {id:'0-11-7', text:'level 3-0-11-7'} +, {id:'0-11-8', text:'level 3-0-11-8'} +, {id:'0-11-9', text:'level 3-0-11-9'} +]} +, {id:'0-12-10', text:'level 2-0-12', item:[ + {id:'0-12-0', text:'level 3-0-12-0'} +, {id:'0-12-1', text:'level 3-0-12-1'} +, {id:'0-12-2', text:'level 3-0-12-2'} +, {id:'0-12-3', text:'level 3-0-12-3'} +, {id:'0-12-4', text:'level 3-0-12-4'} +, {id:'0-12-5', text:'level 3-0-12-5'} +, {id:'0-12-6', text:'level 3-0-12-6'} +, {id:'0-12-7', text:'level 3-0-12-7'} +, {id:'0-12-8', text:'level 3-0-12-8'} +, {id:'0-12-9', text:'level 3-0-12-9'} +]} +, {id:'0-13-10', text:'level 2-0-13', item:[ + {id:'0-13-0', text:'level 3-0-13-0'} +, {id:'0-13-1', text:'level 3-0-13-1'} +, {id:'0-13-2', text:'level 3-0-13-2'} +, {id:'0-13-3', text:'level 3-0-13-3'} +, {id:'0-13-4', text:'level 3-0-13-4'} +, {id:'0-13-5', text:'level 3-0-13-5'} +, {id:'0-13-6', text:'level 3-0-13-6'} +, {id:'0-13-7', text:'level 3-0-13-7'} +, {id:'0-13-8', text:'level 3-0-13-8'} +, {id:'0-13-9', text:'level 3-0-13-9'} +]} +, {id:'0-14-10', text:'level 2-0-14', item:[ + {id:'0-14-0', text:'level 3-0-14-0'} +, {id:'0-14-1', text:'level 3-0-14-1'} +, {id:'0-14-2', text:'level 3-0-14-2'} +, {id:'0-14-3', text:'level 3-0-14-3'} +, {id:'0-14-4', text:'level 3-0-14-4'} +, {id:'0-14-5', text:'level 3-0-14-5'} +, {id:'0-14-6', text:'level 3-0-14-6'} +, {id:'0-14-7', text:'level 3-0-14-7'} +, {id:'0-14-8', text:'level 3-0-14-8'} +, {id:'0-14-9', text:'level 3-0-14-9'} +]} +, {id:'0-15-10', text:'level 2-0-15', item:[ + {id:'0-15-0', text:'level 3-0-15-0'} +, {id:'0-15-1', text:'level 3-0-15-1'} +, {id:'0-15-2', text:'level 3-0-15-2'} +, {id:'0-15-3', text:'level 3-0-15-3'} +, {id:'0-15-4', text:'level 3-0-15-4'} +, {id:'0-15-5', text:'level 3-0-15-5'} +, {id:'0-15-6', text:'level 3-0-15-6'} +, {id:'0-15-7', text:'level 3-0-15-7'} +, {id:'0-15-8', text:'level 3-0-15-8'} +, {id:'0-15-9', text:'level 3-0-15-9'} +]} +, {id:'0-16-10', text:'level 2-0-16', item:[ + {id:'0-16-0', text:'level 3-0-16-0'} +, {id:'0-16-1', text:'level 3-0-16-1'} +, {id:'0-16-2', text:'level 3-0-16-2'} +, {id:'0-16-3', text:'level 3-0-16-3'} +, {id:'0-16-4', text:'level 3-0-16-4'} +, {id:'0-16-5', text:'level 3-0-16-5'} +, {id:'0-16-6', text:'level 3-0-16-6'} +, {id:'0-16-7', text:'level 3-0-16-7'} +, {id:'0-16-8', text:'level 3-0-16-8'} +, {id:'0-16-9', text:'level 3-0-16-9'} +]} +, {id:'0-17-10', text:'level 2-0-17', item:[ + {id:'0-17-0', text:'level 3-0-17-0'} +, {id:'0-17-1', text:'level 3-0-17-1'} +, {id:'0-17-2', text:'level 3-0-17-2'} +, {id:'0-17-3', text:'level 3-0-17-3'} +, {id:'0-17-4', text:'level 3-0-17-4'} +, {id:'0-17-5', text:'level 3-0-17-5'} +, {id:'0-17-6', text:'level 3-0-17-6'} +, {id:'0-17-7', text:'level 3-0-17-7'} +, {id:'0-17-8', text:'level 3-0-17-8'} +, {id:'0-17-9', text:'level 3-0-17-9'} +]} +, {id:'0-18-10', text:'level 2-0-18', item:[ + {id:'0-18-0', text:'level 3-0-18-0'} +, {id:'0-18-1', text:'level 3-0-18-1'} +, {id:'0-18-2', text:'level 3-0-18-2'} +, {id:'0-18-3', text:'level 3-0-18-3'} +, {id:'0-18-4', text:'level 3-0-18-4'} +, {id:'0-18-5', text:'level 3-0-18-5'} +, {id:'0-18-6', text:'level 3-0-18-6'} +, {id:'0-18-7', text:'level 3-0-18-7'} +, {id:'0-18-8', text:'level 3-0-18-8'} +, {id:'0-18-9', text:'level 3-0-18-9'} +]} +, {id:'0-19-10', text:'level 2-0-19', item:[ + {id:'0-19-0', text:'level 3-0-19-0'} +, {id:'0-19-1', text:'level 3-0-19-1'} +, {id:'0-19-2', text:'level 3-0-19-2'} +, {id:'0-19-3', text:'level 3-0-19-3'} +, {id:'0-19-4', text:'level 3-0-19-4'} +, {id:'0-19-5', text:'level 3-0-19-5'} +, {id:'0-19-6', text:'level 3-0-19-6'} +, {id:'0-19-7', text:'level 3-0-19-7'} +, {id:'0-19-8', text:'level 3-0-19-8'} +, {id:'0-19-9', text:'level 3-0-19-9'} +]} +]} +,{id:'1-20-10', text:'level 1-1', item:[ + {id:'1-0-10', text:'level 2-1-0', item:[ + {id:'1-0-0', text:'level 3-1-0-0'} +, {id:'1-0-1', text:'level 3-1-0-1'} +, {id:'1-0-2', text:'level 3-1-0-2'} +, {id:'1-0-3', text:'level 3-1-0-3'} +, {id:'1-0-4', text:'level 3-1-0-4'} +, {id:'1-0-5', text:'level 3-1-0-5'} +, {id:'1-0-6', text:'level 3-1-0-6'} +, {id:'1-0-7', text:'level 3-1-0-7'} +, {id:'1-0-8', text:'level 3-1-0-8'} +, {id:'1-0-9', text:'level 3-1-0-9'} +]} +, {id:'1-1-10', text:'level 2-1-1', item:[ + {id:'1-1-0', text:'level 3-1-1-0'} +, {id:'1-1-1', text:'level 3-1-1-1'} +, {id:'1-1-2', text:'level 3-1-1-2'} +, {id:'1-1-3', text:'level 3-1-1-3'} +, {id:'1-1-4', text:'level 3-1-1-4'} +, {id:'1-1-5', text:'level 3-1-1-5'} +, {id:'1-1-6', text:'level 3-1-1-6'} +, {id:'1-1-7', text:'level 3-1-1-7'} +, {id:'1-1-8', text:'level 3-1-1-8'} +, {id:'1-1-9', text:'level 3-1-1-9'} +]} +, {id:'1-2-10', text:'level 2-1-2', item:[ + {id:'1-2-0', text:'level 3-1-2-0'} +, {id:'1-2-1', text:'level 3-1-2-1'} +, {id:'1-2-2', text:'level 3-1-2-2'} +, {id:'1-2-3', text:'level 3-1-2-3'} +, {id:'1-2-4', text:'level 3-1-2-4'} +, {id:'1-2-5', text:'level 3-1-2-5'} +, {id:'1-2-6', text:'level 3-1-2-6'} +, {id:'1-2-7', text:'level 3-1-2-7'} +, {id:'1-2-8', text:'level 3-1-2-8'} +, {id:'1-2-9', text:'level 3-1-2-9'} +]} +, {id:'1-3-10', text:'level 2-1-3', item:[ + {id:'1-3-0', text:'level 3-1-3-0'} +, {id:'1-3-1', text:'level 3-1-3-1'} +, {id:'1-3-2', text:'level 3-1-3-2'} +, {id:'1-3-3', text:'level 3-1-3-3'} +, {id:'1-3-4', text:'level 3-1-3-4'} +, {id:'1-3-5', text:'level 3-1-3-5'} +, {id:'1-3-6', text:'level 3-1-3-6'} +, {id:'1-3-7', text:'level 3-1-3-7'} +, {id:'1-3-8', text:'level 3-1-3-8'} +, {id:'1-3-9', text:'level 3-1-3-9'} +]} +, {id:'1-4-10', text:'level 2-1-4', item:[ + {id:'1-4-0', text:'level 3-1-4-0'} +, {id:'1-4-1', text:'level 3-1-4-1'} +, {id:'1-4-2', text:'level 3-1-4-2'} +, {id:'1-4-3', text:'level 3-1-4-3'} +, {id:'1-4-4', text:'level 3-1-4-4'} +, {id:'1-4-5', text:'level 3-1-4-5'} +, {id:'1-4-6', text:'level 3-1-4-6'} +, {id:'1-4-7', text:'level 3-1-4-7'} +, {id:'1-4-8', text:'level 3-1-4-8'} +, {id:'1-4-9', text:'level 3-1-4-9'} +]} +, {id:'1-5-10', text:'level 2-1-5', item:[ + {id:'1-5-0', text:'level 3-1-5-0'} +, {id:'1-5-1', text:'level 3-1-5-1'} +, {id:'1-5-2', text:'level 3-1-5-2'} +, {id:'1-5-3', text:'level 3-1-5-3'} +, {id:'1-5-4', text:'level 3-1-5-4'} +, {id:'1-5-5', text:'level 3-1-5-5'} +, {id:'1-5-6', text:'level 3-1-5-6'} +, {id:'1-5-7', text:'level 3-1-5-7'} +, {id:'1-5-8', text:'level 3-1-5-8'} +, {id:'1-5-9', text:'level 3-1-5-9'} +]} +, {id:'1-6-10', text:'level 2-1-6', item:[ + {id:'1-6-0', text:'level 3-1-6-0'} +, {id:'1-6-1', text:'level 3-1-6-1'} +, {id:'1-6-2', text:'level 3-1-6-2'} +, {id:'1-6-3', text:'level 3-1-6-3'} +, {id:'1-6-4', text:'level 3-1-6-4'} +, {id:'1-6-5', text:'level 3-1-6-5'} +, {id:'1-6-6', text:'level 3-1-6-6'} +, {id:'1-6-7', text:'level 3-1-6-7'} +, {id:'1-6-8', text:'level 3-1-6-8'} +, {id:'1-6-9', text:'level 3-1-6-9'} +]} +, {id:'1-7-10', text:'level 2-1-7', item:[ + {id:'1-7-0', text:'level 3-1-7-0'} +, {id:'1-7-1', text:'level 3-1-7-1'} +, {id:'1-7-2', text:'level 3-1-7-2'} +, {id:'1-7-3', text:'level 3-1-7-3'} +, {id:'1-7-4', text:'level 3-1-7-4'} +, {id:'1-7-5', text:'level 3-1-7-5'} +, {id:'1-7-6', text:'level 3-1-7-6'} +, {id:'1-7-7', text:'level 3-1-7-7'} +, {id:'1-7-8', text:'level 3-1-7-8'} +, {id:'1-7-9', text:'level 3-1-7-9'} +]} +, {id:'1-8-10', text:'level 2-1-8', item:[ + {id:'1-8-0', text:'level 3-1-8-0'} +, {id:'1-8-1', text:'level 3-1-8-1'} +, {id:'1-8-2', text:'level 3-1-8-2'} +, {id:'1-8-3', text:'level 3-1-8-3'} +, {id:'1-8-4', text:'level 3-1-8-4'} +, {id:'1-8-5', text:'level 3-1-8-5'} +, {id:'1-8-6', text:'level 3-1-8-6'} +, {id:'1-8-7', text:'level 3-1-8-7'} +, {id:'1-8-8', text:'level 3-1-8-8'} +, {id:'1-8-9', text:'level 3-1-8-9'} +]} +, {id:'1-9-10', text:'level 2-1-9', item:[ + {id:'1-9-0', text:'level 3-1-9-0'} +, {id:'1-9-1', text:'level 3-1-9-1'} +, {id:'1-9-2', text:'level 3-1-9-2'} +, {id:'1-9-3', text:'level 3-1-9-3'} +, {id:'1-9-4', text:'level 3-1-9-4'} +, {id:'1-9-5', text:'level 3-1-9-5'} +, {id:'1-9-6', text:'level 3-1-9-6'} +, {id:'1-9-7', text:'level 3-1-9-7'} +, {id:'1-9-8', text:'level 3-1-9-8'} +, {id:'1-9-9', text:'level 3-1-9-9'} +]} +, {id:'1-10-10', text:'level 2-1-10', item:[ + {id:'1-10-0', text:'level 3-1-10-0'} +, {id:'1-10-1', text:'level 3-1-10-1'} +, {id:'1-10-2', text:'level 3-1-10-2'} +, {id:'1-10-3', text:'level 3-1-10-3'} +, {id:'1-10-4', text:'level 3-1-10-4'} +, {id:'1-10-5', text:'level 3-1-10-5'} +, {id:'1-10-6', text:'level 3-1-10-6'} +, {id:'1-10-7', text:'level 3-1-10-7'} +, {id:'1-10-8', text:'level 3-1-10-8'} +, {id:'1-10-9', text:'level 3-1-10-9'} +]} +, {id:'1-11-10', text:'level 2-1-11', item:[ + {id:'1-11-0', text:'level 3-1-11-0'} +, {id:'1-11-1', text:'level 3-1-11-1'} +, {id:'1-11-2', text:'level 3-1-11-2'} +, {id:'1-11-3', text:'level 3-1-11-3'} +, {id:'1-11-4', text:'level 3-1-11-4'} +, {id:'1-11-5', text:'level 3-1-11-5'} +, {id:'1-11-6', text:'level 3-1-11-6'} +, {id:'1-11-7', text:'level 3-1-11-7'} +, {id:'1-11-8', text:'level 3-1-11-8'} +, {id:'1-11-9', text:'level 3-1-11-9'} +]} +, {id:'1-12-10', text:'level 2-1-12', item:[ + {id:'1-12-0', text:'level 3-1-12-0'} +, {id:'1-12-1', text:'level 3-1-12-1'} +, {id:'1-12-2', text:'level 3-1-12-2'} +, {id:'1-12-3', text:'level 3-1-12-3'} +, {id:'1-12-4', text:'level 3-1-12-4'} +, {id:'1-12-5', text:'level 3-1-12-5'} +, {id:'1-12-6', text:'level 3-1-12-6'} +, {id:'1-12-7', text:'level 3-1-12-7'} +, {id:'1-12-8', text:'level 3-1-12-8'} +, {id:'1-12-9', text:'level 3-1-12-9'} +]} +, {id:'1-13-10', text:'level 2-1-13', item:[ + {id:'1-13-0', text:'level 3-1-13-0'} +, {id:'1-13-1', text:'level 3-1-13-1'} +, {id:'1-13-2', text:'level 3-1-13-2'} +, {id:'1-13-3', text:'level 3-1-13-3'} +, {id:'1-13-4', text:'level 3-1-13-4'} +, {id:'1-13-5', text:'level 3-1-13-5'} +, {id:'1-13-6', text:'level 3-1-13-6'} +, {id:'1-13-7', text:'level 3-1-13-7'} +, {id:'1-13-8', text:'level 3-1-13-8'} +, {id:'1-13-9', text:'level 3-1-13-9'} +]} +, {id:'1-14-10', text:'level 2-1-14', item:[ + {id:'1-14-0', text:'level 3-1-14-0'} +, {id:'1-14-1', text:'level 3-1-14-1'} +, {id:'1-14-2', text:'level 3-1-14-2'} +, {id:'1-14-3', text:'level 3-1-14-3'} +, {id:'1-14-4', text:'level 3-1-14-4'} +, {id:'1-14-5', text:'level 3-1-14-5'} +, {id:'1-14-6', text:'level 3-1-14-6'} +, {id:'1-14-7', text:'level 3-1-14-7'} +, {id:'1-14-8', text:'level 3-1-14-8'} +, {id:'1-14-9', text:'level 3-1-14-9'} +]} +, {id:'1-15-10', text:'level 2-1-15', item:[ + {id:'1-15-0', text:'level 3-1-15-0'} +, {id:'1-15-1', text:'level 3-1-15-1'} +, {id:'1-15-2', text:'level 3-1-15-2'} +, {id:'1-15-3', text:'level 3-1-15-3'} +, {id:'1-15-4', text:'level 3-1-15-4'} +, {id:'1-15-5', text:'level 3-1-15-5'} +, {id:'1-15-6', text:'level 3-1-15-6'} +, {id:'1-15-7', text:'level 3-1-15-7'} +, {id:'1-15-8', text:'level 3-1-15-8'} +, {id:'1-15-9', text:'level 3-1-15-9'} +]} +, {id:'1-16-10', text:'level 2-1-16', item:[ + {id:'1-16-0', text:'level 3-1-16-0'} +, {id:'1-16-1', text:'level 3-1-16-1'} +, {id:'1-16-2', text:'level 3-1-16-2'} +, {id:'1-16-3', text:'level 3-1-16-3'} +, {id:'1-16-4', text:'level 3-1-16-4'} +, {id:'1-16-5', text:'level 3-1-16-5'} +, {id:'1-16-6', text:'level 3-1-16-6'} +, {id:'1-16-7', text:'level 3-1-16-7'} +, {id:'1-16-8', text:'level 3-1-16-8'} +, {id:'1-16-9', text:'level 3-1-16-9'} +]} +, {id:'1-17-10', text:'level 2-1-17', item:[ + {id:'1-17-0', text:'level 3-1-17-0'} +, {id:'1-17-1', text:'level 3-1-17-1'} +, {id:'1-17-2', text:'level 3-1-17-2'} +, {id:'1-17-3', text:'level 3-1-17-3'} +, {id:'1-17-4', text:'level 3-1-17-4'} +, {id:'1-17-5', text:'level 3-1-17-5'} +, {id:'1-17-6', text:'level 3-1-17-6'} +, {id:'1-17-7', text:'level 3-1-17-7'} +, {id:'1-17-8', text:'level 3-1-17-8'} +, {id:'1-17-9', text:'level 3-1-17-9'} +]} +, {id:'1-18-10', text:'level 2-1-18', item:[ + {id:'1-18-0', text:'level 3-1-18-0'} +, {id:'1-18-1', text:'level 3-1-18-1'} +, {id:'1-18-2', text:'level 3-1-18-2'} +, {id:'1-18-3', text:'level 3-1-18-3'} +, {id:'1-18-4', text:'level 3-1-18-4'} +, {id:'1-18-5', text:'level 3-1-18-5'} +, {id:'1-18-6', text:'level 3-1-18-6'} +, {id:'1-18-7', text:'level 3-1-18-7'} +, {id:'1-18-8', text:'level 3-1-18-8'} +, {id:'1-18-9', text:'level 3-1-18-9'} +]} +, {id:'1-19-10', text:'level 2-1-19', item:[ + {id:'1-19-0', text:'level 3-1-19-0'} +, {id:'1-19-1', text:'level 3-1-19-1'} +, {id:'1-19-2', text:'level 3-1-19-2'} +, {id:'1-19-3', text:'level 3-1-19-3'} +, {id:'1-19-4', text:'level 3-1-19-4'} +, {id:'1-19-5', text:'level 3-1-19-5'} +, {id:'1-19-6', text:'level 3-1-19-6'} +, {id:'1-19-7', text:'level 3-1-19-7'} +, {id:'1-19-8', text:'level 3-1-19-8'} +, {id:'1-19-9', text:'level 3-1-19-9'} +]} +]} +,{id:'2-20-10', text:'level 1-2', item:[ + {id:'2-0-10', text:'level 2-2-0', item:[ + {id:'2-0-0', text:'level 3-2-0-0'} +, {id:'2-0-1', text:'level 3-2-0-1'} +, {id:'2-0-2', text:'level 3-2-0-2'} +, {id:'2-0-3', text:'level 3-2-0-3'} +, {id:'2-0-4', text:'level 3-2-0-4'} +, {id:'2-0-5', text:'level 3-2-0-5'} +, {id:'2-0-6', text:'level 3-2-0-6'} +, {id:'2-0-7', text:'level 3-2-0-7'} +, {id:'2-0-8', text:'level 3-2-0-8'} +, {id:'2-0-9', text:'level 3-2-0-9'} +]} +, {id:'2-1-10', text:'level 2-2-1', item:[ + {id:'2-1-0', text:'level 3-2-1-0'} +, {id:'2-1-1', text:'level 3-2-1-1'} +, {id:'2-1-2', text:'level 3-2-1-2'} +, {id:'2-1-3', text:'level 3-2-1-3'} +, {id:'2-1-4', text:'level 3-2-1-4'} +, {id:'2-1-5', text:'level 3-2-1-5'} +, {id:'2-1-6', text:'level 3-2-1-6'} +, {id:'2-1-7', text:'level 3-2-1-7'} +, {id:'2-1-8', text:'level 3-2-1-8'} +, {id:'2-1-9', text:'level 3-2-1-9'} +]} +, {id:'2-2-10', text:'level 2-2-2', item:[ + {id:'2-2-0', text:'level 3-2-2-0'} +, {id:'2-2-1', text:'level 3-2-2-1'} +, {id:'2-2-2', text:'level 3-2-2-2'} +, {id:'2-2-3', text:'level 3-2-2-3'} +, {id:'2-2-4', text:'level 3-2-2-4'} +, {id:'2-2-5', text:'level 3-2-2-5'} +, {id:'2-2-6', text:'level 3-2-2-6'} +, {id:'2-2-7', text:'level 3-2-2-7'} +, {id:'2-2-8', text:'level 3-2-2-8'} +, {id:'2-2-9', text:'level 3-2-2-9'} +]} +, {id:'2-3-10', text:'level 2-2-3', item:[ + {id:'2-3-0', text:'level 3-2-3-0'} +, {id:'2-3-1', text:'level 3-2-3-1'} +, {id:'2-3-2', text:'level 3-2-3-2'} +, {id:'2-3-3', text:'level 3-2-3-3'} +, {id:'2-3-4', text:'level 3-2-3-4'} +, {id:'2-3-5', text:'level 3-2-3-5'} +, {id:'2-3-6', text:'level 3-2-3-6'} +, {id:'2-3-7', text:'level 3-2-3-7'} +, {id:'2-3-8', text:'level 3-2-3-8'} +, {id:'2-3-9', text:'level 3-2-3-9'} +]} +, {id:'2-4-10', text:'level 2-2-4', item:[ + {id:'2-4-0', text:'level 3-2-4-0'} +, {id:'2-4-1', text:'level 3-2-4-1'} +, {id:'2-4-2', text:'level 3-2-4-2'} +, {id:'2-4-3', text:'level 3-2-4-3'} +, {id:'2-4-4', text:'level 3-2-4-4'} +, {id:'2-4-5', text:'level 3-2-4-5'} +, {id:'2-4-6', text:'level 3-2-4-6'} +, {id:'2-4-7', text:'level 3-2-4-7'} +, {id:'2-4-8', text:'level 3-2-4-8'} +, {id:'2-4-9', text:'level 3-2-4-9'} +]} +, {id:'2-5-10', text:'level 2-2-5', item:[ + {id:'2-5-0', text:'level 3-2-5-0'} +, {id:'2-5-1', text:'level 3-2-5-1'} +, {id:'2-5-2', text:'level 3-2-5-2'} +, {id:'2-5-3', text:'level 3-2-5-3'} +, {id:'2-5-4', text:'level 3-2-5-4'} +, {id:'2-5-5', text:'level 3-2-5-5'} +, {id:'2-5-6', text:'level 3-2-5-6'} +, {id:'2-5-7', text:'level 3-2-5-7'} +, {id:'2-5-8', text:'level 3-2-5-8'} +, {id:'2-5-9', text:'level 3-2-5-9'} +]} +, {id:'2-6-10', text:'level 2-2-6', item:[ + {id:'2-6-0', text:'level 3-2-6-0'} +, {id:'2-6-1', text:'level 3-2-6-1'} +, {id:'2-6-2', text:'level 3-2-6-2'} +, {id:'2-6-3', text:'level 3-2-6-3'} +, {id:'2-6-4', text:'level 3-2-6-4'} +, {id:'2-6-5', text:'level 3-2-6-5'} +, {id:'2-6-6', text:'level 3-2-6-6'} +, {id:'2-6-7', text:'level 3-2-6-7'} +, {id:'2-6-8', text:'level 3-2-6-8'} +, {id:'2-6-9', text:'level 3-2-6-9'} +]} +, {id:'2-7-10', text:'level 2-2-7', item:[ + {id:'2-7-0', text:'level 3-2-7-0'} +, {id:'2-7-1', text:'level 3-2-7-1'} +, {id:'2-7-2', text:'level 3-2-7-2'} +, {id:'2-7-3', text:'level 3-2-7-3'} +, {id:'2-7-4', text:'level 3-2-7-4'} +, {id:'2-7-5', text:'level 3-2-7-5'} +, {id:'2-7-6', text:'level 3-2-7-6'} +, {id:'2-7-7', text:'level 3-2-7-7'} +, {id:'2-7-8', text:'level 3-2-7-8'} +, {id:'2-7-9', text:'level 3-2-7-9'} +]} +, {id:'2-8-10', text:'level 2-2-8', item:[ + {id:'2-8-0', text:'level 3-2-8-0'} +, {id:'2-8-1', text:'level 3-2-8-1'} +, {id:'2-8-2', text:'level 3-2-8-2'} +, {id:'2-8-3', text:'level 3-2-8-3'} +, {id:'2-8-4', text:'level 3-2-8-4'} +, {id:'2-8-5', text:'level 3-2-8-5'} +, {id:'2-8-6', text:'level 3-2-8-6'} +, {id:'2-8-7', text:'level 3-2-8-7'} +, {id:'2-8-8', text:'level 3-2-8-8'} +, {id:'2-8-9', text:'level 3-2-8-9'} +]} +, {id:'2-9-10', text:'level 2-2-9', item:[ + {id:'2-9-0', text:'level 3-2-9-0'} +, {id:'2-9-1', text:'level 3-2-9-1'} +, {id:'2-9-2', text:'level 3-2-9-2'} +, {id:'2-9-3', text:'level 3-2-9-3'} +, {id:'2-9-4', text:'level 3-2-9-4'} +, {id:'2-9-5', text:'level 3-2-9-5'} +, {id:'2-9-6', text:'level 3-2-9-6'} +, {id:'2-9-7', text:'level 3-2-9-7'} +, {id:'2-9-8', text:'level 3-2-9-8'} +, {id:'2-9-9', text:'level 3-2-9-9'} +]} +, {id:'2-10-10', text:'level 2-2-10', item:[ + {id:'2-10-0', text:'level 3-2-10-0'} +, {id:'2-10-1', text:'level 3-2-10-1'} +, {id:'2-10-2', text:'level 3-2-10-2'} +, {id:'2-10-3', text:'level 3-2-10-3'} +, {id:'2-10-4', text:'level 3-2-10-4'} +, {id:'2-10-5', text:'level 3-2-10-5'} +, {id:'2-10-6', text:'level 3-2-10-6'} +, {id:'2-10-7', text:'level 3-2-10-7'} +, {id:'2-10-8', text:'level 3-2-10-8'} +, {id:'2-10-9', text:'level 3-2-10-9'} +]} +, {id:'2-11-10', text:'level 2-2-11', item:[ + {id:'2-11-0', text:'level 3-2-11-0'} +, {id:'2-11-1', text:'level 3-2-11-1'} +, {id:'2-11-2', text:'level 3-2-11-2'} +, {id:'2-11-3', text:'level 3-2-11-3'} +, {id:'2-11-4', text:'level 3-2-11-4'} +, {id:'2-11-5', text:'level 3-2-11-5'} +, {id:'2-11-6', text:'level 3-2-11-6'} +, {id:'2-11-7', text:'level 3-2-11-7'} +, {id:'2-11-8', text:'level 3-2-11-8'} +, {id:'2-11-9', text:'level 3-2-11-9'} +]} +, {id:'2-12-10', text:'level 2-2-12', item:[ + {id:'2-12-0', text:'level 3-2-12-0'} +, {id:'2-12-1', text:'level 3-2-12-1'} +, {id:'2-12-2', text:'level 3-2-12-2'} +, {id:'2-12-3', text:'level 3-2-12-3'} +, {id:'2-12-4', text:'level 3-2-12-4'} +, {id:'2-12-5', text:'level 3-2-12-5'} +, {id:'2-12-6', text:'level 3-2-12-6'} +, {id:'2-12-7', text:'level 3-2-12-7'} +, {id:'2-12-8', text:'level 3-2-12-8'} +, {id:'2-12-9', text:'level 3-2-12-9'} +]} +, {id:'2-13-10', text:'level 2-2-13', item:[ + {id:'2-13-0', text:'level 3-2-13-0'} +, {id:'2-13-1', text:'level 3-2-13-1'} +, {id:'2-13-2', text:'level 3-2-13-2'} +, {id:'2-13-3', text:'level 3-2-13-3'} +, {id:'2-13-4', text:'level 3-2-13-4'} +, {id:'2-13-5', text:'level 3-2-13-5'} +, {id:'2-13-6', text:'level 3-2-13-6'} +, {id:'2-13-7', text:'level 3-2-13-7'} +, {id:'2-13-8', text:'level 3-2-13-8'} +, {id:'2-13-9', text:'level 3-2-13-9'} +]} +, {id:'2-14-10', text:'level 2-2-14', item:[ + {id:'2-14-0', text:'level 3-2-14-0'} +, {id:'2-14-1', text:'level 3-2-14-1'} +, {id:'2-14-2', text:'level 3-2-14-2'} +, {id:'2-14-3', text:'level 3-2-14-3'} +, {id:'2-14-4', text:'level 3-2-14-4'} +, {id:'2-14-5', text:'level 3-2-14-5'} +, {id:'2-14-6', text:'level 3-2-14-6'} +, {id:'2-14-7', text:'level 3-2-14-7'} +, {id:'2-14-8', text:'level 3-2-14-8'} +, {id:'2-14-9', text:'level 3-2-14-9'} +]} +, {id:'2-15-10', text:'level 2-2-15', item:[ + {id:'2-15-0', text:'level 3-2-15-0'} +, {id:'2-15-1', text:'level 3-2-15-1'} +, {id:'2-15-2', text:'level 3-2-15-2'} +, {id:'2-15-3', text:'level 3-2-15-3'} +, {id:'2-15-4', text:'level 3-2-15-4'} +, {id:'2-15-5', text:'level 3-2-15-5'} +, {id:'2-15-6', text:'level 3-2-15-6'} +, {id:'2-15-7', text:'level 3-2-15-7'} +, {id:'2-15-8', text:'level 3-2-15-8'} +, {id:'2-15-9', text:'level 3-2-15-9'} +]} +, {id:'2-16-10', text:'level 2-2-16', item:[ + {id:'2-16-0', text:'level 3-2-16-0'} +, {id:'2-16-1', text:'level 3-2-16-1'} +, {id:'2-16-2', text:'level 3-2-16-2'} +, {id:'2-16-3', text:'level 3-2-16-3'} +, {id:'2-16-4', text:'level 3-2-16-4'} +, {id:'2-16-5', text:'level 3-2-16-5'} +, {id:'2-16-6', text:'level 3-2-16-6'} +, {id:'2-16-7', text:'level 3-2-16-7'} +, {id:'2-16-8', text:'level 3-2-16-8'} +, {id:'2-16-9', text:'level 3-2-16-9'} +]} +, {id:'2-17-10', text:'level 2-2-17', item:[ + {id:'2-17-0', text:'level 3-2-17-0'} +, {id:'2-17-1', text:'level 3-2-17-1'} +, {id:'2-17-2', text:'level 3-2-17-2'} +, {id:'2-17-3', text:'level 3-2-17-3'} +, {id:'2-17-4', text:'level 3-2-17-4'} +, {id:'2-17-5', text:'level 3-2-17-5'} +, {id:'2-17-6', text:'level 3-2-17-6'} +, {id:'2-17-7', text:'level 3-2-17-7'} +, {id:'2-17-8', text:'level 3-2-17-8'} +, {id:'2-17-9', text:'level 3-2-17-9'} +]} +, {id:'2-18-10', text:'level 2-2-18', item:[ + {id:'2-18-0', text:'level 3-2-18-0'} +, {id:'2-18-1', text:'level 3-2-18-1'} +, {id:'2-18-2', text:'level 3-2-18-2'} +, {id:'2-18-3', text:'level 3-2-18-3'} +, {id:'2-18-4', text:'level 3-2-18-4'} +, {id:'2-18-5', text:'level 3-2-18-5'} +, {id:'2-18-6', text:'level 3-2-18-6'} +, {id:'2-18-7', text:'level 3-2-18-7'} +, {id:'2-18-8', text:'level 3-2-18-8'} +, {id:'2-18-9', text:'level 3-2-18-9'} +]} +, {id:'2-19-10', text:'level 2-2-19', item:[ + {id:'2-19-0', text:'level 3-2-19-0'} +, {id:'2-19-1', text:'level 3-2-19-1'} +, {id:'2-19-2', text:'level 3-2-19-2'} +, {id:'2-19-3', text:'level 3-2-19-3'} +, {id:'2-19-4', text:'level 3-2-19-4'} +, {id:'2-19-5', text:'level 3-2-19-5'} +, {id:'2-19-6', text:'level 3-2-19-6'} +, {id:'2-19-7', text:'level 3-2-19-7'} +, {id:'2-19-8', text:'level 3-2-19-8'} +, {id:'2-19-9', text:'level 3-2-19-9'} +]} +]} +,{id:'3-20-10', text:'level 1-3', item:[ + {id:'3-0-10', text:'level 2-3-0', item:[ + {id:'3-0-0', text:'level 3-3-0-0'} +, {id:'3-0-1', text:'level 3-3-0-1'} +, {id:'3-0-2', text:'level 3-3-0-2'} +, {id:'3-0-3', text:'level 3-3-0-3'} +, {id:'3-0-4', text:'level 3-3-0-4'} +, {id:'3-0-5', text:'level 3-3-0-5'} +, {id:'3-0-6', text:'level 3-3-0-6'} +, {id:'3-0-7', text:'level 3-3-0-7'} +, {id:'3-0-8', text:'level 3-3-0-8'} +, {id:'3-0-9', text:'level 3-3-0-9'} +]} +, {id:'3-1-10', text:'level 2-3-1', item:[ + {id:'3-1-0', text:'level 3-3-1-0'} +, {id:'3-1-1', text:'level 3-3-1-1'} +, {id:'3-1-2', text:'level 3-3-1-2'} +, {id:'3-1-3', text:'level 3-3-1-3'} +, {id:'3-1-4', text:'level 3-3-1-4'} +, {id:'3-1-5', text:'level 3-3-1-5'} +, {id:'3-1-6', text:'level 3-3-1-6'} +, {id:'3-1-7', text:'level 3-3-1-7'} +, {id:'3-1-8', text:'level 3-3-1-8'} +, {id:'3-1-9', text:'level 3-3-1-9'} +]} +, {id:'3-2-10', text:'level 2-3-2', item:[ + {id:'3-2-0', text:'level 3-3-2-0'} +, {id:'3-2-1', text:'level 3-3-2-1'} +, {id:'3-2-2', text:'level 3-3-2-2'} +, {id:'3-2-3', text:'level 3-3-2-3'} +, {id:'3-2-4', text:'level 3-3-2-4'} +, {id:'3-2-5', text:'level 3-3-2-5'} +, {id:'3-2-6', text:'level 3-3-2-6'} +, {id:'3-2-7', text:'level 3-3-2-7'} +, {id:'3-2-8', text:'level 3-3-2-8'} +, {id:'3-2-9', text:'level 3-3-2-9'} +]} +, {id:'3-3-10', text:'level 2-3-3', item:[ + {id:'3-3-0', text:'level 3-3-3-0'} +, {id:'3-3-1', text:'level 3-3-3-1'} +, {id:'3-3-2', text:'level 3-3-3-2'} +, {id:'3-3-3', text:'level 3-3-3-3'} +, {id:'3-3-4', text:'level 3-3-3-4'} +, {id:'3-3-5', text:'level 3-3-3-5'} +, {id:'3-3-6', text:'level 3-3-3-6'} +, {id:'3-3-7', text:'level 3-3-3-7'} +, {id:'3-3-8', text:'level 3-3-3-8'} +, {id:'3-3-9', text:'level 3-3-3-9'} +]} +, {id:'3-4-10', text:'level 2-3-4', item:[ + {id:'3-4-0', text:'level 3-3-4-0'} +, {id:'3-4-1', text:'level 3-3-4-1'} +, {id:'3-4-2', text:'level 3-3-4-2'} +, {id:'3-4-3', text:'level 3-3-4-3'} +, {id:'3-4-4', text:'level 3-3-4-4'} +, {id:'3-4-5', text:'level 3-3-4-5'} +, {id:'3-4-6', text:'level 3-3-4-6'} +, {id:'3-4-7', text:'level 3-3-4-7'} +, {id:'3-4-8', text:'level 3-3-4-8'} +, {id:'3-4-9', text:'level 3-3-4-9'} +]} +, {id:'3-5-10', text:'level 2-3-5', item:[ + {id:'3-5-0', text:'level 3-3-5-0'} +, {id:'3-5-1', text:'level 3-3-5-1'} +, {id:'3-5-2', text:'level 3-3-5-2'} +, {id:'3-5-3', text:'level 3-3-5-3'} +, {id:'3-5-4', text:'level 3-3-5-4'} +, {id:'3-5-5', text:'level 3-3-5-5'} +, {id:'3-5-6', text:'level 3-3-5-6'} +, {id:'3-5-7', text:'level 3-3-5-7'} +, {id:'3-5-8', text:'level 3-3-5-8'} +, {id:'3-5-9', text:'level 3-3-5-9'} +]} +, {id:'3-6-10', text:'level 2-3-6', item:[ + {id:'3-6-0', text:'level 3-3-6-0'} +, {id:'3-6-1', text:'level 3-3-6-1'} +, {id:'3-6-2', text:'level 3-3-6-2'} +, {id:'3-6-3', text:'level 3-3-6-3'} +, {id:'3-6-4', text:'level 3-3-6-4'} +, {id:'3-6-5', text:'level 3-3-6-5'} +, {id:'3-6-6', text:'level 3-3-6-6'} +, {id:'3-6-7', text:'level 3-3-6-7'} +, {id:'3-6-8', text:'level 3-3-6-8'} +, {id:'3-6-9', text:'level 3-3-6-9'} +]} +, {id:'3-7-10', text:'level 2-3-7', item:[ + {id:'3-7-0', text:'level 3-3-7-0'} +, {id:'3-7-1', text:'level 3-3-7-1'} +, {id:'3-7-2', text:'level 3-3-7-2'} +, {id:'3-7-3', text:'level 3-3-7-3'} +, {id:'3-7-4', text:'level 3-3-7-4'} +, {id:'3-7-5', text:'level 3-3-7-5'} +, {id:'3-7-6', text:'level 3-3-7-6'} +, {id:'3-7-7', text:'level 3-3-7-7'} +, {id:'3-7-8', text:'level 3-3-7-8'} +, {id:'3-7-9', text:'level 3-3-7-9'} +]} +, {id:'3-8-10', text:'level 2-3-8', item:[ + {id:'3-8-0', text:'level 3-3-8-0'} +, {id:'3-8-1', text:'level 3-3-8-1'} +, {id:'3-8-2', text:'level 3-3-8-2'} +, {id:'3-8-3', text:'level 3-3-8-3'} +, {id:'3-8-4', text:'level 3-3-8-4'} +, {id:'3-8-5', text:'level 3-3-8-5'} +, {id:'3-8-6', text:'level 3-3-8-6'} +, {id:'3-8-7', text:'level 3-3-8-7'} +, {id:'3-8-8', text:'level 3-3-8-8'} +, {id:'3-8-9', text:'level 3-3-8-9'} +]} +, {id:'3-9-10', text:'level 2-3-9', item:[ + {id:'3-9-0', text:'level 3-3-9-0'} +, {id:'3-9-1', text:'level 3-3-9-1'} +, {id:'3-9-2', text:'level 3-3-9-2'} +, {id:'3-9-3', text:'level 3-3-9-3'} +, {id:'3-9-4', text:'level 3-3-9-4'} +, {id:'3-9-5', text:'level 3-3-9-5'} +, {id:'3-9-6', text:'level 3-3-9-6'} +, {id:'3-9-7', text:'level 3-3-9-7'} +, {id:'3-9-8', text:'level 3-3-9-8'} +, {id:'3-9-9', text:'level 3-3-9-9'} +]} +, {id:'3-10-10', text:'level 2-3-10', item:[ + {id:'3-10-0', text:'level 3-3-10-0'} +, {id:'3-10-1', text:'level 3-3-10-1'} +, {id:'3-10-2', text:'level 3-3-10-2'} +, {id:'3-10-3', text:'level 3-3-10-3'} +, {id:'3-10-4', text:'level 3-3-10-4'} +, {id:'3-10-5', text:'level 3-3-10-5'} +, {id:'3-10-6', text:'level 3-3-10-6'} +, {id:'3-10-7', text:'level 3-3-10-7'} +, {id:'3-10-8', text:'level 3-3-10-8'} +, {id:'3-10-9', text:'level 3-3-10-9'} +]} +, {id:'3-11-10', text:'level 2-3-11', item:[ + {id:'3-11-0', text:'level 3-3-11-0'} +, {id:'3-11-1', text:'level 3-3-11-1'} +, {id:'3-11-2', text:'level 3-3-11-2'} +, {id:'3-11-3', text:'level 3-3-11-3'} +, {id:'3-11-4', text:'level 3-3-11-4'} +, {id:'3-11-5', text:'level 3-3-11-5'} +, {id:'3-11-6', text:'level 3-3-11-6'} +, {id:'3-11-7', text:'level 3-3-11-7'} +, {id:'3-11-8', text:'level 3-3-11-8'} +, {id:'3-11-9', text:'level 3-3-11-9'} +]} +, {id:'3-12-10', text:'level 2-3-12', item:[ + {id:'3-12-0', text:'level 3-3-12-0'} +, {id:'3-12-1', text:'level 3-3-12-1'} +, {id:'3-12-2', text:'level 3-3-12-2'} +, {id:'3-12-3', text:'level 3-3-12-3'} +, {id:'3-12-4', text:'level 3-3-12-4'} +, {id:'3-12-5', text:'level 3-3-12-5'} +, {id:'3-12-6', text:'level 3-3-12-6'} +, {id:'3-12-7', text:'level 3-3-12-7'} +, {id:'3-12-8', text:'level 3-3-12-8'} +, {id:'3-12-9', text:'level 3-3-12-9'} +]} +, {id:'3-13-10', text:'level 2-3-13', item:[ + {id:'3-13-0', text:'level 3-3-13-0'} +, {id:'3-13-1', text:'level 3-3-13-1'} +, {id:'3-13-2', text:'level 3-3-13-2'} +, {id:'3-13-3', text:'level 3-3-13-3'} +, {id:'3-13-4', text:'level 3-3-13-4'} +, {id:'3-13-5', text:'level 3-3-13-5'} +, {id:'3-13-6', text:'level 3-3-13-6'} +, {id:'3-13-7', text:'level 3-3-13-7'} +, {id:'3-13-8', text:'level 3-3-13-8'} +, {id:'3-13-9', text:'level 3-3-13-9'} +]} +, {id:'3-14-10', text:'level 2-3-14', item:[ + {id:'3-14-0', text:'level 3-3-14-0'} +, {id:'3-14-1', text:'level 3-3-14-1'} +, {id:'3-14-2', text:'level 3-3-14-2'} +, {id:'3-14-3', text:'level 3-3-14-3'} +, {id:'3-14-4', text:'level 3-3-14-4'} +, {id:'3-14-5', text:'level 3-3-14-5'} +, {id:'3-14-6', text:'level 3-3-14-6'} +, {id:'3-14-7', text:'level 3-3-14-7'} +, {id:'3-14-8', text:'level 3-3-14-8'} +, {id:'3-14-9', text:'level 3-3-14-9'} +]} +, {id:'3-15-10', text:'level 2-3-15', item:[ + {id:'3-15-0', text:'level 3-3-15-0'} +, {id:'3-15-1', text:'level 3-3-15-1'} +, {id:'3-15-2', text:'level 3-3-15-2'} +, {id:'3-15-3', text:'level 3-3-15-3'} +, {id:'3-15-4', text:'level 3-3-15-4'} +, {id:'3-15-5', text:'level 3-3-15-5'} +, {id:'3-15-6', text:'level 3-3-15-6'} +, {id:'3-15-7', text:'level 3-3-15-7'} +, {id:'3-15-8', text:'level 3-3-15-8'} +, {id:'3-15-9', text:'level 3-3-15-9'} +]} +, {id:'3-16-10', text:'level 2-3-16', item:[ + {id:'3-16-0', text:'level 3-3-16-0'} +, {id:'3-16-1', text:'level 3-3-16-1'} +, {id:'3-16-2', text:'level 3-3-16-2'} +, {id:'3-16-3', text:'level 3-3-16-3'} +, {id:'3-16-4', text:'level 3-3-16-4'} +, {id:'3-16-5', text:'level 3-3-16-5'} +, {id:'3-16-6', text:'level 3-3-16-6'} +, {id:'3-16-7', text:'level 3-3-16-7'} +, {id:'3-16-8', text:'level 3-3-16-8'} +, {id:'3-16-9', text:'level 3-3-16-9'} +]} +, {id:'3-17-10', text:'level 2-3-17', item:[ + {id:'3-17-0', text:'level 3-3-17-0'} +, {id:'3-17-1', text:'level 3-3-17-1'} +, {id:'3-17-2', text:'level 3-3-17-2'} +, {id:'3-17-3', text:'level 3-3-17-3'} +, {id:'3-17-4', text:'level 3-3-17-4'} +, {id:'3-17-5', text:'level 3-3-17-5'} +, {id:'3-17-6', text:'level 3-3-17-6'} +, {id:'3-17-7', text:'level 3-3-17-7'} +, {id:'3-17-8', text:'level 3-3-17-8'} +, {id:'3-17-9', text:'level 3-3-17-9'} +]} +, {id:'3-18-10', text:'level 2-3-18', item:[ + {id:'3-18-0', text:'level 3-3-18-0'} +, {id:'3-18-1', text:'level 3-3-18-1'} +, {id:'3-18-2', text:'level 3-3-18-2'} +, {id:'3-18-3', text:'level 3-3-18-3'} +, {id:'3-18-4', text:'level 3-3-18-4'} +, {id:'3-18-5', text:'level 3-3-18-5'} +, {id:'3-18-6', text:'level 3-3-18-6'} +, {id:'3-18-7', text:'level 3-3-18-7'} +, {id:'3-18-8', text:'level 3-3-18-8'} +, {id:'3-18-9', text:'level 3-3-18-9'} +]} +, {id:'3-19-10', text:'level 2-3-19', item:[ + {id:'3-19-0', text:'level 3-3-19-0'} +, {id:'3-19-1', text:'level 3-3-19-1'} +, {id:'3-19-2', text:'level 3-3-19-2'} +, {id:'3-19-3', text:'level 3-3-19-3'} +, {id:'3-19-4', text:'level 3-3-19-4'} +, {id:'3-19-5', text:'level 3-3-19-5'} +, {id:'3-19-6', text:'level 3-3-19-6'} +, {id:'3-19-7', text:'level 3-3-19-7'} +, {id:'3-19-8', text:'level 3-3-19-8'} +, {id:'3-19-9', text:'level 3-3-19-9'} +]} +]} +,{id:'4-20-10', text:'level 1-4', item:[ + {id:'4-0-10', text:'level 2-4-0', item:[ + {id:'4-0-0', text:'level 3-4-0-0'} +, {id:'4-0-1', text:'level 3-4-0-1'} +, {id:'4-0-2', text:'level 3-4-0-2'} +, {id:'4-0-3', text:'level 3-4-0-3'} +, {id:'4-0-4', text:'level 3-4-0-4'} +, {id:'4-0-5', text:'level 3-4-0-5'} +, {id:'4-0-6', text:'level 3-4-0-6'} +, {id:'4-0-7', text:'level 3-4-0-7'} +, {id:'4-0-8', text:'level 3-4-0-8'} +, {id:'4-0-9', text:'level 3-4-0-9'} +]} +, {id:'4-1-10', text:'level 2-4-1', item:[ + {id:'4-1-0', text:'level 3-4-1-0'} +, {id:'4-1-1', text:'level 3-4-1-1'} +, {id:'4-1-2', text:'level 3-4-1-2'} +, {id:'4-1-3', text:'level 3-4-1-3'} +, {id:'4-1-4', text:'level 3-4-1-4'} +, {id:'4-1-5', text:'level 3-4-1-5'} +, {id:'4-1-6', text:'level 3-4-1-6'} +, {id:'4-1-7', text:'level 3-4-1-7'} +, {id:'4-1-8', text:'level 3-4-1-8'} +, {id:'4-1-9', text:'level 3-4-1-9'} +]} +, {id:'4-2-10', text:'level 2-4-2', item:[ + {id:'4-2-0', text:'level 3-4-2-0'} +, {id:'4-2-1', text:'level 3-4-2-1'} +, {id:'4-2-2', text:'level 3-4-2-2'} +, {id:'4-2-3', text:'level 3-4-2-3'} +, {id:'4-2-4', text:'level 3-4-2-4'} +, {id:'4-2-5', text:'level 3-4-2-5'} +, {id:'4-2-6', text:'level 3-4-2-6'} +, {id:'4-2-7', text:'level 3-4-2-7'} +, {id:'4-2-8', text:'level 3-4-2-8'} +, {id:'4-2-9', text:'level 3-4-2-9'} +]} +, {id:'4-3-10', text:'level 2-4-3', item:[ + {id:'4-3-0', text:'level 3-4-3-0'} +, {id:'4-3-1', text:'level 3-4-3-1'} +, {id:'4-3-2', text:'level 3-4-3-2'} +, {id:'4-3-3', text:'level 3-4-3-3'} +, {id:'4-3-4', text:'level 3-4-3-4'} +, {id:'4-3-5', text:'level 3-4-3-5'} +, {id:'4-3-6', text:'level 3-4-3-6'} +, {id:'4-3-7', text:'level 3-4-3-7'} +, {id:'4-3-8', text:'level 3-4-3-8'} +, {id:'4-3-9', text:'level 3-4-3-9'} +]} +, {id:'4-4-10', text:'level 2-4-4', item:[ + {id:'4-4-0', text:'level 3-4-4-0'} +, {id:'4-4-1', text:'level 3-4-4-1'} +, {id:'4-4-2', text:'level 3-4-4-2'} +, {id:'4-4-3', text:'level 3-4-4-3'} +, {id:'4-4-4', text:'level 3-4-4-4'} +, {id:'4-4-5', text:'level 3-4-4-5'} +, {id:'4-4-6', text:'level 3-4-4-6'} +, {id:'4-4-7', text:'level 3-4-4-7'} +, {id:'4-4-8', text:'level 3-4-4-8'} +, {id:'4-4-9', text:'level 3-4-4-9'} +]} +, {id:'4-5-10', text:'level 2-4-5', item:[ + {id:'4-5-0', text:'level 3-4-5-0'} +, {id:'4-5-1', text:'level 3-4-5-1'} +, {id:'4-5-2', text:'level 3-4-5-2'} +, {id:'4-5-3', text:'level 3-4-5-3'} +, {id:'4-5-4', text:'level 3-4-5-4'} +, {id:'4-5-5', text:'level 3-4-5-5'} +, {id:'4-5-6', text:'level 3-4-5-6'} +, {id:'4-5-7', text:'level 3-4-5-7'} +, {id:'4-5-8', text:'level 3-4-5-8'} +, {id:'4-5-9', text:'level 3-4-5-9'} +]} +, {id:'4-6-10', text:'level 2-4-6', item:[ + {id:'4-6-0', text:'level 3-4-6-0'} +, {id:'4-6-1', text:'level 3-4-6-1'} +, {id:'4-6-2', text:'level 3-4-6-2'} +, {id:'4-6-3', text:'level 3-4-6-3'} +, {id:'4-6-4', text:'level 3-4-6-4'} +, {id:'4-6-5', text:'level 3-4-6-5'} +, {id:'4-6-6', text:'level 3-4-6-6'} +, {id:'4-6-7', text:'level 3-4-6-7'} +, {id:'4-6-8', text:'level 3-4-6-8'} +, {id:'4-6-9', text:'level 3-4-6-9'} +]} +, {id:'4-7-10', text:'level 2-4-7', item:[ + {id:'4-7-0', text:'level 3-4-7-0'} +, {id:'4-7-1', text:'level 3-4-7-1'} +, {id:'4-7-2', text:'level 3-4-7-2'} +, {id:'4-7-3', text:'level 3-4-7-3'} +, {id:'4-7-4', text:'level 3-4-7-4'} +, {id:'4-7-5', text:'level 3-4-7-5'} +, {id:'4-7-6', text:'level 3-4-7-6'} +, {id:'4-7-7', text:'level 3-4-7-7'} +, {id:'4-7-8', text:'level 3-4-7-8'} +, {id:'4-7-9', text:'level 3-4-7-9'} +]} +, {id:'4-8-10', text:'level 2-4-8', item:[ + {id:'4-8-0', text:'level 3-4-8-0'} +, {id:'4-8-1', text:'level 3-4-8-1'} +, {id:'4-8-2', text:'level 3-4-8-2'} +, {id:'4-8-3', text:'level 3-4-8-3'} +, {id:'4-8-4', text:'level 3-4-8-4'} +, {id:'4-8-5', text:'level 3-4-8-5'} +, {id:'4-8-6', text:'level 3-4-8-6'} +, {id:'4-8-7', text:'level 3-4-8-7'} +, {id:'4-8-8', text:'level 3-4-8-8'} +, {id:'4-8-9', text:'level 3-4-8-9'} +]} +, {id:'4-9-10', text:'level 2-4-9', item:[ + {id:'4-9-0', text:'level 3-4-9-0'} +, {id:'4-9-1', text:'level 3-4-9-1'} +, {id:'4-9-2', text:'level 3-4-9-2'} +, {id:'4-9-3', text:'level 3-4-9-3'} +, {id:'4-9-4', text:'level 3-4-9-4'} +, {id:'4-9-5', text:'level 3-4-9-5'} +, {id:'4-9-6', text:'level 3-4-9-6'} +, {id:'4-9-7', text:'level 3-4-9-7'} +, {id:'4-9-8', text:'level 3-4-9-8'} +, {id:'4-9-9', text:'level 3-4-9-9'} +]} +, {id:'4-10-10', text:'level 2-4-10', item:[ + {id:'4-10-0', text:'level 3-4-10-0'} +, {id:'4-10-1', text:'level 3-4-10-1'} +, {id:'4-10-2', text:'level 3-4-10-2'} +, {id:'4-10-3', text:'level 3-4-10-3'} +, {id:'4-10-4', text:'level 3-4-10-4'} +, {id:'4-10-5', text:'level 3-4-10-5'} +, {id:'4-10-6', text:'level 3-4-10-6'} +, {id:'4-10-7', text:'level 3-4-10-7'} +, {id:'4-10-8', text:'level 3-4-10-8'} +, {id:'4-10-9', text:'level 3-4-10-9'} +]} +, {id:'4-11-10', text:'level 2-4-11', item:[ + {id:'4-11-0', text:'level 3-4-11-0'} +, {id:'4-11-1', text:'level 3-4-11-1'} +, {id:'4-11-2', text:'level 3-4-11-2'} +, {id:'4-11-3', text:'level 3-4-11-3'} +, {id:'4-11-4', text:'level 3-4-11-4'} +, {id:'4-11-5', text:'level 3-4-11-5'} +, {id:'4-11-6', text:'level 3-4-11-6'} +, {id:'4-11-7', text:'level 3-4-11-7'} +, {id:'4-11-8', text:'level 3-4-11-8'} +, {id:'4-11-9', text:'level 3-4-11-9'} +]} +, {id:'4-12-10', text:'level 2-4-12', item:[ + {id:'4-12-0', text:'level 3-4-12-0'} +, {id:'4-12-1', text:'level 3-4-12-1'} +, {id:'4-12-2', text:'level 3-4-12-2'} +, {id:'4-12-3', text:'level 3-4-12-3'} +, {id:'4-12-4', text:'level 3-4-12-4'} +, {id:'4-12-5', text:'level 3-4-12-5'} +, {id:'4-12-6', text:'level 3-4-12-6'} +, {id:'4-12-7', text:'level 3-4-12-7'} +, {id:'4-12-8', text:'level 3-4-12-8'} +, {id:'4-12-9', text:'level 3-4-12-9'} +]} +, {id:'4-13-10', text:'level 2-4-13', item:[ + {id:'4-13-0', text:'level 3-4-13-0'} +, {id:'4-13-1', text:'level 3-4-13-1'} +, {id:'4-13-2', text:'level 3-4-13-2'} +, {id:'4-13-3', text:'level 3-4-13-3'} +, {id:'4-13-4', text:'level 3-4-13-4'} +, {id:'4-13-5', text:'level 3-4-13-5'} +, {id:'4-13-6', text:'level 3-4-13-6'} +, {id:'4-13-7', text:'level 3-4-13-7'} +, {id:'4-13-8', text:'level 3-4-13-8'} +, {id:'4-13-9', text:'level 3-4-13-9'} +]} +, {id:'4-14-10', text:'level 2-4-14', item:[ + {id:'4-14-0', text:'level 3-4-14-0'} +, {id:'4-14-1', text:'level 3-4-14-1'} +, {id:'4-14-2', text:'level 3-4-14-2'} +, {id:'4-14-3', text:'level 3-4-14-3'} +, {id:'4-14-4', text:'level 3-4-14-4'} +, {id:'4-14-5', text:'level 3-4-14-5'} +, {id:'4-14-6', text:'level 3-4-14-6'} +, {id:'4-14-7', text:'level 3-4-14-7'} +, {id:'4-14-8', text:'level 3-4-14-8'} +, {id:'4-14-9', text:'level 3-4-14-9'} +]} +, {id:'4-15-10', text:'level 2-4-15', item:[ + {id:'4-15-0', text:'level 3-4-15-0'} +, {id:'4-15-1', text:'level 3-4-15-1'} +, {id:'4-15-2', text:'level 3-4-15-2'} +, {id:'4-15-3', text:'level 3-4-15-3'} +, {id:'4-15-4', text:'level 3-4-15-4'} +, {id:'4-15-5', text:'level 3-4-15-5'} +, {id:'4-15-6', text:'level 3-4-15-6'} +, {id:'4-15-7', text:'level 3-4-15-7'} +, {id:'4-15-8', text:'level 3-4-15-8'} +, {id:'4-15-9', text:'level 3-4-15-9'} +]} +, {id:'4-16-10', text:'level 2-4-16', item:[ + {id:'4-16-0', text:'level 3-4-16-0'} +, {id:'4-16-1', text:'level 3-4-16-1'} +, {id:'4-16-2', text:'level 3-4-16-2'} +, {id:'4-16-3', text:'level 3-4-16-3'} +, {id:'4-16-4', text:'level 3-4-16-4'} +, {id:'4-16-5', text:'level 3-4-16-5'} +, {id:'4-16-6', text:'level 3-4-16-6'} +, {id:'4-16-7', text:'level 3-4-16-7'} +, {id:'4-16-8', text:'level 3-4-16-8'} +, {id:'4-16-9', text:'level 3-4-16-9'} +]} +, {id:'4-17-10', text:'level 2-4-17', item:[ + {id:'4-17-0', text:'level 3-4-17-0'} +, {id:'4-17-1', text:'level 3-4-17-1'} +, {id:'4-17-2', text:'level 3-4-17-2'} +, {id:'4-17-3', text:'level 3-4-17-3'} +, {id:'4-17-4', text:'level 3-4-17-4'} +, {id:'4-17-5', text:'level 3-4-17-5'} +, {id:'4-17-6', text:'level 3-4-17-6'} +, {id:'4-17-7', text:'level 3-4-17-7'} +, {id:'4-17-8', text:'level 3-4-17-8'} +, {id:'4-17-9', text:'level 3-4-17-9'} +]} +, {id:'4-18-10', text:'level 2-4-18', item:[ + {id:'4-18-0', text:'level 3-4-18-0'} +, {id:'4-18-1', text:'level 3-4-18-1'} +, {id:'4-18-2', text:'level 3-4-18-2'} +, {id:'4-18-3', text:'level 3-4-18-3'} +, {id:'4-18-4', text:'level 3-4-18-4'} +, {id:'4-18-5', text:'level 3-4-18-5'} +, {id:'4-18-6', text:'level 3-4-18-6'} +, {id:'4-18-7', text:'level 3-4-18-7'} +, {id:'4-18-8', text:'level 3-4-18-8'} +, {id:'4-18-9', text:'level 3-4-18-9'} +]} +, {id:'4-19-10', text:'level 2-4-19', item:[ + {id:'4-19-0', text:'level 3-4-19-0'} +, {id:'4-19-1', text:'level 3-4-19-1'} +, {id:'4-19-2', text:'level 3-4-19-2'} +, {id:'4-19-3', text:'level 3-4-19-3'} +, {id:'4-19-4', text:'level 3-4-19-4'} +, {id:'4-19-5', text:'level 3-4-19-5'} +, {id:'4-19-6', text:'level 3-4-19-6'} +, {id:'4-19-7', text:'level 3-4-19-7'} +, {id:'4-19-8', text:'level 3-4-19-8'} +, {id:'4-19-9', text:'level 3-4-19-9'} +]} +]} +,{id:'5-20-10', text:'level 1-5', item:[ + {id:'5-0-10', text:'level 2-5-0', item:[ + {id:'5-0-0', text:'level 3-5-0-0'} +, {id:'5-0-1', text:'level 3-5-0-1'} +, {id:'5-0-2', text:'level 3-5-0-2'} +, {id:'5-0-3', text:'level 3-5-0-3'} +, {id:'5-0-4', text:'level 3-5-0-4'} +, {id:'5-0-5', text:'level 3-5-0-5'} +, {id:'5-0-6', text:'level 3-5-0-6'} +, {id:'5-0-7', text:'level 3-5-0-7'} +, {id:'5-0-8', text:'level 3-5-0-8'} +, {id:'5-0-9', text:'level 3-5-0-9'} +]} +, {id:'5-1-10', text:'level 2-5-1', item:[ + {id:'5-1-0', text:'level 3-5-1-0'} +, {id:'5-1-1', text:'level 3-5-1-1'} +, {id:'5-1-2', text:'level 3-5-1-2'} +, {id:'5-1-3', text:'level 3-5-1-3'} +, {id:'5-1-4', text:'level 3-5-1-4'} +, {id:'5-1-5', text:'level 3-5-1-5'} +, {id:'5-1-6', text:'level 3-5-1-6'} +, {id:'5-1-7', text:'level 3-5-1-7'} +, {id:'5-1-8', text:'level 3-5-1-8'} +, {id:'5-1-9', text:'level 3-5-1-9'} +]} +, {id:'5-2-10', text:'level 2-5-2', item:[ + {id:'5-2-0', text:'level 3-5-2-0'} +, {id:'5-2-1', text:'level 3-5-2-1'} +, {id:'5-2-2', text:'level 3-5-2-2'} +, {id:'5-2-3', text:'level 3-5-2-3'} +, {id:'5-2-4', text:'level 3-5-2-4'} +, {id:'5-2-5', text:'level 3-5-2-5'} +, {id:'5-2-6', text:'level 3-5-2-6'} +, {id:'5-2-7', text:'level 3-5-2-7'} +, {id:'5-2-8', text:'level 3-5-2-8'} +, {id:'5-2-9', text:'level 3-5-2-9'} +]} +, {id:'5-3-10', text:'level 2-5-3', item:[ + {id:'5-3-0', text:'level 3-5-3-0'} +, {id:'5-3-1', text:'level 3-5-3-1'} +, {id:'5-3-2', text:'level 3-5-3-2'} +, {id:'5-3-3', text:'level 3-5-3-3'} +, {id:'5-3-4', text:'level 3-5-3-4'} +, {id:'5-3-5', text:'level 3-5-3-5'} +, {id:'5-3-6', text:'level 3-5-3-6'} +, {id:'5-3-7', text:'level 3-5-3-7'} +, {id:'5-3-8', text:'level 3-5-3-8'} +, {id:'5-3-9', text:'level 3-5-3-9'} +]} +, {id:'5-4-10', text:'level 2-5-4', item:[ + {id:'5-4-0', text:'level 3-5-4-0'} +, {id:'5-4-1', text:'level 3-5-4-1'} +, {id:'5-4-2', text:'level 3-5-4-2'} +, {id:'5-4-3', text:'level 3-5-4-3'} +, {id:'5-4-4', text:'level 3-5-4-4'} +, {id:'5-4-5', text:'level 3-5-4-5'} +, {id:'5-4-6', text:'level 3-5-4-6'} +, {id:'5-4-7', text:'level 3-5-4-7'} +, {id:'5-4-8', text:'level 3-5-4-8'} +, {id:'5-4-9', text:'level 3-5-4-9'} +]} +, {id:'5-5-10', text:'level 2-5-5', item:[ + {id:'5-5-0', text:'level 3-5-5-0'} +, {id:'5-5-1', text:'level 3-5-5-1'} +, {id:'5-5-2', text:'level 3-5-5-2'} +, {id:'5-5-3', text:'level 3-5-5-3'} +, {id:'5-5-4', text:'level 3-5-5-4'} +, {id:'5-5-5', text:'level 3-5-5-5'} +, {id:'5-5-6', text:'level 3-5-5-6'} +, {id:'5-5-7', text:'level 3-5-5-7'} +, {id:'5-5-8', text:'level 3-5-5-8'} +, {id:'5-5-9', text:'level 3-5-5-9'} +]} +, {id:'5-6-10', text:'level 2-5-6', item:[ + {id:'5-6-0', text:'level 3-5-6-0'} +, {id:'5-6-1', text:'level 3-5-6-1'} +, {id:'5-6-2', text:'level 3-5-6-2'} +, {id:'5-6-3', text:'level 3-5-6-3'} +, {id:'5-6-4', text:'level 3-5-6-4'} +, {id:'5-6-5', text:'level 3-5-6-5'} +, {id:'5-6-6', text:'level 3-5-6-6'} +, {id:'5-6-7', text:'level 3-5-6-7'} +, {id:'5-6-8', text:'level 3-5-6-8'} +, {id:'5-6-9', text:'level 3-5-6-9'} +]} +, {id:'5-7-10', text:'level 2-5-7', item:[ + {id:'5-7-0', text:'level 3-5-7-0'} +, {id:'5-7-1', text:'level 3-5-7-1'} +, {id:'5-7-2', text:'level 3-5-7-2'} +, {id:'5-7-3', text:'level 3-5-7-3'} +, {id:'5-7-4', text:'level 3-5-7-4'} +, {id:'5-7-5', text:'level 3-5-7-5'} +, {id:'5-7-6', text:'level 3-5-7-6'} +, {id:'5-7-7', text:'level 3-5-7-7'} +, {id:'5-7-8', text:'level 3-5-7-8'} +, {id:'5-7-9', text:'level 3-5-7-9'} +]} +, {id:'5-8-10', text:'level 2-5-8', item:[ + {id:'5-8-0', text:'level 3-5-8-0'} +, {id:'5-8-1', text:'level 3-5-8-1'} +, {id:'5-8-2', text:'level 3-5-8-2'} +, {id:'5-8-3', text:'level 3-5-8-3'} +, {id:'5-8-4', text:'level 3-5-8-4'} +, {id:'5-8-5', text:'level 3-5-8-5'} +, {id:'5-8-6', text:'level 3-5-8-6'} +, {id:'5-8-7', text:'level 3-5-8-7'} +, {id:'5-8-8', text:'level 3-5-8-8'} +, {id:'5-8-9', text:'level 3-5-8-9'} +]} +, {id:'5-9-10', text:'level 2-5-9', item:[ + {id:'5-9-0', text:'level 3-5-9-0'} +, {id:'5-9-1', text:'level 3-5-9-1'} +, {id:'5-9-2', text:'level 3-5-9-2'} +, {id:'5-9-3', text:'level 3-5-9-3'} +, {id:'5-9-4', text:'level 3-5-9-4'} +, {id:'5-9-5', text:'level 3-5-9-5'} +, {id:'5-9-6', text:'level 3-5-9-6'} +, {id:'5-9-7', text:'level 3-5-9-7'} +, {id:'5-9-8', text:'level 3-5-9-8'} +, {id:'5-9-9', text:'level 3-5-9-9'} +]} +, {id:'5-10-10', text:'level 2-5-10', item:[ + {id:'5-10-0', text:'level 3-5-10-0'} +, {id:'5-10-1', text:'level 3-5-10-1'} +, {id:'5-10-2', text:'level 3-5-10-2'} +, {id:'5-10-3', text:'level 3-5-10-3'} +, {id:'5-10-4', text:'level 3-5-10-4'} +, {id:'5-10-5', text:'level 3-5-10-5'} +, {id:'5-10-6', text:'level 3-5-10-6'} +, {id:'5-10-7', text:'level 3-5-10-7'} +, {id:'5-10-8', text:'level 3-5-10-8'} +, {id:'5-10-9', text:'level 3-5-10-9'} +]} +, {id:'5-11-10', text:'level 2-5-11', item:[ + {id:'5-11-0', text:'level 3-5-11-0'} +, {id:'5-11-1', text:'level 3-5-11-1'} +, {id:'5-11-2', text:'level 3-5-11-2'} +, {id:'5-11-3', text:'level 3-5-11-3'} +, {id:'5-11-4', text:'level 3-5-11-4'} +, {id:'5-11-5', text:'level 3-5-11-5'} +, {id:'5-11-6', text:'level 3-5-11-6'} +, {id:'5-11-7', text:'level 3-5-11-7'} +, {id:'5-11-8', text:'level 3-5-11-8'} +, {id:'5-11-9', text:'level 3-5-11-9'} +]} +, {id:'5-12-10', text:'level 2-5-12', item:[ + {id:'5-12-0', text:'level 3-5-12-0'} +, {id:'5-12-1', text:'level 3-5-12-1'} +, {id:'5-12-2', text:'level 3-5-12-2'} +, {id:'5-12-3', text:'level 3-5-12-3'} +, {id:'5-12-4', text:'level 3-5-12-4'} +, {id:'5-12-5', text:'level 3-5-12-5'} +, {id:'5-12-6', text:'level 3-5-12-6'} +, {id:'5-12-7', text:'level 3-5-12-7'} +, {id:'5-12-8', text:'level 3-5-12-8'} +, {id:'5-12-9', text:'level 3-5-12-9'} +]} +, {id:'5-13-10', text:'level 2-5-13', item:[ + {id:'5-13-0', text:'level 3-5-13-0'} +, {id:'5-13-1', text:'level 3-5-13-1'} +, {id:'5-13-2', text:'level 3-5-13-2'} +, {id:'5-13-3', text:'level 3-5-13-3'} +, {id:'5-13-4', text:'level 3-5-13-4'} +, {id:'5-13-5', text:'level 3-5-13-5'} +, {id:'5-13-6', text:'level 3-5-13-6'} +, {id:'5-13-7', text:'level 3-5-13-7'} +, {id:'5-13-8', text:'level 3-5-13-8'} +, {id:'5-13-9', text:'level 3-5-13-9'} +]} +, {id:'5-14-10', text:'level 2-5-14', item:[ + {id:'5-14-0', text:'level 3-5-14-0'} +, {id:'5-14-1', text:'level 3-5-14-1'} +, {id:'5-14-2', text:'level 3-5-14-2'} +, {id:'5-14-3', text:'level 3-5-14-3'} +, {id:'5-14-4', text:'level 3-5-14-4'} +, {id:'5-14-5', text:'level 3-5-14-5'} +, {id:'5-14-6', text:'level 3-5-14-6'} +, {id:'5-14-7', text:'level 3-5-14-7'} +, {id:'5-14-8', text:'level 3-5-14-8'} +, {id:'5-14-9', text:'level 3-5-14-9'} +]} +, {id:'5-15-10', text:'level 2-5-15', item:[ + {id:'5-15-0', text:'level 3-5-15-0'} +, {id:'5-15-1', text:'level 3-5-15-1'} +, {id:'5-15-2', text:'level 3-5-15-2'} +, {id:'5-15-3', text:'level 3-5-15-3'} +, {id:'5-15-4', text:'level 3-5-15-4'} +, {id:'5-15-5', text:'level 3-5-15-5'} +, {id:'5-15-6', text:'level 3-5-15-6'} +, {id:'5-15-7', text:'level 3-5-15-7'} +, {id:'5-15-8', text:'level 3-5-15-8'} +, {id:'5-15-9', text:'level 3-5-15-9'} +]} +, {id:'5-16-10', text:'level 2-5-16', item:[ + {id:'5-16-0', text:'level 3-5-16-0'} +, {id:'5-16-1', text:'level 3-5-16-1'} +, {id:'5-16-2', text:'level 3-5-16-2'} +, {id:'5-16-3', text:'level 3-5-16-3'} +, {id:'5-16-4', text:'level 3-5-16-4'} +, {id:'5-16-5', text:'level 3-5-16-5'} +, {id:'5-16-6', text:'level 3-5-16-6'} +, {id:'5-16-7', text:'level 3-5-16-7'} +, {id:'5-16-8', text:'level 3-5-16-8'} +, {id:'5-16-9', text:'level 3-5-16-9'} +]} +, {id:'5-17-10', text:'level 2-5-17', item:[ + {id:'5-17-0', text:'level 3-5-17-0'} +, {id:'5-17-1', text:'level 3-5-17-1'} +, {id:'5-17-2', text:'level 3-5-17-2'} +, {id:'5-17-3', text:'level 3-5-17-3'} +, {id:'5-17-4', text:'level 3-5-17-4'} +, {id:'5-17-5', text:'level 3-5-17-5'} +, {id:'5-17-6', text:'level 3-5-17-6'} +, {id:'5-17-7', text:'level 3-5-17-7'} +, {id:'5-17-8', text:'level 3-5-17-8'} +, {id:'5-17-9', text:'level 3-5-17-9'} +]} +, {id:'5-18-10', text:'level 2-5-18', item:[ + {id:'5-18-0', text:'level 3-5-18-0'} +, {id:'5-18-1', text:'level 3-5-18-1'} +, {id:'5-18-2', text:'level 3-5-18-2'} +, {id:'5-18-3', text:'level 3-5-18-3'} +, {id:'5-18-4', text:'level 3-5-18-4'} +, {id:'5-18-5', text:'level 3-5-18-5'} +, {id:'5-18-6', text:'level 3-5-18-6'} +, {id:'5-18-7', text:'level 3-5-18-7'} +, {id:'5-18-8', text:'level 3-5-18-8'} +, {id:'5-18-9', text:'level 3-5-18-9'} +]} +, {id:'5-19-10', text:'level 2-5-19', item:[ + {id:'5-19-0', text:'level 3-5-19-0'} +, {id:'5-19-1', text:'level 3-5-19-1'} +, {id:'5-19-2', text:'level 3-5-19-2'} +, {id:'5-19-3', text:'level 3-5-19-3'} +, {id:'5-19-4', text:'level 3-5-19-4'} +, {id:'5-19-5', text:'level 3-5-19-5'} +, {id:'5-19-6', text:'level 3-5-19-6'} +, {id:'5-19-7', text:'level 3-5-19-7'} +, {id:'5-19-8', text:'level 3-5-19-8'} +, {id:'5-19-9', text:'level 3-5-19-9'} +]} +]} +,{id:'6-20-10', text:'level 1-6', item:[ + {id:'6-0-10', text:'level 2-6-0', item:[ + {id:'6-0-0', text:'level 3-6-0-0'} +, {id:'6-0-1', text:'level 3-6-0-1'} +, {id:'6-0-2', text:'level 3-6-0-2'} +, {id:'6-0-3', text:'level 3-6-0-3'} +, {id:'6-0-4', text:'level 3-6-0-4'} +, {id:'6-0-5', text:'level 3-6-0-5'} +, {id:'6-0-6', text:'level 3-6-0-6'} +, {id:'6-0-7', text:'level 3-6-0-7'} +, {id:'6-0-8', text:'level 3-6-0-8'} +, {id:'6-0-9', text:'level 3-6-0-9'} +]} +, {id:'6-1-10', text:'level 2-6-1', item:[ + {id:'6-1-0', text:'level 3-6-1-0'} +, {id:'6-1-1', text:'level 3-6-1-1'} +, {id:'6-1-2', text:'level 3-6-1-2'} +, {id:'6-1-3', text:'level 3-6-1-3'} +, {id:'6-1-4', text:'level 3-6-1-4'} +, {id:'6-1-5', text:'level 3-6-1-5'} +, {id:'6-1-6', text:'level 3-6-1-6'} +, {id:'6-1-7', text:'level 3-6-1-7'} +, {id:'6-1-8', text:'level 3-6-1-8'} +, {id:'6-1-9', text:'level 3-6-1-9'} +]} +, {id:'6-2-10', text:'level 2-6-2', item:[ + {id:'6-2-0', text:'level 3-6-2-0'} +, {id:'6-2-1', text:'level 3-6-2-1'} +, {id:'6-2-2', text:'level 3-6-2-2'} +, {id:'6-2-3', text:'level 3-6-2-3'} +, {id:'6-2-4', text:'level 3-6-2-4'} +, {id:'6-2-5', text:'level 3-6-2-5'} +, {id:'6-2-6', text:'level 3-6-2-6'} +, {id:'6-2-7', text:'level 3-6-2-7'} +, {id:'6-2-8', text:'level 3-6-2-8'} +, {id:'6-2-9', text:'level 3-6-2-9'} +]} +, {id:'6-3-10', text:'level 2-6-3', item:[ + {id:'6-3-0', text:'level 3-6-3-0'} +, {id:'6-3-1', text:'level 3-6-3-1'} +, {id:'6-3-2', text:'level 3-6-3-2'} +, {id:'6-3-3', text:'level 3-6-3-3'} +, {id:'6-3-4', text:'level 3-6-3-4'} +, {id:'6-3-5', text:'level 3-6-3-5'} +, {id:'6-3-6', text:'level 3-6-3-6'} +, {id:'6-3-7', text:'level 3-6-3-7'} +, {id:'6-3-8', text:'level 3-6-3-8'} +, {id:'6-3-9', text:'level 3-6-3-9'} +]} +, {id:'6-4-10', text:'level 2-6-4', item:[ + {id:'6-4-0', text:'level 3-6-4-0'} +, {id:'6-4-1', text:'level 3-6-4-1'} +, {id:'6-4-2', text:'level 3-6-4-2'} +, {id:'6-4-3', text:'level 3-6-4-3'} +, {id:'6-4-4', text:'level 3-6-4-4'} +, {id:'6-4-5', text:'level 3-6-4-5'} +, {id:'6-4-6', text:'level 3-6-4-6'} +, {id:'6-4-7', text:'level 3-6-4-7'} +, {id:'6-4-8', text:'level 3-6-4-8'} +, {id:'6-4-9', text:'level 3-6-4-9'} +]} +, {id:'6-5-10', text:'level 2-6-5', item:[ + {id:'6-5-0', text:'level 3-6-5-0'} +, {id:'6-5-1', text:'level 3-6-5-1'} +, {id:'6-5-2', text:'level 3-6-5-2'} +, {id:'6-5-3', text:'level 3-6-5-3'} +, {id:'6-5-4', text:'level 3-6-5-4'} +, {id:'6-5-5', text:'level 3-6-5-5'} +, {id:'6-5-6', text:'level 3-6-5-6'} +, {id:'6-5-7', text:'level 3-6-5-7'} +, {id:'6-5-8', text:'level 3-6-5-8'} +, {id:'6-5-9', text:'level 3-6-5-9'} +]} +, {id:'6-6-10', text:'level 2-6-6', item:[ + {id:'6-6-0', text:'level 3-6-6-0'} +, {id:'6-6-1', text:'level 3-6-6-1'} +, {id:'6-6-2', text:'level 3-6-6-2'} +, {id:'6-6-3', text:'level 3-6-6-3'} +, {id:'6-6-4', text:'level 3-6-6-4'} +, {id:'6-6-5', text:'level 3-6-6-5'} +, {id:'6-6-6', text:'level 3-6-6-6'} +, {id:'6-6-7', text:'level 3-6-6-7'} +, {id:'6-6-8', text:'level 3-6-6-8'} +, {id:'6-6-9', text:'level 3-6-6-9'} +]} +, {id:'6-7-10', text:'level 2-6-7', item:[ + {id:'6-7-0', text:'level 3-6-7-0'} +, {id:'6-7-1', text:'level 3-6-7-1'} +, {id:'6-7-2', text:'level 3-6-7-2'} +, {id:'6-7-3', text:'level 3-6-7-3'} +, {id:'6-7-4', text:'level 3-6-7-4'} +, {id:'6-7-5', text:'level 3-6-7-5'} +, {id:'6-7-6', text:'level 3-6-7-6'} +, {id:'6-7-7', text:'level 3-6-7-7'} +, {id:'6-7-8', text:'level 3-6-7-8'} +, {id:'6-7-9', text:'level 3-6-7-9'} +]} +, {id:'6-8-10', text:'level 2-6-8', item:[ + {id:'6-8-0', text:'level 3-6-8-0'} +, {id:'6-8-1', text:'level 3-6-8-1'} +, {id:'6-8-2', text:'level 3-6-8-2'} +, {id:'6-8-3', text:'level 3-6-8-3'} +, {id:'6-8-4', text:'level 3-6-8-4'} +, {id:'6-8-5', text:'level 3-6-8-5'} +, {id:'6-8-6', text:'level 3-6-8-6'} +, {id:'6-8-7', text:'level 3-6-8-7'} +, {id:'6-8-8', text:'level 3-6-8-8'} +, {id:'6-8-9', text:'level 3-6-8-9'} +]} +, {id:'6-9-10', text:'level 2-6-9', item:[ + {id:'6-9-0', text:'level 3-6-9-0'} +, {id:'6-9-1', text:'level 3-6-9-1'} +, {id:'6-9-2', text:'level 3-6-9-2'} +, {id:'6-9-3', text:'level 3-6-9-3'} +, {id:'6-9-4', text:'level 3-6-9-4'} +, {id:'6-9-5', text:'level 3-6-9-5'} +, {id:'6-9-6', text:'level 3-6-9-6'} +, {id:'6-9-7', text:'level 3-6-9-7'} +, {id:'6-9-8', text:'level 3-6-9-8'} +, {id:'6-9-9', text:'level 3-6-9-9'} +]} +, {id:'6-10-10', text:'level 2-6-10', item:[ + {id:'6-10-0', text:'level 3-6-10-0'} +, {id:'6-10-1', text:'level 3-6-10-1'} +, {id:'6-10-2', text:'level 3-6-10-2'} +, {id:'6-10-3', text:'level 3-6-10-3'} +, {id:'6-10-4', text:'level 3-6-10-4'} +, {id:'6-10-5', text:'level 3-6-10-5'} +, {id:'6-10-6', text:'level 3-6-10-6'} +, {id:'6-10-7', text:'level 3-6-10-7'} +, {id:'6-10-8', text:'level 3-6-10-8'} +, {id:'6-10-9', text:'level 3-6-10-9'} +]} +, {id:'6-11-10', text:'level 2-6-11', item:[ + {id:'6-11-0', text:'level 3-6-11-0'} +, {id:'6-11-1', text:'level 3-6-11-1'} +, {id:'6-11-2', text:'level 3-6-11-2'} +, {id:'6-11-3', text:'level 3-6-11-3'} +, {id:'6-11-4', text:'level 3-6-11-4'} +, {id:'6-11-5', text:'level 3-6-11-5'} +, {id:'6-11-6', text:'level 3-6-11-6'} +, {id:'6-11-7', text:'level 3-6-11-7'} +, {id:'6-11-8', text:'level 3-6-11-8'} +, {id:'6-11-9', text:'level 3-6-11-9'} +]} +, {id:'6-12-10', text:'level 2-6-12', item:[ + {id:'6-12-0', text:'level 3-6-12-0'} +, {id:'6-12-1', text:'level 3-6-12-1'} +, {id:'6-12-2', text:'level 3-6-12-2'} +, {id:'6-12-3', text:'level 3-6-12-3'} +, {id:'6-12-4', text:'level 3-6-12-4'} +, {id:'6-12-5', text:'level 3-6-12-5'} +, {id:'6-12-6', text:'level 3-6-12-6'} +, {id:'6-12-7', text:'level 3-6-12-7'} +, {id:'6-12-8', text:'level 3-6-12-8'} +, {id:'6-12-9', text:'level 3-6-12-9'} +]} +, {id:'6-13-10', text:'level 2-6-13', item:[ + {id:'6-13-0', text:'level 3-6-13-0'} +, {id:'6-13-1', text:'level 3-6-13-1'} +, {id:'6-13-2', text:'level 3-6-13-2'} +, {id:'6-13-3', text:'level 3-6-13-3'} +, {id:'6-13-4', text:'level 3-6-13-4'} +, {id:'6-13-5', text:'level 3-6-13-5'} +, {id:'6-13-6', text:'level 3-6-13-6'} +, {id:'6-13-7', text:'level 3-6-13-7'} +, {id:'6-13-8', text:'level 3-6-13-8'} +, {id:'6-13-9', text:'level 3-6-13-9'} +]} +, {id:'6-14-10', text:'level 2-6-14', item:[ + {id:'6-14-0', text:'level 3-6-14-0'} +, {id:'6-14-1', text:'level 3-6-14-1'} +, {id:'6-14-2', text:'level 3-6-14-2'} +, {id:'6-14-3', text:'level 3-6-14-3'} +, {id:'6-14-4', text:'level 3-6-14-4'} +, {id:'6-14-5', text:'level 3-6-14-5'} +, {id:'6-14-6', text:'level 3-6-14-6'} +, {id:'6-14-7', text:'level 3-6-14-7'} +, {id:'6-14-8', text:'level 3-6-14-8'} +, {id:'6-14-9', text:'level 3-6-14-9'} +]} +, {id:'6-15-10', text:'level 2-6-15', item:[ + {id:'6-15-0', text:'level 3-6-15-0'} +, {id:'6-15-1', text:'level 3-6-15-1'} +, {id:'6-15-2', text:'level 3-6-15-2'} +, {id:'6-15-3', text:'level 3-6-15-3'} +, {id:'6-15-4', text:'level 3-6-15-4'} +, {id:'6-15-5', text:'level 3-6-15-5'} +, {id:'6-15-6', text:'level 3-6-15-6'} +, {id:'6-15-7', text:'level 3-6-15-7'} +, {id:'6-15-8', text:'level 3-6-15-8'} +, {id:'6-15-9', text:'level 3-6-15-9'} +]} +, {id:'6-16-10', text:'level 2-6-16', item:[ + {id:'6-16-0', text:'level 3-6-16-0'} +, {id:'6-16-1', text:'level 3-6-16-1'} +, {id:'6-16-2', text:'level 3-6-16-2'} +, {id:'6-16-3', text:'level 3-6-16-3'} +, {id:'6-16-4', text:'level 3-6-16-4'} +, {id:'6-16-5', text:'level 3-6-16-5'} +, {id:'6-16-6', text:'level 3-6-16-6'} +, {id:'6-16-7', text:'level 3-6-16-7'} +, {id:'6-16-8', text:'level 3-6-16-8'} +, {id:'6-16-9', text:'level 3-6-16-9'} +]} +, {id:'6-17-10', text:'level 2-6-17', item:[ + {id:'6-17-0', text:'level 3-6-17-0'} +, {id:'6-17-1', text:'level 3-6-17-1'} +, {id:'6-17-2', text:'level 3-6-17-2'} +, {id:'6-17-3', text:'level 3-6-17-3'} +, {id:'6-17-4', text:'level 3-6-17-4'} +, {id:'6-17-5', text:'level 3-6-17-5'} +, {id:'6-17-6', text:'level 3-6-17-6'} +, {id:'6-17-7', text:'level 3-6-17-7'} +, {id:'6-17-8', text:'level 3-6-17-8'} +, {id:'6-17-9', text:'level 3-6-17-9'} +]} +, {id:'6-18-10', text:'level 2-6-18', item:[ + {id:'6-18-0', text:'level 3-6-18-0'} +, {id:'6-18-1', text:'level 3-6-18-1'} +, {id:'6-18-2', text:'level 3-6-18-2'} +, {id:'6-18-3', text:'level 3-6-18-3'} +, {id:'6-18-4', text:'level 3-6-18-4'} +, {id:'6-18-5', text:'level 3-6-18-5'} +, {id:'6-18-6', text:'level 3-6-18-6'} +, {id:'6-18-7', text:'level 3-6-18-7'} +, {id:'6-18-8', text:'level 3-6-18-8'} +, {id:'6-18-9', text:'level 3-6-18-9'} +]} +, {id:'6-19-10', text:'level 2-6-19', item:[ + {id:'6-19-0', text:'level 3-6-19-0'} +, {id:'6-19-1', text:'level 3-6-19-1'} +, {id:'6-19-2', text:'level 3-6-19-2'} +, {id:'6-19-3', text:'level 3-6-19-3'} +, {id:'6-19-4', text:'level 3-6-19-4'} +, {id:'6-19-5', text:'level 3-6-19-5'} +, {id:'6-19-6', text:'level 3-6-19-6'} +, {id:'6-19-7', text:'level 3-6-19-7'} +, {id:'6-19-8', text:'level 3-6-19-8'} +, {id:'6-19-9', text:'level 3-6-19-9'} +]} +]} +,{id:'7-20-10', text:'level 1-7', item:[ + {id:'7-0-10', text:'level 2-7-0', item:[ + {id:'7-0-0', text:'level 3-7-0-0'} +, {id:'7-0-1', text:'level 3-7-0-1'} +, {id:'7-0-2', text:'level 3-7-0-2'} +, {id:'7-0-3', text:'level 3-7-0-3'} +, {id:'7-0-4', text:'level 3-7-0-4'} +, {id:'7-0-5', text:'level 3-7-0-5'} +, {id:'7-0-6', text:'level 3-7-0-6'} +, {id:'7-0-7', text:'level 3-7-0-7'} +, {id:'7-0-8', text:'level 3-7-0-8'} +, {id:'7-0-9', text:'level 3-7-0-9'} +]} +, {id:'7-1-10', text:'level 2-7-1', item:[ + {id:'7-1-0', text:'level 3-7-1-0'} +, {id:'7-1-1', text:'level 3-7-1-1'} +, {id:'7-1-2', text:'level 3-7-1-2'} +, {id:'7-1-3', text:'level 3-7-1-3'} +, {id:'7-1-4', text:'level 3-7-1-4'} +, {id:'7-1-5', text:'level 3-7-1-5'} +, {id:'7-1-6', text:'level 3-7-1-6'} +, {id:'7-1-7', text:'level 3-7-1-7'} +, {id:'7-1-8', text:'level 3-7-1-8'} +, {id:'7-1-9', text:'level 3-7-1-9'} +]} +, {id:'7-2-10', text:'level 2-7-2', item:[ + {id:'7-2-0', text:'level 3-7-2-0'} +, {id:'7-2-1', text:'level 3-7-2-1'} +, {id:'7-2-2', text:'level 3-7-2-2'} +, {id:'7-2-3', text:'level 3-7-2-3'} +, {id:'7-2-4', text:'level 3-7-2-4'} +, {id:'7-2-5', text:'level 3-7-2-5'} +, {id:'7-2-6', text:'level 3-7-2-6'} +, {id:'7-2-7', text:'level 3-7-2-7'} +, {id:'7-2-8', text:'level 3-7-2-8'} +, {id:'7-2-9', text:'level 3-7-2-9'} +]} +, {id:'7-3-10', text:'level 2-7-3', item:[ + {id:'7-3-0', text:'level 3-7-3-0'} +, {id:'7-3-1', text:'level 3-7-3-1'} +, {id:'7-3-2', text:'level 3-7-3-2'} +, {id:'7-3-3', text:'level 3-7-3-3'} +, {id:'7-3-4', text:'level 3-7-3-4'} +, {id:'7-3-5', text:'level 3-7-3-5'} +, {id:'7-3-6', text:'level 3-7-3-6'} +, {id:'7-3-7', text:'level 3-7-3-7'} +, {id:'7-3-8', text:'level 3-7-3-8'} +, {id:'7-3-9', text:'level 3-7-3-9'} +]} +, {id:'7-4-10', text:'level 2-7-4', item:[ + {id:'7-4-0', text:'level 3-7-4-0'} +, {id:'7-4-1', text:'level 3-7-4-1'} +, {id:'7-4-2', text:'level 3-7-4-2'} +, {id:'7-4-3', text:'level 3-7-4-3'} +, {id:'7-4-4', text:'level 3-7-4-4'} +, {id:'7-4-5', text:'level 3-7-4-5'} +, {id:'7-4-6', text:'level 3-7-4-6'} +, {id:'7-4-7', text:'level 3-7-4-7'} +, {id:'7-4-8', text:'level 3-7-4-8'} +, {id:'7-4-9', text:'level 3-7-4-9'} +]} +, {id:'7-5-10', text:'level 2-7-5', item:[ + {id:'7-5-0', text:'level 3-7-5-0'} +, {id:'7-5-1', text:'level 3-7-5-1'} +, {id:'7-5-2', text:'level 3-7-5-2'} +, {id:'7-5-3', text:'level 3-7-5-3'} +, {id:'7-5-4', text:'level 3-7-5-4'} +, {id:'7-5-5', text:'level 3-7-5-5'} +, {id:'7-5-6', text:'level 3-7-5-6'} +, {id:'7-5-7', text:'level 3-7-5-7'} +, {id:'7-5-8', text:'level 3-7-5-8'} +, {id:'7-5-9', text:'level 3-7-5-9'} +]} +, {id:'7-6-10', text:'level 2-7-6', item:[ + {id:'7-6-0', text:'level 3-7-6-0'} +, {id:'7-6-1', text:'level 3-7-6-1'} +, {id:'7-6-2', text:'level 3-7-6-2'} +, {id:'7-6-3', text:'level 3-7-6-3'} +, {id:'7-6-4', text:'level 3-7-6-4'} +, {id:'7-6-5', text:'level 3-7-6-5'} +, {id:'7-6-6', text:'level 3-7-6-6'} +, {id:'7-6-7', text:'level 3-7-6-7'} +, {id:'7-6-8', text:'level 3-7-6-8'} +, {id:'7-6-9', text:'level 3-7-6-9'} +]} +, {id:'7-7-10', text:'level 2-7-7', item:[ + {id:'7-7-0', text:'level 3-7-7-0'} +, {id:'7-7-1', text:'level 3-7-7-1'} +, {id:'7-7-2', text:'level 3-7-7-2'} +, {id:'7-7-3', text:'level 3-7-7-3'} +, {id:'7-7-4', text:'level 3-7-7-4'} +, {id:'7-7-5', text:'level 3-7-7-5'} +, {id:'7-7-6', text:'level 3-7-7-6'} +, {id:'7-7-7', text:'level 3-7-7-7'} +, {id:'7-7-8', text:'level 3-7-7-8'} +, {id:'7-7-9', text:'level 3-7-7-9'} +]} +, {id:'7-8-10', text:'level 2-7-8', item:[ + {id:'7-8-0', text:'level 3-7-8-0'} +, {id:'7-8-1', text:'level 3-7-8-1'} +, {id:'7-8-2', text:'level 3-7-8-2'} +, {id:'7-8-3', text:'level 3-7-8-3'} +, {id:'7-8-4', text:'level 3-7-8-4'} +, {id:'7-8-5', text:'level 3-7-8-5'} +, {id:'7-8-6', text:'level 3-7-8-6'} +, {id:'7-8-7', text:'level 3-7-8-7'} +, {id:'7-8-8', text:'level 3-7-8-8'} +, {id:'7-8-9', text:'level 3-7-8-9'} +]} +, {id:'7-9-10', text:'level 2-7-9', item:[ + {id:'7-9-0', text:'level 3-7-9-0'} +, {id:'7-9-1', text:'level 3-7-9-1'} +, {id:'7-9-2', text:'level 3-7-9-2'} +, {id:'7-9-3', text:'level 3-7-9-3'} +, {id:'7-9-4', text:'level 3-7-9-4'} +, {id:'7-9-5', text:'level 3-7-9-5'} +, {id:'7-9-6', text:'level 3-7-9-6'} +, {id:'7-9-7', text:'level 3-7-9-7'} +, {id:'7-9-8', text:'level 3-7-9-8'} +, {id:'7-9-9', text:'level 3-7-9-9'} +]} +, {id:'7-10-10', text:'level 2-7-10', item:[ + {id:'7-10-0', text:'level 3-7-10-0'} +, {id:'7-10-1', text:'level 3-7-10-1'} +, {id:'7-10-2', text:'level 3-7-10-2'} +, {id:'7-10-3', text:'level 3-7-10-3'} +, {id:'7-10-4', text:'level 3-7-10-4'} +, {id:'7-10-5', text:'level 3-7-10-5'} +, {id:'7-10-6', text:'level 3-7-10-6'} +, {id:'7-10-7', text:'level 3-7-10-7'} +, {id:'7-10-8', text:'level 3-7-10-8'} +, {id:'7-10-9', text:'level 3-7-10-9'} +]} +, {id:'7-11-10', text:'level 2-7-11', item:[ + {id:'7-11-0', text:'level 3-7-11-0'} +, {id:'7-11-1', text:'level 3-7-11-1'} +, {id:'7-11-2', text:'level 3-7-11-2'} +, {id:'7-11-3', text:'level 3-7-11-3'} +, {id:'7-11-4', text:'level 3-7-11-4'} +, {id:'7-11-5', text:'level 3-7-11-5'} +, {id:'7-11-6', text:'level 3-7-11-6'} +, {id:'7-11-7', text:'level 3-7-11-7'} +, {id:'7-11-8', text:'level 3-7-11-8'} +, {id:'7-11-9', text:'level 3-7-11-9'} +]} +, {id:'7-12-10', text:'level 2-7-12', item:[ + {id:'7-12-0', text:'level 3-7-12-0'} +, {id:'7-12-1', text:'level 3-7-12-1'} +, {id:'7-12-2', text:'level 3-7-12-2'} +, {id:'7-12-3', text:'level 3-7-12-3'} +, {id:'7-12-4', text:'level 3-7-12-4'} +, {id:'7-12-5', text:'level 3-7-12-5'} +, {id:'7-12-6', text:'level 3-7-12-6'} +, {id:'7-12-7', text:'level 3-7-12-7'} +, {id:'7-12-8', text:'level 3-7-12-8'} +, {id:'7-12-9', text:'level 3-7-12-9'} +]} +, {id:'7-13-10', text:'level 2-7-13', item:[ + {id:'7-13-0', text:'level 3-7-13-0'} +, {id:'7-13-1', text:'level 3-7-13-1'} +, {id:'7-13-2', text:'level 3-7-13-2'} +, {id:'7-13-3', text:'level 3-7-13-3'} +, {id:'7-13-4', text:'level 3-7-13-4'} +, {id:'7-13-5', text:'level 3-7-13-5'} +, {id:'7-13-6', text:'level 3-7-13-6'} +, {id:'7-13-7', text:'level 3-7-13-7'} +, {id:'7-13-8', text:'level 3-7-13-8'} +, {id:'7-13-9', text:'level 3-7-13-9'} +]} +, {id:'7-14-10', text:'level 2-7-14', item:[ + {id:'7-14-0', text:'level 3-7-14-0'} +, {id:'7-14-1', text:'level 3-7-14-1'} +, {id:'7-14-2', text:'level 3-7-14-2'} +, {id:'7-14-3', text:'level 3-7-14-3'} +, {id:'7-14-4', text:'level 3-7-14-4'} +, {id:'7-14-5', text:'level 3-7-14-5'} +, {id:'7-14-6', text:'level 3-7-14-6'} +, {id:'7-14-7', text:'level 3-7-14-7'} +, {id:'7-14-8', text:'level 3-7-14-8'} +, {id:'7-14-9', text:'level 3-7-14-9'} +]} +, {id:'7-15-10', text:'level 2-7-15', item:[ + {id:'7-15-0', text:'level 3-7-15-0'} +, {id:'7-15-1', text:'level 3-7-15-1'} +, {id:'7-15-2', text:'level 3-7-15-2'} +, {id:'7-15-3', text:'level 3-7-15-3'} +, {id:'7-15-4', text:'level 3-7-15-4'} +, {id:'7-15-5', text:'level 3-7-15-5'} +, {id:'7-15-6', text:'level 3-7-15-6'} +, {id:'7-15-7', text:'level 3-7-15-7'} +, {id:'7-15-8', text:'level 3-7-15-8'} +, {id:'7-15-9', text:'level 3-7-15-9'} +]} +, {id:'7-16-10', text:'level 2-7-16', item:[ + {id:'7-16-0', text:'level 3-7-16-0'} +, {id:'7-16-1', text:'level 3-7-16-1'} +, {id:'7-16-2', text:'level 3-7-16-2'} +, {id:'7-16-3', text:'level 3-7-16-3'} +, {id:'7-16-4', text:'level 3-7-16-4'} +, {id:'7-16-5', text:'level 3-7-16-5'} +, {id:'7-16-6', text:'level 3-7-16-6'} +, {id:'7-16-7', text:'level 3-7-16-7'} +, {id:'7-16-8', text:'level 3-7-16-8'} +, {id:'7-16-9', text:'level 3-7-16-9'} +]} +, {id:'7-17-10', text:'level 2-7-17', item:[ + {id:'7-17-0', text:'level 3-7-17-0'} +, {id:'7-17-1', text:'level 3-7-17-1'} +, {id:'7-17-2', text:'level 3-7-17-2'} +, {id:'7-17-3', text:'level 3-7-17-3'} +, {id:'7-17-4', text:'level 3-7-17-4'} +, {id:'7-17-5', text:'level 3-7-17-5'} +, {id:'7-17-6', text:'level 3-7-17-6'} +, {id:'7-17-7', text:'level 3-7-17-7'} +, {id:'7-17-8', text:'level 3-7-17-8'} +, {id:'7-17-9', text:'level 3-7-17-9'} +]} +, {id:'7-18-10', text:'level 2-7-18', item:[ + {id:'7-18-0', text:'level 3-7-18-0'} +, {id:'7-18-1', text:'level 3-7-18-1'} +, {id:'7-18-2', text:'level 3-7-18-2'} +, {id:'7-18-3', text:'level 3-7-18-3'} +, {id:'7-18-4', text:'level 3-7-18-4'} +, {id:'7-18-5', text:'level 3-7-18-5'} +, {id:'7-18-6', text:'level 3-7-18-6'} +, {id:'7-18-7', text:'level 3-7-18-7'} +, {id:'7-18-8', text:'level 3-7-18-8'} +, {id:'7-18-9', text:'level 3-7-18-9'} +]} +, {id:'7-19-10', text:'level 2-7-19', item:[ + {id:'7-19-0', text:'level 3-7-19-0'} +, {id:'7-19-1', text:'level 3-7-19-1'} +, {id:'7-19-2', text:'level 3-7-19-2'} +, {id:'7-19-3', text:'level 3-7-19-3'} +, {id:'7-19-4', text:'level 3-7-19-4'} +, {id:'7-19-5', text:'level 3-7-19-5'} +, {id:'7-19-6', text:'level 3-7-19-6'} +, {id:'7-19-7', text:'level 3-7-19-7'} +, {id:'7-19-8', text:'level 3-7-19-8'} +, {id:'7-19-9', text:'level 3-7-19-9'} +]} +]} +,{id:'8-20-10', text:'level 1-8', item:[ + {id:'8-0-10', text:'level 2-8-0', item:[ + {id:'8-0-0', text:'level 3-8-0-0'} +, {id:'8-0-1', text:'level 3-8-0-1'} +, {id:'8-0-2', text:'level 3-8-0-2'} +, {id:'8-0-3', text:'level 3-8-0-3'} +, {id:'8-0-4', text:'level 3-8-0-4'} +, {id:'8-0-5', text:'level 3-8-0-5'} +, {id:'8-0-6', text:'level 3-8-0-6'} +, {id:'8-0-7', text:'level 3-8-0-7'} +, {id:'8-0-8', text:'level 3-8-0-8'} +, {id:'8-0-9', text:'level 3-8-0-9'} +]} +, {id:'8-1-10', text:'level 2-8-1', item:[ + {id:'8-1-0', text:'level 3-8-1-0'} +, {id:'8-1-1', text:'level 3-8-1-1'} +, {id:'8-1-2', text:'level 3-8-1-2'} +, {id:'8-1-3', text:'level 3-8-1-3'} +, {id:'8-1-4', text:'level 3-8-1-4'} +, {id:'8-1-5', text:'level 3-8-1-5'} +, {id:'8-1-6', text:'level 3-8-1-6'} +, {id:'8-1-7', text:'level 3-8-1-7'} +, {id:'8-1-8', text:'level 3-8-1-8'} +, {id:'8-1-9', text:'level 3-8-1-9'} +]} +, {id:'8-2-10', text:'level 2-8-2', item:[ + {id:'8-2-0', text:'level 3-8-2-0'} +, {id:'8-2-1', text:'level 3-8-2-1'} +, {id:'8-2-2', text:'level 3-8-2-2'} +, {id:'8-2-3', text:'level 3-8-2-3'} +, {id:'8-2-4', text:'level 3-8-2-4'} +, {id:'8-2-5', text:'level 3-8-2-5'} +, {id:'8-2-6', text:'level 3-8-2-6'} +, {id:'8-2-7', text:'level 3-8-2-7'} +, {id:'8-2-8', text:'level 3-8-2-8'} +, {id:'8-2-9', text:'level 3-8-2-9'} +]} +, {id:'8-3-10', text:'level 2-8-3', item:[ + {id:'8-3-0', text:'level 3-8-3-0'} +, {id:'8-3-1', text:'level 3-8-3-1'} +, {id:'8-3-2', text:'level 3-8-3-2'} +, {id:'8-3-3', text:'level 3-8-3-3'} +, {id:'8-3-4', text:'level 3-8-3-4'} +, {id:'8-3-5', text:'level 3-8-3-5'} +, {id:'8-3-6', text:'level 3-8-3-6'} +, {id:'8-3-7', text:'level 3-8-3-7'} +, {id:'8-3-8', text:'level 3-8-3-8'} +, {id:'8-3-9', text:'level 3-8-3-9'} +]} +, {id:'8-4-10', text:'level 2-8-4', item:[ + {id:'8-4-0', text:'level 3-8-4-0'} +, {id:'8-4-1', text:'level 3-8-4-1'} +, {id:'8-4-2', text:'level 3-8-4-2'} +, {id:'8-4-3', text:'level 3-8-4-3'} +, {id:'8-4-4', text:'level 3-8-4-4'} +, {id:'8-4-5', text:'level 3-8-4-5'} +, {id:'8-4-6', text:'level 3-8-4-6'} +, {id:'8-4-7', text:'level 3-8-4-7'} +, {id:'8-4-8', text:'level 3-8-4-8'} +, {id:'8-4-9', text:'level 3-8-4-9'} +]} +, {id:'8-5-10', text:'level 2-8-5', item:[ + {id:'8-5-0', text:'level 3-8-5-0'} +, {id:'8-5-1', text:'level 3-8-5-1'} +, {id:'8-5-2', text:'level 3-8-5-2'} +, {id:'8-5-3', text:'level 3-8-5-3'} +, {id:'8-5-4', text:'level 3-8-5-4'} +, {id:'8-5-5', text:'level 3-8-5-5'} +, {id:'8-5-6', text:'level 3-8-5-6'} +, {id:'8-5-7', text:'level 3-8-5-7'} +, {id:'8-5-8', text:'level 3-8-5-8'} +, {id:'8-5-9', text:'level 3-8-5-9'} +]} +, {id:'8-6-10', text:'level 2-8-6', item:[ + {id:'8-6-0', text:'level 3-8-6-0'} +, {id:'8-6-1', text:'level 3-8-6-1'} +, {id:'8-6-2', text:'level 3-8-6-2'} +, {id:'8-6-3', text:'level 3-8-6-3'} +, {id:'8-6-4', text:'level 3-8-6-4'} +, {id:'8-6-5', text:'level 3-8-6-5'} +, {id:'8-6-6', text:'level 3-8-6-6'} +, {id:'8-6-7', text:'level 3-8-6-7'} +, {id:'8-6-8', text:'level 3-8-6-8'} +, {id:'8-6-9', text:'level 3-8-6-9'} +]} +, {id:'8-7-10', text:'level 2-8-7', item:[ + {id:'8-7-0', text:'level 3-8-7-0'} +, {id:'8-7-1', text:'level 3-8-7-1'} +, {id:'8-7-2', text:'level 3-8-7-2'} +, {id:'8-7-3', text:'level 3-8-7-3'} +, {id:'8-7-4', text:'level 3-8-7-4'} +, {id:'8-7-5', text:'level 3-8-7-5'} +, {id:'8-7-6', text:'level 3-8-7-6'} +, {id:'8-7-7', text:'level 3-8-7-7'} +, {id:'8-7-8', text:'level 3-8-7-8'} +, {id:'8-7-9', text:'level 3-8-7-9'} +]} +, {id:'8-8-10', text:'level 2-8-8', item:[ + {id:'8-8-0', text:'level 3-8-8-0'} +, {id:'8-8-1', text:'level 3-8-8-1'} +, {id:'8-8-2', text:'level 3-8-8-2'} +, {id:'8-8-3', text:'level 3-8-8-3'} +, {id:'8-8-4', text:'level 3-8-8-4'} +, {id:'8-8-5', text:'level 3-8-8-5'} +, {id:'8-8-6', text:'level 3-8-8-6'} +, {id:'8-8-7', text:'level 3-8-8-7'} +, {id:'8-8-8', text:'level 3-8-8-8'} +, {id:'8-8-9', text:'level 3-8-8-9'} +]} +, {id:'8-9-10', text:'level 2-8-9', item:[ + {id:'8-9-0', text:'level 3-8-9-0'} +, {id:'8-9-1', text:'level 3-8-9-1'} +, {id:'8-9-2', text:'level 3-8-9-2'} +, {id:'8-9-3', text:'level 3-8-9-3'} +, {id:'8-9-4', text:'level 3-8-9-4'} +, {id:'8-9-5', text:'level 3-8-9-5'} +, {id:'8-9-6', text:'level 3-8-9-6'} +, {id:'8-9-7', text:'level 3-8-9-7'} +, {id:'8-9-8', text:'level 3-8-9-8'} +, {id:'8-9-9', text:'level 3-8-9-9'} +]} +, {id:'8-10-10', text:'level 2-8-10', item:[ + {id:'8-10-0', text:'level 3-8-10-0'} +, {id:'8-10-1', text:'level 3-8-10-1'} +, {id:'8-10-2', text:'level 3-8-10-2'} +, {id:'8-10-3', text:'level 3-8-10-3'} +, {id:'8-10-4', text:'level 3-8-10-4'} +, {id:'8-10-5', text:'level 3-8-10-5'} +, {id:'8-10-6', text:'level 3-8-10-6'} +, {id:'8-10-7', text:'level 3-8-10-7'} +, {id:'8-10-8', text:'level 3-8-10-8'} +, {id:'8-10-9', text:'level 3-8-10-9'} +]} +, {id:'8-11-10', text:'level 2-8-11', item:[ + {id:'8-11-0', text:'level 3-8-11-0'} +, {id:'8-11-1', text:'level 3-8-11-1'} +, {id:'8-11-2', text:'level 3-8-11-2'} +, {id:'8-11-3', text:'level 3-8-11-3'} +, {id:'8-11-4', text:'level 3-8-11-4'} +, {id:'8-11-5', text:'level 3-8-11-5'} +, {id:'8-11-6', text:'level 3-8-11-6'} +, {id:'8-11-7', text:'level 3-8-11-7'} +, {id:'8-11-8', text:'level 3-8-11-8'} +, {id:'8-11-9', text:'level 3-8-11-9'} +]} +, {id:'8-12-10', text:'level 2-8-12', item:[ + {id:'8-12-0', text:'level 3-8-12-0'} +, {id:'8-12-1', text:'level 3-8-12-1'} +, {id:'8-12-2', text:'level 3-8-12-2'} +, {id:'8-12-3', text:'level 3-8-12-3'} +, {id:'8-12-4', text:'level 3-8-12-4'} +, {id:'8-12-5', text:'level 3-8-12-5'} +, {id:'8-12-6', text:'level 3-8-12-6'} +, {id:'8-12-7', text:'level 3-8-12-7'} +, {id:'8-12-8', text:'level 3-8-12-8'} +, {id:'8-12-9', text:'level 3-8-12-9'} +]} +, {id:'8-13-10', text:'level 2-8-13', item:[ + {id:'8-13-0', text:'level 3-8-13-0'} +, {id:'8-13-1', text:'level 3-8-13-1'} +, {id:'8-13-2', text:'level 3-8-13-2'} +, {id:'8-13-3', text:'level 3-8-13-3'} +, {id:'8-13-4', text:'level 3-8-13-4'} +, {id:'8-13-5', text:'level 3-8-13-5'} +, {id:'8-13-6', text:'level 3-8-13-6'} +, {id:'8-13-7', text:'level 3-8-13-7'} +, {id:'8-13-8', text:'level 3-8-13-8'} +, {id:'8-13-9', text:'level 3-8-13-9'} +]} +, {id:'8-14-10', text:'level 2-8-14', item:[ + {id:'8-14-0', text:'level 3-8-14-0'} +, {id:'8-14-1', text:'level 3-8-14-1'} +, {id:'8-14-2', text:'level 3-8-14-2'} +, {id:'8-14-3', text:'level 3-8-14-3'} +, {id:'8-14-4', text:'level 3-8-14-4'} +, {id:'8-14-5', text:'level 3-8-14-5'} +, {id:'8-14-6', text:'level 3-8-14-6'} +, {id:'8-14-7', text:'level 3-8-14-7'} +, {id:'8-14-8', text:'level 3-8-14-8'} +, {id:'8-14-9', text:'level 3-8-14-9'} +]} +, {id:'8-15-10', text:'level 2-8-15', item:[ + {id:'8-15-0', text:'level 3-8-15-0'} +, {id:'8-15-1', text:'level 3-8-15-1'} +, {id:'8-15-2', text:'level 3-8-15-2'} +, {id:'8-15-3', text:'level 3-8-15-3'} +, {id:'8-15-4', text:'level 3-8-15-4'} +, {id:'8-15-5', text:'level 3-8-15-5'} +, {id:'8-15-6', text:'level 3-8-15-6'} +, {id:'8-15-7', text:'level 3-8-15-7'} +, {id:'8-15-8', text:'level 3-8-15-8'} +, {id:'8-15-9', text:'level 3-8-15-9'} +]} +, {id:'8-16-10', text:'level 2-8-16', item:[ + {id:'8-16-0', text:'level 3-8-16-0'} +, {id:'8-16-1', text:'level 3-8-16-1'} +, {id:'8-16-2', text:'level 3-8-16-2'} +, {id:'8-16-3', text:'level 3-8-16-3'} +, {id:'8-16-4', text:'level 3-8-16-4'} +, {id:'8-16-5', text:'level 3-8-16-5'} +, {id:'8-16-6', text:'level 3-8-16-6'} +, {id:'8-16-7', text:'level 3-8-16-7'} +, {id:'8-16-8', text:'level 3-8-16-8'} +, {id:'8-16-9', text:'level 3-8-16-9'} +]} +, {id:'8-17-10', text:'level 2-8-17', item:[ + {id:'8-17-0', text:'level 3-8-17-0'} +, {id:'8-17-1', text:'level 3-8-17-1'} +, {id:'8-17-2', text:'level 3-8-17-2'} +, {id:'8-17-3', text:'level 3-8-17-3'} +, {id:'8-17-4', text:'level 3-8-17-4'} +, {id:'8-17-5', text:'level 3-8-17-5'} +, {id:'8-17-6', text:'level 3-8-17-6'} +, {id:'8-17-7', text:'level 3-8-17-7'} +, {id:'8-17-8', text:'level 3-8-17-8'} +, {id:'8-17-9', text:'level 3-8-17-9'} +]} +, {id:'8-18-10', text:'level 2-8-18', item:[ + {id:'8-18-0', text:'level 3-8-18-0'} +, {id:'8-18-1', text:'level 3-8-18-1'} +, {id:'8-18-2', text:'level 3-8-18-2'} +, {id:'8-18-3', text:'level 3-8-18-3'} +, {id:'8-18-4', text:'level 3-8-18-4'} +, {id:'8-18-5', text:'level 3-8-18-5'} +, {id:'8-18-6', text:'level 3-8-18-6'} +, {id:'8-18-7', text:'level 3-8-18-7'} +, {id:'8-18-8', text:'level 3-8-18-8'} +, {id:'8-18-9', text:'level 3-8-18-9'} +]} +, {id:'8-19-10', text:'level 2-8-19', item:[ + {id:'8-19-0', text:'level 3-8-19-0'} +, {id:'8-19-1', text:'level 3-8-19-1'} +, {id:'8-19-2', text:'level 3-8-19-2'} +, {id:'8-19-3', text:'level 3-8-19-3'} +, {id:'8-19-4', text:'level 3-8-19-4'} +, {id:'8-19-5', text:'level 3-8-19-5'} +, {id:'8-19-6', text:'level 3-8-19-6'} +, {id:'8-19-7', text:'level 3-8-19-7'} +, {id:'8-19-8', text:'level 3-8-19-8'} +, {id:'8-19-9', text:'level 3-8-19-9'} +]} +]} +,{id:'9-20-10', text:'level 1-9', item:[ + {id:'9-0-10', text:'level 2-9-0', item:[ + {id:'9-0-0', text:'level 3-9-0-0'} +, {id:'9-0-1', text:'level 3-9-0-1'} +, {id:'9-0-2', text:'level 3-9-0-2'} +, {id:'9-0-3', text:'level 3-9-0-3'} +, {id:'9-0-4', text:'level 3-9-0-4'} +, {id:'9-0-5', text:'level 3-9-0-5'} +, {id:'9-0-6', text:'level 3-9-0-6'} +, {id:'9-0-7', text:'level 3-9-0-7'} +, {id:'9-0-8', text:'level 3-9-0-8'} +, {id:'9-0-9', text:'level 3-9-0-9'} +]} +, {id:'9-1-10', text:'level 2-9-1', item:[ + {id:'9-1-0', text:'level 3-9-1-0'} +, {id:'9-1-1', text:'level 3-9-1-1'} +, {id:'9-1-2', text:'level 3-9-1-2'} +, {id:'9-1-3', text:'level 3-9-1-3'} +, {id:'9-1-4', text:'level 3-9-1-4'} +, {id:'9-1-5', text:'level 3-9-1-5'} +, {id:'9-1-6', text:'level 3-9-1-6'} +, {id:'9-1-7', text:'level 3-9-1-7'} +, {id:'9-1-8', text:'level 3-9-1-8'} +, {id:'9-1-9', text:'level 3-9-1-9'} +]} +, {id:'9-2-10', text:'level 2-9-2', item:[ + {id:'9-2-0', text:'level 3-9-2-0'} +, {id:'9-2-1', text:'level 3-9-2-1'} +, {id:'9-2-2', text:'level 3-9-2-2'} +, {id:'9-2-3', text:'level 3-9-2-3'} +, {id:'9-2-4', text:'level 3-9-2-4'} +, {id:'9-2-5', text:'level 3-9-2-5'} +, {id:'9-2-6', text:'level 3-9-2-6'} +, {id:'9-2-7', text:'level 3-9-2-7'} +, {id:'9-2-8', text:'level 3-9-2-8'} +, {id:'9-2-9', text:'level 3-9-2-9'} +]} +, {id:'9-3-10', text:'level 2-9-3', item:[ + {id:'9-3-0', text:'level 3-9-3-0'} +, {id:'9-3-1', text:'level 3-9-3-1'} +, {id:'9-3-2', text:'level 3-9-3-2'} +, {id:'9-3-3', text:'level 3-9-3-3'} +, {id:'9-3-4', text:'level 3-9-3-4'} +, {id:'9-3-5', text:'level 3-9-3-5'} +, {id:'9-3-6', text:'level 3-9-3-6'} +, {id:'9-3-7', text:'level 3-9-3-7'} +, {id:'9-3-8', text:'level 3-9-3-8'} +, {id:'9-3-9', text:'level 3-9-3-9'} +]} +, {id:'9-4-10', text:'level 2-9-4', item:[ + {id:'9-4-0', text:'level 3-9-4-0'} +, {id:'9-4-1', text:'level 3-9-4-1'} +, {id:'9-4-2', text:'level 3-9-4-2'} +, {id:'9-4-3', text:'level 3-9-4-3'} +, {id:'9-4-4', text:'level 3-9-4-4'} +, {id:'9-4-5', text:'level 3-9-4-5'} +, {id:'9-4-6', text:'level 3-9-4-6'} +, {id:'9-4-7', text:'level 3-9-4-7'} +, {id:'9-4-8', text:'level 3-9-4-8'} +, {id:'9-4-9', text:'level 3-9-4-9'} +]} +, {id:'9-5-10', text:'level 2-9-5', item:[ + {id:'9-5-0', text:'level 3-9-5-0'} +, {id:'9-5-1', text:'level 3-9-5-1'} +, {id:'9-5-2', text:'level 3-9-5-2'} +, {id:'9-5-3', text:'level 3-9-5-3'} +, {id:'9-5-4', text:'level 3-9-5-4'} +, {id:'9-5-5', text:'level 3-9-5-5'} +, {id:'9-5-6', text:'level 3-9-5-6'} +, {id:'9-5-7', text:'level 3-9-5-7'} +, {id:'9-5-8', text:'level 3-9-5-8'} +, {id:'9-5-9', text:'level 3-9-5-9'} +]} +, {id:'9-6-10', text:'level 2-9-6', item:[ + {id:'9-6-0', text:'level 3-9-6-0'} +, {id:'9-6-1', text:'level 3-9-6-1'} +, {id:'9-6-2', text:'level 3-9-6-2'} +, {id:'9-6-3', text:'level 3-9-6-3'} +, {id:'9-6-4', text:'level 3-9-6-4'} +, {id:'9-6-5', text:'level 3-9-6-5'} +, {id:'9-6-6', text:'level 3-9-6-6'} +, {id:'9-6-7', text:'level 3-9-6-7'} +, {id:'9-6-8', text:'level 3-9-6-8'} +, {id:'9-6-9', text:'level 3-9-6-9'} +]} +, {id:'9-7-10', text:'level 2-9-7', item:[ + {id:'9-7-0', text:'level 3-9-7-0'} +, {id:'9-7-1', text:'level 3-9-7-1'} +, {id:'9-7-2', text:'level 3-9-7-2'} +, {id:'9-7-3', text:'level 3-9-7-3'} +, {id:'9-7-4', text:'level 3-9-7-4'} +, {id:'9-7-5', text:'level 3-9-7-5'} +, {id:'9-7-6', text:'level 3-9-7-6'} +, {id:'9-7-7', text:'level 3-9-7-7'} +, {id:'9-7-8', text:'level 3-9-7-8'} +, {id:'9-7-9', text:'level 3-9-7-9'} +]} +, {id:'9-8-10', text:'level 2-9-8', item:[ + {id:'9-8-0', text:'level 3-9-8-0'} +, {id:'9-8-1', text:'level 3-9-8-1'} +, {id:'9-8-2', text:'level 3-9-8-2'} +, {id:'9-8-3', text:'level 3-9-8-3'} +, {id:'9-8-4', text:'level 3-9-8-4'} +, {id:'9-8-5', text:'level 3-9-8-5'} +, {id:'9-8-6', text:'level 3-9-8-6'} +, {id:'9-8-7', text:'level 3-9-8-7'} +, {id:'9-8-8', text:'level 3-9-8-8'} +, {id:'9-8-9', text:'level 3-9-8-9'} +]} +, {id:'9-9-10', text:'level 2-9-9', item:[ + {id:'9-9-0', text:'level 3-9-9-0'} +, {id:'9-9-1', text:'level 3-9-9-1'} +, {id:'9-9-2', text:'level 3-9-9-2'} +, {id:'9-9-3', text:'level 3-9-9-3'} +, {id:'9-9-4', text:'level 3-9-9-4'} +, {id:'9-9-5', text:'level 3-9-9-5'} +, {id:'9-9-6', text:'level 3-9-9-6'} +, {id:'9-9-7', text:'level 3-9-9-7'} +, {id:'9-9-8', text:'level 3-9-9-8'} +, {id:'9-9-9', text:'level 3-9-9-9'} +]} +, {id:'9-10-10', text:'level 2-9-10', item:[ + {id:'9-10-0', text:'level 3-9-10-0'} +, {id:'9-10-1', text:'level 3-9-10-1'} +, {id:'9-10-2', text:'level 3-9-10-2'} +, {id:'9-10-3', text:'level 3-9-10-3'} +, {id:'9-10-4', text:'level 3-9-10-4'} +, {id:'9-10-5', text:'level 3-9-10-5'} +, {id:'9-10-6', text:'level 3-9-10-6'} +, {id:'9-10-7', text:'level 3-9-10-7'} +, {id:'9-10-8', text:'level 3-9-10-8'} +, {id:'9-10-9', text:'level 3-9-10-9'} +]} +, {id:'9-11-10', text:'level 2-9-11', item:[ + {id:'9-11-0', text:'level 3-9-11-0'} +, {id:'9-11-1', text:'level 3-9-11-1'} +, {id:'9-11-2', text:'level 3-9-11-2'} +, {id:'9-11-3', text:'level 3-9-11-3'} +, {id:'9-11-4', text:'level 3-9-11-4'} +, {id:'9-11-5', text:'level 3-9-11-5'} +, {id:'9-11-6', text:'level 3-9-11-6'} +, {id:'9-11-7', text:'level 3-9-11-7'} +, {id:'9-11-8', text:'level 3-9-11-8'} +, {id:'9-11-9', text:'level 3-9-11-9'} +]} +, {id:'9-12-10', text:'level 2-9-12', item:[ + {id:'9-12-0', text:'level 3-9-12-0'} +, {id:'9-12-1', text:'level 3-9-12-1'} +, {id:'9-12-2', text:'level 3-9-12-2'} +, {id:'9-12-3', text:'level 3-9-12-3'} +, {id:'9-12-4', text:'level 3-9-12-4'} +, {id:'9-12-5', text:'level 3-9-12-5'} +, {id:'9-12-6', text:'level 3-9-12-6'} +, {id:'9-12-7', text:'level 3-9-12-7'} +, {id:'9-12-8', text:'level 3-9-12-8'} +, {id:'9-12-9', text:'level 3-9-12-9'} +]} +, {id:'9-13-10', text:'level 2-9-13', item:[ + {id:'9-13-0', text:'level 3-9-13-0'} +, {id:'9-13-1', text:'level 3-9-13-1'} +, {id:'9-13-2', text:'level 3-9-13-2'} +, {id:'9-13-3', text:'level 3-9-13-3'} +, {id:'9-13-4', text:'level 3-9-13-4'} +, {id:'9-13-5', text:'level 3-9-13-5'} +, {id:'9-13-6', text:'level 3-9-13-6'} +, {id:'9-13-7', text:'level 3-9-13-7'} +, {id:'9-13-8', text:'level 3-9-13-8'} +, {id:'9-13-9', text:'level 3-9-13-9'} +]} +, {id:'9-14-10', text:'level 2-9-14', item:[ + {id:'9-14-0', text:'level 3-9-14-0'} +, {id:'9-14-1', text:'level 3-9-14-1'} +, {id:'9-14-2', text:'level 3-9-14-2'} +, {id:'9-14-3', text:'level 3-9-14-3'} +, {id:'9-14-4', text:'level 3-9-14-4'} +, {id:'9-14-5', text:'level 3-9-14-5'} +, {id:'9-14-6', text:'level 3-9-14-6'} +, {id:'9-14-7', text:'level 3-9-14-7'} +, {id:'9-14-8', text:'level 3-9-14-8'} +, {id:'9-14-9', text:'level 3-9-14-9'} +]} +, {id:'9-15-10', text:'level 2-9-15', item:[ + {id:'9-15-0', text:'level 3-9-15-0'} +, {id:'9-15-1', text:'level 3-9-15-1'} +, {id:'9-15-2', text:'level 3-9-15-2'} +, {id:'9-15-3', text:'level 3-9-15-3'} +, {id:'9-15-4', text:'level 3-9-15-4'} +, {id:'9-15-5', text:'level 3-9-15-5'} +, {id:'9-15-6', text:'level 3-9-15-6'} +, {id:'9-15-7', text:'level 3-9-15-7'} +, {id:'9-15-8', text:'level 3-9-15-8'} +, {id:'9-15-9', text:'level 3-9-15-9'} +]} +, {id:'9-16-10', text:'level 2-9-16', item:[ + {id:'9-16-0', text:'level 3-9-16-0'} +, {id:'9-16-1', text:'level 3-9-16-1'} +, {id:'9-16-2', text:'level 3-9-16-2'} +, {id:'9-16-3', text:'level 3-9-16-3'} +, {id:'9-16-4', text:'level 3-9-16-4'} +, {id:'9-16-5', text:'level 3-9-16-5'} +, {id:'9-16-6', text:'level 3-9-16-6'} +, {id:'9-16-7', text:'level 3-9-16-7'} +, {id:'9-16-8', text:'level 3-9-16-8'} +, {id:'9-16-9', text:'level 3-9-16-9'} +]} +, {id:'9-17-10', text:'level 2-9-17', item:[ + {id:'9-17-0', text:'level 3-9-17-0'} +, {id:'9-17-1', text:'level 3-9-17-1'} +, {id:'9-17-2', text:'level 3-9-17-2'} +, {id:'9-17-3', text:'level 3-9-17-3'} +, {id:'9-17-4', text:'level 3-9-17-4'} +, {id:'9-17-5', text:'level 3-9-17-5'} +, {id:'9-17-6', text:'level 3-9-17-6'} +, {id:'9-17-7', text:'level 3-9-17-7'} +, {id:'9-17-8', text:'level 3-9-17-8'} +, {id:'9-17-9', text:'level 3-9-17-9'} +]} +, {id:'9-18-10', text:'level 2-9-18', item:[ + {id:'9-18-0', text:'level 3-9-18-0'} +, {id:'9-18-1', text:'level 3-9-18-1'} +, {id:'9-18-2', text:'level 3-9-18-2'} +, {id:'9-18-3', text:'level 3-9-18-3'} +, {id:'9-18-4', text:'level 3-9-18-4'} +, {id:'9-18-5', text:'level 3-9-18-5'} +, {id:'9-18-6', text:'level 3-9-18-6'} +, {id:'9-18-7', text:'level 3-9-18-7'} +, {id:'9-18-8', text:'level 3-9-18-8'} +, {id:'9-18-9', text:'level 3-9-18-9'} +]} +, {id:'9-19-10', text:'level 2-9-19', item:[ + {id:'9-19-0', text:'level 3-9-19-0'} +, {id:'9-19-1', text:'level 3-9-19-1'} +, {id:'9-19-2', text:'level 3-9-19-2'} +, {id:'9-19-3', text:'level 3-9-19-3'} +, {id:'9-19-4', text:'level 3-9-19-4'} +, {id:'9-19-5', text:'level 3-9-19-5'} +, {id:'9-19-6', text:'level 3-9-19-6'} +, {id:'9-19-7', text:'level 3-9-19-7'} +, {id:'9-19-8', text:'level 3-9-19-8'} +, {id:'9-19-9', text:'level 3-9-19-9'} +]} +]} +,{id:'10-20-10', text:'level 1-10', item:[ + {id:'10-0-10', text:'level 2-10-0', item:[ + {id:'10-0-0', text:'level 3-10-0-0'} +, {id:'10-0-1', text:'level 3-10-0-1'} +, {id:'10-0-2', text:'level 3-10-0-2'} +, {id:'10-0-3', text:'level 3-10-0-3'} +, {id:'10-0-4', text:'level 3-10-0-4'} +, {id:'10-0-5', text:'level 3-10-0-5'} +, {id:'10-0-6', text:'level 3-10-0-6'} +, {id:'10-0-7', text:'level 3-10-0-7'} +, {id:'10-0-8', text:'level 3-10-0-8'} +, {id:'10-0-9', text:'level 3-10-0-9'} +]} +, {id:'10-1-10', text:'level 2-10-1', item:[ + {id:'10-1-0', text:'level 3-10-1-0'} +, {id:'10-1-1', text:'level 3-10-1-1'} +, {id:'10-1-2', text:'level 3-10-1-2'} +, {id:'10-1-3', text:'level 3-10-1-3'} +, {id:'10-1-4', text:'level 3-10-1-4'} +, {id:'10-1-5', text:'level 3-10-1-5'} +, {id:'10-1-6', text:'level 3-10-1-6'} +, {id:'10-1-7', text:'level 3-10-1-7'} +, {id:'10-1-8', text:'level 3-10-1-8'} +, {id:'10-1-9', text:'level 3-10-1-9'} +]} +, {id:'10-2-10', text:'level 2-10-2', item:[ + {id:'10-2-0', text:'level 3-10-2-0'} +, {id:'10-2-1', text:'level 3-10-2-1'} +, {id:'10-2-2', text:'level 3-10-2-2'} +, {id:'10-2-3', text:'level 3-10-2-3'} +, {id:'10-2-4', text:'level 3-10-2-4'} +, {id:'10-2-5', text:'level 3-10-2-5'} +, {id:'10-2-6', text:'level 3-10-2-6'} +, {id:'10-2-7', text:'level 3-10-2-7'} +, {id:'10-2-8', text:'level 3-10-2-8'} +, {id:'10-2-9', text:'level 3-10-2-9'} +]} +, {id:'10-3-10', text:'level 2-10-3', item:[ + {id:'10-3-0', text:'level 3-10-3-0'} +, {id:'10-3-1', text:'level 3-10-3-1'} +, {id:'10-3-2', text:'level 3-10-3-2'} +, {id:'10-3-3', text:'level 3-10-3-3'} +, {id:'10-3-4', text:'level 3-10-3-4'} +, {id:'10-3-5', text:'level 3-10-3-5'} +, {id:'10-3-6', text:'level 3-10-3-6'} +, {id:'10-3-7', text:'level 3-10-3-7'} +, {id:'10-3-8', text:'level 3-10-3-8'} +, {id:'10-3-9', text:'level 3-10-3-9'} +]} +, {id:'10-4-10', text:'level 2-10-4', item:[ + {id:'10-4-0', text:'level 3-10-4-0'} +, {id:'10-4-1', text:'level 3-10-4-1'} +, {id:'10-4-2', text:'level 3-10-4-2'} +, {id:'10-4-3', text:'level 3-10-4-3'} +, {id:'10-4-4', text:'level 3-10-4-4'} +, {id:'10-4-5', text:'level 3-10-4-5'} +, {id:'10-4-6', text:'level 3-10-4-6'} +, {id:'10-4-7', text:'level 3-10-4-7'} +, {id:'10-4-8', text:'level 3-10-4-8'} +, {id:'10-4-9', text:'level 3-10-4-9'} +]} +, {id:'10-5-10', text:'level 2-10-5', item:[ + {id:'10-5-0', text:'level 3-10-5-0'} +, {id:'10-5-1', text:'level 3-10-5-1'} +, {id:'10-5-2', text:'level 3-10-5-2'} +, {id:'10-5-3', text:'level 3-10-5-3'} +, {id:'10-5-4', text:'level 3-10-5-4'} +, {id:'10-5-5', text:'level 3-10-5-5'} +, {id:'10-5-6', text:'level 3-10-5-6'} +, {id:'10-5-7', text:'level 3-10-5-7'} +, {id:'10-5-8', text:'level 3-10-5-8'} +, {id:'10-5-9', text:'level 3-10-5-9'} +]} +, {id:'10-6-10', text:'level 2-10-6', item:[ + {id:'10-6-0', text:'level 3-10-6-0'} +, {id:'10-6-1', text:'level 3-10-6-1'} +, {id:'10-6-2', text:'level 3-10-6-2'} +, {id:'10-6-3', text:'level 3-10-6-3'} +, {id:'10-6-4', text:'level 3-10-6-4'} +, {id:'10-6-5', text:'level 3-10-6-5'} +, {id:'10-6-6', text:'level 3-10-6-6'} +, {id:'10-6-7', text:'level 3-10-6-7'} +, {id:'10-6-8', text:'level 3-10-6-8'} +, {id:'10-6-9', text:'level 3-10-6-9'} +]} +, {id:'10-7-10', text:'level 2-10-7', item:[ + {id:'10-7-0', text:'level 3-10-7-0'} +, {id:'10-7-1', text:'level 3-10-7-1'} +, {id:'10-7-2', text:'level 3-10-7-2'} +, {id:'10-7-3', text:'level 3-10-7-3'} +, {id:'10-7-4', text:'level 3-10-7-4'} +, {id:'10-7-5', text:'level 3-10-7-5'} +, {id:'10-7-6', text:'level 3-10-7-6'} +, {id:'10-7-7', text:'level 3-10-7-7'} +, {id:'10-7-8', text:'level 3-10-7-8'} +, {id:'10-7-9', text:'level 3-10-7-9'} +]} +, {id:'10-8-10', text:'level 2-10-8', item:[ + {id:'10-8-0', text:'level 3-10-8-0'} +, {id:'10-8-1', text:'level 3-10-8-1'} +, {id:'10-8-2', text:'level 3-10-8-2'} +, {id:'10-8-3', text:'level 3-10-8-3'} +, {id:'10-8-4', text:'level 3-10-8-4'} +, {id:'10-8-5', text:'level 3-10-8-5'} +, {id:'10-8-6', text:'level 3-10-8-6'} +, {id:'10-8-7', text:'level 3-10-8-7'} +, {id:'10-8-8', text:'level 3-10-8-8'} +, {id:'10-8-9', text:'level 3-10-8-9'} +]} +, {id:'10-9-10', text:'level 2-10-9', item:[ + {id:'10-9-0', text:'level 3-10-9-0'} +, {id:'10-9-1', text:'level 3-10-9-1'} +, {id:'10-9-2', text:'level 3-10-9-2'} +, {id:'10-9-3', text:'level 3-10-9-3'} +, {id:'10-9-4', text:'level 3-10-9-4'} +, {id:'10-9-5', text:'level 3-10-9-5'} +, {id:'10-9-6', text:'level 3-10-9-6'} +, {id:'10-9-7', text:'level 3-10-9-7'} +, {id:'10-9-8', text:'level 3-10-9-8'} +, {id:'10-9-9', text:'level 3-10-9-9'} +]} +, {id:'10-10-10', text:'level 2-10-10', item:[ + {id:'10-10-0', text:'level 3-10-10-0'} +, {id:'10-10-1', text:'level 3-10-10-1'} +, {id:'10-10-2', text:'level 3-10-10-2'} +, {id:'10-10-3', text:'level 3-10-10-3'} +, {id:'10-10-4', text:'level 3-10-10-4'} +, {id:'10-10-5', text:'level 3-10-10-5'} +, {id:'10-10-6', text:'level 3-10-10-6'} +, {id:'10-10-7', text:'level 3-10-10-7'} +, {id:'10-10-8', text:'level 3-10-10-8'} +, {id:'10-10-9', text:'level 3-10-10-9'} +]} +, {id:'10-11-10', text:'level 2-10-11', item:[ + {id:'10-11-0', text:'level 3-10-11-0'} +, {id:'10-11-1', text:'level 3-10-11-1'} +, {id:'10-11-2', text:'level 3-10-11-2'} +, {id:'10-11-3', text:'level 3-10-11-3'} +, {id:'10-11-4', text:'level 3-10-11-4'} +, {id:'10-11-5', text:'level 3-10-11-5'} +, {id:'10-11-6', text:'level 3-10-11-6'} +, {id:'10-11-7', text:'level 3-10-11-7'} +, {id:'10-11-8', text:'level 3-10-11-8'} +, {id:'10-11-9', text:'level 3-10-11-9'} +]} +, {id:'10-12-10', text:'level 2-10-12', item:[ + {id:'10-12-0', text:'level 3-10-12-0'} +, {id:'10-12-1', text:'level 3-10-12-1'} +, {id:'10-12-2', text:'level 3-10-12-2'} +, {id:'10-12-3', text:'level 3-10-12-3'} +, {id:'10-12-4', text:'level 3-10-12-4'} +, {id:'10-12-5', text:'level 3-10-12-5'} +, {id:'10-12-6', text:'level 3-10-12-6'} +, {id:'10-12-7', text:'level 3-10-12-7'} +, {id:'10-12-8', text:'level 3-10-12-8'} +, {id:'10-12-9', text:'level 3-10-12-9'} +]} +, {id:'10-13-10', text:'level 2-10-13', item:[ + {id:'10-13-0', text:'level 3-10-13-0'} +, {id:'10-13-1', text:'level 3-10-13-1'} +, {id:'10-13-2', text:'level 3-10-13-2'} +, {id:'10-13-3', text:'level 3-10-13-3'} +, {id:'10-13-4', text:'level 3-10-13-4'} +, {id:'10-13-5', text:'level 3-10-13-5'} +, {id:'10-13-6', text:'level 3-10-13-6'} +, {id:'10-13-7', text:'level 3-10-13-7'} +, {id:'10-13-8', text:'level 3-10-13-8'} +, {id:'10-13-9', text:'level 3-10-13-9'} +]} +, {id:'10-14-10', text:'level 2-10-14', item:[ + {id:'10-14-0', text:'level 3-10-14-0'} +, {id:'10-14-1', text:'level 3-10-14-1'} +, {id:'10-14-2', text:'level 3-10-14-2'} +, {id:'10-14-3', text:'level 3-10-14-3'} +, {id:'10-14-4', text:'level 3-10-14-4'} +, {id:'10-14-5', text:'level 3-10-14-5'} +, {id:'10-14-6', text:'level 3-10-14-6'} +, {id:'10-14-7', text:'level 3-10-14-7'} +, {id:'10-14-8', text:'level 3-10-14-8'} +, {id:'10-14-9', text:'level 3-10-14-9'} +]} +, {id:'10-15-10', text:'level 2-10-15', item:[ + {id:'10-15-0', text:'level 3-10-15-0'} +, {id:'10-15-1', text:'level 3-10-15-1'} +, {id:'10-15-2', text:'level 3-10-15-2'} +, {id:'10-15-3', text:'level 3-10-15-3'} +, {id:'10-15-4', text:'level 3-10-15-4'} +, {id:'10-15-5', text:'level 3-10-15-5'} +, {id:'10-15-6', text:'level 3-10-15-6'} +, {id:'10-15-7', text:'level 3-10-15-7'} +, {id:'10-15-8', text:'level 3-10-15-8'} +, {id:'10-15-9', text:'level 3-10-15-9'} +]} +, {id:'10-16-10', text:'level 2-10-16', item:[ + {id:'10-16-0', text:'level 3-10-16-0'} +, {id:'10-16-1', text:'level 3-10-16-1'} +, {id:'10-16-2', text:'level 3-10-16-2'} +, {id:'10-16-3', text:'level 3-10-16-3'} +, {id:'10-16-4', text:'level 3-10-16-4'} +, {id:'10-16-5', text:'level 3-10-16-5'} +, {id:'10-16-6', text:'level 3-10-16-6'} +, {id:'10-16-7', text:'level 3-10-16-7'} +, {id:'10-16-8', text:'level 3-10-16-8'} +, {id:'10-16-9', text:'level 3-10-16-9'} +]} +, {id:'10-17-10', text:'level 2-10-17', item:[ + {id:'10-17-0', text:'level 3-10-17-0'} +, {id:'10-17-1', text:'level 3-10-17-1'} +, {id:'10-17-2', text:'level 3-10-17-2'} +, {id:'10-17-3', text:'level 3-10-17-3'} +, {id:'10-17-4', text:'level 3-10-17-4'} +, {id:'10-17-5', text:'level 3-10-17-5'} +, {id:'10-17-6', text:'level 3-10-17-6'} +, {id:'10-17-7', text:'level 3-10-17-7'} +, {id:'10-17-8', text:'level 3-10-17-8'} +, {id:'10-17-9', text:'level 3-10-17-9'} +]} +, {id:'10-18-10', text:'level 2-10-18', item:[ + {id:'10-18-0', text:'level 3-10-18-0'} +, {id:'10-18-1', text:'level 3-10-18-1'} +, {id:'10-18-2', text:'level 3-10-18-2'} +, {id:'10-18-3', text:'level 3-10-18-3'} +, {id:'10-18-4', text:'level 3-10-18-4'} +, {id:'10-18-5', text:'level 3-10-18-5'} +, {id:'10-18-6', text:'level 3-10-18-6'} +, {id:'10-18-7', text:'level 3-10-18-7'} +, {id:'10-18-8', text:'level 3-10-18-8'} +, {id:'10-18-9', text:'level 3-10-18-9'} +]} +, {id:'10-19-10', text:'level 2-10-19', item:[ + {id:'10-19-0', text:'level 3-10-19-0'} +, {id:'10-19-1', text:'level 3-10-19-1'} +, {id:'10-19-2', text:'level 3-10-19-2'} +, {id:'10-19-3', text:'level 3-10-19-3'} +, {id:'10-19-4', text:'level 3-10-19-4'} +, {id:'10-19-5', text:'level 3-10-19-5'} +, {id:'10-19-6', text:'level 3-10-19-6'} +, {id:'10-19-7', text:'level 3-10-19-7'} +, {id:'10-19-8', text:'level 3-10-19-8'} +, {id:'10-19-9', text:'level 3-10-19-9'} +]} +]} +,{id:'11-20-10', text:'level 1-11', item:[ + {id:'11-0-10', text:'level 2-11-0', item:[ + {id:'11-0-0', text:'level 3-11-0-0'} +, {id:'11-0-1', text:'level 3-11-0-1'} +, {id:'11-0-2', text:'level 3-11-0-2'} +, {id:'11-0-3', text:'level 3-11-0-3'} +, {id:'11-0-4', text:'level 3-11-0-4'} +, {id:'11-0-5', text:'level 3-11-0-5'} +, {id:'11-0-6', text:'level 3-11-0-6'} +, {id:'11-0-7', text:'level 3-11-0-7'} +, {id:'11-0-8', text:'level 3-11-0-8'} +, {id:'11-0-9', text:'level 3-11-0-9'} +]} +, {id:'11-1-10', text:'level 2-11-1', item:[ + {id:'11-1-0', text:'level 3-11-1-0'} +, {id:'11-1-1', text:'level 3-11-1-1'} +, {id:'11-1-2', text:'level 3-11-1-2'} +, {id:'11-1-3', text:'level 3-11-1-3'} +, {id:'11-1-4', text:'level 3-11-1-4'} +, {id:'11-1-5', text:'level 3-11-1-5'} +, {id:'11-1-6', text:'level 3-11-1-6'} +, {id:'11-1-7', text:'level 3-11-1-7'} +, {id:'11-1-8', text:'level 3-11-1-8'} +, {id:'11-1-9', text:'level 3-11-1-9'} +]} +, {id:'11-2-10', text:'level 2-11-2', item:[ + {id:'11-2-0', text:'level 3-11-2-0'} +, {id:'11-2-1', text:'level 3-11-2-1'} +, {id:'11-2-2', text:'level 3-11-2-2'} +, {id:'11-2-3', text:'level 3-11-2-3'} +, {id:'11-2-4', text:'level 3-11-2-4'} +, {id:'11-2-5', text:'level 3-11-2-5'} +, {id:'11-2-6', text:'level 3-11-2-6'} +, {id:'11-2-7', text:'level 3-11-2-7'} +, {id:'11-2-8', text:'level 3-11-2-8'} +, {id:'11-2-9', text:'level 3-11-2-9'} +]} +, {id:'11-3-10', text:'level 2-11-3', item:[ + {id:'11-3-0', text:'level 3-11-3-0'} +, {id:'11-3-1', text:'level 3-11-3-1'} +, {id:'11-3-2', text:'level 3-11-3-2'} +, {id:'11-3-3', text:'level 3-11-3-3'} +, {id:'11-3-4', text:'level 3-11-3-4'} +, {id:'11-3-5', text:'level 3-11-3-5'} +, {id:'11-3-6', text:'level 3-11-3-6'} +, {id:'11-3-7', text:'level 3-11-3-7'} +, {id:'11-3-8', text:'level 3-11-3-8'} +, {id:'11-3-9', text:'level 3-11-3-9'} +]} +, {id:'11-4-10', text:'level 2-11-4', item:[ + {id:'11-4-0', text:'level 3-11-4-0'} +, {id:'11-4-1', text:'level 3-11-4-1'} +, {id:'11-4-2', text:'level 3-11-4-2'} +, {id:'11-4-3', text:'level 3-11-4-3'} +, {id:'11-4-4', text:'level 3-11-4-4'} +, {id:'11-4-5', text:'level 3-11-4-5'} +, {id:'11-4-6', text:'level 3-11-4-6'} +, {id:'11-4-7', text:'level 3-11-4-7'} +, {id:'11-4-8', text:'level 3-11-4-8'} +, {id:'11-4-9', text:'level 3-11-4-9'} +]} +, {id:'11-5-10', text:'level 2-11-5', item:[ + {id:'11-5-0', text:'level 3-11-5-0'} +, {id:'11-5-1', text:'level 3-11-5-1'} +, {id:'11-5-2', text:'level 3-11-5-2'} +, {id:'11-5-3', text:'level 3-11-5-3'} +, {id:'11-5-4', text:'level 3-11-5-4'} +, {id:'11-5-5', text:'level 3-11-5-5'} +, {id:'11-5-6', text:'level 3-11-5-6'} +, {id:'11-5-7', text:'level 3-11-5-7'} +, {id:'11-5-8', text:'level 3-11-5-8'} +, {id:'11-5-9', text:'level 3-11-5-9'} +]} +, {id:'11-6-10', text:'level 2-11-6', item:[ + {id:'11-6-0', text:'level 3-11-6-0'} +, {id:'11-6-1', text:'level 3-11-6-1'} +, {id:'11-6-2', text:'level 3-11-6-2'} +, {id:'11-6-3', text:'level 3-11-6-3'} +, {id:'11-6-4', text:'level 3-11-6-4'} +, {id:'11-6-5', text:'level 3-11-6-5'} +, {id:'11-6-6', text:'level 3-11-6-6'} +, {id:'11-6-7', text:'level 3-11-6-7'} +, {id:'11-6-8', text:'level 3-11-6-8'} +, {id:'11-6-9', text:'level 3-11-6-9'} +]} +, {id:'11-7-10', text:'level 2-11-7', item:[ + {id:'11-7-0', text:'level 3-11-7-0'} +, {id:'11-7-1', text:'level 3-11-7-1'} +, {id:'11-7-2', text:'level 3-11-7-2'} +, {id:'11-7-3', text:'level 3-11-7-3'} +, {id:'11-7-4', text:'level 3-11-7-4'} +, {id:'11-7-5', text:'level 3-11-7-5'} +, {id:'11-7-6', text:'level 3-11-7-6'} +, {id:'11-7-7', text:'level 3-11-7-7'} +, {id:'11-7-8', text:'level 3-11-7-8'} +, {id:'11-7-9', text:'level 3-11-7-9'} +]} +, {id:'11-8-10', text:'level 2-11-8', item:[ + {id:'11-8-0', text:'level 3-11-8-0'} +, {id:'11-8-1', text:'level 3-11-8-1'} +, {id:'11-8-2', text:'level 3-11-8-2'} +, {id:'11-8-3', text:'level 3-11-8-3'} +, {id:'11-8-4', text:'level 3-11-8-4'} +, {id:'11-8-5', text:'level 3-11-8-5'} +, {id:'11-8-6', text:'level 3-11-8-6'} +, {id:'11-8-7', text:'level 3-11-8-7'} +, {id:'11-8-8', text:'level 3-11-8-8'} +, {id:'11-8-9', text:'level 3-11-8-9'} +]} +, {id:'11-9-10', text:'level 2-11-9', item:[ + {id:'11-9-0', text:'level 3-11-9-0'} +, {id:'11-9-1', text:'level 3-11-9-1'} +, {id:'11-9-2', text:'level 3-11-9-2'} +, {id:'11-9-3', text:'level 3-11-9-3'} +, {id:'11-9-4', text:'level 3-11-9-4'} +, {id:'11-9-5', text:'level 3-11-9-5'} +, {id:'11-9-6', text:'level 3-11-9-6'} +, {id:'11-9-7', text:'level 3-11-9-7'} +, {id:'11-9-8', text:'level 3-11-9-8'} +, {id:'11-9-9', text:'level 3-11-9-9'} +]} +, {id:'11-10-10', text:'level 2-11-10', item:[ + {id:'11-10-0', text:'level 3-11-10-0'} +, {id:'11-10-1', text:'level 3-11-10-1'} +, {id:'11-10-2', text:'level 3-11-10-2'} +, {id:'11-10-3', text:'level 3-11-10-3'} +, {id:'11-10-4', text:'level 3-11-10-4'} +, {id:'11-10-5', text:'level 3-11-10-5'} +, {id:'11-10-6', text:'level 3-11-10-6'} +, {id:'11-10-7', text:'level 3-11-10-7'} +, {id:'11-10-8', text:'level 3-11-10-8'} +, {id:'11-10-9', text:'level 3-11-10-9'} +]} +, {id:'11-11-10', text:'level 2-11-11', item:[ + {id:'11-11-0', text:'level 3-11-11-0'} +, {id:'11-11-1', text:'level 3-11-11-1'} +, {id:'11-11-2', text:'level 3-11-11-2'} +, {id:'11-11-3', text:'level 3-11-11-3'} +, {id:'11-11-4', text:'level 3-11-11-4'} +, {id:'11-11-5', text:'level 3-11-11-5'} +, {id:'11-11-6', text:'level 3-11-11-6'} +, {id:'11-11-7', text:'level 3-11-11-7'} +, {id:'11-11-8', text:'level 3-11-11-8'} +, {id:'11-11-9', text:'level 3-11-11-9'} +]} +, {id:'11-12-10', text:'level 2-11-12', item:[ + {id:'11-12-0', text:'level 3-11-12-0'} +, {id:'11-12-1', text:'level 3-11-12-1'} +, {id:'11-12-2', text:'level 3-11-12-2'} +, {id:'11-12-3', text:'level 3-11-12-3'} +, {id:'11-12-4', text:'level 3-11-12-4'} +, {id:'11-12-5', text:'level 3-11-12-5'} +, {id:'11-12-6', text:'level 3-11-12-6'} +, {id:'11-12-7', text:'level 3-11-12-7'} +, {id:'11-12-8', text:'level 3-11-12-8'} +, {id:'11-12-9', text:'level 3-11-12-9'} +]} +, {id:'11-13-10', text:'level 2-11-13', item:[ + {id:'11-13-0', text:'level 3-11-13-0'} +, {id:'11-13-1', text:'level 3-11-13-1'} +, {id:'11-13-2', text:'level 3-11-13-2'} +, {id:'11-13-3', text:'level 3-11-13-3'} +, {id:'11-13-4', text:'level 3-11-13-4'} +, {id:'11-13-5', text:'level 3-11-13-5'} +, {id:'11-13-6', text:'level 3-11-13-6'} +, {id:'11-13-7', text:'level 3-11-13-7'} +, {id:'11-13-8', text:'level 3-11-13-8'} +, {id:'11-13-9', text:'level 3-11-13-9'} +]} +, {id:'11-14-10', text:'level 2-11-14', item:[ + {id:'11-14-0', text:'level 3-11-14-0'} +, {id:'11-14-1', text:'level 3-11-14-1'} +, {id:'11-14-2', text:'level 3-11-14-2'} +, {id:'11-14-3', text:'level 3-11-14-3'} +, {id:'11-14-4', text:'level 3-11-14-4'} +, {id:'11-14-5', text:'level 3-11-14-5'} +, {id:'11-14-6', text:'level 3-11-14-6'} +, {id:'11-14-7', text:'level 3-11-14-7'} +, {id:'11-14-8', text:'level 3-11-14-8'} +, {id:'11-14-9', text:'level 3-11-14-9'} +]} +, {id:'11-15-10', text:'level 2-11-15', item:[ + {id:'11-15-0', text:'level 3-11-15-0'} +, {id:'11-15-1', text:'level 3-11-15-1'} +, {id:'11-15-2', text:'level 3-11-15-2'} +, {id:'11-15-3', text:'level 3-11-15-3'} +, {id:'11-15-4', text:'level 3-11-15-4'} +, {id:'11-15-5', text:'level 3-11-15-5'} +, {id:'11-15-6', text:'level 3-11-15-6'} +, {id:'11-15-7', text:'level 3-11-15-7'} +, {id:'11-15-8', text:'level 3-11-15-8'} +, {id:'11-15-9', text:'level 3-11-15-9'} +]} +, {id:'11-16-10', text:'level 2-11-16', item:[ + {id:'11-16-0', text:'level 3-11-16-0'} +, {id:'11-16-1', text:'level 3-11-16-1'} +, {id:'11-16-2', text:'level 3-11-16-2'} +, {id:'11-16-3', text:'level 3-11-16-3'} +, {id:'11-16-4', text:'level 3-11-16-4'} +, {id:'11-16-5', text:'level 3-11-16-5'} +, {id:'11-16-6', text:'level 3-11-16-6'} +, {id:'11-16-7', text:'level 3-11-16-7'} +, {id:'11-16-8', text:'level 3-11-16-8'} +, {id:'11-16-9', text:'level 3-11-16-9'} +]} +, {id:'11-17-10', text:'level 2-11-17', item:[ + {id:'11-17-0', text:'level 3-11-17-0'} +, {id:'11-17-1', text:'level 3-11-17-1'} +, {id:'11-17-2', text:'level 3-11-17-2'} +, {id:'11-17-3', text:'level 3-11-17-3'} +, {id:'11-17-4', text:'level 3-11-17-4'} +, {id:'11-17-5', text:'level 3-11-17-5'} +, {id:'11-17-6', text:'level 3-11-17-6'} +, {id:'11-17-7', text:'level 3-11-17-7'} +, {id:'11-17-8', text:'level 3-11-17-8'} +, {id:'11-17-9', text:'level 3-11-17-9'} +]} +, {id:'11-18-10', text:'level 2-11-18', item:[ + {id:'11-18-0', text:'level 3-11-18-0'} +, {id:'11-18-1', text:'level 3-11-18-1'} +, {id:'11-18-2', text:'level 3-11-18-2'} +, {id:'11-18-3', text:'level 3-11-18-3'} +, {id:'11-18-4', text:'level 3-11-18-4'} +, {id:'11-18-5', text:'level 3-11-18-5'} +, {id:'11-18-6', text:'level 3-11-18-6'} +, {id:'11-18-7', text:'level 3-11-18-7'} +, {id:'11-18-8', text:'level 3-11-18-8'} +, {id:'11-18-9', text:'level 3-11-18-9'} +]} +, {id:'11-19-10', text:'level 2-11-19', item:[ + {id:'11-19-0', text:'level 3-11-19-0'} +, {id:'11-19-1', text:'level 3-11-19-1'} +, {id:'11-19-2', text:'level 3-11-19-2'} +, {id:'11-19-3', text:'level 3-11-19-3'} +, {id:'11-19-4', text:'level 3-11-19-4'} +, {id:'11-19-5', text:'level 3-11-19-5'} +, {id:'11-19-6', text:'level 3-11-19-6'} +, {id:'11-19-7', text:'level 3-11-19-7'} +, {id:'11-19-8', text:'level 3-11-19-8'} +, {id:'11-19-9', text:'level 3-11-19-9'} +]} +]} +,{id:'12-20-10', text:'level 1-12', item:[ + {id:'12-0-10', text:'level 2-12-0', item:[ + {id:'12-0-0', text:'level 3-12-0-0'} +, {id:'12-0-1', text:'level 3-12-0-1'} +, {id:'12-0-2', text:'level 3-12-0-2'} +, {id:'12-0-3', text:'level 3-12-0-3'} +, {id:'12-0-4', text:'level 3-12-0-4'} +, {id:'12-0-5', text:'level 3-12-0-5'} +, {id:'12-0-6', text:'level 3-12-0-6'} +, {id:'12-0-7', text:'level 3-12-0-7'} +, {id:'12-0-8', text:'level 3-12-0-8'} +, {id:'12-0-9', text:'level 3-12-0-9'} +]} +, {id:'12-1-10', text:'level 2-12-1', item:[ + {id:'12-1-0', text:'level 3-12-1-0'} +, {id:'12-1-1', text:'level 3-12-1-1'} +, {id:'12-1-2', text:'level 3-12-1-2'} +, {id:'12-1-3', text:'level 3-12-1-3'} +, {id:'12-1-4', text:'level 3-12-1-4'} +, {id:'12-1-5', text:'level 3-12-1-5'} +, {id:'12-1-6', text:'level 3-12-1-6'} +, {id:'12-1-7', text:'level 3-12-1-7'} +, {id:'12-1-8', text:'level 3-12-1-8'} +, {id:'12-1-9', text:'level 3-12-1-9'} +]} +, {id:'12-2-10', text:'level 2-12-2', item:[ + {id:'12-2-0', text:'level 3-12-2-0'} +, {id:'12-2-1', text:'level 3-12-2-1'} +, {id:'12-2-2', text:'level 3-12-2-2'} +, {id:'12-2-3', text:'level 3-12-2-3'} +, {id:'12-2-4', text:'level 3-12-2-4'} +, {id:'12-2-5', text:'level 3-12-2-5'} +, {id:'12-2-6', text:'level 3-12-2-6'} +, {id:'12-2-7', text:'level 3-12-2-7'} +, {id:'12-2-8', text:'level 3-12-2-8'} +, {id:'12-2-9', text:'level 3-12-2-9'} +]} +, {id:'12-3-10', text:'level 2-12-3', item:[ + {id:'12-3-0', text:'level 3-12-3-0'} +, {id:'12-3-1', text:'level 3-12-3-1'} +, {id:'12-3-2', text:'level 3-12-3-2'} +, {id:'12-3-3', text:'level 3-12-3-3'} +, {id:'12-3-4', text:'level 3-12-3-4'} +, {id:'12-3-5', text:'level 3-12-3-5'} +, {id:'12-3-6', text:'level 3-12-3-6'} +, {id:'12-3-7', text:'level 3-12-3-7'} +, {id:'12-3-8', text:'level 3-12-3-8'} +, {id:'12-3-9', text:'level 3-12-3-9'} +]} +, {id:'12-4-10', text:'level 2-12-4', item:[ + {id:'12-4-0', text:'level 3-12-4-0'} +, {id:'12-4-1', text:'level 3-12-4-1'} +, {id:'12-4-2', text:'level 3-12-4-2'} +, {id:'12-4-3', text:'level 3-12-4-3'} +, {id:'12-4-4', text:'level 3-12-4-4'} +, {id:'12-4-5', text:'level 3-12-4-5'} +, {id:'12-4-6', text:'level 3-12-4-6'} +, {id:'12-4-7', text:'level 3-12-4-7'} +, {id:'12-4-8', text:'level 3-12-4-8'} +, {id:'12-4-9', text:'level 3-12-4-9'} +]} +, {id:'12-5-10', text:'level 2-12-5', item:[ + {id:'12-5-0', text:'level 3-12-5-0'} +, {id:'12-5-1', text:'level 3-12-5-1'} +, {id:'12-5-2', text:'level 3-12-5-2'} +, {id:'12-5-3', text:'level 3-12-5-3'} +, {id:'12-5-4', text:'level 3-12-5-4'} +, {id:'12-5-5', text:'level 3-12-5-5'} +, {id:'12-5-6', text:'level 3-12-5-6'} +, {id:'12-5-7', text:'level 3-12-5-7'} +, {id:'12-5-8', text:'level 3-12-5-8'} +, {id:'12-5-9', text:'level 3-12-5-9'} +]} +, {id:'12-6-10', text:'level 2-12-6', item:[ + {id:'12-6-0', text:'level 3-12-6-0'} +, {id:'12-6-1', text:'level 3-12-6-1'} +, {id:'12-6-2', text:'level 3-12-6-2'} +, {id:'12-6-3', text:'level 3-12-6-3'} +, {id:'12-6-4', text:'level 3-12-6-4'} +, {id:'12-6-5', text:'level 3-12-6-5'} +, {id:'12-6-6', text:'level 3-12-6-6'} +, {id:'12-6-7', text:'level 3-12-6-7'} +, {id:'12-6-8', text:'level 3-12-6-8'} +, {id:'12-6-9', text:'level 3-12-6-9'} +]} +, {id:'12-7-10', text:'level 2-12-7', item:[ + {id:'12-7-0', text:'level 3-12-7-0'} +, {id:'12-7-1', text:'level 3-12-7-1'} +, {id:'12-7-2', text:'level 3-12-7-2'} +, {id:'12-7-3', text:'level 3-12-7-3'} +, {id:'12-7-4', text:'level 3-12-7-4'} +, {id:'12-7-5', text:'level 3-12-7-5'} +, {id:'12-7-6', text:'level 3-12-7-6'} +, {id:'12-7-7', text:'level 3-12-7-7'} +, {id:'12-7-8', text:'level 3-12-7-8'} +, {id:'12-7-9', text:'level 3-12-7-9'} +]} +, {id:'12-8-10', text:'level 2-12-8', item:[ + {id:'12-8-0', text:'level 3-12-8-0'} +, {id:'12-8-1', text:'level 3-12-8-1'} +, {id:'12-8-2', text:'level 3-12-8-2'} +, {id:'12-8-3', text:'level 3-12-8-3'} +, {id:'12-8-4', text:'level 3-12-8-4'} +, {id:'12-8-5', text:'level 3-12-8-5'} +, {id:'12-8-6', text:'level 3-12-8-6'} +, {id:'12-8-7', text:'level 3-12-8-7'} +, {id:'12-8-8', text:'level 3-12-8-8'} +, {id:'12-8-9', text:'level 3-12-8-9'} +]} +, {id:'12-9-10', text:'level 2-12-9', item:[ + {id:'12-9-0', text:'level 3-12-9-0'} +, {id:'12-9-1', text:'level 3-12-9-1'} +, {id:'12-9-2', text:'level 3-12-9-2'} +, {id:'12-9-3', text:'level 3-12-9-3'} +, {id:'12-9-4', text:'level 3-12-9-4'} +, {id:'12-9-5', text:'level 3-12-9-5'} +, {id:'12-9-6', text:'level 3-12-9-6'} +, {id:'12-9-7', text:'level 3-12-9-7'} +, {id:'12-9-8', text:'level 3-12-9-8'} +, {id:'12-9-9', text:'level 3-12-9-9'} +]} +, {id:'12-10-10', text:'level 2-12-10', item:[ + {id:'12-10-0', text:'level 3-12-10-0'} +, {id:'12-10-1', text:'level 3-12-10-1'} +, {id:'12-10-2', text:'level 3-12-10-2'} +, {id:'12-10-3', text:'level 3-12-10-3'} +, {id:'12-10-4', text:'level 3-12-10-4'} +, {id:'12-10-5', text:'level 3-12-10-5'} +, {id:'12-10-6', text:'level 3-12-10-6'} +, {id:'12-10-7', text:'level 3-12-10-7'} +, {id:'12-10-8', text:'level 3-12-10-8'} +, {id:'12-10-9', text:'level 3-12-10-9'} +]} +, {id:'12-11-10', text:'level 2-12-11', item:[ + {id:'12-11-0', text:'level 3-12-11-0'} +, {id:'12-11-1', text:'level 3-12-11-1'} +, {id:'12-11-2', text:'level 3-12-11-2'} +, {id:'12-11-3', text:'level 3-12-11-3'} +, {id:'12-11-4', text:'level 3-12-11-4'} +, {id:'12-11-5', text:'level 3-12-11-5'} +, {id:'12-11-6', text:'level 3-12-11-6'} +, {id:'12-11-7', text:'level 3-12-11-7'} +, {id:'12-11-8', text:'level 3-12-11-8'} +, {id:'12-11-9', text:'level 3-12-11-9'} +]} +, {id:'12-12-10', text:'level 2-12-12', item:[ + {id:'12-12-0', text:'level 3-12-12-0'} +, {id:'12-12-1', text:'level 3-12-12-1'} +, {id:'12-12-2', text:'level 3-12-12-2'} +, {id:'12-12-3', text:'level 3-12-12-3'} +, {id:'12-12-4', text:'level 3-12-12-4'} +, {id:'12-12-5', text:'level 3-12-12-5'} +, {id:'12-12-6', text:'level 3-12-12-6'} +, {id:'12-12-7', text:'level 3-12-12-7'} +, {id:'12-12-8', text:'level 3-12-12-8'} +, {id:'12-12-9', text:'level 3-12-12-9'} +]} +, {id:'12-13-10', text:'level 2-12-13', item:[ + {id:'12-13-0', text:'level 3-12-13-0'} +, {id:'12-13-1', text:'level 3-12-13-1'} +, {id:'12-13-2', text:'level 3-12-13-2'} +, {id:'12-13-3', text:'level 3-12-13-3'} +, {id:'12-13-4', text:'level 3-12-13-4'} +, {id:'12-13-5', text:'level 3-12-13-5'} +, {id:'12-13-6', text:'level 3-12-13-6'} +, {id:'12-13-7', text:'level 3-12-13-7'} +, {id:'12-13-8', text:'level 3-12-13-8'} +, {id:'12-13-9', text:'level 3-12-13-9'} +]} +, {id:'12-14-10', text:'level 2-12-14', item:[ + {id:'12-14-0', text:'level 3-12-14-0'} +, {id:'12-14-1', text:'level 3-12-14-1'} +, {id:'12-14-2', text:'level 3-12-14-2'} +, {id:'12-14-3', text:'level 3-12-14-3'} +, {id:'12-14-4', text:'level 3-12-14-4'} +, {id:'12-14-5', text:'level 3-12-14-5'} +, {id:'12-14-6', text:'level 3-12-14-6'} +, {id:'12-14-7', text:'level 3-12-14-7'} +, {id:'12-14-8', text:'level 3-12-14-8'} +, {id:'12-14-9', text:'level 3-12-14-9'} +]} +, {id:'12-15-10', text:'level 2-12-15', item:[ + {id:'12-15-0', text:'level 3-12-15-0'} +, {id:'12-15-1', text:'level 3-12-15-1'} +, {id:'12-15-2', text:'level 3-12-15-2'} +, {id:'12-15-3', text:'level 3-12-15-3'} +, {id:'12-15-4', text:'level 3-12-15-4'} +, {id:'12-15-5', text:'level 3-12-15-5'} +, {id:'12-15-6', text:'level 3-12-15-6'} +, {id:'12-15-7', text:'level 3-12-15-7'} +, {id:'12-15-8', text:'level 3-12-15-8'} +, {id:'12-15-9', text:'level 3-12-15-9'} +]} +, {id:'12-16-10', text:'level 2-12-16', item:[ + {id:'12-16-0', text:'level 3-12-16-0'} +, {id:'12-16-1', text:'level 3-12-16-1'} +, {id:'12-16-2', text:'level 3-12-16-2'} +, {id:'12-16-3', text:'level 3-12-16-3'} +, {id:'12-16-4', text:'level 3-12-16-4'} +, {id:'12-16-5', text:'level 3-12-16-5'} +, {id:'12-16-6', text:'level 3-12-16-6'} +, {id:'12-16-7', text:'level 3-12-16-7'} +, {id:'12-16-8', text:'level 3-12-16-8'} +, {id:'12-16-9', text:'level 3-12-16-9'} +]} +, {id:'12-17-10', text:'level 2-12-17', item:[ + {id:'12-17-0', text:'level 3-12-17-0'} +, {id:'12-17-1', text:'level 3-12-17-1'} +, {id:'12-17-2', text:'level 3-12-17-2'} +, {id:'12-17-3', text:'level 3-12-17-3'} +, {id:'12-17-4', text:'level 3-12-17-4'} +, {id:'12-17-5', text:'level 3-12-17-5'} +, {id:'12-17-6', text:'level 3-12-17-6'} +, {id:'12-17-7', text:'level 3-12-17-7'} +, {id:'12-17-8', text:'level 3-12-17-8'} +, {id:'12-17-9', text:'level 3-12-17-9'} +]} +, {id:'12-18-10', text:'level 2-12-18', item:[ + {id:'12-18-0', text:'level 3-12-18-0'} +, {id:'12-18-1', text:'level 3-12-18-1'} +, {id:'12-18-2', text:'level 3-12-18-2'} +, {id:'12-18-3', text:'level 3-12-18-3'} +, {id:'12-18-4', text:'level 3-12-18-4'} +, {id:'12-18-5', text:'level 3-12-18-5'} +, {id:'12-18-6', text:'level 3-12-18-6'} +, {id:'12-18-7', text:'level 3-12-18-7'} +, {id:'12-18-8', text:'level 3-12-18-8'} +, {id:'12-18-9', text:'level 3-12-18-9'} +]} +, {id:'12-19-10', text:'level 2-12-19', item:[ + {id:'12-19-0', text:'level 3-12-19-0'} +, {id:'12-19-1', text:'level 3-12-19-1'} +, {id:'12-19-2', text:'level 3-12-19-2'} +, {id:'12-19-3', text:'level 3-12-19-3'} +, {id:'12-19-4', text:'level 3-12-19-4'} +, {id:'12-19-5', text:'level 3-12-19-5'} +, {id:'12-19-6', text:'level 3-12-19-6'} +, {id:'12-19-7', text:'level 3-12-19-7'} +, {id:'12-19-8', text:'level 3-12-19-8'} +, {id:'12-19-9', text:'level 3-12-19-9'} +]} +]} +,{id:'13-20-10', text:'level 1-13', item:[ + {id:'13-0-10', text:'level 2-13-0', item:[ + {id:'13-0-0', text:'level 3-13-0-0'} +, {id:'13-0-1', text:'level 3-13-0-1'} +, {id:'13-0-2', text:'level 3-13-0-2'} +, {id:'13-0-3', text:'level 3-13-0-3'} +, {id:'13-0-4', text:'level 3-13-0-4'} +, {id:'13-0-5', text:'level 3-13-0-5'} +, {id:'13-0-6', text:'level 3-13-0-6'} +, {id:'13-0-7', text:'level 3-13-0-7'} +, {id:'13-0-8', text:'level 3-13-0-8'} +, {id:'13-0-9', text:'level 3-13-0-9'} +]} +, {id:'13-1-10', text:'level 2-13-1', item:[ + {id:'13-1-0', text:'level 3-13-1-0'} +, {id:'13-1-1', text:'level 3-13-1-1'} +, {id:'13-1-2', text:'level 3-13-1-2'} +, {id:'13-1-3', text:'level 3-13-1-3'} +, {id:'13-1-4', text:'level 3-13-1-4'} +, {id:'13-1-5', text:'level 3-13-1-5'} +, {id:'13-1-6', text:'level 3-13-1-6'} +, {id:'13-1-7', text:'level 3-13-1-7'} +, {id:'13-1-8', text:'level 3-13-1-8'} +, {id:'13-1-9', text:'level 3-13-1-9'} +]} +, {id:'13-2-10', text:'level 2-13-2', item:[ + {id:'13-2-0', text:'level 3-13-2-0'} +, {id:'13-2-1', text:'level 3-13-2-1'} +, {id:'13-2-2', text:'level 3-13-2-2'} +, {id:'13-2-3', text:'level 3-13-2-3'} +, {id:'13-2-4', text:'level 3-13-2-4'} +, {id:'13-2-5', text:'level 3-13-2-5'} +, {id:'13-2-6', text:'level 3-13-2-6'} +, {id:'13-2-7', text:'level 3-13-2-7'} +, {id:'13-2-8', text:'level 3-13-2-8'} +, {id:'13-2-9', text:'level 3-13-2-9'} +]} +, {id:'13-3-10', text:'level 2-13-3', item:[ + {id:'13-3-0', text:'level 3-13-3-0'} +, {id:'13-3-1', text:'level 3-13-3-1'} +, {id:'13-3-2', text:'level 3-13-3-2'} +, {id:'13-3-3', text:'level 3-13-3-3'} +, {id:'13-3-4', text:'level 3-13-3-4'} +, {id:'13-3-5', text:'level 3-13-3-5'} +, {id:'13-3-6', text:'level 3-13-3-6'} +, {id:'13-3-7', text:'level 3-13-3-7'} +, {id:'13-3-8', text:'level 3-13-3-8'} +, {id:'13-3-9', text:'level 3-13-3-9'} +]} +, {id:'13-4-10', text:'level 2-13-4', item:[ + {id:'13-4-0', text:'level 3-13-4-0'} +, {id:'13-4-1', text:'level 3-13-4-1'} +, {id:'13-4-2', text:'level 3-13-4-2'} +, {id:'13-4-3', text:'level 3-13-4-3'} +, {id:'13-4-4', text:'level 3-13-4-4'} +, {id:'13-4-5', text:'level 3-13-4-5'} +, {id:'13-4-6', text:'level 3-13-4-6'} +, {id:'13-4-7', text:'level 3-13-4-7'} +, {id:'13-4-8', text:'level 3-13-4-8'} +, {id:'13-4-9', text:'level 3-13-4-9'} +]} +, {id:'13-5-10', text:'level 2-13-5', item:[ + {id:'13-5-0', text:'level 3-13-5-0'} +, {id:'13-5-1', text:'level 3-13-5-1'} +, {id:'13-5-2', text:'level 3-13-5-2'} +, {id:'13-5-3', text:'level 3-13-5-3'} +, {id:'13-5-4', text:'level 3-13-5-4'} +, {id:'13-5-5', text:'level 3-13-5-5'} +, {id:'13-5-6', text:'level 3-13-5-6'} +, {id:'13-5-7', text:'level 3-13-5-7'} +, {id:'13-5-8', text:'level 3-13-5-8'} +, {id:'13-5-9', text:'level 3-13-5-9'} +]} +, {id:'13-6-10', text:'level 2-13-6', item:[ + {id:'13-6-0', text:'level 3-13-6-0'} +, {id:'13-6-1', text:'level 3-13-6-1'} +, {id:'13-6-2', text:'level 3-13-6-2'} +, {id:'13-6-3', text:'level 3-13-6-3'} +, {id:'13-6-4', text:'level 3-13-6-4'} +, {id:'13-6-5', text:'level 3-13-6-5'} +, {id:'13-6-6', text:'level 3-13-6-6'} +, {id:'13-6-7', text:'level 3-13-6-7'} +, {id:'13-6-8', text:'level 3-13-6-8'} +, {id:'13-6-9', text:'level 3-13-6-9'} +]} +, {id:'13-7-10', text:'level 2-13-7', item:[ + {id:'13-7-0', text:'level 3-13-7-0'} +, {id:'13-7-1', text:'level 3-13-7-1'} +, {id:'13-7-2', text:'level 3-13-7-2'} +, {id:'13-7-3', text:'level 3-13-7-3'} +, {id:'13-7-4', text:'level 3-13-7-4'} +, {id:'13-7-5', text:'level 3-13-7-5'} +, {id:'13-7-6', text:'level 3-13-7-6'} +, {id:'13-7-7', text:'level 3-13-7-7'} +, {id:'13-7-8', text:'level 3-13-7-8'} +, {id:'13-7-9', text:'level 3-13-7-9'} +]} +, {id:'13-8-10', text:'level 2-13-8', item:[ + {id:'13-8-0', text:'level 3-13-8-0'} +, {id:'13-8-1', text:'level 3-13-8-1'} +, {id:'13-8-2', text:'level 3-13-8-2'} +, {id:'13-8-3', text:'level 3-13-8-3'} +, {id:'13-8-4', text:'level 3-13-8-4'} +, {id:'13-8-5', text:'level 3-13-8-5'} +, {id:'13-8-6', text:'level 3-13-8-6'} +, {id:'13-8-7', text:'level 3-13-8-7'} +, {id:'13-8-8', text:'level 3-13-8-8'} +, {id:'13-8-9', text:'level 3-13-8-9'} +]} +, {id:'13-9-10', text:'level 2-13-9', item:[ + {id:'13-9-0', text:'level 3-13-9-0'} +, {id:'13-9-1', text:'level 3-13-9-1'} +, {id:'13-9-2', text:'level 3-13-9-2'} +, {id:'13-9-3', text:'level 3-13-9-3'} +, {id:'13-9-4', text:'level 3-13-9-4'} +, {id:'13-9-5', text:'level 3-13-9-5'} +, {id:'13-9-6', text:'level 3-13-9-6'} +, {id:'13-9-7', text:'level 3-13-9-7'} +, {id:'13-9-8', text:'level 3-13-9-8'} +, {id:'13-9-9', text:'level 3-13-9-9'} +]} +, {id:'13-10-10', text:'level 2-13-10', item:[ + {id:'13-10-0', text:'level 3-13-10-0'} +, {id:'13-10-1', text:'level 3-13-10-1'} +, {id:'13-10-2', text:'level 3-13-10-2'} +, {id:'13-10-3', text:'level 3-13-10-3'} +, {id:'13-10-4', text:'level 3-13-10-4'} +, {id:'13-10-5', text:'level 3-13-10-5'} +, {id:'13-10-6', text:'level 3-13-10-6'} +, {id:'13-10-7', text:'level 3-13-10-7'} +, {id:'13-10-8', text:'level 3-13-10-8'} +, {id:'13-10-9', text:'level 3-13-10-9'} +]} +, {id:'13-11-10', text:'level 2-13-11', item:[ + {id:'13-11-0', text:'level 3-13-11-0'} +, {id:'13-11-1', text:'level 3-13-11-1'} +, {id:'13-11-2', text:'level 3-13-11-2'} +, {id:'13-11-3', text:'level 3-13-11-3'} +, {id:'13-11-4', text:'level 3-13-11-4'} +, {id:'13-11-5', text:'level 3-13-11-5'} +, {id:'13-11-6', text:'level 3-13-11-6'} +, {id:'13-11-7', text:'level 3-13-11-7'} +, {id:'13-11-8', text:'level 3-13-11-8'} +, {id:'13-11-9', text:'level 3-13-11-9'} +]} +, {id:'13-12-10', text:'level 2-13-12', item:[ + {id:'13-12-0', text:'level 3-13-12-0'} +, {id:'13-12-1', text:'level 3-13-12-1'} +, {id:'13-12-2', text:'level 3-13-12-2'} +, {id:'13-12-3', text:'level 3-13-12-3'} +, {id:'13-12-4', text:'level 3-13-12-4'} +, {id:'13-12-5', text:'level 3-13-12-5'} +, {id:'13-12-6', text:'level 3-13-12-6'} +, {id:'13-12-7', text:'level 3-13-12-7'} +, {id:'13-12-8', text:'level 3-13-12-8'} +, {id:'13-12-9', text:'level 3-13-12-9'} +]} +, {id:'13-13-10', text:'level 2-13-13', item:[ + {id:'13-13-0', text:'level 3-13-13-0'} +, {id:'13-13-1', text:'level 3-13-13-1'} +, {id:'13-13-2', text:'level 3-13-13-2'} +, {id:'13-13-3', text:'level 3-13-13-3'} +, {id:'13-13-4', text:'level 3-13-13-4'} +, {id:'13-13-5', text:'level 3-13-13-5'} +, {id:'13-13-6', text:'level 3-13-13-6'} +, {id:'13-13-7', text:'level 3-13-13-7'} +, {id:'13-13-8', text:'level 3-13-13-8'} +, {id:'13-13-9', text:'level 3-13-13-9'} +]} +, {id:'13-14-10', text:'level 2-13-14', item:[ + {id:'13-14-0', text:'level 3-13-14-0'} +, {id:'13-14-1', text:'level 3-13-14-1'} +, {id:'13-14-2', text:'level 3-13-14-2'} +, {id:'13-14-3', text:'level 3-13-14-3'} +, {id:'13-14-4', text:'level 3-13-14-4'} +, {id:'13-14-5', text:'level 3-13-14-5'} +, {id:'13-14-6', text:'level 3-13-14-6'} +, {id:'13-14-7', text:'level 3-13-14-7'} +, {id:'13-14-8', text:'level 3-13-14-8'} +, {id:'13-14-9', text:'level 3-13-14-9'} +]} +, {id:'13-15-10', text:'level 2-13-15', item:[ + {id:'13-15-0', text:'level 3-13-15-0'} +, {id:'13-15-1', text:'level 3-13-15-1'} +, {id:'13-15-2', text:'level 3-13-15-2'} +, {id:'13-15-3', text:'level 3-13-15-3'} +, {id:'13-15-4', text:'level 3-13-15-4'} +, {id:'13-15-5', text:'level 3-13-15-5'} +, {id:'13-15-6', text:'level 3-13-15-6'} +, {id:'13-15-7', text:'level 3-13-15-7'} +, {id:'13-15-8', text:'level 3-13-15-8'} +, {id:'13-15-9', text:'level 3-13-15-9'} +]} +, {id:'13-16-10', text:'level 2-13-16', item:[ + {id:'13-16-0', text:'level 3-13-16-0'} +, {id:'13-16-1', text:'level 3-13-16-1'} +, {id:'13-16-2', text:'level 3-13-16-2'} +, {id:'13-16-3', text:'level 3-13-16-3'} +, {id:'13-16-4', text:'level 3-13-16-4'} +, {id:'13-16-5', text:'level 3-13-16-5'} +, {id:'13-16-6', text:'level 3-13-16-6'} +, {id:'13-16-7', text:'level 3-13-16-7'} +, {id:'13-16-8', text:'level 3-13-16-8'} +, {id:'13-16-9', text:'level 3-13-16-9'} +]} +, {id:'13-17-10', text:'level 2-13-17', item:[ + {id:'13-17-0', text:'level 3-13-17-0'} +, {id:'13-17-1', text:'level 3-13-17-1'} +, {id:'13-17-2', text:'level 3-13-17-2'} +, {id:'13-17-3', text:'level 3-13-17-3'} +, {id:'13-17-4', text:'level 3-13-17-4'} +, {id:'13-17-5', text:'level 3-13-17-5'} +, {id:'13-17-6', text:'level 3-13-17-6'} +, {id:'13-17-7', text:'level 3-13-17-7'} +, {id:'13-17-8', text:'level 3-13-17-8'} +, {id:'13-17-9', text:'level 3-13-17-9'} +]} +, {id:'13-18-10', text:'level 2-13-18', item:[ + {id:'13-18-0', text:'level 3-13-18-0'} +, {id:'13-18-1', text:'level 3-13-18-1'} +, {id:'13-18-2', text:'level 3-13-18-2'} +, {id:'13-18-3', text:'level 3-13-18-3'} +, {id:'13-18-4', text:'level 3-13-18-4'} +, {id:'13-18-5', text:'level 3-13-18-5'} +, {id:'13-18-6', text:'level 3-13-18-6'} +, {id:'13-18-7', text:'level 3-13-18-7'} +, {id:'13-18-8', text:'level 3-13-18-8'} +, {id:'13-18-9', text:'level 3-13-18-9'} +]} +, {id:'13-19-10', text:'level 2-13-19', item:[ + {id:'13-19-0', text:'level 3-13-19-0'} +, {id:'13-19-1', text:'level 3-13-19-1'} +, {id:'13-19-2', text:'level 3-13-19-2'} +, {id:'13-19-3', text:'level 3-13-19-3'} +, {id:'13-19-4', text:'level 3-13-19-4'} +, {id:'13-19-5', text:'level 3-13-19-5'} +, {id:'13-19-6', text:'level 3-13-19-6'} +, {id:'13-19-7', text:'level 3-13-19-7'} +, {id:'13-19-8', text:'level 3-13-19-8'} +, {id:'13-19-9', text:'level 3-13-19-9'} +]} +]} +,{id:'14-20-10', text:'level 1-14', item:[ + {id:'14-0-10', text:'level 2-14-0', item:[ + {id:'14-0-0', text:'level 3-14-0-0'} +, {id:'14-0-1', text:'level 3-14-0-1'} +, {id:'14-0-2', text:'level 3-14-0-2'} +, {id:'14-0-3', text:'level 3-14-0-3'} +, {id:'14-0-4', text:'level 3-14-0-4'} +, {id:'14-0-5', text:'level 3-14-0-5'} +, {id:'14-0-6', text:'level 3-14-0-6'} +, {id:'14-0-7', text:'level 3-14-0-7'} +, {id:'14-0-8', text:'level 3-14-0-8'} +, {id:'14-0-9', text:'level 3-14-0-9'} +]} +, {id:'14-1-10', text:'level 2-14-1', item:[ + {id:'14-1-0', text:'level 3-14-1-0'} +, {id:'14-1-1', text:'level 3-14-1-1'} +, {id:'14-1-2', text:'level 3-14-1-2'} +, {id:'14-1-3', text:'level 3-14-1-3'} +, {id:'14-1-4', text:'level 3-14-1-4'} +, {id:'14-1-5', text:'level 3-14-1-5'} +, {id:'14-1-6', text:'level 3-14-1-6'} +, {id:'14-1-7', text:'level 3-14-1-7'} +, {id:'14-1-8', text:'level 3-14-1-8'} +, {id:'14-1-9', text:'level 3-14-1-9'} +]} +, {id:'14-2-10', text:'level 2-14-2', item:[ + {id:'14-2-0', text:'level 3-14-2-0'} +, {id:'14-2-1', text:'level 3-14-2-1'} +, {id:'14-2-2', text:'level 3-14-2-2'} +, {id:'14-2-3', text:'level 3-14-2-3'} +, {id:'14-2-4', text:'level 3-14-2-4'} +, {id:'14-2-5', text:'level 3-14-2-5'} +, {id:'14-2-6', text:'level 3-14-2-6'} +, {id:'14-2-7', text:'level 3-14-2-7'} +, {id:'14-2-8', text:'level 3-14-2-8'} +, {id:'14-2-9', text:'level 3-14-2-9'} +]} +, {id:'14-3-10', text:'level 2-14-3', item:[ + {id:'14-3-0', text:'level 3-14-3-0'} +, {id:'14-3-1', text:'level 3-14-3-1'} +, {id:'14-3-2', text:'level 3-14-3-2'} +, {id:'14-3-3', text:'level 3-14-3-3'} +, {id:'14-3-4', text:'level 3-14-3-4'} +, {id:'14-3-5', text:'level 3-14-3-5'} +, {id:'14-3-6', text:'level 3-14-3-6'} +, {id:'14-3-7', text:'level 3-14-3-7'} +, {id:'14-3-8', text:'level 3-14-3-8'} +, {id:'14-3-9', text:'level 3-14-3-9'} +]} +, {id:'14-4-10', text:'level 2-14-4', item:[ + {id:'14-4-0', text:'level 3-14-4-0'} +, {id:'14-4-1', text:'level 3-14-4-1'} +, {id:'14-4-2', text:'level 3-14-4-2'} +, {id:'14-4-3', text:'level 3-14-4-3'} +, {id:'14-4-4', text:'level 3-14-4-4'} +, {id:'14-4-5', text:'level 3-14-4-5'} +, {id:'14-4-6', text:'level 3-14-4-6'} +, {id:'14-4-7', text:'level 3-14-4-7'} +, {id:'14-4-8', text:'level 3-14-4-8'} +, {id:'14-4-9', text:'level 3-14-4-9'} +]} +, {id:'14-5-10', text:'level 2-14-5', item:[ + {id:'14-5-0', text:'level 3-14-5-0'} +, {id:'14-5-1', text:'level 3-14-5-1'} +, {id:'14-5-2', text:'level 3-14-5-2'} +, {id:'14-5-3', text:'level 3-14-5-3'} +, {id:'14-5-4', text:'level 3-14-5-4'} +, {id:'14-5-5', text:'level 3-14-5-5'} +, {id:'14-5-6', text:'level 3-14-5-6'} +, {id:'14-5-7', text:'level 3-14-5-7'} +, {id:'14-5-8', text:'level 3-14-5-8'} +, {id:'14-5-9', text:'level 3-14-5-9'} +]} +, {id:'14-6-10', text:'level 2-14-6', item:[ + {id:'14-6-0', text:'level 3-14-6-0'} +, {id:'14-6-1', text:'level 3-14-6-1'} +, {id:'14-6-2', text:'level 3-14-6-2'} +, {id:'14-6-3', text:'level 3-14-6-3'} +, {id:'14-6-4', text:'level 3-14-6-4'} +, {id:'14-6-5', text:'level 3-14-6-5'} +, {id:'14-6-6', text:'level 3-14-6-6'} +, {id:'14-6-7', text:'level 3-14-6-7'} +, {id:'14-6-8', text:'level 3-14-6-8'} +, {id:'14-6-9', text:'level 3-14-6-9'} +]} +, {id:'14-7-10', text:'level 2-14-7', item:[ + {id:'14-7-0', text:'level 3-14-7-0'} +, {id:'14-7-1', text:'level 3-14-7-1'} +, {id:'14-7-2', text:'level 3-14-7-2'} +, {id:'14-7-3', text:'level 3-14-7-3'} +, {id:'14-7-4', text:'level 3-14-7-4'} +, {id:'14-7-5', text:'level 3-14-7-5'} +, {id:'14-7-6', text:'level 3-14-7-6'} +, {id:'14-7-7', text:'level 3-14-7-7'} +, {id:'14-7-8', text:'level 3-14-7-8'} +, {id:'14-7-9', text:'level 3-14-7-9'} +]} +, {id:'14-8-10', text:'level 2-14-8', item:[ + {id:'14-8-0', text:'level 3-14-8-0'} +, {id:'14-8-1', text:'level 3-14-8-1'} +, {id:'14-8-2', text:'level 3-14-8-2'} +, {id:'14-8-3', text:'level 3-14-8-3'} +, {id:'14-8-4', text:'level 3-14-8-4'} +, {id:'14-8-5', text:'level 3-14-8-5'} +, {id:'14-8-6', text:'level 3-14-8-6'} +, {id:'14-8-7', text:'level 3-14-8-7'} +, {id:'14-8-8', text:'level 3-14-8-8'} +, {id:'14-8-9', text:'level 3-14-8-9'} +]} +, {id:'14-9-10', text:'level 2-14-9', item:[ + {id:'14-9-0', text:'level 3-14-9-0'} +, {id:'14-9-1', text:'level 3-14-9-1'} +, {id:'14-9-2', text:'level 3-14-9-2'} +, {id:'14-9-3', text:'level 3-14-9-3'} +, {id:'14-9-4', text:'level 3-14-9-4'} +, {id:'14-9-5', text:'level 3-14-9-5'} +, {id:'14-9-6', text:'level 3-14-9-6'} +, {id:'14-9-7', text:'level 3-14-9-7'} +, {id:'14-9-8', text:'level 3-14-9-8'} +, {id:'14-9-9', text:'level 3-14-9-9'} +]} +, {id:'14-10-10', text:'level 2-14-10', item:[ + {id:'14-10-0', text:'level 3-14-10-0'} +, {id:'14-10-1', text:'level 3-14-10-1'} +, {id:'14-10-2', text:'level 3-14-10-2'} +, {id:'14-10-3', text:'level 3-14-10-3'} +, {id:'14-10-4', text:'level 3-14-10-4'} +, {id:'14-10-5', text:'level 3-14-10-5'} +, {id:'14-10-6', text:'level 3-14-10-6'} +, {id:'14-10-7', text:'level 3-14-10-7'} +, {id:'14-10-8', text:'level 3-14-10-8'} +, {id:'14-10-9', text:'level 3-14-10-9'} +]} +, {id:'14-11-10', text:'level 2-14-11', item:[ + {id:'14-11-0', text:'level 3-14-11-0'} +, {id:'14-11-1', text:'level 3-14-11-1'} +, {id:'14-11-2', text:'level 3-14-11-2'} +, {id:'14-11-3', text:'level 3-14-11-3'} +, {id:'14-11-4', text:'level 3-14-11-4'} +, {id:'14-11-5', text:'level 3-14-11-5'} +, {id:'14-11-6', text:'level 3-14-11-6'} +, {id:'14-11-7', text:'level 3-14-11-7'} +, {id:'14-11-8', text:'level 3-14-11-8'} +, {id:'14-11-9', text:'level 3-14-11-9'} +]} +, {id:'14-12-10', text:'level 2-14-12', item:[ + {id:'14-12-0', text:'level 3-14-12-0'} +, {id:'14-12-1', text:'level 3-14-12-1'} +, {id:'14-12-2', text:'level 3-14-12-2'} +, {id:'14-12-3', text:'level 3-14-12-3'} +, {id:'14-12-4', text:'level 3-14-12-4'} +, {id:'14-12-5', text:'level 3-14-12-5'} +, {id:'14-12-6', text:'level 3-14-12-6'} +, {id:'14-12-7', text:'level 3-14-12-7'} +, {id:'14-12-8', text:'level 3-14-12-8'} +, {id:'14-12-9', text:'level 3-14-12-9'} +]} +, {id:'14-13-10', text:'level 2-14-13', item:[ + {id:'14-13-0', text:'level 3-14-13-0'} +, {id:'14-13-1', text:'level 3-14-13-1'} +, {id:'14-13-2', text:'level 3-14-13-2'} +, {id:'14-13-3', text:'level 3-14-13-3'} +, {id:'14-13-4', text:'level 3-14-13-4'} +, {id:'14-13-5', text:'level 3-14-13-5'} +, {id:'14-13-6', text:'level 3-14-13-6'} +, {id:'14-13-7', text:'level 3-14-13-7'} +, {id:'14-13-8', text:'level 3-14-13-8'} +, {id:'14-13-9', text:'level 3-14-13-9'} +]} +, {id:'14-14-10', text:'level 2-14-14', item:[ + {id:'14-14-0', text:'level 3-14-14-0'} +, {id:'14-14-1', text:'level 3-14-14-1'} +, {id:'14-14-2', text:'level 3-14-14-2'} +, {id:'14-14-3', text:'level 3-14-14-3'} +, {id:'14-14-4', text:'level 3-14-14-4'} +, {id:'14-14-5', text:'level 3-14-14-5'} +, {id:'14-14-6', text:'level 3-14-14-6'} +, {id:'14-14-7', text:'level 3-14-14-7'} +, {id:'14-14-8', text:'level 3-14-14-8'} +, {id:'14-14-9', text:'level 3-14-14-9'} +]} +, {id:'14-15-10', text:'level 2-14-15', item:[ + {id:'14-15-0', text:'level 3-14-15-0'} +, {id:'14-15-1', text:'level 3-14-15-1'} +, {id:'14-15-2', text:'level 3-14-15-2'} +, {id:'14-15-3', text:'level 3-14-15-3'} +, {id:'14-15-4', text:'level 3-14-15-4'} +, {id:'14-15-5', text:'level 3-14-15-5'} +, {id:'14-15-6', text:'level 3-14-15-6'} +, {id:'14-15-7', text:'level 3-14-15-7'} +, {id:'14-15-8', text:'level 3-14-15-8'} +, {id:'14-15-9', text:'level 3-14-15-9'} +]} +, {id:'14-16-10', text:'level 2-14-16', item:[ + {id:'14-16-0', text:'level 3-14-16-0'} +, {id:'14-16-1', text:'level 3-14-16-1'} +, {id:'14-16-2', text:'level 3-14-16-2'} +, {id:'14-16-3', text:'level 3-14-16-3'} +, {id:'14-16-4', text:'level 3-14-16-4'} +, {id:'14-16-5', text:'level 3-14-16-5'} +, {id:'14-16-6', text:'level 3-14-16-6'} +, {id:'14-16-7', text:'level 3-14-16-7'} +, {id:'14-16-8', text:'level 3-14-16-8'} +, {id:'14-16-9', text:'level 3-14-16-9'} +]} +, {id:'14-17-10', text:'level 2-14-17', item:[ + {id:'14-17-0', text:'level 3-14-17-0'} +, {id:'14-17-1', text:'level 3-14-17-1'} +, {id:'14-17-2', text:'level 3-14-17-2'} +, {id:'14-17-3', text:'level 3-14-17-3'} +, {id:'14-17-4', text:'level 3-14-17-4'} +, {id:'14-17-5', text:'level 3-14-17-5'} +, {id:'14-17-6', text:'level 3-14-17-6'} +, {id:'14-17-7', text:'level 3-14-17-7'} +, {id:'14-17-8', text:'level 3-14-17-8'} +, {id:'14-17-9', text:'level 3-14-17-9'} +]} +, {id:'14-18-10', text:'level 2-14-18', item:[ + {id:'14-18-0', text:'level 3-14-18-0'} +, {id:'14-18-1', text:'level 3-14-18-1'} +, {id:'14-18-2', text:'level 3-14-18-2'} +, {id:'14-18-3', text:'level 3-14-18-3'} +, {id:'14-18-4', text:'level 3-14-18-4'} +, {id:'14-18-5', text:'level 3-14-18-5'} +, {id:'14-18-6', text:'level 3-14-18-6'} +, {id:'14-18-7', text:'level 3-14-18-7'} +, {id:'14-18-8', text:'level 3-14-18-8'} +, {id:'14-18-9', text:'level 3-14-18-9'} +]} +, {id:'14-19-10', text:'level 2-14-19', item:[ + {id:'14-19-0', text:'level 3-14-19-0'} +, {id:'14-19-1', text:'level 3-14-19-1'} +, {id:'14-19-2', text:'level 3-14-19-2'} +, {id:'14-19-3', text:'level 3-14-19-3'} +, {id:'14-19-4', text:'level 3-14-19-4'} +, {id:'14-19-5', text:'level 3-14-19-5'} +, {id:'14-19-6', text:'level 3-14-19-6'} +, {id:'14-19-7', text:'level 3-14-19-7'} +, {id:'14-19-8', text:'level 3-14-19-8'} +, {id:'14-19-9', text:'level 3-14-19-9'} +]} +]} +,{id:'15-20-10', text:'level 1-15', item:[ + {id:'15-0-10', text:'level 2-15-0', item:[ + {id:'15-0-0', text:'level 3-15-0-0'} +, {id:'15-0-1', text:'level 3-15-0-1'} +, {id:'15-0-2', text:'level 3-15-0-2'} +, {id:'15-0-3', text:'level 3-15-0-3'} +, {id:'15-0-4', text:'level 3-15-0-4'} +, {id:'15-0-5', text:'level 3-15-0-5'} +, {id:'15-0-6', text:'level 3-15-0-6'} +, {id:'15-0-7', text:'level 3-15-0-7'} +, {id:'15-0-8', text:'level 3-15-0-8'} +, {id:'15-0-9', text:'level 3-15-0-9'} +]} +, {id:'15-1-10', text:'level 2-15-1', item:[ + {id:'15-1-0', text:'level 3-15-1-0'} +, {id:'15-1-1', text:'level 3-15-1-1'} +, {id:'15-1-2', text:'level 3-15-1-2'} +, {id:'15-1-3', text:'level 3-15-1-3'} +, {id:'15-1-4', text:'level 3-15-1-4'} +, {id:'15-1-5', text:'level 3-15-1-5'} +, {id:'15-1-6', text:'level 3-15-1-6'} +, {id:'15-1-7', text:'level 3-15-1-7'} +, {id:'15-1-8', text:'level 3-15-1-8'} +, {id:'15-1-9', text:'level 3-15-1-9'} +]} +, {id:'15-2-10', text:'level 2-15-2', item:[ + {id:'15-2-0', text:'level 3-15-2-0'} +, {id:'15-2-1', text:'level 3-15-2-1'} +, {id:'15-2-2', text:'level 3-15-2-2'} +, {id:'15-2-3', text:'level 3-15-2-3'} +, {id:'15-2-4', text:'level 3-15-2-4'} +, {id:'15-2-5', text:'level 3-15-2-5'} +, {id:'15-2-6', text:'level 3-15-2-6'} +, {id:'15-2-7', text:'level 3-15-2-7'} +, {id:'15-2-8', text:'level 3-15-2-8'} +, {id:'15-2-9', text:'level 3-15-2-9'} +]} +, {id:'15-3-10', text:'level 2-15-3', item:[ + {id:'15-3-0', text:'level 3-15-3-0'} +, {id:'15-3-1', text:'level 3-15-3-1'} +, {id:'15-3-2', text:'level 3-15-3-2'} +, {id:'15-3-3', text:'level 3-15-3-3'} +, {id:'15-3-4', text:'level 3-15-3-4'} +, {id:'15-3-5', text:'level 3-15-3-5'} +, {id:'15-3-6', text:'level 3-15-3-6'} +, {id:'15-3-7', text:'level 3-15-3-7'} +, {id:'15-3-8', text:'level 3-15-3-8'} +, {id:'15-3-9', text:'level 3-15-3-9'} +]} +, {id:'15-4-10', text:'level 2-15-4', item:[ + {id:'15-4-0', text:'level 3-15-4-0'} +, {id:'15-4-1', text:'level 3-15-4-1'} +, {id:'15-4-2', text:'level 3-15-4-2'} +, {id:'15-4-3', text:'level 3-15-4-3'} +, {id:'15-4-4', text:'level 3-15-4-4'} +, {id:'15-4-5', text:'level 3-15-4-5'} +, {id:'15-4-6', text:'level 3-15-4-6'} +, {id:'15-4-7', text:'level 3-15-4-7'} +, {id:'15-4-8', text:'level 3-15-4-8'} +, {id:'15-4-9', text:'level 3-15-4-9'} +]} +, {id:'15-5-10', text:'level 2-15-5', item:[ + {id:'15-5-0', text:'level 3-15-5-0'} +, {id:'15-5-1', text:'level 3-15-5-1'} +, {id:'15-5-2', text:'level 3-15-5-2'} +, {id:'15-5-3', text:'level 3-15-5-3'} +, {id:'15-5-4', text:'level 3-15-5-4'} +, {id:'15-5-5', text:'level 3-15-5-5'} +, {id:'15-5-6', text:'level 3-15-5-6'} +, {id:'15-5-7', text:'level 3-15-5-7'} +, {id:'15-5-8', text:'level 3-15-5-8'} +, {id:'15-5-9', text:'level 3-15-5-9'} +]} +, {id:'15-6-10', text:'level 2-15-6', item:[ + {id:'15-6-0', text:'level 3-15-6-0'} +, {id:'15-6-1', text:'level 3-15-6-1'} +, {id:'15-6-2', text:'level 3-15-6-2'} +, {id:'15-6-3', text:'level 3-15-6-3'} +, {id:'15-6-4', text:'level 3-15-6-4'} +, {id:'15-6-5', text:'level 3-15-6-5'} +, {id:'15-6-6', text:'level 3-15-6-6'} +, {id:'15-6-7', text:'level 3-15-6-7'} +, {id:'15-6-8', text:'level 3-15-6-8'} +, {id:'15-6-9', text:'level 3-15-6-9'} +]} +, {id:'15-7-10', text:'level 2-15-7', item:[ + {id:'15-7-0', text:'level 3-15-7-0'} +, {id:'15-7-1', text:'level 3-15-7-1'} +, {id:'15-7-2', text:'level 3-15-7-2'} +, {id:'15-7-3', text:'level 3-15-7-3'} +, {id:'15-7-4', text:'level 3-15-7-4'} +, {id:'15-7-5', text:'level 3-15-7-5'} +, {id:'15-7-6', text:'level 3-15-7-6'} +, {id:'15-7-7', text:'level 3-15-7-7'} +, {id:'15-7-8', text:'level 3-15-7-8'} +, {id:'15-7-9', text:'level 3-15-7-9'} +]} +, {id:'15-8-10', text:'level 2-15-8', item:[ + {id:'15-8-0', text:'level 3-15-8-0'} +, {id:'15-8-1', text:'level 3-15-8-1'} +, {id:'15-8-2', text:'level 3-15-8-2'} +, {id:'15-8-3', text:'level 3-15-8-3'} +, {id:'15-8-4', text:'level 3-15-8-4'} +, {id:'15-8-5', text:'level 3-15-8-5'} +, {id:'15-8-6', text:'level 3-15-8-6'} +, {id:'15-8-7', text:'level 3-15-8-7'} +, {id:'15-8-8', text:'level 3-15-8-8'} +, {id:'15-8-9', text:'level 3-15-8-9'} +]} +, {id:'15-9-10', text:'level 2-15-9', item:[ + {id:'15-9-0', text:'level 3-15-9-0'} +, {id:'15-9-1', text:'level 3-15-9-1'} +, {id:'15-9-2', text:'level 3-15-9-2'} +, {id:'15-9-3', text:'level 3-15-9-3'} +, {id:'15-9-4', text:'level 3-15-9-4'} +, {id:'15-9-5', text:'level 3-15-9-5'} +, {id:'15-9-6', text:'level 3-15-9-6'} +, {id:'15-9-7', text:'level 3-15-9-7'} +, {id:'15-9-8', text:'level 3-15-9-8'} +, {id:'15-9-9', text:'level 3-15-9-9'} +]} +, {id:'15-10-10', text:'level 2-15-10', item:[ + {id:'15-10-0', text:'level 3-15-10-0'} +, {id:'15-10-1', text:'level 3-15-10-1'} +, {id:'15-10-2', text:'level 3-15-10-2'} +, {id:'15-10-3', text:'level 3-15-10-3'} +, {id:'15-10-4', text:'level 3-15-10-4'} +, {id:'15-10-5', text:'level 3-15-10-5'} +, {id:'15-10-6', text:'level 3-15-10-6'} +, {id:'15-10-7', text:'level 3-15-10-7'} +, {id:'15-10-8', text:'level 3-15-10-8'} +, {id:'15-10-9', text:'level 3-15-10-9'} +]} +, {id:'15-11-10', text:'level 2-15-11', item:[ + {id:'15-11-0', text:'level 3-15-11-0'} +, {id:'15-11-1', text:'level 3-15-11-1'} +, {id:'15-11-2', text:'level 3-15-11-2'} +, {id:'15-11-3', text:'level 3-15-11-3'} +, {id:'15-11-4', text:'level 3-15-11-4'} +, {id:'15-11-5', text:'level 3-15-11-5'} +, {id:'15-11-6', text:'level 3-15-11-6'} +, {id:'15-11-7', text:'level 3-15-11-7'} +, {id:'15-11-8', text:'level 3-15-11-8'} +, {id:'15-11-9', text:'level 3-15-11-9'} +]} +, {id:'15-12-10', text:'level 2-15-12', item:[ + {id:'15-12-0', text:'level 3-15-12-0'} +, {id:'15-12-1', text:'level 3-15-12-1'} +, {id:'15-12-2', text:'level 3-15-12-2'} +, {id:'15-12-3', text:'level 3-15-12-3'} +, {id:'15-12-4', text:'level 3-15-12-4'} +, {id:'15-12-5', text:'level 3-15-12-5'} +, {id:'15-12-6', text:'level 3-15-12-6'} +, {id:'15-12-7', text:'level 3-15-12-7'} +, {id:'15-12-8', text:'level 3-15-12-8'} +, {id:'15-12-9', text:'level 3-15-12-9'} +]} +, {id:'15-13-10', text:'level 2-15-13', item:[ + {id:'15-13-0', text:'level 3-15-13-0'} +, {id:'15-13-1', text:'level 3-15-13-1'} +, {id:'15-13-2', text:'level 3-15-13-2'} +, {id:'15-13-3', text:'level 3-15-13-3'} +, {id:'15-13-4', text:'level 3-15-13-4'} +, {id:'15-13-5', text:'level 3-15-13-5'} +, {id:'15-13-6', text:'level 3-15-13-6'} +, {id:'15-13-7', text:'level 3-15-13-7'} +, {id:'15-13-8', text:'level 3-15-13-8'} +, {id:'15-13-9', text:'level 3-15-13-9'} +]} +, {id:'15-14-10', text:'level 2-15-14', item:[ + {id:'15-14-0', text:'level 3-15-14-0'} +, {id:'15-14-1', text:'level 3-15-14-1'} +, {id:'15-14-2', text:'level 3-15-14-2'} +, {id:'15-14-3', text:'level 3-15-14-3'} +, {id:'15-14-4', text:'level 3-15-14-4'} +, {id:'15-14-5', text:'level 3-15-14-5'} +, {id:'15-14-6', text:'level 3-15-14-6'} +, {id:'15-14-7', text:'level 3-15-14-7'} +, {id:'15-14-8', text:'level 3-15-14-8'} +, {id:'15-14-9', text:'level 3-15-14-9'} +]} +, {id:'15-15-10', text:'level 2-15-15', item:[ + {id:'15-15-0', text:'level 3-15-15-0'} +, {id:'15-15-1', text:'level 3-15-15-1'} +, {id:'15-15-2', text:'level 3-15-15-2'} +, {id:'15-15-3', text:'level 3-15-15-3'} +, {id:'15-15-4', text:'level 3-15-15-4'} +, {id:'15-15-5', text:'level 3-15-15-5'} +, {id:'15-15-6', text:'level 3-15-15-6'} +, {id:'15-15-7', text:'level 3-15-15-7'} +, {id:'15-15-8', text:'level 3-15-15-8'} +, {id:'15-15-9', text:'level 3-15-15-9'} +]} +, {id:'15-16-10', text:'level 2-15-16', item:[ + {id:'15-16-0', text:'level 3-15-16-0'} +, {id:'15-16-1', text:'level 3-15-16-1'} +, {id:'15-16-2', text:'level 3-15-16-2'} +, {id:'15-16-3', text:'level 3-15-16-3'} +, {id:'15-16-4', text:'level 3-15-16-4'} +, {id:'15-16-5', text:'level 3-15-16-5'} +, {id:'15-16-6', text:'level 3-15-16-6'} +, {id:'15-16-7', text:'level 3-15-16-7'} +, {id:'15-16-8', text:'level 3-15-16-8'} +, {id:'15-16-9', text:'level 3-15-16-9'} +]} +, {id:'15-17-10', text:'level 2-15-17', item:[ + {id:'15-17-0', text:'level 3-15-17-0'} +, {id:'15-17-1', text:'level 3-15-17-1'} +, {id:'15-17-2', text:'level 3-15-17-2'} +, {id:'15-17-3', text:'level 3-15-17-3'} +, {id:'15-17-4', text:'level 3-15-17-4'} +, {id:'15-17-5', text:'level 3-15-17-5'} +, {id:'15-17-6', text:'level 3-15-17-6'} +, {id:'15-17-7', text:'level 3-15-17-7'} +, {id:'15-17-8', text:'level 3-15-17-8'} +, {id:'15-17-9', text:'level 3-15-17-9'} +]} +, {id:'15-18-10', text:'level 2-15-18', item:[ + {id:'15-18-0', text:'level 3-15-18-0'} +, {id:'15-18-1', text:'level 3-15-18-1'} +, {id:'15-18-2', text:'level 3-15-18-2'} +, {id:'15-18-3', text:'level 3-15-18-3'} +, {id:'15-18-4', text:'level 3-15-18-4'} +, {id:'15-18-5', text:'level 3-15-18-5'} +, {id:'15-18-6', text:'level 3-15-18-6'} +, {id:'15-18-7', text:'level 3-15-18-7'} +, {id:'15-18-8', text:'level 3-15-18-8'} +, {id:'15-18-9', text:'level 3-15-18-9'} +]} +, {id:'15-19-10', text:'level 2-15-19', item:[ + {id:'15-19-0', text:'level 3-15-19-0'} +, {id:'15-19-1', text:'level 3-15-19-1'} +, {id:'15-19-2', text:'level 3-15-19-2'} +, {id:'15-19-3', text:'level 3-15-19-3'} +, {id:'15-19-4', text:'level 3-15-19-4'} +, {id:'15-19-5', text:'level 3-15-19-5'} +, {id:'15-19-6', text:'level 3-15-19-6'} +, {id:'15-19-7', text:'level 3-15-19-7'} +, {id:'15-19-8', text:'level 3-15-19-8'} +, {id:'15-19-9', text:'level 3-15-19-9'} +]} +]} +,{id:'16-20-10', text:'level 1-16', item:[ + {id:'16-0-10', text:'level 2-16-0', item:[ + {id:'16-0-0', text:'level 3-16-0-0'} +, {id:'16-0-1', text:'level 3-16-0-1'} +, {id:'16-0-2', text:'level 3-16-0-2'} +, {id:'16-0-3', text:'level 3-16-0-3'} +, {id:'16-0-4', text:'level 3-16-0-4'} +, {id:'16-0-5', text:'level 3-16-0-5'} +, {id:'16-0-6', text:'level 3-16-0-6'} +, {id:'16-0-7', text:'level 3-16-0-7'} +, {id:'16-0-8', text:'level 3-16-0-8'} +, {id:'16-0-9', text:'level 3-16-0-9'} +]} +, {id:'16-1-10', text:'level 2-16-1', item:[ + {id:'16-1-0', text:'level 3-16-1-0'} +, {id:'16-1-1', text:'level 3-16-1-1'} +, {id:'16-1-2', text:'level 3-16-1-2'} +, {id:'16-1-3', text:'level 3-16-1-3'} +, {id:'16-1-4', text:'level 3-16-1-4'} +, {id:'16-1-5', text:'level 3-16-1-5'} +, {id:'16-1-6', text:'level 3-16-1-6'} +, {id:'16-1-7', text:'level 3-16-1-7'} +, {id:'16-1-8', text:'level 3-16-1-8'} +, {id:'16-1-9', text:'level 3-16-1-9'} +]} +, {id:'16-2-10', text:'level 2-16-2', item:[ + {id:'16-2-0', text:'level 3-16-2-0'} +, {id:'16-2-1', text:'level 3-16-2-1'} +, {id:'16-2-2', text:'level 3-16-2-2'} +, {id:'16-2-3', text:'level 3-16-2-3'} +, {id:'16-2-4', text:'level 3-16-2-4'} +, {id:'16-2-5', text:'level 3-16-2-5'} +, {id:'16-2-6', text:'level 3-16-2-6'} +, {id:'16-2-7', text:'level 3-16-2-7'} +, {id:'16-2-8', text:'level 3-16-2-8'} +, {id:'16-2-9', text:'level 3-16-2-9'} +]} +, {id:'16-3-10', text:'level 2-16-3', item:[ + {id:'16-3-0', text:'level 3-16-3-0'} +, {id:'16-3-1', text:'level 3-16-3-1'} +, {id:'16-3-2', text:'level 3-16-3-2'} +, {id:'16-3-3', text:'level 3-16-3-3'} +, {id:'16-3-4', text:'level 3-16-3-4'} +, {id:'16-3-5', text:'level 3-16-3-5'} +, {id:'16-3-6', text:'level 3-16-3-6'} +, {id:'16-3-7', text:'level 3-16-3-7'} +, {id:'16-3-8', text:'level 3-16-3-8'} +, {id:'16-3-9', text:'level 3-16-3-9'} +]} +, {id:'16-4-10', text:'level 2-16-4', item:[ + {id:'16-4-0', text:'level 3-16-4-0'} +, {id:'16-4-1', text:'level 3-16-4-1'} +, {id:'16-4-2', text:'level 3-16-4-2'} +, {id:'16-4-3', text:'level 3-16-4-3'} +, {id:'16-4-4', text:'level 3-16-4-4'} +, {id:'16-4-5', text:'level 3-16-4-5'} +, {id:'16-4-6', text:'level 3-16-4-6'} +, {id:'16-4-7', text:'level 3-16-4-7'} +, {id:'16-4-8', text:'level 3-16-4-8'} +, {id:'16-4-9', text:'level 3-16-4-9'} +]} +, {id:'16-5-10', text:'level 2-16-5', item:[ + {id:'16-5-0', text:'level 3-16-5-0'} +, {id:'16-5-1', text:'level 3-16-5-1'} +, {id:'16-5-2', text:'level 3-16-5-2'} +, {id:'16-5-3', text:'level 3-16-5-3'} +, {id:'16-5-4', text:'level 3-16-5-4'} +, {id:'16-5-5', text:'level 3-16-5-5'} +, {id:'16-5-6', text:'level 3-16-5-6'} +, {id:'16-5-7', text:'level 3-16-5-7'} +, {id:'16-5-8', text:'level 3-16-5-8'} +, {id:'16-5-9', text:'level 3-16-5-9'} +]} +, {id:'16-6-10', text:'level 2-16-6', item:[ + {id:'16-6-0', text:'level 3-16-6-0'} +, {id:'16-6-1', text:'level 3-16-6-1'} +, {id:'16-6-2', text:'level 3-16-6-2'} +, {id:'16-6-3', text:'level 3-16-6-3'} +, {id:'16-6-4', text:'level 3-16-6-4'} +, {id:'16-6-5', text:'level 3-16-6-5'} +, {id:'16-6-6', text:'level 3-16-6-6'} +, {id:'16-6-7', text:'level 3-16-6-7'} +, {id:'16-6-8', text:'level 3-16-6-8'} +, {id:'16-6-9', text:'level 3-16-6-9'} +]} +, {id:'16-7-10', text:'level 2-16-7', item:[ + {id:'16-7-0', text:'level 3-16-7-0'} +, {id:'16-7-1', text:'level 3-16-7-1'} +, {id:'16-7-2', text:'level 3-16-7-2'} +, {id:'16-7-3', text:'level 3-16-7-3'} +, {id:'16-7-4', text:'level 3-16-7-4'} +, {id:'16-7-5', text:'level 3-16-7-5'} +, {id:'16-7-6', text:'level 3-16-7-6'} +, {id:'16-7-7', text:'level 3-16-7-7'} +, {id:'16-7-8', text:'level 3-16-7-8'} +, {id:'16-7-9', text:'level 3-16-7-9'} +]} +, {id:'16-8-10', text:'level 2-16-8', item:[ + {id:'16-8-0', text:'level 3-16-8-0'} +, {id:'16-8-1', text:'level 3-16-8-1'} +, {id:'16-8-2', text:'level 3-16-8-2'} +, {id:'16-8-3', text:'level 3-16-8-3'} +, {id:'16-8-4', text:'level 3-16-8-4'} +, {id:'16-8-5', text:'level 3-16-8-5'} +, {id:'16-8-6', text:'level 3-16-8-6'} +, {id:'16-8-7', text:'level 3-16-8-7'} +, {id:'16-8-8', text:'level 3-16-8-8'} +, {id:'16-8-9', text:'level 3-16-8-9'} +]} +, {id:'16-9-10', text:'level 2-16-9', item:[ + {id:'16-9-0', text:'level 3-16-9-0'} +, {id:'16-9-1', text:'level 3-16-9-1'} +, {id:'16-9-2', text:'level 3-16-9-2'} +, {id:'16-9-3', text:'level 3-16-9-3'} +, {id:'16-9-4', text:'level 3-16-9-4'} +, {id:'16-9-5', text:'level 3-16-9-5'} +, {id:'16-9-6', text:'level 3-16-9-6'} +, {id:'16-9-7', text:'level 3-16-9-7'} +, {id:'16-9-8', text:'level 3-16-9-8'} +, {id:'16-9-9', text:'level 3-16-9-9'} +]} +, {id:'16-10-10', text:'level 2-16-10', item:[ + {id:'16-10-0', text:'level 3-16-10-0'} +, {id:'16-10-1', text:'level 3-16-10-1'} +, {id:'16-10-2', text:'level 3-16-10-2'} +, {id:'16-10-3', text:'level 3-16-10-3'} +, {id:'16-10-4', text:'level 3-16-10-4'} +, {id:'16-10-5', text:'level 3-16-10-5'} +, {id:'16-10-6', text:'level 3-16-10-6'} +, {id:'16-10-7', text:'level 3-16-10-7'} +, {id:'16-10-8', text:'level 3-16-10-8'} +, {id:'16-10-9', text:'level 3-16-10-9'} +]} +, {id:'16-11-10', text:'level 2-16-11', item:[ + {id:'16-11-0', text:'level 3-16-11-0'} +, {id:'16-11-1', text:'level 3-16-11-1'} +, {id:'16-11-2', text:'level 3-16-11-2'} +, {id:'16-11-3', text:'level 3-16-11-3'} +, {id:'16-11-4', text:'level 3-16-11-4'} +, {id:'16-11-5', text:'level 3-16-11-5'} +, {id:'16-11-6', text:'level 3-16-11-6'} +, {id:'16-11-7', text:'level 3-16-11-7'} +, {id:'16-11-8', text:'level 3-16-11-8'} +, {id:'16-11-9', text:'level 3-16-11-9'} +]} +, {id:'16-12-10', text:'level 2-16-12', item:[ + {id:'16-12-0', text:'level 3-16-12-0'} +, {id:'16-12-1', text:'level 3-16-12-1'} +, {id:'16-12-2', text:'level 3-16-12-2'} +, {id:'16-12-3', text:'level 3-16-12-3'} +, {id:'16-12-4', text:'level 3-16-12-4'} +, {id:'16-12-5', text:'level 3-16-12-5'} +, {id:'16-12-6', text:'level 3-16-12-6'} +, {id:'16-12-7', text:'level 3-16-12-7'} +, {id:'16-12-8', text:'level 3-16-12-8'} +, {id:'16-12-9', text:'level 3-16-12-9'} +]} +, {id:'16-13-10', text:'level 2-16-13', item:[ + {id:'16-13-0', text:'level 3-16-13-0'} +, {id:'16-13-1', text:'level 3-16-13-1'} +, {id:'16-13-2', text:'level 3-16-13-2'} +, {id:'16-13-3', text:'level 3-16-13-3'} +, {id:'16-13-4', text:'level 3-16-13-4'} +, {id:'16-13-5', text:'level 3-16-13-5'} +, {id:'16-13-6', text:'level 3-16-13-6'} +, {id:'16-13-7', text:'level 3-16-13-7'} +, {id:'16-13-8', text:'level 3-16-13-8'} +, {id:'16-13-9', text:'level 3-16-13-9'} +]} +, {id:'16-14-10', text:'level 2-16-14', item:[ + {id:'16-14-0', text:'level 3-16-14-0'} +, {id:'16-14-1', text:'level 3-16-14-1'} +, {id:'16-14-2', text:'level 3-16-14-2'} +, {id:'16-14-3', text:'level 3-16-14-3'} +, {id:'16-14-4', text:'level 3-16-14-4'} +, {id:'16-14-5', text:'level 3-16-14-5'} +, {id:'16-14-6', text:'level 3-16-14-6'} +, {id:'16-14-7', text:'level 3-16-14-7'} +, {id:'16-14-8', text:'level 3-16-14-8'} +, {id:'16-14-9', text:'level 3-16-14-9'} +]} +, {id:'16-15-10', text:'level 2-16-15', item:[ + {id:'16-15-0', text:'level 3-16-15-0'} +, {id:'16-15-1', text:'level 3-16-15-1'} +, {id:'16-15-2', text:'level 3-16-15-2'} +, {id:'16-15-3', text:'level 3-16-15-3'} +, {id:'16-15-4', text:'level 3-16-15-4'} +, {id:'16-15-5', text:'level 3-16-15-5'} +, {id:'16-15-6', text:'level 3-16-15-6'} +, {id:'16-15-7', text:'level 3-16-15-7'} +, {id:'16-15-8', text:'level 3-16-15-8'} +, {id:'16-15-9', text:'level 3-16-15-9'} +]} +, {id:'16-16-10', text:'level 2-16-16', item:[ + {id:'16-16-0', text:'level 3-16-16-0'} +, {id:'16-16-1', text:'level 3-16-16-1'} +, {id:'16-16-2', text:'level 3-16-16-2'} +, {id:'16-16-3', text:'level 3-16-16-3'} +, {id:'16-16-4', text:'level 3-16-16-4'} +, {id:'16-16-5', text:'level 3-16-16-5'} +, {id:'16-16-6', text:'level 3-16-16-6'} +, {id:'16-16-7', text:'level 3-16-16-7'} +, {id:'16-16-8', text:'level 3-16-16-8'} +, {id:'16-16-9', text:'level 3-16-16-9'} +]} +, {id:'16-17-10', text:'level 2-16-17', item:[ + {id:'16-17-0', text:'level 3-16-17-0'} +, {id:'16-17-1', text:'level 3-16-17-1'} +, {id:'16-17-2', text:'level 3-16-17-2'} +, {id:'16-17-3', text:'level 3-16-17-3'} +, {id:'16-17-4', text:'level 3-16-17-4'} +, {id:'16-17-5', text:'level 3-16-17-5'} +, {id:'16-17-6', text:'level 3-16-17-6'} +, {id:'16-17-7', text:'level 3-16-17-7'} +, {id:'16-17-8', text:'level 3-16-17-8'} +, {id:'16-17-9', text:'level 3-16-17-9'} +]} +, {id:'16-18-10', text:'level 2-16-18', item:[ + {id:'16-18-0', text:'level 3-16-18-0'} +, {id:'16-18-1', text:'level 3-16-18-1'} +, {id:'16-18-2', text:'level 3-16-18-2'} +, {id:'16-18-3', text:'level 3-16-18-3'} +, {id:'16-18-4', text:'level 3-16-18-4'} +, {id:'16-18-5', text:'level 3-16-18-5'} +, {id:'16-18-6', text:'level 3-16-18-6'} +, {id:'16-18-7', text:'level 3-16-18-7'} +, {id:'16-18-8', text:'level 3-16-18-8'} +, {id:'16-18-9', text:'level 3-16-18-9'} +]} +, {id:'16-19-10', text:'level 2-16-19', item:[ + {id:'16-19-0', text:'level 3-16-19-0'} +, {id:'16-19-1', text:'level 3-16-19-1'} +, {id:'16-19-2', text:'level 3-16-19-2'} +, {id:'16-19-3', text:'level 3-16-19-3'} +, {id:'16-19-4', text:'level 3-16-19-4'} +, {id:'16-19-5', text:'level 3-16-19-5'} +, {id:'16-19-6', text:'level 3-16-19-6'} +, {id:'16-19-7', text:'level 3-16-19-7'} +, {id:'16-19-8', text:'level 3-16-19-8'} +, {id:'16-19-9', text:'level 3-16-19-9'} +]} +]} +,{id:'17-20-10', text:'level 1-17', item:[ + {id:'17-0-10', text:'level 2-17-0', item:[ + {id:'17-0-0', text:'level 3-17-0-0'} +, {id:'17-0-1', text:'level 3-17-0-1'} +, {id:'17-0-2', text:'level 3-17-0-2'} +, {id:'17-0-3', text:'level 3-17-0-3'} +, {id:'17-0-4', text:'level 3-17-0-4'} +, {id:'17-0-5', text:'level 3-17-0-5'} +, {id:'17-0-6', text:'level 3-17-0-6'} +, {id:'17-0-7', text:'level 3-17-0-7'} +, {id:'17-0-8', text:'level 3-17-0-8'} +, {id:'17-0-9', text:'level 3-17-0-9'} +]} +, {id:'17-1-10', text:'level 2-17-1', item:[ + {id:'17-1-0', text:'level 3-17-1-0'} +, {id:'17-1-1', text:'level 3-17-1-1'} +, {id:'17-1-2', text:'level 3-17-1-2'} +, {id:'17-1-3', text:'level 3-17-1-3'} +, {id:'17-1-4', text:'level 3-17-1-4'} +, {id:'17-1-5', text:'level 3-17-1-5'} +, {id:'17-1-6', text:'level 3-17-1-6'} +, {id:'17-1-7', text:'level 3-17-1-7'} +, {id:'17-1-8', text:'level 3-17-1-8'} +, {id:'17-1-9', text:'level 3-17-1-9'} +]} +, {id:'17-2-10', text:'level 2-17-2', item:[ + {id:'17-2-0', text:'level 3-17-2-0'} +, {id:'17-2-1', text:'level 3-17-2-1'} +, {id:'17-2-2', text:'level 3-17-2-2'} +, {id:'17-2-3', text:'level 3-17-2-3'} +, {id:'17-2-4', text:'level 3-17-2-4'} +, {id:'17-2-5', text:'level 3-17-2-5'} +, {id:'17-2-6', text:'level 3-17-2-6'} +, {id:'17-2-7', text:'level 3-17-2-7'} +, {id:'17-2-8', text:'level 3-17-2-8'} +, {id:'17-2-9', text:'level 3-17-2-9'} +]} +, {id:'17-3-10', text:'level 2-17-3', item:[ + {id:'17-3-0', text:'level 3-17-3-0'} +, {id:'17-3-1', text:'level 3-17-3-1'} +, {id:'17-3-2', text:'level 3-17-3-2'} +, {id:'17-3-3', text:'level 3-17-3-3'} +, {id:'17-3-4', text:'level 3-17-3-4'} +, {id:'17-3-5', text:'level 3-17-3-5'} +, {id:'17-3-6', text:'level 3-17-3-6'} +, {id:'17-3-7', text:'level 3-17-3-7'} +, {id:'17-3-8', text:'level 3-17-3-8'} +, {id:'17-3-9', text:'level 3-17-3-9'} +]} +, {id:'17-4-10', text:'level 2-17-4', item:[ + {id:'17-4-0', text:'level 3-17-4-0'} +, {id:'17-4-1', text:'level 3-17-4-1'} +, {id:'17-4-2', text:'level 3-17-4-2'} +, {id:'17-4-3', text:'level 3-17-4-3'} +, {id:'17-4-4', text:'level 3-17-4-4'} +, {id:'17-4-5', text:'level 3-17-4-5'} +, {id:'17-4-6', text:'level 3-17-4-6'} +, {id:'17-4-7', text:'level 3-17-4-7'} +, {id:'17-4-8', text:'level 3-17-4-8'} +, {id:'17-4-9', text:'level 3-17-4-9'} +]} +, {id:'17-5-10', text:'level 2-17-5', item:[ + {id:'17-5-0', text:'level 3-17-5-0'} +, {id:'17-5-1', text:'level 3-17-5-1'} +, {id:'17-5-2', text:'level 3-17-5-2'} +, {id:'17-5-3', text:'level 3-17-5-3'} +, {id:'17-5-4', text:'level 3-17-5-4'} +, {id:'17-5-5', text:'level 3-17-5-5'} +, {id:'17-5-6', text:'level 3-17-5-6'} +, {id:'17-5-7', text:'level 3-17-5-7'} +, {id:'17-5-8', text:'level 3-17-5-8'} +, {id:'17-5-9', text:'level 3-17-5-9'} +]} +, {id:'17-6-10', text:'level 2-17-6', item:[ + {id:'17-6-0', text:'level 3-17-6-0'} +, {id:'17-6-1', text:'level 3-17-6-1'} +, {id:'17-6-2', text:'level 3-17-6-2'} +, {id:'17-6-3', text:'level 3-17-6-3'} +, {id:'17-6-4', text:'level 3-17-6-4'} +, {id:'17-6-5', text:'level 3-17-6-5'} +, {id:'17-6-6', text:'level 3-17-6-6'} +, {id:'17-6-7', text:'level 3-17-6-7'} +, {id:'17-6-8', text:'level 3-17-6-8'} +, {id:'17-6-9', text:'level 3-17-6-9'} +]} +, {id:'17-7-10', text:'level 2-17-7', item:[ + {id:'17-7-0', text:'level 3-17-7-0'} +, {id:'17-7-1', text:'level 3-17-7-1'} +, {id:'17-7-2', text:'level 3-17-7-2'} +, {id:'17-7-3', text:'level 3-17-7-3'} +, {id:'17-7-4', text:'level 3-17-7-4'} +, {id:'17-7-5', text:'level 3-17-7-5'} +, {id:'17-7-6', text:'level 3-17-7-6'} +, {id:'17-7-7', text:'level 3-17-7-7'} +, {id:'17-7-8', text:'level 3-17-7-8'} +, {id:'17-7-9', text:'level 3-17-7-9'} +]} +, {id:'17-8-10', text:'level 2-17-8', item:[ + {id:'17-8-0', text:'level 3-17-8-0'} +, {id:'17-8-1', text:'level 3-17-8-1'} +, {id:'17-8-2', text:'level 3-17-8-2'} +, {id:'17-8-3', text:'level 3-17-8-3'} +, {id:'17-8-4', text:'level 3-17-8-4'} +, {id:'17-8-5', text:'level 3-17-8-5'} +, {id:'17-8-6', text:'level 3-17-8-6'} +, {id:'17-8-7', text:'level 3-17-8-7'} +, {id:'17-8-8', text:'level 3-17-8-8'} +, {id:'17-8-9', text:'level 3-17-8-9'} +]} +, {id:'17-9-10', text:'level 2-17-9', item:[ + {id:'17-9-0', text:'level 3-17-9-0'} +, {id:'17-9-1', text:'level 3-17-9-1'} +, {id:'17-9-2', text:'level 3-17-9-2'} +, {id:'17-9-3', text:'level 3-17-9-3'} +, {id:'17-9-4', text:'level 3-17-9-4'} +, {id:'17-9-5', text:'level 3-17-9-5'} +, {id:'17-9-6', text:'level 3-17-9-6'} +, {id:'17-9-7', text:'level 3-17-9-7'} +, {id:'17-9-8', text:'level 3-17-9-8'} +, {id:'17-9-9', text:'level 3-17-9-9'} +]} +, {id:'17-10-10', text:'level 2-17-10', item:[ + {id:'17-10-0', text:'level 3-17-10-0'} +, {id:'17-10-1', text:'level 3-17-10-1'} +, {id:'17-10-2', text:'level 3-17-10-2'} +, {id:'17-10-3', text:'level 3-17-10-3'} +, {id:'17-10-4', text:'level 3-17-10-4'} +, {id:'17-10-5', text:'level 3-17-10-5'} +, {id:'17-10-6', text:'level 3-17-10-6'} +, {id:'17-10-7', text:'level 3-17-10-7'} +, {id:'17-10-8', text:'level 3-17-10-8'} +, {id:'17-10-9', text:'level 3-17-10-9'} +]} +, {id:'17-11-10', text:'level 2-17-11', item:[ + {id:'17-11-0', text:'level 3-17-11-0'} +, {id:'17-11-1', text:'level 3-17-11-1'} +, {id:'17-11-2', text:'level 3-17-11-2'} +, {id:'17-11-3', text:'level 3-17-11-3'} +, {id:'17-11-4', text:'level 3-17-11-4'} +, {id:'17-11-5', text:'level 3-17-11-5'} +, {id:'17-11-6', text:'level 3-17-11-6'} +, {id:'17-11-7', text:'level 3-17-11-7'} +, {id:'17-11-8', text:'level 3-17-11-8'} +, {id:'17-11-9', text:'level 3-17-11-9'} +]} +, {id:'17-12-10', text:'level 2-17-12', item:[ + {id:'17-12-0', text:'level 3-17-12-0'} +, {id:'17-12-1', text:'level 3-17-12-1'} +, {id:'17-12-2', text:'level 3-17-12-2'} +, {id:'17-12-3', text:'level 3-17-12-3'} +, {id:'17-12-4', text:'level 3-17-12-4'} +, {id:'17-12-5', text:'level 3-17-12-5'} +, {id:'17-12-6', text:'level 3-17-12-6'} +, {id:'17-12-7', text:'level 3-17-12-7'} +, {id:'17-12-8', text:'level 3-17-12-8'} +, {id:'17-12-9', text:'level 3-17-12-9'} +]} +, {id:'17-13-10', text:'level 2-17-13', item:[ + {id:'17-13-0', text:'level 3-17-13-0'} +, {id:'17-13-1', text:'level 3-17-13-1'} +, {id:'17-13-2', text:'level 3-17-13-2'} +, {id:'17-13-3', text:'level 3-17-13-3'} +, {id:'17-13-4', text:'level 3-17-13-4'} +, {id:'17-13-5', text:'level 3-17-13-5'} +, {id:'17-13-6', text:'level 3-17-13-6'} +, {id:'17-13-7', text:'level 3-17-13-7'} +, {id:'17-13-8', text:'level 3-17-13-8'} +, {id:'17-13-9', text:'level 3-17-13-9'} +]} +, {id:'17-14-10', text:'level 2-17-14', item:[ + {id:'17-14-0', text:'level 3-17-14-0'} +, {id:'17-14-1', text:'level 3-17-14-1'} +, {id:'17-14-2', text:'level 3-17-14-2'} +, {id:'17-14-3', text:'level 3-17-14-3'} +, {id:'17-14-4', text:'level 3-17-14-4'} +, {id:'17-14-5', text:'level 3-17-14-5'} +, {id:'17-14-6', text:'level 3-17-14-6'} +, {id:'17-14-7', text:'level 3-17-14-7'} +, {id:'17-14-8', text:'level 3-17-14-8'} +, {id:'17-14-9', text:'level 3-17-14-9'} +]} +, {id:'17-15-10', text:'level 2-17-15', item:[ + {id:'17-15-0', text:'level 3-17-15-0'} +, {id:'17-15-1', text:'level 3-17-15-1'} +, {id:'17-15-2', text:'level 3-17-15-2'} +, {id:'17-15-3', text:'level 3-17-15-3'} +, {id:'17-15-4', text:'level 3-17-15-4'} +, {id:'17-15-5', text:'level 3-17-15-5'} +, {id:'17-15-6', text:'level 3-17-15-6'} +, {id:'17-15-7', text:'level 3-17-15-7'} +, {id:'17-15-8', text:'level 3-17-15-8'} +, {id:'17-15-9', text:'level 3-17-15-9'} +]} +, {id:'17-16-10', text:'level 2-17-16', item:[ + {id:'17-16-0', text:'level 3-17-16-0'} +, {id:'17-16-1', text:'level 3-17-16-1'} +, {id:'17-16-2', text:'level 3-17-16-2'} +, {id:'17-16-3', text:'level 3-17-16-3'} +, {id:'17-16-4', text:'level 3-17-16-4'} +, {id:'17-16-5', text:'level 3-17-16-5'} +, {id:'17-16-6', text:'level 3-17-16-6'} +, {id:'17-16-7', text:'level 3-17-16-7'} +, {id:'17-16-8', text:'level 3-17-16-8'} +, {id:'17-16-9', text:'level 3-17-16-9'} +]} +, {id:'17-17-10', text:'level 2-17-17', item:[ + {id:'17-17-0', text:'level 3-17-17-0'} +, {id:'17-17-1', text:'level 3-17-17-1'} +, {id:'17-17-2', text:'level 3-17-17-2'} +, {id:'17-17-3', text:'level 3-17-17-3'} +, {id:'17-17-4', text:'level 3-17-17-4'} +, {id:'17-17-5', text:'level 3-17-17-5'} +, {id:'17-17-6', text:'level 3-17-17-6'} +, {id:'17-17-7', text:'level 3-17-17-7'} +, {id:'17-17-8', text:'level 3-17-17-8'} +, {id:'17-17-9', text:'level 3-17-17-9'} +]} +, {id:'17-18-10', text:'level 2-17-18', item:[ + {id:'17-18-0', text:'level 3-17-18-0'} +, {id:'17-18-1', text:'level 3-17-18-1'} +, {id:'17-18-2', text:'level 3-17-18-2'} +, {id:'17-18-3', text:'level 3-17-18-3'} +, {id:'17-18-4', text:'level 3-17-18-4'} +, {id:'17-18-5', text:'level 3-17-18-5'} +, {id:'17-18-6', text:'level 3-17-18-6'} +, {id:'17-18-7', text:'level 3-17-18-7'} +, {id:'17-18-8', text:'level 3-17-18-8'} +, {id:'17-18-9', text:'level 3-17-18-9'} +]} +, {id:'17-19-10', text:'level 2-17-19', item:[ + {id:'17-19-0', text:'level 3-17-19-0'} +, {id:'17-19-1', text:'level 3-17-19-1'} +, {id:'17-19-2', text:'level 3-17-19-2'} +, {id:'17-19-3', text:'level 3-17-19-3'} +, {id:'17-19-4', text:'level 3-17-19-4'} +, {id:'17-19-5', text:'level 3-17-19-5'} +, {id:'17-19-6', text:'level 3-17-19-6'} +, {id:'17-19-7', text:'level 3-17-19-7'} +, {id:'17-19-8', text:'level 3-17-19-8'} +, {id:'17-19-9', text:'level 3-17-19-9'} +]} +]} +,{id:'18-20-10', text:'level 1-18', item:[ + {id:'18-0-10', text:'level 2-18-0', item:[ + {id:'18-0-0', text:'level 3-18-0-0'} +, {id:'18-0-1', text:'level 3-18-0-1'} +, {id:'18-0-2', text:'level 3-18-0-2'} +, {id:'18-0-3', text:'level 3-18-0-3'} +, {id:'18-0-4', text:'level 3-18-0-4'} +, {id:'18-0-5', text:'level 3-18-0-5'} +, {id:'18-0-6', text:'level 3-18-0-6'} +, {id:'18-0-7', text:'level 3-18-0-7'} +, {id:'18-0-8', text:'level 3-18-0-8'} +, {id:'18-0-9', text:'level 3-18-0-9'} +]} +, {id:'18-1-10', text:'level 2-18-1', item:[ + {id:'18-1-0', text:'level 3-18-1-0'} +, {id:'18-1-1', text:'level 3-18-1-1'} +, {id:'18-1-2', text:'level 3-18-1-2'} +, {id:'18-1-3', text:'level 3-18-1-3'} +, {id:'18-1-4', text:'level 3-18-1-4'} +, {id:'18-1-5', text:'level 3-18-1-5'} +, {id:'18-1-6', text:'level 3-18-1-6'} +, {id:'18-1-7', text:'level 3-18-1-7'} +, {id:'18-1-8', text:'level 3-18-1-8'} +, {id:'18-1-9', text:'level 3-18-1-9'} +]} +, {id:'18-2-10', text:'level 2-18-2', item:[ + {id:'18-2-0', text:'level 3-18-2-0'} +, {id:'18-2-1', text:'level 3-18-2-1'} +, {id:'18-2-2', text:'level 3-18-2-2'} +, {id:'18-2-3', text:'level 3-18-2-3'} +, {id:'18-2-4', text:'level 3-18-2-4'} +, {id:'18-2-5', text:'level 3-18-2-5'} +, {id:'18-2-6', text:'level 3-18-2-6'} +, {id:'18-2-7', text:'level 3-18-2-7'} +, {id:'18-2-8', text:'level 3-18-2-8'} +, {id:'18-2-9', text:'level 3-18-2-9'} +]} +, {id:'18-3-10', text:'level 2-18-3', item:[ + {id:'18-3-0', text:'level 3-18-3-0'} +, {id:'18-3-1', text:'level 3-18-3-1'} +, {id:'18-3-2', text:'level 3-18-3-2'} +, {id:'18-3-3', text:'level 3-18-3-3'} +, {id:'18-3-4', text:'level 3-18-3-4'} +, {id:'18-3-5', text:'level 3-18-3-5'} +, {id:'18-3-6', text:'level 3-18-3-6'} +, {id:'18-3-7', text:'level 3-18-3-7'} +, {id:'18-3-8', text:'level 3-18-3-8'} +, {id:'18-3-9', text:'level 3-18-3-9'} +]} +, {id:'18-4-10', text:'level 2-18-4', item:[ + {id:'18-4-0', text:'level 3-18-4-0'} +, {id:'18-4-1', text:'level 3-18-4-1'} +, {id:'18-4-2', text:'level 3-18-4-2'} +, {id:'18-4-3', text:'level 3-18-4-3'} +, {id:'18-4-4', text:'level 3-18-4-4'} +, {id:'18-4-5', text:'level 3-18-4-5'} +, {id:'18-4-6', text:'level 3-18-4-6'} +, {id:'18-4-7', text:'level 3-18-4-7'} +, {id:'18-4-8', text:'level 3-18-4-8'} +, {id:'18-4-9', text:'level 3-18-4-9'} +]} +, {id:'18-5-10', text:'level 2-18-5', item:[ + {id:'18-5-0', text:'level 3-18-5-0'} +, {id:'18-5-1', text:'level 3-18-5-1'} +, {id:'18-5-2', text:'level 3-18-5-2'} +, {id:'18-5-3', text:'level 3-18-5-3'} +, {id:'18-5-4', text:'level 3-18-5-4'} +, {id:'18-5-5', text:'level 3-18-5-5'} +, {id:'18-5-6', text:'level 3-18-5-6'} +, {id:'18-5-7', text:'level 3-18-5-7'} +, {id:'18-5-8', text:'level 3-18-5-8'} +, {id:'18-5-9', text:'level 3-18-5-9'} +]} +, {id:'18-6-10', text:'level 2-18-6', item:[ + {id:'18-6-0', text:'level 3-18-6-0'} +, {id:'18-6-1', text:'level 3-18-6-1'} +, {id:'18-6-2', text:'level 3-18-6-2'} +, {id:'18-6-3', text:'level 3-18-6-3'} +, {id:'18-6-4', text:'level 3-18-6-4'} +, {id:'18-6-5', text:'level 3-18-6-5'} +, {id:'18-6-6', text:'level 3-18-6-6'} +, {id:'18-6-7', text:'level 3-18-6-7'} +, {id:'18-6-8', text:'level 3-18-6-8'} +, {id:'18-6-9', text:'level 3-18-6-9'} +]} +, {id:'18-7-10', text:'level 2-18-7', item:[ + {id:'18-7-0', text:'level 3-18-7-0'} +, {id:'18-7-1', text:'level 3-18-7-1'} +, {id:'18-7-2', text:'level 3-18-7-2'} +, {id:'18-7-3', text:'level 3-18-7-3'} +, {id:'18-7-4', text:'level 3-18-7-4'} +, {id:'18-7-5', text:'level 3-18-7-5'} +, {id:'18-7-6', text:'level 3-18-7-6'} +, {id:'18-7-7', text:'level 3-18-7-7'} +, {id:'18-7-8', text:'level 3-18-7-8'} +, {id:'18-7-9', text:'level 3-18-7-9'} +]} +, {id:'18-8-10', text:'level 2-18-8', item:[ + {id:'18-8-0', text:'level 3-18-8-0'} +, {id:'18-8-1', text:'level 3-18-8-1'} +, {id:'18-8-2', text:'level 3-18-8-2'} +, {id:'18-8-3', text:'level 3-18-8-3'} +, {id:'18-8-4', text:'level 3-18-8-4'} +, {id:'18-8-5', text:'level 3-18-8-5'} +, {id:'18-8-6', text:'level 3-18-8-6'} +, {id:'18-8-7', text:'level 3-18-8-7'} +, {id:'18-8-8', text:'level 3-18-8-8'} +, {id:'18-8-9', text:'level 3-18-8-9'} +]} +, {id:'18-9-10', text:'level 2-18-9', item:[ + {id:'18-9-0', text:'level 3-18-9-0'} +, {id:'18-9-1', text:'level 3-18-9-1'} +, {id:'18-9-2', text:'level 3-18-9-2'} +, {id:'18-9-3', text:'level 3-18-9-3'} +, {id:'18-9-4', text:'level 3-18-9-4'} +, {id:'18-9-5', text:'level 3-18-9-5'} +, {id:'18-9-6', text:'level 3-18-9-6'} +, {id:'18-9-7', text:'level 3-18-9-7'} +, {id:'18-9-8', text:'level 3-18-9-8'} +, {id:'18-9-9', text:'level 3-18-9-9'} +]} +, {id:'18-10-10', text:'level 2-18-10', item:[ + {id:'18-10-0', text:'level 3-18-10-0'} +, {id:'18-10-1', text:'level 3-18-10-1'} +, {id:'18-10-2', text:'level 3-18-10-2'} +, {id:'18-10-3', text:'level 3-18-10-3'} +, {id:'18-10-4', text:'level 3-18-10-4'} +, {id:'18-10-5', text:'level 3-18-10-5'} +, {id:'18-10-6', text:'level 3-18-10-6'} +, {id:'18-10-7', text:'level 3-18-10-7'} +, {id:'18-10-8', text:'level 3-18-10-8'} +, {id:'18-10-9', text:'level 3-18-10-9'} +]} +, {id:'18-11-10', text:'level 2-18-11', item:[ + {id:'18-11-0', text:'level 3-18-11-0'} +, {id:'18-11-1', text:'level 3-18-11-1'} +, {id:'18-11-2', text:'level 3-18-11-2'} +, {id:'18-11-3', text:'level 3-18-11-3'} +, {id:'18-11-4', text:'level 3-18-11-4'} +, {id:'18-11-5', text:'level 3-18-11-5'} +, {id:'18-11-6', text:'level 3-18-11-6'} +, {id:'18-11-7', text:'level 3-18-11-7'} +, {id:'18-11-8', text:'level 3-18-11-8'} +, {id:'18-11-9', text:'level 3-18-11-9'} +]} +, {id:'18-12-10', text:'level 2-18-12', item:[ + {id:'18-12-0', text:'level 3-18-12-0'} +, {id:'18-12-1', text:'level 3-18-12-1'} +, {id:'18-12-2', text:'level 3-18-12-2'} +, {id:'18-12-3', text:'level 3-18-12-3'} +, {id:'18-12-4', text:'level 3-18-12-4'} +, {id:'18-12-5', text:'level 3-18-12-5'} +, {id:'18-12-6', text:'level 3-18-12-6'} +, {id:'18-12-7', text:'level 3-18-12-7'} +, {id:'18-12-8', text:'level 3-18-12-8'} +, {id:'18-12-9', text:'level 3-18-12-9'} +]} +, {id:'18-13-10', text:'level 2-18-13', item:[ + {id:'18-13-0', text:'level 3-18-13-0'} +, {id:'18-13-1', text:'level 3-18-13-1'} +, {id:'18-13-2', text:'level 3-18-13-2'} +, {id:'18-13-3', text:'level 3-18-13-3'} +, {id:'18-13-4', text:'level 3-18-13-4'} +, {id:'18-13-5', text:'level 3-18-13-5'} +, {id:'18-13-6', text:'level 3-18-13-6'} +, {id:'18-13-7', text:'level 3-18-13-7'} +, {id:'18-13-8', text:'level 3-18-13-8'} +, {id:'18-13-9', text:'level 3-18-13-9'} +]} +, {id:'18-14-10', text:'level 2-18-14', item:[ + {id:'18-14-0', text:'level 3-18-14-0'} +, {id:'18-14-1', text:'level 3-18-14-1'} +, {id:'18-14-2', text:'level 3-18-14-2'} +, {id:'18-14-3', text:'level 3-18-14-3'} +, {id:'18-14-4', text:'level 3-18-14-4'} +, {id:'18-14-5', text:'level 3-18-14-5'} +, {id:'18-14-6', text:'level 3-18-14-6'} +, {id:'18-14-7', text:'level 3-18-14-7'} +, {id:'18-14-8', text:'level 3-18-14-8'} +, {id:'18-14-9', text:'level 3-18-14-9'} +]} +, {id:'18-15-10', text:'level 2-18-15', item:[ + {id:'18-15-0', text:'level 3-18-15-0'} +, {id:'18-15-1', text:'level 3-18-15-1'} +, {id:'18-15-2', text:'level 3-18-15-2'} +, {id:'18-15-3', text:'level 3-18-15-3'} +, {id:'18-15-4', text:'level 3-18-15-4'} +, {id:'18-15-5', text:'level 3-18-15-5'} +, {id:'18-15-6', text:'level 3-18-15-6'} +, {id:'18-15-7', text:'level 3-18-15-7'} +, {id:'18-15-8', text:'level 3-18-15-8'} +, {id:'18-15-9', text:'level 3-18-15-9'} +]} +, {id:'18-16-10', text:'level 2-18-16', item:[ + {id:'18-16-0', text:'level 3-18-16-0'} +, {id:'18-16-1', text:'level 3-18-16-1'} +, {id:'18-16-2', text:'level 3-18-16-2'} +, {id:'18-16-3', text:'level 3-18-16-3'} +, {id:'18-16-4', text:'level 3-18-16-4'} +, {id:'18-16-5', text:'level 3-18-16-5'} +, {id:'18-16-6', text:'level 3-18-16-6'} +, {id:'18-16-7', text:'level 3-18-16-7'} +, {id:'18-16-8', text:'level 3-18-16-8'} +, {id:'18-16-9', text:'level 3-18-16-9'} +]} +, {id:'18-17-10', text:'level 2-18-17', item:[ + {id:'18-17-0', text:'level 3-18-17-0'} +, {id:'18-17-1', text:'level 3-18-17-1'} +, {id:'18-17-2', text:'level 3-18-17-2'} +, {id:'18-17-3', text:'level 3-18-17-3'} +, {id:'18-17-4', text:'level 3-18-17-4'} +, {id:'18-17-5', text:'level 3-18-17-5'} +, {id:'18-17-6', text:'level 3-18-17-6'} +, {id:'18-17-7', text:'level 3-18-17-7'} +, {id:'18-17-8', text:'level 3-18-17-8'} +, {id:'18-17-9', text:'level 3-18-17-9'} +]} +, {id:'18-18-10', text:'level 2-18-18', item:[ + {id:'18-18-0', text:'level 3-18-18-0'} +, {id:'18-18-1', text:'level 3-18-18-1'} +, {id:'18-18-2', text:'level 3-18-18-2'} +, {id:'18-18-3', text:'level 3-18-18-3'} +, {id:'18-18-4', text:'level 3-18-18-4'} +, {id:'18-18-5', text:'level 3-18-18-5'} +, {id:'18-18-6', text:'level 3-18-18-6'} +, {id:'18-18-7', text:'level 3-18-18-7'} +, {id:'18-18-8', text:'level 3-18-18-8'} +, {id:'18-18-9', text:'level 3-18-18-9'} +]} +, {id:'18-19-10', text:'level 2-18-19', item:[ + {id:'18-19-0', text:'level 3-18-19-0'} +, {id:'18-19-1', text:'level 3-18-19-1'} +, {id:'18-19-2', text:'level 3-18-19-2'} +, {id:'18-19-3', text:'level 3-18-19-3'} +, {id:'18-19-4', text:'level 3-18-19-4'} +, {id:'18-19-5', text:'level 3-18-19-5'} +, {id:'18-19-6', text:'level 3-18-19-6'} +, {id:'18-19-7', text:'level 3-18-19-7'} +, {id:'18-19-8', text:'level 3-18-19-8'} +, {id:'18-19-9', text:'level 3-18-19-9'} +]} +]} +,{id:'19-20-10', text:'level 1-19', item:[ + {id:'19-0-10', text:'level 2-19-0', item:[ + {id:'19-0-0', text:'level 3-19-0-0'} +, {id:'19-0-1', text:'level 3-19-0-1'} +, {id:'19-0-2', text:'level 3-19-0-2'} +, {id:'19-0-3', text:'level 3-19-0-3'} +, {id:'19-0-4', text:'level 3-19-0-4'} +, {id:'19-0-5', text:'level 3-19-0-5'} +, {id:'19-0-6', text:'level 3-19-0-6'} +, {id:'19-0-7', text:'level 3-19-0-7'} +, {id:'19-0-8', text:'level 3-19-0-8'} +, {id:'19-0-9', text:'level 3-19-0-9'} +]} +, {id:'19-1-10', text:'level 2-19-1', item:[ + {id:'19-1-0', text:'level 3-19-1-0'} +, {id:'19-1-1', text:'level 3-19-1-1'} +, {id:'19-1-2', text:'level 3-19-1-2'} +, {id:'19-1-3', text:'level 3-19-1-3'} +, {id:'19-1-4', text:'level 3-19-1-4'} +, {id:'19-1-5', text:'level 3-19-1-5'} +, {id:'19-1-6', text:'level 3-19-1-6'} +, {id:'19-1-7', text:'level 3-19-1-7'} +, {id:'19-1-8', text:'level 3-19-1-8'} +, {id:'19-1-9', text:'level 3-19-1-9'} +]} +, {id:'19-2-10', text:'level 2-19-2', item:[ + {id:'19-2-0', text:'level 3-19-2-0'} +, {id:'19-2-1', text:'level 3-19-2-1'} +, {id:'19-2-2', text:'level 3-19-2-2'} +, {id:'19-2-3', text:'level 3-19-2-3'} +, {id:'19-2-4', text:'level 3-19-2-4'} +, {id:'19-2-5', text:'level 3-19-2-5'} +, {id:'19-2-6', text:'level 3-19-2-6'} +, {id:'19-2-7', text:'level 3-19-2-7'} +, {id:'19-2-8', text:'level 3-19-2-8'} +, {id:'19-2-9', text:'level 3-19-2-9'} +]} +, {id:'19-3-10', text:'level 2-19-3', item:[ + {id:'19-3-0', text:'level 3-19-3-0'} +, {id:'19-3-1', text:'level 3-19-3-1'} +, {id:'19-3-2', text:'level 3-19-3-2'} +, {id:'19-3-3', text:'level 3-19-3-3'} +, {id:'19-3-4', text:'level 3-19-3-4'} +, {id:'19-3-5', text:'level 3-19-3-5'} +, {id:'19-3-6', text:'level 3-19-3-6'} +, {id:'19-3-7', text:'level 3-19-3-7'} +, {id:'19-3-8', text:'level 3-19-3-8'} +, {id:'19-3-9', text:'level 3-19-3-9'} +]} +, {id:'19-4-10', text:'level 2-19-4', item:[ + {id:'19-4-0', text:'level 3-19-4-0'} +, {id:'19-4-1', text:'level 3-19-4-1'} +, {id:'19-4-2', text:'level 3-19-4-2'} +, {id:'19-4-3', text:'level 3-19-4-3'} +, {id:'19-4-4', text:'level 3-19-4-4'} +, {id:'19-4-5', text:'level 3-19-4-5'} +, {id:'19-4-6', text:'level 3-19-4-6'} +, {id:'19-4-7', text:'level 3-19-4-7'} +, {id:'19-4-8', text:'level 3-19-4-8'} +, {id:'19-4-9', text:'level 3-19-4-9'} +]} +, {id:'19-5-10', text:'level 2-19-5', item:[ + {id:'19-5-0', text:'level 3-19-5-0'} +, {id:'19-5-1', text:'level 3-19-5-1'} +, {id:'19-5-2', text:'level 3-19-5-2'} +, {id:'19-5-3', text:'level 3-19-5-3'} +, {id:'19-5-4', text:'level 3-19-5-4'} +, {id:'19-5-5', text:'level 3-19-5-5'} +, {id:'19-5-6', text:'level 3-19-5-6'} +, {id:'19-5-7', text:'level 3-19-5-7'} +, {id:'19-5-8', text:'level 3-19-5-8'} +, {id:'19-5-9', text:'level 3-19-5-9'} +]} +, {id:'19-6-10', text:'level 2-19-6', item:[ + {id:'19-6-0', text:'level 3-19-6-0'} +, {id:'19-6-1', text:'level 3-19-6-1'} +, {id:'19-6-2', text:'level 3-19-6-2'} +, {id:'19-6-3', text:'level 3-19-6-3'} +, {id:'19-6-4', text:'level 3-19-6-4'} +, {id:'19-6-5', text:'level 3-19-6-5'} +, {id:'19-6-6', text:'level 3-19-6-6'} +, {id:'19-6-7', text:'level 3-19-6-7'} +, {id:'19-6-8', text:'level 3-19-6-8'} +, {id:'19-6-9', text:'level 3-19-6-9'} +]} +, {id:'19-7-10', text:'level 2-19-7', item:[ + {id:'19-7-0', text:'level 3-19-7-0'} +, {id:'19-7-1', text:'level 3-19-7-1'} +, {id:'19-7-2', text:'level 3-19-7-2'} +, {id:'19-7-3', text:'level 3-19-7-3'} +, {id:'19-7-4', text:'level 3-19-7-4'} +, {id:'19-7-5', text:'level 3-19-7-5'} +, {id:'19-7-6', text:'level 3-19-7-6'} +, {id:'19-7-7', text:'level 3-19-7-7'} +, {id:'19-7-8', text:'level 3-19-7-8'} +, {id:'19-7-9', text:'level 3-19-7-9'} +]} +, {id:'19-8-10', text:'level 2-19-8', item:[ + {id:'19-8-0', text:'level 3-19-8-0'} +, {id:'19-8-1', text:'level 3-19-8-1'} +, {id:'19-8-2', text:'level 3-19-8-2'} +, {id:'19-8-3', text:'level 3-19-8-3'} +, {id:'19-8-4', text:'level 3-19-8-4'} +, {id:'19-8-5', text:'level 3-19-8-5'} +, {id:'19-8-6', text:'level 3-19-8-6'} +, {id:'19-8-7', text:'level 3-19-8-7'} +, {id:'19-8-8', text:'level 3-19-8-8'} +, {id:'19-8-9', text:'level 3-19-8-9'} +]} +, {id:'19-9-10', text:'level 2-19-9', item:[ + {id:'19-9-0', text:'level 3-19-9-0'} +, {id:'19-9-1', text:'level 3-19-9-1'} +, {id:'19-9-2', text:'level 3-19-9-2'} +, {id:'19-9-3', text:'level 3-19-9-3'} +, {id:'19-9-4', text:'level 3-19-9-4'} +, {id:'19-9-5', text:'level 3-19-9-5'} +, {id:'19-9-6', text:'level 3-19-9-6'} +, {id:'19-9-7', text:'level 3-19-9-7'} +, {id:'19-9-8', text:'level 3-19-9-8'} +, {id:'19-9-9', text:'level 3-19-9-9'} +]} +, {id:'19-10-10', text:'level 2-19-10', item:[ + {id:'19-10-0', text:'level 3-19-10-0'} +, {id:'19-10-1', text:'level 3-19-10-1'} +, {id:'19-10-2', text:'level 3-19-10-2'} +, {id:'19-10-3', text:'level 3-19-10-3'} +, {id:'19-10-4', text:'level 3-19-10-4'} +, {id:'19-10-5', text:'level 3-19-10-5'} +, {id:'19-10-6', text:'level 3-19-10-6'} +, {id:'19-10-7', text:'level 3-19-10-7'} +, {id:'19-10-8', text:'level 3-19-10-8'} +, {id:'19-10-9', text:'level 3-19-10-9'} +]} +, {id:'19-11-10', text:'level 2-19-11', item:[ + {id:'19-11-0', text:'level 3-19-11-0'} +, {id:'19-11-1', text:'level 3-19-11-1'} +, {id:'19-11-2', text:'level 3-19-11-2'} +, {id:'19-11-3', text:'level 3-19-11-3'} +, {id:'19-11-4', text:'level 3-19-11-4'} +, {id:'19-11-5', text:'level 3-19-11-5'} +, {id:'19-11-6', text:'level 3-19-11-6'} +, {id:'19-11-7', text:'level 3-19-11-7'} +, {id:'19-11-8', text:'level 3-19-11-8'} +, {id:'19-11-9', text:'level 3-19-11-9'} +]} +, {id:'19-12-10', text:'level 2-19-12', item:[ + {id:'19-12-0', text:'level 3-19-12-0'} +, {id:'19-12-1', text:'level 3-19-12-1'} +, {id:'19-12-2', text:'level 3-19-12-2'} +, {id:'19-12-3', text:'level 3-19-12-3'} +, {id:'19-12-4', text:'level 3-19-12-4'} +, {id:'19-12-5', text:'level 3-19-12-5'} +, {id:'19-12-6', text:'level 3-19-12-6'} +, {id:'19-12-7', text:'level 3-19-12-7'} +, {id:'19-12-8', text:'level 3-19-12-8'} +, {id:'19-12-9', text:'level 3-19-12-9'} +]} +, {id:'19-13-10', text:'level 2-19-13', item:[ + {id:'19-13-0', text:'level 3-19-13-0'} +, {id:'19-13-1', text:'level 3-19-13-1'} +, {id:'19-13-2', text:'level 3-19-13-2'} +, {id:'19-13-3', text:'level 3-19-13-3'} +, {id:'19-13-4', text:'level 3-19-13-4'} +, {id:'19-13-5', text:'level 3-19-13-5'} +, {id:'19-13-6', text:'level 3-19-13-6'} +, {id:'19-13-7', text:'level 3-19-13-7'} +, {id:'19-13-8', text:'level 3-19-13-8'} +, {id:'19-13-9', text:'level 3-19-13-9'} +]} +, {id:'19-14-10', text:'level 2-19-14', item:[ + {id:'19-14-0', text:'level 3-19-14-0'} +, {id:'19-14-1', text:'level 3-19-14-1'} +, {id:'19-14-2', text:'level 3-19-14-2'} +, {id:'19-14-3', text:'level 3-19-14-3'} +, {id:'19-14-4', text:'level 3-19-14-4'} +, {id:'19-14-5', text:'level 3-19-14-5'} +, {id:'19-14-6', text:'level 3-19-14-6'} +, {id:'19-14-7', text:'level 3-19-14-7'} +, {id:'19-14-8', text:'level 3-19-14-8'} +, {id:'19-14-9', text:'level 3-19-14-9'} +]} +, {id:'19-15-10', text:'level 2-19-15', item:[ + {id:'19-15-0', text:'level 3-19-15-0'} +, {id:'19-15-1', text:'level 3-19-15-1'} +, {id:'19-15-2', text:'level 3-19-15-2'} +, {id:'19-15-3', text:'level 3-19-15-3'} +, {id:'19-15-4', text:'level 3-19-15-4'} +, {id:'19-15-5', text:'level 3-19-15-5'} +, {id:'19-15-6', text:'level 3-19-15-6'} +, {id:'19-15-7', text:'level 3-19-15-7'} +, {id:'19-15-8', text:'level 3-19-15-8'} +, {id:'19-15-9', text:'level 3-19-15-9'} +]} +, {id:'19-16-10', text:'level 2-19-16', item:[ + {id:'19-16-0', text:'level 3-19-16-0'} +, {id:'19-16-1', text:'level 3-19-16-1'} +, {id:'19-16-2', text:'level 3-19-16-2'} +, {id:'19-16-3', text:'level 3-19-16-3'} +, {id:'19-16-4', text:'level 3-19-16-4'} +, {id:'19-16-5', text:'level 3-19-16-5'} +, {id:'19-16-6', text:'level 3-19-16-6'} +, {id:'19-16-7', text:'level 3-19-16-7'} +, {id:'19-16-8', text:'level 3-19-16-8'} +, {id:'19-16-9', text:'level 3-19-16-9'} +]} +, {id:'19-17-10', text:'level 2-19-17', item:[ + {id:'19-17-0', text:'level 3-19-17-0'} +, {id:'19-17-1', text:'level 3-19-17-1'} +, {id:'19-17-2', text:'level 3-19-17-2'} +, {id:'19-17-3', text:'level 3-19-17-3'} +, {id:'19-17-4', text:'level 3-19-17-4'} +, {id:'19-17-5', text:'level 3-19-17-5'} +, {id:'19-17-6', text:'level 3-19-17-6'} +, {id:'19-17-7', text:'level 3-19-17-7'} +, {id:'19-17-8', text:'level 3-19-17-8'} +, {id:'19-17-9', text:'level 3-19-17-9'} +]} +, {id:'19-18-10', text:'level 2-19-18', item:[ + {id:'19-18-0', text:'level 3-19-18-0'} +, {id:'19-18-1', text:'level 3-19-18-1'} +, {id:'19-18-2', text:'level 3-19-18-2'} +, {id:'19-18-3', text:'level 3-19-18-3'} +, {id:'19-18-4', text:'level 3-19-18-4'} +, {id:'19-18-5', text:'level 3-19-18-5'} +, {id:'19-18-6', text:'level 3-19-18-6'} +, {id:'19-18-7', text:'level 3-19-18-7'} +, {id:'19-18-8', text:'level 3-19-18-8'} +, {id:'19-18-9', text:'level 3-19-18-9'} +]} +, {id:'19-19-10', text:'level 2-19-19', item:[ + {id:'19-19-0', text:'level 3-19-19-0'} +, {id:'19-19-1', text:'level 3-19-19-1'} +, {id:'19-19-2', text:'level 3-19-19-2'} +, {id:'19-19-3', text:'level 3-19-19-3'} +, {id:'19-19-4', text:'level 3-19-19-4'} +, {id:'19-19-5', text:'level 3-19-19-5'} +, {id:'19-19-6', text:'level 3-19-19-6'} +, {id:'19-19-7', text:'level 3-19-19-7'} +, {id:'19-19-8', text:'level 3-19-19-8'} +, {id:'19-19-9', text:'level 3-19-19-9'} +]} +]} +,{id:'20-20-10', text:'level 1-20', item:[ + {id:'20-0-10', text:'level 2-20-0', item:[ + {id:'20-0-0', text:'level 3-20-0-0'} +, {id:'20-0-1', text:'level 3-20-0-1'} +, {id:'20-0-2', text:'level 3-20-0-2'} +, {id:'20-0-3', text:'level 3-20-0-3'} +, {id:'20-0-4', text:'level 3-20-0-4'} +, {id:'20-0-5', text:'level 3-20-0-5'} +, {id:'20-0-6', text:'level 3-20-0-6'} +, {id:'20-0-7', text:'level 3-20-0-7'} +, {id:'20-0-8', text:'level 3-20-0-8'} +, {id:'20-0-9', text:'level 3-20-0-9'} +]} +, {id:'20-1-10', text:'level 2-20-1', item:[ + {id:'20-1-0', text:'level 3-20-1-0'} +, {id:'20-1-1', text:'level 3-20-1-1'} +, {id:'20-1-2', text:'level 3-20-1-2'} +, {id:'20-1-3', text:'level 3-20-1-3'} +, {id:'20-1-4', text:'level 3-20-1-4'} +, {id:'20-1-5', text:'level 3-20-1-5'} +, {id:'20-1-6', text:'level 3-20-1-6'} +, {id:'20-1-7', text:'level 3-20-1-7'} +, {id:'20-1-8', text:'level 3-20-1-8'} +, {id:'20-1-9', text:'level 3-20-1-9'} +]} +, {id:'20-2-10', text:'level 2-20-2', item:[ + {id:'20-2-0', text:'level 3-20-2-0'} +, {id:'20-2-1', text:'level 3-20-2-1'} +, {id:'20-2-2', text:'level 3-20-2-2'} +, {id:'20-2-3', text:'level 3-20-2-3'} +, {id:'20-2-4', text:'level 3-20-2-4'} +, {id:'20-2-5', text:'level 3-20-2-5'} +, {id:'20-2-6', text:'level 3-20-2-6'} +, {id:'20-2-7', text:'level 3-20-2-7'} +, {id:'20-2-8', text:'level 3-20-2-8'} +, {id:'20-2-9', text:'level 3-20-2-9'} +]} +, {id:'20-3-10', text:'level 2-20-3', item:[ + {id:'20-3-0', text:'level 3-20-3-0'} +, {id:'20-3-1', text:'level 3-20-3-1'} +, {id:'20-3-2', text:'level 3-20-3-2'} +, {id:'20-3-3', text:'level 3-20-3-3'} +, {id:'20-3-4', text:'level 3-20-3-4'} +, {id:'20-3-5', text:'level 3-20-3-5'} +, {id:'20-3-6', text:'level 3-20-3-6'} +, {id:'20-3-7', text:'level 3-20-3-7'} +, {id:'20-3-8', text:'level 3-20-3-8'} +, {id:'20-3-9', text:'level 3-20-3-9'} +]} +, {id:'20-4-10', text:'level 2-20-4', item:[ + {id:'20-4-0', text:'level 3-20-4-0'} +, {id:'20-4-1', text:'level 3-20-4-1'} +, {id:'20-4-2', text:'level 3-20-4-2'} +, {id:'20-4-3', text:'level 3-20-4-3'} +, {id:'20-4-4', text:'level 3-20-4-4'} +, {id:'20-4-5', text:'level 3-20-4-5'} +, {id:'20-4-6', text:'level 3-20-4-6'} +, {id:'20-4-7', text:'level 3-20-4-7'} +, {id:'20-4-8', text:'level 3-20-4-8'} +, {id:'20-4-9', text:'level 3-20-4-9'} +]} +, {id:'20-5-10', text:'level 2-20-5', item:[ + {id:'20-5-0', text:'level 3-20-5-0'} +, {id:'20-5-1', text:'level 3-20-5-1'} +, {id:'20-5-2', text:'level 3-20-5-2'} +, {id:'20-5-3', text:'level 3-20-5-3'} +, {id:'20-5-4', text:'level 3-20-5-4'} +, {id:'20-5-5', text:'level 3-20-5-5'} +, {id:'20-5-6', text:'level 3-20-5-6'} +, {id:'20-5-7', text:'level 3-20-5-7'} +, {id:'20-5-8', text:'level 3-20-5-8'} +, {id:'20-5-9', text:'level 3-20-5-9'} +]} +, {id:'20-6-10', text:'level 2-20-6', item:[ + {id:'20-6-0', text:'level 3-20-6-0'} +, {id:'20-6-1', text:'level 3-20-6-1'} +, {id:'20-6-2', text:'level 3-20-6-2'} +, {id:'20-6-3', text:'level 3-20-6-3'} +, {id:'20-6-4', text:'level 3-20-6-4'} +, {id:'20-6-5', text:'level 3-20-6-5'} +, {id:'20-6-6', text:'level 3-20-6-6'} +, {id:'20-6-7', text:'level 3-20-6-7'} +, {id:'20-6-8', text:'level 3-20-6-8'} +, {id:'20-6-9', text:'level 3-20-6-9'} +]} +, {id:'20-7-10', text:'level 2-20-7', item:[ + {id:'20-7-0', text:'level 3-20-7-0'} +, {id:'20-7-1', text:'level 3-20-7-1'} +, {id:'20-7-2', text:'level 3-20-7-2'} +, {id:'20-7-3', text:'level 3-20-7-3'} +, {id:'20-7-4', text:'level 3-20-7-4'} +, {id:'20-7-5', text:'level 3-20-7-5'} +, {id:'20-7-6', text:'level 3-20-7-6'} +, {id:'20-7-7', text:'level 3-20-7-7'} +, {id:'20-7-8', text:'level 3-20-7-8'} +, {id:'20-7-9', text:'level 3-20-7-9'} +]} +, {id:'20-8-10', text:'level 2-20-8', item:[ + {id:'20-8-0', text:'level 3-20-8-0'} +, {id:'20-8-1', text:'level 3-20-8-1'} +, {id:'20-8-2', text:'level 3-20-8-2'} +, {id:'20-8-3', text:'level 3-20-8-3'} +, {id:'20-8-4', text:'level 3-20-8-4'} +, {id:'20-8-5', text:'level 3-20-8-5'} +, {id:'20-8-6', text:'level 3-20-8-6'} +, {id:'20-8-7', text:'level 3-20-8-7'} +, {id:'20-8-8', text:'level 3-20-8-8'} +, {id:'20-8-9', text:'level 3-20-8-9'} +]} +, {id:'20-9-10', text:'level 2-20-9', item:[ + {id:'20-9-0', text:'level 3-20-9-0'} +, {id:'20-9-1', text:'level 3-20-9-1'} +, {id:'20-9-2', text:'level 3-20-9-2'} +, {id:'20-9-3', text:'level 3-20-9-3'} +, {id:'20-9-4', text:'level 3-20-9-4'} +, {id:'20-9-5', text:'level 3-20-9-5'} +, {id:'20-9-6', text:'level 3-20-9-6'} +, {id:'20-9-7', text:'level 3-20-9-7'} +, {id:'20-9-8', text:'level 3-20-9-8'} +, {id:'20-9-9', text:'level 3-20-9-9'} +]} +, {id:'20-10-10', text:'level 2-20-10', item:[ + {id:'20-10-0', text:'level 3-20-10-0'} +, {id:'20-10-1', text:'level 3-20-10-1'} +, {id:'20-10-2', text:'level 3-20-10-2'} +, {id:'20-10-3', text:'level 3-20-10-3'} +, {id:'20-10-4', text:'level 3-20-10-4'} +, {id:'20-10-5', text:'level 3-20-10-5'} +, {id:'20-10-6', text:'level 3-20-10-6'} +, {id:'20-10-7', text:'level 3-20-10-7'} +, {id:'20-10-8', text:'level 3-20-10-8'} +, {id:'20-10-9', text:'level 3-20-10-9'} +]} +, {id:'20-11-10', text:'level 2-20-11', item:[ + {id:'20-11-0', text:'level 3-20-11-0'} +, {id:'20-11-1', text:'level 3-20-11-1'} +, {id:'20-11-2', text:'level 3-20-11-2'} +, {id:'20-11-3', text:'level 3-20-11-3'} +, {id:'20-11-4', text:'level 3-20-11-4'} +, {id:'20-11-5', text:'level 3-20-11-5'} +, {id:'20-11-6', text:'level 3-20-11-6'} +, {id:'20-11-7', text:'level 3-20-11-7'} +, {id:'20-11-8', text:'level 3-20-11-8'} +, {id:'20-11-9', text:'level 3-20-11-9'} +]} +, {id:'20-12-10', text:'level 2-20-12', item:[ + {id:'20-12-0', text:'level 3-20-12-0'} +, {id:'20-12-1', text:'level 3-20-12-1'} +, {id:'20-12-2', text:'level 3-20-12-2'} +, {id:'20-12-3', text:'level 3-20-12-3'} +, {id:'20-12-4', text:'level 3-20-12-4'} +, {id:'20-12-5', text:'level 3-20-12-5'} +, {id:'20-12-6', text:'level 3-20-12-6'} +, {id:'20-12-7', text:'level 3-20-12-7'} +, {id:'20-12-8', text:'level 3-20-12-8'} +, {id:'20-12-9', text:'level 3-20-12-9'} +]} +, {id:'20-13-10', text:'level 2-20-13', item:[ + {id:'20-13-0', text:'level 3-20-13-0'} +, {id:'20-13-1', text:'level 3-20-13-1'} +, {id:'20-13-2', text:'level 3-20-13-2'} +, {id:'20-13-3', text:'level 3-20-13-3'} +, {id:'20-13-4', text:'level 3-20-13-4'} +, {id:'20-13-5', text:'level 3-20-13-5'} +, {id:'20-13-6', text:'level 3-20-13-6'} +, {id:'20-13-7', text:'level 3-20-13-7'} +, {id:'20-13-8', text:'level 3-20-13-8'} +, {id:'20-13-9', text:'level 3-20-13-9'} +]} +, {id:'20-14-10', text:'level 2-20-14', item:[ + {id:'20-14-0', text:'level 3-20-14-0'} +, {id:'20-14-1', text:'level 3-20-14-1'} +, {id:'20-14-2', text:'level 3-20-14-2'} +, {id:'20-14-3', text:'level 3-20-14-3'} +, {id:'20-14-4', text:'level 3-20-14-4'} +, {id:'20-14-5', text:'level 3-20-14-5'} +, {id:'20-14-6', text:'level 3-20-14-6'} +, {id:'20-14-7', text:'level 3-20-14-7'} +, {id:'20-14-8', text:'level 3-20-14-8'} +, {id:'20-14-9', text:'level 3-20-14-9'} +]} +, {id:'20-15-10', text:'level 2-20-15', item:[ + {id:'20-15-0', text:'level 3-20-15-0'} +, {id:'20-15-1', text:'level 3-20-15-1'} +, {id:'20-15-2', text:'level 3-20-15-2'} +, {id:'20-15-3', text:'level 3-20-15-3'} +, {id:'20-15-4', text:'level 3-20-15-4'} +, {id:'20-15-5', text:'level 3-20-15-5'} +, {id:'20-15-6', text:'level 3-20-15-6'} +, {id:'20-15-7', text:'level 3-20-15-7'} +, {id:'20-15-8', text:'level 3-20-15-8'} +, {id:'20-15-9', text:'level 3-20-15-9'} +]} +, {id:'20-16-10', text:'level 2-20-16', item:[ + {id:'20-16-0', text:'level 3-20-16-0'} +, {id:'20-16-1', text:'level 3-20-16-1'} +, {id:'20-16-2', text:'level 3-20-16-2'} +, {id:'20-16-3', text:'level 3-20-16-3'} +, {id:'20-16-4', text:'level 3-20-16-4'} +, {id:'20-16-5', text:'level 3-20-16-5'} +, {id:'20-16-6', text:'level 3-20-16-6'} +, {id:'20-16-7', text:'level 3-20-16-7'} +, {id:'20-16-8', text:'level 3-20-16-8'} +, {id:'20-16-9', text:'level 3-20-16-9'} +]} +, {id:'20-17-10', text:'level 2-20-17', item:[ + {id:'20-17-0', text:'level 3-20-17-0'} +, {id:'20-17-1', text:'level 3-20-17-1'} +, {id:'20-17-2', text:'level 3-20-17-2'} +, {id:'20-17-3', text:'level 3-20-17-3'} +, {id:'20-17-4', text:'level 3-20-17-4'} +, {id:'20-17-5', text:'level 3-20-17-5'} +, {id:'20-17-6', text:'level 3-20-17-6'} +, {id:'20-17-7', text:'level 3-20-17-7'} +, {id:'20-17-8', text:'level 3-20-17-8'} +, {id:'20-17-9', text:'level 3-20-17-9'} +]} +, {id:'20-18-10', text:'level 2-20-18', item:[ + {id:'20-18-0', text:'level 3-20-18-0'} +, {id:'20-18-1', text:'level 3-20-18-1'} +, {id:'20-18-2', text:'level 3-20-18-2'} +, {id:'20-18-3', text:'level 3-20-18-3'} +, {id:'20-18-4', text:'level 3-20-18-4'} +, {id:'20-18-5', text:'level 3-20-18-5'} +, {id:'20-18-6', text:'level 3-20-18-6'} +, {id:'20-18-7', text:'level 3-20-18-7'} +, {id:'20-18-8', text:'level 3-20-18-8'} +, {id:'20-18-9', text:'level 3-20-18-9'} +]} +, {id:'20-19-10', text:'level 2-20-19', item:[ + {id:'20-19-0', text:'level 3-20-19-0'} +, {id:'20-19-1', text:'level 3-20-19-1'} +, {id:'20-19-2', text:'level 3-20-19-2'} +, {id:'20-19-3', text:'level 3-20-19-3'} +, {id:'20-19-4', text:'level 3-20-19-4'} +, {id:'20-19-5', text:'level 3-20-19-5'} +, {id:'20-19-6', text:'level 3-20-19-6'} +, {id:'20-19-7', text:'level 3-20-19-7'} +, {id:'20-19-8', text:'level 3-20-19-8'} +, {id:'20-19-9', text:'level 3-20-19-9'} +]} +]} +,{id:'21-20-10', text:'level 1-21', item:[ + {id:'21-0-10', text:'level 2-21-0', item:[ + {id:'21-0-0', text:'level 3-21-0-0'} +, {id:'21-0-1', text:'level 3-21-0-1'} +, {id:'21-0-2', text:'level 3-21-0-2'} +, {id:'21-0-3', text:'level 3-21-0-3'} +, {id:'21-0-4', text:'level 3-21-0-4'} +, {id:'21-0-5', text:'level 3-21-0-5'} +, {id:'21-0-6', text:'level 3-21-0-6'} +, {id:'21-0-7', text:'level 3-21-0-7'} +, {id:'21-0-8', text:'level 3-21-0-8'} +, {id:'21-0-9', text:'level 3-21-0-9'} +]} +, {id:'21-1-10', text:'level 2-21-1', item:[ + {id:'21-1-0', text:'level 3-21-1-0'} +, {id:'21-1-1', text:'level 3-21-1-1'} +, {id:'21-1-2', text:'level 3-21-1-2'} +, {id:'21-1-3', text:'level 3-21-1-3'} +, {id:'21-1-4', text:'level 3-21-1-4'} +, {id:'21-1-5', text:'level 3-21-1-5'} +, {id:'21-1-6', text:'level 3-21-1-6'} +, {id:'21-1-7', text:'level 3-21-1-7'} +, {id:'21-1-8', text:'level 3-21-1-8'} +, {id:'21-1-9', text:'level 3-21-1-9'} +]} +, {id:'21-2-10', text:'level 2-21-2', item:[ + {id:'21-2-0', text:'level 3-21-2-0'} +, {id:'21-2-1', text:'level 3-21-2-1'} +, {id:'21-2-2', text:'level 3-21-2-2'} +, {id:'21-2-3', text:'level 3-21-2-3'} +, {id:'21-2-4', text:'level 3-21-2-4'} +, {id:'21-2-5', text:'level 3-21-2-5'} +, {id:'21-2-6', text:'level 3-21-2-6'} +, {id:'21-2-7', text:'level 3-21-2-7'} +, {id:'21-2-8', text:'level 3-21-2-8'} +, {id:'21-2-9', text:'level 3-21-2-9'} +]} +, {id:'21-3-10', text:'level 2-21-3', item:[ + {id:'21-3-0', text:'level 3-21-3-0'} +, {id:'21-3-1', text:'level 3-21-3-1'} +, {id:'21-3-2', text:'level 3-21-3-2'} +, {id:'21-3-3', text:'level 3-21-3-3'} +, {id:'21-3-4', text:'level 3-21-3-4'} +, {id:'21-3-5', text:'level 3-21-3-5'} +, {id:'21-3-6', text:'level 3-21-3-6'} +, {id:'21-3-7', text:'level 3-21-3-7'} +, {id:'21-3-8', text:'level 3-21-3-8'} +, {id:'21-3-9', text:'level 3-21-3-9'} +]} +, {id:'21-4-10', text:'level 2-21-4', item:[ + {id:'21-4-0', text:'level 3-21-4-0'} +, {id:'21-4-1', text:'level 3-21-4-1'} +, {id:'21-4-2', text:'level 3-21-4-2'} +, {id:'21-4-3', text:'level 3-21-4-3'} +, {id:'21-4-4', text:'level 3-21-4-4'} +, {id:'21-4-5', text:'level 3-21-4-5'} +, {id:'21-4-6', text:'level 3-21-4-6'} +, {id:'21-4-7', text:'level 3-21-4-7'} +, {id:'21-4-8', text:'level 3-21-4-8'} +, {id:'21-4-9', text:'level 3-21-4-9'} +]} +, {id:'21-5-10', text:'level 2-21-5', item:[ + {id:'21-5-0', text:'level 3-21-5-0'} +, {id:'21-5-1', text:'level 3-21-5-1'} +, {id:'21-5-2', text:'level 3-21-5-2'} +, {id:'21-5-3', text:'level 3-21-5-3'} +, {id:'21-5-4', text:'level 3-21-5-4'} +, {id:'21-5-5', text:'level 3-21-5-5'} +, {id:'21-5-6', text:'level 3-21-5-6'} +, {id:'21-5-7', text:'level 3-21-5-7'} +, {id:'21-5-8', text:'level 3-21-5-8'} +, {id:'21-5-9', text:'level 3-21-5-9'} +]} +, {id:'21-6-10', text:'level 2-21-6', item:[ + {id:'21-6-0', text:'level 3-21-6-0'} +, {id:'21-6-1', text:'level 3-21-6-1'} +, {id:'21-6-2', text:'level 3-21-6-2'} +, {id:'21-6-3', text:'level 3-21-6-3'} +, {id:'21-6-4', text:'level 3-21-6-4'} +, {id:'21-6-5', text:'level 3-21-6-5'} +, {id:'21-6-6', text:'level 3-21-6-6'} +, {id:'21-6-7', text:'level 3-21-6-7'} +, {id:'21-6-8', text:'level 3-21-6-8'} +, {id:'21-6-9', text:'level 3-21-6-9'} +]} +, {id:'21-7-10', text:'level 2-21-7', item:[ + {id:'21-7-0', text:'level 3-21-7-0'} +, {id:'21-7-1', text:'level 3-21-7-1'} +, {id:'21-7-2', text:'level 3-21-7-2'} +, {id:'21-7-3', text:'level 3-21-7-3'} +, {id:'21-7-4', text:'level 3-21-7-4'} +, {id:'21-7-5', text:'level 3-21-7-5'} +, {id:'21-7-6', text:'level 3-21-7-6'} +, {id:'21-7-7', text:'level 3-21-7-7'} +, {id:'21-7-8', text:'level 3-21-7-8'} +, {id:'21-7-9', text:'level 3-21-7-9'} +]} +, {id:'21-8-10', text:'level 2-21-8', item:[ + {id:'21-8-0', text:'level 3-21-8-0'} +, {id:'21-8-1', text:'level 3-21-8-1'} +, {id:'21-8-2', text:'level 3-21-8-2'} +, {id:'21-8-3', text:'level 3-21-8-3'} +, {id:'21-8-4', text:'level 3-21-8-4'} +, {id:'21-8-5', text:'level 3-21-8-5'} +, {id:'21-8-6', text:'level 3-21-8-6'} +, {id:'21-8-7', text:'level 3-21-8-7'} +, {id:'21-8-8', text:'level 3-21-8-8'} +, {id:'21-8-9', text:'level 3-21-8-9'} +]} +, {id:'21-9-10', text:'level 2-21-9', item:[ + {id:'21-9-0', text:'level 3-21-9-0'} +, {id:'21-9-1', text:'level 3-21-9-1'} +, {id:'21-9-2', text:'level 3-21-9-2'} +, {id:'21-9-3', text:'level 3-21-9-3'} +, {id:'21-9-4', text:'level 3-21-9-4'} +, {id:'21-9-5', text:'level 3-21-9-5'} +, {id:'21-9-6', text:'level 3-21-9-6'} +, {id:'21-9-7', text:'level 3-21-9-7'} +, {id:'21-9-8', text:'level 3-21-9-8'} +, {id:'21-9-9', text:'level 3-21-9-9'} +]} +, {id:'21-10-10', text:'level 2-21-10', item:[ + {id:'21-10-0', text:'level 3-21-10-0'} +, {id:'21-10-1', text:'level 3-21-10-1'} +, {id:'21-10-2', text:'level 3-21-10-2'} +, {id:'21-10-3', text:'level 3-21-10-3'} +, {id:'21-10-4', text:'level 3-21-10-4'} +, {id:'21-10-5', text:'level 3-21-10-5'} +, {id:'21-10-6', text:'level 3-21-10-6'} +, {id:'21-10-7', text:'level 3-21-10-7'} +, {id:'21-10-8', text:'level 3-21-10-8'} +, {id:'21-10-9', text:'level 3-21-10-9'} +]} +, {id:'21-11-10', text:'level 2-21-11', item:[ + {id:'21-11-0', text:'level 3-21-11-0'} +, {id:'21-11-1', text:'level 3-21-11-1'} +, {id:'21-11-2', text:'level 3-21-11-2'} +, {id:'21-11-3', text:'level 3-21-11-3'} +, {id:'21-11-4', text:'level 3-21-11-4'} +, {id:'21-11-5', text:'level 3-21-11-5'} +, {id:'21-11-6', text:'level 3-21-11-6'} +, {id:'21-11-7', text:'level 3-21-11-7'} +, {id:'21-11-8', text:'level 3-21-11-8'} +, {id:'21-11-9', text:'level 3-21-11-9'} +]} +, {id:'21-12-10', text:'level 2-21-12', item:[ + {id:'21-12-0', text:'level 3-21-12-0'} +, {id:'21-12-1', text:'level 3-21-12-1'} +, {id:'21-12-2', text:'level 3-21-12-2'} +, {id:'21-12-3', text:'level 3-21-12-3'} +, {id:'21-12-4', text:'level 3-21-12-4'} +, {id:'21-12-5', text:'level 3-21-12-5'} +, {id:'21-12-6', text:'level 3-21-12-6'} +, {id:'21-12-7', text:'level 3-21-12-7'} +, {id:'21-12-8', text:'level 3-21-12-8'} +, {id:'21-12-9', text:'level 3-21-12-9'} +]} +, {id:'21-13-10', text:'level 2-21-13', item:[ + {id:'21-13-0', text:'level 3-21-13-0'} +, {id:'21-13-1', text:'level 3-21-13-1'} +, {id:'21-13-2', text:'level 3-21-13-2'} +, {id:'21-13-3', text:'level 3-21-13-3'} +, {id:'21-13-4', text:'level 3-21-13-4'} +, {id:'21-13-5', text:'level 3-21-13-5'} +, {id:'21-13-6', text:'level 3-21-13-6'} +, {id:'21-13-7', text:'level 3-21-13-7'} +, {id:'21-13-8', text:'level 3-21-13-8'} +, {id:'21-13-9', text:'level 3-21-13-9'} +]} +, {id:'21-14-10', text:'level 2-21-14', item:[ + {id:'21-14-0', text:'level 3-21-14-0'} +, {id:'21-14-1', text:'level 3-21-14-1'} +, {id:'21-14-2', text:'level 3-21-14-2'} +, {id:'21-14-3', text:'level 3-21-14-3'} +, {id:'21-14-4', text:'level 3-21-14-4'} +, {id:'21-14-5', text:'level 3-21-14-5'} +, {id:'21-14-6', text:'level 3-21-14-6'} +, {id:'21-14-7', text:'level 3-21-14-7'} +, {id:'21-14-8', text:'level 3-21-14-8'} +, {id:'21-14-9', text:'level 3-21-14-9'} +]} +, {id:'21-15-10', text:'level 2-21-15', item:[ + {id:'21-15-0', text:'level 3-21-15-0'} +, {id:'21-15-1', text:'level 3-21-15-1'} +, {id:'21-15-2', text:'level 3-21-15-2'} +, {id:'21-15-3', text:'level 3-21-15-3'} +, {id:'21-15-4', text:'level 3-21-15-4'} +, {id:'21-15-5', text:'level 3-21-15-5'} +, {id:'21-15-6', text:'level 3-21-15-6'} +, {id:'21-15-7', text:'level 3-21-15-7'} +, {id:'21-15-8', text:'level 3-21-15-8'} +, {id:'21-15-9', text:'level 3-21-15-9'} +]} +, {id:'21-16-10', text:'level 2-21-16', item:[ + {id:'21-16-0', text:'level 3-21-16-0'} +, {id:'21-16-1', text:'level 3-21-16-1'} +, {id:'21-16-2', text:'level 3-21-16-2'} +, {id:'21-16-3', text:'level 3-21-16-3'} +, {id:'21-16-4', text:'level 3-21-16-4'} +, {id:'21-16-5', text:'level 3-21-16-5'} +, {id:'21-16-6', text:'level 3-21-16-6'} +, {id:'21-16-7', text:'level 3-21-16-7'} +, {id:'21-16-8', text:'level 3-21-16-8'} +, {id:'21-16-9', text:'level 3-21-16-9'} +]} +, {id:'21-17-10', text:'level 2-21-17', item:[ + {id:'21-17-0', text:'level 3-21-17-0'} +, {id:'21-17-1', text:'level 3-21-17-1'} +, {id:'21-17-2', text:'level 3-21-17-2'} +, {id:'21-17-3', text:'level 3-21-17-3'} +, {id:'21-17-4', text:'level 3-21-17-4'} +, {id:'21-17-5', text:'level 3-21-17-5'} +, {id:'21-17-6', text:'level 3-21-17-6'} +, {id:'21-17-7', text:'level 3-21-17-7'} +, {id:'21-17-8', text:'level 3-21-17-8'} +, {id:'21-17-9', text:'level 3-21-17-9'} +]} +, {id:'21-18-10', text:'level 2-21-18', item:[ + {id:'21-18-0', text:'level 3-21-18-0'} +, {id:'21-18-1', text:'level 3-21-18-1'} +, {id:'21-18-2', text:'level 3-21-18-2'} +, {id:'21-18-3', text:'level 3-21-18-3'} +, {id:'21-18-4', text:'level 3-21-18-4'} +, {id:'21-18-5', text:'level 3-21-18-5'} +, {id:'21-18-6', text:'level 3-21-18-6'} +, {id:'21-18-7', text:'level 3-21-18-7'} +, {id:'21-18-8', text:'level 3-21-18-8'} +, {id:'21-18-9', text:'level 3-21-18-9'} +]} +, {id:'21-19-10', text:'level 2-21-19', item:[ + {id:'21-19-0', text:'level 3-21-19-0'} +, {id:'21-19-1', text:'level 3-21-19-1'} +, {id:'21-19-2', text:'level 3-21-19-2'} +, {id:'21-19-3', text:'level 3-21-19-3'} +, {id:'21-19-4', text:'level 3-21-19-4'} +, {id:'21-19-5', text:'level 3-21-19-5'} +, {id:'21-19-6', text:'level 3-21-19-6'} +, {id:'21-19-7', text:'level 3-21-19-7'} +, {id:'21-19-8', text:'level 3-21-19-8'} +, {id:'21-19-9', text:'level 3-21-19-9'} +]} +]} +,{id:'22-20-10', text:'level 1-22', item:[ + {id:'22-0-10', text:'level 2-22-0', item:[ + {id:'22-0-0', text:'level 3-22-0-0'} +, {id:'22-0-1', text:'level 3-22-0-1'} +, {id:'22-0-2', text:'level 3-22-0-2'} +, {id:'22-0-3', text:'level 3-22-0-3'} +, {id:'22-0-4', text:'level 3-22-0-4'} +, {id:'22-0-5', text:'level 3-22-0-5'} +, {id:'22-0-6', text:'level 3-22-0-6'} +, {id:'22-0-7', text:'level 3-22-0-7'} +, {id:'22-0-8', text:'level 3-22-0-8'} +, {id:'22-0-9', text:'level 3-22-0-9'} +]} +, {id:'22-1-10', text:'level 2-22-1', item:[ + {id:'22-1-0', text:'level 3-22-1-0'} +, {id:'22-1-1', text:'level 3-22-1-1'} +, {id:'22-1-2', text:'level 3-22-1-2'} +, {id:'22-1-3', text:'level 3-22-1-3'} +, {id:'22-1-4', text:'level 3-22-1-4'} +, {id:'22-1-5', text:'level 3-22-1-5'} +, {id:'22-1-6', text:'level 3-22-1-6'} +, {id:'22-1-7', text:'level 3-22-1-7'} +, {id:'22-1-8', text:'level 3-22-1-8'} +, {id:'22-1-9', text:'level 3-22-1-9'} +]} +, {id:'22-2-10', text:'level 2-22-2', item:[ + {id:'22-2-0', text:'level 3-22-2-0'} +, {id:'22-2-1', text:'level 3-22-2-1'} +, {id:'22-2-2', text:'level 3-22-2-2'} +, {id:'22-2-3', text:'level 3-22-2-3'} +, {id:'22-2-4', text:'level 3-22-2-4'} +, {id:'22-2-5', text:'level 3-22-2-5'} +, {id:'22-2-6', text:'level 3-22-2-6'} +, {id:'22-2-7', text:'level 3-22-2-7'} +, {id:'22-2-8', text:'level 3-22-2-8'} +, {id:'22-2-9', text:'level 3-22-2-9'} +]} +, {id:'22-3-10', text:'level 2-22-3', item:[ + {id:'22-3-0', text:'level 3-22-3-0'} +, {id:'22-3-1', text:'level 3-22-3-1'} +, {id:'22-3-2', text:'level 3-22-3-2'} +, {id:'22-3-3', text:'level 3-22-3-3'} +, {id:'22-3-4', text:'level 3-22-3-4'} +, {id:'22-3-5', text:'level 3-22-3-5'} +, {id:'22-3-6', text:'level 3-22-3-6'} +, {id:'22-3-7', text:'level 3-22-3-7'} +, {id:'22-3-8', text:'level 3-22-3-8'} +, {id:'22-3-9', text:'level 3-22-3-9'} +]} +, {id:'22-4-10', text:'level 2-22-4', item:[ + {id:'22-4-0', text:'level 3-22-4-0'} +, {id:'22-4-1', text:'level 3-22-4-1'} +, {id:'22-4-2', text:'level 3-22-4-2'} +, {id:'22-4-3', text:'level 3-22-4-3'} +, {id:'22-4-4', text:'level 3-22-4-4'} +, {id:'22-4-5', text:'level 3-22-4-5'} +, {id:'22-4-6', text:'level 3-22-4-6'} +, {id:'22-4-7', text:'level 3-22-4-7'} +, {id:'22-4-8', text:'level 3-22-4-8'} +, {id:'22-4-9', text:'level 3-22-4-9'} +]} +, {id:'22-5-10', text:'level 2-22-5', item:[ + {id:'22-5-0', text:'level 3-22-5-0'} +, {id:'22-5-1', text:'level 3-22-5-1'} +, {id:'22-5-2', text:'level 3-22-5-2'} +, {id:'22-5-3', text:'level 3-22-5-3'} +, {id:'22-5-4', text:'level 3-22-5-4'} +, {id:'22-5-5', text:'level 3-22-5-5'} +, {id:'22-5-6', text:'level 3-22-5-6'} +, {id:'22-5-7', text:'level 3-22-5-7'} +, {id:'22-5-8', text:'level 3-22-5-8'} +, {id:'22-5-9', text:'level 3-22-5-9'} +]} +, {id:'22-6-10', text:'level 2-22-6', item:[ + {id:'22-6-0', text:'level 3-22-6-0'} +, {id:'22-6-1', text:'level 3-22-6-1'} +, {id:'22-6-2', text:'level 3-22-6-2'} +, {id:'22-6-3', text:'level 3-22-6-3'} +, {id:'22-6-4', text:'level 3-22-6-4'} +, {id:'22-6-5', text:'level 3-22-6-5'} +, {id:'22-6-6', text:'level 3-22-6-6'} +, {id:'22-6-7', text:'level 3-22-6-7'} +, {id:'22-6-8', text:'level 3-22-6-8'} +, {id:'22-6-9', text:'level 3-22-6-9'} +]} +, {id:'22-7-10', text:'level 2-22-7', item:[ + {id:'22-7-0', text:'level 3-22-7-0'} +, {id:'22-7-1', text:'level 3-22-7-1'} +, {id:'22-7-2', text:'level 3-22-7-2'} +, {id:'22-7-3', text:'level 3-22-7-3'} +, {id:'22-7-4', text:'level 3-22-7-4'} +, {id:'22-7-5', text:'level 3-22-7-5'} +, {id:'22-7-6', text:'level 3-22-7-6'} +, {id:'22-7-7', text:'level 3-22-7-7'} +, {id:'22-7-8', text:'level 3-22-7-8'} +, {id:'22-7-9', text:'level 3-22-7-9'} +]} +, {id:'22-8-10', text:'level 2-22-8', item:[ + {id:'22-8-0', text:'level 3-22-8-0'} +, {id:'22-8-1', text:'level 3-22-8-1'} +, {id:'22-8-2', text:'level 3-22-8-2'} +, {id:'22-8-3', text:'level 3-22-8-3'} +, {id:'22-8-4', text:'level 3-22-8-4'} +, {id:'22-8-5', text:'level 3-22-8-5'} +, {id:'22-8-6', text:'level 3-22-8-6'} +, {id:'22-8-7', text:'level 3-22-8-7'} +, {id:'22-8-8', text:'level 3-22-8-8'} +, {id:'22-8-9', text:'level 3-22-8-9'} +]} +, {id:'22-9-10', text:'level 2-22-9', item:[ + {id:'22-9-0', text:'level 3-22-9-0'} +, {id:'22-9-1', text:'level 3-22-9-1'} +, {id:'22-9-2', text:'level 3-22-9-2'} +, {id:'22-9-3', text:'level 3-22-9-3'} +, {id:'22-9-4', text:'level 3-22-9-4'} +, {id:'22-9-5', text:'level 3-22-9-5'} +, {id:'22-9-6', text:'level 3-22-9-6'} +, {id:'22-9-7', text:'level 3-22-9-7'} +, {id:'22-9-8', text:'level 3-22-9-8'} +, {id:'22-9-9', text:'level 3-22-9-9'} +]} +, {id:'22-10-10', text:'level 2-22-10', item:[ + {id:'22-10-0', text:'level 3-22-10-0'} +, {id:'22-10-1', text:'level 3-22-10-1'} +, {id:'22-10-2', text:'level 3-22-10-2'} +, {id:'22-10-3', text:'level 3-22-10-3'} +, {id:'22-10-4', text:'level 3-22-10-4'} +, {id:'22-10-5', text:'level 3-22-10-5'} +, {id:'22-10-6', text:'level 3-22-10-6'} +, {id:'22-10-7', text:'level 3-22-10-7'} +, {id:'22-10-8', text:'level 3-22-10-8'} +, {id:'22-10-9', text:'level 3-22-10-9'} +]} +, {id:'22-11-10', text:'level 2-22-11', item:[ + {id:'22-11-0', text:'level 3-22-11-0'} +, {id:'22-11-1', text:'level 3-22-11-1'} +, {id:'22-11-2', text:'level 3-22-11-2'} +, {id:'22-11-3', text:'level 3-22-11-3'} +, {id:'22-11-4', text:'level 3-22-11-4'} +, {id:'22-11-5', text:'level 3-22-11-5'} +, {id:'22-11-6', text:'level 3-22-11-6'} +, {id:'22-11-7', text:'level 3-22-11-7'} +, {id:'22-11-8', text:'level 3-22-11-8'} +, {id:'22-11-9', text:'level 3-22-11-9'} +]} +, {id:'22-12-10', text:'level 2-22-12', item:[ + {id:'22-12-0', text:'level 3-22-12-0'} +, {id:'22-12-1', text:'level 3-22-12-1'} +, {id:'22-12-2', text:'level 3-22-12-2'} +, {id:'22-12-3', text:'level 3-22-12-3'} +, {id:'22-12-4', text:'level 3-22-12-4'} +, {id:'22-12-5', text:'level 3-22-12-5'} +, {id:'22-12-6', text:'level 3-22-12-6'} +, {id:'22-12-7', text:'level 3-22-12-7'} +, {id:'22-12-8', text:'level 3-22-12-8'} +, {id:'22-12-9', text:'level 3-22-12-9'} +]} +, {id:'22-13-10', text:'level 2-22-13', item:[ + {id:'22-13-0', text:'level 3-22-13-0'} +, {id:'22-13-1', text:'level 3-22-13-1'} +, {id:'22-13-2', text:'level 3-22-13-2'} +, {id:'22-13-3', text:'level 3-22-13-3'} +, {id:'22-13-4', text:'level 3-22-13-4'} +, {id:'22-13-5', text:'level 3-22-13-5'} +, {id:'22-13-6', text:'level 3-22-13-6'} +, {id:'22-13-7', text:'level 3-22-13-7'} +, {id:'22-13-8', text:'level 3-22-13-8'} +, {id:'22-13-9', text:'level 3-22-13-9'} +]} +, {id:'22-14-10', text:'level 2-22-14', item:[ + {id:'22-14-0', text:'level 3-22-14-0'} +, {id:'22-14-1', text:'level 3-22-14-1'} +, {id:'22-14-2', text:'level 3-22-14-2'} +, {id:'22-14-3', text:'level 3-22-14-3'} +, {id:'22-14-4', text:'level 3-22-14-4'} +, {id:'22-14-5', text:'level 3-22-14-5'} +, {id:'22-14-6', text:'level 3-22-14-6'} +, {id:'22-14-7', text:'level 3-22-14-7'} +, {id:'22-14-8', text:'level 3-22-14-8'} +, {id:'22-14-9', text:'level 3-22-14-9'} +]} +, {id:'22-15-10', text:'level 2-22-15', item:[ + {id:'22-15-0', text:'level 3-22-15-0'} +, {id:'22-15-1', text:'level 3-22-15-1'} +, {id:'22-15-2', text:'level 3-22-15-2'} +, {id:'22-15-3', text:'level 3-22-15-3'} +, {id:'22-15-4', text:'level 3-22-15-4'} +, {id:'22-15-5', text:'level 3-22-15-5'} +, {id:'22-15-6', text:'level 3-22-15-6'} +, {id:'22-15-7', text:'level 3-22-15-7'} +, {id:'22-15-8', text:'level 3-22-15-8'} +, {id:'22-15-9', text:'level 3-22-15-9'} +]} +, {id:'22-16-10', text:'level 2-22-16', item:[ + {id:'22-16-0', text:'level 3-22-16-0'} +, {id:'22-16-1', text:'level 3-22-16-1'} +, {id:'22-16-2', text:'level 3-22-16-2'} +, {id:'22-16-3', text:'level 3-22-16-3'} +, {id:'22-16-4', text:'level 3-22-16-4'} +, {id:'22-16-5', text:'level 3-22-16-5'} +, {id:'22-16-6', text:'level 3-22-16-6'} +, {id:'22-16-7', text:'level 3-22-16-7'} +, {id:'22-16-8', text:'level 3-22-16-8'} +, {id:'22-16-9', text:'level 3-22-16-9'} +]} +, {id:'22-17-10', text:'level 2-22-17', item:[ + {id:'22-17-0', text:'level 3-22-17-0'} +, {id:'22-17-1', text:'level 3-22-17-1'} +, {id:'22-17-2', text:'level 3-22-17-2'} +, {id:'22-17-3', text:'level 3-22-17-3'} +, {id:'22-17-4', text:'level 3-22-17-4'} +, {id:'22-17-5', text:'level 3-22-17-5'} +, {id:'22-17-6', text:'level 3-22-17-6'} +, {id:'22-17-7', text:'level 3-22-17-7'} +, {id:'22-17-8', text:'level 3-22-17-8'} +, {id:'22-17-9', text:'level 3-22-17-9'} +]} +, {id:'22-18-10', text:'level 2-22-18', item:[ + {id:'22-18-0', text:'level 3-22-18-0'} +, {id:'22-18-1', text:'level 3-22-18-1'} +, {id:'22-18-2', text:'level 3-22-18-2'} +, {id:'22-18-3', text:'level 3-22-18-3'} +, {id:'22-18-4', text:'level 3-22-18-4'} +, {id:'22-18-5', text:'level 3-22-18-5'} +, {id:'22-18-6', text:'level 3-22-18-6'} +, {id:'22-18-7', text:'level 3-22-18-7'} +, {id:'22-18-8', text:'level 3-22-18-8'} +, {id:'22-18-9', text:'level 3-22-18-9'} +]} +, {id:'22-19-10', text:'level 2-22-19', item:[ + {id:'22-19-0', text:'level 3-22-19-0'} +, {id:'22-19-1', text:'level 3-22-19-1'} +, {id:'22-19-2', text:'level 3-22-19-2'} +, {id:'22-19-3', text:'level 3-22-19-3'} +, {id:'22-19-4', text:'level 3-22-19-4'} +, {id:'22-19-5', text:'level 3-22-19-5'} +, {id:'22-19-6', text:'level 3-22-19-6'} +, {id:'22-19-7', text:'level 3-22-19-7'} +, {id:'22-19-8', text:'level 3-22-19-8'} +, {id:'22-19-9', text:'level 3-22-19-9'} +]} +]} +,{id:'23-20-10', text:'level 1-23', item:[ + {id:'23-0-10', text:'level 2-23-0', item:[ + {id:'23-0-0', text:'level 3-23-0-0'} +, {id:'23-0-1', text:'level 3-23-0-1'} +, {id:'23-0-2', text:'level 3-23-0-2'} +, {id:'23-0-3', text:'level 3-23-0-3'} +, {id:'23-0-4', text:'level 3-23-0-4'} +, {id:'23-0-5', text:'level 3-23-0-5'} +, {id:'23-0-6', text:'level 3-23-0-6'} +, {id:'23-0-7', text:'level 3-23-0-7'} +, {id:'23-0-8', text:'level 3-23-0-8'} +, {id:'23-0-9', text:'level 3-23-0-9'} +]} +, {id:'23-1-10', text:'level 2-23-1', item:[ + {id:'23-1-0', text:'level 3-23-1-0'} +, {id:'23-1-1', text:'level 3-23-1-1'} +, {id:'23-1-2', text:'level 3-23-1-2'} +, {id:'23-1-3', text:'level 3-23-1-3'} +, {id:'23-1-4', text:'level 3-23-1-4'} +, {id:'23-1-5', text:'level 3-23-1-5'} +, {id:'23-1-6', text:'level 3-23-1-6'} +, {id:'23-1-7', text:'level 3-23-1-7'} +, {id:'23-1-8', text:'level 3-23-1-8'} +, {id:'23-1-9', text:'level 3-23-1-9'} +]} +, {id:'23-2-10', text:'level 2-23-2', item:[ + {id:'23-2-0', text:'level 3-23-2-0'} +, {id:'23-2-1', text:'level 3-23-2-1'} +, {id:'23-2-2', text:'level 3-23-2-2'} +, {id:'23-2-3', text:'level 3-23-2-3'} +, {id:'23-2-4', text:'level 3-23-2-4'} +, {id:'23-2-5', text:'level 3-23-2-5'} +, {id:'23-2-6', text:'level 3-23-2-6'} +, {id:'23-2-7', text:'level 3-23-2-7'} +, {id:'23-2-8', text:'level 3-23-2-8'} +, {id:'23-2-9', text:'level 3-23-2-9'} +]} +, {id:'23-3-10', text:'level 2-23-3', item:[ + {id:'23-3-0', text:'level 3-23-3-0'} +, {id:'23-3-1', text:'level 3-23-3-1'} +, {id:'23-3-2', text:'level 3-23-3-2'} +, {id:'23-3-3', text:'level 3-23-3-3'} +, {id:'23-3-4', text:'level 3-23-3-4'} +, {id:'23-3-5', text:'level 3-23-3-5'} +, {id:'23-3-6', text:'level 3-23-3-6'} +, {id:'23-3-7', text:'level 3-23-3-7'} +, {id:'23-3-8', text:'level 3-23-3-8'} +, {id:'23-3-9', text:'level 3-23-3-9'} +]} +, {id:'23-4-10', text:'level 2-23-4', item:[ + {id:'23-4-0', text:'level 3-23-4-0'} +, {id:'23-4-1', text:'level 3-23-4-1'} +, {id:'23-4-2', text:'level 3-23-4-2'} +, {id:'23-4-3', text:'level 3-23-4-3'} +, {id:'23-4-4', text:'level 3-23-4-4'} +, {id:'23-4-5', text:'level 3-23-4-5'} +, {id:'23-4-6', text:'level 3-23-4-6'} +, {id:'23-4-7', text:'level 3-23-4-7'} +, {id:'23-4-8', text:'level 3-23-4-8'} +, {id:'23-4-9', text:'level 3-23-4-9'} +]} +, {id:'23-5-10', text:'level 2-23-5', item:[ + {id:'23-5-0', text:'level 3-23-5-0'} +, {id:'23-5-1', text:'level 3-23-5-1'} +, {id:'23-5-2', text:'level 3-23-5-2'} +, {id:'23-5-3', text:'level 3-23-5-3'} +, {id:'23-5-4', text:'level 3-23-5-4'} +, {id:'23-5-5', text:'level 3-23-5-5'} +, {id:'23-5-6', text:'level 3-23-5-6'} +, {id:'23-5-7', text:'level 3-23-5-7'} +, {id:'23-5-8', text:'level 3-23-5-8'} +, {id:'23-5-9', text:'level 3-23-5-9'} +]} +, {id:'23-6-10', text:'level 2-23-6', item:[ + {id:'23-6-0', text:'level 3-23-6-0'} +, {id:'23-6-1', text:'level 3-23-6-1'} +, {id:'23-6-2', text:'level 3-23-6-2'} +, {id:'23-6-3', text:'level 3-23-6-3'} +, {id:'23-6-4', text:'level 3-23-6-4'} +, {id:'23-6-5', text:'level 3-23-6-5'} +, {id:'23-6-6', text:'level 3-23-6-6'} +, {id:'23-6-7', text:'level 3-23-6-7'} +, {id:'23-6-8', text:'level 3-23-6-8'} +, {id:'23-6-9', text:'level 3-23-6-9'} +]} +, {id:'23-7-10', text:'level 2-23-7', item:[ + {id:'23-7-0', text:'level 3-23-7-0'} +, {id:'23-7-1', text:'level 3-23-7-1'} +, {id:'23-7-2', text:'level 3-23-7-2'} +, {id:'23-7-3', text:'level 3-23-7-3'} +, {id:'23-7-4', text:'level 3-23-7-4'} +, {id:'23-7-5', text:'level 3-23-7-5'} +, {id:'23-7-6', text:'level 3-23-7-6'} +, {id:'23-7-7', text:'level 3-23-7-7'} +, {id:'23-7-8', text:'level 3-23-7-8'} +, {id:'23-7-9', text:'level 3-23-7-9'} +]} +, {id:'23-8-10', text:'level 2-23-8', item:[ + {id:'23-8-0', text:'level 3-23-8-0'} +, {id:'23-8-1', text:'level 3-23-8-1'} +, {id:'23-8-2', text:'level 3-23-8-2'} +, {id:'23-8-3', text:'level 3-23-8-3'} +, {id:'23-8-4', text:'level 3-23-8-4'} +, {id:'23-8-5', text:'level 3-23-8-5'} +, {id:'23-8-6', text:'level 3-23-8-6'} +, {id:'23-8-7', text:'level 3-23-8-7'} +, {id:'23-8-8', text:'level 3-23-8-8'} +, {id:'23-8-9', text:'level 3-23-8-9'} +]} +, {id:'23-9-10', text:'level 2-23-9', item:[ + {id:'23-9-0', text:'level 3-23-9-0'} +, {id:'23-9-1', text:'level 3-23-9-1'} +, {id:'23-9-2', text:'level 3-23-9-2'} +, {id:'23-9-3', text:'level 3-23-9-3'} +, {id:'23-9-4', text:'level 3-23-9-4'} +, {id:'23-9-5', text:'level 3-23-9-5'} +, {id:'23-9-6', text:'level 3-23-9-6'} +, {id:'23-9-7', text:'level 3-23-9-7'} +, {id:'23-9-8', text:'level 3-23-9-8'} +, {id:'23-9-9', text:'level 3-23-9-9'} +]} +, {id:'23-10-10', text:'level 2-23-10', item:[ + {id:'23-10-0', text:'level 3-23-10-0'} +, {id:'23-10-1', text:'level 3-23-10-1'} +, {id:'23-10-2', text:'level 3-23-10-2'} +, {id:'23-10-3', text:'level 3-23-10-3'} +, {id:'23-10-4', text:'level 3-23-10-4'} +, {id:'23-10-5', text:'level 3-23-10-5'} +, {id:'23-10-6', text:'level 3-23-10-6'} +, {id:'23-10-7', text:'level 3-23-10-7'} +, {id:'23-10-8', text:'level 3-23-10-8'} +, {id:'23-10-9', text:'level 3-23-10-9'} +]} +, {id:'23-11-10', text:'level 2-23-11', item:[ + {id:'23-11-0', text:'level 3-23-11-0'} +, {id:'23-11-1', text:'level 3-23-11-1'} +, {id:'23-11-2', text:'level 3-23-11-2'} +, {id:'23-11-3', text:'level 3-23-11-3'} +, {id:'23-11-4', text:'level 3-23-11-4'} +, {id:'23-11-5', text:'level 3-23-11-5'} +, {id:'23-11-6', text:'level 3-23-11-6'} +, {id:'23-11-7', text:'level 3-23-11-7'} +, {id:'23-11-8', text:'level 3-23-11-8'} +, {id:'23-11-9', text:'level 3-23-11-9'} +]} +, {id:'23-12-10', text:'level 2-23-12', item:[ + {id:'23-12-0', text:'level 3-23-12-0'} +, {id:'23-12-1', text:'level 3-23-12-1'} +, {id:'23-12-2', text:'level 3-23-12-2'} +, {id:'23-12-3', text:'level 3-23-12-3'} +, {id:'23-12-4', text:'level 3-23-12-4'} +, {id:'23-12-5', text:'level 3-23-12-5'} +, {id:'23-12-6', text:'level 3-23-12-6'} +, {id:'23-12-7', text:'level 3-23-12-7'} +, {id:'23-12-8', text:'level 3-23-12-8'} +, {id:'23-12-9', text:'level 3-23-12-9'} +]} +, {id:'23-13-10', text:'level 2-23-13', item:[ + {id:'23-13-0', text:'level 3-23-13-0'} +, {id:'23-13-1', text:'level 3-23-13-1'} +, {id:'23-13-2', text:'level 3-23-13-2'} +, {id:'23-13-3', text:'level 3-23-13-3'} +, {id:'23-13-4', text:'level 3-23-13-4'} +, {id:'23-13-5', text:'level 3-23-13-5'} +, {id:'23-13-6', text:'level 3-23-13-6'} +, {id:'23-13-7', text:'level 3-23-13-7'} +, {id:'23-13-8', text:'level 3-23-13-8'} +, {id:'23-13-9', text:'level 3-23-13-9'} +]} +, {id:'23-14-10', text:'level 2-23-14', item:[ + {id:'23-14-0', text:'level 3-23-14-0'} +, {id:'23-14-1', text:'level 3-23-14-1'} +, {id:'23-14-2', text:'level 3-23-14-2'} +, {id:'23-14-3', text:'level 3-23-14-3'} +, {id:'23-14-4', text:'level 3-23-14-4'} +, {id:'23-14-5', text:'level 3-23-14-5'} +, {id:'23-14-6', text:'level 3-23-14-6'} +, {id:'23-14-7', text:'level 3-23-14-7'} +, {id:'23-14-8', text:'level 3-23-14-8'} +, {id:'23-14-9', text:'level 3-23-14-9'} +]} +, {id:'23-15-10', text:'level 2-23-15', item:[ + {id:'23-15-0', text:'level 3-23-15-0'} +, {id:'23-15-1', text:'level 3-23-15-1'} +, {id:'23-15-2', text:'level 3-23-15-2'} +, {id:'23-15-3', text:'level 3-23-15-3'} +, {id:'23-15-4', text:'level 3-23-15-4'} +, {id:'23-15-5', text:'level 3-23-15-5'} +, {id:'23-15-6', text:'level 3-23-15-6'} +, {id:'23-15-7', text:'level 3-23-15-7'} +, {id:'23-15-8', text:'level 3-23-15-8'} +, {id:'23-15-9', text:'level 3-23-15-9'} +]} +, {id:'23-16-10', text:'level 2-23-16', item:[ + {id:'23-16-0', text:'level 3-23-16-0'} +, {id:'23-16-1', text:'level 3-23-16-1'} +, {id:'23-16-2', text:'level 3-23-16-2'} +, {id:'23-16-3', text:'level 3-23-16-3'} +, {id:'23-16-4', text:'level 3-23-16-4'} +, {id:'23-16-5', text:'level 3-23-16-5'} +, {id:'23-16-6', text:'level 3-23-16-6'} +, {id:'23-16-7', text:'level 3-23-16-7'} +, {id:'23-16-8', text:'level 3-23-16-8'} +, {id:'23-16-9', text:'level 3-23-16-9'} +]} +, {id:'23-17-10', text:'level 2-23-17', item:[ + {id:'23-17-0', text:'level 3-23-17-0'} +, {id:'23-17-1', text:'level 3-23-17-1'} +, {id:'23-17-2', text:'level 3-23-17-2'} +, {id:'23-17-3', text:'level 3-23-17-3'} +, {id:'23-17-4', text:'level 3-23-17-4'} +, {id:'23-17-5', text:'level 3-23-17-5'} +, {id:'23-17-6', text:'level 3-23-17-6'} +, {id:'23-17-7', text:'level 3-23-17-7'} +, {id:'23-17-8', text:'level 3-23-17-8'} +, {id:'23-17-9', text:'level 3-23-17-9'} +]} +, {id:'23-18-10', text:'level 2-23-18', item:[ + {id:'23-18-0', text:'level 3-23-18-0'} +, {id:'23-18-1', text:'level 3-23-18-1'} +, {id:'23-18-2', text:'level 3-23-18-2'} +, {id:'23-18-3', text:'level 3-23-18-3'} +, {id:'23-18-4', text:'level 3-23-18-4'} +, {id:'23-18-5', text:'level 3-23-18-5'} +, {id:'23-18-6', text:'level 3-23-18-6'} +, {id:'23-18-7', text:'level 3-23-18-7'} +, {id:'23-18-8', text:'level 3-23-18-8'} +, {id:'23-18-9', text:'level 3-23-18-9'} +]} +, {id:'23-19-10', text:'level 2-23-19', item:[ + {id:'23-19-0', text:'level 3-23-19-0'} +, {id:'23-19-1', text:'level 3-23-19-1'} +, {id:'23-19-2', text:'level 3-23-19-2'} +, {id:'23-19-3', text:'level 3-23-19-3'} +, {id:'23-19-4', text:'level 3-23-19-4'} +, {id:'23-19-5', text:'level 3-23-19-5'} +, {id:'23-19-6', text:'level 3-23-19-6'} +, {id:'23-19-7', text:'level 3-23-19-7'} +, {id:'23-19-8', text:'level 3-23-19-8'} +, {id:'23-19-9', text:'level 3-23-19-9'} +]} +]} +,{id:'24-20-10', text:'level 1-24', item:[ + {id:'24-0-10', text:'level 2-24-0', item:[ + {id:'24-0-0', text:'level 3-24-0-0'} +, {id:'24-0-1', text:'level 3-24-0-1'} +, {id:'24-0-2', text:'level 3-24-0-2'} +, {id:'24-0-3', text:'level 3-24-0-3'} +, {id:'24-0-4', text:'level 3-24-0-4'} +, {id:'24-0-5', text:'level 3-24-0-5'} +, {id:'24-0-6', text:'level 3-24-0-6'} +, {id:'24-0-7', text:'level 3-24-0-7'} +, {id:'24-0-8', text:'level 3-24-0-8'} +, {id:'24-0-9', text:'level 3-24-0-9'} +]} +, {id:'24-1-10', text:'level 2-24-1', item:[ + {id:'24-1-0', text:'level 3-24-1-0'} +, {id:'24-1-1', text:'level 3-24-1-1'} +, {id:'24-1-2', text:'level 3-24-1-2'} +, {id:'24-1-3', text:'level 3-24-1-3'} +, {id:'24-1-4', text:'level 3-24-1-4'} +, {id:'24-1-5', text:'level 3-24-1-5'} +, {id:'24-1-6', text:'level 3-24-1-6'} +, {id:'24-1-7', text:'level 3-24-1-7'} +, {id:'24-1-8', text:'level 3-24-1-8'} +, {id:'24-1-9', text:'level 3-24-1-9'} +]} +, {id:'24-2-10', text:'level 2-24-2', item:[ + {id:'24-2-0', text:'level 3-24-2-0'} +, {id:'24-2-1', text:'level 3-24-2-1'} +, {id:'24-2-2', text:'level 3-24-2-2'} +, {id:'24-2-3', text:'level 3-24-2-3'} +, {id:'24-2-4', text:'level 3-24-2-4'} +, {id:'24-2-5', text:'level 3-24-2-5'} +, {id:'24-2-6', text:'level 3-24-2-6'} +, {id:'24-2-7', text:'level 3-24-2-7'} +, {id:'24-2-8', text:'level 3-24-2-8'} +, {id:'24-2-9', text:'level 3-24-2-9'} +]} +, {id:'24-3-10', text:'level 2-24-3', item:[ + {id:'24-3-0', text:'level 3-24-3-0'} +, {id:'24-3-1', text:'level 3-24-3-1'} +, {id:'24-3-2', text:'level 3-24-3-2'} +, {id:'24-3-3', text:'level 3-24-3-3'} +, {id:'24-3-4', text:'level 3-24-3-4'} +, {id:'24-3-5', text:'level 3-24-3-5'} +, {id:'24-3-6', text:'level 3-24-3-6'} +, {id:'24-3-7', text:'level 3-24-3-7'} +, {id:'24-3-8', text:'level 3-24-3-8'} +, {id:'24-3-9', text:'level 3-24-3-9'} +]} +, {id:'24-4-10', text:'level 2-24-4', item:[ + {id:'24-4-0', text:'level 3-24-4-0'} +, {id:'24-4-1', text:'level 3-24-4-1'} +, {id:'24-4-2', text:'level 3-24-4-2'} +, {id:'24-4-3', text:'level 3-24-4-3'} +, {id:'24-4-4', text:'level 3-24-4-4'} +, {id:'24-4-5', text:'level 3-24-4-5'} +, {id:'24-4-6', text:'level 3-24-4-6'} +, {id:'24-4-7', text:'level 3-24-4-7'} +, {id:'24-4-8', text:'level 3-24-4-8'} +, {id:'24-4-9', text:'level 3-24-4-9'} +]} +, {id:'24-5-10', text:'level 2-24-5', item:[ + {id:'24-5-0', text:'level 3-24-5-0'} +, {id:'24-5-1', text:'level 3-24-5-1'} +, {id:'24-5-2', text:'level 3-24-5-2'} +, {id:'24-5-3', text:'level 3-24-5-3'} +, {id:'24-5-4', text:'level 3-24-5-4'} +, {id:'24-5-5', text:'level 3-24-5-5'} +, {id:'24-5-6', text:'level 3-24-5-6'} +, {id:'24-5-7', text:'level 3-24-5-7'} +, {id:'24-5-8', text:'level 3-24-5-8'} +, {id:'24-5-9', text:'level 3-24-5-9'} +]} +, {id:'24-6-10', text:'level 2-24-6', item:[ + {id:'24-6-0', text:'level 3-24-6-0'} +, {id:'24-6-1', text:'level 3-24-6-1'} +, {id:'24-6-2', text:'level 3-24-6-2'} +, {id:'24-6-3', text:'level 3-24-6-3'} +, {id:'24-6-4', text:'level 3-24-6-4'} +, {id:'24-6-5', text:'level 3-24-6-5'} +, {id:'24-6-6', text:'level 3-24-6-6'} +, {id:'24-6-7', text:'level 3-24-6-7'} +, {id:'24-6-8', text:'level 3-24-6-8'} +, {id:'24-6-9', text:'level 3-24-6-9'} +]} +, {id:'24-7-10', text:'level 2-24-7', item:[ + {id:'24-7-0', text:'level 3-24-7-0'} +, {id:'24-7-1', text:'level 3-24-7-1'} +, {id:'24-7-2', text:'level 3-24-7-2'} +, {id:'24-7-3', text:'level 3-24-7-3'} +, {id:'24-7-4', text:'level 3-24-7-4'} +, {id:'24-7-5', text:'level 3-24-7-5'} +, {id:'24-7-6', text:'level 3-24-7-6'} +, {id:'24-7-7', text:'level 3-24-7-7'} +, {id:'24-7-8', text:'level 3-24-7-8'} +, {id:'24-7-9', text:'level 3-24-7-9'} +]} +, {id:'24-8-10', text:'level 2-24-8', item:[ + {id:'24-8-0', text:'level 3-24-8-0'} +, {id:'24-8-1', text:'level 3-24-8-1'} +, {id:'24-8-2', text:'level 3-24-8-2'} +, {id:'24-8-3', text:'level 3-24-8-3'} +, {id:'24-8-4', text:'level 3-24-8-4'} +, {id:'24-8-5', text:'level 3-24-8-5'} +, {id:'24-8-6', text:'level 3-24-8-6'} +, {id:'24-8-7', text:'level 3-24-8-7'} +, {id:'24-8-8', text:'level 3-24-8-8'} +, {id:'24-8-9', text:'level 3-24-8-9'} +]} +, {id:'24-9-10', text:'level 2-24-9', item:[ + {id:'24-9-0', text:'level 3-24-9-0'} +, {id:'24-9-1', text:'level 3-24-9-1'} +, {id:'24-9-2', text:'level 3-24-9-2'} +, {id:'24-9-3', text:'level 3-24-9-3'} +, {id:'24-9-4', text:'level 3-24-9-4'} +, {id:'24-9-5', text:'level 3-24-9-5'} +, {id:'24-9-6', text:'level 3-24-9-6'} +, {id:'24-9-7', text:'level 3-24-9-7'} +, {id:'24-9-8', text:'level 3-24-9-8'} +, {id:'24-9-9', text:'level 3-24-9-9'} +]} +, {id:'24-10-10', text:'level 2-24-10', item:[ + {id:'24-10-0', text:'level 3-24-10-0'} +, {id:'24-10-1', text:'level 3-24-10-1'} +, {id:'24-10-2', text:'level 3-24-10-2'} +, {id:'24-10-3', text:'level 3-24-10-3'} +, {id:'24-10-4', text:'level 3-24-10-4'} +, {id:'24-10-5', text:'level 3-24-10-5'} +, {id:'24-10-6', text:'level 3-24-10-6'} +, {id:'24-10-7', text:'level 3-24-10-7'} +, {id:'24-10-8', text:'level 3-24-10-8'} +, {id:'24-10-9', text:'level 3-24-10-9'} +]} +, {id:'24-11-10', text:'level 2-24-11', item:[ + {id:'24-11-0', text:'level 3-24-11-0'} +, {id:'24-11-1', text:'level 3-24-11-1'} +, {id:'24-11-2', text:'level 3-24-11-2'} +, {id:'24-11-3', text:'level 3-24-11-3'} +, {id:'24-11-4', text:'level 3-24-11-4'} +, {id:'24-11-5', text:'level 3-24-11-5'} +, {id:'24-11-6', text:'level 3-24-11-6'} +, {id:'24-11-7', text:'level 3-24-11-7'} +, {id:'24-11-8', text:'level 3-24-11-8'} +, {id:'24-11-9', text:'level 3-24-11-9'} +]} +, {id:'24-12-10', text:'level 2-24-12', item:[ + {id:'24-12-0', text:'level 3-24-12-0'} +, {id:'24-12-1', text:'level 3-24-12-1'} +, {id:'24-12-2', text:'level 3-24-12-2'} +, {id:'24-12-3', text:'level 3-24-12-3'} +, {id:'24-12-4', text:'level 3-24-12-4'} +, {id:'24-12-5', text:'level 3-24-12-5'} +, {id:'24-12-6', text:'level 3-24-12-6'} +, {id:'24-12-7', text:'level 3-24-12-7'} +, {id:'24-12-8', text:'level 3-24-12-8'} +, {id:'24-12-9', text:'level 3-24-12-9'} +]} +, {id:'24-13-10', text:'level 2-24-13', item:[ + {id:'24-13-0', text:'level 3-24-13-0'} +, {id:'24-13-1', text:'level 3-24-13-1'} +, {id:'24-13-2', text:'level 3-24-13-2'} +, {id:'24-13-3', text:'level 3-24-13-3'} +, {id:'24-13-4', text:'level 3-24-13-4'} +, {id:'24-13-5', text:'level 3-24-13-5'} +, {id:'24-13-6', text:'level 3-24-13-6'} +, {id:'24-13-7', text:'level 3-24-13-7'} +, {id:'24-13-8', text:'level 3-24-13-8'} +, {id:'24-13-9', text:'level 3-24-13-9'} +]} +, {id:'24-14-10', text:'level 2-24-14', item:[ + {id:'24-14-0', text:'level 3-24-14-0'} +, {id:'24-14-1', text:'level 3-24-14-1'} +, {id:'24-14-2', text:'level 3-24-14-2'} +, {id:'24-14-3', text:'level 3-24-14-3'} +, {id:'24-14-4', text:'level 3-24-14-4'} +, {id:'24-14-5', text:'level 3-24-14-5'} +, {id:'24-14-6', text:'level 3-24-14-6'} +, {id:'24-14-7', text:'level 3-24-14-7'} +, {id:'24-14-8', text:'level 3-24-14-8'} +, {id:'24-14-9', text:'level 3-24-14-9'} +]} +, {id:'24-15-10', text:'level 2-24-15', item:[ + {id:'24-15-0', text:'level 3-24-15-0'} +, {id:'24-15-1', text:'level 3-24-15-1'} +, {id:'24-15-2', text:'level 3-24-15-2'} +, {id:'24-15-3', text:'level 3-24-15-3'} +, {id:'24-15-4', text:'level 3-24-15-4'} +, {id:'24-15-5', text:'level 3-24-15-5'} +, {id:'24-15-6', text:'level 3-24-15-6'} +, {id:'24-15-7', text:'level 3-24-15-7'} +, {id:'24-15-8', text:'level 3-24-15-8'} +, {id:'24-15-9', text:'level 3-24-15-9'} +]} +, {id:'24-16-10', text:'level 2-24-16', item:[ + {id:'24-16-0', text:'level 3-24-16-0'} +, {id:'24-16-1', text:'level 3-24-16-1'} +, {id:'24-16-2', text:'level 3-24-16-2'} +, {id:'24-16-3', text:'level 3-24-16-3'} +, {id:'24-16-4', text:'level 3-24-16-4'} +, {id:'24-16-5', text:'level 3-24-16-5'} +, {id:'24-16-6', text:'level 3-24-16-6'} +, {id:'24-16-7', text:'level 3-24-16-7'} +, {id:'24-16-8', text:'level 3-24-16-8'} +, {id:'24-16-9', text:'level 3-24-16-9'} +]} +, {id:'24-17-10', text:'level 2-24-17', item:[ + {id:'24-17-0', text:'level 3-24-17-0'} +, {id:'24-17-1', text:'level 3-24-17-1'} +, {id:'24-17-2', text:'level 3-24-17-2'} +, {id:'24-17-3', text:'level 3-24-17-3'} +, {id:'24-17-4', text:'level 3-24-17-4'} +, {id:'24-17-5', text:'level 3-24-17-5'} +, {id:'24-17-6', text:'level 3-24-17-6'} +, {id:'24-17-7', text:'level 3-24-17-7'} +, {id:'24-17-8', text:'level 3-24-17-8'} +, {id:'24-17-9', text:'level 3-24-17-9'} +]} +, {id:'24-18-10', text:'level 2-24-18', item:[ + {id:'24-18-0', text:'level 3-24-18-0'} +, {id:'24-18-1', text:'level 3-24-18-1'} +, {id:'24-18-2', text:'level 3-24-18-2'} +, {id:'24-18-3', text:'level 3-24-18-3'} +, {id:'24-18-4', text:'level 3-24-18-4'} +, {id:'24-18-5', text:'level 3-24-18-5'} +, {id:'24-18-6', text:'level 3-24-18-6'} +, {id:'24-18-7', text:'level 3-24-18-7'} +, {id:'24-18-8', text:'level 3-24-18-8'} +, {id:'24-18-9', text:'level 3-24-18-9'} +]} +, {id:'24-19-10', text:'level 2-24-19', item:[ + {id:'24-19-0', text:'level 3-24-19-0'} +, {id:'24-19-1', text:'level 3-24-19-1'} +, {id:'24-19-2', text:'level 3-24-19-2'} +, {id:'24-19-3', text:'level 3-24-19-3'} +, {id:'24-19-4', text:'level 3-24-19-4'} +, {id:'24-19-5', text:'level 3-24-19-5'} +, {id:'24-19-6', text:'level 3-24-19-6'} +, {id:'24-19-7', text:'level 3-24-19-7'} +, {id:'24-19-8', text:'level 3-24-19-8'} +, {id:'24-19-9', text:'level 3-24-19-9'} +]} +]} +,{id:'25-20-10', text:'level 1-25', item:[ + {id:'25-0-10', text:'level 2-25-0', item:[ + {id:'25-0-0', text:'level 3-25-0-0'} +, {id:'25-0-1', text:'level 3-25-0-1'} +, {id:'25-0-2', text:'level 3-25-0-2'} +, {id:'25-0-3', text:'level 3-25-0-3'} +, {id:'25-0-4', text:'level 3-25-0-4'} +, {id:'25-0-5', text:'level 3-25-0-5'} +, {id:'25-0-6', text:'level 3-25-0-6'} +, {id:'25-0-7', text:'level 3-25-0-7'} +, {id:'25-0-8', text:'level 3-25-0-8'} +, {id:'25-0-9', text:'level 3-25-0-9'} +]} +, {id:'25-1-10', text:'level 2-25-1', item:[ + {id:'25-1-0', text:'level 3-25-1-0'} +, {id:'25-1-1', text:'level 3-25-1-1'} +, {id:'25-1-2', text:'level 3-25-1-2'} +, {id:'25-1-3', text:'level 3-25-1-3'} +, {id:'25-1-4', text:'level 3-25-1-4'} +, {id:'25-1-5', text:'level 3-25-1-5'} +, {id:'25-1-6', text:'level 3-25-1-6'} +, {id:'25-1-7', text:'level 3-25-1-7'} +, {id:'25-1-8', text:'level 3-25-1-8'} +, {id:'25-1-9', text:'level 3-25-1-9'} +]} +, {id:'25-2-10', text:'level 2-25-2', item:[ + {id:'25-2-0', text:'level 3-25-2-0'} +, {id:'25-2-1', text:'level 3-25-2-1'} +, {id:'25-2-2', text:'level 3-25-2-2'} +, {id:'25-2-3', text:'level 3-25-2-3'} +, {id:'25-2-4', text:'level 3-25-2-4'} +, {id:'25-2-5', text:'level 3-25-2-5'} +, {id:'25-2-6', text:'level 3-25-2-6'} +, {id:'25-2-7', text:'level 3-25-2-7'} +, {id:'25-2-8', text:'level 3-25-2-8'} +, {id:'25-2-9', text:'level 3-25-2-9'} +]} +, {id:'25-3-10', text:'level 2-25-3', item:[ + {id:'25-3-0', text:'level 3-25-3-0'} +, {id:'25-3-1', text:'level 3-25-3-1'} +, {id:'25-3-2', text:'level 3-25-3-2'} +, {id:'25-3-3', text:'level 3-25-3-3'} +, {id:'25-3-4', text:'level 3-25-3-4'} +, {id:'25-3-5', text:'level 3-25-3-5'} +, {id:'25-3-6', text:'level 3-25-3-6'} +, {id:'25-3-7', text:'level 3-25-3-7'} +, {id:'25-3-8', text:'level 3-25-3-8'} +, {id:'25-3-9', text:'level 3-25-3-9'} +]} +, {id:'25-4-10', text:'level 2-25-4', item:[ + {id:'25-4-0', text:'level 3-25-4-0'} +, {id:'25-4-1', text:'level 3-25-4-1'} +, {id:'25-4-2', text:'level 3-25-4-2'} +, {id:'25-4-3', text:'level 3-25-4-3'} +, {id:'25-4-4', text:'level 3-25-4-4'} +, {id:'25-4-5', text:'level 3-25-4-5'} +, {id:'25-4-6', text:'level 3-25-4-6'} +, {id:'25-4-7', text:'level 3-25-4-7'} +, {id:'25-4-8', text:'level 3-25-4-8'} +, {id:'25-4-9', text:'level 3-25-4-9'} +]} +, {id:'25-5-10', text:'level 2-25-5', item:[ + {id:'25-5-0', text:'level 3-25-5-0'} +, {id:'25-5-1', text:'level 3-25-5-1'} +, {id:'25-5-2', text:'level 3-25-5-2'} +, {id:'25-5-3', text:'level 3-25-5-3'} +, {id:'25-5-4', text:'level 3-25-5-4'} +, {id:'25-5-5', text:'level 3-25-5-5'} +, {id:'25-5-6', text:'level 3-25-5-6'} +, {id:'25-5-7', text:'level 3-25-5-7'} +, {id:'25-5-8', text:'level 3-25-5-8'} +, {id:'25-5-9', text:'level 3-25-5-9'} +]} +, {id:'25-6-10', text:'level 2-25-6', item:[ + {id:'25-6-0', text:'level 3-25-6-0'} +, {id:'25-6-1', text:'level 3-25-6-1'} +, {id:'25-6-2', text:'level 3-25-6-2'} +, {id:'25-6-3', text:'level 3-25-6-3'} +, {id:'25-6-4', text:'level 3-25-6-4'} +, {id:'25-6-5', text:'level 3-25-6-5'} +, {id:'25-6-6', text:'level 3-25-6-6'} +, {id:'25-6-7', text:'level 3-25-6-7'} +, {id:'25-6-8', text:'level 3-25-6-8'} +, {id:'25-6-9', text:'level 3-25-6-9'} +]} +, {id:'25-7-10', text:'level 2-25-7', item:[ + {id:'25-7-0', text:'level 3-25-7-0'} +, {id:'25-7-1', text:'level 3-25-7-1'} +, {id:'25-7-2', text:'level 3-25-7-2'} +, {id:'25-7-3', text:'level 3-25-7-3'} +, {id:'25-7-4', text:'level 3-25-7-4'} +, {id:'25-7-5', text:'level 3-25-7-5'} +, {id:'25-7-6', text:'level 3-25-7-6'} +, {id:'25-7-7', text:'level 3-25-7-7'} +, {id:'25-7-8', text:'level 3-25-7-8'} +, {id:'25-7-9', text:'level 3-25-7-9'} +]} +, {id:'25-8-10', text:'level 2-25-8', item:[ + {id:'25-8-0', text:'level 3-25-8-0'} +, {id:'25-8-1', text:'level 3-25-8-1'} +, {id:'25-8-2', text:'level 3-25-8-2'} +, {id:'25-8-3', text:'level 3-25-8-3'} +, {id:'25-8-4', text:'level 3-25-8-4'} +, {id:'25-8-5', text:'level 3-25-8-5'} +, {id:'25-8-6', text:'level 3-25-8-6'} +, {id:'25-8-7', text:'level 3-25-8-7'} +, {id:'25-8-8', text:'level 3-25-8-8'} +, {id:'25-8-9', text:'level 3-25-8-9'} +]} +, {id:'25-9-10', text:'level 2-25-9', item:[ + {id:'25-9-0', text:'level 3-25-9-0'} +, {id:'25-9-1', text:'level 3-25-9-1'} +, {id:'25-9-2', text:'level 3-25-9-2'} +, {id:'25-9-3', text:'level 3-25-9-3'} +, {id:'25-9-4', text:'level 3-25-9-4'} +, {id:'25-9-5', text:'level 3-25-9-5'} +, {id:'25-9-6', text:'level 3-25-9-6'} +, {id:'25-9-7', text:'level 3-25-9-7'} +, {id:'25-9-8', text:'level 3-25-9-8'} +, {id:'25-9-9', text:'level 3-25-9-9'} +]} +, {id:'25-10-10', text:'level 2-25-10', item:[ + {id:'25-10-0', text:'level 3-25-10-0'} +, {id:'25-10-1', text:'level 3-25-10-1'} +, {id:'25-10-2', text:'level 3-25-10-2'} +, {id:'25-10-3', text:'level 3-25-10-3'} +, {id:'25-10-4', text:'level 3-25-10-4'} +, {id:'25-10-5', text:'level 3-25-10-5'} +, {id:'25-10-6', text:'level 3-25-10-6'} +, {id:'25-10-7', text:'level 3-25-10-7'} +, {id:'25-10-8', text:'level 3-25-10-8'} +, {id:'25-10-9', text:'level 3-25-10-9'} +]} +, {id:'25-11-10', text:'level 2-25-11', item:[ + {id:'25-11-0', text:'level 3-25-11-0'} +, {id:'25-11-1', text:'level 3-25-11-1'} +, {id:'25-11-2', text:'level 3-25-11-2'} +, {id:'25-11-3', text:'level 3-25-11-3'} +, {id:'25-11-4', text:'level 3-25-11-4'} +, {id:'25-11-5', text:'level 3-25-11-5'} +, {id:'25-11-6', text:'level 3-25-11-6'} +, {id:'25-11-7', text:'level 3-25-11-7'} +, {id:'25-11-8', text:'level 3-25-11-8'} +, {id:'25-11-9', text:'level 3-25-11-9'} +]} +, {id:'25-12-10', text:'level 2-25-12', item:[ + {id:'25-12-0', text:'level 3-25-12-0'} +, {id:'25-12-1', text:'level 3-25-12-1'} +, {id:'25-12-2', text:'level 3-25-12-2'} +, {id:'25-12-3', text:'level 3-25-12-3'} +, {id:'25-12-4', text:'level 3-25-12-4'} +, {id:'25-12-5', text:'level 3-25-12-5'} +, {id:'25-12-6', text:'level 3-25-12-6'} +, {id:'25-12-7', text:'level 3-25-12-7'} +, {id:'25-12-8', text:'level 3-25-12-8'} +, {id:'25-12-9', text:'level 3-25-12-9'} +]} +, {id:'25-13-10', text:'level 2-25-13', item:[ + {id:'25-13-0', text:'level 3-25-13-0'} +, {id:'25-13-1', text:'level 3-25-13-1'} +, {id:'25-13-2', text:'level 3-25-13-2'} +, {id:'25-13-3', text:'level 3-25-13-3'} +, {id:'25-13-4', text:'level 3-25-13-4'} +, {id:'25-13-5', text:'level 3-25-13-5'} +, {id:'25-13-6', text:'level 3-25-13-6'} +, {id:'25-13-7', text:'level 3-25-13-7'} +, {id:'25-13-8', text:'level 3-25-13-8'} +, {id:'25-13-9', text:'level 3-25-13-9'} +]} +, {id:'25-14-10', text:'level 2-25-14', item:[ + {id:'25-14-0', text:'level 3-25-14-0'} +, {id:'25-14-1', text:'level 3-25-14-1'} +, {id:'25-14-2', text:'level 3-25-14-2'} +, {id:'25-14-3', text:'level 3-25-14-3'} +, {id:'25-14-4', text:'level 3-25-14-4'} +, {id:'25-14-5', text:'level 3-25-14-5'} +, {id:'25-14-6', text:'level 3-25-14-6'} +, {id:'25-14-7', text:'level 3-25-14-7'} +, {id:'25-14-8', text:'level 3-25-14-8'} +, {id:'25-14-9', text:'level 3-25-14-9'} +]} +, {id:'25-15-10', text:'level 2-25-15', item:[ + {id:'25-15-0', text:'level 3-25-15-0'} +, {id:'25-15-1', text:'level 3-25-15-1'} +, {id:'25-15-2', text:'level 3-25-15-2'} +, {id:'25-15-3', text:'level 3-25-15-3'} +, {id:'25-15-4', text:'level 3-25-15-4'} +, {id:'25-15-5', text:'level 3-25-15-5'} +, {id:'25-15-6', text:'level 3-25-15-6'} +, {id:'25-15-7', text:'level 3-25-15-7'} +, {id:'25-15-8', text:'level 3-25-15-8'} +, {id:'25-15-9', text:'level 3-25-15-9'} +]} +, {id:'25-16-10', text:'level 2-25-16', item:[ + {id:'25-16-0', text:'level 3-25-16-0'} +, {id:'25-16-1', text:'level 3-25-16-1'} +, {id:'25-16-2', text:'level 3-25-16-2'} +, {id:'25-16-3', text:'level 3-25-16-3'} +, {id:'25-16-4', text:'level 3-25-16-4'} +, {id:'25-16-5', text:'level 3-25-16-5'} +, {id:'25-16-6', text:'level 3-25-16-6'} +, {id:'25-16-7', text:'level 3-25-16-7'} +, {id:'25-16-8', text:'level 3-25-16-8'} +, {id:'25-16-9', text:'level 3-25-16-9'} +]} +, {id:'25-17-10', text:'level 2-25-17', item:[ + {id:'25-17-0', text:'level 3-25-17-0'} +, {id:'25-17-1', text:'level 3-25-17-1'} +, {id:'25-17-2', text:'level 3-25-17-2'} +, {id:'25-17-3', text:'level 3-25-17-3'} +, {id:'25-17-4', text:'level 3-25-17-4'} +, {id:'25-17-5', text:'level 3-25-17-5'} +, {id:'25-17-6', text:'level 3-25-17-6'} +, {id:'25-17-7', text:'level 3-25-17-7'} +, {id:'25-17-8', text:'level 3-25-17-8'} +, {id:'25-17-9', text:'level 3-25-17-9'} +]} +, {id:'25-18-10', text:'level 2-25-18', item:[ + {id:'25-18-0', text:'level 3-25-18-0'} +, {id:'25-18-1', text:'level 3-25-18-1'} +, {id:'25-18-2', text:'level 3-25-18-2'} +, {id:'25-18-3', text:'level 3-25-18-3'} +, {id:'25-18-4', text:'level 3-25-18-4'} +, {id:'25-18-5', text:'level 3-25-18-5'} +, {id:'25-18-6', text:'level 3-25-18-6'} +, {id:'25-18-7', text:'level 3-25-18-7'} +, {id:'25-18-8', text:'level 3-25-18-8'} +, {id:'25-18-9', text:'level 3-25-18-9'} +]} +, {id:'25-19-10', text:'level 2-25-19', item:[ + {id:'25-19-0', text:'level 3-25-19-0'} +, {id:'25-19-1', text:'level 3-25-19-1'} +, {id:'25-19-2', text:'level 3-25-19-2'} +, {id:'25-19-3', text:'level 3-25-19-3'} +, {id:'25-19-4', text:'level 3-25-19-4'} +, {id:'25-19-5', text:'level 3-25-19-5'} +, {id:'25-19-6', text:'level 3-25-19-6'} +, {id:'25-19-7', text:'level 3-25-19-7'} +, {id:'25-19-8', text:'level 3-25-19-8'} +, {id:'25-19-9', text:'level 3-25-19-9'} +]} +]} +,{id:'26-20-10', text:'level 1-26', item:[ + {id:'26-0-10', text:'level 2-26-0', item:[ + {id:'26-0-0', text:'level 3-26-0-0'} +, {id:'26-0-1', text:'level 3-26-0-1'} +, {id:'26-0-2', text:'level 3-26-0-2'} +, {id:'26-0-3', text:'level 3-26-0-3'} +, {id:'26-0-4', text:'level 3-26-0-4'} +, {id:'26-0-5', text:'level 3-26-0-5'} +, {id:'26-0-6', text:'level 3-26-0-6'} +, {id:'26-0-7', text:'level 3-26-0-7'} +, {id:'26-0-8', text:'level 3-26-0-8'} +, {id:'26-0-9', text:'level 3-26-0-9'} +]} +, {id:'26-1-10', text:'level 2-26-1', item:[ + {id:'26-1-0', text:'level 3-26-1-0'} +, {id:'26-1-1', text:'level 3-26-1-1'} +, {id:'26-1-2', text:'level 3-26-1-2'} +, {id:'26-1-3', text:'level 3-26-1-3'} +, {id:'26-1-4', text:'level 3-26-1-4'} +, {id:'26-1-5', text:'level 3-26-1-5'} +, {id:'26-1-6', text:'level 3-26-1-6'} +, {id:'26-1-7', text:'level 3-26-1-7'} +, {id:'26-1-8', text:'level 3-26-1-8'} +, {id:'26-1-9', text:'level 3-26-1-9'} +]} +, {id:'26-2-10', text:'level 2-26-2', item:[ + {id:'26-2-0', text:'level 3-26-2-0'} +, {id:'26-2-1', text:'level 3-26-2-1'} +, {id:'26-2-2', text:'level 3-26-2-2'} +, {id:'26-2-3', text:'level 3-26-2-3'} +, {id:'26-2-4', text:'level 3-26-2-4'} +, {id:'26-2-5', text:'level 3-26-2-5'} +, {id:'26-2-6', text:'level 3-26-2-6'} +, {id:'26-2-7', text:'level 3-26-2-7'} +, {id:'26-2-8', text:'level 3-26-2-8'} +, {id:'26-2-9', text:'level 3-26-2-9'} +]} +, {id:'26-3-10', text:'level 2-26-3', item:[ + {id:'26-3-0', text:'level 3-26-3-0'} +, {id:'26-3-1', text:'level 3-26-3-1'} +, {id:'26-3-2', text:'level 3-26-3-2'} +, {id:'26-3-3', text:'level 3-26-3-3'} +, {id:'26-3-4', text:'level 3-26-3-4'} +, {id:'26-3-5', text:'level 3-26-3-5'} +, {id:'26-3-6', text:'level 3-26-3-6'} +, {id:'26-3-7', text:'level 3-26-3-7'} +, {id:'26-3-8', text:'level 3-26-3-8'} +, {id:'26-3-9', text:'level 3-26-3-9'} +]} +, {id:'26-4-10', text:'level 2-26-4', item:[ + {id:'26-4-0', text:'level 3-26-4-0'} +, {id:'26-4-1', text:'level 3-26-4-1'} +, {id:'26-4-2', text:'level 3-26-4-2'} +, {id:'26-4-3', text:'level 3-26-4-3'} +, {id:'26-4-4', text:'level 3-26-4-4'} +, {id:'26-4-5', text:'level 3-26-4-5'} +, {id:'26-4-6', text:'level 3-26-4-6'} +, {id:'26-4-7', text:'level 3-26-4-7'} +, {id:'26-4-8', text:'level 3-26-4-8'} +, {id:'26-4-9', text:'level 3-26-4-9'} +]} +, {id:'26-5-10', text:'level 2-26-5', item:[ + {id:'26-5-0', text:'level 3-26-5-0'} +, {id:'26-5-1', text:'level 3-26-5-1'} +, {id:'26-5-2', text:'level 3-26-5-2'} +, {id:'26-5-3', text:'level 3-26-5-3'} +, {id:'26-5-4', text:'level 3-26-5-4'} +, {id:'26-5-5', text:'level 3-26-5-5'} +, {id:'26-5-6', text:'level 3-26-5-6'} +, {id:'26-5-7', text:'level 3-26-5-7'} +, {id:'26-5-8', text:'level 3-26-5-8'} +, {id:'26-5-9', text:'level 3-26-5-9'} +]} +, {id:'26-6-10', text:'level 2-26-6', item:[ + {id:'26-6-0', text:'level 3-26-6-0'} +, {id:'26-6-1', text:'level 3-26-6-1'} +, {id:'26-6-2', text:'level 3-26-6-2'} +, {id:'26-6-3', text:'level 3-26-6-3'} +, {id:'26-6-4', text:'level 3-26-6-4'} +, {id:'26-6-5', text:'level 3-26-6-5'} +, {id:'26-6-6', text:'level 3-26-6-6'} +, {id:'26-6-7', text:'level 3-26-6-7'} +, {id:'26-6-8', text:'level 3-26-6-8'} +, {id:'26-6-9', text:'level 3-26-6-9'} +]} +, {id:'26-7-10', text:'level 2-26-7', item:[ + {id:'26-7-0', text:'level 3-26-7-0'} +, {id:'26-7-1', text:'level 3-26-7-1'} +, {id:'26-7-2', text:'level 3-26-7-2'} +, {id:'26-7-3', text:'level 3-26-7-3'} +, {id:'26-7-4', text:'level 3-26-7-4'} +, {id:'26-7-5', text:'level 3-26-7-5'} +, {id:'26-7-6', text:'level 3-26-7-6'} +, {id:'26-7-7', text:'level 3-26-7-7'} +, {id:'26-7-8', text:'level 3-26-7-8'} +, {id:'26-7-9', text:'level 3-26-7-9'} +]} +, {id:'26-8-10', text:'level 2-26-8', item:[ + {id:'26-8-0', text:'level 3-26-8-0'} +, {id:'26-8-1', text:'level 3-26-8-1'} +, {id:'26-8-2', text:'level 3-26-8-2'} +, {id:'26-8-3', text:'level 3-26-8-3'} +, {id:'26-8-4', text:'level 3-26-8-4'} +, {id:'26-8-5', text:'level 3-26-8-5'} +, {id:'26-8-6', text:'level 3-26-8-6'} +, {id:'26-8-7', text:'level 3-26-8-7'} +, {id:'26-8-8', text:'level 3-26-8-8'} +, {id:'26-8-9', text:'level 3-26-8-9'} +]} +, {id:'26-9-10', text:'level 2-26-9', item:[ + {id:'26-9-0', text:'level 3-26-9-0'} +, {id:'26-9-1', text:'level 3-26-9-1'} +, {id:'26-9-2', text:'level 3-26-9-2'} +, {id:'26-9-3', text:'level 3-26-9-3'} +, {id:'26-9-4', text:'level 3-26-9-4'} +, {id:'26-9-5', text:'level 3-26-9-5'} +, {id:'26-9-6', text:'level 3-26-9-6'} +, {id:'26-9-7', text:'level 3-26-9-7'} +, {id:'26-9-8', text:'level 3-26-9-8'} +, {id:'26-9-9', text:'level 3-26-9-9'} +]} +, {id:'26-10-10', text:'level 2-26-10', item:[ + {id:'26-10-0', text:'level 3-26-10-0'} +, {id:'26-10-1', text:'level 3-26-10-1'} +, {id:'26-10-2', text:'level 3-26-10-2'} +, {id:'26-10-3', text:'level 3-26-10-3'} +, {id:'26-10-4', text:'level 3-26-10-4'} +, {id:'26-10-5', text:'level 3-26-10-5'} +, {id:'26-10-6', text:'level 3-26-10-6'} +, {id:'26-10-7', text:'level 3-26-10-7'} +, {id:'26-10-8', text:'level 3-26-10-8'} +, {id:'26-10-9', text:'level 3-26-10-9'} +]} +, {id:'26-11-10', text:'level 2-26-11', item:[ + {id:'26-11-0', text:'level 3-26-11-0'} +, {id:'26-11-1', text:'level 3-26-11-1'} +, {id:'26-11-2', text:'level 3-26-11-2'} +, {id:'26-11-3', text:'level 3-26-11-3'} +, {id:'26-11-4', text:'level 3-26-11-4'} +, {id:'26-11-5', text:'level 3-26-11-5'} +, {id:'26-11-6', text:'level 3-26-11-6'} +, {id:'26-11-7', text:'level 3-26-11-7'} +, {id:'26-11-8', text:'level 3-26-11-8'} +, {id:'26-11-9', text:'level 3-26-11-9'} +]} +, {id:'26-12-10', text:'level 2-26-12', item:[ + {id:'26-12-0', text:'level 3-26-12-0'} +, {id:'26-12-1', text:'level 3-26-12-1'} +, {id:'26-12-2', text:'level 3-26-12-2'} +, {id:'26-12-3', text:'level 3-26-12-3'} +, {id:'26-12-4', text:'level 3-26-12-4'} +, {id:'26-12-5', text:'level 3-26-12-5'} +, {id:'26-12-6', text:'level 3-26-12-6'} +, {id:'26-12-7', text:'level 3-26-12-7'} +, {id:'26-12-8', text:'level 3-26-12-8'} +, {id:'26-12-9', text:'level 3-26-12-9'} +]} +, {id:'26-13-10', text:'level 2-26-13', item:[ + {id:'26-13-0', text:'level 3-26-13-0'} +, {id:'26-13-1', text:'level 3-26-13-1'} +, {id:'26-13-2', text:'level 3-26-13-2'} +, {id:'26-13-3', text:'level 3-26-13-3'} +, {id:'26-13-4', text:'level 3-26-13-4'} +, {id:'26-13-5', text:'level 3-26-13-5'} +, {id:'26-13-6', text:'level 3-26-13-6'} +, {id:'26-13-7', text:'level 3-26-13-7'} +, {id:'26-13-8', text:'level 3-26-13-8'} +, {id:'26-13-9', text:'level 3-26-13-9'} +]} +, {id:'26-14-10', text:'level 2-26-14', item:[ + {id:'26-14-0', text:'level 3-26-14-0'} +, {id:'26-14-1', text:'level 3-26-14-1'} +, {id:'26-14-2', text:'level 3-26-14-2'} +, {id:'26-14-3', text:'level 3-26-14-3'} +, {id:'26-14-4', text:'level 3-26-14-4'} +, {id:'26-14-5', text:'level 3-26-14-5'} +, {id:'26-14-6', text:'level 3-26-14-6'} +, {id:'26-14-7', text:'level 3-26-14-7'} +, {id:'26-14-8', text:'level 3-26-14-8'} +, {id:'26-14-9', text:'level 3-26-14-9'} +]} +, {id:'26-15-10', text:'level 2-26-15', item:[ + {id:'26-15-0', text:'level 3-26-15-0'} +, {id:'26-15-1', text:'level 3-26-15-1'} +, {id:'26-15-2', text:'level 3-26-15-2'} +, {id:'26-15-3', text:'level 3-26-15-3'} +, {id:'26-15-4', text:'level 3-26-15-4'} +, {id:'26-15-5', text:'level 3-26-15-5'} +, {id:'26-15-6', text:'level 3-26-15-6'} +, {id:'26-15-7', text:'level 3-26-15-7'} +, {id:'26-15-8', text:'level 3-26-15-8'} +, {id:'26-15-9', text:'level 3-26-15-9'} +]} +, {id:'26-16-10', text:'level 2-26-16', item:[ + {id:'26-16-0', text:'level 3-26-16-0'} +, {id:'26-16-1', text:'level 3-26-16-1'} +, {id:'26-16-2', text:'level 3-26-16-2'} +, {id:'26-16-3', text:'level 3-26-16-3'} +, {id:'26-16-4', text:'level 3-26-16-4'} +, {id:'26-16-5', text:'level 3-26-16-5'} +, {id:'26-16-6', text:'level 3-26-16-6'} +, {id:'26-16-7', text:'level 3-26-16-7'} +, {id:'26-16-8', text:'level 3-26-16-8'} +, {id:'26-16-9', text:'level 3-26-16-9'} +]} +, {id:'26-17-10', text:'level 2-26-17', item:[ + {id:'26-17-0', text:'level 3-26-17-0'} +, {id:'26-17-1', text:'level 3-26-17-1'} +, {id:'26-17-2', text:'level 3-26-17-2'} +, {id:'26-17-3', text:'level 3-26-17-3'} +, {id:'26-17-4', text:'level 3-26-17-4'} +, {id:'26-17-5', text:'level 3-26-17-5'} +, {id:'26-17-6', text:'level 3-26-17-6'} +, {id:'26-17-7', text:'level 3-26-17-7'} +, {id:'26-17-8', text:'level 3-26-17-8'} +, {id:'26-17-9', text:'level 3-26-17-9'} +]} +, {id:'26-18-10', text:'level 2-26-18', item:[ + {id:'26-18-0', text:'level 3-26-18-0'} +, {id:'26-18-1', text:'level 3-26-18-1'} +, {id:'26-18-2', text:'level 3-26-18-2'} +, {id:'26-18-3', text:'level 3-26-18-3'} +, {id:'26-18-4', text:'level 3-26-18-4'} +, {id:'26-18-5', text:'level 3-26-18-5'} +, {id:'26-18-6', text:'level 3-26-18-6'} +, {id:'26-18-7', text:'level 3-26-18-7'} +, {id:'26-18-8', text:'level 3-26-18-8'} +, {id:'26-18-9', text:'level 3-26-18-9'} +]} +, {id:'26-19-10', text:'level 2-26-19', item:[ + {id:'26-19-0', text:'level 3-26-19-0'} +, {id:'26-19-1', text:'level 3-26-19-1'} +, {id:'26-19-2', text:'level 3-26-19-2'} +, {id:'26-19-3', text:'level 3-26-19-3'} +, {id:'26-19-4', text:'level 3-26-19-4'} +, {id:'26-19-5', text:'level 3-26-19-5'} +, {id:'26-19-6', text:'level 3-26-19-6'} +, {id:'26-19-7', text:'level 3-26-19-7'} +, {id:'26-19-8', text:'level 3-26-19-8'} +, {id:'26-19-9', text:'level 3-26-19-9'} +]} +]} +,{id:'27-20-10', text:'level 1-27', item:[ + {id:'27-0-10', text:'level 2-27-0', item:[ + {id:'27-0-0', text:'level 3-27-0-0'} +, {id:'27-0-1', text:'level 3-27-0-1'} +, {id:'27-0-2', text:'level 3-27-0-2'} +, {id:'27-0-3', text:'level 3-27-0-3'} +, {id:'27-0-4', text:'level 3-27-0-4'} +, {id:'27-0-5', text:'level 3-27-0-5'} +, {id:'27-0-6', text:'level 3-27-0-6'} +, {id:'27-0-7', text:'level 3-27-0-7'} +, {id:'27-0-8', text:'level 3-27-0-8'} +, {id:'27-0-9', text:'level 3-27-0-9'} +]} +, {id:'27-1-10', text:'level 2-27-1', item:[ + {id:'27-1-0', text:'level 3-27-1-0'} +, {id:'27-1-1', text:'level 3-27-1-1'} +, {id:'27-1-2', text:'level 3-27-1-2'} +, {id:'27-1-3', text:'level 3-27-1-3'} +, {id:'27-1-4', text:'level 3-27-1-4'} +, {id:'27-1-5', text:'level 3-27-1-5'} +, {id:'27-1-6', text:'level 3-27-1-6'} +, {id:'27-1-7', text:'level 3-27-1-7'} +, {id:'27-1-8', text:'level 3-27-1-8'} +, {id:'27-1-9', text:'level 3-27-1-9'} +]} +, {id:'27-2-10', text:'level 2-27-2', item:[ + {id:'27-2-0', text:'level 3-27-2-0'} +, {id:'27-2-1', text:'level 3-27-2-1'} +, {id:'27-2-2', text:'level 3-27-2-2'} +, {id:'27-2-3', text:'level 3-27-2-3'} +, {id:'27-2-4', text:'level 3-27-2-4'} +, {id:'27-2-5', text:'level 3-27-2-5'} +, {id:'27-2-6', text:'level 3-27-2-6'} +, {id:'27-2-7', text:'level 3-27-2-7'} +, {id:'27-2-8', text:'level 3-27-2-8'} +, {id:'27-2-9', text:'level 3-27-2-9'} +]} +, {id:'27-3-10', text:'level 2-27-3', item:[ + {id:'27-3-0', text:'level 3-27-3-0'} +, {id:'27-3-1', text:'level 3-27-3-1'} +, {id:'27-3-2', text:'level 3-27-3-2'} +, {id:'27-3-3', text:'level 3-27-3-3'} +, {id:'27-3-4', text:'level 3-27-3-4'} +, {id:'27-3-5', text:'level 3-27-3-5'} +, {id:'27-3-6', text:'level 3-27-3-6'} +, {id:'27-3-7', text:'level 3-27-3-7'} +, {id:'27-3-8', text:'level 3-27-3-8'} +, {id:'27-3-9', text:'level 3-27-3-9'} +]} +, {id:'27-4-10', text:'level 2-27-4', item:[ + {id:'27-4-0', text:'level 3-27-4-0'} +, {id:'27-4-1', text:'level 3-27-4-1'} +, {id:'27-4-2', text:'level 3-27-4-2'} +, {id:'27-4-3', text:'level 3-27-4-3'} +, {id:'27-4-4', text:'level 3-27-4-4'} +, {id:'27-4-5', text:'level 3-27-4-5'} +, {id:'27-4-6', text:'level 3-27-4-6'} +, {id:'27-4-7', text:'level 3-27-4-7'} +, {id:'27-4-8', text:'level 3-27-4-8'} +, {id:'27-4-9', text:'level 3-27-4-9'} +]} +, {id:'27-5-10', text:'level 2-27-5', item:[ + {id:'27-5-0', text:'level 3-27-5-0'} +, {id:'27-5-1', text:'level 3-27-5-1'} +, {id:'27-5-2', text:'level 3-27-5-2'} +, {id:'27-5-3', text:'level 3-27-5-3'} +, {id:'27-5-4', text:'level 3-27-5-4'} +, {id:'27-5-5', text:'level 3-27-5-5'} +, {id:'27-5-6', text:'level 3-27-5-6'} +, {id:'27-5-7', text:'level 3-27-5-7'} +, {id:'27-5-8', text:'level 3-27-5-8'} +, {id:'27-5-9', text:'level 3-27-5-9'} +]} +, {id:'27-6-10', text:'level 2-27-6', item:[ + {id:'27-6-0', text:'level 3-27-6-0'} +, {id:'27-6-1', text:'level 3-27-6-1'} +, {id:'27-6-2', text:'level 3-27-6-2'} +, {id:'27-6-3', text:'level 3-27-6-3'} +, {id:'27-6-4', text:'level 3-27-6-4'} +, {id:'27-6-5', text:'level 3-27-6-5'} +, {id:'27-6-6', text:'level 3-27-6-6'} +, {id:'27-6-7', text:'level 3-27-6-7'} +, {id:'27-6-8', text:'level 3-27-6-8'} +, {id:'27-6-9', text:'level 3-27-6-9'} +]} +, {id:'27-7-10', text:'level 2-27-7', item:[ + {id:'27-7-0', text:'level 3-27-7-0'} +, {id:'27-7-1', text:'level 3-27-7-1'} +, {id:'27-7-2', text:'level 3-27-7-2'} +, {id:'27-7-3', text:'level 3-27-7-3'} +, {id:'27-7-4', text:'level 3-27-7-4'} +, {id:'27-7-5', text:'level 3-27-7-5'} +, {id:'27-7-6', text:'level 3-27-7-6'} +, {id:'27-7-7', text:'level 3-27-7-7'} +, {id:'27-7-8', text:'level 3-27-7-8'} +, {id:'27-7-9', text:'level 3-27-7-9'} +]} +, {id:'27-8-10', text:'level 2-27-8', item:[ + {id:'27-8-0', text:'level 3-27-8-0'} +, {id:'27-8-1', text:'level 3-27-8-1'} +, {id:'27-8-2', text:'level 3-27-8-2'} +, {id:'27-8-3', text:'level 3-27-8-3'} +, {id:'27-8-4', text:'level 3-27-8-4'} +, {id:'27-8-5', text:'level 3-27-8-5'} +, {id:'27-8-6', text:'level 3-27-8-6'} +, {id:'27-8-7', text:'level 3-27-8-7'} +, {id:'27-8-8', text:'level 3-27-8-8'} +, {id:'27-8-9', text:'level 3-27-8-9'} +]} +, {id:'27-9-10', text:'level 2-27-9', item:[ + {id:'27-9-0', text:'level 3-27-9-0'} +, {id:'27-9-1', text:'level 3-27-9-1'} +, {id:'27-9-2', text:'level 3-27-9-2'} +, {id:'27-9-3', text:'level 3-27-9-3'} +, {id:'27-9-4', text:'level 3-27-9-4'} +, {id:'27-9-5', text:'level 3-27-9-5'} +, {id:'27-9-6', text:'level 3-27-9-6'} +, {id:'27-9-7', text:'level 3-27-9-7'} +, {id:'27-9-8', text:'level 3-27-9-8'} +, {id:'27-9-9', text:'level 3-27-9-9'} +]} +, {id:'27-10-10', text:'level 2-27-10', item:[ + {id:'27-10-0', text:'level 3-27-10-0'} +, {id:'27-10-1', text:'level 3-27-10-1'} +, {id:'27-10-2', text:'level 3-27-10-2'} +, {id:'27-10-3', text:'level 3-27-10-3'} +, {id:'27-10-4', text:'level 3-27-10-4'} +, {id:'27-10-5', text:'level 3-27-10-5'} +, {id:'27-10-6', text:'level 3-27-10-6'} +, {id:'27-10-7', text:'level 3-27-10-7'} +, {id:'27-10-8', text:'level 3-27-10-8'} +, {id:'27-10-9', text:'level 3-27-10-9'} +]} +, {id:'27-11-10', text:'level 2-27-11', item:[ + {id:'27-11-0', text:'level 3-27-11-0'} +, {id:'27-11-1', text:'level 3-27-11-1'} +, {id:'27-11-2', text:'level 3-27-11-2'} +, {id:'27-11-3', text:'level 3-27-11-3'} +, {id:'27-11-4', text:'level 3-27-11-4'} +, {id:'27-11-5', text:'level 3-27-11-5'} +, {id:'27-11-6', text:'level 3-27-11-6'} +, {id:'27-11-7', text:'level 3-27-11-7'} +, {id:'27-11-8', text:'level 3-27-11-8'} +, {id:'27-11-9', text:'level 3-27-11-9'} +]} +, {id:'27-12-10', text:'level 2-27-12', item:[ + {id:'27-12-0', text:'level 3-27-12-0'} +, {id:'27-12-1', text:'level 3-27-12-1'} +, {id:'27-12-2', text:'level 3-27-12-2'} +, {id:'27-12-3', text:'level 3-27-12-3'} +, {id:'27-12-4', text:'level 3-27-12-4'} +, {id:'27-12-5', text:'level 3-27-12-5'} +, {id:'27-12-6', text:'level 3-27-12-6'} +, {id:'27-12-7', text:'level 3-27-12-7'} +, {id:'27-12-8', text:'level 3-27-12-8'} +, {id:'27-12-9', text:'level 3-27-12-9'} +]} +, {id:'27-13-10', text:'level 2-27-13', item:[ + {id:'27-13-0', text:'level 3-27-13-0'} +, {id:'27-13-1', text:'level 3-27-13-1'} +, {id:'27-13-2', text:'level 3-27-13-2'} +, {id:'27-13-3', text:'level 3-27-13-3'} +, {id:'27-13-4', text:'level 3-27-13-4'} +, {id:'27-13-5', text:'level 3-27-13-5'} +, {id:'27-13-6', text:'level 3-27-13-6'} +, {id:'27-13-7', text:'level 3-27-13-7'} +, {id:'27-13-8', text:'level 3-27-13-8'} +, {id:'27-13-9', text:'level 3-27-13-9'} +]} +, {id:'27-14-10', text:'level 2-27-14', item:[ + {id:'27-14-0', text:'level 3-27-14-0'} +, {id:'27-14-1', text:'level 3-27-14-1'} +, {id:'27-14-2', text:'level 3-27-14-2'} +, {id:'27-14-3', text:'level 3-27-14-3'} +, {id:'27-14-4', text:'level 3-27-14-4'} +, {id:'27-14-5', text:'level 3-27-14-5'} +, {id:'27-14-6', text:'level 3-27-14-6'} +, {id:'27-14-7', text:'level 3-27-14-7'} +, {id:'27-14-8', text:'level 3-27-14-8'} +, {id:'27-14-9', text:'level 3-27-14-9'} +]} +, {id:'27-15-10', text:'level 2-27-15', item:[ + {id:'27-15-0', text:'level 3-27-15-0'} +, {id:'27-15-1', text:'level 3-27-15-1'} +, {id:'27-15-2', text:'level 3-27-15-2'} +, {id:'27-15-3', text:'level 3-27-15-3'} +, {id:'27-15-4', text:'level 3-27-15-4'} +, {id:'27-15-5', text:'level 3-27-15-5'} +, {id:'27-15-6', text:'level 3-27-15-6'} +, {id:'27-15-7', text:'level 3-27-15-7'} +, {id:'27-15-8', text:'level 3-27-15-8'} +, {id:'27-15-9', text:'level 3-27-15-9'} +]} +, {id:'27-16-10', text:'level 2-27-16', item:[ + {id:'27-16-0', text:'level 3-27-16-0'} +, {id:'27-16-1', text:'level 3-27-16-1'} +, {id:'27-16-2', text:'level 3-27-16-2'} +, {id:'27-16-3', text:'level 3-27-16-3'} +, {id:'27-16-4', text:'level 3-27-16-4'} +, {id:'27-16-5', text:'level 3-27-16-5'} +, {id:'27-16-6', text:'level 3-27-16-6'} +, {id:'27-16-7', text:'level 3-27-16-7'} +, {id:'27-16-8', text:'level 3-27-16-8'} +, {id:'27-16-9', text:'level 3-27-16-9'} +]} +, {id:'27-17-10', text:'level 2-27-17', item:[ + {id:'27-17-0', text:'level 3-27-17-0'} +, {id:'27-17-1', text:'level 3-27-17-1'} +, {id:'27-17-2', text:'level 3-27-17-2'} +, {id:'27-17-3', text:'level 3-27-17-3'} +, {id:'27-17-4', text:'level 3-27-17-4'} +, {id:'27-17-5', text:'level 3-27-17-5'} +, {id:'27-17-6', text:'level 3-27-17-6'} +, {id:'27-17-7', text:'level 3-27-17-7'} +, {id:'27-17-8', text:'level 3-27-17-8'} +, {id:'27-17-9', text:'level 3-27-17-9'} +]} +, {id:'27-18-10', text:'level 2-27-18', item:[ + {id:'27-18-0', text:'level 3-27-18-0'} +, {id:'27-18-1', text:'level 3-27-18-1'} +, {id:'27-18-2', text:'level 3-27-18-2'} +, {id:'27-18-3', text:'level 3-27-18-3'} +, {id:'27-18-4', text:'level 3-27-18-4'} +, {id:'27-18-5', text:'level 3-27-18-5'} +, {id:'27-18-6', text:'level 3-27-18-6'} +, {id:'27-18-7', text:'level 3-27-18-7'} +, {id:'27-18-8', text:'level 3-27-18-8'} +, {id:'27-18-9', text:'level 3-27-18-9'} +]} +, {id:'27-19-10', text:'level 2-27-19', item:[ + {id:'27-19-0', text:'level 3-27-19-0'} +, {id:'27-19-1', text:'level 3-27-19-1'} +, {id:'27-19-2', text:'level 3-27-19-2'} +, {id:'27-19-3', text:'level 3-27-19-3'} +, {id:'27-19-4', text:'level 3-27-19-4'} +, {id:'27-19-5', text:'level 3-27-19-5'} +, {id:'27-19-6', text:'level 3-27-19-6'} +, {id:'27-19-7', text:'level 3-27-19-7'} +, {id:'27-19-8', text:'level 3-27-19-8'} +, {id:'27-19-9', text:'level 3-27-19-9'} +]} +]} +,{id:'28-20-10', text:'level 1-28', item:[ + {id:'28-0-10', text:'level 2-28-0', item:[ + {id:'28-0-0', text:'level 3-28-0-0'} +, {id:'28-0-1', text:'level 3-28-0-1'} +, {id:'28-0-2', text:'level 3-28-0-2'} +, {id:'28-0-3', text:'level 3-28-0-3'} +, {id:'28-0-4', text:'level 3-28-0-4'} +, {id:'28-0-5', text:'level 3-28-0-5'} +, {id:'28-0-6', text:'level 3-28-0-6'} +, {id:'28-0-7', text:'level 3-28-0-7'} +, {id:'28-0-8', text:'level 3-28-0-8'} +, {id:'28-0-9', text:'level 3-28-0-9'} +]} +, {id:'28-1-10', text:'level 2-28-1', item:[ + {id:'28-1-0', text:'level 3-28-1-0'} +, {id:'28-1-1', text:'level 3-28-1-1'} +, {id:'28-1-2', text:'level 3-28-1-2'} +, {id:'28-1-3', text:'level 3-28-1-3'} +, {id:'28-1-4', text:'level 3-28-1-4'} +, {id:'28-1-5', text:'level 3-28-1-5'} +, {id:'28-1-6', text:'level 3-28-1-6'} +, {id:'28-1-7', text:'level 3-28-1-7'} +, {id:'28-1-8', text:'level 3-28-1-8'} +, {id:'28-1-9', text:'level 3-28-1-9'} +]} +, {id:'28-2-10', text:'level 2-28-2', item:[ + {id:'28-2-0', text:'level 3-28-2-0'} +, {id:'28-2-1', text:'level 3-28-2-1'} +, {id:'28-2-2', text:'level 3-28-2-2'} +, {id:'28-2-3', text:'level 3-28-2-3'} +, {id:'28-2-4', text:'level 3-28-2-4'} +, {id:'28-2-5', text:'level 3-28-2-5'} +, {id:'28-2-6', text:'level 3-28-2-6'} +, {id:'28-2-7', text:'level 3-28-2-7'} +, {id:'28-2-8', text:'level 3-28-2-8'} +, {id:'28-2-9', text:'level 3-28-2-9'} +]} +, {id:'28-3-10', text:'level 2-28-3', item:[ + {id:'28-3-0', text:'level 3-28-3-0'} +, {id:'28-3-1', text:'level 3-28-3-1'} +, {id:'28-3-2', text:'level 3-28-3-2'} +, {id:'28-3-3', text:'level 3-28-3-3'} +, {id:'28-3-4', text:'level 3-28-3-4'} +, {id:'28-3-5', text:'level 3-28-3-5'} +, {id:'28-3-6', text:'level 3-28-3-6'} +, {id:'28-3-7', text:'level 3-28-3-7'} +, {id:'28-3-8', text:'level 3-28-3-8'} +, {id:'28-3-9', text:'level 3-28-3-9'} +]} +, {id:'28-4-10', text:'level 2-28-4', item:[ + {id:'28-4-0', text:'level 3-28-4-0'} +, {id:'28-4-1', text:'level 3-28-4-1'} +, {id:'28-4-2', text:'level 3-28-4-2'} +, {id:'28-4-3', text:'level 3-28-4-3'} +, {id:'28-4-4', text:'level 3-28-4-4'} +, {id:'28-4-5', text:'level 3-28-4-5'} +, {id:'28-4-6', text:'level 3-28-4-6'} +, {id:'28-4-7', text:'level 3-28-4-7'} +, {id:'28-4-8', text:'level 3-28-4-8'} +, {id:'28-4-9', text:'level 3-28-4-9'} +]} +, {id:'28-5-10', text:'level 2-28-5', item:[ + {id:'28-5-0', text:'level 3-28-5-0'} +, {id:'28-5-1', text:'level 3-28-5-1'} +, {id:'28-5-2', text:'level 3-28-5-2'} +, {id:'28-5-3', text:'level 3-28-5-3'} +, {id:'28-5-4', text:'level 3-28-5-4'} +, {id:'28-5-5', text:'level 3-28-5-5'} +, {id:'28-5-6', text:'level 3-28-5-6'} +, {id:'28-5-7', text:'level 3-28-5-7'} +, {id:'28-5-8', text:'level 3-28-5-8'} +, {id:'28-5-9', text:'level 3-28-5-9'} +]} +, {id:'28-6-10', text:'level 2-28-6', item:[ + {id:'28-6-0', text:'level 3-28-6-0'} +, {id:'28-6-1', text:'level 3-28-6-1'} +, {id:'28-6-2', text:'level 3-28-6-2'} +, {id:'28-6-3', text:'level 3-28-6-3'} +, {id:'28-6-4', text:'level 3-28-6-4'} +, {id:'28-6-5', text:'level 3-28-6-5'} +, {id:'28-6-6', text:'level 3-28-6-6'} +, {id:'28-6-7', text:'level 3-28-6-7'} +, {id:'28-6-8', text:'level 3-28-6-8'} +, {id:'28-6-9', text:'level 3-28-6-9'} +]} +, {id:'28-7-10', text:'level 2-28-7', item:[ + {id:'28-7-0', text:'level 3-28-7-0'} +, {id:'28-7-1', text:'level 3-28-7-1'} +, {id:'28-7-2', text:'level 3-28-7-2'} +, {id:'28-7-3', text:'level 3-28-7-3'} +, {id:'28-7-4', text:'level 3-28-7-4'} +, {id:'28-7-5', text:'level 3-28-7-5'} +, {id:'28-7-6', text:'level 3-28-7-6'} +, {id:'28-7-7', text:'level 3-28-7-7'} +, {id:'28-7-8', text:'level 3-28-7-8'} +, {id:'28-7-9', text:'level 3-28-7-9'} +]} +, {id:'28-8-10', text:'level 2-28-8', item:[ + {id:'28-8-0', text:'level 3-28-8-0'} +, {id:'28-8-1', text:'level 3-28-8-1'} +, {id:'28-8-2', text:'level 3-28-8-2'} +, {id:'28-8-3', text:'level 3-28-8-3'} +, {id:'28-8-4', text:'level 3-28-8-4'} +, {id:'28-8-5', text:'level 3-28-8-5'} +, {id:'28-8-6', text:'level 3-28-8-6'} +, {id:'28-8-7', text:'level 3-28-8-7'} +, {id:'28-8-8', text:'level 3-28-8-8'} +, {id:'28-8-9', text:'level 3-28-8-9'} +]} +, {id:'28-9-10', text:'level 2-28-9', item:[ + {id:'28-9-0', text:'level 3-28-9-0'} +, {id:'28-9-1', text:'level 3-28-9-1'} +, {id:'28-9-2', text:'level 3-28-9-2'} +, {id:'28-9-3', text:'level 3-28-9-3'} +, {id:'28-9-4', text:'level 3-28-9-4'} +, {id:'28-9-5', text:'level 3-28-9-5'} +, {id:'28-9-6', text:'level 3-28-9-6'} +, {id:'28-9-7', text:'level 3-28-9-7'} +, {id:'28-9-8', text:'level 3-28-9-8'} +, {id:'28-9-9', text:'level 3-28-9-9'} +]} +, {id:'28-10-10', text:'level 2-28-10', item:[ + {id:'28-10-0', text:'level 3-28-10-0'} +, {id:'28-10-1', text:'level 3-28-10-1'} +, {id:'28-10-2', text:'level 3-28-10-2'} +, {id:'28-10-3', text:'level 3-28-10-3'} +, {id:'28-10-4', text:'level 3-28-10-4'} +, {id:'28-10-5', text:'level 3-28-10-5'} +, {id:'28-10-6', text:'level 3-28-10-6'} +, {id:'28-10-7', text:'level 3-28-10-7'} +, {id:'28-10-8', text:'level 3-28-10-8'} +, {id:'28-10-9', text:'level 3-28-10-9'} +]} +, {id:'28-11-10', text:'level 2-28-11', item:[ + {id:'28-11-0', text:'level 3-28-11-0'} +, {id:'28-11-1', text:'level 3-28-11-1'} +, {id:'28-11-2', text:'level 3-28-11-2'} +, {id:'28-11-3', text:'level 3-28-11-3'} +, {id:'28-11-4', text:'level 3-28-11-4'} +, {id:'28-11-5', text:'level 3-28-11-5'} +, {id:'28-11-6', text:'level 3-28-11-6'} +, {id:'28-11-7', text:'level 3-28-11-7'} +, {id:'28-11-8', text:'level 3-28-11-8'} +, {id:'28-11-9', text:'level 3-28-11-9'} +]} +, {id:'28-12-10', text:'level 2-28-12', item:[ + {id:'28-12-0', text:'level 3-28-12-0'} +, {id:'28-12-1', text:'level 3-28-12-1'} +, {id:'28-12-2', text:'level 3-28-12-2'} +, {id:'28-12-3', text:'level 3-28-12-3'} +, {id:'28-12-4', text:'level 3-28-12-4'} +, {id:'28-12-5', text:'level 3-28-12-5'} +, {id:'28-12-6', text:'level 3-28-12-6'} +, {id:'28-12-7', text:'level 3-28-12-7'} +, {id:'28-12-8', text:'level 3-28-12-8'} +, {id:'28-12-9', text:'level 3-28-12-9'} +]} +, {id:'28-13-10', text:'level 2-28-13', item:[ + {id:'28-13-0', text:'level 3-28-13-0'} +, {id:'28-13-1', text:'level 3-28-13-1'} +, {id:'28-13-2', text:'level 3-28-13-2'} +, {id:'28-13-3', text:'level 3-28-13-3'} +, {id:'28-13-4', text:'level 3-28-13-4'} +, {id:'28-13-5', text:'level 3-28-13-5'} +, {id:'28-13-6', text:'level 3-28-13-6'} +, {id:'28-13-7', text:'level 3-28-13-7'} +, {id:'28-13-8', text:'level 3-28-13-8'} +, {id:'28-13-9', text:'level 3-28-13-9'} +]} +, {id:'28-14-10', text:'level 2-28-14', item:[ + {id:'28-14-0', text:'level 3-28-14-0'} +, {id:'28-14-1', text:'level 3-28-14-1'} +, {id:'28-14-2', text:'level 3-28-14-2'} +, {id:'28-14-3', text:'level 3-28-14-3'} +, {id:'28-14-4', text:'level 3-28-14-4'} +, {id:'28-14-5', text:'level 3-28-14-5'} +, {id:'28-14-6', text:'level 3-28-14-6'} +, {id:'28-14-7', text:'level 3-28-14-7'} +, {id:'28-14-8', text:'level 3-28-14-8'} +, {id:'28-14-9', text:'level 3-28-14-9'} +]} +, {id:'28-15-10', text:'level 2-28-15', item:[ + {id:'28-15-0', text:'level 3-28-15-0'} +, {id:'28-15-1', text:'level 3-28-15-1'} +, {id:'28-15-2', text:'level 3-28-15-2'} +, {id:'28-15-3', text:'level 3-28-15-3'} +, {id:'28-15-4', text:'level 3-28-15-4'} +, {id:'28-15-5', text:'level 3-28-15-5'} +, {id:'28-15-6', text:'level 3-28-15-6'} +, {id:'28-15-7', text:'level 3-28-15-7'} +, {id:'28-15-8', text:'level 3-28-15-8'} +, {id:'28-15-9', text:'level 3-28-15-9'} +]} +, {id:'28-16-10', text:'level 2-28-16', item:[ + {id:'28-16-0', text:'level 3-28-16-0'} +, {id:'28-16-1', text:'level 3-28-16-1'} +, {id:'28-16-2', text:'level 3-28-16-2'} +, {id:'28-16-3', text:'level 3-28-16-3'} +, {id:'28-16-4', text:'level 3-28-16-4'} +, {id:'28-16-5', text:'level 3-28-16-5'} +, {id:'28-16-6', text:'level 3-28-16-6'} +, {id:'28-16-7', text:'level 3-28-16-7'} +, {id:'28-16-8', text:'level 3-28-16-8'} +, {id:'28-16-9', text:'level 3-28-16-9'} +]} +, {id:'28-17-10', text:'level 2-28-17', item:[ + {id:'28-17-0', text:'level 3-28-17-0'} +, {id:'28-17-1', text:'level 3-28-17-1'} +, {id:'28-17-2', text:'level 3-28-17-2'} +, {id:'28-17-3', text:'level 3-28-17-3'} +, {id:'28-17-4', text:'level 3-28-17-4'} +, {id:'28-17-5', text:'level 3-28-17-5'} +, {id:'28-17-6', text:'level 3-28-17-6'} +, {id:'28-17-7', text:'level 3-28-17-7'} +, {id:'28-17-8', text:'level 3-28-17-8'} +, {id:'28-17-9', text:'level 3-28-17-9'} +]} +, {id:'28-18-10', text:'level 2-28-18', item:[ + {id:'28-18-0', text:'level 3-28-18-0'} +, {id:'28-18-1', text:'level 3-28-18-1'} +, {id:'28-18-2', text:'level 3-28-18-2'} +, {id:'28-18-3', text:'level 3-28-18-3'} +, {id:'28-18-4', text:'level 3-28-18-4'} +, {id:'28-18-5', text:'level 3-28-18-5'} +, {id:'28-18-6', text:'level 3-28-18-6'} +, {id:'28-18-7', text:'level 3-28-18-7'} +, {id:'28-18-8', text:'level 3-28-18-8'} +, {id:'28-18-9', text:'level 3-28-18-9'} +]} +, {id:'28-19-10', text:'level 2-28-19', item:[ + {id:'28-19-0', text:'level 3-28-19-0'} +, {id:'28-19-1', text:'level 3-28-19-1'} +, {id:'28-19-2', text:'level 3-28-19-2'} +, {id:'28-19-3', text:'level 3-28-19-3'} +, {id:'28-19-4', text:'level 3-28-19-4'} +, {id:'28-19-5', text:'level 3-28-19-5'} +, {id:'28-19-6', text:'level 3-28-19-6'} +, {id:'28-19-7', text:'level 3-28-19-7'} +, {id:'28-19-8', text:'level 3-28-19-8'} +, {id:'28-19-9', text:'level 3-28-19-9'} +]} +]} +,{id:'29-20-10', text:'level 1-29', item:[ + {id:'29-0-10', text:'level 2-29-0', item:[ + {id:'29-0-0', text:'level 3-29-0-0'} +, {id:'29-0-1', text:'level 3-29-0-1'} +, {id:'29-0-2', text:'level 3-29-0-2'} +, {id:'29-0-3', text:'level 3-29-0-3'} +, {id:'29-0-4', text:'level 3-29-0-4'} +, {id:'29-0-5', text:'level 3-29-0-5'} +, {id:'29-0-6', text:'level 3-29-0-6'} +, {id:'29-0-7', text:'level 3-29-0-7'} +, {id:'29-0-8', text:'level 3-29-0-8'} +, {id:'29-0-9', text:'level 3-29-0-9'} +]} +, {id:'29-1-10', text:'level 2-29-1', item:[ + {id:'29-1-0', text:'level 3-29-1-0'} +, {id:'29-1-1', text:'level 3-29-1-1'} +, {id:'29-1-2', text:'level 3-29-1-2'} +, {id:'29-1-3', text:'level 3-29-1-3'} +, {id:'29-1-4', text:'level 3-29-1-4'} +, {id:'29-1-5', text:'level 3-29-1-5'} +, {id:'29-1-6', text:'level 3-29-1-6'} +, {id:'29-1-7', text:'level 3-29-1-7'} +, {id:'29-1-8', text:'level 3-29-1-8'} +, {id:'29-1-9', text:'level 3-29-1-9'} +]} +, {id:'29-2-10', text:'level 2-29-2', item:[ + {id:'29-2-0', text:'level 3-29-2-0'} +, {id:'29-2-1', text:'level 3-29-2-1'} +, {id:'29-2-2', text:'level 3-29-2-2'} +, {id:'29-2-3', text:'level 3-29-2-3'} +, {id:'29-2-4', text:'level 3-29-2-4'} +, {id:'29-2-5', text:'level 3-29-2-5'} +, {id:'29-2-6', text:'level 3-29-2-6'} +, {id:'29-2-7', text:'level 3-29-2-7'} +, {id:'29-2-8', text:'level 3-29-2-8'} +, {id:'29-2-9', text:'level 3-29-2-9'} +]} +, {id:'29-3-10', text:'level 2-29-3', item:[ + {id:'29-3-0', text:'level 3-29-3-0'} +, {id:'29-3-1', text:'level 3-29-3-1'} +, {id:'29-3-2', text:'level 3-29-3-2'} +, {id:'29-3-3', text:'level 3-29-3-3'} +, {id:'29-3-4', text:'level 3-29-3-4'} +, {id:'29-3-5', text:'level 3-29-3-5'} +, {id:'29-3-6', text:'level 3-29-3-6'} +, {id:'29-3-7', text:'level 3-29-3-7'} +, {id:'29-3-8', text:'level 3-29-3-8'} +, {id:'29-3-9', text:'level 3-29-3-9'} +]} +, {id:'29-4-10', text:'level 2-29-4', item:[ + {id:'29-4-0', text:'level 3-29-4-0'} +, {id:'29-4-1', text:'level 3-29-4-1'} +, {id:'29-4-2', text:'level 3-29-4-2'} +, {id:'29-4-3', text:'level 3-29-4-3'} +, {id:'29-4-4', text:'level 3-29-4-4'} +, {id:'29-4-5', text:'level 3-29-4-5'} +, {id:'29-4-6', text:'level 3-29-4-6'} +, {id:'29-4-7', text:'level 3-29-4-7'} +, {id:'29-4-8', text:'level 3-29-4-8'} +, {id:'29-4-9', text:'level 3-29-4-9'} +]} +, {id:'29-5-10', text:'level 2-29-5', item:[ + {id:'29-5-0', text:'level 3-29-5-0'} +, {id:'29-5-1', text:'level 3-29-5-1'} +, {id:'29-5-2', text:'level 3-29-5-2'} +, {id:'29-5-3', text:'level 3-29-5-3'} +, {id:'29-5-4', text:'level 3-29-5-4'} +, {id:'29-5-5', text:'level 3-29-5-5'} +, {id:'29-5-6', text:'level 3-29-5-6'} +, {id:'29-5-7', text:'level 3-29-5-7'} +, {id:'29-5-8', text:'level 3-29-5-8'} +, {id:'29-5-9', text:'level 3-29-5-9'} +]} +, {id:'29-6-10', text:'level 2-29-6', item:[ + {id:'29-6-0', text:'level 3-29-6-0'} +, {id:'29-6-1', text:'level 3-29-6-1'} +, {id:'29-6-2', text:'level 3-29-6-2'} +, {id:'29-6-3', text:'level 3-29-6-3'} +, {id:'29-6-4', text:'level 3-29-6-4'} +, {id:'29-6-5', text:'level 3-29-6-5'} +, {id:'29-6-6', text:'level 3-29-6-6'} +, {id:'29-6-7', text:'level 3-29-6-7'} +, {id:'29-6-8', text:'level 3-29-6-8'} +, {id:'29-6-9', text:'level 3-29-6-9'} +]} +, {id:'29-7-10', text:'level 2-29-7', item:[ + {id:'29-7-0', text:'level 3-29-7-0'} +, {id:'29-7-1', text:'level 3-29-7-1'} +, {id:'29-7-2', text:'level 3-29-7-2'} +, {id:'29-7-3', text:'level 3-29-7-3'} +, {id:'29-7-4', text:'level 3-29-7-4'} +, {id:'29-7-5', text:'level 3-29-7-5'} +, {id:'29-7-6', text:'level 3-29-7-6'} +, {id:'29-7-7', text:'level 3-29-7-7'} +, {id:'29-7-8', text:'level 3-29-7-8'} +, {id:'29-7-9', text:'level 3-29-7-9'} +]} +, {id:'29-8-10', text:'level 2-29-8', item:[ + {id:'29-8-0', text:'level 3-29-8-0'} +, {id:'29-8-1', text:'level 3-29-8-1'} +, {id:'29-8-2', text:'level 3-29-8-2'} +, {id:'29-8-3', text:'level 3-29-8-3'} +, {id:'29-8-4', text:'level 3-29-8-4'} +, {id:'29-8-5', text:'level 3-29-8-5'} +, {id:'29-8-6', text:'level 3-29-8-6'} +, {id:'29-8-7', text:'level 3-29-8-7'} +, {id:'29-8-8', text:'level 3-29-8-8'} +, {id:'29-8-9', text:'level 3-29-8-9'} +]} +, {id:'29-9-10', text:'level 2-29-9', item:[ + {id:'29-9-0', text:'level 3-29-9-0'} +, {id:'29-9-1', text:'level 3-29-9-1'} +, {id:'29-9-2', text:'level 3-29-9-2'} +, {id:'29-9-3', text:'level 3-29-9-3'} +, {id:'29-9-4', text:'level 3-29-9-4'} +, {id:'29-9-5', text:'level 3-29-9-5'} +, {id:'29-9-6', text:'level 3-29-9-6'} +, {id:'29-9-7', text:'level 3-29-9-7'} +, {id:'29-9-8', text:'level 3-29-9-8'} +, {id:'29-9-9', text:'level 3-29-9-9'} +]} +, {id:'29-10-10', text:'level 2-29-10', item:[ + {id:'29-10-0', text:'level 3-29-10-0'} +, {id:'29-10-1', text:'level 3-29-10-1'} +, {id:'29-10-2', text:'level 3-29-10-2'} +, {id:'29-10-3', text:'level 3-29-10-3'} +, {id:'29-10-4', text:'level 3-29-10-4'} +, {id:'29-10-5', text:'level 3-29-10-5'} +, {id:'29-10-6', text:'level 3-29-10-6'} +, {id:'29-10-7', text:'level 3-29-10-7'} +, {id:'29-10-8', text:'level 3-29-10-8'} +, {id:'29-10-9', text:'level 3-29-10-9'} +]} +, {id:'29-11-10', text:'level 2-29-11', item:[ + {id:'29-11-0', text:'level 3-29-11-0'} +, {id:'29-11-1', text:'level 3-29-11-1'} +, {id:'29-11-2', text:'level 3-29-11-2'} +, {id:'29-11-3', text:'level 3-29-11-3'} +, {id:'29-11-4', text:'level 3-29-11-4'} +, {id:'29-11-5', text:'level 3-29-11-5'} +, {id:'29-11-6', text:'level 3-29-11-6'} +, {id:'29-11-7', text:'level 3-29-11-7'} +, {id:'29-11-8', text:'level 3-29-11-8'} +, {id:'29-11-9', text:'level 3-29-11-9'} +]} +, {id:'29-12-10', text:'level 2-29-12', item:[ + {id:'29-12-0', text:'level 3-29-12-0'} +, {id:'29-12-1', text:'level 3-29-12-1'} +, {id:'29-12-2', text:'level 3-29-12-2'} +, {id:'29-12-3', text:'level 3-29-12-3'} +, {id:'29-12-4', text:'level 3-29-12-4'} +, {id:'29-12-5', text:'level 3-29-12-5'} +, {id:'29-12-6', text:'level 3-29-12-6'} +, {id:'29-12-7', text:'level 3-29-12-7'} +, {id:'29-12-8', text:'level 3-29-12-8'} +, {id:'29-12-9', text:'level 3-29-12-9'} +]} +, {id:'29-13-10', text:'level 2-29-13', item:[ + {id:'29-13-0', text:'level 3-29-13-0'} +, {id:'29-13-1', text:'level 3-29-13-1'} +, {id:'29-13-2', text:'level 3-29-13-2'} +, {id:'29-13-3', text:'level 3-29-13-3'} +, {id:'29-13-4', text:'level 3-29-13-4'} +, {id:'29-13-5', text:'level 3-29-13-5'} +, {id:'29-13-6', text:'level 3-29-13-6'} +, {id:'29-13-7', text:'level 3-29-13-7'} +, {id:'29-13-8', text:'level 3-29-13-8'} +, {id:'29-13-9', text:'level 3-29-13-9'} +]} +, {id:'29-14-10', text:'level 2-29-14', item:[ + {id:'29-14-0', text:'level 3-29-14-0'} +, {id:'29-14-1', text:'level 3-29-14-1'} +, {id:'29-14-2', text:'level 3-29-14-2'} +, {id:'29-14-3', text:'level 3-29-14-3'} +, {id:'29-14-4', text:'level 3-29-14-4'} +, {id:'29-14-5', text:'level 3-29-14-5'} +, {id:'29-14-6', text:'level 3-29-14-6'} +, {id:'29-14-7', text:'level 3-29-14-7'} +, {id:'29-14-8', text:'level 3-29-14-8'} +, {id:'29-14-9', text:'level 3-29-14-9'} +]} +, {id:'29-15-10', text:'level 2-29-15', item:[ + {id:'29-15-0', text:'level 3-29-15-0'} +, {id:'29-15-1', text:'level 3-29-15-1'} +, {id:'29-15-2', text:'level 3-29-15-2'} +, {id:'29-15-3', text:'level 3-29-15-3'} +, {id:'29-15-4', text:'level 3-29-15-4'} +, {id:'29-15-5', text:'level 3-29-15-5'} +, {id:'29-15-6', text:'level 3-29-15-6'} +, {id:'29-15-7', text:'level 3-29-15-7'} +, {id:'29-15-8', text:'level 3-29-15-8'} +, {id:'29-15-9', text:'level 3-29-15-9'} +]} +, {id:'29-16-10', text:'level 2-29-16', item:[ + {id:'29-16-0', text:'level 3-29-16-0'} +, {id:'29-16-1', text:'level 3-29-16-1'} +, {id:'29-16-2', text:'level 3-29-16-2'} +, {id:'29-16-3', text:'level 3-29-16-3'} +, {id:'29-16-4', text:'level 3-29-16-4'} +, {id:'29-16-5', text:'level 3-29-16-5'} +, {id:'29-16-6', text:'level 3-29-16-6'} +, {id:'29-16-7', text:'level 3-29-16-7'} +, {id:'29-16-8', text:'level 3-29-16-8'} +, {id:'29-16-9', text:'level 3-29-16-9'} +]} +, {id:'29-17-10', text:'level 2-29-17', item:[ + {id:'29-17-0', text:'level 3-29-17-0'} +, {id:'29-17-1', text:'level 3-29-17-1'} +, {id:'29-17-2', text:'level 3-29-17-2'} +, {id:'29-17-3', text:'level 3-29-17-3'} +, {id:'29-17-4', text:'level 3-29-17-4'} +, {id:'29-17-5', text:'level 3-29-17-5'} +, {id:'29-17-6', text:'level 3-29-17-6'} +, {id:'29-17-7', text:'level 3-29-17-7'} +, {id:'29-17-8', text:'level 3-29-17-8'} +, {id:'29-17-9', text:'level 3-29-17-9'} +]} +, {id:'29-18-10', text:'level 2-29-18', item:[ + {id:'29-18-0', text:'level 3-29-18-0'} +, {id:'29-18-1', text:'level 3-29-18-1'} +, {id:'29-18-2', text:'level 3-29-18-2'} +, {id:'29-18-3', text:'level 3-29-18-3'} +, {id:'29-18-4', text:'level 3-29-18-4'} +, {id:'29-18-5', text:'level 3-29-18-5'} +, {id:'29-18-6', text:'level 3-29-18-6'} +, {id:'29-18-7', text:'level 3-29-18-7'} +, {id:'29-18-8', text:'level 3-29-18-8'} +, {id:'29-18-9', text:'level 3-29-18-9'} +]} +, {id:'29-19-10', text:'level 2-29-19', item:[ + {id:'29-19-0', text:'level 3-29-19-0'} +, {id:'29-19-1', text:'level 3-29-19-1'} +, {id:'29-19-2', text:'level 3-29-19-2'} +, {id:'29-19-3', text:'level 3-29-19-3'} +, {id:'29-19-4', text:'level 3-29-19-4'} +, {id:'29-19-5', text:'level 3-29-19-5'} +, {id:'29-19-6', text:'level 3-29-19-6'} +, {id:'29-19-7', text:'level 3-29-19-7'} +, {id:'29-19-8', text:'level 3-29-19-8'} +, {id:'29-19-9', text:'level 3-29-19-9'} +]} +]} +,{id:'30-20-10', text:'level 1-30', item:[ + {id:'30-0-10', text:'level 2-30-0', item:[ + {id:'30-0-0', text:'level 3-30-0-0'} +, {id:'30-0-1', text:'level 3-30-0-1'} +, {id:'30-0-2', text:'level 3-30-0-2'} +, {id:'30-0-3', text:'level 3-30-0-3'} +, {id:'30-0-4', text:'level 3-30-0-4'} +, {id:'30-0-5', text:'level 3-30-0-5'} +, {id:'30-0-6', text:'level 3-30-0-6'} +, {id:'30-0-7', text:'level 3-30-0-7'} +, {id:'30-0-8', text:'level 3-30-0-8'} +, {id:'30-0-9', text:'level 3-30-0-9'} +]} +, {id:'30-1-10', text:'level 2-30-1', item:[ + {id:'30-1-0', text:'level 3-30-1-0'} +, {id:'30-1-1', text:'level 3-30-1-1'} +, {id:'30-1-2', text:'level 3-30-1-2'} +, {id:'30-1-3', text:'level 3-30-1-3'} +, {id:'30-1-4', text:'level 3-30-1-4'} +, {id:'30-1-5', text:'level 3-30-1-5'} +, {id:'30-1-6', text:'level 3-30-1-6'} +, {id:'30-1-7', text:'level 3-30-1-7'} +, {id:'30-1-8', text:'level 3-30-1-8'} +, {id:'30-1-9', text:'level 3-30-1-9'} +]} +, {id:'30-2-10', text:'level 2-30-2', item:[ + {id:'30-2-0', text:'level 3-30-2-0'} +, {id:'30-2-1', text:'level 3-30-2-1'} +, {id:'30-2-2', text:'level 3-30-2-2'} +, {id:'30-2-3', text:'level 3-30-2-3'} +, {id:'30-2-4', text:'level 3-30-2-4'} +, {id:'30-2-5', text:'level 3-30-2-5'} +, {id:'30-2-6', text:'level 3-30-2-6'} +, {id:'30-2-7', text:'level 3-30-2-7'} +, {id:'30-2-8', text:'level 3-30-2-8'} +, {id:'30-2-9', text:'level 3-30-2-9'} +]} +, {id:'30-3-10', text:'level 2-30-3', item:[ + {id:'30-3-0', text:'level 3-30-3-0'} +, {id:'30-3-1', text:'level 3-30-3-1'} +, {id:'30-3-2', text:'level 3-30-3-2'} +, {id:'30-3-3', text:'level 3-30-3-3'} +, {id:'30-3-4', text:'level 3-30-3-4'} +, {id:'30-3-5', text:'level 3-30-3-5'} +, {id:'30-3-6', text:'level 3-30-3-6'} +, {id:'30-3-7', text:'level 3-30-3-7'} +, {id:'30-3-8', text:'level 3-30-3-8'} +, {id:'30-3-9', text:'level 3-30-3-9'} +]} +, {id:'30-4-10', text:'level 2-30-4', item:[ + {id:'30-4-0', text:'level 3-30-4-0'} +, {id:'30-4-1', text:'level 3-30-4-1'} +, {id:'30-4-2', text:'level 3-30-4-2'} +, {id:'30-4-3', text:'level 3-30-4-3'} +, {id:'30-4-4', text:'level 3-30-4-4'} +, {id:'30-4-5', text:'level 3-30-4-5'} +, {id:'30-4-6', text:'level 3-30-4-6'} +, {id:'30-4-7', text:'level 3-30-4-7'} +, {id:'30-4-8', text:'level 3-30-4-8'} +, {id:'30-4-9', text:'level 3-30-4-9'} +]} +, {id:'30-5-10', text:'level 2-30-5', item:[ + {id:'30-5-0', text:'level 3-30-5-0'} +, {id:'30-5-1', text:'level 3-30-5-1'} +, {id:'30-5-2', text:'level 3-30-5-2'} +, {id:'30-5-3', text:'level 3-30-5-3'} +, {id:'30-5-4', text:'level 3-30-5-4'} +, {id:'30-5-5', text:'level 3-30-5-5'} +, {id:'30-5-6', text:'level 3-30-5-6'} +, {id:'30-5-7', text:'level 3-30-5-7'} +, {id:'30-5-8', text:'level 3-30-5-8'} +, {id:'30-5-9', text:'level 3-30-5-9'} +]} +, {id:'30-6-10', text:'level 2-30-6', item:[ + {id:'30-6-0', text:'level 3-30-6-0'} +, {id:'30-6-1', text:'level 3-30-6-1'} +, {id:'30-6-2', text:'level 3-30-6-2'} +, {id:'30-6-3', text:'level 3-30-6-3'} +, {id:'30-6-4', text:'level 3-30-6-4'} +, {id:'30-6-5', text:'level 3-30-6-5'} +, {id:'30-6-6', text:'level 3-30-6-6'} +, {id:'30-6-7', text:'level 3-30-6-7'} +, {id:'30-6-8', text:'level 3-30-6-8'} +, {id:'30-6-9', text:'level 3-30-6-9'} +]} +, {id:'30-7-10', text:'level 2-30-7', item:[ + {id:'30-7-0', text:'level 3-30-7-0'} +, {id:'30-7-1', text:'level 3-30-7-1'} +, {id:'30-7-2', text:'level 3-30-7-2'} +, {id:'30-7-3', text:'level 3-30-7-3'} +, {id:'30-7-4', text:'level 3-30-7-4'} +, {id:'30-7-5', text:'level 3-30-7-5'} +, {id:'30-7-6', text:'level 3-30-7-6'} +, {id:'30-7-7', text:'level 3-30-7-7'} +, {id:'30-7-8', text:'level 3-30-7-8'} +, {id:'30-7-9', text:'level 3-30-7-9'} +]} +, {id:'30-8-10', text:'level 2-30-8', item:[ + {id:'30-8-0', text:'level 3-30-8-0'} +, {id:'30-8-1', text:'level 3-30-8-1'} +, {id:'30-8-2', text:'level 3-30-8-2'} +, {id:'30-8-3', text:'level 3-30-8-3'} +, {id:'30-8-4', text:'level 3-30-8-4'} +, {id:'30-8-5', text:'level 3-30-8-5'} +, {id:'30-8-6', text:'level 3-30-8-6'} +, {id:'30-8-7', text:'level 3-30-8-7'} +, {id:'30-8-8', text:'level 3-30-8-8'} +, {id:'30-8-9', text:'level 3-30-8-9'} +]} +, {id:'30-9-10', text:'level 2-30-9', item:[ + {id:'30-9-0', text:'level 3-30-9-0'} +, {id:'30-9-1', text:'level 3-30-9-1'} +, {id:'30-9-2', text:'level 3-30-9-2'} +, {id:'30-9-3', text:'level 3-30-9-3'} +, {id:'30-9-4', text:'level 3-30-9-4'} +, {id:'30-9-5', text:'level 3-30-9-5'} +, {id:'30-9-6', text:'level 3-30-9-6'} +, {id:'30-9-7', text:'level 3-30-9-7'} +, {id:'30-9-8', text:'level 3-30-9-8'} +, {id:'30-9-9', text:'level 3-30-9-9'} +]} +, {id:'30-10-10', text:'level 2-30-10', item:[ + {id:'30-10-0', text:'level 3-30-10-0'} +, {id:'30-10-1', text:'level 3-30-10-1'} +, {id:'30-10-2', text:'level 3-30-10-2'} +, {id:'30-10-3', text:'level 3-30-10-3'} +, {id:'30-10-4', text:'level 3-30-10-4'} +, {id:'30-10-5', text:'level 3-30-10-5'} +, {id:'30-10-6', text:'level 3-30-10-6'} +, {id:'30-10-7', text:'level 3-30-10-7'} +, {id:'30-10-8', text:'level 3-30-10-8'} +, {id:'30-10-9', text:'level 3-30-10-9'} +]} +, {id:'30-11-10', text:'level 2-30-11', item:[ + {id:'30-11-0', text:'level 3-30-11-0'} +, {id:'30-11-1', text:'level 3-30-11-1'} +, {id:'30-11-2', text:'level 3-30-11-2'} +, {id:'30-11-3', text:'level 3-30-11-3'} +, {id:'30-11-4', text:'level 3-30-11-4'} +, {id:'30-11-5', text:'level 3-30-11-5'} +, {id:'30-11-6', text:'level 3-30-11-6'} +, {id:'30-11-7', text:'level 3-30-11-7'} +, {id:'30-11-8', text:'level 3-30-11-8'} +, {id:'30-11-9', text:'level 3-30-11-9'} +]} +, {id:'30-12-10', text:'level 2-30-12', item:[ + {id:'30-12-0', text:'level 3-30-12-0'} +, {id:'30-12-1', text:'level 3-30-12-1'} +, {id:'30-12-2', text:'level 3-30-12-2'} +, {id:'30-12-3', text:'level 3-30-12-3'} +, {id:'30-12-4', text:'level 3-30-12-4'} +, {id:'30-12-5', text:'level 3-30-12-5'} +, {id:'30-12-6', text:'level 3-30-12-6'} +, {id:'30-12-7', text:'level 3-30-12-7'} +, {id:'30-12-8', text:'level 3-30-12-8'} +, {id:'30-12-9', text:'level 3-30-12-9'} +]} +, {id:'30-13-10', text:'level 2-30-13', item:[ + {id:'30-13-0', text:'level 3-30-13-0'} +, {id:'30-13-1', text:'level 3-30-13-1'} +, {id:'30-13-2', text:'level 3-30-13-2'} +, {id:'30-13-3', text:'level 3-30-13-3'} +, {id:'30-13-4', text:'level 3-30-13-4'} +, {id:'30-13-5', text:'level 3-30-13-5'} +, {id:'30-13-6', text:'level 3-30-13-6'} +, {id:'30-13-7', text:'level 3-30-13-7'} +, {id:'30-13-8', text:'level 3-30-13-8'} +, {id:'30-13-9', text:'level 3-30-13-9'} +]} +, {id:'30-14-10', text:'level 2-30-14', item:[ + {id:'30-14-0', text:'level 3-30-14-0'} +, {id:'30-14-1', text:'level 3-30-14-1'} +, {id:'30-14-2', text:'level 3-30-14-2'} +, {id:'30-14-3', text:'level 3-30-14-3'} +, {id:'30-14-4', text:'level 3-30-14-4'} +, {id:'30-14-5', text:'level 3-30-14-5'} +, {id:'30-14-6', text:'level 3-30-14-6'} +, {id:'30-14-7', text:'level 3-30-14-7'} +, {id:'30-14-8', text:'level 3-30-14-8'} +, {id:'30-14-9', text:'level 3-30-14-9'} +]} +, {id:'30-15-10', text:'level 2-30-15', item:[ + {id:'30-15-0', text:'level 3-30-15-0'} +, {id:'30-15-1', text:'level 3-30-15-1'} +, {id:'30-15-2', text:'level 3-30-15-2'} +, {id:'30-15-3', text:'level 3-30-15-3'} +, {id:'30-15-4', text:'level 3-30-15-4'} +, {id:'30-15-5', text:'level 3-30-15-5'} +, {id:'30-15-6', text:'level 3-30-15-6'} +, {id:'30-15-7', text:'level 3-30-15-7'} +, {id:'30-15-8', text:'level 3-30-15-8'} +, {id:'30-15-9', text:'level 3-30-15-9'} +]} +, {id:'30-16-10', text:'level 2-30-16', item:[ + {id:'30-16-0', text:'level 3-30-16-0'} +, {id:'30-16-1', text:'level 3-30-16-1'} +, {id:'30-16-2', text:'level 3-30-16-2'} +, {id:'30-16-3', text:'level 3-30-16-3'} +, {id:'30-16-4', text:'level 3-30-16-4'} +, {id:'30-16-5', text:'level 3-30-16-5'} +, {id:'30-16-6', text:'level 3-30-16-6'} +, {id:'30-16-7', text:'level 3-30-16-7'} +, {id:'30-16-8', text:'level 3-30-16-8'} +, {id:'30-16-9', text:'level 3-30-16-9'} +]} +, {id:'30-17-10', text:'level 2-30-17', item:[ + {id:'30-17-0', text:'level 3-30-17-0'} +, {id:'30-17-1', text:'level 3-30-17-1'} +, {id:'30-17-2', text:'level 3-30-17-2'} +, {id:'30-17-3', text:'level 3-30-17-3'} +, {id:'30-17-4', text:'level 3-30-17-4'} +, {id:'30-17-5', text:'level 3-30-17-5'} +, {id:'30-17-6', text:'level 3-30-17-6'} +, {id:'30-17-7', text:'level 3-30-17-7'} +, {id:'30-17-8', text:'level 3-30-17-8'} +, {id:'30-17-9', text:'level 3-30-17-9'} +]} +, {id:'30-18-10', text:'level 2-30-18', item:[ + {id:'30-18-0', text:'level 3-30-18-0'} +, {id:'30-18-1', text:'level 3-30-18-1'} +, {id:'30-18-2', text:'level 3-30-18-2'} +, {id:'30-18-3', text:'level 3-30-18-3'} +, {id:'30-18-4', text:'level 3-30-18-4'} +, {id:'30-18-5', text:'level 3-30-18-5'} +, {id:'30-18-6', text:'level 3-30-18-6'} +, {id:'30-18-7', text:'level 3-30-18-7'} +, {id:'30-18-8', text:'level 3-30-18-8'} +, {id:'30-18-9', text:'level 3-30-18-9'} +]} +, {id:'30-19-10', text:'level 2-30-19', item:[ + {id:'30-19-0', text:'level 3-30-19-0'} +, {id:'30-19-1', text:'level 3-30-19-1'} +, {id:'30-19-2', text:'level 3-30-19-2'} +, {id:'30-19-3', text:'level 3-30-19-3'} +, {id:'30-19-4', text:'level 3-30-19-4'} +, {id:'30-19-5', text:'level 3-30-19-5'} +, {id:'30-19-6', text:'level 3-30-19-6'} +, {id:'30-19-7', text:'level 3-30-19-7'} +, {id:'30-19-8', text:'level 3-30-19-8'} +, {id:'30-19-9', text:'level 3-30-19-9'} +]} +]} +,{id:'31-20-10', text:'level 1-31', item:[ + {id:'31-0-10', text:'level 2-31-0', item:[ + {id:'31-0-0', text:'level 3-31-0-0'} +, {id:'31-0-1', text:'level 3-31-0-1'} +, {id:'31-0-2', text:'level 3-31-0-2'} +, {id:'31-0-3', text:'level 3-31-0-3'} +, {id:'31-0-4', text:'level 3-31-0-4'} +, {id:'31-0-5', text:'level 3-31-0-5'} +, {id:'31-0-6', text:'level 3-31-0-6'} +, {id:'31-0-7', text:'level 3-31-0-7'} +, {id:'31-0-8', text:'level 3-31-0-8'} +, {id:'31-0-9', text:'level 3-31-0-9'} +]} +, {id:'31-1-10', text:'level 2-31-1', item:[ + {id:'31-1-0', text:'level 3-31-1-0'} +, {id:'31-1-1', text:'level 3-31-1-1'} +, {id:'31-1-2', text:'level 3-31-1-2'} +, {id:'31-1-3', text:'level 3-31-1-3'} +, {id:'31-1-4', text:'level 3-31-1-4'} +, {id:'31-1-5', text:'level 3-31-1-5'} +, {id:'31-1-6', text:'level 3-31-1-6'} +, {id:'31-1-7', text:'level 3-31-1-7'} +, {id:'31-1-8', text:'level 3-31-1-8'} +, {id:'31-1-9', text:'level 3-31-1-9'} +]} +, {id:'31-2-10', text:'level 2-31-2', item:[ + {id:'31-2-0', text:'level 3-31-2-0'} +, {id:'31-2-1', text:'level 3-31-2-1'} +, {id:'31-2-2', text:'level 3-31-2-2'} +, {id:'31-2-3', text:'level 3-31-2-3'} +, {id:'31-2-4', text:'level 3-31-2-4'} +, {id:'31-2-5', text:'level 3-31-2-5'} +, {id:'31-2-6', text:'level 3-31-2-6'} +, {id:'31-2-7', text:'level 3-31-2-7'} +, {id:'31-2-8', text:'level 3-31-2-8'} +, {id:'31-2-9', text:'level 3-31-2-9'} +]} +, {id:'31-3-10', text:'level 2-31-3', item:[ + {id:'31-3-0', text:'level 3-31-3-0'} +, {id:'31-3-1', text:'level 3-31-3-1'} +, {id:'31-3-2', text:'level 3-31-3-2'} +, {id:'31-3-3', text:'level 3-31-3-3'} +, {id:'31-3-4', text:'level 3-31-3-4'} +, {id:'31-3-5', text:'level 3-31-3-5'} +, {id:'31-3-6', text:'level 3-31-3-6'} +, {id:'31-3-7', text:'level 3-31-3-7'} +, {id:'31-3-8', text:'level 3-31-3-8'} +, {id:'31-3-9', text:'level 3-31-3-9'} +]} +, {id:'31-4-10', text:'level 2-31-4', item:[ + {id:'31-4-0', text:'level 3-31-4-0'} +, {id:'31-4-1', text:'level 3-31-4-1'} +, {id:'31-4-2', text:'level 3-31-4-2'} +, {id:'31-4-3', text:'level 3-31-4-3'} +, {id:'31-4-4', text:'level 3-31-4-4'} +, {id:'31-4-5', text:'level 3-31-4-5'} +, {id:'31-4-6', text:'level 3-31-4-6'} +, {id:'31-4-7', text:'level 3-31-4-7'} +, {id:'31-4-8', text:'level 3-31-4-8'} +, {id:'31-4-9', text:'level 3-31-4-9'} +]} +, {id:'31-5-10', text:'level 2-31-5', item:[ + {id:'31-5-0', text:'level 3-31-5-0'} +, {id:'31-5-1', text:'level 3-31-5-1'} +, {id:'31-5-2', text:'level 3-31-5-2'} +, {id:'31-5-3', text:'level 3-31-5-3'} +, {id:'31-5-4', text:'level 3-31-5-4'} +, {id:'31-5-5', text:'level 3-31-5-5'} +, {id:'31-5-6', text:'level 3-31-5-6'} +, {id:'31-5-7', text:'level 3-31-5-7'} +, {id:'31-5-8', text:'level 3-31-5-8'} +, {id:'31-5-9', text:'level 3-31-5-9'} +]} +, {id:'31-6-10', text:'level 2-31-6', item:[ + {id:'31-6-0', text:'level 3-31-6-0'} +, {id:'31-6-1', text:'level 3-31-6-1'} +, {id:'31-6-2', text:'level 3-31-6-2'} +, {id:'31-6-3', text:'level 3-31-6-3'} +, {id:'31-6-4', text:'level 3-31-6-4'} +, {id:'31-6-5', text:'level 3-31-6-5'} +, {id:'31-6-6', text:'level 3-31-6-6'} +, {id:'31-6-7', text:'level 3-31-6-7'} +, {id:'31-6-8', text:'level 3-31-6-8'} +, {id:'31-6-9', text:'level 3-31-6-9'} +]} +, {id:'31-7-10', text:'level 2-31-7', item:[ + {id:'31-7-0', text:'level 3-31-7-0'} +, {id:'31-7-1', text:'level 3-31-7-1'} +, {id:'31-7-2', text:'level 3-31-7-2'} +, {id:'31-7-3', text:'level 3-31-7-3'} +, {id:'31-7-4', text:'level 3-31-7-4'} +, {id:'31-7-5', text:'level 3-31-7-5'} +, {id:'31-7-6', text:'level 3-31-7-6'} +, {id:'31-7-7', text:'level 3-31-7-7'} +, {id:'31-7-8', text:'level 3-31-7-8'} +, {id:'31-7-9', text:'level 3-31-7-9'} +]} +, {id:'31-8-10', text:'level 2-31-8', item:[ + {id:'31-8-0', text:'level 3-31-8-0'} +, {id:'31-8-1', text:'level 3-31-8-1'} +, {id:'31-8-2', text:'level 3-31-8-2'} +, {id:'31-8-3', text:'level 3-31-8-3'} +, {id:'31-8-4', text:'level 3-31-8-4'} +, {id:'31-8-5', text:'level 3-31-8-5'} +, {id:'31-8-6', text:'level 3-31-8-6'} +, {id:'31-8-7', text:'level 3-31-8-7'} +, {id:'31-8-8', text:'level 3-31-8-8'} +, {id:'31-8-9', text:'level 3-31-8-9'} +]} +, {id:'31-9-10', text:'level 2-31-9', item:[ + {id:'31-9-0', text:'level 3-31-9-0'} +, {id:'31-9-1', text:'level 3-31-9-1'} +, {id:'31-9-2', text:'level 3-31-9-2'} +, {id:'31-9-3', text:'level 3-31-9-3'} +, {id:'31-9-4', text:'level 3-31-9-4'} +, {id:'31-9-5', text:'level 3-31-9-5'} +, {id:'31-9-6', text:'level 3-31-9-6'} +, {id:'31-9-7', text:'level 3-31-9-7'} +, {id:'31-9-8', text:'level 3-31-9-8'} +, {id:'31-9-9', text:'level 3-31-9-9'} +]} +, {id:'31-10-10', text:'level 2-31-10', item:[ + {id:'31-10-0', text:'level 3-31-10-0'} +, {id:'31-10-1', text:'level 3-31-10-1'} +, {id:'31-10-2', text:'level 3-31-10-2'} +, {id:'31-10-3', text:'level 3-31-10-3'} +, {id:'31-10-4', text:'level 3-31-10-4'} +, {id:'31-10-5', text:'level 3-31-10-5'} +, {id:'31-10-6', text:'level 3-31-10-6'} +, {id:'31-10-7', text:'level 3-31-10-7'} +, {id:'31-10-8', text:'level 3-31-10-8'} +, {id:'31-10-9', text:'level 3-31-10-9'} +]} +, {id:'31-11-10', text:'level 2-31-11', item:[ + {id:'31-11-0', text:'level 3-31-11-0'} +, {id:'31-11-1', text:'level 3-31-11-1'} +, {id:'31-11-2', text:'level 3-31-11-2'} +, {id:'31-11-3', text:'level 3-31-11-3'} +, {id:'31-11-4', text:'level 3-31-11-4'} +, {id:'31-11-5', text:'level 3-31-11-5'} +, {id:'31-11-6', text:'level 3-31-11-6'} +, {id:'31-11-7', text:'level 3-31-11-7'} +, {id:'31-11-8', text:'level 3-31-11-8'} +, {id:'31-11-9', text:'level 3-31-11-9'} +]} +, {id:'31-12-10', text:'level 2-31-12', item:[ + {id:'31-12-0', text:'level 3-31-12-0'} +, {id:'31-12-1', text:'level 3-31-12-1'} +, {id:'31-12-2', text:'level 3-31-12-2'} +, {id:'31-12-3', text:'level 3-31-12-3'} +, {id:'31-12-4', text:'level 3-31-12-4'} +, {id:'31-12-5', text:'level 3-31-12-5'} +, {id:'31-12-6', text:'level 3-31-12-6'} +, {id:'31-12-7', text:'level 3-31-12-7'} +, {id:'31-12-8', text:'level 3-31-12-8'} +, {id:'31-12-9', text:'level 3-31-12-9'} +]} +, {id:'31-13-10', text:'level 2-31-13', item:[ + {id:'31-13-0', text:'level 3-31-13-0'} +, {id:'31-13-1', text:'level 3-31-13-1'} +, {id:'31-13-2', text:'level 3-31-13-2'} +, {id:'31-13-3', text:'level 3-31-13-3'} +, {id:'31-13-4', text:'level 3-31-13-4'} +, {id:'31-13-5', text:'level 3-31-13-5'} +, {id:'31-13-6', text:'level 3-31-13-6'} +, {id:'31-13-7', text:'level 3-31-13-7'} +, {id:'31-13-8', text:'level 3-31-13-8'} +, {id:'31-13-9', text:'level 3-31-13-9'} +]} +, {id:'31-14-10', text:'level 2-31-14', item:[ + {id:'31-14-0', text:'level 3-31-14-0'} +, {id:'31-14-1', text:'level 3-31-14-1'} +, {id:'31-14-2', text:'level 3-31-14-2'} +, {id:'31-14-3', text:'level 3-31-14-3'} +, {id:'31-14-4', text:'level 3-31-14-4'} +, {id:'31-14-5', text:'level 3-31-14-5'} +, {id:'31-14-6', text:'level 3-31-14-6'} +, {id:'31-14-7', text:'level 3-31-14-7'} +, {id:'31-14-8', text:'level 3-31-14-8'} +, {id:'31-14-9', text:'level 3-31-14-9'} +]} +, {id:'31-15-10', text:'level 2-31-15', item:[ + {id:'31-15-0', text:'level 3-31-15-0'} +, {id:'31-15-1', text:'level 3-31-15-1'} +, {id:'31-15-2', text:'level 3-31-15-2'} +, {id:'31-15-3', text:'level 3-31-15-3'} +, {id:'31-15-4', text:'level 3-31-15-4'} +, {id:'31-15-5', text:'level 3-31-15-5'} +, {id:'31-15-6', text:'level 3-31-15-6'} +, {id:'31-15-7', text:'level 3-31-15-7'} +, {id:'31-15-8', text:'level 3-31-15-8'} +, {id:'31-15-9', text:'level 3-31-15-9'} +]} +, {id:'31-16-10', text:'level 2-31-16', item:[ + {id:'31-16-0', text:'level 3-31-16-0'} +, {id:'31-16-1', text:'level 3-31-16-1'} +, {id:'31-16-2', text:'level 3-31-16-2'} +, {id:'31-16-3', text:'level 3-31-16-3'} +, {id:'31-16-4', text:'level 3-31-16-4'} +, {id:'31-16-5', text:'level 3-31-16-5'} +, {id:'31-16-6', text:'level 3-31-16-6'} +, {id:'31-16-7', text:'level 3-31-16-7'} +, {id:'31-16-8', text:'level 3-31-16-8'} +, {id:'31-16-9', text:'level 3-31-16-9'} +]} +, {id:'31-17-10', text:'level 2-31-17', item:[ + {id:'31-17-0', text:'level 3-31-17-0'} +, {id:'31-17-1', text:'level 3-31-17-1'} +, {id:'31-17-2', text:'level 3-31-17-2'} +, {id:'31-17-3', text:'level 3-31-17-3'} +, {id:'31-17-4', text:'level 3-31-17-4'} +, {id:'31-17-5', text:'level 3-31-17-5'} +, {id:'31-17-6', text:'level 3-31-17-6'} +, {id:'31-17-7', text:'level 3-31-17-7'} +, {id:'31-17-8', text:'level 3-31-17-8'} +, {id:'31-17-9', text:'level 3-31-17-9'} +]} +, {id:'31-18-10', text:'level 2-31-18', item:[ + {id:'31-18-0', text:'level 3-31-18-0'} +, {id:'31-18-1', text:'level 3-31-18-1'} +, {id:'31-18-2', text:'level 3-31-18-2'} +, {id:'31-18-3', text:'level 3-31-18-3'} +, {id:'31-18-4', text:'level 3-31-18-4'} +, {id:'31-18-5', text:'level 3-31-18-5'} +, {id:'31-18-6', text:'level 3-31-18-6'} +, {id:'31-18-7', text:'level 3-31-18-7'} +, {id:'31-18-8', text:'level 3-31-18-8'} +, {id:'31-18-9', text:'level 3-31-18-9'} +]} +, {id:'31-19-10', text:'level 2-31-19', item:[ + {id:'31-19-0', text:'level 3-31-19-0'} +, {id:'31-19-1', text:'level 3-31-19-1'} +, {id:'31-19-2', text:'level 3-31-19-2'} +, {id:'31-19-3', text:'level 3-31-19-3'} +, {id:'31-19-4', text:'level 3-31-19-4'} +, {id:'31-19-5', text:'level 3-31-19-5'} +, {id:'31-19-6', text:'level 3-31-19-6'} +, {id:'31-19-7', text:'level 3-31-19-7'} +, {id:'31-19-8', text:'level 3-31-19-8'} +, {id:'31-19-9', text:'level 3-31-19-9'} +]} +]} +,{id:'32-20-10', text:'level 1-32', item:[ + {id:'32-0-10', text:'level 2-32-0', item:[ + {id:'32-0-0', text:'level 3-32-0-0'} +, {id:'32-0-1', text:'level 3-32-0-1'} +, {id:'32-0-2', text:'level 3-32-0-2'} +, {id:'32-0-3', text:'level 3-32-0-3'} +, {id:'32-0-4', text:'level 3-32-0-4'} +, {id:'32-0-5', text:'level 3-32-0-5'} +, {id:'32-0-6', text:'level 3-32-0-6'} +, {id:'32-0-7', text:'level 3-32-0-7'} +, {id:'32-0-8', text:'level 3-32-0-8'} +, {id:'32-0-9', text:'level 3-32-0-9'} +]} +, {id:'32-1-10', text:'level 2-32-1', item:[ + {id:'32-1-0', text:'level 3-32-1-0'} +, {id:'32-1-1', text:'level 3-32-1-1'} +, {id:'32-1-2', text:'level 3-32-1-2'} +, {id:'32-1-3', text:'level 3-32-1-3'} +, {id:'32-1-4', text:'level 3-32-1-4'} +, {id:'32-1-5', text:'level 3-32-1-5'} +, {id:'32-1-6', text:'level 3-32-1-6'} +, {id:'32-1-7', text:'level 3-32-1-7'} +, {id:'32-1-8', text:'level 3-32-1-8'} +, {id:'32-1-9', text:'level 3-32-1-9'} +]} +, {id:'32-2-10', text:'level 2-32-2', item:[ + {id:'32-2-0', text:'level 3-32-2-0'} +, {id:'32-2-1', text:'level 3-32-2-1'} +, {id:'32-2-2', text:'level 3-32-2-2'} +, {id:'32-2-3', text:'level 3-32-2-3'} +, {id:'32-2-4', text:'level 3-32-2-4'} +, {id:'32-2-5', text:'level 3-32-2-5'} +, {id:'32-2-6', text:'level 3-32-2-6'} +, {id:'32-2-7', text:'level 3-32-2-7'} +, {id:'32-2-8', text:'level 3-32-2-8'} +, {id:'32-2-9', text:'level 3-32-2-9'} +]} +, {id:'32-3-10', text:'level 2-32-3', item:[ + {id:'32-3-0', text:'level 3-32-3-0'} +, {id:'32-3-1', text:'level 3-32-3-1'} +, {id:'32-3-2', text:'level 3-32-3-2'} +, {id:'32-3-3', text:'level 3-32-3-3'} +, {id:'32-3-4', text:'level 3-32-3-4'} +, {id:'32-3-5', text:'level 3-32-3-5'} +, {id:'32-3-6', text:'level 3-32-3-6'} +, {id:'32-3-7', text:'level 3-32-3-7'} +, {id:'32-3-8', text:'level 3-32-3-8'} +, {id:'32-3-9', text:'level 3-32-3-9'} +]} +, {id:'32-4-10', text:'level 2-32-4', item:[ + {id:'32-4-0', text:'level 3-32-4-0'} +, {id:'32-4-1', text:'level 3-32-4-1'} +, {id:'32-4-2', text:'level 3-32-4-2'} +, {id:'32-4-3', text:'level 3-32-4-3'} +, {id:'32-4-4', text:'level 3-32-4-4'} +, {id:'32-4-5', text:'level 3-32-4-5'} +, {id:'32-4-6', text:'level 3-32-4-6'} +, {id:'32-4-7', text:'level 3-32-4-7'} +, {id:'32-4-8', text:'level 3-32-4-8'} +, {id:'32-4-9', text:'level 3-32-4-9'} +]} +, {id:'32-5-10', text:'level 2-32-5', item:[ + {id:'32-5-0', text:'level 3-32-5-0'} +, {id:'32-5-1', text:'level 3-32-5-1'} +, {id:'32-5-2', text:'level 3-32-5-2'} +, {id:'32-5-3', text:'level 3-32-5-3'} +, {id:'32-5-4', text:'level 3-32-5-4'} +, {id:'32-5-5', text:'level 3-32-5-5'} +, {id:'32-5-6', text:'level 3-32-5-6'} +, {id:'32-5-7', text:'level 3-32-5-7'} +, {id:'32-5-8', text:'level 3-32-5-8'} +, {id:'32-5-9', text:'level 3-32-5-9'} +]} +, {id:'32-6-10', text:'level 2-32-6', item:[ + {id:'32-6-0', text:'level 3-32-6-0'} +, {id:'32-6-1', text:'level 3-32-6-1'} +, {id:'32-6-2', text:'level 3-32-6-2'} +, {id:'32-6-3', text:'level 3-32-6-3'} +, {id:'32-6-4', text:'level 3-32-6-4'} +, {id:'32-6-5', text:'level 3-32-6-5'} +, {id:'32-6-6', text:'level 3-32-6-6'} +, {id:'32-6-7', text:'level 3-32-6-7'} +, {id:'32-6-8', text:'level 3-32-6-8'} +, {id:'32-6-9', text:'level 3-32-6-9'} +]} +, {id:'32-7-10', text:'level 2-32-7', item:[ + {id:'32-7-0', text:'level 3-32-7-0'} +, {id:'32-7-1', text:'level 3-32-7-1'} +, {id:'32-7-2', text:'level 3-32-7-2'} +, {id:'32-7-3', text:'level 3-32-7-3'} +, {id:'32-7-4', text:'level 3-32-7-4'} +, {id:'32-7-5', text:'level 3-32-7-5'} +, {id:'32-7-6', text:'level 3-32-7-6'} +, {id:'32-7-7', text:'level 3-32-7-7'} +, {id:'32-7-8', text:'level 3-32-7-8'} +, {id:'32-7-9', text:'level 3-32-7-9'} +]} +, {id:'32-8-10', text:'level 2-32-8', item:[ + {id:'32-8-0', text:'level 3-32-8-0'} +, {id:'32-8-1', text:'level 3-32-8-1'} +, {id:'32-8-2', text:'level 3-32-8-2'} +, {id:'32-8-3', text:'level 3-32-8-3'} +, {id:'32-8-4', text:'level 3-32-8-4'} +, {id:'32-8-5', text:'level 3-32-8-5'} +, {id:'32-8-6', text:'level 3-32-8-6'} +, {id:'32-8-7', text:'level 3-32-8-7'} +, {id:'32-8-8', text:'level 3-32-8-8'} +, {id:'32-8-9', text:'level 3-32-8-9'} +]} +, {id:'32-9-10', text:'level 2-32-9', item:[ + {id:'32-9-0', text:'level 3-32-9-0'} +, {id:'32-9-1', text:'level 3-32-9-1'} +, {id:'32-9-2', text:'level 3-32-9-2'} +, {id:'32-9-3', text:'level 3-32-9-3'} +, {id:'32-9-4', text:'level 3-32-9-4'} +, {id:'32-9-5', text:'level 3-32-9-5'} +, {id:'32-9-6', text:'level 3-32-9-6'} +, {id:'32-9-7', text:'level 3-32-9-7'} +, {id:'32-9-8', text:'level 3-32-9-8'} +, {id:'32-9-9', text:'level 3-32-9-9'} +]} +, {id:'32-10-10', text:'level 2-32-10', item:[ + {id:'32-10-0', text:'level 3-32-10-0'} +, {id:'32-10-1', text:'level 3-32-10-1'} +, {id:'32-10-2', text:'level 3-32-10-2'} +, {id:'32-10-3', text:'level 3-32-10-3'} +, {id:'32-10-4', text:'level 3-32-10-4'} +, {id:'32-10-5', text:'level 3-32-10-5'} +, {id:'32-10-6', text:'level 3-32-10-6'} +, {id:'32-10-7', text:'level 3-32-10-7'} +, {id:'32-10-8', text:'level 3-32-10-8'} +, {id:'32-10-9', text:'level 3-32-10-9'} +]} +, {id:'32-11-10', text:'level 2-32-11', item:[ + {id:'32-11-0', text:'level 3-32-11-0'} +, {id:'32-11-1', text:'level 3-32-11-1'} +, {id:'32-11-2', text:'level 3-32-11-2'} +, {id:'32-11-3', text:'level 3-32-11-3'} +, {id:'32-11-4', text:'level 3-32-11-4'} +, {id:'32-11-5', text:'level 3-32-11-5'} +, {id:'32-11-6', text:'level 3-32-11-6'} +, {id:'32-11-7', text:'level 3-32-11-7'} +, {id:'32-11-8', text:'level 3-32-11-8'} +, {id:'32-11-9', text:'level 3-32-11-9'} +]} +, {id:'32-12-10', text:'level 2-32-12', item:[ + {id:'32-12-0', text:'level 3-32-12-0'} +, {id:'32-12-1', text:'level 3-32-12-1'} +, {id:'32-12-2', text:'level 3-32-12-2'} +, {id:'32-12-3', text:'level 3-32-12-3'} +, {id:'32-12-4', text:'level 3-32-12-4'} +, {id:'32-12-5', text:'level 3-32-12-5'} +, {id:'32-12-6', text:'level 3-32-12-6'} +, {id:'32-12-7', text:'level 3-32-12-7'} +, {id:'32-12-8', text:'level 3-32-12-8'} +, {id:'32-12-9', text:'level 3-32-12-9'} +]} +, {id:'32-13-10', text:'level 2-32-13', item:[ + {id:'32-13-0', text:'level 3-32-13-0'} +, {id:'32-13-1', text:'level 3-32-13-1'} +, {id:'32-13-2', text:'level 3-32-13-2'} +, {id:'32-13-3', text:'level 3-32-13-3'} +, {id:'32-13-4', text:'level 3-32-13-4'} +, {id:'32-13-5', text:'level 3-32-13-5'} +, {id:'32-13-6', text:'level 3-32-13-6'} +, {id:'32-13-7', text:'level 3-32-13-7'} +, {id:'32-13-8', text:'level 3-32-13-8'} +, {id:'32-13-9', text:'level 3-32-13-9'} +]} +, {id:'32-14-10', text:'level 2-32-14', item:[ + {id:'32-14-0', text:'level 3-32-14-0'} +, {id:'32-14-1', text:'level 3-32-14-1'} +, {id:'32-14-2', text:'level 3-32-14-2'} +, {id:'32-14-3', text:'level 3-32-14-3'} +, {id:'32-14-4', text:'level 3-32-14-4'} +, {id:'32-14-5', text:'level 3-32-14-5'} +, {id:'32-14-6', text:'level 3-32-14-6'} +, {id:'32-14-7', text:'level 3-32-14-7'} +, {id:'32-14-8', text:'level 3-32-14-8'} +, {id:'32-14-9', text:'level 3-32-14-9'} +]} +, {id:'32-15-10', text:'level 2-32-15', item:[ + {id:'32-15-0', text:'level 3-32-15-0'} +, {id:'32-15-1', text:'level 3-32-15-1'} +, {id:'32-15-2', text:'level 3-32-15-2'} +, {id:'32-15-3', text:'level 3-32-15-3'} +, {id:'32-15-4', text:'level 3-32-15-4'} +, {id:'32-15-5', text:'level 3-32-15-5'} +, {id:'32-15-6', text:'level 3-32-15-6'} +, {id:'32-15-7', text:'level 3-32-15-7'} +, {id:'32-15-8', text:'level 3-32-15-8'} +, {id:'32-15-9', text:'level 3-32-15-9'} +]} +, {id:'32-16-10', text:'level 2-32-16', item:[ + {id:'32-16-0', text:'level 3-32-16-0'} +, {id:'32-16-1', text:'level 3-32-16-1'} +, {id:'32-16-2', text:'level 3-32-16-2'} +, {id:'32-16-3', text:'level 3-32-16-3'} +, {id:'32-16-4', text:'level 3-32-16-4'} +, {id:'32-16-5', text:'level 3-32-16-5'} +, {id:'32-16-6', text:'level 3-32-16-6'} +, {id:'32-16-7', text:'level 3-32-16-7'} +, {id:'32-16-8', text:'level 3-32-16-8'} +, {id:'32-16-9', text:'level 3-32-16-9'} +]} +, {id:'32-17-10', text:'level 2-32-17', item:[ + {id:'32-17-0', text:'level 3-32-17-0'} +, {id:'32-17-1', text:'level 3-32-17-1'} +, {id:'32-17-2', text:'level 3-32-17-2'} +, {id:'32-17-3', text:'level 3-32-17-3'} +, {id:'32-17-4', text:'level 3-32-17-4'} +, {id:'32-17-5', text:'level 3-32-17-5'} +, {id:'32-17-6', text:'level 3-32-17-6'} +, {id:'32-17-7', text:'level 3-32-17-7'} +, {id:'32-17-8', text:'level 3-32-17-8'} +, {id:'32-17-9', text:'level 3-32-17-9'} +]} +, {id:'32-18-10', text:'level 2-32-18', item:[ + {id:'32-18-0', text:'level 3-32-18-0'} +, {id:'32-18-1', text:'level 3-32-18-1'} +, {id:'32-18-2', text:'level 3-32-18-2'} +, {id:'32-18-3', text:'level 3-32-18-3'} +, {id:'32-18-4', text:'level 3-32-18-4'} +, {id:'32-18-5', text:'level 3-32-18-5'} +, {id:'32-18-6', text:'level 3-32-18-6'} +, {id:'32-18-7', text:'level 3-32-18-7'} +, {id:'32-18-8', text:'level 3-32-18-8'} +, {id:'32-18-9', text:'level 3-32-18-9'} +]} +, {id:'32-19-10', text:'level 2-32-19', item:[ + {id:'32-19-0', text:'level 3-32-19-0'} +, {id:'32-19-1', text:'level 3-32-19-1'} +, {id:'32-19-2', text:'level 3-32-19-2'} +, {id:'32-19-3', text:'level 3-32-19-3'} +, {id:'32-19-4', text:'level 3-32-19-4'} +, {id:'32-19-5', text:'level 3-32-19-5'} +, {id:'32-19-6', text:'level 3-32-19-6'} +, {id:'32-19-7', text:'level 3-32-19-7'} +, {id:'32-19-8', text:'level 3-32-19-8'} +, {id:'32-19-9', text:'level 3-32-19-9'} +]} +]} +,{id:'33-20-10', text:'level 1-33', item:[ + {id:'33-0-10', text:'level 2-33-0', item:[ + {id:'33-0-0', text:'level 3-33-0-0'} +, {id:'33-0-1', text:'level 3-33-0-1'} +, {id:'33-0-2', text:'level 3-33-0-2'} +, {id:'33-0-3', text:'level 3-33-0-3'} +, {id:'33-0-4', text:'level 3-33-0-4'} +, {id:'33-0-5', text:'level 3-33-0-5'} +, {id:'33-0-6', text:'level 3-33-0-6'} +, {id:'33-0-7', text:'level 3-33-0-7'} +, {id:'33-0-8', text:'level 3-33-0-8'} +, {id:'33-0-9', text:'level 3-33-0-9'} +]} +, {id:'33-1-10', text:'level 2-33-1', item:[ + {id:'33-1-0', text:'level 3-33-1-0'} +, {id:'33-1-1', text:'level 3-33-1-1'} +, {id:'33-1-2', text:'level 3-33-1-2'} +, {id:'33-1-3', text:'level 3-33-1-3'} +, {id:'33-1-4', text:'level 3-33-1-4'} +, {id:'33-1-5', text:'level 3-33-1-5'} +, {id:'33-1-6', text:'level 3-33-1-6'} +, {id:'33-1-7', text:'level 3-33-1-7'} +, {id:'33-1-8', text:'level 3-33-1-8'} +, {id:'33-1-9', text:'level 3-33-1-9'} +]} +, {id:'33-2-10', text:'level 2-33-2', item:[ + {id:'33-2-0', text:'level 3-33-2-0'} +, {id:'33-2-1', text:'level 3-33-2-1'} +, {id:'33-2-2', text:'level 3-33-2-2'} +, {id:'33-2-3', text:'level 3-33-2-3'} +, {id:'33-2-4', text:'level 3-33-2-4'} +, {id:'33-2-5', text:'level 3-33-2-5'} +, {id:'33-2-6', text:'level 3-33-2-6'} +, {id:'33-2-7', text:'level 3-33-2-7'} +, {id:'33-2-8', text:'level 3-33-2-8'} +, {id:'33-2-9', text:'level 3-33-2-9'} +]} +, {id:'33-3-10', text:'level 2-33-3', item:[ + {id:'33-3-0', text:'level 3-33-3-0'} +, {id:'33-3-1', text:'level 3-33-3-1'} +, {id:'33-3-2', text:'level 3-33-3-2'} +, {id:'33-3-3', text:'level 3-33-3-3'} +, {id:'33-3-4', text:'level 3-33-3-4'} +, {id:'33-3-5', text:'level 3-33-3-5'} +, {id:'33-3-6', text:'level 3-33-3-6'} +, {id:'33-3-7', text:'level 3-33-3-7'} +, {id:'33-3-8', text:'level 3-33-3-8'} +, {id:'33-3-9', text:'level 3-33-3-9'} +]} +, {id:'33-4-10', text:'level 2-33-4', item:[ + {id:'33-4-0', text:'level 3-33-4-0'} +, {id:'33-4-1', text:'level 3-33-4-1'} +, {id:'33-4-2', text:'level 3-33-4-2'} +, {id:'33-4-3', text:'level 3-33-4-3'} +, {id:'33-4-4', text:'level 3-33-4-4'} +, {id:'33-4-5', text:'level 3-33-4-5'} +, {id:'33-4-6', text:'level 3-33-4-6'} +, {id:'33-4-7', text:'level 3-33-4-7'} +, {id:'33-4-8', text:'level 3-33-4-8'} +, {id:'33-4-9', text:'level 3-33-4-9'} +]} +, {id:'33-5-10', text:'level 2-33-5', item:[ + {id:'33-5-0', text:'level 3-33-5-0'} +, {id:'33-5-1', text:'level 3-33-5-1'} +, {id:'33-5-2', text:'level 3-33-5-2'} +, {id:'33-5-3', text:'level 3-33-5-3'} +, {id:'33-5-4', text:'level 3-33-5-4'} +, {id:'33-5-5', text:'level 3-33-5-5'} +, {id:'33-5-6', text:'level 3-33-5-6'} +, {id:'33-5-7', text:'level 3-33-5-7'} +, {id:'33-5-8', text:'level 3-33-5-8'} +, {id:'33-5-9', text:'level 3-33-5-9'} +]} +, {id:'33-6-10', text:'level 2-33-6', item:[ + {id:'33-6-0', text:'level 3-33-6-0'} +, {id:'33-6-1', text:'level 3-33-6-1'} +, {id:'33-6-2', text:'level 3-33-6-2'} +, {id:'33-6-3', text:'level 3-33-6-3'} +, {id:'33-6-4', text:'level 3-33-6-4'} +, {id:'33-6-5', text:'level 3-33-6-5'} +, {id:'33-6-6', text:'level 3-33-6-6'} +, {id:'33-6-7', text:'level 3-33-6-7'} +, {id:'33-6-8', text:'level 3-33-6-8'} +, {id:'33-6-9', text:'level 3-33-6-9'} +]} +, {id:'33-7-10', text:'level 2-33-7', item:[ + {id:'33-7-0', text:'level 3-33-7-0'} +, {id:'33-7-1', text:'level 3-33-7-1'} +, {id:'33-7-2', text:'level 3-33-7-2'} +, {id:'33-7-3', text:'level 3-33-7-3'} +, {id:'33-7-4', text:'level 3-33-7-4'} +, {id:'33-7-5', text:'level 3-33-7-5'} +, {id:'33-7-6', text:'level 3-33-7-6'} +, {id:'33-7-7', text:'level 3-33-7-7'} +, {id:'33-7-8', text:'level 3-33-7-8'} +, {id:'33-7-9', text:'level 3-33-7-9'} +]} +, {id:'33-8-10', text:'level 2-33-8', item:[ + {id:'33-8-0', text:'level 3-33-8-0'} +, {id:'33-8-1', text:'level 3-33-8-1'} +, {id:'33-8-2', text:'level 3-33-8-2'} +, {id:'33-8-3', text:'level 3-33-8-3'} +, {id:'33-8-4', text:'level 3-33-8-4'} +, {id:'33-8-5', text:'level 3-33-8-5'} +, {id:'33-8-6', text:'level 3-33-8-6'} +, {id:'33-8-7', text:'level 3-33-8-7'} +, {id:'33-8-8', text:'level 3-33-8-8'} +, {id:'33-8-9', text:'level 3-33-8-9'} +]} +, {id:'33-9-10', text:'level 2-33-9', item:[ + {id:'33-9-0', text:'level 3-33-9-0'} +, {id:'33-9-1', text:'level 3-33-9-1'} +, {id:'33-9-2', text:'level 3-33-9-2'} +, {id:'33-9-3', text:'level 3-33-9-3'} +, {id:'33-9-4', text:'level 3-33-9-4'} +, {id:'33-9-5', text:'level 3-33-9-5'} +, {id:'33-9-6', text:'level 3-33-9-6'} +, {id:'33-9-7', text:'level 3-33-9-7'} +, {id:'33-9-8', text:'level 3-33-9-8'} +, {id:'33-9-9', text:'level 3-33-9-9'} +]} +, {id:'33-10-10', text:'level 2-33-10', item:[ + {id:'33-10-0', text:'level 3-33-10-0'} +, {id:'33-10-1', text:'level 3-33-10-1'} +, {id:'33-10-2', text:'level 3-33-10-2'} +, {id:'33-10-3', text:'level 3-33-10-3'} +, {id:'33-10-4', text:'level 3-33-10-4'} +, {id:'33-10-5', text:'level 3-33-10-5'} +, {id:'33-10-6', text:'level 3-33-10-6'} +, {id:'33-10-7', text:'level 3-33-10-7'} +, {id:'33-10-8', text:'level 3-33-10-8'} +, {id:'33-10-9', text:'level 3-33-10-9'} +]} +, {id:'33-11-10', text:'level 2-33-11', item:[ + {id:'33-11-0', text:'level 3-33-11-0'} +, {id:'33-11-1', text:'level 3-33-11-1'} +, {id:'33-11-2', text:'level 3-33-11-2'} +, {id:'33-11-3', text:'level 3-33-11-3'} +, {id:'33-11-4', text:'level 3-33-11-4'} +, {id:'33-11-5', text:'level 3-33-11-5'} +, {id:'33-11-6', text:'level 3-33-11-6'} +, {id:'33-11-7', text:'level 3-33-11-7'} +, {id:'33-11-8', text:'level 3-33-11-8'} +, {id:'33-11-9', text:'level 3-33-11-9'} +]} +, {id:'33-12-10', text:'level 2-33-12', item:[ + {id:'33-12-0', text:'level 3-33-12-0'} +, {id:'33-12-1', text:'level 3-33-12-1'} +, {id:'33-12-2', text:'level 3-33-12-2'} +, {id:'33-12-3', text:'level 3-33-12-3'} +, {id:'33-12-4', text:'level 3-33-12-4'} +, {id:'33-12-5', text:'level 3-33-12-5'} +, {id:'33-12-6', text:'level 3-33-12-6'} +, {id:'33-12-7', text:'level 3-33-12-7'} +, {id:'33-12-8', text:'level 3-33-12-8'} +, {id:'33-12-9', text:'level 3-33-12-9'} +]} +, {id:'33-13-10', text:'level 2-33-13', item:[ + {id:'33-13-0', text:'level 3-33-13-0'} +, {id:'33-13-1', text:'level 3-33-13-1'} +, {id:'33-13-2', text:'level 3-33-13-2'} +, {id:'33-13-3', text:'level 3-33-13-3'} +, {id:'33-13-4', text:'level 3-33-13-4'} +, {id:'33-13-5', text:'level 3-33-13-5'} +, {id:'33-13-6', text:'level 3-33-13-6'} +, {id:'33-13-7', text:'level 3-33-13-7'} +, {id:'33-13-8', text:'level 3-33-13-8'} +, {id:'33-13-9', text:'level 3-33-13-9'} +]} +, {id:'33-14-10', text:'level 2-33-14', item:[ + {id:'33-14-0', text:'level 3-33-14-0'} +, {id:'33-14-1', text:'level 3-33-14-1'} +, {id:'33-14-2', text:'level 3-33-14-2'} +, {id:'33-14-3', text:'level 3-33-14-3'} +, {id:'33-14-4', text:'level 3-33-14-4'} +, {id:'33-14-5', text:'level 3-33-14-5'} +, {id:'33-14-6', text:'level 3-33-14-6'} +, {id:'33-14-7', text:'level 3-33-14-7'} +, {id:'33-14-8', text:'level 3-33-14-8'} +, {id:'33-14-9', text:'level 3-33-14-9'} +]} +, {id:'33-15-10', text:'level 2-33-15', item:[ + {id:'33-15-0', text:'level 3-33-15-0'} +, {id:'33-15-1', text:'level 3-33-15-1'} +, {id:'33-15-2', text:'level 3-33-15-2'} +, {id:'33-15-3', text:'level 3-33-15-3'} +, {id:'33-15-4', text:'level 3-33-15-4'} +, {id:'33-15-5', text:'level 3-33-15-5'} +, {id:'33-15-6', text:'level 3-33-15-6'} +, {id:'33-15-7', text:'level 3-33-15-7'} +, {id:'33-15-8', text:'level 3-33-15-8'} +, {id:'33-15-9', text:'level 3-33-15-9'} +]} +, {id:'33-16-10', text:'level 2-33-16', item:[ + {id:'33-16-0', text:'level 3-33-16-0'} +, {id:'33-16-1', text:'level 3-33-16-1'} +, {id:'33-16-2', text:'level 3-33-16-2'} +, {id:'33-16-3', text:'level 3-33-16-3'} +, {id:'33-16-4', text:'level 3-33-16-4'} +, {id:'33-16-5', text:'level 3-33-16-5'} +, {id:'33-16-6', text:'level 3-33-16-6'} +, {id:'33-16-7', text:'level 3-33-16-7'} +, {id:'33-16-8', text:'level 3-33-16-8'} +, {id:'33-16-9', text:'level 3-33-16-9'} +]} +, {id:'33-17-10', text:'level 2-33-17', item:[ + {id:'33-17-0', text:'level 3-33-17-0'} +, {id:'33-17-1', text:'level 3-33-17-1'} +, {id:'33-17-2', text:'level 3-33-17-2'} +, {id:'33-17-3', text:'level 3-33-17-3'} +, {id:'33-17-4', text:'level 3-33-17-4'} +, {id:'33-17-5', text:'level 3-33-17-5'} +, {id:'33-17-6', text:'level 3-33-17-6'} +, {id:'33-17-7', text:'level 3-33-17-7'} +, {id:'33-17-8', text:'level 3-33-17-8'} +, {id:'33-17-9', text:'level 3-33-17-9'} +]} +, {id:'33-18-10', text:'level 2-33-18', item:[ + {id:'33-18-0', text:'level 3-33-18-0'} +, {id:'33-18-1', text:'level 3-33-18-1'} +, {id:'33-18-2', text:'level 3-33-18-2'} +, {id:'33-18-3', text:'level 3-33-18-3'} +, {id:'33-18-4', text:'level 3-33-18-4'} +, {id:'33-18-5', text:'level 3-33-18-5'} +, {id:'33-18-6', text:'level 3-33-18-6'} +, {id:'33-18-7', text:'level 3-33-18-7'} +, {id:'33-18-8', text:'level 3-33-18-8'} +, {id:'33-18-9', text:'level 3-33-18-9'} +]} +, {id:'33-19-10', text:'level 2-33-19', item:[ + {id:'33-19-0', text:'level 3-33-19-0'} +, {id:'33-19-1', text:'level 3-33-19-1'} +, {id:'33-19-2', text:'level 3-33-19-2'} +, {id:'33-19-3', text:'level 3-33-19-3'} +, {id:'33-19-4', text:'level 3-33-19-4'} +, {id:'33-19-5', text:'level 3-33-19-5'} +, {id:'33-19-6', text:'level 3-33-19-6'} +, {id:'33-19-7', text:'level 3-33-19-7'} +, {id:'33-19-8', text:'level 3-33-19-8'} +, {id:'33-19-9', text:'level 3-33-19-9'} +]} +]} +,{id:'34-20-10', text:'level 1-34', item:[ + {id:'34-0-10', text:'level 2-34-0', item:[ + {id:'34-0-0', text:'level 3-34-0-0'} +, {id:'34-0-1', text:'level 3-34-0-1'} +, {id:'34-0-2', text:'level 3-34-0-2'} +, {id:'34-0-3', text:'level 3-34-0-3'} +, {id:'34-0-4', text:'level 3-34-0-4'} +, {id:'34-0-5', text:'level 3-34-0-5'} +, {id:'34-0-6', text:'level 3-34-0-6'} +, {id:'34-0-7', text:'level 3-34-0-7'} +, {id:'34-0-8', text:'level 3-34-0-8'} +, {id:'34-0-9', text:'level 3-34-0-9'} +]} +, {id:'34-1-10', text:'level 2-34-1', item:[ + {id:'34-1-0', text:'level 3-34-1-0'} +, {id:'34-1-1', text:'level 3-34-1-1'} +, {id:'34-1-2', text:'level 3-34-1-2'} +, {id:'34-1-3', text:'level 3-34-1-3'} +, {id:'34-1-4', text:'level 3-34-1-4'} +, {id:'34-1-5', text:'level 3-34-1-5'} +, {id:'34-1-6', text:'level 3-34-1-6'} +, {id:'34-1-7', text:'level 3-34-1-7'} +, {id:'34-1-8', text:'level 3-34-1-8'} +, {id:'34-1-9', text:'level 3-34-1-9'} +]} +, {id:'34-2-10', text:'level 2-34-2', item:[ + {id:'34-2-0', text:'level 3-34-2-0'} +, {id:'34-2-1', text:'level 3-34-2-1'} +, {id:'34-2-2', text:'level 3-34-2-2'} +, {id:'34-2-3', text:'level 3-34-2-3'} +, {id:'34-2-4', text:'level 3-34-2-4'} +, {id:'34-2-5', text:'level 3-34-2-5'} +, {id:'34-2-6', text:'level 3-34-2-6'} +, {id:'34-2-7', text:'level 3-34-2-7'} +, {id:'34-2-8', text:'level 3-34-2-8'} +, {id:'34-2-9', text:'level 3-34-2-9'} +]} +, {id:'34-3-10', text:'level 2-34-3', item:[ + {id:'34-3-0', text:'level 3-34-3-0'} +, {id:'34-3-1', text:'level 3-34-3-1'} +, {id:'34-3-2', text:'level 3-34-3-2'} +, {id:'34-3-3', text:'level 3-34-3-3'} +, {id:'34-3-4', text:'level 3-34-3-4'} +, {id:'34-3-5', text:'level 3-34-3-5'} +, {id:'34-3-6', text:'level 3-34-3-6'} +, {id:'34-3-7', text:'level 3-34-3-7'} +, {id:'34-3-8', text:'level 3-34-3-8'} +, {id:'34-3-9', text:'level 3-34-3-9'} +]} +, {id:'34-4-10', text:'level 2-34-4', item:[ + {id:'34-4-0', text:'level 3-34-4-0'} +, {id:'34-4-1', text:'level 3-34-4-1'} +, {id:'34-4-2', text:'level 3-34-4-2'} +, {id:'34-4-3', text:'level 3-34-4-3'} +, {id:'34-4-4', text:'level 3-34-4-4'} +, {id:'34-4-5', text:'level 3-34-4-5'} +, {id:'34-4-6', text:'level 3-34-4-6'} +, {id:'34-4-7', text:'level 3-34-4-7'} +, {id:'34-4-8', text:'level 3-34-4-8'} +, {id:'34-4-9', text:'level 3-34-4-9'} +]} +, {id:'34-5-10', text:'level 2-34-5', item:[ + {id:'34-5-0', text:'level 3-34-5-0'} +, {id:'34-5-1', text:'level 3-34-5-1'} +, {id:'34-5-2', text:'level 3-34-5-2'} +, {id:'34-5-3', text:'level 3-34-5-3'} +, {id:'34-5-4', text:'level 3-34-5-4'} +, {id:'34-5-5', text:'level 3-34-5-5'} +, {id:'34-5-6', text:'level 3-34-5-6'} +, {id:'34-5-7', text:'level 3-34-5-7'} +, {id:'34-5-8', text:'level 3-34-5-8'} +, {id:'34-5-9', text:'level 3-34-5-9'} +]} +, {id:'34-6-10', text:'level 2-34-6', item:[ + {id:'34-6-0', text:'level 3-34-6-0'} +, {id:'34-6-1', text:'level 3-34-6-1'} +, {id:'34-6-2', text:'level 3-34-6-2'} +, {id:'34-6-3', text:'level 3-34-6-3'} +, {id:'34-6-4', text:'level 3-34-6-4'} +, {id:'34-6-5', text:'level 3-34-6-5'} +, {id:'34-6-6', text:'level 3-34-6-6'} +, {id:'34-6-7', text:'level 3-34-6-7'} +, {id:'34-6-8', text:'level 3-34-6-8'} +, {id:'34-6-9', text:'level 3-34-6-9'} +]} +, {id:'34-7-10', text:'level 2-34-7', item:[ + {id:'34-7-0', text:'level 3-34-7-0'} +, {id:'34-7-1', text:'level 3-34-7-1'} +, {id:'34-7-2', text:'level 3-34-7-2'} +, {id:'34-7-3', text:'level 3-34-7-3'} +, {id:'34-7-4', text:'level 3-34-7-4'} +, {id:'34-7-5', text:'level 3-34-7-5'} +, {id:'34-7-6', text:'level 3-34-7-6'} +, {id:'34-7-7', text:'level 3-34-7-7'} +, {id:'34-7-8', text:'level 3-34-7-8'} +, {id:'34-7-9', text:'level 3-34-7-9'} +]} +, {id:'34-8-10', text:'level 2-34-8', item:[ + {id:'34-8-0', text:'level 3-34-8-0'} +, {id:'34-8-1', text:'level 3-34-8-1'} +, {id:'34-8-2', text:'level 3-34-8-2'} +, {id:'34-8-3', text:'level 3-34-8-3'} +, {id:'34-8-4', text:'level 3-34-8-4'} +, {id:'34-8-5', text:'level 3-34-8-5'} +, {id:'34-8-6', text:'level 3-34-8-6'} +, {id:'34-8-7', text:'level 3-34-8-7'} +, {id:'34-8-8', text:'level 3-34-8-8'} +, {id:'34-8-9', text:'level 3-34-8-9'} +]} +, {id:'34-9-10', text:'level 2-34-9', item:[ + {id:'34-9-0', text:'level 3-34-9-0'} +, {id:'34-9-1', text:'level 3-34-9-1'} +, {id:'34-9-2', text:'level 3-34-9-2'} +, {id:'34-9-3', text:'level 3-34-9-3'} +, {id:'34-9-4', text:'level 3-34-9-4'} +, {id:'34-9-5', text:'level 3-34-9-5'} +, {id:'34-9-6', text:'level 3-34-9-6'} +, {id:'34-9-7', text:'level 3-34-9-7'} +, {id:'34-9-8', text:'level 3-34-9-8'} +, {id:'34-9-9', text:'level 3-34-9-9'} +]} +, {id:'34-10-10', text:'level 2-34-10', item:[ + {id:'34-10-0', text:'level 3-34-10-0'} +, {id:'34-10-1', text:'level 3-34-10-1'} +, {id:'34-10-2', text:'level 3-34-10-2'} +, {id:'34-10-3', text:'level 3-34-10-3'} +, {id:'34-10-4', text:'level 3-34-10-4'} +, {id:'34-10-5', text:'level 3-34-10-5'} +, {id:'34-10-6', text:'level 3-34-10-6'} +, {id:'34-10-7', text:'level 3-34-10-7'} +, {id:'34-10-8', text:'level 3-34-10-8'} +, {id:'34-10-9', text:'level 3-34-10-9'} +]} +, {id:'34-11-10', text:'level 2-34-11', item:[ + {id:'34-11-0', text:'level 3-34-11-0'} +, {id:'34-11-1', text:'level 3-34-11-1'} +, {id:'34-11-2', text:'level 3-34-11-2'} +, {id:'34-11-3', text:'level 3-34-11-3'} +, {id:'34-11-4', text:'level 3-34-11-4'} +, {id:'34-11-5', text:'level 3-34-11-5'} +, {id:'34-11-6', text:'level 3-34-11-6'} +, {id:'34-11-7', text:'level 3-34-11-7'} +, {id:'34-11-8', text:'level 3-34-11-8'} +, {id:'34-11-9', text:'level 3-34-11-9'} +]} +, {id:'34-12-10', text:'level 2-34-12', item:[ + {id:'34-12-0', text:'level 3-34-12-0'} +, {id:'34-12-1', text:'level 3-34-12-1'} +, {id:'34-12-2', text:'level 3-34-12-2'} +, {id:'34-12-3', text:'level 3-34-12-3'} +, {id:'34-12-4', text:'level 3-34-12-4'} +, {id:'34-12-5', text:'level 3-34-12-5'} +, {id:'34-12-6', text:'level 3-34-12-6'} +, {id:'34-12-7', text:'level 3-34-12-7'} +, {id:'34-12-8', text:'level 3-34-12-8'} +, {id:'34-12-9', text:'level 3-34-12-9'} +]} +, {id:'34-13-10', text:'level 2-34-13', item:[ + {id:'34-13-0', text:'level 3-34-13-0'} +, {id:'34-13-1', text:'level 3-34-13-1'} +, {id:'34-13-2', text:'level 3-34-13-2'} +, {id:'34-13-3', text:'level 3-34-13-3'} +, {id:'34-13-4', text:'level 3-34-13-4'} +, {id:'34-13-5', text:'level 3-34-13-5'} +, {id:'34-13-6', text:'level 3-34-13-6'} +, {id:'34-13-7', text:'level 3-34-13-7'} +, {id:'34-13-8', text:'level 3-34-13-8'} +, {id:'34-13-9', text:'level 3-34-13-9'} +]} +, {id:'34-14-10', text:'level 2-34-14', item:[ + {id:'34-14-0', text:'level 3-34-14-0'} +, {id:'34-14-1', text:'level 3-34-14-1'} +, {id:'34-14-2', text:'level 3-34-14-2'} +, {id:'34-14-3', text:'level 3-34-14-3'} +, {id:'34-14-4', text:'level 3-34-14-4'} +, {id:'34-14-5', text:'level 3-34-14-5'} +, {id:'34-14-6', text:'level 3-34-14-6'} +, {id:'34-14-7', text:'level 3-34-14-7'} +, {id:'34-14-8', text:'level 3-34-14-8'} +, {id:'34-14-9', text:'level 3-34-14-9'} +]} +, {id:'34-15-10', text:'level 2-34-15', item:[ + {id:'34-15-0', text:'level 3-34-15-0'} +, {id:'34-15-1', text:'level 3-34-15-1'} +, {id:'34-15-2', text:'level 3-34-15-2'} +, {id:'34-15-3', text:'level 3-34-15-3'} +, {id:'34-15-4', text:'level 3-34-15-4'} +, {id:'34-15-5', text:'level 3-34-15-5'} +, {id:'34-15-6', text:'level 3-34-15-6'} +, {id:'34-15-7', text:'level 3-34-15-7'} +, {id:'34-15-8', text:'level 3-34-15-8'} +, {id:'34-15-9', text:'level 3-34-15-9'} +]} +, {id:'34-16-10', text:'level 2-34-16', item:[ + {id:'34-16-0', text:'level 3-34-16-0'} +, {id:'34-16-1', text:'level 3-34-16-1'} +, {id:'34-16-2', text:'level 3-34-16-2'} +, {id:'34-16-3', text:'level 3-34-16-3'} +, {id:'34-16-4', text:'level 3-34-16-4'} +, {id:'34-16-5', text:'level 3-34-16-5'} +, {id:'34-16-6', text:'level 3-34-16-6'} +, {id:'34-16-7', text:'level 3-34-16-7'} +, {id:'34-16-8', text:'level 3-34-16-8'} +, {id:'34-16-9', text:'level 3-34-16-9'} +]} +, {id:'34-17-10', text:'level 2-34-17', item:[ + {id:'34-17-0', text:'level 3-34-17-0'} +, {id:'34-17-1', text:'level 3-34-17-1'} +, {id:'34-17-2', text:'level 3-34-17-2'} +, {id:'34-17-3', text:'level 3-34-17-3'} +, {id:'34-17-4', text:'level 3-34-17-4'} +, {id:'34-17-5', text:'level 3-34-17-5'} +, {id:'34-17-6', text:'level 3-34-17-6'} +, {id:'34-17-7', text:'level 3-34-17-7'} +, {id:'34-17-8', text:'level 3-34-17-8'} +, {id:'34-17-9', text:'level 3-34-17-9'} +]} +, {id:'34-18-10', text:'level 2-34-18', item:[ + {id:'34-18-0', text:'level 3-34-18-0'} +, {id:'34-18-1', text:'level 3-34-18-1'} +, {id:'34-18-2', text:'level 3-34-18-2'} +, {id:'34-18-3', text:'level 3-34-18-3'} +, {id:'34-18-4', text:'level 3-34-18-4'} +, {id:'34-18-5', text:'level 3-34-18-5'} +, {id:'34-18-6', text:'level 3-34-18-6'} +, {id:'34-18-7', text:'level 3-34-18-7'} +, {id:'34-18-8', text:'level 3-34-18-8'} +, {id:'34-18-9', text:'level 3-34-18-9'} +]} +, {id:'34-19-10', text:'level 2-34-19', item:[ + {id:'34-19-0', text:'level 3-34-19-0'} +, {id:'34-19-1', text:'level 3-34-19-1'} +, {id:'34-19-2', text:'level 3-34-19-2'} +, {id:'34-19-3', text:'level 3-34-19-3'} +, {id:'34-19-4', text:'level 3-34-19-4'} +, {id:'34-19-5', text:'level 3-34-19-5'} +, {id:'34-19-6', text:'level 3-34-19-6'} +, {id:'34-19-7', text:'level 3-34-19-7'} +, {id:'34-19-8', text:'level 3-34-19-8'} +, {id:'34-19-9', text:'level 3-34-19-9'} +]} +]} +,{id:'35-20-10', text:'level 1-35', item:[ + {id:'35-0-10', text:'level 2-35-0', item:[ + {id:'35-0-0', text:'level 3-35-0-0'} +, {id:'35-0-1', text:'level 3-35-0-1'} +, {id:'35-0-2', text:'level 3-35-0-2'} +, {id:'35-0-3', text:'level 3-35-0-3'} +, {id:'35-0-4', text:'level 3-35-0-4'} +, {id:'35-0-5', text:'level 3-35-0-5'} +, {id:'35-0-6', text:'level 3-35-0-6'} +, {id:'35-0-7', text:'level 3-35-0-7'} +, {id:'35-0-8', text:'level 3-35-0-8'} +, {id:'35-0-9', text:'level 3-35-0-9'} +]} +, {id:'35-1-10', text:'level 2-35-1', item:[ + {id:'35-1-0', text:'level 3-35-1-0'} +, {id:'35-1-1', text:'level 3-35-1-1'} +, {id:'35-1-2', text:'level 3-35-1-2'} +, {id:'35-1-3', text:'level 3-35-1-3'} +, {id:'35-1-4', text:'level 3-35-1-4'} +, {id:'35-1-5', text:'level 3-35-1-5'} +, {id:'35-1-6', text:'level 3-35-1-6'} +, {id:'35-1-7', text:'level 3-35-1-7'} +, {id:'35-1-8', text:'level 3-35-1-8'} +, {id:'35-1-9', text:'level 3-35-1-9'} +]} +, {id:'35-2-10', text:'level 2-35-2', item:[ + {id:'35-2-0', text:'level 3-35-2-0'} +, {id:'35-2-1', text:'level 3-35-2-1'} +, {id:'35-2-2', text:'level 3-35-2-2'} +, {id:'35-2-3', text:'level 3-35-2-3'} +, {id:'35-2-4', text:'level 3-35-2-4'} +, {id:'35-2-5', text:'level 3-35-2-5'} +, {id:'35-2-6', text:'level 3-35-2-6'} +, {id:'35-2-7', text:'level 3-35-2-7'} +, {id:'35-2-8', text:'level 3-35-2-8'} +, {id:'35-2-9', text:'level 3-35-2-9'} +]} +, {id:'35-3-10', text:'level 2-35-3', item:[ + {id:'35-3-0', text:'level 3-35-3-0'} +, {id:'35-3-1', text:'level 3-35-3-1'} +, {id:'35-3-2', text:'level 3-35-3-2'} +, {id:'35-3-3', text:'level 3-35-3-3'} +, {id:'35-3-4', text:'level 3-35-3-4'} +, {id:'35-3-5', text:'level 3-35-3-5'} +, {id:'35-3-6', text:'level 3-35-3-6'} +, {id:'35-3-7', text:'level 3-35-3-7'} +, {id:'35-3-8', text:'level 3-35-3-8'} +, {id:'35-3-9', text:'level 3-35-3-9'} +]} +, {id:'35-4-10', text:'level 2-35-4', item:[ + {id:'35-4-0', text:'level 3-35-4-0'} +, {id:'35-4-1', text:'level 3-35-4-1'} +, {id:'35-4-2', text:'level 3-35-4-2'} +, {id:'35-4-3', text:'level 3-35-4-3'} +, {id:'35-4-4', text:'level 3-35-4-4'} +, {id:'35-4-5', text:'level 3-35-4-5'} +, {id:'35-4-6', text:'level 3-35-4-6'} +, {id:'35-4-7', text:'level 3-35-4-7'} +, {id:'35-4-8', text:'level 3-35-4-8'} +, {id:'35-4-9', text:'level 3-35-4-9'} +]} +, {id:'35-5-10', text:'level 2-35-5', item:[ + {id:'35-5-0', text:'level 3-35-5-0'} +, {id:'35-5-1', text:'level 3-35-5-1'} +, {id:'35-5-2', text:'level 3-35-5-2'} +, {id:'35-5-3', text:'level 3-35-5-3'} +, {id:'35-5-4', text:'level 3-35-5-4'} +, {id:'35-5-5', text:'level 3-35-5-5'} +, {id:'35-5-6', text:'level 3-35-5-6'} +, {id:'35-5-7', text:'level 3-35-5-7'} +, {id:'35-5-8', text:'level 3-35-5-8'} +, {id:'35-5-9', text:'level 3-35-5-9'} +]} +, {id:'35-6-10', text:'level 2-35-6', item:[ + {id:'35-6-0', text:'level 3-35-6-0'} +, {id:'35-6-1', text:'level 3-35-6-1'} +, {id:'35-6-2', text:'level 3-35-6-2'} +, {id:'35-6-3', text:'level 3-35-6-3'} +, {id:'35-6-4', text:'level 3-35-6-4'} +, {id:'35-6-5', text:'level 3-35-6-5'} +, {id:'35-6-6', text:'level 3-35-6-6'} +, {id:'35-6-7', text:'level 3-35-6-7'} +, {id:'35-6-8', text:'level 3-35-6-8'} +, {id:'35-6-9', text:'level 3-35-6-9'} +]} +, {id:'35-7-10', text:'level 2-35-7', item:[ + {id:'35-7-0', text:'level 3-35-7-0'} +, {id:'35-7-1', text:'level 3-35-7-1'} +, {id:'35-7-2', text:'level 3-35-7-2'} +, {id:'35-7-3', text:'level 3-35-7-3'} +, {id:'35-7-4', text:'level 3-35-7-4'} +, {id:'35-7-5', text:'level 3-35-7-5'} +, {id:'35-7-6', text:'level 3-35-7-6'} +, {id:'35-7-7', text:'level 3-35-7-7'} +, {id:'35-7-8', text:'level 3-35-7-8'} +, {id:'35-7-9', text:'level 3-35-7-9'} +]} +, {id:'35-8-10', text:'level 2-35-8', item:[ + {id:'35-8-0', text:'level 3-35-8-0'} +, {id:'35-8-1', text:'level 3-35-8-1'} +, {id:'35-8-2', text:'level 3-35-8-2'} +, {id:'35-8-3', text:'level 3-35-8-3'} +, {id:'35-8-4', text:'level 3-35-8-4'} +, {id:'35-8-5', text:'level 3-35-8-5'} +, {id:'35-8-6', text:'level 3-35-8-6'} +, {id:'35-8-7', text:'level 3-35-8-7'} +, {id:'35-8-8', text:'level 3-35-8-8'} +, {id:'35-8-9', text:'level 3-35-8-9'} +]} +, {id:'35-9-10', text:'level 2-35-9', item:[ + {id:'35-9-0', text:'level 3-35-9-0'} +, {id:'35-9-1', text:'level 3-35-9-1'} +, {id:'35-9-2', text:'level 3-35-9-2'} +, {id:'35-9-3', text:'level 3-35-9-3'} +, {id:'35-9-4', text:'level 3-35-9-4'} +, {id:'35-9-5', text:'level 3-35-9-5'} +, {id:'35-9-6', text:'level 3-35-9-6'} +, {id:'35-9-7', text:'level 3-35-9-7'} +, {id:'35-9-8', text:'level 3-35-9-8'} +, {id:'35-9-9', text:'level 3-35-9-9'} +]} +, {id:'35-10-10', text:'level 2-35-10', item:[ + {id:'35-10-0', text:'level 3-35-10-0'} +, {id:'35-10-1', text:'level 3-35-10-1'} +, {id:'35-10-2', text:'level 3-35-10-2'} +, {id:'35-10-3', text:'level 3-35-10-3'} +, {id:'35-10-4', text:'level 3-35-10-4'} +, {id:'35-10-5', text:'level 3-35-10-5'} +, {id:'35-10-6', text:'level 3-35-10-6'} +, {id:'35-10-7', text:'level 3-35-10-7'} +, {id:'35-10-8', text:'level 3-35-10-8'} +, {id:'35-10-9', text:'level 3-35-10-9'} +]} +, {id:'35-11-10', text:'level 2-35-11', item:[ + {id:'35-11-0', text:'level 3-35-11-0'} +, {id:'35-11-1', text:'level 3-35-11-1'} +, {id:'35-11-2', text:'level 3-35-11-2'} +, {id:'35-11-3', text:'level 3-35-11-3'} +, {id:'35-11-4', text:'level 3-35-11-4'} +, {id:'35-11-5', text:'level 3-35-11-5'} +, {id:'35-11-6', text:'level 3-35-11-6'} +, {id:'35-11-7', text:'level 3-35-11-7'} +, {id:'35-11-8', text:'level 3-35-11-8'} +, {id:'35-11-9', text:'level 3-35-11-9'} +]} +, {id:'35-12-10', text:'level 2-35-12', item:[ + {id:'35-12-0', text:'level 3-35-12-0'} +, {id:'35-12-1', text:'level 3-35-12-1'} +, {id:'35-12-2', text:'level 3-35-12-2'} +, {id:'35-12-3', text:'level 3-35-12-3'} +, {id:'35-12-4', text:'level 3-35-12-4'} +, {id:'35-12-5', text:'level 3-35-12-5'} +, {id:'35-12-6', text:'level 3-35-12-6'} +, {id:'35-12-7', text:'level 3-35-12-7'} +, {id:'35-12-8', text:'level 3-35-12-8'} +, {id:'35-12-9', text:'level 3-35-12-9'} +]} +, {id:'35-13-10', text:'level 2-35-13', item:[ + {id:'35-13-0', text:'level 3-35-13-0'} +, {id:'35-13-1', text:'level 3-35-13-1'} +, {id:'35-13-2', text:'level 3-35-13-2'} +, {id:'35-13-3', text:'level 3-35-13-3'} +, {id:'35-13-4', text:'level 3-35-13-4'} +, {id:'35-13-5', text:'level 3-35-13-5'} +, {id:'35-13-6', text:'level 3-35-13-6'} +, {id:'35-13-7', text:'level 3-35-13-7'} +, {id:'35-13-8', text:'level 3-35-13-8'} +, {id:'35-13-9', text:'level 3-35-13-9'} +]} +, {id:'35-14-10', text:'level 2-35-14', item:[ + {id:'35-14-0', text:'level 3-35-14-0'} +, {id:'35-14-1', text:'level 3-35-14-1'} +, {id:'35-14-2', text:'level 3-35-14-2'} +, {id:'35-14-3', text:'level 3-35-14-3'} +, {id:'35-14-4', text:'level 3-35-14-4'} +, {id:'35-14-5', text:'level 3-35-14-5'} +, {id:'35-14-6', text:'level 3-35-14-6'} +, {id:'35-14-7', text:'level 3-35-14-7'} +, {id:'35-14-8', text:'level 3-35-14-8'} +, {id:'35-14-9', text:'level 3-35-14-9'} +]} +, {id:'35-15-10', text:'level 2-35-15', item:[ + {id:'35-15-0', text:'level 3-35-15-0'} +, {id:'35-15-1', text:'level 3-35-15-1'} +, {id:'35-15-2', text:'level 3-35-15-2'} +, {id:'35-15-3', text:'level 3-35-15-3'} +, {id:'35-15-4', text:'level 3-35-15-4'} +, {id:'35-15-5', text:'level 3-35-15-5'} +, {id:'35-15-6', text:'level 3-35-15-6'} +, {id:'35-15-7', text:'level 3-35-15-7'} +, {id:'35-15-8', text:'level 3-35-15-8'} +, {id:'35-15-9', text:'level 3-35-15-9'} +]} +, {id:'35-16-10', text:'level 2-35-16', item:[ + {id:'35-16-0', text:'level 3-35-16-0'} +, {id:'35-16-1', text:'level 3-35-16-1'} +, {id:'35-16-2', text:'level 3-35-16-2'} +, {id:'35-16-3', text:'level 3-35-16-3'} +, {id:'35-16-4', text:'level 3-35-16-4'} +, {id:'35-16-5', text:'level 3-35-16-5'} +, {id:'35-16-6', text:'level 3-35-16-6'} +, {id:'35-16-7', text:'level 3-35-16-7'} +, {id:'35-16-8', text:'level 3-35-16-8'} +, {id:'35-16-9', text:'level 3-35-16-9'} +]} +, {id:'35-17-10', text:'level 2-35-17', item:[ + {id:'35-17-0', text:'level 3-35-17-0'} +, {id:'35-17-1', text:'level 3-35-17-1'} +, {id:'35-17-2', text:'level 3-35-17-2'} +, {id:'35-17-3', text:'level 3-35-17-3'} +, {id:'35-17-4', text:'level 3-35-17-4'} +, {id:'35-17-5', text:'level 3-35-17-5'} +, {id:'35-17-6', text:'level 3-35-17-6'} +, {id:'35-17-7', text:'level 3-35-17-7'} +, {id:'35-17-8', text:'level 3-35-17-8'} +, {id:'35-17-9', text:'level 3-35-17-9'} +]} +, {id:'35-18-10', text:'level 2-35-18', item:[ + {id:'35-18-0', text:'level 3-35-18-0'} +, {id:'35-18-1', text:'level 3-35-18-1'} +, {id:'35-18-2', text:'level 3-35-18-2'} +, {id:'35-18-3', text:'level 3-35-18-3'} +, {id:'35-18-4', text:'level 3-35-18-4'} +, {id:'35-18-5', text:'level 3-35-18-5'} +, {id:'35-18-6', text:'level 3-35-18-6'} +, {id:'35-18-7', text:'level 3-35-18-7'} +, {id:'35-18-8', text:'level 3-35-18-8'} +, {id:'35-18-9', text:'level 3-35-18-9'} +]} +, {id:'35-19-10', text:'level 2-35-19', item:[ + {id:'35-19-0', text:'level 3-35-19-0'} +, {id:'35-19-1', text:'level 3-35-19-1'} +, {id:'35-19-2', text:'level 3-35-19-2'} +, {id:'35-19-3', text:'level 3-35-19-3'} +, {id:'35-19-4', text:'level 3-35-19-4'} +, {id:'35-19-5', text:'level 3-35-19-5'} +, {id:'35-19-6', text:'level 3-35-19-6'} +, {id:'35-19-7', text:'level 3-35-19-7'} +, {id:'35-19-8', text:'level 3-35-19-8'} +, {id:'35-19-9', text:'level 3-35-19-9'} +]} +]} +,{id:'36-20-10', text:'level 1-36', item:[ + {id:'36-0-10', text:'level 2-36-0', item:[ + {id:'36-0-0', text:'level 3-36-0-0'} +, {id:'36-0-1', text:'level 3-36-0-1'} +, {id:'36-0-2', text:'level 3-36-0-2'} +, {id:'36-0-3', text:'level 3-36-0-3'} +, {id:'36-0-4', text:'level 3-36-0-4'} +, {id:'36-0-5', text:'level 3-36-0-5'} +, {id:'36-0-6', text:'level 3-36-0-6'} +, {id:'36-0-7', text:'level 3-36-0-7'} +, {id:'36-0-8', text:'level 3-36-0-8'} +, {id:'36-0-9', text:'level 3-36-0-9'} +]} +, {id:'36-1-10', text:'level 2-36-1', item:[ + {id:'36-1-0', text:'level 3-36-1-0'} +, {id:'36-1-1', text:'level 3-36-1-1'} +, {id:'36-1-2', text:'level 3-36-1-2'} +, {id:'36-1-3', text:'level 3-36-1-3'} +, {id:'36-1-4', text:'level 3-36-1-4'} +, {id:'36-1-5', text:'level 3-36-1-5'} +, {id:'36-1-6', text:'level 3-36-1-6'} +, {id:'36-1-7', text:'level 3-36-1-7'} +, {id:'36-1-8', text:'level 3-36-1-8'} +, {id:'36-1-9', text:'level 3-36-1-9'} +]} +, {id:'36-2-10', text:'level 2-36-2', item:[ + {id:'36-2-0', text:'level 3-36-2-0'} +, {id:'36-2-1', text:'level 3-36-2-1'} +, {id:'36-2-2', text:'level 3-36-2-2'} +, {id:'36-2-3', text:'level 3-36-2-3'} +, {id:'36-2-4', text:'level 3-36-2-4'} +, {id:'36-2-5', text:'level 3-36-2-5'} +, {id:'36-2-6', text:'level 3-36-2-6'} +, {id:'36-2-7', text:'level 3-36-2-7'} +, {id:'36-2-8', text:'level 3-36-2-8'} +, {id:'36-2-9', text:'level 3-36-2-9'} +]} +, {id:'36-3-10', text:'level 2-36-3', item:[ + {id:'36-3-0', text:'level 3-36-3-0'} +, {id:'36-3-1', text:'level 3-36-3-1'} +, {id:'36-3-2', text:'level 3-36-3-2'} +, {id:'36-3-3', text:'level 3-36-3-3'} +, {id:'36-3-4', text:'level 3-36-3-4'} +, {id:'36-3-5', text:'level 3-36-3-5'} +, {id:'36-3-6', text:'level 3-36-3-6'} +, {id:'36-3-7', text:'level 3-36-3-7'} +, {id:'36-3-8', text:'level 3-36-3-8'} +, {id:'36-3-9', text:'level 3-36-3-9'} +]} +, {id:'36-4-10', text:'level 2-36-4', item:[ + {id:'36-4-0', text:'level 3-36-4-0'} +, {id:'36-4-1', text:'level 3-36-4-1'} +, {id:'36-4-2', text:'level 3-36-4-2'} +, {id:'36-4-3', text:'level 3-36-4-3'} +, {id:'36-4-4', text:'level 3-36-4-4'} +, {id:'36-4-5', text:'level 3-36-4-5'} +, {id:'36-4-6', text:'level 3-36-4-6'} +, {id:'36-4-7', text:'level 3-36-4-7'} +, {id:'36-4-8', text:'level 3-36-4-8'} +, {id:'36-4-9', text:'level 3-36-4-9'} +]} +, {id:'36-5-10', text:'level 2-36-5', item:[ + {id:'36-5-0', text:'level 3-36-5-0'} +, {id:'36-5-1', text:'level 3-36-5-1'} +, {id:'36-5-2', text:'level 3-36-5-2'} +, {id:'36-5-3', text:'level 3-36-5-3'} +, {id:'36-5-4', text:'level 3-36-5-4'} +, {id:'36-5-5', text:'level 3-36-5-5'} +, {id:'36-5-6', text:'level 3-36-5-6'} +, {id:'36-5-7', text:'level 3-36-5-7'} +, {id:'36-5-8', text:'level 3-36-5-8'} +, {id:'36-5-9', text:'level 3-36-5-9'} +]} +, {id:'36-6-10', text:'level 2-36-6', item:[ + {id:'36-6-0', text:'level 3-36-6-0'} +, {id:'36-6-1', text:'level 3-36-6-1'} +, {id:'36-6-2', text:'level 3-36-6-2'} +, {id:'36-6-3', text:'level 3-36-6-3'} +, {id:'36-6-4', text:'level 3-36-6-4'} +, {id:'36-6-5', text:'level 3-36-6-5'} +, {id:'36-6-6', text:'level 3-36-6-6'} +, {id:'36-6-7', text:'level 3-36-6-7'} +, {id:'36-6-8', text:'level 3-36-6-8'} +, {id:'36-6-9', text:'level 3-36-6-9'} +]} +, {id:'36-7-10', text:'level 2-36-7', item:[ + {id:'36-7-0', text:'level 3-36-7-0'} +, {id:'36-7-1', text:'level 3-36-7-1'} +, {id:'36-7-2', text:'level 3-36-7-2'} +, {id:'36-7-3', text:'level 3-36-7-3'} +, {id:'36-7-4', text:'level 3-36-7-4'} +, {id:'36-7-5', text:'level 3-36-7-5'} +, {id:'36-7-6', text:'level 3-36-7-6'} +, {id:'36-7-7', text:'level 3-36-7-7'} +, {id:'36-7-8', text:'level 3-36-7-8'} +, {id:'36-7-9', text:'level 3-36-7-9'} +]} +, {id:'36-8-10', text:'level 2-36-8', item:[ + {id:'36-8-0', text:'level 3-36-8-0'} +, {id:'36-8-1', text:'level 3-36-8-1'} +, {id:'36-8-2', text:'level 3-36-8-2'} +, {id:'36-8-3', text:'level 3-36-8-3'} +, {id:'36-8-4', text:'level 3-36-8-4'} +, {id:'36-8-5', text:'level 3-36-8-5'} +, {id:'36-8-6', text:'level 3-36-8-6'} +, {id:'36-8-7', text:'level 3-36-8-7'} +, {id:'36-8-8', text:'level 3-36-8-8'} +, {id:'36-8-9', text:'level 3-36-8-9'} +]} +, {id:'36-9-10', text:'level 2-36-9', item:[ + {id:'36-9-0', text:'level 3-36-9-0'} +, {id:'36-9-1', text:'level 3-36-9-1'} +, {id:'36-9-2', text:'level 3-36-9-2'} +, {id:'36-9-3', text:'level 3-36-9-3'} +, {id:'36-9-4', text:'level 3-36-9-4'} +, {id:'36-9-5', text:'level 3-36-9-5'} +, {id:'36-9-6', text:'level 3-36-9-6'} +, {id:'36-9-7', text:'level 3-36-9-7'} +, {id:'36-9-8', text:'level 3-36-9-8'} +, {id:'36-9-9', text:'level 3-36-9-9'} +]} +, {id:'36-10-10', text:'level 2-36-10', item:[ + {id:'36-10-0', text:'level 3-36-10-0'} +, {id:'36-10-1', text:'level 3-36-10-1'} +, {id:'36-10-2', text:'level 3-36-10-2'} +, {id:'36-10-3', text:'level 3-36-10-3'} +, {id:'36-10-4', text:'level 3-36-10-4'} +, {id:'36-10-5', text:'level 3-36-10-5'} +, {id:'36-10-6', text:'level 3-36-10-6'} +, {id:'36-10-7', text:'level 3-36-10-7'} +, {id:'36-10-8', text:'level 3-36-10-8'} +, {id:'36-10-9', text:'level 3-36-10-9'} +]} +, {id:'36-11-10', text:'level 2-36-11', item:[ + {id:'36-11-0', text:'level 3-36-11-0'} +, {id:'36-11-1', text:'level 3-36-11-1'} +, {id:'36-11-2', text:'level 3-36-11-2'} +, {id:'36-11-3', text:'level 3-36-11-3'} +, {id:'36-11-4', text:'level 3-36-11-4'} +, {id:'36-11-5', text:'level 3-36-11-5'} +, {id:'36-11-6', text:'level 3-36-11-6'} +, {id:'36-11-7', text:'level 3-36-11-7'} +, {id:'36-11-8', text:'level 3-36-11-8'} +, {id:'36-11-9', text:'level 3-36-11-9'} +]} +, {id:'36-12-10', text:'level 2-36-12', item:[ + {id:'36-12-0', text:'level 3-36-12-0'} +, {id:'36-12-1', text:'level 3-36-12-1'} +, {id:'36-12-2', text:'level 3-36-12-2'} +, {id:'36-12-3', text:'level 3-36-12-3'} +, {id:'36-12-4', text:'level 3-36-12-4'} +, {id:'36-12-5', text:'level 3-36-12-5'} +, {id:'36-12-6', text:'level 3-36-12-6'} +, {id:'36-12-7', text:'level 3-36-12-7'} +, {id:'36-12-8', text:'level 3-36-12-8'} +, {id:'36-12-9', text:'level 3-36-12-9'} +]} +, {id:'36-13-10', text:'level 2-36-13', item:[ + {id:'36-13-0', text:'level 3-36-13-0'} +, {id:'36-13-1', text:'level 3-36-13-1'} +, {id:'36-13-2', text:'level 3-36-13-2'} +, {id:'36-13-3', text:'level 3-36-13-3'} +, {id:'36-13-4', text:'level 3-36-13-4'} +, {id:'36-13-5', text:'level 3-36-13-5'} +, {id:'36-13-6', text:'level 3-36-13-6'} +, {id:'36-13-7', text:'level 3-36-13-7'} +, {id:'36-13-8', text:'level 3-36-13-8'} +, {id:'36-13-9', text:'level 3-36-13-9'} +]} +, {id:'36-14-10', text:'level 2-36-14', item:[ + {id:'36-14-0', text:'level 3-36-14-0'} +, {id:'36-14-1', text:'level 3-36-14-1'} +, {id:'36-14-2', text:'level 3-36-14-2'} +, {id:'36-14-3', text:'level 3-36-14-3'} +, {id:'36-14-4', text:'level 3-36-14-4'} +, {id:'36-14-5', text:'level 3-36-14-5'} +, {id:'36-14-6', text:'level 3-36-14-6'} +, {id:'36-14-7', text:'level 3-36-14-7'} +, {id:'36-14-8', text:'level 3-36-14-8'} +, {id:'36-14-9', text:'level 3-36-14-9'} +]} +, {id:'36-15-10', text:'level 2-36-15', item:[ + {id:'36-15-0', text:'level 3-36-15-0'} +, {id:'36-15-1', text:'level 3-36-15-1'} +, {id:'36-15-2', text:'level 3-36-15-2'} +, {id:'36-15-3', text:'level 3-36-15-3'} +, {id:'36-15-4', text:'level 3-36-15-4'} +, {id:'36-15-5', text:'level 3-36-15-5'} +, {id:'36-15-6', text:'level 3-36-15-6'} +, {id:'36-15-7', text:'level 3-36-15-7'} +, {id:'36-15-8', text:'level 3-36-15-8'} +, {id:'36-15-9', text:'level 3-36-15-9'} +]} +, {id:'36-16-10', text:'level 2-36-16', item:[ + {id:'36-16-0', text:'level 3-36-16-0'} +, {id:'36-16-1', text:'level 3-36-16-1'} +, {id:'36-16-2', text:'level 3-36-16-2'} +, {id:'36-16-3', text:'level 3-36-16-3'} +, {id:'36-16-4', text:'level 3-36-16-4'} +, {id:'36-16-5', text:'level 3-36-16-5'} +, {id:'36-16-6', text:'level 3-36-16-6'} +, {id:'36-16-7', text:'level 3-36-16-7'} +, {id:'36-16-8', text:'level 3-36-16-8'} +, {id:'36-16-9', text:'level 3-36-16-9'} +]} +, {id:'36-17-10', text:'level 2-36-17', item:[ + {id:'36-17-0', text:'level 3-36-17-0'} +, {id:'36-17-1', text:'level 3-36-17-1'} +, {id:'36-17-2', text:'level 3-36-17-2'} +, {id:'36-17-3', text:'level 3-36-17-3'} +, {id:'36-17-4', text:'level 3-36-17-4'} +, {id:'36-17-5', text:'level 3-36-17-5'} +, {id:'36-17-6', text:'level 3-36-17-6'} +, {id:'36-17-7', text:'level 3-36-17-7'} +, {id:'36-17-8', text:'level 3-36-17-8'} +, {id:'36-17-9', text:'level 3-36-17-9'} +]} +, {id:'36-18-10', text:'level 2-36-18', item:[ + {id:'36-18-0', text:'level 3-36-18-0'} +, {id:'36-18-1', text:'level 3-36-18-1'} +, {id:'36-18-2', text:'level 3-36-18-2'} +, {id:'36-18-3', text:'level 3-36-18-3'} +, {id:'36-18-4', text:'level 3-36-18-4'} +, {id:'36-18-5', text:'level 3-36-18-5'} +, {id:'36-18-6', text:'level 3-36-18-6'} +, {id:'36-18-7', text:'level 3-36-18-7'} +, {id:'36-18-8', text:'level 3-36-18-8'} +, {id:'36-18-9', text:'level 3-36-18-9'} +]} +, {id:'36-19-10', text:'level 2-36-19', item:[ + {id:'36-19-0', text:'level 3-36-19-0'} +, {id:'36-19-1', text:'level 3-36-19-1'} +, {id:'36-19-2', text:'level 3-36-19-2'} +, {id:'36-19-3', text:'level 3-36-19-3'} +, {id:'36-19-4', text:'level 3-36-19-4'} +, {id:'36-19-5', text:'level 3-36-19-5'} +, {id:'36-19-6', text:'level 3-36-19-6'} +, {id:'36-19-7', text:'level 3-36-19-7'} +, {id:'36-19-8', text:'level 3-36-19-8'} +, {id:'36-19-9', text:'level 3-36-19-9'} +]} +]} +,{id:'37-20-10', text:'level 1-37', item:[ + {id:'37-0-10', text:'level 2-37-0', item:[ + {id:'37-0-0', text:'level 3-37-0-0'} +, {id:'37-0-1', text:'level 3-37-0-1'} +, {id:'37-0-2', text:'level 3-37-0-2'} +, {id:'37-0-3', text:'level 3-37-0-3'} +, {id:'37-0-4', text:'level 3-37-0-4'} +, {id:'37-0-5', text:'level 3-37-0-5'} +, {id:'37-0-6', text:'level 3-37-0-6'} +, {id:'37-0-7', text:'level 3-37-0-7'} +, {id:'37-0-8', text:'level 3-37-0-8'} +, {id:'37-0-9', text:'level 3-37-0-9'} +]} +, {id:'37-1-10', text:'level 2-37-1', item:[ + {id:'37-1-0', text:'level 3-37-1-0'} +, {id:'37-1-1', text:'level 3-37-1-1'} +, {id:'37-1-2', text:'level 3-37-1-2'} +, {id:'37-1-3', text:'level 3-37-1-3'} +, {id:'37-1-4', text:'level 3-37-1-4'} +, {id:'37-1-5', text:'level 3-37-1-5'} +, {id:'37-1-6', text:'level 3-37-1-6'} +, {id:'37-1-7', text:'level 3-37-1-7'} +, {id:'37-1-8', text:'level 3-37-1-8'} +, {id:'37-1-9', text:'level 3-37-1-9'} +]} +, {id:'37-2-10', text:'level 2-37-2', item:[ + {id:'37-2-0', text:'level 3-37-2-0'} +, {id:'37-2-1', text:'level 3-37-2-1'} +, {id:'37-2-2', text:'level 3-37-2-2'} +, {id:'37-2-3', text:'level 3-37-2-3'} +, {id:'37-2-4', text:'level 3-37-2-4'} +, {id:'37-2-5', text:'level 3-37-2-5'} +, {id:'37-2-6', text:'level 3-37-2-6'} +, {id:'37-2-7', text:'level 3-37-2-7'} +, {id:'37-2-8', text:'level 3-37-2-8'} +, {id:'37-2-9', text:'level 3-37-2-9'} +]} +, {id:'37-3-10', text:'level 2-37-3', item:[ + {id:'37-3-0', text:'level 3-37-3-0'} +, {id:'37-3-1', text:'level 3-37-3-1'} +, {id:'37-3-2', text:'level 3-37-3-2'} +, {id:'37-3-3', text:'level 3-37-3-3'} +, {id:'37-3-4', text:'level 3-37-3-4'} +, {id:'37-3-5', text:'level 3-37-3-5'} +, {id:'37-3-6', text:'level 3-37-3-6'} +, {id:'37-3-7', text:'level 3-37-3-7'} +, {id:'37-3-8', text:'level 3-37-3-8'} +, {id:'37-3-9', text:'level 3-37-3-9'} +]} +, {id:'37-4-10', text:'level 2-37-4', item:[ + {id:'37-4-0', text:'level 3-37-4-0'} +, {id:'37-4-1', text:'level 3-37-4-1'} +, {id:'37-4-2', text:'level 3-37-4-2'} +, {id:'37-4-3', text:'level 3-37-4-3'} +, {id:'37-4-4', text:'level 3-37-4-4'} +, {id:'37-4-5', text:'level 3-37-4-5'} +, {id:'37-4-6', text:'level 3-37-4-6'} +, {id:'37-4-7', text:'level 3-37-4-7'} +, {id:'37-4-8', text:'level 3-37-4-8'} +, {id:'37-4-9', text:'level 3-37-4-9'} +]} +, {id:'37-5-10', text:'level 2-37-5', item:[ + {id:'37-5-0', text:'level 3-37-5-0'} +, {id:'37-5-1', text:'level 3-37-5-1'} +, {id:'37-5-2', text:'level 3-37-5-2'} +, {id:'37-5-3', text:'level 3-37-5-3'} +, {id:'37-5-4', text:'level 3-37-5-4'} +, {id:'37-5-5', text:'level 3-37-5-5'} +, {id:'37-5-6', text:'level 3-37-5-6'} +, {id:'37-5-7', text:'level 3-37-5-7'} +, {id:'37-5-8', text:'level 3-37-5-8'} +, {id:'37-5-9', text:'level 3-37-5-9'} +]} +, {id:'37-6-10', text:'level 2-37-6', item:[ + {id:'37-6-0', text:'level 3-37-6-0'} +, {id:'37-6-1', text:'level 3-37-6-1'} +, {id:'37-6-2', text:'level 3-37-6-2'} +, {id:'37-6-3', text:'level 3-37-6-3'} +, {id:'37-6-4', text:'level 3-37-6-4'} +, {id:'37-6-5', text:'level 3-37-6-5'} +, {id:'37-6-6', text:'level 3-37-6-6'} +, {id:'37-6-7', text:'level 3-37-6-7'} +, {id:'37-6-8', text:'level 3-37-6-8'} +, {id:'37-6-9', text:'level 3-37-6-9'} +]} +, {id:'37-7-10', text:'level 2-37-7', item:[ + {id:'37-7-0', text:'level 3-37-7-0'} +, {id:'37-7-1', text:'level 3-37-7-1'} +, {id:'37-7-2', text:'level 3-37-7-2'} +, {id:'37-7-3', text:'level 3-37-7-3'} +, {id:'37-7-4', text:'level 3-37-7-4'} +, {id:'37-7-5', text:'level 3-37-7-5'} +, {id:'37-7-6', text:'level 3-37-7-6'} +, {id:'37-7-7', text:'level 3-37-7-7'} +, {id:'37-7-8', text:'level 3-37-7-8'} +, {id:'37-7-9', text:'level 3-37-7-9'} +]} +, {id:'37-8-10', text:'level 2-37-8', item:[ + {id:'37-8-0', text:'level 3-37-8-0'} +, {id:'37-8-1', text:'level 3-37-8-1'} +, {id:'37-8-2', text:'level 3-37-8-2'} +, {id:'37-8-3', text:'level 3-37-8-3'} +, {id:'37-8-4', text:'level 3-37-8-4'} +, {id:'37-8-5', text:'level 3-37-8-5'} +, {id:'37-8-6', text:'level 3-37-8-6'} +, {id:'37-8-7', text:'level 3-37-8-7'} +, {id:'37-8-8', text:'level 3-37-8-8'} +, {id:'37-8-9', text:'level 3-37-8-9'} +]} +, {id:'37-9-10', text:'level 2-37-9', item:[ + {id:'37-9-0', text:'level 3-37-9-0'} +, {id:'37-9-1', text:'level 3-37-9-1'} +, {id:'37-9-2', text:'level 3-37-9-2'} +, {id:'37-9-3', text:'level 3-37-9-3'} +, {id:'37-9-4', text:'level 3-37-9-4'} +, {id:'37-9-5', text:'level 3-37-9-5'} +, {id:'37-9-6', text:'level 3-37-9-6'} +, {id:'37-9-7', text:'level 3-37-9-7'} +, {id:'37-9-8', text:'level 3-37-9-8'} +, {id:'37-9-9', text:'level 3-37-9-9'} +]} +, {id:'37-10-10', text:'level 2-37-10', item:[ + {id:'37-10-0', text:'level 3-37-10-0'} +, {id:'37-10-1', text:'level 3-37-10-1'} +, {id:'37-10-2', text:'level 3-37-10-2'} +, {id:'37-10-3', text:'level 3-37-10-3'} +, {id:'37-10-4', text:'level 3-37-10-4'} +, {id:'37-10-5', text:'level 3-37-10-5'} +, {id:'37-10-6', text:'level 3-37-10-6'} +, {id:'37-10-7', text:'level 3-37-10-7'} +, {id:'37-10-8', text:'level 3-37-10-8'} +, {id:'37-10-9', text:'level 3-37-10-9'} +]} +, {id:'37-11-10', text:'level 2-37-11', item:[ + {id:'37-11-0', text:'level 3-37-11-0'} +, {id:'37-11-1', text:'level 3-37-11-1'} +, {id:'37-11-2', text:'level 3-37-11-2'} +, {id:'37-11-3', text:'level 3-37-11-3'} +, {id:'37-11-4', text:'level 3-37-11-4'} +, {id:'37-11-5', text:'level 3-37-11-5'} +, {id:'37-11-6', text:'level 3-37-11-6'} +, {id:'37-11-7', text:'level 3-37-11-7'} +, {id:'37-11-8', text:'level 3-37-11-8'} +, {id:'37-11-9', text:'level 3-37-11-9'} +]} +, {id:'37-12-10', text:'level 2-37-12', item:[ + {id:'37-12-0', text:'level 3-37-12-0'} +, {id:'37-12-1', text:'level 3-37-12-1'} +, {id:'37-12-2', text:'level 3-37-12-2'} +, {id:'37-12-3', text:'level 3-37-12-3'} +, {id:'37-12-4', text:'level 3-37-12-4'} +, {id:'37-12-5', text:'level 3-37-12-5'} +, {id:'37-12-6', text:'level 3-37-12-6'} +, {id:'37-12-7', text:'level 3-37-12-7'} +, {id:'37-12-8', text:'level 3-37-12-8'} +, {id:'37-12-9', text:'level 3-37-12-9'} +]} +, {id:'37-13-10', text:'level 2-37-13', item:[ + {id:'37-13-0', text:'level 3-37-13-0'} +, {id:'37-13-1', text:'level 3-37-13-1'} +, {id:'37-13-2', text:'level 3-37-13-2'} +, {id:'37-13-3', text:'level 3-37-13-3'} +, {id:'37-13-4', text:'level 3-37-13-4'} +, {id:'37-13-5', text:'level 3-37-13-5'} +, {id:'37-13-6', text:'level 3-37-13-6'} +, {id:'37-13-7', text:'level 3-37-13-7'} +, {id:'37-13-8', text:'level 3-37-13-8'} +, {id:'37-13-9', text:'level 3-37-13-9'} +]} +, {id:'37-14-10', text:'level 2-37-14', item:[ + {id:'37-14-0', text:'level 3-37-14-0'} +, {id:'37-14-1', text:'level 3-37-14-1'} +, {id:'37-14-2', text:'level 3-37-14-2'} +, {id:'37-14-3', text:'level 3-37-14-3'} +, {id:'37-14-4', text:'level 3-37-14-4'} +, {id:'37-14-5', text:'level 3-37-14-5'} +, {id:'37-14-6', text:'level 3-37-14-6'} +, {id:'37-14-7', text:'level 3-37-14-7'} +, {id:'37-14-8', text:'level 3-37-14-8'} +, {id:'37-14-9', text:'level 3-37-14-9'} +]} +, {id:'37-15-10', text:'level 2-37-15', item:[ + {id:'37-15-0', text:'level 3-37-15-0'} +, {id:'37-15-1', text:'level 3-37-15-1'} +, {id:'37-15-2', text:'level 3-37-15-2'} +, {id:'37-15-3', text:'level 3-37-15-3'} +, {id:'37-15-4', text:'level 3-37-15-4'} +, {id:'37-15-5', text:'level 3-37-15-5'} +, {id:'37-15-6', text:'level 3-37-15-6'} +, {id:'37-15-7', text:'level 3-37-15-7'} +, {id:'37-15-8', text:'level 3-37-15-8'} +, {id:'37-15-9', text:'level 3-37-15-9'} +]} +, {id:'37-16-10', text:'level 2-37-16', item:[ + {id:'37-16-0', text:'level 3-37-16-0'} +, {id:'37-16-1', text:'level 3-37-16-1'} +, {id:'37-16-2', text:'level 3-37-16-2'} +, {id:'37-16-3', text:'level 3-37-16-3'} +, {id:'37-16-4', text:'level 3-37-16-4'} +, {id:'37-16-5', text:'level 3-37-16-5'} +, {id:'37-16-6', text:'level 3-37-16-6'} +, {id:'37-16-7', text:'level 3-37-16-7'} +, {id:'37-16-8', text:'level 3-37-16-8'} +, {id:'37-16-9', text:'level 3-37-16-9'} +]} +, {id:'37-17-10', text:'level 2-37-17', item:[ + {id:'37-17-0', text:'level 3-37-17-0'} +, {id:'37-17-1', text:'level 3-37-17-1'} +, {id:'37-17-2', text:'level 3-37-17-2'} +, {id:'37-17-3', text:'level 3-37-17-3'} +, {id:'37-17-4', text:'level 3-37-17-4'} +, {id:'37-17-5', text:'level 3-37-17-5'} +, {id:'37-17-6', text:'level 3-37-17-6'} +, {id:'37-17-7', text:'level 3-37-17-7'} +, {id:'37-17-8', text:'level 3-37-17-8'} +, {id:'37-17-9', text:'level 3-37-17-9'} +]} +, {id:'37-18-10', text:'level 2-37-18', item:[ + {id:'37-18-0', text:'level 3-37-18-0'} +, {id:'37-18-1', text:'level 3-37-18-1'} +, {id:'37-18-2', text:'level 3-37-18-2'} +, {id:'37-18-3', text:'level 3-37-18-3'} +, {id:'37-18-4', text:'level 3-37-18-4'} +, {id:'37-18-5', text:'level 3-37-18-5'} +, {id:'37-18-6', text:'level 3-37-18-6'} +, {id:'37-18-7', text:'level 3-37-18-7'} +, {id:'37-18-8', text:'level 3-37-18-8'} +, {id:'37-18-9', text:'level 3-37-18-9'} +]} +, {id:'37-19-10', text:'level 2-37-19', item:[ + {id:'37-19-0', text:'level 3-37-19-0'} +, {id:'37-19-1', text:'level 3-37-19-1'} +, {id:'37-19-2', text:'level 3-37-19-2'} +, {id:'37-19-3', text:'level 3-37-19-3'} +, {id:'37-19-4', text:'level 3-37-19-4'} +, {id:'37-19-5', text:'level 3-37-19-5'} +, {id:'37-19-6', text:'level 3-37-19-6'} +, {id:'37-19-7', text:'level 3-37-19-7'} +, {id:'37-19-8', text:'level 3-37-19-8'} +, {id:'37-19-9', text:'level 3-37-19-9'} +]} +]} +,{id:'38-20-10', text:'level 1-38', item:[ + {id:'38-0-10', text:'level 2-38-0', item:[ + {id:'38-0-0', text:'level 3-38-0-0'} +, {id:'38-0-1', text:'level 3-38-0-1'} +, {id:'38-0-2', text:'level 3-38-0-2'} +, {id:'38-0-3', text:'level 3-38-0-3'} +, {id:'38-0-4', text:'level 3-38-0-4'} +, {id:'38-0-5', text:'level 3-38-0-5'} +, {id:'38-0-6', text:'level 3-38-0-6'} +, {id:'38-0-7', text:'level 3-38-0-7'} +, {id:'38-0-8', text:'level 3-38-0-8'} +, {id:'38-0-9', text:'level 3-38-0-9'} +]} +, {id:'38-1-10', text:'level 2-38-1', item:[ + {id:'38-1-0', text:'level 3-38-1-0'} +, {id:'38-1-1', text:'level 3-38-1-1'} +, {id:'38-1-2', text:'level 3-38-1-2'} +, {id:'38-1-3', text:'level 3-38-1-3'} +, {id:'38-1-4', text:'level 3-38-1-4'} +, {id:'38-1-5', text:'level 3-38-1-5'} +, {id:'38-1-6', text:'level 3-38-1-6'} +, {id:'38-1-7', text:'level 3-38-1-7'} +, {id:'38-1-8', text:'level 3-38-1-8'} +, {id:'38-1-9', text:'level 3-38-1-9'} +]} +, {id:'38-2-10', text:'level 2-38-2', item:[ + {id:'38-2-0', text:'level 3-38-2-0'} +, {id:'38-2-1', text:'level 3-38-2-1'} +, {id:'38-2-2', text:'level 3-38-2-2'} +, {id:'38-2-3', text:'level 3-38-2-3'} +, {id:'38-2-4', text:'level 3-38-2-4'} +, {id:'38-2-5', text:'level 3-38-2-5'} +, {id:'38-2-6', text:'level 3-38-2-6'} +, {id:'38-2-7', text:'level 3-38-2-7'} +, {id:'38-2-8', text:'level 3-38-2-8'} +, {id:'38-2-9', text:'level 3-38-2-9'} +]} +, {id:'38-3-10', text:'level 2-38-3', item:[ + {id:'38-3-0', text:'level 3-38-3-0'} +, {id:'38-3-1', text:'level 3-38-3-1'} +, {id:'38-3-2', text:'level 3-38-3-2'} +, {id:'38-3-3', text:'level 3-38-3-3'} +, {id:'38-3-4', text:'level 3-38-3-4'} +, {id:'38-3-5', text:'level 3-38-3-5'} +, {id:'38-3-6', text:'level 3-38-3-6'} +, {id:'38-3-7', text:'level 3-38-3-7'} +, {id:'38-3-8', text:'level 3-38-3-8'} +, {id:'38-3-9', text:'level 3-38-3-9'} +]} +, {id:'38-4-10', text:'level 2-38-4', item:[ + {id:'38-4-0', text:'level 3-38-4-0'} +, {id:'38-4-1', text:'level 3-38-4-1'} +, {id:'38-4-2', text:'level 3-38-4-2'} +, {id:'38-4-3', text:'level 3-38-4-3'} +, {id:'38-4-4', text:'level 3-38-4-4'} +, {id:'38-4-5', text:'level 3-38-4-5'} +, {id:'38-4-6', text:'level 3-38-4-6'} +, {id:'38-4-7', text:'level 3-38-4-7'} +, {id:'38-4-8', text:'level 3-38-4-8'} +, {id:'38-4-9', text:'level 3-38-4-9'} +]} +, {id:'38-5-10', text:'level 2-38-5', item:[ + {id:'38-5-0', text:'level 3-38-5-0'} +, {id:'38-5-1', text:'level 3-38-5-1'} +, {id:'38-5-2', text:'level 3-38-5-2'} +, {id:'38-5-3', text:'level 3-38-5-3'} +, {id:'38-5-4', text:'level 3-38-5-4'} +, {id:'38-5-5', text:'level 3-38-5-5'} +, {id:'38-5-6', text:'level 3-38-5-6'} +, {id:'38-5-7', text:'level 3-38-5-7'} +, {id:'38-5-8', text:'level 3-38-5-8'} +, {id:'38-5-9', text:'level 3-38-5-9'} +]} +, {id:'38-6-10', text:'level 2-38-6', item:[ + {id:'38-6-0', text:'level 3-38-6-0'} +, {id:'38-6-1', text:'level 3-38-6-1'} +, {id:'38-6-2', text:'level 3-38-6-2'} +, {id:'38-6-3', text:'level 3-38-6-3'} +, {id:'38-6-4', text:'level 3-38-6-4'} +, {id:'38-6-5', text:'level 3-38-6-5'} +, {id:'38-6-6', text:'level 3-38-6-6'} +, {id:'38-6-7', text:'level 3-38-6-7'} +, {id:'38-6-8', text:'level 3-38-6-8'} +, {id:'38-6-9', text:'level 3-38-6-9'} +]} +, {id:'38-7-10', text:'level 2-38-7', item:[ + {id:'38-7-0', text:'level 3-38-7-0'} +, {id:'38-7-1', text:'level 3-38-7-1'} +, {id:'38-7-2', text:'level 3-38-7-2'} +, {id:'38-7-3', text:'level 3-38-7-3'} +, {id:'38-7-4', text:'level 3-38-7-4'} +, {id:'38-7-5', text:'level 3-38-7-5'} +, {id:'38-7-6', text:'level 3-38-7-6'} +, {id:'38-7-7', text:'level 3-38-7-7'} +, {id:'38-7-8', text:'level 3-38-7-8'} +, {id:'38-7-9', text:'level 3-38-7-9'} +]} +, {id:'38-8-10', text:'level 2-38-8', item:[ + {id:'38-8-0', text:'level 3-38-8-0'} +, {id:'38-8-1', text:'level 3-38-8-1'} +, {id:'38-8-2', text:'level 3-38-8-2'} +, {id:'38-8-3', text:'level 3-38-8-3'} +, {id:'38-8-4', text:'level 3-38-8-4'} +, {id:'38-8-5', text:'level 3-38-8-5'} +, {id:'38-8-6', text:'level 3-38-8-6'} +, {id:'38-8-7', text:'level 3-38-8-7'} +, {id:'38-8-8', text:'level 3-38-8-8'} +, {id:'38-8-9', text:'level 3-38-8-9'} +]} +, {id:'38-9-10', text:'level 2-38-9', item:[ + {id:'38-9-0', text:'level 3-38-9-0'} +, {id:'38-9-1', text:'level 3-38-9-1'} +, {id:'38-9-2', text:'level 3-38-9-2'} +, {id:'38-9-3', text:'level 3-38-9-3'} +, {id:'38-9-4', text:'level 3-38-9-4'} +, {id:'38-9-5', text:'level 3-38-9-5'} +, {id:'38-9-6', text:'level 3-38-9-6'} +, {id:'38-9-7', text:'level 3-38-9-7'} +, {id:'38-9-8', text:'level 3-38-9-8'} +, {id:'38-9-9', text:'level 3-38-9-9'} +]} +, {id:'38-10-10', text:'level 2-38-10', item:[ + {id:'38-10-0', text:'level 3-38-10-0'} +, {id:'38-10-1', text:'level 3-38-10-1'} +, {id:'38-10-2', text:'level 3-38-10-2'} +, {id:'38-10-3', text:'level 3-38-10-3'} +, {id:'38-10-4', text:'level 3-38-10-4'} +, {id:'38-10-5', text:'level 3-38-10-5'} +, {id:'38-10-6', text:'level 3-38-10-6'} +, {id:'38-10-7', text:'level 3-38-10-7'} +, {id:'38-10-8', text:'level 3-38-10-8'} +, {id:'38-10-9', text:'level 3-38-10-9'} +]} +, {id:'38-11-10', text:'level 2-38-11', item:[ + {id:'38-11-0', text:'level 3-38-11-0'} +, {id:'38-11-1', text:'level 3-38-11-1'} +, {id:'38-11-2', text:'level 3-38-11-2'} +, {id:'38-11-3', text:'level 3-38-11-3'} +, {id:'38-11-4', text:'level 3-38-11-4'} +, {id:'38-11-5', text:'level 3-38-11-5'} +, {id:'38-11-6', text:'level 3-38-11-6'} +, {id:'38-11-7', text:'level 3-38-11-7'} +, {id:'38-11-8', text:'level 3-38-11-8'} +, {id:'38-11-9', text:'level 3-38-11-9'} +]} +, {id:'38-12-10', text:'level 2-38-12', item:[ + {id:'38-12-0', text:'level 3-38-12-0'} +, {id:'38-12-1', text:'level 3-38-12-1'} +, {id:'38-12-2', text:'level 3-38-12-2'} +, {id:'38-12-3', text:'level 3-38-12-3'} +, {id:'38-12-4', text:'level 3-38-12-4'} +, {id:'38-12-5', text:'level 3-38-12-5'} +, {id:'38-12-6', text:'level 3-38-12-6'} +, {id:'38-12-7', text:'level 3-38-12-7'} +, {id:'38-12-8', text:'level 3-38-12-8'} +, {id:'38-12-9', text:'level 3-38-12-9'} +]} +, {id:'38-13-10', text:'level 2-38-13', item:[ + {id:'38-13-0', text:'level 3-38-13-0'} +, {id:'38-13-1', text:'level 3-38-13-1'} +, {id:'38-13-2', text:'level 3-38-13-2'} +, {id:'38-13-3', text:'level 3-38-13-3'} +, {id:'38-13-4', text:'level 3-38-13-4'} +, {id:'38-13-5', text:'level 3-38-13-5'} +, {id:'38-13-6', text:'level 3-38-13-6'} +, {id:'38-13-7', text:'level 3-38-13-7'} +, {id:'38-13-8', text:'level 3-38-13-8'} +, {id:'38-13-9', text:'level 3-38-13-9'} +]} +, {id:'38-14-10', text:'level 2-38-14', item:[ + {id:'38-14-0', text:'level 3-38-14-0'} +, {id:'38-14-1', text:'level 3-38-14-1'} +, {id:'38-14-2', text:'level 3-38-14-2'} +, {id:'38-14-3', text:'level 3-38-14-3'} +, {id:'38-14-4', text:'level 3-38-14-4'} +, {id:'38-14-5', text:'level 3-38-14-5'} +, {id:'38-14-6', text:'level 3-38-14-6'} +, {id:'38-14-7', text:'level 3-38-14-7'} +, {id:'38-14-8', text:'level 3-38-14-8'} +, {id:'38-14-9', text:'level 3-38-14-9'} +]} +, {id:'38-15-10', text:'level 2-38-15', item:[ + {id:'38-15-0', text:'level 3-38-15-0'} +, {id:'38-15-1', text:'level 3-38-15-1'} +, {id:'38-15-2', text:'level 3-38-15-2'} +, {id:'38-15-3', text:'level 3-38-15-3'} +, {id:'38-15-4', text:'level 3-38-15-4'} +, {id:'38-15-5', text:'level 3-38-15-5'} +, {id:'38-15-6', text:'level 3-38-15-6'} +, {id:'38-15-7', text:'level 3-38-15-7'} +, {id:'38-15-8', text:'level 3-38-15-8'} +, {id:'38-15-9', text:'level 3-38-15-9'} +]} +, {id:'38-16-10', text:'level 2-38-16', item:[ + {id:'38-16-0', text:'level 3-38-16-0'} +, {id:'38-16-1', text:'level 3-38-16-1'} +, {id:'38-16-2', text:'level 3-38-16-2'} +, {id:'38-16-3', text:'level 3-38-16-3'} +, {id:'38-16-4', text:'level 3-38-16-4'} +, {id:'38-16-5', text:'level 3-38-16-5'} +, {id:'38-16-6', text:'level 3-38-16-6'} +, {id:'38-16-7', text:'level 3-38-16-7'} +, {id:'38-16-8', text:'level 3-38-16-8'} +, {id:'38-16-9', text:'level 3-38-16-9'} +]} +, {id:'38-17-10', text:'level 2-38-17', item:[ + {id:'38-17-0', text:'level 3-38-17-0'} +, {id:'38-17-1', text:'level 3-38-17-1'} +, {id:'38-17-2', text:'level 3-38-17-2'} +, {id:'38-17-3', text:'level 3-38-17-3'} +, {id:'38-17-4', text:'level 3-38-17-4'} +, {id:'38-17-5', text:'level 3-38-17-5'} +, {id:'38-17-6', text:'level 3-38-17-6'} +, {id:'38-17-7', text:'level 3-38-17-7'} +, {id:'38-17-8', text:'level 3-38-17-8'} +, {id:'38-17-9', text:'level 3-38-17-9'} +]} +, {id:'38-18-10', text:'level 2-38-18', item:[ + {id:'38-18-0', text:'level 3-38-18-0'} +, {id:'38-18-1', text:'level 3-38-18-1'} +, {id:'38-18-2', text:'level 3-38-18-2'} +, {id:'38-18-3', text:'level 3-38-18-3'} +, {id:'38-18-4', text:'level 3-38-18-4'} +, {id:'38-18-5', text:'level 3-38-18-5'} +, {id:'38-18-6', text:'level 3-38-18-6'} +, {id:'38-18-7', text:'level 3-38-18-7'} +, {id:'38-18-8', text:'level 3-38-18-8'} +, {id:'38-18-9', text:'level 3-38-18-9'} +]} +, {id:'38-19-10', text:'level 2-38-19', item:[ + {id:'38-19-0', text:'level 3-38-19-0'} +, {id:'38-19-1', text:'level 3-38-19-1'} +, {id:'38-19-2', text:'level 3-38-19-2'} +, {id:'38-19-3', text:'level 3-38-19-3'} +, {id:'38-19-4', text:'level 3-38-19-4'} +, {id:'38-19-5', text:'level 3-38-19-5'} +, {id:'38-19-6', text:'level 3-38-19-6'} +, {id:'38-19-7', text:'level 3-38-19-7'} +, {id:'38-19-8', text:'level 3-38-19-8'} +, {id:'38-19-9', text:'level 3-38-19-9'} +]} +]} +,{id:'39-20-10', text:'level 1-39', item:[ + {id:'39-0-10', text:'level 2-39-0', item:[ + {id:'39-0-0', text:'level 3-39-0-0'} +, {id:'39-0-1', text:'level 3-39-0-1'} +, {id:'39-0-2', text:'level 3-39-0-2'} +, {id:'39-0-3', text:'level 3-39-0-3'} +, {id:'39-0-4', text:'level 3-39-0-4'} +, {id:'39-0-5', text:'level 3-39-0-5'} +, {id:'39-0-6', text:'level 3-39-0-6'} +, {id:'39-0-7', text:'level 3-39-0-7'} +, {id:'39-0-8', text:'level 3-39-0-8'} +, {id:'39-0-9', text:'level 3-39-0-9'} +]} +, {id:'39-1-10', text:'level 2-39-1', item:[ + {id:'39-1-0', text:'level 3-39-1-0'} +, {id:'39-1-1', text:'level 3-39-1-1'} +, {id:'39-1-2', text:'level 3-39-1-2'} +, {id:'39-1-3', text:'level 3-39-1-3'} +, {id:'39-1-4', text:'level 3-39-1-4'} +, {id:'39-1-5', text:'level 3-39-1-5'} +, {id:'39-1-6', text:'level 3-39-1-6'} +, {id:'39-1-7', text:'level 3-39-1-7'} +, {id:'39-1-8', text:'level 3-39-1-8'} +, {id:'39-1-9', text:'level 3-39-1-9'} +]} +, {id:'39-2-10', text:'level 2-39-2', item:[ + {id:'39-2-0', text:'level 3-39-2-0'} +, {id:'39-2-1', text:'level 3-39-2-1'} +, {id:'39-2-2', text:'level 3-39-2-2'} +, {id:'39-2-3', text:'level 3-39-2-3'} +, {id:'39-2-4', text:'level 3-39-2-4'} +, {id:'39-2-5', text:'level 3-39-2-5'} +, {id:'39-2-6', text:'level 3-39-2-6'} +, {id:'39-2-7', text:'level 3-39-2-7'} +, {id:'39-2-8', text:'level 3-39-2-8'} +, {id:'39-2-9', text:'level 3-39-2-9'} +]} +, {id:'39-3-10', text:'level 2-39-3', item:[ + {id:'39-3-0', text:'level 3-39-3-0'} +, {id:'39-3-1', text:'level 3-39-3-1'} +, {id:'39-3-2', text:'level 3-39-3-2'} +, {id:'39-3-3', text:'level 3-39-3-3'} +, {id:'39-3-4', text:'level 3-39-3-4'} +, {id:'39-3-5', text:'level 3-39-3-5'} +, {id:'39-3-6', text:'level 3-39-3-6'} +, {id:'39-3-7', text:'level 3-39-3-7'} +, {id:'39-3-8', text:'level 3-39-3-8'} +, {id:'39-3-9', text:'level 3-39-3-9'} +]} +, {id:'39-4-10', text:'level 2-39-4', item:[ + {id:'39-4-0', text:'level 3-39-4-0'} +, {id:'39-4-1', text:'level 3-39-4-1'} +, {id:'39-4-2', text:'level 3-39-4-2'} +, {id:'39-4-3', text:'level 3-39-4-3'} +, {id:'39-4-4', text:'level 3-39-4-4'} +, {id:'39-4-5', text:'level 3-39-4-5'} +, {id:'39-4-6', text:'level 3-39-4-6'} +, {id:'39-4-7', text:'level 3-39-4-7'} +, {id:'39-4-8', text:'level 3-39-4-8'} +, {id:'39-4-9', text:'level 3-39-4-9'} +]} +, {id:'39-5-10', text:'level 2-39-5', item:[ + {id:'39-5-0', text:'level 3-39-5-0'} +, {id:'39-5-1', text:'level 3-39-5-1'} +, {id:'39-5-2', text:'level 3-39-5-2'} +, {id:'39-5-3', text:'level 3-39-5-3'} +, {id:'39-5-4', text:'level 3-39-5-4'} +, {id:'39-5-5', text:'level 3-39-5-5'} +, {id:'39-5-6', text:'level 3-39-5-6'} +, {id:'39-5-7', text:'level 3-39-5-7'} +, {id:'39-5-8', text:'level 3-39-5-8'} +, {id:'39-5-9', text:'level 3-39-5-9'} +]} +, {id:'39-6-10', text:'level 2-39-6', item:[ + {id:'39-6-0', text:'level 3-39-6-0'} +, {id:'39-6-1', text:'level 3-39-6-1'} +, {id:'39-6-2', text:'level 3-39-6-2'} +, {id:'39-6-3', text:'level 3-39-6-3'} +, {id:'39-6-4', text:'level 3-39-6-4'} +, {id:'39-6-5', text:'level 3-39-6-5'} +, {id:'39-6-6', text:'level 3-39-6-6'} +, {id:'39-6-7', text:'level 3-39-6-7'} +, {id:'39-6-8', text:'level 3-39-6-8'} +, {id:'39-6-9', text:'level 3-39-6-9'} +]} +, {id:'39-7-10', text:'level 2-39-7', item:[ + {id:'39-7-0', text:'level 3-39-7-0'} +, {id:'39-7-1', text:'level 3-39-7-1'} +, {id:'39-7-2', text:'level 3-39-7-2'} +, {id:'39-7-3', text:'level 3-39-7-3'} +, {id:'39-7-4', text:'level 3-39-7-4'} +, {id:'39-7-5', text:'level 3-39-7-5'} +, {id:'39-7-6', text:'level 3-39-7-6'} +, {id:'39-7-7', text:'level 3-39-7-7'} +, {id:'39-7-8', text:'level 3-39-7-8'} +, {id:'39-7-9', text:'level 3-39-7-9'} +]} +, {id:'39-8-10', text:'level 2-39-8', item:[ + {id:'39-8-0', text:'level 3-39-8-0'} +, {id:'39-8-1', text:'level 3-39-8-1'} +, {id:'39-8-2', text:'level 3-39-8-2'} +, {id:'39-8-3', text:'level 3-39-8-3'} +, {id:'39-8-4', text:'level 3-39-8-4'} +, {id:'39-8-5', text:'level 3-39-8-5'} +, {id:'39-8-6', text:'level 3-39-8-6'} +, {id:'39-8-7', text:'level 3-39-8-7'} +, {id:'39-8-8', text:'level 3-39-8-8'} +, {id:'39-8-9', text:'level 3-39-8-9'} +]} +, {id:'39-9-10', text:'level 2-39-9', item:[ + {id:'39-9-0', text:'level 3-39-9-0'} +, {id:'39-9-1', text:'level 3-39-9-1'} +, {id:'39-9-2', text:'level 3-39-9-2'} +, {id:'39-9-3', text:'level 3-39-9-3'} +, {id:'39-9-4', text:'level 3-39-9-4'} +, {id:'39-9-5', text:'level 3-39-9-5'} +, {id:'39-9-6', text:'level 3-39-9-6'} +, {id:'39-9-7', text:'level 3-39-9-7'} +, {id:'39-9-8', text:'level 3-39-9-8'} +, {id:'39-9-9', text:'level 3-39-9-9'} +]} +, {id:'39-10-10', text:'level 2-39-10', item:[ + {id:'39-10-0', text:'level 3-39-10-0'} +, {id:'39-10-1', text:'level 3-39-10-1'} +, {id:'39-10-2', text:'level 3-39-10-2'} +, {id:'39-10-3', text:'level 3-39-10-3'} +, {id:'39-10-4', text:'level 3-39-10-4'} +, {id:'39-10-5', text:'level 3-39-10-5'} +, {id:'39-10-6', text:'level 3-39-10-6'} +, {id:'39-10-7', text:'level 3-39-10-7'} +, {id:'39-10-8', text:'level 3-39-10-8'} +, {id:'39-10-9', text:'level 3-39-10-9'} +]} +, {id:'39-11-10', text:'level 2-39-11', item:[ + {id:'39-11-0', text:'level 3-39-11-0'} +, {id:'39-11-1', text:'level 3-39-11-1'} +, {id:'39-11-2', text:'level 3-39-11-2'} +, {id:'39-11-3', text:'level 3-39-11-3'} +, {id:'39-11-4', text:'level 3-39-11-4'} +, {id:'39-11-5', text:'level 3-39-11-5'} +, {id:'39-11-6', text:'level 3-39-11-6'} +, {id:'39-11-7', text:'level 3-39-11-7'} +, {id:'39-11-8', text:'level 3-39-11-8'} +, {id:'39-11-9', text:'level 3-39-11-9'} +]} +, {id:'39-12-10', text:'level 2-39-12', item:[ + {id:'39-12-0', text:'level 3-39-12-0'} +, {id:'39-12-1', text:'level 3-39-12-1'} +, {id:'39-12-2', text:'level 3-39-12-2'} +, {id:'39-12-3', text:'level 3-39-12-3'} +, {id:'39-12-4', text:'level 3-39-12-4'} +, {id:'39-12-5', text:'level 3-39-12-5'} +, {id:'39-12-6', text:'level 3-39-12-6'} +, {id:'39-12-7', text:'level 3-39-12-7'} +, {id:'39-12-8', text:'level 3-39-12-8'} +, {id:'39-12-9', text:'level 3-39-12-9'} +]} +, {id:'39-13-10', text:'level 2-39-13', item:[ + {id:'39-13-0', text:'level 3-39-13-0'} +, {id:'39-13-1', text:'level 3-39-13-1'} +, {id:'39-13-2', text:'level 3-39-13-2'} +, {id:'39-13-3', text:'level 3-39-13-3'} +, {id:'39-13-4', text:'level 3-39-13-4'} +, {id:'39-13-5', text:'level 3-39-13-5'} +, {id:'39-13-6', text:'level 3-39-13-6'} +, {id:'39-13-7', text:'level 3-39-13-7'} +, {id:'39-13-8', text:'level 3-39-13-8'} +, {id:'39-13-9', text:'level 3-39-13-9'} +]} +, {id:'39-14-10', text:'level 2-39-14', item:[ + {id:'39-14-0', text:'level 3-39-14-0'} +, {id:'39-14-1', text:'level 3-39-14-1'} +, {id:'39-14-2', text:'level 3-39-14-2'} +, {id:'39-14-3', text:'level 3-39-14-3'} +, {id:'39-14-4', text:'level 3-39-14-4'} +, {id:'39-14-5', text:'level 3-39-14-5'} +, {id:'39-14-6', text:'level 3-39-14-6'} +, {id:'39-14-7', text:'level 3-39-14-7'} +, {id:'39-14-8', text:'level 3-39-14-8'} +, {id:'39-14-9', text:'level 3-39-14-9'} +]} +, {id:'39-15-10', text:'level 2-39-15', item:[ + {id:'39-15-0', text:'level 3-39-15-0'} +, {id:'39-15-1', text:'level 3-39-15-1'} +, {id:'39-15-2', text:'level 3-39-15-2'} +, {id:'39-15-3', text:'level 3-39-15-3'} +, {id:'39-15-4', text:'level 3-39-15-4'} +, {id:'39-15-5', text:'level 3-39-15-5'} +, {id:'39-15-6', text:'level 3-39-15-6'} +, {id:'39-15-7', text:'level 3-39-15-7'} +, {id:'39-15-8', text:'level 3-39-15-8'} +, {id:'39-15-9', text:'level 3-39-15-9'} +]} +, {id:'39-16-10', text:'level 2-39-16', item:[ + {id:'39-16-0', text:'level 3-39-16-0'} +, {id:'39-16-1', text:'level 3-39-16-1'} +, {id:'39-16-2', text:'level 3-39-16-2'} +, {id:'39-16-3', text:'level 3-39-16-3'} +, {id:'39-16-4', text:'level 3-39-16-4'} +, {id:'39-16-5', text:'level 3-39-16-5'} +, {id:'39-16-6', text:'level 3-39-16-6'} +, {id:'39-16-7', text:'level 3-39-16-7'} +, {id:'39-16-8', text:'level 3-39-16-8'} +, {id:'39-16-9', text:'level 3-39-16-9'} +]} +, {id:'39-17-10', text:'level 2-39-17', item:[ + {id:'39-17-0', text:'level 3-39-17-0'} +, {id:'39-17-1', text:'level 3-39-17-1'} +, {id:'39-17-2', text:'level 3-39-17-2'} +, {id:'39-17-3', text:'level 3-39-17-3'} +, {id:'39-17-4', text:'level 3-39-17-4'} +, {id:'39-17-5', text:'level 3-39-17-5'} +, {id:'39-17-6', text:'level 3-39-17-6'} +, {id:'39-17-7', text:'level 3-39-17-7'} +, {id:'39-17-8', text:'level 3-39-17-8'} +, {id:'39-17-9', text:'level 3-39-17-9'} +]} +, {id:'39-18-10', text:'level 2-39-18', item:[ + {id:'39-18-0', text:'level 3-39-18-0'} +, {id:'39-18-1', text:'level 3-39-18-1'} +, {id:'39-18-2', text:'level 3-39-18-2'} +, {id:'39-18-3', text:'level 3-39-18-3'} +, {id:'39-18-4', text:'level 3-39-18-4'} +, {id:'39-18-5', text:'level 3-39-18-5'} +, {id:'39-18-6', text:'level 3-39-18-6'} +, {id:'39-18-7', text:'level 3-39-18-7'} +, {id:'39-18-8', text:'level 3-39-18-8'} +, {id:'39-18-9', text:'level 3-39-18-9'} +]} +, {id:'39-19-10', text:'level 2-39-19', item:[ + {id:'39-19-0', text:'level 3-39-19-0'} +, {id:'39-19-1', text:'level 3-39-19-1'} +, {id:'39-19-2', text:'level 3-39-19-2'} +, {id:'39-19-3', text:'level 3-39-19-3'} +, {id:'39-19-4', text:'level 3-39-19-4'} +, {id:'39-19-5', text:'level 3-39-19-5'} +, {id:'39-19-6', text:'level 3-39-19-6'} +, {id:'39-19-7', text:'level 3-39-19-7'} +, {id:'39-19-8', text:'level 3-39-19-8'} +, {id:'39-19-9', text:'level 3-39-19-9'} +]} +]} +,{id:'40-20-10', text:'level 1-40', item:[ + {id:'40-0-10', text:'level 2-40-0', item:[ + {id:'40-0-0', text:'level 3-40-0-0'} +, {id:'40-0-1', text:'level 3-40-0-1'} +, {id:'40-0-2', text:'level 3-40-0-2'} +, {id:'40-0-3', text:'level 3-40-0-3'} +, {id:'40-0-4', text:'level 3-40-0-4'} +, {id:'40-0-5', text:'level 3-40-0-5'} +, {id:'40-0-6', text:'level 3-40-0-6'} +, {id:'40-0-7', text:'level 3-40-0-7'} +, {id:'40-0-8', text:'level 3-40-0-8'} +, {id:'40-0-9', text:'level 3-40-0-9'} +]} +, {id:'40-1-10', text:'level 2-40-1', item:[ + {id:'40-1-0', text:'level 3-40-1-0'} +, {id:'40-1-1', text:'level 3-40-1-1'} +, {id:'40-1-2', text:'level 3-40-1-2'} +, {id:'40-1-3', text:'level 3-40-1-3'} +, {id:'40-1-4', text:'level 3-40-1-4'} +, {id:'40-1-5', text:'level 3-40-1-5'} +, {id:'40-1-6', text:'level 3-40-1-6'} +, {id:'40-1-7', text:'level 3-40-1-7'} +, {id:'40-1-8', text:'level 3-40-1-8'} +, {id:'40-1-9', text:'level 3-40-1-9'} +]} +, {id:'40-2-10', text:'level 2-40-2', item:[ + {id:'40-2-0', text:'level 3-40-2-0'} +, {id:'40-2-1', text:'level 3-40-2-1'} +, {id:'40-2-2', text:'level 3-40-2-2'} +, {id:'40-2-3', text:'level 3-40-2-3'} +, {id:'40-2-4', text:'level 3-40-2-4'} +, {id:'40-2-5', text:'level 3-40-2-5'} +, {id:'40-2-6', text:'level 3-40-2-6'} +, {id:'40-2-7', text:'level 3-40-2-7'} +, {id:'40-2-8', text:'level 3-40-2-8'} +, {id:'40-2-9', text:'level 3-40-2-9'} +]} +, {id:'40-3-10', text:'level 2-40-3', item:[ + {id:'40-3-0', text:'level 3-40-3-0'} +, {id:'40-3-1', text:'level 3-40-3-1'} +, {id:'40-3-2', text:'level 3-40-3-2'} +, {id:'40-3-3', text:'level 3-40-3-3'} +, {id:'40-3-4', text:'level 3-40-3-4'} +, {id:'40-3-5', text:'level 3-40-3-5'} +, {id:'40-3-6', text:'level 3-40-3-6'} +, {id:'40-3-7', text:'level 3-40-3-7'} +, {id:'40-3-8', text:'level 3-40-3-8'} +, {id:'40-3-9', text:'level 3-40-3-9'} +]} +, {id:'40-4-10', text:'level 2-40-4', item:[ + {id:'40-4-0', text:'level 3-40-4-0'} +, {id:'40-4-1', text:'level 3-40-4-1'} +, {id:'40-4-2', text:'level 3-40-4-2'} +, {id:'40-4-3', text:'level 3-40-4-3'} +, {id:'40-4-4', text:'level 3-40-4-4'} +, {id:'40-4-5', text:'level 3-40-4-5'} +, {id:'40-4-6', text:'level 3-40-4-6'} +, {id:'40-4-7', text:'level 3-40-4-7'} +, {id:'40-4-8', text:'level 3-40-4-8'} +, {id:'40-4-9', text:'level 3-40-4-9'} +]} +, {id:'40-5-10', text:'level 2-40-5', item:[ + {id:'40-5-0', text:'level 3-40-5-0'} +, {id:'40-5-1', text:'level 3-40-5-1'} +, {id:'40-5-2', text:'level 3-40-5-2'} +, {id:'40-5-3', text:'level 3-40-5-3'} +, {id:'40-5-4', text:'level 3-40-5-4'} +, {id:'40-5-5', text:'level 3-40-5-5'} +, {id:'40-5-6', text:'level 3-40-5-6'} +, {id:'40-5-7', text:'level 3-40-5-7'} +, {id:'40-5-8', text:'level 3-40-5-8'} +, {id:'40-5-9', text:'level 3-40-5-9'} +]} +, {id:'40-6-10', text:'level 2-40-6', item:[ + {id:'40-6-0', text:'level 3-40-6-0'} +, {id:'40-6-1', text:'level 3-40-6-1'} +, {id:'40-6-2', text:'level 3-40-6-2'} +, {id:'40-6-3', text:'level 3-40-6-3'} +, {id:'40-6-4', text:'level 3-40-6-4'} +, {id:'40-6-5', text:'level 3-40-6-5'} +, {id:'40-6-6', text:'level 3-40-6-6'} +, {id:'40-6-7', text:'level 3-40-6-7'} +, {id:'40-6-8', text:'level 3-40-6-8'} +, {id:'40-6-9', text:'level 3-40-6-9'} +]} +, {id:'40-7-10', text:'level 2-40-7', item:[ + {id:'40-7-0', text:'level 3-40-7-0'} +, {id:'40-7-1', text:'level 3-40-7-1'} +, {id:'40-7-2', text:'level 3-40-7-2'} +, {id:'40-7-3', text:'level 3-40-7-3'} +, {id:'40-7-4', text:'level 3-40-7-4'} +, {id:'40-7-5', text:'level 3-40-7-5'} +, {id:'40-7-6', text:'level 3-40-7-6'} +, {id:'40-7-7', text:'level 3-40-7-7'} +, {id:'40-7-8', text:'level 3-40-7-8'} +, {id:'40-7-9', text:'level 3-40-7-9'} +]} +, {id:'40-8-10', text:'level 2-40-8', item:[ + {id:'40-8-0', text:'level 3-40-8-0'} +, {id:'40-8-1', text:'level 3-40-8-1'} +, {id:'40-8-2', text:'level 3-40-8-2'} +, {id:'40-8-3', text:'level 3-40-8-3'} +, {id:'40-8-4', text:'level 3-40-8-4'} +, {id:'40-8-5', text:'level 3-40-8-5'} +, {id:'40-8-6', text:'level 3-40-8-6'} +, {id:'40-8-7', text:'level 3-40-8-7'} +, {id:'40-8-8', text:'level 3-40-8-8'} +, {id:'40-8-9', text:'level 3-40-8-9'} +]} +, {id:'40-9-10', text:'level 2-40-9', item:[ + {id:'40-9-0', text:'level 3-40-9-0'} +, {id:'40-9-1', text:'level 3-40-9-1'} +, {id:'40-9-2', text:'level 3-40-9-2'} +, {id:'40-9-3', text:'level 3-40-9-3'} +, {id:'40-9-4', text:'level 3-40-9-4'} +, {id:'40-9-5', text:'level 3-40-9-5'} +, {id:'40-9-6', text:'level 3-40-9-6'} +, {id:'40-9-7', text:'level 3-40-9-7'} +, {id:'40-9-8', text:'level 3-40-9-8'} +, {id:'40-9-9', text:'level 3-40-9-9'} +]} +, {id:'40-10-10', text:'level 2-40-10', item:[ + {id:'40-10-0', text:'level 3-40-10-0'} +, {id:'40-10-1', text:'level 3-40-10-1'} +, {id:'40-10-2', text:'level 3-40-10-2'} +, {id:'40-10-3', text:'level 3-40-10-3'} +, {id:'40-10-4', text:'level 3-40-10-4'} +, {id:'40-10-5', text:'level 3-40-10-5'} +, {id:'40-10-6', text:'level 3-40-10-6'} +, {id:'40-10-7', text:'level 3-40-10-7'} +, {id:'40-10-8', text:'level 3-40-10-8'} +, {id:'40-10-9', text:'level 3-40-10-9'} +]} +, {id:'40-11-10', text:'level 2-40-11', item:[ + {id:'40-11-0', text:'level 3-40-11-0'} +, {id:'40-11-1', text:'level 3-40-11-1'} +, {id:'40-11-2', text:'level 3-40-11-2'} +, {id:'40-11-3', text:'level 3-40-11-3'} +, {id:'40-11-4', text:'level 3-40-11-4'} +, {id:'40-11-5', text:'level 3-40-11-5'} +, {id:'40-11-6', text:'level 3-40-11-6'} +, {id:'40-11-7', text:'level 3-40-11-7'} +, {id:'40-11-8', text:'level 3-40-11-8'} +, {id:'40-11-9', text:'level 3-40-11-9'} +]} +, {id:'40-12-10', text:'level 2-40-12', item:[ + {id:'40-12-0', text:'level 3-40-12-0'} +, {id:'40-12-1', text:'level 3-40-12-1'} +, {id:'40-12-2', text:'level 3-40-12-2'} +, {id:'40-12-3', text:'level 3-40-12-3'} +, {id:'40-12-4', text:'level 3-40-12-4'} +, {id:'40-12-5', text:'level 3-40-12-5'} +, {id:'40-12-6', text:'level 3-40-12-6'} +, {id:'40-12-7', text:'level 3-40-12-7'} +, {id:'40-12-8', text:'level 3-40-12-8'} +, {id:'40-12-9', text:'level 3-40-12-9'} +]} +, {id:'40-13-10', text:'level 2-40-13', item:[ + {id:'40-13-0', text:'level 3-40-13-0'} +, {id:'40-13-1', text:'level 3-40-13-1'} +, {id:'40-13-2', text:'level 3-40-13-2'} +, {id:'40-13-3', text:'level 3-40-13-3'} +, {id:'40-13-4', text:'level 3-40-13-4'} +, {id:'40-13-5', text:'level 3-40-13-5'} +, {id:'40-13-6', text:'level 3-40-13-6'} +, {id:'40-13-7', text:'level 3-40-13-7'} +, {id:'40-13-8', text:'level 3-40-13-8'} +, {id:'40-13-9', text:'level 3-40-13-9'} +]} +, {id:'40-14-10', text:'level 2-40-14', item:[ + {id:'40-14-0', text:'level 3-40-14-0'} +, {id:'40-14-1', text:'level 3-40-14-1'} +, {id:'40-14-2', text:'level 3-40-14-2'} +, {id:'40-14-3', text:'level 3-40-14-3'} +, {id:'40-14-4', text:'level 3-40-14-4'} +, {id:'40-14-5', text:'level 3-40-14-5'} +, {id:'40-14-6', text:'level 3-40-14-6'} +, {id:'40-14-7', text:'level 3-40-14-7'} +, {id:'40-14-8', text:'level 3-40-14-8'} +, {id:'40-14-9', text:'level 3-40-14-9'} +]} +, {id:'40-15-10', text:'level 2-40-15', item:[ + {id:'40-15-0', text:'level 3-40-15-0'} +, {id:'40-15-1', text:'level 3-40-15-1'} +, {id:'40-15-2', text:'level 3-40-15-2'} +, {id:'40-15-3', text:'level 3-40-15-3'} +, {id:'40-15-4', text:'level 3-40-15-4'} +, {id:'40-15-5', text:'level 3-40-15-5'} +, {id:'40-15-6', text:'level 3-40-15-6'} +, {id:'40-15-7', text:'level 3-40-15-7'} +, {id:'40-15-8', text:'level 3-40-15-8'} +, {id:'40-15-9', text:'level 3-40-15-9'} +]} +, {id:'40-16-10', text:'level 2-40-16', item:[ + {id:'40-16-0', text:'level 3-40-16-0'} +, {id:'40-16-1', text:'level 3-40-16-1'} +, {id:'40-16-2', text:'level 3-40-16-2'} +, {id:'40-16-3', text:'level 3-40-16-3'} +, {id:'40-16-4', text:'level 3-40-16-4'} +, {id:'40-16-5', text:'level 3-40-16-5'} +, {id:'40-16-6', text:'level 3-40-16-6'} +, {id:'40-16-7', text:'level 3-40-16-7'} +, {id:'40-16-8', text:'level 3-40-16-8'} +, {id:'40-16-9', text:'level 3-40-16-9'} +]} +, {id:'40-17-10', text:'level 2-40-17', item:[ + {id:'40-17-0', text:'level 3-40-17-0'} +, {id:'40-17-1', text:'level 3-40-17-1'} +, {id:'40-17-2', text:'level 3-40-17-2'} +, {id:'40-17-3', text:'level 3-40-17-3'} +, {id:'40-17-4', text:'level 3-40-17-4'} +, {id:'40-17-5', text:'level 3-40-17-5'} +, {id:'40-17-6', text:'level 3-40-17-6'} +, {id:'40-17-7', text:'level 3-40-17-7'} +, {id:'40-17-8', text:'level 3-40-17-8'} +, {id:'40-17-9', text:'level 3-40-17-9'} +]} +, {id:'40-18-10', text:'level 2-40-18', item:[ + {id:'40-18-0', text:'level 3-40-18-0'} +, {id:'40-18-1', text:'level 3-40-18-1'} +, {id:'40-18-2', text:'level 3-40-18-2'} +, {id:'40-18-3', text:'level 3-40-18-3'} +, {id:'40-18-4', text:'level 3-40-18-4'} +, {id:'40-18-5', text:'level 3-40-18-5'} +, {id:'40-18-6', text:'level 3-40-18-6'} +, {id:'40-18-7', text:'level 3-40-18-7'} +, {id:'40-18-8', text:'level 3-40-18-8'} +, {id:'40-18-9', text:'level 3-40-18-9'} +]} +, {id:'40-19-10', text:'level 2-40-19', item:[ + {id:'40-19-0', text:'level 3-40-19-0'} +, {id:'40-19-1', text:'level 3-40-19-1'} +, {id:'40-19-2', text:'level 3-40-19-2'} +, {id:'40-19-3', text:'level 3-40-19-3'} +, {id:'40-19-4', text:'level 3-40-19-4'} +, {id:'40-19-5', text:'level 3-40-19-5'} +, {id:'40-19-6', text:'level 3-40-19-6'} +, {id:'40-19-7', text:'level 3-40-19-7'} +, {id:'40-19-8', text:'level 3-40-19-8'} +, {id:'40-19-9', text:'level 3-40-19-9'} +]} +]} +,{id:'41-20-10', text:'level 1-41', item:[ + {id:'41-0-10', text:'level 2-41-0', item:[ + {id:'41-0-0', text:'level 3-41-0-0'} +, {id:'41-0-1', text:'level 3-41-0-1'} +, {id:'41-0-2', text:'level 3-41-0-2'} +, {id:'41-0-3', text:'level 3-41-0-3'} +, {id:'41-0-4', text:'level 3-41-0-4'} +, {id:'41-0-5', text:'level 3-41-0-5'} +, {id:'41-0-6', text:'level 3-41-0-6'} +, {id:'41-0-7', text:'level 3-41-0-7'} +, {id:'41-0-8', text:'level 3-41-0-8'} +, {id:'41-0-9', text:'level 3-41-0-9'} +]} +, {id:'41-1-10', text:'level 2-41-1', item:[ + {id:'41-1-0', text:'level 3-41-1-0'} +, {id:'41-1-1', text:'level 3-41-1-1'} +, {id:'41-1-2', text:'level 3-41-1-2'} +, {id:'41-1-3', text:'level 3-41-1-3'} +, {id:'41-1-4', text:'level 3-41-1-4'} +, {id:'41-1-5', text:'level 3-41-1-5'} +, {id:'41-1-6', text:'level 3-41-1-6'} +, {id:'41-1-7', text:'level 3-41-1-7'} +, {id:'41-1-8', text:'level 3-41-1-8'} +, {id:'41-1-9', text:'level 3-41-1-9'} +]} +, {id:'41-2-10', text:'level 2-41-2', item:[ + {id:'41-2-0', text:'level 3-41-2-0'} +, {id:'41-2-1', text:'level 3-41-2-1'} +, {id:'41-2-2', text:'level 3-41-2-2'} +, {id:'41-2-3', text:'level 3-41-2-3'} +, {id:'41-2-4', text:'level 3-41-2-4'} +, {id:'41-2-5', text:'level 3-41-2-5'} +, {id:'41-2-6', text:'level 3-41-2-6'} +, {id:'41-2-7', text:'level 3-41-2-7'} +, {id:'41-2-8', text:'level 3-41-2-8'} +, {id:'41-2-9', text:'level 3-41-2-9'} +]} +, {id:'41-3-10', text:'level 2-41-3', item:[ + {id:'41-3-0', text:'level 3-41-3-0'} +, {id:'41-3-1', text:'level 3-41-3-1'} +, {id:'41-3-2', text:'level 3-41-3-2'} +, {id:'41-3-3', text:'level 3-41-3-3'} +, {id:'41-3-4', text:'level 3-41-3-4'} +, {id:'41-3-5', text:'level 3-41-3-5'} +, {id:'41-3-6', text:'level 3-41-3-6'} +, {id:'41-3-7', text:'level 3-41-3-7'} +, {id:'41-3-8', text:'level 3-41-3-8'} +, {id:'41-3-9', text:'level 3-41-3-9'} +]} +, {id:'41-4-10', text:'level 2-41-4', item:[ + {id:'41-4-0', text:'level 3-41-4-0'} +, {id:'41-4-1', text:'level 3-41-4-1'} +, {id:'41-4-2', text:'level 3-41-4-2'} +, {id:'41-4-3', text:'level 3-41-4-3'} +, {id:'41-4-4', text:'level 3-41-4-4'} +, {id:'41-4-5', text:'level 3-41-4-5'} +, {id:'41-4-6', text:'level 3-41-4-6'} +, {id:'41-4-7', text:'level 3-41-4-7'} +, {id:'41-4-8', text:'level 3-41-4-8'} +, {id:'41-4-9', text:'level 3-41-4-9'} +]} +, {id:'41-5-10', text:'level 2-41-5', item:[ + {id:'41-5-0', text:'level 3-41-5-0'} +, {id:'41-5-1', text:'level 3-41-5-1'} +, {id:'41-5-2', text:'level 3-41-5-2'} +, {id:'41-5-3', text:'level 3-41-5-3'} +, {id:'41-5-4', text:'level 3-41-5-4'} +, {id:'41-5-5', text:'level 3-41-5-5'} +, {id:'41-5-6', text:'level 3-41-5-6'} +, {id:'41-5-7', text:'level 3-41-5-7'} +, {id:'41-5-8', text:'level 3-41-5-8'} +, {id:'41-5-9', text:'level 3-41-5-9'} +]} +, {id:'41-6-10', text:'level 2-41-6', item:[ + {id:'41-6-0', text:'level 3-41-6-0'} +, {id:'41-6-1', text:'level 3-41-6-1'} +, {id:'41-6-2', text:'level 3-41-6-2'} +, {id:'41-6-3', text:'level 3-41-6-3'} +, {id:'41-6-4', text:'level 3-41-6-4'} +, {id:'41-6-5', text:'level 3-41-6-5'} +, {id:'41-6-6', text:'level 3-41-6-6'} +, {id:'41-6-7', text:'level 3-41-6-7'} +, {id:'41-6-8', text:'level 3-41-6-8'} +, {id:'41-6-9', text:'level 3-41-6-9'} +]} +, {id:'41-7-10', text:'level 2-41-7', item:[ + {id:'41-7-0', text:'level 3-41-7-0'} +, {id:'41-7-1', text:'level 3-41-7-1'} +, {id:'41-7-2', text:'level 3-41-7-2'} +, {id:'41-7-3', text:'level 3-41-7-3'} +, {id:'41-7-4', text:'level 3-41-7-4'} +, {id:'41-7-5', text:'level 3-41-7-5'} +, {id:'41-7-6', text:'level 3-41-7-6'} +, {id:'41-7-7', text:'level 3-41-7-7'} +, {id:'41-7-8', text:'level 3-41-7-8'} +, {id:'41-7-9', text:'level 3-41-7-9'} +]} +, {id:'41-8-10', text:'level 2-41-8', item:[ + {id:'41-8-0', text:'level 3-41-8-0'} +, {id:'41-8-1', text:'level 3-41-8-1'} +, {id:'41-8-2', text:'level 3-41-8-2'} +, {id:'41-8-3', text:'level 3-41-8-3'} +, {id:'41-8-4', text:'level 3-41-8-4'} +, {id:'41-8-5', text:'level 3-41-8-5'} +, {id:'41-8-6', text:'level 3-41-8-6'} +, {id:'41-8-7', text:'level 3-41-8-7'} +, {id:'41-8-8', text:'level 3-41-8-8'} +, {id:'41-8-9', text:'level 3-41-8-9'} +]} +, {id:'41-9-10', text:'level 2-41-9', item:[ + {id:'41-9-0', text:'level 3-41-9-0'} +, {id:'41-9-1', text:'level 3-41-9-1'} +, {id:'41-9-2', text:'level 3-41-9-2'} +, {id:'41-9-3', text:'level 3-41-9-3'} +, {id:'41-9-4', text:'level 3-41-9-4'} +, {id:'41-9-5', text:'level 3-41-9-5'} +, {id:'41-9-6', text:'level 3-41-9-6'} +, {id:'41-9-7', text:'level 3-41-9-7'} +, {id:'41-9-8', text:'level 3-41-9-8'} +, {id:'41-9-9', text:'level 3-41-9-9'} +]} +, {id:'41-10-10', text:'level 2-41-10', item:[ + {id:'41-10-0', text:'level 3-41-10-0'} +, {id:'41-10-1', text:'level 3-41-10-1'} +, {id:'41-10-2', text:'level 3-41-10-2'} +, {id:'41-10-3', text:'level 3-41-10-3'} +, {id:'41-10-4', text:'level 3-41-10-4'} +, {id:'41-10-5', text:'level 3-41-10-5'} +, {id:'41-10-6', text:'level 3-41-10-6'} +, {id:'41-10-7', text:'level 3-41-10-7'} +, {id:'41-10-8', text:'level 3-41-10-8'} +, {id:'41-10-9', text:'level 3-41-10-9'} +]} +, {id:'41-11-10', text:'level 2-41-11', item:[ + {id:'41-11-0', text:'level 3-41-11-0'} +, {id:'41-11-1', text:'level 3-41-11-1'} +, {id:'41-11-2', text:'level 3-41-11-2'} +, {id:'41-11-3', text:'level 3-41-11-3'} +, {id:'41-11-4', text:'level 3-41-11-4'} +, {id:'41-11-5', text:'level 3-41-11-5'} +, {id:'41-11-6', text:'level 3-41-11-6'} +, {id:'41-11-7', text:'level 3-41-11-7'} +, {id:'41-11-8', text:'level 3-41-11-8'} +, {id:'41-11-9', text:'level 3-41-11-9'} +]} +, {id:'41-12-10', text:'level 2-41-12', item:[ + {id:'41-12-0', text:'level 3-41-12-0'} +, {id:'41-12-1', text:'level 3-41-12-1'} +, {id:'41-12-2', text:'level 3-41-12-2'} +, {id:'41-12-3', text:'level 3-41-12-3'} +, {id:'41-12-4', text:'level 3-41-12-4'} +, {id:'41-12-5', text:'level 3-41-12-5'} +, {id:'41-12-6', text:'level 3-41-12-6'} +, {id:'41-12-7', text:'level 3-41-12-7'} +, {id:'41-12-8', text:'level 3-41-12-8'} +, {id:'41-12-9', text:'level 3-41-12-9'} +]} +, {id:'41-13-10', text:'level 2-41-13', item:[ + {id:'41-13-0', text:'level 3-41-13-0'} +, {id:'41-13-1', text:'level 3-41-13-1'} +, {id:'41-13-2', text:'level 3-41-13-2'} +, {id:'41-13-3', text:'level 3-41-13-3'} +, {id:'41-13-4', text:'level 3-41-13-4'} +, {id:'41-13-5', text:'level 3-41-13-5'} +, {id:'41-13-6', text:'level 3-41-13-6'} +, {id:'41-13-7', text:'level 3-41-13-7'} +, {id:'41-13-8', text:'level 3-41-13-8'} +, {id:'41-13-9', text:'level 3-41-13-9'} +]} +, {id:'41-14-10', text:'level 2-41-14', item:[ + {id:'41-14-0', text:'level 3-41-14-0'} +, {id:'41-14-1', text:'level 3-41-14-1'} +, {id:'41-14-2', text:'level 3-41-14-2'} +, {id:'41-14-3', text:'level 3-41-14-3'} +, {id:'41-14-4', text:'level 3-41-14-4'} +, {id:'41-14-5', text:'level 3-41-14-5'} +, {id:'41-14-6', text:'level 3-41-14-6'} +, {id:'41-14-7', text:'level 3-41-14-7'} +, {id:'41-14-8', text:'level 3-41-14-8'} +, {id:'41-14-9', text:'level 3-41-14-9'} +]} +, {id:'41-15-10', text:'level 2-41-15', item:[ + {id:'41-15-0', text:'level 3-41-15-0'} +, {id:'41-15-1', text:'level 3-41-15-1'} +, {id:'41-15-2', text:'level 3-41-15-2'} +, {id:'41-15-3', text:'level 3-41-15-3'} +, {id:'41-15-4', text:'level 3-41-15-4'} +, {id:'41-15-5', text:'level 3-41-15-5'} +, {id:'41-15-6', text:'level 3-41-15-6'} +, {id:'41-15-7', text:'level 3-41-15-7'} +, {id:'41-15-8', text:'level 3-41-15-8'} +, {id:'41-15-9', text:'level 3-41-15-9'} +]} +, {id:'41-16-10', text:'level 2-41-16', item:[ + {id:'41-16-0', text:'level 3-41-16-0'} +, {id:'41-16-1', text:'level 3-41-16-1'} +, {id:'41-16-2', text:'level 3-41-16-2'} +, {id:'41-16-3', text:'level 3-41-16-3'} +, {id:'41-16-4', text:'level 3-41-16-4'} +, {id:'41-16-5', text:'level 3-41-16-5'} +, {id:'41-16-6', text:'level 3-41-16-6'} +, {id:'41-16-7', text:'level 3-41-16-7'} +, {id:'41-16-8', text:'level 3-41-16-8'} +, {id:'41-16-9', text:'level 3-41-16-9'} +]} +, {id:'41-17-10', text:'level 2-41-17', item:[ + {id:'41-17-0', text:'level 3-41-17-0'} +, {id:'41-17-1', text:'level 3-41-17-1'} +, {id:'41-17-2', text:'level 3-41-17-2'} +, {id:'41-17-3', text:'level 3-41-17-3'} +, {id:'41-17-4', text:'level 3-41-17-4'} +, {id:'41-17-5', text:'level 3-41-17-5'} +, {id:'41-17-6', text:'level 3-41-17-6'} +, {id:'41-17-7', text:'level 3-41-17-7'} +, {id:'41-17-8', text:'level 3-41-17-8'} +, {id:'41-17-9', text:'level 3-41-17-9'} +]} +, {id:'41-18-10', text:'level 2-41-18', item:[ + {id:'41-18-0', text:'level 3-41-18-0'} +, {id:'41-18-1', text:'level 3-41-18-1'} +, {id:'41-18-2', text:'level 3-41-18-2'} +, {id:'41-18-3', text:'level 3-41-18-3'} +, {id:'41-18-4', text:'level 3-41-18-4'} +, {id:'41-18-5', text:'level 3-41-18-5'} +, {id:'41-18-6', text:'level 3-41-18-6'} +, {id:'41-18-7', text:'level 3-41-18-7'} +, {id:'41-18-8', text:'level 3-41-18-8'} +, {id:'41-18-9', text:'level 3-41-18-9'} +]} +, {id:'41-19-10', text:'level 2-41-19', item:[ + {id:'41-19-0', text:'level 3-41-19-0'} +, {id:'41-19-1', text:'level 3-41-19-1'} +, {id:'41-19-2', text:'level 3-41-19-2'} +, {id:'41-19-3', text:'level 3-41-19-3'} +, {id:'41-19-4', text:'level 3-41-19-4'} +, {id:'41-19-5', text:'level 3-41-19-5'} +, {id:'41-19-6', text:'level 3-41-19-6'} +, {id:'41-19-7', text:'level 3-41-19-7'} +, {id:'41-19-8', text:'level 3-41-19-8'} +, {id:'41-19-9', text:'level 3-41-19-9'} +]} +]} +,{id:'42-20-10', text:'level 1-42', item:[ + {id:'42-0-10', text:'level 2-42-0', item:[ + {id:'42-0-0', text:'level 3-42-0-0'} +, {id:'42-0-1', text:'level 3-42-0-1'} +, {id:'42-0-2', text:'level 3-42-0-2'} +, {id:'42-0-3', text:'level 3-42-0-3'} +, {id:'42-0-4', text:'level 3-42-0-4'} +, {id:'42-0-5', text:'level 3-42-0-5'} +, {id:'42-0-6', text:'level 3-42-0-6'} +, {id:'42-0-7', text:'level 3-42-0-7'} +, {id:'42-0-8', text:'level 3-42-0-8'} +, {id:'42-0-9', text:'level 3-42-0-9'} +]} +, {id:'42-1-10', text:'level 2-42-1', item:[ + {id:'42-1-0', text:'level 3-42-1-0'} +, {id:'42-1-1', text:'level 3-42-1-1'} +, {id:'42-1-2', text:'level 3-42-1-2'} +, {id:'42-1-3', text:'level 3-42-1-3'} +, {id:'42-1-4', text:'level 3-42-1-4'} +, {id:'42-1-5', text:'level 3-42-1-5'} +, {id:'42-1-6', text:'level 3-42-1-6'} +, {id:'42-1-7', text:'level 3-42-1-7'} +, {id:'42-1-8', text:'level 3-42-1-8'} +, {id:'42-1-9', text:'level 3-42-1-9'} +]} +, {id:'42-2-10', text:'level 2-42-2', item:[ + {id:'42-2-0', text:'level 3-42-2-0'} +, {id:'42-2-1', text:'level 3-42-2-1'} +, {id:'42-2-2', text:'level 3-42-2-2'} +, {id:'42-2-3', text:'level 3-42-2-3'} +, {id:'42-2-4', text:'level 3-42-2-4'} +, {id:'42-2-5', text:'level 3-42-2-5'} +, {id:'42-2-6', text:'level 3-42-2-6'} +, {id:'42-2-7', text:'level 3-42-2-7'} +, {id:'42-2-8', text:'level 3-42-2-8'} +, {id:'42-2-9', text:'level 3-42-2-9'} +]} +, {id:'42-3-10', text:'level 2-42-3', item:[ + {id:'42-3-0', text:'level 3-42-3-0'} +, {id:'42-3-1', text:'level 3-42-3-1'} +, {id:'42-3-2', text:'level 3-42-3-2'} +, {id:'42-3-3', text:'level 3-42-3-3'} +, {id:'42-3-4', text:'level 3-42-3-4'} +, {id:'42-3-5', text:'level 3-42-3-5'} +, {id:'42-3-6', text:'level 3-42-3-6'} +, {id:'42-3-7', text:'level 3-42-3-7'} +, {id:'42-3-8', text:'level 3-42-3-8'} +, {id:'42-3-9', text:'level 3-42-3-9'} +]} +, {id:'42-4-10', text:'level 2-42-4', item:[ + {id:'42-4-0', text:'level 3-42-4-0'} +, {id:'42-4-1', text:'level 3-42-4-1'} +, {id:'42-4-2', text:'level 3-42-4-2'} +, {id:'42-4-3', text:'level 3-42-4-3'} +, {id:'42-4-4', text:'level 3-42-4-4'} +, {id:'42-4-5', text:'level 3-42-4-5'} +, {id:'42-4-6', text:'level 3-42-4-6'} +, {id:'42-4-7', text:'level 3-42-4-7'} +, {id:'42-4-8', text:'level 3-42-4-8'} +, {id:'42-4-9', text:'level 3-42-4-9'} +]} +, {id:'42-5-10', text:'level 2-42-5', item:[ + {id:'42-5-0', text:'level 3-42-5-0'} +, {id:'42-5-1', text:'level 3-42-5-1'} +, {id:'42-5-2', text:'level 3-42-5-2'} +, {id:'42-5-3', text:'level 3-42-5-3'} +, {id:'42-5-4', text:'level 3-42-5-4'} +, {id:'42-5-5', text:'level 3-42-5-5'} +, {id:'42-5-6', text:'level 3-42-5-6'} +, {id:'42-5-7', text:'level 3-42-5-7'} +, {id:'42-5-8', text:'level 3-42-5-8'} +, {id:'42-5-9', text:'level 3-42-5-9'} +]} +, {id:'42-6-10', text:'level 2-42-6', item:[ + {id:'42-6-0', text:'level 3-42-6-0'} +, {id:'42-6-1', text:'level 3-42-6-1'} +, {id:'42-6-2', text:'level 3-42-6-2'} +, {id:'42-6-3', text:'level 3-42-6-3'} +, {id:'42-6-4', text:'level 3-42-6-4'} +, {id:'42-6-5', text:'level 3-42-6-5'} +, {id:'42-6-6', text:'level 3-42-6-6'} +, {id:'42-6-7', text:'level 3-42-6-7'} +, {id:'42-6-8', text:'level 3-42-6-8'} +, {id:'42-6-9', text:'level 3-42-6-9'} +]} +, {id:'42-7-10', text:'level 2-42-7', item:[ + {id:'42-7-0', text:'level 3-42-7-0'} +, {id:'42-7-1', text:'level 3-42-7-1'} +, {id:'42-7-2', text:'level 3-42-7-2'} +, {id:'42-7-3', text:'level 3-42-7-3'} +, {id:'42-7-4', text:'level 3-42-7-4'} +, {id:'42-7-5', text:'level 3-42-7-5'} +, {id:'42-7-6', text:'level 3-42-7-6'} +, {id:'42-7-7', text:'level 3-42-7-7'} +, {id:'42-7-8', text:'level 3-42-7-8'} +, {id:'42-7-9', text:'level 3-42-7-9'} +]} +, {id:'42-8-10', text:'level 2-42-8', item:[ + {id:'42-8-0', text:'level 3-42-8-0'} +, {id:'42-8-1', text:'level 3-42-8-1'} +, {id:'42-8-2', text:'level 3-42-8-2'} +, {id:'42-8-3', text:'level 3-42-8-3'} +, {id:'42-8-4', text:'level 3-42-8-4'} +, {id:'42-8-5', text:'level 3-42-8-5'} +, {id:'42-8-6', text:'level 3-42-8-6'} +, {id:'42-8-7', text:'level 3-42-8-7'} +, {id:'42-8-8', text:'level 3-42-8-8'} +, {id:'42-8-9', text:'level 3-42-8-9'} +]} +, {id:'42-9-10', text:'level 2-42-9', item:[ + {id:'42-9-0', text:'level 3-42-9-0'} +, {id:'42-9-1', text:'level 3-42-9-1'} +, {id:'42-9-2', text:'level 3-42-9-2'} +, {id:'42-9-3', text:'level 3-42-9-3'} +, {id:'42-9-4', text:'level 3-42-9-4'} +, {id:'42-9-5', text:'level 3-42-9-5'} +, {id:'42-9-6', text:'level 3-42-9-6'} +, {id:'42-9-7', text:'level 3-42-9-7'} +, {id:'42-9-8', text:'level 3-42-9-8'} +, {id:'42-9-9', text:'level 3-42-9-9'} +]} +, {id:'42-10-10', text:'level 2-42-10', item:[ + {id:'42-10-0', text:'level 3-42-10-0'} +, {id:'42-10-1', text:'level 3-42-10-1'} +, {id:'42-10-2', text:'level 3-42-10-2'} +, {id:'42-10-3', text:'level 3-42-10-3'} +, {id:'42-10-4', text:'level 3-42-10-4'} +, {id:'42-10-5', text:'level 3-42-10-5'} +, {id:'42-10-6', text:'level 3-42-10-6'} +, {id:'42-10-7', text:'level 3-42-10-7'} +, {id:'42-10-8', text:'level 3-42-10-8'} +, {id:'42-10-9', text:'level 3-42-10-9'} +]} +, {id:'42-11-10', text:'level 2-42-11', item:[ + {id:'42-11-0', text:'level 3-42-11-0'} +, {id:'42-11-1', text:'level 3-42-11-1'} +, {id:'42-11-2', text:'level 3-42-11-2'} +, {id:'42-11-3', text:'level 3-42-11-3'} +, {id:'42-11-4', text:'level 3-42-11-4'} +, {id:'42-11-5', text:'level 3-42-11-5'} +, {id:'42-11-6', text:'level 3-42-11-6'} +, {id:'42-11-7', text:'level 3-42-11-7'} +, {id:'42-11-8', text:'level 3-42-11-8'} +, {id:'42-11-9', text:'level 3-42-11-9'} +]} +, {id:'42-12-10', text:'level 2-42-12', item:[ + {id:'42-12-0', text:'level 3-42-12-0'} +, {id:'42-12-1', text:'level 3-42-12-1'} +, {id:'42-12-2', text:'level 3-42-12-2'} +, {id:'42-12-3', text:'level 3-42-12-3'} +, {id:'42-12-4', text:'level 3-42-12-4'} +, {id:'42-12-5', text:'level 3-42-12-5'} +, {id:'42-12-6', text:'level 3-42-12-6'} +, {id:'42-12-7', text:'level 3-42-12-7'} +, {id:'42-12-8', text:'level 3-42-12-8'} +, {id:'42-12-9', text:'level 3-42-12-9'} +]} +, {id:'42-13-10', text:'level 2-42-13', item:[ + {id:'42-13-0', text:'level 3-42-13-0'} +, {id:'42-13-1', text:'level 3-42-13-1'} +, {id:'42-13-2', text:'level 3-42-13-2'} +, {id:'42-13-3', text:'level 3-42-13-3'} +, {id:'42-13-4', text:'level 3-42-13-4'} +, {id:'42-13-5', text:'level 3-42-13-5'} +, {id:'42-13-6', text:'level 3-42-13-6'} +, {id:'42-13-7', text:'level 3-42-13-7'} +, {id:'42-13-8', text:'level 3-42-13-8'} +, {id:'42-13-9', text:'level 3-42-13-9'} +]} +, {id:'42-14-10', text:'level 2-42-14', item:[ + {id:'42-14-0', text:'level 3-42-14-0'} +, {id:'42-14-1', text:'level 3-42-14-1'} +, {id:'42-14-2', text:'level 3-42-14-2'} +, {id:'42-14-3', text:'level 3-42-14-3'} +, {id:'42-14-4', text:'level 3-42-14-4'} +, {id:'42-14-5', text:'level 3-42-14-5'} +, {id:'42-14-6', text:'level 3-42-14-6'} +, {id:'42-14-7', text:'level 3-42-14-7'} +, {id:'42-14-8', text:'level 3-42-14-8'} +, {id:'42-14-9', text:'level 3-42-14-9'} +]} +, {id:'42-15-10', text:'level 2-42-15', item:[ + {id:'42-15-0', text:'level 3-42-15-0'} +, {id:'42-15-1', text:'level 3-42-15-1'} +, {id:'42-15-2', text:'level 3-42-15-2'} +, {id:'42-15-3', text:'level 3-42-15-3'} +, {id:'42-15-4', text:'level 3-42-15-4'} +, {id:'42-15-5', text:'level 3-42-15-5'} +, {id:'42-15-6', text:'level 3-42-15-6'} +, {id:'42-15-7', text:'level 3-42-15-7'} +, {id:'42-15-8', text:'level 3-42-15-8'} +, {id:'42-15-9', text:'level 3-42-15-9'} +]} +, {id:'42-16-10', text:'level 2-42-16', item:[ + {id:'42-16-0', text:'level 3-42-16-0'} +, {id:'42-16-1', text:'level 3-42-16-1'} +, {id:'42-16-2', text:'level 3-42-16-2'} +, {id:'42-16-3', text:'level 3-42-16-3'} +, {id:'42-16-4', text:'level 3-42-16-4'} +, {id:'42-16-5', text:'level 3-42-16-5'} +, {id:'42-16-6', text:'level 3-42-16-6'} +, {id:'42-16-7', text:'level 3-42-16-7'} +, {id:'42-16-8', text:'level 3-42-16-8'} +, {id:'42-16-9', text:'level 3-42-16-9'} +]} +, {id:'42-17-10', text:'level 2-42-17', item:[ + {id:'42-17-0', text:'level 3-42-17-0'} +, {id:'42-17-1', text:'level 3-42-17-1'} +, {id:'42-17-2', text:'level 3-42-17-2'} +, {id:'42-17-3', text:'level 3-42-17-3'} +, {id:'42-17-4', text:'level 3-42-17-4'} +, {id:'42-17-5', text:'level 3-42-17-5'} +, {id:'42-17-6', text:'level 3-42-17-6'} +, {id:'42-17-7', text:'level 3-42-17-7'} +, {id:'42-17-8', text:'level 3-42-17-8'} +, {id:'42-17-9', text:'level 3-42-17-9'} +]} +, {id:'42-18-10', text:'level 2-42-18', item:[ + {id:'42-18-0', text:'level 3-42-18-0'} +, {id:'42-18-1', text:'level 3-42-18-1'} +, {id:'42-18-2', text:'level 3-42-18-2'} +, {id:'42-18-3', text:'level 3-42-18-3'} +, {id:'42-18-4', text:'level 3-42-18-4'} +, {id:'42-18-5', text:'level 3-42-18-5'} +, {id:'42-18-6', text:'level 3-42-18-6'} +, {id:'42-18-7', text:'level 3-42-18-7'} +, {id:'42-18-8', text:'level 3-42-18-8'} +, {id:'42-18-9', text:'level 3-42-18-9'} +]} +, {id:'42-19-10', text:'level 2-42-19', item:[ + {id:'42-19-0', text:'level 3-42-19-0'} +, {id:'42-19-1', text:'level 3-42-19-1'} +, {id:'42-19-2', text:'level 3-42-19-2'} +, {id:'42-19-3', text:'level 3-42-19-3'} +, {id:'42-19-4', text:'level 3-42-19-4'} +, {id:'42-19-5', text:'level 3-42-19-5'} +, {id:'42-19-6', text:'level 3-42-19-6'} +, {id:'42-19-7', text:'level 3-42-19-7'} +, {id:'42-19-8', text:'level 3-42-19-8'} +, {id:'42-19-9', text:'level 3-42-19-9'} +]} +]} +,{id:'43-20-10', text:'level 1-43', item:[ + {id:'43-0-10', text:'level 2-43-0', item:[ + {id:'43-0-0', text:'level 3-43-0-0'} +, {id:'43-0-1', text:'level 3-43-0-1'} +, {id:'43-0-2', text:'level 3-43-0-2'} +, {id:'43-0-3', text:'level 3-43-0-3'} +, {id:'43-0-4', text:'level 3-43-0-4'} +, {id:'43-0-5', text:'level 3-43-0-5'} +, {id:'43-0-6', text:'level 3-43-0-6'} +, {id:'43-0-7', text:'level 3-43-0-7'} +, {id:'43-0-8', text:'level 3-43-0-8'} +, {id:'43-0-9', text:'level 3-43-0-9'} +]} +, {id:'43-1-10', text:'level 2-43-1', item:[ + {id:'43-1-0', text:'level 3-43-1-0'} +, {id:'43-1-1', text:'level 3-43-1-1'} +, {id:'43-1-2', text:'level 3-43-1-2'} +, {id:'43-1-3', text:'level 3-43-1-3'} +, {id:'43-1-4', text:'level 3-43-1-4'} +, {id:'43-1-5', text:'level 3-43-1-5'} +, {id:'43-1-6', text:'level 3-43-1-6'} +, {id:'43-1-7', text:'level 3-43-1-7'} +, {id:'43-1-8', text:'level 3-43-1-8'} +, {id:'43-1-9', text:'level 3-43-1-9'} +]} +, {id:'43-2-10', text:'level 2-43-2', item:[ + {id:'43-2-0', text:'level 3-43-2-0'} +, {id:'43-2-1', text:'level 3-43-2-1'} +, {id:'43-2-2', text:'level 3-43-2-2'} +, {id:'43-2-3', text:'level 3-43-2-3'} +, {id:'43-2-4', text:'level 3-43-2-4'} +, {id:'43-2-5', text:'level 3-43-2-5'} +, {id:'43-2-6', text:'level 3-43-2-6'} +, {id:'43-2-7', text:'level 3-43-2-7'} +, {id:'43-2-8', text:'level 3-43-2-8'} +, {id:'43-2-9', text:'level 3-43-2-9'} +]} +, {id:'43-3-10', text:'level 2-43-3', item:[ + {id:'43-3-0', text:'level 3-43-3-0'} +, {id:'43-3-1', text:'level 3-43-3-1'} +, {id:'43-3-2', text:'level 3-43-3-2'} +, {id:'43-3-3', text:'level 3-43-3-3'} +, {id:'43-3-4', text:'level 3-43-3-4'} +, {id:'43-3-5', text:'level 3-43-3-5'} +, {id:'43-3-6', text:'level 3-43-3-6'} +, {id:'43-3-7', text:'level 3-43-3-7'} +, {id:'43-3-8', text:'level 3-43-3-8'} +, {id:'43-3-9', text:'level 3-43-3-9'} +]} +, {id:'43-4-10', text:'level 2-43-4', item:[ + {id:'43-4-0', text:'level 3-43-4-0'} +, {id:'43-4-1', text:'level 3-43-4-1'} +, {id:'43-4-2', text:'level 3-43-4-2'} +, {id:'43-4-3', text:'level 3-43-4-3'} +, {id:'43-4-4', text:'level 3-43-4-4'} +, {id:'43-4-5', text:'level 3-43-4-5'} +, {id:'43-4-6', text:'level 3-43-4-6'} +, {id:'43-4-7', text:'level 3-43-4-7'} +, {id:'43-4-8', text:'level 3-43-4-8'} +, {id:'43-4-9', text:'level 3-43-4-9'} +]} +, {id:'43-5-10', text:'level 2-43-5', item:[ + {id:'43-5-0', text:'level 3-43-5-0'} +, {id:'43-5-1', text:'level 3-43-5-1'} +, {id:'43-5-2', text:'level 3-43-5-2'} +, {id:'43-5-3', text:'level 3-43-5-3'} +, {id:'43-5-4', text:'level 3-43-5-4'} +, {id:'43-5-5', text:'level 3-43-5-5'} +, {id:'43-5-6', text:'level 3-43-5-6'} +, {id:'43-5-7', text:'level 3-43-5-7'} +, {id:'43-5-8', text:'level 3-43-5-8'} +, {id:'43-5-9', text:'level 3-43-5-9'} +]} +, {id:'43-6-10', text:'level 2-43-6', item:[ + {id:'43-6-0', text:'level 3-43-6-0'} +, {id:'43-6-1', text:'level 3-43-6-1'} +, {id:'43-6-2', text:'level 3-43-6-2'} +, {id:'43-6-3', text:'level 3-43-6-3'} +, {id:'43-6-4', text:'level 3-43-6-4'} +, {id:'43-6-5', text:'level 3-43-6-5'} +, {id:'43-6-6', text:'level 3-43-6-6'} +, {id:'43-6-7', text:'level 3-43-6-7'} +, {id:'43-6-8', text:'level 3-43-6-8'} +, {id:'43-6-9', text:'level 3-43-6-9'} +]} +, {id:'43-7-10', text:'level 2-43-7', item:[ + {id:'43-7-0', text:'level 3-43-7-0'} +, {id:'43-7-1', text:'level 3-43-7-1'} +, {id:'43-7-2', text:'level 3-43-7-2'} +, {id:'43-7-3', text:'level 3-43-7-3'} +, {id:'43-7-4', text:'level 3-43-7-4'} +, {id:'43-7-5', text:'level 3-43-7-5'} +, {id:'43-7-6', text:'level 3-43-7-6'} +, {id:'43-7-7', text:'level 3-43-7-7'} +, {id:'43-7-8', text:'level 3-43-7-8'} +, {id:'43-7-9', text:'level 3-43-7-9'} +]} +, {id:'43-8-10', text:'level 2-43-8', item:[ + {id:'43-8-0', text:'level 3-43-8-0'} +, {id:'43-8-1', text:'level 3-43-8-1'} +, {id:'43-8-2', text:'level 3-43-8-2'} +, {id:'43-8-3', text:'level 3-43-8-3'} +, {id:'43-8-4', text:'level 3-43-8-4'} +, {id:'43-8-5', text:'level 3-43-8-5'} +, {id:'43-8-6', text:'level 3-43-8-6'} +, {id:'43-8-7', text:'level 3-43-8-7'} +, {id:'43-8-8', text:'level 3-43-8-8'} +, {id:'43-8-9', text:'level 3-43-8-9'} +]} +, {id:'43-9-10', text:'level 2-43-9', item:[ + {id:'43-9-0', text:'level 3-43-9-0'} +, {id:'43-9-1', text:'level 3-43-9-1'} +, {id:'43-9-2', text:'level 3-43-9-2'} +, {id:'43-9-3', text:'level 3-43-9-3'} +, {id:'43-9-4', text:'level 3-43-9-4'} +, {id:'43-9-5', text:'level 3-43-9-5'} +, {id:'43-9-6', text:'level 3-43-9-6'} +, {id:'43-9-7', text:'level 3-43-9-7'} +, {id:'43-9-8', text:'level 3-43-9-8'} +, {id:'43-9-9', text:'level 3-43-9-9'} +]} +, {id:'43-10-10', text:'level 2-43-10', item:[ + {id:'43-10-0', text:'level 3-43-10-0'} +, {id:'43-10-1', text:'level 3-43-10-1'} +, {id:'43-10-2', text:'level 3-43-10-2'} +, {id:'43-10-3', text:'level 3-43-10-3'} +, {id:'43-10-4', text:'level 3-43-10-4'} +, {id:'43-10-5', text:'level 3-43-10-5'} +, {id:'43-10-6', text:'level 3-43-10-6'} +, {id:'43-10-7', text:'level 3-43-10-7'} +, {id:'43-10-8', text:'level 3-43-10-8'} +, {id:'43-10-9', text:'level 3-43-10-9'} +]} +, {id:'43-11-10', text:'level 2-43-11', item:[ + {id:'43-11-0', text:'level 3-43-11-0'} +, {id:'43-11-1', text:'level 3-43-11-1'} +, {id:'43-11-2', text:'level 3-43-11-2'} +, {id:'43-11-3', text:'level 3-43-11-3'} +, {id:'43-11-4', text:'level 3-43-11-4'} +, {id:'43-11-5', text:'level 3-43-11-5'} +, {id:'43-11-6', text:'level 3-43-11-6'} +, {id:'43-11-7', text:'level 3-43-11-7'} +, {id:'43-11-8', text:'level 3-43-11-8'} +, {id:'43-11-9', text:'level 3-43-11-9'} +]} +, {id:'43-12-10', text:'level 2-43-12', item:[ + {id:'43-12-0', text:'level 3-43-12-0'} +, {id:'43-12-1', text:'level 3-43-12-1'} +, {id:'43-12-2', text:'level 3-43-12-2'} +, {id:'43-12-3', text:'level 3-43-12-3'} +, {id:'43-12-4', text:'level 3-43-12-4'} +, {id:'43-12-5', text:'level 3-43-12-5'} +, {id:'43-12-6', text:'level 3-43-12-6'} +, {id:'43-12-7', text:'level 3-43-12-7'} +, {id:'43-12-8', text:'level 3-43-12-8'} +, {id:'43-12-9', text:'level 3-43-12-9'} +]} +, {id:'43-13-10', text:'level 2-43-13', item:[ + {id:'43-13-0', text:'level 3-43-13-0'} +, {id:'43-13-1', text:'level 3-43-13-1'} +, {id:'43-13-2', text:'level 3-43-13-2'} +, {id:'43-13-3', text:'level 3-43-13-3'} +, {id:'43-13-4', text:'level 3-43-13-4'} +, {id:'43-13-5', text:'level 3-43-13-5'} +, {id:'43-13-6', text:'level 3-43-13-6'} +, {id:'43-13-7', text:'level 3-43-13-7'} +, {id:'43-13-8', text:'level 3-43-13-8'} +, {id:'43-13-9', text:'level 3-43-13-9'} +]} +, {id:'43-14-10', text:'level 2-43-14', item:[ + {id:'43-14-0', text:'level 3-43-14-0'} +, {id:'43-14-1', text:'level 3-43-14-1'} +, {id:'43-14-2', text:'level 3-43-14-2'} +, {id:'43-14-3', text:'level 3-43-14-3'} +, {id:'43-14-4', text:'level 3-43-14-4'} +, {id:'43-14-5', text:'level 3-43-14-5'} +, {id:'43-14-6', text:'level 3-43-14-6'} +, {id:'43-14-7', text:'level 3-43-14-7'} +, {id:'43-14-8', text:'level 3-43-14-8'} +, {id:'43-14-9', text:'level 3-43-14-9'} +]} +, {id:'43-15-10', text:'level 2-43-15', item:[ + {id:'43-15-0', text:'level 3-43-15-0'} +, {id:'43-15-1', text:'level 3-43-15-1'} +, {id:'43-15-2', text:'level 3-43-15-2'} +, {id:'43-15-3', text:'level 3-43-15-3'} +, {id:'43-15-4', text:'level 3-43-15-4'} +, {id:'43-15-5', text:'level 3-43-15-5'} +, {id:'43-15-6', text:'level 3-43-15-6'} +, {id:'43-15-7', text:'level 3-43-15-7'} +, {id:'43-15-8', text:'level 3-43-15-8'} +, {id:'43-15-9', text:'level 3-43-15-9'} +]} +, {id:'43-16-10', text:'level 2-43-16', item:[ + {id:'43-16-0', text:'level 3-43-16-0'} +, {id:'43-16-1', text:'level 3-43-16-1'} +, {id:'43-16-2', text:'level 3-43-16-2'} +, {id:'43-16-3', text:'level 3-43-16-3'} +, {id:'43-16-4', text:'level 3-43-16-4'} +, {id:'43-16-5', text:'level 3-43-16-5'} +, {id:'43-16-6', text:'level 3-43-16-6'} +, {id:'43-16-7', text:'level 3-43-16-7'} +, {id:'43-16-8', text:'level 3-43-16-8'} +, {id:'43-16-9', text:'level 3-43-16-9'} +]} +, {id:'43-17-10', text:'level 2-43-17', item:[ + {id:'43-17-0', text:'level 3-43-17-0'} +, {id:'43-17-1', text:'level 3-43-17-1'} +, {id:'43-17-2', text:'level 3-43-17-2'} +, {id:'43-17-3', text:'level 3-43-17-3'} +, {id:'43-17-4', text:'level 3-43-17-4'} +, {id:'43-17-5', text:'level 3-43-17-5'} +, {id:'43-17-6', text:'level 3-43-17-6'} +, {id:'43-17-7', text:'level 3-43-17-7'} +, {id:'43-17-8', text:'level 3-43-17-8'} +, {id:'43-17-9', text:'level 3-43-17-9'} +]} +, {id:'43-18-10', text:'level 2-43-18', item:[ + {id:'43-18-0', text:'level 3-43-18-0'} +, {id:'43-18-1', text:'level 3-43-18-1'} +, {id:'43-18-2', text:'level 3-43-18-2'} +, {id:'43-18-3', text:'level 3-43-18-3'} +, {id:'43-18-4', text:'level 3-43-18-4'} +, {id:'43-18-5', text:'level 3-43-18-5'} +, {id:'43-18-6', text:'level 3-43-18-6'} +, {id:'43-18-7', text:'level 3-43-18-7'} +, {id:'43-18-8', text:'level 3-43-18-8'} +, {id:'43-18-9', text:'level 3-43-18-9'} +]} +, {id:'43-19-10', text:'level 2-43-19', item:[ + {id:'43-19-0', text:'level 3-43-19-0'} +, {id:'43-19-1', text:'level 3-43-19-1'} +, {id:'43-19-2', text:'level 3-43-19-2'} +, {id:'43-19-3', text:'level 3-43-19-3'} +, {id:'43-19-4', text:'level 3-43-19-4'} +, {id:'43-19-5', text:'level 3-43-19-5'} +, {id:'43-19-6', text:'level 3-43-19-6'} +, {id:'43-19-7', text:'level 3-43-19-7'} +, {id:'43-19-8', text:'level 3-43-19-8'} +, {id:'43-19-9', text:'level 3-43-19-9'} +]} +]} +,{id:'44-20-10', text:'level 1-44', item:[ + {id:'44-0-10', text:'level 2-44-0', item:[ + {id:'44-0-0', text:'level 3-44-0-0'} +, {id:'44-0-1', text:'level 3-44-0-1'} +, {id:'44-0-2', text:'level 3-44-0-2'} +, {id:'44-0-3', text:'level 3-44-0-3'} +, {id:'44-0-4', text:'level 3-44-0-4'} +, {id:'44-0-5', text:'level 3-44-0-5'} +, {id:'44-0-6', text:'level 3-44-0-6'} +, {id:'44-0-7', text:'level 3-44-0-7'} +, {id:'44-0-8', text:'level 3-44-0-8'} +, {id:'44-0-9', text:'level 3-44-0-9'} +]} +, {id:'44-1-10', text:'level 2-44-1', item:[ + {id:'44-1-0', text:'level 3-44-1-0'} +, {id:'44-1-1', text:'level 3-44-1-1'} +, {id:'44-1-2', text:'level 3-44-1-2'} +, {id:'44-1-3', text:'level 3-44-1-3'} +, {id:'44-1-4', text:'level 3-44-1-4'} +, {id:'44-1-5', text:'level 3-44-1-5'} +, {id:'44-1-6', text:'level 3-44-1-6'} +, {id:'44-1-7', text:'level 3-44-1-7'} +, {id:'44-1-8', text:'level 3-44-1-8'} +, {id:'44-1-9', text:'level 3-44-1-9'} +]} +, {id:'44-2-10', text:'level 2-44-2', item:[ + {id:'44-2-0', text:'level 3-44-2-0'} +, {id:'44-2-1', text:'level 3-44-2-1'} +, {id:'44-2-2', text:'level 3-44-2-2'} +, {id:'44-2-3', text:'level 3-44-2-3'} +, {id:'44-2-4', text:'level 3-44-2-4'} +, {id:'44-2-5', text:'level 3-44-2-5'} +, {id:'44-2-6', text:'level 3-44-2-6'} +, {id:'44-2-7', text:'level 3-44-2-7'} +, {id:'44-2-8', text:'level 3-44-2-8'} +, {id:'44-2-9', text:'level 3-44-2-9'} +]} +, {id:'44-3-10', text:'level 2-44-3', item:[ + {id:'44-3-0', text:'level 3-44-3-0'} +, {id:'44-3-1', text:'level 3-44-3-1'} +, {id:'44-3-2', text:'level 3-44-3-2'} +, {id:'44-3-3', text:'level 3-44-3-3'} +, {id:'44-3-4', text:'level 3-44-3-4'} +, {id:'44-3-5', text:'level 3-44-3-5'} +, {id:'44-3-6', text:'level 3-44-3-6'} +, {id:'44-3-7', text:'level 3-44-3-7'} +, {id:'44-3-8', text:'level 3-44-3-8'} +, {id:'44-3-9', text:'level 3-44-3-9'} +]} +, {id:'44-4-10', text:'level 2-44-4', item:[ + {id:'44-4-0', text:'level 3-44-4-0'} +, {id:'44-4-1', text:'level 3-44-4-1'} +, {id:'44-4-2', text:'level 3-44-4-2'} +, {id:'44-4-3', text:'level 3-44-4-3'} +, {id:'44-4-4', text:'level 3-44-4-4'} +, {id:'44-4-5', text:'level 3-44-4-5'} +, {id:'44-4-6', text:'level 3-44-4-6'} +, {id:'44-4-7', text:'level 3-44-4-7'} +, {id:'44-4-8', text:'level 3-44-4-8'} +, {id:'44-4-9', text:'level 3-44-4-9'} +]} +, {id:'44-5-10', text:'level 2-44-5', item:[ + {id:'44-5-0', text:'level 3-44-5-0'} +, {id:'44-5-1', text:'level 3-44-5-1'} +, {id:'44-5-2', text:'level 3-44-5-2'} +, {id:'44-5-3', text:'level 3-44-5-3'} +, {id:'44-5-4', text:'level 3-44-5-4'} +, {id:'44-5-5', text:'level 3-44-5-5'} +, {id:'44-5-6', text:'level 3-44-5-6'} +, {id:'44-5-7', text:'level 3-44-5-7'} +, {id:'44-5-8', text:'level 3-44-5-8'} +, {id:'44-5-9', text:'level 3-44-5-9'} +]} +, {id:'44-6-10', text:'level 2-44-6', item:[ + {id:'44-6-0', text:'level 3-44-6-0'} +, {id:'44-6-1', text:'level 3-44-6-1'} +, {id:'44-6-2', text:'level 3-44-6-2'} +, {id:'44-6-3', text:'level 3-44-6-3'} +, {id:'44-6-4', text:'level 3-44-6-4'} +, {id:'44-6-5', text:'level 3-44-6-5'} +, {id:'44-6-6', text:'level 3-44-6-6'} +, {id:'44-6-7', text:'level 3-44-6-7'} +, {id:'44-6-8', text:'level 3-44-6-8'} +, {id:'44-6-9', text:'level 3-44-6-9'} +]} +, {id:'44-7-10', text:'level 2-44-7', item:[ + {id:'44-7-0', text:'level 3-44-7-0'} +, {id:'44-7-1', text:'level 3-44-7-1'} +, {id:'44-7-2', text:'level 3-44-7-2'} +, {id:'44-7-3', text:'level 3-44-7-3'} +, {id:'44-7-4', text:'level 3-44-7-4'} +, {id:'44-7-5', text:'level 3-44-7-5'} +, {id:'44-7-6', text:'level 3-44-7-6'} +, {id:'44-7-7', text:'level 3-44-7-7'} +, {id:'44-7-8', text:'level 3-44-7-8'} +, {id:'44-7-9', text:'level 3-44-7-9'} +]} +, {id:'44-8-10', text:'level 2-44-8', item:[ + {id:'44-8-0', text:'level 3-44-8-0'} +, {id:'44-8-1', text:'level 3-44-8-1'} +, {id:'44-8-2', text:'level 3-44-8-2'} +, {id:'44-8-3', text:'level 3-44-8-3'} +, {id:'44-8-4', text:'level 3-44-8-4'} +, {id:'44-8-5', text:'level 3-44-8-5'} +, {id:'44-8-6', text:'level 3-44-8-6'} +, {id:'44-8-7', text:'level 3-44-8-7'} +, {id:'44-8-8', text:'level 3-44-8-8'} +, {id:'44-8-9', text:'level 3-44-8-9'} +]} +, {id:'44-9-10', text:'level 2-44-9', item:[ + {id:'44-9-0', text:'level 3-44-9-0'} +, {id:'44-9-1', text:'level 3-44-9-1'} +, {id:'44-9-2', text:'level 3-44-9-2'} +, {id:'44-9-3', text:'level 3-44-9-3'} +, {id:'44-9-4', text:'level 3-44-9-4'} +, {id:'44-9-5', text:'level 3-44-9-5'} +, {id:'44-9-6', text:'level 3-44-9-6'} +, {id:'44-9-7', text:'level 3-44-9-7'} +, {id:'44-9-8', text:'level 3-44-9-8'} +, {id:'44-9-9', text:'level 3-44-9-9'} +]} +, {id:'44-10-10', text:'level 2-44-10', item:[ + {id:'44-10-0', text:'level 3-44-10-0'} +, {id:'44-10-1', text:'level 3-44-10-1'} +, {id:'44-10-2', text:'level 3-44-10-2'} +, {id:'44-10-3', text:'level 3-44-10-3'} +, {id:'44-10-4', text:'level 3-44-10-4'} +, {id:'44-10-5', text:'level 3-44-10-5'} +, {id:'44-10-6', text:'level 3-44-10-6'} +, {id:'44-10-7', text:'level 3-44-10-7'} +, {id:'44-10-8', text:'level 3-44-10-8'} +, {id:'44-10-9', text:'level 3-44-10-9'} +]} +, {id:'44-11-10', text:'level 2-44-11', item:[ + {id:'44-11-0', text:'level 3-44-11-0'} +, {id:'44-11-1', text:'level 3-44-11-1'} +, {id:'44-11-2', text:'level 3-44-11-2'} +, {id:'44-11-3', text:'level 3-44-11-3'} +, {id:'44-11-4', text:'level 3-44-11-4'} +, {id:'44-11-5', text:'level 3-44-11-5'} +, {id:'44-11-6', text:'level 3-44-11-6'} +, {id:'44-11-7', text:'level 3-44-11-7'} +, {id:'44-11-8', text:'level 3-44-11-8'} +, {id:'44-11-9', text:'level 3-44-11-9'} +]} +, {id:'44-12-10', text:'level 2-44-12', item:[ + {id:'44-12-0', text:'level 3-44-12-0'} +, {id:'44-12-1', text:'level 3-44-12-1'} +, {id:'44-12-2', text:'level 3-44-12-2'} +, {id:'44-12-3', text:'level 3-44-12-3'} +, {id:'44-12-4', text:'level 3-44-12-4'} +, {id:'44-12-5', text:'level 3-44-12-5'} +, {id:'44-12-6', text:'level 3-44-12-6'} +, {id:'44-12-7', text:'level 3-44-12-7'} +, {id:'44-12-8', text:'level 3-44-12-8'} +, {id:'44-12-9', text:'level 3-44-12-9'} +]} +, {id:'44-13-10', text:'level 2-44-13', item:[ + {id:'44-13-0', text:'level 3-44-13-0'} +, {id:'44-13-1', text:'level 3-44-13-1'} +, {id:'44-13-2', text:'level 3-44-13-2'} +, {id:'44-13-3', text:'level 3-44-13-3'} +, {id:'44-13-4', text:'level 3-44-13-4'} +, {id:'44-13-5', text:'level 3-44-13-5'} +, {id:'44-13-6', text:'level 3-44-13-6'} +, {id:'44-13-7', text:'level 3-44-13-7'} +, {id:'44-13-8', text:'level 3-44-13-8'} +, {id:'44-13-9', text:'level 3-44-13-9'} +]} +, {id:'44-14-10', text:'level 2-44-14', item:[ + {id:'44-14-0', text:'level 3-44-14-0'} +, {id:'44-14-1', text:'level 3-44-14-1'} +, {id:'44-14-2', text:'level 3-44-14-2'} +, {id:'44-14-3', text:'level 3-44-14-3'} +, {id:'44-14-4', text:'level 3-44-14-4'} +, {id:'44-14-5', text:'level 3-44-14-5'} +, {id:'44-14-6', text:'level 3-44-14-6'} +, {id:'44-14-7', text:'level 3-44-14-7'} +, {id:'44-14-8', text:'level 3-44-14-8'} +, {id:'44-14-9', text:'level 3-44-14-9'} +]} +, {id:'44-15-10', text:'level 2-44-15', item:[ + {id:'44-15-0', text:'level 3-44-15-0'} +, {id:'44-15-1', text:'level 3-44-15-1'} +, {id:'44-15-2', text:'level 3-44-15-2'} +, {id:'44-15-3', text:'level 3-44-15-3'} +, {id:'44-15-4', text:'level 3-44-15-4'} +, {id:'44-15-5', text:'level 3-44-15-5'} +, {id:'44-15-6', text:'level 3-44-15-6'} +, {id:'44-15-7', text:'level 3-44-15-7'} +, {id:'44-15-8', text:'level 3-44-15-8'} +, {id:'44-15-9', text:'level 3-44-15-9'} +]} +, {id:'44-16-10', text:'level 2-44-16', item:[ + {id:'44-16-0', text:'level 3-44-16-0'} +, {id:'44-16-1', text:'level 3-44-16-1'} +, {id:'44-16-2', text:'level 3-44-16-2'} +, {id:'44-16-3', text:'level 3-44-16-3'} +, {id:'44-16-4', text:'level 3-44-16-4'} +, {id:'44-16-5', text:'level 3-44-16-5'} +, {id:'44-16-6', text:'level 3-44-16-6'} +, {id:'44-16-7', text:'level 3-44-16-7'} +, {id:'44-16-8', text:'level 3-44-16-8'} +, {id:'44-16-9', text:'level 3-44-16-9'} +]} +, {id:'44-17-10', text:'level 2-44-17', item:[ + {id:'44-17-0', text:'level 3-44-17-0'} +, {id:'44-17-1', text:'level 3-44-17-1'} +, {id:'44-17-2', text:'level 3-44-17-2'} +, {id:'44-17-3', text:'level 3-44-17-3'} +, {id:'44-17-4', text:'level 3-44-17-4'} +, {id:'44-17-5', text:'level 3-44-17-5'} +, {id:'44-17-6', text:'level 3-44-17-6'} +, {id:'44-17-7', text:'level 3-44-17-7'} +, {id:'44-17-8', text:'level 3-44-17-8'} +, {id:'44-17-9', text:'level 3-44-17-9'} +]} +, {id:'44-18-10', text:'level 2-44-18', item:[ + {id:'44-18-0', text:'level 3-44-18-0'} +, {id:'44-18-1', text:'level 3-44-18-1'} +, {id:'44-18-2', text:'level 3-44-18-2'} +, {id:'44-18-3', text:'level 3-44-18-3'} +, {id:'44-18-4', text:'level 3-44-18-4'} +, {id:'44-18-5', text:'level 3-44-18-5'} +, {id:'44-18-6', text:'level 3-44-18-6'} +, {id:'44-18-7', text:'level 3-44-18-7'} +, {id:'44-18-8', text:'level 3-44-18-8'} +, {id:'44-18-9', text:'level 3-44-18-9'} +]} +, {id:'44-19-10', text:'level 2-44-19', item:[ + {id:'44-19-0', text:'level 3-44-19-0'} +, {id:'44-19-1', text:'level 3-44-19-1'} +, {id:'44-19-2', text:'level 3-44-19-2'} +, {id:'44-19-3', text:'level 3-44-19-3'} +, {id:'44-19-4', text:'level 3-44-19-4'} +, {id:'44-19-5', text:'level 3-44-19-5'} +, {id:'44-19-6', text:'level 3-44-19-6'} +, {id:'44-19-7', text:'level 3-44-19-7'} +, {id:'44-19-8', text:'level 3-44-19-8'} +, {id:'44-19-9', text:'level 3-44-19-9'} +]} +]} +,{id:'45-20-10', text:'level 1-45', item:[ + {id:'45-0-10', text:'level 2-45-0', item:[ + {id:'45-0-0', text:'level 3-45-0-0'} +, {id:'45-0-1', text:'level 3-45-0-1'} +, {id:'45-0-2', text:'level 3-45-0-2'} +, {id:'45-0-3', text:'level 3-45-0-3'} +, {id:'45-0-4', text:'level 3-45-0-4'} +, {id:'45-0-5', text:'level 3-45-0-5'} +, {id:'45-0-6', text:'level 3-45-0-6'} +, {id:'45-0-7', text:'level 3-45-0-7'} +, {id:'45-0-8', text:'level 3-45-0-8'} +, {id:'45-0-9', text:'level 3-45-0-9'} +]} +, {id:'45-1-10', text:'level 2-45-1', item:[ + {id:'45-1-0', text:'level 3-45-1-0'} +, {id:'45-1-1', text:'level 3-45-1-1'} +, {id:'45-1-2', text:'level 3-45-1-2'} +, {id:'45-1-3', text:'level 3-45-1-3'} +, {id:'45-1-4', text:'level 3-45-1-4'} +, {id:'45-1-5', text:'level 3-45-1-5'} +, {id:'45-1-6', text:'level 3-45-1-6'} +, {id:'45-1-7', text:'level 3-45-1-7'} +, {id:'45-1-8', text:'level 3-45-1-8'} +, {id:'45-1-9', text:'level 3-45-1-9'} +]} +, {id:'45-2-10', text:'level 2-45-2', item:[ + {id:'45-2-0', text:'level 3-45-2-0'} +, {id:'45-2-1', text:'level 3-45-2-1'} +, {id:'45-2-2', text:'level 3-45-2-2'} +, {id:'45-2-3', text:'level 3-45-2-3'} +, {id:'45-2-4', text:'level 3-45-2-4'} +, {id:'45-2-5', text:'level 3-45-2-5'} +, {id:'45-2-6', text:'level 3-45-2-6'} +, {id:'45-2-7', text:'level 3-45-2-7'} +, {id:'45-2-8', text:'level 3-45-2-8'} +, {id:'45-2-9', text:'level 3-45-2-9'} +]} +, {id:'45-3-10', text:'level 2-45-3', item:[ + {id:'45-3-0', text:'level 3-45-3-0'} +, {id:'45-3-1', text:'level 3-45-3-1'} +, {id:'45-3-2', text:'level 3-45-3-2'} +, {id:'45-3-3', text:'level 3-45-3-3'} +, {id:'45-3-4', text:'level 3-45-3-4'} +, {id:'45-3-5', text:'level 3-45-3-5'} +, {id:'45-3-6', text:'level 3-45-3-6'} +, {id:'45-3-7', text:'level 3-45-3-7'} +, {id:'45-3-8', text:'level 3-45-3-8'} +, {id:'45-3-9', text:'level 3-45-3-9'} +]} +, {id:'45-4-10', text:'level 2-45-4', item:[ + {id:'45-4-0', text:'level 3-45-4-0'} +, {id:'45-4-1', text:'level 3-45-4-1'} +, {id:'45-4-2', text:'level 3-45-4-2'} +, {id:'45-4-3', text:'level 3-45-4-3'} +, {id:'45-4-4', text:'level 3-45-4-4'} +, {id:'45-4-5', text:'level 3-45-4-5'} +, {id:'45-4-6', text:'level 3-45-4-6'} +, {id:'45-4-7', text:'level 3-45-4-7'} +, {id:'45-4-8', text:'level 3-45-4-8'} +, {id:'45-4-9', text:'level 3-45-4-9'} +]} +, {id:'45-5-10', text:'level 2-45-5', item:[ + {id:'45-5-0', text:'level 3-45-5-0'} +, {id:'45-5-1', text:'level 3-45-5-1'} +, {id:'45-5-2', text:'level 3-45-5-2'} +, {id:'45-5-3', text:'level 3-45-5-3'} +, {id:'45-5-4', text:'level 3-45-5-4'} +, {id:'45-5-5', text:'level 3-45-5-5'} +, {id:'45-5-6', text:'level 3-45-5-6'} +, {id:'45-5-7', text:'level 3-45-5-7'} +, {id:'45-5-8', text:'level 3-45-5-8'} +, {id:'45-5-9', text:'level 3-45-5-9'} +]} +, {id:'45-6-10', text:'level 2-45-6', item:[ + {id:'45-6-0', text:'level 3-45-6-0'} +, {id:'45-6-1', text:'level 3-45-6-1'} +, {id:'45-6-2', text:'level 3-45-6-2'} +, {id:'45-6-3', text:'level 3-45-6-3'} +, {id:'45-6-4', text:'level 3-45-6-4'} +, {id:'45-6-5', text:'level 3-45-6-5'} +, {id:'45-6-6', text:'level 3-45-6-6'} +, {id:'45-6-7', text:'level 3-45-6-7'} +, {id:'45-6-8', text:'level 3-45-6-8'} +, {id:'45-6-9', text:'level 3-45-6-9'} +]} +, {id:'45-7-10', text:'level 2-45-7', item:[ + {id:'45-7-0', text:'level 3-45-7-0'} +, {id:'45-7-1', text:'level 3-45-7-1'} +, {id:'45-7-2', text:'level 3-45-7-2'} +, {id:'45-7-3', text:'level 3-45-7-3'} +, {id:'45-7-4', text:'level 3-45-7-4'} +, {id:'45-7-5', text:'level 3-45-7-5'} +, {id:'45-7-6', text:'level 3-45-7-6'} +, {id:'45-7-7', text:'level 3-45-7-7'} +, {id:'45-7-8', text:'level 3-45-7-8'} +, {id:'45-7-9', text:'level 3-45-7-9'} +]} +, {id:'45-8-10', text:'level 2-45-8', item:[ + {id:'45-8-0', text:'level 3-45-8-0'} +, {id:'45-8-1', text:'level 3-45-8-1'} +, {id:'45-8-2', text:'level 3-45-8-2'} +, {id:'45-8-3', text:'level 3-45-8-3'} +, {id:'45-8-4', text:'level 3-45-8-4'} +, {id:'45-8-5', text:'level 3-45-8-5'} +, {id:'45-8-6', text:'level 3-45-8-6'} +, {id:'45-8-7', text:'level 3-45-8-7'} +, {id:'45-8-8', text:'level 3-45-8-8'} +, {id:'45-8-9', text:'level 3-45-8-9'} +]} +, {id:'45-9-10', text:'level 2-45-9', item:[ + {id:'45-9-0', text:'level 3-45-9-0'} +, {id:'45-9-1', text:'level 3-45-9-1'} +, {id:'45-9-2', text:'level 3-45-9-2'} +, {id:'45-9-3', text:'level 3-45-9-3'} +, {id:'45-9-4', text:'level 3-45-9-4'} +, {id:'45-9-5', text:'level 3-45-9-5'} +, {id:'45-9-6', text:'level 3-45-9-6'} +, {id:'45-9-7', text:'level 3-45-9-7'} +, {id:'45-9-8', text:'level 3-45-9-8'} +, {id:'45-9-9', text:'level 3-45-9-9'} +]} +, {id:'45-10-10', text:'level 2-45-10', item:[ + {id:'45-10-0', text:'level 3-45-10-0'} +, {id:'45-10-1', text:'level 3-45-10-1'} +, {id:'45-10-2', text:'level 3-45-10-2'} +, {id:'45-10-3', text:'level 3-45-10-3'} +, {id:'45-10-4', text:'level 3-45-10-4'} +, {id:'45-10-5', text:'level 3-45-10-5'} +, {id:'45-10-6', text:'level 3-45-10-6'} +, {id:'45-10-7', text:'level 3-45-10-7'} +, {id:'45-10-8', text:'level 3-45-10-8'} +, {id:'45-10-9', text:'level 3-45-10-9'} +]} +, {id:'45-11-10', text:'level 2-45-11', item:[ + {id:'45-11-0', text:'level 3-45-11-0'} +, {id:'45-11-1', text:'level 3-45-11-1'} +, {id:'45-11-2', text:'level 3-45-11-2'} +, {id:'45-11-3', text:'level 3-45-11-3'} +, {id:'45-11-4', text:'level 3-45-11-4'} +, {id:'45-11-5', text:'level 3-45-11-5'} +, {id:'45-11-6', text:'level 3-45-11-6'} +, {id:'45-11-7', text:'level 3-45-11-7'} +, {id:'45-11-8', text:'level 3-45-11-8'} +, {id:'45-11-9', text:'level 3-45-11-9'} +]} +, {id:'45-12-10', text:'level 2-45-12', item:[ + {id:'45-12-0', text:'level 3-45-12-0'} +, {id:'45-12-1', text:'level 3-45-12-1'} +, {id:'45-12-2', text:'level 3-45-12-2'} +, {id:'45-12-3', text:'level 3-45-12-3'} +, {id:'45-12-4', text:'level 3-45-12-4'} +, {id:'45-12-5', text:'level 3-45-12-5'} +, {id:'45-12-6', text:'level 3-45-12-6'} +, {id:'45-12-7', text:'level 3-45-12-7'} +, {id:'45-12-8', text:'level 3-45-12-8'} +, {id:'45-12-9', text:'level 3-45-12-9'} +]} +, {id:'45-13-10', text:'level 2-45-13', item:[ + {id:'45-13-0', text:'level 3-45-13-0'} +, {id:'45-13-1', text:'level 3-45-13-1'} +, {id:'45-13-2', text:'level 3-45-13-2'} +, {id:'45-13-3', text:'level 3-45-13-3'} +, {id:'45-13-4', text:'level 3-45-13-4'} +, {id:'45-13-5', text:'level 3-45-13-5'} +, {id:'45-13-6', text:'level 3-45-13-6'} +, {id:'45-13-7', text:'level 3-45-13-7'} +, {id:'45-13-8', text:'level 3-45-13-8'} +, {id:'45-13-9', text:'level 3-45-13-9'} +]} +, {id:'45-14-10', text:'level 2-45-14', item:[ + {id:'45-14-0', text:'level 3-45-14-0'} +, {id:'45-14-1', text:'level 3-45-14-1'} +, {id:'45-14-2', text:'level 3-45-14-2'} +, {id:'45-14-3', text:'level 3-45-14-3'} +, {id:'45-14-4', text:'level 3-45-14-4'} +, {id:'45-14-5', text:'level 3-45-14-5'} +, {id:'45-14-6', text:'level 3-45-14-6'} +, {id:'45-14-7', text:'level 3-45-14-7'} +, {id:'45-14-8', text:'level 3-45-14-8'} +, {id:'45-14-9', text:'level 3-45-14-9'} +]} +, {id:'45-15-10', text:'level 2-45-15', item:[ + {id:'45-15-0', text:'level 3-45-15-0'} +, {id:'45-15-1', text:'level 3-45-15-1'} +, {id:'45-15-2', text:'level 3-45-15-2'} +, {id:'45-15-3', text:'level 3-45-15-3'} +, {id:'45-15-4', text:'level 3-45-15-4'} +, {id:'45-15-5', text:'level 3-45-15-5'} +, {id:'45-15-6', text:'level 3-45-15-6'} +, {id:'45-15-7', text:'level 3-45-15-7'} +, {id:'45-15-8', text:'level 3-45-15-8'} +, {id:'45-15-9', text:'level 3-45-15-9'} +]} +, {id:'45-16-10', text:'level 2-45-16', item:[ + {id:'45-16-0', text:'level 3-45-16-0'} +, {id:'45-16-1', text:'level 3-45-16-1'} +, {id:'45-16-2', text:'level 3-45-16-2'} +, {id:'45-16-3', text:'level 3-45-16-3'} +, {id:'45-16-4', text:'level 3-45-16-4'} +, {id:'45-16-5', text:'level 3-45-16-5'} +, {id:'45-16-6', text:'level 3-45-16-6'} +, {id:'45-16-7', text:'level 3-45-16-7'} +, {id:'45-16-8', text:'level 3-45-16-8'} +, {id:'45-16-9', text:'level 3-45-16-9'} +]} +, {id:'45-17-10', text:'level 2-45-17', item:[ + {id:'45-17-0', text:'level 3-45-17-0'} +, {id:'45-17-1', text:'level 3-45-17-1'} +, {id:'45-17-2', text:'level 3-45-17-2'} +, {id:'45-17-3', text:'level 3-45-17-3'} +, {id:'45-17-4', text:'level 3-45-17-4'} +, {id:'45-17-5', text:'level 3-45-17-5'} +, {id:'45-17-6', text:'level 3-45-17-6'} +, {id:'45-17-7', text:'level 3-45-17-7'} +, {id:'45-17-8', text:'level 3-45-17-8'} +, {id:'45-17-9', text:'level 3-45-17-9'} +]} +, {id:'45-18-10', text:'level 2-45-18', item:[ + {id:'45-18-0', text:'level 3-45-18-0'} +, {id:'45-18-1', text:'level 3-45-18-1'} +, {id:'45-18-2', text:'level 3-45-18-2'} +, {id:'45-18-3', text:'level 3-45-18-3'} +, {id:'45-18-4', text:'level 3-45-18-4'} +, {id:'45-18-5', text:'level 3-45-18-5'} +, {id:'45-18-6', text:'level 3-45-18-6'} +, {id:'45-18-7', text:'level 3-45-18-7'} +, {id:'45-18-8', text:'level 3-45-18-8'} +, {id:'45-18-9', text:'level 3-45-18-9'} +]} +, {id:'45-19-10', text:'level 2-45-19', item:[ + {id:'45-19-0', text:'level 3-45-19-0'} +, {id:'45-19-1', text:'level 3-45-19-1'} +, {id:'45-19-2', text:'level 3-45-19-2'} +, {id:'45-19-3', text:'level 3-45-19-3'} +, {id:'45-19-4', text:'level 3-45-19-4'} +, {id:'45-19-5', text:'level 3-45-19-5'} +, {id:'45-19-6', text:'level 3-45-19-6'} +, {id:'45-19-7', text:'level 3-45-19-7'} +, {id:'45-19-8', text:'level 3-45-19-8'} +, {id:'45-19-9', text:'level 3-45-19-9'} +]} +]} +,{id:'46-20-10', text:'level 1-46', item:[ + {id:'46-0-10', text:'level 2-46-0', item:[ + {id:'46-0-0', text:'level 3-46-0-0'} +, {id:'46-0-1', text:'level 3-46-0-1'} +, {id:'46-0-2', text:'level 3-46-0-2'} +, {id:'46-0-3', text:'level 3-46-0-3'} +, {id:'46-0-4', text:'level 3-46-0-4'} +, {id:'46-0-5', text:'level 3-46-0-5'} +, {id:'46-0-6', text:'level 3-46-0-6'} +, {id:'46-0-7', text:'level 3-46-0-7'} +, {id:'46-0-8', text:'level 3-46-0-8'} +, {id:'46-0-9', text:'level 3-46-0-9'} +]} +, {id:'46-1-10', text:'level 2-46-1', item:[ + {id:'46-1-0', text:'level 3-46-1-0'} +, {id:'46-1-1', text:'level 3-46-1-1'} +, {id:'46-1-2', text:'level 3-46-1-2'} +, {id:'46-1-3', text:'level 3-46-1-3'} +, {id:'46-1-4', text:'level 3-46-1-4'} +, {id:'46-1-5', text:'level 3-46-1-5'} +, {id:'46-1-6', text:'level 3-46-1-6'} +, {id:'46-1-7', text:'level 3-46-1-7'} +, {id:'46-1-8', text:'level 3-46-1-8'} +, {id:'46-1-9', text:'level 3-46-1-9'} +]} +, {id:'46-2-10', text:'level 2-46-2', item:[ + {id:'46-2-0', text:'level 3-46-2-0'} +, {id:'46-2-1', text:'level 3-46-2-1'} +, {id:'46-2-2', text:'level 3-46-2-2'} +, {id:'46-2-3', text:'level 3-46-2-3'} +, {id:'46-2-4', text:'level 3-46-2-4'} +, {id:'46-2-5', text:'level 3-46-2-5'} +, {id:'46-2-6', text:'level 3-46-2-6'} +, {id:'46-2-7', text:'level 3-46-2-7'} +, {id:'46-2-8', text:'level 3-46-2-8'} +, {id:'46-2-9', text:'level 3-46-2-9'} +]} +, {id:'46-3-10', text:'level 2-46-3', item:[ + {id:'46-3-0', text:'level 3-46-3-0'} +, {id:'46-3-1', text:'level 3-46-3-1'} +, {id:'46-3-2', text:'level 3-46-3-2'} +, {id:'46-3-3', text:'level 3-46-3-3'} +, {id:'46-3-4', text:'level 3-46-3-4'} +, {id:'46-3-5', text:'level 3-46-3-5'} +, {id:'46-3-6', text:'level 3-46-3-6'} +, {id:'46-3-7', text:'level 3-46-3-7'} +, {id:'46-3-8', text:'level 3-46-3-8'} +, {id:'46-3-9', text:'level 3-46-3-9'} +]} +, {id:'46-4-10', text:'level 2-46-4', item:[ + {id:'46-4-0', text:'level 3-46-4-0'} +, {id:'46-4-1', text:'level 3-46-4-1'} +, {id:'46-4-2', text:'level 3-46-4-2'} +, {id:'46-4-3', text:'level 3-46-4-3'} +, {id:'46-4-4', text:'level 3-46-4-4'} +, {id:'46-4-5', text:'level 3-46-4-5'} +, {id:'46-4-6', text:'level 3-46-4-6'} +, {id:'46-4-7', text:'level 3-46-4-7'} +, {id:'46-4-8', text:'level 3-46-4-8'} +, {id:'46-4-9', text:'level 3-46-4-9'} +]} +, {id:'46-5-10', text:'level 2-46-5', item:[ + {id:'46-5-0', text:'level 3-46-5-0'} +, {id:'46-5-1', text:'level 3-46-5-1'} +, {id:'46-5-2', text:'level 3-46-5-2'} +, {id:'46-5-3', text:'level 3-46-5-3'} +, {id:'46-5-4', text:'level 3-46-5-4'} +, {id:'46-5-5', text:'level 3-46-5-5'} +, {id:'46-5-6', text:'level 3-46-5-6'} +, {id:'46-5-7', text:'level 3-46-5-7'} +, {id:'46-5-8', text:'level 3-46-5-8'} +, {id:'46-5-9', text:'level 3-46-5-9'} +]} +, {id:'46-6-10', text:'level 2-46-6', item:[ + {id:'46-6-0', text:'level 3-46-6-0'} +, {id:'46-6-1', text:'level 3-46-6-1'} +, {id:'46-6-2', text:'level 3-46-6-2'} +, {id:'46-6-3', text:'level 3-46-6-3'} +, {id:'46-6-4', text:'level 3-46-6-4'} +, {id:'46-6-5', text:'level 3-46-6-5'} +, {id:'46-6-6', text:'level 3-46-6-6'} +, {id:'46-6-7', text:'level 3-46-6-7'} +, {id:'46-6-8', text:'level 3-46-6-8'} +, {id:'46-6-9', text:'level 3-46-6-9'} +]} +, {id:'46-7-10', text:'level 2-46-7', item:[ + {id:'46-7-0', text:'level 3-46-7-0'} +, {id:'46-7-1', text:'level 3-46-7-1'} +, {id:'46-7-2', text:'level 3-46-7-2'} +, {id:'46-7-3', text:'level 3-46-7-3'} +, {id:'46-7-4', text:'level 3-46-7-4'} +, {id:'46-7-5', text:'level 3-46-7-5'} +, {id:'46-7-6', text:'level 3-46-7-6'} +, {id:'46-7-7', text:'level 3-46-7-7'} +, {id:'46-7-8', text:'level 3-46-7-8'} +, {id:'46-7-9', text:'level 3-46-7-9'} +]} +, {id:'46-8-10', text:'level 2-46-8', item:[ + {id:'46-8-0', text:'level 3-46-8-0'} +, {id:'46-8-1', text:'level 3-46-8-1'} +, {id:'46-8-2', text:'level 3-46-8-2'} +, {id:'46-8-3', text:'level 3-46-8-3'} +, {id:'46-8-4', text:'level 3-46-8-4'} +, {id:'46-8-5', text:'level 3-46-8-5'} +, {id:'46-8-6', text:'level 3-46-8-6'} +, {id:'46-8-7', text:'level 3-46-8-7'} +, {id:'46-8-8', text:'level 3-46-8-8'} +, {id:'46-8-9', text:'level 3-46-8-9'} +]} +, {id:'46-9-10', text:'level 2-46-9', item:[ + {id:'46-9-0', text:'level 3-46-9-0'} +, {id:'46-9-1', text:'level 3-46-9-1'} +, {id:'46-9-2', text:'level 3-46-9-2'} +, {id:'46-9-3', text:'level 3-46-9-3'} +, {id:'46-9-4', text:'level 3-46-9-4'} +, {id:'46-9-5', text:'level 3-46-9-5'} +, {id:'46-9-6', text:'level 3-46-9-6'} +, {id:'46-9-7', text:'level 3-46-9-7'} +, {id:'46-9-8', text:'level 3-46-9-8'} +, {id:'46-9-9', text:'level 3-46-9-9'} +]} +, {id:'46-10-10', text:'level 2-46-10', item:[ + {id:'46-10-0', text:'level 3-46-10-0'} +, {id:'46-10-1', text:'level 3-46-10-1'} +, {id:'46-10-2', text:'level 3-46-10-2'} +, {id:'46-10-3', text:'level 3-46-10-3'} +, {id:'46-10-4', text:'level 3-46-10-4'} +, {id:'46-10-5', text:'level 3-46-10-5'} +, {id:'46-10-6', text:'level 3-46-10-6'} +, {id:'46-10-7', text:'level 3-46-10-7'} +, {id:'46-10-8', text:'level 3-46-10-8'} +, {id:'46-10-9', text:'level 3-46-10-9'} +]} +, {id:'46-11-10', text:'level 2-46-11', item:[ + {id:'46-11-0', text:'level 3-46-11-0'} +, {id:'46-11-1', text:'level 3-46-11-1'} +, {id:'46-11-2', text:'level 3-46-11-2'} +, {id:'46-11-3', text:'level 3-46-11-3'} +, {id:'46-11-4', text:'level 3-46-11-4'} +, {id:'46-11-5', text:'level 3-46-11-5'} +, {id:'46-11-6', text:'level 3-46-11-6'} +, {id:'46-11-7', text:'level 3-46-11-7'} +, {id:'46-11-8', text:'level 3-46-11-8'} +, {id:'46-11-9', text:'level 3-46-11-9'} +]} +, {id:'46-12-10', text:'level 2-46-12', item:[ + {id:'46-12-0', text:'level 3-46-12-0'} +, {id:'46-12-1', text:'level 3-46-12-1'} +, {id:'46-12-2', text:'level 3-46-12-2'} +, {id:'46-12-3', text:'level 3-46-12-3'} +, {id:'46-12-4', text:'level 3-46-12-4'} +, {id:'46-12-5', text:'level 3-46-12-5'} +, {id:'46-12-6', text:'level 3-46-12-6'} +, {id:'46-12-7', text:'level 3-46-12-7'} +, {id:'46-12-8', text:'level 3-46-12-8'} +, {id:'46-12-9', text:'level 3-46-12-9'} +]} +, {id:'46-13-10', text:'level 2-46-13', item:[ + {id:'46-13-0', text:'level 3-46-13-0'} +, {id:'46-13-1', text:'level 3-46-13-1'} +, {id:'46-13-2', text:'level 3-46-13-2'} +, {id:'46-13-3', text:'level 3-46-13-3'} +, {id:'46-13-4', text:'level 3-46-13-4'} +, {id:'46-13-5', text:'level 3-46-13-5'} +, {id:'46-13-6', text:'level 3-46-13-6'} +, {id:'46-13-7', text:'level 3-46-13-7'} +, {id:'46-13-8', text:'level 3-46-13-8'} +, {id:'46-13-9', text:'level 3-46-13-9'} +]} +, {id:'46-14-10', text:'level 2-46-14', item:[ + {id:'46-14-0', text:'level 3-46-14-0'} +, {id:'46-14-1', text:'level 3-46-14-1'} +, {id:'46-14-2', text:'level 3-46-14-2'} +, {id:'46-14-3', text:'level 3-46-14-3'} +, {id:'46-14-4', text:'level 3-46-14-4'} +, {id:'46-14-5', text:'level 3-46-14-5'} +, {id:'46-14-6', text:'level 3-46-14-6'} +, {id:'46-14-7', text:'level 3-46-14-7'} +, {id:'46-14-8', text:'level 3-46-14-8'} +, {id:'46-14-9', text:'level 3-46-14-9'} +]} +, {id:'46-15-10', text:'level 2-46-15', item:[ + {id:'46-15-0', text:'level 3-46-15-0'} +, {id:'46-15-1', text:'level 3-46-15-1'} +, {id:'46-15-2', text:'level 3-46-15-2'} +, {id:'46-15-3', text:'level 3-46-15-3'} +, {id:'46-15-4', text:'level 3-46-15-4'} +, {id:'46-15-5', text:'level 3-46-15-5'} +, {id:'46-15-6', text:'level 3-46-15-6'} +, {id:'46-15-7', text:'level 3-46-15-7'} +, {id:'46-15-8', text:'level 3-46-15-8'} +, {id:'46-15-9', text:'level 3-46-15-9'} +]} +, {id:'46-16-10', text:'level 2-46-16', item:[ + {id:'46-16-0', text:'level 3-46-16-0'} +, {id:'46-16-1', text:'level 3-46-16-1'} +, {id:'46-16-2', text:'level 3-46-16-2'} +, {id:'46-16-3', text:'level 3-46-16-3'} +, {id:'46-16-4', text:'level 3-46-16-4'} +, {id:'46-16-5', text:'level 3-46-16-5'} +, {id:'46-16-6', text:'level 3-46-16-6'} +, {id:'46-16-7', text:'level 3-46-16-7'} +, {id:'46-16-8', text:'level 3-46-16-8'} +, {id:'46-16-9', text:'level 3-46-16-9'} +]} +, {id:'46-17-10', text:'level 2-46-17', item:[ + {id:'46-17-0', text:'level 3-46-17-0'} +, {id:'46-17-1', text:'level 3-46-17-1'} +, {id:'46-17-2', text:'level 3-46-17-2'} +, {id:'46-17-3', text:'level 3-46-17-3'} +, {id:'46-17-4', text:'level 3-46-17-4'} +, {id:'46-17-5', text:'level 3-46-17-5'} +, {id:'46-17-6', text:'level 3-46-17-6'} +, {id:'46-17-7', text:'level 3-46-17-7'} +, {id:'46-17-8', text:'level 3-46-17-8'} +, {id:'46-17-9', text:'level 3-46-17-9'} +]} +, {id:'46-18-10', text:'level 2-46-18', item:[ + {id:'46-18-0', text:'level 3-46-18-0'} +, {id:'46-18-1', text:'level 3-46-18-1'} +, {id:'46-18-2', text:'level 3-46-18-2'} +, {id:'46-18-3', text:'level 3-46-18-3'} +, {id:'46-18-4', text:'level 3-46-18-4'} +, {id:'46-18-5', text:'level 3-46-18-5'} +, {id:'46-18-6', text:'level 3-46-18-6'} +, {id:'46-18-7', text:'level 3-46-18-7'} +, {id:'46-18-8', text:'level 3-46-18-8'} +, {id:'46-18-9', text:'level 3-46-18-9'} +]} +, {id:'46-19-10', text:'level 2-46-19', item:[ + {id:'46-19-0', text:'level 3-46-19-0'} +, {id:'46-19-1', text:'level 3-46-19-1'} +, {id:'46-19-2', text:'level 3-46-19-2'} +, {id:'46-19-3', text:'level 3-46-19-3'} +, {id:'46-19-4', text:'level 3-46-19-4'} +, {id:'46-19-5', text:'level 3-46-19-5'} +, {id:'46-19-6', text:'level 3-46-19-6'} +, {id:'46-19-7', text:'level 3-46-19-7'} +, {id:'46-19-8', text:'level 3-46-19-8'} +, {id:'46-19-9', text:'level 3-46-19-9'} +]} +]} +,{id:'47-20-10', text:'level 1-47', item:[ + {id:'47-0-10', text:'level 2-47-0', item:[ + {id:'47-0-0', text:'level 3-47-0-0'} +, {id:'47-0-1', text:'level 3-47-0-1'} +, {id:'47-0-2', text:'level 3-47-0-2'} +, {id:'47-0-3', text:'level 3-47-0-3'} +, {id:'47-0-4', text:'level 3-47-0-4'} +, {id:'47-0-5', text:'level 3-47-0-5'} +, {id:'47-0-6', text:'level 3-47-0-6'} +, {id:'47-0-7', text:'level 3-47-0-7'} +, {id:'47-0-8', text:'level 3-47-0-8'} +, {id:'47-0-9', text:'level 3-47-0-9'} +]} +, {id:'47-1-10', text:'level 2-47-1', item:[ + {id:'47-1-0', text:'level 3-47-1-0'} +, {id:'47-1-1', text:'level 3-47-1-1'} +, {id:'47-1-2', text:'level 3-47-1-2'} +, {id:'47-1-3', text:'level 3-47-1-3'} +, {id:'47-1-4', text:'level 3-47-1-4'} +, {id:'47-1-5', text:'level 3-47-1-5'} +, {id:'47-1-6', text:'level 3-47-1-6'} +, {id:'47-1-7', text:'level 3-47-1-7'} +, {id:'47-1-8', text:'level 3-47-1-8'} +, {id:'47-1-9', text:'level 3-47-1-9'} +]} +, {id:'47-2-10', text:'level 2-47-2', item:[ + {id:'47-2-0', text:'level 3-47-2-0'} +, {id:'47-2-1', text:'level 3-47-2-1'} +, {id:'47-2-2', text:'level 3-47-2-2'} +, {id:'47-2-3', text:'level 3-47-2-3'} +, {id:'47-2-4', text:'level 3-47-2-4'} +, {id:'47-2-5', text:'level 3-47-2-5'} +, {id:'47-2-6', text:'level 3-47-2-6'} +, {id:'47-2-7', text:'level 3-47-2-7'} +, {id:'47-2-8', text:'level 3-47-2-8'} +, {id:'47-2-9', text:'level 3-47-2-9'} +]} +, {id:'47-3-10', text:'level 2-47-3', item:[ + {id:'47-3-0', text:'level 3-47-3-0'} +, {id:'47-3-1', text:'level 3-47-3-1'} +, {id:'47-3-2', text:'level 3-47-3-2'} +, {id:'47-3-3', text:'level 3-47-3-3'} +, {id:'47-3-4', text:'level 3-47-3-4'} +, {id:'47-3-5', text:'level 3-47-3-5'} +, {id:'47-3-6', text:'level 3-47-3-6'} +, {id:'47-3-7', text:'level 3-47-3-7'} +, {id:'47-3-8', text:'level 3-47-3-8'} +, {id:'47-3-9', text:'level 3-47-3-9'} +]} +, {id:'47-4-10', text:'level 2-47-4', item:[ + {id:'47-4-0', text:'level 3-47-4-0'} +, {id:'47-4-1', text:'level 3-47-4-1'} +, {id:'47-4-2', text:'level 3-47-4-2'} +, {id:'47-4-3', text:'level 3-47-4-3'} +, {id:'47-4-4', text:'level 3-47-4-4'} +, {id:'47-4-5', text:'level 3-47-4-5'} +, {id:'47-4-6', text:'level 3-47-4-6'} +, {id:'47-4-7', text:'level 3-47-4-7'} +, {id:'47-4-8', text:'level 3-47-4-8'} +, {id:'47-4-9', text:'level 3-47-4-9'} +]} +, {id:'47-5-10', text:'level 2-47-5', item:[ + {id:'47-5-0', text:'level 3-47-5-0'} +, {id:'47-5-1', text:'level 3-47-5-1'} +, {id:'47-5-2', text:'level 3-47-5-2'} +, {id:'47-5-3', text:'level 3-47-5-3'} +, {id:'47-5-4', text:'level 3-47-5-4'} +, {id:'47-5-5', text:'level 3-47-5-5'} +, {id:'47-5-6', text:'level 3-47-5-6'} +, {id:'47-5-7', text:'level 3-47-5-7'} +, {id:'47-5-8', text:'level 3-47-5-8'} +, {id:'47-5-9', text:'level 3-47-5-9'} +]} +, {id:'47-6-10', text:'level 2-47-6', item:[ + {id:'47-6-0', text:'level 3-47-6-0'} +, {id:'47-6-1', text:'level 3-47-6-1'} +, {id:'47-6-2', text:'level 3-47-6-2'} +, {id:'47-6-3', text:'level 3-47-6-3'} +, {id:'47-6-4', text:'level 3-47-6-4'} +, {id:'47-6-5', text:'level 3-47-6-5'} +, {id:'47-6-6', text:'level 3-47-6-6'} +, {id:'47-6-7', text:'level 3-47-6-7'} +, {id:'47-6-8', text:'level 3-47-6-8'} +, {id:'47-6-9', text:'level 3-47-6-9'} +]} +, {id:'47-7-10', text:'level 2-47-7', item:[ + {id:'47-7-0', text:'level 3-47-7-0'} +, {id:'47-7-1', text:'level 3-47-7-1'} +, {id:'47-7-2', text:'level 3-47-7-2'} +, {id:'47-7-3', text:'level 3-47-7-3'} +, {id:'47-7-4', text:'level 3-47-7-4'} +, {id:'47-7-5', text:'level 3-47-7-5'} +, {id:'47-7-6', text:'level 3-47-7-6'} +, {id:'47-7-7', text:'level 3-47-7-7'} +, {id:'47-7-8', text:'level 3-47-7-8'} +, {id:'47-7-9', text:'level 3-47-7-9'} +]} +, {id:'47-8-10', text:'level 2-47-8', item:[ + {id:'47-8-0', text:'level 3-47-8-0'} +, {id:'47-8-1', text:'level 3-47-8-1'} +, {id:'47-8-2', text:'level 3-47-8-2'} +, {id:'47-8-3', text:'level 3-47-8-3'} +, {id:'47-8-4', text:'level 3-47-8-4'} +, {id:'47-8-5', text:'level 3-47-8-5'} +, {id:'47-8-6', text:'level 3-47-8-6'} +, {id:'47-8-7', text:'level 3-47-8-7'} +, {id:'47-8-8', text:'level 3-47-8-8'} +, {id:'47-8-9', text:'level 3-47-8-9'} +]} +, {id:'47-9-10', text:'level 2-47-9', item:[ + {id:'47-9-0', text:'level 3-47-9-0'} +, {id:'47-9-1', text:'level 3-47-9-1'} +, {id:'47-9-2', text:'level 3-47-9-2'} +, {id:'47-9-3', text:'level 3-47-9-3'} +, {id:'47-9-4', text:'level 3-47-9-4'} +, {id:'47-9-5', text:'level 3-47-9-5'} +, {id:'47-9-6', text:'level 3-47-9-6'} +, {id:'47-9-7', text:'level 3-47-9-7'} +, {id:'47-9-8', text:'level 3-47-9-8'} +, {id:'47-9-9', text:'level 3-47-9-9'} +]} +, {id:'47-10-10', text:'level 2-47-10', item:[ + {id:'47-10-0', text:'level 3-47-10-0'} +, {id:'47-10-1', text:'level 3-47-10-1'} +, {id:'47-10-2', text:'level 3-47-10-2'} +, {id:'47-10-3', text:'level 3-47-10-3'} +, {id:'47-10-4', text:'level 3-47-10-4'} +, {id:'47-10-5', text:'level 3-47-10-5'} +, {id:'47-10-6', text:'level 3-47-10-6'} +, {id:'47-10-7', text:'level 3-47-10-7'} +, {id:'47-10-8', text:'level 3-47-10-8'} +, {id:'47-10-9', text:'level 3-47-10-9'} +]} +, {id:'47-11-10', text:'level 2-47-11', item:[ + {id:'47-11-0', text:'level 3-47-11-0'} +, {id:'47-11-1', text:'level 3-47-11-1'} +, {id:'47-11-2', text:'level 3-47-11-2'} +, {id:'47-11-3', text:'level 3-47-11-3'} +, {id:'47-11-4', text:'level 3-47-11-4'} +, {id:'47-11-5', text:'level 3-47-11-5'} +, {id:'47-11-6', text:'level 3-47-11-6'} +, {id:'47-11-7', text:'level 3-47-11-7'} +, {id:'47-11-8', text:'level 3-47-11-8'} +, {id:'47-11-9', text:'level 3-47-11-9'} +]} +, {id:'47-12-10', text:'level 2-47-12', item:[ + {id:'47-12-0', text:'level 3-47-12-0'} +, {id:'47-12-1', text:'level 3-47-12-1'} +, {id:'47-12-2', text:'level 3-47-12-2'} +, {id:'47-12-3', text:'level 3-47-12-3'} +, {id:'47-12-4', text:'level 3-47-12-4'} +, {id:'47-12-5', text:'level 3-47-12-5'} +, {id:'47-12-6', text:'level 3-47-12-6'} +, {id:'47-12-7', text:'level 3-47-12-7'} +, {id:'47-12-8', text:'level 3-47-12-8'} +, {id:'47-12-9', text:'level 3-47-12-9'} +]} +, {id:'47-13-10', text:'level 2-47-13', item:[ + {id:'47-13-0', text:'level 3-47-13-0'} +, {id:'47-13-1', text:'level 3-47-13-1'} +, {id:'47-13-2', text:'level 3-47-13-2'} +, {id:'47-13-3', text:'level 3-47-13-3'} +, {id:'47-13-4', text:'level 3-47-13-4'} +, {id:'47-13-5', text:'level 3-47-13-5'} +, {id:'47-13-6', text:'level 3-47-13-6'} +, {id:'47-13-7', text:'level 3-47-13-7'} +, {id:'47-13-8', text:'level 3-47-13-8'} +, {id:'47-13-9', text:'level 3-47-13-9'} +]} +, {id:'47-14-10', text:'level 2-47-14', item:[ + {id:'47-14-0', text:'level 3-47-14-0'} +, {id:'47-14-1', text:'level 3-47-14-1'} +, {id:'47-14-2', text:'level 3-47-14-2'} +, {id:'47-14-3', text:'level 3-47-14-3'} +, {id:'47-14-4', text:'level 3-47-14-4'} +, {id:'47-14-5', text:'level 3-47-14-5'} +, {id:'47-14-6', text:'level 3-47-14-6'} +, {id:'47-14-7', text:'level 3-47-14-7'} +, {id:'47-14-8', text:'level 3-47-14-8'} +, {id:'47-14-9', text:'level 3-47-14-9'} +]} +, {id:'47-15-10', text:'level 2-47-15', item:[ + {id:'47-15-0', text:'level 3-47-15-0'} +, {id:'47-15-1', text:'level 3-47-15-1'} +, {id:'47-15-2', text:'level 3-47-15-2'} +, {id:'47-15-3', text:'level 3-47-15-3'} +, {id:'47-15-4', text:'level 3-47-15-4'} +, {id:'47-15-5', text:'level 3-47-15-5'} +, {id:'47-15-6', text:'level 3-47-15-6'} +, {id:'47-15-7', text:'level 3-47-15-7'} +, {id:'47-15-8', text:'level 3-47-15-8'} +, {id:'47-15-9', text:'level 3-47-15-9'} +]} +, {id:'47-16-10', text:'level 2-47-16', item:[ + {id:'47-16-0', text:'level 3-47-16-0'} +, {id:'47-16-1', text:'level 3-47-16-1'} +, {id:'47-16-2', text:'level 3-47-16-2'} +, {id:'47-16-3', text:'level 3-47-16-3'} +, {id:'47-16-4', text:'level 3-47-16-4'} +, {id:'47-16-5', text:'level 3-47-16-5'} +, {id:'47-16-6', text:'level 3-47-16-6'} +, {id:'47-16-7', text:'level 3-47-16-7'} +, {id:'47-16-8', text:'level 3-47-16-8'} +, {id:'47-16-9', text:'level 3-47-16-9'} +]} +, {id:'47-17-10', text:'level 2-47-17', item:[ + {id:'47-17-0', text:'level 3-47-17-0'} +, {id:'47-17-1', text:'level 3-47-17-1'} +, {id:'47-17-2', text:'level 3-47-17-2'} +, {id:'47-17-3', text:'level 3-47-17-3'} +, {id:'47-17-4', text:'level 3-47-17-4'} +, {id:'47-17-5', text:'level 3-47-17-5'} +, {id:'47-17-6', text:'level 3-47-17-6'} +, {id:'47-17-7', text:'level 3-47-17-7'} +, {id:'47-17-8', text:'level 3-47-17-8'} +, {id:'47-17-9', text:'level 3-47-17-9'} +]} +, {id:'47-18-10', text:'level 2-47-18', item:[ + {id:'47-18-0', text:'level 3-47-18-0'} +, {id:'47-18-1', text:'level 3-47-18-1'} +, {id:'47-18-2', text:'level 3-47-18-2'} +, {id:'47-18-3', text:'level 3-47-18-3'} +, {id:'47-18-4', text:'level 3-47-18-4'} +, {id:'47-18-5', text:'level 3-47-18-5'} +, {id:'47-18-6', text:'level 3-47-18-6'} +, {id:'47-18-7', text:'level 3-47-18-7'} +, {id:'47-18-8', text:'level 3-47-18-8'} +, {id:'47-18-9', text:'level 3-47-18-9'} +]} +, {id:'47-19-10', text:'level 2-47-19', item:[ + {id:'47-19-0', text:'level 3-47-19-0'} +, {id:'47-19-1', text:'level 3-47-19-1'} +, {id:'47-19-2', text:'level 3-47-19-2'} +, {id:'47-19-3', text:'level 3-47-19-3'} +, {id:'47-19-4', text:'level 3-47-19-4'} +, {id:'47-19-5', text:'level 3-47-19-5'} +, {id:'47-19-6', text:'level 3-47-19-6'} +, {id:'47-19-7', text:'level 3-47-19-7'} +, {id:'47-19-8', text:'level 3-47-19-8'} +, {id:'47-19-9', text:'level 3-47-19-9'} +]} +]} +,{id:'48-20-10', text:'level 1-48', item:[ + {id:'48-0-10', text:'level 2-48-0', item:[ + {id:'48-0-0', text:'level 3-48-0-0'} +, {id:'48-0-1', text:'level 3-48-0-1'} +, {id:'48-0-2', text:'level 3-48-0-2'} +, {id:'48-0-3', text:'level 3-48-0-3'} +, {id:'48-0-4', text:'level 3-48-0-4'} +, {id:'48-0-5', text:'level 3-48-0-5'} +, {id:'48-0-6', text:'level 3-48-0-6'} +, {id:'48-0-7', text:'level 3-48-0-7'} +, {id:'48-0-8', text:'level 3-48-0-8'} +, {id:'48-0-9', text:'level 3-48-0-9'} +]} +, {id:'48-1-10', text:'level 2-48-1', item:[ + {id:'48-1-0', text:'level 3-48-1-0'} +, {id:'48-1-1', text:'level 3-48-1-1'} +, {id:'48-1-2', text:'level 3-48-1-2'} +, {id:'48-1-3', text:'level 3-48-1-3'} +, {id:'48-1-4', text:'level 3-48-1-4'} +, {id:'48-1-5', text:'level 3-48-1-5'} +, {id:'48-1-6', text:'level 3-48-1-6'} +, {id:'48-1-7', text:'level 3-48-1-7'} +, {id:'48-1-8', text:'level 3-48-1-8'} +, {id:'48-1-9', text:'level 3-48-1-9'} +]} +, {id:'48-2-10', text:'level 2-48-2', item:[ + {id:'48-2-0', text:'level 3-48-2-0'} +, {id:'48-2-1', text:'level 3-48-2-1'} +, {id:'48-2-2', text:'level 3-48-2-2'} +, {id:'48-2-3', text:'level 3-48-2-3'} +, {id:'48-2-4', text:'level 3-48-2-4'} +, {id:'48-2-5', text:'level 3-48-2-5'} +, {id:'48-2-6', text:'level 3-48-2-6'} +, {id:'48-2-7', text:'level 3-48-2-7'} +, {id:'48-2-8', text:'level 3-48-2-8'} +, {id:'48-2-9', text:'level 3-48-2-9'} +]} +, {id:'48-3-10', text:'level 2-48-3', item:[ + {id:'48-3-0', text:'level 3-48-3-0'} +, {id:'48-3-1', text:'level 3-48-3-1'} +, {id:'48-3-2', text:'level 3-48-3-2'} +, {id:'48-3-3', text:'level 3-48-3-3'} +, {id:'48-3-4', text:'level 3-48-3-4'} +, {id:'48-3-5', text:'level 3-48-3-5'} +, {id:'48-3-6', text:'level 3-48-3-6'} +, {id:'48-3-7', text:'level 3-48-3-7'} +, {id:'48-3-8', text:'level 3-48-3-8'} +, {id:'48-3-9', text:'level 3-48-3-9'} +]} +, {id:'48-4-10', text:'level 2-48-4', item:[ + {id:'48-4-0', text:'level 3-48-4-0'} +, {id:'48-4-1', text:'level 3-48-4-1'} +, {id:'48-4-2', text:'level 3-48-4-2'} +, {id:'48-4-3', text:'level 3-48-4-3'} +, {id:'48-4-4', text:'level 3-48-4-4'} +, {id:'48-4-5', text:'level 3-48-4-5'} +, {id:'48-4-6', text:'level 3-48-4-6'} +, {id:'48-4-7', text:'level 3-48-4-7'} +, {id:'48-4-8', text:'level 3-48-4-8'} +, {id:'48-4-9', text:'level 3-48-4-9'} +]} +, {id:'48-5-10', text:'level 2-48-5', item:[ + {id:'48-5-0', text:'level 3-48-5-0'} +, {id:'48-5-1', text:'level 3-48-5-1'} +, {id:'48-5-2', text:'level 3-48-5-2'} +, {id:'48-5-3', text:'level 3-48-5-3'} +, {id:'48-5-4', text:'level 3-48-5-4'} +, {id:'48-5-5', text:'level 3-48-5-5'} +, {id:'48-5-6', text:'level 3-48-5-6'} +, {id:'48-5-7', text:'level 3-48-5-7'} +, {id:'48-5-8', text:'level 3-48-5-8'} +, {id:'48-5-9', text:'level 3-48-5-9'} +]} +, {id:'48-6-10', text:'level 2-48-6', item:[ + {id:'48-6-0', text:'level 3-48-6-0'} +, {id:'48-6-1', text:'level 3-48-6-1'} +, {id:'48-6-2', text:'level 3-48-6-2'} +, {id:'48-6-3', text:'level 3-48-6-3'} +, {id:'48-6-4', text:'level 3-48-6-4'} +, {id:'48-6-5', text:'level 3-48-6-5'} +, {id:'48-6-6', text:'level 3-48-6-6'} +, {id:'48-6-7', text:'level 3-48-6-7'} +, {id:'48-6-8', text:'level 3-48-6-8'} +, {id:'48-6-9', text:'level 3-48-6-9'} +]} +, {id:'48-7-10', text:'level 2-48-7', item:[ + {id:'48-7-0', text:'level 3-48-7-0'} +, {id:'48-7-1', text:'level 3-48-7-1'} +, {id:'48-7-2', text:'level 3-48-7-2'} +, {id:'48-7-3', text:'level 3-48-7-3'} +, {id:'48-7-4', text:'level 3-48-7-4'} +, {id:'48-7-5', text:'level 3-48-7-5'} +, {id:'48-7-6', text:'level 3-48-7-6'} +, {id:'48-7-7', text:'level 3-48-7-7'} +, {id:'48-7-8', text:'level 3-48-7-8'} +, {id:'48-7-9', text:'level 3-48-7-9'} +]} +, {id:'48-8-10', text:'level 2-48-8', item:[ + {id:'48-8-0', text:'level 3-48-8-0'} +, {id:'48-8-1', text:'level 3-48-8-1'} +, {id:'48-8-2', text:'level 3-48-8-2'} +, {id:'48-8-3', text:'level 3-48-8-3'} +, {id:'48-8-4', text:'level 3-48-8-4'} +, {id:'48-8-5', text:'level 3-48-8-5'} +, {id:'48-8-6', text:'level 3-48-8-6'} +, {id:'48-8-7', text:'level 3-48-8-7'} +, {id:'48-8-8', text:'level 3-48-8-8'} +, {id:'48-8-9', text:'level 3-48-8-9'} +]} +, {id:'48-9-10', text:'level 2-48-9', item:[ + {id:'48-9-0', text:'level 3-48-9-0'} +, {id:'48-9-1', text:'level 3-48-9-1'} +, {id:'48-9-2', text:'level 3-48-9-2'} +, {id:'48-9-3', text:'level 3-48-9-3'} +, {id:'48-9-4', text:'level 3-48-9-4'} +, {id:'48-9-5', text:'level 3-48-9-5'} +, {id:'48-9-6', text:'level 3-48-9-6'} +, {id:'48-9-7', text:'level 3-48-9-7'} +, {id:'48-9-8', text:'level 3-48-9-8'} +, {id:'48-9-9', text:'level 3-48-9-9'} +]} +, {id:'48-10-10', text:'level 2-48-10', item:[ + {id:'48-10-0', text:'level 3-48-10-0'} +, {id:'48-10-1', text:'level 3-48-10-1'} +, {id:'48-10-2', text:'level 3-48-10-2'} +, {id:'48-10-3', text:'level 3-48-10-3'} +, {id:'48-10-4', text:'level 3-48-10-4'} +, {id:'48-10-5', text:'level 3-48-10-5'} +, {id:'48-10-6', text:'level 3-48-10-6'} +, {id:'48-10-7', text:'level 3-48-10-7'} +, {id:'48-10-8', text:'level 3-48-10-8'} +, {id:'48-10-9', text:'level 3-48-10-9'} +]} +, {id:'48-11-10', text:'level 2-48-11', item:[ + {id:'48-11-0', text:'level 3-48-11-0'} +, {id:'48-11-1', text:'level 3-48-11-1'} +, {id:'48-11-2', text:'level 3-48-11-2'} +, {id:'48-11-3', text:'level 3-48-11-3'} +, {id:'48-11-4', text:'level 3-48-11-4'} +, {id:'48-11-5', text:'level 3-48-11-5'} +, {id:'48-11-6', text:'level 3-48-11-6'} +, {id:'48-11-7', text:'level 3-48-11-7'} +, {id:'48-11-8', text:'level 3-48-11-8'} +, {id:'48-11-9', text:'level 3-48-11-9'} +]} +, {id:'48-12-10', text:'level 2-48-12', item:[ + {id:'48-12-0', text:'level 3-48-12-0'} +, {id:'48-12-1', text:'level 3-48-12-1'} +, {id:'48-12-2', text:'level 3-48-12-2'} +, {id:'48-12-3', text:'level 3-48-12-3'} +, {id:'48-12-4', text:'level 3-48-12-4'} +, {id:'48-12-5', text:'level 3-48-12-5'} +, {id:'48-12-6', text:'level 3-48-12-6'} +, {id:'48-12-7', text:'level 3-48-12-7'} +, {id:'48-12-8', text:'level 3-48-12-8'} +, {id:'48-12-9', text:'level 3-48-12-9'} +]} +, {id:'48-13-10', text:'level 2-48-13', item:[ + {id:'48-13-0', text:'level 3-48-13-0'} +, {id:'48-13-1', text:'level 3-48-13-1'} +, {id:'48-13-2', text:'level 3-48-13-2'} +, {id:'48-13-3', text:'level 3-48-13-3'} +, {id:'48-13-4', text:'level 3-48-13-4'} +, {id:'48-13-5', text:'level 3-48-13-5'} +, {id:'48-13-6', text:'level 3-48-13-6'} +, {id:'48-13-7', text:'level 3-48-13-7'} +, {id:'48-13-8', text:'level 3-48-13-8'} +, {id:'48-13-9', text:'level 3-48-13-9'} +]} +, {id:'48-14-10', text:'level 2-48-14', item:[ + {id:'48-14-0', text:'level 3-48-14-0'} +, {id:'48-14-1', text:'level 3-48-14-1'} +, {id:'48-14-2', text:'level 3-48-14-2'} +, {id:'48-14-3', text:'level 3-48-14-3'} +, {id:'48-14-4', text:'level 3-48-14-4'} +, {id:'48-14-5', text:'level 3-48-14-5'} +, {id:'48-14-6', text:'level 3-48-14-6'} +, {id:'48-14-7', text:'level 3-48-14-7'} +, {id:'48-14-8', text:'level 3-48-14-8'} +, {id:'48-14-9', text:'level 3-48-14-9'} +]} +, {id:'48-15-10', text:'level 2-48-15', item:[ + {id:'48-15-0', text:'level 3-48-15-0'} +, {id:'48-15-1', text:'level 3-48-15-1'} +, {id:'48-15-2', text:'level 3-48-15-2'} +, {id:'48-15-3', text:'level 3-48-15-3'} +, {id:'48-15-4', text:'level 3-48-15-4'} +, {id:'48-15-5', text:'level 3-48-15-5'} +, {id:'48-15-6', text:'level 3-48-15-6'} +, {id:'48-15-7', text:'level 3-48-15-7'} +, {id:'48-15-8', text:'level 3-48-15-8'} +, {id:'48-15-9', text:'level 3-48-15-9'} +]} +, {id:'48-16-10', text:'level 2-48-16', item:[ + {id:'48-16-0', text:'level 3-48-16-0'} +, {id:'48-16-1', text:'level 3-48-16-1'} +, {id:'48-16-2', text:'level 3-48-16-2'} +, {id:'48-16-3', text:'level 3-48-16-3'} +, {id:'48-16-4', text:'level 3-48-16-4'} +, {id:'48-16-5', text:'level 3-48-16-5'} +, {id:'48-16-6', text:'level 3-48-16-6'} +, {id:'48-16-7', text:'level 3-48-16-7'} +, {id:'48-16-8', text:'level 3-48-16-8'} +, {id:'48-16-9', text:'level 3-48-16-9'} +]} +, {id:'48-17-10', text:'level 2-48-17', item:[ + {id:'48-17-0', text:'level 3-48-17-0'} +, {id:'48-17-1', text:'level 3-48-17-1'} +, {id:'48-17-2', text:'level 3-48-17-2'} +, {id:'48-17-3', text:'level 3-48-17-3'} +, {id:'48-17-4', text:'level 3-48-17-4'} +, {id:'48-17-5', text:'level 3-48-17-5'} +, {id:'48-17-6', text:'level 3-48-17-6'} +, {id:'48-17-7', text:'level 3-48-17-7'} +, {id:'48-17-8', text:'level 3-48-17-8'} +, {id:'48-17-9', text:'level 3-48-17-9'} +]} +, {id:'48-18-10', text:'level 2-48-18', item:[ + {id:'48-18-0', text:'level 3-48-18-0'} +, {id:'48-18-1', text:'level 3-48-18-1'} +, {id:'48-18-2', text:'level 3-48-18-2'} +, {id:'48-18-3', text:'level 3-48-18-3'} +, {id:'48-18-4', text:'level 3-48-18-4'} +, {id:'48-18-5', text:'level 3-48-18-5'} +, {id:'48-18-6', text:'level 3-48-18-6'} +, {id:'48-18-7', text:'level 3-48-18-7'} +, {id:'48-18-8', text:'level 3-48-18-8'} +, {id:'48-18-9', text:'level 3-48-18-9'} +]} +, {id:'48-19-10', text:'level 2-48-19', item:[ + {id:'48-19-0', text:'level 3-48-19-0'} +, {id:'48-19-1', text:'level 3-48-19-1'} +, {id:'48-19-2', text:'level 3-48-19-2'} +, {id:'48-19-3', text:'level 3-48-19-3'} +, {id:'48-19-4', text:'level 3-48-19-4'} +, {id:'48-19-5', text:'level 3-48-19-5'} +, {id:'48-19-6', text:'level 3-48-19-6'} +, {id:'48-19-7', text:'level 3-48-19-7'} +, {id:'48-19-8', text:'level 3-48-19-8'} +, {id:'48-19-9', text:'level 3-48-19-9'} +]} +]} +,{id:'49-20-10', text:'level 1-49', item:[ + {id:'49-0-10', text:'level 2-49-0', item:[ + {id:'49-0-0', text:'level 3-49-0-0'} +, {id:'49-0-1', text:'level 3-49-0-1'} +, {id:'49-0-2', text:'level 3-49-0-2'} +, {id:'49-0-3', text:'level 3-49-0-3'} +, {id:'49-0-4', text:'level 3-49-0-4'} +, {id:'49-0-5', text:'level 3-49-0-5'} +, {id:'49-0-6', text:'level 3-49-0-6'} +, {id:'49-0-7', text:'level 3-49-0-7'} +, {id:'49-0-8', text:'level 3-49-0-8'} +, {id:'49-0-9', text:'level 3-49-0-9'} +]} +, {id:'49-1-10', text:'level 2-49-1', item:[ + {id:'49-1-0', text:'level 3-49-1-0'} +, {id:'49-1-1', text:'level 3-49-1-1'} +, {id:'49-1-2', text:'level 3-49-1-2'} +, {id:'49-1-3', text:'level 3-49-1-3'} +, {id:'49-1-4', text:'level 3-49-1-4'} +, {id:'49-1-5', text:'level 3-49-1-5'} +, {id:'49-1-6', text:'level 3-49-1-6'} +, {id:'49-1-7', text:'level 3-49-1-7'} +, {id:'49-1-8', text:'level 3-49-1-8'} +, {id:'49-1-9', text:'level 3-49-1-9'} +]} +, {id:'49-2-10', text:'level 2-49-2', item:[ + {id:'49-2-0', text:'level 3-49-2-0'} +, {id:'49-2-1', text:'level 3-49-2-1'} +, {id:'49-2-2', text:'level 3-49-2-2'} +, {id:'49-2-3', text:'level 3-49-2-3'} +, {id:'49-2-4', text:'level 3-49-2-4'} +, {id:'49-2-5', text:'level 3-49-2-5'} +, {id:'49-2-6', text:'level 3-49-2-6'} +, {id:'49-2-7', text:'level 3-49-2-7'} +, {id:'49-2-8', text:'level 3-49-2-8'} +, {id:'49-2-9', text:'level 3-49-2-9'} +]} +, {id:'49-3-10', text:'level 2-49-3', item:[ + {id:'49-3-0', text:'level 3-49-3-0'} +, {id:'49-3-1', text:'level 3-49-3-1'} +, {id:'49-3-2', text:'level 3-49-3-2'} +, {id:'49-3-3', text:'level 3-49-3-3'} +, {id:'49-3-4', text:'level 3-49-3-4'} +, {id:'49-3-5', text:'level 3-49-3-5'} +, {id:'49-3-6', text:'level 3-49-3-6'} +, {id:'49-3-7', text:'level 3-49-3-7'} +, {id:'49-3-8', text:'level 3-49-3-8'} +, {id:'49-3-9', text:'level 3-49-3-9'} +]} +, {id:'49-4-10', text:'level 2-49-4', item:[ + {id:'49-4-0', text:'level 3-49-4-0'} +, {id:'49-4-1', text:'level 3-49-4-1'} +, {id:'49-4-2', text:'level 3-49-4-2'} +, {id:'49-4-3', text:'level 3-49-4-3'} +, {id:'49-4-4', text:'level 3-49-4-4'} +, {id:'49-4-5', text:'level 3-49-4-5'} +, {id:'49-4-6', text:'level 3-49-4-6'} +, {id:'49-4-7', text:'level 3-49-4-7'} +, {id:'49-4-8', text:'level 3-49-4-8'} +, {id:'49-4-9', text:'level 3-49-4-9'} +]} +, {id:'49-5-10', text:'level 2-49-5', item:[ + {id:'49-5-0', text:'level 3-49-5-0'} +, {id:'49-5-1', text:'level 3-49-5-1'} +, {id:'49-5-2', text:'level 3-49-5-2'} +, {id:'49-5-3', text:'level 3-49-5-3'} +, {id:'49-5-4', text:'level 3-49-5-4'} +, {id:'49-5-5', text:'level 3-49-5-5'} +, {id:'49-5-6', text:'level 3-49-5-6'} +, {id:'49-5-7', text:'level 3-49-5-7'} +, {id:'49-5-8', text:'level 3-49-5-8'} +, {id:'49-5-9', text:'level 3-49-5-9'} +]} +, {id:'49-6-10', text:'level 2-49-6', item:[ + {id:'49-6-0', text:'level 3-49-6-0'} +, {id:'49-6-1', text:'level 3-49-6-1'} +, {id:'49-6-2', text:'level 3-49-6-2'} +, {id:'49-6-3', text:'level 3-49-6-3'} +, {id:'49-6-4', text:'level 3-49-6-4'} +, {id:'49-6-5', text:'level 3-49-6-5'} +, {id:'49-6-6', text:'level 3-49-6-6'} +, {id:'49-6-7', text:'level 3-49-6-7'} +, {id:'49-6-8', text:'level 3-49-6-8'} +, {id:'49-6-9', text:'level 3-49-6-9'} +]} +, {id:'49-7-10', text:'level 2-49-7', item:[ + {id:'49-7-0', text:'level 3-49-7-0'} +, {id:'49-7-1', text:'level 3-49-7-1'} +, {id:'49-7-2', text:'level 3-49-7-2'} +, {id:'49-7-3', text:'level 3-49-7-3'} +, {id:'49-7-4', text:'level 3-49-7-4'} +, {id:'49-7-5', text:'level 3-49-7-5'} +, {id:'49-7-6', text:'level 3-49-7-6'} +, {id:'49-7-7', text:'level 3-49-7-7'} +, {id:'49-7-8', text:'level 3-49-7-8'} +, {id:'49-7-9', text:'level 3-49-7-9'} +]} +, {id:'49-8-10', text:'level 2-49-8', item:[ + {id:'49-8-0', text:'level 3-49-8-0'} +, {id:'49-8-1', text:'level 3-49-8-1'} +, {id:'49-8-2', text:'level 3-49-8-2'} +, {id:'49-8-3', text:'level 3-49-8-3'} +, {id:'49-8-4', text:'level 3-49-8-4'} +, {id:'49-8-5', text:'level 3-49-8-5'} +, {id:'49-8-6', text:'level 3-49-8-6'} +, {id:'49-8-7', text:'level 3-49-8-7'} +, {id:'49-8-8', text:'level 3-49-8-8'} +, {id:'49-8-9', text:'level 3-49-8-9'} +]} +, {id:'49-9-10', text:'level 2-49-9', item:[ + {id:'49-9-0', text:'level 3-49-9-0'} +, {id:'49-9-1', text:'level 3-49-9-1'} +, {id:'49-9-2', text:'level 3-49-9-2'} +, {id:'49-9-3', text:'level 3-49-9-3'} +, {id:'49-9-4', text:'level 3-49-9-4'} +, {id:'49-9-5', text:'level 3-49-9-5'} +, {id:'49-9-6', text:'level 3-49-9-6'} +, {id:'49-9-7', text:'level 3-49-9-7'} +, {id:'49-9-8', text:'level 3-49-9-8'} +, {id:'49-9-9', text:'level 3-49-9-9'} +]} +, {id:'49-10-10', text:'level 2-49-10', item:[ + {id:'49-10-0', text:'level 3-49-10-0'} +, {id:'49-10-1', text:'level 3-49-10-1'} +, {id:'49-10-2', text:'level 3-49-10-2'} +, {id:'49-10-3', text:'level 3-49-10-3'} +, {id:'49-10-4', text:'level 3-49-10-4'} +, {id:'49-10-5', text:'level 3-49-10-5'} +, {id:'49-10-6', text:'level 3-49-10-6'} +, {id:'49-10-7', text:'level 3-49-10-7'} +, {id:'49-10-8', text:'level 3-49-10-8'} +, {id:'49-10-9', text:'level 3-49-10-9'} +]} +, {id:'49-11-10', text:'level 2-49-11', item:[ + {id:'49-11-0', text:'level 3-49-11-0'} +, {id:'49-11-1', text:'level 3-49-11-1'} +, {id:'49-11-2', text:'level 3-49-11-2'} +, {id:'49-11-3', text:'level 3-49-11-3'} +, {id:'49-11-4', text:'level 3-49-11-4'} +, {id:'49-11-5', text:'level 3-49-11-5'} +, {id:'49-11-6', text:'level 3-49-11-6'} +, {id:'49-11-7', text:'level 3-49-11-7'} +, {id:'49-11-8', text:'level 3-49-11-8'} +, {id:'49-11-9', text:'level 3-49-11-9'} +]} +, {id:'49-12-10', text:'level 2-49-12', item:[ + {id:'49-12-0', text:'level 3-49-12-0'} +, {id:'49-12-1', text:'level 3-49-12-1'} +, {id:'49-12-2', text:'level 3-49-12-2'} +, {id:'49-12-3', text:'level 3-49-12-3'} +, {id:'49-12-4', text:'level 3-49-12-4'} +, {id:'49-12-5', text:'level 3-49-12-5'} +, {id:'49-12-6', text:'level 3-49-12-6'} +, {id:'49-12-7', text:'level 3-49-12-7'} +, {id:'49-12-8', text:'level 3-49-12-8'} +, {id:'49-12-9', text:'level 3-49-12-9'} +]} +, {id:'49-13-10', text:'level 2-49-13', item:[ + {id:'49-13-0', text:'level 3-49-13-0'} +, {id:'49-13-1', text:'level 3-49-13-1'} +, {id:'49-13-2', text:'level 3-49-13-2'} +, {id:'49-13-3', text:'level 3-49-13-3'} +, {id:'49-13-4', text:'level 3-49-13-4'} +, {id:'49-13-5', text:'level 3-49-13-5'} +, {id:'49-13-6', text:'level 3-49-13-6'} +, {id:'49-13-7', text:'level 3-49-13-7'} +, {id:'49-13-8', text:'level 3-49-13-8'} +, {id:'49-13-9', text:'level 3-49-13-9'} +]} +, {id:'49-14-10', text:'level 2-49-14', item:[ + {id:'49-14-0', text:'level 3-49-14-0'} +, {id:'49-14-1', text:'level 3-49-14-1'} +, {id:'49-14-2', text:'level 3-49-14-2'} +, {id:'49-14-3', text:'level 3-49-14-3'} +, {id:'49-14-4', text:'level 3-49-14-4'} +, {id:'49-14-5', text:'level 3-49-14-5'} +, {id:'49-14-6', text:'level 3-49-14-6'} +, {id:'49-14-7', text:'level 3-49-14-7'} +, {id:'49-14-8', text:'level 3-49-14-8'} +, {id:'49-14-9', text:'level 3-49-14-9'} +]} +, {id:'49-15-10', text:'level 2-49-15', item:[ + {id:'49-15-0', text:'level 3-49-15-0'} +, {id:'49-15-1', text:'level 3-49-15-1'} +, {id:'49-15-2', text:'level 3-49-15-2'} +, {id:'49-15-3', text:'level 3-49-15-3'} +, {id:'49-15-4', text:'level 3-49-15-4'} +, {id:'49-15-5', text:'level 3-49-15-5'} +, {id:'49-15-6', text:'level 3-49-15-6'} +, {id:'49-15-7', text:'level 3-49-15-7'} +, {id:'49-15-8', text:'level 3-49-15-8'} +, {id:'49-15-9', text:'level 3-49-15-9'} +]} +, {id:'49-16-10', text:'level 2-49-16', item:[ + {id:'49-16-0', text:'level 3-49-16-0'} +, {id:'49-16-1', text:'level 3-49-16-1'} +, {id:'49-16-2', text:'level 3-49-16-2'} +, {id:'49-16-3', text:'level 3-49-16-3'} +, {id:'49-16-4', text:'level 3-49-16-4'} +, {id:'49-16-5', text:'level 3-49-16-5'} +, {id:'49-16-6', text:'level 3-49-16-6'} +, {id:'49-16-7', text:'level 3-49-16-7'} +, {id:'49-16-8', text:'level 3-49-16-8'} +, {id:'49-16-9', text:'level 3-49-16-9'} +]} +, {id:'49-17-10', text:'level 2-49-17', item:[ + {id:'49-17-0', text:'level 3-49-17-0'} +, {id:'49-17-1', text:'level 3-49-17-1'} +, {id:'49-17-2', text:'level 3-49-17-2'} +, {id:'49-17-3', text:'level 3-49-17-3'} +, {id:'49-17-4', text:'level 3-49-17-4'} +, {id:'49-17-5', text:'level 3-49-17-5'} +, {id:'49-17-6', text:'level 3-49-17-6'} +, {id:'49-17-7', text:'level 3-49-17-7'} +, {id:'49-17-8', text:'level 3-49-17-8'} +, {id:'49-17-9', text:'level 3-49-17-9'} +]} +, {id:'49-18-10', text:'level 2-49-18', item:[ + {id:'49-18-0', text:'level 3-49-18-0'} +, {id:'49-18-1', text:'level 3-49-18-1'} +, {id:'49-18-2', text:'level 3-49-18-2'} +, {id:'49-18-3', text:'level 3-49-18-3'} +, {id:'49-18-4', text:'level 3-49-18-4'} +, {id:'49-18-5', text:'level 3-49-18-5'} +, {id:'49-18-6', text:'level 3-49-18-6'} +, {id:'49-18-7', text:'level 3-49-18-7'} +, {id:'49-18-8', text:'level 3-49-18-8'} +, {id:'49-18-9', text:'level 3-49-18-9'} +]} +, {id:'49-19-10', text:'level 2-49-19', item:[ + {id:'49-19-0', text:'level 3-49-19-0'} +, {id:'49-19-1', text:'level 3-49-19-1'} +, {id:'49-19-2', text:'level 3-49-19-2'} +, {id:'49-19-3', text:'level 3-49-19-3'} +, {id:'49-19-4', text:'level 3-49-19-4'} +, {id:'49-19-5', text:'level 3-49-19-5'} +, {id:'49-19-6', text:'level 3-49-19-6'} +, {id:'49-19-7', text:'level 3-49-19-7'} +, {id:'49-19-8', text:'level 3-49-19-8'} +, {id:'49-19-9', text:'level 3-49-19-9'} +]} +]} +]} diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_xml.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_xml.xml new file mode 100755 index 0000000000..cb8846422e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/big_xml.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/config.php b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/config.php new file mode 100755 index 0000000000..408316bbf1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/config.php @@ -0,0 +1,13 @@ + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/css/style.css b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/css/style.css new file mode 100755 index 0000000000..28b4f6cc1c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/css/style.css @@ -0,0 +1,484 @@ +/* MAIN STYLES */ + +html { + overflow-x:hidden; + border: none; +} + +body { + margin:1px; + color:#666; + font-family: Tahoma, Arial, Helvetica, Tahoma, serif; + font-size:12px; + overflow-x:hidden; +} + +h5 { + margin:0; + padding:0; +} + +a { + font-family: Tahoma, Arial, Helvetica, serif; + font-size:12px; + color: #058cb6; + text-decoration:none; +} + +a:hover { + text-decoration:underline; +} + +a.navigation img { + margin-bottom:-5px; + padding-right:5px; + border:none; +} + +p { + margin: 20px 0; +} + +ul { + padding-bottom:30px; +} + +h3 { + color:#000; + font-family: Tahoma, Arial, Helvetica, serif; + font-size:21px; + font-weight:normal; + padding-bottom:37px; + margin-top:35px; +} + +h4 { + display:inline-block; + width:100%; + color:#B5B5B5; + font-family: Arial, Helvetica, Tahoma, serif; + font-size:20px; + font-weight:normal; + padding-bottom:20px; +} + +h5 { + color:#666; + font-family: Tahoma, Arial, Helvetica, Tahoma, serif; + font-size:13px; + padding:4px 0 10px 0; + font-weight:bold; +} + +.column { + float:left; + width:24%; +} + + + +/* HEADER */ + +.header { + width:100%; + height: 100px; + background:url("../img/head_bg.png"); +} + +a.logo { + display:block; + margin-left:48px; + height:100px; + width:100px; + background-image:url("../img/logo.png"); + float:left; + outline:none; +} + +.tittle-dhtmlx { + padding: 29px 0 0 121px; + font-family:arial, serif; + font-size:16px; + color:white; + float:left; + cursor:default; +} + +/* Search */ + +.search-field { + position:absolute; + float:right; + right:67px; + top:30px; + min-width: 430px; +} + +.search-field input { + float:left; + width:351px; + height:20px; + background: white url("../img/search-field.png"); + border: none; +} + +.search-field input:hover { + background-position:0 -20px; +} + +input.button { + cursor:pointer; + margin-left:7px; + float:left; + width:70px; + height:20px; + background: white url("../img/search-button.png"); + border: 0; +} + +input.button:hover { + background-position:0 -20px; +} + + + +/* BUTTONS */ + +.buttons { + position:absolute; + width: 154px; + height: 24px; + left: 55px; + top:80px; +} + +.buttons a.doc { + display:block; + height:24px; + width:93px; + background-image:url("../img/doc-button.png"); + float:left; + outline:none; +} + +.buttons a.doc_inact { + display:block; + height:24px; + width:92px; + background-image:url("../img/doc-button_inact.png"); + float:left; + outline:none; +} + +.buttons a.doc_inact:hover { + background-position:0 -24px; +} + +.buttons a.sample { + display:block; + height:24px; + width:62px; + background-image:url("../img/samples-but.png"); + float:left; + outline:none; +} + +.buttons a.sample_inact { + display:block; + height:24px; + width:55px; + background-image:url("../img/samples-but_inact.png"); + float:left; + outline:none; +} + +.buttons a.sample_inact:hover { + background-position:0 -24px; +} + + +/* CONTENT */ + +.content { + margin: 30px 63px 0 63px; +} + +.content li { + list-style:none; + height:22px; +} + +li img { + margin-bottom:-5px; + padding-right: 7px; +} + +.line { + margin: 0; + padding: 1px; + background: url("../img/border-dotted.gif") repeat-x top; +} + + +/* NAVIGATION */ + +.navigation-div { + display:block; + height:35px; + width:100%; + margin-bottom:20px; +} + +a.navigation { + outline:none; + float:left; + display:block; + height:25px; + padding: 2px 10px 0 5px; + border: solid 1px #cccccc; +} + +a.navigation:hover { + background-color: #eaeff4; + border-color: #6699CC; + text-decoration:none; + outline:none; +} + +a.navigation img { + margin-bottom:-5px; + padding-right:5px; + border:none; +} + +.arrow { + float:left; + height:23px; + background:url("../img/arrow.gif"); + margin: 3px 3px; + width:8px; +} + +a.view-source { + border: dashed 1px #cccccc; +} + + +/* LOGOS */ + +.big_logo { + display:block; + width:200px; + height:54px; + overflow:hidden; + line-height:1000px; + margin: 40px 0 20px 0; +} + +.logo_grid{ + background:transparent url("../img/logo_grid.gif") no-repeat; +} +.logo_treegrid{ + background:transparent url("../img/logo_treegrid.gif") no-repeat; +} +.logo_tree{ + background:transparent url("../img/logo_tree.gif") no-repeat; +} +.logo_layout{ + background:transparent url("../img/logo_layout.gif") no-repeat; +} +.logo_menu{ + background:transparent url("../img/logo_menu.gif") no-repeat; +} +.logo_toolbar{ + background:transparent url("../img/logo_toolbar.gif") no-repeat; +} +.logo_windows{ + background:transparent url("../img/logo_windows.gif") no-repeat; +} +.logo_calendar{ + background:transparent url("../img/logo_calendar.gif") no-repeat; +} +.logo_slider{ + background:transparent url("../img/logo_slider.gif") no-repeat; +} +.logo_scheduler{ + background:transparent url("../img/logo_scheduler.gif") no-repeat; +} +.logo_colorpicker{ + background:transparent url("../img/logo_colorpicker.gif") no-repeat; +} +.logo_combo{ + background:transparent url("../img/logo_combo.gif") no-repeat; +} +.logo_tabbar{ + background:transparent url("../img/logo_tabbar.gif") no-repeat; +} +.logo_accordion{ + background:transparent url("../img/logo_accordion.gif") no-repeat; +} +.logo_folders{ + background:transparent url("../img/logo_folders.gif") no-repeat; +} +.logo_editor{ + background:transparent url("../img/logo_editor.gif") no-repeat; +} +.logo_ajax{ + background:transparent url("../img/logo_ajax.gif") no-repeat; +} +.logo_gantt{ + background:transparent url("../img/logo_gantt.gif") no-repeat; +} +.logo_chart{ + background:transparent url("../img/logo_chart.gif") no-repeat; +} +.logo_dataview{ + background:transparent url("../img/logo_dataview.gif") no-repeat; +} +.logo_form{ + background:transparent url("../img/logo_form.gif") no-repeat; +} + +/* Topics */ + +.topics li { + background:url("../icons/old.gif") no-repeat; + padding-left: 25px; + line-height:22px; +} + +.samples li { + background:url("../icons/file.gif") no-repeat; +} + +ul.list { + margin-left:40px; +} + +.list li { + list-style-image:url("../icons/bullet.gif"); +} + +.component-demo-placeholder { + width:602px; + height:252px; + background:url("../img/grid-placeholder.gif"); +} + + +/* FOOTER */ + +.footer { + display:block; + float:left; + width:100%; + height:64px; + background: white url("../img/border-dotted-ccc.gif") repeat-x; +} + +.footer-logo { + float:left; + width:55px; + height:24px; + background:url("../img/footer-logo.gif"); + margin: 20px 20px 20px 63px; +} + +.copyright { + float:left; + margin-top:18px; + font-size:11px; +} + +/* CODE */ + +.source { + width:100%; + background:url("../img/source-bg.gif"); + border-top: dashed 3px #ccc; + border-bottom: dotted 1px #ccc; + margin-top:20px; +} + +.code { + margin:20px 63px; +} + +.teg { + height:40px; + color:#ccc; + font-size:30px; + font-family: Tahoma, Arial, Helvetica, Tahoma, serif; + background:url("../img/source.gif") no-repeat 0 22px; + padding: 10px 0 0 63px; +} + +/*colorizer*/ + + +.hl-default { + color: Black; +} +.hl-code { + color: Gray; +} +.hl-brackets { + color: Olive; +} +.hl-comment { + color: Orange; +} +.hl-quotes { + color: Darkred; +} +.hl-string { + color: Red; +} + +.hl-identifier { + color: Blue; +} + +.hl-identifier a{ + font-family: "Courier New"; + font-size: 11px; + color: Blue; + text-decoration: underline; +} + +.hl-builtin { + color: Teal; +} +.hl-reserved { + color: Green; +} +.hl-inlinedoc { + color: Blue; +} +.hl-var { + color: Darkblue; +} +.hl-url { + color: Blue; +} +.hl-special { + color: Navy; +} +.hl-number { + color: Maroon; +} +.hl-inlinetags { + color: Blue; +} +.hl-main { + background: transparent; +} +.hl-gutter { + background-color: #999999; + color: White +} +.hl-table { + font-family: "Courier New"; + font-size: 12px; + border: solid 1px lightgray; +} \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.csv b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.csv new file mode 100755 index 0000000000..b3b5ac6b9d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.csv @@ -0,0 +1,5 @@ +1,0,start +555,0,middle +1111,0,finish +2,1,child 1 +3,2,child 2 \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.js new file mode 100755 index 0000000000..68a70a00c2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.js @@ -0,0 +1,4 @@ +[[1,0,"first"], + [2,0,"middle"], + [3,0,"last"], + [4,2,"child"]] \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.json b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.json new file mode 100755 index 0000000000..a771c701a9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/data.json @@ -0,0 +1 @@ +{id:0, item:[{id:1,text:"first"},{id:2, text:"middle", item:[{id:"21", text:"child"}]},{id:3,text:"last"}]} \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/grid.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/grid.xml new file mode 100755 index 0000000000..62fd7d3287 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/grid.xml @@ -0,0 +1,113 @@ + + + + -1500 + A Time to Kill + John Grisham + 12.99 + 1 + 24 + 0 + 05/01/1998 + + + 1000 + Blood and Smoke + Stephen King + 0 + 1 + 24 + 0 + 01/01/2000 + + + -200 + The Rainmaker + John Grisham + 7.99 + 0 + 48 + 0 + 12/01/2001 + + + 350 + The Green Mile + Stephen King + 11.10 + 1 + 24 + 0 + 01/01/1992 + + + 700 + Misery + Stephen King + 7.70 + 0 + na + 0 + 01/01/2003 + + + -1200 + The Dark Half + Stephen King + 0 + 0 + 48 + 0 + 10/30/1999 + + + 1500 + The Partner + John Grisham + 12.99 + 1 + 48 + 1 + 01/01/2005 + + + 500 + It + Stephen King + 9.70 + 0 + na + 0 + 10/15/2001 + + + 400 + Cousin Bette + Honore de Balzac + 0 + 1 + 1 + 0 + 12/01/1991 + + + -100 + Boris Godunov + Alexandr Pushkin + 7.15 + 1 + 1 + 0 + 01/01/1999 + + + -150 + Alice in Wonderland + Lewis Carroll + 4.15 + 1 + 1 + 0 + 01/01/1999 + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/accordion.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/accordion.gif new file mode 100755 index 0000000000000000000000000000000000000000..e456fffb4441b772fcf722a700d176c12db2b951 GIT binary patch literal 394 zcmV;50d@XINk%w1VHN-u0M$MKdwYB9>+71v&~?k|)6>&syxX?6w)y$_|Ns9zp~WXB zC+PC@-rnBe?eO{h{POtu-72h z%;M+u`TDce+~Mx==JE5q+2H#8{rvs@uG z>h0j*;OX-9#NOn=+~Vr<^}pNU_xk(L<>~$Y{`UI&*68f5(b>n}<=E-%)#vN;`1$|; z{{R30A^8LW002G!EC2ui02Tli000K3K%WpmEE?Rxv$du3;5US9|ZHX;}u4-*m#5DgR+a!UvT zn3|No!X>B7aui;cm0#^>^kk&(IK?}CYmdw_x0+1ZB6}I~)X1(3Fy1RPD;NJ1~lF{bt>+FMwiN)sfm7ANO zrKQ-~*@nyH==J&1>-CnJn|gqO&Ck#J`ueuIy88P0&Ck%?@%O>R#nJ5b>g?;e;_vbK z`~Uy{A^8LW002J#EC2ui02Tli000J%z@KnPEE>m|Dg#aDF))ZSq1bE|A+QPq zhQvr>(x4m@%W9V!_!wSrf)x6^A`VfH5<3k9a93J`0We)sMF9w2h(AzE07#5R0FjMD z01B3u00$tIprN8f01XEUJOnN@Iwc+(ED#qM3!6WsH5@4f88{C%9W62yDl@f305=7q R%%GIZm!!7Q)6tDV06SOc%K88R literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/arrow.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..00f11449511728eb8bc0c56794913e860dadcab4 GIT binary patch literal 185 zcmZ?wbhEHbE$2Rx1{@hc4T#TQ^xEv##>geao)-e)G2oCY7(c zbk}YAny}@2BBw6(n7OWG!-0+syBjY(|Ns9#0}(*+CkrD3gD`^*NG-@t23E5NDt#%L z^DAgdZ2H)}~ig`|k@d GSOWmhy**k0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/bullet.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/bullet.gif new file mode 100755 index 0000000000000000000000000000000000000000..cf1706e03620fec434c13bc80e4fbe2cf71f05c6 GIT binary patch literal 51 zcmZ?wbhEHbWMg1sXkcJq?b-JK|9{1wEQ|~cj0`#qKmd|qVB&I-W6Q4Ol`rNHVXy`O DGw2E* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/calendar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/calendar.gif new file mode 100755 index 0000000000000000000000000000000000000000..2a8bc0e63c4ffc2e7a8aaeec635f97477a7cd9d8 GIT binary patch literal 207 zcmV;=05JbYNk%w1VHN-u0J9GO|NsAMYinS{=+My6)z#IZp`nI`hIMsyZfI9DmNR_l`%^+MdlfPnC+c3TsZyYpNOu#6%`c|CQMkncI~=# z>l{m0%$+;e;l#_{%{LP!9b-8Bh+*|9hOJlP&%9ySbEj_ov4q}24xJX@vryZ0+8WTx0Eg`4^s_!c;)W@LI)6{QAO`Gq7`WhYyvDB0U7*i=|m zCgqow*eU^C3h_d20o>TUVm+{T^pf*)^(zt!^bPe4Kwg3=^!3HBG&dKny0|1L z72#g21{a4^7NqJ2r55Lx7A2F<7;)ua#$BaYaU{s}FRHJ}6p|q8TOxOgkVZJkbI<@MNEw2Tbclz(mdX|KHy~ zzkmJw@%`J^FP}es{P6zW+c&RYy?pWf+0!SFA3c0<|K8m@w{P9NasArWE0-@_ym0>9 z*)yk4ojh^;*wG`04;?(Pf8X9cyLau}v3=XtEt@xO+^~M#+BK_Jtz5Bu+0rG87cE>c zf8N|VvuDkmF@4(9DU&BnoY3Fb+tc0E+0owC+S1(A*ic_rTT@+CSy5hAT2fq8SdgEW zo0FZDnUS8Bnv$H9m=GTq8xtKB84(^98WJ277~t>c>*MX^>EZ6?>f-F==wNSWYh!I? zX<=?=YGP~z%usr|I@(&A8tQ7QD#}WV3i5KYGSX6#65?W_BEmv~0{ncuJltHI9PDhY zEX+)d3=E1tS%72;gAS<30hQJa?57%1nwnc$+uA!iySjUNCA$5iEFF7WIU}q&+xoi# zG~JSVg-o;sQ^LQ||{WIR(e!qgqwY*T_0{p3$6wPCNIxOt;gHm_}g?Llg^o)#oQWb?C zGp5jSLLd01&HeC>*$r+@$bd+YVd(J_pMU+*ntt~5ojc36Z~yi8@6zqt zk6pk1>f5)a5C5Nk@L7B)TMnjFoN+#@aD>n1rx)aLXx(J=6<8%FavXkmIw!fz$R9%ZU$jJ0fQ7(hXw;Hrw&Gk$*tn5sths) zB1cmhWaKg~urNII_M6*QB@wYJMCB}}aND{mTU;1?IRrA&rl@2*VC9q1Q+Z;wf}xR_ Nog+g>ur1SIhh=_>O)6?zk z?OR)0Rjt#o+3RX*YGPtytE;Pfdwb;M*<{QdCw`|9=j z0EE4N!QO_&;Q#;sA^8LW0018VEC2ui02Tli000Hu;3tk`X`X1RuBAdGLo5)IIthpq zA(mkTkq2U+Fi9eTf&##70uBYk19Bh@oy-aV<2)E5MUjJWP)wMcMk51gXqk{m^&@aR z9E-ws1ITn33=K^N5F-i_Pzz^F86JRwOa~7w77G^?6ipRckQWOi2@Vh!1p!G;3>*wh z79$A@0ssjJ1Ox%GTdAuPpCT3mOacZ>2?0(G8UO%L1p*KV3lZZg62bup0U#u(!J?qSg9t^0002A2S%_%> literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/combo.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/combo.gif new file mode 100755 index 0000000000000000000000000000000000000000..8dba9afe5b5a15d97a904e4cb7e9076932a82bff GIT binary patch literal 186 zcmZ?wbhEHb6k`x$*v!fB|NsB&?Ck35>b%mjt5>gHxNsri$cxj@KBOFd4wPcR0E$0Z z7#SEi8FWB0ATt#uVQ3V;0gF=x)4vewRJ zmmlWVG=Bg7J@wFotn8etSFdJf=VYxp`0LlN+B45GGc(gxAN=&`(}M>O)~{bbZ{EBY zFJ5$XbeubP?$)halO|1i{``4;ef{#~%iG%8+S}Xr@85s)*s(>67Cn3REH5u_-@bj{ zzI|J|bm`~MpJ&gWy=&L5sZ*y;o;uCBGM?a!Y-zkmO3X>HxHW5>Gn>u=w_eevSO znwpxvzP@G4mi6`bU%Pg#r>Cc@yZhn8hhM&Yxp)8m{Q2`2E?jv0`0?p8W^{ISO_(_G z&6_v7cJFR(Zk|4U`q86D&zw2a)YSC<|9^(T0Th3-FfuR%G3bDt1Bw#{_8SdBO-)P^ z9L*h_UCc5(tddG(XD6pBYog}qC(6itxJA#%P2Njh_hM&&iguH`0n@Dx8>@~$r^Az* zyp8QUlr1ODWwo_%)G=(9^L15t-4v9X)U?2@i9z3GNyR0_BYgfrPQ6;CUP0{A=4~8G zg_@U_g{@EGWok^Ba3pGZfn~E<#|cgsg=Sab1x_qVQ_nBD_}heU;(<_G*11b0N&C-!w6v0vl7u5KR;^mqGh^x?3nK#qH-ipH3}glaOH{#0&((V^UZ35~%B@lL_=O<%s;mbhI{ACHb|>6t zn$6bq@IQxR1H%H}sHVdSJ9*L^SmsT#^x)`p<19M0C2tXvYogCSG1JB^zn)G!>9^8i TRWR4YH){QL=kL2PFjxZsgXu@f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/dataview.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/dataview.gif new file mode 100755 index 0000000000000000000000000000000000000000..43e2284ca41972eb7237ad28ca68019bacfbfa83 GIT binary patch literal 222 zcmZ?wbhEHb6k`x$*v!FDU0wa=&70S+UsqLCm7aN3dK!pcmYjb1|NnmmY(ViR3nK#q z2ZIhs5@ZGgOSiyD&((7knl0UqNvW|kZeU!RptNGwrk7olKCR#rdT=de1MimW2c9MG z>@vQp#{Qwf&gVs{*HxX!g>#;-+B`SoL{noy#5u1WDw6^PX1g!RUuluie?KnbmCFn1 zb+W$xF^wT@;$aeU7DCZI23m}nwnoLSRm$oG9#hh6C(ZDf-Q!$bG}CQa^XkCx_BKHV FYXJXcR?GkZ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/editor.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/editor.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea3c1211957a096a080c1076eba86eaf644af888 GIT binary patch literal 280 zcmZ?wbhEHb6k`x$I3mjM|NsB0s;a!wvggmA&%g76xnfafX6DzgUk@HUxPSlt;`1M} z58ll_cqeklP1QNaZ~popvEydM_M6#>|<@;5%zk~)oio3ygi)nD*pTyo6ao2&c?@FBWh4qS>C|L$CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/file_link.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/file_link.gif new file mode 100755 index 0000000000000000000000000000000000000000..47f7e849886319b6c683ffca03f54cafd96541b9 GIT binary patch literal 1109 zcmd^;k5k%p06;$o)-+QxbL?g;t*OneW^)U)>o7Z~lT!-LD`$3VwV`EmJ6*=nh3Fd5 zW>cGM4AUBtVkT@;JUJUE0-}O|0~K}1M9~2|0YUlot^FOn|KQ!dcRW8AgFO`w;(=EH zCKneW2x@F^pRriR^!kT3+nm+9>~!|aWDizXC0gyB(NRu+|KRxefLyLL8g(lxqRGj% z%}xElN(%&otllxMsjG&gq))iH7SY9ac>?hYp}JgS zHV;@;a~2Dg$9ub`*J^Y8HV+x?+istavsAo~NDM)nn9};Q-K!~|-nu#o(nvjI_I`;& zxd(sliQC>O6h<8?V@VvLP-u8+iE!PBc(d*yM7zo3f!EIPC6bg%eXB0oAA~>(xqn&$ zlBnOea=*F5gC&0@pPiK%41eFhPZN6R?cu*9D$ZX47WQb}zO(yF>E>$yB%Fj(>DmzP8o_Ec{?{xV&$Dz!lH^r~Uq zqS|Ca6*W2i5WezP!RV;R=iBgjvZ$iN7ezUZ2JkB7XhkkE3E(n~CNXX-NWYY^kYH1f=CZWfapqf__rFHP#XlgA6iHMGjjYQ=g7H0$GUaay* z=Pr%{5%n2m8TAv58J-Y#r50-fFjn%1cofLaQ8Yb^pOzvcU@$frX~!YM;8V}vI#7)& z$%uG8W-mDxsS(%d!gp8mn7F%=_Sn>W7ruilo@qHoicaF=%-M6;Bi9f&usQD5BlKA2e?ibS4$!G)uVKsPpy7t(bHZ4F&^Q{{rUvoV!{Q2|e@87?lIB{b4qYrQ2zTLBDPhnx< zg$ozfUw*J<%a)HHKOR4R+;7pzZQHhe`SRt^p+mbKzQ2F}{<(AK_V3^S`0?YSqN45F zx9{4u>-Fo`Z{EDQcJ11xO`F0u-#>EX$d4aCwr<_(Gw-P9wA~Zd?b!9;-PyBe4<0+()_~=|&8BaS2(FIH*?#H?v%tc*|wYjK%A@ol4G%eJPPV^BBcgq65=+&DzpYm-ze8cByMy?(swj{fk%^ z%j0e$>AoxW^-Yz))n<_#2i`Je`8y@p{A1gy(-@UowkSTq#H{=A4O7jjCEs8C7G|&p E0GCHUSpWb4 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/gantt.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/gantt.gif new file mode 100755 index 0000000000000000000000000000000000000000..343f4d5b1f867a8a534e84378bfadb70681d24f9 GIT binary patch literal 1010 zcmZ?wbhEHb6k`x$_|Cxa9}Eif^Ao!lfBO9S`HL4%pFjWb@#C*wzkdJz{o>`zjw82M zuUhrz&z~pHo-KUd)!5KbTU|YE%9Qix&K*2(;NAQ8pFVxcSseBI&!56o@!!9HZ*FQj zaq?tSL&J+#uTGyn{r3I)mq5muGx^J7pTB(h?fduKCDA8OoqGS_L*CMu{ADpktK$n+ z#ucoH&07|8>g37dH3>zl6W)FJuwniB$4{QTe*OCFnKLI(o=R9#oUpp+!-se4*Kc_8 zLROZq{$f(p|&&f@L!!5BmiJktHX% sSQez+J2P{cSEHzFj?CP^7WWn|`Bh>9g^vzi-;jKIp6~9mgAEMU0J16QEdT%j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/grid.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/grid.gif new file mode 100755 index 0000000000000000000000000000000000000000..db0832caf1a199ed7310ff87351a80092fb89cce GIT binary patch literal 191 zcmZ?wbhEHb6k`x$*v!F@ot^#v|NrXh>VzXNE?l^9_3G7>qt8!2`v4SVzy=h5vM@3* za4_hABtd2{u;d7w^jy8y;{pPA`FU$7ax%l$)jyrFTJo@0b^5Wd{&%)MTx%>WG z|H()FCm(OW^Y-G4&v)K^OW1U+>G1vLL-+sx|G(<$%e(Ks9ew;^&V^?aPCoki=Wp2B z%Vm3SXK%mh4>I9t*XVpI2$JAxdB=SJ-A=BNyjop3X4ssmk zZw)xQ#6L~3;#QL2;pS1|{`K2tDYHVO3rn-QpGU`njD-jIyW)5xJ|sRm!Yi$^)LUdh zGK1s-3l;&%1nC9|RRsru8A48clcj`?h Kv8OZy7_0&8vgB9* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/menu.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..2fbd60671c8ac23b0b3b5a94a2dd03135738f70f GIT binary patch literal 270 zcmZ?wbhEHb6k`x$I3mDMU0q#LQc`;Q)xCT79z1yP|NsBAw6xc+UvJyC?egWzKY#vw z_Uzf`&!2DJys56PZoBX(PyqueK=CIFBLjl~gAPa&$W8{M#X4~h23FJ7rh^tb9BxkvFJyeFb7W2QS{o$nzrdkm4inD<1BnT}V&V;K9}{AD zHZaULYjjoM;bO1#-~YSLs3NDixm=5(qqD1{o!PX%pP!+ZZ^FdMnhY${rnh&`?`2-J fc<~I4Oui*cmZ`IGtXj&Z%{ISNXZsFyMFwjC*PUSv literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/none.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/none.gif new file mode 100755 index 0000000000000000000000000000000000000000..f8a866519c08359ee3fb92e08727506d639dd798 GIT binary patch literal 45 ucmZ?wbhEHbWMmLyXkcJ?`0PIe1B2pE7Dgb&paUX6G7L;CE&VG47_0%?Hwd)= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/old.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/old.gif new file mode 100755 index 0000000000000000000000000000000000000000..680e116e2badf6500bdc6b7338898b3938e45451 GIT binary patch literal 388 zcmZ?wbhEHb6k`x$xT?wU{qNtefBu|#@L>9~WmA?eJ#qW?{)-oPojJ2?$Bu2sk8e11 zXwBZek3W1kb?460ckfPIy?W{X{rhj*2XEg# zeE06q`SXV_TsVH^%K!iWk6pfe_tmQ>A3xrC`SRN1#~1G2J$3i)`8#(mKX`EJ`t^s; z{xeVv6o0ZXGB9W|=zvTD`H6vT;ejay9y(I}CzceQ%n{;lZQBx3z@^rhb1g7dj76j& zLgs;(jttfSNT8M= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/pdf.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/pdf.gif new file mode 100755 index 0000000000000000000000000000000000000000..e315235a26bcb6ad08a840b4a1bf79e32e92f263 GIT binary patch literal 646 zcmV;10(t#MNk%w1VHN-u0OoxF0Xa>MpP$U#-QMf#)aB*%`T6|*{&Uy+q_wrR#>TkG z$>H+y;_mJF{QR-Q!=|^l3vZL1sj2n(`q}8|=kW0T{{H9j@aORH+3D%l=jQSD_Q286 zE|RwF^78!s{YR_MuD`!jxZJzU%*xx_DUGqc&dx27wb|(CnX0Ps_x6n7|N8v=zV840 z{{7i-98kJ{`=H>xqiQ@C~@A>%>cAClB+5usNciaCZiLGD5 z=ich;0Az^y{QC%OkUO8lJ)yFH?9@FIq)_5A$*|Nj6000000A^8LW004aeEC2ui z02Tli000N$fPI34goTEOh>41ehCBj~kdHfzBYbQ_Icp0GStA{YRYG`YQzj&Fdp86+ zJ#L?dAtW+w5Jot3TsCP4ygr8?NKZ8oL27SF00hbeN{4m;(9zKuO+Oi8iW_A|7$+PP zCleTX8;T_ZR|5lRFY0pxC5j?0V^UsZdR+`e3?hmO6f97{5=PDe3l}aZP?P}3mLgUT z9N=IgN{9rC9B6>DL literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/scheduler.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/scheduler.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea6c9aadd14a0d4704643e63be83a7fe367c0c74 GIT binary patch literal 432 zcmZ?wbhEHb6k`x$xT?u;`^CEh2M)}hJ!j6z`?V|fRoB%1|NsBkqxY9yeBQEk+ssY- zfByOFx$tb(rfYhWk1jg@)N1C*X(u0rF24}8?ELl}JMP`Pw|)C|#+sd5w{G=Wd@gCi za>vfK{!7lO_aD;f-u>X=L$>-|j&n}NtUNE?va4{(UY6RO?De~irX1})cpGRD1I0k` zCkrD3gC>Ix$Rv=T7}(Apm{KrKE~rBG9cXRhzF4U+^oxUOZ3X?uiB$AG<#Y* z^ZW%1ndi=!FnbEa66gL|D^{#>l9E$Z*H}Jl11}FdH#?8wq6Mo2CE1R#u?i`z-O;Pb z$8q8khwPcD=hV2_(%HBbuB|+G;TY>N4&~yP#TC;v1!ayO6H-b0$|xb?!Yj%oHu4;(mf`t<2nUw>}iym{ZgeLsKx{P^)B&>{wE1I3>#j0_Aa3_2i#L4IOj z>u{J<;GrYce_~0|$sDWs=ME=$t&LjF{?PHj+p7Kd-Y7Wev2$c>nQ0R^fvsVOjDtcw zNAXVSxEH@)^YF9O)iLDBGO%@ZH#Bv3Gw`a2RTlPEOyy8fR1(Qf=PAt=5mr!to>8ZJuq2xL~s5fsi}K3<{Y^5{_F9l z?{B{SB0po_x8Hw`JbBl4;?9O!FGMEq`v3nw18sofPZmZ71|nTh(6hjyk zxO})38A6p9nPeD5dCOdxnW9-Z`kAVPrCp>17{u5-C$MtImH09WxvU6Uy=LvY^#P6y F)&NZ&Z)yMl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/tabbar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/icons/tabbar.gif new file mode 100755 index 0000000000000000000000000000000000000000..8a35665af49d9636803bc47da1f12af0cb44b98b GIT binary patch literal 258 zcmZ?wbhEHb6k`x$I3mFC|NsB&?CiYKvV+Z^fkA*l2c!vPCj)D}f=XXX=Ddtm>yjSq)0bu_ ziDh?NXa2iE=x%Ts~%hM|b%5rOK8Jc(`@4kFH+58mNqc6rlK%g^__lfI$bO31lY&Yk`7FUrOe@j8*I2aP2A3 zIW6EI;JogAP23*y)7xY4gmPGxPHD{{R1M|C`Eu8;UA?`%YaVl34H5Lw0G95@}9tPVe0mo kGj<-$xOi#Tl3nL7u0HW#-6M`-0cM|lqMyuFc@ zm&@kxp{AzH&(FZa!=a_7t+BFzhKHxCtcsA3sjaS+nwyD?q;k3Z3=p{}&eA&o1lX*0TjK=|1Zh+N@PYvwkD|k%ToMf&*&G(j z%T!E@^o}`cXxMW#piBr zZs6eHW@cvX?d_MBmwkPG{QUfdg@yC;^V-_lfPjF4f`XKklU0b z-Ve#VZa;h+0~cp}IRy$L76@^KI0YCad5kv&3?zUT4VfGZoD&lo1p^%(5haNSs2K{Y RE*KjO45ciyw6!cD06S>xdbR)n literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blank.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blank.gif new file mode 100755 index 0000000000000000000000000000000000000000..d7ae4067134ffb090de8adafdeaf575fe11a411d GIT binary patch literal 56 zcmZ?wbhEHb6k-r!XkcLY4+e@qSy)9F7#VaJfB+=Jz{KCvzw-23{>5{)-0I$ZZ;m*F FH30ie6G8w0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blue.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/blue.gif new file mode 100755 index 0000000000000000000000000000000000000000..e11f4ebab8bed55db99bd8e3e6ffd1cb3a66411d GIT binary patch literal 75 zcmZ?wbhEHb6k-r!n8?7uV0`937yy}yKUr8s7?>DzfNY?w5Ca2~%#{9>r{D4`Gi?b< Z*FCrWG|r^wjf3ZYXE#s8ma&Q literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/book.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/book.gif new file mode 100755 index 0000000000000000000000000000000000000000..b0ce63a9d1cb3db01408111118b0be965b81a214 GIT binary patch literal 184 zcmZ?wbhEHb6k-r!*v!DdkoNz~nKLGv|7)%J4+N5>|2+=;ciQ{k=g5EmqyH_p{nuX) z5(g@T0L7mytRf6N3_2h#$P5OS)Cng&SFdGlC@PdZy-4JaE8l_z8pj=j)HOD(O;kvc zS+%8BnV~6dd6sNW#}YS<7|H&&7Lyg40xfP!OaxPm);P&0-DYLs5Hd*c**EK=aA|bK cwiBmIC*Pj?zTstoY-U4~L~Uyak066J04g9!djJ3c literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/books_close.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/books_close.gif new file mode 100755 index 0000000000000000000000000000000000000000..e4bd9d6fe280bc61c2941223a06b926db88a6bb1 GIT binary patch literal 189 zcmZ?wbhEHb6k-r!*v!DdkoNz~nKKTj{{w+!$=?f~{@(xo_wo0?H@^M_iU8%&fZ|UU zRuKkH1|5(%$P5OSEQ6DttCzC8*sCv@&?vFQF(Te#TKZJJMTKYBFL;oN+k)9|$B%{@(xo_wo0?H@^M_a)I(_K=CIF zs|W)pgAPa>WCjCEhQZ01Tzhv2d2{b)RjgzE;JeTwOl{gKWrgZH+{}zgZ`x816Z>5lk r&xAYQ3uZ7T{y8AO*9!obd;15yD} z%fReYvFpyif?i9`4`?y4AuZc+B|;% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/folderOpen.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/folderOpen.gif new file mode 100755 index 0000000000000000000000000000000000000000..c193e869f19b0553efa0244e817e413a2c34959c GIT binary patch literal 139 zcmZ?wbhEHb6k-r!Si}GV|If^vIg{c4|Nm#sr2YRt6UYDxD*j|)6=7gw&;h9csbyde z$k=t~--J%f$3n{KiG@G!I|N>0n0L#8VS44hqpNyMT#u}IxYto|4a>}PUtj(#ICy8m ob8ZfX^I;z)R;*jJcHXvM)mo*dQV+5vW}i>*t~%SN!oXk+0BBM?ssI20 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/green.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/green.gif new file mode 100755 index 0000000000000000000000000000000000000000..315bbbeb7a692b93e53eb48acaadd5d4d7882e91 GIT binary patch literal 75 zcmZ?wbhEHb6k-r!n8?7uaK`vQ7yy}yKUr8s7?>DzfNY?w5Ca2~%#{9>r{D4`Gi?b< Z*FCrWG|r^wjf3ZYXE%b8ma&Q literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconCheckAll.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconCheckAll.gif new file mode 100755 index 0000000000000000000000000000000000000000..d90899259bbd5ad85adf03a42f221d53a46af70c GIT binary patch literal 123 zcmZ?wbhEHb6krfwSj5V}XI-@7)K}TECkzY>|G@yr00PCIEQ|~ctPDCJ4oEEnvqQwL zJK6?b9&$S@+E=kCBuL~ TzHvnfS8yaVnX+Y1_-%^#tc!qxia%LcMHtu_bQpjD zq?Uo%xnkEHZv!umd72jKfufp@8eMmo`yL8Rxo63zRbA6K>rl3NvqjEn6L~!ro1bp3 d6ML5|UO0olvBYaCXI-@7)K}TEC;!2K0R|L*vM@3*urTO=1VCyTm`yx(-O)Di zvXI+h(Y}gBB0(Z=TE?Wi>3uQ}*XD5YuULKPtM&8mr_OJgrr@9>mF+Mw`DBis5Q8-U Du<#}? literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconUncheckDis.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/iconUncheckDis.gif new file mode 100755 index 0000000000000000000000000000000000000000..eec88a7e1beaa110b1c6f95da85c85efb9ba4780 GIT binary patch literal 117 zcmV-*0E+)dNk%w1VGsZi0HOc@)6>(cs;Z!>wU?>BQfh-KHA4UY{{R30A^8La6aWSQ zEC2ui01yBW0009zXu8}>FiHqsxj2uiNC{vV3Y_7IC~2Xh+I=kOns7Xyad6k{p6ex? XEjSPukH^gdz-&63j;M6HNB{skw}>oR literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2c.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2c.gif new file mode 100755 index 0000000000000000000000000000000000000000..920010b03fbd82fd7aa73a55b89bc80a6975af46 GIT binary patch literal 267 zcmZ?wbhEHb6k-r!IKlt|#l^+O#>QvPoRO523C72&ac&NT;Pp%cA#Oj#rl)Vq9P?QOe-7G(|&#LBb2b9Q0j;IOJy;?8Da zVqxbIEac)BQs6V7(y5#bioWaefR;FHkYyk)DhB7-#m_fAs6 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2o.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/item2o.gif new file mode 100755 index 0000000000000000000000000000000000000000..58163b069d75ca4daec6455f23a4a1f7b3682975 GIT binary patch literal 263 zcmZ?wbhEHb6k-r!IKlt|jg5`o-ri@X*~6o0a?iZC!S=m6P3Ss?}nCW$HiD>+~DyLOwL V>$-Y2=G*?-P>rZmH#t@YYXBh07Qz4k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line1_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line1_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..96db473332db2f371f4de0a22ae74168d7cec4c3 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{ujG2o@7!&2t}F81 Ri%)NALp7pQUx+YR0{}`36h;65 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2d7bdd5065ad01d005de788ffceb90e7ba39aab GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCh;l#D>+~DyLOwL V>$-Y2<`-MpBadm%W{NOa0{{&)7qb8W literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e6c6fcf793354c9dd690740e0a406567b661166 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{ujG2o@7!&2t}Alc R+SB`6A9+k$7Qw(^4FE_16iomC literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3.gif new file mode 100755 index 0000000000000000000000000000000000000000..d718be218facdbdf057fc5e92b5b86580b131071 GIT binary patch literal 73 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCaEd?D>+~DyLOwL X>$-Y2<`-Mp1+}o0%!M~AMHs9BQ{)(f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..df7f5d805b79926663e30ae1767f3b02e02a5c1e GIT binary patch literal 67 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFiG|FujG2o@7!&2t}Alc U+SB`67tDxFNu4(>n1R6>0ErM4cK`qY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4.gif new file mode 100755 index 0000000000000000000000000000000000000000..29285e5986c766d8507e3bb295c38f2337577bc9 GIT binary patch literal 69 zcmZ?wbhEHb6k-r!n8?7;($exD3>X*~6o0a?iZC!S=m6P3Ss?}nCb22~D^I`WUp!|D UQ=##?cSXM&7e49rU}Ufc00XHPu>b%7 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/line4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..6c9745208fb34a7b82447d228af45c5d871d2749 GIT binary patch literal 64 zcmZ?wbhEHb6k-r!XkcJyX=(ZY|G(l-7FH1kMg|=QAOOiQFp2l{uRQ&hfAO3xjRnT* R{uI5c4bpH*krZLD1^`)h6eIuu literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus.gif new file mode 100755 index 0000000000000000000000000000000000000000..ef04a54696e17442f7d3a858b18e2da9db1c2e34 GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNU{agYzw-23{>5Bd lu8B3=Q%KlX>BCkwzhTj{h;`hYUHRJn(^Q}S;uB@C1^}ss9ftq_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..0372294cb98eb287dd2f3be297f179f355ec7e35 GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrkIsGd&U-P?nmvnZ2 p6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$I8Ri-p0gW4FF>GA6ozb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..521c2bf92ec1df08f3dd28711f148573e684cc85 GIT binary patch literal 84 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxPU&CC^_t(c lyQH!EmYc?KrEIsGd&U-P?nmvnZ2 q6khn-AacIA)*X&K#six&gS|3d%}MULAzznL$9jgf-N~Ji!5RRE<{%jW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..837f7c329426b5d2e98e14c36c85d64a9cf763de GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxP3d3B^_t(c myQH!EmYc?Kr!IsGe7zvX`{xaFE! o(>=$8eU(0JW%3P+mZ|$KwcNMXsi`>W>7~3od!AT}FfdpH08)w}LjV8( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..6dd9fbef59d545cca9e7b74d41c19b4942d94eee GIT binary patch literal 85 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QxP3d2G`YpdQ m)0S&&VQJQ-Uu6^BxDHlwJzSEg`#o!#>eXXe?mGe)7_0%s3K|gr literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..e2e30fcb24250b3743eae8c00ec94c54c8bf9cc4 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7b=zw-23{>PkK nu8B3=Q%KlX>BCkwzhTibb-$&S`_?)&6(>EtbnbgKBZD;n{`w$| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus5_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..ae0885b73bb5a94bf0751a3994c2f6a6c0c5c697 GIT binary patch literal 82 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%PGPw8KI`YpdQ j)0S&&VQJQ-Uu6^BxDHlwJzSEg`#o!#>eX+$q72pmbi5eH literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus_ar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/minus_ar.gif new file mode 100755 index 0000000000000000000000000000000000000000..4428ba150031442de188ee8ae60993327805a3cc GIT binary patch literal 68 zcmZ?wbhEHb6k-r!n8?7u!^6YC!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QRPU&BH`Yr$B VIVDZisvHg9xY{0h1hFz$0|5Ip5m5jD literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/open2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/open2.gif new file mode 100755 index 0000000000000000000000000000000000000000..8881b6989408b0ce1ba463f8b3ef66bef73cd01b GIT binary patch literal 207 zcmZ?wbhEHb6k-r!IKlt|y}i8-4i0C|oRO84O-oB#yLPRhpy17$H)qbASy)(TY;64Y z?OP5G4i66xX=&-LTekwm7cE)@R2di;SY2KH|NnomG1v*kpDe5*3}OsAAZd`D46Hs2 zRQpmg=Vh###mr*(dWFt8f$l>eCAM!hVeiZm2ngZmbyJ+!py1OO&+Nb|$HBT{3YQ1d hX4OTH-BoqOrZl_~fAh3#Z{*tRRbSs#)Nn9Z0|2WULyiCd literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus.gif new file mode 100755 index 0000000000000000000000000000000000000000..abb84bdfbfa5fbd6f188a3a65eec7b077229eef3 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7h?zw-23{>5Bd pu8B3=Q+S}8BR4s7p_$&y1Do!qcNrAyQ&FEhP4(+PeoY1jYXCC)AI<;( literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea2816efcea7a32f53f467c4a5fde344d9b4f585 GIT binary patch literal 95 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KqfIsGd&U-P?nmvnZ2 t6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jv>jP=F@S-=8UPoZC2#-$ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus2_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..f1ba5825bfba225a5a88545007fe5e8dd5b30a3d GIT binary patch literal 88 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`PU&CC^_t(c qyQH!E*gb#p)2rvc?+ajHum%7b7#uDD literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3.gif new file mode 100755 index 0000000000000000000000000000000000000000..cd6967e52b92d46da70950f18335896de54c9fcd GIT binary patch literal 96 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?KrKIsGd&U-P?nmvnZ2 u6khn-AX4r@E7$djb5F7y_}z4=XF=Z1-W|#HIde~jw3#m2_(Fq$!5RQNWhH_D literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus3_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..b8cad187409bbdc5e3479796c03d5890cff0c2e0 GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`P3d3B^_t(c ryQH!E*gb#p)2n))>-K9fFjxZsF=rd% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4.gif new file mode 100755 index 0000000000000000000000000000000000000000..185bd9b7047143849a01d2e6e92a24e96abdf335 GIT binary patch literal 94 zcmZ?wbhEHb6k-r!n8*ME|NsAQX=wqHia%LcMHrYFbU>mYc?Kr^IsGe7zvX`{xaFE! s(>=!ryg71{GZ&iaNgmjA_rX#($vOI*UGnWo(^NUnwH#4g%)np`0M5K2f&c&j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus4_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..ce882e49cf97aaa9bb1cc1861a68d66990ce9f9a GIT binary patch literal 89 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`P3d2G`YpdQ r)0S&&VQJAVmo@LEw>Y&`9sD)(vg14no^wiRk(c5=)$P|{V6X-NRgxVb literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5.gif new file mode 100755 index 0000000000000000000000000000000000000000..72fe4e577f3a24dc19f47a60f070d55cc0dc1b2a GIT binary patch literal 92 zcmZ?wbhEHb6k-r!n8?8J|NsA%mKFvuL-8jIs|W)#gAR}jloeuNVA7q_zw-23{>PkK su8B3=Q+S}8BR4s7p_$&y1DozXSn9?(N1wAxzCCH0DkoR_K_&)k0Ga0?PXGV_ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5_rtl.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus5_rtl.gif new file mode 100755 index 0000000000000000000000000000000000000000..15455b597fc445b38769b90e2d410bfd89e65ef9 GIT binary patch literal 87 zcmZ?wbhEHb6k-r!n8?7;($d1f!0`Y7e;}#&lZ91;fr&u}$Og&^F)%P`OzB^F`YpdQ p)0S&&VQJAVmo@LEw>Y&`9sD)(vg14no^wiRk(bVW4`O7n1^^oI9Dx7; literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus_ar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/plus_ar.gif new file mode 100755 index 0000000000000000000000000000000000000000..d2fcaf0120f7b906cf1e933c056b428db2f25078 GIT binary patch literal 70 zcmZ?wbhEHb6k-r!n8?7u!^6YC!0`Y7e;}#&lZ91;fr&u}$Og&^F)%QRPw8KI`Yr$B XIYI%9Z&)0U`&3@{n5GuVz+epk7x)o^ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_off.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_off.gif new file mode 100755 index 0000000000000000000000000000000000000000..27dc5f99748cd0915cb2b9138cd5b2482591d9e7 GIT binary patch literal 241 zcmZ?wbhEHb6krfwIKsg2|Ns9#|Ni{>_2?Z}dCdrBs)NoiXW)3hX{YK}@+3j+ZI1gJs>qzYsw18bgw zLSIVeJPiknU{gz$T{|Wm3hUk(5YY68EiBJv#T5~U=EgwFo(L{^r$_@9mA;El8s|uH zwK_ByN`~$VSzQ!x(P~fP>WV-yON~q?8-bHuUAzg5MU2LV%GL%fNv*=pD#k+GtwI)> N<$4C1vl$c_tO2{*UAq7P literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_on.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/radio_on.gif new file mode 100755 index 0000000000000000000000000000000000000000..efd74ee2eb7b4fccda9d9b67587e7e19120dc82b GIT binary patch literal 361 zcmZ?wbhEHb6krfwxXQrr|Ns9#|Ni{>_26yJo7m?xJAXJ zgsOSvofSDb*~G-eWfa&L85N!7g%kPYCi6{;aTbtfV`USRtDGiL=aeqM#5!$DaDh_{ c&(zI~JEIk)dG<;~dU(r+uz8+laAdFs0KG$SLI3~& literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/red.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/images/red.gif new file mode 100755 index 0000000000000000000000000000000000000000..bc09296f5a53d815170e3a212bd08dd95803cf7e GIT binary patch literal 75 zcmZ?wbhEHb6k-r!n8?8JABez!fq_BsCkv|x0~3P|kPVa-VqjpBnbN=V^jm&qrY%9~ Zy63ikJXdqz*u|Nl%1m2= a(sj>m|9GzEz_E!lS9-oWwJnH|!5RR%+#9I? literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/6_IE_inside2.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/6_IE_inside2.png new file mode 100755 index 0000000000000000000000000000000000000000..a0ecd45b96d8f78ddf8829b67addf1d1d69aa6ba GIT binary patch literal 1543 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted-ccc.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted-ccc.gif new file mode 100755 index 0000000000000000000000000000000000000000..a47b6c1eefe04567ae1f4f0e48f18709e7469bce GIT binary patch literal 44 wcmZ?wbhEHbWMW`qXkcVGbLPzd|Nj+#vM@3*Ff!;c00Bsbfr;5ifR(`-01rh8fB*mh literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/border-dotted.gif new file mode 100755 index 0000000000000000000000000000000000000000..565aeafebc1f0d8fec72707c64e9b75b61eacd1c GIT binary patch literal 44 wcmZ?wbhEHbWMW`qXkcVWOH2Fz|G(l-7DfgJMg|=QAOOiQFfscGurgQ!0P9)^P5=M^ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/bullet.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/bullet.gif new file mode 100755 index 0000000000000000000000000000000000000000..bd8f792a13f8b5a88425bd05fb0ce59b044af9c2 GIT binary patch literal 51 zcmZ?wbhEHbWMg1sXkcVu?b-JK|9{1wEQ|~cj0`#qKmd|qVB&I-W6Q4Ol`rNHVXy`O DG!P0P literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button.png new file mode 100755 index 0000000000000000000000000000000000000000..9ede7a149294dfb4fed3583c8b4d5345333ba752 GIT binary patch literal 607 zcmV-l0-*hgP)T z{%2?$x=k5)c}^}=X*3R5H5OZ~{`WTsLgcGbg+qZ*9r`N-VaJq`1e0S`hEadb)FQas z;l9itWW4-+w33Yp+@cbfpoVCPbSQDNqa{L3$gwKJXjhtcU+#CgFLV3&;;;Dfu!rA` t_}z%U^yqsU8`g_wWBU=hV76}o1_0j)f}11Z1Z4mK002ovPDHLkV1i#83w;0p literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button_inact.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/doc-button_inact.png new file mode 100755 index 0000000000000000000000000000000000000000..c8642b872f96afaf5dc2887f6a652e7a402b389a GIT binary patch literal 916 zcmV;F18e+=P)Q;4EcOH%|s$njt zt4>$f)UEEWzK~+MT<&?Rwln>H-=iRdQWS+pK?bEPOOJwQif77ZL8;Yhh~OB4tiflH zs#SP$CHXb*Xt1;3o03<}fB}79xO1L&Qkasx;-iIb=ZOpx(&8;#;aG=|6 zx5wi#b`f)l9)%bQ#MA=`8{0Sk z6l0ssCh-CPm7uJ(d>W0$bUKZ#4!z1^1Oc>t+jx#P-@=BO0=^=c&1MAZ^*R>{3GdpO zqD|?yN}Ql&uFbb;{J+I~KKBwfuzW;aD88_83Dt$1V+ci|sVy7x22B~hZO~#4WGx@R z5PI`Z2c9XODO+4VJp>+1f|_Y^4nJrJ@^@k9wN zA1rF&jtJqwXRv7%UMrLQpym87-GlY)WS_K#lfs`=rW7Ye75m`!KH(>?KZ(1yeKW5B zLC)_M1^6JRW}JgNmr2WU*o~yy#~W=Tou0lqn&$DXeZr@GOcq(%ow$dYk~o-&@a*m9 zM>j9Q6EFZ0BH$9Dp&TV#8ym>GoCEJe6SOwwUeM-NN3tM5_u-9;&)#Lz2`6-3yK~GbOct1OdBTs3kT*0Pu1x;}5Q1Sc@N%>^M_`i4dd(2?D%$|IL_D zjJ<#DJn;eNI1`f?|8JtL_LQRrPQ3i^T?qG%zW~QZ34#E^e$sf3Hs3<9VWuQD+Iv^e zA$axiCxN?H&T^rU@a`)1B|QburZ_=xf|j{9-=?))EEbEyufM#C)q6@QD?d^E@S2j! zQ$Yv{MWLxJ8}kND8NO}MA`YmEHdydg>&s{XYF4GuQZlE|%=B%W&@hly(fX$YZ~o~Z qaZC1ASw8+d4zct4Pg`{RBftRO2p?+=+6Jot0000t&d$!Xw6xUJ)Y;kD*VotT>gv$Y(B|gm-{0Tj;^N)i z-O<})y&My=;-Lr&(Ful$K>SX z$;rw8|Nj6000000A^8LW0012TEC2ui05<>_000I5ARvyUxG+bj3Z$UEDq;mR-K4Op z)OAw+q(Py>8o6?v0pr07Jdl`4)6fB00hB{gbj%F^2uYKYWAY%Xt97wxA(H@uqZvrN zX1rUPWEczx6>3IrUjP;vO%X#04NVL$C0!i_2o!3PFNFXO5lt5z5S}oRNCgB}m@1kE zJ56Ra5*VXyrItXca7Gn$O$a%pZwOWf1jWV#Z6u()G#N<1rGkPTQM?gv&`7q@K&o_l z&$Mq_+$Aapjc0FF;z;D>BPy>v0NCw020#l43jF@>9TqSP;2_+fHwUcX(iA7bzyPs+ z-OHqq5D88X18|UdFvkW|7DW)a&_n_wN3%L|swki!14tx=PBdv?hd`4FIM|Ko;|Gwm zg(4J);bGy0h9(e(=!BPzB7>tmp1e39g$I?T+#HZwSYg1;4PNNjftSI~);A1V@gVSq rBo9U07C2CP7RiB5JT$B;5Q@izVHF54*r0U9#143P$XYk2NeBQtFNx$U literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/grid-placeholder.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/grid-placeholder.gif new file mode 100755 index 0000000000000000000000000000000000000000..fca1ef0fee5064b2f12139d833a516d278f9f079 GIT binary patch literal 15903 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 BZ#Mt{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/head_bg.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/head_bg.png new file mode 100755 index 0000000000000000000000000000000000000000..056fc14c7cbd1f3c96035ba131287ae9632c5e1b GIT binary patch literal 250 zcmVY}mbOc$#)|6gbMr}*aQ%x4`t zpys|GxnI6Fw*UYD07*qoM6N<$f_tWE A3jhEB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo.png new file mode 100755 index 0000000000000000000000000000000000000000..9422ba3ab0f369bfa3967dcd53be230c2b3d927b GIT binary patch literal 3549 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 Av;Y7A literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_ajax.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_ajax.gif new file mode 100755 index 0000000000000000000000000000000000000000..2329a7ed3f1f602d0eb26e242cd7b03ea0401af2 GIT binary patch literal 2672 zcmV-$3Xkh!w0y0YHx^!ohu_4UW+@}SY?((Lu;_4;wT+PC2E@cH~Op~Ut3{j}fi%jxs5-R->M z@O+AoyW;SGjF3^Q()j%TN3G0DuFc!<_u}*U&+7D!j*jK!Gt}{=<|`!({ z?e=KD-KM6do12^8-`{h?-@@hb!NI|8!QP#no#*H0uiWjZ+UuIs=v%qksi~=W#^8+3 z<+Zi7y}i9yxY^Fm&R@IR#l^*Az1*#>t+~0mf5_saqob42=AqZ>%gf8i=kv-6jP`kvM4vEJ>X z*Xr!|`!J%!GNQ$%+3Taq*L{nRm(t~bi;%eC?~>2t`279-{r#)k?7`&mp2*hG>-9*j z%*yHWG^EBhq{gbv*?oO|O0Lb>@Au*I_)xLW%joknqs8X*`Nrn**6sG5)aS0;?YZIa zsoLza-tF!8`>ovU;PUw3@%Z=q{@wBS;_~_F_4=*b>^G&y!{+kp_WQWt@8t9OmC@z) z`~I%n?4QWiHl)Y1-|n2p*0kR4$mjCA;_uJv^r_nG#pm*@-0Z>S@!s+G$LI6M==1&m z|Ek*Sev6RN?Df3k@Jz4H#O3j|;O_hW{+QC{*zWeD$=CP${oV2Sw&3sN^Z5M!|M2+y zeTt8p)8^&#`KQ_Iwcqcj%-FWy?%nYB{{R1UbaVoQz5oCJ00000000000000000000 z0000000000A^8LV00000EC2ui0BZm?000R80PhJLNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ48NUx+xdLvVAENK7%ftLsjlvGKRB0U2H796+$8Uak5FFC#RhP+|q3wy94ys&xK5_+x`5LK<|WN8mtL3?E9hXrZ9F z^XCc_@zBEPMWxyqY7=oHB2Z@#XVZ57^kC0k0FE~olz0$Eh7TyY63CxVUw#iZUNTK` zgk6Pp?z%D2K^6vpR6%(apohQ#BVZsyEtl0M;e-@c2tWoZtnl9rO<*vB4g`cGfds=5 za6t_p_zM0eC=SK_~o3kd8e1SdauK6x09<0})FhP#&zQmdC2Av+h}*10*(pE3Azc04XJtT8X8WTzUzn zm}HuXrkXH-f$T^@4m}9}Bg!;|1ipQ!IM|6 z@;xM^yQ`iM8~1<_T__^M8Q$E`%nLhsk^(W=obt#cr%+Q}B{}4aPjXRGPDy7 zb5%of70Lm3(*^?nd=UY6Ktc;p_yRlX!9;GDU=&Co$2>A{4kLs?0i%$I394a>9i#vn zG%x}%m{5WP2q1D1sQ|7>KsjIWDpm!<;Tqcrfj1g&2?deW^PaW<5Y(U*fe42)e!#>H zFtHLZV1yQUFuNuM0vstY#tv9_10PsJ28!r{5#ZNCklb)32FOAOm@t7Vh~Nu^tOp7V zSr11{A`@OPTn~C+f?bFL7ln97A#fpzU6^18K+r-M9#8_Hd8BhDTMGen(4Z#V0F_LP z!77zN7z||51y3;X9xNs3240%bg*Nn| z5uIp7FPhPf)`Jo}EkHOJaFRSVq11tGX=2=eOJdsrX@NdUvkPMXq{ zwzQxJEvrn?TGO@S)U7-1>0Ikd*i|rq0eroORsXt$Eqs=+14%*%p2kmq0#u-4C2LI2 zN>jD}-n6Y8^(aU|Lf3md0k3)u?P%$m1Pxeqw02EG5&*#{a+(vJ>SUr=;YrroXW3~6t09Bvx1Pzq8s7YXe6^2R$@ZN(s%*22*p;?c1R=2v^)WE}-B884R#Ro9J zNwP&aA|*k<5DHM?D%^k+0cBz*C?SO~^5O`r$#H5PPyq+}xPYIk?XTMFsi~>;_4V-h{IIaF9ecRa($XJ`!MnS=zvA*apv*(Q?<%zH zT*dH<$>D2jYybcMA^8LV00000EC2ui0Gt3e000I5;3tk`X`X1Ru59bRa4gSsZQppV z?|kq7z@TtQEEJnr=W0O8sD0)T>n9t8>PSj4cQ!#My1 z9OMyEp$>-_GvY!bL4kx54Ls@_5pm)O1qw$0iU_$K_AgBNgB7`1zU_fpM5llZEn9EmgS(z3R9{?csV*|Ms4j>R9SD}Qf2QYLH zYLW8XgechNaC_u{1pp%tko|D^uwV-a083;oG^PT|fD`MBi}l0iv?5G@{eZ#Xh{+Qv zXJ8>32WcaWO@1&ia`%J97M9DL{a~&F0t6Jub;;PZ+=G*2YvsI>_4UN+DN7IiRz!sf z6TH~R&p-c(=S3uzl?fe)ML`A#WGCDILBEYffd%?7_Sb?ROy*hx>arX5oc==MPaDj{YPQ>Lj$+i-&cU{QjHQD%_}&53{? z3;vOiVi2aGCc?*!M3DtG(_j`DU;v|8syW;WNq!LL2=|>> z!klzYHWXer4z}R|5@bNZN2-xJoq-hO6C4Gus^$`Fb_uDPW0PUV8(^!liNdBz_NSkd znF`T>1Uat6>`E#%%i6Oytsw2+2-m)l>8AI!04h5tIB>xQnmACv2j(s??gipT(5@#D zXi|V0I<;ABi4%C6EVw9M5U(xrF3>;$3q()=1O!9i00a?;KyJPwwrL{76Z3cM2jBAR zWVsg{JV7QH%lk0942!Vvxe=StDSlq8Jn^UdYAk2K1cz*M!s9O7@COSl05N?%WGpkf z5a4I?f2h+2QK*Fgcol32q6FfJNB&u8vp z*%uWN0)h*ID6$H&2###B$_|1XP%Uc9B#hYkG0gut&w1`y?)$#q_ucc}W9MLNPN1;> zGhh|~*4Ni_^YY}vYSz})hK7a%`MlbZB}!hWc641_zsLQaIVq2qOauf zd}7_SZRcp#;v)Cb_;K-QcKcjv(@a>!Q|FE;YUU`EJ(|`sd#t#}BYo7N{i$EUI4-UA zM90*(sZS`KBh1{fthPBf(Xg9nh|xWj@oX{X)@0<3iNKO^ar2CK&S*yKZ2X<6l*XB3 zq7narnKNUv;<<&mskwxi1*g=(qtY%K%;=a3t{HL?4JORY$4$(g8JY3#pBB$A0RNv& ze_hSp(HSJu1T^V*;7~A^M)!pTpcmxLWRu`8Ywy89CW8b&Zt943JaG6HTy0G#dQa;L>P3#wnr;+4f^B z>52sR5eT?M6e=hv2pMF8SvDWJQ4W&MVWEO)ToeY0mX)*#baedRP!{VGnlEsH{>=Bk z3iI7UxDd((;&TFcbVv#}kcHwBZFmq(z~Q-ZIDVU7(bp(Sgku(AadyflPu+`A8;{LBtU#7z&O;#^VXr7!29gnqX~hZiTnO;!Vs=%*{zumUwg^c=9bhuvgs$&N*AAO53!|Q=SfX1xBkcPAKt%P`|a(UUsqR_U%z_!;`!3z zvxWJ&*_r97$%&`qW1}O(Lr(?=`ulnx|MO8#_rtEvj`jy_t@m4+n;IMH@73MCQ+vCn z`c~D=8`rN@R$MJFla!WRDZX5E>EeaLg8aPPob0U3jPvPfVo_>Ja#CW#xnJVX{u~z@ z6CEXtj0pef$1`F72n`7i3JehNdH!4uo8{+wn(5hi7gQ76Z5jvRKdx3i^?ZLF;<4;>^Oupko5@n)tt6Rh-yLL&C>``UQ#S4M_=4B-0U z-}Jux>u%jIcIoW=e8*q3wKTVDsBcsI45q50tfZ(QF9!hnYl<6J+J4znc3T4~>)}A8 zFe*AGHty%M@xPo)NK8sjNfn9H($8mPW@YE(=H(X@UbuLv=yGwSoZOYN^QGmL*P=>q zR$Z@-l|(Dn)`%-IC7(Ap-@TXCkRdVb>S}GfCqec0_B^VV>>eH-7))xv3LvJZ$Ho&T z;;WW~lAW(!&CTc32?r#Yckfoxw!yZ|Uy(=WQ?0@PaIf3oRTl+0b#sz^1(-~vNVe&% zwtN<2m#A(G+g0PxV6U?Cd6_}6R>9eHl#P?FF*P+JStY6x7sri0nuqS$z{d2g|qGhrD5l zjZ@UnLu;RC zYspU>Hf#22+O8Yg|DCe=q^cLwz%)Gbw4_f^2vE9?4YN>naa!vD4(FhtX$tRc5V=OG z)@vlvioh_AL%(|sDZ@lj%g}qrjVDE7{WPUV3Tg?k-SXWS&|CiTlNN(W zVUN;$RCWQixWG5iu&FS<(OA`$ZAF2z>(v{3`C<(yu4nR}a)p(VKN5Nc^z*)@1$dF{hYwP=70N-ApP^Mx9OJ&V5jN;r>ju-jTK{Cby@ zMceg9hfALyHV_Q6DoLy1P1PORDTu0pA~i(Se5NnUKu!~UdFQtt3zXfP_EK%5Ij19K zxBCmT5cLdYqw`-YE1cqf_4}JzR#Ru)ks`~O5Bnw&z=+^$_cHDs9N|*VZWaZ(3w@WMCmbbK30gHbDnZJz4 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_colorpicker.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_colorpicker.gif new file mode 100755 index 0000000000000000000000000000000000000000..3974fe601c21e492a8c596d068aebf788b5bf915 GIT binary patch literal 1300 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_editor.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_editor.gif new file mode 100755 index 0000000000000000000000000000000000000000..e8deaab02e1faffc6c4a97a72c54028a5d21b668 GIT binary patch literal 1766 zcmb`E={wsA0)T%cl9ZUbg4i(=ajbhtJ*HE1+(OaRK5b)5i*}UiYIRVx+YxaT$(TqS zbvDE~)hV596N)B5(B!FWWRq=FgoJj93_+dQXZCN{_rv?~{qlx|ho1f>F(2>-lmMXA zeA?PSOwY>hldaAEXDgrg{^01CBU2q~wJR$t0gSgMWbVf9!4v6fO-;>$dY3+}Onf2I z>>utP97&~8P)-Y`eqwTUtEi~x!qb@^@yFEERDy8v=vd3;a<{j)`}_M}zkdDwq&kf| zzjJW7zPrD=z4vD2_x+>ek2`y!b&W)|{a(GpT3DM~)6nU3-m*%vul;Rpi!vcseL7$= znVWkD{jxRthOzSUay(m-#+CATJcUA$(f@DioI)fLb#`{DRI1F(Of+pYmMswo1bM>6 z!Nv7~#r37l-NWPK?Sn(=obu@Sm^P;vRcz!5wEK5uf%5QV$sUpS0 zhY#^AaV$%6n=7S>lzDykxQa*i1W9M~F47d$D_&glA7bd+f>ZpCXUyK|=6{blM;Qz~CuwZ1f-5UM~N~-l60a z^s~#jdL@vo26O@4o){sXQapN1&k0Yio>d6z^U5WjNx>F!AL>sW%y)Zca@!`0`-WGt z<)c69#k2iWSher#e@ILJYe-ndW?c6w_W5-Z0;62I>=biDAk#+#<6molzh*bn1CFOGU3PSolmDm|0*PRCIL%JjWbAfyCD z>Gc8$0+1lBQu@U3gxEfN3ds$Xd~8Nj|GZ9;4sxR?=f%*@XPH;g}g zL_Vm?1;D|$t}RqU=v@xH3h_!V3gJh*uyOeIMdoZY>+=kIi;`M&HBnv4;9oPKZYLp^ z2cIDY`cWEY)tSv5)cIG!YvB0$fMBrM!F&QlnpO3ux4}4}ZT7cmoGwbAA+e=z+B|9< z89sLK5+Dn#|9OGI92}PydY%1xy+zyvQ}qeTzgqWAkO7cDjhcwE)W`_t-+;NpMuC=| zg`0jbIiMGK+M{IRnSpv=J3w4L>$8C(+$}Z^z{!q~K`H0CNK^vnEJQV#2hp=!M)7yy zr|Qsz%djoONyiWG7Iv6206MY(f5*6HM4aLr8ls_=SZjHD4Tf#aBMjIE>pqwo+V%4w zeh_dCURrRs6)0#ZK>z4Gcc$IOEgR=Uk1D%Auq7Wz35PCir*e+epW_1C{gDRdnHN;M3f zA>;Cl%Ag=?dL-0Gs&n!|CW=<(8;Yr(hNrS;s($N%cr)`OLWa=hzjhY6XV)5B{iJL8 cuCvYKQMfS4YU}ZMWILv2LYN$gHUfP93z)Q0WdHyG literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_folders.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_folders.gif new file mode 100755 index 0000000000000000000000000000000000000000..dd30c8f9bf9a47dba5b495f758bddecc0e2d36af GIT binary patch literal 3009 zcmV;y3qJHmNk%w1VUPee0QUd@O|sQ;a&oH4;f2cHg@uKayxQ93@+O0~{QUh>vD&h- zvvz@mgtXO8aB$@8^o zzA=Wm`1<`+n#E9cEH_aWo2n;Y0uEmqok)=v)!nvslC3w zoWtFFrnuAK?~c&p(9qF$tSP_<)7T>yS%-or>eN#@ZaCx=jiE1lEA^*+`+=d!NJ1%{Qk|( z(5|koW473q&)VYR+8P1!M)(|rO4px?d^@Z+2rKr;Njxj-re%_ z^z!obz|>*?z1 zo}Z%g^YiiX@%j1rk<;Yq>FMO==G)xdm(ktb-QCX5&(P4)%+1Zr&du=g@z~hfX{gNd z^z!xg_4fAl{QLZ7XJ@dmvbeaq;^g9UbabxI-QVKhhlq%3w%2O6*+I{{-{Fe4*O152n84fR<>TVu;>XC#=;`Rw)YN{NpU~6L z#ogl9*VpFc-OaoA46T`gGaDQ{gWoP5 zJa*-Ym#ZC5^fO<5uWvWdf|d--bKNEUlPpNh;H<@e2&mEP%lPXvwivSb!@pFyc2;@PQSOjsv0g&MA z&o#}uLgS4e6VO4pE6j2-1#6_fMh88RZ8iq5t9{f(xaum<7o5~c4na`N+w9+u`#`Ng z6MUZRH#NFKkmgxPZX*dm{1Zp?EC7kvKNASih5(@(v4SsLca3@n9S9OkFg+Xy0ut}mw)K`Xjuj?{Ia6h`<(5&qDF4~#Gb zeBgr#$7sS&w2(segW<+zSR)($O^3oN2q+AwG@#APh74TeK~P}1EFEBg2U(63DUb*& z3Ic>Z=m8=!Fo|A}uo~8=1S2L%Ni*7NA}>tZys|Zrra|F`JNyTh{PBu{Xf9OTh+70! z$;t@y$cQpbh})1iuL%V*ik2v32hL{%J^bMh$7sg~J|KcUEwr~&|SS^MIK>-UOKoAr-4T_ntA{IgThYVyu zm>;;pEpP$<4=un0A9SF@0|xqlXIdna0*P9X22wyg_33YO#8Wl@(Fcts>l!sGB|&~B z1XvnmVX=7PKc)uAf-I*UtIJ{$dhmyKxby>#AVNBN(1A(7ArK%4C_x{fhBH0{q5pWr zy!^n8S7gCP3;mk|G!_d#2*3|h^PxZz=Z{#}AbL^=pg$Ih&VpdnA8n9=^fY$>krHG% zALu|96KT&6SiuUDC`3BaA%12at$>A{thZeBj_4J}@paK%qYeEY|}E zaT_v<+Xf*pV7E}5#AjbR+PUgr3FuwI6+SQtdaQN~d~L!Je0rahEQbg^$N(aSd4+To zLI*ma0(ymUgB+xzz3)wcf)g;`zt-0w*Gou*uNUFX5FiKl%;zNHDu(n5gTTcAFcmhC z-~~7M!3sG9CHAq87wDk~|L6oIj=MPz$o&Nh6F zhtK=}xGXhReK$O9<^Vuw8Z zqXP&aMHtw?gMDXU26_+(DR_Vo3c!LAE9k)u;NXcTJOK?L=YYsL@Cc7Tp%t*6Xn@L9 zPLq7M1Od2ELK3LqjMPzq+9Mx%xId0^CD?>*E?-G2Do~W7Xy6&M*u@EgG3pQpnBEEq zdRgMJmKqej3r?5>0<@6|9S~y)Qii(JGou&+6g?UhC<8rm@ry}Z0RcOR`q(wI0uH3R z=o(N(D-fW70LXpru-OG3aAEbLbfE@apaS6Q`-eH0T?3Th^x|XF3nEPZ@|a(IKmY(c DjAazp literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_form.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_form.gif new file mode 100755 index 0000000000000000000000000000000000000000..1ecd103a0f0edf951fbd892ba6cff658241393af GIT binary patch literal 1412 zcmc(c{W}u~0Dw2lVl(DzK6aRmoKwlum3(vvCn>Hor7kxQS#?LkQ?BG08=HKM7VF5XeR zT3WxGUoart99!ESTia5pHEf=+UnnUqE@m%npz}F@%M|N7is^szD)q-rc?qL2qH&bT zWR})Fl1LsGb+TPxt zn3(9CSyU(#N~LmZYfGh4F&K>L>1kjZi%ceKG#bGF3QDf?U*F}6zdQkeH3V!Xk(8B9 zrsUks&C4$+q!tz5qunnlEqhR2QCU@8L$7_vsH<=Iz41}gfB=28hu0-%6iC<0#Em}Ft?g?#o_TCve+F=h zWZ{_|LLkuJwow*F2%O5At-)jI7Vi@kJXec=#a%Msd)r zJ$yg@SW4RtO&iu!VTcNnMgj&u*?S5)mFgX@eAPEI-ja1{ND4wiLM9M*a@(9l*k`w7ffqawy) zt4I@pOZo0mjp&-{`n|Td$#JW34cAYjV#><%u9T8Un6t=ar{MOg!fNm7*=THfBr5&3 zy_%@+%|L_rR;dztb-~2$&Hb3+8o4Lxz(K5CA{I1 zR2A-n+Z;K<7^Vz96-^>y1CS`rsDEyvKb-0VpTS8wo=<@jCa-WIs7{;?#)tdu*^9=L zIJ1awr|uk+GpV4Gb6)b;9{nRwkiX+85!2uF#J)+>P!|^Wc*ubCRMsi?Rjx^Zd30Tm zVS1>P2y>{S8HdVo%+T*NIw_+9u)~Y6O|pV?skNiB9-i(;eyw(%Z-=RaBhiHQIJ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_gantt.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_gantt.gif new file mode 100755 index 0000000000000000000000000000000000000000..72408baf8aad54edcb82ee316c921a1fb133542c GIT binary patch literal 2025 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_menu.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..d25d5d6c86d10615a0fa813912d2582324c422f7 GIT binary patch literal 2120 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 kv^lnqcQY~$)tXb(uVBq?yTR~y_j;~R zz3YlzkLdgNdv1b*Yhh(|QFjY@eGHC|kdc0UfEAN}fQ1WGh){O|mJAjR4F#sBsHdb2 z78a4Ouat#{olOLbp%)MoyuH4^6c8Ax#Koi*eY04#Ot+v68WYmf)Ya7x3L3!Mz8V({ z2m*7=OLvwQ69E7T?CtLF2>=1<*7fz@72?a}NX``u4K{R;(P6`c0SP#8NXQUgyABg5 zAk(*x-xgd93J8o)kp%z;6A~;UBuK=(1_<*1ZQ6mLV+#fc3ao%BbBHqp7Bmjv2%`hY zZx4bB9ZHk|0SXfeFi`1|h5`=~7Q`^%!N7_GRf*ipxnXD16h0>aU_i9&&;kVJDGj$W z2UQOYVo31dVa43KHWwi%)s^Rqu;9!Jj*GOw#I`uz)_if-E?up9`FiaMl7a>Zm@{kM z3}JxU!(U}6K0!c_)Dn$FARdwW!)g-?@--DOf;NeplKr~ynPJ0*48Vg6AKqJ@!&{D_}EI*cYl zh;WghFmT!e1ptWGpMl;MW`!S+x#pylvgzh=NXCh02{0LO zmw0*7)#8%k?Y7x+aH)oxE(V|h(H0o$rXw&gUXIzR`(=lx z5kPFQq&+&>01o7<@4o!@>#qa8Ka3=Pv2)Z(wBaR|mxiAS1rz!yn&YpIckJ8%9 zQv~*P?6JpK*a|KVSNNgYFnE`%3@Yepb9C*gGnhQ*h6TR=hAlR~1B+bn4d^}i0e3Hc zfYpImX{o3LjmAyD+>P2Oo_ev(RTEYd@7yz_)pBe2;oTCPsSf`bDl0e@MN7b_3xFd9 z<(8iyz*53uTxgUTckQ$PR!3WC5f9TwTIuSPwrTd_r<0HX1p^G+fwvtbFaR$d05Fj6 z1Pt^+JRc0;D9>C?CMoO8ml=}cNT1$&1Qh7rCPD<%p8W*Wb58+#6Les_ta@bx>5oLF zF9v&RfdhN&BJ>_900TtyJVM1&&;e2$d@lk38}JtSo}rNraD)~=n8Hbx@;>;s%QW>R1!TfUdS1sXoM(MLB~4U@s4(Eg(GA!hbFqQ25A@x zA1*=2LK^arde8&{|Cm5UjD#eRj3gnvzzIeQfeUiTq$W4X#6?=tCh7|%kv>VvQkwFV Ps7$3QSINpGga80L4DGy) literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_toolbar.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_toolbar.gif new file mode 100755 index 0000000000000000000000000000000000000000..5bfd6ea1d20adcdba63e32026436b914ec2b5d7d GIT binary patch literal 1954 zcmV;T2VM9_Nk%w1VX6Q&0K@{ks1$*Hp zP-u;cKvc~hL<}P6;DLe(4zg?C&b_<$@8GjjO z0)dDlj$^@yC!(mxiY&I+qKYmGz`z5|jOCdLh#kOST^_Vkfj8>a)xZYzT|htsKqemKuq{2f2 zXn=qL>IHCtK@px2PNS&;N?ztqe>#e#Y zyeU?#B;h*G0(xC*z(O!xS}6mf65v~u-?RfD1h*kD69gM5T7W_TJTfMH^#r(RwyU8U zRk&u3>uR|lC?N94hKxM&2que+a>^^49IveN-uRiBcrGAvj5rEG( z%GP7sO#v80Q#UtdU>|;@dV?oU<=hs)g9v@Q@v0ub+Gfa3L7;#y3XCFx0w_yo0orFf zwRXuQu>FC&AknLWXzl={8ZbpasMPQos<$kgaiD0KrIU_hHZ^jz%} zBH(g8uGej&Om^I97bUm<+#$mq`rI(rEi($279fOa8f}gwMIklsKomHDl;~lq zK{ShMT*B0j=+S}yG<2##6+(+Q5U?A(B<6Aj)Lg4L=L9E;&jb)+kOB1Jhy}%G0RRYG zK=6~E+6jz+_|V5fq6A3&$j59LbmW8rP$4~0Ad$#X2O`8|K5(Am~&bz#&2~-~eCq)-op2 zk+PcgtQYwRKA%Vu6Tk#r+aN(o+vN}v%yg#12$@V{n$@ool&jh5smQ$O6o@#78P-Uw zViyaIXl5g%O+XhiNjd@yfTe6#6`KP>hSjTf0I*>3DFb?n%}q9f7N||FYGDD1aWXZa z{Y(Ki9r9Ya(snweRGae@Q5Z7M85+~OK{5}3Hft>(akI{e|e(2Z^%0>NA# o(DS+<*u8Fbx69q`diT5F4X=2|OWyLD_q^y$uX@)D-Vgu)J4=akmH+?% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_tree.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_tree.gif new file mode 100755 index 0000000000000000000000000000000000000000..49c40747c8217545b70a93118eb6851df76e94f0 GIT binary patch literal 1495 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_vault.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_vault.gif new file mode 100755 index 0000000000000000000000000000000000000000..74556bd791faca7e58df2ab04039a249b1aef635 GIT binary patch literal 1801 zcmV+k2ln_!Nk%w1VSoTL0K@g(+C_xbMa?2FX)@$vC|e0|^H;o92T zrKP2toSeG4y8r+GA^8LV00000EC2ui0Du59000I5;3tk`X`X1Ru59bRa4gSsVBdJI z?>6oKKvS+lEE41ejE#(S0(}92lqzwC2?`mT84;YHprN9o2@H{bla;C@ zg9l>_nh~-DvbDCixVg8RrKhQ@tF49|ogN6s$jQpf%*!608Kwt*z`()`ogAthp3(=u z)sz9Q3<RT*y!Xfeitk zMYu;TAE0Xq`US|)p-n0tAa!tzD2pOEiz*KPXn=uHV+L&7|peG0}Nt6koA=~#p1P+)2fwRLheSob~yw_;Gxq42my}?_At0-$-^uH zj5(=Xz^`$J=u9hdfB|h0uAGZ_4WMy=3y>o*r<}3r?GKqNY`*H@^MeZo97YH|nu6)D z#tpMx!9Z<-68#x4&j%Ge003laK|mY-1`rqkL0BV5u$BPZz2(OP2(C5Y2pFC7)Bqav zMVv9c5%69CC_1FTF&?zoVsT>~x1S2KEdU{b3#e681qZ&>BWxlBXaI#G@aSKKuu2@fI$NjY!KQ2?!kv*0T;-J00mZt*#KdyO@mko0)#h0nrkue0S9kgFa~%> zejp@~9~{u*e;;tym;gDdb-@MKebAwKPnl3b1SV>^C6_89mfue+1Q2LZBG9>j2p9q| z<_LjqYNwh-?ujG-5I&~XjjTLro&p1yph1?8*6L6OtcoBIN%kPef}e((nkQ0*x{^ST zqTV@zkp}Py><6+%78iLM=~Tl12DH{{D*+jxMgm@iQMv-NZc<<&2^2{1z)%P#ODciF zatC3wg)T*{d4rA6K(^XG+9kK(@D;AFEEJ$t0ToDSfCM8P!0uZHs^zX)c=~$CE2Fc27QrtVVD18) z1{Cm|!5IQ@L5~zgzXZ;9`pb+5V^}yt&9~?=qSR!`}cv zpp*juv=4v;lOT}(FB3rEJ^}$S&_0ox6Gegm_G=#mK-Ri)6k{qV2tfCY<_Q&$Pe0~+ zfeogxF$x+gPt2LZN5(+{3$lU=O1U2FP*8ydl1vs3^qnd&umKHBVuS(UiUu060ri9> zh5_(a3`HAzy~zI0SXLc02C-l01VQA z0iY%T9q1hb;*uTzY?!A3_9@M10Q!hAlUquv->DV*@rh8Wt*`8#B_!VEEz}zxa`g ze)tPsHo$=%S|9_l0viJ)(1}rSA_A7|mn=GA3tn!*6AvJmD96}=4G8QmA7CZybdmuN zaDbIP)QJK81SHUlP`2g?aVVo565#-D=2BapK#>CyafdNTf{6$9 zK|-@LheI5OrJt8903sk^hKpwOB7-1=73Pot2Y^(U_9$p1tiT40p7aMeI6@&9;8G&8 z?Wdk7Xdjlqg`1932m26!IWho&cPIb?n=pkhbYN7VT*8dr%zy$cii)b9G^Gl41Rc0q rIIkuqp&i`=SH)@8vx1eQXc%f)+v?W0W}&7wrE55bfCMJ|AOrwAZ?PFk literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_windows.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/logo_windows.gif new file mode 100755 index 0000000000000000000000000000000000000000..c884dee4f737f7fad9bf90d0ec0bda8086b1fb30 GIT binary patch literal 1190 zcmV;X1X=q>Nk%w1VU_?k0K@awetD=`ThR8;P3qZ|Nj5~_4W1k`~Lg=|Nj2}hRWl2zuf!${q6Sq z{{8;_|Nj5}{{R2}A^8LV00000EC2ui0G0qY000I5ARvxpX`X1Ru59bRa4gSsZQppV z?|kq7z@TtQEE(8U+Lev~;#}b$3S#84(&Y5W)e)W_*g*iiCSM6A&a9 z-XjwoBM;#d6%ry959%fruNBfI-4^d9uO#jw6B-p0Ds*832m2>b#Nvj9K<28L;{z<_1T z1rbeb1F#2^(My~}Y*OlJ=nRby`H(E|0KkKh0ys$fg~6l404xz0m>?lSSg;Ozi7+q{ zL4c9NAY3J&U~O0fBBWIi;L#Rbyh05Tr9-N)VNyu}ELE%kA&rp=?7>Cw3o72N0J@gk zAb=$X3l-Wjcwn+60F@piJXpZ1A^?gAykYQ(fhNlg7DfiBx&Z8~z$0qe8cw`;0SCyB zCr9p}fa4im3v5v6mOz9He5C`x-1Q*`02^3F-as`B5<_KbDS`!*DuBWNN}9&HC=Rs3FackviV$r9&xjCRRS~Fp8lURy<&&3|Y;?~@4*)^WM&s;r&?4Zh3JG&)6En9=OVV@ATHhQs06zN+^Z^uz zU^CHym9g~KG>;AS*>}5&!@I literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but.png new file mode 100755 index 0000000000000000000000000000000000000000..32e66bf3d6b240d58c600e4648dc9bad9e220609 GIT binary patch literal 525 zcmV+o0`mQdP)EaE&mM*gv##%tb3B42FYrMahy04Cy1bYkfn~QXy$4BJRUzg z4Fdpn_-L7C@O0F%jJ5e_31DpLmbs;aHS2n-)`_*=;t!sWYv3t=Oks4Qe0K0q`EG-j z1Oubfg|)3T9&A>>m)pA>xwoqI3|`LSP1wKFLg{O`LVjW>M5>mKEuT)tG3nl|%vbvW zld%931ViOeoFYQ;uR{%|h}GYyM=;!5$xd^F&R4P+#eiulzYr&LK_LSobKAp`iYnFh z&{^cYWhxkWJ6DSl6+{e}rt+yU(ooHn-8W&uK!$RA+3t01TF+0$2 z-m{%68R7y|FKQ?qJ}#;5Ex%9I|7+>+enH1doH9rp7oewA*E-!cJePm4HTg~lvxLR z8Ls=8Q%e&x{4ej?#{YitCAT5|#y>Se+ir;8;IE|Fx9NWv12gMJ`xamTE!m*F^s>}< P00000NkvXXu0mjfkUi?9 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but_inact.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/samples-but_inact.png new file mode 100755 index 0000000000000000000000000000000000000000..37a385d17af6bafca7d76b3fcb9511ca838a4eb1 GIT binary patch literal 796 zcmV+%1LOROP)lO+H!U8}OVysCNJZGRI!o+hXU@lv&7J_^}j~IZ+ zG?@#)-ExLT&Kc?`NR(psbGcl*-9`~`uqep`78Jpow<*YeiE3O~Faqc_iO*)UolXZa z01yq4Xmgp#WC(Y=U9352&L#B9ZIS05kQbu%PSor5B0nn9>2$Pif6qAV@3_m;NkI2b zj;Gxn4SvjS#p$K`{k{da;K5*EL6pPc(1IvOqmczs+VMJ@MHyX`?@xZlJjC@&bE!!# zPJg$!?ga~;X6Gkl>|eTY*rwpqwBlET*e`JNOEhpIL0iz+A3&7oShCE(tq{b zyE#wz&HgFYoJ2!17vTQVWp0Z+_kg?*b-7e;znn(Chu^(1AEDdzg^MW%&vE>W@J0++ zT#cu1b?AC9xvfSY*SI4!IPiL$p!MC?9|3Ls^i5~a?B@2b-rVBRCwC#SiMREK@h%^0}C5}O9M6* zHiG00tSo#13%h{9oJokHkXjTp#F&dQq!WAs@hxm@EG)It2o_36v*(;cChJ}}-Mt`j zaEs%cZ|8RRyPdn+8GE^LJ^lV{acQlw8E5M4=`y#@M$+2Jh2#4HdVF|bpl3Fb068Ej z(1ce84TOLs5g;MBND@4EDG(#{cj>rPBD`HF3}ittX3U`iNhn4)@Ji)!A)l9*BAc<+ z6z>%PIp(`0-;&Q}(JWUg#2`=@FahATuRn}~Br(4fcv;uQi2)Ew7y-o~Z zKlI*)=Z)_DzIECo6nI(<)+d|vL=^{Ozzq9D_$&B_ts8ijN#JdyQfG~ZY{CdKsW1S} zn@w4~G6?!BD=`T?%ePnd4zKoiZf|ZF{AU-F$<^YK`A2-%PY(jm`;cwL*c>R|IuV1ZTe0tEA1i3olL1pPm{vWIMpu0SbMOzNCG)dYjk{N_kdIF;X{A{077dFg{d2PO8@`> M07*qoM6N<$f=h($ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/search-field.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/search-field.png new file mode 100755 index 0000000000000000000000000000000000000000..b2e88f38b37a51e3145d2411e9f752b6666c7cf2 GIT binary patch literal 338 zcmeAS@N?(olHy`uVBq!ia0y~yV2lT{H8_}n-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B_$Zr;B4q#jQ7Y6!Q)nFtlB?*xYrk*Z-wp({<-Ja?7lp z{R38NJlFL6$Y)^Wy7+C^qO!Hi1)3){ZT#Ml`lp#+!eY-_GyQmZQHR8gTQe?SD4na@ z5ahLT8&kn#D~4ALE0`DXHDE9h692X9&WUTPIx{SdY5Q<@`}EKKKFn;|WA_4FDjB zXo?-iIZOsXfM6?52!WE&LIThv!BRnSGKvHPgc8tbRgwtGA-ipK ztQZ4hJFQj@CB+4~MGOvTO0zWl5K2!MI0ajI6MF>%ZWj#z1t1GaN`?|xT1sXZB@7sr zWoMKUbV_!36ALAvKx;~Ep@IyAd=#t}Q6&yUuO9~lFFO;24YrO9fx96FKN1Ngx*2!K URthDi(yv;;*P#L%&&Uw~JDw(SE&u=k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toc-arrow.gif b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toc-arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e0389e9f8da09d4442b1dbf8cdf0d4f562bc209 GIT binary patch literal 70 zcmZ?wbhEHb6krfwn8?fk1mAxC`TFDc|Ns9Lf3h$#FfcRdfJ8y^3{2v4`d6NQ%OBmr VVPm~vb3{%pqmt{iXFEk0tN|)o7eN33 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toolbar5.944_left2.png b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/img/toolbar5.944_left2.png new file mode 100755 index 0000000000000000000000000000000000000000..dabcf312c547720ea4411b4ba545f2cc0771a751 GIT binary patch literal 3099 zcmeHJdoP9udbw10wJ!EE*i}4?T<4b-aMW zppT(Z{>1Pmv=so#m5%lY+z34)p3^bzDR}H)Hw-gy+x92z1P{4q;>eOq6k!VH-P4V) zP?$D3hKk|#6RG=E*1Tg*Y@-D+A778Vrt2^)lQ;5A^ea9-i=)&Qco$8}gFNc}TmUHA zKs{j5_NTxg11R}LgU}BhE78ELoDsV@zq3SQ1#g}_%tka}v1wJZuKKaDF&>YXU(4c+ zKYo08{l#DeYUpfrPJy3>~_P8+XnaWc%r%v-ugF4TaS6k zsC(pO8y`vN-capQv=^9m1u<=TwhzZACYqDzBRL{u#urEQ5ig~2*>wr#_Ipds@l+<0 zi9BCX3mf1#m1t?6458db#Y~T%X$bm0)VC8o;+(ss37G8S=%EBx3P{^5zv!xZA{cNKOC<+OC5>RR<)XLawHjBmLXbcCE$u`7t_1}labqM2`=QaU~ z)RS_kaSts${bmR*X#wHioN>ndTL&*2PG-gFXP1Y@Q$kJNm^K1pTZA2=gWJY3}B|EXlpZ6q!WM72|l>4t`cS0R8LB=c339^f`kD;j~z6 z($^T*yDes_)4V|gK)v_4(B>GynfCOq(G%t|IGnN6L?B{YHsZ}&XS>-$_qk)e_$m$*ZTb|9wslt8Zer(74xAAhmQkKzHH)|@)-be?oTbT3e@jq27owTFbkYo7nzX9*> zX6GNcX=S(PiG`l<8mBc=N^4HnXul0J%YRb|tBDURXc6Mk;NFR^aAebVgSG5`q z^{JNeLZ(MX9>>E#Knp}}C)0)5I)4%xjV2O_|1H0tBU^r9L-Na?GK-;khk~HO=Rr*F zn0k>+Cc_HuN^(RHDP0BafuE5-Qw65U{yX&Zdli{#xZG#g{K2gh;niX+yL0wfB>lP4 z!o(z8uB{wNrF=Dzpbfm!9#lVnk#in+YZ(Usq+e##123yZ<@~1K+RV(bkKs$ztV?N- z+gC0J;_r&J`sJz8SFa3vA$d2z+bP~)xyVdfNn(X+tK^q33NgHH&hWK9+c2Q(^YhUi zdQH4yb$pCSZN3S9b#yG(g?4w-!r&w7V3@~L{Hq8H8}fWhA$egwx|ViC`fluW`Fl=1 zJ5lF`1d`^csHlZ>MOl48xUg9L{`Ya^b|t2GG^yrJ0m@u${W`49E|y*G3^1`ZOLfVp zWCUwMTG7?j6~D*NsOn}Vixq{%UJt=|AVMDy#0Pt&2sLyz z>BL&Z8%POTY0QA_D8c5u7ZZ=2Es|rdT#xI;Y=5E0YZo)py=^$1#LeNE8X%7t{?uS@ z$ltr|7WUTrLQxQhdGrePH}~5LYh3Uo>ZO9IZmCXq=M3oZG5gja zcgnvt-?_3;`|a!c8wpo;4!tWOjAn0kNQB+$8}1btbc{$yC$9AO_C92>oE9c@D;6md zZ7gjQKsy%=Y}~l9frcSQM*dvIs;smQj`l*}9YR~J^*vK%`;Sxo+3BY|C$oUbQL`Ky z!q&CtSmos&rGF{vIY2m|cOf}B`Cn>c19Mo`p>>0;KEU-6CCRe5(|EW&&~5hZPS`*W zg%G#M2cp@glhQsgaIlm+_LRJi0fmf?j+P+?EycU#+J4YyV|jgjMo=7by;$}>q>SDQ zOzHwnlyCy%y`3}pRC%iTjOk#K`~b71!g@7y4_Vo}M>Kur^nr zPzZ6q?fjoEMPmRNl&~^q$+4``68e$wPZe1f{;47#HuG2a|2zDj7C+qfih2D##fQHl z6Axvdq@O@j!e$6o?+$|+1VuVM(XaKWH>6DA@^|iVkg3~Z6EmlXQVaj;nlP+``(s+# z#-deVm6KND+8exy{_3KFf^RJ{BGQ(gvG&#dd;R2N^PZ1NtdxN(qAy8x@s}&Q_?wJN hj+I+8Y43-tfb89LPoHDaTF`4BI39GiFSPZ&^auRx)_MQ{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree.xml new file mode 100755 index 0000000000..e131c67fbb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3.xml new file mode 100755 index 0000000000..452723a0e7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3_14_selection_sorting_navigation.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3_14_selection_sorting_navigation.xml new file mode 100755 index 0000000000..7c896cd440 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree3_14_selection_sorting_navigation.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree4.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree4.xml new file mode 100755 index 0000000000..ca40ec5511 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree4.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_02_checkboxes.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_02_checkboxes.xml new file mode 100755 index 0000000000..3aae307403 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_02_checkboxes.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_05_drag_n_drop.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_05_drag_n_drop.xml new file mode 100755 index 0000000000..55c54b4d03 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_05_drag_n_drop.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_a.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_a.xml new file mode 100755 index 0000000000..e2845e7833 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_a.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_b.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_b.xml new file mode 100755 index 0000000000..19b9a8dcdb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_b.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_bg.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_bg.xml new file mode 100755 index 0000000000..15339b0ff5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_bg.xml @@ -0,0 +1,2 @@ + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_cl.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_cl.xml new file mode 100755 index 0000000000..1cb0949ae5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_cl.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lc.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lc.xml new file mode 100755 index 0000000000..e8273e37d8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lc.xml @@ -0,0 +1,68 @@ + + + 21.07.2005 + Ivan Petrenko + ReadOnly + + 19:45 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lg.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lg.xml new file mode 100755 index 0000000000..45b5606bf0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_lg.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_mixed.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_mixed.xml new file mode 100755 index 0000000000..c1ca62daac --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_mixed.xml @@ -0,0 +1,66 @@ + + + + 19:45 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ml.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ml.xml new file mode 100755 index 0000000000..49d28dbdf4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ml.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ol.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ol.xml new file mode 100755 index 0000000000..7ba27fecc6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ol.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_p.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_p.xml new file mode 100755 index 0000000000..2843a86356 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_p.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_radio.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_radio.xml new file mode 100755 index 0000000000..86aaaf204b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_radio.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_st.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_st.xml new file mode 100755 index 0000000000..d12edcbe98 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_st.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_to.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_to.xml new file mode 100755 index 0000000000..80c86b2d96 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_to.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ud.xml b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ud.xml new file mode 100755 index 0000000000..520e65a59c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/common/tree_ud.xml @@ -0,0 +1,71 @@ + + + 21.07.2005 + Ivan Petrenko + ReadOnly + + 21.07.2005 + Ivan Petrenko + ReadOnly + 19:45 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/index.html b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/index.html new file mode 100755 index 0000000000..5a64550392 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/samples/index.html @@ -0,0 +1,42 @@ + + + + dhtmlxTree Samples + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + + +
    +
    + + +
    +
    + + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxcommon.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxcommon.js new file mode 100755 index 0000000000..e8144c718a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxcommon.js @@ -0,0 +1,928 @@ +dhtmlx=function(obj){ + for (var a in obj) dhtmlx[a]=obj[a]; + return dhtmlx; //simple singleton +}; +dhtmlx.extend_api=function(name,map,ext){ + var t = window[name]; + if (!t) return; //component not defined + window[name]=function(obj){ + if (obj && typeof obj == "object" && !obj.tagName){ + var that = t.apply(this,(map._init?map._init(obj):arguments)); + //global settings + for (var a in dhtmlx) + if (map[a]) this[map[a]](dhtmlx[a]); + //local settings + for (var a in obj){ + if (map[a]) this[map[a]](obj[a]); + else if (a.indexOf("on")==0){ + this.attachEvent(a,obj[a]); + } + } + } else + var that = t.apply(this,arguments); + if (map._patch) map._patch(this); + return that||this; + }; + window[name].prototype=t.prototype; + if (ext) + dhtmlXHeir(window[name].prototype,ext); +}; + +dhtmlxAjax={ + get:function(url,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<3); + t.waitCall=callback; + t.loadXML(url) + return t; + }, + post:function(url,post,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<4); + t.waitCall=callback; + t.loadXML(url,true,post) + return t; + }, + getSync:function(url){ + return this.get(url,null,true) + }, + postSync:function(url,post){ + return this.post(url,post,null,true); + } +} + +/** + * @desc: xmlLoader object + * @type: private + * @param: funcObject - xml parser function + * @param: object - jsControl object + * @param: async - sync/async mode (async by default) + * @param: rSeed - enable/disable random seed ( prevent IE caching) + * @topic: 0 + */ +function dtmlXMLLoaderObject(funcObject, dhtmlObject, async, rSeed){ + this.xmlDoc=""; + + if (typeof (async) != "undefined") + this.async=async; + else + this.async=true; + + this.onloadAction=funcObject||null; + this.mainObject=dhtmlObject||null; + this.waitCall=null; + this.rSeed=rSeed||false; + return this; +}; +/** + * @desc: xml loading handler + * @type: private + * @param: dtmlObject - xmlLoader object + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ + var once = true; + this.check=function (){ + if ((dhtmlObject)&&(dhtmlObject.onloadAction != null)){ + if ((!dhtmlObject.xmlDoc.readyState)||(dhtmlObject.xmlDoc.readyState == 4)){ + if (!once) + return; + + once=false; //IE 5 fix + if (typeof dhtmlObject.onloadAction == "function") + dhtmlObject.onloadAction(dhtmlObject.mainObject, null, null, null, dhtmlObject); + + if (dhtmlObject.waitCall){ + dhtmlObject.waitCall.call(this,dhtmlObject); + dhtmlObject.waitCall=null; + } + } + } + }; + return this.check; +}; + +/** + * @desc: return XML top node + * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) + * @type: private + * @returns: top XML node + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName, oldObj){ + if (this.xmlDoc.responseXML){ + var temp = this.xmlDoc.responseXML.getElementsByTagName(tagName); + if(temp.length==0 && tagName.indexOf(":")!=-1) + var temp = this.xmlDoc.responseXML.getElementsByTagName((tagName.split(":"))[1]); + var z = temp[0]; + } else + var z = this.xmlDoc.documentElement; + + if (z){ + this._retry=false; + return z; + } + + if ((_isIE)&&(!this._retry)){ + //fall back to MS.XMLDOM + var xmlString = this.xmlDoc.responseText; + var oldObj = this.xmlDoc; + this._retry=true; + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=false; + this.xmlDoc["loadXM"+"L"](xmlString); + + return this.getXMLTopNode(tagName, oldObj); + } + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (oldObj||this.xmlDoc), + this.mainObject + ]); + + return document.createElement("DIV"); +}; + +/** + * @desc: load XML from string + * @type: private + * @param: xmlString - xml string + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ + { + try{ + var parser = new DOMParser(); + this.xmlDoc=parser.parseFromString(xmlString, "text/xml"); + } + catch (e){ + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=this.async; + this.xmlDoc["loadXM"+"L"](xmlString); + } + } + + this.onloadAction(this.mainObject, null, null, null, this); + + if (this.waitCall){ + this.waitCall(); + this.waitCall=null; + } +} +/** + * @desc: load XML + * @type: private + * @param: filePath - xml file path + * @param: postMode - send POST request + * @param: postVars - list of vars for post request + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXML=function(filePath, postMode, postVars, rpc){ + if (this.rSeed) + filePath+=((filePath.indexOf("?") != -1) ? "&" : "?")+"a_dhx_rSeed="+(new Date()).valueOf(); + this.filePath=filePath; + + if ((!_isIE)&&(window.XMLHttpRequest)) + this.xmlDoc=new XMLHttpRequest(); + else { + this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"); + } + + if (this.async) + this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); + this.xmlDoc.open(postMode ? "POST" : "GET", filePath, this.async); + + if (rpc){ + this.xmlDoc.setRequestHeader("User-Agent", "dhtmlxRPC v0.1 ("+navigator.userAgent+")"); + this.xmlDoc.setRequestHeader("Content-type", "text/xml"); + } + + else if (postMode) + this.xmlDoc.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); + + this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"); + this.xmlDoc.send(null||postVars); + + if (!this.async) + (new this.waitLoadFunction(this))(); +}; +/** + * @desc: destructor, cleans used memory + * @type: private + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.destructor=function(){ + this._filterXPath = null; + this._getAllNamedChilds = null; + this._retry = null; + this.async = null; + this.rSeed = null; + this.filePath = null; + this.onloadAction = null; + this.mainObject = null; + this.xmlDoc = null; + this.doXPath = null; + this.doXPathOpera = null; + this.doXSLTransToObject = null; + this.doXSLTransToString = null; + this.loadXML = null; + this.loadXMLString = null; + // this.waitLoadFunction = null; + this.doSerialization = null; + this.xmlNodeToJSON = null; + this.getXMLTopNode = null; + this.setXSLParamValue = null; + return null; +} + +dtmlXMLLoaderObject.prototype.xmlNodeToJSON = function(node){ + var t={}; + for (var i=0; i-1) + _isChrome=true; + +if ((navigator.userAgent.indexOf('Safari') != -1)||(navigator.userAgent.indexOf('Konqueror') != -1)){ + var _KHTMLrv = parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Safari')+7, 5)); + + if (_KHTMLrv > 525){ //mimic FF behavior for Safari 3.1+ + _isFF=true; + var _FFrv = 1.9; + } else + _isKHTML=true; +} else if (navigator.userAgent.indexOf('Opera') != -1){ + _isOpera=true; + _OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Opera')+6, 3)); +} + + +else if (navigator.appName.indexOf("Microsoft") != -1){ + _isIE=true; + if (navigator.appVersion.indexOf("MSIE 8.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; + if (navigator.appVersion.indexOf("MSIE 9.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; +} else { + _isFF=true; + var _FFrv = parseFloat(navigator.userAgent.split("rv:")[1]) +} + + +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPath=function(xpathExp, docObj, namespace, result_type){ + if (_isKHTML || (!_isIE && !window.XPathResult)) + return this.doXPathOpera(xpathExp, docObj); + + if (_isIE){ //IE + if (!docObj) + if (!this.xmlDoc.nodeName) + docObj=this.xmlDoc.responseXML + else + docObj=this.xmlDoc; + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (namespace != null) + docObj.setProperty("SelectionNamespaces", "xmlns:xsl='"+namespace+"'"); // + + if (result_type == 'single'){ + return docObj.selectSingleNode(xpathExp); + } + else { + return docObj.selectNodes(xpathExp)||new Array(0); + } + } else { //Mozilla + var nodeObj = docObj; + + if (!docObj){ + if (!this.xmlDoc.nodeName){ + docObj=this.xmlDoc.responseXML + } + else { + docObj=this.xmlDoc; + } + } + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (docObj.nodeName.indexOf("document") != -1){ + nodeObj=docObj; + } + else { + nodeObj=docObj; + docObj=docObj.ownerDocument; + } + var retType = XPathResult.ANY_TYPE; + + if (result_type == 'single') + retType=XPathResult.FIRST_ORDERED_NODE_TYPE + var rowsCol = new Array(); + var col = docObj.evaluate(xpathExp, nodeObj, function(pref){ + return namespace + }, retType, null); + + if (retType == XPathResult.FIRST_ORDERED_NODE_TYPE){ + return col.singleNodeValue; + } + var thisColMemb = col.iterateNext(); + + while (thisColMemb){ + rowsCol[rowsCol.length]=thisColMemb; + thisColMemb=col.iterateNext(); + } + return rowsCol; + } +} + +function _dhtmlxError(type, name, params){ + if (!this.catches) + this.catches=new Array(); + + return this; +} + +_dhtmlxError.prototype.catchError=function(type, func_name){ + this.catches[type]=func_name; +} +_dhtmlxError.prototype.throwError=function(type, name, params){ + if (this.catches[type]) + return this.catches[type](type, name, params); + + if (this.catches["ALL"]) + return this.catches["ALL"](type, name, params); + + alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]); + return null; +} + +window.dhtmlxError=new _dhtmlxError(); + + +//opera fake, while 9.0 not released +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPathOpera=function(xpathExp, docObj){ + //this is fake for Opera + var z = xpathExp.replace(/[\/]+/gi, "/").split('/'); + var obj = null; + var i = 1; + + if (!z.length) + return []; + + if (z[0] == ".") + obj=[docObj]; else if (z[0] == ""){ + obj=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(z[i].replace(/\[[^\]]*\]/g, "")); + i++; + } else + return []; + + for (i; i < z.length; i++)obj=this._getAllNamedChilds(obj, z[i]); + + if (z[i-1].indexOf("[") != -1) + obj=this._filterXPath(obj, z[i-1]); + return obj; +} + +dtmlXMLLoaderObject.prototype._filterXPath=function(a, b){ + var c = new Array(); + var b = b.replace(/[^\[]*\[\@/g, "").replace(/[\[\]\@]*/g, ""); + + for (var i = 0; i < a.length; i++) + if (a[i].getAttribute(b)) + c[c.length]=a[i]; + + return c; +} +dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(a, b){ + var c = new Array(); + + if (_isKHTML) + b=b.toUpperCase(); + + for (var i = 0; i < a.length; i++)for (var j = 0; j < a[i].childNodes.length; j++){ + if (_isKHTML){ + if (a[i].childNodes[j].tagName&&a[i].childNodes[j].tagName.toUpperCase() == b) + c[c.length]=a[i].childNodes[j]; + } + + else if (a[i].childNodes[j].tagName == b) + c[c.length]=a[i].childNodes[j]; + } + + return c; +} + +function dhtmlXHeir(a, b){ + for (var c in b) + if (typeof (b[c]) == "function") + a[c]=b[c]; + return a; +} + +function dhtmlxEvent(el, event, handler){ + if (el.addEventListener) + el.addEventListener(event, handler, false); + + else if (el.attachEvent) + el.attachEvent("on"+event, handler); +} + +//============= XSL Extension =================================== + +dtmlXMLLoaderObject.prototype.xslDoc=null; +dtmlXMLLoaderObject.prototype.setXSLParamValue=function(paramName, paramValue, xslDoc){ + if (!xslDoc) + xslDoc=this.xslDoc + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML; + var item = + this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+paramName+"']", xslDoc, + "http:/\/www.w3.org/1999/XSL/Transform", "single"); + + if (item != null) + item.firstChild.nodeValue=paramValue +} +dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(xslDoc, xmlDoc){ + if (!xslDoc) + xslDoc=this.xslDoc; + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML + + if (!xmlDoc) + xmlDoc=this.xmlDoc; + + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + + //MOzilla + if (!_isIE){ + if (!this.XSLProcessor){ + this.XSLProcessor=new XSLTProcessor(); + this.XSLProcessor.importStylesheet(xslDoc); + } + var result = this.XSLProcessor.transformToDocument(xmlDoc); + } else { + var result = new ActiveXObject("Msxml2.DOMDocument.3.0"); + try{ + xmlDoc.transformNodeToObject(xslDoc, result); + }catch(e){ + result = xmlDoc.transformNode(xslDoc); + } + } + return result; +} + +dtmlXMLLoaderObject.prototype.doXSLTransToString=function(xslDoc, xmlDoc){ + var res = this.doXSLTransToObject(xslDoc, xmlDoc); + if(typeof(res)=="string") + return res; + return this.doSerialization(res); +} + +dtmlXMLLoaderObject.prototype.doSerialization=function(xmlDoc){ + if (!xmlDoc) + xmlDoc=this.xmlDoc; + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + if (!_isIE){ + var xmlSerializer = new XMLSerializer(); + return xmlSerializer.serializeToString(xmlDoc); + } else + return xmlDoc.xml; +} + +/** +* @desc: +* @type: private +*/ +dhtmlxEventable=function(obj){ + obj.attachEvent=function(name, catcher, callObj){ + name='ev_'+name.toLowerCase(); + if (!this[name]) + this[name]=new this.eventCatcher(callObj||this); + + return(name+':'+this[name].addEvent(catcher)); //return ID (event name & event ID) + } + obj.callEvent=function(name, arg0){ + name='ev_'+name.toLowerCase(); + if (this[name]) + return this[name].apply(this, arg0); + return true; + } + obj.checkEvent=function(name){ + return (!!this['ev_'+name.toLowerCase()]) + } + obj.eventCatcher=function(obj){ + var dhx_catch = []; + var z = function(){ + var res = true; + for (var i = 0; i < dhx_catch.length; i++){ + if (dhx_catch[i] != null){ + var zr = dhx_catch[i].apply(obj, arguments); + res=res&&zr; + } + } + return res; + } + z.addEvent=function(ev){ + if (typeof (ev) != "function") + ev=eval(ev); + if (ev) + return dhx_catch.push(ev)-1; + return false; + } + z.removeEvent=function(id){ + dhx_catch[id]=null; + } + return z; + } + obj.detachEvent=function(id){ + if (id != false){ + var list = id.split(':'); //get EventName and ID + this[list[0]].removeEvent(list[1]); //remove event + } + } + obj.detachAllEvents = function(){ + for (var name in this){ + if (name.indexOf("ev_")==0) + delete this[name]; + } + } +} diff --git a/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxtree.js b/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxtree.js new file mode 100755 index 0000000000..aed3f5d95b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/dhtmlxTree/sources/dhtmlxtree.js @@ -0,0 +1,3808 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ +/*_TOPICS_ +@0:Initialization +@1:Selection control +@2:Add/delete +@3:Private +@4:Node/level control +@5:Checkboxes/user data manipulation +@6:Appearence control +@7: Handlers +*/ + +function xmlPointer(data){ + this.d=data; +} +xmlPointer.prototype={ + text:function(){ if (!_isFF) return this.d.xml; var x = new XMLSerializer(); return x.serializeToString(this.d); }, + get:function(name){return this.d.getAttribute(name); }, + exists:function(){return !!this.d }, + content:function(){return this.d.firstChild?this.d.firstChild.data:""; }, // <4k in FF + each:function(name,f,t,i){ var a=this.d.childNodes; var c=new xmlPointer(); if (a.length) for (i=i||0; i0) { beforeNode=new Object; beforeNode.tr=parentObject.childNodes[0].tr.previousSibling; } + parentObject._has_top=true; + for (ik=Count; ik>0; ik--) + Nodes[ik]=Nodes[ik-1]; + Count=0; + break; + } + }; + }; + + var n; + if (!(n=this._idpull[itemId]) || n.span!=-1){ + n=Nodes[Count]=new dhtmlXTreeItemObject(itemId,itemText,parentObject,this,itemActionHandler,1); + itemId = Nodes[Count].id; + parentObject.childsCount++; + } + + if(!n.htmlNode) { + n.label=itemText; + n.htmlNode=this._createItem((this.checkBoxOff?1:0),n); + n.htmlNode.objBelong=n; + } + + if(image1) n.images[0]=image1; + if(image2) n.images[1]=image2; + if(image3) n.images[2]=image3; + + + var tr=this._drawNewTr(n.htmlNode); + if ((this.XMLloadingWarning)||(this._hAdI)) + n.htmlNode.parentNode.parentNode.style.display="none"; + + + if ((beforeNode)&&(beforeNode.tr.nextSibling)) + parentObject.htmlNode.childNodes[0].insertBefore(tr,beforeNode.tr.nextSibling); + else + if (this.parsingOn==parentObject.id){ + this.parsedArray[this.parsedArray.length]=tr; + } + else + parentObject.htmlNode.childNodes[0].appendChild(tr); + + + if ((beforeNode)&&(!beforeNode.span)) beforeNode=null; + + if (this.XMLsource) if ((childs)&&(childs!=0)) n.XMLload=0; else n.XMLload=1; + n.tr=tr; + tr.nodem=n; + + if (parentObject.itemId==0) + tr.childNodes[0].className="hiddenRow"; + + if ((parentObject._r_logic)||(this._frbtr)) + this._setSrc(n.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0],this.imPath+this.radioArray[0]); + + + if (optionStr) { + var tempStr=optionStr.split(","); + + for (var i=0; i=2) + { + this._correctPlus(Nodes[parentObject.childsCount-2]); + this._correctLine(Nodes[parentObject.childsCount-2]); + } + if (parentObject.childsCount!=2) this._correctPlus(Nodes[0]); + + if (this.tscheck) this._correctCheckStates(parentObject); + + if (this._onradh){ + if (this.xmlstate==1){ + var old=this.onXLE; + this.onXLE=function(id){ this._onradh(itemId); if (old) old(id); } + } + else + this._onradh(itemId); + } + + } + return n; +}; + + + + +/** +* @desc: create new node as a child to specified with parentId +* @type: deprecated +* @param: parentId - parent node id +* @param: itemId - new node id +* @param: itemText - new node text +* @param: itemActionHandler - function fired on node select event (optional) +* @param: image1 - image for node without children; (optional) +* @param: image2 - image for closed node; (optional) +* @param: image3 - image for opened node (optional) +* @param: optionStr - options string (optional) +* @param: children - node children flag (for dynamical trees) (optional) +* @topic: 2 +*/ + dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){ + var parentObject=this._globalIdStorageFind(parentId); + if (!parentObject) return (-1); + var nodez=this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children); + + return nodez; + }; +/** +* @desc: create new node as a child to specified with parentId +* @type: public +* @param: parentId - parent node id +* @param: itemId - new node id +* @param: itemText - new node label +* @param: itemActionHandler - function fired on node select event (optional) +* @param: image1 - image for node without children; (optional) +* @param: image2 - image for closed node; (optional) +* @param: image3 - image for opened node (optional) +* @param: optionStr - options string (optional) +* @param: children - node children flag (for dynamical trees) (optional) +* @topic: 2 +*/ + dhtmlXTreeObject.prototype.insertNewChild=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){ + return this.insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children); + } +/** +* @desc: parse xml +* @type: private +* @param: dhtmlObject - jsTree object +* @param: node - top XML node +* @param: parentId - parent node id +* @param: level - level of tree +* @topic: 2 +*/ + dhtmlXTreeObject.prototype._parseXMLTree=function(a,b,c,d,xml){ + var p=new xmlPointer(xml.getXMLTopNode("tree")); + a._parse(p); + a._p=p; + } + + dhtmlXTreeObject.prototype._parseItem=function(c,temp,preNode,befNode){ + var id; + if (this._srnd && (!this._idpull[id=c.get("id")] || !this._idpull[id].span)) + { + this._addItemSRND(temp.id,id,c); + return; + } + + var a=c.get_all(); + + if ((typeof(this.waitUpdateXML)=="object")&&(!this.waitUpdateXML[a.id])){ + this._parse(c,a.id,1); + return; + } + + + + + + + var zST=[]; + if (a.select) zST.push("SELECT"); + if (a.top) zST.push("TOP"); + if (a.call) this.nodeAskingCall=a.id; + if (a.checked==-1) zST.push("HCHECKED"); + else if (a.checked) zST.push("CHECKED"); + if (a.open) zST.push("OPEN"); + + if (this.waitUpdateXML){ + if (this._globalIdStorageFind(a.id)) + var newNode=this.updateItem(a.id,a.text,a.im0,a.im1,a.im2,a.checked); + else{ + if (this.npl==0) zST.push("TOP"); + else preNode=temp.childNodes[this.npl]; + + var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,0,preNode); + preNode=null; + } + } + else + var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,(befNode||0),preNode); + if (a.tooltip) + newNode.span.parentNode.parentNode.title=a.tooltip; + + if (a.style) + if (newNode.span.style.cssText) + newNode.span.style.cssText+=(";"+a.style); + else + newNode.span.setAttribute("style",newNode.span.getAttribute("style")+"; "+a.style); + + if (a.radio) newNode._r_logic=true; + + if (a.nocheckbox){ + var check_node=newNode.span.parentNode.previousSibling.previousSibling; + check_node.childNodes[0].style.display='none'; + if (window._KHTMLrv) check_node.style.display="none"; + newNode.nocheckbox=true; + } + if (a.disabled){ + if (a.checked!=null) this._setCheck(newNode,a.checked); + this.disableCheckbox(newNode,1); + } + + + newNode._acc=a.child||0; + + if (this.parserExtension) this.parserExtension._parseExtension.call(this,c,a,(temp?temp.id:0)); + + this.setItemColor(newNode,a.aCol,a.sCol); + if (a.locked=="1") this.lockItem(newNode.id,true,true); + + if ((a.imwidth)||(a.imheight)) this.setIconSize(a.imwidth,a.imheight,newNode); + if ((a.closeable=="0")||(a.closeable=="1")) this.setItemCloseable(newNode,a.closeable); + var zcall=""; + if (a.topoffset) this.setItemTopOffset(newNode,a.topoffset); + if ((!this.slowParse)||(typeof(this.waitUpdateXML)=="object")){ + if (c.sub_exists("item")) + zcall=this._parse(c,a.id,1); + } + + if (zcall!="") this.nodeAskingCall=zcall; + + + c.each("userdata",function(u){ + this.setUserData(c.get("id"),u.get("name"),u.content()); + },this) + + + } + dhtmlXTreeObject.prototype._parse=function(p,parentId,level,start){ + if (this._srnd && !this.parentObject.offsetHeight) { + var self=this; + return window.setTimeout(function(){ + self._parse(p,parentId,level,start); + },100); + } + if (!p.exists()) return; + + this.skipLock=true; //disable item locking + //loading flags + + + if (!parentId) { //top level + parentId=p.get("id"); + if (p.get("radio")) + this.htmlNode._r_logic=true; + this.parsingOn=parentId; + this.parsedArray=new Array(); + this.setCheckList=""; + this.nodeAskingCall=""; + } + + var temp=this._globalIdStorageFind(parentId); + if (!temp) return dhtmlxError.throwError("DataStructure","XML refers to not existing parent"); + + this.parsCount=this.parsCount?(this.parsCount+1):1; + this.XMLloadingWarning=1; + + if ((temp.childsCount)&&(!start)&&(!this._edsbps)&&(!temp._has_top)) + var preNode=0;//temp.childNodes[temp.childsCount-1]; + else + var preNode=0; + + this.npl=0; + + p.each("item",function(c,i){ + + temp.XMLload=1; + if ((this._epgps)&&(this._epgpsC==this.npl)){ + this._setNextPageSign(temp,this.npl+1*(start||0),level,node); + return -1; + } + + this._parseItem(c,temp,0,preNode); + + + this.npl++; + + + + },this,start); + + + if (!level) { + p.each("userdata",function(u){ + this.setUserData(p.get("id"),u.get("name"),u.content()); + },this); + + temp.XMLload=1; + if (this.waitUpdateXML){ + this.waitUpdateXML=false; + for (var i=temp.childsCount-1; i>=0; i--) + if (temp.childNodes[i]._dmark) + this.deleteItem(temp.childNodes[i].id); + } + + var parsedNodeTop=this._globalIdStorageFind(this.parsingOn); + + for (var i=0; i1){ + if ( ( (Nodes[1].style.display!="none") || (mode==1) ) && (mode!=2) ) { +//nb:solves standard doctype prb in IE + this.allTree.childNodes[0].border = "1"; + this.allTree.childNodes[0].border = "0"; + nodestyle="none"; + } + else nodestyle=""; + + for (var i=1; i7) td2.style.width="999999px"; + else if (!window._KHTMLrv) td2.style.width="100%"; + +// itemObject.span.appendChild(document.createTextNode(itemObject.label)); + itemObject.span.innerHTML=itemObject.label; + td2.appendChild(itemObject.span); + td2.parentObject=itemObject; td1.parentObject=itemObject; + td2.onclick=this.onRowSelect; td1.onclick=this.onRowClick; td2.ondblclick=this.onRowClick2; + if (this.ettip) + tr.title=itemObject.label; + + if (this.dragAndDropOff) { + if (this._aimgs) { this.dragger.addDraggableItem(td12,this); td12.parentObject=itemObject; } + this.dragger.addDraggableItem(td2,this); + } + + itemObject.span.style.paddingLeft="5px"; itemObject.span.style.paddingRight="5px"; td2.style.verticalAlign=""; + td2.style.fontSize="10pt"; td2.style.cursor=this.style_pointer; + tr.appendChild(td1); tr.appendChild(td11); tr.appendChild(td12); + tr.appendChild(td2); + tbody.appendChild(tr); + table.appendChild(tbody); + + if (this.ehlt || this.checkEvent("onMouseIn") || this.checkEvent("onMouseOut")){//highlighting + tr.onmousemove=this._itemMouseIn; + tr[(_isIE)?"onmouseleave":"onmouseout"]=this._itemMouseOut; + } + return table; + }; + + +/** +* @desc: set path to images directory +* @param: newPath - path to images directory (related to the page with tree or absolute http url) +* @type: public +* @topic: 0 +*/ + dhtmlXTreeObject.prototype.setImagePath=function( newPath ){ this.imPath=newPath; this.iconURL=newPath; }; + /** + * @desc: set path to external images used as tree icons + * @type: public + * @param: path - url (or relative path) of images folder with closing "/" + * @topic: 0,7 + */ + dhtmlXTreeObject.prototype.setIconPath=function(path){ + this.iconURL=path; + } + + + +/** +* @desc: set function called when tree node selected +* @param: (function) func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onRightClick +* @depricated: use grid.attachEvent("onRightClick",func); instead +* @eventdesc: Event occurs after right mouse button was clicked. + Assigning this handler can disable default context menu, and incompattible with dhtmlXMenu integration. +* @eventparam: (string) ID of clicked item +* @eventparam: (object) event object +*/ + dhtmlXTreeObject.prototype.setOnRightClickHandler=function(func){ this.attachEvent("onRightClick",func); }; + +/** +* @desc: set function called when tree node clicked, also can be forced to call from API +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onClick +* @depricated: use grid.attachEvent("onClick",func); instead +* @eventdesc: Event raises immideatly after text part of item in tree was clicked, but after default onClick functionality was processed. + Richt mouse button click can be catched by onRightClick event handler. +* @eventparam: ID of clicked item +* @eventparam: ID of previously selected item +*/ + dhtmlXTreeObject.prototype.setOnClickHandler=function(func){ this.attachEvent("onClick",func); }; + +/** +* @desc: set function called when tree node selected or unselected, include any select change caused by any functionality +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onSelect +* @depricated: use grid.attachEvent("onSelect",func); instead +* @eventdesc: Event raises immideatly after selection in tree was changed +* @eventparam: selected item ID ( list of IDs in case of multiselection) +*/ + dhtmlXTreeObject.prototype.setOnSelectStateChange=function(func){ this.attachEvent("onSelect",func); }; + + +/** +* @desc: enables dynamic loading from XML +* @type: public +* @param: filePath - name of script returning XML; in case of virtual loading - user defined function +* @topic: 0 +*/ + dhtmlXTreeObject.prototype.setXMLAutoLoading=function(filePath){ this.XMLsource=filePath; }; + + /** +* @desc: set function called before checkbox checked/unchecked +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onCheck +* @depricated: use tree.attachEvent("onCheck",func); instead +* @eventdesc: Event raises right before item in tree was checked/unchecked. can be canceled (return false from event handler) +* @eventparam: ID of item which will be checked/unchecked +* @eventparam: Current checkbox state. 1 - item checked, 0 - item unchecked. +* @eventreturn: true - confirm changing checked state; false - deny chaning checked state; +*/ + dhtmlXTreeObject.prototype.setOnCheckHandler=function(func){ this.attachEvent("onCheck",func); }; + + +/** +* @desc: set function called before tree node opened/closed +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onOpen +* @depricated: use grid.attachEvent("onOpenStart",func); instead +* @eventdesc: Event raises immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored. + Event does not occur if node was opened by dhtmlXtree API. +* @eventparam: ID of node which will be opened/closed +* @eventparam: Current open state of tree item. 0 - item has not children, -1 - item closed, 1 - item opened. +* @eventreturn: true - confirm opening/closing; false - deny opening/closing; +*/ + dhtmlXTreeObject.prototype.setOnOpenHandler=function(func){ this.attachEvent("onOpenStart",func); }; +/** +* @desc: set function called before tree node opened/closed +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onOpenStart +* @depricated: use grid.attachEvent("onOpenStart",func); instead +* @eventdesc: Event raises immideatly after item in tree got command to open/close , and before item was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored. + Event not raised if node opened by dhtmlXtree API. +* @eventparam: ID of node which will be opened/closed +* @eventparam: Current open state of tree item. 0 - item has not children, -1 - item closed, 1 - item opened. +* @eventreturn: true - confirm opening/closing; false - deny opening/closing; +*/ + dhtmlXTreeObject.prototype.setOnOpenStartHandler=function(func){ this.attachEvent("onOpenStart",func); }; + +/** +* @desc: set function called after tree node opened/closed +* @param: func - event handling function +* @type: deprecated +* @topic: 0,7 +* @event: onOpenEnd +* @depricated: use grid.attachEvent("onOpenEnd",func); instead +* @eventdesc: Event raises immideatly after item in tree was opened//closed. Event also raised for unclosable nodes and nodes without open/close functionality - in that case result of function will be ignored. + Event not raised if node opened by dhtmlXtree API. +* @eventparam: ID of node which will be opened/closed +* @eventparam: Current open state of tree item. 0 - item has not children, -1 - item closed, 1 - item opened. +*/ + dhtmlXTreeObject.prototype.setOnOpenEndHandler=function(func){ this.attachEvent("onOpenEnd",func); }; + + /** +* @desc: set function called when tree node double clicked +* @param: func - event handling function +* @type: public +* @topic: 0,7 +* @event: onDblClick +* @depricated: use grid.attachEvent("onDblClick",func); instead +* @eventdesc: Event raised immideatly after item in tree was doubleclicked, before default onDblClick functionality was processed. + Beware using both onClick and onDblClick events, because component can generate onClick event before onDblClick event while doubleclicking item in tree. + ( that behavior depend on used browser ) +* @eventparam: ID of item which was doubleclicked +* @eventreturn: true - confirm opening/closing; false - deny opening/closing; +*/ + dhtmlXTreeObject.prototype.setOnDblClickHandler=function(func){ this.attachEvent("onDblClick",func); }; + + + + + + + + + + /** +* @desc: expand target node and all sub nodes +* @type: public +* @param: itemId - node id +* @topic: 4 +*/ + dhtmlXTreeObject.prototype.openAllItems=function(itemId) + { + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + this._xopenAll(temp); + }; + +/** +* @desc: return open/close state +* @type: public +* @param: itemId - node id +* @return: -1 - close, 1 - opened, 0 - node doesn't have children +* @topic: 4 +*/ + dhtmlXTreeObject.prototype.getOpenState=function(itemId){ + var temp=this._globalIdStorageFind(itemId); + if (!temp) return ""; + return this._getOpenState(temp); + }; + +/** +* @desc: collapse target node and all sub nodes +* @type: public +* @param: itemId - node id +* @topic: 4 +*/ + dhtmlXTreeObject.prototype.closeAllItems=function(itemId) + { + if (itemId===window.undefined) itemId=this.rootId; + + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + this._xcloseAll(temp); + +//nb:solves standard doctype prb in IE + this.allTree.childNodes[0].border = "1"; + this.allTree.childNodes[0].border = "0"; + + }; + + +/** +* @desc: set user data for target node +* @type: public +* @param: itemId - target node id +* @param: name - key for user data +* @param: value - user data value +* @topic: 5 +*/ + dhtmlXTreeObject.prototype.setUserData=function(itemId,name,value){ + var sNode=this._globalIdStorageFind(itemId,0,true); + if (!sNode) return; + if(name=="hint") + sNode.htmlNode.childNodes[0].childNodes[0].title=value; + if (typeof(sNode.userData["t_"+name])=="undefined"){ + if (!sNode._userdatalist) sNode._userdatalist=name; + else sNode._userdatalist+=","+name; + } + sNode.userData["t_"+name]=value; + }; + +/** +* @desc: get user data from target node +* @type: public +* @param: itemId - target node id +* @param: name - key for user data +* @return: value of user data +* @topic: 5 +*/ + dhtmlXTreeObject.prototype.getUserData=function(itemId,name){ + var sNode=this._globalIdStorageFind(itemId,0,true); + if (!sNode) return; + return sNode.userData["t_"+name]; + }; + + + + +/** +* @desc: get node color (text color) +* @param: itemId - id of node +* @type: public +* @return: color of node (empty string for default color); +* @topic: 6 +*/ + dhtmlXTreeObject.prototype.getItemColor=function(itemId) + { + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + + var res= new Object(); + if (temp.acolor) res.acolor=temp.acolor; + if (temp.scolor) res.scolor=temp.scolor; + return res; + }; +/** +* @desc: set node text color +* @param: itemId - id of node +* @param: defaultColor - node color +* @param: selectedColor - selected node color +* @type: public +* @topic: 6 +*/ + dhtmlXTreeObject.prototype.setItemColor=function(itemId,defaultColor,selectedColor) + { + if ((itemId)&&(itemId.span)) + var temp=itemId; + else + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + else { + if (temp.i_sel) + { if (selectedColor) temp.span.style.color=selectedColor; } + else + { if (defaultColor) temp.span.style.color=defaultColor; } + + if (selectedColor) temp.scolor=selectedColor; + if (defaultColor) temp.acolor=defaultColor; + } + }; + +/** +* @desc: return node text +* @param: itemId - id of node +* @type: public +* @return: text of item (with HTML formatting, if any) +* @topic: 6 +*/ + dhtmlXTreeObject.prototype.getItemText=function(itemId) + { + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + return(temp.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML); + }; +/** +* @desc: return parent item id +* @param: itemId - id of node +* @type: public +* @return: id of parent item +* @topic: 4 +*/ + dhtmlXTreeObject.prototype.getParentId=function(itemId) + { + var temp=this._globalIdStorageFind(itemId); + if ((!temp)||(!temp.parentObject)) return ""; + return temp.parentObject.id; + }; + + + +/** +* @desc: change item id +* @type: public +* @param: itemId - old node id +* @param: newItemId - new node id +* @topic: 4 +*/ + dhtmlXTreeObject.prototype.changeItemId=function(itemId,newItemId) + { + if (itemId==newItemId) return; + var temp=this._globalIdStorageFind(itemId); + if (!temp) return 0; + temp.id=newItemId; + temp.span.contextMenuId=newItemId; + this._idpull[newItemId]=this._idpull[itemId]; + delete this._idpull[itemId]; + }; + + +/** +* @desc: mark selected item as cut +* @type: public +* @topic: 2 +*/ + dhtmlXTreeObject.prototype.doCut=function(){ + if (this.nodeCut) this.clearCut(); + this.nodeCut=(new Array()).concat(this._selected); + for (var i=0; i=2) + { + + this._correctPlus(Nodes[targetObject.childsCount-2]); + this._correctLine(Nodes[targetObject.childsCount-2]); + } + + this._correctPlus(Nodes[targetObject.childsCount-1]); + //this._correctLine(Nodes[targetObject.childsCount-1]); + + + if (this.tscheck) this._correctCheckStates(targetObject); + if (oldTree.tscheck) oldTree._correctCheckStates(z); + + } + + //fix source parent + + if (c>1) { oldTree._correctPlus(z.childNodes[c-2]); + oldTree._correctLine(z.childNodes[c-2]); + } + + +// if (z.childsCount==0) + oldTree._correctPlus(z); + oldTree._correctLine(z); + + + this.callEvent("onDrop",[itemObject.id,targetObject.id,(beforeNode?beforeNode.id:null),oldTree,targetObject.treeNod]); + return itemObject.id; + }; + + + +/** +* @desc: recursive set default styles for node +* @type: private +* @param: itemObject - target node object +* @topic: 6 +*/ + dhtmlXTreeObject.prototype._clearStyles=function(itemObject){ + if (!itemObject.htmlNode) return; //some weird case in SRND mode + var td1=itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[1]; + var td3=td1.nextSibling.nextSibling; + + itemObject.span.innerHTML=itemObject.label; + itemObject.i_sel=false; + + if (itemObject._aimgs) + this.dragger.removeDraggableItem(td1.nextSibling); + + if (this.checkBoxOff) { + td1.childNodes[0].style.display=""; + td1.childNodes[0].onclick=this.onCheckBoxClick; + this._setSrc(td1.childNodes[0],this.imPath+this.checkArray[itemObject.checkstate]); + } + else td1.childNodes[0].style.display="none"; + td1.childNodes[0].treeNod=this; + + this.dragger.removeDraggableItem(td3); + if (this.dragAndDropOff) this.dragger.addDraggableItem(td3,this); + if (this._aimgs) this.dragger.addDraggableItem(td1.nextSibling,this); + + td3.childNodes[0].className="standartTreeRow"; + td3.onclick=this.onRowSelect; td3.ondblclick=this.onRowClick2; + td1.previousSibling.onclick=this.onRowClick; + + this._correctLine(itemObject); + this._correctPlus(itemObject); + for (var i=0; i
    "; + dh+="
    If you think that error can be caused by dhtmlxtree press the 'Generate report' button and send generated report to support@dhtmlx.com
    "; + dh+=""; + dh+="
    "; + d.innerHTML=dh; + document.body.appendChild(d); + return true; +}; + +function dhtmlxtreeErrorReport(a,b,c){ + var str=a+" ["+b+"]"; + if (a=='LoadXML') + { + str+="
    "+c[0].responseText+"
    "+c[0].status; + } + + window.onerror(str, "none", "none"); +} + +function dhtmlxtreeReport(node){ + var that=node.parentNode; + that.lastChild.innerHTML=""; + var rep=that.childNodes[1].innerHTML; + for (var a=0; a<_all_used_trees.length; a++){ + var atree=_all_used_trees[a]; + rep+="\n\n Tree "+a+"\n"; + for (b in atree){ + if (typeof(atree[b])=="function") continue; + rep+=b+"="+atree[b]+"\n"; + } + rep+="---------------------\n"; + if (atree.XMLLoader){ + try{ + var z=atree.XMLLoader.getXMLTopNode("tree") + if (document.all) + rep+=z.xml+"\n"; + else{ + var xmlSerializer = new XMLSerializer(); + rep+=xmlSerializer.serializeToString(z)+"\n"; + } + } + catch(e){ + rep+="XML not recognised\n"; + } + } + + rep+="---------------------\n"; + for (var i in atree._idpull){ + var n=atree._idpull[i]; + if (typeof(n)!='object') continue; + rep+="Node: "+n.id; + rep+=" Childs: "+n.childsCount; + for (var j=0; j"+cont+""); + window[id]=t; + + var oninit = obj.getAttribute("oninit"); + if (oninit) eval(oninit); + return t; +} + +function dhx_init_trees(){ + var z=document.getElementsByTagName("div"); + for (var i=0; ibody div.dokuwiki textarea.edit{background:#fff url(./tpl/dhtmlx/images/inputshadow.png) repeat-x top;}div.dokuwiki input.edit,div.dokuwiki select.edit{font-size:100%;border:1px solid #8cacbb;color:#000;background-color:#fff;vertical-align:middle;margin:1px;padding:0.20em 0.3em;display:inline;}html>body div.dokuwiki input.edit,html>body div.dokuwiki select.edit{background:#fff url(./tpl/dhtmlx/images/inputshadow.png) repeat-x top;}div.dokuwiki select.edit{padding:0.1em 0;}div.dokuwiki input.missing{font-size:100%;border:1px solid #8cacbb;color:#000;background-color:#fcc;vertical-align:middle;margin:1px;padding:0.20em 0.3em;display:inline;}div.dokuwiki textarea.edit[disabled],div.dokuwiki textarea.edit[readonly],div.dokuwiki input.edit[disabled],div.dokuwiki input.edit[readonly],div.dokuwiki select.edit[disabled]{background-color:#f5f5f5!important;color:#666!important;}div.dokuwiki div.toolbar,div.dokuwiki div#wiki__editbar{margin:2px 0;text-align:left;}div.dokuwiki div#size__ctl{float:right;width:60px;height:2.7em;}div.dokuwiki #size__ctl img{cursor:pointer;}div.dokuwiki div#wiki__editbar div.editButtons{float:left;padding:0 1.0em 0.7em 0;}div.dokuwiki div#wiki__editbar div.summary{float:left;}div.dokuwiki .nowrap{white-space:nowrap;}div.dokuwiki div#draft__status{float:right;color:#638c9c;}div.dokuwiki div.license{padding:0.5em;font-size:90%;text-align:center;}div.dokuwiki form#dw__editform div.license{clear:left;font-size:90%;}div.dokuwiki input.button,div.dokuwiki button.button{border:1px solid #8cacbb;color:#000;background-color:#fff;vertical-align:middle;text-decoration:none;font-size:100%;cursor:pointer;margin:1px;padding:0.125em 0.4em;}html>body div.dokuwiki input.button,html>body div.dokuwiki button.button{background:#fff url(./tpl/dhtmlx/images/buttonshadow.png) repeat-x bottom;}* html div.dokuwiki input.button,* html div.dokuwiki button.button{height:1.8em;}div.dokuwiki div.secedit input.button{border:1px solid #8cacbb;color:#000;background-color:#fff;vertical-align:middle;text-decoration:none;margin:0;padding:0;font-size:10px;cursor:pointer;float:right;display:inline;}div.dokuwiki div.pagenav{margin:1em 0 0 0;}div.dokuwiki div.pagenav-prev{text-align:right;float:left;width:49%}div.dokuwiki div.pagenav-next{text-align:left;float:right;width:49%}div.dokuwiki a:link,div.dokuwiki a:visited{color:#436976;text-decoration:none;}div.dokuwiki a:hover,div.dokuwiki a:active{text-decoration:underline;}div.dokuwiki h1 a,div.dokuwiki h2 a,div.dokuwiki h3 a,div.dokuwiki h4 a,div.dokuwiki h5 a,div.dokuwiki a.nolink{text-decoration:none !important;}div.dokuwiki a.urlextern{background:transparent url(./tpl/dhtmlx/images/link_icon.gif) 0px 1px no-repeat;padding:1px 0px 1px 16px;}div.dokuwiki a.windows{background:transparent url(./tpl/dhtmlx/images/windows.gif) 0px 1px no-repeat;padding:1px 0px 1px 16px;}div.dokuwiki a.interwiki{}div.dokuwiki a.media{padding:0;}div.dokuwiki a.urlextern:link,div.dokuwiki a.windows:link,div.dokuwiki a.interwiki:link{color:#436976;}div.dokuwiki a.urlextern:visited,div.dokuwiki a.windows:visited,div.dokuwiki a.interwiki:visited{color:purple;}div.dokuwiki a.urlextern:hover,div.dokuwiki a.urlextern:active,div.dokuwiki a.windows:hover,div.dokuwiki a.windows:active,div.dokuwiki a.interwiki:hover,div.dokuwiki a.interwiki:active{color:#000;}div.dokuwiki a.mail{background:transparent url(./tpl/dhtmlx/images/mail_icon.gif) 0px 1px no-repeat;padding:1px 0px 1px 16px;}div.dokuwiki a.wikilink1{color:#058cb6 !important;}div.dokuwiki a.wikilink2{color:#666 !important;text-decoration:none !important;border-bottom:dashed 1px #666 !important;}div.dokuwiki a.wikilink2:hover{border-bottom:none !important;}div.dokuwiki div.preview{background-color:#f5f5f5;margin:0 0 0 2em;padding:4px;border:1px dashed #000;}div.dokuwiki div.breadcrumbs{background-color:#f5f5f5;color:#666;font-size:80%;padding:0 0 0 4px;}div.dokuwiki p br{clear:both;}div.dokuwiki .last{width:300px;}div.dokuwiki span.user{color:#ccc;font-size:90%;}div.dokuwiki li.minor{color:#666;font-style:italic;}td .level4 .media img{margin:0 5px 0 0;float:left;width:22px;}div.dokuwiki img.media{margin-bottom:-5px;padding-right:4px;}div.dokuwiki img.medialeft{border:0;float:left;margin:0 1.5em 0 0;}div.dokuwiki img.mediaright{border:0;float:right;margin:0 0 0 1.5em;}div.dokuwiki img.mediacenter{border:0;display:block;margin:0 auto;}div.dokuwiki img.middle{vertical-align:middle;}div.dokuwiki acronym{cursor:help;border-bottom:1px dotted #000;}div.dokuwiki h1,div.dokuwiki h2,div.dokuwiki h3,div.dokuwiki h4,div.dokuwiki h5{background-color:inherit;font-size:100%;font-weight:normal;margin:0 0 1em 0;padding:0.5em 0 0 0;clear:left;}div.dokuwiki h1{font-family:tahoma,arial,helvetica;font-size:27px;margin:30px 0 20px 0;}div.dokuwiki h2{text-align:left;font-family:tahoma,arial,helvetica;font-size:25px;color:#b5b5b5;}div.dokuwiki h3{font-size:18px;border-bottom:none;padding-top:20px;}div.dokuwiki h4{font-size:20px;color:#b5b5b5 !important;margin:10px 0 20px 0;font-family:arial;}div.dokuwiki h5{font-size:100%;color:#666 !important;border-bottom:none;font-weight:bold;border-top:1px dotted #666;line-height:5px;margin-right:50px;}div.dokuwiki div.level1{margin-left:0;}div.dokuwiki div.level2{margin-left:0;}div.dokuwiki div.level3{margin-left:0;}div.dokuwiki div.level4{margin-left:0;}div.dokuwiki div.level5{margin-left:0}div.level4 ul{line-height:22px;list-style-type:square !important;list-style-image:none !important;margin-left:35px;color:#638c9c;}div.dokuwiki ul{line-height:22px;list-style-type:none;list-style-type:circle;margin:0 0 20px 35px;color:#638c9c;}div.dokuwiki ol{line-height:1.5em;list-style-image:none;margin:0 0 1em 3.5em;color:#638c9c;font-weight:bold;}div.dokuwiki li ul{margin-bottom:0;}div.dokuwiki li ol{margin-bottom:0;}div.dokuwiki .li{color:#666;font-weight:normal;}div.dokuwiki ol{list-style-type:decimal}div.dokuwiki ol ol{list-style-type:upper-roman}div.dokuwiki ol ol ol{list-style-type:lower-alpha}div.dokuwiki ol ol ol ol{list-style-type:lower-greek}div.dokuwiki li.open{list-style-image:url(./tpl/dhtmlx/images/open.gif);}div.dokuwiki li.closed{list-style-image:url(./tpl/dhtmlx/images/closed.gif);}div.dokuwiki blockquote{border-left:2px solid #8cacbb;padding-left:3px;}div.dokuwiki pre{font-size:120%;padding:0.5em;border:1px dashed #8cacbb;color:#000;overflow:auto;}div.dokuwiki pre.pre{background-color:#f7f9fa;}div.dokuwiki pre.code{background-color:#f7f9fa;}div.dokuwiki code{font-size:120%;}div.dokuwiki pre.file{background-color:#dee7ec;}div.dokuwiki table.inline{background-color:#fff;border-spacing:0px;border-collapse:collapse;}div.dokuwiki table.inline th{padding:3px;border:1px solid #8cacbb;background-color:#dee7ec;}div.dokuwiki table.inline td{padding:3px;border:1px solid #8cacbb;}div.dokuwiki div.toc{position:absolute;right:0;top:80px;float:right;width:360px;background:transparent url(./tpl/dhtmlx/images/bookmark.gif) no-repeat;font-size:80%;clear:both;}div.dokuwiki div.tocheader{text-align:left;font-weight:bold;padding:3px;font-family:arial;font-size:22px;color:#b5b5b5;margin:30px 0 2px 70px;}#toc__inside a.toc{font-family:verdana;font-size:12px;color:#058cb6 !important;line-height:22px;padding-left:10px;outline:none;}#toc__inside a.toc:hover{border-bottom:1px #058cb6 dashed;text-decoration:none;}div.dokuwiki #toc__inside{text-align:left;padding:5px 0 0 48px;}div.dokuwiki ul.toc{list-style-type:none;list-style-image:none;line-height:1.2em;padding-left:1em;padding-top:10px;margin:0;}div.dokuwiki ul.toc li{background:transparent url(./tpl/dhtmlx/images/toc-arrow.gif) 0 0.6em no-repeat;padding-left:0.4em;}div.dokuwiki ul.toc li.clear{background-image:none;padding-left:0.4em;}div.dokuwiki a.toc:link,div.dokuwiki a.toc:visited{color:#436976;}div.dokuwiki a.toc:hover,div.dokuwiki a.toc:active{color:#000;}div.dokuwiki table.diff{background-color:#fff;width:100%;}div.dokuwiki td.diff-blockheader{font-weight:bold;}div.dokuwiki table.diff th{border-bottom:1px solid #8cacbb;font-size:110%;width:50%;font-weight:normal;text-align:left;}div.dokuwiki table.diff th a{font-weight:bold;}div.dokuwiki table.diff th span.user{color:#000;font-size:80%;}div.dokuwiki table.diff th span.sum{font-size:80%;font-weight:bold;}div.dokuwiki table.diff th.minor{font-style:italic;}div.dokuwiki table.diff td{font-family:monospace;font-size:100%;}div.dokuwiki td.diff-addedline{background-color:#dfd;}div.dokuwiki td.diff-deletedline{background-color:#ffb;}div.dokuwiki td.diff-context{background-color:#f5f5f5;}div.dokuwiki table.diff td.diff-addedline strong,div.dokuwiki table.diff td.diff-deletedline strong{color:red;}div.dokuwiki div.footnotes{clear:both;border-top:1px solid #8cacbb;padding-left:1em;margin-top:1em;}div.dokuwiki div.fn{font-size:90%;}div.dokuwiki a.fn_bot{font-weight:bold;}div.insitu-footnote{font-size:80%;line-height:1.2em;border:1px solid #8cacbb;background-color:#f7f9fa;text-align:left;padding:4px;max-width:40%;}* html .insitu-footnote pre.code,* html .insitu-footnote pre.file{padding-bottom:18px;}div.dokuwiki .search_result{margin-bottom:6px;padding:10px 15px 15px 0;border:dotted 1px #ccc;}div.dokuwiki .search_result:hover{background:url("./tpl/dhtmlx/images/search-rez-bg.png");}div.dokuwiki .search_snippet{color:#ccc;font-size:12px;margin:15px 0 0 22px;}div.search_result a.wikilink1{display:inline-block;background:url("./tpl/dhtmlx/images/search-rezult.gif") no-repeat 0 1px;padding-left:22px;}div.dokuwiki .search_cnt{color:#666;}div.dokuwiki .search_sep{color:#000;}div.dokuwiki .search_hit{color:black;}div.dokuwiki strong.search_hit{font-weight:normal;}div.dokuwiki div.search_quickresult{margin:0 0 15px 0;padding:10px 15px 15px 22px;border:dotted 1px #ccc;background:url("./tpl/dhtmlx/images/search-quick-rezult-bg.gif");}div.search_quickresult h3{font-size:24px !important;font-family:tahoma,arial,helvetica;color:#ccc;padding:10px 0 0 0;}div.dokuwiki div.search_quickresult h3{margin:0 0 1.0em 0;font-size:1em;font-weight:bold;}div.dokuwiki ul.search_quickhits{margin:0;}div.dokuwiki ul.search_quickhits li{list-style:none;}div.dokuwiki ul.search_quickhits a{color:white !important;display:inline-block;background:url("./tpl/dhtmlx/images/search-rezult-dark.gif") no-repeat 0 1px;padding-left:18px;}div.footerinc{text-align:center;}.footerinc a img{opacity:0.5;border:0;}.footerinc a:hover img{opacity:1;}div.dokuwiki div.ajax_qsearch{position:absolute;right:237px;;width:200px;opacity:0.9;display:none;font-size:80%;line-height:1.2em;border:1px solid #8cacbb;background-color:#f7f9fa;text-align:left;padding:4px;}button.toolbutton{background-color:#fff;padding:0px;margin:0 1px 0 0;border:1px solid #8cacbb;cursor:pointer;}html>body button.toolbutton{background:#fff url(./tpl/dhtmlx/images/buttonshadow.png) repeat-x bottom;}div.picker{width:250px;border:1px solid #8cacbb;background-color:#dee7ec;}button.pickerbutton{padding:0px;margin:0 1px 1px 0;border:0;background-color:transparent;font-size:80%;cursor:pointer;}div.dokuwiki div.img_big{float:left;margin-right:0.5em;}div.dokuwiki dl.img_tags{float:left;width:50%;}div.dokuwiki dl.img_tags dt{font-weight:bold;background-color:#dee7ec;}div.dokuwiki dl.img_tags dd{background-color:#f5f5f5;}div.dokuwiki div.imagemeta{color:#666;font-size:70%;line-height:95%;}div.dokuwiki div.imagemeta img.thumb{float:left;margin-right:0.1em;}#dhtmlxlayout{height:54px;width:128px;background:transparent url(./tpl/dhtmlx/images/logo_layout.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxaccordion{height:54px;width:160px;background:transparent url(./tpl/dhtmlx/images/logo_accordion.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtml_tabbar_guide_and_samples{height:54px;width:156px;background:transparent url(./tpl/dhtmlx/images/logo_tabbar.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxwindows{height:54px;width:150px;background:transparent url(./tpl/dhtmlx/images/logo_windows.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxgrid{height:54px;width:120px;background:transparent url(./tpl/dhtmlx/images/logo_grid.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxtree{height:54px;width:120px;background:transparent url(./tpl/dhtmlx/images/logo_tree.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#treegrid_extension{height:54px;width:156px;background:transparent url(./tpl/dhtmlx/images/logo_treegrid.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxfolders{height:54px;width:144px;background:transparent url(./tpl/dhtmlx/images/logo_folders.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxmenu{height:54px;width:170px;background:transparent url(./tpl/dhtmlx/images/logo_menu.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxtoolbar{height:54px;width:170px;background:transparent url(./tpl/dhtmlx/images/logo_toolbar.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtml_combobox_guide_and_samples{height:54px;width:156px;background:transparent url(./tpl/dhtmlx/images/logo_combo.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxcalendar{height:54px;width:156px;background:transparent url(./tpl/dhtmlx/images/logo_calendar.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxcolorpicker{height:54px;width:150px;background:transparent url(./tpl/dhtmlx/images/logo_colorpicker.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxslider{height:54px;width:138px;background:transparent url(./tpl/dhtmlx/images/logo_slider.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxeditor{height:54px;width:129px;background:transparent url(./tpl/dhtmlx/images/logo_editor.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxvault{height:54px;width:128px;background:transparent url(./tpl/dhtmlx/images/logo_vault.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxajax_library_guide_and_samples{height:54px;width:107px;background:transparent url(./tpl/dhtmlx/images/logo_ajax.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxconnector{height:54px;width:160px;background:transparent url(./tpl/dhtmlx/images/logo_connector.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}#dhtmlxscheduler{height:54px;width:160px;background:transparent url(./tpl/dhtmlx/images/logo_scheduler.gif) no-repeat;font-size:0px;color:white;overflow:hidden;display:block;}.backlink{position:relative;border:solid 1px #CCC;float:left;padding:2px 8px 0 5px;height:23px;margin:3px 0 18px 0;}.backlink:hover{background-color:#eaeff4;border-color:#69c;}.backlink a.wikilink1:hover{border-bottom:dotted 1px;text-decoration:none;}.arrow{float:left;background:url("./tpl/dhtmlx/images/arrow.gif") no-repeat;width:8px;height:23px;margin:5px 3px;}-,.last_backlink{padding-bottom:2px;padding-top:0;}#media__manager{height:100%;overflow:hidden;}#media__left{width:30%;border-right:solid 1px #8cacbb;height:100%;overflow:auto;position:absolute;left:0;}#media__right{width:69.7%;height:100%;overflow:auto;position:absolute;right:0;}#media__manager h1{margin:0;padding:0;margin-bottom:0.5em;}#media__tree img{float:left;padding:0.5em 0.3em 0 0;}#media__tree ul{list-style-type:none;list-style-image:none;margin-left:1.5em;}#media__tree li{clear:left;list-style-type:none;list-style-image:none;}*+html #media__tree li,* html #media__tree li{border:1px solid #fff;}#media__opts{padding-left:1em;margin-bottom:0.5em;}#media__opts input{float:left;display:block;margin-top:4px;position:absolute;}*+html #media__opts input,* html #media__opts input{position:static;}#media__opts label{display:block;float:left;margin-left:20px;margin-bottom:4px;}*+html #media__opts label,* html #media__opts label{margin-left:10px;}#media__opts br{clear:left;}#media__content img.load{margin:1em auto;}#media__content #scroll__here{border:1px dashed #8cacbb;}#media__content .odd{background-color:#f7f9fa;padding:0.4em;}#media__content .even{padding:0.4em;}#media__content a.mediafile{margin-right:1.5em;font-weight:bold;}#media__content div.detail{padding:0.3em 0 0.3em 2em;}#media__content div.detail div.thumb{float:left;width:130px;text-align:center;margin-right:0.4em;}#media__content img.btn{vertical-align:text-bottom;}#media__content div.example{color:#666;margin-left:1em;}#media__content div.upload{font-size:90%;padding:0 0.5em 0.5em 0.5em;}#media__content form#dw__upload,#media__content div#dw__flashupload{display:block;border-bottom:solid 1px #8cacbb;padding:0 0.5em 1em 0.5em;}#media__content form#dw__upload fieldset{padding:0;margin:0;border:none;width:auto;}#media__content form#dw__upload p{text-align:left;padding:0.25em 0;margin:0;line-height:1.0em;}#media__content form#dw__upload label.check{float:none;width:auto;margin-left:11.5em;}#media__content form.meta{display:block;padding:0 0 1em 0;}#media__content form.meta label{display:block;width:25%;float:left;font-weight:bold;margin-left:1em;clear:left;}#media__content form.meta .edit{font:100% "Lucida Grande",Verdana,Lucida,Helvetica,Arial,sans-serif;float:left;width:70%;padding-right:0;padding-left:0.2em;margin:2px;}#media__content form.meta textarea.edit{height:8em;}#media__content form.meta div.metafield{clear:left;}#media__content form.meta div.buttons{clear:left;margin-left:20%;padding-left:1em;} + +div.dokuwiki form.button{ display:none; } \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/accordion.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/accordion.gif new file mode 100755 index 0000000000000000000000000000000000000000..e456fffb4441b772fcf722a700d176c12db2b951 GIT binary patch literal 394 zcmV;50d@XINk%w1VHN-u0M$MKdwYB9>+71v&~?k|)6>&syxX?6w)y$_|Ns9zp~WXB zC+PC@-rnBe?eO{h{POtu-72h z%;M+u`TDce+~Mx==JE5q+2H#8{rvs@uG z>h0j*;OX-9#NOn=+~Vr<^}pNU_xk(L<>~$Y{`UI&*68f5(b>n}<=E-%)#vN;`1$|; z{{R30A^8LW002G!EC2ui02Tli000K3K%WpmEE?Rxv$du3;5US9|ZHX;}u4-*m#5DgR+a!UvT zn3|No!X>B7aui;cm0#^>^kk&(IK?}CYmdw_x0+1ZB6}I~)X1(3Fy1RPD;NJ1~lF{bt>+FMwiN)sfm7ANO zrKQ-~*@nyH==J&1>-CnJn|gqO&Ck#J`ueuIy88P0&Ck%?@%O>R#nJ5b>g?;e;_vbK z`~Uy{A^8LW002J#EC2ui02Tli000J%z@KnPEE>m|Dg#aDF))ZSq1bE|A+QPq zhQvr>(x4m@%W9V!_!wSrf)x6^A`VfH5<3k9a93J`0We)sMF9w2h(AzE07#5R0FjMD z01B3u00$tIprN8f01XEUJOnN@Iwc+(ED#qM3!6WsH5@4f88{C%9W62yDl@f305=7q R%%GIZm!!7Q)6tDV06SOc%K88R literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/arrow.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..00f11449511728eb8bc0c56794913e860dadcab4 GIT binary patch literal 185 zcmZ?wbhEHbE$2Rx1{@hc4T#TQ^xEv##>geao)-e)G2oCY7(c zbk}YAny}@2BBw6(n7OWG!-0+syBjY(|Ns9#0}(*+CkrD3gD`^*NG-@t23E5NDt#%L z^DAgdZ2H)}~ig`|k@d GSOWmhy**k0 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/bullet.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/bullet.gif new file mode 100755 index 0000000000000000000000000000000000000000..cf1706e03620fec434c13bc80e4fbe2cf71f05c6 GIT binary patch literal 51 zcmZ?wbhEHbWMg1sXkcJq?b-JK|9{1wEQ|~cj0`#qKmd|qVB&I-W6Q4Ol`rNHVXy`O DGw2E* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/calendar.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/calendar.gif new file mode 100755 index 0000000000000000000000000000000000000000..2a8bc0e63c4ffc2e7a8aaeec635f97477a7cd9d8 GIT binary patch literal 207 zcmV;=05JbYNk%w1VHN-u0J9GO|NsAMYinS{=+My6)z#IZp`nI`hIMsyZfI9DmNR_l`%^+MdlfPnC+c3TsZyYpNOu#6%`c|CQMkncI~=# z>l{m0%$+;e;l#_{%{LP!9b-8Bh+*|9hOJlP&%9ySbEj_ov4q}24xJX@vryZ0+8WTx0Eg`4^s_!c;)W@LI)6{QAO`Gq7`WhYyvDB0U7*i=|m zCgqow*eU^C3h_d20o>TUVm+{T^pf*)^(zt!^bPe4Kwg3=^!3HBG&dKny0|1L z72#g21{a4^7NqJ2r55Lx7A2F<7;)ua#$BaYaU{s}FRHJ}6p|q8TOxOgkVZJkbI<@MNEw2Tbclz(mdX|KHy~ zzkmJw@%`J^FP}es{P6zW+c&RYy?pWf+0!SFA3c0<|K8m@w{P9NasArWE0-@_ym0>9 z*)yk4ojh^;*wG`04;?(Pf8X9cyLau}v3=XtEt@xO+^~M#+BK_Jtz5Bu+0rG87cE>c zf8N|VvuDkmF@4(9DU&BnoY3Fb+tc0E+0owC+S1(A*ic_rTT@+CSy5hAT2fq8SdgEW zo0FZDnUS8Bnv$H9m=GTq8xtKB84(^98WJ277~t>c>*MX^>EZ6?>f-F==wNSWYh!I? zX<=?=YGP~z%usr|I@(&A8tQ7QD#}WV3i5KYGSX6#65?W_BEmv~0{ncuJltHI9PDhY zEX+)d3=E1tS%72;gAS<30hQJa?57%1nwnc$+uA!iySjUNCA$5iEFF7WIU}q&+xoi# zG~JSVg-o;sQ^LQ||{WIR(e!qgqwY*T_0{p3$6wPCNIxOt;gHm_}g?Llg^o)#oQWb?C zGp5jSLLd01&HeC>*$r+@$bd+YVd(J_pMU+*ntt~5ojc36Z~yi8@6zqt zk6pk1>f5)a5C5Nk@L7B)TMnjFoN+#@aD>n1rx)aLXx(J=6<8%FavXkmIw!fz$R9%ZU$jJ0fQ7(hXw;Hrw&Gk$*tn5sths) zB1cmhWaKg~urNII_M6*QB@wYJMCB}}aND{mTU;1?IRrA&rl@2*VC9q1Q+Z;wf}xR_ Nog+g>ur1SIhh=_>O)6?zk z?OR)0Rjt#o+3RX*YGPtytE;Pfdwb;M*<{QdCw`|9=j z0EE4N!QO_&;Q#;sA^8LW0018VEC2ui02Tli000Hu;3tk`X`X1RuBAdGLo5)IIthpq zA(mkTkq2U+Fi9eTf&##70uBYk19Bh@oy-aV<2)E5MUjJWP)wMcMk51gXqk{m^&@aR z9E-ws1ITn33=K^N5F-i_Pzz^F86JRwOa~7w77G^?6ipRckQWOi2@Vh!1p!G;3>*wh z79$A@0ssjJ1Ox%GTdAuPpCT3mOacZ>2?0(G8UO%L1p*KV3lZZg62bup0U#u(!J?qSg9t^0002A2S%_%> literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/combo.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/combo.gif new file mode 100755 index 0000000000000000000000000000000000000000..8dba9afe5b5a15d97a904e4cb7e9076932a82bff GIT binary patch literal 186 zcmZ?wbhEHb6k`x$*v!fB|NsB&?Ck35>b%mjt5>gHxNsri$cxj@KBOFd4wPcR0E$0Z z7#SEi8FWB0ATt#uVQ3V;0gF=x)4vewRJ zmmlWVG=Bg7J@wFotn8etSFdJf=VYxp`0LlN+B45GGc(gxAN=&`(}M>O)~{bbZ{EBY zFJ5$XbeubP?$)halO|1i{``4;ef{#~%iG%8+S}Xr@85s)*s(>67Cn3REH5u_-@bj{ zzI|J|bm`~MpJ&gWy=&L5sZ*y;o;uCBGM?a!Y-zkmO3X>HxHW5>Gn>u=w_eevSO znwpxvzP@G4mi6`bU%Pg#r>Cc@yZhn8hhM&Yxp)8m{Q2`2E?jv0`0?p8W^{ISO_(_G z&6_v7cJFR(Zk|4U`q86D&zw2a)YSC<|9^(T0Th3-FfuR%G3bDt1Bw#{_8SdBO-)P^ z9L*h_UCc5(tddG(XD6pBYog}qC(6itxJA#%P2Njh_hM&&iguH`0n@Dx8>@~$r^Az* zyp8QUlr1ODWwo_%)G=(9^L15t-4v9X)U?2@i9z3GNyR0_BYgfrPQ6;CUP0{A=4~8G zg_@U_g{@EGWok^Ba3pGZfn~E<#|cgsg=Sab1x_qVQ_nBD_}heU;(<_G*11b0N&C-!w6v0vl7u5KR;^mqGh^x?3nK#qH-ipH3}glaOH{#0&((V^UZ35~%B@lL_=O<%s;mbhI{ACHb|>6t zn$6bq@IQxR1H%H}sHVdSJ9*L^SmsT#^x)`p<19M0C2tXvYogCSG1JB^zn)G!>9^8i TRWR4YH){QL=kL2PFjxZsgXu@f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/dataview.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/dataview.gif new file mode 100755 index 0000000000000000000000000000000000000000..43e2284ca41972eb7237ad28ca68019bacfbfa83 GIT binary patch literal 222 zcmZ?wbhEHb6k`x$*v!FDU0wa=&70S+UsqLCm7aN3dK!pcmYjb1|NnmmY(ViR3nK#q z2ZIhs5@ZGgOSiyD&((7knl0UqNvW|kZeU!RptNGwrk7olKCR#rdT=de1MimW2c9MG z>@vQp#{Qwf&gVs{*HxX!g>#;-+B`SoL{noy#5u1WDw6^PX1g!RUuluie?KnbmCFn1 zb+W$xF^wT@;$aeU7DCZI23m}nwnoLSRm$oG9#hh6C(ZDf-Q!$bG}CQa^XkCx_BKHV FYXJXcR?GkZ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/editor.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/editor.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea3c1211957a096a080c1076eba86eaf644af888 GIT binary patch literal 280 zcmZ?wbhEHb6k`x$I3mjM|NsB0s;a!wvggmA&%g76xnfafX6DzgUk@HUxPSlt;`1M} z58ll_cqeklP1QNaZ~popvEydM_M6#>|<@;5%zk~)oio3ygi)nD*pTyo6ao2&c?@FBWh4qS>C|L$CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/file_link.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/file_link.gif new file mode 100755 index 0000000000000000000000000000000000000000..47f7e849886319b6c683ffca03f54cafd96541b9 GIT binary patch literal 1109 zcmd^;k5k%p06;$o)-+QxbL?g;t*OneW^)U)>o7Z~lT!-LD`$3VwV`EmJ6*=nh3Fd5 zW>cGM4AUBtVkT@;JUJUE0-}O|0~K}1M9~2|0YUlot^FOn|KQ!dcRW8AgFO`w;(=EH zCKneW2x@F^pRriR^!kT3+nm+9>~!|aWDizXC0gyB(NRu+|KRxefLyLL8g(lxqRGj% z%}xElN(%&otllxMsjG&gq))iH7SY9ac>?hYp}JgS zHV;@;a~2Dg$9ub`*J^Y8HV+x?+istavsAo~NDM)nn9};Q-K!~|-nu#o(nvjI_I`;& zxd(sliQC>O6h<8?V@VvLP-u8+iE!PBc(d*yM7zo3f!EIPC6bg%eXB0oAA~>(xqn&$ zlBnOea=*F5gC&0@pPiK%41eFhPZN6R?cu*9D$ZX47WQb}zO(yF>E>$yB%Fj(>DmzP8o_Ec{?{xV&$Dz!lH^r~Uq zqS|Ca6*W2i5WezP!RV;R=iBgjvZ$iN7ezUZ2JkB7XhkkE3E(n~CNXX-NWYY^kYH1f=CZWfapqf__rFHP#XlgA6iHMGjjYQ=g7H0$GUaay* z=Pr%{5%n2m8TAv58J-Y#r50-fFjn%1cofLaQ8Yb^pOzvcU@$frX~!YM;8V}vI#7)& z$%uG8W-mDxsS(%d!gp8mn7F%=_Sn>W7ruilo@qHoicaF=%-M6;Bi9f&usQD5BlKA2e?ibS4$!G)uVKsPpy7t(bHZ4F&^Q{{rUvoV!{Q2|e@87?lIB{b4qYrQ2zTLBDPhnx< zg$ozfUw*J<%a)HHKOR4R+;7pzZQHhe`SRt^p+mbKzQ2F}{<(AK_V3^S`0?YSqN45F zx9{4u>-Fo`Z{EDQcJ11xO`F0u-#>EX$d4aCwr<_(Gw-P9wA~Zd?b!9;-PyBe4<0+()_~=|&8BaS2(FIH*?#H?v%tc*|wYjK%A@ol4G%eJPPV^BBcgq65=+&DzpYm-ze8cByMy?(swj{fk%^ z%j0e$>AoxW^-Yz))n<_#2i`Je`8y@p{A1gy(-@UowkSTq#H{=A4O7jjCEs8C7G|&p E0GCHUSpWb4 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/gantt.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/gantt.gif new file mode 100755 index 0000000000000000000000000000000000000000..343f4d5b1f867a8a534e84378bfadb70681d24f9 GIT binary patch literal 1010 zcmZ?wbhEHb6k`x$_|Cxa9}Eif^Ao!lfBO9S`HL4%pFjWb@#C*wzkdJz{o>`zjw82M zuUhrz&z~pHo-KUd)!5KbTU|YE%9Qix&K*2(;NAQ8pFVxcSseBI&!56o@!!9HZ*FQj zaq?tSL&J+#uTGyn{r3I)mq5muGx^J7pTB(h?fduKCDA8OoqGS_L*CMu{ADpktK$n+ z#ucoH&07|8>g37dH3>zl6W)FJuwniB$4{QTe*OCFnKLI(o=R9#oUpp+!-se4*Kc_8 zLROZq{$f(p|&&f@L!!5BmiJktHX% sSQez+J2P{cSEHzFj?CP^7WWn|`Bh>9g^vzi-;jKIp6~9mgAEMU0J16QEdT%j literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/grid.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/grid.gif new file mode 100755 index 0000000000000000000000000000000000000000..db0832caf1a199ed7310ff87351a80092fb89cce GIT binary patch literal 191 zcmZ?wbhEHb6k`x$*v!F@ot^#v|NrXh>VzXNE?l^9_3G7>qt8!2`v4SVzy=h5vM@3* za4_hABtd2{u;d7w^jy8y;{pPA`FU$7ax%l$)jyrFTJo@0b^5Wd{&%)MTx%>WG z|H()FCm(OW^Y-G4&v)K^OW1U+>G1vLL-+sx|G(<$%e(Ks9ew;^&V^?aPCoki=Wp2B z%Vm3SXK%mh4>I9t*XVpI2$JAxdB=SJ-A=BNyjop3X4ssmk zZw)xQ#6L~3;#QL2;pS1|{`K2tDYHVO3rn-QpGU`njD-jIyW)5xJ|sRm!Yi$^)LUdh zGK1s-3l;&%1nC9|RRsru8A48clcj`?h Kv8OZy7_0&8vgB9* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/menu.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..2fbd60671c8ac23b0b3b5a94a2dd03135738f70f GIT binary patch literal 270 zcmZ?wbhEHb6k`x$I3mDMU0q#LQc`;Q)xCT79z1yP|NsBAw6xc+UvJyC?egWzKY#vw z_Uzf`&!2DJys56PZoBX(PyqueK=CIFBLjl~gAPa&$W8{M#X4~h23FJ7rh^tb9BxkvFJyeFb7W2QS{o$nzrdkm4inD<1BnT}V&V;K9}{AD zHZaULYjjoM;bO1#-~YSLs3NDixm=5(qqD1{o!PX%pP!+ZZ^FdMnhY${rnh&`?`2-J fc<~I4Oui*cmZ`IGtXj&Z%{ISNXZsFyMFwjC*PUSv literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/none.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/none.gif new file mode 100755 index 0000000000000000000000000000000000000000..f8a866519c08359ee3fb92e08727506d639dd798 GIT binary patch literal 45 ucmZ?wbhEHbWMmLyXkcJ?`0PIe1B2pE7Dgb&paUX6G7L;CE&VG47_0%?Hwd)= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/old.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/old.gif new file mode 100755 index 0000000000000000000000000000000000000000..680e116e2badf6500bdc6b7338898b3938e45451 GIT binary patch literal 388 zcmZ?wbhEHb6k`x$xT?wU{qNtefBu|#@L>9~WmA?eJ#qW?{)-oPojJ2?$Bu2sk8e11 zXwBZek3W1kb?460ckfPIy?W{X{rhj*2XEg# zeE06q`SXV_TsVH^%K!iWk6pfe_tmQ>A3xrC`SRN1#~1G2J$3i)`8#(mKX`EJ`t^s; z{xeVv6o0ZXGB9W|=zvTD`H6vT;ejay9y(I}CzceQ%n{;lZQBx3z@^rhb1g7dj76j& zLgs;(jttfSNT8M= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/pdf.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/pdf.gif new file mode 100755 index 0000000000000000000000000000000000000000..e315235a26bcb6ad08a840b4a1bf79e32e92f263 GIT binary patch literal 646 zcmV;10(t#MNk%w1VHN-u0OoxF0Xa>MpP$U#-QMf#)aB*%`T6|*{&Uy+q_wrR#>TkG z$>H+y;_mJF{QR-Q!=|^l3vZL1sj2n(`q}8|=kW0T{{H9j@aORH+3D%l=jQSD_Q286 zE|RwF^78!s{YR_MuD`!jxZJzU%*xx_DUGqc&dx27wb|(CnX0Ps_x6n7|N8v=zV840 z{{7i-98kJ{`=H>xqiQ@C~@A>%>cAClB+5usNciaCZiLGD5 z=ich;0Az^y{QC%OkUO8lJ)yFH?9@FIq)_5A$*|Nj6000000A^8LW004aeEC2ui z02Tli000N$fPI34goTEOh>41ehCBj~kdHfzBYbQ_Icp0GStA{YRYG`YQzj&Fdp86+ zJ#L?dAtW+w5Jot3TsCP4ygr8?NKZ8oL27SF00hbeN{4m;(9zKuO+Oi8iW_A|7$+PP zCleTX8;T_ZR|5lRFY0pxC5j?0V^UsZdR+`e3?hmO6f97{5=PDe3l}aZP?P}3mLgUT z9N=IgN{9rC9B6>DL literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/scheduler.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/scheduler.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea6c9aadd14a0d4704643e63be83a7fe367c0c74 GIT binary patch literal 432 zcmZ?wbhEHb6k`x$xT?u;`^CEh2M)}hJ!j6z`?V|fRoB%1|NsBkqxY9yeBQEk+ssY- zfByOFx$tb(rfYhWk1jg@)N1C*X(u0rF24}8?ELl}JMP`Pw|)C|#+sd5w{G=Wd@gCi za>vfK{!7lO_aD;f-u>X=L$>-|j&n}NtUNE?va4{(UY6RO?De~irX1})cpGRD1I0k` zCkrD3gC>Ix$Rv=T7}(Apm{KrKE~rBG9cXRhzF4U+^oxUOZ3X?uiB$AG<#Y* z^ZW%1ndi=!FnbEa66gL|D^{#>l9E$Z*H}Jl11}FdH#?8wq6Mo2CE1R#u?i`z-O;Pb z$8q8khwPcD=hV2_(%HBbuB|+G;TY>N4&~yP#TC;v1!ayO6H-b0$|xb?!Yj%oHu4;(mf`t<2nUw>}iym{ZgeLsKx{P^)B&>{wE1I3>#j0_Aa3_2i#L4IOj z>u{J<;GrYce_~0|$sDWs=ME=$t&LjF{?PHj+p7Kd-Y7Wev2$c>nQ0R^fvsVOjDtcw zNAXVSxEH@)^YF9O)iLDBGO%@ZH#Bv3Gw`a2RTlPEOyy8fR1(Qf=PAt=5mr!to>8ZJuq2xL~s5fsi}K3<{Y^5{_F9l z?{B{SB0po_x8Hw`JbBl4;?9O!FGMEq`v3nw18sofPZmZ71|nTh(6hjyk zxO})38A6p9nPeD5dCOdxnW9-Z`kAVPrCp>17{u5-C$MtImH09WxvU6Uy=LvY^#P6y F)&NZ&Z)yMl literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/tabbar.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/icons/tabbar.gif new file mode 100755 index 0000000000000000000000000000000000000000..8a35665af49d9636803bc47da1f12af0cb44b98b GIT binary patch literal 258 zcmZ?wbhEHb6k`x$I3mFC|NsB&?CiYKvV+Z^fkA*l2c!vPCj)D}f=XXX=Ddtm>yjSq)0bu_ ziDh?NXa2iE=x%Ts~%hM|b%5rOK8Jc(`@4kFH+58mNqc6rlK%g^__lfI$bO31lY&Yk`7FUrOe@j8*I2aP2A3 zIW6EI;JogAP23*y)7xY4gmPGxPHD{{R1M|C`Eu8;UA?`%YaVl34H5Lw0G95@}9tPVe0mo kGj<-$xOi#Tl3nL7u0HW#-6M`-0cM|lqMyuFc@ zm&@kxp{AzH&(FZa!=a_7t+BFzhKHxCtcsA3sjaS+nwyD?q;k3Z3=p{}&eA&o1lX*0TjK=|1Zh+N@PYvwkD|k%ToMf&*&G(j z%T!E@^o}`cXxMW#piBr zZs6eHW@cvX?d_MBmwkPG{QUfdg@yC;^V-_lfPjF4f`XKklU0b z-Ve#VZa;h+0~cp}IRy$L76@^KI0YCad5kv&3?zUT4VfGZoD&lo1p^%(5haNSs2K{Y RE*KjO45ciyw6!cD06S>xdbR)n literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/bz2.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/bz2.png new file mode 100755 index 0000000000000000000000000000000000000000..d48cae038410aa43e668acdb49b9dddeb98ea07e GIT binary patch literal 720 zcmV;>0x$iEP)a##n;IU4+D5gv4Qp!9-mArnJx|x|~f||Udm~yV2N`;-ih@ilwo{)>8!ndba zu%&pBr^c78$+D`Jow3cMw$Zn=t;xD}sk_v}yPvMU*RR0Xv%}iV%$eNFebCCc%*@Q- z(U0WKt?ba8+1AYJ*thA|#p>Ow=iB7g<@)I2+Sum%+2;G&=la^```qaJ-0Az=>HOX4 z``+pM-s=0_>ipm8``_yP-|PI~>-*sA{NU{T;q3e2?ELoaz~b%vBK{p9Za zL;#2d9Y_EG z010qNS#tmY3labT3lag+-G2N4000McNliru)&>v@I~4ubBMATi0QpHoK~xyiEzVh2 zf>0C%;Dce4&1K{*wS-2aft!R;Igo~B)CC)99!ZPy|KGYS+mGMcd#w!su(iIrvb31X z5(3?9w%gxdpC4}|{Fe<%jn4b)3kkb2X3)T;htE$OxUB6M23=6MRrQfXf#psZ_=;XM zryuTaTOI-B$Mt>c<}>2`&6Rh-8^3{R=4D9|uP+&MWa##n;IU4+D5gv3~f)M1FjVu{0Lio$1$!D)=ag@}w|jn#>XiENI*ZjQflkiT+~ zzm1NMj*pOblf8zKpn8?NdzHLxm)d@px{#Hdber6Qn!I?P+=ZRKnVOo4owbymtB9b$ ze4*WZq28LEqMe8`%lufNx?z}Tt5>cGIjzrn<_!`iLH>#)b`u*dAO$n3_(#)Y;P2+tt<8*4Eb4*WA+L`r+Z>)Z_ZripsC{NwHX=fZ{qObt@b>=k_Wtqr{qpzz^Y{Mr`2PR@ z|4e?+gIL;#2d9Y_EG010qNS#tmY3labT3lag+ z-G2N4000McNliru)&>v@Ixkhn`)mLJ0MbcBK~xyiV_;xl2y}I@Fw)VKmy%+D0N+Xo zkg9@;cvqCi>Z%8nOI1Nd+)E48l4F$0fC3N^my$&1Oa&`DF)1mCF^)rV$eE z!D|8r*%^Wi401uCeyWy*`5^g>bbbZ~NhdEEYls4q^fWF823xjjQBp@pxAu1%m&B@Nf%*Y4;Pl`D#hbL3R00000NkvXXu0mjfHfxD6 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/deb.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/deb.png new file mode 100755 index 0000000000000000000000000000000000000000..9229d878382ccdfb62f76d448bd16c86a4bfee05 GIT binary patch literal 716 zcmV;-0yF)IP)vQgj=yq{zjBekc9Xq&mAiYDyndIu+Ie__n!JUbzKEc}i=x89l9J1kg^{Pm zlBmX&tH_tE$(pXqov_WFvCW~h&ZD-`q_)w!w5_ST)ZD74!?>fbz}Vohud~D2#=*Gc zw6x30$=T4u-QC^PHOX4``zjM-s$_^>igd6{NL*Q-|PJ9>FMC>`{3*R;p_b1?EK;E`{C^T z;_Uq5?fm2I{N(NY<9?)~NN{N?Wb^X=m1@BHWR{OIug>+=2f@$BvM{qFSr@Aduf z_5Sen{_ytw^7sAo_x|+w{`~y>|NsA*008c73$g$J00DGTPE!Ct=GbNc0004EOGiWi zhy@);00009a7bBm000XT000XT0n*)m`~Uy|2XskIMF-Xf5DPmsvA#1`0002*NklDYHpjY-AWn1%n2s zVrsq&lX*;dc(5c$g}Nz=kqonLRCs8BuLMv1*&?rzQwb^;&)c@s`018+B1XGeP*UXXxX yu)hybyQ71xwIvrwKvqghLR?f>ke`Q}g98B1buA&z4-Omv0000P)f(Sf_211)CK5Yq0vLQ^GI$D@ATed1V+0KxVW$X}CmcxlL-PLTQg_N#d(KsW$X|WKSbou2fyP*Z#bViq&k6z;2Gea*)4rk-v76y?2q-dX>9-mArnJx_p<|f||UAoxX#d+K8aQfS%@y zqQZ=#!i%Kck*CIqrRkTf$&jwrldI;PvCX5l(W$%Ct-8>!yx*_D*s8wqv%}iA$n?q5 z;?~^i(&GBmipsC{NwHX+=2Z^7`%b{qOYs@b>=l_x|+w{`L9(_xk?%`~Uy{{{b?1G1h1_00001bW%=J06^y0 zW&i*H0b)x>L;#2d9Y_EG010qNS#tmY3labT3lag+-G2N4000McNliru)&>v^01co) za&!Oy0N_bPK~xyiJ&xB_!axu}hh<%wMq@!N*dQn%s}x1t*rkOQAczG}hyVWvGNRtM zx%Zrz0RVWuyS=%-y2wfia~{9HJ}2YRheR@_St^_vk@c0}yF@Z3{vuvo;hNG@E?SLR zdQl7|0R=0!X=&DSOuP)7eosOg)7pct=&x{^yAllC(biaC0lA}8*FJ>})cs|~?$PUZ zyOV-d^n~8nA|mT4)oGu=(%;#s+uN-K1ceZsb1$3PO0}9t^!nw`e(KG}0g1fRS92Qm tJrddfUaxJDIL~BK$>aFp{_b`-JOfbNG^sL9V3Ys=002ovPDHLkV1nM`R&M|R literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/file.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/file.png new file mode 100755 index 0000000000000000000000000000000000000000..817014fa7363a3fc5b91f6a9abb9fdc9e392ade7 GIT binary patch literal 720 zcmWmAeJs>*90%~YDh(}n8p7$;SMxM`Tj-lkN{C7JW}Gk*1YM)ARnOg;u7aBG!rE^|b=?o@d-*T=OB)Bv8V4(yq?OG>k6VUnT8C@fWOd@v z`uAh??PCp}#$R?!yy}=}{yO=(YwAt+Z*lL;yMFmc$?VkX&NQTi&>1BvSMJDF=pRUp z&Z>82)#zU}I=2RaISo3e0rMJkUIP|1=z(OOBQ0P$w zOaoXkpeqKj3L7JYtr~%H52iE$r3q7+fXalaO+dX4VQcGPZ5`9V#*AsqnAVKxU~T~2 z2Bx!MdJATNHX+=&i5WL>6U;5#w1t_r@O5Y#GecHspMIE1NU4M9pT&iFyP>r%SgI~AWrUkMff#e2;h>KAALT8IPKu(Z0mim zvswjL>S%g6`{3ji4u=zWDM3{A#O;9R{tO=SS)phwn$sU2aBtyf-%L+qMrMEDII`(Y z$4-TW`3DjL5b}i)nJk7WtRUMFL_BUnay&ODCL@k|q{AT!A?QYINK}D0%i~O#Pq2u`f7IIZwn@<5&@1+IV$kFh}3k zU{`fxU36w>xmZMmZDgWmN04t+uW3tFfXJ$BOjm)yg?VsUfyP*Z#gcV*U4+C-q)J|d z#DaU4e1V9yZ&RdqUSWvCVu{0Lio$1$!H0&0uzOZ%jKPbCj%<#=w|HxAj=#8iWO9(d za*@Beeq?r&y^@ZMf}Lu)fpB`2yNi#odzHMci)+q*T7H+h#Dr(ef?TzYbb^|^t&oDP zk$%65c;bCvp_Q4_hhK%AzS4+Y(}`fkkZHn_X`P&-tCpRmnV!#(V#AYj*o8NwD!-BxIs;Rrwu)D>oyw&WkdF-!xtH9K* zzSrimg0H~X)wiv$#MraL+QP|`?zn`v%H8X~lJCBa?ZJ@V#;57Up76w#`NN3d%B{W9 z=g`xx;>)b^$e8oWoW|DT@6Mpp)6>_}(e%%v%-ZqD-tzX^vDD=H?c=`D=KI#<`uE_t z*5&%v<@?v=``G3B*yj7$=KI;_``YLF+UNV*=lk~M!QANk-01w=>HFO2{N3sM-s$_^ z>igg8{OalH;OqS0?EK;E`{C^T`s&5v?fl~I_v7vS?C?)~uX?DFyS?eqQY^!)4f z{_XVs?)3fd^!@Mk{_yqw@b>-j_Wk|%*YfxM^7sDp_x|+w{{R2~W>QP3VV9Z!0004W zQchC9dt!lbVF}#ZDnqB07G(RVRU6=Aa`kWXdqN*WgtgMO;GP-C2jx! z0Rl-xK~xyiV_;xl$V-k53-WQd(${Bzfb3nnc5dIYX@mZ5s7U6n9a}eVT)#$tH&i5b zbxv?x)7o`F0f>l$fr)NKyx%f?5MW?fWftwsBNJ$D=-;w(`BI>OriZYXQ-TW%hiCnY zrHk|#VidUfqtXhBOKOYk7cX9*#h|2T9g&_@-jEnsCbw|jTr~z!OD-{6R?~bz4Wod$ zb7mxqDhDQ^t(x zlPB~^fE=c6=gTfqHGS&jiTyo7Ac2q+*TT-}QzlO6?P})*2^j0>sHrH*N{S2cadH9x Xn4(mS6?pR-00000NkvXXu0mjf`9?Xd literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/gz.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/gz.png new file mode 100755 index 0000000000000000000000000000000000000000..2426bd169c0268c06f3d41aaad94fddcba25e72f GIT binary patch literal 716 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 Xn4(mS6?pR-00000NkvXXu0mjf0{}U* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/jpg.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/jpg.png new file mode 100755 index 0000000000000000000000000000000000000000..1fb6cc1fbfcb8d41204d556ded701b69478142c0 GIT binary patch literal 1001 zcmV}3k zU{`fxU36w>xmZMmZDgWmN04t+uW3tFfXJ$BOjm)yg?VsUfyP*Z#gcV*U4+C-q)J|d z#DaU4e1V9yZ&RdqUSWvCVu{0Lio$1$!H0&0uzOZ%jKPbCj%<#=w|HxAj=#8iWO9(d za*@Beeq?r&y^@ZMf}Lu)fpB`2yNi#odzHMci)+q*T7H+h#Dr(ef?TzYbb^|^t&oDP zk$%65c;bCvp_Q4_hhK%AzS4+Y(}`fkkZHn_X`P&-tCpRmnV!#(V#AYj*o8NwD!-BxIs;Rrwu)D>oyw&WkdF-!xtH9K* zzSrimg0H~X)wiv$#MraL+QP|`?zn`v%H8X~lJCBa?ZJ@V#;57Up76w#`NN3d%B{W9 z=g`xx;>)b^$e8oWoW|DT@6Mpp)6>_}(e%%v%-ZqD-tzX^vDD=H?c=`D=KI#<`uE_t z*5&%v<@?v=``G3B*yj7$=KI;_``YLF+UNV*=lk~M!QANk-01w=>HFO2{N3sM-s$_^ z>igg8{OalH;OqS0?EK;E`{C^T`s&5v?fl~I_v7vS?C?)~uX?DFyS?eqQY^!)4f z{_XVs?)3fd^!@Mk{_yqw@b>-j_Wk|%*YfxM^7sDp_x|+w{{R2~W>QP3VV9Z!0004W zQchCl$fr)NKyx%f?5MW?fWftwsBNJ$D=-;w(`BI>OriZYXQ-TW%hiCnY zrHk|#VidUfqtXhBOKOYk7cX9*#h|2T9g&_@-jEnsCbw|jTr~z!OD-{6R?~bz4Wod$ zb7mxqDhDQ^t(x zlPB~^fE=c6=gTfqHGS&jiTyo7Ac2q+*TT-}QzlO6?P})*2^j0>sHrH*N{S2cadH9x Xn4(mS6?pR-00000NkvXXu0mjfNl`f? literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odc.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odc.png new file mode 100755 index 0000000000000000000000000000000000000000..47f65c84d34cbb0792340815a9bb1b19dabb337f GIT binary patch literal 749 zcmVa z##n;ItXI=rgv4Hi#I0P^u3XfwT-0HR!(xfUWs1UQi@|A(!EBDeZjQgla%XaozjBek zc9Xq&mAiYDyndIu)_ZM&n!M_JR_c6J>wH#)oxX^mz>A{7jH1Gzprntb#P@?=`h;GQ zr^b?~#+9qcm#oRlt4o=!%ABywow3cbva+ML(cQors!`jZm&;Qc^!OGqL)Bw!P%+AX5)XekS-GO^4QVR;`-F%`qt$7>HFa7{QmTK|MYqP z^>+XDc;W2)|Mqv|?fm8L{O0fc|MIHn@cruX{qgbf>+=2W^ZoDi{pR`q@b>=n`2O|z z{`dO+`TPI>|Nj600DM*RZ~y=R0d!JMQvg8b*k%9#00Cl4M??UK1szBL000SaNLh0L z01FZT01FZU(%pXi00007bV*G`2i67<3pyq&8$-wd008MpL_t&-(_>&@VDNRcv#~JM z*Hu?%fB?^$>Z-~FPNq6GsE8|&AH-P4o={s05pk?a@L{YoEK#q8h(xk6*45SVmlUak z00V;|V;u_{D|2yCVSZk2wmO3kBU@xeS!oH7U*PSPrp~}>%U})SmwNvQgj=yq{zjBekc9Xq&mAiYDyoim^ewVs}n!JUbzKEc}k(t(uqQZ=#!jzoXprE9c zp4pG3#F3}QlBmX+q1lzI$d|0iny$;8u+5#Z&7`g1rmo%zSpn7 z*ucQRv%}iF#Oc1o>B7nD%*@Qj&hF0E@z>Ya&e-$R-1XGp_toI|)a3fvH6O3``+sN-|G9{ z>ipm9{NU^S;OzY2?EB&D{Nn8U;_Uq6?E2#E{NwHWHM{N?Wb&@VDNBuva>cf)YH*n zfB?6ip6<>_A(lRVsEBJ%SBDQ{pI~HfFGR$pE7F~@&!knS7b4=%&)C=3C)(Pm0|E>T zCX9VN{Jb13jrE0rp+!0j?u`8Y?QN}14Yj_^?3TGY47`pEwr#DAb=6hc!g+bwnjk}M zn!V&?y-Nj*bF$JkKmu0vo-zU=sjLC%X~}9J0gIZ7az8c)?(~$z1Qn2gS!G#K0UwuG zQer}!5=g+Pq&Pp@fXO~FJ|;>5B%oiEmz5F385|!Q9WD(L(96zDOGz}1jfn^gkpKzk lYH4Yxt12tXOG%200{~+FJ`R%|{4)Rm002ovPDHLkV1jA#znuU8 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odg.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/odg.png new file mode 100755 index 0000000000000000000000000000000000000000..434f18262f86ef2801845d908234504f9ce868a2 GIT binary patch literal 788 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/png.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/png.png new file mode 100755 index 0000000000000000000000000000000000000000..f0b5b00eeed41f8e1b91a62f387974e0fa55bb8d GIT binary patch literal 1001 zcmV}3k zU{`fxU36w>xmZMmZDgWmN04t+uW3tFfXJ$BOjm)yg?VsUfyP*Z#gcV*U4+C-q)J|d z#DaU4e1V9yZ&RdqUSWvCVu{0Lio$1$!H0&0uzOZ%jKPbCj%<#=w|HxAj=#8iWO9(d za*@Beeq?r&y^@ZMf}Lu)fpB`2yNi#odzHMci)+q*T7H+h#Dr(ef?TzYbb^|^t&oDP zk$%65c;bCvp_Q4_hhK%AzS4+Y(}`fkkZHn_X`P&-tCpRmnV!#(V#AYj*o8NwD!-BxIs;Rrwu)D>oyw&WkdF-!xtH9K* zzSrimg0H~X)wiv$#MraL+QP|`?zn`v%H8X~lJCBa?ZJ@V#;57Up76w#`NN3d%B{W9 z=g`xx;>)b^$e8oWoW|DT@6Mpp)6>_}(e%%v%-ZqD-tzX^vDD=H?c=`D=KI#<`uE_t z*5&%v<@?v=``G3B*yj7$=KI;_``YLF+UNV*=lk~M!QANk-01w=>HFO2{N3sM-s$_^ z>igg8{OalH;OqS0?EK;E`{C^T`s&5v?fl~I_v7vS?C?)~uX?DFyS?eqQY^!)4f z{_XVs?)3fd^!@Mk{_yqw@b>-j_Wk|%*YfxM^7sDp_x|+w{{R2~W>QP3VV9Z!0004W zQchCl$fr)NKyx%f?5MW?fWftwsBNJ$D=-;w(`BI>OriZYXQ-TW%hiCnY zrHk|#VidUfqtXhBOKOYk7cX9*#h|2T9g&_@-jEnsCbw|jTr~z!OD-{6R?~bz4Wod$ zb7mxqDhDQ^t(x zlPB~^fE=c6=gTfqHGS&jiTyo7Ac2q+*TT-}QzlO6?P})*2^j0>sHrH*N{S2cadH9x Xn4(mS6?pR-00000NkvXXu0mjf%{Dl| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ppt.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ppt.png new file mode 100755 index 0000000000000000000000000000000000000000..adaefc6025a7e9dcceaa275652d5988d818505c6 GIT binary patch literal 762 zcmVMZT zIjT%JuTVR@PcO1lJ)K=hw^%{AT0*d2M7>@`*;y;UVMxGXNL7HyS%Jn_g2lsSOT%VM zU4+D5gv4Qp!^dk+Vu{1ZYfoj0!e@)YX^g?abX&}EQ_OKxY>vQgj=yq{zjBek(05qT zcUX3ly?T|qdzHM^d|ZB)y48JLf||V9fM3~xVD)=Kg`K|JgJOuF!0v)ni=x7eqQa4< z#^{e~@R3~bl3VbRXP2zWkgnG7mT2&nYw(w9ow3dEoL=ymaqydG@SR=opl_qL(eR~e z@TPRByVS41*t5gh@V0^Qy^HY0lJLow@Xew2*2dD}`qbn4*5vxv<@?#@``hRH-01t> z>HFa7{Ne2U5V{`~as^7sDq`2O|z z{`dO+`TPI>`}hC+`v3j=|NsA13=hO(4mSV*00DGTPE!Ct=GbNc0004EOGiWihy@); z00009a7bBm000XT000XT0n*)m`~Uy|2XskIMF-Xf5DWtZ^01i`0002(Nklm+rR{rPfs&okd_n^7U1JxWoFFu@kvY7207goY(7XnHAMp?;FOo+0|6ZlTMFQ=Kufz07*qoM6N<$f|A34cK`qY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ps.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/ps.png new file mode 100755 index 0000000000000000000000000000000000000000..c51c763ab3b5f7ad4a951a71484d9b053ff1816e GIT binary patch literal 534 zcmV+x0_pvUP)vQgj=yq{ zzjBekc9Xq&mAiYDyndIuf||UAoxX^mz>A{7jH1GirNoh^#*(PUceCS{tjTz|=AE(4 zqqfnhyVQ}z=&!)ov%}h`(d(?!>$=eAwb<;r+3dXA?aSlt&E)RV;`-F%`qt$7*X8@! z=KI^{``qaJ-s$_`>ipsC{NwHXhb;W^!@Pm{_^+!^!Wbu`TqC% z{`vd=|Ns9LN|~SCNtXZs00DGTPE!Ct=GbNc0004EOGiWihy@);00009a7bBm000XT z000XT0n*)m`~Uy|2XskIMF-Xf5DPm5;9xUt00027Nklr!8l~^E25gOQMd7bWh+oe!aw?6#3rLryB3Md8TRdGmPV}# ziZ15e2pE_J6dlN`a%h@sYUEI~0)Ht8#gI~}r%|YI-*s%uH1tCPMN^igdbO0#rjnxg Y0W?@FD~h^%H~;_u07*qoM6N<$f&tGIlmGw# literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rar.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rar.png new file mode 100755 index 0000000000000000000000000000000000000000..a6af4d1cac16975bc6eff1bd9c1a02905e99db64 GIT binary patch literal 631 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47?lHjLR^cBl}sG-N=!_$98Jni z(jC)HT+&U<(`T8K1b@rk+_y4i5-WNIuECI z9ZK&$nAvkMr|&>s-~OTr`->*-pEb**Z1Uc@vrMX{?yjD?r*8VL3njCfX6;E|ez|q- zKF6~Qx)&Xqxcu1kH7Dn8JiB{;ve2X1UWeCzJ5Sr=|yzIE&Jl_$Th z0nt++`hETB?;B5l-FWu{XE)7O>#8n*<4IDh@8rY}IDvz{)FArhC96A}^(E?m5J z=}JI&Xh=!}!`~e{ZoD}0A>e4mijKS(pAeS_j}1vSE-jKAJDz-*F|&b5LD1s9haihY z#Da#KCoD8BTz8-7$jQXBvqzZePwgI&gH{a=ZI%a5oWFhBd0wL;BhQYTy*+zv@5ZJ| zhA14EaNXkI;j2eIyBYpw*%pVq@UI2Mj9J^a8JU|tWare-);Qti-PO&-&Gq3UBLnk)^{Z1?%ijQc OjKR~@&t;ucLK6T`ZcQ@) literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rpm.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rpm.png new file mode 100755 index 0000000000000000000000000000000000000000..22212eafacc69e139622065067fbd64284d059de GIT binary patch literal 638 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47}WxNLR=L%nFIs`EEyQ&<>i9} z1X>I=|1&VW7Z6x#s98}_5!!Gfvhi3%)6v+LBXKQ95<3njbskRbI+WghFtg`iPTzsN zzWqfL_7_duUp9Gf)zsb9Q}@(O-_z7u*6q8# z{=kjRhi_eZ^6MH9Jq4oQ*Ps5r@$}b?XTNU((evN8p8vY_{P*qWzwf*NqCa*pS}O{?ET*tAO61l`1jSPKd(Riee?P6TOj%ZME~A>`TOq6zxQAMzW@5~0}y@t z`|;b~Pv3#)-{Ju0yFpGUGC@w3Tz><}i#N6x>p6+g~ z&B^BXtc7L6DwlM2ZEs`4HWm&KpOh`zjm*tN8aY)|ZbZ(Ol77W)XmH@C+A+3Wx0n>B zH|;PJJLbk#Wi_itfiaRj+IvBnZLBVDY2Ji}o+(pWcC6T-V6V?FF3!;5YPeb=w!I(d OIR;NxKbLh*2~7Z%HA%<- literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rtf.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/rtf.png new file mode 100755 index 0000000000000000000000000000000000000000..d8bada5fe143ec1f3d13a958cf89ca762a1ffd3f GIT binary patch literal 474 zcmV<00VV#4P)a##n;IU4+D5gv4Qp!(xfUWs1UQi@|A(!EBDeZjQflkiT+~zjl+odX>9-mArnJ zx`LX#g`K{Lpumfw!i=KAkEO(sr^b?~#+9qcm#oQ5JZE$BP(_h8y%^3!~g%5OyHnSb{}%*o`f;Rj{BXySPx#07*qoM6N<$g2WT>M*si- literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/swf.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/swf.png new file mode 100755 index 0000000000000000000000000000000000000000..0729ed0203ea2b0b6c4402d9af5fccbdc2e6397f GIT binary patch literal 843 zcmV-R1GM~!P)fn0HfUvq_8ewJi`l~sVqS%Jn_g2i@# zie`nIaDtR*g_>Q2#9oBNVTi+Uh?`=G!)1!XXN$pniIr)L!EBDeZjQfwjhu3jzjBek zc9Xq_k(+vzyL*+qf0wC-m8E`{x{8^nf||UAoxX~qw3DE&i=x7np{-y~VD+*R#ONufW)|!`i;a&BDph$HFO2{N3sM-Rb<^>HFU5``+sO-|GC|>-^yB`{3*R;OzY2?EB&D{NnBW>Fn_1 z?fm2J{NwKZHM{pRod=I{OJ@crrV`|0uh>hk>S^8N4f^z8Hf?eqQZ^!@Gh z{_gbs?)3ie^!@Mk{_yqw@b>-j_Wkkq{_^+z^7sDp_x|_y_w@Mw|Ns94E>7zd0Ji`D z00DGTPE!Ct=GbNc0004EOGiWihy@);00009a7bBm000XT000XT0n*)m`~Uy|2XskI zMF-Xf5DWnVDdk?I0000TbVXQnLvL+uWo~o;Lvm$dbY)~9cWHEJAXI2&AV*0}Q14_V zZU6uP{YgYYR2b7^U|?Wyv^Fy}F*4BA(qe!BhxYc?=7zdztq!P&U3*JoeQi~RRtHqX zrlqN&rn0;gC;%3*l;z}ZMuFSNQ#5ffO9?!B+7A8h}51zE- zxY#Hq25tK`4Ms_)414XQxajZ@c?Ks|eE67PphzauZ0{|0Y VJPmL8*75)V002ovPDHLkV1j&6&w2m= literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxc.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/sxc.png new file mode 100755 index 0000000000000000000000000000000000000000..419c183c1f03be2f23be09c8d5c4db53d6bc2287 GIT binary patch literal 749 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/tgz.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/tgz.png new file mode 100755 index 0000000000000000000000000000000000000000..141acf56471de09009ca5ca6b6d2775a50062319 GIT binary patch literal 716 zcmV;-0yF)IP)a##n;IU4+D5gv4Qp!vQkkiT+~ zzjl+oos(Lll|y=!yL*+qewVtLnP!5TyrP(LuANGSoxX^mz@?s$i=x7}r&qA0c#)^Z zm#oRMs+OIx&7-!_x3sOvx^}6%)Wf@DR^T-K*!@HOa5 z``+sN-s=3{>igg7{NL;R;OqO~>-^yC{Ne2T;q3hO?ZD#g{NwHX<9?)~KM{N?Wa zQK}ID008(&L_t&-(=EhGN+h{j(O0A&PXkn5tDpT92j2f_&_La1F|NqB^WB228?mg!M0IV)8%+JnD=P8AD zR+`Q4ug{M+8vn~OV|MHP^@YZ58MImCvz_NB0YVnnZJSLQYliVilfYanjzZlkIinAE zw~c^;{^N%s^9wn0e{&UFh{kW^I0a2r$@L}Y-WcfN)~2Q9R7Gy^^SYY`y~M1drYc0@ zo_n-E4CBQO(^QEfNoVdstvUpd)l8E}l8m^Ahy&tSM^+=UhsRi}l(8?lIvMc#$suB8 y7q@#7$a|+K=2#Y!&IBehne+%^e{XkJD)k4(NHPO%2sYFJ0000ipsC{NwHXhk^T^8M@b{_OJo?ehKY^ZoAg{_gbs?)3ie^!@Mk{qXhu@b&)i_Wtqq z{_*$y^7sDp_x%TEqudB$nZInuwrvMP0JG9BOzzh0ezk6zs>pvBoiAh|OLc&u8Fey` ziY$o~K;Jx&g(y@3dIv*?e@PVfWq^*Mlf`~l1ZXGs9iIniYARXqTo!;y?%Xy7(4c9m gRw)&7nRFQb04&@fraZ$Zy#N3J07*qoM6N<$g3-nx`~Uy| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/xls.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/xls.png new file mode 100755 index 0000000000000000000000000000000000000000..e8cd58dc0f1912e3379db02a75077bcd8ad2320e GIT binary patch literal 731 zcmV<10wn#3P)d9cNsi)A3l2?I(;WUeIY`CB}RlSM};jyi8V)vJ57u>V18UrjyXt@KU0%H zQkO_ofXG;wM_GZ!Sc1h`nn_-mRb7O{UWCM0o>F0m!(xfUTcTKBp;Kjw!eO9TVWL!L zi@|A(!El>xY>vQgj=yE6TV$wUa*)4rk-ulEUv`tdX{};vtYvhiaC()ydzHL?m%44R zXM&o%g`K{KsfCE3z>A{7jH1Gkr^cMHo0qJ~kgnE{y^EoEGMu``qaJ-s$_` z>ip&G<>Bo7KO{OIug>hb;S^8M}e{qOYs@b>=l_x|+w{`L9(_xk?%`~Uy{ z|20V(8|tE!00001bW%=J06^y0W&i*H0b)x>L;#2d9Y_EG010qNS#tmY3labT3lag+ z-G2N4000McNliru)&>v^0uBp)K}-Mu0N_bPK~xyiV_;xlh>i>o_V@MnaCK#XfT+rf z^0LyBV%I8=h?|3zp{BCDjFfnhYZXYutqKYR3xNVa5w{R)m8w`REkC{jR}f&Z%L;Xr zbuyNV=gH5@&B=CUFsX`*Fp%Jlsp16jGhG?fsseSx3`ERR*>eK|GBcbR6a&SCxC500 zf>?p_8R_;6(jXf=g*gN!O+ilg z0h9-mArnJ zx`LX#g`K{Lpumfw!i=KAkEO(sr^b?~#+9qcm#oQHqoiI+qbYoQxaC=z#GKJ6GyrV#Y%diC zV*nfN2mTPiDos?v_xb>q+V|WpfO*VS!gbmJEbTkj27sAq8k5nW*J(A2;s+OY8o;O9 Rz*PVM002ovPDHLkV1g7-^+Esu literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/zip.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/fileicons/zip.png new file mode 100755 index 0000000000000000000000000000000000000000..999ffbe80707d6c2bd3674895f62e824a2668522 GIT binary patch literal 874 zcmV-w1C{)VP)vQgj=%q2H*%1_a*@CPVor9Gy?T|qdzHL?m%4(Q zy#H!(g`K{Lpumfw!i=KAkEO(sr^fi40GO%Hm#oR1vCXHj%m1qYqqfoet~aT>)c>qT zuD;j*y#TMk*tx&jv%}i|sIj`!;M>i^?8VOU$*}+0Jpay!|HZ}s^%d0Q`qt$7|KF+B z<@(m;``6|B*yZ}z=KI;^``PFF+UNS(=lk2|``qaJ-01w=>HFO2{N3sM-Rb<^>HFU5 z``+sO-|G9{>ipm9{NU^R;OqS1>-^yC{Ne2T;q3h4?fm2I{NwKY?B?)>HM{N?Wb z|MZ&X@BHTP{pj%h|M->Z@%`)a{p|Do?eqQZ^#1Pj{qOYs@Adxh_5Seo{qgqw^7sAn z_x|(u{`C0%|Nq_p|Nj600QuIUTmS$70d!JMQvg8b*k%9#00Cl4M??UK1szBL000Sa zNLh0L01FZT01FZU(%pXi00007bV*G`2i67<3pW$b2KlA{008<)L_t&-(_>&@V2B9| z2@LS{@^E!!fPkp^^XJW(HDj9VLa0c@{JFDdPM+Wc0qL`w@)8E_O*6PZjy>Q`z38}LFs=R$&9j(o-3|b2_l0*H( zgH-rC+gn;1oEh{M_9O*I%0;X5wY40TS?RZK)HtSD27V#Wq4x^h!4MPL*i3ZqD^HvVi3q}D|KS%or)Cg(d-wl$3xeVl@C2`iL4Se< zKuKuhEh=r2sPyQ({V#}qedF>GS2wBy#qSkokz zCiyhwKvM#mT20e#G`*Il*U_{m&G^!cKg|TFyFzI0Q<@8-xp30#B26S|qG&#z<`2;P zL0U+qmq-8Bd`~ZzEGa1|nHavWf0;wtJkp*e?M2d+kgilcS~D^7D>GK7*H+Q1O1}b90>&Ifb6LT^_xsP0(57`DMpmGsxs+zI)z`99FgF9&>O{ zJe9h&XH{07|9Y?bs>HrhABR-avD$0>rIEkHcXcdJUb!JzQLFPSIA1Bs(EJcvd$sRM zXx`}BGolS)UB2IL=WQ*Q-q`>9QF>$P5mf_LisHxhq8xd*)df#C^X#fKBJbi}h1|m+ zaGBiiBM$^3%SK+-o4sn^qPIeEeOuY1Ng1ouE56~-K+{jLSGHs?$Zp?@R6eVB=y2T~ zbJ*`4m|XY*$`Nx@tSB}-7dGU7WU8}s2i;8DbXW8AtA?)|cOE}gkXg)mRU&oKo79)N zj1Mm~o=ztpy(%~(#tt%WjQ3{y4CoRBndV$sd4`oseR;a2w=&o^B4{p%yPY?F!tuMB zlpMS0!H0!ui<0uz)9W4^Ni8AZj3s*|6*%Q@G=MZepvm=^QFJ)Vm>bNV6K$5T~ul2U^lbxTpB-t~`Y;j;#wNT7qfhCS@szysGbK~9{e`7OqcxKex(WtLi z`-Bz*aROu+277FV&Z)0eyErp-%A7UR_2Y#W-*82<=L~)`k|;BIX%E)SG%P$$p1G%6 WbZaqp-lmuq!NlW`jB9L!jsF1Sof;ef literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/smileys/fixme.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/images/smileys/fixme.gif new file mode 100755 index 0000000000000000000000000000000000000000..b66ea99d658a1568bbc75564fd1d8266246c3835 GIT binary patch literal 1435 zcmd^;>rWE~6va;|NENUJDpaTlN(>^~%H}4xx&amxZAcMNBFKHAPu>SNCu1n5|St+#vnNk(j-V%BF*l#*!~T&q{!NUtWC&HMfO(g%S3c^bY2Du zc0#cSihU^DjT3vJkfB13iX*5!hT3w}oOZoYfm)U8jSJ|gM%P7j)#HH{J=b9k(0 z3$`v$C+IfFe%S@f16c3EYUg8EdSUIs#68emke&Bodj#qRJp|dqV@x~){SNvA^aRuc z>IFRo{Rv}xkf|e#`asV?{h$}1m!JWV0b~Td0+~Q&7c#q&nN4PQ8uXw+KE0kvul?!u zEE<|iLm$)7Cp09OFo)A{7!5C^VWH`E42>?Q(Ks5F&{z_Ut)#JJvaBb|2C{6VH(B)d zyT8YF(_6cLkjv%9XV-0SeI8u6C_zd+gsczT60})(nZNHvpn9kDmZ6?q@_#Y3R%u+Hg zAH>243uD9~BK<4wYUb4jM-dZ_LitTsM&n&vVk6_!7Qbe__=wzuUEIWl{I| zRTlFjixQmKT}Kf3>nidt1ddOi+`PenK1W|KEDRfdx@YRiFE-zo&TTtX7`S-v%h1-G zINAEXEasii;zVZue5p5^uVXUVS;wTg=+ru3wpf#!JN-^P;FT*&$z=-#mA>gEk$SH+ z+`vO~j^a}OjEsi(zR2)_0||y*JA-N9Ucvx>l*oNR~z(O)pZl zOiL2QO9D>>dQ|e~#O62pq^S?iiQBAhAMg=}Npw?PLUf|?Ey&sEf;x@*^p?X$r_zuetcrvdU`$saJ#SrJ~HO*cH3EF1A^2PAxq(mXy-vyVN{0d?`W-dhz zX0|B@>(aJ{?)Qv-6VWYNHh!yA79=qb)sN`s)i$IgK9{o%9`Z)cCfq{o6L%Y37j$Yw3B_^dOlWByTe(t7wQJ;Q7}7ipQ8%`1votGD+uA{iP-@3xlIUi} zP!gkSTwyb+iQ$Msp*$@TSv3!Lo$eoS?=PRv>wM1VeLm-Wet4yM9d}jVvV98x0P1dN zln($X#VXkCmko-_A?2?rnqIW?iD+LcF`9;pBmfSfR6N1Jje;W)d7W3oH}=x5)JwJ+0}SyMvs);3pk zn+b5Ge{xgErS94TDj)Z|V|Fw|tV~_@OHI{)m}S0_Z>`EDh(1)0i_*k$(LmQ!6_{RT$d z)u4kqW}rte!eB_%$kXR2T-Igj&L87r*}$b#B}KBMWDRn9{NyHGxOO7i$J$ zwT__6L&($o6!2e04gwT0D3_cs{_fmZFfcoL!=)`-RN33xyN|<(PxvO;uD?pBBaXyb z*DqlDN?#;c3wWug+{aI+Ph2;w3e^P($5KEb*pf`96DltAuduU?`#w++FbjpIHFh77 z&3$n!I&5w{6TmL^nAsmQ?>ai2S5zc3H{m&X%BMru-FTj|qx>LY9>?Sv^<|OAdmoEi z;k+SIR#x1N_NAp-n*%mBjqBfIy8FMijf)z=W#BIY{&RgT2jqN9l!;Rqf#5v)NNtG0 z*7;&}AnecrsB;|UR<7HYS5RPea z@oY-3CnM0>D4l7!aOjTbZ563hidKn=jyBn|NSnP$#4uUdgGpUg&bU+yMhlf?TEWg`;+b6si8j z5jE@EJCbGR(Ukd>j`)VAnfPwsOY}PM*()_tY90y7Oj%BpyLz*lDBve|H2bc4KyyD& zl&NYOYn7y>sqmAk!}ac%>!^=QQoVO5&+)a>npc(oP$F;BG;HdroAWR^*$*ces?R-2 zS#?ICch?TH>=2n|F0E09ElijLQq8Q&@upRZ49~tcI6Ta26FwwN@XZI#@}L7%a=3f` zu9YqXR*y)*w3XM!9_oUZ9nZ$SAoYYu! zPWcq+Ct|n7kz|scpQzmr^t@Oj*SY=`TP=>O97G`KQPEge!NwcgzL;?qD@J|ulB!|@ zq!B%ql7`1?`Q);sL( zC0;}eM6LK;1-@XEl@vTy7@VE7a@3Tk;d%Z(BobxTl+h=3Yl0RZM$AkIn=7BhJy!P` zB=sqa(3@#1rX!bC4oF$5rr}Xhy{pan@$t*j3M4JGIacL)up%1FVn0s_N;Fog`x~^QgxWzna7m z*a-9i0Rs20UOxoCWBvI1I0AwB8y}z#4i0|2d>4L!KmVM5C!fGRr1J>uGg5#94g<_S z#{-ysO8^J~5jX*kf@6RfKo&rd05ZS`P6Kj40Vn|#I0>i$4WI>dfF3Y_Q-B*V0YShF zSil*;3eJLafDN#N^MC_z0xoa?Tm(Ge65s`VfFB3|As`Qgfd~)#!z! zSdtO8+z#fB-BqeEkB)y#89@a8-tm6|UMB^Za^Po6A@EVQIJucAR{NktON@imccnpaQH9*+0i3M$^PZ(pawyL z5BcNKhuHnp;}ix_f&2`UgIJ9vq*T{5mx~^KEtx zxw^K#vAKoX-ob1a76SV(oAn=C_N(n8f$chkgM*EOhuJQyL#_au1n2Oni?}BwRq>1+ zNKbR$!za5O{xYwYfQje&3b~167a;{R?>Gw*vuWSA?B_Pj@88<8|Jbnq+^#_c5jGa= zJZus;0q?6Nzo@J#>ak6nSejthCS6wG@z>aiY?Kr)O&uJnb>M$#Lq_`KbkwxUJB!qA zCE{`Q88o5$@Prgyl!0IWDG!_?@ft5SHp$~T0g63mAJ8pz-j_BRZ z8oA<_;Yjx6lm3h!{+oWob3JxhyhG3JO!I{O*lQ1ec}yD;9&aj|WE`s>u^?e}G{>e( zTbu!z6Ez`Isi#vUma;zR`TEo4?#8Xn;8i^RK9tKo_r!=oU?Gj%jgYqK|EAeR$TPDRi>0bE5DwN~`gXI9HGEQbWr_A?lNhX^N40ZPgw^l=;MS z_$|D={S()(e~xc%9L1fZKOa!v1G#i=KE+zWT|Cm8HHLifmP;-3g|=uSZv2UgElreA zt{h!Lx0}(WO4%O!TeuJH6oWI6zon2kj6BEvJNJ%CM0X#^fd? zCFLfBaaQTbk_f5Cx!zgq9`0Ev7|PDgSgWYUs!*^z^W?onPT-j?3;u!YQHob|rI;O? zPccri^gWcsNpH!lqCp+?K%f3-UpOqF;LUbqUlXlJ6)s9)GHyb0B}kneq55nE!BLaz znOx|ecq-FspWWAJ>SZTw3;{(#V(8`pqPVoub=K2sL;S{yKs}vP1LYHa$yeG|Pjua4 zu2*^AYSUb@+)|_}K9?_|{Z?o=7^}&8KcJ?QWLDTEn39_Q(S&Pc{pO(3u>99IRy{IH zA7&r0L>2qpA;0xvre~IrUG8R7e4L!#%=A{}&hvVv`lfUILk7+Z(f!3r#T%7jQ7I@R zZ;H|h1Eo=;Vp1FXOuek@F=yIn{6DxJ=NztGEx9e6=`!&=WslR==xSMynS!OAPC;R5 zf#(DBXm%@|DRKSVGI(uNM{CNl?hjVQht==gVrz?5Nw>TDN$3C}ls;OwqwrxhL435` zsWhJPa47!Qt+Awzn9Urf_i0M?=(;+CZJ)lH7*{qXCrpRgqS%<3kFXrF!@` zR7u(VYEF+~MSk3!t{9c{)~cZ%{k%}Hf1+;JsBqVDcKNpL0*C2igiIFJ+L_arbnapk z3fAP>+4A=-&^KmJ^4o>bTvETq=Efc-71`)s^>QWbx?dyju!!cnUT48Lm#U}GNt@iiv#IB{XfABvubZX9kBU^q`jDO_$U+`2w>~th6;mtD(Yx3` zq=vlZ;eA)-;eg~@Jx6t4{HV`u!49i;y^p$7(XC7;j4Pg@6HqA9)4Tfa@*%mKqR}Sq zH(4W;&lDwCDaHCn4|@z1zid|~rq(dOe(cLoHiyry;c`ypQQ@=6Z-xDW&b~PGE5rw% zf1HJWa{lA|n+BDz-^2Nr5`q8c`S*Lh;*W6tt$5!sNZc@=w2=E26?2(~WlyPF?^}Ld zcoWa`Ny#evi-h)yaoW+&j7^uKx$lbcLvH_d4*!vVQP{ta{7d?0{qdK2@$WzXUcZT- z@~8%zx%cuC|7^)VNp)S4@X1r*GTd#KI=f3-D%c$#o!-yuO0*a8I;NWMcQMgzCav(0 zt1xk)jPMe6?4`ITp^q$4?jXhohu4yd`gCXtRMa#pT{8J}8d;@x?--$Y{ zOxRP&np0c98{){nIu&ovRYG#V=Rph8tfKDDqmeRjL1W-7jN3i|eiqGqh z{=$2uCr%1v-6B3E)3Y`f%%$vfiOzuhz3jN6-lD34Kp;y5Z#YA%_H*^c8x6i$Vh*Dc zG331;v82gV{vN!4`IPrJXT~4p$IIVI`Edh5^@lqDVcJZ7%Y~GA(_m|nf{qx^x|H8ECreYEe6Q-^Bw@jG$F>Pj;=ER@fesu^N{Y(6qcIw|U z{X5%l1QEXfCI0`#?GM`r2y+^?rZ#@91=%&ew%xOtG-qFMYOkiRz8Q^?jnOb=j}m>u zHX0*MaU{Cpjp&=wDQeMIy4p=s5^O>6``NeprBj5WFE#hzz3wIfHuuXx#Z#)%ep8ix zA%5BJ>h2nME|zNDNQPfkZ$Xgh*FXKIJ)7gqSR7c%Vq(z zNjJqVZ_!UzvTvI2$6oQhiL`&rp|n77o_AJOX+jQfmElot7NVwR)`;%;OiqZj!jbI6 z-1P$lzfZ!Gm57FqZowWl&pk75R#zM#q_>hHx@$hRbhSL7lhf3sV%(u-UoaYcyy-}t z{Kc)lp5jx5iXpm*9S zcjX))rhWfzLI0!tj)na6d$@i%ggEqvD!>01AHVx&P|}_b8D6X_8dFmZ#agb^EKl>5 zMPedkEsy8((91DL$j!%|O};DfcQfuUh3=318}w)X{j>f1A2sa%f7Jec4S${#pM1G1`xI!qoeC!w@K^E6B7EUggE= zfSt6Y{kYfr*&9cbtQ;JS(f0)PJdN@PUq3-l#VwDSov=&}+SR!pTxh$$yw}-g92id? zVT2+wny${?`lp5TKdB)9$p3o3lm1I8gu(w)`5)6q{#z!@^#}B-ejgL`v)4bEu`Cvt z3nrK_{qw(N`gg8>9zlfnf4Tm-@O=c)zn=nJ*nR?795X)RXSe?;gjK|RXfR#;?eYJ| zn2Vo{KNaHr@XKJGd+@s-xDWin1Mm<8fIxs5cMt^g#~>JlfKU(yo`7%=0U`k=Y!u9+ zK@4~Xo`YBr2jW2jNCZjX1$YUP!7K0@qyWr%(qNtrGQb;<39>*o$N{8U#b&3m66?U=)mjaWDZU!B;Q^rojyO24=w=m);K;X{=xY!@}j94mphL-VnXsqrkKBHq%>&H~&`xdrW1r{tL2 zCaP67a}w}d@96D?)l}tVPO{?0_3PQEj0BKYkA$E%miY}iRxAQtY|m`Fh~ambMkJCB5{{T@ZTO0Y! z-U5d-gwKAwpShd)QR4VB?{|VtFP5(4hab8rK$MqtjYoTEna1k?L2Sf1m~f)atSG8) zG14SOsYj-x2t-j>e0%i8*BXt{fbh^8*6%kh`G4~gv>i64pM(M_8tYd(LC-- zTokwal}r61(;XS5@xvGOWB*iWMCvAtwq=)ldw}pad0$s7 zPCsCm>PN*GVVSFGdtCv)ef?v~*e#a3SDa|Bre5fpxSahe*R5P>0L_W&Y-AX$qUeA4 z(usM8BWAEdELEC6fv=&PAT@Ti-}3sj=w<4YlX^|0Q-RuFPG}F%>3eRhz0H`S?@DiS zbyc{sYk-bk&YN)f<`F+?vARBAysKDH{KWQNSR9Uz#d9{~+G%(0CF7daQD$4gm+-L$ zAX7`nhAMB;u`2Y5vb&BM9IJ0A^DZE5HRY%qUhY5BGkDId{X-sk?1$#l`IpVjYI%+^ z893G6(QOX2OHx_6wMo*N-ahs^^eDe6`Q08D1{QlJjq^S3%?kLjcX@ zKDvXh_-yp)05Q7gO;@O}GR)fdnL*rsE4SQtET%mPr2~8aBhLZCZhq1?kUHdHhUqwm z{7L6+zQ^q>U;A<6h$vcO6g*w1as3W!kK5;`6kismnUl9`E9e-7ukEDrSq&89Ev#R0-|JngX_ec9200|ZTS&}3Rj`irRO<`g~l zjTU32&D=D_>B=+05nmRgk6L^n^;He%T208#C%Dm!3(M{++( zs(eqP#Rz2qoi?<-jRi=1THhAj`2$4AM+wYp*n+Uwh`R*xRM`Py@;{c6-A;m}LCWu; zl3{013^aZ@K=cw~mKzviSW(PHpwenaSMq$vSyuXU$CnFzExeO^Ep zHBEI0+tC-O>I*KY&lykQ#wfSbSE_$iGwwfj{%_AEW(b*HgONY=G}< z)`WAY9M-8M!7qsp^I#X6!EnKghYByk0Gl4 z%&RfC?3eo^c@EF)47mBvVxN~7=@2X3OuyxFR6?<5BcOM3E&Fx8Wi;pVDRVZwmn|Kh zrec}x=b8Oz=G{4ytrnxDtxjtW8aTCd-U>o&93cFv5Jv2~zAAy@E7$waQNH+Qlw^2m z&pSO=qpR?UqMCeRSsvT1sbDIo!La+w(9Tg zJ`#@iB}fiJY{w#JkcNdesa9hxS!jK!7k9+;cYPVf3+KzW>ez)uk5VL<1oE+8x~bDL zt%JW^yD3PuUIWWbh?Bb=AkZWv^ zH`3NFIbKg!9a;CzPAy^VHq{}I@bF&Es;W~Cw^;NT6`T5aTK3|Jm%=JHCW9smu~M{$ zM;Qd_KN1(nGYbgxT$1E|C=zh#^T~DA@J3te2-^chc*|^$m1XtH88o`tW;_hnfb)5g z_w|LcmiGyYrfY$Cxl0`vXGaQ+Y9q+(QP1mpcB}V2Cie(%<6JUEMCDSv-+lagRCrED zp5TaM?Okj}my>u&@=JPmde+~Rd!YSPgL*auIh5;m9*-L6%lb|*t0!64+Z-*9t~qz| zQnSdh(FvheswPDjVXc6hy^AASi3%rj)ZUi`v(x$>uTLblUK^U_HSe?AY#)E=zL{}| zd8>yBJEp}Py=`}u?zXbALE63GqbXl#ZswWoDp)K~5_4lenA3~8Wy=21Vw86~?f~)d zgg@n;2$!`Haa!;3(>BW{ZBp*hwUVMF_sbbWy~WrPs_r@Fc_*ZnM@2|sC0ahQLxfM$ z3LaMCsp(`2`sQNVY)fJP_PE^z9Auuz+scc3Mn=|+F`6s!0;C5BYdRMDZub=L zKq;;cr3v8~8aXk7lj}KW3x*C5JZ^0}%&xjh<@{;1%K`y*&dZ!?)Y%^uyAfDl_@k-5 zhAO#e=#EPv?19{cxQh>oK6Xwk8#g#VQNwj zyOBi6Buhm`ca?^ycu`8XcD9THB>6!<#>_?PECwFD2 zA};agTrg3|65H9pOL1>RXPWbEtX>;A={9J^`b=(y;Fy5geTI_BVL(?4+ z_d)Z@k!QuqA}x%0=cODXl*Z#%h6QWzDye<1@vZHKelzg;3b$Wu(wZJ1vbDFC#R?~` z7R9Wkw6}$EA`%VC{Dp?2@Qj%f)6R=%EH6IaA}z6C7|zjMGETL&HV;z@VlSVv@&2~R z)S{6P_QGqKG4!GuyB?b0#B{My$vl_cyVC~<$xi|sttxJ!w=4F=95h^p-ajY`9J1On zQRc&a4u6OGj;X12^sUk(S;_jVpPluOqe zszd7PlL~XEbSIRml{4O}KU&HlpDmGUSmo{hQ5JtO7pNVt5oXI^i7anW?nLS$89m1n82oqGxA;+#O&go#p1 zl;CysT&Ad&J*NTk1m@@ns3IZN<{c=b5)R4Qub%5{BM3_qwP3y1PNtPhdz53T!!4 z5`4qL8n@G@bTYn6nn5*XIG`xT)CPURn?_=Ox_RH>05RWfwIZ3->EvYV?P0q1#NRe3 z=nzpl-EEJ=Z82#wEqbn_gzBY}rP=3p(fB$2s zcyeltQpnf9N3T_~BMZ2oTm;m)8vJbhtPp?tFY*5`9zV9VTu7|Tj<>k3 zwG=H8-eJ0XWhaO|cGtI(tY-QEQJ8#yNc0Pu+B-mau*VJNf843?e4b>8S=t-A9EeC?`F>nW_Z>@=Kubuw`3_NW&FnF3Giaf+ZziolJM5XT?W7yNX1@8- zcSb)e%4!{Yxzy)v-a04E|3-|y(5CDQe2nYiaAPU5QIFJCBfF!sKq`(y*4P<~UxC-O| zCM^muzXlY65>N&zKowjEYCs)m08O9;w1E!L1$saq7yv_H1a1IhU;<2m888Q!_$**< z39NuMumQJ#EwBUj;5Kjoj-UfL0~c@yxB@re4m^M-@B-ez2l#@!;OB3{KlpzCJ$xy^ zpY4x-jP}Rx<)3)3m<<$x-c{Akd3&Mu-sv7)n=j|JCG1}%!mf zC``|2Mh13D_ysMY3HYI3*6_H!0XJOCg$ALTCzKnEC@hUgE7bNACTw;4ZuHq{3cjj{ zG)a$oTkaH0e9fd?gO0VR(F5H95N7gW}$}t*Lr|M(^wBwho)8vKJR` zUOA6d=REOzg>+JEw9)qHi@qW{Q>Eu8bW}_`q`Huwb_NPilh;c7E668~inrs$xO#Xu z9DjM^Wx^|S)ySH!p*GP)7GWudyf#W5TzW2_)-RMEQ+`y}N&Yb9LuyWBd47JE*S>P+ zXBXoWUt>2G1;!16X9>TI7%;Ea($(D>B=34k8ywm&QL51S*>gg@%b3@V-~f^P%@_4% zho_OAJVthfKgoqVFn2u;$93p_+ZEAKI}^ zTr*GlXm)2ArIl4Sn?xeYvidf*2~C@st05M+g}1F?HQkM-MDfYo(H)d6l-%tuMVrOW zY7d4ci94s z%{v1(td^IOxaGfanH$!4vx_XEHx^ZcU*V)Kb;dU+k){s|ex@DWEHGO8sNuP&$waU} zmgC#GmCnVw-!+}@Vi1}>KIxLNle==NAqlsFs{V;{2{BrbeN5u#k&|}^ z{{T_cZsh6HndVwcjGbg~X7m7YiF~^1)c&Iiu8A5e0Xa0vSG)j;Wyg z#ey^Rh1*L8p(%b1{Rvu?m@IZ{`D||N*zMkx`SHSy;?J_rd>W%k+tX3^H3)s0+K-kM z33AdnG>;pZpmL4E>Z&OF`ASW!CVFm7SGYYHD+xLBgg9f!(EiN`ie^kE=H<8J?Y1eh z91XXJbeM1xU0siq+pD!sg}78xb%>L=jX_86vE2iN+(^Y21EU<1%KVU5XR>FL#lDmi zz57r({)%}DXK2IK;$HP0*^&BmZZ9sVrCjkHH=LQ|a2(P?DSKvwe{J@CUC{L^Q8MEE zn|;R`ttpm;(xB?gwuNgGi=_3!W*p@T-RtveLUb%8t6Bu>hG}1dwl01)r{+7ii$7%G z>Z!dgnk(L*_0mwg)JcaqDxz;R@7_vgU2_dRw%?K2mPi}@FO>Gt=YyY!AsG78y-ZhL zC-SWXyLvdM>Tt*onq0Y+)go)J7AoyHT8P)cwLnb76_7PGDRTYWl_G9?Vx_ByXg z7K(A~{$S*;F4y)q_K&`noeyQ}2CFyGNff;A2lnUEC(bFa^G%HSR(kd#>ATskZU;T% zlUL&A5&vivAveu=)O`PK*Jizr{(K=c28d0Dkk%#Qbsfvh@zTvZG|0lF&>z9h$Kr^i zP|oJ>_+m5jxR>6Fcp>i{qm>9R^Gf$P>pGWjaSrRX)+=fdmjg%9^gzM zcIvhFIWlB8H2Ot%PcCQ!=|J8ab0^V?ab-L&-cNW}%h(D@T06qr<#NW>b&~#7D)Y6N zN1T;MnoOC9=ycwy-w&oQZS-oL;G!CKd!9A&jhK573m3U}>4c-NaBiAgsG@MaTA_Ad z{|?KeXNl?rEl~T?_2p_E*NC@ zE+~Z@Af!58Lf;tlE}{0_jecA~Nd5H{#3^_5x;uJfWBI=^diG&yxqbfUvsXsS=r6&J3dj{wY%;Oa4(*3zU-zDdhwTw zv;C)4Nht^iiO&oRUHeab%MFS#fuDX~?h>u?rtB`SuNlMAfbI8y444Z#6+F`YaCG~x zBY2ASW9<<8->m(w+RA=h|6#st@&Cs4-@jV_XZ*AN|3~TngYVy}u$h!-rc)SC%x1|> zhz>$Znr=?Gh)KVSosa&YB1J87;?UQ8M8z&O<>bxEiFT>0JryU%=S7C*Lk^8LP)ey+ zT3$apjc6t$m-#Z2sD#Ls5%M{$5~9bc)jy9E)tRBXsu4xW+D>W1JXF4zTHPZS9kePY zH8C2*M||AMhZ@d(53*w#B4!zeC^vT+XM@A8;DORPylXV17@ zx4okHN$d44tE#f>f!3k^Z@Gl`H-r1U6eRr5?{SS==DKir46bVVp?6ypbZq091GSmV z%mndh_bQ0uos1}a_)+;J%+~c|F7E zg6(GR_FU;gg#2=*uFd<=s^J~lD5nLobMmigqN3J=3%A^h3ybo-b2HZa$k#TKn)1hO z!l)HlQqbAyl1{Hb4eGx4d^S^3a*yBtumgT8OPJ97Kv4Ar!yu*BigZ8_M}^dQoLhxd zvYzfpN?`~xdSs3uh2){mNwQ3Kv*TLdtPOPn9aV!W7yDd_leVH$nnh|?g*r3~mtR@w zyw5J)GE7?GTGFU@3!9X9P{EPWYV7SJ-Rm|I-qczAY3#Olra;XBf{ZW3zIi9czi^*$ z=xSAfQkcfQg=NJ$QO=<|d1p&*U+v%)9@`Q>m2K^Fwg`1^qMU)aJ?lBCs?GE4^<6CC zH?2g3p-wd3%jW`EL*kDqI*E#AbVl5%O3)}=`?L_sPoA+WulU(OjBY6*+ahDJdZkPJ z$N?g0wt9sQ1}&B;RWAaW0X%l1Ce|9%Ji^mD$>M6m)-g>2d}Yrn!#%){lOP?uU|JwHk%-rir9P8lLfzAxh`+_9!;~#sbhD{(J_k8 z745ohlauKEd0Hz8!AoSh{MuT$^PxR&Icci2=W7H1SOpVTs;`_`RCe3>!80#YzxZ_e z&?y*@^TzF)))(t)y!s^Nn=<^MBm&RmLj+GI?&0TgsggoCT4`Of0}c`$2Z+r5-OAlZ zQ*Nxj!yLW}wnOH{X19IlQ5@sdN34CQt9ndJ{S*&%c#5d6xw2<9oTR@NoF75ZAv+@K z+{6%6eRKJk+dKQ?1TF@y%5Mi=la9_tQwBwMe?ZXNb^9-k(OOtBn$c=ysa|m?3G7Tz z97P{JK!|zEp3lb<_G#_budLFqj!p~+aw{Ky7+{}nQ)a(Ok^M$$f;g{Jtg&E9cTgMa zYAnTPe{+%ymblDg7ZjbSW9m`3k20h(P`(X=`vZaKR=SZCCl8j&5GE4&@CZiypp;Lv z$K?5yFN;ScKL}~aPTldLDE?aYl{IQCrIKX;3D;5UXcC~d15(ObFOWo$>tfy&8s=b znQXP|ED-UI>>m#h@HGQi}b~AxPhzLBUo!UAsb7pamV$@02%-+Q%|4VzU^edd!f*Qa?_zQOoIHG@mtN!wZcuYxmOWx6M{Dpy955R zyGldt=-ey)N&7=*_&VpsC6E#gxyNTcZU)$AT9U|{bB_#bb0?FBJjY@-J$x5$zVVJM zN4D>XXJ)zR;PWNQm@TeErB;?{Z|)pgb0ulv3XAcuhWXJ&IWM6J!I0=mn}%=!Im-N( zOR1INRKgGGj@}-4$#!BYeBSt?Gtzl`e9b^@p;_yF650AFF=}Ws_0^3k+FtQfHkuS9 zuV$}*!9VXj_DSTu*$Hj#8T#a^SGoL1`x@dSsPe}42_3WE^>#z;1_4qltxns`r`T9# zL#cW*c2Ie8~r%kE;|NTrbwTAd<_9PVIaMOLdbJ&QR5ibj2WYk6w{wU6uy zmi-S9^aUn|Q*z=&GmggdJU1<7ZP!$H+6rjF^_=AMv04{X7?Z8drqnS|(=Mraujl5g zeEYuYr>jFuCoW`0<;+h6)Z0k-qe+n*xp(&{)90?cB@QhNNSK%49#PD^+o(MgAEBfy z^i^XN*Xz_u+GF$)6ssJP;w7SwSMUhSQdD~KdmB!HvaBGb3;3+xj(XEwv&BPq56P=3 zD>zvl5wIEc71{Jw4o!(MiP@!=YvUbst>!Ewi>Qq7S&lTIE((a-yU;bY;=5>-W~G91 zWWdvz(`61553_Z%Bab<8qjaI+g&_Uit(+rG!cSI4L-`I60m52=c535MBl(D4E|MeJ zajg+60pG9~X9kS7I(w-F>cSoj+6Ub#v@tM0gFN~qg0d_|=fszeZqCt>h{ngJY4SbY z;v`-|_s5G~jq9n|xV$iWUo~y&{7y7d=&*L{{&IQoN~2l+Em3Q>(Bt87{*pDU(H^aF18xE5+N59aq`h@n8!}@m3MDflI|~@cm5nZqnux?eIsgWO($Fi zSFgIi;*6)a-sar_J7bwRr4_NK?R0(JQ-=G!V~q^EjQi7j!t2PDl2&8)DLS>~-mNvF zoJ8Y=Nv=Dp2K+_?Qi)xA5|f#?iKt}~E-K~^ zWjZS~Ye^xxqnmf^ecF{4obGdD<;D86E0u@6u@AXBoZcbQYBM?}E;1j`q^lH=KC2o1 z)`&+Y%;ua)ih42Qy{5z7dUohr_~=)B(U41hGHAA>-S!q6oB`*Y>PkyyIXPBaJZE{$^wTLeJ`<6nE|Mz^m$Vz>o8^iwlGcW$~>d*g#Z+HJb?ghHczfV826HhD&v@B65)g_hVF}VlsXmS@(D=;#^hW&ag%Dl#XBDWpafQS0tTuM3`Zrl( zhbzXUn%WDEnC_;O;2;y(LUJ3kaU|a;X6UDelZU2>M<4A8{(wa2JU!;%r~H<-|IGu< zoMiMQUeJq#_<@l-1zKD#NQpX4t)k6HRDg2m^w^ay8HYQb%((fBOa``f2P{Y%zqE?oMiee=QP%t5ZIVXTRCS@-P4YORk8-*PlZ zCzAZ_7VVZykVo(94YJ9JR^7%ATF%psZ0i1k-NS1$!j#{Srm@j23h|2JZ%@;&pwwJ$ z(x5eCP?4QgWmEI3NFHeE=F4awJfS?znSzw6i&fmCa1}-;Mk<{1pP0gbbXWAM)2ef` z;7riXG^9}-wZ_{-Ba+#7sTlbV%jk1f5|eqcK2lb!0WfXUuY{U z><7_C-MvVbSd9>A;x`?G!=H7m2fXd85;}|5D=m}~k(ho#!*4w_>?FJoJ3bf!Umv8&@s< zxFpfVFpqi5WYQ=hCs~KyH0rLeiKAbas!1C~jaG=Yk%rIux!qEk9~ua8&`C$iJZ5WI zb$>+b$aW*TiIyKR_H{bfn&HqAb033xe!sug=wNY~AD&KxSPbFISK{jF+lR4mE_5;m zZ49#K&!hY!t`F{08tl;fZr&s>W~DPItBTD@d&2N}hvnmjtuTkuS7n|GV&lb;>DQ|$UiPl`UN%;9_{^Q~NgXIfY(%;vHP3sJ4A zE`|9|A@&@5F*ZKZzBk7;Vned0cZ)~MOVWMw%uBu>%i^1NsqH~zJIgW zmAjt&X~06Mh>A?yDmPE~ymIu&7^-%L+I!=*i6c>$6!U}a-SH1`hY}}^YdWP`{D#KL zwe=cpEhamubagK$3))UrJ&5MTCVWxA5{Qi*puWy_G5LPlX) zGpFd{j8K&(`+Kl{qDkjCd~+xZl-)OeAqsOSp5aSF#>R&hTe1FfUbIIT!4qQazn>)? z;ki#%@RtodE5;F?g=GPM-NY>M{kd7+ht<+bd7i;-!!m~V9bqZgzX`<)A+a&Rk83^Z zfEf5;-E#2U8zWec9XvDmcnE=a}z*_Ag1-5YJ zc7*v~r-C1X9ma$u_XAZyp^-|)n!1q&PmA6;TKV6Cg zwjJ~Dua`axOMgG1HILv65@F(WfzRp|#Nzxn;VwWpXefi>eMz_99&5wGq{b9dg$a*I zl|5|nUvD=j1SP&1Nj9PruSg3s0zVzPu7Z~gN5{q?eJuq>wbjJTSTH8b0aWeH)8 zA)L`K>H5#T#|(imy?PHiQH=>q5|4qKbqym%oF#FI7=9o|D zKl2>s6T;O05UY!~zx--BYe!p5NKP*7z`91WX{=atpa1RO_KX4!Tg9qRt2mpcL5eNd0K`;mbp#U>R^$Ei7vLpG2Cu+tkOERc8b}8j;0?$GSs)wa08IRE zVV(!xfqYN^3PBMl1|^^rl!03ZsHFf3DP`5Z?lmHGAA7_IBgbDTTFyByFGS zB0QazwKn7z1zOOPtj~X|7E&o{*#U(ddJIC; zh%hGC1H?VF<+GcDI+C3U?7p=J2-Yp0f&rKJ%ExA7D7W5aQM^4BAxAsLb}vHlHtS?Z zNK$mChReeHlrK+Yb9c(_Pfjg(gw+n4%nho?5@bD}3_qsPn5kz(GB50%w9+#(UVs0@;H?tg z(zYPZH8lSZy!5GEZ9u`)#p5NFOfr0$O36} z{{@BXnJKSQP9GDK2vOSH*Zyd-B>V!;YGN^f$lP|Mp~op(LSuJJ4qnbJW`iry>*&LhTSN4 zpmKTNa9ZNCww~hZK9ZT9M;iALN@n zZ@9F!TN=5^SlU%s*^En&SYco7Uzk*s-IYHVym^{;_2j^jhcvP>O~hjC-|#DhQZA*K z_SiD1^`2+r>Gkj}@a0iWBK($m^XV+Vq0QI){RGF)^O2!e`yRzH!?WnCNefvLNuxzO zTwLx42u;!YiT)7#@zJ|Hvv)#QhjeCbaO@fDx!)iN=t9iAWV`uxhaE?3`RU{pjPmMu zY>xJ%I&|)om&8b{Fflv15-WBuHcu zqFf#aW6f^OM^#(qjHG#)F6gO-#@c>$kJ)1y;b`9Tv`In{_#PnMQ!jb36Cu6KG!o2o zV(O!@8eZPVuDUhjbg{GV(H37CTw$CzKZ8DDL~?)_n}C6NK{;`?3`Dm?$sHVA$hKUI z^B?GN=H}45%LgwSbja1TPJZc@lhX5#OD}cT{j_*CIjCWd5WZI8@A<3t)F1Vq8mRvM z9_l}TjvxE+T*}}7^LNyeOWKX#lG%S6pIDjw z+^bbtthc!#BF}#JBU;3bwL$Cl(5HENn|7j}hDCce=1dB&k2&hN=1ubV!(|>LM{9Nt z5b?Gyh1wHug`Y=HoIE8{#NZ))Q-$i>*rXtz@{vHTN`bUU7Sr4B3g0vv@w%>S;aMQ- zYhz+H)6#uy_G3qtu1=NcWx5-OUspPPBlzVrq47KSBO7nH6>o;DpdY-pirFL(e>F3I z!Ad}L(U#XqH-_dhuepHTkRMrCoT!E@USNEwI^8}&qOrff`>=-XmSI44m%f6R`AQJ# ziKT@`lB>VtYASZ)cXka<}5htwc6h-j zmKWo$^7{UeP%Uo0n@3j|&;6oZ9@w_k7-s7;n}z-RkHk;A&5e$41$3l{5<9n_uBW~D zxPbAr_UmMp8O{%>uw3og{sNfHrHYI+JiN>MO;u||n1b$lY$ZUaI|;(Q`| z_u{l(AXAjje7Z4eAlOSBW&avg(>|e0TGGe2S!$M`5Kg8@`fl6$#rV_Xx0MYG7tg*4 zB)>$6iy-II;Ef0x$Z)gJRl1(um)IQrekIQ6EmEe^=_M+9NU6(Z@iLwK4ne^ILU@Y# z(!J<&M-~Yu_!zh^(oPQXbKP}C&Rx__@WCFZs*pNB5U}ZZ2k+;0u3bxJ;@@*O?(msj zaERTsW;YMbDY98I;5861_>idgFtSg)(n#x0@#o6^=3vXw{13630b`Yd^ERw|OkH!T z1%9LSzJvbH811(2EN^v)XxLPLP8L(E-@y&{%w}LxTxm$84<8S(x%$EMv~gq&u0(l< zQ-5V$Q0^j;;&y4_sCobLhMBMVjcs=!-gkPH5pphzWNugY<8pG=GYiZ53g&G!d>S^j zqJ=&0M(8O_Gbv2VFO0{Xywrwg=bo|WKDMaqeS!kX8oWN_?X-JyNV~ux^_`CNruQ2r zHrmqb+UC!9-eS`dZtlGA-@BNC3Ts1m=PTqZU(~osyt=NUp6krabSJhrLC<8YE%#Qlt~JWUz(G{X$?m+N(8yQe7SkY;scSbc z(ZJ1?P0G3(%Kkod`78V(p5y6-yuJ1uxjA+-=T2Tu^jcQMnntl)B*;+cwd=cznX|6Tq}NtwIv%K;Wv9pUF2!S_ z3B!GZT9aQ{zAvgeo=sW5C3U&1EWx-+k8-v3?!zW@{rL+7Gt6TH)dP{J@-b~BSMb;V zC|5@tZL_P_jRLuPxbwt0*b@o zb%OYEZM3U0iRtE$f=yBI2e-i)PAs7gB}b=3n|?H%_FS3k{qJxHZQOS< z?7k8aZ8bWpG6wNUc3mRdsdI@Rd(q!)Aj)gi=c4A3UB>VejfI#tkY7zd&i|SJ=J{Xf zxA#9`(LtK%0bGjyRR32lTzeM((*JbfH$H(K^ZnbHcp3hM_&-AY)Zd!{G2g$9X|? z*A-rxPBN>aohszXLiZYTr!Ki~#Cby5r<7c1R37_0 z+wY7%clSHR`1U`vs#xF_*ZSw0YtHU$bTB6~653E5O!3JH%jw*1!HoP1Scr%be~vAb zO?@!jQdsuY@P7O3^2Rc^yFO_tsK{XMoLK3$B+C?BV|qm}ko(c3bQS&y%4&}3#CZ{!p$BtDx&;Q0*mP+C6FE;i&>vfC}|XW6*s8oqMlN&cC`1HU^X|xVc-V( zkj%GtUVbpQeA3=3c$WTyLe=Yg%T8K%Y9A?3zogbg#P(}M=b9dR!B)spI6dI$~SWy zrP-9G2p`Wqa}>1aC>IK3x2uZQw;Cz-Ox&EB92PemNv}jZqS}?=9wym_mXss|0W%;= ztZt)!I`U0}bJy%+qn~Dx2)@PYsXNUQxT3mua(ujVJI;kGqj1Tp99-tVei;vcP$ye0 z?YSuJtkyrt+tk_Vj3;U#4p4v$=LYT8}{- zR*ZXFtsMTasCh8fSTMY7L015FbH5&zKG53O5Wl{jM!?<3=`GOF7ji6Gc9y!$F-+m3 z8=Gb`iHp%*5o2GApm2e9=yVlCTTp%)o+UlkGInI!@J?gteXhQHBQ!d;OO{TdRFp~hi@HR{D~V!(uTmPXd~lF(@uC>+7ZS3;t8+UDpXA?aA%Q1zh8iD2D$V@!z9A5(cLCp|7YJE`Rk^XxF;jcgLloT+#ldl zJiAZl+!5A1fx@;fdjpxlr6l3P`hw(=6+82!gzC2N`ArT?L&FU>ksV7HR$x&AYKB3@xHm}%t>vFxWjl-`(F_A zwpBJRa*_Zo#2z*ZL5?NVXgsSBvR~JTI;+}_a@J+c&-1hHNRIuW+!%!~^a@81i$#``h`5Icjfq2Zah}7@x zz7rS~9+JGFP&Sq(zLY#gIs7pS7BBHs87>z^W2m~LjhyD!lBliDc`FH<6&%e3{$q4R7 z*#sHw1O{#$xQFOA^uS_x9vfdu)L5ov3s=_3>+H|#c6zc*X=@){F4IXuO%yZ}{=CR% zgdag}6!{~(tF8qP^LPlOHrI07#cQDd)H!epyMe1#ueV6kV*7|PUo9pkQHK*#RkQRp zR!g$$pxjKleDr!r9LgX%dva2*HLI#>aCJo-pj$eO%haI6dT?vjqtAWxVxGUg26~o6DnNQ8|w1N8z21I4_bOIq)$8M z2+E=+dyoG#TsE{9@2_d`T|ax_(;QHw`OW*P$CGLhw$W4`<|QY36#S8Sw2lS5lciD!6x-B23gi?Kz!7PzE!9a6@m-tg!nW^KGdm8w@gh%HR{Top0}~KUaW%o zb05m%Pj6fqKZs}=&25@JLoNH*U_{(!SFL$lsbrowGtrv_^U#gaQ7o|FP%mhfz5jM^ zxRktIE1!j(so<$ZftT!eqlcl2R=mra@`Ca*Tbhc!*4v9r&AB9n;vo5LJ}zt)PuXCk zG7P`3{l^-;nDAopLSsU#opvksyaak1o_!X(nO%;qLgm0=PxbYSw>IvQMc*=zR(W%E zPWS@^`-r{-y*1o6#RK0j)c0-|aEf=+=zBfNvHiM+A9bt2+wF2x-QHCKWsVbs?T$^G z`0btQvbj>U^nUhmoGab!-ss98J7PiEXQ-OE1xMIaY_}S%jFz@a*s$$WxJG>xZ0ZQ{ zW8ZvH>!We{`;^4cZ1%~?TpZ$JsQI*Kvsp66K14BTE+RlveXxXY+^~F_&g8d&Z)ZZSn>AFYFNgz(l@QfKh=esr;`{RCV1dYkLQvpJJQG- zIqEs$ZcSBXqcuk&k#`zi4P2A_E^M!rO7|JH;Z5jqml}~u4qdJq5&wo7pLieZ)V^eM zWmkD}Ji-IvuQqqu!mzf2p%pl;2yZIed5h`}Bx$C#{H$F`764_)P%3>h{+B_g>|_<& z#VnU{bJ4^uM{O(Ow3dg5cvrTOR^v}n3}$`1KNmQ9w(!fX)|wSN>SRYm%%PKJM%-I) zt3Sb!fny1Db+-yOL%!`@@`w&=c;jiWLwV5Bq1DWardG6{)ffq@&ODR}r;5C$|KT|G zC3lo#m4sy3wLDOtcMvHw{=D|Rfr%a23C;M{P z15v5zN-1!7Rhl`LZ)FgIBd1MD*X#`0X59Mj{q*FH*UE`TIr^0mLAc>v(DANk0<0Y% z7v@DhciNw#eX!-dsmT0mIysb#UB=0KKhuS?`+ASrOSxvomK^X$-Io#?VdnUB&^p=m zMuP3=2D>zWXbSI1OXJSrS-b;(qEOgWo=NDfs5>&SUIM*46J}Vu+1_J*Poi9M+$U9X z-d{ZPs^?#xk$8G|!g?w@=Gk$|G;uk_f))wS>8-G=y;9^1Xzkd84e_H=9#-IMX;}5L=TtEEb{NY9O_R9bkfDK#$ zt^zo~HQ+jM1Hc7t0(byEKmgnVF7i)^!1Xpj43Ge%02x3IPymzw6+jK#0cZePfDX6| z&;twrBftbO11!KjfE8c^F2>;iS5ANn;0Epk4}gaN55NoX0sMdfAP5Kn!hi@M3Wx#X zfCTUekOZWF$G{Un8jt~G0Xg7e+^68G06+mnKnYL=o&zd?Dxe0u0Mr2uKoigcv;iGJ z7tjOr0RzAgcnKH*uK;7UR10#3k1 zKOPsr6>tOG0S~|v@B+Mnw*WR4HqI4nY{;d{&Hxr6_LaL2t`bSA;27E7rhn*jjaVu& zy{z>*1CQzs$t%0T8>Ec9vrH&5atcajmV2yheEb4}Lc))qNXy8|$v^#X?wbSLiDi=+J>}HbrgMMX|@wlbr9_e>oD>s607Lfrrx!;mTxLsIp)U-bs|+PVkt**>M|J-`Ch^8^)(})bR>|663CXZG%LST*{|T=WYN~8W7n>;CZ`3TG&dz8ol4bw9EYq1 z8$_9P@SbvrH+7{=fB{jGW`Mhxj>~rDXZ|3kf;OqXC9Kfh;PLm})TRwhBKqZUUUNPL zs*fcbxe?#O&8da&A2Rr@>OA$=Qd2j%Lsfq4-TtwiL?&BXB{Vul73L}eR+&!nq)Zdt zm(v4PYEllfe3E`>zVlE)uftq3pgPt8h-u`5AiD51Dj~`T_h#PC+J103L2w|OTG~K& zDHn~cE<}e0TsR>1u>X;vE8?=Y-mIpL;0F@M{n@}`W%@yWwR{$5l8p08@%)V1?Lcry z&|#WZSD7g&R%c3?O=~$Q)4>YMx9HM}BnDbmgeguV>K@8YHWptnaNr<$l~IE}26ZJbgM zk;{=EO}44bD0VBes#`j3cEul|U30Y1xrc!x8(cP(lWNc47*4U|cuLY#7)O@KFguz4 zq6|JJ)n$Nq``w3iaRF4zI}BD~*SThUd|l#+EG^?uA#o)Ja<}EiNsZ1R&5>+v)i9S# znA;$))6r+CaQMQJx{=?0iQ%kan~N8fH%xz^K)GZ+v3~$rS|t+m!u1-t`i;gb)TnKP ztO`M;n8_lL#gkfa!q`lD?j$O>5X%bBCElhnV-*k6mzUKTKgvistT5}t<$eeDGv9d$ z{SZ}oMLSp3m2O`yRGhG#TW5CG*Ma`3H?u%(yvE*Gi6X$TbBCYfkBT}vAkAxcUTJ-G z7cP^j$1m!U!&y33oNN6h6PV{z z{z{pB&~R;0=IYeFU7Xa@axH#u2Q_l6+!93-Q8*u0HjahC$&tK!y?N!hnwu-}s$K01 z%?Qq>$zxrw!}=P}eR1tkBR^d<1xiE%ienz#O}}a|HxWc1lt^8MZ6c}4bFkFhvNKha z4xPfPsoNPjtgyhP2xqR)FT0F$_YuSq`~kKjH9K&rP9rvBLR5ycHPmdZUuwL1Y&1@H zbJ?a;vRh}(LnPPo&;XAgiHLF};jSIOLKuk=d4xsn?$~cXSJp=y^hMW5$Th;K^Wy3?px?S z{eYpa`KQ9sQ{QzKD6)de!h#8U)ot7D+%<=VuV(Ri(j!s!)vxg%K4_&VjT66y5gGDg znO;w9+EwJ0KuQNNI)*#8ea3GhzpSit($zc4Q5;1Kp$~sjScHWp6iU?W;)J zrObjx;+HPS_1=+Vpc@)|L{1suQ>m|G_;9OjYPQKFNcT86*d{O$ucMH$-mx<3-i;Cz zE1erw@anz7<#>B;6Z}pw3Hj<_hU+#&U74R$g6pJ7IBN=d<)yX%daLsH_1~L6N&Yp> zKi7YMSpWUG=l@#oU|PcQ*$Ex8*zCT-iM5kpi_elb3n}*QX!$DGM#R&GLj%AMw8iyp zn|(BQBdcSs&OnJopfy+Gt`Ig^VZ$QiW<4g5vr7!mvHiMEmROc?Zow~zNUEb=JDyB# zc|NbY`XA55dc(%sQkoD-d7Gn?{cj57-nU2vURrYHRpBbUNw>P;(xL&aAv&hu83 zrygSJ!zS<0&Fl%rSD$<7m|Hr|ubY4ne({!^m6AldiuEFv@)v!~tb3ThN>KX;=4gB4!|ieH}TVn-zZz> znT9~w-i#sNd9fgyavoF>yWLRLVS$oeJx;c9_cG4Axba@X7|x_fbP4F(MD#zbj>wbE z*M0vHGDPos-hHy82~1h3aM7f>%z!Tq#_uq9~3HKc#oy7z3lZjVOz6p?ick4pAa z@w`D1Lm!1Ub#&WcK8sK*IP_ooW4A%s@5I?pf19^&@|6OWYj%^LRJbGQoF-#6fATYDHaf{jw<<1-3fLQMP8>TX(sH?8BBePS4m zZ}D8Am}^V1=Gyr#DbCH<7_$B0(~`JUSwD;*TE!^CC9v(N#SBHyA9)yCQ8QA4)%q%m z~9+Z18 z+I(eni4U+M-D|5augcPtSWOImrO32hKhb9E?>I9rB3zC2+KO%w#5cGJ&LA5tJAQS) zAPd3!h!?7Q2|D~FS zsv&NTthTm3Qi}ITt#P1|NNUSY4ieqnD>c@Dc^qn%O=Y2^N+-z zB>uqsf7$%Q^LNTWp$8!%aEtmk<^QmQ`%Z=5@?UuWPUAEDAB_JDj9>oS_6&PRcxAFP^PUBykA^ls&4+i5m{FeXo&;GOj_5QOU{;)&<_ExS%5YZB(5n1@@ z5-gs*on%RBIc=~=1F;;6+ollf@kl zDtNmuNZ=rlG#IpM6WNF*p zxbQ8XEO+54pPHU@OYWR?mB&52X3e7eo=!U29QL+nz4oo7;A-R=JByNh6{nbDtd=~h z7k0MOmqH%z}p|$0Hu&Ol|W^APnOA@EAyUwR1)VRvMh-NpqO!NYJ;?^ zX%b3JryRZyPWew!H2k=lvBa*um`D*N3n|m<+Vp!XH=sxR^ne()LhekFZ(C*?&+k__ z@A{knpU)5Eoi6R9nMg^0hty^#WVZqn)!`$^9%++S%xVx4PYt zjraP=*rECE-pwZC7|$(Dn(FO6!!U%yz=v~s7iHc0GW5#bAsZ6`x8~HtSvuq8dq3rs z#9xZcRc~`dw@#CZ8cGC<-pxZtO?Oc07YV)o;gLf6< ze9vrlaZ~Cb$mba^+%8*g3>Q5g;^S*NkS|_3Tt~Ik@yv1Jd^x{285u`sMzH~1nUt8V&bP6SRG!lfGQO5KNdF=1eQ$IhDRy*A0QGY9{c3Og zgD?>t-4#)J_Aj9UB0`ag5B$|%dU@G@rhTPcY`K?Ex3|l_2bPA+OVx{74lA8QWV_!b6~!zMLD4(s~-M47D68(mab;819E_(SLy-n;{$ zWz-8D_5P~tg;d7KCpAts_B7&Ov2Lj|N{MezafVOIm3r*JgKRTaIV~LBknh46T9Rk{ z{03cFe15oJnr1wPx9m7;o+F!^caDO%D&@9c@0HMnlV{6Do9oXAClirKcIy#5-Pu}7 znaUjzEP&Y+6Ro%!25}s`H_>)9-#=5D)Asn79rE;N332T1Ad?0D=9nm9?X5?G%uQHr z!rmQX0_{l8dZ-RwZH*jEv@qrBng!wK0xaRlJdf8VUvOJRZ+sRfL2nqJv-hRq%VHFY zYbB1ha+L!mZVhi?BpYcJaBa@%tD^1RS*&KC>7Ra-BJ|fDZA{~nl`ORdO%o!(&%h+fV!dWtiqnzq za4AN4&b`T#cl9Rxv%*akMmrKV-D{aF*gmNVd~10Px9+W6WxsAgayv)(YmXzbigwZ! zVwFe#)?eS#gQ?{I;BirT2Et+Hhy26o@83_d|8-u=MScp&#jCBfU_bxx>Wj1Pt{|V~ z;uQX0zvJR`IqAha_!V*gc=8+em$TxIe|Yu9=fCI$2GPaf{W1T=9-J-zm%0Xj%$VW* z*Zh~9Kgs%$@&B^*<3HCA|DV--NJi9(O6j{be#kVk}LDUa8~-m|aJ674!>V^!`px0u%NNWoY2Uz#%z)IjcxEjW_T7lUM# zomlghaZn~72?x6xdy9wf_Ug^H%*2FNpX81B*JakX^lo~Y-!+IC2j^y|MOcn`EeExo zX;=q~xsY&AonET!Sfl%2-vrOeP{rO?vXiBA&fq3q8HN&M%NA;j=cT!QwZ8RDaA4xQ z+Y38|vRqOAx)c;nw+1+eD{+=h|(YmTbR$MIM6Vqb-m8(<@*ouABpg9m5PxxGuX|pic zGm0zC8t0BTGnvCR=bWd07ivkm!2RR({P^YO&fq5GrR>I!Kt)s?$9jt8Fa zNY!+EzmHl;RBxm#N1L+lpT6^Xkv*Oub71vS=%6(7USaxs2chCoU6k_vO(jafR0Esx zZ8YER1Ule5ExtZR810(rV*JcSoK4qKV`;gsDw1n+Qtx=1=YzPa&;qC~RWZlOpi;YI z)72UNea&4R<=Kdc+hMRt91(m7!C`!vKVRipDDBpQEEdUgY%T%OG4XMWT-X5BDT&~2 z-F|iOv`IH~yQJw*TyfZR$F$;9-b1hv?QBBQ^#1b*DYOtO5P-!pmP{uSbGa`vE$?dW z9jf*>$}@Sq{oWn?iDqH+qtBwXC1;n@bWfkxa!`Q$iJ5jBCw_myHTLZrttjz?0!uvD zS(4+Ss*j&QVxRBRnVB~eSIH%&vZ)8VdLOtkH7Kqu9NC^9S^F!ns5QjI6*n*rjY^xx zv@}c?{@B?LoW`$ICiD6+O}6cLMtMiNXsdG16k)sdf|=RWWPsxMb{eXbV^~vhXR0Mr zK2sVe=(Wu)8*!@9{iPas5t!CrpFT0;%G@^Dt^IOPT4>|(V2+i+IZ)fC(l6GSp@5oP z?uzUkqL(h`5?|rM1VJ;^;S>iCc(U7`BCe_>Fxdu-M=i#v4t>DdXa7!etSnyt2&BD7H^)TPDP>7+a7?Yb7Xgdy?Mi(L$r z(-f-r!PScA?e`@lf6=4f4<~L~9I44>FH%8%I2MemiiJk^6*8 zN&m~1;8Ce3`u5DEW~;$9cTY>=suAmLrp73w5O%7Z6(l?G=9^E+w%>)ipu@!)DbG0h za)n_Y^)y_RVLDoC-v`Dj6F0r8#fXCMmEJ#W`#o#+;+h8)#!s4K=YbYz>00u47ip?+ zgd7usG}^#fZ~tcU9n*ZK^RS$=@Y%WDN4MoxDQ`!WWj=U;?epQ2LrF>SJ*>Y5uD=i%LDeSIx2icdLYpj+v0*AY$a^@9`tiKgs<6_pTq~17ZQbfFJM< z@CO2bK;S(P1YG1Egn(-(5C((;5x@r^5{Lq#ffyhbhy&t*k3a&D2qXc?Knjowqye9R zbRYxB1hRmOv2wsQ7svzhfdZfqC<2Os5}*|L43q)oKm||`rj)0=j`7;49Dz^a0<1e&9PW0Q>+3fgxZR7y(8BIDi0t0%HIY z7zZYRNni??24;X+;9}f)a9sezKxwWea9svgfK^}(SO+$MO<)Vy26g}xunX(~`@jKk z2pj=u;21aoP5}&X2Al)GfQvFZ;w!{y8BGa!iNR_pcs1EKh^1QP1y?%rABFTg4 zFIgVEe_NV|-#h<+!1qDHQPDB6aq%A$5;HQhvU76t@(arU*Hu<#|Fz5tYIkq{;P422 zeDbT~qCY6srQaVHKdqoF+GQ;4D_3#;C!L>aoS(Dl5-|)o=h$(Iu(ckREz$c*JXEAA zTa$6k^MrNGo^=zq>sd#@-#RThZkk`CK(& ze6O`~bToEfsT-?%)>ud__DQmi(iXDHu_bbH&_E>fe8}rg4ctR5*Cq83k5ZpqH~!h% zBGvkjG0bC3FSCs&zO{2aI`#~cXW1nCv;uM=!b9d1@+$jaq`D?GiT6wrvclyaSJXU?R=tV#`>xZpRi$f)<-e@R}KHVBGrYSX;#+^7=V}Fkl=!&?CmeHag zag0cX8o6Z*A)&?9%UQ*X3^3)xq{|tIb0H7|BY2e<&_WFJG><=QyJr&9hedsz>{W88 z-##QY*0&82TddfynK`l=CxDB)ryg8=QY_{uqR_BnWjxL6%Xh#R;{na`i>T^OJMy;$ z2`U<#3eR^sL)Tb7H;x#|r(11C;wus4t#(?`zH7$D_M4sLAOyV@I?c>GxlHOxd6%Zy ztHJ{$h*pR4OzNZvn&cAC-i4A_--_NglyHfj?LUm2J9}ecaNGTiQuf`?EV4r42NB#y zA60~JDY!-G48*t9cNRBw?77fy!3Ad{zwKBWin^#e6YOXH*!!_x9Lr`GA;8yc##=c0 z?pR27PvP01kn~NxT-IKL z!&N?5ox795)^PrwY0Zvbch~Tob%;^UO7!X!&!|a?%@$X}>#88%ux~#2TbI7z(D}Od zi>RTs=M8bDF;C*<$_5WOSq#gnKP#k2ZFDjcc3RR~=)pt+r;hEDXAnbtc#Fxx{#kIu z^(9HR7{{*^IHe4URSEF%SlyBnjJWrt3^!wYjU%f*tY8R(P*7|-wsAh9y$_`&IB1aL ztWcB|9J-~4p_2ZMZryVMsblQjm7now|t$c{nqw(1S~Mi!gzdH3|q z5}e*>{{^YgjCYBb3NR$Jv^k5}(ph?3Ytc}#M`M5XaqMKvCV$=FU~U^{99=#|94G%W zj)GJx$ER0Va7B`&AMCJw9%)&zfP3#eDD**EK%q1lOF2_vlb}YEGTB865WxwyJZKBo za(7>RE~Xo+7CdeZ1$kc;10p>NPh z&se=>?&iSnv_?c8L!Y++`BHem<1qvyQ{uX>VkAxcg7V)6jxK)vUk@JrYy743pZO#I zoPYn@^G6%K_U1Xa{874{NP}Y29T!9C!MPEd4K`Zt?KtB->${(cAw01g_?G=Go7c0( zI~`7zqVv)AeZ%;rkd`n4B+Lg=Ze@C0-pfx-`_Wdv6i4T4-qfl@HDHAGilQ7$b&ui2++w%5G8#xQ?xvR<()#o=p!euq%A-+yn z;TU*z3Mzopxclgwba?*`*nBxQ4&GAXT-pHpLrb?QIHLF$vvz>|zd-R?9($3jD*>7N!yaY)am#P+(yN@zf2)}F}q z+Ync;;{hvm?(5KVew1mv*aa(v%J}iFINtM;}-R0@^Gf*xoUP{F`pYt}CV69SS zHs0%cnoVg}5iOTZgBRitcYeC~JY=nizIO?-e1x%kgt531AO8M*1O?jsxZBEmCCX#j zX@X#SZ-7>(FHYi{&49!rCPF)-(RW=H6(11Ez11k0Zh2UyuiI)1v#_C;!;a=~#p!=} zZNe?wHu#`W+hg5j`m~)l*{UQ#C1o?||m;)%d*CuS6uN zeAAVI4EH2GP%G>YX~(9zRl*lN6iTMi5l%4lcBsnowduDJ>yp2Gaq0b5d*pW7(*rg( zmf&Jl(Wtnzo#}<?%E<>&O{PE-3f2jN$W>@w~9JH2kp6)t?FMJ z5Vs7&p@psnOS^}xM2z9HCND2Xx%1=HuCODD=I@Wo1Qz6xaQzS==#7hxvh1-9QBG9a z_$?6ed;B2iPZB@)x94XC{!aM^%-{wM+{XS*`5)Qf-ZS>M{0G6m)A$!-Up)SDr})45 zPX`$P*>B?u{hh|Ys89U2j=u=TPx!6=%zX&Y|K_Xx&z}bMXZ|woU%vUj@%z69?)#a3 z`~GRcef5=pxzGN6pnr3p4LWRG!os?YjdkVXoCxHSCwLx$O?ZXq?gPoIxBnSG_=lc< z$uG2wJ7JD>&zr0ZANo#KoABlPh%`qx?IVk<@$%c2Y}>CUNdjj|$yb{tcB)h6@a|42 z3ZF%KNT?HE0R8u}Laa%6lf&JDT!*La())Z{pFFaF;c9=Xw7|garPc%@25s&O(fye!_~3ZDONVRi}r=@NEsW;@nThI2Wl^=Z66`F|qUI5qvLGmeJ}VgYPX#&aWsikV}B;QdQ;rF8{th11P zJY%WRDqMY;^An`%w545HBs(OJ$6w7SmYU{Z0s|Z3^Y%F>7~0@9yp4`fi|!O2t%}|3 z@1Jp<*Ap_SG5r#j#e%@X%3&YokT6Mute(@>4U!H&PkNeaZhFdb68b&z5xKBZ& z9U(nLHQHJJ$2rA1nHPQK&cWvBH>XW1150EwLi0^W1@`Mlv%WhDM!LzGf~hyrHjdeA z!bvVpyW@^S6Y{gQ2l5)YVLxqnHfH9{w|8e=o~XA!Z0~~Au5YcwHr;dT>L(rH$V|2b zey-=C#++iCLe))0!wc1M?o7~?Bk}0rIGEbwvZyl#g*w>a5~ym+9(%<%bzZ2o^d`D9 zdwj)!Vdq;l(s(Mq;R7#!4{rIf;ty&wn%I53`mSo!H7O3sN0PLYxZw{r4U|y=uh59r zV!C6m$@{+`J)DLDO4eJ`@Z6uHxnv~$rI-ibrqG?6l{vT2#yal>TWu=tVU+td8gDxr z3AEGVtsWubawvG+U2>{Y7a!4eT+&dT&UU-n z0seSlb#cAh-$^;L?i1<4CMys7jMt!(45uOcrC4aQT=`k$+vC~>=5D5GoQsX+OkJt7 zL4=i(F_>W6(@wDy&E~tkew$h^i*IiOLpIDR!2F z_#}uePU0#oa>pK<*@!-ki~7nS^7Kb?%G!enmV;7VNq;P4%)L7h;wqxpL*92nj@G}g z%zmHF{`2ea>$gXLlJ(o)d;jO3^Y=e;{%-7^ljtlg#rBZjkq9&zHf^YcFC^>rkyP}q zk%%jE!J$h}Ov%~( z#WCSRMR*E_@jv(?E?FYCeE1fV`9I4FTe<~A@*wvf%JjABZ{W^fYC3K$CdDCI?45y6 ziZpO{O4N2~=UkWWS66nfUy1hiGjtOx$hSoH$N57KlTJTw(oNj<2!urc&`k7DJp1He zcvW%^O7+0exyXXlR6aYnSH2i#`kI+30pUMkd%P=cRh?juGMx4D5j}b^W}rW=JJs+$ zBO@+uUTQy1t=lm(tmFZ4aNIhrr+z}V0uBX(c@Kui zpheoTn?mPSDE;}JhLx=r((e?DKiy(kG~}D1lZJ|_A*VxfJDgaDE+br=HZaGYN(IJv znI!pBjYP!l3AxwLa}Ov%?817T#b+|b)+Vc{FZED?LLwV22??{i zIxl7g;nC4iwl?aSDj~YfA9N;;_d1%1L3S;7kdrtCiaCTPV$OwTS(P&M_E|>fsAxX_ z+gi3a!n<|fuXTCOe@T@8(RlmQYBAe)7{|-Ey>IZb`bfChJs93flf0B3h>P8uf7E*}miT|jx^{XbQC^6~Bpt^I_s;ueh z$D)qN*3I|%-L zX2yR$^Zv`T|8F-ULy-Gv1bGEME_zD+br$GF$12K;mp|V2`ePR8MGdrzJdc0>o{P-U zi@uDINZ#~6W`;O`&u#)f{(6LqzC;%t93cf=?f>zs|D$}?i@rp^uOGtxB=yt&?fIii zAQk}b=OI`CHgE;F3g7@2c?s9S^#*_o+yw9de1HJB1rP#6z-@pSAOT1LGJqVQ04M>F z=?$Rx|W`H?h0ayZ1zzTo?)_@K0 z2CxO}fQ!%L0IrUJ6W|QE0Iq-=;0|~Io`4tN4ZH>Z8UOh+*FVW$JLwGf$J3B$0*;RZle@mBveEmfxOZnaJ zgo70t!3&N9APHsmXBch|m)_;gNB_b?%d-YeCNg{ifj(+zJBNAR!BwZ;kh z2u^g1;zP&w#SA!YlmoU%38;hbXgTAgm&TpbYfEOJbyY}l4_`D5@~PK_QyeiiYgIqk z!V1lIYVGneHbCu|1nuxgM=76hc%NL$+7zsT1(YgT3RoXatcn`V78+8x=&JwNej!$p zZgsdtka^Q=XWft)b5GHDjwRgV&WxDl_49$9A%!3t^bpM z@xAN$JGns~k8@n2+op+LRfRm>8QC?|OCMaSgiab9KDTeNr_MOJbxn^Zw$5fwM47-P z`tS|PpwtewFUOk{;<~-~RcoT72a9GR((pBxUk(!{zAqP9yz!}U;+p2Smu|j4zm`yS zG*cnA`B<$sIIO0nBYICo$?mtodp?zH+&%X5-1^zA1RXpFIqE`ps@A7OOLGTwQ-yoh zScSt2mWGfPj(kjx-qBSJX@c@4<1Q5{XE~1gA|BOb!W^7755i)e`3hY<=%G;amE01_ zajCw;AV2&IVtQt%>pR8C`trKFz5OlL&ob|D1Q+aF#1HmKrUOJR?u2c?znUHmGpc;G zGJf}16w26;DZ%CR5mQAWYAwEh?4V3G?P52s&^)wR%2HG7|E;{+3Wg-Sg`by|EWR7-F5gR}nwR9IV~Dih^sKjbLe%@G7SFzD9L@=!>vDPA z%3)~xA^h55rwey$O1(@NXwyQ%7jqJWq{%H3)*fd*Hk}wuDG-TXym9jIq)mtyUL8g% z*tQ9lqBx)K6fRG4E29Hocf>5&+N;R(E%BtmrbFME@Ckeu zCZXs5^QYeUmpyUYc-3J11vdOe(N~oi`MESAm%=%gggJd-gkpX5P^e0FQFc3PiaZOQ z@lZuJf=>d^WxmZVE)0ryn2U|LOyxR}A-?Xc7Imo$>o!_*NUi=0?@Vb`vv5nQKZEvwK>@U8;peeC-Xy6ofw%Zh3tAK^N}4n{Y(~$QkxyJz=429 z0h3q#jqOC;wMSn-)H~!IWnAEJK3gpP%r^8qP*$2)QwUD1A`SVAE`M5~=k}W*=Xr@n z9Q_~@-J-52V_^-mVTkxjq%$GAFD_N#GqE@7V2KCzi`jn3#QmpOxB{;VCo3L+76NqMJN+kB;j3@=Z@1oHR=(E5+=( zSHV3MD6y20n$^4fP&3;@d!{}%j=+~5=>rTn&B8Qn!|QH#TG{J{$l|1A&ent{uzjnU zQ9*f&S0r+L4tP<~bhshxPJb7i?vSu$%;g^EtWa zsT+qrUFdVimq;pxg1@SH>*%1se?( zb!s5I0wZ5|ERH`~#VI}~M9EH(>+90vIFZ+J%Z)}_I;BJ>%KB^43(YQJnM~UE8p@wn zO7p}T-z0_fKUPa5jh&RA+!NO-(-6I>DVeh};8tkeOsHFU#9799u-tlVC$2~I##MZD z_`p?Xb$T02t%2*6$8|au$75c2(>vlN8O@+_X-$#GL--co09w}C3UiP1qrNUz;d0q5 zqxK^YRuk!%S=&0f{nE_hWraM3M4oyfV&SysGSc?FTwLEa-;In8su>OzV`S4Ug%y$8 zRn65=aP#6Sq4MED1*j5_22{|=GXH0 z@@#=v3_b=)wlkA7OG_d_9DAa!tn@u=eP2aydCK!;8t3Y+_T8(I^3{AOu2*I%CjV6w zA?DFmLXV$3RN;)_%*oXtW6OM3P%s=_uK`C+PHig=Bv%duJiutfnWYh1yyH-PGFh8_ z-ms3)mmgk7ulfzct2ez(B#quwjJquBRHyJ%YpL>@^t858hvPZP&Q|Bn(%xDVj`z`( z9{Myg^uX1`)%@J>qd$t?)#|>S{Rdeijq?GN#JP7P>o3S#gak(4PL@!Ia3K__U*bG) zJ+M&1LfE3O;puXm%if`T?asCj-`NxNyiT*i9pO30s=8}~;y)?gNUrWK+6h5WhLYwI zyI8|5>qv<+Y|SerXu~x4S;b1MZnwe4_to^@_qqP+iu0e&rN7UgtDxoipP_y} zIYb=m5OW>TvgMUE&2@{Ar9Q>t4Jc!-=1IB*@#=rSn{teGRVEk8Ld`6H; zbMfH)2aInI#=nR)T|E97|M}C#fA*9kY$C$b2tilegb0;ikfD6`q#cAm-!!G+SL4}D zDiwr{ap<>0q)Aph5!jK?E4VD>+siY|=mwweUVVh#L{WQ>e9iY>eGzLs`{E>aGN2+? zIu~uMJ;W3>H8-z>lBpq0ph&?kyjfOOUlTc|AwS}8R~x;gx5035Z{$rnX#>OYiG%tx zy}9j%@#O_j|HHQ4KjnM0x4p5a4QI+`W!TL_1Yt}REAfY(URMq5TapWe>PM%DAN4fx zJG;|uUfgA$8;7elFU`SAI2}1b*Q00UP1SMtmQS%?v3}BBO~53{^I%7I>CAK)i!f=F z&Fg!&CU#ZKLDeJLRQ{j#t_2*b?d|W5N~kDA6cwQ&M-i1wLXtG4LMR=#$SsvzvrD;$ z5aP&)MDF*=C39SI*F@zuMHAJeWG1&^#?1Fl=im8q&j0zo@BGjAJe|(dexBd#!CGtY zS!2KJUGML`bYt&&WOm3re*Zp)=3s9t)82|*y6#xlVzTuvv4I~{?T_rb+Nsd@jLjx1u0k6VNdcBm^1d81 zza51x_cBa6dyCJNOwL%0l_7<_q&wjT^PH>j$A~vzzB(~f16yK)fje$0P8Po9 zEYqommlZwf5#!ngPZd;tcKaAN94qEjh2v8T=1Qq`G+k0Kx!Nv1vN_J^M0G^FB-McX zIgNBoa$JGPM$(K*)TTyH++n2dONlFLTc=x0$bCmsCk_NwD+Y_<>+>Z0O_&&(!Eg*Q zNQEc44Bwt>9d6S5dRK0?;KJJinkxhxfHvK$?W_@@tg4ER4(PX#;!W*8 zI4e7pNyqM%E-DggQId|rN+;xjzc}B^xEVng2$Xpd0u?pF+I19jpS-`!SbzB`o{nBa zYy9YGY($&%05S=!DQ6=CZsQ_M!CG>}Ri+3n%e0Cna>ecW56xJ9BCq+77to8v0k6BS zEF79+DIC6yj7<|V-l!;Icy8^o*o?6=?@Pnvk8OQWk^YLMJ4+wn)ILNSJj2PH**FC?DTK^74nVn zS8~A4e5t>DU%$TD^^38&Mq@dZOmzuJ!Y-nm)t8C1k&kLiBUMzCR64e{9*EL|N8Rfw zxb&Z_#f)vBqp*8i*3Wd#S69k#q`LbDps%^pB_DRIZ)bH(=A1M%Cmu?Q5%YbhG1PNT z?v!cZ#j(&H1!te_sR4l!KJ6Z^YyJ9HsgB$+*{kEfI($OZQ1pd>gF9;p4orTJ@_;yJ z3Ynp_@=>BdQ>Iq-GjqH03&T~nHg?37b{!O77ygL5_g3Vkq0Hq2TC%Yr!mx!oOQY)> zVV9i37x3i`Z%rESWa%Xb^qLGVU9iU9(xN2)0BuorbEZ`@{=>lh9k(kI7-DF1)j&5J zAup#AXLwnXz$573*@$>%`JFiOO7VRaPoMyEverp^KB6+NyK}feSYPRvtI-$v5!*^D zZR*+=ojEBug9ORN7jng;?YH+n=;)i+>eHBWL~1JZm+bj7l*3A^Hp#>mkV%jkzApA{ zGS7I{y%GTxf`(dK-B})=8}9Q*B~MlA749s^i@S!NkB7So?S9NUGATiTEOx{Ilwu4% zDlA?F0{yup^(y@&%OB+j`IBJjt}{*VegQ#DJ8}xlHGD|dMyEP7^lT%q z*Ou>Ya$Fc4z70F9=mi5u{5r5VLzhy%C7#;Z_n}s&W9(gIR<+1Y8!Ms32XEb5tG~ui zbA7r*O-L$Z->JDwsomUn%3xb}e1s{Nmt1|=x8dx-=DkYOErn)M*xDokdZatqg}-Tj z&I?KoTA1DWTsCC1O(4{x&U?a7)sZi8#Ywdse!3;?vaA^k)c>59Na)6rm3t>@ z7+4mu!cQ(YR!J>xa#Osp>NVi~1wR~lmU?yj$uL4`!j2TyVTn&4iHOi?WULs;M?GW* zYDgWNHXF*{axN&>hx}u}h4|6a73bqO_piP{$*q`(uWYCZx{+vQRL%-z$%wa3cn1hLG| z&%H{ouSf3g#F7v8<7E@tUKfb93Y!n;)77<7#b3Eyd)Ai2V{`s+jPT8*UFKJkbmkRR zA8a?C_ncU};jN+=DnRK->)ji*)9uz^gvwEC>xkAK@qG7|GjEXFT)ldBMP0?lbuMk*tGh*W*A*`6K03!o8&CaA3kqtx3&geqw(WNuSLDD zM5o3wEr+ys<+f?=GbK*z{2qSXYQ11p*}T%bvPj`oHd4I9E+u3l|9Z+@lPRB?%Cuwn zp8qh0_p{c)(QP<2h!Oj(*61I!4qMP~Y(QtR{-kq!?jr}yKif}4VL$vW*iZPr^AG4yvrB2D&U?3=M=VFNQ4r1bs6AdCV-RsSM{p&zW}qOkxX7xqyF$2Nt^iWjN;f ztFuPS?x*XiNKQclfCdq!9H>>%AnkDxOjoofVz_+en@MerER14ZM;&HN7Pg8$rYNmf z>5I{d&@Zn!>t;$R?zray)7eadp#GQleCkf#3PXG2%&H~v%ac!wrsYYldo$ytIeQK@ zyyE23!I70|EenfFM9H zAOsK!;Is{cb0HuCa18*?6G#*w8gLyD1BeC00d4@|0SN$3-$Xdy1SA1)fMmceKnfrg za2t>YxC2NBWB~30G67kDY(Nem7mx?Y2NVD}V{`ER`13RHJ%8(8$lscg>zq;))U-M1 zk!!T!6IG+reGgteOtL(wCLM0aC4m)a^V)0QnYWH&?RpVIyno8zOsAK9f}>}!gxTZs znEFDJW_iBlwA*93cdzssF&z;CZAy=wa(-rMY~;;Cb|~Sxgqj4k@%KWtqwG#Q-&q@n zF?VO8+kAYb9PHB;@9D3-drn_=WFjQ2w-Nd$M73?X$`4j*9}Q& z!IewqP@K%3>ALZ@2y%y&|2SfJ*l2>*yQ@IELh5+P_QS;?ymBcQd27JZGPpH;MwjKU zBlIY~LPy9@^dLAX{omGK4~S|17S`W6$eh2``unw?Kb5b*KVAZv&B-;%IktR->xaYj z6#<+>^($QeXSnt+|Kh)Yy^Fv0`lZzWvm<@W^}iHSLN*+d`k&>~|27|MI1NUwU^N$V zxD`$Y`ZI{t@1lb^u|!gwc7^4!YQJm8VPHXEmpw1aH5*d zd}4SuLJxbymeb}p`-c?#PkamVQvjlV{!aUsuPr~n<>zP5{ioUINTK516)oNlp;KWc ziHG)POl}J5JG9~i?&cNOJ&fJ^ySv8>b+CLM>H4%>e}^19yoGZ|E?(TBBrIm5fYL#E zn~VK|PS2t?8fvenv|i2j$P0%Wamu&|mPC8;O|zq&%E}!jN|{<3S34PLE=5FVYHM_@ z{F!QL<4w0Cw+XvhX7k1#qKN5SFL#bPY43W$HPc*^S7+@^Z+($@VaEKUbM1nb2Q@7S zDU;>pBna&J^vrzu@_GMX{EhfuX@0jK{!{FS49ngo+amjr=ztR@s{7`ID-jP(8LEU) z$|83MZ`j4>6g@1f5K++(SMOWt-5C%G4iWWiB)9*Oap?i>fVbsl<~!Rw)6ILD#pf(( zy?Ax;*<$y`x4k*2C6oXn@(~!|QRD9o`Zt&vyJOkNXw3*~3PaYNSW941E7(XCmTp{p zaHoXgOt1?ZQQrs#%V;nx{*~Us`i76AI%RD9tPkS(Wjxgft++^p9PgYn7(v(?9AzV= zZ<%4p>212q%i^pGRP%VxaoO8wqY~jAeoT1Stcy`Qn#_IBppVcec~kt){$wl#zM(oe zhBL0Q>*#&760>cvO7=$$u@{#aVYI|PxC&BCcg>l^*m;CNy_qk z!(h$%Gu{J8`A;CDceW!%8x=2QVymE^{!`)`vxY>Vm1)9t`jg9OiS+sF1 zsj7xRp*iKfj-iYl;7&wq#P6bywsei|t*6NbDi&AB+`CsAAgaGULeW|C&Eq5wW>)ux zNIDL3uM%hQ*g-q4OC6X&(f)DLH19++wQb8sQF$@d(|NBy)bsD-9mmqK%97Iy6lWMH zHF?qW1}>Ih8#l|3kB#{Df3o9_fjin8FBqp%jt33VoyvgsT#awF!Kp z2zj3ge4__0Y>*Cyt`CQ>6OOk6ZjuUpqZ5$15sb6~Z<7#;vIKIN5sR}Bin9%b ztPhB=0Bes6fv60Ds0MbM4~MT6lDq*t{Ixe z7?{HtnZp>F#2J~y8Jffyo5dQN#u=N&i_GGR%i)U4;2NC9`u+YLoX3mH;W?u0;y?DzU7p~(OL{{R30000000000000000A^8LW004RbEC2ui z0385w000O7fIxzSgoTEOKud~?jE#_aG8 zl1w(~`m}cri5}bDG z>8GHEngk7`mTKy$sHRGT0Ias^>Z`EED(kGYwtB;@xaO+suDsrG#IL{xE9|hu9x=eN z$R?}ovdlK??6b&TAnml&R%`9G7qp=5w%m5>?YAuyA?~>3mTT_0MIfN=y6m>=?z`~D zEAP4#)NAj(_~xtczWnxU?+5?~Ebzbt7d%1&2q&!Y!VEX;@WT)%yuid1S8Vag#TaL- z@x~Mv;PJ;Ghb;2QB$sUR$4I2C^2#i?>@pG+#4Pj7Gi%WX%{b?*vle>jF^A4GLm~9g zL<^lo&w9jhN6}12;q=o`M{zXLdT^0O)KN>J_10WZO|>3jtikozQAfkoYFyHQ8qg!BD3;A*o02jNvT-uU5&tF1;Jj#qKT ui+YreVKWY7V6=%a6LM;BIXaYpK+zp=#_u%|9ZAOJh<6Vw_2 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted-ccc.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted-ccc.gif new file mode 100755 index 0000000000000000000000000000000000000000..a47b6c1eefe04567ae1f4f0e48f18709e7469bce GIT binary patch literal 44 wcmZ?wbhEHbWMW`qXkcVGbLPzd|Nj+#vM@3*Ff!;c00Bsbfr;5ifR(`-01rh8fB*mh literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/border-dotted.gif new file mode 100755 index 0000000000000000000000000000000000000000..565aeafebc1f0d8fec72707c64e9b75b61eacd1c GIT binary patch literal 44 wcmZ?wbhEHbWMW`qXkcVWOH2Fz|G(l-7DfgJMg|=QAOOiQFfscGurgQ!0P9)^P5=M^ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/bullet.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/bullet.gif new file mode 100755 index 0000000000000000000000000000000000000000..bd8f792a13f8b5a88425bd05fb0ce59b044af9c2 GIT binary patch literal 51 zcmZ?wbhEHbWMg1sXkcVu?b-JK|9{1wEQ|~cj0`#qKmd|qVB&I-W6Q4Ol`rNHVXy`O DG!P0P literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button.png new file mode 100755 index 0000000000000000000000000000000000000000..9ede7a149294dfb4fed3583c8b4d5345333ba752 GIT binary patch literal 607 zcmV-l0-*hgP)T z{%2?$x=k5)c}^}=X*3R5H5OZ~{`WTsLgcGbg+qZ*9r`N-VaJq`1e0S`hEadb)FQas z;l9itWW4-+w33Yp+@cbfpoVCPbSQDNqa{L3$gwKJXjhtcU+#CgFLV3&;;;Dfu!rA` t_}z%U^yqsU8`g_wWBU=hV76}o1_0j)f}11Z1Z4mK002ovPDHLkV1i#83w;0p literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button_inact.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/doc-button_inact.png new file mode 100755 index 0000000000000000000000000000000000000000..c8642b872f96afaf5dc2887f6a652e7a402b389a GIT binary patch literal 916 zcmV;F18e+=P)Q;4EcOH%|s$njt zt4>$f)UEEWzK~+MT<&?Rwln>H-=iRdQWS+pK?bEPOOJwQif77ZL8;Yhh~OB4tiflH zs#SP$CHXb*Xt1;3o03<}fB}79xO1L&Qkasx;-iIb=ZOpx(&8;#;aG=|6 zx5wi#b`f)l9)%bQ#MA=`8{0Sk z6l0ssCh-CPm7uJ(d>W0$bUKZ#4!z1^1Oc>t+jx#P-@=BO0=^=c&1MAZ^*R>{3GdpO zqD|?yN}Ql&uFbb;{J+I~KKBwfuzW;aD88_83Dt$1V+ci|sVy7x22B~hZO~#4WGx@R z5PI`Z2c9XODO+4VJp>+1f|_Y^4nJrJ@^@k9wN zA1rF&jtJqwXRv7%UMrLQpym87-GlY)WS_K#lfs`=rW7Ye75m`!KH(>?KZ(1yeKW5B zLC)_M1^6JRW}JgNmr2WU*o~yy#~W=Tou0lqn&$DXeZr@GOcq(%ow$dYk~o-&@a*m9 zM>j9Q6EFZ0BH$9Dp&TV#8ym>GoCEJe6SOwwUeM-NN3tM5_u-9;&)#Lz2`6-3yK~GbOct1OdBTs3kT*0Pu1x;}5Q1Sc@N%>^M_`i4dd(2?D%$|IL_D zjJ<#DJn;eNI1`f?|8JtL_LQRrPQ3i^T?qG%zW~QZ34#E^e$sf3Hs3<9VWuQD+Iv^e zA$axiCxN?H&T^rU@a`)1B|QburZ_=xf|j{9-=?))EEbEyufM#C)q6@QD?d^E@S2j! zQ$Yv{MWLxJ8}kND8NO}MA`YmEHdydg>&s{XYF4GuQZlE|%=B%W&@hly(fX$YZ~o~Z qaZC1ASw8+d4zct4Pg`{RBftRO2p?+=+6Jot0000t&d$!Xw6xUJ)Y;kD*VotT>gv$Y(B|gm-{0Tj;^N)i z-O<})y&My=;-Lr&(Ful$K>SX z$;rw8|Nj6000000A^8LW0012TEC2ui05<>_000I5ARvyUxG+bj3Z$UEDq;mR-K4Op z)OAw+q(Py>8o6?v0pr07Jdl`4)6fB00hB{gbj%F^2uYKYWAY%Xt97wxA(H@uqZvrN zX1rUPWEczx6>3IrUjP;vO%X#04NVL$C0!i_2o!3PFNFXO5lt5z5S}oRNCgB}m@1kE zJ56Ra5*VXyrItXca7Gn$O$a%pZwOWf1jWV#Z6u()G#N<1rGkPTQM?gv&`7q@K&o_l z&$Mq_+$Aapjc0FF;z;D>BPy>v0NCw020#l43jF@>9TqSP;2_+fHwUcX(iA7bzyPs+ z-OHqq5D88X18|UdFvkW|7DW)a&_n_wN3%L|swki!14tx=PBdv?hd`4FIM|Ko;|Gwm zg(4J);bGy0h9(e(=!BPzB7>tmp1e39g$I?T+#HZwSYg1;4PNNjftSI~);A1V@gVSq rBo9U07C2CP7RiB5JT$B;5Q@izVHF54*r0U9#143P$XYk2NeBQtFNx$U literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/grid-placeholder.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/grid-placeholder.gif new file mode 100755 index 0000000000000000000000000000000000000000..fca1ef0fee5064b2f12139d833a516d278f9f079 GIT binary patch literal 15903 zcmV+)KH$MeNk%w1VOj$G0QUd@=h5Hf(&OsV-{rQ>`_bU%)8XW{&HJ~? z_5T0>&fw(J;p4f>^U~nu(BSCN-{bxL`t3^t#aew8-|g&HA;;^Rv(Vy3_nk zVTI=A=I-?VjIj8*$@6@l)4b054*U+g&i&xv;JVHHxXJQ;pwzz5{Ibvc%Gv$1$o0kb z#k|b(C-x`T*Vp?E4bI-q(ct~{#l@EPmd@M#-rnBO-~6Dp)4k63&D;Fi=Kjjq`PAY3 zyUq2`-Tdgexxmo(_$n%`$@#a_{Jzor=I;D?*m=3=xsO>i+EV_o~^du*CAQ#`Cks z^@;e2?eX)v)cn2E`_0SQyv_QgxYNPX`>)RXwaE9(nVE>E*ye|a&fWc}yVR<{;qWmrugv@T ziHWVl_OZqD<<{2Hv$Ok)i?GG=titu*udkG`+2&?uxzGEt$n&|*`>Me6_Li2h$M(C< z`L4+K-{Rr>9UZa4)wa?5v(fy|*WK=pj;_SzzR>vD%F3?5)`g_iw#3((wcNPR`se54 zeV^3G)%$*-)s(N<#?joW!sNTt{lV4y00000000000000000000000000000000000 z0000000000A^8LV00000EC2ui09pe4000R800{^jNU)&6g9sBUT*$DY!-o(fN}Ncs zqQ#3CGiuz(v7^V2AVZ2on4qM|lPFWFT*>m}f|f92%A85Frp=o;UFO`$v!_p%FMkRh z8g!^po<)x;wV8A&N`VO+NS#Wxs@1Dlvrc`fwX4^!V8e(;Pe%Z^QZwr$!kZ|knjd$;f2z<&!5PJFm=+zE~=FV1|q z^X9;FLw`XyJqk3W(u>P-#Gdhai3^Vu&P; zXkv*dn)p(RES~6Mi!i<@V~jM;Xk(2ys+d5IJl^PIk3jw?=%9hh*(afh7Ro1`islIw2O~f#X{3}+YH6jIUaBdkFKy~+rl5W* zYN(`+YHF#do~kOR39RaBs<6KQDr>Byc1r84xZcWYuDt5Hs;#{S>uas84lApb5Fn83 zvdT8g?6b-mV1TpKLTfFV)>f-+w#iD%?Y7lQ3+}h%j%#kY=$@-Aw(6z}fw=CrD{s8? zZp&`H_|B{Ev-j@nZ@%>QTdueN792300P73Y3^6e5aKjBtEAhh*OG`1t7iS#9OBypQ zv9uV6oH58Fe{4Vu7L$y!0Ue9%a?3EkEOX2>hs^QJE1%r4$`<2X^Upp94fMk|YizR1 zJr6DP(iazv^u#zHoix)_YwUE%6RYeo%R*~ib@Py!-sK?|=XNgJ1dd*S!Mn4|)09-~SdEzyz#sd-c2C^B@R5 z2_i6j%Tpi#%O}9}k&k;8RG!H)*uDBCu!JYvVEQ@;z4;{&d-l7aw4lO+9n|oKHr#>9 za(F{&>CgZ?@L>@D4e&!88Zn12IU){sI7A!zP+B#F;uC?$Lnjh3ia-=%5rwElC05ak zVEm#O!$`(4nlXuHY$6nkxWy~7QHocb;u_0H$28ipj$TBg7uN{KDK@c(adaad?`TIo zj**LjpzJ#Sf%UMryiu0D?l;=3x=}Lr7GorS{Wkl;a zLjoiq2RHz!NJC0ekV-2D(h6xxPnyz^qEuofjp<8V8q<^FfTaddX-;j5)0W2cr6k2^ zPz?Z7ni}<|NIj}jlgiYkI#s40WvVTAO4OSY)u%kYYEFS_)2Dj1sbKx;QfDgFs)`h= zS}mzh#TwSOf|RUEZK+(h`qPz~b*@%DD_z-oRJejws9a5JU`?9VtQK{xZY8N-X=+%+ zzSOQGl^9fRU<1lpwz8O|th8<*t;%+Gvz@)HWkZ`;%)UglrQNIzKx+WcwpO*QU9AC7 z%h}fdYIe4yjV*0UyW8IK_P4$bE^vp7+S3kKwY8P)ZIioP<%agNvn8%{g-hM(TGzO{ zMXqZxtK02X_q*1mEOvqWT-%aXw9p-`d0!h{=7v|g(_3EUI+wl6tuJ^l8{gDM zx4Y=YZ)%|u1t1jozy=0_$r8L^X%)D^5<{?rf$)+EBY43Nj}5N<+0Yht0-{arXIs14*uJ*1hpp{wd%N4x z{xYWgHH6J8y)8fIJ(k{&h(`_z3D*D zInR7k>(WRdCu4_H&N&mXjq2hrOl>O{xPdnPzuJ*RG{q1dk3Eb!I_PW#k z?sm^R-uJHezVrR>aZdo?2k-a76aMgq&%4|ckNCzjKJbo@{Nn+?c*$FS@`@Kc<_`}Q z5SYO8p#Qw+Lr?nAo4)j@H~mXe&-&B5zV)zwz3gL8``O#R_PAGl0&>s$+xx!v!2iAM zS1e5iaN1=r6$_P4M7?sNb9-Vgu(_g^CZ@`L~U z=1)KR*RTHev;Y0>kN@}+ApiQq|Ni#RKmONG{{8F!|Nb|B062gFD1ZG&fCyNC{6~KZ zn12GX01y~~5;%brSb-LJff$&98n}TR*nuASfgl)yA~=F1Sb`>af+(1RD!76y*n%$j zf-pFN0ucZ-Sc5irgE*LjI=F*2SO7fugFqOBLO6s(ScFD+gguCaO1Okf*n~UigH9NQ zQV4}oScOYSg;tn_MTmt*cmPHqga$pmX-J7$ zD2bM6gqWC#M7W7NcmM&=2cZxMgMbHxum^BZ0Wu%~XHW(K5Dtn6iJr)bw0McNc#A+d zi@2zRy10ut*o(fHgi8pDf)EI?;0mZ%1u(D+65s~Ba0>xY3$gf!z!;3y7=+b$jcu5X z!N`q4I0fJsj^bDYW$2B&=#8M*3Z)1LRZs=(;09?Bk7qCk0pJbO=!oXHh64})`>2gf zIE($5g#qc0!q|obS&nBo1v^NNbV!h$$b_Is4uwDraKHcz5C&5xeOsD>_?gEF~;E_skF*^}Cs zk3@Ko3Sff@kd!%?lt)Q}Ov#H0$&&%VkhXY(JE@WmiH-sA2Y|2&?HC4NNd;Iy1yn$f zy#SI-Xp$#+gCe<>H28)uDV0hnlr`9o18I{ud4zH(lXPj7MVXgw2!}uElua1`g;|(R zS%XJ;n2{KjR=JNYv5shCT7gN(_T zzZjL337H6~gLZkF*Qk{~V3D0^0iM|dLLi!G=?r=QaD&M(oNuL6Gla{%S25Fs$nV8I}oX*LJ&{>ml z8JSkNm+yI?oT!yt00W%~12muto!JFm5C9Q?mU++(h9Cwshz*Fq3<8jYDCw4`$)15Z znS9xw7uuWnS)ccbmC31}*hrnVnVdvApsv}U|7oB{YM>b^n8mrE3#yn;X_!+Ap=PL% zKN*k|T7_^~m%KTY5E%g3AOSKE1~MQ8G>{5!5C(5B3vocAq-h9t5DjV|4v0_=1)!op zh@Lhmk~Er{_xYs&I-k|qlSzu7{%M^+%7YgFny3YOn}|B7#EGK?DxbzVhslYUQHq05 z+L%{LnZ>!KQwX1v>5p2e3~nF+SwI6cFb}Dq2;lGwxlj#oN&q`32E$+n(_jb9Py=f4 zqI-&(={c-2%7r^RpoIFU$C{)}YMU6ksEtag`RSX=>Z8&MoCG?F$0>xFs+;0uee2&$k6-|z;=kO<3At30R%x^N7^Py=~-o@$w%0UM)$ zI;e{3sPZ|RUJ9zz>a2>os8AWGUTUdD`k0d%pRx&{gPE{R%7$M$rA(=mhAE{;xv2#^ zh6<^JXd$d>kwz-I@PAj)bi?ry-3PCsyVHmX9YPZk|xNsP^e`~jdD~k|`3dSG}!hi{F zfD2||25m68uAP_#y25L?VJeEGhzF*)2dK!3t_Tk^2msIw|9KjL{01!OE2wcGy zY`++s!ScJo+zW~uYLPM^10G5PVDJSZdcYh!y&k;6F8snQY`!o&!|L0@G%UV0e8c!F z!#WJVJUqUjn3-2l0T*xqSzrMcumzy0!Z4h}J^aM?>%>s3!%{rO?EAx3Jib+&#W9S& zL9CfXY{W>c#8eQPC2FfQyv1C+#^0;PY;3`9yvA|dz2aEMQ&0m7JjYo)$6q|eMSR3b zyu@dW#VfqQ0}#H4JidwljJ}Kf#@MUJ(c8$5?8B2R$&XCP@|&_bh{qR<$&>uRp6tDS z9L9i5#%BDy>#G3L%aqZ}%Fye|_4||1YsuS7%iSxfFVVJkp6w%?(Y=CLPHudD1Ao z(j(o@EA7(n?9wIwebV+E%hgQNI=#~^&C>Pk&bd6(GX2p1ti#3Z(IL&uMV-D_ILq5T-m8jQ(x zJ=HS|(O`_#rd-j{D+i!Z2~xWWVm;2*%h;+6(gRJw3mw>o4cLe6)2(gGcP-T<-O@w- z#ufb6SsK^6Ez~is*F)Xgb4}EaY|@NP(1}gHk3E}`J--TU+m`*pnC-`6oYkj{#?*TX zj!*}6zz1Ugzz3G#31nTprk&Iwo!U5!*Rjpp`7GReUD$)|-gVv2xy|0~&EB{S-1sfn zaZTLCz1GLg&I_Ef3ftTrJk8Y`-O`=h)qB;|z1dq`y=yz(YfIYXjnt=&*2sO|?v2;4 zz23tO-+67=z5U7cJ=Y!X+A2QJ@x9-#P1ThQ;7GmU18%TSEzS8{&nC{`)a&4-+|AgX zzRNu1<^0M;9?K?O(lVXWK@Hn4-Q>Ak**1;ew~gBi&E!g+<@258ht1;Z{p2a_-)kJy z%iP%Zd(bv$;O~p%VXojVJl)%D-JD&>Jl@YYUFR=8!ETP@|Lwg6UA0C_dq>jU* zzQ?I<#ikD9m>vN9>%Rajzyxf-p}yd!p6ddx>m1zbm%Zv!?CYZL#jvjFvfk;n4(i^F z>%4yI!rttc-t5o*=D>c;qn_!TKI@)t>&s5<&`#>p{_SR->*3z()qc&_UhLV9?4ORW z0`Tte9`Eu#@AO{p_73kpc<=hY@BH5H{{HU(AMgT??*TCI27mAfpYZjb?+V}W4bSin zAMpkc@e*J0|4#7%kL|}!>+L?s77y?k|M4O}@+5EXAz$(+pYj55@+$xFEZ_1K|MD>Z zAMrB3?;6kP9MA2xI`i{h^F06aKrin;AM`}e??YeoAYbrEPxDH@^bgU z^hfXXSa0!HpY=<>^<2O3Q2+G;@AYCY^kEP1QqS%>fA%v^_GSO}{_gg0-|}+*_I1zi zc07(EfA?a4_i3N=%D(ef&-U;>07!56bN}@Ij`$VN_=#`!LGSnu&-eO{<~3LYdr$a} z5B3ND_uC%$nm_O*3Gbu-?xp|k6rZI6Ao=$GldW&?tiSmIkMS-^@3G(dwIA=SfBT6~ z`3KMVA*%rM&Xn*@{Pgbo_HOw!i1{wh_KctVkMH;DzVV-5^$q_6q%Q#2Z~EH*pZ%zR z_Rrt%;V<#LFZ=y|^08n3@~-~tZ~pO)`~vU#@h<%HU;F|<|M!3Vp`Y-|4-f%r2q0L{ z;6a254;Bc3aKHe95F;w2SkdA|j0`bSJP^PKg9;2NP>>=)0umiPgan8{fI!2IF$w+< zKyzlzf;I(cJSb7X!-oZd_7o~K=+B=+lR`YYbRtrxNPWtrTGi@Km_(xjmB>}AL8efL zdX0E=?9{7i6Y^AhHS9qJ2;&lrJ6C{RgKXO>oD#tA-@gO*D%30WDb&GFi$r_VhCbG z#7yB2_&Md@6itwHQP^ayqaNG4de^gz>JK{t7b~wQ(-Oq*sR5-*O{@W{D=;SQCR7T! zgcQ(lt__c~@4(rfgU&DMfTPZ<2PYh?LW{VA?7PXtvkXLn46!2`HN-)roC4IdNGF`= zn-4387Ay{|!xU7oH6;&oQbiSO!_B`1d7H8DNl1T&?wXMwp*F5w} zBYSJq(YGXol(09UeCs$+$0W1BGoec}I~patZc~}O-5VDL!}EZ4JmT< zs#2pPa82vF4er|(VSRB4c}SI$|F&KTgEo%VX6uD_m; z>Ve4?*zBakCaCDFF;@HGx5Z`}ZMomA+akKTzS}^x*uI!%00I|$aKZ~W{BXntXDD&T z8+ZJ1$Rn40a>^ACpmNMJ*L?HC7w7!*&piiybj(F3{q)F9pS&Y3U|@g&8DxNg1{%Ql zq6;qoM?Lk+clZ5w;2l>zc;br>e0bx1M?QJfmuH@I=N)I=b=YO6-FDn{e}3@jxA*@0 z!n+55{Kv&7e{%EB=Ux5L(?5Lr*JGc(_S@ z!LNGr!=C-fgTLM#P=d{i-~(x(t-;3S= z2a!@ zY#diU_YlEhaf(4)-{7oB#l(T}aW&kc4S5(jDmHO&YBU@h0iZ+y&Jc7y9DqQ8=tV4g zF^EG9K*3q8#!6LKzxWn$~syn^lGBCav05Dzfyamjx;pmuJ#VvNg2S)aY41 ziq5}|&ZBXiX-r*fQ@h^Pm3hUdW!pMIq5ct|x;(1kHs;ukJ++OhOr=z*YSGIg7rCHK zZgW*SS!*g+tdeymN}YRBNNU!iqCGA6(#gqnvNp2sl%wx_neZ3a_|xWE=w zkeP#{LlfE1v5t1TeNC%5Q##V;lJ=8*6>BV^3C;mabEDksYIac?R<{zbob{zJD(@@T zslK;zJ|xi{`5NFD^3e)axIzUkaDgmXzye#q0u{6{-{+Zky6Q7vXHREi;>kFSIo2@c z8unuk<9t>&S>peBu0D;r{kG$4y@Clc&7oCtvxlJ^1n|)BxNq=Qzzlu5DNgoaQO#IdpdZm-O}=;QkIe zvwvP|4hv-FLhrTB>D=mti=5lYW};s<^p~sq96Ga=?OmDv^?q;No<*-U*>{~@oihFC z#7=M30ps?phaKEWm$}5jF6@L~&0;ef`K$?P$X+WT0D`yr;IXcCz;K=GcfY%{i*EK= zLq6B^l)TB;4s5PKhw!o%{N^_gn9IwW?n`HUt)2cDto^O;BkJWZgSl(Md*1Mc2mRK) zo_5O5cBi-pdg=H7?Rc^0UiiZYy6$({d$h||@yFNszSFLGTF3tIa_{!&?VkAKGhgL- zNB!RGHT4k@)Sw7esIH}7c-hxJ@waDx(37wG-uwRE(%yai*h4RkN=8u zzWjT;=%c;aL%g}8wYqCJ+XF!UV>#}N6`A?ISPMU;Vk)Pywe&N*4fG4(%Rk&hyUcUH z0hB*>Tes&^K3Cd5{To64Tf7vEL5K@IUt_+{gFXYiK@Su+>tn$61HjDdxzm$Cqj4Kq zE3Csxti@_94V*p>biy6{LCPDz6>LELGr{?zH5vTD`|CmnBtaJJ!peI$8mz$q)Ilfg zz`rO%!05sMY5PDi6uKdtm$tDtS^KTO2(DWDJlRu2IK0CD^THCuLUq$ZDhxy!3_}tG z!9z^G0OYslyTJ}r!zfI^SzEw2w8Aaqxj9Tdz5~BwlSB={x=}G^KH(fkCXzaEhYZ%gd#sHYZG5AJs{KN|6w`Sx{kIx@%;`YWzK9WB@Xl zM|z~d<}*j%dq;dUMR&wUeaymQa}jV1M|)hyePq0UJjibJM}{=VPNc_r)S7!#$gfMt zgS5#1b9BgtBsPH@$T1MdiKIw56iIQz$X4V=lQcJ{yCsO6$AHo^H!HPllF1!HHUCky z;=xHuBeFhn9giG?Kyoxfvq_rFNun&uKzlQt44$O~p4^hhmVC+H+B2lovZ`#Kqhz0^ ztjSZGvs)snpoGasyGq>3O0wL_AVV{>)GMzXDnOD-v!tB0BumDb%NeuFQIjW_>mU$f zOF_f5_zKIZjLCdLohw_g!wfN^OiU=lOLa0eR#L#U+_I+xOSn9p9~hip5uDA0vk&Vo zvZAuWtgiN|tiKc~(?lG`bTBiD%iYnT`rDFVA7!0bug60A?F9Qfc&;LObb zz!6S4n=I*4&Gs@*^EYR$IXP5Bba%^^;)T;TcEeTq!$nwnDl+5is zE0&^8p8U$UF zBF+8MqUoeeIVvkAHLWR1E0s!74PDW^v>;`=&NkCd098-sqR$(3%N#8;8^IC(9pMqj zN*wZxQzOOD?(|U0;;zclQuh?K&$6x()zCV%QtV33v8>K!0#nx%95H24<4jQZ(ln?G zxosQF!NC(f;S)a*E;yaj3q{Yp8dT+yB^3=-{^Tq^ol@(*8w)jfSuX}uv>1)T}QFWIbB107S!s!?5qR7I22oJ$;h5!M5xOFuibZq1=rjUgLr zvutFT+7vQYTUVUxO#lcku9R0BmCm<9S3|>BA^O%rRmxqB)PNPwOEcL2gSA-AaZGRR z%G2aYUS(H--ARnqN{1~qjSZcWUD%H8vZn*sR|{FDOxclb*qOyLj)mBprJS34S&9WU znXOqi`&khcTBFQawTxJoWw>PoNRm9proBFt+{kBix{saMr6t3sb=s^Y#;DauujR;= z%{HFB+7sN`?K9hFOUZIm+i_#tlFYlR9oun)N3^ZEx-~kf?Z>YTww+blxn;(?)i}2$ z#KGOh>f1{W!bGl}+IaLni8M$<3|y?`wP}n-giOb^^$cc!R33rTZBKITESGDLhLocZxcRPj79vlz2_Ud{vF`{%f;;- zL^SM0^z+3^tUfAqCB;qK>YYN`wcGS1!a7_%z!1NKN+|d(K&vC&!@EIibHq5bKm4Ud zL|ove4d6zMVc6B*Vl-eNe8h4~LHRwvG@Rd!3%8t7J`&+v4K`x*^;{2D#=rH8q*^M4 zX{tL=-dTHKAy#4Qbzv2Bzy96C_e0&RrC~*UULdT(7UW|86=cNhrCW2eK^z>B4mn|9 z3||Vyt0M;9E;i${W#VK6$s;r@#8NEADq+q$Ek0k!E8rHc;Z>aB$b;lZE=c`1r7|(y~XGi+{QIt_Js~S^b0+_;vi1s30C7uc4RP);s3=# zGREZxEMr~{QycJes?ISxe z?m9=TzpXu8`(@-C9y{cN;WgIaTrOpBnF@VdiLq+uP1% z+z$TZg6wFIcH@)AJCMHUmA*FJ#HH|TXq8N9l%{FZ%UhQ2TCl}Y-kj!*w&{NcYK+5a zT_);Y3(U(zEufXOrS2k}U0LTmQ}7f_qFtq?Cd{iAo~n*nqm|O{glVddu&f@+v4+g2 zKI^FdYRhy`u`X+$b?cz*>c-q^r<7{2PHL)z>$lcx#5q~c2~)(4xqiJ%yIyM@RcgL2 zTF$B0nfxBcCQx#f(RlUh1x3@I7E8=wA}6}Ar1Y=HPV5n_Qt+Z26Sd0iflYDU?1qX> z7>#UM>q~Q`Y?kHen5I<1NnWUGr5qi)6#Qtk-VlU(*?c+43o5--dIMR4WR(-UR!igoOdk}L9>ao0u@3Kvuh z_gIOQTRHkI!6DegDK6p)@!lSBBX?^5=*mzf$MWqGR7XYc)83~km+{W7a#OkT>&kML zjawcE9SXxQ*2d6oI&+(q?`5)95?xXQSMvuuZ>+X5XcAYc3iMGJLZfvwZ+Fh5Pu%)+G$92dK_Kaorxjyy+gZ9{toW5OlV0ZRHKl5RKc4-HxR#*04 z|8#Blc0%uVU59F8*Yc!Y_Opqbz4;krb+mS-;|1n6szH9C$@LBxOj;-5sv?Oyb1ZLA^EZ~ zd52F6zX8dV7kRPq_=ksiD9M|^j=6O~`F~gWXwGPyZ#NqVrjkeDEP{V)`ucNrw9670}=tp9p{k$JZ;h^b$TpZ8sd zNsMCIn~ZN_mZym1-H57}dgZ_nga`Yh=X*=(`cXj^714UXNBWsJ`o!=GybpZrXr(%8 zdpGF`!{?c}CuxbK`|1v+i>M2|=X|~Y5VF5|RcRNd82i+q7G*Ju*bsT@_mUo$Pn2h&eb`@pxLF$iFj)?(AC7q{zQjK%+b;3(pqg8X_fl6XIU$8{U! z-|!ls;^yxV=m!V|0t5;eSnyzh00#vOSXi*(Lxu+%4uB}pqD6@jD{|E6kz+-NB1e)e zY4Rk>ln510Tu8Ac#*ZICx`auyWkiM@V?Nxe@~6mzK!*}F+0kG@f)0fiRXHU9$N>SS z)@YiNX-%tIw=Tq5^gsX~3@R|7KtYNG2}pGG5E38)0Rk)?o^n*D4j(amEO`=xlAuz7 zftSwpi1Xs%kS}xpGG3hcFxSYEO?u7f__9o%B4cLEig;sVn3G9*9c>!%;Gl(1KZROx zD%H~~H_NU~di7ASV#%6CtCp=>xN=E~DSpuS-=qfxFDLA0$Q}U@Nq+2~2DU_2^O5>$b=9wv`R)J+j6<1Vn!39}ZV8IqxP@x5*o1*6` zr?Hk~sjL~&n(3{V=1S?V0)UmtCv224Y#D5@5l1PcND=@#XgUgOt zFu?^Id@#ZZ51f#~4LkfW#1Tt8F~t=x9Dv0cYrHYX2s7L<$RK|lGRYZ_Tr$cMpG@%q zOB~Vv1QSUp;RF;y?5VdGu}An4_}@+(wi&pdBanPK04_&G;KEL z5N{6o-CFD2b-J_jH8>Mq-zb>3X_ z?RCjN5c~u717mN!;{$`_@bCqHuW;+y}OJD9<0E?_2Xav zw$R52S~u787+OjTOYzK z2tEx;ZFv=IpTPDDL$5*oPn?9@MEpfR@Yi^R4k#pTIeONF< z*dZEf5C%aRAm~! z=E`~I?|$}7S!?pC&y=Ecm+(y30gMo?Z~?PmVi<-UreTL>)Ibf&Y-lqd+Q?`Y(V`P| zCq|uW&YEttdo=}PMzbiO3bCO-0>=L6m zMl@#7iV?MBIx}0&&5l-=S}f-lEvn6Zs`QCw%^wQ^Aj_Ac%ztjpWks}gb|C>b@ZuH$s0DL<>KCC=7rbJtuYHTQU6f^)V)&I^e#4tFu(SfWfT%(h+Tn&Y zF!&5}2!J=@`?UWCxO4lhaM~`+ISP-B!}rzjz`#O|LJ$KEfnq@a8rDFCHLT&m#gH)Y zK#XC($#}*;3$Ta3mg5rE7%YDP#45so;51Ny3SlVngL?tv+tt{{A9gYan|!z(Pgu%? z+byWVpygBPK+8vFl^>RDVJH)j${02?lW}Zi=Jhx%f%38iybPQGgjp^-y)&NkjOT>t zxzB$7GoS-4=s^=&K71}Tq7$v?MNj3>jDB>Y9S!M83tG~YzI2~09cVwnpwnK~vJP~h zs8(Sb(3&nas#C3ML$A8kuEx=+Uw!FV%X-qZuJxmDt!J=gLjr@6ftTMP>{-Nt)VOB# zv6HRrOfS3Hiq^HWD;;fHPaD$E#xq!y;RXq0!BAmHg(ATJ@rztk!`RBccD2(@X>_YQ z+U#!kPTvi0aLIe#$SyQkps@xw_+k-@P=zAC@djihVj1R6cD?PbaAq&u-U(Ou!~IOU ziBF*hrH=T#F%Fh%(83yLID;{gg4xl?Z&vG zXa4L|+msWEHMY5J<4wX;(2e8>5_NKDEd&}oF|BH{Gb$<1&WBt!s z=X%zsE$OfCl~ zWejNu0~2k)1-{xKdsz4jU{Va=RbX)gUG;$vaDf#}AO%*S1zsQq z@|6#4AP07!2Yw(3hM)+JU<7i337#Mdrl1P0U z;0D^D57J-`1|bacAPGufCIrAc9Dx!pArm(Lp%XqK6h@&GP9YUmp%q>s7G|LqZebHX z-~sBD0{RtT3Dy9X;ehnkZw1#L00MCt7jh{VZ-oK_zyN~Pp&i~K9_Ar}ofseXp&$Ms zAO@l!_F<JHuP9h~Pq9b0S9Y&%i21+G%A|hfUC_dsQ zMj{=4LI7Yw6QrUlt|BY8qAR{4EXJZN&LS<=qAlJcF6N>xvSJ*jp>VNbaUEB3g+mz* z;DC%*d7W1nq}O`2*LwxPc#*{wOd~Z`qcvV5Hi}9GY$G>zqc?sdIEJG*jw4x&A|z%b zI;NvGk|R5IqdA_VI>uu)wj(`m<2w%jqCDo~I@TjOGQbtEK>)A=6AUCl7NkKQBtj;n zLM|jjHl#y7Bt%A}L{20{8YDE5mwCZK7|fx1v6p+*LNN;9fD{-W99R{28H1&PgF#pT zM8Y5h3O}~vJl`B z02~4yP=E}O3SQ==UhXAdl8RaUC13`oU=Ai>7N%kT<*y~CVlF0QCT3qgCS+c~VNRx5 zi~$)~CT5aBV{T?+My6-#C1r;Hrde<%X?Esko~CGq=3OqO611jkz9wwOrfkk8ZPuo3 z-X?D5rf%*gZ}z5d!e#)lrHQ$vmceC<1wb*RCHD=;kFCNIHcLru@ey3w*r)PGjU}k1!f+uN;=XjDQVWKB^s%K=fXM0}2QaXWs-Y0(Mr+)4y zfA*(;{wIJ2sDKVAfflHN9%z0BKy%h%8hF`sCYf>)pj?2;6~LJVgqjYh3YaNqAxHrX zWC4hVsECdziI!*7rsgmaZsFCXEhb|=)M5&ZcDV0{Km0l^9W~r8LDVKJsmwqXjhN+lR zX#h~@G@eSFX_DWCSKpZ+PIriGvmDxnst zp&lxtCaRzs3ZpivqdqF68VaCJDy3S0qF!oR^r&Sdkr-CY~ zj;g5cDL|UR6TB*{#;UB&Dy`P4t==lG=BlplDzEmcul_2q%4z`oi6PQ}oQc|^L_nK* zpIr3XuX$N22-_PF+gsdep6)5CrmCuLE4LD=seWstW-F+6YoTf?8Gvi4itDG6E25$+ zxT=qya%BHN!t}M&8tjoSE%%Ut9 z%q-2;tj*pm&VH=P?kvy7tk0$_86W`}fWgoXZO$Go&ho6%mh8_qt;`}V)F$oHPA$kf zZPR{ivDquaZY|e#t=E1n*oJMwQf#+DE5?%BTP&*!42Zt*o4=_-7zEtF66AF7SO5S4ldyquHhbT;eLVQE-vFXuH!y#-U6=VPA=kB?%+Z$=4P(q zPA=#Et>u3IZm4Ol=sIramhRqy?&s!hDFlE!7=i1)F6_px?9MLj)~@Z|F7D>8?(Qz{ z_O9>#ZtMm?+xFWcgn>NBEx{RF#J1^xaGb}195txJ$d%m5(OCdc!Wr~H7epubcCYt- zFZcF<_>M36maqAqFZ!mh`igHCw6FWVFZ{-@{BAG!*024pFaDbE{O&LRwy*vE@Au}f z0JCrZ7BKt*Fak&C01NQ;l0pES!`?)&1WzypSFiIu@Wya6BDr)JTVkUu@p}+74NVRUojRpu@)n76?d^0KQR`EaS(4Y89VV8pRp8+ zu^RVq8I$o2FUuo@upG}Z9oMlP-!UFjZ~(Y)(HR}mDN7BrFah+P-+{&X9Wo*(vLXjS zJcvRbKQbgovLsJ(1{1QL{hc7A!s@l&>*b5=wE^w@%K@wdJVbygpE4?^vMR4KE4Q*M zzcMVxvMkRsE!VOw-!d-evM%p3FZc2;qr>$DvoH@cF&m#Iv!3h0UhK_Y?Fn*RJTo*$ zvoudLHCMAWUo$pmvo>!tH+Qo)e=|6TvpA14IhV6JpEEkAvpTOcJGZktPjf&306T3Q BZ#Mt{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/head_bg.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/head_bg.png new file mode 100755 index 0000000000000000000000000000000000000000..056fc14c7cbd1f3c96035ba131287ae9632c5e1b GIT binary patch literal 250 zcmVY}mbOc$#)|6gbMr}*aQ%x4`t zpys|GxnI6Fw*UYD07*qoM6N<$f_tWE A3jhEB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo.png new file mode 100755 index 0000000000000000000000000000000000000000..9422ba3ab0f369bfa3967dcd53be230c2b3d927b GIT binary patch literal 3549 zcmV<34I=W1P)jBDg@eVJwHjb49IQ;tP~j+WX03|P;>@zn zEWR3M0v2Z$4;?tOzVy|QgT=Qy+zh`eU?I&#pNs(iN&GqGPQR0wAV?NVRsf~kS(h~! zHzo&GDuQQ2AhL8KS>q5L;x5dqtSGXqNRkqbD3~bW za25uSwP^7<{?JnR=j(k{4n+=!(zZ-iKvHBpv?NEOSb-cQ|ESv8-gjA7HrEDksa&H9 z%0zRCY97IwM{eCvm}}R87}MbR(A9_}8RGyIi-mv{#Z`_(hr~Cw-sLR zfd310Ze=6qX|Ej;jrzRA@3T-9EuDk~G9C9HF_#_PPU$fGOr-;2|e z3n8YSL4gW0FO#Z}ju07JCetNn0~K`{xHnlrb^$%Hr7$g6Nuv{H6K-S7@RfCPsMd2~ z_);h;>Gp7IRe?hkh}u|T46!8HfwHH*LbvhAY@lnxPmSE9T4t6)6=oDu(t>qiCUAb5 zRD6>LF+?BV#AhXp%c_i@nOq?*0N4Te$wtqAx`*|R(JtP$p-`3>Qc+B+ef1T&4qIx= zKtwv)e+3~+5Liq8A+6~mgE;n)BR$u`GIOi=QsT1huJC=QvAm%$F9Ql{RYHVUYL)Si zcAH2PN2tc*+?5~fyF9(AT!*A}h3@NouKp`CNQ%}Kc{Y~%bZ73J3zruoGJt?B_r{7@ zG{abB#c0KVq9BS0vI-^^rGNHK-uLgbe>pprfon^r045khHql0khzq=LgLiyvJQUG4 z#=UhVc8Kf{+}@-gqnsX{zBs>#$cTcK$F~+bBrpq?w4nonHU#OMk?{oth`B`-^v90j z^HcNB?Ac^(9Z+CE?5W>g znhTs5o)iFNidx(oS_W(Bn!alQ1;~~;Wy!D8Sm&Lgsm%qhM;b~qHbYGWBPg;6MVp9X zUIw8Om*cKNv3Go`eqB*&SM_BDx}P}XnKkvWod()nHk26F@4wA^bmvyPZu`B zxIL2D16b-$XNDIg*#fiVc$F1(L09Jr`xinkjWOQ7&hz%!{$M0(-O>-AADs`8$kn0& z#>_Bt2ahW>2oI3zDal^|5Ucd(g|O5S7Jjg{)b^zD!FAMd_RNFF#d6$Uuz| z>o1chi0$$Zcl1^l`*QW%IV%xKe!XiLn>L2qx~tOc4J{QRu_6N-NsuDX1&~_t{ah%z z0$>q#3D_8^^CINJo(z8+2uI#LeZfHRopYnpfiO`92`KYoEk&cj3>ltquuVg%U;!5Q$ z0kK8wyhvd>Iz)KS&ISXKyPK;9Lrf@r={H2 zx)}mXLDT+*ilM3bnLsFGu)y3^OJFIofH(b86kkDlQv&nTAS@;MEG&y83Cp@6y0flS zP)ve&81N?%6Cj#$z=CnGXiP^^Hj@1A(8LWDzVZT{#NN=@1W5;0mT5n9*u?vrD_=bN zQKoMYK^@kZR^#Ncwk7lTYW?x9%`Usmf>NTk0^+|_&LH*Rgl>W`QvP80+5Zjhzj3Q> zgnaa5C$6cWR2KPeYOK!m!6C{9Eo5}Cu@sHP^QF}9@#E+ls#O;$B z;F#lqUE45ktv~w;hYmvgScQ7td>g!NL(xm$-2L1)+Uz3CC=N(FFwM?jq=J#?@7_Ci z@U~XnPEK_X%mspM4?pW)IMvmY+NQ*pkNK5B=#b%RC>Xn~*S>YLteWY1Z=N^Tk?qk& z%FwDqlvP^&^`qXJjWr&(&S`5f968a|NAe1))A*pHd&lOwTxU-5Ib&08@94zX6xYO5inBH;MCk3gHvrS`tkaS&-xc5QI_oxs0A;E!tZx< z>$ykp!0v5!nocw=P{`P6Az|6SNEViqCyt%9;Q2Ha(9Z#2M>fAa+Ii338+8LKe;|0O zdywq4@z;>#bJ$vX>g>6>YYVCE3p{xTZfLaf)EWCM!DK6KUb-h{554li;oeIbFiVJS z(D8zSk$Smv&{42lXY}8$sIRUqFEVG=3Ojhia{A)r zcmMIhLodJAH|0kHun5-DeuujE@%g~tJ{dZ&YrC%O#Pr;!gQH7iATVJc4;fxv7lv>o zp(}X*?rlzoeWmt>nt!Z8b2ShepIex`7M$=ec8*_te{kZ`e1NXN^aTsSXg8kd;MpgD ztuId=@7#Cu4u@So!*}%KZdp+$f+n`9+lpn=@FIQW!%x2Vz=2djPhRf9wym$WpEinU zihlE|wbhVrIAjtN(05==Q7Ign(M zGRrU^Bw=$e{{D3ySALG|jYGG$RvLwozyI0}W5uu!JJ7nt~Po%inEjy>5+M^3ExYN!)BUYxyFp2}gd7FVEY7Si7c7zfwj_HWhlpQ7DuDoNbOzv>n*#9D;XLZ0&c!uQLPV&fZP=&@`5lle50D z!Igt=m)6RrmfG9fFOhP~%ggtczuD01bsHNz9&bdfc*T_FHl|l3LZw=*-S~T4&@w0D zu7Mx<%l-3$nKjjqnFYz@ynzK_r$8oFufGwlvZm)RWd6D+U0abWsiXYYJQ+t0PRW$a zskw2fVnndQg$<>Ntsfs+u(|2 z_a}v*Zlg!|kKVdMqtk9|)X$2R))cF1ZU55h+u4P#*~RfCkz!rfI6Ns)YX(;2V-m%U z8#fk}nt3@`IVqH>K&57#!{Iz1o#_&;jY<^4RfS5c8(dtf`!N2F!;>n(mlIqusF_?6 zuc$O~jaCeHvPl! z6kn-k@MXaN5%y~M|K520yZ<%;AoTzQxiy?lV`d^PJz~4*<*Zz^?#K#x+wu37Zd8CvB&MhjI0m{k` z4dO%cD2ViK_Rg(`$r29hSG`>s@Eq9do9_413L7vrDGSpWHp~uDAFsL4fFjxayAdyorui=hSMTpeiMmo*cK@5R1ti7v>d<*2#j0DqR%bf zKHA8D#@k1Qvti~Pu4e&Lj5`~;cJm^B|v*@xxgRFT*@f zdLJ)#C!D3EzWm8G$ic0(0veCQ*5D7}FwP~^_*&;XkOCx-Lc~$rC`L{mwNyJ}IZ%nh zNfUs}C-l;4>Uj&4fNBa4_yI_bZ%qKwdfI-d12Et+)qLx>?(s+Ff|yP0Fi%ml)p-y6 z9mLPcT>M050EJ|UaeoYj>2RHR$Br5j-h}26`3!PCkpS3YlbJ~GjR0l}lAewQUWv!V z84saALq~iPqk-yeno?$b1zVl(@@I5x)zd58K5;=h-T?{~_M{-;2`Z|KU!GBKgm2SN z*fO3wd8P?qt^@AX4RXWRzLXuT^8`4&>fIGc1Oq#j8*T)^jU&ZHHAo~e=&em$nm1ZdQG5}%RNExRtu#8?ytO$^gk;yGTC_8`uL?1xH#<>g#K+r4 z1Ki(tRKy0^?r$J#4buZxXYW`!Gv1h(z%Tf)tX^}T!(yalOdrjlkcioFkZF7YAk|P@ zy*TAJ3Gi-&hM@xImKS`SQ7iG))hreoi-*6m z*aBEo(#*z|5BppxZ%e%85&}7raJ>zHB02wo-^)L)2*%sx@7|5I!RLkgRREL+p)NS{ zf~d+0>n9KPd#4`(2v&}pH|=?32%>}9qwq$B{?*A3drrnjRl!W6YInPHZWSK2@KQUu zF8llDg?Kr{7tomTwrkcWjps3?E@WH)@vEw$#k+otT0=A^GA3|j=Q($Od^RVNoevbZ zgb{t*32-A~KN(=V>9*7UPS#XUI$-;+)fY!mtf~QDbA7hkZ^0%>(oow$G}4Q}G(RB? z-c}o#9d?&%Tsao%yI{a^On;-ona)&Vwi?J?iTVX>PS90>d*Vlf`i*OGYuW8 zP2c|JZgAxT(=3Nx;c>j%IGhNv067RxG}7<{5psadFxZJDo8{o)w3m1+MnE+4iA1lQ zE6m6X`hF>k(YCe2bW>wsr#VKJvztyv9V3Ri4R?L6;`-GfBZ5$X4}41su@=BWj|Bom zD+;aNsnzo&gblG^12)IsPw{ZBKwW+Pqmw4fF}>*{&GpBDr|sX1dyu2q-M8sSs^A7b zw6B5CrwzO4%tS;W+Lpq=A|6amOL_J$^s<{xrC)U?BoMytC{Z?Fu41Ap(!XsRBpQS~ zNc!-5*yN_|b>~{&i-N9B43!yJ0}TiU>K-n0^J7Lkz6xTH%spy%dNgigN9PUAklh-_ ze(#UBFGe)NU_AiS-Gs45HU{vhUUt@2o4?+559%UjN4JbZDdHeF0V>+@tet z96lfn=uA`?6$Z~axZtow-5pJU!P?M<+krh@&L7BDjfC9q7(_@+e`CqBzB8MrNT%OJ zX4w}(7fYHMh+H?kV5EEp3mup5 Av;Y7A literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_ajax.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_ajax.gif new file mode 100755 index 0000000000000000000000000000000000000000..2329a7ed3f1f602d0eb26e242cd7b03ea0401af2 GIT binary patch literal 2672 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_colorpicker.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_colorpicker.gif new file mode 100755 index 0000000000000000000000000000000000000000..3974fe601c21e492a8c596d068aebf788b5bf915 GIT binary patch literal 1300 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_editor.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_editor.gif new file mode 100755 index 0000000000000000000000000000000000000000..e8deaab02e1faffc6c4a97a72c54028a5d21b668 GIT binary patch literal 1766 zcmb`E={wsA0)T%cl9ZUbg4i(=ajbhtJ*HE1+(OaRK5b)5i*}UiYIRVx+YxaT$(TqS zbvDE~)hV596N)B5(B!FWWRq=FgoJj93_+dQXZCN{_rv?~{qlx|ho1f>F(2>-lmMXA zeA?PSOwY>hldaAEXDgrg{^01CBU2q~wJR$t0gSgMWbVf9!4v6fO-;>$dY3+}Onf2I z>>utP97&~8P)-Y`eqwTUtEi~x!qb@^@yFEERDy8v=vd3;a<{j)`}_M}zkdDwq&kf| zzjJW7zPrD=z4vD2_x+>ek2`y!b&W)|{a(GpT3DM~)6nU3-m*%vul;Rpi!vcseL7$= znVWkD{jxRthOzSUay(m-#+CATJcUA$(f@DioI)fLb#`{DRI1F(Of+pYmMswo1bM>6 z!Nv7~#r37l-NWPK?Sn(=obu@Sm^P;vRcz!5wEK5uf%5QV$sUpS0 zhY#^AaV$%6n=7S>lzDykxQa*i1W9M~F47d$D_&glA7bd+f>ZpCXUyK|=6{blM;Qz~CuwZ1f-5UM~N~-l60a z^s~#jdL@vo26O@4o){sXQapN1&k0Yio>d6z^U5WjNx>F!AL>sW%y)Zca@!`0`-WGt z<)c69#k2iWSher#e@ILJYe-ndW?c6w_W5-Z0;62I>=biDAk#+#<6molzh*bn1CFOGU3PSolmDm|0*PRCIL%JjWbAfyCD z>Gc8$0+1lBQu@U3gxEfN3ds$Xd~8Nj|GZ9;4sxR?=f%*@XPH;g}g zL_Vm?1;D|$t}RqU=v@xH3h_!V3gJh*uyOeIMdoZY>+=kIi;`M&HBnv4;9oPKZYLp^ z2cIDY`cWEY)tSv5)cIG!YvB0$fMBrM!F&QlnpO3ux4}4}ZT7cmoGwbAA+e=z+B|9< z89sLK5+Dn#|9OGI92}PydY%1xy+zyvQ}qeTzgqWAkO7cDjhcwE)W`_t-+;NpMuC=| zg`0jbIiMGK+M{IRnSpv=J3w4L>$8C(+$}Z^z{!q~K`H0CNK^vnEJQV#2hp=!M)7yy zr|Qsz%djoONyiWG7Iv6206MY(f5*6HM4aLr8ls_=SZjHD4Tf#aBMjIE>pqwo+V%4w zeh_dCURrRs6)0#ZK>z4Gcc$IOEgR=Uk1D%Auq7Wz35PCir*e+epW_1C{gDRdnHN;M3f zA>;Cl%Ag=?dL-0Gs&n!|CW=<(8;Yr(hNrS;s($N%cr)`OLWa=hzjhY6XV)5B{iJL8 cuCvYKQMfS4YU}ZMWILv2LYN$gHUfP93z)Q0WdHyG literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_folders.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_folders.gif new file mode 100755 index 0000000000000000000000000000000000000000..dd30c8f9bf9a47dba5b495f758bddecc0e2d36af GIT binary patch literal 3009 zcmV;y3qJHmNk%w1VUPee0QUd@O|sQ;a&oH4;f2cHg@uKayxQ93@+O0~{QUh>vD&h- zvvz@mgtXO8aB$@8^o zzA=Wm`1<`+n#E9cEH_aWo2n;Y0uEmqok)=v)!nvslC3w zoWtFFrnuAK?~c&p(9qF$tSP_<)7T>yS%-or>eN#@ZaCx=jiE1lEA^*+`+=d!NJ1%{Qk|( z(5|koW473q&)VYR+8P1!M)(|rO4px?d^@Z+2rKr;Njxj-re%_ z^z!obz|>*?z1 zo}Z%g^YiiX@%j1rk<;Yq>FMO==G)xdm(ktb-QCX5&(P4)%+1Zr&du=g@z~hfX{gNd z^z!xg_4fAl{QLZ7XJ@dmvbeaq;^g9UbabxI-QVKhhlq%3w%2O6*+I{{-{Fe4*O152n84fR<>TVu;>XC#=;`Rw)YN{NpU~6L z#ogl9*VpFc-OaoA46T`gGaDQ{gWoP5 zJa*-Ym#ZC5^fO<5uWvWdf|d--bKNEUlPpNh;H<@e2&mEP%lPXvwivSb!@pFyc2;@PQSOjsv0g&MA z&o#}uLgS4e6VO4pE6j2-1#6_fMh88RZ8iq5t9{f(xaum<7o5~c4na`N+w9+u`#`Ng z6MUZRH#NFKkmgxPZX*dm{1Zp?EC7kvKNASih5(@(v4SsLca3@n9S9OkFg+Xy0ut}mw)K`Xjuj?{Ia6h`<(5&qDF4~#Gb zeBgr#$7sS&w2(segW<+zSR)($O^3oN2q+AwG@#APh74TeK~P}1EFEBg2U(63DUb*& z3Ic>Z=m8=!Fo|A}uo~8=1S2L%Ni*7NA}>tZys|Zrra|F`JNyTh{PBu{Xf9OTh+70! z$;t@y$cQpbh})1iuL%V*ik2v32hL{%J^bMh$7sg~J|KcUEwr~&|SS^MIK>-UOKoAr-4T_ntA{IgThYVyu zm>;;pEpP$<4=un0A9SF@0|xqlXIdna0*P9X22wyg_33YO#8Wl@(Fcts>l!sGB|&~B z1XvnmVX=7PKc)uAf-I*UtIJ{$dhmyKxby>#AVNBN(1A(7ArK%4C_x{fhBH0{q5pWr zy!^n8S7gCP3;mk|G!_d#2*3|h^PxZz=Z{#}AbL^=pg$Ih&VpdnA8n9=^fY$>krHG% zALu|96KT&6SiuUDC`3BaA%12at$>A{thZeBj_4J}@paK%qYeEY|}E zaT_v<+Xf*pV7E}5#AjbR+PUgr3FuwI6+SQtdaQN~d~L!Je0rahEQbg^$N(aSd4+To zLI*ma0(ymUgB+xzz3)wcf)g;`zt-0w*Gou*uNUFX5FiKl%;zNHDu(n5gTTcAFcmhC z-~~7M!3sG9CHAq87wDk~|L6oIj=MPz$o&Nh6F zhtK=}xGXhReK$O9<^Vuw8Z zqXP&aMHtw?gMDXU26_+(DR_Vo3c!LAE9k)u;NXcTJOK?L=YYsL@Cc7Tp%t*6Xn@L9 zPLq7M1Od2ELK3LqjMPzq+9Mx%xId0^CD?>*E?-G2Do~W7Xy6&M*u@EgG3pQpnBEEq zdRgMJmKqej3r?5>0<@6|9S~y)Qii(JGou&+6g?UhC<8rm@ry}Z0RcOR`q(wI0uH3R z=o(N(D-fW70LXpru-OG3aAEbLbfE@apaS6Q`-eH0T?3Th^x|XF3nEPZ@|a(IKmY(c DjAazp literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_form.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_form.gif new file mode 100755 index 0000000000000000000000000000000000000000..1ecd103a0f0edf951fbd892ba6cff658241393af GIT binary patch literal 1412 zcmc(c{W}u~0Dw2lVl(DzK6aRmoKwlum3(vvCn>Hor7kxQS#?LkQ?BG08=HKM7VF5XeR zT3WxGUoart99!ESTia5pHEf=+UnnUqE@m%npz}F@%M|N7is^szD)q-rc?qL2qH&bT zWR})Fl1LsGb+TPxt zn3(9CSyU(#N~LmZYfGh4F&K>L>1kjZi%ceKG#bGF3QDf?U*F}6zdQkeH3V!Xk(8B9 zrsUks&C4$+q!tz5qunnlEqhR2QCU@8L$7_vsH<=Iz41}gfB=28hu0-%6iC<0#Em}Ft?g?#o_TCve+F=h zWZ{_|LLkuJwow*F2%O5At-)jI7Vi@kJXec=#a%Msd)r zJ$yg@SW4RtO&iu!VTcNnMgj&u*?S5)mFgX@eAPEI-ja1{ND4wiLM9M*a@(9l*k`w7ffqawy) zt4I@pOZo0mjp&-{`n|Td$#JW34cAYjV#><%u9T8Un6t=ar{MOg!fNm7*=THfBr5&3 zy_%@+%|L_rR;dztb-~2$&Hb3+8o4Lxz(K5CA{I1 zR2A-n+Z;K<7^Vz96-^>y1CS`rsDEyvKb-0VpTS8wo=<@jCa-WIs7{;?#)tdu*^9=L zIJ1awr|uk+GpV4Gb6)b;9{nRwkiX+85!2uF#J)+>P!|^Wc*ubCRMsi?Rjx^Zd30Tm zVS1>P2y>{S8HdVo%+T*NIw_+9u)~Y6O|pV?skNiB9-i(;eyw(%Z-=RaBhiHQIJ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_gantt.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_gantt.gif new file mode 100755 index 0000000000000000000000000000000000000000..72408baf8aad54edcb82ee316c921a1fb133542c GIT binary patch literal 2025 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_menu.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..d25d5d6c86d10615a0fa813912d2582324c422f7 GIT binary patch literal 2120 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 kv^lnqcQY~$)tXb(uVBq?yTR~y_j;~R zz3YlzkLdgNdv1b*Yhh(|QFjY@eGHC|kdc0UfEAN}fQ1WGh){O|mJAjR4F#sBsHdb2 z78a4Ouat#{olOLbp%)MoyuH4^6c8Ax#Koi*eY04#Ot+v68WYmf)Ya7x3L3!Mz8V({ z2m*7=OLvwQ69E7T?CtLF2>=1<*7fz@72?a}NX``u4K{R;(P6`c0SP#8NXQUgyABg5 zAk(*x-xgd93J8o)kp%z;6A~;UBuK=(1_<*1ZQ6mLV+#fc3ao%BbBHqp7Bmjv2%`hY zZx4bB9ZHk|0SXfeFi`1|h5`=~7Q`^%!N7_GRf*ipxnXD16h0>aU_i9&&;kVJDGj$W z2UQOYVo31dVa43KHWwi%)s^Rqu;9!Jj*GOw#I`uz)_if-E?up9`FiaMl7a>Zm@{kM z3}JxU!(U}6K0!c_)Dn$FARdwW!)g-?@--DOf;NeplKr~ynPJ0*48Vg6AKqJ@!&{D_}EI*cYl zh;WghFmT!e1ptWGpMl;MW`!S+x#pylvgzh=NXCh02{0LO zmw0*7)#8%k?Y7x+aH)oxE(V|h(H0o$rXw&gUXIzR`(=lx z5kPFQq&+&>01o7<@4o!@>#qa8Ka3=Pv2)Z(wBaR|mxiAS1rz!yn&YpIckJ8%9 zQv~*P?6JpK*a|KVSNNgYFnE`%3@Yepb9C*gGnhQ*h6TR=hAlR~1B+bn4d^}i0e3Hc zfYpImX{o3LjmAyD+>P2Oo_ev(RTEYd@7yz_)pBe2;oTCPsSf`bDl0e@MN7b_3xFd9 z<(8iyz*53uTxgUTckQ$PR!3WC5f9TwTIuSPwrTd_r<0HX1p^G+fwvtbFaR$d05Fj6 z1Pt^+JRc0;D9>C?CMoO8ml=}cNT1$&1Qh7rCPD<%p8W*Wb58+#6Les_ta@bx>5oLF zF9v&RfdhN&BJ>_900TtyJVM1&&;e2$d@lk38}JtSo}rNraD)~=n8Hbx@;>;s%QW>R1!TfUdS1sXoM(MLB~4U@s4(Eg(GA!hbFqQ25A@x zA1*=2LK^arde8&{|Cm5UjD#eRj3gnvzzIeQfeUiTq$W4X#6?=tCh7|%kv>VvQkwFV Ps7$3QSINpGga80L4DGy) literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_toolbar.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_toolbar.gif new file mode 100755 index 0000000000000000000000000000000000000000..5bfd6ea1d20adcdba63e32026436b914ec2b5d7d GIT binary patch literal 1954 zcmV;T2VM9_Nk%w1VX6Q&0K@{ks1$*Hp zP-u;cKvc~hL<}P6;DLe(4zg?C&b_<$@8GjjO z0)dDlj$^@yC!(mxiY&I+qKYmGz`z5|jOCdLh#kOST^_Vkfj8>a)xZYzT|htsKqemKuq{2f2 zXn=qL>IHCtK@px2PNS&;N?ztqe>#e#Y zyeU?#B;h*G0(xC*z(O!xS}6mf65v~u-?RfD1h*kD69gM5T7W_TJTfMH^#r(RwyU8U zRk&u3>uR|lC?N94hKxM&2que+a>^^49IveN-uRiBcrGAvj5rEG( z%GP7sO#v80Q#UtdU>|;@dV?oU<=hs)g9v@Q@v0ub+Gfa3L7;#y3XCFx0w_yo0orFf zwRXuQu>FC&AknLWXzl={8ZbpasMPQos<$kgaiD0KrIU_hHZ^jz%} zBH(g8uGej&Om^I97bUm<+#$mq`rI(rEi($279fOa8f}gwMIklsKomHDl;~lq zK{ShMT*B0j=+S}yG<2##6+(+Q5U?A(B<6Aj)Lg4L=L9E;&jb)+kOB1Jhy}%G0RRYG zK=6~E+6jz+_|V5fq6A3&$j59LbmW8rP$4~0Ad$#X2O`8|K5(Am~&bz#&2~-~eCq)-op2 zk+PcgtQYwRKA%Vu6Tk#r+aN(o+vN}v%yg#12$@V{n$@ool&jh5smQ$O6o@#78P-Uw zViyaIXl5g%O+XhiNjd@yfTe6#6`KP>hSjTf0I*>3DFb?n%}q9f7N||FYGDD1aWXZa z{Y(Ki9r9Ya(snweRGae@Q5Z7M85+~OK{5}3Hft>(akI{e|e(2Z^%0>NA# o(DS+<*u8Fbx69q`diT5F4X=2|OWyLD_q^y$uX@)D-Vgu)J4=akmH+?% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_tree.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_tree.gif new file mode 100755 index 0000000000000000000000000000000000000000..49c40747c8217545b70a93118eb6851df76e94f0 GIT binary patch literal 1495 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_vault.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_vault.gif new file mode 100755 index 0000000000000000000000000000000000000000..74556bd791faca7e58df2ab04039a249b1aef635 GIT binary patch literal 1801 zcmV+k2ln_!Nk%w1VSoTL0K@g(+C_xbMa?2FX)@$vC|e0|^H;o92T zrKP2toSeG4y8r+GA^8LV00000EC2ui0Du59000I5;3tk`X`X1Ru59bRa4gSsVBdJI z?>6oKKvS+lEE41ejE#(S0(}92lqzwC2?`mT84;YHprN9o2@H{bla;C@ zg9l>_nh~-DvbDCixVg8RrKhQ@tF49|ogN6s$jQpf%*!608Kwt*z`()`ogAthp3(=u z)sz9Q3<RT*y!Xfeitk zMYu;TAE0Xq`US|)p-n0tAa!tzD2pOEiz*KPXn=uHV+L&7|peG0}Nt6koA=~#p1P+)2fwRLheSob~yw_;Gxq42my}?_At0-$-^uH zj5(=Xz^`$J=u9hdfB|h0uAGZ_4WMy=3y>o*r<}3r?GKqNY`*H@^MeZo97YH|nu6)D z#tpMx!9Z<-68#x4&j%Ge003laK|mY-1`rqkL0BV5u$BPZz2(OP2(C5Y2pFC7)Bqav zMVv9c5%69CC_1FTF&?zoVsT>~x1S2KEdU{b3#e681qZ&>BWxlBXaI#G@aSKKuu2@fI$NjY!KQ2?!kv*0T;-J00mZt*#KdyO@mko0)#h0nrkue0S9kgFa~%> zejp@~9~{u*e;;tym;gDdb-@MKebAwKPnl3b1SV>^C6_89mfue+1Q2LZBG9>j2p9q| z<_LjqYNwh-?ujG-5I&~XjjTLro&p1yph1?8*6L6OtcoBIN%kPef}e((nkQ0*x{^ST zqTV@zkp}Py><6+%78iLM=~Tl12DH{{D*+jxMgm@iQMv-NZc<<&2^2{1z)%P#ODciF zatC3wg)T*{d4rA6K(^XG+9kK(@D;AFEEJ$t0ToDSfCM8P!0uZHs^zX)c=~$CE2Fc27QrtVVD18) z1{Cm|!5IQ@L5~zgzXZ;9`pb+5V^}yt&9~?=qSR!`}cv zpp*juv=4v;lOT}(FB3rEJ^}$S&_0ox6Gegm_G=#mK-Ri)6k{qV2tfCY<_Q&$Pe0~+ zfeogxF$x+gPt2LZN5(+{3$lU=O1U2FP*8ydl1vs3^qnd&umKHBVuS(UiUu060ri9> zh5_(a3`HAzy~zI0SXLc02C-l01VQA z0iY%T9q1hb;*uTzY?!A3_9@M10Q!hAlUquv->DV*@rh8Wt*`8#B_!VEEz}zxa`g ze)tPsHo$=%S|9_l0viJ)(1}rSA_A7|mn=GA3tn!*6AvJmD96}=4G8QmA7CZybdmuN zaDbIP)QJK81SHUlP`2g?aVVo565#-D=2BapK#>CyafdNTf{6$9 zK|-@LheI5OrJt8903sk^hKpwOB7-1=73Pot2Y^(U_9$p1tiT40p7aMeI6@&9;8G&8 z?Wdk7Xdjlqg`1932m26!IWho&cPIb?n=pkhbYN7VT*8dr%zy$cii)b9G^Gl41Rc0q rIIkuqp&i`=SH)@8vx1eQXc%f)+v?W0W}&7wrE55bfCMJ|AOrwAZ?PFk literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_windows.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/logo_windows.gif new file mode 100755 index 0000000000000000000000000000000000000000..c884dee4f737f7fad9bf90d0ec0bda8086b1fb30 GIT binary patch literal 1190 zcmV;X1X=q>Nk%w1VU_?k0K@awetD=`ThR8;P3qZ|Nj5~_4W1k`~Lg=|Nj2}hRWl2zuf!${q6Sq z{{8;_|Nj5}{{R2}A^8LV00000EC2ui0G0qY000I5ARvxpX`X1Ru59bRa4gSsZQppV z?|kq7z@TtQEE(8U+Lev~;#}b$3S#84(&Y5W)e)W_*g*iiCSM6A&a9 z-XjwoBM;#d6%ry959%fruNBfI-4^d9uO#jw6B-p0Ds*832m2>b#Nvj9K<28L;{z<_1T z1rbeb1F#2^(My~}Y*OlJ=nRby`H(E|0KkKh0ys$fg~6l404xz0m>?lSSg;Ozi7+q{ zL4c9NAY3J&U~O0fBBWIi;L#Rbyh05Tr9-N)VNyu}ELE%kA&rp=?7>Cw3o72N0J@gk zAb=$X3l-Wjcwn+60F@piJXpZ1A^?gAykYQ(fhNlg7DfiBx&Z8~z$0qe8cw`;0SCyB zCr9p}fa4im3v5v6mOz9He5C`x-1Q*`02^3F-as`B5<_KbDS`!*DuBWNN}9&HC=Rs3FackviV$r9&xjCRRS~Fp8lURy<&&3|Y;?~@4*)^WM&s;r&?4Zh3JG&)6En9=OVV@ATHhQs06zN+^Z^uz zU^CHym9g~KG>;AS*>}5&!@I literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but.png new file mode 100755 index 0000000000000000000000000000000000000000..32e66bf3d6b240d58c600e4648dc9bad9e220609 GIT binary patch literal 525 zcmV+o0`mQdP)EaE&mM*gv##%tb3B42FYrMahy04Cy1bYkfn~QXy$4BJRUzg z4Fdpn_-L7C@O0F%jJ5e_31DpLmbs;aHS2n-)`_*=;t!sWYv3t=Oks4Qe0K0q`EG-j z1Oubfg|)3T9&A>>m)pA>xwoqI3|`LSP1wKFLg{O`LVjW>M5>mKEuT)tG3nl|%vbvW zld%931ViOeoFYQ;uR{%|h}GYyM=;!5$xd^F&R4P+#eiulzYr&LK_LSobKAp`iYnFh z&{^cYWhxkWJ6DSl6+{e}rt+yU(ooHn-8W&uK!$RA+3t01TF+0$2 z-m{%68R7y|FKQ?qJ}#;5Ex%9I|7+>+enH1doH9rp7oewA*E-!cJePm4HTg~lvxLR z8Ls=8Q%e&x{4ej?#{YitCAT5|#y>Se+ir;8;IE|Fx9NWv12gMJ`xamTE!m*F^s>}< P00000NkvXXu0mjfkUi?9 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but_inact.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/samples-but_inact.png new file mode 100755 index 0000000000000000000000000000000000000000..37a385d17af6bafca7d76b3fcb9511ca838a4eb1 GIT binary patch literal 796 zcmV+%1LOROP)lO+H!U8}OVysCNJZGRI!o+hXU@lv&7J_^}j~IZ+ zG?@#)-ExLT&Kc?`NR(psbGcl*-9`~`uqep`78Jpow<*YeiE3O~Faqc_iO*)UolXZa z01yq4Xmgp#WC(Y=U9352&L#B9ZIS05kQbu%PSor5B0nn9>2$Pif6qAV@3_m;NkI2b zj;Gxn4SvjS#p$K`{k{da;K5*EL6pPc(1IvOqmczs+VMJ@MHyX`?@xZlJjC@&bE!!# zPJg$!?ga~;X6Gkl>|eTY*rwpqwBlET*e`JNOEhpIL0iz+A3&7oShCE(tq{b zyE#wz&HgFYoJ2!17vTQVWp0Z+_kg?*b-7e;znn(Chu^(1AEDdzg^MW%&vE>W@J0++ zT#cu1b?AC9xvfSY*SI4!IPiL$p!MC?9|3Ls^i5~a?B@2b-rVBRCwC#SiMREK@h%^0}C5}O9M6* zHiG00tSo#13%h{9oJokHkXjTp#F&dQq!WAs@hxm@EG)It2o_36v*(;cChJ}}-Mt`j zaEs%cZ|8RRyPdn+8GE^LJ^lV{acQlw8E5M4=`y#@M$+2Jh2#4HdVF|bpl3Fb068Ej z(1ce84TOLs5g;MBND@4EDG(#{cj>rPBD`HF3}ittX3U`iNhn4)@Ji)!A)l9*BAc<+ z6z>%PIp(`0-;&Q}(JWUg#2`=@FahATuRn}~Br(4fcv;uQi2)Ew7y-o~Z zKlI*)=Z)_DzIECo6nI(<)+d|vL=^{Ozzq9D_$&B_ts8ijN#JdyQfG~ZY{CdKsW1S} zn@w4~G6?!BD=`T?%ePnd4zKoiZf|ZF{AU-F$<^YK`A2-%PY(jm`;cwL*c>R|IuV1ZTe0tEA1i3olL1pPm{vWIMpu0SbMOzNCG)dYjk{N_kdIF;X{A{077dFg{d2PO8@`> M07*qoM6N<$f=h($ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/search-field.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/search-field.png new file mode 100755 index 0000000000000000000000000000000000000000..b2e88f38b37a51e3145d2411e9f752b6666c7cf2 GIT binary patch literal 338 zcmeAS@N?(olHy`uVBq!ia0y~yV2lT{H8_}n-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B_$Zr;B4q#jQ7Y6!Q)nFtlB?*xYrk*Z-wp({<-Ja?7lp z{R38NJlFL6$Y)^Wy7+C^qO!Hi1)3){ZT#Ml`lp#+!eY-_GyQmZQHR8gTQe?SD4na@ z5ahLT8&kn#D~4ALE0`DXHDE9h692X9&WUTPIx{SdY5Q<@`}EKKKFn;|WA_4FDjB zXo?-iIZOsXfM6?52!WE&LIThv!BRnSGKvHPgc8tbRgwtGA-ipK ztQZ4hJFQj@CB+4~MGOvTO0zWl5K2!MI0ajI6MF>%ZWj#z1t1GaN`?|xT1sXZB@7sr zWoMKUbV_!36ALAvKx;~Ep@IyAd=#t}Q6&yUuO9~lFFO;24YrO9fx96FKN1Ngx*2!K URthDi(yv;;*P#L%&&Uw~JDw(SE&u=k literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toc-arrow.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toc-arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e0389e9f8da09d4442b1dbf8cdf0d4f562bc209 GIT binary patch literal 70 zcmZ?wbhEHb6krfwn8?fk1mAxC`TFDc|Ns9Lf3h$#FfcRdfJ8y^3{2v4`d6NQ%OBmr VVPm~vb3{%pqmt{iXFEk0tN|)o7eN33 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toolbar5.944_left2.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/img/toolbar5.944_left2.png new file mode 100755 index 0000000000000000000000000000000000000000..dabcf312c547720ea4411b4ba545f2cc0771a751 GIT binary patch literal 3099 zcmeHJdoP9udbw10wJ!EE*i}4?T<4b-aMW zppT(Z{>1Pmv=so#m5%lY+z34)p3^bzDR}H)Hw-gy+x92z1P{4q;>eOq6k!VH-P4V) zP?$D3hKk|#6RG=E*1Tg*Y@-D+A778Vrt2^)lQ;5A^ea9-i=)&Qco$8}gFNc}TmUHA zKs{j5_NTxg11R}LgU}BhE78ELoDsV@zq3SQ1#g}_%tka}v1wJZuKKaDF&>YXU(4c+ zKYo08{l#DeYUpfrPJy3>~_P8+XnaWc%r%v-ugF4TaS6k zsC(pO8y`vN-capQv=^9m1u<=TwhzZACYqDzBRL{u#urEQ5ig~2*>wr#_Ipds@l+<0 zi9BCX3mf1#m1t?6458db#Y~T%X$bm0)VC8o;+(ss37G8S=%EBx3P{^5zv!xZA{cNKOC<+OC5>RR<)XLawHjBmLXbcCE$u`7t_1}labqM2`=QaU~ z)RS_kaSts${bmR*X#wHioN>ndTL&*2PG-gFXP1Y@Q$kJNm^K1pTZA2=gWJY3}B|EXlpZ6q!WM72|l>4t`cS0R8LB=c339^f`kD;j~z6 z($^T*yDes_)4V|gK)v_4(B>GynfCOq(G%t|IGnN6L?B{YHsZ}&XS>-$_qk)e_$m$*ZTb|9wslt8Zer(74xAAhmQkKzHH)|@)-be?oTbT3e@jq27owTFbkYo7nzX9*> zX6GNcX=S(PiG`l<8mBc=N^4HnXul0J%YRb|tBDURXc6Mk;NFR^aAebVgSG5`q z^{JNeLZ(MX9>>E#Knp}}C)0)5I)4%xjV2O_|1H0tBU^r9L-Na?GK-;khk~HO=Rr*F zn0k>+Cc_HuN^(RHDP0BafuE5-Qw65U{yX&Zdli{#xZG#g{K2gh;niX+yL0wfB>lP4 z!o(z8uB{wNrF=Dzpbfm!9#lVnk#in+YZ(Usq+e##123yZ<@~1K+RV(bkKs$ztV?N- z+gC0J;_r&J`sJz8SFa3vA$d2z+bP~)xyVdfNn(X+tK^q33NgHH&hWK9+c2Q(^YhUi zdQH4yb$pCSZN3S9b#yG(g?4w-!r&w7V3@~L{Hq8H8}fWhA$egwx|ViC`fluW`Fl=1 zJ5lF`1d`^csHlZ>MOl48xUg9L{`Ya^b|t2GG^yrJ0m@u${W`49E|y*G3^1`ZOLfVp zWCUwMTG7?j6~D*NsOn}Vixq{%UJt=|AVMDy#0Pt&2sLyz z>BL&Z8%POTY0QA_D8c5u7ZZ=2Es|rdT#xI;Y=5E0YZo)py=^$1#LeNE8X%7t{?uS@ z$ltr|7WUTrLQxQhdGrePH}~5LYh3Uo>ZO9IZmCXq=M3oZG5gja zcgnvt-?_3;`|a!c8wpo;4!tWOjAn0kNQB+$8}1btbc{$yC$9AO_C92>oE9c@D;6md zZ7gjQKsy%=Y}~l9frcSQM*dvIs;smQj`l*}9YR~J^*vK%`;Sxo+3BY|C$oUbQL`Ky z!q&CtSmos&rGF{vIY2m|cOf}B`Cn>c19Mo`p>>0;KEU-6CCRe5(|EW&&~5hZPS`*W zg%G#M2cp@glhQsgaIlm+_LRJi0fmf?j+P+?EycU#+J4YyV|jgjMo=7by;$}>q>SDQ zOzHwnlyCy%y`3}pRC%iTjOk#K`~b71!g@7y4_Vo}M>Kur^nr zPzZ6q?fjoEMPmRNl&~^q$+4``68e$wPZe1f{;47#HuG2a|2zDj7C+qfih2D##fQHl z6Axvdq@O@j!e$6o?+$|+1VuVM(XaKWH>6DA@^|iVkg3~Z6EmlXQVaj;nlP+``(s+# z#-deVm6KND+8exy{_3KFf^RJ{BGQ(gvG&#dd;R2N^PZ1NtdxN(qAy8x@s}&Q_?wJN hj+I+8Y43-tfb89LPoHDaTF`4BI39GiFSPZ&^auRx)_MQ{ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/arrow.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..20858cbe43cfe17e5473b05b6db91a9341501bc2 GIT binary patch literal 59 zcmZ?wbhEHbjin8FBqp%jt33VoyvgsT#awF!Kp z2zj3ge4__0Y>*Cyt`CQ>6OOk6ZjuUpqZ5$15sb6~Z<7#;vIKIN5sR}Bin9%b ztPhB=0Bes6fv60Ds0MbM4~MT6lDq*t{Ixe z7?{HtnZp>F#2J~y8Jffyo5dQN#u=N&i_GGR%i)U4;2NC9`u+YLoX3mH;W?u0;y?DzU7p~(OL{{R30000000000000000A^8LW004RbEC2ui z0385w000O7fIxzSgoTEOKud~?jE#_aG8 zl1w(~`m}cri5}bDG z>8GHEngk7`mTKy$sHRGT0Ias^>Z`EED(kGYwtB;@xaO+suDsrG#IL{xE9|hu9x=eN z$R?}ovdlK??6b&TAnml&R%`9G7qp=5w%m5>?YAuyA?~>3mTT_0MIfN=y6m>=?z`~D zEAP4#)NAj(_~xtczWnxU?+5?~Ebzbt7d%1&2q&!Y!VEX;@WT)%yuid1S8Vag#TaL- z@x~Mv;PJ;Ghb;2QB$sUR$4I2C^2#i?>@pG+#4Pj7Gi%WX%{b?*vle>jF^A4GLm~9g zL<^lo&w9jhN6}12;q=o`M{zXLdT^0O)KN>J_10WZO|>3jtikozQAfkoYFyHQ8qg!BD3;A*o02jNvT-uU5&tF1;Jj#qKT ui+YreVKWY7V6=%a6LM;BIXaYpK+zp=#_u%|9ZAOJh<6Vw_2 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/bullet.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/bullet.gif new file mode 100755 index 0000000000000000000000000000000000000000..b43de48a4701e5123846ee5f0357b65065eca04a GIT binary patch literal 50 zcmZ?wbhEHbWM$xGXkcJS?wRxd|9{1wEQ|~cj0`#qKmd|qVB+lQU%C4M|KgUF4AuZl Cg$<l&%b~Esp!yP@>wHb0mJk!3{DL3hraam?Pkqew7qSSP2uro-B;S7Yi|1YUG&;2 zwu^P8P4qK9eQ5>ms+MAlN-G!TxlY`7-ft56Bazk^p2vO5q=BV(@-tSQHLhvuEt+%{Y~zj)`w$9{$)b&Pt_N$n4P_^LoY@pScbS?83{1OR-{U^4&! literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/closed.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/closed.gif new file mode 100755 index 0000000000000000000000000000000000000000..8414d4d69fa9cba7821efd06e5afba8134be2d10 GIT binary patch literal 54 zcmZ?wbhEHbWM$xGXkcVW?wP~Dz@Ye(g^`PakwFK@W&p`BF!A>EujD9r%T%)YRN4nE G25SHn$_y0% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/doc-button.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/doc-button.png new file mode 100755 index 0000000000000000000000000000000000000000..9ede7a149294dfb4fed3583c8b4d5345333ba752 GIT binary patch literal 607 zcmV-l0-*hgP)T z{%2?$x=k5)c}^}=X*3R5H5OZ~{`WTsLgcGbg+qZ*9r`N-VaJq`1e0S`hEadb)FQas z;l9itWW4-+w33Yp+@cbfpoVCPbSQDNqa{L3$gwKJXjhtcU+#CgFLV3&;;;Dfu!rA` t_}z%U^yqsU8`g_wWBU=hV76}o1_0j)f}11Z1Z4mK002ovPDHLkV1i#83w;0p literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/favicon.ico b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/favicon.ico new file mode 100755 index 0000000000000000000000000000000000000000..9f9239202d42bd2ef26591fd6d7ced472ccc2c3b GIT binary patch literal 1150 zcmb7^-%C?*7{h0K3mFgSv?*2i>$$f}v4V)WsH57+7rK zOlhG)Y@o-XtK7h|ba~cKrHzSaPw)GFzuz-=%8QiGp7(v8=RF>8rqluY?e13ed0Y*4 zDRo3C6(PtXNBbn|6lLKbuQ&qDZBol#uRYhe`+++nsG07D6UW9OE<_6Ilf$> z;!LpH%<6oyo$>tk;Yp&`XlQ=Gd&o20EcscQr^X_k+=(C)_UumC6l3-b%`JZifDan5 zQ~!$e@G*Gh4Az&Q%3RDwv0W>mQ5q(0iT9&$4ZD>wq^R5Sn|K-P!NiRoG=91GTzG=b z(rZ)-N%9V3dFBeXJqK?_PrzTli|@`=pn4Cpk9sBd>Hfv_L&QP2P6A&(r3AE^^jb^< zTi&8{3KM;Fdmrw*bHNSYKOgE6>Oa>|{rE~)TYM~@GkFnPn+rN$jmtaiRz`yxzPJB> r^S38HKO=l!eSbl2(>ITzz8b@~h0DP+?BCx{pPBdjS04U8_}~2xv*PoE literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/file.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/file.gif new file mode 100755 index 0000000000000000000000000000000000000000..2550f4448e5dab5c4e30bc8edad2fab956d61430 GIT binary patch literal 613 zcmd6kc~cT`06>4-M~h=nO5>O?Ll>smWM#KarX5y%1!wvo6}j4s`FGCL7#+^wA1O7o zl~ck}AVDIB+)j#I>QcEZyRaAKx9EL>_vQ^;@9#M?qy}n`2Vi`1(!a7&uh+jtqmf+B z?sl)?c%oQb&gbX+{tsU7PYiqOa=rI>h-#IjX@=vXg+e%+MZ@7&cDpkaDr|3u*4MwM zQdO4a>vcykm@bu)TU!{8|E|?y#bOG>rVymcFgb!i78YzS7tL{>e7=e4X*3e~ytw$x zYV{_QnQ}S4vBB}Y4MlN^A{nMk(-=XpJpX2XKA6eyJYQiLmg6=liegz$JWkMbg=IHM z@()SQI2^ALq*N|{2?TysDuLBiUpk%0<#3vwbvkQ2Ut?K!EcUMy{7>j>VgUdqaCAp% z=LwLZ_e>AW4~OBAQS%MK*yFLQquSoK^M+2TRHNNL($RggX_rhcRtYU5q4`EBFbCwkPR92a&wW(8|~@WCUH4fMX7y47SB3c$I)1qBc@ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-bg.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-bg.gif new file mode 100755 index 0000000000000000000000000000000000000000..311fa6bd8fa0095bde48daadec2eece0b69b12c1 GIT binary patch literal 43 scmZ?wbhEHbWMp7uXkcJ?^X3f$1B2pE79h#MpaUX6G7L;iE{qJ;0Ky;!zW@LL literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-logo.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/footer-logo.gif new file mode 100755 index 0000000000000000000000000000000000000000..b15374516902ef68b179e6139b6c0ff3eac5bea7 GIT binary patch literal 501 zcmVt&d$!Xw6xUJ)Y;kD*VotT>gv$Y(B|gm-{0Tj;^N)i z-O<})y&My=;-Lr&(Ful$K>SX z$;rw8|Nj6000000A^8LW0012TEC2ui05<>_000I5ARvyUxG+bj3Z$UEDq;mR-K4Op z)OAw+q(Py>8o6?v0pr07Jdl`4)6fB00hB{gbj%F^2uYKYWAY%Xt97wxA(H@uqZvrN zX1rUPWEczx6>3IrUjP;vO%X#04NVL$C0!i_2o!3PFNFXO5lt5z5S}oRNCgB}m@1kE zJ56Ra5*VXyrItXca7Gn$O$a%pZwOWf1jWV#Z6u()G#N<1rGkPTQM?gv&`7q@K&o_l z&$Mq_+$Aapjc0FF;z;D>BPy>v0NCw020#l43jF@>9TqSP;2_+fHwUcX(iA7bzyPs+ z-OHqq5D88X18|UdFvkW|7DW)a&_n_wN3%L|swki!14tx=PBdv?hd`4FIM|Ko;|Gwm zg(4J);bGy0h9(e(=!BPzB7>tmp1e39g$I?T+#HZwSYg1;4PNNjftSI~);A1V@gVSq rBo9U07C2CP7RiB5JT$B;5Q@izVHF54*r0U9#143P$XYk2NeBQtFNx$U literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/head_bg.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/head_bg.png new file mode 100755 index 0000000000000000000000000000000000000000..056fc14c7cbd1f3c96035ba131287ae9632c5e1b GIT binary patch literal 250 zcmVY}mbOc$#)|6gbMr}*aQ%x4`t zpys|GxnI6Fw*UYD07*qoM6N<$f_tWE A3jhEB literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/link_icon.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/link_icon.gif new file mode 100755 index 0000000000000000000000000000000000000000..815ccb1b1ca04a07ba4d90178e909fae30c26889 GIT binary patch literal 942 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 Av;Y7A literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_ajax.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_ajax.gif new file mode 100755 index 0000000000000000000000000000000000000000..2329a7ed3f1f602d0eb26e242cd7b03ea0401af2 GIT binary patch literal 2672 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_folders.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_folders.gif new file mode 100755 index 0000000000000000000000000000000000000000..dd30c8f9bf9a47dba5b495f758bddecc0e2d36af GIT binary patch literal 3009 zcmV;y3qJHmNk%w1VUPee0QUd@O|sQ;a&oH4;f2cHg@uKayxQ93@+O0~{QUh>vD&h- zvvz@mgtXO8aB$@8^o zzA=Wm`1<`+n#E9cEH_aWo2n;Y0uEmqok)=v)!nvslC3w zoWtFFrnuAK?~c&p(9qF$tSP_<)7T>yS%-or>eN#@ZaCx=jiE1lEA^*+`+=d!NJ1%{Qk|( z(5|koW473q&)VYR+8P1!M)(|rO4px?d^@Z+2rKr;Njxj-re%_ z^z!obz|>*?z1 zo}Z%g^YiiX@%j1rk<;Yq>FMO==G)xdm(ktb-QCX5&(P4)%+1Zr&du=g@z~hfX{gNd z^z!xg_4fAl{QLZ7XJ@dmvbeaq;^g9UbabxI-QVKhhlq%3w%2O6*+I{{-{Fe4*O152n84fR<>TVu;>XC#=;`Rw)YN{NpU~6L z#ogl9*VpFc-OaoA46T`gGaDQ{gWoP5 zJa*-Ym#ZC5^fO<5uWvWdf|d--bKNEUlPpNh;H<@e2&mEP%lPXvwivSb!@pFyc2;@PQSOjsv0g&MA z&o#}uLgS4e6VO4pE6j2-1#6_fMh88RZ8iq5t9{f(xaum<7o5~c4na`N+w9+u`#`Ng z6MUZRH#NFKkmgxPZX*dm{1Zp?EC7kvKNASih5(@(v4SsLca3@n9S9OkFg+Xy0ut}mw)K`Xjuj?{Ia6h`<(5&qDF4~#Gb zeBgr#$7sS&w2(segW<+zSR)($O^3oN2q+AwG@#APh74TeK~P}1EFEBg2U(63DUb*& z3Ic>Z=m8=!Fo|A}uo~8=1S2L%Ni*7NA}>tZys|Zrra|F`JNyTh{PBu{Xf9OTh+70! z$;t@y$cQpbh})1iuL%V*ik2v32hL{%J^bMh$7sg~J|KcUEwr~&|SS^MIK>-UOKoAr-4T_ntA{IgThYVyu zm>;;pEpP$<4=un0A9SF@0|xqlXIdna0*P9X22wyg_33YO#8Wl@(Fcts>l!sGB|&~B z1XvnmVX=7PKc)uAf-I*UtIJ{$dhmyKxby>#AVNBN(1A(7ArK%4C_x{fhBH0{q5pWr zy!^n8S7gCP3;mk|G!_d#2*3|h^PxZz=Z{#}AbL^=pg$Ih&VpdnA8n9=^fY$>krHG% zALu|96KT&6SiuUDC`3BaA%12at$>A{thZeBj_4J}@paK%qYeEY|}E zaT_v<+Xf*pV7E}5#AjbR+PUgr3FuwI6+SQtdaQN~d~L!Je0rahEQbg^$N(aSd4+To zLI*ma0(ymUgB+xzz3)wcf)g;`zt-0w*Gou*uNUFX5FiKl%;zNHDu(n5gTTcAFcmhC z-~~7M!3sG9CHAq87wDk~|L6oIj=MPz$o&Nh6F zhtK=}xGXhReK$O9<^Vuw8Z zqXP&aMHtw?gMDXU26_+(DR_Vo3c!LAE9k)u;NXcTJOK?L=YYsL@Cc7Tp%t*6Xn@L9 zPLq7M1Od2ELK3LqjMPzq+9Mx%xId0^CD?>*E?-G2Do~W7Xy6&M*u@EgG3pQpnBEEq zdRgMJmKqej3r?5>0<@6|9S~y)Qii(JGou&+6g?UhC<8rm@ry}Z0RcOR`q(wI0uH3R z=o(N(D-fW70LXpru-OG3aAEbLbfE@apaS6Q`-eH0T?3Th^x|XF3nEPZ@|a(IKmY(c DjAazp literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_grid.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_grid.gif new file mode 100755 index 0000000000000000000000000000000000000000..59424e3a0ed461f3d4eac97948d438e5dbd94a28 GIT binary patch literal 2038 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_menu.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..d25d5d6c86d10615a0fa813912d2582324c422f7 GIT binary patch literal 2120 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 kv^lnqcQY~$)tXb(uVBq?yTR~y_j;~R zz3YlzkLdgNdv1b*Yhh(|QFjY@eGHC|kdc0UfEAN}fQ1WGh){O|mJAjR4F#sBsHdb2 z78a4Ouat#{olOLbp%)MoyuH4^6c8Ax#Koi*eY04#Ot+v68WYmf)Ya7x3L3!Mz8V({ z2m*7=OLvwQ69E7T?CtLF2>=1<*7fz@72?a}NX``u4K{R;(P6`c0SP#8NXQUgyABg5 zAk(*x-xgd93J8o)kp%z;6A~;UBuK=(1_<*1ZQ6mLV+#fc3ao%BbBHqp7Bmjv2%`hY zZx4bB9ZHk|0SXfeFi`1|h5`=~7Q`^%!N7_GRf*ipxnXD16h0>aU_i9&&;kVJDGj$W z2UQOYVo31dVa43KHWwi%)s^Rqu;9!Jj*GOw#I`uz)_if-E?up9`FiaMl7a>Zm@{kM z3}JxU!(U}6K0!c_)Dn$FARdwW!)g-?@--DOf;NeplKr~ynPJ0*48Vg6AKqJ@!&{D_}EI*cYl zh;WghFmT!e1ptWGpMl;MW`!S+x#pylvgzh=NXCh02{0LO zmw0*7)#8%k?Y7x+aH)oxE(V|h(H0o$rXw&gUXIzR`(=lx z5kPFQq&+&>01o7<@4o!@>#qa8Ka3=Pv2)Z(wBaR|mxiAS1rz!yn&YpIckJ8%9 zQv~*P?6JpK*a|KVSNNgYFnE`%3@Yepb9C*gGnhQ*h6TR=hAlR~1B+bn4d^}i0e3Hc zfYpImX{o3LjmAyD+>P2Oo_ev(RTEYd@7yz_)pBe2;oTCPsSf`bDl0e@MN7b_3xFd9 z<(8iyz*53uTxgUTckQ$PR!3WC5f9TwTIuSPwrTd_r<0HX1p^G+fwvtbFaR$d05Fj6 z1Pt^+JRc0;D9>C?CMoO8ml=}cNT1$&1Qh7rCPD<%p8W*Wb58+#6Les_ta@bx>5oLF zF9v&RfdhN&BJ>_900TtyJVM1&&;e2$d@lk38}JtSo}rNraD)~=n8Hbx@;>;s%QW>R1!TfUdS1sXoM(MLB~4U@s4(Eg(GA!hbFqQ25A@x zA1*=2LK^arde8&{|Cm5UjD#eRj3gnvzzIeQfeUiTq$W4X#6?=tCh7|%kv>VvQkwFV Ps7$3QSINpGga80L4DGy) literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_toolbar.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_toolbar.gif new file mode 100755 index 0000000000000000000000000000000000000000..5bfd6ea1d20adcdba63e32026436b914ec2b5d7d GIT binary patch literal 1954 zcmV;T2VM9_Nk%w1VX6Q&0K@{ks1$*Hp zP-u;cKvc~hL<}P6;DLe(4zg?C&b_<$@8GjjO z0)dDlj$^@yC!(mxiY&I+qKYmGz`z5|jOCdLh#kOST^_Vkfj8>a)xZYzT|htsKqemKuq{2f2 zXn=qL>IHCtK@px2PNS&;N?ztqe>#e#Y zyeU?#B;h*G0(xC*z(O!xS}6mf65v~u-?RfD1h*kD69gM5T7W_TJTfMH^#r(RwyU8U zRk&u3>uR|lC?N94hKxM&2que+a>^^49IveN-uRiBcrGAvj5rEG( z%GP7sO#v80Q#UtdU>|;@dV?oU<=hs)g9v@Q@v0ub+Gfa3L7;#y3XCFx0w_yo0orFf zwRXuQu>FC&AknLWXzl={8ZbpasMPQos<$kgaiD0KrIU_hHZ^jz%} zBH(g8uGej&Om^I97bUm<+#$mq`rI(rEi($279fOa8f}gwMIklsKomHDl;~lq zK{ShMT*B0j=+S}yG<2##6+(+Q5U?A(B<6Aj)Lg4L=L9E;&jb)+kOB1Jhy}%G0RRYG zK=6~E+6jz+_|V5fq6A3&$j59LbmW8rP$4~0Ad$#X2O`8|K5(Am~&bz#&2~-~eCq)-op2 zk+PcgtQYwRKA%Vu6Tk#r+aN(o+vN}v%yg#12$@V{n$@ool&jh5smQ$O6o@#78P-Uw zViyaIXl5g%O+XhiNjd@yfTe6#6`KP>hSjTf0I*>3DFb?n%}q9f7N||FYGDD1aWXZa z{Y(Ki9r9Ya(snweRGae@Q5Z7M85+~OK{5}3Hft>(akI{e|e(2Z^%0>NA# o(DS+<*u8Fbx69q`diT5F4X=2|OWyLD_q^y$uX@)D-Vgu)J4=akmH+?% literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_tree.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_tree.gif new file mode 100755 index 0000000000000000000000000000000000000000..49c40747c8217545b70a93118eb6851df76e94f0 GIT binary patch literal 1495 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_vault.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_vault.gif new file mode 100755 index 0000000000000000000000000000000000000000..74556bd791faca7e58df2ab04039a249b1aef635 GIT binary patch literal 1801 zcmV+k2ln_!Nk%w1VSoTL0K@g(+C_xbMa?2FX)@$vC|e0|^H;o92T zrKP2toSeG4y8r+GA^8LV00000EC2ui0Du59000I5;3tk`X`X1Ru59bRa4gSsVBdJI z?>6oKKvS+lEE41ejE#(S0(}92lqzwC2?`mT84;YHprN9o2@H{bla;C@ zg9l>_nh~-DvbDCixVg8RrKhQ@tF49|ogN6s$jQpf%*!608Kwt*z`()`ogAthp3(=u z)sz9Q3<RT*y!Xfeitk zMYu;TAE0Xq`US|)p-n0tAa!tzD2pOEiz*KPXn=uHV+L&7|peG0}Nt6koA=~#p1P+)2fwRLheSob~yw_;Gxq42my}?_At0-$-^uH zj5(=Xz^`$J=u9hdfB|h0uAGZ_4WMy=3y>o*r<}3r?GKqNY`*H@^MeZo97YH|nu6)D z#tpMx!9Z<-68#x4&j%Ge003laK|mY-1`rqkL0BV5u$BPZz2(OP2(C5Y2pFC7)Bqav zMVv9c5%69CC_1FTF&?zoVsT>~x1S2KEdU{b3#e681qZ&>BWxlBXaI#G@aSKKuu2@fI$NjY!KQ2?!kv*0T;-J00mZt*#KdyO@mko0)#h0nrkue0S9kgFa~%> zejp@~9~{u*e;;tym;gDdb-@MKebAwKPnl3b1SV>^C6_89mfue+1Q2LZBG9>j2p9q| z<_LjqYNwh-?ujG-5I&~XjjTLro&p1yph1?8*6L6OtcoBIN%kPef}e((nkQ0*x{^ST zqTV@zkp}Py><6+%78iLM=~Tl12DH{{D*+jxMgm@iQMv-NZc<<&2^2{1z)%P#ODciF zatC3wg)T*{d4rA6K(^XG+9kK(@D;AFEEJ$t0ToDSfCM8P!0uZHs^zX)c=~$CE2Fc27QrtVVD18) z1{Cm|!5IQ@L5~zgzXZ;9`pb+5V^}yt&9~?=qSR!`}cv zpp*juv=4v;lOT}(FB3rEJ^}$S&_0ox6Gegm_G=#mK-Ri)6k{qV2tfCY<_Q&$Pe0~+ zfeogxF$x+gPt2LZN5(+{3$lU=O1U2FP*8ydl1vs3^qnd&umKHBVuS(UiUu060ri9> zh5_(a3`HAzy~zI0SXLc02C-l01VQA z0iY%T9q1hb;*uTzY?!A3_9@M10Q!hAlUquv->DV*@rh8Wt*`8#B_!VEEz}zxa`g ze)tPsHo$=%S|9_l0viJ)(1}rSA_A7|mn=GA3tn!*6AvJmD96}=4G8QmA7CZybdmuN zaDbIP)QJK81SHUlP`2g?aVVo565#-D=2BapK#>CyafdNTf{6$9 zK|-@LheI5OrJt8903sk^hKpwOB7-1=73Pot2Y^(U_9$p1tiT40p7aMeI6@&9;8G&8 z?Wdk7Xdjlqg`1932m26!IWho&cPIb?n=pkhbYN7VT*8dr%zy$cii)b9G^Gl41Rc0q rIIkuqp&i`=SH)@8vx1eQXc%f)+v?W0W}&7wrE55bfCMJ|AOrwAZ?PFk literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_windows.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/logo_windows.gif new file mode 100755 index 0000000000000000000000000000000000000000..c884dee4f737f7fad9bf90d0ec0bda8086b1fb30 GIT binary patch literal 1190 zcmV;X1X=q>Nk%w1VU_?k0K@awetD=`ThR8;P3qZ|Nj5~_4W1k`~Lg=|Nj2}hRWl2zuf!${q6Sq z{{8;_|Nj5}{{R2}A^8LV00000EC2ui0G0qY000I5ARvxpX`X1Ru59bRa4gSsZQppV z?|kq7z@TtQEE(8U+Lev~;#}b$3S#84(&Y5W)e)W_*g*iiCSM6A&a9 z-XjwoBM;#d6%ry959%fruNBfI-4^d9uO#jw6B-p0Ds*832m2>b#Nvj9K<28L;{z<_1T z1rbeb1F#2^(My~}Y*OlJ=nRby`H(E|0KkKh0ys$fg~6l404xz0m>?lSSg;Ozi7+q{ zL4c9NAY3J&U~O0fBBWIi;L#Rbyh05Tr9-N)VNyu}ELE%kA&rp=?7>Cw3o72N0J@gk zAb=$X3l-Wjcwn+60F@piJXpZ1A^?gAykYQ(fhNlg7DfiBx&Z8~z$0qe8cw`;0SCyB zCr9p}fa4im3v5v6mOz9He5C`x-1Q*`02^3F-as`B5<_KbDS`!*DuBWNN}9&HC=Rs3FackviV$r9&xjCRRS~Fp8lURy<&&3|Y;?~@4*)^WM&s;r&?4Zh3JG&)6En9=OVV@ATHhQs06zN+^Z^uz zU^CHym9g~KG>;AS*>}5&!@I literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/mail_icon.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/mail_icon.gif new file mode 100755 index 0000000000000000000000000000000000000000..50a87a9a0689ac0dbaed5410b2c7f0fd107ae7b2 GIT binary patch literal 918 zcmZ?wbhEHb6krfw_|CxK=jWHQ@aa2qg%2+JpA!8SFJ9cV`Bm@U4;wFh+IIQ#&a0pI zUjMT1#+O64z8<~v_2j*8r|y5d@c8@1$KS6#`*G{#&pWSv-hK7+{+nM9-~M{??$?Wt zzh8d({rdBtw_pBz`1a@1_rG6%{{8v;-=Dw#{{8#^R$To5|Nji5U^D~4HOux0sbe9%m4rY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/open.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/open.gif new file mode 100755 index 0000000000000000000000000000000000000000..f5d5c7e56f01c1933ab59785f73a12e6c004de60 GIT binary patch literal 54 zcmZ?wbhEHbWM|-IXkcVW?wP~Dz@Ye(g^`PakwFK@W&p`BF!A>EuRPt$uy{)1ycrGJ G4AuY|7Yq^r literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/samples-button.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/samples-button.png new file mode 100755 index 0000000000000000000000000000000000000000..37a385d17af6bafca7d76b3fcb9511ca838a4eb1 GIT binary patch literal 796 zcmV+%1LOROP)lO+H!U8}OVysCNJZGRI!o+hXU@lv&7J_^}j~IZ+ zG?@#)-ExLT&Kc?`NR(psbGcl*-9`~`uqep`78Jpow<*YeiE3O~Faqc_iO*)UolXZa z01yq4Xmgp#WC(Y=U9352&L#B9ZIS05kQbu%PSor5B0nn9>2$Pif6qAV@3_m;NkI2b zj;Gxn4SvjS#p$K`{k{da;K5*EL6pPc(1IvOqmczs+VMJ@MHyX`?@xZlJjC@&bE!!# zPJg$!?ga~;X6Gkl>|eTY*rwpqwBlET*e`JNOEhpIL0iz+A3&7oShCE(tq{b zyE#wz&HgFYoJ2!17vTQVWp0Z+_kg?*b-7e;znn(Chu^(1AEDdzg^MW%&vE>W@J0++ zT#cu1b?AC9xvfSY*SI4!IPiL$p!MC?9|3Ls^i5~a?B@2b-rVBRCwC#SiMREK@h%^0}C5}O9M6* zHiG00tSo#13%h{9oJokHkXjTp#F&dQq!WAs@hxm@EG)It2o_36v*(;cChJ}}-Mt`j zaEs%cZ|8RRyPdn+8GE^LJ^lV{acQlw8E5M4=`y#@M$+2Jh2#4HdVF|bpl3Fb068Ej z(1ce84TOLs5g;MBND@4EDG(#{cj>rPBD`HF3}ittX3U`iNhn4)@Ji)!A)l9*BAc<+ z6z>%PIp(`0-;&Q}(JWUg#2`=@FahATuRn}~Br(4fcv;uQi2)Ew7y-o~Z zKlI*)=Z)_DzIECo6nI(<)+d|vL=^{Ozzq9D_$&B_ts8ijN#JdyQfG~ZY{CdKsW1S} zn@w4~G6?!BD=`T?%ePnd4zKoiZf|ZF{AU-F$<^YK`A2-%PY(jm`;cwL*c>R|IuV1ZTe0tEA1i3olL1pPm{vWIMpu0SbMOzNCG)dYjk{N_kdIF;X{A{077dFg{d2PO8@`> M07*qoM6N<$f=h($ literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-field.png b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-field.png new file mode 100755 index 0000000000000000000000000000000000000000..b2e88f38b37a51e3145d2411e9f752b6666c7cf2 GIT binary patch literal 338 zcmeAS@N?(olHy`uVBq!ia0y~yV2lT{H8_}n-L1;Fyx1 zl&avFo0y&&l$w}QS$Hzl2B_$Zr;B4q#jQ7Y6!Q)nFtlB?*xYrk*Z-wp({<-Ja?7lp z{R38NJlFL6$Y)^Wy7+C^qO!Hi1)3){ZT#Ml`lp#+!eY-_GyQmZQHR8gTQe?SD4na@ z5ahLT8&kn#D~4ALE0`DXHDE9h692X9&WUTPIx{SdY5Q<@`}EKKK8U}fi7AzZCsS>JiYz@{978H@`E(uRWia4i;#_dLY{t5n%wH=ycRDj(Q)9R{ xQ8QEFlIwXboy&9YJU+~4@BjR7>hn4l35NOtCS~99?lzzy44$rjF6*2UngFWRFs`sfz@Ye(1xPY5=zs{23}1{rUBm-JyYzf%PoYv)_mEcLSvuJYD@<);T3K F0RX5DAM5}C literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-rezult-dark.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/search-rezult-dark.gif new file mode 100755 index 0000000000000000000000000000000000000000..3e1b4b074fa17ec4c2f0e9bfff4c070649d4ab22 GIT binary patch literal 204 zcmZ?wbhEHb6k`x$I3mvQ?(2^qzyCab|9Sb@o6kRf&0c+=Z~uAQiE9#kzxaAbjo(%N1|7Se= zd*Z~2KmY$fe*E~$moNYS|9}1Zb>_?eAO8Ojzxwgr|Nk%k|9|)HUGA&@iw>S%eDL)5 z@89P<{qgMo|NXCi?0@|$<;DNzZ$M4|8E6I+f3h$#FeozUfNTKyiGeNXz=Q%19jX2k zONvhBSj`VeN;HfRSs=yq_@IKtJT@<;DH9~-F`s)Xypm^LV_(vu4=nSh@gy}LFj*kL f$j->i&JgI#z|`KM*wxd~)jN60)M?W_92u+uMALhF literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/toc-arrow.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/toc-arrow.gif new file mode 100755 index 0000000000000000000000000000000000000000..5e0389e9f8da09d4442b1dbf8cdf0d4f562bc209 GIT binary patch literal 70 zcmZ?wbhEHb6krfwn8?fk1mAxC`TFDc|Ns9Lf3h$#FfcRdfJ8y^3{2v4`d6NQ%OBmr VVPm~vb3{%pqmt{iXFEk0tN|)o7eN33 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/tocdot2.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/codebase/tpl/dhtmlx/images/tocdot2.gif new file mode 100755 index 0000000000000000000000000000000000000000..3d39c2e739ffcd38768b4b6b3d1a627e82776cf4 GIT binary patch literal 810 zcmYL|Pe>b45XOI-?2=Tli4QhL4JATPBJ_|RluC-yYX703hqe$w4BkW#S|}|`yKF0X zHBjiyi;3ccF1he};{=|yj9Pt*4{M&~f^&G7BaH}k!nxj#KNzL+A#DU41( zy3=?u@pv9^QoYyok=Q3L@6d$2OCGkfjDihokcR$L7msD>xMQCO2SQLu@QS`H1mKzQ z7mQovp#H>t-vMj?)m=ZJpv)Kb=e_Plez&)DQK#7aaFie4$mhK6`s(OM$DVAiRlGFP zUlSZ*USP#qcbIHa(Y@S(y&eVwavpX1YI-;qGvhPMPxBh?n!Xtpp^)@zXKRfvhAWrc z-gMct@9A49iH5b8En5x|h3+f6p-kA4L+arFW$HH-J?YDHc&Ea!rO(c6(UJZJ=i+^!NNM6DK_=OF_9 lf{gWaj>M \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___base_concept.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___base_concept.html new file mode 100755 index 0000000000..c1f34df6ca --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___base_concept.html @@ -0,0 +1,162 @@ + + + + dhtmlxconnector:base_concept [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Multi-user sync

    +
    + +

    + +Connector 1.x can work in multi-user mode, in such mode all users will see changes of other users in real-time mode. +

    + +

    +To enable mode you need to +

    + +

    +a) init component with dataprocessor in default way +b) add to the server side code + +

    +
      	require("../../codebase/grid_connector.php");
    +	$grid = new GridConnector($res);
    +	$grid->enable_live_update('actions_table');  //this line!
    +

    + +Where actions_table - table in Db, which will be used for sync. data storage. It need to have the next structure. +

    +
    CREATE TABLE `actions_table` (
    +  `id` int(11) NOT NULL AUTO_INCREMENT,
    +  `dataId` int(11) NOT NULL,
    +  `type` varchar(255) NOT NULL,
    +  `user` varchar(255) NOT NULL,
    +  PRIMARY KEY (`id`)
    +) ENGINE=MyISAM;
    +

    +c) on client side, add the next code line after dataprocessor initialization +

    +
      dp.setAutoUpdate(2000);
    +

    + +where parameter of command - delay between update calls. +

    + +

    +That is all, now all users of component will be able to see changes of other users. +

    + +

    +It works for all connector and all components. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___client_side_other_components.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___client_side_other_components.html new file mode 100755 index 0000000000..8b646a9f0b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___client_side_other_components.html @@ -0,0 +1,224 @@ + + + + dhtmlxconnector:client_side_other_components [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    +
    + + +
    +
    + + +

    +Other components can be initialized in the way similar to the grid's one +

    + + + +

    TreeGrid

    +
    + +

    +For TreeGrid in static mode + +

    +
    mygrid = new dhtmlXGridObject('gridbox');
    +mygrid.setColTypes("tree,...");
    +//...
    +mygrid.loadXML("connector.php");
    +

    +For TreeGrid in dynamic mode + +

    +
    mygrid = new dhtmlXGridObject('gridbox');
    +mygrid.setColTypes("tree,...");
    +//...
    +mygrid.kidsXmlFile="connector.php";
    +mygrid.loadXML("connector.php");
    +
    +
    +

    Tree

    +
    + +

    +For Tree in static mode + +

    +
    tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0);
    +//...
    +tree.loadXML("connector.php");
    +

    +For Tree in dynamic mode + +

    +
    tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0);
    +//...
    +tree.setXMLAutoLoading("connector.php");
    +tree.loadXML("connector.php");
    +
    +
    +

    Combo

    +
    + +

    +For combo in static mode + +

    +
    var z=new dhtmlXCombo("combo_zone2","alfa2",200);
    +z.loadXML("connector.php");
    +

    +For combo in auto-complete mode + +

    +
    var z=new dhtmlXCombo("combo_zone2","alfa2",200);
    +z.enableFilteringMode(true,"connector.php",true);
    +z.loadXML("connector.php");
    +
    +
    +

    Scheduler

    +
    +
    scheduler.init(some_obj)
    +scheduler.load("connector.php");
    +
    +
    +

    Form

    +
    +
    var z = new dhtmlXForm(someId);
    +z.load("connector.php");
    +
    +
    +

    DataView

    +
    +
    var z = new dhtmlXDataView({...});
    +z.load("connector.php");
    +
    +
    +

    Chart

    +
    +
    var z = new dhtmlXChart({...});
    +z.load("connector.php");
    +

    +If you want to use dataprocessor with Tree or TreeGrid, you will need to include connector.js same as for grid +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___combodataitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___combodataitem.html new file mode 100755 index 0000000000..f766ac6ae0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___combodataitem.html @@ -0,0 +1,131 @@ + + + + dhtmlxconnector:combodataitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    ComboDataItem

    +
    + +

    + +Nest all methods of DataItem Object +

    + +
    + +

    select

    +
    + +

    +Mark options as selected + +

    +
      $dataItem->select();
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___complex_updates.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___complex_updates.html new file mode 100755 index 0000000000..b87af8a050 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___complex_updates.html @@ -0,0 +1,177 @@ + + + + dhtmlxconnector:complex_updates [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Complex updates

    +
    + +

    + +By default connector generates all create|update|delete queries automatically, based on configuration. But in some cases it may be necessary to define your own logic. +It can be done in one of two ways + +

    +
      +
    • defining custom SQL code for operation
      +
    • +
    • using server side events to customize operations
      +
    • +
    + +
    + +

    custom SQL code

    +
    + +

    +You can define your own SQL for specific action (Insert, Update or Delete) as follows: +

    +
            $gridConn->sql->attach("Update","Update tableA set name='{name}', price={price} where id={id}");
    +        //...
    +        $gridConn->render_sql(" .. ","id","price,name");
    +

    + +The parameters are the following: +

    +
      +
    • action name. Possible values are: “Updateâ€, “Insertâ€, “Deleteâ€
      +
    • +
    • SQL statement. It can use fields(or their aliases) which were mentioned in render_sql or render_table method used for loading data.
      +
    • +
    + +
    + +

    custom server side events

    +
    + +

    +Grid provides set of events, which can be used to handle server side action in your custom way +

    +
          //data preprocessing before update
    +      function my_update($data){
    +            $price = $data->get_value("price");
    +            $price = intval($price);
    +            $data->set_value("price");
    +      } 
    +      $conn->event->attach("beforeUpdate","my_update")
          //including additional field to request
    +      function my_update($data){
    +            $data->add_field("userId",1); //will be included in update
    +      } 
    +      $conn->event->attach("beforeUpdate","my_update")
          //fully custom code
    +      function my_update($data){
    +             $price=$data->get_value("price");
    +             $id=$data->get_value("id");
    +             $conn->sql->query("UPDATE some_table SET price='{$price}' where id={$id}");
    +             $data->success(); //if you have made custom update - mark operation as finished
    +      } 
    +      $conn->event->attach("beforeUpdate","my_update")
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connector_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connector_object.html new file mode 100755 index 0000000000..99cc6b9d36 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connector_object.html @@ -0,0 +1,224 @@ + + + + dhtmlxconnector:connector_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    API of connector Objects

    +
    + +
    + +

    render_table

    +
    + +

    +configure connector to take data from single table + +

    +
       $conn->render_table($table,$id,$text,$extra,$relation);
    +

    + +Parameters: +

    +
      +
    • $table - name of table;
      +
    • +
    • $id - name of id field ;
      +
    • +
    • $text - comma separated list of data fields;
      +
    • +
    • $extra - comma separated list of extra fields, optional;
      +
    • +
    • $relation_id - used for building hierarchy in case of Tree and TreeGrid.
      +
    • +
    + +
    + +

    render_sql

    +
    + +

    +configure connector to take data based on provided SQL text + +

    +
       $conn->render_sql($sql,$id,$text,$extra,$relation);
    +

    + +Parameters: +

    +
      +
    • $sql - any sql code, which will be used as a base for data selection;
      +
    • +
    • $id - name of id field;
      +
    • +
    • $text - comma separated list of data fields;
      +
    • +
    • $extra - comma separated list of extra fields, optional;
      +
    • +
    • $relation_id - used for building hierarchy in case of Tree and TreeGrid.
      +
    • +
    + +
    + +

    set_encoding

    +
    + +

    +allows to set encoding, which will be used for generated XML (default encoding is UTF-8 ) + +

    +
        $conn->set_encoding("iso-8859-1");
    +

    + +Parameters: +

    +
      +
    • encoding name.
      +
    • +
    + +
    + +

    dynamic_loading

    +
    + +

    +enable dynamical loading mode for connector +

    + +
    + +

    enable_log

    +
    + +

    +enable logging for connector +

    + +
    + +

    is_select_mode

    +
    + +

    +returns current active mode: +

    +
      +
    • true for data select mode;
      +
    • +
    • false for data update mode.
      +
    • +
    +
       if ($conn->is_select_mode()){
    +      do_something();
    +   }
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connectors_and_oracle.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connectors_and_oracle.html new file mode 100755 index 0000000000..e1ef9ad4df --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___connectors_and_oracle.html @@ -0,0 +1,146 @@ + + + + dhtmlxconnector:connectors_and_oracle [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Connectors and Oracle DB

    +
    + +

    + +Sample of init code , can be checked here +

    + +
    +
    +

    Inserting new records

    +
    + +

    +Oracle has not auto ID generation functionality , so you need to provide some custom ID for each insert operations. There are two ways to do such task + +

    +
      +
    • custom ID generation - id generated by PHP code
      +
    • +
    +
    	function pre_insert($data){
    +	    	$new_id = time()%10000; //any other ID generation logic can be used here
    +    		$data->add_field("EMPLOYEE_ID",$new_id);
    +	}
    +	$grid->event->attach("beforeInsert","pre_insert");
    +	$grid->render_table("EMPLOYEES","EMPLOYEE_ID","FIRST_NAME,LAST_NAME");
      +
    • use sequence for ID generation
      +
    • +
    +
    	$grid->sql->sequence("EMPLOYEES_INC.nextVal"); //sequence name
    +	$grid->render_table("EMPLOYEES","EMPLOYEE_ID","FIRST_NAME,LAST_NAME");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___custom_queries.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___custom_queries.html new file mode 100755 index 0000000000..05ce111c63 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___custom_queries.html @@ -0,0 +1,220 @@ + + + + dhtmlxconnector:custom_queries [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Using connector for DB operation

    +
    + +

    + +When implementing custom queries , it may be necessary to execute some custom update against DB. +It possible to use connector's code, which will provide abstraction from underline DB +

    + +
    +
    +

    SQL queries

    +
    + +

    + +You can access DBWrapper object as + +

    +
    	$connector->sql
    +

    + +and use it for custom queries + +

    +
    	$connector->sql->query("DELETE FROM some_table WHERE ID=1");
    +

    + +or + +

    +
    	$res = $connector->sql->query("SELECT * FROM some_table WHERE ID=1");
    +	$data =  $connector->sql->get_next($res);
    +

    + +or + +

    +
    	$connector->sql->query("INSERT INTO some_table(type) VALUES('simple')");
    +	$id = $connector->sql->get_new_id();
    +
    +
    +

    Operation through connector

    +
    + +

    + +Connector object has 3 methods for manipulation with underline table +

    +
    	$connector->delete($id);
    +

    + +parameter - value of ID field, for which record need to be deleted +

    +
    	$connector->update(array(
    +		"type_id" => '1'
    +		"type" => 'simple'
    +	));
    +

    + +parameter - has of values, it must contain ID field for successfull result. +

    +
    	$id = $connector->insert(array(
    +		"type" => "simple",
    +	));
    +

    + +parameter - has of values +

    + +
    +
    +

    Creating addtional output-less connectors

    +
    + +

    + +You can create an extra connector object on the fly and use it for DB operations +

    +
     
    +	$temp = new Connector($db_connection);
    +	$temp->configure("some_table");
    + 
    +	$temp->insert(array(
    +		"some1" => "value 1",
    +		"some2" => "value 2"
    +	));
    +	$temp->delete("2");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___data_export.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___data_export.html new file mode 100755 index 0000000000..06ab74501c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___data_export.html @@ -0,0 +1,188 @@ + + + + dhtmlxconnector:data_export [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Export data

    +
    + +

    + +By using external grid-to-pdf and grid-to-excel services, it possible to convert data of grid to PDF or Excel directly on server side. +It can be used to export data from any table to PDF or Excel, without actually rendering data in the grid. +

    + +

    +Data part of exported part is defined by render command, header part of data is defined by GridConfiguration - same as for normal grid. + +

    + +
    + +
    PDF
    +
    +
    <?php
    +	require("../../../codebase/grid_connector.php");
    +	require("../../../codebase/convert.php"); 
    + 
    +	//url to data conversion service
    +	$convert = new ConvertService("http://dhtmlx.com/docs/products/devExchange/samples/grid2pdf_02/server/generate.php");
    + 
    +	$grid = new GridConnector($res);
    +	$grid->set_config(new GridConfiguration());	//mandatory 
    +	$grid->render_table("grid50");				//table name and optional list of fields
    +?>
    +
    + +
    Excel
    +
    +
    	require_once("../../config.php");
    +	$res=mysql_connect($mysql_server,$mysql_user,$mysql_pass);
    +	mysql_select_db($mysql_db);
    + 
    + 
    +	require("../../../codebase/grid_connector.php");
    +	require("../../../codebase/convert.php");
    + 
    +	//url to data conversion service
    +	$convert = new ConvertService("http://dhtmlx.com/docs/products/devExchange/samples/grid2excel_02/server/generate.php");
    +	$convert->excel();
    + 
    +	$grid = new GridConnector($res);
    +	$grid->set_config(new GridConfiguration()); //mandatory 
    +	$grid->render_table("grid50"); 				//table name and optional list of fields
    +
    + +
    Options
    +
    + +

    + +ConvertService has two public methods, which allows to define type of conversion and name of result file +

    +
        $grid->pdf("some.pdf",false);
    +

    + +or + +

    +
        $grid->excel("some.xls",false);
    +

    +Second parameter of command controls how file will be delivered +

    +
      +
    • false - as file
      +
    • +
    • true - as inline content ( if browser has related plugin - it will open document )
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataaction_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataaction_object.html new file mode 100755 index 0000000000..55bca1e6da --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataaction_object.html @@ -0,0 +1,335 @@ + + + + dhtmlxconnector:dataaction_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    DataAction Object

    +
    + +
    + +

    get_value

    +
    + +

    +method - returns value of named field ( name of column or alias): + +

    +
      $action->get_value($name)
    +

    + +Parameters: +

    +
      +
    • name of column or alias.
      +
    • +
    + +
    + +

    set_value

    +
    + +

    +method sets value of named field: + +

    +
        $action->set_value($name,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the field
      +
    • +
    • $value - value of the field in question
      +
    • +
    + +
    + +

    get_status

    +
    + +

    +method returns action type of the item: + +

    +
          $action->get_status()
    +
    + +

    set_status

    +
    + +

    +method allows to set the status of operation - do not use it if you need to avoid using custom status: + +

    +
        $action->set_status($value)
    +

    + +Parameters: +

    +
      +
    • $value- status of operation
      +
    • +
    + +
    + +

    get_id

    +
    + +

    +method returns id of the current record: + +

    +
          $action->get_id()
    +
    + +

    get_data

    +
    + +

    +method returns hash of values: + +

    +
        $action->get_data()
    +
    + +

    set_response_text

    +
    +
        $action->set_response_text($text);
    +

    + +Parameters: +

    +
      +
    • $text - any text value , which will be returned on client side with related action structure
      +
    • +
    + +
    + +

    set_response_xml

    +
    + +

    +method allows to set xml-string , which will be included in response ( if you need to provide just a text - use the method mentioned above ): + +

    +
        $action->set_response_xml($text)
    +

    + +Parameters: +

    +
      +
    • $text - any text value , which will be returned on client side with related action structure
      +
    • +
    + +
    + +

    set_response_attribute

    +
    + +

    +method allows to define custom attribute, which will be added to the related action tag in XML response + +

    +
        $action->set_response_attribute($name,$value)
    +
    + +

    invalid

    +
    + +

    +method marks provided data as invalid and cancels default update operation: + +

    +
        $action->invalid();
    +
    + +

    error

    +
    + +

    +method marks operation as invalid and stops in further processing + +

    +
        $action->error();
    +
    + +

    success

    +
    + +

    +method confirms that operation has been executed correctly and cancels default update operation: + +

    +
        $action->success();
    +

    +in case of Insert operation, method can receive one parameter - new ID of element ( which will be updated on client side ) + +

    +
      $action->success($id);
    +
    + +

    add_field

    +
    + +

    +method allows to register field for usage during update|insert|delete operation: + +

    +
            $action->add_field($name,$value);
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the field
      +
    • +
    • $value - value of the field in question
      +
    • +
    + +
    + +

    remove_field

    +
    + +

    +method allows to remove one of default fields from db operation: + +

    +
            $action->remove_field($name,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the field
      +
    • +
    • $value - value of the field in question
      +
    • +
    + +
    + +

    get_new_id

    +
    + +

    +method returns ID, received after insert operation ( valid for afterProcessing event only ) + +

    +
           $action->get_new_id();
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataitem_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataitem_object.html new file mode 100755 index 0000000000..9908a8399b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___dataitem_object.html @@ -0,0 +1,199 @@ + + + + dhtmlxconnector:dataitem_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + +

    get_value

    +
    + +

    +returns value for named field + +

    +
         $dataItem->get_value($name)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the field
      +
    • +
    + +
    + +

    set_value

    +
    + +

    +allows to set value of named field + +

    +
          $dataItem->set_value($name,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the field
      +
    • +
    • $value - new value
      +
    • +
    + +
    + +

    get_id

    +
    + +

    +returns id of the item: + +

    +
        $dataItem->get_id();
    +
    + +

    set_id

    +
    + +

    +allows to set id of the item: + +

    +
        $dataItem->set_id($value);
    +

    + +Parameters: +

    +
      +
    • $value - id of the item
      +
    • +
    + +
    + +

    get_index

    +
    + +

    +returns index of current item ( for example, in grid , it will be an index of row ) + +

    +
        $dataItem->get_index();
    +
    + +

    +
    + +

    +calling skip method will result in ignoring current item while rendering output. It allows to define custom filtering rules + +

    +
        $dataItem->skip();
    +
    + + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_grid_structure_on_server_side.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_grid_structure_on_server_side.html new file mode 100755 index 0000000000..06ec0db1c8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_grid_structure_on_server_side.html @@ -0,0 +1,293 @@ + + + + dhtmlxconnector:defining_grid_structure_on_server_side [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    +

    + + + +

    Defining grid structure on server side

    +
    + +

    + +Starting from version 1.0 , connectors can be used to define header of grid, it can be done in automatic and detailed modes +

    + +
    +
    +

    Automatic mode

    +
    +
    require("../../codebase/grid_connector.php");
    +$grid = new GridConnector($res);
    + 
    +$grid->set_config(new GridConfiguration());
    + 
    +$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +

    +Grid will use list of fields - as labels for the columns. +It can be combined with short render_table form as +

    +
    $grid->set_config(new GridConfiguration());
    +$grid->render_table("grid50000");
    +

    +In such case grid headers will be created for all columns in the related table +

    + +

    + +If you want to have automatic server side sorting and filtering for all columns , you can use + +

    +
    $grid->set_config(new GridConfiguration(true));
    +$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +
    +
    +

    Manual mode

    +
    + +

    + +In manual mode you need to define headers and their parameters by php command. Names of commands mimic names of js commands, with similar functionality. +

    +
    $config = new GridConfiguration();
    +$config->setHeader(array("column 1","column 2"));
    +$config->setColTypes(array("ro","ed"));
    + 
    +$grid->set_config($config);
    + 
    +$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +
    + +
    Commands which can be used
    +
    + +

    + +For all below commands, parameter is an array of values or comma separated string, delimited by headerDelimiter (default is ,). +

    +
    // column labels
    +$config->setHeader($names);
    +// column types
    +$grid->setColTypes($typeStr);
    +// column IDs
    +$grid->setColIds($idsStr);
    +// column width, int values, will be processed as size in pixels
    +$grid->setInitWidths($widths);
    +// column width, int value, will be threated as size in percents
    +$grid->setInitWidthsP($widths);
    +// column align
    +$grid->setColAlign($alStr);
    +// column sorting type
    +$grid->setColSorting($sortStr);
    +// column color
    +$grid->setColColor($colorStr);
    +// visibility of column 
    +$grid->setColHidden($hidStr);
    +

    +For setColHidden command values must be +

    +
      +
    • true if column should be hidden
      +
    • +
    • false otherwise
      +
    • +
    + +
    + +
    Headers and Footers
    +
    +
    $grid->attachHeader($values, $styles = null);
    +

    + +The parameters of this method are: +

    +
      +
    • array of header names or string of header names, delimited by headerDelimiter (default is ,)
      +
    • +
    • array of header styles or string of header styles, delimited by headerDelimiter (default is ,)
      +
    • +
    +
    $grid->attachFooter($values, $styles = null);
    +

    + +The parameters of this method are: +

    +
      +
    • array of footer names or string of footer names, delimited by headerDelimiter (default is ,)
      +
    • +
    • array of footer styles or string of footer styles, delimited by headerDelimiter (default is ,)
      +
    • +
    + +
    + +
    Setting delimiter
    +
    + +

    +Sets symbol or several symbols which will be used as delimiter in string arguments. + +

    +
    $grid->setHeaderDelimiter($headerDelimiter);
    +
    + +

    Example

    +
    +
    require_once("../config.php");
    +$res=mysql_connect($mysql_server,$mysql_user,$mysql_pass);
    +mysql_select_db($mysql_db);
    + 
    +require("../../codebase/grid_connector.php");
    +$grid = new GridConnector($res);
    + 
    +$config = new GridConfiguration();
    + 
    +	$config->setHeader("Item Name,Item CD");
    +	$config->attachHeader("Item Name Test,#rspan");
    +	$config->attachFooter("Item Name,Item CD", Array("background-color: #ff0000;", "background-color: #00ff00;"));
    +	$config->attachFooter("Item Name Test,#rspan", "background-color: #0000ff;color:white;");
    +	$config->setColIds("col1,col2");
    +	$config->setInitWidths('120,*');
    +	$config->setColSorting("connector,connector");
    +	$config->setColColor("null,#dddddd");
    +	$config->setColHidden("false,false");
    +	$config->setColTypes("ro,ed");
    +	$config->setColAlign('center,center');
    + 
    +$grid->set_config($config);
    +$config->render_table("grid50000","item_id","item_nm,item_cd");
    +

    +This example initializes the following structure: +

    + +

    + + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_header_server.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___defining_header_server.png new file mode 100755 index 0000000000000000000000000000000000000000..2e9583651ab2d2a6d5e169eff5e52cf106c23fe0 GIT binary patch literal 16616 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 aj5y2trV + + + dhtmlxconnector:dynamical_loading [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Dynamical Loading

    +
    + +

    + +Dynamical Loading mode allows to load data not all at once, but partially, by client side request ( which decrease initial loading time and decrease loading of server ) +

    +
      +
    • grid - smart rendering and paging modes
      +
    • +
    • treegrid - dynamic branch loading mode
      +
    • +
    • tree - dynamic branch loading mode
      +
    • +
    • combo - partial autocomplete ( you need not it for normal autocomplete)
      +
    • +
    • dataview - dynamiÑ scrolling or dynamic paging
      +
    • +
    +
            $conn->dynamic_loading([$rowsNum]);
    +

    + +The parameter(s) are: +

    +
      +
    • no parameters for tree, treegrid
      +
    • +
    • number of rows which should be initially loaded (the value should be more than number of rows visible in grid, or at least any positive number) for grid.
      +
    • +
    • maximum number of options which server will send to combo in autocomplete mode for single data request
      +
    • +
    + +

    + +To work correctly, related mode need to be enabled on client side as well ( for grid - smart rendring | paging enabled, for tree|treegrid - dynamical loading enabled, for combo - autocomplete enabled ) +

    + +
    +
    +

    Control of dyn. loading for Tree and TreeGrid

    +
    + +

    + +Normally connector make all operations automatically, and need not customization. But in case of dyn. loading in Tree || TreeGrid it possible that DB already have field which shows is current item leaf or branch. By using beforeRender event it possible to mark item as leaf and through that decrease count of SQL queries generated by component ( which means increase in performance ) + +

    +
    	function custom_define($item){
    +		if ($item->get_value("is_a_branch"))
    +			$item->set_kids(true);
    +		else
    +			$item->set_kids(false);
    +	}
    +	$tree->event->attach("beforeRender","custom_define");
    +

    + +The same approach can be used for non-dynamical mode of Tree|TreeGrid as well. It not so necessary , but will increase data generation performance as well. Package contains two samples of basic tree loading, one of which use forced kids flag setting and second not +

    +
      +
    • 01_basic_connector.php - 1.42s - default loading
      +
    • +
    • 01p_basic connector.php - 0.36s - with custom code for kids flag setting
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___error_handling_and_logging.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___error_handling_and_logging.html new file mode 100755 index 0000000000..1618112ad3 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___error_handling_and_logging.html @@ -0,0 +1,177 @@ + + + + dhtmlxconnector:error_handling_and_logging [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Error Handling and Logging

    +
    + +

    +During development phase, we strongly recommend to use server side logs, which can be enabled as + +

    +
            $gridConn->enable_log("path to log file");
    +

    + +In the code string above you should specify only one parameter: +

    +
      +
    • absolute or relative path to text file where log will be written
      +
    • +
    + +

    + +If any error occurs during data processing client side data processor object will receive “error†action, which will contain short info about the problem (full info will be written in the log ) +If you want to show full error info on client side you should use the following code string (useful for debug, not recommended for production ) +

    +
            $gridConn->enable_log("path to log file",true);
    +

    +In such mode, when critical error occurs all log records for current session will be send to client and shown in browser. +

    + +
    +
    +

    Dataprocessor logging

    +
    + +

    +Dataprocessor has its own client side logger, which can be enabled by including one additional js file - dhtmlxdataprocessor_debug.js +

    + +
    +
    +

    Adding custom records to the log

    +
    + +

    +During development , you may have need to write some custom data to the log ( can be useful for custom server side events ), in such case you can use default log as + +

    +
             LogMaster::log("any text here");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterdelete.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterdelete.html new file mode 100755 index 0000000000..ce5a6acfe8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterdelete.html @@ -0,0 +1,120 @@ + + + + dhtmlxconnector:event_afterdelete [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    afterDelete

    +
    + +

    +The same as afterProcessing , but occurs only for insert operations. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterinsert.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterinsert.html new file mode 100755 index 0000000000..9f5e7f024c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterinsert.html @@ -0,0 +1,121 @@ + + + + dhtmlxconnector:event_afterinsert [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    afterInsert

    +
    + +

    +The same as afterProcessing , but occurs only for insert operations. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterprocessing.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterprocessing.html new file mode 100755 index 0000000000..e1c7647c5c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterprocessing.html @@ -0,0 +1,129 @@ + + + + dhtmlxconnector:event_afterprocessing [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    afterProcessing

    +
    + +

    +This event occurs after insert, update, delete actions. It can be used to pass additional values to client side. +

    + +

    +Example of usage: + +

    +
          //adds new xml as a child of default <action> tag which is passed to client side as response
    +        function doAfterProcessing($action){
    +                   $action->set_response_xml("<guid>some value</guid>")
    +        }
    +        $gridConn->event->attach("afterProcessing",doAfterProcessing);
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterupdate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterupdate.html new file mode 100755 index 0000000000..d89a9779dc --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_afterupdate.html @@ -0,0 +1,120 @@ + + + + dhtmlxconnector:event_afterupdate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    afterUpdate

    +
    + +

    +The same as afterProcessing , but occurs only for update operations +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforedelete.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforedelete.html new file mode 100755 index 0000000000..f174f9fdf8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforedelete.html @@ -0,0 +1,120 @@ + + + + dhtmlxconnector:event_beforedelete [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeDelete

    +
    + +

    +The beforeDelete event occurs before deleting record in database and can cancel default delete statement. For more details see beforeUpdate event description . +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforefilter.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforefilter.html new file mode 100755 index 0000000000..410d890e0a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforefilter.html @@ -0,0 +1,143 @@ + + + + dhtmlxconnector:event_beforefilter [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    beforeFilter

    +
    + +

    +This event occurs before data loading and allows to customize filtering of dataset + +

    +
           $gridConn->event->attach("beforeFilter",handlerFunc);
    +

    + +In this event handlerFunc gets the following arguments: +

    + + +

    + +Sample of usage: + +

    +
       function custom_filter($filter_by){
    +          //change WHERE some_field LIKE '%value%' to the WHERE some_field > 'value'
    +          $index = $filter_by->index("some_field");
    +          if ($index!==false)  //there is client side input for the filter
    +               $filter_by->rules[$index]["operation"]=">";
    +   }
    +   $conn->attach->event("beforeFilter","custom_filter");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeinsert.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeinsert.html new file mode 100755 index 0000000000..d86f4732ed --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeinsert.html @@ -0,0 +1,120 @@ + + + + dhtmlxconnector:event_beforeinsert [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeInsert

    +
    + +

    +This event occurs before inserting values in database and can cancel default insert statement. It can be used also to validate incoming values. For more details see beforeUpdate event description. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeoutput.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeoutput.html new file mode 100755 index 0000000000..66fdaec489 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeoutput.html @@ -0,0 +1,158 @@ + + + + dhtmlxconnector:event_beforeoutput [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeOutput

    +
    + +

    +The beforeOutput event occurs after data has been selected from the database and ready to be sent to client side + +

    +
          $gridConn->event->attach("beforeOutput",myFunction);
    + 
    +

    + +In this event myFunction doesn't get any parameters. +

    + +

    +Event can be used to mix some custom data in XML output. +

    + +

    +Most common use-case - header structure for the grid. +

    +
    	$grid = new GridConnector($res);
    +	function grid_header(){
    +		echo '<head>
    +	        <column width="50" type="dyn" align="right" color="white" sort="str">Sales</column>
    +	        <column width="150" type="ed" align="left" color="#d5f1ff" sort="str">Book Title</column>
    +		</head>';
    +	}
    +	$grid->event->attach("beforeOutput","grid_header");
    +	$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +

    +In case of dyn. loading mode, one more check need to be added, to prevent data output for additional data calls. + +

    +
    	$grid = new GridConnector($res);
    +	function grid_header(){
    +            if (!isset($_GET["posStart"]))
    +		echo '<head>
    +	        <column width="50" type="dyn" align="right" color="white" sort="str">Sales</column>
    +	        <column width="150" type="ed" align="left" color="#d5f1ff" sort="str">Book Title</column>
    +		</head>';
    +	}
    +	$grid->event->attach("beforeOutput","grid_header");
    +	$grid->dynamic_loading(100);
    +	$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeprocessing.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeprocessing.html new file mode 100755 index 0000000000..6461b91f72 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeprocessing.html @@ -0,0 +1,120 @@ + + + + dhtmlxconnector:event_beforeprocessing [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeProcessing

    +
    + +

    +This event occurs before beforeInsert, beforeUpdate, beforeDelete events occur. The beforeProcessing method occurs for all these operations. It can be cancelled in the same way as the aforementioned events. For more details see beforeUpdate event description . +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforerender.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforerender.html new file mode 100755 index 0000000000..ce3fef5dfa --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforerender.html @@ -0,0 +1,127 @@ + + + + dhtmlxconnector:event_beforerender [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeRender

    +
    + +

    +The beforeRender event occurs after data has been selected from the database but before its outputting to client. + +

    +
          $gridConn->event->attach("beforeRender",myFunction);
    + 
    +

    + +In this event myFunction gets data item object as incoming argument. This object has different methods for different client side components. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforesort.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforesort.html new file mode 100755 index 0000000000..b44f0d03bd --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforesort.html @@ -0,0 +1,140 @@ + + + + dhtmlxconnector:event_beforesort [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    beforeSort

    +
    + +

    +This event occurs before data loading and allows to customize sorting of dataset +

    +
            $gridConn->event->attach("beforeSort",handlerFunc);
    +

    + +handlerFunc gets the following arguments: +

    + + +

    + +Sample of usage: + +

    +
       function custom_sort($sorted_by){
    +          // SORT BY LENGTH(some_field)
    +          $sorted_by->rules[0]["name"]="LENGTH(some_field)";
    +   }
    +   $conn->attach->event("beforeSort","custom_sort");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeupdate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeupdate.html new file mode 100755 index 0000000000..af3bae2b07 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___event_beforeupdate.html @@ -0,0 +1,145 @@ + + + + dhtmlxconnector:event_beforeupdate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    beforeUpdate

    +
    + +

    + +This event occurs before updating values in database and can cancel default update statement (see error, invalid and success methods below). It can be used also to validate incoming values (see invalid() method below). + +

    +
             $gridConn->event->attach("beforeUpdate",myUpdate);
    +

    + +In the code string above myUpdate function gets $action object as incoming argument. +$action is an instance of DataAction object +

    + +

    +Samples of usage: + +

    +
    //creates and runs own update statement using values came in request, cancels default update
    +        function myUpdate($action){
    +            mysql_query("UPDATE Countries SET item_nm='{$action->get_value('name')}' WHERE item_id='{$action->get_id()}'");
    +            $action->success();
    +        }
    //checks if value of name is empty, then cancel update. Otherwise proceeds with default update.  
    +        function myUpdate($action){
    +            if($action->get_value("name")=="")
    +                $action->invalid();
    +        }
    //sets new value for name and proceeds with default update. 
    +        function myUpdate($action){
    +            $new_value = rand(0,100);
    +            $action->set_value("name",$new_value);
    +        }
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___events_system.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___events_system.html new file mode 100755 index 0000000000..10eeff9d70 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___events_system.html @@ -0,0 +1,157 @@ + + + + dhtmlxconnector:events_system [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___excel_file.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___excel_file.html new file mode 100755 index 0000000000..4152140533 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___excel_file.html @@ -0,0 +1,180 @@ + + + + dhtmlxconnector:excel_file [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Loading data from Excel file

    +
    + +

    + +Connector 1.0+ allows to use MsExcel file as datasource, you can load data from excel file in any component ( grid, chart, dataview, combo , scheduler ) +

    + +

    +To start using this feature you need to download libExcel - which is standalone project and not included in the connector's package +You can grab it from here http://support.dhtmlx.com/x-files/connector/phpExcel.zip or from author's site http://www.codeplex.com/PHPExcel - unzip lib to the connector's folder. +

    + +

    +Connector file will look as +

    +
    //files from ligExcel package
    +require_once('lib/PHPExcel.php');
    +require_once('lib/PHPExcel/IOFactory.php');
    + 
    +//connectors
    +require("../../codebase/db_excel.php");
    +require("../../codebase/grid_connector.php");
    + 
    +$grid = new GridConnector("../some.xls", "ExcelDBDataWrapper");
    +$grid->render_table("A18:F83", "id", "A,B,C,D,E,F");
    +

    +Constructor +

    +
      +
    • first parameter - name of excel file, absolute path or path related to the php file
      +
    • +
    + +

    + +render_table +

    +
      +
    • first parameter can be
      +
        +
      • range of cells in the spreadsheet, for example A18:F83
        +
      • +
      • number of the top row, from which output need to be started, for example A4
        +
      • +
      • “*†, which means include all not empty rows
        +
      • +
      +
    • +
    • second parameter is the field , which will be used as id, you can use “id†for auto id generation
      +
    • +
    • third parameter list of columns, which will be used as columns in the grid
      +
    • +
    +
    $grid->render_table("A18:F83", "id", "A,B,C,D,E,F");
    $grid->render_table("A1", "id", "A,B,C,D,E,F");
    $grid->render_table("*", "id", "A,B,C,D,E,F");
    +

    +If you want to load both data and header from excel file, it can be done by using GridConfiguration +

    +
    	$grid = new GridConnector($excel_file, "Excel");
    + 
    +		$config=new GridConfiguration();
    +		//array of cells, with labels for grid's header
    +		$config->setHeader($grid->sql->excel_data(array("A3","B3","F13")));
    +		$grid->set_config($config);
    + 
    +	$grid->render_table("A18", "id", "A,B,F");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___extending_existing_functionality.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___extending_existing_functionality.html new file mode 100755 index 0000000000..bd34bb8d39 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___extending_existing_functionality.html @@ -0,0 +1,123 @@ + + + + dhtmlxconnector:extending_existing_functionality [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.html new file mode 100755 index 0000000000..20c48679a1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.html @@ -0,0 +1,219 @@ + + + + dhtmlxconnector:file_system [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Using File System as datasource

    +
    + +

    + +Connector 1.x allows to use FileSystem as datasouce. It can be used with any client side component, but more common use-case is the grid and tree +

    +
     
    +	require("./codebase/connector/db_filesystem.php");
    +	require("./codebase/connector/grid_connector.php");
    + 
    +	$grid = new GridConnector("", "FileSystem");
    +	$grid->render_table("../","safe_name","filename,full_filename,size,name,extention,date,is_folder");
    +

    + +

    + +

    +Above code will fill grid with info about files in d:/www folder +

    + +

    +Parameters of render_table + +

    +
      +
    • folder, for which data listing is required
      +
    • +
    +
      +
    • id field, leave it empty of use safe_name as ID of file
      +
    • +
    +
      +
    • list of fields, possible values are
      +
    • +
    +
      +
    • filename - name of file
      +
    • +
    +
      +
    • full_filename - full path to file
      +
    • +
    +
      +
    • size - size of file in bytes
      +
    • +
    +
      +
    • name - name part of file name
      +
    • +
    +
      +
    • extension - extension part of file name
      +
    • +
    +
      +
    • date - timestamp of file
      +
    • +
    +
      +
    • is_folder - file|folder flag
      +
    • +
    + +
    + +
    Limiting files in output
    +
    + +

    + +You can limit files by extension type +

    +
     
    +	$fileTypes = FileSystemTypes::getInstance();
    +	$fileTypes->addExtention('png');
    +

    +or by meta-type +

    +
     
    +	$fileTypes = FileSystemTypes::getInstance();
    +	$fileTypes->setType('web');
      +
    • image - image files
      +
    • +
    • document - doc, xls, txt, rtf
      +
    • +
    • web - php, html, js, css
      +
    • +
    • audio - mp3, wav, ogg
      +
    • +
    • video - avi, mpg, mpeg, mp4
      +
    • +
    • only_dir - folders
      +
    • +
    + +

    + +or by regexp pattern +

    +
     
    +	$fileTypes = FileSystemTypes::getInstance();
    +	$fileTypes->addPattern('/^.+\..*$/');
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___file_system.png new file mode 100755 index 0000000000000000000000000000000000000000..772b7be74bf6eeb4d1166cb9545b4b915a81dd67 GIT binary patch literal 31472 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 XKmk*lr3m0k^%YquMaiPa27dnwj=EZ< literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filtering.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filtering.html new file mode 100755 index 0000000000..bb92e6e0b9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filtering.html @@ -0,0 +1,219 @@ + + + + dhtmlxconnector:filtering [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Filtering

    +
    + +

    +While all connector can filter data by url manipulation, only Grid and TreeGrid1) has native GUI for sorting, so below info mostly actual for those two components. +

    + +

    +To enable server side filtering you can use one of the following in-header filter types while configuring dhtmlxGrid: +

    +
      +
    • #connector_text_filter - searches for values which contain mask defined through text field
      +
    • +
    • #connector_select_filter - searches for values which contain mask defined through list of possible values
      +
    • +
    +
    	mygrid.setHeader("Column A, Column B");
    +	mygrid.attachHeader("#connector_text_filter,#connector_select_filter")
    +

    +When using text filter, no any additional configuration necessary. Grid will automatically send data about new entered text and filter server side using %mask% pattern. +If you need change filtering pattern or implement more advanced logic - beforeFilter server side event can be used +

    + +
    + +

    Redefining filtering through beforeFilter

    +
    + +

    +Event receives FilterInterface Object as parameter +

    + +

    +Define default filtering + +

    +
       function custom_filter($filter_by){
    +          //WHERE some_field LIKE 'value'
    +          if (!sizeof($filter_by->rules)) 
    +               $filter_by->add("some_field","value","LIKE");
    +   }
    +   $conn->event->attach("beforeFilter","custom_filter");
    +

    +Redefine default filtering logic + +

    +
       function custom_filter($filter_by){
    +          //change WHERE some_field LIKE '%value%' to the WHERE some_field > 'value'
    +          $index = $filter_by->index("some_field");
    +          if ($index!==false)  //there is client side input for the filter
    +               $filter_by->rules[$index]["operation"]=">";
    +   }
    +   $conn->event->attach("beforeFilter","custom_filter");
    +
    + +

    Custom PHP level filters

    +
    + +

    +By using beforeRender events it possible to define filtering rules as PHP code ( will not work for dyn. modes ) + +

    +
    function custom_filter($data){
    +     if ($data->get_value("some")<0)
    +          $data->skip(); //not include in output
    +}
    +$conn->event->attach("beforeRender","custom_filter")
    +
    + +

    Filling options for select filter

    +
    + +

    + +If you are using select filter you may need to define list of options in select box, it can be defined in one of 3 ways + +

    +
      +
    • automatic - if no custom instruction provided , grid will use DISTINCT select against related field, and fetch all possible options
      +
    • +
    • hardcoded list
      +
    • +
    +
    	$grid->set_options("item_nm",array("1","two","3"));
    +	$grid->render_table("grid50","item_id","item_nm,item_cd");
      +
    • list created on base of different table
      +
    • +
    +
    	$filter1 = new OptionsConnector($res);
    +	$filter1->render_table("countries","country_id","country_name(value)");
    +	$grid->set_options("item_nm",$filter1);
    + 
    +	$grid->render_table("grid50","item_id","item_nm,item_cd");
    +

    +You can use both render_table and render_sql for OptionsConnector object, same as for any normal connector. +

    + +

    +Beware that name of fields, used in select filter need to have alias (value) + +

    + +
    +
    +
    1) +server side filtering with dhtmlxTreeGrid doesn't maintain open states
    +
    + + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filterinterface_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filterinterface_object.html new file mode 100755 index 0000000000..57ecdbe744 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___filterinterface_object.html @@ -0,0 +1,185 @@ + + + + dhtmlxconnector:filterinterface_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    +
    + + +
    +
    + + +

    +

    + +

    + +

    Filter Interface Object

    +
    + +
    +
    +

    clear

    +
    + +

    +clears all defined settings + +

    +
      $coll->clear();
    +
    +
    +

    index

    +
    + +

    +check if options for named field exist in collection and return related hash. Returns false if named field not found in collection. + +

    +
      $index = $coll->index("some_field");
    +
    +
    +

    add

    +
    + +

    +adds new filtering rule to collection + +

    +
      $coll->add("some_field","abc");  // some_field LIKE "%abc%"
    +  $coll->add("other_field","5","<"); //some_field < 5
    +
    +
    +

    rules

    +
    + +

    +array of all already defined sorting rules. Each element has two properties +

    +
      +
    • name - name of related field
      +
    • +
    • value - filtering value
      +
    • +
    • operation - filtering operation, if empty then default LIKE instruction will be used
      +
    • +
    +
      $name = $coll->rules[0]["name"]
    +  $coll->rules[0]["value"]="cde";
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___formatting_changing_data_before_loading.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___formatting_changing_data_before_loading.html new file mode 100755 index 0000000000..37f37a07fa --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___formatting_changing_data_before_loading.html @@ -0,0 +1,248 @@ + + + + dhtmlxconnector:formatting_changing_data_before_loading [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Formatting/Changing Data before Loading

    +
    + +
    +
    +

    Base Formatting Methods

    +
    + +

    + +In case you need to update values which were returned from database table or set some specific formatting before sending them to client side, you can use the “beforeRender†event handler. +

    + +

    +Common use-case will be similar to next + +

    +
    	$res=mysql_connect($mysql_server,$mysql_user,$mysql_pass);
    +	mysql_select_db($mysql_db);
    +	require("../../codebase/grid_connector.php");	
    + 
    +	function color_rows($row){
    +		if ($row->get_index()%2)
    +				$row->set_row_color("red");
    +	}
    + 
    +	$grid = new GridConnector($res);
    +	$grid->event->attach("beforeRender","color_rows");
    +	$grid->render_table("grid50000","item_id","item_nm,item_cd");
    +

    + +Here , color_rows function attached to the beforeRender event and set colors for rows based on their index. +

    + +

    +During data generation, for each record outputed for client side beforeRender event will be executed, which means color_rows function will be called for each record. $row is an instance of GridDataItem object, related to current record. +

    + +

    +Same approach can be used for data formating +

    +
    	function formatting($row){
    +                  //render field as details link
    +                  $data = $row->get_value("some_field");
    +                  $row->set_value("some_field","<a href='details.php?id={$data}'>Details</a>")
    + 
    +                  //formatting date field
    +                  $data = $row->get_value("other_field");
    +                  $row->set_value("other_field",date("m-d-Y",strtotime($data)));
    +	}
    + 
    +	$grid = new GridConnector($res);
    +	$grid->event->attach("beforeRender","formatting");
    +

    +get_value and set_value method allow get or set value of any field related to the record ( it not affect actual values in DB ), if alias was used during data configuration - you need to use it instead of real db field name as first parameter of get|set command. +

    + +

    +More complex formating rules can be defined by using “extra†fields in configuration, fields which will not be outputed to client but can be used inside events. + +

    +
    	function formatting($row){
    +                  //set row color
    +                  $row->set_row_color($row->get_value("color"));
    +                  //save in userdata 
    +                  $row->set_userdata("some_data",$row->get_value("count"));
    +	}
    + 
    +	$grid = new GridConnector($res);
    +	$grid->event->attach("beforeRender","formatting");
    +        $grid->render_table("some_table","id","name,price","color,count");
    +

    + +Here, field color not outputed to client side , but used to define property of row. During update|insert operation only name and price columns may be changed, color will stay untouched. +Count field will be sent to client side as userdata of the row ( and it will be possible to access it on client side through related data. +

    + +
    +
    +

    Formatting in Combo

    +
    + +

    +In case of dhtmlxCombo event works the same but provides ComboDataItem as parameter of event, it possible to implement the same use-cases with it +

    + +
    +
    +

    Formatting in TreeGrid and Tree

    +
    + +

    +TreeGrid provides TreeGridDataItem and Tree provides TreeDataItem for beforeUpdate event, both of them support base operations and few specific ones. +

    +
    	function custom_format($item){
    +                if ($item->get_value("complete")>75) 
    +		        $item->set_check_state(1);
    + 
    +		if ($item->get_value("duration")>10)
    +			$item->set_image("true.gif");
    +		else
    +			$item->set_image("false.gif");
    +	}
    +	$tree->event->attach("beforeRender","custom_format");
      +
    • set_image method allows to set image of tree element ( for treegrid it accepts only one parameter, while for tree it can be a single image of 3 different images for 3 states of tree's item.
      +
    • +
    • set_check method exists only in TreeDataItem object and allow to set state of related checkbox ( tree need to have checkboxes enabled in js. configuration code as well )
      +
    • +
    + +

    + +beforeRender event can be used in dynamic Tree and TreeGrid to define which elements of hierarchy are branches and which are leafs. It is covered in related section of document. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___griddataitem_treegriddataitem_specific.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___griddataitem_treegriddataitem_specific.html new file mode 100755 index 0000000000..46a88c80ac --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___griddataitem_treegriddataitem_specific.html @@ -0,0 +1,245 @@ + + + + dhtmlxconnector:griddataitem_treegriddataitem_specific [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    GridDataItem specific

    +
    + +

    + +Nest all methods of DataItem Object +

    + +
    + +

    set_row_color

    +
    + +

    +method allows to set color for any row in the component: + +

    +
        $dataItem->set_row_color($color)
    +

    + +Parameters: +

    +
      +
    • $color - the color of the row
      +
    • +
    + +
    + +

    set_row_style

    +
    + +

    +method allows to set the style for any row + +

    +
        $dataItem->set_row_style($style )
    +

    + +Parameters: +

    +
      +
    • $style - style of the row in question
      +
    • +
    + +
    + +

    set_cell_style

    +
    + +

    +method allows to set style for any cell of the item: + +

    +
        $dataItem->set_cell_style($name,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the cell
      +
    • +
    • $value - style of the cell in question
      +
    • +
    + +
    + +

    set_cell_class

    +
    + +

    +method allows to set class for any cell of the item: + +

    +
        $dataItem->set_cell_class($name,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name or alias of the cell
      +
    • +
    • $value - class of the cell in question
      +
    • +
    + +
    + +

    set_row_attribute

    +
    + +

    +method allows to set attributes for any row of the component: + +

    +
        $dataItem->set_row_attribute($attr,$value)
    +

    + +Parameters: +

    +
      +
    • $attr - name of attribute
      +
    • +
    • $value - value of attribute
      +
    • +
    + +
    + +

    set_cell_attribute

    +
    + +

    +method allows to set attributes for any cell of the item: + +

    +
        $dataItem->set_cell_attribute($name,$attr,$value)
    +

    + +Parameters: +

    +
      +
    • $name - name of alias of the cell in question
      +
    • +
    • $attr - name of attribute
      +
    • +
    • $value - value of attribute
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___group_connector.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___group_connector.html new file mode 100755 index 0000000000..0347842a1f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___group_connector.html @@ -0,0 +1,141 @@ + + + + dhtmlxconnector:group_connector [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Group connector for tree and TreeGrid

    +
    + +

    + +Default connector for Tree and TreeGrid expects that data in DB is stored with child-parent key relation. But in some cases tree or treegrid need to be shown from plain data , by grouping it. Such task can be done with help of the TreeGroupConnector or TreeGridGroupConnector +

    + +

    +Loads data from table products , grouping by category. As result top level - will be categories, second level - products, related to the category. +

    +
    	require("./codebase/connector/tree_group_connector.php");
    + 
    +	$tree = new TreeGroupConnector($res);
    +	$tree->render_table("products2", "id", "product_name", "", "category");
    +

    + +

    + +

    +similar can be done to treegrid as + +

    +
    	require_once('../../codebase/treegridgroup_connector.php');
    + 
    +	$treegrid = new TreeGridGroupConnector($res,"MySQL");
    +	$treegrid->render_table("products2", "id", "product_name,scales,colour", "", "category");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___initialization_of_dhtmlxconnector.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___initialization_of_dhtmlxconnector.html new file mode 100755 index 0000000000..42de885fcf --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___initialization_of_dhtmlxconnector.html @@ -0,0 +1,201 @@ + + + + dhtmlxconnector:initialization_of_dhtmlxconnector [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Initialization of dhtmlxConnector

    +
    + +
    +
    +

    Client Side Code

    +
    + +

    +No modifications on client side are required for regular data loading. In other cases you should include the connector.js file (located in dhtmlxConnector_php/codebase) into your page. To perform any update operations you have to use dhtmlxDataProcessor, which has been already included in both Professional and Standard editions of dhtmlx library. +

    + +

    +For data loading you need to point load (or loadXML) method of dhtmlx component to connector file: +

    +
            myGrid = new dhtmlXGridObject("pObjId");
    +        //... grid configuration commands
    +        myGrid.load("myconnector.php");
    +

    + +To perform insert/update/delete operations you should add dhtmlxDataProcessor (for more details about dhtmlxDataProcessor see related documentation) and use connector file as parameter of constructor +

    +
            myDP = new dataProcessor("myconnector.php");
    +        myDP.init(myGrid);
    + 
    +

    +Samples of client side initialization for other components +

    + +
    +
    +

    Server Side Code

    +
    + +

    +To start operating with dhtmlxConnector you should do the following: + +

    +
      +
    • include appropriate connector file into the page (Here and after we'll use dhtmlxGrid connector for code samples. All differences between connectors of other components will be described additionally. When using sample code with appropriate components, all files or function names which contain component name “grid†should be changed to “treeâ€, “treegrid†or “combo†accordingly.)
      +
    • +
    +
    	require("connector/grid_connector.php");
      +
    • create Database connection
      +
    • +
    +
            $res=mysql_connect("localhost","root","");
    +        mysql_select_db("myDatabase");
    +

    + +After have implemented these operations you are ready to instantiate connector object. The only database connection link variable is mandatory parameter in all constructors. Optionally, you can specify database type (“MySQL†by default. Other possible: “Postgreâ€) +

    +
           $gridConn = new GridConnector($res,"MySQL");
    +

    +And as a last step - configuration, which fields and data will be used in connector + +

    +
            $gridConn->render_table("mytable","item_id","item_nm,item_cd");
    +

    +This is all. +

    + +

    +Above code must be enough to show data in component and sync update|delete|create operations from the component to the DB. +

    + +

    +Server side initialization for other components and DB types +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___keygrid_connector.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___keygrid_connector.html new file mode 100755 index 0000000000..4f8e9424d5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___keygrid_connector.html @@ -0,0 +1,133 @@ + + + + dhtmlxconnector:keygrid_connector [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    KeyGrid connector

    +
    + +

    + +Normal grid connector expects that target table has some autogenerated ID field, but in some cases, data need to be loaded and saved from DB which has not such autofilled ID. Normal connector can be used for data loading, but will not be able to save data back to such table. To resolve such problem you can use separate connector class +

    +
    	$grid = new KeyGridConnector($res);
    +	$grid->render_table("mytable","name","name,address,phone");
    +

    +There are two differences from the normal GridConnector +

    +
      +
    • name of connector class
      +
    • +
    • one of data fields is used as ID
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___loading_editing_data.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___loading_editing_data.html new file mode 100755 index 0000000000..94d08456d3 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___loading_editing_data.html @@ -0,0 +1,271 @@ + + + + dhtmlxconnector:loading_editing_data [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Data configuration

    +
    + +
    +
    +

    Single table operations

    +
    + +

    +Once you get connection object you are ready to decide what data should take part in load/update operations. Where all necessary data is placed in one database table you should use the render_table method: +

    +
        $grid->render_table("grid50","item_id","item_nm,item_cd");
    +

    +The parameters of this method are: +

    +
      +
    • database table name
      +
    • +
    • name of identity field 1)
      +
    • +
    • list of fields which should be used as values of component item (cells of grid, item label in tree, text of option in combo)
      +
    • +
    + +

    + +This is all you need to make connector implement select, insert, update and delete operations. +

    + +

    +If you want to render all fields from DB ( except of key field ), you can use simplified command +

    +
        $grid->render_table("grid50");
    +
    +
    +

    Join Tables and Complex Queries Operations

    +
    + +

    + +You are allowed to use any SQL statements to populate any dhtmlx component through dhtmlxConnector. This is possible with the render_sql method: +

    +
            $grid->render_sql("SELECT * from tableA INNER JOIN tableB  ON tableA.id=tableB.id", "","name,price");
    +

    + +The parameters of the render_sql method are the following: +

    +
      +
    • sql statement
      +
    • +
    • field to use as identifier 2)
      +
    • +
    • list of fields which should be used as values of component item (cells for grid, item label for tree, text of option for combo)
      +
    • +
    • list of extra fields, they will not be sent to client side but can be used as attributes or flags
      +
    • +
    • parent ID field name for hierarchical structures (required for tree and treegrid) *
      +
    • +
    + +

    + +In case your SQL query was against single table, it is quite probable that insert/update/delete operations do not require any additional code. dhtmlxConnector will parse your SQL and generate insert/update/delete statements based on used table and fields names. +

    + +

    +If your SQL statement contains more than one table, connector will not be able to generate insert/update/delete operations correctly, so you will need do one from next +

    +
      +
    • define sql for each operation manually
      +
    • +
    • use server side events to define your own processing logic
      +
    • +
    • define different configs for select and update operations
      +
    • +
    + +

    + +The 3rd approach shown in below sample + +

    +
        if ($grid->is_select_mode())//code for loading data
    +        $grid->render_sql("Select * from tableA, tableB  where  tableA.id=tableB.id", "a.id","name,price,other");
    +    else //code for other operations - i.e. update/insert/delete
    +        $grid->render_table("tableA","id","name,price");
    +

    + +With such init code grid will be loaded with three columns of data from 2 tables, but during saving only data from first table will be saved. +

    + +
    +
    +

    Extra data

    +
    + +

    +Last parameter of render_sql and render_table allows to define list of fields which will be used for rendering in grid and in update|insert operations, but command can be extended to define additional fields, which will be extracted from DB and can be mapped to different properties of records ( userdata, row styles, images, etc. ). +

    +
    $grid->render_table("tableA","id","name,price","extra1,extra2");
    +// or
    +$grid->render_sql("Select * from tableA, tableB  where  tableA.id=tableB.id", "table_a_id","name,price,other","extra1,extra2");
    +

    + +extra1 and extra2 fields will be available in all server side event of grid, but will not be sent to server side, and will not be included in update|insert operations. +

    + +
    +
    +

    Tree and TreeGrid

    +
    + +

    + +In case of Tree and TreeGrid , both render_sql and render_table accept one more parameter - relation ID. For default treegrid hierarchy - this is name of field , which will be used to link parent and child records. + +

    +
    $treeGridConn->render_table("tableA","id","name,price","","parent_id");
    +// or
    +$treeGridConn->render_sql("Select * from tableA, tableB  where  tableA.id=tableB.id", "a.id","name,price,other","","parent_id");
    +
    +
    +

    Aliases

    +
    + +

    +You can use aliases for DB field names to made later usage of extracted data more usable ( will have sense only if your are using server side events ) + +

    +
    $grid->render_table("tableA","id","name,price(product_price)");
    +// or
    +$grid->render_sql("Select *,tableA.id as aid from tableA, tableB  where  tableA.id=tableB.id", "tableA.id(aid)","name,price(product_price),other");
    +
    +
    +
    1) +, 2) +optional
    +
    + + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___migration_from_older_version.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___migration_from_older_version.html new file mode 100755 index 0000000000..c340c1ff60 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___migration_from_older_version.html @@ -0,0 +1,157 @@ + + + + dhtmlxconnector:migration_from_older_version [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Migration from Older Versions

    +
    + +
    +
    +

    0.9 -> 0.96

    +
    +
      +
    1. beforeFilter and beforeSorting events provide object as parameter instead of plain data
      +
    2. +
    3. Order of parameters for render_* methods of TreeGrid and Tree connector was changed.
      +
    4. +
    +
    //0.9
    +render_table("table","id","fields","parent id")
    +//1.0
    +render_table("table","id","fields","extra fields","parent id")
    +
    +
    +

    0.96 -> 1.0

    +
    +
      +
    1. beforeOutput event has different parameters
      +
    2. +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multi-table_tree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multi-table_tree.html new file mode 100755 index 0000000000..5bf8c11745 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multi-table_tree.html @@ -0,0 +1,165 @@ + + + + dhtmlxconnector:multi-table_tree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Multi-table tree and treegrid

    +
    + +

    + +In many cases, tree or treegrid need to be built from multiple tables. Each table represent separate level of tree or treegrid. For tree it can be done as +

    +
    	require("../../codebase/treemultitable_connector.php");
    + 
    + 
    +	$tree = new TreeMultitableConnector($res);
    +	$tree->setMaxLevel(3);
    +	$level = $tree->get_level();
    + 
    +	switch ($level) {
    +		case 0:
    +			$tree->render_table("projects2","project_id","project_name","","");
    +			break;
    +		case 1:
    +			$tree->render_sql("SELECT teams2.team_id, teams2.team_name, project_team2.project_id FROM teams2 INNER JOIN project_team2 ON teams2.team_id=project_team2.team_id", "team_id", "team_name", "", "project_id");
    +			break;
    +		case 2:
    +			$tree->render_table("developers2", "developer_id", "developer_name", "", "developer_team");
    +			break;
    +		case 3:
    +			$tree->render_table("phones2", "phone_id", "phone", "", "phone_developer");
    +			break;
    +	}
    +

    + +

    + +

    +Multi-table connector will work only for tree|treegrid with dyn. loading mode enabled +

    + +

    +Similar code can be used for treegrid , the only difference in the connector class +

    +
    	require("../../codebase/treegridmultitable_connector.php");
    + 
    +	$treegrid = new TreeGridMultitableConnector($res);
    +	$treegrid->setMaxLevel(3);
    +	$level = $treegrid->get_level();
    + 
    +        ...
    +

    + + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multitable_tree.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___multitable_tree.png new file mode 100755 index 0000000000000000000000000000000000000000..22a106649b40304006a0039be552e444f07ef1ed GIT binary patch literal 8802 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 K>JiVnM*koBSJB@9 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___new_in_version_1.0.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___new_in_version_1.0.html new file mode 100755 index 0000000000..7572b09449 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___new_in_version_1.0.html @@ -0,0 +1,133 @@ + + + + dhtmlxconnector:new_in_version_1.0 [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    New in version 1.0

    +
    + +

    +Version 1.0 adds the next new possibilities: +

    +
      +
    • Server side grid configuration
      +
    • +
    • Server side export of data to PDF or Excel
      +
    • +
    • Multi-user sync
      +
    • +
    • Grouping connectors
      +
    • +
    • FileSystem connector
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___order_of_events_execution.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___order_of_events_execution.html new file mode 100755 index 0000000000..1c101dea3e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___order_of_events_execution.html @@ -0,0 +1,163 @@ + + + + dhtmlxconnector:order_of_events_execution [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Data loading

    +
    +
      +
    • - incoming request parsed
      +
    • +
    • beforeSorting
      +
    • +
    • beforeFiltering
      +
    • +
    • - sql select executed
      +
    • +
    • - for each selected record
      +
        +
      • beforeRender
        +
      • +
      • - generate xml for record
        +
      • +
      +
    • +
    • - output data to client
      +
    • +
    + +
    +
    +

    Data update

    +
    +
      +
    • - incoming request parsed
      +
    • +
    • - global transaction started ( if enabled )
      +
    • +
    • beforeProcessing event
      +
    • +
    • for each record
      +
        +
      • - record level transaction if started ( if enabled )
        +
      • +
      • beforeInsert|beforeDelete|beforeUpdate event
        +
      • +
      • - record level transaction commited ( if enabled )
        +
      • +
      +
    • +
    • afterProcessing event
      +
    • +
    • - global transaction commited ( if enabled )
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___porting_connectors.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___porting_connectors.html new file mode 100755 index 0000000000..9f2d4d29bf --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___porting_connectors.html @@ -0,0 +1,333 @@ + + + + dhtmlxconnector:porting_connectors [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Porting dhtmlxConnectors

    +
    + +
    +
    +

    Why it is necessary

    +
    + +

    +The existing version of connectors supports just a limited set of server platforms, although we are trying to extend the list of supported languages and databases - you can't embrace the unembraceable. In case database/framework/scripting language you use in your project is not supported, you can port existing solution on your platform. +

    + +
    +
    +

    When you shouldn't do this

    +
    + +

    +Connectors are just wrappers around existing grid functionality, that's why if you need to use this solution once, you would better use grid API directly instead of creating your own server connector. +

    + +
    +
    +

    Levels of implementation

    +
    + +

    + +Connector supports many operations implementing data load/manipulation and saving. There is an opportunity to provide supporting basic operations and ignore higher-level ones, in case they are not used in your project. +

    + +
    +
    +

    Basic Support

    +
    + +

    + +Data assignment is basic connector operation which proceeds in the following way: connector connects to database, selects data and outputs this in stdout using XML format of the current component. +

    + +

    +Important points: +

    +
      +
    1. XML-data input must occur only after sending an appropriate http-header;
      +
    2. +
    3. XML must start with XML declaration which contains an appropriate data coding;
      +
    4. +
    5. None other content must be sent to stdout (neither before nor after sending data by connector)
      +
    6. +
    +
        header("Content-type:text/xml");
    +    print("<?xml version='1.0' encoding='utf-8' ?>");
    +    print(xml_formatted_data);
      +
    • incoming parameters - there are no any;
      +
    • +
    • restriction for output data - there is no restriction.
      +
    • +
    + +

    + +XML Format used by connector +

    + +

    +Implementation of this level allows to use resulting script as url for load|loadXML operations. +

    + +

    + +(technically there is an opportunity to use JSON or any other supported by component format, but you should bear in mind that complex scenarios are XML-oriented, that's why you would better use XML) +

    + +
    +
    +

    Filtering and Sorting

    +
    + +

    + +At this stage, the number of supported operations is considerably extended; you are allowed to use #connector_text_filter, connector to sort in grid and sort/filter through URL. +

    + +

    +An obvious advantage of this functionality can be estimated only for operating with grid, for other components such functionality doesn't seem to be necessary (it can be used only by direct parameters setting in URL) +

    + +

    +In point of fact, you should use the code of the previous stage, but there is one particularity - before using XML data is sorted/filtered according to incoming data. +

    +
      +
    • Incoming parameters - GET
      +
        +
      • dhx_filter - hash of filtering rules
        +
          +
        • filtration pattern - any entry( like %x% );
          +
        • +
        • in case you have a few parameters, you should link them by AND logic;
          +
        • +
        • parameter is available only for fields with active filter;
          +
        • +
        • empty filter value means that filter wasn't set and it must be ignored.
          +
        • +
        +
      • +
      +
    • +
    +
         // where field1 like %some% AND field2 like %other%
    +     dhx_filter[1]=some&dhx_filter[2]=other
      +
    • dhx_sort - hash of sorting rules:
      +
        +
      • possible values for asc and dsc parameters;
        +
      • +
      • in case you have a few parameters, you should link them by AND logic;
        +
      • +
      • order of filtering implementation - not defined, at the moment no one component is able to create multi-field sorting
        +
      • +
      +
    • +
    +
         // order by field1 ASC, field2 DESC
    +     dhx_sort[1]=asc&dhx_filter[2]=dsc
    +

    +Names of fields where filtering is enabled or columns indexes in case of grid, will be used as names in above hashes. + +

    +
      +
    • Restriction for output data - order and structure are defined by filtering/sorting parameters.
      +
    • +
    + +

    + +dhtmlxCombo has an additional filtering parameter GET - mask, which is used for setting filtering in the text label column, using “like x%†rule. + +

    +
       some.do?mask=abc
    +
    +
    +

    Dynamical Loading

    +
    + +

    + +The next step after data output implementation is dynamical loading. Dynamical loading has some particular features when working with hierarchical ( tree| treegrid ) and simple ( grid | combo ) components. +

    + +

    +For hierarchical components, loading of data branch occurs at once. +

    +
         some.do?id=123
    +

    +id parameter contains “parent id†value which defines an appropriate branch, meanwhile all filtering/sorting rules which were mentioned above are always working. +

    + +

    +For simple structure, only section data will be output according to incoming parameters. + +

    +
         //grid
    +     some.do?posStart=20&count=50
    +     //combo
    +     some.do?pos=50
    +

    +In grid, posStart parameter sets index of initial string and count parameter sets number of strings to output. +

    + +

    +In combo, pos parameter sets index of initial string, number of strings is defined by server settings. +

    + +

    +When working with grid, initial request (grid doesn't know yet how many strings are expected) doesn't contain any additional parameters. +( posStart and count are not defined ) +

    + +
    +
    +

    Saving changes

    +
    + +

    + +Component uses dhtmlxDataProcessor in send-all-at-once mode. The articles below describe format of data sent to server side and expected reply + +

    + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___protocol_details.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___protocol_details.html new file mode 100755 index 0000000000..d29acba50d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___protocol_details.html @@ -0,0 +1,268 @@ + + + + dhtmlxconnector:protocol_details [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Protocol Details

    +
    + +
    +
    +

    Data fetching

    +
    + +

    +POST +

    +
      +
    • none
      +
    • +
    + +

    + +GET +

    +
      +
    • connector=true - flag of connector based request
      +
    • +
    • dhx_colls=field1,field2…fieldN - optional, can contain list of fields for which collections will be requested. dhtmlxGrid use such parameters to request data for combo columns and select filters ( such requests executed only once , for initial data loading)
      +
    • +
    +
    +     some.php?connector=true&dhx_colls=2,3
    +
    +
      +
    • dhx_sort[field]=directon - instruct server side connector to sort dataset by defined field
      +
    • +
    +
    +     some.php?connector=true&dhx_sort[2]=asc
    +
    +
      +
    • dhx_filter[field]=mask - instruct server side connector to filter dataset by defined field
      +
    • +
    +
    +     //filter by %test%
    +     some.php?connector=true&dhx_filter[2]=test
    +
    + +
    + +
    dhtlmxGrid specific
    +
    + +

    +Requsting part of data +

    + +

    +GET +

    +
      +
    • posStart - position from which data requested
      +
    • +
    • count - count of rows requested
      +
    • +
    + +
    + +
    dhtlmxCombo specific
    +
    + +

    +Requsting part of data +

    + +

    +GET +

    +
      +
    • pos - position from which data requested
      +
    • +
    + +

    + +Filter by label field +

    + +

    +GET +

    +
      +
    • mask - filtering mask for label field
      +
    • +
    + +
    + +
    dhtmlxTree|dhtlxTreeGrid specific
    +
    + +

    +Request branch of tree +

    + +

    +GET +

    +
      +
    • id - parent id for requested branch
      +
    • +
    + +
    +
    +

    Data updating

    +
    + +

    + +GET +

    +
      +
    • editing=true - mark of dataprocessor based call
      +
    • +
    + +

    +POST +

    +
      +
    • ids - list of updated records
      +
    • +
    • [id]_[property] - for each field inside updated record related field in POST generated
      +
    • +
    • [id]_!nativeeditor_status - action type
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___security.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___security.html new file mode 100755 index 0000000000..0a2b7596a2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___security.html @@ -0,0 +1,165 @@ + + + + dhtmlxconnector:security [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Security

    +
    + +

    +dhtmlxConnector is open to external access of another programs that's why any external user is allowed to change data in DB, thus adding some kind of session based authentication is strongly recommended. +Built in security manager allows to limit connector for certain operations only. +

    +
        $gridConn->access->deny("read"); //blocks Select action
    +    $gridConn->access->deny("add"); //blocks Insert action
    +    $gridConn->access->deny("edit"); //blocks Update action
    +    $gridConn->access->deny("delete"); //blocks Delete action
    +

    +By default connector allows all operations. +

    + +
    +
    +

    Transactions

    +
    + +

    + +Grid allows to use transactions , for data create|update|delete operations ( be sure that used DB engine has support for transactions ). They can be enabled as + +

    +
        $conn->sql->set_transaction_mode("global");
    +or 
    +    $conn->sql->set_transaction_mode("record");
    +
    + +

    global transaction mode

    +
    +
      +
    • Component uses single transaction for all records inside single request.
      +
    • +
    • If any operation fails - all record operations will be rolled back, all updated rows will be returned with error status
      +
    • +
    • If custom validation was assigned and block any record - all records inside request will be blocked
      +
    • +
    + +
    + +

    record transaction mode

    +
    +
      +
    • Component uses separate transactions for each record in request
      +
    • +
    • If any operation fails, it will not affect other operations
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_columns_in_grid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_columns_in_grid.html new file mode 100755 index 0000000000..287901279a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_columns_in_grid.html @@ -0,0 +1,158 @@ + + + + dhtmlxconnector:select-box_columns_in_grid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Select box columns in a grid

    +
    + +

    +When grid has co|coro columns ( select|combo-box ), it will automatically request data for it in same manner as for filtering options. So it possible to use similar way of logic to define which list of values need to be used in select|combo inside the grid. + +

    +
      +
    • automatic - if no custom instruction provided , grid will use DISTINCT select against related field, and fetch all possible options
      +
    • +
    • hardcoded list
      +
    • +
    +
    	$grid->set_options("item_nm",array("1" => "one", "2"=>"two","3" => "three")); // value => label
    +	$grid->render_table("grid50","item_id","item_nm,item_cd");
      +
    • list created on base of different table
      +
    • +
    +
    	$options = new OptionsConnector($res);
    +	$options->render_table("countries","country_id","country_id(value),country_name(label)");
    +	$grid->set_options("item_nm",$options);
    + 
    +	$grid->render_table("grid50","item_id","item_nm,item_cd");
    +

    +In case of options in grid +

    +
      +
    • when using predefined list of data, both values and labels need to be provided
      +
    • +
    • when using connector, there must be two fields selected, one as (value), second as (label)
      +
    • +
    + +

    + +In case, when connector used only to fill select-filter +

    +
      +
    • only labels need to be provided
      +
    • +
    • connector may define only label parameter
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_in_scheduler.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_in_scheduler.html new file mode 100755 index 0000000000..5b15af7f41 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___select-box_in_scheduler.html @@ -0,0 +1,143 @@ + + + + dhtmlxconnector:select-box_in_scheduler [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    Select box columns in a scheduler

    +
    + +

    + +When scheduler has a select-like collections , or unit|timeline view - it possible to load the list of related options from a server. In such case the data loading need to be defined on client side as + +

    +
    	some_collection=scheduler.serverList("type");
    +

    +On server side , list of options can be retrieved in few ways + +

    +
      +
    • hardcoded list
      +
    • +
    +
    	//	both values and labels need to be provided
    +	$scheduler->set_options("type",array("1" => "one", "2"=>"two","3" => "three")); // value => label
    +	$scheduler->render_table("events","event_id","start_date,end_date,text,type_id");
      +
    • list created on base of different table
      +
    • +
    +
    	$options = new OptionsConnector($res);
    +	//	there must be two fields selected, one as (value), second as (label)
    +	$options->render_table("types","type_id","type_id(value),type_name(label)");
    +	$scheduler->set_options("type",$options);
    + 
    +	$scheduler->render_table("events","event_id","start_date,end_date,text,type_id");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___server_side_others.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___server_side_others.html new file mode 100755 index 0000000000..92387550e6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___server_side_others.html @@ -0,0 +1,266 @@ + + + + dhtmlxconnector:server_side_others [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +The init code are similar for all components and DB types +

    + +

    DB types

    +
    + +

    + +MySQL ( php_mysql ) + +

    +
    require("connector/grid_connector.php");
    + 
    +$res=mysql_connect("localhost","root","");
    +mysql_select_db("myDatabase");
    + 
    +$gridConn = new GridConnector($res,"MySQL");
    +

    +MySQLi ( php_mysqli ) + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_mysqli.php");
    + 
    +$mysqli = new mysqli($server, $user, $pass, $mysql_db); 
    +$gridConn = new GridConnector($mysqli,"MySQLi");
    +

    +PostgreSQL ( php_pg ) + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_postgre.php");
    + 
    +$res = pg_connect("host=localhost port=5432 dbname=mary");
    + 
    +$gridConn = new GridConnector($res,"Postgre");
    +

    +Oracle ( php_oci ) + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_oracle.php");
    + 
    +$res = oci_connect("scott", "tiger", $db);
    + 
    +$gridConn = new GridConnector($res,"Oracle");
    +

    +MSSQL ( php_mssql ) + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_mssql.php");
    + 
    +$res=mssql_connect('.\SQLEXPRESS',"sa","1",false);
    +mssql_select_db("sampleDB");
    + 
    +$gridConn = new GridConnector($res,"MsSQL");
    +

    +PDO ( php_pdo ) + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_pdo.php");
    + 
    +$res = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
    + 
    +$gridConn = new GridConnector($res,"PDO");
    +

    +File System + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_pdo.php");
    + 
    +$gridConn = new GridConnector("/var/www/test","FileSystem");
    +$grid->render_table("./", "id", "A,B,C,D,E,F");
    +

    +Excel file + +

    +
    require("connector/grid_connector.php");
    +require("connector/db_excel.php");
    + 
    +$res = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
    + 
    +$grid = new GridConnector("some.xls", "ExcelDBDataWrapper");
    +$grid->render_table("A18:F83", "id", "A,B,C,D,E,F");
    +
    + +

    Component types

    +
    + +

    +For other components syntax of constructor exactly the same, except, the “Grid†in object name replaced with component's name +

    + +

    +Grid + +

    +
         require("connector/grid_connector.php");
    +     //...
    +     $gridConn = new GridConnector($res,"MySQL");
    +

    +TreeGrid 1) + +

    +
         require("connector/treegrid_connector.php");
    +     //...
    +     $treeGridConn = new TreeGridConnector($res,"MySQL");
    +

    +Tree 2) + +

    +
         require("connector/tree_connector.php");
    +     //...
    +     $treeConn = new TreeConnector($res,"MySQL");
    +

    +Combo + +

    +
         require("connector/combo_connector.php");
    +     //...
    +     $comboConn = new ComboConnector($res,"MySQL");
    +

    +Scheduler + +

    +
         require("connector/scheduler_connector.php");
    +     //...
    +     $schedulerConn = new SchedulerConnector($res,"MySQL");
    +

    +Form + +

    +
         require("connector/form_connector.php");
    +     //...
    +     $formConn = new FormConnector($res,"MySQL");
    +

    +DataView + +

    +
         require("connector/dataview_connector.php");
    +     //...
    +     $dataConn = new DataViewConnector($res,"MySQL");
    +

    +Chart + +

    +
         require("connector/chart_connector.php");
    +     //...
    +     $chartConn = new ChartConnector($res,"MySQL"); // (!!!)
    +
    +
    +
    1) +, 2) +check configuration details
    +
    + + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sorting.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sorting.html new file mode 100755 index 0000000000..976855baa5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sorting.html @@ -0,0 +1,169 @@ + + + + dhtmlxconnector:sorting [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Sorting

    +
    + +

    + +While all connectors can sort data by url manipulation, only Grid and TreeGrid has native GUI for sorting, so below info most actual for those two components. +

    + +

    +To make grid sort content with connectors you need to use “connector†as sorting type while grid initialization. For example: + +

    +
        myGrid.setColSorting("connector,str,na);
    +

    + +Here the first column will be sorted on server with connectors, the second as string on client side, the third column will not be sortable. +

    + +

    +If you need to customize the way of sorting you can use “beforeSort†server side event. +Event doesn't allow to write custom sorting logic , but you can affect SORT BY clause of generated SQL request. +Event receives SortInterface Object as parameter +

    + +

    +Define default sorting + +

    +
       function custom_sort($sorted_by){
    +          //SORT BY some_field ASC
    +          if (!sizeof($sorted_by->rules)) 
    +               $sorted_by->add("some_field","ASC");
    +   }
    +   $conn->event->attach("beforeSort","custom_sort");
    +

    +Default sorting by two fields + +

    +
       function custom_sort($sorted_by){
    +          //SORT BY some_field ASC, some_other ASC
    +          if (!sizeof($sorted_by->rules)){
    +               $sorted_by->add("some_field","ASC");
    +               $sorted_by->add("some_other","ASC");
    +          }
    +   }
    +   $conn->event->attach("beforeSort","custom_sort");
    +

    + +Custom sorting rule + +

    +
       function custom_sort($sorted_by){
    +          // SORT BY LENGTH(some_field)
    +          $sorted_by->rules[0]["name"]="LENGTH(some_field)";
    +   }
    +   $conn->event->attach("beforeSort","custom_sort");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sortinterface_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sortinterface_object.html new file mode 100755 index 0000000000..58199ac08a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___sortinterface_object.html @@ -0,0 +1,182 @@ + + + + dhtmlxconnector:sortinterface_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    +
    + + +
    +
    + + +

    +

    + +

    + +

    Sort Interface Object

    +
    + +
    +
    +

    clear

    +
    + +

    +clears all defined settings + +

    +
      $coll->clear();
    +
    +
    +

    index

    +
    + +

    +check if options for named field exist in collection and return related hash. Returns false if named field not found in collection. + +

    +
      $index = $coll->index("some_field");
    +
    +
    +

    add

    +
    + +

    +adds new sorting rule to collection + +

    +
      $coll->add("some_field","ASC");
    +
    +
    +

    rules

    +
    + +

    +array of all already defined sorting rules. Each element has two properties +

    +
      +
    • name - name of related field
      +
    • +
    • direction - direction of sorting
      +
    • +
    +
      $name = $coll->rules[0]["name"]
    +  $coll->rules[0]["direction"]="DESC";
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_dhtmlxconnector_event_o.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_dhtmlxconnector_event_o.html new file mode 100755 index 0000000000..a902ec0443 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_dhtmlxconnector_event_o.html @@ -0,0 +1,148 @@ + + + + dhtmlxconnector:toc_dhtmlxconnector_event_o [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    dhtmlxConnector event objects

    +
    + +

    +DataAction object +Object received by next events: beforeInsert, beforeUpdate, beforeDelete, beforeProcessing, afterProcessing, afterDelete, afterUpdate, afterInsert +

    + +

    +DataItem Object +Object received by beforeRender event +

    + + +

    + +SortInterface Object +Object received by beforeSort event +

    + +

    +FilterInterface Object +Object received by beforeSort event + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_what_is_dhtmlxconnector.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_what_is_dhtmlxconnector.html new file mode 100755 index 0000000000..8130c8c950 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___toc_what_is_dhtmlxconnector.html @@ -0,0 +1,211 @@ + + + + dhtmlxconnector:toc_what_is_dhtmlxconnector [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___tree_group.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___tree_group.png new file mode 100755 index 0000000000000000000000000000000000000000..85452872a7c80761c6629b1e88e33a0a2bb62c70 GIT binary patch literal 89090 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treedataitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treedataitem.html new file mode 100755 index 0000000000..df245f13a7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treedataitem.html @@ -0,0 +1,206 @@ + + + + dhtmlxconnector:treedataitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    TreeDataItem

    +
    + +

    + +Nest all methods of DataItem Object +

    + +
    + +

    get_parent_id

    +
    + +

    +method returns parent id of the selected item: + +

    +
      $dataItem->get_parent_id();
    +
    + +

    set_image

    +
    + +

    +method allows to set image for any item in tree: + +

    +
      $dataItem->set_image($img)
    +

    + +Parameters: +

    +
      +
    • $img - image which will be set for selected item
      +
    • +
    + +

    + +Can be use with variable number of parameters +

    +
      $dataItem->set_image($img1,$img2,$img3)
    +

    + +Parameters: +

    +
      +
    • $img1 - image of folder in opened state
      +
    • +
    • $img2 - image of folder in closed state
      +
    • +
    • $img3 - image of leaf item
      +
    • +
    + +
    + +

    get_check_state

    +
    + +

    +method returns the state of selected item: + +

    +
        $dataItem->get_check_state();
    +

    + +Parameters: +

    +
      +
    • $value -returns state of checkbox related to the item:
      +
    • +
    + +
    + +

    set_check_state

    +
    + +

    +method allows to set state of checkbox related to the item: + +

    +
        $dataItem->set_check_state($value);
    +

    + +Parameters: +

    +
      +
    • $value - state of the item, valid valus are “0†- unchecked, “1†- checked, â€-1†- third state
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegrid_multitable.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegrid_multitable.png new file mode 100755 index 0000000000000000000000000000000000000000..8c29ddf006d0dfd6680dbed0ca44da8cf10fe39d GIT binary patch literal 15712 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

    s_o3uXPnqqDL4FFWoNJ_dsp{G`9`bDT-M!AoF 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegriddataitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegriddataitem.html new file mode 100755 index 0000000000..99afde4ba1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___treegriddataitem.html @@ -0,0 +1,150 @@ + + + + dhtmlxconnector:treegriddataitem [DHX documentation] + + + +

    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    TreeGridDataItem

    +
    + +

    + +Nest all method of DataItem Object and GridDataItem Object +

    + +
    + +

    get_parent_id

    +
    + +

    +method returns parent id of selected item: + +

    +
        $dataItem->get_parent_id();
    +
    + +

    set_image

    +
    + +

    +method allows to set image for all check states of the node in tree: + +

    +
        $dataItem->set_image($img);
    +

    + +Parameters: +

    +
      +
    • $img - image which will be set for the item, path relative to icon's path of tree
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___url_manipulation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___url_manipulation.html new file mode 100755 index 0000000000..d9926043ae --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___url_manipulation.html @@ -0,0 +1,174 @@ + + + + dhtmlxconnector:url_manipulation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    +
    + + +
    +
    + + +

    +

    + +

    + +

    URL manipulation

    +
    + +

    + +You can control which data loaded in component by specifying additional parameters in URL. Check protocol details for full url parameters description. +

    + +
    +
    +

    Filtering

    +
    +
      +
    • Filter by one field
      +
    • +
    +
           grid.load("some.php?connector=true&dhx_filter[1]=mask");
    +

    + +With such url - data will be taken with additional rule + +

    +
           WHERE field_for_column_1 LIKE %mask%
      +
    • Filter by multiple fields
      +
    • +
    +
           grid.load("some.php?connector=true&dhx_filter[1]=mask&dhx_filter[3]=another");
    +

    +Similar approach can be used against other component, but you will need to provide exact field name instead of column index. +

    + +

    +Beware that such filtering is not-secure, if you need to hide some data - be sure to define such limitation on server side, not as part of URL +

    + +
    +
    +

    Sorting

    +
    +
           //ORDER by field_2 ASC
    +       grid.load("some.php?connector=true&dhx_sort[2]=asc");
    +       //ORDER by field_2 ASC, field_3 DESC
    +       grid.load("some.php?connector=true&dhx_sort[2]=asc&dhx_sort[3]=desc");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___validating_data.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___validating_data.html new file mode 100755 index 0000000000..3b8e45672b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___validating_data.html @@ -0,0 +1,128 @@ + + + + dhtmlxconnector:validating_data [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Validating Data

    +
    + +

    +To implement server side validation of incoming data you can use “beforeUpdateâ€, “beforeInsertâ€, “beforeDelete†or “beforeProcessing†event. “beforeProcessing†event occurs for all types of operations, while other events occurs only for related operations, so you can have different validation rules for different operations. +

    + +

    +Event will receive DataAction object as parameter. This object can be used to retrieve related data and allow|deny operation. ( beware that it contains only data which was received from client side, not the all data related to the record, as DataItem object has ) +

    +
            function validate($data){
    +             if ($data->get_value("some")=="")
    +                  $data->invalid();
    +        }
    +        $conn->event->attach("beforeProcessing","validate");
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___xml_format_used_by_connector.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___xml_format_used_by_connector.html new file mode 100755 index 0000000000..7aef3b839e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/dhtmlxconnector___xml_format_used_by_connector.html @@ -0,0 +1,260 @@ + + + + dhtmlxconnector:xml_format_used_by_connector [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    XML format used by connector

    +
    + +
    +
    +

    Grid

    +
    +
       <rows>
    +           <row id="some1"><cell>value 1,1</cell><cell>value 1,2</cell></row>
    +           <row id="some2"><cell>value 2,1</cell><cell>value 2,2</cell></row>
    +   </rows>
      +
    • row - tag represents row in the grid
      +
    • +
    • cell - tag represents cell in the grid
      +
    • +
    + +

    + +row@id - mandatory attribute, must be unique for each row; row and cell tags may contain additional attributes, which will be processed in default way +

    + +

    +In dyn loading mode + +

    +
       <rows total_count="50000" pos="1230">
    +           <row id="some1230"><cell>value 1,1</cell><cell>value 1,2</cell></row>
    +           <row id="some1231"><cell>value 2,1</cell><cell>value 2,2</cell></row>
    +   </rows>
      +
    • rows@total_count - count of rows in grid, need to be sent only for first data request ( when posStart parameter is not defined )
      +
    • +
    • rows@pos - equal to posStart parameters, define in which place of grid data will added
      +
    • +
    + +
    +
    +

    TreeGrid

    +
    +
       <rows>
    +           <row id="some1">
    +              <cell image="some.gif">value 1,1</cell><cell>value 1,2</cell>
    +              <row id="some11"><cell>child value 1</cell><cell>child value 2</cell></row>
    +           </row>
    +           <row id="some2"><cell>value 2,1</cell><cell>value 2,2</cell></row>
    +   </rows>
      +
    • row - tag represents row in the grid, one row tag can contain other row tags inside ( parent - child relation in hierarchy )
      +
    • +
    • cell - tag represents cell in the grid
      +
    • +
    • row@id - mandatory attribute, must be unique for each row
      +
    • +
    • cell@image - can define image for tree cell in grid ( optional )
      +
    • +
    + +

    +Dyn. loading + +

    +
       <rows parent="id">
    +           <row id="some1" xmlkids="1">
    +              <cell image="some.gif">value 1,1</cell><cell>value 1,2</cell>
    +           </row>
    +           <row id="some2"><cell>value 2,1</cell><cell>value 2,2</cell></row>
    +   </rows>
      +
    • row@xmlkids - defines that row can contain child nodes
      +
    • +
    • rows@parent - name of parent ID ( equal to incoming “id†parameter ) , ID of virtual root - 0
      +
    • +
    + +
    +
    +

    Tree

    +
    +
       <tree>
    +        <item id="some" text="name">
    +                 <item id="child1" text="name 1"/>
    +                 <item id="child2" text="name 2"/>
    +        </item>
    +   </tree>
      +
    • item tag - item in a tree, can nest other item tags to represent parent-child relation
      +
    • +
    • item@id - ID, unique for each item
      +
    • +
    • item@text - label
      +
    • +
    + +

    + +In case of dyn. loading +

    +
       <tree id="id">
    +        <item id="some" text="name" childs="1">
    +        </item>
    +   </tree>
      +
    • item@childs - defines that row can contain child nodes
      +
    • +
    • tree@id - name of parent ID ( equal to incoming “id†parameter ) , ID of virtual root - 0
      +
    • +
    + +
    +
    +

    Combo

    +
    +
        <data>
    +        <option value="some">Some label</option>
    +        <option value="other">Other label</option>
    +    </data>
      +
    • option - represent option in combo
      +
    • +
    + +

    + +In case of dyn. loading +

    +
        <data add="true">
    +        <option value="some">Some label</option>
    +        <option value="other">Other label</option>
    +    </data>
    +

    + +If “pos†parameter was provided, response must contain data@add attribute , to mark that it not new set of values, but addition to existing one. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/icons___connector.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/icons___connector.gif new file mode 100755 index 0000000000000000000000000000000000000000..62804cbf5ed89006e74447384947c00b7b85bdc7 GIT binary patch literal 635 zcmZ?wbhEHb6k`x$coxKvdiY^yXXoF)e@~t~nLcx6R!+{0>#uVQ3V;0gF=x)4vewRJ zmmlWVG=Bg7J@wFotn8etSFdJf=VYxp`0LlN+B45GGc(gxAN=&`(}M>O)~{bbZ{EBY zFJ5$XbeubP?$)halO|1i{``4;ef{#~%iG%8+S}Xr@85s)*s(>67Cn3REH5u_-@bj{ zzI|J|bm`~MpJ&gWy=&L5sZ*y;o;uCBGM?a!Y-zkmO3X>HxHW5>Gn>u=w_eevSO znwpxvzP@G4mi6`bU%Pg#r>Cc@yZhn8hhM&Yxp)8m{Q2`2E?jv0`0?p8W^{ISO_(_G z&6_v7cJFR(Zk|4U`q86D&zw2a)YSC<|9^(T0Th3-FfuR%G3bDt1Bw#{_8SdBO-)P^ z9L*h_UCc5(tddG(XD6pBYog}qC(6itxJA#%P2Njh_hM&&iguH`0n@Dx8>@~$r^Az* zyp8QUlr1ODWwo_%)G=(9^L15t-4v9X)U?2@i9z3GNyR0_BYgfrPQ6;CUP0{A=4~8G zg_@U_g{@EGWok^Ba3pGZfn~E<#|cgsg=Sab1x_qVQ_nBD_}heU;(<_G*11b0N&CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/index.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/index.html new file mode 100755 index 0000000000..a0d55b7c7f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxconnector/index.html @@ -0,0 +1,176 @@ + + + + dhtmlxconnector:toc [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    dhtmlxConnector

    +
    + +

    + +This is documentation for PHP connector. For other platforms check
    + +.Net documentation, Java documentation, classic ASP documentation +

    + +

    +dhtmlxConnector is a set of PHP classes which helps to simplify server side operations for dhtmlx components + +

    +
      +
    • Data loading for Grid, TreeGrid, Tree, Combo, Scheduler, DataView, Chart, Form
      +
    • +
    • Data saving for Grid, TreeGrid, Tree, Scheduler, DataView, Form
      +
    • +
    • Server side sorting and filtering for Grid, Combo
      +
    • +
    • Dynamic loading (paging) for Grid, Treegrid, Tree, Scheduler, DataView
      +
    • +
    + +

    + +Server side requirements +

    +
      +
    • fully supported DataBases: MySQL, PostgreSQL, Oracle, MSSQL, FileSystem
      +
    • +
    • partially supported DataBases: any PDO|ODBC compilant ( MSAccess, SQLLite, DB2, FireBird, etc. )
      +
    • +
    • PHP version: 5.x
      +
    • +
    + + + +
    + +
    API Reference
    + +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_media.txt b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_media.txt new file mode 100755 index 0000000000..de5cc06a4d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_media.txt @@ -0,0 +1,4 @@ +icons___file.gif +icons___dataprocessor.gif +common___any_ed.gif +dhtmlxgrid___dataprocessor.png diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_structure.xml b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_structure.xml new file mode 100755 index 0000000000..a3120fbec0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/_structure.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/common___any_ed.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/common___any_ed.gif new file mode 100755 index 0000000000000000000000000000000000000000..ce8101728664c35094165df573763ff37910f41f GIT binary patch literal 143 zcmV;A0C4|DNk%w1VMzcG0Du4h0L%dY|NkNR1OyZS{{Soi0000<01yBG0%nAdsmtvT zqnxzbi?iOmuMl_;7+xfppeV4e9f`SVdB~m`o@GlLw$94wcCcXafeZSC%NdNPj3$*( x + + + dhtmlxdataprocessor:adjusting_server_side_code [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Adjusting Server Side Code

    +
    + +

    + +If you are using php-connectors - please refer to connectors documentation. +

    + +

    +The default package contains an example of the server side code for PHP (by additional request the similar code for JSP|ColdFusion|C#.Net|RybyOnRails can be sent). +The code does the following three tasks: +

    + +

    +a) Takes parameters from the incoming request;
    + +b) Makes the necessary DB operation;
    + +c) Returns the information about the operation result. +

    + +

    +The incoming parameters are: +

    +
      +
    • gr_id - id of a row in the grid for which some operation is executed;
      +
    • +
    • !nativeeditor_status - the status of the operation;
      +
    • +
    • inserted - the row in question was added;
      +
    • +
    • deleted - the row in question was deleted;
      +
    • +
    • … any other value … - the row was updated;
      +
    • +
    • c0 - the data of the first column in the updated row;
      +
    • +
    • c1 - the data of the second column in the updated row;
      + ….
      +
      +
    • +
    • cN - the data of the (N+1)th column in the grid.
      +
    • +
    + +

    + +All the parameters are part of GET request. +

    + +

    +Based on the value of â€!nativeeditor_status†the related section of the server side logic is triggered. +

    + +

    +The response must be in the following format: + +

    +
      <data>
    +      <action type="some" sid="some" tid="some" />
    +  </data>
    +

    + +Where: +

    +
      +
    • type - the type of the operation (it may be “insertâ€, “updateâ€, “deleteâ€);
      +
    • +
    • sid - the original row ID (the same as gr_id);
      +
    • +
    • tid - the ID of the row after the operation (may be the same as gr_id, or some different one - it can be used during a new row adding, when a temporary ID created on the client side is replaced with the ID taken from the DB or by any other business rule).
      +
    • +
    + +

    + +The response must be a valid XML in order to be processed correctly. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_afterupdatecallback.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_afterupdatecallback.html new file mode 100755 index 0000000000..3077dd85dc --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_afterupdatecallback.html @@ -0,0 +1,139 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_afterupdatecallback [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    afterUpdateCallback(sid, tid, action, btag)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +used in combination with setOnBeforeUpdateHandler to create custom client-server transport system + +

    +
      +
    • sid - id of item before update
      +
    • +
    • tid - id of item after up0ate
      +
    • +
    • action - action name
      +
    • +
    • btag - reference to the xml node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_attachevent.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_attachevent.html new file mode 100755 index 0000000000..dd9f9f42f5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_attachevent.html @@ -0,0 +1,142 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_attachevent [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    attachEvent (evName, evHandler)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    + adds any user-defined handler to available events + +

    +
      +
    • evName - name of the event;
      +
    • +
    • evHandler - user-defined event handler.
      +
    • +
    +
                  dataprocessor.attachEvent(evName, evHandler);
    +

    + +Several handlers can be attached to one and the same event, and all of them will be executed. +

    + +

    +Note: the names of the events are case-insensitive. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_checkbeforeupdate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_checkbeforeupdate.html new file mode 100755 index 0000000000..99ac87abc2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_checkbeforeupdate.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_checkbeforeupdate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    checkBeforeUpdate(rowId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +check mandatory fields and varify values of cells, initiate update (if specified) + +

    +
      +
    • rowId - id of row to set update-status for
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_clearverificator.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_clearverificator.html new file mode 100755 index 0000000000..19ff8223c5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_clearverificator.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_clearverificator [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    clearVerificator(ind)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +remove column from list of those which should be verified + +

    +
      +
    • ind - column Index (0 based)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_detachevent.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_detachevent.html new file mode 100755 index 0000000000..0219627f39 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_detachevent.html @@ -0,0 +1,129 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_detachevent [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    detachEvent (id)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +removes an event handler + +

    +
                  dataprocessor.detachEvent(id);
    + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enabledatanames.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enabledatanames.html new file mode 100755 index 0000000000..34b0eda6d6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enabledatanames.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_enabledatanames [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableDataNames(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +enable/disable named field for data syncing, will use column ids for grid + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enablepartialdatasend.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enablepartialdatasend.html new file mode 100755 index 0000000000..2fe0816e48 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enablepartialdatasend.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_enablepartialdatasend [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enablePartialDataSend(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +enable/disable mode , when only changed fields and row id send to the server side, instead of all fields in default mode + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enableutfencoding.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enableutfencoding.html new file mode 100755 index 0000000000..8b3a90149f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_enableutfencoding.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_enableutfencoding [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableUTFencoding(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +allows to set escaping mode + +

    +
      +
    • true - utf based escaping, simple - use current page encoding
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_getsyncstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_getsyncstate.html new file mode 100755 index 0000000000..c7a1006168 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_getsyncstate.html @@ -0,0 +1,131 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_getsyncstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getSyncState()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +get state of updating +

    + +

    + +Returns true - all in sync with server, false - some items not updated yet. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_ignore.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_ignore.html new file mode 100755 index 0000000000..0ba3d05463 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_ignore.html @@ -0,0 +1,136 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_ignore [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    ignore(code)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +allows to execute commands which will not trigger dataprocessor + +

    +
      +
    • code - code block, any operation in which, will not cause dataProcessor reaction
      +
    • +
    +
        dp.ignore(function(){
    +          mygrid.addRow(1,"new row");
    +          mygrid.deleteRow(123);
    +    })
    + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_init.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_init.html new file mode 100755 index 0000000000..4c113ba1cf --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_init.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_init [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    init(anObj)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +initializes data-processor + +

    +
      +
    • anObj - dhtmlxGrid object to attach this data-processor to
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_senddata.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_senddata.html new file mode 100755 index 0000000000..836d1250da --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_senddata.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_senddata [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    sendData(rowId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +send row(s) values to server + +

    +
      +
    • rowId - id of row which data to send. If not specified, then all “updated†rows will be send
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setdatacolumns.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setdatacolumns.html new file mode 100755 index 0000000000..e1f9070c05 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setdatacolumns.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_setdatacolumns [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setDataColumns(val)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +allows to define, which column may trigger update + +

    +
      +
    • val - array or list of true/false values
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setonbeforeupdatehandler.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setonbeforeupdatehandler.html new file mode 100755 index 0000000000..247b7b1d27 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setonbeforeupdatehandler.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_setonbeforeupdatehandler [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setOnBeforeUpdateHandler(func)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor_deprecated.js +

    + +

    +set function called before server request sent ( can be used for including custom client server transport system) + +

    +
      +
    • func - event handling function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_settransactionmode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_settransactionmode.html new file mode 100755 index 0000000000..2d0032f18d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_settransactionmode.html @@ -0,0 +1,135 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_settransactionmode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setTransactionMode(mode,total)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +select GET or POST transaction model + +

    +
      +
    • mode - GET/POST
      +
    • +
    • total - true/false - send records row by row or all at once (for grid only)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdated.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdated.html new file mode 100755 index 0000000000..5d60d5ba2b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdated.html @@ -0,0 +1,137 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_setupdated [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setUpdated(rowId,state,mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +mark row as updated/normal. check mandatory fields,initiate autoupdate (if turned on) + +

    +
      +
    • rowId - id of row to set update-status for
      +
    • +
    • state - true for “updatedâ€, false for “not updatedâ€
      +
    • +
    • mode - update mode name - “insertedâ€,â€updatedâ€,â€deleted†(“updated†by default)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdatemode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdatemode.html new file mode 100755 index 0000000000..3f3a948c04 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setupdatemode.html @@ -0,0 +1,133 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_setupdatemode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setUpdateMode(mode,dnd)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +set if rows should be send to server automaticaly + +

    +
      +
    • mode - “row†- based on row selection changed, “cell†- based on cell editing finished, “off†- manual data sending
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setverificator.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setverificator.html new file mode 100755 index 0000000000..158cf88939 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_method_dataprocessor_setverificator.html @@ -0,0 +1,146 @@ + + + + dhtmlxdataprocessor:api_method_dataprocessor_setverificator [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setVerificator(ind,verifFunction)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxdataprocessor.js +

    + +

    +specify column which value should be varified before sending to server + +

    +
      +
    • ind - column index (0 based)
      +
    • +
    • verifFunction - function (object) which should verify cell value (if not specified, then value will be compared to empty string). Three arguments will be passed into it: value, row ID and column index
      +
    • +
    +
       //check if first column values is not equal to 0
    +   myDataProcessor.setVerificator(0,greater_0);
    +   function greater_0(value){
    +	return value>0;
    +   }
    + 
    +   //check if second column values is not empty
    +   myDataProcessor.setVerificator(1,not_empty);
    +   function not_empty(value,id,ind){
    +	if (value=="") mygrid.setCellTextStyle(id,ind,"background-color:yellow;");
    +	return value!="";
    +   }
    + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_alpha.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_alpha.html new file mode 100755 index 0000000000..473e3b9103 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_alpha.html @@ -0,0 +1,163 @@ + + + + dhtmlxdataprocessor:api_toc_alpha [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    dhtmlxDataProcessor API Methods

    +
    + + + +
    + +

    dataProcessor Object

    +
    +
      +
    • afterUpdateCallback used in combination with setOnBeforeUpdateHandler to create custom client-server transport system
      +
    • +
    • attachEvent attaches an event handler to DataProcessor
      +
    • +
    • checkBeforeUpdate checks mandatory fields and varify values of cells, initiate update (if specified)
      +
    • +
    • clearVerificator removes column from list of those which should be verified
      +
    • +
    • detachEvent removes an event handler
      +
    • +
    • enableDataNames enables/disables named field for data syncing, will use column ids for grid
      +
    • +
    • enablePartialDataSend enables/disables mode , when only changed fields and row id send to the server side, instead of all fields in * default mode
      +
    • +
    • enableUTFencoding allows to set escaping mode
      +
    • +
    • getSyncState gets state of updating
      +
    • +
    • init initializes data-processor
      +
    • +
    • ignore allows to execute commands which will not trigger dataprocessor
      +
    • +
    • sendData sends row(s) values to server
      +
    • +
    • setDataColumns allows to define, which column may trigger update
      +
    • +
    • setOnBeforeUpdateHandler sets function called before server request sent ( can be used for including custom client server transport system)
      +
    • +
    • setTransactionMode selects GET or POST transaction model
      +
    • +
    • setUpdated marks row as updated/normal. check mandatory fields,initiate autoupdate (if turned on)
      +
    • +
    • setUpdateMode sets if rows should be send to server automaticaly
      +
    • +
    • setVerificator specifies column which value should be varified before sending to server
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_categories.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_categories.html new file mode 100755 index 0000000000..b3c5a94da7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___api_toc_categories.html @@ -0,0 +1,121 @@ + + + + dhtmlxdataprocessor:api_toc_categories [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___client_side_initialization.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___client_side_initialization.html new file mode 100755 index 0000000000..b55366b93e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___client_side_initialization.html @@ -0,0 +1,142 @@ + + + + dhtmlxdataprocessor:client_side_initialization [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Client Side Initialization

    +
    + +

    + +To initialize DataProcessor and attach it to the grid, the following two commands can be used: + +

    +
      var dp = new dataProcessor(url)
    +  dp.init(mygrid)
    +

    + +Where: url - a relative or absolute path to a server side component of the dataprocessor.
    + +mygrid - a dhtmlxGrid object. +

    + +

    +By default the dataprocessor will be initialized in the auto update mode, which means that after each change in the grid it will send data to the server. In some cases it makes sense to use the manual update mode: + +

    +
      dp.setUpdateMode("off")
    +  ...
    +  dp.sendData();
    +

    + +In such case the dataprocessor will store the information about all changes in the grid, and will send them to the server only after sendData method is executed. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_errors.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_errors.html new file mode 100755 index 0000000000..da28c2053a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_errors.html @@ -0,0 +1,142 @@ + + + + dhtmlxdataprocessor:common_errors [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Common Errors

    +
    + +

    + +a) Incorrect XML error.
    + +The most probable reason of this error is some server side error, which breaks the XML. You can enable debug console and check the response of the server side to receive more information. ( debug console can detect many types of xml related errors and show reasons of problems ) +

    + +

    +b) Deleted rows are not removed from the grid.
    + +Actually it is not an error - the rows will be removed only after synchronizing with the server. +You can define custom marking routine which will hide rows instead of striking through them. +

    + +

    +c) Deleted rows are not removed from the grid after synchronizing with the server (updated|inserted rows stay bold).
    + +The most probable cause are incorrect values of the “action†attribute in the response XML. +

    + +

    +d) JS error after synchronizing with the server.
    + + Most probably this error is caused by incorrect values of the “sid†and “tid†attributes in the response XML. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_tasks.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_tasks.html new file mode 100755 index 0000000000..33ac114b16 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___common_tasks.html @@ -0,0 +1,226 @@ + + + + dhtmlxdataprocessor:common_tasks [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Common Tasks

    +
    + +

    + +a) Waiting for finishing update. +There are two events which can be used to catch finish of data sync operation: + +

    +
      dp.attachEvent("onAfterUpdateFinish",function(){
    +      alert("single row updated")
    +  });
    +  dp.attachEvent("onFullSync",function(){
    +      alert("all rows updated")
    +  });
    +

    + +In any moment of time update state can be checked as follows: + +

    +
      dp.getSyncState()
    +

    + +which will return true if all data synced with server and false otherwise +

    + +

    +b) Manual row updating. +The dataprocessor detects the row changed only by edit operations. If a row was changed by a direct API calling it will not be updated. You can manually call the dataprocessor to inform about the update operation: + +

    +
          grid.cells(id,ind).setValue(new_one)
    +      dp.setUpdated(id,true);
    +

    + +The row can be marked as “not updated†in the same manner (may be useful in some scenarios): + +

    +
          dp.setUpdated(id,false);
    +

    + +If you want to mark row with status different from “updated†(not sure how it can be useful, but still ) it can be done as below: + +

    +
           dp.setUpdated(id,true,"status name");
    +

    + +c) Error catching. +

    + +

    +Starting version 2.1, dataprocessor has default reaction on “error†response type, which can be used to report about server side errors. Row marked as error will be highlighted in grid. And it will not be sent back to server until one of the next events occurs: +

    +
      +
    • user edit data in row;
      +
    • +
    • rows set back to updated status through setUpdated command.
      +
    • +
    + +

    + +d) Sever side validation. +

    + +

    +There is a built in support for “invalid†status in server side response. It's similar to “errorâ€, but has different visual marking. +

    + +

    +If you want to extend it, you should do the following: + +

    +
      dp.defineAction("invalid",function(sid,response){
    +            var message = response.getAttribute("message");
    +            alert(message);
    + 
    + 
    + 
    +            return true;
    +  })
    +

    + +now you can do the next on server side, if data is not valid you can just output the next instead of valid response: + +

    +
    <data>
    + <action sid="{gr_id}" type="invalid" message="Data in first column is not valid" />
    + </data>
    +

    + +e) Loading extra data during update. +

    + +

    + +It's possible to extend default after-update reaction as: + +

    +
      dp.defineAction("updated",function(sid,response){
    +            var sid = response.getAttribute("sid");
    +            var extra = response.getAttribute("extra");
    +            this.obj.cells(sid,0).setValue(extra);
    +            return true;
    +  })
    +

    + +with such code you will be able to specify any additional data which needs to be updated in grid after receiving xml response from the server: + +

    +
    <data>
    + <action sid="{gr_id}" type="updated" tid="{gr_id}" extra="new value for first column" />
    + </data>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___custom_server_side_responses.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___custom_server_side_responses.html new file mode 100755 index 0000000000..f727929c79 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___custom_server_side_responses.html @@ -0,0 +1,152 @@ + + + + dhtmlxdataprocessor:custom_server_side_responses [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Custom Server Side Responses

    +
    + +

    + +The dataprocessor has 5 predefined modes of response: +

    +
      +
    • update;
      +
    • +
    • insert;
      +
    • +
    • delete;
      +
    • +
    • invalid;
      +
    • +
    • error.
      +
    • +
    + +

    + +But in some cases you will need a way to return some additional information (the most common use-case - an error during a DB operation). In such case you can introduce an additional response type: + +

    +
          dp.defineAction("my_error",my_action)
    +

    + +Where my_action - a custom function, which will be called when the response of “my_error†type is received. +

    +
      <data>
    +       <action type="my_error" sid="id" tid="id">Details</action>
    +  </data>
    + 
    +  function my_action(node){
    +      alert(node.getAttribute("type"));    // my_error
    +      alert(node.firstChild.data);    // Details
    +      return false;
    +  }
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___customizing_color_marking.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___customizing_color_marking.html new file mode 100755 index 0000000000..0e3c16b72f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___customizing_color_marking.html @@ -0,0 +1,141 @@ + + + + dhtmlxdataprocessor:customizing_color_marking [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Customizing Color-marking

    +
    + +

    + +Default styles can be accessed and updated as: +

    +
      +
    • dp.style.updated - style string for updated status;
      +
    • +
    • dp.style.inserted- style string for inserted status;
      +
    • +
    • dp.style.deleted - style string for deleted status;
      +
    • +
    • dp.style.invalid - style string for invalid status;
      +
    • +
    • dp.style.invalid_cell - style assigned to cell validation of which failed;
      +
    • +
    • dp.style.error - style string for error status;
      +
    • +
    • dp.style.clear - default style of row.
      +
    • +
    + +

    +More complex coloring rules can be defined through onRowMark event. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___data_sending_modes.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___data_sending_modes.html new file mode 100755 index 0000000000..b7b248fc27 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___data_sending_modes.html @@ -0,0 +1,201 @@ + + + + dhtmlxdataprocessor:data_sending_modes [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Data Sending Modes

    +
    + +

    + +a) Meaningfull names.
    + +The parameters c0-cN, used by default, are not very useful on the server side. The dataprocessor allows to use the grid column IDs instead of them: + +

    +
          grid.setHeader("Name of the book,Name of the author")
    +      grid.setColumnIds("book,author");
    +      ...
    +      dp.enableDataNames(true);
    +

    + +on the server side:
    + +$_GET['c0'] ⇒ $_GET['book']
    + +$_GET['c1'] ⇒ $_GET['author'] +

    + +

    +b) Using POST instead of GET.
    + + +

    +
          dp.setTransactionMode("POST")
    +

    +c) Sending all at once.
    + +By default the update for each row will be sent as a separate request. This means that when 20 rows are updated - 20 requests will be sent to the server. This is not the best approach, so instead of it a single (more complex) request can be sent to the server side: + +

    +
          dp.setTransactionMode("POST",true)
    +

    + +In such mode the server side receives a slightly different set of parameters:
    + +ids - a comma separated list of updated rows IDs, for each ID there will be set of details in the request. +

    + +

    +For example if we have two updated rows on the client side with IDs = r2 and r3, the server side code will receive:
    + +ids = r2,r3 +

    +
      +
    • r2_!nativeeditor_status - the status of the operation for row r2;
      +
    • +
    • r2_c0 .. r2_cN - the data for a column of row r2;
      +
    • +
    • r3_!nativeeditor_status - the status of the operation for row r3;
      +
    • +
    • r3_c0 .. r3_cN - the data for a column of row r3.
      +
    • +
    + +

    + +The awaited server side response must be in the same format as usual, but must include the data for all processed rows: + +

    +
          <data>
    +           <action type="some" sid="r2" tid="r2" />
    +           <action type="some" sid="r3" tid="r3" />
    +       </data>
    +

    +Important! It's not recommended to set transaction mode if you use Connector. Connector requires using POST and sending all data at once. That corresponds to dp.setTransactionMode(“POSTâ€,true). This mode is set by default in this case. +

    + +

    +d) User can enable mode when only changed fields and row id send to the server side, instead of all fields in default mode + +

    +
          dp.enablePartialDataSend(true);
    +

    +e) Active fields.
    + +There is possibility to define which column may trigger update: + +

    +
          dp.setDataColumns([false,true,true,true]);
    +

    +In that case changing first column values will not trigger data sending to the server. Such mode have sense only if auto update is enabled. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___debug_mode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___debug_mode.html new file mode 100755 index 0000000000..e511c863c7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___debug_mode.html @@ -0,0 +1,125 @@ + + + + dhtmlxdataprocessor:debug_mode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Debug Mode

    +
    + +

    +Starting from version 2.0 package includes additional debug console, which can be enabled by including dhtmlxdataprocessor_debug.js in addition to default js files. +

    + +

    + + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdate.html new file mode 100755 index 0000000000..6204eacbda --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdate.html @@ -0,0 +1,138 @@ + + + + dhtmlxdataprocessor:event_onafterupdate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onAfterUpdate event

    +
    + +

    + +occurs for each action tag in xml response +

    +
          dp.attachEvent("onAfterUpdate",function(sid,action,tid,xml_node){
    +           //any custom code
    +           return true;
    +      })
    +

    +Parameters: +

    +
      +
    • sid - existing id of item;
      +
    • +
    • action - action type;
      +
    • +
    • tid - new id of item;
      +
    • +
    • xml node object from server side response, related to current record.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdatefinish.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdatefinish.html new file mode 100755 index 0000000000..671e265fb8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onafterupdatefinish.html @@ -0,0 +1,123 @@ + + + + dhtmlxdataprocessor:event_onafterupdatefinish [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onAfterUpdateFinish event

    +
    + +

    + +occurs when current data sync operation finished. +

    +
          dp.attachEvent("onAfterUpdateFinish",function(){
    +           //any custom code
    +      })
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforedatasending.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforedatasending.html new file mode 100755 index 0000000000..3527331741 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforedatasending.html @@ -0,0 +1,132 @@ + + + + dhtmlxdataprocessor:event_onbeforedatasending [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onBeforeDataSending event

    +
    + +

    + +occurs after data was validated and its ready to be sent, occurs once for all rows in sending group, blockable. +

    +
          dp.attachEvent("onBeforeDataSending",function(id){
    +           //any custom code
    +           return true;
    +      })
    +

    +Parameters: +

    +
      +
    • row id - defined only if one row was sent, not defined for multi-sending modes.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforeupdate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforeupdate.html new file mode 100755 index 0000000000..0c2054f08b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onbeforeupdate.html @@ -0,0 +1,135 @@ + + + + dhtmlxdataprocessor:event_onbeforeupdate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onBeforeUpdate event

    +
    + +

    + +occurs before data sending to the server, occurs for each row, blockable. +

    +
          dp.attachEvent("onBeforeUpdate",function(id,status){
    +           //any custom code
    +           return true;
    +      })
    +

    +Parameters: + +

    +
      +
    • row id;
      +
    • +
    • row status - {string} updated,inserted,deleted.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onfullsync.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onfullsync.html new file mode 100755 index 0000000000..0dbb67f9af --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onfullsync.html @@ -0,0 +1,123 @@ + + + + dhtmlxdataprocessor:event_onfullsync [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onFullSync event

    +
    + +

    + +occurs after saving all data ( there are no unsaved changes ). +

    +
          dp.attachEvent("onFullSync",function(){
    +           //any custom code
    +      })
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onrowmark.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onrowmark.html new file mode 100755 index 0000000000..0c0d4eaa8f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onrowmark.html @@ -0,0 +1,138 @@ + + + + dhtmlxdataprocessor:event_onrowmark [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onRowMark event

    +
    + +

    + +occurs each time when row need to be repaint, blockable. +

    +
          dp.attachEvent("onRowMark",function(id,state,mode,is_invalid){
    +           //any custom code
    +           return true;
    +      })
    +

    +Parameters: +

    +
      +
    • row id;
      +
    • +
    • row state - {bool} true - updated, false - update mark removed;
      +
    • +
    • mode - {string} updated,deleted,inserted;
      +
    • +
    • invalid - {bool} set if row has error or invalid status.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onvalidatationerror.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onvalidatationerror.html new file mode 100755 index 0000000000..df4b810ba5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___event_onvalidatationerror.html @@ -0,0 +1,134 @@ + + + + dhtmlxdataprocessor:event_onvalidatationerror [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onValidationError event

    +
    + +

    + +occurs each time when verificator function catches error, blockable. +

    +
          dp.attachEvent("onValidationError",function(id,errors){
    +           //any custom code
    +           return true;
    +      })
    +

    +Parameters: +

    +
      +
    • row id;
      +
    • +
    • array of error messages.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___events.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___events.html new file mode 100755 index 0000000000..fcc77070d7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___events.html @@ -0,0 +1,138 @@ + + + + dhtmlxdataprocessor:events [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Events of Dataprocessor

    +
    + +

    + +custom code can be attached in common way + +

    +
      dp.attachEvent(event_name, some_function);
      +
    • onRowMark - occurs each time when row need to be repaint, blockable.
      +
    • +
    • onValidatationError - occurs each time when verificator function catches error, blockable.
      +
    • +
    • onBeforeUpdate - occurs before data sending to the server, occurs for each row, blockable.
      +
    • +
    • onBeforeDataSending - occurs after data was validated and its ready to be sent, occurs once for all rows in sending group, blockable.
      +
    • +
    • onAfterUpdate - occurs for each action tag in xml response
      +
    • +
    • onAfterUpdateFinish - occurs when current data sync operation finished.
      +
    • +
    • onFullSync - occurs after saving all data ( there are no unsaved changes ).
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___validation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___validation.html new file mode 100755 index 0000000000..6a9ebf42ed --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxdataprocessor___validation.html @@ -0,0 +1,163 @@ + + + + dhtmlxdataprocessor:validation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Validation

    +
    + +

    + +Grid allows to define validators which will be activated before data sending.
    + +dp.setVerificator(index,method); +

    +
      +
    • index - index of column for which verificator will be assigned;
      +
    • +
    • method - verificator function.
      +
    • +
    + +

    + +Verificator function is a function which will receive the following parameters: +

    +
      +
    • value of cell;
      +
    • +
    • id of row;
      +
    • +
    • index of columns.
      +
    • +
    + +

    + +Function based on such values must return true or false to accept or deny value. +If any value was denied during validation, data sending will be blocked and onValidatationError event generated +

    + +

    +Inside verificator function, “this†points to the object, to which dataprocessor attached ( grid or tree ) +

    + +
    +
    +

    Validate message

    +
    + +

    + +If you need to collect all validation errors and output a single error message it can be done by returning a text message from validation function instead of false. +You can check 07_basic_validation_with_message.html sample, inside dataprocessor's package, for more details. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxgrid___dataprocessor.png b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/dhtmlxgrid___dataprocessor.png new file mode 100755 index 0000000000000000000000000000000000000000..81e3c29fa20ada9650750ae3bf4533c233d0088a GIT binary patch literal 9104 zcmeHti8qwd|Nmo;u_eh)G!!G0HG~Su8e#1FI<_d9kU^+yA^SEhmds#~tqFtdYYAgl zmXsw+b~Ap@^!fh2-}5`abAErpZ_b%>pYuHTx%d6t`+B|Kulv6Dxv`-R3llFB001ny zw{MvM097ye$DX1F@2Dm7Z2^EVpnFU6-lK`NJiUPFS}v{oW{NcaF~ag!Q2OW1cp{1& z*xK$~?U$3MPlA#jyeS%~jvc@*5hS<4|wWGa1^Z;

    ~dl{DK0ZWjX+5 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 Cs04KY literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___dataprocessor.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___dataprocessor.gif new file mode 100755 index 0000000000000000000000000000000000000000..35e6c60f9fff8d4540888d3c75633ce957674147 GIT binary patch literal 173 zcmZ?wbhEHb6k`x$*v!rF;>C-!w6v0vl7u5KR;^mqGh^x?3nK#qH-ipH3}glaOH{#0&((V^UZ35~%B@lL_=O<%s;mbhI{ACHb|>6t zn$6bq@IQxR1H%H}sHVdSJ9*L^SmsT#^x)`p<19M0C2tXvYogCSG1JB^zn)G!>9^8i TRWR4YH){QL=kL2PFjxZsgXu@f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___file.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/icons___file.gif new file mode 100755 index 0000000000000000000000000000000000000000..31d23fd4479bd8817a708a41ae03eccfacb90e9a GIT binary patch literal 622 zcmZ?wbhEHb6k`x$cox9WH-G+_yLbQp|9|w_wJT4bZasGF;ipeGU%a^b?Ah)!XLg)C zdH>CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/index.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/index.html new file mode 100755 index 0000000000..ddaa135d5a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxdataprocessor/index.html @@ -0,0 +1,181 @@ + + + + dhtmlxdataprocessor:toc [DHX documentation] + + + +

    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Dataprocessor usage

    +
    + +

    + +A dataprocessor is a small library which can integrate ghtmlxGrid (dhtmlxTreeGrid, dhtmlxTree) with server side backend. The library monitors changes in the grid and uses a simple protocol to interchange with the server side code. The dataprocessor consists of two parts - the client side code, which is common for any use-case and the server side code, which works by the same principles but needs to be adjusted for the used business-logic. +

    + +

    +(Starting dhtmlxSuite 2.1, there are ready to use PHP connectors , which can be used instead of custom coding) +

    + +
    +
    +

    Guide

    + +
    +

    Script API Reference

    + +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_media.txt b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_media.txt new file mode 100755 index 0000000000..c684808476 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_media.txt @@ -0,0 +1,12 @@ +icons___file.gif +icons___tree.gif +common___pro_ed.gif +common___any_ed.gif +dhtmlxtree___dgr5rjkf_220gbgmh9gf_b.gif +dhtmlxtree___dgr5rjkf_221cf28k8ff_b.gif +dhtmlxtree___dgr5rjkf_222gz6tpsdc_b.gif +dhtmlxtree___dgr5rjkf_223fnxr7chh_b.gif +dhtmlxtree___dgr5rjkf_224ggpqf8gx_b.gif +dhtmlxtree___dgr5rjkf_225fpw796gk_b.gif +dhtmlxtree___dgr5rjkf_226c3td7kc7_b.gif +dhtmlxtree___dgr5rjkf_227f8jk4hd8_b.gif diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_structure.xml b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_structure.xml new file mode 100755 index 0000000000..8b38b75f55 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/_structure.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/common___any_ed.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/common___any_ed.gif new file mode 100755 index 0000000000000000000000000000000000000000..ce8101728664c35094165df573763ff37910f41f GIT binary patch literal 143 zcmV;A0C4|DNk%w1VMzcG0Du4h0L%dY|NkNR1OyZS{{Soi0000<01yBG0%nAdsmtvT zqnxzbi?iOmuMl_;7+xfppeV4e9f`SVdB~m`o@GlLw$94wcCcXafeZSC%NdNPj3$*( xzZI0v^ak70ACBDe6-weXFBSXN|iHLW3p~W z#EvO7Qh{6>RQp{Xy^3cKyo_O+VRjl_v{uJe;a4aoqUmj!{|^`_I7nD1Q2+ot-R3;V literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor.html new file mode 100755 index 0000000000..9e2cc14f63 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor.html @@ -0,0 +1,165 @@ + + + + dhtmlxtree:api_constructor [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Constructor of dhtmlxTree

    +
    +
            var mytree = new dhtmlXTreeObject(parent,width, height, rootId )
    +

    +where +

    +
      +
    • parent - id of HTML element which will be used as parent ( or object itself
      +
    • +
    • width - width of tree
      +
    • +
    • height - height of tree
      +
    • +
    • virtual root ID
      +
    • +
    +
          <div id='my_tree_here'></div>
    +      <script>
    +      //common init code
    +      var mytree = new dhtmlXTreeObject("my_tree_here","100%","100%",0);
    +      </script>
    +

    +Layout, Window, Accordion, Tabbar can create a tree inside their cells by using + +

    +
          some_component.cells(some_id).attachTree(rootId)
    +

    + +In this case rootId has same meaning as in native initialization ( it is an optional, 0 used as default value ) +

    + +

    +Starting from 2.5 version, tree can be initialized by object notation + +

    +
          var mytree = new dhtmlXTreeObject({
    +          some_option1:some_value_1,
    +          some_option2:some_value_2,
    +          ...
    +          some_optionN:some_value_N,
    +      })
    +

    +List of supported options +

    +
    	tree = new dhtmlXTreeObject({
    +		parent:"a_tree",
    +		image_path:"codebase/imgs/csh_books/",
    +		onClick:function(){
    +			alert("I'm clicked");	
    +		},
    +		xml:"tree3.xml"
    +	});
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor_object.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor_object.html new file mode 100755 index 0000000000..d401990810 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_constructor_object.html @@ -0,0 +1,239 @@ + + + + dhtmlxtree:api_constructor_object [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    List of initialization properties

    +
    + +
    +
    +

    Common initialization options

    +
    +
      +
    • parent - string or object, id of container, where tree will be initialized, mandatory
      +
    • +
    • image_path - string, path to image folder, which will be used for icons in tree
      +
    • +
    • width - {string} width of tree, can be defined in pixels or in percents
      +
    • +
    • height - {string} height of tree, can be defined in pixels or in percents
      +
    • +
    • root_id - {string} id of virtual root item
      +
    • +
    +
      +
    • checkbox - {boolean}, show/hide checkboxes (all checkboxes in tree) ( enableCheckBoxes )
      +
    • +
    • checkbox_3_state - {boolean}, enable three state checkboxes ( enableThreeStateCheckboxes )
      +
    • +
    • context_menu - context menu object, enable context menu ( enableContextMenu )
      +
    • +
    • multiline - {boolean}, enable multi line items ( enableMultiLineItems )
      +
    • +
    • multiselect - {boolean}, enable multiselection ( enableMultiselection )
      +
    • +
    • editor - {boolean}, enable editing of item text ( enableItemEditor )
      +
    • +
    • hover - {boolean}, enable item highlighting (item text highlited on mouseover) ( enableHighlighting )
      +
    • +
    • smart_parsing - {boolean}, enable/disable smart XML parsing mode (usefull for big, well structured XML) ( enableSmartXMLParsing )
      +
    • +
    • xml - {string}, url of data xml file
      +
    • +
    + +
    +
    +

    Drag and Drop

    +
    +
      +
    • drag - {boolean}, enable/disable drag-and-drop ( enableDragAndDrop )
      +
    • +
    • drag_copy - {boolean}, enable drag without removing (copy instead of move) ( enableMercyDrag )
      +
    • +
    • drag_image - {boolean}, enable draging item image with item text ( enableImageDrag )
      +
    • +
    • drag_scroll - {boolean}, enable/disable auto scrolling while drag-and-drop ( enableDragAndDropScrolling )
      +
    • +
    + +
    +
    +

    Extensions

    +
    +
      +
    • auto_save_selected - {boolean}, enable/disable autosaving selected node in cookie ( enableAutoSavingSelected )
      +
    • +
    • auto_tooltip - {boolean}, enable auto tooltips (node text as tooltip) ( enableAutoTooltips )
      +
    • +
    • checkbox_smart - {boolean}, enable smart checkboxes ,true by default (auto checking children and parents for 3-state checkboxes) ( enableSmartCheckboxes )
      +
    • +
    • distributed_parsing - {boolean}, enable distributed parsing of big tree (items loaded portion by portion with some timeouts) ( enableDistributedParsing )
      +
    • +
    • images - {boolean}, enable tree images ( enableTreeImages )
      +
    • +
    • image_fix - {boolean}, replace IMG tag with background images - solve problem with IE image caching , not works for IE6 SP1 ( enableIEImageFix )
      +
    • +
    • lines - {boolean}, enable/disable tree lines (parent-child threads) ( enableTreeLines )
      +
    • +
    • loading_item - {boolean}, enable/disable “Loading…†item ( enableLoadingItem )
      +
    • +
    • navigation - {boolean}, enable keyboard navigation in tree ( enableKeyboardNavigation )
      +
    • +
    • radio - {boolean}, replace checkboxes with radio buttons ( enableRadioButtons )
      +
    • +
    • radio_single - {boolean}, replace checkboxes with radio buttons ( enableSingleRadioMode )
      +
    • +
    • rtl - {boolean}, enables Right-to-Left mode in tree ( enableRTL )
      +
    • +
    • search - {boolean}, enable search items by pressing keys (any item in tree should be focused/selected to make search work) ( enableKeySearch )
      +
    • +
    • smart_rendering - {boolean}, enables smart rendering mode (usefull for big trees with lots f items on each level) ( enableSmartRendering )
      +
    • +
    • text_icons - {boolean}, replace images with text signs ( enableTextSigns )
      +
    • +
    + +
    +
    +

    Events

    +
    + +

    +any event can be assigned by using property equal to event name +

    +
    	tree = new dhtmlXTreeObject({
    +		parent:"a_tree",
    +		onClick:function(){
    +			alert("I'm clicked");	
    +		}
    +	});
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_assignkeys.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_assignkeys.html new file mode 100755 index 0000000000..602fcdbff5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_assignkeys.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_assignkeys [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    assignKeys(keys)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_kn.js +

    + +

    +configure keys used for keyboard navigation + +

    +
      +
    • keys - configuration array, please check pro_key_nav.html in samples for more details
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_attachevent.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_attachevent.html new file mode 100755 index 0000000000..fa2113a670 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_attachevent.html @@ -0,0 +1,143 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_attachevent [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    attachEvent(evName, evHandler)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    + adds any user-defined handler to available events + +

    +
      +
    • evName - name of the event;
      +
    • +
    • evHandler - user-defined event handler.
      +
    • +
    +
                   tree.attachEvent(evName, evHandler);
    +

    + +Several handlers can be attached to one and the same event, and all of them will be executed. +

    + +

    + Note: the names of the events are case-insensitive. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_changeitemid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_changeitemid.html new file mode 100755 index 0000000000..65bf61e48f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_changeitemid.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_changeitemid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    changeItemId(itemId,newItemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +change item id + +

    +
      +
    • itemId - old node id
      +
    • +
    • newItemId - new node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearcut.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearcut.html new file mode 100755 index 0000000000..7b212db238 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearcut.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_clearcut [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    clearCut()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +clear cut +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearselection.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearselection.html new file mode 100755 index 0000000000..39210692aa --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_clearselection.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_clearselection [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    clearSelection(itemId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +unselect item in tree + +

    +
      +
    • itemId - used in multi selection tree (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeallitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeallitems.html new file mode 100755 index 0000000000..0d6de735ea --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeallitems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_closeallitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    closeAllItems(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +collapse target node and all sub nodes + +

    +
      +
    • itemId - node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeitem.html new file mode 100755 index 0000000000..90c0a42f44 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_closeitem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_closeitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    closeItem(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +collapse node + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_defineitemform.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_defineitemform.html new file mode 100755 index 0000000000..d8793c5e3c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_defineitemform.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_defineitemform [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    defineItemForm(formId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +assign custom form to tree + +

    +
      +
    • formId - id of form node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deletechilditems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deletechilditems.html new file mode 100755 index 0000000000..ec53eeaba7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deletechilditems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_deletechilditems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    deleteChildItems(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +delete all children of node + +

    +
      +
    • itemId - node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deleteitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deleteitem.html new file mode 100755 index 0000000000..c108cc93fa --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_deleteitem.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_deleteitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    deleteItem(itemId,selectParent)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +delete node + +

    +
      +
    • itemId - node id
      +
    • +
    • selectParent - If true parent of deleted item get selection, else no selected items leaving in tree.
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_destructor.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_destructor.html new file mode 100755 index 0000000000..0cfb14268f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_destructor.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_destructor [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    destructor()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +deletes tree and clears memory +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_detachevent.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_detachevent.html new file mode 100755 index 0000000000..ffc312ab73 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_detachevent.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_detachevent [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    detachEvent(id)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +removes an event handler + +

    +
      +
    • id - event id
      +
    • +
    +
                   tree.detachEvent(id);
    + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_disablecheckbox.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_disablecheckbox.html new file mode 100755 index 0000000000..a4e208081d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_disablecheckbox.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_disablecheckbox [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    disableCheckbox(itemId,mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +disable checkbox + +

    +
      +
    • itemId - Id of tree item
      +
    • +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_docut.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_docut.html new file mode 100755 index 0000000000..acd6f6d576 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_docut.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_docut [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    doCut()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +mark selected item as cut +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_dopaste.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_dopaste.html new file mode 100755 index 0000000000..4662e18f7a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_dopaste.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_dopaste [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    doPaste(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +insert previously cut branch + +

    +
      +
    • itemId - id of new parent node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_edititem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_edititem.html new file mode 100755 index 0000000000..2ce2f6d1ee --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_edititem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_edititem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    editItem(id)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_ed.js +

    + +

    +open editor for specified item + +

    +
      +
    • id - item ID
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableactiveimages.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableactiveimages.html new file mode 100755 index 0000000000..e5a9dab08b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableactiveimages.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableactiveimages [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableActiveImages(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable active images (clickable and dragable). By default only text part of the node is active + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautosavingselected.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautosavingselected.html new file mode 100755 index 0000000000..6b0364fa5d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautosavingselected.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableautosavingselected [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableAutoSavingSelected(mode,cookieName)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +enable/disable autosaving selected node in cookie + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautotooltips.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautotooltips.html new file mode 100755 index 0000000000..87c5b66b10 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableautotooltips.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableautotooltips [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableAutoTooltips(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable auto tooltips (node text as tooltip) + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecheckboxes.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecheckboxes.html new file mode 100755 index 0000000000..578ddf5300 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecheckboxes.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablecheckboxes [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableCheckBoxes(mode, hidden)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +show/hide checkboxes (all checkboxes in tree) + +

    +
      +
    • mode - true/false
      +
    • +
    • hidden - if set to true, checkboxes not rendered but can be shown by showItemCheckbox
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecontextmenu.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecontextmenu.html new file mode 100755 index 0000000000..b014a8dfc1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablecontextmenu.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablecontextmenu [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableContextMenu(menu)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable context menu + +

    +
      +
    • menu - dhtmlXMenu object
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledistributedparsing.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledistributedparsing.html new file mode 100755 index 0000000000..4eee35a522 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledistributedparsing.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabledistributedparsing [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableDistributedParsing(mode,count,delay)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable distributed parsing of big tree (items loaded portion by portion with some timeouts) + +

    +
      +
    • mode - true/false
      +
    • +
    • count - critical count to start distibuting (optional)
      +
    • +
    • delay - delay between distributed calls, ms (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddrop.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddrop.html new file mode 100755 index 0000000000..2e39240ee6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddrop.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabledraganddrop [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableDragAndDrop(mode,rmode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable/disable drag-and-drop + +

    +
      +
    • mode - enabled/disabled [ can be true/false/temporary_disabled - last value mean that tree can be D-n-D can be switched to true later ]
      +
    • +
    • rmode - enabled/disabled drag and drop on super root
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddropscrolling.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddropscrolling.html new file mode 100755 index 0000000000..501d4563c6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabledraganddropscrolling.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabledraganddropscrolling [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableDragAndDropScrolling(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable/disable auto scrolling while drag-and-drop + +

    +
      +
    • mode - enabled/disabled
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablehighlighting.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablehighlighting.html new file mode 100755 index 0000000000..88af6258f0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablehighlighting.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablehighlighting [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableHighlighting(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable item highlighting (item text highlited on mouseover) + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableieimagefix.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableieimagefix.html new file mode 100755 index 0000000000..707eab5b94 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableieimagefix.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableieimagefix [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableIEImageFix(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +replace IMG tag with background images - solve problem with IE image caching , not works for IE6 SP1 + +

    +
      +
    • mode - true/false - enable/disable fix
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableimagedrag.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableimagedrag.html new file mode 100755 index 0000000000..eb4e32e362 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableimagedrag.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableimagedrag [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableImageDrag(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable draging item image with item text + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableitemeditor.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableitemeditor.html new file mode 100755 index 0000000000..22d4fb3b40 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableitemeditor.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableitemeditor [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableItemEditor(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_ed.js +

    + +

    +enable editing of item text + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeyboardnavigation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeyboardnavigation.html new file mode 100755 index 0000000000..1088d7a0de --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeyboardnavigation.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablekeyboardnavigation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableKeyboardNavigation(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_kn.js +

    + +

    +enable keyboard navigation in tree + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeysearch.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeysearch.html new file mode 100755 index 0000000000..14699f5545 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablekeysearch.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablekeysearch [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableKeySearch(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_kn.js +

    + +

    +enable search items by pressing keys (any item in tree should be focused/selected to make search work) + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableloadingitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableloadingitem.html new file mode 100755 index 0000000000..bde94f63d8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableloadingitem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableloadingitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableLoadingItem(text)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_lf.js +

    + +

    +enable/disable “Loading…†item + +

    +
      +
    • text - text of temporary item (default is “Loading…â€)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemercydrag.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemercydrag.html new file mode 100755 index 0000000000..0ab650bc98 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemercydrag.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablemercydrag [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableMercyDrag(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable drag without removing (copy instead of move) + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultilineitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultilineitems.html new file mode 100755 index 0000000000..f94152ea31 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultilineitems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablemultilineitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableMultiLineItems(width)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable multi line items + +

    +
      +
    • width - text width, if equls zero then use single lines items;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultiselection.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultiselection.html new file mode 100755 index 0000000000..bdae9e26e6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablemultiselection.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablemultiselection [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableMultiselection(mode,strict)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable multiselection + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    • strict - 1 - on, 0 - off; in strict mode only items on the same level can be selected
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableradiobuttons.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableradiobuttons.html new file mode 100755 index 0000000000..58a356c017 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enableradiobuttons.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enableradiobuttons [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableRadioButtons(itemId,mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +replace checkboxes with radio buttons + +

    +
      +
    • mode - true/false
      +
    • +
    • itemId - node for which replacement called (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablertl.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablertl.html new file mode 100755 index 0000000000..769fb62864 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablertl.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablertl [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableRTL(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_rl.js +

    + +

    +enables Right-to-Left mode in tree + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesingleradiomode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesingleradiomode.html new file mode 100755 index 0000000000..a6687c3c82 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesingleradiomode.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablesingleradiomode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableSingleRadioMode(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +replace checkboxes with radio buttons + +

    +
      +
    • mode - true/false
      +
    • +
    • itemId - node for which replacement called (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartcheckboxes.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartcheckboxes.html new file mode 100755 index 0000000000..d06b460a4d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartcheckboxes.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablesmartcheckboxes [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableSmartCheckboxes(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable smart checkboxes ,true by default (auto checking children and parents for 3-state checkboxes) + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartrendering.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartrendering.html new file mode 100755 index 0000000000..d742f8fa63 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartrendering.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablesmartrendering [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableSmartRendering()

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_srnd.js +

    + +

    +enables smart rendering mode (usefull for big trees with lots f items on each level) +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartxmlparsing.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartxmlparsing.html new file mode 100755 index 0000000000..3388dc5d56 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablesmartxmlparsing.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablesmartxmlparsing [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableSmartXMLParsing(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable/disable smart XML parsing mode (usefull for big, well structured XML) + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletextsigns.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletextsigns.html new file mode 100755 index 0000000000..846a9b80b5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletextsigns.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabletextsigns [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableTextSigns(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +replace images with text signs + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablethreestatecheckboxes.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablethreestatecheckboxes.html new file mode 100755 index 0000000000..5959ba5b0e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enablethreestatecheckboxes.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enablethreestatecheckboxes [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableThreeStateCheckboxes(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable three state checkboxes + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreeimages.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreeimages.html new file mode 100755 index 0000000000..2eddb872ca --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreeimages.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabletreeimages [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableTreeImages(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable tree images + +

    +
      +
    • mode - 1 - on, 0 - off;
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreelines.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreelines.html new file mode 100755 index 0000000000..1169f2808e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_enabletreelines.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_enabletreelines [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    enableTreeLines(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enable/disable tree lines (parent-child threads) + +

    +
      +
    • mode - enable/disable tree lines
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditem.html new file mode 100755 index 0000000000..2068b012bb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditem.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_finditem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    findItem(searchStr,direction,top)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +find tree item by text, select and focus it + +

    +
      +
    • searchStr - search text
      +
    • +
    • direction - 0: top → bottom; 1: bottom → top
      +
    • +
    • top - 1: start searching from top
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditemidbylabel.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditemidbylabel.html new file mode 100755 index 0000000000..f344bc7ac3 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_finditemidbylabel.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_finditemidbylabel [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    findItemIdByLabel(searchStr,direction,top)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +find tree item by text + +

    +
      +
    • searchStr - search text
      +
    • +
    • direction - 0: top → bottom; 1: bottom → top
      +
    • +
    • top - 1: start searching from top
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_focusitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_focusitem.html new file mode 100755 index 0000000000..2fb50430d9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_focusitem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_focusitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    focusItem(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +focus item in tree (scroll to it if necessary) + +

    +
      +
    • itemId - item Id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchecked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchecked.html new file mode 100755 index 0000000000..e9cc0748d4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchecked.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallchecked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllChecked()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return list of identificators of nodes with checked checkboxes, separated by default delimiter +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallcheckedbranches.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallcheckedbranches.html new file mode 100755 index 0000000000..f0bf038b86 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallcheckedbranches.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallcheckedbranches [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllCheckedBranches()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return list of identificators of nodes with checked and third state checkboxes, separated by default delimiter +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchildless.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchildless.html new file mode 100755 index 0000000000..1d766879bd --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallchildless.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallchildless [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllChildless()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +Returns the list of all items which doesn't have child nodes. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallitemswithkids.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallitemswithkids.html new file mode 100755 index 0000000000..4f06bc6d8c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallitemswithkids.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallitemswithkids [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllItemsWithKids()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +Returns the list of all items which have child nodes, separated by default delimiter. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallpartiallychecked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallpartiallychecked.html new file mode 100755 index 0000000000..a391b933b4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallpartiallychecked.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallpartiallychecked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllPartiallyChecked()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return list of identificators of nodes with third state checkboxes, separated by default delimiter +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallsubitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallsubitems.html new file mode 100755 index 0000000000..4ed104f392 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallsubitems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallsubitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllSubItems(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +Returns the list of all children from all next levels of tree, separated by default delimiter. + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallunchecked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallunchecked.html new file mode 100755 index 0000000000..be43c47e33 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getallunchecked.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getallunchecked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getAllUnchecked(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return list of identificators of nodes with unchecked checkboxes, separated by default delimiter +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getchilditemidbyindex.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getchilditemidbyindex.html new file mode 100755 index 0000000000..5f65316c31 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getchilditemidbyindex.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getchilditemidbyindex [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getChildItemIdByIndex(itemId,index)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +retun child node id by index + +

    +
      +
    • itemId - parent node id
      +
    • +
    • index - index of child node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getdistributedparsingstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getdistributedparsingstate.html new file mode 100755 index 0000000000..c6c9a2d655 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getdistributedparsingstate.html @@ -0,0 +1,131 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getdistributedparsingstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getDistributedParsingState()

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get current state of distributed parsing +

    + +

    + +Returns true - still parsing; false - parsing finished +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getindexbyid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getindexbyid.html new file mode 100755 index 0000000000..1dbd96a6df --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getindexbyid.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getindexbyid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getIndexById(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +retun node index in children collection by Id + +

    +
      +
    • itemId - node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemcolor.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemcolor.html new file mode 100755 index 0000000000..c71721d82e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemcolor.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemcolor [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemColor(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get node color (text color) + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemidbyindex.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemidbyindex.html new file mode 100755 index 0000000000..6e776cd9ce --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemidbyindex.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemidbyindex [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemIdByIndex(itemId,index)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +retun node id by index + +

    +
      +
    • itemId - parent node id
      +
    • +
    • index - index of node, 0 based
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemimage.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemimage.html new file mode 100755 index 0000000000..c955c4edf4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemimage.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemimage [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemImage(itemId,imageInd,fullPath)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get url of item image + +

    +
      +
    • itemId - id of item
      +
    • +
    • imageInd - index of image ( 0 - leaf, 1 - closed folder, 2 - opened folder)
      +
    • +
    • value - value of top offset
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemparsingstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemparsingstate.html new file mode 100755 index 0000000000..a836c55a98 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemparsingstate.html @@ -0,0 +1,131 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemparsingstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemParsingState(itemId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get current parsing state of item +

    + +

    + +Returns 1 - item already parsed; 0 - item not parsed yet; -1 - item in parsing process +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtext.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtext.html new file mode 100755 index 0000000000..18792f2290 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtext.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemtext [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemText(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return node text + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtooltip.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtooltip.html new file mode 100755 index 0000000000..a209e83c84 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getitemtooltip.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getitemtooltip [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getItemTooltip(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get item's tooltip + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getlevel.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getlevel.html new file mode 100755 index 0000000000..7b4ba72296 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getlevel.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getlevel [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getLevel(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get node level (position in hierarchy) + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getopenstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getopenstate.html new file mode 100755 index 0000000000..bd3bbe8184 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getopenstate.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getopenstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getOpenState(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return open/close state + +

    +
      +
    • itemId - node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getparentid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getparentid.html new file mode 100755 index 0000000000..2226aa3075 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getparentid.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getparentid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getParentId(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return parent item id + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemid.html new file mode 100755 index 0000000000..395b3ee729 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemid.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getselecteditemid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getSelectedItemId()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +retun selected item id +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemtext.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemtext.html new file mode 100755 index 0000000000..8581491b6b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getselecteditemtext.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getselecteditemtext [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getSelectedItemText()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +retun selected node text +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getsubitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getsubitems.html new file mode 100755 index 0000000000..295b84e27e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getsubitems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getsubitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getSubItems(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +Returns the list of all subitems Ids from the next level of tree, separated by commas. + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getuserdata.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getuserdata.html new file mode 100755 index 0000000000..f67d53d39e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getuserdata.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getuserdata [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getUserData(itemId,name)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get user data from target node + +

    +
      +
    • itemId - target node id
      +
    • +
    • name - key for user data
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getxmlstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getxmlstate.html new file mode 100755 index 0000000000..6b9fca466f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_getxmlstate.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_getxmlstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    getXMLState()

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return current state of XML loading +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_haschildren.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_haschildren.html new file mode 100755 index 0000000000..8464c2142e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_haschildren.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_haschildren [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    hasChildren(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +return number of children + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_hideitemform.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_hideitemform.html new file mode 100755 index 0000000000..ad3a57e191 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_hideitemform.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_hideitemform [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    hideItemForm(itemID,state)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +hide item's form + +

    +
      +
    • itemID - item id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewchild.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewchild.html new file mode 100755 index 0000000000..aa45ca834b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewchild.html @@ -0,0 +1,149 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_insertnewchild [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    insertNewChild(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +create new node as a child to specified with parentId + +

    +
      +
    • parentId - parent node id
      +
    • +
    • itemId - new node id
      +
    • +
    • itemText - new node label
      +
    • +
    • itemActionHandler - function fired on node select event (optional)
      +
    • +
    • image1 - image for node without children; (optional)
      +
    • +
    • image2 - image for closed node; (optional)
      +
    • +
    • image3 - image for opened node (optional)
      +
    • +
    • optionStr - options string (optional)
      +
    • +
    • children - node children flag (for dynamical trees) (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewnext.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewnext.html new file mode 100755 index 0000000000..7071612042 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_insertnewnext.html @@ -0,0 +1,149 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_insertnewnext [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    insertNewNext(itemId,newItemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +create new node next to specified + +

    +
      +
    • itemId - node id
      +
    • +
    • newItemId - new node id
      +
    • +
    • itemText - new node text
      +
    • +
    • itemActionHandler - function fired on node select event (optional)
      +
    • +
    • image1 - image for node without children; (optional)
      +
    • +
    • image2 - image for closed node; (optional)
      +
    • +
    • image3 - image for opened node (optional)
      +
    • +
    • optionStr - options string (optional)
      +
    • +
    • children - node children flag (for dynamical trees) (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_isitemchecked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_isitemchecked.html new file mode 100755 index 0000000000..b09ee5454a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_isitemchecked.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_isitemchecked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    isItemChecked(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +get state of nodes's checkbox + +

    +
      +
    • itemId - target node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_islocked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_islocked.html new file mode 100755 index 0000000000..58ddef4dd9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_islocked.html @@ -0,0 +1,136 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_islocked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    isLocked(itemId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_li.js +

    + +

    +get locked state of item + +

    +
      +
    • itemId - id of item
      +
    • +
    + +

    + +Returns true/false - locked/unlocked +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsv.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsv.html new file mode 100755 index 0000000000..aad5ec97b4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsv.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadcsv [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadCSV(file,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from csv file|stream + +

    +
      +
    • file - link to CSV file
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsvstring.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsvstring.html new file mode 100755 index 0000000000..f492623689 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadcsvstring.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadcsvstring [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadCSVString(csv,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from csv string + +

    +
      +
    • csv - csv string
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarray.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarray.html new file mode 100755 index 0000000000..aac85c95e0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarray.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadjsarray [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadJSArray(ar,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from js array object + +

    +
      +
    • ar - js array
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarrayfile.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarrayfile.html new file mode 100755 index 0000000000..a8599209b1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsarrayfile.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadjsarrayfile [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadJSArrayFile(file,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from js array file|stream + +

    +
      +
    • file - link to JSArray file
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjson.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjson.html new file mode 100755 index 0000000000..5a0289625a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjson.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadjson [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadJSON(file,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from json file + +

    +
      +
    • file - link to JSON file
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsonobject.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsonobject.html new file mode 100755 index 0000000000..20c196f4fd --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadjsonobject.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadjsonobject [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadJSONObject(json,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +load tree from json object + +

    +
      +
    • json - json object
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadopenstates.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadopenstates.html new file mode 100755 index 0000000000..063ef26500 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadopenstates.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadopenstates [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadOpenStates(name)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +restore open nodes from cookie + +

    +
      +
    • name - optional,cookie name
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadstate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadstate.html new file mode 100755 index 0000000000..dbe9dea088 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadstate.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadstate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadState(name)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +load tree from cookie + +

    +
      +
    • name - optional,cookie name
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxml.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxml.html new file mode 100755 index 0000000000..1a9b872f81 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxml.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadxml [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadXML(file,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +load tree from xml file + +

    +
      +
    • file - link to XML file
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxmlstring.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxmlstring.html new file mode 100755 index 0000000000..17a1a568db --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_loadxmlstring.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_loadxmlstring [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    loadXMLString(xmlString,afterCall)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +load tree from xml string + +

    +
      +
    • xmlString - XML string
      +
    • +
    • afterCall - function which will be called after xml loading
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_lockitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_lockitem.html new file mode 100755 index 0000000000..597e125d38 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_lockitem.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_lockitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    lockItem(itemId,state)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_li.js +

    + +

    +lock/unlock item + +

    +
      +
    • itemId - id of item
      +
    • +
    • state - true/false - lock/unlock item
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_locktree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_locktree.html new file mode 100755 index 0000000000..11be936326 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_locktree.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_locktree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    lockTree(isLock)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_li.js +

    + +

    +lock tree + +

    +
      +
    • isLock - bool value. True - lock, false - unlock
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makealldraggable.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makealldraggable.html new file mode 100755 index 0000000000..270e50bbbe --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makealldraggable.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_makealldraggable [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    makeAllDraggable(func)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_dragin.js +

    + +

    +adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to all HTML items with dragInDhtmlXTree attribute + +

    +
      +
    • func - custom drag processor function, optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makedraggable.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makedraggable.html new file mode 100755 index 0000000000..92317ba01c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_makedraggable.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_makedraggable [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    makeDraggable(obj,func)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_dragin.js +

    + +

    +adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to HTML object. + +

    +
      +
    • obj - HTML object, or HTML object ID
      +
    • +
    • func - custom drag processor function, optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_moveitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_moveitem.html new file mode 100755 index 0000000000..5b5ecd2ecf --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_moveitem.html @@ -0,0 +1,139 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_moveitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    moveItem(itemId,mode,targetId,targetTree)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +move item (inside of tree) + +

    +
      +
    • itemId - item Id
      +
    • +
    • mode - moving mode (left,up,down,item_child,item_sibling,item_sibling_next,up_strict,down_strict)
      +
    • +
    • targetId - target Node in item_child and item_sibling mode
      +
    • +
    • targetTree - used for moving between trees (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitems.html new file mode 100755 index 0000000000..518f61e371 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitems.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_openallitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    openAllItems(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +expand target node and all sub nodes + +

    +
      +
    • itemId - node id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitemsdynamic.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitemsdynamic.html new file mode 100755 index 0000000000..e2a1c18cae --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openallitemsdynamic.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_openallitemsdynamic [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    openAllItemsDynamic(itemId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +expand target node and all child nodes (same as openAllItems, but works in dynamic trees) + +

    +
      +
    • itemId - node id, optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitem.html new file mode 100755 index 0000000000..d7acc11645 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_openitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    openItem(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +expand node + +

    +
      +
    • itemId - id of node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitemsdynamic.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitemsdynamic.html new file mode 100755 index 0000000000..07e161f6b4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openitemsdynamic.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_openitemsdynamic [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    openItemsDynamic(list,flag)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +expand list of nodes in dynamic tree (wait of loading of node before expanding next) + +

    +
      +
    • list - list of nodes which will be expanded
      +
    • +
    • flag - true/false - select last node in the list
      +
    • +
    +
           tree.openItemsDynamic("id_0,id_0_2,id_0_2_3,id_2,id_2_1",true);
    +

    +The method calls onOpenDynamicEnd event +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openonitemadded.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openonitemadded.html new file mode 100755 index 0000000000..bed08f2b73 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_openonitemadded.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_openonitemadded [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    openOnItemAdded(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +configure if parent node will be expanded immideatly after child item added + +

    +
      +
    • mode - true/false
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_preventiecaching.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_preventiecaching.html new file mode 100755 index 0000000000..663326e655 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_preventiecaching.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_preventiecaching [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    preventIECaching(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +prevent caching in IE by adding random value to URL string + +

    +
      +
    • mode - enable/disable random value ( disabled by default )
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitem.html new file mode 100755 index 0000000000..d99469d31d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_refreshitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    refreshItem(itemId)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +refresh tree branch from xml (XML with child nodes rerequested from server) + +

    +
      +
    • itemId - id of node, if not defined tree super root used.
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitems.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitems.html new file mode 100755 index 0000000000..ff3a1e0b5d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_refreshitems.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_refreshitems [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    refreshItems(itemIdList,source)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +refresh specified tree nodes (get XML from server and updat only nodes included in itemIdList) + +

    +
      +
    • itemIdList - list of node identificators
      +
    • +
    • source - server side script
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_registerxmlentity.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_registerxmlentity.html new file mode 100755 index 0000000000..5228107ae9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_registerxmlentity.html @@ -0,0 +1,140 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_registerxmlentity [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    registerXMLEntity(rChar,rEntity)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +register XML entity for replacement while initialization (default are: ampersand, lessthen and greaterthen symbols) + +

    +
      +
    • rChar - source char
      +
    • +
    • rEntity - target entity
      +
    • +
    + + + +

    +This method should be used with the setSerializationLevel method to enable replacement (true as the 3rd parameter). + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_restoreselecteditem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_restoreselecteditem.html new file mode 100755 index 0000000000..921c267080 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_restoreselecteditem.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_restoreselecteditem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    restoreSelectedItem(name)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +restore selected item from cookie + +

    +
      +
    • name - optional, cookie name
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveopenstates.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveopenstates.html new file mode 100755 index 0000000000..f11e96443f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveopenstates.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_saveopenstates [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    saveOpenStates(name,cookie_param)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +save open nodes to cookie + +

    +
      +
    • name - optional,cookie name
      +
    • +
    • cookie_param - additional parametrs added to cookie
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveselecteditem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveselecteditem.html new file mode 100755 index 0000000000..9173f5d107 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_saveselecteditem.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_saveselecteditem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    saveSelectedItem(name,cookie_param)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +save selected item to cookie + +

    +
      +
    • name - optional, cookie name
      +
    • +
    • cookie_param - additional parametrs added to cookie
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_savestate.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_savestate.html new file mode 100755 index 0000000000..6fc2ac5694 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_savestate.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_savestate [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    saveState(name,cookie_param)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +save tree to cookie + +

    +
      +
    • name - optional, cookie name
      +
    • +
    • cookie_param - additional parametrs added to cookie
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_selectitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_selectitem.html new file mode 100755 index 0000000000..ecf66f2a41 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_selectitem.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_selectitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    selectItem(itemId,mode,preserve)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +select node ( and optionaly fire onClick event) + +

    +
      +
    • itemId - node id
      +
    • +
    • mode - If true, script function for selected node will be called. ( onClick event )
      +
    • +
    • preserve - preserve earlier selected nodes
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetree.html new file mode 100755 index 0000000000..654184225c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetree.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_serializetree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    serializeTree()

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +get xml representation (as string) of tree +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetreetojson.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetreetojson.html new file mode 100755 index 0000000000..4b32e685fd --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_serializetreetojson.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_serializetreetojson [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    serializeTreeToJSON()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_json.js +

    + +

    +return tree as json string +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcheck.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcheck.html new file mode 100755 index 0000000000..951b3fd590 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcheck.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setcheck [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setCheck(itemId,state)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set state of node's checkbox + +

    +
      +
    • itemId - target node id
      +
    • +
    • state - checkbox state (0/1/“unsureâ€)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalchtml.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalchtml.html new file mode 100755 index 0000000000..46eabe7608 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalchtml.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setchildcalchtml [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setChildCalcHTML( htmlA,htmlB )

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set children calculation prefix and postfix + +

    +
      +
    • htmlA - postfix ([ - by default)
      +
    • +
    • htmlB - postfix (] - by default)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalcmode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalcmode.html new file mode 100755 index 0000000000..a304727ded --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setchildcalcmode.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setchildcalcmode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setChildCalcMode( mode )

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set children calculation mode + +

    +
      +
    • mode - mode name as string . Possible values: child - children, no recursive; leafs - children without subchildren, no recursive; ,childrec - children, recursive; leafsrec - children without subchildren, recursive; disabled (disabled by default)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcustomsortfunction.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcustomsortfunction.html new file mode 100755 index 0000000000..6d79e244de --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setcustomsortfunction.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setcustomsortfunction [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setCustomSortFunction(func)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_sb.js +

    + +

    +set custom sort functions, which has two parametrs - id_of_item1,id_of_item2 + +

    +
      +
    • func - sorting function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdatamode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdatamode.html new file mode 100755 index 0000000000..8cb544bce8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdatamode.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setdatamode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setDataMode(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set default data transfer mode + +

    +
      +
    • mode - data mode (json,xml,csv)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdragbehavior.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdragbehavior.html new file mode 100755 index 0000000000..43a5e88b92 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setdragbehavior.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setdragbehavior [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setDragBehavior(mode,select)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set Drag-And-Drop behavior (child - drop as chils, sibling - drop as sibling, complex - complex drop behaviour ) + +

    +
      +
    • mode - behavior name (child,sibling,complex)
      +
    • +
    • select - select droped node after drag-n-drop, true by default
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seteditstartaction.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seteditstartaction.html new file mode 100755 index 0000000000..532746070b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seteditstartaction.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_seteditstartaction [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setEditStartAction(click_IE, dblclick)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_ed.js +

    + +

    +define which events must start editing + +

    +
      +
    • click_IE - click on already selected item - true/false [true by default]
      +
    • +
    • dblclick - on double click
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setescapingmode.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setescapingmode.html new file mode 100755 index 0000000000..c0af67a017 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setescapingmode.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setescapingmode [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setEscapingMode(mode)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set escaping mode (used for escaping ID in requests) + +

    +
      +
    • mode - escaping mode (“utf8†for UTF escaping)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformappearon.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformappearon.html new file mode 100755 index 0000000000..95ee433b41 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformappearon.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setformappearon [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setFormAppearOn(onClick,onDblClick,onMouseOver)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +define events for form appearing + +

    +
      +
    • onClick - form appears on click event
      +
    • +
    • onDblClick - form appears on double click event
      +
    • +
    • onMouseOver - form appears on mouseover event
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformdisappearon.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformdisappearon.html new file mode 100755 index 0000000000..6282ef06f1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setformdisappearon.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setformdisappearon [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setFormDisappearOn(onClick,onDblClick,onMouseOver)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +define events for form disappearing + +

    +
      +
    • onClick - form disappears on click event
      +
    • +
    • onDblClick - form disappears on double click event
      +
    • +
    • onMouseOver - form disappears on mouseover event
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonpath.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonpath.html new file mode 100755 index 0000000000..36a658c3f2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonpath.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_seticonpath [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setIconPath(path)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set path to external images used as tree icons + +

    +
      +
    • path - url (or relative path) of images folder with closing â€/â€
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonsize.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonsize.html new file mode 100755 index 0000000000..74f61791e8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_seticonsize.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_seticonsize [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setIconSize(newWidth,newHeight,itemId)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set size of icons + +

    +
      +
    • newWidth - new icon width
      +
    • +
    • newHeight - new icon height
      +
    • +
    • itemId - item Id, if skipped set default value for all new icons, optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagearrays.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagearrays.html new file mode 100755 index 0000000000..feb9c65571 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagearrays.html @@ -0,0 +1,143 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setimagearrays [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setImageArrays(arrayName,image1,image2,image3,image4,image5)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set images used for parent-child threads drawing (lines, plus, minus) + +

    +
      +
    • arrayName - name of array: plus, minus
      +
    • +
    • image1 - line crossed image
      +
    • +
    • image2 - image with top line
      +
    • +
    • image3 - image with bottom line
      +
    • +
    • image4 - image without line
      +
    • +
    • image5 - single root image
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagepath.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagepath.html new file mode 100755 index 0000000000..6a522caaec --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setimagepath.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setimagepath [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setImagePath( newPath )

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set path to images directory + +

    +
      +
    • newPath - path to images directory (related to the page with tree or absolute http url)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcloseable.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcloseable.html new file mode 100755 index 0000000000..60d56e475f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcloseable.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemcloseable [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemCloseable(itemId,flag)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +prevent node from closing + +

    +
      +
    • itemId - id of node
      +
    • +
    • flag - if 0 - node can't be closed, else node can be closed
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcolor.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcolor.html new file mode 100755 index 0000000000..2504c406fe --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcolor.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemcolor [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemColor(itemId,defaultColor,selectedColor)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set node text color + +

    +
      +
    • itemId - id of node
      +
    • +
    • defaultColor - node color
      +
    • +
    • selectedColor - selected node color
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcontextmenu.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcontextmenu.html new file mode 100755 index 0000000000..010e73f51a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemcontextmenu.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemcontextmenu [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemContextMenu(itemId,cMenu)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set context menu to individual nodes + +

    +
      +
    • itemId - node id
      +
    • +
    • cMenu - context menu object
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage.html new file mode 100755 index 0000000000..374f5b0571 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemimage [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemImage(itemId,image1,image2)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set item icons (mostly usefull for childless nodes) + +

    +
      +
    • itemId - id of node
      +
    • +
    • image1 - node without children icon or closed node icon (if image2 specified)
      +
    • +
    • image2 - open node icon (optional)
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage2.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage2.html new file mode 100755 index 0000000000..a71842c666 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemimage2.html @@ -0,0 +1,139 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemimage2 [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemImage2(itemId, image1,image2,image3)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set item images + +

    +
      +
    • itemId - id of node
      +
    • +
    • image1 - node without children icon
      +
    • +
    • image2 - open node icon
      +
    • +
    • image3 - closed node icon
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemstyle.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemstyle.html new file mode 100755 index 0000000000..4a54891316 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemstyle.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemstyle [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemStyle(itemId,style_string)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set individual item style + +

    +
      +
    • itemId - node id
      +
    • +
    • style_string - valid CSS string
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtext.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtext.html new file mode 100755 index 0000000000..02a680c6e6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtext.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemtext [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemText(itemId,newLabel,newTooltip)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set new node text (HTML allowed) + +

    +
      +
    • itemId - id of node
      +
    • +
    • newLabel - node text
      +
    • +
    • newTooltip - (optional)tooltip for the node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtopoffset.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtopoffset.html new file mode 100755 index 0000000000..e4eb106d44 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setitemtopoffset.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setitemtopoffset [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setItemTopOffset(itemId,value)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set top offset for item + +

    +
      +
    • itemId - id of item
      +
    • +
    • value - value of top offset in px
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlistdelimeter.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlistdelimeter.html new file mode 100755 index 0000000000..a8fb70b50d --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlistdelimeter.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setlistdelimeter [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setListDelimeter(separator)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set list separator (â€,†by default) + +

    +
      +
    • separator - char or string to use for separating items in lists
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlockedicons.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlockedicons.html new file mode 100755 index 0000000000..01fe34f049 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setlockedicons.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setlockedicons [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setLockedIcons(im0,im1,im2)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_li.js +

    + +

    +set icon for locked items + +

    +
      +
    • im0 - icon for locked leaf
      +
    • +
    • im1 - icon for closed branch
      +
    • +
    • im2 - icon for opened branch
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setondblclickhandler.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setondblclickhandler.html new file mode 100755 index 0000000000..99c6de116b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setondblclickhandler.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setondblclickhandler [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setOnDblClickHandler(func)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set function called when tree node double clicked + +

    +
      +
    • func - event handling function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonformdismissal.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonformdismissal.html new file mode 100755 index 0000000000..e3bbdcf814 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonformdismissal.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setonformdismissal [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setOnFormDismissal(func)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +allow to set user routine which will be called right before form disappears + +

    +
      +
    • func - user defined function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonforminitialisation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonforminitialisation.html new file mode 100755 index 0000000000..6e31b49e4b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setonforminitialisation.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setonforminitialisation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setOnFormInitialisation(func)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +allow setting user routine which will be called immideatly before form appears + +

    +
      +
    • func - user defined function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setserializationlevel.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setserializationlevel.html new file mode 100755 index 0000000000..7e630a1b51 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setserializationlevel.html @@ -0,0 +1,141 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setserializationlevel [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setSerializationLevel(userData,fullXML,escapeEntities,userDataAsCData,DTD)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_xw.js +

    + +

    +configure XML serialization + +

    +
      +
    • userData - enable/disable user data serialization
      +
    • +
    • fullXML - enable/disable full XML serialization
      +
    • +
    • escapeEntities - convert tag brackets to related html entitites
      +
    • +
    • userDataAsCData - output user data in CDATA sections
      +
    • +
    • DTD - if specified, then set as XML's DTD
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setstdimages.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setstdimages.html new file mode 100755 index 0000000000..89e4e22702 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setstdimages.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setstdimages [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setStdImages(image1,image2,image3)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set default images for nodes (must be called before XML loading) + +

    +
      +
    • a0 - image for node without children;
      +
    • +
    • a1 - image for closed node;
      +
    • +
    • a2 - image for opened node
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setsubchecked.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setsubchecked.html new file mode 100755 index 0000000000..fc783a50af --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setsubchecked.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setsubchecked [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setSubChecked(itemId,state)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +change state of node's checkbox and all children checkboxes + +

    +
      +
    • itemId - target node id
      +
    • +
    • state - checkbox state
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setuserdata.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setuserdata.html new file mode 100755 index 0000000000..2e68ca00f7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setuserdata.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setuserdata [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setUserData(itemId,name,value)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +set user data for target node + +

    +
      +
    • itemId - target node id
      +
    • +
    • name - key for user data
      +
    • +
    • value - user data value
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloading.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloading.html new file mode 100755 index 0000000000..2b368266ec --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloading.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setxmlautoloading [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setXMLAutoLoading(filePath)

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +enables dynamic loading from XML + +

    +
      +
    • filePath - name of script returning XML; in case of virtual loading - user defined function
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloadingbehaviour.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloadingbehaviour.html new file mode 100755 index 0000000000..10583501b0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_setxmlautoloadingbehaviour.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_setxmlautoloadingbehaviour [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    setXMLAutoLoadingBehaviour(mode)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +define which script be called on dynamic loading + +

    +
      +
    • mode - id for some_script?id=item_id ; name for some_scriptitem_id, xmlname for some_scriptitem_id.xml ; function for calling user defined handler
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemcheckbox.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemcheckbox.html new file mode 100755 index 0000000000..ab3035e1b7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemcheckbox.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_showitemcheckbox [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    showItemCheckbox(itemId,state)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +show/hide checkbox for tree item (works only for individual items, not for entire tree ) + +

    +
      +
    • itemId - id of selected item, optional, set null to change states of all items
      +
    • +
    • state - checkbox show state : 0/1
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemform.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemform.html new file mode 100755 index 0000000000..59ce8b69d5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemform.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_showitemform [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    showItemForm(itemID,state)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_if.js +

    + +

    +show item's form + +

    +
      +
    • itemID - item id
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemsign.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemsign.html new file mode 100755 index 0000000000..555a1aa2bb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_showitemsign.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_showitemsign [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    showItemSign(itemId,state)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +show/hide (+/-) icon (works only for individual items, not for entire tree ) + +

    +
      +
    • itemId - id of selected item
      +
    • +
    • state - show state : 0/1
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshbranch.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshbranch.html new file mode 100755 index 0000000000..c71b274840 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshbranch.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_smartrefreshbranch [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    smartRefreshBranch(itemId,source)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +refresh specified tree branch (get XML from server, add new nodes, remove not used nodes) + +

    +
      +
    • itemId - top node in branch
      +
    • +
    • source - server side script , optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshitem.html new file mode 100755 index 0000000000..c4cd9de1e9 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_smartrefreshitem.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_smartrefreshitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    smartRefreshItem(itemId,source)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +refresh specified tree item (get XML from server, add new nodes, remove not used nodes) + +

    +
      +
    • itemId - top node in branch
      +
    • +
    • source - server side script , optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_sorttree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_sorttree.html new file mode 100755 index 0000000000..b61927921b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_sorttree.html @@ -0,0 +1,137 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_sorttree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    sortTree(nodeId,order,all_levels)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree_sb.js +

    + +

    +reorder items in tree according to their text + +

    +
      +
    • nodeId - id of node to start sorting from
      +
    • +
    • all_levels - sorting all levels or only current level
      +
    • +
    • order - sorting order - ASC or DES
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_stopedit.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_stopedit.html new file mode 100755 index 0000000000..9d46889cfe --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_stopedit.html @@ -0,0 +1,126 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_stopedit [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    stopEdit()

    +
    + +

    + +Required library edition: This method works with any edition of DHTMLX library
    + Required library file: dhtmlxtree_ed.js +

    + +

    +switch currently edited item back to normal view +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_updateitem.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_updateitem.html new file mode 100755 index 0000000000..e12a2ed147 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_method_dhtmlxtreeobject_updateitem.html @@ -0,0 +1,143 @@ + + + + dhtmlxtree:api_method_dhtmlxtreeobject_updateitem [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    updateItem(itemId,name,im0,im1,im2,achecked)

    +
    + +

    + +Required library edition: This method requires Professional Edition of the DHTMLX library
    + Required library file: dhtmlxtree.js +

    + +

    +update item properties + +

    +
      +
    • itemId - list of node identificators
      +
    • +
    • name - list of node identificators, optional
      +
    • +
    • im0 - list of node identificators, optional
      +
    • +
    • im1 - list of node identificators, optional
      +
    • +
    • im2 - list of node identificators, optional
      +
    • +
    • achecked - list of node identificators, optional
      +
    • +
    + + + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_alpha.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_alpha.html new file mode 100755 index 0000000000..698493f8c7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_alpha.html @@ -0,0 +1,721 @@ + + + + dhtmlxtree:api_toc_alpha [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    dhtmlxTree API Methods

    +
    + + + +
    + +

    dhtmlXTreeObject Object

    +
    + +

    + +assignKeys configures keys used for keyboard navigation +

    + +

    +attachEvent adds any user-defined handler to available events +

    + +

    +changeItemId changes item id +

    + +

    +clearCut clears cut +

    + +

    +clearSelection unselects item in tree +

    + +

    +closeAllItems collapses target node and all sub nodes +

    + +

    +closeItem collapses node +

    + +

    +defineItemForm assigns custom form to tree +

    + +

    +deleteChildItems deletes all children of node +

    + +

    +deleteItem deletes node +

    + +

    +destructor deletes tree and clears memory +

    + +

    +detachEvent removes an event handler +

    + +

    +disableCheckbox disables checkbox +

    + +

    +doCut marks selected item as cut +

    + +

    +doPaste inserts previously cut branch +

    + +

    +editItem opens editor for specified item +

    + +

    +enableActiveImages enables active images (clickable and dragable). By default only text part of the node is active +

    + +

    +enableAutoSavingSelected enables/disables autosaving selected node in cookie +

    + +

    +enableAutoTooltips enables auto tooltips (node text as tooltip) +

    + +

    +enableCheckBoxes shows/hides checkboxes (all checkboxes in tree) +

    + +

    +enableContextMenu enables context menu +

    + +

    +enableDistributedParsing enables distributed parsing of big tree (items loaded portion by portion with some timeouts) +

    + +

    +enableDragAndDrop enables/disables drag-and-drop +

    + +

    +enableDragAndDropScrolling enables/disables auto scrolling while drag-and-drop +

    + +

    +enableHighlighting enables item highlighting (item text highlited on mouseover) +

    + +

    +enableIEImageFix replaces IMG tag with background images - solve problem with IE image caching , not works for IE6 SP1 +

    + +

    +enableImageDrag enables draging item image with item text +

    + +

    +enableItemEditor enables editing of item text +

    + +

    +enableKeySearch enables search items by pressing keys (any item in tree should be focused/selected to make search work) +

    + +

    +enableKeyboardNavigation enables keyboard navigation in tree +

    + +

    +enableLoadingItem enables/disables “Loading…†item +

    + +

    +enableMercyDrag enables drag without removing (copy instead of move) +

    + +

    +enableMultiLineItems enables multi line items +

    + +

    +enableMultiselection enables multiselection +

    + +

    +enableRTL enables Right-to-Left mode in tree +

    + +

    +enableRadioButtons replaces checkboxes with radio buttons +

    + +

    +enableSingleRadioMode replaces checkboxes with radio buttons +

    + +

    +enableSmartCheckboxes enables smart checkboxes ,true by default (auto checking children and parents for 3-state checkboxes) +

    + +

    +enableSmartRendering enables smart rendering mode (usefull for big trees with lots f items on each level) +

    + +

    +enableSmartXMLParsing enables/disables smart XML parsing mode (usefull for big, well structured XML) +

    + +

    +enableTextSigns replaces images with text signs +

    + +

    +enableThreeStateCheckboxes enables three state checkboxes +

    + +

    +enableTreeImages enables tree images +

    + +

    +enableTreeLines enables/disables tree lines (parent-child threads) +

    + +

    +findItem finds tree item by text, select and focus it +

    + +

    +findItemIdByLabel finds tree item by text +

    + +

    +focusItem focuses item in tree (scroll to it if necessary) +

    + +

    +getAllChecked returns list of identificators of nodes with checked checkboxes, separated by default delimiter +

    + +

    +getAllCheckedBranches returns list of identificators of nodes with checked and third state checkboxes, separated by default delimiter +

    + +

    +getAllChildless returns the list of all items which doesn't have child nodes. +

    + +

    +getAllItemsWithKids returns the list of all items which have child nodes, separated by default delimiter. +

    + +

    +getAllPartiallyChecked returns list of identificators of nodes with third state checkboxes, separated by default delimiter +

    + +

    +getAllSubItems returns the list of all children from all next levels of tree, separated by default delimiter. +

    + +

    +getAllUnchecked returns list of identificators of nodes with unchecked checkboxes, separated by default delimiter +

    + +

    +getChildItemIdByIndex returns child node id by index +

    + +

    +getDistributedParsingState gets current state of distributed parsing +

    + +

    +getIndexById returns node index in children collection by Id +

    + +

    +getItemColor gets node color (text color) +

    + +

    +getItemIdByIndex returns node id by index +

    + +

    +getItemImage gets url of item image +

    + +

    +getItemParsingState gets current parsing state of item +

    + +

    +getItemText returns node text +

    + +

    +getItemTooltip gets item's tooltip +

    + +

    +getLevel gets node level (position in hierarchy) +

    + +

    +getOpenState returns open/close state +

    + +

    +getParentId returns parent item id +

    + +

    +getSelectedItemId returns selected item id +

    + +

    +getSelectedItemText returns selected node text +

    + +

    +getSubItems returns the list of all subitems Ids from the next level of tree, separated by commas. +

    + +

    +getUserData gets user data from target node +

    + +

    +getXMLState returns current state of XML loading +

    + +

    +hasChildren returns number of children +

    + +

    +hideItemForm hides item's form +

    + +

    +insertNewChild creates new node as a child to specified with parentId +

    + +

    +insertNewNext creates new node next to specified +

    + +

    +isItemChecked gets state of nodes's checkbox +

    + +

    +isLocked gets locked state of item +

    + +

    +loadCSV loads tree from csv file|stream +

    + +

    +loadCSVString loads tree from csv string +

    + +

    +loadJSArray loads tree from js array object +

    + +

    +loadJSArrayFile loads tree from js array file|stream +

    + +

    +loadJSON loads tree from json file +

    + +

    +loadJSONObject loads tree from json object +

    + +

    +loadOpenStates restores open nodes from cookie +

    + +

    +loadState loads tree from cookie +

    + +

    +loadXML loads tree from xml file +

    + +

    +loadXMLString loads tree from xml string +

    + +

    +lockItem locks/unlocks item +

    + +

    +lockTree locks tree +

    + +

    +makeAllDraggable adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to all HTML items with dragInDhtmlXTree attribute +

    + +

    +makeDraggable adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to HTML object. +

    + +

    +moveItem moves item (inside of tree) +

    + +

    +openAllItems expands target node and all sub nodes +

    + +

    +openAllItemsDynamic expands target node and all child nodes (same as openAllItems, but works in dynamic trees) +

    + +

    +openItem expands node +

    + +

    +openItemsDynamic expands list of nodes in dynamic tree (wait of loading of node before expanding next) +

    + +

    +openOnItemAdded configures if parent node will be expanded immideatly after child item added +

    + +

    +preventIECaching prevents caching in IE by adding random value to URL string +

    + +

    +refreshItem refreshes tree branch from xml (XML with child nodes rerequested from server) +

    + +

    +refreshItems refreshes specified tree nodes (get XML from server and updat only nodes included in itemIdList) +

    + +

    +registerXMLEntity registers XML entity for replacement while initialization (default are: ampersand, lessthen and greaterthen symbols) +

    + +

    +restoreSelectedItem restores selected item from cookie +

    + +

    +saveOpenStates saves open nodes to cookie +

    + +

    +saveSelectedItem saves selected item to cookie +

    + +

    +saveState saves tree to cookie +

    + +

    +selectItem selects node ( and optionaly fire onselect event) +

    + +

    +serializeTree gets xml representation (as string) of tree +

    + +

    +serializeTreeToJSON returns tree as json string +

    + +

    +setCheck sets state of node's checkbox +

    + +

    +setChildCalcHTML sets children calculation prefix and postfix +

    + +

    +setChildCalcMode sets children calculation mode +

    + +

    +setCustomSortFunction sets custom sort functions, which has two parametrs - id_of_item1,id_of_item2 +

    + +

    +setDataMode sets default data transfer mode +

    + +

    +setDragBehavior sets Drag-And-Drop behavior (child - drop as chils, sibling - drop as sibling, complex - complex drop behaviour ) +

    + +

    +setEditStartAction defines which events must start editing +

    + +

    +setEscapingMode sets escaping mode (used for escaping ID in requests) +

    + +

    +setFormAppearOn defines events for form appearing +

    + +

    +setFormDisappearOn defines events for form disappearing +

    + +

    +setIconPath sets path to external images used as tree icons +

    + +

    +setIconSize sets size of icons +

    + +

    +setImageArrays sets images used for parent-child threads drawing (lines, plus, minus) +

    + +

    +setImagePath sets path to images directory +

    + +

    +setItemCloseable prevents node from closing +

    + +

    +setItemColor sets node text color +

    + +

    +setItemContextMenu sets context menu to individual nodes +

    + +

    +setItemImage sets item icons (mostly usefull for childless nodes) +

    + +

    +setItemImage2 sets item images +

    + +

    +setItemStyle sets individual item style +

    + +

    +setItemText sets new node text (HTML allowed) +

    + +

    +setItemTopOffset sets top offset for item +

    + +

    +setListDelimeter sets list separator (â€,†by default) +

    + +

    +setLockedIcons sets icon for locked items +

    + +

    +setOnDblClickHandler sets function called when tree node double clicked +

    + +

    +setOnFormDismissal allows to set user routine which will be called right before form disappears +

    + +

    +setOnFormInitialisation allows setting user routine which will be called immideatly before form appears +

    + +

    +setSerializationLevel configures XML serialization +

    + +

    +setStdImages sets default images for nodes (must be called before XML loading) +

    + +

    +setSubChecked changes state of node's checkbox and all children checkboxes +

    + +

    +setUserData sets user data for target node +

    + +

    +setXMLAutoLoading enables dynamic loading from XML +

    + +

    +setXMLAutoLoadingBehaviour defines which script be called on dynamic loading +

    + +

    +showItemCheckbox shows/hides checkbox for tree item (works only for individual items, not for entire tree ) +

    + +

    +showItemForm shows item's form +

    + +

    +showItemSign shows/hides (+/-) icon (works only for individual items, not for entire tree ) +

    + +

    +smartRefreshBranch refreshes specified tree branch (get XML from server, add new nodes, remove not used nodes) +

    + +

    +smartRefreshItem refreshes specified tree item (get XML from server, add new nodes, remove not used nodes) +

    + +

    +sortTree reorders items in tree according to their text +

    + +

    +stopEdit switches currently edited item back to normal view +

    + +

    +updateItem updates item properties + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_categories.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_categories.html new file mode 100755 index 0000000000..c51fe06299 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___api_toc_categories.html @@ -0,0 +1,785 @@ + + + + dhtmlxtree:api_toc_categories [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Appearance

    +
    + +

    +enableHighlighting enables item highlighting (item text highlited on mouseover) +

    + +

    +enableIEImageFix replaces IMG tag with background images - solve problem with IE image caching , not works for IE6 SP1 +

    + +

    +enableLoadingItem enables/disables “Loading…†item +

    + +

    +enableMultiLineItems enables multi line items +

    + +

    +enableTextSigns replaces images with text signs +

    + +

    +enableTreeImages enables tree images +

    + +

    +enableTreeLines enables/disables tree lines (parent-child threads) +

    + +

    +setIconSize sets size of icons +

    + +

    +setItemColor sets node text color +

    + +

    +setItemImage sets item icons (mostly usefull for childless nodes) +

    + +

    +setItemImage2 sets item images +

    + +

    +setItemStyle sets individual item style +

    + +

    +setItemTopOffset sets top offset for item +

    + +

    +setLockedIcons sets icon for locked items +

    + +

    +showItemSign shows/hides (+/-) icon (works only for individual items, not for entire tree ) +

    + +
    +
    +

    Checkboxes

    +
    + +

    +disableCheckbox disables checkbox +

    + +

    +enableCheckBoxes shows/hides checkboxes (all checkboxes in tree) +

    + +

    +enableRadioButtons replaces checkboxes with radio buttons +

    + +

    +enableSingleRadioMode replaces checkboxes with radio buttons +

    + +

    +enableSmartCheckboxes enables smart checkboxes ,true by default (auto checking children and parents for 3-state checkboxes) +

    + +

    +enableThreeStateCheckboxes enables three state checkboxes +

    + +

    +setCheck sets state of node's checkbox +

    + +

    +setSubChecked changes state of node's checkbox and all children checkboxes +

    + +

    +showItemCheckbox shows/hides checkbox for tree item (works only for individual items, not for entire tree ) +

    + +
    +
    +

    Configuration

    +
    + +

    +attachEvent adds any user-defined handler to available events +

    + +

    +destructor deletes tree and clears memory +

    + +

    +detachEvent removes an event handler +

    + +

    +enableActiveImages enables active images (clickable and dragable). By default only text part of the node is active +

    + +

    +enableAutoTooltips enables auto tooltips (node text as tooltip) +

    + +

    +enableContextMenu enables context menu +

    + +

    +enableRTL enables Right-to-Left mode in tree +

    + +

    +lockTree locks tree +

    + +

    +setChildCalcHTML sets children calculation prefix and postfix +

    + +

    +setChildCalcMode sets children calculation mode +

    + +

    +setEditStartAction defines which events must start editing +

    + +

    +setEscapingMode sets escaping mode (used for escaping ID in requests) +

    + +

    +setIconPath sets path to external images used as tree icons +

    + +

    +setImageArrays sets images used for parent-child threads drawing (lines, plus, minus) +

    + +

    +setImagePath sets path to images directory +

    + +

    +setItemContextMenu sets context menu to individual nodes +

    + +

    +setListDelimeter sets list separator (â€,†by default) +

    + +

    +setOnDblClickHandler sets function called when tree node double clicked +

    + +

    +setStdImages sets default images for nodes (must be called before XML loading) +

    + +
    +
    +

    Cookies

    +
    + +

    +enableAutoSavingSelected enables/disables autosaving selected node in cookie +

    + +

    +restoreSelectedItem restores selected item from cookie +

    + +

    +saveOpenStates saves open nodes to cookie +

    + +

    +saveSelectedItem saves selected item to cookie +

    + +

    +saveState saves tree to cookie + +

    + +
    +
    +

    Data Loading

    +
    + +

    +defineItemForm assigns custom form to tree +

    + +

    +enableDistributedParsing enables distributed parsing of big tree (items loaded portion by portion with some timeouts) +

    + +

    +enableLoadingItem enables/disables “Loading…†item +

    + +

    +enableSmartRendering enables smart rendering mode (usefull for big trees with lots f items on each level) +

    + +

    +enableSmartXMLParsing enables/disables smart XML parsing mode (usefull for big, well structured XML) +

    + +

    +hideItemForm hides item's form +

    + +

    +loadCSV loads tree from csv file|stream +

    + +

    +loadCSVString loads tree from csv string +

    + +

    +loadJSArray loads tree from js array object +

    + +

    +loadJSArrayFile loads tree from js array file|stream +

    + +

    +loadJSON loads tree from json file +

    + +

    +loadJSONObject loads tree from json object +

    + +

    +loadOpenStates restores open nodes from cookie +

    + +

    +loadState loads tree from cookie +

    + +

    +loadXML loads tree from xml file +

    + +

    +loadXMLString loads tree from xml string +

    + +

    +preventIECaching prevents caching in IE by adding random value to URL string +

    + +

    +refreshItem refreshes tree branch from xml (XML with child nodes rerequested from server) +

    + +

    +refreshItems refreshes specified tree nodes (get XML from server and updat only nodes included in itemIdList) +

    + +

    +registerXMLEntity registers XML entity for replacement while initialization (default are: ampersand, lessthen and greaterthen symbols) +

    + +

    +setDataMode sets default data transfer mode +

    + +

    +setXMLAutoLoading enables dynamic loading from XML +

    + +

    +setXMLAutoLoadingBehaviour defines which script be called on dynamic loading +

    + +

    +smartRefreshBranch refreshes specified tree branch (get XML from server, add new nodes, remove not used nodes) +

    + +

    +smartRefreshItem refreshes specified tree item (get XML from server, add new nodes, remove not used nodes) +

    + +

    +setFormAppearOn defines events for form appearing +

    + +

    +setFormDisappearOn defines events for form disappearing +

    + +

    +setOnFormDismissal allows to set user routine which will be called right before form disappears +

    + +

    +setOnFormInitialisation allows setting user routine which will be called immideatly before form appears +

    + +

    +setUserData sets user data for target node +

    + +

    +showItemForm shows item's form +

    + +

    +serializeTree gets xml representation (as string) of tree +

    + +

    +serializeTreeToJSON returns tree as json string +

    + +

    +setSerializationLevel configures XML serialization +

    + +
    +
    +

    Drag-and-Drop

    +
    + +

    +enableDragAndDrop enables/disables drag-and-drop +

    + +

    +enableDragAndDropScrolling enables/disables auto scrolling while drag-and-drop +

    + +

    +enableImageDrag enables draging item image with item text +

    + +

    +enableMercyDrag enables drag without removing (copy instead of move) +

    + +

    +makeAllDraggable adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to all HTML items with dragInDhtmlXTree attribute +

    + +

    +makeDraggable adds drag-n-drop capabilities (with possibility to drop into dhtmlxTree) to HTML object. +

    + +

    +moveItem moves item (inside of tree) +

    + +

    +setDragBehavior sets Drag-And-Drop behavior (child - drop as chils, sibling - drop as sibling, complex - complex drop behaviour ) +

    + +
    +
    +

    Get-methods

    +
    + +

    +getAllChecked returns list of identificators of nodes with checked checkboxes, separated by default delimiter +

    + +

    +getAllCheckedBranches returns list of identificators of nodes with checked and third state checkboxes, separated by default delimiter +

    + +

    +getAllChildless returns the list of all items which doesn't have child nodes. +

    + +

    +getAllItemsWithKids returns the list of all items which have child nodes, separated by default delimiter. +

    + +

    +getAllPartiallyChecked returns list of identificators of nodes with third state checkboxes, separated by default delimiter +

    + +

    +getAllSubItems returns the list of all children from all next levels of tree, separated by default delimiter. +

    + +

    +getAllUnchecked returns list of identificators of nodes with unchecked checkboxes, separated by default delimiter +

    + +

    +getChildItemIdByIndex returns child node id by index +

    + +

    +getDistributedParsingState gets current state of distributed parsing +

    + +

    +getIndexById returns node index in children collection by Id +

    + +

    +getItemColor gets node color (text color) +

    + +

    +getItemIdByIndex returns node id by index +

    + +

    +getItemImage gets url of item image +

    + +

    +getItemParsingState gets current parsing state of item +

    + +

    +getItemText returns node text +

    + +

    +getItemTooltip gets item's tooltip +

    + +

    +getLevel gets node level (position in hierarchy) +

    + +

    +getOpenState returns open/close state +

    + +

    +getParentId returns parent item id +

    + +

    +getSelectedItemId returns selected item id +

    + +

    +getSelectedItemText returns selected node text +

    + +

    +getSubItems returns the list of all subitems Ids from the next level of tree, separated by commas. +

    + +

    +getUserData gets user data from target node +

    + +

    +getXMLState returns current state of XML loading +

    + +

    +hasChildren returns number of children +

    + +
    +
    +

    Items manipulation

    +
    + +

    +changeItemId changes item id +

    + +

    +clearCut clears cut +

    + +

    +closeAllItems collapses target node and all sub nodes +

    + +

    +closeItem collapses node +

    + +

    +deleteChildItems deletes all children of node +

    + +

    +deleteItem deletes node +

    + +

    +doCut marks selected item as cut +

    + +

    +doPaste inserts previously cut branch +

    + +

    +editItem opens editor for specified item +

    + +

    +enableItemEditor enables editing of item text +

    + +

    +insertNewChild creates new node as a child to specified with parentId +

    + +

    +insertNewNext creates new node next to specified +

    + +

    +isItemChecked gets state of nodes's checkbox +

    + +

    +isLocked gets locked state of item +

    + +

    +lockItem locks/unlocks item +

    + +

    +openAllItems expands target node and all sub nodes +

    + +

    +openAllItemsDynamic expands target node and all child nodes (same as openAllItems, but works in dynamic trees) +

    + +

    +openItem expands node +

    + +

    +openItemsDynamic expands list of nodes in dynamic tree (wait of loading of node before expanding next) +

    + +

    +openOnItemAdded configures if parent node will be expanded immideatly after child item added +

    + +

    +setCheck sets state of node's checkbox +

    + +

    +setItemCloseable prevents node from closing +

    + +

    +setItemText sets new node text (HTML allowed) +

    + +

    +stopEdit switches currently edited item back to normal view +updateItem updates item properties +

    + +
    +
    +

    Selection, Sorting, Navigation

    +
    + +

    +assignKeys configures keys used for keyboard navigation +

    + +

    +clearSelection unselects item in tree +

    + +

    +enableKeyboardNavigation enables keyboard navigation in tree +

    + +

    +enableKeySearch enables search items by pressing keys (any item in tree should be focused/selected to make search work) +

    + +

    +findItem finds tree item by text, select and focus it +

    + +

    +findItemIdByLabel finds tree item by text +

    + +

    +enableMultiselection enables multiselection +

    + +

    +focusItem focuses item in tree (scroll to it if necessary) +

    + +

    +selectItem selects node ( and optionaly fire onselect event) +

    + +

    +setCustomSortFunction sets custom sort functions, which has two parametrs - id_of_item1,id_of_item2 +

    + +

    +sortTree reorders items in tree according to their text + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___checkboxes_manipulation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___checkboxes_manipulation.html new file mode 100755 index 0000000000..ee1fefcb7e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___checkboxes_manipulation.html @@ -0,0 +1,347 @@ + + + + dhtmlxtree:checkboxes_manipulation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Checkboxes Manipulation

    +
    + +

    +dhtmlxTree operates the advanced chechbox system. Besides usual two-state checkboxes (checked item, unchecked item), there is the possibility to use three-state checkboxes with “partly-checked†value. + +

    + +
    +
    +

    Enabling/Disabling Checkboxes

    +
    + +
    + +

    Enabling Standard Checkboxes

    +
    + +

    + +Method enableCheckboxes() does the very thing: + +

    +
        <script>
    +        tree.enableCheckBoxes(mode, hidden);
    +    </script>
    +

    + +The parameters here are as follows: +

    +
      +
    • mode(true|false) - false stands for hiding all the checkboxes, while true stands for showing them all in the tree;
      +
    • +
    • hidden - setting it to true means that checkboxes are not rendered, but can be shown by showItemCheckbox() method.
      +
    • +
    + +

    +In case of creating checkboxes with the help of the above mentioned method, they will possess the usual checkbox states: +

    +
      +
    • checked;
      +
    • +
    • unchecked.
      +
    • +
    + +
    + +

    Enabling Three-State Checkboxes

    +
    + +

    + +The following method is responsible for enabling three-state checkboxes: + +

    +
        <script>
    +        tree.enableThreeStateCheckboxes(true|false);
    +    </script>
    +

    + +The following states are available for three-state checkboxes: +

    +
      +
    • checked;
      +
    • +
    • unchecked;
      +
    • +
    • partially checked.
      +
    • +
    + +

    +The third state takes place when the item has several child nodes among which there are checked and unchecked ones. +

    + +

    +It should be noted that in case when three-state checkboxes are enabled, a click on a parent unchecked checkbox will result in checking it together with all its child items, and vice versa. +

    + +
    + +

    Disabling a Checkbox

    +
    + +

    + +A checkbox of a certain item can be disabled. The parameters that are to be specified: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • mode(true|false) - indicates whether the checkbox is disabled (true) or enabled (false).
      +
    • +
    +
        <script>
    +        tree.disableCheckbox(itemId,mode);
    +    </script>
    +
    + +

    Enabling Checkboxes for Specific Items

    +
    + +

    + +The user can set checkboxes for some specific items only. This can be done in the following way: + +

    +
        <script>
    +        tree.enableCheckBoxes(true, true);
    +        ...   
    +        tree.showItemCheckbox(id, mode);
    +    </script>
    +

    + +The parameters here are: +

    +
      +
    • id - id of the item;
      +
    • +
    • mode (true|false) - whether the checkbox will be visible (true) or not (false).
      +
    • +
    + +
    + +

    Enabling Smart Checkboxes

    +
    + +

    + +Method enableSmartCheckboxes() enables three-state checkboxes logic. By default it is set to false: + +

    +
        <script>
    +        tree.enableSmartCheckboxes(true|false); // false by default
    +    </script>
    +
    +
    +

    Checkboxes State Manipulation

    +
    + +
    + +

    Checking/Unchecking Tree Item

    +
    + +

    + +Any checkbox in the tree can be easily checked|unchecked from script with the help of the following method: + +

    +
        <script>
    +        tree.setCheck(id, mode);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • id - id of the item in question;
      +
    • +
    • mode (true|false) - if set to true, the item will be checked, while false means unchecking the item.
      +
    • +
    + +

    +It should be noted that according to three-state checkboxes' logic, if a parent item was checked with the help of setCheck() method, all its child items will become checked as well. +

    + +
    + +

    Checking/Unchecking Tree Branch

    +
    + +

    + +Along with checking a tree item, a tree branch can also be easily checked/unchecked from script in the following way: + +

    +
        <script>
    +        tree.setSubChecked(id, state);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • id - id of the item in question;
      +
    • +
    • state (true|false) - if set to true, the branch of items will be checked, while false means unchecking the branch.
      +
    • +
    + +
    + +

    Getting Checkbox's State

    +
    + +

    + +State of the specified item's checkbox can be got in the following way: + +

    +
        <script>
    +        var checkState = tree.isItemChecked(itemId);
    +    </script>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___compatibility_with_other_dhtmlx_components.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___compatibility_with_other_dhtmlx_components.html new file mode 100755 index 0000000000..0b65cc594e --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___compatibility_with_other_dhtmlx_components.html @@ -0,0 +1,234 @@ + + + + dhtmlxtree:compatibility_with_other_dhtmlx_components [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Compatibility with Other DHTMLX Components

    +
    + +
    +
    +

    Enabling Contextual Menu

    +
    + +

    +A contextual menu can be easily added to dhtmlxTree. The content of this menu can be set with XML or script. To enable the contextual menu, the user should do the following: +

    +
     
    +        <script>      
    +                //initialization of the menu      
    +            menu = new dhtmlXMenuObject(null,"standard");
    +            menu.setImagePath("[full path to this folder]/dhtmlxMenu/codebase/imgs/");
    +            menu.setIconsPath("[full path to this folder]/images/");    
    +            menu.renderAsContextMenu();
    +            menu.loadXML("_context.xml");
    + 
    + 
    + 
    +                //initialization of the tree
    +            tree = new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0);
    +            ...
    +                //link the contextual menu to the tree      
    +            tree.enableContextMenu(aMenu);
    +        </script>
    + 
    + 
    +
    +
    +

    Contextual Menu Based on Item's Properties

    +
    + +

    +One contextual menu content can be attached to the whole tree. If the user wants the menu to be shown differently depending on the item it was called for, menu methods hideButtons/showButtons should be used. +

    + +

    +Note: Refer for more information on the above mentioned menu buttons to dhtmlxMenu Guide and Code Samples documentation. + +

    +
          <div id="treeboxbox_tree" style="width:200;height:200"></div>
    + 
    + 
    + 
    +      <script> 
    +          function onButtonClick(menuitemId,type){
    +              var id = tree.contextID;
    +              tree.setItemColor(id,menuitemId.split("_")[1]);
    +          }
    +              //initialization of the menu
    +          menu = new dhtmlXMenuObject(null,"standard");
    +          menu.setImagePath("[full path to this folder]/dhtmlxMenu/codebase/imgs/");
    +          menu.setIconsPath("[full path to this folder]/images/");
    +          menu.renderAsContextMenu();
    +          menu.setOpenMode("web");
    +          menu.attachEvent("onClick",onButtonClick);
    +          menu.loadXML("_context.xml");
    +              //initialization of the tree
    +          tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0);
    +          tree.setImagePath("../imgs/");
    +          tree.enableDragAndDrop(true);
    +          tree.enableContextMenu(menu);
    +              //link contextual menu to the tree
    +          tree.loadXML("tree.xml")
    + 
    +          tree.attachEvent("onBeforeContextMenu",function(itemId){
    +              if (tree.hasChildren(itemId) > 0){
    +                  menu.hideItem('outher');
    +              } else {
    +                  menu.showItem('outher');
    +              }
    +              return true
    +          })
    +      </script>
    +
    +
    +

    Contextual Menu for Individual Items

    +
    + +

    +If the user wants to set different menus for individual tree items, he should use the following method: + +

    +
          <script>
    +          tree.setItemContextMenu(itemId,cMenu);
    +      </script>
    +

    + +The parameters here are responsible for: +

    +
      +
    • itemId - id of the item the contextual menu will be attached to;
      +
    • +
    • cMenu - contextual menu object that will be attached.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_220gbgmh9gf_b.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_220gbgmh9gf_b.gif new file mode 100755 index 0000000000000000000000000000000000000000..ab9b48d96c2dab902ca947d54c6ffac8308d2d6b GIT binary patch literal 3073 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 E0Zw;XlmGw# literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_223fnxr7chh_b.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_223fnxr7chh_b.gif new file mode 100755 index 0000000000000000000000000000000000000000..c3f77ab625ef0e5c054833632190d8aa7463671b GIT binary patch literal 4159 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 Sq@&R}rF=G}TIvEJ002A59mOU9 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_225fpw796gk_b.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_225fpw796gk_b.gif new file mode 100755 index 0000000000000000000000000000000000000000..7ebf92b9bb6c04d33ea570008094dc82a6421155 GIT binary patch literal 4481 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_226c3td7kc7_b.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_226c3td7kc7_b.gif new file mode 100755 index 0000000000000000000000000000000000000000..e9474b4257521f89fa5c78362304d8a142dca9e4 GIT binary patch literal 4208 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 H5J2fa|2WHk literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_227f8jk4hd8_b.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___dgr5rjkf_227f8jk4hd8_b.gif new file mode 100755 index 0000000000000000000000000000000000000000..f2f58d72e8bc07279d4407a2ef4b405db4bc3cfa GIT binary patch literal 4750 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 cR!@A42p(8 + + + dhtmlxtree:drag_and_drop_handling [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Drag-and-Drop Handling

    +
    + +

    +dhtmlxTree has extended drag-and-drop functionality (within one tree, between trees). Using this functionality, it is easy to reorder nodes in a tree view, edit the tree by dragging nodes within one tree, between trees, or even to another object. +

    + +
    +
    +

    Enabling/Disabling Drag-and-Drop

    +
    + +

    +The user can switch d-n-d functionality on|off with the help of enableDragAndDrop() method: + +

    +
            tree.enableDragAndDrop(mode, rmode);
    +

    + +The parameters here are as follows: +

    +
      +
    • mode - the possible variants are:
      +
        +
      • true - d-n-d is enabled in the tree;
        +
      • +
      • false - d-n-d is disabled in the tree;
        +
      • +
      • “temporary_disabled†- d-n-d is disabled temporarily.
        +
      • +
      +
    • +
    • rmode(true|false) - allows to enable|disable drop an item on an empty space in the tree, making this item the child of the top level tree node. This is enabled (true) by default. If disabled (false), the user won't be able to drop an item on an empty space in the tree.
      +
    • +
    + +
    +
    +

    Setting Drag-and-Drop Mode

    +
    + +

    +There is a simple method that allows the user to set d-n-d mode - setDragBehavior(): + +

    +
        <script>
    +        tree.setDragBehavior(mode, select);
    +    </script>
    +

    + +Dragging mode should be indicated as the parameter of this method. The parameters are the following: +

    +
      +
    • mode - the following modes are available:
      +
        +
      • child - drop as a child;
        +
      • +
      • sibling - drop as a sibling;
        +
      • +
      • complex - both previous modes are active;
        +
      • +
      +
    • +
    • select - select the dropped item after drag-n-drop; it is set to true by default.
      +
    • +
    + +
    +
    +

    Copy with Drag-and-Drop

    +
    + +

    +There is also the possibility to enable “mercy†drag mode. In this case, the copy of the dragged item will be moved to another place, leaving the source item intact (copy instead move): + +

    +
        <script>
    +        tree.enableMercyDrag(true|false);
    +    </script>
    +
    +
    +

    Dragging Into Tree

    +
    + +

    +Objects from page can be easily dragged into the tree. There are the following ways of making object draggable: +

    +
      +
    • Using makeDraggable() method which parameter is the id of the object that the user wants to make draggable:
      +
    • +
    +
        <div id="a0">Some text</div>
    +    <div id="a1" text="Tomb" image="tombs.gif">Some complex HTML</div>
    +    <script>
    +        ...
    +        tree.makeDraggable("a0");
    +        tree.makeDraggable("a1");
    +    </script>
      +
    • Using makeDraggable() method which parameters are: id of the object and the function that will be activated on d-n-d to add the element into the tree:
      +
    • +
    +
        <div id="a2" text="Green">
    +        <div style='width:50px; height:20px; background-color:green;'></div>
    +    </div>
    +    <script>
    +        tree.makeDraggable("a2",function(drop_obj,source_id,target_on,target_before){
    +            drop_obj.insertNewItem(target_on,source_id,"Green 1");
    +            drop_obj.insertNewItem(target_on,source_id,"Green 2");
    +            drop_obj.insertNewItem(target_on,source_id,"Green 3");
    +        });
    +    </script>
      +
    • Using makeAllDraggable() method without any input parameters:
      +
    • +
    +
        <div dragInDhtmlXTree="true" id="a3" text="Blue" >...</div>
    +    <div dragInDhtmlXTree="true" id="a4" image="open2.gif" text="Open">...</div>
    +    <div dragInDhtmlXTree="true" id="a5" image="tombs.gif" text="Tomb">...</div>
    + 
    + 
    + 
    +    <script>
    +        tree.makeAllDraggable();
    +    </script>
    +
    +
    +

    Dragging between Frames/Iframes

    +
    + +

    +Drag-and-drop between frames|iframes is enabled by default (works in IE and FireFox), so no additional code is required except: + +

    +
        <script>
    +        tree.enableDragAndDrop(true);
    +    </script>
    +

    + +All you need to do additionally is to insert the following code into the frame/iframe containing no tree: + +

    +
        <script>
    +        new dhtmlDragAndDropObject();
    +    </script>
    +
    +
    +

    Enabling Custom Drag Out

    +
    + +

    +Dragging a node from the tree to some input control on page is also possible with dhtmlxTree: + +

    +
        <script>
    +        tree.dragger.addDragLanding(sinput, {
    +            _drag : function(){ ... },
    +            _dragIn : function(){ ... },
    +            _dragOut : function(){ ... }
    +        });
    +    <acript>
    +

    + +The parameters of addDragLanding() method are as follows: +

    +
      +
    • sinput - the element that will act as a dragging area;
      +
    • +
    • object - the object containing 3 functions:
      +
        +
      • _drag - will be called when the element is put on the dragging area;
        +
      • +
      • _dragIn - will be called when the element is over the dragging area;
        +
      • +
      • _dragOut - will be called when the element was over the dragging area but was moved outside it.
        +
      • +
      +
    • +
    + +

    +The first function is responsible for the action itself, while the other two are used for its visualization. +

    + +
    +
    +

    Enabling Auto Scrolling

    +
    + +

    +Auto scrolling is very useful in the process of d-n-d. This functionality is enabled by default, but it can be easily disabled in the following way: + +

    +
        <script>
    +        tree.enableDragAndDropScrolling(false); // true to enable again
    +    </script>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___error_handling.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___error_handling.html new file mode 100755 index 0000000000..532c1117f5 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___error_handling.html @@ -0,0 +1,138 @@ + + + + dhtmlxtree:error_handling [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Error Handling

    +
    + +

    +Some exceptions in dhtmlxTree can be captured and processed. + +

    +
        function myErrorHandler(type, desc, erData){
    +            alert(erData[0].status)
    +    }
    +    dhtmlxError.catchError("ALL",myErrorHandler);
    + 
    +

    + +The handler gets the following parameters: +

    +
      +
    • type - supported error types (“All†or “Load XMLâ€);
      +
    • +
    • desc - error description (hardcoded in code);
      +
    • +
    • erData - error related array of objects ([0] - response object).
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforecheck.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforecheck.html new file mode 100755 index 0000000000..4d1019c760 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforecheck.html @@ -0,0 +1,139 @@ + + + + dhtmlxtree:event_onbeforecheck [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onBeforeCheck Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the item;
      +
    • +
    • state - current state of the checkbox;
      +
    • +
    +
              tree.attachEvent("onBeforeCheck", function(id,state){});
    + 
    +

    + +The event returns: +

    + +

    + true - allows checking;
    + + false - denies checking; +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforedrag.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforedrag.html new file mode 100755 index 0000000000..de5c541090 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onbeforedrag.html @@ -0,0 +1,132 @@ + + + + dhtmlxtree:event_onbeforedrag [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onBeforeDrag Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameter: + +

    +
      +
    • sId - id of the source item.
      +
    • +
    +
              tree.attachEvent("onBeforeDrag", function(sId){});
    + 
    +

    + +This event returns: true - confirms drag-and-drop start; false - denies drag-and-drop (operation will not start). + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_oncheck.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_oncheck.html new file mode 100755 index 0000000000..4b8d3ab2c2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_oncheck.html @@ -0,0 +1,128 @@ + + + + dhtmlxtree:event_oncheck [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onCheck Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the item that was checked|unchecked;
      +
    • +
    • state - current state of the checkbox (1 - item is checked, 0 - item is unchecked);
      +
    • +
    +
              tree.attachEvent("onCheck", function(id,state){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onclick.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onclick.html new file mode 100755 index 0000000000..e39fb44b34 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onclick.html @@ -0,0 +1,141 @@ + + + + dhtmlxtree:event_onclick [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onClick Event

    +
    + +

    + +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the clicked item;
      +
    • +
    • id - id of the previously selected item.
      +
    • +
    +
            tree.attachEvent("onClick", function(id, id){});
    + 
    +

    + +Here is the example of using onClick event in the tree containing items with link-like functionality: + +

    +
        <script>
    +        tree.attachEvent("onClick",function(id){
    +            window.open(tree.getUserData(id,"href"));
    +            return true;
    +        });
    +    </script>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondblclick.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondblclick.html new file mode 100755 index 0000000000..0b5268c2fe --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondblclick.html @@ -0,0 +1,138 @@ + + + + dhtmlxtree:event_ondblclick [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onDblClick Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameter: + +

    +
      +
    • id - id of the node that was doubleclicked.
      +
    • +
    +
            tree.attachEvent("onDblClick", function(id){});
    + 
    +

    + +The event returns: +

    + +

    + true - confirms opening|closing;
    + + false - denies opening|closing. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrag.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrag.html new file mode 100755 index 0000000000..4e8f5970f2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrag.html @@ -0,0 +1,145 @@ + + + + dhtmlxtree:event_ondrag [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onDrag Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • sId - id of the source item;
      +
    • +
    • tId - id of the target item;
      +
    • +
    • id - if the node is dropped as a sibling, id of the item before which the source node will be inserted;
      +
    • +
    • sObject - source tree object;
      +
    • +
    • tObject - target tree object.
      +
    • +
    +
              tree.attachEvent("onDrag", function(sId,tId,id,sObject,tObject){});
    + 
    +

    + +This event returns: +

    + +

    + true - confirms drag-and-drop start;
    + + false - denies drag-and-drop. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondragin.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondragin.html new file mode 100755 index 0000000000..9190a3a1c7 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondragin.html @@ -0,0 +1,143 @@ + + + + dhtmlxtree:event_ondragin [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onDragIn Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • dId - id of the dragged item;
      +
    • +
    • lId - id of the potential drop landing;
      +
    • +
    • sObject - source object;
      +
    • +
    • tObject - target object.
      +
    • +
    +
              tree.attachEvent("onDragIn", function(dId,lId,id,sObject,tObject){});
    + 
    +

    + +This event returns: +

    + +

    +true - allows drop;
    + +false - denies drop. + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrop.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrop.html new file mode 100755 index 0000000000..c41386df64 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_ondrop.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:event_ondrop [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onDrop Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • sId - id of the source item (id after inserting into the tree, my not be equal to the initial id);
      +
    • +
    • tId - id of the target item;
      +
    • +
    • id - if the node is dropped as a sibling, id of the item before which the source node will be inserted;
      +
    • +
    • sObject - source tree object;
      +
    • +
    • tObject - target tree object.
      +
    • +
    +
               tree.attachEvent("onDrop", function(sId,tId,id,sObject,tObject){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onedit.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onedit.html new file mode 100755 index 0000000000..0c973e1292 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onedit.html @@ -0,0 +1,136 @@ + + + + dhtmlxtree:event_onedit [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onEdit Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • state - 0 = before starting of editing, 1 = after starting of editing, 2 = before editor's closing, 3 = after editor's closing;
      +
    • +
    • id - id of the edited item;
      +
    • +
    • tree - tree object;
      +
    • +
    • value - value of the editor (for stages 0 and 2).
      +
    • +
    +
               tree.attachEvent("onEdit", function(state,id,tree,value){});
    + 
    +

    + +For stages 0 and 2 this event returns: true - confirms opening|closing, false - denies opening|closing; text - edit value. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmousein.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmousein.html new file mode 100755 index 0000000000..cd0f7ba67a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmousein.html @@ -0,0 +1,127 @@ + + + + dhtmlxtree:event_onmousein [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onMouseIn Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameter: + +

    +
      +
    • id - id of the node.
      +
    • +
    +
            tree.attachEvent("onMouseIn", function(id){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmouseout.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmouseout.html new file mode 100755 index 0000000000..9be56f0fa1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onmouseout.html @@ -0,0 +1,127 @@ + + + + dhtmlxtree:event_onmouseout [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onMouseOut Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameter: + +

    +
      +
    • id - id of the clicked node.
      +
    • +
    +
            tree.attachEvent("onMouseOut", function(id){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopendynamicend.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopendynamicend.html new file mode 100755 index 0000000000..2f85ced2cd --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopendynamicend.html @@ -0,0 +1,135 @@ + + + + dhtmlxtree:event_onopendynamicend [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onOpenDynamicEnd Event

    +
    + +

    +Required library edition: This method requires Professional Edition of the DHTMLX library
    + +

    + +

    +Event is occurs after the item defined in the openItemsDynamic method opens +

    + +

    + +This event calls user-defined handlers (if there are any): + +

    +
           tree.attachEvent("onOpenDynamicEnd", function(){
    +           /*here is your code*/
    +       });
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenend.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenend.html new file mode 100755 index 0000000000..b465cf1d09 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenend.html @@ -0,0 +1,128 @@ + + + + dhtmlxtree:event_onopenend [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onOpenEnd Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the node that will be opened;
      +
    • +
    • state - current open state of the item: 0 - item has no child nodes, -1 - item is closed, 1 - item is opened.
      +
    • +
    +
            tree.attachEvent("onOpenEnd", function(id,state){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenstart.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenstart.html new file mode 100755 index 0000000000..0a1127be45 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onopenstart.html @@ -0,0 +1,133 @@ + + + + dhtmlxtree:event_onopenstart [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onOpenStart Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the node that will be opened;
      +
    • +
    • state - current open state of the item: 0 - item has no child nodes, -1 - item is closed, 1 - item is opened.
      +
    • +
    +
            tree.attachEvent("onOpenStart", function(id,state){});
    + 
    +

    + +The event returns: true - confirms opening|closing; false - denies opening|closing. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onrightclick.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onrightclick.html new file mode 100755 index 0000000000..fbc1daeee3 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onrightclick.html @@ -0,0 +1,128 @@ + + + + dhtmlxtree:event_onrightclick [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onRightClick Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • id - id of the clicked item;
      +
    • +
    • object - event object.
      +
    • +
    +
            tree.attachEvent("onRightClick", function(id, object){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onselect.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onselect.html new file mode 100755 index 0000000000..2a35db28e3 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onselect.html @@ -0,0 +1,127 @@ + + + + dhtmlxtree:event_onselect [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    +

    + + + +

    onSelect Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: + +

    +
      +
    • id - id of the selected item (ids of selected items list in case of multiselection).
      +
    • +
    +
            tree.attachEvent("onSelect", function(id){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxle.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxle.html new file mode 100755 index 0000000000..432c89bdab --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxle.html @@ -0,0 +1,127 @@ + + + + dhtmlxtree:event_onxle [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onXLE Event

    +
    + +

    +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • tree - tree object;
      +
    • +
    • id - id of the last parsed item.
      +
    • +
    +
              tree.attachEvent("onXLE", function(tree,id){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxls.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxls.html new file mode 100755 index 0000000000..80f3027d5b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___event_onxls.html @@ -0,0 +1,128 @@ + + + + dhtmlxtree:event_onxls [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    onXLS Event

    +
    + +

    + +This event calls user-defined handlers (if there are any) and passes the following parameters: +

    +
      +
    • tree - tree object;
      +
    • +
    • id - id of the item for which XML is loaded.
      +
    • +
    +
              tree.attachEvent("onXLS", function(tree,id){});
    + 
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___events_handling.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___events_handling.html new file mode 100755 index 0000000000..760f08f648 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___events_handling.html @@ -0,0 +1,238 @@ + + + + dhtmlxtree:events_handling [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Events Handling

    +
    + +
    +
    +

    Available Events

    +
    + +

    +The following events are available in dhtmlxTree: +

    +
      +
    • Drag-and-Drop Events:
      +
        +
      • onBeforeDrag - occurs when item's dragging starts (the item is selected and the mouse is moving);
        +
      • +
      • onDrag - occurs when the item was dragged and dropped on some other item, but before item's moving is processed;
        +
      • +
      • onDragIn - occurs when the item is dragged over some target the item can be dropped to;
        +
      • +
      • onDrop - occurs when drag-and-drop had already been processed; also occurs when the nodes are moved programmatically;
        +
      • +
      +
    • +
    • Editing Events:
      +
        +
      • onEdit - occurs on 4 different stages of edit process: before starting of editing (can be canceled), after starting of editing, before editor's closing (can be canceled), after editor's closing;
        +
      • +
      • onBeforeCheck - occurs before an item is checked|unchecked;
        +
      • +
      • onCheck - occurs immediately after an item in the tree was checked|unchecked;
        +
      • +
      +
    • +
    • Loading Events:
      +
        +
      • onXLS - occurs when XML parsing starts;
        +
      • +
      • onXLE - occurs when XML parsing is over, new items are already available in the tree;
        +
      • +
      +
    • +
    • Mouse Events:
      +
        +
      • onMouseIn - occurs when the mouse pointer is hovered over an item;
        +
      • +
      • onMouseOut - occurs when the mouse pointer is moved out of item's area;
        +
      • +
      +
    • +
    • Opening Events:
      +
        +
      • onOpenStart - occurs right when an item in the tree starts to open, but before this item opens. This event is also available for “unclosable†nodes and nodes without open|close functionality - in that case result of the function will be ignored;
        +
      • +
      • onOpenEnd - occurs right when an item in the tree has already become open. Event also raised for “unclosable†nodes and nodes without open/close functionality - in that case result of function will be ignored.
        +
      • +
      • onDblClick - occurs right when a tree item was double clicked, but before default onDblClick functionality is processed;
        +
      • +
      • onOpenDynamicEnd - occurs when openItemsDynamic() method loads and opens the required hierarchy of items;
        +
      • +
      +
    • +
    • Right Click Events
      +
        +
      • onRightClick- occurs when the user clicks the right mouse button;
        +
      • +
      +
    • +
    • Selection Events
      +
        +
      • onClick - occurs when the text part of a tree item was clicked, but after default onClick functionality was processed;
        +
      • +
      • onSelect - occurs when the selection in the tree was changed.
        +
      • +
      +
    • +
    + +
    +
    +

    Attaching/Removing Event Handlers

    +
    + +

    +The user can add any user-defined handler to available events. To do this he can use attachEvent() method with the following parameters: +

    +
      +
    • evName - name of the event;
      +
    • +
    • evHandler - user-defined event handler.
      +
    • +
    +
                  tree.attachEvent(evName, evHandler);
    + 
    +

    + +Several handlers can be attached to one and the same event, and all of them will be executed.
    + +Note: the names of the events are case-sensitive. +

    + +

    +There is a simple way of removing an event-handler: + +

    +
              tree.detachEvent(id); // unique id of the event handler
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___increasing_tree_s_performance.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___increasing_tree_s_performance.html new file mode 100755 index 0000000000..ed8ab3a799 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___increasing_tree_s_performance.html @@ -0,0 +1,380 @@ + + + + dhtmlxtree:increasing_tree_s_performance [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Increasing Tree's Performance

    +
    + +

    +The following ways of increasing performance were introduced in dhtmlxTree (when working with huge data sets): +

    +
      +
    • Dynamical Loading;
      +
    • +
    • Smart XML Parsing;
      +
    • +
    • Distributed Parsing;
      +
    • +
    • Smart Rendering.
      +
    • +
    + +
    +
    +

    Dynamical Loading

    +
    + +

    +In case the tree contains large amount of nodes (or the user doesn't want to waste time on loading hidden nodes), it would be better to load them on request, not all at once. The functionality to load tree levels dynamically using XML was introduced for this purpose. Dynamical loading of items from XML stream gives the possibility to create DHTML trees with unlimited number of nodes. +

    + +
    + +

    Activating Dynamical Loading

    +
    + +

    +First, in XML the user should indicate the nodes that will be loaded dynamically this way: add the parameter child=“1†to all nodes that have child items. The items containing this parameter will be objects for dynamical loading. + +

    +
        <?xml version="1.0" encoding="iso-8859-1" ?>
    +        <tree id="0">
    +            <item  text="Surveillance" id="a1" im0="book.gif" … child="1"/>
    +            <item …/>
    +            …
    +        </tree>
    +

    + +The method setXMLAutoLoading() switches the dynamical loading on in the tree: + +

    +
        <script>
    +        tree.setXMLAutoLoading(url);
    +        tree.loadXML(file); // load the first level of the tree
    +    </script>
    +

    + +The above mentioned snippet is useful in case of a tree with large amount of data. The system will first load the data indicated by loadXML() method. The script specified in setXMLAutoLoading() method will be called when the user clicks the tree to expand any of the parent nodes (which child nodes were not loaded). The script will get the id of the node to open, and return the XML with description of the child items. +

    + +

    +It should be noted that when the tree is switched on dynamical loading, script methods work only for those items that are loaded at the moment. +

    + +
    + +

    Setting Auto Loading Behavior

    +
    + +

    +The following method is responsible for specifying the way server side URL is constructed during dynamical loading calls: + +

    +
        <script>
    +        tree.setXMLAutoLoadingBehaviour(mode);
    +    </script>
    +

    + +The following modes variants are available here: +

    +
      +
    • id - some_script?id=[item_id]
      +
    • +
    • name - some_script[item_id]
      +
    • +
    • xmlname - some_script[item_id].xml
      +
    • +
    • function - is used for calling user-defined handler that should be set as the first parameter of setXMLAutoLoading() method.
      +
    • +
    + +
    + +

    Setting Escaping Mode

    +
    + +

    +Mode setEscapingMode() is responsible for setting escaping mode (used for escaping id in requests). This method sets the mode for transferring itree item information to the server: + +

    +
        <script>
    +        tree.setEscapingMode(mode);
    +    </script>
    +

    + +The following modes are available: +

    +
      +
    • default - uses native escape functionality of the browser;
      +
    • +
    • utf8 - is used for UTF escaping;
      +
    • +
    • none - data is not escaped.
      +
    • +
    + +
    +
    +

    Smart XML Parsing

    +
    + +

    +The idea of Smart XML Parsing is simple: the entire tree structure is loaded on the client side, but only nodes that should be displayed are rendered. This helps to decrease loading time +and general performance of large trees greatly. Plus, the entire tree structure is available for most of script methods (for example, searching is performed against all nodes, not only rendered ones). +

    + +
    + +

    Activating Smart XML Parsing

    +
    + +

    +To activate Smart XML Parsing, the user should apply the following method: + +

    +
        <script>
    +        tree.enableSmartXMLParsing(true); // false is used to disable
    +    </script>
    +

    + +Please, pay your attention to the fact that Smart XML Parsing does not work in case of loading fully expanded tree. +

    + +
    + +

    Getting Parsing State

    +
    + +

    +Parsing state can be got using getItemParsingState() method which takes item id as parameter: + +

    +
        <script>
    +        var state = tree.getItemParsingState(itemId);
    +    </script>
    +

    + +The method returns: +

    +
      +
    • 1 - item is already parsed;
      +
    • +
    • 0 - item is not parsed yet;
      +
    • +
    • -1 - item's parsing is in process.
      +
    • +
    + +
    +
    +

    Distributed Parsing

    +
    + +

    +Another way to increase performance of the tree with some levels containing more than 100-200 nodes per level was introduced. This functionality is called Distributed Parsing. The main +advantage of it lies in making the level visible and ready to use before it is completely parsed. Thus, items are loaded portion by portion with some timeouts. +

    + +
    + +

    Activating Distributed Parsing

    +
    + +

    +To enable this functionality, the user should make use of the following JS command: + +

    +
        <script>
    +        tree.enableDistributedParsing(mode,count,delay);
    +    </script>
    +

    + +Parameters of this method are: +

    +
      +
    • mode - true|false meaning enable|disable Distributed Parsing;
      +
    • +
    • count - number of nodes per portion (optional parameter);
      +
    • +
    • delay - delay between portions parsing, set in milliseconds (optional parameter).
      +
    • +
    + +

    +This functionaity is fully compatible with Smart XML Parsing. + +

    + +
    + +

    Getting Parsing State

    +
    + +

    +Current state of Distributed Parsing can be easily got in the following way: + +

    +
        <script>
    +    var state = tree.getDistributedParsingState(); // returns true|false
    +    </script>
    +

    + +This method returns either true (meaning that parsing is still in process) or false (meaning that parsing is already finished). +

    + +
    +
    +

    Smart Rendering

    +
    + +

    +In case the tree contains a lot of items per level (for instance, 500 and more), the user can increase overall performance using Smart Rendering mode. This mode allows loading big, not +well-formed trees. There is no need for any changes in data structure to switch this mode on. It's just enableSmartRendering() method that should be used before loading data in tree: + +

    +
        <script>
    +        tree.enableSmartRendering(true); // false is used to switch the mode off
    +    </script>
    +

    + +The important thing that should be taken into account is that this mode is incompatible with Distributed Parsing and Three-state checkboxes. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___initialization_of_dhtmlxtree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___initialization_of_dhtmlxtree.html new file mode 100755 index 0000000000..85e35db706 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___initialization_of_dhtmlxtree.html @@ -0,0 +1,593 @@ + + + + dhtmlxtree:initialization_of_dhtmlxtree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Initialization of dhtmlxTree

    +
    + +

    +dhtmlxTree can be initialized on page using one of the following initialization schemes: +

    +
      +
    • Object-based initialization;
      +
    • +
    • Initialization from HTML.
      +
    • +
    + +

    +Complete the following steps for any type of dhtmlxTree's initialization: +

    +
      +
    • Download the dhtmlxTree package from the server and place it in a folder;
      +
    • +
    • Create an html file;
      +
    • +
    • Place the full paths to dhtmlxTree's CSS and JS files into the header of the created html file.
      +
    • +
    +
        <head>  
    +        <link rel="stylesheet" type="text/css" href="[full path to this file]/dhtmlxtree.css">
    +        <script src="[full path to this file]/dhtmlxcommon.js"></script>
    +        <script src="[full path to this file]/dhtmlxtree.js"></script>   
    +    </head>
    +
    +
    +

    Setting Image Path

    +
    + +

    +Full path to tree's images can be set in dhtmlxTree with the help of method setImagePath(): + +

    +
        <script>
    +        tree.setImagePath("[full path to this category]/codebase/imgs/");
    +    </script>
    +

    + +The above mentioned method should be used after creation of new dhtmlXTreeObject, but before any of data loading methods. +

    + +

    +The following predefined icon sets are available in dhtmlxTree: +

    +
      +
    • default
      +
    • +
    + +

    + +

    +
      +
    • scbrblue
      +
    • +
    + +

    + +

    +
      +
    • yellowbooks
      +
    • +
    + +

    + +

    +
      +
    • bluefolders
      +
    • +
    + +

    + +

    +
      +
    • books
      +
    • +
    + +

    + +

    +
      +
    • vista
      +
    • +
    + +

    + +

    +
      +
    • winstyle
      +
    • +
    + +

    + +

    +
      +
    • bluebooks
      +
    • +
    + +

    + + +

    + +
    +
    +

    Object-Based Initialization

    +
    + +

    +The user needs to create an HTML container where dhtmlxTree will be placed later. In this example the container is a <div> element on page which is placed in the <body> tag: + +

    +
        <div id="treeBox" style="width:200;height:200"></div>
    +

    + +The next step is to create a new dhtmlXTreeObject and place it after the <div> element (container) that we've just created: + +

    +
        <script>
    +        var tree = new dhtmlXTreeObject("treeBox","100%","100%",0);
    +    </script>
    +

    + +Parameters passed to the constructor are the following: +

    +
      +
    • Object to attach the tree to (should be loaded before the constructor is called);
      +
    • +
    • Width of the tree;
      +
    • +
    • Height of the tree;
      +
    • +
    • Identifier of the tree root level (super root).
      +
    • +
    + +
    +
    +

    Initialization from HTML

    +
    + +

    +This type of initialization includes two sub-types: +

    +
      +
    • Initialization from an HTML list;
      +
    • +
    • Initialization from inline XML.
      +
    • +
    + +

    +The user can create the tree based on an HTML list or inline XML. In both casesб the list or XML should be placed into the DIV element that will be act as a container for the tree. XML should also be included into XMP tag. +It should be noted that any of tree methods starting with set or enable can be used as attributes of this DIV element to set/enable different tree properties. +

    + +
    + +

    Conversion

    +
    + +

    + +The following two types of conversion (of HTML data into the tree) are available: +

    +
      +
    • Automatic conversion - presupposes setting dhtmlxTree class for the top div element;
      +
    • +
    • Script conversion - calling dhtmlXTreeFromHTML() command with id of the div element to convert as the first argument.
      +
    • +
    + +
    + +

    Initialization from an HTML list

    +
    + +

    + +This type of initialization presupposes the following actions from user's side: +

    +
      +
    • Add dhtmlxtree_start.js file into the page;
      +
    • +
    • Choose type of conversion to use;
      +
    • +
    • Set some attributes defining tree-specific properties of the top div element:
      +
        +
      • setImagePath - sets path to tree's image files;
        +
      • +
      • id - name of a JS variable referenced to the tree object;
        +
      • +
      +
    • +
    • Use simple HTML list tags.
      +
    • +
    +
        <head>
    +        ...
    +        <script src="[full path to this file]/dhtmlxtree_start.js"></script>
    +    </head>
    + 
    + 
    + 
    +    <div class="dhtmlxTree" // for automatic conversion
    +        id="treeboxbox_tree"
    +        setImagePath="[full path to this category]/imgs/"
    +        style="width:250px; height:218px;overflow:auto;">
    +        <ul>
    +            <li>Root
    +                <ul>
    +                    <li>Child1
    +                <ul>
    +                    <li>Child 1-1</li>
    +                    </ul>
    +                    <li>Child2</li>
    +                    <li><b>Bold</b> <i>Italic</i></li>
    +                </ul>
    +            </li>
    +        </ul>
    +    </div>
    +    <script>
    +        var myTree = dhtmlXTreeFromHTML("treeboxbox_tree"); // for script conversion
    +    </script>
    +
    + +

    Initialization from Inline XML

    +
    + +

    + +Initialization of this kind allows the user to apply standard dhtmlxTree's XML structure enclosed into XMP tag inside the div element (the tree container). +The sequence of actions is as follows: +

    +
      +
    • Add dhtmlxtree_start.js file into the page;
      +
    • +
    • Choose type of conversion to use;
      +
    • +
    • Set some attributes defining tree-specific properties of the top div element:
      +
        +
      • setImagePath - sets path to tree's image files;
        +
      • +
      • id - name of JS variable referenced to ĐµÑ€Ñƒ tree object;
        +
      • +
      +
    • +
    • Apply XML structure in <xmp> tag.
      +
    • +
    +
        <div id="treeboxbox_tree"
    +        setImagePath="[full path to this category]/imgs/"
    +        class="dhtmlxTree"> // for automatic conversion 
    +    <xmp>
    +        <item text="Root" open="1" id="11">
    +            <item text="Child1" select="1" open="1" id="12">
    +                <item text="Child1-1" id="13"/>
    +            </item>
    +            <item text="Child2" id="14"/>
    +            <item id="15" text="Text"/>
    +        </item>
    +    </xmp>
    +    </div>
    +
    +
    +

    Data Loading

    +
    + +

    +The next step of initialization of dhtmlxTree component is Data Loading. The user can choose one of the following data loading possibilities: +

    +
      +
    • XML;
      +
    • +
    • JSON;
      +
    • +
    • CSV;
      +
    • +
    • JS array.
      +
    • +
    + +
    + +

    Data Loading from XML

    +
    + +

    + +loadXML() and loadXMLString() methods load menu data from XML: + +

    +
        <script>
    +        tree.loadXML(file, function); // loading from a file
    +        tree.loadXMLString(xmlString, function); // loading from an XML string
    +    </script>
    +

    + +These methods have the following parameters: +

    +
      +
    • file/xmlString- full path to the XML file/string containing tree data;
      +
    • +
    • function (optional parameter) - function that will be called when data is loaded (if specified).
      +
    • +
    + +

    +It should be noted that when using loadXML() without parameters, the system will load the URL specified in setXMLAutoLoading() method. +

    + +

    +getXMLState() method should be used to get the current state of XML loading: + +

    +
        <script>
    +        var xmlSate = tree.getXMLState(); // returns true if XML is being loaded at the moment
    +    </script>
    +

    + +See here for XML Syntax Template. +

    + +
    + +

    Data Loading from JSON

    +
    + +

    + +To load the tree from JSON, the user needs to have a JSON object or a file and load it using the following methods: + +

    +
        <script>
    +        tree.loadJSONObject(json_object, function); // loading from a script object
    +        tree.loadJSON(file, function); // loading from a file
    +    </script>
    +

    + +Both methods have the following parameters: +

    +
      +
    • json_object/file - object or file containing tree data;
      +
    • +
    • function (optional parameter) - function that will be called when data is loaded (if specified).
      +
    • +
    + +

    +See here for JSON Format Template. +

    + +
    + +

    Data Loading from CSV

    +
    + +

    + +This type of loading tree data presupposes that the user should have CSV represented as a string or a file. There are two methods that can be used in this case: + +

    +
        <script>
    +        tree.loadCSV(file, function); // loading from a file
    +        tree.loadCSVString(csvstring, function); // loading from a string
    +    </script>
    +

    + +Both methods have the following parameters: +

    +
      +
    • file/csvstring - file or string containing tree data;
      +
    • +
    • function (optional parameter) - function that will be called when data is loaded (if specified).
      +
    • +
    + +

    +See here for CSV Format Template. +

    + +
    + +

    Data Loading from JS Array

    +
    + +

    + +The tree can be loaded from a JS Array. The array as an object or as a file should be specified in the following methods: + +

    +
        <script>
    +        tree.loadJSArrayFile(file, function); // loading from a file
    +        tree.loadJSArray(array, function); // loading from an array object
    +    </script>
    +

    + +Both methods have the following parameters: +

    +
      +
    • file/array - file or array object containing tree data;
      +
    • +
    • function (optional parameter) - function that will be called when data is loaded (if specified).
      +
    • +
    + +

    +See here for JS Array Format Template. +

    + +
    +
    +

    Data Transfer Mode

    +
    + +

    +The user can set default data transfer mode in the following way: + +

    +
        <script>
    +        tree.setDataMode(mode);
    +    </script>
    +

    + +The following mode variants are available: +

    +
      +
    • JSON - sets JSON data transfer mode;
      +
    • +
    • XML - sets XML data transfer mode;
      +
    • +
    • CSV - sets CSV data transfer mode.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___navigation_and_selection_in_tree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___navigation_and_selection_in_tree.html new file mode 100755 index 0000000000..5763635105 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___navigation_and_selection_in_tree.html @@ -0,0 +1,306 @@ + + + + dhtmlxtree:navigation_and_selection_in_tree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Navigation and Selection in Tree

    +
    + +
    +
    +

    Navigation Manipulation

    +
    + +
    + +

    Enabling Keyboard Navigation

    +
    + +

    + +There is the possibility to enable keyboard navigation in dhtmlxTree. Using keyboard navigation, the user can select any item in the tree and use the following keys: +

    +
      +
    • Up arrow - selects the item above the currently selected one;
      +
    • +
    • Down arrow - selects the item below the currently selected one;
      +
    • +
    • Right arrow - opens the item;
      +
    • +
    • Left arrow - closes the item;
      +
    • +
    • Enter - calls item's action;
      +
    • +
    • F2 - edits the selected item;
      +
    • +
    • Esc - closes the editor.
      +
    • +
    + +

    +Keyboard navigation in the tree can be enabled/disabled in the following way: + +

    +
        <script>
    +        tree.enableKeyboardNavigation(true|false);
    +    </script>
    +

    + +This method should be called before any of the data loading methods. +

    + +
    + +

    Assigning Navigation Keys

    +
    + +

    + +The user can also set new navigation keys using assignKeys() method: + +

    +
        <script>
    +        tree.assignKeys([["up",104],["down",98],["open",102],["close",100],["call",101]]); // should be called when keyboard navigation is already switched on
    +    </script>
    +

    + +The first parameter is the name of the action, the second one indicates the key code. +

    + +
    +
    +

    Selection Manipulation

    +
    + +
    + +

    Focusing Item

    +
    + +

    + +The method below allows to scroll to the indicated item from script: + +

    +
        <script>
    +        tree.focusItem(itemId);
    +    </script>
    +

    + +In this case the item is not selected/highlighted. +

    + +
    + +

    Selecting Item

    +
    + +

    + +To select an item from script, the user should call the following command: + +

    +
        <script>
    +        tree.selectItem(itemId,mode,preserve);
    +    </script>
    +

    + +The parameters here are as follows: +

    +
      +
    • itemId - item id;
      +
    • +
    • mode(true|false) - if set to true, script function for the selected item will be called;
      +
    • +
    • preserve(true|false) - preserve earlier selected items, it is set to false by default.
      +
    • +
    + +
    + +

    Clearing Selection

    +
    + +

    + +Method clearSelection() removes the selection of the specified item in the tree: + +

    +
        <script>
    +        tree.clearSelection(itemId);
    +    </script>
    +
    + +

    Enabling Multiselection

    +
    + +

    + +Multiselection in the tree allows the user to select multiple items using Ctrl+click. Drag-and-drop is also supported in multiselection mode, as well as Cut and Paste functionality. + +

    +
        <script>
    +        tree.enableMultiselection(mode, strict);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • mode(true|false) - this parameter is responsible for enabling|disabling multiselection;
      +
    • +
    • strict(true|false) - whether the strict mode is on/off; the strict mode presupposes that only items on the same level can be objects of multiselection.
      +
    • +
    + +
    + +

    Enable Item Highlighting

    +
    + +

    + +There is the possibility to switch on item's highlighting feature - when it is on, item's label will be highlighted when the mouse pointer is over it. This feature is operated like this: + +

    +
        <script>
    +        tree.enableHighlighting(true|false); // is switched off by default
    +    </script>
    +

    + +When this method is set to false, it is switched off, while setting it to true, switches this feature on. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___nodes_manipulation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___nodes_manipulation.html new file mode 100755 index 0000000000..63cc1b7a1f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___nodes_manipulation.html @@ -0,0 +1,1420 @@ + + + + dhtmlxtree:nodes_manipulation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Nodes Manipulation

    +
    + +
    +
    +

    Adding/Removing Items

    +
    + +
    + +

    Adding Parent Item

    +
    + +

    + +Parent tree nodes can be easily added to the tree from script with the help of insertNewNext() method. The following incoming parameters should be indicated in this method: +

    +
      +
    • siblingId - id of the item after which the new one will be created;
      +
    • +
    • itemId - id of the new item;
      +
    • +
    • label - text of the new item;
      +
    • +
    • action - 0 in most cases, but can be a custom function;
      +
    • +
    • imageClosed - image for a collapsed item; if 0 is indicated - the default one is used;
      +
    • +
    • imageOpen - image for an expanded item; if 0 is indicated - the default one is used;
      +
    • +
    • imageLeaf - image for a leaf item; if 0 is indicated - the default one is used;
      +
    • +
    • additional options - a comma delimited string of the following possible values (upper case only):
      +
        +
      • SELECT - move selection to this item after its creation;
        +
      • +
      • CALL - call a function on select;
        +
      • +
      • TOP - add this item to the top position;
        +
      • +
      • CHILD - the node contains child items;
        +
      • +
      • CHECKED - the checkbox is checked (if exists).
        +
      • +
      +
    • +
    +
        <script>
    +        tree.insertNewNext(1,2,"New Node 2",0,0,0,0,"CHILD,CHECKED");
    +    </script>
    +
    + +

    Adding Child Node

    +
    + +

    + +Method insertNewChild() allows to add a new child item for the chosen tree node. The parameters the user should indicate are: +

    +
      +
    • parentId - id of the parent item in which the new child will be created;
      +
    • +
    • itemId - id of the new item;
      +
    • +
    • label - text of the new item;
      +
    • +
    • action - 0 in most cases, but can be a custom function;
      +
    • +
    • imageClosed - image for a collapsed item; if 0 is indicated - the default one is used;
      +
    • +
    • imageOpen - image for an expanded item; if 0 is indicated - the default one is used;
      +
    • +
    • imageLeaf - image for a leaf item; if 0 is indicated - the default one is used;
      +
    • +
    • additional options - a comma delimited string of the following possible values (upper case only):
      +
        +
      • SELECT - move selection to this item after its creation;
        +
      • +
      • CALL - call a function on item's select;
        +
      • +
      • TOP - add this item to the top position;
        +
      • +
      • CHILD - the node contains child items;
        +
      • +
      • CHECKED - the checkbox is checked (if exists).
        +
      • +
      +
    • +
    +
        <script>
    +        tree.insertNewChild(0,1,"New Node 1",0,0,0,0,"SELECT,CALL,TOP,CHILD,CHECKED");
    +    </script>
    +

    + +The item added as a child will be created always the last among other child items for the specified parent. +

    + +
    + +

    Removing Item

    +
    + +

    + +Any item can be easily removed from the tree in the following way: + +

    +
        <script>t
    +        tree.deleteItem(itemId, selectParent);
    +    </script>
    +

    + +The parameters the user should specify are: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • selectParent(true|false) - if set to true, the parent item of the removed one becomes selected when the removal is done, while false means that no other item will be selected in the tree after removal of the indicated item.
      +
    • +
    + +
    + +

    Removing All Child Items

    +
    + +

    + +The following method allows the user to remove all child items of a certain node very easily: + +

    +
        <script>
    +        tree.deleteChildItems(itemId);
    +    </script>
    +
    +
    +

    Collapsing/Expanding Items

    +
    + +
    + +

    Expanding Parent Item on Child Adding

    +
    + +

    + +There is a possibility in dhtmlxTree to set whether a parent item will be expanded or not when a child item is added to it. + +

    +
        <script>
    +        tree.openOnItemAdded(mode);
    +    </script>
    +

    + +The method can be set either to true (the parent item will be expanded on child adding) or to false (the parent item won't be expanded). +

    + +
    + +

    Collapsing/Expanding Item

    +
    + +

    + +There is the possibility to expand/collapse any node in dhtmlxTree from script. The only value that the user should indicate, is the id of the item in question: + +

    +
        <script>
    +        tree.openItem(itemId); // expand the indicated item
    +        tree.closeItem(itemId); // collapse the indicated item
    +    </script>
    +
    + +

    Collapsing/Expanding All Items

    +
    + +

    + +The user can also expand/collapse all items in the tree. The optional parameter here is the id of the item starting from which all items will be expanded/collapsed: + +

    +
        <script>
    +        tree.openAllItems(itemId); // expand all items
    +        tree.closeAllItems(itemId); // collapse all items
    +    </script>
    +

    + +The method to expand all tree items that is similar to the above mentioned one but that works in dynamical trees: + +

    +
        <script>
    +        tree.openAllItemsDynamic(itemId); // expands all items in a dynamical tree
    +    </script>
    +
    + +

    Expanding Item's List

    +
    + +

    + +The method to expand a list of tree items in dynamical tree (items are expanded one by one, the next item will be opened only when the previous one is loaded): + +

    +
        <script>
    +        tree.openItemsDynamic(list,flag);
    +    </script>
    +

    + +The parameters are: +

    +
      +
    • list - list of nodes ids that will be expanded;
      +
    • +
    • flag (true|false) - indicates whether the last node in the list will be selected (true) or not (false).
      +
    • +
    + +
    + +

    Prevent Item from Collapsing

    +
    + +

    + +There is a method that can prevent the item from collapsing: + +

    +
        <script>
    +        tree.setItemCloseable(itemId,flag);
    +    </script>
    +

    + +The parameters here are as follows: +

    +
      +
    • itemId - id of the node;
      +
    • +
    • flag(true|false) - if set to false, prevents the item from collapsing.
      +
    • +
    + +
    + +

    Getting Item State

    +
    + +

    + +Item's state (expanded|collapsed) can be got in the following way: + +

    +
        <script>
    +         var state = tree.getOpenState(itemId);
    +    </script>
    +

    + +The method returns true if the item in question is expanded, and false if the item is collapsed. +

    + +
    + +

    Locking Tree/Item

    +
    + +

    + +By locking the tree, the user denies expanding|collapsing tree nodes. By default the tree isn't locked (false). To lock the tree, lockTree() method should be set to true: + +

    +
        <script>
    +        tree.lockTree(true); // false to unlock the tree
    +    </script>
    +

    + +Any item, whether it is a parent or a child one, can be also locked by method lockItem(): + +

    +
        <script>
    +        tree.lockItem(itemId); // id of the item as the input parameter
    +    </script>
    +
    + +

    Getting Locking State

    +
    + +

    + +To get the state (locked|unlocked) of any item in the tree, the user should apply the following method: + +

    +
        <script>
    +        var itemState = tree.isLocked(itemId); // returns current item's state
    +    </script>
    +

    + +If the item in question is locked, the method returns true, if it is unlocked, false is returned. + +

    + +
    +
    +

    Editing Item

    +
    + +
    + +

    Making Items Editable

    +
    + +

    + +Any item in the tree can be made editable - double click on the item allows to edit its title text. By default all items in the tree are not editable (false). To make them so, the user should write the following code line: + +

    +
        <script>
    +        tree.enableItemEditor(true); // false to deny items editing
    +    </script>
    +
    + +

    Activating Editor for Item

    +
    + +

    + +The user can activate the editor for a specified item from script with the help of method editItem(). The only parameter that should be specified is id of this item: + +

    +
        <script>
    +        tree.editItem(itemId);
    +    </script>
    +
    + +

    Deactivating Editor for Item

    +
    + +

    + +Item's editor can be easily deactivated from script bringing the item back to its normal view: + +

    +
        <script>
    +        tree.stopEdit();
    +    </script>
    +
    + +

    Defining Editing Event

    +
    + +

    +The event that starts item's editing can be defined from script in the following way: + +

    +
        <script>
    +        tree.setEditStartAction(click, dblclick);
    +    </script>
    +

    + +The parameters define the following: +

    +
      +
    • click(true|false) - item's editing will be activated by a click on the selected item;
      +
    • +
    • dblclick(true|false) - item's editing will be activated by a double click on the selected item.
      +
    • +
    + +
    +
    +

    Integration with Cookies

    +
    + +
    + +

    Saving Items' States to Cookies

    +
    + +

    + +The user has the possibility to store states of items to cookies in the following way: + +

    +
        <script>
    +        tree.saveOpenStates(cookie_name,cookie_param);
    +    </script>
    +

    + +The parameters of this method are: +

    +
      +
    • cookie_name - name of the cookie (optional parameter);
      +
    • +
    • cookie_param - additional parameters added to cookie.
      +
    • +
    + +
    + +

    Restoring Items' States from Cookies

    +
    + +

    + +There is a method that restores items' states (expanded|collapsed) from cookie's information: + +

    +
        <script>
    +        tree.loadOpenStates(cookie_name); // the parameter is optional
    +    </script>
    +
    + +

    Saving Selection to Cookies

    +
    + +

    + +Item's selection can be also stored in cookies in the following way: + +

    +
        <script>
    +        tree.saveSelectedItem(cookie_name,cookie_param);
    +    </script>
    +

    + +The parameters of this method are: +

    +
      +
    • cookie_name - name of the cookie (optional parameter);
      +
    • +
    • cookie_param - additional parameters added to cookie.
      +
    • +
    + +
    + +

    Restoring Selection from Cookies

    +
    + +

    + +Item's selection can be restored from cookie in the following way: + +

    +
        <script>
    +        tree.restoreSelectedItem(cookie_name); // the parameter is optional
    +    </script>
    +
    + +

    Saving Tree to Cookies

    +
    + +

    + +Method saveState() stores the whole tree to cookies: + +

    +
        <script>
    +        tree.saveState(cookie_name,cookie_param);
    +    </script>
    +

    + +The parameters of this method are: +

    +
      +
    • cookie_name - name of the cookie (optional parameter);
      +
    • +
    • cookie_param - additional parameters added to cookie
      +
    • +
    + +
    + +

    Restoring Tree from Cookies

    +
    + +

    + +Method loadState() restores the whole tree from cookies: + +

    +
        <script>
    +        tree.loadState(cookie_name); // the parameter is optional
    +    </script>
    +
    + +

    Enabling Item's Auto Saving

    +
    + +

    + +dhtmlxTree allows its users to save the selected node automatically in cookies. Method enableAutoSavingSelected() is used to switch this on|off in the tree: + +

    +
        <script>
    +        tree.enableAutoSavingSelected(mode,cookieName);
    +    </script>
    +

    + +The parameters are: +

    +
      +
    • mode(true|false) - indicates whether the auto saving is on|off;
      +
    • +
    • cookieName - name of the cookie.
      +
    • +
    + +
    +
    +

    Item Text, Tooltip, Color Manipulation

    +
    + +
    + +

    Setting Item's Label

    +
    + +

    + +The user can set the label (text) of a tree node in the following way: + +

    +
        <script>
    +        tree.setItemText(itemId, newLabel, newTooltip);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • newLabel - new text for item's label;
      +
    • +
    • newTooltip - the text indicated in this parameter will be used as item's tooltip text (optional parameter).
      +
    • +
    + +
    + +

    Getting Item's Label

    +
    + +

    + +The user has the possibility to get text of item's label indicating item's id in the following way: + +

    +
        <script>
    +        var text = tree.getItemText(itemId);
    +    </script>
    +

    + +The user can also get the text of the currently selected item in the following way: + +

    +
        <script>
    +        var textSelected = tree.getSelectedItemText();
    +    </script>
    +
    + +

    Setting Item's Color

    +
    + +

    + +The following line of code is responsible for node's color (text color) in the tree: + +

    +
        <script>
    +        tree.setItemColor(itemId, defaultColor, selectedColor);
    +    </script>
    +

    + +The parameters the user should specify are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • defaultColor - item's color;
      +
    • +
    • selectedColor - item's color for a selected state.
      +
    • +
    + +
    + +

    Getting Item's Color

    +
    + +

    + +Item's color can be easily got by item id in the following way: + +

    +
        <script>
    +        car color = tree.getItemColor(itemId);
    +    </script>
    +

    + +The object returned by the above mentioned method has parameters { acolor:“valueâ€, scolor:“value†} where: +

    +
      +
    • acolor - means color for the normal state of the item;
      +
    • +
    • scolor - means color for the selected state of the item.
      +
    • +
    + +

    +The format of the color will be the same as it was set in setItemColor() method. +

    + +
    + +

    Setting Item's Tooltip

    +
    + +

    + +There are three ways to set tooltip for an item in dhtmlxTree: +

    +
      +
    • Using node's text (“label†attribute of a node) as tooltip. In this case the following method should be used:
      +
    • +
    +
        <script>
    +        tree.enableAutoTooltips(true|false); // false by default
    +    </script>
      +
    • Using “tooltip†attribute of a node in XML (it is used by default if this attribute was specified);
      +
    • +
    • Using setItemText method specifying its third parameter.
      +
    • +
    + +
    + +

    Getting Item's Tooltip

    +
    + +

    + +Item's tooltip is also easy to get with the help of getItemTooltip() method indicating item id: + +

    +
        <script>
    +        var tooltip = tree.getItemTooltip(itemId);
    +    <script>
    +
    +
    +

    Refreshing and Updating Items

    +
    + +
    + +

    Refreshing Item/Items

    +
    + +

    + +The following method is used to refresh data for the specified node: + +

    +
        <script>
    +        tree.refreshItem(itemId); // if item id is not indicated, id of the top tree item will be used
    +    </script>
    +

    + +The code string mentioned above presupposes that all the child items of the indicated node are removed, an XML file (indicated in setXMLAutoLoading(); auto loading should be activated) is loaded from the server. The data from this file is used for creating new child items of the node in question. +

    + +

    +The following method is used to refresh data for several nodes: + +

    +
        <script>
    +        tree.refreshItems(itemIdList, source);
    +    </script>
    +

    + +The parameters of this method include the list of items that should be refreshed, and the path to the XML file from which new data will be loaded. +In this case, the data is refreshed only for nodes indicated in itemIdList (not their children). +

    + +
    + +

    Smart Branch Refreshing

    +
    + +

    + +There is one more possibility to refresh tree data. smartRefreshBranch() method is able to load XML from the server and refresh data for the specified branch (text, icons, items). It should be noted that the current position and all changes introduced by the user stay the same in this case. + +

    +
        <script>
    +        tree.smartRefreshBranch(itemId,source);
    +    </script>
    +

    + +The parameters here are responsible for: +

    +
      +
    • itemId - id of the item from which the refreshing starts in the branch;
      +
    • +
    • source - server side script, optional parameter. If it is not set, the system will use the source indicated in setXMLAutoLoading().
      +
    • +
    + +
    + +

    Smart Item Refreshing

    +
    + +

    + +Method smartRefreshItem() is responsible for loading XML which data is used for refreshing the specified item in the tree. As with the previous method, this one keeps the current position of the item and all other changes introduced by the user. + +

    +
        <script>
    +        tree.smartRefreshItem(itemId,source);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • source - server side script, optional parameter. If it is not set, the system will use the source indicated in setXMLAutoLoading().
      +
    • +
    + +
    + +

    Updating Item

    +
    + +

    + +There is a simple way of updating items in dhmlxTree - updateItem() method. The used should indicate the id of the item that is going to be updated, and parameters that are going to be updated: + +

    +
        <script>
    +        tree.updateItem(itemId,name,im0,im1,im2,achecked);
    +    </script>
    +

    + +The parameters of this method are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • name - title text of the item;
      +
    • +
    • im0 - the icon for a leaf node;
      +
    • +
    • im1 - the icon for an expanded parent node;
      +
    • +
    • im2 - the icon for a collapsed parent node;
      +
    • +
    • achecked(true|false) - whether the checkbox is checked (true) or not (false).
      +
    • +
    + +
    +
    +

    Items Ids Manipulation

    +
    + +
    + +

    Getting List of Parent Items Ids

    +
    + +

    + +The following methods allow the user to get ids of all parent tree nodes: + +

    +
        <script>
    +        var parents = tree.getAllItemsWithKids(); // returns the array of nodes ids
    +    </script>
    +
    + +

    Getting List of Leaf Items Ids

    +
    + +

    + +The user can get the list of ids of all tree items that do not have child nodes (childless items): + +

    +
        <script>
    +        var childless = tree.getAllChildless(); // returns the array of nodes ids
    +    </script>
    +
    + +

    Getting List of Sub-Items Ids

    +
    + +

    + +The user can easily get ids of all sub-items starting from the item which id is indicated in this method: + +

    +
        <script>
    +        var subItems = tree.getAllSubItems(itemId);
    +    </script>
    +

    + +Getting the list of all sub-items ids for the specified item is quite easy. This parent item id should be specified: + +

    +
        <script>
    +        tree.getSubItems(itemId);
    +    </script>
    +
    + +

    Changing Item Id

    +
    + +

    + +The user can change any node's id if there's such a need in the following way: + +

    +
        <script>
    +        tree.changeItemId(itemCurrentId,itemNewId);
    +    </script>
    +
    + +

    Getting Child Item Id

    +
    + +

    + +The user can get any child item id by its index (sequence number) and the id of its parent: + +

    +
        <script>
    +        var childId = tree.getItemIdByIndex(itemId,index);
    +    </script>
    +

    + +The parameters are: +

    +
      +
    • itemId - id of the parent item;
      +
    • +
    • index - sequence number of the child item (starting with 0).
      +
    • +
    + +
    + +

    Getting Child Item Index

    +
    + +

    + +Child item's index (sequence number) can be easily got by its id: + +

    +
        <script>
    +        var childIndex = tree.getIndexById(itemId);
    +    </script>
    +

    + +The parameter is id of the child item which index the user wants to get. +

    + +
    + +

    Getting Item's Parent Id

    +
    + +

    + +getParentId() method can be used to get item's parent id: + +

    +
        <script>
    +        var parent = tree.getParentId(itemId);
    +    </script>
    +

    + +The id of the item should be indicated as the parameter. +

    + +
    + +

    Getting Ids List of Checked/Unchecked Tree Items

    +
    + +

    + +The ids of all checked/unchecked items in the tree can be easily got by getAllChecked() method: + +

    +
        <script>
    +        var list = tree.getAllChecked(); // returns the array of all checked items ids
    +            // or
    +        var list = tree.getAllUnchecked(); // returns the array of all unchecked items ids
    +    </script>
    +
    + +

    Getting Ids List of Partially Checked Items

    +
    + +

    + +The method, similar to the above mentioned ones, exists for getting the ids of all partially checked items in the tree: + +

    +
        <script>
    +        var list = tree.getAllPartiallyChecked(); // returns the array of all checked items ids
    +    </script>
    +
    + +

    Getting Ids List of Checked Branches

    +
    + +

    + +Ids of all checked branches in the tree can be got like this: + +

    +
        <script>
    +        var list = tree.getAllCheckedBranches(); // returns the array of all checked branches ids
    +    </script>
    +
    + +

    0 Getting Selected Item Id

    +
    + +

    + +Selected item's id is easy to get through getSelectedItemId() method which takes item id as the parameter: + +

    +
        <script>
    +        var selectId = tree.getSelectedItemId();
    +    </script>
    +
    + +

    1 Setting List Separator

    +
    + +

    + +There is a simple way of setting list separator in dhtmlxTree: + +

    +
        <script>
    +        tree.setListDelimeter(separator); // by default the separator is ","
    +    </script>
    +

    + +There is only one parameter here - separator - char or string used for separating items in lists. + +

    + +
    +
    +

    Items Position Manipulation

    +
    + +
    + +

    Moving Items

    +
    + +

    + +Any item in the tree can be moved with the help of moveItem() method. + +

    +
        <script>
    +        tree.moveItem(itemId, mode, targetId, targetTree);
    +    </script>
    +

    + +The following parameters should be specified for this method: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • mode - one of the moving modes available:
      +
        +
      • left - the item will be moved to the left of node's current position;
        +
      • +
      • up - the item will be moved one level up in the hierarchy;
        +
      • +
      • up_strict - the item will be moved one position up, but will remain in the same level of the hierarchy;
        +
      • +
      • down - the item will be moved one level down in the hierarchy;
        +
      • +
      • down_strict - the item will be moved one position down, but will remain in the same level of the hierarchy;
        +
      • +
      • item_child - the item will be made child of the target item;
        +
      • +
      • item_sibling - the item will be made sibling of the target item, and will be placed before the target item;
        +
      • +
      • item_sibling_next - the item will be made sibling of the target item, and will be placed after the target item;
        +
      • +
      +
    • +
    • targetId - id of the item relative to which the item in question will be moved;
      +
    • +
    • targetTree (optonal) - the object of some other tree the item in question is moved into.
      +
    • +
    + +
    + +

    Cutting/Pasting Items

    +
    + +

    + +One more way of nodes moving is through doCut() and doPaste() commands. But they work only with selected items: + +

    +
        <script>
    +        tree.doCut(); // marks the selected item as cut
    +        tree.doPaste(itemId); // id of a new parent node
    +    </script>
    +

    + +The cut item will be made a child node of the item indicated in the method doPaste(). +

    + +
    + +

    Clearing Cut Mark

    +
    + +

    + +To clear the mark made by doCut() method, the user is advised to use clearCut() one: + +

    +
        <script>
    +        tree.clearCut();
    +    </script>
    +
    + +

    Getting Item's Level

    +
    + +

    + +There is a method in dhtmlxTree that allows the user to get item's current level (position in hierarchy) indicating this item's id: + +

    +
        <script>
    +        var level = getLevel(itemId);
    +    </script>
    +
    + +

    Setting Item Top Offset

    +
    + +

    + +There is the possibility to set top offset for a tree item using the following method: + +

    +
        <script>
    +        tree.setItemTopOffset(itemId,value);
    +    </script>
    +

    + +The parameters are: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • value - offset value.
      +
    • +
    + +
    +
    +

    Calculating Items

    +
    + +
    + +

    Setting Calculation Mode

    +
    + +

    + +The user can set calculation mode for the tree in the following way: + +

    +
        <script>
    +        tree.setChildCalcMode(mode); // disabled by default
    +    </script>
    +

    + +There are the following mode variants available: +

    +
      +
    • child - direct child items, no recursive;
      +
    • +
    • leafs - direct child items without sub-items, no recursive;
      +
    • +
    • childrec - child items (leaf items and those with their own child items), recursive;
      +
    • +
    • leafsrec - child items without sub-items, recursive;
      +
    • +
    • disabled - disable this mode.
      +
    • +
    + +

    +All tree child nodes will be calculated in this mode. +

    + +
    + +

    Setting Calculation HTML

    +
    + +

    + +Along with setting the calculation mode for child items, the user can specify calculation HTML like this: + +

    +
        <script>
    +        tree.setChildCalcHTML(htmlA,htmlB);
    +    </script>
    +

    + +The parameters here are: +

    +
      +
    • htmlA - prefix of the calculator (â€[†by default);
      +
    • +
    • htmlB - postfix of the calculator (â€]†by default).
      +
    • +
    + +
    + +

    Getting Number of Child Items

    +
    + +

    + +The number of child items of a certain parent can be got in the following way: + +

    +
        <script>
    +        var childItems = tree.hasChildren(itemId);
    +    </script>
    +
    +
    +

    User Data Manipulation

    +
    + +
    + +

    Setting User Data

    +
    + +

    +User data can be set for any tree item in dhtmlxTree: + +

    +
        <script>
    +        tree.setUserData(itemId,name,value);
    +    </script>
    +

    + +The parameters of this method are: +

    +
      +
    • iteId - id of the item in question;
      +
    • +
    • name - name of user data;
      +
    • +
    • value - value of user data.
      +
    • +
    + +
    + +

    Getting User Data

    +
    + +

    + +User data set for a tree node can be got in the following way: + +

    +
        <script>
    +        var userData = tree.getUserData(itemId,name);
    +    </script>
    +

    + +The parameters of this method are: +

    +
      +
    • iteId - id of the item in question;
      +
    • +
    • name - name of user data.
      +
    • +
    + +
    +
    +

    Using Link-Like Functionality in Tree

    +
    + +

    +Any node if the tree can have link-like functionality specified for it. The link for an item can be set by user in XML. The user should also specify onClick event for the item with link-like functionality. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___radio_buttons_manipulation.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___radio_buttons_manipulation.html new file mode 100755 index 0000000000..750f8f6888 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___radio_buttons_manipulation.html @@ -0,0 +1,180 @@ + + + + dhtmlxtree:radio_buttons_manipulation [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Radio Buttons Manipulation

    +
    + +
    +
    +

    Enabling/Disabling Radio Buttons

    +
    + +
    + +

    Enabling/Disabling Radio Buttons for Tree

    +
    + +

    + +dhtmlxTree supports radio buttons. To turn them on for the whole tree, the user should call the following method: + +

    +
        <script>
    +        tree.enableRadiobuttons(true); // false - disables radio buttons for the whole tree
    +    </script>
    +

    + +This method should be called before data loading in the tree takes place. +

    + +
    + +

    Enabling/Disabling Radio Buttons for Items

    +
    + +

    + +There is the possibility to enable radio buttons for child items of a certain node in the tree. In this case, the checkboxes of these child items will be replaced by radio buttons: + +

    +
        <script>
    +        tree.enableCheckboxes(true); //enable checkboxes
    +        tree.enableRadiobuttons(true, itemId);  // enable radio buttons for child items of a certain node; false to disable
    +    </script>
    +
    + +

    Enabling/Disabling Single Radio Mode

    +
    + +

    + +Method enableSingleRadioMode() changes radio buttons logic in the way that there can be only one checked radio button in the whole tree. To switch this mode on, the user should write the following code line: + +

    +
        <script>
    +        tree.enableSingleRadioMode(mode, itemId);
    +    </script>
    +

    + +The parameters are: +

    +
      +
    • mode(true|false) - whether single radio mode is enabled/disabled;
      +
    • +
    • itemId - id of the item that will be checked.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___searching_and_sorting_in_tree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___searching_and_sorting_in_tree.html new file mode 100755 index 0000000000..bee91ebb92 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___searching_and_sorting_in_tree.html @@ -0,0 +1,252 @@ + + + + dhtmlxtree:searching_and_sorting_in_tree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    Searching and Sorting in Tree

    +
    + +
    +
    +

    Searching in Tree

    +
    + +
    + +

    Enabling Auto Search

    +
    + +

    +First, the meaning of auto search should be explained. When auto selected is switched on, the user can just select any item in the tree and start typing. The tree item, which name +is the closes to the typed one, will be selected. Restarting search is done by using the backspace button. +Auto search can be enabled only after enabling keyboard navigation: + +

    +
        <script>
    +        tree.enableKeyboardNavigation(true);
    +        tree.enableKeySearch(true); // false to disable
    +    </script>
    +

    + +This method should be called before any of the data loading methods. +

    + +
    + +

    Searching Tree

    +
    + +

    +The tree can be searched from script with the help of methods findItem() and findItemIdByLabel(). The methods differ in one thing: whether the searched item will be selected and focused when found or not: + +

    +
        <script>
    +        tree.findItem(searchStr, direction, top); // the item will be selected and focused when found
    +            // or
    +        tree.findItemIdByLabel(searchStr, direction, top); // the item will not be selected and focused when found
    +    </script>
    +

    + +The parameters of both these methods are: +

    +
      +
    • searchStr - the search query;
      +
    • +
    • direction(false|true) - direction of the search, from the top to the bottom (false), and vice versa (true);
      +
    • +
    • top(true|false) - start searching from the top (true) or start searching from the currently selected item (false).
      +
    • +
    + +
    +
    +

    Sorting in Tree

    +
    + +
    + +

    Sorting Tree

    +
    + +

    +dhtmlxTree allows its users to sort the tree in ASC or DES orders: + +

    +
        <script>
    +        tree.sortTree(itemId, oder, all_levels);
    +    </script>
    +

    + +The user should indicate the following parameters: +

    +
      +
    • itemId - id of the node sorting starts from;
      +
    • +
    • oder(ASC|DES) - sorting order;
      +
    • +
    • all_levels(true|false) - sorting the tree by all levels (true), or by current level.
      +
    • +
    + +
    + +

    Custom Defined Sorting

    +
    + +

    +The user can set custom sort function. The function should have two parameters - id_of_item1,id_of_item2. For example: + +

    +
        <script>
    +            //define the comparator (in our case it compares the second words in labels)
    +        function mySortFunc(idA,idB){
    +            a=(tree.getItemText(idA)).split(" ")[1]||"";
    +            b=(tree.getItemText(idB)).split(" ")[1]||"";
    +            return ((a&amp;gt;b)?1:-1);
    +        }
    +    </script>
    +

    + +Then setCustomSortFunction() method should be called taking the name of the function as the incoming parameter: + +

    +
        <script>
    +            //attach the comparator to the tree
    +        tree.setCustomSortFunction(mySortFunc);
    +    </script>
    +

    + +It should be noted that if custom comparator is specified, sortTree() method will use it for sorting. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___serialization_caching_and_removing_tree.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___serialization_caching_and_removing_tree.html new file mode 100755 index 0000000000..6d3fe73669 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___serialization_caching_and_removing_tree.html @@ -0,0 +1,241 @@ + + + + dhtmlxtree:serialization_caching_and_removing_tree [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Serialization, Caching and Removing Tree

    +
    + +
    +
    +

    Serializing Tree

    +
    + +

    +The user can get an XML representation (as a string) of the tree using method serializeTree(): + +

    +
        <script>
    +        tree.serializeTree();
    +    </script>
    +

    + +Also there is the possibility to return the tree as a JSON string like this: + +

    +
        <script>
    +        tree.serializeTreeToJSON();
    +    </script>
    +
    +
    +

    Setting Serialization Level

    +
    + +

    +XML serialization can be easily configured in the following way: + +

    +
        <script>
    +        tree.setSerializationLevel(userData,fullXML,escapeEntities,userDataAsCData,DTD);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • userData - enable/disable user data serialization;
      +
    • +
    • fullXML - enable/disable full XML serialization;
      +
    • +
    • escapeEntities - convert tag brackets to related html entities;
      +
    • +
    • userDataAsCData - output user data in CDATA sections;
      +
    • +
    • DTD - if specified, then set as XML's DTD.
      +
    • +
    + +
    +
    +

    Preventing Caching in IE

    +
    + +

    +The user can prevent caching in IE by adding random value to URL string with the help of method preventIECaching(): + +

    +
        <script>
    +        tree.preventIECaching(true|false); // false by default
    +    </script>
    +
    +
    +

    Registering XML Entity

    +
    + +

    +There is the possibility in dhtmlxTree to register an XML entity for replacement of special symbols while initialization of the tree (default ones are: ampersand, “less then†and “greater then†symbols): + +

    +
     
    +      <script>
    +          tree.registerXMLEntity(rChar,rEntity);
    +      </script>
    + 
    + 
    +

    + +The parameters are the following: +

    +
      +
    • rChar - source char;
      +
    • +
    • rEntity - target entity.
      +
    • +
    + +
    +
    +

    Removing Tree

    +
    + +

    +There is a simple method that allows the user to remove the tree completely and to clear memory: + +

    +
        <script>
    +        tree.destructor();
    +    </script>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___setting_tree_appearance.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___setting_tree_appearance.html new file mode 100755 index 0000000000..97f30c8acb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___setting_tree_appearance.html @@ -0,0 +1,676 @@ + + + + dhtmlxtree:setting_tree_appearance [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Setting Tree Appearance

    +
    + +
    +
    +

    Tree Lines and Icons Manipulation

    +
    + +
    + +

    Enabling/Disabling Tree Lines

    +
    + +

    +Tree lines are tiny lines that visually “connect†elements of the tree. These lines can be enabled|disabled from script easily: + +

    +
        <script>
    +        tree.enableTreeLines(true|false); // true by default
    +    </script>
    +
    + +

    Setting +/- Icons

    +
    + +

    + +â€+†and â€-†icons indicate whether a parent node is closed or opened. setImageArrays() is used to set these images: + +

    +
        <script>
    +        tree.setImageArrays(arrayName,image1,image2,image3,image4,image5);
    +    </script>
    +

    + +The parameters for this method are as follows: +

    +
      +
    • arrayName - name of array: plus, minus;
      +
    • +
    • image1 - line crossed image (+);
      +
    • +
    • image2 - image with top line (Đ³);
      +
    • +
    • image3 - image with bottom line (L);
      +
    • +
    • image4 - image without line ( );
      +
    • +
    • image5 - single root image (-).
      +
    • +
    + +
    + +

    Showing/Hiding +/- Icons

    +
    + +

    + +There is a simple way of showing/hiding +/- signs of a certain item: + +

    +
        <script>
    +        tree.showItemSign(itemId,mode);
    +    </script>
    +

    + +The following parameters should be indicated: +

    +
      +
    • itemId - id of the item which +/- icon will be shown/hidden;
      +
    • +
    • mode(true|false) - true stands for showing the icon, false means hiding it.
      +
    • +
    + +

    +This method works only for individual items, not for the entire tree. +

    + +
    + +

    Specifying Icons for Locked Items

    +
    + +

    + +If the user wants to specify the icons for locked state of tree items, they should be indicated before any of the data loading methods: + +

    +
        <script>
    +        ...
    +        tree.setLockedIcons("lock.gif","lock.gif","lock.gif");
    +        tree.loadXML("tree.xml")
    +    </script>
    +

    + +The parameters of setLockedIcons() method indicate paths to the icons that will be used for locked nodes: +

    +
      +
    • m0 - icon for a locked leaf;
      +
    • +
    • im1 - icon for a closed branch;
      +
    • +
    • im2 - icon for an opened branch.
      +
    • +
    + +
    +
    +

    Tree Images Manipulation

    +
    + +
    + +

    Setting Images for Items

    +
    + +

    + +It should be noted that the tree will get images for its nodes from the path the user specified in setImagePath() method. +

    + +

    +But there are also other ways available for setting custom images for nodes in the tree. The difference between these two methods lies in the way the user adds item to the tree: +

    +
      +
    • JavaScript way - using arguments of insertNewChild() or insertNewNext() methods:
      +
    • +
    +
        <script>
    +        var im0 = "doc.gif"; // the icon for a leaf node
    +        var im1 = "opened.gif"; // the icon for an expanded parent node
    +        var im2 = "closed.gif"; // the icon for a collapsed parent node
    + 
    + 
    + 
    +        tree.insertNewItem(0,1,"New Node 1",0,im0,im1,im2);
    +        tree.insertNewNext(1,2,"New Node 2",0,"txt.gif","opened.gif","closed.gif");
    +    </script>
      +
    • JavaScript way - using setItemImage() and setItemImage2() methods:
      +
    • +
    + +

    +The first method for setting an image for an item should be written this way: + +

    +
        <script>
    +        tree.setItemImage(itemId,image1,image2);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • image1 - image for the leaf item or image for the collapsed parent item (if the third parameter is indicated);
      +
    • +
    • image2 - image for the expanded parent item.
      +
    • +
    + +

    +The second setting image method is the following: + +

    +
        <script>
    +        tree.setItemImage2(itemId,image1,image2, image3);
    +    </script>
    +

    + +The parameters are as follows: +

    +
      +
    • itemId - id of the item in question;
      +
    • +
    • image1 - image for the leaf item;
      +
    • +
    • image2 - image for the collapsed parent item;
      +
    • +
    • image3 - image for the expanded parent item.
      +
    • +
    +
      +
    • XML way - using parameters of <item> tag:
      +
    • +
    +
        <?xml version='1.0' encoding='iso-8859-1'>
    +        <tree id="0">
    +            <item text="My Computer" id="1" child="1" im0="doc.gif" im1="my_opened.gif" im2="my_closed.gif">
    +        </tree>
    +

    + +See XML Format Template. +

    + +
    + +

    Getting Item's Image

    +
    + +

    + +Item's image can be got with the help of getItemImage() method: + +

    +
        <script>
    +        var image = tree.getItemImage(itemId,imageInd,fullPath);
    +    </script>
    +

    + +In order to get items image, the user should indicate: +

    +
      +
    • itemId - id of the item which image should be got;
      +
    • +
    • imageInd - index of the image (0 - leaf image, 1 - closed parent node image, 2 - open parent node image);
      +
    • +
    • fullPath (true|false) - indicates whether the method returns full path to the image (true), or just name of the image file (false).
      +
    • +
    + +
    + +

    Enabling Tree Images

    +
    + +

    + +Images are enabled in dhtmlxTree by default. To disable images, the user should call the following method: + +

    +
        <script>
    +        tree.enableTreeImages(false); // true to enable
    +    </script>
    +
    + +

    Setting Default Item's Images

    +
    + +

    + +There is a simple way of setting default item's images in dhtmlxTree: + +

    +
        <script>
    +        tree.setStdImages(image1,image2,image3);
    +    </script>
    +

    + +This method should be called before XML loading takes place. It is useful when a lot of similar images are going to be used in the tree, it is better to use this method once rather than specify these images every time for every item. +

    + +

    +The parameters that the user should specify are the following: +

    +
      +
    • image1 - image for a leaf node;
      +
    • +
    • image2 - image for a closed parent node;
      +
    • +
    • image3 - image for an opened parent node.
      +
    • +
    + +
    + +

    Changing Icon Sets

    +
    + +

    + +dhtmlxTree is a highly customizable component. You can use different icon sets for trees simply by changing image path: + +

    +
        <script>
    +        tree.setImagePath("[full path to this folder]/codebase/images/"); // the default icons set
    +            // or
    +        tree.setImagePath("[full path to this folder]/codebase/images/csh_scbrblue/");
    +            // or
    +        tree.setImagePath("[full path to this folder]/codebase/images/csh_yellowbooks/");
    +            // or
    +        ...
    +    </script>
    +
    + +

    Setting Icon's Size

    +
    + +

    + +Setting icon's size is quite simple with setIconSize() method. The default size of tree icons is 18×18 px. + +

    +
        <script>
    +        tree.setIconSize(newWidth,newHeight,itemId);
    +    </script>
    +

    + +The parameters the user should specify are: +

    +
      +
    • newWidth - new width for the icon;
      +
    • +
    • newHeight- new height for the icon;
      +
    • +
    • itemId - the item new sizes will be applied to (optional parameter).
      +
    • +
    + +

    +If the last parameter is not indicated, new sizes will be applied to all icons in the tree. +

    + +
    + +

    Making Images Clickable

    +
    + +

    + +There is a simple method used to make all images in the tree clickable: + +

    +
        <script>
    +        tree.enableActiveImages(true|fasle); // enabled by default
    +    </script>
    +
    + +

    Enabling Image Dragging

    +
    + +

    + +There is a method that is responsible for allowing the user to drag items not only by text, but also by their images. This functionality is enabled by default + +

    +
        <script>
    +        tree.enableImageDrag(true|false);
    +    </script>
    +
    + +

    Enabling IE Images Fixing

    +
    + +

    + +There is a special method to change the way of images rendering in IE. It also helps to solve the problem of images caching in IE: + +

    +
        <script>
    +        tree.enableIEImageFix(true|false); // disabled by default
    +    </script>
    +
    +
    +

    Text Manipulation

    +
    + +
    + +

    Setting text Direction

    +
    + +

    + +dhtmlxTree support bot LTR and RTL text directions. LTR is set by default in the tree. The user can set the text direction to RTL like this: + +

    +
        <script>
    +        tree.enableRTL(true); // false to disable
    +    </script>
    +

    + +To set text direction to LTR again, use false in the above mentioned method. +

    + +
    + +

    Enabling Multiline

    +
    + +

    + +By default tree nodes' labels can contain only one text line. However, in some situations it can be useful to make them multiline. There is a special method for this in dhtmlxTree. It is recommended to turn tree lines off for better appearance: + +

    +
        <script>
    +        tree.enableTreeLines(false); 
    +        tree.enableMultiLineItems(true|false|width);
    +    </script>
    +

    + +This method should be called before loading tree data takes place. +The parameter of this method can be one of these options: +

    +
      +
    • true - the multiline is enabled;
      +
    • +
    • false - the multiline is disabled;
      +
    • +
    • width - the multiline is enabled and set in pixels (for example, “50pxâ€).
      +
    • +
    + +
    + +

    Setting Text Signs

    +
    + +

    + +There is the possibility to enable|disable text signs [+] and [-] instead of corresponding icons. This can be done in the following way: + +

    +
        <script>
    +        tree. enableTextSigns(mode);
    +    </script>
    +

    + +Setting this method to true equals enabling text signs for the tree, while false means disabling them. +

    + +
    + +

    Making Plain Text Tree

    +
    + +

    + +There is also the possibility to create a plain one-level tree. The steps the user should take for this are quite simple: +

    +
      +
    • Add the following style in the html file where the tree will be created:
      +
    • +
    +
        <style>
    +         #treeboxbox_tree.standartTreeImage img{
    +             width:0px;
    +         }
    +    </style>
      +
    • Create a div element on page and write the following script lines:
      +
    • +
    +
        <div id="treeboxbox_tree" style="width:200;height:200"></div>
    +    <script>
    +        tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0);
    +        tree.setImagePath("[full path to this folder]/imgs/");
    +        tree.enableTreeImages("false"); // disable tree images
    +        tree.enableTreeLines("false"); // disable tree lines
    +        tree.loadXML(file);
    +    </script>
    +
    + +

    Enabling Loading Text

    +
    + +

    + +The user can set loading text for a tree item. This text will appear on item loading instead of its original text, and will be replaced by the original text when loading is done: + +

    +
        <script>
    +        tree.enableLoadingItem(text);
    +    </script>
    +

    + +The default loading text set in dhtmlxTree is “Loading…â€. +

    + +
    + +

    Using HTML in Item's Text

    +
    + +

    + +The user may use escaped HTML in text attribute of item tag to include some HTML into node's label, or he can use nested <itemtext> tag with CDATA for the same (this tag is supported only in PRO edition): + +

    +
        <?xml version="1.0">
    +        <tree id="0">
    +          <item id="1" text="&amp;lt; img src='some.gif' &amp;gt;" /> // using escaped HTML in text attribute
    +        </tree>
    +        <tree id="0">
    +          <item id="1">
    +             <itemtext><![CDATA <img src='some.gif'> ]]></itemtext> // using nested <itemtext> tag with CDATA
    +          </item>
    +        </tree>
    +
    +
    +

    Style Manipulation

    +
    + +
    + +

    Setting Individual Style for Item

    +
    + +

    + +The user can set individual style for any item in the tree in the following way: + +

    +
        <script>
    +        tree.setItemStyle(itemId,style_string);
    +    </script>
    +

    + +The parameters here are responsible for: +

    +
      +
    • itemId - id of the item;
      +
    • +
    • style_string - valid CSS string.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___simultaneous_server_update.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___simultaneous_server_update.html new file mode 100755 index 0000000000..dbf44c4154 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___simultaneous_server_update.html @@ -0,0 +1,237 @@ + + + + dhtmlxtree:simultaneous_server_update [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Simultaneous Server Update

    +
    + +
    +
    +

    dataProcessor Module

    +
    + +

    +Common tree manipulations, like drag-n-drop (including d-n-d between trees), removing item, inserting item, or updating item's label, can be simultaneously reflected in server database now (since v.1.3) using dataProcessor module. +

    + +

    +Main features of this module are: +

    +
      +
    • An updated/inserted item is marked with bold text, a deleted one - with line-through;
      +
    • +
    • You can define the mode for data processing (automatic|manual).
      +
    • +
    + +

    +Updated|deleted items' data is sent to the server to the specified URL (we call it serverProcessor). serverProcessor should return simple XML of the specified format to let the tree know about successful or not successful processing. All necessary after-save procedures will be done automatically. + +

    + +
    +
    +

    Enabling dataProcessor Module

    +
    + +

    +To enable this feature, the user should do the following: +

    +
      +
    • Include dhtmlxdataprocessor.js file to the page;
      +
    • +
    • Create dataProcessor object for the tree;
      +
    • +
    • Initialize dataProcessor.
      +
    • +
    +
        <script src="../codebase/dhtmlxdataprocessor.js"></script>
    +    <script>
    +        ...
    +        tree.init();
    +        myDataProcessor = new dataProcessor(serverProcessorURL);
    +        myDataProcessor.init(treeObj); // tree object to assign dataProcessor to, mandatory
    +    </script>
    +

    + +The mandatory parameter for dataProcessor is: +

    +
      +
    • serverProcessorURL - URL of the file that will process incoming data. If our server-side routines is used, “dhtmlxDataProcessor/server_code/PHP/update.php?ctrl=tree†should be indicated.
      +
    • +
    + +
    +
    +

    Server-Side dataProcessor Handling

    +
    + +

    +Using server-side dataProcessor, the user should bare in mind the following: +

    +
      +
    • All data comes in GET scope:
      +
        +
      • tr_id - node id;
        +
      • +
      • tr_order - node sequense on the level;
        +
      • +
      • tr_pid - parent id;
        +
      • +
      • tr_text - node text(label);
        +
      • +
      • Userdata blocks - are passed with their names.
        +
      • +
      • !nativeeditor_status - values can be as follows:
        +
          +
        • “inserted†- item is inserted;
          +
        • +
        • “deleted†- item is deleted;
          +
        • +
        • “updated†or item doesn't exist - item is updated.
          +
        • +
        +
      • +
      +
    • +
    • serverProcessor should return valid XML of the following format:
      +
    • +
    +
        <data>
    +    <action type='insert/delete/update' sid='incomming_node_ID' tid='outgoing_node_ID'/>
    +    </data>
    +

    + +In the above mentioned snippet, incomming_node_ID and outgoing_node_ID may be different for insert action only, but they are equal for other actions. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___syntax_templates.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___syntax_templates.html new file mode 100755 index 0000000000..801cc85c64 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/dhtmlxtree___syntax_templates.html @@ -0,0 +1,461 @@ + + + + dhtmlxtree:syntax_templates [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    Syntax Templates

    +
    + +
    +
    +

    XML Format Template

    +
    + +

    +XML syntax template is the following: + +

    +
          <?xml version='1.0' encoding='iso-8859-1'?>
    +          <tree id="0"> 
    +              <item text="My Computer" id="1" child="1" im0="my_cmp.gif" im1="my_cmp.gif" im2="my_cmp.gif" call="true" select="yes"> 
    +                  <userdata name="system">true</userdata> 
    +                  <item text="Floppy (A:)" id="11" child="0" im0="flop.gif" im1="flop.gif" im2="flop.gif"/> 
    +                  <item text="Local Disk (C:)" id="12" child="0" im0="drv.gif" im1="drv.gif" im2="drv.gif"/> 
    +              </item> 
    +              <item text="Recycle Bin" id="4" child="0" im0="recyc.gif" im1="recyc.gif" im2="recyc.gif"/>
    +      </tree>
    +

    + +The tags used are the following: +

    +
      +
    • <tree> tag is mandatory. It specifies the parent of loading block of data. According to this, its id parameter specifies the ID of that parent. To load root level the user needs to specify the ID used for creation of the tree object: new myObjTree(boxObject,width,height,0);
      +
    • +
    • <item> tag can contain sub-items (in order to load more than one level at once) or not. It also can contain <itemtext> tag that can be used to add some HTML to item label (attribute text should be skipped then):
      +
    • +
    +
          <item id="123">
    +          <itemtext><![CDATA[<font color="red">Label</font>]]></itemtext>
    +      </item>
    +

    + +Attributes for <item> tag are the following: +

    +
      +
    • Mandatory attributes:
      +
        +
      • text - label of the node;
        +
      • +
      • id - id of the node;
        +
      • +
      +
    • +
    • Optional attributes:
      +
        +
      • tooltip - tooltip of the node;
        +
      • +
      • im0 - image for a node without child items (tree will get images from the path specified in setImagePath() method);
        +
      • +
      • im1 - image for an expanded node with child items;
        +
      • +
      • im2 - image for a collapsed node with child items;
        +
      • +
      • aCol - colour of an item that is not selected;
        +
      • +
      • sCol - colour of a selected item;
        +
      • +
      • select - select a node on load (any value);
        +
      • +
      • style - text style of a node;
        +
      • +
      • open - show a node opened (any value);
        +
      • +
      • call - call function on select(any value);
        +
      • +
      • checked - check checkbox if exists (in case of 3-state checkboxes values can be 1 - checked or -1 - unsure);
        +
      • +
      • nocheckbox - instruct component, to not render checkbox for related item, optional
        +
      • +
      • child - specifies whether a node has child items (1) or not (0);
        +
      • +
      • imheight - height of the icon;
        +
      • +
      • imwidth - width of the icon;
        +
      • +
      • topoffset - offset of the item from the node above;
        +
      • +
      • radio - if not empty, child items of this node will have radio buttons.
        +
      • +
      +
    • +
    + +

    +To set userdata directly within XML, the user should apply <userdata> tag that has only one attribute - name, and value to specify userdata value. +

    + +

    +In PHP script the following code should be used for the page header: + +

    +
          <?php
    +             header("Content-type: text/xml");
    +             echo('<?xml version="1.0" encoding="iso-8859-1" ?>');
    + 
    +
    + +

    XML Format with Links Specified

    +
    + +

    + +XML format template for the tree containing links: + +

    +
          <tree..>
    +               <item ...>
    +                      <userdata name="myurl">http://www.google.com</userdata>
    +                      <item ...>
    +                              <userdata name="myurl">http://groups.google.com</userdata>
    +                      </item>
    + 
    +                </item>
    + 
    + 
    +
    +
    +

    JSON Format Template

    +
    + +

    +The structure of JSON template is like the one of XML, where tags are transformed to objects, and attributes to properties. + +

    +
          {id:0,
    +          item:[
    +              {id:1,text:"first"},
    +              {id:2, text:"middle",child:"1",img0:"book.gif",
    +                  item:[
    +                      {id:"21", text:"child"}
    +                  ]},
    +              {id:3,text:"last"}
    +          ]
    +      }
    +
    +
    +

    CSV Format Template

    +
    + +

    +A tree item is represented with three values - id, parent_id, text. +

    + +

    +For example: + +

    +
          1,0,node 1
    +      2,1,node 1.1
    +      3,2,node 1.1.1
    +      4,0,node 2
    +
    +
    +

    JS Array Format Template

    +
    + +

    +Tree item is represented with three values as sub-arrays of the top array - id, parent_id, text. +

    + +

    +For example: + +

    +
          var treeArray = new Array(
    +      ["1","0","node 1"],
    +      ["2","1","node 1.1"],
    +      ["3","2","node 1.1.1"],
    +      ["4","0","node 2"]
    +      )
    +
    +
    +

    Cold Fusion Tag for dhtmlXTree

    +
    + +

    +This section is devoted to a ready-made ColdFusion solution for the tree that, as it is believed by some users, simplifies usage of dhtmlxTree. For example: + +

    +
          <cf_dhtmlXTree
    +          name="tree"
    +          width="250"
    +          height="250"
    +          JSPath="../" CSSPath="../"
    +          iconspath="gfx/"
    +          xmldoc="tree.xml"
    +          checkboxes="false"
    +          dragndrop="true"
    +          style="background-color:whitesmoke;border:1px solid blue;"
    +          onSelect="onNodeSelect"
    +          onDrop="onDropNode">
    +                   ...configuration xml...
    +      </cf_dhtmlXTree>
    +

    + +The parameters that should be indicated are as follows: +

    +
      +
    • name - [optional] name of the tree JS object to use in JavaScript; if omitted, then name will be generated automatically;
      +
    • +
    • width - [optional] width of the tree (it sets the with of the tree box, leaving the width of the tree itself by 100%);
      +
    • +
    • height - [optional] height of the tree;
      +
    • +
    • JSPath - [optional] absolute or relative path to the directory containing tree JS files; “js†directory by default;
      +
    • +
    • CSSPath - [optional] absolute or relative path to the directory containing tree CSS files; “css†directory by default;
      +
    • +
    • iconspath - [optional] absolute or relative path to the directory containing tree icon files; “img†directory by default;
      +
    • +
    • xmldoc - [mandatory for xml loading] URL of the XML file used to load levels dynamically;
      +
    • +
    • checkboxes - [optional] show checkboxes (none, twoState, threeState);
      +
    • +
    • dragndrop - [optional] activate drag-&amp;-drop (true,false);
      +
    • +
    • style - [optional] style for the tree box;
      +
    • +
    • onSelect - [optional] JavaScript function to be called on node selection;
      +
    • +
    • oncheck - [optional] JavaScript function to be called on node (un)checking;
      +
    • +
    • onDrop - [optional] JavaScript function to be called on node drop;
      +
    • +
    • im1 - [optional] default image used for child nodes;
      +
    • +
    • im2 - [optional] default image used for expanded branches;
      +
    • +
    • im3 - [optional] default image used for collapsed branches.
      +
    • +
    + +

    +Please, refer to Data Loading from XML section. +

    + +

    +Minimal possible tag syntax with on-page XML is the following: + +

    +
          <cf_dhtmlXTree>
    +          <item text="Top node" id="t1" >
    +              <item text="Child node 1" id="c1" ></item>
    +              <item text="Child node 2" id="c2" ></item>
    +          </item>
    +      /cf_dhtmlXTree>
    +

    + +Minimal possible tag syntax with server-side XML is as follows: + +

    +
          <cf_dhtmlXTree xmldoc="tree.xml">
    +      </cf_dhtmlXTree>
    +

    + +Here is the example of ColdFusion tag for the tree with images specified: + +

    +
          <cf_dhtmlXTree
    +          im1="book.gif"
    +          im2="books_open.gif"
    +          im3="books_close.gif">
    +          <item text="Mystery " id="mystery" open="yes" >
    +              <item text="Lawrence Block" id="lb" >
    +                      <item text="All the Flowers Are Dying" id="lb_1" />
    +                      <item text="The Burglar on the Prowl" id="lb_2" />
    +                      <item text="The Plot Thickens" id="lb_3" />
    +                      <item text="Grifters Game" id="lb_4" />
    +                      <item text="The Burglar Who Thought He Was Bogart" id="lb_5" />
    +              </item>
    +              <item text="Robert Crais" id="rc" >
    +                      <item text="The Forgotten Man" id="rc_1" />
    +                      <item text="Stalking the Angel" id="rc_2" />
    +                      <item text="Free Fall" id="rc_3" />
    +                      <item text="Sunset Express" id="rc_4" />
    +                      <item text="Hostage" id="rc_5" />
    +               </item>
    +              <item text="Ian Rankin" id="ir" ></item>
    +              <item text="James Patterson" id="jp" ></item>
    +              <item text="Nancy Atherton" id="na" ></item>
    +          </item>
    +      </cf_dhtmlXTree>
    +

    + +The following code snippet shows creation of the tree with Events Handlers, Checkboxes, and Drag-n-drop functionality: + +

    +
          <cf_dhtmlXTree
    +          dragndrop="true"
    +          checkboxes="twoState"
    +          onSelect="onClick"
    +          onCheck="onCheck"
    +          onDrop="onDrag">
    +              <item text="Mystery " id="mystery" open="yes" >
    +                  <item text="Lawrence Block" id="lb" >
    +                              <item text="All the Flowers Are Dying" id="lb_1" />
    +                              <item text="The Burglar on the Prowl" id="lb_2" />
    +                              <item text="The Plot Thickens" id="lb_3" />
    +                              <item text="Grifters Game" id="lb_4" />
    +                              <item text="The Burglar Who Thought He Was Bogart" id="lb_5" />
    +                  </item>
    +                  <item text="Robert Crais" id="rc" >
    +                              <item text="The Forgotten Man" id="rc_1" />
    +                              <item text="Stalking the Angel" id="rc_2" />
    +                              <item text="Free Fall" id="rc_3" />
    +                              <item text="Sunset Express" id="rc_4" />
    +                              <item text="Hostage" id="rc_5" />
    +                  </item>
    +                  <item text="Ian Rankin" id="ir" ></item>
    +                  <item text="James Patterson" id="jp" ><item>
    +                  <item text="Nancy Atherton" id="na" ></item>
    +              </item>
    +      </cf_dhtmlXTree>
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___file.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___file.gif new file mode 100755 index 0000000000000000000000000000000000000000..31d23fd4479bd8817a708a41ae03eccfacb90e9a GIT binary patch literal 622 zcmZ?wbhEHb6k`x$cox9WH-G+_yLbQp|9|w_wJT4bZasGF;ipeGU%a^b?Ah)!XLg)C zdH>CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___tree.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/icons___tree.gif new file mode 100755 index 0000000000000000000000000000000000000000..c290270fba107986c95cfc23219bf629e97f0014 GIT binary patch literal 261 zcmZ?wbhEHb6k`x$I3mDMS5>7xY4gmPGxPHD{{R1 + + + dhtmlxtree:toc [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    +
    + + +
    +
    + + +

    +

    + +

    + +

    dhtmlxTree

    +
    + +

    + +dhtmlxTree is a flexible, smart, and easy to use JavaScript tree component allowing to create hierarchical navigation interfaces for web applications. It is great working with huge amounts of data due to special techniques implemented. dhtmlxTree possesses advanced drag-and-drop, dynamical loading of nodes, customizable view, unlimited number of nodes, and many other capabilities that make it fully-featured aid for developers. Communication with server is done via AJAX that allows the tree content to be updated without reloading the entire webpage. Complete JavaScript API is provided to help users to save time on configuring. +

    + +
    +
    +

    Guide

    + +
    +

    Script API Reference

    +
    + + +

    +
    + +

    + +

    +Dear User, +

    + +

    +Your opinion is important for us. Please feel free to contact us, say what for, where are you using tree, which methods are you using, what do you like, what don't like, what would you like to see in the future release. This information will help us to make dhtmlxTree better.
    + +

    + +

    +Thanks, your dhtmlxTeam.
    + +

    + +

    +support@dhtmlx.com
    + +

    + +

    +~~DISCUSSION:off~~ + +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/others___supported_browsers.html b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/others___supported_browsers.html new file mode 100755 index 0000000000..d8d3646b55 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/dhtmlxtree/others___supported_browsers.html @@ -0,0 +1,130 @@ + + + + others:supported_browsers [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Supported Browsers

    +
    +
      +
    • IE 5.5 and above;
      +
    • +
    • Safari 3.x and above;
      +
    • +
    • Firefox 1.5 and above;
      +
    • +
    • Opera 9 and above;
      +
    • +
    • Google Chrome 0.2 and above;
      +
    • +
    • Any other browser based on mozilla or web-kit engine.
      +
    • +
    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/index.html b/phpgwapi/js/dhtmlxtree/docsExplorer/index.html new file mode 100755 index 0000000000..d0dd58c147 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/index.html @@ -0,0 +1,126 @@ + + + + DHTMLX Documentation + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + + +
    +
    + + +
    +
    + + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/samples.html b/phpgwapi/js/dhtmlxtree/docsExplorer/samples.html new file mode 100755 index 0000000000..01f5be38e2 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/samples.html @@ -0,0 +1,104 @@ + + + + DHTMLX Samples + + + + + + + + + + +
    + +
    DHTMLX Docs & Samples Explorer
    +
    + +
    +
    + + +
    +
    +
    + +

    Local Samples

    +
    +
    + +
    +
    + +

    Demo Applications On-line

    + + +

    On-line Samples

    +
    + +
    Layouts & Data Containers
    + +
    +
    Data Presentation & Navigation
    + +
    + +
    Others
    + +
    + +
    + + +
    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/_media.txt b/phpgwapi/js/dhtmlxtree/docsExplorer/start/_media.txt new file mode 100755 index 0000000000..9d84065bf4 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/_media.txt @@ -0,0 +1,24 @@ +icons___layout.gif +icons___accordion.gif +icons___tabbar.gif +icons___windows.gif +icons___grid.gif +icons___tree.gif +icons___treegrid.gif +icons___folders.gif +icons___menu.gif +icons___toolbar.gif +icons___combo.gif +icons___calendar.gif +icons___colorpicker.gif +icons___slider.gif +icons___editor.gif +icons___vault.gif +icons___ajax.gif +icons___dataprocessor.gif +icons___connector.gif +icons___scheduler.gif +icons___file.gif +icons___chm.gif +others___complier-interface2.png +layout2_sum_trans.gif diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/_structure.xml b/phpgwapi/js/dhtmlxtree/docsExplorer/start/_structure.xml new file mode 100755 index 0000000000..f607e93c5c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/_structure.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/dhtmlx_overall_logic_en.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/dhtmlx_overall_logic_en.html new file mode 100755 index 0000000000..4826a8ec48 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/dhtmlx_overall_logic_en.html @@ -0,0 +1,443 @@ + + + + dhtmlx_overall_logic_en [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + + + +

    Why Should You Read This ?

    +
    + +

    +Before working with library, scavenging information from the documentation, checking examples and making up conclusions - consolatory or not – you should read this article. It will take less than 10 minutes, but will save considerably more of your time in the near future. This article is aimed to explain the working logic of library and to provide the basic code examples. In case you intend to go deep into the matter and jump to creating applications you can be sure this article meets your needs. Well, let’s come down to practice: +

    + +
    +
    +

    Usage Guidelines: the Entire Package or Separate Components?

    +
    + +

    +Dhtmlx library consists of different components, which can be used separately – for example, you are allowed to insert grid into your application for data output in table mode, tree and menu – for navigation purposes. As well, you can use the entire library to get necessary functionality and structure interface. +

    + +
    +
    +

    dhtmlxSuite Location

    +
    + +

    +To start working with library you should download dhtmlxSuitehere. Package contains 15 (or 16 for professional edition) components. All components are listed on download page. +

    + +

    +Package content: +

    +
      +
    1. Folders with separate components;
      +
    2. +
    3. Folder with the tool that allows to integrate all necessary items in one script file - libCompiler;
      +
    4. +
    5. dhtmlx_std_full.zip – this is all you need for quick start. The archive contains all available components with all available functionality.
      + dhtmlx_pro_full.zip – the same for Professional Edition;
      +
    6. +
    7. index.html - file starting Docs and Samples Explorer.
      +
    8. +
    + +
    +
    +

    Documentation Location

    +
    + +

    +When you unpack the entire archive you will find index.html file (see point 4 in the paragraph above) and only after starting this file you will be able to see all components documentation. Thus, the archive file doesn't contain documentation. It is distributed within component folders, if you need to have access to all documentation files you can find it in dhtmlx Docs and Samples Explorer. By the way, you can avoid unpacking procedure and local working, there is an opportunity to check documentation on our site, all necessary documentation and samples are here: http://dhtmlx.com/docs/products/docsExplorer/index.shtml +

    + +
    +
    +

    Required Development Files

    +
    + +

    + To start working immediately, you should unpack dhtmlx_std_full.zip (dhtmlx_pro_full.zip) archive in the place from where you are going to load scripts (Note: the folder must be available through web-server, otherwise some functionality will not be able to work). In any case, you are creating a web-application, so a web-server involvement is mandatory. +

    + +

    +Except script file, archive contains styles file and all necessary images. So, let's unpack it in /codebase for example. The structure looks approximately as follows: + +

    +
      [codebase]
    +      [imgs]
    +      dhtmlx.js
    +      dhtmlx.css
    +  index.html
    + +

    +The last file indicates where we will create the interface of the application and make it work. +

    + +
    +
    +

    Files Size

    +
    + +

    + +Don't be confused with the size of the script file - 900 Kbytes. First, it contains the entire functionality, including specific one. When it comes to your application release, you will be able to leave just necessary functionality using the attached tool (see point 2). Secondly, all modern browsers support operating with the packed scripts, as for gzip format, here the maximum bundling weighs less than 200 Kbyts, so, browser successfully caches it as well as external content. +

    + +

    +Also, you can use files only with necessary functionality. But in this case it's required permanent synchronization with documentation (to know which file has to be pasted to make work certain functionality). For more details about files required for component initialization and functionality support (extensions usage), see separate components documentation. +

    + +
    +
    +

    Starting from html

    +
    + +

    +Let's return to index.html file. +

    +
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    +<html>
    +<head>
    +    <title>My Application</title>
    +    <link rel="STYLESHEET" type="text/css" href="codebase/dhtmlx.css">
    +    <script src="codebase/dhtmlx.js" type="text/javascript"></script>
    +    <script>
    +        function buildInterface(){
    +            //entire code for interface init will go here
    +        }
    +        dhtmlxEvent(window,"load", buildInterface);
    +    </script>
    +</head>
    +<body>
    + 
    +</body>
    +</html>
    +

    +The main conclusion you should make up is that interface creation has to be started from the full page loading. Why do we use dhtmlxEvent? Because it makes event setting available for any browser. +

    + +
    +
    +

    Allocating Components on Page

    +
    +
      +
    • Attaching to HTML-item.
      + During components creation, the major part of them are already attached to certain place on page through parent HTML-item. In most cases, div-item is used for this purpose. Item's identifier or link are passed to component constructor. Some components allow to change parent item after initialization. Another way to relocate component within document structure is relocating its parent item.
      +
    • +
    +
        <div id="mygrid"></div>
    +    <script>
    +        myGrid = new dhtmlXGridObject("mygrid");
    +    </script>
      +
    • Placing inside dhtmlxLayout.
      + If at the beginning, you place dhtmlxLayout on page (on empty page, you can attach it just to document.body), after that you can allocate components inside its cells. You are allowed to do the same with dhtmlxTabbar, dhtmlxWindows. For these components, items from items, windows and tabs collections, accordingly, are used as container with the same capabilities.
      +
    • +
    +
        myLayout = new dhtmlXLayout(document.body,"3E");
    +    myGrid = myLayout.items(0).attachGrid();
    +

    +For more details about allocating dhtmlx and other items inside Layout, Tabbar and Window, see here. +

    + +
    +
    +

    How to Initialize Components

    +
    + +

    + +There are three ways to initialize any component of the suite: + +

    +
      +
    • Through constructor function.
      + This way of initialization is valid for all components. The names of all component constructors coincide with the names of components (since version 2.5). The major part of components are initialized with a certain set of parameters, we will go into details of this later. So, below you can see an example of windows system initialization through the constructor:
      +
    • +
    +
    myWindows = new dhtmlxWindows();
      +
    • Through appropriated methods of dhtmlxLayout component: attachTree, attachGrid, attachMenu и Ñ‚.Đ´. (for Layout API documentation, see here api_toc_alpha). The procedure is almost the same, there is only one difference, instead of constructor function you should write layout method (or more exactly, the method of separate layout panel). As result the component is initialized directly into the appropriate panel.
      +
    • +
    +
      +
    • Directly from HTML objects, their class attribute (name of css class) is set in the value corresponding to component name: for tree - dhtmlxTree, for grid - dhtmlxGrid, for tabbar - dhtmlxTabbar. If you need this way of initialization, see documentation for more details.
      +
    • +
    + +
    +
    +

    How to Set Parameters (Configuration)

    +
    +
      +
    • Through methods.
      + In most cases, methods which allow to set parameters start with “setâ€, “enable†(setInitWidth, enableMathSerialization). The list of basic and optional methods required for component initialization is located in constructor function section of API documentation of each component. (part “Original Way of Initializationâ€).
      +
    • +
    +
        myGrid = new dhtmlXGridObject("grid_container");
    +    myGrid.setImagePath("codebase/imgs/");
    +    myGrid.setHeader("Model,Qty,Price");
    +    myGrid.setInitWidths("*,150,150");
    +    myGrid.setColAlign("left,right,right");
    +    myGrid.setSkin("light");
    +    myGrid.init();
    +    myGrid.loadXML("some_url.php");
      +
    • Through objects properties (since version 2.5, there is extension for object initialization/configuration).
      + The list of basic and optional properties required for component initialization is located in constructor function section of API documentation of each component. (part “Original Way of Initializationâ€).
      +
    • +
    +
        myGrid = new dhtmlXGridObject({
    +        parent: "grid_container",
    +        image_path: "codebase/imgs/",
    +        skin: "light",
    +        columns: [
    +             {
    +                 label: "Model",
    +                 width: "*",
    +                 align: "left",
    +             },{
    +                 label: "Qty",
    +                 width: 150,
    +                 align: "right",
    +             },{
    +                 label: "Price",
    +                 width: 150,
    +                 align: "right",
    +             }
    +        ]
    +    });
    +    myGrid.loadXML("some_url.php");
      +
    • Through XML.
      + Grid supports this way of initialization. Grid and columns parameters are indicated in special partition of XML-document, which can be loaded from server with all data for rows (or without it). For more details see here.
      +
    • +
    + +
    + +

    Setting Parameters for the Entire dhtmlxSuite

    +
    + +

    + +There are some parameters which can be set for all components on page at once. Currently they are: skin name and path to images. FIXME + +

    +
      +
    • through global dhtmlx object;
      +
    • +
    • through parameters of dhtmlxLayout object, which contains used components.
      +
    • +
    + +

    + +If these parameters are set for concrete objects later, they will have priority status. +

    + +
    +
    +

    Event Handlers

    +
    + +

    + +attachEvent(event_name,handler_function) allows to set event handlers for any components of dhtmlxSuite. For lists of events see Script API Reference partition, which is located at the foot of generic page of any component documentation. Note: names of events are case-insensitive. +

    + +

    +Nearly every event passes to function-handler some parameters which can be used in this function. Such parameters are listed in documentation. This is an example: +

    +
    myGrid.attachEvent("onRowSelect",function(rowId,cellInd){
    +    alert("Row was selected. It's id is "+ rowId +". Index of clicked cell is "+ cellInd)
    +});
    +
    +
    +

    How to Create Interface Completely

    +
    + +

    +There is the main approach to interface creation by using dhtmlx library capabilities: + +

    +
      +
    • Let's create interface structure which will be set by layout. The whole page (document.body), some block HTML item (for example, DIV-item or table cell), cell of other layout, tabbar, window or accordion can be used as container for layout. Layout structure can be set in two ways:
      + by choosing appropriate structure from existing ones,
      + or by creating any other structure by means of combining with existing ones (in this case you should use the capability to create layouts within cells of other layout).
      +
    • +
    +
    myLayout1 = new dhtmlxLayout({
    +    parent:document.body;
    +    schema: "3J";
    + 
    +})
    +myLayout1.cells("c").hideHeader();
    +myLayout2 = new dhtmlxLayout({
    +    parent: myLayout1.cells("c"),
    +    schema: "3E"
    +})
    +

    +Here we get the sum of 2 layouts and 5 cells (2 cells are taken from the first layout, 3 others - from the second one) for items placement. You should call them accordingly to the following logic: +

    + +

    +myLayout1.cells(“aâ€), myLayout1.cells(“bâ€), myLayout2.cells(“aâ€), myLayout2.cells(“bâ€),myLayout2.cells(“câ€). +

    + +

    + +

    +
      +
    • Global items. Layout already contains windows system which can be used for popup windows (see details), also you are allowed to set menu and toolbar over a cell (any cell can have its menu and toolbar, as well). For the detailed description, see here.
      +
    • +
    +
      +
    • Let's place items inside layout panels. As it was described in the second way of initialization paragraph, you have an opportunity to create components inside layout panels by using layout cells methods which begin with the word attach (attachGrid, attachTree etc). In the same way you can place HTML objects in layout cells and load external page. Otherwise components can be placed in cell after initialization by means of attachObject method. Menu and toolbar can be placed in cell at once with the main item. For details see here.
      +
    • +
    + +
    +
    +

    How to Go On Working with Components

    +
    + +

    + +After initializing components, properties of them (to be more precise, most of them) can be changed dynamically - by using API methods. Generally, such methods start with set or enable. To call subobjects (rows and columns in grid, item in tree, windows in window system, cells in layout, buttons in toolbar, items in menu etc) you should use ID. +Besides correcting properties through API, you are allowed to achieve any desired functionality of components. For more information see Documentation (search is enabled) orKnowlege Base, or contact our support team. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___accordion.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___accordion.gif new file mode 100755 index 0000000000000000000000000000000000000000..e456fffb4441b772fcf722a700d176c12db2b951 GIT binary patch literal 394 zcmV;50d@XINk%w1VHN-u0M$MKdwYB9>+71v&~?k|)6>&syxX?6w)y$_|Ns9zp~WXB zC+PC@-rnBe?eO{h{POtu-72h z%;M+u`TDce+~Mx==JE5q+2H#8{rvs@uG z>h0j*;OX-9#NOn=+~Vr<^}pNU_xk(L<>~$Y{`UI&*68f5(b>n}<=E-%)#vN;`1$|; z{{R30A^8LW002G!EC2ui02Tli000K3K%WpmEE?Rxv$du3;5US9|ZHX;}u4-*m#5DgR+a!UvT zn3|No!X>B7aui;cm0#^>^kk&(IK?}CYmdw_x0+1ZB6}I~)X1(3Fy1RPD;NJ1~lF{bt>+FMwiN)sfm7ANO zrKQ-~*@nyH==J&1>-CnJn|gqO&Ck#J`ueuIy88P0&Ck%?@%O>R#nJ5b>g?;e;_vbK z`~Uy{A^8LW002J#EC2ui02Tli000J%z@KnPEE>m|Dg#aDF))ZSq1bE|A+QPq zhQvr>(x4m@%W9V!_!wSrf)x6^A`VfH5<3k9a93J`0We)sMF9w2h(AzE07#5R0FjMD z01B3u00$tIprN8f01XEUJOnN@Iwc+(ED#qM3!6WsH5@4f88{C%9W62yDl@f305=7q R%%GIZm!!7Q)6tDV06SOc%K88R literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___calendar.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___calendar.gif new file mode 100755 index 0000000000000000000000000000000000000000..2a8bc0e63c4ffc2e7a8aaeec635f97477a7cd9d8 GIT binary patch literal 207 zcmV;=05JbYNk%w1VHN-u0J9GO|NsAMYinS{=+My6)z#IZp`nI`hIMsyZfC>*$r+@$bd+YVd(J_pMU+*ntt~5ojc36Z~yi8@6zqt zk6pk1>f5)a5C5Nk@L7B)TMnjFoN+#@aD>n1rx)aLXx(J=6<8%FavXkmIw!fz$R9%ZU$jJ0fQ7(hXw;Hrw&Gk$*tn5sths) zB1cmhWaKg~urNII_M6*QB@wYJMCB}}aND{mTU;1?IRrA&rl@2*VC9q1Q+Z;wf}xR_ Nog+g>ur1SIhh=_>O)6?zk z?OR)0Rjt#o+3RX*YGPtytE;Pfdwb;M*<{QdCw`|9=j z0EE4N!QO_&;Q#;sA^8LW0018VEC2ui02Tli000Hu;3tk`X`X1RuBAdGLo5)IIthpq zA(mkTkq2U+Fi9eTf&##70uBYk19Bh@oy-aV<2)E5MUjJWP)wMcMk51gXqk{m^&@aR z9E-ws1ITn33=K^N5F-i_Pzz^F86JRwOa~7w77G^?6ipRckQWOi2@Vh!1p!G;3>*wh z79$A@0ssjJ1Ox%GTdAuPpCT3mOacZ>2?0(G8UO%L1p*KV3lZZg62bup0U#u(!J?qSg9t^0002A2S%_%> literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___combo.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___combo.gif new file mode 100755 index 0000000000000000000000000000000000000000..8dba9afe5b5a15d97a904e4cb7e9076932a82bff GIT binary patch literal 186 zcmZ?wbhEHb6k`x$*v!fB|NsB&?Ck35>b%mjt5>gHxNsri$cxj@KBOFd4wPcR0E$0Z z7#SEi8FWB0ATt#uVQ3V;0gF=x)4vewRJ zmmlWVG=Bg7J@wFotn8etSFdJf=VYxp`0LlN+B45GGc(gxAN=&`(}M>O)~{bbZ{EBY zFJ5$XbeubP?$)halO|1i{``4;ef{#~%iG%8+S}Xr@85s)*s(>67Cn3REH5u_-@bj{ zzI|J|bm`~MpJ&gWy=&L5sZ*y;o;uCBGM?a!Y-zkmO3X>HxHW5>Gn>u=w_eevSO znwpxvzP@G4mi6`bU%Pg#r>Cc@yZhn8hhM&Yxp)8m{Q2`2E?jv0`0?p8W^{ISO_(_G z&6_v7cJFR(Zk|4U`q86D&zw2a)YSC<|9^(T0Th3-FfuR%G3bDt1Bw#{_8SdBO-)P^ z9L*h_UCc5(tddG(XD6pBYog}qC(6itxJA#%P2Njh_hM&&iguH`0n@Dx8>@~$r^Az* zyp8QUlr1ODWwo_%)G=(9^L15t-4v9X)U?2@i9z3GNyR0_BYgfrPQ6;CUP0{A=4~8G zg_@U_g{@EGWok^Ba3pGZfn~E<#|cgsg=Sab1x_qVQ_nBD_}heU;(<_G*11b0N&C-!w6v0vl7u5KR;^mqGh^x?3nK#qH-ipH3}glaOH{#0&((V^UZ35~%B@lL_=O<%s;mbhI{ACHb|>6t zn$6bq@IQxR1H%H}sHVdSJ9*L^SmsT#^x)`p<19M0C2tXvYogCSG1JB^zn)G!>9^8i TRWR4YH){QL=kL2PFjxZsgXu@f literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___editor.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___editor.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea3c1211957a096a080c1076eba86eaf644af888 GIT binary patch literal 280 zcmZ?wbhEHb6k`x$I3mjM|NsB0s;a!wvggmA&%g76xnfafX6DzgUk@HUxPSlt;`1M} z58ll_cqeklP1QNaZ~popvEydM_M6#>|<@;5%zk~)oio3ygi)nD*pTyo6ao2&c?@FBWh4qS>C|L$CuO@|L}JAVAjk00ND{rdg)@3rU8FF$#5=9~}-`;xt`pu_L?|=Th{^G^$H*c10-~QwG@26kBY(H^g|-^N3SK7IfG?f37`zka>>^5xIJf9v+|zxe3U zzkmO}{{H>v@84J7zkmPp=lG2qUw-}i`sdH9Z{I$A`?mhTfu-BGzy17q-}&?JzJ5Lb z;KAuTcWyp?`svrN4F?bY{P*wYpFhX0UkCb>VK4#3pDc_F3;_%}AV-1Xgn|8ZLqJn= zOKV$uM`u@es~2Pcgnri^2?u!_6+JdKVF|fzT@zC=Zgvh9UMAi7op$!_i z?{Vbp;xbc|y>m}oo~w)1KttlWKQpJAj^=_BEo^);PizYmoH=-fyYe_Z8k9U+1-VmS z>{#g0!oX-*=1|ad@gR?2S5S?}0>(C84s|0F&xIYV4YMtZHzgd|y!`z9047ETYXDZP B7QFxf literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___folders.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___folders.gif new file mode 100755 index 0000000000000000000000000000000000000000..f8e02bbde6337aafa334c4844d6a6e644011474d GIT binary patch literal 637 zcmZ?wbhEHb6k`x$c;?GcR#x`u)2Hw)4>oV!{Q2|e@87?lIB{b4qYrQ2zTLBDPhnx< zg$ozfUw*J<%a)HHKOR4R+;7pzZQHhe`SRt^p+mbKzQ2F}{<(AK_V3^S`0?YSqN45F zx9{4u>-Fo`Z{EDQcJ11xO`F0u-#>EX$d4aCwr<_(Gw-P9wA~Zd?b!9;-PyBe4<0+()_~=|&8BaS2(FIH*?#H?v%tc*|VzXNE?l^9_3G7>qt8!2`v4SVzy=h5vM@3* za4_hABtd2{u;d7w^jy8y;{pPA`FU$7ax%l$)jyrFTJo@0b^5Wd{&%)MTx%>WG z|H()FCm(OW^Y-G4&v)K^OW1U+>G1vLL-+sx|G(<$%e(Ks9ew;^&V^?aPCoki=Wp2B z%Vm3SXK%mh4>I9t*XVpI2$JAxdB=SJ-A=BNyjop3X4ssmk zZw)xQ#6L~3;#QL2;pS1|{`K2tDYHVO3rn-QpGU`njD-jIyW)5xJ|sRm!Yi$^)LUdh zGK1s-3l;&%1nC9|RRsru8A48clcj`?h Kv8OZy7_0&8vgB9* literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___menu.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..2fbd60671c8ac23b0b3b5a94a2dd03135738f70f GIT binary patch literal 270 zcmZ?wbhEHb6k`x$I3mDMU0q#LQc`;Q)xCT79z1yP|NsBAw6xc+UvJyC?egWzKY#vw z_Uzf`&!2DJys56PZoBX(PyqueK=CIFBLjl~gAPa&$W8{M#X4~h23FJ7rh^tb9BxkvFJyeFb7W2QS{o$nzrdkm4inD<1BnT}V&V;K9}{AD zHZaULYjjoM;bO1#-~YSLs3NDixm=5(qqD1{o!PX%pP!+ZZ^FdMnhY${rnh&`?`2-J fc<~I4Oui*cmZ`IGtXj&Z%{ISNXZsFyMFwjC*PUSv literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___scheduler.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/icons___scheduler.gif new file mode 100755 index 0000000000000000000000000000000000000000..ea6c9aadd14a0d4704643e63be83a7fe367c0c74 GIT binary patch literal 432 zcmZ?wbhEHb6k`x$xT?u;`^CEh2M)}hJ!j6z`?V|fRoB%1|NsBkqxY9yeBQEk+ssY- zfByOFx$tb(rfYhWk1jg@)N1C*X(u0rF24}8?ELl}JMP`Pw|)C|#+sd5w{G=Wd@gCi za>vfK{!7lO_aD;f-u>X=L$>-|j&n}NtUNE?va4{(UY6RO?De~irX1})cpGRD1I0k` zCkrD3gC>Ix$Rv=T7}(Apm{KrKE~rBG9cXRhzF4U+^oxUOZ3X?uiB$AG<#Y* z^ZW%1ndi=!FnbEa66gL|D^{#>l9E$Z*H}Jl11}FdH#?8wq6Mo2CE1R#u?i`z-O;Pb z$8q8khwPcD=hV2_(%HBbuB|+G;TY>N4&~yP#TC;v1!ayO6H-b0$|xb?!Yj%oHu4;(mf`t<2nUw>}iym{ZgeLsKx{P^)B&>{wE1I3>#j0_Aa3_2i#L4IOj z>u{J<;GrYce_~0|$sDWs=ME=$t&LjF{?PHj+p7Kd-Y7Wev2$c>nQ0R^fvsVOjDtcw zNAXVSxEH@)^YF9O)iLDBGO%@ZH#Bv3Gw`a2RTlPEOyy8fR1(Qf=PAt=5mr!+Z^fkA*l2c!vPCj)D}f=XXX=Ddtm>yjSq)0bu_ ziDh?NXa2iE=x%Ts~%hM|b%5rOK8Jc(`@4kFH+58mNqc6rlK%g^__lfI$bO31lY&Yk`7FUrOe@j8*I2aP2A3 zIW6EI;JogAP23*y)7xY4gmPGxPHD{{R1M|C`Eu8;UA?`%YaVl34H5Lw0G95@}9tPVe0mo kGj<-$xOi#Tl3nL7u0HW#-6M`-0cM|lqMyuFc@ zm&@kxp{AzH&(FZa!=a_7t+BFzhKHxCtcsA3sjaS+nwyD?q;k3Z3=p{}&eA&o1lX*0TjK=|1Zh+N@PYvwkD|k%ToMf&*&G(j z%T!E@^o}`cXxMW#piBr zZs6eHW@cvX?d_MBmwkPG{QUfdg@yC;^V-_lfPjF4f`XKklU0b z-Ve#VZa;h+0~cp}IRy$L76@^KI0YCad5kv&3?zUT4VfGZoD&lo1p^%(5haNSs2K{Y RE*KjO45ciyw6!cD06S>xdbR)n literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/index.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/index.html new file mode 100755 index 0000000000..088ca53f2c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/index.html @@ -0,0 +1,246 @@ + + + + start [DHX documentation] + + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/layout2_sum_trans.gif b/phpgwapi/js/dhtmlxtree/docsExplorer/start/layout2_sum_trans.gif new file mode 100755 index 0000000000000000000000000000000000000000..d403823a613bd74f44e4198c8a186218089fcee5 GIT binary patch literal 4094 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___complier-interface2.png b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___complier-interface2.png new file mode 100755 index 0000000000000000000000000000000000000000..34936fd5ac458d379c6be341e2eed21a7302c4a0 GIT binary patch literal 85697 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 VIzsN=hHLOgQC3Z+MB422{{#9Uc{Bh3 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___migration_version_25.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___migration_version_25.html new file mode 100755 index 0000000000..1080a6d8d0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___migration_version_25.html @@ -0,0 +1,154 @@ + + + + others:migration_version_25 [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Migrating to the version 2.5

    +
    + +

    + +Version 2.5 is backward compatible by API with versions 2.0 and 2.1 ( separate components is mostly compatible with version 1.6 as well ), so you will not need to made any special updates in code, while updating codebase to the version 2.5 +

    + +

    +If you are using layout, accordion or tabbar then you will need to add the “dhtmlxcontainer.js†on the page. All above components doesn't require “dhtmlxWindows†anymore, and are fuly functional separately. +

    + +

    +Beware that dhtmlx.js, included in package, is compiled with dhx_skyblue skin, so if you are using the different skin - you will need to change skin in your code or recompile the dhtmlx.js through libCompiler. ( by the way, in case of components 2.5 you can change default skin for all component on the page , by simple defining dhtmlx.skin=“skin name†) +

    + +

    +If after update, you start to receive “dhtmlx is undefined†error - be sure that +

    +
      +
    • latest version of dhtmlxcommon.js is used
      +
    • +
    • you are including all other dhtmlx-related js files after dhtmlxcommon.js
      +
    • +
    + +
    +
    +

    Migration details for separate components

    + +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_dhtmlxgrid.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_dhtmlxgrid.html new file mode 100755 index 0000000000..d4fe8c5b6c --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_dhtmlxgrid.html @@ -0,0 +1,140 @@ + + + + others:special_characters_in_dhtmlxgrid [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Special Characters in dhtmlxGrid

    +
    + +

    +By default grid takes all incoming data as HTML, so it will convert any HTML special chars ( < > &amp; characters included ) +

    + +

    + +To resolve such problem, the grid supports “pure†text excell. Pure text excell editors (unlike the default ones) don't allow to put any HTML content inside them, due to their capabilities any special characters are modicification proof and correctly editable. +

    + +

    + +The following are the “pure text†cell types: +

    + +

    +rotxt - read-only text excell +edtxt - single line editor text excell +txttxt - multi-line text editor +corotxt - text only selectbox + +

    +
      mygrid.setColTypes("rotxt")
    +  ...
    +  mygrid.addRow(1,"<&amp;>"); // will render text correctly
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_xml.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_xml.html new file mode 100755 index 0000000000..52d2e0e455 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_in_xml.html @@ -0,0 +1,139 @@ + + + + others:special_characters_in_xml [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Special Characters in XML

    +
    + +

    +During the data loading from XML file|string you can have some problems with several special characters. +For XML those are < > &amp; +

    + +

    +There are two ways to store them in XML +

    + +

    +a) Escaping - the characters can be replaced with related XML entities + +

    +
          > => &amp;gt;
    +      < => &amp;lt;
    +      &amp; => &amp;amp;
    +

    + +b) use CDATA section - any data can be stored within CDATA section +

    +
          <cell> Specail characters < > &amp;</cell>      <= Incorrect
    +      <cell> Specail characters &amp;lt; &amp;gt; &amp;amp;</cell>        <= Correct
    +      <cell><![CDATA[ Specail characters < > &amp;]]></cell>        <= Correct
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_serialization.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_serialization.html new file mode 100755 index 0000000000..00c7113022 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_characters_serialization.html @@ -0,0 +1,121 @@ + + + + others:special_characters_serialization [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Special Characters Serialization

    +
    + +

    +When the grid has been serialized back to XML, special characters in cells can corrupt the final XML. To prevent such issue you can force the usage of CDATA during serialization. ( CDATA makes any content safe, so the final XML will be valid in any case ) +This mode can be enabled with the setSerializationLevel command +

    +
      grid.setSerializationLevel(false,false,false,false,false,true);
    +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_encodings_in_xml.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_encodings_in_xml.html new file mode 100755 index 0000000000..e474e3f8f6 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___special_encodings_in_xml.html @@ -0,0 +1,122 @@ + + + + others:special_encodings_in_xml [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Special Encodings in XML

    +
    + +

    +The component has agnostic encoding, so it will support any encoding which are supported by browser, just make sure you have correct XML header +<?xml version=“1.0†encoding=“ISO-8859-1†?> +The encoding attribute must specify correct encoding value. ( if this attribute is omitted, UTF-8 will be used by default) +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_dhtmlx_2_0_step_by_step.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_dhtmlx_2_0_step_by_step.html new file mode 100755 index 0000000000..d14eca2c0a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_dhtmlx_2_0_step_by_step.html @@ -0,0 +1,558 @@ + + + + others:toc_dhtmlx_2_0_step_by_step [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + + + + +

    +

    + +

    + +

    dhtmlx 2.0. Step by Step

    +
    + +

    +The purpose of this tutorial is to show in step-by-step manner the easy way of building complex interface for AJAX based application with the help of DHTMLX library. This tutorial contains main stream - which describes the process of building Windows like file explorer and some includes (marked with orange border) which describes more complex functionality or provides more details about some things which don't relate to File Explorer development. +

    + +

    +This tutorial is actual for dhtmlxSuite 2008 Rel.3 (initial release of dhtmlx 2.0). Further versions of dhtmlx components can contain some extra functionality which is not described here. Or some functionality can be used in some more convenient way. +

    + +

    +Files related to this tutorial can be downloaded here: dhtmlx20_tutorial.zip +

    + +
    +
    +

    Step 1. Create HTML File.

    +
    + +

    +Any front end of AJAX based application is HTML page. So, let's create a simple HTML page: +

    +
        <html>
    +    <head>
    +        <title>AJAX Application</title>
    +    </head>
    +    <body>
    +    </body>
    +    </html>
    +

    + +For further steps we'll use DHTMLX files concatenated with libCompiler, which is delivered within dhtmlxSuite and provides the possibility to unite all necessary components, functionality and appearance in single script file and single folder of necessary images. +

    + +
    +
    +

    Step 2. Insert DHTMLX Library File

    +
    + +

    +If you do not have PHP on the server where you inflated dhtmlxSuite archive to, then you can just choose from the presets which already exists in the package (see directory “presets†in the root of the package). To get all available possibilities, just get preset “fullâ€. +If you have PHP and you do want to create your own set of components and functionality, then brows to libCompiler/index.html. There you'll see tree of available components with nested nodes representing available functionality and possible variants of skinning on the right side. You have two options from now: +

    +
      +
    • choose preset from the dropdown list above the tree (after you make a selection it will check checkboxes near chosen components/functionality). You'll be able to extend selection or uncheck unnecessary points before generating resulting file. Also choose what skin you'd like to use for the application (on right side of libCompiler interface).
      +
    • +
    • or just start from bland print and check just necessary points yourself
      +
    • +
    + +

    +I would choose the first option. Moreover, on stage of development I would use “full†preset keeping the possibility to decrease the file size for the final stage of development. Well, either way you go, you'll get two files (js and css) and a folder with images at the end. Files are: dhtmlx.js and dhtmlx.css, folder name is imgs. Put all where you need them (css and imgs should be put togather as you got them). I put in the codebase directory in the root folder of my future app. And added js and css files to the html I have: +

    +
        <html>
    +    <head>
    +        <title>AJAX Application</title>
    +        <script src="codebase/dtmlx.js"></script>
    +        <link rel="STYLESHEET" type="text/css" href="codebase/dhtmlx.css">
    +    </head>
    +    <body>
    +    </body>
    +    </html>
    +
    +
    +

    Step 3. Prepare HTML Page

    +
    + +

    +To prepare HTML page for full-screen dhtmlxLayout, you need to set some parameters of body tag. This can be actual just for initial release of DHTMLX 2.0 and can be not necessary for newer releases: +

    +
        <body style="width:100%; height:100%; margin:0px; overflow:hidden;">
    +
    +
    +

    Step 4. Choose Layout for Application

    +
    + +

    +There are some predefined layout structures you can choose from. All of them are shown in dhtmlxLayout documentation. Their names start with number (reflects number of panels) followed by letter. For File Explorer we need quite simple one - “2Uâ€. Left panel for navigation tree and right one for directory content. To start coding I would add onload event handler to body and place all necessary code in event handler. Also, we need to define global variables for all necessary objects (left side navigation tree, folders and grid for directory view, menu and toolbar for… for menu and toolbar ;). And layout itself of course.). +

    + +

    +First we initialize full-screen layout. +

    +
        <script>
    +        var myLayout, myTree, myGrid, myFolders, myMenu, myToolbar
    +        var gl_view_type = "icons"; //icons,dlist,tiles ...
    +        var gl_view_bg = ""; //which component is used for directory content view - grid or folders, empty from start
    + 
    + 
    + 
    +        function doOnLoad(){
    +            myLayout = new dhtmlXLayoutObject(document.body, "2U", "dhx_blue");
    +        }
    +    </script>
    + 
    + 
    + 
    +    <body onload="doOnLoad()" style="width:100%; height:100%; margin:0px; overflow:hidden;">
    +
    + +

    Ways of Initialization

    +
    + +

    +Besides full screen initialization there are some others: +

    +
      +
    • window based (initialize layout inside dhtmlxWindow);
      +
    • +
    • object based (initialize layout inside some object on page, for example DIV);
      +
    • +
    • initialization inside another layout panel
      +
    • +
    + +

    + (Nested layouts topic is described below) +

    + +
    + +

    Unified Skins

    +
    + +

    +Some words about skins. dhtmlx components has various predefined skins. Since version 2.0, when we provide the possibility to unite different components under the application interface, we also added some skins which can be applied to entire interface. Under dhtmlxLayout all dhtmlx components get unified skin set for the layout automatically (but we keep the possibility to set skin to each component also). These unified skins names start with “dhx_â€:
    + + dhx_black, dhx_light, dhx_lightblue.
    + +So, using one of them as 3rd argument in dhtmlxLayout constructor you apply this skin on all dhtmlx components also. +

    + +
    + +

    Nested Layouts

    +
    + +

    +If non of predefined layouts suites you absolutely, you can combine structures inserting one into another. For example: + +

    +
              myLayoutTop = new dhtmlXLayoutObject(document.body, "2U");
    +          myLayoutIns =  new dhtmlXLayoutObject(myLayoutTop.cells("a"), "2U");
    + 
    +

    + +This code creates 2U layout in the left panel of myLayoutTop layout. Thus you'll have 3 panels for further wok now: +

    +
      +
    • myLayoutTop.cells(“bâ€);
      +
    • +
    • myLayoutIns.cells(“aâ€);
      +
    • +
    • myLayoutIns.cells(“bâ€).
      +
    • +
    + +
    +
    +

    Step 5. Adjust Panel Sizes

    +
    +
            function doOnLoad(){
    +            myLayout = new dhtmlXLayoutObject(document.body, "2U", "dhx_black");
    +            myLayout.cells("a").setWidth(250);
    +        }
    +
    + +

    Using Panels in Script

    +
    + +

    +There are two ways to apply to panel: + +

    +
      +
    • through the name (panels in dhtmlxLayout are named alphabetically: a,b,c,d etc.)
      +
    • +
    +
              dhxLayout.cells("a")
      +
    • through index (zero based)
      +
    • +
    +
              dhxLayout.items[0]
    +
    + +

    Panel Dimensions

    +
    + +

    +Besides width you can define panel height + +

    +
    myLayout.cells("a").setHeight(250);
    +
    +
    +

    Step 6. Define Panel Headers

    +
    + +

    +I'll leave header for the panel with folders tree and hide it for the panel with folder's content. Also, I'll change default header label (“a†for the panel in question) to “Foldersâ€. + +

    +
        function doOnLoad(){
    +        myLayout = new dhtmlXLayoutObject(document.body, "2U", "dhx_black");
    +        myLayout.cells("a").setText("Folders");
    +        myLayout.cells("b").hideHeader();
    +    }
    +

    + +Current version of dhtmlxLayout (2.0 build 80829) provides the possibility to collapse/expand panel with mouse click through header only. Thus if you hide header for the panel user will not be able to collapse this panel. +

    + +
    +
    +

    Step 7. Add Top Menu

    +
    + +

    +I'll create top menu with items more or less similar to those you can see in your Windows Explorer. You'll be able to find ready to use fileExplorerMenu.xml file in the package of this tutorial files (see link in the introduction). Most items are dsabled there, cause they are not the goal of this tutorial. XML structure for dhtmlxMenu 2.0 can be found in dhtmlxMenu 2.0 documentation or in the doc article which describes XML structures of all dhtmlx components. +

    +
        function doOnLoad(){
    +        ...
    +        myMenu = myLayout.attachMenu();
    +         myMenu.setImagePath("codebase/imgs/dhx_blue");
    +         myMenu.loadXML("xml/fileExplorerMenu.xml");
    +    }
    +
    +
    +

    Step 8. Add Toolbar

    +
    + +

    +Same as with the menu, toolbar items will be more or less similar to Windows File Explorer toolbar. You'll be able to find ready to use fileExplorerToolbar.xml file in the package of this tutorial files (see link in the introduction). XML structure for dhtmlxToolbar 2.0 can be found in dhtmlxToolbar 2.0 documentation or in the doc article which describes XML structures of all dhtmlx components. +

    +
        function doOnLoad(){
    +        ...
    +        myToolbar = myLayout.attachToolbar();
    +        myToolbar.setIconPath("images/toolbar/");
    +         myToolbar.loadXML("xml/fileExplorerToolbar.xml");
    +    }
    +
    +
    +

    Setting Icons or Images Paths for Components

    +
    + +

    +The difference in using setIconPath or setImagePath methods in dhtmlx components is the following: setIconPath defines the folder with graphical materials which are used in component but which are not parts of component - for example icons for buttons on toolbar, images in grid which represent some data. In most cases developer specifies the file names for these images (for example in XML) and these images are not delivered within components package (but can be in some cases). +

    + +

    +On the other hand setImagePath defines the path to folder with images which are parts of component. For example parts of component skin or integral part of component functionality (like radiobutton or checkbox icons in grid, tree, menu or sorting arrow in grid, plus/minus signs in treegrid and tree). In all cases such images are delivered with components and located in codebase/imgs folder (or imgs folder inside preset directory for dhtmlx presets). So, setImagePath sets path to this imgs folder related to the page you use components on. +

    + +
    +
    +

    Step 9. Add Tree and Populate with Data

    +
    + +

    +Most dhtmlx components can be attached to the dhtmlxLayout panel with single command. You did this with Menu and Toolbar. Same with the tree. After attaching the component you can work with it - configure, populate with data. In case of tree, we need to pass one value inside attachTree method (same we do for dhtmlxTree constructor when use it) - id of tree super-root element (id attribute of “tree†node in XML with tree structure). In most case “0†is ok. +

    +
        function doOnLoad(){
    +        ...
    +        myTree = myLayout.cells("a").attachTree("0");
    +        myTree.setImagePath("codebase/imgs/");
    +        myTree.setXMLAutoLoading("xml/directoryTree.php");
    +         myTree.loadXML("xml/directoryTree.php");
    +    }
    +

    + +directoryTree.php outputs directory structure in XML format required by dhtmlxTree. In our case it outputs one level at a time based on incoming directory (as directory structure can be quite big we use dynamical loading, loading just one level on request). If no directory came it ouputs starting directory (starting directory is specified in config.php included in tutorial files package. Find download link in Itroduction) +

    + +
    +
    +

    Step 10. Add Grid and Load Directory Content

    +
    + +

    +Again, we just add grid to dhtmlxLayout panel (in this case “bâ€) and then just work with grid - configuring and loading data. Tutorial of dhtmlxgrid basics is available here. +

    +
        function showDList(dir){
    +            //create grid in layout
    +        myGrid = myLayout.cells("b").attachGrid();
    +            //configure grid with script
    +        myGrid.setImagePath("codebase/imgs/");
    +        myGrid.setHeader("&amp;nbsp;,Name,Size,Type,Modified");
    +        myGrid.setColTypes("img,ro,ro,ro");
    +        myGrid.setInitWidths("20,250,50,100,*");
    +        myGrid.setColAlign("center,left,right,left");
    +            //load directory contnet description in XML format
    +        myGrid.load("xml/directoryContent.php?dir="+dir)
    +    }
    +

    + +directoryContent.php outputs directory content (based on incoming directory) in dhtmlxGrid XML format with all necessary details for each item (file or directory): +

    +
      +
    • icon file name;
      +
    • +
    • item name;
      +
    • +
    • item type (folder, text file, word document etc.);
      +
    • +
    • size;
      +
    • +
    • last modification date.
      +
    • +
    + +
    +
    +

    Step 11. Add Folders and Load Directory Content

    +
    + +

    +dhtmlxFolders is used to display data items one by one based on incoming data and some visualization template. In our case, we'll use same datasource as we do for grid - directoryContent.php - and visualization templates (rendering functions) to display data items either as icons or as tiles (names are similar to Windows Explorer, so you can take a look there to see what should be the result). +

    + +

    + +Adding dhtmlxFolders to layout is as simple as in previous steps: just one command. +

    +
        function showOtherViews(dir){
    +            //create Folders in layout
    +        myFolders = myLayout.cells("b").attachFolders();
    +            //confugure settings
    +        myFolders.enableSelection(true);
    +        myFolders.setItemTagName("row");
    +            //change type of items depending on required
    +        if(gl_view_type=="icons"){
    +            myFolders.setItemType("js_generic",rendFuncIcons);
    +            myFolders.setCSSBaseName("ficon");
    +        }else if(gl_view_type=="tiles"){
    +            myFolders.setItemType("js_generic",rendFuncTiles);
    +            myFolders.setCSSBaseName("ftiles");
    +        }
    +            myFolders.loadXML("xml/directoryContent.php?dir="+dir);
    +    }
    +
    +
    +

    Step 12. Activate Relations between Left and Right Parts

    +
    + +

    +Attaching dhtmlxFolders to panel “b†removes grid from there (as we attach grid to panel “b†too) and visa versa. So, depending on currently selected view format (user can make a choice in toolbar) we should call either showDList or showOtherViews function to switch between view formats. And we should do this in two cases: +

    +
      +
    1. when user clicks on some item in folders tree (load different content for same view format)
      +
    2. +
    3. when user changes view format through toolbar or menu (use different view format for same content)
      +
    4. +
    + +

    +In both cases we should use event handlers - of tree (onSelect) and of toolbar (onClick) and menu (onRadioClick as we used radiobuttons in menu for this purposes). Here is the code where I define event handlers and call same function in which I decide if to call showDList or showOtherViews. As far as menu and toolbar items use same IDs for view related items, I'll use same event handler for both. +

    +
      function showDirContent(dir){
    +          if(gl_view_type=="dlist"){
    +              showDList(dir);
    +          }else{
    +              showOtherViews(dir);
    +          }
    +  }
    + 
    + 
    + 
    +  //this function we'll use for toolbar and menu event handlers
    +  function defineTypeAndLoad(id){
    +      //set global variable value depending on user choice
    +      if(id=="view_dlist")
    +          gl_view_type="dlist";
    +      else if(id=="view_icons")
    +          gl_view_type="icons";
    +      else if(id=="view_tiles")
    +          gl_view_type="tiles";
    +      //call function
    +      if(id.toString().indexOf("view")==0)
    +          showDirContent(myTree.getSelectedItemId());
    +  }
    + 
    + 
    + 
    +  //tree event handler onSelect passes selected item ID as argument to the function. This is what we need in showDirContent, as I used directories as items IDs 
    +  myTree.attachEvent("onSelect",showDirContent)
    + 
    + 
    + 
    + 
    +  myToolbar.attachEvent("onClick",defineTypeAndLoad);
    +  myMenu.attachEvent("onRadioClick",defineTypeAndLoad);
    +
    +
    +

    Conclusion

    +
    + +

    + +This tutorial demonstrated how easy you can create the interface of your web application based on dhtmlxLayout. To investigate the application code in details, please download it here: dhtmlx20_tutorial.zip. You may continue coding it, extending basic functionality which was described in this tutorial and implemented in the resulting application. Final application logic was not the goal of this article, but interface built here is a good start for creating full functional File Browser. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_handling_special_charac.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_handling_special_charac.html new file mode 100755 index 0000000000..1b29f8cb93 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_handling_special_charac.html @@ -0,0 +1,132 @@ + + + + others:toc_handling_special_charac [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + + + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_libcompiler.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_libcompiler.html new file mode 100755 index 0000000000..88795636f8 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___toc_libcompiler.html @@ -0,0 +1,314 @@ + + + + others:toc_libcompiler [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +
    +
    Table of Contents
    + +
    + + +

    +

    + +

    + +

    libComplier

    +
    + +

    +libComplier is a utility that is created for those users who intend to use dhtmlx components. This tool is designed to make the work of developers much easier. There's no need to set paths to different JS and CSS files required for every single dhtmlx component. libComplier generates one JS and one CSS files out of them all that the user can download and use. So, instead of a pack of different files, we get only two that contain all necessary code (including styles definition). What's more, the tool also provides users with all the necessary image files for the chosen component/components, stored in one archive. +

    + +

    + +This utility provides users with the possibility to: +

    +
      +
    • Choose the necessary component/components and desired set of functionality;
      +
    • +
    • Choose the necessary skin;
      +
    • +
    • Generate a JS and a CSS files containing compilation of all the JS and CSS files needed for the chosen component/components;
      +
    • +
    • Generate an archive containing a compiled JS file and all necessary images.
      +
    • +
    + +

    +Note: two last actions mentioned are done at the same time by one button click. +

    + +
    +
    +

    libComplier's Interface

    +
    + +

    +libComplier's interface is quite simple, intuitive, and user-friendly. The program is displayed with the help of “3J†Layout view with a Toolbar attached to it. Each item in this Layout can be collapsed or expanded; the dimensions of each them can be easily changed by dragging one of its sides with a mouse. +

    + +

    + +

    + +
    + +

    Tree

    +
    + +

    +The Tree is displayed in the left upper item of Compiler's layout. The main parent tree node is called “dhtmlxComponentsâ€. Its child branch items represent dhtmlx components. Leaf items stand for the main functionality of a certain component. +

    + +

    +When the user checks any leaf item, all its parent items become checked as well. On startup none of tree items is checked, and only the main parent node is expanded. There is the possibility to expand or collapse all tree nodes using toolbar buttons. Also the user can check or uncheck all tree nodes by one button click. +

    + +
    + +
    Features
    +
    + +

    +There is also a drop-down list called “Features†in the functional panel of the left upper item of Compiler's layout. This drop-down list contains ready-made presets for the most commonly used dhtmlx components or their combinations. +

    + +

    +The available ready-made presets are as follows: +

    +
      +
    • Custom Set - it's not a preset, it's the possibility for the user to return the tree to its initial state - when nothing is checked;
      +
    • +
    • Grid Basic - this preset includes basic grid functionality: data loading, sorting, resizing, editing (ed,ro,txt), data serialization, API for selection and rows adding;
      +
    • +
    • Grid Full - this preset contains all grid functionality - grouping, filtering, math, d-n-d, additional excell types;
      +
    • +
    • Tree Basic - here the user will find basic tree functionality: data loading from XML, ability to add|delete rows, d-n-d, checkboxes;
      +
    • +
    • Tree Full - all tree functionality is included into this preset (sorting, loading from json, serialization, operation with cookies);
      +
    • +
    • TreeGrid Basic - this preset contains basic treegrid functionality, which is loading and API, plus basic grid functionality;
      +
    • +
    • TreeGrid Full - in this preset the user will find basic treegrid functionality + filtering in treegrid + ability to show tree lines, as well as full grid functionality;
      +
    • +
    • Suite Basic - this preset includes grid, tree, treegrid, combo, and tabbar components with their basic functionality;
      +
    • +
    • Suite Full - all functionality of all components is added to this preset;
      +
    • +
    • Explorer Base - this preset is a base set to use the layout and the main components (tree and grid).
      +
    • +
    + +

    +When the user chooses one of the preset from the list, the utility checks the necessary tree nodes, which files will be compiled, and shows the details of the chosen preset. +On startup Custom Set preset is chosen from the drop-down list. + +

    + +
    + +

    Details

    +
    + +

    +The Details part is situated right under the tree, in the left lower part of Complier's layout. It shows brief description for leaf items and for some of the branch items. The details are used to give the user general information on the chosen item. + +

    + +
    + +

    Used Skin

    +
    + +

    +This part of Compiler's layout allows the user to choose the skin he wants to apply to his project. The only thing the user should do is to choose one of the available skins displayed by clicking the radio button near the skin name. Each available skin is backed up by a picture that can be viewed full size by clicking it. The picture then will be opened in a new window. +

    + +

    +On startup dhx_blue skin is chosen. + +

    + +
    + +

    Toolbar

    +
    + +

    +The toolbar contains the following buttons: +

    +
      +
    • Expand all - a click on this button expands all nodes in the Tree;
      +
    • +
    • Collapse all - a click on this button collapses all Tree nodes;
      +
    • +
    • Check all - a click on this button checks all Tree nodes (branch and leaf ones);
      +
    • +
    • Uncheck all - a click on this button uncheks all Tree nodes (branch and leaf ones);
      +
    • +
    • Generate - a click on this button generates a compiled JS and a CSS files in an archive, a link to which is displayed in a popup “Generated code†window.
      +
    • +
    + +

    + +Note: “Generated code†window will be displayed only if the user has already chosen a skin and a component/components in the Tree. +

    + +
    + +
    Generated Code Window
    +
    + +

    +This popup window appears when the user clicks “Generate†toolbar button. The window contains the progress text while the system generates the necessary data. +When the data is generated, the window displays the following: +

    +
      +
    • Text: “Ready code stored at [path to the directory the code is stored];
      +
    • +
    • Archive link: “Get all as zip†- a link to the generated archive containing a JS file, a CSS file, and all necessary images. The user can download the archive by clicking the link.
      +
    • +
    + +

    +The user should close the window after the download is finished. +

    + +
    +
    +

    How libComplier Works

    +
    + +

    +All files (JS and CSS ones) are compressed and compiled into one JS and one CSS files, which is put into an archive together with all the necessary image files. +

    + +

    +The only parameter in get_files.php file, that the user can indicate, is the following: + +

    +
          define("YUI",true);
    + 
    +

    + +Here true means that YUI compressor will be used for files compression. While false stands for more simple files compression. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___troubleshooting_common_errors.html b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___troubleshooting_common_errors.html new file mode 100755 index 0000000000..9c5bc35dde --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/docsExplorer/start/others___troubleshooting_common_errors.html @@ -0,0 +1,193 @@ + + + + others:troubleshooting_common_errors [DHX documentation] + + + +
    + +
    + +
    + + DHTMLX Docs & Samples Explorer + +
    +
    +
    + + +
    + + +
    + + + + + + + +
    + + +
    + + +

    +

    + +

    + +

    Incorrect order of js files

    +
    + +

    + +Symptom: One of next error appears +

    +
      +
    1. “dhtmlx is undefinedâ€
      +
    2. +
    3. “dhtmlxExcell is undefinedâ€
      +
    4. +
    5. “dhtmlX[Something] is undefinedâ€
      +
    6. +
    + +

    + +Solution: Check order of js files, it must be +

    +
      +
    1. dhtmlxcommon.js
      +
    2. +
    3. dhtmlx[Component].js ( dhtmlxgrid.js for grid, dhtmlxtree.js for tree and etc. )
      +
    4. +
    5. any extensions for the component
      +
    6. +
    + +

    + +In case of dhtmlxgrid +

    +
      +
    1. dhtmlxcommon.js
      +
    2. +
    3. dhtmlxgridcell.js
      +
    4. +
    5. dhtmlxgrid.js
      +
    6. +
    7. any extensions for the grid
      +
    8. +
    + +

    + +In case of layout, windows, tabbar, accordion components you need to include dhtmlxcontainer.js as well +

    + +

    +Alternative solution: full package contains dhtmlx_full.zip ( dhtmlx_standard_full.zip ) archive, which contains “all included†dhtmlx.js, which can be used instead of separate js files. Including this single file is equal to including all base and extension files at once. +

    + +
    +
    +

    Incorrect XML

    +
    + +

    + +Symptom: “Incorrect XML†message. +

    + +

    +Reasons: +

    +
      +
    1. Incorrect XML structure - it may be caused by incorrectly formed XML tags, or by using some special content (& < > chars) inside the tag values. The simplest way to detect the reason for an XML error is open the url used for XML loading in a separate browser window. It will show the error details and exact position of the problematic code;
      +
    2. +
    3. (IE specific) Usage of incorrect content type - if you are using dynamic XML source (generate it by the script), you need to send the data with Content-type:text/xml;
      +
    4. +
    5. (FF specific) In case of FF the problem may occur because of any whitespace before <?xml declaraton (the declaration must be the first text in the output).
      +
    6. +
    + +

    + +If you are using a dynamic XML source, pay attention to the fact that the output during a stand alone test may not be equal to the output during the usage of the same feed with the component. You can try to use the debug version of dhtmlxcommon to check which urls are used and which xml output was sent during the data loading. +

    + +
    +
    + +
    + +
     
    + + +
    + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + +
    + + +
    + +
    + + + diff --git a/phpgwapi/js/dhtmlxtree/index.html b/phpgwapi/js/dhtmlxtree/index.html new file mode 100755 index 0000000000..952586ea3b --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/index.html @@ -0,0 +1,14 @@ + + + + + DHTMLX Package + + + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js b/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js new file mode 100755 index 0000000000..e8144c718a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/js/dhtmlXCommon.js @@ -0,0 +1,928 @@ +dhtmlx=function(obj){ + for (var a in obj) dhtmlx[a]=obj[a]; + return dhtmlx; //simple singleton +}; +dhtmlx.extend_api=function(name,map,ext){ + var t = window[name]; + if (!t) return; //component not defined + window[name]=function(obj){ + if (obj && typeof obj == "object" && !obj.tagName){ + var that = t.apply(this,(map._init?map._init(obj):arguments)); + //global settings + for (var a in dhtmlx) + if (map[a]) this[map[a]](dhtmlx[a]); + //local settings + for (var a in obj){ + if (map[a]) this[map[a]](obj[a]); + else if (a.indexOf("on")==0){ + this.attachEvent(a,obj[a]); + } + } + } else + var that = t.apply(this,arguments); + if (map._patch) map._patch(this); + return that||this; + }; + window[name].prototype=t.prototype; + if (ext) + dhtmlXHeir(window[name].prototype,ext); +}; + +dhtmlxAjax={ + get:function(url,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<3); + t.waitCall=callback; + t.loadXML(url) + return t; + }, + post:function(url,post,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<4); + t.waitCall=callback; + t.loadXML(url,true,post) + return t; + }, + getSync:function(url){ + return this.get(url,null,true) + }, + postSync:function(url,post){ + return this.post(url,post,null,true); + } +} + +/** + * @desc: xmlLoader object + * @type: private + * @param: funcObject - xml parser function + * @param: object - jsControl object + * @param: async - sync/async mode (async by default) + * @param: rSeed - enable/disable random seed ( prevent IE caching) + * @topic: 0 + */ +function dtmlXMLLoaderObject(funcObject, dhtmlObject, async, rSeed){ + this.xmlDoc=""; + + if (typeof (async) != "undefined") + this.async=async; + else + this.async=true; + + this.onloadAction=funcObject||null; + this.mainObject=dhtmlObject||null; + this.waitCall=null; + this.rSeed=rSeed||false; + return this; +}; +/** + * @desc: xml loading handler + * @type: private + * @param: dtmlObject - xmlLoader object + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ + var once = true; + this.check=function (){ + if ((dhtmlObject)&&(dhtmlObject.onloadAction != null)){ + if ((!dhtmlObject.xmlDoc.readyState)||(dhtmlObject.xmlDoc.readyState == 4)){ + if (!once) + return; + + once=false; //IE 5 fix + if (typeof dhtmlObject.onloadAction == "function") + dhtmlObject.onloadAction(dhtmlObject.mainObject, null, null, null, dhtmlObject); + + if (dhtmlObject.waitCall){ + dhtmlObject.waitCall.call(this,dhtmlObject); + dhtmlObject.waitCall=null; + } + } + } + }; + return this.check; +}; + +/** + * @desc: return XML top node + * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) + * @type: private + * @returns: top XML node + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName, oldObj){ + if (this.xmlDoc.responseXML){ + var temp = this.xmlDoc.responseXML.getElementsByTagName(tagName); + if(temp.length==0 && tagName.indexOf(":")!=-1) + var temp = this.xmlDoc.responseXML.getElementsByTagName((tagName.split(":"))[1]); + var z = temp[0]; + } else + var z = this.xmlDoc.documentElement; + + if (z){ + this._retry=false; + return z; + } + + if ((_isIE)&&(!this._retry)){ + //fall back to MS.XMLDOM + var xmlString = this.xmlDoc.responseText; + var oldObj = this.xmlDoc; + this._retry=true; + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=false; + this.xmlDoc["loadXM"+"L"](xmlString); + + return this.getXMLTopNode(tagName, oldObj); + } + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (oldObj||this.xmlDoc), + this.mainObject + ]); + + return document.createElement("DIV"); +}; + +/** + * @desc: load XML from string + * @type: private + * @param: xmlString - xml string + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ + { + try{ + var parser = new DOMParser(); + this.xmlDoc=parser.parseFromString(xmlString, "text/xml"); + } + catch (e){ + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=this.async; + this.xmlDoc["loadXM"+"L"](xmlString); + } + } + + this.onloadAction(this.mainObject, null, null, null, this); + + if (this.waitCall){ + this.waitCall(); + this.waitCall=null; + } +} +/** + * @desc: load XML + * @type: private + * @param: filePath - xml file path + * @param: postMode - send POST request + * @param: postVars - list of vars for post request + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXML=function(filePath, postMode, postVars, rpc){ + if (this.rSeed) + filePath+=((filePath.indexOf("?") != -1) ? "&" : "?")+"a_dhx_rSeed="+(new Date()).valueOf(); + this.filePath=filePath; + + if ((!_isIE)&&(window.XMLHttpRequest)) + this.xmlDoc=new XMLHttpRequest(); + else { + this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"); + } + + if (this.async) + this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); + this.xmlDoc.open(postMode ? "POST" : "GET", filePath, this.async); + + if (rpc){ + this.xmlDoc.setRequestHeader("User-Agent", "dhtmlxRPC v0.1 ("+navigator.userAgent+")"); + this.xmlDoc.setRequestHeader("Content-type", "text/xml"); + } + + else if (postMode) + this.xmlDoc.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); + + this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"); + this.xmlDoc.send(null||postVars); + + if (!this.async) + (new this.waitLoadFunction(this))(); +}; +/** + * @desc: destructor, cleans used memory + * @type: private + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.destructor=function(){ + this._filterXPath = null; + this._getAllNamedChilds = null; + this._retry = null; + this.async = null; + this.rSeed = null; + this.filePath = null; + this.onloadAction = null; + this.mainObject = null; + this.xmlDoc = null; + this.doXPath = null; + this.doXPathOpera = null; + this.doXSLTransToObject = null; + this.doXSLTransToString = null; + this.loadXML = null; + this.loadXMLString = null; + // this.waitLoadFunction = null; + this.doSerialization = null; + this.xmlNodeToJSON = null; + this.getXMLTopNode = null; + this.setXSLParamValue = null; + return null; +} + +dtmlXMLLoaderObject.prototype.xmlNodeToJSON = function(node){ + var t={}; + for (var i=0; i-1) + _isChrome=true; + +if ((navigator.userAgent.indexOf('Safari') != -1)||(navigator.userAgent.indexOf('Konqueror') != -1)){ + var _KHTMLrv = parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Safari')+7, 5)); + + if (_KHTMLrv > 525){ //mimic FF behavior for Safari 3.1+ + _isFF=true; + var _FFrv = 1.9; + } else + _isKHTML=true; +} else if (navigator.userAgent.indexOf('Opera') != -1){ + _isOpera=true; + _OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Opera')+6, 3)); +} + + +else if (navigator.appName.indexOf("Microsoft") != -1){ + _isIE=true; + if (navigator.appVersion.indexOf("MSIE 8.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; + if (navigator.appVersion.indexOf("MSIE 9.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; +} else { + _isFF=true; + var _FFrv = parseFloat(navigator.userAgent.split("rv:")[1]) +} + + +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPath=function(xpathExp, docObj, namespace, result_type){ + if (_isKHTML || (!_isIE && !window.XPathResult)) + return this.doXPathOpera(xpathExp, docObj); + + if (_isIE){ //IE + if (!docObj) + if (!this.xmlDoc.nodeName) + docObj=this.xmlDoc.responseXML + else + docObj=this.xmlDoc; + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (namespace != null) + docObj.setProperty("SelectionNamespaces", "xmlns:xsl='"+namespace+"'"); // + + if (result_type == 'single'){ + return docObj.selectSingleNode(xpathExp); + } + else { + return docObj.selectNodes(xpathExp)||new Array(0); + } + } else { //Mozilla + var nodeObj = docObj; + + if (!docObj){ + if (!this.xmlDoc.nodeName){ + docObj=this.xmlDoc.responseXML + } + else { + docObj=this.xmlDoc; + } + } + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (docObj.nodeName.indexOf("document") != -1){ + nodeObj=docObj; + } + else { + nodeObj=docObj; + docObj=docObj.ownerDocument; + } + var retType = XPathResult.ANY_TYPE; + + if (result_type == 'single') + retType=XPathResult.FIRST_ORDERED_NODE_TYPE + var rowsCol = new Array(); + var col = docObj.evaluate(xpathExp, nodeObj, function(pref){ + return namespace + }, retType, null); + + if (retType == XPathResult.FIRST_ORDERED_NODE_TYPE){ + return col.singleNodeValue; + } + var thisColMemb = col.iterateNext(); + + while (thisColMemb){ + rowsCol[rowsCol.length]=thisColMemb; + thisColMemb=col.iterateNext(); + } + return rowsCol; + } +} + +function _dhtmlxError(type, name, params){ + if (!this.catches) + this.catches=new Array(); + + return this; +} + +_dhtmlxError.prototype.catchError=function(type, func_name){ + this.catches[type]=func_name; +} +_dhtmlxError.prototype.throwError=function(type, name, params){ + if (this.catches[type]) + return this.catches[type](type, name, params); + + if (this.catches["ALL"]) + return this.catches["ALL"](type, name, params); + + alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]); + return null; +} + +window.dhtmlxError=new _dhtmlxError(); + + +//opera fake, while 9.0 not released +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPathOpera=function(xpathExp, docObj){ + //this is fake for Opera + var z = xpathExp.replace(/[\/]+/gi, "/").split('/'); + var obj = null; + var i = 1; + + if (!z.length) + return []; + + if (z[0] == ".") + obj=[docObj]; else if (z[0] == ""){ + obj=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(z[i].replace(/\[[^\]]*\]/g, "")); + i++; + } else + return []; + + for (i; i < z.length; i++)obj=this._getAllNamedChilds(obj, z[i]); + + if (z[i-1].indexOf("[") != -1) + obj=this._filterXPath(obj, z[i-1]); + return obj; +} + +dtmlXMLLoaderObject.prototype._filterXPath=function(a, b){ + var c = new Array(); + var b = b.replace(/[^\[]*\[\@/g, "").replace(/[\[\]\@]*/g, ""); + + for (var i = 0; i < a.length; i++) + if (a[i].getAttribute(b)) + c[c.length]=a[i]; + + return c; +} +dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(a, b){ + var c = new Array(); + + if (_isKHTML) + b=b.toUpperCase(); + + for (var i = 0; i < a.length; i++)for (var j = 0; j < a[i].childNodes.length; j++){ + if (_isKHTML){ + if (a[i].childNodes[j].tagName&&a[i].childNodes[j].tagName.toUpperCase() == b) + c[c.length]=a[i].childNodes[j]; + } + + else if (a[i].childNodes[j].tagName == b) + c[c.length]=a[i].childNodes[j]; + } + + return c; +} + +function dhtmlXHeir(a, b){ + for (var c in b) + if (typeof (b[c]) == "function") + a[c]=b[c]; + return a; +} + +function dhtmlxEvent(el, event, handler){ + if (el.addEventListener) + el.addEventListener(event, handler, false); + + else if (el.attachEvent) + el.attachEvent("on"+event, handler); +} + +//============= XSL Extension =================================== + +dtmlXMLLoaderObject.prototype.xslDoc=null; +dtmlXMLLoaderObject.prototype.setXSLParamValue=function(paramName, paramValue, xslDoc){ + if (!xslDoc) + xslDoc=this.xslDoc + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML; + var item = + this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+paramName+"']", xslDoc, + "http:/\/www.w3.org/1999/XSL/Transform", "single"); + + if (item != null) + item.firstChild.nodeValue=paramValue +} +dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(xslDoc, xmlDoc){ + if (!xslDoc) + xslDoc=this.xslDoc; + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML + + if (!xmlDoc) + xmlDoc=this.xmlDoc; + + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + + //MOzilla + if (!_isIE){ + if (!this.XSLProcessor){ + this.XSLProcessor=new XSLTProcessor(); + this.XSLProcessor.importStylesheet(xslDoc); + } + var result = this.XSLProcessor.transformToDocument(xmlDoc); + } else { + var result = new ActiveXObject("Msxml2.DOMDocument.3.0"); + try{ + xmlDoc.transformNodeToObject(xslDoc, result); + }catch(e){ + result = xmlDoc.transformNode(xslDoc); + } + } + return result; +} + +dtmlXMLLoaderObject.prototype.doXSLTransToString=function(xslDoc, xmlDoc){ + var res = this.doXSLTransToObject(xslDoc, xmlDoc); + if(typeof(res)=="string") + return res; + return this.doSerialization(res); +} + +dtmlXMLLoaderObject.prototype.doSerialization=function(xmlDoc){ + if (!xmlDoc) + xmlDoc=this.xmlDoc; + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + if (!_isIE){ + var xmlSerializer = new XMLSerializer(); + return xmlSerializer.serializeToString(xmlDoc); + } else + return xmlDoc.xml; +} + +/** +* @desc: +* @type: private +*/ +dhtmlxEventable=function(obj){ + obj.attachEvent=function(name, catcher, callObj){ + name='ev_'+name.toLowerCase(); + if (!this[name]) + this[name]=new this.eventCatcher(callObj||this); + + return(name+':'+this[name].addEvent(catcher)); //return ID (event name & event ID) + } + obj.callEvent=function(name, arg0){ + name='ev_'+name.toLowerCase(); + if (this[name]) + return this[name].apply(this, arg0); + return true; + } + obj.checkEvent=function(name){ + return (!!this['ev_'+name.toLowerCase()]) + } + obj.eventCatcher=function(obj){ + var dhx_catch = []; + var z = function(){ + var res = true; + for (var i = 0; i < dhx_catch.length; i++){ + if (dhx_catch[i] != null){ + var zr = dhx_catch[i].apply(obj, arguments); + res=res&&zr; + } + } + return res; + } + z.addEvent=function(ev){ + if (typeof (ev) != "function") + ev=eval(ev); + if (ev) + return dhx_catch.push(ev)-1; + return false; + } + z.removeEvent=function(id){ + dhx_catch[id]=null; + } + return z; + } + obj.detachEvent=function(id){ + if (id != false){ + var list = id.split(':'); //get EventName and ID + this[list[0]].removeEvent(list[1]); //remove event + } + } + obj.detachAllEvents = function(){ + for (var name in this){ + if (name.indexOf("ev_")==0) + delete this[name]; + } + } +} diff --git a/phpgwapi/js/dhtmlxtree/js/dhtmlXTree.js b/phpgwapi/js/dhtmlxtree/js/dhtmlXTree.js new file mode 100755 index 0000000000..b5816eee04 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/js/dhtmlXTree.js @@ -0,0 +1,211 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ + + +function xmlPointer(data){this.d=data;};xmlPointer.prototype={text:function(){if (!_isFF)return this.d.xml;var x = new XMLSerializer();return x.serializeToString(this.d);}, + get:function(name){return this.d.getAttribute(name);}, + exists:function(){return !!this.d }, + content:function(){return this.d.firstChild?this.d.firstChild.data:"";}, + each:function(name,f,t,i){var a=this.d.childNodes;var c=new xmlPointer();if (a.length)for (i=i||0;i0){beforeNode=new Object;beforeNode.tr=parentObject.childNodes[0].tr.previousSibling;};parentObject._has_top=true;for (ik=Count;ik>0;ik--)Nodes[ik]=Nodes[ik-1];Count=0;break;}}};var n;if (!(n=this._idpull[itemId])|| n.span!=-1){n=Nodes[Count]=new dhtmlXTreeItemObject(itemId,itemText,parentObject,this,itemActionHandler,1);itemId = Nodes[Count].id;parentObject.childsCount++;};if(!n.htmlNode){n.label=itemText;n.htmlNode=this._createItem((this.checkBoxOff?1:0),n);n.htmlNode.objBelong=n;};if(image1)n.images[0]=image1;if(image2)n.images[1]=image2;if(image3)n.images[2]=image3;var tr=this._drawNewTr(n.htmlNode);if ((this.XMLloadingWarning)||(this._hAdI)) + n.htmlNode.parentNode.parentNode.style.display="none";if ((beforeNode)&&(beforeNode.tr.nextSibling)) + parentObject.htmlNode.childNodes[0].insertBefore(tr,beforeNode.tr.nextSibling);else + if (this.parsingOn==parentObject.id){this.parsedArray[this.parsedArray.length]=tr;}else + parentObject.htmlNode.childNodes[0].appendChild(tr);if ((beforeNode)&&(!beforeNode.span)) beforeNode=null;if (this.XMLsource)if ((childs)&&(childs!=0)) n.XMLload=0;else n.XMLload=1;n.tr=tr;tr.nodem=n;if (parentObject.itemId==0)tr.childNodes[0].className="hiddenRow";if ((parentObject._r_logic)||(this._frbtr)) + this._setSrc(n.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0],this.imPath+this.radioArray[0]);if (optionStr){var tempStr=optionStr.split(",");for (var i=0;i=2){this._correctPlus(Nodes[parentObject.childsCount-2]);this._correctLine(Nodes[parentObject.childsCount-2]);};if (parentObject.childsCount!=2)this._correctPlus(Nodes[0]);if (this.tscheck)this._correctCheckStates(parentObject);if (this._onradh){if (this.xmlstate==1){var old=this.onXLE;this.onXLE=function(id){this._onradh(itemId);if (old)old(id);}}else + this._onradh(itemId);}};return n;};dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){var parentObject=this._globalIdStorageFind(parentId);if (!parentObject)return (-1);var nodez=this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children);return nodez;};dhtmlXTreeObject.prototype.insertNewChild=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children){return this.insertNewItem(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,children);};dhtmlXTreeObject.prototype._parseXMLTree=function(a,b,c,d,xml){var p=new xmlPointer(xml.getXMLTopNode("tree"));a._parse(p);a._p=p;};dhtmlXTreeObject.prototype._parseItem=function(c,temp,preNode,befNode){var id;if (this._srnd && (!this._idpull[id=c.get("id")] || !this._idpull[id].span)) + {this._addItemSRND(temp.id,id,c);return;};var a=c.get_all();if ((typeof(this.waitUpdateXML)=="object")&&(!this.waitUpdateXML[a.id])){this._parse(c,a.id,1);return;};var zST=[];if (a.select)zST.push("SELECT");if (a.top)zST.push("TOP");if (a.call)this.nodeAskingCall=a.id;if (a.checked==-1)zST.push("HCHECKED");else if (a.checked)zST.push("CHECKED");if (a.open)zST.push("OPEN");if (this.waitUpdateXML){if (this._globalIdStorageFind(a.id)) + var newNode=this.updateItem(a.id,a.text,a.im0,a.im1,a.im2,a.checked);else{if (this.npl==0)zST.push("TOP");else preNode=temp.childNodes[this.npl];var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,0,preNode);preNode=null;}}else + var newNode=this._attachChildNode(temp,a.id,a.text,0,a.im0,a.im1,a.im2,zST.join(","),a.child,(befNode||0),preNode);if (a.tooltip)newNode.span.parentNode.parentNode.title=a.tooltip;if (a.style)if (newNode.span.style.cssText)newNode.span.style.cssText+=(";"+a.style);else + newNode.span.setAttribute("style",newNode.span.getAttribute("style")+";"+a.style);if (a.radio)newNode._r_logic=true;if (a.nocheckbox){var check_node=newNode.span.parentNode.previousSibling.previousSibling;check_node.childNodes[0].style.display='none';if (window._KHTMLrv)check_node.style.display="none";newNode.nocheckbox=true;};if (a.disabled){if (a.checked!=null)this._setCheck(newNode,a.checked);this.disableCheckbox(newNode,1);};newNode._acc=a.child||0;if (this.parserExtension)this.parserExtension._parseExtension.call(this,c,a,(temp?temp.id:0));this.setItemColor(newNode,a.aCol,a.sCol);if (a.locked=="1")this.lockItem(newNode.id,true,true);if ((a.imwidth)||(a.imheight)) this.setIconSize(a.imwidth,a.imheight,newNode);if ((a.closeable=="0")||(a.closeable=="1")) this.setItemCloseable(newNode,a.closeable);var zcall="";if (a.topoffset)this.setItemTopOffset(newNode,a.topoffset);if ((!this.slowParse)||(typeof(this.waitUpdateXML)=="object")){if (c.sub_exists("item")) + zcall=this._parse(c,a.id,1);};if (zcall!="")this.nodeAskingCall=zcall;c.each("userdata",function(u){this.setUserData(c.get("id"),u.get("name"),u.content());},this) + + + };dhtmlXTreeObject.prototype._parse=function(p,parentId,level,start){if (this._srnd && !this.parentObject.offsetHeight){var self=this;return window.setTimeout(function(){self._parse(p,parentId,level,start);},100);};if (!p.exists()) return;this.skipLock=true;if (!parentId){parentId=p.get("id");if (p.get("radio")) + this.htmlNode._r_logic=true;this.parsingOn=parentId;this.parsedArray=new Array();this.setCheckList="";this.nodeAskingCall="";};var temp=this._globalIdStorageFind(parentId);if (!temp)return dhtmlxError.throwError("DataStructure","XML refers to not existing parent");this.parsCount=this.parsCount?(this.parsCount+1):1;this.XMLloadingWarning=1;if ((temp.childsCount)&&(!start)&&(!this._edsbps)&&(!temp._has_top)) + var preNode=0;else + var preNode=0;this.npl=0;p.each("item",function(c,i){temp.XMLload=1;if ((this._epgps)&&(this._epgpsC==this.npl)){this._setNextPageSign(temp,this.npl+1*(start||0),level,node);return -1;};this._parseItem(c,temp,0,preNode);this.npl++;},this,start);if (!level){p.each("userdata",function(u){this.setUserData(p.get("id"),u.get("name"),u.content());},this);temp.XMLload=1;if (this.waitUpdateXML){this.waitUpdateXML=false;for (var i=temp.childsCount-1;i>=0;i--)if (temp.childNodes[i]._dmark)this.deleteItem(temp.childNodes[i].id);};var parsedNodeTop=this._globalIdStorageFind(this.parsingOn);for (var i=0;i1){if ( ( (Nodes[1].style.display!="none")|| (mode==1) ) && (mode!=2) ) {this.allTree.childNodes[0].border = "1";this.allTree.childNodes[0].border = "0";nodestyle="none";}else nodestyle="";for (var i=1;i7)td2.style.width="999999px";else if (!window._KHTMLrv)td2.style.width="100%";itemObject.span.innerHTML=itemObject.label;td2.appendChild(itemObject.span);td2.parentObject=itemObject;td1.parentObject=itemObject;td2.onclick=this.onRowSelect;td1.onclick=this.onRowClick;td2.ondblclick=this.onRowClick2;if (this.ettip)tr.title=itemObject.label;if (this.dragAndDropOff){if (this._aimgs){this.dragger.addDraggableItem(td12,this);td12.parentObject=itemObject;};this.dragger.addDraggableItem(td2,this);};itemObject.span.style.paddingLeft="5px";itemObject.span.style.paddingRight="5px";td2.style.verticalAlign="";td2.style.fontSize="10pt";td2.style.cursor=this.style_pointer;tr.appendChild(td1);tr.appendChild(td11);tr.appendChild(td12);tr.appendChild(td2);tbody.appendChild(tr);table.appendChild(tbody);if (this.ehlt || this.checkEvent("onMouseIn")|| this.checkEvent("onMouseOut")){tr.onmousemove=this._itemMouseIn;tr[(_isIE)?"onmouseleave":"onmouseout"]=this._itemMouseOut;};return table;};dhtmlXTreeObject.prototype.setImagePath=function( newPath ){this.imPath=newPath;this.iconURL=newPath;};dhtmlXTreeObject.prototype.setIconPath=function(path){this.iconURL=path;};dhtmlXTreeObject.prototype.setOnRightClickHandler=function(func){this.attachEvent("onRightClick",func);};dhtmlXTreeObject.prototype.setOnClickHandler=function(func){this.attachEvent("onClick",func);};dhtmlXTreeObject.prototype.setOnSelectStateChange=function(func){this.attachEvent("onSelect",func);};dhtmlXTreeObject.prototype.setXMLAutoLoading=function(filePath){this.XMLsource=filePath;};dhtmlXTreeObject.prototype.setOnCheckHandler=function(func){this.attachEvent("onCheck",func);};dhtmlXTreeObject.prototype.setOnOpenHandler=function(func){this.attachEvent("onOpenStart",func);};dhtmlXTreeObject.prototype.setOnOpenStartHandler=function(func){this.attachEvent("onOpenStart",func);};dhtmlXTreeObject.prototype.setOnOpenEndHandler=function(func){this.attachEvent("onOpenEnd",func);};dhtmlXTreeObject.prototype.setOnDblClickHandler=function(func){this.attachEvent("onDblClick",func);};dhtmlXTreeObject.prototype.openAllItems=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;this._xopenAll(temp);};dhtmlXTreeObject.prototype.getOpenState=function(itemId){var temp=this._globalIdStorageFind(itemId);if (!temp)return "";return this._getOpenState(temp);};dhtmlXTreeObject.prototype.closeAllItems=function(itemId) + {if (itemId===window.undefined)itemId=this.rootId;var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;this._xcloseAll(temp);this.allTree.childNodes[0].border = "1";this.allTree.childNodes[0].border = "0";};dhtmlXTreeObject.prototype.setUserData=function(itemId,name,value){var sNode=this._globalIdStorageFind(itemId,0,true);if (!sNode)return;if(name=="hint")sNode.htmlNode.childNodes[0].childNodes[0].title=value;if (typeof(sNode.userData["t_"+name])=="undefined"){if (!sNode._userdatalist)sNode._userdatalist=name;else sNode._userdatalist+=","+name;};sNode.userData["t_"+name]=value;};dhtmlXTreeObject.prototype.getUserData=function(itemId,name){var sNode=this._globalIdStorageFind(itemId,0,true);if (!sNode)return;return sNode.userData["t_"+name];};dhtmlXTreeObject.prototype.getItemColor=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;var res= new Object();if (temp.acolor)res.acolor=temp.acolor;if (temp.scolor)res.scolor=temp.scolor;return res;};dhtmlXTreeObject.prototype.setItemColor=function(itemId,defaultColor,selectedColor) + {if ((itemId)&&(itemId.span)) + var temp=itemId;else + var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;else {if (temp.i_sel){if (selectedColor)temp.span.style.color=selectedColor;}else + {if (defaultColor)temp.span.style.color=defaultColor;};if (selectedColor)temp.scolor=selectedColor;if (defaultColor)temp.acolor=defaultColor;}};dhtmlXTreeObject.prototype.getItemText=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;return(temp.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML);};dhtmlXTreeObject.prototype.getParentId=function(itemId) + {var temp=this._globalIdStorageFind(itemId);if ((!temp)||(!temp.parentObject)) return "";return temp.parentObject.id;};dhtmlXTreeObject.prototype.changeItemId=function(itemId,newItemId) + {if (itemId==newItemId)return;var temp=this._globalIdStorageFind(itemId);if (!temp)return 0;temp.id=newItemId;temp.span.contextMenuId=newItemId;this._idpull[newItemId]=this._idpull[itemId];delete this._idpull[itemId];};dhtmlXTreeObject.prototype.doCut=function(){if (this.nodeCut)this.clearCut();this.nodeCut=(new Array()).concat(this._selected);for (var i=0;i=2){this._correctPlus(Nodes[targetObject.childsCount-2]);this._correctLine(Nodes[targetObject.childsCount-2]);};this._correctPlus(Nodes[targetObject.childsCount-1]);if (this.tscheck)this._correctCheckStates(targetObject);if (oldTree.tscheck)oldTree._correctCheckStates(z);};if (c>1){oldTree._correctPlus(z.childNodes[c-2]);oldTree._correctLine(z.childNodes[c-2]);};oldTree._correctPlus(z);oldTree._correctLine(z);this.callEvent("onDrop",[itemObject.id,targetObject.id,(beforeNode?beforeNode.id:null),oldTree,targetObject.treeNod]);return itemObject.id;};dhtmlXTreeObject.prototype._clearStyles=function(itemObject){if (!itemObject.htmlNode)return;var td1=itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[1];var td3=td1.nextSibling.nextSibling;itemObject.span.innerHTML=itemObject.label;itemObject.i_sel=false;if (itemObject._aimgs)this.dragger.removeDraggableItem(td1.nextSibling);if (this.checkBoxOff){td1.childNodes[0].style.display="";td1.childNodes[0].onclick=this.onCheckBoxClick;this._setSrc(td1.childNodes[0],this.imPath+this.checkArray[itemObject.checkstate]);}else td1.childNodes[0].style.display="none";td1.childNodes[0].treeNod=this;this.dragger.removeDraggableItem(td3);if (this.dragAndDropOff)this.dragger.addDraggableItem(td3,this);if (this._aimgs)this.dragger.addDraggableItem(td1.nextSibling,this);td3.childNodes[0].className="standartTreeRow";td3.onclick=this.onRowSelect;td3.ondblclick=this.onRowClick2;td1.previousSibling.onclick=this.onRowClick;this._correctLine(itemObject);this._correctPlus(itemObject);for (var i=0;i0)) + {if (node.childNodes[i].unParsed)var zb=this._getAllScraggyItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllScraggyItems(node.childNodes[i]) + + if (zb)if (z)z+=this.dlmtr+zb;else z=zb;}else + if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;};return z;};dhtmlXTreeObject.prototype._getAllFatItems =function(node) + {var z="";for (var i=0;i0)) + {if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;if (node.childNodes[i].unParsed)var zb=this._getAllFatItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllFatItems(node.childNodes[i]) + + if (zb)z+=this.dlmtr+zb;}};return z;};dhtmlXTreeObject.prototype._getAllSubItems =function(itemId,z,node) + {if (node)temp=node;else {var temp=this._globalIdStorageFind(itemId);};if (!temp)return 0;z="";for (var i=0;i=z.childsCount)) return null;return z.childNodes[index].id;};dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){var z=this._globalIdStorageFind(itemId);if ((!z)||(index>=z.childsCount)) return null;return z.childNodes[index].id;};dhtmlXTreeObject.prototype.setDragHandler=function(func){this.attachEvent("onDrag",func);};dhtmlXTreeObject.prototype._clearMove=function(){if (this._lastMark){this._lastMark.className=this._lastMark.className.replace(/dragAndDropRow/g,"");this._lastMark=null;};this.allTree.className=this.allTree.className.replace(" selectionBox","");};dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode,rmode){if (mode=="temporary_disabled"){this.dADTempOff=false;mode=true;}else + this.dADTempOff=true;this.dragAndDropOff=convertStringToBoolean(mode);if (this.dragAndDropOff)this.dragger.addDragLanding(this.allTree,this);if (arguments.length>1)this._ddronr=(!convertStringToBoolean(rmode));};dhtmlXTreeObject.prototype._setMove=function(htmlNode,x,y){if (htmlNode.parentObject.span){var a1=getAbsoluteTop(htmlNode);var a2=getAbsoluteTop(this.allTree)-this.allTree.scrollTop;this.dadmodec=this.dadmode;this.dadmodefix=0;var zN=htmlNode.parentObject.span;zN.className+=" dragAndDropRow";this._lastMark=zN;this._autoScroll(null,a1,a2);}};dhtmlXTreeObject.prototype._autoScroll=function(node,a1,a2){if (this.autoScroll){if (node){a1=getAbsoluteTop(node);a2=getAbsoluteTop(this.allTree);};if ( (a1-a2-parseInt(this.allTree.scrollTop))>(parseInt(this.allTree.offsetHeight)-50) ) + this.allTree.scrollTop=parseInt(this.allTree.scrollTop)+20;if ( (a1-a2)<(parseInt(this.allTree.scrollTop)+30) ) + this.allTree.scrollTop=parseInt(this.allTree.scrollTop)-20;}};dhtmlXTreeObject.prototype._createDragNode=function(htmlObject,e){if (!this.dADTempOff)return null;var obj=htmlObject.parentObject;if (!this.callEvent("onBeforeDrag",[obj.id])) return null;if (!obj.i_sel)this._selectItem(obj,e);var dragSpan=document.createElement('div');var text=new Array();if (this._itim_dg)for (var i=0;i"+this._selected[i].span.innerHTML+"";else + text=this.getSelectedItemText().split(this.dlmtr);dragSpan.innerHTML=text.join("");dragSpan.style.position="absolute";dragSpan.className="dragSpanDiv";this._dragged=(new Array()).concat(this._selected);return dragSpan;};dhtmlXTreeObject.prototype._focusNode=function(item){var z=getAbsoluteTop(item.htmlNode)-getAbsoluteTop(this.allTree);if ((z>(this.allTree.offsetHeight-30))||(z<0)) + this.allTree.scrollTop=z+this.allTree.scrollTop;};dhtmlXTreeObject.prototype._preventNsDrag=function(e){if ((e)&&(e.preventDefault)) {e.preventDefault();return false;};return false;};dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){if (this._autoOpenTimer)clearTimeout(this._autoOpenTimer);if (!targetHtmlObject.parentObject){targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0];this.dadmodec=0;};this._clearMove();var z=sourceHtmlObject.parentObject.treeNod;if ((z)&&(z._clearMove)) z._clearMove("");if ((!this.dragMove)||(this.dragMove())) + {if ((!z)||(!z._clearMove)||(!z._dragged)) var col=new Array(sourceHtmlObject.parentObject);else var col=z._dragged;var trg=targetHtmlObject.parentObject;for (var i=0;i2)?(sNode.checkstate-3):sNode.checkstate);this._setCheck(sNode);if (sNode.dscheck<3)sNode.dscheck=false;};dhtmlXTreeObject.prototype.setEscapingMode=function(mode){this.utfesc=mode;};dhtmlXTreeObject.prototype.enableHighlighting=function(mode) {this.ehlt=true;this.ehlta=convertStringToBoolean(mode);};dhtmlXTreeObject.prototype._itemMouseOut=function(){var that=this.childNodes[3].parentObject;var tree=that.treeNod;tree.callEvent("onMouseOut",[that.id]);if (that.id==tree._l_onMSI)tree._l_onMSI=null;if (!tree.ehlta)return;that.span.className=that.span.className.replace("_lor","");};dhtmlXTreeObject.prototype._itemMouseIn=function(){var that=this.childNodes[3].parentObject;var tree=that.treeNod;if (tree._l_onMSI!=that.id)tree.callEvent("onMouseIn",[that.id]);tree._l_onMSI=that.id;if (!tree.ehlta)return;that.span.className=that.span.className.replace("_lor","");that.span.className=that.span.className.replace(/((standart|selected)TreeRow)/,"$1_lor");};dhtmlXTreeObject.prototype.enableActiveImages=function(mode){this._aimgs=convertStringToBoolean(mode);};dhtmlXTreeObject.prototype.focusItem=function(itemId){var sNode=this._globalIdStorageFind(itemId);if (!sNode)return (0);this._focusNode(sNode);};dhtmlXTreeObject.prototype.getAllSubItems =function(itemId){return this._getAllSubItems(itemId);};dhtmlXTreeObject.prototype.getAllChildless =function(){return this._getAllScraggyItems(this.htmlNode);};dhtmlXTreeObject.prototype.getAllLeafs=dhtmlXTreeObject.prototype.getAllChildless;dhtmlXTreeObject.prototype._getAllScraggyItems =function(node) + {var z="";for (var i=0;i0)) + {if (node.childNodes[i].unParsed)var zb=this._getAllScraggyItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllScraggyItems(node.childNodes[i]) + + if (zb)if (z)z+=this.dlmtr+zb;else z=zb;}else + if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;};return z;};dhtmlXTreeObject.prototype._getAllFatItems =function(node) + {var z="";for (var i=0;i0)) + {if (!z)z=node.childNodes[i].id;else z+=this.dlmtr+node.childNodes[i].id;if (node.childNodes[i].unParsed)var zb=this._getAllFatItemsXML(node.childNodes[i].unParsed,1);else + var zb=this._getAllFatItems(node.childNodes[i]) + + if (zb)z+=this.dlmtr+zb;}};return z;};dhtmlXTreeObject.prototype.getAllItemsWithKids =function(){return this._getAllFatItems(this.htmlNode);};dhtmlXTreeObject.prototype.getAllFatItems=dhtmlXTreeObject.prototype.getAllItemsWithKids;dhtmlXTreeObject.prototype.getAllChecked=function(){return this._getAllChecked("","",1);};dhtmlXTreeObject.prototype.getAllUnchecked=function(itemId){if (itemId)itemId=this._globalIdStorageFind(itemId);return this._getAllChecked(itemId,"",0);};dhtmlXTreeObject.prototype.getAllPartiallyChecked=function(){return this._getAllChecked("","",2);};dhtmlXTreeObject.prototype.getAllCheckedBranches=function(){var temp= this._getAllChecked("","",1);if (temp!="")temp+=this.dlmtr;return temp+this._getAllChecked("","",2);};dhtmlXTreeObject.prototype._getAllChecked=function(htmlNode,list,mode){if (!htmlNode)htmlNode=this.htmlNode;if (htmlNode.checkstate==mode)if (!htmlNode.nocheckbox){if (list)list+=this.dlmtr+htmlNode.id;else list=htmlNode.id;};var j=htmlNode.childsCount;for (var i=0;i";temp.span.style.paddingRight=temp.span.style.paddingLeft='0px';temp.span.onclick = temp.span.ondblclick= function(e){(e||event).cancelBubble = true;};temp.span.childNodes[0].value=editText;temp.span.childNodes[0].onselectstart=function(e){(e||event).cancelBubble=true;return true;};temp.span.childNodes[0].onmousedown=function(e){(e||event).cancelBubble=true;return true;};temp.span.childNodes[0].focus();temp.span.childNodes[0].focus();temp.span.onclick=function (e){(e||event).cancelBubble=true;return false;};temp.span.className="";temp.span.parentNode.className="";var self=this;temp.span.childNodes[0].onkeydown=function(e){if (!e)e=window.event;if (e.keyCode==13){e.cancelBubble=true;self._stopEdit(window.undefined);}else if (e.keyCode==27){self._editCell.span.childNodes[0].value=self._editCell._oldValue;self._stopEdit(window.undefined);};(e||event).cancelBubble=true;};this.callEvent("onEdit",[1,id,this]);}}; + + +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_er.js b/phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_er.js new file mode 100755 index 0000000000..2ee60c6745 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/js/ext/dhtmlxtree_er.js @@ -0,0 +1,18 @@ +//v.2.6 build 100722 + +/* +Copyright DHTMLX LTD. http://www.dhtmlx.com +You allowed to use this component or parts of it under GPL terms +To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com +*/ +var _all_used_trees=new Array();dhtmlXTreeObject.prototype._createSelfA2=dhtmlXTreeObject.prototype._createSelf;dhtmlXTreeObject.prototype._createSelf=function(){_all_used_trees[_all_used_trees.length]=this;return this._createSelfA2();};window.onerror=function (a,b,c,d){var d=document.createElement("DIV");d.style.cssText="position:absolute;background-color:white;top:10px;left:10px;z-index:20;width:500px;border: 2px silver outset;";var dh="
    Javascript Error
    ";dh+="
    The next error ocured :
    "+a+" in "+b+" at line "+c+"
    ";dh+="
    If you think that error can be caused by dhtmlxtree press the 'Generate report' button and send generated report to support@dhtmlx.com
    ";dh+="";dh+="
    ";d.innerHTML=dh;document.body.appendChild(d);return true;};function dhtmlxtreeErrorReport(a,b,c){var str=a+" ["+b+"]";if (a=='LoadXML'){str+="
    "+c[0].responseText+"
    "+c[0].status;};window.onerror(str, "none", "none");};function dhtmlxtreeReport(node){var that=node.parentNode;that.lastChild.innerHTML="";var rep=that.childNodes[1].innerHTML;for (var a=0;a<_all_used_trees.length;a++){var atree=_all_used_trees[a];rep+="\n\n Tree "+a+"\n";for (b in atree){if (typeof(atree[b])=="function") continue;rep+=b+"="+atree[b]+"\n";};rep+="---------------------\n";if (atree.XMLLoader){try{var z=atree.XMLLoader.getXMLTopNode("tree") + if (document.all)rep+=z.xml+"\n";else{var xmlSerializer = new XMLSerializer();rep+=xmlSerializer.serializeToString(z)+"\n";}}catch(e){rep+="XML not recognised\n";}};rep+="---------------------\n";for (var i in atree._idpull){var n=atree._idpull[i];if (typeof(n)!='object') continue;rep+="Node: "+n.id;rep+=" Childs: "+n.childsCount;for (var j=0;j"+cont+"");window[id]=t;var oninit = obj.getAttribute("oninit");if (oninit)eval(oninit);return t;};function dhx_init_trees(){var z=document.getElementsByTagName("div");for (var i=0;i + + + + + + + diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/components.xml b/phpgwapi/js/dhtmlxtree/libCompiler/components.xml new file mode 100755 index 0000000000..ae361a96fb --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/components.xml @@ -0,0 +1,635 @@ + + + dhtmlx components + + + dhtmlxGrid + + core + Excells - ed,edn,edtxt,ro,ron,rotxt]]> + + + + Base functionality + + + + hidden cellsallow to hide columns|rows by API + + + colspansallow to use colspans in data + + + locked rowsability to lock rows + + + custom sortingability to use custom sorting functions + + + serializationserialization to XML + + + parsingability to use distributed parsing + + + formatsability to use date and number formatting + + + config in xmlability to load grid configuration from XML + + + headersability to create multiline headers or footers + + + cell typesability to change cell types on the fly + + + + hovering hovering and light mouse navigation + + + alter css alter css + + + moving rows moving rows up and down + + + sorting sorting + + + column_resize column resize + + + update from xml update from xml + + + xml data ability to load from XML + + + non xml data ability to load from jsarray, json, csv + + + + tooltips tooltips + + + context menu context menu + + + + + + + + + + + + + + + + Extensions + + + + filteringAbility to filter data in grid, by using predefined UI or API calls + + + groupingAbility to group data in grid + + + drag-and-dropAbility to drag and drop rows in grid + + + extra XML typesSupport of xmlA and xmlB datasource types + + + form integrationintegration with HTML form + + + header menuAbility to use context menu for header + + + mathAbility to use math formulas in grid + + + column moveAbility to move column, or dynamically add|delete them + + + csvSupport of CSV serialization + + + clipboardAbility to operate with clipboard + + + block selectionAbility to use block selection in grid + + + pagingAbility to use paging in grid + + + pivotAbility to create pivot table from dhtmlxgrid + + + rowspanAbility to use rowspans in grid + + + frozen columnsAbility to split grid in two separate areas + + + smart renderingAbility to operate with big datasets + + + state savingAbility to save current state of grid in cookies + + + init from HTMLAbility to filter data in grid, by using predefined UI or API calls + + + undo|redoAbility to use undo|redo functionality against edit operation + + + sub row|gridAbility to use expandable rows with static content or sub grids + + + validation data validation in the grid + + + + Excells + + + excell methodsadditional methods of excell - getFont, setFont, getTextColor, getTextColor, getHorAlign, getWidth, setTextColor, setTextColor, setHorAlign + + + onCellChangedonCellChanged event support (-5% of loading performance) + + + ch excellsupport of ch excell + + + ra excellsupport of ra excell + + + price excellsupport of price excell + + + calendar excellsupport of calendar excell + + + dyn excellsupport of dyn excell + + + cp excellsupport of cp excell + + + txt excellsupport of txt excell + + + co excellsupport of co|coro excell + + + img excellsupport of img excell + + + counterauto increment cell + + + linkHTML link + + + clistlist of checkboxes + + + + + + + + dhtmlxTree + + corejust a dhtmlxtree + + + advancedsome advanced features + + calckability to use child counters in tree + + + distributedability to use distributed parsing in tree + + + smart parsingability to use smart parsing in tree + + + contextability to use context menu in tree + + + multiselectability to select multiple items in same time + + + findability to find item by text + + + d-n-dmoving item as child and sibling in tree ( d-n-d ) + + + + + + + Extensions + + + attributescustom attributes in tree + + + drag inhelpers to create custom drag in tree + + + editor allows in tree edit + + + jsonsupport of JSON as datasource in tree + + + Navigationkeyboard navigation in tree + + + loading flagloading flag for dynamical loading modes + + + lockinglocked items in tree + + + routesmarked routes in tree + + + RTLaupport of RTL in tree + + + sortingallows sorting in tree + + + SRND smart rendering in tree + + + HTML init tree from HTML + + + serializationserialization to XML + + + cookiesadditional dynamic loading features + + + + + + + + dhtmlxTreeGrid + + corejust a dhtmlxtreegrid + + + Extensions + + + lineslines in treegrid + + + filterfiltration in treegrid + + + + + dhtmlxLayout + + corejust a dhtmlxlayout + + + + dhtmlxMenu + + corejust a dhtmlxmenu + + + extra functionalitydifferent aligns, extra methods + + + extensions + + + scrollsinner scrollers in menu + + + checkboxescheckboxes in menu + + + radiosradio buttons in menu + + + hotkeyshotkeys in menu ( useless ) + + + usedatauserdata in menu ( useless ) + + + context menumenu as context element + + + + + + + + skins + + + aquadarkaquadark skin for dhtmlxmenu + + + aquaorangeaquaorange skin for dhtmlxmenu + + + aquaskyaquasky skin for dhtmlxmenu + + + clearblueclearblue skin for dhtmlxmenu + + + cleargreencleargreen skin for dhtmlxmenu + + + clearsilverclearsilver skin for dhtmlxmenu + + + modernblackmodernblack skin for dhtmlxmenu + + + modernbluemodernblue skin for dhtmlxmenu + + + modernredmodernred skin for dhtmlxmenu + + + + + + dhtmlxToolbar + + corejust a dhtmlxtoolbar ( include text, and image buttons support ) + + + extensions + + selectselect like button + + + inputinput button + + + 2-statetwo state button + + + sliderslider button + + + + + + + + skins + + + aquadarkaquadark skin for dhtmlxtoolbar + + + aquaorangeaquaorange skin for dhtmlxtoolbar + + + aquaskyaquasky skin for dhtmlxtoolbar + + + clearblueclearblue skin for dhtmlxtoolbar + + + cleargreencleargreen skin for dhtmlxtoolbar + + + clearsilverclearsilver skin for dhtmlxtoolbar + + + modernblackmodernblack skin for dhtmlxtoolbar + + + modernbluemodernblue skin for dhtmlxtoolbar + + + modernredmodernred skin for dhtmlxtoolbar + + + + + + dhtmlxWindows + + corejust a dhtmlxwindows + + + + advancedsome advanced features + + + rarerare used functionality ( findByText, forEachWindow, getBottommostWindow ) + + + buttonsbuttons in dhtmlxwindow + + + integrationability to create tree|grid|folders|layout|accordeon in dhtmlxwindow + + + moveability to move dhtmlxwindow + + + parkability to park dhtmlxwindow + + + + + Extensions + + statusstatus bar in window + + + menumenu in window + + + toolbartoolbar in window + + + + + + common + + d-n-dability to use drag and drop + + + XSLT supportability to use XSLT on client side + + + XML for Safari 2.xability to use XML parsing routines in Safari 2.x + + + Container of layout + + + + + dhtmlxDataProcessor + + coreAbility to sync changes in tree or grid with remote DB + + + + + + + + + + + + + + + + dhtmlxCalendar + + corejust a dhtmlxcalendar + + + + + + + dhtmlxColorPicker + + corejust a dhtmlxcolorpicker + + + + + dhtmlxCombo + + corejust a dhtmlxcombo + + + option typesability to use checkboxes and images inside dhtmlxcombo + + + auto-sizeauto-width and auot-height of dhtmlxcombo + + + groupinggrouping dhtmlxcombo + + + + + + dhtmlxFolders + + corejust a dhtmlxfolders + + + d-n-dd-n-d in dhtmlxfolders + + + + dhtmlxTabbar + + corejust a dhtmlxtabbar + + all sidesability to have tabs on rigth,left,bottom sides + + + sizesability to adjust size to inner or outer content + + + scrollsability to use scrollers in tabbar + + + linesability ot have multiple lines of tabs + + + ajax|iframeability to work in ajax and frame based modes + + + + + + + + + + HTMLallows to init dhtmlxtabbar from HTML markup + + + + + + dhtmlxAccordion + + corejust a dhtmlxAccordion + + + + + dhtmlxSlider + + corejust a dhtmlxSlider + + + + + dhtmlxEditor + + corejust a dhtmlxEditor + + + extended initability to use toolbar in editor header with all possible buttons + + + + dhtmlXForm + + coreAll functionality of dhtmlxForm + + + + dhtmlXChart + + coreall functionality of dhtmlXChart + + + + dhtmlXDataView + + coreall functionality of dhtmlXForm + + + + + + + + + + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/convert.php b/phpgwapi/js/dhtmlxtree/libCompiler/convert.php new file mode 100755 index 0000000000..0fae4c4205 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/convert.php @@ -0,0 +1,179 @@ + 23) $doshour = $doshour - 24; + if($doshour < 0) $doshour = $doshour + 24; + + $doshour = $doshour * pow(2,11); + + // mix it with about 250 grams of minutes + $dosminute = gmdate("i") * pow(2,5); + + // then add a pinch of seconds + $dossecond = round(gmdate("s") / 2); + + // mix them together and whack them in the oven for about 20 minutes + $dostime = $doshour+$dosminute+$dossecond; + + // and it's ready to be served! :) + return $dostime; + + // "whack" is a registered trademark of Jamie Oliver. All rights reserved. +}; + +// format according to MSDN: +// 5 bytes for days, 4 for month, 7 for years from 1980... can go for 128 years then, so warn me in 2108 ;) + +function dosdate_get($offset) { + // date + $dosyear = (gmdate("Y") - 1980); + $dosmonth = gmdate("m"); + $dosday = gmdate("j"); + + // checking if date is valid + // starting with... is the day too high after applying offset? + if(gmdate("G") + $offset > 23) { + $dosday++; + if($dosday > date("t")) { + $dosday = 1; + $dosmonth++; + if($dosmonth > 12) { + $dosmonth = 1; + $dosyear++; + }; + }; + }; + + // then, is the day too low after applying offset? + if(gmdate("G") + 1 + $offset < 0) { // +1 to fix the erm... standard -1 offset this pc has... strange thou :p + $dosday = $dosday - 1; + if($dosday < 1) { + // ok, little helper array, containing the months that have 30 days:) + $dirtydays = array(4,6,9,11); + if(in_array($dirtydays,$dosmonth - 1)) { // is it one month after one of the feared months, added in the array above? + $dosday = 30; + } elseif ($dosmonth == 3) { // is it march then? + $dosday = 28+date("L"); + } else { // then the month before this one must have 31 days :) + $dosday = 31; + }; + + $dosmonth --; + if($dosmonth < 1){ + $dosmonth == 12; + $dosyear --; // i aint checking this one, we're not creating files b4 1980 anyway ;) + }; + }; + }; + + // wow, that took me some thinking, let's go to an easier part, returning! + $dosyear = $dosyear * pow(2,9); + $dosmonth = $dosmonth * pow(2,5); + return $dosyear+$dosmonth+$dosday; +} + +// Now this process must be reversed aswell. I think the most easy method for this is just returning an array with data. + +function dostime_return($dostime) { + $dostime = decbin(ascii2dec($dostime)); //looks nasty, but hey, it works ;) + $dostime = str_pad($dostime,16,"0",STR_PAD_LEFT); + + // retreiving the needed data... 5-6-5 was the format + // *** Warning! *** Waarschuwing! *** Achtung! *** + // I don't know if this works on little endian machines the way it works on big-endian ones + // So let's hope for the best + + $return['hours'] = substr($dostime,0,5); + $return['minutes'] = substr($dostime,5,6); + $return['seconds'] = substr($dostime,11,5); + + unset($dostime); + + // now processing the info to the right format + $return['hours'] = bindec($return['hours']); + $return['minutes'] = bindec($return['minutes']); + $return['seconds'] = bindec($return['seconds']) * 2; + return $return; +} + +// this is mostly a copy of dostime_return +function dosdate_return($dosdate) { + $dosdate = decbin(ascii2dec($dosdate)); //looks nasty, but hey, it works ;) + $dosdate = str_pad($dosdate,16,"0",STR_PAD_LEFT); + + // retreiving the needed data... 5-4-7 was the format + // *** Warning! *** Waarschuwing! *** Achtung! *** + // I don't know if this works on little endian machines the way it works on big-endian ones + // So let's hope for the best + + $return['year'] = substr($dosdate,0,7); + $return['month'] = substr($dosdate,7,4); + $return['day'] = substr($dosdate,11,5); + + unset($dosdate); + + // now processing the info to the right format + $return['day'] = bindec($return['day']); + $return['month'] = bindec($return['month']); + $return['year'] = bindec($return['year']) + 1980; + return $return; +} + +// Also useful is this ascii2dec convertor, will be a well used conversion when reading a zipfile +// simple but powerful :) + +function ascii2dec($input) { + $end = strlen($input); + $multiplier = 1; + for($i=0; $i < $end; $i++) { + $output = $output + (ord($input[$i]) * $multiplier); // I think Max wants some credit for this [$i] method + $multiplier = $multiplier * 256; + } + unset ($input); + return $output; +} + +// Extension to content-type header conversion. +function ext2cth($filename) { + $filename = explode(".",$filename); + $extension = array_pop($filename); + + // I kinda need a gigantic array for this, i'll do this for now by including this array and setting a little var so I know it's + // been included + + if(!$types_is_included){ + require ("./array_filetypes.php"); + $types_is_included = TRUE; + } + + $extension = strtolower($extension); + $filetype = $type[$extension]; + if(empty($filetype)) { + $filetype = $type['default']; + } + return $filetype; +} +?> diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/core.js b/phpgwapi/js/dhtmlxtree/libCompiler/core.js new file mode 100755 index 0000000000..a2c64a5340 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/core.js @@ -0,0 +1,160 @@ +window.dhtmlx||(dhtmlx={});dhtmlx.version="3.0";dhtmlx.codebase="./";dhtmlx.extend=function(a,b){for(var c in b)a[c]=b[c];b.g&&a.g();return a};dhtmlx.bind=function(a,b){return function(){return a.apply(b,arguments)}};dhtmlx.require=function(a){if(!dhtmlx.N[a]){dhtmlx.exec(dhtmlx.ajax().sync().get(dhtmlx.codebase+a).responseText);dhtmlx.N[a]=true}};dhtmlx.N={};dhtmlx.exec=function(a){window.execScript?window.execScript(a):window.eval(a)}; +dhtmlx.methodPush=function(a,b){return function(){var c=false;return c=a[b].apply(a,arguments)}};dhtmlx.isNotDefined=function(a){return typeof a=="undefined"};dhtmlx.delay=function(a,b,c){setTimeout(function(){var d=a.apply(b,c);a=b=c=null;return d},1)};dhtmlx.uid=function(){if(!this.ca)this.ca=(new Date).valueOf();this.ca++;return this.ca};dhtmlx.toNode=function(a){if(typeof a=="string")return document.getElementById(a);return a};dhtmlx.toArray=function(a){return dhtmlx.extend(a||[],dhtmlx.PowerArray)}; +dhtmlx.toFunctor=function(a){return typeof a=="string"?eval(a):a};dhtmlx.h={};dhtmlx.event=function(a,b,c,d){a=dhtmlx.toNode(a);var e=dhtmlx.uid();dhtmlx.h[e]=[a,b,c];if(d)c=dhtmlx.bind(c,d);if(a.addEventListener)a.addEventListener(b,c,false);else a.attachEvent&&a.attachEvent("on"+b,c);return e};dhtmlx.eventRemove=function(a){if(a){var b=dhtmlx.h[a];if(b[0].removeEventListener)b[0].removeEventListener(b[1],b[2],false);else b[0].detachEvent&&b[0].detachEvent("on"+b[1],b[2]);delete this.h[a]}}; +dhtmlx.EventSystem={g:function(){this.h={};this.H={};this.B={}},block:function(){this.h.ha=true},unblock:function(){this.h.ha=false},mapEvent:function(a){dhtmlx.extend(this.B,a)},callEvent:function(a,b){if(this.h.ha)return true;a=a.toLowerCase();var c=this.h[a.toLowerCase()],d=true;if(c)for(var e=0;e=0)this.splice(a,b||1)},remove:function(a){this.removeAt(this.find(a))},insertAt:function(a,b){if(!b&&b!==0)this.push(a);else{var c=this.splice(b,this.length-b);this[b]=a;this.push.apply(this,c)}},find:function(a){for(i=0;i")!=-1){c=c.split("->"); +switch(c[0]){case "html":c=dhtmlx.html.getValue(c[1]).replace(/\"/g,'\\"');break;case "http":c=(new dhtmlx.ajax).sync().get(c[1],{uid:(new Date).valueOf()}).responseText;break;default:break}}a[b]=dhtmlx.Template.fromHTML(c)}}}; +dhtmlx.Settings={g:function(){this.a=this.config=[];this.a.sort=null},define:function(a,b){if(typeof a=="object")return this.Fa(a);return this.la(a,b)},la:function(a,b){var c=this[a+"_setter"];return this.a[a]=c?c.call(this,a,b):b},Fa:function(a){if(a)for(var b in a)this.la(b,a[b])},O:function(a,b){var c=dhtmlx.extend({},b);typeof a=="object"&&!a.tagName&&dhtmlx.extend(c,a);this.Fa(c)},v:function(a,b){for(var c in b)switch(typeof a[c]){case "object":a[c]=this.v(a[c]||{},b[c]);break;case "undefined":a[c]= +b[c];break;default:break}return a},$:function(a,b,c){if(typeof a=="object"&&!a.tagName)a=a.container;this.b=dhtmlx.toNode(a);if(!this.b&&c)this.b=c(a);this.b.className+=" "+b;this.b.onselectstart=function(){return false};this.c=this.b},qb:function(a){if(typeof a=="object")return this.type_setter("type",a);this.type=dhtmlx.extend({},this.types[a]);this.customize()},customize:function(a){a&&dhtmlx.extend(this.type,a);this.type.ya=dhtmlx.Template.fromHTML(this.template_item_start(this.type));this.type.xa= +this.template_item_end(this.type);this.render()},type_setter:function(a,b){this.qb(typeof b=="object"?dhtmlx.Type.add(this,b):b);return b},template_setter:function(a,b){return this.type_setter("type",{template:b})},css_setter:function(a,b){this.b.className+=" "+b;return b}}; +dhtmlx.Destruction={g:function(){dhtmlx.destructors.push(this)},destructor:function(){this.destructor=function(){};this.u=this.d=null;this.l&&document.body.appendChild(this.l);this.l=null;if(this.b){this.b.innerHTML="";this.b.d=null}this.data=this.b=this.c=null;this.h=this.H={}}};dhtmlx.destructors=[]; +dhtmlx.event(window,"unload",function(){for(var a=0;a=this.data.limit)a=this.data.limit-1;if(this.callEvent("onBeforePageChange",[this.a.page,a])){this.data.page=a*1;this.refresh();this.callEvent("onAfterPageChange",[a])}},types:{"default":{template:dhtmlx.Template.fromHTML("{common.pages()}"), +pages:function(a){var b="";if(a.page==-1)return"";a.min=a.page-Math.round((a.group-1)/2);a.max=a.min+a.group-1;if(a.min<0){a.max+=a.min*-1;a.min=0}if(a.max>=a.limit){a.min-=Math.min(a.min,a.max-a.limit+1);a.max=a.limit-1}for(var c=a.min||0;c<=a.max;c++)b+=this.button({id:c,index:c+1,selected:c==a.page?"_selected":""});return b},page:function(a){return a.page+1},first:function(){return this.button({id:"first",index:" << ",selected:""})},last:function(){return this.button({id:"last",index:" >> ", +selected:""})},prev:function(){return this.button({id:"prev",index:"<",selected:""})},next:function(){return this.button({id:"next",index:">",selected:""})},button:dhtmlx.Template.fromHTML("
    {obj.index}
    ")}},refresh:function(){var a=this.a;a.limit=Math.ceil(a.count/a.size);if(a.limit&&a.limit!=a.old_limit)a.page=Math.min(a.limit-1,a.page);var b=a.page;if(b!=-1&&b!=a.old_page||a.limit!=a.old_limit){this.render();this.callEvent("onRefresh", +[]);a.old_limit=a.limit;a.old_page=a.page}},template_item_start:dhtmlx.Template.fromHTML("
    "),template_item_end:dhtmlx.Template.fromHTML("
    ")};dhtmlx.SingleRender={g:function(){},D:function(a){return this.type.ya(a,this.type)+this.type.template(a,this.type)+this.type.xa},render:function(){if(!this.callEvent||this.callEvent("onBeforeRender",[this.data])){if(this.data)this.c.innerHTML=this.D(this.data);this.callEvent&&this.callEvent("onAfterRender",[])}}}; +dhtmlx.ui.Tooltip=function(a){this.name="Tooltip";this.version="3.0";if(typeof a=="string")a={template:a};dhtmlx.extend(this,dhtmlx.Settings);dhtmlx.extend(this,dhtmlx.SingleRender);this.O(a,{type:"default",dy:0,dx:20});this.c=this.b=document.createElement("DIV");this.b.className="dhx_tooltip";dhtmlx.html.insertBefore(this.b,document.body.firstChild)}; +dhtmlx.ui.Tooltip.prototype={show:function(a,b){if(this.data!=a){this.data=a;this.render(a)}this.b.style.top=b.y+this.a.dy+"px";this.b.style.left=b.x+this.a.dx+"px";this.b.style.display="block"},hide:function(){this.data=null;this.b.style.display="none"},types:{"default":dhtmlx.Template.fromHTML("{obj.id}")},template_item_start:dhtmlx.Template.empty,template_item_end:dhtmlx.Template.empty}; +dhtmlx.AutoTooltip={tooltip_setter:function(a,b){var c=new dhtmlx.ui.Tooltip(b);this.attachEvent("onMouseMove",function(d,e){c.show(this.get(d),dhtmlx.html.pos(e))});this.attachEvent("onMouseOut",function(){c.hide()});this.attachEvent("onMouseMoving",function(){c.hide()});return c}};dhtmlx.compat=function(a,b){dhtmlx.compat[a]&&dhtmlx.compat[a](b)}; +(function(){if(!window.dhtmlxError){var a=function(){};window.dhtmlxError={catchError:a,throwError:a};window.convertStringToBoolean=function(c){return!!c};window.dhtmlxEventable=function(c){dhtmlx.extend(c,dhtmlx.EventSystem)};var b={getXMLTopNode:function(){},doXPath:function(c){return dhtmlx.DataDriver.xml.xpath(this.xml,c)},xmlDoc:{responseXML:true}};dhtmlx.compat.dataProcessor=function(c){var d="_sendData",e="_in_progress",g="_tMode",i="_waitMode";c[d]=function(l,j){if(l){if(j)this[e][j]=(new Date).valueOf(); +if(!this.callEvent("onBeforeDataSending",j?[j,this.getState(j)]:[]))return false;var m=this,p=this.serverProcessor;this[g]!="POST"?dhtmlx.ajax().get(p+(p.indexOf("?")!=-1?"&":"?")+this.serialize(l,j),"",function(q,n){b.xml=dhtmlx.DataDriver.xml.checkResponse(q,n);m.afterUpdate(m,null,null,null,b)}):dhtmlx.ajax().post(p,this.serialize(l,j),function(q,n){b.xml=dhtmlx.DataDriver.xml.checkResponse(q,n);m.afterUpdate(m,null,null,null,b)});this[i]++}}}}})(); +dhtmlx.DataProcessor={Ra:function(a){var b="_methods";a[b]=["setItemStyle","","changeId","remove"];this.attachEvent("onAfterAdd",function(c){a.setUpdated(c,true,"inserted")});this.data.attachEvent("onStoreLoad",dhtmlx.bind(function(c,d){c.getUserData&&c.getUserData(d,this.ga)},this));this.attachEvent("onBeforeDelete",function(c){var d=a.getState(c);if(d=="inserted"){a.setUpdated(c,false);return true}if(d=="deleted")return false;if(d=="true_deleted")return true;a.setUpdated(c,true,"deleted");return false}); +this.attachEvent("onAfterEditStop",function(c){a.setUpdated(c,true,"updated")});b="_getRowData";a[b]=function(c){c=this.obj.data.get(c);var d={};for(var e in c)if(e.indexOf("_")!==0)d[e]=c[e];return d};b="_clearUpdateFlag";a[b]=function(){};this.ga={};a.attachEvent("insertCallback",this.ma);a.attachEvent("updateCallback",this.ma);a.attachEvent("deleteCallback",function(c,d){this.obj.setUserData(d,this.action_param,"true_deleted");this.obj.remove(d)});dhtmlx.compat("dataProcessor",a)},ma:function(a, +b){this.obj.data.set(b,dhtmlx.DataDriver.xml.getDetails(a.firstChild));this.obj.data.refresh(b)},setItemStyle:function(a,b){if(a=this.m(a))a.style.cssText+=";"+b},changeId:function(a,b){this.data.order[this.data.indexById(a)]=b;this.data.pull[b]=this.data.pull[a];this.data.get(b).id=b;delete this.data.pull[a];this.data.refresh()},setUserData:function(a,b,c){if(a)this.data.get(a)[b]=c;else this.ga[b]=c},getUserData:function(a,b){return a?this.data.get(a)[b]:this.ga[b]}}; +(function(){var a="_dp_init";dhtmlx.DataProcessor[a]=dhtmlx.DataProcessor.Ra})(); +dhtmlx.compat.dnd=function(){if(window.dhtmlDragAndDropObject){var a="_dragged",b=dhtmlDragAndDropObject.prototype.checkLanding;dhtmlDragAndDropObject.prototype.checkLanding=function(j,m,p){b.apply(this,arguments);if(!p){dhtmlx.DragControl.o=dhtmlx.DragControl.o||{};dhtmlx.DragControl.K(j,m,true)}};var c=dhtmlDragAndDropObject.prototype.stopDrag;dhtmlDragAndDropObject.prototype.stopDrag=function(j,m,p){if(!p)if(dhtmlx.DragControl.i){dhtmlx.DragControl.n=d.dragStartNode;dhtmlx.DragControl.R(j,true)}c.apply(this, +arguments)};var d=new dhtmlDragAndDropObject,e=dhtmlx.DragControl.da;dhtmlx.DragControl.da=function(){e.apply(this,arguments);var j=dhtmlx.DragControl.o;if(j){for(var m=[],p=[],q=0;q"+a.innerHTML+"
    "}}; +dhtmlx.DragItem={g:function(){if(!this.a||this.a.drag)dhtmlx.DragItem.wa(this);else if(this.a)this.drag_setter=function(a,b){if(b){this.wa(this);delete this.drag_setter}return b};if(this.dragMarker){this.attachEvent("onBeforeDragIn",this.dragMarker);this.attachEvent("onDragOut",this.dragMarker)}},wa:function(a){dhtmlx.DragControl.addDrop(a.b,a,true);dhtmlx.DragControl.addDrag(a.b,a)},onDragIn:function(a,b,c){b=this.locate(c)||null;var d=dhtmlx.DragControl.o,e=dhtmlx.DragControl.getMaster(a);a=this.m(b)|| +this.b;if(a==dhtmlx.DragControl.A)return a;d.target=b;d.to=e;if(!this.callEvent("onBeforeDragIn",[d,c]))return d.id=null;dhtmlx.html.addCss(a,"dhx_drag_over");return a},onDragOut:function(a,b,c,d){a=this.locate(d)||null;c=this.m(a)||(c?dhtmlx.DragControl.getMaster(c).b:window.undefined);if(c==dhtmlx.DragControl.A)return null;c=dhtmlx.DragControl.o;dhtmlx.html.removeCss(dhtmlx.DragControl.A,"dhx_drag_over");c.target=c.to=null;this.callEvent("onDragOut",[c,d]);return null},onDrop:function(a,b,c,d){b= +dhtmlx.DragControl.o;b.from=dhtmlx.DragControl.getMaster(a);b.to=this;b.index=b.target?this.indexById(b.target):this.dataCount();b.new_id=dhtmlx.uid();if(this.callEvent("onBeforeDrop",[b,d])){if(b.from==b.to)this.move(b.source,b.index);else b.from&&b.from.move(b.source,b.index,b.to,b.new_id);this.callEvent("onAfterDrop",[b,d])}},onDrag:function(a,b){a=this.locate(b);var c=[a];if(a){if(this.getSelected){var d=this.getSelected();if(dhtmlx.PowerArray.find.call(d,a)!=-1)c=d}var e=dhtmlx.DragControl.o= +{source:c,start:a};e.from=this;if(this.callEvent("onBeforeDrag",[e,b]))return e.html||this.D(this.get(a))}return null}}; +dhtmlx.EditAbility={g:function(){this.L=this.p=null;this.attachEvent("onEditKeyPress",function(a,b,c){if(a==13&&!c)this.stopEdit();else a==27&&this.stopEdit(true)});this.attachEvent("onBeforeRender",function(){this.stopEdit()})},isEdit:function(){return this.p},edit:function(a){if(this.stopEdit(false,a))if(this.callEvent("onBeforeEditStart",[a])){var b=this.data.get(a);if(!b.$template){b.$template="edit";this.data.refresh(a);this.p=a;this.pb(a);this.L(true,b);this.callEvent("onAfterEditStart",[a])}}}, +stopEdit:function(a,b){if(!this.p)return true;if(this.p==b)return false;if(!this.callEvent("onBeforeEditStop",[this.p]))return false;var c=this.data.get(this.p);c.$template=null;a||this.L(false,c);a=this.p;this.L=this.p=null;this.data.refresh(a);this.callEvent("onAfterEditStop",[a]);return true},pb:function(a){var b=this.m(a),c="",d="",e=[];if(b){var g=b.getElementsByTagName("*"),i="";for(a=0;a100||a.length>this.data.dataCount/2},ba:function(a){if(typeof a!="object")a=[a];if(a.length){if(this.ab(a))this.data.refresh(); +else for(var b=0;bc.Y)break;for(var d=a;!this.u[d];)d--;var e=this.u[d],g=a*c.W+(this.data.min||0);if(g>(this.data.max||Infinity))break;var i=Math.min(g+c.W-1,this.data.max||Infinity),l=this.U(c.S),j=this.data.getIndexRange(g,i);if(!j.length)break;l.innerHTML=j.map(this.D,this).join("");for(var m= +0;m0){e.style.height=n+"px";this.u[a+1]=e}else{if(q<0)dhtmlx.html.remove(e);else e.style.height=q+"px";if(n>0){var w=this.u[a+1]=this.U(n);dhtmlx.html.insertBefore(w,l.nextSibling,this.c)}}a++}if(this.I.length){a=this.indexById(this.I[0]);l=this.indexById(this.I.pop())+1;if(l>a){if(!this.callEvent("onDataRequest", +[a,l-a]))return false;this.data.feed.call(this,a,l-a)}}},ua:function(){var a=this.c.scrollTop,b=Math.max(this.c.scrollWidth,this.c.offsetWidth)-18,c=this.c.offsetHeight,d=this.X(),e=Math.floor(b/d.x)||1,g=Math.floor(a/d.y);c=Math.ceil((c+a)/d.y)-1;var i=this.data.max?this.data.max-this.data.min:this.data.dataCount(),l=Math.ceil(i/e)*d.y;return{s:g,Y:c,xb:a,cb:l,S:d.y,W:e}}}; +dhtmlx.DataStore=function(){this.name="DataStore";dhtmlx.extend(this,dhtmlx.EventSystem);this.setDriver("xml");this.pull={};this.order=dhtmlx.toArray()}; +dhtmlx.DataStore.prototype={setDriver:function(a){this.driver=dhtmlx.DataDriver[a]},jb:function(a){for(var b=this.driver.getInfo(a),c=this.driver.getRecords(a),d=(b.s||0)*1,e=0,g=0;gb){var c=b;b=a;a=c}}else{a=this.min||0;b=Math.min(this.max||Infinity,this.dataCount()-1)}return this.getIndexRange(a,b)},getIndexRange:function(a,b){b=Math.min(b,this.dataCount()- +1);var c=dhtmlx.toArray();for(a=a;a<=b;a++)c.push(this.get(this.order[a]));return c},dataCount:function(){return this.order.length},exists:function(a){return!!this.pull[a]},move:function(a,b){if(!(a<0||b<0)){var c=this.idByIndex(a),d=this.get(c);this.order.removeAt(a);this.order.insertAt(c,Math.min(this.order.length,b));this.callEvent("onStoreUpdated",[c,d,"move"])}},add:function(a,b){var c=this.id(a),d=this.dataCount();if(dhtmlx.isNotDefined(b)||b<0)b=d;if(b>d)b=Math.min(this.order.length,b);if(this.callEvent("onbeforeAdd", +[c,b])){if(this.exists(c))return null;this.pull[c]=a;this.order.insertAt(c,b);if(this.q){var e=this.q.length;if(!b&&this.order.length)e=0;this.q.insertAt(c,e)}this.callEvent("onafterAdd",[c,b]);this.callEvent("onStoreUpdated",[c,a,"add"]);return c}},remove:function(a){if(a instanceof Array)for(var b=0;bb?1:ab?1:ab?1:a0&&a-c*0.75d+e)d+=c;this.b.scrollTop=d}return true}, +j:"dhx_f_id",on_click:{dhx_dataview_item:function(a,b){if(this.stopEdit(false,b))if(this.a.select)this.a.select=="multiselect"?this.select(b,a.ctrlKey,a.shiftKey):this.select(b)}},on_dblclick:{dhx_dataview_item:function(a,b){this.a.edit&&this.edit(b)}},on_mouse_move:{},types:{"default":{css:"default",template:dhtmlx.Template.fromHTML("
    {obj.text}
    "),template_edit:dhtmlx.Template.fromHTML("
    "), +template_loading:dhtmlx.Template.fromHTML("
    Loading...
    "),width:210,height:115,margin:0,padding:10,border:1}},template_item_start:dhtmlx.Template.fromHTML("
    "),template_item_end:dhtmlx.Template.fromHTML("
    ")}; +dhtmlx.compat("layout");dhtmlx.math={};dhtmlx.math.tb=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];dhtmlx.math.toHex=function(a,b){a=parseInt(a,10);for(str="";a>0;){str=this.tb[a%16]+str;a=Math.floor(a/16)}for(;str.length")},addSector:function(a,b,c,d,e,g,i){var l=[];l.push(d);l.push(Math.floor(e*i));for(var j=b;j"+this.B.join("\n")+"";a.d=b;this.B=[]}};if(!dhtmlx.chart)dhtmlx.chart={}; +dhtmlx.chart.line={pvt_render_line:function(a,b,c,d){var e,g,i,l,j,m,p=new dhtmlx.ui.Map(this.j),q=!!this.a.yAxis;if(q&&typeof this.a.yAxis.end!="undefied"&&typeof this.a.yAxis.start!="undefied"&&this.a.yAxis.step){e=parseFloat(this.a.yAxis.end);g=parseFloat(this.a.yAxis.start)}else{e=this.max(this.a.value);g=this.min(this.a.value)}this.ra(a,b,c,d,g,e);if(q){e=parseFloat(this.a.yAxis.end);g=parseFloat(this.a.yAxis.start)}var n=parseInt(this.a.padding.top,10),w=parseInt(this.a.padding.left,10),z=parseInt(this.a.padding.bottom, +10),A=parseInt(this.a.padding.right,10),r=d-n-z;if(g!=e){var D=this.ta(g,e);l=D[0];i=D[1];j=r/l;if(!q){m=j>10?j:10;j=(r-m)/l}}else{i=1;m=0;j=(r-10)/e}var O=Math.round((c-w-A)/b.length),K=Math.floor(O/2);if(b.length){for(var P=function(G){G=this.a.value(G);var H=(parseFloat(G)-g)*i;q||(H+=m/j);if(g==e)H=e;var x=d-Math.floor(j*H)-z;if(H<0)x=d-n;if(G>e)x=n;if(G10?j:10;j=(r-m)/l}}else{i=1;m=0;j=(r-10)/e}l=Math.floor((c-z-parseInt(this.a.padding.right,10))/b.length);var D=parseInt(this.a.width,10);if(D>l)D=l-2;var O=Math.floor((l-D)/2),K=typeof this.a.radius!="undefined"?parseInt(this.a.radius,10):Math.round(D/5),P=false,v=this.a.gradient;if(v===true){P=true;v=false}else if(v){v=a.createLinearGradient(0,d-w,0,A);this.a.gradient(v)}var B=0;if(A&&!n){B=d- +A;this.w(a,0,B+0.5,c,B+0.5,"#000000",1)}for(n=0;ne)r=e;r-=g;r*=i;if(g==e)r=e;var C=z+O+n*l,I=d-A;this.qa(C+Math.floor(D/2),b[n]);if(r<0||this.a.yAxis&&r===0)this.renderTextAt(true,true,C+Math.floor(D/2),I,this.a.label(b[n]));else{q||(r+=m/j);var Q=v||this.a.color.call(this,b[n]);if(this.a.border){a.beginPath();a.fillStyle=Q;this.Q(a,C,I,D,K,j,r,0);a.lineTo(C,0);a.fill();a.fillStyle="#000000";a.globalAlpha=0.37;a.beginPath();this.Q(a,C,I,D,K,j,r, +0);a.fill()}a.globalAlpha=this.a.alpha.call(this,b[n]);a.fillStyle=v||this.a.color.call(this,b[n]);a.beginPath();var G=this.Q(a,C,I,D,K,j,r,this.a.border?1:0);if(v&&!P)a.lineTo(C+(this.a.border?1:0),0);a.fill();a.globalAlpha=1;if(P){var H=a.createLinearGradient(0,I-j*r+2,0,I);H.addColorStop(0,Q);H.addColorStop(0.1,Q);H.addColorStop(1,"#FFFFFF");a.fillStyle=H;a.beginPath();G=this.Q(a,C+2,I,D-4,K,j,r,1);a.fill()}this.renderTextAt(true,true,C+Math.floor(D/2),G[1],this.a.label(b[n]));p.addRect(b[n].id, +[C,G[1],G[0],I])}}this.pa(a,b,c,d);p.render(this.b)},Q:function(a,b,c,d,e,g,i,l){var j=0;if(e>g*i){var m=(e-g*i)/e;j=-Math.acos(m)+Math.PI/2}a.moveTo(b+l,c);var p=c-Math.floor(g*i)+e+(e?0:l);eg.total_height)c+=d-g.total_height-a.lineWidth/2;if(g.valign=="middle"&&d>g.total_height)c+=(d-g.total_height)/2-a.lineWidth/2;c+=e*g.height;a.moveTo(i,c);d=i+g.marker.width-g.marker.height+1;a.lineTo(d,c);a.stroke();this.renderText(d+g.marker.width/2+5,c-g.marker.height/2,g.template(b))},Xa:function(a,b){var c=0;if(this.a.legend)c=this.a.legend.width*(this.a.legend.align== +"right"?-1:1);a=(a+c)/2;b/=2;c=Math.min(a,b)-this.a.padding.top;return{x:a,y:b,radius:c}},ja:function(a,b,c,d,e,g,i){a.lineWidth=1;if(d<=0&&e>=0||d>=0&&e<=Math.PI||d<=Math.PI&&e>=Math.PI){if(d<0&&e>0){d=0;this.oa(a,b,c,g,d,e)}if(dMath.PI){e=Math.PI;this.oa(a,b,c,g,d,e)}var l=(this.a.height||Math.floor(g/4))/this.a.cant;a.beginPath();a.arc(b,c,g,d,e,false);a.lineTo(b+g*Math.cos(e),c+g*Math.sin(e)+l);a.arc(b,c+l,g,e,d,true);a.lineTo(b+g*Math.cos(d),c+g*Math.sin(d));a.fill();i&&a.stroke()}}, +oa:function(a,b,c,d,e,g){a.beginPath();a.arc(b,c,d,e,g,false);a.stroke()},Ma:function(a,b,c,d){for(var e=["#676767","#7b7b7b","#a0a0a0","#bcbcbc","#d1d1d1","#d6d6d6"],g=e.length-1;g>-1;g--){a.beginPath();a.fillStyle=e[g];a.arc(b+2,c+2,d+g,0,Math.PI*2,true);a.fill()}},Wa:function(a){a.addColorStop(0,"#ffffff");a.addColorStop(0.7,"#7a7a7a");a.addColorStop(1,"#000000");return a},rb:function(a,b,c,d,e,g){a.globalAlpha=0.3;a.beginPath();var i;if(typeof this.a.gradient!="function"){i=a.createRadialGradient(e, +g,d/4,b,c,d);i=this.Wa(i)}else i=this.a.gradient(i);a.fillStyle=i;a.arc(b,c,d,0,Math.PI*2,true);a.fill();a.globalAlpha=1},na:function(a,b,c,d,e,g,i,l){if(i=this.renderText(0,0,i,0,1)){var j=i.scrollWidth;i.style.width=j+"px";if(j>a)j=a;var m=8;if(l)m=j/1.8;var p=d+(e-d)/2;c-=(m-8)/2;var q=-m,n=-8,w="left";if(p>=Math.PI/2&&p=Math.PI){q=-j-q+1;w="right"}d=(b+Math.floor(c*Math.sin(p)))*g+n;m=a+Math.floor((c+m/2)*Math.cos(p))+q;var z=eb*g)d+=this.a.height||Math.floor(c/4);i.style.top=d+"px";i.style.left=m+"px";i.style.width=j+"px";i.style.textAlign=w;i.style.whiteSpace="nowrap"}}}; +dhtmlx.Group={g:function(){this.data.attachEvent("onStoreLoad",dhtmlx.bind(function(){this.a.group&&this.group(this.a.group,false)},this));this.attachEvent("onBeforeRender",dhtmlx.bind(function(a){if(this.a.sort){a.block();a.sort(this.a.sort);a.unblock()}},this));this.attachEvent("onBeforeSort",dhtmlx.bind(function(){this.a.sort=null},this))},Za:function(a,b){a.attachEvent("onClearAll",dhtmlx.bind(function(){this.ungroup(false)},b))},sum:function(a,b){a=dhtmlx.Template.setter(0,a);b=b||this.data; +var c=0;b.each(function(d){c+=a(d)*1});return c},min:function(a,b){a=dhtmlx.Template.setter(0,a);b=b||this.data;var c=Infinity;b.each(function(d){if(a(d)*1c)c=a(d)*1});return c},sb:function(a){var b=function(j,m){j=dhtmlx.Template.setter(0,j);return j(m[0])},c=dhtmlx.Template.setter(0,a.by);a.map[c]||(a.map[c]=[c,b]);var d={},e=[];this.data.each(function(j){var m=c(j); +if(!d[m]){e.push({id:m});d[m]=dhtmlx.toArray()}d[m].push(j)});for(var g in a.map){var i=a.map[g][1]||b;if(typeof i!="function")i=this[i];for(var l=0;l5?10:5;c=parseInt(l,10)*i;if(c>Math.abs(a))d=a<=0||a','","");this.element_.insertAdjacentHTML("BeforeEnd",S.join(""))};x.stroke=function(f){var h=[],k=l(f?this.fillStyle:this.strokeStyle),o=k.color,s=k.alpha*this.globalAlpha,u=k=10;h.push("u.x)u.x=t.x;if(k.y==null||t.yu.y)u.y=t.y}}h.push(' ">');if(f)if(typeof this.fillStyle=="object"){var F=this.fillStyle,M=0,J={x:0,y:0};o=0;var L=1;if(F.type_=="gradient"){k=F.x0_/this.arcScaleX_;u=F.y0_/ +this.arcScaleY_;y=F.x1_/this.arcScaleX_;t=F.y1_/this.arcScaleY_;var E=this.getCoords_(k,u),S=this.getCoords_(y,t);k=S.x-E.x;u=S.y-E.y;M=Math.atan2(k,u)*180/Math.PI;if(M<0)M+=360;if(M<1.0E-6)M=0}else{E=this.getCoords_(F.x0_,F.y0_);o=u.x-k.x;u=u.y-k.y;J={x:(E.x-k.x)/o,y:(E.y-k.y)/u};o/=this.arcScaleX_*v;u/=this.arcScaleY_*v;var T=A.max(o,u);o=2*F.r0_/T;L=2*F.r1_/T-o}var N=F.colors_;N.sort(function(aa,ba){return aa.offset-ba.offset});k=N.length;var U=N[0].color,V=N[k-1].color,W=N[0].alpha*this.globalAlpha, +X=N[k-1].alpha*this.globalAlpha,Z=[];for(y=0;y')}else h.push('');else{var Y=this.lineScale_*this.lineWidth;if(Y<1)s*=Y;h.push("')}h.push("");this.element_.insertAdjacentHTML("beforeEnd",h.join(""))};x.fill=function(){this.stroke(true)};x.closePath=function(){this.currentPath_.push({type:"close"})};x.getCoords_=function(f,h){var k=this.m_;return{x:v*(f*k[0][0]+h*k[1][0]+k[2][0])-B,y:v*(f*k[0][1]+h*k[1][1]+k[2][1])-B}};x.save=function(){var f={};i(this,f);this.aStack_.push(f);this.mStack_.push(this.m_); +this.m_=g(e(),this.m_)};x.restore=function(){i(this.aStack_.pop(),this);this.m_=this.mStack_.pop()};x.translate=function(f,h){f=[[1,0,0],[0,1,0],[f,h,1]];n(this,g(f,this.m_),false)};x.rotate=function(f){var h=O(f),k=D(f);h=[[h,k,0],[-k,h,0],[0,0,1]];n(this,g(h,this.m_),false)};x.scale=function(f,h){this.arcScaleX_*=f;this.arcScaleY_*=h;f=[[f,0,0],[0,h,0],[0,0,1]];n(this,g(f,this.m_),true)};x.transform=function(f,h,k,o,s,u){s=[[f,h,0],[k,o,0],[s,u,1]];n(this,g(s,this.m_),true)};x.setTransform=function(f, +h,k,o,s,u){f=[[f,h,0],[k,o,0],[s,u,1]];n(this,f,true)};x.clip=function(){};x.arcTo=function(){};x.createPattern=function(){return new z};w.prototype.addColorStop=function(f,h){h=l(h);this.colors_.push({offset:f,color:h.color,alpha:h.alpha})};G_vmlCanvasManager=I;CanvasRenderingContext2D=m;CanvasGradient=w;CanvasPattern=z}();if(dhtmlx&&dhtmlx.N)dhtmlx.N["thirdparty/excanvas/excanvas.js"]=true; diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcommon.js b/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcommon.js new file mode 100755 index 0000000000..e8144c718a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcommon.js @@ -0,0 +1,928 @@ +dhtmlx=function(obj){ + for (var a in obj) dhtmlx[a]=obj[a]; + return dhtmlx; //simple singleton +}; +dhtmlx.extend_api=function(name,map,ext){ + var t = window[name]; + if (!t) return; //component not defined + window[name]=function(obj){ + if (obj && typeof obj == "object" && !obj.tagName){ + var that = t.apply(this,(map._init?map._init(obj):arguments)); + //global settings + for (var a in dhtmlx) + if (map[a]) this[map[a]](dhtmlx[a]); + //local settings + for (var a in obj){ + if (map[a]) this[map[a]](obj[a]); + else if (a.indexOf("on")==0){ + this.attachEvent(a,obj[a]); + } + } + } else + var that = t.apply(this,arguments); + if (map._patch) map._patch(this); + return that||this; + }; + window[name].prototype=t.prototype; + if (ext) + dhtmlXHeir(window[name].prototype,ext); +}; + +dhtmlxAjax={ + get:function(url,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<3); + t.waitCall=callback; + t.loadXML(url) + return t; + }, + post:function(url,post,callback){ + var t=new dtmlXMLLoaderObject(true); + t.async=(arguments.length<4); + t.waitCall=callback; + t.loadXML(url,true,post) + return t; + }, + getSync:function(url){ + return this.get(url,null,true) + }, + postSync:function(url,post){ + return this.post(url,post,null,true); + } +} + +/** + * @desc: xmlLoader object + * @type: private + * @param: funcObject - xml parser function + * @param: object - jsControl object + * @param: async - sync/async mode (async by default) + * @param: rSeed - enable/disable random seed ( prevent IE caching) + * @topic: 0 + */ +function dtmlXMLLoaderObject(funcObject, dhtmlObject, async, rSeed){ + this.xmlDoc=""; + + if (typeof (async) != "undefined") + this.async=async; + else + this.async=true; + + this.onloadAction=funcObject||null; + this.mainObject=dhtmlObject||null; + this.waitCall=null; + this.rSeed=rSeed||false; + return this; +}; +/** + * @desc: xml loading handler + * @type: private + * @param: dtmlObject - xmlLoader object + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ + var once = true; + this.check=function (){ + if ((dhtmlObject)&&(dhtmlObject.onloadAction != null)){ + if ((!dhtmlObject.xmlDoc.readyState)||(dhtmlObject.xmlDoc.readyState == 4)){ + if (!once) + return; + + once=false; //IE 5 fix + if (typeof dhtmlObject.onloadAction == "function") + dhtmlObject.onloadAction(dhtmlObject.mainObject, null, null, null, dhtmlObject); + + if (dhtmlObject.waitCall){ + dhtmlObject.waitCall.call(this,dhtmlObject); + dhtmlObject.waitCall=null; + } + } + } + }; + return this.check; +}; + +/** + * @desc: return XML top node + * @param: tagName - top XML node tag name (not used in IE, required for Safari and Mozilla) + * @type: private + * @returns: top XML node + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName, oldObj){ + if (this.xmlDoc.responseXML){ + var temp = this.xmlDoc.responseXML.getElementsByTagName(tagName); + if(temp.length==0 && tagName.indexOf(":")!=-1) + var temp = this.xmlDoc.responseXML.getElementsByTagName((tagName.split(":"))[1]); + var z = temp[0]; + } else + var z = this.xmlDoc.documentElement; + + if (z){ + this._retry=false; + return z; + } + + if ((_isIE)&&(!this._retry)){ + //fall back to MS.XMLDOM + var xmlString = this.xmlDoc.responseText; + var oldObj = this.xmlDoc; + this._retry=true; + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=false; + this.xmlDoc["loadXM"+"L"](xmlString); + + return this.getXMLTopNode(tagName, oldObj); + } + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (oldObj||this.xmlDoc), + this.mainObject + ]); + + return document.createElement("DIV"); +}; + +/** + * @desc: load XML from string + * @type: private + * @param: xmlString - xml string + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ + { + try{ + var parser = new DOMParser(); + this.xmlDoc=parser.parseFromString(xmlString, "text/xml"); + } + catch (e){ + this.xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); + this.xmlDoc.async=this.async; + this.xmlDoc["loadXM"+"L"](xmlString); + } + } + + this.onloadAction(this.mainObject, null, null, null, this); + + if (this.waitCall){ + this.waitCall(); + this.waitCall=null; + } +} +/** + * @desc: load XML + * @type: private + * @param: filePath - xml file path + * @param: postMode - send POST request + * @param: postVars - list of vars for post request + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.loadXML=function(filePath, postMode, postVars, rpc){ + if (this.rSeed) + filePath+=((filePath.indexOf("?") != -1) ? "&" : "?")+"a_dhx_rSeed="+(new Date()).valueOf(); + this.filePath=filePath; + + if ((!_isIE)&&(window.XMLHttpRequest)) + this.xmlDoc=new XMLHttpRequest(); + else { + this.xmlDoc=new ActiveXObject("Microsoft.XMLHTTP"); + } + + if (this.async) + this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); + this.xmlDoc.open(postMode ? "POST" : "GET", filePath, this.async); + + if (rpc){ + this.xmlDoc.setRequestHeader("User-Agent", "dhtmlxRPC v0.1 ("+navigator.userAgent+")"); + this.xmlDoc.setRequestHeader("Content-type", "text/xml"); + } + + else if (postMode) + this.xmlDoc.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); + + this.xmlDoc.setRequestHeader("X-Requested-With","XMLHttpRequest"); + this.xmlDoc.send(null||postVars); + + if (!this.async) + (new this.waitLoadFunction(this))(); +}; +/** + * @desc: destructor, cleans used memory + * @type: private + * @topic: 0 + */ +dtmlXMLLoaderObject.prototype.destructor=function(){ + this._filterXPath = null; + this._getAllNamedChilds = null; + this._retry = null; + this.async = null; + this.rSeed = null; + this.filePath = null; + this.onloadAction = null; + this.mainObject = null; + this.xmlDoc = null; + this.doXPath = null; + this.doXPathOpera = null; + this.doXSLTransToObject = null; + this.doXSLTransToString = null; + this.loadXML = null; + this.loadXMLString = null; + // this.waitLoadFunction = null; + this.doSerialization = null; + this.xmlNodeToJSON = null; + this.getXMLTopNode = null; + this.setXSLParamValue = null; + return null; +} + +dtmlXMLLoaderObject.prototype.xmlNodeToJSON = function(node){ + var t={}; + for (var i=0; i-1) + _isChrome=true; + +if ((navigator.userAgent.indexOf('Safari') != -1)||(navigator.userAgent.indexOf('Konqueror') != -1)){ + var _KHTMLrv = parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Safari')+7, 5)); + + if (_KHTMLrv > 525){ //mimic FF behavior for Safari 3.1+ + _isFF=true; + var _FFrv = 1.9; + } else + _isKHTML=true; +} else if (navigator.userAgent.indexOf('Opera') != -1){ + _isOpera=true; + _OperaRv=parseFloat(navigator.userAgent.substr(navigator.userAgent.indexOf('Opera')+6, 3)); +} + + +else if (navigator.appName.indexOf("Microsoft") != -1){ + _isIE=true; + if (navigator.appVersion.indexOf("MSIE 8.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; + if (navigator.appVersion.indexOf("MSIE 9.0")!= -1 && document.compatMode != "BackCompat") _isIE=8; +} else { + _isFF=true; + var _FFrv = parseFloat(navigator.userAgent.split("rv:")[1]) +} + + +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPath=function(xpathExp, docObj, namespace, result_type){ + if (_isKHTML || (!_isIE && !window.XPathResult)) + return this.doXPathOpera(xpathExp, docObj); + + if (_isIE){ //IE + if (!docObj) + if (!this.xmlDoc.nodeName) + docObj=this.xmlDoc.responseXML + else + docObj=this.xmlDoc; + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (namespace != null) + docObj.setProperty("SelectionNamespaces", "xmlns:xsl='"+namespace+"'"); // + + if (result_type == 'single'){ + return docObj.selectSingleNode(xpathExp); + } + else { + return docObj.selectNodes(xpathExp)||new Array(0); + } + } else { //Mozilla + var nodeObj = docObj; + + if (!docObj){ + if (!this.xmlDoc.nodeName){ + docObj=this.xmlDoc.responseXML + } + else { + docObj=this.xmlDoc; + } + } + + if (!docObj) + dhtmlxError.throwError("LoadXML", "Incorrect XML", [ + (docObj||this.xmlDoc), + this.mainObject + ]); + + if (docObj.nodeName.indexOf("document") != -1){ + nodeObj=docObj; + } + else { + nodeObj=docObj; + docObj=docObj.ownerDocument; + } + var retType = XPathResult.ANY_TYPE; + + if (result_type == 'single') + retType=XPathResult.FIRST_ORDERED_NODE_TYPE + var rowsCol = new Array(); + var col = docObj.evaluate(xpathExp, nodeObj, function(pref){ + return namespace + }, retType, null); + + if (retType == XPathResult.FIRST_ORDERED_NODE_TYPE){ + return col.singleNodeValue; + } + var thisColMemb = col.iterateNext(); + + while (thisColMemb){ + rowsCol[rowsCol.length]=thisColMemb; + thisColMemb=col.iterateNext(); + } + return rowsCol; + } +} + +function _dhtmlxError(type, name, params){ + if (!this.catches) + this.catches=new Array(); + + return this; +} + +_dhtmlxError.prototype.catchError=function(type, func_name){ + this.catches[type]=func_name; +} +_dhtmlxError.prototype.throwError=function(type, name, params){ + if (this.catches[type]) + return this.catches[type](type, name, params); + + if (this.catches["ALL"]) + return this.catches["ALL"](type, name, params); + + alert("Error type: "+arguments[0]+"\nDescription: "+arguments[1]); + return null; +} + +window.dhtmlxError=new _dhtmlxError(); + + +//opera fake, while 9.0 not released +//multibrowser Xpath processor +dtmlXMLLoaderObject.prototype.doXPathOpera=function(xpathExp, docObj){ + //this is fake for Opera + var z = xpathExp.replace(/[\/]+/gi, "/").split('/'); + var obj = null; + var i = 1; + + if (!z.length) + return []; + + if (z[0] == ".") + obj=[docObj]; else if (z[0] == ""){ + obj=(this.xmlDoc.responseXML||this.xmlDoc).getElementsByTagName(z[i].replace(/\[[^\]]*\]/g, "")); + i++; + } else + return []; + + for (i; i < z.length; i++)obj=this._getAllNamedChilds(obj, z[i]); + + if (z[i-1].indexOf("[") != -1) + obj=this._filterXPath(obj, z[i-1]); + return obj; +} + +dtmlXMLLoaderObject.prototype._filterXPath=function(a, b){ + var c = new Array(); + var b = b.replace(/[^\[]*\[\@/g, "").replace(/[\[\]\@]*/g, ""); + + for (var i = 0; i < a.length; i++) + if (a[i].getAttribute(b)) + c[c.length]=a[i]; + + return c; +} +dtmlXMLLoaderObject.prototype._getAllNamedChilds=function(a, b){ + var c = new Array(); + + if (_isKHTML) + b=b.toUpperCase(); + + for (var i = 0; i < a.length; i++)for (var j = 0; j < a[i].childNodes.length; j++){ + if (_isKHTML){ + if (a[i].childNodes[j].tagName&&a[i].childNodes[j].tagName.toUpperCase() == b) + c[c.length]=a[i].childNodes[j]; + } + + else if (a[i].childNodes[j].tagName == b) + c[c.length]=a[i].childNodes[j]; + } + + return c; +} + +function dhtmlXHeir(a, b){ + for (var c in b) + if (typeof (b[c]) == "function") + a[c]=b[c]; + return a; +} + +function dhtmlxEvent(el, event, handler){ + if (el.addEventListener) + el.addEventListener(event, handler, false); + + else if (el.attachEvent) + el.attachEvent("on"+event, handler); +} + +//============= XSL Extension =================================== + +dtmlXMLLoaderObject.prototype.xslDoc=null; +dtmlXMLLoaderObject.prototype.setXSLParamValue=function(paramName, paramValue, xslDoc){ + if (!xslDoc) + xslDoc=this.xslDoc + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML; + var item = + this.doXPath("/xsl:stylesheet/xsl:variable[@name='"+paramName+"']", xslDoc, + "http:/\/www.w3.org/1999/XSL/Transform", "single"); + + if (item != null) + item.firstChild.nodeValue=paramValue +} +dtmlXMLLoaderObject.prototype.doXSLTransToObject=function(xslDoc, xmlDoc){ + if (!xslDoc) + xslDoc=this.xslDoc; + + if (xslDoc.responseXML) + xslDoc=xslDoc.responseXML + + if (!xmlDoc) + xmlDoc=this.xmlDoc; + + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + + //MOzilla + if (!_isIE){ + if (!this.XSLProcessor){ + this.XSLProcessor=new XSLTProcessor(); + this.XSLProcessor.importStylesheet(xslDoc); + } + var result = this.XSLProcessor.transformToDocument(xmlDoc); + } else { + var result = new ActiveXObject("Msxml2.DOMDocument.3.0"); + try{ + xmlDoc.transformNodeToObject(xslDoc, result); + }catch(e){ + result = xmlDoc.transformNode(xslDoc); + } + } + return result; +} + +dtmlXMLLoaderObject.prototype.doXSLTransToString=function(xslDoc, xmlDoc){ + var res = this.doXSLTransToObject(xslDoc, xmlDoc); + if(typeof(res)=="string") + return res; + return this.doSerialization(res); +} + +dtmlXMLLoaderObject.prototype.doSerialization=function(xmlDoc){ + if (!xmlDoc) + xmlDoc=this.xmlDoc; + if (xmlDoc.responseXML) + xmlDoc=xmlDoc.responseXML + if (!_isIE){ + var xmlSerializer = new XMLSerializer(); + return xmlSerializer.serializeToString(xmlDoc); + } else + return xmlDoc.xml; +} + +/** +* @desc: +* @type: private +*/ +dhtmlxEventable=function(obj){ + obj.attachEvent=function(name, catcher, callObj){ + name='ev_'+name.toLowerCase(); + if (!this[name]) + this[name]=new this.eventCatcher(callObj||this); + + return(name+':'+this[name].addEvent(catcher)); //return ID (event name & event ID) + } + obj.callEvent=function(name, arg0){ + name='ev_'+name.toLowerCase(); + if (this[name]) + return this[name].apply(this, arg0); + return true; + } + obj.checkEvent=function(name){ + return (!!this['ev_'+name.toLowerCase()]) + } + obj.eventCatcher=function(obj){ + var dhx_catch = []; + var z = function(){ + var res = true; + for (var i = 0; i < dhx_catch.length; i++){ + if (dhx_catch[i] != null){ + var zr = dhx_catch[i].apply(obj, arguments); + res=res&&zr; + } + } + return res; + } + z.addEvent=function(ev){ + if (typeof (ev) != "function") + ev=eval(ev); + if (ev) + return dhx_catch.push(ev)-1; + return false; + } + z.removeEvent=function(id){ + dhx_catch[id]=null; + } + return z; + } + obj.detachEvent=function(id){ + if (id != false){ + var list = id.split(':'); //get EventName and ID + this[list[0]].removeEvent(list[1]); //remove event + } + } + obj.detachAllEvents = function(){ + for (var name in this){ + if (name.indexOf("ev_")==0) + delete this[name]; + } + } +} diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcontainer.js b/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcontainer.js new file mode 100755 index 0000000000..1c07ecc78a --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/dhtmlxcontainer.js @@ -0,0 +1,1173 @@ +function dhtmlXContainer(obj) { + + var that = this; + + this.obj = obj; + this.dhxcont = null; + + this.st = document.createElement("DIV"); + this.st.style.position = "absolute"; + this.st.style.left = "-200px"; + this.st.style.top = "0px"; + this.st.style.width = "100px"; + this.st.style.height = "1px"; + this.st.style.visibility = "hidden"; + this.st.style.overflow = "hidden"; + document.body.insertBefore(this.st, document.body.childNodes[0]); + + this.obj._getSt = function() { + // return this.st object, needed for content moving + return that.st; + } + + this.obj.dv = "def"; // default + this.obj.av = this.obj.dv; // active for usage + this.obj.cv = this.obj.av; // current opened + this.obj.vs = {}; // all + this.obj.vs[this.obj.av] = {}; + + this.obj.view = function(name) { + + if (!this.vs[name]) { + + this.vs[name] = {}; + this.vs[name].dhxcont = this.vs[this.dv].dhxcont; + var mainCont = document.createElement("DIV"); + mainCont.style.position = "relative"; + mainCont.style.left = "0px"; + mainCont.style.width = "200px"; + mainCont.style.height = "200px"; + mainCont.style.overflow = "hidden"; + that.st.appendChild(mainCont); + + this.vs[name].dhxcont.mainCont[name] = mainCont; + + } + + this.avt = this.av; + this.av = name; + + return this; + + } + + this.obj.setActive = function() { + + if (!this.vs[this.av]) return; + + this.cv = this.av; + + // detach current content + + if (this.vs[this.avt].dhxcont == this.vs[this.avt].dhxcont.mainCont[this.avt].parentNode) { + + that.st.appendChild(this.vs[this.avt].dhxcont.mainCont[this.avt]); + + if (this.vs[this.avt].menu) that.st.appendChild(document.getElementById(this.vs[this.avt].menuId)); + if (this.vs[this.avt].toolbar) that.st.appendChild(document.getElementById(this.vs[this.avt].toolbarId)); + if (this.vs[this.avt].sb) that.st.appendChild(document.getElementById(this.vs[this.avt].sbId)); + + } + + + + // adjust content + if (this._isCell) { + //this.adjustContent(this.childNodes[0], (this._noHeader?0:this.skinParams[this.skin]["cpanel_height"])); + } + //this.vs[this.av].dhxcont.mainCont[this.av].style.width = this.vs[this.av].dhxcont.mainCont[this.avt].style.width; + //this.vs[this.av].dhxcont.mainCont[this.av].style.height = this.vs[this.av].dhxcont.mainCont[this.avt].style.height; + + if (this.vs[this.av].dhxcont != this.vs[this.av].dhxcont.mainCont[this.av].parentNode) { + + this.vs[this.av].dhxcont.insertBefore(this.vs[this.av].dhxcont.mainCont[this.av],this.vs[this.av].dhxcont.childNodes[this.vs[this.av].dhxcont.childNodes.length-1]); + + if (this.vs[this.av].menu) this.vs[this.av].dhxcont.insertBefore(document.getElementById(this.vs[this.av].menuId), this.vs[this.av].dhxcont.childNodes[0]); + if (this.vs[this.av].toolbar) this.vs[this.av].dhxcont.insertBefore(document.getElementById(this.vs[this.av].toolbarId), this.vs[this.av].dhxcont.childNodes[(this.vs[this.av].menu?1:0)]); + if (this.vs[this.av].sb) this.vs[this.av].dhxcont.insertBefore(document.getElementById(this.vs[this.av].sbId), this.vs[this.av].dhxcont.childNodes[this.vs[this.av].dhxcont.childNodes.length-1]); + + } + + if (this._doOnResize) this._doOnResize(); + + this.avt = null; + } + + this.obj._viewRestore = function() { + var t = this.av; + if (this.avt) { this.av = this.avt; this.avt = null; } + return t; + } + + this.setContent = function(data) { + /* + this.dhxcont = data; + this.dhxcont.innerHTML = "
    "+ + ""; + this.dhxcont.mainCont = this.dhxcont.childNodes[0]; + this.obj.vs[this.obj.av].dhxcont = this.dhxcont; + */ + + this.obj.vs[this.obj.av].dhxcont = data; + this.obj._init(); + } + + this.obj._init = function() { + + this.vs[this.av].dhxcont.innerHTML = "
    "+ + ""; + + this.vs[this.av].dhxcont.mainCont = {}; + this.vs[this.av].dhxcont.mainCont[this.av] = this.vs[this.av].dhxcont.childNodes[0]; + + } + + this.obj._genStr = function(w) { + var s = ""; var z = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; + for (var q=0; q 0) objB.appendChild(objA.childNodes[0]); + + //this.vs[a] = null; + + + } + + cont.view(this.av).setActive(); + + + } + + this.obj.adjustContent = function(parentObj, offsetTop, marginTop, notCalcWidth, offsetBottom) { + + this.vs[this.av].dhxcont.style.left = (this._offsetLeft||0)+"px"; + this.vs[this.av].dhxcont.style.top = (this._offsetTop||0)+offsetTop+"px"; + // + var cw = parentObj.clientWidth+(this._offsetWidth||0); + if (notCalcWidth !== true) this.vs[this.av].dhxcont.style.width = Math.max(0, cw)+"px"; + if (notCalcWidth !== true) if (this.vs[this.av].dhxcont.offsetWidth > cw) this.vs[this.av].dhxcont.style.width = Math.max(0, cw*2-this.vs[this.av].dhxcont.offsetWidth)+"px"; + // + var ch = parentObj.clientHeight+(this._offsetHeight||0); + this.vs[this.av].dhxcont.style.height = Math.max(0, ch-offsetTop)+(marginTop!=null?marginTop:0)+"px"; + if (this.vs[this.av].dhxcont.offsetHeight > ch - offsetTop) this.vs[this.av].dhxcont.style.height = Math.max(0, (ch-offsetTop)*2-this.vs[this.av].dhxcont.offsetHeight)+"px"; + if (offsetBottom) if (!isNaN(offsetBottom)) this.vs[this.av].dhxcont.style.height = Math.max(0, parseInt(this.vs[this.av].dhxcont.style.height)-offsetBottom)+"px"; + + // main window content + if (this.vs[this.av]._minDataSizeH != null) { + // height for menu/toolbar/status bar should be included + if (parseInt(this.vs[this.av].dhxcont.style.height) < this.vs[this.av]._minDataSizeH) this.vs[this.av].dhxcont.style.height = this.vs[this.av]._minDataSizeH+"px"; + } + if (this.vs[this.av]._minDataSizeW != null) { + if (parseInt(this.vs[this.av].dhxcont.style.width) < this.vs[this.av]._minDataSizeW) this.vs[this.av].dhxcont.style.width = this.vs[this.av]._minDataSizeW+"px"; + } + + if (notCalcWidth !== true) { + this.vs[this.av].dhxcont.mainCont[this.av].style.width = this.vs[this.av].dhxcont.clientWidth+"px"; + // allow border to this.dhxcont.mainCont + if (this.vs[this.av].dhxcont.mainCont[this.av].offsetWidth > this.vs[this.av].dhxcont.clientWidth) this.vs[this.av].dhxcont.mainCont[this.av].style.width = Math.max(0, this.vs[this.av].dhxcont.clientWidth*2-this.vs[this.av].dhxcont.mainCont[this.av].offsetWidth)+"px"; + } + + var menuOffset = (this.vs[this.av].menu!=null?(!this.vs[this.av].menuHidden?this.vs[this.av].menuHeight:0):0); + var toolbarOffset = (this.vs[this.av].toolbar!=null?(!this.vs[this.av].toolbarHidden?this.vs[this.av].toolbarHeight:0):0); + var statusOffset = (this.vs[this.av].sb!=null?(!this.vs[this.av].sbHidden?this.vs[this.av].sbHeight:0):0); + + // allow border to this.dhxcont.mainCont + this.vs[this.av].dhxcont.mainCont[this.av].style.height = this.vs[this.av].dhxcont.clientHeight+"px"; + if (this.vs[this.av].dhxcont.mainCont[this.av].offsetHeight > this.vs[this.av].dhxcont.clientHeight) this.vs[this.av].dhxcont.mainCont[this.av].style.height = Math.max(0, this.vs[this.av].dhxcont.clientHeight*2-this.vs[this.av].dhxcont.mainCont[this.av].offsetHeight)+"px"; + this.vs[this.av].dhxcont.mainCont[this.av].style.height = Math.max(0, parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)-menuOffset-toolbarOffset-statusOffset)+"px"; + + } + this.obj.coverBlocker = function() { + return this.vs[this.av].dhxcont.childNodes[this.vs[this.av].dhxcont.childNodes.length-1]; + } + this.obj.showCoverBlocker = function() { + this.coverBlocker().style.display = ""; + } + this.obj.hideCoverBlocker = function() { + this.coverBlocker().style.display = "none"; + } + this.obj.updateNestedObjects = function() { + + if (this.vs[this.av].grid) { this.vs[this.av].grid.setSizes(); } + if (this.vs[this.av].sched) { this.vs[this.av].sched.setSizes(); } + if (this.vs[this.av].tabbar) { + this.vs[this.av].tabbar.adjustOuterSize(); + } + if (this.vs[this.av].folders) { this.vs[this.av].folders.setSizes(); } + if (this.vs[this.av].editor) { + if (!_isIE) this.vs[this.av].editor._prepareContent(true); + this.vs[this.av].editor.setSizes(); + } + + //if (_isOpera) { var t = this; window.setTimeout(function(){t.editor.adjustSize();},10); } else { this.vs[this.av].editor.adjustSize(); } } + if (this.vs[this.av].layout) { + if (this.vs[this.av]._isAcc && this.vs[this.av].skin == "dhx_skyblue") { + this.vs[this.av].layoutObj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+2+"px"; + this.vs[this.av].layoutObj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+2+"px"; + } else { + this.vs[this.av].layoutObj.style.width = this.vs[this.av].dhxcont.mainCont[this.av].style.width; + this.vs[this.av].layoutObj.style.height = this.vs[this.av].dhxcont.mainCont[this.av].style.height; + } + this.vs[this.av].layout.setSizes(); + } + + if (this.vs[this.av].accordion != null) { + + if (this.vs[this.av].skin == "dhx_web") { + this.vs[this.av].accordionObj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+"px"; + this.vs[this.av].accordionObj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+"px"; + } else { + this.vs[this.av].accordionObj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+2+"px"; + this.vs[this.av].accordionObj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+2+"px"; + } + this.vs[this.av].accordion.setSizes(); + } + // docked layout's cell + if (this.vs[this.av].dockedCell) { this.vs[this.av].dockedCell.updateNestedObjects(); } + /* + if (win.accordion != null) { win.accordion.setSizes(); } + if (win.layout != null) { win.layout.setSizes(win); } + */ + if (this.vs[this.av].form) this.vs[this.av].form.setSizes(); + } + /** + * @desc: attaches a status bar to a window + * @type: public + */ + this.obj.attachStatusBar = function() { + + if (this.vs[this.av].sb) return; + + var sbObj = document.createElement("DIV"); + + if (this._isCell) { + sbObj.className = "dhxcont_sb_container_layoutcell"; + } else { + sbObj.className = "dhxcont_sb_container"; + } + sbObj.id = "sbobj_"+this._genStr(12); + sbObj.innerHTML = "
    "; + + if (this.cv == this.av) this.vs[this.av].dhxcont.insertBefore(sbObj, this.vs[this.av].dhxcont.childNodes[this.vs[this.av].dhxcont.childNodes.length-1]); else that.st.appendChild(sbObj); + + sbObj.setText = function(text) { this.childNodes[0].innerHTML = text; } + sbObj.getText = function() { return this.childNodes[0].innerHTML; } + sbObj.onselectstart = function(e) { e=e||event; e.returnValue=false; return false; } + + this.vs[this.av].sb = sbObj; + this.vs[this.av].sbHeight = (this.skin=="dhx_web"?41:(this.skin=="dhx_skyblue"?23:sbObj.offsetHeight)); + this.vs[this.av].sbId = sbObj.id; + + if (this._doOnAttachStatusBar) this._doOnAttachStatusBar("init"); + this.adjust(); + + return this.vs[this._viewRestore()].sb; + } + /** + * @desc: detaches a status bar from a window + * @type: public + */ + this.obj.detachStatusBar = function() { + if (!this.vs[this.av].sb) return; + this.vs[this.av].sb.setText = null; + this.vs[this.av].sb.getText = null; + this.vs[this.av].sb.onselectstart = null; + this.vs[this.av].sb.parentNode.removeChild(this.vs[this.av].sb); + this.vs[this.av].sb = null; + this.vs[this.av].sbHeight = null; + this.vs[this.av].sbId = null; + this._viewRestore(); + if (this._doOnAttachStatusBar) this._doOnAttachStatusBar("unload"); + } + /** + * @desc: attaches a dhtmlxMenu to a window + * @type: public + */ + this.obj.attachMenu = function(skin) { + + if (this.vs[this.av].menu) return; + + var menuObj = document.createElement("DIV"); + menuObj.style.position = "relative"; + menuObj.style.overflow = "hidden"; + menuObj.id = "dhxmenu_"+this._genStr(12); + + if (this.cv == this.av) this.vs[this.av].dhxcont.insertBefore(menuObj, this.vs[this.av].dhxcont.childNodes[0]); else that.st.appendChild(menuObj); + + this.vs[this.av].menu = new dhtmlXMenuObject(menuObj.id, (skin||this.skin)); + this.vs[this.av].menuHeight = (this.skin=="dhx_web"?29:menuObj.offsetHeight); + this.vs[this.av].menuId = menuObj.id; + + if (this._doOnAttachMenu) this._doOnAttachMenu("init"); + this.adjust(); + + return this.vs[this._viewRestore()].menu; + } + /** + * @desc: detaches a dhtmlxMenu from a window + * @type: public + */ + this.obj.detachMenu = function() { + if (!this.vs[this.av].menu) return; + var menuObj = document.getElementById(this.vs[this.av].menuId); + this.vs[this.av].menu.unload(); + this.vs[this.av].menu = null; + this.vs[this.av].menuId = null; + this.vs[this.av].menuHeight = null; + menuObj.parentNode.removeChild(menuObj); + menuObj = null; + this._viewRestore(); + if (this._doOnAttachMenu) this._doOnAttachMenu("unload"); + } + /** + * @desc: attaches a dhtmlxToolbar to a window + * @type: public + */ + this.obj.attachToolbar = function(skin) { + + if (this.vs[this.av].toolbar) return; + + var toolbarObj = document.createElement("DIV"); + toolbarObj.style.position = "relative"; + toolbarObj.style.overflow = "hidden"; + toolbarObj.id = "dhxtoolbar_"+this._genStr(12); + + if (this.cv == this.av) this.vs[this.av].dhxcont.insertBefore(toolbarObj, this.vs[this.av].dhxcont.childNodes[(this.vs[this.av].menu!=null?1:0)]); else that.st.appendChild(toolbarObj); + + this.vs[this.av].toolbar = new dhtmlXToolbarObject(toolbarObj.id, (skin||this.skin)); + this.vs[this.av].toolbarHeight = (this.skin=="dhx_web"?41:toolbarObj.offsetHeight+(this._isLayout&&this.skin=="dhx_skyblue"?2:0)); + this.vs[this.av].toolbarId = toolbarObj.id; + + if (this._doOnAttachToolbar) this._doOnAttachToolbar("init"); + this.adjust(); + + return this.vs[this._viewRestore()].toolbar; + } + /** + * @desc: detaches a dhtmlxToolbar from a window + * @type: public + */ + this.obj.detachToolbar = function() { + if (!this.vs[this.av].toolbar) return; + var toolbarObj = document.getElementById(this.vs[this.av].toolbarId); + this.vs[this.av].toolbar.unload(); + this.vs[this.av].toolbar = null; + this.vs[this.av].toolbarId = null; + this.vs[this.av].toolbarHeight = null; + toolbarObj.parentNode.removeChild(toolbarObj); + toolbarObj = null; + this._viewRestore(); + if (this._doOnAttachToolbar) this._doOnAttachToolbar("unload"); + } + /** + * @desc: attaches a dhtmlxGrid to a window + * @type: public + */ + this.obj.attachGrid = function() { + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + var obj = document.createElement("DIV"); + obj.id = "dhxGridObj_"+this._genStr(12); + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.cmp = "grid"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + + this.vs[this.av].grid = new dhtmlXGridObject(obj.id); + this.vs[this.av].grid.setSkin(this.skin); + if (this.skin != "dhx_web") { + this.vs[this.av].grid.entBox.style.border = "0px solid white"; + this.vs[this.av].grid._sizeFix=0; + } + this.vs[this.av].gridId = obj.id; + this.vs[this.av].gridObj = obj; + + return this.vs[this._viewRestore()].grid; + } + /** + * @desc: attaches a dhtmlxScheduler to a window + * @type: public + */ + this.obj.attachScheduler = function(day,mode) { + var obj = document.createElement("DIV"); + obj.id = "dhxSchedObj_"+this._genStr(12); + obj.innerHTML = '
     
     
    '; + + document.body.appendChild(obj.firstChild); + this.attachObject(obj.id, false, true); + + this.vs[this.av].sched = scheduler; + this.vs[this.av].schedId = obj.id; + scheduler.setSizes = scheduler.update_view; + scheduler.destructor=function(){}; + scheduler.init(obj.id,day,mode); + + return this.vs[this._viewRestore()].sched; + } + /** + * @desc: attaches a dhtmlxTree to a window + * @param: rootId - not mandatory, tree super root, see dhtmlxTree documentation for details + * @type: public + */ + this.obj.attachTree = function(rootId) { + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + var obj = document.createElement("DIV"); + obj.id = "dhxTreeObj_"+this._genStr(12); + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.cmp = "tree"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + this.vs[this.av].tree = new dhtmlXTreeObject(obj.id, "100%", "100%", (rootId||0)); + this.vs[this.av].tree.setSkin(this.skin); + // this.tree.allTree.style.paddingTop = "2px"; + this.vs[this.av].tree.allTree.childNodes[0].style.marginTop = "2px"; + this.vs[this.av].tree.allTree.childNodes[0].style.marginBottom = "2px"; + + this.vs[this.av].treeId = obj.id; + this.vs[this.av].treeObj = obj; + + return this.vs[this._viewRestore()].tree; + } + /** + * @desc: attaches a dhtmlxTabbar to a window + * @type: public + */ + this.obj.attachTabbar = function(mode) { + + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.style.border = "none"; + this.setDimension(this.w, this.h); + } + + var obj = document.createElement("DIV"); + obj.id = "dhxTabbarObj_"+this._genStr(12); + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.style.overflow = "hidden"; + obj.cmp = "tabbar"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + + // manage dockcell if exists + if (this.className == "dhtmlxLayoutSinglePoly") this.hideHeader(); + // + this.vs[this.av].tabbar = new dhtmlXTabBar(obj.id, mode||"top", 20); + if (!this._isWindow) this.vs[this.av].tabbar._s.expand = true; + this.vs[this.av].tabbar.setSkin(this.skin); + this.vs[this.av].tabbar.adjustOuterSize(); + this.vs[this.av].tabbarId = obj.id; + this.vs[this.av].tabbarObj = obj; + + return this.vs[this._viewRestore()].tabbar; + } + /** + * @desc: attaches a dhtmlxFolders to a window + * @type: public + */ + this.obj.attachFolders = function() { + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + var obj = document.createElement("DIV"); + obj.id = "dhxFoldersObj_"+this._genStr(12); + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.style.overflow = "hidden"; + obj.cmp = "folders"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + this.vs[this.av].folders = new dhtmlxFolders(obj.id); + this.vs[this.av].folders.setSizes(); + + this.vs[this.av].foldersId = obj.id; + this.vs[this.av].foldersObj = obj; + + return this.vs[this._viewRestore()].folders; + } + /** + * @desc: attaches a dhtmlxAccordion to a window + * @type: public + */ + this.obj.attachAccordion = function() { + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + + var obj = document.createElement("DIV"); + obj.id = "dhxAccordionObj_"+this._genStr(12); + + if (this.skin == "dhx_web") { + obj.style.left = "0px"; + obj.style.top = "0px"; + obj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+"px"; + obj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+"px"; + } else { + + obj.style.left = "-1px"; + obj.style.top = "-1px"; + obj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+2+"px"; + obj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+2+"px"; + } + // + obj.style.position = "relative"; + obj.cmp = "accordion"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + + this.vs[this.av].accordion = new dhtmlXAccordion(obj.id, this.skin); + this.vs[this.av].accordion.setSizes(); + this.vs[this.av].accordionId = obj.id; + this.vs[this.av].accordionObj = obj; + + return this.vs[this._viewRestore()].accordion; + } + /** + * @desc: attaches a dhtmlxLayout to a window + * @param: view - layout's pattern + * @param: skin - layout's skin + * @type: public + */ + this.obj.attachLayout = function(view, skin) { + + // attach layout to layout + if (this._isCell && this.skin == "dhx_skyblue") { + this.hideHeader(); + this.vs[this.av].dhxcont.style.border = "0px solid white"; + this.adjustContent(this.childNodes[0], 0); + } + + if (this._isCell && this.skin == "dhx_web") { + this.hideHeader(); + } + + var obj = document.createElement("DIV"); + obj.id = "dhxLayoutObj_"+this._genStr(12); + obj.style.overflow = "hidden"; + obj.style.position = "absolute"; + + obj.style.left = "0px"; + obj.style.top = "0px"; + obj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+"px"; + obj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+"px"; + + if (this._isAcc && this.skin == "dhx_skyblue") { + obj.style.left = "-1px"; + obj.style.top = "-1px"; + obj.style.width = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.width)+2+"px"; + obj.style.height = parseInt(this.vs[this.av].dhxcont.mainCont[this.av].style.height)+2+"px"; + } + + // needed for layout's init + obj.dhxContExists = true; + obj.cmp = "layout"; + document.body.appendChild(obj); + this.attachObject(obj.id, false, true); + + this.vs[this.av].layout = new dhtmlXLayoutObject(obj, view, (skin||this.skin)); + // window/layout events configuration + if (this._isWindow) this.attachEvent("_onBeforeTryResize", this.vs[this.av].layout._defineWindowMinDimension); + + this.vs[this.av].layoutId = obj.id; + this.vs[this.av].layoutObj = obj; + + // this.adjust(); + + return this.vs[this._viewRestore()].layout; + } + /** + * @desc: attaches a dhtmlxEditor to a window + * @param: skin - not mandatory, editor's skin + * @type: public + */ + this.obj.attachEditor = function(skin) { + if (this._isWindow && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + var obj = document.createElement("DIV"); + obj.id = "dhxEditorObj_"+this._genStr(12); + obj.style.position = "relative"; + obj.style.display = "none"; + obj.style.overflow = "hidden"; + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.cmp = "editor"; + document.body.appendChild(obj); + // + this.attachObject(obj.id, false, true); + // + this.vs[this.av].editor = new dhtmlXEditor(obj.id, this.skin); + + this.vs[this.av].editorId = obj.id; + this.vs[this.av].editorObj = obj; + return this.vs[this._viewRestore()].editor; + + } + + this.obj.attachMap = function(opts) { + + var obj = document.createElement("DIV"); + obj.id = "GMapsObj_"+this._genStr(12); + obj.style.position = "relative"; + obj.style.display = "none"; + obj.style.overflow = "hidden"; + obj.style.width = "100%"; + obj.style.height = "100%"; + obj.cmp = "gmaps"; + document.body.appendChild(obj); + + this.attachObject(obj.id, false, true); + + if (!opts) opts = {center: new google.maps.LatLng(40.719837,-73.992348), zoom: 11, mapTypeId: google.maps.MapTypeId.ROADMAP}; + this.vs[this.av].gmaps = new google.maps.Map(obj, opts); + + return this.vs[this.av].gmaps; + + } + + /** + * @desc: attaches an object into a window + * @param: obj - object or object id + * @param: autoSize - set true to adjust a window to object's dimension + * @type: public + */ + this.obj.attachObject = function(obj, autoSize, localCall) { + if (typeof(obj) == "string") obj = document.getElementById(obj); + if (autoSize) { + obj.style.visibility = "hidden"; + obj.style.display = ""; + var objW = obj.offsetWidth; + var objH = obj.offsetHeight; + } + this._attachContent("obj", obj); + if (autoSize && this._isWindow) { + obj.style.visibility = "visible"; + this._adjustToContent(objW, objH); + /* this._engineAdjustWindowToContent(this, objW, objH); */ + } + if (!localCall) this._viewRestore(); + } + /** + * + * + */ + this.obj.detachObject = function(remove, moveTo) { + + // detach dhtmlx components + + var p = null; + var pObj = null; + var t = ["tree","grid","layout","tabbar","accordion","folders"]; + for (var q=0; q 0) pObj.removeChild(pObj.childNodes[0]); + pObj.parentNode.removeChild(pObj); + pObj = null; + p = null; + } else { + document.body.appendChild(pObj); + pObj.style.display = "none"; + } + this.vs[this.av][t[q]] = null; + this.vs[this.av][t[q]+"Id"] = null; + this.vs[this.av][t[q]+"Obj"] = null; + } + } + + if (p != null && pObj != null) return new Array(p, pObj); + + // detach any other content + if (remove && this.vs[this.av]._frame) { + this._detachURLEvents(); + this.vs[this.av]._frame = null; + } + + var objA = this.vs[this.av].dhxcont.mainCont[this.av]; + while (objA.childNodes.length > 0) { + if (remove == true) { + // add frame events removing + objA.removeChild(objA.childNodes[0]); + } else { + var obj = objA.childNodes[0]; + if (moveTo != null) { + if (typeof(moveTo) != "object") moveTo = document.getElementById(moveTo); + moveTo.appendChild(obj); + } else { + document.body.appendChild(obj); + } + obj.style.display = "none"; + } + } + } + + /** + * @desc: appends an object into a window + * @param: obj - object or object id + * @type: public + */ + this.obj.appendObject = function(obj) { + if (typeof(obj) == "string") { obj = document.getElementById(obj); } + this._attachContent("obj", obj, true); + } + /** + * @desc: attaches an html string as an object into a window + * @param: str - html string + * @type: public + */ + this.obj.attachHTMLString = function(str) { + this._attachContent("str", str); + var z=str.match(/]*>[^\f]*?<\/script>/g)||[]; + for (var i=0; i]*>/g,"") + if (window.execScript) window.execScript(s); + else window.eval(s); + } + } + /** + * @desc: attaches an url into a window + * @param: url + * @param: ajax - loads an url with ajax + * @type: public + */ + this.obj.attachURL = function(url, ajax) { + this._attachContent((ajax==true?"urlajax":"url"), url, false); + this._viewRestore(); + } + this.obj.adjust = function() { + if (this.skin == "dhx_skyblue") { + if (this.vs[this.av].menu) { + if (this._isWindow || this._isLayout) { + this.vs[this.av].menu._topLevelOffsetLeft = 0; + document.getElementById(this.vs[this.av].menuId).style.height = "26px"; + this.vs[this.av].menuHeight = document.getElementById(this.vs[this.av].menuId).offsetHeight; + if (this._doOnAttachMenu) this._doOnAttachMenu("show"); + } + if (this._isCell) { + document.getElementById(this.vs[this.av].menuId).className += " in_layoutcell"; + // document.getElementById(this.menuId).style.height = "25px"; + this.vs[this.av].menuHeight = 25; + } + if (this._isAcc) { + document.getElementById(this.vs[this.av].menuId).className += " in_acccell"; + // document.getElementById(this.menuId).style.height = "25px"; + this.vs[this.av].menuHeight = 25; + } + if (this._doOnAttachMenu) this._doOnAttachMenu("adjust"); + } + if (this.vs[this.av].toolbar) { + if (this._isWindow || this._isLayout) { + document.getElementById(this.vs[this.av].toolbarId).style.height = "29px"; + this.vs[this.av].toolbarHeight = document.getElementById(this.vs[this.av].toolbarId).offsetHeight; + if (this._doOnAttachToolbar) this._doOnAttachToolbar("show"); + } + if (this._isCell) { + document.getElementById(this.vs[this.av].toolbarId).className += " in_layoutcell"; + } + if (this._isAcc) { + document.getElementById(this.vs[this.av].toolbarId).className += " in_acccell"; + } + } + } + + if (this.skin == "dhx_web") { + + + } + } + // attach content obj|url + this.obj._attachContent = function(type, obj, append) { + // clear old content + if (append !== true) { + if (this.vs[this.av]._frame) { + this._detachURLEvents(); + this.vs[this.av]._frame = null; + } + while (this.vs[this.av].dhxcont.mainCont[this.av].childNodes.length > 0) this.vs[this.av].dhxcont.mainCont[this.av].removeChild(this.vs[this.av].dhxcont.mainCont[this.av].childNodes[0]); + } + // attach + if (type == "url") { + if (this._isWindow && obj.cmp == null && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this._redraw(); + } + var fr = document.createElement("IFRAME"); + fr.frameBorder = 0; + fr.border = 0; + fr.style.width = "100%"; + fr.style.height = "100%"; + fr.setAttribute("src","javascript:false;"); + this.vs[this.av].dhxcont.mainCont[this.av].appendChild(fr); + fr.src = obj; + + // ?? this._frame = fr; + this.vs[this.av]._frame = fr; + this._attachURLEvents(); + + } else if (type == "urlajax") { + + if (this._isWindow && obj.cmp == null && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this.vs[this.av].dhxcont.mainCont[this.av].style.backgroundColor = "#FFFFFF"; + this._redraw(); + } + var t = this; + var xmlParser = function(){ + t.attachHTMLString(this.xmlDoc.responseText, this); + //if (t._doOnAttachURL) t._doOnAttachURL(false); + if (t._doOnFrameContentLoaded) t._doOnFrameContentLoaded(); + this.destructor(); + } + var xmlLoader = new dtmlXMLLoaderObject(xmlParser, window); + xmlLoader.dhxWindowObject = this; + xmlLoader.loadXML(obj); + + } else if (type == "obj") { + + if (this._isWindow && obj.cmp == null && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this.vs[this.av].dhxcont.mainCont[this.av].style.backgroundColor = "#FFFFFF"; + this._redraw(); + } + this.vs[this.av].dhxcont._frame = null; + this.vs[this.av].dhxcont.mainCont[this.av].appendChild(obj); + // this._engineGetWindowContent(win).style.overflow = (append===true?"auto":"hidden"); + // win._content.childNodes[2].appendChild(obj); + this.vs[this.av].dhxcont.mainCont[this.av].style.overflow = (append===true?"auto":"hidden"); + obj.style.display = ""; + + } else if (type == "str") { + + if (this._isWindow && obj.cmp == null && this.skin == "dhx_skyblue") { + this.vs[this.av].dhxcont.mainCont[this.av].style.border = "#a4bed4 1px solid"; + this.vs[this.av].dhxcont.mainCont[this.av].style.backgroundColor = "#FFFFFF"; + this._redraw(); + } + this.vs[this.av].dhxcont._frame = null; + this.vs[this.av].dhxcont.mainCont[this.av].innerHTML = obj; + } + } + + this.obj._attachURLEvents = function() { + var t = this; + var fr = this.vs[this.av]._frame; + if (_isIE) { + fr.onreadystatechange = function(a) { + if (fr.readyState == "complete") { + try {fr.contentWindow.document.body.onmousedown=function(){if(t._doOnFrameMouseDown)t._doOnFrameMouseDown();};}catch(e){}; + try{if(t._doOnFrameContentLoaded)t._doOnFrameContentLoaded();}catch(e){}; + } + } + } else { + fr.onload = function() { + try{fr.contentWindow.onmousedown=function(){if(t._doOnFrameMouseDown)t._doOnFrameMouseDown();};}catch(e){}; + try{if(t._doOnFrameContentLoaded)t._doOnFrameContentLoaded();}catch(e){}; + } + } + } + + this.obj._detachURLEvents = function() { + if (_isIE) { + try { + this.vs[this.av]._frame.onreadystatechange = null; + this.vs[this.av]._frame.contentWindow.document.body.onmousedown = null; + this.vs[this.av]._frame.onload = null; + } catch(e) {}; + } else { + try { + this.vs[this.av]._frame.contentWindow.onmousedown = null; + this.vs[this.av]._frame.onload = null; + } catch(e) {}; + } + } + + this.obj.showMenu = function() { + if (!(this.vs[this.av].menu && this.vs[this.av].menuId)) return; + if (document.getElementById(this.vs[this.av].menuId).style.display != "none") return; + this.vs[this.av].menuHidden = false; + if (this._doOnAttachMenu) this._doOnAttachMenu("show"); + document.getElementById(this.vs[this.av].menuId).style.display = ""; + this._viewRestore(); + } + + this.obj.hideMenu = function() { + if (!(this.vs[this.av].menu && this.vs[this.av].menuId)) return; + if (document.getElementById(this.vs[this.av].menuId).style.display == "none") return; + document.getElementById(this.vs[this.av].menuId).style.display = "none"; + this.vs[this.av].menuHidden = true; + if (this._doOnAttachMenu) this._doOnAttachMenu("hide"); + this._viewRestore(); + } + + this.obj.showToolbar = function() { + if (!(this.vs[this.av].toolbar && this.vs[this.av].toolbarId)) return; + if (document.getElementById(this.vs[this.av].toolbarId).style.display != "none") return; + this.vs[this.av].toolbarHidden = false; + if (this._doOnAttachToolbar) this._doOnAttachToolbar("show"); + document.getElementById(this.vs[this.av].toolbarId).style.display = ""; + this._viewRestore(); + } + + this.obj.hideToolbar = function() { + if (!(this.vs[this.av].toolbar && this.vs[this.av].toolbarId)) return; + if (document.getElementById(this.vs[this.av].toolbarId).style.display == "none") return; + this.vs[this.av].toolbarHidden = true; + document.getElementById(this.vs[this.av].toolbarId).style.display = "none"; + if (this._doOnAttachToolbar) this._doOnAttachToolbar("hide"); + this._viewRestore(); + } + + this.obj.showStatusBar = function() { + if (!(this.vs[this.av].sb && this.vs[this.av].sbId)) return; + if (document.getElementById(this.vs[this.av].sbId).style.display != "none") return; + this.vs[this.av].sbHidden = false; + if (this._doOnAttachStatusBar) this._doOnAttachStatusBar("show"); + document.getElementById(this.vs[this.av].sbId).style.display = ""; + this._viewRestore(); + } + + this.obj.hideStatusBar = function() { + if (!(this.vs[this.av].sb && this.vs[this.av].sbId)) return; + if (document.getElementById(this.vs[this.av].sbId).style.display == "none") return; + this.vs[this.av].sbHidden = true; + document.getElementById(this.vs[this.av].sbId).style.display = "none"; + if (this._doOnAttachStatusBar) this._doOnAttachStatusBar("hide"); + this._viewRestore(); + } + + this.obj._dhxContDestruct = function() { + + // clear attached objects + + var av = this.av; + for (var a in this.vs) { + + this.av = a; + + // menu, toolbar, status + this.detachMenu(); + this.detachToolbar(); + this.detachStatusBar(); + + // remove any attached object or dhtmlx component + this.detachObject(true); + + this.vs[a].dhxcont.mainCont[a].parentNode.removeChild(this.vs[a].dhxcont.mainCont[a]); + this.vs[a].dhxcont.mainCont[a] = null; + + } + + this.vs[this.dv].dhxcont.mainCont = null; + this.vs[this.dv].dhxcont.parentNode.removeChild(this.vs[this.dv].dhxcont); + for (var a in this.vs) this.vs[a].dhxcont = null; + this.vs = null; + + this.attachMenu = null; + this.attachToolbar = null; + this.attachStatusBar = null; + this.detachMenu = null; + this.detachToolbar = null; + this.detachStatusBar = null; + this.showMenu = null; + this.showToolbar = null; + this.showStatusBar = null; + this.hideMenu = null; + this.hideToolbar = null; + this.hideStatusBar = null; + + this.attachGrid = null; + this.attachScheduler = null; + this.attachTree = null; + this.attachTabbar = null; + this.attachFolders = null; + this.attachAccordion = null; + this.attachLayout = null; + this.attachEditor = null; + this.attachObject = null; + this.detachObject = null; + this.appendObject = null; + this.attachHTMLString = null; + this.attachURL = null; + + this.view = null; + this.show = null; + this.adjust = null; + this.setMinContentSize = null; + this.moveContentTo = null; + this.adjustContent = null; + this.coverBlocker = null; + this.showCoverBlocker = null; + this.hideCoverBlocker = null; + this.updateNestedObjects = null; + + this._attachContent = null; + this._attachURLEvents = null; + this._detachURLEvents = null; + this._viewRestore = null; + this._setPadding = null; + this._init = null; + this._genStr = null; + this._dhxContDestruct = null; + + that.st.parentNode.removeChild(that.st); + that.st = null; + + that.setContent = null; + that.dhxcont = null; // no more used at all? + that.obj = null; + that = null; + + // remove attached components + /* + for (var a in this.vs) { + + if (this.vs[a].layout) this.vs[a].layout.unlaod(); + if (this.vs[a].accordion) this.vs[a].accordion.unlaod(); + if (this.vs[a].sched) this.vs[a].sched.destructor(); + + this.vs[a].layout = null; + this.vs[a].accordion = null; + this.vs[a].sched = null; + + } + */ + // extended functionality + if (dhtmlx.detaches) for (var a in dhtmlx.detaches) dhtmlx.detaches[a](this); + + } + + // extended functionality + if (dhtmlx.attaches) for (var a in dhtmlx.attaches) this.obj[a] = dhtmlx.attaches[a]; + +} diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/get_files.php b/phpgwapi/js/dhtmlxtree/libCompiler/get_files.php new file mode 100755 index 0000000000..7b78e13ba1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/get_files.php @@ -0,0 +1,22 @@ + + + + + + + + Ready code stored at


    + Download generated files

    + + + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/images.php b/phpgwapi/js/dhtmlxtree/libCompiler/images.php new file mode 100755 index 0000000000..943c50336f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/images.php @@ -0,0 +1,274 @@ +".$s_l."( position ".$chunks[0][$i][1].") at ".$name); + $temp[$c_size]=array($temps[0],$temps[1],$chunks[0][$i][1],0); + $c_size++; + } + else + { + if (!$temp[$ballans]) + { + echo "
    ";print_r($temp);
    +                  die("Incorrect Injection layout,  
    ballans corrupted.
    ".$s_l."( position ".$chunks[0][$i][1].") at ".$name); + return 0; + } + + for ($ii=$c_size-1; $ii>=0; $ii--) + if ($temp[$ii][3]==0) + { + $temp[$ii][3]=$chunks[0][$i][1]+strlen($chunks[0][$i][0]); + break; + } + + $ballans++; + //end of chunk + } + + } + + if ($ballans!=(sizeof($chunks[0])/2)) + { + die("Incorrect Injection layout,
    ballans corrupted at ".$name); + return 0; + } + + $tokens=array(); + + foreach ($temp as $k=>$v){ + $name=$v[0]; + if (!$tokens[$name]) + $tokens[$name]=array(); + + $tokens[$name][]=$v; + } + return $tokens; + } + function clearAreas($data,$tokens,$preserve){ + foreach($tokens as $k=>$v){ + if ($v && array_search($k,$preserve)===FALSE){ + foreach($v as $kd=>$vd){ + $size=$vd[3]-$vd[2]; + $bik=str_repeat("#",$size); + $data=substr($data,0,$vd[2]).$bik.substr($data,$vd[3]); + } + } + } + $data=preg_replace("|([#]{6,})|","",$data); + return $data; + } + + function process_request($files, $chunks, $skin, $yui=false){ + global $js_header; + + $files=explode(";",$files); + $chunks=explode(";",$chunks); + array_push($chunks,"__pro_feature"); + + $js_list=array("./dhtmlxcommon.js"); + $css_list=array(); + $manifest = array("Skin: ".$skin); + + for ($i=0; $i2) + array_push($components,$temp[1]); + } + $location=export_images(array_values(array_unique($components)),$skin); + for ($i=0; $i < sizeof($components); $i++) { + $temp_name="../".$components[$i]."/codebase/skins/".strtolower($components[$i])."_".$skin.".css"; + + if (file_exists($temp_name)) + array_push($css_list,$temp_name); + } + + $css_list=array_values(array_unique($css_list)); + + $js_code=""; + $css_code=""; + $jscore_code=""; + + array_push($manifest,"\n======== JS CODE ========="); + for ($i=0; $i {$location}/temp2.js`; + $js_code=file_get_contents($location."/temp2.js"); + unlink($location."/temp.js"); + unlink($location."/temp2.js"); + } + + $css_code=preg_replace('/"/',"'",$css_code); + $css_code=str_replace("../imgs","imgs/",$css_code); + $css_code=str_replace("../../codebase/","",$css_code); + + if (!$yui){ + $css_code=preg_replace("#\/\*([^\*]|\*[^\/])*\*\/#","",$css_code); + $css_code=preg_replace('/[ \t]+/'," ",$css_code); + $css_code=preg_replace("/\{[\r\n]+/","{",$css_code); + $css_code=preg_replace("/;[\r\n]+/",";",$css_code); + $css_code=preg_replace("/[\r\n]+/","\n",$css_code); + $css_code=preg_replace("/\/\*.*\n/","",$css_code); + //$css_code=preg_replace("/\n/","\";str+=\"",$css_code); + //$css_code=preg_replace("/\n/","\\n",$css_code); + + $css_code=preg_replace("/\{ /","{",$css_code); + $css_code=preg_replace("/[; ]+\}/","}",$css_code); + }else{ + file_put_contents($location."/temp.css",$css_code); + `java -jar ./yui/yuicompressor-2.3.5/build/yuicompressor-2.3.5.jar {$location}/temp.css > {$location}/temp2.css`; + $css_code=file_get_contents($location."/temp2.css"); + unlink($location."/temp.css"); + unlink($location."/temp2.css"); + } + + + file_put_contents($location."/dhtmlx.js",$js_header.$js_code.$jscore_code); + file_put_contents($location."/dhtmlx.css",$css_code); + file_put_contents($location."/manifest.txt",implode("\n",$manifest)); + + return $location; +} + +?> \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/black_skin.png b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/black_skin.png new file mode 100755 index 0000000000000000000000000000000000000000..7faf90cb552e10016b3d87819d8d3c3f33181a2b GIT binary patch literal 22769 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 R-W;F|gQu&X%Q~loCIBu&9p3-| literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/skyblue_skin.png b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/big/skyblue_skin.png new file mode 100755 index 0000000000000000000000000000000000000000..4452b066d2f36709d68e473566d6a7b5b094c929 GIT binary patch literal 13415 zcmaJ|2UJsA+6_H`C`c8gDDZfB>Ng zp-2-#2_^sa&3iNdn{kH4U0K|mTh2NA`_A6`J4EYfsZx+Jl7T=V3bp%6dLR(KF$jd` z48{k}s9Dxlfk12^H6=y;Co@}f;hxvgp{P9vyh!-%tXCGj{x?OW)e4q*8B3+PGRDPR zrTibq)`bdDPr}x!{A^xV^;ac(iyKI#YZTg1b7(w}C?@atSd{pbw;+Dqc1DtT?0%A_ zh^8iwC~Y)UGn(vC2aTP=r}G)4%&a@k*t5C;?(X5Sb95?peQrzJSnVaEs6))JbB zl!Jc=+rn6#MCamzBIY@-DM}vYvmX+HvPdx1MH@FgVDVg z9A@7GZgnlzui(i!lJ(Buxe=mq00bImf?ibiVZyN!Gl)>cR)FR}P)2eSo!o80h(YoW z|M=>7WLSwT$dOO?BED+CCB1|;;{-2ny6hsS$|ryxq(e3NTEK5o8aBjM-sfv!1ns5i zJyfk}ws$86ed>Gyb$cq<15zmUj1~id6r&7tuM>hIDM9~!L=c;uE1r+lg|(zf-`rLxSeVFzS|eap9#IDcrwpjheKudRs{FkDcQiX z=b!uMGTV>#xGnFFUsTeBpY(Na;~tzfS-lb_Pd575%tOx3ay)%}Uf3ZRa=!Yx0fiG$ zpPntpJzCSe*Wfzexacr{?t?l{g}V>6VFSXYuUD;T<3<~1n$$Hk$}ZaEYSHNp@%$h5 z(P8Hl9@w#PM~$KIAEr%ZR8R#$;%t_M9^985)cJZaE3VuKPFEEQ_JA8;KfAo)$7WuJ zqn}oOEu?;9w^+*O#EyjyLn)8u!mS#g%Zr75U(Uq#yQrs_iM!3VdYvg0TrNc#Yq@`+Y~Q1LLAYPVCyd~Mw`Pl z-yX=H3+|k+J@r5|sf`@s8JXH0)z6QMwV4ZS60$2OuN~yGmgQ$r#Z(N);SQ7g*8^r@ zheT;9Oo~>f&Oss<`K+@RV&u!k#{u#zq7?$^KP$qvsU6;@&^FRX$E9!xDuvKy96R*Ch_-7t#$YDW@ z+cr~UzQ>o<_NQURR$!rYT(Agv_^R)jhn%5og?;;~(K(p?;%Lm_;_%RA6I+iOYWEI1 z5B}2ToGiALq{-xGG3MJ=_Fkk3qOx`Z5h|T}wwvxzG3E58RT=?*{dB31mG#8!)OXF#`d60xA^IP*M%MJu(R|Mx22u=i*5N> z97groJNJx%e{RlB!Q zLZYVMyWqy)1W(-H<+e}!XmM!T&WGBvb{aosFwvD^n0Hd)-SIDRXPZ_M1@Z@Tc6ond+2(@xcX>OmoPGR}c5<+6+xiYPcNO|EICp6NWHcCl6~12~bBe|K zY947bqrKY$+_okLK7=8*-j-Kyv8$+8Zh7&RD8uP@y_<}0C&hd{x@5fZ8kX458!PN}0y%l{0wexY#s7r>9+dxTkm_fQv`a4S^d(H}oM$Mm>KT;-#AmpKtd|6-ig z4K@owwU0MMbB7MdN4P~TqH>H89^^uE4f2id5eRW)MsfWBQD17wf`#2~0E-Y8UD$H8 znS71Ev+uUc6)POp&=woV+FVnkcWAm~rS&Rw&7SUJrIUeM=jnC{I5c71BkVEuJe&$1 zjFdHPx_x8)TmO|-lyC67=uil@U&vkV=-&ASG9Mkru;#Zqx-Zx~2uCw}&^K3*?~NW+ zhU|0JpB=ZE0wEW6XAd2_)94ji0Q*Yjwf-YaGTJNyRR&dIZQNhODdr7h8-C zb(9#&ckf_VY#Rp8J_kr3>ZbZofj>ic0&#nSEV%K{D2n4x$H>XU_dX;+TY8&TpIwfK z&vGkoK6FyM9||$$&I@D5kQNVtDY7>qqtFUccHi=&9pvjc_;$#q?!cxrhG!rnP{MKk;nZy4GlfY>!W%rHOzB{i0oySa2$=I&-P z)E8IaRM~p=4QPdEef?=dd-vv0nwjQj?F;M_?DI8h z$kn$^K^EY3dwv6&B|~IMdTEs#e7Xy6JC(FLOR9MLtSj8=^rSO$OSGNGHssE6!4-=U z%tQjIk>RnT>~NwY!!AK?A*(d*Y4O%)WWz9@ApGaSJ@h?ShusbCg${?o^Muq}l9Lyw z179~CEZeFn%ht=c&Iq+L<=iwvzH_o(#KMnXNZ|;swByzt+MP7uN11I7`R3a_^3)N{ z&+Zffw?u%Qci*6;^WnPj6syDKlM(ldKh1GdNA zFJdm}!xrzAqF5$;EfDj#cI#XYnr2IZ^U#M4Z46N^l zDLT%vZDuo^t?wDqYufwH1kBQ{E;ylMhG$-UA)8}_94-4UoET?pq=?ZD(9PTuAGDlpS3>fm5~W z!G6c~gxNl|u1w#9Jc9=6{7IIN42;omzh0s zO~Y6sQYK$AsKe@=7B{J+lSiJvvZQIo)$wv1fG7ma$54Jig8%3agX8>rVT5zl3T@u# zx?L%Jyx;{Q^;Hv@))BOz`54nksUK3g!Ea|^bZ%yCo_f*=5eJi1%N-z^ug>wOuUJ>P z^MOR0Q)@djUP>E}FTFDoMa4)_fHus`@*2bPAg?2#fg%^; zPC@a{$ob2`n2$`GSZ9Ra;Ym@D9|lE*9omyV46$z(=zhYr*Ps@O66PpdmzrCHT$!a> zopRh~tDC=pSzPB~Q*zU@gdZ2il+@E^& znCxIa28J0n@K0lU3D_CV`CSE_yR}J&hMeu6?bm*szF0ljxY}>eLR}sjsjxe5IWoG| z#j?-&V*)E(SzgEDHz7WbSvW{@GOO`PQD8PHIyvO%GQxX==oSD%s>bgJz5;TkzwoWWJ6#g6r?rl(l7p{}CbO zX7zMXZMl8?aNdK0UwSSbbWrBkN|#l*`{GIjg;fF`h!P4sjklefY+NB}#aG%*;|c{u zTwGi=5X7Dnol0LNw2ro@&E=Wqk|T3v6287bRK%w~$iEs*7);Ct{@Mwx3qIO3gSFm( zQrgT!LDb&%KztK@rJ0!~$&ycFZ(4w>!xSF;_@Ks>7?bnCjZvQqcILR`NvvpmlW2MG zO|m6cbF=?R$oI}@QnM6E;f|-!_~e0d|79E9A+tZz}I~ zg7~yg+LP*_^ktUR_jRpL;m?y0f#inDgUWu!=&+x8G536G)SBy7A+NK9c4SAY+%v_e(9F-J|u`C9ch7dZEe_oG{xm|Z| zbrfun#r!HRuD7PFWaH@==LLUvcQ;d;(BOW`_1g;X6pdH*;SV@D--KFx#hh2-S}fwj zMWx7*kJTCHwxr62WlAy`DfAdOo>q6`ftcx_Vg@e(MB6BXK_FVd{?P~U?fY&+zUYcE zl`upWlqK_Qx91I~LG5d*jSwVQCw2rE3 z&#GatQ+1Jppu0?K;nKW@R*!d!c|;fH!;%6)B(b&VOHFLy#!d**=;6yF6MflOq96{inG7UUR**ws`LXb|YOm5p(T&jW@61L^2PB>k zl3;K1mSo#TY+velU67g{dC4Kc-qhTj=D7)+YJLGljAP7< zgf)CQQy#gbjy{X@TsJQbsvqJey3VFBpg2`RwNd`ER0wMQdIvn7G_7F#?`Ry%V70D< z@qaUK+&abwcaZU4%bs_6f-TA1PYidA&(6+XF6PW1tskBJ{wV^T+A}(vN6Cq~j<47p zy8B!bNn*t~JVu*cFIx67_PY8Sk*%$5&F#{XpatLeX-urF9tT~Ls8DYP{5Ud57bjtv z$rP6vp3QXuj0p&>csleW z*lM+s9OS5{%-{_TvRJ+X0=&hTs(7jmQV2-FjMzF+rKpfYsql@RRJs<^7zN`i7KIjl z=m0}@`%jMZ(XEyP7poQRNPn%*BkA2XUtByEfS}@d^JoY(cMa-tGTunF!N&(Ve`%Gi zq9mhUI96?4?%4!49(_)^Ns`wYpYm9^m?vhsK+(=dpCIlzQ-{dx%(d$jbJS43J=SL( zhE(laiP%}Sb+=6Ow*A#QxqwmEs>9)?#7QZ8rmT^grV09^zvtc0w;pDxM^-Izj>~il zPV_;*p@+Q_=5-qP%~*xp$=LJC6Toe*>C_WCMGBgO{ThQqL+JezNOl%aOi77~;kOzM zI{Z0GC$Kf9B+V7os_55@9ngW2;k&uH19 zLKLE(fByVAKljCDF@W=Cg;7RIf-Ic?QTg6N2*JjsrjJSMA@6W)6&|tAk%g};ebR2- zzsP?0tm+Ntc(Uy3J7$V+@rR{jSiS`HfQygFoQM}akA-cP4ZWPkPd`K#NKAgbZqGRF z%`+Rs*;`(+e!0$%Qrs4bHRXkzZ;-AJTGhhd*_;}3S7t1TKtujv@nqO+OkPASf8nG9VO_4>`Sj}n78>%0 zVTz4+Zg#E)2@i=gtHnzvKO8f42X-m@e!ypyN2o+jK|#T+ z&3x;9#rst*65_iF>3@XGqIVx3f5`Sv!BcY&)6H5oe38dgaXkE@Z9=x*L(?hy> z)Kge^B(~J72?8luQBBH0+8nOeB;$e7>7inTbI=>tQSYjwyH%I=BwLu$wf@0jBpmMq z{c2!?Nt9Pz3Gg|Hb`oj}J?%W%Hwb(7L%J%~Yb>Qnm*Gz+sL4dFq|@UmT%Pxxe|;+eHI`?)>EC}NQB7I5U;NFxXsXLl zeYCi!yUcmFD&fpcaGP|#8#HJcnN6!~-I~MkD)u;<+UE2ynwmS(o;{qQuH4nVKAbK# z=x_=4C75@6;5+m-xmF6k#Z@SKQ`|SEgoNGlYrdJk<1~rS6+DO*O?4$@7yVQYI!UWN ztlqEGeYwW|3H3h%DjhKbqj3Fxc71NT3!{4>QBGp<`ZN9)x56RsR+Z|bz<33b$UB{a zHx1#EjE`M|c4%nQ*p!2Rzed~;*}*@nMU?Zo1=Fhp1IfLQJG;u4MvDTB+!vmtROlMvgj1{1F^_bD>k2qr6Tgr;O2o#- z=G@tofP`AZoS3NdUTosG!m?~5Dc5NK42ays%JU&gaYq>`F|tTX$LjZdOf}QbY^=Wt zg6RvOQ`d9WicLqQwXnC)5m*J{fah;+WOKJs&@K6){)@CWyBI`@XKO7BWdP zFp%|Z{)WK^xJk?MEty!jrxVSDcZ3$OTGXpH*jsDMqKcMcrU+=Wt;mEc0G^@B2Yf>U z@-?7@oirYTK%%W2kIjQYz@ltTq1X+aiLks3p&DsC6o)BpwY_Mi4~e4y4QH{r{%kyi z85qS$2-qeB_0*(k6~?XK|HV(9D^8txZMD_hSunn%uuF4&F7UQ^S&GkJO9Y`cO%4NM zUit-h@5`S2vGu7c!^T;w+v|`h41u0aw}xFB$J_;^n@ih9xz0H zB;Lg%?p~!f*;A~YPw8B-@pvtL1M~btFApy6$4wRj3ir??rj*bDR>Zvjl$rXytdZX( z``ODTJx@WRGGH^|iZ)NCp83sswjSj@yl@A!*2?~gxj}-D4i_i4!<9}Y$Qeo%vi1C01`2T`iQX9=3!)a1B@YBIM-$6le@}QXeK>4|o>$AzhV%<7J zD>FCEqCOvjfm(07d*Z3IFJvK2kz0YC>x)VSOu&rrdQNG15O0S;g`%;PPf$=$bBY)Th6j*^Bj6CXkL$w$_@GA< z$|y#$O2cm-0MNQug6GDCb1Hp`f+}4^nk@%M9G+evioGqk3JvfgVybdD4zTh%{0xm8 z;~w6Y*(0qrIc`ea$m_WL=~d(8^?IPbOuJ~Ei6fYZ+}q8hn$%A*C`X%Du6VT22%ld8 zfg!=l#>nZB^&Y)DGvmINeW)Pm@ss_>zGNmzW9xN7%)O5efJVtNcOGASm038=so;j3 zV3bMn7uE)CtE~sp68|YqQ%$KVF8t@Eb3%(own7KpX5=EhC?s1)hep}JfRoS8go_+6vWlJ7 zTHjgo;V6B<|Df_wH&1b+qCHIqACnevNE4r@liDQ5q_@Exup;o&Nz>obcEXzcctl|U zd(tDfhkhq=BVbBsx)BwAw%tEjJAO8xHzA!G;;2h`l{wp`T%2I1bAuxPA~>Wg~kIBT0f?>R(+)-*w{`CK%b%n?6Ocs zlqv}c^{H3_O5jbu;8t$~4H}HaS11IS-)qkCea)2l8-3o=>EZ=Uq71ST8J9aQGiGO; zZ4Ue`La`=HCLpN*55OrU`xvg$d27lv$>Y#=YEXa5~< zzO%O;Mp6)3a~nVvP9=Y%B!yX7fy$ei5mdqPf23efyA+|t@IcPY(SiE7`kDP^|F=bV z#Wv~%(A)=uaR*HhY6VI?svM@J0p0A6jd(I34YqGcJY|u08fwVxHdu+I_fc z<0G4b4sy$lU>-f;aiBR7L~YKSCV!EzQ=k;j;}FdiI7nZ_fA#4ZrH!NG+LMj@#lGdD z5>j^-0)M<)<$BIQYJ_XjIz_FBpwb?0zJJ^5K3RAD@-<3mTnYI6XQiJJN=1<2-?%UJ zpo%^P1Y}`O)m$t@6dESBvfon5h7NCh6cFI>3x(+vN+0$z^U?(woMbR$|0iCNuLTMRMmN7Oa=*n*$i513J%6>%LefL6d#crMVjq2 zqD~s5aD~XaPqj#*_FL;?8-48ocq1XG?moy=@QE4E<^=r!nczaQUE1FI7~psV zQ!>NbK^&*U`n^HN67{ZFx^_dm64)GLO+m|kE0XT*zZ5Cpnhdw!l5E~Lb~P43=jjzI zaeU6e19ub{LKRB${wuFANMYD62^&=P@>2kw7iBEo@R9FpPDWef)^0{ju!t0UU*yAr zUqU)6!_(g0J1k5tbBLadNLg3kK&(bD$*u<2qQPWFC5&Y=UHLIv93q$5x1w*reEl|a zkZ4z04{cV&bh1jRx4oQ(XzFt{b zX={0j=-5$tU@mVm!f|NaNaK6{zC`4cIp@HM3@c8X#3K0;kRWxb=KEVo&6FKWscun^ zu%&3IxX$tl#09~I`=}}gF{AZ|v@c?W1Y8O0)G4v%R&_~37a}@bLZ^UlW;0e*4=tyg-|7d#+t zg$Bc=hayeCE_3cZNt5Siv|jo4!u2rA_`^@~j_0@7#a|W;rJ*dn2Frr@pCBqfNwR(w z^LVO70jb9JX6F8Ek-~P?eVA_#T{=5?!?qKdE=W@GWpe)k-j_e^xOGz}ckf4^_NQ(Q zXqpa8)7RG*9B`%bIV$d5 zV^~d&@{j5w>@&B!L6wTSY1EVV_nQ#_!%;K>;vzuVQN?0S2JazPA{A3ZjCyVc|ABX% z$A^-^y#zi4cGThWuuJnI35H$3zXPboeJz65;T%gM=s`mq>gEST7G)Pq7v(4{kVBHk6NV_ zN*>sL5-c$V#sO>3QZ-a@ zJ_EV!N1UNeV7UW|V7p{Wr6Qcu=5lt7IsnGEWy6FG#0IrIVa{e@2*n2=?p_Mc)pOCf zTKWs!>VKKk{;zbd{8fKZ6=RSEMOLZ(;YMHlhD(s>Ltp76VE?u9-P}M#FisRPR7SAF38L#7QP-)ipNq zkky89j?>$7nx}6;8ZRt*ez@XQ3J)3hKLu2z48Yqy7Z+|<{e#B3MJ&j6`+?LKkH=rT zllqz|8xuJ2PjymlxCDKP_y4EL`v)M~+2_7Xk4bao8`0N@U2a#=qa?JJ(1)_`SJI;1 zEGie?`^!Rm0O+|)`->yP(9FlDDzEm(^S43@HZ3MI>|GY>Rf4#J=s3p_unK9Qf2qRE zZmzBxNp=PXSJGJaJf!602Dbq}8(1}v4$z>VmE<+A(?P!1REmJVKy2WaHjY70L=l+24L3S|HI!B^U>mc|KP^eAJ>3k z1~ghZU_)Qs(pmSF7B8a}IHFf?rnEVacsC`KsKG_6EQAy-(zrD0kmeS7ROcD`Hsexc zl`StsWCMb_wq1p`%i#kc6+ZTNt5`sRfD*c8M1@^p1;~8a@0}~42QPs1!T4~v(Y_e* znUOwg-o|yliR}=4B2x1U`z*)`jB@HV22fbq;g4ZK7Nkx0S=&zTN(=8_Q^c$ zpl`1V*s*+blF^7o(&Aj37$k|#RdcS4;^F&WMQnc`BWPQdeE8bsFfyj<{U24FfcDAb z1kg54Yr07knbQLofAg1xb%f0KzQO0b=FqR}$L%0^lSq-$KQgLowR}C|$ir18@Fwrj z3#pez%H;fiB~chp|0J9a_i$5}U;gdNhqi_hB)~o5df`0noVGGzG>fS=2p{v-b@#S> zAHcu$73gSmK1hkcwj`Dh`5dwkTDQD-M8i35CV$yCUezPi$~DaR>TaL#AmVZ+ao!{H z^8fID1rIWj7~R47mFBY&i$RA{*V3%mNH$j)3dZbthl9Y)7F*nNLK8+o0k_}NUnj^; z$;`bFto6i&;b!hyCL0*Zta@uh;_sZ`m)zP6s6S@<<)`f4{@%tsYzKI3|FN(5*FNJ2 zmQO?65sZH#l=vTu_l(4UF5ch+=zpypbKIhSX4TeaVDzXGjr|D_P3AyKr~-HIs-aa) ztg>vd7jjXS_Q>8FlBE1HL-^)v1xoy)fs~ZqlM|rIV8ug2qpWK%(euD0>EsxonoqZV z{kQc24!Yu9QgZon(q-9Zb=Me!I-QDbZ59fn*MS4o6quW{FJ4s62tQ$}Y_0;<&A@lH zZ3uA!pua)C&1hnxS%H-&)oCKOC0*K|qJH+KN;gy$l$SfD;sK6j$zPRUS+lj3uJSoP zTl1Im6z8EyDz4U&m;A2)O=SL`7V1s?Zd&R`QlbEK(#%vEO%GK^Go}YBKB!1~_bjK~ z%8>9`${ixF<@3U?hrU z{L_$n|G+0vZs2SOGsK%Ha^nm=#j_9q$&A%Dhn0t=}ZIk#{b_%aFlS-#x2Fo!cYVG*QMC^iEJ*fJWI_Rx|`0}%q}a% zy2Rlt{`>NUEsXEI#&F?d&fTxvBsbaARRk;9fSfgCZ*T#Akb=vR4$+J&|!Xjb$fZFKbzW1YI4~J zk1>)280JBr-*EL6)7sZGgkVUPNZS8caEzcZ#i&+y)7sjNM&&_b#nodE24G@jodW{{ zceWSncU#_EMQ9t=Maj|yEyAetCQ~P^ab-S{X%8`hQHbjfWN*XSz<6MGrN5Z>eDy>3 zpIl-*`5}7OfLEKZ{}*pbZIYebPZ}Y9U$5snYx-+I6#ks&{e~WJIWhmFw0{WaBt8%o z-NsEd?5VOmbOk^G-TFb)00x}`?5IzzxI+4qna+#}Z4+wvm|XswqAzQO7#X3MsHpE< zzdS%5t#XBaJV9+zKb<_=Z*mHbDu259Hr=gc(5o$$h7i#FW4~d;=wkIza^PKgYO4ks zUQZD?e=XJps^P%a3Ptcid@AdU3FG*Ge#semsmOUcl0EefmbbVXh Up;H|A2O^M~vX)W>HOgc5MCn^`#}nb#--Hw{BgqV8PqBZ`<43jg5`ZoH@gQ8z}x{VPs$sXV3vD z0olpGTKYh>FU2z|V^!3%RNn%b;J4Cu%0qocqV_dEaM-@sBx8A}-_8(;YMqPSJ91?D z1(#$CDfqEGNH6=sq@mtm;;^RHRcZ3}Ilg5#-j{bZ7)=ZM*U*?P9NQ`6>6n`&#S4;?zV zef#$H>(`f-6xY?&ZQZ){%9Se%7A$!C_HBE6yRotHnKNe?@B+o3EQ|~cVhlPURUkVV zSaTMr_N91+WvmKY7V23b9QlaGw#Hbq8|#oQZ_m? zM9S_JdtfjlyVmyH3*(!oGj`vdocrB!(^hoa;3DSxUQ~l>(;Fc7A$!C_HBE6yRotHnKNe?@B+o3EQ|~cVhlPURUkVV zSc?~^_N91+WvmKY7V23bGrzD}^exZ1PEPr)<1 zM?;XK@A?~V28BtC32$DoW*)v3u_Wr$ira4|zrSPp^7sFYY9&s=*0wgTCNXaQ-oAcz ZR$Y$vscgC|e6wcH(VaJcfr=u7H2{*=VyyrG literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/generate.gif b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/generate.gif new file mode 100755 index 0000000000000000000000000000000000000000..d4f119830e2c6b043aedde1d8a4fe979ad9d7e5c GIT binary patch literal 1062 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 literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/skyblue_skin.png b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/skyblue_skin.png new file mode 100755 index 0000000000000000000000000000000000000000..3145d2431f5d07ac6f83cd7d1d580701e17addb4 GIT binary patch literal 14081 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

    r_;V6bZ4uW zCmeGtwlk^uW<#A5OsO6#a~M8@P&ZUjdEzC z{rfW=>#FMH8ah@AN;sYj4mNJ_D4H#e>GX;gtLa|+XrxO0r@Y*<&ONx+>F3I2!hicm zV7rn7&bcp-x~??R+3oQR-8C!eMNWo_S8_rBpP(s6l1KNStONM%B6W;?OV-pmSoDPu zWbWgEs3{|tWuy;|)W(aA3|{`GRkq(zarB>k?*B<7pdoCi z&psc{(r%ta6!j`p>e~sUY$AMQ(d|68M0Fy-fA0R zb4&luiNkq9t^Uw~dG_}cYv$gH$1 zy<;kyWD@p?vTQ2R#Rz3ZJ+4efw<(ZVYb7WHgNA3+|A)4`&OWA$_xr*#ukOA}1~zXZ z+q&9G1h3Z&KCnhq(`DU;)+_SQp!ZBxCMs5onycuPVcvmvod6qyM8hr1+Xs&)J-MWC)xxq7+ zxHd-;KkGa(K;8OM^+nF)rmafxst6PuB(FfK_o%-Y^Jt+i7{j==%O+ma8MUn6bftg~vXI}Ml$AGWcuvso z_EiOm5O^90wM+i;BFA4|PxuW>KX9l1vteXirO+J+VO(JGKcBH2?4AzUzN;yJ^cyd1 zk-t~`H#1nfAZ*;gGGPnhc(j%k2SHC%>spzQ_1Ir{r&7ulBH(|5#WP68|Luuw`fYlB z1={z)mvmcmeY1>3tS)slCqd{WVTt}$E9R@FMy*pX{) zQj>(ao45PfN$8+o!Tyf~a>-$=gJ^dG|1=k~$o@Hl;jn`_7iqzZH5Py=aUKgi4k(Iqv_)dbsMc+lS4*-IwhwMP1xwbPFJg* zBYr+>7K54|8WcMTxvL4f*>Zoejy6qGF10iG=R=dMb93|Zv9l}HD$p)^APZB_M6KvsnEX9`Tow-Ie)qMV1O;GDL(vfPhdm@`qdw%RiA2Y_ zJ-jq+1h54|7=i3b9{hFn7vu34m5a~j8`zrdvF;JVu0zY`-8*)uoYQs-{^2EZhe~0s zd8F+8jSAj1qm-78ZriI30w^mwi7y?J=kQs_kMJ4*!`~>?$V<2IoOfOY-eINwmVGFJ z8f#UN%LlTC&}NwTihN0EPb2CMdGis@}ASh1r`@rI0(q>f&_tQe9dg$;a#B( PIe^k_b%j#7M*;r_zlHQW literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/web_skin.png b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/small/web_skin.png new file mode 100755 index 0000000000000000000000000000000000000000..a521b41771ae05ddfcf1b5c77ef8f0f08cc26da8 GIT binary patch literal 31125 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∨s?gN!!sBV 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 ZgS}g3-{f%we3kM&sTcCki$x85{|obxMLYli literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/imgs/uncheck-all.gif b/phpgwapi/js/dhtmlxtree/libCompiler/imgs/uncheck-all.gif new file mode 100755 index 0000000000000000000000000000000000000000..446d9015a8c2a81120a6745dc065e6cb7568f653 GIT binary patch literal 252 zcmZ?wbhEHb6k-r!I3mHYef#z+SFT*Vc=7Pz!_7@iwKdh7H*Gp}=-}ElYgVsbJ!9Im zmgeS@Cr?I2MIJkLZ2kK6r6t96b#=>@F5S9y>w*Of-oAa?-rj!Z%ozq8K=CIFBLjm3 zgAPa@WG4e_rGi>tif3HLsyMZ>&;pt0x6*gYFNcUl?Q2@FKyl&+nJvMt<~m^#VoUtL zC<*oQsT55rIoNfq(IV?%UtB|%-~qM?XRn+}QJR1L{@v5b=buNjrB;eHx3uOJD6@-n l_w;agD6t7no-&n_MVF&@Hmfd|z=DN~beAk$rlQDT4FD39W~=}J literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/index.html b/phpgwapi/js/dhtmlxtree/libCompiler/index.html new file mode 100755 index 0000000000..6c93ce22e1 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/index.html @@ -0,0 +1,304 @@ + + + dhtlmx composer + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/progress.html b/phpgwapi/js/dhtmlxtree/libCompiler/progress.html new file mode 100755 index 0000000000..30b3050c87 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/progress.html @@ -0,0 +1 @@ +In progress... \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/readme.txt b/phpgwapi/js/dhtmlxtree/libCompiler/readme.txt new file mode 100755 index 0000000000..7e3e841c36 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/readme.txt @@ -0,0 +1,5 @@ +(c) DHTMLX Ltd. + +This tool can combine numerous script files of DHTMLX library into a single JS file (+ single CSS file) depending on chosen functionality. +To use this tool, you need to unzip dhtmlxSuite package content into directory under web server with support for PHP and load [dhtmlxSuitePackage]/libCompiler/index.html. Currently there is no difference between libCompiler delivered with Standard and Professional Editions of dhtmlxSuite, but resulting files functionality depends on Edition of course. +More details about usage of libCompiler can be found here: http://www.dhtmlx.com/docs/products/docsExplorer/index.shtml?node=libc_ \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/build/yuicompressor-2.3.5.jar b/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/build/yuicompressor-2.3.5.jar new file mode 100755 index 0000000000000000000000000000000000000000..3f92c3413c73f3ace23bc38efa962d8b717d5a73 GIT binary patch literal 847528 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

    qQ_6vqnkw4zjptVI`6f7g$P3Jpw05fVY)+1G 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

    *T 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ΝyRCV~=_M9+L+l+Gv zi5E|x3r>oSql*}q`D2*S2-z6j$SdG*X*5GZNXaf&8px=(}a8X5$3e?Y&3 zFw`>H>kv2}=Y|NlN$#U+%>7T^{XA6~+t@b&`3#d%yX_T>qW+nE-R3UA_X*W`uZ9$tOoG#I7jU{djINPFQu$|;_{)Z3yR)>{K%V z@~oA)+3QPPGKU`NpGsx0MyM6GcFej(n}h00^b}iqnQ4ic$(3Pk$YV=z&;=#PBTZ+ijmk3?bbp z)P~7X$OEvFGjO)-I*GCkA_ctEGpW$IR!zE_$fL=v;+!>|cxe8IsOxrllVnm$p%pp2UI>C_GQ*Jp-{4ZKA<=v7zfgqd3rIdrW~P1BNKo^rF0`8oDF zFzBfhVBMWRzhl&;{7+FPB!(to^oY2}M%Vh%I$2z4rQMouZ;x4$rpM9hgJ;m>dAPBo z9tP$5`3137siBF$*HfKY!+@XUHeEs}!H=v^!Y}hfchxp_hdayG(q5n|9xXL3lw_gY zv4dOh;$U0C;3cvDyOPk|Xzf*rw4Jg}zjCND}4JuO?e5CS&DxOG`)6sZP4vKx1+Oast zMQ|oZ{2$@;WpBmWjCfW;g1WUtJrG?~)`95d>e5+=4}^Gx5K@zYm<{M|f~VrJW0ksG zbuzEZcFSUx3JdRB_xz`)^i)2od5kDxyHg^J48l+`d8_ kq*KnR;zk$Id)~RiSPi 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%0DJT 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

    f!eDWTq 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 F{vX7J&0zol literal 0 HcmV?d00001 diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/CHANGELOG b/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/CHANGELOG new file mode 100755 index 0000000000..85ea1d0cdc --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/CHANGELOG @@ -0,0 +1,193 @@ +YUI Compressor 2.3.5, 2008-02-08 +-------------------------------- + ++ Added a warning when more than one 'var' statement is used in a single scope. + Automatic coalescence is extremely complicated, and would be unsafe if not + done properly. + +YUI Compressor 2.3.4, 2008-02-07 +-------------------------------- + ++ Expanded the list of reserved words used by isValidIdentifier() + +YUI Compressor 2.3.3, 2008-02-04 +-------------------------------- + ++ C-style comments starting with /*! are preserved. This is especially + useful with comments containing copyright/license information. + +YUI Compressor 2.3.2, 2008-02-01 +-------------------------------- + ++ Compressing an empty JS file throws an error [SourceForge bug #1884207] ++ When a string is the first token in a function body, it was removed from + the compressed file [SourceForge bug #1884314] + +YUI Compressor 2.3.1, 2008-01-30 +-------------------------------- + ++ Added test against list of reserved words in method isValidIdentifier. + +YUI Compressor 2.3, 2008-01-28 +------------------------------ + ++ Always output a ';' at the end of a minified JavaScript file. This allows + the concatenating of several minified files without the fear of introducing + a syntax error. ++ Removed all System.exit() statements. Throw exceptions instead. This is + especially useful when running the compressor from within a J2EE container. + [SourceForge bug #1834750] ++ Transform obj["foo"] into obj.foo whenever possible, saving 3 bytes. ++ Transform 'foo': ... into foo: ... whenever possible, saving 2 bytes. ++ Added support for multi-line string literals [SourceForge bug #1871453] ++ Added support for unescaped slashes inside character classes in regexp. ++ Minor performance improvements. ++ Preserve the escaping for an octal representation of a character in string + literals [SourceForge bug #1844894] + + var a = '\001'; + ++ CSS: Preserve comments that hide CSS rules from IE Mac: + + /* Hides from IE-mac \*/ + ... + /* End hide from IE-mac */ + ++ CSS: Added support for box model hack [SourceForge bug #1862107] + + div.content { + width:400px; + voice-family: "\"}\""; + voice-family:inherit; + width:300px; + } + +YUI Compressor 2.2.5, 2007-10-09 +-------------------------------- + ++ Remove line terminator after escape in string literals. + +YUI Compressor 2.2.4, 2007-10-01 +-------------------------------- + ++ Fixed the way quote characters are counted in string literals + [SourceForge bug #1804576] ++ Do not use a regular expression using non-greedy matching to remove CSS + comments (if the comment is more than 800 characters long or so, a stack + overflow exception gets thrown) Instead, use good old parsing... ++ Fix unnecessary quote escaping in string literals. + +YUI Compressor 2.2.3, 2007-09-28 +-------------------------------- + ++ Transform <'+'/script>' completely useless. ++ When converting decimal rgb color values to hexadecimal color values, + prepend a '0' if the value is less than 16. Otherwise, rgb(0,124,114) + for instance becomes #07c72, which is incorrect. ++ In CSS files, do not change color names into their corresponding color + codes (and vice-versa) due to the high potential of introducing bugs + (rolled back from 2.2.1) + +YUI Compressor 2.2.1, 2007-09-25 +-------------------------------- + ++ Optimize quote escaping in JavaScript string literals by using the best quote + character (' or " depending on the occurrence of this character in the string) ++ Fixed minor bug in the CSS compressor. Colors should not be shortened in + filter: chroma(color="#FFFFFF"); + Otherwise, it makes the filter break in Internet Explorer. ++ In CSS files, change color names into their corresponding color codes + (and vice-versa) if that change yields any savings. + +YUI Compressor 2.2, 2007-09-18 +------------------------------ + ++ Don't obfuscate function argument named $super if it is the first function + argument listed. This is to support Prototype 1.6's heretic implementation. ++ Added support for stdin/stdout (see README for more info) ++ Shorten colors from rgb(51,102,153) to #336699 in CSS files. ++ Shorten values from 0.8em to .8em in CSS files. ++ Added support for Internet Explorer's conditional comments in JavaScript + files. Note that the presence of a conditional comment inside a function + (i.e. not in the global scope) will reduce the level of compression for the + same reason the use of 'eval' or 'with' reduces the level of compression + (conditional comments, which do not get parsed, may refer to local variables, + which get obfuscated) In any case, the use of Internet Explorer's conditional + comment is to be avoided. + +YUI Compressor 2.1.2, 2007-08-31 +-------------------------------- + ++ Added --preserve-semi option ++ Modified --line-break option + +YUI Compressor 2.1.1, 2007-08-30 +-------------------------------- + ++ Fixed missing space in CSS background:url('foo.png')no-repeat + causing a background not to appear on Internet Explorer. + +YUI Compressor 2.1, 2007-08-29 +------------------------------ + ++ Pass the --line-break option to the CSS compressor. ++ Allow the output file to overwrite the input file (with version 2.0, + in this case, the output file was always empty) ++ Remove spaces before and after '(' and ')' as in background:url('xxx'); ++ Merge (if possible) string literals that are appended in JavaScript files. + This not only makes the code smaller, it makes the code faster, + but allows you to maintain some readability in your source code. ++ Handle constructs such as a + ++ b or a + + "1" (in which case the + space between the operators must be kept!) and other similar cases... ++ Pass ErrorReporter instance to the constructor of class JavaScriptCompressor + (as suggested by David Bernard for his integration of the YUI Compressor + as a maven plugin) + +YUI Compressor 2.0, 2007-08-27 +------------------------------ + ++ Switched from Rhino 1.6R6 to Rhino 1.6R7 ++ Integrated Isaac Schlueter's CSS compressor. ++ Refactored code to make it easier to use the compressor from a servlet + environment or another Java app (no need to pass in file names anymore) ++ Output a white-space character after 'throw' only when necessary. ++ Output a white-space character after 'break' and 'continue' when followed + by a label. + +YUI Compressor 1.1, 2007-08-20 +------------------------------ + ++ Java source now in package com.yahoo.platform.yui.compressor ++ Added --line-break option that adds a line feed character after each + semi-colon character (may help debugging with the MS Script debugger) ++ Added support for missing JavaScript features (get, set, const) ++ Do not show the entire stack trace when the input file cannot be found. ++ Removed the randomization of obfuscated symbols. When compressed code is + checked in CVS, unchanged files would otherwise end up being versioned. ++ Added web-based front-end to the YUI Compressor as part of the dist package. ++ Added a public entry point that makes the YUI Compressor easy to integrate + with an already existing Java application. ++ Simplified code by using the same parsing routines used to build the symbol + tree while looking for undeclared symbols. ++ Count how many times each identifier is used, and display a warning when an + identifier seems to be unused (code cannot safely be removed automatically) ++ Remove ';' when followed by a '}'. This yields an additional ~1.5% savings + on yahoo-dom-event.js compared to the JSMin version. ++ Output a white-space character after 'return' and 'case' only when necessary. diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/README b/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/README new file mode 100755 index 0000000000..8da3c6cc9f --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/yui/yuicompressor-2.3.5/doc/README @@ -0,0 +1,135 @@ +============================================================================== +YUI Compressor +============================================================================== + +NAME + + YUI Compressor - The Yahoo! JavaScript and CSS Compressor + +SYNOPSIS + + Usage: java -jar yuicompressor-x.y.z.jar [options] [input file] + + Global Options + -h, --help Displays this information + --type Specifies the type of the input file + --charset Read the input file using + --line-break Insert a line break after the specified column number + -v, --verbose Display informational messages and warnings + -o Place the output into . Defaults to stdout. + + JavaScript Options + --nomunge Minify only, do not obfuscate + --preserve-semi Preserve all semicolons + --disable-optimizations Disable all micro optimizations + +DESCRIPTION + + The YUI Compressor is a JavaScript compressor which, in addition to removing + comments and white-spaces, obfuscates local variables using the smallest + possible variable name. This obfuscation is safe, even when using constructs + such as 'eval' or 'with' (although the compression is not optimal is those + cases) Compared to jsmin, the average savings is around 20%. + + The YUI Compressor is also able to safely compress CSS files. The decision + on which compressor is being used is made on the file extension (js or css) + +GLOBAL OPTIONS + + -h, --help + Prints help on how to use the YUI Compressor + + --line-break + Some source control tools don't like files containing lines longer than, + say 8000 characters. The linebreak option is used in that case to split + long lines after a specific column. It can also be used to make the code + more readable, easier to debug (especially with the MS Script Debugger) + Specify 0 to get a line break after each semi-colon in JavaScript, and + after each rule in CSS. + + --type js|css + The type of compressor (JavaScript or CSS) is chosen based on the + extension of the input file name (.js or .css) This option is required + if no input file has been specified. Otherwise, this option is only + required if the input file extension is neither 'js' nor 'css'. + + --charset character-set + If a supported character set is specified, the YUI Compressor will use it + to read the input file. Otherwise, it will assume that the platform's + default character set is being used. The output file is encoded using + the same character set. + + -o outfile + Place output in file outfile. If not specified, the YUI Compressor will + default to the standard output, which you can redirect to a file. + + -v, --verbose + Display informational messages and warnings. + +JAVASCRIPT ONLY OPTIONS + + --nomunge + Minify only. Do not obfuscate local symbols. + + --preserve-semi + Preserve unnecessary semicolons (such as right before a '}') This option + is useful when compressed code has to be run through JSLint (which is the + case of YUI for example) + + --disable-optimizations + Disable all the built-in micro optimizations. + +NOTES + + + If no input file is specified, it defaults to stdin. + + + The YUI Compressor requires Java version >= 1.4. + + + It is possible to prevent a local variable, nested function or function + argument from being obfuscated by using "hints". A hint is a string that + is located at the very beginning of a function body like so: + + function fn (arg1, arg2, arg3) { + "arg2:nomunge, localVar:nomunge, nestedFn:nomunge"; + + ... + var localVar; + ... + + function nestedFn () { + .... + } + + ... + } + + The hint itself disappears from the compressed file. + + + C-style comments starting with /*! are preserved. This is useful with + comments containing copyright/license information. For example: + + /*! + * TERMS OF USE - EASING EQUATIONS + * Open source under the BSD License. + * Copyright 2001 Robert Penner All rights reserved. + */ + + becomes: + + /* + * TERMS OF USE - EASING EQUATIONS + * Open source under the BSD License. + * Copyright 2001 Robert Penner All rights reserved. + */ + +AUTHOR + + The YUI Compressor was written and is maintained by: + Julien Lecomte + The CSS portion is a port of Isaac Schlueter's cssmin utility. + +COPYRIGHT + + Copyright (c) 2007, Yahoo! Inc. All rights reserved. + Code licensed under the BSD License: + http://developer.yahoo.net/yui/license.txt diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/zip.php b/phpgwapi/js/dhtmlxtree/libCompiler/zip.php new file mode 100755 index 0000000000..45f24ac880 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/zip.php @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/phpgwapi/js/dhtmlxtree/libCompiler/ziplib.php b/phpgwapi/js/dhtmlxtree/libCompiler/ziplib.php new file mode 100755 index 0000000000..fff96db4d0 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/libCompiler/ziplib.php @@ -0,0 +1,249 @@ += 1 && $level <= 9) $type = "g"; + elseif($level > 9) die("Compression level set too high"); + else $type = "n"; + } + + if($type == "g") { + $this->compr_lvl_last = 8; + RETURN gzdeflate($data,$level); + } elseif($type == "b") { + $this->compr_lvl_last = 12; + RETURN bzcompress($data,$level); + } else { + $this->compr_lvl_last = 0; + RETURN $data; + } +} + +public function zl_add_file($data,$filename,$comp = "") { + global $settings; + // if we already created a file, we'll make sure it'll be there in the coming zipfile ;) + + // first, checking some data + if(strlen($filename) > pow(2,16)-1) die("Filename $filename too long"); // ooh, dirty... dieing, will change later + if(strlen($data) > pow(2,32)-1) die("File $filename larger then 2GB, cannot continue"); // another one, naughty me ;) + + // $comp has a special format. the first character tells me about the compression, the second one represents the level + if(strlen($comp) == 1) { + // they still use the old method, assuming gzip + + $comp_type = "n"; + $comp_lvl = 0; + if($comp >= 1 && $comp <= 9) { + $comp_type = "g"; + $comp_lvl = $comp; + } + } else { + $comp_lvl = 5; + $comp_type = "n"; + // hmmm, the new method. Is it valid? + if ($comp[0] == "b" OR $comp[0] == "g" OR $comp[0] == "n") $comp_type = $comp[0]; + if (preg_match("/[0-9]/i",$comp[1])) $comp_lvl = $comp[1]; + } + + // ok, let's get this bitch tidy: + // first adding a file + $compressed = $this->zl_compress($data,$comp_lvl,$comp_type); + $uncompressed = strlen($data); + + $newfile = "\x50\x4b\x03\x04"; // Header + $newfile .="\x00\x00"; // Version needed to extract + $newfile .="\x00\x00"; // general purpose bit flag + $newfile .=pack("v",$this->compr_lvl_last); // compression method + $newfile .=pack("v",dostime_get($settings['offset'])); // last mod file time + $newfile .=pack("v",dosdate_get($settings['offset'])); // last mod file date + $newfile .=pack("V",crc32($data)); // CRC32 + $newfile .=pack("V",strlen($compressed)); // compressed filesize + $newfile .=pack("V",$uncompressed); // uncompressed filesize + $newfile .=pack("v",strlen($filename)); // length of filename + $newfile .="\x00\x00"; // some sort of extra field ;) + $newfile .=$filename; + $newfile .=$compressed; + + $this->archive .= $newfile; + + + // some 'statistics' for this file ;) + $this->archive_filecount++; + $idf = $this->archive_filecount - 1; + $this->archive_fileinfo[$this->archive_filecount]['comp_type'] = $this->compr_lvl_last; + $this->archive_fileinfo[$this->archive_filecount]['size'] = strlen($data); + $this->archive_fileinfo[$this->archive_filecount]['size_comp'] = strlen($compressed); + $this->archive_fileinfo[$this->archive_filecount]['pkg_size'] = strlen($newfile); + if(!empty($this->archive_fileinfo[$idf]['local_stats_pointer'])) { + $this->archive_fileinfo[$this->archive_filecount]['local_stats_pointer'] = + $this->archive_fileinfo[$idf]['local_stats_pointer'] + + $this->archive_fileinfo[$idf]['pkg_size'] + 1; // HACKERDIEHACK! only way to get local_stats_pointer to '0' (for now) in zl_pack + } else { + $this->archive_fileinfo[$this->archive_filecount]['local_stats_pointer'] = 1; + } + $this->archive_fileinfo[$this->archive_filecount]['name'] = $filename; + $this->archive_fileinfo[$this->archive_filecount]['crc32'] = crc32($data); + unset($file,$compressed); // to avoid having data in our memory double ;) + RETURN TRUE; +} + +public function zl_pack($comment) { + global $settings; + if(strlen($comment) > pow(2,16)-1) die("Comment too long"); // that's 3 + + // now the central directory structure start + for($x=1;$x <= $this->archive_filecount;$x++) { + $file_stats = $this->archive_fileinfo[$x]; + $cdss .= "\x50\x4b\x01\x02"; // Header + $cdss .="\x00\x00"; // version made by + $cdss .="\x00\x00"; // version needed to extract + $cdss .="\x00\x00"; // general purpose bit flag + $cdss .=pack("v",$file_stats['comp_type']); // compression method + $cdss .=pack("v",dostime_get($settings['offset'])); // last mod file time + $cdss .=pack("v",dosdate_get($settings['offset'])); // last mod file date + $cdss .=pack("V",$file_stats['crc32']); // CRC32 + $cdss .=pack("V",$file_stats['size_comp']); // compressed size + $cdss .=pack("V",$file_stats['size']); // uncompressed size + $cdss .=pack("v",strlen($file_stats['name'])); // file name length + $cdss .="\x00\x00"; // extra field length + $cdss .="\x00\x00"; // file comment length + $cdss .="\x00\x00"; // disk number start + $cdss .="\x00\x00"; // internal file attributes + $cdss .="\x00\x00\x00\x00"; // external file attributes + $cdss .=pack("V",$file_stats['local_stats_pointer']-$x); // relative offset of local header + // aka: The local_stats_pointer hack: part 2, see above + $cdss .=$file_stats['name']; + } + + // and final, the ending central directory structure! "WHOO HOOW!" (©Blur, 1998) + $cdse = "\x50\x4b\x05\x06"; // Header + $cdse .="\x00\x00"; // number of this disk + $cdse .="\x00\x00"; // number of the disk with the start of the central directory + $cdse .=pack("v",$this->archive_filecount); // total number of entries in the central directory on this disk + $cdse .=pack("v",$this->archive_filecount); // total number of entries in the central directory + $cdse .=pack("V",strlen($cdss)); // size of the central directory + $cdse .=pack("V",strlen($this->archive)); // offset of start of central directory with respect to the starting disk number + $cdse .=pack("v",strlen($comment)); // .ZIP file comment length + $cdse .=$comment; + + return $this->archive.$cdss.$cdse; +} + +public function zl_index_file($file) { + $fp = @fopen($file,"rb"); + // ok, as we don't know what the exact position of everything is, we'll have to "guess" using the default sizes + //and set values in the zipfile. Basicly this means I have to go through the entire file, could take some time. + //Let's see if I can create an algorithm powerful enough. + if(!$fp) die("File empty"); + $continue = 1; + $file_count = 0; + + while($continue) { + $content = fread($fp,30); + $id = substr($content,0,4); + if ($id == "\x50\x4b\x03\x04") { + // the method used is quite simple, load a file in the memory, and walk through several parts of it using substr + // As the PKZip format uses mostly fixed sizes for information, this isn't too hard to implement + // First I want everything tested, before I start giving this function a nice place in the class + $temp[$file_count]['file-size'] = ascii2dec(substr($content,18,4)); + $temp[$file_count]['filename-size'] = ascii2dec(substr($content,26,2)); + $temp[$file_count]['compression-type'] = ascii2dec(substr($content,8,2)); + $temp[$file_count]['crc'] = ascii2dec(substr($content,14,4)); + $temp[$file_count]['dostime'] = dostime_return(substr($content,10,2)); + $temp[$file_count]['dosdate'] = dosdate_return(substr($content,12,2)); + + $temp[$file_count]['filename'] = fread($fp,$temp[$file_count]['filename-size']); + + // As the Zip format does not include Content type headers, I'll create a nice little array with + // extension/content type, and a small function to retreive it + $temp[$file_count]['file-type'] = ext2cth($temp[$file_count]['filename']); + $temp[$file_count]['content'] = fread($fp,$temp[$file_count]['file-size']); + + if ($temp[$file_count]['compression-type'] != 0 AND $temp[$file_count]['compression-type'] != 8 AND $temp[$file_count]['compression-type'] != 12) { + $temp[$file_count]['lasterror'] = "Compression type not supported"; + } else { + if($temp[$file_count]['compression-type'] == 8) { + $temp[$file_count]['content'] = gzinflate($temp[$file_count]['content']); + } elseif ($temp[$file_count]['compression-type'] == 12) { + $temp[$file_count]['content'] = bzdecompress($temp[$file_count]['content']); + } + $verify = crc32($temp[$file_count]['content']); + if ($verify != $temp[$file_count]['crc']) { + $temp[$file_count]['lasterror'] = "CRC did not match, possibly this zipfile is damaged"; + } + } + $file_count++; + } else { + $continue = 0; + } + + } + fclose($fp); + unset($fp,$content,$file_count); + return $temp; +} +} + + function zipImgsFiles($source,$zip) + { + + $folder = opendir($source==""?"./":$source); + while($file = readdir($folder)) + { + if ($file == '.' || $file == '..') { + continue; + } + + if(is_dir($source.$file)) + { + zipImgsFiles($source.$file."/",$zip); + } + else + { + $zip->zl_add_file(file_get_contents($source.$file),$source.$file,"g0"); + } + } + closedir($folder); + return 1; + } + + function zipFromLocation($location,$name="dhtmlx"){ + //echo $location; + chdir($location); + $zip = new Ziplib; + $zip->zl_add_file(file_get_contents("dhtmlx.js"),$name.'.js',"g9"); + $zip->zl_add_file(file_get_contents("dhtmlx.css"),$name.'.css',"g9"); + $zip->zl_add_file(file_get_contents("manifest.txt"),'manifest.txt',"g9"); + zipImgsFiles("imgs/",$zip); + $files = @scandir("./types"); + if (count($files) > 2) + zipImgsFiles("types/",$zip); + + $outZip = $zip->zl_pack(""); + + return $outZip; + } +?> diff --git a/phpgwapi/js/dhtmlxtree/readme.EGroupware.txt b/phpgwapi/js/dhtmlxtree/readme.EGroupware.txt new file mode 100644 index 0000000000..d0a384c5db --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/readme.EGroupware.txt @@ -0,0 +1,14 @@ +EGroupware uses a different directory structure from current dhtmlxTree packages: + +phpgwapi/js/dhtmlxtree/ ++- css +| +- dhtmlxtree.css --> dhtmlxTree/codebase/dhtmlxtree.css ++- js + +- dhtmlxcommon.js --> dhtmlxTree/codebase/dhtmlcommon.js + +- dhtmlxtree.js --> dhtmlxTree/codebase/dhtmlxtree.js + +- ext --> dhtmlxTree/codebase/ext + +- ... + +These files/directories are copied from dhtmlxTree/codebase to not modify all code. + +If dhtmlxtree get updated, these files have to be copied again, or code need to be changed. diff --git a/phpgwapi/js/dhtmlxtree/readme.txt b/phpgwapi/js/dhtmlxtree/readme.txt new file mode 100755 index 0000000000..f328ce1f53 --- /dev/null +++ b/phpgwapi/js/dhtmlxtree/readme.txt @@ -0,0 +1,3 @@ +dhtmlxTree v.2.6 Standard edition build 100916 (with applied IE9 beta fix) + +(c) DHTMLX Ltd. \ No newline at end of file

    %M*Uqq9Rh^T3GI#;jY%Z_lIo+0@AdLbOJd7AI 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