//MooTools More, <http://mootools.net/more>. Copyright (c) 2006-2009 Aaron Newton <http://clientcide.com/>, Valerio Proietti <http://mad4milk.net> & the MooTools team <http://mootools.net/developers>, MIT Style License.

MooTools.More={version:"1.2.4.4",build:"6f6057dc645fdb7547689183b2311063bd653ddf"};Fx.Elements=new Class({Extends:Fx.CSS,initialize:function(b,a){this.elements=this.subject=$$(b);
this.parent(a);},compute:function(g,h,j){var c={};for(var d in g){var a=g[d],e=h[d],f=c[d]={};for(var b in a){f[b]=this.parent(a[b],e[b],j);}}return c;
},set:function(b){for(var c in b){var a=b[c];for(var d in a){this.render(this.elements[c],d,a[d],this.options.unit);}}return this;},start:function(c){if(!this.check(c)){return this;
}var h={},j={};for(var d in c){var f=c[d],a=h[d]={},g=j[d]={};for(var b in f){var e=this.prepare(this.elements[d],b,f[b]);a[b]=e.from;g[b]=e.to;}}return this.parent(h,j);
}});var Drag=new Class({Implements:[Events,Options],options:{snap:6,unit:"px",grid:false,style:true,limit:false,handle:false,invert:false,preventDefault:false,stopPropagation:false,modifiers:{x:"left",y:"top"}},initialize:function(){var b=Array.link(arguments,{options:Object.type,element:$defined});
this.element=document.id(b.element);this.document=this.element.getDocument();this.setOptions(b.options||{});var a=$type(this.options.handle);this.handles=((a=="array"||a=="collection")?$$(this.options.handle):document.id(this.options.handle))||this.element;
this.mouse={now:{},pos:{}};this.value={start:{},now:{}};this.selection=(Browser.Engine.trident)?"selectstart":"mousedown";this.bound={start:this.start.bind(this),check:this.check.bind(this),drag:this.drag.bind(this),stop:this.stop.bind(this),cancel:this.cancel.bind(this),eventStop:$lambda(false)};
this.attach();},attach:function(){this.handles.addEvent("mousedown",this.bound.start);return this;},detach:function(){this.handles.removeEvent("mousedown",this.bound.start);
return this;},start:function(c){if(c.rightClick){return;}if(this.options.preventDefault){c.preventDefault();}if(this.options.stopPropagation){c.stopPropagation();
}this.mouse.start=c.page;this.fireEvent("beforeStart",this.element);var a=this.options.limit;this.limit={x:[],y:[]};for(var d in this.options.modifiers){if(!this.options.modifiers[d]){continue;
}if(this.options.style){this.value.now[d]=this.element.getStyle(this.options.modifiers[d]).toInt();}else{this.value.now[d]=this.element[this.options.modifiers[d]];
}if(this.options.invert){this.value.now[d]*=-1;}this.mouse.pos[d]=c.page[d]-this.value.now[d];if(a&&a[d]){for(var b=2;b--;b){if($chk(a[d][b])){this.limit[d][b]=$lambda(a[d][b])();
}}}}if($type(this.options.grid)=="number"){this.options.grid={x:this.options.grid,y:this.options.grid};}this.document.addEvents({mousemove:this.bound.check,mouseup:this.bound.cancel});
this.document.addEvent(this.selection,this.bound.eventStop);},check:function(a){if(this.options.preventDefault){a.preventDefault();}var b=Math.round(Math.sqrt(Math.pow(a.page.x-this.mouse.start.x,2)+Math.pow(a.page.y-this.mouse.start.y,2)));
if(b>this.options.snap){this.cancel();this.document.addEvents({mousemove:this.bound.drag,mouseup:this.bound.stop});this.fireEvent("start",[this.element,a]).fireEvent("snap",this.element);
}},drag:function(a){if(this.options.preventDefault){a.preventDefault();}this.mouse.now=a.page;for(var b in this.options.modifiers){if(!this.options.modifiers[b]){continue;
}this.value.now[b]=this.mouse.now[b]-this.mouse.pos[b];if(this.options.invert){this.value.now[b]*=-1;}if(this.options.limit&&this.limit[b]){if($chk(this.limit[b][1])&&(this.value.now[b]>this.limit[b][1])){this.value.now[b]=this.limit[b][1];
}else{if($chk(this.limit[b][0])&&(this.value.now[b]<this.limit[b][0])){this.value.now[b]=this.limit[b][0];}}}if(this.options.grid[b]){this.value.now[b]-=((this.value.now[b]-(this.limit[b][0]||0))%this.options.grid[b]);
}if(this.options.style){this.element.setStyle(this.options.modifiers[b],this.value.now[b]+this.options.unit);}else{this.element[this.options.modifiers[b]]=this.value.now[b];
}}this.fireEvent("drag",[this.element,a]);},cancel:function(a){this.document.removeEvent("mousemove",this.bound.check);this.document.removeEvent("mouseup",this.bound.cancel);
if(a){this.document.removeEvent(this.selection,this.bound.eventStop);this.fireEvent("cancel",this.element);}},stop:function(a){this.document.removeEvent(this.selection,this.bound.eventStop);
this.document.removeEvent("mousemove",this.bound.drag);this.document.removeEvent("mouseup",this.bound.stop);if(a){this.fireEvent("complete",[this.element,a]);
}}});Element.implement({makeResizable:function(a){var b=new Drag(this,$merge({modifiers:{x:"width",y:"height"}},a));this.store("resizer",b);return b.addEvent("drag",function(){this.fireEvent("resize",b);
}.bind(this));}});var Asset={javascript:function(f,d){d=$extend({onload:$empty,document:document,check:$lambda(true)},d);if(d.onLoad){d.onload=d.onLoad;
}var b=new Element("script",{src:f,type:"text/javascript"});var e=d.onload.bind(b),a=d.check,g=d.document;delete d.onload;delete d.check;delete d.document;
b.addEvents({load:e,readystatechange:function(){if(["loaded","complete"].contains(this.readyState)){e();}}}).set(d);if(Browser.Engine.webkit419){var c=(function(){if(!$try(a)){return;
}$clear(c);e();}).periodical(50);}return b.inject(g.head);},css:function(b,a){return new Element("link",$merge({rel:"stylesheet",media:"screen",type:"text/css",href:b},a)).inject(document.head);
},image:function(c,b){b=$merge({onload:$empty,onabort:$empty,onerror:$empty},b);var d=new Image();var a=document.id(d)||new Element("img");["load","abort","error"].each(function(e){var g="on"+e;
var f=e.capitalize();if(b["on"+f]){b[g]=b["on"+f];}var h=b[g];delete b[g];d[g]=function(){if(!d){return;}if(!a.parentNode){a.width=d.width;a.height=d.height;
}d=d.onload=d.onabort=d.onerror=null;h.delay(1,a,a);a.fireEvent(e,a,1);};});d.src=a.src=c;if(d&&d.complete){d.onload.delay(1);}return a.set(b);},images:function(d,c){c=$merge({onComplete:$empty,onProgress:$empty,onError:$empty,properties:{}},c);
d=$splat(d);var a=[];var b=0;return new Elements(d.map(function(e){return Asset.image(e,$extend(c.properties,{onload:function(){c.onProgress.call(this,b,d.indexOf(e));
b++;if(b==d.length){c.onComplete();}},onerror:function(){c.onError.call(this,b,d.indexOf(e));b++;if(b==d.length){c.onComplete();}}}));}));}};


