From c1b42040acc95618fad18daeac7033dbb1b47e69 Mon Sep 17 00:00:00 2001 From: David Heaps Date: Sun, 18 Jan 2015 00:04:14 -0800 Subject: [PATCH] pytomation_web -> Added "Desktop" code to Home Control and made it the default site Removed mobile only site Added "detail" layout to Home Control app (default for desktop) Added Voice Command for Chrome (only browser with Speech API) Fixed scrolling bug (scroll would stick until voice command used) Moved old site to contrib folder Device content now resizes to the smallest size --- HomeControl/www | 2 +- contrib/web_example/index.html | 49 +++ .../web_example}/js/device_grid.js | 0 .../{mobile => }/css/HomeControl-theme.css | 0 .../{mobile => }/css/images/ajax-loader.gif | Bin .../css/images/icons-png/action-black.png | Bin .../css/images/icons-png/action-white.png | Bin .../css/images/icons-png/alert-black.png | Bin .../css/images/icons-png/alert-white.png | Bin .../css/images/icons-png/arrow-d-black.png | Bin .../css/images/icons-png/arrow-d-l-black.png | Bin .../css/images/icons-png/arrow-d-l-white.png | Bin .../css/images/icons-png/arrow-d-r-black.png | Bin .../css/images/icons-png/arrow-d-r-white.png | Bin .../css/images/icons-png/arrow-d-white.png | Bin .../css/images/icons-png/arrow-l-black.png | Bin .../css/images/icons-png/arrow-l-white.png | Bin .../css/images/icons-png/arrow-r-black.png | Bin .../css/images/icons-png/arrow-r-white.png | Bin .../css/images/icons-png/arrow-u-black.png | Bin .../css/images/icons-png/arrow-u-l-black.png | Bin .../css/images/icons-png/arrow-u-l-white.png | Bin .../css/images/icons-png/arrow-u-r-black.png | Bin .../css/images/icons-png/arrow-u-r-white.png | Bin .../css/images/icons-png/arrow-u-white.png | Bin .../css/images/icons-png/audio-black.png | Bin .../css/images/icons-png/audio-white.png | Bin .../css/images/icons-png/back-black.png | Bin .../css/images/icons-png/back-white.png | Bin .../css/images/icons-png/bars-black.png | Bin .../css/images/icons-png/bars-white.png | Bin .../css/images/icons-png/bullets-black.png | Bin .../css/images/icons-png/bullets-white.png | Bin .../css/images/icons-png/calendar-black.png | Bin .../css/images/icons-png/calendar-white.png | Bin .../css/images/icons-png/camera-black.png | Bin .../css/images/icons-png/camera-white.png | Bin .../css/images/icons-png/carat-d-black.png | Bin .../css/images/icons-png/carat-d-white.png | Bin .../css/images/icons-png/carat-l-black.png | Bin .../css/images/icons-png/carat-l-white.png | Bin .../css/images/icons-png/carat-r-black.png | Bin .../css/images/icons-png/carat-r-white.png | Bin .../css/images/icons-png/carat-u-black.png | Bin .../css/images/icons-png/carat-u-white.png | Bin .../css/images/icons-png/check-black.png | Bin .../css/images/icons-png/check-white.png | Bin .../css/images/icons-png/clock-black.png | Bin .../css/images/icons-png/clock-white.png | Bin .../css/images/icons-png/cloud-black.png | Bin .../css/images/icons-png/cloud-white.png | Bin .../css/images/icons-png/comment-black.png | Bin .../css/images/icons-png/comment-white.png | Bin .../css/images/icons-png/delete-black.png | Bin .../css/images/icons-png/delete-white.png | Bin .../css/images/icons-png/edit-black.png | Bin .../css/images/icons-png/edit-white.png | Bin .../css/images/icons-png/eye-black.png | Bin .../css/images/icons-png/eye-white.png | Bin .../css/images/icons-png/forbidden-black.png | Bin .../css/images/icons-png/forbidden-white.png | Bin .../css/images/icons-png/forward-black.png | Bin .../css/images/icons-png/forward-white.png | Bin .../css/images/icons-png/gear-black.png | Bin .../css/images/icons-png/gear-white.png | Bin .../css/images/icons-png/grid-black.png | Bin .../css/images/icons-png/grid-white.png | Bin .../css/images/icons-png/heart-black.png | Bin .../css/images/icons-png/heart-white.png | Bin .../css/images/icons-png/home-black.png | Bin .../css/images/icons-png/home-white.png | Bin .../css/images/icons-png/info-black.png | Bin .../css/images/icons-png/info-white.png | Bin .../css/images/icons-png/location-black.png | Bin .../css/images/icons-png/location-white.png | Bin .../css/images/icons-png/lock-black.png | Bin .../css/images/icons-png/lock-white.png | Bin .../css/images/icons-png/mail-black.png | Bin .../css/images/icons-png/mail-white.png | Bin .../css/images/icons-png/minus-black.png | Bin .../css/images/icons-png/minus-white.png | Bin .../css/images/icons-png/navigation-black.png | Bin .../css/images/icons-png/navigation-white.png | Bin .../css/images/icons-png/phone-black.png | Bin .../css/images/icons-png/phone-white.png | Bin .../css/images/icons-png/plus-black.png | Bin .../css/images/icons-png/plus-white.png | Bin .../css/images/icons-png/power-black.png | Bin .../css/images/icons-png/power-white.png | Bin .../css/images/icons-png/recycle-black.png | Bin .../css/images/icons-png/recycle-white.png | Bin .../css/images/icons-png/refresh-black.png | Bin .../css/images/icons-png/refresh-white.png | Bin .../css/images/icons-png/search-black.png | Bin .../css/images/icons-png/search-white.png | Bin .../css/images/icons-png/shop-black.png | Bin .../css/images/icons-png/shop-white.png | Bin .../css/images/icons-png/star-black.png | Bin .../css/images/icons-png/star-white.png | Bin .../css/images/icons-png/tag-black.png | Bin .../css/images/icons-png/tag-white.png | Bin .../css/images/icons-png/user-black.png | Bin .../css/images/icons-png/user-white.png | Bin .../css/images/icons-png/video-black.png | Bin .../css/images/icons-png/video-white.png | Bin .../css/images/iscroll-pull-icon@2x.png | Bin pytomation_web/{mobile => }/css/index.css | 13 +- .../css/jquery.mobile-1.4.3.min.css | 0 .../css/jquery.mobile.icons.min.css | 0 .../css/jquery.mobile.iscrollview-pull.css | 0 .../css/jquery.mobile.iscrollview.css | 0 .../css/jquery.mobile.structure-1.4.3.min.css | 0 pytomation_web/index.html | 183 ++++++--- pytomation_web/{mobile => }/js/index.js | 379 +++++++++++------- pytomation_web/{mobile => }/js/iscroll.js | 0 .../{mobile => }/js/jquery-1.11.1.min.js | 0 .../js/jquery.mobile-1.4.3.min.js | 0 .../js/jquery.mobile.iscrollview.js | 0 pytomation_web/mobile/.project | 11 - pytomation_web/mobile/index.html | 130 ------ 120 files changed, 429 insertions(+), 338 deletions(-) create mode 100644 contrib/web_example/index.html rename {pytomation_web => contrib/web_example}/js/device_grid.js (100%) rename pytomation_web/{mobile => }/css/HomeControl-theme.css (100%) rename pytomation_web/{mobile => }/css/images/ajax-loader.gif (100%) rename pytomation_web/{mobile => }/css/images/icons-png/action-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/action-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/alert-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/alert-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-l-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-l-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-r-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-r-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-d-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-l-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-l-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-r-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-r-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-l-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-l-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-r-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-r-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/arrow-u-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/audio-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/audio-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/back-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/back-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/bars-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/bars-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/bullets-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/bullets-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/calendar-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/calendar-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/camera-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/camera-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-d-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-d-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-l-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-l-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-r-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-r-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-u-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/carat-u-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/check-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/check-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/clock-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/clock-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/cloud-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/cloud-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/comment-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/comment-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/delete-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/delete-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/edit-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/edit-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/eye-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/eye-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/forbidden-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/forbidden-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/forward-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/forward-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/gear-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/gear-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/grid-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/grid-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/heart-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/heart-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/home-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/home-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/info-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/info-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/location-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/location-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/lock-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/lock-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/mail-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/mail-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/minus-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/minus-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/navigation-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/navigation-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/phone-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/phone-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/plus-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/plus-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/power-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/power-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/recycle-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/recycle-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/refresh-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/refresh-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/search-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/search-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/shop-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/shop-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/star-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/star-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/tag-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/tag-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/user-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/user-white.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/video-black.png (100%) rename pytomation_web/{mobile => }/css/images/icons-png/video-white.png (100%) rename pytomation_web/{mobile => }/css/images/iscroll-pull-icon@2x.png (100%) rename pytomation_web/{mobile => }/css/index.css (77%) rename pytomation_web/{mobile => }/css/jquery.mobile-1.4.3.min.css (100%) rename pytomation_web/{mobile => }/css/jquery.mobile.icons.min.css (100%) rename pytomation_web/{mobile => }/css/jquery.mobile.iscrollview-pull.css (100%) rename pytomation_web/{mobile => }/css/jquery.mobile.iscrollview.css (100%) rename pytomation_web/{mobile => }/css/jquery.mobile.structure-1.4.3.min.css (100%) mode change 100644 => 100755 pytomation_web/index.html rename pytomation_web/{mobile => }/js/index.js (77%) rename pytomation_web/{mobile => }/js/iscroll.js (100%) rename pytomation_web/{mobile => }/js/jquery-1.11.1.min.js (100%) rename pytomation_web/{mobile => }/js/jquery.mobile-1.4.3.min.js (100%) rename pytomation_web/{mobile => }/js/jquery.mobile.iscrollview.js (100%) delete mode 100644 pytomation_web/mobile/.project delete mode 100755 pytomation_web/mobile/index.html diff --git a/HomeControl/www b/HomeControl/www index d8c252e..820d770 120000 --- a/HomeControl/www +++ b/HomeControl/www @@ -1 +1 @@ -../pytomation_web/mobile/ \ No newline at end of file +../pytomation_web/ \ No newline at end of file diff --git a/contrib/web_example/index.html b/contrib/web_example/index.html new file mode 100644 index 0000000..f7f5d4a --- /dev/null +++ b/contrib/web_example/index.html @@ -0,0 +1,49 @@ + + + +Pytomation Web + + + + + + + + + + + + + + + + +
+
+
+

