jQWidgets Forums
Forum Replies Created
-
Author
-
Thanks Dimitar, this is a relevant part for the code:
function LoadContacts() { $.ajax({ type: "POST", url: '@Url.Action("LoadContacts", "Contact")', data: {}, contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { for (var i = 0; i < data.length; i++) { if (data[i].ExpireDate != null) data[i].ExpireDate = data[i].ExpireDate.replace(/\d+/, function (n) { var time = parseInt(n); return parseInt(time) + new Date(time).getTimezoneOffset() * 60000 } ); } var sourceContact = { datatype: "json", datafields: [ { name: 'AddWebUserFlag', type: 'bool' }, { name: 'Authority', type: 'string' }, { name: 'AuthorityDescription', type: 'string' }, { name: 'ContactNum', type: 'int' }, { name: 'DisplayExpiredFlag', type: 'bool' }, { name: 'DocumentNum', type: 'int' }, { name: 'DocumentSeqNum', type: 'int' }, { name: 'ECVFlag', type: 'bool' }, { name: 'ExpireDate', type: 'date', format: "M/d/yyyy" }, { name: 'ExpiredFlag', type: 'bool' }, { name: 'FirstName', type: 'string' }, { name: 'HighlightContactNum', type: 'int' }, { name: 'HighlightFlag', type: 'bool' }, { name: 'KeyNum', type: 'int' }, { name: 'KeysFlag', type: 'bool' }, { name: 'KeyType', type: 'string' }, { name: 'LastName', type: 'string' }, { name: 'MiddleName', type: 'string' }, { name: 'Name', type: 'string' }, { name: 'PatientFlag', type: 'bool' }, { name: 'PhoneList', type: 'string' }, { name: 'PIN', type: 'string' }, { name: 'Relation', type: 'string' }, { name: 'RelationDescription', type: 'string' }, { name: 'SearchName', type: 'string' }, { name: 'SearchPIN', type: 'string' }, { name: 'SeqNum', type: 'int' }, { name: 'SiteName', type: 'string' }, { name: 'StartOrderNum', type: 'int' }, { name: 'Suffix', type: 'string' }, { name: 'Title', type: 'string' }, { name: 'UserID', type: 'string' }, { name: 'XtApplicationName', type: 'string' }, { name: 'BadNumberFlag', type: 'bool' }, { name: 'ContactInfoHtml', type: 'string' } ], localdata: data, addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'FirstName':'" + rowdata.FirstName + "'," + "'MiddleInicial':'" + rowdata.MiddleName + "'," + "'LastName':'" + rowdata.LastName + "'," + "'Title':'" + rowdata.Title + "'," + "'Suffix':'" + rowdata.Suffix + "'," + "'ECV':'" + rowdata.ECVFlag + "'," + "'Keys':'" + rowdata.KeysFlag + "'," + "'Authority':'" + rowdata.Authority + "'," + "'Relation':'" + rowdata.Relation + "'," + "'Passcode':'" + rowdata.PIN + "'," + "'BeginDate':'" + rowdata.EffectiveDate + "'," + "'ExpireDate':'" + rowdata.ExpireDate + "'}"; $.ajax({ type: "POST", url: '@Url.Action("CreateContact", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", success: function (dataA) { if (dataA.Success == true) { rowdata.Authority = dataA.Obj.Authority; rowdata.AuthorityDescription = dataA.Obj.AuthorityDescription; rowdata.ContactNum = dataA.Obj.ContactNum; rowdata.DocumentNum = dataA.Obj.DocumentNum; rowdata.ECVFlag = dataA.Obj.ECVFlag; rowdata.ExpiredFlag = dataA.Obj.ExpiredFlag; rowdata.FirstName = dataA.Obj.FirstName; rowdata.KeyNum = dataA.Obj.KeyNum; rowdata.KeysFlag = dataA.Obj.KeysFlag; rowdata.KeyType = dataA.Obj.KeyType; rowdata.LastName = dataA.Obj.LastName; rowdata.MiddleName = dataA.Obj.MiddleName; rowdata.Name = dataA.Obj.Name; rowdata.PatientFlag = dataA.Obj.PatientFlag; rowdata.PIN = dataA.Obj.PIN; rowdata.Relation = dataA.Obj.Relation; rowdata.RelationDescription = dataA.Obj.RelationDescription; rowdata.SeqNum = dataA.Obj.SeqNum; rowdata.SiteName = dataA.Obj.SiteName; rowdata.Suffix = dataA.Obj.Suffix; rowdata.Title = dataA.Obj.Title; rowdata.UserID = dataA.Obj.UserID; rowdata.BadNumberFlag = dataA.Obj.BadNumberFlag; rowdata.ContactInfoHtml = dataA.Obj.ContactInfoHtml; $("#lbNotificationSuccess").text("Contact Created Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, updaterow: function (rowid, rowdata, commit) { var rowOldData = $('#gvContacts').jqxGrid('getrowdata', rowid); var params = "{" + "'ContactNum':" + rowOldData.ContactNum + "," + "'KeyNum':" + rowOldData.KeyNum + "," + "'KeyType':'" + rowOldData.KeyType + "'," + "'orderNumber':" + rowOldData.SeqNum + "," + "'FirstName':'" + rowdata.FirstName + "'," + "'MiddleInicial':'" + rowdata.MiddleName + "'," + "'LastName':'" + rowdata.LastName + "'," + "'Title':'" + rowdata.Title + "'," + "'Suffix':'" + rowdata.Suffix + "'," + "'ECV':'" + rowdata.ECVFlag + "'," + "'Keys':'" + rowdata.KeysFlag + "'," + "'Authority':'" + rowdata.Authority + "'," + "'Relation':'" + rowdata.Relation + "'," + "'Passcode':'" + rowdata.PIN + "'," + "'BeginDate':'" + rowdata.EffectiveDate + "'," + "'ExpireDate':'" + rowdata.ExpireDate + "'}"; $.ajax({ type: "POST", url: '@Url.Action("UpdateContact", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", success: function (dataA) { if (dataA.Success == true) { rowdata.Authority = dataA.Obj.Authority; rowdata.AuthorityDescription = dataA.Obj.AuthorityDescription; rowdata.ContactNum = dataA.Obj.ContactNum; rowdata.DocumentNum = dataA.Obj.DocumentNum; rowdata.ECVFlag = dataA.Obj.ECVFlag; rowdata.ExpiredFlag = dataA.Obj.ExpiredFlag; rowdata.FirstName = dataA.Obj.FirstName; rowdata.KeyNum = dataA.Obj.KeyNum; rowdata.KeysFlag = dataA.Obj.KeysFlag; rowdata.KeyType = dataA.Obj.KeyType; rowdata.LastName = dataA.Obj.LastName; rowdata.MiddleName = dataA.Obj.MiddleName; rowdata.Name = dataA.Obj.Name; rowdata.PatientFlag = dataA.Obj.PatientFlag; rowdata.PIN = dataA.Obj.PIN; rowdata.Relation = dataA.Obj.Relation; rowdata.RelationDescription = dataA.Obj.RelationDescription; rowdata.SeqNum = dataA.Obj.SeqNum; rowdata.SiteName = dataA.Obj.SiteName; rowdata.Suffix = dataA.Obj.Suffix; rowdata.Title = dataA.Obj.Title; rowdata.UserID = dataA.Obj.UserID; rowdata.BadNumberFlag = dataA.Obj.BadNumberFlag; rowdata.ContactInfoHtml = dataA.Obj.ContactInfoHtml; rowdata.PhoneList = dataA.Obj.PhoneList; $("#lbNotificationSuccess").text("Contact Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContacts').jqxGrid('getrowdata', rowid); var params = "{" + "'ContactNum':" + rowOldData.ContactNum + "," + "'KeyNum':" + rowOldData.KeyNum + "," + "'KeyType':'" + rowOldData.KeyType + "'}"; $.ajax({ type: "POST", url: '@Url.Action("DeleteContact", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Contact Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } } var dataAdapterContacts = new $.jqx.dataAdapter(sourceContact); var editrow = -1; var cellclass = function (row, columnfield, value, data) { if (data.BadNumberFlag == true && columnfield != 'BadNumberFlag' && data.ExpiredFlag == false) { return 'badphonegrid'; } if (data.ExpiredFlag == true && columnfield != 'ExpiredFlag') { return 'expphonegrid'; } } var firstNameColumnFilter = function () { var filtergroup = new $.jqx.filter(); var filtervalue = false; var filtercondition = 'equal'; var filter = filtergroup.createfilter('booleanfilter', filtervalue, filtercondition); filtergroup.addfilter(1, filter); return filtergroup; }(); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var initrowdetails = function (index, parentElement, gridElement, datarecord) { var tabsdiv = null; var ContactDetailInfo = null; var ContactPhonesInfo = null; var ContactEmailInfo = null; var ContactListMemberInfo = null; var ContactPasscodesInfo = null; var ContactUserIdsInfo = null; var ContactTempDeactivateInfo = null; var ContactScheduleInfo = null; var ContactMedicalDataInfo = null; tabsdiv = $($(parentElement).children()[0]); if (tabsdiv != null) { //Detail ContactDetailInfo = tabsdiv.find('.ContactDetailInfo'); var title = tabsdiv.find('.ContactDetail'); title.text("Details"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactDetailInfo)); var leftcolumn = $('<div style="float: left; width: 45%;"></div>'); var rightcolumn = $('<div style="float: left; width: 40%;"></div>'); container.append(leftcolumn); container.append(rightcolumn); var paramsDetail = "{" + "'ContactNum':" + datarecord.ContactNum + "," + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'}"; $.ajax({ type: "POST", url: '@Url.Action("GetDetailByContact", "Contact")', data: paramsDetail, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { for (var i = 0; i < data.length; i++) { if (data[i].EffectiveDate != null) data[i].EffectiveDate = data[i].EffectiveDate.replace(/\d+/, function (n) { var time = parseInt(n); return parseInt(time) + new Date(time).getTimezoneOffset() * 60000 } ); if (data[i].ExpireDate != null) data[i].ExpireDate = data[i].ExpireDate.replace(/\d+/, function (n) { var time = parseInt(n); return parseInt(time) + new Date(time).getTimezoneOffset() * 60000 } ); } var sourceContactDetail = { datatype: "json", datafields: [ { name: 'SeqNum', type: 'int' }, { name: 'FirstName', type: 'string' }, { name: 'MiddleName', type: 'string' }, { name: 'LastName', type: 'string' }, { name: 'Title', type: 'string' }, { name: 'Suffix', type: 'string' }, { name: 'ECVFlag', type: 'bool' }, { name: 'KeysFlag', type: 'bool' }, { name: 'AuthorityDescription', type: 'string' }, { name: 'RelationDescription', type: 'string' }, { name: 'ContactInfoHtml', type: 'string' }, { name: 'PIN', type: 'string' }, { name: 'EffectiveDate', type: 'date', format: "M/d/yyyy" }, { name: 'ExpireDate', type: 'date', format: "M/d/yyyy" } ], localdata: data, } var dataAdapterCDetail = new $.jqx.dataAdapter(sourceContactDetail); dataAdapterCDetail.dataBind(); var orderhtml = "<div style='margin: 10px;'><b>Order#:</b> " + dataAdapterCDetail.records[0].SeqNum + "</div>"; var FirstNamehtml = "<div style='margin: 10px;'><b>First Name:</b> " + dataAdapterCDetail.records[0].FirstName + "</div>"; var middlename = ""; if (dataAdapterCDetail.records[0].MiddleName != null) middlename = dataAdapterCDetail.records[0].MiddleName; var MiddleInitialhtml = "<div style='margin: 10px;'><b>Middle Initial:</b> " + middlename + "</div>"; var LastNamehtml = "<div style='margin: 10px;'><b>Last Name:</b> " + dataAdapterCDetail.records[0].LastName + "</div>"; var tittle = "" if (dataAdapterCDetail.records[0].Title != null) tittle = dataAdapterCDetail.records[0].Title; var tittlehtml = "<div style='margin: 10px;'><b>Tittle:</b> " + dataAdapterCDetail.records[0].Title + "</div>"; var suffix = "" if (dataAdapterCDetail.records[0].Suffix != null) suffix = dataAdapterCDetail.records[0].Suffix; var suffixhtml = "<div style='margin: 10px;'><b>Suffix:</b> " + suffix + "</div>"; var ecvhtml = "<div style='margin: 10px;'><b>ECV:</b> " + dataAdapterCDetail.records[0].ECVFlag + "</div>"; var keyhtml = "<div style='margin: 10px;'><b>Keys:</b> " + dataAdapterCDetail.records[0].KeysFlag + "</div>"; var AuthorityHtml = "<div style='margin: 10px;'><b>Authority:</b> " + dataAdapterCDetail.records[0].AuthorityDescription + "</div>"; var relation = ""; if (dataAdapterCDetail.records[0].RelationDescription != null) relation = dataAdapterCDetail.records[0].RelationDescription; var relationhtml = "<div style='margin: 10px;'><b>Relation:</b> " + relation + "</div>"; var passcodehtml = "<div style='margin: 10px;'><b>Passcode:</b> " + dataAdapterCDetail.records[0].PIN + "</div>"; var effectivedate = ""; if (dataAdapterCDetail.records[0].EffectiveDate != null) effectivedate = dataAdapterCDetail.records[0].EffectiveDate; var effectivehtml = "<div style='margin: 10px;'><b>Effective Date:</b> " + dataAdapterCDetail.records[0].EffectiveDate + "</div>"; var expiredate = ""; if (dataAdapterCDetail.records[0].ExpireDate != null) expiredate = dataAdapterCDetail.records[0].ExpireDate; var expiredhtml = "<div style='margin: 10px;'><b>Expired Date:</b> " + dataAdapterCDetail.records[0].ExpireDate + "</div>"; var contactInfoHtml = "<div style='margin: 10px;'><b>Info:</b><textarea id='infoEditor'></textarea></div>"; $(leftcolumn).append(orderhtml); $(leftcolumn).append(FirstNamehtml); $(leftcolumn).append(MiddleInitialhtml); $(leftcolumn).append(LastNamehtml); $(leftcolumn).append(tittlehtml); $(leftcolumn).append(suffixhtml); $(leftcolumn).append(ecvhtml); $(leftcolumn).append(keyhtml); $(leftcolumn).append(passcodehtml); $(leftcolumn).append(AuthorityHtml); $(rightcolumn).append(contactInfoHtml); $(rightcolumn).append(relationhtml); $(rightcolumn).append(effectivehtml); $(rightcolumn).append(expiredhtml); $('#infoEditor').jqxEditor({ height: 100, tools: '', editable: false, theme: 'bootstrap' }); $('#infoEditor').jqxEditor('val', dataAdapterCDetail.records[0].ContactInfoHtml) } }); //Phones ContactPhonesInfo = tabsdiv.find('.ContactPhonesInfo'); var title = tabsdiv.find('.ContactPhones'); title.text("Phones"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactPhonesInfo)); var centercolumn = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumn); var gvContactPhones = '<div id="gvContactPhones"></div>'; $(centercolumn).append(gvContactPhones); var sourcePhoneContact = { type: "POST", url: '@Url.Action("LoadPhones", "Contact")', data: { KeyNum: datarecord.KeyNum, KeyType: datarecord.KeyType }, dataType: "json", datafields: [ { name: 'PhoneNumber', type: 'string' }, { name: 'Ext', type: 'string' }, { name: 'PhoneType', type: 'string' }, { name: 'PhoneTypeDescription', type: 'string' }, { name: 'Comment', type: 'string' }, { name: 'AdditionalDataFlag', type: 'bool' }, { name: 'AutoNotifyFlag', type: 'bool' }, { name: 'BadNumberComment', type: 'string' }, { name: 'BadNumberFlag', type: 'bool' }, { name: 'SeqNum', type: 'int' }, { name: 'Title', type: 'string' } ], addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'PhoneNumber':'" + rowdata.PhoneNumber + "'," + "'PhoneTypeD':'" + rowdata.PhoneType + "'," + "'Ext':'" + rowdata.Ext + "'," + "'AutoNotifyFlag':" + rowdata.AutoNotifyFlag + "," + "'Comment':'" + rowdata.Comment + "'}"; $.ajax({ type: "POST", url: '@Url.Action("CreateNewContactPhone", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { rowdata.AdditionalDataFlag = data.Obj.AdditionalDataFlag; rowdata.BadNumberComment = data.Obj.BadNumberComment; rowdata.BadNumberDate = data.Obj.BadNumberDate; rowdata.SeqNum = data.Obj.SeqNum; rowdata.Title = data.Obj.Title; $("#lbNotificationSuccess").text("Phone Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, updaterow: function (rowid, rowdata, commit) { var rowOldData = $('#gvContactPhones').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'PhoneNumber':'" + rowdata.PhoneNumber + "'," + "'Ext':'" + rowdata.Ext + "'," + "'PhoneTypeD':'" + rowdata.PhoneType + "'," + "'AutoNotifyFlag':" + rowdata.AutoNotifyFlag + "," + "'BadNumberFlag':" + rowdata.BadNumberFlag + "," + "'Comment':'" + rowdata.Comment + "'," + "'SeqNum':" + rowOldData.SeqNum + "}"; $.ajax({ type: "POST", url: '@Url.Action("UpdateContactPhone", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { rowdata.AdditionalDataFlag = data.Obj.AdditionalDataFlag; rowdata.BadNumberComment = data.Obj.BadNumberComment; rowdata.SeqNum = data.Obj.SeqNum; rowdata.Title = data.Obj.Title; $("#lbNotificationSuccess").text("Phone Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContactPhones').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'SeqNum':" + rowOldData.SeqNum + "}"; $.ajax({ type: "POST", url: '@Url.Action("DeleteContactPhone", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Phone Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } }; var dataAdapterPhones = new $.jqx.dataAdapter(sourcePhoneContact); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var editrow = -1; var cellclass = function (row, columnfield, value, data) { if (data.BadNumberFlag == true && columnfield != 'AutoNotifyFlag') { return 'badphonegrid'; } } $("#gvContactPhones").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterPhones, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, filterable: true, enableellipsis: true, columnsresize: true, showtoolbar: true, rendertoolbar: function (toolbar) { var me = this; var container = $("<div style='margin: 5px;'></div>"); toolbar.append(container); container.append('<input id="addContactPhone" type="button" value="Add New" /> '); container.append('<input id="deleteContactPhone" type="button" value="Delete Row" /> '); container.append('<input id="showScheduleContact" type="button" value="Show Schedule" /> '); $("#addContactPhone").jqxButton({ theme: 'bootstrap', template: "primary" }); $("#deleteContactPhone").jqxButton({ theme: 'bootstrap', template: "warning" }); $("#showScheduleContact").jqxButton({ theme: 'bootstrap', template: "info" }); $("#addContactPhone").on('click', function () { $("#tbContactPhoneCreatePhone").val(''); $("#tbContactPhoneCreateExt").val(''); $("#tbContactPhoneCreateComment").val(''); $("#cbContactPhoneCreatePhoneType").jqxComboBox('clearSelection'); $("#cbContactPhoneCreateAuto").jqxCheckBox('val', false); var offset = $("#gvContactPhones").offset(); $("#popupWindowCreateContactPhone").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); $("#popupWindowCreateContactPhone").jqxWindow('open'); }); $("#deleteContactPhone").on('click', function () { if (confirm("Are you sure do you want delete?") == false) return; var selectedrowindex = $("#gvContactPhones").jqxGrid('getselectedrowindex'); var rowscount = $("#gvContactPhones").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#gvContactPhones").jqxGrid('getrowid', selectedrowindex); var commit = $("#gvContactPhones").jqxGrid('deleterow', id); } }); $("#showScheduleContact").on('click', function () { }); }, columns: [ { text: 'Phone', datafield: 'PhoneNumber', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, cellclassname: cellclass }, { text: 'Ext', datafield: 'Ext', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, cellclassname: cellclass }, { text: 'Phone Type', datafield: 'PhoneTypeDescription', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, cellclassname: cellclass }, { text: 'Auto', datafield: 'AutoNotifyFlag', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, columntype: 'checkbox', cellclassname: cellclass }, { text: 'Bad#', datafield: 'BadNumberFlag', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, columntype: 'checkbox', cellclassname: cellclass }, { text: 'Edit', datafield: 'Edit', width: 40, columntype: 'button', cellsrenderer: function () { return 'Edit'; }, buttonclick: function (row) { editrow = row; var offset = $("#gvContactPhones").offset(); $("#popupWindowEditContactPhone").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); var dataRecord = $("#gvContactPhones").jqxGrid('getrowdata', editrow); $("#tbContactPhoneEditPhone").jqxInput('val', dataRecord.PhoneNumber); $("#tbContactPhoneEditExt").jqxInput('val', dataRecord.Ext); $("#tbContactPhoneEditComment").jqxInput('val', dataRecord.Comment); var item = $("#cbContactPhoneEditPhoneType").jqxComboBox('getItemByValue', dataRecord.PhoneType); $("#cbContactPhoneEditPhoneType").jqxComboBox('selectItem', item); $("#cbContactPhoneEditAuto").jqxCheckBox('val', dataRecord.AutoNotifyFlag); $("#cbContactPhoneEditBadNumber").jqxCheckBox('val', dataRecord.BadNumberFlag); $("#popupWindowEditContactPhone").jqxWindow('open'); } } ] }); $("#btSaveCreateContactPhone").click(function () { var phonenumbervalue = $("#tbContactPhoneCreatePhone").val(); var phoneextensionvalue = $("#tbContactPhoneCreateExt").val(); var commenvalue = $("#tbContactPhoneCreateComment").val(); var phonetypeitemvalue = $("#cbContactPhoneCreatePhoneType").jqxComboBox('val'); var item = $("#cbContactPhoneCreatePhoneType").jqxComboBox('getItemByValue', phonetypeitemvalue); var autovalue = $("#cbContactPhoneCreateAuto").jqxCheckBox('val'); var row = { PhoneNumber: phonenumbervalue, Ext: phoneextensionvalue, PhoneType: phonetypeitemvalue, PhoneTypeDescription: item.label, AdditionalDataFlag: null, AutoNotifyFlag: autovalue, BadNumberComment: '', BadNumberFlag: false, SeqNum: null, Title: '', Comment: commenvalue }; var commit = $('#gvContactPhones').jqxGrid('addrow', null, row); $("#popupWindowCreateContactPhone").jqxWindow('hide'); }); $("#popupWindowEditContactPhone").on('open', function () { $("#tbContactPhoneEditPhone").jqxInput('selectAll'); }); $("#btSaveEditContactPhone").click(function () { if (editrow >= 0) { var phonenumbervalue = $("#tbContactPhoneEditPhone").val(); var phoneextensionvalue = $("#tbContactPhoneEditExt").val(); var commenvalue = $("#tbContactPhoneEditComment").val(); var phonetypeitemvalue = $("#cbContactPhoneEditPhoneType").jqxComboBox('val'); var item = $("#cbContactPhoneEditPhoneType").jqxComboBox('getItemByValue', phonetypeitemvalue); var autovalue = $("#cbContactPhoneEditAuto").jqxCheckBox('val'); var badnumbervalue = $("#cbContactPhoneEditBadNumber").jqxCheckBox('val'); var row = { PhoneNumber: phonenumbervalue, Ext: phoneextensionvalue, PhoneType: phonetypeitemvalue, PhoneTypeDescription: item.label, AdditionalDataFlag: null, AutoNotifyFlag: autovalue, BadNumberComment: '', BadNumberFlag: badnumbervalue, SeqNum: null, Title: '', Comment: commenvalue }; var commit = $('#gvContactPhones').jqxGrid('updaterow', editrow, row); $("#popupWindowEditContactPhone").jqxWindow('hide'); } }); //Emails var title = tabsdiv.find('.ContactEmails'); title.text("Emails"); ContactEmailInfo = tabsdiv.find('.ContactEmailsInfo'); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactEmailInfo)); var centercolumnHol = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumnHol); var gvContactEmail = '<div id="gvContactEmail"></div>'; $(centercolumnHol).append(gvContactEmail); var sourceEmailContact = { type: "POST", url: '@Url.Action("LoadEmails", "Contact")', data: { KeyNum: datarecord.ContactNum, KeyType: "Contact" }, dataType: "json", async: false, cache: false, datafields: [ { name: 'AutoNotifyFlag', type: 'bool' }, { name: 'DataChangeNotifyFlag', type: 'bool' }, { name: 'EmailAddress', type: 'string' }, { name: 'KeyNum', type: 'int' }, { name: 'KeyType', type: 'string' }, { name: 'SeqNum', type: 'int' }, { name: 'Title', type: 'string' } ], addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'KeyNum':" + datarecord.ContactNum + "," + "'KeyType':'" + "Contact" + "'," + "'AutoNotifyFlag':" + rowdata.AutoNotifyFlag + "," + "'email':'" + rowdata.EmailAddress + "'," + "'auto':" + rowdata.AutoNotifyFlag + "}"; $.ajax({ type: "POST", url: '@Url.Action("CreateEmail", "Contact")', data: params, contentType: "application/json; charset=utf-8", cache: false, dataType: "json", success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Email Created Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); UpdateContactEmailGrid(datarecord.ContactNum); commit(false); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, updaterow: function (rowid, rowdata, commit) { var rowOldData = $('#gvContactEmail').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.ContactNum + "," + "'KeyType':'" + "Contact" + "'," + "'SeqNum':" + rowOldData.SeqNum + "," + "'email':'" + rowdata.EmailAddress + "'," + "'auto':" + rowdata.AutoNotifyFlag + "}"; $.ajax({ type: "POST", url: '@Url.Action("UpdateEmail", "Contact")', data: params, contentType: "application/json; charset=utf-8", cache: false, dataType: "json", success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Email Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); UpdateContactEmailGrid(datarecord.ContactNum); commit(false); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContactEmail').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.ContactNum + "," + "'KeyType':'" + "Contact" + "'," + "'SeqNum':" + rowOldData.SeqNum + "}"; $.ajax({ type: "POST", url: '@Url.Action("DeleteEmail", "Contact")', data: params, cache: false, contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Email Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); UpdateContactEmailGrid(datarecord.ContactNum); commit(false); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } }; var dataAdapterEmail = new $.jqx.dataAdapter(sourceEmailContact); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var editrow = -1; $("#gvContactEmail").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterEmail, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, filterable: true, enableellipsis: true, columnsresize: true, showtoolbar: true, rendertoolbar: function (toolbar) { var me = this; var container = $("<div style='margin: 5px;'></div>"); toolbar.append(container); container.append('<input id="addContactEmail" type="button" value="Add New" /> '); container.append('<input id="deleteContactEmail" type="button" value="Delete Row" /> '); $("#addContactEmail").jqxButton({ theme: 'bootstrap', template: "primary" }); $("#deleteContactEmail").jqxButton({ theme: 'bootstrap', template: "warning" }); $("#addContactEmail").on('click', function () { $("#tbContactEmailCreateEmail").val(''); $("#cbContactEmailCreateAuto").jqxCheckBox('val', false); $("#cbContactEmailCreateData").jqxCheckBox('val', false); var offset = $("#gvContactEmail").offset(); $("#popupWindowCreateContactEmail").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); $("#popupWindowCreateContactEmail").jqxWindow('open'); }); $("#deleteContactEmail").on('click', function () { if (confirm("Are you sure do you want delete?") == false) return; var selectedrowindex = $("#gvContactEmail").jqxGrid('getselectedrowindex'); var rowscount = $("#gvContactEmail").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#gvContactEmail").jqxGrid('getrowid', selectedrowindex); var commit = $("#gvContactEmail").jqxGrid('deleterow', id); } }); }, columns: [ { text: 'Email', datafield: 'EmailAddress', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Auto', datafield: 'AutoNotifyFlag', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, columntype: 'checkbox' }, { text: 'Data', datafield: 'DataChangeNotifyFlag', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, columntype: 'checkbox' }, { text: 'Edit', datafield: 'Edit', width: 40, columntype: 'button', cellsrenderer: function () { return 'Edit'; }, buttonclick: function (row) { editrow = row; var offset = $("#gvContactEmail").offset(); $("#popupWindowEditContactEmail").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); var dataRecord = $("#gvContactEmail").jqxGrid('getrowdata', editrow); $("#tbContactEmailEditEmail").jqxInput('val', dataRecord.EmailAddress); $("#cbContactEmailEditAuto").jqxCheckBox('val', dataRecord.AutoNotifyFlag); $("#cbContactEmailEditData").jqxCheckBox('val', dataRecord.DataChangeNotifyFlag); $("#popupWindowEditContactEmail").jqxWindow('open'); } } ] }); $("#btSaveCreateContactEmail").click(function () { var emailAddress = $("#tbContactEmailCreateEmail").val(); var autovalue = $("#cbContactEmailCreateAuto").jqxCheckBox('val'); var datavalue = $("#cbContactEmailCreateData").jqxCheckBox('val'); var row = { AutoNotifyFlag: autovalue, DataChangeNotifyFlag: datavalue, EmailAddress: emailAddress, KeyNum: null, KeyType: null, SeqNum: null, Title: '' }; var commit = $('#gvContactEmail').jqxGrid('addrow', null, row); $("#popupWindowCreateContactEmail").jqxWindow('hide'); }); $("#popupWindowEditContactEmail").on('open', function () { $("#tbContactEmailEditEmail").jqxInput('selectAll'); }); $("#btSaveEditContactEmail").click(function () { if (editrow >= 0) { var emailAddress = $("#tbContactEmailEditEmail").val(); var autovalue = $("#cbContactEmailEditAuto").jqxCheckBox('val'); var datavalue = $("#cbContactEmailEditData").jqxCheckBox('val'); var row = { AutoNotifyFlag: autovalue, DataChangeNotifyFlag: datavalue, EmailAddress: emailAddress, KeyNum: null, KeyType: null, SeqNum: null, Title: '' }; var commit = $('#gvContactEmail').jqxGrid('updaterow', editrow, row); $("#popupWindowEditContactEmail").jqxWindow('hide'); } }); //Contact List Member ContactListMemberInfo = tabsdiv.find('.ContactListMemberInfo'); var title = tabsdiv.find('.ContactListMember'); title.text("Contact List"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactListMemberInfo)); var centercolumn = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumn); var gvContactListMember = '<div id="gvContactListMember"></div>'; $(centercolumn).append(gvContactListMember); var sourceContactListMember = { type: "POST", url: '@Url.Action("LoadContactListMember", "Contact")', data: { KeyNum: datarecord.KeyNum, KeyType: datarecord.KeyType, ContactNum: datarecord.ContactNum }, dataType: "json", datafields: [ { name: 'ContactListType', type: 'string' }, { name: 'ContactListTypeDescription', type: 'bool' }, { name: 'ContactNum', type: 'int' }, { name: 'KeyNum', type: 'int' }, { name: 'KeyType', type: 'string' }, { name: 'SeqNum', type: 'int' } ] }; var dataAdapterListMember = new $.jqx.dataAdapter(sourceContactListMember); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var editrow = -1; $("#gvContactListMember").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterListMember, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, enableellipsis: true, filterable: true, columnsresize: true, columns: [ { text: 'Type', datafield: 'ContactListType', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Description', datafield: 'ContactListTypeDescription', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Order#', datafield: 'SeqNum', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer } ] }); //Passcodes ContactPasscodesInfo = tabsdiv.find('.ContactPasscodesInfo'); var title = tabsdiv.find('.ContactPasscodes'); title.text("Passcodes"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactPasscodesInfo)); var centercolumn = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumn); var gvContactPasscode = '<div id="gvContactPasscode"></div>'; $(centercolumn).append(gvContactPasscode); var sourceContactPasscode = { type: "POST", url: '@Url.Action("LoadPINList", "Contact")', data: { KeyNum: datarecord.KeyNum, KeyType: datarecord.KeyType, ContactNum: datarecord.ContactNum }, dataType: "json", cache: false, datafields: [ { name: 'ContactNum', type: 'int' }, { name: 'KeyNum', type: 'int' }, { name: 'KeyType', type: 'string' }, { name: 'PIN', type: 'string' }, { name: 'SeqNum', type: 'int' } ], addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'PIN':'" + rowdata.PIN + "'}"; $.ajax({ type: "POST", url: '@Url.Action("CreateNewPIN", "Contact")', data: params, contentType: "application/json; charset=utf-8", cache: false, dataType: "json", success: function (data) { if (data.Success == true) { rowdata.SeqNum = data.Obj.SeqNum; $("#lbNotificationSuccess").text("PIN Created Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, updaterow: function (rowid, rowdata, commit) { var rowOldData = $('#gvContactPasscode').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'PIN':'" + rowdata.PIN + "'," + "'SeqNum':" + rowOldData.SeqNum + "}"; $.ajax({ type: "POST", url: '@Url.Action("UpdatePIN", "Contact")', data: params, contentType: "application/json; charset=utf-8", cache: false, dataType: "json", success: function (data) { if (data.Success == true) { rowdata.SeqNum = data.Obj.SeqNum; $("#lbNotificationSuccess").text("PIN Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContactPasscode').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'SeqNum':" + rowOldData.SeqNum + "}"; $.ajax({ type: "POST", url: '@Url.Action("DeletePIN", "Contact")', data: params, contentType: "application/json; charset=utf-8", cache: false, dataType: "json", success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("PIN Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } }; var dataAdapterPasscode = new $.jqx.dataAdapter(sourceContactPasscode); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var editrow = -1; $("#gvContactPasscode").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterPasscode, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, filterable: true, columnsresize: true, enableellipsis: true, showtoolbar: true, rendertoolbar: function (toolbar) { var me = this; var container = $("<div style='margin: 5px;'></div>"); toolbar.append(container); container.append('<input id="addContactPasscode" type="button" value="Add New" /> '); container.append('<input id="deleteContactPasscode" type="button" value="Delete Row" /> '); $("#addContactPasscode").jqxButton({ theme: 'bootstrap', template: "primary" }); $("#deleteContactPasscode").jqxButton({ theme: 'bootstrap', template: "warning" }); $("#addContactPasscode").on('click', function () { $("#tbContactPasscodeCreatePIN").val(''); var offset = $("#gvContactPasscode").offset(); $("#popupWindowCreateContactPasscode").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); $("#popupWindowCreateContactPasscode").jqxWindow('open'); }); $("#deleteContactPasscode").on('click', function () { if (confirm("Are you sure do you want delete?") == false) return; var selectedrowindex = $("#gvContactPasscode").jqxGrid('getselectedrowindex'); var rowscount = $("#gvContactPasscode").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#gvContactPasscode").jqxGrid('getrowid', selectedrowindex); var commit = $("#gvContactPasscode").jqxGrid('deleterow', id); } }); }, columns: [ { text: 'PIN', datafield: 'PIN', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Order#', datafield: 'SeqNum', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Edit', datafield: 'Edit', width: 40, columntype: 'button', cellsrenderer: function () { return 'Edit'; }, buttonclick: function (row) { editrow = row; var offset = $("#gvContactPasscode").offset(); $("#popupWindowEditContactPasscode").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); var dataRecord = $("#gvContactPasscode").jqxGrid('getrowdata', editrow); $("#tbContactPasscodeEditPIN").jqxInput('val', dataRecord.PIN); $("#popupWindowEditContactPasscode").jqxWindow('open'); } } ] }); $("#btSaveCreateContactPasscode").click(function () { var pinvalue = $("#tbContactPasscodeCreatePIN").val(); var row = { ContactNum: null, KeyNum: null, KeyType: '', PIN: pinvalue, SeqNum: null }; var commit = $('#gvContactPasscode').jqxGrid('addrow', null, row); $("#popupWindowCreateContactPasscode").jqxWindow('hide'); }); $("#popupWindowEditContactPasscode").on('open', function () { $("#tbContactPasscodeEditPIN").jqxInput('selectAll'); }); $("#btSaveEditContactPasscode").click(function () { if (editrow >= 0) { var pinvalue = $("#tbContactPasscodeEditPIN").val(); var row = { ContactNum: null, KeyNum: null, KeyType: '', PIN: pinvalue, SeqNum: null }; var commit = $('#gvContactPasscode').jqxGrid('updaterow', editrow, row); $("#popupWindowEditContactPasscode").jqxWindow('hide'); } }); //UserIds ContactUserIdInfo = tabsdiv.find('.ContactUserIdInfo'); var title = tabsdiv.find('.ContactUserId'); title.text("User IDs"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactUserIdInfo)); var centercolumn = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumn); var gvContactUser = '<div id="gvContactUser"></div>'; $(centercolumn).append(gvContactUser); var sourceContactUser = { type: "POST", url: '@Url.Action("LoadListUserId", "Contact")', data: { ContactNum: datarecord.ContactNum }, dataType: "json", cache: false, datafields: [ { name: 'ContactNum', type: 'int' }, { name: 'SiteNum', type: 'int' }, { name: 'TransmitterCode', type: 'string' }, { name: 'UserIDI', type: 'string' } ], addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'ContactNum':" + datarecord.ContactNum + "," + "'SystemNumber':'" + rowdata.TransmitterCode + "'," + "'userid':'" + rowdata.UserIDI + "'}"; $.ajax({ type: "POST", url: '@Url.Action("CreateNewUserId", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { rowdata.ContactNum = data.Obj.ContactNum; rowdata.SiteNum = data.Obj.SiteNum; $("#lbNotificationSuccess").text("UserID Created Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, updaterow: function (rowid, rowdata, commit) { var rowOldData = $('#gvContactUser').jqxGrid('getrowdata', rowid); var params = "{" + "'oldUserId':'" + rowOldData.UserIDI + "'," + "'oldTrasmitter':'" + rowOldData.TransmitterCode + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'SystemNumber':'" + rowdata.TransmitterCode + "'," + "'userid':'" + rowdata.UserIDI + "'}"; $.ajax({ type: "POST", url: '@Url.Action("UpdateUserId", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { rowdata.ContactNum = data.Obj.ContactNum; rowdata.SiteNum = data.Obj.SiteNum; $("#lbNotificationSuccess").text("UserID Updated Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContactUser').jqxGrid('getrowdata', rowid); var params = "{" + "'ContactNum':" + datarecord.ContactNum + "," + "'SystemNumber':'" + rowOldData.TransmitterCode + "'," + "'userid':'" + rowOldData.UserIDI + "'}"; $.ajax({ type: "POST", url: '@Url.Action("DeleteUserId", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("UserID Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); commit(true); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } }; var dataAdapterUser = new $.jqx.dataAdapter(sourceContactUser); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } var editrow = -1; $("#gvContactUser").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterUser, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, filterable: true, enableellipsis: true, columnsresize: true, showtoolbar: true, rendertoolbar: function (toolbar) { var me = this; var container = $("<div style='margin: 5px;'></div>"); toolbar.append(container); container.append('<input id="addContactUser" type="button" value="Add New" /> '); container.append('<input id="deleteContactUser" type="button" value="Delete Row" /> '); $("#addContactUser").jqxButton({ theme: 'bootstrap', template: "primary" }); $("#deleteContactUser").jqxButton({ theme: 'bootstrap', template: "warning" }); $("#addContactUser").on('click', function () { $("#tbContactUserCreateUserID").val(''); $("#cbContactUserCreateSystemNumber").jqxComboBox('clearSelection'); var offset = $("#gvContactUser").offset(); $("#popupWindowCreateUserID").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); $("#popupWindowCreateUserID").jqxWindow('open'); }); $("#deleteContactUser").on('click', function () { if (confirm("Are you sure do you want delete?") == false) return; var selectedrowindex = $("#gvContactUser").jqxGrid('getselectedrowindex'); var rowscount = $("#gvContactUser").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#gvContactUser").jqxGrid('getrowid', selectedrowindex); var commit = $("#gvContactUser").jqxGrid('deleterow', id); } }); }, columns: [ { text: 'User ID', datafield: 'UserIDI', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'System#', datafield: 'TransmitterCode', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'Edit', datafield: 'Edit', width: 40, columntype: 'button', cellsrenderer: function () { return 'Edit'; }, buttonclick: function (row) { editrow = row; var offset = $("#gvContactUser").offset(); $("#popupWindowEditUserID").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); var dataRecord = $("#gvContactUser").jqxGrid('getrowdata', editrow); $("#tbContactUserEditUserID").jqxInput('val', dataRecord.UserIDI); var item = $("#cbContactUserEditSystemNumber").jqxComboBox('getItemByValue', dataRecord.TransmitterCode); $("#cbContactUserEditSystemNumber").jqxComboBox('selectItem', item); $("#popupWindowEditUserID").jqxWindow('open'); } } ] }); $("#btSaveCreateContactUserId").click(function () { var userid = $("#tbContactUserCreateUserID").val(); var systemNumber = $("#cbContactUserCreateSystemNumber").jqxComboBox('val'); var row = { ContactNum: null, SiteNum: null, TransmitterCode: systemNumber, UserIDI: userid }; var commit = $('#gvContactUser').jqxGrid('addrow', null, row); $("#popupWindowCreateUserID").jqxWindow('hide'); }); $("#popupWindowEditUserID").on('open', function () { $("#cbContactUserEditSystemNumber").jqxComboBox('focus'); }); $("#btSaveEditContactUserId").click(function () { if (editrow >= 0) { var userid = $("#tbContactUserEditUserID").val(); var systemNumber = $("#cbContactUserEditSystemNumber").jqxComboBox('val'); var row = { ContactNum: null, SiteNum: null, TransmitterCode: systemNumber, UserIDI: userid }; var commit = $('#gvContactUser').jqxGrid('updaterow', editrow, row); $("#popupWindowEditUserID").jqxWindow('hide'); } }); //Temp Deactivate ContactTempDeactivateInfo = tabsdiv.find('.ContactTempDeactivateInfo'); var title = tabsdiv.find('.ContactTempDeactivate'); title.text("Deactivate"); var container = $('<div style="margin: 5px;"></div>') container.appendTo($(ContactTempDeactivateInfo)); var centercolumn = $('<div style="float: left; width: 100%;"></div>'); container.append(centercolumn); var gvContactTempDeactivate = '<div id="gvContactTemp"></div>'; $(centercolumn).append(gvContactTempDeactivate); var sourceTemporalDeactivate = { type: "POST", url: '@Url.Action("TemporalDeactivateList", "Contact")', data: { KeyNum: datarecord.KeyNum, KeyType: datarecord.KeyType, ContactNum: datarecord.ContactNum }, dataType: "json", async: false, cache: false, datafields: [ { name: 'ContactNum', type: 'int' }, { name: 'EndDate', type: 'date', format: "M/d/yyyy H:mm" }, { name: 'EndTime', type: 'string' }, { name: 'InactiveEndDate', type: 'date', format: "M/d/yyyy H:mm" }, { name: 'InactiveStartDate', type: 'date', format: "M/d/yyyy H:mm" }, { name: 'KeyNum', type: 'int' }, { name: 'KeyType', type: 'string' }, { name: 'StartDate', type: 'date', format: "M/d/yyyy H:mm" }, { name: 'StartTime', type: 'string' } ], beforeLoadComplete: function (records) { for (var i = 0; i < records.length; i++) { if (records[i].EndDate != null) { var date = new Date(records[i].EndDate); var mil = date.getTime(); var time = parseInt(mil); records[i].EndDate = new Date(parseInt(time) + new Date(time).getTimezoneOffset() * 60000); } if (records[i].InactiveEndDate != null) { var date = new Date(records[i].InactiveEndDate); var mil = date.getTime(); var time = parseInt(mil); records[i].InactiveEndDate = new Date(parseInt(time) + new Date(time).getTimezoneOffset() * 60000); }; if (records[i].InactiveStartDate != null) { var date = new Date(records[i].InactiveStartDate); var mil = date.getTime(); var time = parseInt(mil); records[i].InactiveStartDate = new Date(parseInt(time) + new Date(time).getTimezoneOffset() * 60000); }; if (records[i].StartDate != null) { var date = new Date(records[i].StartDate); var mil = date.getTime(); var time = parseInt(mil); records[i].StartDate = new Date(parseInt(time) + new Date(time).getTimezoneOffset() * 60000); }; } return records; }, addrow: function (rowid, rowdata, position, commit) { var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'StartDate':'" + rowdata.StartDate.toDateString() + "'," + "'StartTime':'" + rowdata.StartTime + "'," + "'EndDate':'" + rowdata.EndDate.toDateString() + "'," + "'EndTime':'" + rowdata.EndTime + "'}"; $.ajax({ type: "POST", url: '@Url.Action("CreateNewTemporalDeactivate", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Temp. Deactivate Created Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); UpdateTempDeactivate(datarecord.KeyNum, datarecord.KeyType, datarecord.ContactNum); commit(false); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); }, deleterow: function (rowid, commit) { var rowOldData = $('#gvContactTemp').jqxGrid('getrowdata', rowid); var params = "{" + "'KeyNum':" + datarecord.KeyNum + "," + "'KeyType':'" + datarecord.KeyType + "'," + "'ContactNum':" + datarecord.ContactNum + "," + "'StartDate':'" + rowOldData.StartDate.toDateString() + "'," + "'StartTime':'" + rowOldData.StartTime + "'," + "'EndDate':'" + rowOldData.EndDate.toDateString() + "'," + "'EndTime':'" + rowOldData.EndTime + "'}"; $.ajax({ type: "POST", url: '@Url.Action("DeleteTemporalDeactivate", "Contact")', data: params, contentType: "application/json; charset=utf-8", dataType: "json", cache: false, success: function (data) { if (data.Success == true) { $("#lbNotificationSuccess").text("Temp. Deactivate Remove Successfully"); $("#jqxNotificationSuccess").jqxNotification("open"); UpdateTempDeactivate(datarecord.KeyNum, datarecord.KeyType, datarecord.ContactNum); commit(false); } else { $("#lbNotification").text("An error occured. " + data.Message); $("#jqxNotification").jqxNotification("open"); commit(false); } } }); } }; var dataAdapterTemp = new $.jqx.dataAdapter(sourceTemporalDeactivate); var tooltiprenderer = function (element) { $(element).jqxTooltip({ position: 'mouse', content: $(element).text(), theme: 'bootstrap' }); } $("#gvContactTemp").jqxGrid({ width: "100%", theme: 'bootstrap', source: dataAdapterTemp, altrows: true, sortable: true, selectionmode: 'singlerow', pageable: true, pagesize: 20, enableellipsis: true, filterable: true, columnsresize: true, showtoolbar: true, rendertoolbar: function (toolbar) { var me = this; var container = $("<div style='margin: 5px;'></div>"); toolbar.append(container); container.append('<input id="addContactTemp" type="button" value="Add New" /> '); container.append('<input id="deleteContactTemp" type="button" value="Delete Row" /> '); $("#addContactTemp").jqxButton({ theme: 'bootstrap', template: "primary" }); $("#deleteContactTemp").jqxButton({ theme: 'bootstrap', template: "warning" }); $("#addContactTemp").on('click', function () { $("#tbContactTempCreateStartDate").val(null); $("#tbContactTempCreateEndDate").val(null); var offset = $("#gvContactTemp").offset(); $("#popupWindowCreateTemp").jqxWindow({ position: { x: parseInt(offset.left) + 60, y: parseInt(offset.top) + 60 } }); $("#popupWindowCreateTemp").jqxWindow('open'); }); $("#deleteContactTemp").on('click', function () { if (confirm("Are you sure do you want delete?") == false) return; var selectedrowindex = $("#gvContactTemp").jqxGrid('getselectedrowindex'); var rowscount = $("#gvContactTemp").jqxGrid('getdatainformation').rowscount; if (selectedrowindex >= 0 && selectedrowindex < rowscount) { var id = $("#gvContactTemp").jqxGrid('getrowid', selectedrowindex); var commit = $("#gvContactTemp").jqxGrid('deleterow', id); } }); }, columns: [ { text: 'Start Date', datafield: 'StartDate', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, cellsformat: "M/d/yyyy" }, { text: 'Start Time', datafield: 'StartTime', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer }, { text: 'End Date', datafield: 'EndDate', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer, cellsformat: "M/d/yyyy" }, { text: 'End Time', datafield: 'EndTime', sortable: true, groupable: true, exportable: true, rendered: tooltiprenderer } ] });
That is not a complete function but actually the problem is repeating in all the tabs that I made the event adrow for the grid,
Just note that in the vent addrow, or update or delete I’m refreshing the grid data assigning a new datasource, you could see when I’m calling the function (example): UpdateTempDeactivate(datarecord.KeyNum, datarecord.KeyType, datarecord.ContactNum);Thank you very much I appreciate it a lot!!
JoseThank you very much Dimitar for your advice, I think the problem is the ajax cache.
I Appreciate a lot your help
thank you very much Peter,
It works!!!Thank you very much, how could I update my parameters?? Is there any function for that??
Thanks again
JoseMarch 11, 2015 at 12:10 pm in reply to: change css class to a button on cell change css class to a button on cell #68348thank you very much I appreciated your help a lot, Dimitar I have another question:
I have a Datasource with parameters declared in that way:
data: { Device: $(“#cbHistorySystemNumber”).val(), IncludeOperatorAction: $(“#jqxHistoryIncludeOper”).jqxCheckBox(‘val’), endDate: $(‘#tbHistoryEndDate’).jqxDateTimeInput(‘getDate’) },I did the following functions to refresh the grid:
$(document).ready(function () {
$(‘#cbHistorySystemNumber’).on(‘select’, function (event) {
$(“#gvHistory”).jqxGrid(‘updatebounddata’);
});
});
$(document).ready(function () {
$(‘#tbHistoryEndDate’).on(‘change’, function (event) {
$(“#gvHistory”).jqxGrid(‘updatebounddata’);
});
});
$(document).ready(function () {
$(‘#jqxHistoryIncludeOper’).on(‘change’, function (event) {
$(“#gvHistory”).jqxGrid(‘updatebounddata’);
});
});The problem is that when the events fired when I check the callback to the method in the server the parameters don’t change the value, the refresh is ok, the datasource go to the server but the parameters don’t have the changes that I made in the screen?? I missed something or what do you think
Thank you very much
JoseMarch 11, 2015 at 11:14 am in reply to: change css class to a button on cell change css class to a button on cell #68345Thank you very much Dimitar, but I’m so sorry I’m not clear, I want to assign for example the property template like a jqxbutton to the button “Edit” in the grid cell…, where I should assign it?? in the cell render function???
March 10, 2015 at 3:38 pm in reply to: change css class to a button on cell change css class to a button on cell #68292Note: The button is a cell with type button!!
I don’t know I create another project with the same code for jqxDateTimeInput and work fine, I don’t know what happen with the application!!
Hi, thank you Peter, I already use jsfiddle.net, isn’t a problem of how to use your widgets I know how to use the problem is something different and I was wonder if your could help me to fix it, I have an application, a complete application finished and I want to buy the license to the customer, the problem is that for example I have in my application this code:
$(“#tbEndDate”).jqxDateTimeInput({ formatString: “MM/dd/yyyy” });
$(“#tbEndDate”).val(null);
that in the beginning works fine, and it is like the documentation, now I don’t know why and I don’t have any idea when I execute the application it throw me an exception saying:Exception was thrown at line 7, column 365116 in http://localhost:57263/Scripts/JQWidgets/jqx-all.js
0x800a138f – JavaScript runtime error: Unable to get property ‘_daysInMonth’ of undefined or null reference
If there is a handler for this exception, the program may be safely continued.
In the same way with the jqxcombobox, there must be something that I changed or did that broke everything, I just need your experience to get with the problem and solved it… please
thank you peter, I’m already using the widgets and everything work fine but in one moment, the application start to getting me this error!!!
But thank you for your commitment with my problem!!!Sorry I also delete all my last code and also I’m getting this problem now:
Exception was thrown at line 7, column 43070 in http://localhost:57263/Scripts/JQWidgets/jqxdatetimeinput.js0x800a138f – JavaScript runtime error: Unable to get property ‘_daysInMonth’ of undefined or null reference
If there is a handler for this exception, the program may be safely continued.
Hello everybody, I was looking for to long trying to reach a method that allow me make the jqxgrid dataadapter invoke a method in the server, the method refreshdata, refreshunbound, and refresh don’t call the method in the server that load new data enter, is there any method in the jqxgrid that allow me load data from the server in a refresh???
Thank you very much for your patient.All right, thank you very much!!
Hello, I solved the problem calling the same function again… but I add an issue doing this, the method deleterow it is firing more than one time when I close and open the object window…
February 24, 2015 at 6:59 pm in reply to: How can i hide the jqxcombobox How can i hide the jqxcombobox #67588thank you very much, issue solved with hide()
-
AuthorPosts