Ilovexm24/www/js/eventsCRUD.js

122 lines
5.1 KiB
JavaScript

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) {
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);
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.");
}
});
};
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';
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 li = "<li>" +
//"<img src='./image/virgolette_1.png' class='epuntato'/>" +
"<a href='#event' data-post='" + item.id + "' >"
+ item.title +
"</a>" +
"<br/>" +
period +
"</li>";
items.push(li);
}
$(containerId).empty();
$("<ul/>", {
"class": "my-new-list"
, html: items.join("")
}).prependTo(containerId);
$.mobile.loading('hide');
}, function (error) {
$.mobile.loading('hide');
toastr.error("Err: nel caricamento dei dati dal db");
console.log(error);
});
};