(function(a){a.fn.adapterSearch=function(i){var u=a(this),p,q,v=false,j=false,l=false,H={},w=a('<ul id="adapterImages"></ul>'),I=a('<ul class="adapterList"></ul>').insertAfter("#adapters"),B=a('<ul class="choices"></ul>'),C=a('<ul class="choices"></ul>'),D=a('<ul class="choices"></ul>');a('<div class="asPreloader"><div class="t"></div><div class="m"></div><div class="b"></div></div>').appendTo(a("body"));var E=function(){var b={first_connection:v,first_size:a("#asFirst .selected .sizes").val(),second_connection:j,
second_size:a("#asSecond .selected .sizes").val(),third_connection:l,third_size:a("#asThird .selected .sizes").val()};a.each(b,function(c,f){if(typeof f==="undefined"||f===false)delete b[c]});return b},r="",n="",z=function(b){if(typeof b=="object"){r="";a.each(b,function(c,f){r=r+'"'+c+'":"'+f+'",'});r=r.substr(0,r.length-1)}if(a("#asTable").length){n="";a("#asTable").find("thead th").each(function(c,f){if(a(this).hasClass("sorted"))n=n+'"'+c+'":"'+a(f).find(".tbChoices .selected").text()+'",'});
n=n.substr(0,n.length-1)}else n="";if(n!="")n=',"selectedFilters":{'+n+"}";location.hash="#"+escape("{"+r+n+"}")},A=function(b){if(b=="asSecond"){l=j=false;a("#asSecond, #asThird").removeClass("chosen").addClass("disabled").data("connection",false).find(".selected").removeClass("selected")}else if(b=="asThird"){l=false;a("#asThird").removeClass("chosen").addClass("disabled").data("connection",false).find(".selected").removeClass("selected")}var c=E();if(b){u.addClass("loading");a.ajax({url:a("#asSearchForm").attr("action"),
type:a("#asSearchForm").attr("method"),dataType:"json",data:c,success:function(f){if(b){var o=a("#"+b).data("enabledConnectors",f),e=false;a.each(f,function(){e=true});e?o.removeClass("disabled"):o.addClass("disabled")}u.removeClass("loading")}})}z(c)};a("#adapters").addClass("adapterList");p=a("#adapterOverlay").append(a('<div class="ft"></div>')).dialog({modal:true,resizable:false,draggable:false,autoOpen:false,width:740,closeOnEscape:false,dialogClass:"adapterSearch"}).show().find("#adapters > li").each(function(b){b>
7&&a(this).remove().appendTo(I);b={title:a(this).find("h3").text(),sizes:a(this).find("select.sizes").remove()};var c=a(this).find(".imgKey"),f,o,e,k,h;if(c.length&&c.val()!==""){b.imgFilename=c.val();c.remove();c=i.imgPath+"left/40/"+b.imgFilename;f=i.imgPath+"right/40/"+b.imgFilename;o=i.imgPath+"up/40/"+b.imgFilename;e=i.imgPath+"left/200/"+b.imgFilename;k=i.imgPath+"right/200/"+b.imgFilename;h=i.imgPath+"up/200/"+b.imgFilename}else{b.imgFilename=false;c=i.noImgPath+"/no_image_sm.jpg";f=i.noImgPath+
"/no_image_sm.jpg";o=i.noImgPath+"/no_image_sm.jpg";e=i.noImgPath+"/no_image.jpg";k=i.noImgPath+"/no_image.jpg";h=i.noImgPath+"/no_image.jpg"}var g=function(){if(a(this).find("option:selected").attr("disabled")){this.selectedIndex=0;return false}else A(a(this).closest("#asChoices > li").next().attr("id"))};B.append(a('<li class="'+a(this).attr("id")+'"><img src="'+c+'" /><h4>'+b.title+"</h4>").append(b.sizes.clone().change(g)));C.append(a('<li class="'+a(this).attr("id")+'"><img src="'+f+'" /><h4>'+
b.title+"</h4>").append(b.sizes.clone().change(g)));D.append(a('<li class="'+a(this).attr("id")+'"><img src="'+o+'" /><h4>'+b.title+"</h4>").append(b.sizes.clone()));var m=a("<li></li>");m.append(a('<img src="'+e+'" class="left" />')).append(a('<img src="'+k+'" class="right" />')).append(a('<img src="'+h+'" class="up" />')).append(a("<h3>"+b.title+"</h3>"));w.append(m);H[a(this).attr("id")]=b;a(this).hover(function(){if(!a(this).hasClass("disabled")){a(this).addClass("hover");m.addClass("on")}},function(){if(!a(this).hasClass("disabled")){a(this).removeClass("hover");
m.removeClass("on")}}).click(function(){if(!a(this).hasClass("disabled")){a("#adapterOverlay .selected").removeClass("selected");a(this).addClass("selected");m.addClass("selected");q=a(this).attr("id")}})}).end();a("#asFirst .choice").append(B);a("#asSecond .choice").append(C);a("#asThird .choice").append(D);w.insertBefore(a("#adapterOverlay .foot"));a("#adapterOverlay .adapterList").hover(function(){w.addClass("hovered")},function(){w.removeClass("hovered")});p.find("a.cancel").click(function(){u.removeClass("overlayed");
p.dialog("close").removeClass("first second third").find(".selected").removeClass("selected");return false});p.find("input.ok").click(function(){var b;if(q!==false)if(p.hasClass("first")){v=q;l=j=false;a("#asFirst").addClass("chosen").data("connection",v).find(".choices .selected").removeClass("selected").end().find(".choices ."+v).addClass("selected");b="asSecond"}else if(p.hasClass("second")){j=q;l=false;a("#asSecond").addClass("chosen").data("connection",j).find(".choices .selected").removeClass("selected").end().find(".choices ."+
j).addClass("selected");a("#asSecond .selected .sizes option").removeAttr("disabled");typeof a("#asSecond").data("enabledConnectors")[j]!=="undefined"&&a.each(a("#asSecond").data("enabledConnectors")[j],function(c,f){a("#asSecond .selected .sizes option[value='"+f+"']").attr("disabled","disabled")});b="asThird"}else{l=q;a("#asThird").data("connection",j).addClass("chosen").find(".choices .selected").removeClass("selected").end().find(".choices ."+l).addClass("selected");a("#asThird .selected .sizes option").removeAttr("disabled");
typeof a("#asThird").data("enabledConnectors")[l]!=="undefined"&&a.each(a("#asThird").data("enabledConnectors")[l],function(c,f){a("#asThird .selected .sizes option[value='"+f+"']").attr("disabled","disabled")});b=false}q=false;u.removeClass("overlayed");p.dialog("close").removeClass("first second third").find(".selected").removeClass("selected");A(b);a("#asTable").remove();a("#asStatusAlert, #asStatusOk").hide()});a("#asChoices > li").click(function(b){if(!a(this).hasClass("disabled")&&!a(b.target).is(".sizes, .sizes option")){b=
a(this).attr("id")=="asFirst"?"first":a(this).attr("id")=="asSecond"?"second":"third";u.addClass("overlayed");p.find("h2").text(a(this).attr("title")).end().addClass(b).dialog("open");if(a(this).data("enabledConnectors")){var c=a(this).data("enabledConnectors");a("#adapterOverlay .adapterList > li").each(function(){typeof c[a(this).attr("id")]==="undefined"?a(this).addClass("disabled"):a(this).removeClass("disabled")})}else a("#adapterOverlay .adapterList > li").removeClass("disabled");a(this).hasClass("chosen")&&
a("#"+a(this).data("connection")).click()}});a("#asFindAdapters").click(function(){a("#asTable").remove();a("#asStatusAlert, #asStatusOk").hide();a("#adapterSearch").addClass("loading");var b=E();b.submitted=true;a.ajax({url:a("#asSearchForm").attr("action"),data:b,type:"POST",success:function(c){c=a(c).appendTo(a("#adapterSearch"));a("#asCount").text(a("#asResults > tr").size());a("#asStatusOk").show();F(c);a("#adapterSearch").removeClass("loading");z(b)},error:function(){a("#adapterSearch").removeClass("loading")},
dataType:"html"});return false});a("#asStartOver").click(function(){a("#asTable").remove();a("#asStatusAlert, #asStatusOk").hide();a("#asChoices > li").removeClass("chosen").find(".selected").removeClass("selected");a("#asSecond, #asThird").addClass("disabled");location.hash="";return false});var d=null,G=a.parseJSON(unescape(location.hash.substr(1)));if(G!==null)d=G;else if(i.load)d=i.load;if(d!==null){var x;if(typeof d.first_connection!="undefined"){v=d.first_connection;a("#asFirst").addClass("chosen").data("connection",
d.first_connection).find(".choices .selected").removeClass("selected").end().find(".choices ."+d.first_connection).addClass("selected");typeof d.first_size!=="undefined"&&a("#asFirst ."+d.first_connection+" .sizes > option[value='"+d.first_size+"']").attr("selected","selected");x="asSecond"}if(typeof d.second_connection=="undefined")l=j=false;else{j=d.second_connection;l=false;a("#asSecond").addClass("chosen").removeClass("disabled").data("connection",j).find(".choices .selected").removeClass("selected").end().find(".choices ."+
j).addClass("selected");a("#asSecond .selected .sizes option").removeAttr("disabled");typeof d.second_size!=="undefined"&&a("#asSecond ."+d.second_connection+" .sizes > option[value='"+d.second_size+"']").attr("selected","selected");x="asThird";if(typeof d.third_connection!="undefined"){l=d.third_connection;a("#asThird").data("connection",j).addClass("chosen").removeClass("disabled").find(".choices .selected").removeClass("selected").end().find(".choices ."+l).addClass("selected");a("#asThird .selected .sizes option").removeAttr("disabled");
typeof d.third_size!=="undefined"&&a("#asThird ."+d.third_connection+" .sizes > option[value='"+d.third_size+"']").attr("selected","selected");x=false}}q=false;A(x);d.submitted=="true"&&a("#asFindAdapters").click()}var F=function(b){var c=a(b);if(c.length){c.find("thead th").each(function(){a(this).width(a(this).width())});var f=function(e){for(var k={},h=0;h<e.length;h++)k[e[h]]="";return k},o=function(){var e=c.find("tbody tr");e.removeClass("alt visible").show().find(".sorted").removeClass("sorted");
c.find("thead th.disabled").removeClass("disabled");var k={};c.find("thead th").each(function(h,g){g=a(g);if(g.hasClass("sorted"))k[h]=g.find(".selected").text()});e.each(function(){var h=true,g=a(this);a.each(k,function(m,s){var t=g.children().eq(m);if(t.text()!=s)h=false;else t.addClass("sorted")});h?g.addClass("visible"):g.hide()});c.find("tbody tr.visible:odd").addClass("alt");c.find("thead th").each(function(h){if(a(this).is(".sortable:not(.sorted)")){var g=[];c.find("tbody tr.visible td:nth-child("+
(h+1)+")").each(function(){var m=a(this).text();m in f(g)||g.push(m)});g.length<2&&a(this).addClass("disabled")}});a("#asStatusOk").hide();a("#asStatusAlert").show();z()};c.find("th.sortable").each(function(){var e=a(this),k=a(this).find(".sCon"),h=a('<a href="#" class="sort">Sort</a>').click(function(){if(e.hasClass("open")){e.removeClass("open");a("body").unbind("click.thSort")}else{c.find("th.sortable.open").removeClass("open");a("body").unbind("click.thSort");e.addClass("open");a("body").bind("click.thSort",
function(){e.removeClass("open");a("body").unbind("click.thSort")})}return false});k.prepend(h);var g=c.find("thead  th").index(a(this)),m=[],s=[];g=c.find("tbody tr > *:nth-child("+parseInt(g+1,10)+")");g.each(function(){var y=a(this).text();m.push(y);y in f(s)||s.push(y)});e.data("relatedTDs",g).data("unValues",s);if(s.length>1){var t=a('<ul class="tbChoices"></ul>');a.each(s,function(y,J){a("<li>"+J+"</li>").appendTo(t).click(function(){a(this).siblings().removeClass("selected").end().addClass("selected");
e.removeClass("open").addClass("sorted");o();return false})});t.css({padding:e.height()+8+"px 0 0",width:e.width()+8+"px"});k.append(t)}else h.remove()});a("#asStatusAlert .showAll").click(function(){a("#asTable tr").show().removeClass("visible alt").filter("tbody tr:odd").addClass("alt").end().find("th,td").removeClass("sorted disabled").find(".selected").removeClass("selected");a("#asStatusOk").show();a("#asStatusAlert").hide();return false});if(typeof d!=="undefined"&&typeof d.selectedFilters!==
"undefined"){a.each(d.selectedFilters,function(e,k){a("#asTable thead th:eq("+e+")").addClass("sorted").find(".tbChoices li").filter(function(){return a(this).text()==k}).addClass("selected")});o()}}};a(function(){F(a("#asTable"))})}})(jQuery);