var ux = {}; ux.fail = function(r) { console.log(r); } //======= REGISTER USER SUCCESS ==================== ux.registerUserSuccessCallback = function(r) { console.log(r); $.unblockUI(); if (r.status == "success") { // window.location.href = 'register_success.html'; bootbox.alert({ size: "small", title: "iMonitor +", message: r.message, callback: function() { window.location.href = 'userauth.html'; } }); // $("#registerSuccessMsg").html("Success") } else { bootbox.alert({ size: "small", title: "iMonitor +", message: r.message, callback: function() { window.location.href = 'index.html'; } }); } } //======= AUTHERIZE USER SUCCESS ==================== ux.authorizeUserSuccessCallback = function(r) { console.log(r); // window.location.href = 'index.html'; $.unblockUI(); if (r.status == "success") { bootbox.alert({ size: "small", title: "iMonitor +", message: r.message, callback: function() { window.location.href = 'login.html'; // $("#navsignin").addClass("active"); // $("#navsignup").removeClass("active"); // $("#home").removeClass("active in"); // $("#menu1").addClass("active in"); } }); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: r.message, callback: function() { window.location.href = 'userauth.html'; } }); } } //======= LOGIN SUCCESS ==================== ux.userLoginSuccessCallback = function(r) { console.log(r); // window.location.href = 'index.html'; $.unblockUI(); if (r.status == "success") { setLocalStorage("rtmProUserObject", r); if (Object.keys(r.app).length > 0) { window.location.href = 'userhome.html'; } else { window.location.href = 'home.html'; } // bootbox.alert({ // size: "small", // title: "iMonitor +", // message: "Success", // }); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: r.message, callback: function() { window.location.href = 'login.html'; } }); } } // success App Programs ux.getAllProgramsSuccessCallback = function(r) { console.log(r); if (r.status == "success") { setLocalStorage("userAllPGMS", r.data); $.unblockUI(); uc.createAppTemplate(r.data); } } //end // success Org ux.getOrgSuccessCallback = function(r) { console.log(r); // $.unblockUI(); setLocalStorage("rtmProOrg", r); } //end // success template for get all role ux.getAllRoleSuccessCallback = function(r) { console.log(r); // $.unblockUI(); setLocalStorage("allrolesinsystem", r); var allroles = $.jStorage.get("allrolesinsystem"); var options = ""; var allpgrole = $.jStorage.get("allAllPGRoles"); var difference = []; difference = differenceArray(allroles.data, allpgrole); if (Object.keys(difference).length > 0) { $('#existingrolelist').show(); $.each(difference, function(key, val) { options += ""; }); $('#existingrolelist').html(options); $('.noRoles-data-warning').hide(); console.log(difference); console.log('-------------------------------------------------------------------------'); } else { $('#existingrolelist').hide(); $('.noRoles-data-warning').show(); } } //end // DIFFERENCE of TWO ARRAY OBJECT function differenceArray(prev, now) { var changes = {}, prop, pc; for (prop in now) { if (!prev || prev[prop] !== now[prop]) { if (typeof now[prop] == "object") { if (c = getChanges(prev[prop], now[prop])) changes[prop] = c; } else { changes[prop] = now[prop]; } } } for (prop in prev) { if (!now || now[prop] !== prev[prop]) { if (typeof prev[prop] == "object") { if (c = getChanges(now[prop], prev[prop])) changes[prop] = c; } else { changes[prop] = prev[prop]; } } } return changes; } // ENDS // success template for Create role var userObj = $.jStorage.get("rtmProUserObject"); ux.getcreateRoleSuccessCallback = function(r) { console.log(r); // $.unblockUI(); apiservices.getAllRoles(userObj.language, ux.getAllRoleSuccessCallback, ux.fail); //setLocalStorage("allrolesinsystem", r); } //end // success template for get all role of program ux.getAllPGRolesSuccessCallback = function(r) { console.log('ddddddddddddddddddddddddddddddddddddd'); console.log(r.data); setLocalStorage("allAllPGRoles", r.data); // BIND ROLES ON UI var optionsforrole = ""; var roles = $.jStorage.get("allAllPGRoles"); $.each(roles, function(key, val) { optionsforrole += ''; }); $('#selectRole').html(optionsforrole); $('#addUserModal').show(); var pgrole = $.jStorage.get("allAllPGRoles"); if (Object.keys(pgrole).length > 0) { console.log("already role is there"); $('#selectRole').show(); $('.not-data-warning').addClass('hidden'); $('.addMoreRole').text('Add More Role'); } else { console.log('plese add role'); $('#selectRole').hide(); $('.addMoreRole').text('Add Role'); $('.not-data-warning').removeClass('hidden'); } $.unblockUI(); } //end // success template for assign role of program ux.getPGAssignRolesSuccessCallback = function(r) { console.log('ddddddddddddddddddddddddddddddddddddd'); console.log(r); if (r.status == "success") { // setLocalStorage("allAllPGRoles", r.data); // BIND ROLES ON UI with pgm var optionsforrole = ""; var roles = $('#existingrolelist').find('option:selected').text(); optionsforrole = ''; $('#selectRole').append(optionsforrole); var allrolesdata = $.jStorage.get("allrolesinsystem"); $.each(allrolesdata.data, function(i, val) { if (val == roles) // delete index { delete allrolesdata.data[i]; } }); console.log('pending roles'); console.log(allrolesdata); setLocalStorage("allrolesinsystem", allrolesdata); var pgid = $.jStorage.get("pid"); var obj = { programid: pgid } apiservices.getAllPGRoles(obj, ux.getAllPGRolesSuccessCallback, ux.fail); $.unblockUI(); } } //end //====== SMART SETUP TEMPLATE SUCCESS ========= ux.saveSmartSetupTemplateSuccessCallback = function(r) { console.log(r); $.unblockUI(); if (r.status == "success") { window.location.href = 'userhome.html'; } else { bootbox.alert({ size: "small", title: "iMonitor +", message: r.status, callback: function() { window.location.href = 'userhome.html'; } }); } } //====== CUSTOM SMART SETUP TEMPLATE SUCCESS ========= ux.createCustomSmartSetupTemplateSuccessCallback = function(r) { console.log(r) $.unblockUI(); if (r.status == "success") { window.location.href = 'userhome.html'; } else { bootbox.alert({ size: "small", title: "iMonitor +", message: r.status, callback: function() { window.location.href = 'userhome.html'; } }); } } //====== ADD USER FOR PROGRAM SUCCESS ========= ux.addUserSuccessCallback = function(r) { console.log(r) // $.unblockUI(); // window.location.href = 'dashboard/dashboard.html'; if (r.status == "success") { bootbox.alert({ size: "small", title: "iMonitor +", message: 'User Added Successfully', callback: function() { window.location.href = 'userhome.html'; } }); } else if (r.status == "Fail") { bootbox.alert({ size: "small", title: "iMonitor +", message: r.message }); } } //=========LOAD DASHBOARD SUCCESS ============ ux.loadDashboardSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == "success") { setLocalStorage("dashboardind", r); var res = $.jStorage.get("dashboardind"); var indtml = ""; var colors = ['green', 'orange', 'blue', 'red']; var count = -1; $.each(res.data, function(key, val) { count += 1; if (count >= colors.length) { count = 0; } //var pickcolor = colors[Math.floor(Math.random() * colors.length)]; var indicatorcard = ""; indicatorcard += "
"; indicatorcard += "
"; indicatorcard += "group_add
"; indicatorcard += "

