Ext.require([
'Ext.form.*',
'Ext.data.*',
'Ext.window.MessageBox'
]);
Ext.onReady(function() {
var check=false;
Ext.apply(Ext.form.field.VTypes, {
daterange: function(val, field) {
var date = field.parseDate(val);
if (!date) {
return false;
}
if (field.startDateField && (!this.dateRangeMax || (date.getTime() != this.dateRangeMax.getTime()))) {
var start = field.up('form').down('#' + field.startDateField);
start.setMaxValue(date);
start.validate();
this.dateRangeMax = date;
}
else if (field.endDateField && (!this.dateRangeMin || (date.getTime() != this.dateRangeMin.getTime()))) {
var end = field.up('form').down('#' + field.endDateField);
end.setMinValue(date);
end.validate();
this.dateRangeMin = date;
}
return true;
},
daterangeText: 'Start date must be less than end date'
});
var formPanel,
statesStore = Ext.create('Ext.data.ArrayStore', {
fields: ['abbr'],
data : Ext.example.states // from states.js
}),
monthsStore = Ext.create('Ext.data.Store', {
fields: ['name', 'num'],
data: (function() {
var data = [];
Ext.Array.forEach(Ext.Date.monthNames, function(name, i) {
data[i] = {name: name, num: i + 1};
});
return data;
})()
});
formPanel = Ext.widget('form', {
renderTo: 'home',
title: 'Shubha Downloader',
frame: true,
width: 697,
height: 111,
bodyPadding: 5,
fieldDefaults: {
labelAlign: 'right',
labelWidth: 90,
msgTarget: 'qtip'
},
items: [
// Mailing Address
{
xtype: 'fieldset',
title: '',
defaultType: 'textfield',
layout: 'anchor',
defaults: {
anchor: '100%'
},
items: [ {
xtype: 'container',
layout: 'hbox',
items: [ {
xtype: 'fieldcontainer',
fieldLabel: ' Date From',
combineErrors: true,
msgTarget : 'side',
layout: 'hbox',
defaults: {
flex: 1,
hideLabel: true
},
items: [
{
xtype : 'datefield',
name : 'startDate',
id: 'startDate',
// value: new Date(),
fieldLabel: 'Start',
margin: '0 0 0 0',
width: 100,
itemId: 'startdt',
vtype: 'daterange',
endDateField: 'enddt'
}
]
}, {
xtype: 'fieldcontainer',
fieldLabel: 'Date To',
combineErrors: true,
msgTarget : 'side',
layout: 'hbox',
defaults: {
flex: 1,
hideLabel: true
},
items: [
{
xtype : 'datefield',
name : 'startDate',
id : 'endDate',
fieldLabel: 'Start',
margin: '0 0 0 0',
width: 100,
itemId: 'enddt',
vtype: 'daterange',
startDateField: 'startdt'
}
]
},
{
xtype: 'checkboxgroup',
fieldLabel: '',
cls: 'x-check-group-alt',
columns: 1,
items: [
{boxLabel: 'Auto Update From ',id:'autoupdate', name: 'cb-horiz-4',listeners: {change: onMailingAddrFieldChange}}
]
}
]
}
]
}
],
buttons: [{
text: 'Stop',
id:'stop',
handler: function()
{
Ext.Msg.confirm('Message', 'Do you want to stop?<br /><br /><small><b>Note:-</b>it will reload application.</small>', function(btn, text){
if (btn == 'yes'){
window.location.reload();
}
});
}
},{
text: 'Reset',
handler: function()
{
this.up('form').getForm().reset();
Ext.getCmp('startDate').setValue(new Date());
Ext.getCmp('endDate').setValue(new Date());
}
}, {
text: 'Download',
width: 150,
id: 'download',
handler: function()
{
Ext.getCmp('tabpan').getComponent(1).setDisabled(true);
Ext.getCmp('tabpan').getComponent(2).setDisabled(true);
Ext.getCmp('tabpan').getComponent(3).setDisabled(true);
Ext.getCmp('tabpan').getComponent(4).setDisabled(true);
Ext.getCmp('tabpan').getComponent(5).setDisabled(true);
Ext.getCmp('tabpan').getComponent(6).setDisabled(true);
Ext.getCmp('tabpan').getComponent(7).setDisabled(true);
var stop = Ext.getCmp('stop');
stop.enable();
if(check)
{
autoload();
}
else
{
loadevent1();
}
}
}]
});
var stop = Ext.getCmp('stop');
stop.disable();
$("#autoupdate-inputEl").css("margin-left","13px");
$("#checkboxgroup-1034").css("margin-left","40px");
$("#toolbar-1035").css("top","78px");
$("#form-1029-body").css("height","50px");
Ext.getCmp('startDate').setValue(new Date());
Ext.getCmp('endDate').setValue(new Date());
var fs=require('fs');
if(fs.existsSync('lastupdate.csv'))
{
var chk = Ext.getCmp('autoupdate');
chk.enable();
}
else
{
var chk = Ext.getCmp('autoupdate');
chk.disable();
}
function onMailingAddrFieldChange(field) {
check=field.getValue();
if(check)
{
var stDate = Ext.getCmp('startDate');
stDate.disable();
var stDate = Ext.getCmp('endDate');
stDate.disable();
}
else
{
var stDate = Ext.getCmp('startDate');
stDate.enable();
var eDate = Ext.getCmp('endDate');
eDate.enable();
}
}
var csv = require('ya-csv');
var reader;
if(fs.existsSync('lastupdate.csv')){
reader = csv.createCsvFileReader('lastupdate.csv',{'separator': ','});
reader.addListener('data', function(data) {
if(data[0]=='lastdate')
{
$("#autoupdate-boxLabelEl").text('Auto Update From '+data[1]);
}
});}
if(fs.existsSync('settings.csv')){
reader = csv.createCsvFileReader('settings.csv',{'separator': ','});
reader.addListener('data', function(data) {
if(data[0]=='datafolder')
{
mkdir(data[1]);
}
});}
if(fs.existsSync('outputformat.csv')){
reader = csv.createCsvFileReader('outputformat.csv',{'separator': ','});
reader.addListener('data', function(data) {
if(data[0]=='output')
{
$("#output_formate-inputEl").val(data[1].split('-'));
}
});}
Ext.create('Ext.Button', {
text: 'Show Logs',
id:'logsbutton',
width:70,
renderTo: "logbutton",
handler: function() {
logtoggle();
}
});
});