diff --git a/modules/admin/tpl/js/admin.js b/modules/admin/tpl/js/admin.js index 6200b86b9..784d792ac 100644 --- a/modules/admin/tpl/js/admin.js +++ b/modules/admin/tpl/js/admin.js @@ -311,1197 +311,1201 @@ jQuery(function($){ }); // Modal Window jQuery(function($){ + var ESC = 27; + $.fn.xeModalWindow = function(){ + this + .not('.xe-modal-window') + .addClass('xe-modal-window') + .each(function(){ + $( $(this).attr('href') ).addClass('x').hide(); + }) + .click(function(){ + var $this = $(this), $modal, $btnClose, disabled; -var ESC = 27; -$.fn.xeModalWindow = function(){ - this - .not('.xe-modal-window') - .addClass('xe-modal-window') - .each(function(){ - $( $(this).attr('href') ).addClass('x').hide(); - }) - .click(function(){ - var $this = $(this), $modal, $btnClose, disabled; + // get and initialize modal window + $modal = $( $this.attr('href') ); - // get and initialize modal window - $modal = $( $this.attr('href') ); - - if($modal.data('state') == 'showing') { - $this.trigger('close.mw'); - } else { - $this.trigger('open.mw'); - } - return false; - }) - .bind('open.mw', function(){ - var $this = $(this), $modal, $btnClose, disabled, before_event, duration; - - $modal = $( $this.attr('href') ); - if(!$modal.parent('body').length) { - $btnClose = $(''); - $btnClose.click(function(){ $modal.data('anchor').trigger('close.mw') }); - $modal.find('[data-hide]').click(function(){ $modal.data('anchor').trigger('close.mw') }); - $('body').append('
').append($modal); // append background - $modal.prepend($btnClose); // prepend close button - } - - // set the related anchor - $modal.data('anchor', $this); - - // before event trigger - before_event = $.Event('before-open.mw'); - $this.trigger(before_event); - - // is event canceled? - if(before_event.isDefaultPrevented()) return false; - - // get modal window - $modal = $( $this.attr('href') ); - - // get duration - duration = $this.data('duration') || 'fast'; - - // set state : showing - $modal.data('state', 'showing'); - - // after event trigger - function after(){ $this.trigger('after-open.mw') }; - - $(document).bind('keydown.mw', function(event){ - if(event.which == ESC) { + if($modal.data('state') == 'showing') { $this.trigger('close.mw'); - return false; + } else { + $this.trigger('open.mw'); } + return false; + }) + .bind('open.mw', function(){ + var $this = $(this), $modal, $btnClose, disabled, before_event, duration; + + $modal = $( $this.attr('href') ); + if(!$modal.parent('body').length) { + $btnClose = $(''); + $btnClose.click(function(){ $modal.data('anchor').trigger('close.mw') }); + $modal.find('[data-hide]').click(function(){ $modal.data('anchor').trigger('close.mw') }); + $('body').append('
').append($modal); // append background + $modal.prepend($btnClose); // prepend close button + } + + // set the related anchor + $modal.data('anchor', $this); + + // before event trigger + before_event = $.Event('before-open.mw'); + $this.trigger(before_event); + + // is event canceled? + if(before_event.isDefaultPrevented()) return false; + + // get modal window + $modal = $( $this.attr('href') ); + + // get duration + duration = $this.data('duration') || 'fast'; + + // set state : showing + $modal.data('state', 'showing'); + + // after event trigger + function after(){ $this.trigger('after-open.mw') }; + + $(document).bind('keydown.mw', function(event){ + if(event.which == ESC) { + $this.trigger('close.mw'); + return false; + } + }); + + $modal + .fadeIn(duration, after) + .find('button.x_close:first').focus().end() + .prev('.x_modal-backdrop').show(); + $('body').css('overflow','hidden'); + }) + .bind('close.mw', function(){ + var $this = $(this), before_event, $modal, duration; + + // before event trigger + before_event = $.Event('before-close.mw'); + $this.trigger(before_event); + + // is event canceled? + if(before_event.isDefaultPrevented()) return false; + + // get modal window + $modal = $( $this.attr('href') ); + + // get duration + duration = $this.data('duration') || 'fast'; + + // set state : hiding + $modal.data('state', 'hiding'); + + // after event trigger + function after(){ $this.trigger('after-close.mw') }; + + $modal.fadeOut(duration, after) + .prev('.x_modal-backdrop').hide(); + $('body').css('overflow','auto'); + $this.focus(); }); - - $modal - .fadeIn(duration, after) - .find('button.x_close:first').focus().end() - .prev('.x_modal-backdrop').show(); - $('body').css('overflow','hidden'); - }) - .bind('close.mw', function(){ - var $this = $(this), before_event, $modal, duration; - - // before event trigger - before_event = $.Event('before-close.mw'); - $this.trigger(before_event); - - // is event canceled? - if(before_event.isDefaultPrevented()) return false; - - // get modal window - $modal = $( $this.attr('href') ); - - // get duration - duration = $this.data('duration') || 'fast'; - - // set state : hiding - $modal.data('state', 'hiding'); - - // after event trigger - function after(){ $this.trigger('after-close.mw') }; - - $modal.fadeOut(duration, after) - .prev('.x_modal-backdrop').hide(); - $('body').css('overflow','auto'); - $this.focus(); - }); - $('div.x_modal').addClass('x').hide(); -}; -$('a.modalAnchor').xeModalWindow(); - + $('div.x_modal').addClass('x').hide(); + }; + $('a.modalAnchor').xeModalWindow(); }); // Content Toggler jQuery(function($){ + var dont_close_this_time = false; + var ESC = 27; -var dont_close_this_time = false; -var ESC = 27; + $.fn.xeContentToggler = function(){ + this + .not('.xe-content-toggler') + .addClass('xe-content-toggler') + .each(function(){ + var $anchor = $(this); $layer = $($anchor.attr('href')); -$.fn.xeContentToggler = function(){ - this - .not('.xe-content-toggler') - .addClass('xe-content-toggler') - .each(function(){ - var $anchor = $(this); $layer = $($anchor.attr('href')); + $layer.hide() + .not('.xe-toggling-content') + .addClass('xe-toggling-content') + .mousedown(function(event){ dont_close_this_time = true }) + .focusout(function(event){ + setTimeout(function(){ + if(!dont_close_this_time && !$layer.find(':focus').length && $layer.data('state') == 'showing') $anchor.trigger('close.tc'); + dont_close_this_time = false; + }, 1); + }); + }) + .click(function(){ + var $this = $(this), $layer; - $layer.hide() - .not('.xe-toggling-content') - .addClass('xe-toggling-content') - .mousedown(function(event){ dont_close_this_time = true }) - .focusout(function(event){ - setTimeout(function(){ - if(!dont_close_this_time && !$layer.find(':focus').length && $layer.data('state') == 'showing') $anchor.trigger('close.tc'); - dont_close_this_time = false; - }, 1); - }); - }) - .click(function(){ - var $this = $(this), $layer; + // get content container + $layer = $( $this.attr('href') ); - // get content container - $layer = $( $this.attr('href') ); + // set anchor object + $layer.data('anchor', $this); - // set anchor object - $layer.data('anchor', $this); + if($layer.data('state') == 'showing') { + $this.trigger('close.tc'); + } else { + $this.trigger('open.tc'); + } - if($layer.data('state') == 'showing') { - $this.trigger('close.tc'); - } else { - $this.trigger('open.tc'); - } + return false; + }) + .bind('open.tc', function(){ + var $this = $(this), $layer, effect, duration; - return false; - }) - .bind('open.tc', function(){ - var $this = $(this), $layer, effect, duration; + // get content container + $layer = $( $this.attr('href') ); - // get content container - $layer = $( $this.attr('href') ); + // get effeect + effect = $this.data('effect'); - // get effeect - effect = $this.data('effect'); + // get duration + duration = $this.data('duration') || 'fast'; - // get duration - duration = $this.data('duration') || 'fast'; + // set state : showing + $layer.data('state', 'showing'); - // set state : showing - $layer.data('state', 'showing'); + // before event trigger + $this.trigger('before-open.tc'); - // before event trigger - $this.trigger('before-open.tc'); + dont_close_this_time = false; - dont_close_this_time = false; - - // When mouse button is down or when ESC key is pressed close this layer - $(document) - .unbind('mousedown.tc keydown.tc') - .bind('mousedown.tc keydown.tc', - function(event){ - if(event) { - if(event.type == 'keydown' && event.which != ESC) return true; - if(event.type == 'mousedown') { - var $t = $(event.target); - if($t.is('html,.tgAnchor,.tgContent') || $layer.has($t).length) return true; + // When mouse button is down or when ESC key is pressed close this layer + $(document) + .unbind('mousedown.tc keydown.tc') + .bind('mousedown.tc keydown.tc', + function(event){ + if(event) { + if(event.type == 'keydown' && event.which != ESC) return true; + if(event.type == 'mousedown') { + var $t = $(event.target); + if($t.is('html,.tgAnchor,.tgContent') || $layer.has($t).length) return true; + } } + + $this.trigger('close.tc'); + + return false; } + ); - $this.trigger('close.tc'); + // triggering after + function trigger_after(){ $this.trigger('after-open.tc') } - return false; - } - ); + switch(effect) { + case 'slide': + $layer.slideDown(duration, trigger_after); + break; + case 'slide-h': + var w = $layer.css({'overflow-x':'',width:''}).width(); + $layer + .show() + .css({'overflow-x':'hidden',width:'0px'}) + .animate({width:w}, duration, function(){ $layer.css({'overflow-x':'',width:''}); trigger_after(); }); + break; + case 'fade': + $layer.fadeIn(duration, trigger_after); + break; + default: + $layer.show(); + $this.trigger('after-open.tc'); + } + }) + .bind('close.tc', function(){ + var $this = $(this), $layer, effect, duration; - // triggering after - function trigger_after(){ $this.trigger('after-open.tc') } + // unbind document's event handlers + $(document).unbind('mousedown.tc keydown.tc'); - switch(effect) { - case 'slide': - $layer.slideDown(duration, trigger_after); - break; - case 'slide-h': - var w = $layer.css({'overflow-x':'',width:''}).width(); - $layer - .show() - .css({'overflow-x':'hidden',width:'0px'}) - .animate({width:w}, duration, function(){ $layer.css({'overflow-x':'',width:''}); trigger_after(); }); - break; - case 'fade': - $layer.fadeIn(duration, trigger_after); - break; - default: - $layer.show(); - $this.trigger('after-open.tc'); - } - }) - .bind('close.tc', function(){ - var $this = $(this), $layer, effect, duration; + // get content container + $layer = $( $this.attr('href') ); - // unbind document's event handlers - $(document).unbind('mousedown.tc keydown.tc'); + // get effeect + effect = $this.data('effect'); - // get content container - $layer = $( $this.attr('href') ); + // get duration + duration = $this.data('duration') || 'fast'; - // get effeect - effect = $this.data('effect'); + // set state : hiding + $layer.data('state', 'hiding'); - // get duration - duration = $this.data('duration') || 'fast'; + // before event trigger + $this.trigger('before-close.tc'); - // set state : hiding - $layer.data('state', 'hiding'); + // triggering after + function trigger_after(){ $this.trigger('after-close.tc') }; - // before event trigger - $this.trigger('before-close.tc'); + // close this layer + switch(effect) { + case 'slide': + $layer.slideUp(duration, trigger_after); + break; + case 'slide-h': + $layer.animate({width:0}, duration, function(){ $layer.hide(); trigger_after(); }); + break; + case 'fade': + $layer.fadeOut(duration, trigger_after); + break; + default: + $layer.hide(); + $this.trigger('after-close.tc'); + } + }); - // triggering after - function trigger_after(){ $this.trigger('after-close.tc') }; - - // close this layer - switch(effect) { - case 'slide': - $layer.slideUp(duration, trigger_after); - break; - case 'slide-h': - $layer.animate({width:0}, duration, function(){ $layer.hide(); trigger_after(); }); - break; - case 'fade': - $layer.fadeOut(duration, trigger_after); - break; - default: - $layer.hide(); - $this.trigger('after-close.tc'); - } - }); - - return this; -}; - -$('a.tgAnchor').xeContentToggler(); + return this; + }; + $('a.tgAnchor').xeContentToggler(); }); // Module finder jQuery(function($){ - -$.fn.xeModuleFinder = function(){ - this - .not('.xe-module-finder') - .addClass('xe-module-finder') - .find('a.tgAnchor.findsite') - .bind('before-open.tc', function(){ - var $this, $ul, val; - - $this = $(this); - $ul = $($this.attr('href')).find('>ul'); - val = $this.prev('input:text').val(); - - function on_complete(data) { - var $li, list = data.site_list, i, c; - - $ul.empty(); - $this.closest('.modulefinder').find('.moduleList,.moduleIdList').attr('disabled','disabled'); - - if(data.error || !$.isArray(list)) { - $this.trigger('close.tc'); - return; - } - - for(i=0,c=list.length; i < c; i++) { - $li = $('
  • ').appendTo($ul); - $('