1293 lines
45 KiB
JavaScript
Executable File
1293 lines
45 KiB
JavaScript
Executable File
function changerx() {
|
|
this.list = new Object();
|
|
|
|
this.add = function(object, type, do_function, start_value) {
|
|
if (typeof(object) == "string") {
|
|
object = document.getElementById(object);
|
|
}
|
|
|
|
if (!object) {
|
|
return;
|
|
}
|
|
|
|
this.list[object.id] = new Object();
|
|
this.list[object.id].object = object;
|
|
this.list[object.id].type = type;
|
|
this.list[object.id].do_function = do_function;
|
|
this.list[object.id].start_value = start_value;
|
|
this.list[object.id].value = '';
|
|
};
|
|
|
|
this.getValue = function(element) {
|
|
var value = null;
|
|
|
|
if (element.object) {
|
|
if (element.type == "innerHTML") {
|
|
value = element.object.innerHTML;
|
|
}
|
|
|
|
if (element.type == "value") {
|
|
value = element.object.value;
|
|
}
|
|
|
|
if (element.type == "checked") {
|
|
value = element.object.checked;
|
|
}
|
|
}
|
|
|
|
return value;
|
|
};
|
|
|
|
this.interval = 1000;
|
|
|
|
this.timer = null;
|
|
|
|
this.startTimer = function() {
|
|
var cc = this;
|
|
|
|
this.timer = setInterval(
|
|
function() {
|
|
var list = cc.list;
|
|
|
|
for (x in list) {
|
|
if (list[x].start_value) {
|
|
list[x].value = cc.getValue(list[x]);
|
|
list[x].start_value = false;
|
|
} else {
|
|
var value = cc.getValue(list[x]);
|
|
|
|
if (list[x].value !== value) {
|
|
if (list[x].do_function) {
|
|
list[x].do_function(list[x].object);
|
|
}
|
|
}
|
|
|
|
list[x].value = value;
|
|
}
|
|
}
|
|
},
|
|
this.interval
|
|
);
|
|
};
|
|
|
|
this.stopTimer = function() {
|
|
clearInterval(this.timer);
|
|
this.timer = null;
|
|
};
|
|
}
|
|
|
|
var CHANGER = new changer();
|
|
CHANGER.interval = 0;
|
|
|
|
function generateNumber(type) {
|
|
// console.log('generateNumber', type);
|
|
|
|
var url = 'to_pdf=1&module=EcmFkVatKinds&action=generateNumber&type=' + type;
|
|
|
|
// console.log(url);
|
|
|
|
doRequest(
|
|
'index.php',
|
|
url,
|
|
function(result){
|
|
// console.log(result);
|
|
|
|
var nr_dok = document.getElementById('nr_dok');
|
|
|
|
if(nr_dok) {
|
|
nr_dok.value = result;
|
|
}
|
|
},
|
|
''
|
|
);
|
|
};
|
|
|
|
/* Decree */
|
|
addEvent(
|
|
window,
|
|
'load',
|
|
function() {
|
|
|
|
document.getElementById('type').getValue = selectGetValue;
|
|
|
|
// var type = document.getElementById('preview_type').getValue();
|
|
|
|
CHANGER.add(
|
|
'type',
|
|
'value',
|
|
function(object) {
|
|
var value = object.getValue();
|
|
var acc_code = document.getElementById('acc_code');
|
|
|
|
if(!acc_code) {
|
|
return;
|
|
}
|
|
|
|
var acc_code_row = acc_code.parentNode.parentNode;
|
|
|
|
switch(value[0]) {
|
|
default:
|
|
case '1': // Sprzedaz
|
|
case '2': // Zakup
|
|
case '4': // Ogolny
|
|
acc_code_row.style.display = 'none';
|
|
break;
|
|
case '3': // Platniczy
|
|
acc_code_row.style.display = 'table-row';
|
|
break;
|
|
}
|
|
|
|
return;
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'dat_dok',
|
|
'value',
|
|
function(object) {
|
|
var dat_rej = document.getElementById('dat_rej');
|
|
dat_rej.value = object.value;
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'dat_rej',
|
|
'value',
|
|
function(object) {
|
|
var dat_zn = document.getElementById('dat_zn');
|
|
dat_zn.value = object.value;
|
|
|
|
var dat_zgo = document.getElementById('dat_zgo');
|
|
dat_zgo.value = object.value;
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'nr_dok',
|
|
'value',
|
|
function(object) {
|
|
var nr_par = document.getElementById('nr_par');
|
|
nr_par.value = object.value;
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'acc',
|
|
'value',
|
|
function(object) {
|
|
return;
|
|
|
|
// console.log(object.value);
|
|
|
|
var nickname = document.getElementById('nickname');
|
|
var acc_name = document.getElementById('acc_name');
|
|
|
|
var nip = document.getElementById('nip');
|
|
|
|
// nickname.readOnly = '';
|
|
// nickname.value = acc_name.value;
|
|
|
|
if(object.value != '') {
|
|
nickname.readOnly = 'readonly';
|
|
|
|
// nip.value = '';
|
|
nip.readOnly = 'readonly';
|
|
} else {
|
|
nickname.readOnly = '';
|
|
nip.readOnly = '';
|
|
}
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'sym_dok_id',
|
|
'value',
|
|
function(object) {
|
|
var nr_dok = document.getElementById('nr_dok');
|
|
var sym_dok_type = document.getElementById('sym_dok_type');
|
|
var sym_dok_use_type = document.getElementById('sym_dok_use_type');
|
|
var sym_dok_symbol = document.getElementById('sym_dok_symbol');
|
|
var sym_par_id = document.getElementById('sym_par_id');
|
|
var sym_par_symbol = document.getElementById('sym_par_symbol');
|
|
|
|
// Copy.
|
|
if(sym_dok_use_type.value == '1') {
|
|
sym_par_id.value = object.value;
|
|
sym_par_symbol.value = sym_dok_symbol.value;
|
|
}
|
|
|
|
// console.log(OPT, OPT['generate_number']);
|
|
|
|
if(false == OPT['generate_number']) {
|
|
return;
|
|
}
|
|
|
|
// Modify number.
|
|
switch(sym_dok_type.value) {
|
|
default:
|
|
case 'Reczna': // 2
|
|
nr_dok.value = '';
|
|
nr_dok.readOnly = '';
|
|
break;
|
|
case 'Roczna': // 0
|
|
generateNumber(0);
|
|
nr_dok.readOnly = 'readonly';
|
|
|
|
break;
|
|
case 'Miesieczna': // 1
|
|
generateNumber(1);
|
|
nr_dok.readOnly = 'readonly';
|
|
break;
|
|
}
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'dat_zap',
|
|
'value',
|
|
function(object) {
|
|
var dat_zn = document.getElementById('dat_zn');
|
|
|
|
var datZnParts = dat_zn.value.split('/');
|
|
var datZapParts = object.value.split('/');
|
|
|
|
var datZnDate = new Date(datZnParts[2], datZnParts[0], datZnParts[1]); // mdy => ymd
|
|
var datZapDate = new Date(datZapParts[2], datZapParts[0], datZapParts[1]); // mdy => ymd
|
|
|
|
var diff = DateDiff(datZapDate, datZnDate);
|
|
|
|
var il_dni = document.getElementById('il_dni');
|
|
il_dni.value = MillisecondsToDays(diff);
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'il_dni',
|
|
'value',
|
|
function(object) {
|
|
var dat_zn = document.getElementById('dat_zn');
|
|
|
|
var datZnParts = dat_zn.value.split('/');
|
|
var datZnDate = new Date(datZnParts[2], datZnParts[0], datZnParts[1]); // mdy => ymd
|
|
|
|
var diff = DaysToMilliseconds(object.value);
|
|
|
|
var d = new Date();
|
|
d.setTime(datZnDate.getTime() + diff);
|
|
|
|
var day = d.getDate().toString();
|
|
var month = d.getMonth().toString();
|
|
var year = d.getFullYear().toString();
|
|
|
|
var dat_zap = document.getElementById('dat_zap');
|
|
dat_zap.value = ((month.length <= 1) ? ('0' + month) : month) + '/' + ((day.length <= 1) ? ('0' + day) : day) + '/' + year;
|
|
},
|
|
false
|
|
);
|
|
|
|
/*
|
|
CHANGER.add(
|
|
'account_acc_wn',
|
|
'checked',
|
|
function(obj) {
|
|
if (true == obj.checked) {
|
|
document.getElementById('acc_wn').disabled = true;
|
|
document.getElementById('acc_wn_code').disabled = true
|
|
|
|
document.getElementById('btn_acc_wn_code').disabled = true
|
|
document.getElementById('btn_clr_acc_wn_code').disabled = true
|
|
|
|
return true;
|
|
}
|
|
|
|
document.getElementById('acc_wn').disabled = false;
|
|
document.getElementById('acc_wn_code').disabled = false;
|
|
|
|
document.getElementById('btn_acc_wn_code').disabled = false;
|
|
document.getElementById('btn_clr_acc_wn_code').disabled = false;
|
|
},
|
|
false
|
|
);
|
|
|
|
CHANGER.add(
|
|
'account_acc_ma',
|
|
'checked',
|
|
function(obj) {
|
|
if (true == obj.checked) {
|
|
document.getElementById('acc_ma').disabled = true;
|
|
document.getElementById('acc_ma_code').disabled = true
|
|
|
|
document.getElementById('btn_acc_ma_code').disabled = true
|
|
document.getElementById('btn_clr_acc_ma_code').disabled = true
|
|
|
|
return true;
|
|
}
|
|
|
|
document.getElementById('acc_ma').disabled = false;
|
|
document.getElementById('acc_ma_code').disabled = false;
|
|
|
|
document.getElementById('btn_acc_ma_code').disabled = false;
|
|
document.getElementById('btn_clr_acc_ma_code').disabled = false;
|
|
},
|
|
false
|
|
);
|
|
*/
|
|
|
|
set_focus();
|
|
|
|
//initialize kind
|
|
N = new MyTable('itemsTable');
|
|
N.divParent = document.getElementById('itemsTableDIV');
|
|
|
|
var from_popup_return = false;
|
|
|
|
function returnedData(popup_reply_data) {
|
|
from_popup_return = true;
|
|
|
|
var form_name = popup_reply_data.form_name;
|
|
var name_to_value_array = popup_reply_data.name_to_value_array;
|
|
|
|
for (var the_key in name_to_value_array) {
|
|
if (the_key == 'toJSON') {
|
|
//
|
|
}
|
|
else {
|
|
var displayValue = name_to_value_array[the_key].replace(/&/gi, '&').replace(/</gi, '<').replace(/>/gi, '>').replace(/'/gi, '\'').replace(/"/gi, '"');
|
|
|
|
var e = document.getElementById(the_key);
|
|
|
|
if (e) {
|
|
e.value = displayValue;
|
|
}
|
|
}
|
|
}
|
|
|
|
if(N.selectedRow)
|
|
N.selectedRow.calculateTotal();
|
|
}
|
|
|
|
N.onRefreshRowIndex = function(row) {
|
|
return true;
|
|
|
|
var data = new Object();
|
|
data['index'] = (row.index + 1).toString();
|
|
|
|
row.cells.item(0).setData(data);
|
|
};
|
|
|
|
N.onCreateRow = function(row) {
|
|
// console.log(row);
|
|
|
|
row.newPos = false;
|
|
row.style.height = OPT['row_item_height'];
|
|
|
|
row.ondblclick = function() {
|
|
this.newPos = !this.newPos;
|
|
|
|
for (var i = 0; i < this.myTable.colCount(); i++) {
|
|
this.cells.item(i).change(!this.newPos);
|
|
}
|
|
};
|
|
|
|
row.onSelect = function() {
|
|
for (var i = 0; i < this.myTable.colCount(); i++) {
|
|
this.cells.item(i).style.height = OPT['row_item_height_selected'];
|
|
this.cells.item(i).change(!this.newPos);
|
|
}
|
|
};
|
|
|
|
row.onDeselect = function() {
|
|
for (var i = 0; i < this.myTable.colCount(); i++) {
|
|
this.cells.item(i).style.height = OPT['row_item_height'];
|
|
this.cells.item(i).change(false);
|
|
|
|
}
|
|
|
|
// updatePositions();
|
|
};
|
|
|
|
row.calculateTotal = function() {
|
|
// console.log('Data: ', this.getData());
|
|
//calculateTotalItems();
|
|
|
|
|
|
// console.log('calculateTotal');
|
|
return true;
|
|
|
|
var data = new Object();
|
|
|
|
this.cells.item(3).getData(data, true);
|
|
this.cells.item(5).getData(data, true);
|
|
this.cells.item(6).getData(data, true);
|
|
|
|
if (data.quantity && data.price) {
|
|
data.price2 = data.price - data.price * data.discount / 100;
|
|
data.total = data.quantity * data.price2;
|
|
}
|
|
else {
|
|
data.total = 0;
|
|
data.price2 = 0;
|
|
}
|
|
|
|
this.cells.item(7).setData(data);
|
|
this.cells.item(10).setData(data);
|
|
|
|
calculateTotalItems();
|
|
};
|
|
};
|
|
|
|
var itd = document.getElementById('itemsTableDIV');
|
|
|
|
itd.onscroll = function() {
|
|
// console.log('onscroll');
|
|
return true;
|
|
|
|
if (!AjaxSearch1Items.AjaxSearchFrozen)
|
|
if (N.selectedCell && N.selectedCell.LeftPosition && N.selectedCell.TopPosition) {
|
|
var top = N.selectedCell.TopPosition + N.selectedCell.offsetHeight;
|
|
|
|
if (((N.selectedCell.offsetTop + N.selectedCell.offsetHeight - this.scrollTop) > (this.offsetHeight + 5)) || ((N.selectedCell.offsetTop - this.scrollTop) < (-10)))
|
|
AjaxSearch1Items.div.style.display = 'none';
|
|
else
|
|
AjaxSearch1Items.div.style.display = '';
|
|
|
|
AjaxSearch1Items.div.style.top = top - this.scrollTop;
|
|
}
|
|
};
|
|
|
|
N.onCreateCell = function(cell) {
|
|
var i = cell.index;
|
|
|
|
cell.change = function(select) {
|
|
//
|
|
};
|
|
|
|
cell.style.height = OPT['row_item_height'];
|
|
|
|
// cell.select = function() {
|
|
// var d = new Date();
|
|
// console.log(d + " " + i);
|
|
// }
|
|
|
|
cell.onDeselect = function() {
|
|
var data = this.parentNode.getData();
|
|
|
|
// console.log(data);
|
|
|
|
// if (!data.id || data.id == '') {
|
|
// var data2 = new Object();
|
|
|
|
this.parentNode.setData(data);
|
|
// }
|
|
|
|
// updatePositions();
|
|
};
|
|
|
|
// Title.
|
|
if (i == 0) {
|
|
cell.change = function(select) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(select) {
|
|
cn[0].name = 'i_title';
|
|
cn[0].id = 'i_title';
|
|
} else {
|
|
cn[0].name = '';
|
|
cn[0].id = '';
|
|
}
|
|
}
|
|
|
|
cell.getData = function(data) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(cn[0].value) {
|
|
data.i_title = cn[0].value;
|
|
} else {
|
|
data.i_title = false;
|
|
}
|
|
};
|
|
|
|
cell.setData = function(data) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(data.i_title) {
|
|
cn[0].value = data.i_title;
|
|
} else {
|
|
cn[0].value = '';
|
|
}
|
|
};
|
|
|
|
var edit0 = document.createElement('input');
|
|
edit0.setAttribute('type', 'text');
|
|
// edit0.setAttribute('readOnly', 'readonly');
|
|
edit0.setAttribute('tabIndex', 1);
|
|
edit0.className = 'inputs';
|
|
|
|
cell.appendChild(edit0);
|
|
}
|
|
|
|
if (i == 1) {
|
|
var current = [];
|
|
|
|
// Name.
|
|
cell.change = function(select) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(select) {
|
|
cn[0].name = 'i_col_1_decoded';
|
|
cn[0].id = 'i_col_1_decoded';
|
|
|
|
cn[1].name = 'i_col_1_translations_decoded';
|
|
cn[1].id = 'i_col_1_translations_decoded';
|
|
|
|
cn[2].name = 'i_col_2_decoded';
|
|
cn[2].id = 'i_col_2_decoded';
|
|
|
|
cn[3].name = 'i_col_2_translations_decoded';
|
|
cn[3].id = 'i_col_2_translations_decoded';
|
|
} else {
|
|
cn[0].name = '';
|
|
cn[0].id = '';
|
|
|
|
cn[1].name = '';
|
|
cn[1].id = '';
|
|
|
|
cn[2].name = '';
|
|
cn[2].id = '';
|
|
|
|
cn[3].name = '';
|
|
cn[3].id = '';
|
|
}
|
|
}
|
|
|
|
cell.getData = function(data) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(cn[0].value) {
|
|
// data.i_col_1_decoded = cn[0].value;
|
|
var tmp = cn[0].value.split(/[ ]*,[ ]*/).filter(function(element, index, array){ return element != ''});
|
|
current = tmp;
|
|
|
|
data.i_col_1_decoded = tmp
|
|
} else {
|
|
// data.i_col_1_decoded = '';
|
|
data.i_col_1_decoded = [];
|
|
}
|
|
|
|
if(cn[1].value) {
|
|
// data.i_col_1_translations_decoded = cn[1].value;
|
|
data.i_col_1_translations_decoded = cn[1].value.split(/[ ]*,[ ]*/).filter(function(element, index, array){ return element != ''});
|
|
} else {
|
|
// data.i_col_1_translations_decoded = '';
|
|
data.i_col_1_translations_decoded = [];
|
|
}
|
|
|
|
if(cn[2].value) {
|
|
// data.i_col_2_decoded = cn[2].value;
|
|
data.i_col_2_decoded = cn[2].value.split(/[ ]*,[ ]*/).filter(function(element, index, array){ return element != ''});
|
|
} else {
|
|
// data.i_col_2_decoded = '';
|
|
data.i_col_2_decoded = [];
|
|
}
|
|
|
|
if(cn[3].value) {
|
|
// data.i_col_2_translations_decoded = cn[3].value;
|
|
data.i_col_2_translations_decoded = cn[3].value.split(/[ ]*,[ ]*/).filter(function(element, index, array){ return element != ''});
|
|
} else {
|
|
// data.i_col_2_translations_decoded = '';
|
|
data.i_col_2_translations_decoded = [];
|
|
}
|
|
|
|
// console.log('get data:', data);
|
|
// console.log('get data:', data.i_col_1_decoded);
|
|
// console.log('current:', current);
|
|
};
|
|
|
|
cell.setData = function(data) {
|
|
// console.log('set data:', data);
|
|
// console.log('set data:', data.i_col_1_decoded);
|
|
// console.log('current:', current);
|
|
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(data.i_col_1_decoded) {
|
|
var tmp = data.i_col_1_decoded.filter(function(element, index, array){ return element != ''});
|
|
cn[0].value = tmp.join(', ');
|
|
} else {
|
|
cn[0].value = '';
|
|
}
|
|
|
|
if(data.i_col_1_translations_decoded) {
|
|
// console.log(data.i_col_1_translations_decoded);
|
|
// console.log('data', data.i_col_1_translations_decoded);
|
|
|
|
var tmp = data.i_col_1_translations_decoded.filter(function(element, index, array){ return element != ''});
|
|
|
|
// console.log('Pre', tmp);
|
|
|
|
if(tmp.length < data.i_col_1_decoded.length) {
|
|
for(var i = tmp.length, iCounter = data.i_col_1_decoded.length; i < iCounter; i++) {
|
|
|
|
console.log(type);
|
|
|
|
tmp[i] = T[type.getValue()][data.i_col_1_decoded[i]] ? T[type.getValue()][data.i_col_1_decoded[i]] : data.i_col_1_decoded[i];
|
|
}
|
|
}
|
|
|
|
// console.log('Post', tmp);
|
|
|
|
cn[1].value = tmp.join(', ');
|
|
} else {
|
|
cn[1].value = '';
|
|
}
|
|
|
|
if(data.i_col_2_decoded) {
|
|
cn[2].value = data.i_col_2_decoded.filter(function(element, index, array){ return element != ''}).join(', ');
|
|
} else {
|
|
cn[2].value = '';
|
|
}
|
|
|
|
if(data.i_col_2_translations_decoded) {
|
|
cn[3].value = data.i_col_2_translations_decoded.filter(function(element, index, array){ return element != ''}).join(', ');
|
|
} else {
|
|
cn[3].value = '';
|
|
}
|
|
};
|
|
|
|
var edit0 = document.createElement('input');
|
|
edit0.setAttribute('type', 'text');
|
|
// edit0.setAttribute('readOnly', 'readonly');
|
|
edit0.setAttribute('tabIndex', 1);
|
|
edit0.className = 'inputs';
|
|
|
|
cell.appendChild(edit0);
|
|
|
|
var edit1 = document.createElement('input');
|
|
edit1.setAttribute('type', 'text');
|
|
// edit1.setAttribute('readOnly', 'readonly');
|
|
edit1.setAttribute('tabIndex', 1);
|
|
edit1.className = 'inputs';
|
|
|
|
cell.appendChild(edit1);
|
|
|
|
var edit2 = document.createElement('input');
|
|
edit2.setAttribute('type', 'hidden');
|
|
// edit2.setAttribute('readOnly', 'readonly');
|
|
edit2.setAttribute('tabIndex', 1);
|
|
edit2.className = 'inputs';
|
|
|
|
cell.appendChild(edit2);
|
|
|
|
var edit3 = document.createElement('input');
|
|
edit3.setAttribute('type', 'hidden');
|
|
// edit3.setAttribute('readOnly', 'readonly');
|
|
edit3.setAttribute('tabIndex', 1);
|
|
edit3.className = 'inputs';
|
|
|
|
cell.appendChild(edit3);
|
|
|
|
// Picker.
|
|
var div = document.createElement('div');
|
|
div.setAttribute('style','display: none; float: right; text-align: right; border: 1px #cccccc solid; padding: 3px;');
|
|
|
|
var list = document.createElement('ul');
|
|
list.setAttribute('style', 'margin: 0;');
|
|
|
|
/*
|
|
for(var okey in NAME) {
|
|
var otmp = NAME[okey];
|
|
|
|
console.log(okey, otmp);
|
|
|
|
for(var key in otmp[1]) {
|
|
var otmp = NAME[okey];
|
|
console.log(key, tmp);
|
|
}
|
|
}
|
|
*/
|
|
|
|
var typeVal = type.getValue();
|
|
|
|
for(var okey in NAME){
|
|
var otmp = NAME[okey];
|
|
|
|
// console.log(okey, otmp);
|
|
// continue;
|
|
// return;
|
|
|
|
if(otmp){
|
|
var lh = document.createElement('lh');
|
|
lh.setAttribute('style', 'font-weight: bold;');
|
|
lh.innerHTML = okey;
|
|
|
|
list.appendChild(lh);
|
|
|
|
for(var key in otmp[typeVal]){
|
|
var tmp = otmp[typeVal][key];
|
|
|
|
// console.log(key, tmp);
|
|
// continue;
|
|
// return;
|
|
|
|
if(tmp) {
|
|
var item = document.createElement('li');
|
|
item.setAttribute('style', 'margin: 1px;');
|
|
|
|
var anchor = document.createElement('a');
|
|
anchor.setAttribute('name', key);
|
|
anchor.setAttribute('style', 'cursor: pointer; clear: both;');
|
|
anchor.innerHTML = tmp;
|
|
|
|
anchor.onclick = function() {
|
|
var cn = cell.getElementsByTagName('input');
|
|
|
|
var data = cell.parentNode.getData();
|
|
data.i_col_1_decoded.push(this.name)
|
|
cell.parentNode.setData(data);
|
|
|
|
div.style.display = 'none';
|
|
}
|
|
|
|
item.appendChild(anchor);
|
|
list.appendChild(item);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
div.appendChild(list);
|
|
|
|
var img = document.createElement('img');
|
|
img.setAttribute('src','modules/EcmQuotes/images/edit_position.gif');
|
|
img.setAttribute('style','cursor:pointer;display:block;');
|
|
|
|
img.onclick=function(){
|
|
if(div.style.display=='none') {
|
|
div.style.display='block';
|
|
} else {
|
|
div.style.display='none';
|
|
}
|
|
}
|
|
|
|
// cell.appendChild(document.createElement('br'));
|
|
cell.appendChild(div);
|
|
cell.appendChild(img);
|
|
}
|
|
|
|
// Order.
|
|
if (i == 2) {
|
|
cell.change = function(select) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(select) {
|
|
cn[0].name = 'i_order';
|
|
cn[0].id = 'i_order';
|
|
|
|
cn[1].name = 'i_order_name';
|
|
cn[1].id = 'i_order_name';
|
|
} else {
|
|
cn[0].name = '';
|
|
cn[0].id = '';
|
|
|
|
cn[1].name = '';
|
|
cn[1].id = '';
|
|
}
|
|
}
|
|
|
|
cell.getData = function(data) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(cn[0].value) {
|
|
data.i_order = cn[0].value;
|
|
} else {
|
|
data.i_order = '1';
|
|
}
|
|
|
|
if(cn[1].value) {
|
|
data.i_order_name = cn[1].value;
|
|
} else {
|
|
data.i_order_name = 'Daty dokumentu';
|
|
}
|
|
};
|
|
|
|
cell.setData = function(data) {
|
|
var cn = this.getElementsByTagName('input');
|
|
|
|
if(data.i_order) {
|
|
cn[0].value = data.i_order;
|
|
} else {
|
|
cn[0].value = '';
|
|
}
|
|
|
|
if(data.i_order_name) {
|
|
cn[1].value = data.i_order_name;
|
|
} else {
|
|
cn[1].value = '';
|
|
}
|
|
};
|
|
|
|
var edit0 = document.createElement('input');
|
|
edit0.setAttribute('type', 'hidden');
|
|
edit0.setAttribute('readOnly', 'readonly');
|
|
edit0.setAttribute('tabIndex', 1);
|
|
edit0.className = 'inputs';
|
|
|
|
cell.appendChild(edit0);
|
|
|
|
var edit1 = document.createElement('input');
|
|
edit1.setAttribute('readOnly', 'readonly');
|
|
edit1.setAttribute('tabIndex', 1);
|
|
edit1.className = 'inputs';
|
|
|
|
cell.appendChild(edit1);
|
|
|
|
// Order.
|
|
var div = document.createElement('div');
|
|
div.setAttribute('style','display:none; float:right; text-align:right; border: 1px #cccccc solid; padding:3px;');
|
|
|
|
var list = document.createElement('ul');
|
|
list.setAttribute('style', 'margin: 0;');
|
|
|
|
for(var key in ORDER){
|
|
var tmp = ORDER[key];
|
|
|
|
if(tmp){
|
|
var item = document.createElement('li');
|
|
item.setAttribute('style', 'margin: 1px;');
|
|
|
|
var anchor = document.createElement('a');
|
|
anchor.setAttribute('name', tmp.id);
|
|
anchor.setAttribute('style', 'cursor: pointer; clear: both;');
|
|
anchor.innerHTML = tmp.name;
|
|
|
|
anchor.onclick = function() {
|
|
var cn = cell.getElementsByTagName('input');
|
|
|
|
cn[0].value= this.name;
|
|
cn[1].value= this.innerHTML;
|
|
|
|
div.style.display = 'none';
|
|
}
|
|
|
|
item.appendChild(anchor);
|
|
list.appendChild(item);
|
|
}
|
|
}
|
|
|
|
div.appendChild(list);
|
|
|
|
var img = document.createElement('img');
|
|
img.setAttribute('src','modules/EcmQuotes/images/edit_position.gif');
|
|
img.setAttribute('style','cursor:pointer;display:block;');
|
|
|
|
img.onclick=function(){
|
|
if(div.style.display=='none') {
|
|
div.style.display='block';
|
|
} else {
|
|
div.style.display='none';
|
|
}
|
|
}
|
|
|
|
// cell.appendChild(document.createElement('br'));
|
|
cell.appendChild(div);
|
|
cell.appendChild(img);
|
|
}
|
|
|
|
// Options.
|
|
if (i == 3) {
|
|
var img;
|
|
|
|
//insert
|
|
img = document.createElement('img');
|
|
img.setAttribute('alt', MOD['LBL_INSERT_NEW_ROW']);
|
|
img.setAttribute('src', 'modules/EcmFkPackages/images/insertrow.gif');
|
|
img.style.cursor = 'pointer';
|
|
|
|
img.onclick = function() {
|
|
this.parentNode.myTable.addRow(this.parentNode.parentNode.index + 1);
|
|
};
|
|
|
|
//delete
|
|
cell.appendChild(img);
|
|
cell.appendChild(document.createTextNode(" "));
|
|
|
|
img = document.createElement('img');
|
|
img.setAttribute('alt', MOD['LBL_DELETE_ROW']);
|
|
img.setAttribute('src', 'modules/EcmFkPackages/images/deleterow.gif');
|
|
img.style.cursor = 'pointer';
|
|
|
|
img.onclick = function() {
|
|
// removeReservation(cell);
|
|
this.parentNode.parentNode.deleteRow();
|
|
};
|
|
|
|
cell.appendChild(img);
|
|
cell.appendChild(document.createElement('br'));
|
|
|
|
//move up
|
|
img = document.createElement('img');
|
|
img.setAttribute('alt', MOD['LBL_MOVE_ROW_UP']);
|
|
img.setAttribute('src', 'modules/EcmFkPackages/images/moverowup.gif');
|
|
img.style.cursor = 'pointer';
|
|
|
|
img.onclick = function() {
|
|
this.parentNode.parentNode.moveUp();
|
|
};
|
|
|
|
cell.appendChild(img);
|
|
cell.appendChild(document.createTextNode(" "));
|
|
|
|
//move down
|
|
img = document.createElement('img');
|
|
img.setAttribute('alt', MOD['LBL_MOVE_ROW_DOWN']);
|
|
img.setAttribute('src', 'modules/EcmFkPackages/images/moverowdown.gif');
|
|
img.style.cursor = 'pointer';
|
|
|
|
img.onclick = function() {
|
|
this.parentNode.parentNode.moveDown();
|
|
};
|
|
|
|
cell.appendChild(img);
|
|
}
|
|
};
|
|
|
|
N.onSetCellData = function(row, cell, data) {
|
|
if (cell.innerHTML == '') {
|
|
cell.innerHTML = ' ';
|
|
}
|
|
};
|
|
|
|
calculateTotalItems = function() {
|
|
return true;
|
|
|
|
var a_wn = 0;
|
|
var a_ma = 0;
|
|
|
|
for (var i = 0; i < N.rowCount(); i++) {
|
|
var data = N.row(i).getData();
|
|
|
|
// console.log('data ', data);
|
|
|
|
// console.log('type wn', data.i_acc_wn_type, 'amount ', data.i_amount);
|
|
|
|
if(data.i_acc_wn_type == '1' || data.i_acc_wn_type == 'Bilansowe') {
|
|
a_wn += data.i_amount;
|
|
}
|
|
|
|
// console.log('type ma', data.i_acc_ma_type, 'amount ', data.i_amount);
|
|
|
|
if(data.i_acc_ma_type == '1' || data.i_acc_ma_type == 'Bilansowe') {
|
|
a_ma += data.i_amount;
|
|
}
|
|
}
|
|
|
|
// console.log('total wn ', a_wn, 'total ma ', a_ma);
|
|
|
|
var amount_wn = document.getElementById('amount_wn');
|
|
var amount_ma = document.getElementById('amount_ma');
|
|
|
|
amount_wn.value = NumberToUserFormatNumber(a_wn);
|
|
amount_ma.value = NumberToUserFormatNumber(a_ma);
|
|
|
|
return true;
|
|
|
|
var vats = new Object();
|
|
var subtotal = 0;
|
|
var total = 0;
|
|
|
|
for (var i = 0; i < N.rowCount(); i++) {
|
|
var data = N.row(i).getData();
|
|
|
|
if (OPT.to_is_vat_free == 0) {
|
|
if (data.vat_id && data.name != '') {
|
|
if (typeof(vats[data.vat_id]) != "object") {
|
|
vats[data.vat_id] = new Object();
|
|
vats[data.vat_id]['vat'] = 0;
|
|
}
|
|
|
|
vats[data.vat_id]['vat'] += data.total;
|
|
}
|
|
}
|
|
|
|
subtotal += data.total;
|
|
}
|
|
|
|
total = subtotal;
|
|
|
|
var rt = document.getElementById('position_result_kind');
|
|
|
|
for (var i = 1; i < rt.rows.length - 1; i++) {
|
|
if (!vats[rt.rows.item(i).id]) {
|
|
rt.deleteRow(i);
|
|
--i;
|
|
} else {
|
|
vats[rt.rows.item(i).id]['node'] = rt.rows.item(i);
|
|
}
|
|
}
|
|
|
|
for (var x in vats) {
|
|
if (VAT[x]) {
|
|
vats[x]['vat'] = vats[x]['vat'] * (parseFloat(VAT[x].value) / 100);
|
|
total += vats[x]['vat'];
|
|
|
|
var txL = MOD['LBL_VAT'] + ' (' + VAT[x].name + ')';
|
|
var txF = NumberToUserFormatNumber(vats[x]['vat']);
|
|
}
|
|
|
|
if (vats[x]['node']) {
|
|
vats[x]['node'].id = x;
|
|
vats[x]['node'].cells.item(0).innerHTML = txL;
|
|
vats[x]['node'].cells.item(1).innerHTML = "<input type='text' readonly='readonly' style='border:0px;font-weight:900;width:100%;text-align:right;' value='" + txF + "'>";
|
|
} else {
|
|
rt.insertRow(1);
|
|
|
|
rt.rows.item(1).id = x;
|
|
rt.rows.item(1).insertCell(0);
|
|
rt.rows.item(1).cells.item(0).className = 'positionsLabel';
|
|
rt.rows.item(1).cells.item(0).innerHTML = txL;
|
|
rt.rows.item(1).insertCell(1);
|
|
rt.rows.item(1).cells.item(1).className = 'positionsField';
|
|
rt.rows.item(1).cells.item(1).innerHTML = "<input type='text' readonly='readonly' style='border:0px;font-weight:900;width:100%;text-align:right;' value='" + txF + "'>";
|
|
}
|
|
}
|
|
|
|
var total2 = total;
|
|
|
|
total2 = ((OPT['type'] == "correct") ? '-' : '') + NumberToUserFormatNumber(total2).toString();
|
|
total = ((OPT['type'] == "correct") ? '-' : '') + NumberToUserFormatNumber(total).toString();
|
|
|
|
document.getElementById('articles_subtotal').value = NumberToUserFormatNumber(subtotal);
|
|
|
|
if (document.getElementById('articles_total'))
|
|
document.getElementById('articles_total').value = total2;
|
|
};
|
|
|
|
ItemListSave = function(json) {
|
|
var data = '';
|
|
|
|
for (var i = 0; i < N.rowCount(); i++) {
|
|
data = data + '&items_' + i.toString() + '=' + JSON.stringifyNoSecurity(N.row(i).getData());
|
|
}
|
|
|
|
return data;
|
|
};
|
|
|
|
|
|
fillData = function() {
|
|
var pl = document.getElementById('items_list').value;
|
|
// console.clear();
|
|
// console.log('filling ', pl, pl && pl != '');
|
|
// return;
|
|
|
|
if (pl && pl != '') {
|
|
try {
|
|
// console.log('try');
|
|
pl = eval(pl);
|
|
|
|
// console.log('eval', pl);
|
|
|
|
for (x in pl) {
|
|
var pl_row = pl[x];
|
|
|
|
// console.log(pl_row);
|
|
|
|
// if (!pl[x].code || pl[x].code == '')
|
|
// {
|
|
//
|
|
// } else {
|
|
N.addRow().setData(pl_row);
|
|
// }
|
|
}
|
|
} catch (err) {
|
|
pl = null;
|
|
}
|
|
}
|
|
saveItems();
|
|
calculateTotalItems();
|
|
};
|
|
|
|
fillData();
|
|
|
|
if (N.rowCount() == 0) {
|
|
N.addRow();
|
|
}
|
|
|
|
// ItemsList = function(json) {
|
|
// var data = '';
|
|
|
|
// for (var i = 0; i < N.rowCount(); i++) {
|
|
// data = data + '||||' + JSON.stringifyNoSecurity(N.row(i).getData());
|
|
// }
|
|
|
|
// return data;
|
|
// };
|
|
|
|
if (typeof sqs_objects != 'undefined') {
|
|
sqs_objects["code_p"] = {
|
|
"method": "get_product_array",
|
|
"modules": ["EcmProducts"],
|
|
"field_list": ["index_dbf", "id", "name", "currency_id"],
|
|
"populate_list": ["code_p", "id_p", "name_p", "currency_id_p"],
|
|
"conditions": [{
|
|
"name": "index_dbf",
|
|
"op": "like_custom",
|
|
"end": "%",
|
|
"value": ""
|
|
}],
|
|
"limit": "30",
|
|
"order": "index_dbf",
|
|
"no_match_text": "No Match"
|
|
};
|
|
|
|
sqs_objects["name_p"] = {
|
|
"method": "get_product_array",
|
|
"modules": ["EcmProducts"],
|
|
"field_list": ["date_entered", "name", "id", "index_dbf", "currency_id"],
|
|
"populate_list": ["name_p", "name_p", "id_p", "code_p", "currency_id_p"],
|
|
"conditions": [{
|
|
"name": "name",
|
|
"op": "like_custom",
|
|
"end": "%",
|
|
"value": ""
|
|
}],
|
|
"limit": "30",
|
|
"order": "name",
|
|
"no_match_text": "No Match"
|
|
};
|
|
}
|
|
|
|
|
|
//calculateTotalItems();
|
|
|
|
// if (OPT['new_number']) {
|
|
// generateNumber();
|
|
|
|
// document.getElementById('ITEMS_menu').style.display = 'none';
|
|
// document.getElementById('SERVICES_menu').style.display = 'none';
|
|
|
|
//save PW
|
|
// document.getElementById('stock_doc_inside_in').value = '1';
|
|
// }
|
|
|
|
function setToAddrEmail(str) {
|
|
if (str && str != '')
|
|
str = eval(str);
|
|
else
|
|
str = '';
|
|
|
|
if (typeof(str) == "object")
|
|
str = str[0];
|
|
else
|
|
str = '';
|
|
|
|
if (document.getElementById('parent_type').value == 'Accounts') {
|
|
//= document.getElementById('to_addrs_field'); if(tmp) tmp.value = (str=='')?'':(((str.name)?str.name:'')+' <'+((str.email1)?str.email1:'')+'>; ');
|
|
tmp = document.getElementById('parent_address_street');
|
|
|
|
if (tmp) {
|
|
tmp.value = (str.billing_address_street) ? str.billing_address_street : '';
|
|
}
|
|
|
|
tmp = document.getElementById('parent_address_city');
|
|
|
|
if (tmp) {
|
|
tmp.value = (str.billing_address_city) ? str.billing_address_city : '';
|
|
}
|
|
|
|
tmp = document.getElementById('parent_address_postalcode');
|
|
|
|
if (tmp) {
|
|
tmp.value = (str.billing_address_postalcode) ? str.billing_address_postalcode : '';
|
|
}
|
|
|
|
tmp = document.getElementById('parent_address_country');
|
|
|
|
if (tmp) {
|
|
tmp.value = (str.billing_address_country) ? str.billing_address_country : '';
|
|
}
|
|
|
|
// tmp = document.getElementById('to_nip');
|
|
//
|
|
// if (tmp) {
|
|
// tmp.value = (str.sic_code) ? str.sic_code : '';
|
|
// }
|
|
|
|
tmp = document.getElementById('to_vatid');
|
|
|
|
if (tmp) {
|
|
tmp.value = (str.nip) ? str.nip : '';
|
|
}
|
|
|
|
tmp = document.getElementById('to_is_vat_free');
|
|
|
|
if (tmp) {
|
|
tmp.checked = (str.is_vat_free == 1) ? true : false;
|
|
}
|
|
|
|
document.getElementById('parent_name_copy').value = document.getElementById('parent_name').value;
|
|
|
|
tmp = document.getElementById('ecmlanguage');
|
|
|
|
if (tmp && str.ecmlanguage) {
|
|
if (tmp.value != str.ecmlanguage) {
|
|
tmp.value = str.ecmlanguage;
|
|
setTexts();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
function ChangeAccessFunction(obj, type) {
|
|
var objs = obj.getElementsByTagName('input');
|
|
|
|
for (var i = 0; i < objs.length; i++)
|
|
if (objs[i].id != 'parent_name' && objs[i].id != 'parent_id' && objs[i].name != 'btn_parent_name' && objs[i].name != 'btn_clr_parent_name' && objs[i].name != 'btn_create_parent_name') {
|
|
objs[i].disabled = type;
|
|
}
|
|
|
|
var objs = obj.getElementsByTagName('textarea');
|
|
|
|
for (var i = 0; i < objs.length; i++) {
|
|
objs[i].disabled = type;
|
|
}
|
|
|
|
var objs = obj.getElementsByTagName('select');
|
|
|
|
for (var i = 0; i < objs.length; i++) {
|
|
if (objs[i].id != 'parent_type') {
|
|
objs[i].disabled = type;
|
|
}
|
|
}
|
|
|
|
if (type == 'disabled') {
|
|
TabsMainBlock = true;
|
|
} else {
|
|
TabsMainBlock = false;
|
|
}
|
|
|
|
}
|
|
|
|
Calendar.setup ({
|
|
inputField : "i_dat_dok",
|
|
daFormat : "%d.%m.%Y",
|
|
button : "i_dat_dok_trigger",
|
|
singleClick : true,
|
|
dateStr : "",
|
|
step : 1,
|
|
weekNumbers:false
|
|
}
|
|
);
|
|
|
|
// console.log('N done');
|
|
}
|
|
);
|
|
/* /Decree */
|
|
|
|
CHANGER.startTimer(); |