OXIESEC PANEL
- Current Dir:
/
/
home
/
cubot
/
docroot
/
utils
/
js
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/14/2022 11:03:49 AM
rwxr-xr-x
📄
chartPrefs.js
14.06 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
charts_jqplot.js
24.92 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
display.js
10.25 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
dtree.js
15.2 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
filterClass.js
4.65 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
jquery-1.8.3.js
261.46 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
jquery-ui.js
439.61 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
jquery.dataTables.min.js
224.61 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
jquery.js
69.18 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
jquery.json-2.2.js
2.18 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
main.js
22.96 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
main.js_back
13.74 KB
08/14/2022 11:03:49 AM
rw-r--r--
📁
plugins
-
08/14/2022 11:03:49 AM
rwxr-xr-x
📄
tableChart.js
2.55 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
tags
98.34 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
utils.js
23.33 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
ws.app.js
17.02 KB
08/14/2022 11:03:49 AM
rw-r--r--
📄
ws.core.js
33.32 KB
08/14/2022 11:03:48 AM
rw-r--r--
📄
ws.lib.js
8.12 KB
08/14/2022 11:03:49 AM
rw-r--r--
Editing: main.js_back
Close
/* * Function to create report object from items (Dimensions and measures ) */ function createReportFromItems(authToken){ /* Creating item list tree */ var metaDataCollection=createItemList(authToken); var dispObj=new displayOptions(); var callback=callbackReportData; /*Should be a function name which you want to call after getting data */ var ReportObj = new Report(); /* Set the graph type you want to display */ ReportObj.setgtype("L"); /* Set the report|graph title */ ReportObj.settitle("Report Title"); /* Set Graph width. Currently we are not setting width of graph, its depends on the width of div */ ReportObj.setwidth("400"); /* Set Graph Height. Currently we are not setting height of graph, its depends on the height of div */ ReportObj.setheight("400"); /* Set graph layout [ Normal | Crosstab ] */ ReportObj.setlayout("Normal"); /* Set topx records you want to display in graph */ ReportObj.settopn(-1); /* Get the meta data object for the item id 450 */ var item=metaDataCollection.getItemById("450"); /* Add dimension to the report */ ReportObj.addDimensionToReport(item); //item=metaDataCollection.getItemById("120"); //ReportObj.addDimensionToReport(item); item=metaDataCollection.getItemById("10120"); ReportObj.addMeasureToReport(item); item=metaDataCollection.getItemById("10130"); ReportObj.addMeasureToReport(item); /* Create filter and add to global filter list (G_FilterList) so that we can use in other reports . * If you want to create local filter which is for current report use following approach * var filterList = new reportFilterList(); * var filter= new reportFilter(); * filter.itemId = "110"; filter.itemName="Year"; filter.operator = "eq"; filter.filterType = ''; filter.values.push("2008"); * filterList.addFilter(filter); */ var filter= new reportFilter(); filter.itemId = "110"; filter.itemName="Year"; filter.operator = "eq"; filter.filterType = ''; filter.values.push("2008"); G_FilterList.addFilter(filter); filter= new reportFilter(); filter.itemId = "110"; filter.itemName="Year"; filter.operator = "eq"; filter.filterType = 'C'; filter.values.push("2009"); G_FilterList.addFilter(filter); /*filter= new reportFilter(); filter.itemId = "10120"; filter.itemName="Units"; filter.operator = "gt"; filter.filterType = 'A'; filter.values.push("7770"); G_FilterList.addFilter(filter);*/ /* Apply dimension filters */ //ReportObj.addDimensionFilters("[130(eq)1][130(eq)2]"); /* Add all dimension filters added into report*/ ReportObj.addDimensionFilters(G_FilterList.getFilterString("D")); //ReportObj.setmeasureFilters(measFiltArray); /* Apply measure filters */ //ReportObj.addMeasureFilters("[10120(D-gt)20000]"); /* Add all measure filters added into report*/ ReportObj.addMeasureFilters(G_FilterList.getFilterString("M")); /* Make proper Names for measures and dimensions. This function will put the item names properly */ //refreshDimMeasNames(ReportObj, metaDataCollection); /* displayObj is a global blank object available in display.js file */ displayObj.RDsetGeneral(); displayObj.RD.General.divId="info"; ReportObj.dispObj=displayObj; ReportObj.setsystitle(ReportObj.measures.join(',')+ ' by '+ ReportObj.dimensions.join(',')); /*Required for Table Chart */ ReportObj.setsubtitle(G_FilterList.getReadableFilterString('D') + G_FilterList.getReadableFilterString('M')); /* Create report by report object */ createReport(authToken, false, callback, ReportObj); } function createReportFromReportList(authToken){ /* * Get report list for user 'ceo'. We are passing 'ceo' to create personal folder easily */ var reportMetaDataCollection=createReportList(authToken, "ceo"); /* * Get me the report object for report id '100029' from personal folder. * If you will not pass folder type, it will take little more time to search, but will return the report object if its in the list. */ var reportMetaData=reportMetaDataCollection.getReportById("100118", "Personal"); /* Set display options */ displayObj.RDsetGeneral(); displayObj.RD.General.divId="info"; /* function to return report data using report meta data object */ populateReportFromID(authToken, reportMetaData, callbackReportData, displayObj); } function callbackReportData(reportDataArray, ReportObj){ /* You can play with the data and report object before passing this to charting functions */ //ReportObj.setgtype("L"); /* Modify graph type */ /* Function to display reports after formatting */ showReport( reportDataArray, ReportObj); } function showReport( reportDataArray, ReportObj){ /* Modify data to crosstab format if report having 2 dimension, 1 measure , not a topx report, normal report and graph type in (bar|column|combo) */ if( (ReportObj.gtype == "B" || ReportObj.gtype == "C" || ReportObj.gtype == "N") && ReportObj.gettopn() <0 && ReportObj.getlayout() == "Normal" && ReportObj.getmeasures().length == 1 && ReportObj.getdimensions().length == 2 && reportDataArray.length>0){ reportDataArray=makeXtab(reportDataArray); ReportObj.setlayout("CrossTab"); } if(typeof reportDataArray == undefined || reportDataArray.length<2){ $('div#'+ReportObj.dispObj.RD.General.divId).html("No Data Found"); return false; } /* Format report data for time related dimensions like moth,fin month, quarter, fin quartes ... */ formatReportData(reportDataArray, ReportObj.getdimmeta(), ReportObj.getlayout(), ReportObj.gettopn()); /* Revert row column in the report data. Follow logic followed in CUBOT-Arun :) */ if(ReportObj.gtype != "T" && ReportObj.getlayout() == "CrossTab" && ReportObj.getmeasures().length == 1 && ReportObj.getdimensions().length == 2 && reportDataArray.length>0){ reportDataArray=revertRowColumn(reportDataArray, ReportObj.getmeasures()[0]); /* Swaping dimensions */ var tmpArray=new Array(2); tmpArray[0]=ReportObj.getdimensions()[1]; tmpArray[1]=ReportObj.getdimensions()[0]; ReportObj.setdimensions(tmpArray); reportDataArray[0][0]=tmpArray[0]; } /* Add report data into the report object */ ReportObj.setdata(reportDataArray); /* Call the chart libray included in the index.html file.(charts_jqplot.js or other chart library) */ //drawCharts(ReportObj, ReportObj.dispObj.RD.General.divId); drawChartsSVG(ReportObj, ReportObj.dispObj.RD.General.divId); } /* Global authToken variable to store users sessionId */ var authToken=""; /* Main function to lunch the application */ function startApp(){ /* Get RXSESSION value from cookie */ authToken= getCookie("RXSESSION"); if(authToken == undefined || authToken.length<5){ /* Get users session id using credentials like : db=sampledb, userName='ceo' and password='ceo' */ authToken=loginCubot("sampledb", "ceo", "ceo"); /* Set the RXSESSION in the cookie */ setCookie("RXSESSION",authToken,"1"); /* Getting users properties like userId, userName, userLanguage [English, Japanese, etc] */ //getUserProperties(authToken); } /* Create report using items (Dimensions and measures) */ //createReportFromItems(authToken); /* Create report using saved report id */ createReportFromReportList(authToken); //printItemList(authToken); //printReportList(authToken); } function stopApp(authToken){ /* Log out from App.*/ //logoutCubot(authToken); /* Log out from App. authToken will not be valid , so delete cookie */ // setCookie("RXSESSION","-1", null); } function printItemList(authToken){ var metaDataCollection=createItemList(authToken); var item=""; a = new dTree('a'); a.config.useStatusText=true; a.config.closeSameLevel=false; a.config.useCookies=false; a.config.target=""; //add(id, pid, name, url, url_addnew, url_sort, url_delete, role, table, title, target, icon, iconOPen, isopen); a.add("0", "0", "Dimension"); for(var i=0; i<metaDataCollection.dimensionTree.length; i++){ item = metaDataCollection.dimensionTree[i]; a.add(item.Id, item.ParentId, item.Name); for(var j=0; j<metaDataCollection.dimensionTree[i].items.length; j++){ item = metaDataCollection.dimensionTree[i].items[j]; a.add(item.Id, item.ParentId, item.Name); } } a.add("10000", "10000", "Measures"); for(var i=0; i<metaDataCollection.measureTree.length; i++){ item = metaDataCollection.measureTree[i]; a.add(item.Id, item.ParentId, item.Name); for(var j=0; j<metaDataCollection.measureTree[i].items.length; j++){ item = metaDataCollection.measureTree[i].items[j]; a.add(item.Id, item.ParentId, item.Name); } } a.add("50000", "50000", "Targets"); for(var i=0; i<metaDataCollection.targetTree.length; i++){ item = metaDataCollection.targetTree[i]; a.add(item.Id, item.ParentId, item.Name); for(var j=0; (typeof metaDataCollection.targetTree[i].items != "undefined" && j<metaDataCollection.targetTree[i].items.length); j++){ item = metaDataCollection.targetTree[i].items[j]; a.add(item.Id, item.ParentId, item.Name); } } document.write(a); } function printReportList(){ var reportMetaDataCollection = createReportList(authToken, "ceo"); var report=""; a = new dTree('a'); a.config.useStatusText=true; a.config.closeSameLevel=false; a.config.useCookies=false; a.config.target=""; //add(id, pid, name, url, url_addnew, url_sort, url_delete, role, table, title, target, icon, iconOPen, isopen); a.add("0", "0", "Report List"); var reportArr = reportMetaDataCollection.PersonalReports ; for(var i=0; i<reportArr.length; i++){ folder= reportArr[i]; a.add(folder.Id, folder.ParentId, folder.Title); for(var j=0; j<folder.reports.length; j++){ report = folder.reports[j]; a.add(report.Id, report.ParentId, report.Title); } } reportArr = reportMetaDataCollection.SharedReports ; for(var i=0; i<reportArr.length; i++){ folder= reportArr[i]; a.add(folder.Id, folder.ParentId, folder.Title); for(var j=0; j<folder.reports.length; j++){ report = folder.reports[j]; a.add(report.Id, report.ParentId, report.Title); } } document.write(a); } //var parseDate = d3.time.format("%m-%d-%Y").parse; var parseDate = d3.time.format("%Y/%m/%d").parse; var P = new page(); function drawChartsSVG(ReportObj, divId){ ReportObj.data.splice(0,1); var ndim=ReportObj.getdimensions().length; for(i=ndim; i<ReportObj.data[0].length; i++){ for(var j=0; j<ReportObj.data.length; j++) ReportObj.data[j][i] = +(ReportObj.data[j][i]); } //ReportObj.data=ReportObj.data.slice(0, 5); P.data = ReportObj.data; //Used incase if chart data is not been set /* svgSpec initialization */ var svgSpec = {}; svgSpec.dims = {}; svgSpec.dims.width = 1350; svgSpec.dims.height = 770; svgSpec.dims.top = 0; svgSpec.dims.right = 0; svgSpec.dims.bottom = 0; svgSpec.dims.left = 0; svgSpec.container = {}; svgSpec.container.id = "#" + divId; svgSpec.z = 1; /* chartSpec initialization */ var chart1Spec = {}; chart1Spec.dims = {}; chart1Spec.dims.width = 600; chart1Spec.dims.height = 300; chart1Spec.dims.top = 10; chart1Spec.dims.right = 0; chart1Spec.dims.bottom = 0; chart1Spec.dims.left = 55; chart1Spec.xcol = "parseDate(d[0])";// If dimension is date //chart1Spec.xcol = "d[0]"; chart1Spec.xtitle = ReportObj.getdimensions().join(','); chart1Spec.xscale = d3.time.scale().range([0, chart1Spec.dims.width]);// If dimension is date //chart1Spec.xscale = d3.scale.ordinal() .rangeRoundBands([0, chart1Spec.dims.width],.2); chart1Spec.ycol = "d[" + 1 + "]"; chart1Spec.ytitle = ReportObj.getmeasures()[0]; chart1Spec.title = ReportObj.gettitle(); chart1Spec.yscale = d3.scale.linear(); chart1Spec.type = decodeFormat(ReportObj.getgtype()); chart1Spec.classname = decodeFormat(ReportObj.getgtype()); chart1Spec.bgbox = false; chart1Spec.data = ReportObj.data; chart1Spec.showxgrid = "xgridline"; chart1Spec.extentdomain = true;// If dimension is date //chart1Spec.extentdomain = false; //chart1Spec.callback=refreshChart; chart1Spec.id = "c1"; chart1Spec.z = "1"; var chart2Spec = {}; chart2Spec.dims = {}; chart2Spec.dims.width = 600; chart2Spec.dims.height = 300; chart2Spec.dims.top = 10; chart2Spec.dims.right = 0; chart2Spec.dims.bottom = 0; chart2Spec.dims.left = 710; chart2Spec.xcol = "parseDate(d[0])"; // If dimension is date //chart2Spec.xcol = "d[0]"; chart2Spec.xtitle = ReportObj.getdimensions().join(','); chart2Spec.xscale = d3.time.scale().range([0, chart2Spec.dims.width]); // If dimension is date //chart2Spec.xscale = d3.scale.ordinal() .rangeRoundBands([0, chart1Spec.dims.width],.2); chart2Spec.ycol = "d[2]"; chart2Spec.ytitle = ReportObj.getmeasures()[1]; chart2Spec.title = ReportObj.gettitle(); chart2Spec.yscale = d3.scale.linear(); chart2Spec.type = decodeFormat(ReportObj.getgtype()); chart2Spec.classname = decodeFormat(ReportObj.getgtype()); chart2Spec.bgbox = false; chart2Spec.data = ReportObj.data; chart2Spec.showxgrid = "xgridline"; chart2Spec.extentdomain = true;// If dimension is date //chart2Spec.extentdomain = false; chart2Spec.id = "c2"; chart2Spec.z = "1"; var brush = {}; brush.dims = {}; brush.dims.width = 1250; brush.dims.height = 60; brush.dims.top = 570; brush.dims.right = 0; brush.dims.bottom = 0; brush.dims.left = 50; brush.xcol = "parseDate(d[0])"; // If dimension is date // brush.xcol = "d[0]"; brush.xtitle = ReportObj.getdimensions().join(','); brush.xscale = d3.time.scale().range([0, brush.dims.width]); // If dimension is date //brush.xscale = d3.scale.ordinal() .rangeRoundBands([0, chart1Spec.dims.width],.2); brush.ycol = "d[2]"; brush.ytitle = ReportObj.getmeasures()[1]; brush.title = ReportObj.gettitle(); brush.yscale = d3.scale.linear(); brush.type = "area"; brush.classname = "brushplot"; brush.bgbox = false; brush.brushfunc = 'brushing'; brush.extentdomain = true; // If dimension is date //brush.extentdomain = false; brush.id = "b1"; brush.z = "1"; var brushSpec = {}; brushSpec.brushchart = "b1"; brushSpec.linkedcharts = new Array("c1", "c2"); init(P, svgSpec, [chart1Spec,chart2Spec, brush], [brushSpec]); drawCharts(P); }