diff --git a/www/js/eventsCRUD.js b/www/js/eventsCRUD.js
index 98fc5d7..49c33c8 100644
--- a/www/js/eventsCRUD.js
+++ b/www/js/eventsCRUD.js
@@ -1,48 +1,74 @@
var EVENTS = EVENTS || {};
-//var date = moment();
+EVENTS.dateFormat = {
+ store : {
+ date: "YYYY-MM-DD",
+ hour: "HH:mm"
+ },
+ display : {
+ date: "DD-MM-YYYY",
+ hour: "HH:mm"
+ }
+}
+
+EVENTS.storeDateFormat = EVENTS.dateFormat.store.date + " " + EVENTS.dateFormat.store.hour;
+EVENTS.displayDateFormat = EVENTS.dateFormat.display.date + " " + EVENTS.dateFormat.display.hour;
EVENTS.render = function() {
var ret = checkConnection('ERR_EVENT');
if (ret) {
- EVENTS.querySingle();
+ EVENTS.query(ai1ec.cats.single);
} else {
EVENTS.loadFromDb('#mostralista', ai1ec.cats.single);
}
}
-EVENTS.querySingle = function () {
+EVENTS.formatDate = function(date, format) {
+ var mdate = moment(date);
+
+ return mdate.isValid() ? mdate.format(format) : "";
+}
+
+EVENTS.query = function (type) {
+ type = type || ai1ec.cats.single;
+ var table = type == ai1ec.cats.repeat ? 'xm24_events_repeat' : 'xm24_events_single';
+
$.mobile.loading('show');
- ai1ec.remote.getLastEvents(ai1ec.cats.single, function(events) {
+ ai1ec.remote.getLastEvents(type, function(events) {
var n_evs = events.length,
n_evs_ins = 0,
n_evs_err = 0;
if(n_evs > 0) {
- FONTE.dbHandler.executeSql('DELETE FROM xm24_events_single', [], function() {
+ FONTE.dbHandler.executeSql('DELETE FROM ' + table , [], function() {
for (var i = 0; i < events.length; i++) {
var event = events[i];
var evId = ai1ec.event.getId(event);
var evTitle = ai1ec.event.getTitle(event);
var evDesc = ai1ec.event.getDescription(event);
- var evInitDate = ai1ec.event.getInitDate(event);
- var evEndDate = ai1ec.event.getEndDate(event);
var evUrl = ai1ec.event.getUrl(event);
var evGeo = ai1ec.event.getGeo(event);
- FONTE.dbHandler.executeSql('INSERT INTO xm24_events_single VALUES (?,?,?,?,?,?,?)', [evId, evTitle, evDesc, evInitDate, evEndDate, evUrl, evGeo], function (resultSet) {
+ var evInitDate = EVENTS.formatDate(ai1ec.event.getInitDate(event), EVENTS.storeDateFormat);
+ var evEndDate = EVENTS.formatDate(ai1ec.event.getEndDate(event), EVENTS.storeDateFormat);
+
+ FONTE.dbHandler.executeSql('INSERT INTO ' + table + ' VALUES (?,?,?,?,?,?,?)', [evId, evTitle, evDesc, evInitDate, evEndDate, evUrl, evGeo],
+ //onSuccess
+ function (resultSet) {
n_evs_ins++;
console.log('resultSet.insertId: ' + resultSet.insertId);
console.log('resultSet.rowsAffected: ' + resultSet.rowsAffected);
if(n_evs_ins + n_evs_err == n_evs - 1) {
if(n_evs_ins > 0) {
- EVENTS.loadFromDb('#mostralista', ai1ec.cats.single);
+ EVENTS.loadFromDb('#mostralista', type);
}
}
- }, function (error) {
+ },
+ //onError
+ function (error) {
n_evs_err++;
if(n_evs_ins + n_evs_err == n_evs - 1) {
if(n_evs_ins > 0) {
- EVENTS.loadFromDb('#mostralista', ai1ec.cats.single);
+ EVENTS.loadFromDb('#mostralista', type);
} else {
toastr.info("Non ci sono nuovi eventi.");
$.mobile.loading('hide');
@@ -52,7 +78,8 @@ EVENTS.querySingle = function () {
});
}
}, function(error){
- toastr.error("Err: errore nel TRUNCATE della tabella degli eventi single");
+ console.error("EVENTS.query() : ", error + " type: " + type);
+ toastr.error("Err: errore nel TRUNCATE della tabella degli eventi");
});
} else {
toastr.info("Non ci sono nuovi eventi.");
@@ -60,42 +87,20 @@ EVENTS.querySingle = function () {
});
};
-EVENTS.queryRepeat = function () {
- $.mobile.loading('show');
- ai1ec.remote.getLastEvents(ai1ec.cats.single, function(events) {
- for (var i = 0; i < events.length; i++) {
- var event = events[i];
- var evId = ai1ec.event.getId(event);
- var evTitle = ai1ec.event.getTitle(event);
- var evDesc = ai1ec.event.getDescription(event);
- var evInitDate = ai1ec.event.getInitDate(event);
- var evEndDate = ai1ec.event.getEndDate(event);
- var evUrl = ai1ec.event.getUrl(event);
- var evGeo = ai1ec.event.getGeo(event);
- FONTE.dbHandler.executeSql('TRUNCATE TABLE xm24_events_repeat', [], function() {
- FONTE.dbHandler.executeSql('INSERT INTO xm24_events_repeat VALUES (?,?,?,?,?,?,?)', [evId, evTitle, evDesc, evInitDate, evEndDate, evUrl, evGeo], function (resultSet) {
- console.log('resultSet.insertId: ' + resultSet.insertId);
- console.log('resultSet.rowsAffected: ' + resultSet.rowsAffected);
-
- $.mobile.loading('hide');
- }, function (error) {
- console.error("EVENTS.query() : ", error);
- });
- });
- }
- });
-};
-
EVENTS.loadFromDb = function (containerId, type) {
- var table = type == ai1ec.cats.single ? 'xm24_events_single' : 'xm24_events_repeat';
+ var table = type == ai1ec.cats.repeat ? 'xm24_events_repeat' : 'xm24_events_single';
FONTE.dbHandler.executeSql("SELECT * FROM " + table + " ORDER BY initDate COLLATE NOCASE ASC;", [], function (resultSet) {
var items = [];
for (var i = 0; i < resultSet.rows.length; i++) {
var item = resultSet.rows.item(i);
- var period = "Da: " + item.initDate;
- if(item.endDate) {
- period += " A: " + item.endDate;
+ var evInitDate = EVENTS.formatDate(item.initDate, EVENTS.displayDateFormat);
+ var evEndDate = EVENTS.formatDate(item.endDate, EVENTS.displayDateFormat);
+
+ var evFrom = "Da: " + evInitDate;
+ var evTo = "";
+ if(evEndDate != "") {
+ evTo = "
" + " A: " + evEndDate;
}
var li = "