lpmp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +3 -0
- data/README +3 -0
- data/Rakefile +45 -0
- data/bin/lpmp +107 -0
- data/config/help.yaml +1 -0
- data/config/hosts.yaml +2 -0
- data/config/log.yaml +1 -0
- data/config/memcache.yaml +5 -0
- data/erb/index.erb +62 -0
- data/lib/bg_pull/caichen.rb +199 -0
- data/lib/bg_pull/lpmp.rb +45 -0
- data/lib/exception.rb +8 -0
- data/lib/lpmp.rb +53 -0
- data/lib/pull/lpmp.rb +355 -0
- data/lib/remote_lmp.rb +129 -0
- data/lib/utils.rb +14 -0
- data/lib/xq_push/caichen.rb +174 -0
- data/lib/xq_push/lpmp.rb +96 -0
- data/log/lpmp1st.log +1 -0
- data/public/css/ext-portal.css +40 -0
- data/public/css/lpmp.css +6 -0
- data/public/designer/caichen.epj +1 -0
- data/public/designer/hostmonitor.epj +1 -0
- data/public/ext-3.0.0/INCLUDE_ORDER.txt +35 -0
- data/public/ext-3.0.0/adapter/ext/ext-base-debug.js +3589 -0
- data/public/ext-3.0.0/adapter/ext/ext-base.js +7 -0
- data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter-debug.js +2292 -0
- data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter.js +7 -0
- data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter-debug.js +2346 -0
- data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter.js +7 -0
- data/public/ext-3.0.0/adapter/yui/ext-yui-adapter-debug.js +2136 -0
- data/public/ext-3.0.0/adapter/yui/ext-yui-adapter.js +7 -0
- data/public/ext-3.0.0/ext-all-debug.js +65610 -0
- data/public/ext-3.0.0/ext-all.js +11 -0
- data/public/ext-3.0.0/license.txt +42 -0
- data/public/ext-3.0.0/pkgs/cmp-foundation-debug.js +11287 -0
- data/public/ext-3.0.0/pkgs/cmp-foundation.js +7 -0
- data/public/ext-3.0.0/pkgs/data-foundation-debug.js +3853 -0
- data/public/ext-3.0.0/pkgs/data-foundation.js +7 -0
- data/public/ext-3.0.0/pkgs/data-grouping-debug.js +139 -0
- data/public/ext-3.0.0/pkgs/data-grouping.js +7 -0
- data/public/ext-3.0.0/pkgs/data-json-debug.js +582 -0
- data/public/ext-3.0.0/pkgs/data-json.js +7 -0
- data/public/ext-3.0.0/pkgs/data-list-views-debug.js +1278 -0
- data/public/ext-3.0.0/pkgs/data-list-views.js +7 -0
- data/public/ext-3.0.0/pkgs/data-xml-debug.js +234 -0
- data/public/ext-3.0.0/pkgs/data-xml.js +7 -0
- data/public/ext-3.0.0/pkgs/direct-debug.js +1121 -0
- data/public/ext-3.0.0/pkgs/direct.js +7 -0
- data/public/ext-3.0.0/pkgs/ext-dd-debug.js +4567 -0
- data/public/ext-3.0.0/pkgs/ext-dd.js +7 -0
- data/public/ext-3.0.0/pkgs/ext-foundation-debug.js +13417 -0
- data/public/ext-3.0.0/pkgs/ext-foundation.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-buttons-debug.js +1060 -0
- data/public/ext-3.0.0/pkgs/pkg-buttons.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-charts-debug.js +1621 -0
- data/public/ext-3.0.0/pkgs/pkg-charts.js +10 -0
- data/public/ext-3.0.0/pkgs/pkg-forms-debug.js +7661 -0
- data/public/ext-3.0.0/pkgs/pkg-forms.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-editor-debug.js +560 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-editor.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-foundation-debug.js +4765 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-foundation.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-grouping-debug.js +517 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-grouping.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-property-debug.js +370 -0
- data/public/ext-3.0.0/pkgs/pkg-grid-property.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-history-debug.js +203 -0
- data/public/ext-3.0.0/pkgs/pkg-history.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-menu-debug.js +1628 -0
- data/public/ext-3.0.0/pkgs/pkg-menu.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-tabs-debug.js +1100 -0
- data/public/ext-3.0.0/pkgs/pkg-tabs.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-tips-debug.js +994 -0
- data/public/ext-3.0.0/pkgs/pkg-tips.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-toolbars-debug.js +1374 -0
- data/public/ext-3.0.0/pkgs/pkg-toolbars.js +7 -0
- data/public/ext-3.0.0/pkgs/pkg-tree-debug.js +4522 -0
- data/public/ext-3.0.0/pkgs/pkg-tree.js +7 -0
- data/public/ext-3.0.0/pkgs/resizable-debug.js +760 -0
- data/public/ext-3.0.0/pkgs/resizable.js +7 -0
- data/public/ext-3.0.0/pkgs/state-debug.js +274 -0
- data/public/ext-3.0.0/pkgs/state.js +7 -0
- data/public/ext-3.0.0/pkgs/window-debug.js +1888 -0
- data/public/ext-3.0.0/pkgs/window.js +7 -0
- data/public/ext-3.0.0/resources/charts.swf +0 -0
- data/public/ext-3.0.0/resources/css/README.txt +3 -0
- data/public/ext-3.0.0/resources/css/ext-all-notheme.css +5345 -0
- data/public/ext-3.0.0/resources/css/ext-all.css +6990 -0
- data/public/ext-3.0.0/resources/css/reset-min.css +7 -0
- data/public/ext-3.0.0/resources/css/structure/borders.css +54 -0
- data/public/ext-3.0.0/resources/css/structure/box.css +80 -0
- data/public/ext-3.0.0/resources/css/structure/button.css +440 -0
- data/public/ext-3.0.0/resources/css/structure/combo.css +45 -0
- data/public/ext-3.0.0/resources/css/structure/core.css +326 -0
- data/public/ext-3.0.0/resources/css/structure/date-picker.css +265 -0
- data/public/ext-3.0.0/resources/css/structure/dd.css +61 -0
- data/public/ext-3.0.0/resources/css/structure/debug.css +26 -0
- data/public/ext-3.0.0/resources/css/structure/dialog.css +62 -0
- data/public/ext-3.0.0/resources/css/structure/editor.css +92 -0
- data/public/ext-3.0.0/resources/css/structure/form.css +562 -0
- data/public/ext-3.0.0/resources/css/structure/grid.css +552 -0
- data/public/ext-3.0.0/resources/css/structure/layout.css +296 -0
- data/public/ext-3.0.0/resources/css/structure/list-view.css +85 -0
- data/public/ext-3.0.0/resources/css/structure/menu.css +205 -0
- data/public/ext-3.0.0/resources/css/structure/panel-reset.css +130 -0
- data/public/ext-3.0.0/resources/css/structure/panel.css +468 -0
- data/public/ext-3.0.0/resources/css/structure/progress.css +42 -0
- data/public/ext-3.0.0/resources/css/structure/qtips.css +153 -0
- data/public/ext-3.0.0/resources/css/structure/reset.css +7 -0
- data/public/ext-3.0.0/resources/css/structure/resizable.css +149 -0
- data/public/ext-3.0.0/resources/css/structure/slider.css +103 -0
- data/public/ext-3.0.0/resources/css/structure/tabs.css +372 -0
- data/public/ext-3.0.0/resources/css/structure/toolbar.css +259 -0
- data/public/ext-3.0.0/resources/css/structure/tree.css +203 -0
- data/public/ext-3.0.0/resources/css/structure/window.css +222 -0
- data/public/ext-3.0.0/resources/css/visual/borders.css +25 -0
- data/public/ext-3.0.0/resources/css/visual/box.css +74 -0
- data/public/ext-3.0.0/resources/css/visual/button.css +94 -0
- data/public/ext-3.0.0/resources/css/visual/combo.css +43 -0
- data/public/ext-3.0.0/resources/css/visual/core.css +76 -0
- data/public/ext-3.0.0/resources/css/visual/date-picker.css +143 -0
- data/public/ext-3.0.0/resources/css/visual/dd.css +29 -0
- data/public/ext-3.0.0/resources/css/visual/debug.css +24 -0
- data/public/ext-3.0.0/resources/css/visual/dialog.css +34 -0
- data/public/ext-3.0.0/resources/css/visual/editor.css +13 -0
- data/public/ext-3.0.0/resources/css/visual/form.css +117 -0
- data/public/ext-3.0.0/resources/css/visual/grid.css +272 -0
- data/public/ext-3.0.0/resources/css/visual/layout.css +53 -0
- data/public/ext-3.0.0/resources/css/visual/list-view.css +37 -0
- data/public/ext-3.0.0/resources/css/visual/menu.css +82 -0
- data/public/ext-3.0.0/resources/css/visual/panel.css +87 -0
- data/public/ext-3.0.0/resources/css/visual/progress.css +32 -0
- data/public/ext-3.0.0/resources/css/visual/qtips.css +44 -0
- data/public/ext-3.0.0/resources/css/visual/resizable.css +43 -0
- data/public/ext-3.0.0/resources/css/visual/slider.css +21 -0
- data/public/ext-3.0.0/resources/css/visual/tabs.css +119 -0
- data/public/ext-3.0.0/resources/css/visual/toolbar.css +103 -0
- data/public/ext-3.0.0/resources/css/visual/tree.css +157 -0
- data/public/ext-3.0.0/resources/css/visual/window.css +86 -0
- data/public/ext-3.0.0/resources/css/xtheme-blue.css +1652 -0
- data/public/ext-3.0.0/resources/expressinstall.swf +0 -0
- data/public/ext-3.0.0/resources/images/default/box/corners-blue.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/corners.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/l-blue.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/l.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/r-blue.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/r.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/tb-blue.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/box/tb.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/arrow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/btn.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/group-cs.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/group-lr.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/group-tb.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow-b-noline.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow-b.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow-bo.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow-noline.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow-o.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/button/s-arrow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/dd/drop-add.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/dd/drop-no.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/dd/drop-yes.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/editor/tb-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/checkbox.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/clear-trigger.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/clear-trigger.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/form/date-trigger.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/date-trigger.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/form/error-tip-corners.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/exclamation.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/radio.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/search-trigger.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/search-trigger.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/form/text-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/trigger-tpl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/trigger.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/form/trigger.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/gradient-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/arrow-left-white.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/arrow-right-white.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/col-move-bottom.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/col-move-top.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/columns.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/dirty.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/done.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/drop-no.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/drop-yes.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/footer-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-blue-hd.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-blue-split.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-hrow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-loading.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-split.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid-vista-hd.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid3-hd-btn.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow-over.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-sel-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/group-by.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/group-collapse.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/group-expand-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/group-expand.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hd-pop.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-asc.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-desc.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.png +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.png +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/invalid_line.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/loading.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/mso-hd.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/nowait.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-first-disabled.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-first.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-last-disabled.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-last.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-next-disabled.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-next.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-prev-disabled.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/page-prev.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/pick-button.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/refresh.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/row-check-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/row-expand-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/row-over.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/row-sel.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/sort-hd.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/sort_asc.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/sort_desc.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/grid/wait.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/collapse.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/expand.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/gradient-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/mini-bottom.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/mini-left.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/mini-right.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/mini-top.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/ns-collapse.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/ns-expand.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/panel-close.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/panel-title-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/panel-title-light-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/stick.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/stuck.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/tab-close-on.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/layout/tab-close.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/checked.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/group-checked.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/item-over.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/menu-parent.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/menu.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/menu/unchecked.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/corners-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/left-right.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/light-hd.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/tool-sprite-tpl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/tool-sprites.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/tools-sprites-trans.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/top-bottom.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/top-bottom.png +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/white-corners-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/white-left-right.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/panel/white-top-bottom.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/progress/progress-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/qtip/bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/qtip/close.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/qtip/tip-anchor-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/qtip/tip-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/s.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shadow-c.png +0 -0
- data/public/ext-3.0.0/resources/images/default/shadow-lr.png +0 -0
- data/public/ext-3.0.0/resources/images/default/shadow.png +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/blue-loading.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/calendar.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/glass-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/hd-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/large-loading.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/left-btn.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/loading-balls.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/right-btn.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/shared/warning.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/e-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/e-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/ne-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/ne-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/nw-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/nw-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/s-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/s-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/se-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/se-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/square.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/sw-handle-dark.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/sizer/sw-handle.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/slider/slider-bg.png +0 -0
- data/public/ext-3.0.0/resources/images/default/slider/slider-thumb.png +0 -0
- data/public/ext-3.0.0/resources/images/default/slider/slider-v-bg.png +0 -0
- data/public/ext-3.0.0/resources/images/default/slider/slider-v-thumb.png +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/scroll-left.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/scroll-right.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/scroller-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-left-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-right-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-left-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-right-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-close.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.png +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-btm-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tabs/tabs-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow-light.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/btn-over-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/gray-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/more.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/tb-bg.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/tb-btn-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-btn-sprite.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-sep.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/arrows.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-add.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-between.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-no.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-over.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-under.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/drop-yes.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus-nl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus-nl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-end.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-line.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-minus-nl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-minus.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-plus-nl.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow-plus.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/elbow.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/folder-open.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/folder.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/leaf.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/loading.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/tree/s.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/window/icon-error.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/window/icon-info.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/window/icon-question.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/window/icon-warning.gif +0 -0
- data/public/ext-3.0.0/resources/images/default/window/left-corners.png +0 -0
- data/public/ext-3.0.0/resources/images/default/window/left-corners.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/window/left-right.png +0 -0
- data/public/ext-3.0.0/resources/images/default/window/left-right.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/window/right-corners.png +0 -0
- data/public/ext-3.0.0/resources/images/default/window/right-corners.psd +0 -0
- data/public/ext-3.0.0/resources/images/default/window/top-bottom.png +0 -0
- data/public/ext-3.0.0/resources/images/default/window/top-bottom.psd +0 -0
- data/public/ext-3.0.0/resources/images/icon/chart.gif +0 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-ajax.js +371 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-anim-extra.js +301 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-anim.js +477 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-begin.js +18 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-dom.js +157 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-end.js +21 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-event.js +453 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-point.js +17 -0
- data/public/ext-3.0.0/src/adapter/core/ext-base-region.js +81 -0
- data/public/ext-3.0.0/src/adapter/ext-base-dom-more.js +9 -0
- data/public/ext-3.0.0/src/adapter/jquery-bridge.js +546 -0
- data/public/ext-3.0.0/src/adapter/prototype-bridge.js +600 -0
- data/public/ext-3.0.0/src/adapter/yui-bridge.js +390 -0
- data/public/ext-3.0.0/src/core/CompositeElement.js +136 -0
- data/public/ext-3.0.0/src/core/CompositeElementLite-more.js +102 -0
- data/public/ext-3.0.0/src/core/DomHelper-more.js +179 -0
- data/public/ext-3.0.0/src/core/Element-more.js +192 -0
- data/public/ext-3.0.0/src/core/Element.alignment.js +370 -0
- data/public/ext-3.0.0/src/core/Element.dd.js +46 -0
- data/public/ext-3.0.0/src/core/Element.fx-more.js +152 -0
- data/public/ext-3.0.0/src/core/Element.insertion-more.js +52 -0
- data/public/ext-3.0.0/src/core/Element.keys.js +48 -0
- data/public/ext-3.0.0/src/core/Element.legacy.js +42 -0
- data/public/ext-3.0.0/src/core/Element.position-more.js +165 -0
- data/public/ext-3.0.0/src/core/Element.scroll-more.js +110 -0
- data/public/ext-3.0.0/src/core/Element.style-more.js +318 -0
- data/public/ext-3.0.0/src/core/Error.js +81 -0
- data/public/ext-3.0.0/src/core/EventManager-more.js +334 -0
- data/public/ext-3.0.0/src/core/Ext-more.js +669 -0
- data/public/ext-3.0.0/src/core/Template-more.js +115 -0
- data/public/ext-3.0.0/src/core/core/CompositeElementLite.js +197 -0
- data/public/ext-3.0.0/src/core/core/DomHelper.js +378 -0
- data/public/ext-3.0.0/src/core/core/DomQuery.js +826 -0
- data/public/ext-3.0.0/src/core/core/Element.fx.js +324 -0
- data/public/ext-3.0.0/src/core/core/Element.insertion.js +147 -0
- data/public/ext-3.0.0/src/core/core/Element.js +945 -0
- data/public/ext-3.0.0/src/core/core/Element.position.js +303 -0
- data/public/ext-3.0.0/src/core/core/Element.scroll.js +58 -0
- data/public/ext-3.0.0/src/core/core/Element.style.js +439 -0
- data/public/ext-3.0.0/src/core/core/Element.traversal.js +176 -0
- data/public/ext-3.0.0/src/core/core/EventManager.js +623 -0
- data/public/ext-3.0.0/src/core/core/Ext.js +922 -0
- data/public/ext-3.0.0/src/core/core/Fx.js +1115 -0
- data/public/ext-3.0.0/src/core/core/Template.js +185 -0
- data/public/ext-3.0.0/src/data/Api.js +210 -0
- data/public/ext-3.0.0/src/data/ArrayReader.js +102 -0
- data/public/ext-3.0.0/src/data/ArrayStore.js +70 -0
- data/public/ext-3.0.0/src/data/DataField.js +249 -0
- data/public/ext-3.0.0/src/data/DataProxy.js +427 -0
- data/public/ext-3.0.0/src/data/DataReader.js +160 -0
- data/public/ext-3.0.0/src/data/DataWriter.js +201 -0
- data/public/ext-3.0.0/src/data/DirectProxy.js +141 -0
- data/public/ext-3.0.0/src/data/DirectStore.js +52 -0
- data/public/ext-3.0.0/src/data/GroupingStore.js +139 -0
- data/public/ext-3.0.0/src/data/HttpProxy.js +276 -0
- data/public/ext-3.0.0/src/data/JsonReader.js +311 -0
- data/public/ext-3.0.0/src/data/JsonStore.js +49 -0
- data/public/ext-3.0.0/src/data/JsonWriter.js +77 -0
- data/public/ext-3.0.0/src/data/MemoryProxy.js +69 -0
- data/public/ext-3.0.0/src/data/Record.js +400 -0
- data/public/ext-3.0.0/src/data/ScriptTagProxy.js +279 -0
- data/public/ext-3.0.0/src/data/SortTypes.js +91 -0
- data/public/ext-3.0.0/src/data/Store.js +1492 -0
- data/public/ext-3.0.0/src/data/StoreMgr.js +72 -0
- data/public/ext-3.0.0/src/data/Tree.js +785 -0
- data/public/ext-3.0.0/src/data/XmlReader.js +128 -0
- data/public/ext-3.0.0/src/data/XmlStore.js +75 -0
- data/public/ext-3.0.0/src/data/XmlWriter.js +45 -0
- data/public/ext-3.0.0/src/data/core/Connection.js +575 -0
- data/public/ext-3.0.0/src/dd/DDCore.js +2992 -0
- data/public/ext-3.0.0/src/dd/DragSource.js +365 -0
- data/public/ext-3.0.0/src/dd/DragTracker.js +217 -0
- data/public/ext-3.0.0/src/dd/DragZone.js +133 -0
- data/public/ext-3.0.0/src/dd/DropTarget.js +115 -0
- data/public/ext-3.0.0/src/dd/DropZone.js +262 -0
- data/public/ext-3.0.0/src/dd/Registry.js +127 -0
- data/public/ext-3.0.0/src/dd/ScrollManager.js +201 -0
- data/public/ext-3.0.0/src/dd/StatusProxy.js +171 -0
- data/public/ext-3.0.0/src/debug.js +906 -0
- data/public/ext-3.0.0/src/direct/Direct.js +235 -0
- data/public/ext-3.0.0/src/direct/Event.js +34 -0
- data/public/ext-3.0.0/src/direct/JsonProvider.js +45 -0
- data/public/ext-3.0.0/src/direct/PollingProvider.js +151 -0
- data/public/ext-3.0.0/src/direct/Provider.js +110 -0
- data/public/ext-3.0.0/src/direct/RemotingProvider.js +373 -0
- data/public/ext-3.0.0/src/direct/Transaction.js +32 -0
- data/public/ext-3.0.0/src/locale/ext-lang-af.js +184 -0
- data/public/ext-3.0.0/src/locale/ext-lang-bg.js +278 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ca.js +315 -0
- data/public/ext-3.0.0/src/locale/ext-lang-cs.js +293 -0
- data/public/ext-3.0.0/src/locale/ext-lang-da.js +296 -0
- data/public/ext-3.0.0/src/locale/ext-lang-de.js +326 -0
- data/public/ext-3.0.0/src/locale/ext-lang-el_GR.js +309 -0
- data/public/ext-3.0.0/src/locale/ext-lang-en.js +335 -0
- data/public/ext-3.0.0/src/locale/ext-lang-en_GB.js +315 -0
- data/public/ext-3.0.0/src/locale/ext-lang-es.js +318 -0
- data/public/ext-3.0.0/src/locale/ext-lang-fa.js +272 -0
- data/public/ext-3.0.0/src/locale/ext-lang-fi.js +302 -0
- data/public/ext-3.0.0/src/locale/ext-lang-fr.js +335 -0
- data/public/ext-3.0.0/src/locale/ext-lang-fr_CA.js +218 -0
- data/public/ext-3.0.0/src/locale/ext-lang-gr.js +175 -0
- data/public/ext-3.0.0/src/locale/ext-lang-he.js +292 -0
- data/public/ext-3.0.0/src/locale/ext-lang-hr.js +295 -0
- data/public/ext-3.0.0/src/locale/ext-lang-hu.js +296 -0
- data/public/ext-3.0.0/src/locale/ext-lang-id.js +302 -0
- data/public/ext-3.0.0/src/locale/ext-lang-it.js +295 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ja.js +318 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ko.js +267 -0
- data/public/ext-3.0.0/src/locale/ext-lang-lt.js +333 -0
- data/public/ext-3.0.0/src/locale/ext-lang-lv.js +176 -0
- data/public/ext-3.0.0/src/locale/ext-lang-mk.js +176 -0
- data/public/ext-3.0.0/src/locale/ext-lang-nl.js +323 -0
- data/public/ext-3.0.0/src/locale/ext-lang-no_NB.js +294 -0
- data/public/ext-3.0.0/src/locale/ext-lang-no_NN.js +294 -0
- data/public/ext-3.0.0/src/locale/ext-lang-pl.js +304 -0
- data/public/ext-3.0.0/src/locale/ext-lang-pt.js +260 -0
- data/public/ext-3.0.0/src/locale/ext-lang-pt_BR.js +302 -0
- data/public/ext-3.0.0/src/locale/ext-lang-pt_PT.js +298 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ro.js +295 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ru.js +319 -0
- data/public/ext-3.0.0/src/locale/ext-lang-sk.js +182 -0
- data/public/ext-3.0.0/src/locale/ext-lang-sl.js +176 -0
- data/public/ext-3.0.0/src/locale/ext-lang-sr.js +179 -0
- data/public/ext-3.0.0/src/locale/ext-lang-sr_RS.js +178 -0
- data/public/ext-3.0.0/src/locale/ext-lang-sv_SE.js +178 -0
- data/public/ext-3.0.0/src/locale/ext-lang-th.js +294 -0
- data/public/ext-3.0.0/src/locale/ext-lang-tr.js +306 -0
- data/public/ext-3.0.0/src/locale/ext-lang-ukr.js +258 -0
- data/public/ext-3.0.0/src/locale/ext-lang-vn.js +181 -0
- data/public/ext-3.0.0/src/locale/ext-lang-zh_CN.js +174 -0
- data/public/ext-3.0.0/src/locale/ext-lang-zh_TW.js +178 -0
- data/public/ext-3.0.0/src/state/CookieProvider.js +91 -0
- data/public/ext-3.0.0/src/state/Provider.js +127 -0
- data/public/ext-3.0.0/src/state/StateManager.js +69 -0
- data/public/ext-3.0.0/src/util/CSS.js +161 -0
- data/public/ext-3.0.0/src/util/ClickRepeater.js +200 -0
- data/public/ext-3.0.0/src/util/Cookies.js +96 -0
- data/public/ext-3.0.0/src/util/Date.js +1317 -0
- data/public/ext-3.0.0/src/util/Format.js +356 -0
- data/public/ext-3.0.0/src/util/History.js +203 -0
- data/public/ext-3.0.0/src/util/KeyMap.js +242 -0
- data/public/ext-3.0.0/src/util/KeyNav.js +161 -0
- data/public/ext-3.0.0/src/util/MixedCollection.js +576 -0
- data/public/ext-3.0.0/src/util/Observable-more.js +178 -0
- data/public/ext-3.0.0/src/util/TextMetrics.js +131 -0
- data/public/ext-3.0.0/src/util/UpdateManager.js +536 -0
- data/public/ext-3.0.0/src/util/XTemplate.js +379 -0
- data/public/ext-3.0.0/src/util/core/DelayedTask.js +68 -0
- data/public/ext-3.0.0/src/util/core/JSON.js +174 -0
- data/public/ext-3.0.0/src/util/core/Observable.js +483 -0
- data/public/ext-3.0.0/src/util/core/TaskMgr.js +174 -0
- data/public/ext-3.0.0/src/widgets/Action.js +252 -0
- data/public/ext-3.0.0/src/widgets/BoxComponent.js +519 -0
- data/public/ext-3.0.0/src/widgets/Button.js +762 -0
- data/public/ext-3.0.0/src/widgets/ButtonGroup.js +103 -0
- data/public/ext-3.0.0/src/widgets/ColorPalette.js +148 -0
- data/public/ext-3.0.0/src/widgets/Component.js +1540 -0
- data/public/ext-3.0.0/src/widgets/ComponentMgr.js +159 -0
- data/public/ext-3.0.0/src/widgets/Container.js +894 -0
- data/public/ext-3.0.0/src/widgets/CycleButton.js +188 -0
- data/public/ext-3.0.0/src/widgets/DataView.js +749 -0
- data/public/ext-3.0.0/src/widgets/DatePicker.js +771 -0
- data/public/ext-3.0.0/src/widgets/Editor.js +385 -0
- data/public/ext-3.0.0/src/widgets/Layer.js +466 -0
- data/public/ext-3.0.0/src/widgets/LoadMask.js +123 -0
- data/public/ext-3.0.0/src/widgets/MessageBox.js +626 -0
- data/public/ext-3.0.0/src/widgets/PagingToolbar.js +502 -0
- data/public/ext-3.0.0/src/widgets/Panel.js +1772 -0
- data/public/ext-3.0.0/src/widgets/PanelDD.js +154 -0
- data/public/ext-3.0.0/src/widgets/ProgressBar.js +289 -0
- data/public/ext-3.0.0/src/widgets/Resizable.js +760 -0
- data/public/ext-3.0.0/src/widgets/Shadow.js +192 -0
- data/public/ext-3.0.0/src/widgets/Slider.js +426 -0
- data/public/ext-3.0.0/src/widgets/SplitBar.js +436 -0
- data/public/ext-3.0.0/src/widgets/SplitButton.js +124 -0
- data/public/ext-3.0.0/src/widgets/TabPanel.js +1100 -0
- data/public/ext-3.0.0/src/widgets/Toolbar.js +781 -0
- data/public/ext-3.0.0/src/widgets/Viewport.js +124 -0
- data/public/ext-3.0.0/src/widgets/Window.js +941 -0
- data/public/ext-3.0.0/src/widgets/WindowManager.js +187 -0
- data/public/ext-3.0.0/src/widgets/chart/Chart.js +721 -0
- data/public/ext-3.0.0/src/widgets/chart/EventProxy.js +20 -0
- data/public/ext-3.0.0/src/widgets/chart/FlashComponent.js +117 -0
- data/public/ext-3.0.0/src/widgets/chart/swfobject.js +783 -0
- data/public/ext-3.0.0/src/widgets/form/Action.js +626 -0
- data/public/ext-3.0.0/src/widgets/form/BasicForm.js +735 -0
- data/public/ext-3.0.0/src/widgets/form/Checkbox.js +177 -0
- data/public/ext-3.0.0/src/widgets/form/CheckboxGroup.js +419 -0
- data/public/ext-3.0.0/src/widgets/form/Combo.js +1232 -0
- data/public/ext-3.0.0/src/widgets/form/DateField.js +389 -0
- data/public/ext-3.0.0/src/widgets/form/DisplayField.js +98 -0
- data/public/ext-3.0.0/src/widgets/form/Field.js +640 -0
- data/public/ext-3.0.0/src/widgets/form/FieldSet.js +305 -0
- data/public/ext-3.0.0/src/widgets/form/Form.js +335 -0
- data/public/ext-3.0.0/src/widgets/form/Hidden.js +39 -0
- data/public/ext-3.0.0/src/widgets/form/HtmlEditor.js +1179 -0
- data/public/ext-3.0.0/src/widgets/form/Label.js +64 -0
- data/public/ext-3.0.0/src/widgets/form/NumberField.js +139 -0
- data/public/ext-3.0.0/src/widgets/form/Radio.js +81 -0
- data/public/ext-3.0.0/src/widgets/form/RadioGroup.js +116 -0
- data/public/ext-3.0.0/src/widgets/form/TextArea.js +117 -0
- data/public/ext-3.0.0/src/widgets/form/TextField.js +491 -0
- data/public/ext-3.0.0/src/widgets/form/TimeField.js +146 -0
- data/public/ext-3.0.0/src/widgets/form/TriggerField.js +328 -0
- data/public/ext-3.0.0/src/widgets/form/VTypes.js +135 -0
- data/public/ext-3.0.0/src/widgets/grid/AbstractSelectionModel.js +57 -0
- data/public/ext-3.0.0/src/widgets/grid/CellSelectionModel.js +262 -0
- data/public/ext-3.0.0/src/widgets/grid/CheckboxSelectionModel.js +103 -0
- data/public/ext-3.0.0/src/widgets/grid/Column.js +406 -0
- data/public/ext-3.0.0/src/widgets/grid/ColumnDD.js +199 -0
- data/public/ext-3.0.0/src/widgets/grid/ColumnModel.js +592 -0
- data/public/ext-3.0.0/src/widgets/grid/ColumnSplitDD.js +62 -0
- data/public/ext-3.0.0/src/widgets/grid/EditorGrid.js +291 -0
- data/public/ext-3.0.0/src/widgets/grid/GridDD.js +95 -0
- data/public/ext-3.0.0/src/widgets/grid/GridEditor.js +21 -0
- data/public/ext-3.0.0/src/widgets/grid/GridPanel.js +952 -0
- data/public/ext-3.0.0/src/widgets/grid/GridView.js +1776 -0
- data/public/ext-3.0.0/src/widgets/grid/GroupingView.js +517 -0
- data/public/ext-3.0.0/src/widgets/grid/PropertyGrid.js +370 -0
- data/public/ext-3.0.0/src/widgets/grid/RowNumberer.js +61 -0
- data/public/ext-3.0.0/src/widgets/grid/RowSelectionModel.js +530 -0
- data/public/ext-3.0.0/src/widgets/layout/AbsoluteLayout.js +82 -0
- data/public/ext-3.0.0/src/widgets/layout/AccordionLayout.js +177 -0
- data/public/ext-3.0.0/src/widgets/layout/AnchorLayout.js +200 -0
- data/public/ext-3.0.0/src/widgets/layout/BorderLayout.js +1108 -0
- data/public/ext-3.0.0/src/widgets/layout/BoxLayout.js +417 -0
- data/public/ext-3.0.0/src/widgets/layout/CardLayout.js +127 -0
- data/public/ext-3.0.0/src/widgets/layout/ColumnLayout.js +130 -0
- data/public/ext-3.0.0/src/widgets/layout/ContainerLayout.js +215 -0
- data/public/ext-3.0.0/src/widgets/layout/FitLayout.js +48 -0
- data/public/ext-3.0.0/src/widgets/layout/FormLayout.js +266 -0
- data/public/ext-3.0.0/src/widgets/layout/TableLayout.js +194 -0
- data/public/ext-3.0.0/src/widgets/list/ColumnResizer.js +123 -0
- data/public/ext-3.0.0/src/widgets/list/ListView.js +357 -0
- data/public/ext-3.0.0/src/widgets/list/Sorter.js +70 -0
- data/public/ext-3.0.0/src/widgets/menu/BaseItem.js +160 -0
- data/public/ext-3.0.0/src/widgets/menu/CheckItem.js +114 -0
- data/public/ext-3.0.0/src/widgets/menu/ColorMenu.js +72 -0
- data/public/ext-3.0.0/src/widgets/menu/DateMenu.js +90 -0
- data/public/ext-3.0.0/src/widgets/menu/Item.js +211 -0
- data/public/ext-3.0.0/src/widgets/menu/Menu.js +733 -0
- data/public/ext-3.0.0/src/widgets/menu/MenuMgr.js +211 -0
- data/public/ext-3.0.0/src/widgets/menu/Separator.js +46 -0
- data/public/ext-3.0.0/src/widgets/menu/TextItem.js +46 -0
- data/public/ext-3.0.0/src/widgets/tips/QuickTip.js +207 -0
- data/public/ext-3.0.0/src/widgets/tips/QuickTips.js +159 -0
- data/public/ext-3.0.0/src/widgets/tips/Tip.js +157 -0
- data/public/ext-3.0.0/src/widgets/tips/ToolTip.js +492 -0
- data/public/ext-3.0.0/src/widgets/tree/AsyncTreeNode.js +114 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeDragZone.js +82 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeDropZone.js +321 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeEditor.js +160 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeEventModel.js +169 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeFilter.js +114 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeLoader.js +342 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeNode.js +546 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeNodeUI.js +633 -0
- data/public/ext-3.0.0/src/widgets/tree/TreePanel.js +918 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeSelectionModel.js +315 -0
- data/public/ext-3.0.0/src/widgets/tree/TreeSorter.js +106 -0
- data/public/js/ext-portal.js +235 -0
- data/public/js/global.js +7 -0
- data/public/js/outerframe.js +47 -0
- data/public/js/portal.js +713 -0
- data/public/js/test_chart.js +152 -0
- data/test/config.rb +62 -0
- data/test/config/hosts.yaml +5 -0
- data/test/config/log.yaml +1 -0
- data/test/config/memcache.yaml +5 -0
- data/test/exception.rb +39 -0
- data/test/method_missing.rb +14 -0
- data/test/module.rb +39 -0
- data/test/remote_lmp.rb +126 -0
- data/test/sinatra.rb +29 -0
- data/test/sinatra_base.rb +16 -0
- metadata +690 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Ext JS Library 3.0.0
|
|
3
|
+
* Copyright(c) 2006-2009 Ext JS, LLC
|
|
4
|
+
* licensing@extjs.com
|
|
5
|
+
* http://www.extjs.com/license
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @class Ext.Template
|
|
9
|
+
*/
|
|
10
|
+
Ext.apply(Ext.Template.prototype, {
|
|
11
|
+
/**
|
|
12
|
+
* Returns an HTML fragment of this template with the specified values applied.
|
|
13
|
+
* @param {Object/Array} values The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})
|
|
14
|
+
* @return {String} The HTML fragment
|
|
15
|
+
* @hide repeat doc
|
|
16
|
+
*/
|
|
17
|
+
applyTemplate : function(values){
|
|
18
|
+
var me = this,
|
|
19
|
+
useF = me.disableFormats !== true,
|
|
20
|
+
fm = Ext.util.Format,
|
|
21
|
+
tpl = me;
|
|
22
|
+
|
|
23
|
+
if(me.compiled){
|
|
24
|
+
return me.compiled(values);
|
|
25
|
+
}
|
|
26
|
+
function fn(m, name, format, args){
|
|
27
|
+
if (format && useF) {
|
|
28
|
+
if (format.substr(0, 5) == "this.") {
|
|
29
|
+
return tpl.call(format.substr(5), values[name], values);
|
|
30
|
+
} else {
|
|
31
|
+
if (args) {
|
|
32
|
+
// quoted values are required for strings in compiled templates,
|
|
33
|
+
// but for non compiled we need to strip them
|
|
34
|
+
// quoted reversed for jsmin
|
|
35
|
+
var re = /^\s*['"](.*)["']\s*$/;
|
|
36
|
+
args = args.split(',');
|
|
37
|
+
for(var i = 0, len = args.length; i < len; i++){
|
|
38
|
+
args[i] = args[i].replace(re, "$1");
|
|
39
|
+
}
|
|
40
|
+
args = [values[name]].concat(args);
|
|
41
|
+
} else {
|
|
42
|
+
args = [values[name]];
|
|
43
|
+
}
|
|
44
|
+
return fm[format].apply(fm, args);
|
|
45
|
+
}
|
|
46
|
+
} else {
|
|
47
|
+
return values[name] !== undefined ? values[name] : "";
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return me.html.replace(me.re, fn);
|
|
51
|
+
},
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* <tt>true</tt> to disable format functions (defaults to <tt>false</tt>)
|
|
55
|
+
* @type Boolean
|
|
56
|
+
* @property
|
|
57
|
+
*/
|
|
58
|
+
disableFormats : false,
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* The regular expression used to match template variables
|
|
62
|
+
* @type RegExp
|
|
63
|
+
* @property
|
|
64
|
+
* @hide repeat doc
|
|
65
|
+
*/
|
|
66
|
+
re : /\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Compiles the template into an internal function, eliminating the RegEx overhead.
|
|
70
|
+
* @return {Ext.Template} this
|
|
71
|
+
* @hide repeat doc
|
|
72
|
+
*/
|
|
73
|
+
compile : function(){
|
|
74
|
+
var me = this,
|
|
75
|
+
fm = Ext.util.Format,
|
|
76
|
+
useF = me.disableFormats !== true,
|
|
77
|
+
sep = Ext.isGecko ? "+" : ",",
|
|
78
|
+
body;
|
|
79
|
+
|
|
80
|
+
function fn(m, name, format, args){
|
|
81
|
+
if(format && useF){
|
|
82
|
+
args = args ? ',' + args : "";
|
|
83
|
+
if(format.substr(0, 5) != "this."){
|
|
84
|
+
format = "fm." + format + '(';
|
|
85
|
+
}else{
|
|
86
|
+
format = 'this.call("'+ format.substr(5) + '", ';
|
|
87
|
+
args = ", values";
|
|
88
|
+
}
|
|
89
|
+
}else{
|
|
90
|
+
args= ''; format = "(values['" + name + "'] == undefined ? '' : ";
|
|
91
|
+
}
|
|
92
|
+
return "'"+ sep + format + "values['" + name + "']" + args + ")"+sep+"'";
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
// branched to use + in gecko and [].join() in others
|
|
96
|
+
if(Ext.isGecko){
|
|
97
|
+
body = "this.compiled = function(values){ return '" +
|
|
98
|
+
me.html.replace(/\\/g, '\\\\').replace(/(\r\n|\n)/g, '\\n').replace(/'/g, "\\'").replace(this.re, fn) +
|
|
99
|
+
"';};";
|
|
100
|
+
}else{
|
|
101
|
+
body = ["this.compiled = function(values){ return ['"];
|
|
102
|
+
body.push(me.html.replace(/\\/g, '\\\\').replace(/(\r\n|\n)/g, '\\n').replace(/'/g, "\\'").replace(this.re, fn));
|
|
103
|
+
body.push("'].join('');};");
|
|
104
|
+
body = body.join('');
|
|
105
|
+
}
|
|
106
|
+
eval(body);
|
|
107
|
+
return me;
|
|
108
|
+
},
|
|
109
|
+
|
|
110
|
+
// private function used to call members
|
|
111
|
+
call : function(fnName, value, allValues){
|
|
112
|
+
return this[fnName](value, allValues);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
Ext.Template.prototype.apply = Ext.Template.prototype.applyTemplate;
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Ext JS Library 3.0.0
|
|
3
|
+
* Copyright(c) 2006-2009 Ext JS, LLC
|
|
4
|
+
* licensing@extjs.com
|
|
5
|
+
* http://www.extjs.com/license
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @class Ext.CompositeElementLite
|
|
9
|
+
* Flyweight composite class. Reuses the same Ext.Element for element operations.
|
|
10
|
+
<pre><code>
|
|
11
|
+
var els = Ext.select("#some-el div.some-class");
|
|
12
|
+
// or select directly from an existing element
|
|
13
|
+
var el = Ext.get('some-el');
|
|
14
|
+
el.select('div.some-class');
|
|
15
|
+
|
|
16
|
+
els.setWidth(100); // all elements become 100 width
|
|
17
|
+
els.hide(true); // all elements fade out and hide
|
|
18
|
+
// or
|
|
19
|
+
els.setWidth(100).hide(true);
|
|
20
|
+
</code></pre><br><br>
|
|
21
|
+
* <b>NOTE: Although they are not listed, this class supports all of the set/update methods of Ext.Element. All Ext.Element
|
|
22
|
+
* actions will be performed on all the elements in this collection.</b>
|
|
23
|
+
*/
|
|
24
|
+
Ext.CompositeElementLite = function(els, root){
|
|
25
|
+
this.elements = [];
|
|
26
|
+
this.add(els, root);
|
|
27
|
+
this.el = new Ext.Element.Flyweight();
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
Ext.CompositeElementLite.prototype = {
|
|
31
|
+
isComposite: true,
|
|
32
|
+
/**
|
|
33
|
+
* Returns the number of elements in this composite
|
|
34
|
+
* @return Number
|
|
35
|
+
*/
|
|
36
|
+
getCount : function(){
|
|
37
|
+
return this.elements.length;
|
|
38
|
+
},
|
|
39
|
+
add : function(els){
|
|
40
|
+
if(els){
|
|
41
|
+
if (Ext.isArray(els)) {
|
|
42
|
+
this.elements = this.elements.concat(els);
|
|
43
|
+
} else {
|
|
44
|
+
var yels = this.elements;
|
|
45
|
+
Ext.each(els, function(e) {
|
|
46
|
+
yels.push(e);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return this;
|
|
51
|
+
},
|
|
52
|
+
invoke : function(fn, args){
|
|
53
|
+
var els = this.elements,
|
|
54
|
+
el = this.el;
|
|
55
|
+
Ext.each(els, function(e) {
|
|
56
|
+
el.dom = e;
|
|
57
|
+
Ext.Element.prototype[fn].apply(el, args);
|
|
58
|
+
});
|
|
59
|
+
return this;
|
|
60
|
+
},
|
|
61
|
+
/**
|
|
62
|
+
* Returns a flyweight Element of the dom element object at the specified index
|
|
63
|
+
* @param {Number} index
|
|
64
|
+
* @return {Ext.Element}
|
|
65
|
+
*/
|
|
66
|
+
item : function(index){
|
|
67
|
+
var me = this;
|
|
68
|
+
if(!me.elements[index]){
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
me.el.dom = me.elements[index];
|
|
72
|
+
return me.el;
|
|
73
|
+
},
|
|
74
|
+
|
|
75
|
+
// fixes scope with flyweight
|
|
76
|
+
addListener : function(eventName, handler, scope, opt){
|
|
77
|
+
Ext.each(this.elements, function(e) {
|
|
78
|
+
Ext.EventManager.on(e, eventName, handler, scope || e, opt);
|
|
79
|
+
});
|
|
80
|
+
return this;
|
|
81
|
+
},
|
|
82
|
+
/**
|
|
83
|
+
* Calls the passed function passing (el, this, index) for each element in this composite. <b>The element
|
|
84
|
+
* passed is the flyweight (shared) Ext.Element instance, so if you require a
|
|
85
|
+
* a reference to the dom node, use el.dom.</b>
|
|
86
|
+
* @param {Function} fn The function to call
|
|
87
|
+
* @param {Object} scope (optional) The <i>this</i> object (defaults to the element)
|
|
88
|
+
* @return {CompositeElement} this
|
|
89
|
+
*/
|
|
90
|
+
each : function(fn, scope){
|
|
91
|
+
var me = this,
|
|
92
|
+
el = me.el;
|
|
93
|
+
|
|
94
|
+
Ext.each(me.elements, function(e,i) {
|
|
95
|
+
el.dom = e;
|
|
96
|
+
return fn.call(scope || el, el, me, i);
|
|
97
|
+
});
|
|
98
|
+
return me;
|
|
99
|
+
},
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Find the index of the passed element within the composite collection.
|
|
103
|
+
* @param el {Mixed} The id of an element, or an Ext.Element, or an HtmlElement to find within the composite collection.
|
|
104
|
+
* @return Number The index of the passed Ext.Element in the composite collection, or -1 if not found.
|
|
105
|
+
*/
|
|
106
|
+
indexOf : function(el){
|
|
107
|
+
return this.elements.indexOf(Ext.getDom(el));
|
|
108
|
+
},
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Replaces the specified element with the passed element.
|
|
112
|
+
* @param {Mixed} el The id of an element, the Element itself, the index of the element in this composite
|
|
113
|
+
* to replace.
|
|
114
|
+
* @param {Mixed} replacement The id of an element or the Element itself.
|
|
115
|
+
* @param {Boolean} domReplace (Optional) True to remove and replace the element in the document too.
|
|
116
|
+
* @return {CompositeElement} this
|
|
117
|
+
*/
|
|
118
|
+
replaceElement : function(el, replacement, domReplace){
|
|
119
|
+
var index = !isNaN(el) ? el : this.indexOf(el),
|
|
120
|
+
d;
|
|
121
|
+
if(index > -1){
|
|
122
|
+
replacement = Ext.getDom(replacement);
|
|
123
|
+
if(domReplace){
|
|
124
|
+
d = this.elements[index];
|
|
125
|
+
d.parentNode.insertBefore(replacement, d);
|
|
126
|
+
Ext.removeNode(d);
|
|
127
|
+
}
|
|
128
|
+
this.elements.splice(index, 1, replacement);
|
|
129
|
+
}
|
|
130
|
+
return this;
|
|
131
|
+
},
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* Removes all elements.
|
|
135
|
+
*/
|
|
136
|
+
clear : function(){
|
|
137
|
+
this.elements = [];
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
Ext.CompositeElementLite.prototype.on = Ext.CompositeElementLite.prototype.addListener;
|
|
142
|
+
|
|
143
|
+
(function(){
|
|
144
|
+
var fnName,
|
|
145
|
+
ElProto = Ext.Element.prototype,
|
|
146
|
+
CelProto = Ext.CompositeElementLite.prototype;
|
|
147
|
+
|
|
148
|
+
for(fnName in ElProto){
|
|
149
|
+
if(Ext.isFunction(ElProto[fnName])){
|
|
150
|
+
(function(fnName){
|
|
151
|
+
CelProto[fnName] = CelProto[fnName] || function(){
|
|
152
|
+
return this.invoke(fnName, arguments);
|
|
153
|
+
};
|
|
154
|
+
}).call(CelProto, fnName);
|
|
155
|
+
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
})();
|
|
159
|
+
|
|
160
|
+
if(Ext.DomQuery){
|
|
161
|
+
Ext.Element.selectorFunction = Ext.DomQuery.select;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Selects elements based on the passed CSS selector to enable {@link Ext.Element Element} methods
|
|
166
|
+
* to be applied to many related elements in one statement through the returned {@link Ext.CompositeElement CompositeElement} or
|
|
167
|
+
* {@link Ext.CompositeElementLite CompositeElementLite} object.
|
|
168
|
+
* @param {String/Array} selector The CSS selector or an array of elements
|
|
169
|
+
* @param {Boolean} unique (optional) true to create a unique Ext.Element for each element (defaults to a shared flyweight object) <b>Not supported in core</b>
|
|
170
|
+
* @param {HTMLElement/String} root (optional) The root element of the query or id of the root
|
|
171
|
+
* @return {CompositeElementLite/CompositeElement}
|
|
172
|
+
* @member Ext.Element
|
|
173
|
+
* @method select
|
|
174
|
+
*/
|
|
175
|
+
Ext.Element.select = function(selector, unique, root){
|
|
176
|
+
var els;
|
|
177
|
+
if(typeof selector == "string"){
|
|
178
|
+
els = Ext.Element.selectorFunction(selector, root);
|
|
179
|
+
}else if(selector.length !== undefined){
|
|
180
|
+
els = selector;
|
|
181
|
+
}else{
|
|
182
|
+
throw "Invalid selector";
|
|
183
|
+
}
|
|
184
|
+
return new Ext.CompositeElementLite(els);
|
|
185
|
+
};
|
|
186
|
+
/**
|
|
187
|
+
* Selects elements based on the passed CSS selector to enable {@link Ext.Element Element} methods
|
|
188
|
+
* to be applied to many related elements in one statement through the returned {@link Ext.CompositeElement CompositeElement} or
|
|
189
|
+
* {@link Ext.CompositeElementLite CompositeElementLite} object.
|
|
190
|
+
* @param {String/Array} selector The CSS selector or an array of elements
|
|
191
|
+
* @param {Boolean} unique (optional) true to create a unique Ext.Element for each element (defaults to a shared flyweight object)
|
|
192
|
+
* @param {HTMLElement/String} root (optional) The root element of the query or id of the root
|
|
193
|
+
* @return {CompositeElementLite/CompositeElement}
|
|
194
|
+
* @member Ext
|
|
195
|
+
* @method select
|
|
196
|
+
*/
|
|
197
|
+
Ext.select = Ext.Element.select;
|
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Ext JS Library 3.0.0
|
|
3
|
+
* Copyright(c) 2006-2009 Ext JS, LLC
|
|
4
|
+
* licensing@extjs.com
|
|
5
|
+
* http://www.extjs.com/license
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @class Ext.DomHelper
|
|
9
|
+
* <p>The DomHelper class provides a layer of abstraction from DOM and transparently supports creating
|
|
10
|
+
* elements via DOM or using HTML fragments. It also has the ability to create HTML fragment templates
|
|
11
|
+
* from your DOM building code.</p>
|
|
12
|
+
*
|
|
13
|
+
* <p><b><u>DomHelper element specification object</u></b></p>
|
|
14
|
+
* <p>A specification object is used when creating elements. Attributes of this object
|
|
15
|
+
* are assumed to be element attributes, except for 4 special attributes:
|
|
16
|
+
* <div class="mdetail-params"><ul>
|
|
17
|
+
* <li><b><tt>tag</tt></b> : <div class="sub-desc">The tag name of the element</div></li>
|
|
18
|
+
* <li><b><tt>children</tt></b> : or <tt>cn</tt><div class="sub-desc">An array of the
|
|
19
|
+
* same kind of element definition objects to be created and appended. These can be nested
|
|
20
|
+
* as deep as you want.</div></li>
|
|
21
|
+
* <li><b><tt>cls</tt></b> : <div class="sub-desc">The class attribute of the element.
|
|
22
|
+
* This will end up being either the "class" attribute on a HTML fragment or className
|
|
23
|
+
* for a DOM node, depending on whether DomHelper is using fragments or DOM.</div></li>
|
|
24
|
+
* <li><b><tt>html</tt></b> : <div class="sub-desc">The innerHTML for the element</div></li>
|
|
25
|
+
* </ul></div></p>
|
|
26
|
+
*
|
|
27
|
+
* <p><b><u>Insertion methods</u></b></p>
|
|
28
|
+
* <p>Commonly used insertion methods:
|
|
29
|
+
* <div class="mdetail-params"><ul>
|
|
30
|
+
* <li><b><tt>{@link #append}</tt></b> : <div class="sub-desc"></div></li>
|
|
31
|
+
* <li><b><tt>{@link #insertBefore}</tt></b> : <div class="sub-desc"></div></li>
|
|
32
|
+
* <li><b><tt>{@link #insertAfter}</tt></b> : <div class="sub-desc"></div></li>
|
|
33
|
+
* <li><b><tt>{@link #overwrite}</tt></b> : <div class="sub-desc"></div></li>
|
|
34
|
+
* <li><b><tt>{@link #createTemplate}</tt></b> : <div class="sub-desc"></div></li>
|
|
35
|
+
* <li><b><tt>{@link #insertHtml}</tt></b> : <div class="sub-desc"></div></li>
|
|
36
|
+
* </ul></div></p>
|
|
37
|
+
*
|
|
38
|
+
* <p><b><u>Example</u></b></p>
|
|
39
|
+
* <p>This is an example, where an unordered list with 3 children items is appended to an existing
|
|
40
|
+
* element with id <tt>'my-div'</tt>:<br>
|
|
41
|
+
<pre><code>
|
|
42
|
+
var dh = Ext.DomHelper; // create shorthand alias
|
|
43
|
+
// specification object
|
|
44
|
+
var spec = {
|
|
45
|
+
id: 'my-ul',
|
|
46
|
+
tag: 'ul',
|
|
47
|
+
cls: 'my-list',
|
|
48
|
+
// append children after creating
|
|
49
|
+
children: [ // may also specify 'cn' instead of 'children'
|
|
50
|
+
{tag: 'li', id: 'item0', html: 'List Item 0'},
|
|
51
|
+
{tag: 'li', id: 'item1', html: 'List Item 1'},
|
|
52
|
+
{tag: 'li', id: 'item2', html: 'List Item 2'}
|
|
53
|
+
]
|
|
54
|
+
};
|
|
55
|
+
var list = dh.append(
|
|
56
|
+
'my-div', // the context element 'my-div' can either be the id or the actual node
|
|
57
|
+
spec // the specification object
|
|
58
|
+
);
|
|
59
|
+
</code></pre></p>
|
|
60
|
+
* <p>Element creation specification parameters in this class may also be passed as an Array of
|
|
61
|
+
* specification objects. This can be used to insert multiple sibling nodes into an existing
|
|
62
|
+
* container very efficiently. For example, to add more list items to the example above:<pre><code>
|
|
63
|
+
dh.append('my-ul', [
|
|
64
|
+
{tag: 'li', id: 'item3', html: 'List Item 3'},
|
|
65
|
+
{tag: 'li', id: 'item4', html: 'List Item 4'}
|
|
66
|
+
]);
|
|
67
|
+
* </code></pre></p>
|
|
68
|
+
*
|
|
69
|
+
* <p><b><u>Templating</u></b></p>
|
|
70
|
+
* <p>The real power is in the built-in templating. Instead of creating or appending any elements,
|
|
71
|
+
* <tt>{@link #createTemplate}</tt> returns a Template object which can be used over and over to
|
|
72
|
+
* insert new elements. Revisiting the example above, we could utilize templating this time:
|
|
73
|
+
* <pre><code>
|
|
74
|
+
// create the node
|
|
75
|
+
var list = dh.append('my-div', {tag: 'ul', cls: 'my-list'});
|
|
76
|
+
// get template
|
|
77
|
+
var tpl = dh.createTemplate({tag: 'li', id: 'item{0}', html: 'List Item {0}'});
|
|
78
|
+
|
|
79
|
+
for(var i = 0; i < 5, i++){
|
|
80
|
+
tpl.append(list, [i]); // use template to append to the actual node
|
|
81
|
+
}
|
|
82
|
+
* </code></pre></p>
|
|
83
|
+
* <p>An example using a template:<pre><code>
|
|
84
|
+
var html = '<a id="{0}" href="{1}" class="nav">{2}</a>';
|
|
85
|
+
|
|
86
|
+
var tpl = new Ext.DomHelper.createTemplate(html);
|
|
87
|
+
tpl.append('blog-roll', ['link1', 'http://www.jackslocum.com/', "Jack's Site"]);
|
|
88
|
+
tpl.append('blog-roll', ['link2', 'http://www.dustindiaz.com/', "Dustin's Site"]);
|
|
89
|
+
* </code></pre></p>
|
|
90
|
+
*
|
|
91
|
+
* <p>The same example using named parameters:<pre><code>
|
|
92
|
+
var html = '<a id="{id}" href="{url}" class="nav">{text}</a>';
|
|
93
|
+
|
|
94
|
+
var tpl = new Ext.DomHelper.createTemplate(html);
|
|
95
|
+
tpl.append('blog-roll', {
|
|
96
|
+
id: 'link1',
|
|
97
|
+
url: 'http://www.jackslocum.com/',
|
|
98
|
+
text: "Jack's Site"
|
|
99
|
+
});
|
|
100
|
+
tpl.append('blog-roll', {
|
|
101
|
+
id: 'link2',
|
|
102
|
+
url: 'http://www.dustindiaz.com/',
|
|
103
|
+
text: "Dustin's Site"
|
|
104
|
+
});
|
|
105
|
+
* </code></pre></p>
|
|
106
|
+
*
|
|
107
|
+
* <p><b><u>Compiling Templates</u></b></p>
|
|
108
|
+
* <p>Templates are applied using regular expressions. The performance is great, but if
|
|
109
|
+
* you are adding a bunch of DOM elements using the same template, you can increase
|
|
110
|
+
* performance even further by {@link Ext.Template#compile "compiling"} the template.
|
|
111
|
+
* The way "{@link Ext.Template#compile compile()}" works is the template is parsed and
|
|
112
|
+
* broken up at the different variable points and a dynamic function is created and eval'ed.
|
|
113
|
+
* The generated function performs string concatenation of these parts and the passed
|
|
114
|
+
* variables instead of using regular expressions.
|
|
115
|
+
* <pre><code>
|
|
116
|
+
var html = '<a id="{id}" href="{url}" class="nav">{text}</a>';
|
|
117
|
+
|
|
118
|
+
var tpl = new Ext.DomHelper.createTemplate(html);
|
|
119
|
+
tpl.compile();
|
|
120
|
+
|
|
121
|
+
//... use template like normal
|
|
122
|
+
* </code></pre></p>
|
|
123
|
+
*
|
|
124
|
+
* <p><b><u>Performance Boost</u></b></p>
|
|
125
|
+
* <p>DomHelper will transparently create HTML fragments when it can. Using HTML fragments instead
|
|
126
|
+
* of DOM can significantly boost performance.</p>
|
|
127
|
+
* <p>Element creation specification parameters may also be strings. If {@link #useDom} is <tt>false</tt>,
|
|
128
|
+
* then the string is used as innerHTML. If {@link #useDom} is <tt>true</tt>, a string specification
|
|
129
|
+
* results in the creation of a text node. Usage:</p>
|
|
130
|
+
* <pre><code>
|
|
131
|
+
Ext.DomHelper.useDom = true; // force it to use DOM; reduces performance
|
|
132
|
+
* </code></pre>
|
|
133
|
+
* @singleton
|
|
134
|
+
*/
|
|
135
|
+
Ext.DomHelper = function(){
|
|
136
|
+
var tempTableEl = null,
|
|
137
|
+
emptyTags = /^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i,
|
|
138
|
+
tableRe = /^table|tbody|tr|td$/i,
|
|
139
|
+
pub,
|
|
140
|
+
// kill repeat to save bytes
|
|
141
|
+
afterbegin = "afterbegin",
|
|
142
|
+
afterend = "afterend",
|
|
143
|
+
beforebegin = "beforebegin",
|
|
144
|
+
beforeend = "beforeend",
|
|
145
|
+
ts = '<table>',
|
|
146
|
+
te = '</table>',
|
|
147
|
+
tbs = ts+'<tbody>',
|
|
148
|
+
tbe = '</tbody>'+te,
|
|
149
|
+
trs = tbs + '<tr>',
|
|
150
|
+
tre = '</tr>'+tbe;
|
|
151
|
+
|
|
152
|
+
// private
|
|
153
|
+
function doInsert(el, o, returnElement, pos, sibling, append){
|
|
154
|
+
var newNode = pub.insertHtml(pos, Ext.getDom(el), createHtml(o));
|
|
155
|
+
return returnElement ? Ext.get(newNode, true) : newNode;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// build as innerHTML where available
|
|
159
|
+
function createHtml(o){
|
|
160
|
+
var b = "",
|
|
161
|
+
attr,
|
|
162
|
+
val,
|
|
163
|
+
key,
|
|
164
|
+
keyVal,
|
|
165
|
+
cn;
|
|
166
|
+
|
|
167
|
+
if(typeof o == 'string'){
|
|
168
|
+
b = o;
|
|
169
|
+
} else if (Ext.isArray(o)) {
|
|
170
|
+
Ext.each(o, function(v) {
|
|
171
|
+
b += createHtml(v);
|
|
172
|
+
});
|
|
173
|
+
} else {
|
|
174
|
+
b += "<" + (o.tag = o.tag || "div");
|
|
175
|
+
Ext.iterate(o, function(attr, val){
|
|
176
|
+
if(!/tag|children|cn|html$/i.test(attr)){
|
|
177
|
+
if (Ext.isObject(val)) {
|
|
178
|
+
b += " " + attr + "='";
|
|
179
|
+
Ext.iterate(val, function(key, keyVal){
|
|
180
|
+
b += key + ":" + keyVal + ";";
|
|
181
|
+
});
|
|
182
|
+
b += "'";
|
|
183
|
+
}else{
|
|
184
|
+
b += " " + ({cls : "class", htmlFor : "for"}[attr] || attr) + "='" + val + "'";
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
// Now either just close the tag or try to add children and close the tag.
|
|
189
|
+
if (emptyTags.test(o.tag)) {
|
|
190
|
+
b += "/>";
|
|
191
|
+
} else {
|
|
192
|
+
b += ">";
|
|
193
|
+
if ((cn = o.children || o.cn)) {
|
|
194
|
+
b += createHtml(cn);
|
|
195
|
+
} else if(o.html){
|
|
196
|
+
b += o.html;
|
|
197
|
+
}
|
|
198
|
+
b += "</" + o.tag + ">";
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
return b;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
function ieTable(depth, s, h, e){
|
|
205
|
+
tempTableEl.innerHTML = [s, h, e].join('');
|
|
206
|
+
var i = -1,
|
|
207
|
+
el = tempTableEl;
|
|
208
|
+
while(++i < depth){
|
|
209
|
+
el = el.firstChild;
|
|
210
|
+
}
|
|
211
|
+
return el;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* @ignore
|
|
216
|
+
* Nasty code for IE's broken table implementation
|
|
217
|
+
*/
|
|
218
|
+
function insertIntoTable(tag, where, el, html) {
|
|
219
|
+
var node,
|
|
220
|
+
before;
|
|
221
|
+
|
|
222
|
+
tempTableEl = tempTableEl || document.createElement('div');
|
|
223
|
+
|
|
224
|
+
if(tag == 'td' && (where == afterbegin || where == beforeend) ||
|
|
225
|
+
!/td|tr|tbody/i.test(tag) && (where == beforebegin || where == afterend)) {
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
before = where == beforebegin ? el :
|
|
229
|
+
where == afterend ? el.nextSibling :
|
|
230
|
+
where == afterbegin ? el.firstChild : null;
|
|
231
|
+
|
|
232
|
+
if (where == beforebegin || where == afterend) {
|
|
233
|
+
el = el.parentNode;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
if (tag == 'td' || (tag == "tr" && (where == beforeend || where == afterbegin))) {
|
|
237
|
+
node = ieTable(4, trs, html, tre);
|
|
238
|
+
} else if ((tag == "tbody" && (where == beforeend || where == afterbegin)) ||
|
|
239
|
+
(tag == "tr" && (where == beforebegin || where == afterend))) {
|
|
240
|
+
node = ieTable(3, tbs, html, tbe);
|
|
241
|
+
} else {
|
|
242
|
+
node = ieTable(2, ts, html, te);
|
|
243
|
+
}
|
|
244
|
+
el.insertBefore(node, before);
|
|
245
|
+
return node;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
pub = {
|
|
250
|
+
/**
|
|
251
|
+
* Returns the markup for the passed Element(s) config.
|
|
252
|
+
* @param {Object} o The DOM object spec (and children)
|
|
253
|
+
* @return {String}
|
|
254
|
+
*/
|
|
255
|
+
markup : function(o){
|
|
256
|
+
return createHtml(o);
|
|
257
|
+
},
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* Inserts an HTML fragment into the DOM.
|
|
261
|
+
* @param {String} where Where to insert the html in relation to el - beforeBegin, afterBegin, beforeEnd, afterEnd.
|
|
262
|
+
* @param {HTMLElement} el The context element
|
|
263
|
+
* @param {String} html The HTML fragmenet
|
|
264
|
+
* @return {HTMLElement} The new node
|
|
265
|
+
*/
|
|
266
|
+
insertHtml : function(where, el, html){
|
|
267
|
+
var hash = {},
|
|
268
|
+
hashVal,
|
|
269
|
+
setStart,
|
|
270
|
+
range,
|
|
271
|
+
frag,
|
|
272
|
+
rangeEl,
|
|
273
|
+
rs;
|
|
274
|
+
|
|
275
|
+
where = where.toLowerCase();
|
|
276
|
+
// add these here because they are used in both branches of the condition.
|
|
277
|
+
hash[beforebegin] = ['BeforeBegin', 'previousSibling'];
|
|
278
|
+
hash[afterend] = ['AfterEnd', 'nextSibling'];
|
|
279
|
+
|
|
280
|
+
if (el.insertAdjacentHTML) {
|
|
281
|
+
if(tableRe.test(el.tagName) && (rs = insertIntoTable(el.tagName.toLowerCase(), where, el, html))){
|
|
282
|
+
return rs;
|
|
283
|
+
}
|
|
284
|
+
// add these two to the hash.
|
|
285
|
+
hash[afterbegin] = ['AfterBegin', 'firstChild'];
|
|
286
|
+
hash[beforeend] = ['BeforeEnd', 'lastChild'];
|
|
287
|
+
if ((hashVal = hash[where])) {
|
|
288
|
+
el.insertAdjacentHTML(hashVal[0], html);
|
|
289
|
+
return el[hashVal[1]];
|
|
290
|
+
}
|
|
291
|
+
} else {
|
|
292
|
+
range = el.ownerDocument.createRange();
|
|
293
|
+
setStart = "setStart" + (/end/i.test(where) ? "After" : "Before");
|
|
294
|
+
if (hash[where]) {
|
|
295
|
+
range[setStart](el);
|
|
296
|
+
frag = range.createContextualFragment(html);
|
|
297
|
+
el.parentNode.insertBefore(frag, where == beforebegin ? el : el.nextSibling);
|
|
298
|
+
return el[(where == beforebegin ? "previous" : "next") + "Sibling"];
|
|
299
|
+
} else {
|
|
300
|
+
rangeEl = (where == afterbegin ? "first" : "last") + "Child";
|
|
301
|
+
if (el.firstChild) {
|
|
302
|
+
range[setStart](el[rangeEl]);
|
|
303
|
+
frag = range.createContextualFragment(html);
|
|
304
|
+
if(where == afterbegin){
|
|
305
|
+
el.insertBefore(frag, el.firstChild);
|
|
306
|
+
}else{
|
|
307
|
+
el.appendChild(frag);
|
|
308
|
+
}
|
|
309
|
+
} else {
|
|
310
|
+
el.innerHTML = html;
|
|
311
|
+
}
|
|
312
|
+
return el[rangeEl];
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
throw 'Illegal insertion point -> "' + where + '"';
|
|
316
|
+
},
|
|
317
|
+
|
|
318
|
+
/**
|
|
319
|
+
* Creates new DOM element(s) and inserts them before el.
|
|
320
|
+
* @param {Mixed} el The context element
|
|
321
|
+
* @param {Object/String} o The DOM object spec (and children) or raw HTML blob
|
|
322
|
+
* @param {Boolean} returnElement (optional) true to return a Ext.Element
|
|
323
|
+
* @return {HTMLElement/Ext.Element} The new node
|
|
324
|
+
*/
|
|
325
|
+
insertBefore : function(el, o, returnElement){
|
|
326
|
+
return doInsert(el, o, returnElement, beforebegin);
|
|
327
|
+
},
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Creates new DOM element(s) and inserts them after el.
|
|
331
|
+
* @param {Mixed} el The context element
|
|
332
|
+
* @param {Object} o The DOM object spec (and children)
|
|
333
|
+
* @param {Boolean} returnElement (optional) true to return a Ext.Element
|
|
334
|
+
* @return {HTMLElement/Ext.Element} The new node
|
|
335
|
+
*/
|
|
336
|
+
insertAfter : function(el, o, returnElement){
|
|
337
|
+
return doInsert(el, o, returnElement, afterend, "nextSibling");
|
|
338
|
+
},
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* Creates new DOM element(s) and inserts them as the first child of el.
|
|
342
|
+
* @param {Mixed} el The context element
|
|
343
|
+
* @param {Object/String} o The DOM object spec (and children) or raw HTML blob
|
|
344
|
+
* @param {Boolean} returnElement (optional) true to return a Ext.Element
|
|
345
|
+
* @return {HTMLElement/Ext.Element} The new node
|
|
346
|
+
*/
|
|
347
|
+
insertFirst : function(el, o, returnElement){
|
|
348
|
+
return doInsert(el, o, returnElement, afterbegin, "firstChild");
|
|
349
|
+
},
|
|
350
|
+
|
|
351
|
+
/**
|
|
352
|
+
* Creates new DOM element(s) and appends them to el.
|
|
353
|
+
* @param {Mixed} el The context element
|
|
354
|
+
* @param {Object/String} o The DOM object spec (and children) or raw HTML blob
|
|
355
|
+
* @param {Boolean} returnElement (optional) true to return a Ext.Element
|
|
356
|
+
* @return {HTMLElement/Ext.Element} The new node
|
|
357
|
+
*/
|
|
358
|
+
append : function(el, o, returnElement){
|
|
359
|
+
return doInsert(el, o, returnElement, beforeend, "", true);
|
|
360
|
+
},
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Creates new DOM element(s) and overwrites the contents of el with them.
|
|
364
|
+
* @param {Mixed} el The context element
|
|
365
|
+
* @param {Object/String} o The DOM object spec (and children) or raw HTML blob
|
|
366
|
+
* @param {Boolean} returnElement (optional) true to return a Ext.Element
|
|
367
|
+
* @return {HTMLElement/Ext.Element} The new node
|
|
368
|
+
*/
|
|
369
|
+
overwrite : function(el, o, returnElement){
|
|
370
|
+
el = Ext.getDom(el);
|
|
371
|
+
el.innerHTML = createHtml(o);
|
|
372
|
+
return returnElement ? Ext.get(el.firstChild) : el.firstChild;
|
|
373
|
+
},
|
|
374
|
+
|
|
375
|
+
createHtml : createHtml
|
|
376
|
+
};
|
|
377
|
+
return pub;
|
|
378
|
+
}();
|