diff --git a/www/index.html b/www/index.html index 82a49c9..cfc3ad5 100644 --- a/www/index.html +++ b/www/index.html @@ -35,15 +35,16 @@ - - - - + + + + - - - - + + + + + @@ -180,7 +181,7 @@

EVENTI

- +

diff --git a/www/js/eventsCRUD.js b/www/js/eventsCRUD.js index 654a5bd..98fc5d7 100644 --- a/www/js/eventsCRUD.js +++ b/www/js/eventsCRUD.js @@ -1,27 +1,61 @@ var EVENTS = EVENTS || {}; +//var date = moment(); + +EVENTS.render = function() { + var ret = checkConnection('ERR_EVENT'); + if (ret) { + EVENTS.querySingle(); + } else { + EVENTS.loadFromDb('#mostralista', ai1ec.cats.single); + } +} EVENTS.querySingle = 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_single', [], function() { - FONTE.dbHandler.executeSql('INSERT INTO xm24_events_single VALUES (?,?,?,?,?,?,?)', [evId, evTitle, evDesc, evInitDate, evEndDate, evUrl, evGeo], function (resultSet) { + 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() { + 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) { + n_evs_ins++; console.log('resultSet.insertId: ' + resultSet.insertId); console.log('resultSet.rowsAffected: ' + resultSet.rowsAffected); - - $.mobile.loading('hide'); + if(n_evs_ins + n_evs_err == n_evs - 1) { + if(n_evs_ins > 0) { + EVENTS.loadFromDb('#mostralista', ai1ec.cats.single); + } + } }, 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); + } else { + toastr.info("Non ci sono nuovi eventi."); + $.mobile.loading('hide'); + } + } console.error("EVENTS.query() : ", error); - }); + }); + } + }, function(error){ + toastr.error("Err: errore nel TRUNCATE della tabella degli eventi single"); }); + } else { + toastr.info("Non ci sono nuovi eventi."); } }); }; @@ -52,13 +86,27 @@ EVENTS.queryRepeat = function () { }); }; -EVENTS.loadFromDb = function (containerId) { - $.mobile.loading('show'); - FONTE.dbHandler.executeSql("SELECT * FROM xm24_events_single ORDER BY initDate COLLATE NOCASE ASC;", [], function (resultSet) { +EVENTS.loadFromDb = function (containerId, type) { + var table = type == ai1ec.cats.single ? 'xm24_events_single' : 'xm24_events_repeat'; + 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); - items.push("
  • " + item.title + "
  • "); + + var period = "Da: " + item.initDate; + if(item.endDate) { + period += " A: " + item.endDate; + } + + var li = "
  • " + + //"" + + "" + + item.title + + "" + + "
    " + + period + + "
  • "; + items.push(li); } $(containerId).empty(); $("