"; indicatorcard += key; indicatorcard += "

" + val + "

"; indtml += indicatorcard; }); $("#dashindicators").html(indtml); // window.location.href = 'dashboard/dashboard.html'; } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Dashboard Indicator Load " + r.status }); } $.unblockUI(); } // dashboard chart ux.loadDashboardCurrentChartSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == "success") { setLocalStorage("dashboardCurrentchartData", r); // random color generator var highchartcolors = { "Colors": [{ "name": "green", "light": "#66bb6a", "dark": "#43a047" }, { "name": "orange", "light": "#ffa726", "dark": "#fb8c00" }, { "name": "red", "light": "#ef5350", "dark": "#e53935" }, { "name": "blue", "light": "#26c6da", "dark": "#00acc1" }] }; var countcolors = -1; // Create the chart var chartObj = $.jStorage.get("dashboardCurrentchartData"); $.each(chartObj.data, function(key, val) { var chartid = ""; chartid = "highchart_" + chartObj.data[key].gtitle; //var populatechart = ""; // pick color countcolors += 1; if (countcolors >= highchartcolors.Colors.length) { countcolors = 0; } var pickChartcolor = highchartcolors.Colors[countcolors].name; var charthtml = ""; charthtml = "
"; charthtml += "
"; charthtml += "

" + chartObj.data[key].gtitle + "

"; charthtml += "

Track Record For Attribute " + chartObj.data[key].gtitle + "

