From 25ab56a7d1f95d5b78ff5d4fd9577869a13424f9 Mon Sep 17 00:00:00 2001
From: johannnes <>
Date: Fri, 27 Dec 2013 15:03:31 +0000
Subject: [PATCH] structure changes...
git-svn-id: https://svn.fhem.de/fhem/trunk@4475 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/www/frontend/README.txt | 9 +
fhem/www/frontend/app/app.js | 68 +
.../app/controller/ChartController.js | 2270 +++++++++++++++++
.../frontend/app/controller/MainController.js | 577 +++++
.../app/controller/TableDataController.js | 137 +
fhem/www/frontend/app/filelogcharts.js | 1 +
fhem/www/frontend/app/model/ChartModel.js | 445 ++++
fhem/www/frontend/app/model/DeviceModel.js | 12 +
fhem/www/frontend/app/model/ReadingsModel.js | 12 +
.../frontend/app/model/SavedChartsModel.js | 19 +
fhem/www/frontend/app/model/TableDataModel.js | 37 +
.../frontend/app/resources/application.css | 3 +
.../frontend/app/resources/icons/accept.png | Bin 0 -> 781 bytes
fhem/www/frontend/app/resources/icons/add.png | Bin 0 -> 733 bytes
.../app/resources/icons/arrow_left.png | Bin 0 -> 345 bytes
.../app/resources/icons/chart_bar.png | Bin 0 -> 541 bytes
.../app/resources/icons/database_refresh.png | Bin 0 -> 770 bytes
.../app/resources/icons/database_save.png | Bin 0 -> 755 bytes
.../frontend/app/resources/icons/delete.png | Bin 0 -> 715 bytes
.../frontend/app/resources/icons/readme.txt | 22 +
.../app/resources/icons/resultset_last.png | Bin 0 -> 524 bytes
.../app/resources/icons/resultset_next.png | Bin 0 -> 395 bytes
.../resources/icons/resultset_previous.png | Bin 0 -> 389 bytes
.../www/frontend/app/resources/icons/stop.png | Bin 0 -> 700 bytes
fhem/www/frontend/app/resources/loading.png | Bin 0 -> 2104 bytes
fhem/www/frontend/app/store/ChartStore.js | 18 +
fhem/www/frontend/app/store/DeviceStore.js | 20 +
fhem/www/frontend/app/store/ReadingsStore.js | 18 +
.../frontend/app/store/SavedChartsStore.js | 18 +
fhem/www/frontend/app/store/TableDataStore.js | 23 +
fhem/www/frontend/app/userconfig.js | 20 +
fhem/www/frontend/app/view/ChartGridPanel.js | 64 +
fhem/www/frontend/app/view/DevicePanel.js | 468 ++++
fhem/www/frontend/app/view/LineChartPanel.js | 727 ++++++
.../frontend/app/view/TableDataGridPanel.js | 214 ++
fhem/www/frontend/app/view/Viewport.js | 228 ++
fhem/www/frontend/controls_frontend.txt | 587 +++--
fhem/www/frontend/index.html | 32 +
.../www/frontend/lib/ext-4.2.0.663/ext-all.js | 21 +
.../lib/ext-4.2.0.663/ext-theme-gray-all.css | 1 +
.../images/boundlist/trigger-arrow.png | Bin 0 -> 2869 bytes
.../ext-4.2.0.663/images/box/corners-blue.gif | Bin 0 -> 1010 bytes
.../lib/ext-4.2.0.663/images/box/corners.gif | Bin 0 -> 1005 bytes
.../lib/ext-4.2.0.663/images/box/l-blue.gif | Bin 0 -> 810 bytes
.../lib/ext-4.2.0.663/images/box/l.gif | Bin 0 -> 810 bytes
.../lib/ext-4.2.0.663/images/box/r-blue.gif | Bin 0 -> 810 bytes
.../lib/ext-4.2.0.663/images/box/r.gif | Bin 0 -> 810 bytes
.../lib/ext-4.2.0.663/images/box/tb-blue.gif | Bin 0 -> 851 bytes
.../lib/ext-4.2.0.663/images/box/tb.gif | Bin 0 -> 839 bytes
.../lib/ext-4.2.0.663/images/button/arrow.gif | Bin 0 -> 828 bytes
.../ext-4.2.0.663/images/button/btn-arrow.gif | Bin 0 -> 870 bytes
.../images/button/btn-sprite.gif | Bin 0 -> 1222 bytes
.../lib/ext-4.2.0.663/images/button/btn.gif | Bin 0 -> 3319 bytes
.../ext-4.2.0.663/images/button/group-cs.gif | Bin 0 -> 2459 bytes
.../ext-4.2.0.663/images/button/group-lr.gif | Bin 0 -> 861 bytes
.../ext-4.2.0.663/images/button/group-tb.gif | Bin 0 -> 846 bytes
.../images/button/s-arrow-b-noline.gif | Bin 0 -> 898 bytes
.../ext-4.2.0.663/images/button/s-arrow-b.gif | Bin 0 -> 937 bytes
.../images/button/s-arrow-bo.gif | Bin 0 -> 937 bytes
.../images/button/s-arrow-light-rtl.gif | Bin 0 -> 96 bytes
.../images/button/s-arrow-light.gif | Bin 0 -> 116 bytes
.../images/button/s-arrow-noline-rtl.gif | Bin 0 -> 76 bytes
.../images/button/s-arrow-noline.gif | Bin 0 -> 863 bytes
.../images/button/s-arrow-o-rtl.gif | Bin 0 -> 137 bytes
.../ext-4.2.0.663/images/button/s-arrow-o.gif | Bin 0 -> 139 bytes
.../images/button/s-arrow-rtl.gif | Bin 0 -> 151 bytes
.../ext-4.2.0.663/images/button/s-arrow.gif | Bin 0 -> 937 bytes
.../lib/ext-4.2.0.663/images/dd/drop-add.gif | Bin 0 -> 1001 bytes
.../lib/ext-4.2.0.663/images/dd/drop-no.gif | Bin 0 -> 949 bytes
.../lib/ext-4.2.0.663/images/dd/drop-yes.gif | Bin 0 -> 1016 bytes
.../ext-4.2.0.663/images/editor/tb-sprite.gif | Bin 0 -> 2072 bytes
.../ext-4.2.0.663/images/form/checkbox.gif | Bin 0 -> 2061 bytes
.../images/form/clear-trigger-rtl.gif | Bin 0 -> 1415 bytes
.../images/form/clear-trigger.gif | Bin 0 -> 1425 bytes
.../images/form/date-trigger-rtl.gif | Bin 0 -> 945 bytes
.../images/form/date-trigger.gif | Bin 0 -> 929 bytes
.../images/form/error-tip-corners.gif | Bin 0 -> 4183 bytes
.../ext-4.2.0.663/images/form/exclamation.gif | Bin 0 -> 996 bytes
.../lib/ext-4.2.0.663/images/form/radio.gif | Bin 0 -> 1744 bytes
.../images/form/search-trigger-rtl.gif | Bin 0 -> 2226 bytes
.../images/form/search-trigger.gif | Bin 0 -> 2220 bytes
.../ext-4.2.0.663/images/form/spinner-rtl.gif | Bin 0 -> 1975 bytes
.../images/form/spinner-small-rtl.gif | Bin 0 -> 747 bytes
.../images/form/spinner-small.gif | Bin 0 -> 743 bytes
.../lib/ext-4.2.0.663/images/form/spinner.gif | Bin 0 -> 1975 bytes
.../lib/ext-4.2.0.663/images/form/text-bg.gif | Bin 0 -> 819 bytes
.../ext-4.2.0.663/images/form/trigger-rtl.gif | Bin 0 -> 1082 bytes
.../images/form/trigger-square-rtl.gif | Bin 0 -> 1053 bytes
.../images/form/trigger-square.gif | Bin 0 -> 1071 bytes
.../ext-4.2.0.663/images/form/trigger-tpl.gif | Bin 0 -> 1487 bytes
.../lib/ext-4.2.0.663/images/form/trigger.gif | Bin 0 -> 1080 bytes
.../images/grid/arrow-left-white.gif | Bin 0 -> 825 bytes
.../images/grid/arrow-right-white.gif | Bin 0 -> 825 bytes
.../images/grid/cell-special-bg.gif | Bin 0 -> 1636 bytes
.../images/grid/cell-special-bg.png | Bin 0 -> 121 bytes
.../images/grid/cell-special-selected-bg.gif | Bin 0 -> 1640 bytes
.../images/grid/cell-special-selected-bg.png | Bin 0 -> 136 bytes
.../images/grid/col-move-bottom.gif | Bin 0 -> 177 bytes
.../images/grid/col-move-top.gif | Bin 0 -> 178 bytes
.../lib/ext-4.2.0.663/images/grid/columns.gif | Bin 0 -> 962 bytes
.../images/grid/dd-insert-arrow-left.gif | Bin 0 -> 299 bytes
.../images/grid/dd-insert-arrow-left.png | Bin 0 -> 345 bytes
.../images/grid/dd-insert-arrow-right.gif | Bin 0 -> 301 bytes
.../images/grid/dd-insert-arrow-right.png | Bin 0 -> 349 bytes
.../ext-4.2.0.663/images/grid/dirty-rtl.gif | Bin 0 -> 56 bytes
.../lib/ext-4.2.0.663/images/grid/dirty.gif | Bin 0 -> 832 bytes
.../lib/ext-4.2.0.663/images/grid/done.gif | Bin 0 -> 133 bytes
.../lib/ext-4.2.0.663/images/grid/drop-no.gif | Bin 0 -> 947 bytes
.../ext-4.2.0.663/images/grid/drop-yes.gif | Bin 0 -> 860 bytes
.../ext-4.2.0.663/images/grid/footer-bg.gif | Bin 0 -> 834 bytes
.../images/grid/grid-blue-hd.gif | Bin 0 -> 829 bytes
.../images/grid/grid-blue-split.gif | Bin 0 -> 817 bytes
.../ext-4.2.0.663/images/grid/grid-hrow.gif | Bin 0 -> 855 bytes
.../images/grid/grid-loading.gif | Bin 0 -> 701 bytes
.../ext-4.2.0.663/images/grid/grid-split.gif | Bin 0 -> 817 bytes
.../images/grid/grid-vista-hd.gif | Bin 0 -> 829 bytes
.../images/grid/grid3-hd-btn-left.gif | Bin 0 -> 474 bytes
.../images/grid/grid3-hd-btn.gif | Bin 0 -> 482 bytes
.../images/grid/grid3-hrow-over.gif | Bin 0 -> 823 bytes
.../ext-4.2.0.663/images/grid/grid3-hrow.gif | Bin 0 -> 836 bytes
.../images/grid/grid3-rowheader.gif | Bin 0 -> 43 bytes
.../ext-4.2.0.663/images/grid/group-by.gif | Bin 0 -> 917 bytes
.../images/grid/group-collapse.gif | Bin 0 -> 861 bytes
.../images/grid/group-expand-sprite.gif | Bin 0 -> 196 bytes
.../images/grid/group-expand.gif | Bin 0 -> 864 bytes
.../lib/ext-4.2.0.663/images/grid/hd-pop.gif | Bin 0 -> 839 bytes
.../ext-4.2.0.663/images/grid/hmenu-asc.gif | Bin 0 -> 929 bytes
.../ext-4.2.0.663/images/grid/hmenu-desc.gif | Bin 0 -> 930 bytes
.../ext-4.2.0.663/images/grid/hmenu-lock.gif | Bin 0 -> 955 bytes
.../ext-4.2.0.663/images/grid/hmenu-lock.png | Bin 0 -> 648 bytes
.../images/grid/hmenu-unlock.gif | Bin 0 -> 971 bytes
.../images/grid/hmenu-unlock.png | Bin 0 -> 697 bytes
.../images/grid/invalid_line.gif | Bin 0 -> 815 bytes
.../lib/ext-4.2.0.663/images/grid/loading.gif | Bin 0 -> 771 bytes
.../lib/ext-4.2.0.663/images/grid/mso-hd.gif | Bin 0 -> 875 bytes
.../lib/ext-4.2.0.663/images/grid/nowait.gif | Bin 0 -> 884 bytes
.../images/grid/page-first-disabled.gif | Bin 0 -> 925 bytes
.../ext-4.2.0.663/images/grid/page-first.gif | Bin 0 -> 327 bytes
.../images/grid/page-last-disabled.gif | Bin 0 -> 923 bytes
.../ext-4.2.0.663/images/grid/page-last.gif | Bin 0 -> 325 bytes
.../images/grid/page-next-disabled.gif | Bin 0 -> 875 bytes
.../ext-4.2.0.663/images/grid/page-next.gif | Bin 0 -> 183 bytes
.../images/grid/page-prev-disabled.gif | Bin 0 -> 879 bytes
.../ext-4.2.0.663/images/grid/page-prev.gif | Bin 0 -> 186 bytes
.../ext-4.2.0.663/images/grid/pick-button.gif | Bin 0 -> 1036 bytes
.../images/grid/property-cell-bg.gif | Bin 0 -> 155 bytes
.../images/grid/property-cell-selected-bg.gif | Bin 0 -> 843 bytes
.../images/grid/refresh-disabled.gif | Bin 0 -> 577 bytes
.../lib/ext-4.2.0.663/images/grid/refresh.gif | Bin 0 -> 570 bytes
.../images/grid/row-check-sprite.gif | Bin 0 -> 1083 bytes
.../images/grid/row-expand-sprite.gif | Bin 0 -> 196 bytes
.../ext-4.2.0.663/images/grid/row-over.gif | Bin 0 -> 823 bytes
.../lib/ext-4.2.0.663/images/grid/row-sel.gif | Bin 0 -> 823 bytes
.../lib/ext-4.2.0.663/images/grid/sort-hd.gif | Bin 0 -> 2731 bytes
.../ext-4.2.0.663/images/grid/sort_asc.gif | Bin 0 -> 59 bytes
.../ext-4.2.0.663/images/grid/sort_desc.gif | Bin 0 -> 59 bytes
.../lib/ext-4.2.0.663/images/grid/wait.gif | Bin 0 -> 1100 bytes
.../images/layout/mini-bottom.gif | Bin 0 -> 856 bytes
.../ext-4.2.0.663/images/layout/mini-left.gif | Bin 0 -> 871 bytes
.../images/layout/mini-right.gif | Bin 0 -> 872 bytes
.../ext-4.2.0.663/images/layout/mini-top.gif | Bin 0 -> 856 bytes
.../lib/ext-4.2.0.663/images/menu/checked.gif | Bin 0 -> 959 bytes
.../images/menu/group-checked.gif | Bin 0 -> 295 bytes
.../images/menu/item-over-disabled.gif | Bin 0 -> 49 bytes
.../ext-4.2.0.663/images/menu/item-over.gif | Bin 0 -> 850 bytes
.../images/menu/menu-parent-left.gif | Bin 0 -> 165 bytes
.../ext-4.2.0.663/images/menu/menu-parent.gif | Bin 0 -> 165 bytes
.../lib/ext-4.2.0.663/images/menu/menu.gif | Bin 0 -> 834 bytes
.../ext-4.2.0.663/images/menu/unchecked.gif | Bin 0 -> 941 bytes
.../images/shared/blue-loading.gif | Bin 0 -> 3236 bytes
.../ext-4.2.0.663/images/shared/calendar.gif | Bin 0 -> 979 bytes
.../ext-4.2.0.663/images/shared/glass-bg.gif | Bin 0 -> 873 bytes
.../ext-4.2.0.663/images/shared/hd-sprite.gif | Bin 0 -> 1099 bytes
.../images/shared/icon-error.gif | Bin 0 -> 1669 bytes
.../ext-4.2.0.663/images/shared/icon-info.gif | Bin 0 -> 1586 bytes
.../images/shared/icon-question.gif | Bin 0 -> 1607 bytes
.../images/shared/icon-warning.gif | Bin 0 -> 1483 bytes
.../images/shared/large-loading.gif | Bin 0 -> 3236 bytes
.../ext-4.2.0.663/images/shared/left-btn.gif | Bin 0 -> 106 bytes
.../images/shared/loading-balls.gif | Bin 0 -> 2118 bytes
.../ext-4.2.0.663/images/shared/right-btn.gif | Bin 0 -> 107 bytes
.../ext-4.2.0.663/images/shared/shadow-c.png | Bin 0 -> 118 bytes
.../ext-4.2.0.663/images/shared/shadow-lr.png | Bin 0 -> 135 bytes
.../ext-4.2.0.663/images/shared/shadow.png | Bin 0 -> 311 bytes
.../ext-4.2.0.663/images/shared/warning.gif | Bin 0 -> 960 bytes
.../images/sizer/e-handle-dark.gif | Bin 0 -> 1062 bytes
.../ext-4.2.0.663/images/sizer/e-handle.gif | Bin 0 -> 753 bytes
.../images/sizer/ne-handle-dark.gif | Bin 0 -> 839 bytes
.../ext-4.2.0.663/images/sizer/ne-handle.gif | Bin 0 -> 128 bytes
.../images/sizer/nw-handle-dark.gif | Bin 0 -> 839 bytes
.../ext-4.2.0.663/images/sizer/nw-handle.gif | Bin 0 -> 114 bytes
.../images/sizer/s-handle-dark.gif | Bin 0 -> 1060 bytes
.../ext-4.2.0.663/images/sizer/s-handle.gif | Bin 0 -> 494 bytes
.../images/sizer/se-handle-dark.gif | Bin 0 -> 838 bytes
.../ext-4.2.0.663/images/sizer/se-handle.gif | Bin 0 -> 114 bytes
.../lib/ext-4.2.0.663/images/sizer/square.gif | Bin 0 -> 123 bytes
.../images/sizer/sw-handle-dark.gif | Bin 0 -> 839 bytes
.../ext-4.2.0.663/images/sizer/sw-handle.gif | Bin 0 -> 116 bytes
.../images/slider/slider-thumb.gif | Bin 0 -> 542 bytes
.../images/slider/slider-thumb.png | Bin 0 -> 675 bytes
.../images/slider/slider-v-thumb.gif | Bin 0 -> 533 bytes
.../images/slider/slider-v-thumb.png | Bin 0 -> 632 bytes
.../tab-bar/default-scroll-bottom-left.gif | Bin 0 -> 463 bytes
.../tab-bar/default-scroll-bottom-right.gif | Bin 0 -> 470 bytes
.../tab-bar/default-scroll-left-bottom.gif | Bin 0 -> 499 bytes
.../tab-bar/default-scroll-left-top.gif | Bin 0 -> 497 bytes
.../tab-bar/default-scroll-right-bottom.gif | Bin 0 -> 510 bytes
.../tab-bar/default-scroll-right-top.gif | Bin 0 -> 511 bytes
.../tab-bar/default-scroll-top-left.gif | Bin 0 -> 461 bytes
.../tab-bar/default-scroll-top-right.gif | Bin 0 -> 463 bytes
.../images/tab/tab-default-close.gif | Bin 0 -> 896 bytes
.../images/toolbar/more-left.gif | Bin 0 -> 843 bytes
.../lib/ext-4.2.0.663/images/toolbar/more.gif | Bin 0 -> 845 bytes
.../images/toolbar/scroll-left.gif | Bin 0 -> 1861 bytes
.../images/toolbar/scroll-right.gif | Bin 0 -> 1865 bytes
.../images/tools/tool-sprite-tpl.gif | Bin 0 -> 971 bytes
.../images/tools/tool-sprites.gif | Bin 0 -> 5835 bytes
.../images/tools/tools-sprites-trans.gif | Bin 0 -> 1981 bytes
.../ext-4.2.0.663/images/tree/arrows-rtl.gif | Bin 0 -> 618 bytes
.../lib/ext-4.2.0.663/images/tree/arrows.gif | Bin 0 -> 619 bytes
.../ext-4.2.0.663/images/tree/drop-above.gif | Bin 0 -> 911 bytes
.../ext-4.2.0.663/images/tree/drop-add.gif | Bin 0 -> 1001 bytes
.../ext-4.2.0.663/images/tree/drop-append.gif | Bin 0 -> 1001 bytes
.../ext-4.2.0.663/images/tree/drop-below.gif | Bin 0 -> 911 bytes
.../images/tree/drop-between.gif | Bin 0 -> 907 bytes
.../lib/ext-4.2.0.663/images/tree/drop-no.gif | Bin 0 -> 949 bytes
.../ext-4.2.0.663/images/tree/drop-over.gif | Bin 0 -> 911 bytes
.../ext-4.2.0.663/images/tree/drop-under.gif | Bin 0 -> 911 bytes
.../ext-4.2.0.663/images/tree/drop-yes.gif | Bin 0 -> 1016 bytes
.../images/tree/elbow-end-minus-rtl.gif | Bin 0 -> 151 bytes
.../images/tree/elbow-end-minus.gif | Bin 0 -> 157 bytes
.../images/tree/elbow-end-plus-rtl.gif | Bin 0 -> 153 bytes
.../images/tree/elbow-end-plus.gif | Bin 0 -> 159 bytes
.../images/tree/elbow-end-rtl.gif | Bin 0 -> 70 bytes
.../ext-4.2.0.663/images/tree/elbow-end.gif | Bin 0 -> 70 bytes
.../images/tree/elbow-line-rtl.gif | Bin 0 -> 72 bytes
.../ext-4.2.0.663/images/tree/elbow-line.gif | Bin 0 -> 72 bytes
.../images/tree/elbow-minus-nl-rtl.gif | Bin 0 -> 146 bytes
.../images/tree/elbow-minus-nl.gif | Bin 0 -> 151 bytes
.../images/tree/elbow-minus-rtl.gif | Bin 0 -> 152 bytes
.../ext-4.2.0.663/images/tree/elbow-minus.gif | Bin 0 -> 159 bytes
.../images/tree/elbow-plus-nl-rtl.gif | Bin 0 -> 149 bytes
.../images/tree/elbow-plus-nl.gif | Bin 0 -> 152 bytes
.../images/tree/elbow-plus-rtl.gif | Bin 0 -> 155 bytes
.../ext-4.2.0.663/images/tree/elbow-plus.gif | Bin 0 -> 160 bytes
.../ext-4.2.0.663/images/tree/elbow-rtl.gif | Bin 0 -> 73 bytes
.../lib/ext-4.2.0.663/images/tree/elbow.gif | Bin 0 -> 73 bytes
.../images/tree/folder-open-rtl.gif | Bin 0 -> 356 bytes
.../ext-4.2.0.663/images/tree/folder-open.gif | Bin 0 -> 356 bytes
.../ext-4.2.0.663/images/tree/folder-rtl.gif | Bin 0 -> 350 bytes
.../lib/ext-4.2.0.663/images/tree/folder.gif | Bin 0 -> 351 bytes
.../ext-4.2.0.663/images/tree/leaf-rtl.gif | Bin 0 -> 346 bytes
.../lib/ext-4.2.0.663/images/tree/leaf.gif | Bin 0 -> 945 bytes
.../lib/ext-4.2.0.663/images/tree/loading.gif | Bin 0 -> 771 bytes
.../lib/ext-4.2.0.663/images/tree/s.gif | Bin 0 -> 43 bytes
.../images/util/splitter/mini-bottom.gif | Bin 0 -> 856 bytes
.../images/util/splitter/mini-left.gif | Bin 0 -> 871 bytes
.../images/util/splitter/mini-right.gif | Bin 0 -> 872 bytes
.../images/util/splitter/mini-top.gif | Bin 0 -> 856 bytes
.../images/window/icon-error.gif | Bin 0 -> 1669 bytes
.../ext-4.2.0.663/images/window/icon-info.gif | Bin 0 -> 1586 bytes
.../images/window/icon-question.gif | Bin 0 -> 1607 bytes
.../images/window/icon-warning.gif | Bin 0 -> 1483 bytes
.../frontend/lib/ext-4.2.0.663/license.txt | 35 +
264 files changed, 5812 insertions(+), 294 deletions(-)
create mode 100644 fhem/www/frontend/README.txt
create mode 100644 fhem/www/frontend/app/app.js
create mode 100644 fhem/www/frontend/app/controller/ChartController.js
create mode 100644 fhem/www/frontend/app/controller/MainController.js
create mode 100644 fhem/www/frontend/app/controller/TableDataController.js
create mode 100755 fhem/www/frontend/app/filelogcharts.js
create mode 100644 fhem/www/frontend/app/model/ChartModel.js
create mode 100644 fhem/www/frontend/app/model/DeviceModel.js
create mode 100644 fhem/www/frontend/app/model/ReadingsModel.js
create mode 100644 fhem/www/frontend/app/model/SavedChartsModel.js
create mode 100644 fhem/www/frontend/app/model/TableDataModel.js
create mode 100644 fhem/www/frontend/app/resources/application.css
create mode 100644 fhem/www/frontend/app/resources/icons/accept.png
create mode 100644 fhem/www/frontend/app/resources/icons/add.png
create mode 100644 fhem/www/frontend/app/resources/icons/arrow_left.png
create mode 100644 fhem/www/frontend/app/resources/icons/chart_bar.png
create mode 100644 fhem/www/frontend/app/resources/icons/database_refresh.png
create mode 100644 fhem/www/frontend/app/resources/icons/database_save.png
create mode 100644 fhem/www/frontend/app/resources/icons/delete.png
create mode 100644 fhem/www/frontend/app/resources/icons/readme.txt
create mode 100644 fhem/www/frontend/app/resources/icons/resultset_last.png
create mode 100644 fhem/www/frontend/app/resources/icons/resultset_next.png
create mode 100644 fhem/www/frontend/app/resources/icons/resultset_previous.png
create mode 100644 fhem/www/frontend/app/resources/icons/stop.png
create mode 100644 fhem/www/frontend/app/resources/loading.png
create mode 100644 fhem/www/frontend/app/store/ChartStore.js
create mode 100644 fhem/www/frontend/app/store/DeviceStore.js
create mode 100644 fhem/www/frontend/app/store/ReadingsStore.js
create mode 100644 fhem/www/frontend/app/store/SavedChartsStore.js
create mode 100644 fhem/www/frontend/app/store/TableDataStore.js
create mode 100644 fhem/www/frontend/app/userconfig.js
create mode 100644 fhem/www/frontend/app/view/ChartGridPanel.js
create mode 100644 fhem/www/frontend/app/view/DevicePanel.js
create mode 100644 fhem/www/frontend/app/view/LineChartPanel.js
create mode 100644 fhem/www/frontend/app/view/TableDataGridPanel.js
create mode 100644 fhem/www/frontend/app/view/Viewport.js
create mode 100644 fhem/www/frontend/index.html
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/ext-all.js
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/ext-theme-gray-all.css
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/boundlist/trigger-arrow.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/corners-blue.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/corners.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/l-blue.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/l.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/r-blue.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/r.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/tb-blue.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/box/tb.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/arrow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/btn-arrow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/btn-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/btn.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/group-cs.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/group-lr.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/group-tb.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-b-noline.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-b.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-bo.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-light-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-light.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-noline-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-noline.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-o-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-o.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/button/s-arrow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/dd/drop-add.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/dd/drop-no.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/dd/drop-yes.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/editor/tb-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/checkbox.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/clear-trigger-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/clear-trigger.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/date-trigger-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/date-trigger.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/error-tip-corners.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/exclamation.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/radio.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/search-trigger-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/search-trigger.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/spinner-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/spinner-small-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/spinner-small.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/spinner.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/text-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/trigger-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/trigger-square-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/trigger-square.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/trigger-tpl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/form/trigger.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/arrow-left-white.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/arrow-right-white.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-bg.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/col-move-bottom.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/col-move-top.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/columns.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dirty-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/dirty.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/done.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/drop-no.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/drop-yes.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/footer-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-blue-hd.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-blue-split.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-hrow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-loading.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-split.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid-vista-hd.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hd-btn-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hd-btn.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hrow-over.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hrow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/grid3-rowheader.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/group-by.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/group-collapse.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/group-expand-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/group-expand.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hd-pop.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-asc.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-desc.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-lock.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-lock.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-unlock.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-unlock.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/invalid_line.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/loading.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/mso-hd.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/nowait.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-first-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-first.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-last-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-last.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-next-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-next.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-prev-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/page-prev.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/pick-button.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/property-cell-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/property-cell-selected-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/refresh-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/refresh.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/row-check-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/row-expand-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/row-over.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/row-sel.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/sort-hd.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/sort_asc.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/sort_desc.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/grid/wait.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/layout/mini-bottom.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/layout/mini-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/layout/mini-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/layout/mini-top.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/checked.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/group-checked.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/item-over-disabled.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/item-over.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/menu-parent-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/menu-parent.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/menu.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/menu/unchecked.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/blue-loading.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/calendar.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/glass-bg.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/hd-sprite.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/icon-error.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/icon-info.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/icon-question.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/icon-warning.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/large-loading.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/left-btn.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/loading-balls.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/right-btn.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/shadow-c.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/shadow-lr.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/shadow.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/shared/warning.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/e-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/e-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/ne-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/ne-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/nw-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/nw-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/s-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/s-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/se-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/se-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/square.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/sw-handle-dark.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/sizer/sw-handle.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/slider/slider-thumb.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/slider/slider-thumb.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/slider/slider-v-thumb.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/slider/slider-v-thumb.png
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-bottom.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-top.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-bottom.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-top.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tab/tab-default-close.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/toolbar/more-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/toolbar/more.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/toolbar/scroll-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/toolbar/scroll-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tools/tool-sprite-tpl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tools/tool-sprites.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tools/tools-sprites-trans.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/arrows-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/arrows.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-above.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-add.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-append.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-below.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-between.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-no.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-over.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-under.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/drop-yes.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-minus-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-minus.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-plus-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-plus.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-line-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-line.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-nl-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-nl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-nl-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-nl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/elbow.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/folder-open-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/folder-open.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/folder-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/folder.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/leaf-rtl.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/leaf.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/loading.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/tree/s.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-bottom.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-left.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-right.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-top.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/window/icon-error.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/window/icon-info.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/window/icon-question.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/images/window/icon-warning.gif
create mode 100644 fhem/www/frontend/lib/ext-4.2.0.663/license.txt
diff --git a/fhem/www/frontend/README.txt b/fhem/www/frontend/README.txt
new file mode 100644
index 000000000..2012ae1b4
--- /dev/null
+++ b/fhem/www/frontend/README.txt
@@ -0,0 +1,9 @@
+This is the readme of the new Webfrontend, based on ExtJS.
+As there is no full documentation available at the moment,
+please refer to this thread on the forums of FHEM to get help, ask questions or get updates:
+
+http://forum.fhem.de/index.php?t=msg&th=10439&start=0&rid=0
+
+The ExtJS Library as well as the application itself are available under the GPLv3 License - http://www.sencha.com/
+
+See the license.txt in the lib folder for details
diff --git a/fhem/www/frontend/app/app.js b/fhem/www/frontend/app/app.js
new file mode 100644
index 000000000..f319fdd08
--- /dev/null
+++ b/fhem/www/frontend/app/app.js
@@ -0,0 +1,68 @@
+/**
+ * Setup the application
+ */
+
+Ext.Loader.setConfig({
+ enabled: true,
+ disableCaching: false,
+ paths: {
+ 'FHEM': 'app'
+ }
+});
+
+Ext.application({
+ name: 'FHEM Frontend',
+ requires: [
+ 'FHEM.view.Viewport'
+ ],
+
+ controllers: [
+ 'FHEM.controller.MainController',
+ 'FHEM.controller.ChartController',
+ 'FHEM.controller.TableDataController'
+ ],
+
+ launch: function() {
+
+ // Gather information from FHEM to display status, devices, etc.
+ var me = this,
+ url = '../../../fhem?cmd=jsonlist&XHR=1';
+
+ Ext.Ajax.request({
+ method: 'GET',
+ async: false,
+ disableCaching: false,
+ url: url,
+ success: function(response){
+ Ext.getBody().unmask();
+ FHEM.info = Ext.decode(response.responseText);
+ FHEM.version = FHEM.info.Results[0].devices[0].ATTR.version;
+ Ext.each(FHEM.info.Results, function(result) {
+ if (result.list === "DbLog" && result.devices[0].NAME) {
+ FHEM.dblogname = result.devices[0].NAME;
+ }
+ if (result.list === "FileLog" && result.devices.length > 0) {
+ FHEM.filelogs = result.devices;
+ }
+ });
+ if ((!FHEM.dblogname || Ext.isEmpty(FHEM.dblogname)) && !FHEM.filelogs) {
+ Ext.Msg.alert("Error", "Could not find a DbLog or FileLog Configuration. Do you have them already defined?");
+ } else {
+ Ext.create("FHEM.view.Viewport", {
+ hidden: true
+ });
+
+ //removing the loadingimage
+ var p = Ext.DomQuery.select('p[class=loader]')[0],
+ img = Ext.DomQuery.select('#loading-overlay')[0];
+ p.removeChild(img);
+ // further configuration of viewport starts in maincontroller
+ }
+ },
+ failure: function() {
+ Ext.Msg.alert("Error", "The connection to FHEM could not be established");
+ }
+ });
+
+ }
+});
\ No newline at end of file
diff --git a/fhem/www/frontend/app/controller/ChartController.js b/fhem/www/frontend/app/controller/ChartController.js
new file mode 100644
index 000000000..747d573f3
--- /dev/null
+++ b/fhem/www/frontend/app/controller/ChartController.js
@@ -0,0 +1,2270 @@
+/**
+ * Controller handling the charts
+ */
+Ext.define('FHEM.controller.ChartController', {
+ extend: 'Ext.app.Controller',
+ /**
+ * maxValue of Y Axis gets saved here as reference
+ */
+ maxYValue: 0,
+
+ /**
+ * minValue of Y Axis gets saved here as reference
+ */
+ minYValue: 9999999,
+
+ /**
+ * maxValue of Y2 Axis gets saved here as reference
+ */
+ maxY2Value: 0,
+
+ /**
+ * minValue of Y2 Axis gets saved here as reference
+ */
+ minY2Value: 9999999,
+
+ refs: [
+ {
+ selector: 'panel[name=chartformpanel]',
+ ref: 'chartformpanel' //this.getChartformpanel()
+ },
+ {
+ selector: 'datefield[name=starttimepicker]',
+ ref: 'starttimepicker' //this.getStarttimepicker()
+ },
+ {
+ selector: 'datefield[name=endtimepicker]',
+ ref: 'endtimepicker' //this.getEndtimepicker()
+ },
+ {
+ selector: 'button[name=requestchartdata]',
+ ref: 'requestchartdatabtn' //this.getRequestchartdatabtn()
+ },
+ {
+ selector: 'button[name=savechartdata]',
+ ref: 'savechartdatabtn' //this.getSavechartdatabtn()
+ },
+ {
+ selector: 'chart',
+ ref: 'chart' //this.getChart()
+ },
+ {
+ selector: 'chartformpanel',
+ ref: 'panel[name=chartformpanel]' //this.getChartformpanel()
+ },
+ {
+ selector: 'linechartpanel',
+ ref: 'linechartpanel' //this.getLinechartpanel()
+ },
+ {
+ selector: 'linechartpanel toolbar',
+ ref: 'linecharttoolbar' //this.getLinecharttoolbar()
+ },
+ {
+ selector: 'grid[name=chartdata]',
+ ref: 'chartdatagrid' //this.getChartdatagrid()
+ },
+ {
+ selector: 'panel[name=maintreepanel]',
+ ref: 'maintreepanel' //this.getMaintreepanel()
+ },
+ {
+ selector: 'radiogroup[name=datasourceradio]',
+ ref: 'datasourceradio' //this.getDatasourceradio()
+ }
+ ],
+
+ /**
+ * init function to register listeners
+ */
+ init: function() {
+ this.control({
+ 'button[name=requestchartdata]': {
+ click: this.requestChartData
+ },
+ 'button[name=savechartdata]': {
+ click: this.saveChartData
+ },
+ 'button[name=stepback]': {
+ click: this.stepchange
+ },
+ 'button[name=stepforward]': {
+ click: this.stepchange
+ },
+ 'button[name=resetchartform]': {
+ click: this.resetFormFields
+ },
+ 'menuitem[name=deletechartfromcontext]': {
+ click: this.deletechart
+ },
+ 'menuitem[name=renamechartfromcontext]': {
+ click: this.renamechart
+ },
+ 'treepanel[name=maintreepanel]': {
+ itemclick: this.loadsavedchart
+ },
+ 'treeview': {
+ drop: this.movenodeintree
+ },
+ 'grid[name=chartdata]': {
+ itemclick: this.highlightRecordInChart
+ },
+ 'panel[name=chartpanel]': {
+ collapse: this.resizeChart,
+ expand: this.resizeChart
+ },
+ 'panel[name=chartformpanel]': {
+ collapse: this.resizeChart,
+ expand: this.resizeChart
+ },
+ 'panel[name=chartgridpanel]': {
+ collapse: this.resizeChart,
+ expand: this.resizeChart
+ },
+ 'radiogroup[name=datasourceradio]': {
+ change: this.dataSourceChanged
+ }
+ });
+
+ },
+
+ /**
+ * reconfigure combos to handle dblog / filelog
+ */
+ dataSourceChanged: function(radio, newval, oldval) {
+
+ var selection;
+ if (radio.getChecked()[0]) {
+ selection = radio.getChecked()[0].inputValue;
+ } else {
+ selection = "dblog";
+ }
+ var me = this,
+ devicecombo = radio.up().down('combobox[name=devicecombo]'),
+ readingscombo = radio.up().down("combobox[name=yaxiscombo]");
+
+ if (selection === "filelog") {
+
+ // disable statistics for the moment
+ radio.up().down("combobox[name=yaxisstatisticscombo]").setDisabled(true);
+
+ // Getting the FileLog Names to show them in Device-Combo
+ var fileLogNames = [];
+
+ Ext.each(FHEM.filelogs, function(log) {
+ if (log.REGEXP && log.REGEXP !== "fakelog" && log.NAME !== "") {
+ var devObj = { "DEVICE": log.NAME};
+ fileLogNames.push(devObj);
+ }
+ });
+
+ devicecombo.setValue("");
+ devicecombo.getStore().removeAll();
+ devicecombo.getStore().add(fileLogNames);
+ devicecombo.queryMode = 'local';
+ devicecombo.on("select", me.fileLogSelected);
+
+ readingscombo.setValue();
+ readingscombo.getStore().removeAll();
+
+ } else {
+ // enable statistics
+ radio.up().down("combobox[name=yaxisstatisticscombo]").setDisabled(false);
+
+ devicecombo.setValue();
+ devicecombo.getStore().removeAll();
+ devicecombo.un("select", me.fileLogSelected);
+ devicecombo.queryMode = 'remote';
+ devicecombo.getStore().load();
+
+ readingscombo.setValue();
+ readingscombo.getStore().removeAll();
+ readingscombo.queryMode = 'remote';
+ }
+ },
+
+ /**
+ * gather filelog information to fill combos
+ */
+ fileLogSelected: function(combo, selectionArray) {
+
+ var readingscombo = combo.up().down("combobox[name=yaxiscombo]"),
+ currentlogfile;
+ if (selectionArray[0]) {
+ var logname = selectionArray[0].data.DEVICE;
+ Ext.each(FHEM.filelogs, function(log) {
+ if (log.NAME === logname) {
+ // found the filelog entry, getting the logfile to load values
+ currentlogfile = log.currentlogfile;
+ return false;
+ }
+ });
+ }
+ if (!Ext.isEmpty(currentlogfile)) {
+ // retrieve the filelog, parse its containing fields
+ readingscombo.setLoading(true);
+
+ var date = new Date(),
+ endtime = Ext.Date.format(date, 'Y-m-d_H:i:s');
+ starttime = Ext.Date.add(date, Ext.Date.HOUR, -24);
+ starttime = Ext.Date.format(starttime, 'Y-m-d_H:i:s');
+
+ // logfiles can have absolute or relative pathes...
+ if (Ext.String.startsWith(currentlogfile, "/") === true) {
+ // we need to get out of the relative fhem directory,
+ // as the get command wont support absolute pathes by default...
+ currentlogfile = "../../../../../../../../" + currentlogfile;
+ }
+
+ Ext.Ajax.request({
+ method: 'GET',
+ disableCaching: false,
+ url: '../../../fhem?cmd=get%20Logfile%20' + currentlogfile + '%20-%20' + starttime + '%20' + endtime + '&XHR=1',
+ success: function(response){
+ if (response && response.responseText) {
+ var responseArr = response.responseText.split(/\n/),
+ keyObjArray = [],
+ keyArray = [];
+
+ Ext.each(responseArr, function(row) {
+ // the first column is always the timestamp, followed by device and multiple key:value
+ var splitArr = row.split(" ");
+ Ext.each(splitArr, function(key) {
+ if (key.lastIndexOf(":") + 1 === key.length &&
+ !Ext.Array.contains(keyArray, key.replace(":", ""))) {
+ keyArray.push(key.replace(":", ""));
+ }
+ });
+ });
+
+ Ext.Array.sort(keyArray);
+ Ext.each(keyArray, function(key) {
+ var obj = {"READING": key};
+ keyObjArray.push(obj);
+ });
+
+ //reconfigure readings store
+ if (keyObjArray.length > 0) {
+ readingscombo.getStore().add(keyObjArray);
+ readingscombo.queryMode = 'local';
+
+ } else {
+ Ext.create('Ext.window.Window', {
+ width: 400,
+ height: 400,
+ autoScroll: true,
+ title: 'Error',
+ html: "No Readings found in the last 24 hours for this Logfile! The used Command was:
" +
+ "get Logfile " + currentlogfile + " - " + starttime + " " + endtime + "
" +
+ "The Response was:
M#RWsl+kfRf;OU^G_BQh+Fc$z&F_AHuQYu(b) q
zpwWnImtxfA68&j?&*r-4tWEJhZ~PGeexLqm!jaspXe2*JLLC5lYA$;e$(Lg^n2pq;
zyw8_z>Am1eAsePZ%ZsU
+ 2#0=EOdd%7-IEM8AYUv<*t
If you make changes to your config, it may be neccessary to reload this page to get the updated information.'
+ },
+ {
+ xtype: 'treepanel',
+ title: 'Charts / Devices / Rooms',
+ name: 'maintreepanel',
+ collapsed: false,
+ border: false,
+ rootVisible: false,
+ viewConfig: {
+ plugins: { ptype: 'treeviewdragdrop' }
+ },
+ root: {
+ "text": "Root",
+ "expanded":
+ "true",
+ "children": []
+ },
+ tbar: [
+ {
+ xtype: 'button',
+ name: 'unsortedtree',
+ toggleGroup: 'treeorder',
+ allowDepress: false,
+ text: 'Unsorted'
+ },
+ {
+ xtype: 'button',
+ name: 'sortedtree',
+ toggleGroup: 'treeorder',
+ allowDepress: false,
+ text: 'Order by Room',
+ pressed: true
+ }
+ ],
+ listeners: {
+ 'itemcontextmenu': function(scope, rec, item, index, e, eOpts) {
+ e.preventDefault();
+
+ if (rec.raw.data.TYPE &&
+ (rec.raw.data.TYPE === "savedchart" || rec.raw.data.TYPE === "savedfilelogchart")) {
+ var menu = Ext.ComponentQuery.query('menu[id=treecontextmenu]')[0];
+ if (menu) {
+ menu.destroy();
+ }
+ Ext.create('Ext.menu.Menu', {
+ id: 'treecontextmenu',
+ items: [
+ {
+ text: 'Delete Chart',
+ name: 'deletechartfromcontext',
+ record: rec
+ }, '-', {
+ text: 'Rename Chart',
+ name: 'renamechartfromcontext',
+ record: rec
+ }
+ ]
+ }).showAt(e.xy);
+ }
+ }
+ }
+ },
+ {
+ title: 'Database Tables',
+ name: 'tabledataaccordionpanel',
+ autoScroll: true,
+ bodyPadding: '5 5 5 5',
+ html: 'You can search your database here.
Specify your queries by selecting a specific device, reading and timerange.'
+ }
+ ]
+ },
+ {
+ region: 'south',
+ title: 'Status',
+ collapsible: true,
+ items: [{
+ xtype: 'text',
+ name: 'statustextfield',
+ text: 'Status...'
+ }],
+ split: true,
+ height: 50,
+ minHeight: 30
+ },
+ {
+ region: 'center',
+ title: 'Welcome',
+ layout: 'hbox',
+ bodyStyle: 'padding:5px 5px 0',
+ items: [
+ {
+ xtype: 'image',
+ src: '../../fhem/images/default/fhemicon.png',
+ height: 132,
+ width: 120
+ },
+ {
+ xtype: 'text',
+ name: 'statustextfield',
+ padding: '50 0 0 20',
+ width: 400,
+ height: 130,
+ html: '
Welcome to the new FHEM Frontend.
For Informations, Problems and discussion, visit the FHEM Forums'
+ }
+ ],
+ height: '100%'
+ }
+ ]
+ });
+
+ me.callParent(arguments);
+ }
+});
diff --git a/fhem/www/frontend/controls_frontend.txt b/fhem/www/frontend/controls_frontend.txt
index f99dee08e..44b550294 100644
--- a/fhem/www/frontend/controls_frontend.txt
+++ b/fhem/www/frontend/controls_frontend.txt
@@ -1,294 +1,293 @@
-DIR www/frontend
-DIR www/frontend/app
-DIR www/frontend/app/model
-DIR www/frontend/app/store
-DIR www/frontend/app/view
-DIR www/frontend/app/controller
-DIR www/frontend/app/resources
-DIR www/frontend/app/resources/icons
-DIR www/frontend/lib
-DIR www/frontend/lib/ext-4.2.0.663
-DIR www/frontend/lib/ext-4.2.0.663/images
-DIR www/frontend/lib/ext-4.2.0.663/images/tools
-DIR www/frontend/lib/ext-4.2.0.663/images/tree
-DIR www/frontend/lib/ext-4.2.0.663/images/editor
-DIR www/frontend/lib/ext-4.2.0.663/images/sizer
-DIR www/frontend/lib/ext-4.2.0.663/images/tab
-DIR www/frontend/lib/ext-4.2.0.663/images/toolbar
-DIR www/frontend/lib/ext-4.2.0.663/images/shared
-DIR www/frontend/lib/ext-4.2.0.663/images/tab-bar
-DIR www/frontend/lib/ext-4.2.0.663/images/boundlist
-DIR www/frontend/lib/ext-4.2.0.663/images/dd
-DIR www/frontend/lib/ext-4.2.0.663/images/box
-DIR www/frontend/lib/ext-4.2.0.663/images/form
-DIR www/frontend/lib/ext-4.2.0.663/images/menu
-DIR www/frontend/lib/ext-4.2.0.663/images/slider
-DIR www/frontend/lib/ext-4.2.0.663/images/button
-DIR www/frontend/lib/ext-4.2.0.663/images/layout
-DIR www/frontend/lib/ext-4.2.0.663/images/window
-DIR www/frontend/lib/ext-4.2.0.663/images/grid
-DIR www/frontend/lib/ext-4.2.0.663/images/util
-DIR www/frontend/lib/ext-4.2.0.663/images/util/splitter
-UPD 2013-12-26_09:59:17 1054 www/frontend/index.html
-UPD 2013-04-01_07:03:30 260475 www/frontend/lib/ext-4.2.0.663/ext-theme-gray-all.css
-UPD 2013-12-07_02:00:26 1497654 www/frontend/lib/ext-4.2.0.663/ext-all.js
-UPD 2013-04-01_07:03:33 1981 www/frontend/lib/ext-4.2.0.663/images/tools/tools-sprites-trans.gif
-UPD 2013-04-01_07:03:32 5835 www/frontend/lib/ext-4.2.0.663/images/tools/tool-sprites.gif
-UPD 2013-04-01_07:03:32 971 www/frontend/lib/ext-4.2.0.663/images/tools/tool-sprite-tpl.gif
-UPD 2013-04-01_07:03:33 911 www/frontend/lib/ext-4.2.0.663/images/tree/drop-over.gif
-UPD 2013-04-01_07:03:33 1001 www/frontend/lib/ext-4.2.0.663/images/tree/drop-add.gif
-UPD 2013-04-01_07:03:33 159 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-plus.gif
-UPD 2013-04-01_07:03:33 72 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-line-rtl.gif
-UPD 2013-04-01_07:03:33 771 www/frontend/lib/ext-4.2.0.663/images/tree/loading.gif
-UPD 2013-04-01_07:03:33 356 www/frontend/lib/ext-4.2.0.663/images/tree/folder-open-rtl.gif
-UPD 2013-04-01_07:03:33 356 www/frontend/lib/ext-4.2.0.663/images/tree/folder-open.gif
-UPD 2013-04-01_07:03:33 70 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end.gif
-UPD 2013-04-01_07:03:33 72 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-line.gif
-UPD 2013-04-01_07:03:33 945 www/frontend/lib/ext-4.2.0.663/images/tree/leaf.gif
-UPD 2013-04-01_07:03:33 152 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-nl.gif
-UPD 2013-04-01_07:03:33 160 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus.gif
-UPD 2013-04-01_07:03:33 152 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-rtl.gif
-UPD 2013-04-01_07:03:33 911 www/frontend/lib/ext-4.2.0.663/images/tree/drop-below.gif
-UPD 2013-04-01_07:03:33 73 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-rtl.gif
-UPD 2013-04-01_07:03:33 911 www/frontend/lib/ext-4.2.0.663/images/tree/drop-above.gif
-UPD 2013-04-01_07:03:33 70 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-rtl.gif
-UPD 2013-04-01_07:03:33 155 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-rtl.gif
-UPD 2013-04-01_07:03:33 151 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-nl.gif
-UPD 2013-04-01_07:03:33 146 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus-nl-rtl.gif
-UPD 2013-04-01_07:03:33 73 www/frontend/lib/ext-4.2.0.663/images/tree/elbow.gif
-UPD 2013-04-01_07:03:33 618 www/frontend/lib/ext-4.2.0.663/images/tree/arrows-rtl.gif
-UPD 2013-04-01_07:03:33 1016 www/frontend/lib/ext-4.2.0.663/images/tree/drop-yes.gif
-UPD 2013-04-01_07:03:33 1001 www/frontend/lib/ext-4.2.0.663/images/tree/drop-append.gif
-UPD 2013-04-01_07:03:33 351 www/frontend/lib/ext-4.2.0.663/images/tree/folder.gif
-UPD 2013-04-01_07:03:33 619 www/frontend/lib/ext-4.2.0.663/images/tree/arrows.gif
-UPD 2013-04-01_07:03:33 907 www/frontend/lib/ext-4.2.0.663/images/tree/drop-between.gif
-UPD 2013-04-01_07:03:33 43 www/frontend/lib/ext-4.2.0.663/images/tree/s.gif
-UPD 2013-04-01_07:03:33 151 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-minus-rtl.gif
-UPD 2013-04-01_07:03:33 157 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-minus.gif
-UPD 2013-04-01_07:03:33 159 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-minus.gif
-UPD 2013-04-01_07:03:33 153 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-end-plus-rtl.gif
-UPD 2013-04-01_07:03:33 911 www/frontend/lib/ext-4.2.0.663/images/tree/drop-under.gif
-UPD 2013-04-01_07:03:33 149 www/frontend/lib/ext-4.2.0.663/images/tree/elbow-plus-nl-rtl.gif
-UPD 2013-04-01_07:03:33 949 www/frontend/lib/ext-4.2.0.663/images/tree/drop-no.gif
-UPD 2013-04-01_07:03:33 346 www/frontend/lib/ext-4.2.0.663/images/tree/leaf-rtl.gif
-UPD 2013-04-01_07:03:33 350 www/frontend/lib/ext-4.2.0.663/images/tree/folder-rtl.gif
-UPD 2013-04-01_07:03:31 2072 www/frontend/lib/ext-4.2.0.663/images/editor/tb-sprite.gif
-UPD 2013-04-01_07:03:32 1060 www/frontend/lib/ext-4.2.0.663/images/sizer/s-handle-dark.gif
-UPD 2013-04-01_07:03:32 114 www/frontend/lib/ext-4.2.0.663/images/sizer/nw-handle.gif
-UPD 2013-04-01_07:03:32 494 www/frontend/lib/ext-4.2.0.663/images/sizer/s-handle.gif
-UPD 2013-04-01_07:03:32 114 www/frontend/lib/ext-4.2.0.663/images/sizer/se-handle.gif
-UPD 2013-04-01_07:03:32 128 www/frontend/lib/ext-4.2.0.663/images/sizer/ne-handle.gif
-UPD 2013-04-01_07:03:32 123 www/frontend/lib/ext-4.2.0.663/images/sizer/square.gif
-UPD 2013-04-01_07:03:32 838 www/frontend/lib/ext-4.2.0.663/images/sizer/se-handle-dark.gif
-UPD 2013-04-01_07:03:32 839 www/frontend/lib/ext-4.2.0.663/images/sizer/nw-handle-dark.gif
-UPD 2013-04-01_07:03:32 839 www/frontend/lib/ext-4.2.0.663/images/sizer/ne-handle-dark.gif
-UPD 2013-04-01_07:03:32 116 www/frontend/lib/ext-4.2.0.663/images/sizer/sw-handle.gif
-UPD 2013-04-01_07:03:32 839 www/frontend/lib/ext-4.2.0.663/images/sizer/sw-handle-dark.gif
-UPD 2013-04-01_07:03:32 753 www/frontend/lib/ext-4.2.0.663/images/sizer/e-handle.gif
-UPD 2013-04-01_07:03:32 1062 www/frontend/lib/ext-4.2.0.663/images/sizer/e-handle-dark.gif
-UPD 2013-04-01_07:03:32 896 www/frontend/lib/ext-4.2.0.663/images/tab/tab-default-close.gif
-UPD 2013-04-01_07:03:32 1865 www/frontend/lib/ext-4.2.0.663/images/toolbar/scroll-right.gif
-UPD 2013-04-01_07:03:32 1861 www/frontend/lib/ext-4.2.0.663/images/toolbar/scroll-left.gif
-UPD 2013-04-01_07:03:32 845 www/frontend/lib/ext-4.2.0.663/images/toolbar/more.gif
-UPD 2013-04-01_07:03:32 843 www/frontend/lib/ext-4.2.0.663/images/toolbar/more-left.gif
-UPD 2013-04-01_07:03:32 2118 www/frontend/lib/ext-4.2.0.663/images/shared/loading-balls.gif
-UPD 2013-04-01_07:03:32 1669 www/frontend/lib/ext-4.2.0.663/images/shared/icon-error.gif
-UPD 2013-04-01_07:03:32 1607 www/frontend/lib/ext-4.2.0.663/images/shared/icon-question.gif
-UPD 2013-04-01_07:03:32 979 www/frontend/lib/ext-4.2.0.663/images/shared/calendar.gif
-UPD 2013-04-01_07:03:32 873 www/frontend/lib/ext-4.2.0.663/images/shared/glass-bg.gif
-UPD 2013-04-01_07:03:32 1099 www/frontend/lib/ext-4.2.0.663/images/shared/hd-sprite.gif
-UPD 2013-04-01_07:03:32 1483 www/frontend/lib/ext-4.2.0.663/images/shared/icon-warning.gif
-UPD 2013-04-01_07:03:32 106 www/frontend/lib/ext-4.2.0.663/images/shared/left-btn.gif
-UPD 2013-04-01_07:03:32 1586 www/frontend/lib/ext-4.2.0.663/images/shared/icon-info.gif
-UPD 2013-04-01_07:03:32 3236 www/frontend/lib/ext-4.2.0.663/images/shared/blue-loading.gif
-UPD 2013-04-01_07:03:32 960 www/frontend/lib/ext-4.2.0.663/images/shared/warning.gif
-UPD 2013-04-01_07:03:32 3236 www/frontend/lib/ext-4.2.0.663/images/shared/large-loading.gif
-UPD 2013-04-01_07:03:32 107 www/frontend/lib/ext-4.2.0.663/images/shared/right-btn.gif
-UPD 2013-04-01_07:03:32 311 www/frontend/lib/ext-4.2.0.663/images/shared/shadow.png
-UPD 2013-04-01_07:03:32 118 www/frontend/lib/ext-4.2.0.663/images/shared/shadow-c.png
-UPD 2013-04-01_07:03:32 135 www/frontend/lib/ext-4.2.0.663/images/shared/shadow-lr.png
-UPD 2013-04-01_07:03:32 463 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-right.gif
-UPD 2013-04-01_07:03:32 511 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-top.gif
-UPD 2013-04-01_07:03:32 470 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-right.gif
-UPD 2013-04-01_07:03:32 510 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-bottom.gif
-UPD 2013-04-01_07:03:32 499 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-bottom.gif
-UPD 2013-04-01_07:03:32 461 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-left.gif
-UPD 2013-04-01_07:03:32 497 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-top.gif
-UPD 2013-04-01_07:03:32 463 www/frontend/lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-left.gif
-UPD 2013-04-01_07:03:31 2869 www/frontend/lib/ext-4.2.0.663/images/boundlist/trigger-arrow.png
-UPD 2013-04-01_07:03:31 1001 www/frontend/lib/ext-4.2.0.663/images/dd/drop-add.gif
-UPD 2013-04-01_07:03:31 1016 www/frontend/lib/ext-4.2.0.663/images/dd/drop-yes.gif
-UPD 2013-04-01_07:03:31 949 www/frontend/lib/ext-4.2.0.663/images/dd/drop-no.gif
-UPD 2013-04-01_07:03:31 810 www/frontend/lib/ext-4.2.0.663/images/box/r-blue.gif
-UPD 2013-04-01_07:03:31 839 www/frontend/lib/ext-4.2.0.663/images/box/tb.gif
-UPD 2013-04-01_07:03:31 810 www/frontend/lib/ext-4.2.0.663/images/box/l-blue.gif
-UPD 2013-04-01_07:03:31 810 www/frontend/lib/ext-4.2.0.663/images/box/r.gif
-UPD 2013-04-01_07:03:31 810 www/frontend/lib/ext-4.2.0.663/images/box/l.gif
-UPD 2013-04-01_07:03:31 851 www/frontend/lib/ext-4.2.0.663/images/box/tb-blue.gif
-UPD 2013-04-01_07:03:31 1010 www/frontend/lib/ext-4.2.0.663/images/box/corners-blue.gif
-UPD 2013-04-01_07:03:31 1005 www/frontend/lib/ext-4.2.0.663/images/box/corners.gif
-UPD 2013-04-01_07:03:31 1080 www/frontend/lib/ext-4.2.0.663/images/form/trigger.gif
-UPD 2013-04-01_07:03:31 945 www/frontend/lib/ext-4.2.0.663/images/form/date-trigger-rtl.gif
-UPD 2013-04-01_07:03:31 2061 www/frontend/lib/ext-4.2.0.663/images/form/checkbox.gif
-UPD 2013-04-01_07:03:31 1071 www/frontend/lib/ext-4.2.0.663/images/form/trigger-square.gif
-UPD 2013-04-01_07:03:31 1425 www/frontend/lib/ext-4.2.0.663/images/form/clear-trigger.gif
-UPD 2013-04-01_07:03:31 1082 www/frontend/lib/ext-4.2.0.663/images/form/trigger-rtl.gif
-UPD 2013-04-01_07:03:31 929 www/frontend/lib/ext-4.2.0.663/images/form/date-trigger.gif
-UPD 2013-04-01_07:03:31 747 www/frontend/lib/ext-4.2.0.663/images/form/spinner-small-rtl.gif
-UPD 2013-04-01_07:03:31 1415 www/frontend/lib/ext-4.2.0.663/images/form/clear-trigger-rtl.gif
-UPD 2013-04-01_07:03:31 996 www/frontend/lib/ext-4.2.0.663/images/form/exclamation.gif
-UPD 2013-04-01_07:03:31 819 www/frontend/lib/ext-4.2.0.663/images/form/text-bg.gif
-UPD 2013-04-01_07:03:31 1975 www/frontend/lib/ext-4.2.0.663/images/form/spinner-rtl.gif
-UPD 2013-04-01_07:03:31 2226 www/frontend/lib/ext-4.2.0.663/images/form/search-trigger-rtl.gif
-UPD 2013-04-01_07:03:31 1975 www/frontend/lib/ext-4.2.0.663/images/form/spinner.gif
-UPD 2013-04-01_07:03:31 2220 www/frontend/lib/ext-4.2.0.663/images/form/search-trigger.gif
-UPD 2013-04-01_07:03:31 4183 www/frontend/lib/ext-4.2.0.663/images/form/error-tip-corners.gif
-UPD 2013-04-01_07:03:31 1487 www/frontend/lib/ext-4.2.0.663/images/form/trigger-tpl.gif
-UPD 2013-04-01_07:03:31 1053 www/frontend/lib/ext-4.2.0.663/images/form/trigger-square-rtl.gif
-UPD 2013-04-01_07:03:31 1744 www/frontend/lib/ext-4.2.0.663/images/form/radio.gif
-UPD 2013-04-01_07:03:31 743 www/frontend/lib/ext-4.2.0.663/images/form/spinner-small.gif
-UPD 2013-04-01_07:03:32 165 www/frontend/lib/ext-4.2.0.663/images/menu/menu-parent-left.gif
-UPD 2013-04-01_07:03:32 941 www/frontend/lib/ext-4.2.0.663/images/menu/unchecked.gif
-UPD 2013-04-01_07:03:32 834 www/frontend/lib/ext-4.2.0.663/images/menu/menu.gif
-UPD 2013-04-01_07:03:32 850 www/frontend/lib/ext-4.2.0.663/images/menu/item-over.gif
-UPD 2013-04-01_07:03:32 959 www/frontend/lib/ext-4.2.0.663/images/menu/checked.gif
-UPD 2013-04-01_07:03:32 165 www/frontend/lib/ext-4.2.0.663/images/menu/menu-parent.gif
-UPD 2013-04-01_07:03:32 295 www/frontend/lib/ext-4.2.0.663/images/menu/group-checked.gif
-UPD 2013-04-01_07:03:32 49 www/frontend/lib/ext-4.2.0.663/images/menu/item-over-disabled.gif
-UPD 2013-04-01_07:03:32 533 www/frontend/lib/ext-4.2.0.663/images/slider/slider-v-thumb.gif
-UPD 2013-04-01_07:03:32 632 www/frontend/lib/ext-4.2.0.663/images/slider/slider-v-thumb.png
-UPD 2013-04-01_07:03:32 675 www/frontend/lib/ext-4.2.0.663/images/slider/slider-thumb.png
-UPD 2013-04-01_07:03:32 542 www/frontend/lib/ext-4.2.0.663/images/slider/slider-thumb.gif
-UPD 2013-04-01_07:03:31 96 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-light-rtl.gif
-UPD 2013-04-01_07:03:31 76 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-noline-rtl.gif
-UPD 2013-04-01_07:03:31 137 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-o-rtl.gif
-UPD 2013-04-01_07:03:31 3319 www/frontend/lib/ext-4.2.0.663/images/button/btn.gif
-UPD 2013-04-01_07:03:31 861 www/frontend/lib/ext-4.2.0.663/images/button/group-lr.gif
-UPD 2013-04-01_07:03:31 846 www/frontend/lib/ext-4.2.0.663/images/button/group-tb.gif
-UPD 2013-04-01_07:03:31 139 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-o.gif
-UPD 2013-04-01_07:03:31 1222 www/frontend/lib/ext-4.2.0.663/images/button/btn-sprite.gif
-UPD 2013-04-01_07:03:31 863 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-noline.gif
-UPD 2013-04-01_07:03:31 898 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-b-noline.gif
-UPD 2013-04-01_07:03:31 2459 www/frontend/lib/ext-4.2.0.663/images/button/group-cs.gif
-UPD 2013-04-01_07:03:31 937 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow.gif
-UPD 2013-04-01_07:03:31 937 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-b.gif
-UPD 2013-04-01_07:03:31 870 www/frontend/lib/ext-4.2.0.663/images/button/btn-arrow.gif
-UPD 2013-04-01_07:03:31 937 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-bo.gif
-UPD 2013-04-01_07:03:31 828 www/frontend/lib/ext-4.2.0.663/images/button/arrow.gif
-UPD 2013-04-01_07:03:31 116 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-light.gif
-UPD 2013-04-01_07:03:31 151 www/frontend/lib/ext-4.2.0.663/images/button/s-arrow-rtl.gif
-UPD 2013-04-01_07:03:32 871 www/frontend/lib/ext-4.2.0.663/images/layout/mini-left.gif
-UPD 2013-04-01_07:03:32 872 www/frontend/lib/ext-4.2.0.663/images/layout/mini-right.gif
-UPD 2013-04-01_07:03:32 856 www/frontend/lib/ext-4.2.0.663/images/layout/mini-bottom.gif
-UPD 2013-04-01_07:03:32 856 www/frontend/lib/ext-4.2.0.663/images/layout/mini-top.gif
-UPD 2013-04-01_07:03:33 1669 www/frontend/lib/ext-4.2.0.663/images/window/icon-error.gif
-UPD 2013-04-01_07:03:33 1607 www/frontend/lib/ext-4.2.0.663/images/window/icon-question.gif
-UPD 2013-04-01_07:03:33 1483 www/frontend/lib/ext-4.2.0.663/images/window/icon-warning.gif
-UPD 2013-04-01_07:03:33 1586 www/frontend/lib/ext-4.2.0.663/images/window/icon-info.gif
-UPD 2013-04-01_07:03:32 861 www/frontend/lib/ext-4.2.0.663/images/grid/group-collapse.gif
-UPD 2013-04-01_07:03:32 923 www/frontend/lib/ext-4.2.0.663/images/grid/page-last-disabled.gif
-UPD 2013-04-01_07:03:32 325 www/frontend/lib/ext-4.2.0.663/images/grid/page-last.gif
-UPD 2013-04-01_07:03:31 177 www/frontend/lib/ext-4.2.0.663/images/grid/col-move-bottom.gif
-UPD 2013-04-01_07:03:32 879 www/frontend/lib/ext-4.2.0.663/images/grid/page-prev-disabled.gif
-UPD 2013-04-01_07:03:32 59 www/frontend/lib/ext-4.2.0.663/images/grid/sort_desc.gif
-UPD 2013-04-01_07:03:32 971 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-unlock.gif
-UPD 2013-04-01_07:03:32 771 www/frontend/lib/ext-4.2.0.663/images/grid/loading.gif
-UPD 2013-04-01_07:03:32 1100 www/frontend/lib/ext-4.2.0.663/images/grid/wait.gif
-UPD 2013-04-01_07:03:31 178 www/frontend/lib/ext-4.2.0.663/images/grid/col-move-top.gif
-UPD 2013-04-01_07:03:32 829 www/frontend/lib/ext-4.2.0.663/images/grid/grid-vista-hd.gif
-UPD 2013-04-01_07:03:32 875 www/frontend/lib/ext-4.2.0.663/images/grid/page-next-disabled.gif
-UPD 2013-04-01_07:03:32 697 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-unlock.png
-UPD 2013-04-01_07:03:31 825 www/frontend/lib/ext-4.2.0.663/images/grid/arrow-left-white.gif
-UPD 2013-04-01_07:03:32 823 www/frontend/lib/ext-4.2.0.663/images/grid/row-sel.gif
-UPD 2013-04-01_07:03:32 186 www/frontend/lib/ext-4.2.0.663/images/grid/page-prev.gif
-UPD 2013-04-01_07:03:32 1036 www/frontend/lib/ext-4.2.0.663/images/grid/pick-button.gif
-UPD 2013-04-01_07:03:32 855 www/frontend/lib/ext-4.2.0.663/images/grid/grid-hrow.gif
-UPD 2013-04-01_07:03:32 836 www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hrow.gif
-UPD 2013-04-01_07:03:31 1640 www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.gif
-UPD 2013-04-01_07:03:32 823 www/frontend/lib/ext-4.2.0.663/images/grid/row-over.gif
-UPD 2013-04-01_07:03:31 121 www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-bg.png
-UPD 2013-04-01_07:03:32 482 www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hd-btn.gif
-UPD 2013-04-01_07:03:31 832 www/frontend/lib/ext-4.2.0.663/images/grid/dirty.gif
-UPD 2013-04-01_07:03:31 825 www/frontend/lib/ext-4.2.0.663/images/grid/arrow-right-white.gif
-UPD 2013-04-01_07:03:32 577 www/frontend/lib/ext-4.2.0.663/images/grid/refresh-disabled.gif
-UPD 2013-04-01_07:03:31 133 www/frontend/lib/ext-4.2.0.663/images/grid/done.gif
-UPD 2013-04-01_07:03:32 570 www/frontend/lib/ext-4.2.0.663/images/grid/refresh.gif
-UPD 2013-04-01_07:03:31 349 www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.png
-UPD 2013-04-01_07:03:32 930 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-desc.gif
-UPD 2013-04-01_07:03:32 884 www/frontend/lib/ext-4.2.0.663/images/grid/nowait.gif
-UPD 2013-04-01_07:03:32 925 www/frontend/lib/ext-4.2.0.663/images/grid/page-first-disabled.gif
-UPD 2013-04-01_07:03:32 843 www/frontend/lib/ext-4.2.0.663/images/grid/property-cell-selected-bg.gif
-UPD 2013-04-01_07:03:32 59 www/frontend/lib/ext-4.2.0.663/images/grid/sort_asc.gif
-UPD 2013-04-01_07:03:32 955 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-lock.gif
-UPD 2013-04-01_07:03:32 701 www/frontend/lib/ext-4.2.0.663/images/grid/grid-loading.gif
-UPD 2013-04-01_07:03:32 196 www/frontend/lib/ext-4.2.0.663/images/grid/group-expand-sprite.gif
-UPD 2013-04-01_07:03:32 1083 www/frontend/lib/ext-4.2.0.663/images/grid/row-check-sprite.gif
-UPD 2013-04-01_07:03:31 345 www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.png
-UPD 2013-04-01_07:03:31 56 www/frontend/lib/ext-4.2.0.663/images/grid/dirty-rtl.gif
-UPD 2013-04-01_07:03:32 815 www/frontend/lib/ext-4.2.0.663/images/grid/invalid_line.gif
-UPD 2013-04-01_07:03:32 43 www/frontend/lib/ext-4.2.0.663/images/grid/grid3-rowheader.gif
-UPD 2013-04-01_07:03:31 301 www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.gif
-UPD 2013-04-01_07:03:32 823 www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hrow-over.gif
-UPD 2013-04-01_07:03:31 834 www/frontend/lib/ext-4.2.0.663/images/grid/footer-bg.gif
-UPD 2013-04-01_07:03:31 860 www/frontend/lib/ext-4.2.0.663/images/grid/drop-yes.gif
-UPD 2013-04-01_07:03:32 875 www/frontend/lib/ext-4.2.0.663/images/grid/mso-hd.gif
-UPD 2013-04-01_07:03:32 817 www/frontend/lib/ext-4.2.0.663/images/grid/grid-split.gif
-UPD 2013-04-01_07:03:32 929 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-asc.gif
-UPD 2013-04-01_07:03:32 839 www/frontend/lib/ext-4.2.0.663/images/grid/hd-pop.gif
-UPD 2013-04-01_07:03:31 817 www/frontend/lib/ext-4.2.0.663/images/grid/grid-blue-split.gif
-UPD 2013-04-01_07:03:31 829 www/frontend/lib/ext-4.2.0.663/images/grid/grid-blue-hd.gif
-UPD 2013-04-01_07:03:31 136 www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.png
-UPD 2013-04-01_07:03:32 917 www/frontend/lib/ext-4.2.0.663/images/grid/group-by.gif
-UPD 2013-04-01_07:03:32 864 www/frontend/lib/ext-4.2.0.663/images/grid/group-expand.gif
-UPD 2013-04-01_07:03:32 183 www/frontend/lib/ext-4.2.0.663/images/grid/page-next.gif
-UPD 2013-04-01_07:03:31 1636 www/frontend/lib/ext-4.2.0.663/images/grid/cell-special-bg.gif
-UPD 2013-04-01_07:03:32 2731 www/frontend/lib/ext-4.2.0.663/images/grid/sort-hd.gif
-UPD 2013-04-01_07:03:32 648 www/frontend/lib/ext-4.2.0.663/images/grid/hmenu-lock.png
-UPD 2013-04-01_07:03:32 155 www/frontend/lib/ext-4.2.0.663/images/grid/property-cell-bg.gif
-UPD 2013-04-01_07:03:32 196 www/frontend/lib/ext-4.2.0.663/images/grid/row-expand-sprite.gif
-UPD 2013-04-01_07:03:31 299 www/frontend/lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.gif
-UPD 2013-04-01_07:03:32 474 www/frontend/lib/ext-4.2.0.663/images/grid/grid3-hd-btn-left.gif
-UPD 2013-04-01_07:03:31 962 www/frontend/lib/ext-4.2.0.663/images/grid/columns.gif
-UPD 2013-04-01_07:03:31 947 www/frontend/lib/ext-4.2.0.663/images/grid/drop-no.gif
-UPD 2013-04-01_07:03:32 327 www/frontend/lib/ext-4.2.0.663/images/grid/page-first.gif
-UPD 2013-04-01_07:03:33 871 www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-left.gif
-UPD 2013-04-01_07:03:33 872 www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-right.gif
-UPD 2013-04-01_07:03:33 856 www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-bottom.gif
-UPD 2013-04-01_07:03:33 856 www/frontend/lib/ext-4.2.0.663/images/util/splitter/mini-top.gif
-UPD 2013-04-01_07:51:34 1482 www/frontend/lib/ext-4.2.0.663/license.txt
-UPD 2013-04-26_05:06:43 440 www/frontend/README.txt
-UPD 2013-04-01_07:05:33 613 www/frontend/app/userconfig.js
-UPD 2013-12-27_02:57:42 468 www/frontend/app/filelogcharts.js
-UPD 2013-04-01_08:00:32 2104 www/frontend/app/resources/loading.png
-UPD 2013-04-03_07:27:17 781 www/frontend/app/resources/icons/accept.png
-UPD 2013-03-02_01:53:05 626 www/frontend/app/resources/icons/readme.txt
-UPD 2013-04-03_07:27:17 715 www/frontend/app/resources/icons/delete.png
-UPD 2013-03-02_01:53:05 755 www/frontend/app/resources/icons/database_save.png
-UPD 2013-06-30_11:47:24 541 www/frontend/app/resources/icons/chart_bar.png
-UPD 2013-03-02_01:53:05 395 www/frontend/app/resources/icons/resultset_next.png
-UPD 2013-03-02_01:53:05 700 www/frontend/app/resources/icons/stop.png
-UPD 2013-04-03_07:27:17 345 www/frontend/app/resources/icons/arrow_left.png
-UPD 2013-03-02_01:53:05 770 www/frontend/app/resources/icons/database_refresh.png
-UPD 2013-03-02_01:53:05 524 www/frontend/app/resources/icons/resultset_last.png
-UPD 2013-04-03_07:27:17 733 www/frontend/app/resources/icons/add.png
-UPD 2013-04-03_07:27:17 389 www/frontend/app/resources/icons/resultset_previous.png
-UPD 2013-06-30_11:47:12 101 www/frontend/app/resources/application.css
-UPD 2013-12-07_12:24:10 2270 www/frontend/app/app.js
-UPD 2013-04-28_02:00:20 1205 www/frontend/app/view/ChartGridPanel.js
-UPD 2013-07-07_12:12:08 16201 www/frontend/app/view/DevicePanel.js
-UPD 2013-12-26_08:39:37 10257 www/frontend/app/view/TableDataGridPanel.js
-UPD 2013-12-26_08:39:37 31894 www/frontend/app/view/LineChartPanel.js
-UPD 2013-12-27_01:39:11 9980 www/frontend/app/view/Viewport.js
-UPD 2013-12-27_03:20:41 19171 www/frontend/app/controller/MainController.js
-UPD 2013-12-27_03:21:01 106581 www/frontend/app/controller/ChartController.js
-UPD 2013-06-30_11:46:54 5415 www/frontend/app/controller/TableDataController.js
-UPD 2013-04-01_07:04:35 202 www/frontend/app/model/ReadingsModel.js
-UPD 2013-04-01_07:04:36 338 www/frontend/app/model/SavedChartsModel.js
-UPD 2013-04-01_07:04:34 11535 www/frontend/app/model/ChartModel.js
-UPD 2013-04-01_07:04:35 198 www/frontend/app/model/DeviceModel.js
-UPD 2013-04-01_07:04:34 685 www/frontend/app/model/TableDataModel.js
-UPD 2013-04-01_07:04:54 432 www/frontend/app/store/ChartStore.js
-UPD 2013-04-01_07:04:54 451 www/frontend/app/store/SavedChartsStore.js
-UPD 2013-04-01_07:04:54 426 www/frontend/app/store/ReadingsStore.js
-UPD 2013-06-27_09:35:10 657 www/frontend/app/store/TableDataStore.js
-UPD 2013-04-27_06:11:13 439 www/frontend/app/store/DeviceStore.js
\ No newline at end of file
+DIR app
+DIR app/model
+DIR app/store
+DIR app/view
+DIR app/controller
+DIR app/resources
+DIR app/resources/icons
+DIR lib
+DIR lib/ext-4.2.0.663
+DIR lib/ext-4.2.0.663/images
+DIR lib/ext-4.2.0.663/images/tools
+DIR lib/ext-4.2.0.663/images/tree
+DIR lib/ext-4.2.0.663/images/editor
+DIR lib/ext-4.2.0.663/images/sizer
+DIR lib/ext-4.2.0.663/images/tab
+DIR lib/ext-4.2.0.663/images/toolbar
+DIR lib/ext-4.2.0.663/images/shared
+DIR lib/ext-4.2.0.663/images/tab-bar
+DIR lib/ext-4.2.0.663/images/boundlist
+DIR lib/ext-4.2.0.663/images/dd
+DIR lib/ext-4.2.0.663/images/box
+DIR lib/ext-4.2.0.663/images/form
+DIR lib/ext-4.2.0.663/images/menu
+DIR lib/ext-4.2.0.663/images/slider
+DIR lib/ext-4.2.0.663/images/button
+DIR lib/ext-4.2.0.663/images/layout
+DIR lib/ext-4.2.0.663/images/window
+DIR lib/ext-4.2.0.663/images/grid
+DIR lib/ext-4.2.0.663/images/util
+DIR lib/ext-4.2.0.663/images/util/splitter
+UPD 2013-12-26_09:59:17 1054 index.html
+UPD 2013-04-01_07:03:30 260475 lib/ext-4.2.0.663/ext-theme-gray-all.css
+UPD 2013-12-07_02:00:26 1497654 lib/ext-4.2.0.663/ext-all.js
+UPD 2013-04-01_07:03:33 1981 lib/ext-4.2.0.663/images/tools/tools-sprites-trans.gif
+UPD 2013-04-01_07:03:32 5835 lib/ext-4.2.0.663/images/tools/tool-sprites.gif
+UPD 2013-04-01_07:03:32 971 lib/ext-4.2.0.663/images/tools/tool-sprite-tpl.gif
+UPD 2013-04-01_07:03:33 911 lib/ext-4.2.0.663/images/tree/drop-over.gif
+UPD 2013-04-01_07:03:33 1001 lib/ext-4.2.0.663/images/tree/drop-add.gif
+UPD 2013-04-01_07:03:33 159 lib/ext-4.2.0.663/images/tree/elbow-end-plus.gif
+UPD 2013-04-01_07:03:33 72 lib/ext-4.2.0.663/images/tree/elbow-line-rtl.gif
+UPD 2013-04-01_07:03:33 771 lib/ext-4.2.0.663/images/tree/loading.gif
+UPD 2013-04-01_07:03:33 356 lib/ext-4.2.0.663/images/tree/folder-open-rtl.gif
+UPD 2013-04-01_07:03:33 356 lib/ext-4.2.0.663/images/tree/folder-open.gif
+UPD 2013-04-01_07:03:33 70 lib/ext-4.2.0.663/images/tree/elbow-end.gif
+UPD 2013-04-01_07:03:33 72 lib/ext-4.2.0.663/images/tree/elbow-line.gif
+UPD 2013-04-01_07:03:33 945 lib/ext-4.2.0.663/images/tree/leaf.gif
+UPD 2013-04-01_07:03:33 152 lib/ext-4.2.0.663/images/tree/elbow-plus-nl.gif
+UPD 2013-04-01_07:03:33 160 lib/ext-4.2.0.663/images/tree/elbow-plus.gif
+UPD 2013-04-01_07:03:33 152 lib/ext-4.2.0.663/images/tree/elbow-minus-rtl.gif
+UPD 2013-04-01_07:03:33 911 lib/ext-4.2.0.663/images/tree/drop-below.gif
+UPD 2013-04-01_07:03:33 73 lib/ext-4.2.0.663/images/tree/elbow-rtl.gif
+UPD 2013-04-01_07:03:33 911 lib/ext-4.2.0.663/images/tree/drop-above.gif
+UPD 2013-04-01_07:03:33 70 lib/ext-4.2.0.663/images/tree/elbow-end-rtl.gif
+UPD 2013-04-01_07:03:33 155 lib/ext-4.2.0.663/images/tree/elbow-plus-rtl.gif
+UPD 2013-04-01_07:03:33 151 lib/ext-4.2.0.663/images/tree/elbow-minus-nl.gif
+UPD 2013-04-01_07:03:33 146 lib/ext-4.2.0.663/images/tree/elbow-minus-nl-rtl.gif
+UPD 2013-04-01_07:03:33 73 lib/ext-4.2.0.663/images/tree/elbow.gif
+UPD 2013-04-01_07:03:33 618 lib/ext-4.2.0.663/images/tree/arrows-rtl.gif
+UPD 2013-04-01_07:03:33 1016 lib/ext-4.2.0.663/images/tree/drop-yes.gif
+UPD 2013-04-01_07:03:33 1001 lib/ext-4.2.0.663/images/tree/drop-append.gif
+UPD 2013-04-01_07:03:33 351 lib/ext-4.2.0.663/images/tree/folder.gif
+UPD 2013-04-01_07:03:33 619 lib/ext-4.2.0.663/images/tree/arrows.gif
+UPD 2013-04-01_07:03:33 907 lib/ext-4.2.0.663/images/tree/drop-between.gif
+UPD 2013-04-01_07:03:33 43 lib/ext-4.2.0.663/images/tree/s.gif
+UPD 2013-04-01_07:03:33 151 lib/ext-4.2.0.663/images/tree/elbow-end-minus-rtl.gif
+UPD 2013-04-01_07:03:33 157 lib/ext-4.2.0.663/images/tree/elbow-end-minus.gif
+UPD 2013-04-01_07:03:33 159 lib/ext-4.2.0.663/images/tree/elbow-minus.gif
+UPD 2013-04-01_07:03:33 153 lib/ext-4.2.0.663/images/tree/elbow-end-plus-rtl.gif
+UPD 2013-04-01_07:03:33 911 lib/ext-4.2.0.663/images/tree/drop-under.gif
+UPD 2013-04-01_07:03:33 149 lib/ext-4.2.0.663/images/tree/elbow-plus-nl-rtl.gif
+UPD 2013-04-01_07:03:33 949 lib/ext-4.2.0.663/images/tree/drop-no.gif
+UPD 2013-04-01_07:03:33 346 lib/ext-4.2.0.663/images/tree/leaf-rtl.gif
+UPD 2013-04-01_07:03:33 350 lib/ext-4.2.0.663/images/tree/folder-rtl.gif
+UPD 2013-04-01_07:03:31 2072 lib/ext-4.2.0.663/images/editor/tb-sprite.gif
+UPD 2013-04-01_07:03:32 1060 lib/ext-4.2.0.663/images/sizer/s-handle-dark.gif
+UPD 2013-04-01_07:03:32 114 lib/ext-4.2.0.663/images/sizer/nw-handle.gif
+UPD 2013-04-01_07:03:32 494 lib/ext-4.2.0.663/images/sizer/s-handle.gif
+UPD 2013-04-01_07:03:32 114 lib/ext-4.2.0.663/images/sizer/se-handle.gif
+UPD 2013-04-01_07:03:32 128 lib/ext-4.2.0.663/images/sizer/ne-handle.gif
+UPD 2013-04-01_07:03:32 123 lib/ext-4.2.0.663/images/sizer/square.gif
+UPD 2013-04-01_07:03:32 838 lib/ext-4.2.0.663/images/sizer/se-handle-dark.gif
+UPD 2013-04-01_07:03:32 839 lib/ext-4.2.0.663/images/sizer/nw-handle-dark.gif
+UPD 2013-04-01_07:03:32 839 lib/ext-4.2.0.663/images/sizer/ne-handle-dark.gif
+UPD 2013-04-01_07:03:32 116 lib/ext-4.2.0.663/images/sizer/sw-handle.gif
+UPD 2013-04-01_07:03:32 839 lib/ext-4.2.0.663/images/sizer/sw-handle-dark.gif
+UPD 2013-04-01_07:03:32 753 lib/ext-4.2.0.663/images/sizer/e-handle.gif
+UPD 2013-04-01_07:03:32 1062 lib/ext-4.2.0.663/images/sizer/e-handle-dark.gif
+UPD 2013-04-01_07:03:32 896 lib/ext-4.2.0.663/images/tab/tab-default-close.gif
+UPD 2013-04-01_07:03:32 1865 lib/ext-4.2.0.663/images/toolbar/scroll-right.gif
+UPD 2013-04-01_07:03:32 1861 lib/ext-4.2.0.663/images/toolbar/scroll-left.gif
+UPD 2013-04-01_07:03:32 845 lib/ext-4.2.0.663/images/toolbar/more.gif
+UPD 2013-04-01_07:03:32 843 lib/ext-4.2.0.663/images/toolbar/more-left.gif
+UPD 2013-04-01_07:03:32 2118 lib/ext-4.2.0.663/images/shared/loading-balls.gif
+UPD 2013-04-01_07:03:32 1669 lib/ext-4.2.0.663/images/shared/icon-error.gif
+UPD 2013-04-01_07:03:32 1607 lib/ext-4.2.0.663/images/shared/icon-question.gif
+UPD 2013-04-01_07:03:32 979 lib/ext-4.2.0.663/images/shared/calendar.gif
+UPD 2013-04-01_07:03:32 873 lib/ext-4.2.0.663/images/shared/glass-bg.gif
+UPD 2013-04-01_07:03:32 1099 lib/ext-4.2.0.663/images/shared/hd-sprite.gif
+UPD 2013-04-01_07:03:32 1483 lib/ext-4.2.0.663/images/shared/icon-warning.gif
+UPD 2013-04-01_07:03:32 106 lib/ext-4.2.0.663/images/shared/left-btn.gif
+UPD 2013-04-01_07:03:32 1586 lib/ext-4.2.0.663/images/shared/icon-info.gif
+UPD 2013-04-01_07:03:32 3236 lib/ext-4.2.0.663/images/shared/blue-loading.gif
+UPD 2013-04-01_07:03:32 960 lib/ext-4.2.0.663/images/shared/warning.gif
+UPD 2013-04-01_07:03:32 3236 lib/ext-4.2.0.663/images/shared/large-loading.gif
+UPD 2013-04-01_07:03:32 107 lib/ext-4.2.0.663/images/shared/right-btn.gif
+UPD 2013-04-01_07:03:32 311 lib/ext-4.2.0.663/images/shared/shadow.png
+UPD 2013-04-01_07:03:32 118 lib/ext-4.2.0.663/images/shared/shadow-c.png
+UPD 2013-04-01_07:03:32 135 lib/ext-4.2.0.663/images/shared/shadow-lr.png
+UPD 2013-04-01_07:03:32 463 lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-right.gif
+UPD 2013-04-01_07:03:32 511 lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-top.gif
+UPD 2013-04-01_07:03:32 470 lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-right.gif
+UPD 2013-04-01_07:03:32 510 lib/ext-4.2.0.663/images/tab-bar/default-scroll-right-bottom.gif
+UPD 2013-04-01_07:03:32 499 lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-bottom.gif
+UPD 2013-04-01_07:03:32 461 lib/ext-4.2.0.663/images/tab-bar/default-scroll-top-left.gif
+UPD 2013-04-01_07:03:32 497 lib/ext-4.2.0.663/images/tab-bar/default-scroll-left-top.gif
+UPD 2013-04-01_07:03:32 463 lib/ext-4.2.0.663/images/tab-bar/default-scroll-bottom-left.gif
+UPD 2013-04-01_07:03:31 2869 lib/ext-4.2.0.663/images/boundlist/trigger-arrow.png
+UPD 2013-04-01_07:03:31 1001 lib/ext-4.2.0.663/images/dd/drop-add.gif
+UPD 2013-04-01_07:03:31 1016 lib/ext-4.2.0.663/images/dd/drop-yes.gif
+UPD 2013-04-01_07:03:31 949 lib/ext-4.2.0.663/images/dd/drop-no.gif
+UPD 2013-04-01_07:03:31 810 lib/ext-4.2.0.663/images/box/r-blue.gif
+UPD 2013-04-01_07:03:31 839 lib/ext-4.2.0.663/images/box/tb.gif
+UPD 2013-04-01_07:03:31 810 lib/ext-4.2.0.663/images/box/l-blue.gif
+UPD 2013-04-01_07:03:31 810 lib/ext-4.2.0.663/images/box/r.gif
+UPD 2013-04-01_07:03:31 810 lib/ext-4.2.0.663/images/box/l.gif
+UPD 2013-04-01_07:03:31 851 lib/ext-4.2.0.663/images/box/tb-blue.gif
+UPD 2013-04-01_07:03:31 1010 lib/ext-4.2.0.663/images/box/corners-blue.gif
+UPD 2013-04-01_07:03:31 1005 lib/ext-4.2.0.663/images/box/corners.gif
+UPD 2013-04-01_07:03:31 1080 lib/ext-4.2.0.663/images/form/trigger.gif
+UPD 2013-04-01_07:03:31 945 lib/ext-4.2.0.663/images/form/date-trigger-rtl.gif
+UPD 2013-04-01_07:03:31 2061 lib/ext-4.2.0.663/images/form/checkbox.gif
+UPD 2013-04-01_07:03:31 1071 lib/ext-4.2.0.663/images/form/trigger-square.gif
+UPD 2013-04-01_07:03:31 1425 lib/ext-4.2.0.663/images/form/clear-trigger.gif
+UPD 2013-04-01_07:03:31 1082 lib/ext-4.2.0.663/images/form/trigger-rtl.gif
+UPD 2013-04-01_07:03:31 929 lib/ext-4.2.0.663/images/form/date-trigger.gif
+UPD 2013-04-01_07:03:31 747 lib/ext-4.2.0.663/images/form/spinner-small-rtl.gif
+UPD 2013-04-01_07:03:31 1415 lib/ext-4.2.0.663/images/form/clear-trigger-rtl.gif
+UPD 2013-04-01_07:03:31 996 lib/ext-4.2.0.663/images/form/exclamation.gif
+UPD 2013-04-01_07:03:31 819 lib/ext-4.2.0.663/images/form/text-bg.gif
+UPD 2013-04-01_07:03:31 1975 lib/ext-4.2.0.663/images/form/spinner-rtl.gif
+UPD 2013-04-01_07:03:31 2226 lib/ext-4.2.0.663/images/form/search-trigger-rtl.gif
+UPD 2013-04-01_07:03:31 1975 lib/ext-4.2.0.663/images/form/spinner.gif
+UPD 2013-04-01_07:03:31 2220 lib/ext-4.2.0.663/images/form/search-trigger.gif
+UPD 2013-04-01_07:03:31 4183 lib/ext-4.2.0.663/images/form/error-tip-corners.gif
+UPD 2013-04-01_07:03:31 1487 lib/ext-4.2.0.663/images/form/trigger-tpl.gif
+UPD 2013-04-01_07:03:31 1053 lib/ext-4.2.0.663/images/form/trigger-square-rtl.gif
+UPD 2013-04-01_07:03:31 1744 lib/ext-4.2.0.663/images/form/radio.gif
+UPD 2013-04-01_07:03:31 743 lib/ext-4.2.0.663/images/form/spinner-small.gif
+UPD 2013-04-01_07:03:32 165 lib/ext-4.2.0.663/images/menu/menu-parent-left.gif
+UPD 2013-04-01_07:03:32 941 lib/ext-4.2.0.663/images/menu/unchecked.gif
+UPD 2013-04-01_07:03:32 834 lib/ext-4.2.0.663/images/menu/menu.gif
+UPD 2013-04-01_07:03:32 850 lib/ext-4.2.0.663/images/menu/item-over.gif
+UPD 2013-04-01_07:03:32 959 lib/ext-4.2.0.663/images/menu/checked.gif
+UPD 2013-04-01_07:03:32 165 lib/ext-4.2.0.663/images/menu/menu-parent.gif
+UPD 2013-04-01_07:03:32 295 lib/ext-4.2.0.663/images/menu/group-checked.gif
+UPD 2013-04-01_07:03:32 49 lib/ext-4.2.0.663/images/menu/item-over-disabled.gif
+UPD 2013-04-01_07:03:32 533 lib/ext-4.2.0.663/images/slider/slider-v-thumb.gif
+UPD 2013-04-01_07:03:32 632 lib/ext-4.2.0.663/images/slider/slider-v-thumb.png
+UPD 2013-04-01_07:03:32 675 lib/ext-4.2.0.663/images/slider/slider-thumb.png
+UPD 2013-04-01_07:03:32 542 lib/ext-4.2.0.663/images/slider/slider-thumb.gif
+UPD 2013-04-01_07:03:31 96 lib/ext-4.2.0.663/images/button/s-arrow-light-rtl.gif
+UPD 2013-04-01_07:03:31 76 lib/ext-4.2.0.663/images/button/s-arrow-noline-rtl.gif
+UPD 2013-04-01_07:03:31 137 lib/ext-4.2.0.663/images/button/s-arrow-o-rtl.gif
+UPD 2013-04-01_07:03:31 3319 lib/ext-4.2.0.663/images/button/btn.gif
+UPD 2013-04-01_07:03:31 861 lib/ext-4.2.0.663/images/button/group-lr.gif
+UPD 2013-04-01_07:03:31 846 lib/ext-4.2.0.663/images/button/group-tb.gif
+UPD 2013-04-01_07:03:31 139 lib/ext-4.2.0.663/images/button/s-arrow-o.gif
+UPD 2013-04-01_07:03:31 1222 lib/ext-4.2.0.663/images/button/btn-sprite.gif
+UPD 2013-04-01_07:03:31 863 lib/ext-4.2.0.663/images/button/s-arrow-noline.gif
+UPD 2013-04-01_07:03:31 898 lib/ext-4.2.0.663/images/button/s-arrow-b-noline.gif
+UPD 2013-04-01_07:03:31 2459 lib/ext-4.2.0.663/images/button/group-cs.gif
+UPD 2013-04-01_07:03:31 937 lib/ext-4.2.0.663/images/button/s-arrow.gif
+UPD 2013-04-01_07:03:31 937 lib/ext-4.2.0.663/images/button/s-arrow-b.gif
+UPD 2013-04-01_07:03:31 870 lib/ext-4.2.0.663/images/button/btn-arrow.gif
+UPD 2013-04-01_07:03:31 937 lib/ext-4.2.0.663/images/button/s-arrow-bo.gif
+UPD 2013-04-01_07:03:31 828 lib/ext-4.2.0.663/images/button/arrow.gif
+UPD 2013-04-01_07:03:31 116 lib/ext-4.2.0.663/images/button/s-arrow-light.gif
+UPD 2013-04-01_07:03:31 151 lib/ext-4.2.0.663/images/button/s-arrow-rtl.gif
+UPD 2013-04-01_07:03:32 871 lib/ext-4.2.0.663/images/layout/mini-left.gif
+UPD 2013-04-01_07:03:32 872 lib/ext-4.2.0.663/images/layout/mini-right.gif
+UPD 2013-04-01_07:03:32 856 lib/ext-4.2.0.663/images/layout/mini-bottom.gif
+UPD 2013-04-01_07:03:32 856 lib/ext-4.2.0.663/images/layout/mini-top.gif
+UPD 2013-04-01_07:03:33 1669 lib/ext-4.2.0.663/images/window/icon-error.gif
+UPD 2013-04-01_07:03:33 1607 lib/ext-4.2.0.663/images/window/icon-question.gif
+UPD 2013-04-01_07:03:33 1483 lib/ext-4.2.0.663/images/window/icon-warning.gif
+UPD 2013-04-01_07:03:33 1586 lib/ext-4.2.0.663/images/window/icon-info.gif
+UPD 2013-04-01_07:03:32 861 lib/ext-4.2.0.663/images/grid/group-collapse.gif
+UPD 2013-04-01_07:03:32 923 lib/ext-4.2.0.663/images/grid/page-last-disabled.gif
+UPD 2013-04-01_07:03:32 325 lib/ext-4.2.0.663/images/grid/page-last.gif
+UPD 2013-04-01_07:03:31 177 lib/ext-4.2.0.663/images/grid/col-move-bottom.gif
+UPD 2013-04-01_07:03:32 879 lib/ext-4.2.0.663/images/grid/page-prev-disabled.gif
+UPD 2013-04-01_07:03:32 59 lib/ext-4.2.0.663/images/grid/sort_desc.gif
+UPD 2013-04-01_07:03:32 971 lib/ext-4.2.0.663/images/grid/hmenu-unlock.gif
+UPD 2013-04-01_07:03:32 771 lib/ext-4.2.0.663/images/grid/loading.gif
+UPD 2013-04-01_07:03:32 1100 lib/ext-4.2.0.663/images/grid/wait.gif
+UPD 2013-04-01_07:03:31 178 lib/ext-4.2.0.663/images/grid/col-move-top.gif
+UPD 2013-04-01_07:03:32 829 lib/ext-4.2.0.663/images/grid/grid-vista-hd.gif
+UPD 2013-04-01_07:03:32 875 lib/ext-4.2.0.663/images/grid/page-next-disabled.gif
+UPD 2013-04-01_07:03:32 697 lib/ext-4.2.0.663/images/grid/hmenu-unlock.png
+UPD 2013-04-01_07:03:31 825 lib/ext-4.2.0.663/images/grid/arrow-left-white.gif
+UPD 2013-04-01_07:03:32 823 lib/ext-4.2.0.663/images/grid/row-sel.gif
+UPD 2013-04-01_07:03:32 186 lib/ext-4.2.0.663/images/grid/page-prev.gif
+UPD 2013-04-01_07:03:32 1036 lib/ext-4.2.0.663/images/grid/pick-button.gif
+UPD 2013-04-01_07:03:32 855 lib/ext-4.2.0.663/images/grid/grid-hrow.gif
+UPD 2013-04-01_07:03:32 836 lib/ext-4.2.0.663/images/grid/grid3-hrow.gif
+UPD 2013-04-01_07:03:31 1640 lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.gif
+UPD 2013-04-01_07:03:32 823 lib/ext-4.2.0.663/images/grid/row-over.gif
+UPD 2013-04-01_07:03:31 121 lib/ext-4.2.0.663/images/grid/cell-special-bg.png
+UPD 2013-04-01_07:03:32 482 lib/ext-4.2.0.663/images/grid/grid3-hd-btn.gif
+UPD 2013-04-01_07:03:31 832 lib/ext-4.2.0.663/images/grid/dirty.gif
+UPD 2013-04-01_07:03:31 825 lib/ext-4.2.0.663/images/grid/arrow-right-white.gif
+UPD 2013-04-01_07:03:32 577 lib/ext-4.2.0.663/images/grid/refresh-disabled.gif
+UPD 2013-04-01_07:03:31 133 lib/ext-4.2.0.663/images/grid/done.gif
+UPD 2013-04-01_07:03:32 570 lib/ext-4.2.0.663/images/grid/refresh.gif
+UPD 2013-04-01_07:03:31 349 lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.png
+UPD 2013-04-01_07:03:32 930 lib/ext-4.2.0.663/images/grid/hmenu-desc.gif
+UPD 2013-04-01_07:03:32 884 lib/ext-4.2.0.663/images/grid/nowait.gif
+UPD 2013-04-01_07:03:32 925 lib/ext-4.2.0.663/images/grid/page-first-disabled.gif
+UPD 2013-04-01_07:03:32 843 lib/ext-4.2.0.663/images/grid/property-cell-selected-bg.gif
+UPD 2013-04-01_07:03:32 59 lib/ext-4.2.0.663/images/grid/sort_asc.gif
+UPD 2013-04-01_07:03:32 955 lib/ext-4.2.0.663/images/grid/hmenu-lock.gif
+UPD 2013-04-01_07:03:32 701 lib/ext-4.2.0.663/images/grid/grid-loading.gif
+UPD 2013-04-01_07:03:32 196 lib/ext-4.2.0.663/images/grid/group-expand-sprite.gif
+UPD 2013-04-01_07:03:32 1083 lib/ext-4.2.0.663/images/grid/row-check-sprite.gif
+UPD 2013-04-01_07:03:31 345 lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.png
+UPD 2013-04-01_07:03:31 56 lib/ext-4.2.0.663/images/grid/dirty-rtl.gif
+UPD 2013-04-01_07:03:32 815 lib/ext-4.2.0.663/images/grid/invalid_line.gif
+UPD 2013-04-01_07:03:32 43 lib/ext-4.2.0.663/images/grid/grid3-rowheader.gif
+UPD 2013-04-01_07:03:31 301 lib/ext-4.2.0.663/images/grid/dd-insert-arrow-right.gif
+UPD 2013-04-01_07:03:32 823 lib/ext-4.2.0.663/images/grid/grid3-hrow-over.gif
+UPD 2013-04-01_07:03:31 834 lib/ext-4.2.0.663/images/grid/footer-bg.gif
+UPD 2013-04-01_07:03:31 860 lib/ext-4.2.0.663/images/grid/drop-yes.gif
+UPD 2013-04-01_07:03:32 875 lib/ext-4.2.0.663/images/grid/mso-hd.gif
+UPD 2013-04-01_07:03:32 817 lib/ext-4.2.0.663/images/grid/grid-split.gif
+UPD 2013-04-01_07:03:32 929 lib/ext-4.2.0.663/images/grid/hmenu-asc.gif
+UPD 2013-04-01_07:03:32 839 lib/ext-4.2.0.663/images/grid/hd-pop.gif
+UPD 2013-04-01_07:03:31 817 lib/ext-4.2.0.663/images/grid/grid-blue-split.gif
+UPD 2013-04-01_07:03:31 829 lib/ext-4.2.0.663/images/grid/grid-blue-hd.gif
+UPD 2013-04-01_07:03:31 136 lib/ext-4.2.0.663/images/grid/cell-special-selected-bg.png
+UPD 2013-04-01_07:03:32 917 lib/ext-4.2.0.663/images/grid/group-by.gif
+UPD 2013-04-01_07:03:32 864 lib/ext-4.2.0.663/images/grid/group-expand.gif
+UPD 2013-04-01_07:03:32 183 lib/ext-4.2.0.663/images/grid/page-next.gif
+UPD 2013-04-01_07:03:31 1636 lib/ext-4.2.0.663/images/grid/cell-special-bg.gif
+UPD 2013-04-01_07:03:32 2731 lib/ext-4.2.0.663/images/grid/sort-hd.gif
+UPD 2013-04-01_07:03:32 648 lib/ext-4.2.0.663/images/grid/hmenu-lock.png
+UPD 2013-04-01_07:03:32 155 lib/ext-4.2.0.663/images/grid/property-cell-bg.gif
+UPD 2013-04-01_07:03:32 196 lib/ext-4.2.0.663/images/grid/row-expand-sprite.gif
+UPD 2013-04-01_07:03:31 299 lib/ext-4.2.0.663/images/grid/dd-insert-arrow-left.gif
+UPD 2013-04-01_07:03:32 474 lib/ext-4.2.0.663/images/grid/grid3-hd-btn-left.gif
+UPD 2013-04-01_07:03:31 962 lib/ext-4.2.0.663/images/grid/columns.gif
+UPD 2013-04-01_07:03:31 947 lib/ext-4.2.0.663/images/grid/drop-no.gif
+UPD 2013-04-01_07:03:32 327 lib/ext-4.2.0.663/images/grid/page-first.gif
+UPD 2013-04-01_07:03:33 871 lib/ext-4.2.0.663/images/util/splitter/mini-left.gif
+UPD 2013-04-01_07:03:33 872 lib/ext-4.2.0.663/images/util/splitter/mini-right.gif
+UPD 2013-04-01_07:03:33 856 lib/ext-4.2.0.663/images/util/splitter/mini-bottom.gif
+UPD 2013-04-01_07:03:33 856 lib/ext-4.2.0.663/images/util/splitter/mini-top.gif
+UPD 2013-04-01_07:51:34 1482 lib/ext-4.2.0.663/license.txt
+UPD 2013-04-26_05:06:43 440 README.txt
+UPD 2013-04-01_07:05:33 613 app/userconfig.js
+UPD 2013-12-27_02:57:42 25 app/filelogcharts.js
+UPD 2013-04-01_08:00:32 2104 app/resources/loading.png
+UPD 2013-04-03_07:27:17 781 app/resources/icons/accept.png
+UPD 2013-03-02_01:53:05 626 app/resources/icons/readme.txt
+UPD 2013-04-03_07:27:17 715 app/resources/icons/delete.png
+UPD 2013-03-02_01:53:05 755 app/resources/icons/database_save.png
+UPD 2013-06-30_11:47:24 541 app/resources/icons/chart_bar.png
+UPD 2013-03-02_01:53:05 395 app/resources/icons/resultset_next.png
+UPD 2013-03-02_01:53:05 700 app/resources/icons/stop.png
+UPD 2013-04-03_07:27:17 345 app/resources/icons/arrow_left.png
+UPD 2013-03-02_01:53:05 770 app/resources/icons/database_refresh.png
+UPD 2013-03-02_01:53:05 524 app/resources/icons/resultset_last.png
+UPD 2013-04-03_07:27:17 733 app/resources/icons/add.png
+UPD 2013-04-03_07:27:17 389 app/resources/icons/resultset_previous.png
+UPD 2013-06-30_11:47:12 101 app/resources/application.css
+UPD 2013-12-07_12:24:10 2270 app/app.js
+UPD 2013-04-28_02:00:20 1205 app/view/ChartGridPanel.js
+UPD 2013-07-07_12:12:08 16201 app/view/DevicePanel.js
+UPD 2013-12-26_08:39:37 10257 app/view/TableDataGridPanel.js
+UPD 2013-12-26_08:39:37 31894 app/view/LineChartPanel.js
+UPD 2013-12-27_01:39:11 9980 app/view/Viewport.js
+UPD 2013-12-27_03:20:41 19171 app/controller/MainController.js
+UPD 2013-12-27_03:21:01 106581 app/controller/ChartController.js
+UPD 2013-06-30_11:46:54 5415 app/controller/TableDataController.js
+UPD 2013-04-01_07:04:35 202 app/model/ReadingsModel.js
+UPD 2013-04-01_07:04:36 338 app/model/SavedChartsModel.js
+UPD 2013-04-01_07:04:34 11535 app/model/ChartModel.js
+UPD 2013-04-01_07:04:35 198 app/model/DeviceModel.js
+UPD 2013-04-01_07:04:34 685 app/model/TableDataModel.js
+UPD 2013-04-01_07:04:54 432 app/store/ChartStore.js
+UPD 2013-04-01_07:04:54 451 app/store/SavedChartsStore.js
+UPD 2013-04-01_07:04:54 426 app/store/ReadingsStore.js
+UPD 2013-06-27_09:35:10 657 app/store/TableDataStore.js
+UPD 2013-04-27_06:11:13 439 app/store/DeviceStore.js
\ No newline at end of file
diff --git a/fhem/www/frontend/index.html b/fhem/www/frontend/index.html
new file mode 100644
index 000000000..cfb2aea6e
--- /dev/null
+++ b/fhem/www/frontend/index.html
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
e)?e:d)},snap:function(h,e,g,j){var d;if(h===undefined||h
";return(g.childNodes.length==2)}},{identity:"Float",fn:function(d,e){return !!e.lastChild.style.cssFloat}},{identity:"AudioTag",fn:function(d){return !!d.createElement("audio").canPlayType}},{identity:"History",fn:function(){var d=window.history;return !!(d&&d.pushState)}},{identity:"CSS3DTransform",fn:function(){return(typeof WebKitCSSMatrix!="undefined"&&new WebKitCSSMatrix().hasOwnProperty("m41"))}},{identity:"CSS3LinearGradient",fn:function(k,d){var m="background-image:",l="-webkit-gradient(linear, left top, right bottom, from(black), to(white))",j="linear-gradient(left top, black, white)",h="-moz-"+j,e="-ms-"+j,g="-o-"+j,n=[m+l,m+j,m+h,m+e,m+g];d.style.cssText=n.join(";");return((""+d.style.backgroundImage).indexOf("gradient")!==-1)&&!Ext.isIE9}},{identity:"CSS3BorderRadius",fn:function(h,j){var e=["borderRadius","BorderRadius","MozBorderRadius","WebkitBorderRadius","OBorderRadius","KhtmlBorderRadius"],g=false,d;for(d=0;d",e=" "+o,q=document.createElement("div"),n=["BeforeBegin","previousSibling"],k=["AfterEnd","nextSibling"],d={beforebegin:n,afterend:k},g={beforebegin:n,afterend:k,afterbegin:["AfterBegin","firstChild"],beforeend:["BeforeEnd","lastChild"]};return{tableRe:/^(?:table|thead|tbody|tr|td)$/i,tableElRe:/td|tr|tbody|thead/i,useDom:false,createDom:function(r,x){var s,A=document,v,y,t,z,w,u;if(Ext.isArray(r)){s=A.createDocumentFragment();for(w=0,u=r.length;w1){for(;c1){w=v.length;for(u=0;u','
","{%this.renderDockedItems(out,values,1);%}"],afterRender:function(){var d=this,e={},j=d.protoEl,h=d.el,c,g,a,b;d.finishRenderChildren();if(d.contentEl){g=Ext.baseCSSPrefix;a=g+"hide-";b=Ext.get(d.contentEl);b.removeCls([g+"hidden",a+"display",a+"offsets",a+"nosize"]);d.getContentTarget().appendChild(b.dom)}j.writeTo(e);c=e.removed;if(c){h.removeCls(c)}c=e.cls;if(c.length){h.addCls(c)}c=e.style;if(e.style){h.setStyle(c)}d.protoEl=null;if(!d.ownerCt){d.updateLayout()}},afterFirstLayout:function(b,j){var d=this,h=d.x,e=d.y,c,a,g,k;if(!d.ownerLayout){c=Ext.isDefined(h);a=Ext.isDefined(e)}if(d.floating&&(!c||!a)){if(d.floatParent){g=d.floatParent.getTargetEl().getViewRegion();k=d.el.getAlignToXY(d.floatParent.getTargetEl(),"c-c");g.x=k[0]-g.x;g.y=k[1]-g.y}else{k=d.el.getAlignToXY(d.container,"c-c");g=d.container.translateXY(k[0],k[1])}h=c?h:g.x;e=a?e:g.y;c=a=true}if(c||a){d.setPosition(h,e)}d.onBoxReady(b,j)},applyRenderSelectors:function(){var d=this,b=d.renderSelectors,c=d.el,e=c.dom,a;d.applyChildEls(c);if(b){for(a in b){if(b.hasOwnProperty(a)&&b[a]){d[a]=Ext.get(Ext.DomQuery.selectNode(b[a],e))}}}},beforeRender:function(){var c=this,e=c.getTargetEl(),d=c.getOverflowEl(),b=c.getComponentLayout(),a=c.getOverflowStyle();c.frame=c.frame||c.alwaysFramed;if(!b.initialized){b.initLayout()}if(d){d.setStyle(a);c.overflowStyleSet=true}c.setUI(c.ui);if(c.disabled){c.disable(true)}},doApplyRenderTpl:function(c,a){var d=a.$comp,b;if(!d.rendered){b=d.initRenderTpl();b.applyOut(a.renderData,c)}},doAutoRender:function(){var a=this;if(!a.rendered){if(a.floating){a.render(document.body)}else{a.render(Ext.isBoolean(a.autoRender)?Ext.getBody():a.autoRender)}}},doRenderContent:function(a,c){var b=c.$comp;if(b.html){Ext.DomHelper.generateMarkup(b.html,a);delete b.html}if(b.tpl){if(!b.tpl.isTemplate){b.tpl=new Ext.XTemplate(b.tpl)}if(b.data){b.tpl.applyOut(b.data,a);delete b.data}}},doRenderFramingDockedItems:function(a,c,d){var b=c.$comp;if(!b.rendered&&b.doRenderDockedItems){c.renderData.$skipDockedItems=true;b.doRenderDockedItems.call(this,a,c,d)}},finishRender:function(a){var d=this,b,e,c;if(!d.el||d.$pid){if(d.container){c=d.container.getById(d.id,true)}else{c=Ext.getDom(d.id)}if(!d.el){d.wrapPrimaryEl(c)}else{delete d.$pid;if(!d.el.dom){d.wrapPrimaryEl(d.el)}c.parentNode.insertBefore(d.el.dom,c);Ext.removeNode(c)}}else{if(!d.rendering){b=d.initRenderTpl();if(b){e=d.initRenderData();b.insertFirst(d.getTargetEl(),e)}}}if(!d.container){d.container=Ext.get(d.el.dom.parentNode)}if(d.ctCls){d.container.addCls(d.ctCls)}d.onRender(d.container,a);if(!d.overflowStyleSet){d.getOverflowEl().setStyle(d.getOverflowStyle())}d.el.setVisibilityMode(Ext.Element[d.hideMode.toUpperCase()]);if(d.overCls){d.el.hover(d.addOverCls,d.removeOverCls,d)}if(d.hasListeners.render){d.fireEvent("render",d)}d.afterRender();if(d.hasListeners.afterrender){d.fireEvent("afterrender",d)}d.initEvents();if(d.hidden){d.el.hide()}},finishRenderChildren:function(){var a=this.getComponentLayout();a.finishRender()},getElConfig:function(){var j=this,l=j.autoEl,g=j.getFrameInfo(),b={tag:"div",tpl:g?j.initFramingTpl(g.table):j.initRenderTpl()},a=j.protoEl,c,e,h,m,d,k;j.initStyles(a);a.writeTo(b);a.flush();if(Ext.isString(l)){b.tag=l}else{Ext.apply(b,l)}b.id=j.id;if(b.tpl){if(g){e=j.frameElNames;h=e.length;b.tplData=k=j.getFrameRenderData();k.renderData=j.initRenderData();d=k.fgid;for(c=0;c",' "," {parent.baseCls}-{parent.ui}-{.}-tl{frameElCls}" role="presentation"> {parent.baseCls}-{parent.ui}-{.}-tc{frameElCls}" role="presentation"> ',' {parent.baseCls}-{parent.ui}-{.}-tr{frameElCls}" role="presentation"> ",' ",' {parent.baseCls}-{parent.ui}-{.}-ml{frameElCls}" role="presentation"> {parent.baseCls}-{parent.ui}-{.}-mc{frameElCls}" role="presentation">',"{%this.applyRenderTpl(out, values)%}"," ",' {parent.baseCls}-{parent.ui}-{.}-mr{frameElCls}" role="presentation"> ",' "," {parent.baseCls}-{parent.ui}-{.}-bl{frameElCls}" role="presentation"> {parent.baseCls}-{parent.ui}-{.}-bc{frameElCls}" role="presentation"> ',' {parent.baseCls}-{parent.ui}-{.}-br{frameElCls}" role="presentation"> ',"
","{% } else { %}",'",' ","',"{%this.renderBody(out,values)%}",''," ","',"
"],isShrinkWrapTpl:true,beginLayout:function(e){var d=this,a,b,c,g;d.callParent(arguments);d.initContextItems(e);if(!d.isShrinkWrapTpl){if(e.widthModel.shrinkWrap){g=true}if(Ext.isStrict&&Ext.isIE7){c=d.getOverflowXStyle(e);if((c==="auto"||c==="scroll")&&e.paddingContext.getPaddingInfo().right){g=true}}if(g){d.insertTableCt(e)}}if(!d.isShrinkWrapTpl&&Ext.isIE7&&Ext.isStrict&&!d.clearElHasPadding){a=e.paddingContext.getPaddingInfo().bottom;b=d.getOverflowYStyle(e);if(a&&(b==="auto"||b==="scroll")){d.clearEl.setStyle("height",a);d.clearElHasPadding=true}}},beforeLayoutCycle:function(c){var a=this.owner,d=a.hierarchyState,b=a.hierarchyStateInner;if(!d||d.invalid){d=a.getHierarchyState();b=a.hierarchyStateInner}if(c.widthModel.shrinkWrap&&this.isShrinkWrapTpl){b.inShrinkWrapTable=true}else{delete b.inShrinkWrapTable}},beginLayoutCycle:function(h){var m=this,c=m.outerCt,l=m.lastOuterCtWidth||"",k=m.lastOuterCtHeight||"",n=m.lastOuterCtTableLayout||"",b=h.state,o,g,j,p,d,a,e;m.callParent(arguments);j=p=d="";if(!h.widthModel.shrinkWrap&&m.isShrinkWrapTpl){if(Ext.isIE7m&&Ext.isStrict){g=m.getOverflowYStyle(h);if(g==="auto"||g==="scroll"){a=true}}if(!a){j="100%"}e=m.owner.hierarchyStateInner;o=m.getOverflowXStyle(h);d=(e.inShrinkWrapTable||o==="auto"||o==="scroll")?"":"fixed"}if(!h.heightModel.shrinkWrap&&!Ext.supports.PercentageHeightOverflowBug){p="100%"}if((j!==l)||m.hasOuterCtPxWidth){c.setStyle("width",j);m.lastOuterCtWidth=j;m.hasOuterCtPxWidth=false}if(d!==n){c.setStyle("table-layout",d);m.lastOuterCtTableLayout=d}if((p!==k)||m.hasOuterCtPxHeight){c.setStyle("height",p);m.lastOuterCtHeight=p;m.hasOuterCtPxHeight=false}if(m.hasInnerCtPxHeight){m.innerCt.setStyle("height","");m.hasInnerCtPxHeight=false}b.overflowAdjust=b.overflowAdjust||m.lastOverflowAdjust},calculate:function(c){var a=this,b=c.state,e=a.getContainerSize(c,true),d=b.calculatedItems||(b.calculatedItems=a.calculateItems?a.calculateItems(c,e):true);a.setCtSizeIfNeeded(c,e);if(d&&c.hasDomProp("containerChildrenSizeDone")){a.calculateContentSize(c);if(e.gotAll){if(a.manageOverflow&&!c.state.secondPass&&!a.reserveScrollbar){a.calculateOverflow(c,e)}return}}a.done=false},calculateContentSize:function(g){var e=this,a=((g.widthModel.shrinkWrap?1:0)|(g.heightModel.shrinkWrap?2:0)),c=(a&1)||undefined,h=(a&2)||undefined,d=0,b=g.props;if(c){if(isNaN(b.contentWidth)){++d}else{c=undefined}}if(h){if(isNaN(b.contentHeight)){++d}else{h=undefined}}if(d){if(c&&!g.setContentWidth(e.measureContentWidth(g))){e.done=false}if(h&&!g.setContentHeight(e.measureContentHeight(g))){e.done=false}}},calculateOverflow:function(c){var h=this,b,k,a,g,e,d,j;e=(h.getOverflowXStyle(c)==="auto");d=(h.getOverflowYStyle(c)==="auto");if(e||d){a=Ext.getScrollbarSize();j=c.overflowContext.el.dom;g=0;if(j.scrollWidth>j.clientWidth){g|=1}if(j.scrollHeight>j.clientHeight){g|=2}b=(d&&(g&2))?a.width:0;k=(e&&(g&1))?a.height:0;if(b!==h.lastOverflowAdjust.width||k!==h.lastOverflowAdjust.height){h.done=false;c.invalidate({state:{overflowAdjust:{width:b,height:k},overflowState:g,secondPass:true}})}}},completeLayout:function(a){this.lastOverflowAdjust=a.state.overflowAdjust},doRenderPadding:function(b,d){var c=d.$layout,a=d.$layout.owner,e=a[a.contentPaddingProperty];if(c.managePadding&&e){b.push("padding:",a.unitizeBox(e))}},finishedLayout:function(b){var a=this.innerCt;this.callParent(arguments);if(Ext.isIEQuirks||Ext.isIE8m){a.repaint()}if(Ext.isOpera){a.setStyle("position","relative");a.dom.scrollWidth;a.setStyle("position","")}},getContainerSize:function(b,c){var a=this.callParent(arguments),d=b.state.overflowAdjust;if(d){a.width-=d.width;a.height-=d.height}return a},getRenderData:function(){var a=this.owner,b=this.callParent();if((Ext.isIEQuirks||Ext.isIE7m)&&((a.shrinkWrap&1)||(a.floating&&!a.width))){b.shrinkWrapWidth=true}return b},getRenderTarget:function(){return this.innerCt},getElementTarget:function(){return this.innerCt},getOverflowXStyle:function(a){return a.overflowXStyle||(a.overflowXStyle=this.owner.scrollFlags.overflowX||a.overflowContext.getStyle("overflow-x"))},getOverflowYStyle:function(a){return a.overflowYStyle||(a.overflowYStyle=this.owner.scrollFlags.overflowY||a.overflowContext.getStyle("overflow-y"))},initContextItems:function(c){var b=this,d=c.target,a=b.owner.customOverflowEl;c.outerCtContext=c.getEl("outerCt",b);c.innerCtContext=c.getEl("innerCt",b);if(a){c.overflowContext=c.getEl(a)}else{c.overflowContext=c.targetContext}if(d[d.contentPaddingProperty]!==undefined){c.paddingContext=b.isShrinkWrapTpl?c.innerCtContext:c.outerCtContext}},initLayout:function(){var c=this,b=Ext.getScrollbarSize().width,a=c.owner;c.callParent();if(b&&c.manageOverflow&&!c.hasOwnProperty("lastOverflowAdjust")){if(a.autoScroll||c.reserveScrollbar){c.lastOverflowAdjust={width:b,height:0}}}},insertTableCt:function(b){var h=this,a=h.owner,c=0,e,g,k,d,j;e=Ext.XTemplate.getTpl(this,"tableTpl");e.renderPadding=h.doRenderPadding;h.outerCt.dom.removeChild(h.innerCt.dom);g=document.createDocumentFragment();k=h.innerCt.dom.childNodes;d=k.length;for(;c",' ","'," ","=0?(l.y-v.y):(v.y+v.height-l.y-l.height));if(z