window.addEvent('domready', function() {
	$$('.email').each(function(el) {
		var link = el.get('rel').replace('|','@');
		var anchor = new Element('a', {href: 'mailto:' + link, 'class': el.get('class'), 'text': link}).replaces(el);
	});
});

Element.implement({
	inputHint : function(val){
		switch(this.get('tag')){
			case 'form': this.getElements('input[type="text"],textarea').inputHint(val); return this;
			case 'input':
			case 'textarea':
				this.store('default',(val||this.get('value')));
				this.addEvents({
					'focus':function(){if(this.get('value') == this.retrieve('default')){this.set('value', '');}},
					'blur':function(){if(this.get('value').clean() == ''){this.set('value', this.retrieve('default'));}}
				}).fireEvent('blur');
			default: return this;
		}
	}
}); 

function fixSelectOverlap(open){if (Browser.Engine.trident4){var elements = $$(document.getElementsByTagName('object'));elements.extend(document.getElementsByTagName(Browser.Engine.trident4 ? 'select' : 'embed'));elements.each(function(el){ el.style.visibility = open ? 'hidden' : ''; });}}
function onSelect(what){ var destination = what.options[what.selectedIndex].value; if (destination) location.href = destination; }
function isEmpty(val){ if(val == null){return true;} for(var i=0; i < val.length; i++) { if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){ return false; } } return true; }
function isPhone(val){ pattern = new RegExp(/^[0-9-\s+]{5,16}$/); if (!pattern.test(val)) { return false; } return true; }
function isAccess(val){ var pattern = /^([a-zA-Z0-9_]{6,16})$/; if (!pattern.test(val)) { return false; } return true; }
function isEmail(val){if (isEmpty(val)){ return false; }var i = 1,length = val.length;while ((i < length) && (val.charAt(i) != "@")){i++;}if ((i >= length) || (val.charAt(i) != "@")){ return false; }else { i += 2; }while ((i < length) && (val.charAt(i) != ".")){i++;}if ((i >= length - 1) || (val.charAt(i) != ".")){ return false; }else { return true; }}

