OXIESEC PANEL
- Current Dir:
/
/
home
/
cubot
/
docroot
/
VBox
/
kpi
/
js
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/14/2022 11:04:58 AM
rwxr-xr-x
📄
itemsNfilters.js
14.25 KB
08/14/2022 11:04:58 AM
rw-r--r--
📄
kpi.js
3.16 KB
08/14/2022 11:04:58 AM
rw-r--r--
Editing: itemsNfilters.js
Close
function openConfigurePage(authToken, portlet, itemSaveFunc, callBackFunc){ var htmlStr="<div id=itemDiv style='width:100%'><table width=100% cellspacing=0 cellpadding=0 border=0 class=tableWithThinBorder><tr><th>Items:<a id=confItems>Configure</a></th><th>Values</th></tr> <tr><td>Dimensions:</td><td><span id=confDims>"+reportCollection[portlet].dimensions.join(',')+"</span></td></tr> <tr><td>Measures:</td><td><span id=confMeas>"+reportCollection[portlet].measures.join(',')+"</span></td></tr></table></div>"; htmlStr+="<div id=filterDiv style='width:100%'></div>"; openDialog("tmpDialog1", "", "", "KPI Configuration", htmlStr, callBackFunc, authToken); var filterList=""; if(reportCollection[portlet].filterList && reportCollection[portlet].filterList.filterList) filterList=reportCollection[portlet].filterList.filterList; else filterList=new reportFilterList(); populateFilterDiv(filterList, "filterDiv"); $("#confItems").live("click", function (){ openItemConfigurePage(authToken, portlet, itemSaveFunc); }); $("#confFilter").live("click", function (){ showFilterPage(authToken, portlet, itemSaveFunc); }); } function getFilterUi(itemId, itemName,itemColumn, operator, portlet, filterValues){ var htmlstr='<div class="ui-widget-content ui-state-default filterMain " itemId="'+itemId+'" itemColumn="'+itemColumn+'"><div class="filterHeading ui-widget-header"><span class=colName>Filter Name:</span>'+itemName; htmlstr+='<div class="operNclose"> <span class="colName left">Operator:</span>'+getFilterOperatorCombo(itemId, operator); htmlstr+='<span class="deleteFilter ui-icon ui-icon-close" itemId="'+itemId+'" ></span></div></div>'; htmlstr+='<div class=filterSelectedHeading><span class=colName><u>Selected Values</u>:</span></div><div class=filterSelected><ul class="filterClass" itemId="'+itemId+'" oper="'+operator+'" portlet="'+portlet+'">'; for(var j=0; j<filterValues.length; j++){ htmlstr+='<li class="filterContent" dimval="'+filterValues[j]+'">'; if(itemId<10000) htmlstr+='<span class="selFilterVal">'+filterValues[j]+'</span>'; else htmlstr+='<input type="textbox" class="filterMeasValues" value="'+filterValues[j]+'">'; htmlstr+='<span class="filterClose ui-icon ui-icon-close" ></span></li>'; } if(itemId>10000 && filterValues.length==0) htmlstr+='<li class="filterContent" dimval=""><input type="textbox" class="filterMeasValues"><span class="filterClose ui-icon ui-icon-close"></sapn></li>'; htmlstr+='</ul></div>'; if(itemId<10000){ htmlstr+='<div class=filterUnselectedHeading><span class="colName left"><u>All Values</u>:</span><span><input type=text class=searchFilterVal></span><span class="getFilterVal ui-icon ui-icon-refresh" range="0-50" > </span><span class="prevFilterVal ui-icon ui-icon-seek-prev"> </span><span class="nextFilterVal ui-icon ui-icon-seek-next"> </span><span class="showFilterVal ui-icon ui-icon-plus"> </span><span class="hideFilterVal ui-icon ui-icon-minus"> </span></div><div class=filterUnselected> </div>'; } htmlstr+='</div>'; return htmlstr; } function copy(oldObject){ return jQuery.extend(true, {}, oldObject); } function returnFilters(authToken, portlet, callBackFunc){ var uiFilters=$("ul.filterClass").get(); var metaDataCollection=createItemList(authToken); reportCollection[portlet].filterList=new reportFilterList(); for (var i=0; i<uiFilters.length; i++){ var filter= new reportFilter(); filter.itemId =$(uiFilters[i]).attr("itemId"); filter.itemName=metaDataCollection.getItemById(filter.itemId).Name; filter.itemColumn=metaDataCollection.getItemById(filter.itemId).Column; /*filter.operator = $(uiFilters[i]).attr("oper"); */ filter.operator = $(".filterOperator").filter("[itemId="+filter.itemId+"]").val(); filter.filterType = "A"; for(var j=0; j<uiFilters[i].children.length;j++) filter.values.push($(uiFilters[i].children[j]).attr("dimval")); filter.values=sort_unique(filter.values); reportCollection[portlet].filterList.addFilter(this.copy(filter)); } populateFilterDiv(reportCollection[portlet].filterList.filterList, "filterDiv"); callBackFunc(authToken, reportCollection[portlet], portlet, "filters");// saveKPIContent $("#tmpDialog").dialog("close", "slow"); } function getNewFilter(itemId, itemName, itemColumn){ var htmlstr=getFilterUi( itemId, itemName, itemColumn, "eq", $(".newFilterUi").attr("portlet"), ""); $("#tmpDialog").append(htmlstr); $("#tmpDialog2").dialog("close", "slow"); } function getFilterItem(){ var itemList=printItemList(authToken, "getNewFilter"); var Height=getMheight(); var Width=getMwidth(); $( "#tmpDialog2" ).dialog({ height: (Height-(Height*.5)), width: (Width-(Width*.5)), modal: true, autoResize: true, autoOpen: false, position:['center',100], }); $("#tmpDialog2").html(""+itemList+"").dialog("open"); } function showFilterPage(authToken, portlet, callBackFunc){ var Height=getMheight(); var Width=getMwidth(); $( "#tmpDialog" ).dialog({ title:"Filter Settings Page", height: (Height-(Height*.2)), width: (Width-(Width*.2)), modal: true, resizable: true, autoResize: false, autoOpen: false, position:['center',50], buttons: [ { text: "Apply", click: function() {returnFilters(authToken, portlet, callBackFunc);}}] }); var htmlstr='<div ><span class="newFilterUi" portlet="'+portlet+'" onclick="getFilterItem()">New Filter</span></div>'; var filters=reportCollection[portlet].filterList; var metaDataCollection=createItemList(authToken); var itemColumn=""; if(filters){ var filterList=filters.filterList; for(var i=0; i<filterList.length; i++){ itemColumn=metaDataCollection.getItemById(filterList[i].itemId).Column; htmlstr+=getFilterUi( filterList[i].itemId, filterList[i].itemName, itemColumn, filterList[i].operator, portlet, filterList[i].values); } } $("#tmpDialog").html(htmlstr).dialog("open"); } function openItemConfigurePage(authToken, portlet, callBackFunc){ var itemList=printItemList(authToken, "addItem"); var Height=getMheight(); var Width=getMwidth(); $( "#tmpDialog" ).dialog({ title: "Dimension And Measure Selection Page :", height: (Height-(Height*.3)), width: (Width-(Width*.2)), modal: true, autoResize: true, autoOpen: false, position:['center',100], buttons: [ { text: "Apply", click: function() {returnItems(authToken, portlet, callBackFunc)}}] }); var htmlStr="<div class='itemListDiv ui-widget-content'><h4 class='ui-widget-header'>Item List:</h5>"+itemList+"</div><div class='dimensionDiv ui-widget-content'><h4 class='ui-widget-header'>Selected Dimensions:</h5><table cellpadding=0 cellspacing=0 id=dimensionTableId>"; for(var i=0; i<reportCollection[portlet].dimensionIds.length; i++){ htmlStr+=getItemHtmlRows(reportCollection[portlet].dimensionIds[i], reportCollection[portlet].dimensions[i]); } htmlStr+="</table></div>"; htmlStr+="<div class='measureDiv ui-widget-content'><h4 class='ui-widget-header'>Selected Measures:</h5><table cellpadding=0 cellspacing=0 border=0 id=measureTableId>"; for(i=0; i<reportCollection[portlet].measureIds.length; i++){ htmlStr+=getItemHtmlRows(reportCollection[portlet].measureIds[i], reportCollection[portlet].measures[i]); } htmlStr+="</table></div>"; $("#tmpDialog").html(htmlStr).dialog("open"); applyDnD('#dimensionTableId', '#dashMsg'); applyDnD('#measureTableId', '#dashMsg'); } function getItemHtmlRows(itemId, itemName){ return "<tr class=ui-state-default><td class=drag></td><td class=itemNameTd itemID="+itemId+">"+itemName+"</td><td class=remove></td></tr>"; } function addItem(itemId, itemName, column){ var alreadyPresent=0; if(itemId<10000){ var allTds=$("#dimensionTableId tr td:nth-child(2)"); for(var i=0; i<allTds.length; i++){ if($(allTds[i]).attr("itemId") == itemId) alreadyPresent=1; } if(alreadyPresent == 0){ if($("#dimensionTableId tr:last") && $("#dimensionTableId tr:last").length>0) $("#dimensionTableId tr:last").after(getItemHtmlRows(itemId, itemName)); else $("#dimensionTableId").append(getItemHtmlRows(itemId, itemName)); updateDnD('#dimensionTableId', '#dashMsg'); } } else{ var allTds=$("#measureTableId tr td:nth-child(2)"); for(var i=0; i<allTds.length; i++){ if($(allTds[i]).attr("itemId") == itemId) alreadyPresent=1; } if(alreadyPresent == 0){ if($("#measureTableId tr:last") && $("#measureTableId tr:last").length>0) $("#measureTableId tr:last").after(getItemHtmlRows(itemId, itemName)); else $("#measureTableId").append(getItemHtmlRows(itemId, itemName)); updateDnD("#measureTableId", "#dashMsg"); } } if(alreadyPresent == 1){ alert("Item already added."); } } function returnItems(authToken, portlet, callBackFunc){ var allTds=$("#dimensionTableId tr td:nth-child(2)"); ReportObj=new Report(); if(reportCollection[portlet].filterList) ReportObj.filterList=reportCollection[portlet].filterList; else ReportObj.filterList = new reportFilterList(); ReportObj.dimensionIds=new Array(); ReportObj.dimensionNames=new Array(); for(var i=0; i<allTds.length; i++){ ReportObj.dimensionIds.push($(allTds[i]).attr("itemId")); ReportObj.dimensionNames.push($(allTds[i]).text()); } if(i) $("#confDims").html(ReportObj.dimensionNames.join(", ")); ReportObj.measureIds=new Array(); ReportObj.measureNames=new Array(); allTds=$("#measureTableId tr td:nth-child(2)"); for(i=0; i<allTds.length; i++){ ReportObj.measureIds.push($(allTds[i]).attr("itemId")); ReportObj.measureNames.push($(allTds[i]).text()); } if(i) $("#confMeas").html(ReportObj.measureNames.join(", ")); /*loadNRefreshChart(authToken);*/ callBackFunc(authToken, ReportObj, portlet, "items"); //saveKPIContent $("#tmpDialog").dialog("close", "slow"); } function applyDnD(idClass, msgIdClass){ $(idClass).tableDnD({ onDragClass: "dragClass", onDrop: function(table, row) { } }); } function updateDnD(idClass, msgIdClass){ $(idClass).tableDnDUpdate({ onDragClass: "dragClass", onDrop: function(table, row) { } }); } function appLiveEvents(){ $(".filterClose").live("click", function (ev){ var filterValue = $(this).parent().text(); var itemId = $(this).parent().parent().attr('itemId'); var operator = $(this).parent().parent().attr('oper'); var portlet = $(this).parent().parent().attr('portlet'); $("input:checkbox[itemId="+itemId+"][class=newFilterVal][dimval='"+filterValue+"']").attr("checked",false); $(this).parent().remove(); //this.deleteFilterFromList(reportCollection[portlet], itemId, operator, filterValue); } ); $(".getFilterVal").live("click", function (ev){ var itemId = $(this).parent().parent().attr('itemId'); var itemColumn = $(this).parent().parent().attr('itemColumn'); var cointainerId=$(this).parent().parent().children()[4]; var range= $(this).attr("range"); var where= $(".searchFilterVal").val(); if(where.length>0) where = "like '%"+where+"%'"; var filterValues=getFilterValues(authToken, itemId, range, where); var portlet=$("ul.filterClass").filter("[itemId="+itemId+"]").attr("portlet"); var selectFilterValue=reportCollection[portlet].filterList.getFilterValuesByItemId(itemId); var htmlStr="<ul class=filterClassUnselected>", checked=""; for(var i=0; i<filterValues.length; i++){ if(ifExists(selectFilterValue, filterValues[i])) checked="checked"; else checked=""; if(filterValues[i] == 'NO-DATA-FOUND'){ htmlStr+='<li class="filterContent">'+filterValues[i]+'</li>'; } else{ htmlStr+='<li class="filterContent"><input type="checkbox" class="newFilterVal" itemId="'+ itemId +'" dimval="'+ filterValues[i] +'" '+checked+'>'+convertToDisplay(filterValues[i],itemColumn)+'</li>'; } } htmlStr+="</ul>"; $(cointainerId).html(htmlStr); $(".showFilterVal").trigger("click"); } ); $(".prevFilterVal").live("click", function (ev){ var range=$(this).siblings(".getFilterVal").attr("range"); var rangeArr=range.split("-"); if(rangeArr[0]>=50){ rangeArr[0]=parseInt(rangeArr[0])-50; rangeArr[1]=parseInt(rangeArr[0])+50; } $(this).siblings(".getFilterVal").attr("range", rangeArr[0]+"-"+rangeArr[1]); $(this).siblings(".getFilterVal").trigger("click"); } ); $(".nextFilterVal").live("click", function (ev){ var range=$(this).siblings(".getFilterVal").attr("range"); var rangeArr=range.split("-"); rangeArr[0]= parseInt(rangeArr[0])+50; rangeArr[1]=parseInt(rangeArr[0])+50; $(this).siblings(".getFilterVal").attr("range", rangeArr[0]+"-"+rangeArr[1]); $(this).siblings(".getFilterVal").trigger("click"); } ); $(".searchFilterVal").live("keyup", function (ev){ if(ev.keyCode == 13){ $(this).parent().siblings(".getFilterVal").attr("range", "0-50"); $(this).parent().siblings(".getFilterVal").trigger("click"); } } ); $(".newFilterVal").live("click", function (ev){ var itemId=$(this).attr('itemId'); var dimval=$(this).attr('dimval'); var dispVal=$(this).parent().text(); if(this.checked){ $("ul.filterClass").filter("[itemId="+itemId+"]").append('<li class="filterContent" dimval="'+dimval+'"><span class="selFilterVal">'+dispVal+'</span><span class="filterClose ui-icon ui-icon-close"></span></li>'); } else{ $("ul.filterClass").filter("[itemId="+itemId+"]").children().filter("[dimval='"+dimval+"']").remove(); } } ); $(".newFilterUi").live("click", function(ev){ getFilterItem(); } ); $(".deleteFilter").live("click", function(ev){ var itemId = $(this).attr("itemId"); var portlet = $("ul.filterClass").filter("[itemId="+itemId+"]").attr("portlet"); var operator = $("ul.filterClass").filter("[itemId="+itemId+"]").attr("oper"); var filter= new reportFilter(); filter.itemId =itemId ; filter.operator = operator; reportCollection[portlet].filterList.clearFilter(filter); $("div.filterMain").filter("[itemId="+itemId+"]").remove(); } ); $(".hideFilterVal").live("click", function(ev){ $($(this).parent().parent().children()[4]).hide(); $(this).hide().siblings(".showFilterVal").show(); } ); $(".showFilterVal").live("click", function(ev){ $($(this).parent().parent().children()[4]).show(); $(this).hide().siblings(".hideFilterVal").show(); } ); $(".filterOperator").live("change", function (ev){ var value = this.value; var itemId = $(this).attr("itemId"); validateFilterValues(value, itemId); } ); $(".filterMeasValues").live("keyup", function(){ $(this).parent().attr("dimval", this.value); }); }