117 changed files with 2809 additions and 1989 deletions
View File
+19 -7
View File
@@ -1,14 +1,26 @@
AddHandler application/x-httpd-php .html .htm
<IfModule mod_deflate.c>
<IfModule mod_setenvif.c>
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
</IfModule>
<IfModule mod_headers.c>
Header append Vary User-Agent env=!dont-vary
</IfModule>
AddOutputFilterByType DEFLATE text/css application/x-javascript text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon
</IfModule>
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index.html$ /NewMobileWebSite/index.php [L]
RewriteRule ^js/libs/(.*)\.[0-9]+\.js$ /NewMobileWebSite/js/libs/$1.js [L]
RewriteRule ^js/(.*)\.[0-9]+\.js$ /NewMobileWebSite/js/$1.js [L]
RewriteRule ^css/(.*)\.[0-9]+\.css$ /NewMobileWebSite/css/$1.css [L]
RewriteRule ^Resources/img/(.*)\.[0-9]+\.png$ /NewMobileWebSite/Resources/img/$1.png [L]
RewriteRule ^Resources/img/(.*)\.[0-9]+\.gif$ /NewMobileWebSite/Resources/img/$1.gif [L]
RewriteRule ^Resources/icons/(.*)\.[0-9]+\.png$ /NewMobileWebSite/Resources/icons/$1.png [L]
RewriteRule ^index.html$ index.php [L]
RewriteRule ^js/libs/(.*)\.[0-9]+\.js$ /WebClient_Manut/js/libs/$1.js [L]
RewriteRule ^js/(.*)\.[0-9]+\.js$ /WebClient_Manut/js/$1.js [L]
RewriteRule ^css/(.*)\.[0-9]+\.css$ /WebClient_Manut/css/$1.css [L]
RewriteRule ^Resources/img/(.*)\.[0-9]+\.png$ /WebClient_Manut/Resources/img/$1.png [L]
RewriteRule ^Resources/img/(.*)\.[0-9]+\.gif$ /WebClient_Manut/Resources/img/$1.gif [L]
RewriteRule ^Resources/icons/(.*)\.[0-9]+\.png$ /WebClient_Manut/Resources/icons/$1.png [L]
</ifModule>
<ifModule mod_headers.c>
Binary file not shown.

After

Width:  |  Height:  |  Size: 859 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 770 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 712 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 669 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 741 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 921 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 677 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 681 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 561 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 874 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 665 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 436 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 679 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 864 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 809 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 738 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

+3 -1
View File
@@ -1,4 +1,6 @@
call uglifyjs .\js\libs\hello.min.js .\js\libs\ua-parser.min.js -o .\js\common.min.js
REM node r.js -o app.build_dev.js
node r.js -o app.build_prod.js
REM call cleancss -o .\css\loadingStyle.min.css .\css\loadingStyle.css
call cleancss -o .\css\style.min.css .\css\style.css
call buildcss.cmd
pause
+1
View File
@@ -0,0 +1 @@
call cleancss --s0 --skip-rebase -o .\css\style.min.css .\css\style.css
+164
View File
@@ -706,6 +706,170 @@ html head + body .ui-body-c.ui-focus {
}
/* D
-----------------------------------------------------------------------------------------------------------*/
/* Bar: Toolbars, dividers, slider track */
.ui-bar-d,
.ui-page-theme-d .ui-bar-inherit,
html .ui-bar-d .ui-bar-inherit,
html .ui-body-d .ui-bar-inherit,
html body .ui-group-theme-d .ui-bar-inherit {
background-color: #3b5998 /*{d-bar-background-color}*/;
border-color: #223762 /*{d-bar-border}*/;
color: #ffffff /*{d-bar-color}*/;
text-shadow: 0 /*{d-bar-shadow-x}*/ 1px /*{d-bar-shadow-y}*/ 0 /*{d-bar-shadow-radius}*/ #5e5e5e /*{d-bar-shadow-color}*/;
font-weight: bold;
}
.ui-bar-d {
border-width: 1px;
border-style: solid;
}
/* Page and overlay */
.ui-overlay-d,
.ui-page-theme-d,
.ui-page-theme-d .ui-panel-wrapper {
background-color: #f9f9f9 /*{d-page-background-color}*/;
border-color: #bbbbbb /*{d-page-border}*/;
color: #333333 /*{d-page-color}*/;
text-shadow: 0 /*{d-page-shadow-x}*/ 1px /*{d-page-shadow-y}*/ 0 /*{d-page-shadow-radius}*/ #f3f3f3 /*{d-page-shadow-color}*/;
}
/* Body: Read-only lists, text inputs, collapsible content */
.ui-body-d,
.ui-page-theme-d .ui-body-inherit,
html .ui-bar-d .ui-body-inherit,
html .ui-body-d .ui-body-inherit,
html body .ui-group-theme-d .ui-body-inherit,
html .ui-panel-page-container-d {
background-color: #ffffff /*{d-body-background-color}*/;
border-color: #dddddd /*{d-body-border}*/;
color: #333333 /*{d-body-color}*/;
text-shadow: 0 /*{d-body-shadow-x}*/ 1px /*{d-body-shadow-y}*/ 0 /*{d-body-shadow-radius}*/ #f3f3f3 /*{d-body-shadow-color}*/;
}
.ui-body-d {
border-width: 1px;
border-style: solid;
}
/* Links */
.ui-page-theme-d a,
html .ui-bar-d a,
html .ui-body-d a,
html body .ui-group-theme-d a {
color: #5c8aeb /*{d-link-color}*/;
font-weight: bold;
}
.ui-page-theme-d a:visited,
html .ui-bar-d a:visited,
html .ui-body-d a:visited,
html body .ui-group-theme-d a:visited {
color: #3388cc /*{d-link-visited}*/;
}
.ui-page-theme-d a:hover,
html .ui-bar-d a:hover,
html .ui-body-d a:hover,
html body .ui-group-theme-d a:hover {
color: #005599 /*{d-link-hover}*/;
}
.ui-page-theme-d a:active,
html .ui-bar-d a:active,
html .ui-body-d a:active,
html body .ui-group-theme-d a:active {
color: #005599 /*{d-link-active}*/;
}
/* Button up */
.ui-page-theme-d .ui-btn,
html .ui-bar-d .ui-btn,
html .ui-body-d .ui-btn,
html body .ui-group-theme-d .ui-btn,
html head + body .ui-btn.ui-btn-d,
/* Button visited */
.ui-page-theme-d .ui-btn:visited,
html .ui-bar-d .ui-btn:visited,
html .ui-body-d .ui-btn:visited,
html body .ui-group-theme-d .ui-btn:visited,
html head + body .ui-btn.ui-btn-d:visited {
background-color: #3b5998 /*{d-bup-background-color}*/;
border-color: #223762 /*{d-bup-border}*/;
color: #ffffff /*{d-bup-color}*/;
text-shadow: 0 /*{d-bup-shadow-x}*/ 1px /*{d-bup-shadow-y}*/ 0 /*{d-bup-shadow-radius}*/ #5e5e5e /*{d-bup-shadow-color}*/;
}
/* Button hover */
.ui-page-theme-d .ui-btn:hover,
html .ui-bar-d .ui-btn:hover,
html .ui-body-d .ui-btn:hover,
html body .ui-group-theme-d .ui-btn:hover,
html head + body .ui-btn.ui-btn-d:hover {
background-color: #425f9e /*{d-bhover-background-color}*/;
border-color: #223762 /*{d-bhover-border}*/;
color: #ffffff /*{d-bhover-color}*/;
text-shadow: 0 /*{d-bhover-shadow-x}*/ 1px /*{d-bhover-shadow-y}*/ 0 /*{d-bhover-shadow-radius}*/ #5e5e5e /*{d-bhover-shadow-color}*/;
}
/* Button down */
.ui-page-theme-d .ui-btn:active,
html .ui-bar-d .ui-btn:active,
html .ui-body-d .ui-btn:active,
html body .ui-group-theme-d .ui-btn:active,
html head + body .ui-btn.ui-btn-d:active {
background-color: #425f9e /*{d-bdown-background-color}*/;
border-color: #223762 /*{d-bdown-border}*/;
color: #ffffff /*{d-bdown-color}*/;
text-shadow: 0 /*{d-bdown-shadow-x}*/ 1px /*{d-bdown-shadow-y}*/ 0 /*{d-bdown-shadow-radius}*/ #5e5e5e /*{d-bdown-shadow-color}*/;
}
/* Active button */
.ui-page-theme-d .ui-btn.ui-btn-active,
html .ui-bar-d .ui-btn.ui-btn-active,
html .ui-body-d .ui-btn.ui-btn-active,
html body .ui-group-theme-d .ui-btn.ui-btn-active,
html head + body .ui-btn.ui-btn-d.ui-btn-active,
/* Active checkbox icon */
.ui-page-theme-d .ui-checkbox-on:after,
html .ui-bar-d .ui-checkbox-on:after,
html .ui-body-d .ui-checkbox-on:after,
html body .ui-group-theme-d .ui-checkbox-on:after,
.ui-btn.ui-checkbox-on.ui-btn-d:after,
/* Active flipswitch background */
.ui-page-theme-d .ui-flipswitch-active,
html .ui-bar-d .ui-flipswitch-active,
html .ui-body-d .ui-flipswitch-active,
html body .ui-group-theme-d .ui-flipswitch-active,
html body .ui-flipswitch.ui-bar-d.ui-flipswitch-active,
/* Active slider track */
.ui-page-theme-d .ui-slider-track .ui-btn-active,
html .ui-bar-d .ui-slider-track .ui-btn-active,
html .ui-body-d .ui-slider-track .ui-btn-active,
html body .ui-group-theme-d .ui-slider-track .ui-btn-active,
html body div.ui-slider-track.ui-body-d .ui-btn-active {
background-color: #395184 /*{d-active-background-color}*/;
border-color: #1c4a70 /*{d-active-border}*/;
color: #ffffff /*{d-active-color}*/;
text-shadow: 0 /*{d-active-shadow-x}*/ 1px /*{d-active-shadow-y}*/ 0 /*{d-active-shadow-radius}*/ #005599 /*{d-active-shadow-color}*/;
}
/* Active radio button icon */
.ui-page-theme-d .ui-radio-on:after,
html .ui-bar-d .ui-radio-on:after,
html .ui-body-d .ui-radio-on:after,
html body .ui-group-theme-d .ui-radio-on:after,
.ui-btn.ui-radio-on.ui-btn-d:after {
border-color: #395184 /*{d-active-background-color}*/;
}
/* Focus */
.ui-page-theme-d .ui-btn:focus,
html .ui-bar-d .ui-btn:focus,
html .ui-body-d .ui-btn:focus,
html body .ui-group-theme-d .ui-btn:focus,
html head + body .ui-btn.ui-btn-d:focus,
/* Focus buttons and text inputs with div wrap */
.ui-page-theme-d .ui-focus,
html .ui-bar-d .ui-focus,
html .ui-body-d .ui-focus,
html body .ui-group-theme-d .ui-focus,
html head + body .ui-btn-d.ui-focus,
html head + body .ui-body-d.ui-focus {
-webkit-box-shadow: 0 0 12px #395184 /*{d-active-background-color}*/;
-moz-box-shadow: 0 0 12px #395184 /*{d-active-background-color}*/;
box-shadow: 0 0 12px #395184 /*{d-active-background-color}*/;
}
/* Structure */
/* Disabled
-----------------------------------------------------------------------------------------------------------*/
+1 -1
View File
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

