lpmp 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (636) hide show
  1. data/LICENSE +3 -0
  2. data/README +3 -0
  3. data/Rakefile +45 -0
  4. data/bin/lpmp +107 -0
  5. data/config/help.yaml +1 -0
  6. data/config/hosts.yaml +2 -0
  7. data/config/log.yaml +1 -0
  8. data/config/memcache.yaml +5 -0
  9. data/erb/index.erb +62 -0
  10. data/lib/bg_pull/caichen.rb +199 -0
  11. data/lib/bg_pull/lpmp.rb +45 -0
  12. data/lib/exception.rb +8 -0
  13. data/lib/lpmp.rb +53 -0
  14. data/lib/pull/lpmp.rb +355 -0
  15. data/lib/remote_lmp.rb +129 -0
  16. data/lib/utils.rb +14 -0
  17. data/lib/xq_push/caichen.rb +174 -0
  18. data/lib/xq_push/lpmp.rb +96 -0
  19. data/log/lpmp1st.log +1 -0
  20. data/public/css/ext-portal.css +40 -0
  21. data/public/css/lpmp.css +6 -0
  22. data/public/designer/caichen.epj +1 -0
  23. data/public/designer/hostmonitor.epj +1 -0
  24. data/public/ext-3.0.0/INCLUDE_ORDER.txt +35 -0
  25. data/public/ext-3.0.0/adapter/ext/ext-base-debug.js +3589 -0
  26. data/public/ext-3.0.0/adapter/ext/ext-base.js +7 -0
  27. data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter-debug.js +2292 -0
  28. data/public/ext-3.0.0/adapter/jquery/ext-jquery-adapter.js +7 -0
  29. data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter-debug.js +2346 -0
  30. data/public/ext-3.0.0/adapter/prototype/ext-prototype-adapter.js +7 -0
  31. data/public/ext-3.0.0/adapter/yui/ext-yui-adapter-debug.js +2136 -0
  32. data/public/ext-3.0.0/adapter/yui/ext-yui-adapter.js +7 -0
  33. data/public/ext-3.0.0/ext-all-debug.js +65610 -0
  34. data/public/ext-3.0.0/ext-all.js +11 -0
  35. data/public/ext-3.0.0/license.txt +42 -0
  36. data/public/ext-3.0.0/pkgs/cmp-foundation-debug.js +11287 -0
  37. data/public/ext-3.0.0/pkgs/cmp-foundation.js +7 -0
  38. data/public/ext-3.0.0/pkgs/data-foundation-debug.js +3853 -0
  39. data/public/ext-3.0.0/pkgs/data-foundation.js +7 -0
  40. data/public/ext-3.0.0/pkgs/data-grouping-debug.js +139 -0
  41. data/public/ext-3.0.0/pkgs/data-grouping.js +7 -0
  42. data/public/ext-3.0.0/pkgs/data-json-debug.js +582 -0
  43. data/public/ext-3.0.0/pkgs/data-json.js +7 -0
  44. data/public/ext-3.0.0/pkgs/data-list-views-debug.js +1278 -0
  45. data/public/ext-3.0.0/pkgs/data-list-views.js +7 -0
  46. data/public/ext-3.0.0/pkgs/data-xml-debug.js +234 -0
  47. data/public/ext-3.0.0/pkgs/data-xml.js +7 -0
  48. data/public/ext-3.0.0/pkgs/direct-debug.js +1121 -0
  49. data/public/ext-3.0.0/pkgs/direct.js +7 -0
  50. data/public/ext-3.0.0/pkgs/ext-dd-debug.js +4567 -0
  51. data/public/ext-3.0.0/pkgs/ext-dd.js +7 -0
  52. data/public/ext-3.0.0/pkgs/ext-foundation-debug.js +13417 -0
  53. data/public/ext-3.0.0/pkgs/ext-foundation.js +7 -0
  54. data/public/ext-3.0.0/pkgs/pkg-buttons-debug.js +1060 -0
  55. data/public/ext-3.0.0/pkgs/pkg-buttons.js +7 -0
  56. data/public/ext-3.0.0/pkgs/pkg-charts-debug.js +1621 -0
  57. data/public/ext-3.0.0/pkgs/pkg-charts.js +10 -0
  58. data/public/ext-3.0.0/pkgs/pkg-forms-debug.js +7661 -0
  59. data/public/ext-3.0.0/pkgs/pkg-forms.js +7 -0
  60. data/public/ext-3.0.0/pkgs/pkg-grid-editor-debug.js +560 -0
  61. data/public/ext-3.0.0/pkgs/pkg-grid-editor.js +7 -0
  62. data/public/ext-3.0.0/pkgs/pkg-grid-foundation-debug.js +4765 -0
  63. data/public/ext-3.0.0/pkgs/pkg-grid-foundation.js +7 -0
  64. data/public/ext-3.0.0/pkgs/pkg-grid-grouping-debug.js +517 -0
  65. data/public/ext-3.0.0/pkgs/pkg-grid-grouping.js +7 -0
  66. data/public/ext-3.0.0/pkgs/pkg-grid-property-debug.js +370 -0
  67. data/public/ext-3.0.0/pkgs/pkg-grid-property.js +7 -0
  68. data/public/ext-3.0.0/pkgs/pkg-history-debug.js +203 -0
  69. data/public/ext-3.0.0/pkgs/pkg-history.js +7 -0
  70. data/public/ext-3.0.0/pkgs/pkg-menu-debug.js +1628 -0
  71. data/public/ext-3.0.0/pkgs/pkg-menu.js +7 -0
  72. data/public/ext-3.0.0/pkgs/pkg-tabs-debug.js +1100 -0
  73. data/public/ext-3.0.0/pkgs/pkg-tabs.js +7 -0
  74. data/public/ext-3.0.0/pkgs/pkg-tips-debug.js +994 -0
  75. data/public/ext-3.0.0/pkgs/pkg-tips.js +7 -0
  76. data/public/ext-3.0.0/pkgs/pkg-toolbars-debug.js +1374 -0
  77. data/public/ext-3.0.0/pkgs/pkg-toolbars.js +7 -0
  78. data/public/ext-3.0.0/pkgs/pkg-tree-debug.js +4522 -0
  79. data/public/ext-3.0.0/pkgs/pkg-tree.js +7 -0
  80. data/public/ext-3.0.0/pkgs/resizable-debug.js +760 -0
  81. data/public/ext-3.0.0/pkgs/resizable.js +7 -0
  82. data/public/ext-3.0.0/pkgs/state-debug.js +274 -0
  83. data/public/ext-3.0.0/pkgs/state.js +7 -0
  84. data/public/ext-3.0.0/pkgs/window-debug.js +1888 -0
  85. data/public/ext-3.0.0/pkgs/window.js +7 -0
  86. data/public/ext-3.0.0/resources/charts.swf +0 -0
  87. data/public/ext-3.0.0/resources/css/README.txt +3 -0
  88. data/public/ext-3.0.0/resources/css/ext-all-notheme.css +5345 -0
  89. data/public/ext-3.0.0/resources/css/ext-all.css +6990 -0
  90. data/public/ext-3.0.0/resources/css/reset-min.css +7 -0
  91. data/public/ext-3.0.0/resources/css/structure/borders.css +54 -0
  92. data/public/ext-3.0.0/resources/css/structure/box.css +80 -0
  93. data/public/ext-3.0.0/resources/css/structure/button.css +440 -0
  94. data/public/ext-3.0.0/resources/css/structure/combo.css +45 -0
  95. data/public/ext-3.0.0/resources/css/structure/core.css +326 -0
  96. data/public/ext-3.0.0/resources/css/structure/date-picker.css +265 -0
  97. data/public/ext-3.0.0/resources/css/structure/dd.css +61 -0
  98. data/public/ext-3.0.0/resources/css/structure/debug.css +26 -0
  99. data/public/ext-3.0.0/resources/css/structure/dialog.css +62 -0
  100. data/public/ext-3.0.0/resources/css/structure/editor.css +92 -0
  101. data/public/ext-3.0.0/resources/css/structure/form.css +562 -0
  102. data/public/ext-3.0.0/resources/css/structure/grid.css +552 -0
  103. data/public/ext-3.0.0/resources/css/structure/layout.css +296 -0
  104. data/public/ext-3.0.0/resources/css/structure/list-view.css +85 -0
  105. data/public/ext-3.0.0/resources/css/structure/menu.css +205 -0
  106. data/public/ext-3.0.0/resources/css/structure/panel-reset.css +130 -0
  107. data/public/ext-3.0.0/resources/css/structure/panel.css +468 -0
  108. data/public/ext-3.0.0/resources/css/structure/progress.css +42 -0
  109. data/public/ext-3.0.0/resources/css/structure/qtips.css +153 -0
  110. data/public/ext-3.0.0/resources/css/structure/reset.css +7 -0
  111. data/public/ext-3.0.0/resources/css/structure/resizable.css +149 -0
  112. data/public/ext-3.0.0/resources/css/structure/slider.css +103 -0
  113. data/public/ext-3.0.0/resources/css/structure/tabs.css +372 -0
  114. data/public/ext-3.0.0/resources/css/structure/toolbar.css +259 -0
  115. data/public/ext-3.0.0/resources/css/structure/tree.css +203 -0
  116. data/public/ext-3.0.0/resources/css/structure/window.css +222 -0
  117. data/public/ext-3.0.0/resources/css/visual/borders.css +25 -0
  118. data/public/ext-3.0.0/resources/css/visual/box.css +74 -0
  119. data/public/ext-3.0.0/resources/css/visual/button.css +94 -0
  120. data/public/ext-3.0.0/resources/css/visual/combo.css +43 -0
  121. data/public/ext-3.0.0/resources/css/visual/core.css +76 -0
  122. data/public/ext-3.0.0/resources/css/visual/date-picker.css +143 -0
  123. data/public/ext-3.0.0/resources/css/visual/dd.css +29 -0
  124. data/public/ext-3.0.0/resources/css/visual/debug.css +24 -0
  125. data/public/ext-3.0.0/resources/css/visual/dialog.css +34 -0
  126. data/public/ext-3.0.0/resources/css/visual/editor.css +13 -0
  127. data/public/ext-3.0.0/resources/css/visual/form.css +117 -0
  128. data/public/ext-3.0.0/resources/css/visual/grid.css +272 -0
  129. data/public/ext-3.0.0/resources/css/visual/layout.css +53 -0
  130. data/public/ext-3.0.0/resources/css/visual/list-view.css +37 -0
  131. data/public/ext-3.0.0/resources/css/visual/menu.css +82 -0
  132. data/public/ext-3.0.0/resources/css/visual/panel.css +87 -0
  133. data/public/ext-3.0.0/resources/css/visual/progress.css +32 -0
  134. data/public/ext-3.0.0/resources/css/visual/qtips.css +44 -0
  135. data/public/ext-3.0.0/resources/css/visual/resizable.css +43 -0
  136. data/public/ext-3.0.0/resources/css/visual/slider.css +21 -0
  137. data/public/ext-3.0.0/resources/css/visual/tabs.css +119 -0
  138. data/public/ext-3.0.0/resources/css/visual/toolbar.css +103 -0
  139. data/public/ext-3.0.0/resources/css/visual/tree.css +157 -0
  140. data/public/ext-3.0.0/resources/css/visual/window.css +86 -0
  141. data/public/ext-3.0.0/resources/css/xtheme-blue.css +1652 -0
  142. data/public/ext-3.0.0/resources/expressinstall.swf +0 -0
  143. data/public/ext-3.0.0/resources/images/default/box/corners-blue.gif +0 -0
  144. data/public/ext-3.0.0/resources/images/default/box/corners.gif +0 -0
  145. data/public/ext-3.0.0/resources/images/default/box/l-blue.gif +0 -0
  146. data/public/ext-3.0.0/resources/images/default/box/l.gif +0 -0
  147. data/public/ext-3.0.0/resources/images/default/box/r-blue.gif +0 -0
  148. data/public/ext-3.0.0/resources/images/default/box/r.gif +0 -0
  149. data/public/ext-3.0.0/resources/images/default/box/tb-blue.gif +0 -0
  150. data/public/ext-3.0.0/resources/images/default/box/tb.gif +0 -0
  151. data/public/ext-3.0.0/resources/images/default/button/arrow.gif +0 -0
  152. data/public/ext-3.0.0/resources/images/default/button/btn.gif +0 -0
  153. data/public/ext-3.0.0/resources/images/default/button/group-cs.gif +0 -0
  154. data/public/ext-3.0.0/resources/images/default/button/group-lr.gif +0 -0
  155. data/public/ext-3.0.0/resources/images/default/button/group-tb.gif +0 -0
  156. data/public/ext-3.0.0/resources/images/default/button/s-arrow-b-noline.gif +0 -0
  157. data/public/ext-3.0.0/resources/images/default/button/s-arrow-b.gif +0 -0
  158. data/public/ext-3.0.0/resources/images/default/button/s-arrow-bo.gif +0 -0
  159. data/public/ext-3.0.0/resources/images/default/button/s-arrow-noline.gif +0 -0
  160. data/public/ext-3.0.0/resources/images/default/button/s-arrow-o.gif +0 -0
  161. data/public/ext-3.0.0/resources/images/default/button/s-arrow.gif +0 -0
  162. data/public/ext-3.0.0/resources/images/default/dd/drop-add.gif +0 -0
  163. data/public/ext-3.0.0/resources/images/default/dd/drop-no.gif +0 -0
  164. data/public/ext-3.0.0/resources/images/default/dd/drop-yes.gif +0 -0
  165. data/public/ext-3.0.0/resources/images/default/editor/tb-sprite.gif +0 -0
  166. data/public/ext-3.0.0/resources/images/default/form/checkbox.gif +0 -0
  167. data/public/ext-3.0.0/resources/images/default/form/clear-trigger.gif +0 -0
  168. data/public/ext-3.0.0/resources/images/default/form/clear-trigger.psd +0 -0
  169. data/public/ext-3.0.0/resources/images/default/form/date-trigger.gif +0 -0
  170. data/public/ext-3.0.0/resources/images/default/form/date-trigger.psd +0 -0
  171. data/public/ext-3.0.0/resources/images/default/form/error-tip-corners.gif +0 -0
  172. data/public/ext-3.0.0/resources/images/default/form/exclamation.gif +0 -0
  173. data/public/ext-3.0.0/resources/images/default/form/radio.gif +0 -0
  174. data/public/ext-3.0.0/resources/images/default/form/search-trigger.gif +0 -0
  175. data/public/ext-3.0.0/resources/images/default/form/search-trigger.psd +0 -0
  176. data/public/ext-3.0.0/resources/images/default/form/text-bg.gif +0 -0
  177. data/public/ext-3.0.0/resources/images/default/form/trigger-tpl.gif +0 -0
  178. data/public/ext-3.0.0/resources/images/default/form/trigger.gif +0 -0
  179. data/public/ext-3.0.0/resources/images/default/form/trigger.psd +0 -0
  180. data/public/ext-3.0.0/resources/images/default/gradient-bg.gif +0 -0
  181. data/public/ext-3.0.0/resources/images/default/grid/arrow-left-white.gif +0 -0
  182. data/public/ext-3.0.0/resources/images/default/grid/arrow-right-white.gif +0 -0
  183. data/public/ext-3.0.0/resources/images/default/grid/col-move-bottom.gif +0 -0
  184. data/public/ext-3.0.0/resources/images/default/grid/col-move-top.gif +0 -0
  185. data/public/ext-3.0.0/resources/images/default/grid/columns.gif +0 -0
  186. data/public/ext-3.0.0/resources/images/default/grid/dirty.gif +0 -0
  187. data/public/ext-3.0.0/resources/images/default/grid/done.gif +0 -0
  188. data/public/ext-3.0.0/resources/images/default/grid/drop-no.gif +0 -0
  189. data/public/ext-3.0.0/resources/images/default/grid/drop-yes.gif +0 -0
  190. data/public/ext-3.0.0/resources/images/default/grid/footer-bg.gif +0 -0
  191. data/public/ext-3.0.0/resources/images/default/grid/grid-blue-hd.gif +0 -0
  192. data/public/ext-3.0.0/resources/images/default/grid/grid-blue-split.gif +0 -0
  193. data/public/ext-3.0.0/resources/images/default/grid/grid-hrow.gif +0 -0
  194. data/public/ext-3.0.0/resources/images/default/grid/grid-loading.gif +0 -0
  195. data/public/ext-3.0.0/resources/images/default/grid/grid-split.gif +0 -0
  196. data/public/ext-3.0.0/resources/images/default/grid/grid-vista-hd.gif +0 -0
  197. data/public/ext-3.0.0/resources/images/default/grid/grid3-hd-btn.gif +0 -0
  198. data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow-over.gif +0 -0
  199. data/public/ext-3.0.0/resources/images/default/grid/grid3-hrow.gif +0 -0
  200. data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-bg.gif +0 -0
  201. data/public/ext-3.0.0/resources/images/default/grid/grid3-special-col-sel-bg.gif +0 -0
  202. data/public/ext-3.0.0/resources/images/default/grid/group-by.gif +0 -0
  203. data/public/ext-3.0.0/resources/images/default/grid/group-collapse.gif +0 -0
  204. data/public/ext-3.0.0/resources/images/default/grid/group-expand-sprite.gif +0 -0
  205. data/public/ext-3.0.0/resources/images/default/grid/group-expand.gif +0 -0
  206. data/public/ext-3.0.0/resources/images/default/grid/hd-pop.gif +0 -0
  207. data/public/ext-3.0.0/resources/images/default/grid/hmenu-asc.gif +0 -0
  208. data/public/ext-3.0.0/resources/images/default/grid/hmenu-desc.gif +0 -0
  209. data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.gif +0 -0
  210. data/public/ext-3.0.0/resources/images/default/grid/hmenu-lock.png +0 -0
  211. data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.gif +0 -0
  212. data/public/ext-3.0.0/resources/images/default/grid/hmenu-unlock.png +0 -0
  213. data/public/ext-3.0.0/resources/images/default/grid/invalid_line.gif +0 -0
  214. data/public/ext-3.0.0/resources/images/default/grid/loading.gif +0 -0
  215. data/public/ext-3.0.0/resources/images/default/grid/mso-hd.gif +0 -0
  216. data/public/ext-3.0.0/resources/images/default/grid/nowait.gif +0 -0
  217. data/public/ext-3.0.0/resources/images/default/grid/page-first-disabled.gif +0 -0
  218. data/public/ext-3.0.0/resources/images/default/grid/page-first.gif +0 -0
  219. data/public/ext-3.0.0/resources/images/default/grid/page-last-disabled.gif +0 -0
  220. data/public/ext-3.0.0/resources/images/default/grid/page-last.gif +0 -0
  221. data/public/ext-3.0.0/resources/images/default/grid/page-next-disabled.gif +0 -0
  222. data/public/ext-3.0.0/resources/images/default/grid/page-next.gif +0 -0
  223. data/public/ext-3.0.0/resources/images/default/grid/page-prev-disabled.gif +0 -0
  224. data/public/ext-3.0.0/resources/images/default/grid/page-prev.gif +0 -0
  225. data/public/ext-3.0.0/resources/images/default/grid/pick-button.gif +0 -0
  226. data/public/ext-3.0.0/resources/images/default/grid/refresh.gif +0 -0
  227. data/public/ext-3.0.0/resources/images/default/grid/row-check-sprite.gif +0 -0
  228. data/public/ext-3.0.0/resources/images/default/grid/row-expand-sprite.gif +0 -0
  229. data/public/ext-3.0.0/resources/images/default/grid/row-over.gif +0 -0
  230. data/public/ext-3.0.0/resources/images/default/grid/row-sel.gif +0 -0
  231. data/public/ext-3.0.0/resources/images/default/grid/sort-hd.gif +0 -0
  232. data/public/ext-3.0.0/resources/images/default/grid/sort_asc.gif +0 -0
  233. data/public/ext-3.0.0/resources/images/default/grid/sort_desc.gif +0 -0
  234. data/public/ext-3.0.0/resources/images/default/grid/wait.gif +0 -0
  235. data/public/ext-3.0.0/resources/images/default/layout/collapse.gif +0 -0
  236. data/public/ext-3.0.0/resources/images/default/layout/expand.gif +0 -0
  237. data/public/ext-3.0.0/resources/images/default/layout/gradient-bg.gif +0 -0
  238. data/public/ext-3.0.0/resources/images/default/layout/mini-bottom.gif +0 -0
  239. data/public/ext-3.0.0/resources/images/default/layout/mini-left.gif +0 -0
  240. data/public/ext-3.0.0/resources/images/default/layout/mini-right.gif +0 -0
  241. data/public/ext-3.0.0/resources/images/default/layout/mini-top.gif +0 -0
  242. data/public/ext-3.0.0/resources/images/default/layout/ns-collapse.gif +0 -0
  243. data/public/ext-3.0.0/resources/images/default/layout/ns-expand.gif +0 -0
  244. data/public/ext-3.0.0/resources/images/default/layout/panel-close.gif +0 -0
  245. data/public/ext-3.0.0/resources/images/default/layout/panel-title-bg.gif +0 -0
  246. data/public/ext-3.0.0/resources/images/default/layout/panel-title-light-bg.gif +0 -0
  247. data/public/ext-3.0.0/resources/images/default/layout/stick.gif +0 -0
  248. data/public/ext-3.0.0/resources/images/default/layout/stuck.gif +0 -0
  249. data/public/ext-3.0.0/resources/images/default/layout/tab-close-on.gif +0 -0
  250. data/public/ext-3.0.0/resources/images/default/layout/tab-close.gif +0 -0
  251. data/public/ext-3.0.0/resources/images/default/menu/checked.gif +0 -0
  252. data/public/ext-3.0.0/resources/images/default/menu/group-checked.gif +0 -0
  253. data/public/ext-3.0.0/resources/images/default/menu/item-over.gif +0 -0
  254. data/public/ext-3.0.0/resources/images/default/menu/menu-parent.gif +0 -0
  255. data/public/ext-3.0.0/resources/images/default/menu/menu.gif +0 -0
  256. data/public/ext-3.0.0/resources/images/default/menu/unchecked.gif +0 -0
  257. data/public/ext-3.0.0/resources/images/default/panel/corners-sprite.gif +0 -0
  258. data/public/ext-3.0.0/resources/images/default/panel/left-right.gif +0 -0
  259. data/public/ext-3.0.0/resources/images/default/panel/light-hd.gif +0 -0
  260. data/public/ext-3.0.0/resources/images/default/panel/tool-sprite-tpl.gif +0 -0
  261. data/public/ext-3.0.0/resources/images/default/panel/tool-sprites.gif +0 -0
  262. data/public/ext-3.0.0/resources/images/default/panel/tools-sprites-trans.gif +0 -0
  263. data/public/ext-3.0.0/resources/images/default/panel/top-bottom.gif +0 -0
  264. data/public/ext-3.0.0/resources/images/default/panel/top-bottom.png +0 -0
  265. data/public/ext-3.0.0/resources/images/default/panel/white-corners-sprite.gif +0 -0
  266. data/public/ext-3.0.0/resources/images/default/panel/white-left-right.gif +0 -0
  267. data/public/ext-3.0.0/resources/images/default/panel/white-top-bottom.gif +0 -0
  268. data/public/ext-3.0.0/resources/images/default/progress/progress-bg.gif +0 -0
  269. data/public/ext-3.0.0/resources/images/default/qtip/bg.gif +0 -0
  270. data/public/ext-3.0.0/resources/images/default/qtip/close.gif +0 -0
  271. data/public/ext-3.0.0/resources/images/default/qtip/tip-anchor-sprite.gif +0 -0
  272. data/public/ext-3.0.0/resources/images/default/qtip/tip-sprite.gif +0 -0
  273. data/public/ext-3.0.0/resources/images/default/s.gif +0 -0
  274. data/public/ext-3.0.0/resources/images/default/shadow-c.png +0 -0
  275. data/public/ext-3.0.0/resources/images/default/shadow-lr.png +0 -0
  276. data/public/ext-3.0.0/resources/images/default/shadow.png +0 -0
  277. data/public/ext-3.0.0/resources/images/default/shared/blue-loading.gif +0 -0
  278. data/public/ext-3.0.0/resources/images/default/shared/calendar.gif +0 -0
  279. data/public/ext-3.0.0/resources/images/default/shared/glass-bg.gif +0 -0
  280. data/public/ext-3.0.0/resources/images/default/shared/hd-sprite.gif +0 -0
  281. data/public/ext-3.0.0/resources/images/default/shared/large-loading.gif +0 -0
  282. data/public/ext-3.0.0/resources/images/default/shared/left-btn.gif +0 -0
  283. data/public/ext-3.0.0/resources/images/default/shared/loading-balls.gif +0 -0
  284. data/public/ext-3.0.0/resources/images/default/shared/right-btn.gif +0 -0
  285. data/public/ext-3.0.0/resources/images/default/shared/warning.gif +0 -0
  286. data/public/ext-3.0.0/resources/images/default/sizer/e-handle-dark.gif +0 -0
  287. data/public/ext-3.0.0/resources/images/default/sizer/e-handle.gif +0 -0
  288. data/public/ext-3.0.0/resources/images/default/sizer/ne-handle-dark.gif +0 -0
  289. data/public/ext-3.0.0/resources/images/default/sizer/ne-handle.gif +0 -0
  290. data/public/ext-3.0.0/resources/images/default/sizer/nw-handle-dark.gif +0 -0
  291. data/public/ext-3.0.0/resources/images/default/sizer/nw-handle.gif +0 -0
  292. data/public/ext-3.0.0/resources/images/default/sizer/s-handle-dark.gif +0 -0
  293. data/public/ext-3.0.0/resources/images/default/sizer/s-handle.gif +0 -0
  294. data/public/ext-3.0.0/resources/images/default/sizer/se-handle-dark.gif +0 -0
  295. data/public/ext-3.0.0/resources/images/default/sizer/se-handle.gif +0 -0
  296. data/public/ext-3.0.0/resources/images/default/sizer/square.gif +0 -0
  297. data/public/ext-3.0.0/resources/images/default/sizer/sw-handle-dark.gif +0 -0
  298. data/public/ext-3.0.0/resources/images/default/sizer/sw-handle.gif +0 -0
  299. data/public/ext-3.0.0/resources/images/default/slider/slider-bg.png +0 -0
  300. data/public/ext-3.0.0/resources/images/default/slider/slider-thumb.png +0 -0
  301. data/public/ext-3.0.0/resources/images/default/slider/slider-v-bg.png +0 -0
  302. data/public/ext-3.0.0/resources/images/default/slider/slider-v-thumb.png +0 -0
  303. data/public/ext-3.0.0/resources/images/default/tabs/scroll-left.gif +0 -0
  304. data/public/ext-3.0.0/resources/images/default/tabs/scroll-right.gif +0 -0
  305. data/public/ext-3.0.0/resources/images/default/tabs/scroller-bg.gif +0 -0
  306. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-left-bg.gif +0 -0
  307. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-inactive-right-bg.gif +0 -0
  308. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-left-bg.gif +0 -0
  309. data/public/ext-3.0.0/resources/images/default/tabs/tab-btm-right-bg.gif +0 -0
  310. data/public/ext-3.0.0/resources/images/default/tabs/tab-close.gif +0 -0
  311. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.gif +0 -0
  312. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-bg.png +0 -0
  313. data/public/ext-3.0.0/resources/images/default/tabs/tab-strip-btm-bg.gif +0 -0
  314. data/public/ext-3.0.0/resources/images/default/tabs/tabs-sprite.gif +0 -0
  315. data/public/ext-3.0.0/resources/images/default/toolbar/bg.gif +0 -0
  316. data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow-light.gif +0 -0
  317. data/public/ext-3.0.0/resources/images/default/toolbar/btn-arrow.gif +0 -0
  318. data/public/ext-3.0.0/resources/images/default/toolbar/btn-over-bg.gif +0 -0
  319. data/public/ext-3.0.0/resources/images/default/toolbar/gray-bg.gif +0 -0
  320. data/public/ext-3.0.0/resources/images/default/toolbar/more.gif +0 -0
  321. data/public/ext-3.0.0/resources/images/default/toolbar/tb-bg.gif +0 -0
  322. data/public/ext-3.0.0/resources/images/default/toolbar/tb-btn-sprite.gif +0 -0
  323. data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-btn-sprite.gif +0 -0
  324. data/public/ext-3.0.0/resources/images/default/toolbar/tb-xl-sep.gif +0 -0
  325. data/public/ext-3.0.0/resources/images/default/tree/arrows.gif +0 -0
  326. data/public/ext-3.0.0/resources/images/default/tree/drop-add.gif +0 -0
  327. data/public/ext-3.0.0/resources/images/default/tree/drop-between.gif +0 -0
  328. data/public/ext-3.0.0/resources/images/default/tree/drop-no.gif +0 -0
  329. data/public/ext-3.0.0/resources/images/default/tree/drop-over.gif +0 -0
  330. data/public/ext-3.0.0/resources/images/default/tree/drop-under.gif +0 -0
  331. data/public/ext-3.0.0/resources/images/default/tree/drop-yes.gif +0 -0
  332. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus-nl.gif +0 -0
  333. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-minus.gif +0 -0
  334. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus-nl.gif +0 -0
  335. data/public/ext-3.0.0/resources/images/default/tree/elbow-end-plus.gif +0 -0
  336. data/public/ext-3.0.0/resources/images/default/tree/elbow-end.gif +0 -0
  337. data/public/ext-3.0.0/resources/images/default/tree/elbow-line.gif +0 -0
  338. data/public/ext-3.0.0/resources/images/default/tree/elbow-minus-nl.gif +0 -0
  339. data/public/ext-3.0.0/resources/images/default/tree/elbow-minus.gif +0 -0
  340. data/public/ext-3.0.0/resources/images/default/tree/elbow-plus-nl.gif +0 -0
  341. data/public/ext-3.0.0/resources/images/default/tree/elbow-plus.gif +0 -0
  342. data/public/ext-3.0.0/resources/images/default/tree/elbow.gif +0 -0
  343. data/public/ext-3.0.0/resources/images/default/tree/folder-open.gif +0 -0
  344. data/public/ext-3.0.0/resources/images/default/tree/folder.gif +0 -0
  345. data/public/ext-3.0.0/resources/images/default/tree/leaf.gif +0 -0
  346. data/public/ext-3.0.0/resources/images/default/tree/loading.gif +0 -0
  347. data/public/ext-3.0.0/resources/images/default/tree/s.gif +0 -0
  348. data/public/ext-3.0.0/resources/images/default/window/icon-error.gif +0 -0
  349. data/public/ext-3.0.0/resources/images/default/window/icon-info.gif +0 -0
  350. data/public/ext-3.0.0/resources/images/default/window/icon-question.gif +0 -0
  351. data/public/ext-3.0.0/resources/images/default/window/icon-warning.gif +0 -0
  352. data/public/ext-3.0.0/resources/images/default/window/left-corners.png +0 -0
  353. data/public/ext-3.0.0/resources/images/default/window/left-corners.psd +0 -0
  354. data/public/ext-3.0.0/resources/images/default/window/left-right.png +0 -0
  355. data/public/ext-3.0.0/resources/images/default/window/left-right.psd +0 -0
  356. data/public/ext-3.0.0/resources/images/default/window/right-corners.png +0 -0
  357. data/public/ext-3.0.0/resources/images/default/window/right-corners.psd +0 -0
  358. data/public/ext-3.0.0/resources/images/default/window/top-bottom.png +0 -0
  359. data/public/ext-3.0.0/resources/images/default/window/top-bottom.psd +0 -0
  360. data/public/ext-3.0.0/resources/images/icon/chart.gif +0 -0
  361. data/public/ext-3.0.0/src/adapter/core/ext-base-ajax.js +371 -0
  362. data/public/ext-3.0.0/src/adapter/core/ext-base-anim-extra.js +301 -0
  363. data/public/ext-3.0.0/src/adapter/core/ext-base-anim.js +477 -0
  364. data/public/ext-3.0.0/src/adapter/core/ext-base-begin.js +18 -0
  365. data/public/ext-3.0.0/src/adapter/core/ext-base-dom.js +157 -0
  366. data/public/ext-3.0.0/src/adapter/core/ext-base-end.js +21 -0
  367. data/public/ext-3.0.0/src/adapter/core/ext-base-event.js +453 -0
  368. data/public/ext-3.0.0/src/adapter/core/ext-base-point.js +17 -0
  369. data/public/ext-3.0.0/src/adapter/core/ext-base-region.js +81 -0
  370. data/public/ext-3.0.0/src/adapter/ext-base-dom-more.js +9 -0
  371. data/public/ext-3.0.0/src/adapter/jquery-bridge.js +546 -0
  372. data/public/ext-3.0.0/src/adapter/prototype-bridge.js +600 -0
  373. data/public/ext-3.0.0/src/adapter/yui-bridge.js +390 -0
  374. data/public/ext-3.0.0/src/core/CompositeElement.js +136 -0
  375. data/public/ext-3.0.0/src/core/CompositeElementLite-more.js +102 -0
  376. data/public/ext-3.0.0/src/core/DomHelper-more.js +179 -0
  377. data/public/ext-3.0.0/src/core/Element-more.js +192 -0
  378. data/public/ext-3.0.0/src/core/Element.alignment.js +370 -0
  379. data/public/ext-3.0.0/src/core/Element.dd.js +46 -0
  380. data/public/ext-3.0.0/src/core/Element.fx-more.js +152 -0
  381. data/public/ext-3.0.0/src/core/Element.insertion-more.js +52 -0
  382. data/public/ext-3.0.0/src/core/Element.keys.js +48 -0
  383. data/public/ext-3.0.0/src/core/Element.legacy.js +42 -0
  384. data/public/ext-3.0.0/src/core/Element.position-more.js +165 -0
  385. data/public/ext-3.0.0/src/core/Element.scroll-more.js +110 -0
  386. data/public/ext-3.0.0/src/core/Element.style-more.js +318 -0
  387. data/public/ext-3.0.0/src/core/Error.js +81 -0
  388. data/public/ext-3.0.0/src/core/EventManager-more.js +334 -0
  389. data/public/ext-3.0.0/src/core/Ext-more.js +669 -0
  390. data/public/ext-3.0.0/src/core/Template-more.js +115 -0
  391. data/public/ext-3.0.0/src/core/core/CompositeElementLite.js +197 -0
  392. data/public/ext-3.0.0/src/core/core/DomHelper.js +378 -0
  393. data/public/ext-3.0.0/src/core/core/DomQuery.js +826 -0
  394. data/public/ext-3.0.0/src/core/core/Element.fx.js +324 -0
  395. data/public/ext-3.0.0/src/core/core/Element.insertion.js +147 -0
  396. data/public/ext-3.0.0/src/core/core/Element.js +945 -0
  397. data/public/ext-3.0.0/src/core/core/Element.position.js +303 -0
  398. data/public/ext-3.0.0/src/core/core/Element.scroll.js +58 -0
  399. data/public/ext-3.0.0/src/core/core/Element.style.js +439 -0
  400. data/public/ext-3.0.0/src/core/core/Element.traversal.js +176 -0
  401. data/public/ext-3.0.0/src/core/core/EventManager.js +623 -0
  402. data/public/ext-3.0.0/src/core/core/Ext.js +922 -0
  403. data/public/ext-3.0.0/src/core/core/Fx.js +1115 -0
  404. data/public/ext-3.0.0/src/core/core/Template.js +185 -0
  405. data/public/ext-3.0.0/src/data/Api.js +210 -0
  406. data/public/ext-3.0.0/src/data/ArrayReader.js +102 -0
  407. data/public/ext-3.0.0/src/data/ArrayStore.js +70 -0
  408. data/public/ext-3.0.0/src/data/DataField.js +249 -0
  409. data/public/ext-3.0.0/src/data/DataProxy.js +427 -0
  410. data/public/ext-3.0.0/src/data/DataReader.js +160 -0
  411. data/public/ext-3.0.0/src/data/DataWriter.js +201 -0
  412. data/public/ext-3.0.0/src/data/DirectProxy.js +141 -0
  413. data/public/ext-3.0.0/src/data/DirectStore.js +52 -0
  414. data/public/ext-3.0.0/src/data/GroupingStore.js +139 -0
  415. data/public/ext-3.0.0/src/data/HttpProxy.js +276 -0
  416. data/public/ext-3.0.0/src/data/JsonReader.js +311 -0
  417. data/public/ext-3.0.0/src/data/JsonStore.js +49 -0
  418. data/public/ext-3.0.0/src/data/JsonWriter.js +77 -0
  419. data/public/ext-3.0.0/src/data/MemoryProxy.js +69 -0
  420. data/public/ext-3.0.0/src/data/Record.js +400 -0
  421. data/public/ext-3.0.0/src/data/ScriptTagProxy.js +279 -0
  422. data/public/ext-3.0.0/src/data/SortTypes.js +91 -0
  423. data/public/ext-3.0.0/src/data/Store.js +1492 -0
  424. data/public/ext-3.0.0/src/data/StoreMgr.js +72 -0
  425. data/public/ext-3.0.0/src/data/Tree.js +785 -0
  426. data/public/ext-3.0.0/src/data/XmlReader.js +128 -0
  427. data/public/ext-3.0.0/src/data/XmlStore.js +75 -0
  428. data/public/ext-3.0.0/src/data/XmlWriter.js +45 -0
  429. data/public/ext-3.0.0/src/data/core/Connection.js +575 -0
  430. data/public/ext-3.0.0/src/dd/DDCore.js +2992 -0
  431. data/public/ext-3.0.0/src/dd/DragSource.js +365 -0
  432. data/public/ext-3.0.0/src/dd/DragTracker.js +217 -0
  433. data/public/ext-3.0.0/src/dd/DragZone.js +133 -0
  434. data/public/ext-3.0.0/src/dd/DropTarget.js +115 -0
  435. data/public/ext-3.0.0/src/dd/DropZone.js +262 -0
  436. data/public/ext-3.0.0/src/dd/Registry.js +127 -0
  437. data/public/ext-3.0.0/src/dd/ScrollManager.js +201 -0
  438. data/public/ext-3.0.0/src/dd/StatusProxy.js +171 -0
  439. data/public/ext-3.0.0/src/debug.js +906 -0
  440. data/public/ext-3.0.0/src/direct/Direct.js +235 -0
  441. data/public/ext-3.0.0/src/direct/Event.js +34 -0
  442. data/public/ext-3.0.0/src/direct/JsonProvider.js +45 -0
  443. data/public/ext-3.0.0/src/direct/PollingProvider.js +151 -0
  444. data/public/ext-3.0.0/src/direct/Provider.js +110 -0
  445. data/public/ext-3.0.0/src/direct/RemotingProvider.js +373 -0
  446. data/public/ext-3.0.0/src/direct/Transaction.js +32 -0
  447. data/public/ext-3.0.0/src/locale/ext-lang-af.js +184 -0
  448. data/public/ext-3.0.0/src/locale/ext-lang-bg.js +278 -0
  449. data/public/ext-3.0.0/src/locale/ext-lang-ca.js +315 -0
  450. data/public/ext-3.0.0/src/locale/ext-lang-cs.js +293 -0
  451. data/public/ext-3.0.0/src/locale/ext-lang-da.js +296 -0
  452. data/public/ext-3.0.0/src/locale/ext-lang-de.js +326 -0
  453. data/public/ext-3.0.0/src/locale/ext-lang-el_GR.js +309 -0
  454. data/public/ext-3.0.0/src/locale/ext-lang-en.js +335 -0
  455. data/public/ext-3.0.0/src/locale/ext-lang-en_GB.js +315 -0
  456. data/public/ext-3.0.0/src/locale/ext-lang-es.js +318 -0
  457. data/public/ext-3.0.0/src/locale/ext-lang-fa.js +272 -0
  458. data/public/ext-3.0.0/src/locale/ext-lang-fi.js +302 -0
  459. data/public/ext-3.0.0/src/locale/ext-lang-fr.js +335 -0
  460. data/public/ext-3.0.0/src/locale/ext-lang-fr_CA.js +218 -0
  461. data/public/ext-3.0.0/src/locale/ext-lang-gr.js +175 -0
  462. data/public/ext-3.0.0/src/locale/ext-lang-he.js +292 -0
  463. data/public/ext-3.0.0/src/locale/ext-lang-hr.js +295 -0
  464. data/public/ext-3.0.0/src/locale/ext-lang-hu.js +296 -0
  465. data/public/ext-3.0.0/src/locale/ext-lang-id.js +302 -0
  466. data/public/ext-3.0.0/src/locale/ext-lang-it.js +295 -0
  467. data/public/ext-3.0.0/src/locale/ext-lang-ja.js +318 -0
  468. data/public/ext-3.0.0/src/locale/ext-lang-ko.js +267 -0
  469. data/public/ext-3.0.0/src/locale/ext-lang-lt.js +333 -0
  470. data/public/ext-3.0.0/src/locale/ext-lang-lv.js +176 -0
  471. data/public/ext-3.0.0/src/locale/ext-lang-mk.js +176 -0
  472. data/public/ext-3.0.0/src/locale/ext-lang-nl.js +323 -0
  473. data/public/ext-3.0.0/src/locale/ext-lang-no_NB.js +294 -0
  474. data/public/ext-3.0.0/src/locale/ext-lang-no_NN.js +294 -0
  475. data/public/ext-3.0.0/src/locale/ext-lang-pl.js +304 -0
  476. data/public/ext-3.0.0/src/locale/ext-lang-pt.js +260 -0
  477. data/public/ext-3.0.0/src/locale/ext-lang-pt_BR.js +302 -0
  478. data/public/ext-3.0.0/src/locale/ext-lang-pt_PT.js +298 -0
  479. data/public/ext-3.0.0/src/locale/ext-lang-ro.js +295 -0
  480. data/public/ext-3.0.0/src/locale/ext-lang-ru.js +319 -0
  481. data/public/ext-3.0.0/src/locale/ext-lang-sk.js +182 -0
  482. data/public/ext-3.0.0/src/locale/ext-lang-sl.js +176 -0
  483. data/public/ext-3.0.0/src/locale/ext-lang-sr.js +179 -0
  484. data/public/ext-3.0.0/src/locale/ext-lang-sr_RS.js +178 -0
  485. data/public/ext-3.0.0/src/locale/ext-lang-sv_SE.js +178 -0
  486. data/public/ext-3.0.0/src/locale/ext-lang-th.js +294 -0
  487. data/public/ext-3.0.0/src/locale/ext-lang-tr.js +306 -0
  488. data/public/ext-3.0.0/src/locale/ext-lang-ukr.js +258 -0
  489. data/public/ext-3.0.0/src/locale/ext-lang-vn.js +181 -0
  490. data/public/ext-3.0.0/src/locale/ext-lang-zh_CN.js +174 -0
  491. data/public/ext-3.0.0/src/locale/ext-lang-zh_TW.js +178 -0
  492. data/public/ext-3.0.0/src/state/CookieProvider.js +91 -0
  493. data/public/ext-3.0.0/src/state/Provider.js +127 -0
  494. data/public/ext-3.0.0/src/state/StateManager.js +69 -0
  495. data/public/ext-3.0.0/src/util/CSS.js +161 -0
  496. data/public/ext-3.0.0/src/util/ClickRepeater.js +200 -0
  497. data/public/ext-3.0.0/src/util/Cookies.js +96 -0
  498. data/public/ext-3.0.0/src/util/Date.js +1317 -0
  499. data/public/ext-3.0.0/src/util/Format.js +356 -0
  500. data/public/ext-3.0.0/src/util/History.js +203 -0
  501. data/public/ext-3.0.0/src/util/KeyMap.js +242 -0
  502. data/public/ext-3.0.0/src/util/KeyNav.js +161 -0
  503. data/public/ext-3.0.0/src/util/MixedCollection.js +576 -0
  504. data/public/ext-3.0.0/src/util/Observable-more.js +178 -0
  505. data/public/ext-3.0.0/src/util/TextMetrics.js +131 -0
  506. data/public/ext-3.0.0/src/util/UpdateManager.js +536 -0
  507. data/public/ext-3.0.0/src/util/XTemplate.js +379 -0
  508. data/public/ext-3.0.0/src/util/core/DelayedTask.js +68 -0
  509. data/public/ext-3.0.0/src/util/core/JSON.js +174 -0
  510. data/public/ext-3.0.0/src/util/core/Observable.js +483 -0
  511. data/public/ext-3.0.0/src/util/core/TaskMgr.js +174 -0
  512. data/public/ext-3.0.0/src/widgets/Action.js +252 -0
  513. data/public/ext-3.0.0/src/widgets/BoxComponent.js +519 -0
  514. data/public/ext-3.0.0/src/widgets/Button.js +762 -0
  515. data/public/ext-3.0.0/src/widgets/ButtonGroup.js +103 -0
  516. data/public/ext-3.0.0/src/widgets/ColorPalette.js +148 -0
  517. data/public/ext-3.0.0/src/widgets/Component.js +1540 -0
  518. data/public/ext-3.0.0/src/widgets/ComponentMgr.js +159 -0
  519. data/public/ext-3.0.0/src/widgets/Container.js +894 -0
  520. data/public/ext-3.0.0/src/widgets/CycleButton.js +188 -0
  521. data/public/ext-3.0.0/src/widgets/DataView.js +749 -0
  522. data/public/ext-3.0.0/src/widgets/DatePicker.js +771 -0
  523. data/public/ext-3.0.0/src/widgets/Editor.js +385 -0
  524. data/public/ext-3.0.0/src/widgets/Layer.js +466 -0
  525. data/public/ext-3.0.0/src/widgets/LoadMask.js +123 -0
  526. data/public/ext-3.0.0/src/widgets/MessageBox.js +626 -0
  527. data/public/ext-3.0.0/src/widgets/PagingToolbar.js +502 -0
  528. data/public/ext-3.0.0/src/widgets/Panel.js +1772 -0
  529. data/public/ext-3.0.0/src/widgets/PanelDD.js +154 -0
  530. data/public/ext-3.0.0/src/widgets/ProgressBar.js +289 -0
  531. data/public/ext-3.0.0/src/widgets/Resizable.js +760 -0
  532. data/public/ext-3.0.0/src/widgets/Shadow.js +192 -0
  533. data/public/ext-3.0.0/src/widgets/Slider.js +426 -0
  534. data/public/ext-3.0.0/src/widgets/SplitBar.js +436 -0
  535. data/public/ext-3.0.0/src/widgets/SplitButton.js +124 -0
  536. data/public/ext-3.0.0/src/widgets/TabPanel.js +1100 -0
  537. data/public/ext-3.0.0/src/widgets/Toolbar.js +781 -0
  538. data/public/ext-3.0.0/src/widgets/Viewport.js +124 -0
  539. data/public/ext-3.0.0/src/widgets/Window.js +941 -0
  540. data/public/ext-3.0.0/src/widgets/WindowManager.js +187 -0
  541. data/public/ext-3.0.0/src/widgets/chart/Chart.js +721 -0
  542. data/public/ext-3.0.0/src/widgets/chart/EventProxy.js +20 -0
  543. data/public/ext-3.0.0/src/widgets/chart/FlashComponent.js +117 -0
  544. data/public/ext-3.0.0/src/widgets/chart/swfobject.js +783 -0
  545. data/public/ext-3.0.0/src/widgets/form/Action.js +626 -0
  546. data/public/ext-3.0.0/src/widgets/form/BasicForm.js +735 -0
  547. data/public/ext-3.0.0/src/widgets/form/Checkbox.js +177 -0
  548. data/public/ext-3.0.0/src/widgets/form/CheckboxGroup.js +419 -0
  549. data/public/ext-3.0.0/src/widgets/form/Combo.js +1232 -0
  550. data/public/ext-3.0.0/src/widgets/form/DateField.js +389 -0
  551. data/public/ext-3.0.0/src/widgets/form/DisplayField.js +98 -0
  552. data/public/ext-3.0.0/src/widgets/form/Field.js +640 -0
  553. data/public/ext-3.0.0/src/widgets/form/FieldSet.js +305 -0
  554. data/public/ext-3.0.0/src/widgets/form/Form.js +335 -0
  555. data/public/ext-3.0.0/src/widgets/form/Hidden.js +39 -0
  556. data/public/ext-3.0.0/src/widgets/form/HtmlEditor.js +1179 -0
  557. data/public/ext-3.0.0/src/widgets/form/Label.js +64 -0
  558. data/public/ext-3.0.0/src/widgets/form/NumberField.js +139 -0
  559. data/public/ext-3.0.0/src/widgets/form/Radio.js +81 -0
  560. data/public/ext-3.0.0/src/widgets/form/RadioGroup.js +116 -0
  561. data/public/ext-3.0.0/src/widgets/form/TextArea.js +117 -0
  562. data/public/ext-3.0.0/src/widgets/form/TextField.js +491 -0
  563. data/public/ext-3.0.0/src/widgets/form/TimeField.js +146 -0
  564. data/public/ext-3.0.0/src/widgets/form/TriggerField.js +328 -0
  565. data/public/ext-3.0.0/src/widgets/form/VTypes.js +135 -0
  566. data/public/ext-3.0.0/src/widgets/grid/AbstractSelectionModel.js +57 -0
  567. data/public/ext-3.0.0/src/widgets/grid/CellSelectionModel.js +262 -0
  568. data/public/ext-3.0.0/src/widgets/grid/CheckboxSelectionModel.js +103 -0
  569. data/public/ext-3.0.0/src/widgets/grid/Column.js +406 -0
  570. data/public/ext-3.0.0/src/widgets/grid/ColumnDD.js +199 -0
  571. data/public/ext-3.0.0/src/widgets/grid/ColumnModel.js +592 -0
  572. data/public/ext-3.0.0/src/widgets/grid/ColumnSplitDD.js +62 -0
  573. data/public/ext-3.0.0/src/widgets/grid/EditorGrid.js +291 -0
  574. data/public/ext-3.0.0/src/widgets/grid/GridDD.js +95 -0
  575. data/public/ext-3.0.0/src/widgets/grid/GridEditor.js +21 -0
  576. data/public/ext-3.0.0/src/widgets/grid/GridPanel.js +952 -0
  577. data/public/ext-3.0.0/src/widgets/grid/GridView.js +1776 -0
  578. data/public/ext-3.0.0/src/widgets/grid/GroupingView.js +517 -0
  579. data/public/ext-3.0.0/src/widgets/grid/PropertyGrid.js +370 -0
  580. data/public/ext-3.0.0/src/widgets/grid/RowNumberer.js +61 -0
  581. data/public/ext-3.0.0/src/widgets/grid/RowSelectionModel.js +530 -0
  582. data/public/ext-3.0.0/src/widgets/layout/AbsoluteLayout.js +82 -0
  583. data/public/ext-3.0.0/src/widgets/layout/AccordionLayout.js +177 -0
  584. data/public/ext-3.0.0/src/widgets/layout/AnchorLayout.js +200 -0
  585. data/public/ext-3.0.0/src/widgets/layout/BorderLayout.js +1108 -0
  586. data/public/ext-3.0.0/src/widgets/layout/BoxLayout.js +417 -0
  587. data/public/ext-3.0.0/src/widgets/layout/CardLayout.js +127 -0
  588. data/public/ext-3.0.0/src/widgets/layout/ColumnLayout.js +130 -0
  589. data/public/ext-3.0.0/src/widgets/layout/ContainerLayout.js +215 -0
  590. data/public/ext-3.0.0/src/widgets/layout/FitLayout.js +48 -0
  591. data/public/ext-3.0.0/src/widgets/layout/FormLayout.js +266 -0
  592. data/public/ext-3.0.0/src/widgets/layout/TableLayout.js +194 -0
  593. data/public/ext-3.0.0/src/widgets/list/ColumnResizer.js +123 -0
  594. data/public/ext-3.0.0/src/widgets/list/ListView.js +357 -0
  595. data/public/ext-3.0.0/src/widgets/list/Sorter.js +70 -0
  596. data/public/ext-3.0.0/src/widgets/menu/BaseItem.js +160 -0
  597. data/public/ext-3.0.0/src/widgets/menu/CheckItem.js +114 -0
  598. data/public/ext-3.0.0/src/widgets/menu/ColorMenu.js +72 -0
  599. data/public/ext-3.0.0/src/widgets/menu/DateMenu.js +90 -0
  600. data/public/ext-3.0.0/src/widgets/menu/Item.js +211 -0
  601. data/public/ext-3.0.0/src/widgets/menu/Menu.js +733 -0
  602. data/public/ext-3.0.0/src/widgets/menu/MenuMgr.js +211 -0
  603. data/public/ext-3.0.0/src/widgets/menu/Separator.js +46 -0
  604. data/public/ext-3.0.0/src/widgets/menu/TextItem.js +46 -0
  605. data/public/ext-3.0.0/src/widgets/tips/QuickTip.js +207 -0
  606. data/public/ext-3.0.0/src/widgets/tips/QuickTips.js +159 -0
  607. data/public/ext-3.0.0/src/widgets/tips/Tip.js +157 -0
  608. data/public/ext-3.0.0/src/widgets/tips/ToolTip.js +492 -0
  609. data/public/ext-3.0.0/src/widgets/tree/AsyncTreeNode.js +114 -0
  610. data/public/ext-3.0.0/src/widgets/tree/TreeDragZone.js +82 -0
  611. data/public/ext-3.0.0/src/widgets/tree/TreeDropZone.js +321 -0
  612. data/public/ext-3.0.0/src/widgets/tree/TreeEditor.js +160 -0
  613. data/public/ext-3.0.0/src/widgets/tree/TreeEventModel.js +169 -0
  614. data/public/ext-3.0.0/src/widgets/tree/TreeFilter.js +114 -0
  615. data/public/ext-3.0.0/src/widgets/tree/TreeLoader.js +342 -0
  616. data/public/ext-3.0.0/src/widgets/tree/TreeNode.js +546 -0
  617. data/public/ext-3.0.0/src/widgets/tree/TreeNodeUI.js +633 -0
  618. data/public/ext-3.0.0/src/widgets/tree/TreePanel.js +918 -0
  619. data/public/ext-3.0.0/src/widgets/tree/TreeSelectionModel.js +315 -0
  620. data/public/ext-3.0.0/src/widgets/tree/TreeSorter.js +106 -0
  621. data/public/js/ext-portal.js +235 -0
  622. data/public/js/global.js +7 -0
  623. data/public/js/outerframe.js +47 -0
  624. data/public/js/portal.js +713 -0
  625. data/public/js/test_chart.js +152 -0
  626. data/test/config.rb +62 -0
  627. data/test/config/hosts.yaml +5 -0
  628. data/test/config/log.yaml +1 -0
  629. data/test/config/memcache.yaml +5 -0
  630. data/test/exception.rb +39 -0
  631. data/test/method_missing.rb +14 -0
  632. data/test/module.rb +39 -0
  633. data/test/remote_lmp.rb +126 -0
  634. data/test/sinatra.rb +29 -0
  635. data/test/sinatra_base.rb +16 -0
  636. metadata +690 -0
