<?php $__env->startPush('styles'); ?>
<link rel="stylesheet" href="<?php echo e(asset('Modules/SidebarManager/Resources/assets/css/style.css')); ?>"/>
<link rel="stylesheet" href="<?php echo e(asset('Modules/SidebarManager/Resources/assets/css/icon-picker.css')); ?>"/>
<?php $__env->stopPush(); ?>
<?php $__env->startSection('mainContent'); ?>
<?php
$LanguageList = getLanguageList();
?>
<div class="role_permission_wrap">
<div class="permission_title d-flex flex-wrap justify-content-between mb_20">
<h4><?php echo e(trans('setting.Sidebar Manager')); ?></h4>
<a href="#" id="resetMenu"
class="primary-btn radius_30px mr-10 fix-gr-bg"><?php echo e(__('setting.Reset to default')); ?></a>
</div>
</div>
<div class="row">
<div class="col-lg-4 mb_20">
<div class="white-box available_box student-details ">
<div class="add-visitor">
<div id="accordion">
<div class="card">
<div class="card-header pt-0 pb-0" id="headingOne">
<h5 class="mb-0 create-title" data-toggle="collapse"
data-target="#collapseOne" aria-expanded="false"
aria-controls="collapseOne">
<button class="btn btn-link add_btn_link">
<?php echo e(__('common.Add')); ?> <?php echo e(__('common.Section')); ?>
</button>
</h5>
</div>
<div id="collapseOne" class="collapse" aria-labelledby="headingOne"
data-parent="#accordion">
<div class="card-body">
<form action="" id="addSectionForm">
<div class="row pt-0">
<?php if(isModuleActive('FrontendMultiLang') || isModuleActive('Org')): ?>
<ul class="nav nav-tabs no-bottom-border mt-sm-md-20 mb-10 ml-3"
role="tablist">
<?php $__currentLoopData = $LanguageList; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $language): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<li class="nav-item">
<a class="nav-link <?php if(auth()->user()->language_code == $language->code): ?> active <?php endif; ?>"
href="#element<?php echo e($language->code); ?>"
role="tab"
data-toggle="tab"><?php echo e($language->native); ?> </a>
</li>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</ul>
<?php endif; ?>
</div>
<div id="row_element_div">
<div class="tab-content">
<?php $__currentLoopData = $LanguageList; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $language): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div role="tabpanel"
class="tab-pane fade <?php if(auth()->user()->language_code == $language->code): ?> show active <?php endif; ?> "
id="element<?php echo e($language->code); ?>">
<div class="row">
<div class="col-lg-12">
<div class="primary_input mb-25">
<label class="primary_input_label"
for="name"><?php echo e(__('common.Name')); ?> <span
class="textdanger">*</span>
</label>
<input class="primary_input_field name section_name"
type="text"
id=""
name="name[<?php echo e($language->code); ?>]"
autocomplete="off"
placeholder="<?php echo e(__('common.Name')); ?>">
</div>
</div>
</div>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</div>
<div class="col-lg-12 text-center">
<button id="addSectionBtn" type="button"
class="primary-btn fix-gr-bg submit_btn "
data-toggle="tooltip"
title="" data-original-title="">
<span class="ti-check"></span>
<?php echo e(__('common.Save')); ?> </button>
</div>
</div>
</form>
</div>
</div>
</div>
<?php if(isModuleActive('Org')): ?>
<div class="card mt-2">
<div class="card-header pt-0 pb-0" id="headingTwo">
<h5 class="mb-0 create-title" data-toggle="collapse"
data-target="#collapseTwo" aria-expanded="false"
aria-controls="collapseTwo">
<button class="btn btn-link add_btn_link">
<?php echo e(__('common.Add')); ?> <?php echo e(__('common.Menu')); ?>
</button>
</h5>
</div>
<?php if(isModuleActive('Org') || isModuleActive('FrontendMultiLang')): ?>
<div id="collapseTwo" class="collapse" aria-labelledby="headingTwo"
data-parent="#accordion">
<div class="card-body">
<form action="" id="addMenuForm">
<div class="row pt-0">
<?php if(isModuleActive('FrontendMultiLang') || isModuleActive('Org')): ?>
<ul class="nav nav-tabs no-bottom-border mt-sm-md-20 mb-10 ml-3"
role="tablist">
<?php $__currentLoopData = $LanguageList; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $language): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<li class="nav-item">
<a class="nav-link <?php if(auth()->user()->language_code == $language->code): ?> active <?php endif; ?>"
href="#element1<?php echo e($language->code); ?>"
role="tab"
data-toggle="tab"><?php echo e($language->native); ?> </a>
</li>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</ul>
<?php endif; ?>
<div class="col-lg-12">
<div class="tab-content">
<?php $__currentLoopData = $LanguageList; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $language): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div role="tabpanel"
class="tab-pane fade <?php if(auth()->user()->language_code == $language->code): ?> show active <?php endif; ?> "
id="element1<?php echo e($language->code); ?>">
<div class="primary_input mb-25">
<label class="primary_input_label"
for="name"><?php echo e(__('common.Label')); ?> <span
class="textdanger">*</span>
</label>
<input
class="primary_input_field name menu_name"
type="text"
name="label[<?php echo e($language->code); ?>]"
autocomplete="off"
placeholder="<?php echo e(__('common.Label')); ?>">
</div>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</div>
</div>
<div class="col-lg-12">
<div class="primary_input mb-25">
<label class="primary_input_label"
for="name"><?php echo e(__('common.Route')); ?> <?php echo e(__('common.Name')); ?>
<span
class="textdanger">*</span>
</label>
<input class="primary_input_field name route_name"
type="text"
name="route" autocomplete="off"
placeholder="<?php echo e(__('common.Route')); ?>">
</div>
</div>
<div class="col-lg-12 text-center">
<button id="addMenuBtn" type="button"
class="primary-btn fix-gr-bg submit_btn"
data-toggle="tooltip"
title="" data-original-title="">
<span class="ti-check"></span>
<?php echo e(__('common.Save')); ?> </button>
</div>
</div>
</form>
</div>
</div>
<?php endif; ?>
</div>
<?php endif; ?>
</div>
<div class="mt_20" id="available_menu_div">
<?php echo $__env->make('sidebarmanager::components.available_list', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
</div>
</div>
</div>
</div>
<div class="col-lg-4 mb_20">
<div class="white-box">
<input type="hidden" name="data" id="items-data" value="">
<div class="add-visitor" id="menu_idv">
<?php echo $__env->make('sidebarmanager::components.components', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
</div>
</div>
</div>
<div class="col-lg-4">
<div class="white-box">
<div class="add-visitor" id="live_preview_div">
<?php echo $__env->make('sidebarmanager::components.live_preview', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>
</div>
</div>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php $__env->startPush('scripts'); ?>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<script src="<?php echo e(asset('Modules/SidebarManager/Resources/assets/js/icon-picker.js')); ?>"></script>
<script>
(function ($) {
"use strict";
$(document).ready(function () {
$("#previewMenu").metisMenu();
initSortable();
function initSortable() {
$('#itemDiv').sortable({
cursor: "move",
containment: "parent",
update: function (event, ui) {
let ids = $(this).sortable('toArray', {attribute: 'data-id'});
let data = {
ids: ids,
_token: '<?php echo e(csrf_token()); ?>'
};
$.post("<?php echo e(route('sidebar-manager.sort-section')); ?>", data, function (response) {
reloadAfterChange(response)
}).fail(function (response) {
if (response.responseJSON.error) {
toastr.error(response.responseJSON.error, "<?php echo e(__('common.Error')); ?>");
hidePreloader()
return false;
}
});
}
}).disableSelection();
$('.dd-list').sortable({
cursor: "move",
connectWith: ".dd-list",
items: '.dd-item',
scroll: true,
helper: 'clone',
appendTo: 'body',
update: function (event, ui) {
makeFirstChildRoot();
saveItemsPosition();
checkEmptyList();
},
receive: function (event, ui) {
let parent_id = event.target.attributes[1].value;
let section_id = event.target.attributes[2].value;
ui.item.attr("data-section_id", parent_id);
ui.item.attr("data-parent_id", parent_id);
ui.item.removeClass('ml_20')
makeFirstChildRoot();
saveItemsPosition();
checkEmptyList();
}
});
}
function checkEmptyList() {
$('.dd-list').each(function () {
if ($(this).has("div").length < 1) {
$(this).html(`
<span class="empty_list">No more items available</span>
`);
} else {
$(this).find('.empty_list').remove();
}
})
}
function makeFirstChildRoot() {
$(".menu-list div:first-child").removeClass("ml_20");
}
function reloadAfterChange(response) {
$('#menu_idv').html(response.menus);
$('#available_menu_div').html(response.available_list);
$('#live_preview_div').html(response.live_preview);
$("#previewMenu").metisMenu();
hidePreloader();
initSortable();
}
//for update menu list
function saveItemsPosition() {
var items = [];
let new_parent = '';
$(".menu_item_div .listed_menu").each(function () {
var id = $(this).attr("data-id");
var section_id = $(this).attr("data-section_id");
var parent_id = $(this).attr("data-parent_id");
if (parent_id == undefined) {
parent_id = $(this).prev().attr('data-section_id');
}
if (section_id == undefined) {
section_id = $(this).prev().attr('data-section_id');
}
if (id) {
var itemObject = {id: id, parent_id: parent_id, section_id: section_id};
//sub menu
if ($(this).hasClass("ml_20")) {
$(this).addClass('sub_menu_item')
$(this).removeClass('menu_item')
itemObject["is_sub_menu"] = "1";
if (new_parent != '') {
parent_id = new_parent;
}
itemObject["parent_id"] = parent_id;
$(this).attr("data-parent_id", parent_id);
} else {
new_parent = id;
$(this).removeClass('sub_menu_item')
$(this).addClass('menu_item')
}
items.push(itemObject);
}
});
//convert array to json data and save into an input field
if (Object.keys(items).length) {
$("#items-data").val(JSON.stringify(items));
let ids = JSON.stringify(items);
$.post("<?php echo e(route('sidebar-manager.menu-update')); ?>", {
'_token': '<?php echo e(csrf_token()); ?>',
'ids': ids
}, function (response) {
reloadAfterChange(response)
})
.fail(function (response) {
if (response.responseJSON.error) {
toastr.error(response.responseJSON.error, "<?php echo e(__('common.Error')); ?>");
hidePreloader()
return false;
}
});
} else {
$("#items-data").val("");
}
}
$(document).on('click', '.make-sub-menu', function () {
console.log('make submenu')
var $item = $(this).closest(".listed_menu");
let previous_id = $item.prev().data('parent_id');
$item.attr('data-parent_id', previous_id);
console.log(previous_id)
var $clickableIcon = $(this).closest(".toggle-menu-icon");
$item.addClass("ml_20");
$clickableIcon.addClass("make-root-menu");
$clickableIcon.removeClass("make-sub-menu");
$clickableIcon.html("<i class='ti-back-right'></i>");
saveItemsPosition();
// feather.replace();
});
$(document).on('click', '#menuUpdate', function () {
let formElement = $('#menuEditForm').serializeArray()
let formData = new FormData();
formElement.forEach(element => {
formData.append(element.name, element.value);
});
formData.append('_token', "<?php echo e(csrf_token()); ?>");
$.ajax({
url: "<?php echo e(route('sidebar-manager.menu-edit')); ?>",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: formData,
success: function (response) {
$('#commonModal').modal('hide');
reloadAfterChange(response)
toastr.success("<?php echo e(__('common.Operation successful')); ?>", "<?php echo e(__('common.Success')); ?>");
},
error: function (response) {
$.each(response.responseJSON.errors, function (k, v) {
toastr.error(v, "<?php echo e(__('common.Error')); ?>");
});
}
});
});
$(document).on('click', '#sectionUpdate', function () {
let formElement = $('#sectionEditForm').serializeArray()
let formData = new FormData();
formElement.forEach(element => {
formData.append(element.name, element.value);
});
formData.append('_token', "<?php echo e(csrf_token()); ?>");
$.ajax({
url: "<?php echo e(route('sidebar-manager.section-edit')); ?>",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: formData,
success: function (response) {
$('#commonModal').modal('hide');
reloadAfterChange(response)
toastr.success("<?php echo e(__('common.Operation successful')); ?>", "<?php echo e(__('common.Success')); ?>");
},
error: function (response) {
$.each(response.responseJSON.errors, function (k, v) {
toastr.error(v, "<?php echo e(__('common.Error')); ?>");
});
}
});
});
//make root menu
$(document).on('click', '.make-root-menu', function () {
console.log('make menu')
var $item = $(this).closest(".listed_menu");
var parent_id = $item.prev().attr('data-section_id');
$item.attr('data-parent_id', parent_id);
var $clickableIcon = $(this).closest(".toggle-menu-icon");
$item.removeClass("ml_20");
$clickableIcon.removeClass("make-root-menu");
$clickableIcon.addClass("make-sub-menu");
$clickableIcon.html("<i class='ti-back-left'></i>");
saveItemsPosition();
// feather.replace();
});
$(document).on('click', '.remove_menu', function () {
//restore the selected item to item container
var $item = $(this).closest(".listed_menu"),
itemClone = $item.clone();
let id = $item.data('id');
//don't restore custom menu item
itemClone.removeClass("ml_20");
$("#available_list").append(itemClone);
//remove drag/drop text from item container
removeEmptyAreaText($("#available_list"));
//remove the row finally
$item.fadeOut(300, function () {
$item.remove();
let data = {
id: id,
_token: "<?php echo e(csrf_token()); ?>"
}
showPreloader()
$.post('<?php echo e(route('sidebar-manager.menu-remove')); ?>', data, function (response) {
reloadAfterChange(response)
});
saveItemsPosition();
checkEmptyList();
// addEmptyAreaText($(".sortable-items-container"));
});
// adjustHeightOfItemsContainer();
});
//remove drag/drop text from new added area if there is no elements available
function removeEmptyAreaText(index) {
if ($(index).has("div").length > 0) {
$(index).find("span.empty-area-text").remove();
}
}
$(document).on('click', '.toggle_up_down', function (event) {
$(this).parent().parent().siblings(".menu_list").toggleClass('d-none');
if ($(this).hasClass('ti-angle-up')) {
$(this).removeClass('ti-angle-up');
$(this).addClass('ti-angle-down');
} else if ($(this).hasClass('ti-angle-down')) {
$(this).removeClass('ti-angle-down');
$(this).addClass('ti-angle-up');
}
});
// addSectionBtn
$(document).on('click', '#addSectionBtn', function (event) {
event.preventDefault();
showPreloader();
let formElement = $('#addSectionForm').serializeArray()
let formData = new FormData();
formElement.forEach(element => {
formData.append(element.name, element.value);
});
formData.append('_token', "<?php echo e(csrf_token()); ?>");
$.ajax({
url: "<?php echo e(route('sidebar-manager.section.store')); ?>",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: formData,
success: function (response) {
hidePreloader();
reloadAfterChange(response)
$('.section_name').val('');
// initSortable();
toastr.success("<?php echo e(__('common.Operation successful')); ?>", "<?php echo e(__('common.Success')); ?>");
},
error: function (response) {
hidePreloader()
$.each(response.responseJSON.errors, function (k, v) {
toastr.error(v, "<?php echo e(__('common.Error')); ?>");
});
}
});
});
$(document).on('click', '#addMenuBtn', function (event) {
event.preventDefault();
showPreloader();
var formElement = $('#addMenuForm').serializeArray()
var formData = new FormData();
formElement.forEach(element => {
formData.append(element.name, element.value);
});
formData.append('_token', "<?php echo e(csrf_token()); ?>");
$.ajax({
url: "<?php echo e(route('sidebar-manager.menu-store')); ?>",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: formData,
success: function (response) {
reloadAfterChange(response)
$('.menu_name').val('');
$('.route_name').val('');
toastr.success("<?php echo e(__('common.Operation successful')); ?>", "<?php echo e(__('common.Success')); ?>");
},
error: function (response) {
hidePreloader();
$.each(response.responseJSON.errors, function (k, v) {
toastr.error(v, "<?php echo e(__('common.Error')); ?>");
});
}
});
});
$(document).on('click', '.delete_section', function () {
let id = $(this).data('id');
let data = {
id: id,
_token: "<?php echo e(csrf_token()); ?>"
}
showPreloader();
$.post('<?php echo e(route("sidebar-manager.delete-section")); ?>', data, function (response) {
reloadAfterChange(response)
});
});
$(document).on('click', '#resetMenu', function (event) {
event.preventDefault();
let data = {
_token: "<?php echo e(csrf_token()); ?>"
}
showPreloader();
$.post('<?php echo e(route("sidebar-manager.reset-own-menu")); ?>', data, function (response) {
if (response.msg == 'Success') {
toastr.success("<?php echo e(__('common.Operation successful')); ?>", "<?php echo e(__('common.Success')); ?>");
location.reload();
}
}).fail(function (response) {
if (response.responseJSON.error) {
toastr.error(response.responseJSON.error, "<?php echo e(__('common.Error')); ?>");
hidePreloader()
return false;
}
});
});
});
$(document).ready(function () {
console.log("ready!");
});
function hidePreloader() {
$('.preloader').fadeOut('slow');
}
function showPreloader() {
$('.preloader').fadeIn('slow');
}
})(jQuery);
</script>
<?php $__env->stopPush(); ?>
<?php echo $__env->make('backend.master', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH /home/bouloter/infix/Modules/SidebarManager/Resources/views/index.blade.php ENDPATH**/ ?>