/* * JCE Utilities 2.1.7 * * Copyright (c) 2007 - 2008 Ryan Demmer (www.joomlacontenteditor.net) * Licensed under the GPL (http://www.gnu.org/licenses/licenses.html#GPL)license. * JCE Tooltips based on Mootools Tips plugin - http://www.mootools.net * JCE Lightbox plugin based on Slimbox - http://www.digitalia.be/software/slimbox - and Thickbox - http://jquery.com/demo/thickbox/ */ jQuery.noConflict();(function($){$.jceUtilities=function(options){return $.jceUtilities.init(options)};$.jceUtilities.init=function(options){this.options=$.extend({popup:{legacy:0,overlay:1,overlayopacity:0.8,overlaycolor:'#000000',resize:1,icons:1,fadespeed:500,scalespeed:500,width:640,height:480,theme:'standard',themecustom:'',themepath:'plugins/system/jceutilities/themes',hideobjects:1,scrollpopup:1},tooltip:{classname:'tooltip',opacity:1,speed:150,position:'br',offsets:{'x':16,'y':16}},pngfix:1,wmode:0,imgpath:'plugins/system/jceutilities/img'},options);$.jceUtilities.tooltip.init(this.options.tooltip);$.jceUtilities.popup.init(this.options.popup);if(this.options.pngfix==1&&$.browser.ie&&$.browser.version<7){this.pngFix()}};$.jceUtilities.cleanupEventStr=function(s){s=""+s;s=s.replace('function anonymous()\n{\n','');s=s.replace('\n}','');s=s.replace(/^return true;/gi,'');return s};$.jceUtilities.parseQuery=function(query){var params={},kv,k,v;if(!query){return params}var pairs=query.split(/[;&]/);for(var i=0;i'+title+'')}$(this.tip).append('

'+text+'

');$(this.tip).addClass(this.options.classname).css('position','absolute').appendTo('body').hide();$(this.tip).animate({'opacity':this.options.opacity},this.options.speed).show();this.exists=true},locate:function(e){if(this.exists){var o=this.options.offsets;var page={'x':e.clientX+$(window).scrollLeft(),'y':e.clientY+$(window).scrollTop()};var tip={'x':this.tip.offsetWidth,'y':this.tip.offsetHeight};var pos={'x':e.clientX+o.x,'y':e.clientY+o.y};switch(this.options.position){case'tl':pos.x=(page.x-tip.x)-o.x;pos.y=(page.y-tip.y)-o.y;break;case'tr':pos.x=page.x+o.x;pos.y=(page.y-tip.y)-o.y;break;case'tc':pos.x=(page.x-Math.round((tip.x/2)))+o.x;pos.y=(page.y-tip.y)-o.y;break;case'bl':pos.x=(page.x-tip.x)-o.x;pos.y=(page.y+tip.y)-o.y;break;case'br':pos.x=page.x+o.x;pos.y=page.y+o.y;break;case'bc':pos.x=(page.x-Math.round((tip.x/2)))+o.x;pos.y=(page.y+tip.y)-o.y;break}$(this.tip).css({top:pos.y+'px',left:pos.x+'px'})}},hide:function(el){if(this.exists){$(el).attr('title',this.tip.title);$(this.tip).fadeOut(this.options.speed).remove()}}};$.jceUtilities.popup={popups:[],theme:'',init:function(options){var t=this;this.options=$.extend({},options);this.site=$.jceUtilities.getSite();if(this.options.legacy==1){$('a[href*="jce"][href*="popup"]').each(function(){var p,s;s=$.jceUtilities.cleanupEventStr(this.getAttribute('onclick')).replace(/&/g,'&').replace(/'/g,"'").split("'");p=t._query(s[1]);img=p['img'];if(!/http:\/\//.test(img)){if(img.charAt(0)=='/'){img=img.substr(1)}img=t.site.replace(/http:\/\/([^\/]+)/,'')+img}$(this).attr({'href':img,'title':p['title'].replace(/_/,' '),'onclick':''}).addClass('jcepopup').removeAttr('onclick')})}$('a.jcebox:parent,a.jcelightbox:parent,a.jcepopup:parent,area.jcebox,area.jcelightbox,area.jcepopup').each(function(){if(t.options.icons==1&&this.nodeName=='A'&&!$(this).hasClass('noicon')){t._zoom(this)}if(!$(this).hasClass('nopopup')){t.popups.push(this);$(this).click(function(){return t._start(this)})}});var theme=t.options.theme=='custom'?t.options.themecustom:t.options.theme;$.get(this.site+t.options.themepath+'/'+theme+'/theme.html',function(data){var re=/([\s\S]*?)/;if(re.test(data)){data=re.exec(data)[1]}t.theme=data})},_ie6:function(){return $.browser.msie&&$.browser.version<7},_png:function(el,type){var s;switch(type){case'image':s=el.src;if(/\.(png)$/i.test(s)){$(el).attr('src',this.site+'plugins/system/jceutilities/img/blank.gif').css('filter','progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\''+s+'\'')}break;default:case'css':s=$(el).css('background-image');if(/\.(png)$/i.test(s)){var bg=/url\("(.*)"\)/.exec(s)[1];$(el).css('background-image','none');$(el).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+bg+"')")}break}},_zoom:function(el){var t=this,s;$(el).each(function(){var child=this.firstChild;var zoom=document.createElement('span');if(child&&child.nodeName=='IMG'){var span=document.createElement('span');$(span).attr('style',$(child).attr('style')||'').appendTo($(el));$.each(['style','align','border','hspace','vspace'], function(){$(child).removeAttr(this);});$(child).appendTo($(span));$(zoom).addClass('zoom-image').appendTo($(span));if($.browser.msie){$(zoom).css({'margin-left':-20,'margin-top':$(child).height()-20})}else{$(zoom).css({'margin-left':$(child).width()-20,'margin-top':-20})}}else{$(zoom).addClass('zoom-link');$(el).wrapInner(zoom)}if(t._ie6()&&$.jceUtilities.options.pngfix==1){s=$(zoom).css('background-image');if(s&&/\.(png)/i.test(s)){s=/url\("(.+)"\)/.exec(s)[1]}$(zoom).css('background-image','none');$(zoom).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+s+"')")}})},open:function(s,t,d){var link={};if(typeof s=='object'){link={'href':s.href||s.src,'title':s.title||'','type':s.type||''}}else{link={'href':s,'title':t||'','type':d||''}}return this._start(link)},_start:function(link){var d=document,t=this,n=0,items=[];if(this.options.overlay==1){this.overlay=d.createElement('div');$(this.overlay).attr('id','jcepopup-overlay').appendTo('body').css({opacity:'0',cursor:'pointer',backgroundColor:this.options.overlaycolor,width:$(window).width()}).click(function(){t.close()})}if(!this.theme){this.theme='
';this.theme+='
';this.theme+='
';this.theme+='';this.theme+='
';this.theme+='
';this.theme+='
';this.theme+='';this.theme+='';this.theme+='';this.theme+='
';this.theme+='
';this.theme+='
'}$('body').append(this.theme);$.each(['container','content','loader','closelink','info','caption','nav','next','prev','numbers'],function(i,s){t[s]=$('#jcepopup-'+s).hide()});if(this.closelink){this.closelink.click(function(){t.close()})}if(this.next){this.next.click(function(){t._next()})}if(this.prev){this.prev.click(function(){t._previous()})}if(this._ie6()){this._png(this.container);$('*',this.container).not('#jcepopup-content').each(function(){t._png(this)})}if(link.nodeName=='undefined'){items.push(link);}else if(link.rel||link.nodeName=='AREA'){if(link.nodeName=='AREA'&&!$(link).hasClass('nogroup')){$(link).parent('map').children('area').each(function(i,el){items.push(el);if(el.href==link.href){n=i}})}else{var i=0;$.each(this.popups,function(){if(this.rel==link.rel){items.push(this);if(this.href==link.href){n=i}i++}})}}else{items.push(link)}return this._open(items,n)},_open:function(items,n){this.items=items;this._position();this._bind(true);this.container.css('top',$(window).scrollTop()+50).show();if(this.options.overlay==1&&$(this.overlay)){$(this.overlay).fadeTo(this.options.fadespeed,this.options.overlayopacity)}this._position();return this._change(n)},_position:function(){if(this.options.overlay==1&&$(this.overlay)){$(this.overlay).css({'top':$(window).scrollTop(),'height':$(window).height()})}if(this.options.scrollpopup==1){$(this.container).css({'top':$(window).scrollTop()+50})}},_bind:function(open){var t=this;if(this._ie6()){$('select').each(function(){if(open){this.tmpStyle=this.style.visibility}this.style.visibility=open?'hidden':this.tmpStyle})}if(this.options.hideobjects){$('object,embed').not('#jcepopup-object').each(function(){if(open){this.tmpStyle=this.style.visibility}this.style.visibility=open?'hidden':this.tmpStyle})}if(open){$(window).bind('scroll',function(){t._position()});$(window).bind('resize',function(){t._position()});$(document).bind('keydown',function(event){t._listener(event)})}else{$(window).unbind('scroll');$(window).unbind('resize');$(document).unbind('keydown')}},_listener:function(event){switch(event.keyCode){case 27:case 88:case 67:this.close();break;case 37:case 80:this.previous();break;case 39:case 78:this.next()}},_media:function(c){var ci,cb,mt;switch(c){case'director':case'application/x-director':ci='166b1bca-3f9c-11cf-8075-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0';mt='application/x-director';break;case'windowsmedia':case'mplayer':case'application/x-mplayer2':ci='6bf52a52-394a-11d3-b153-00c04f79faa6';cb='http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701';mt='application/x-mplayer2';break;case'quicktime':case'video/quicktime':ci='02bf25d5-8c17-4b23-bc80-d3488abddc6b';cb='http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0';mt='video/quicktime';break;case'real':case'realaudio':case'audio/x-pn-realaudio-plugin':ci='cfcdaa03-8be4-11cf-b84b-0020afbbccfa';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0';mt='audio/x-pn-realaudio-plugin';break;case'divx':case'video/divx':ci='67dabfbf-d0ab-41fa-9c46-cc0f21721616';cb='http://go.divx.com/plugin/DivXBrowserPlugin.cab';mt='video/divx';break;default:case'flash':case'application/x-shockwave-flash':ci='d27cdb6e-ae6d-11cf-96b8-444553540000';cb='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,124,0';mt='application/x-shockwave-flash';break}return{'classid':ci,'codebase':cb,'mediatype':mt}},_local:function(s){return(!/:\/\//.test(this.active.src)||this.active.src.indexOf(this.site)!=-1)},_query:function(s){var p={},x=s.split(/[&;]/);$.each(x,function(){v=this.split('=');if(v){p[v[0]]=v[1]}});return p},_params:function(s){var p={},x=s.split(';');$.each(x,function(){v=this.match(/(.+)\[(.*?)\]/);p[v[1]]=v[2]});return p},_next:function(){return this._queue(this.index+1)},_previous:function(){return this._queue(this.index-1)},_queue:function(n){var fs=this.options.fadespeed;if(this.closelink){this.closelink.css('visibility','hidden')}if($.browser.opera||this._ie6()){if(this.info){this.info.hide()}this.content.hide();return this._change(n)}else{var t=this;if(this.info){this.info.fadeOut(fs,function(){t.content.fadeOut(fs,function(){return t._change(n)})})}else{t.content.fadeOut(fs,function(){return t._change(n)})}}},_change:function(n){var t=this,p={};if(n<0||n>=this.items.length){return false}this.index=n;this.active={};if(this.loader){this.loader.show()}if(this.object){this.object=null}this.content.empty();$.extend(this.active,{'src':this.items[n].href,'title':this.items[n].title,'type':this.items[n].type||this.items[n].className||'','width':this.options.width,'height':this.options.height});if(/(youtube|google|metacafe)(.+)\/(v|watch|videoplay|googleplayer|fplayer)(.+)/i.test(this.active.src)){this.active.type='flash'}if(/\.(jpg|jpeg|png|gif|bmp|tif)$/i.test(this.active.src)){this.active.type='image';this.img=new Image();this.img.onload=function(){return t._setup()};this.img.src=this.active.src;}else if(/(flash|director|shockwave|mplayer|windowsmedia|quicktime|realaudio|real|divx)/i.test(this.active.type)){if(/(\[.*\])/.test(this.active.title)){p=this._params(this.active.title)}else{p.title=this.active.title}p.src=this.active.src;var base=/:\/\//.test(p.src)?'':$.jceUtilities.getSite();this.object='';if(/youtube(.+)\/(watch\?v=|v\/)(.+)/.test(p.src)){p.src=p.src.replace(/watch\?v=/,'v/');if(!p.width){p.width=425}if(!p.height){p.height=344}}if(/google(.+)\/(videoplay|googleplayer\.swf)\?docid=(.+)/.test(p.src)){p.src=p.src.replace(/videoplay/,'googleplayer.swf');if(!p.width){p.width=425}if(!p.height){p.height=326}}if(/metacafe(.+)\/(watch|fplayer)\/(.+)/.test(p.src)){var s=$.trim(p.src);if(!/\.swf/i.test(s)){if(s.charAt(s.length-1)=='/'){s=s.substring(0,s.length-1)}s=s+'.swf'}p.src=s.replace(/watch/i,'fplayer');if(!p.width){p.width=400}if(!p.height){p.height=345}}this.active.title=p.title||'';this.active.width=parseInt(p.width)||this.options.width;this.active.height=parseInt(p.height)||this.options.height;var mt=this._media(this.active.type);if(this.active.type=='flash'){p.wmode='transparent';p.base=base;p.movie=p.src;delete p.src;}if(/(mplayer|windowsmedia)/i.test(this.active.type)){p.baseurl=base;if($.browser.msie){p.url=p.src;delete p.src}}this.object='';for(n in p){if(p[n]!==''){if(!/(id|name|width|height|style)$/.test(n)){t.object+=''}}}if(!$.browser.msie&&this.active.type!='flash'){this.object+=''}this.object+='';this._setup();}else{var src=this.active.src;var q=$.jceUtilities.parseQuery(src.replace(/^[^\?]+\??/,'').replace(/&/gi,'&'));if(/(\[.*\])/.test(this.active.title)){p=this._params(this.active.title)}else{p.title=this.active.title}this.active.title=p.title;this.active.src=src.replace(/(&|\?)(width|height|bw|bh)=[0-9]+/gi,'');this.active.width=parseInt(q.width)||parseInt(q.bw)||parseInt(p.width)||this.options.width;this.active.height=parseInt(q.height)||parseInt(q.bh)||parseInt(p.height)||this.options.height;if((this.active.type=='ajax'||/text\/(xml|html|htm)/i.test(this.active.type))&&this._local(this.active.src)&&/\.(php|html|htm|txt)/i.test(this.active.src)){if(!/tmpl=component/i.test(this.active.src)){this.active.src+=/\?/.test(this.active.src)?'&tmpl=component':'?tmpl=component'}this.ajax=document.createElement('div');$(this.ajax).attr({id:'jcepopup-ajax'}).css({width:t.active.width,height:t.active.height}).appendTo(this.content);$.get(this.active.src,function(data){var html=data,re=/]*>([\s\S]*?)<\/body>/;if(re.test(data)){html=re.exec(data)[1]}t.ajax.innerHTML=html;if(t.loader){t.loader.hide()}return t._setup()})}else{if(this._local(this.active.src)&&/\.(php|html|htm)/i.test(this.active.src)&&!/(tmpl=component)/i.test(this.active.src)){this.active.src+=/\?/.test(this.active.src)?'&tmpl=component':'?tmpl=component'}this.active.type='iframe';this.iframe=document.createElement('iframe');$(this.iframe).attr({id:'jcepopup-iframe',frameBorder:0,onload:function(){return t._setup()}}).css({width:t.active.width,height:t.active.height}).appendTo(this.content);if(!/\.pdf/i.test(this.active.src)){$(this.iframe).attr('src',this.active.src)}}}return false},_setup:function(){var t=this,w,h;if(this.active.type=='image'){w=this.img.width;h=this.img.height;if(this.options.resize==1){var x=Math.round($(window).width()-150);var y=Math.round($(window).height()-200);if(w>x){h=h*(x/w);w=x;if(h>y){w=w*(y/h);h=y}}else if(h>y){w=w*(y/h);h=y;if(w>x){h=h*(x/w);w=x}}}w=Math.round(w);h=Math.round(h);this.content.width(w).height(h).html('')}else{w=this.active.width;h=this.active.height;if(this.active.type=='iframe'||this.active.type=='ajax'){this.content.width(w).height(h);}else{this.content.width(w).height(h)}}if(this.caption){var title=this.active.title||'',caption='';if(/:\/\//.test(title)){title=''+title+''}caption='

'+title+'

';if(/::/.test(title)){var parts=title.split('::');caption='

'+parts[0]+'

'+parts[1]+'

'}this.caption.html(caption).show()}if(this.nav){var html='',i,len=this.items.length;if(len>1){for(i=0;i'}if(this.prev){if(this.index>0){this.prev.show()}else{this.prev.hide()}}if(this.next){if(this.index