/* World of Warcraft Recruit By Talent Widget
 * by Rob G (Mottie) 2011
 * http://mottie.guildportal.com
 * Dual licensed under the MIT or GPL Version 2.
 *
 *** GuildPortal version (original tooltip) ***
 * get the generic site version at https://github.com/Mottie/wowTalentNeeds
 */

(function(d){d.wowTalents=function(i,l){var a=this;a.$el=d(i);a.$el.data("wowTalents",a);a.init=function(){a.options=d.extend({},d.wowTalents.defaultOptions,l);var c,f,b,j,k,h,e,g;g=a.options.defaultNeed.toLowerCase();a.options.defaultNeed="None";if(g.match("l"))a.options.defaultNeed="Low";if(g.match("m"))a.options.defaultNeed="Medium";if(g.match("h"))a.options.defaultNeed="High";b=d('<div id="testsetcolors" style="display:none;"><p class="usebg"/><p class="none"/><p class="low"/><p class="medium"/><p class="high"/></div>'); b.appendTo(d("body"));a.options.bg=b.find(".usebg").css("color");a.options.cn=b.find(".none").css("color");a.options.cl=b.find(".low").css("color");a.options.cm=b.find(".medium").css("color");a.options.ch=b.find(".high").css("color");a.options.cd=b.find("."+a.options.defaultNeed.toLowerCase()).css("color");b='<table width="100%"><tbody>';j='<span class="talentIcon '+a.options.tooltipClass+" ";k=a.options.tooltipMetadata=="class"?" ":'" '+a.options.tooltipMetadata+'="';e=d.wowTalents.talents.root; for(c=0;c<e.length;c++){g=a.options[e[c].name.toLowerCase().replace(/\s+/g,"")].split(",");b+='<tr><td class="classIcon '+e[c].icon+'"><span';b+=a.options.useClassColors?' style="color:'+e[c].color+'">':">";b+=e[c].name+'</span></td><td class="talentIcons">';for(f=0;f<3;f++){h=a.getStyle(g[f]||"");b+=j+e[c].tree[f][1]+" "+h[0].toLowerCase()+k+a.options.tooltipWidth+",";b+=a.options.colorBackground?h[1]+";color:"+a.options.bg:";color:"+h[1];b+=';" title="<center>'+e[c].tree[f][0]+": "+h[0]+'</center>"></span> '}b+= "</td></tr>"}b+="</tbody></table>";a.$el.html(b)};a.getStyle=function(c){c=c.toLowerCase();if(c.match("n"))return["None",a.options.cn];if(c.match("l"))return["Low",a.options.cl];if(c.match("m"))return["Medium",a.options.cm];if(c.match("h"))return["High",a.options.ch];return[a.options.defaultNeed,a.options.cd]};a.init()};d.wowTalents.defaultOptions={defaultNeed:"Low",colorBackground:true,useClassColors:true,tooltipClass:"tooltip",tooltipWidth:150,tooltipMetadata:"rel",deathknight:"",druid:"",hunter:"", mage:"",paladin:"",priest:"",rogue:"",shaman:"",warlock:"",warrior:""};d.wowTalents.talents={root:[{name:"Death Knight",icon:"icon_class_deathknight",color:"#c41f3b",tree:[["Blood","icon_deathknight_blood"],["Frost","icon_deathknight_frost"],["Unholy","icon_deathknight_unholy"]]},{name:"Druid",icon:"icon_class_druid",color:"#ff7d0a",tree:[["Balance","icon_druid_balance"],["Feral","icon_druid_feral"],["Restoration","icon_druid_restoration"]]},{name:"Hunter",icon:"icon_class_hunter",color:"#abd473", tree:[["Beast Mastery","icon_hunter_beast_mastery"],["Marksmanship","icon_hunter_marksmanship"],["Survival","icon_hunter_survival"]]},{name:"Mage",icon:"icon_class_mage",color:"#69ccf0",tree:[["Arcane","icon_mage_arcane"],["Fire","icon_mage_fire"],["Frost","icon_mage_frost"]]},{name:"Paladin",icon:"icon_class_paladin",color:"#f58cba",tree:[["Holy","icon_paladin_holy"],["Protection","icon_paladin_protection"],["Retribution","icon_paladin_retribution"]]},{name:"Priest",icon:"icon_class_priest",color:"#ffffff", tree:[["Discipline","icon_priest_discipline"],["Holy","icon_priest_holy"],["Shadow","icon_priest_shadow"]]},{name:"Rogue",icon:"icon_class_rogue",color:"#fff569",tree:[["Assassination","icon_rogue_assassination"],["Combat","icon_rogue_combat"],["Subtlety","icon_rogue_subtlety"]]},{name:"Shaman",icon:"icon_class_shaman",color:"#2459ff",tree:[["Elemental","icon_shaman_elemental"],["Enhancement","icon_shaman_enhancement"],["Restoration","icon_shaman_restoration"]]},{name:"Warlock",icon:"icon_class_warlock", color:"#9482c9",tree:[["Affliction","icon_warlock_affliction"],["Demonology","icon_warlock_demonology"],["Destruction","icon_warlock_destruction"]]},{name:"Warrior",icon:"icon_class_warrior",color:"#c79c6e",tree:[["Arms","icon_warrior_arms"],["Fury","icon_warrior_fury"],["Protection","icon_warrior_protection"]]}]};d.fn.wowTalents=function(i){return this.each(function(){new d.wowTalents(this,i)})}})(jQuery);
