BossBey File Manager
PHP:
7.3.33
OS:
Linux
User:
cp181240
Root
/
home
/
cp181240
/
public_html
/
mystric.com
/
backoffice
/
onepage
📤 Upload
📝 New File
📁 New Folder
Close
Editing: setting.js
var SUOP_SETTING = {}; (function ($) { // USE STRICT "use strict"; let module = 'onepage'; var $html = $('html'), $body = $('body'), $document = $(document), $window = $(window); var $wrap = $('body > .wrap'), $header = $wrap.children('header'), $main = $wrap.children('main'), $footer = $wrap.children('footer'); var temp_usage_language = ''; SUOP_SETTING.form = { init: function(){ if($document.find('form[data-lock="true"]').length > 0){ $document.find('form[data-lock="true"]').each(function(){ var $form = $(this); var form_name = $form.attr('id') || ''; if(form_name != ''){ $form.find('.btn-form-unlock').click(function(){ var $btn_unlock = $(this); var $inputs = $form.find('[disabled]:not([readonly])').removeAttr('disabled'); var form_default_data = serializeExplode($form.serialize()); switch(form_name){ case 'form--setting--config': { $btn_unlock.hide(); var $btn_submit = $('<button type="submit" class="btn btn-success btn-rounded m-r">บันทึก</button>').appendTo($btn_unlock.parent()); var $btn_cancel = $('<button type="button" class="btn btn-cancel btn-rounded">ยกเลิก</button>').appendTo($btn_unlock.parent()); $inputs.each(function(){ var $input = $(this); if($input.siblings('.length').length == 1){ var length = $input.val().trim().length; $input.siblings('.length').find('ins').text(length); $input.siblings('.length').fadeIn(); $input.on('keyup', function(){ length = $input.val().trim().length; $input.siblings('.length').find('ins').text(length); }); } }); if($form.find('#usage_language').length == 1){ $form.find('#usage_language').removeAttr('onchange'); $form.find('#usage_language').attr('onchange','SUOP_SETTING.form.usage_language.change();'); } if($form.find('#default_language').length == 1){ if($form.find('#usage_language').val().length > 0){ $form.find('#default_language').find('option').attr('disabled',true); $.each($form.find('#usage_language').val(), function(k,language){ $form.find('#default_language').find('option[value="'+language+'"]').removeAttr('disabled'); }); } } $btn_cancel.click(function(){ $inputs.each(function(){ var $input = $(this); var name = $input.attr('name') || ''; if(typeof form_default_data[name] != 'undefined'){ if(!$input.is('.input.input-select2')){ if($input.val() != form_default_data[name]){ $input.val(form_default_data[name]); } } } if($input.is('.input.input-select2')){ var value = $input.attr('data-init') || ''; if(value != ''){ $input.select2('destroy').select2().val(value.split(',')).trigger('change'); }else{ $input.select2('destroy').select2(); } } if($input.is('.input.input-image')){ var value = $input.attr('data-init') || ''; if(value != ''){ $input.siblings('img').attr('src','../../files/'+suOP___domainID+'/onepage_setting/'+value); }else{ $input.siblings('img').attr('src','https://png.icons8.com/office/80/000000/full-image.png'); } } }); $inputs.attr('disabled','true'); $btn_submit.remove(); $btn_cancel.remove(); $btn_unlock.show(); }); $form.unbind('submit'); $form.submit(function(){ if(!confirm('ยืนยันการบันทึก?')){ $inputs.each(function(){ var $input = $(this); var name = $input.attr('name') || ''; if(typeof form_default_data[name] != 'undefined'){ if(!$input.is('.input.input-select2')){ if($input.val() != form_default_data[name]){ $input.val(form_default_data[name]); } } } if($input.is('.input.input-select2')){ var value = $input.attr('data-init') || ''; if(value != ''){ $input.select2('destroy').select2().val(value.split(',')).trigger('change'); }else{ $input.select2('destroy').select2(); } } if($input.is('.input.input-image')){ var value = $input.attr('data-init') || ''; if(value != ''){ $input.siblings('img').attr('src','../../files/'+suOP___domainID+'/onepage_setting/'+value); }else{ $input.siblings('img').attr('src','https://png.icons8.com/office/80/000000/full-image.png'); } } }); $inputs.attr('disabled','true'); $btn_submit.remove(); $btn_cancel.remove(); $btn_unlock.show(); return false; } var url_ajax = '../../apps/admin.php?module='+module+'&task=save___settingConfig'; $.ajax({ type: 'POST', url: url_ajax, dataType: 'json', data: { usage_language : $form.find('select[name="usage_language"]').val(), default_language : $form.find('select[name="default_language"]').val(), favicon : $form.find('input[name="favicon"]').val(), logo : $form.find('input[name="logo"]').val(), // grayscale_status : $form.find('select[name="grayscale_status"]').val(), clickright_status : $form.find('select[name="clickright_status"]').val(), copytext_status : $form.find('select[name="copytext_status"]').val(), website_status : $form.find('select[name="website_status"]').val() }, async: false, beforeSend: function(){ // nothing }, success: function(data){ if(data && data.success == 1){ alert('บันทึกข้อมูล ตั้งค่าทั่วไป สำเร็จ'); location.reload(); } } }); return false; }); } break; case 'form--setting--meta': { $btn_unlock.hide(); var $btn_submit = $('<button type="submit" class="btn btn-success btn-rounded m-r">บันทึก</button>').appendTo($btn_unlock.parent()); var $btn_cancel = $('<button type="button" class="btn btn-cancel btn-rounded">ยกเลิก</button>').appendTo($btn_unlock.parent()); $inputs.each(function(){ var $input = $(this); if($input.siblings('.length').length == 1){ var length = $input.val().trim().length; $input.siblings('.length').find('ins').text(length); $input.siblings('.length').fadeIn(); $input.on('keyup', function(){ length = $input.val().trim().length; $input.siblings('.length').find('ins').text(length); }); } }); $btn_cancel.click(function(){ $inputs.each(function(){ var $input = $(this); var name = $input.attr('name') || ''; if(typeof form_default_data[name] != 'undefined'){ if($input.val() != form_default_data[name]){ $input.val(form_default_data[name]); } } if($input.siblings('.length').length == 1){ $input.siblings('.length').hide(); } }); $inputs.attr('disabled','true'); $btn_submit.remove(); $btn_cancel.remove(); $btn_unlock.show(); }); $form.unbind('submit'); $form.submit(function(){ if(!confirm('ยืนยันการบันทึก?')){ $inputs.each(function(){ var name = $(this).attr('name') || ''; if(typeof form_default_data[name] != 'undefined'){ if($(this).val() != form_default_data[name]){ $(this).val(form_default_data[name]); } } }); $inputs.attr('disabled','true'); $btn_submit.remove(); $btn_cancel.remove(); $btn_unlock.show(); return false; } var url_ajax = '../../apps/admin.php?module='+module+'&task=save___settingMeta'; var form_data = $form.serialize(); $.ajax({ type: 'POST', url: url_ajax, dataType: 'json', data: form_data, async: false, beforeSend: function(){ var meta_title = $form.find('input[name="meta_title"]').val().trim(), meta_description = $form.find('textarea[name="meta_description"]').val().trim(), meta_keywords = $form.find('input[name="meta_keywords"]').val().trim(); if(meta_title == ''){ if($form.find('input[name="meta_title"]').siblings('.error-msg').length == 0){ $form.find('input[name="meta_title"]').after('<span class="error-msg">* โปรดระบุ</span>'); } $form.find('input[name="meta_title"]').focus(); return false; }else{ $form.find('input[name="meta_title"]').siblings('.error-msg').remove(); } }, success: function(data){ if(data && data.success == 1){ alert('บันทึกข้อมูล SEO/Meta สำเร็จ'); location.reload(); } } }); }); } break; } }); // clr } }); // clr } }, usage_language: { change: function(){ var $element = $document.find('#usage_language'); var $form = $element.closest('form'); if($element.val().length == 0){ alert('ต้องมีอย่างน้อย 1 ภาษา'); temp_usage_language = $document.find('#default_language').val(); // edit for bug delete all language $element.val(temp_usage_language).trigger('change'); }else{ $form.find('#default_language option').attr('disabled',true); if($element.val().length > 0){ temp_usage_language = $element.val(); $.each($element.val(), function(k,language){ $form.find('#default_language option[value="'+language+'"]').removeAttr('disabled'); }); } } SUOP_SETTING.form.default_language.check(); } }, default_language: { check: function(){ var $element = $document.find('#default_language'); var $form = $element.closest('form'); if($element.val() == null){ $element.val(temp_usage_language[0]); } } } }; SUOP_SETTING.dz = { init: function(){ if($document.find('input[type="hidden"].input.input-image').length > 0){ var $input_images = $document.find('input[type="hidden"].input.input-image'); $input_images.each(function(){ var $this = $(this); var $uploader = $this.closest('.upload--image'); var progressNumber = 0; var uploadSize = 20; var extension = $this.attr('data-extension') || '.jpeg,.jpg,.png'; // uploadSize = ( suOP___packageID == 2 ? 10 : uploadSize ); // uploadSize = ( suOP___packageID == 3 ? 20 : uploadSize ); $uploader.dropzone({ paramName: "file", maxFiles: 1, maxFilesize: uploadSize, // MB acceptedFiles: extension, url: "../upload.php?target=onepage_setting", previewTemplate : '<div style="display:none"></div>', init: function(){ // console.log('upload image ready.'); }, sending: function (file, xhr, formData){ var guid = SUOP_SETTING.guid(); var ext = file.name.split('.')[file.name.split('.').length - 1]; formData.append("name", 'image-' + guid + '.' + ext); }, uploadprogress: function(file, progress){ if(file.previewElement){ if($document.find('.suop--utilities .progress').length == 0){ var html = ''; html += '<div class="progress">'; html += ' <div class="inner">'; html += ' <span>Uploading...</span>'; html += ' <span class="progress--percent">0%</span>'; html += ' <div class="progress--bar"></div>'; html += ' </div>'; html += '</div>'; $(html).hide().appendTo($document.find('.suop--utilities')).fadeIn(); $document.find('.suop--utilities').addClass('show'); if(progressNumber == 0 && progress == 100){ $document.find('.suop--utilities .progress .progress--percent').text(progress+'%'); $document.find('.suop--utilities .progress .progress--bar').css('width',progress+'%'); }else{ progressNumber = progress; } }else{ $document.find('.suop--utilities .progress .progress--percent').text(progress.toFixed(2)+'%'); $document.find('.suop--utilities .progress .progress--bar').css('width',progress+'%'); } } }, success: function (file, response){ console.log(response); var d = new Date(); var result = JSON.parse(JSON.parse(response).result); var path_of_image = '../../files/'+suOP___domainID+'/onepage_setting/'+result.ufilename; $uploader.find('img').attr('src', path_of_image+'?'+d.getTime()); if($uploader.find('img').is('.empty')){ $uploader.find('img').removeClass('empty'); } if(progressNumber == 0){ setTimeout(function(){ $document.find('.suop--utilities').html(''); $document.find('.suop--utilities.show').removeClass('show'); }, 1000); }else{ $document.find('.suop--utilities').html(''); $document.find('.suop--utilities.show').removeClass('show'); } $this.val(result.ufilename); }, error: function(file, message){ alert(message); } }); }); } } } SUOP_SETTING.guid = function(){ function s4(){ return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); } return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4(); }; SUOP_SETTING.documentOnReady = { functions: function(){ SUOP_SETTING.form.init(); SUOP_SETTING.dz.init(); } }; SUOP_SETTING.documentOnResize = { functions: function(){ } }; SUOP_SETTING.documentOnLoad = { functions: function(){ }, }; $(document).ready(SUOP_SETTING.documentOnReady.functions); $(window).on('resize', SUOP_SETTING.documentOnResize.functions); $(window).on('load', SUOP_SETTING.documentOnLoad.functions); })(jQuery); function serializeExplode(form_data){ form_data = form_data.split('&'); var inputs = {}; if(form_data && form_data != null && form_data != ''){ $.each(form_data, function(k,v){ var temp = v.split('='); if(decodeURIComponent(temp[0]).indexOf('[]') != -1){ if(typeof inputs[decodeURIComponent(temp[0]).replace('[]','')] == 'undefined'){ inputs[decodeURIComponent(temp[0]).replace('[]','')] = []; } inputs[decodeURIComponent(temp[0]).replace('[]','')].push(decodeURIComponent(temp[1])); }else if(decodeURIComponent(temp[0]).indexOf('[') != -1 && decodeURIComponent(temp[0]).indexOf(']') != -1){ var temp2 = decodeURIComponent(temp[0]).replace(']','').split('['); if(typeof inputs[temp2[0]] == 'undefined'){ inputs[temp2[0]] = {}; } inputs[temp2[0]][temp2[1]] = decodeURIComponent(temp[1]); }else{ inputs[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]); } }); } return inputs; }
Save
Cancel