PATH:
home
/
lab2454c
/
omvstudio.com
/
public
/
admin_assets
/
script
/
admin-console
// Templates // const contactInformation = ` // <b>Name:</b> {name}<br/> // <b>Message Date:</b> {date}<br/> // <b>Email:</b> {email_address}<br/> // <b>Contact Number:</b> {contact_number}<br/> // <b>Subject:</b> {subject}<br/> // <b>Message:</b><br/> {message}<br/>` ! function (l) { "use strict"; l("#sidebarToggle, #sidebarToggleTop").on("click", function (e) { l("body").toggleClass("sidebar-toggled"), l(".sidebar").toggleClass("toggled"), l(".sidebar").hasClass("toggled") && l(".sidebar .collapse").collapse("hide") })/*, l(window).resize(function () { l(window).width() < 768 && l(".sidebar .collapse").collapse("hide"), l(window).width() < 480 && !l(".sidebar").hasClass("toggled") && (l("body").addClass("sidebar-toggled"), l(".sidebar").addClass("toggled"), l(".sidebar .collapse").collapse("hide")) }), l("body.fixed-nav .sidebar").on("mousewheel DOMMouseScroll wheel", function (e) { var o; 768 < l(window).width() && (o = (o = e.originalEvent).wheelDelta || -o.detail, this.scrollTop += 30 * (o < 0 ? 1 : -1), e.preventDefault()) }), l(document).on("scroll", function () { 100 < l(this).scrollTop() ? l(".scroll-to-top").fadeIn() : l(".scroll-to-top").fadeOut() }), l(document).on("click", "a.scroll-to-top", function (e) { var o = l(this); l("html, body").stop().animate({ scrollTop: l(o.attr("href")).offset().top }, 1e3, "easeInOutExpo"), e.preventDefault() }), l(document).on('submit', '.form_hadler', function () { l('.btn-form-submit_hadler').attr('disabled', true).append(`<div class="spinner-border text-light spinner-border-sm" role="status"></div>`) }) l(document).on('click', '.btn-click_hadler', function (e) { l(this).addClass('disabled').append(` <div class="spinner-border text-light spinner-border-sm" role="status"></div>`) }) l(document).on('click', '.btn-modal_handler', function (e) { e.preventDefault() let targetDom = l(this).data('target'), //dataId = l(this).data('id'), dataUrl = typeof l(this).data('url') === 'undefined' ? '' : l(this).data('url'), dataTemplate = typeof l(this).data('template') === 'undefined' ? '' : l(this).data('template'), dataSelect = typeof l(this).data('select') === 'undefined' ? '' : l(this).data('select'), dataWrapp = typeof l(this).data('wrapp') === 'undefined' ? '' : l(this).data('wrapp'), btnHandler = l(`#${targetDom}`).find(".modal-footer").find("button"), dataManageScope = typeof l(this).data('manage') === 'undefined' ? '' : l(this).data('manage') dataUrl.length && ( l(`#${targetDom} .modal-body`).html(` <div class="d-flex justify-content-center"> <div class="spinner-border text-primary" style="width: 3rem; height: 3rem;" role="status"> <span class="visually-hidden"></span> </div> </div>`) ) l(`#${targetDom}`).modal('show') dataSelect.length && dataWrapp.length && btnHandler.length && ( btnHandler.attr('data-container', dataWrapp), btnHandler.attr('data-selection', dataSelect) ) dataManageScope.length && ( dataManageScope == 'create' && ( targetDom == 'tab_widget_workflow' && l(`#${targetDom}`).find('.flow-list-wrap').length && ( l(`#${targetDom}`).find('.flow-list-wrap').html(` <div class="form-group"><input type="text" name="flow[repeater][${fieldsetWorkFlow.currentRow}][title.]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderTitle}"></div> <div class="form-group"><input type="url" name="flow[repeater][${fieldsetWorkFlow.currentRow}][icon_url]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderIconUrl}"></div> <div class="form-group"><textarea name="flow[repeater][${fieldsetWorkFlow.currentRow}][content]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderContent}"></textarea></div> `) ) ) ) dataUrl.length && ( l.ajax({ url: dataUrl, method: 'GET', success: function (result) { switch (dataTemplate) { case 'contact': setContactData(result, targetDom) break case 'media-single': setMediaData(result, targetDom) break default: break } } }) ) }) l('.frm-repeater_handler').on('click', function () { let currentSelector = l(this), currentScope = currentSelector.data('scope'), targetDom = currentSelector.data('target') fieldsetWorkFlow.currentRow = parseInt(fieldsetWorkFlow.currentRow) + 1 switch (currentScope) { case 'workflow': l(`.${targetDom}`).append(` <div class="form-group"><input type="text" name="flow[repeater][${fieldsetWorkFlow.currentRow}][title.]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderTitle}"></div> <div class="form-group"><input type="url" name="flow[repeater][${fieldsetWorkFlow.currentRow}][icon_url]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderIconUrl}"></div> <div class="form-group"><textarea name="flow[repeater][${fieldsetWorkFlow.currentRow}][content]" class="form-control" placeholder="${fieldsetWorkFlow.placeholderContent}"></textarea></div> `) break default: break } }) l(document).on('click', '.btn-modal-delete_confirm', function (e) { e.preventDefault() let targetDom = l(this).data('target'), dataId = l(this).data('id'), dataUrl = l(this).data('url') l(".btn-modal-delete_handler").attr('data-id', dataId).attr('data-url', dataUrl).attr('data-target', targetDom) l(`#${targetDom}`).modal('show') }) l(document).on('click', '.btn-modal-delete_handler', function (e) { e.preventDefault() let selector = l(this), dataId = selector.data('id'), dataUrl = selector.data('url'), targetDom = selector.data('target') showBtnLoader(selector) l.ajaxSetup({ headers: { 'X-CSRF-TOKEN': l('meta[name="csrf-token"]').attr('content') } }) l.ajax({ url: dataUrl, method: 'DELETE', success: function (result) { l('.dataTable').DataTable().ajax.reload(function () { l(`#${targetDom}`).modal('hide') hideBtnLoader(selector) }) } }) }) l(document).on('submit', '.frm-submit_handler', function (e) { e.preventDefault() let currentSelector = l(this), btnSelector = currentSelector.find('.frm-btn_handler') showBtnLoader(btnSelector) l.ajax({ url: currentSelector.attr('action'), method: currentSelector.attr('method'), data: currentSelector.serialize(), dataType: "json", encode: true, success: function (result) { hideBtnLoader(btnSelector) showToast(result.message, 'success', '', typeof result.action != 'undefined' ? result.action : '') if (typeof btnSelector.data('frmtype') !== 'undefined' && typeof result.data.meta_content !== 'undefined') { switch (btnSelector.data('frmtype')) { case 'page_widget': let metaData = JSON.parse(result.data.meta_content) l(".list-widget-wrap").append(` <div class="card"> <a href="" data-rowid="${result.data?.id}">${metaData?.heading}</a> </div> `) break; default: break; } currentSelector[0].reset() typeof btnSelector.data('modal') !== 'undefined' && l(`#${btnSelector.data('modal')}`).modal('toggle') } //typeof result.action !== 'undefined' ? location.href = result.action : showToast(result.message, 'success') }, error: function (result) { hideBtnLoader(btnSelector) showError(result) } }) }) l(document).on('submit', '.frm-banner-submit_handler', function (e) { e.preventDefault() let currentSelector = l(this), btnSelector = currentSelector.find('.frm-btn_handler'), thumbImgs = currentSelector.find('img'), formData = currentSelector.serializeArray(), imgData = [] if (!thumbImgs.length) return thumbImgs.each(function () { let imgId = l(this).data('publicid') if (typeof imgId != 'undefined') { imgData.push(imgId) } else { imgData.push(l(this).parent().data('publicid')) } }) formData.push({ name: 'images', value: imgData }) showBtnLoader(btnSelector) l.ajax({ url: currentSelector.attr('action'), method: currentSelector.attr('method'), data: formData, dataType: "json", encode: true, success: function (result) { hideBtnLoader(btnSelector) showToast(result.message, 'success', '', typeof result.action != 'undefined' ? result.action : '') }, error: function (result) { hideBtnLoader(btnSelector) showError(result) } }) }) l('.media_upload-handler').on('click', function () { window.cloudinary.openUploadWidget({ cloud_name: cloudName, upload_preset: uploadPreset }, (error, result) => { if (!error && result && result.event === "success") { //console.log(result) //localStorage.setItem("cloud_image_url", result.info.url) } }).open() }) l('ul.pagination').length && l('ul.pagination').hide() l('.scrolling__pagination').jscroll({ autoTrigger: true, padding: 0, nextSelector: '.pagination li.active + li a', contentSelector: 'div.scrolling__pagination', callback: function () { l('ul.pagination').remove(); } }) l(".btn-modal-select-img_handler").on('click', function () { let currentSelector = l(this), selectType = currentSelector.data('selection'), container = currentSelector.data('container'), exportContainer = currentSelector.data('container'), mainContainer = currentSelector.parent().parent().find('.modal-body'), checkList = selectType == 'multiple' ? mainContainer.find('input[type=checkbox]:checked') : '', imgData = [] if (!mainContainer.length) return; if (checkList.length) { checkList.each(function () { let img = l(this).parent().find('img'), publicId = l(this).data('publicid') $(`.${exportContainer}`).append(`<div class="col-md-3 mt-3"> <div class="thumbnail"> <img src="${img.length && img.attr('src')}" data-publicid="${publicId.length && publicId}"> <a class="remove-image" href="javascript:void(0);" style="display: inline;"> <i class="fa fa-trash-o"></i> </a> </div> </div>`) }) checkList.prop('checked', false) } }) const showToast = (message, status, title, actionUrl) => { l.toast({ text: message, // Text that is to be shown in the toast heading: title, // Optional heading to be shown on the toast icon: status, // Type of toast icon showHideTransition: 'slide', // fade, slide or plain allowToastClose: true, // Boolean value true or false hideAfter: 6000, // false to make it sticky or number representing the miliseconds as time after which toast needs to be hidden position: 'bottom-right', textAlign: 'left', // Text alignment i.e. left, right or center loader: true, // Whether to show loader or not. True by default beforeShow: function () { }, // will be triggered before the toast is shown afterShown: function () { }, // will be triggered after the toat has been shown beforeHide: function () { }, // will be triggered before the toast gets hidden afterHidden: function () { actionUrl.length ? location.href = actionUrl : '' } // will be triggered after the toast has been hidden }) } const ajaxHeader = () => { l.ajaxSetup({ headers: { 'X-CSRF-TOKEN': l('meta[name="csrf-token"]').attr('content') } }) } const showError = message => { let messageBody = '' // !empty(message) && (typeof message.responseJSON != 'undefined') && ( // $.each(message?.responseJSON?.errors, function (key, value) { // messageBody += `${value[0]}<br />` // }) // showToast(messageBody, 'error', 'Error') // ) } const showBtnLoader = selector => { selector.attr('disabled', true).append(` <div class="spinner-border text-light spinner-border-sm" role="status"></div>`) } const hideBtnLoader = selector => { selector.attr('disabled', false).find('.spinner-border').remove() } const setContactData = (result, targetDom) => { let message = contactInformation message = message.replace('{name}', result.name) message = message.replace('{date}', result.created_at) message = message.replace('{email_address}', result.email_address) message = message.replace('{contact_number}', result.contact_number) message = message.replace('{subject}', result.subject) message = message.replace('{message}', result.message) l(`#${targetDom} .modal-body`).html(message) } const setMediaData = (result, targetDom) => { let message = mediaSingleInformation message = message.replace('{img_src}', result.thumbnail_image) message = message.replace('{asset_id}', result.asset_id) message = message.replace('{resource_type}', result.resource_type) message = message.replace('{width}', result.width) message = message.replace('{height}', result.height) message = message.replace('{size}', result.size) message = message.replace('{original_url}', result.original_url) l(`#${targetDom} .modal-body`).html(message) }*/ }(jQuery);
[+]
..
[-] core.min.js
[edit]