Friday, August 26, 2022

AjaxManager


var AjaxManager = {


    //MVC call

    GetJsonResult: function (serviceUrl, jsonParams, isAsync, isCache, successCallback, errorCallback) {

        $.ajax({

            type: "GET",

            async: isAsync,

            cache: isCache,

            url: serviceUrl,

            data: jsonParams,

            contentType: "application/json; charset=utf-8",

            dataType: "json",

            success: successCallback,

            error: errorCallback

        });

    },

    GetJsonResult2: function (serviceUrl, jsonParams, isAsync, isCache, successCallback, errorCallback) {

        $.ajax({

            type: "GET",

            async: isAsync,

            cache: isCache,

            url: serviceUrl,

            data: "{" + jsonParams + "}",

            contentType: "application/json; charset=utf-8",

            dataType: "json",

            success: successCallback,

            error: errorCallback

        });

    },

    GetJsonResultPOST: function (serviceUrl, jsonParams, isAsync, isCache, successCallback, errorCallback) {

        $.ajax({

            type: "POST",

            async: isAsync,

            cache: isCache,

            url: serviceUrl,

            data: "{" + jsonParams + "}",

            contentType: "application/json; charset=utf-8",

            dataType: "json",

            success: successCallback,

            error: errorCallback

        });

    },

    GetAPI: function (serviceUrl, successCallback, errorCallback) {

        $.ajax({

            type: "GET",

            url: serviceUrl,

            dataType: "json",

            success: successCallback,

            error: errorCallback

        });

    },


    GetJson: function (serviceUrl, jsonParams, successCallback, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            data: jsonParams,

            type: "POST",

            processData: true,

            contentType: "application/json",

            dataType: "json",

            success: successCallback,

            error: errorCallback

        });

    },

    SendJson: function (serviceUrl, jsonParams, successCallback, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            data: jsonParams,

            async: true,

            cache: false,

            type: "POST",

            success: successCallback,

            error: errorCallback

        });

    },

    SendJson2: function (serviceUrl, jsonParams, successCallback, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            async: false,

            type: "POST",

            data: "{" + jsonParams + "}",

            dataType: "json",

            contentType: "application/json; charset=utf-8",

            success: successCallback,

            error: errorCallback

        });

    },

    SendJson3: function (serviceUrl, jsonParams, successCallback, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            async: true,

            type: "POST",

            data: "{" + jsonParams + "}",

            dataType: "json",

            contentType: "application/json; charset=utf-8",

            success: successCallback,

            error: errorCallback

        });

    },

    SendJsonWithToken: function (serviceUrl, jsonParams, successCallback, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            async: false,

            type: "POST",

            data: "{" + jsonParams + "}",

            dataType: "json",

            contentType: "application/json; charset=utf-8",

            beforeSend: function (xhr) {

                //   localStorage.setItem('token', token);need to set token after login

                xhr.setRequestHeader("Authorization", 'Bearer ' + localStorage.getItem('token'));

            },

            success: successCallback,

            error: errorCallback

        });

    },


    GetReport: function (serviceUrl, jsonParams, errorCallback) {

        jQuery.ajax({


            url: serviceUrl,

            async: false,

            type: "POST",

            data: "{" + jsonParams + "}",

            // dataType: "json",

            contentType: "application/json; charset=utf-8",

            success: function () {


                window.open('../Reports/ReportViewer.aspx', '_newtab');

                //window.open("../Reports/ReportViewer.aspx", 'mywindow', 'fullscreen=yes, scrollbars=auto',);

            },


            error: errorCallback


        });


    },

    PrintReport: function (serviceUrl, jsonParams, errorCallback) {

        jQuery.ajax({

            url: serviceUrl,

            async: false,

            type: "POST",

            data: "{" + jsonParams + "}",

            // dataType: "json",

            contentType: "application/json; charset=utf-8",

            error: errorCallback

        });


    },

    GetRdlcReport: function (serviceUrl, jsonParams, errorCallback) {


        jQuery.ajax({


            url: serviceUrl,

            async: false,

            type: "POST",

            data: "{" + jsonParams + "}",

            // dataType: "json",

            contentType: "application/json; charset=utf-8",

            success: function () {


                window.open('../Reports/ReportViewerRDLC.aspx', '_blank');

                //window.open("../Reports/ReportViewer.aspx", 'mywindow', 'fullscreen=yes, scrollbars=auto',);

            },


            error: errorCallback


        });


    },

   

    


   

  

    getDayDifference: function (date1, date2) {


        // The number of milliseconds in one day

        var ONE_DAY = 1000 * 60 * 60 * 24;


        // Convert both dates to milliseconds

        var date1_ms = new Date(date1).getTime();

        var date2_ms = new Date(date2).getTime();


        // Calculate the difference in milliseconds

        var difference_ms = Math.abs(date1_ms - date2_ms);


        // Convert back to days and return

        return Math.round(difference_ms / ONE_DAY);


    },

  

    daysBetween: function (date1, date2) {


        // The number of milliseconds in one day

        var ONE_DAY = 1000 * 60 * 60 * 24;


        // Convert both dates to milliseconds

        var date1_ms = new Date(date1).getTime();

        var date2_ms = new Date(date2).getTime();


        // Calculate the difference in milliseconds

        var difference_ms = Math.abs(date1_ms - date2_ms);


        // Convert back to days and return

        return Math.round(difference_ms / ONE_DAY);


    },


    isFloat: function (s) {

        return /^\s*(\d+)?(\.(\d+))?\s*$/.test(s);

    },

    isDate: function (str) {

        var m = str.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);

        return (m) ? true : false;

    },

  

    isEmpty: function (s) {

        return !((s != null) && /^\s*(\S+(\s+\S+)*)\s*$/.test(s));

    },

    checkSpecialCharacters: function (id) {


        var checkString = $("#" + id).val();


        var regex = /[^\w\s&]/gi;



        if (checkString != "") {

            if (regex.test(checkString)) {

                AjaxManager.MsgBox('warning', 'center', 'Special Characters:', 'Your search string contains illegal characters.',

                      [{

                          addClass: 'btn btn-primary', text: 'Ok', onClick: function ($noty) {

                              $noty.close();

                              return (false);

                          }

                      }]);


            }

            else {

                return true;

            }

        }


    },

    replaceSingleQoute: function (id) {


        var checkString = $("#" + id).val();

        checkString = checkString.replace(/'/g, "''");

        return checkString;


    },



    validator: function (divId) {


        var validator = divId.kendoValidator().data("kendoValidator"),

           status = $(".status");


        if (validator.validate()) {

            status.text("").addClass("valid");

            return true;

        } else {

            status.text("Oops! There is invalid data in the form.").addClass("invalid");

            return false;

        }

    },


    Trim: function (s) {

        //return s.replace(s,"/^ *(\w+ ?)+ *$/", "");

        return (s.replace(/\s+/g, ' ')).trim();

    },

    isValidItem: function (ctrlId, isClear) {


        var cmbBox = $("#" + ctrlId).data("kendoComboBox");


        if (cmbBox.value() != "" && cmbBox.value() == cmbBox.text()) {

            AjaxManager.MsgBox('warning', 'center', 'Invalid Item:', 'No Item matched with your Input data as like "[' + cmbBox.text() + ']"!', [{

                addClass: 'btn btn-primary',

                text: 'Ok',

                onClick: function ($noty) {

                    $noty.close();

                    //cmbBox.focus();

                    if (isClear)

                        cmbBox.value('');



                }

            }

            ]);

            return false;

        } else {

            return true;

        }

    },


};                       //End AjaxManager



=============How to call=======================

   GenerateBranchCombo: function (companyId) {

        var objBranch = "";

        var jsonParam = "companyId=" + companyId;

        var serviceUrl = "../../Branch/GetBranchByCompanyIdForCombo/";

        AjaxManager.GetJsonResult(serviceUrl, jsonParam, false, false, onSuccess, onFailed);


        function onSuccess(jsonData) {

            objBranch = jsonData;

        }

        function onFailed(error) {

            window.alert(error.statusText);

        }

        return objBranch;

    },


===========Kendo Combo Load=====


 GenerateDistrictCombo: function (sectionId, identity) {

        //var objSection = smsCommonManager.GetClassData(sectionId);

        $("#" + identity).kendoComboBox({

            placeholder: "All",

            dataTextField: "DistrictName",

            dataValueField: "DistrictId",

            dataSource: [],

            change: function () {

                AjaxManager.isValidItem(identity, true);

            }

        });

    },

No comments:

Post a Comment

JWT Authentication in ASP.NET Core Web API

  In this tutorial we'll go through a simple example of how to implement  JWT (JSON Web Token) authentication in an ASP.NET Core 3.0 API...