PageSourceSearch

https://gordonbrothersmarketplace.com/Scripts/site.js

js gordonbrothersmarketplace.com collected 2026-10-09 22:13:00 UTC 11,521 bytes, 339 lines download raw bytes

1
2
3$('form').each(function () {
4    $(this).unbind("invalid-form.validate"); // remove old handler
5    $(this).bind("elementValidation", function (event, element, result) {
6        //console.log("Something is invalid");
7    });
8    $(this).bind("invalid-form.validate", function (f, v) {
9        //console.log(v);
10        var settngs = v.settings;
11        var oldErrorFunction = settngs.errorPlacement;
12        var oldSucessFunction = settngs.success;
13        settngs.errorPlacement = function (error, element) {
14            $(element).parent('div').find(".fa").remove();
15            $(element).after($('<i class="fa fa-close feedback-icon"></i>'));
16            if (element.val() == '') {
17                $(element).parent('div').find(".fa").remove();
18            }
19            oldErrorFunction(error, element);
20        }
21        settngs.success = function (error) {
22            oldSucessFunction(error);
23        }
24
25    });
26
27});
28
29(function ($) {
30    $.validator.unobtrusive.adapters.addBool("checkboxrequired", "required");
31}(jQuery));
32
33function convertUTCDateToLocalDate(date) {
34    var newDate = new Date(date.getTime() + date.getTimezoneOffset() * 60 * 1000);
35
36    var offset = date.getTimezoneOffset() / 60;
37    var hours = date.getHours();
38
39    newDate.setHours(hours - offset);
40
41    return newDate;
42}
43
44function startBlock(elementName) {
45    var element = $('#' + elementName);
46    if (element != null) {
47        element.block(
48            {
49                message: '<div class="fa fa-spinner fa-spin"></div>',
50                //message: '<div><i class="fa faa-pulse animated"><img id="imgIcon" src="/Content/images/icon.png" style="border: none; height: 46px;" /></i></div>',
51                css: { background: 'none', border: 'none' }
52            });
53    }
54}
55
56function endBlock(elementName) {
57    var element = $('#' + elementName);
58    if (element != null) {
59        element.unblock();
60    }
61}
62
63function getParameterByName(name) {
64  name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
65  var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), results = regex.exec(location.search);
66
67  return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
68}
69
70function renderPOSTData(divId, data, errorMessage) {
71    startBlock(divId);
72
73    $.ajax({
74        method: "POST",
75        url: $("#" + divId).data('url'),
76        data: data,
77        success: function (e) {
78            $("#" + divId).html(e);
79        },
80        error: function (e) {
81            endBlock(divId);
82            //notifyError(errorMessage);
83            notifyError(errorMessage);
84        }
85    });
86}
87
88function renderGETDataUrl(divId, url, errorMessage, callback) {
89    startBlock(divId);
90
91    $.ajax({
92        method: "GET",
93        url: url,
94        success: function (e) {
95            $("#" + divId).html(e);
96            if (callback != null)
97                callback();
98        },
99        error: function (e) {
100            endBlock(divId);
101            $("#" + divId).html('<div class=alert alert-danger fade in"><i class="fa-fw fa fa-info"></i><strong>Error!</strong>' + errorMessage + '</div>');
102        }
103    });
104}
105
106// Custom string extension to get local date time from UTC date time
107String.prototype.toLocalDateTime = function () {
108    let date = this;
109    if (new Date(date).getYear() < 0)
110        date = new Date();
111    return new Date(new Date(date).toLocaleString() + ' UTC');
112};
113
114function renderGETData(divId, errorMessage, callback) {
115    startBlock(divId);
116
117    $.ajax({
118        method: "GET",
119        url: $("#" + divId).data('url'),
120        success: function (e) {
121            $("#" + divId).html(e);
122            if (callback != null)
123                callback();
124        },
125        error: function (e) {
126            endBlock(divId);
127            $("#" + divId).html('<div class=alert alert-danger fade in"><i class="fa-fw fa fa-info"></i><strong>Error!</strong>' + errorMessage + '</div>');
128        }
129    });
130}
131
132
133function cancelFormGlobal() {
134    window.location.href = '/home/index';
135    return false;
136}
137function resetFormGlobal(e) {
138    $('#' + e)[0].reset();
139    $('#' + e + " input").each(function () {
140        var cb = $(this).data("kendoComboBox");
141        if (cb) {
142            setTimeout(resetComboBox, 50, cb, 1);
143        }
144    });
145    return false;
146}
147
148resetComboBox = function (widget, val) {
149    widget.text('');
150}
151
152function notifyInfo(message) {
153    toastr.info(message, "Info");
154}
155
156function notifySuccess(message) {
157    toastr.success(message, "Success");
158}
159
160function notifyError(message) {
161    toastr.error(message, "Error");
162}
163
164function showInfo(message) {
165    $('#divGlobalMessage').hide();
166    $('#divGlobalMessageType').removeClass();
167    $('#divGlobalMessageType').addClass('alert alert-info fade in');
168    $('#divGlobalMessageType').html('');
169    $('#divGlobalMessageType').append('<button class="close" data-dismiss="alert"> × </button>');
170    $('#divGlobalMessageType').append('<i class="fa-fw fa fa-info"></i> ');
171    $('#divGlobalMessageType').append('<strong>Info! </strong>' + message);
172    $('#divGlobalMessage').show();
173}
174function showError(message) {
175    $('#divGlobalMessage').hide();
176    $('#divTableErrorMessage').hide();
177    $('#divGlobalMessageType').removeClass();
178    $('#divGlobalMessageType').addClass('alert alert-danger fade in');
179    $('#divGlobalMessageType').html('');
180    $('#divGlobalMessageType').append('<button class="close" data-dismiss="alert"> × </button>');
181    $('#divGlobalMessageType').append('<i class="fa-fw fa fa-times"></i> ');
182    $('#divGlobalMessageType').append('<strong>Error! </strong>' + message);
183    $('#divGlobalMessage').show();
184}
185function showSuccess(message) {
186    $('#divGlobalMessage').hide();
187    $('#divTableErrorMessage').hide();
188    $('#divGlobalMessageType').removeClass();
189    $('#divGlobalMessageType').addClass('alert alert-success fade in');
190    $('#divGlobalMessageType').html('');
191    $('#divGlobalMessageType').append('<button class="close" data-dismiss="alert"> × </button>');
192    $('#divGlobalMessageType').append('<i class="fa-fw fa fa-check"></i> ');
193    $('#divGlobalMessageType').append('<strong>Success </strong>' + message);
194    $('#divGlobalMessage').show();
195}
196
197function showTableError(message) {
198    $('#divTableErrorMessage').hide();
199    $('#divTableErrorMessageType').removeClass();
200    $('#divTableErrorMessageType').addClass('alert alert-danger');
201    $('#divTableErrorMessageType').html('');
202    $('#divTableErrorMessageType').append('<button class="close" data-dismiss="alert"> × </button>');
203    $('#divTableErrorMessageType').append('<i class="fa-fw fa fa-times"></i> ');
204    $('#divTableErrorMessageType').append('<strong>Error! </strong>' + message);
205    $('#divTableErrorMessage').show();
206}
207
208function showTableSucess(message) {
209    $('#divTableErrorMessage').hide();
210    $('#divTableErrorMessageType').removeClass();
211    $('#divTableErrorMessageType').addClass('alert alert-success');
212    $('#divTableErrorMessageType').html('');
213    $('#divTableErrorMessageType').append('<button class="close" data-dismiss="alert"> × </button>');
214    $('#divTableErrorMessageType').append('<i class="fa-fw fa fa-check"></i> ');
215    $('#divTableErrorMessageType').append('<strong>Success </strong>' + message);
216    $('#divTableErrorMessage').show();
217}
218
219function exportToExcel(table, fileName) {
220    $("#" + table).table2excel({
221        //exclude: ".excludeThisClass",
222        name: "Worksheet Name",
223        filename: fileName //do not include extension
224    });
225
226}
227
228//KENDO GRID SELECT
229
230function clearSelection(gridId) {
231    $('#' + gridId + ' :checkbox').prop('checked', false);
232    $('#' + gridId + ' table tbody tr').removeClass('k-state-selected');
233    showActions(gridId);
234    refreshData();
235}
236
237function checkAll(ele, gridId) {
238    var state = $(ele).is(':checked');
239    gridId = $(gridId).attr('id');
240    $('#' + gridId + ' :checkbox[name=chkItem]').prop('checked', state);
241
242
243    if (state == true) {
244        $('#' + gridId + ' table').find("input:checkbox[name=chkItem]:checked").each(function () {
245            $(this).closest('tr').addClass('k-state-selected');
246        });
247    } else {
248        $('#' + gridId + ' table').find("input:checkbox[name=chkItem]").each(function () {
249            $(this).closest('tr').removeClass('k-state-selected');
250        });
251    }
252    refreshData();
253    showActions(gridId);
254}
255
256function checkMe(ele, gridId) {
257    gridId = $(gridId).attr('id');
258    if ($(ele).is(':checked')) {
259        $(ele).closest('tr').addClass('k-state-selected');
260    }
261    else {
262        $(ele).closest('tr').removeClass('k-state-selected');
263    }
264    refreshData();
265    showActions(gridId);
266}
267
268function showActions(gridId) {
269    if ($('#' + gridId + ' :checkbox[name=chkItem]:checked').length > 0) {
270        $('#div' + gridId + ' :input').prop("disabled", false);
271        $('#span' + gridId).text('Selected Items: ' + $('#' + gridId + ' :checkbox[name=chkItem]:checked').length + ' | ');
272        $('#lnk' + gridId).show();
273    }
274    else {
275        $('#div' + gridId + ' :input').prop("disabled", true);
276        $('#span' + gridId).text('');
277        $('#lnk' + gridId).hide();
278        $('#' + gridId + ' :checkbox[name=chkAll]').prop("checked", false);
279    }
280}
281
282function sync_handler(e) {
283    this.read();
284}
285
286function kendoGridErrorHandle(e) {
287    try {
288        kendoGridAnimationEnd(e);
289    } catch (err) {
290
291    }
292    if (e.xhr != null && e.xhr.status == 99) {
293        notifyError(e.xhr.responseText);
294        return;
295    }
296    if (e.errors) {
297        var message = "";
298        $.each(e.errors, function (key, value) {
299            if ('errors' in value) {
300                $.each(value.errors, function () {
301                    message += this + "\n";
302                });
303            }
304        });
305        notifyError("Update Failed: " + message);
306    }
307}
308
309function kendoGridAnimationEnd(e) {
310    if (e.status == "error" || e.type == "update" || e.type == "create" || e.type == "destroy") {
311        var activeGrid = findGridByDataSource(e.sender);
312        var activeGridId = activeGrid.wrapper.attr("id");
313        var grid = $('#' + activeGridId).data("kendoGrid");
314        var gridTable = grid.table && grid.table.jquery ? grid.table[0] : grid.table;
315        if (window.GBComponents && typeof GBComponents.hideLoading === "function") {
316            GBComponents.hideLoading(gridTable);
317        } else if (window.kendo && kendo.ui && kendo.ui.progress) {
318            kendo.ui.progress(grid.table, false);
319        }
320    }
321}
322
323function integerFilter(element) {
324    element.kendoNumericTextBox({
325        format: "n0"
326    });
327}
328
329function formatCurrency(value, places, symbol, thousand, decimal) {
330    places = !isNaN(places = Math.abs(places)) ? places : 2;
331    symbol = symbol !== undefined ? symbol : "$";
332    thousand = thousand || ",";
333    decimal = decimal || ".";
334    var number = value,
335        negative = number < 0 ? "-" : "",
336        i = parseInt(number = Math.abs(+number || 0).toFixed(places), 10) + "",
337        j = (j = i.length) > 3 ? j % 3 : 0;
338    return symbol + negative + (j ? i.substr(0, j) + thousand : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thousand) + (places ? decimal + Math.abs(number - i).toFixed(places).slice(2) : "");
339}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.