//jquery.rte
(function($){if(typeof $.fn.rte==="undefined"){var defaults={media_url:"/templates/images/rich_text/",content_css_url:"rte.css",dot_net_button_class:null,max_height:350};$.fn.rte=function(options){$.fn.rte.html=function(iframe){return iframe.contentWindow.document.getElementsByTagName("body")[0].innerHTML;};var opts=$.extend(defaults,options);return this.each(function(){var textarea=$(this);var iframe;var element_id=textarea.attr("id");function enableDesignMode(){var content=textarea.val();if($.trim(content)==''){content='<br />';}
if(iframe){console.log("already created");textarea.hide();$(iframe).contents().find("body").html(content);$(iframe).show();$("#toolbar-"+element_id).remove();textarea.before(toolbar());return true;}
iframe=document.createElement("iframe");iframe.frameBorder=0;iframe.frameMargin=0;iframe.framePadding=0;iframe.height=200;if(textarea.attr('class'))
iframe.className=textarea.attr('class');if(textarea.attr('id'))
iframe.id=element_id;if(textarea.attr('name'))
iframe.title=textarea.attr('name');textarea.after(iframe);var css="";if(opts.content_css_url){css="<link type='text/css' rel='stylesheet' href='"+opts.content_css_url+"' />";}
var doc="<html><head>"+css+"</head><body class='frameBody'>"+content+"</body></html>";tryEnableDesignMode(doc,function(){$("#toolbar-"+element_id).remove();textarea.before(toolbar());textarea.hide();});}
function tryEnableDesignMode(doc,callback){if(!iframe){return false;}
try{iframe.contentWindow.document.open();iframe.contentWindow.document.write(doc);iframe.contentWindow.document.close();}catch(error){}
if(document.contentEditable){iframe.contentWindow.document.designMode="On";callback();return true;}
else if(document.designMode!=null){try{iframe.contentWindow.document.designMode="on";callback();return true;}catch(error){}}
setTimeout(function(){tryEnableDesignMode(doc,callback)},500);return false;}
function disableDesignMode(submit){var content=$(iframe).contents().find("body").html();if($(iframe).is(":visible")){textarea.val(content);}
if(submit!==true){textarea.show();$(iframe).hide();}}
function toolbar(){var tb=$("<div class='rte-toolbar' id='toolbar-"+element_id+"'><div>\
                <p style='display:none;'>\
                    <select>\
                        <option value=''>Block style</option>\
                        <option value='p'>Paragraph</option>\
                        <option value='h3'>Title</option>\
                        <option value='address'>Address</option>\
                    </select>\
                </p>\
                <p class='fl'>\
                    <a href='#' class='bold'><img src='"+opts.media_url+"bold.png' alt='Òëóñòû' title='Òëóñòû' /></a>\
     <a href='#' class='italic'><img src='"+opts.media_url+"italic.png' alt='Êóðñ³¢' title='Êóðñ³¢' /></a>\
     <a href='#' class='underline'><img src='"+opts.media_url+"underline.png' alt='Ïàäêðýñëåíû' title='Ïàäêðýñëåíû' /></a>\
     <a href='#' class='unorderedlist'><img src='"+opts.media_url+"unordered.png' alt='Ñï³ñ' title='Ñï³ñ' /></a>\
     <a href='#' class='link'><img src='"+opts.media_url+"link.png' alt='Ñïàñûëêà' title='Ñïàñûëêà' /></a>\
     <a href='#' class='image'><img src='"+opts.media_url+"image.png' alt='Ìàëþíàê' title='Ìàëþíàê' /></a>\
                </p>\
                <p class='fr'>\
                    <a href='#' class='disable'><img src='"+opts.media_url+"close.png' alt='Ñõàâàöü ðýäàêòàð' title='Ñõàâàöü ðýäàêòàð' /></a>\
                </p></div></div>");$('select',tb).change(function(){var index=this.selectedIndex;if(index!=0){var selected=this.options[index].value;formatText("formatblock",'<'+selected+'>');}});$('.bold',tb).click(function(){formatText('bold');return false;});$('.italic',tb).click(function(){formatText('italic');return false;});$('.unorderedlist',tb).click(function(){formatText('insertunorderedlist');return false;});$('.link',tb).click(function(){var p=prompt("URL:");if(p)
formatText('CreateLink',p);return false;});$('.image',tb).click(function(){var p=prompt("image URL:");if(p)
formatText('InsertImage',p);return false;});$('.disable',tb).click(function(){disableDesignMode();var edm=$('<a class="rte-edm" href="#">Enable design mode</a>');tb.empty().append(edm);edm.click(function(e){e.preventDefault();enableDesignMode();$(this).remove();});return false;});if(opts.dot_net_button_class){var dot_net_button=$(iframe).parents('form').find(opts.dot_net_button_class);dot_net_button.click(function(){disableDesignMode(true);});}else{$(iframe).parents('form').submit(function(){disableDesignMode(true);});}
var iframeDoc=$(iframe.contentWindow.document);var select=$('select',tb)[0];iframeDoc.mouseup(function(){setSelectedType(getSelectionElement(),select);return true;});iframeDoc.keyup(function(){setSelectedType(getSelectionElement(),select);var body=$('body',iframeDoc);if(body.scrollTop()>0){var iframe_height=parseInt(iframe.style['height'])
if(isNaN(iframe_height))
iframe_height=0;var h=Math.min(opts.max_height,iframe_height+body.scrollTop())+'px';iframe.style['height']=h;}
return true;});return tb;};function formatText(command,option){iframe.contentWindow.focus();try{iframe.contentWindow.document.execCommand(command,false,option);}catch(e){}
iframe.contentWindow.focus();};function setSelectedType(node,select){while(node.parentNode){var nName=node.nodeName.toLowerCase();for(var i=0;i<select.options.length;i++){if(nName==select.options[i].value){select.selectedIndex=i;return true;}}
node=node.parentNode;}
select.selectedIndex=0;return true;};function getSelectionElement(){if(iframe.contentWindow.document.selection){selection=iframe.contentWindow.document.selection;range=selection.createRange();try{node=range.parentElement();}
catch(e){return false;}}else{try{selection=iframe.contentWindow.getSelection();range=selection.getRangeAt(0);}
catch(e){return false;}
node=range.commonAncestorContainer;}
return node;};enableDesignMode();});};}})(jQuery);

