var reg = /[\s]/g; function findPos(obj) { var curleft = curtop = 0; if (obj.offsetParent) do { curleft += obj.offsetLeft; curtop += obj.offsetTop; } while (obj = obj.offsetParent); return [curleft,curtop]; } function generateSelectOptions(arr, selected) { var tmp = ''; for(x in arr) { tmp += ''; } return tmp; } function NumberToUserFormatNumber(number,add) { if(!number) number = 0; number = parseFloat(number); var tmp = number.toFixed(OPT['dec_len']); var s1 = tmp.substring(0,tmp.length-1-OPT['dec_len']); var s2 = tmp.substring(tmp.length-OPT['dec_len'],tmp.length); var tmp = ''; for(var i=s1.length;i>0;i-=3) { tmp = ((i<=3)?"":OPT['sep_1000'])+s1.substring(i-3,i)+tmp; } s1 = tmp; return (s1+OPT['dec_sep']+s2).toString()+((add)?add:''); } function UserFormatNumberToNumber(ufn,add) { if(add) { var match = /add/g; ufn = ufn.replace(match,''); } var match = /Err/g; ufn = ufn.replace(match,''); if(!ufn) return parseFloat(0); var pos = ufn.indexOf(OPT['dec_sep']); var s1='', s2=''; if(pos==-1) { s1 = ufn; s2 = ''; } else { s1 = ufn.substring(0,pos); s2 = ufn.substring(pos+1,ufn.length); } /* if(OPT['sep_1000'] != "") for(var i=s1.length-4;i>=0;i-=4) if(s1.charAt(i) != OPT['sep_1000']) { return -1; } if(s1.charAt(0) == OPT['sep_1000']) return -1; */ var pos = -1; while((pos = s1.indexOf(OPT['sep_1000'])) != -1) s1 = s1.substring(0,pos)+s1.substring(pos+1,s1.length); //alert(s1); return parseFloat(s1+"."+s2); } function keyPressedNumber(e) { var keynum; if(window.event) //IE keynum = e.keyCode; else keynum = e.which; return keynum; } function isEnterOrTabPressed(e) { var keynum = keyPressedNumber(e); if(keynum == 9 || keynum == 13) return true; else return false; } function setSelectionRange(obj) { if(obj && typeof(obj) == "object" && (obj.type == "text" || obj.type == "textarea")) { if(obj.createTextRange) { var range = obj.createTextRange(); range.moveStart("character", 0); range.moveEnd("character", obj.value.lengh-1); range.select(); } else { if(obj.setSelectionRange) { obj.setSelectionRange(0,obj.value.length); } } obj.focus(); } if(obj && typeof(obj) == "object" && obj.options) { obj.focus(); } } /* function keyPressed = function(e, method) { var keynumkey = PressedNumber(e); if((keynum == 9) || (keynum == 13)) { //this.calculateTotal(); //if(this.selectedCell.lp == 1) setTimeout( function() { N.selectNextCell(); } , 100); //this.selectNextCell(); return false; } //if(keynum == 40) this.selectNextRow(); //if(keynum == 38) this.selectPreviousRow(); if(e.shiftKey && (method == "decimalNumber" || method == "onlyNumber")) return false; if(method == "decimalNumber") return this.OnlyNumbers(keynum); if(method == "onlyNumber") return this.OnlyNumbers(keynum, true); return true; } this.OnlyNumbers = function(e, noQuote) { var keynum = e, keychar, numcheck; keychar = String.fromCharCode(keynum); numcheck = /\d/; return numcheck.test(keychar) || ((!noQuote)?(keynum == 190):false) || (keynum == 8) //backspace || (keynum == 13) //enter || (keynum == 0) //special keys with FF || (keynum == 37) //left arrow || (keynum == 39) //right arrow || (keynum == 188) //, || (keynum >= 95 && keynum <= 105) //numeric keyboard || (keynum == 110); } */ function MyTable(name) { this.myTableName = name; this.table = document.getElementById(this.myTableName); this.thead = this.table.tHead; this.tbody = this.table.tBodies.item(0); this.cellSelectedClass = 'selectedCell'; this.rowSelectedClass = 'selectedRow'; this.selectedRow; this.selectedCell; this.divParent; this.rowCount = function() { return this.tbody.rows.length; } this.colCount = function() { return this.thead.rows.item(0).cells.length; }; this.colWidth = function(i) { return this.thead.rows.item(0).cells.item(i).width; }; this.moveUpRow = function() { if(this.selectedRow) this.selectedRow.moveUp(); }; this.moveDownRow = function() { if(this.selectedRow) this.selectedRow.moveDown(); }; this.insertRow = function(row, newRow) { if(!row) if(this.rowCount()) if(typeof(row) == "number") row = this.tbody.rows.item(row); else row = this.tbody.rows.item(this.tbody.rows.length-1); var row_tmp; if((newRow) && (row)) row_tmp = newRow; else { row_tmp = this.createRow(); this.fillWithDefaultData(row_tmp); } if(this.rowCount() > 0 && row.nextSibling) this.tbody.insertBefore(row_tmp, row.nextSibling); else this.tbody.appendChild(row_tmp); return row_tmp; }; /* this.deleteRow = function(row) { if(!row) if(this.rowCount()) if(typeof(row) == "number") row = this.tbody.rows.item(row); else row = this.tbody.rows.item(this.tbody.rows.length-1); if(!row) return; if(row.nextSibling) this.selectNextRow(); else if(row.previousSibling) this.selectPreviousRow(); this.tbody.removeChild(row); this.deselectRow(); this.deselectCell(); if(this.rowCount() == 0) setTimeout( function() { N.insertRow(); } , 1000); } this.changeRowMode = function(row) { row.isnew = !row.isnew; this.setEditNames(row,!row.isnew); var img = row.firstChild.nextSibling.lastChild.previousSibling.previousSibling; if(row.isnew) img.setAttribute('src','modules/EcmInvoiceOuts/images/newproductset.gif'); else img.setAttribute('src','modules/EcmInvoiceOuts/images/newproduct.gif'); } */ this.refreshRowIndex = function() { for(var i=0; i 0) { try { if(typeof(i) != "undefined") { var r = i; if(typeof(i) == "object") {} else if(typeof(i) == "number") r = this.tbody.rows.item(i - 1); if(this.isProductLoaded(r.cells.item(0)) == false) { return 0; } } } catch(e) { return 0; } } var row = this.createRow(); if(this.selectedRow) this.selectedRow.deselect(); if(this.selectedCell) this.selectedCell.deselect(); row.myTable = this; if(typeof(i) == "number") this.tbody.insertBefore(row,this.tbody.rows.item(i)); else this.tbody.appendChild(row); this.refreshRowIndex(); this.setRowData(row, data); for(var i=0; i (this.myTable.divParent.offsetHeight+5)) || ((this.offsetTop-this.myTable.divParent.scrollTop) < (-10))) this.myTable.divParent.scrollTop = this.offsetTop; } } row.deselect = function() { if(this.myTable.selectedRow === this) { this.className = ''; this.myTable.selectedRow = ''; if(row.onDeselect) row.onDeselect(); } }; row.calculateTotal = function() {}; row.selectNext = function() { if(this.index < this.myTable.rowCount()-1) { this.deselect(); this.nextSibling.select(); return this.nextSibling; } else { if(this.noAddNew) return this; this.deselect(); var row = this.myTable.addRow(); return row; } } row.selectPrevious = function() { this.deselect(); if(this.previousSibling) { this.previousSibling.select(); return this.previousSibling; }else return this; } row.deleteRow = function(noNew) { if(this.myTable.selectedCell) this.myTable.selectedCell.deselect(); if(this.myTable.selectedRow) this.myTable.selectedRow.deselect(); if(this.myTable.rowCount() == 1 && !noNew) { var MyTaBlE = this.myTable; setTimeout( function() { MyTaBlE.addRow(); } , 1000); } this.myTable.tbody.removeChild(this); this.myTable.refreshRowIndex(); calculateTotal(); } row.moveUp = function() { if(!this.previousSibling) return; this.myTable.tbody.insertBefore(this,this.previousSibling); this.myTable.refreshRowIndex(); } row.moveDown = function() { if(!this.nextSibling) this.myTable.addRow(row); this.myTable.tbody.insertBefore(this.nextSibling,this); this.myTable.refreshRowIndex(); } row.setData = function(data) { if(!data || typeof(data) != "object") { return; }; for(var i=0; i= 95 && keynum <= 105) //numeric keyboard || (keynum == 110); } this.row = function(i) { if(this.tbody.rows.item(i)) return this.tbody.rows.item(i); } this.cells = function(i,j) { if(this.tbody.rows.item(i).cells.item(i)) return this.tbody.rows.item(i).cells.item(i); } } // var N; var parent_options; /* function ItemListSave(json) { if(N.selectedCell) N.selectedCell.deselect(); if(N.selectedRow) N.selectedRow.deselect(); var data = new Object(); for(var i=0; i0) N.row(0).deleteRow(); } */ function ItemListFill(list) { /* var start_list_count = 6; var count = 0; var arr = ''; if(list) arr = list; else if(document.getElementById('position_list').value!="") arr = eval(document.getElementById('position_list').value); if(arr != '') for(x in arr) { N.insertRowFromArray(arr[x]); count++; } for(var i=count; i