var jsbox=new Class({Implements:[Options,Events],options:{autostart:false,from:'.jsbox',width:120,height:120,htmlWidth:600,htmlHeight:250,overlay:true,overlayOpacity:0.6},initialize:function(options){this.setOptions(options);this.timer=0;this.index=0;this.opened=false;this.openClosePos={};this.attributes={};this.object={};this.build();switch($type(this.options.from)){case'string':this.from=$$(this.options.from);this.from.each(function(el,i){el.addEvent('click',function(e){e.stop();this.open(el)}.bind(this))},this);break;case'element':var el=this.options.from;this.from=[el];this.options.autostart?this.open(el):el.addEvent('click',function(e){e.stop();this.open(el)}.bind(this));break}},build:function(){this.overlay=new Element('div',{'class':'mask',styles:{display:'none'},events:{'click':this.close.bind(this)}}).inject(document.body,'top');this.closeButton=new Element('div',{'class':'jswin-close'}).addEvent('click',this.close.bind(this));this.prevButton=new Element('div',{'class':'jswin-previous'}).addEvent('click',this.previous.bind(this));this.nextButton=new Element('div',{'class':'jswin-next'}).addEvent('click',this.next.bind(this));this.number=new Element('div',{'class':'jswin-number'});this.title=new Element('div',{'class':'jswin-title'});this.controlsInner=new Element('div',{'class':'jswin-controls-inner'}).adopt(this.prevButton,this.nextButton,this.number,this.title);this.controls=new Element('div',{'class':'jswin-controls'}).adopt(this.controlsInner);this.contentInner=new Element('div',{'class':'jswin-content-inner'});this.content=new Element('div',{'class':'jswin-content',styles:{opacity:0}}).adopt(this.contentInner);var div1=new Element('div',{'html':'<div></div>','class':'jswin-top'});var div2=new Element('div',{'class':'jswin-left'}).adopt(new Element('div',{'class':'jswin-right'}).adopt(this.content,this.controls));var div3=new Element('div',{'html':'<div></div>','class':'jswin-bottom'});this.win=new Element('div',{'class':'jswin jswin-ns',styles:{display:'none'}}).adopt(this.closeButton,div1,div2,div3).inject(document.body,'top');new Drag(this.win,{handle:div1});this.fxoverlay=new Fx.Tween(this.overlay,{property:'opacity',duration:250}).set(0);this.fxwin=new Fx.Elements([this.win,this.content],{duration:500});this.fxcontentInner=new Fx.Tween(this.contentInner,{property:'opacity',duration:250}).set(0);this.fxcontrols=new Fx.Tween(this.controls,{property:'height',duration:250})},showOverlay:function(){var ssize=document.getScrollSize();this.overlay.setStyles({display:'',width:ssize.x+'px',height:ssize.y+'px'});fixSelectOverlap(true)},getOpenClosePos:function(el){var cords=el.getFirst()?el.getFirst().getCoordinates():el.getCoordinates();this.openClosePos={width:cords.width<0||cords.width>200?100:cords.width+30,height:cords.height<60?65:cords.height+30,top:this.options.autostart?-50:cords.top-15,left:this.options.autostart?(window.getWidth()/2):cords.left-15};return this.openClosePos},open:function(el){this.index=this.from.indexOf(el);this.getOpenClosePos(this.from[this.index]);if(!this.opened){this.opened=true;if(this.options.overlay){this.showOverlay();this.fxoverlay.start(this.options.overlayOpacity)}this.win.setStyles($merge({'display':''},this.openClosePos));this.content.addClass('jswin-loading').setStyles({'height':this.openClosePos.height-32,'opacity':0.5});this.load(this.index)}else{this.hide(this.index)}return false},load:function(index){var link=this.from[index];var relOptions={};this.attributes={title:link.title?link.title:'',number:index+1};this.content.addClass('jswin-loading');if($chk(link.rel)){var array=link.rel.split(',');array.each(function(el){var arr=el.split(':');relOptions[arr[0]]=arr[1]})}var extension=$defined(relOptions.type)?relOptions.type:link.href.substr(link.href.lastIndexOf('.')+1).toLowerCase();switch(extension){case'jpg':case'gif':case'png':this.type='image';break;default:this.type='html';break}this.number.set('html',this.attributes.number+' of '+this.from.length);this.title.set('html',this.attributes.title);if(this.type=='image'){this.object=new Asset.image(link.href,{onload:this.show.bind(this)})}else{var html_height=relOptions.height?relOptions.height.toInt():this.options.htmlHeight;var html_width=relOptions.width?relOptions.width.toInt():this.options.htmlWidth;var div=new Element('div',{styles:{padding:'20px'}}).load($defined(relOptions.url)?relOptions.url:link.href);this.object=new Element('div',{styles:{overflow:'auto',height:html_height}}).adopt(div);this.object.width=html_width;this.object.height=html_height;this.show()}},show:function(){var top=(window.getHeight()/2)-((this.object.height.toInt()/2))+window.getScrollTop();var left=(window.getWidth()/2)-(this.object.width/2);if(top<0){top=0}if(left<0){left=0}this.fxwin.cancel().start({0:{width:this.object.width+32,height:this.object.height+32,top:top,left:left},1:{height:this.object.height,opacity:1}}).chain(function(){this.contentInner.empty().adopt(this.object).fade('in');this.content.removeClass('jswin-loading');this.win.removeClass('jswin-ns');if(this.from.length>1){this.attributes.number==1?this.prevButton.addClass('jswin-previous-disabled'):this.prevButton.removeClass('jswin-previous-disabled');this.attributes.number==this.from.length?this.nextButton.addClass('jswin-next-disabled'):this.nextButton.removeClass('jswin-next-disabled');this.fxcontrols.start(this.controlsInner.getStyle('height'))}}.bind(this))},hide:function(index){this.fxcontrols.start(0);this.fxcontentInner.start(0).chain(function(){this.contentInner.empty();this.load(index)}.bind(this))},next:function(){if(this.index<this.from.length-1){this.index++;this.getOpenClosePos(this.from[this.index]);this.hide(this.index)}},previous:function(){if(this.index>0){this.index--;this.getOpenClosePos(this.from[this.index]);this.hide(this.index)}},close:function(){this.fxcontrols.start(0).chain(function(){this.contentInner.empty().setStyle('opacity',0);this.win.addClass('jswin-ns');this.fxwin.cancel().start({0:{width:this.openClosePos.width,height:this.openClosePos.height,top:this.openClosePos.top,left:this.openClosePos.left},1:{height:this.openClosePos.height-32,opacity:0}}).chain(function(){this.opened=false;this.win.setStyle('display','none');this.openClosePos={};if(this.options.overlay){this.fxoverlay.start(0);fixSelectOverlap()}}.bind(this))}.bind(this))}});

