azdev/operations/cmdcov/component.js (160 lines of code) (raw):

var tag=1; function sortNumberAS(a, b) { return a - b } function sortNumberDesc(a, b) { return b - a } function sortStrAS(a, b) { x = a.toUpperCase(); y = b.toUpperCase(); if (x < y) { return -1; } if (x > y) { return 1; } } function sortStrDesc(a, b) { x = a.toUpperCase(); y = b.toUpperCase(); if (x < y) { return 1; } if (x > y) { return -1; } } function sortTextAS(a, b) { if (a === 'Not applicable' || a === 'N/A') { a = -1; } else if (a === '') { a = 100; } else { a = parseFloat(a.substr(0, a.length - 1)); } if (b === 'Not applicable' || b === 'N/A') { b = -1; } else if (b === '') { b = 100; } else { b = parseFloat(b.substr(0, b.length - 1)); } if (a < b) { return -1; } if (a > b) { return 1; } return 0; // In case a and b are equal } function sortTextDesc(a, b) { if (a === 'Not applicable' || a === 'N/A') { a = -1; } else if (a === '') { a = 100; } else { a = parseFloat(a.substr(0, a.length - 1)); } if (b === 'Not applicable' || b === 'N/A') { b = -1; } else if (b === '') { b = 100; } else { b = parseFloat(b.substr(0, b.length - 1)); } if (a < b) { return 1; } if (a > b) { return -1; } return 0; // In case a and b are equal } function SortTable(obj){ var column=obj.id var tdModule=document.getElementsByName("td-module"); var tdTested=document.getElementsByName("td-tested"); var tdUntested=document.getElementsByName("td-untested"); var tdPercentage=document.getElementsByName("td-percentage"); var tdDetail=document.getElementsByClassName("detail") var tdReport=document.getElementsByName("td-report"); var tdModuleArray=[]; var tdTestedArray=[]; var tdUntestedArray=[]; var tdPercentageArray=[]; var tdReportArray=[]; for(var i=0;i<tdModule.length;i++){ tdModuleArray.push(tdModule[i].innerHTML); } for(var i=0;i<tdTested.length;i++){ tdTestedArray.push(tdTested[i].innerHTML); } for(var i=0;i<tdUntested.length;i++){ tdUntestedArray.push(tdUntested[i].innerHTML); } for(var i=0;i<tdPercentage.length;i++){ tdPercentageArray.push(tdPercentage[i].innerHTML); } for(var i=0;i<tdReport.length;i++){ tdReportArray.push(tdReport[i].innerHTML); } var columnArray=[]; for(var i=0;i<tdModule.length;i++){ if(column==='th-module'){ columnArray.push(tdModule[i].innerHTML); }else if(column==='th-tested'){ columnArray.push(parseInt(tdTested[i].innerHTML)); }else if(column==='th-untested'){ columnArray.push(parseInt(tdUntested[i].innerHTML)); }else if(column==='th-percentage'){ columnArray.push(tdDetail[i].innerHTML) }else if(column==='th-report'){ columnArray.push(tdReport[i].innerHTML); } } var orginArray=[]; for(var i=0;i<columnArray.length;i++){ orginArray.push(columnArray[i]); } var newArray = columnArray.slice(1,) if(obj.className=="as"){ if(column==='th-tested' || column==='th-untested'){ newArray.sort(sortNumberAS); }else if(column==='th-module' || column==='th-report'){ newArray.sort(sortStrAS); }else{ newArray.sort(sortTextAS); } obj.className="desc"; }else{ if(column==='th-tested' || column==='th-untested'){ newArray.sort(sortNumberDesc); }else if(column==='th-module' || column==='th-report'){ newArray.sort(sortStrDesc); }else{ newArray.sort(sortTextDesc); } obj.className="as"; } columnArray = $.merge([columnArray[0]], newArray); for(var i=1;i<columnArray.length;i++){ for(var j=1;j<orginArray.length;j++){ if(orginArray[j]==columnArray[i]){ document.getElementsByName("td-module")[i].innerHTML=tdModuleArray[j]; document.getElementsByName("td-tested")[i].innerHTML=tdTestedArray[j]; document.getElementsByName("td-untested")[i].innerHTML=tdUntestedArray[j]; document.getElementsByName("td-percentage")[i].innerHTML=tdPercentageArray[j]; document.getElementsByName("td-report")[i].innerHTML=tdReportArray[j]; orginArray[j]=null; break; } } } }