Ext.Loader.setConfig({
enabled: true
});
Ext.Loader.setPath('Ext.ux', 'ux');
Ext.require([
'Ext.grid.*',
'Ext.data.*',
'Ext.util.*',
'Ext.state.*',
'Ext.form.*',
'Ext.ux.CheckColumn'
]);
try
{
var async = require('async');
var fs = require('fs');
var csv = require('ya-csv');
if(fs.existsSync('settings.csv'))
{
var reader = csv.createCsvFileReader('settings.csv',{'separator': ','});
reader.addListener('data', function(data)
{
if(data[0]=='options')
{
var ca = 1;
var bm = 0;
if(data[1].search('Corporate_Events')>=0)
{
ca = 1;
}
if(data[1].search('Board_Meetings')>=0)
{
bm =1
}
async.parallel
({
data1 : function(callback){
if (fs.existsSync('BM_All_Forthcoming.csv') && bm == 1) {
fs.readFile('BM_All_Forthcoming.csv','utf-8', function(err, data){
if(err){console.log(err)}
callback(err, data);
});
}else
{
fs.readdir('./', function(err, files){
if(err){console.log(err)}
callback(err,'0');
});
}
},
data2 : function(callback){
if (fs.existsSync('CA_ALL_FORTHCOMING.csv') && ca == 1) {
fs.readFile('CA_ALL_FORTHCOMING.csv','utf-8', function(err, data){
if(err){console.log(err)}
callback(err, data);
});
}else
{
fs.readdir('./', function(err, files){
if(err){console.log(err)}
callback(err,'0');
});
}
}
}, function(err, result)
{
var arrFileData = new Array();
var arrFileDataCA = new Array();
if(err)console.log(err);
if (bm == 1)
{
var arrRow = new Array();
var arrRow = result['data1'].split('\n');
for(var i=0 ; i<arrRow.length;i++)
{
var tempArr = arrRow[i].split(',');
arrFileData.push(tempArr);
}
}
if (ca == 1)
{
var arrRowCA = new Array();
var arrRowCA = result['data2'].split('\n');
for(var i=0 ; i<arrRowCA.length;i++)
{
var tempArr = arrRowCA[i].split(',');
arrFileDataCA.push(tempArr);
}
}
Ext.define('Ext.calendar.data.Events', {
statics:
{
getData: function()
{
var today = Ext.Date.clearTime(new Date()),
makeDate = function(d, h, m, s) {
d = d * 86400;
h = (h || 0) * 3600;
m = (m || 0) * 60;
s = (s || 0);
return Ext.Date.add(today, Ext.Date.SECOND, d + h + m + s);
};
var M = Ext.calendar.data.EventMappings;
var arrRec = new Array();
if(bm == 1)
{
for(var i=1 ; i<arrFileData.length-1;i++)
{
if(arrFileData[i][4] != null && arrFileData[i][4] != "" && typeof arrFileData[i][4] != 'undefined')
{
var evtFinalDate = "";
var arrTempDate = arrFileData[i][4].toString().split('-');
var evtDate = arrTempDate[0].toString().replace("\"", "");
var evtMonth = getMonth(arrTempDate[1].toString());
var evtYear = arrTempDate[2].toString().replace("\"", "");
evtFinalDate = evtYear+'-'+evtMonth+'-'+evtDate;
var rec = new Ext.calendar.data.EventModel();
rec.data[M.Title.name] = 'Company name:'+arrFileData[i][1]+' Event:'+arrFileData[i][3];
rec.data[M.EventId.name] = 1000+i;
rec.data[M.CalendarId.name] = 100+i;
rec.data[M.StartDate.name] = new Date(evtFinalDate);
rec.data[M.EndDate.name] = new Date(evtFinalDate);
rec.data[M.Notes.name] = '';
arrRec.push(rec);
}
}
}
if(ca == 1)
{
for(var i=1 ; i<arrFileDataCA.length-1;i++)
{
if(arrFileDataCA[i][6] != null && arrFileDataCA[i][6] != "" && typeof arrFileDataCA[i][6] != 'undefined')
{
var evtFinalDate = "";
var arrTempDate = arrFileDataCA[i][6].toString().split('-');
var evtDate = arrTempDate[0].toString().replace("\"", "");
var evtMonth = getMonth(arrTempDate[1].toString());
var evtYear = arrTempDate[2].toString().replace("\"", "");
evtFinalDate = evtYear+'-'+evtMonth+'-'+evtDate;
var rec = new Ext.calendar.data.EventModel();
rec.data[M.Title.name] = 'Company name:'+arrFileDataCA[i][1]+' Event:'+arrFileDataCA[i][5];
rec.data[M.EventId.name] = 5000+i;
rec.data[M.CalendarId.name] = 700+i;
rec.data[M.StartDate.name] = new Date(evtFinalDate);
rec.data[M.EndDate.name] = new Date(evtFinalDate);
rec.data[M.Notes.name] = 'Event';
arrRec.push(rec);
}
}
}
function getMonth(mon){
var month='';
switch(mon)
{
case 'Jan':
month='01';
break;
case 'Feb':
month='02';
break;
case 'Mar':
month='03';
break;
case 'Apr':
month='04';
break;
case 'May':
month='05';
break;
case 'Jun':
month='06';
break;
case 'Jul':
month='07';
break;
case 'Aug':
month='08';
break;
case 'Sep':
month='09';
break;
case 'Oct':
month='10';
break;
case 'Nov':
month='11';
break;
case 'Dec':
month='12';
break;
}
return month;
}
return {
"evts": arrRec
}
}
}
});
});
}
});
}
}
catch(err)
{
console.log(err.stack);
}