/* because of perfect code portability! */ document.forms.EditView = document.forms.CreateView; /* Income */ addEvent( window, 'load', function () { var CHANGER = new changer(); CHANGER.interval = 500; set_focus(); //initialize table N3 = new MyTable('incomeTable'); N3.divParent = document.getElementById('incomeTableDIV'); 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(N3.selectedRow) // N3.selectedRow.calculateTotal(); }; N3.onRefreshRowIndex = function(row) { var data = new Object(); data['index'] = (row.index+1).toString(); row.cells.item(0).setData(data); } N3.onCreateRow = function(row) { row.newPos = false; //row.style.height = OPT['row_item_height']; row.ondblclick = function() { this.newPos = !this.newPos; /* var img = this.cells.item(1).getElementsByTagName('img'); if(!this.newPos) img[0].src = "modules/EcmServices/images/insertrow.gif"; else img[0].src = "modules/EcmServices/images/editset.gif"; */ for(var i=0; i (this.offsetHeight+5)) || ((N3.selectedCell.offsetTop-this.scrollTop) < (-10))) AjaxSearch3Items.div.style.display = 'none'; else AjaxSearch3Items.div.style.display = ''; AjaxSearch3Items.div.style.top = top - this.scrollTop; } } N3.onCreateCell = function(cell) { var i = cell.index; cell.change = function(select) { // }; cell.style.height = OPT['row_item_height']; cell.onDeselect2 = function() { var data = this.parentNode.getData(); if(!data.id || data.id == '') { var data2 = new Object(); this.parentNode.setData(data2); } } // Index. if(i == 0) { cell.setData = function(data) { if(data.index) cell.firstChild.value = data.index; }; cell.getData = function(data) { data.index = cell.firstChild.value; } cell.select = function() { this.selectNext(); } var edit = document.createElement('input'); edit.setAttribute('type','text'); edit.setAttribute('readOnly','readonly'); edit.setAttribute('tabIndex',1); edit.className = 'inputs'; cell.appendChild(edit); } // Code. if(i == 1) { cell.change = function(select) { var cn = this.getElementsByTagName('input'); var c; if(select) { c = cn[0]; c.name = 'code_p'; c.id = 'code_p'; c.className = 'inputs'; // sqsEnabled'; c = cn[1]; c.name = 'id_p'; c.id = 'id_p'; c = cn[2]; c.name = 'category_id_p'; c.id = 'category_id_p'; c = cn[3]; c.name = 'currency_id_p'; c.id = 'currency_id_p'; c = cn[4]; c.name = 'currency_symbol_p'; c.id = 'currency_symbol_p'; c = cn[5]; c.name = 'temp_item_id_p'; c.id = 'temp_item_id_p'; c = cn[6]; c.name = 'temp_date_p'; c.id = 'temp_date_p'; c = cn[7]; c.name = 'type_p'; c.id = 'type_p'; } else { c = cn[0]; c.name = ''; c.id = ''; c.className = 'inputs'; c = cn[1]; c.name = ''; c.id = ''; c = cn[2]; c.name = ''; c.id = ''; c = cn[3]; c.name = ''; c.id = ''; c = cn[4]; c.name = ''; c.id = ''; c = cn[5]; c.name = ''; c.id = ''; c = cn[6]; c.name = ''; c.id = ''; c = cn[7]; c.name = ''; c.id = ''; } } cell.onSelect = function() { var xy = findPos(this); this.TopPosition = xy[1]; this.LeftPosition = xy[0]; var top = xy[1]+this.offsetHeight; var itd = document.getElementById('incomeTableDIV'); AjaxSearch3Items.setInputCode(this.getElementsByTagName('input')[0]); if(!AjaxSearch3Items.AjaxSearchFrozen) { AjaxSearch3Items.div.style.left = xy[0]; AjaxSearch3Items.div.TopPosition = top; AjaxSearch3Items.div.style.top = top-itd.scrollTop; } this.ajax_search = false; this.parentNode.noHideASP = false; } cell.onDeselect = function() { if(!this.parentNode.noHideASP) AjaxSearch3Items.div.style.display = 'none'; this.ajax_search = false; } cell.getData = function(data) { var cn = this.getElementsByTagName('input'); data.code = cn[0].value; data.id = cn[1].value; data.category_id = cn[2].value; data.currency_id = cn[3].value; data.currency_symbol = cn[4].value; data.temp_item_id = cn[5].value; data.temp_date = cn[6].value; data.type = cn[7].value; } cell.setData = function(data) { var cn = this.getElementsByTagName('input'); cn[0].value = ((data.code)?data.code:''); cn[1].value = ((data.id)?data.id:''); //cn[2].value = ((data.unit_id)?data.unit_id:OPT['default_unit']); cn[2].value = ((data.category_id)?data.category_id:OPT['default_category']); cn[3].value = ((data.currency_id)?data.currency_id:OPT['default_currency_id']); cn[4].value = ((data.currency_symbol)?data.currency_symbol:OPT['default_category']); cn[5].value = ((data.temp_item_id)?data.temp_item_id:''); cn[6].value = ((data.temp_date)?data.temp_date:''); cn[7].value = ((data.type)?data.type:''); } cell.onKeyDownEvent = function(ev,input) { var keynum; if(window.event) keynum = ev.keyCode; else keynum = ev.which; if(keynum != 13 && keynum != 9) this.ajax_search = true; if(this.ajax_search == true) { AjaxSearch3Items.div.style.display = ''; setTimeout( function() { AjaxSearch3Items.inputSearch.value=input.value; AjaxSearch3Items.inputSearchOnKeyDown(keynum,"clear"); }, 50 ); } if(input.value == '' && keynum == 40) { setSelectionRange(AjaxSearch3Items.inputSearch); return false; } if(keynum == 13 || keynum == 9) { if(input.value == '') return false; if(this.ajax_search != true && this.parentNode.myTable.selectedCell && this.parentNode.myTable.selectedCell.index == 1) this.selectNext(); return false; } if(keynum == 27) { return false; } return true; //return input.parentNode.myTable.KeyPressed(ev,input.parentNode,null,true); } var edit = '
'; cell.innerHTML = edit; cell.align = 'right'; var id = document.createElement('input'); id.setAttribute('type','hidden'); cell.appendChild(id); /* var unit_id = document.createElement('input'); unit_id.setAttribute('type','hidden'); unit_id.setAttribute('value',OPT['default_unit']); cell.appendChild(unit_id); var vat_id = document.createElement('input'); vat_id.setAttribute('type','hidden'); vat_id.setAttribute('value',OPT['default_vat']); cell.appendChild(vat_id); */ var category_id = document.createElement('input'); category_id.setAttribute('type','hidden'); category_id.setAttribute('value',OPT['default_category']); cell.appendChild(category_id); var currency_id = document.createElement('input'); currency_id.setAttribute('type','hidden'); currency_id.setAttribute('value',OPT['default_currency']); cell.appendChild(currency_id); var currency_symbol = document.createElement('input'); currency_symbol.setAttribute('type','hidden'); currency_symbol.setAttribute('value',OPT['default_category']); cell.appendChild(currency_symbol); var temp_item_id = document.createElement('input'); temp_item_id.setAttribute('type','hidden'); temp_item_id.setAttribute('value',''); cell.appendChild(temp_item_id); var temp_date = document.createElement('input'); temp_date.setAttribute('type','hidden'); temp_date.setAttribute('value',''); cell.appendChild(temp_date); var type = document.createElement('input'); type.setAttribute('type','hidden'); type.setAttribute('value',''); cell.appendChild(type); //cell.appendChild(document.createTextNode("\n")); var img = document.createElement('img'); img.setAttribute('alt',MOD['LBL_IMG_SEARCH']); img.setAttribute('src','modules/EcmServices/images/search.gif'); img.style.cursor = 'pointer'; img.onclick = function() { try { this.parentNode.select(); } catch(e) {} if(!this.parentNode.noHideASP) AjaxSearch3Items.div.style.display = 'none'; this.parentNode.ajax_search = false; var ecmpopup = my_popup( 'EcmProducts', { 'id':'id_p', 'index_dbf':'code_p', 'name':'name_p', 'currency_id':'currency_id_p', 'currency_symbol':'currency_symbol_p', //'tax':'vat_name_p', 'unit_name':'unit_id_p', 'unit_name':'unit_name_p', 'vat_id':'vat_id_p', 'vat_name':'vat_name_p', 'vat_value':'vat_value_p' } ); setTimeout( function(){ ecmpopup.focus(); }, 200 ); } // Search image button. cell.appendChild(img); cell.appendChild(document.createTextNode(" ")); var img = document.createElement('img'); img.setAttribute('alt',MOD['LBL_IMG_NEW']); img.setAttribute('src','modules/EcmQuotes/images/add_position.gif'); img.style.cursor = 'pointer'; img.onclick = function() { try { this.parentNode.select(); } catch(e) {} if(!this.parentNode.noHideASP) AjaxSearch3Items.div.style.display = 'none'; this.parentNode.ajax_search = false; var ecmpopup = window.open( "index.php?module=EcmServices&action=formloader&to_pdf=1&loaderAction=ViewForm&loaderFieldName=productFL&createModule=EcmProducts", "New" , "resizable=yes,scrollbars=no,status=no,height=700,width=900" ); setTimeout( function(){ ecmpopup.focus(); }, 200 ); }; // Add image button. cell.appendChild(img); } // Name. if(i == 2) { cell.change = function(select) { var c; if(select) { c = this.childNodes[0]; c.name = 'name_p'; c.id = 'name_p'; //c.className = 'sqsEnabled'; } else { c = this.childNodes[0]; c.name = ''; c.id = ''; c.className = ''; } } cell.getData = function(data) { var cn = this.getElementsByTagName('textarea'); data.name = cn[0].value; } cell.setData = function(data) { var cn = this.getElementsByTagName('textarea'); cn[0].value = ((data.name)?data.name:''); } var textarea = ''; cell.innerHTML = textarea; } // Quantity. if(i == 3) { cell.change = function(select) { var c; if(select) { c = this.childNodes[0]; c.name = 'quantity_p'; c.id = 'quantity_p'; } else { c = this.childNodes[0]; c.name = ''; c.id = ''; } } cell.getData = function(data,noAlert) { var tmp = UserFormatNumberToNumber(this.firstChild.value); if(tmp == -1) { ERROR = true; //if(!noAlert) //alert(MOD['LBL_FORMAT_NUMBER_ERROR']+' ('+this.firstChild.value+')'); data.quantity = 0; this.firstChild.style.color = 'red'; } else { data.quantity = tmp; this.firstChild.style.color = 'black'; } } cell.setData = function(data) { if(data.quantity) this.firstChild.value = NumberToUserFormatNumber(data.quantity); else this.firstChild.value = NumberToUserFormatNumber(1); } cell.onDeselect = function() { ERROR = false; var data = new Object(); this.getData(data); if(!ERROR) { data.quantity = data.quantity; this.setData(data); } } var edit = ''; cell.innerHTML = edit; } // Options. if(i == 4) { var img; //insert img = document.createElement('img'); img.setAttribute('alt', MOD['LBL_INSERT_NEW_ROW']); img.setAttribute('src','modules/EcmServices/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/EcmServices/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/EcmServices/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/EcmServices/images/moverowdown.gif'); img.style.cursor = 'pointer'; img.onclick = function() { this.parentNode.parentNode.moveDown(); } cell.appendChild(img); } } N3.onSetCellData = function(row,cell,data) { if(cell.innerHTML == '') cell.innerHTML = ' '; } var pl = document.getElementById('income_list').value; if(pl && pl != '') { try { pl = eval(pl); for(x in pl) { var pl_row = pl[x]; if(!pl[x].code || pl[x].code == '') { // } else N3.addRow().setData(pl_row); } } catch(err) { pl = null; }; } if(N3.rowCount() == 0) N3.addRow(); calculateTotalIncome = function() { return; /* var vats = new Object(); var subtotal = 0; var total = 0; for(var i=0; i < N3.rowCount(); i++) { var data = N3.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_table'); for(var i = 1; i"; } 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 = ""; } } var total2 = total; total2 = ((OPT['type'] == "correct")?'-':'') + NumberToUserFormatNumber(total2).toString(); total = ((OPT['type'] == "correct")?'-':'') + NumberToUserFormatNumber(total).toString(); document.getElementById('income_subtotal').value = NumberToUserFormatNumber(subtotal); if(document.getElementById('income_total')) document.getElementById('income_total').value = total2; */ } IncomeListSave = function(json) { var data = ''; for(var i=0; i < N3.rowCount(); i++) { data = data + '&i_' + i.toString() + '=' + JSON.stringifyNoSecurity(N3.row(i).getData()); } return data; } ItemsList = function(json) { var data = ''; for(var i=0; i < N3.rowCount(); i++) { data = data + '||||' + JSON.stringifyNoSecurity(N3.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" }; } function generateNumber() { var url = 'to_pdf=1&generate=1&module=EcmServices&action=generateNumber&type=normal&template_id='+document.getElementById('template_id').value;//+'&record='+document.forms.EditView.record.value; //if(document.getElementById('template_id').value == '') { alert('There are no DocumentTemplates in data base!'); return;} doRequest( 'index.php', url, function(result){ var arr = eval(result)[0]; document.getElementById('number').value = arr.number; document.getElementById('document_no').value = arr.document_no; }, '' ); }; //calculateTotalIncome(); if(OPT['new_number']) generateNumber(); if(document.getElementById('template_id').value != '') document.getElementById('template_id').onchange(); addEvent( 'template_id', 'change', generateNumber ); addEvent( document.forms.EditView.status, 'change', canConfirm ); /* if(!OPT.user.access.send_email) { setEMAIL = function() { alert(MOD['LBL_ACCESS_UNAVAIBLE_DELETE_EMAIL']); }; } else { setEMAIL = function(noCheck) { if(CheckDiscount() != -1) { //calculateTotalIncome(); OPT['setEmailTab'] = 0; var view = true; if(!noCheck) { var record = document.forms.EditView.record.value; if(record == '') { alert('Quote is not saved!'); view = false; } else { if(confirm('Save quote changes?')) { OPT['setEmailTab'] = 1; view = false; SaveForm(); } } } if(view) { SetTab('EMAIL'); document.getElementById('emailTAB').innerHTML = ""; } } } } */ CHANGER.add( 'to_is_vat_free', 'checked', function(obj){ obj.value = (obj.checked) ? 1 : 0; OPT['to_is_vat_free'] = obj.value; //calculateTotalIncome(); }, false ); /* CHANGER.add( 'parent_id', 'value', function() { alert('zmiana parent'); }, true ); */ 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