// Compressed date:12/4/2009 11:17:54 AM
//Including MD5.js

var hexcase=0;var b64pad="";function hex_md5(a){return rstr2hex(rstr_md5(str2rstr_utf8(a)))}function b64_md5(a){return rstr2b64(rstr_md5(str2rstr_utf8(a)))}function any_md5(a,b){return rstr2any(rstr_md5(str2rstr_utf8(a)),b)}function hex_hmac_md5(b,a){return rstr2hex(rstr_hmac_md5(str2rstr_utf8(b),str2rstr_utf8(a)))}function b64_hmac_md5(b,a){return rstr2b64(rstr_hmac_md5(str2rstr_utf8(b),str2rstr_utf8(a)))}function any_hmac_md5(c,a,b){return rstr2any(rstr_hmac_md5(str2rstr_utf8(c),str2rstr_utf8(a)),b)}function md5_vm_test(){return hex_md5("abc").toLowerCase()=="900150983cd24fb0d6963f7d28e17f72"}function rstr_md5(a){return binl2rstr(binl_md5(rstr2binl(a),a.length*8))}function rstr_hmac_md5(c,g){var f=rstr2binl(c);if(f.length>16){f=binl_md5(f,c.length*8)}var a=Array(16),d=Array(16);for(var e=0;e<16;e++){a[e]=f[e]^909522486;d[e]=f[e]^1549556828}var b=binl_md5(a.concat(rstr2binl(g)),512+g.length*8);return binl2rstr(binl_md5(d.concat(b),512+128))}function rstr2hex(d){try{hexcase}catch(g){hexcase=0}var b=hexcase?"0123456789ABCDEF":"0123456789abcdef";var c="";var a;for(var f=0;f<d.length;f++){a=d.charCodeAt(f);c+=b.charAt((a>>>4)&15)+b.charAt(a&15)}return c}function rstr2b64(c){try{b64pad}catch(f){b64pad=""}var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var d="";var k=c.length;for(var a=0;a<k;a+=3){var h=(c.charCodeAt(a)<<16)|(a+1<k?c.charCodeAt(a+1)<<8:0)|(a+2<k?c.charCodeAt(a+2):0);for(var b=0;b<4;b++){if(a*8+b*6>c.length*8){d+=b64pad}else{d+=g.charAt((h>>>6*(3-b))&63)}}}return d}function rstr2any(h,d){var f=d.length;var a,b,k,e,n;var g=Array(Math.ceil(h.length/2));for(a=0;a<g.length;a++){g[a]=(h.charCodeAt(a*2)<<8)|h.charCodeAt(a*2+1)}var l=Math.ceil(h.length*8/(Math.log(d.length)/Math.log(2)));var m=Array(l);for(b=0;b<l;b++){n=Array();e=0;for(a=0;a<g.length;a++){e=(e<<16)+g[a];k=Math.floor(e/f);e-=k*f;if(n.length>0||k>0){n[n.length]=k}}m[b]=e;g=n}var c="";for(a=m.length-1;a>=0;a--){c+=d.charAt(m[a])}return c}function str2rstr_utf8(c){var b="";var d=-1;var a,e;while(++d<c.length){a=c.charCodeAt(d);e=d+1<c.length?c.charCodeAt(d+1):0;if(55296<=a&&a<=56319&&56320<=e&&e<=57343){a=65536+((a&1023)<<10)+(e&1023);d++}if(a<=127){b+=String.fromCharCode(a)}else{if(a<=2047){b+=String.fromCharCode(192|((a>>>6)&31),128|(a&63))}else{if(a<=65535){b+=String.fromCharCode(224|((a>>>12)&15),128|((a>>>6)&63),128|(a&63))}else{if(a<=2097151){b+=String.fromCharCode(240|((a>>>18)&7),128|((a>>>12)&63),128|((a>>>6)&63),128|(a&63))}}}}}return b}function str2rstr_utf16le(b){var a="";for(var c=0;c<b.length;c++){a+=String.fromCharCode(b.charCodeAt(c)&255,(b.charCodeAt(c)>>>8)&255)}return a}function str2rstr_utf16be(b){var a="";for(var c=0;c<b.length;c++){a+=String.fromCharCode((b.charCodeAt(c)>>>8)&255,b.charCodeAt(c)&255)}return a}function rstr2binl(b){var a=Array(b.length>>2);for(var c=0;c<a.length;c++){a[c]=0}for(var c=0;c<b.length*8;c+=8){a[c>>5]|=(b.charCodeAt(c/8)&255)<<(c%32)}return a}function binl2rstr(b){var a="";for(var c=0;c<b.length*32;c+=8){a+=String.fromCharCode((b[c>>5]>>>(c%32))&255)}return a}function binl_md5(f,o){f[o>>5]|=128<<((o)%32);f[(((o+64)>>>9)<<4)+14]=o;var h=1732584193;var j=-271733879;var k=-1732584194;var l=271733878;for(var e=0;e<f.length;e+=16){var m=h;var p=j;var g=k;var n=l;h=md5_ff(h,j,k,l,f[e+0],7,-680876936);l=md5_ff(l,h,j,k,f[e+1],12,-389564586);k=md5_ff(k,l,h,j,f[e+2],17,606105819);j=md5_ff(j,k,l,h,f[e+3],22,-1044525330);h=md5_ff(h,j,k,l,f[e+4],7,-176418897);l=md5_ff(l,h,j,k,f[e+5],12,1200080426);k=md5_ff(k,l,h,j,f[e+6],17,-1473231341);j=md5_ff(j,k,l,h,f[e+7],22,-45705983);h=md5_ff(h,j,k,l,f[e+8],7,1770035416);l=md5_ff(l,h,j,k,f[e+9],12,-1958414417);k=md5_ff(k,l,h,j,f[e+10],17,-42063);j=md5_ff(j,k,l,h,f[e+11],22,-1990404162);h=md5_ff(h,j,k,l,f[e+12],7,1804603682);l=md5_ff(l,h,j,k,f[e+13],12,-40341101);k=md5_ff(k,l,h,j,f[e+14],17,-1502002290);j=md5_ff(j,k,l,h,f[e+15],22,1236535329);h=md5_gg(h,j,k,l,f[e+1],5,-165796510);l=md5_gg(l,h,j,k,f[e+6],9,-1069501632);k=md5_gg(k,l,h,j,f[e+11],14,643717713);j=md5_gg(j,k,l,h,f[e+0],20,-373897302);h=md5_gg(h,j,k,l,f[e+5],5,-701558691);l=md5_gg(l,h,j,k,f[e+10],9,38016083);k=md5_gg(k,l,h,j,f[e+15],14,-660478335);j=md5_gg(j,k,l,h,f[e+4],20,-405537848);h=md5_gg(h,j,k,l,f[e+9],5,568446438);l=md5_gg(l,h,j,k,f[e+14],9,-1019803690);k=md5_gg(k,l,h,j,f[e+3],14,-187363961);j=md5_gg(j,k,l,h,f[e+8],20,1163531501);h=md5_gg(h,j,k,l,f[e+13],5,-1444681467);l=md5_gg(l,h,j,k,f[e+2],9,-51403784);k=md5_gg(k,l,h,j,f[e+7],14,1735328473);j=md5_gg(j,k,l,h,f[e+12],20,-1926607734);h=md5_hh(h,j,k,l,f[e+5],4,-378558);l=md5_hh(l,h,j,k,f[e+8],11,-2022574463);k=md5_hh(k,l,h,j,f[e+11],16,1839030562);j=md5_hh(j,k,l,h,f[e+14],23,-35309556);h=md5_hh(h,j,k,l,f[e+1],4,-1530992060);l=md5_hh(l,h,j,k,f[e+4],11,1272893353);k=md5_hh(k,l,h,j,f[e+7],16,-155497632);j=md5_hh(j,k,l,h,f[e+10],23,-1094730640);h=md5_hh(h,j,k,l,f[e+13],4,681279174);l=md5_hh(l,h,j,k,f[e+0],11,-358537222);k=md5_hh(k,l,h,j,f[e+3],16,-722521979);j=md5_hh(j,k,l,h,f[e+6],23,76029189);h=md5_hh(h,j,k,l,f[e+9],4,-640364487);l=md5_hh(l,h,j,k,f[e+12],11,-421815835);k=md5_hh(k,l,h,j,f[e+15],16,530742520);j=md5_hh(j,k,l,h,f[e+2],23,-995338651);h=md5_ii(h,j,k,l,f[e+0],6,-198630844);l=md5_ii(l,h,j,k,f[e+7],10,1126891415);k=md5_ii(k,l,h,j,f[e+14],15,-1416354905);j=md5_ii(j,k,l,h,f[e+5],21,-57434055);h=md5_ii(h,j,k,l,f[e+12],6,1700485571);l=md5_ii(l,h,j,k,f[e+3],10,-1894986606);k=md5_ii(k,l,h,j,f[e+10],15,-1051523);j=md5_ii(j,k,l,h,f[e+1],21,-2054922799);h=md5_ii(h,j,k,l,f[e+8],6,1873313359);l=md5_ii(l,h,j,k,f[e+15],10,-30611744);k=md5_ii(k,l,h,j,f[e+6],15,-1560198380);j=md5_ii(j,k,l,h,f[e+13],21,1309151649);h=md5_ii(h,j,k,l,f[e+4],6,-145523070);l=md5_ii(l,h,j,k,f[e+11],10,-1120210379);k=md5_ii(k,l,h,j,f[e+2],15,718787259);j=md5_ii(j,k,l,h,f[e+9],21,-343485551);h=safe_add(h,m);j=safe_add(j,p);k=safe_add(k,g);l=safe_add(l,n)}return Array(h,j,k,l)}function md5_cmn(h,e,f,c,g,d){return safe_add(bit_rol(safe_add(safe_add(e,h),safe_add(c,d)),g),f)}function md5_ff(g,h,i,j,e,k,f){return md5_cmn((h&i)|((~h)&j),g,h,e,k,f)}function md5_gg(g,h,i,j,e,k,f){return md5_cmn((h&j)|(i&(~j)),g,h,e,k,f)}function md5_hh(g,h,i,j,e,k,f){return md5_cmn(h^i^j,g,h,e,k,f)}function md5_ii(g,h,i,j,e,k,f){return md5_cmn(i^(h|(~j)),g,h,e,k,f)}function safe_add(a,b){var c=(a&65535)+(b&65535);var d=(a>>16)+(b>>16)+(c>>16);return(d<<16)|(c&65535)}function bit_rol(b,a){return(b<<a)|(b>>>(32-a))};

//Including CF_full.js