//jquery.innerfade
(function($){$.fn.innerfade=function(options){return this.each(function(){$.innerfade(this,options);});};$.innerfade=function(container,options){var settings={'animationtype':'fade','speed':'normal','type':'sequence','timeout':2000,'containerheight':'auto','runningclass':'innerfade','children':null};if(options)
$.extend(settings,options);if(settings.children===null)
var elements=$(container).children();else
var elements=$(container).children(settings.children);if(elements.length>1){$(container).css('position','relative').css('height',settings.containerheight).addClass(settings.runningclass);for(var i=0;i<elements.length;i++){$(elements[i]).css('z-index',String(elements.length-i)).css('position','absolute').hide();};if(settings.type=="sequence"){setTimeout(function(){$.innerfade.next(elements,settings,1,0);},settings.timeout);$(elements[0]).show();}else if(settings.type=="random"){var last=Math.floor(Math.random()*(elements.length));setTimeout(function(){do{current=Math.floor(Math.random()*(elements.length));}while(last==current);$.innerfade.next(elements,settings,current,last);},settings.timeout);$(elements[last]).show();}else if(settings.type=='random_start'){settings.type='sequence';var current=Math.floor(Math.random()*(elements.length));setTimeout(function(){$.innerfade.next(elements,settings,(current+1)%elements.length,current);},settings.timeout);$(elements[current]).show();}else{alert('Innerfade-Type must either be \'sequence\', \'random\' or \'random_start\'');}}};$.innerfade.next=function(elements,settings,current,last){if(settings.animationtype=='slide'){$(elements[last]).slideUp(settings.speed);$(elements[current]).slideDown(settings.speed);}else if(settings.animationtype=='fade'){$(elements[last]).fadeOut(settings.speed);$(elements[current]).fadeIn(settings.speed,function(){removeFilter($(this)[0]);});}else
alert('Innerfade-animationtype must either be \'slide\' or \'fade\'');if(settings.type=="sequence"){if((current+1)<elements.length){current=current+1;last=current-1;}else{current=0;last=elements.length-1;}}else if(settings.type=="random"){last=current;while(current==last)
current=Math.floor(Math.random()*elements.length);}else
alert('Innerfade-Type must either be \'sequence\', \'random\' or \'random_start\'');setTimeout((function(){$.innerfade.next(elements,settings,current,last);}),settings.timeout);};})(jQuery);function removeFilter(element){if(element.style.removeAttribute){element.style.removeAttribute('filter');}}