+120 -68
View File
@@ -3,95 +3,105 @@
height: 400px;
}
.circle
{
position: relative;
top: -6px;
left: 15px;
width: 12px;
height: 12px;
border-radius: 12px;
font-size: 10px;
color: #fff;
line-height: 12px;
text-align: center;
background: red;
z-index: 1;
text-indent: 0;
}
.nav-glyphish-example .ui-btn { padding-top: 35px !important; }
.nav-glyphish-example .ui-btn:after { width: 30px!important; height: 30px!important; margin-left: -15px !important; box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important; }
.ui-icon-myHome:after {
background: url("https://dl.dropboxusercontent.com/s/w5evmv0suijf2jd/house.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; margin-left: -15px !important;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
.notification:after {
background: url("https://dl.dropboxusercontent.com/s/afsciy4lipub4hf/notification.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; margin-left: -15px !important;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#optionBtn:after {
background: url("https://dl.dropboxusercontent.com/s/gnlhujh5a86qdhi/property.png?dl=0") 50% 50% no-repeat; background-size: 22px 22px;
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAP1BMVEUAAADMzMzMzMzLy8vMzMzNzc3Nzc3KysrPz8/KysrMzMzMzMzMzMzLy8vMzMzMzMzMzMzLy8vMzMzLy8vMzMzM72LEAAAAFHRSTlMAHt2AE588Jwpd7eXN+HbYSqmgs4yd+qQAAAE3SURBVFjD7dZBjoMwEETRDhBjbGxIpu5/1tFoJJpOI+JiTa0g8B9SxAK5d2ExRubuabK3rxlAF1r7RwcsD9ENBX9Lsb0Hup0Q8L+R6FUgAO1VIADtVSAB7btOBQLQ/rEdcIBmesgAGtkTBRp7d6pAa9/35gcFWnvACAo091aYFGjtrVAUaOudoADRHwgj13th5HovjFzvhZHrvTByvRfChf7jnWR7L7C9F9jeC3TvBb73gu85wfe0EBfXE8ISZXU9JUwSXE8Jk8gPsGjPCAswRxEJazzqc5221ewF+/ni+2Rf1eQFM9fjJWYvOOG8x9MCT5wJA64AGG7gBm6gAXhb4H0KRPjNFpjhF88v97vrsf/yiIqDlbSt4GBVdEMGvTzIbqGwfQliFjL5/CAfi3VOrXWa6/YP/wJFdpw7F/PsOAAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; margin-left: -15px !important;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#favoriteBtn:after {
background: url("https://dl.dropboxusercontent.com/s/ptt4475xkrv0chu/favorite.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#scattaPhotoBtn:after {
background: url("https://dl.dropboxusercontent.com/s/kou4hv3nzau9161/camera.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#uploadPhotoBtn:after {
background: url("https://dl.dropboxusercontent.com/s/k65p3k0frglitu2/photo.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#favoriteBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAARVBMVEUAAADNzc3MzMzMzMzLy8vMzMzMzMzMzMzMzMzMzMzNzc3MzMzLy8vMzMzMzMzLy8vHx8fLy8vLy8vMzMzMzMzMzMzMzMzAH4KZAAAAFnRSTlMAnxSw69r1/VJBBr5y4pCCDacq1s8c3BtyNQAAASJJREFUWMPtl8tuhiAQRscbw03wOu//qI0hsQUHy6/poglnQwx+R5hZCPAD1YxId+A4K8iiGyphnnJ5Q2UYzQs8leLZ/CQoRvQJ4pxZuDXIOO2WdH5DOsHVt6nARXl1nU7oJcQ0t7uUTEtlXoCX9XEd6tusYIMUEVcoPPqsoLu0iCK6aT6GtVzQJoLQdNTPBTAcY1sFVVAFVfBvBNoP6o1g2YjQ6ccCK+hgXZ4JdnP+RewTgezpG7N/KjBzHBC2UJCnCqqgCv5E4N4K5EvBqF8KJHACVxpHC6xAFuYHCbxAj8HfNXd4pSEjAIWhQhIKaOPTesBSwKhf87th7yUWrzc+nvCivYhVTx8wTszW5vK84HeqTOn3s5Va3Ip0Dwpjz/V/AVKhx1hESgVcAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
#backBtn:after { background: url("https://dl.dropboxusercontent.com/s/b5feph9hnl1wvep/previous.png") 50% 50% no-repeat; background-size: 22px 22px;
margin-top: -15px !important;
width: 30px!important; height: 30px!important; margin-left: -15px !important;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;
}
#infoBtn:after { background: url("https://dl.dropboxusercontent.com/s/uoe0goxll3anh3x/info.png") 50% 50% no-repeat; background-size: 22px 22px; }
#noteBtn:after { background: url("https://dl.dropboxusercontent.com/s/vtl7zq0b144aiep/blocco.png") 50% 50% no-repeat; background-size: 22px 22px; }
#indexBtn:after { background: url("https://dl.dropboxusercontent.com/s/pn37wqdw6z1rd8s/ricette.png") 50% 50% no-repeat; background-size: 22px 22px; }
#toolsBtn:after { background: url("https://dl.dropboxusercontent.com/s/8n0npemivbc6kuy/toolbox.png") 50% 50% no-repeat; background-size: 22px 22px; }
#faqBtn:after { background: url("https://dl.dropboxusercontent.com/s/4ylc7moxwaz9a55/faq.png") 50% 50% no-repeat; background-size: 22px 22px; }
#searchBtn:after { background: url("https://dl.dropboxusercontent.com/s/5gnislgpl7goj5t/search.png") 50% 50% no-repeat; background-size: 22px 22px; }
#moreBtn:after { background: url("https://dl.dropboxusercontent.com/s/hognqeul2ra2x94/more.png") 50% 50% no-repeat; background-size: 22px 22px; }
#settingsBtn:after { background: url("https://dl.dropboxusercontent.com/s/yobvrbi1aml6b0u/settings.png") 50% 50% no-repeat; background-size: 22px 22px; }
#syncBtn:after { background: url("https://dl.dropboxusercontent.com/s/utqdp4t8rzyhmm0/sync.png") 50% 50% no-repeat; background-size: 22px 22px; }
#saveBtn:after { background: url("https://dl.dropboxusercontent.com/s/dsqkblkv9zgqyab/save.png") 50% 50% no-repeat; background-size: 22px 22px;
#infoBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAATlBMVEUAAADMzMzMzMzMzMzLy8vMzMzLy8vNzc3MzMzMzMzLy8vMzMzMzMzGxsbMzMzLy8vMzMzNzc3MzMzMzMzMzMzLy8vMzMzLy8vLy8vMzMwz+9AJAAAAGXRSTlMA/bcP3Zo+HG73NJDOCIx7rFhUwfG/ZkkjXGUYMQAAAcBJREFUWMPNV1uygyAMFRAUVBC1ava/0XunxaEdCbHy0/NpDCQ5eVH9OgYhhpuqzWR5reEfuuZ2ar7Udj2DD7DeXT9DcQYJMK4uqZsHoHgYUl1IBhkwKQjrayBQZ/1oGZBgLa7fwSV0mL6Ei5Al9+M2tPAFEnFQDOFN7cbq02d14r9O60+v5FpObAokgIizLRVIgySAOQw82/aZ1Vj+71XA+YL5I4KAYDosTMje48gBQR/60ZiQ8ajfMLyAm2eJJhmKHcYBDs3luKRFrjrQwy30hAcUog8ebsKHA2xavIytMqrN+GczJDI+DUSbikTWRM/o0P4YftCpgvedXIN8RykO8y8le5q9ojcEvLwUeJCoAwRxgKuIH0RwgahFAxgGwsKGaLf6oJFgicPNH7rAkqYSySLy7SXeSJY84uFATSwfy5nM9HxL6nPja6cbSuVyLX0l8gz1YQlCSXkQiEQHx4ySSAyWkYqhyo62eMCI6M/54RrzVDhpN0kN10oitYgSLekFY9kOWaIz1+LCisP4qsy2jjpBoSpdskrXvNJFs3TVLV22S9f94gcHBTMDitkUP7rKn33Xz/DvD0/flDx9fxx/PN/lHL1sRwIAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
#backBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAOVBMVEUAAADNzc3Nzc3Ozs7Nzc3Nzc3Ly8vNzc3MzMzNzc3MzMzPz8/MzMzLy8u9vb3MzMzNzc3Nzc3Nzc20RGPKAAAAEnRSTlMAn/Mf/ORbuqiNeRTaLwR0UsJFw7m0AAAA4klEQVRYw+2Xyw6DIBREpzwEQavl/z+2SWOCq4bcs7BNnL3HDHAfo0O+pBjaoEJMxessn/vHo5B8QkyuGeQmHdqaUdvx/2bW9PHv7ADnJeUGlCUfCCB4lYZUlBggKTJAVGCAoAZ1A8YAcZ4dAbyq5J0dMD/1reQ02HYeRkBchQCpygbo9m2Abp8AllUIkKpsgG6fANwumQDdPgIsVQywiwO4hSsPkV8jf0j8KfNi4uXMG0rv6Nc2Vd7W+2DBo40O1z/fD34dQBdNvOriZRuv+zhw0MiDQxeNfTh48ujLwzeO/28iI/undEzvTgAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
#noteBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAQlBMVEUAAADLy8vNzc3MzMzLy8vMzMzMzMzMzMzNzc3Nzc3Ozs7JycnLy8vLy8vLy8vNzc3MzMzLy8vMzMzc3NzKysrMzMzHzLgoAAAAFXRSTlMA659Qtwj8sGiLJA+p9eJOxz/wAlhjtklvAAABNklEQVRYw+2X246DIBBAhxaQm4C1/P+vboaYJVGKnenLbup5MT6cYzJqwkDFGxl1IaCjNB5+MaIwEGbTVShMggIEfW4BfbPdzILAvEkGwIs6FOuAhLO6zsGDqX4CMqkWDEi8WGBg0ZQQ8eKAgUMzgsb5AQucpIY6CmBRx38FrkA34NJ9QHJnAavLEG3HAYf+uODGgXLKOAD5zM8wDnhzG2L83/8OrsDngeX1OSHe3wiox+g38FDh/wvLeUCJgT/7d2aQxSvy8j9e43cFlEaVH/A3VC0tkMK0IfNcTU8KpLLnCaRA2PsWaIFp54f1s4BUwAs0nxdoPi/QfHag+fxA80mH7anjk477suOTFo7c8Skrj3ocfcrStdqjT1r7es+nL57h4NNWX7tCg758i+fRJaz/wvqO+gMLomXpjjWKbwAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
#indexBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAclBMVEUAAADNzc3Ly8vMzMzLy8vMzMzMzMzLy8vMzMzMzMzJycnMzMzMzMzMzMzMzMzHx8fMzMzLy8vLy8vMzMzQ0NDLy8vKysrMzMzLy8vKysrMzMzMzMzMzMzMzMzLy8vMzMzMzMzMzMzMzMzMzMzNzc3MzMwDeMQhAAAAJXRSTlMAB/n99EWvi2bpA+TbpSAN7tS8XxJXGoE7Jno1LcyUbbSbcsZMxBJoKQAAAntJREFUWMPNlluCqjAQREmAgALyBuUtkP1v8d6ADdOaaHB+5vwMIxY2XdVJjD9OMTfn3+hzyrmVlHP2pd6mfMWM725zXF9b/CdRUtqHSrmdkB5KSW+6/fO5gmio7PCjPmyR6HApJMECVSkX1QMCrodVy/UO1yWQ6ke+wipnovwtTBpAc73ZL920y8TiSuY3Aez2ll6rQf6QUqJvHl9N8Bid65FFOh24QAA72cP7wOM7CXn9SrYH0O/yQtphIM4+B9C/p89ZceHeSZIiMvBXvMD9kdor3TJ0JIAn1je4ReZ8OIARG/NK6CEkruf1SN9zfRzDqMXfKw6gNux/SDpxMaIAajOJAMTiyt4zEunr/UxEU/wgJVsAPX19tLgaLhajAGpC18aRxV4I4KSvN/OHaHnnYp20getTwXguRafL9f2A/o5T54rL8oB+gFUiXSMu/JgP6ONwnynoJzlggFfgZSeF+dbEasC1+DEQglbfQBsMYDAQohiujbsZAP3Yu5m4uRN/nGAwAK1o931/ubjM0tjEajBgpUXLArFVhUwwd8VmwJ5oE26qC/EzvG47BmAKe+AfZSGnbV1mEEiAogcoCqHbO5ZgwIYHQwlICjHzbd183VIS1BFZIQGzZQYAlfio1TvQFt4WqJ0b7POfIa102x5WW8jnBwRwbsA0dG1MkIfv9SUKhGxHo8kIditPTtFN8WjAd2yiOHrDREtIUXSjIM00DMC3Ow8vHVPVYAMmMEBJXbYmXv86m0gNUFM8j6HF3ALS9mKAKv3PL9OWtTGDAXo01fT0MmCAPlkavBwXen05jLKP98QvuI0J3U+13xHmwQkM+JbzdexD4+/yD5Hv/549+s8hAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
#toolsBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAARVBMVEUAAADMzMzLy8vNzc3MzMzMzMzMzMzMzMzMzMzLy8vMzMzMzMzLy8vV1dXMzMzMzMzMzMzMzMzLy8vOzs7MzMzIyMjMzMzQQS7oAAAAFnRSTlMA7CefPC9N9XlWv0UUBvzazKroYo4h9i+T0gAAARhJREFUWMPt1s1uwyAQBOCx3TXGgH/iZN7/UYtQ5SCRCmxaJQd/x11ptOxlwWtOr7PiTs2rdjjAzEzMBsWGiS9MAwoN/EVhgkwMVLNTPzMISoyktwoisobiiALynDZ9l5RuYERiLN1CGFYjocPDSlcgSEjpEhZ6DyQe9BbkzfQsEpbejDwxvd4cEm7TvRH8E9d+HdY+p2w7xRNU1yLYFE9SGzw98bRJA7ZhhcZiYJUBC6ssUKyiwMgorScjI7k+GNEINCO5PrqIIJC4luvj/ZqIQWDiWq4PRnoEPSO5/ocFdA6e6xjJ9cETroAr4Ar4yIDay1R9G+uvs72xws0CpuaHYuD1DU9qegT2fjs1/t1iZ9vDLC6Xv/MNSS/GsQqV8wIAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
#faqBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAVFBMVEUAAADMzMzLy8vMzMzMzMzMzMz19fXLy8vMzMzExMTLy8vKysrJycnMzMzKysrLy8vMzMzMzMzMzMzLy8vR0dHOzs7MzMzMzMzMzMzMzMzKysrMzMyX9lUIAAAAG3RSTlMA/Y63mc8BbvYH4jMZwA57WELbOxEh7ahShGGJpFmMAAAB3UlEQVRYw82X19qCMAyG7cIylDJk/Ln/+/y18jiapEV74nsKKSRfVg+/TjmO5ZemjZOqt3DF9kq65jPrS2sgwLSX3eadEkAgVLfLvD4By6lOmp+1gAhCn+P2QwUJqiFmfxSQRBxZ80LCLmTB2GvYiaZPkLAbSfoPH3Ak4i8AI4yalbHEgwHpT+hn3F30opYTUjPMB03I9RKqcUaBDPIXO+B8WazyryQlEu9ZjfN/fgT25P+kNGFdvNUfIHzl9XBj8e8s+I0nChC+g0wvqpehGOqlfxASeherzRuPCaPw7DAtYPQztJqJU/s4wACBduumvmQOMI/+uS9veypOHgdx7oo3TKqky7AquGKTSESSli0WdaCcY8pmBky/HWAhxsIqDXabfxBj9qW0Akl5L1WIMI23T2igGdEBZA6c2SiPSRfs9ScbAxxlMojKNwIOm5ZR+z7A0acTSUbbvUqnsp0mm54vDr7Excs5TRNtKGkMamkIoVbJn94GTRUzDbc6QDKgpsoKueCxh0X0dFwr8lyApMOjjRleBZBP0XBFGCQzPVx5P+vI7qLxgoExPlMGy3XK9Ioztd2iKXsxZC9Z+Wte/qKZv+rmL9v5637+hSP/ypN/6cq/9uVfPNNX3x/nH10B+9GFx35iAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
#searchBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAY1BMVEUAAADLy8vS0tLMzMzMzMzLy8vMzMzMzMzMzMzMzMzMzMzLy8vMzMzMzMzMzMzMzMzR0dHMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzLy8vQ0NDLy8vMzMzLy8vMzMzNzc3MzMx2IiYYAAAAIHRSTlMA3h0ILRXq+dbzs4T9WZ5nBHA3vIxgx8GUeAzQp0VPJZBCXGQAAAKLSURBVFjD3VfduqogEMUQFVQENH/LfP+nPAeQst0A7c+7PXcFrFkzazEUAgKnqyzLcqrVjH4fl6mlm4uqL9PfHV/bavsRRYO/Pn5fNiiyRnx1nNwOhyqaHz713xSiEpeQX9VsezkWmw16jZ6vc5uZ3d/4puPOpIucb2zzhk+uhNslLoL5K0s0VNwYqt/wTHytIq1BkP7+mxQL8W7ARqBc+dbNckICFAUznsIe/5j6w1LPRtASXjT+iwmd5joLyHI1+qFYlF4KrfZP3Ks40xQwcH+1BRiKx6Qp1J7v7ygeJNeZ4AoyYUiSMALTNYiP0qj2OdIhH5H7ormqD3meGoos0smH3tqAIirrpxWFg0LXWmqA2Qo9RQC0G2+QPyrbo6iYw/+9LQRAd0dTHJdhgAByR7AOA7QaAPQR3u9UHwZYICfVGiA1BKOOzKDBpjTA6oopcMjL4FybKyeuik3OGr41vU5suxgZLFz3e4YHRfr0er4GB8IAzKonc2EoVE2oAukxaE7c3NNu1R/8++Bbyt0DZd9zQIyrwfbWVin3xFqILv2pYeYfnc3hXVGaqMVg3SRfVJjlCYbo9WKLLR+ZbC5oR960yojv0aCmPrHj3bs2yZKe1/Pb1AjdtatZZ3PoUQlftc7sKOAeEbbZmFDQplrmEtIv21x0Y99KmKcY995P5F3juvj44XiBOcjdAjlrHo57zV32/oCQeBDUKxctBtYuL+pZjaYvEHBJNygqTkyf4wiIABD5zWozbhEE1zRGj6cHSZ6DB0AAQ6imu7XDwEZ5n48zPYgQD7mdRMDFWYRL8icRFnEW4YpOInB0EoGjkwgNOoeQYHQKwffLMo4QOR9HWOA/ad+HuHJun71/aZx3kxoX0ToAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
#moreBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAP1BMVEUAAADLy8vLy8vMzMzMzMzLy8vJycnLy8vLy8vMzMzLy8vMzMzMzMzMzMy/v7/Ly8vLy8vKysrLy8vJycnMzMzXdXRdAAAAFHRSTlMA+dJZTyQE7MOUfUI4FgjbroRyYAAl+GAAAACtSURBVFjD7dNJFsMgCABQcKhGzVjuf9ba1yZgsmTL3/FQUVQwxhhjHmJ4hxmeXs379oKnuU+IV1QzdbhFGC0lUZfKcq+3IXW5/sKd/tCPVdyZcOPuPJ6J/RsedMEq6ztOOLmHipw4ACISW8V5CwlF9GUlhhEmkgKPSyQkXjmQNIG7xadGg3YlxooOkKTMnaIB9zeThOoF1EdQN1F9jdqHpH3K2s+k/c7GGGPM3QdD0ycJNH5T5AAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
#settingsBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAYFBMVEUAAADMzMyvr6/MzMzNzc3MzMzMzMzMzMzMzMzLy8vLy8vMzMzMzMzJycnLy8vMzMzMzMzLy8vOzs7MzMzMzMzLy8vNzc3Pz8/Ly8vLy8vMzMzMzMzMzMzMzMzMzMzMzMw5LmnSAAAAH3RSTlMA/gPNoPGb3D6EZh74DSjEVlIJ6blxMyEXjGxJs2B5+wYyEgAAAlZJREFUWMPNV9mWoyAQBQzghtG4JGon9f9/OYOIpSITo9On+z7lhKpr7RTkdyO6DKgPE3AYII/qJ2BAbwcJehjRHCSoLcHzIIGwBO1ulTwhM1wtQbWITOHXjynPF0kYURJEwWns1/8rLBQZ8YAJ039Ku+Vj6KjJuol5FgVIcH3diUYjAZDB1TdIX4wUV1iCViFhdQrgZSjo7INa3UFVzfh6h0BJ+ABSEQch3ZJMU9gADTd7byVVijxjhLAsF+XqKCJbuAVzmaBgeMSK5Rkjm8jQXB6vZFjM8TAjHnTTJ+7WqiSxvXyfjOiIF9WYRmXCKiQFoFKYkKkxuV9+fRaY76tBPZg5PVCo4B1Bbly8a66ILvIWMe2FiUPoJTBfiLX+BVa4aIb43yY0mKMIHESTj/ThIWgHwQKr0q2+AjRqzxCWQ/2xwRcLzjGS2oRyyNJjrdrXIhglhTbANkKbEJIJa06Ic5JfRd0ntgc4zJCjVDr27BOQO5/LctMTy4DrMpWrlrngDZUtU7NBwAi5UVgGu8Ebir0jSPFKk1ihYxS00+lpgv/vwvkg1pIeSyOVtiRvzbOtyk8KqazaZ7NeGx4HSvloM51u57MD5fRI+76hyq57xnrFvASvfRdL7R2qO6+21LM3Krn3cpVqk0Dsv96FJ4e7FwwoXP2EwwfgiWsAxeNqe8n6wt8096yZA3tHttc8EnP/mocMQeYumsG4aGaB0e98q64p+hEJEpj2sy2C+i6DDN8t26FEfRe9crrbWfdVQXYCx3X7U08efHT90LMPH57nn76/Gn8AF/a3uIPEPrkAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
#syncBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAADMzMzIyMjMzMzMzMzMzMzNzc3MzMzNzc3MzMzMzMzMzMzMzMzMzMzLy8vMzMzMzMzMzMzMzMzLy8vMzMzMzMzMzMzMzMzOzs7Ly8vLy8vLy8vNzc3Nzc3MzMwQ1G9JAAAAHnRSTlMA/AIXvjIglAb0Wumua9gQ7n3hxrajc1Ami2LQRz/p54GLAAAB0klEQVRYw+3W2ZaqMBAF0EoMc5hnxPP/n3kvAku0U0gnr71fMaZOASnousAnJ7lQklzEwEQuWiByCREWABqy9wDgFCLAorAPUQH4bYh87gKtlNLtOE1YXQ8xlHcBg+JGV8wKHH1huVfjRPz1jo+v2m1C3PbtLUN4CZ5sQ3gFvkv4EMO63jpEXh22qRvdqMzc0J6MZINVFfR7laGXKnE1RIeFaB/yozH4JIwl+NFyyXD0zXgXMcejBtAM7Ku8S8obe2Qk5uZkeMmmkBgK2vzX/mu56iVxPNExV6a9c9qjE+NMDH3sHC8nhiy2ztnygCoNyV6ZxZJc3CT9sZeTk0fjMs1lXwMd2QrT5xvssY/Gl+hlsp4c3BMUn5bmBxFWLZNuFCcVeK34MoD8Gi3bubepbtxHphHEwHQuvuPobipw+Ulg7lxX4d34c7le8lU58xH1aQw/ClSnYy01DOE2HuQ+33SEVcA1UMFEJNk9S8ThYH/WxQy2C7KcWOmV9Ydby4fg1et66xDtmt82RBHTk2UIEWzl24UoRmYwsiHEYe8s6LnwfIj09ojTsizT2Pvd0TpsIXyy1W2vsjVZ47+S7A3Rdh67hKgkkVOIgJwM0Uxu4pAu+wcnGnDLxn52mAAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
#saveBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAANlBMVEUAAADLy8vLy8vKysrMzMzNzc3Pz8/MzMzMzMzMzMzLy8vKysrLy8vMzMzMzMzMzMzMzMzMzMw+WxBVAAAAEXRSTlMAY3ZOFMMI8Ni9IjGIm3CqXQ8no6IAAADWSURBVFjD7dfBDoMgDIDhdk4qCri+/8tuEVFwUdb0Yhb+k4n2682k8MmgJf498iMUTQMLIyzms+2De1Ty8WsHWybb3xuo1vHSvH2KvIdw0jO2DK0LbRJsBnRn8/n7nkuB5EApsBzYBSXAsxZgpwUYtQCNSoC9FiAtwA34P+AFJ42x+Ee6ACzUm/gC4D5gJUdfgLQG3BkIBgSZcAQ8CPMHAKUANqABDWhAA+4IkA4gsDrApocgBcK6OB2egwFJ+dhE6eoV5OI8TfnxLW9Y5tP5L40sGgB4A9MVdu6TlqQ9AAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;}
.loginfb {
.ui-page-theme-d .ui-icon-myHome:after {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAMKSURBVHhe7ZoxjuIwFIY5xF5h77BH2LPsJfYWaCQahERBR7OioJkKChr6XZqlYAsaii0YjYbxn/FDSfyS2M5zxhb+pV92XuJx/g+CBuPR7XZ7aLPFRzJbfCSzxUcyW0zN4/H4C5k732a2OIRxs8vl8gn2uXF4sVj8PJ/Pr6p/1+l0epnP5z9Ulx1TN1sM7el0+g03qvqFjsfjFTXVZa/nPJlMvl6vV9U1dblc3myhssWQrocnoeYCQb/KjZrNZt9Vw44tmy2GclN4kguE5AB0hSfZQkgKgG14kg2EZAC0hUe97VwbhCQAdIXHeZtrVNf429EDcAnmAyFqAD6BXMdEC8AnPNllbJQAXMOv1+tnuFyz/RvRAfAJj3OQD4SoAPQJT3KFgC9R+pDVYAAkwpNcIDR9ESINAkAyPMkFQpuCAwgRniQBISiAkOFJfSEEAzBEeFIfCEEADBme5AtBHMBnhCf5QBAF8JnhSa4Q9D9K9+ubzBbLjiE8yQUCd2+c2SI5pvAkaQhsEY4xPEkSAluMOTxJCoJRSCE8SQJC5SCl8KS+ELwHxhCe1AeC8wA4pvAkXwjFr7T4cfLjVFWphCe5QEBmZC9+Yta1ilILT3KBgFUldnEx1fAkWwgFANWO9vv9v48S/1t9SuFJHITyo344HP4Xj4DqF8Y7AY9DfWOBRHjs4litVr9oR0iXcW1954eP6hCQjeagnPeTnCXCY7dG/R1lY4zBWNXvpTqEutkiLBEe2u12f1XDztFlPba32iCwRanw0Gaz+a0adp4u67EiaoJgFLD5SLViigUApLNV5qgcwBlABpABZACqFVMGkAFkABmAaox5bJwBZAAZQPoAttvtH9UY89hYjxWTFQC9UiImLD2pxpjHxnqsmOqrXXDlgCw9Mb6Lc5M3GddKrklATS+EUYCxJqdaUWFfH5a4bNy1B9BHOpOR1SjAeFYkFiVjEbJwzz9sFMhYJQ7xSgwtZGjbLsMWyRiY8jsB994WHmaLZeMDCc8PPkTwfKpa1MI94l5xz90fvLfROynk7WHR1nx5AAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px;
}
.ui-page-theme-d #favoriteBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAKMSURBVHhe7ZvdbcIwFEYZoAt0gW7AGAzTNbpNV+gCHaBPfaECRPkRqgAVWh/0JaKQFNtxCIR7JB6KsO/1ybVT2UknhMFg8Dibzd5Wq9X3drv9aQLiEn86nb6Tj1Krl36/f8fAlcNFgQjHvVJND4NfLBafineRkB95KuW0jMfjF8W5aMhTKaeD0tpsNgoRB+3X6/WmyscnB37jqqCXtBKGw+GT+g+CZCaTySsJqasoiP/lCFlw+e3SQUW4+A/qKg4GoX69YfApVueY2IdQPUhUl+HErPwp5mJs5RVBRURLCBVAsMpl50h916ESovIKFcB8VdNK+Cx6RdCurG1UZYYKmM/nH2oaDXcedRcM8WnPP0f6KoeFUSH8aUIAparugsniF92+NT3DbpHXKgDcBV/r65zgdcAEmAATYALU1gsTYAJMgAlQ02hMgAkwASZA3QVjAkyACTAB6sYEXJwAF/yOnVkS++/gpJUCXOAeW+b62W6DUkdnR5uUrRMwGo2ey/bqXZJL5OinO1ojwAXr+pzwIAdJatYOAZzFcRylr73QQw7dqxbAIIpOZXzJqkF/BtO4gKYxASbABJgApW4CTIAJMAEmQF/nmAATYALaLYBdJqV+mwL2nwm+OQG8R+QGmO8x3pyAwyfCkwhI8cx+3bDDvL+nmJFEQMrn9uuAQZa9C5BEAHOKuaX2f8A8tx2mybk/HLBwuEJ+SvWIJAKAQAy2COSUXYEmYaBJnhbPOLVTy27w2d7iPIEbZOF5ROWXOZBQVgkZWM9edWvqU5Zj0UIZDFeZIOrzamCqJnu9lvlV5fDj3FCVtUxPOvU5+2sSrnzta5OriB7/MLnbzvLUGlE3xOeKc2GY86fLvtP5BfOlr8fyeSTjAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #infoBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAPjSURBVHhe7ZvfjRoxEIcpIQ2kjCsghVwJKSEd5Ckt5DkVXAl5yGMeeYkAARIIRIQiIPEn/UiOXa/NsjNeIHzSKXeH1zNjzz97L4MHD/phOBy+GY1Gb/nie/36/hiPx0/T6fTjYrH4ul6vZ9vt9td+v/9dhd/xGWMYyzM8q2luCxSfz+cvPwOHw0EmtodnmYO5bmIxJpPJe3awi9FNMCdzI0PiroewO89BuYV0dQdZyJT4/iCBLZfL7x47ngOZyEYHqVMWXJGkJX16Ax2Kh0VISl/62PUm0AWdpJ4voUR9k9yrA92kpg/EnGRdLegodW255p2vYu4JxJfmvhnMcgIZ1ivhHUsZMkI5e0dtpw2OtcptYe7O1YEa61XqUJB+X6JOYCF2u13nVUf3Tn2CZ9LLxalV2F2cFNkFL9eHXCvLzmloJ7DhorbZu7cn5iWqEasN2Gw2S015HiQPPetGU/wfYdc01IRWCZFjp55zg3N+6iZotVr90FATsElTpwkr/+QZ+6/RsfbkooPY90i+ygX5S5WQfV/0TBGo+ewORrPrFuWvCWyTmc3gmhp/d2CbzIxT0v37IBsGs9nsk8beLdgoc+vQh2ucOcQ2MU6HR0kKO/HMv/xcMuywUebWsS5/uBxzUvNzLz9YiBLhlyyH1geftn045wM96gY2Slwdi2Poa9hVYg7DWIzw/WeJikJ7rEfdwEaJOwUX1RgzYi6dWwTrTYgRDUer01eOZBIKlFgAbJW4f5RagFQ3VkqH6AJ4hECM1CmQ0qhhrjRWpBLul+rESJoa5kZjEgSv+78jyRIUsO5DYiR18FaAcihRNXDLEh6YbITI0BrnQmh9P0hUDT7TMFeSVcjzMMTuNiafAN6hoa4kD0Oex+Gk6wW88w9kj8PgdTIjw0tEjVCX3VtgwDaJbIZGReNNwUiJqEF7rGGupJqwv3iEAXcBmj6KxyVolbPc/4h1Ocy9mOBzDXUjl4NO4KZGz5nATZCmjlIiAWKTxJ1HWDGzV2O5BbB+CVKl9asxCPFi9nI01wJzOiNBkQtoVGiKrPKCYv+yvym0TE65d4FVrMoxNmjK9rAzVvFJJUi1wiBPMLslRnfm1PSXQfKwCgXmIRtT95kX12RR+Jk8YHkYQhYyZEY32BXNezOgs9S3odRhxQJ0ldq2lOjYutIp6Z3DNXuC285XIb6sEqMF6GIe8znIsCVa2BzoYJbt20KNJeb68AZkIrtznbeAel7iRHcEWRe3t57gijQ6Hh7BnMzdm7u3IezO//nf5mKgODexnPLYQZJWrOXld3zGGMbyzM0afQ5ckZPA+Epdlz944Mlg8AdeGhwrcLZF/QAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #backBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAIKSURBVHhe7ZtBboMwEEW97El6iN6jl+oBepGueoeus+mqmyhESCkSUSSE0vLQEDmJCSRqCZ7xkyJCAMn/47FnDHGXWK1WT3mev5dlmVdVVe/3+5+5QxtpK22m7WgQOePhoqIovmIQPAQa0DLaiCzLXuu6jl/5CWhCm8gM03SZNzlfLWgUucfgjpyjnrOeQHxo7PZ9oPVoTGCQkGNmQHMrHic0jPbXgua2FzBXym/mQLsjYZB9c6DdkTXJvjnQ7izGfwfanXw3SzJAtmZJBsjWLLMygGlps9l88JmqNpmNAdvt9rtJTR/b/LxhqgJtFgZwxxeLxYNoPzBFkXZXA4ZWaRoDPuXUf+NuBhDvy+XyWbQGUWsARYgf732oNKAv3kOoMmAo3kOoMWC321VD8R5ChQFj4z1E9AZcE+8hojWAeF+v1y+i42aiNODWeA8RnQGIvzXeQ0RnwF90e59kQAqBNAjGZwCYngZ9zCZCPqZT4Q7TxVCH6XLYx+yCiM/pEngfag0A04uiHaaXxX3MPhjxMf1orMP0w9F7kQyQrVmSAbI1S3pRkqlH9s2B9vSytPnX5Uk5LY4DaEZ7m3dPUXTMDTS34mGqwmMuoPVw9zuoy+W4enrXIPhToZyjFjSK3DC4ozEc0DR6VZr4YJDQMDugAS1nMT8GLmKuJGEga4rBENpIW2kzbb8s3LlfGpwrj7uph1IAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #indexBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAT7SURBVHhe7Zq9Uhs9FIapUqZPnStInzoXwA2k5Q5S5w7oU6ZMRZuOljJVugzMYDBgBsyY8Rhiosd5vfHK0krelda7gWfmKz6k1ernnPe8WmfnhRfa5/T09N3FxcXns7Oz3ZOTk1f68/NgOBzuPz4+Pi15eHh4uru7G11fXx+yKefn52/V9f/DLP7T6uJdzOfzp/v7++nNzc3Py8vLr0SJHu835mQ/ctp1MM/Nl1HCJvYuSkzOf5jNZr+1nsZYUfKF8fWq7oHgTafTmeaeDUXJcDQafSdKjo+P32gK24NJmJOaaI6tsvUoGQwGr8lbzacTrEaJEdf3mmoebm9vf+m9nQRBRpg13bQYtT7SezoNh6Qpp+Pq6upA4zsZj8cDQpBNmkwm45AvyAlz0bTTgMtDfHyYzfmmrgUIJapNjUcz6nqFOuA8NY3mhFyeWeAPda0E8TQCtUeUIFi5NoQN1yubg12tmignW/fSw3OIFalFyKLkGrY2SXOfchJyebGnHwsbTjqxEPPujUSEwyDKNFQz8OSxLo9+bAQ6gTvUEEkICe8SjFGye0RTl8eGLF1aU1PCrVHDeiFKm76nQC5vqLGTQCgT0ixmE9tqFrUXKqXJTU8bLo8TQ/TIdXJery7BiYb0h7KctNyZPN6Ky0P9tSEH6AhlMrR4YAM19UWqEGn8t/r3aHhI4/YCDktTX3yQ0Z8LSB81hwm5vK5BtKx6DyqQmgqIJjVXE3J5XYM7hl3rKYFqLmBdavaDAKVwX21BebVrPZFgHyD/HzREUtneHD0H5SqheBZ1KWBdanazicvrApyoT9Q4aXUroIKoeR12jDxS386DOCPSmr4TVxo7LTn5ktrl5QZPoOk7YU2uaMaGq8s/8Odq7wXMV1P34jNvGCN1+YvpeKi2XkCkrtZ6F5yyupdAA0rVAr+stl5AXUerNH0niKLLv6wJJirZJ8WnhIW+KaiEO+8Ka7lPLqit83C1NYur/MVY3yrWnB+s3g8KmnzYaBOVu0r7iiZwD9AjJez7wQJCRe2dZ021HfgU36sZPpXk4yEvxGAwqC+k2sIZuha+taAFHLS6lXHVfUJFzSUYhE2hnVxsi5jP2Nz3oxTfxpX/lQ8IKgf5mDs6XFdbGypCtOLb2B4ZoQleEx3kiA7X1dZGiu8U8Zi02bG/8jB5NdUmRXRwojFfh32KH+MSF9h5k2IDbDaNjmDeCrPBTuvOpodcYgGuSs8VhFxWE0LREXO1BfrokRKViu+CcqdnC4LCkZBldKD0RAiboyYvtRXfBXdpPV+AqETlzxaQ4q+v3sBGqls8CI2eL0F+qUtnIH0qFL/+L9C+L0DkaZ2SmAvfT3KkcaOINXmz68opQFR4MaITrawZ8Cl+jFeIIuZnLzaJ3eYXlZganQo23/YrgIlLOg/fLvtg90kTlDtXqqD4Lu8QczWuBSUwxqzYcBqkCs8nCUlDcsWPhRejqr6Xh+B0uMRQYtEXDbsRRJTvtwnmpm75IQRJDcqPKw9jYCOZ9Capkk3xm0BkEHpNbnw8x/OMw3gauoTLnEEyxU8BJ8mJNk0VIosII9IYl8/zrSh+ash1To68bZIqrshivCyKnwvClGpAHnNyWkdtav17nq6wkipHdX58ifntr1eQxzhJ1Nxnv5fQJ5fB6gTcLUx07JMqJv9LHzU7pfhtQG3nYwbRQc5v8+L1wvNhZ+cP4T66V7TrwhcAAAAASUVORK5CYII=") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #searchBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAU2SURBVHhe7Zo7bhRBFEUdOiRjC+yAFbABlsAmvAM2QEpITuoFkJE5JCOw/JfHGhshjT+8M7pdmn5+PfR0VXXPWD7SCLmrpj633q962CvJ8fHxm5OTk4/n5+efLy8vv19dXf1oPvb3oT3/cnp6+sk+b/WV3efs7Ow9m7u9vb26v79/fOrB4+Pj093d3RxhEExD7RacMptmM7n8NUzEb1iQht9ezHwP/hhae1EWi8UDQtgc+5pue7DTeXdzc/Nba+0F1oFbPDw86Ek/cI+tcg0Cl1npQusL4fRms9mvi4uLr1GgWw2Q19fXR5i9vhqCcIylr08HkbvrBDnh+Xxuez09sM/GZosgiLHOQqz9p7qPD/7YFeTMTGelzBT3wnq65qJtiMBZcPLRgmqapm2y09WwFHWrDwuJzJLF1Q5OWAPpVVO2MIv8rm71YAHRKZD6aFO3qhAwo4zDoXA46laHaGIEGWvzDfg8AVZLSNha/iKQupXFJj3QPAl8fqqcbOt5y4a1lAQltLqUJarwps7FiO/jEYdS3CIpUDR+glSn5knhxLWkRHEr8JGXFDiV6XvweSpNLW2JrKBMLOBK63M+AUjNWwFXbi0tQa2i5jyiwQmIat4K8HkfC4odkjd/zI00pOYEJlc8+GyAT4u4QbTOjWBTDKQxl1B7q7kFlZjFhQ/6c3S4m2iJCRMgrzAi0GmsRJT6UBrLmDIwIr6WmEAUNQ8jSn+RqvZsWSTRX48mwVtr9nUZs9ZYCdvss7e2TS4mYOrRJPjKkNJdTcPwRQbpUE0tmgA0dXqkOFsuVBDA1TQMLwAmpqYWTZlctAAZgM8E2dWqF4Bcq6YWq6ZXrAAZgE/Z2QLg0xorEZ3w6kXJJp3r8eisrgOyXZLT1FiJKNV50yMrqGlU/J0g+1UZKU9jJaJU510Flxg7FlCFavoEWUzNwyDl+YtQlFsjoUZ9UWlE1lrEEvFpjbeE01VTC56rS2LMFyaU6Jp2id4R5v/S7M0bojhA2anmBIsYozrE3bz/Z2eAhug+EJm3qb0fWQEuhDjqVoXI/LP9fxW/MU6WoKPmBGL5e3kDZWn0nRL0Xd9gIvPuuhZzGj5wNmCmjIXJqns2xBkNn8i+A3giH2OTRH91aYEIXZYAjEU2iWLJJnDK0bpyxw2JrMAsr/NHEcTxphnBBiikEMTmOMR3+1qJL8CgyzKzIcj5lAjU312L5TkbQih1XwuXKYToEnWVKDshZp/vDgbT8i8dAJ9DIHV7Bm32OWBzCIYgLJZ/EZVTw22sT6+8jaiaugVjqEs9oqADmGPfDeQQnTyMegnjJDVvC3y+SgAyMO3I51chhqh7fXzp2UD055S64sIQsDof7bvgcOxzhEXgbrhLFcu0QfeZSPM+gwVzIkODEgLi01iVhhwMY/ALl4YuCwqvy/m0YbrW75u5x9rfDRCLTWNd/zvxKCOtwzRYVBPBrKFXzgeyCH1tAzOEwUx5k9PXxOnXRHssTI97UVUETBbfj9JkCajwsAzvUl0BuYuqIgALLCkELkSd0ZVd1sWhLqqLAE0Qw8w3FYNN4yLEF3/ink1jQcMoIjSQMYgTBEJMlhPF99lkEws4STZs/fifpb3TFuNoTxszqgi1QDTtZxA7LwKuZpvIqhV2XgQWzya0n0G8imC8imC8imBQmZK5NOTuUUKEMX/UqUKuCNXeLY5JjggvQgAYKgJVq4bYfTYVgb4UWPr6y6CvCLxvqPVec3L+J8KL3nwDIpDntecEwrz4zTdQ5JDnifR8CHjPfX5v7x/sDWqlE78CCwAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #settingsBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAUeSURBVHhe7ZpPTttAFIdZ9QDd9Q49QFc9QM/QK/QIuUA3XKA7dqy6Zd8FUi/QRXcICBAQEQpCEQmdz/pZtSfzxuOxHQWTT0JK7Ddv3hu/P+MhB3v2bJfb29tf8/n8b+jv5ubmp8TGy/Pz8/rF4OnpaSmxcXJ5eflJvgZZr9cvFxcX7yU+Pq6uriby1WQ6nX6V+Pggx+WniZP5IfHxcX9//0d+mtzd3f2W+O5yfX19SD7razKLxWIuP00eHh5mEk8GW1x6fdfXYXHOH1GsqOYshC4nEesAJcvlciXxJHAcvdiEbbo8DKXzVQjrs7OzDxIxOT8//6ghjaToQ8ZPqUEXYTabHfvOl9C/rert2toXNj+Pj48LiTdCqrgxJ07nZ6mpwVzMKfEagyxCzPmS1Wr1gtGnp6fvGENopuR8DOakJjhd39CJbjoJc8XodRFwpMn5Kjjd1fEQLAR/+toINjvbJ3IjH3LNCrddBptTakkShGCbKEiFUG4K5xz09Iu06Q0KmfRnQXujarvcPKQwlrUC+Mw17iGDrIZlga1S3R+8pLSp5CWMoY5UHW4CWcbkztdmrlbwlFJDVhuloy7GMBYdKRsoQA4bNXwYaImaz4SnYPXwEiKKLSx/fNblIOhKiQZs05BhibUjWqBVfSlM5DgVulpU+cw17lnFC52x9upsmkp0WAhL62lwPeQ8TqU8wRJkQwuBbkvP1haASq05a5B/ftizWFTknBbKGMb6NYQ5rJpgRU+vWE+AYiWRAgznoFO3s0GHvwjMpds1Bo8CXkI0Vw0WxTey676hit/XmSv0IIga3jol1j+c1miuGi70aocRhGJO2Fugyw9v5tTtGoMdrdOuQu8E7Nr8p2+liQ+5nNrj0Sn1BcwZ2jHSKTpFgY6XJqwkbYmJY0Yio6EFPCndCsJGikhiHg0pNljoaYoaPwoYo1sbYDOLgQy+4FN1zg3Is9SnUYWuIBUFMaNwHkMkugEnwhIN4i+21ZFi4KNfUwpyK7a/9Yy9Ogcn9ojZgW6JFTC3brWCOaTiP7kLQC5KRbG9tcI4tUJbnQbQUd02M7dutaK3BSCkNbyAHNOtDfynZ4FTsVrg53HOecJ+AfpaAMBgqXh7KQAUIqkoeLVFkF7JBLHwC/Ga2iC+4SO+SsUmhBhhiDFsWHj3j53R+UbtykYIm7GdufAFn6rp0xryNxTeo9sKx3jTL0Pw5l+HwQpvDikkUoCRuZ2lCjr8xWUu3a6xlWMxq/KSyy5Cxn8khkFWFHB99IeiLEDseJp7oUUAnKJ1+fsNPnONe9ZTRGdsXlqeHy2D4MLyRHOa8JT8dPChJ7MX4K+pP6MrJYIG7QBAF0h9+SBPKVZdngpj0ZG6V8A2bNTwfiEEQxuhJpTPW/vnKDZaKdiJ2LYzBXZt6KCLsPWtLgifucY9ZGJb7xTQIdX9YLW+rhCyqSnVFiJI5neDIpWag7sENvuHJ1nw9NtsZGhHsXaVC3rp9fraCDZju9zohlO08QNJH1a8+v95QrDrQjAnjlf3BtjSFJFyvt/fCsYWgWpNEZNoDa6zpW1T0ZFlv2HtJdBp6cPGwX4o4S8Cn0P79RDko4Y1kvJGx5zM7dsz+K9EykWg31ZDM4WUYkoLlHgS2FBurbf2Exk36SRns5GSBuS8xJPBFmqOvu4uKecDnDpJfHzwsiI/TTjAlPj4IHXkp8lgLzO7QFMnoJC5Fpd/dP0aiHUCqrnExgu9m2IY+hv8QGPPHo+Dg3+UfvstVzGsUAAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #syncBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAO+SURBVHhe7ZpLctpAEIZZZOk7cIEcIescwofIAXyBXCBr77PN3hfIMgdIFYvwfhSPCsUjkPmoXy6QBUhmejQgvirK1gNN90z/PT0jatfCaDT61Wq1PumwWjSbzfpms9nOZrNho9H4oNPVodfrfduKbrf7rNPVYTwe/5b/2/V6va2UFFz4P6xWq4383zGdTru6fPt0Op0v8vuAykiB7C+fDyAqKiGFxWKxks9vuDopMJ250H3q9/s/GNnJZPKHqS35cEzCGw6HPwlxPvL1KNFLod1ufx4MBi9/HczlvkEKrmM/qrl4YKQZVdlpCpGjZsvHjfijc3wi24JBsSQTyoH5Gu1ahHkeSpUCDZcx6mlKkQIhv1wu/8mG0gkqBZxPl6llw2AEkQLTW2zOJ5hLwfVw/VSFloZRIUdQuWEcf5ki5/P5wippumn4q8z1CxsSOKB2MqFzqPQw4lw4uusPSMlVh9/pFF8dYiYFyli1cQCGU8ayertk14bO0CMvAnu8RwGrLzYk9qEhn/t1VJB69LvAPrP9Q/SrdnYgBZKhLnvh2PL3HIQ8aw6zGWB/Y4LGrJIMiVHN5IL7nS3P5BI9wgYSFA0SBVa9TNjuvMoB9jAIQXaJSUxonQSoUyYwkvIvE2xgALBHXwmDNiiedGhGOsckmCa2PLiQr+tfMwjldGVpnthiYn/+p5CiMDJPbDHBSJPRWc1V8vUXYV5Jx+/cuVMtQtQUUcJiitUjH526fZjWWLCwHaYax3w9EQVUcFRyWUvbEAuZ0kpn9E1FRw0vfw/gvHWxQyUZPMpYpbFaS2+XpWHPUF/xDh2bvJoLFgGEM07RaB6s3towAEmesezkHUpshV99W4wMtpBrksijDTcoXvcoXyGxMYL80GHXWkH4nh7lBaIvbQsy1GV/kNhIKkXeBGWBPvXIi8Bxdo7SssM+bNVt/rjU8QQ6gCjSYwuRRN8p2VFv6Ha/oDG1cTFMgyQpnEGrx6ZEHGakaZvRPje7mIR+AkYWTXh5IYzpFAom9MxfjvPOKoBt742s3DDNnBuFMqDDTHSfhU8p+EDOhyt5LaVQFGfHJKjzCTFIgSRqrvlTlCUFXppYldKFCC0FZgSmuVJC/hghpMCIUzzRlpqNizxSKDKfcy+ZndGmqitV53nIIwU6idBlPxD9csyGSfLhWFXho7vv+jZLKWdPSSHa8PWJG8XMX41R2uqW20ZSePNDaUJct9w+WVJA17pcDfalwB4CkaFL1WBfCqbr85hJpBDiB1XRwrwefRHzSq32HwklQEesaIcKAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #moreBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAGiSURBVHhe7ddBboJAFMZxll32HL2GV+kNeodeoNteogforifoyrVJiYKJITGSEFPLn340SgBnjItGvl9ibJl5M+8NMEJiZmZmZmZmZmZmZmbTlqbpLMuy5+Vy+cp3/f+Dmq5isVjc1WM/1mO/8OFvjqn5Ksi5U8NMTcNWq9XTdrstDh37/f5QFMVX0CAj5vP5/Xq9fq+q6ltD/+EYbfRR94uQI7mScxe1UaO6nqon/1C/QQzKGVNIFM7IbrcrNdQg+tBXYVHIra/wLmpVyK88z9/UdhYTDK7iAM5qSPEt+sZeCeQUUnyLmptALpmYQJRlWcXcs1zaCg1GjMLPIhdyUmgQam5u6c1m86ljUdhYNP8okuu7588hJnSRyUVhUag9ibk0jzXBAdjhFRKNWA0z6tKTSO1J7OXfYkfV/KPYmBQSLXTD7fvlCkHtXoDJ3wKXBrPxaP5R/34TnPzPICb9INTi8VBtg5ggdGPq4vE2ZBHoQ1+FRSG3kEWgVoWcYhX7dlQGvfmXoWMMwsZy9Co5jddhMzMzMzMzMzMzMzO7YUnyA5Oi9b2LNFr2AAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #toolsBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAJTSURBVHhe7ZrdbepAEEZdQOpIGXlOA2kiDVAABaSD9JEibgV5RCCMQAjERRAE9/qQT1acrBMT1mLxzJFWi5jdmZ3x/nqdtcVkMrnJ8/xpuVwONpvN236//9cUylKHuuhAl9ReB0Wjezggf84GXeiU+rSZzWYvh8NBTY8HOtEtM2lCA9Xe1kg2COPx+OG7J8+43u12hybpu/kCG9iS2XRYrVZztbECE9lvGkwd6kpNBWypWBrQWLWtQozuWjeskuoFoUbGfEqh3pXUXBDqqqzfEp8NuqS2BJsSX57QE4rZRUNDLKl5YL1e/1W7SgaDwZ3EZ4MuqS3BpsSXJ7TrGw6HtxKfDbqktgSbEl8euihb1SL1Ga/T6fQ55v4dXehEt2z0kloFOgcRH41G90WUH7uQ8KVRj6TgYrF4PeXoei3gE77ho9ytwhjrouOfwUd8ldvvMLm0cYRNFXzF56PzLDGcwCQzAz4fl+q6w4YFjueJ0C7OCsfdpIWJrw58z/S7MRxCirX1geXkY+K/0KEoNrHtnxyAcvYMgEzFWiO2/YzNwSmJSMveF5CF6sRMse2rqmOXj6+jm6RinNXe0CAL1YmZYtv/zSTYl70vIFOx1oht3wOgvDHmA8DSEXq5wH/IVKw1Yts/OQBdwwOg3CweAOVm8QAoN4sHQLlZPADKzeIBUG4WD4Bys/jNkPm7QfO3w9yRb7dbc+MAn8tP+fI87xn8QqR6v8AbVS4KVKaz4GPtm2W6xHw+/9PFIYFP+FZ2+5+g4Oc7+GtNjZ12HMdxHMexQ5b9BzIZh/CDCWboAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #faqBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAP6SURBVHhe7ZtNrlIxFICJC3ADjtyBK3AlLsC5u3Do3CW4AqdOnTpjYCD8BwkQQ0DQ+70cyOXaltv2tL2P8CUvjwe9p6c/56/l9R48KEO/3385mUxe88Nrefv+GAwGb2az2aflcvl9s9nMd7vd/ng8/m3Ce3xGG9ryDM+KmOdFtapvF4vF198VMr5gkIEsZIr47jKdTj+wgqfTSdTXA5nIpg/prjuMRqN32+32l+iaHPqiT+m+HMPh8NVqtfqRYsVvQZ/0jQ6iTl7G4/H7ymn9EX2KgQ7oImrlYT6ffymx6jbQBZ1EvXTs9/sXhCjpt3OgGzqKurogGJuTvjoLOiaZhC6vfBN0FbV1wL5E9rNBzSfgYbUdHvLI8Ehs1uv1T37ztylFDoU+oqMDMVYz1DFIcnxb7MZ2SXDYwofDIXrW0T0qT9Byeucw5eOcqBLZHSIiGMYgIv1gJbS2PqsuYi+Q01cr/Y3Vrl5/NpXEGpGHMQSlzVq5PasoIi+YnCr9mXYIE4PpSLMgkC3i2sHqyLPRmKo36n75+Ipqp3yUJlfwvjQJxquKxCvLc9GYDjVsDs4Wv9kFsRGCMYk4Nxw8aNk+mOzPFllM5nIm1gwYU6tDFU5f5BkVml7Y5VxdHlvDJzE2EWcndqZNMDAiAV7fFd9tJgAaE8DYRJwZ7FXaFsGVvtocpy/Og1ZWSdoVwRavUTplTnKBLSjtsoNjtGWKmsWYy8xUw58vNgelXY84w6GWnfnCAG1Fi0Y9UIcxiuj/0SxHfbBlgNohGRijiL+GbEvaZMWU/OALCJnSRB3jXSTlp3yeDXIC+hUVnkC52ArwFs0+nygxAc24jx/I4YiNE5DbBLDF+lYk1qfIQk0YTQByOsF6OEKhXIO3OkHIGQbrhY9Gvd8WZxjMmQjVMzLNTO8WzkQoZyrMViQK8JPT9JypcOliKAfOYqh0OZwDZzkMubxxCRibDNNOivy7CbU9zoh0F5vMNemtjsSqLEn1ULQJTq95Z0funzoStD4UhZTh0Fb5QcoawBn+mmhejNSh7red+gArJE3V8boYAa2rsTq3rqiYHGmqivfVGGhejp655YVThGHGEHQ5Cils0qVMCkdYrzm80T6QBHaBKRkhMminxOge9QUJSPEVGUIhMRnHRFRglbQHj87RX5E5k7Na06J52hRNzkoxFmfFFwohKmWiogU6unKNKBDc5Z2AbskGXwf70naMMaCLus3fAg+rHSJDQAc1b+8LMRabK7Eb6JO+o+O8BmR3KWoHG/QVnN6mhMSGsjPFjkAmsr2ruhJQ1pLpkfaK/sEgA1mtDzO6Bnk/J7GEKFawclr3/4+TbeA6rFrV+//X2Qedptf7B0Vbs7sYByOgAAAAAElFTkSuQmCC") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #noteBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAALMSURBVHhe7ZvRrdowGIXz0AG6QKfpPp3iSn3vEB2mK/TtIlTEBaGkQkIopc2XHv6WYCAJJomNP8mCgO3858QxdmwyF7PZ7MNqtfpaFMXbbrcrD4fD79AgZmJHA1rQJHnXIfN+v/+leqIBTWiTzHPm8/n7PM9flT9a0IhWyf7HM4g/glbJ/gtNQ985KcuybkIhJWK+ht0OdA4U0OcGnchms/m2WCw+1hkDhNjR4OrE0Vx3jK6rT4HlcvmieoIHLS4T6lbAz4SODVxT2WhAk+QZaM/4rdSxEXKzvwSaJM9Ae9ZsGnQeKhMdzY4R7ZneG3QOyh8drs4+GaBXIxmQDEgGJAOUPzqSAcmABxjAEJPJRpU+D5xeug7ZvRtwaao5FJy7y8TNqwG4P6b4I8TQtiV4N0BFRmcUA2C73f5UsdEgBoVzE+8GHNcP8jz/Pkbi3K2f91d4NyA0kgHJgGRAMkAyjWSAXo1kQAcDqhHYp6H2D3AeJkE6dS+8GsASc1mWg04GMLrLwKeJVwPGmgvQ6hRCZ7y3AFeFj4SVncm0AOBqMBmhzKMT57nn6gP1SKZxlwGhkQxIBiQDkgGSaTyNAfxsN0estVa9N2I0gLEDj9Ak0agfqeu9EYIBLIpUgl6LovhxI70xfnDtGURnPajSsTF1AxCvUO+iGlR9qSvUsTF1A7jyCrU3J6tJ+syYugE0bYXaCwxcr9fvVN1zGUCfcLZTXN8ZsRrgFA/63ojRgIviQXmM2Ay4Kh6Uz4jJgJviQXmNWAxoJR6a4+Opb5ZuY0Br8RDadnnEKUwnncSDq8Iu+26G5tqmjM7iIaS/zCDu0lpEL/HAjIiOT/UYmEBLmMrtwPCVeBTeCb3FH3G1gv+hY8SkMZP3K9/ExyxraIjZi3igopBM4HY4mdX5gtuBJqfzTA5is4cZj4KOESO4v4Za/r4Fwrnq96wNnpNlfwA4HvhbL+BtiAAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px; }
.ui-page-theme-d #saveBtn:after { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAIYSURBVHhe7ZthTsIwGIY5gqfwGpyD+3gIf3oDf3kGr+B/E1hgGCSQYEKUPfPFiLSlxRDW9XuSpmFb135PS8e2MvjNZDK5mU6nD6vV6m273X5+ZQTtXSwWL+PxeKhw0mgKjjabzYfOly2IoBMVVhwEn9LjiJrP5891XT9dM9HjvnbTPoUXhmGf0vPr9fqdMip+daqqulPTjlgul68n28pw0fFRJA+vM2hG5K0vuQIKdSDzWVACB+jYKDCuoheBIFWVE1f9jErtdhKUkDrb5ygAvBK0P5pcBYBTgvZFk7MAYGJUsW+0PZrcBcDBJVLboumDAPi5mulzNH0RwOTf1DUsVgDwS7JoAYyCogWACVAejQkwASbABKjei2ACui5gNpvdq96L0UgY+lLqE6FTJAvgnlr1doJGykhNO4tkAcCQq+v6kTuqayZua1OfaP3lLAF9wgQoLxYToLxYTIDyYjkpgOt98N1aR6HNtF1heAkKaB8aZg4xKBwnQQH82tJ5soUYFI4TE6DciQkwASbABOg82WICTIAJMAEKx4kJUO7EBJgAE2ACdJ5sMQEmwASYAIXjxAQod1KEgNACg74LaNcKh/401XcB7XKf0AG8WtJ5siX0eqztYN6h+VZZsT3H94J7omNjpZVvLuDALvxNNjXRZl/wxErMbfB72OAr0CeI8Sj4PQwJvhdMDv9dftYliIWYiO3wKz0Y7ADbaBPjPVaT8AAAAABJRU5ErkJggg==") 50% 50% no-repeat; background-size: 22px 22px;
box-shadow: none!important; -moz-box-shadow: none!important; -webkit-box-shadow: none!important; -webkit-border-radius: 0 !important; border-radius: 0 !important;}
#converterLnk:before{
content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAIOSURBVEhLxZXNS1RRGMZnr39A/4JgFIIuNKVUhlwNblrUZkBEQSWjdOXOQNFWbdzYokVBqyhyJTorG+Z7qME2gQiRXzSYrhzt4/cMD41Rdz4q6IWH95zfed9n7j1z77mh85FOpydTqdQ++VuD2qFv1DY/B4vdLH5FW4xfkOvVS7SNSqjNdpVIJpP39OssdhgFRiKRuEDd3UwmM03fAH296mU+7pJKqMjGF40CQ6bULpNHyJu5XO6qetGkSyrRiLFro/l8von8lp5r/8SYuilddTweb2FcqMs4m81eMgoMatoxW6c+hubZ856axjQ8R0MN6lVN479UsDGPzxK31kfu50pWxchPxCTqntlkxfM+xo/M6vvzdJtiMjASi9gkaiTWZVbVeIarbdUPMH9q9kBMYv5QDD0+x+6b/Yc9Rhtc4QJaRO/FyHkz6Y3ZO3rKjHnCvcHGvJ6XjfQiDIvRHDYSGzQbMtLZUfs5Rjf0qhYKhWb2b06MtVExCcM7YqzNxmKxZol51L1V/7wS+TP5CH1xw6mYpbHY2W9Y1SvexVD7HEfHZp/MNhgXzQ6ZvyaLH5hVNb5ipOezfNto0Eh7fEuMtQkj9V533a/GFOqM1d51Gunwv22TiJHqbpr9ONQZh208ZlQJFruQ9vQDeQ1TnVzaPzXsiVnlbyK5iNatj+gk8GRkcQL90ccUDduGCIW+A39P7pXBbh6KAAAAAElFTkSuQmCC');
padding-right: 25px;
}
.ui-page-theme-d #converterLnk:before{
content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAkZJREFUSEvFlU1LG1EUhif/Qdf9GW4KWlxUFBVLvxTprnSX7GyjSNHSou2qWOimYrsXCiJYKLhQC/4AabLxAyGBFpJMkpl8x/i84ZTpohmTtuCBwxyee+57zz33zozzy1qtVqRcLi/X6/UycU/GHK9SqcQJIyYXGANjF1ij0UjjOz36jyZWKBQGTS4w3/dXtXo2m50w1NFKpdIN8lfY4Rvi6WKxeF9zYa8sJTAlaTCXyw0b6mgSrdVqm4jGqfbMdd0HJrxqKYH1IqxcWhdNpVJ9CB8j/PB/Cb+uVqsv8vn8AMInXQlnMpnbhjoaPR2mFUeIf6fyDxza1JXCJO9qm906C0SZs3+l8L9YqDDPTSoZxcfp36EYFX3hJRiVE38VI94jZ0wO2xLr+vC0VTEJGnJY7J6Yxgw5HOK4WKgwd3ONl2SQBW7Rv20xRNbF5LBPYlT5mZwhMcbfi11Pj9n2EVVvUMVHtp0ydiwmJz4VY+ycHOWJJcRChbnHI4Ycth0TY/KkIfV42ljMkNPVPebyx/SqptPpfvr4ToxK58Xk5C2J8XyLYJt5njcnFiqsLyfu8RX09Rk11hQzb4oxfqEc8zYLFSYnRwsSeJK4YqxoLKHYmM+OkmK0Jy8WKswVumtI93hRDIFHhtT3J2KMzRvSt2NW7I/CwBUNInzHkIQXxOjxrCGHRR6LscAzQxKeEUPjpaHAOIAR+qe+/WRrB/g3vP3/4+kaO2DcFVNLfmMZvMFh3jS5wMiNUNlz7uRf/UyZ+5TQfqaOcwn+KrjBNuRwnQAAAABJRU5ErkJggg==');
padding-right: 25px;
}
#settingLnk:before{
content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAKaSURBVEhLpZRLa1NRFIVTUFpjFR8gFJyJ0ImT/gxFB7YDwWI6LP0JHYktiNSgCIror2iRQCltbEPzjjeB0EAmlxQUZ1qdVJo0futm3/bEXMXSDYu9zz5rr3se+9zY/5jneZdKpdKE0Gg0Llj69FYul+dA1zBj6ZNZNps9hxvqjXrGSt85wklLB9btdofIxW0Ybfl8/joiO+B5SM5kMpcZfwqFiTfD44B/sVKpvCbvVavVa8oNWDqdHpGoI1ADL4l/gEMnfwi+gafA5RfxZ02u35hYCIkOvlO0UiwWNbdA/AG/58wHH8PPm8yg6XwhBNs28jJ+jG2ex98QyMVrtZqObFU8wyaIXm1oEF4ZeTmVSg3jH4Jd+1AH3wJTvu+PMF4DWsQTK4+2QqFwFeJPoO2P4SXaVvEfOOBoJnO53E14+4x3rZuOTc3PxByE93hPhcQr2r4KbOwjdI8OuE/8xXI7XPgZ/AbjDiiAt4xn1S3q0QkRXeiiyOtM1QHCbVuH+I/EwXfUisSLbi1ocwe3IoVBIIzXmUr4jumKnxAH/29hNTuDGZCEnNEkXi0Vx7ds3GIXD8A046+Wq+soiD8SawHrYAkk6vX6qK2jZ/bK9CD2rKWmiA8k5IL8Lz5yl3hcMd7XAzOZaIP4wopX1VIITBLrmWtVQl2iCI3CU/92udTHVh5tuk0KGyIb1tRS2rJ2I9j2x0EgKlBTHmi30PSXgvAmJDtF+0AtpUsSdKbafh8PJKVhcsfGRByEfaxO2GLLz/CfNbZiIXh92j4+7+S3m83msMn1m359kPWXmgfB27eHolwgwPx6uG1dGLlFctvkrij3VwsFXaPw6EdPvGTpI9M/xcKTGWKziOqf0SZOWPr0pm7RaxIGmj/SYrHfMliSETOqv9cAAAAASUVORK5CYII=');
padding-right: 25px;
}
.ui-page-theme-d #settingLnk:before{
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAt5JREFUSEullMtrU0EUxtsugtZnKVoUQRBE3blx686/QRHEhSil4kpcd9kHdCciIpgqgl2p/0HBlko3RppKxSJtSNq8aJo+kjS3yfX3zT1JW3IDln4w3Jkz3/nOOTNnbsf/YHNzs299ff2OxsrKyjkzHx3VavWFb2A+YObDYW1t7Qz+nbZ0KJfLXwNZ369UKuNmdsDUVSgUztoyHMVi8arneUmc3ymAbLlc7uLu7m48kPV95t83NjbcccDvhfsJn0X4l2VrAQKnKDNl/hL4i9OHWq1WNlMT7JXYe6MkzOQzX0gkEsdN7iAgvzJeExLZ2dn5RoAhxjACU2HBOK4xk2mFssbxj3GVxSSdcEVnSPk3CHxdR8QRXGNvxmjixfgcM5lw4PzRyJOpVKp7e3v7GVnn6/W6r8E8h+1JJpM5CWdWXFVq7uHI5/OXKLOi8pWpRFnX5bwfBKhtbW09ppKb7HuMDL6nTSaAml99qpaCMC9HnanKV6Zak1mmVCrdx/4QW8FsCT4RfOeskhgan1k/d12j1yTifhBgSGcqBwHRu5aHenpANu2l0+k+uCOOZMBex/d2O+FhXVRDmEzvma6En8qmPao9D3fUkQxNYb19PVOExiG5y6DMKd2+LsrWOQQfMfqxFWXjuxSPxyMEnVcQ1tPsR9HqTyaTvZZHgGw2ewFChQBltZRuH6eahPaD/RrH84Bqb7Hv4ZNWl5hMOMj8vZzJckZk3b4uSllZZksS1eVi/yEuPi/NPRx6+5Cbz5r5rFqKaUQXpTNV+cq0ISow/63HZTIHwX4XkScC6h6o2lNL8R1hjNqZerbdBL7RwcHBLpPbw/Lycg+RF42nLGKQ3yLmXl0DdhxZlQ/nl5nFn2t7zvr1QVjgdsfgurdP2T2I/wzcXTdMN14Zy24CvJaoLl62tgj79RHoSyDr/mJRMztg6lxdXT1hy8NBz5QjcFCfmvno0NvXa9Joaf5QdHT8A7NRP0BJz0NpAAAAAElFTkSuQmCC");
padding-right: 25px;
}
#aboutLnk:before{
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAIaSURBVEhLnZQ/T1RREMWffxCzYmLjh7DgA1ja0VgQsw0FVH4G7ZbEjhZqooUheQpWVhRb7/8tNq7ZZLOQaAjGkKAJqKusv3MZ2LfD3YUwyXlz78y55827d95Nrmppmt4aDAY3bXp9a7VaM5VKZRFsga/VavWfwPgL/h1+AZ8z+uWmyiTIon0wmAR7Yb5QKEz+kk6nMw15HZx4kXEQt1wurzKeMplRs0rX/cIsyPdA7EtOarXaWvQMWKD9nFTpa/b9TqPReMD4s8sJf0He5E5NB0Vw4p6WSqXnRk+Yb/i8QGG7+OGBqlpPimAP3hL+Jf6PywXYFw+rJvDBk7Ig/xv8ZNz3OQ94myYbhNU2MaKEXnEwj9rt9n38Y7gHjjMC8jtBVN1AQM0fI/YhtsHbQMaIvXGcEcA9Dt2hB4FxwgGQt01Xwh993uHovO1YqN80Rgog/0I8/UDMtddRngC3F0RlBN57Qgbajlnx8E8ieY80iMpYoAslRlIF34rF4m3xmBd8Pgu4arf5ICpjkiMY7Qzin4yW0BXLxPbAcZZzBrhdirhr9FMjkbc3+gW/EJxrNpv36vX6Q8bPiP1wHKHPZfTU5Iamq89uqQvivFD3wHf8oc8ZdE+v0A03TG7UIExR0RpeQjGBGHS4K/ofTCZu1tfall0w9rZTDnT1+WMrjRmLc0Av2AQ7QAd2hO/hUzB/4aCuY/qS8z/qUkuS/2/ZX77O3DewAAAAAElFTkSuQmCC");;
padding-right: 25px;
}
.ui-page-theme-d #aboutLnk:before{
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAiNJREFUSEudlL9u01AUhy3aCFEJgcTSjbeAZ2BhZ+mARCWGIiHxFGyIjYEROoKYqkbNwJonyJIlAiJLiY0S54/tpN/v+iSp5Wun6idZcc499+dzzj3nBrel2+229NjfuzMYDJ5Mp9OzxWJxlaZpsjKWy2WC7XI2m70dj8ePzX0/6/W6heA7xCa8N4LPGN9TXg9sux8cjojmp9t1S5TFfD7/3uv17ptMGXxa+0SzLPuX53lkf0sgft7pdA5NbofSNx8vfPQXwT0YDofHlGBg5i18cDWZTN6YXIEOal9NieiDuQdE/sPMJbCHo9Hokbm5aM9srRY2xfi9pxs+El1u5gqs76Kmha7M7oUSZGip5WoFN6DVNtkgUJ+avYSEkiT5EkXRs36/fxzH8Qsi9/puQDhyopomBFZmL6GUcRxS345zBkzfbNkL63M3oU3CGxDvmq6y+21mLxLmp2g7NjampwOTXxiGDylFZmYvmkYnKujRttkrqM50w3P58fvSzLUQ5IUTFbpQzF6B1CLE3bhS689mroUheS1fh24ppWBrJbD/NTcF8IlK/Odj3nKw9kflMvcC0jz1HSIiKS33StPJVD3V2CKQ2vIW/HLWTkxuB2sHuqUKtzL6IPtinrp+1w33ldd7JldGVx8O5wg0tt9NFKmJVm+2m+jqs3TDYms9qqnS59UfqQ/dUrpQaJ82T6TA9OiQ1VI6/cpB3QVNKJE1p7slCK4BqMokNhmSvQcAAAAASUVORK5CYII=");
padding-right: 25px;
}
#donationLnk:before{
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAI9SURBVEhLnZTNS1RRGIevhmWBQVSgQQtFaWH/QTtTaiu0aOXKCFfSRsSEaZGbaFeC0UpwNUtL3CSzGeb7y2GckVEZw0UgVEYkTGbj8555L1yvZ2rGFx7O1+/87rnvee91moi2ZDL5AsrpdLpf584fmNyKxWK9qVTqAaY/aWu0y/Cc/mYikehTafNRLBavs/kAjuGvmHrBfJ/2isqbj1qtJq+/6jd0YW1epa0HqbiPwZnTCvF4/KHKWo9KpdKJ8bbN+Fz59QYnG8V8B7MfcEh/H5bod6ik9chkMjepiiG4itENDHtKpVJXPp+/xnia8Vg4HO5S+f+jUChcZNMUfAPJ8R6E6H+ABP2vYFLC+DM84rLbdbs99HSNqqGqDzo1z5yU5Buwp6dcLl9C9Mm7yUOVFPSxXrGsubyznpybfmkRC19YG5balhwzXvStuxzz4Am1q0c0Gh1g4cgnNCB+FolELtNG4CNs2HTKAXfUrbaOg/iVRWTgQ5nTL3EMsjaNF94uoLbGuGQTCaxVaWeo6e5gMHiB8Xu/xgvr68ZUTsPEH7/AgxjLhl+c5i7tPcbWT10QnXg6gUCgnYGUTCPhLIyQkqehUKiTuUm/xseheJpTs3HXInCJwxPN82swb9AI1reMqQQTC36BF8S/OfFj+vLPsGpc0L5VW1PDUvzfbcIWkZq/rbb1yOVycjFSq/+6yEYcsW+NH9eA2p0OyWM2mx1ENMGTF2CFfhTWYUORvszJT2kextHdYXtb3UXCcU4A7pYN+kMtWjYAAAAASUVORK5CYII=");
padding-right: 25px;
}
.ui-page-theme-d #donationLnk:before{
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAAAmNJREFUSEudlLtrFFEUh2d3U4ioKKhpFLQRLESRgIjW/gOBCNqkSacgFoIo2AkK4qOw0M4EhC1SauemCabZylRJsU32xcw+Zl+zO7Pr+p25B8I4s0l2P7jcu/ec+7vnnnNmrcMYj8epfr//yfd9p9PpXNft2SmVSlcbjcbNXq93fzgc+lwwDoJgYzAYvGXUbdteUNejU6vVLiLm/QUR/J/RaOQWCoXT6n50OJsiut9GJg5pWVPX6Wm1WouqE6Pdbj9Ut+khhydJR0m1IjiOc0vdZsPzvGXyuccFA2amoUvhfpLfY+oyPd1u9wJjsVwun5di0iGXSc850jBPp7zn0sfNZvOMuh9OsVg8zqE3RNiVZxOlQyHzRLrF+g8j3BdY2/iusMzo8WSI6CwiW+ZYFDov0GUEaUm6ZHVieqrV6gkc8uofQUSx38He1q0YvCiby+XmVG4fPtvP6hOB5zbI6xLLTKVSmefpP4wlinxL5P6FyhnkP4CcJn5lCL2mvU4R7S5p2mQU1BSDIDyKfEllLYtDX9QWgyi+MqXpkCeI7prdyRDIR5UNhW3djyH9i/M7iYSfc+Ry3ViSQWsvFM1msxmprO7HQHiks1+v1++StnuhYQJIeaJpSSUPEibaDxTvASl5Lp3D/EpNiYgwk+lrwm+Z7ThSNDrmKcs0l3yT1BhLMvg7oajAj++6nwhRBBTvEVU/UFQgiP2/VJ56jTM9tc0MGk3Xda+orIGN27TTNtGFxZoGKTCvzlPYGyoXBZ+0XMBzXuK4xkUbkmNGmWHLoN1kvcP4xVilmM/4l1vgbEplwLL+AdY5yl4fpJX7AAAAAElFTkSuQmCC");
padding-right: 25px;
}
.loginfb:before {
content: url('https://dl.dropboxusercontent.com/s/vsc19gan0ihjptr/fblogin.png');
width: 200px;
}
.logoutfb {
.logoutfb:before {
content: url('https://dl.dropboxusercontent.com/s/sdbe56vqxeqevph/fblogout.png');
width: 200px;
}
.logingplus {
.logingplus:before {
content: url('https://dl.dropboxusercontent.com/s/k43w3cfzowlynhk/gpluslogin.png');
width: 200px;
}
.logoutgplus {
.logoutgplus:before {
content: url('https://dl.dropboxusercontent.com/s/nnprsunm8zg31en/gpluslogout.png');
width: 200px;
}
@@ -100,12 +110,9 @@ text-indent: 0;
font-size: x-small;
}
#backBtn{
font-size: x-small;
}
h1{
text-align: center;
font-size: 1.5em;
}
/*--------- Fix per FAQ ---------*/
@@ -167,6 +174,15 @@ div.ricettaAutore{
-webkit-touch-callout: none;
}
.selectable {
-webkit-user-select: auto;
-moz-user-select: auto;
-ms-user-select: auto;
-o-user-select: auto;
user-select: auto;
-webkit-touch-callout: auto;
}
textarea {
-webkit-user-select: auto !important;
}
@@ -240,6 +256,42 @@ input[type=password] {
background-image: url('sfondo_selected.png');
}
.ui-page-theme-d .ui-btn-left {
background-color: #3b5998;
border-color: #3b5998 !important;
//text-shadow: 0 1px 0 #bbb;
color: #fff;
}
.ui-page-theme-d .ui-btn-right {
background-color: #3b5998;
border-color: #3b5998 !important;
//text-shadow: 0 1px 0 #bbb;
color: #fff;
}
.ui-page-theme-d .nav-glyphish-example .ui-btn {
background-color: #3b5998;
border-color: #3b5998 !important;
border-right-color: #ccc;
border-right-width: 1px;
//text-shadow: 0 1px 0 #bbb;
color: #fff;
}
.ui-page-theme-d .nav-glyphish-example .ui-btn.ui-btn-active {
background-color: #395184;
border-color: #395184;
border-right-color: #ccc;
border-right-width: 1px;
//text-shadow: 0 1px 0 #bbb;
color: #fff;
}
.ui-page-theme-d .ui-corner-all {
-webkit-border-radius: 0.1em /*{global-radii-blocks}*/;
border-radius: 0.1em /*{global-radii-blocks}*/;
}
/*--------- END Remove select possibility ---------*/
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

+5 -5
View File
@@ -1,9 +1,9 @@
/* jQuery.Rating Plugin CSS - http://www.fyneworks.com/jquery/star-rating/ */
div.rating-cancel,div.star-rating{float:left;width:24px;height:24px;text-indent:-999em;cursor:pointer;display:block;background:transparent;overflow:hidden}
div.rating-cancel,div.rating-cancel a{background:url(delete.png) no-repeat 0 -24px}
div.star-rating,div.star-rating a{background:url(star.png) no-repeat 0 0px}
div.rating-cancel a,div.star-rating a{display:block;width:24px;height:100%;background-position:0 0px;border:0}
div.star-rating-on a{background-position:0 -24px!important}
div.rating-cancel,div.star-rating{float:left;width:16px;height:16px;text-indent:-999em;cursor:pointer;display:block;background:transparent;overflow:hidden}
div.rating-cancel,div.rating-cancel a{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAgCAYAAAAbifjMAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABh0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC41ZYUyZQAABAZJREFUSEuVlGtIHFcUx++6YaPGB2ow3WqiCa2apmo0tkrQSExqrCVak7gVs6SPL6FQUGPB9RH8YkFBKPigii8oguL7rbvia0VQ/BBajCFQKCQxJsXo2mzdjbs7p/87O6luNt0kf/hx7sz9nzN3Zu497FXNz8/76fX65OXl5ZtLS0u3gWZxcfHG7Oxs5MzMzAHJ9nqNjY0dhEkHswHszs3NCYgConl6evox5n6SrM6ampqKBvcBuWJycrJpYGDAW0rbk06n6wcCDNzkChP4WkqzC4kZWq2W3paJiQkDOComd3V1KUZHR/V4f+JgTCMjIw7we+Pj4zxR9Ei+PLHA4ODgkaGhodXh4WHirKyskMViEdnd3SWTyUQ7OztkNBoJH1T0cJBTVV5e7sZ6e3uV/f399/BhiLO6ukr7ZbPZxGK8CP+IL319fX3VWL2coZInBgs9PT3EwYoIRQn3HOju7hbn93FLfAWujo6OvM7OTnoXUOBDKV2UrL29fQEIgN6AGThvqNbW1pS2trZNQG9A29TU5C+l/SdZQUGBR0NDg7q5ufkOilleTWxpadnC3FB9fX1Udna2XMqzi/8O4FlaWhpSUVGRVVVVVVtXV3e3sbFxE0XXampqdJWVlfnwxGk0mgBEp0Mlw00F8C8rKwtHTEFUFRcXq0EOxuklJSWxIKiwsPAQ5t2kvD3hl8vwu+T8VfhTsJqjiCeKiopCkRAIfAB/iHPyflFurp/w7ffJQt6PN623NLet+UUa6w95N17kfhNJyc5Ld5CQlnZQyPxKR1m5BuHq9V3hmlqwXVULGJttmTmPbRmq/+8HQmpWtC39yn364hq5wpZ2pUk4m+HcD2wXL/cLn2UKlPoluQIek3DhsmM/EM5dzKDkz+ltsSWlGYSkVHs/oI+yFZb483pr/AUS+eQ8WWOSyXpago9jwdlUsiZesns4cSn2fvD84/gj/0QnrppOnyOOubqWzDi6O+gDRkTD9jZtPHtGT54+JaPqO9FjJ6mKGHNjxohYpTHi03vGkwnEefHzL/ZGIMlqtYpNZRtFnmdcFz2cvyMSqrsYtvSa8oznVmjMguF4LHG2IxMRz9BWUJQDhmAQGiN6RN/xmL1+sHH4VN5G4Cl6F/46fNKxH6z7hC2se4UJT7zCyBXwmNd9P3DeUA/ZsZRHspDNNVkIueKR7Jj2AQt27gfBjHlo3d5T/86Ud/5k71sesCB6yUPwB1Nu/caUQ4MsMAp+x34A8RPm6e7uHpKg8MpSyb1qf2W+d/XMf3OS+a3Vy3x1KjeP/HB2IA6+AODcD4DCh/n4eyu8w+VyeQquVUANcnCdjhgLgsAh8NojzYvwpXl4M+8Ad+bOt+oJEAoCgQ9QgH3JjP0LiOu08eQI5iQAAAAASUVORK5CYII=') no-repeat 0 -16px}
div.star-rating,div.star-rating a{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAwCAYAAAAYX/pXAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAaFSURBVEhLjZZrTFNnGMd7O6cXbrYsgoRvxo9GxC1Zsg98IEaMMSFmzTRsMidpshCMSJlfltR7QTMTXUDocFxkqdsQBCog4CjScqflUsUlBnVLVC4G2UUQ7Hv2f05beqgY9yaPPefw/v/v+zzv8/6iDEOem5ubVFJScqy2tnYEsWi326crKiounj17dmdDQ8MOm82WcuDAgQ8wV0khCIIsFDKTyaS7cuXKtcHBwdednZ3M6XSy0dFR4c6dO29cLteC1+ud6+vrm7l06ZLDarUWw/xcdnb2J7SwaJCfn7/t7t27syRyOBxsbGxMIJOhoSFhYmJiNfDND0OGhfx1dXUzKSkpaaJBWVnZnoGBgeXx8XGBxDS5sbHRLxVTuN1u5vF4BCwmLnLo0KES0aC6unofXFloIhndvHlzjQF9a2trE8iAdkfvR44cqRQNSktLd8FgSSqg1aTvra2trKWlRfw2PDwsdHV1sbS0tP2iQWFh4Ra4PqUaSEXSoHrQqvSMXfiLioquJycna0UDi8Wiq6ysvI1Kr66Kyq/ZgTQ6OjomzWbzZhKLBjhG7gIGTsBPWxsZGRGam5vFQlHOocKi0AyLzKMnDhqNxtVeoKHMy8sz37hxgyFXoaenh+GYWHd3N0N9GITiN6S5WFVVdYb6JiReNcDEglCOoUAaVEw6EXb58mWGZuvPyclJlopFA2yHRy9US8XSIOPe3l4hNTX1Sywmdt8ag6ysrGRs/xFtlQJHKkSeCO5JP8SqSLFokJ6evhVdNXvixAlG26V2bmpqYlRIyp3M0O6F64kpZHSeiYmJBdjJ/fr6+hU6czoJ2kl7ezvD7WQo3N71xBSBf1DI7du3J2VkZKAkRvupU6em0BtLqPocbqAtMzMzPlIYChryQq02qUmjOebi+RE3zy/2c9x0u1p9sSYqauc4x+1w6HQpx6Kj38GDTZt0t9Tqa//I5a//UKnYM6WSvcHG/lQq38wqFAvLMtncS7l8pk6jcVRHRRX3cdy5o3p9mAdWnW7bjEIxuyKXC7/DgMTPYfIv3sUMgwFj/wuFgmEhv5fjZj5OTAzwoJXn9/wtly/7MYnENNnHcX6pmILESzCdhjnNNev1AR44eX4fXFloIkMg7zUG9G1KpRJew4B2R+8nY2MDPGhWq3dhB0tSAa0mfX+I1ChIuAiTZ/h7RkJCgAfFMTFbnisUT0PbXy9eQURiekYa/hqtNsyDcplMhzRuv5SsuixJKTKeKBST52NjwzyAAfeTVnvhgUrlf4r8qFCT2C4Vip7pl4RIky3I5fNtGs3BXyS9QEN5Oi7OPMpxlKeAs2cePE/j16HRsL8UCvEb0lzsUqvPWNA3IbFoYITBLY2mILRSKFYQKCYdKavXahmarf8bg+FtHlhkMt7B89VSsTSoePMw+ighYX0e5MEV5/4IOVKeAnpCXF1q0qjRvJsHuzdu3Jqv18+WRUezeygetTMVEUVlc8idjtcaF/d+HuTq9fcnOG6F7gA1C+3mMU4Ft5Md37Dhf/AgPj7pU4PBeNhgsF/V6aZQ8aVunp+r0mptX8TEvIcHueBBGXhgBw/s4MGv4MGP4EEReNAAHtjAA1OYB6IqNEwm8MAGHnjBAyd44AIP7oEH3eDBAHjgAw+GwYPvwYNi8OBn8CA7wAPRwHocPOgFD3zgQRt4APFzN3gwihN7gF0G45kbPBgAD7zgQQN48GFimmjQWgEeeMGDSfDgfmCy7xaus0RMQeKlCfCgFzzAPPNhfYlo4LSDB15cnuBEBqPx5rUG9G2qEzyAAe2O3k8eja0UDZpt4IEHPJAIXgziZkreH3aABwiG58Ux8MAFHqQl7BcNir8FD1zgAXKXiqTxCvWgVekZafhrzgd4IBqUW8CDWvBgOLzqsi+cUmQ8cYIH5tjNophGuQk8+A48aAMPesCDcfCgBTxAoeiZfkmINNnCMHhwFTwwru0F5emj4EEjeNABHvSBBw3gQS94YAMPPOBBP3jgBg9qwQP0TVAXGCIPfgAPgjmGYsUnHp3gc4AHJeCBDTzIMSQHZeFhsYAH5eCBRCwNKt78EHiQGuBBQCUZeVngQRN44MENRKAnhJWIE2ksDfAgoIgYu9PBg6/Ag9PggQM8QDtPtoIH+J1D7nS81oK4wuD0t8cqDz4HD5rAA5w5NQvt5vFv4MF18ODrDXuD09858P8D8CADPPgMPDgDHtSAB7XggRU8yIyJD86LGDLZfy7jet43Ah+lAAAAAElFTkSuQmCC') no-repeat 0 0px}
div.rating-cancel a,div.star-rating a{display:block;width:16px;height:100%;background-position:0 0px;border:0}
div.star-rating-on a{background-position:0 -16px!important}
div.star-rating-hover a{background-position:0 -48px}
/* Read Only CSS */
div.star-rating-readonly a{cursor:default !important}
+15 -2
View File
File diff suppressed because one or more lines are too long
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

+2
View File
@@ -1,3 +1,5 @@
@import url("jquery.mobile.icons.min.css");
@import url("IlLievitario.min.css");
@import url("loadingStyle.css");
@import url("base.style.css");
@import url("mobile.style.css") screen;
+1 -1
View File
File diff suppressed because one or more lines are too long
+8 -27
View File
@@ -1,17 +1,14 @@
<!DOCTYPE html>
<html>
<head>
<head>
<title>Il Lievitario</title>
<meta name="google" value="notranslate" />
<meta http-equiv="expires" content="0">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="X-UA-Compatible" content="IE=9">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" >
<link rel="stylesheet" href="css/jquery.mobile.icons.min.<?php echo filemtime('css/jquery.mobile.icons.min.css'); ?>.css">
<link rel="stylesheet" href="css/IlLievitario.min.<?php echo filemtime('css/IlLievitario.min.css'); ?>.css">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.3/jquery.mobile-1.4.3.min.css" >
<link rel="stylesheet" href="css/style.min.<?php echo filemtime('css/style.min.css'); ?>.css">
<link rel="shortcut icon" sizes="196x196" href="https://dl.dropboxusercontent.com/s/l26w7lk0zwnpehf/Icon_Android196.png">
<link rel="apple-touch-icon" href="https://dl.dropboxusercontent.com/s/9cc174ato4hckl5/Icon.png" />
@@ -20,35 +17,19 @@
<link rel="apple-touch-icon" sizes="144x144" href="https://dl.dropboxusercontent.com/s/pj3fk1lgc4cefwx/Icon~ipad%402x.png" />
<meta name="viewport" content="width=device-width, initial-scale=1, minimal-ui"/>
<meta http-equiv="Access-Control-Allow-Origin" content="*"/>
<script type='text/javascript' src="js/libs/ua-parser.min.<?php echo filemtime('js/libs/ua-parser.min.js'); ?>.js"></script>
<script type='text/javascript' src="js/openfb.<?php echo filemtime('js/openfb.js'); ?>.js"></script>
<script type='text/javascript' src="js/opengplus.<?php echo filemtime('js/opengplus.js'); ?>.js"></script>
<script type='text/javascript' src="js/common.min.<?php echo filemtime('js/common.min.js'); ?>.js"></script>
<script type='text/javascript'>
if (openFB && window.location &&
window.location.href.indexOf("access_token") != -1 &&
window.localStorage.getItem("tryLogin") == "fb") {
openFB.oauthCallback(window.location.href);
window.location.href = "#syncView/tokenFound";
}
else if (openGPlus && window.location &&
window.location.href.indexOf("access_token") != -1 &&
window.localStorage.getItem("tryLogin") == "gplus") {
openGPlus.oauthCallback(window.location.href);
window.location.href = "#syncView/tokenFound";
}
<?php echo file_get_contents("js/manifest.js"); ?>
</script>
<!--<script type='text/javascript' src="js/manifest.<?php echo filemtime('js/manifest.js'); ?>.js"></script>-->
<script data-main="js/config" src="js/libs/require.<?php echo filemtime('js/libs/require.js'); ?>.js"></script>
</head>
<body style="background-color: #1d1d1d;">
<script data-main="js/config.<?php echo filemtime('js/config.js'); ?>" src="js/libs/require.<?php echo filemtime('js/libs/require.js'); ?>.js"></script>
</head>
<body style="background-color: #1d1d1d;">
<?php include_once("analyticstracking.php") ?>
<div id="loadingFrm" style="text-align: center;">
<img src="https://dl.dropboxusercontent.com/s/6qrdp9mbi1rb92k/sfondo.png" class="loadingSfondo">
<div class="loadingSfondo">
<div class="loadingText">
<div style="color: #ffffff;"><b>Caricamento...</b></div>
<img src="https://dl.dropboxusercontent.com/s/mw90t9oay2v9jev/loading.gif">
</div>
</div>
</body>
</body>
</html>
+64 -17
View File
@@ -1,33 +1,80 @@
define(['jquery','underscore', 'backbone', 'router', 'classes/profile'],
function($, _, Backbone, Router, Profile) {
var Application={
_retThis: function() {
return this;
},
router: null,
initialize:function(){
define(['jquery', 'underscore', 'backbone', 'router', 'classes/profile', 'classes/cache'], function
($, _, Backbone, Router, Profile, Cache) {
'use strict';
var init = function () {
//create backbone router
this.router=new Router();
var router = new Router();
Backbone.history.start();
Backbone.emulateJSON = true;
var origin = location.protocol + '//' + location.hostname + (location.port ? ':' + location.port : '') + (location.pathname?location.pathname:'');
openFB.init('1466942266882168', origin, window.localStorage);
openGPlus.init('319140243944-qk0lfhgmi8shi4go97r83l69f1k0gdf4.apps.googleusercontent.com', origin, window.localStorage);
hello.init({
facebook: '1466942266882168',
google: '319140243944-qk0lfhgmi8shi4go97r83l69f1k0gdf4.apps.googleusercontent.com'
}, {display: 'page', scope: 'email'});
//console.log("Backbone history start");
// Trigger 'route' event on router instance.
this.router.on('route', function(name, args) {
router.on('route', function (name, args) {
//alert(name);
});
if( Profile.isConnected()) {
Cache.checkCacheFromServer();
if (Profile.isConnected()) {
Profile.loadProfile();
}
hello.on('auth.login', function (auth) {
if (!Profile.isConnected())
{
hello(auth.network).api("me").then(function (json) {
var id = "";
var displayName = "";
var email = "";
var gender = "";
if (auth.network === "google")
{
id = json.id;
displayName = json.displayName;
email = json.email;
gender = json.gender;
}
else if (auth.network === "facebook")
{
id = json.id;
displayName = json.name;
email = json.email;
gender = json.gender;
}
Profile.internalLoadProfile(id, function(retVal){
if(retVal === false)
{
Profile.createProfile(
id,
auth.network,
displayName,
email,
gender,
function () {
window.location.href = "#syncView/tokenFound";
}
);
}
else
window.location.href = "#syncView/tokenFound";
});
});
}
});
$('body').css('background-color', '');
$('#loadingFrm').remove();
}
};
return Application._retThis();
return {
initialize: init
};
});
+66
View File
@@ -0,0 +1,66 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
define(['jquery', 'backbone'],
function ($, Backbone) {
var Cache = {
convertToDate: function (mysql_string)
{
if (typeof mysql_string === 'string')
{
var t = mysql_string.split(/[- :]/);
//when t[3], t[4] and t[5] are missing they defaults to zero
return new Date(t[0], t[1] - 1, t[2], t[3] || 0, t[4] || 0, t[5] || 0);
}
return null;
},
prefix: "cacheItem",
get: function (name) {
var item = window.localStorage.getItem(this.prefix + name);
if(item === null)
return null;
item = JSON.parse(item);
return item.storeValue;
},
set: function (name, value) {
window.localStorage.setItem(this.prefix + name, JSON.stringify({setTime: new Date(), storeValue: value}));
},
isExpired: function (name, timeDiff) {
var item = window.localStorage.getItem(this.prefix + name);
if(item === null)
return true;
item = JSON.parse(item);
var time = item.setTime;
if(timeDiff.getTime() > Date.parse(time))
return true;
return false;
},
checkCacheFromServer: function ()
{
var self = this;
$.ajax({
url: myManifest.Settings.DefaultURL + "/api/profile/statusCache",
//dataType: "json",
type: 'GET',
success: function (msg) {
$(msg).each(function (index, element) {
var elemName = "Category" + element.ID_CATEGORIA;
if (self.isExpired(elemName, self.convertToDate(element.LastDateModified)))
{
self.set(elemName, null);
}
});
}
});
}
};
return Cache;
});
+57
View File
@@ -0,0 +1,57 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
define(['jquery', 'underscore', 'backbone', 'classes/cache'],
function ($, _, Backbone, Cache) {
var CachedCollection = Backbone.Collection.extend({
cacheName: null,
fetch: function (options) {
options = _.defaults(options || {}, {parse: true});
var deferred = new $.Deferred(),
self = this;
var cachedItem = Cache.get(this.cacheName);
if (cachedItem !== null)
{
window.setTimeout(function () {
self[options.reset ? 'reset' : 'set'](false, options);
//deferred.resolve(cachedItem);
self.trigger('sync', self, false, options);
deferred.notify(self);
self.push(cachedItem);
if (_.isFunction(options.success)) {
options.success(self, false, options);
}
deferred.resolve(cachedItem);
return deferred;
}, 0);
}
else
{
// Delegate to the actual fetch method and store the attributes in the cache
var jqXHR = Backbone.Collection.prototype.fetch.apply(this, arguments);
// resolve the returned promise when the AJAX call completes
jqXHR.done(_.bind(deferred.resolve, this, this))
// Set the new data in the cache
.done(_.bind(
function (a, b, c) {
Cache.set(self.cacheName, a);
}
, null, this, options))
// Reject the promise on fail
.fail(_.bind(deferred.reject, this, this));
deferred.abort = jqXHR.abort;
// return a promise which provides the same methods as a jqXHR object
return deferred;
}
}
});
return CachedCollection;
});
+39 -62
View File
@@ -2,48 +2,36 @@
* Created by Denis on 19/06/2014.
*/
define(['jquery', 'backbone'],
function($, Backbone){
function ($, Backbone) {
var Profile = {
_loadme:function(){
if(this.isConnected()) {
_loadme: function () {
if (this.isConnected()) {
if (this.data.type == null)
this.loadProfile();
}
else
{
this.data.risRic = window.localStorage.getItem("risRic");
this.data.tema = window.localStorage.getItem("tema");
}
return this;
},
dataloaded: false,
data: {
"name": null,
"email": null,
"gender":null,
"gender": null,
"tema": 'b',
"risRic": '10',
"type": null,
"lastNumRicette": null
"type": null
},
isConnected: function(){
isConnected: function () {
return this.getKeySave() != "null" &&
this.getKeySave() != null &&
this.getKeySave() != "undefined" &&
this.getKeySave() != undefined;
},
loadProfile:function(successFn) {
loadProfile: function (successFn) {
this.internalLoadProfile(this.getKeySave(), successFn);
},
internalLoadProfile:function(keyStore, successFn){
if(this.dataloaded)
internalLoadProfile: function (keyStore, successFn) {
if (this.dataloaded)
return;
//var keyStore = this.getKeySave();
var self = this;
@@ -51,12 +39,10 @@ define(['jquery', 'backbone'],
var resp = $.ajax({
url: myManifest.Settings.DefaultURL + "/api/profile/" + keyStore,
//dataType: "json",
async: false,
type: 'GET'
}).responseText;
var response = JSON.parse(resp);
if(response.length > 0)
//async: false,
type: 'GET',
success: function (response) {
if (response.length > 0)
{
self.dataloaded = true;
self.setKeySave(keyStore);
@@ -65,35 +51,30 @@ define(['jquery', 'backbone'],
self.data.tema = response[0].TemaUI;
self.data.risRic = response[0].RisultatiRicerca;
self.data.type = response[0].TipoAccesso;
self.data.lastNumRicette = response[0].NumRicette;
retBool = true;
}
if(successFn)
if (successFn)
successFn(retBool);
}
});
},
getLastNumRicette: function(){
return this.data.lastNumRicette;
},
getKeySave: function(){
getKeySave: function () {
return window.localStorage.getItem("KeySave");
},
setKeySave: function(val){
setKeySave: function (val) {
window.localStorage.setItem("KeySave", val);
},
isGPlusConnected: function(){
if(this.data.type == "gplus")
isGPlusConnected: function () {
if (this.data.type === "google")
return true;
return false;
},
isFbConnected: function(){
if(this.data.type == "fb")
isFbConnected: function () {
if (this.data.type === "facebook")
return true;
return false;
},
addRicettaBloccoNote: function(ricetta_id, successFn) {
addRicettaBloccoNote: function (ricetta_id, successFn) {
var sendobj = {
"ricetta_id": ricetta_id,
"keyStore": this.getKeySave()
@@ -103,39 +84,36 @@ define(['jquery', 'backbone'],
url: myManifest.Settings.DefaultURL + "/api/profile/ricetta",
//dataType: "json",
type: 'POST',
data: { dataPair: JSON.stringify(sendobj) },
success: function(msg){
if(successFn)
data: {dataPair: JSON.stringify(sendobj)},
success: function (msg) {
if (successFn)
successFn(msg);
}
});
},
removeRicettaBloccoNote: function(ricetta_id, successFn) {
removeRicettaBloccoNote: function (ricetta_id, successFn) {
$.ajax({
url: myManifest.Settings.DefaultURL + "/api/profile/" + this.getKeySave() + "/ricetta/" + ricetta_id,
//dataType: "json",
type: 'DELETE',
success: function(msg){
if(successFn)
success: function (msg) {
if (successFn)
successFn(msg);
}
});
},
existRicettaBloccoNote: function(ricettaID, successFn){
existRicettaBloccoNote: function (ricettaID, successFn) {
$.ajax({
url: myManifest.Settings.DefaultURL + "/api/profile/" + this.getKeySave() + "/ricetta/" + ricettaID,
//dataType: "json",
type: 'GET',
success: function(msg){
if(successFn)
success: function (msg) {
if (successFn)
successFn(msg);
}
});
},
createProfile: function(keyStore, typeProfile, name, email,gender, successFn) {
createProfile: function (keyStore, typeProfile, name, email, gender, successFn) {
this.data.type = typeProfile;
this.data.name = name;
this.data.email = email;
@@ -159,16 +137,15 @@ define(['jquery', 'backbone'],
url: myManifest.Settings.DefaultURL + "/api/profile",
//dataType: "json",
type: 'POST',
data: { dataPair: JSON.stringify(sendobj) },
success: function(msg){
if(successFn)
data: {dataPair: JSON.stringify(sendobj)},
success: function (msg) {
if (successFn)
successFn(msg);
}
});
},
updateProfile: function(successFn) {
if(this.isConnected()) {
updateProfile: function (successFn) {
if (this.isConnected()) {
var sendobj = {
"keyStore": this.getKeySave(),
"tema": this.data.tema,
@@ -180,7 +157,7 @@ define(['jquery', 'backbone'],
url: myManifest.Settings.DefaultURL + "/api/profile",
//dataType: "json",
type: 'PUT',
data: { dataPair: JSON.stringify(sendobj) },
data: {dataPair: JSON.stringify(sendobj)},
success: function (msg) {
if (successFn)
successFn(msg);
-50
View File
@@ -1,50 +0,0 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
/**
* Created by Denis on 19/06/2014.
*/
define(['jquery', 'backbone','libs/fastclick', 'jqm', 'jQueryPlugins'],
function($, Backbone, FastClick){
var Utility = {
retMe: function(){
return this;
},
changePage: function(view){
//append to dom
$('body').append(view.$el);
$.mobile.pageContainer.pagecontainer ("change", $(view.el), {changeHash:false});
FastClick.attach(document.body);
$(":jqmData(role='page'):last").on("pageshow", function (event) {
if (view.onShowed !== null)
view.onShowed();
});
$('input[type=radio].star').rating({
callback: function(value, link){
var tip = $('#hover-test');
if(value === undefined)
{
$('#hover-test').html("Nessuna" || 'value: ' );
}
else
$('#hover-test').html(link.title || 'value: ' + value);
},
focus: function(value, link){
var tip = $('#hover-test');
tip[0].data = tip[0].data || tip.html();
tip.html(link.title || 'value: ' + value);
}
});
}
};
return Utility.retMe();
});
+3
View File
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,6 +1,6 @@
var pathJquery = "http://ajax.googleapis.com/ajax/libs/jquery/" + myManifest.Settings.JQueryVersion + "/jquery.min";
var pathJqueryMobile = "http://code.jquery.com/mobile/" + myManifest.Settings.JQueryMobileVersion + "/jquery.mobile-" + myManifest.Settings.JQueryMobileVersion + ".min";
// "http://ajax.googleapis.com/ajax/libs/jquerymobile/"+ myManifest.Settings.JQueryMobileVersion + "/jquery.mobile.min";
var pathJqueryMobile = "http://code.jquery.com/mobile/"+ myManifest.Settings.JQueryMobileVersion + "/jquery.mobile-"+ myManifest.Settings.JQueryMobileVersion + ".min";
//var pathJqueryMobile = "http://ajax.googleapis.com/ajax/libs/jquerymobile/"+ myManifest.Settings.JQueryMobileVersion + "/jquery.mobile.min";
requirejs.config({
baseUrl: 'js',
+2 -3
View File
@@ -1,5 +1,5 @@
define(['jquery', 'underscore', 'backbone','text!controls/header/headerTemplate.html', 'classes/profile'],
function($, _, Backbone, headerTemplate, Profile){
define(['jquery', 'underscore', 'backbone','text!controls/header/headerTemplate.html'],
function($, _, Backbone, headerTemplate){
var header = Backbone.View.extend({
@@ -22,7 +22,6 @@ define(['jquery', 'underscore', 'backbone','text!controls/header/headerTemplate.
//append the compiled template into view div container
this.$el.append(this.template( { "title":this.title } ));
this.$el.find('#notifyBtn').closest('.ui-btn').hide();
//return to enable chained calls
return this;
}
+1 -2
View File
@@ -1,3 +1,2 @@
<a id="homeBtn" href="#homeView" class="nav-glyphish-example ui-btn ui-icon-myHome ui-btn-icon-notext">Home</a>
<a href="#homeView" class="nav-glyphish-example ui-btn ui-icon-myHome ui-btn-icon-notext">Home</a>
<h4><%= title %></h4>
<a href="#newsView" id="notifyBtn" class="ui-btn ui-icon-withoutCorner ui-btn-icon-notext">News<div class="circle">3</div></a>
+1 -1
View File
@@ -7,7 +7,7 @@ define(['jquery'], function ($){
$.mobile.pushStateEnabled = false;
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
//$.mobile.defaultPageTransition = 'slidefade';
$.mobile.defaultPageTransition = 'flip';
// Remove page from DOM when it's being replaced
$(document).on("pagecontainerhide", function (event, ui) {
$("div[data-role='page']:not(.ui-page-active)").remove();
+27 -5
View File
@@ -4,7 +4,6 @@
/**
* @preserve FastClick: polyfill to remove click delays on browsers with touch UIs.
*
* @version 1.0.3
* @codingstandard ftlabs-jsv2
* @copyright The Financial Times Limited [All Rights Reserved]
* @license MIT License (see LICENSE.txt)
@@ -96,6 +95,13 @@
*/
this.tapDelay = options.tapDelay || 200;
/**
* The maximum time for a tap
*
* @type number
*/
this.tapTimeout = options.tapTimeout || 700;
if (FastClick.notNeeded(layer)) {
return;
}
@@ -167,13 +173,19 @@
}
}
/**
* Windows Phone 8.1 fakes user agent string to look like Android and iPhone.
*
* @type boolean
*/
var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0;
/**
* Android requires exceptions.
*
* @type boolean
*/
var deviceIsAndroid = navigator.userAgent.indexOf('Android') > 0;
var deviceIsAndroid = navigator.userAgent.indexOf('Android') > 0 && !deviceIsWindowsPhone;
/**
@@ -181,7 +193,7 @@
*
* @type boolean
*/
var deviceIsIOS = /iP(ad|hone|od)/.test(navigator.userAgent);
var deviceIsIOS = /iP(ad|hone|od)/.test(navigator.userAgent) && !deviceIsWindowsPhone;
/**
@@ -193,11 +205,11 @@
/**
* iOS 6.0(+?) requires the target element to be manually derived
* iOS 6.0-7.* requires the target element to be manually derived
*
* @type boolean
*/
var deviceIsIOSWithBadTarget = deviceIsIOS && (/OS ([6-9]|\d{2})_\d/).test(navigator.userAgent);
var deviceIsIOSWithBadTarget = deviceIsIOS && (/OS [6-7]_\d/).test(navigator.userAgent);
/**
* BlackBerry requires exceptions.
@@ -519,6 +531,10 @@
return true;
}
if ((event.timeStamp - this.trackingClickStart) > this.tapTimeout) {
return true;
}
// Reset to prevent wrong click cancel on input (issue #156).
this.cancelNextClick = false;
@@ -776,6 +792,12 @@
return true;
}
// IE11: prefixed -ms-touch-action is no longer supported and it's recomended to use non-prefixed version
// http://msdn.microsoft.com/en-us/library/windows/apps/Hh767313.aspx
if (layer.style.touchAction === 'none') {
return true;
}
return false;
};
+2
View File
File diff suppressed because one or more lines are too long
+1 -2
View File
@@ -1,8 +1,7 @@
//1. load app.js,
//2. configure jquery mobile to prevent default JQM ajax navigation
//3. bootstrapping application
define(["app", "jqm", "jqm-config", 'jQueryPlugins'],
function( app ){
define(["app", "jqm", "jqm-config", 'jQueryPlugins'], function( app ){
if(myManifest.Agent.browser.name == "IE Mobile" && myManifest.Agent.browser.version <= 9 ) {
window.location.href = "http://old.gruppolapastamadre.it";
}
+6 -6
View File
@@ -1,20 +1,20 @@
var myManifest = {
Debug: false,
Name: "Il Lievitario",
Version: "3.0.0.0",
Version: "2.6.0",
Author: "Denis Ironi",
Settings: {
DefaultURL: "http://localhost:8081/Service",
//DefaultURL: "http://dev.gruppolapastamadre.it/Service",
//DefaultURL: "http://localhost:8081/Service_Manut",
DefaultURL: "http://app.gruppolapastamadre.it/Service",
JQueryVersion: "1.11.1",
JQueryMobileVersion: "1.4.5",
Device: {
JQueryMobileVersion: "1.4.3",
Device:{
Width: (window.innerWidth > 0) ? window.innerWidth : screen.width,
Height: (window.innerHeight > 0) ? window.innerHeight : screen.height
}
},
Agent: (new UAParser()).getResult(),
getUrlArg: function() {
getUrlArg: function(){
return (this.Debug ? this.Version + "." + (Math.random() * 1000) : this.Version);
}
};
+7 -8
View File
@@ -1,17 +1,16 @@
define(['app', 'jquery', 'underscore', 'backbone', 'model/category/categoryModel'],
function (app, $, _, Backbone, Category){
var Categories=Backbone.Collection.extend({
define(['app', 'jquery', 'underscore', 'backbone', 'model/category/categoryModel', 'classes/cachedCollection'],
function (app, $, _, Backbone, Category, CachedCollection) {
var Categories = CachedCollection.extend({
cacheName: "Category0",
// Book is the model of the collection
model:Category,
url: function() {
model: Category,
url: function () {
return myManifest.Settings.DefaultURL + "/api/categories";
}
});
return Categories;
});
});
@@ -1,17 +1,18 @@
define(['app', 'jquery', 'underscore', 'backbone', 'model/categoryItem/categoryItemModel'],
function (app, $, _, Backbone, Category){
define(['app', 'jquery', 'underscore', 'backbone', 'model/categoryItem/categoryItemModel', 'classes/cachedCollection'],
function (app, $, _, Backbone, Category, CachedCollection){
var CategoryItems=Backbone.Collection.extend({
var CategoryItems=CachedCollection.extend({
categoryId: null,
initialize: function (options) {
this.categoryId = options.categoryId;
this.cacheName = "Category" + this.categoryId;
},
// Book is the model of the collection
model:Category,
url: function() {
return myManifest.Settings.DefaultURL + "/api/ricette/" + this.categoryId;
return myManifest.Settings.DefaultURL + "/api/categoryitems/" + this.categoryId;
}
});
+2 -2
View File
@@ -1,5 +1,5 @@
define(['jquery', 'underscore', 'backbone'],
function($, _, Backbone) {
function ($, _, Backbone){
var CategoryItem = Backbone.Model.extend({
//default attributes
@@ -14,5 +14,5 @@ define(['jquery', 'underscore', 'backbone'],
});
return CategoryItem;
});
});
+18 -5
View File
@@ -1,8 +1,11 @@
define(['app', 'jquery', 'underscore', 'backbone', 'model/categoryItem/categoryItemModel'],
function (app, $, _, Backbone, Category){
define(['app', 'jquery', 'underscore', 'backbone', 'model/categoryItem/searchItemModel'],
function (app, $, _, Backbone, SearchItem){
var FoundItems=Backbone.Collection.extend({
dataFilter: null,
numItems: null,
indexItems: null,
totalRecords: 0,
initialize: function (options) {
this.dataFilter = {
titolo: options.titolo,
@@ -10,14 +13,24 @@ define(['app', 'jquery', 'underscore', 'backbone', 'model/categoryItem/categoryI
categoryId: options.categoryId
};
this.numItems = options.nResult;
this.indexItems = options.indexItems;
},
parse: function(data){
this.totalRecords = data["0"].TotalRecords;
return data.records;
},
// Book is the model of the collection
model:Category,
model:SearchItem,
getTotalRecords: function(){
return this.totalRecords;
},
url: function() {
var u = myManifest.Settings.DefaultURL + "/api/ricette/search/" + this.numItems +
var u = myManifest.Settings.DefaultURL + "/api/categoryitems/search/" +
this.numItems +
"/" + this.indexItems +
"/" + this.dataFilter.categoryId +
"/" + this.dataFilter.difficolta;
if(this.dataFilter.titolo !== null)
@@ -1,7 +1,7 @@
define(['jquery', 'underscore', 'backbone'],
function($, _, Backbone) {
function ($, _, Backbone){
var LastRicette = Backbone.Model.extend({
var SearchItem = Backbone.Model.extend({
//default attributes
defaults: {
ricetta_id: "",
@@ -9,10 +9,10 @@ define(['jquery', 'underscore', 'backbone'],
autore: '',
valutazione: 0,
difficolta: 0,
categoria_name: ''
categoria_name: 0
}
});
return LastRicette;
});
return SearchItem;
});
@@ -1,21 +0,0 @@
define(['app', 'jquery', 'underscore', 'backbone', 'model/lastRicette/lastRicetteModel'],
function (app, $, _, Backbone, LastRicette){
var lastRicette=Backbone.Collection.extend({
profileID: null,
initialize: function (options) {
this.profileID = options.profileID;
},
// Book is the model of the collection
model:LastRicette,
url: function() {
return myManifest.Settings.DefaultURL + "/api/ricette/lastinserted/" + this.profileID;
}
});
return lastRicette;
});
+3 -3
View File
@@ -1,5 +1,5 @@
define(['jquery', 'underscore', 'backbone','text!modules/about/aboutViewTemplate.html', 'modules/base/baseView'],
function($, _, Backbone, aboutViewTemplate, BaseView){
define(['jquery', 'underscore', 'backbone','text!modules/about/aboutViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
function($, _, Backbone, aboutViewTemplate, BaseView, Profile){
var AboutView = BaseView.extend({
@@ -18,7 +18,7 @@ function($, _, Backbone, aboutViewTemplate, BaseView){
//$el is cached jQuery object for the view's element.
//append the compiled template into view div container
this.$el.append(this.header.$el);
this.$el.append(this.template( { app: myManifest }));
this.$el.append(this.template( { app: myManifest, profile: Profile }));
this.$el.append(this.footer.$el);
this.$el.find("#infoBtn").addClass("ui-btn-active");
//$("#homeBtn").addClass("ui-btn-active");
+1
View File
@@ -7,6 +7,7 @@
<b>Sviluppatore:</b> <%= app.Author %><br><br>
<br><b>Dettagli Sviluppo: </b><br>S.O.:<%= app.Agent.os.name %><br>Versione: <%= app.Agent.os.version %><br><br>
<b>Librerie Usate: </b><br>JQuery:<%= app.Settings.JQueryVersion %><br>JQueryMobile: <%= app.Settings.JQueryMobileVersion %><br>
<div class="selectable"><b>Key Sync: </b><%= profile.getKeySave() %><br></div>
<br><br>
<b>Ringraziamenti a</b>
<br><br>
+25 -10
View File
@@ -1,38 +1,53 @@
define(['jquery', 'underscore', 'backbone', 'text!modules/category/categoryViewTemplate.html', 'text!modules/category/categoryItemTemplate.html', 'modules/base/baseView'],
function($, _, Backbone, categoryViewTemplate, categoryItemTemplate, BaseView) {
function ($, _, Backbone, categoryViewTemplate, categoryItemTemplate, BaseView) {
var CategoryView = BaseView.extend({
collection: null,
categoryName: null,
//initialize template
template: _.template(categoryViewTemplate),
itemtemplate: _.template(categoryItemTemplate),
initialize: function(options) {
itemtemplate: _.template(categoryItemTemplate, {variable: 'item'}),
initialize: function (options) {
var self = this;
CategoryView.__super__.initialize.call(this);
this.collection = options.collection;
this.categoryName = options.categoryName;
this.collection.fetch({
success: function(data, textStatus, jqXHR) {
success: function (data, textStatus, jqXHR) {
self.renderItem();
}
//success: function(){ self.renderItem(); }
});
},
renderItem: function() {
renderItem: function () {
var $ul = $('#allRicette');
var self = this;
var html = "";
_.each(this.collection.toJSON(), function(d) {
html += self.itemtemplate(d);
});
//var items = this.itemtemplate({data: this.collection.toJSON()});
var items = this.itemtemplate({data: this.collection.toJSON()});
$ul.html(items);
$ul.html(html);
$ul.listview("refresh");
$ul.trigger("updatelayout");
$ul.find('input[type=radio].star').rating({
callback: function (value, link) {
var tip = $('#hover-test');
if (value === undefined)
{
$('#hover-test').html("Nessuna" || 'value: ');
}
else
$('#hover-test').html(link.title || 'value: ' + value);
}
});
$.mobile.loading('hide');
//$( '[data-alpha="true"]' ).alphascroll();
},
//render the content into div of view
render: function() {
render: function () {
//this.header.title = "pippo";
CategoryView.__super__.render.call(this);
//this.el is the root element of Backbone.View. By default, it is a div.
+14 -6
View File
@@ -1,6 +1,14 @@
<% if(data.length == 0){ %>
<h1>Nessuna ricetta trovata</h1>
<%} else { for (var i = 0; i < data.length; i++) { %>
<% var item = data[i]; %>
<li><a href="#ricetta/<%= item.ricetta_id%>" class="ui-btn ui-btn-icon-right ui-icon-carat-r"><div class='ricettaTitolo'><%= unescape(item.titolo) %></div><div class='ricettaAutore'><%= unescape(item.autore) %></div></a></li>
<% }} %>
<li><a href="#ricetta/<%= item.ricetta_id%>" class="ui-btn ui-btn-icon-right ui-icon-carat-r">
<div class='ricettaTitolo'><%= unescape(item.titolo) %></div>
<div class='ricettaAutore'><%= unescape(item.autore) %></div>
<br><div class='ricettaAutore'>Diff.:&nbsp;&nbsp;</div>
<div id="valutazione" style="">
<form id="difficoltaFrm" data-role="none">
<input name="difficolta" <% if(item.difficolta==="1"){%>checked="checked"<%}%> type="radio" data-role="none" value="1" disabled="disabled" title="Molto Semplice" class="star"/>
<input name="difficolta" <% if(item.difficolta==="2"){%>checked="checked"<%}%> type="radio" data-role="none" value="2" disabled="disabled" title="Semplice" class="star"/>
<input name="difficolta" <% if(item.difficolta==="3"){%>checked="checked"<%}%> type="radio" data-role="none" value="3" disabled="disabled" title="Normale" class="star"/>
<input name="difficolta" <% if(item.difficolta==="4"){%>checked="checked"<%}%> type="radio" data-role="none" value="4" disabled="disabled" title="Difficile" class="star"/>
<input name="difficolta" <% if(item.difficolta==="5"){%>checked="checked"<%}%> type="radio" data-role="none" value="5" disabled="disabled" title="Molto Difficile" class="star"/>
</form>
</div>
</a></li>
@@ -1,5 +1,5 @@
<div id="categoryListContent" data-role="content">
<h1>Indice Ricette<br><%= categoryName %></h1>
<h1>Indice <%= categoryName %></h1>
<ul id="allRicette" data-role="listview" data-autodividers="true" data-alpha="true" data-inset="true">
</ul>
</div>
+498
View File
@@ -0,0 +1,498 @@
define(['jquery', 'underscore', 'backbone',
'text!modules/converter/converterViewTemplate.html',
'modules/base/baseView'],
function($, _, Backbone, converterViewTemplate, BaseView){
var ConverterView = BaseView.extend({
collection: null,
//initialize template
template:_.template(converterViewTemplate),
initialize: function (options) {
var self = this;
ConverterView.__super__.initialize.call(this);
//this.header.title = "pippo";
},
events: {
"click #calculate": "performCalcBtn",
"change #typeLvStart": "typeLvStartChanged"
},
performCalcBtn: function (e) {
e.preventDefault();
//this.calculateConvert();
this.$el.find("#inputForm").submit();
},
typeLvStartChanged: function(e){
e.preventDefault();
if(this.$el.find("#typeLvStart").val() == "ldbf" ||
this.$el.find("#typeLvStart").val() == "ldbs"){
}
else{
}
},
calculateConvert: function(){
var ret ="";
if(this.$el.find("#typeLvStart").val() == "ldbf" ||
this.$el.find("#typeLvStart").val() == "ldbs"){
this.$el.find("#qtaLvlAlt").val(this.impostaPmConsigliata());
ret += this.convertiLDB();
}
else{
this.$el.find("#qtaLvlAlt").val(this.impostaPmConsigliata());
ret += this.convertiPM();
}
this.$el.find('#result')[0].innerHTML = ret.replace(/<br>/g, "<br><br>");
this.$el.find('#popupConvertResult').popup("open");
},
convertiPM: function(){
// dichiaro e inizializzo la variabile che conterrà il risultato dell'elaborazione
var risultato = "";
// imposto come fissa al 50% l'idratazione della PM solida
var VidratazionePmSolida = 50;
// ottengo i valori scelti dall'utente
var vTipoPmPartenza = this.$el.find("#typeLvStart").val();
var vTipoPmFinale = "";
var vIdratazionePmFinale = 0;
var vIdratazionePmPartenza = 50; //parseInt(this.$el.find("#qtaLiquidi").val());
if(this.$el.find("#typeLvStart").val() == "lic100" )
vIdratazionePmPartenza = 100;
else if(this.$el.find("#typeLvStart").val() == "lic130" )
vIdratazionePmPartenza = 130;
var vQuantitaPmPartenza = parseInt(this.$el.find("#qtaLvStart").val());
var vQuantitaFarinaPartenza = parseInt(this.$el.find("#qtaFarina").val());
var vQuantitaAcquaPartenza = parseInt(this.$el.find("#qtaLiquidi").val());
var vQuantitaPmFinale = parseInt(this.$el.find("#qtaLvlAlt").val());
// Imposto di il tipo di PM finale in funzione di quello scelto come partenza
// e visualizzo o nascondo di conseguenza la select per l'idratazione
switch (this.$el.find("#typeLvDest").val()){
case "pm":
vTipoPmFinale = "SOLIDA";
vIdratazionePmFinale = 50;
break;
case "lic100":
vTipoPmFinale = "LIQUIDA";
vIdratazionePmFinale = 100;
break;
case "lic130":
vTipoPmFinale = "LIQUIDA";
vIdratazionePmFinale = 130;
break;
default:
vTipoPmFinale = "";
}
// elaborazione per PM finale SOLIDA
if (vTipoPmFinale == "SOLIDA") {
// quanta acqua c'è nella PM liquida di partenza?
var qAcquaPmPartenza = (vQuantitaPmPartenza / (100 + vIdratazionePmPartenza)) * vIdratazionePmPartenza;
qAcquaPmPartenza = qAcquaPmPartenza.toFixed(0);
// quanta farina c'è nella PM liquida di partenza?
var qFarinaPmPartenza = vQuantitaPmPartenza - qAcquaPmPartenza;
// quanta acqua c'è nella PM finale?
var qAcquaPmFinale = (vQuantitaPmFinale / (100 + VidratazionePmSolida)) * VidratazionePmSolida
qAcquaPmFinale = qAcquaPmFinale.toFixed(0);
// quanta farina c'è nella PM finale?
var qFarinaPmFinale = vQuantitaPmFinale - qAcquaPmFinale;
// come devo modificare l'acqua prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra l'acqua della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaAcquaPM = qAcquaPmPartenza - qAcquaPmFinale;
// ...e la aggiungo/tolgo all'acqua dell'impasto della ricetta originale
var qAcquaImpastoFinale = vQuantitaAcquaPartenza;
// se il delta acqua è negativo lo tolgo
// altrimenti lo aggiungo
if (deltaAcquaPM < 0) {
qAcquaImpastoFinale -= deltaAcquaPM;
}
else {
qAcquaImpastoFinale += deltaAcquaPM;
}
// come devo modificare la farina prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra la farina della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaFarinaPM = qFarinaPmPartenza - qFarinaPmFinale;
// ...e la aggiungo/tolgo alla farina dell'impasto della ricetta originale
var qFarinaImpastoFinale = vQuantitaFarinaPartenza;
// se il delta farina è negativo lo aggiungo
// altrimenti lo tolgo
if (deltaFarinaPM < 0) {
qFarinaImpastoFinale += deltaFarinaPM;
}
else {
qFarinaImpastoFinale -= deltaFarinaPM;
}
risultato += "PM solida gr " + vQuantitaPmFinale.toString();
risultato += "<br>";
risultato += "Farina gr " + qFarinaImpastoFinale.toString();
risultato += "<br>";
risultato += "Acqua gr " + qAcquaImpastoFinale.toString();
}
// elaborazione per PM finale LIQUIDA
if (vTipoPmFinale == "LIQUIDA"){
// CASO PM LIQUIDA FINALE AL 100%
// quanta acqua c'è nella PM solida iniziale?
var qAcquaPmPartenza = (vQuantitaPmPartenza / (100 + VidratazionePmSolida)) * VidratazionePmSolida
qAcquaPmPartenza = qAcquaPmPartenza.toFixed(0);
// quanta farina c'è nella PM solida iniziale?
var qFarinaPmPartenza = vQuantitaPmPartenza - qAcquaPmPartenza;
// quanta acqua c'è nella PM finale?
var qAcquaPmFinale = (vQuantitaPmFinale / (100 + 100)) * 100;
qAcquaPmFinale = qAcquaPmFinale.toFixed(0);
// quanta farina c'è nella PM finale?
var qFarinaPmFinale = vQuantitaPmFinale - qAcquaPmFinale;
// come devo modificare l'acqua prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra l'acqua della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaAcquaPM = qAcquaPmPartenza - qAcquaPmFinale;
// ...e la aggiungo/tolgo all'acqua dell'impasto della ricetta originale
var qAcquaImpastoFinale = vQuantitaAcquaPartenza;
// se il delta acqua è negativo lo aggiungo
// altrimenti lo tolgo
if (deltaAcquaPM < 0){
qAcquaImpastoFinale += deltaAcquaPM;
}
else{
qAcquaImpastoFinale -= deltaAcquaPM;
}
// come devo modificare la farina prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra la farina della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaFarinaPM = qFarinaPmPartenza - qFarinaPmFinale;
// ...e la aggiungo/tolgo alla farina dell'impasto della ricetta originale
var qFarinaImpastoFinale = vQuantitaFarinaPartenza;
// se il delta farina è negativo lo aggiungo
// altrimenti lo tolgo
if (deltaFarinaPM < 0){
qFarinaImpastoFinale -= deltaFarinaPM;
}
else{
qFarinaImpastoFinale += deltaFarinaPM;
}
if(vIdratazionePmFinale == 100) {
risultato += "PM liquida 100% gr " + vQuantitaPmFinale.toString();
risultato += "<br>";
risultato += "Farina gr " + qFarinaImpastoFinale.toString();
risultato += "<br>";
risultato += "Acqua gr " + qAcquaImpastoFinale.toString();
}
else {
// CASO PM LIQUIDA FINALE AL 130%
// quanta acqua c'è nella PM solida iniziale?
var qAcquaPmPartenza = (vQuantitaPmPartenza / (100 + VidratazionePmSolida)) * VidratazionePmSolida
qAcquaPmPartenza = qAcquaPmPartenza.toFixed(0);
// quanta farina c'è nella PM solida iniziale?
var qFarinaPmPartenza = vQuantitaPmPartenza - qAcquaPmPartenza;
// quanta acqua c'è nella PM finale?
var qAcquaPmFinale = (vQuantitaPmFinale / (100 + 130)) * 130;
qAcquaPmFinale = qAcquaPmFinale.toFixed(0);
// quanta farina c'è nella PM finale?
var qFarinaPmFinale = vQuantitaPmFinale - qAcquaPmFinale;
// come devo modificare l'acqua prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra l'acqua della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaAcquaPM = qAcquaPmPartenza - qAcquaPmFinale;
// ...e la aggiungo/tolgo all'acqua dell'impasto della ricetta originale
var qAcquaImpastoFinale = vQuantitaAcquaPartenza;
// se il delta acqua è negativo lo aggiungo
// altrimenti lo tolgo
if (deltaAcquaPM < 0) {
qAcquaImpastoFinale += deltaAcquaPM;
}
else {
qAcquaImpastoFinale -= deltaAcquaPM;
}
// come devo modificare la farina prevista dalla ricetta originale?
// devo aggiungere/togliere la differenza tra la farina della PM di partenza e quella finale
// quindi calcolo tale differenza...
var deltaFarinaPM = qFarinaPmPartenza - qFarinaPmFinale;
// ...e la aggiungo/tolgo alla farina dell'impasto della ricetta originale
var qFarinaImpastoFinale = vQuantitaFarinaPartenza;
// se il delta farina è negativo lo aggiungo
// altrimenti lo tolgo
if (deltaFarinaPM < 0) {
qFarinaImpastoFinale -= deltaFarinaPM;
}
else {
qFarinaImpastoFinale += deltaFarinaPM;
}
risultato += "PM liquida 130% gr " + vQuantitaPmFinale.toString();
risultato += "<br>";
risultato += "Farina gr " + qFarinaImpastoFinale.toString();
risultato += "<br>";
risultato += "Acqua gr " + qAcquaImpastoFinale.toString();
}
}
return risultato;
},
convertiLDB: function(){
// dichiaro e inizializzo la variabile che conterrà il risultato dell'elaborazione
var risultato = "";
// dichiaro e inizializzo la variabile che conterrà la quantità di farina da usare
var vQuantitaFarinaDaUsare = 0;
// dichiaro e inizializzo la variabile che conterrà la quantità di acqua da usare
var vQuantitaAcquaDaUsare = 0;
// dichiaro e inizializzo la variabile per la quantità di farina presente nella PM da usare
var qFarinaPmDaUsare = 0;
// dichiaro e inizializzo la variabile per la quantità di acqua presente nella PM da usare
var qAcquaPmDaUsare = 0;
// ricavo la quantità di LDB della ricetta originale
var vQuantitaLdbPartenza = parseInt(this.$el.find("#qtaLvStart").val());
// ricavo l'idratazione della PM da usare
var vIdratazionePmFinale = 50;
if(this.$el.find("#typeLvDest").val() == "lic100" )
vIdratazionePmFinale = 100;
else if(this.$el.find("#typeLvDest").val() == "lic130" )
vIdratazionePmFinale = 130;
// ricavo la quantità di farina della ricetta originale
var vQuantitaFarinaPartenza = parseInt(this.$el.find("#qtaFarina").val());
// ricavo la quantità di acqua della ricetta originale
var vQuantitaAcquaPartenza = parseInt(this.$el.find("#qtaLiquidi").val());
// ricavo la quantità di PM da usare
var vQuantitaPmDaUsare = parseInt(this.$el.find("#qtaLvlAlt").val());
// quanta acqua c'è nella PM da usare?
var qAcquaPmDaUsare = (vQuantitaPmDaUsare / (100 + vIdratazionePmFinale)) * vIdratazionePmFinale;
qAcquaPmDaUsare = qAcquaPmDaUsare.toFixed(0);
// ricavo la quantità di farina presente nella PM da usare
qFarinaPmDaUsare = vQuantitaPmDaUsare - qAcquaPmDaUsare;
// diminuisco la farina della ricetta originale di una quantità pari a quella presente nella PM da usare
vQuantitaFarinaDaUsare = vQuantitaFarinaPartenza - qFarinaPmDaUsare;
// diminuisco l'acqua della ricetta originale di una quantità pari a quella presente nella PM da usare
vQuantitaAcquaDaUsare = vQuantitaAcquaPartenza - qAcquaPmDaUsare;
// costruisco la stringa del risultato
risultato += "PM gr " + vQuantitaPmDaUsare.toString();
risultato += "<br>";
risultato += "Farina gr " + vQuantitaFarinaDaUsare.toString();
risultato += "<br>";
risultato += "Acqua gr " + vQuantitaAcquaDaUsare.toString();
return risultato;
},
impostaPmConsigliata: function(){
var dummy = "";
// dichiaro e inizializzo la variabile per la quantità consigliata di pasta madre
var vQuantitaPmConsigliata = 0;
if(this.$el.find("#typeLvStart").val() == "pm")
{
vQuantitaPmConsigliata = ((parseInt(this.$el.find("#qtaLvStart").val()) / 3) * 2);
}
else if(this.$el.find("#typeLvStart").val() == "lic100" ||
this.$el.find("#typeLvStart").val() == "lic130")
{
vQuantitaPmConsigliata = ((parseInt(this.$el.find("#qtaLvStart").val()) / 2) * 3);
}
else {
// dichiaro e inizializzo la variabile per la quantità di lievito di birra
var vQuantitaLdbPartenza = 0;
// dichiaro e inizializzo la variabile per il tipo di lievito di birra
var vTipoLdbPartenza = "";
// dichiaro e inizializzo la variabile per la quantità consigliata di pasta madre massima ammessa
var vQuantitaPmConsigliataMax = 0;
// imposto il rapporto percentuale di default PM solida/Farina... ma è solo orientativo
var rapportoPmSolidaFarina = 25;
// imposto il rapporto percentuale di default PM liquida 100%/Farina... ma è solo orientativo
var rapportoPm100Farina = 16.5;
// imposto il rapporto percentuale di default PM liquida 100%/Farina... ma è solo orientativo
var rapportoPm130Farina = 16.5;
// ricavo la quantità di farina della ricetta originale
var vQuantitaFarinaPartenza = parseInt(this.$el.find('#qtaFarina').val());
// ricavo l'idratazione della PM da usare
var vIdratazionePmFinale = 0;
switch (this.$el.find("#typeLvDest").val()) {
case "pm":
vTipoPmFinale = "SOLIDA";
vIdratazionePmFinale = 50;
break;
case "lic100":
vTipoPmFinale = "LIQUIDA";
vIdratazionePmFinale = 100;
break;
case "lic130":
vTipoPmFinale = "LIQUIDA";
vIdratazionePmFinale = 130;
break;
default:
vTipoPmFinale = "";
}
// altrimenti faccio il rapporto partendo dalla quantità del lievito di birra
// ricavo la quantità di lievito di birra
vQuantitaLdbPartenza = parseInt(this.$el.find('#qtaLvStart').val());
// ricavo il tipo di lievito di birra
vTipoLdbPartenza = this.$el.find("#typeLvStart").val();
if (!isNaN(vQuantitaLdbPartenza)) {
if (vQuantitaLdbPartenza > 0) {
if (vTipoLdbPartenza == "ldbs") {
// 6 ldb = 240 PM
vQuantitaPmConsigliata = (240 / 6) * vQuantitaLdbPartenza;
}
else {
// 15 ldb = 240 PM
vQuantitaPmConsigliata = (240 / 15) * vQuantitaLdbPartenza;
}
// SE IL RISULTATO OTTENUTO E' IRRAGIONEVOLE LO CORREGGO
switch (this.$el.find('#typeLvDest').val()) {
case "pm":
vQuantitaPmConsigliataMax = (vQuantitaFarinaPartenza / 100) * rapportoPmSolidaFarina;
break;
case "lic100":
vQuantitaPmConsigliataMax = (vQuantitaFarinaPartenza / 100) * rapportoPm100Farina;
break;
case "lic130":
vQuantitaPmConsigliataMax = (vQuantitaFarinaPartenza / 100) * rapportoPm130Farina;
break;
default:
vQuantitaPmConsigliataMax = 0;
}
if (vQuantitaPmConsigliata > vQuantitaPmConsigliataMax) {
vQuantitaPmConsigliata = vQuantitaPmConsigliataMax;
}
}
else {
vQuantitaPmConsigliata = 0;
alert("Impossibile calcolare\nAccertati di aver scritto bene la quantita'\ndi lievito di birra nella ricetta originale.");
}
}
else {
vQuantitaPmConsigliata = 0;
alert("Impossibile calcolare\nAccertati di aver scritto bene la quantita'\ndi lievito di birra nella ricetta originale.");
}
}
return vQuantitaPmConsigliata;
},
//render the content into div of view
render: function(){
//this.header.title = "pippo";
ConverterView.__super__.render.call(this);
//this.el is the root element of Backbone.View. By default, it is a div.
//$el is cached jQuery object for the view's element.
//append the compiled template into view div container
var self = this;
this.$el.append(this.header.$el);
this.$el.append(this.template({ deviceWidth: myManifest.Settings.Device.Width }));
this.$el.append(this.footer.$el);
//this.$el.find("#popupConvertResult").css("max-width", myManifest.Settings.Device.Width + "px" );
jQuery.validator.addMethod("cRequired", $.validator.methods.required,
"Il campo è richiesto, si prega di completarlo");
jQuery.validator.addMethod("requireIf", function(value, element, params) {
if(self.$el.find('#typeLvStart').val() != "ldbf" &&
self.$el.find('#typeLvStart').val() != "ldbs")
{
return value!="";
}
return true;
}, jQuery.validator.format("Il campo è richiesto, si prega di completarlo"));
jQuery.validator.addClassRules("cRequireIf", {
requireIf: true
});
jQuery.validator.addClassRules("cRequired", {
cRequired: true
});
this.$el.find("#inputForm").validate({
submitHandler: function() {
self.calculateConvert();
}
});
this.$el.find("#moreBtn").addClass("ui-btn-active");
//$("#homeBtn").addClass("ui-btn-active");
//return to enable chained calls
return this;
}
});
return ConverterView;
});
@@ -0,0 +1,57 @@
<div data-role="content">
<h1>Convertitore</h1>
<form id="inputForm">
<label for="typeLvStart">Tipo lievito della ricetta originale:</label>
<select name="typeLvStart" id="typeLvStart" data-theme="a" class="cRequired">
<option value="">Selezionare il tipo di lievito</option>
<option value="ldbf">Lievito di Birra Fresco</option>
<option value="ldbs">Lievito di Birra Secco</option>
<option value="pm">PM Solida</option>
<option value="lic100">PM Liquida 100% (Li.Co.Li.)</option>
<option value="lic130">PM Liquida 130% (Li.Co.Li.)</option>
</select>
<br>
<label for="qtaLvStart">Lievito nella ricetta originale:</label>
<input type="number" data-clear-btn="false" name="qtaLvStart" id="qtaLvStart" value="" placeholder="Specificare quantità in grammi" data-theme="a" class="cRequired">
<br>
<label for="typeLvDest">Tipo lievito che si vuole utilizzare:</label>
<select name="typeLvDest" id="typeLvDest" data-theme="a" class="cRequired">
<option value="">Selezionare il tipo di lievito</option>
<option value="pm">PM Solida</option>
<option value="lic100">PM Liquida 100% (Li.Co.Li.)</option>
<option value="lic130">PM Liquida 130% (Li.Co.Li.)</option>
</select>
<br>
<label for="qtaFarina">Farina per l'impasto nella ricetta originale:</label>
<input type="number" data-clear-btn="false" name="qtaFarina" id="qtaFarina" value="" placeholder="Specificare quantità in grammi" data-theme="a" class="cRequired">
<br>
<label for="qtaLiquidi">Liquidi (acqua, latte...) per l'impasto nella ricetta originale:</label>
<input type="number" data-clear-btn="false" name="qtaLiquidi" id="qtaLiquidi" value="" placeholder="Specificare quantità in grammi" data-theme="a" class="cRequired">
<br>
<!-- <label for="qtaLvlAlt">Lievito alternativo rispetto alla ricetta originale che intendi usare:</label>-->
<input type="hidden" data-clear-btn="false" name="qtaLvlAlt" id="qtaLvlAlt" value="" placeholder="Specificare quantità in grammi" data-theme="a" disabled="disabled">
<br>
<button type="submit" id="calculate" class="ui-shadow ui-btn ui-corner-all" data-theme="a">Calcola</button>
</form>
<div data-role="popup" id="popupConvertResult" data-dismissible="false" style="width: 300px;max-width: <%= deviceWidth%>px">
<div data-role="header">
<h1>Conversione</h1>
</div>
<div role="main" class="ui-content">
<h3 class="ui-title" id="result" style="text-align: center;"></h3>
<p style="text-align: center;font-style: italic;"><br><br>IMPORTANTE<br><br>
La quantità consigliata è da ritenersi
<br>
assolutamente indicativa in quanto la scelta
<br>
dovrebbe essere fatta sulla base
<br>
dell'esperienza, del particolare impasto
<br>
e delle condizioni ambientali di temperatura
<br>
e umidità</p>
<a href="" class="ui-btn ui-corner-all ui-shadow ui-btn-b ui-icon-check" data-rel="back">Ok</a>
</div>
</div>
</div>
+1 -1
View File
@@ -1,6 +1,6 @@
<div data-role="content">
<h1>Lo sai che?</h1>
<ul data-role="listview" id="faqList">
<ul data-role="listview" id="faqList" style="padding-left: 15px; padding-right: 15px;">
<li data-role="collapsible" data-iconpos="left" data-inset="false"><h2>PM. Iniziare</h2> <div data-role="collapsible"><h4>Come ottenere il Lievito Madre</h4><p>Il modo più semplice ed immediato è trovare uno spacciatore che ci doni gratuitamente un pezzetto del suo Lievito Madre.
Al link seguente trovi la mappa degli spacciatori del gruppo e quella generale della comunità del cibo.<br>
<a href="https://www.facebook.com/notes/gruppo-la-pasta-madre/la-mappa-spacciatori-del-gruppo/733005206786758">Link Gruppo FB</a><br>
+3 -21
View File
@@ -1,7 +1,5 @@
define(['jquery', 'underscore', 'backbone','text!modules/home/homeViewTemplate.html',
'modules/base/baseView', 'classes/profile', 'classes/utility', 'model/lastRicette/lastRicetteCollection', 'modules/lastricette/lastRicette'],
function($, _, Backbone, homeViewTemplate,
BaseView, Profile, Utility, LastRicetteCollection, LastRicette ){
define(['jquery', 'underscore', 'backbone','text!modules/home/homeViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
function($, _, Backbone, homeViewTemplate, BaseView, Profile){
var HomeView = BaseView.extend({
@@ -14,8 +12,7 @@ define(['jquery', 'underscore', 'backbone','text!modules/home/homeViewTemplate.h
},
events: {
"click #goFbGroup": "goFbGroup",
"click #notifyBtn": "onNotifyBtn"
"click #goFbGroup": "goFbGroup"
},
goFbGroup: function(){
@@ -23,14 +20,6 @@ define(['jquery', 'underscore', 'backbone','text!modules/home/homeViewTemplate.h
window.location.href = "https://www.facebook.com/groups/732844273469518/";
},
onNotifyBtn:function(){
var lastricette = new LastRicetteCollection();
// will render home view and navigate to homeView
var lastRicetteView=new LastRicette({ collection: lastricette});
//indexView.render();
lastRicetteView.bind('renderCompleted:Categories',Utility.changePage,this);
},
onShowed: function()
{
if(window.localStorage.getItem("goFbGroup") !== "1")
@@ -49,13 +38,6 @@ define(['jquery', 'underscore', 'backbone','text!modules/home/homeViewTemplate.h
this.$el.append(this.footer.$el);
this.$el.find("#homeBtn").addClass("ui-btn-active");
var lastNumRicette = Profile.getLastNumRicette();
//if( lastNumRicette > 0)
{
this.$el.find('#notifyBtn').closest('.ui-btn').show();
this.$el.find('#notifyBtn').addClass("notification");
this.$el.find('.circle').text(12);
}
//$("#homeBtn").addClass("ui-btn-active");
//return to enable chained calls
return this;
+2 -1
View File
@@ -9,12 +9,13 @@
</div>
<div data-role="popup" id="nuovoGruppo" data-history="false" data-dismissible="false">
<div data-role="header"><h1>IMPORTANTE</h1></div>
<div role="main" class="ui-content">
    <div role="main" class="ui-content">
<p style="text-align: center;font-style: italic;">
<img src="https://dl.dropboxusercontent.com/s/xnbrbbe7eejkfv2/festa.png"><br><br>
Le admin <br><br><b>Alessia, Elena e Francesca</b><br><br>hanno RIFONDATO IL GRUPPO!!<br>
<br>"<b>Gruppo La Pasta Madre</b>"<br>
<br>vuoi chiedere di diventare membro?
<br>Se sei già membro premi si e poi torna indietro con il browser
</p>
<p style="text-align: center;">
<a id="goFbGroup" href="#" class="ui-btn ui-corner-all ui-shadow ui-btn-inline ui-btn-b" data-rel="back">Si</a>
+15 -6
View File
@@ -1,19 +1,28 @@
define(['jquery', 'underscore', 'backbone','text!modules/index/indexViewTemplate.html', 'modules/base/baseView'],
function($, _, Backbone, indexViewTemplate, BaseView){
define(['jquery', 'underscore', 'backbone','text!modules/index/indexViewTemplate.html','text!modules/index/indexItemViewTemplate.html', 'modules/base/baseView'],
function($, _, Backbone, indexViewTemplate, indexItemViewTemplate, BaseView){
var IndexView = BaseView.extend({
collection: null,
//initialize template
template:_.template(indexViewTemplate),
templateItem:_.template(indexItemViewTemplate, {variable: 'item'}),
initialize: function (options) {
var self = this;
IndexView.__super__.initialize.call(this);
this.collection = options.collection;
this.collection.fetch({
success: function(data, textStatus, jqXHR){
self.render();
success: function(){
var $ul = $('#categoryList');
var html = "";
_.each(self.collection.toJSON(), function(d) {
html += self.templateItem(d);
});
$ul.html(html);
//$ul.listview("refresh");
//$ul.trigger("updatelayout");
//self.trigger("renderCompleted:Categories",self);
}
});
},
@@ -26,9 +35,9 @@ define(['jquery', 'underscore', 'backbone','text!modules/index/indexViewTemplate
//$el is cached jQuery object for the view's element.
//append the compiled template into view div container
this.$el.append(this.header.$el);
this.$el.append(this.template({data:this.collection.toJSON()}));
this.$el.append(this.template());
this.$el.append(this.footer.$el);
this.trigger("renderCompleted:Categories",this);
//return to enable chained calls
this.$el.find("#indexBtn").addClass("ui-btn-active");
return this;
@@ -0,0 +1 @@
<li><a href="#category/<%=item.name%>/<%= item.category_id%>" class="ui-btn ui-btn-icon-right ui-icon-carat-r"><%= item.name %></a></li>
+1 -5
View File
@@ -1,9 +1,5 @@
<div id="categoryListContent" data-role="content">
<h1>Indice Ricette</h1>
<h1>Indice</h1>
<ul id="categoryList" data-role="listview" data-inset="true">
<% for (var i = 0; i < data.length; i++) { %>
<% var item = data[i]; %>
<li><a href="#category/<%=item.name%>/<%= item.category_id%>" class="ui-btn ui-btn-icon-right ui-icon-carat-r"><%= item.name %></a></li>
<% } %>
</ul>
</div>
+23 -91
View File
@@ -1,14 +1,17 @@
define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
function($, _, Backbone, itemViewTemplate, BaseView, Profile) {
define(['jquery', 'underscore', 'backbone','text!modules/item/itemViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
function($, _, Backbone, itemViewTemplate, BaseView, Profile){
var ItemView = BaseView.extend({
collRicetta: null,
collIngredienti: null,
fetchedRicetta: false,
fetchedIngredienti: false,
//initialize template
template: _.template(itemViewTemplate),
initialize: function(options) {
template:_.template(itemViewTemplate),
initialize: function (options) {
var self = this;
ItemView.__super__.initialize.call(this);
this.collRicetta = options.collRicetta;
@@ -23,93 +26,23 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
self.render();
}});
},
events: {
"click #favoriteBtn": "favBtn",
"click #optionBtn": "optionBtn",
"click #backBtn": "backBtn",
"click #scattaPhotoBtn": "scattaPhotoBtn",
"change #cameraFile": "cameraFileChanged",
"click #uploadPhotoBtn": "uploadPhotoBtn",
"change #galleyFile": "galleyFileChanged"
"click #backBtn": "backBtn"
},
backBtn: function(e) {
backBtn:function(e){
e.preventDefault();
window.history.back();
},
optionBtn: function(e) {
e.preventDefault();
var self = this;
self.$el.find('#optionPopupDialog').popup("open");
},
scattaPhotoBtn: function(e) {
e.preventDefault();
var self = this;
if (!Profile.isConnected())
{
self.$el.find('#popupDialog').popup("open");
return;
}
$("#cameraFile").click();
},
uploadPhotoBtn: function(e) {
e.preventDefault();
var self = this;
if (!Profile.isConnected())
{
self.$el.find('#popupDialog').popup("open");
return;
}
$("#galleyFile").click();
},
loadPhoto: function(objInputFile){
var self = this;
self.$el.find('#optionPopupDialog').popup("close");
$.mobile.loading( "show", {
text: "Caricamento immagine in corso...",
textVisible: true,
theme: "a",
textonly: false
});
var ric = this.collRicetta.toJSON()[0];
var data = new FormData();
data.append("ricetta_id", ric.ricetta_id);
data.append("image", objInputFile[0].files[0]);
data.append("keyStore", Profile.getKeySave());
$.ajax({
url: myManifest.Settings.DefaultURL + "/api/photos",
cache: false,
contentType: false,
processData: false,
type: 'POST',
data: data,
success: function(msg) {
$.mobile.loading( "hide" );
alert("Immagine inviata con successo\n\nSarà cura degl'admin di validare la foto inviata");
objInputFile.val("");
}
});
},
galleyFileChanged: function(e) {
e.preventDefault();
this.loadPhoto($("#galleyFile"));
},
cameraFileChanged: function(e) {
e.preventDefault();
this.loadPhoto($("#cameraFile"));
},
favBtn: function(e) {
favBtn:function(e){
e.preventDefault();
var self = this;
var ric = this.collRicetta.toJSON()[0];
if (!Profile.isConnected())
if(!Profile.isConnected())
{
self.$el.find('#popupDialog').popup("open");
return;
@@ -123,8 +56,8 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
);
},
//render the content into div of view
render: function() {
if (this.fetchedIngredienti && this.fetchedRicetta)
render: function(){
if(this.fetchedIngredienti && this.fetchedRicetta )
{
ItemView.__super__.render.call(this);
var self = this;
@@ -142,12 +75,12 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
self.$arrayNavBar = self.$el.find('div[data-role="navbar"] a');
var favBtn = self.$el.find('#favoriteBtn');
if (exist > 0)
if(exist > 0)
favBtn.addClass('ui-disabled');
self.$arrayNavBar.on("click", function(e) {
self.$arrayNavBar.on("click", function(e){
e.preventDefault();
var index = jQuery.inArray(this, self.$arrayNavBar);
var index = jQuery.inArray( this , self.$arrayNavBar);
self.goToContent(index);
});
@@ -159,10 +92,7 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
var index = jQuery.inArray(this, self.$arrayContent);
self.goToContent(index - 1 );
});
// self.$arrayContent.on("tap", function(e) {
// self.optionBtn(e);
// });
self.trigger("renderCompleted:Item", self);
self.trigger("renderCompleted:Item",self);
}
);
@@ -176,7 +106,8 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
return this;
}
},
goToContent: function(newIndex)
goToContent:function(newIndex)
{
if(this.$arrayContent.length > newIndex && newIndex >= 0)
{
@@ -184,7 +115,8 @@ define(['jquery', 'underscore', 'backbone', 'text!modules/item/itemViewTemplate.
this.switchContent();
}
},
switchContent: function() {
switchContent: function(){
this.$arrayContent.hide();
this.$arrayNavBar.removeClass('ui-btn-active');
this.$arrayNavBar.removeClass('ui-state-persist');
+3 -15
View File
@@ -1,7 +1,7 @@
<div data-role="header" data-position="fixed" data-tap-toggle="false">
<a id="optionBtn" href="" class="ui-btn ui-icon-withoutCorner ui-btn-icon-notext"></a>
<a id="favoriteBtn" href="#" class="nav-glyphish-example ui-btn ui-icon-myHome ui-btn-icon-notext ui-btn-left" data-icon="custom"></a>
<h3 id='titoloRicetta'><%= unescape(ricetta.titolo)%></h3>
<a id="backBtn" href="" class="ui-btn ui-icon-withoutCorner ui-btn-icon-notext">Indietro</a>
<a id="backBtn" href="#" class="nav-glyphish-example ui-btn ui-icon-myHome ui-btn-icon-notext ui-btn-right" data-icon="custom"></a>
</div>
<div id="contentIngredienti" data-role="content">
<h1>Ingredienti</h1>
@@ -15,7 +15,7 @@
liStyle="list-style-type: none;";
qty = "";
nome_ingr = "";
} %> <li style="<%= liStyle %>"><b><%= nome_ingr %></b><%= qty %> <%= ingrediente.unita %> <%= ingrediente.note %></li><br> <% }); %>
} %> <li style="<%= liStyle %>"><b><%= nome_ingr %></b><%= qty %> <%= ingrediente.unita %> <%= unescape(ingrediente.note) %></li><br> <% }); %>
</p></center>
</div>
<div id="contentProcedimento" data-role="content" style="display: none;">
@@ -46,18 +46,6 @@
<h1 id="linkFonte" style="padding: 0px;"><a target="_blank" href="<%= ricetta.link_fonte%>">Link Fonte</a></h1>
<% }%>
</div>
<div data-role="popup" id="optionPopupDialog">
<div data-role="header">
<h1>Opzioni</h1>
</div>
<div role="main" class="ui-content">
<a id="favoriteBtn" href="" class="ui-btn ui-icon-withoutCorner ui-btn-icon-left">Agg. al Blocco</a>
<a id="scattaPhotoBtn" href="" class="ui-btn ui-icon-withoutCorner ui-btn-icon-left">Scatta Foto</a>
<a id="uploadPhotoBtn" href="" class="ui-btn ui-icon-withoutCorner ui-btn-icon-left">Carica Foto</a>
<input id="cameraFile" type="file" accept="image/*" capture style="position:absolute; top:-100px; visibility: hidden;">
<input id="galleyFile" type="file" accept="image/*" style="position:absolute; top:-100px; visibility: hidden;">
</div>
</div>
<div data-role="popup" id="popupDialog">
<div data-role="header">
<h1>Informazione</h1>
-49
View File
@@ -1,49 +0,0 @@
define(['jquery', 'underscore', 'backbone', 'text!modules/lastRicette/lastRicetteViewTemplate.html',
'text!modules/lastRicette/lastRicetteItemTemplate.html', 'modules/base/baseView'],
function($, _, Backbone, lastRicetteViewTemplate, lastRicetteItemTemplate, BaseView) {
var LastRicetteView = BaseView.extend({
collection: null,
//initialize template
template: _.template(lastRicetteViewTemplate),
itemtemplate: _.template(lastRicetteItemTemplate),
initialize: function(options) {
var self = this;
LastRicetteView.__super__.initialize.call(this);
this.collection = options.collection;
this.collection.fetch({
success: function(data, textStatus, jqXHR) {
self.renderItem();
}
//success: function(){ self.renderItem(); }
});
},
renderItem: function() {
var $ul = $('#allRicette');
var items = this.itemtemplate({data: this.collection.toJSON()});
$ul.html(items);
$ul.listview("refresh");
$ul.trigger("updatelayout");
$.mobile.loading('hide');
//$( '[data-alpha="true"]' ).alphascroll();
},
//render the content into div of view
render: function() {
//this.header.title = "pippo";
LastRicetteView.__super__.render.call(this);
//this.el is the root element of Backbone.View. By default, it is a div.
//$el is cached jQuery object for the view's element.
//append the compiled template into view div container
this.$el.append(this.header.$el);
this.$el.append(this.template());
this.$el.append(this.footer.$el);
//return to enable chained calls
//this.$el.find("#indexBtn").addClass("ui-btn-active");
return this;
}
});
return LastRicetteView;
});
@@ -1,6 +0,0 @@
<% if(data.length == 0){ %>
<h1>Nessuna ricetta trovata</h1>
<%} else { for (var i = 0; i < data.length; i++) { %>
<% var item = data[i]; %>
<li><a href="#ricetta/<%= item.ricetta_id%>" class="ui-btn ui-btn-icon-right ui-icon-carat-r"><div class='ricettaTitolo'><%= unescape(item.titolo) %></div><div class='ricettaAutore'><%= unescape(item.autore) %></div></a></li>
<% }} %>
@@ -1,5 +0,0 @@
<div id="lastRicetteListContent" data-role="content">
<h1>Ultime Ricette Inserite</h1>
<ul id="allRicette" data-role="listview" data-autodividers="true" data-alpha="true" data-inset="true">
</ul>
</div>
+4 -4
View File
@@ -1,11 +1,11 @@
<div data-role="content">
<ul data-role="listview" data-inset="true">
<li data-role="list-divider">Altre opzioni</li>
<li><a id="converterLnk" href="#"><img src="Resources/img/converter.png" alt="Convertitore" class="ui-li-icon ui-corner-none">Convertitore</a></li>
<li><a id="converterLnk" href="#" class="ui-li-icon ui-corner-none">Convertitore</a></li>
<li><a href="#settingsView"><img src="Resources/img/settings.png" alt="Impostazioni" class="ui-li-icon ui-corner-none">Impostazioni</a></li>
<li><a id="settingLnk" href="#settingsView">Impostazioni</a></li>
<li><a href="#aboutView"><img src="Resources/img/info.png" alt="Informazioni su..." class="ui-li-icon ui-corner-none">Informazioni su...</a></li>
<li><a href="#donationView"><img src="Resources/img/donation.png" alt="Donazione" class="ui-li-icon ui-corner-none">Donazione</a></li>
<li><a id="aboutLnk" href="#aboutView">Informazioni su...</a></li>
<li><a id="donationLnk" href="#donationView">Donazione</a></li>
</ul>
</div>
+41 -1
View File
@@ -12,23 +12,63 @@ define(['jquery', 'underscore', 'backbone','text!modules/search/foundViewTemplat
var self = this;
FoundView.__super__.initialize.call(this);
this.collection = options.collection;
this.collection.fetch({
success: function(){ self.renderItem(); } });
},
events: {
"click #pagSucc": "nextPageSearch",
"click #pagPrec": "prevPageSearch"
},
goTop: function(element) {
$('html, body').animate({
scrollTop: '0px'
}, 'fast');
return element; // for chaining...
},
renderItem: function(){
var $ul = $('#foundRicette');
$ul.html('');
var items = this.itemTemplate({data:this.collection.toJSON()});
$ul.html( items );
$ul.listview( "refresh" );
$ul.trigger( "updatelayout");
if(this.collection.indexItems === 0)
$('#pagPrec').hide();
else
$('#pagPrec').show();
if(this.collection.getTotalRecords() < (this.collection.indexItems + 1) * this.collection.numItems)
$('#pagSucc').hide();
else
$('#pagSucc').show();
$.mobile.loading( 'hide' );
//$( '[data-alpha="true"]' ).alphascroll();
},
nextPageSearch: function(e){
e.preventDefault();
var self=this;
this.collection.indexItems++;
this.collection.fetch({reset: true,
success: function(){ self.renderItem(); } });
this.goTop();
},
prevPageSearch: function(e){
e.preventDefault();
var self=this;
this.collection.indexItems--;
this.collection.fetch({reset: true,
success: function(){ self.renderItem(); } });
},
//render the content into div of view
render: function(){
//this.header.title = "pippo";

Some files were not shown because too many files have changed in this diff Show More