Compare commits
3
Commits
master
...
d0d55ee8e5
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d0d55ee8e5 | ||
|
|
1b92a374cc | ||
|
|
160ed036a6 |
@@ -15,12 +15,12 @@ AddOutputFilterByType DEFLATE text/css application/x-javascript text/html text/r
|
||||
<ifModule mod_rewrite.c>
|
||||
RewriteEngine On
|
||||
RewriteRule ^index.html$ index.php [L]
|
||||
RewriteRule ^js/libs/(.*)\.[0-9]+\.js$ /IlLievitarioManut/js/libs/$1.js [L]
|
||||
RewriteRule ^js/(.*)\.[0-9]+\.js$ /IlLievitarioManut/js/$1.js [L]
|
||||
RewriteRule ^css/(.*)\.[0-9]+\.css$ /IlLievitarioManut/css/$1.css [L]
|
||||
RewriteRule ^Resources/img/(.*)\.[0-9]+\.png$ /IlLievitarioManut/Resources/img/$1.png [L]
|
||||
RewriteRule ^Resources/img/(.*)\.[0-9]+\.gif$ /IlLievitarioManut/Resources/img/$1.gif [L]
|
||||
RewriteRule ^Resources/icons/(.*)\.[0-9]+\.png$ /IlLievitarioManut/Resources/icons/$1.png [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>
|
||||
|
||||
@@ -1,5 +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 cleancss --s0 --skip-rebase -o .\css\style.min.css .\css\style.css
|
||||
pause
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.8 KiB |
+19
-9
@@ -9,7 +9,8 @@
|
||||
.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;
|
||||
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; }
|
||||
@@ -26,23 +27,23 @@
|
||||
#saveBtn:after { background: url("https://dl.dropboxusercontent.com/s/dsqkblkv9zgqyab/save.png") 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 {
|
||||
content: url('https://www.dropbox.com/s/vsc19gan0ihjptr/fblogin.png');
|
||||
.loginfb:before {
|
||||
content: url('https://dl.dropboxusercontent.com/s/vsc19gan0ihjptr/fblogin.png');
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.logoutfb {
|
||||
content: url('https://www.dropbox.com/s/sdbe56vqxeqevph/fblogout.png');
|
||||
.logoutfb:before {
|
||||
content: url('https://dl.dropboxusercontent.com/s/sdbe56vqxeqevph/fblogout.png');
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.logingplus {
|
||||
content: url('https://www.dropbox.com/s/k43w3cfzowlynhk/gpluslogin.png');
|
||||
.logingplus:before {
|
||||
content: url('https://dl.dropboxusercontent.com/s/k43w3cfzowlynhk/gpluslogin.png');
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
.logoutgplus {
|
||||
content: url('https://www.dropbox.com/s/nnprsunm8zg31en/gpluslogout.png');
|
||||
.logoutgplus:before {
|
||||
content: url('https://dl.dropboxusercontent.com/s/nnprsunm8zg31en/gpluslogout.png');
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
@@ -117,6 +118,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;
|
||||
}
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.1 KiB |
@@ -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,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') 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
File diff suppressed because one or more lines are too long
Binary file not shown.
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.8 KiB |
@@ -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;
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
@@ -5,13 +5,10 @@
|
||||
<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://ajax.googleapis.com/ajax/libs/jquerymobile/1.4.3/jquery.mobile.structure.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,34 +17,18 @@
|
||||
<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>
|
||||
<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>
|
||||
|
||||
@@ -1,29 +1,78 @@
|
||||
define(['jquery','underscore', 'backbone', 'router', 'classes/profile'],function
|
||||
($, _, Backbone,Router, Profile) {
|
||||
define(['jquery', 'underscore', 'backbone', 'router', 'classes/profile', 'classes/cache'], function
|
||||
($, _, Backbone, Router, Profile, Cache) {
|
||||
'use strict';
|
||||
var init=function(){
|
||||
var init = function () {
|
||||
//create backbone router
|
||||
var 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.
|
||||
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 {
|
||||
initialize:init
|
||||
initialize: init
|
||||
};
|
||||
});
|
||||
@@ -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;
|
||||
});
|
||||
@@ -0,0 +1,54 @@
|
||||
/*
|
||||
* 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.push(cachedItem);
|
||||
self.trigger('sync', self, false, options);
|
||||
if (_.isFunction(options.success)) {
|
||||
options.success(self, false, options);
|
||||
}
|
||||
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;
|
||||
});
|
||||
@@ -11,11 +11,6 @@ define(['jquery', 'backbone'],
|
||||
if (this.data.type == null)
|
||||
this.loadProfile();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.data.risRic = window.localStorage.getItem("risRic");
|
||||
this.data.tema = window.localStorage.getItem("tema");
|
||||
}
|
||||
return this;
|
||||
},
|
||||
|
||||
@@ -78,12 +73,12 @@ define(['jquery', 'backbone'],
|
||||
},
|
||||
|
||||
isGPlusConnected: function(){
|
||||
if(this.data.type == "gplus")
|
||||
if(this.data.type === "google")
|
||||
return true;
|
||||
return false;
|
||||
},
|
||||
isFbConnected: function(){
|
||||
if(this.data.type == "fb")
|
||||
if(this.data.type === "facebook")
|
||||
return true;
|
||||
return false;
|
||||
},
|
||||
|
||||
Vendored
+3
File diff suppressed because one or more lines are too long
+2
-1
@@ -1,5 +1,6 @@
|
||||
var pathJquery = "http://ajax.googleapis.com/ajax/libs/jquery/" + myManifest.Settings.JQueryVersion + "/jquery.min";
|
||||
var pathJqueryMobile = "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',
|
||||
|
||||
+27
-5
@@ -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;
|
||||
};
|
||||
|
||||
|
||||
Vendored
+2
File diff suppressed because one or more lines are too long
+2
-2
@@ -1,10 +1,10 @@
|
||||
var myManifest = {
|
||||
Debug: false,
|
||||
Name: "Il Lievitario",
|
||||
Version: "2.2.3",
|
||||
Version: "2.5.0",
|
||||
Author: "Denis Ironi",
|
||||
Settings: {
|
||||
//DefaultURL: "http://localhost:8081/Service",
|
||||
//DefaultURL: "http://localhost:8081/Service_Manut",
|
||||
DefaultURL: "http://app.gruppolapastamadre.it/Service",
|
||||
JQueryVersion: "1.11.1",
|
||||
JQueryMobileVersion: "1.4.3",
|
||||
|
||||
@@ -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,11 +1,12 @@
|
||||
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,
|
||||
|
||||
@@ -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");
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -1,49 +1,57 @@
|
||||
define(['jquery', 'underscore', 'backbone','text!modules/category/categoryViewTemplate.html', 'text!modules/category/categoryItemTemplate.html', 'modules/base/baseView'],
|
||||
function($, _, Backbone, categoryViewTemplate, categoryItemTemplate, BaseView){
|
||||
define(['jquery', 'underscore', 'backbone', 'text!modules/category/categoryViewTemplate.html', 'text!modules/category/categoryItemTemplate.html', 'modules/base/baseView'],
|
||||
function ($, _, Backbone, categoryViewTemplate, categoryItemTemplate, BaseView) {
|
||||
|
||||
var CategoryView = BaseView.extend({
|
||||
|
||||
collection: null,
|
||||
categoryName: null,
|
||||
//initialize template
|
||||
template:_.template(categoryViewTemplate),
|
||||
itemtemplate:_.template(categoryItemTemplate),
|
||||
|
||||
template: _.template(categoryViewTemplate),
|
||||
itemtemplate: _.template(categoryItemTemplate),
|
||||
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 items = this.itemtemplate({data:this.collection.toJSON()});
|
||||
var items = this.itemtemplate({data: this.collection.toJSON()});
|
||||
|
||||
$ul.html( items );
|
||||
$ul.listview( "refresh" );
|
||||
$ul.trigger( "updatelayout");
|
||||
$ul.html(items);
|
||||
$ul.listview("refresh");
|
||||
$ul.trigger("updatelayout");
|
||||
|
||||
$.mobile.loading( 'hide' );
|
||||
$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.
|
||||
//$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({ categoryName: this.categoryName }));
|
||||
this.$el.append(this.template({categoryName: this.categoryName}));
|
||||
this.$el.append(this.footer.$el);
|
||||
//return to enable chained calls
|
||||
this.$el.find("#indexBtn").addClass("ui-btn-active");
|
||||
@@ -51,4 +59,4 @@ function($, _, Backbone, categoryViewTemplate, categoryItemTemplate, BaseView){
|
||||
}
|
||||
});
|
||||
return CategoryView;
|
||||
});
|
||||
});
|
||||
@@ -2,5 +2,17 @@
|
||||
<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>
|
||||
<div id="valutazione" style="clear:both;">
|
||||
<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>
|
||||
<% }} %>
|
||||
@@ -15,6 +15,7 @@
|
||||
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,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;">
|
||||
|
||||
@@ -33,23 +33,14 @@ define(['jquery', 'underscore', 'backbone','text!modules/search/searchViewTempla
|
||||
render: function () {
|
||||
//this.header.title = "pippo";
|
||||
SearchView.__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({data:this.collection.toJSON()}));
|
||||
this.$el.append(this.footer.$el);
|
||||
|
||||
this.$el.find('#nResult').val(Profile.data.risRic);
|
||||
// this.$el.find('#search').on("click", function(e){
|
||||
// e.preventDefault();
|
||||
//
|
||||
// });
|
||||
this.trigger("renderCompleted:Search", this);
|
||||
|
||||
this.$el.find("#searchBtn").addClass("ui-btn-active");
|
||||
//$("#homeBtn").addClass("ui-btn-active");
|
||||
//return to enable chained calls
|
||||
return this;
|
||||
}
|
||||
});
|
||||
|
||||
+30
-59
@@ -1,63 +1,43 @@
|
||||
define(['jquery', 'underscore', 'backbone','text!modules/sync/syncViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
|
||||
function($, _, Backbone, syncViewTemplate, BaseView, Profile){
|
||||
define(['jquery', 'underscore', 'backbone', 'text!modules/sync/syncViewTemplate.html', 'modules/base/baseView', 'classes/profile'],
|
||||
function ($, _, Backbone, syncViewTemplate, BaseView, Profile) {
|
||||
|
||||
var SyncView = BaseView.extend({
|
||||
|
||||
//initialize template
|
||||
template:_.template(syncViewTemplate),
|
||||
|
||||
template: _.template(syncViewTemplate),
|
||||
initialize: function (options) {
|
||||
SyncView.__super__.initialize.call(this);
|
||||
if(options &&
|
||||
if (options &&
|
||||
options.tokenFound == 1)
|
||||
{
|
||||
if(window.localStorage.getItem("tryLogin")=="fb")
|
||||
{
|
||||
this.fbAfterLogin();
|
||||
}
|
||||
else if(window.localStorage.getItem("tryLogin")=="gplus")
|
||||
{
|
||||
this.gPlusAfterLogin();
|
||||
}
|
||||
this.updateLoginBtn();
|
||||
}
|
||||
window.localStorage.setItem("tryLogin", null);
|
||||
},
|
||||
|
||||
events: {
|
||||
"click #backBtn": "backBtn",
|
||||
"click #fblogin": "fbLogin",
|
||||
"click #gpluslogin": "gplusLogin",
|
||||
"click #resetBtn": "resetBtn"
|
||||
},
|
||||
|
||||
resetBtn:function(e){
|
||||
resetBtn: function (e) {
|
||||
e.preventDefault();
|
||||
Profile.setKeySave(null);
|
||||
window.localStorage.setItem("hello", null);
|
||||
Backbone.history.loadUrl();
|
||||
},
|
||||
|
||||
backBtn:function(e){
|
||||
backBtn: function (e) {
|
||||
e.preventDefault();
|
||||
window.history.back();
|
||||
},
|
||||
|
||||
fbLogin: function(e){
|
||||
fbLogin: function (e) {
|
||||
var self = this;
|
||||
e.preventDefault();
|
||||
|
||||
if(!Profile.isConnected()) {
|
||||
window.localStorage.setItem("tryLogin", "fb");
|
||||
openFB.login('email');
|
||||
}
|
||||
else if(Profile.isConnected() && Profile.isFbConnected())
|
||||
openFB.revokePermissions(function(){
|
||||
Profile.setKeySave(null);
|
||||
self.updateLoginBtn();
|
||||
});
|
||||
hello('facebook').login();
|
||||
},
|
||||
|
||||
fbAfterLogin: function()
|
||||
fbAfterLogin: function ()
|
||||
{
|
||||
/*
|
||||
var self = this;
|
||||
openFB.api({
|
||||
path: '/me',
|
||||
@@ -76,25 +56,17 @@ define(['jquery', 'underscore', 'backbone','text!modules/sync/syncViewTemplate.h
|
||||
self.updateLoginBtn();
|
||||
});
|
||||
}});
|
||||
*/
|
||||
},
|
||||
|
||||
gplusLogin: function(e){
|
||||
gplusLogin: function (e) {
|
||||
var self = this;
|
||||
e.preventDefault();
|
||||
|
||||
if(!Profile.isConnected()) {
|
||||
window.localStorage.setItem("tryLogin", "gplus");
|
||||
openGPlus.login('email');
|
||||
}
|
||||
else if(Profile.isConnected() && Profile.isGPlusConnected())
|
||||
openGPlus.revokePermissions(function(){
|
||||
Profile.setKeySave(null);
|
||||
self.updateLoginBtn();
|
||||
});
|
||||
hello('google').login();
|
||||
},
|
||||
|
||||
gPlusAfterLogin: function()
|
||||
gPlusAfterLogin: function ()
|
||||
{
|
||||
/*
|
||||
var self = this;
|
||||
openGPlus.api({
|
||||
path: 'people/me',
|
||||
@@ -114,36 +86,35 @@ define(['jquery', 'underscore', 'backbone','text!modules/sync/syncViewTemplate.h
|
||||
self.updateLoginBtn();
|
||||
});
|
||||
}});
|
||||
*/
|
||||
},
|
||||
|
||||
updateLoginBtn: function()
|
||||
updateLoginBtn: function ()
|
||||
{
|
||||
if(Profile.isConnected()) {
|
||||
if (Profile.isConnected()) {
|
||||
if (Profile.isFbConnected()) {
|
||||
this.$el.find("#fblogin").show();
|
||||
this.$el.find("#gpluslogin").hide();
|
||||
this.$el.find("#loginFbImg").removeClass("loginfb");
|
||||
this.$el.find("#loginFbImg").addClass("logoutfb");
|
||||
this.$el.find("#fblogin").removeClass("loginfb");
|
||||
this.$el.find("#fblogin").addClass("logoutfb");
|
||||
}
|
||||
|
||||
if (Profile.isGPlusConnected()) {
|
||||
this.$el.find("#gpluslogin").show();
|
||||
this.$el.find("#fblogin").hide();
|
||||
this.$el.find("#loginGPlusImg").removeClass("logingplus");
|
||||
this.$el.find("#loginGPlusImg").addClass("logoutgplus");
|
||||
this.$el.find("#gpluslogin").removeClass("logingplus");
|
||||
this.$el.find("#gpluslogin").addClass("logoutgplus");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.$el.find("#loginFbImg").removeClass("logoutfb");
|
||||
this.$el.find("#loginFbImg").addClass("loginfb");
|
||||
this.$el.find("#loginGPlusImg").removeClass("logoutgplus");
|
||||
this.$el.find("#loginGPlusImg").addClass("logingplus");
|
||||
this.$el.find("#fblogin").removeClass("logoutfb");
|
||||
this.$el.find("#fblogin").addClass("loginfb");
|
||||
this.$el.find("#gpluslogin").removeClass("logoutgplus");
|
||||
this.$el.find("#gpluslogin").addClass("logingplus");
|
||||
}
|
||||
},
|
||||
|
||||
//render the content into div of view
|
||||
render: function(){
|
||||
render: function () {
|
||||
var self = this;
|
||||
//this.header.title = "pippo";
|
||||
SyncView.__super__.render.call(this);
|
||||
@@ -151,7 +122,7 @@ define(['jquery', 'underscore', 'backbone','text!modules/sync/syncViewTemplate.h
|
||||
this.header.$el.append("<a id=\"backBtn\" href=\"\" data-role=\"button\" class=\"ui-btn-right\" data-icon=\"custom\">Indietro</a>");
|
||||
|
||||
this.$el.append(this.header.$el);
|
||||
this.$el.append(this.template( { app: myManifest }));
|
||||
this.$el.append(this.template({app: myManifest}));
|
||||
this.$el.append(this.footer.$el);
|
||||
this.$el.find("#moreBtn").addClass("ui-btn-active");
|
||||
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
<div style="text-align: center;">
|
||||
Qui puoi collegarti con l'account che preferisci<br>per avere la sincronizzazione dei tuoi dati su qualsiasi dispositivo che userai<br>
|
||||
Scegli il tipo di account e premi il tasto qui sotto per effettuare il login<br><br>
|
||||
<a id="fblogin" href=""><img id="loginFbImg" class="loginfb"/><br></a>
|
||||
<a id="gpluslogin" href=""><img id="loginGPlusImg" class="logingplus"/></a>
|
||||
<a id="fblogin" href="" class="loginfb"></a><br>
|
||||
<a id="gpluslogin" href="" class="logingplus"></a>
|
||||
<div data-role="popup" id="popupLogin" data-overlay-theme="a" data-theme="a" data-corners="false" data-tolerance="15,15">
|
||||
<a href="#" data-rel="back" class="ui-btn ui-btn-b ui-corner-all ui-shadow ui-btn-a ui-icon-delete ui-btn-icon-notext ui-btn-right">Close</a>
|
||||
<iframe id="urlLogin" src="" width="497" height="298" seamless=""></iframe>
|
||||
|
||||
+15
-3
@@ -156,6 +156,19 @@ var openFB = (function () {
|
||||
tokenStore['fbtoken'] = undefined;
|
||||
}
|
||||
|
||||
function createHttpReq(callbackFn){
|
||||
var request;
|
||||
if (window.XDomainRequest) {
|
||||
request = new window.XDomainRequest();
|
||||
request.onload = callbackFn;
|
||||
}
|
||||
else {
|
||||
request = new XMLHttpRequest();
|
||||
request.onreadystatechange = callbackFn;
|
||||
}
|
||||
return request;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lets you make any Facebook Graph API request.
|
||||
* @param obj - Request configuration object. Can include:
|
||||
@@ -169,14 +182,13 @@ var openFB = (function () {
|
||||
|
||||
var method = obj.method || 'GET',
|
||||
params = obj.params || {},
|
||||
xhr = new XMLHttpRequest(),
|
||||
url;
|
||||
|
||||
params['access_token'] = tokenStore['fbtoken'];
|
||||
|
||||
url = 'https://graph.facebook.com' + obj.path + '?' + toQueryString(params);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
var xhr = createHttpReq( function() {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status === 200) {
|
||||
if (obj.success) obj.success(JSON.parse(xhr.responseText));
|
||||
@@ -185,7 +197,7 @@ var openFB = (function () {
|
||||
if (obj.error) obj.error(error);
|
||||
}
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
xhr.open(method, url, true);
|
||||
xhr.send();
|
||||
|
||||
+16
-3
@@ -157,6 +157,19 @@ var openGPlus = (function () {
|
||||
tokenStore['gplustoken'] = undefined;
|
||||
}
|
||||
|
||||
function createHttpReq(callbackFn){
|
||||
var request;
|
||||
if (window.XDomainRequest) {
|
||||
request = new window.XDomainRequest();
|
||||
request.onload = callbackFn;
|
||||
}
|
||||
else {
|
||||
request = new XMLHttpRequest();
|
||||
request.onreadystatechange = callbackFn;
|
||||
}
|
||||
return request;
|
||||
}
|
||||
|
||||
/**
|
||||
* Lets you make any Facebook Graph API request.
|
||||
* @param obj - Request configuration object. Can include:
|
||||
@@ -171,14 +184,14 @@ var openGPlus = (function () {
|
||||
var method = obj.method || 'GET',
|
||||
baseUrl = obj.baseUrl || 'https://www.googleapis.com/plus/v1/',
|
||||
params = obj.params || {},
|
||||
xhr = new XMLHttpRequest(),
|
||||
url;
|
||||
|
||||
params['access_token'] = tokenStore['gplustoken'];
|
||||
|
||||
url = baseUrl + obj.path + '?' + toQueryString(params);
|
||||
|
||||
xhr.onreadystatechange = function () {
|
||||
//xhr.onreadystatechange =
|
||||
var xhr = createHttpReq(function () {
|
||||
if (xhr.readyState === 4) {
|
||||
if (xhr.status === 200) {
|
||||
if (obj.success) obj.success(JSON.parse(xhr.responseText));
|
||||
@@ -187,7 +200,7 @@ var openGPlus = (function () {
|
||||
if (obj.error) obj.error(error);
|
||||
}
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
xhr.open(method, url, true);
|
||||
xhr.send();
|
||||
|
||||
+5
-3
@@ -4,14 +4,14 @@ define(['jquery', 'underscore', 'backbone',
|
||||
'modules/sync/sync', 'modules/converter/converter', 'modules/donation/donation', 'modules/settings/settings',
|
||||
'model/note/noteCollection', 'model/category/categoryCollection', 'model/categoryItem/categoryItemCollection',
|
||||
'model/item/itemCollection', 'model/item/ingredientiCollection', 'model/categoryItem/foundItemCollection',
|
||||
'libs/fastclick', 'jqm', 'jQueryPlugins'],
|
||||
'libs/fastclick', 'classes/cache', 'jqm', 'jQueryPlugins'],
|
||||
function ($, _, Backbone,
|
||||
HomeView, FaqView, IndexView, CategoryView, ItemView,
|
||||
AboutView, SearchView, FoundView, MoreView, NoteView,
|
||||
SyncView, ConverterView, DonationView, SettingsView,
|
||||
NoteCollection, CategoryCollection, CategoryItemCollection,
|
||||
ItemCollection, IngredientiCollection, FoundItemCollection,
|
||||
FastClick) {
|
||||
FastClick, Cache) {
|
||||
|
||||
'use strict';
|
||||
var Router = Backbone.Router.extend({
|
||||
@@ -84,6 +84,8 @@ define(['jquery', 'underscore', 'backbone',
|
||||
this.changePage(faqView);
|
||||
},
|
||||
showIndex: function (actions) {
|
||||
Cache.checkCacheFromServer();
|
||||
|
||||
var categories = new CategoryCollection();
|
||||
// will render home view and navigate to homeView
|
||||
var indexView = new IndexView({collection: categories});
|
||||
@@ -172,7 +174,7 @@ define(['jquery', 'underscore', 'backbone',
|
||||
$('input[type=radio].star').rating({
|
||||
callback: function (value, link) {
|
||||
var tip = $('#hover-test');
|
||||
if (value == undefined)
|
||||
if (value === undefined)
|
||||
{
|
||||
$('#hover-test').html("Nessuna" || 'value: ');
|
||||
}
|
||||
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
/**
|
||||
* XML Sitemap PHP Script
|
||||
* For more info, see: http://yoast.com/xml-sitemap-php-script/
|
||||
* Copyright (C), 2011 - 2012 - Joost de Valk, joost@yoast.com
|
||||
*/
|
||||
// inclusione del file contenente la classe
|
||||
require_once "./Service/MySqlClass.php";
|
||||
require_once "./Service/utility.php";
|
||||
|
||||
// Get the keys so we can check quickly
|
||||
|
||||
// Sent the correct header so browsers display properly, with or without XSL.
|
||||
header( 'Content-Type: application/xml' );
|
||||
echo '<?xml version="1.0" encoding="utf-8"?>' . "\n";
|
||||
$url = "http://app.gruppolapastamadre.it/";
|
||||
$blog_timezone = 'UTC';
|
||||
$timezone_offset = '+01:00';
|
||||
$W3C_datetime_format_php = 'Y-m-d\Th:i:s'; // See http://www.w3.org/TR/NOTE-datetime
|
||||
|
||||
|
||||
function dinamicSite() {
|
||||
global $url, $blog_timezone, $timezone_offset, $W3C_datetime_format_php;
|
||||
$mysqlconnetion = new MysqlClass;
|
||||
//$mysqlconneti on->connetti();
|
||||
$retObj = $mysqlconnetion->queryToObject("select ID as category_id, NAME as name from categorie order by name");
|
||||
|
||||
foreach ($retObj as $key => $value)
|
||||
{
|
||||
$catStr = "#category/". $value["name"] ."/" . $value["category_id"];
|
||||
$lastModified = $mysqlconnetion->queryToObject("select MAX(Data_creazione) as lastModified from ricette where ID_CATEGORIA = ". $value["category_id"]);
|
||||
|
||||
$date = DateTime::createFromFormat('Y-m-d H:i:s', $lastModified[0]["lastModified"], new DateTimeZone("Europe/Rome"));
|
||||
|
||||
$lastDate = date_format($date, $W3C_datetime_format_php) . $timezone_offset;
|
||||
?>
|
||||
<url>
|
||||
<loc><?php echo $url . $catStr; ?></loc>
|
||||
<lastmod><?php echo $lastDate; ?></lastmod>
|
||||
</url><?php
|
||||
|
||||
$query = "select ID as ricetta_id, titolo from ricette where ID_CATEGORIA = " . $value["category_id"] . " order by titolo, autore";
|
||||
$ricItems = $mysqlconnetion->queryToObject($query);
|
||||
|
||||
foreach ($ricItems as $keyRic => $valueRic)
|
||||
{
|
||||
$itemStr= "#ricetta/" . $valueRic["ricetta_id"];
|
||||
?>
|
||||
<url>
|
||||
<loc><?php echo $url . $itemStr; ?></loc>
|
||||
</url><?php
|
||||
}
|
||||
}
|
||||
|
||||
$mysqlconnetion->disconnetti();
|
||||
}
|
||||
|
||||
?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><?php
|
||||
dinamicSite();
|
||||
?>
|
||||
|
||||
</urlset>
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>http://app.gruppolapastamadre.it/</loc>
|
||||
<lastmod>2014-04-09</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>http://app.gruppolapastamadre.it/</loc>
|
||||
<lastmod>2014-04-09</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.8</priority>
|
||||
</url>
|
||||
</urlset>
|
||||
@@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<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.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" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="https://dl.dropboxusercontent.com/s/onehseqh6cusbo0/Icon~ipad.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="https://dl.dropboxusercontent.com/s/tcxl91zd502mapa/Icon%402x.png" />
|
||||
<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="*"/>
|
||||
</head>
|
||||
<body style="background-color: #1d1d1d;">
|
||||
<div id="loadingFrm" style="text-align: center;">
|
||||
<div class="loadingSfondo">
|
||||
<div class="loadingText">
|
||||
<div style="color: #ffffff;"><b>Caricamento...</b></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user