Pytomation Web

+www.pytomation.com

+Devices + + + +
TypeDevice nameStateCommands
+
+
+ + + diff --git a/pytomation_web/js/device_grid.js b/contrib/web_example/js/device_grid.js similarity index 100% rename from pytomation_web/js/device_grid.js rename to contrib/web_example/js/device_grid.js diff --git a/pytomation_web/mobile/css/HomeControl-theme.css b/pytomation_web/css/HomeControl-theme.css similarity index 100% rename from pytomation_web/mobile/css/HomeControl-theme.css rename to pytomation_web/css/HomeControl-theme.css diff --git a/pytomation_web/mobile/css/images/ajax-loader.gif b/pytomation_web/css/images/ajax-loader.gif similarity index 100% rename from pytomation_web/mobile/css/images/ajax-loader.gif rename to pytomation_web/css/images/ajax-loader.gif diff --git a/pytomation_web/mobile/css/images/icons-png/action-black.png b/pytomation_web/css/images/icons-png/action-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/action-black.png rename to pytomation_web/css/images/icons-png/action-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/action-white.png b/pytomation_web/css/images/icons-png/action-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/action-white.png rename to pytomation_web/css/images/icons-png/action-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/alert-black.png b/pytomation_web/css/images/icons-png/alert-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/alert-black.png rename to pytomation_web/css/images/icons-png/alert-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/alert-white.png b/pytomation_web/css/images/icons-png/alert-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/alert-white.png rename to pytomation_web/css/images/icons-png/alert-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-black.png b/pytomation_web/css/images/icons-png/arrow-d-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-black.png rename to pytomation_web/css/images/icons-png/arrow-d-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-l-black.png b/pytomation_web/css/images/icons-png/arrow-d-l-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-l-black.png rename to pytomation_web/css/images/icons-png/arrow-d-l-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-l-white.png b/pytomation_web/css/images/icons-png/arrow-d-l-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-l-white.png rename to pytomation_web/css/images/icons-png/arrow-d-l-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-r-black.png b/pytomation_web/css/images/icons-png/arrow-d-r-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-r-black.png rename to pytomation_web/css/images/icons-png/arrow-d-r-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-r-white.png b/pytomation_web/css/images/icons-png/arrow-d-r-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-r-white.png rename to pytomation_web/css/images/icons-png/arrow-d-r-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-d-white.png b/pytomation_web/css/images/icons-png/arrow-d-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-d-white.png rename to pytomation_web/css/images/icons-png/arrow-d-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-l-black.png b/pytomation_web/css/images/icons-png/arrow-l-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-l-black.png rename to pytomation_web/css/images/icons-png/arrow-l-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-l-white.png b/pytomation_web/css/images/icons-png/arrow-l-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-l-white.png rename to pytomation_web/css/images/icons-png/arrow-l-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-r-black.png b/pytomation_web/css/images/icons-png/arrow-r-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-r-black.png rename to pytomation_web/css/images/icons-png/arrow-r-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-r-white.png b/pytomation_web/css/images/icons-png/arrow-r-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-r-white.png rename to pytomation_web/css/images/icons-png/arrow-r-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-black.png b/pytomation_web/css/images/icons-png/arrow-u-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-black.png rename to pytomation_web/css/images/icons-png/arrow-u-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-l-black.png b/pytomation_web/css/images/icons-png/arrow-u-l-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-l-black.png rename to pytomation_web/css/images/icons-png/arrow-u-l-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-l-white.png b/pytomation_web/css/images/icons-png/arrow-u-l-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-l-white.png rename to pytomation_web/css/images/icons-png/arrow-u-l-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-r-black.png b/pytomation_web/css/images/icons-png/arrow-u-r-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-r-black.png rename to pytomation_web/css/images/icons-png/arrow-u-r-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-r-white.png b/pytomation_web/css/images/icons-png/arrow-u-r-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-r-white.png rename to pytomation_web/css/images/icons-png/arrow-u-r-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/arrow-u-white.png b/pytomation_web/css/images/icons-png/arrow-u-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/arrow-u-white.png rename to pytomation_web/css/images/icons-png/arrow-u-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/audio-black.png b/pytomation_web/css/images/icons-png/audio-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/audio-black.png rename to pytomation_web/css/images/icons-png/audio-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/audio-white.png b/pytomation_web/css/images/icons-png/audio-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/audio-white.png rename to pytomation_web/css/images/icons-png/audio-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/back-black.png b/pytomation_web/css/images/icons-png/back-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/back-black.png rename to pytomation_web/css/images/icons-png/back-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/back-white.png b/pytomation_web/css/images/icons-png/back-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/back-white.png rename to pytomation_web/css/images/icons-png/back-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/bars-black.png b/pytomation_web/css/images/icons-png/bars-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/bars-black.png rename to pytomation_web/css/images/icons-png/bars-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/bars-white.png b/pytomation_web/css/images/icons-png/bars-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/bars-white.png rename to pytomation_web/css/images/icons-png/bars-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/bullets-black.png b/pytomation_web/css/images/icons-png/bullets-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/bullets-black.png rename to pytomation_web/css/images/icons-png/bullets-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/bullets-white.png b/pytomation_web/css/images/icons-png/bullets-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/bullets-white.png rename to pytomation_web/css/images/icons-png/bullets-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/calendar-black.png b/pytomation_web/css/images/icons-png/calendar-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/calendar-black.png rename to pytomation_web/css/images/icons-png/calendar-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/calendar-white.png b/pytomation_web/css/images/icons-png/calendar-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/calendar-white.png rename to pytomation_web/css/images/icons-png/calendar-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/camera-black.png b/pytomation_web/css/images/icons-png/camera-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/camera-black.png rename to pytomation_web/css/images/icons-png/camera-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/camera-white.png b/pytomation_web/css/images/icons-png/camera-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/camera-white.png rename to pytomation_web/css/images/icons-png/camera-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-d-black.png b/pytomation_web/css/images/icons-png/carat-d-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-d-black.png rename to pytomation_web/css/images/icons-png/carat-d-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-d-white.png b/pytomation_web/css/images/icons-png/carat-d-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-d-white.png rename to pytomation_web/css/images/icons-png/carat-d-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-l-black.png b/pytomation_web/css/images/icons-png/carat-l-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-l-black.png rename to pytomation_web/css/images/icons-png/carat-l-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-l-white.png b/pytomation_web/css/images/icons-png/carat-l-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-l-white.png rename to pytomation_web/css/images/icons-png/carat-l-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-r-black.png b/pytomation_web/css/images/icons-png/carat-r-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-r-black.png rename to pytomation_web/css/images/icons-png/carat-r-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-r-white.png b/pytomation_web/css/images/icons-png/carat-r-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-r-white.png rename to pytomation_web/css/images/icons-png/carat-r-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-u-black.png b/pytomation_web/css/images/icons-png/carat-u-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-u-black.png rename to pytomation_web/css/images/icons-png/carat-u-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/carat-u-white.png b/pytomation_web/css/images/icons-png/carat-u-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/carat-u-white.png rename to pytomation_web/css/images/icons-png/carat-u-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/check-black.png b/pytomation_web/css/images/icons-png/check-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/check-black.png rename to pytomation_web/css/images/icons-png/check-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/check-white.png b/pytomation_web/css/images/icons-png/check-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/check-white.png rename to pytomation_web/css/images/icons-png/check-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/clock-black.png b/pytomation_web/css/images/icons-png/clock-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/clock-black.png rename to pytomation_web/css/images/icons-png/clock-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/clock-white.png b/pytomation_web/css/images/icons-png/clock-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/clock-white.png rename to pytomation_web/css/images/icons-png/clock-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/cloud-black.png b/pytomation_web/css/images/icons-png/cloud-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/cloud-black.png rename to pytomation_web/css/images/icons-png/cloud-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/cloud-white.png b/pytomation_web/css/images/icons-png/cloud-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/cloud-white.png rename to pytomation_web/css/images/icons-png/cloud-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/comment-black.png b/pytomation_web/css/images/icons-png/comment-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/comment-black.png rename to pytomation_web/css/images/icons-png/comment-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/comment-white.png b/pytomation_web/css/images/icons-png/comment-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/comment-white.png rename to pytomation_web/css/images/icons-png/comment-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/delete-black.png b/pytomation_web/css/images/icons-png/delete-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/delete-black.png rename to pytomation_web/css/images/icons-png/delete-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/delete-white.png b/pytomation_web/css/images/icons-png/delete-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/delete-white.png rename to pytomation_web/css/images/icons-png/delete-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/edit-black.png b/pytomation_web/css/images/icons-png/edit-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/edit-black.png rename to pytomation_web/css/images/icons-png/edit-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/edit-white.png b/pytomation_web/css/images/icons-png/edit-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/edit-white.png rename to pytomation_web/css/images/icons-png/edit-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/eye-black.png b/pytomation_web/css/images/icons-png/eye-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/eye-black.png rename to pytomation_web/css/images/icons-png/eye-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/eye-white.png b/pytomation_web/css/images/icons-png/eye-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/eye-white.png rename to pytomation_web/css/images/icons-png/eye-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/forbidden-black.png b/pytomation_web/css/images/icons-png/forbidden-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/forbidden-black.png rename to pytomation_web/css/images/icons-png/forbidden-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/forbidden-white.png b/pytomation_web/css/images/icons-png/forbidden-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/forbidden-white.png rename to pytomation_web/css/images/icons-png/forbidden-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/forward-black.png b/pytomation_web/css/images/icons-png/forward-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/forward-black.png rename to pytomation_web/css/images/icons-png/forward-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/forward-white.png b/pytomation_web/css/images/icons-png/forward-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/forward-white.png rename to pytomation_web/css/images/icons-png/forward-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/gear-black.png b/pytomation_web/css/images/icons-png/gear-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/gear-black.png rename to pytomation_web/css/images/icons-png/gear-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/gear-white.png b/pytomation_web/css/images/icons-png/gear-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/gear-white.png rename to pytomation_web/css/images/icons-png/gear-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/grid-black.png b/pytomation_web/css/images/icons-png/grid-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/grid-black.png rename to pytomation_web/css/images/icons-png/grid-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/grid-white.png b/pytomation_web/css/images/icons-png/grid-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/grid-white.png rename to pytomation_web/css/images/icons-png/grid-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/heart-black.png b/pytomation_web/css/images/icons-png/heart-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/heart-black.png rename to pytomation_web/css/images/icons-png/heart-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/heart-white.png b/pytomation_web/css/images/icons-png/heart-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/heart-white.png rename to pytomation_web/css/images/icons-png/heart-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/home-black.png b/pytomation_web/css/images/icons-png/home-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/home-black.png rename to pytomation_web/css/images/icons-png/home-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/home-white.png b/pytomation_web/css/images/icons-png/home-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/home-white.png rename to pytomation_web/css/images/icons-png/home-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/info-black.png b/pytomation_web/css/images/icons-png/info-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/info-black.png rename to pytomation_web/css/images/icons-png/info-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/info-white.png b/pytomation_web/css/images/icons-png/info-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/info-white.png rename to pytomation_web/css/images/icons-png/info-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/location-black.png b/pytomation_web/css/images/icons-png/location-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/location-black.png rename to pytomation_web/css/images/icons-png/location-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/location-white.png b/pytomation_web/css/images/icons-png/location-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/location-white.png rename to pytomation_web/css/images/icons-png/location-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/lock-black.png b/pytomation_web/css/images/icons-png/lock-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/lock-black.png rename to pytomation_web/css/images/icons-png/lock-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/lock-white.png b/pytomation_web/css/images/icons-png/lock-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/lock-white.png rename to pytomation_web/css/images/icons-png/lock-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/mail-black.png b/pytomation_web/css/images/icons-png/mail-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/mail-black.png rename to pytomation_web/css/images/icons-png/mail-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/mail-white.png b/pytomation_web/css/images/icons-png/mail-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/mail-white.png rename to pytomation_web/css/images/icons-png/mail-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/minus-black.png b/pytomation_web/css/images/icons-png/minus-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/minus-black.png rename to pytomation_web/css/images/icons-png/minus-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/minus-white.png b/pytomation_web/css/images/icons-png/minus-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/minus-white.png rename to pytomation_web/css/images/icons-png/minus-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/navigation-black.png b/pytomation_web/css/images/icons-png/navigation-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/navigation-black.png rename to pytomation_web/css/images/icons-png/navigation-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/navigation-white.png b/pytomation_web/css/images/icons-png/navigation-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/navigation-white.png rename to pytomation_web/css/images/icons-png/navigation-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/phone-black.png b/pytomation_web/css/images/icons-png/phone-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/phone-black.png rename to pytomation_web/css/images/icons-png/phone-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/phone-white.png b/pytomation_web/css/images/icons-png/phone-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/phone-white.png rename to pytomation_web/css/images/icons-png/phone-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/plus-black.png b/pytomation_web/css/images/icons-png/plus-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/plus-black.png rename to pytomation_web/css/images/icons-png/plus-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/plus-white.png b/pytomation_web/css/images/icons-png/plus-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/plus-white.png rename to pytomation_web/css/images/icons-png/plus-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/power-black.png b/pytomation_web/css/images/icons-png/power-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/power-black.png rename to pytomation_web/css/images/icons-png/power-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/power-white.png b/pytomation_web/css/images/icons-png/power-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/power-white.png rename to pytomation_web/css/images/icons-png/power-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/recycle-black.png b/pytomation_web/css/images/icons-png/recycle-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/recycle-black.png rename to pytomation_web/css/images/icons-png/recycle-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/recycle-white.png b/pytomation_web/css/images/icons-png/recycle-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/recycle-white.png rename to pytomation_web/css/images/icons-png/recycle-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/refresh-black.png b/pytomation_web/css/images/icons-png/refresh-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/refresh-black.png rename to pytomation_web/css/images/icons-png/refresh-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/refresh-white.png b/pytomation_web/css/images/icons-png/refresh-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/refresh-white.png rename to pytomation_web/css/images/icons-png/refresh-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/search-black.png b/pytomation_web/css/images/icons-png/search-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/search-black.png rename to pytomation_web/css/images/icons-png/search-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/search-white.png b/pytomation_web/css/images/icons-png/search-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/search-white.png rename to pytomation_web/css/images/icons-png/search-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/shop-black.png b/pytomation_web/css/images/icons-png/shop-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/shop-black.png rename to pytomation_web/css/images/icons-png/shop-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/shop-white.png b/pytomation_web/css/images/icons-png/shop-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/shop-white.png rename to pytomation_web/css/images/icons-png/shop-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/star-black.png b/pytomation_web/css/images/icons-png/star-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/star-black.png rename to pytomation_web/css/images/icons-png/star-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/star-white.png b/pytomation_web/css/images/icons-png/star-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/star-white.png rename to pytomation_web/css/images/icons-png/star-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/tag-black.png b/pytomation_web/css/images/icons-png/tag-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/tag-black.png rename to pytomation_web/css/images/icons-png/tag-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/tag-white.png b/pytomation_web/css/images/icons-png/tag-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/tag-white.png rename to pytomation_web/css/images/icons-png/tag-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/user-black.png b/pytomation_web/css/images/icons-png/user-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/user-black.png rename to pytomation_web/css/images/icons-png/user-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/user-white.png b/pytomation_web/css/images/icons-png/user-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/user-white.png rename to pytomation_web/css/images/icons-png/user-white.png diff --git a/pytomation_web/mobile/css/images/icons-png/video-black.png b/pytomation_web/css/images/icons-png/video-black.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/video-black.png rename to pytomation_web/css/images/icons-png/video-black.png diff --git a/pytomation_web/mobile/css/images/icons-png/video-white.png b/pytomation_web/css/images/icons-png/video-white.png similarity index 100% rename from pytomation_web/mobile/css/images/icons-png/video-white.png rename to pytomation_web/css/images/icons-png/video-white.png diff --git a/pytomation_web/mobile/css/images/iscroll-pull-icon@2x.png b/pytomation_web/css/images/iscroll-pull-icon@2x.png similarity index 100% rename from pytomation_web/mobile/css/images/iscroll-pull-icon@2x.png rename to pytomation_web/css/images/iscroll-pull-icon@2x.png diff --git a/pytomation_web/mobile/css/index.css b/pytomation_web/css/index.css similarity index 77% rename from pytomation_web/mobile/css/index.css rename to pytomation_web/css/index.css index 82ea1e3..0482a88 100755 --- a/pytomation_web/mobile/css/index.css +++ b/pytomation_web/css/index.css @@ -28,13 +28,18 @@ div.ui-slider { left: -53px; clear: both; } -.singleDevice { +.singleDevice, .singleDevice2 { border-style: groove; border-width: thin; padding-left: 1px; padding-right: 0px; width:100%; } +.commandContent{ + position: relative; + top: 50%; + transform: translateY(-50%); +} #mainContent{ padding: 0 0 0 0; } @@ -47,4 +52,10 @@ div.ui-slider { .ui-select { margin-top: 0; margin-bottom: 2px; +} +.command { + margin-top: 0; + margin-bottom: 3px; + margin-left: 2px; + margin-right: 0; } \ No newline at end of file diff --git a/pytomation_web/mobile/css/jquery.mobile-1.4.3.min.css b/pytomation_web/css/jquery.mobile-1.4.3.min.css similarity index 100% rename from pytomation_web/mobile/css/jquery.mobile-1.4.3.min.css rename to pytomation_web/css/jquery.mobile-1.4.3.min.css diff --git a/pytomation_web/mobile/css/jquery.mobile.icons.min.css b/pytomation_web/css/jquery.mobile.icons.min.css similarity index 100% rename from pytomation_web/mobile/css/jquery.mobile.icons.min.css rename to pytomation_web/css/jquery.mobile.icons.min.css diff --git a/pytomation_web/mobile/css/jquery.mobile.iscrollview-pull.css b/pytomation_web/css/jquery.mobile.iscrollview-pull.css similarity index 100% rename from pytomation_web/mobile/css/jquery.mobile.iscrollview-pull.css rename to pytomation_web/css/jquery.mobile.iscrollview-pull.css diff --git a/pytomation_web/mobile/css/jquery.mobile.iscrollview.css b/pytomation_web/css/jquery.mobile.iscrollview.css similarity index 100% rename from pytomation_web/mobile/css/jquery.mobile.iscrollview.css rename to pytomation_web/css/jquery.mobile.iscrollview.css diff --git a/pytomation_web/mobile/css/jquery.mobile.structure-1.4.3.min.css b/pytomation_web/css/jquery.mobile.structure-1.4.3.min.css similarity index 100% rename from pytomation_web/mobile/css/jquery.mobile.structure-1.4.3.min.css rename to pytomation_web/css/jquery.mobile.structure-1.4.3.min.css diff --git a/pytomation_web/index.html b/pytomation_web/index.html old mode 100644 new mode 100755 index f7f5d4a..14391a8 --- a/pytomation_web/index.html +++ b/pytomation_web/index.html @@ -1,49 +1,138 @@ - - -Pytomation Web - - - - - - - - - - - - - - - - -
-
-
-

Pytomation Web

-www.pytomation.com

-Devices - - - -
TypeDevice nameStateCommands
-
-
- - + + + + + + + + + + + + + + + + + + + + Pytomation - Home Control + + + +
+
+
+
+ +
+
+ Settings +
+
+ +
+
+ + Pull for “Voice Command” +
+ + + +
+ + +
+ +
+
+ + +
+
+ + + +
+

+ close +

+
+
+ + +
+
+

Settings

+
+ +
+
+

+ Main Server (http[s]://192.168.x.x:8080) + Away Server (http[s]://mydyndns.dyn.com:xxxx) + User Name + Password +

+

+ Select a theme:
+ + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + +
+

+
+
+ + + + +
+
+

+ Save Settings +

+
+
+
+ + \ No newline at end of file diff --git a/pytomation_web/mobile/js/index.js b/pytomation_web/js/index.js similarity index 77% rename from pytomation_web/mobile/js/index.js rename to pytomation_web/js/index.js index 527efa2..de4fef5 100755 --- a/pytomation_web/mobile/js/index.js +++ b/pytomation_web/js/index.js @@ -12,35 +12,46 @@ var onServer = false; var resizeTimer; var ws; var upgradeConnection; -var shake; +var style = "compact"; +var changingStyle = false; +var isCordovaApp= !!window.cordova; +var isMobile; //document.addEventListener("deviceready", init, false); function init() { + //set isMobile + if (isCordovaApp) + isMobile = true; + else + (function(a){isMobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))})(navigator.userAgent||navigator.vendor||window.opera); + window.isAndroid = navigator.userAgent.indexOf('Android') !== -1; + //fix for Dolphin not being detected as mobile + if (window.isAndroid) isMobile = true; + load_settings(); if (currentTheme !== 'a') theme_changed(currentTheme); //resize sliders, taking the hidden text box into accout $(window).resize(function() { clearTimeout(resizeTimer); - resizeTimer = setTimeout(function() { - var device_width = $(window).innerWidth(); - device_width=(device_width / 2) - 38; - $('.ui-slider-track ').width(device_width); - }, 200); + resizeTimer = setTimeout(recalc_device_content_size, 200); }); //resizeTimer // Voice Command pulldown - if(navigator.userAgent.indexOf('Android') !== -1){ + if(window.isAndroid && isCordovaApp){ + $(".iscroll-wrapper", $('#main')).bind( { + iscroll_onpulldown : doVoice + } ); + } else if (window.chrome && !isMobile) { $(".iscroll-wrapper", $('#main')).bind( { iscroll_onpulldown : doVoice } ); - } + } else { $(".iscroll-wrapper").data("mobileIscrollview").destroy(); $(".iscroll-pulldown").remove(); } // Voice Command pulldown - get_device_data_ajax(); }; // init $(document).ready(init); @@ -78,7 +89,7 @@ function theme_changed(selectedTheme){ } //theme changed function get_storage_item(key) { - item = window.localStorage.getItem(key) + item = window.localStorage.getItem(key); if (item==='null' || item === null) return ''; else return item; } @@ -89,14 +100,17 @@ function load_settings() { userName = get_storage_item("userName"); password = get_storage_item("password"); currentTheme = get_storage_item("currentTheme"); + style = get_storage_item("style"); currentServer = serverName; - + if (style === '') + if (isMobile) style = 'compact' ; + else style = 'detail'; var settingsForm = document.forms['settingsForm']; settingsForm.elements["serverName"].value = serverName; settingsForm.elements["serverName2"].value = serverName2; settingsForm.elements["userName"].value = userName; settingsForm.elements["password"].value = password; - + settingsForm.elements["LayoutStyle"].value = style; if (currentTheme === '') currentTheme = 'a'; auth = (userName!==''); } //Load Settings @@ -107,11 +121,13 @@ function save_settings() { serverName2 = settingsForm.elements["serverName2"].value; userName = settingsForm.elements["userName"].value; password = settingsForm.elements["password"].value; + style = settingsForm.elements["LayoutStyle"].value; window.localStorage.setItem("serverName", serverName); window.localStorage.setItem("serverName2", serverName2); window.localStorage.setItem("userName", userName); window.localStorage.setItem("password", password); window.localStorage.setItem("currentTheme", currentTheme); + window.localStorage.setItem("style", style); currentServer = serverName; auth = (userName!==''); get_device_data_ajax(); @@ -185,6 +201,7 @@ function get_device_data_callback(data) { } reload_device_grid(); setup_ws_connection(); + $(".iscroll-wrapper").data("mobileIscrollview").refresh(); } function setup_ws_connection() { @@ -257,6 +274,31 @@ function check_ws_connection(){ } } +function recalc_slider_size() { + var device_width = $(window).innerWidth(); + device_width=(device_width / 2) - 40; + $('.ui-slider-track ').width(device_width); +} + +function recalc_device_content_size(){ + recalc_slider_size(); + + $("#tableDevices > tbody > tr").each(function(i, row) { + var LeftDevice = $(row.children[0].children[0]); + var RightDevice = $(row.children[1].children[0]); + var LeftDeviceContentHeight = $(row.children[0].children[0].children[0]).height(); + var RightDeviceContentHeight = $(row.children[1].children[0].children[0]).height(); + var ContentHeight; + if (LeftDeviceContentHeight > RightDeviceContentHeight) + ContentHeight = LeftDeviceContentHeight; + else + ContentHeight = RightDeviceContentHeight; + + LeftDevice.height(ContentHeight); + RightDevice.height(ContentHeight); + }); +} + function get_device_data_ajax() { var url; if (currentServer === '') { @@ -381,7 +423,7 @@ function reload_device_grid() { else if (values['type_name'] === 'Thermostat') { rowData+= ""; } - rowData += "
"; + rowData += "
"; if (values['type_name'] === 'Thermostat'){ rowData += ""; else - rowData += ""; + rowData += ""; } if (values['type_name'] === 'Thermostat'){ devicesLong.push(rowData); } else { - if (deviceColumn === 2) { - rowData+= ""; - deviceColumn = 1; - } - else - deviceColumn = 2; + if (style === "compact") { + if (deviceColumn === 2) { + rowData+= ""; + deviceColumn = 1; + } + else + deviceColumn = 2; + } else + rowData+= ""; devices.push(rowData); } } // if type }); // each device if (deviceColumn === 2 ) { - devices.push(""); + devices.push(""); } if (devices) { $("#tableDevices").find("tr").remove(); @@ -443,72 +488,106 @@ function reload_device_grid() { $("#tableDevicesLong").find("tr").remove(); $("#tableDevicesLong").append(devicesLong.join('')).trigger('create'); } + + //Add and event handlers $(".toggle").click(on_device_command); $(".room_toggle").click(on_device_command); $(".decrementSetpoint").click(decrementSetpoint); $(".incrementSetpoint").click(incrementSetpoint); $(".ui-slider").mouseup(send_level); $(".ui-slider").touchend(send_level); - $(".toggle").bind("taphold", commandsPopup); $('.thermostatMode').bind("change", changeMode); + if (style === "compact" && isMobile) + $(".toggle").bind("taphold", commandsPopup); + else + $(".toggle").contextmenu(function(e) { + e.preventDefault(); + if(e.which === 3) { + var deviceID = $(this).attr('deviceId'); + commandsPopup(deviceID); + } + }); + if (style !== "compact") $(".command").click(on_device_command); + //resize slider, taking the hidden text box into accout - var device_width = $(window).innerWidth(); - device_width=(device_width / 2) - 40; - $('.ui-slider-track ').width(device_width); + recalc_slider_size(); + + //recalculate slider size when scrollbars appear (only in desktop version) + setTimeout(recalc_device_content_size,500); } // reload device grid -function changeMode(eventObject){ - deviceID = $(this).attr('deviceId'); - command = $(this).val(); - send_command(deviceID, command); -} - -function decrementSetpoint(eventObject){ - deviceID = $(this).attr('deviceId'); - var setpoint = 0; - $.each(deviceData[deviceID]['state'], function(stateIndex, statePart) { - if (statePart[0] === 'setpoint') {setpoint = statePart[1] - 1;} - }); //each - send_command(deviceID,'setpoint,' + setpoint); -} - -function incrementSetpoint(eventObject){ - deviceID = $(this).attr('deviceId'); +function update_device_state(data) { + if (data === 'success') return; + var id = data['id']; + var state = data['state']; + var name = data['name']; + var brAdded=false; + var buttonLabel=""; var setpoint = 0; - $.each(deviceData[deviceID]['state'], function(stateIndex, statePart) { - if (statePart[0] === 'setpoint') {setpoint = statePart[1] + 1;} - }); //each - send_command(deviceID,'setpoint,' + setpoint); -} + var mode = 'off'; + var temp = 0; + deviceData[id]['state'] = state; + if (data['type_name'] === 'Thermostat') { + $.each(state, function(stateIndex, statePart) { + if (statePart[0] === 'temp') temp = statePart[1] + '°'; + if (statePart[0] === 'mode') mode = statePart[1]; + if (statePart[0] === 'setpoint') {setpoint = statePart[1]; buttonLabel=setpoint + '°';} + }); //each + $('div[data-id="' + id + '"] .temperature').html(temp); + $('div[data-id="' + id + '"] button.toggle').html(buttonLabel); + var element = $('div[data-id="' + id + '"] .thermostatMode '); + element.val(mode); -function commandsPopup(event) { - var deviceID = $(this).attr('deviceId'); - update_command_table(deviceID); - $('div[data-id="' + deviceID + '"] a.commandPopupToggle').click(); -} // commandsPopup + //jQuery mobile error work-around, seemingly a race condition + var stillTrying = true; + while (stillTrying){ + try{ + element.selectmenu().selectmenu("refresh"); + stillTrying = false; + } + catch(err){ -function update_command_table(deviceID) { - $("#tableCommands").find("tr").remove(); - var commands = []; - $.each(deviceData, function(cacheindex, values) { - if (values['id'] === deviceID) { - if (values['commands']) { - $.each(values['commands'], function(index, command){ - commands.push(""); - }); //each - $("#tableCommands").append(commands.join(" ")).trigger('create'); - $(".command").click(on_device_command); - } // if has commands - } // if device - }); //each cached device -} //update command table + } + } + + } else { + if (name.length > 18) { + $.each(name.split(' '), function(nameIndex,namepart) { + if (namepart.length > 18) namepart = namepart.substring(0,18); + if (!brAdded && buttonLabel.length+ namepart.length>17) { + buttonLabel += '
'; + brAdded = true; + firstLineLength = buttonLabel.length; + buttonLabel += namepart; + } else + buttonLabel += namepart + ' '; + }); + } + else + buttonLabel = name; -function on_device_command(eventObject) { - command = $(this).attr('command'); - deviceID = $(this).attr('deviceId'); - send_command(deviceID, command); - return false; -} //on device command + if (brAdded) { + buttonLabel.substring(0,buttonLabel.length + 18 - (buttonLabel.length - firstLineLength + state.length)); + buttonLabel += ' - ' + state; + } + else buttonLabel += '
' + state; + if (state === 'on') + sliderValue = 100; + else if (state === 'off') + sliderValue = 0; + else{ + sliderValue = state[1]; + } // slider level + $('div[data-id="' + id + '"] button.toggle').html(buttonLabel); + if (data['type_name'] === 'Room') { + buttonLabel = data['state']; + if (buttonLabel === 'unknown') buttonLabel = "Occupancy Unknown"; + $('div[data-id="' + id + '"] button.room_toggle').html(buttonLabel); + } + $('#slider' + id).val(sliderValue); + $('#slider' + id).slider('refresh'); + } // if type name +} function send_command(deviceID, command) { if (upgradeConnection) { @@ -559,13 +638,27 @@ function send_command_ajax(deviceID, command) { function doVoice(event, data) { var maxMatches = 3; - window.plugins.speechrecognizer.startRecognize(function(result){ - send_voice_command(result); - data.iscrollview.refresh(); - }, function(errorMessage){ - alert("Error message: " + errorMessage); - data.iscrollview.refresh(); - }, maxMatches, 'Speak now'); + if (window.chrome) { + var recognizer = new webkitSpeechRecognition(); + recognizer.onresult = function(event) { + //var command = [event.results[0][0].transcript]; + send_voice_command([event.results[0][0].transcript]); + data.iscrollview.refresh(); + }; + recognizer.onerror = function(event) { + alert(event.message); + data.iscrollview.refresh(); + }; + recognizer.start(); + } else { + window.plugins.speechrecognizer.startRecognize(function(result){ + send_voice_command(result); + data.iscrollview.refresh(); + }, function(errorMessage){ + alert("Error message: " + errorMessage); + data.iscrollview.refresh(); + }, maxMatches, 'Speak now'); + } }; function send_voice_command(command) { @@ -618,77 +711,67 @@ function send_voice_command_ajax(command) { function send_level() { var deviceID = $(this).children('input').attr('deviceId'); send_command(deviceID,'level,' + $(this).children('input').val()); + $(this).click(); + jQuery(document).trigger('mouseup'); } // send level -function update_device_state(data) { - if (data === 'success') return; - var id = data['id']; - var state = data['state']; - var name = data['name']; - var brAdded=false; - var buttonLabel=""; +function changeMode(eventObject){ + deviceID = $(this).attr('deviceId'); + command = $(this).val(); + send_command(deviceID, command); +} + +function decrementSetpoint(eventObject){ + deviceID = $(this).attr('deviceId'); var setpoint = 0; - var mode = 'off'; - var temp = 0; - deviceData[id]['state'] = state; - if (data['type_name'] === 'Thermostat') { - $.each(state, function(stateIndex, statePart) { - if (statePart[0] === 'temp') temp = statePart[1] + '°'; - if (statePart[0] === 'mode') mode = statePart[1]; - if (statePart[0] === 'setpoint') {setpoint = statePart[1]; buttonLabel=setpoint + '°';} - }); //each - $('div[data-id="' + id + '"] .temperature').html(temp); - $('div[data-id="' + id + '"] button.toggle').html(buttonLabel); - var element = $('div[data-id="' + id + '"] .thermostatMode '); - element.val(mode); + $.each(deviceData[deviceID]['state'], function(stateIndex, statePart) { + if (statePart[0] === 'setpoint') {setpoint = statePart[1] - 1;} + }); //each + send_command(deviceID,'setpoint,' + setpoint); +} - //jQuery mobile error work-around, seemingly a race condition - var stillTrying = true; - while (stillTrying){ - try{ - element.selectmenu().selectmenu("refresh"); - stillTrying = false; - } - catch(err){ +function incrementSetpoint(eventObject){ + deviceID = $(this).attr('deviceId'); + var setpoint = 0; + $.each(deviceData[deviceID]['state'], function(stateIndex, statePart) { + if (statePart[0] === 'setpoint') {setpoint = statePart[1] + 1;} + }); //each + send_command(deviceID,'setpoint,' + setpoint); +} - } - } - - } else { - if (name.length > 18) { - $.each(name.split(' '), function(nameIndex,namepart) { - if (namepart.length > 18) namepart = namepart.substring(0,18); - if (!brAdded && buttonLabel.length+ namepart.length>17) { - buttonLabel += '
'; - brAdded = true; - firstLineLength = buttonLabel.length; - buttonLabel += namepart; - } else - buttonLabel += namepart + ' '; - }); - } - else - buttonLabel = name; +function commandsPopup(deviceID) { + var myDeviceID; + if (typeof deviceID !== 'undefined') + myDeviceID = deviceID; + else + myDeviceID = $(this).attr('deviceId'); + $("#tableCommands").find("tr").remove(); + $("#tableCommands").append(build_command_list(myDeviceID, "full")).trigger('create'); + $(".command").click(on_device_command); + $('div[data-id="' + myDeviceID + '"] a.commandPopupToggle').click(); +} // commandsPopup - if (brAdded) { - buttonLabel.substring(0,buttonLabel.length + 18 - (buttonLabel.length - firstLineLength + state.length)); - buttonLabel += ' - ' + state; - } - else buttonLabel += '
' + state; - if (state === 'on') - sliderValue = 100; - else if (state === 'off') - sliderValue = 0; - else{ - sliderValue = state[1]; - } // slider level - $('div[data-id="' + id + '"] button.toggle').html(buttonLabel); - if (data['type_name'] === 'Room') { - buttonLabel = data['state']; - if (buttonLabel === 'unknown') buttonLabel = "Occupancy Unknown"; - $('div[data-id="' + id + '"] button.room_toggle').html(buttonLabel); - } - $('#slider' + id).val(sliderValue); - $('#slider' + id).slider('refresh'); - } // if type name -} +function build_command_list(deviceID, mode) { + var commands = []; + $.each(deviceData, function(cacheindex, values) { + if (values['id'] === deviceID) { + if (values['commands']) { + $.each(values['commands'], function(index, command){ + if (mode === "full") { + commands.push(""); + } else { + commands.push("" + command + ""); + } + }); //each + } // if has commands + } // if device + }); //each cached device + return commands.join(" "); +} //update command table + +function on_device_command(eventObject) { + command = $(this).attr('command'); + deviceID = $(this).attr('deviceId'); + send_command(deviceID, command); + return false; +} //on device command \ No newline at end of file diff --git a/pytomation_web/mobile/js/iscroll.js b/pytomation_web/js/iscroll.js similarity index 100% rename from pytomation_web/mobile/js/iscroll.js rename to pytomation_web/js/iscroll.js diff --git a/pytomation_web/mobile/js/jquery-1.11.1.min.js b/pytomation_web/js/jquery-1.11.1.min.js similarity index 100% rename from pytomation_web/mobile/js/jquery-1.11.1.min.js rename to pytomation_web/js/jquery-1.11.1.min.js diff --git a/pytomation_web/mobile/js/jquery.mobile-1.4.3.min.js b/pytomation_web/js/jquery.mobile-1.4.3.min.js similarity index 100% rename from pytomation_web/mobile/js/jquery.mobile-1.4.3.min.js rename to pytomation_web/js/jquery.mobile-1.4.3.min.js diff --git a/pytomation_web/mobile/js/jquery.mobile.iscrollview.js b/pytomation_web/js/jquery.mobile.iscrollview.js similarity index 100% rename from pytomation_web/mobile/js/jquery.mobile.iscrollview.js rename to pytomation_web/js/jquery.mobile.iscrollview.js diff --git a/pytomation_web/mobile/.project b/pytomation_web/mobile/.project deleted file mode 100644 index 5d16def..0000000 --- a/pytomation_web/mobile/.project +++ /dev/null @@ -1,11 +0,0 @@ - - - HomeController-www - - - - - - - - diff --git a/pytomation_web/mobile/index.html b/pytomation_web/mobile/index.html deleted file mode 100755 index fa1fa7e..0000000 --- a/pytomation_web/mobile/index.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - Home Control - - - - -
-
-
-
- -
-
- Settings -
-
- -
-
- - Pull for “Voice Command” -
- -
" + temp; @@ -416,24 +458,27 @@ function reload_device_grid() { if (values['type_name'] === 'Light') rowData += "
" + build_command_list(values['id'],"mini") + "
- -
- - -
- -
-
- - -
-
- - - -
-

- close -

-
-
- - -
-
-

Settings

-
- -
-
-

- Main Server:Port - Away Server:Port - User Name - Password -

-

- Select a theme:
- - - - - - - - - - - - - - - -
-
- - - - - - - - - - - - - - - -
-

-

- Save Settings -

-
-
-
- - \ No newline at end of file