//custom jquery method for toggle attr
$.fn.toggleAttr = function (attr, attr1, attr2) {
return this.each(function () {
var self = $(this);
if (self.attr(attr) == attr1) self.attr(attr, attr2);
else self.attr(attr, attr1);
});
};
(function ($) {
// USE STRICT
"use strict";
AIZ.data = {
csrf: $('meta[name="csrf-token"]').attr("content"),
appUrl: $('meta[name="app-url"]').attr("content"),
fileBaseUrl: $('meta[name="file-base-url"]').attr("content"),
};
AIZ.uploader = {
data: {
selectedFiles: [],
selectedFilesObject: [],
clickedForDelete: null,
allFiles: [],
multiple: false,
type: "all",
next_page_url: null,
prev_page_url: null,
},
removeInputValue: function (id, array, elem) {
var selected = array.filter(function (item) {
return item !== id;
});
if (selected.length > 0) {
$(elem)
.find(".file-amount")
.html(AIZ.uploader.updateFileHtml(selected));
} else {
elem.find(".file-amount").html(AIZ.local.choose_file);
}
$(elem).find(".selected-files").val(selected);
},
removeAttachment: function () {
$(document).on("click",'.remove-attachment', function () {
var value = $(this)
.closest(".file-preview-item")
.data("id");
var selected = $(this)
.closest(".file-preview")
.prev('[data-toggle="aizuploader"]')
.find(".selected-files")
.val()
.split(",")
.map(Number);
AIZ.uploader.removeInputValue(
value,
selected,
$(this)
.closest(".file-preview")
.prev('[data-toggle="aizuploader"]')
);
$(this).closest(".file-preview-item").remove();
});
},
deleteUploaderFile: function () {
$(".aiz-uploader-delete").each(function () {
$(this).on("click", function (e) {
e.preventDefault();
var id = $(this).data("id");
AIZ.uploader.data.clickedForDelete = id;
$("#aizUploaderDelete").modal("show");
$(".aiz-uploader-confirmed-delete").on("click", function (
e
) {
e.preventDefault();
if (e.detail === 1) {
var clickedForDeleteObject =
AIZ.uploader.data.allFiles[
AIZ.uploader.data.allFiles.findIndex(
(x) =>
x.id ===
AIZ.uploader.data.clickedForDelete
)
];
$.ajax({
url:
AIZ.data.appUrl +
"/aiz-uploader/destroy/" +
AIZ.uploader.data.clickedForDelete,
type: "DELETE",
dataType: "JSON",
data: {
id: AIZ.uploader.data.clickedForDelete,
_method: "DELETE",
_token: AIZ.data.csrf,
},
success: function () {
AIZ.uploader.data.selectedFiles = AIZ.uploader.data.selectedFiles.filter(
function (item) {
return (
item !==
AIZ.uploader.data
.clickedForDelete
);
}
);
AIZ.uploader.data.selectedFilesObject = AIZ.uploader.data.selectedFilesObject.filter(
function (item) {
return (
item !== clickedForDeleteObject
);
}
);
AIZ.uploader.updateUploaderSelected();
AIZ.uploader.getAllUploads(
AIZ.data.appUrl +
"/aiz-uploader/get_uploaded_files"
);
AIZ.uploader.data.clickedForDelete = null;
$("#aizUploaderDelete").modal("hide");
},
});
}
});
});
});
},
uploadSelect: function () {
$(".aiz-uploader-select").each(function () {
var elem = $(this);
elem.on("click", function (e) {
var value = $(this).data("value");
var valueObject =
AIZ.uploader.data.allFiles[
AIZ.uploader.data.allFiles.findIndex(
(x) => x.id === value
)
];
// console.log(valueObject);
elem.closest(".aiz-file-box-wrap").toggleAttr(
"data-selected",
"true",
"false"
);
if (!AIZ.uploader.data.multiple) {
elem.closest(".aiz-file-box-wrap")
.siblings()
.attr("data-selected", "false");
}
if (!AIZ.uploader.data.selectedFiles.includes(value)) {
if (!AIZ.uploader.data.multiple) {
AIZ.uploader.data.selectedFiles = [];
AIZ.uploader.data.selectedFilesObject = [];
}
AIZ.uploader.data.selectedFiles.push(value);
AIZ.uploader.data.selectedFilesObject.push(valueObject);
} else {
AIZ.uploader.data.selectedFiles = AIZ.uploader.data.selectedFiles.filter(
function (item) {
return item !== value;
}
);
AIZ.uploader.data.selectedFilesObject = AIZ.uploader.data.selectedFilesObject.filter(
function (item) {
return item !== valueObject;
}
);
}
AIZ.uploader.addSelectedValue();
AIZ.uploader.updateUploaderSelected();
});
});
},
updateFileHtml: function (array) {
var fileText = "";
if (array.length > 1) {
var fileText = AIZ.local.files_selected;
} else {
var fileText = AIZ.local.file_selected;
}
return array.length + " " + fileText;
},
updateUploaderSelected: function () {
$(".aiz-uploader-selected").html(
AIZ.uploader.updateFileHtml(AIZ.uploader.data.selectedFiles)
);
},
clearUploaderSelected: function () {
$(".aiz-uploader-selected-clear").on("click", function () {
AIZ.uploader.data.selectedFiles = [];
AIZ.uploader.addSelectedValue();
AIZ.uploader.addHiddenValue();
AIZ.uploader.resetFilter();
AIZ.uploader.updateUploaderSelected();
AIZ.uploader.updateUploaderFiles();
});
},
resetFilter: function () {
$('[name="aiz-uploader-search"]').val("");
$('[name="aiz-show-selected"]').prop("checked", false);
$('[name="aiz-uploader-sort"] option[value=newest]').prop(
"selected",
true
);
},
getAllUploads: function (url, search_key = null, sort_key = null) {
$(".aiz-uploader-all").html(
'
'
);
var params = {};
if (search_key != null && search_key.length > 0) {
params["search"] = search_key;
}
if (sort_key != null && sort_key.length > 0) {
params["sort"] = sort_key;
}
else{
params["sort"] = 'newest';
}
$.get(url, params, function (data, status) {
//console.log(data);
if(typeof data == 'string'){
data = JSON.parse(data);
}
AIZ.uploader.data.allFiles = data.data;
AIZ.uploader.allowedFileType();
AIZ.uploader.addSelectedValue();
AIZ.uploader.addHiddenValue();
//AIZ.uploader.resetFilter();
AIZ.uploader.updateUploaderFiles();
if (data.next_page_url != null) {
AIZ.uploader.data.next_page_url = data.next_page_url;
$("#uploader_next_btn").removeAttr("disabled");
} else {
$("#uploader_next_btn").attr("disabled", true);
}
if (data.prev_page_url != null) {
AIZ.uploader.data.prev_page_url = data.prev_page_url;
$("#uploader_prev_btn").removeAttr("disabled");
} else {
$("#uploader_prev_btn").attr("disabled", true);
}
});
},
showSelectedFiles: function () {
$('[name="aiz-show-selected"]').on("change", function () {
if ($(this).is(":checked")) {
// for (
// var i = 0;
// i < AIZ.uploader.data.allFiles.length;
// i++
// ) {
// if (AIZ.uploader.data.allFiles[i].selected) {
// AIZ.uploader.data.allFiles[
// i
// ].aria_hidden = false;
// } else {
// AIZ.uploader.data.allFiles[
// i
// ].aria_hidden = true;
// }
// }
AIZ.uploader.data.allFiles =
AIZ.uploader.data.selectedFilesObject;
} else {
// for (
// var i = 0;
// i < AIZ.uploader.data.allFiles.length;
// i++
// ) {
// AIZ.uploader.data.allFiles[
// i
// ].aria_hidden = false;
// }
AIZ.uploader.getAllUploads(
AIZ.data.appUrl + "/aiz-uploader/get_uploaded_files"
);
}
AIZ.uploader.updateUploaderFiles();
});
},
searchUploaderFiles: function () {
$('[name="aiz-uploader-search"]').on("keyup", function () {
var value = $(this).val();
AIZ.uploader.getAllUploads(
AIZ.data.appUrl + "/aiz-uploader/get_uploaded_files",
value,
$('[name="aiz-uploader-sort"]').val()
);
// if (AIZ.uploader.data.allFiles.length > 0) {
// for (
// var i = 0;
// i < AIZ.uploader.data.allFiles.length;
// i++
// ) {
// if (
// AIZ.uploader.data.allFiles[
// i
// ].file_original_name
// .toUpperCase()
// .indexOf(value) > -1
// ) {
// AIZ.uploader.data.allFiles[
// i
// ].aria_hidden = false;
// } else {
// AIZ.uploader.data.allFiles[
// i
// ].aria_hidden = true;
// }
// }
// }
//AIZ.uploader.updateUploaderFiles();
});
},
sortUploaderFiles: function () {
$('[name="aiz-uploader-sort"]').on("change", function () {
var value = $(this).val();
AIZ.uploader.getAllUploads(
AIZ.data.appUrl + "/aiz-uploader/get_uploaded_files",
$('[name="aiz-uploader-search"]').val(),
value
);
// if (value === "oldest") {
// AIZ.uploader.data.allFiles = AIZ.uploader.data.allFiles.sort(
// function(a, b) {
// return (
// new Date(a.created_at) - new Date(b.created_at)
// );
// }
// );
// } else if (value === "smallest") {
// AIZ.uploader.data.allFiles = AIZ.uploader.data.allFiles.sort(
// function(a, b) {
// return a.file_size - b.file_size;
// }
// );
// } else if (value === "largest") {
// AIZ.uploader.data.allFiles = AIZ.uploader.data.allFiles.sort(
// function(a, b) {
// return b.file_size - a.file_size;
// }
// );
// } else {
// AIZ.uploader.data.allFiles = AIZ.uploader.data.allFiles.sort(
// function(a, b) {
// a = new Date(a.created_at);
// b = new Date(b.created_at);
// return a > b ? -1 : a < b ? 1 : 0;
// }
// );
// }
//AIZ.uploader.updateUploaderFiles();
});
},
addSelectedValue: function () {
for (var i = 0; i < AIZ.uploader.data.allFiles.length; i++) {
if (
!AIZ.uploader.data.selectedFiles.includes(
AIZ.uploader.data.allFiles[i].id
)
) {
AIZ.uploader.data.allFiles[i].selected = false;
} else {
AIZ.uploader.data.allFiles[i].selected = true;
}
}
},
addHiddenValue: function () {
for (var i = 0; i < AIZ.uploader.data.allFiles.length; i++) {
AIZ.uploader.data.allFiles[i].aria_hidden = false;
}
},
allowedFileType: function () {
if (AIZ.uploader.data.type !== "all") {
let type = AIZ.uploader.data.type.split(',')
AIZ.uploader.data.allFiles = AIZ.uploader.data.allFiles.filter(
function (item) {
return type.includes(item.type);
}
);
}
},
updateUploaderFiles: function () {
$(".aiz-uploader-all").html(
''
);
var data = AIZ.uploader.data.allFiles;
setTimeout(function () {
$(".aiz-uploader-all").html(null);
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
var thumb = "";
var hidden = "";
if (data[i].type === "image") {
thumb =
' ';
} else {
thumb = ' ';
}
var html =
'' +
'
' +
// '
" +
'
' +
'
' +
thumb +
"
" +
'
' +
'
' +
'' +
data[i].file_original_name +
" " +
'.' +
data[i].extension +
" " +
" " +
"
" +
AIZ.extra.bytesToSize(data[i].file_size) +
"
" +
"
" +
"
" +
"
" +
"
";
$(".aiz-uploader-all").append(html);
}
} else {
$(".aiz-uploader-all").html(
''
);
}
AIZ.uploader.uploadSelect();
AIZ.uploader.deleteUploaderFile();
}, 300);
},
inputSelectPreviewGenerate: function (elem) {
elem.find(".selected-files").val(AIZ.uploader.data.selectedFiles);
elem.next(".file-preview").html(null);
if (AIZ.uploader.data.selectedFiles.length > 0) {
$.post(
AIZ.data.appUrl + "/aiz-uploader/get_file_by_ids",
{ _token: AIZ.data.csrf, ids: AIZ.uploader.data.selectedFiles.toString() },
function (data) {
elem.next(".file-preview").html(null);
if (data.length > 0) {
elem.find(".file-amount").html(
AIZ.uploader.updateFileHtml(data)
);
for (
var i = 0;
i < data.length;
i++
) {
var thumb = "";
if (data[i].type === "image") {
thumb =
' ';
} else {
thumb = ' ';
}
var html =
'' +
'
' +
thumb +
"
" +
'
' +
'
' +
'' +
data[i].file_original_name +
" " +
'.' +
data[i].extension +
" " +
" " +
"
" +
AIZ.extra.bytesToSize(
data[i].file_size
) +
"
" +
"
" +
'
' +
'' +
' ' +
" " +
"
" +
"
";
elem.next(".file-preview").append(html);
}
} else {
elem.find(".file-amount").html(AIZ.local.choose_file);
}
});
} else {
elem.find(".file-amount").html(AIZ.local.choose_file);
}
// if (AIZ.uploader.data.selectedFiles.length > 0) {
// elem.find(".file-amount").html(
// AIZ.uploader.updateFileHtml(AIZ.uploader.data.selectedFiles)
// );
// for (
// var i = 0;
// i < AIZ.uploader.data.selectedFiles.length;
// i++
// ) {
// var index = AIZ.uploader.data.allFiles.findIndex(
// (x) => x.id === AIZ.uploader.data.selectedFiles[i]
// );
// var thumb = "";
// if (AIZ.uploader.data.allFiles[index].type == "image") {
// thumb =
// ' ';
// '" class="Toko perlindungan hak cipta for empat enam tujuh sembilan delapan">';
// } else {
// thumb = ' ';
// }
// var html =
// '' +
// '
' +
// thumb +
// "
" +
// '
' +
// '
' +
// '' +
// AIZ.uploader.data.allFiles[index].file_original_name +
// " " +
// '.' +
// AIZ.uploader.data.allFiles[index].extension +
// " " +
// " " +
// "
" +
// AIZ.extra.bytesToSize(
// AIZ.uploader.data.allFiles[index].file_size
// ) +
// "
" +
// "
" +
// '
' +
// '' +
// ' ' +
// " " +
// "
" +
// "
";
// elem.next(".file-preview").append(html);
// }
// } else {
// elem.find(".file-amount").html("Choose File");
// }
},
editorImageGenerate: function (elem) {
if (AIZ.uploader.data.selectedFiles.length > 0) {
for (
var i = 0;
i < AIZ.uploader.data.selectedFiles.length;
i++
) {
var index = AIZ.uploader.data.allFiles.findIndex(
(x) => x.id === AIZ.uploader.data.selectedFiles[i]
);
var thumb = "";
if (AIZ.uploader.data.allFiles[index].type === "image") {
thumb =
' ';
elem[0].insertHTML(thumb);
// console.log(elem);
}
}
}
},
dismissUploader: function () {
$("#aizUploaderModal").on("hidden.bs.modal", function () {
$(".aiz-uploader-backdrop").remove();
$("#aizUploaderModal").remove();
});
},
trigger: function (
elem = null,
from = "",
type = "all",
selectd = "",
multiple = false,
callback = null
) {
// $("body").append('
');
var elem = $(elem);
var multiple = multiple;
var type = type;
var oldSelectedFiles = selectd;
if (oldSelectedFiles !== "") {
AIZ.uploader.data.selectedFiles = oldSelectedFiles
.split(",")
.map(Number);
} else {
AIZ.uploader.data.selectedFiles = [];
}
if ("undefined" !== typeof type && type.length > 0) {
AIZ.uploader.data.type = type;
}
if (multiple) {
AIZ.uploader.data.multiple = true;
}else{
AIZ.uploader.data.multiple = false;
}
// setTimeout(function() {
$.post(
AIZ.data.appUrl + "/aiz-uploader",
{ _token: AIZ.data.csrf },
function (data) {
$("body").append(data);
$("#aizUploaderModal").modal("show");
AIZ.plugins.aizUppy();
AIZ.uploader.getAllUploads(
AIZ.data.appUrl + "/aiz-uploader/get_uploaded_files",
null,
$('[name="aiz-uploader-sort"]').val()
);
AIZ.uploader.updateUploaderSelected();
AIZ.uploader.clearUploaderSelected();
AIZ.uploader.sortUploaderFiles();
AIZ.uploader.searchUploaderFiles();
AIZ.uploader.showSelectedFiles();
AIZ.uploader.dismissUploader();
$("#uploader_next_btn").on("click", function () {
if (AIZ.uploader.data.next_page_url != null) {
$('[name="aiz-show-selected"]').prop(
"checked",
false
);
AIZ.uploader.getAllUploads(
AIZ.uploader.data.next_page_url
);
}
});
$("#uploader_prev_btn").on("click", function () {
if (AIZ.uploader.data.prev_page_url != null) {
$('[name="aiz-show-selected"]').prop(
"checked",
false
);
AIZ.uploader.getAllUploads(
AIZ.uploader.data.prev_page_url
);
}
});
$(".aiz-uploader-search i").on("click", function () {
$(this).parent().toggleClass("open");
});
$('[data-toggle="aizUploaderAddSelected"]').on(
"click",
function () {
if (from === "input") {
AIZ.uploader.inputSelectPreviewGenerate(elem);
} else if (from === "direct") {
callback(AIZ.uploader.data.selectedFiles);
}
$("#aizUploaderModal").modal("hide");
}
);
}
);
// }, 50);
},
initForInput: function () {
$(document).on("click",'[data-toggle="aizuploader"]', function (e) {
if (e.detail === 1) {
var elem = $(this);
var multiple = elem.data("multiple");
var type = elem.data("type");
var oldSelectedFiles = elem.find(".selected-files").val();
multiple = !multiple ? "" : multiple;
type = !type ? "" : type;
oldSelectedFiles = !oldSelectedFiles
? ""
: oldSelectedFiles;
AIZ.uploader.trigger(
this,
"input",
type,
oldSelectedFiles,
multiple
);
}
});
},
previewGenerate: function(){
$('[data-toggle="aizuploader"]').each(function () {
var $this = $(this);
var files = $this.find(".selected-files").val();
if(files != ""){
$.post(
AIZ.data.appUrl + "/aiz-uploader/get_file_by_ids",
{ _token: AIZ.data.csrf, ids: files },
function (data) {
$this.next(".file-preview").html(null);
if (data.length > 0) {
$this.find(".file-amount").html(
AIZ.uploader.updateFileHtml(data)
);
for (
var i = 0;
i < data.length;
i++
) {
var thumb = "";
if (data[i].type === "image") {
thumb =
' ';
} else {
thumb = ' ';
}
var html =
'' +
'
' +
thumb +
"
" +
'
' +
'
' +
'' +
data[i].file_original_name +
" " +
'.' +
data[i].extension +
" " +
" " +
"
" +
AIZ.extra.bytesToSize(
data[i].file_size
) +
"
" +
"
" +
'
' +
'' +
' ' +
" " +
"
" +
"
";
$this.next(".file-preview").append(html);
}
} else {
$this.find(".file-amount").html(AIZ.local.choose_file);
}
});
}
});
}
};
AIZ.plugins = {
metismenu: function () {
$('[data-toggle="aiz-side-menu"]').metisMenu();
},
bootstrapSelect: function (refresh = "") {
$(".aiz-selectpicker").each(function (el) {
var $this = $(this);
if(!$this.parent().hasClass('bootstrap-select')){
var selected = $this.data('selected');
if( typeof selected !== 'undefined' ){
$this.val(selected);
}
$this.selectpicker({
size: 5,
noneSelectedText: AIZ.local.nothing_selected,
virtualScroll: false
});
}
if (refresh === "refresh") {
$this.selectpicker("refresh");
}
if (refresh === "destroy") {
$this.selectpicker("destroy");
}
});
},
tagify: function () {
$(".aiz-tag-input").not(".tagify").each(function () {
var $this = $(this);
var maxTags = $this.data("max-tags");
var whitelist = $this.data("whitelist");
var onchange = $this.data("on-change");
maxTags = !maxTags ? Infinity : maxTags;
whitelist = !whitelist ? [] : whitelist;
$this.tagify({
maxTags: maxTags,
whitelist: whitelist,
dropdown: {
enabled: 1,
},
});
try {
callback = eval(onchange);
} catch (e) {
var callback = '';
}
if (typeof callback == 'function') {
$this.on('removeTag',function(){
callback();
});
$this.on('add',function(){
callback();
});
}
});
},
textEditor: function () {
$(".aiz-text-editor").each(function (el) {
var $this = $(this);
var buttons = $this.data("buttons");
var minHeight = $this.data("min-height");
var placeholder = $this.attr("placeholder");
var format = $this.data("format");
buttons = !buttons
? [
["font", ["bold", "underline", "italic", "clear"]],
["para", ["ul", "ol", "paragraph"]],
["style", ["style"]],
["color", ["color"]],
["table", ["table"]],
["insert", ["link", "picture", "video"]],
["view", ["fullscreen", "undo", "redo"]],
]
: buttons;
placeholder = !placeholder ? "" : placeholder;
minHeight = !minHeight ? 200 : minHeight;
format = (typeof format == 'undefined') ? false : format;
$this.summernote({
toolbar: buttons,
placeholder: placeholder,
height: minHeight,
callbacks: {
onImageUpload: function (data) {
data.pop();
},
onPaste: function (e) {
if(format){
var bufferText = ((e.originalEvent || e).clipboardData || window.clipboardData).getData('Text');
e.preventDefault();
document.execCommand('insertText', false, bufferText);
}
}
}
});
var nativeHtmlBuilderFunc = $this.summernote('module', 'videoDialog').createVideoNode;
$this.summernote('module', 'videoDialog').createVideoNode = function(url)
{
var wrap = $('
');
var html = nativeHtmlBuilderFunc(url);
html = $(html).addClass('embed-responsive-item');
return wrap.append(html)[0];
};
});
},
dateRange: function () {
$(".aiz-date-range").each(function () {
var $this = $(this);
var today = moment().startOf("day");
var value = $this.val();
var startDate = false;
var minDate = false;
var maxDate = false;
var advncdRange = false;
var ranges = {
Today: [moment(), moment()],
Yesterday: [
moment().subtract(1, "days"),
moment().subtract(1, "days"),
],
"Last 7 Days": [moment().subtract(6, "days"), moment()],
"Last 30 Days": [moment().subtract(29, "days"), moment()],
"This Month": [
moment().startOf("month"),
moment().endOf("month"),
],
"Last Month": [
moment().subtract(1, "month").startOf("month"),
moment().subtract(1, "month").endOf("month"),
],
};
var single = $this.data("single");
var monthYearDrop = $this.data("show-dropdown");
var format = $this.data("format");
var separator = $this.data("separator");
var pastDisable = $this.data("past-disable");
var futureDisable = $this.data("future-disable");
var timePicker = $this.data("time-picker");
var timePickerIncrement = $this.data("time-gap");
var advncdRange = $this.data("advanced-range");
single = !single ? false : single;
monthYearDrop = !monthYearDrop ? false : monthYearDrop;
format = !format ? "YYYY-MM-DD" : format;
separator = !separator ? " / " : separator;
minDate = !pastDisable ? minDate : today;
maxDate = !futureDisable ? maxDate : today;
timePicker = !timePicker ? false : timePicker;
timePickerIncrement = !timePickerIncrement ? 1 : timePickerIncrement;
ranges = !advncdRange ? "" : ranges;
$this.daterangepicker({
singleDatePicker: single,
showDropdowns: monthYearDrop,
minDate: minDate,
maxDate: maxDate,
timePickerIncrement: timePickerIncrement,
autoUpdateInput: false,
ranges: ranges,
locale: {
format: format,
separator: separator,
applyLabel: "Select",
cancelLabel: "Clear",
},
});
if (single) {
$this.on("apply.daterangepicker", function (ev, picker) {
$this.val(picker.startDate.format(format));
});
} else {
$this.on("apply.daterangepicker", function (ev, picker) {
$this.val(
picker.startDate.format(format) +
separator +
picker.endDate.format(format)
);
});
}
$this.on("cancel.daterangepicker", function (ev, picker) {
$this.val("");
});
});
},
timePicker: function () {
$(".aiz-time-picker").each(function () {
var $this = $(this);
var minuteStep = $this.data("minute-step");
var defaultTime = $this.data("default");
minuteStep = !minuteStep ? 10 : minuteStep;
defaultTime = !defaultTime ? "00:00" : defaultTime;
$this.timepicker({
template: "dropdown",
minuteStep: minuteStep,
defaultTime: defaultTime,
icons: {
up: "las la-angle-up",
down: "las la-angle-down",
},
showInputs: false,
});
});
},
fooTable: function () {
$(".aiz-table").each(function () {
var $this = $(this);
var empty = $this.data("empty");
empty = !empty ? AIZ.local.nothing_found : empty;
$this.footable({
breakpoints: {
xs: 576,
sm: 768,
md: 992,
lg: 1200,
xl: 1400,
},
cascade: true,
on: {
"ready.ft.table": function (e, ft) {
AIZ.extra.deleteConfirm();
AIZ.plugins.bootstrapSelect("refresh");
},
},
empty: empty,
});
});
},
notify: function (type = "dark", message = "") {
$.notify(
{
// options
message: message,
},
{
// settings
showProgressbar: true,
delay: 2500,
mouse_over: "pause",
placement: {
from: "bottom",
align: "left",
},
animate: {
enter: "animated fadeInUp",
exit: "animated fadeOutDown",
},
type: type,
template:
'",
}
);
},
aizUppy: function () {
if ($("#aiz-upload-files").length > 0) {
var uppy = Uppy.Core({
autoProceed: true,
});
uppy.use(Uppy.Dashboard, {
target: "#aiz-upload-files",
inline: true,
showLinkToFileUploadResult: false,
showProgressDetails: true,
hideCancelButton: true,
hidePauseResumeButton: true,
hideUploadButton: true,
proudlyDisplayPoweredByUppy: false,
locale: {
strings: {
addMoreFiles: AIZ.local.add_more_files,
addingMoreFiles: AIZ.local.adding_more_files,
dropPaste: AIZ.local.drop_files_here_paste_or+' %{browse}',
browse: AIZ.local.browse,
uploadComplete: AIZ.local.upload_complete,
uploadPaused: AIZ.local.upload_paused,
resumeUpload: AIZ.local.resume_upload,
pauseUpload: AIZ.local.pause_upload,
retryUpload: AIZ.local.retry_upload,
cancelUpload: AIZ.local.cancel_upload,
xFilesSelected: {
0: '%{smart_count} '+AIZ.local.file_selected,
1: '%{smart_count} '+AIZ.local.files_selected
},
uploadingXFiles: {
0: AIZ.local.uploading+' %{smart_count} '+AIZ.local.file,
1: AIZ.local.uploading+' %{smart_count} '+AIZ.local.files
},
processingXFiles: {
0: AIZ.local.processing+' %{smart_count} '+AIZ.local.file,
1: AIZ.local.processing+' %{smart_count} '+AIZ.local.files
},
uploading: AIZ.local.uploading,
complete: AIZ.local.complete,
}
}
});
uppy.use(Uppy.XHRUpload, {
endpoint: AIZ.data.appUrl + "/aiz-uploader/upload",
fieldName: "aiz_file",
formData: true,
headers: {
'X-CSRF-TOKEN': AIZ.data.csrf,
},
});
uppy.on("upload-success", function () {
AIZ.uploader.getAllUploads(
AIZ.data.appUrl + "/aiz-uploader/get_uploaded_files"
);
});
}
},
tooltip: function () {
$('body').tooltip({selector: '[data-toggle="tooltip"]'}).click(function () {
$('[data-toggle="tooltip"]').tooltip("hide");
});
},
countDown: function () {
if ($(".aiz-count-down").length > 0) {
$(".aiz-count-down").each(function () {
var $this = $(this);
var date = $this.data("date");
// console.log(date)
$this.countdown(date).on("update.countdown", function (event) {
var $this = $(this).html(
event.strftime(
"" +
'%-D
: ' +
'%H
: ' +
'%M
: ' +
'%S
'
)
);
});
});
}
},
slickCarousel: function () {
$(".aiz-carousel").not(".slick-initialized").each(function () {
var $this = $(this);
var slidesPerViewXs = $this.data("xs-items");
var slidesPerViewSm = $this.data("sm-items");
var slidesPerViewMd = $this.data("md-items");
var slidesPerViewLg = $this.data("lg-items");
var slidesPerViewXl = $this.data("xl-items");
var slidesPerView = $this.data("items");
var slidesCenterMode = $this.data("center");
var slidesArrows = $this.data("arrows");
var slidesDots = $this.data("dots");
var slidesRows = $this.data("rows");
var slidesAutoplay = $this.data("autoplay");
var slidesFade = $this.data("fade");
var asNavFor = $this.data("nav-for");
var infinite = $this.data("infinite");
var focusOnSelect = $this.data("focus-select");
var adaptiveHeight = $this.data("auto-height");
var vertical = $this.data("vertical");
var verticalXs = $this.data("vertical-xs");
var verticalSm = $this.data("vertical-sm");
var verticalMd = $this.data("vertical-md");
var verticalLg = $this.data("vertical-lg");
var verticalXl = $this.data("vertical-xl");
slidesPerView = !slidesPerView ? 1 : slidesPerView;
slidesPerViewXl = !slidesPerViewXl ? slidesPerView : slidesPerViewXl;
slidesPerViewLg = !slidesPerViewLg ? slidesPerViewXl : slidesPerViewLg;
slidesPerViewMd = !slidesPerViewMd ? slidesPerViewLg : slidesPerViewMd;
slidesPerViewSm = !slidesPerViewSm ? slidesPerViewMd : slidesPerViewSm;
slidesPerViewXs = !slidesPerViewXs ? slidesPerViewSm : slidesPerViewXs;
vertical = !vertical ? false : vertical;
verticalXl = (typeof verticalXl == 'undefined') ? vertical : verticalXl;
verticalLg = (typeof verticalLg == 'undefined') ? verticalXl : verticalLg;
verticalMd = (typeof verticalMd == 'undefined') ? verticalLg : verticalMd;
verticalSm = (typeof verticalSm == 'undefined') ? verticalMd : verticalSm;
verticalXs = (typeof verticalXs == 'undefined') ? verticalSm : verticalXs;
slidesCenterMode = !slidesCenterMode ? false : slidesCenterMode;
slidesArrows = !slidesArrows ? false : slidesArrows;
slidesDots = !slidesDots ? false : slidesDots;
slidesRows = !slidesRows ? 1 : slidesRows;
slidesAutoplay = !slidesAutoplay ? false : slidesAutoplay;
slidesFade = !slidesFade ? false : slidesFade;
asNavFor = !asNavFor ? null : asNavFor;
infinite = !infinite ? false : infinite;
focusOnSelect = !focusOnSelect ? false : focusOnSelect;
adaptiveHeight = !adaptiveHeight ? false : adaptiveHeight;
var slidesRtl = ($("html").attr("dir") === "rtl" && !vertical) ? true : false;
var slidesRtlXL = ($("html").attr("dir") === "rtl" && !verticalXl) ? true : false;
var slidesRtlLg = ($("html").attr("dir") === "rtl" && !verticalLg) ? true : false;
var slidesRtlMd = ($("html").attr("dir") === "rtl" && !verticalMd) ? true : false;
var slidesRtlSm = ($("html").attr("dir") === "rtl" && !verticalSm) ? true : false;
var slidesRtlXs = ($("html").attr("dir") === "rtl" && !verticalXs) ? true : false;
$this.slick({
slidesToShow: slidesPerView,
autoplay: slidesAutoplay,
dots: slidesDots,
arrows: slidesArrows,
infinite: infinite,
vertical: vertical,
rtl: slidesRtl,
rows: slidesRows,
centerPadding: "0px",
centerMode: slidesCenterMode,
fade: slidesFade,
asNavFor: asNavFor,
focusOnSelect: focusOnSelect,
adaptiveHeight: adaptiveHeight,
slidesToScroll: 1,
prevArrow:
' ',
nextArrow:
' ',
responsive: [
{
breakpoint: 1500,
settings: {
slidesToShow: slidesPerViewXl,
vertical: verticalXl,
rtl: slidesRtlXL,
},
},
{
breakpoint: 1200,
settings: {
slidesToShow: slidesPerViewLg,
vertical: verticalLg,
rtl: slidesRtlLg,
},
},
{
breakpoint: 992,
settings: {
slidesToShow: slidesPerViewMd,
vertical: verticalMd,
rtl: slidesRtlMd,
},
},
{
breakpoint: 768,
settings: {
slidesToShow: slidesPerViewSm,
vertical: verticalSm,
rtl: slidesRtlSm,
},
},
{
breakpoint: 576,
settings: {
slidesToShow: slidesPerViewXs,
vertical: verticalXs,
rtl: slidesRtlXs,
},
},
],
});
});
},
chart: function (selector, config) {
if (!$(selector).length) return;
$(selector).each(function () {
var $this = $(this);
var aizChart = new Chart($this, config);
});
},
noUiSlider: function(){
if ($(".aiz-range-slider")[0]) {
$(".aiz-range-slider").each(function () {
var c = document.getElementById("input-slider-range"),
d = document.getElementById("input-slider-range-value-low"),
e = document.getElementById("input-slider-range-value-high"),
f = [d, e];
noUiSlider.create(c, {
start: [
parseInt(d.getAttribute("data-range-value-low")),
parseInt(e.getAttribute("data-range-value-high")),
],
connect: !0,
range: {
min: parseInt(c.getAttribute("data-range-value-min")),
max: parseInt(c.getAttribute("data-range-value-max")),
},
}),
c.noUiSlider.on("update", function (a, b) {
f[b].textContent = a[b];
}),
c.noUiSlider.on("change", function (a, b) {
rangefilter(a);
});
});
}
},
zoom: function(){
if($('.img-zoom')[0]){
$('.img-zoom').zoom({
magnify:1.5
});
if((('ontouchstart' in window) || (navigator.maxTouchPoints > 0) || (navigator.msMaxTouchPoints > 0))){
$('.img-zoom').trigger('zoom.destroy');
}
}
},
jsSocials: function(){
if($('.aiz-share')[0]){
$('.aiz-share').jsSocials({
showLabel: false,
showCount: false,
shares: [
{
share: "email",
logo: "lar la-envelope"
},
{
share: "twitter",
logo: "lab la-twitter"
},
{
share: "facebook",
logo: "lab la-facebook-f"
},
{
share: "linkedin",
logo: "lab la-linkedin-in"
},
{
share: "whatsapp",
logo: "lab la-whatsapp"
}
]
});
}
}
};
AIZ.extra = {
refreshToken: function (){
$.get(AIZ.data.appUrl+'/refresh-csrf').done(function(data){
AIZ.data.csrf = data;
});
// console.log(AIZ.data.csrf);
},
mobileNavToggle: function () {
if(window.matchMedia('(max-width: 1200px)').matches){
$('body').addClass('side-menu-closed')
}
$('[data-toggle="aiz-mobile-nav"]').on("click", function () {
if ($("body").hasClass("side-menu-open")) {
$("body").addClass("side-menu-closed").removeClass("side-menu-open");
} else if($("body").hasClass("side-menu-closed")) {
$("body").removeClass("side-menu-closed").addClass("side-menu-open");
}else{
$("body").removeClass("side-menu-open").addClass("side-menu-closed");
}
});
$(".aiz-sidebar-overlay").on("click", function () {
$("body").removeClass("side-menu-open").addClass('side-menu-closed');
});
},
initActiveMenu: function () {
$('[data-toggle="aiz-side-menu"] a').each(function () {
var pageUrl = window.location.href.split(/[?#]/)[0];
if (this.href == pageUrl || $(this).hasClass("active")) {
$(this).addClass("active");
$(this).closest(".aiz-side-nav-item").addClass("mm-active");
$(this)
.closest(".level-2")
.siblings("a")
.addClass("level-2-active");
$(this)
.closest(".level-3")
.siblings("a")
.addClass("level-3-active");
}
});
},
deleteConfirm: function () {
$(".confirm-delete").click(function (e) {
e.preventDefault();
var url = $(this).data("href");
$("#delete-modal").modal("show");
$("#delete-link").attr("href", url);
});
$(".confirm-cancel").click(function (e) {
e.preventDefault();
var url = $(this).data("href");
$("#cancel-modal").modal("show");
$("#cancel-link").attr("href", url);
});
$(".confirm-complete").click(function (e) {
e.preventDefault();
var url = $(this).data("href");
$("#complete-modal").modal("show");
$("#comfirm-link").attr("href", url);
});
$(".confirm-alert").click(function (e) {
e.preventDefault();
var url = $(this).data("href");
var target = $(this).data("target");
$(target).modal("show");
$(target).find(".comfirm-link").attr("href", url);
$("#comfirm-link").attr("href", url);
});
},
bytesToSize: function (bytes) {
var sizes = ["Bytes", "KB", "MB", "GB", "TB"];
if (bytes == 0) return "0 Byte";
var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)));
return Math.round(bytes / Math.pow(1024, i), 2) + " " + sizes[i];
},
multiModal: function () {
$(document).on("show.bs.modal", ".modal", function (event) {
var zIndex = 1040 + 10 * $(".modal:visible").length;
$(this).css("z-index", zIndex);
setTimeout(function () {
$(".modal-backdrop")
.not(".modal-stack")
.css("z-index", zIndex - 1)
.addClass("modal-stack");
}, 0);
});
$(document).on('hidden.bs.modal', function () {
if($('.modal.show').length > 0){
$('body').addClass('modal-open');
}
});
},
bsCustomFile: function () {
$(".custom-file input").change(function (e) {
var files = [];
for (var i = 0; i < $(this)[0].files.length; i++) {
files.push($(this)[0].files[i].name);
}
if (files.length === 1) {
$(this).next(".custom-file-name").html(files[0]);
} else if (files.length > 1) {
$(this)
.next(".custom-file-name")
.html(files.length + " " + AIZ.local.files_selected);
} else {
$(this).next(".custom-file-name").html(AIZ.local.choose_file);
}
});
},
stopPropagation: function(){
$(document).on('click', '.stop-propagation', function (e) {
e.stopPropagation();
});
},
outsideClickHide: function(){
$(document).on('click', function (e) {
$('.document-click-d-none').addClass('d-none');
});
},
inputRating: function () {
$(".rating-input").each(function () {
$(this)
.find("label")
.on({
mouseover: function (event) {
$(this).find("i").addClass("hover");
$(this).prevAll().find("i").addClass("hover");
},
mouseleave: function (event) {
$(this).find("i").removeClass("hover");
$(this).prevAll().find("i").removeClass("hover");
},
click: function (event) {
$(this).siblings().find("i").removeClass("active");
$(this).find("i").addClass("active");
$(this).prevAll().find("i").addClass("active");
},
});
if ($(this).find("input").is(":checked")) {
$(this)
.find("label")
.siblings()
.find("i")
.removeClass("active");
$(this)
.find("input:checked")
.closest("label")
.find("i")
.addClass("active");
$(this)
.find("input:checked")
.closest("label")
.prevAll()
.find("i")
.addClass("active");
}
});
},
scrollToBottom: function () {
$(".scroll-to-btm").each(function (i, el) {
el.scrollTop = el.scrollHeight;
});
},
classToggle: function () {
$(document).on('click','[data-toggle="class-toggle"]',function () {
var $this = $(this);
var target = $this.data("target");
var sameTriggers = $this.data("same");
var backdrop = $(this).data("backdrop");
if ($(target).hasClass("active")) {
$(target).removeClass("active");
$(sameTriggers).removeClass("active");
$this.removeClass("active");
$('body').removeClass("overflow-hidden");
} else {
$(target).addClass("active");
$this.addClass("active");
if(backdrop == 'static'){
$('body').addClass("overflow-hidden");
}
}
});
},
collapseSidebar: function () {
$(document).on('click','[data-toggle="collapse-sidebar"]',function (i, el) {
var $this = $(this);
var target = $(this).data("target");
var sameTriggers = $(this).data("siblings");
// var showOverlay = $this.data('overlay');
// var overlayMarkup = '
';
// showOverlay = !showOverlay ? true : showOverlay;
// if (showOverlay && $(target).siblings('.overlay').length !== 1) {
// $(target).after(overlayMarkup);
// }
e.preventDefault();
if ($(target).hasClass("opened")) {
$(target).removeClass("opened");
$(sameTriggers).removeClass("opened");
$($this).removeClass("opened");
} else {
$(target).addClass("opened");
$($this).addClass("opened");
}
});
},
autoScroll: function () {
if ($(".aiz-auto-scroll").length > 0) {
$(".aiz-auto-scroll").each(function () {
var options = $(this).data("options");
options = !options
? '{"delay" : 2000 ,"amount" : 70 }'
: options;
options = JSON.parse(options);
this.delay = parseInt(options["delay"]) || 2000;
this.amount = parseInt(options["amount"]) || 70;
this.autoScroll = $(this);
this.iScrollHeight = this.autoScroll.prop("scrollHeight");
this.iScrollTop = this.autoScroll.prop("scrollTop");
this.iHeight = this.autoScroll.height();
var self = this;
this.timerId = setInterval(function () {
if (
self.iScrollTop + self.iHeight <
self.iScrollHeight
) {
self.iScrollTop = self.autoScroll.prop("scrollTop");
self.iScrollTop += self.amount;
self.autoScroll.animate(
{ scrollTop: self.iScrollTop },
"slow",
"linear"
);
} else {
self.iScrollTop -= self.iScrollTop;
self.autoScroll.animate(
{ scrollTop: "0px" },
"fast",
"swing"
);
}
}, self.delay);
});
}
},
addMore: function () {
$('[data-toggle="add-more"]').each(function () {
var $this = $(this);
var content = $this.data("content");
var target = $this.data("target");
$this.on("click", function (e) {
e.preventDefault();
$(target).append(content);
AIZ.plugins.bootstrapSelect();
});
});
},
removeParent: function () {
$(document).on(
"click",
'[data-toggle="remove-parent"]',
function () {
var $this = $(this);
var parent = $this.data("parent");
$this.closest(parent).remove();
}
);
},
selectHideShow: function() {
$('[data-show="selectShow"]').each(function() {
var target = $(this).data("target");
$(this).on("change", function() {
var value = $(this).val();
// console.log(value);
$(target)
.children()
.not("." + value)
.addClass("d-none");
$(target)
.find("." + value)
.removeClass("d-none");
});
});
},
plusMinus: function(){
$('.aiz-plus-minus input').each(function() {
var $this = $(this);
var min = parseInt($(this).attr("min"));
var max = parseInt($(this).attr("max"));
var value = parseInt($(this).val());
if(value <= min){
$this.siblings('[data-type="minus"]').attr('disabled',true)
}else if($this.siblings('[data-type="minus"]').attr('disabled')){
$this.siblings('[data-type="minus"]').removeAttr('disabled')
}
if(value >= max){
$this.siblings('[data-type="plus"]').attr('disabled',true)
}else if($this.siblings('[data-type="plus"]').attr('disabled')){
$this.siblings('[data-type="plus"]').removeAttr('disabled')
}
});
$('.aiz-plus-minus button').off('click').on('click', function(e) {
e.preventDefault();
var fieldName = $(this).attr("data-field");
var type = $(this).attr("data-type");
var input = $("input[name='" + fieldName + "']");
var currentVal = parseInt(input.val());
if (!isNaN(currentVal)) {
if (type == "minus") {
if (currentVal > input.attr("min")) {
input.val(currentVal - 1).change();
}
if (parseInt(input.val()) == input.attr("min")) {
$(this).attr("disabled", true);
}
} else if (type == "plus") {
if (currentVal < input.attr("max")) {
input.val(currentVal + 1).change();
}
if (parseInt(input.val()) == input.attr("max")) {
$(this).attr("disabled", true);
}
}
} else {
input.val(0);
}
});
$('.aiz-plus-minus input').off('change').on('change', function () {
var minValue = parseInt($(this).attr("min"));
var maxValue = parseInt($(this).attr("max"));
var valueCurrent = parseInt($(this).val());
name = $(this).attr("name");
if (valueCurrent >= minValue) {
$(this).siblings("[data-type='minus']").removeAttr("disabled");
} else {
alert("Sorry, the minimum limit has been reached");
$(this).val(minValue);
}
if (valueCurrent <= maxValue) {
$(this).siblings("[data-type='plus']").removeAttr("disabled");
} else {
alert("Sorry, the maximum limit has been reached");
$(this).val(maxValue);
}
// getVariantPrice();
});
},
hovCategoryMenu: function(){
$("#category-menu-icon, #category-sidebar")
.on("mouseover", function (event) {
$("#hover-category-menu").addClass('active').removeClass('d-none');
})
.on("mouseout", function (event) {
$("#hover-category-menu").addClass('d-none').removeClass('active');
});
},
trimAppUrl: function(){
if(AIZ.data.appUrl.slice(-1) == '/'){
AIZ.data.appUrl = AIZ.data.appUrl.slice(0, AIZ.data.appUrl.length -1);
// console.log(AIZ.data.appUrl);
}
},
setCookie: function(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
var expires = "expires=" + d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
},
getCookie: function(cname) {
var name = cname + "=";
var decodedCookie = '';
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) === ' ') {
c = c.substring(1);
}
if (c.indexOf(name) === 0) {
return c.substring(name.length, c.length);
}
}
return "";
},
acceptCookie: function(){
if (!AIZ.extra.getCookie("acceptCookies")) {
$(".aiz-cookie-alert").addClass("show");
}
$(".aiz-cookie-accept").on("click", function() {
AIZ.extra.setCookie("acceptCookies", true, 60);
$(".aiz-cookie-alert").removeClass("show");
});
},
setSession: function(){
$('.set-session').each(function() {
var $this = $(this);
var key = $this.data('key');
var value = $this.data('value');
const now = new Date();
const item = {
value: value,
expiry: now.getTime() + 3600000,
};
$this.on('click', function(){
localStorage.setItem(key, JSON.stringify(item));
});
});
},
showSessionPopup: function(){
$('.removable-session').each(function() {
var $this = $(this);
var key = $this.data('key');
var value = $this.data('value');
var item = {};
if (localStorage.getItem(key)) {
item = localStorage.getItem(key);
item = JSON.parse(item);
}
const now = new Date()
if (typeof item.expiry == 'undefined' || now.getTime() > item.expiry){
$this.removeClass('d-none');
}
});
}
};
setInterval(function(){
AIZ.extra.refreshToken();
}, 3600000);
// init aiz plugins, extra options
AIZ.extra.initActiveMenu();
AIZ.extra.mobileNavToggle();
AIZ.extra.deleteConfirm();
AIZ.extra.multiModal();
AIZ.extra.inputRating();
AIZ.extra.bsCustomFile();
AIZ.extra.stopPropagation();
AIZ.extra.outsideClickHide();
AIZ.extra.scrollToBottom();
AIZ.extra.classToggle();
AIZ.extra.collapseSidebar();
AIZ.extra.autoScroll();
AIZ.extra.addMore();
AIZ.extra.removeParent();
AIZ.extra.selectHideShow();
AIZ.extra.plusMinus();
AIZ.extra.hovCategoryMenu();
AIZ.extra.trimAppUrl();
AIZ.extra.acceptCookie();
AIZ.extra.setSession();
AIZ.extra.showSessionPopup()
AIZ.plugins.metismenu();
AIZ.plugins.bootstrapSelect();
AIZ.plugins.tagify();
AIZ.plugins.textEditor();
AIZ.plugins.tooltip();
AIZ.plugins.countDown();
AIZ.plugins.dateRange();
AIZ.plugins.timePicker();
AIZ.plugins.fooTable();
AIZ.plugins.slickCarousel();
AIZ.plugins.noUiSlider();
AIZ.plugins.zoom();
AIZ.plugins.jsSocials();
// initialization of aiz uploader
AIZ.uploader.initForInput();
AIZ.uploader.removeAttachment();
AIZ.uploader.previewGenerate();
// $(document).ajaxComplete(function(){
// AIZ.plugins.bootstrapSelect('refresh');
// });
})(jQuery);