| Current Path : /home/cbequiperp/www/media/com_accordeonmenuck/assets/ |
| Current File : /home/cbequiperp/www/media/com_accordeonmenuck/assets/accordeonmenuck_items.js |
/**
* @name Accordeon Menu CK params
* @package com_accordeonmenuck
* @copyright Copyright (C) 2016. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
* @author Cedric Keiflin - https://www.template-creator.com - https://www.joomlack.fr
*/
var $ck = jQuery.noConflict();
$ck(document).ready(function(){
initMenusManagerck();
$ck('#adminForm').append('<div id="ckoverlay"></div>');
initTogglers();
setParentClass();
$ck( ".cktip" ).tooltip({ tooltipClass: "cktooltip", position: { my: "left+15 center", at: "right center" }, "container": "body" });
});
function jInsertFieldValue(value, id) {
$ck('#'+id).val(value).trigger('change');
}
function initTogglers() {
$ck('.itemtoggler').not('.togglerdone').each(function() {
$ck(this).click(function() {
$ck($ck($ck(this).parents('li')[0]).find('.togglecontent')[0]).toggle('fast');
$ck(this).toggleClass('opened');
});
$ck(this).addClass('togglerdone');
});
}
function initMenusManagerck() {
$ck('ol#sortable').nestedSortable({
forcePlaceholderSize: true,
handle: 'div .icon-move',
helper: 'clone',
items: 'li',
opacity: .6,
placeholder: 'placeholder',
revert: 250,
tolerance: 'pointer',
toleranceElement: '> div',
maxLevels: 0,
isTree: true,
expandOnHover: 900,
startCollapsed: true,
rtl: false,
update: function( event, ui ) {
if ($ck(ui.item).attr('data-valid') == 'true' && !$ck(ui.sender).hasClass('ckmenuselectsortable'))
updateNestedItems();
},
complete: function( event, ui ) {
}
});
initSelectMenu();
$ck('.disclose').on('click', function() {
$ck(this).closest('li').toggleClass('mjs-nestedSortable-collapsed').toggleClass('mjs-nestedSortable-expanded');
});
$ck( document ).tooltip({
track: true,
position: {
my: "center bottom-20",
at: "center top",
using: function( position, feedback ) {
$ck( this ).css( position );
$ck( "<div>" )
.addClass( "arrow" )
.addClass( feedback.vertical )
.addClass( feedback.horizontal )
.appendTo( this );
}
},
"container": "body"
});
}
function initSelectMenu() {
$ck('ol.ckmenuselectsortable').nestedSortable({
connectWith: 'ol#sortable',
forcePlaceholderSize: true,
helper: 'clone',
items: 'li',
opacity: .6,
placeholder: 'placeholder',
maxLevels: 0,
isTree: true
});
}
function ajaxSetStype(title, type, component, view, parentId, parentLevel, prevItemId, alias, dataId, dataLayout, dataController, category_id, dataAttribs) {
addckwaitlayer();
if (!alias) alias = '';
var myurl = "index.php?option=com_accordeonmenuck&task=item.setType";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
title: title,
type: type,
component: component,
view: view,
dataId: dataId,
layout: dataLayout,
dataController: dataController,
category_id: category_id,
dataAttribs: dataAttribs
}
}).done(function(data64) {
ajaxSaveItem(data64, title, type, component, view, alias, parentId, parentLevel, prevItemId, dataId);
}).fail(function() {
alert(Joomla.JText._('CK_FAILED_SET_TYPE', 'CK_FAILED_SET_TYPE'));
});
}
function ajaxSaveItem(data64, title, type, component, view, alias, parentId, parentLevel, prevItemId, dataId) {
if (!alias) alias = '';
var myurl = "index.php?option=com_accordeonmenuck&task=item.save";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
data64: data64,
title: title,
alias: alias,
menutype: $ck('#menutype').val(),
parentId: parentId,
parentLevel: parentLevel,
prevItemId: prevItemId,
dataId: dataId,
component: component,
view: view,
type: type
}
}).done(function(code) {
var result = false;
if (code != 'menutypeerror' && code != 'selectalias' && code != 'aliasmissing') result = jQuery.parseJSON(code)
if (code == 'menutypeerror') {
alert(Joomla.JText._('CK_FAILED_SAVE_ITEM_ERRORMENUTYPE','CK_FAILED_SAVE_ITEM_ERRORMENUTYPE'));
removeckwaitlayer();
} else if (code == 'selectalias') {
var newalias = prompt(Joomla.JText._('CK_ALIAS_EXISTS_CHOOSE_ANOTHER','CK_ALIAS_EXISTS_CHOOSE_ANOTHER'),'');
if (newalias != null) ajaxSaveItem(data64, title, type, component, view, newalias, parentId, parentLevel, prevItemId);
removeckwaitlayer();
} else if (result && result[0] == '1') {
createItem(result[1], title, type, parentId, parentLevel, prevItemId);
} else {
alert(code);
}
}).fail(function(code) {
if (code['status'] == '500') {
alert(Joomla.JText._('CK_FAILED_SAVE_ITEM_ERROR500','CK_FAILED_SAVE_ITEM_ERROR500'));
removeckwaitlayer();
} else {
alert(Joomla.JText._('CK_FAILED_SAVE_ITEM', 'CK_FAILED_SAVE_ITEM'));
}
});
}
function ajaxTrashItem(id) {
if (!confirm(Joomla.JText._('CK_CONFIRM_DELETE','CK_CONFIRM_DELETE'))) return;
var idsToDel = new Array();
idsToDel.push(id);
$ck('ol#sortable li[data-id='+id+'] li').each(function() {
idsToDel.push($ck(this).attr('data-id'));
});
addckwaiticon($ck('#ckmessage'));
var myurl = "index.php?option=com_accordeonmenuck&task=item.delete";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: idsToDel
}
}).done(function(code) {
if (code == '1') {
$ck('ol#sortable li[data-id='+id+']').css('overflow', 'hidden').animate({'width': 0, 'height': 0}, function() {$ck(this).remove();setParentClass();});
removeckwaiticon($ck('#ckmessage'));
$ck('#ckmessage > div').empty().append('<div class="alert alert-success">Item trashed with success</div>').fadeOut(3000);
} else {
alert(code);
}
}).fail(function() {
alert(Joomla.JText._('CK_FAILED_TRASH_ITEM','CK_FAILED_TRASH_ITEM'));
});
}
function createItem(id, title, type, parentId, parentLevel, prevItemId) {
var myurl = "index.php?option=com_accordeonmenuck&view=item&layout=additem";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: id,
type: type
}
}).done(function(code) {
removeckwaitlayer();
if (prevItemId) {
$ck('#sortable li[data-id=' + prevItemId + ']').after(code);
} else if(parentId) {
if (!$ck('#sortable li[data-id=' + parentId + '] > ol').length) {
$ck('#sortable li[data-id=' + parentId + ']').append('<ol />');
$ck('#sortable li[data-id=' + parentId + '] > ol').append(code);
} else {
$ck('#sortable li[data-id=' + parentId + '] > ol').prepend(code);
}
} else {
$ck('#sortable').prepend(code);
}
updateNestedItems();
initTogglers();
SqueezeBox.assign(document.getElements('#sortable li[data-id=' + id + '] a.modal'), {
parse: 'rel'
});
}).fail(function() {
alert(Joomla.JText._('CK_FAILED_CREATE_ITEM','CK_FAILED_CREATE_ITEM'));
});
}
function ajaxPublish(button, id, state) {
if ($ck($ck(button).parents('li')[0]).attr('data-home') == '1') {
alert(Joomla.JText._('CK_UNABLE_UNPUBLISH_HOME','CK_UNABLE_UNPUBLISH_HOME'));
return;
}
button = $ck('#publish'+id);
if (button.hasClass('ckwait')) return;
addckwaiticonpublish($ck('#publish'+id));
var myurl = "index.php?option=com_accordeonmenuck&task=item.publish";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: id,
state: state
}
}).done(function(pks) {
if (!pks) {
removeckwaiticonpublish($ck('#publish'+id));
updatepublishicon(id, state);
} else {
pks = pks.split(',');
state = updatepublishstate(id);
pks.each(function(pk) {
removeckwaiticonpublish($ck('#publish'+pk));
updatepublishicon(pk, state);
});
}
}).fail(function() {
removeckwaiticonpublish($ck('#publish'+id));
});
}
function addckwaiticonpublish(button) {
button.find('i').attr('data-class',button.attr('class')).attr('class', 'icon-');
button.addClass('ckwait');
}
function removeckwaiticonpublish(button, failed) {
if (failed) {
button.attr('class','icon-warning');
} else {
button.removeClass('ckwait').attr('class',button.attr('data-class'));
}
}
function updatepublishicon(id, state) {
button = $ck('#publish'+id);
var buttonclass = (state == 0) ? 'icon-unpublish' : 'icon-publish';
button.find('i').attr('class', buttonclass);
}
function updatepublishstate(id, state) {
button = $ck('#publish'+id);
state = 1 - parseInt(button.attr('data-state'));
button.attr('data-state', state);
return state;
}
function editTitle(editbutton) {
el = $ck('> div .cktitle', $ck($ck(editbutton).parents('li')[0]));
txt = $ck(el).text();
$ck(el).html("<input type=\"text\" value=\""+txt+"\" style=\"width:150px;\"/>");
$ck(el).attr('text-origin', txt);
$ck('input', $ck(el)).focus();
$ck('.exittitle', $ck(el).parent()).show();
$ck('.edittitle', $ck(el).parent()).hide();
}
function saveTitle(el) {
txt = $ck('input', el).val();
if (txt && txt != $ck(el).attr('text-origin')) {
ajaxSaveTitle($ck(el).attr('data-id'), txt, el);
}
if (txt) {
$ck(el).html(txt);
$ck('.exittitle', $ck(el).parent()).hide();
$ck('.edittitle', $ck(el).parent()).show();
}
}
function exitTitle(el) {
txt = $ck(el).attr('text-origin');
if (txt) {
$ck(el).html(txt);
$ck('.exittitle', $ck(el).parent()).hide();
$ck('.edittitle', $ck(el).parent()).show();
}
}
function ajaxSaveTitle(id, title, el) {
addckwaiticon($ck('.edittitle', $ck(el).parent()));
addckwaiticon($ck('#ckmessage'));
var myurl = "index.php?option=com_accordeonmenuck&task=item.saveTitleAjax";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: id,
title: title
}
}).done(function(code) {
if (code == '1') {
removeckwaiticon($ck('.edittitle', $ck(el).parent()));
} else {
removeckwaiticon($ck('.edittitle', $ck(el).parent()), true);
removeckwaiticon($ck('#ckmessage'));
$ck('#ckmessage').append(code);
alert(Joomla.JText._('CK_TITLE_NOT_UPDATED', 'CK_TITLE_NOT_UPDATED')+code);
}
}).fail(function() {
removeckwaiticon($ck('.edittitle', $ck(el).parent()), true);
});
}
function addckwaiticon(button) {
button.addClass('ckwait');
button.find('i').css('visibility', 'hidden');
}
function addckwaitlayer() {
$ck('#ckoverlay').show();
}
function removeckwaitlayer() {
$ck('#ckoverlay').hide();
}
function removeckwaiticon(button, failed) {
if (failed) {
button.attr('class','icon-warning');
} else {
button.removeClass('ckwait');
button.find('i').css('visibility', 'visible');
}
}
function updateNestedItems() {
var ajaxSaveLevelLaunched = 0;
$ck('ol#sortable li').attr('data-leveltmp', '1').attr('data-parenttmp','1');
$ck('ol#sortable li').each(function() {
var item = $ck(this);
if (item.children('ol').length) {
$ck('li', item).attr('data-leveltmp', parseInt(item.attr('data-leveltmp'))+1).attr('data-parenttmp', item.attr('data-id'));
}
if (item.attr('data-leveltmp') != item.attr('data-level')
|| item.attr('data-parenttmp') != item.attr('data-parent')) {
ajaxSaveLevel(item.attr('data-id'), item.attr('data-leveltmp'), item.attr('data-parenttmp'));
ajaxSaveLevelLaunched = 1;
}
});
ajaxSaveOrderCK();
}
function ajaxSaveLevel(id, level, parentid) {
addckwaitlayer();
var myurl = "index.php?option=com_accordeonmenuck&task=item.saveLevelAjax";
jQuery.ajax({
type: "POST",
url: myurl,
async: true,
data: {
id: id,
level: level,
parentid: parentid
}
}).done(function(code) {
if (code == '1') {
$ck('#ckmessage > div').empty().append('<div class="alert alert-success">Items order saved with success</div>').fadeOut(3000);
$ck('ol#sortable li[data-id='+id+']').attr('data-level', level).attr('data-parent', parentid);
} else {
alert(Joomla.JText._('CK_LEVEL_NOT_UPDATED', 'CK_LEVEL_NOT_UPDATED')+code);
}
}).fail(function() {
alert(Joomla.JText._('CK_SAVE_LEVEL_FAILED', 'CK_SAVE_LEVEL_FAILED'));
});
}
function ajaxSaveOrderCK() {
addckwaitlayer();
var cid_array = new Array();
var order_array = new Array();
var lft_array = new Array();
var rgt_array = new Array();
var lft = 1, rgt = 2;
$ck('ol#sortable li:first-child').attr('lft', lft).attr('rgt', rgt);
$ck('ol#sortable li').each(function(k, item) {
item = $ck(item);
if (item.prev('li').length) {
item.attr('lft', parseInt(item.prev('li').attr('rgt'))+1).attr('rgt', parseInt(item.prev('li').attr('rgt'))+2);
}
if (item.children('ol').length) {
item.attr('rgt', parseInt(item.attr('lft'))+$ck('li', item).length*2+1);
$ck('> ol > li', item).attr('lft', parseInt(item.attr('lft'))+1).attr('rgt', parseInt(item.attr('lft'))+2);
}
cid_array.push($ck(this).attr('data-id'));
order_array.push(k);
lft_array.push($ck(this).attr('lft'));
rgt_array.push($ck(this).attr('rgt'));
});
var myurl = "index.php?option=com_accordeonmenuck&task=item.saveOrderAjax";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
cid: cid_array,
order: order_array,
lft: lft_array,
rgt: rgt_array
}
}).done(function(code) {
if (code == '1') {
removeckwaitlayer($ck('#ckmessage'));
$ck('#ckmessage > div').empty().show().append('<div class="alert alert-success">Items order saved with success</div>').fadeOut(3000);
} else {
removeckwaitlayer($ck('#ckmessage'));
alert(Joomla.JText._('CK_SAVE_ORDER_FAILED', 'CK_SAVE_ORDER_FAILED')+code);
}
setParentClass();
}).fail(function() {
removeckwaitlayer($ck('#ckmessage'));
});
}
function setParentClass() {
$ck('ol#sortable li').each(function(i, item) {
item = $ck(item);
if (item.children('ol').children('li').length) {
item.addClass('parent');
} else {
item.removeClass('parent');
}
});
}
function ajaxCheckin(el, id) {
addckwaiticon($ck('.checkedouticon', $ck(el).parent()));
var myurl = "index.php?option=com_accordeonmenuck&task=item.checkinAjax";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: id
}
}).done(function(code) {
if (code == '1') {
removeckwaiticon($ck('.checkedouticon', $ck(el).parent()));
$(el).remove();
} else {
removeckwaiticon($ck('.checkedouticon', $ck(el).parent()), true);
alert(Joomla.JText._('CK_CHECKIN_NOT_UPDATED', 'CK_CHECKIN_NOT_UPDATED')+code);
}
}).fail(function() {
alert(Joomla.JText._('CK_CHECKIN_FAILED', 'CK_CHECKIN_FAILED'));
removeckwaiticon($ck('.checkedouticon', $ck(el).parent()), true);
});
}
function saveparam(id, param, value, btn, waiticon, callback, args ) {
if (!waiticon) waiticon = false;
if (waiticon) addckwaiticon($ck(btn));
var myurl = "index.php?option=com_accordeonmenuck&task=item.saveParam";
jQuery.ajax({
type: "POST",
url: myurl,
data: {
id: id,
param: param,
value:value
}
}).done(function(code) {
if (code == '1') {
if (waiticon) removeckwaiticon($ck(btn), false);
if (callback && typeof window[callback] == 'function') { if (!args) args = null;window[callback](args); }
} else {
if (waiticon) removeckwaiticon($ck(btn), true);
alert(Joomla.JText._('CK_PARAM_NOT_UPDATED', 'CK_PARAM_NOT_UPDATED')+code);
}
}).fail(function() {
alert(Joomla.JText._('CK_PARAM_UPDATE_FAILED', 'CK_PARAM_UPDATE_FAILED'));
if (waiticon) removeckwaiticon($ck(btn), true);
});
}
function togglecolumn(btn) {
$ck(btn).toggleClass('active').toggleClass('btn-primary');
$ck(btn).parent().toggleClass('active');
var item = $ck($ck(btn).parents('li')[0]);
if (item.attr('data-level') == '1') {
alert(Joomla.JText._('CK_NO_COLUMN_ON_ROOT_ITEM', 'WARNING : You can not create a column on a root item, this will kill your layout !'));
}
saveparam(item.attr('data-id'), 'maximenu_createcolumn', btn.hasClass('active') ? '1' : '0', btn, true);
}
function changecolwidth(btn) {
var colwidth = prompt('Column width', $ck(btn).text());
if (colwidth == null) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_colwidth', colwidth, btn, true);
$ck(btn).text(colwidth);
}
function createnewrow(btn) {
// if (!$ck(btn).hasClass('active') && !$ck(btn).parent().find('.createcolumn').hasClass('active')) {
// alert(Joomla.JText._('CK_FIRST_CREATE_ROW', 'CK_FIRST_CREATE_ROW'));
// return;
// $ck(btn).parent().find('.createcolumn').addClass('active').addClass('btn-primary');
// }
$ck(btn).toggleClass('active').toggleClass('btn-primary');
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_createnewrow', btn.hasClass('active') ? '1' : '0', btn, true);
}
function togglesubmenuwidth(btn) {
if ( $ck($ck(btn).parents('li')[0]).find('.submenuwidth').find('.valuetxt').html().length
|| $ck($ck(btn).parents('li')[0]).find('.submenuheight').find('.valuetxt').html().length
|| $ck($ck(btn).parents('li')[0]).find('.submenuleftmargin').find('.valuetxt').html().length
|| $ck($ck(btn).parents('li')[0]).find('.submenutopmargin').find('.valuetxt').html().length ) {
alert(Joomla.JText._('CK_FIRST_CLEAR_VALUE', 'CK_FIRST_CLEAR_VALUE'));
return;
}
$ck(btn).toggleClass('active');
$ck(btn).parent().toggleClass('active');
}
function changesubmenuwidth(btn) {
var submenuwidth = prompt('Submenu width', $ck(btn).find('.valuetxt').text());
if (submenuwidth == null) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_submenucontainerwidth', submenuwidth, btn, true);
$ck(btn).find('.valuetxt').text(submenuwidth);
}
function changesubmenuheight(btn) {
var submenuheight = prompt('Submenu height', $ck(btn).find('.valuetxt').text());
if (submenuheight == null) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_submenucontainerheight', submenuheight, btn, true);
$ck(btn).find('.valuetxt').text(submenuheight);
}
function changefullwidthclass(btn) {
$ck(btn).toggleClass('active').toggleClass('btn-primary');
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_liclass', btn.hasClass('active') ? '1' : '0', btn, true);
}
function submenuleftmargin(btn) {
var submenuleftmargin = prompt('Submenu left margin', $ck(btn).find('.valuetxt').text());
if (submenuleftmargin == null) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_leftmargin', submenuleftmargin, btn, true);
$ck(btn).find('.valuetxt').text(submenuleftmargin);
}
function submenutopmargin(btn) {
var submenutopmargin = prompt('Submenu top margin', $ck(btn).find('.valuetxt').text());
if (submenutopmargin == null) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_topmargin', submenutopmargin, btn, true);
$ck(btn).find('.valuetxt').text(submenutopmargin);
}
function saveDescription(btn) {
var item = $ck($ck(btn).parents('li')[0]);
var txt = btn.value;
if (txt != $ck(btn).attr('text-origin')) {
saveparam(item.attr('data-id'), 'maximenu_desc', txt, btn, true, 'success_description', Array(btn, txt));
}
}
function success_description(params) {
$ck(params[0]).attr('text-origin', params[1]);
}
function toggledesktopstate(btn) {
$ck(btn).toggleClass('disable');
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_disabledesktop', $ck(btn).hasClass('disable') ? '1' : '0', btn, true);
}
function togglemobilestate(btn) {
console.log($ck(btn).hasClass('disable'));
$ck(btn).toggleClass('disable');
var item = $ck($ck(btn).parents('li')[0]);
console.log($ck(btn).hasClass('disable'));
saveparam(item.attr('data-id'), 'maximenu_disablemobile', $ck(btn).hasClass('disable') ? '1' : '0', btn, true);
}
function call_icons_popup(id) {
var BSmodal = jQuery('#accordeonckModalIcons');
BSmodal.attr('data-fieldid', id);
BSmodal.modal('show');
}
function select_fa_icon(iclass) {
jQuery('#accordeonckModalIconsFieldid').val(iclass).trigger('change');
}
function set_fa_icon(iclass, fieldid) {
var btn = '#'+fieldid;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_icon', iclass, btn, true, 'success_fa_icon', Array(fieldid, iclass));
jQuery('#accordeonckModalIcons').modal('hide');
}
function success_fa_icon(params) {
jQuery('#'+params[0]).addClass('active').find('i').attr('class', params[1]);
}
function remove_fa_icon(btn) {
if (!confirm(Joomla.JText._('CK_CONFIRM_DELETE','CK_CONFIRM_DELETE'))) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_icon', '', $ck(btn).prev(), true);
$ck(btn).prev().removeClass('active').find('i').removeAttr('class');
}
function call_image_popup(id) {
var BSmodal = jQuery('#accordeonckModalImagemanager');
BSmodal.attr('data-fieldid', id);
BSmodal.modal('show');
}
function set_image(image_url, fieldid) {
var btn = '#'+fieldid;
var item = $ck($ck(btn).parents('li')[0]);
var title = $ck(btn).attr('data-original-title');
var tmp = $ck('<div />').append(title);
var rep = tmp.find('img').attr('src');
if (tmp.find('img').length) {
$ck(btn).attr('data-original-title', $ck(btn).attr('data-original-title').replace(rep,URIROOT + '/' + image_url));
} else {
$ck(btn).attr('data-original-title', title + '<br /><img src="' + URIROOT + '/' + image_url + '" style="max-width:200px;max-height:200px;"/>');
}
saveparam(item.attr('data-id'), 'menu_image', image_url, btn, true);
$ck(btn).addClass('active');
jQuery('#accordeonckModalIcons').modal('hide');
}
function remove_image(btn) {
if (!confirm(Joomla.JText._('CK_CONFIRM_DELETE','CK_CONFIRM_DELETE'))) return;
var item = $ck($ck(btn).parents('li')[0]);
var title = $ck(btn).prev().attr('data-original-title');
var pos = title.indexOf('<br />');
saveparam(item.attr('data-id'), 'menu_image', '', $ck(btn).prev(), true);
$ck(btn).prev().attr('data-original-title', title.substring(0, pos)).removeClass('active');
}
function call_modules_popup(id) {
var BSmodal = jQuery('#accordeonckModalModules');
BSmodal.attr('data-fieldid', id);
BSmodal.modal('show');
}
function ck_select_module(id, title, type) {
var jsonvalue = JSON.stringify(Array(id,title,type));
jQuery('#accordeonckModalModulesfieldid').val(jsonvalue).trigger('change');
}
function set_module(jsonvalue, fieldid) {
// maximenu_insertmodule à mettre à 1
// maximenu_module = id
var btn = '#'+fieldid;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_insertmodule', '1', btn, true, 'set_module_id', Array(jsonvalue, fieldid));
jQuery('#accordeonckModalModules').modal('hide');
}
function set_module_id(params) {
var module = jQuery.parseJSON(params[0]);
// maximenu_insertmodule à mettre à 1
// maximenu_module = id
var btn = '#'+params[1];
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_module', module[0], btn, true, 'success_module', Array(params[1], module[0], module[1]));
jQuery('#accordeonckModalModules').modal('hide');
}
function success_module(params) {
// var module = jQuery.parseJSON(params[1]);
jQuery('#'+params[0]).find('.modulename').html('<span class="moduleid label label-inverse">' + params[1] + '</span> ' + params[2]);
jQuery('#'+params[0]).addClass('active').addClass('btn-info');
}
function remove_module_icon(btn) {
if (!confirm(Joomla.JText._('CK_CONFIRM_DELETE','CK_CONFIRM_DELETE'))) return;
var item = $ck($ck(btn).parents('li')[0]);
saveparam(item.attr('data-id'), 'maximenu_insertmodule', '', $ck(btn).prev(), true);
$ck(btn).prev().removeClass('active').removeClass('btn-info').find('.modulename').text('');
}
function editItem(btn) {
var item = $ck($ck(btn).parents('li')[0]);
var boxfooterhtml = '<a class="ckboxmodal-button" href="javascript:void(0);" onclick="ckSaveIframe(this, '+item.attr('data-id')+');CKBox.close(this, \'1\')">' + Joomla.JText._('CK_SAVE') + '</a>';
CKBox.open({handler: 'iframe', id: 'accordeonckparamsItem', footerHtml: boxfooterhtml, style: {padding: '10px'}, onCKBoxLoaded: function() {addSaveBtntoIframe('accordeonckparamsItem')}, url: URIROOT + '/administrator/index.php?option=com_menus&view=item&layout=edit&id='+item.attr('data-id')+'&tmpl=component'});
}
function addSaveBtntoIframe(boxId) {
var iframe = $ck('#' + boxId).find('iframe');
iframe.load(function() {
var iframeForm = iframe.contents().find('form');
if (! iframeForm.find('#saveBtn').length) {
var saveHtml = '<button id="saveBtn" style="display:none;" onclick="Joomla.submitbutton(\'item.apply\');" type="button"></button>';
iframe.contents().find('form').prepend(saveHtml);
}
});
}
function ckSaveIframe(btn, id) {
var iframe = $ck('iframe', $ck($ck(btn).parents('.ckboxmodal')[0])).contents();
ckUdpateModuleTitle(id, iframe.find('#jform_title').val());
iframe.find('#saveBtn').click();
}
function ckUdpateModuleTitle(id, title) {
var el = $ck('#sortable li[data-id="'+id+'"]');
el.find('.cktitle').text(title);
}