/**
 * jPanel v1.2
 * by Deepu KS deepu.ks@tcs.com
 * Copyright (c) 2011 Deepu KS
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 * Version 1.2.0 08.10.11
 */
(function($){$.fn.jPanel=function(options){var settings={'effect':'slide','speed':'medium','easing':'','cookie':false,'cExpires':null,'remoteDiv':false,'ajaxTimeout':30000};return this.each(function(){if(options){$.extend(settings,options);settings.cookie=(settings.cookie=='true'||settings.cookie==true)?true:false;settings.remoteDiv=(settings.remoteDiv=='true'||settings.remoteDiv==true)?true:false;settings.speed=(settings.speed=='slow'||settings.speed=='fast')?settings.speed:'medium';settings.easing=(settings.easing=='swing'||settings.easing=='linear')?settings.easing:'';settings.ajaxTimeout=(typeof settings.ajaxTimeout==='number')?settings.ajaxTimeout:30000}ConstructPanel(this,settings)}).each(function(){if(settings.cookie==true)setPanel(this)})}})(jQuery);function ConstructPanel(div,settings){var parent=$(div);parent.wrapInner("<div class='ui-helper-reset ui-widget-content ui-corner-bottom'></div>");if(parent.attr("id"))$("<h3 id='"+parent.attr("id")+"Title' class='head ui-widget-header ui-state-default ui-helper-reset  ui-corner-all'><span class='ui-icon ui-icon-circle-plus leftIcon'></span><a href='#' class='nlink' tabindex='-1'>"+parent.attr("title")+"</a></h3>").prependTo(parent);else $("<h3 class='head ui-widget-header ui-helper-reset ui-state-default ui-corner-all'><span class='ui-icon ui-icon-circle-plus leftIcon'></span><a href='#' class='nlink' tabindex='-1'>"+parent.attr("title")+"</a></h3>").prependTo(parent);$(".head",parent).click(function(){var plusIcon='ui-icon-circle-plus';var minusIcon='ui-icon-circle-minus';var head=$(this);var load=false;var $icon=head.children('.ui-icon');if(settings.effect=='slide')head.next().slideToggle(settings.speed,settings.easing);else if(settings.effect=='fade'){if($icon.hasClass(plusIcon)){head.next().fadeIn(settings.speed,settings.easing)}else if($icon.hasClass(minusIcon)){head.next().fadeOut(settings.speed,settings.easing)}}else head.next().toggle();head.toggleClass('ui-state-active ui-state-default ui-corner-top ui-corner-all');if($icon.hasClass(plusIcon)){load=true;$icon.removeClass(plusIcon);$icon.addClass(minusIcon);if(head.attr("id")!=""&&settings.cookie==true)setCookie(head.attr("id"),'open',{expires:settings.cExpires})}else if($icon.hasClass(minusIcon)){load=false;$icon.removeClass(minusIcon);$icon.addClass(plusIcon);if(head.attr("id")!=""&&settings.cookie==true)setCookie(head.attr("id"),'close',{expires:settings.cExpires})}if(load&&settings.remoteDiv==true){loadRemoteContent(head,settings)}return this}).hover(function(){$(this).addClass("ui-state-hover")},function(){$(this).removeClass("ui-state-hover")}).next().hide()}function loadRemoteContent(head,settings){var parent=head.parent();if(parent&&(parent.attr("href")||parent.attr("action"))){var url=parent.attr("href")?parent.attr("href"):parent.attr("action");var data="";var method=parent.attr("method")&&parent.attr("method")=='POST'?'POST':'GET';var target=(parent.attr("target")&&$('#'+parent.attr("target")))?$('#'+parent.attr("target")):head.next();target.html("<p> Loading content....</p>");var formIds=parent.attr("formids")?parent.attr("formids").split(','):null;if(formIds){$(formIds).each(function(){data+=data.match(/.?[^?&]$/)?'&'+$('form#'+this).serialize():$('form#'+this).serialize()})}$.ajax({url:url,data:data,type:method,cache:false,dataType:"html",timeout:settings.ajaxTimeout,success:function(data,textStatus,jqXHR){target.html(data)},error:function(jqXHR,textStatus,errorThrown){target.html("Error loading content, please try again.")}})}}function setPanel(div){var cookie=document.cookie;var cookieStatus=null;if(div.id!=""){var headId=div.id+'Title';cookieStatus=(getCookie(headId))?getCookie(headId):null;if(cookieStatus=='open')$('#'+headId).click()}}function setCookie(key,value,options){if(arguments.length>1&&String(value)!=="[object Object]"){options=jQuery.extend({},options);if(value===null||value===undefined){options.expires=-1}if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days)}value=String(value);return(document.cookie=[encodeURIComponent(key),'=',options.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''))}}function getCookie(key){options={};var result,decode=options.raw?function(s){return s}:decodeURIComponent;return(result=new RegExp('(?:^|; )'+encodeURIComponent(key)+'=([^;]*)').exec(document.cookie))?decode(result[1]):null}