@@ -0,0 +1,7 @@
1
+ /*
2
+ * To change this template, choose Tools | Templates
3
+ * and open the template in the editor.
4
+ */
5
+
6
+ Glb = {}
7
+ Glb.portal = {}
@@ -0,0 +1,47 @@
1
+ /*
2
+ * To change this template, choose Tools | Templates
3
+ * and open the template in the editor.
4
+ */
5
+
6
+ function outer_frame(){
7
+ Glb.outer_center = new Ext.Panel({
8
+ id:'outer_center',
9
+ //title:'Outer center',
10
+ region:'center',
11
+ // autoScroll :true
12
+ });
13
+
14
+ Glb.outer_north = new Ext.Panel({
15
+ xtype:'panel',
16
+ region: 'north',
17
+ id:'outer_north',
18
+ layout:'anchor',
19
+ height:70,
20
+ //autoHeight: true,
21
+ tbar: [ {hidden:true, id:'glb_outer_north_tbar'} ],
22
+ border: true
23
+ });
24
+
25
+ Glb.outer_south = new Ext.Panel({
26
+ region: 'south',
27
+ //title: 'Information',
28
+ autoLoad:'/help',
29
+ id:'outer_south',
30
+ collapsible: true,
31
+ split: true,
32
+ height: 100,
33
+ minHeight: 100,
34
+ collapsed: true
35
+ });
36
+
37
+ Glb.outer_west = new Ext.Panel({
38
+ region: 'west',
39
+ //title: 'Controll Panel',
40
+ layout : 'accordion',
41
+ id:'outer_west',
42
+ collapsible: true,
43
+ width:200,
44
+ split: true
45
+ });
46
+
47
+ }
@@ -0,0 +1,713 @@
1
+ function portal_init(argument) {
2
+ Ext.chart.Chart.CHART_URL = '/ext-3.0.0/resources/charts.swf'
3
+ /*Portal TabPanel*/
4
+ /*this panel contains some elements about all the hosts info.*/
5
+ /*click one of the hosts list in the grid,the certain host panel will show.*/
6
+
7
+ /**
8
+ * @class Ext.ux.SliderTip
9
+ * @extends Ext.Tip
10
+ * Simple plugin for using an Ext.Tip with a slider to show the slider value
11
+ */
12
+ Ext.ux.SliderTip = Ext.extend(Ext.Tip, {
13
+ minWidth: 10,
14
+ offsets : [5, 15],
15
+ init : function(slider){
16
+ slider.on('dragstart', this.onSlide, this);
17
+ slider.on('drag', this.onSlide, this);
18
+ slider.on('dragend', this.hide, this);
19
+ slider.on('destroy', this.destroy, this);
20
+ },
21
+
22
+ onSlide : function(slider){
23
+ this.show();
24
+ this.body.update(this.getText(slider));
25
+ this.doAutoWidth();
26
+ this.el.alignTo(slider.thumb, 'b-t?', this.offsets);
27
+ },
28
+
29
+ getText : function(slider){
30
+ return "Request Interval will be set req/"+String(slider.getValue())+'second';
31
+ }
32
+ });
33
+
34
+ Glb.portal.hosts_setInterval = 15000;
35
+ Glb.portal.hosts_setInterval_handler = {};
36
+
37
+ Glb.portal.tab_panel = new Ext.TabPanel({
38
+ title:'Portal',
39
+ activeTab: 0,
40
+ height:500,
41
+ defaults:{ autoScroll:true },
42
+ listeners:{
43
+ close:function(panel) {
44
+ // body...
45
+ for(x in Glb.portal.hosts_setInterval_handler){
46
+ window.clearInterval(Glb.portal.hosts_setInterval_handler[x]['interval_id']);
47
+ }
48
+ }
49
+ },
50
+ tbar:['->',
51
+ new Ext.Slider({
52
+ // renderTo: 'custom-tip-slider',
53
+ width: 200,
54
+ increment: 1,
55
+ minValue: 10,
56
+ maxValue: 20,
57
+ listeners:{
58
+ change:function(slider,e) {
59
+ // body...
60
+ var textItem = Ext.getCmp("Glb_portal_tab_panel_tbtext");
61
+ textItem.setText(slider.getValue() + " sec");
62
+ },
63
+ changecomplete:function(slid,value) {
64
+ // reset hosts interval
65
+ // such as hosts grid
66
+ Glb.portal.hosts_setInterval = value*1000;
67
+ for(x in Glb.portal.hosts_setInterval_handler){
68
+ window.clearInterval(Glb.portal.hosts_setInterval_handler[x]['interval_id']);
69
+ Glb.portal.hosts_setInterval_handler[x]['interval_id'] = setInterval("Glb.portal.hosts_setInterval_handler[x]['interval_fn']()",Glb.portal.hosts_setInterval);
70
+ }
71
+ // reset host's elements interval
72
+ // such as cpu,loadavg etc.
73
+ Glb.portal.host_setInterval = value*1000;
74
+ for(x in Glb.portal.host_setInterval_handler){
75
+ window.clearInterval(Glb.portal.host_setInterval_handler[x]['interval_id']);
76
+ Glb.portal.host_setInterval_handler[x]['interval_id'] = setInterval("Glb.portal.host_setInterval_handler[x]['interval_fn']()",Glb.portal.host_setInterval);
77
+ }
78
+ }
79
+ },
80
+ plugins: new Ext.ux.SliderTip({
81
+ getText: function(slider){
82
+ return String.format('<b>Refresh per {0} sec</b>', slider.getValue());
83
+ }
84
+ })
85
+ }),' ',{
86
+ // Glb.portal.host_setInterval = 15000;
87
+ // Glb.portal.hosts_setInterval = 15000;
88
+ xtype: 'tbtext', text: Glb.portal.hosts_setInterval/1000 + " sec (Default)",id:'Glb_portal_tab_panel_tbtext'
89
+ },' ',{
90
+ xtype:'button',
91
+ text:'STOP',
92
+ icon:'stop-icon',
93
+ ctCls: 'x-btn-text-icon',
94
+ listeners:{
95
+ click:function() {
96
+ // body...
97
+ for(x in Glb.portal.hosts_setInterval_handler){
98
+ window.clearInterval(Glb.portal.hosts_setInterval_handler[x]['interval_id']);
99
+ }
100
+ for(x in Glb.portal.host_setInterval_handler){
101
+ window.clearInterval(Glb.portal.host_setInterval_handler[x]['interval_id']);
102
+ }
103
+ }
104
+ }
105
+ },' ','-',' ',{
106
+ xtype:'button',
107
+ text:'START',
108
+ icon:'start-icon',
109
+ ctCls: 'x-btn-text-icon',
110
+ listeners:{
111
+ click:function() {
112
+ for(x in Glb.portal.hosts_setInterval_handler){
113
+ window.clearInterval(Glb.portal.hosts_setInterval_handler[x]['interval_id']);
114
+ Glb.portal.hosts_setInterval_handler[x]['interval_id'] = setInterval("Glb.portal.hosts_setInterval_handler[x]['interval_fn']()",Glb.portal.hosts_setInterval);
115
+ }
116
+ for(x in Glb.portal.host_setInterval_handler){
117
+ window.clearInterval(Glb.portal.host_setInterval_handler[x]['interval_id']);
118
+ Glb.portal.host_setInterval_handler[x]['interval_id'] = setInterval("Glb.portal.host_setInterval_handler[x]['interval_fn']()",Glb.portal.host_setInterval);
119
+ }
120
+ }
121
+ }
122
+ }]
123
+ });
124
+
125
+ /*Hosts Panel*/
126
+ /*it contains:*/
127
+ /*Glb.portal.hosts_grid_panel,and other panels which haven't complete.*/
128
+
129
+ Glb.portal.hosts_panel = new Ext.Panel({
130
+ title:'Hosts'
131
+ });
132
+
133
+ Glb.portal.hosts_tree = new Ext.tree.TreePanel({
134
+ //xtype: 'treepanel',
135
+ id: 'Glb_portal_hosts_tree',
136
+ title: 'Monitor List',
137
+ // margins: '2 2 0 2',
138
+ width:150,
139
+ animate:true,
140
+ autoScroll: true,
141
+ rootVisible: false,
142
+ root: new Ext.tree.AsyncTreeNode({expanded:true}),
143
+ tools:[{
144
+ id:'refresh',
145
+ on:{
146
+ click: function(){
147
+ var tree = Glb.portal.hosts_tree;
148
+ tree.body.mask('Loading', 'x-mask-loading');
149
+ tree.root.reload();
150
+ tree.root.collapse(true, false);
151
+ setTimeout(function(){
152
+ tree.body.unmask();
153
+ tree.root.expand(true, true);
154
+ }, 1000);
155
+ }
156
+ }
157
+ }],
158
+ loader: new Ext.tree.TreeLoader({
159
+ dataUrl:'/hosts/tree/',
160
+ requestMethod:'GET'
161
+ })
162
+ });
163
+
164
+ Glb.portal.hosts_tree.on('click',function(node,e) {
165
+ Glb.portal.show_host_panel(node.text);
166
+ });
167
+ /*
168
+ Glb.portal.traffic_monitor_panel = new Ext.Panel({
169
+ title:'Traffic Monitor',
170
+ layout:'form',
171
+ items:[{
172
+ xtype:"panel",
173
+ layout:'column',
174
+ tbar:[{
175
+ xtype:'label',
176
+ id:'Glb_portal_traffic_monitor_panel_label',
177
+ text:'OFF'
178
+ },'->',{
179
+ xtype:"button",
180
+ text:"Monitor",
181
+ listeners:{
182
+ click:function() {
183
+ // body...
184
+ if(Glb.portal.traffic_monitor_switch === true){
185
+ Glb.portal.traffic_monitor_switch = false;
186
+ Ext.getCmp("Glb_portal_traffic_monitor_panel_label").setText("OFF")
187
+ }else{
188
+ Glb.portal.traffic_monitor_switch = true;
189
+ Ext.getCmp("Glb_portal_traffic_monitor_panel_label").setText("ON")
190
+ }
191
+ }
192
+ }
193
+ }]
194
+ },{
195
+ xtype:"textfield",
196
+ id:"Glb_portal_traffic_monitor_panel_textarea",
197
+ autoScroll:true,
198
+ width:'100%',
199
+ height:'100%'
200
+ // anchor : '100%'
201
+ }
202
+ ]
203
+ });
204
+ */
205
+ Glb.portal.hosts_grid_panel = new Ext.Panel({
206
+ title:'Hosts Grid',
207
+ listeners:{
208
+ activate:function(panel) {
209
+ // body...
210
+ interval_fn = function(argument) {
211
+ Glb.portal.hosts_grid_store.reload()
212
+ };
213
+ Glb.portal.hosts_setInterval_handler[panel.id] = {'interval_id':setInterval("interval_fn()",Glb.portal.hosts_setInterval),'interval_fn':interval_fn};
214
+ },
215
+ deactivate:function(panel) {
216
+ // clear interval
217
+ window.clearInterval(Glb.portal.hosts_setInterval_handler[panel.id]['interval_id']);
218
+ },
219
+ render:function(panel) {
220
+ // body...
221
+ interval_fn = function(argument) {
222
+ Glb.portal.hosts_grid_store.reload()
223
+ };
224
+ Glb.portal.hosts_setInterval_handler[panel.id] = {'interval_id':setInterval("interval_fn()",Glb.portal.hosts_setInterval),'interval_fn':interval_fn};
225
+ }
226
+ },
227
+ });
228
+
229
+ Glb.portal.hosts_grid_store = new Ext.data.Store({
230
+ proxy: new Ext.data.HttpProxy({url: '/hosts/grid/', method: 'GET'}),
231
+ autoLoad: {params:{start: 0, limit: 10}},
232
+ reader: new Ext.data.JsonReader({
233
+ root: "root",
234
+ id:'Glb_portal_host_grid_store',
235
+ totalProperty:'totalCount'
236
+ }, [
237
+ {name: 'ip', mapping: 'ip'},
238
+ {name: 'name', mapping: 'hostname'},
239
+ {name: 'cpu', mapping: 'cpu'},
240
+ {name: 'load', mapping: 'loadavg'},
241
+ {name: 'mem_total', mapping: 'mem_total'},
242
+ {name: 'mem_free', mapping: 'mem_free'},
243
+ {name: 'uptime_total', mapping: 'uptime_total'},
244
+ {name: 'uptime_idle', mapping: 'uptime_idle'},
245
+ {name: 'disk_size', mapping: 'disk_size'},
246
+ {name: 'disk_use', mapping: 'disk_use'}
247
+ ])
248
+ });
249
+
250
+ Glb.portal.hosts_grid = new Ext.grid.GridPanel({
251
+ id:'Glb_portal_host_grid',
252
+ store:Glb.portal.hosts_grid_store,
253
+ animate:true,
254
+ autoWidth:true,
255
+ autoHeigth:true,
256
+ autoScroll:true,
257
+ // height: 400,
258
+ columns: [
259
+ {id:'ip',header: "IP", width: 200, sortable: true, dataIndex: 'ip',hidden:false},
260
+ {id:'name',header: "HostName", width: 80, sortable: true, dataIndex: 'name'},
261
+ {id:'cpu',header: "CPU", width: 60, sortable: true, dataIndex: 'cpu'},
262
+ {id:'load',header: "Load", width: 60, sortable: true, dataIndex: 'load'},
263
+ {id:'mem_total',header: "Memory Total", width: 80, sortable: true, dataIndex: 'mem_total'},
264
+ {id:'mem_free',header: "Memory Free", width: 80, sortable: true, dataIndex: 'mem_free'},
265
+ {id:'uptime_total',header: "Uptime Total", width: 80, sortable: true, dataIndex: 'uptime_total'},
266
+ {id:'uptime_idle',header: "Uptime Idle", width: 80, sortable: true, dataIndex: 'uptime_idle'},
267
+ {id:'disk_size',header: "Disk Total", width: 80, sortable: true, dataIndex: 'disk_size'},
268
+ {id:'disk_use',header: "Disk Used", width: 60, sortable: true, dataIndex: 'disk_use'}
269
+ ],
270
+ frame:true,
271
+ region: 'center',
272
+ tools:[{
273
+ id:'refresh',//Glb_portal_host_grid_refresh
274
+ qtip: 'Refresh form Data',
275
+ handler: function(event, toolEl, panel){
276
+ Glb.portal.hosts_grid.body.mask('ReLoading', 'x-mask-loading');
277
+ Glb.portal.hosts_grid_store.reload();
278
+ setTimeout(function(){
279
+ Glb.portal.hosts_grid.body.unmask();
280
+ }, 1000);
281
+ }
282
+ }],
283
+ bbar: new Ext.PagingToolbar({
284
+ pageSize: 10,
285
+ store: Glb.portal.hosts_grid_store,
286
+ displayInfo: true,
287
+ displayMsg: '从 {0} - {1} /总共 {2}',
288
+ emptyMsg: "空记录"
289
+ })
290
+ });
291
+
292
+ Glb.portal.hosts_grid.on('rowdblclick',function(grid, rowIndex, e) {
293
+ var row = Glb.portal.hosts_grid_store.getById(Glb.portal.hosts_grid_store.data.items[rowIndex].id);
294
+ var name = row.get("name");
295
+ var ip = row.get("ip");
296
+ Glb.portal.show_host_panel(ip,name);
297
+ // alert("rowIndex:"+rowIndex+";ip:"+ip);
298
+ });
299
+
300
+ Glb.portal.hosts_grid.on('render',function(){
301
+ if(Glb.portal.hosts_grid_panel.height){
302
+ Glb.portal.hosts_grid.height = Glb.portal.hosts_grid_panel.height - 10;
303
+ }else{
304
+ Glb.portal.hosts_grid.autoHeight = true;
305
+ }
306
+
307
+ Glb.portal.hosts_grid.doLayout();
308
+ });
309
+
310
+ Glb.portal.hosts_grid_panel.add(Glb.portal.hosts_grid);
311
+ Glb.portal.hosts_panel.add(Glb.portal.hosts_grid_panel);
312
+ Glb.portal.tab_panel.add(Glb.portal.hosts_panel);
313
+
314
+ /*Certain Host Panel*/
315
+ /*when double click one of hosts grid*/
316
+ /*this panel will be added to the Portal TabPanel*/
317
+
318
+ Glb.portal.host_setInterval = 15000;
319
+ /*this handler object is a pool for interval handlers*/
320
+ Glb.portal.host_setInterval_handler = {};
321
+
322
+ Glb.portal.show_host_panel = function(ip,name){
323
+ /*generate a certain host panel*/
324
+ /*and insert it to the Portal TabPanel*/
325
+ id = "Glb_portal_a_certain_host_panel"+"_ip_"+ip
326
+ if(Ext.getCmp(id)){
327
+ // if the tab exist,
328
+ // then do nothing.
329
+ // Glb.portal.tab_panel.activeTab(id);
330
+ }else{
331
+ Glb.portal.tab_panel.add(Glb.portal.generate_a_certain_host_panel(ip,name));
332
+ Glb.portal.tab_panel.doLayout();
333
+ }
334
+ Glb.portal.tab_panel.activate(id);
335
+ };
336
+
337
+ Glb.portal.chart_height = 200;
338
+ Glb.portal.chart_width = 200;
339
+
340
+ Glb.portal.generate_a_certain_host_panel = function(ip,name){
341
+ interval_fn = function(argument) {
342
+ try{
343
+ // element such as:cpu,loadavg,disk,memory's datastore.reload()
344
+ // then repaint the graph report.
345
+ // Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_chart").store.reload();
346
+ // Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_chart").store.reload();
347
+
348
+ var cpu = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_cpu_chart");
349
+ var load = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_load_chart");
350
+ /*
351
+ Ext.Ajax.request({
352
+ url: '/host/proc/cpu/?ip='+ip,
353
+ // response.responseText => {value:72, time: 1253419592}
354
+ success: function(response){Glb.portal.insert_a_new_record_to_linechart(cpu,response.responseText)},
355
+ failure: function(){Ext.Msg.alert('Attention!','Can\'t get cpu info from host:'+ip)}
356
+ });
357
+ Ext.Ajax.request({
358
+ url: '/host/proc/loadavg/?ip='+ip,
359
+ // response.responseText => {value:6.3, time: 1253419592}
360
+ success: function(response){Glb.portal.insert_a_new_record_to_linechart(load,response.responseText)},
361
+ failure: function(){Ext.Msg.alert('Attention!','Can\'t get load info from host:'+ip)}
362
+ });
363
+ */
364
+
365
+ /*
366
+ add 2 requests in one.
367
+ */
368
+ Ext.Ajax.request({
369
+ url: '/host/proc/line_chart_store/?ip='+ip,
370
+ success: function(response){
371
+ /*
372
+ if(Glb.portal.traffic_monitor_switch === true){
373
+ var textarea = Ext.getCmp("Glb_portal_traffic_monitor_panel_textarea");
374
+ textarea.setValue(response.responseText +'\n'+ textarea.getValue());
375
+ }
376
+ */
377
+ // eval("var data = "+response.responseText);
378
+ var data = Ext.util.JSON.decode(response.responseText);
379
+ Glb.portal.insert_a_new_record_to_linechart(cpu,Ext.util.JSON.encode(data["cpu"]));
380
+ Glb.portal.insert_a_new_record_to_linechart(load,Ext.util.JSON.encode(data["load"]));
381
+ },
382
+ failure: function(){Ext.Msg.alert('Attention!','Can\'t get line_chart_store info from host:'+ip)}
383
+ });
384
+
385
+ processes = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_processes_info");
386
+ processes.store.reload();
387
+ }catch(e){}
388
+ };
389
+
390
+ return new Ext.Panel({
391
+ xtype:'portal',
392
+ title:ip+" Monitor",
393
+ layout:'table',
394
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip,
395
+ closable:true,
396
+ layoutConfig:{
397
+ columns:2
398
+ },
399
+ autoDestroy:true,
400
+ listeners:{
401
+ activate:function(panel) {
402
+ // body...
403
+ // move interval_fn out.
404
+ Glb.portal.host_setInterval_handler[panel.id] = {'interval_id':setInterval("interval_fn()",Glb.portal.host_setInterval),'interval_fn':interval_fn};
405
+ Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_chart").store.reload();
406
+ Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_chart").store.reload();
407
+ },
408
+ close:function(panel) {
409
+ // body...
410
+ window.clearInterval(Glb.portal.host_setInterval_handler[panel.id]['interval_id']);
411
+ },
412
+ deactivate:function(panel) {
413
+ // body...
414
+ }
415
+ },
416
+ items:[{
417
+ xtype: 'treepanel',
418
+ id: 'Glb_portal_host_pids_tree',
419
+ title: 'Active Pids List',
420
+ // margins: '2 2 0 2',
421
+ // rowspan:2,
422
+ width:150,
423
+ height:Glb.portal.chart_height*2+15,
424
+ // autoHeight:true,
425
+ animate:true,
426
+ autoScroll: true,
427
+ rootVisible: false,
428
+ root: new Ext.tree.AsyncTreeNode({expanded:true}),
429
+ tools:[{
430
+ id:'refresh',
431
+ on:{
432
+ click: function(){
433
+ var tree = Ext.getCmp('Glb_portal_host_pids_tree');
434
+ tree.body.mask('Loading', 'x-mask-loading');
435
+ tree.root.reload();
436
+ tree.root.collapse(true, false);
437
+ setTimeout(function(){
438
+ tree.body.unmask();
439
+ tree.root.expand(true, true);
440
+ }, 1000);
441
+ }
442
+ }
443
+ }],
444
+ loader: new Ext.tree.TreeLoader({
445
+ dataUrl:'/host/proc/pids/?ip='+ip,
446
+ requestMethod:'GET'
447
+ })
448
+ },{ xtype:'portal',
449
+ margins:'5 5 5 5',
450
+ listeners:{
451
+ render:function(p,e){
452
+ // var tree = Ext.getCmp("Glb_portal_host_pids_tree")
453
+ // tree.setHeight(p.getHeight());
454
+ }
455
+ },
456
+ // rowspan:2,
457
+ // colspan:2,
458
+ items:[{
459
+ columnWidth:.50,
460
+ style:'padding:5px 5px 5px 5px',
461
+ items:[{
462
+ xtype:'panel',
463
+ iconCls:'chart',
464
+ title:'CPU',
465
+ width: Glb.portal.chart_height,
466
+ height: Glb.portal.chart_width,
467
+ // offsets:'5,40,5,5',
468
+ borderWidth:1,
469
+ items:[{
470
+ /*cpu line graph report*/
471
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_cpu_chart",
472
+ xtype: 'linechart',
473
+ url:'/ext-3.0.0/resources/charts.swf',
474
+ store: new Ext.data.JsonStore({
475
+ fields:['value', 'time'],
476
+ data: [
477
+ //{value:72, time: 1253419592}
478
+ ]
479
+ }),
480
+ xField: 'time',
481
+ yField: 'value',
482
+ listeners: {
483
+ itemclick: function(o){
484
+ var rec = store.getAt(o.index);
485
+ Ext.example.msg('Item Selected', 'You chose {0}.', rec.get('value'));
486
+ }
487
+ }
488
+ }]},{
489
+ xype:'panel',
490
+ iconCls:'chart',
491
+ title:'Load',
492
+ width: Glb.portal.chart_height,
493
+ height: Glb.portal.chart_width,
494
+ // offsets:'5,40,5,5',
495
+ borderWidth:1,
496
+ items:[{
497
+ /*load line graph report*/
498
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_load_chart",
499
+ xtype: 'linechart',
500
+ url:'/ext-3.0.0/resources/charts.swf',
501
+ store: new Ext.data.JsonStore({
502
+ fields:['value', 'time'],
503
+ data: [
504
+ //{value:6.3, time: 1253419592}
505
+ ]
506
+ }),
507
+ xField: 'time',
508
+ yField: 'value',
509
+ listeners: {
510
+ itemclick: function(o){
511
+ var rec = store.getAt(o.index);
512
+ EExt.example.msg('Item Selected', 'You chose {0}.', rec.get('value'));
513
+ }
514
+ }
515
+ }]}]
516
+ },{
517
+ columnWidth:.50,
518
+ style:'padding:5px 5px 5px 5px',
519
+ items:[{
520
+ xtype:'panel',
521
+ iconCls:'chart',
522
+ title:'Memory',
523
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_panel",
524
+ width: Glb.portal.chart_height,
525
+ height: Glb.portal.chart_width,
526
+ // offsets:'5,40,5,5',
527
+ borderWidth:1,
528
+ tools:[{
529
+ id:'refresh',
530
+ on:{
531
+ click: function(obj){
532
+ var chart = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_chart");
533
+ var panel = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_panel");
534
+ panel.body.mask('Loading', 'x-mask-loading');
535
+ chart.store.reload();
536
+ setTimeout(function(){
537
+ panel.body.unmask();
538
+ }, 1000);
539
+ }
540
+ },
541
+ qtip:'Refresh Memory Chart.'
542
+ }],
543
+ items:[{
544
+ /*memory pie graph report*/
545
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_memory_chart",
546
+ url:'/ext-3.0.0/resources/charts.swf',
547
+ store: new Ext.data.Store({
548
+ proxy: new Ext.data.HttpProxy({url: '/host/proc/meminfo/?ip='+ip, method: 'GET'}),
549
+ reader: new Ext.data.JsonReader({
550
+ root: "root",
551
+ fields:
552
+ [
553
+ {name: 'type', mapping: 'type'},
554
+ {name: 'count', mapping: 'count'}
555
+ ]
556
+ })
557
+ }),
558
+ xtype: 'piechart',
559
+ dataField: 'count',
560
+ categoryField: 'type',
561
+ //extra styles get applied to the chart defaults
562
+ extraStyle:{
563
+ legend:
564
+ {
565
+ display: 'bottom',
566
+ padding: 5,
567
+ font:
568
+ {
569
+ family: 'Tahoma',
570
+ size: 13
571
+ }
572
+ }
573
+ }
574
+ }]},{
575
+ xtype:'panel',
576
+ iconCls:'chart',
577
+ title:'Disk',
578
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_panel",
579
+ width: Glb.portal.chart_height,
580
+ height: Glb.portal.chart_width,
581
+ // offsets:'5,40,5,5',
582
+ borderWidth:1,
583
+ tools:[{
584
+ id:'refresh',
585
+ on:{
586
+ click: function(obj){
587
+ var chart = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_chart");
588
+ var panel = Ext.getCmp("Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_panel");
589
+ panel.body.mask('Loading', 'x-mask-loading');
590
+ chart.store.reload();
591
+ setTimeout(function(){
592
+ panel.body.unmask();
593
+ }, 1000);
594
+ }
595
+ },
596
+ qtip:'Refresh Disk Chart.'
597
+ }],
598
+ items:[{
599
+ /*disk pie graph report*/
600
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_disk_chart",
601
+ url:'/ext-3.0.0/resources/charts.swf',
602
+ store: new Ext.data.Store({
603
+ proxy: new Ext.data.HttpProxy({url: '/host/proc/df/?ip='+ip, method: 'GET'}),
604
+ reader: new Ext.data.JsonReader({
605
+ root: "root",
606
+ fields:
607
+ [
608
+ {name: 'type', mapping: 'type'},
609
+ {name: 'count', mapping: 'count'}
610
+ ]
611
+ })
612
+ }),
613
+ xtype: 'piechart',
614
+ dataField: 'count',
615
+ categoryField: 'type',
616
+ //extra styles get applied to the chart defaults
617
+ extraStyle:{
618
+ legend:
619
+ {
620
+ display: 'bottom',
621
+ padding: 5,
622
+ font:
623
+ {
624
+ family: 'Tahoma',
625
+ size: 13
626
+ }
627
+ }
628
+ }
629
+ }]}]
630
+ }]
631
+ },{
632
+ /*Process List Grid*/
633
+ /*in this host*/
634
+ /*and it's an entrance to show a certain process info*/
635
+ colspan: 2,
636
+ xtype: 'panel',
637
+ items:[
638
+ new Ext.grid.GridPanel({
639
+ id:"Glb_portal_a_certain_host_panel"+"_ip_"+ip+"_processes_info",
640
+ store: new Ext.data.Store({
641
+ proxy: new Ext.data.HttpProxy({url: '/host/process/grid/?ip='+ip, method: 'GET'}),
642
+ reader: new Ext.data.JsonReader({
643
+ root: "root",
644
+ }, [
645
+ {name: 'pid', mapping: 'pid'},
646
+ {name: 'cwd', mapping: 'cwd'},
647
+ {name: 'exe', mapping: 'exe'},
648
+ {name: 'root', mapping: 'root'},
649
+ {name: 'memory', mapping: 'memory'},
650
+ {name: 'cmdline', mapping: 'cmdline'}
651
+ ])
652
+ }),
653
+ colModel: new Ext.grid.ColumnModel({
654
+ defaults: {
655
+ width: 120,
656
+ sortable: true
657
+ },
658
+ columns: [
659
+ {header: 'Pid', sortable: true, dataIndex: 'pid'},
660
+ {header: 'Cpu(%)', sortable: true, dataIndex: 'cpu'},
661
+ {header: 'cwd', sortable: true, dataIndex: 'cwd'},
662
+ {header: 'exe', sortable: true, dataIndex: 'exe'},
663
+ {header: 'root', sortable: true, dataIndex: 'root'},
664
+ {header: 'Mem(m)', sortable: true, dataIndex: 'memory'},
665
+ {header: 'Cmd', dataIndex: 'cmdline'}
666
+ ],
667
+ }),
668
+ sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
669
+ autoWidth: true,
670
+ autoHeight: true,
671
+ frame: true,
672
+ title: 'Processes in '+name,
673
+ iconCls: 'icon-grid'
674
+ })
675
+ ]
676
+ }]
677
+ })
678
+ };
679
+
680
+ /*
681
+ Line chart store's data struct:
682
+ */
683
+ var LineChartRecord = Ext.data.Record.create([
684
+ {name: 'value', type: 'int'},
685
+ {name: 'time', type: 'string'}
686
+ ]);
687
+
688
+ Glb.portal.insert_a_new_record_to_linechart = function(chart,record) {
689
+ // record = '{"value":6.0,"time":"09-28 14h:12m:24s"}'
690
+ var store = chart.store;
691
+ var rec = new LineChartRecord(Ext.util.JSON.decode(record));
692
+ store.add(rec);
693
+ }
694
+
695
+ /*
696
+ doLayout
697
+ */
698
+ Glb.outer_west.add(Glb.portal.hosts_tree);
699
+ // Glb.outer_west.add(Glb.portal.traffic_monitor_panel);
700
+ Glb.outer_west.doLayout();
701
+ Glb.outer_center.add(Glb.portal.tab_panel);
702
+ Glb.outer_center.doLayout();
703
+ }
704
+
705
+
706
+
707
+
708
+
709
+
710
+
711
+
712
+
713
+