"; charthtml += "
"; //populatechart += charthtml; $('#dashchartContainer').append(charthtml); newdashboardCharts.initCreateChart(chartObj.data[key], chartid, highchartcolors.Colors[countcolors]); }); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Dashboard Chart Load " + r.status }); } $.unblockUI(); } ux.loadDashboardRangeChartSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; setLocalStorage("dashboardRangechartData", r); } ux.loadRealTimeMapSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == "success") { setLocalStorage("dashboardRealTimeMapData", r.data); if (r.data.length > 0) { $('.warning-map').addClass('hidden'); dashboard_map.initRealTimeGoogleMaps(); } else { $('.warning-map').removeClass('hidden'); } } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Real Time Load " + r.status }); } } // Boradcast ux.getBoradcastUserSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { setLocalStorage("BroadcastUserData", r.data); $.each(r.data, function(key, val) { var userli = ""; userli = "
  • "; userli += val + ""; $("#userlistBM").append(userli); }); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Broadcast User Load " + r.status }); } $.unblockUI(); } // BROADCAST MESSAGE SUCCESS ux.getBoradcastMessageSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { // setLocalStorage("BroadcastMSGData", r); bootbox.alert({ size: "small", title: "iMonitor +", message: "Message send successfully." }); $("#messageBoxForm")[0].reset(); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Broadcast Message " + r.status }); } $.unblockUI(); } // PROGRAM LOAD SUCCESS FOR AN APPS ux.loadAllProgramforAppSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; var optionsforpgm = ""; // setLocalStorage("AllProgramsinappData", r.data); if (r.status == 'success') { $.each(r.data, function(key, val) { var optionsforpgm = ''; $('#pgmselectforalert').append(optionsforpgm); }); $.unblockUI(); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "All PGM Load " + r.status }); } } // LOAD ALERT DATA ux.loadAllAlertdataSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { var alerttypedata = r.data; // fill alert type $.each(alerttypedata.alerttype, function(key, val) { var optionsforalrttype = ""; var optionsforalrttype = ''; $('#alertType').append(optionsforalrttype); }); // fill alert period var frequencies = ""; $.each(alerttypedata.period, function(key, val) { var optionsperiod = ""; var optionsperiod = ''; $('#selPeriod').append(optionsperiod); }); // fill alert frequence depend on period $.each(alerttypedata.period, function(key, val) { if (alerttypedata.period[key].id == $('#selPeriod').val()) { frequencies = alerttypedata.period[key].frequencies; } }); $.each(frequencies, function(key, val) { var freqcheck = "
    "; // var optionsforperiodfreq = ''; //$('#selectFreq').append(optionsforperiodfreq); $('.freqcheckboxes').append(freqcheck); }); console.log(frequencies); $("#selPeriod").on("change", function() { // $('#selectFreq').html(''); $('.freqcheckboxes').html(""); // fill alert frequence depend on period $.each(alerttypedata.period, function(key, val) { if (alerttypedata.period[key].id == $('#selPeriod').val()) { frequencies = alerttypedata.period[key].frequencies; } }); $.each(frequencies, function(key, val) { var freqcheck = "
    "; // var optionsforperiodfreq = ''; //$('#selectFreq').append(optionsforperiodfreq); $('.freqcheckboxes').append(freqcheck); }); }); // fill alert operator $.each(alerttypedata.alertoperator, function(key, val) { var optionsforalrttype = ''; $('#alertOperator').append(optionsforalrttype); }); $.unblockUI(); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Load Alert " + r.status }); } } // ALL TARGET DATA RESPONSE ux.loadAllTargetdataSuccessCallback = function(r) { console.log(r); setLocalStorage("targetElement", r.data); //======INDICATOR SECTION ==================== var r; var optionsfortgt = ""; if (r.status == 'success') { if (r.data.dataelements.length > 0) { // setLocalStorage("AllProgramsinappData", r.data); $.each(r.data.dataelements, function(key, val) { var optionsfortgt = ''; $('#alertDataElement').append(optionsfortgt); }); $.unblockUI(); } else { $('#alertform').hide(); bootbox.alert({ size: "small", title: "iMonitor +", message: "No Data Elements are the in program. Hence Alert canot be created." }); } } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Target Load " + r.status }); } } // CREATE TARGET DATA RESPONSE ux.createTargetdataSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { console.log('target created'); setLocalStorage("targetid", r.data.id); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Target Creation " + r.status }); } } // CREATE ALERT DATA RESPONSE ux.createAlertSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { console.log('ALERT created'); bootbox.alert({ size: "small", title: "iMonitor +", message: "Alert Created Successfully." }); $("#alertformfeilds")[0].reset(); var obj = { language: "en" } apiservices.AllAlertList(obj, ux.getallAlertSuccessCallback, ux.fail); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Alert Creation " + r.status }); } //setLocalStorage("targetid", r.data.id); } // List of alert ux.getallAlertSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; $('#allSavedalertData > tbody').html(''); if (r.status == 'success') { var alertTR = ""; $.each(r.data, function(key, val) { var status = ""; if (r.data[key].alertstatus == "active") { status = "checked"; } else { status = ""; } alertTR += "" + r.data[key].name + ""; }); $('#allSavedalertData > tbody').html(alertTR); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "All Alert Service Load " + r.status }); } } // Toggle alert status ux.toggleAlertStatusSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Disabling alert " + r.status }); } } ux.registeredUsersReportSuccessCallback = function(r) { console.log(r); $('#regi-date-filter').show(); if (r.status == 'success') { if (r.data.profile != "") { $.each(r.data.profile, function(key, val) { delete r.data.profile[key].trackedentityinstanceid; delete r.data.profile[key].deviceId; delete r.data.profile[key].instanceId; delete r.data.profile[key].status; delete r.data.profile[key].sysUIC; delete r.data.profile[key].lat; delete r.data.profile[key].long; delete r.data.profile[key].value; delete r.data.profile[key].created; }); $.each(r.data.profile[0], function(key, val) { var thead = ""; thead += "" + key + ""; $('#registeredUsersTBL > thead > tr').append(thead); }); var tr = ""; var tbl_body = document.createElement("tbody"); var odd_even = false; $.each(r.data.profile, function() { var tbl_row = tbl_body.insertRow(); tbl_row.className = odd_even ? "odd" : "even"; $.each(this, function(k, v) { var cell = tbl_row.insertCell(); cell.appendChild(document.createTextNode(v.toString())); }) odd_even = !odd_even; }) $("#registeredUsersTBL").append(tbl_body); // var table = $('#registeredUsersTBL').DataTable(); var table = $('#registeredUsersTBL').DataTable({ dom: 'Bfrtip', buttons: [ 'copy', 'csv', 'excel', 'pdf', 'print' ] }); $('#min').on("change", function() { rangedates.datefilter(); table.draw(); }); $('#max').on("change", function() { rangedates.datefilter(); table.draw(); }); $.unblockUI(); } else { $('#regi-date-filter').hide(); bootbox.alert({ size: "small", title: "iMonitor +", message: "Report Data Not Available " }); $.unblockUI(); } } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Registration Report Load " + r.status }); } } var normalizeDate = function(dateString) { var normalized = ''; var date = new Date(dateString); normalized = date.getFullYear() + '' + (("0" + (date.getMonth() + 1)).slice(-2)) + '' + ("0" + date.getDate()).slice(-2); return normalized; } // SERVICE DETAIL REPORT SUCCESS ux.servDetailReportSuccessCallback = function(r) { console.log(r); var profileServMerge = []; var ServMerge = []; profileServMerge = r.data.profile; for (let i in profileServMerge) { for (let j in r.data.service) { if (profileServMerge[i].trackedentityinstanceid == r.data.service[j].trackedentityinstanceid) { ServMerge.push(r.data.service[j]); profileServMerge[i].service = ServMerge; } else { // ServMerge = []; } } ServMerge = []; } // drilldown_table.initDrillTable(); $.each(profileServMerge, function(key, val) { delete profileServMerge[key].trackedentityinstanceid; delete profileServMerge[key].created; delete profileServMerge[key].long; delete profileServMerge[key].sysUIC; delete profileServMerge[key].lat; delete profileServMerge[key].deviceId; delete profileServMerge[key].instanceId; delete profileServMerge[key].status; $.each(profileServMerge[key].service, function(key1, val) { delete profileServMerge[key].service[key1].trackedentityinstanceid; delete profileServMerge[key].service[key1].organisation; delete profileServMerge[key].service[key1].attachment; }); }); console.log("profileServMerge================="); console.log(profileServMerge); var subeaders = []; var headarray = []; $.each(profileServMerge[0], function(key, val) { if (key != 'service') { headarray.push(key); } }); for (let i in profileServMerge) { for (let j in profileServMerge[i].service) { var arr = []; $.each(profileServMerge[i].service[j], function(key, val) { arr.push(key); }); var obj = { "hname": profileServMerge[i].service[j].programstagename, "len": Object.keys(profileServMerge[i].service[j]).length, "keyarr": arr } subeaders.push(obj); } } var headarry = uniq(subeaders, 'hname'); headarray.service = headarry; // var a = ["1", "1", "2", "3", "3", "1"]; // var unique = subeaders.filter(function(item, i, ar){ return ar.indexOf(item) === i; }); // actual header console.log(headarray); // UI uiheader var uiHeader = []; $.each(headarray, function(key, val) { if (key != 'service') { uiHeader.push(val); } }); $.each(headarray.service, function(key1, val1) { $.each(headarray.service[key1].keyarr, function(key2, val2) { uiHeader.push(val2); }); }); console.log(uiHeader); $.each(uiHeader, function(key, val) { var thead = ""; thead += "" + val + ""; $('#serveDetailsTBL > thead > tr').append(thead); }); // UI DATA // var profileServiceReportData = []; // for (let i in profileServMerge) { // for (let j in profileServMerge[i].service) // for (let k in headarray.service) { // if (profileServMerge[i].service[j].programstagename == headarray.service[k].hname) { // } else { // profileServMerge[i].service[j] = headarray.service[k].keyarr // } // } // } // $.each(profileServMerge, function(key, val) { // $.each(profileServMerge[key].service, function(key1, val1) { // $.each(headarray.service, function(key2, val2) { // if (profileServMerge[key].service[key1].programstagename == headarray.service[key2].hname) { // } else { // profileServMerge[key].service[key1] = headarray[key2].keyarr // } // }) // }); // }); // var headlen = headarray.service.length; // $.each(profileServMerge, function(key, val) { // if (val.service.length == headlen) { // console.log('mathced'); // } else { // $.each(val.service, function(k1, v1) { // $.each(headarray.service, function(k2, v2) { // if (v1.programstagename == headarray.service[k2].hname) { // console.log(v1.programstagename); // console.log(headarray.service[k2].hname); // console.log(v1); // console.log(v2); // } else { // console.log("fffffffffffffffffffffffffff"); // val.service[k1 + 1] = v2.keyarr; // console.log(val.service); // $.each(val.service[k1 + 1], function(k5, v5) { // $.each(v2.keyarr, function(k6, v6) { // k5 = v6; // v5 = "no data"; // }); // }); // console.log(val.service); // } // }); // }); // } // }); var tr = ""; // alert(headlen); var tbl_body = document.createElement("tbody"); var odd_even = false; var headlen = headarray.service.length; $.each(profileServMerge, function(key, val) { var tbl_row = tbl_body.insertRow(); tbl_row.className = odd_even ? "odd" : "even"; var len = profileServMerge[key].service.length; // var tbl_inner_row = tbl_row.insertRow(); $.each(val, function(k, v) { if (typeof v !== 'object') { var cell = tbl_row.insertCell(); cell.appendChild(document.createTextNode(v.toString())); } else { if (v.length == headlen) { $.each(v, function(k1, v1) { $.each(v1, function(k2, v2) { if (v2 == null) { v2 = "no attachment"; } var cell1 = tbl_row.insertCell(); cell1.appendChild(document.createTextNode(v2.toString())); }); }); } else { $.each(headarray.service, function(k3, v3) { $.each(v, function(k4, v4) { if (v4.programstagename == v3.hname) { $.each(v4, function(k5, v5) { if (v5 == null) { v5 = "no attachment"; } var cell1 = tbl_row.insertCell(); cell1.appendChild(document.createTextNode(v5.toString())); }); } else { $.each(v4, function(k6, v6) { var cell1 = tbl_row.insertCell(); cell1.appendChild(document.createTextNode("No Data")); }); } }); }) } } }); odd_even = !odd_even; $("#serveDetailsTBL").append(tbl_body); console.log("jjjjjjjjjjjjjjjjjjjjjjjjjjj"); console.log(profileServMerge); }); $('#serveDetailsTBL').DataTable({ dom: 'Bfrtip', buttons: [ 'csv', 'excel' ] }); } function uniq(a, param) { return a.filter(function(item, pos, array) { return array.map(function(mapItem) { return mapItem[param]; }).indexOf(item[param]) === pos; }) } // NEAR ME MAP DATA ux.nearMeServiceSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { setLocalStorage("realtimeMapData", r.data); dashboard_map.initGoogleMaps(); $.unblockUI(); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "Near Me Service " + r.status }); $.unblockUI(); } } // GET MY ALERTS SERVICE ux.getMyalertServiceSuccessCallback = function(r) { console.log(r); //======INDICATOR SECTION ==================== var r; if (r.status == 'success') { // setLocalStorage("realtimeMapData", r.data); var alertTR = ""; $.each(r.data, function(key, val) { var status = ""; var dates = moment(r.data[key].date).fromNow(); alertTR += "" + r.data[key].notification + "" + dates + ""; }); $('#myalertTb > tbody').html(alertTR); $.unblockUI(); } else { bootbox.alert({ size: "small", title: "iMonitor +", message: "My Alert " + r.status }); $.unblockUI(); } }