OXIESEC PANEL
- Current Dir:
/
/
home
/
cubot
/
docroot
/
showcase
/
js
/
jpolite
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
12/31/2022 06:53:36 AM
rwxr-xr-x
📄
exportGraphAsImage.js
9.11 KB
08/14/2022 11:05:24 AM
rw-r--r--
📄
graph.drill.js
194 bytes
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpolite.core.js
15.75 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpolite.ext.js
115.09 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpolite.ext.js_09jan18
105.94 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpolite.ext.js_14Dec2019
110.24 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpolite.ext.js_27.22.17
105.91 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jpoliteAll.js
188.35 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
jqModal-1.4.0.js
10.86 KB
08/14/2022 11:05:22 AM
rw-r--r--
📄
jqModal.js
3.37 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
json.js
23.93 KB
08/14/2022 11:05:23 AM
rw-r--r--
📄
s.log
6.61 KB
08/14/2022 11:05:23 AM
rw-r--r--
Editing: json.js
Close
multiDash="", reqState=-1, dashIdCache=-1, pageIdCache=-1, defaultDashIdCache=-1; //var json='[{"id":100000,"name":"Dashboard-1","Owner":{"id":"ceo","Name":"Chief"},"Options":{},"pages":[{"id":"100001","name":"D1-Page1","layout":"L_4_0","Options":{},"reports":[{"id":100002,"ReportId":"100070","DisplayType":"T","Position":"c1","ReportOptions":{"linkToDashboardPage":{"Dashboard":"","PageId":""}},"DisplayOptions":{}},{"id":100003,"ReportId":"100065","DisplayType":"P","Position":"c2","ReportOptions":{"linkToDashboardPage":{"Dashboard":"2","PageId":"t1"}},"DisplayOptions":{}}]}]}]'; var pageLoginFilterObj = {}; /* * Class defined to work on dashcollection json string. */ function dashCollection (jsonArray){ this.dashObj=jsonArray; this.defaultDashboard=-1; this.selectedDefaultDashboard=0; this.defaultPage=-1; this.isShared=-1; this.setDefaultDash=setDefaultDash; this.setDefaultPage=setDefaultPage; this.setReportDashLink=setReportDashLink; this.setReportDisplayType=setReportDisplayType; this.setReportPosition=setReportPosition; this.setReportDisplayOptions=setReportDisplayOptions; this.setReportId=setReportId; this.setPageLayout=setPageLayout; this.getDashboards=getDashboards; this.getCurrentPages=getCurrentPages; this.getDashboardPages=getDashboardPages; this.getAllReports=getAllReports; this.getReportLayout=getReportLayout; this.getReportDashLink=getReportDashLink; this.getReportIdById=getReportIdById; this.getReportDisplayOptions=getReportDisplayOptions; this.getSelectedDashId=getSelectedDashId; this.getSelectedPageId=getSelectedPageId; this.getPageLayout=getPageLayout; this.getDashNameById=getDashNameById; this.getPageNameById=getPageNameById; this.getPageById=getPageById; this.adddashboard=adddashboard; this.addPage2dashboard=addPage2dashboard; this.addReport2Page=addReport2Page; this.removeDashboard=removeDashboard; this.removePageFromDashboard=removePageFromDashboard; this.removeReportFromPage=removeReportFromPage; this.removeReportDashLinkByPage=removeReportDashLinkByPage; this.removeReportDashLinkByDash=removeReportDashLinkByDash; this.renameDashboard=renameDashboard; this.renamePage=renamePage; } function setDefaultDash(dashID){ for(var i=0; i<this.dashObj.length; i++){ if(this.dashObj[i].id == dashID){ this.defaultDashboard=i; break; } } } function setDefaultPage(pageID){ for(var i=0; i<this.dashObj[this.defaultDashboard].pages.length; i++){ if(this.dashObj[this.defaultDashboard].pages[i].id == pageID){ this.defaultPage=i; break; } } } function setReportDashLink(id, linkDashId, linkPageId){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports[i].ReportOptions.linkToDashboardPage.Dashboard=linkDashId; reports[i].ReportOptions.linkToDashboardPage.PageId=linkPageId; //console.log("setReportDashLink"); if(this.isShared != 1) savePages(getSelectedDashId(), getSelectedPageId()); break; } } } function setReportDisplayType(id, dispType){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports[i].DisplayType=dispType; //console.log("setReportDisplayType"); if(this.isShared != 1) savePages(getSelectedDashId(), getSelectedPageId()); break; } } } function setReportId(id, reportId){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports[i].ReportId=reportId; if(this.isShared != 1) savePages(getSelectedDashId(), getSelectedPageId()); break; } } } function setReportPosition(id, pos){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports[i].Position=pos; break; } } } function setReportDisplayOptions(id, RD){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports[i].DisplayOptions=RD; if(this.isShared != 1) savePages(getSelectedDashId(), getSelectedPageId()); break; } } } function setPageLayout(pageId, layout){ for(var i=0; i<this.dashObj[this.defaultDashboard].pages.length; i++){ if(this.dashObj[this.defaultDashboard].pages[i].id == pageId){ this.dashObj[this.defaultDashboard].pages[i].layout=layout; //console.log("setPageLayout"); if(this.isShared != 1) savePages(getSelectedDashId(), getSelectedPageId()); break; } } } function getPageLayout(){ return this.dashObj[this.defaultDashboard].pages[this.defaultPage].layout; } function getDashboards(){ var dashboardArray=new Array(); for(var i=0; i<this.dashObj.length; i++){ dashboardArray.push(this.dashObj[i].id+':'+this.dashObj[i].name+':'+this.dashObj[i].Owner.id); } return dashboardArray; } function getCurrentPages(){ //TABS+COLUMNLAYOUT var pageArray=new Array(); var pages=this.dashObj[this.defaultDashboard].pages; for(var i=0; i<pages.length; i++) pageArray.push(pages[i].id+':'+pages[i].name+':'+pages[i].layout); return pageArray; } function getDashboardPages(dashId){ var pageArray=new Array(), i=0; var pages=""; for( i=0; i<this.dashObj.length; i++){ if(this.dashObj[i].id == dashId){ pages=this.dashObj[i].pages; break; } } for(var i=0; i<pages.length; i++) pageArray.push(pages[i].id+':'+pages[i].name+':'+pages[i].layout); return pageArray; } function getAllReports(){ //MODULES var reportArray=new Array(); var pages=this.dashObj[this.defaultDashboard].pages; for(var i=0; i<pages.length; i++){ for(var j=0; pages[i].reports && j<pages[i].reports.length; j++){ reportArray.push(pages[i].reports[j].id+'@'+pages[i].reports[j].ReportId+':'+pages[i].reports[j].DisplayType); } } return reportArray; } function getReportLayout(){ //LAYOUT var layoutArray=new Array(); var pages=this.dashObj[this.defaultDashboard].pages; var tmpstr=""; for(var i=0; i<pages.length; i++){ tmpstr=pages[i].id+'@'; for(var j=0; pages[i].reports && j<pages[i].reports.length; j++){ if(j>0) tmpstr+=','; tmpstr+=pages[i].reports[j].id+':'+pages[i].reports[j].Position; if(pages[i].reports[j].ReportId.indexOf('.htm')>-1) tmpstr+='::B'; } layoutArray.push(tmpstr); } return layoutArray; } function getReportDashLink(id){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; var DashIdPageId=new Array(); for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id && typeof reports[i].ReportOptions.linkToDashboardPage.Dashboard != 'undefined'){ DashIdPageId.push(reports[i].ReportOptions.linkToDashboardPage.Dashboard); DashIdPageId.push(reports[i].ReportOptions.linkToDashboardPage.PageId); return DashIdPageId; } } return ""; } function getReportIdById(id){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ var DashIdPageId=new Array(); if(reports[i].id == id){ return reports[i].ReportId; } } return ""; } function getReportDisplayOptions(id){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ return reports[i].DisplayOptions; } } return {}; } function getSelectedDashId(){ if(multiDash.dashObj[multiDash.defaultDashboard]) return multiDash.dashObj[multiDash.defaultDashboard].id; else return -1; } function getSelectedPageId(){ if(multiDash.dashObj[multiDash.defaultDashboard].pages[multiDash.defaultPage]) return multiDash.dashObj[multiDash.defaultDashboard].pages[multiDash.defaultPage].id; else return -1; } function getDashNameById(dashId){ for(var i=0; i<this.dashObj.length; i++){ if(this.dashObj[i].id == dashId){ return this.dashObj[i].name; } } return ""; } function getPageById(pageId){ for(var i=0; i<this.dashObj.length; i++){ for(var j=0; j<this.dashObj[i].pages.length; j++){ if(this.dashObj[i].pages[j].id == pageId){ return this.dashObj[i].pages[j]; } } } return ""; } function getPageNameById(pageId){ for(var i=0; i<this.dashObj.length; i++){ for(var j=0; j<this.dashObj[i].pages.length; j++){ if(this.dashObj[i].pages[j].id == pageId){ return this.dashObj[i].pages[j].name; } } } return ""; } function adddashboard(dashId, dashName, ownerId, ownerName){ var dash=eval('({ "id":'+ dashId +', "name": "'+ dashName +'", "Owner": { "id" : "'+ownerId+'", "Name": "'+ownerName+'" },"Options": "","pages": []})'); this.dashObj.push(dash); saveDashboardsWithoutPages(dashId); } function addPage2dashboard(pageId, pageName){ var page=eval('({ "id": "'+pageId+'", "name": "'+pageName+'", "layout": "L_2_0", "Options": { } , "reports": []})'); this.dashObj[this.defaultDashboard].pages.push(page); saveOneDashboard(getSelectedDashId()); } function addReport2Page(id, ReportId, DisplayType, Position, reportPosition){ var report=eval('({ "id":'+ id +', "ReportId": "'+ReportId+'", "DisplayType": "'+DisplayType+'", "Position": "'+Position+'", "ReportOptions": { "linkToDashboardPage": { } } , "DisplayOptions": { } })'); var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; if(reportPosition > -1 && reports){//Enhancement:1170 reports.splice(reportPosition, 0, report); for(var i=0; i<reports.length; i++){ if(i%2){ reports[i].Position='c2'; } else{ reports[i].Position='c1'; } } } else{ reports.push(report); } //console.log("addReport2Page"); savePages(getSelectedDashId(), getSelectedPageId()); } /* * Function to remove dashboard * dashId: Dashboard Id */ function removeDashboard(dashId){ var reloadDash=false; if(this.dashObj[this.defaultDashboard].id == dashId) reloadDash=true; for(var i=0; i<this.dashObj.length; i++){ if(this.dashObj[i].id == dashId){ removeDashboardFromDB(dashId); this.dashObj.splice(i,1); this.removeReportDashLinkByDash(dashId); saveDashboardCollection(); break; } } if(reloadDash){ if(this.dashObj.length>0){ this.defaultDashboard=0; this.defaultPage=0; } clearGraphs(); initDashboard(0); } else{ //Seek default dashboard pointer if(this.defaultDashboard >= i) this.defaultDashboard--; } } /* * Remove page from dashboard * pageId: Page ID */ function removePageFromDashboard(pageId){ for(var i=0; i<this.dashObj[this.defaultDashboard].pages.length; i++){ if(this.dashObj[this.defaultDashboard].pages[i].id == pageId){ deletePagesFromDB( getSelectedDashId(), pageId); this.dashObj[this.defaultDashboard].pages.splice(i,1); this.removeReportDashLinkByPage(pageId); saveDashboard(getSelectedDashId()); saveDashPage(getSelectedDashId()); break; } } } /* *Remove report having ID as id */ function removeReportFromPage(id){ var reports=this.dashObj[this.defaultDashboard].pages[this.defaultPage].reports; for(var i=0; reports && i<reports.length; i++){ if(reports[i].id == id){ reports.splice(i,1); //console.log("removeReportFromPage"); savePages(getSelectedDashId(), getSelectedPageId()); break; } } } /* * Remove report dashlink by page id. * This is required when you are deleting a page. Pass the deleted page id to check if any report is linking to this page. */ function removeReportDashLinkByPage(linkPageId){ var numDash=0, numPages=0, numReports=0; for(numDash=0; numDash<this.dashObj.length; numDash++){ for(numPages=0; numPages<this.dashObj[numDash].pages.length; numPages++){ for(numReports=0; numReports<this.dashObj[numDash].pages[numPages].reports && numReports<this.dashObj[numDash].pages[numPages].reports.length; numReports++){ if(this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.PageId == linkPageId){ this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.PageId=''; this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.Dashboard=''; } } } } } /* * Remove report dashlink by dashboard id. * This is required when you are deleting a dashboard. Pass the deleted dashboard id to check if any report is linking to the page in the dashboard. */ function removeReportDashLinkByDash(linkDashId){ var numDash=0, numPages=0, numReports=0; for(numDash=0; numDash<this.dashObj.length; numDash++){ for(numPages=0; numPages<this.dashObj[numDash].pages.length; numPages++){ for(numReports=0; numReports<this.dashObj[numDash].pages[numPages].reports && numReports<this.dashObj[numDash].pages[numPages].reports.length; numReports++){ if(this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.Dashboard == linkDashId){ this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.PageId=''; this.dashObj[numDash].pages[numPages].reports[numReports].ReportOptions.linkToDashboardPage.Dashboard=''; } } } } } function renameDashboard(id, newName){ for(var i=0; i<this.dashObj.length; i++){ if(this.dashObj[i].id == id){ this.dashObj[i].name=newName; saveDashboard(id); break; } } } function setPageLoginFilter(id, flag){ for(var i=0; i<this.dashObj[this.defaultDashboard].pages.length; i++){ if(this.dashObj[this.defaultDashboard].pages[i].id == id){ } } } function renamePage(id, newName){ for(var i=0; i<this.dashObj[this.defaultDashboard].pages.length; i++){ if(this.dashObj[this.defaultDashboard].pages[i].id == id){ if(!this.dashObj[this.defaultDashboard].pages[i].layout){ var pageStr=getContent("Page", id); this.dashObj[this.defaultDashboard].pages[i]=$.evalJSON(pageStr); } this.dashObj[this.defaultDashboard].pages[i].name=newName; //console.log("renamePage"); if(this.isShared != 1){ saveDashboard(getSelectedDashId()); savePages(getSelectedDashId(), id); } break; } } return true; } function print(){ alert($.toJSON(multiDash)); /* alert("_shared:"+$.toJSON(_shared)); alert("_columnLayout:"+$.toJSON(_columnLayout)); alert("_modules:"+$.toJSON(_modules)); alert("_moduleLayout:"+$.toJSON(_moduleLayout)); alert("session_columnLayout:"+$.toJSON(session_columnLayout));*/ } /* *Copy the selected dashboard to personal space. We are saving the contents using new unique ids. Now the content no longer belongs to shared by user. *Now content became personal, So that user can edit contents. */ function copyToPersonalSpace(){ var dashboards=new Array(), dashboardsShared=new Array(); var json="", i=0; for(i=0; i<multiDash.dashObj.length; i++){ if(multiDash.defaultDashboard != i) continue; multiDash.dashObj[i].id =getNextSequenceId(); dashboardsShared.push(multiDash.dashObj[i].id); multiDash.dashObj[i].Owner.id=userId; multiDash.dashObj[i].Owner.Name=userName; for(var j=0; j<multiDash.dashObj[i].pages.length; j++){ multiDash.dashObj[i].pages[j].id=getNextSequenceId(); for(var k=0; k<multiDash.dashObj[i].pages[j].reports.length; k++){ multiDash.dashObj[i].pages[j].reports[k].id=getNextSequenceId(); multiDash.dashObj[i].pages[j].reports[k].ReportOptions.linkToDashboardPage.Dashboard=""; multiDash.dashObj[i].pages[j].reports[k].ReportOptions.linkToDashboardPage.PageId=""; } } break; } if(dashboardsShared.length<1) return; json=getPersonalDashboardJson(); saveOneDashboard(dashboardsShared[0]); if(json.length > 0){ for(i=0; i<json.length; i++){ dashboards.push(json[i].id); } dashboards=dashboards.concat(dashboardsShared); saveContent("DashboardCollection", 0, dashboards.join(':')); } else{ saveContent("DashboardCollection", 0, dashboardsShared[0]); } reqState=0;//Request for Personal Json clearGraphs(); initDashboard(0); if(multiDash && multiDash.dashObj.length>0) multiDash.setDefaultDash(dashboardsShared[0]); } function saveDashboardCollection(){ var dashboards=new Array(); for(i=0; i<multiDash.dashObj.length; i++){ dashboards.push(multiDash.dashObj[i].id) } if(dashboards.length>0) saveContent("DashboardCollection", 0, dashboards.join(':')); else removeContent("DashboardCollection", 0); } //Use when: Edit Dashboard function saveDashboard(dashId){ for(i=0; i<multiDash.dashObj.length; i++){ if((dashId>0) && (dashId != multiDash.dashObj[i].id)) continue; var newDash = jQuery.extend(true, {}, multiDash.dashObj[i]); for(j=0; j<multiDash.dashObj[i].pages.length; j++){ //newDash.pages[j]="@#"+multiDash.dashObj[i].pages[j].id; newDash.pages[j]={ id:multiDash.dashObj[i].pages[j].id, name:multiDash.dashObj[i].pages[j].name } } saveContent("Dashboard", newDash.id, $.toJSON(newDash)); } } function saveDashPage(dashId){ var dashPages=new Array(); for(i=0; i<multiDash.dashObj.length; i++){ if((dashId>0) && (dashId != multiDash.dashObj[i].id)) continue; dashPages.splice(0,dashPages.length); for(j=0; j<multiDash.dashObj[i].pages.length; j++){ dashPages.push(multiDash.dashObj[i].pages[j].id) } if(dashPages.length > 0) saveContent("DashPage", multiDash.dashObj[i].id, dashPages.join(':')); else removeContent("DashPage", dashId); } } //Use when: Add | Delete |Edit Reports function savePages(dashId, pageId){ for(i=0; i<multiDash.dashObj.length; i++){ if((dashId>0) && (dashId != multiDash.dashObj[i].id)) continue; for(j=0; j<multiDash.dashObj[i].pages.length; j++){ if((pageId>0) && (pageId != multiDash.dashObj[i].pages[j].id)) continue; if(multiDash.dashObj[i].pages[j].layout){ saveContent("Page", multiDash.dashObj[i].pages[j].id, $.toJSON(multiDash.dashObj[i].pages[j])); } } } } //Use when: Add | Delete Dashboard function saveCompleteDashboards(){ //Dashid == -1 means save all saveDashboardCollection(); saveDashboard(-1); saveDashPage(-1); //console.log("saveCompleteDashboards"); savePages(-1, -1); } //Use when: Add | Delete Pages function saveOneDashboard(dashId){ saveDashboard(dashId); saveDashPage(dashId); //console.log("saveOneDashboard"); savePages(dashId, -1); } //Use when: Edit Dashboard function saveDashboardsWithoutPages(dashId){ saveDashboardCollection(); saveDashboard(dashId); saveDashPage(dashId); } function deletePagesFromDB( dashId, pageId){ for(i=0; i<multiDash.dashObj.length; i++){ if((dashId>0) && (dashId != multiDash.dashObj[i].id)) continue; for(j=0; j<multiDash.dashObj[i].pages.length; j++){ if((pageId>0) && (pageId != multiDash.dashObj[i].pages[j].id)) continue; removeContent("Page", multiDash.dashObj[i].pages[j].id); shareObject(sessionid, multiDash.dashObj[i].pages[j].id, 'P', "Users=All;Groups=All", 'Remove'); } } } function removeDashboardFromDB(dashId){ for(var i=0; i<multiDash.dashObj.length; i++){ if((dashId>0) && (dashId != multiDash.dashObj[i].id)) continue; removeContent("DashPage", multiDash.dashObj[i].id); removeContent("Dashboard", multiDash.dashObj[i].id); shareObject(sessionid, multiDash.dashObj[i].id, 'D', "Users=All;Groups=All", 'Remove'); } deletePagesFromDB( dashId, -1); } function getDashboardJSON(){ if(multiDash && multiDash.dashObj.length>0 && reqState != -1 && multiDash.isShared == reqState) return; var defaultDashIndex = 0; if(typeof reqState == 'undefined' || reqState == -1){ var defaultDashboardId = getSelectedDashID(); var sharedJson = "", personalJson = ""; if(defaultDashboardId){ var foundDefaultDash = false; personalJson = getPersonalDashboardJson(); for(var i=0;i<personalJson.length;i++){ if(defaultDashboardId == personalJson[i].id){ reqState = 0; defaultDashIndex = i; json = personalJson; foundDefaultDash = true; break; } } if(!foundDefaultDash){ sharedJson = getSharedDashboardJson(); for(var i=0;i<sharedJson.length;i++){ if(defaultDashboardId == sharedJson[i].id){ reqState = 1; defaultDashIndex = i; json = sharedJson; break; } } } }else{ json=getPersonalDashboardJson(); if(json.length<1){ json=getSharedDashboardJson(); if(json.length>0) reqState=1; }else{ reqState=0; } } } else if(reqState == 0){ json=getPersonalDashboardJson(); if(json == "ERROR") return; } else if(reqState == 1){ json=getSharedDashboardJson(); if(json.length<1){ alert(getlabel("No Shared content found for the user.")); return; } } if(json.length<1){ json=$.evalJSON('[{"id":'+getNextSequenceId()+',"name":"Dashboard1","Owner":{"id":"'+ userId +'","Name":"'+ userName+'"},"Options":{},"pages":[]}]'); //reqState=0; } if(multiDash){ multiDash.dashObj=json; //multiDash.defaultDashboard=0; //multiDash.defaultPage=0; multiDash.isShared=reqState; } else{ multiDash=new dashCollection(json); if(dashIdCache > 0) multiDash.setDefaultDash(dashIdCache); else{ multiDash.defaultDashboard=0; } if(pageIdCache > 0) multiDash.setDefaultPage(pageIdCache); else multiDash.defaultPage=0; multiDash.isShared=reqState; } multiDash.defaultDashboard = defaultDashIndex; if(multiDash.dashObj[multiDash.defaultDashboard].pages.length < 1){ multiDash.addPage2dashboard(getNextSequenceId(), 'SamplePage'); saveDashboardCollection(); } } function getPersonalDashboardJson(){ var dashCollectionJson=""; var jsonStr=getContentData(sessionid, 'DashboardCollection', 0); try { if(jsonStr.length >0) dashCollectionJson=$.evalJSON(jsonStr); } catch (err) { alert(" Issue getting : "+err+"<br>JSON:"+jsonStr); dashCollectionJson="ERROR"; } return dashCollectionJson; } function getSelectedDashID(){ if(defaultDashIdCache == -1){ defaultDashIdCache = getContentData(sessionid, 'defaultDashId', 0); } return defaultDashIdCache; } function getSharedDashboardJson(){ //return ""; var i,j,k, dashObj="", dashPos=-1, isPagePresent=-1; var jsonArrayPages=getSharedContent(sessionid, 'P', 2); var jsonArrayDash=getSharedContent(sessionid, 'D', 2); var jsonArray=new Array(); var dashCollection=new Array(); if(jsonArrayDash.length >0 && jsonArrayPages.length >0) jsonArray=jsonArrayDash.concat(jsonArrayPages); else if(jsonArrayDash.length >0) jsonArray=jsonArrayDash.slice(0); else if(jsonArrayPages.length >0) jsonArray=jsonArrayPages.slice(0); for(i=0; i<jsonArray.length; i++){ dashObj=$.evalJSON(jsonArray[i]); if(dashObj[0].Owner.id == userId) continue; dashPos=-1; for(j=0; j<dashCollection.length; j++){ if(dashCollection[j].id == dashObj[0].id){ for(k=0; k<dashCollection[j].pages.length; k++){ dashPos=j; if(dashCollection[j].pages[k].id == dashObj[0].pages[0].id){ dashPos=-2; break; } } break; } } if(dashPos==-2) continue; if(dashPos >= 0){ dashCollection[dashPos].pages.push(dashObj[0].pages[0]); } else{ dashCollection.push(dashObj[0]); } } return dashCollection; } function executeReportDashLink(id){ var dashIdPageId=multiDash.getReportDashLink(id); if(dashIdPageId.length > 0 && typeof dashIdPageId[0] != 'undefined'){ multiDash.setDefaultDash(dashIdPageId[0]); multiDash.setDefaultPage(dashIdPageId[1]); clearGraphs(); initDashboard(); } } //_shared={"1001":{"users":["arun","asdf"],"groups":["Group1","Group2"]}}; var _shared={}; function fillShared(userGroupArray, dashOrPage){ var i=0, j=0; for(i=0; i<userGroupArray.length; i++){ if(typeof _shared[userGroupArray[i][0]] != 'undefined'){ tmpaArray=userGroupArray[i][2].split(":"); for(j in tmpaArray) _shared[userGroupArray[i][0]].users.push(tmpaArray[j]); } else{ _shared[userGroupArray[i][0]]=$.evalJSON('{"users":[], "type":"'+dashOrPage+'"}'); tmpaArray=userGroupArray[i][2].split(":"); for(j in tmpaArray) _shared[userGroupArray[i][0]].users.push(tmpaArray[j]); } } } function getAllSharedObjects(callbackFunc){ _shared={}; fillShared(getSharedList(sessionid, 'P', 3), 'P'); fillShared(getSharedList(sessionid, 'D', 3), 'D'); if(callbackFunc){ callbackFunc(); } }