var CF={};CF.version="1.0";CF.buildNum="1,582";CF.buildDate="2009/09/30 12:41";CF.toArray=function(c){if(!c){return[]}if(c.toArray){return c.toArray()}var a=c.length||0,b=new Array(a);while(a--){b[a]=c[a]}return b};CF.arrayClone=function(b){var c=[];jQuery.each(b,function(d,a){c.push(a)});return c};CF.extend=function(a,c){if(c){for(var b in c){a[b]=c[b]}}return a};CF.mixin=CF.extend;CF.keys=function(c){var a=[];for(var b in c){a.push(b)}return a};CF.arrayFind=function(b,a,d){var c=null;jQuery.each(b,function(f,e){if(a.call(d,f,e)){c=e;return false}});return c};CF.pluck=function(a,b){return CF.collect(a,function(d,c){return c[b]})};CF.arrayFindAll=function(b,a,c){var d=[];jQuery.each(b,function(f,e){if(a.call(c,f,e)){d.push(e)}});return d};CF.arrayReject=function(b,a,c){var d=[];jQuery.each(b,function(f,e){if(!a.call(c,f,e)){d.push(e)}});return d};CF.arrayCompact=function(a){var e=a.length;var d,c;var b=[];for(d=0;d<e;d++){c=a[d];if(c){b.push(c)}}return b};CF.hasClass=function(c,b){if(c.jquery){c=c.get(0)}if(!c.className){return false}var a=" "+c.className+" ";return(a.indexOf(" "+b+" ")!=-1)};CF.collect=function(c,a){var b=[];jQuery.each(c,function(d,e){b.push(a(d,e))});return CF.arrayCompact(b)};CF.first=function(c,a){var e=c.length;for(var d=0;d<e;d++){var b=a(d,c[d]);if(b!=null&&b!=undefined){return b}}return null};CF.isIE=function(){return jQuery.browser.msie};CF.isIE6=function(){return CF.isIE()&&parseInt(jQuery.browser.version)==6};CF.isIE7=function(){return CF.isIE()&&parseInt(jQuery.browser.version)==7};CF.isIE8=function(){return CF.isIE()&&parseInt(jQuery.browser.version)==8};CF.isIE8Compat=function(){return CF.isIE7()&&window.postMessage};CF.isSafari=function(){var a=navigator.userAgent.toLowerCase();return(a.indexOf("safari")!=-1&&a.indexOf("chrome")==-1)};CF.isUndefined=function(a){return typeof a=="undefined"};CF.isNumber=function(a){return typeof a=="number"};CF.inList=function(b,a){var d=a.length;for(var c=0;c<d;c++){if(b===a[c]){return true}}return false};CF.error=function(b,a){if(window.console){console.log("ERROR: "+CF._logBuilder(CF.toArray(arguments)))}};CF._logBuilder=function(b,a){a=a||" arg";var c="";c+=b.shift();jQuery.each(b,function(e,d){if(typeof d=="string"){c+=" "+d}else{c+=a+e+1+" "+CF.toJSON(d)}});return c};CF.log=function(){if(window.console){console.log("INFO: "+CF._logBuilder(CF.toArray(arguments)))}};CF.enterPressed=function(b){var a=function(c){if(c.keyCode==13){b()}};return a};CF.focusLater=function(b,c){if(!c){c=200}var a=function(){try{b.get(0).focus()}catch(d){CF.focusLater(b)}};setTimeout(a,c);return b};CF.nl2br=function(a){return a.replace(/\n/g,"<br />")};CF.makeNamespace=function(b){var a=function(g,e,f){if(f<(e.length-1)){var d=e[f];if(!g[d]){g[d]={}}f++;a(g[d],e,f)}};var c=b.split(".");a(window,c,0)};CF.evalFx=function(b,f,a,c){if(!f){f={}}try{return new Function("data","with (arguments[0]) return "+b)(f)}catch(d){if(!a){CF.error((c||"Error applying expression: ")+b,d.message)}}return undefined};CF.quoteString=function(){var c=/["\\\x00-\x1f\x7f-\x9f]/g;var b={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};var a=function(d){if(c.test(d)){return'"'+d.replace(c,function(e){var f=b[e];if(typeof f==="string"){return f}f=e.charCodeAt();return"\\u00"+Math.floor(f/16).toString(16)+(f%16).toString(16)})+'"'}return'"'+d+'"'};return a}();CF.toJSON=function(e){var f=typeof(e);if(f=="undefined"){return"undefined"}else{if(f=="number"||f=="boolean"){return e+""}else{if(e===null){return"null"}else{if(f=="function"){return CF.quoteString("function()")}else{if(f=="string"){return CF.quoteString(e)}else{if(f=="date"){return e.getTime()}else{if(f=="object"&&typeof e.toJSON=="function"){return e.toJSON()}else{if(jQuery.isArray(e)){var c=[];for(var a=0;a<e.length;a++){c.push(CF.toJSON(e[a]))}return"["+c.join(",")+"]"}else{var h=[];for(var b in e){var g='"'+b+'"';var d=CF.toJSON(e[b]);if(typeof(d)!="string"){continue}h.push(g+":"+d)}return"{"+h.join(", ")+"}"}}}}}}}}};CF.once=function(a){var b=false;var c=function(){if(!b){b=true;return a.apply(null,CF.toArray(arguments))}return undefined};return c};CF.require=function(c){CF.makeNamespace(c);if(!CF.evalFx(c)){if(!CF.requireUrl){var a=jQuery("script");CF.requireUrl=CF.first(a,function(e,d){var f=jQuery(d).attr("src");if(f&&f.indexOf("CF.js")!=-1){return f.split("CF.js")[0]}})}var b=(CF.requireUrl||"")+c.replace(/\./g,"/")+".js";CF.appendScript(b)}};CF.appendScript=function(a){jQuery("head").append(CF.build("script",{type:"text/javascript",src:a}))};CF.docFrag=function(c){var b=function(l,m){if(m.indexOf("<")==-1){var g=m.replace(/&amp;/g,"&").replace(/&apos;/g,"'").replace(/&quot;/g,'"');l.appendChild(document.createTextNode(g));return}var h=document.createElement("div");h.innerHTML=m.toString();var j=CF.arrayClone(h.childNodes);var e=j.length;for(var k=0;k<e;k++){l.appendChild(j[k])}};var d=function(g,e){if(e.jquery){g.appendChild(e.get(0))}else{if(e.nodeType==1||e.nodeType==3||e.nodeType==11){g.appendChild(e)}else{b(g,e)}}};var a=function(e){var h=document.createDocumentFragment();if(e){if(jQuery.isArray(e)){var g=0;var j=e.length;for(g=0;g<j;g++){d(h,a(e[g]))}}else{d(h,e)}}return h};return a}();CF.build=function(){var b=/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/;var e=/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/;var c=/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/g;var d=/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/g;var a=function(j,g,o){if(arguments.length==2&&g!=null&&(typeof g=="string"||jQuery.isArray(g)||g.tagName||g.jquery)){o=g;g={}}if(!g){g={}}var h;h=j.match(b);if(h){h=h[0]}var f=j.match(e);var p=j.match(c);var m=j.match(d);if(!h){h="div"}if(f){g.id=f[1]}if(m){jQuery.each(m,function(r,s){var q=s.replace(/[\[\]]/g,"").split("=");if(q&&q.length==2){g[q[0]]=q[1]}})}var n;if((h==="input"||h==="button")&&CF.isIE()){CF.log("Attribs",g);var i=g.type?'type="'+g.type+'"':"";var k=g.name?'name="'+g.name+'"':"";n=jQuery(document.createElement("<"+h+" "+i+" "+k+">"));delete g.type;delete g.name}else{n=jQuery(document.createElement(h))}n.attr(g);if(p){var l="";jQuery.each(p,function(r,q){l+=q.replace(".","")+" "});n.addClass(l)}if(o){if(o.nodeType==11){n.append(o)}else{n.append(CF.docFrag(o))}}return n};return a}();CF.EventPublisher=function(){var a=0;var b={};b.events=[];b.fire=function(f){var c=[];var e=[];var d=CF.toArray(arguments);jQuery.each(b.events,function(h,g){if(!g.name||g.name==f){CF.log("Firing event",f);c.push(g.fx.apply(null,d))}if(g.once){e.push(g.key)}});jQuery.each(e,function(h,g){b.unlisten(g)});return c};b.listen=function(e,d,c){if(!c){c=false}a++;CF.log("Listening for event",e);b.events.push({key:a,name:e,fx:d,once:c});return a};b.unlisten=function(c){var d=CF.isNumber(c)?"key":"name";b.events=CF.arrayReject(b.events,function(g,f){var e=f[d]==c;if(e){CF.log("Unlistening event",c)}return e})};b.unlistenAll=function(){b.events={}};return b};CF.url=function(){var a={};a.params=function(d,e){if(!e){e=location.href}var c=e.split("?");if(c.length>1){var b=a.fromQueryString(c[1]);if(b&&d){return b[d]}return b}if(d){return null}return{}};a.build=function(c,e){var b="";var d=function(f,g){g=g.toString();b+=g;if(!g.lastIndexOf("/")==g.length-1&&f<c.length-1){b+="/"}};if(c){jQuery.each(c,d)}return a.addParams(e||{},b)};a.addParam=function(e,c,d){var b={};b[e]=c;return a.addParams(b,d)};a.addParams=function(b,e){e=e||location.href;var f=a.getHash(e,true);var g=e.split("#");e=g[0];var c=a.toQueryString(b);e=a._stripXtra(e);var d=e.indexOf("?");if(d==-1){e+="?"}else{c="&"+c}return e+c+f};a.getHash=function(c,b){c=c||location.href;var d=c.split("#");if(d.length>1){return b?"#"+d[1]:d[1]}return""};a.removeHash=function(b){b=b||location.href;return b.split("#")[0]};a.removeParam=function(e,c){c=c||location.href;var f=c.split("?")[0];var b=a.params(null,c);e=jQuery.isArray(e)?e:[e];jQuery.each(e,function(h,g){delete b[g]});var d=a.addParams(b,f+a.getHash(c,true));return a._stripXtra(d)};a._stripXtra=function(c){if(!c){return c}var b=c.charAt(c.length-1);if(b=="?"||b=="&"){c=c.substr(0,c.length-1)}return c};a.fromQueryString=function(b){var c={};jQuery.each(b.split("&"),function(g,d){var h=d.split("=");var e=h[0];if(h.length==2){var f=a.decUri(h[1]);var j=c[e];if(j){if(!jQuery.isArray(j)){c[e]=[j]}c[e].push(f)}else{c[e]=f}}});return c};a.decUri=function(b){return decodeURIComponent(b).replace(/\+/g," ")};a.friendly=function(b){return b.toLowerCase().replace(/[_|\s]+/g,"-").replace(/[^a-z0-9-]+/g,"").replace(/[-]+/g,"-")};a.toQueryString=function(e){var d=[];var b=CF.keys(e);var c=function(f,g){d.push(f+"="+encodeURIComponent(g))};jQuery.each(b,function(g,f){var h=e[f];if(jQuery.isArray(h)){jQuery.each(h,function(k,j){c(f,j)})}else{c(f,h)}});return d.join("&")};return a}();CF.ajax=function(){var a={};a.xd_receivers={};a.seq=1;a.xd_polltime=50;a.xd_queue=[];a.ajax=function(c,b,d){jQuery.ajax({dataType:"json",url:c,data:b,type:"POST",success:d})};a.jsonp=function(c,b,d){jQuery.ajax({dataType:"jsonp",url:c,data:b,jsonp:"jsonp",success:d})};a.formPost=function(d,b){var c=[];jQuery.each(CF.keys(b),function(f,g){c.push(CF.build("input",{type:"hidden",name:g,value:b[g]}))});var e=CF.build("form",{method:"POST",action:d},c);jQuery("body").append(e);e.submit()};a.xd_iframe=function(c,b,e){var d={seq:a.seq++,url:c,params:b};a.xd_receivers[d.seq]=e;if(window.postMessage){a.waitForXdHost(function(){a.xd_host.postMessage(CF.toJSON(d),"*")})}};a.waitForXdHost=function(b){if(a.xd_host&&a.xd_hostReady){b()}else{setTimeout(function(){a.waitForXdHost(b)},a.xd_polltime)}};a.xd_setup=function(c,d,b){jQuery(function(){a.xd_hostname=c;var e="xd_frame_"+a.seq;var f=c+b;if(window.postMessage){jQuery(window).bind("message",a.xd_msg_handler)}else{setTimeout(a.xd_check_name,a.xd_polltime)}if(CF.isSafari()){f=CF.url.addParam("safariFix",c+d+"no-op",f)}a.xd_host_elem=CF.build("iframe",{style:"display:none",name:e,src:f});jQuery("body").append(a.xd_host_elem);a.xd_host=window.frames[e];CF.log("xd_host iframe created")})};a.xd_check=function(){var b=a.xd_host.name;if(b=="ready"&&a.xd_queue.length>0){a.xd_host.name="request:"+CF.toJSON(a.xd_queue.pop())}if(b.indexOf("response:")==0){var c=b.replace("response:","");a.xd_msg_dispatch(c);a.xd_host.name="ready";a.xd_check()}};a.xd_msg_dispatch=function(b){if(!b.seq||!a.xd_receivers[b.seq]){CF.error("Message with invalid sequence received",b);return}a.xd_receivers[b.seq](b.data);delete a.xd_receivers[b.seq]};a.xd_check_name=function(){if(a.xd_last!=a.xd_host.name){a.xd_check()}a.setTimeout(a.xd_check_name,a.xd_polltime)};a.xd_msg_handler=function(b){if(b.type!="message"){return}b=b.originalEvent;if(b.origin!=a.xd_hostname){return}if(!a.xd_hostReady&&b.data=="ready"){a.xd_hostReady=true}else{a.xd_msg_dispatch(CF.evalFx(b.data))}};return a}();CF.iframe={};CF.iframe.frameCount=0;CF.iframe.events=CF.EventPublisher();CF.iframe.IframeUploadComm=function(a){var b={};var e=CF.url.params();var c;if(window.parent&&window.parent.CF&&window.parent.CF.iframe){c=window.parent.CF.iframe.events}if(!c){CF.error("This iframe requires that it is loaded within a page on the same host, and that iframe communication can be established.")}var d=e.iframeId;if(!d){CF.error("No iframeId parameter was passed to the iframe_target.html page");return}b.run=function(f,h,g){a.empty();b.setRequestParams(a,f);b.setUploadUrl(g);a.append(h.html())};b.updateParams=function(f){jQuery.each(CF.keys(f),function(g,h){a.find("input[name="+h+"]").val(f[h])})};b.setRequestParams=function(f,h){if(!h.redirect){h.redirect=b.getRedirLoc()}var g=[];jQuery.each(CF.keys(h),function(j,l){g.push(CF.build("input",{type:"hidden",name:l,value:h[l]}))});f.append(CF.build(".hiddenParams",g))};b.getRedirLoc=function(){var f=location.href;f=f.split("?")[0];return CF.url.addParam("iframeId",d,f)};b.setUploadUrl=function(f){a.attr("action",f)};b.uploadSuccess=function(){c.fire(d+"_success",b,e.uid,e.url)};b.uploadFail=function(){c.fire(d+"_fail",b,e.error_str,e.error_code)};b.onSubmit=function(f){var g=c.fire(d+"_uploadStart",b);var h=true;jQuery.each(g,function(k,j){if(j===false){h=false}});return h};b.iframeReady=function(){c.fire(d+"_ready",b)};if(e.error_code&&e.error_code!="0"){b.uploadFail()}else{if(e.uid&&e.url){b.uploadSuccess()}else{b.iframeReady()}}a.submit(b.onSubmit)};CF.RestV1=function(c,d,a){var b={};b.hostname=c;b.path=d;b.opts=a;b.events=CF.EventPublisher();b.xd_path="/xd/xd_host.html";b.restCall=function(f,h,e){e=b.safeParams(e);e=CF.extend(e,a);b.events.fire("request_started",f,e);var g=function(j){h(j);b.events.fire("request_completed",f,j)};var i=c+d+f;if(e.redirect){CF.log("Using form redirect transport.");CF.ajax.formPost(i,e,g)}else{if(b.useXDIframe()){CF.log("Using cross domain iframe transport",CF.isIE8Compat());CF.ajax.xd_iframe(i,e,g)}else{if(b.isCrossSite()||e.jsonp){CF.log("Using jsonp cross site transport");CF.ajax.jsonp(i,e,g)}else{CF.log("Using Ajax transport.");CF.ajax.ajax(i,e,g)}}}};b.isCrossSite=function(){return c!=(location.protocol+"//"+location.hostname)};b.useXDIframe=function(){return b.isCrossSite()&&window.postMessage&&!CF.isIE8Compat()};b.wrapHandleErrors=function(g,f){var e=function(h){if(h.error_code!=0){g(null,h)}else{if(f){h=h[f]}g(h,false)}};return e};b.safeParams=function(e){return(e||{})};b.login=function(h,g,f,e){e=b.safeParams(e);e.j_username=g;e.j_password=f;h=b.wrapHandleErrors(h);b.restCall("auth/login",h,e)};b.logout=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f);b.restCall("auth/logout",f,e);document.cookie="userid=;";document.cookie="token=;"};b.user_get=function(g,f,e){e=b.safeParams(e);if(f){e.user=f}g=b.wrapHandleErrors(g,"user");b.restCall("v1/user/get",g,e)};b.entity_get=function(g,f,e){e=b.safeParams(e);e.entity=f;g=b.wrapHandleErrors(g,"ExternalEntity");b.restCall("v1/entity/get",g,e)};b.entity_create=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"ExternalEntity");b.restCall("v1/entity/create",f,e)};b.entity_browse=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/entity/browse",f,e)};b.rating_entity_create=function(h,g,f,i,e){e=b.safeParams(e);e.entity=g;e.rating=f;e.value=i;h=b.wrapHandleErrors(h);b.restCall("v1/rating/entity/create",h,e)};b.comment_entity_create=function(g,f,e,h){h=b.safeParams(h);h.entity=f;h.body=e;if(!h.subject){h.subject=""}g=b.wrapHandleErrors(g,"comment");b.restCall("v1/comment/entity/create",g,h)};b.comment_entity_get=function(g,f,e){e=b.safeParams(e);e.entity=f;g=b.wrapHandleErrors(g,"comments");b.restCall("v1/comment/entity/get",g,e)};b.comment_user_create=function(h,g,e,f){f=b.safeParams(f);f.user=g;f.body=e;if(!f.subject){f.subject=""}h=b.wrapHandleErrors(h,"comment");b.restCall("v1/comment/user/create",h,f)};b.rating_user_create=function(h,g,f,i,e){e=b.safeParams(e);e.user=g;e.rating=f;e.value=i;h=b.wrapHandleErrors(h);b.restCall("v1/rating/user/create",h,e)};b.comment_user_get=function(g,f,e){e=b.safeParams(e);e.user=f;g=b.wrapHandleErrors(g,"comments");b.restCall("v1/comment/user/get",g,e)};b.comment_board_create=function(g,f,e,h){h=b.safeParams(h);h.board=f;h.body=e;if(!h.subject){h.subject=""}g=b.wrapHandleErrors(g,"comment");b.restCall("v1/comment/board/create",g,h)};b.comment_board_get=function(g,f,e){e=b.safeParams(e);e.board=f;g=b.wrapHandleErrors(g,"comments");b.restCall("v1/comment/board/get",g,e)};b.query_entity_most_rated=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/most_rated",f,e)};b.query_entity_top_rated=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/top_rated",f,e)};b.query_entity_most_commented=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/most_commented",f,e)};b.query_entity_recently_commented=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/recently_commented",f,e)};b.query_entity_highest_rated=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/highest_rated",f,e)};b.query_entity_number_lists=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"entities");b.restCall("v1/query/entity/number_lists",f,e)};b.query_user_most_active=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"users");b.restCall("v1/query/user/most_active",f,e)};b.list_get=function(h,g,f,e){e=b.safeParams(e);e.category=g;e.name=f;h=b.wrapHandleErrors(h,"userlist");b.restCall("v1/list/get",h,e)};b.list_entity_add=function(i,h,g,f,e){e=b.safeParams(e);e.entity=h;e.category=g;e.name=f;i=b.wrapHandleErrors(i);b.restCall("v1/list/entity/add",i,e)};b.list_entity_remove=function(i,h,g,f,e){e=b.safeParams(e);e.entity=h;e.category=g;e.name=f;i=b.wrapHandleErrors(i);b.restCall("v1/list/entity/remove",i,e)};b.list_entity_exists=function(i,h,g,f,e){e=b.safeParams(e);e.entity=h;e.category=g;e.name=f;i=b.wrapHandleErrors(i,"exists");b.restCall("v1/list/entity/exists",i,e)};b.list_create=function(h,g,f,e){e=b.safeParams(e);e.category=g;e.name=f;h=b.wrapHandleErrors(h);b.restCall("v1/list/create",h,e)};b.activityevent_create=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"ActivityEvent");b.restCall("v1/activityevent/create",f,e)};b.activityevent_get=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"activityevents");b.restCall("v1/activityevent/get",f,e)};b.attribute_user_get=function(g,f,e){e=b.safeParams(e);e.user=f;g=b.wrapHandleErrors(g,"attributes");b.restCall("v1/attribute/user/get",g,e)};b.connection_exists=function(h,g,f,e){e=b.safeParams(e);e.to_user=g;e.category=f;h=b.wrapHandleErrors(h);b.restCall("v1/connection/exists",h,e)};b.connection_create=function(h,g,f,e){e=b.safeParams(e);e.to_user=g;e.category=f;h=b.wrapHandleErrors(h);b.restCall("v1/connection/create",h,e)};b.flag_activityevent=function(g,f,e){e=b.safeParams(e);e.activityevent=f;g=b.wrapHandleErrors(g);b.restCall("v1/flag/activityevent",g,e)};b.flag_board=function(g,f,e){e=b.safeParams(e);e.board=f;g=b.wrapHandleErrors(g);b.restCall("v1/flag/board",g,e)};b.flag_comment=function(f,g,e){e=b.safeParams(e);e.comment=g;f=b.wrapHandleErrors(f);b.restCall("v1/flag/comment",f,e)};b.flag_entity=function(g,f,e){e=b.safeParams(e);e.entity=f;g=b.wrapHandleErrors(g);b.restCall("v1/flag/entity",g,e)};b.flag_user=function(g,f,e){e=b.safeParams(e);e.user=f;g=b.wrapHandleErrors(g);b.restCall("v1/flag/user",g,e)};b.loginreg_auth=function(h,f,g,e){e=b.safeParams(e);e.token=f;e.provider=g;h=b.wrapHandleErrors(h);b.restCall("v1/loginreg/auth",h,e)};b.loginreg_register=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f);b.restCall("v1/loginreg/register",f,e)};b.loginreg_rpxforward_url=function(f){var e=CF.extend({redirect:f},b.opts);return CF.url.build([b.hostname,b.path,"v1/loginreg/rpxforward"],e)};b.entity_comment_count=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f,"comment_count");b.restCall("v1/entity/comment/count",f,e)};b.syndication_create=function(l,i,f,k,h,g){g=b.safeParams(g);g.provider=i;g.category=f;g.target=k;var j=[CF.login.loginTokenNameParam,CF.login.loginProviderParam,"cf_synd_id"];var e=CF.url.params(CF.login.loginTokenNameParam,h);if(e){j.push(e)}g.url=CF.url.removeParam(j,h);l=b.wrapHandleErrors(l,"syndication");b.restCall("v1/syndication/create",l,g)};if(b.useXDIframe()){CF.ajax.xd_setup(b.hostname,b.path,b.xd_path)}return b};CF.modal=function(){var a={};a.events=CF.EventPublisher();a.opts={opacity:0.8,fromTop:50,height:300,width:300,fadeTime:600,allowEsc:true};a.show=function(c,g,b){a.events.fire("modal_show_started",a);CF.extend(a.opts,b);a.useFixed=!CF.isIE6();if(!a.built){var e=CF.build(".cf_modal_elem",[a.modalBg=CF.build(".cf_modal_bg").hide(),a.modalBody=CF.build(".cf_modal_body",[a.modalCloser=CF.build(".cf_modal_closer","x").click(a.hide),a.modalHeader=CF.build(".cf_modal_header"),a.modalLoad=CF.build(".cf_modal_load"),a.modalContent=CF.build(".cf_modal_content").hide(),]).hide(),]).hide();a.modalElem=e;jQuery(document.body).append(a.modalElem);a.built=true}else{a.modalContent.hide()}a.content=jQuery(c).show();a.modalContent.html(a.content);var d=CF.template.Engine();a.content=d.render(a.content,g,true);var f=d.startSubWidgets();if(!a.isShown){a.isShown=true;a._startAppear(c)}else{a.modalContent.show()}return f};a.hide=function(){a.modalElem.hide();a.events.fire("modal_hidden",a);a.isLoaded=false;a.isShown=false;jQuery(window).unbind("scroll resize",a._centerBox);jQuery(document).unbind("keypress",a._handleEsc)};a._handleEsc=function(b){if(b.keyCode==27&&a.isShown){a.hide()}};a._startAppear=function(d){a._ie6Hide();a.modalElem.show();var g=jQuery(window);var b=(g.height()/2)+g.scrollTop();var e=a.opts.width;var f=a.opts.height;var c=a.useFixed?"fixed":"absolute";a.modalBody.css({position:c,"z-index":"1001",overflow:"hidden",width:e,height:f});a.modalLoad.css({"margin-top":(f/3)-a.modalLoad.height()});a.modalBg.css({opacity:a.opts.opacity,position:c});a._centerBox();a.modalBody.show();a.modalBg.fadeIn(a.opts.fadeTime);a._startContentLoad();if(a.opts.allowEsc){jQuery(document).keydown(a._handleEsc)}g.bind("scroll resize",a._centerBox)};a._startContentLoad=function(){var c=a.content.filter("img");if(c.length==0){c=a.content.find("img")}if(c.length>0){CF.log("starting image load");a.img=new Image();a.img.onload=a._contentLoaded;a.img.src=c.attr("src");var b=a.img.src;setTimeout(function(){if(a.img&&(b==a.img.src)&&!a.isLoaded){a._contentLoaded()}},5000)}else{a._contentLoaded()}};a._completeLoad=function(){a.modalLoad.hide();a.modalContent.slideDown(a.opts.fadeTime,function(){if(!a.opts.fixedHeight){a.modalBody.height("auto")}});a.events.fire("modal_show_complete",a)};a._centerBox=function(){var f=jQuery(window);var d=Math.max(a.modalContent.height()+a.modalHeader.height(),a.opts.height);var e=Math.max(a.modalContent.width(),a.opts.width);var c=a.useFixed?"0":f.scrollTop();var b=a.useFixed?a.opts.fromTop:a.opts.fromTop+f.scrollTop();a.modalBg.css({top:c,height:f.height(),width:f.width()});a.modalBody.css({top:Math.max(0,b),marginLeft:(f.width()-e)/2})};a._contentLoaded=function(){if(!a.isLoaded){a.img=null;a.isLoaded=true;a.modalContent.html(a.content);var d=Math.max(a.modalContent.width(),a.opts.width);var c=Math.max(a.modalContent.height()+a.modalHeader.height(),a.opts.height);CF.log("width: "+d+" height"+c);var b=(jQuery(window).width()-d)/2;a.modalBody.animate({width:d,height:c,marginLeft:b},{complete:a._completeLoad})}};a._ie6Hide=function(){if(CF.isIE6()){jQuery("select").each(function(c,b){b=jQuery(b);if(b.css("visibility")!="hidden"){b.attr("cf_modal","hidden");b.css("visibility","hidden")}})}};a._ie6Show=function(){if(CF.isIE6()){jQuery("select[cf_modal]").each(function(c,b){b=jQuery(b);if(b.attr("cf_modal")=="hidden"){b.attr("cf_modal","");b.css("visibility","")}})}};return a}();CF.cookie=function(){var a={};a.createCookie=function(b,d,f,c,i){var e="";var j=0;if(f){j+=f*24*60*60*1000}if(c){j+=c*60*60*1000}if(j>0){var h=new Date();h.setTime(h.getTime()+j);e="; expires="+h.toGMTString()}if(!i){i="/"}var g=b+"="+d+e+"; path="+i;document.cookie=g;return g};a.readCookie=function(b){var g=b+"=";var d=document.cookie.split(";");for(var f=0;f<d.length;f++){var e=d[f];while(e.charAt(0)==" "){e=e.substring(1,e.length)}if(e.indexOf(g)==0){return e.substring(g.length,e.length)}}return null};a.eraseCookie=function(b){a.createCookie(b,"",-1)};return a}();CF.session={};CF.session.localStorageProvider=function(){var b;var a={};a.supported=function(){if(window.localStorage||window.globalStorage){return true}return false};a.start=function(c){var e=window.location.host.split(":")[0];b=window.localStorage||window.globalStorage[e];var d=b.CF_store;if(d){c(d)}else{c(null)}};a.persist=function(c){b.CF_store=c};return a};CF.session.msUserDataProvider=function(){var a={};a.start=function(b){jQuery(function(){jQuery("body").get(0).style.behavior="url('#default#userData')";var c=jQuery("body").get(0);var e=false;if(c){c.load("CF_Store");var d=c.getAttribute("sPersist");if(d){b(d);e=true}}if(!e){b(null)}})};a.supported=function(){return jQuery.browser.msie&&!window.localStorage};a.persist=function(c){var b=jQuery("body").get(0);if(b){b.setAttribute("sPersist",c);b.save("CF_Store")}};return a};CF.session.gearsProvider=function(){var a={};var b;a.start=function(c){b=google.gears.factory.create("beta.database");b.open("CF_Store");b.execute("CREATE TABLE IF NOT EXISTS CF_Store (k TEXT UNIQUE NOT NULL PRIMARY KEY, v TEXT NOT NULL)");var d=b.execute("SELECT v FROM CF_Store where k = ?",["CF_Store"]);if(d&&d.isValidRow()){c(d.field(0))}else{c(null)}d.close()};a.supported=function(){if(window.google&&google.gears){return true}return false};a.persist=function(c){b.execute("BEGIN");b.execute("INSERT OR REPLACE INTO CF_Store(k, v) VALUES (?, ?)",["CF_Store",c]);b.execute("COMMIT")};return a};CF.session.sqlLiteHtml5Provider=function(){var b;var a={};a.supported=function(){if(window.openDatabase){return true}return false};a.start=function(c){b=window.openDatabase("CF_store","1.0","CF_Store",1024*200);if(b){b.transaction(function(d){d.executeSql("CREATE TABLE IF NOT EXISTS CF_Store (k TEXT UNIQUE NOT NULL PRIMARY KEY, v TEXT NOT NULL)");d.executeSql("SELECT k,v FROM CF_Store where k=?",["CF_store"],function(f,e){if(e.rows&&e.rows.length>0){c(e.rows.item(0).v)}else{c(null)}})})}};a.persist=function(c){b.transaction(function(d){d.executeSql("INSERT OR REPLACE INTO CF_Store(k, v) VALUES (?, ?)",["CF_store",c])})};a.forceAtomic=true;return a};CF.session.providers=[CF.session.localStorageProvider(),CF.session.gearsProvider(),CF.session.sqlLiteHtml5Provider(),CF.session.msUserDataProvider()];CF.session.currentProvider=function(){return CF.arrayFind(CF.session.providers,function(b,a){return a.supported()})}();CF.session.instance=function(){var c=64*1024;var a={};var d=CF.session.currentProvider;var b={};a.events=CF.EventPublisher();a.loadComplete=function(e){if(e){b=CF.evalFx(e)||{}}else{b={}}a.isLoaded=true;a.events.fire("session_loaded")};a.whenLoaded=function(e,f){if(a.isLoaded){e();if(!f){a.events.listen("session_loaded",e,f)}}else{a.events.listen("session_loaded",e,f)}};a.get=function(e){return b[e]};a.put=function(f,e){b[f]=e;a.afterAction()};a.afterAction=function(){if(d&&d.forceAtomic){a.persist()}};a.remove=function(e){var f=b[e];b[e]=null;a.afterAction();return f};a.clear=function(){b={};a.afterAction()};a.persist=function(){var e=CF.toJSON(b);if(e.length>c){CF.error("Error persisting session.  Too much data")}else{if(d){d.persist(e)}}};a.hasSession=function(){return CF.cookie.readCookie("CF_cSess")=="a"};a.ensureSession=function(){a.whenLoaded(function(){if(d&&!a.hasSession()){a.clear();CF.cookie.createCookie("CF_cSess","a")}})};a.ensureSession();if(d){d.start(a.loadComplete)}else{a.noPersist=true;CF.error("No persistence provider found.");a.loadComplete(null)}jQuery(window).unload(a.persist);return a}();CF.context=function(){var a={};var b=CF.session.instance;a.events=CF.EventPublisher();a.api_v1;a.whenLoaded=function(c,d){if(a.isLoaded){c(a);if(!d){a.events.listen("context_loaded",c,d)}}else{a.events.listen("context_loaded",c,d)}};a.userFetched=function(c,d){if(d){a.auth_user=null}else{a.auth_user=c;b.put("auth_user",c)}a.loadComplete()};a.loadComplete=function(){a.isLoaded=true;a.events.fire("context_loaded",a)};a.load=function(){if(!a.api_v1){a.waitingForApi=true;return}var c=b.get("auth_user");a.auth_user=c;if(!c){a.reload()}else{a.loadComplete()}};a.invalidate=function(){a.auth_user=null;b.remove("auth_user");a.events.fire("context_loaded")};a.reload=function(){a.api_v1.user_get(a.userFetched)};a.setApi=function(c){a.api_v1=c;if(a.waitingForApi){a.waitingForApi=false;a.load()}};a.startPinger=function(){setTimeout(function(){if(a.api_v1){a.api_v1.user_get(a.pinged)}},20*60*1000)};a.pinged=function(d,c){if(c){a.invalidate()}else{a.auth_user=d;a.startPinger()}};b.whenLoaded(a.load);a.startPinger();return a}();CF.login=function(){var b=CF.context;var a={};a.loginProviderParam="cf_provider";a.loginTokenNameParam="cf_token_name";a.events=CF.EventPublisher();a.login=function(d,c){b.api_v1.login(a.handleLogin,d,c)};a.tokenLogin=function(c){CF.cookie.createCookie("JSESSIONID",c);b.reload()};a.logout=function(){b.api_v1.logout(a.handleLogout)};a.handleLogout=function(c){a.events.fire("logout_success");b.invalidate();a.logoutCleanParams()};a.handleLogin=function(c,d){if(!d){b.reload();a.events.fire("login_success")}else{a.events.fire("login_fail",d)}};a.processRemoteAuthToken=function(c){c=CF.extend({cleanParams:false},(c||{}));a._authTokenOpts=c;var d=CF.url.params();var e=d[a.loginProviderParam];if(e){var f=d[d[a.loginTokenNameParam]];loginInProg=CF.build(".cf_login_in_progress",[CF.build("h2","We are processing your login request"),CF.build("p","Please wait...")]);CF.context.whenLoaded(function(){if(!CF.context.auth_user){jQuery(function(){CF.modal.show(loginInProg,null,{width:500});b.api_v1.loginreg_auth(a.tokenValidated,f,e)})}},true)}};a.setRegForm=function(c){a.regForm=c};a.hideModalOnSuccess=function(c){if(a.modalHiddenEvt){CF.modal.events.unlisten(a.modalHiddenEvt)}a.cleanParams();b.whenLoaded(function(){CF.modal.hide()},true);b.reload()};a.hideModalOnCancel=function(){b.whenLoaded(function(){a.cleanParams()},true);a.logout()};a._cleanParams=function(){location.href=CF.url.removeParam([a.loginProviderParam,a.loginTokenNameParam,CF.url.params(a.loginTokenNameParam)])};a.logoutCleanParams=function(){if(a._authTokenOpts&&a._authTokenOpts.logoutCleanParams){a._cleanParams()}};a.cleanParams=function(c){if(a._authTokenOpts&&a._authTokenOpts.cleanParams){a._cleanParams()}};a.tokenValidated=function(d,f){if(f){CF.modal.show(CF.build(".cf_login_in_progress",[CF.build("h2","We were unable to log you in"),CF.build("p","Please try again"),CF.build("a","Close").click(CF.modal.hide)]))}else{if(d.loginSuccess){a.hideModalOnSuccess()}else{if(d.user){CF.context.userFetched(d.user);var c=CF.url.params();var e=c[a.loginProviderParam];if(e){a.showRegForm({user:d.user,requirePass:false,provider:e})}}}}};a.showRegForm=function(c){if(c.user){CF.context.auth_user=c.user}CF.modal.show(a.regForm||"<div class='cf_widgetLoader' widgettype='CF.widget.RegForm' options='{syndicate:true}'></div>",c);a.modalHiddenEvt=CF.modal.events.listen("modal_hidden",a.hideModalOnCancel,true);CF.widget.registry.listenType("CF.widget.RegForm","regform_complete",a.hideModalOnSuccess)};return a}();CF.template={};CF.template.Engine=function(){var a={};a.getDefaultLoading=function(){return CF.build(".cf_loading","Loading...")};a.showLoadingMessage=function(b,e,c){var d=e.find(".cf_loading:first").remove();if(!d||d.length==0){if(c){d=c}else{d=a.getDefaultLoading()}}b.html(d)};a._applyData=function(j,g){if(j.indexOf("[%")==-1){return j}var l=j.length;var n=-1;var k="";for(var b=0;b<l;b++){var h=j.charAt(b);var m="";if((b+1)<l){m=j.charAt(b+1)}var d=false;if(h=="["&&m=="%"){if(n!=-1){CF.error("Template: Cannot nest [% statements ")}n=b}else{if(h=="%"&&m=="]"){var f=j.substring(n+2,b);var e=CF.evalFx(f,g);if(e!==null&&e!==undefined){k+=e}d=true;b++}}if(n==-1){k+=h}if(d){n=-1}}return k};a.render=function(b,e,d){a._idOffset=0;a.subWidgets=[];var c=b;if(!d){if(b.jquery){b=b.get(0)}c=b.childNodes}return a._walkDom(e,c,true,false,true)};a.startSubWidgets=function(){jQuery.each(a.subWidgets,function(b,c){c.widget.start()});return a.subWidgets};a._processIf=function(d,h,j,g,e){var i=j.binding;if(i){var c=CF.evalFx(i,g,true);if(c){var b=j.assign==="true";if(b){g=c}var f=d.clone();f.children().remove(".cf_else");return a._walkDom(g,f,false,e,false,true)}else{var k=CF.arrayFind(d.get(0).childNodes,function(m,l){return CF.hasClass(l,"cf_else")});if(k){return a._walkDom(g,k,false,e,false)}}}else{CF.error("No binding attribute on cf_if node")}return null};a._processChoice=function(g,c,i,f,e){var h=i.binding;if(h){var d=CF.evalFx(h,f,true);var b=CF.first(g.find(".cf_condition"),function(k,l){var r=jQuery(l);var s=false;var o=false;var m=r.attr("eq");var q=r.attr("eq_s");var p=r.attr("lt");var n=r.attr("gt");if(m!==undefined){o=true;m=CF.evalFx(m,f,true);if(m===d){s=true}}if(q!==undefined){o=true;if(q===d){s=true}}if(p!==undefined){o=true;p=CF.evalFx(p,f,true);if(d<p){s=true}}if(n!==undefined){o=true;n=CF.evalFx(n,f,true);if(d>n){s=true}}if(!o){CF.error("No eq, eq_s, lt, or gt attribute specified for cf_condition node")}if(s){return a._walkDom(f,l,false,e,false)}return undefined});if(b){return b}var j=g.find(".cf_otherwise");if(j&&j.length>0){return a._walkDom(f,j.get(0),false,e,false)}}else{CF.error("No binding attribute on choice ")}return null};a._processLoop=function(p,r,s,g,m){var n=[];var f=s.binding;if(f){var c=CF.evalFx(f,g,true);if(!c){CF.log("For loop binding failed or was undefined. Using empty array instead.",f);c=[]}if(!jQuery.isArray(c)){c=[c]}var q=p.children(".cf_item");if(q.length==0){CF.error("For loop has no child node cf_item")}else{if(c.length==0){var u=p.children(".cf_item_empty");if(u.length>0){n.push(a._walkDom(g,u,false,true,true))}}else{var t=p.children(".cf_item_sep");var e=p.children(".cf_item_last");var b=p.children(".cf_item_alt");q=q.get(0);t=t.length==0?null:t.get(0);e=e.length==0?null:e.get(0);b=b.length==0?null:b.get(0);var k=c.length;for(var h=0;h<k;h++){var o={index:h,length:k,item:c[h],parent:g,idOffset:a._idOffset};if(b&&h%2==1){n.push(a._walkDom(o,b.cloneNode(true),false,true,true))}else{n.push(a._walkDom(o,q.cloneNode(true),false,true,true))}if(t&&h<k-1){n.push(a._walkDom(o,t.cloneNode(true),false,true,true))}if(e&&h==k-1){n.push(a._walkDom(o,e.cloneNode(true),false,true,true))}}}}}else{CF.error("No binding attribute on for loop")}var j=s.rendertag===undefined?true:s.rendertag==="true";return a._makeNode(p,r,s,n,m,j)};a._ieOuterHTMLAttribParse=function(d,h){var m=d.outerHTML.split(">")[0].replace("<","");var e=m.length;var j=0;var g=0;var o="";var k="";var n={};var l=false;for(var b=0;b<=e;b++){var f=m.charAt(b);if(!l){if(f=="="){l=true;k=m.substring(j,b).replace(/\s/g,"")}else{if(f==" "){j=b}}}else{if(!o){if(f=="'"||f=='"'){o=f;g=b+1}else{o=" ";g=b}}else{if(f==o||b==e){append=false;val=m.substring(g,b);j=b+1;if(k.indexOf("cf_")==0){k=k.replace("cf_","")}n[k]=a._applyData(val,h);o="";l=false}}}}if(n.binding){n.binding=d.binding}return n};a._getAttributes=function(d,c){if(CF.isIE6()||CF.isIE7()){return a._ieOuterHTMLAttribParse(d,c)}var b={};jQuery.each(d.attributes,function(g,f){var e=f.name;if(e.indexOf("cf_")==0){e=e.replace("cf_","")}var h=f.value;if(h&&typeof h=="string"){h=a._applyData(h,c);b[e]=h}});return b};a._makeNode=function(g,b,c,f,e,d){if(d&&b&&c){if(e&&c.id){a._idOffset++;c.id+="_"+a._idOffset}return CF.build(b,c,f)}return f};a._walkDom=function(e,s,b,j,g,h){var l=null;var m=[];var k=null;var c=false;var q={};if(s.nodeType==3){return a._applyData(s.data,e)}else{if(s.jquery){l=s;s=l.get(0);m=s.childNodes;c=true}else{if(s.nodeType==11){m=s.childNodes}else{if(s.tagName){m=s.childNodes;c=true}else{if(jQuery.isArray(s)){m=s}else{if(s.item){m=s}}}}}}if(c){if(!l){l=jQuery(s)}if(CF.hasClass(s,"cf_noprocess")){return l.clone()}var p=s.tagName.toLowerCase();q=a._getAttributes(s,e);if(q.rendertag!=undefined){g=q.rendertag==="true"}if(!h){if(CF.hasClass(s,"cf_widgetLoader")){CF.log("Found nested widget: "+l.attr("widgettype"),s.className);var f=CF.widget.process(l,e,q.id);if(f){a.subWidgets.push(CF.extend({},f));return f.targetElem}}else{if(CF.hasClass(s,"cf_for")){return a._processLoop(l,p,q,e,j)}else{if(CF.hasClass(s,"cf_choice")){return a._processChoice(l,p,q,e,j)}else{if(CF.hasClass(s,"cf_if")){return a._processIf(l,p,q,e,j)}}}}}}var t=m.length;var d=[];for(var o=0;o<t;o++){var r=m[o];d.push(a._walkDom(e,r,false,j,true))}return a._makeNode(s,p,q,CF.docFrag(d),j,g)};return a};CF.dateFormat=function(){var d=/d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloZ]|"[^"]*"|'[^']*'/g;var b=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g;var c=/[^-+\dA-Z]/g;var a=function(e,f){e=String(e);f=parseInt(f)||2;while(e.length<f){e="0"+e}return e};return function(g,t){if(arguments.length==1&&(typeof g=="string"||g instanceof String)&&!/\d/.test(g)){t=g;g=undefined}g=g?new Date(g):new Date();if(isNaN(g)){throw"invalid date"}var r=CF.dateFormat;t=String(r.masks[t]||t||r.masks["default"]);var l=g.getDate(),f=g.getDay(),h=g.getMonth(),j=g.getFullYear(),n=g.getHours(),i=g.getMinutes(),q=g.getSeconds(),k=g.getMilliseconds(),e=g.getTimezoneOffset(),p={d:l,dd:a(l),ddd:r.i18n.dayNames[f],dddd:r.i18n.dayNames[f+7],m:h+1,mm:a(h+1),mmm:r.i18n.monthNames[h],mmmm:r.i18n.monthNames[h+12],yy:String(j).slice(2),yyyy:j,h:n%12||12,hh:a(n%12||12),H:n,HH:a(n),M:i,MM:a(i),s:q,ss:a(q),l:a(k,3),L:a(k>99?Math.round(k/10):k),t:n<12?"a":"p",tt:n<12?"am":"pm",T:n<12?"A":"P",TT:n<12?"AM":"PM",Z:(String(g).match(b)||[""]).pop().replace(c,""),o:(e>0?"-":"+")+a(Math.floor(Math.abs(e)/60)*100+Math.abs(e)%60,4)};return t.replace(d,function(m){return(m in p)?p[m]:m.slice(1,m.length-1)})}}();CF.dateFormat.masks={"default":"ddd mmm d yyyy HH:MM:ss",shortDate:"m/d/yy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:ss",isoFullDateTime:"yyyy-mm-dd'T'HH:MM:ss.lo"};CF.dateFormat.i18n={dayNames:["Sun","Mon","Tue","Wed","Thr","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"]};CF.friendlyDate=function(b){if(typeof b!="date"){b=new Date(b)}var e=new Date();var d=new Date(e.getTime()-(60*60*1000));if(b.getTime()>d.getTime()){var a=(e.getTime()-b.getTime())/(60*1000);if(a<=1){return"Moments ago"}return""+Math.ceil(a)+" minutes ago"}if(b.toDateString()==e.toDateString()){return"Today @ "+CF.dateFormat(b,"h:MM TT")}var c=new Date();c.setDate(e.getDate()-1);if(c.toDateString()==b.toDateString()){return"Yesterday @ "+CF.dateFormat(b,"h:MM TT")}return CF.dateFormat(b,"mmm d, yyyy @ h:MM TT")};CF.validate=function(){var a={};a.events=CF.EventPublisher();a.hideAll=function(b){b.find(".cf_validate_fail").removeClass("cf_validate_fail");b.find(".cf_validate_success").removeClass("cf_validate_success");b.find(".cf_validate_fail_msg").remove()};a.validators={required:function(b){return jQuery.trim(b).length>0},email:/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/,alpha:/^[a-zA-Z]+$/,url:/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i,urlSafe:/^[a-zA-Z0-9_\-,\.]+$/,imageUrl:function(b){return a.validators.url(b)&&b.split("?")[0].toLowerCase().match(/.(\.jpg|\.gif|\.png|.jpeg)/)},number:function(b){return !isNaN(b)}};a.addValidator=function(b,c){a.validators[b]=c};a.showError=function(d,c){if(c){var b=CF.build(".cf_validate_fail_msg",c).hide();d.after(b);b.fadeIn()}d.addClass("cf_validate_fail")};a.test=function(b,c){if(typeof b=="function"){return b(c)}return b.test(c)};a.run=function(c){a.hideAll(c);var d=c.find(".cf_validate");if(c.is(".cf_validate")){d=d.andSelf()}var b=CF.collect(d,function(f,l){l=jQuery(l);var h=CF.hasClass(l,"cf_required");var g=l.attr("validator");var j=l.attr("validator_msg");var n=a.validators[g];if(!n&&g){n=CF.evalFx(g,null,false,"Error evaluating validator expression")}h=(h||(g=="required"));var k=l.val();var m=a.validators.required(k);if(m||h){var o=a.test(n,k)&&m;if(!o){a.events.fire("validate_elem_failed",l,j);a.showError(l,j);return{elem:l,msg:j}}}a.events.fire("validate_elem_success",l);l.addClass("cf_validate_success");return null});if(b.length==0){a.events.fire("validate_success",c,b);return true}a.events.fire("validate_failed",c);return false};return a}();CF.widget={};CF.widget.startAll=function(a){jQuery(function(){CF.context.whenLoaded(function(){var b=jQuery(".cf_widgetLoader:not(.cf_widgetLoader .cf_widgetLoader):not(.cf_noprocess .cf_widgetLoader)");CF.widget.start(b);if(a){CF.context.events.listen("context_loaded",CF.widget.reloadAll)}})})};CF.widget.reloadAll=function(){var a=jQuery(".cf_widget:not(.cf_widget .cf_widget)");jQuery.each(a,function(d,b){var e=b.id;if(e){var c=CF.widget.registry.getId(e);if(c){c.widget.reload()}}})};CF.widget.start=function(a){jQuery(a).each(function(c,d){d=jQuery(d);if(!CF.hasClass(d,"cf_noprocess")){var b=CF.widget.process(d,null,d.attr("id"));if(b){b.widget.start()}}})};CF.widget.process=function(c,i,b){b=CF.widget.registry.nextWidgetId(b);c=jQuery(c);var m=c.get(0);var j="cf_widget "+m.className.replace("cf_widgetLoader","");var k=CF.build(m.tagName,{className:j,id:b});c=c.replaceWith(k);var h=c.attr("widgettype");if(!h){h="CF.widget.SimpleWidget"}k.attr("widgettype",h);var n=CF.template.Engine();if(h){var a=CF.evalFx(h);if(!a){CF.error("The widgetType "+h+"is not defined");return null}var f=c.attr("options");if(f){f=CF.evalFx(f,i)}var d=c.attr("data");if(d){i=CF.evalFx(d,i)}var l=c.attr("alt_template_id");if(l){var g=jQuery("#"+l);if(g.length>0){c.html(g.html())}}var o=a.apply(null,[k,c,n,i,f]);if(!o){return null}if(jQuery.trim(c.html()).length==0){var e=o.getDefaultTemplateBody();if(e){c.html(e)}}n.showLoadingMessage(k,c,o.loadingMessage);CF.widget.registry.add(h,b,o);return{widget:o,id:b,type:h,targetElem:k}}else{CF.error("Missing widget type on top level widget")}return null};CF.widget.registry=function(){var b={};b._widgets=[];b.events=CF.EventPublisher();b.listenedEvents=[];var a=0;b.add=function(d,e,c){var f={type:d,id:e,widget:c};b._widgets.push(f);jQuery.each(b.listenedEvents,function(g,h){if(h.type===d&&c&&c.events){c.events.listen(h.event,h.fx)}});b.events.fire("widget_added",f)};b._getCurrentCount=function(){return a};b._usedIds={};b.nextWidgetId=function(c){a++;if(!c){return"cf_w_"+a}if(!b._usedIds[c]){b._usedIds[c]=true;return c}return c+a};b.remove=function(c){var d=[];b._widgets=CF.arrayReject(b._widgets,function(g,e){var f=(e.type===c||e.id===c||e.widget===c);if(f){d.push(e)}return f});jQuery.each(d,function(f,e){b.events.fire("widget_removed",e)})};b.getId=function(c){return CF.arrayFind(b._widgets,function(e,d){return c===d.id})};b.getType=function(c){return CF.collect(b._widgets,function(e,d){if(c===d.type){return d}return null})};b.getWidget=function(c){return CF.arrayFind(b._widgets,function(e,d){return c===d.widget})};b.listenType=function(e,f,c){b.listenedEvents.push({type:e,event:f,fx:c});var d=b.getType(e);jQuery.each(d,function(h,g){if(g.widget&&g.widget.events){g.widget.events.listen(f,c)}})};return b}();CF.widget.SimpleWidget=function(a,e,b,f,d){if(!e){e=CF.build("div")}var c={};c.events=CF.EventPublisher();c.getDefaultTemplateBody=function(){return null};c.getData=function(){return f};c.start=function(){c.events.fire("widget_started",c);c.onStart();return c};c.onStart=function(){c.draw()};c.draw=function(){var g=c.render();c.subWidgets=b.subWidgets;a.empty();a.append(g);c.bindEvents(a,c.subWidgets);b.startSubWidgets();c.events.fire("widget_drawn",c)};c.bindEvents=function(g,h){};c.render=function(){if(c.subWidgets){jQuery.each(c.subWidgets,function(j,h){h.widget.remove()})}var g=b.render(e.clone(),c.getData());return g};c.remove=function(){c.events.fire("widget_removed",c);CF.widget.registry.remove(c);if(c.events){c.events.unlistenAll()}if(c.subWidgets){jQuery.each(c.subWidgets,function(h,g){g.widget.remove()})}c.onRemove()};c.onRemove=function(){};c.reload=function(){c.events.fire("widget_reloaded",c);c.onReload();return c};c.onReload=function(){c.draw()};return c};CF.widget.SyndicationMixin=function(a){a=a||{};a.syndProvs={facebook:{className:"cf_synd_icon_fb",provider:"facebook"},twitter:{className:"cf_synd_icon_tw",provider:"twitter"},myspace:{className:"cf_synd_icon_ms",provider:"myspace"}};a.getSyndProviders=function(){return a.syndProvs};a.getSyndProviderNames=function(){return CF.keys(a.syndProvs)};a.getActiveSyndProviderNames=function(){var b=a.getActiveSyndProviders();return CF.collect(b,function(c,d){return d.provider})};a.getActiveSyndProviders=function(){var b=CF.context.auth_user;if(!b||!b.alt_ids){return[]}var c=CF.pluck(b.alt_ids,"provider");return CF.collect(c,function(d,e){if(a.syndProvs[e]){return a.syndProvs[e]}})};a.canSyndicate=function(){return a.getActiveSyndProviders().length>0};a.syndicate=function(k,b,j,i,d,l){l=l||function(){};if(!jQuery.isArray(k)){k=[k]}var f=k.length;var e=[];var h=[];var g=function(m,n){f--;if(n){h.push(n)}else{e.push(m)}if(f<=0){h=h.length==0?null:h;l(e,h)}};var c={};if(d){c.value=d}jQuery.each(k,function(n,m){CF.context.api_v1.syndication_create(g,(m.provider||m),b,j,i,c)})};return a};CF.widget.AddToCrowdList=function(a,f,b,g,d){d=CF.extend({name:"Favorites",category:"FavoritesList",checkExists:true,syndicate:true,syndicationUrl:location.href,syndicationCategory:"favorite",hovertime:5000},d);if(!g){CF.error("AddToCrowdList: The data parameter must be set to an entity or entityId");return null}var c=g.uid||g;var e=CF.widget.SimpleWidget(a,f,b,g,d);CF.widget.SyndicationMixin(e);e.exists=null;e.onReload=function(){if(d.checkExists&&e.exists===null){e.getExists()}else{e.draw()}};e.onStart=e.onReload;e.getExists=function(){CF.context.api_v1.list_entity_exists(e.setExists,c,d.category,d.name)};e.setExists=function(h,i){if(!i){e.exists=h}else{e.exists=false}e.draw()};e.getData=function(){return{user:CF.context.auth_user,opts:d,exists:e.exists}};e.getDefaultTemplateBody=function(){var h="<div class='cf_addlist cf_if' binding='user' rendertag='true'>			<span class='cf_if' binding='exists'>				<span class='cf_addlist_exists'>One of your favorites <a class='cf_removelist_btn'>Unfavorite</a></span>				<span class='cf_else'>					<a class='cf_addlist_btn'>Save as a favorite</a>				</span>			</span>			<div class='cf_addlist_hoverbox' style='display:none'>				<h4>Saved to your favorites list</h4>				<a class='cf_addlist_synd_btn'>Publish to: </a>				<span class='cf_widgetLoader cf_syndication_icons' widgetType='CF.widget.SyndicationIcons'></span>			</div>			<div class='cf_else'>				Sign in to save favorites			</div>		</div>		";return h};e.bindEvents=function(h){h.find(".cf_addlist_btn").click(e.addToList);h.find(".cf_removelist_btn").click(e.removeFromList);e.hoverbox=h.find(".cf_addlist_hoverbox").hover(e.stopHoverTimer,e.startHoverTimer);e.syndBtn=h.find(".cf_addlist_synd_btn").click(e.publish)};e.addToList=function(){CF.context.api_v1.list_entity_add(e.handleAdded,c,d.category,d.name)};e.removeFromList=function(){CF.context.api_v1.list_entity_remove(e.handleRemoved,c,d.category,d.name)};e.startHoverTimer=function(){if(!e.timer){e.timer=setTimeout(e.hideHoverBox,d.hovertime)}};e.stopHoverTimer=function(){if(e.timer){clearTimeout(e.timer)}e.timer=null};e.hideHoverBox=function(){e.timer=null;e.hoverbox.fadeOut(e.reload)};e.handleRemoved=function(h,i){e.events.fire("listitem_removed",c,e);e.exists=false;e.reload()};e.handleAdded=function(h,i){if(!i){e.events.fire("listitem_added",c,e);e.exists=true;if(d.syndicate&&e.canSyndicate()){e.startHoverTimer();e.hoverbox.fadeIn()}else{e.reload()}}};e.publish=function(){var h=e.getActiveSyndProviders();e.syndicate(h,d.syndicationCategory,c,d.syndicationUrl,d.name,e.syndComplete);e.hideHoverBox()};e.syndComplete=function(h,i){};return e};CF.widget.Pageable=function(a,b){var d={max_return:20,offset:0};a=CF.extend(d,(a||{}));var c={};c.maxReturn=a.max_return;c.offset=a.offset;c.lastReturnedLen=0;b=b||{};b.getOffset=function(){return c.offset};b.getMaxReturn=function(){return c.maxReturn};b.nextPage=function(){if(!b.isLastPage()){c.offset+=Math.min(c.maxReturn,c.lastReturnedLen);b.pageChanged()}};b.toParams=function(){return{max_return:c.maxReturn,offset:c.offset}};b.firstPage=function(){c.offset=0;b.pageChanged()};b.prevPage=function(){c.offset=Math.max(0,c.offset-c.maxReturn);b.pageChanged()};b.updateParams=function(e){e=e||{};return CF.extend(e,b.toParams())};b.getPageNum=function(){if(b.isFirstPage()){return 1}return 1+Math.ceil(c.offset/c.maxReturn)};b.updatePager=function(e){if(jQuery.isArray(e)){c.lastReturnedLen=e.length;b.updatePageNum(c.countElems);b.updateItemNum(c.countItemElems)}};b.updatePageNum=function(e){if(e){e.html(b.getPageNum())}};b.updateItemNum=function(e){if(e){e.html(c.lastReturnedLen)}};b.isLastPage=function(){return c.lastReturnedLen&&(c.lastReturnedLen<c.maxReturn)};b.isFirstPage=function(){return c.offset==0};b.pageChanged=function(){throw ("Pageable: pageChanged implementation required")};b.bindPagerEvents=function(e){c.nextElems=e.find(".cf_next_page");c.prevElems=e.find(".cf_prev_page");c.firstElems=e.find(".cf_first_page");c.countElems=e.find(".cf_num_page");c.countItemElems=e.find(".cf_num_items");if(!b.isLastPage()){c.nextElems.click(CF.once(b.nextPage))}else{c.nextElems.addClass("cf_disabled_page")}if(!b.isFirstPage()){c.firstElems.click(CF.once(b.firstPage));c.prevElems.click(CF.once(b.prevPage))}else{c.firstElems.addClass("cf_disabled_page");c.prevElems.addClass("cf_disabled_page")}b.updatePageNum(c.countElems);b.updateItemNum(c.countItemElems)};return b};CF.widget.BaseComments=function(a,e,b,f,c){c=CF.extend({nested:false,syndicate:false,syndicationCategory:"comment",syndicationUrl:location.href},c);var d=CF.widget.SimpleWidget(a,e,b,f,c);CF.widget.SyndicationMixin(d);CF.widget.Pageable(c,d);d.setupParams=function(){var g=CF.extend({},c);delete g.nested;delete g.syndicate;delete g.syndicationUrl;delete g.syndicationCategory;if(c.nested&&!g.depth){g.order="LineageLeastRecentFirst";g.depth=10}g.nest=false;return g};d.params=d.setupParams();d.getDefaultTemplateBody=function(){return"<div class='cf_comment_message'></div>		<div class='cf_comment_page'> 			Showing (<span class='cf_num_items'></span>) comments 		</div> 		<ol class='cf_for cf_comments' binding='data.list'>         <li class='cf_item cf_comment cf_comment_depth[% (item.posting_depth || 0) %]'>         	<div class='cf_widgetLoader' widgettype='CF.widget.Comment' data='item' options='parent.opts'></div>         </li>          <li class='cf_item_empty'>          	No one has commented yet.          	<div class ='cf_if' binding='authUser'>          		 Be the first to comment!          	</div>          </li>        </ol>        <div class='cf_pager_row'> 	   	Page (<span class='cf_num_page'></span>) <a class='cf_first_page'>First</a> <a class='cf_prev_page'>Prev</a> <a class='cf_next_page'>Next</a> 	   </div> 	    <div class='cf_if' binding='authUser'> 		    <div> 		    	<label for='cf_commentTxt'>Add your comment:</label> 		    </div> 	    <div class='cf_response' style='display:none;'>       		<span>In response to:</span>       		<span class='cf_response_to'></span>       		<a class='cf_response_cancel'> cancel</a>       	</div> 		<div>       		<textarea class='cf_comment_txt'></textarea>       	</div>       	<div class='cf_comment_button_row'> 			<div class='cf_comment_syndicate' style='display:none;'>				<div class='cf_syndicate_text'>Publish to:</div>				<div class='cf_widgetLoader cf_syndication_icons' widgettype='CF.widget.SyndicationIcons' options='{checkbox:true}'></div>				<div class='cf_clear'> </div>			</div>			<button class='cf_comment_post' type='button'>Post comment</button>       	</div>       	<div class='cf_else'>       		Please log in to start commenting.       	</div>       </div>      "};d.responseTo=function(g,i,h){if(d.responseElem){d.responseToComment=i;d.responseElem.find(".cf_response_to").html(i.user.display_name);d.responseElem.show();d.focusReply()}};d.cancelResponseTo=function(){d.responseToComment=null;d.responseElem.hide()};d.focusReply=function(){if(d.commentTxt){CF.focusLater(d.commentTxt,20)}};d.bindEvents=function(g,h){d.responseElem=g.find(".cf_response");jQuery.each(h,function(k,j){if(j.type==="CF.widget.Comment"){j.widget.events.listen("comment_reply_activated",d.responseTo)}});g.find(".cf_focus_reply").click(d.focusReply);g.find(".cf_response_cancel").click(d.cancelResponseTo);g.find(".cf_comment_post").click(d.postComment);d.commentTxt=g.find(".cf_comment_txt");d.commentMsg=g.find(".cf_comment_message");d.bindPagerEvents(g);if(c.syndicate&&d.canSyndicate()){g.find(".cf_comment_syndicate").show();d.syndIcons=CF.collect(h,function(k,j){if(j.type=="CF.widget.SyndicationIcons"){return j.widget}})}};d.pageChanged=function(){d.params=d.updateParams(d.params);d.reload()};d.onReload=function(){d.fetchComments()};d.onStart=function(){d.fetchComments()};d.fetchComments=function(){throw ("Implementation required for fetchComments.")};d.postComment=function(){throw ("Implementation required for postComment")};d.commentPosted=function(h,i){d.events.fire("comment_posted",h,d);if(i){CF.error("Error posting comment",i)}else{if(c.syndicate&&d.canSyndicate()){var g=[];jQuery.each(d.syndIcons,function(k,j){g=CF.keys(j.checkedToggles)});d.syndicate(g,c.syndicationCategory,h.id,c.syndicationUrl,null)}d.responseToComment=null;if(d.commentMsg){d.commentMsg.show();d.commentMsg.html("Your comment was added.")}d.reload()}};d.commentListLoaded=function(g,h){if(h){g=[];CF.error("Error fetching comments",h)}d.commentList=g;d.updatePager(d.commentList);d.draw()};d.getData=function(){return{opts:c,list:d.commentList,authUser:CF.context.auth_user}};return d};CF.widget.EntityComments=function(a,f,b,g,c){var e=null;if(g&&typeof g==="object"){e=g;g=g.uid}if(!g){CF.error("EntityComments: the data parameter must be set to an entity or entityId",g);return null}var d=CF.widget.BaseComments(a,f,b,g,c);d.fetchComments=function(){CF.context.api_v1.comment_entity_get(d.commentListLoaded,g,d.updateParams(d.params))};d.postComment=function(){var i=d.commentTxt.val();if(i){var h={};if(d.responseToComment){h.parent=d.responseToComment.id}CF.context.api_v1.comment_entity_create(d.commentPosted,g,i,h)}};d.superGetData=d.getData;d.getData=function(){var h=d.superGetData();if(e){h.entity=e}return h};return d};CF.widget.RPXLogin=function(a,e,b,f,c){if(!c.rpxUrl){CF.error("You must have the rpxUrl option set.");return}var d=CF.widget.SimpleWidget(a,e,b,f,c);d.onReload=function(){d.draw()};d.onStart=function(){d.draw()};d.getDefaultTemplateBody=function(){return"<iframe	src='[% iframeUrl %]' scrolling='no' frameBorder='no' style='width: 400px; height: 240px;'></iframe>"};d.getData=function(){var j=CF.login;var h={};h[j.loginTokenNameParam]="token";h[j.loginProviderParam]="rpx";var g=location.href;g=CF.url.removeParam([j.loginProviderParam,j.loginTokenNameParam,"token"],g);g=CF.url.addParams(h,g);g=CF.url.removeHash(g);var i=CF.context.api_v1.loginreg_rpxforward_url(g);return{iframeUrl:CF.url.addParam("token_url",i,c.rpxUrl)}};return d};CF.widget.ImageUpload=function(a,f,b,g,d){var e={iframeUrl:null,params:{},errorFadeTimeMs:10000};d=CF.extend(e,d);CF.extend(d.params,CF.context.api_v1.opts);if(!d.iframeUrl){CF.error("iframeUrl option is not set.  It is required and must point to the iframe that will perform the upload.");return null}var c=CF.widget.SimpleWidget(a,f,b,g,d);c.imageUrl=null;c.imageId=null;c.onStart=function(){c.onReload()};c.onReload=function(){c.iframeId="iframe_"+CF.iframe.frameCount++;c.draw()};c.getData=function(){var h=CF.url.addParam("iframeId",c.iframeId,d.iframeUrl);return{iframeSrc:h,iframeId:c.iframeId,image:c.image,authUser:CF.context.auth_user,errorMsg:c.errorMsg}};c.getDefaultTemplateBody=function(){var h="<div class='cf_if' binding='authUser'>		<div class='cf_if' binding='errorMsg'>			<div class='cf_upload_error_msg'>[%errorMsg%]</div> 		</div>		<div class='cf_if' binding='image'> 			<div class='cf_uploaded_image'>				<img cf_src='[%image.thumb_nail_url%]' id='[%image.external_id%]'></img>				<button class='cf_change_image'>Change</button>			</div>			<div class='cf_else'>				<div class='cf_iframe_holder'>					<iframe class='cf_upload_iframe' cf_src='[%iframeSrc%]' frameborder=0 ></iframe>				</div>				<div class='cf_iframe_upload_progress' style='display:none'>Uploading...</div>			</div>		</div>		<div class='cf_noprocess cf_upload_form_template' style='display:none'>			<input type='file' class='cf_upload_input' name='uploadFile'>			<button type='submit' class='cf_upload_submit'>Upload</button>		</div>		<div class='cf_else'>			You must be logged in to upload an image.		</div>	</div>	";return h};c.iframeReady=function(i,j){c.iframeComm=j;d.params.image_file="uploadFile";var h=CF.context.api_v1;j.run(d.params,c.uploadFormTemplate.clone().show(),h.hostname+h.path+"v1/image/create")};c.iframeSuccess=function(h,k,j,i){c.iframeComm=k;CF.context.api_v1.entity_get(c.fetchedImage,j)};c.fetchedImage=function(h,i){if(i){c.errorMsg=i.error_str;c.events.fire("imageupload_fail",c,i.error_str,i.error_code)}else{c.imageUrl=h.url;c.imageId=h.external_id;c.image=h;c.events.fire("imageupload_success",c,c.imageId,c.imageUrl)}c.reload()};c.iframeFail=function(i,k,h,j){c.iframeComm=k;c.errorMsg=h;c.events.fire("imageupload_fail",c,h,j);c.reload()};c.iframeUploadStart=function(h){var i=c.events.fire("imageupload_started",c);var j=true;jQuery.each(i,function(l,k){if(k===false){j=false}});if(!j){return false}c.errorMsg=null;c.uploadErrorMsg.hide();setTimeout(function(){c.iframeHolder.hide(),c.iframeUploadProgress.fadeIn()},100);return true};c.updateParams=function(h){CF.extend(d.params,h);if(c.iframeComm){c.iframeComm.updateParams(d.params)}};c.newImage=function(){c.imageUrl=null;c.imageId=null;c.image=null;c.reload();c.errorMsg=null};c.bindEvents=function(h,k){c.uploadFormTemplate=h.find(".cf_upload_form_template");c.uploadErrorMsg=h.find(".cf_upload_error_msg");c.iframeElem=h.find(".cf_upload_iframe");c.iframeHolder=h.find(".cf_iframe_holder");c.iframeUploadProgress=h.find(".cf_iframe_upload_progress");c.changeImage=h.find(".cf_change_image").click(c.newImage);var i=CF.iframe.events;i.listen(c.iframeId+"_ready",c.iframeReady);i.listen(c.iframeId+"_success",c.iframeSuccess);i.listen(c.iframeId+"_fail",c.iframeFail);i.listen(c.iframeId+"_uploadStart",c.iframeUploadStart);var j=c.iframeId;if(c.uploadErrorMsg.length>0){setTimeout(function(){if(j==c.iframeId){c.uploadErrorMsg.fadeOut()}},d.errorFadeTimeMs)}};return c};CF.widget.EntityRating=function(a,f,b,g,d){var e={minVal:0,maxVal:1,roundTo:1,canRate:true,category:"ThumbsUp",syndicate:false,syndiationUrl:location.href,syndicationCategory:"rating_entity",hovertime:5000};d=CF.extend(e,d);var c=CF.widget.BaseRating(a,f,b,g,d);c.sendRating=function(h){CF.context.api_v1.rating_entity_create(c.ratingCreated,c.entity.uid,d.category,h)};c.fetchEntity=function(){CF.context.api_v1.entity_get(c.handleFetchEntity,c.entityId,{rating:d.category})};c.getData=function(){return{entity:c.entity,rating:c.rating,opts:d,authUser:CF.context.auth_user}};c.populateEntity=function(h){c.rating=CF.arrayFind(h.entity_ratings,function(k,j){if(j.category==d.category){return j}});if(c.rating){c.entity=h;c.entityId=h.uid}};c.handleFetchEntity=function(h,i){if(!i){c.populateEntity(h);c.draw()}else{}};c.publish=function(j,k){var i=c.getActiveSyndProviders();var h=""+c.newRating;c.syndicate(i,d.syndicationCategory,c.entityId,d.syndicationUrl,h,c.syndComplete);c.hideHoverBox()};c.onReload=function(){c.fetchEntity()};c.onStart=function(){if(!c.entity){c.fetchEntity()}else{c.draw()}};if(typeof g=="object"){if(g.entity_ratings){c.populateEntity(g)}c.entityId=g.uid}else{c.entityId=g}if(!c.entityId){CF.error("Cannot create EntityRating, invalid data parameter set.");return null}return c};CF.widget.SyndicationIcons=function(a,e,b,f,c){c=CF.extend({checkbox:false},c);var d=CF.widget.SimpleWidget(a,e,b,f,c);CF.widget.SyndicationMixin(d);d.checkedToggles={};d.onStart=function(){d.draw()};d.getDefaultTemplateBody=function(){return"				<div class='cf_if' binding='user'>					<div class='cf_for' rendertag='false' binding='providers'>						<div class='cf_item cf_syndication_icon'>							<div class='cf_if' binding='parent.opts.checkbox'>								<input type='checkbox' id='[%item.provider%]_icon' class='cf_synd_icon_cbx' value='[% item.provider %]'>								<label class='[% item.className %]' for='[%item.provider%]_icon_[%idOffset+1%]' ></label>								<div class='cf_else'>									<div cf_class='[%item.className%]'></div>								</div>							</div>						</div>					</div>				</div>"};d.getData=function(){return{opts:c,user:CF.context.auth_user,providers:d.getActiveSyndProviders()}};d.toggleIcon=function(){var g=jQuery(this).val();if(this.checked){d.checkedToggles[g]=true}else{delete d.checkedToggles[g]}};d.bindEvents=function(g,h){if(c.checkbox){d.toggles=g.find(".cf_synd_icon_cbx").click(d.toggleIcon)}};return d};CF.widget.Entity=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);if(!f){CF.error("Entity: data parameter of either an entity object or an entity id required");return null}if(typeof f=="object"){d.entity=f;d.entityId=d.entity.uid}else{d.entityId=f}d.onReload=function(){d.fetchEntity()};d.onStart=function(){if(!d.entity){d.fetchEntity()}else{d.draw()}};d.getDefaultTemplateBody=function(){return" 			<div class='cf_entity'> 				<div class='cf_if' binding='entity.url'>					<a cf_href='[%entity.url%]'>					 <div class='cf_title'>[%entity.title%]</div> 					</a> 					<div class='cf_else'> 					<div class='cf_title'>[%entity.title%]</div> 					</div> 				</div>				<div class='cf_created'> Added: [% CF.friendlyDate(entity.created) %] </div>				<div class='cf_if' binding='entity.description'>					<div class='cf_description'>						[%entity.description%] 					</div>				</div> 		 	</div>"};d.getData=function(){return{entity:d.entity,opts:c,authUser:CF.context.auth_user}};d.fetchEntity=function(){CF.context.api_v1.entity_get(d.entityFetched,d.entityId,c)};d.entityFetched=function(g,h){if(h){d.entity=null}else{d.entity=g}d.draw()};d.hoverIn=function(){d.events.fire("entity_hover_in",d.entity,d);d.hoverTargetElem.fadeIn()};d.hoverOut=function(){d.events.fire("entity_hover_out",d.entity,d);d.hoverTargetElem.hide()};d.entityActivated=function(){d.events.fire("entity_activated",d.entity,d);d.activateTargetElem.fadeIn()};d.entityDeactivated=function(){d.events.fire("entity_deactiviated",d.entity,d);d.activateTargetElem.hide()};d.bindEvents=function(g,h){g.find(".cf_entity_hover").hover(d.hoverIn,d.hoverOut);g.find(".cf_entity_activate").click(d.entityActivated);g.find(".cf_entity_deactivate").click(d.entityDeactivated);d.activateTargetElem=g.find(".cf_entity_activate_target").hide();d.hoverTargetElem=g.find(".cf_entity_hover_target").hide()};return d};CF.widget.BoardComments=function(a,e,b,f,c){var d=CF.widget.BaseComments(a,e,b,f,c);if(f&&typeof f==="object"){f=f.id}if(!f){CF.error("BoardComments: the data parameter must be set to a board or a board's id",f);return null}d.fetchComments=function(){CF.context.api_v1.comment_board_get(d.commentListLoaded,f,d.updateParams(d.params))};d.postComment=function(){var h=d.commentTxt.val();if(h){var g={};if(d.responseToComment){g.parent=d.responseToComment.id}CF.context.api_v1.comment_board_create(d.commentPosted,f,h,g)}};return d};CF.widget.ActivityEventView=function(a,f,b,g,d){var e={offset:0,max_return:20};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b,g,d);CF.widget.Pageable(d,c);c.onStart=function(){c.getEntityList()};c.onReload=function(){c.getEntityList()};c.getEntityList=function(){c.updateParams(d);CF.context.api_v1.activityevent_get(c.handleListLoad,d)};c.pageChanged=function(){c.reload()};c.handleListLoad=function(h,i){if(i){h=[]}c.activityEvents=h;c.updatePager(c.activityEvents);c.draw()};c.getData=function(){return{activityEvents:c.activityEvents,pager:{offset:c.getOffset(),num_page:c.getPageNum()}}};c.getDefaultTemplateBody=function(){var h="<div class='cf_pager_row'> 			Current page (<span class='cf_num_page'></span>) 			Items on page (<span class='cf_num_items'></span>)			<a class='cf_first_page'>First</a> <a class='cf_prev_page'>Prev</a> <a class='cf_next_page'>Next</a>			</div>				<ul class='cf_for' binding = 'activityEvents'> 				<li class='cf_item'>					<div class='cf_if' binding='item.performer.user' assign='true'>						performer: [% display_name %] 					</div> 					<div class='cf_if' binding='item.participant.user' assign='true'>						participant: [% display_name %] 					</div> 					<div class='cf_if' binding='item.container.user' assign='true'>						container: [% display_name %] 					</div> 					<div class='cf_if' binding='item.performer.ExternalEntity' assign='true'>						performer: [% title %] 					</div> 					<div class='cf_if' binding='item.participant.ExternalEntity' assign='true'>						participant: [% title %] 					</div> 					<div class='cf_if' binding='item.container.ExternalEntity' assign='true'>						container: [% title %] 					</div> 					<div class='cf_message cf_if' rendertag='true' binding='item.message'>						[% item.message %]					</div>					<div class='cf_widgetLoader' widgettype='CF.widget.Entity' data='item'/> 				</li> 				<li class='cf_item_empty'>No items.</li> 			</ul>";return h};c.bindEvents=function(h,i){CF.widget.registry.listenType("CF.widget.MyStatusActivity","activityevent_created",c.reload);c.bindPagerEvents(h)};return c};CF.widget.UserLoginStatus=function(a,f,b,g,d){var e={loginTypes:["cf_basic"]};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b,g,d);c.onReload=function(){c.draw()};c.onStart=function(){c.draw()};c.getDefaultTemplateBody=function(){return" <div class='cf_if' binding='authUser'>	<div class='cf_current_user cf_logout_hover'><a>[% authUser.display_name || 'unknown user' %]</a>		<div class='cf_logout_popup' style='display:none;'>			<a class='cf_logoutBtn'>Logout</a>		</div>	</div>	<div class='cf_else'> 		<a class='cf_loginBtn'>Login</a>		<div class='cf_noprocess cf_login_modal' style='display:none;'>			<div class='cf_for' rendertag='false' binding='opts.loginTypes'>				<div class='cf_item' rendertag='false'>					<div class='cf_choice cf_logintype' binding='item'>						<div class='cf_condition' eq_s='cf_basic'>							<div class='cf_widgetLoader' widgettype='CF.widget.BasicLogin' options='parent.opts'></div>						</div>						<div class='cf_condition' eq_s='cf_captcha'>							<div class='cf_widgetLoader' widgettype='CF.widget.CaptchaShowLink' options='parent.opts'></div>						</div>						<div class='cf_condition' eq_s='rpx'>							<div class='cf_widgetLoader' widgettype='CF.widget.RPXLogin' options='parent.opts'></div>						</div>					</div>				</div>			</div>		</div>	</div></div>"};c.hoverIn=function(){c.logoutPopup.fadeIn()};c.hoverOut=function(){c.logoutPopup.fadeOut()};c.bindEvents=function(h,i){c.logoutPopup=h.find(".cf_logout_popup");h.find(".cf_logoutBtn").click(c.processLogout);h.find(".cf_logout_hover").hover(c.hoverIn,c.hoverOut);c.loginModal=h.find(".cf_login_modal");h.find(".cf_loginBtn").click(c.showModal)};c.showModal=function(){CF.login.events.listen("login_success",CF.modal.hide);CF.modal.show(c.loginModal.clone().removeClass("cf_noprocess"),c.getData(),{width:450})};c.processLogout=function(){CF.login.logout()};c.getData=function(){return{authUser:CF.context.auth_user,opts:d}};return c};CF.widget.Comment=function(a,e,b,f,c){if(!f){CF.error("The data parameter is required for a CF.widget.Comment","The data parameter should be a comment object.")}var d=CF.widget.SimpleWidget(a,e,b,f,c);d.getDefaultTemplateBody=function(){return"<div class='cf_widgetLoader' widgettype='CF.widget.UserProfile' data='comment.user' options='{showPopup:false}'></div>      <p>[% comment.body %]</p>      <div class='cf_date'>[% CF.friendlyDate(comment.created) %]</div>      <div class='cf_comment_actions'>     	 <div class='cf_if' binding='authUser && opts.flaggable'>    	 <span class='cf_widgetLoader' widgettype='CF.widget.AddFlag' data='comment.id' options='{type:\"comment\"}'>	     	</span>	     </div>	     <div class='cf_if' binding='authUser && opts.nested'> 	   		<a class='cf_activate_reply' binding='item'> 	   			Reply to [% comment.user.display_name %] 	   		</a>	     </div>     </div>     <div class='cf_clear'> </div>"};d.activated=function(){d.events.fire("comment_reply_activated",d.getData().comment,d)};d.bindEvents=function(g){g.find(".cf_activate_reply").click(d.activated)};d.getData=function(){return{comment:f,opts:c,authUser:CF.context.auth_user}};return d};CF.widget.UserRating=function(a,f,b,g,d){var e={minVal:0,maxVal:1,roundTo:1,canRate:true,category:"ThumbsUp",syndicate:false,syndiationUrl:location.href,syndicationCategory:"rating_user",hovertime:5000};d=CF.extend(e,d);var c=CF.widget.BaseRating(a,f,b,g,d);c.sendRating=function(h){CF.context.api_v1.rating_user_create(c.ratingCreated,c.userId,d.category,h)};c.fetchUser=function(){CF.context.api_v1.user_get(c.handleFetchUser,c.userId,{rating:d.category})};c.getData=function(){return{user:c.user,rating:c.rating,opts:d,authUser:CF.context.auth_user}};c.populateUser=function(h){c.rating=CF.arrayFind(h.user_ratings,function(k,j){if(j.category==d.category){return j}});if(c.rating){c.user=h;c.userId=h.external_id}};c.handleFetchUser=function(h,i){if(!i){c.populateUser(h);c.draw()}else{}};c.publish=function(j,k){var i=c.getActiveSyndProviders();var h=""+c.newRating;c.syndicate(i,d.syndicationCategory,c.userId,d.syndicationUrl,h,c.syndComplete);c.hideHoverBox()};c.onReload=function(){c.fetchUser()};c.onStart=function(){if(!c.user){c.fetchUser()}else{c.draw()}};if(typeof g=="object"){if(g.user_ratings){c.populateUser(g)}c.userId=g.external_id}else{c.userId=g}if(!c.userId){CF.error("Cannot create UserRating, invalid data parameter set.");return null}return c};CF.widget.StarUserRating=function(a,f,b,g,d){var e={width:83,minVal:0,maxVal:5,roundTo:0.5,opacity:0.7,canRate:true,category:"Stars"};d=CF.extend(e,d);var c=CF.widget.UserRating(a,f,b,g,d);c=CF.widget.StarRatingMixin(c,a,f,b,g,d);c.superPopulateUser=c.populateUser;c.populateUser=function(h){c.superPopulateUser(h);if(c.rating){c.rating.average_rating=c.round(c.rating.average_rating,d.roundTo);c.rating.user_rating=c.round(c.rating.user_rating,d.roundTo);c.setRatings(c.rating.average_rating,c.rating.user_rating)}};if(c.user){c.populateEntity(c.user)}return c};CF.widget.UserProfile=function(a,f,b,g,d){var e={showPopup:true};d=CF.extend(e,(d||{}));var c=CF.widget.SimpleWidget(a,f,b,g,d);if(!g){CF.error("UserProfile: the data parameter must be set to an user or userId",g);return null}c.onStart=function(){if(typeof g=="string"){c.userId=g;c.fetchUser()}else{c.user=g;c.draw()}};c.onReload=function(){c.fetchUser()};c.fetchUser=function(){CF.context.api_v1.user_get(c.userLoaded,c.userId)};c.isSelf=function(){var h=CF.context.auth_user;return h&&c.userId==h.external_id};c.userLoaded=function(h,i){if(i){CF.error("Error fetching user",i);return}c.user=h;c.userId=h.external_id;c.draw()};c.getData=function(){return{user:c.user,opts:d,isSelf:c.isSelf()}};c.getDefaultTemplateBody=function(){return" 		<div class='cf_avatar'> 				<div class='cf_if' binding='user.profile_photo_url'> 				<a class='cf_activate_user'> 					<img cf_src='[% user.profile_photo_url %]'/> 				</a> 		    </div> 		</div> 		<cite class='cf_activate_user'> 		 	<a>[% user.display_name %]</a> 		</cite> 		<div class='cf_profile_popup' style='display:none;'> 		 	<h4>[%user.display_name%] details <span class='cf_close_popup_btn'>x</span></h4> 		 	<div class='cf_profile_popup_details'> 			 	<div class='cf_if' binding='!user.badges'> 			 		<div>This user has no badges</div> 			 		<div class='cf_else'> 				 		<div class='cf_for' binding='user.badges' rendertag=false> 					 		<div class='cf_item cf_badge'> 					 			<img cf_src='[%item.img_url%]'></img><a cf_href='[item.url]'>[%item.name%]</a> 					 		</div> 				 		</div> 			 		</div> 			 	</div> 			 	<span class='cf_if' binding='user.profile_url'> 			 		<div><a cf_href='[%user.profile_url%]'>Visit [%user.display_name%]'s page</a></div> 			 	</span> 		 	</div> 		 </div>"};c.activate=function(){c.events.fire("userprofile_activated",c.user,c);if(d.showPopup){c.popupElem.fadeIn()}};c.hidePopup=function(){c.popupElem.hide()};c.bindEvents=function(h,i){h.find(".cf_activate_user").click(c.activate);c.popupElem=h.find(".cf_profile_popup");h.find(".cf_close_popup_btn").click(c.hidePopup)};return c};CF.widget.RegForm=function(a,e,b,f,c){c=CF.extend({syndicate:false,syndicationUrl:location.href,syndicationCategory:"registration"},c);if(!f.provider){return null}var d=CF.widget.SimpleWidget(a,e,b,f,c);CF.widget.SyndicationMixin(d);d.onReload=function(){d.draw()};d.onStart=function(){d.draw()};d.getDefaultTemplateBody=function(){return"<div class='cf_regform cf_if' binding='user' rendertag='true'> 					<h2>Create your Profile</h2>					<div class='cf_widgetLoader cf_syndication_icons' widgettype='CF.widget.SyndicationIcons'></div>					<div class='cf_if' binding='requirePass'>						<div class='cf_regform_row'>							<label for='cf_username'>Username:</label>							<input type='text' id='cf_external_id' class='cf_validate' validator='required' validator_msg='Please enter a username'></input>							<div class='cf_clear'> </div>						</div>						<div class='cf_regform_row'>							<label for='cf_password'>Password:</label>							<input type='password' id='cf_password' class='cf_validate' validator='required' validator_msg='Please enter a password' value=''></input>							<div class='cf_clear'> </div>						</div>					</div>					<div class='cf_regform_row'>						<label for='cf_display_name'>Display name:</label>						<input type='text' id='cf_display_name' class='cf_validate' validator='required' validator_msg='Please enter a display name' value='[%user.display_name%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_email'>Email address:</label>						<input type='text' id='cf_email' class='cf_validate cf_required' validator='email' validator_msg='Please enter a valid email address' value='[%user.email%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_email'>First name:</label>						<input type='text' id='cf_first_name' class='cf_validate' validator='required' validator_msg='Please enter your first name' value='[%user.firstName%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_email'>Last name:</label>						<input type='text' id='cf_last_name' class='cf_validate' validator='required' validator_msg='Please enter your last name' value='[%user.lastName%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_profile_photo_url'>Avatar:</label>						<input type='text' id='cf_profile_photo_url' class='cf_validate' validator='imageUrl' validator_msg='Please enter a valid avatar url' value='[%user.profile_photo_url%]'></input>						<div class='cf_if' binding='user.profile_photo_url'>							<img class='cf_avatar_preview' src='[%user.profile_photo_url%]'></img>						</div>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_error_msg'></div>					<div class='cf_regform_row cf_regform_syndicate' style='display:none;'>							<label> </label>							<input type='checkbox' class='cf_regform_syndicate_cbx' checked='checked'>Let my friends know about this site					</div>					<div class='cf_regform_button_row'>						<button type='button' class='cf_regform_submit'>Save</button>					</div>					<div class='cf_else'>						You must be logged in with an account in the 'Unverified' state to use this widget.					</div>				</div>		"};d.getData=function(){var g={};CF.extend(g,f);g.opts=c;g.user=CF.context.auth_user;return g};d.updateAvatar=function(){d.avatarPreview.attr("src",d.profilePhotoUrl.val())};d.processForm=function(){d.errorMsg.html("");if(CF.validate.run(a)){var g={};a.find("input, textarea").each(function(j,h){h=jQuery(h);var l=h.val();var k=h.attr("id");if(l&&k){g[k.replace("cf_","")]=l}});g.provider=f.provider;CF.context.api_v1.loginreg_register(d.formComplete,g)}else{d.events.fire("regform_validate_failed",d)}};d.formComplete=function(h,j){if(j){var g;if(j.error_code==164){g=CF.build("div",["The username you've selected is already taken.  Please select a different username."])}else{g=CF.build("div","Error: "+j.error_str+" - "+j.error_detail)}g.hide();d.errorMsg.append(g);g.fadeIn();d.events.fire("regform_error",j,d)}else{if(c.syndicate&&d.isSyndicated){var i=d.getActiveSyndProviderNames();d.syndicate(i,c.syndicationCategory,f.user.external_id,c.syndicationUrl,null,d.syndicationComplete)}d.events.fire("regform_complete",h,d)}};d.syndicationComplete=function(g,h){if(h){CF.error("Error performing syndication event",h)}else{CF.log("Syndication completed",g);d.events.fire("regform_syndication_complete",g,d)}};d.toggleSyndicate=function(){d.isSyndicated=this.checked};d.bindEvents=function(g,h){d.avatarPreview=g.find(".cf_avatar_preview");d.profilePhotoUrl=g.find("#cf_profile_photo_url").blur(d.updateAvatar);g.find(".cf_regform_submit").click(d.processForm);d.errorMsg=g.find(".cf_regform_error_msg");if(d.canSyndicate()){d.isSyndicated=true;d.syndElems=g.find(".cf_regform_syndicate").show();d.syndIcon=g.find(".cf_regform_syndicate_cbx").click(d.toggleSyndicate)}};return d};CF.widget.UserComments=function(a,e,b,f,c){var d=CF.widget.BaseComments(a,e,b,f,c);if(f&&typeof f==="object"){f=f.external_id}if(!f){CF.error("UserComments: the data parameter must be set to a user or a user's id",f);return null}d.fetchComments=function(){CF.context.api_v1.comment_user_get(d.commentListLoaded,f,d.updateParams(d.params))};d.postComment=function(){var h=d.commentTxt.val();if(h){var g={};if(d.responseToComment){g.parent=d.responseToComment.id}CF.context.api_v1.comment_user_create(d.commentPosted,f,h,g)}};return d};CF.widget.StarRatingMixin=function(b,a,e,d,f,c){b.scaleFactor=(c.width/(c.maxVal-c.minVal));b.superBindEvents=b.bindEvents;b.bindEvents=function(g,h){b.superBindEvents(g,h);b.avgElem=g.find(".cf_rating_avg");b.selectedElem=g.find(".cf_rating_selected");b.maskElem=g.find(".cf_rating_mask");g.find(".cf_opacity").css("opacity",c.opacity);b.computeWidths();if(CF.context.auth_user&&c.canRate){b.containerElem=g.find(".cf_hover_select_rating").mousemove(b.selectionMoved).click(b.selectionClicked).mouseout(b.mouseout)}};b.getDefaultTemplateBody=function(){return" 		<span class='cf_rating'> 			<div class='cf_hover_select_rating'>				<div class='cf_rating_avg'></div>				<div class='cf_rating_selected cf_opacity'></div>				<div class='cf_rating_mask'></div>			</div>			<span class='cf_average'>				Average:[% rating.average_rating %]/[% opts.maxVal %] Votes: [% rating.count %]			</span>			<div class='cf_rating_hoverbox' style='display:none'>			<h4>Your rating has been counted</h4>				<a class='cf_rating_synd_btn'>Publish to: </a>				<span class='cf_widgetLoader cf_syndication_icons' widgetType='CF.widget.SyndicationIcons'></span>			</div>		</span>		"};b.mouseout=function(g){b.setRatings(b.avgVal,b.selectedVal)};b.selectionMoved=function(h){if(c.canRate){var g=a.offset();var i=h.pageX-g.left;b.selectedElem.width(i)}};b.selectionClicked=function(j){if(c.canRate){var i=a.offset();var h=j.pageX-i.left;var g=Math.round(h);b.newRating=b.round((g/b.scaleFactor),c.roundTo);b.sendRating(b.newRating)}};b.computeWidths=function(){b.avgElem.width(Math.round(b.scaleFactor*b.avgVal));b.selectedElem.width(Math.round(b.scaleFactor*b.selectedVal))};b.clearRatings=function(){return b.setRatings(null,null)};b.setRatings=function(h,g){b.avgVal=(h||c.minVal);b.selectedVal=(g||c.minVal);if(b.containerElem){b.computeWidths()}};return b};CF.widget.StarEntityRating=function(a,f,b,g,d){var e={width:83,minVal:0,maxVal:5,roundTo:0.5,opacity:0.7,canRate:true,category:"Stars"};d=CF.extend(e,d);var c=CF.widget.EntityRating(a,f,b,g,d);c=CF.widget.StarRatingMixin(c,a,f,b,g,d);c.superPopulateEntity=c.populateEntity;c.populateEntity=function(h){c.superPopulateEntity(h);if(c.rating){c.rating.average_rating=c.round(c.rating.average_rating,d.roundTo);c.rating.user_rating=c.round(c.rating.user_rating,d.roundTo);c.setRatings(c.rating.average_rating,c.rating.user_rating)}};if(c.entity){c.populateEntity(c.entity)}return c};CF.widget.EntityBrowse=function(a,f,b,g,d){var e={order:"MostRecentFirst",offset:0,max_return:20};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b,g,d);CF.widget.Pageable(d,c);c.onStart=function(){c.getEntityList()};c.onReload=function(){c.getEntityList()};c.getEntityList=function(){c.updateParams(d);CF.context.api_v1.entity_browse(c.handleListLoad,d)};c.pageChanged=function(){c.reload()};c.handleListLoad=function(h,i){if(i){h=[]}c.entities=h;c.updatePager(c.entities);c.draw()};c.getData=function(){return{entities:c.entities,pager:{offset:c.getOffset(),num_page:c.getPageNum()}}};c.getDefaultTemplateBody=function(){var h="<div class='cf_pager_row'> 			Current page (<span class='cf_num_page'></span>) 			Items on page (<span class='cf_num_items'></span>)			<a class='cf_first_page'>First</a> <a class='cf_prev_page'>Prev</a> <a class='cf_next_page'>Next</a>			</div>				<ul class='cf_for' binding = 'entities'> 				<li class='cf_item'>					<div class='cf_widgetLoader' widgettype='CF.widget.Entity' data='item'/> 				</li> 				<li class='cf_item_empty'>No items.</li> 			</ul>";return h};c.bindEvents=function(h){c.bindPagerEvents(h)};return c};CF.widget.CrowdList=function(a,e,b,f,c){c=CF.extend({offset:0,max_return:20,isUserList:true},c);if(c.isUserList){c.user=(typeof f==="object")?f.external_id:f}else{c.group=(typeof f==="object")?f.id:f}if(!c.user&&!c.group){CF.error("CrowdList: The data parameter must be set to either a user or a group",f);return null}if(!c.category||!c.name){CF.error("Category, and name are required options for the CrowdList widget")}var d=CF.widget.SimpleWidget(a,e,b,f,c);CF.widget.Pageable(c,d);d.onStart=function(){d.onReload()};d.onReload=function(){var g=d.updateParams(c);CF.context.api_v1.list_get(d.handleListLoad,c.category,c.name,c)};d.pageChanged=function(){d.reload()};d.handleListLoad=function(g,h){if(h){g={};g.items=[]}d.list=g;d.updatePager(g.items);d.draw()};d.getData=function(){return{list:d.list,pager:{offset:d.getOffset(),num_page:d.getPageNum()},items:d.list.items}};d.getDefaultTemplateBody=function(){var g="<div>Total Items ([%list.item_count%]) Current page (<span class='cf_num_page'></span>) 		Items on page (<span class='cf_num_items'></span>)		<a class='cf_first_page'>First</a> <a class='cf_prev_page'>Prev</a> <a class='cf_next_page'>Next</a>		</div>			<ul class='cf_for' binding = 'items'> 			<li class='cf_item'>				<div class='cf_widgetLoader' widgettype='CF.widget.Entity' data='item.ExternalEntity'></div>			</li> 			<li class='cf_item_empty'>No items.</li> 		</ul>";return g};d.removeFromList=function(h){var g=jQuery(this);CF.context.api_v1.list_entity_remove(d.reload,g.attr("entity_id"),c.category,c.name)};d.bindEvents=function(g){g.find(".cf_list_remove").click(d.removeFromList);d.bindPagerEvents(g)};return d};CF.widget.CaptchaLogin=function(a,f,b,g,d){d=d||{};var e={scriptSrc:"http://api.recaptcha.net/js/recaptcha_ajax.js",key:"6Lc-fAcAAAAAAJhL3j6CpAswfjvdgfaNood9j5n7",theme:"red"};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b,g,d);c.onReload=function(){Recaptcha.destroy();c.draw()};c.onStart=function(){if(!window.Recaptcha){jQuery.getScript(d.scriptSrc,c.draw)}else{c.draw()}};c.onRemove=function(){Recaptcha.destroy()};c.getDefaultTemplateBody=function(){return"				<div class='cf_captcha_body'>					<h2>Prove your humanity</h2>					<p>In order to create an account, you must first prove that you are not a robot.</p>					<p>Please solve this captcha.</p>					<div id='recaptcha_div'></div>					<div class='cf_captcha_msg'></div>					<button class='cf_captcha_cancel' type='button'>Cancel</button>					<button class='cf_captcha_submit' type='button'>Submit Answer</button>				</div>				"};c.bindEvents=function(h,i){c.captchaBody=h.find(".cf_captcha_body");c.captchaMsg=h.find(".cf_captcha_msg");c.captchaSubmit=h.find(".cf_captcha_submit").click(c.submitCaptcha);c.captchaCancel=h.find(".cf_captcha_cancel").click(c.cancelCaptcha);Recaptcha.create(d.key,"recaptcha_div",{theme:d.theme,callback:Recaptcha.focus_response_field})};c.cancelCaptcha=function(){c.events.fire("captcha_cancel",c);c.captchaBody.fadeOut();Recaptcha.destroy()};c.submitCaptcha=function(){c.captchaMsg.html("");var h=Recaptcha.get_challenge()+"|"+Recaptcha.get_response();CF.context.api_v1.loginreg_auth(c.tokenOk,h,"cf-captcha")};c.tokenOk=function(h,i){if(i){c.events.fire("captcha_incorrect",i,c);var i=CF.build("div","Incorrect answer.  Please try again.").hide();c.captchaMsg.append(i);Recaptcha.reload();i.fadeIn()}else{c.events.fire("captcha_success",h.user,c)}};return c};CF.widget.BaseRating=function(a,f,b,g,d){var e={minVal:0,maxVal:1,roundTo:1,canRate:true,category:"ThumbsUp",syndicate:false,syndiationUrl:location.href,syndicationCategory:null,hovertime:5000};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b);CF.widget.SyndicationMixin(c);c.avgVal=d.minVal;c.selectedVal=d.minVal;c.getDefaultTemplateBody=function(){return"<span class='cf_rating'> 	<span class='cf_choice' binding='rating.user_rating'>		<span class='cf_condition' lt='0' eq='0'>			<span class='cf_thumbs_up cf_vote cf_deselected' voteval='1'></span>			<span class='cf_thumbs_down cf_vote cf_selected' voteval='0'></span>		</span>		<span class='cf_condition' gt='1' eq='1'>			<span class='cf_thumbs_up cf_vote cf_selected' voteval='1'></span>			<span class='cf_thumbs_down cf_vote cf_deselected' voteval='0'></span>		</span>		<span class='cf_otherwise'>			<span class='cf_thumbs_up cf_vote' voteval='1'></span>			<span class='cf_thumbs_down cf_vote' voteval='0'></span>		</span>	</span>	<span class='cf_average'>		Average: [% rating.average_rating * 100 %]% Votes: [% rating.count %]	</span>	<div class='cf_rating_hoverbox' style='display:none'>		<h4>Your rating has been counted</h4>		<a class='cf_rating_synd_btn'>Publish to: </a>		<span class='cf_widgetLoader cf_syndication_icons' widgetType='CF.widget.SyndicationIcons'>  </span>	</div></span>		"};c.bindEvents=function(h,i){if(CF.context.auth_user&&d.canRate){h.find(".cf_vote").click(c.vote);c.hoverbox=h.find(".cf_rating_hoverbox").hover(c.stopHoverTimer,c.startHoverTimer);c.syndBtn=h.find(".cf_rating_synd_btn").click(c.publish)}};c.round=function(l,h){var j,i,k;j=l%h;i=h/2;if(j>=i){k=(l-j)+h}else{k=l-j}return Math.max(d.minVal,Math.min(d.maxVal,k))};c.vote=function(){var h=jQuery(this).attr("voteval");if(h){c.newRating=c.round(new Number(h),d.roundTo);c.sendRating(c.newRating)}};c.sendRating=function(h){CF.error("sendRating must be overridden in child classes of CF.widget.BaseRating")};c.startHoverTimer=function(){if(!c.timer){c.timer=setTimeout(c.hideHoverBox,d.hovertime)}};c.stopHoverTimer=function(){if(c.timer){clearTimeout(c.timer)}c.timer=null};c.hideHoverBox=function(){c.timer=null;c.hoverbox.fadeOut(c.reload)};c.publish=function(){CF.error("publish must be overridden in child classes of CF.widget.BaseRating")};c.syndComplete=function(h,i){};c.ratingCreated=function(h,i){if(!i){c.events.fire("rating_created",c.entity,c);if(d.syndicate&&c.canSyndicate()){c.startHoverTimer();c.hoverbox.fadeIn()}else{c.reload()}}};return c};CF.widget.GalleryCrowdList=function(a,e,b,f,c){c=c||{};c.modalOpts=c.modalOpts||{};var d=CF.widget.CrowdList(a,e,b,f,c);d._hoverInBtn=function(g){g.fadeIn()};d._hoverOutBtn=function(g){g.fadeOut()};d.hoverInPrevPage=function(){d._hoverInBtn(d.hoverPrevPage)};d.hoverOutPrevPage=function(){d._hoverOutBtn(d.hoverPrevPage)};d.hoverInNextPage=function(){d._hoverInBtn(d.hoverNextPage)};d.hoverOutNextPage=function(){d._hoverOutBtn(d.hoverNextPage)};d.superBindEvents=d.bindEvents;d.bindEvents=function(g,h){d.superBindEvents(g,h);d.hoverPrevPage=g.find(".cf_prev_page_hover");d.hoverNextPage=g.find(".cf_next_page_hover");d.modalTemplateElem=g.find(".cf_modal_template");g.find(".cf_prev_page").hover(d.hoverInPrevPage,d.hoverOutPrevPage);g.find(".cf_next_page").hover(d.hoverInNextPage,d.hoverOutNextPage);jQuery.each(h,function(k,j){if(j.type==="CF.widget.Entity"){j.widget.events.listen("entity_activated",d.activateFullView)}})};d.getDefaultTemplateBody=function(){return"	<div class='cf_loading'>		<div class='cf_loading_spinner'></div>	</div>	<div class='cf_prev_page'>		<div class='cf_prev_page_btn'></div>		<div class='cf_prev_page_hover' style='display:none;'></div>	</div>	<div class='cf_next_page'>		<div class='cf_next_page_btn'></div>		<div class='cf_next_page_hover' style='display:none;'></div>	</div>	<div class='cf_gallerybody'>		<div class='cf_gallerypage'>			Showing [% pager.offset + 1 %] to [% items.length + pager.offset %] of [% list.item_count %]		</div>		<div class='cf_for' binding = 'items'>			<div class='cf_item cf_galleryitem'>				<div class='cf_widgetLoader cf_imageborder' widgettype='CF.widget.Entity' data='item.ExternalEntity'>					<div class='cf_entity_hover cf_entity_activate'>						<div class='cf_entity_hover_target' style='display:none;'>							<p>[% entity.title %]</p>						</div> 						<img cf_src='[% entity.image_urls.smll_s %]' />					</div>				</div>			</div>			<div class='cf_item_empty'>				No items on this page.			</div>		</div>	</div>	<div class='cf_widgetLoader cf_modal_template cf_noprocess' widgettype='CF.widget.Entity'>			<img cf_src='[% entity.image_urls.larg_r %]' />			<h4>[% entity.title %]</h4>			<h5>[% entity.description %]</h5> 	</div>"};d.activateFullView=function(i,j,h){var g=d.modalTemplateElem.clone().removeClass("cf_noprocess");d.events.fire("gallery_modal_activated",j,g,d);CF.modal.show(g,j,c.modalOpts)};return d};CF.widget.EntityQuery=function(a,f,b,g,d){var e={queryType:"highest_rated",offset:0,max_return:20};d=CF.extend(e,d);var c=CF.widget.SimpleWidget(a,f,b,g,d);CF.widget.Pageable(d,c);c.onStart=function(){c.getEntityList()};c.onReload=function(){c.getEntityList()};c.getEntityList=function(){try{var h=jQuery.extend({},d);delete h.queryType;h=c.updateParams(h);CF.context.api_v1["query_entity_"+d.queryType](c.handleListLoad,h)}catch(i){CF.error("Error making entity query (is queryType valid?)",i)}};c.pageChanged=function(){c.reload()};c.handleListLoad=function(h,i){if(i){h=[]}c.entities=h;c.updatePager(c.entities);c.draw()};c.getData=function(){return{entities:c.entities,pager:{offset:c.getOffset(),num_page:c.getPageNum()}}};c.getDefaultTemplateBody=function(){var h="<div class='cf_pager_row'> 		Current page (<span class='cf_num_page'></span>) 		Items on page (<span class='cf_num_items'></span>)		<a class='cf_first_page'>First</a> <a class='cf_prev_page'>Prev</a> <a class='cf_next_page'>Next</a>		</div>		<ul class='cf_for' binding = 'entities'> 			<li class='cf_item'>				<div class='cf_widgetLoader' widgettype='CF.widget.Entity' data='item'></div> 			</li> 			<li class='cf_item_empty'>No items.</li> 		</ul>";return h};c.bindEvents=function(h){c.bindPagerEvents(h)};return c};CF.widget.BasicLogin=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);d.onReload=function(){d.draw()};d.onStart=function(){d.draw()};d.getDefaultTemplateBody=function(){return" 				<div class='cf_if' binding='authUser'>					Logged in as [% authUser.display_name %] 					<br/> 					<a class='cf_logoutBtn'>Click here to log out</a> 					<div class='cf_else cf_loginForm'> 						<div class='cf_formRow'> 							<label for='cf_username'>Username:</label> 							<input name='cf_username' id='cf_username' type='text' /> 							<div class='cf_clear'> </div>						</div> 						<div class='cf_formRow'> 							<label for='cf_password'>Password:</label> 							<input type='password' name='cf_password' id='cf_password'/> 							<div class='cf_clear'> </div>						</div>						<div class='cf_loginError'> 							<div class='cf_if' binding='error'> 								Incorrect username or password. 							</div>						</div>						<div class='cf_buttonRow'> 							<button type='button' class='cf_loginBtn'>Login</button>						</div>					</div>		 	</div>"};d.bindEvents=function(g,h){d.usernameElem=g.find("#cf_username");d.passwordElem=g.find("#cf_password").keypress(CF.enterPressed(d.processLogin));g.find(".cf_loginBtn").click(d.processLogin);g.find(".cf_logoutBtn").click(d.processLogout)};d.processLogout=function(){CF.login.logout()};d.processLogin=function(){d.error=null;CF.login.events.listen("login_fail",d.setLoginError);CF.login.login(d.usernameElem.val(),d.passwordElem.val())};d.setLoginError=function(g,h){d.error=h;d.reload()};d.getData=function(){return{authUser:CF.context.auth_user,error:d.error}};return d};CF.widget.CaptchaShowLink=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);d.getDefaultTemplateBody=function(){return"<a class='cf_captcha_start'>Register for an account!</a>				<div class='cf_captcha_modal cf_noprocess cf_widgetLoader' widgettype='CF.widget.CaptchaLogin' options='opts'></div>			"};d.bindEvents=function(g,h){g.find(".cf_captcha_start").click(d.startCaptcha);d.captchaModal=g.find(".cf_captcha_modal")};d.fireSuccess=function(g,i,h){CF.login.showRegForm({user:i,requirePass:true,provider:"cf-captcha"})};d.startCaptcha=function(){var g=d.captchaModal.clone().removeClass("cf_noprocess");var h=CF.modal.show(g,{opts:c});jQuery.each(h,function(k,j){if(j.type&&j.type=="CF.widget.CaptchaLogin"){j.widget.events.listen("captcha_success",d.fireSuccess);j.widget.events.listen("captcha_cancel",CF.modal.hide)}})};return d};CF.widget.AddFlag=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);if(!f){CF.error("The data parameter is required and must be the identifier for a flaggable object")}c=c||{};if(!CF.inList(c.type,["activityevent","board","comment","entity","user"])){CF.error("Invalid or missing type option")}d.onReload=function(){d.draw()};d.onStart=function(){d.draw()};d.getDefaultTemplateBody=function(){return" 			<div class='cf_if' binding='authUser'>				<a class='cf_add_flag'>Flag as Inappropriate</a>				<div class='cf_add_flag_popup' style='display:none;'>					<div class='cf_flag_create'>						<em>Reason for flagging:</em>						<textarea class='cf_add_flag_txt'>I find this content objectionable.</textarea>						<div class='cf_add_flag_button_row'>							<button type='button' class='cf_add_flag_cancel'>Cancel</button>							<button type='button' class='cf_add_flag_send'>Raise the Flag</button>						</div>					</div>					<div class='cf_flag_added_msg'>						<em>Your flag has been raised.</em><br/>						A moderator will examine the content.					</div>				</div>			</div>			"};d.showPopup=function(){if(!d.isShown){d.isShown=true;d.addFlagPopup.slideDown(function(){d.selectTxt()})}if(d.flagSent){d.flagComplete()}};d.hidePopup=function(){if(d.isShown){d.addFlagPopup.slideUp(function(){d.isShown=false})}};d.selectTxt=function(){d.addFlagTxt.select()};d.bindEvents=function(g,h){d.addFlag=g.find(".cf_add_flag").click(d.showPopup);d.addFlagPopup=g.find(".cf_add_flag_popup");d.addFlagTxt=g.find(".cf_add_flag_txt");d.addFlagCancel=g.find(".cf_add_flag_cancel").click(d.hidePopup);d.addFlagSend=g.find(".cf_add_flag_send").click(d.sendFlag);d.addFlagButtonRow=g.find(".cf_add_flag_button_row");d.flagAddedMsg=g.find(".cf_flag_added_msg").hide();d.flagCreate=g.find(".cf_flag_create")};d.sendFlag=function(){var g=c.type;CF.context.api_v1["flag_"+g](d.flagComplete,f,{desc:(d.addFlagTxt.val()||"")})};d.flagComplete=function(g,h){if(!h){d.events.fire("flag_created",f,d)}d.flagSent=true;d.flagCreate.hide();d.flagAddedMsg.fadeIn(function(){setTimeout(d.hidePopup,5000)})};d.getData=function(){return{authUser:CF.context.auth_user,opts:c}};return d};

//Including IGA_full.js

innerXHTML=function(w,s,v){if(typeof(w)=="string"){w=document.getElementById(w)}if(!(w.nodeType==1)){return false}var y=w.childNodes;var q="";if(!s){for(var n=0;n<y.length;n++){if(y[n].nodeType==3){var u=y[n].nodeValue;u=u.replace(/</g,"&lt;");u=u.replace(/>/g,"&gt;");q+=u}else{if(y[n].nodeType==8){q+="<!--"+y[n].nodeValue+"-->"}else{q+="<"+y[n].nodeName.toLowerCase();var r=y[n].attributes;for(var z=0;z<r.length;z++){var p=r[z].nodeName.toLowerCase();var t=r[z].nodeValue;if(p=="style"&&y[n].style.cssText){q+=' style="'+y[n].style.cssText.toLowerCase()+'"'}else{if(t&&p!="contenteditable"){q+=" "+p+'="'+t+'"'}}}q+=">"+innerXHTML(y[n]);q+="</"+y[n].nodeName.toLowerCase()+">"}}}}else{if(!v){while(y.length>0){w.removeChild(y[0])}v=false}q=s;while(s){var o=translateXHTML(s);var x=o[0];s=o[1];if(x){if(typeof(v)=="string"){v=document.getElementById(v)}if(!(v.nodeType==1)){w.appendChild(x)}else{w.insertBefore(x,v)}}}}return q};function translateXHTML($string){var $match=/^<\/[a-z0-9]{1,}>/i.test($string);if($match){var $return=Array;$return[0]=false;$return[1]=$string.replace(/^<\/[a-z0-9]{1,}>/i,"");return $return}$match=/^<[a-z]{1,}/i.test($string);if($match){$string=$string.replace(/^</,"");var $element=$string.match(/[a-z0-9]{1,}/i);if($element){var $new_element=document.createElement($element[0]);$string=$string.replace(/[a-z0-9]{1,}/i,"");var $attribute=true;while($attribute){$string=$string.replace(/^\s{1,}/,"");$attribute=$string.match(/^[a-z1-9_-]{1,}="[^"]{0,}"/i);if($attribute){$attribute=$attribute[0];$string=$string.replace(/^[a-z1-9_-]{1,}="[^"]{0,}"/i,"");var $attName=$attribute.match(/^[a-z1-9_-]{1,}/i);$attribute=$attribute.replace(/^[a-z1-9_-]{1,}="/i,"");$attribute=$attribute.replace(/;{0,1}"$/,"");if($attribute){var $attValue=$attribute;if($attName=="value"){$new_element.value=$attValue}else{if($attName=="class"){$new_element.className=$attValue}else{if($attName=="style"){var $style=$attValue.split(";");for(var $i=0;$i<$style.length;$i++){var $this_style=$style[$i].split(":");$this_style[0]=$this_style[0].toLowerCase().replace(/(^\s{0,})|(\s{0,1}$)/,"");$this_style[1]=$this_style[1].toLowerCase().replace(/(^\s{0,})|(\s{0,1}$)/,"");if(/-{1,}/g.test($this_style[0])){var $this_style_words=$this_style[0].split(/-/g);$this_style[0]="";for(var $j=0;$j<$this_style_words.length;$j++){if($j==0){$this_style[0]=$this_style_words[0];continue}var $first_letter=$this_style_words[$j].toUpperCase().match(/^[a-z]{1,1}/i);$this_style[0]+=$first_letter+$this_style_words[$j].replace(/^[a-z]{1,1}/,"")}}$new_element.style[$this_style[0]]=$this_style[1]}}else{if(/^on/.test($attName)){$new_element[$attName]=function(){eval($attValue)}}else{$new_element.setAttribute($attName,$attValue)}}}}}else{$attribute=true}}}$match=/^>/.test($string);if($match){$string=$string.replace(/^>/,"");var $child=true;while($child){var $returned=translateXHTML($string,false);$child=$returned[0];if($child){$new_element.appendChild($child)}$string=$returned[1]}}$string=$string.replace(/^\/>/,"")}}$match=/^[^<>]{1,}/i.test($string);if($match&&!$new_element){var $text_content=$string.match(/^[^<>]{1,}/i)[0];$text_content=$text_content.replace(/&lt;/g,"<");$text_content=$text_content.replace(/&gt;/g,">");var $new_element=document.createTextNode($text_content);$string=$string.replace(/^[^<>]{1,}/i,"")}$match=/^<!--[^<>]{1,}-->/i.test($string);if($match&&!$new_element){if(document.createComment){$string=$string.replace(/^<!--/i,"");var $text_content=$string.match(/^[^<>]{0,}-->{1,}/i);$text_content=$text_content[0].replace(/-->{1,1}$/,"");var $new_element=document.createComment($text_content);$string=$string.replace(/^[^<>]{1,}-->/i,"")}else{$string=$string.replace(/^<!--[^<>]{1,}-->/i,"")}}var $return=Array;$return[0]=$new_element;$return[1]=$string;return $return}(function(t){t.facebox=function(a,b){t.facebox.loading();if(a.ajax){u(a.ajax,b)}else{if(a.image){q(a.image,b)}else{if(a.div){m(a.div,b)}else{if(t.isFunction(a)){a.call(t)}else{t.facebox.reveal(a,b)}}}}};t.extend(t.facebox,{settings:{opacity:0,overlay:true,loadingImage:"/_assets/img/loading.gif",closeImage:"/_assets/img/closelabel.gif",imageTypes:["png","jpg","jpeg","gif"],faceboxHtml:'    <div id="facebox" style="display:none;">       <div class="popup">         <table>           <tbody>             <tr>               <td class="tl"/><td class="b"/><td class="tr"/>             </tr>             <tr>               <td class="b"/>               <td class="body">                 <div class="content">                 </div>                 <div class="footer">                   <a href="#" class="close">                     <img src="/_assets/img/closelabel.gif" title="close" class="close_image" />                   </a>                   <a href="#" id="offensiveSubmit" class="submit">Submit</a>                 </div>               </td>               <td class="b"/>             </tr>             <tr>               <td class="bl"/><td class="b"/><td class="br"/>             </tr>           </tbody>         </table>       </div>     </div>'},loading:function(){n();if(t("#facebox .loading").length==1){return true}s();t("#facebox .content").empty();t("#facebox .body").children().hide().end().append('<div class="loading"><img src="'+t.facebox.settings.loadingImage+'"/></div>');t("#facebox").css({top:v()[1]+(l()/3),left:t(window).width()/2-205}).show();t(document).bind("keydown.facebox",function(a){if(a.keyCode==27){t.facebox.close()}return true});t(document).trigger("loading.facebox")},reveal:function(a,b){t(document).trigger("beforeReveal.facebox");if(b){t("#facebox .content").addClass(b)}t("#facebox .content").append(a);t("#facebox .loading").remove();t("#facebox .body").children().fadeIn("normal");t("#facebox").css("left",t(window).width()/2-(t("#facebox table").width()/2));t(document).trigger("reveal.facebox").trigger("afterReveal.facebox")},close:function(){t(document).trigger("close.facebox");return false}});t.fn.facebox=function(b){if(t(this).length==0){return}n(b);function a(){t.facebox.loading(true);var c=this.rel.match(/facebox\[?\.(\w+)\]?/);if(c){c=c[1]}m(this.href,c);return false}return this.bind("click.facebox",a)};function n(b){if(t.facebox.settings.inited){return true}else{t.facebox.settings.inited=true}t(document).trigger("init.facebox");r();var c=t.facebox.settings.imageTypes.join("|");t.facebox.settings.imageTypesRegexp=new RegExp(".("+c+")$","i");if(b){t.extend(t.facebox.settings,b)}t("body").append(t.facebox.settings.faceboxHtml);var a=[new Image(),new Image()];a[0].src=t.facebox.settings.closeImage;a[1].src=t.facebox.settings.loadingImage;t("#facebox").find(".b:first, .bl, .br, .tl, .tr").each(function(){a.push(new Image());a.slice(-1).src=t(this).css("background-image").replace(/url\((.+)\)/,"$1")});t("#facebox .close").click(t.facebox.close);t("#facebox .close_image").attr("src",t.facebox.settings.closeImage)}function v(){var a,b;if(self.pageYOffset){b=self.pageYOffset;a=self.pageXOffset}else{if(document.documentElement&&document.documentElement.scrollTop){b=document.documentElement.scrollTop;a=document.documentElement.scrollLeft}else{if(document.body){b=document.body.scrollTop;a=document.body.scrollLeft}}}return new Array(a,b)}function l(){var a;if(self.innerHeight){a=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){a=document.documentElement.clientHeight}else{if(document.body){a=document.body.clientHeight}}}return a}function r(){var a=t.facebox.settings;a.loadingImage=a.loading_image||a.loadingImage;a.closeImage=a.close_image||a.closeImage;a.imageTypes=a.image_types||a.imageTypes;a.faceboxHtml=a.facebox_html||a.faceboxHtml}function m(a,d){if(a.match(/#/)){var b=window.location.href.split("#")[0];var c=a.replace(b,"");if(c=="#"){return}t.facebox.reveal(t(c).html(),d)}else{if(a.match(t.facebox.settings.imageTypesRegexp)){q(a,d)}else{u(a,d)}}}function q(a,c){var b=new Image();b.onload=function(){t.facebox.reveal('<div class="image"><img src="'+b.src+'" /></div>',c)};b.src=a}function u(a,b){t.get(a,function(c){t.facebox.reveal(c,b)})}function p(){return t.facebox.settings.overlay==false||t.facebox.settings.opacity===null}function s(){if(p()){return}if(t("#facebox_overlay").length==0){t("body").append('<div id="facebox_overlay" class="facebox_hide"></div>')}t("#facebox_overlay").hide().addClass("facebox_overlayBG").css("opacity",t.facebox.settings.opacity).click(function(){t(document).trigger("close.facebox")}).fadeIn(200);return false}function o(){if(p()){return}t("#facebox_overlay").fadeOut(200,function(){t("#facebox_overlay").removeClass("facebox_overlayBG");t("#facebox_overlay").addClass("facebox_hide");t("#facebox_overlay").remove()});return false}t(document).bind("close.facebox",function(){t(document).unbind("keydown.facebox");t("#facebox").fadeOut(function(){t("#facebox .content").removeClass().addClass("content");o();t("#facebox .loading").remove()})})})(jQuery);var IGA=IGA||{};IGA.config=function(){var a={};a.group;a.setGroup=function(b){a.group=b};a.getGroup=function(){return a.group};return a}();IGA.postWith=function(c,e){var a=document.createElement("form");a.method="post";a.action=c;if(e){for(var d in e){var b=document.createElement("input");b.setAttribute("name",d);b.setAttribute("value",e[d]);a.appendChild(b)}}document.body.appendChild(a);a.submit();document.body.removeChild(a)};IGA.pascalCase=function(a){return a.substr(0,1).toUpperCase()+a.substr(1)};IGA.activityEvents=function(){var a={};var b={joinGroup:"JoinedGroup",addToCrowdlist:"AddToCrowdList"};var c={user:"user",group:"group",entity:"entity"};var d={user:"user",group:"group",entity:"entity",list:"list",board:"board"};a.joinedGroup=function(e,g,f){if(!g){var f=f||"Joined "+IGA.config.group.description+"!";CF.context.api_v1.activityevent_create(function(h,i){if(i){CF.log("Error adding activity event")}else{CF.log("Joined Group Activity Event Added")}},b.joinGroup,CF.context.auth_user.external_id,c.user,params={message:f,containerid:IGA.config.group.id,containertype:d.group})}};return a}();IGA.login=function(){var b=CF.context;var a=CF.login;a.showRegForm=function(c){if(c.user){CF.context.auth_user=c.user}CF.modal.show(a.regForm||"<div class='cf_widgetLoader' widgettype='IGA.widget.RegForm' options='{syndicate:\"true\",syndicationCategory:\"registration\"}'></div>",c);a.modalHiddenEvt=CF.modal.events.listen("modal_hidden",function(){a.hideModalOnCancel();IGA.showFlash()},true);CF.widget.registry.listenType("IGA.widget.RegForm","regform_complete",function(){a.hideModalOnSuccess();IGA.showFlash();a.joinGroup()})};a.joinGroup=function(){CF.context.api_v1.group_member_add(IGA.activityEvents.joinedGroup,IGA.config.group.id)};a.processRemoteAuthToken=function(c){c=CF.extend({cleanParams:false},(c||{}));a._authTokenOpts=c;var d=CF.url.params();var e=d[a.loginProviderParam];if(e){var f=d[d[a.loginTokenNameParam]];loginInProg=CF.build(".cf_login_in_progress",[CF.build("h3","We are processing your login request"),CF.build("b","Please wait...")]);CF.context.whenLoaded(function(){if(!CF.context.auth_user){jQuery(function(){CF.modal.show(loginInProg,null,{width:500});b.api_v1.loginreg_auth(a.tokenValidated,f,e)})}},true)}};a.tokenValidated=function(d,f){if(f){CF.modal.show(CF.build(".cf_login_in_progress",[CF.build("h3","We are unable to log you in"),CF.build("b","Please try again"),CF.build("a","Close").click(CF.modal.hide)]))}else{if(d.loginSuccess){a.hideModalOnSuccess();CF.widget.reloadAll()}else{if(d.user){CF.context.auth_user=d.user;var c=CF.url.params();var e=c[a.loginProviderParam];if(e){IGA.hideFlash();CF.modal.events.listen("modal_hidden",IGA.showFlash);a.showRegForm({user:d.user,requirePass:false,provider:e})}}}}};return a}();IGA.RestV1=function(c,d,a){var b=CF.RestV1(c,d,a);b.comment_delete=function(g,h,f,e){e=b.safeParams(e);e.comment=h;e.reason=f;g=b.wrapHandleErrors(g);b.restCall("v1/comment/delete",g,e)};b.comment_rating_create=function(h,i,f,g){var e={};e=b.safeParams(e);e.comment=i;e.rating=f;e.value=g;h=b.wrapHandleErrors(h);b.restCall("v1/rating/comment/create",h,e)};b.user_attribute_add=function(h,g,f,i,e){e=b.safeParams(e);if(g){e.user=g}e.attribute=f;e.value=i;h=b.wrapHandleErrors(h);b.restCall("v1/attribute/user/add",h,e)};b.user_attribute_get=function(h,g,f,e){e=b.safeParams(e);e.user=g;if(f){e.attribute=f}h=b.wrapHandleErrors(h);b.restCall("v1/attribute/user/get",h,e)};b.image_size_get=function(h,e,f,g){g=b.safeParams(g);g.uid=e;g.size=f;h=b.wrapHandleErrors(h);b.restCall("v1/size/image/get",h,g)};b.user_create=function(g,f,e){e=b.safeParams(e);if(f){e.user=f}g=b.wrapHandleErrors(g,"user");b.restCall("v1/user/create",g,e)};b.poll_vote=function(e,f){params={};params.answer_id=f;e=b.wrapHandleErrors(e);b.restCall("v1/poll/vote",e,params)};b.poll_get=function(g,f,e){e=b.safeParams(e);e.name=f;g=b.wrapHandleErrors(g);b.restCall("v1/poll/get",g,e)};b.activityevent_create=function(h,g,i,f,e){e=b.safeParams(e);e.category=g;e.performerid=i;e.performertype=f;h=b.wrapHandleErrors(h);b.restCall("v1/activityevent/create",h,e)};b.group_member_add=function(g,f,e){e=b.safeParams(e);e.group=f;g=b.wrapHandleErrors(g);b.restCall("v1/group/member/add",g,e)};b.group_browse=function(f,e){e=b.safeParams(e);f=b.wrapHandleErrors(f);b.restCall("v1/group/browse",f,e)};return b};IGA.widget={};IGA.widget.BecomeAMember=function(a,f,b,g,c){var d=CF.widget.SimpleWidget(a,f,b,g,c);var e=CF.session.instance;d.events=CF.EventPublisher();d.getDefaultTemplateBody=function(){var h="<div class='becomeafan'><h1>Welcome back [%user.display_name%]!</h1>                <h3>Would you like to become a member of [%group.name%]'s official website? </h3>                <button type='button' class='groupjoinsubmit'>Yes Sign me up!</button> <button type='button' class='dontasksubmit'>No thanks, don't ask me again.</button>                </div>";return h};d.bindEvents=function(h,i){h.find(".groupjoinsubmit").click(d.joinGroup);h.find(".dontasksubmit").click(d.dontAskAgain)};d.joinGroup=function(){CF.context.api_v1.group_member_add(d.complete,IGA.config.group.id)};d.dontAskAgain=function(){CF.context.api_v1.user_attribute_get(d.dontaskFetched,CF.context.auth_user.external_id,"fangroup_dont_ask")};d.dontaskFetched=function(i,h){if(h){CF.log("error fetching user attribute");CF.modal.hide()}else{if(i.attributes.length===1){d.dontasklist=i.attributes[0].value+","+IGA.config.group.id}else{d.dontasklist=IGA.config.group.id}CF.context.api_v1.user_attribute_add(function(){CF.modal.hide();e.put("dont_notify",true)},CF.context.auth_user.external_id,"fangroup_dont_ask",d.dontasklist)}};d.complete=function(){IGA.activityEvents.joinedGroup();e.remove("user_groups");d.events.fire("BecomeAMember_complete")};return d};IGA.widget.FanMembership=function(a,f,b,g,c){var d=CF.widget.SimpleWidget(a,f,b,g,c);var e=CF.session.instance;d.events=CF.EventPublisher();d.onStart=function(){if(CF.context.auth_user){d.load()}else{a.empty()}};d.onReload=function(){d.onStart()};d.getDefaultTemplateBody=function(){var h="<div class='cf_noprocess becomeafan' style='display:none;'>                        <div class='cf_widgetLoader' widgettype='IGA.widget.BecomeAMember' options='{syndicaton:true}'></div>                     </div>";return h};d.load=function(){var i=e.get("dont_notify");if(i){d.dontnotify=i;a.empty();return}var h=e.get("user_groups");d.user_groups=h;if(!h){d.getGroups()}else{if(typeof(d.dontnotify)==="undefined"){d.getAttributes()}else{d.loadComplete()}}};d.bindEvents=function(h,i){d.becomeafanModal=h.find(".becomeafan")};d.notifyAttrFetched=function(j,h){if(!h&&j.attributes.length>0){var i=j.attributes[0].value.split(",");jQuery.each(i,function(l,k){if(k===IGA.config.group.id){d.dontnotify=true;e.put("dont_notify",true)}})}d.loadComplete()};d.showJoinFanClub=function(){CF.modal.show(d.becomeafanModal.clone().removeClass("cf_noprocess"),{user:CF.context.auth_user,group:IGA.config.group},{fromTop:100,width:500,height:372});d.modalHiddenEvt=CF.modal.events.listen("modal_hidden",d.hideModalOnCancel);CF.widget.registry.listenType("IGA.widget.BecomeAMember","BecomeAMember_complete",d.hideModalOnSuccess);setTimeout(IGA.hideFlash,100)};d.hideModalOnSuccess=function(){if(d.modalHiddenEvt){CF.modal.events.unlisten(d.modalHiddenEvt)}CF.modal.hide();IGA.showFlash()};d.hideModalOnCancel=function(){IGA.showFlash();e.put("dont_notify",true)};d.loadComplete=function(){d.draw();d.events.fire("groups_loaded",d);if(!d.dontnotify){d.showJoinFanClub()}};d.groupsFetched=function(i,h){if(h){d.user_groups=null}else{d.user_groups=i.groups;e.put("user_groups",i.groups);d.getAttributes()}};d.getAttributes=function(){if(d.user_groups.length>0){var h=false;jQuery.each(d.user_groups,function(j,k){if(k.id===IGA.config.group.id&&k.is_member){e.put("dont_notify",true);h=true}else{if(k.id===IGA.config.group.id&&!k.is_member){CF.context.api_v1.user_attribute_get(d.notifyAttrFetched,CF.context.auth_user.external_id,"fangroup_dont_ask");h=true}}});if(!h){CF.context.api_v1.user_attribute_get(d.notifyAttrFetched,CF.context.auth_user.external_id,"fangroup_dont_ask")}}else{CF.context.api_v1.user_attribute_get(d.notifyAttrFetched,CF.context.auth_user.external_id,"fangroup_dont_ask")}};d.getGroups=function(){CF.context.api_v1.group_browse(d.groupsFetched,{user:CF.context.auth_user.external_id})};return d};IGA.widget.GroupMemberView=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);d.onStart=function(){d.getGroupList()};d.onReload=function(){d.getGroupList()};d.getGroupList=function(){CF.context.api_v1.group_browse(d.handleGroupListLoad,c)};d.handleGroupListLoad=function(g,h){if(h){g=[]}d.groupList=g.groups;d.draw()};d.getData=function(){return{groupList:d.groupList}};d.getDefaultTemplateBody=function(){var g="<ul class='cf_for' binding = 'groupList'> 				        <li class='cf_item'>							<div class='iga_profile_row'>							    <label>[% item.description %]</label>					            <p><img class='cf_if' binding='item.group_photo_url' rendertag='true' alt='[% item.description %]' cf_src='[% item.group_photo_url %]' ></img></p>				            </div>				        </li> 			        </ul>";return g};return d};IGA.widget.UserProfile=function(a,f,b,g,d){var e=CF.widget.SimpleWidget(a,f,b,g,d);var c=CF.url.params();e.onStart=function(){e.events.listen("profile_loaded",e.draw);e.events.listen("profileUserData_loaded",e.getUserAttributes);e.getUserProfile()};e.onReload=function(){e.getUserProfile()};e.getData=function(){return{user:e.user,canEdit:e.canEdit,canView:e.canView,attributes:e.attributes,profile_photo:e.profilePhoto,showBasicInfo:e.showBasicInfo(),showPersonalInfo:e.showPersonalInfo(),showContactInfo:e.showContactInfo()}};e.showBasicInfo=function(){return(e.attributes.sex&&e.attributes.sex!=="0"&&e.attributes.sex_show)||(e.attributes.location&&e.attributes.location.length>0)||(e.attributes.relationship&&e.attributes.relationship.length>0)||(e.attributes.favorite_website&&e.attributes.favorite_website.length>0)};e.showPersonalInfo=function(){return(e.attributes.personal_statement&&e.attributes.personal_statement.length>0)||(e.attributes.about_me&&e.attributes.about_me.length>0)};e.showContactInfo=function(){return(e.attributes.aim&&e.attributes.aim.length>0)||(e.attributes.msn&&e.attributes.msn.length>0)||(e.attributes.yahoo&&e.attributes.yahoo.length>0)||(e.attributes.icq&&e.attributes.icq.length>0)};e.getUserAttributes=function(i,h){CF.context.api_v1.user_attribute_get(h.profileAttrLoaded,h.user.external_id)};e.profileAttrLoaded=function(h,j){if(j){CF.error("Error fetching user attributes",j);e.events.fire("profile_loaded",e);return}else{e.attributes={};jQuery.each(h.attributes,function(l,k){if(k.value!=="undefined"){e.attributes[k.name]=k.value;e.attributes[k.name+"_show"]=k.privacy==="USERS"?true:""}});if(e.attributes.profileImageId){var i=function(l,k){if(k){CF.error("Error fetching user attributes",k)}else{e.profilePhoto=CF.arrayFind(l.image_list,function(n,m){return e.attributes.profileImageId===m.uid}).medm_r}e.events.fire("profile_loaded",e)};CF.context.api_v1.image_size_get(i,e.attributes.profileImageId,"medm_r")}else{e.profilePhoto=e.user.profile_photo_url;e.events.fire("profile_loaded",e)}}};e.getUserProfile=function(){if(c.id){e.userId=CF.url.decUri(c.id);e.canEdit=false;CF.context.api_v1.user_get(e.userProfileLoaded,e.userId)}else{if(CF.context.auth_user){e.user=CF.context.auth_user;e.canEdit=true;e.events.fire("profileUserData_loaded",e)}else{e.canView=false;CF.error("UserProfile: user is not authenticated and no user id present")}}};e.userProfileLoaded=function(h,i){if(i){CF.error("Error fetching user",i);return}e.user=h;e.userId=h.external_id;e.events.fire("profileUserData_loaded",e)};e.attributeSaved=function(h,i){if(i){}else{if(e.basicInfoAttributes===1){e.events.fire("attributes_saved",e);a.find(".profile_editor_form:visible").slideUp()}else{e.basicInfoAttributes--}}};e.saveStatement=function(){e.personalInfo=a.find("#personal_info .profile_editor");if(CF.validate.run(e.personalInfo)){var h=e.personalInfo.find("textarea");e.basicInfoAttributes=h.length;h.each(function(k,j){j=jQuery(j);var m=j.val();var l=j.attr("id").replace("iga_","");if(l){CF.context.api_v1.user_attribute_add(e.attributeSaved,false,l,m,{privacy:"USERS"})}})}else{e.events.fire("account_validate_failed",e)}};e.saveContact=function(){e.contactInfo=a.find("#contact_info .profile_editor_form");if(CF.validate.run(e.contactInfo)){var h=e.contactInfo.find("input");e.basicInfoAttributes=h.length;h.each(function(k,j){j=jQuery(j);var m=j.val();var l=j.attr("id").replace("iga_","");if(l){CF.context.api_v1.user_attribute_add(e.attributeSaved,false,l,m,{privacy:"USERS"})}})}else{e.events.fire("account_validate_failed",e)}};e.saveProfile=function(){if(CF.validate.run(a)){var i=a.find("#basic_info .profile_editor_form input[type='text']");e.basicInfoAttributes=i.length+1;var h={};h.attribute="sex";h.value=a.find("#sex").val();h.privacy=a.find("#sex_visibility:checked").length===1?"USERS":"SELF";CF.context.api_v1.user_attribute_add(e.attributeSaved,false,h.attribute,h.value,{privacy:h.privacy});i.each(function(k,j){j=jQuery(j);var m=j.val();var l=j.attr("id").replace("iga_","");if(l){CF.context.api_v1.user_attribute_add(e.attributeSaved,false,l,m,{privacy:"USERS"})}})}else{e.events.fire("profile_validate_failed",e)}};e.saveAccountComplete=function(h,j){if(j){CF.error("Error updated user account",j)}else{e.accountInfo.slideUp();var i=CF.widget.registry.getType("IGA.widget.UserLoginStatus");CF.context.auth_user=h;jQuery.each(i,function(l,k){k.widget.reload()})}};e.saveAccount=function(){e.accountInfo=a.find("#account_info .profile_editor_form");if(CF.validate.run(e.accountInfo)){var h={};e.accountInfo.find("input").each(function(k,j){j=jQuery(j);var m=j.val();var l=j.attr("id");if(l){h[l.replace("iga_","")]=m}});CF.context.api_v1.user_create(e.saveAccountComplete,e.user.external_id,h)}else{e.events.fire("account_validate_failed",e)}};e.showSection=function(){var h=$(this).next();a.find(".profile_editor_form").each(function(k,j){$(j).not(h).hide()});if(h.is(":hidden")){h.slideDown()}else{h.slideUp()}};e.editInfo=function(h){h.preventDefault();a.find(".profile_editor_form").each(function(k,j){$(j).hide()});a.find(".info_section").each(function(k,j){$(j).removeClass("view_mode").addClass("edit_mode")});a.find(".profile_editor_form:first").slideDown();$(this).hide();$("#done_edit_box").show()};e.doneEditing=function(){a.find("#info_edit a").show();$("#done_edit_box").hide();a.find(".info_section").each(function(j,h){$(h).removeClass("edit_mode").addClass("view_mode")});e.reload()};e.bindEvents=function(h,i){h.find(".cf_activate_user").click(e.activate);h.find("#iga_profile_submit").click(e.saveProfile);h.find("#iga_account_submit").click(e.saveAccount);h.find("#iga_statement_submit").click(e.saveStatement);h.find("#iga_contact_submit").click(e.saveContact);h.find("h3.selector").click(e.showSection);h.find("#info_edit a").click(e.editInfo);h.find("#done_edit_box button").click(e.doneEditing)};return e};IGA.widget.RevealedContent=function(a,e,b,f,c){var d=CF.widget.SimpleWidget(a,e,b,f,c);d.getDefaultTemplateBody=function(){return"<div class='cf_if' binding='opts.showReveal'>     	        <p>Thank you for your message</p><br />Download your reward <a href='www.google.com'>Here</a><br />     	    </div>    	    "};return d};IGA.widget.TweetToVote=function(f,a,g,e,i){i=i||{};var h=CF.context;var b=CF.login;var d={};d[b.loginTokenNameParam]="token";d[b.loginProviderParam]="rpx";var c=IGA.widget.PostToReveal(f,a,g,e,i);c.login=function(){var j=f.find("input[type='radio']:checked").val();CF.cookie.createCookie("iga_tweet_text",j,0,2);var k=f.find("input[type='radio']:checked").attr("alt");d.tweeter_vote=j;d.tweeter_message="I just voted for @souljaboytellem to perform "+k+" at BET @hiphopawards! http://bit.ly/2DP9HR";var m=i.redirect||location.href;var l=i.action||"https://signup.universalmusic.com/twitter/start?token_url=";m=CF.url.removeParam([b.loginProviderParam,b.loginTokenNameParam,"token"],m);m=CF.url.addParams(d,m);m=CF.url.removeHash(m);var n=CF.context.api_v1.loginreg_rpxforward_url(m);window.open(l+encodeURIComponent(n),"TwitterRedirect","width=700,height=600,scrollbars=no,resizable=no,toolbar=no,menubar=no")};c.bindEvents=function(j,k){j.find("#iga_postBtn").click(c.login)};c.postToTwitterHandler=function(l){var k=CF.url.fromQueryString(location.href)["tweeter_message"];var m=CF.url.fromQueryString(location.href)["tweeter_vote"];if(k){var j=i.autoFollowUserName||"";var n=i.autoFollow||false;$.ajax({type:"POST",url:"../../twitter/TwitterHandler.aspx/PostToTwitter",data:"{'identityUrl':'"+l+"', 'message':'"+k+"','autoFollow':'"+n+"', 'autoFollowUserName':'"+j+"'}",contentType:"application/json; charset=utf-8",dataType:"json",success:function(o){if(o.d&&o.d.Success===true){CF.cookie.eraseCookie("iga_tweet_text");CF.modal.hide();var p={showReveal:true};i=CF.extend(p,(i||{}));c.renderRevealWidget()}else{CF.modal.show(CF.build(".iga_postTo",[CF.build("h3","Sorry, we were unable to post message"),CF.build("b","Please try again"),CF.build("a","Close").click(CF.modal.hide)]))}}});CF.context.api_v1.poll_vote(function(){CF.log("vote casted")},m)}};return c};IGA.widget.PostToReveal=function(f,a,g,e,i){i=i||{};var h=CF.context;var b=CF.login;var d={};d[b.loginTokenNameParam]="token";d[b.loginProviderParam]="rpx";var c=CF.widget.SimpleWidget(f,a,g,e,i);c.onStart=function(){CF.log("onstart");c.draw();c.checkCookie()};c.onReload=function(){CF.log("reload");c.draw();c.checkCookie()};c.getDefaultTemplateBody=function(){return"<div class='cf_if' binding='!opts.showReveal'>                 <div class='tweet'>			        <p class='custom'>                        <textarea style='height: 50px; width: 296px; position:relative; top: 20px; left:19px;' id='iga_postText' cols='20' rows='2'></textarea>            	        <span style='color: White; padding-left:20px' id='tweet_static'>#SergeyTheOne</span>                        <span style='color: White;' id='tweet_static_url'>http://intersco.pe/AS</span>                        <input type='image' style='border-width: 0px; position:relative; left:-60px; top:40px;' src='/_assets/img/btn_tweet.v2.gif' id='iga_postBtn' />                    </p>    	         </div>    	       </div>    	       <div class='cf_widgetLoader' widgettype='IGA.widget.RevealedContent'></div>"};c.getData=function(){return{opts:i}};c.checkCookie=function(){if(CF.cookie.readCookie("iga_tweet_text")){var j=CF.url.params();var l=j[b.loginProviderParam];postInProg=CF.build(".iga_request_in_progress",[CF.build("h3","We are processing your message"),CF.build("b","Please wait...")]);CF.modal.show(postInProg,null,{width:500});if(l){var m=j[j[b.loginTokenNameParam]];CF.context.whenLoaded(function(){if(!CF.context.auth_user){jQuery(function(){h.api_v1.loginreg_auth(c.postTo,m,l)})}else{jQuery(function(){f.html("");c.postToTwitterHandler(c.getIdentity(CF.context.auth_user,"twitter"))})}},true)}else{if(CF.context.auth_user){f.html("");c.postToTwitterHandler(c.getIdentity(CF.context.auth_user,"twitter"))}else{var k=CF.build(".iga_request_in_progress",[CF.build("h3","User is not authorized, please try again")]);CF.modal.show(k,null,{width:500});CF.cookie.eraseCookie("iga_tweet_text")}}CF.log("cookieisset")}else{}};c.hideRegForm=function(k,l){c.regFormContent.html("<h2>Thank you for becoming a member! You will now be logged in</h2>");CF.context.auth_user=l.user;var j=CF.widget.registry.getType("IGA.widget.UserLoginStatus");jQuery.each(j,function(n,m){m.widget.reload()})};c.postTo=function(k,m){errorPosting=CF.build(".iga_postTo",[CF.build("h3","Sorry, we were unable to post message"),CF.build("b","Please try again"),CF.build("a","Close").click(CF.modal.hide)]);if(m){CF.modal.show(errorPosting)}else{if(k.loginSuccess){CF.log("ctx.reload fired");h.reload()}else{CF.context.auth_user=k.user;c.regFormContent=jQuery("<div class='cf_widgetLoader' widgettype='IGA.widget.RegForm'></div>").show();f.html(c.regFormContent);var l=CF.template.Engine();c.regFormContent=l.render(c.regFormContent,{user:k.user,requirePass:false,provider:"rpx"},true);var j=l.startSubWidgets();c.regFormContent.find("h2").html("Become a fan one click away, just enter your email below");c.regFormContent.find(".cf_regform_submit").html("Become a member!");CF.widget.registry.listenType("IGA.widget.RegForm","regform_complete",c.hideRegForm);c.postToTwitterHandler(c.getIdentity(k.user,"twitter"))}}};c.getIdentity=function(j,m){var n=j.alt_ids.length;for(var k=0;k<n;k++){if(j.alt_ids[k].provider===m){return j.alt_ids[k].id}}};c.postToTwitterHandler=function(k){message=CF.cookie.readCookie("iga_tweet_text");var j=i.autoFollowUserName||"";var l=i.autoFollow||false;$.ajax({type:"POST",url:"../../twitter/TwitterHandler.aspx/PostToTwitter",data:"{'identityUrl':'"+k+"', 'message':'"+message+"','autoFollow':'"+l+"', 'autoFollowUserName':'"+j+"'}",contentType:"application/json; charset=utf-8",dataType:"json",success:function(m){if(m.d&&m.d.Success===true){CF.cookie.eraseCookie("iga_tweet_text");CF.modal.hide();var n={showReveal:true};i=CF.extend(n,(i||{}));c.renderRevealWidget()}else{CF.modal.show(CF.build(".iga_postTo",[CF.build("h3","Sorry, we were unable to post message"),CF.build("b","Please try again"),CF.build("a","Close").click(CF.modal.hide)]))}}})};c.renderRevealWidget=function(){c.revealContent=jQuery("<div class='cf_widgetLoader' widgettype='IGA.widget.RevealedContent'></div>").show();f.prepend(c.revealContent);var k=CF.template.Engine();c.revealContent=k.render(c.revealContent,{opts:i},true);var j=k.startSubWidgets()};c.bindEvents=function(j,k){c.downloadReward=j.find(".iga_tweet_download");if(CF.context.auth_user){j.find("#iga_postBtn").click(c.postMessage)}else{j.find("#iga_postBtn").click(c.login)}};c.postMessage=function(){CF.cookie.createCookie("iga_tweet_text",$("#iga_postText").val(),0,2);window.location=i.redirect||location.href};c.login=function(){CF.cookie.createCookie("iga_tweet_text",$("#iga_postText").val(),0,2);var k=i.redirect||location.href;var j=i.action||"https://signup.universalmusic.com/twitter/start?token_url=";k=CF.url.removeParam([b.loginProviderParam,b.loginTokenNameParam,"token"],k);k=CF.url.addParams(d,k);k=CF.url.removeHash(k);var l=CF.context.api_v1.loginreg_rpxforward_url(k);IGA.postWith(j+encodeURIComponent(l))};return c};IGA.widget.CaptchaShowLink=function(a,e,b,f,c){var d=CF.widget.CaptchaShowLink(a,e,b,f,c);d.fireSuccess=function(g,i,h){CF.context.auth_user=i;CF.login.showRegForm({user:i,requirePass:true,provider:"cf-captcha"})};return d};IGA.widget.RegForm=function(a,e,b,f,c){var d=CF.widget.RegForm(a,e,b,f,c);d.getDefaultTemplateBody=function(){return"<div class='cf_regform cf_if' binding='user' rendertag='true'> 					<h2>Create your Profile</h2>					<div class='cf_regform_row'>						<label for='cf_email'>Email address:</label>						<input type='text' id='cf_email' class='cf_validate cf_required' validator='email' validator_msg='Please enter a valid email address' value='[%user.email%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_if' binding='requirePass'>						<div class='cf_regform_row'>							<label for='cf_password'>Password:</label>							<input type='password' id='cf_password' class='cf_validate' validator='required' validator_msg='Please enter a password' value=''></input>							<div class='cf_clear'> </div>						</div>					</div>					<div class='cf_regform_row'>						<label for='cf_display_name'>Display name:</label>						<input type='text' id='cf_display_name' class='cf_validate' validator='required' validator_msg='Please enter a display name' value='[%user.display_name%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_email'>First name:</label>						<input type='text' id='cf_first_name' class='cf_validate' validator='alpha' validator_msg='Please enter your first name' value='[%user.firstName%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<label for='cf_email'>Last name:</label>						<input type='text' id='cf_last_name' class='cf_validate' validator='alpha' validator_msg='Please enter your last name' value='[%user.lastName%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>					    <label for='cf_profile_photo_url'>Avatar Image Upload</label>					    <div id='uploadWidget' class='cf_widgetLoader' widgettype='CF.widget.ImageUpload' options=\"{iframeUrl:'/_assets/iframe/iframe_target.html', params:{title:'My test'}}\"></div>					</div>					<div class='cf_regform_row' style='display:none'>						<label for='cf_profile_photo_url'>Avatar Url:</label>						<input type='text' id='cf_profile_photo_url' class='cf_validate' validator='urlImage' validator_msg='Please enter a valid avatar url' value='[%user.profile_photo_url%]'></input>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_row'>						<div class='cf_if' binding='user.profile_photo_url'>							<img class='cf_avatar_preview' src='[%user.profile_photo_url%]'></img>						</div>						<div class='cf_clear'> </div>					</div>					<div class='cf_regform_error_msg'></div>					<div class='cf_regform_row cf_regform_syndicate' style='display:none;'>		                <label> </label>		                <input type='checkbox' class='cf_regform_syndicate_cbx' checked='checked'>Let my friends know about this site                    </div>					<div class='cf_regform_button_row'>						<button type='button' class='cf_regform_submit'>Save</button>					</div>					<div class='cf_else'>						You must be logged in with an account in the 'Unverified' state to use this widget.					</div>				</div>		"};d.processForm=function(){d.errorMsg.html("");if(CF.validate.run(a)){var g={};a.find("input, textarea").each(function(j,h){h=jQuery(h);var l=h.val();var k=h.attr("id");if(l&&k){g[k.replace("cf_","")]=l}});if(f.provider==="cf-captcha"){g.external_id=hex_md5(g.email).toLowerCase();g.password=hex_md5(g.password).toLowerCase()}g.provider=f.provider;CF.context.api_v1.loginreg_register(d.formComplete,g)}else{d.events.fire("regform_validate_failed",d)}};d.bindEventsBase=d.bindEvents;d.bindEvents=function(g,h){d.bindEventsBase(g,h);CF.widget.registry.listenType("CF.widget.ImageUpload","imageupload_success",d.imageUpdateForm);d.events.listen("regform_complete",d.addImageAttribute)};d.imageUpdateForm=function(i,g,h,j){a.find("#cf_profile_photo_url").val(g.image.thumb_nail_url);a.find(".cf_avatar_preview").hide();d.imageId=g.image.uid};d.addImageAttribute=function(h,i,g){CF.context.api_v1.user_attribute_add(function(j,k){if(k){CF.log("Error adding image Attribute"+k.error_detail)}},i.user.external_id,"profileImageId",g.imageId)};d.showRegForm=function(g){CF.modal.show(d.regForm||"<div class='cf_widgetLoader' widgettype='IGA.widget.RegForm' options='{syndicate:true}'></div>",g);d.modalHiddenEvt=CF.modal.events.listen("modal_hidden",d.hideModalOnCancel,true);CF.widget.registry.listenType("IGA.widget.RegForm","regform_complete",d.hideModalOnSuccess)};d.formComplete=function(h,j){if(j){var g;if(j.error_code==164){g=CF.build("div",["The username you've selected is already taken.  Please select a different username."])}else{g=CF.build("div","Error: "+j.error_str+" - "+j.error_detail)}g.hide();d.errorMsg.append(g);g.fadeIn();d.events.fire("regform_error",j,d)}else{if(c.syndicate&&d.isSyndicated){var i=d.getActiveSyndProviderNames();d.syndicate(i,c.syndicationCategory,f.user.external_id,c.syndicationUrl,IGA.config.group.description,d.syndicationComplete)}d.events.fire("regform_complete",h,d)}};return d};IGA.widget.UserLoginStatus=function(a,e,b,f,c){var d=CF.widget.UserLoginStatus(a,e,b,f,c);d.showModal=function(){IGA.hideFlash();CF.modal.events.listen("modal_hidden",IGA.showFlash);CF.login.events.listen("login_success",function(){CF.modal.hide()});CF.modal.show(d.loginModal.clone().removeClass("cf_noprocess"),d.getData(),{width:800,height:450,fixedHeight:true})};return d};IGA.widget.BasicLogin=function(a,e,b,f,c){var d=CF.widget.BasicLogin(a,e,b,f,c);d.processLogin=function(){d.error=null;CF.login.events.listen("login_fail",d.setLoginError);CF.login.login(hex_md5(d.usernameElem.val()).toLowerCase(),hex_md5(d.passwordElem.val()).toLowerCase())};return d};IGA.widget.RPXLogin=function(a,e,b,f,c){var d=CF.widget.RPXLogin(a,e,b,f,c);d.getDefaultTemplateBody=function(){return"<iframe	src='[% iframeUrl %]' scrolling='no' frameBorder='no' style='width: 330px; height: 240px;'></iframe>"};return d};IGA.widget.AddToCrowdList=function(a,e,b,f,c){var d=CF.widget.AddToCrowdList(a,e,b,f,c);d.addToListBase=d.addToList;d.addToList=function(){d.addToListBase();CF.context.api_v1.activityevent_create(function(g,h){if(h){CF.log("Error adding activity event")}else{CF.log("Add to Favorites Activity Event Added")}},"AddToCrowdList",CF.context.auth_user.external_id,"user",params={message:"Added "+f.title+" to my favorites",containerid:f.uid,containertype:"entity"})};return d};IGA.widget.StarEntityRating=function(a,e,b,f,c){var d=CF.widget.StarEntityRating(a,e,b,f,c);d.onStartBase=d.onStart;d.onStart=function(){d.onStartBase();d.events.listen("rating_created",d.addActivityEvent)};d.addActivityEvent=function(){CF.context.api_v1.activityevent_create(function(g,h){if(h){CF.log("Error adding activity event")}else{CF.log("Add to Favorites Activity Event Added")}},"AddToCrowdList",CF.context.auth_user.external_id,"user",params={message:"rated "+f.title,containerid:f.uid,containertype:"entity"})};return d};IGA.widget.Comments=function(){var b={};var a={nested:false,syndicate:true,syndicationCategory:"comment",syndicationUrl:location.href};b.init=function(){b.entityId=$("#comments_entityid").attr("value");if(CF.context.auth_user){CF.widget.SyndicationMixin(b);b.detachEvents();b.attachEvents();b.auth_user=CF.context.auth_user.external_id;b.updateDeleteCommentLinks();b.updateLikeCommentSection();$(".comments_add_box_submit input").each(function(){$(this).removeAttr("disabled")});$(".add_comment").each(function(){if($(this).prev().hasClass("comment_wrapper")){$(this).show()}});$("#comment_txt").unbind("click");$("#comment_txt").val("").Watermark("Post your comment.");$(".add_comment_text").val("").Watermark("Type you comment here...");var d="/_shared/images/member/50/NoImage.jpg";if(CF.context.auth_user.profile_photo_url){d=CF.context.auth_user.profile_photo_url}var e=new Image();e.src=d;e.className="RoundedImage_Image";e.alt=CF.context.auth_user.display_name;$(".add_comment_box_image img").replaceWith(e).css("visibility","visible");if(a.syndicate&&b.canSyndicate()){$(".cf_comment_syndicate").show();var c=CF.widget.registry.getType("CF.widget.SyndicationIcons");jQuery.each(c,function(g,f){CF.widget.SyndicationMixin(f.widget);f.widget.reload()})}}else{b.detachEvents();b.attachLoginMsg();$("#comment_txt").val("Please login to post comments.").css("color","#aaa").click(b.pleaseLoginMsg);$(".add_comment").hide();$("#comment_post").attr("disabled","disabled");$(".comments_add_box_submit input").each(function(){$(this).attr("disabled","disabled")})}};b.pleaseLoginMsg=function(c){c.preventDefault();IGA.hideFlash();$(document).bind("close.facebox",IGA.showFlash);$.facebox.settings.faceboxHtml='                        <div id="facebox" style="display:none;">                           <div class="popup">                             <table>                               <tbody>                                 <tr>                                   <td class="tl"/><td class="b"/><td class="tr"/>                                 </tr>                                 <tr>                                   <td class="b"/>                                   <td class="body">                                     <div class="content">                                     </div>                                     <div class="footer">                                       <a href="#" class="close">                                         <img src="/facebox/closelabel.gif" title="close" class="close_image" />                                       </a>                                     </div>                                   </td>                                   <td class="b"/>                                 </tr>                                 <tr>                                   <td class="bl"/><td class="b"/><td class="br"/>                                 </tr>                               </tbody>                             </table>                           </div>                         </div>';$.facebox("Please Login Before You Can Comment, Flag or Like.")};b.getChildCommentsBody=function(e){var c="/_shared/images/member/50/NoImage.jpg";if(e.user.profile_photo_url){c=e.user.profile_photo_url}var d="<div class='comment_wrapper'>                         <div class='comment_profile_pic'><a href='#' title='"+e.user.display_name+"'></a>                         <div class='RoundedImage RoundedImage_SMALL'>                         <img src='"+c+"' alt='"+e.user.display_name+"' class='RoundedImage_Image'>                         <div class='RoundedImage_CornersSprite_Small'></div></div></div><div class='comment_content'>                         <div class='comment_actions'><a id='"+e.id+"' title='Click here to remove this comment' class='x_to_hide' style='display:block'>x</a>                         <span class='comment_meta_data'><a id='"+e.user.external_id+"' href='#'>"+e.user.display_name+"</a> <span class='comment_meta_data date'>"+IGA.relative_time(e.created)+"</span> </span></div>                         <div class='comment_text'><div class='comment_actual_text'>"+e.body+"</div></div></div></div>";return d};b.updateDeleteCommentLinks=function(){var c=CF.context.auth_user.external_id;$(".x_to_hide").each(function(){var d=$(this).parent(".comment_actions").find(".comment_meta_data > a");if(c===d.attr("id")){$(this).css("display","block");$(this).click(function(e){e.preventDefault();b.deleteChildComment($(this).attr("id"),$(this).parents(".comment_wrapper:first"))})}})};b.updateLikeCommentSection=function(){var c=$(".thumbsup_wrapper");var d="";if(c.length>0){CF.context.api_v1.comment_entity_get(function(e){var e=e;c.each(function(){var f=$(this).parents(".comment_post").attr("id");for(var g=0;g<e.length;g++){if(e[g].id==f){if(e[g].ratings[0].user_rating!==0){if(e[g].ratings[0].count>1){if(e[g].ratings[0].count===2){$(this).html("<div>You and one other person like this</div>")}else{$(this).html("<div>You and "+(e[g].ratings[0].count-1)+" people like this</div>")}}else{$(this).html("<div>You like this</div>")}$(this).parents(".comment_body").find(".likecomment").attr("voteval",0).text("unlike")}else{if(e[g].ratings[0].user_rating===0&&e[g].ratings[0].count===1){$(this).hide()}else{if(e[g].ratings[0].count===1){$(this).html("<div>One other person likes this</div>")}else{$(this).html("<div>"+e[g].ratings[0].count+" people like this</div>")}}}break}}})},b.entityId,{user:b.auth_user,rating:"ThumbsUp",depth:0})}};b.deleteChildComment=function(d,e){var c={};CF.context.api_v1.comment_delete(b.deleteChildCommentText,d,"Deleted",c);e.fadeOut("slow")};b.deleteChildCommentText=function(c){if(c.error_code==0){}};b.postComment=function(){var f=$("#comments_entityid").attr("value");var e=$("#comments_entityid").attr("name");var d=$("#comment_txt").val();if(d){var c={};CF.context.api_v1.comment_entity_create(b.displayCommentText,f,d,c);b.createActivityEvent("commented on","AddComment")}};b.postChildComment=function(e){e.preventDefault();var d=this.form.entityid.value;var f=$("#comments_entityid").attr("name");var g=this.form.parentcommentid.value;var h=this.form.add_comment_text.value;b.activeForm=this.form;if(h){var c={parent:g};CF.context.api_v1.comment_entity_create(function(j,k){if(!k){var i=b.getChildCommentsBody(j);$(b.activeForm).before(i);b.activeForm.add_comment_text.value="";b.updateDeleteCommentLinks()}else{if(k.error_code===106){CF.login.logout();$.facebox("Please Login Before You Can Comment, Flag or Like.")}else{alert("Error code: "+k.error_code)}}},d,h,c);b.createActivityEvent("commented on","AddComment")}};b.createActivityEvent=function(d,c){var f=$("#comments_entityid").attr("value");var e=$("#comments_entityid").attr("name");CF.context.api_v1.activityevent_create(function(g,h){if(h){CF.log("Error adding activity event")}else{CF.log("Comment Activity Event Added")}},c,CF.context.auth_user.external_id,"user",params={message:d+" "+e,containerid:f,containertype:"entity"})};b.displayCommentText=function(h,c){if(c){CF.error("Error posting comment",c)}else{var d=b.parseParentCommentTemplate(h);if(document.getElementById("#comments_wrapper")===null){$("#comment_main").after('<div id="comments_wrapper">'+d+"</div>")}else{$("#comments_wrapper").prepend(d)}var g=$(".comment_post:first");g.show(function(){g.slideDown("slow",function(){b.attachEvents();g.find(".add_comment_text").Watermark("Type you comment here...");$("#comment_post").removeAttr("disabled")})});var f=$("#comment_txt").val("");$("#comment_post").removeAttr("disabled");if(a.syndicate&&jQuery(".cf_syndication_icon input:checked").length>0){var e=[];$("#s_comments .cf_syndication_icon input").each(function(i){e.push($(this).val())});b.syndicate(e,a.syndicationCategory,h.id,a.syndicationUrl)}}};b.likeComment=function(c){c.preventDefault();b.temp={};var d=$(this).parents(".comment_post").attr("id");b.temp.val=$(this).attr("voteval");b.temp.selector=$(this);CF.context.api_v1.comment_rating_create(function(f){if(f.error_code===0){if(b.temp.val==="1"){var e=b.temp.selector.parents(".comment_body").find(".thumbsup_wrapper");if(e.length>0){e.text("you like this").slideDown("slow")}else{b.temp.selector.parents(".comment_body").find(".comments_list_wrapper").prepend('<div class="thumbsup_wrapper">You like this</div>').slideDown("slow")}b.temp.selector.text("Unlike");b.temp.selector.attr("voteval",0)}else{b.temp.selector.parents(".comment_body").find(".thumbsup_wrapper").fadeOut("slow");b.temp.selector.text("Like");b.temp.selector.attr("voteval",1)}}},d,"ThumbsUp",b.temp.val);b.createActivityEvent("likes comment on","LikeComment")};b.flagComment=function(c){b.flagInfo={};b.flagInfo.comment=$(this).parents(".comment_post").attr("id");b.flagInfo.target=$(this);jQuery.facebox({div:"#offensive"});$("#offensiveSubmit").click(b.flagSubmit);c.preventDefault()};b.flagSubmit=function(e){e.preventDefault();jQuery(document).trigger("close.facebox");var d=$("#flagcomment").val();var c={desc:d};CF.context.api_v1.flag_comment(function(){b.flagInfo.target.css("color","red").text("Flagged")},b.flagInfo.comment,c)};b.parseParentCommentTemplate=function(g){$("#UIParent_Comment_Template .comment_box");var d=document.getElementById("UIParent_Comment_Template");var c=innerXHTML(d);var e=c.replace(/Author_parse/g,g.user.display_name);e=e.replace(/AuthorID_parse/g,g.user.external_id);e=e.replace(/Copy/g,g.body);e=e.replace(/CommentId/g,g.id);e=e.replace(/DateRelative/g,IGA.relative_time(g.created));var f="/_shared/images/member/50/NoImage.jpg";if(g.user.profile_photo_url){f=g.user.profile_photo_url}e=e.replace(/src=".*ThumbnailImage"/g,'src="'+f+'"');e=e.replace(/EntityId/g,$("#comments_entityid").attr("value"));return e};b.attachEvents=function(){$("#comment_post").click(b.postComment);$(".toggle_comment").click(IGA.commentsToggle.toggleComment);$(".likecomment").click(b.likeComment);$(".flagcomment").click(b.flagComment);$(".submit_child_comment").click(b.postChildComment);IGA.showFlash()};b.detachEvents=function(){$("#comment_post").unbind();$(".toggle_comment").unbind();$(".likecomment").unbind();$(".flagcomment").unbind()};b.attachLoginMsg=function(){$("#comment_post").click(b.pleaseLoginMsg);$(".toggle_comment").click(b.pleaseLoginMsg);$(".likecomment").click(b.pleaseLoginMsg);$(".flagcomment").click(b.pleaseLoginMsg)};return b};IGA.commentsToggle=function(){var a={};a.toggleComment=function(b){b.preventDefault();var c=$(this).parents(".comment_body").find("#add_comment").hasClass("hidden");if(c){a.toggleChildComment(b)}else{a.toggleChildCommentSmall(b)}};a.toggleChildCommentSmall=function(c){if(c.target==undefined){var b=$(c).parents(".comment_body:eq(0)")}else{var b=$(c.target).parents(".comment_body:eq(0)")}b.find(".inline_comment_button").toggleClass("hidden");b.find(".add_comment_box_image").toggleClass("hidden");b.find(".add_comment_text").toggleClass("hidden_text")};a.toggleChildComment=function(c){var b=$(c.target).parents(".comment_body");b.find(".add_comment").toggle();b.find(".inline_comment_button").toggleClass("hidden");b.find(".add_comment_box_image").toggleClass("hidden");b.find(".add_comment_text").toggleClass("hidden_text")};return a}();IGA.widget.Start=function(){$(function(){var a=IGA.widget.Comments();CF.validate.addValidator("urlImage",/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?.+?(jpg|gif|png|bmp)/i);CF.context.whenLoaded(function(){a.init();if(CF.context.auth_user){$("#connect_providers").hide()}else{$("#connect_providers").show()}})})};IGA.widget.Start();(function(a){var b=new Array();a.Watermark={ShowAll:function(){for(var c=0;c<b.length;c++){if(b[c].obj.val()==""){b[c].obj.val(b[c].text);b[c].obj.css("color",b[c].WatermarkColor)}else{b[c].obj.css("color",b[c].DefaultColor)}}},HideAll:function(){for(var c=0;c<b.length;c++){if(b[c].obj.val()==b[c].text){b[c].obj.val("")}}}};a.fn.Watermark=function(d,c){if(!c){c="#aaa"}return this.each(function(){var g=a(this);var e="#000";b[b.length]={text:d,obj:g,DefaultColor:e,WatermarkColor:c};function h(){if(g.val()==d){g.val("");if(g.hasClass("hidden_text")){IGA.commentsToggle.toggleChildCommentSmall(g)}else{a("#comment_post").removeAttr("disabled")}}g.css("color",e)}function f(){if(g.val().length==0||g.val()==d){g.val(d);g.css("color",c);a("#comment_post").attr("disabled","disabled")}else{g.css("color",e)}}function i(){if(g.val().length==0||g.val()==d){IGA.commentsToggle.toggleChildCommentSmall(g)}f()}g.focus(h);g.blur(i);g.change(f);f()})}})(jQuery);function editCFMemberCommentWindow(f){var e=new Date();var b=screen.availWidth;var a=screen.availHeight;var c=640;var d=550;editCFMemberCommentWindowHandle=null;editCFMemberCommentWindowHandle=window.open("/cms/membercomments/cf_membercomment.aspx?CommentId="+f+"&rnd="+e.getTime(),"EditMemberComment","width="+c+",height="+d+",left="+((b-c-10)*0.5)+",top="+((a-d-30)*0.5)+",scrollbars=no");if(editCFMemberCommentWindowHandle.blur){editCFMemberCommentWindowHandle.focus()}}function deleteCFMemberCommentWindow(f){var e=new Date();var b=screen.availWidth;var a=screen.availHeight;var c=500;var d=200;deleteCFMemberCommentWindowHandle=null;deleteCFMemberCommentWindowHandle=window.open("/cms/membercomments/cf_delete.aspx?CommentId="+f+"&rnd="+e.getTime(),"EditMemberComment","width="+c+",height="+d+",left="+((b-c-10)*0.5)+",top="+((a-d-30)*0.5)+",scrollbars=no");if(deleteCFMemberCommentWindowHandle.blur){deleteCFMemberCommentWindowHandle.focus()}}IGA.relative_time=function(a){var b=a;var d=(arguments.length>1)?arguments[1]:new Date();var c=parseInt((d.getTime()-b)/1000,10);if(c<60){return"less than a minute ago"}else{if(c<120){return"about a minute ago"}else{if(c<(45*60)){return(parseInt(c/60,10)).toString()+" minutes ago"}else{if(c<(90*60)){return"about an hour ago"}else{if(c<(24*60*60)){return"about "+(parseInt(c/3600,10)).toString()+" hours ago"}else{if(c<(48*60*60)){return"1 day ago"}else{return(parseInt(c/86400,10)).toString()+" days ago"}}}}}}};IGA.hideFlash=function(){$("object").css({visibility:"hidden"});$("embed").css({visibility:"hidden"})};IGA.showFlash=function(){$("object").css({visibility:"visible"});$("embed").css({visibility:"visible"})};