/* Author: luistar15, <leo020588 [at] gmail.com> | License: MIT License | Requires: mootools 1.2 core */
var viewer=new Class({mode:'rand',modes:['top','right','bottom','left','alpha'],sizes:{w:480,h:240},fxOptions:{duration:500},interval:5000,initialize:function(items,options){if(options)for(var o in options)this[o]=options[o];if(this.buttons){this.buttons.previous.addEvent('click',this.previous.bind(this,[true]));this.buttons.next.addEvent('click',this.next.bind(this,[true]))}this.current=0;this.previous=null;this.items=items.setStyle('display','none');this.items[this.current].setStyle('display','block');this.disabled=false;this.attrs={left:['left',-this.sizes.w,0,'px'],top:['top',-this.sizes.h,0,'px'],right:['left',this.sizes.w,0,'px'],bottom:['top',this.sizes.h,0,'px'],alpha:['opacity',0,1,'']};this.rand=this.mode=='rand';this.sequence=typeof(this.mode)=='object'?this.mode:false;this.curseq=0;this.timer=null},walk:function(n,manual){if(this.current!==n&&!this.disabled){this.disabled=true;if(manual){this.stop()}if(this.rand){this.mode=this.modes.getRandom()}else if(this.sequence){this.mode=this.sequence[this.curseq];this.curseq+=this.curseq+1<this.sequence.length?1:-this.curseq}this.previous=this.current;this.current=n;var a=this.attrs[this.mode].associate(['p','f','t','u']);for(var i=0;i<this.items.length;i++){if(this.current===i){this.items[i].setStyles($extend({'display':'block','z-index':'2'},JSON.decode('{"'+a.p+'":"'+a.f+a.u+'"}')))}else if(this.previous===i){this.items[i].setStyles({'z-index':'1'})}else{this.items[i].setStyles({'display':'none','z-index':'0'})}}this.items[n].set('tween',{onComplete:this.onComplete.bind(this)}).tween(a.p,a.f,a.t)}},play:function(wait){this.stop();if(!wait){this.next()}this.timer=this.next.periodical(this.interval,this,[false])},stop:function(){$clear(this.timer)},next:function(manual){this.walk(this.current+1<this.items.length?this.current+1:0,manual)},previous:function(manual){this.walk(this.current>0?this.current-1:this.items.length-1,manual)},onComplete:function(){this.disabled=false;this.items[this.previous].setStyle('display','none');if(this.onWalk)this.onWalk(this.current)}});
