var $j = jQuery.noConflict();	
var loading = true;	
var starX = 12;
var flagthis = false;
var emailUrl;
var ie6 = false /*@cc_on || @_jscript_version < 5.7 @*/;

function fireSearch() {
	$hash.set([$j("#searchstring").val(), "searchResults"],["searchField", "sortOrder"] );
	$tabs.loading("gallerytabs");
	setTimeout("$items.loadLists([\""+$hash.array["gallerytabs"]+"\"], [\"gallerytabs\"], false)",500);
	}
function setFlagThis(id){
	flagthis = id;
	}
function acticateFlagSubmit(){
	if($j("#flagViolation").val() != "" && $j("#gg-flagReason").val() != "") {
		$j(".flagbox span.continue")
			.removeClass("inactive")
			.unbind()
			.click(function(){
				if($j(this).hasClass("inactive")) return;
				$j("#flag-loader").show();
				var u=(flagthis)?"/graphicscreator/graphics/flagItemComment?reasonText="+encodeURIComponent($j("#gg-flagReason").val())+"&complaintType="+ $j("#flagViolation").val() +"&itemId="+flagthis:
									"/graphicscreator/graphics/flagItem?reasonText="+encodeURIComponent($j("#gg-flagReason").val())+"&complaintType="+ $j("#flagViolation").val() +"&itemId="+$items.current;
				$j.ajax({
					dataType : "json" , 
					url: u,
					complete:function(){
						$j("#flag-loader, #TB_window .flagbox").hide()
						flagthis = false;
						}
						,
					success: function(json){
						if(json.status == "failure") $j("#flag-status p").text(txtUnabletoflag);
						else {
							$j("#flag-status p").text(txtItemHasBeenFlagged);
							if(flagthis)$j("#comments-li-"+flagthis+" .flag").fadeOut("slow");
							$j(this).unbind();
							}
						$j("#flag-status").show();
						},
					error: $j("#flag-status p").text(txtUnabletoflag)
					});
				});
		}
	else if($j("#flagViolation").val() == "" ||  $j("#gg-flagReason").val() == ""){
			$j(".flagbox span.continue")
			.addClass('inactive')
			.unbind();
		}
	}
$hash = {
		array: {	
		viewertabs : 'features', 
		gallerytabs : 'everyones', 
		sortOrder : 'createdDate', 
		periodType :  defaultPeriodFilter,
		page : '1',
		searchTextType : 'title',
		searchField : '',
		id: false,
		friendId: "all"
		},
	init: function(){
			if(document.location.hash != ""){
				var q = document.location.hash;
				q = q.replace('#','');
				var hi = q.split("&");
				for(var i=0; i < hi.length; i++) {
					if($hash.array[hi[i].split("=")[0]] || hi[i].split("=")[0]=="id" ||  $hash.array[hi[i].split("=")[0]]=="")
						$hash.array[hi[i].split("=")[0]] = hi[i].split("=")[1];
					}
				}
			},
	set:function(vals, attrs){ 
		$j.each(attrs, function(i,attr){
			if(attr == "gallerytabs" ) {
				$tabs.vars["gallerytabs"][$hash.array["gallerytabs"]].hash = {
					sortOrder : $hash.array['sortOrder'], 
					periodType : $hash.array['periodType'] ,
					friendId : $hash.array['friendId'] ,
					searchTextType : $hash.array['searchTextType'] ,
					searchField : $hash.array['searchField'] ,
					page : $hash.array['page'] 
					};
				$j.each($tabs.vars["gallerytabs"][vals[i]].hash, function(item){
					if(this != "") $j("#gg-search-tools .chooser #"+item+" #"+this).parents("ul").siblings("h4 div").text($j("#gg-search-tools .chooser #"+item+" #"+this).text());
					$hash.set([this],[item]);
					});
				$j("#searchstring").val($tabs.vars["gallerytabs"][vals[i]].hash.searchField);
				}
			$hash.array[attr] = vals[i];
			document.location.hash = jQuery.param($hash.array);
			})
		}
	}
$tabs = {
	list: ["viewertabs", "gallerytabs"],
	init: function(){
			$tabs.vars = (!loggedIn || !hasPersona)? {
				"viewertabs":{
					"features":  {select:"#gg-features-populate", scroll:true,	paginate:false },
					"details": {select:"#gg-details-populate", scroll: true, paginate:false },
					"comments" :  {select:"#gg-comments-populate",scroll:false,paginate:false}
					},
				"gallerytabs": {
					"everyones" : {	select:"#gg-everyones-populate",scroll:false,paginate:true,hash:""}
					}
				}:{
				"viewertabs":{
					"features":  {select:"#gg-features-populate",	scroll: true, paginate:false},
					"details": {select:"#gg-details-populate", scroll: true, paginate:false},
					"comments" :  {select:"#gg-comments-populate",scroll:false, paginate:false }
					},
				"gallerytabs": {
					"everyones" : {select:"#gg-everyones-populate",scroll:false,paginate:true,
						hash:{sortOrder : 'createdDate', periodType :  'weekly', page : '1', searchTextType : 'personaName', searchField : '', friendId: "all"}
						},
					"friends" : {select:"#gg-friends-populate", scroll:false, paginate:true, 
						hash:{ 	sortOrder : 'createdDate', periodType :  'weekly', page : '1', searchTextType : 'personaName', searchField : '', friendId: "all"}						},
					"mine" : {select:"#gg-mine-populate",	scroll:false, paginate:true,
						hash:{sortOrder : 'createdDate', periodType :  'weekly', page : '1', searchTextType : 'title', searchField : '', friendId: "all"}						
						},
					"favorites" : {select:"#gg-favorites-populate",scroll:false,paginate:true,
						hash:{	sortOrder : 'createdDate', periodType :  'weekly',page : '1',searchTextType : 'personaName',searchField : '',friendId: "all"}
						}
					}
				}
			$j.each($tabs.list, function(i, tab){
				$j("#"+tab+" .tabs li h4").click(function(){
				if(!$j(this).parent().hasClass("on")){
					$tabs.show(tab, $j(this).parent().attr('id'));
					}
				})
			});
		},
	vars: {},
	parents:{
			"features": "viewertabs",
			"comments": "viewertabs",
			"everyones": "gallerytabs",
			"friends": "gallerytabs",
			"mine": "gallerytabs",
			"favorites": "gallerytabs"
		},
	pageinfo:{
			everyones:{},
			friends:{},
			mine:{},
			favorites:{}
			},
	pagination : function(l){
		$j(".gg-pagination").html("");
		var pageinfo = $tabs.pageinfo[l];
		if(pageinfo.numPages>1){
			var n = 8; 
			if(pageinfo.pageNum > 1) $j(".gg-pagination").html("<li class=\"gg-page-go gg-arr gg-ten-back\" >&lt;&lt;</li><li class=\"gg-page-go gg-arr gg-page-back\">&lt;</li>");
			else $j(".gg-pagination").html("<li class=\"gg-dead gg-arr\">&lt;&lt;</li><li class=\"gg-dead gg-arr\">&lt;</li>");
			if(pageinfo.numPages<=8){
				for(i=1; i<=pageinfo.numPages; i++){
					if(i!=pageinfo.pageNum)	$j(".gg-pagination").append("<li class=\"gg-page gg-page-go\">"+i+"</li>");
					else $j(".gg-pagination").append("<li class=\"gg-page gg-dead\">"+i+"</li>");
					}
				}
			else {
				var spage = ((pageinfo.pageNum -(n/2)) < 1 )? 1 : (pageinfo.pageNum - (n/2));
				var epage =  ((pageinfo.pageNum + (n/2))> pageinfo.numPages)? pageinfo.numPages : pageinfo.pageNum + (n/2);
				epage +=(pageinfo.pageNum < n/2 )? (n/2) - pageinfo.pageNum + 1:0;
				spage -=(pageinfo.numPages - pageinfo.pageNum < n/2 )?  n/2+pageinfo.pageNum - pageinfo.numPages:0;
				if(pageinfo.numPages>n+1 && pageinfo.pageNum> (n/2)+1 ) $j(".gg-pagination").append("<li class=\"gg-page gg-page-go\">1</li><li>...</li>");
				for(i=spage; i<=epage; i++){
					if(i!=pageinfo.pageNum)	$j(".gg-pagination").append("<li class=\"gg-page gg-page-go\">"+i+"</li>");
					else $j(".gg-pagination").append("<li class=\"gg-page gg-dead\">"+i+"</li>");
					}
				if(pageinfo.pageNum < pageinfo.numPages - (n/2) && pageinfo.numPages != n+1) $j(".gg-pagination").append("<li>...</li><li class=\"gg-page gg-page-go\">"+pageinfo.numPages+"</li>");
				}
			if(pageinfo.numPages> pageinfo.pageNum) $j(".gg-pagination").append("<li class=\"gg-page-go gg-arr gg-page-forw\" >&gt;</li><li  class=\"gg-page-go gg-arr gg-ten-forw\" >&gt;&gt;</li>");
			else $j(".gg-pagination").append("<li  class=\" gg-arr gg-dead\">&gt;</li><li class=\"gg-dead gg-arr\">&gt;&gt;</li>");
			}
		$j(".gg-pagination .gg-page-go").click(function(){
				var newpage;
				var currpage= Math.abs($hash.array.page);
				if($j(this).hasClass("gg-page")) newpage = Math.abs($j(this).text());
				else if($j(this).hasClass("gg-ten-back")) newpage = 1;
				else if($j(this).hasClass("gg-page-back")) newpage = currpage - 1;
				else if($j(this).hasClass("gg-ten-forw")) newpage = $tabs.pageinfo[$hash.array.gallerytabs].numPages;
				else if($j(this).hasClass("gg-page-forw")) newpage = currpage + 1;
				$items.byLists[l]=[];
				$hash.set([newpage],["page"])
				$tabs.loading("gallerytabs");
				$items.loadLists([$hash.array.gallerytabs],true, false);
				});
			},
	miscbits: {
		friends:[" .firendlist , .sortby " ,"#searchbox,.weekly" ],
		favorites:[" .sortby,  #searchbox, #personaName",".firendlist, .weekly "],
		mine:[" .sortby, #searchbox, ",".firendlist , #personaName,  .weekly"],
		everyones:[" .sortby, .weekly, #searchbox, #personaName",".firendlist "]
		},
	show: function(tab, box){
		if(box == "comments" && !$items.current) return ;
		if(!tab) tab = $tabs.parents[box];
		if($tabs.vars[tab][box].paginate) {	
			$j("#gg-"+box+"-populate").css("height",($items.byLists[box].length < 6)? 256 : ($items.byLists[box].length < 11)? 512 : 768 );
			$tabs.pagination(box);
			}
		$j("#"+tab+" .progress-bar").show();
		$j("#"+tab+" li ").removeClass("on");
		$j("#"+tab+" #"+box).addClass("on");
		$j("#"+tab+" .box").hide();
		
		if(tab == "viewertabs") $j("#gg-txtarea-wrap").hide();
		else 	$j("#keyword-results").hide();
		
		$j("#"+tab+" .jScrollPaneContainer").css({ "visibility":"hidden"});
			if(ie6) $j("#"+tab+" .jScrollPaneContainer").css({ "display": "none"});
		$j("#firstcomment").css({ "visibility":"hidden"});
		var b = $tabs.vars[tab][box].select;
		$j(b).parent(".jScrollPaneContainer").css({ "visibility":"visible", "display": "block"});

		$j(b).fadeIn("fast")	;
		if(box == "comments"){
			$j("#gg-txtarea-wrap").fadeIn("fast");
			$j("#firstcomment").css({ "visibility":"visible"});
			}
		if(typeof($tabs.miscbits[box]) != "undefined") {
			var stools = $j("#gg-search-tools");
			$j($tabs.miscbits[box][0], stools).show();
			$j($tabs.miscbits[box][1], stools).hide();
			}
		$j("#"+tab+" .progress-bar").hide();
		$hash.set([box], [tab]);
		if($hash.array.searchField != "" && box == $hash.array.gallerytabs) {
			$j("#keyword-results")
				.show()
				.children("#rtnString")
				.text(""+$hash.array.searchField);
				$j("#keyword-results")
				.children("#numResults")
				.text($tabs.pageinfo[box].totalResults);
				$j('.sortby, .weekly, #gg-search-tools label').hide();
				}
		},
	loading: function(tab){
		loading = true;
		$j("#"+tab+" .box").fadeOut("fast");
		$j("#"+tab+" .progress-bar").fadeIn("slow");
		}
	}
$items  = {
	byId: {},
	byLists: {},
	current:false,
	lists: [] ,
	init:function(){	
		$items.lists =(loggedIn && hasPersona)? ["features","everyones","friends","mine","favorites"] : ["features","everyones"];
		if($hash.array.id){
			$items.current = $hash.array.id;
			$items.loadLists(["state"], false, true);
			$items.loadLists($items.lists, true, false);
			}
		else $items.loadLists($items.lists, true, true);
		},
	setShare:function(){
		$j("#thicksharebox #send-to-friend .TB_butt.email").click(
			function(){
				$j("#thicksharebox #send-to-friend #emailfriend-loader").show();
				$j(this).removeClass("hover");
				$j.getJSON("/graphicscreator/graphics/sendToFriend?itemId=" + $items.current + "&shareUrl=" + escape(document.location) + "&toEmail=" + $j("#thicksharebox #send-email-input").val(), function(json){
					
					if(json.status != "success") $j("#thicksharebox .sharebox-item").hide().siblings("#email-failure").fadeIn("fast");
					else $j("#send-email-input").val(txtEmailSent)
					 $j("#thicksharebox #send-to-friend #emailfriend-loader").hide();
					
					});
				});
		$j(" #thicksharebox #urlbox").val(document.location);
		$j("#thicksharebox #download-terms-box a.download").attr('href','/graphicscreator/graphics/downloadItem?imageUrl=' +  $items.byId[$items.current].data.version[0].url);
		},
	viewer: function(init){
		$hash.set([$items.current],["id"]);
		$j("#gg-share-utils div").show();
		$j("img.current").removeClass("current");
		$j("."+$items.current+" li.gallery-img img, ."+$items.current+" li.thumb img").addClass("current");
		$j("#comments h4 span").html("").hide();
		if(!init)$j("#gg-details-populate").hide().html("").siblings(".progress-bar").show(); 
		$items.populate("details",  $items.byId[$items.current].data);
		$j("#viewerimage")
			.unbind()
			.hide()
			.html("<img src="+ $items.byId[$items.current].data.version[1].url +" width=\"258\" height=\"258\" />")
			.children("img")
				.click(function(){
					$j("body").addClass("maskpreview");
					tb_show(null,"/graphicscreator/preview?previewImage="+$items.byId[$items.current].data.version[3].url+"&TB_iframe=true&width=866&height=489", null);
					});
		setTimeout('$j("#viewerimage").fadeIn("slow")',1000);
		if(!init) {
			$tabs.show("viewertabs", "details"); /* DURING INITIAL LOAD TAB IS SELECTED BY HASH - OTHERWISE FLIP TO DETAILS TAB */	
			$j.getJSON("/graphicscreator/graphics/itemDetails?itemId=" + $items.current + "&incViewCount="+(!$j("."+$items.current).hasClass("voted")),function(json){
			$j("."+$items.current).addClass("voted");
			$items.byId[$items.current].data = json;
			$j("."+$items.current+" li.views span").text(json.viewCount);
				})
			}
		if(typeof($items.byId[$items.current].comments) == "undefined" ){			$j.getJSON("/graphicscreator/graphics/itemComments?page=1&assetUrl="+encodeURIComponent("http://"+window.location.host+"/graphicscreator/graphics/gallery#viewertabs=comments&id=") + $items.current  , function(json){
				$items.byId[$items.current].comments = json;
				comments();
				})
			}
		else {
			comments();
			}
		function comments(){
			$j("#comments h4 span").text(($items.byId[$items.current].comments.pageInfo.totalResults>0)? ("(" +$items.byId[$items.current].comments.pageInfo.totalResults+")") : ("")).show();
			if(!$items.byId[$items.current].comments.pageInfo.totalResults>0)$j("#comments h4 span").html("").hide();
			$j("#gg-comments-populate").html("");
			if($items.byId[$items.current].comments.items.length<1) {
				$j("#gg-comments-populate").jScrollPane( { showArrows:true, scrollbarWidth:18, scrollbarMargin:10, maintainPosition:true } );
				$j("#firstcomment").css("display","block");
				$j("#nologin").css("display","block");
				$j("#comment-paging").hide();
				if($hash.array.viewertabs != "comments"){
							$j("#gg-comments-populate").parent(".jScrollPaneContainer").css("visibility","hidden");
							$j("#gg-comments-populate").hide();
							}
				}
			else {
				$j("#firstcomment").css({"display":"none"});
				$j("#nologin").css("display","block");
				for(i=0; i<$items.byId[$items.current].comments.items.length; i++){
					$items.populate("comments", $items.byId[$items.current].comments.items[i]);
					if(i + 1 == $items.byId[$items.current].comments.items.length) {
						$j("#gg-comments-populate").parent(".jScrollPaneContainer").css({ "display": "block"});
						$j("#gg-comments-populate").show().jScrollPane( { showArrows:true, scrollbarWidth:18, scrollbarMargin:10, maintainPosition:true });
						if($hash.array.viewertabs != "comments"){
							$j("#gg-comments-populate").parent(".jScrollPaneContainer").css("visibility","hidden");
							$j("#gg-comments-populate").hide();
							}
						}
					}
				if($items.byId[$items.current].comments.pageInfo.numPages>1){
					$j("#comment-paging").show();
					var pageInfo = $items.byId[$items.current].comments.pageInfo;
					$j("#viewertabs #comment-paging span").addClass("inactive")
														.unbind()
														.removeClass("hover");
					if(pageInfo.pageNum<pageInfo.numPages) 
						$j("#viewertabs #next-page")
							.removeClass("inactive")
							.click(function(){
								$j("#gg-comments-populate").hide();
								$j.getJSON("/graphicscreator/graphics/itemComments?assetUrl="+encodeURIComponent("http://"+window.location.host+"/graphicscreator/graphics/gallery#viewertabs=comments&")+"id=" + $items.current  + "&page=" + (Math.abs(pageInfo.pageNum)+1) , function(json){
												
									$items.byId[$items.current].comments = json;
									comments();
									});
								})
							.hover(
								function() {
									$j(this).addClass("hover");
									},
								function() {
									$j(this).removeClass("hover");
									}
								);
					if(pageInfo.pageNum>1) 
						$j("#viewertabs #prev-page")
							.removeClass("inactive")
							.click(function(){
								$j("#gg-comments-populate").hide();
								$j.getJSON("/graphicscreator/graphics/itemComments?assetUrl="+encodeURIComponent("http://"+window.location.host+"/graphicscreator/graphics/gallery#viewertabs=comments&")+"id=" + $items.current  + "&page=" + (Math.abs(pageInfo.pageNum)-1) , function(json){

									$items.byId[$items.current].comments = json;
									comments();
									});
								})
							.hover(
								function() {
									$j(this).addClass("hover");
									},
								function() {
									$j(this).removeClass("hover");
									}
								);
					}
				else $j("#comment-paging").hide();
				};
			}
		},
	loadLists: function(lists, showTabs, viewer){
		$j.each(lists, function(i, list){
			if(showTabs)$j("#gg-"+list+"-populate").hide().siblings(".loading").show();
			$j.getJSON(urls(list), function(json){
			if(typeof($tabs.pageinfo[list]) != "undefined"){
					$tabs.pageinfo[list] = json.pageInfo;
					}
				$items.byLists[list] = new Array;
				var jsonitems = (list == ["state"])? [json] : (typeof(json.items) != "undefined")? json.items.item : [];
				if(!(jsonitems.length == 0 &&  i+1 == lists.length)) 
					for(j=0;j<jsonitems.length;j++){
						var item = jsonitems[j];
						$items.byId[item.id] = {};
						$items.byId[item.id].data = item;
						$items.byLists[list][j] = item.id;
						if(i==0 && j==0 && !$items.current){
							$items.current =  item.id;
							$hash.set([$items.current], ['id']);
							}
						if(viewer &&$items.current == item.id) $items.viewer(true);
						};
				if(lists!="state"){
					for(z=0; z<lists.length; z++){
						if(typeof($items.byLists[lists[z]]) == "undefined") break ;
						if(z+1 == lists.length && showTabs && loading) {
							loading=false;
							$items.showLists(lists, showTabs);
							}
						}
					}
				})
			})
		function urls(l){
			var query = {}
			$j.extend(query,$hash.array);
			if(l != $hash.array.gallerytabs){
				query.searchField ="";
				}
			else {
				$j("#searchstring").val(query.searchField);
				}
			switch(l)
				{
				case "features":
					return "/graphicscreator/graphics/featuredItems";//"/weapondesigner/ajaxFeatured";//;"/weapondesigner/js/text.js";//
					break;
				case "everyones":
					return  "/graphicscreator/graphics/galleryPage?" + jQuery.param(query);	
					break;
				case "friends":
					return ($hash.array.friendId == "all")? "/graphicscreator/graphics/friendsItems?" + jQuery.param(query) 
						: "/graphicscreator/graphics/friendItems?" + jQuery.param(query);
					break;
				case "mine":
					return "/graphicscreator/graphics/myItems?" + jQuery.param(query);		
					break;
				case "favorites":
					return  "/graphicscreator/graphics/favouriteItems?" + jQuery.param(query);
					break;
				case "state":
					return "/graphicscreator/graphics/itemDetails?itemId=" + $hash.array.id + "&incViewCount=true";
					break;
			
				}
			}
		},
	showLists: function(lists, showTabs){
		$j.each(lists, function(j,list){
			var list = this;
			$j("#gg-"+list+"-populate").html("");
				if($items.byLists[list].length<1) 				
			$j("#gg-"+list+"-populate").html("<li class=\"noitems\">"+txtNoGraphicsavailable+"</li>");
			$j.each($items.byLists[list], function(i,id){
				$items.populate(list,  $items.byId[id].data);
				if(list == 'favorites' && $items.current == id) 
						$j("#gg-details-populate."+id+" li.addtofav")
							.removeClass("addtofav")
							.addClass("removefav")
							.text(txtRemFav);
				})
			if($tabs.vars[$tabs.parents[list]][list].scroll) {
				$j($tabs.vars[$tabs.parents[list]][list].select).jScrollPane( { showArrows:true, scrollbarWidth:18, scrollbarMargin:10, reinitialiseOnImageLoad: true} );	
				setTimeout("$j('#gg-features-populate')[0].scrollTo(0)",1000);
				}
			})
			setTimeout("$tabs.show('viewertabs',$hash.array.viewertabs)", 500);
			$tabs.show('gallerytabs',$hash.array.gallerytabs);
		},
	populate: function(l,item) {	
		if(item == "current") item = $items.current;
		if(l!="details" && l!="shelfviewer"){
			$j("<li></li>").attr({"class": "item", "id": l+"-li-"+item.id}).appendTo("#gg-"+l+"-populate");
			$j("<ul></ul>").attr("class", item.id).appendTo("#"+l+"-li-"+item.id);
			}
		else {
			$j("#gg-"+l+"-populate").removeClass();
			$j("#gg-"+l+"-populate").addClass("box "+item.id);
			}
			var html;
			var binds = [];
			if (l=="comments"){  
					html = field("commentor")  + field("flag") + field("timestamp") + field("post") ;
					binds = ["flag"];
					}
			else if (l== "everyones" ){ 
					html = field("gallery-img") + field("title") + field("uploader") + field("datestamp") + field("views") + field("stars") ;
					binds = ["stars","boxfocus","idlinks"];
					}
			else if (l== "mine"){
					html = field("gallery-img") + field("title") +field("datestamp") + field("views") + field("stars") ;
					binds = ["stars","boxfocus"];
					}
			else if (l=="favorites" ){ 
					html = field("gallery-img") + field("title") + field("uploader") + field("datestamp") + field("views") + field("stars") + field("removefav");
					binds = ["stars","removefav","boxfocus","idlinks"];
					}
			else if (l=="friends"){
					html = field("gallery-img") + field("title") + field("uploader") + field("datestamp") + field("views") + field("stars");
					binds = ["stars","boxfocus","idlinks"];
					}
			else if (l== "details"){
					html = field("title")  + field("favtoggle") + field("uploader") + field("desc") + field("datestamp") + field("views")+ field("score") + field("stars")+ field("commentlink") +field("sendtogame")  +field("default") ;
					binds = ["favtoggle", "stars","commentlink","sendtogame", "default","idlinks","descscroll"];
					}
			else if (l=="features" ){
					html = field("thumb") + field("title") + field("uploader") + field("datestamp")  + field("views") + field("stars") ;	
					binds = ["stars","boxfocus","idlinks"];
					}
				else if (l== "shelfviewer" ){
					html = field("gallery-img")+ field("uploader") + field("datestamp") + field("views")+ field("score") + field("stars") ;
					binds = ["stars","idlinks"];
					}
			else if ( l== "flagimg"){
					html = field("gallery-img")+ field("title")+ field("uploader") + field("datestamp") + field("views")+ field("score") + field("stars") ;
					binds = ["stars","idlinks"];
					}
			$j("#"+l+"-li-"+item.id+" ul." + item.id +", #gg-"+l+"-populate." + item.id).html(html);
			if(item.id == $items.current) $j("."+$items.current+" li.gallery-img img, ."+$items.current+" li.thumb img").addClass("current");
			
			if($j.inArray("descscroll",binds)>-1)
			$j("#gg-details-populate").jScrollPane( { showArrows:true, scrollbarWidth:18, scrollbarMargin:10, maintainPosition:true } );
									
// Callouts removed for production - SC - 24-11-2009 -
		if($j.inArray("idlinks",binds)>-1) {
			  $j("li.user h5, li.uploader strong").click(function(e){
				$j(".flyout").hide();
				$j(this).siblings(".flyout").show();
				return false;
			});
			$j("li.close ").click(function(){
				$j(".flyout").hide();
				return false;
			});
	
			$j("#gg-"+l+"-populate ."+item.id+" .add a, #gg-"+l+"-populate."+item.id+" .add a").click(function(){
				a = this;
				$j.getJSON(this.href,function(data) {
					if(data.status != "success") {
						alert(data.errors[0].description);
					} else {
						$j(a).closest("li").hide();
						$j(a).closest("ul").find(".added").show();
					}
				});
				return false;
			});
		}


		
		
		
		if($j.inArray("default",binds)>-1)
			$j("#gg-details-populate  li.makedefault  div")
					.hover(
						function() {
							$j(this).addClass("hover");
							},
						function() {
							$j(this).removeClass("hover");
							})
					.click(function(){
							$j.getJSON("/graphicscreator/graphics/setActiveGraphicById?itemId="+item.id,function(json){
							 $shelving.ddefault = item.id; 
							 $j("#gg-details-populate  li.makedefault")
							 	.removeClass("makedefault")
							 	.addClass("isdefault")
							 	.html(txtYourDefault+"<br />"+txtActiveGraphic)
        					})
					})
		if($j.inArray("favtoggle",binds)>-1)
				$j("#gg-"+l+"-populate."+item.id+"  li#favtoggle")
					.hover(
						function() {
							$j(this).addClass("hover");
							},
						function() {
							$j(this).removeClass("hover");
							})
					.click(
						function(){
						if($j(this).hasClass("addtofav")) {
							$j(this)
								.hide()
								.removeClass("addtofav")
								.addClass("removefav")
								.text(txtRemFav);
								
							var u="/graphicscreator/graphics/addFavourite?ids="+item.id;
							$j.ajax({
								url:u,
								success:function(){
									$j("li#favtoggle").fadeIn("fast");
									$j("#gg-favorites-populate .noitems").remove();
									$j("#gg-favorites-populate").css("height",($items.byLists["favorites"].length +1 < 6)? 256 : ($items.byLists["favorites"].length < 11)? 512 : 768 );
									$items.populate("favorites",  $items.byId[item.id].data);
									$items.loadLists(["favorites"], false, false);
									}
								});
							}
						else {
							$j(this)
								.hide()
								.removeClass("removefav")
								.addClass("addtofav")
								.text(txtAddFav);
							var u="/graphicscreator/graphics/removeFavourite?ids="+item.id;
							$j.ajax({
								url:u,
								success:function(){
									$j("li#favtoggle").fadeIn("fast");
									if($items.byLists["favorites"].length == 1)$j("#gg-favorites-populate").html("<li class=\"noitems\">"+txtNoGraphicsavailable+"</li>");
									$j("#gg-favorites-populate  #favorites-li-"+item.id).fadeOut("fast").remove();
									$j("#gg-favorites-populate").css("height",($items.byLists["favorites"].length -1 < 6)? 256 : ($items.byLists["favorites"].length < 11)? 512 : 768 );
									$items.loadLists(["favorites"], false, false);
									}
								});
							}
						});
			if($j.inArray("removefav",binds)>-1)
				$j("#gg-"+l+"-populate  #"+l+"-li-"+item.id+" li.removefav")
					.hover(
						function() {
							$j(this).addClass("hover");
							},
						function() {
							$j(this).removeClass("hover");
							})
					.click(
						function(){
							$j(this).fadeOut("slow");
							var u="/graphicscreator/graphics/removeFavourite?ids="+item.id;
							$j.ajax({
								url:u,
								success:function(){
									$j("#gg-details-populate."+item.id+" li#favtoggle")
										.removeClass("removefav")
										.addClass("addtofav")
										.text(txtAddFav);
									if($items.byLists["favorites"].length == 1)$j("#gg-favorites-populate").html("<li class=\"noitems\">"+txtNoGraphicsavailable+"</li>");
									$j("#gg-favorites-populate  #"+l+"-li-"+item.id).fadeOut("fast").remove();
									$j("#gg-favorites-populate").css("height",($items.byLists["favorites"].length -1 < 6)? 256 : ($items.byLists["favorites"].length < 11)? 512 : 768 );
									$items.loadLists(["favorites"], false, false);
									}
								});
							});
			if($j.inArray("sendtogame",binds)>-1) 
					$j("#gg-"+l+"-populate .sendtogame div")
					.hover(
						function() {
							$j(this).addClass("hover");
							},
						function() {
							$j(this).removeClass("hover");
							})
					.click(
						function(){
							tb_show("Send To Game Shelf","#TB_inline?width=825&height=513&amp;inlineId=gameshelf", null);
							$shelving.loadViewer();
							});
			if($j.inArray("commentlink",binds)>-1)
				$j("#gg-"+l+"-populate .commentlink div")
					.hover(
						function() {
							$j(this).addClass("hover");
							},
						function() {
							$j(this).removeClass("hover");
							})
					.click(
						function(){
							$tabs.show("viewertabs", "comments"); 
							});
			if($j.inArray("boxfocus",binds)>-1)
				$j("#gg-"+l+"-populate  #"+l+"-li-"+item.id+" li.gallery-img img, #gg-"+l+"-populate   #"+l+"-li-"+item.id+" li.thumb img, #gg-"+l+"-populate  #"+l+"-li-"+item.id+" li.title h5").click(function(){
						$items.current = item.id;
						$items.viewer(false);
						})
					.mouseover(function(){
						$j(this).parent().parent().addClass("boxfocus");
						})
					.mouseout(function(){
						$j(this).parent().parent().removeClass("boxfocus");
						});
			if($j.inArray("stars",binds)>-1){
				$j("#gg-"+l+"-populate  ul."+item.id+" li.stars .gg-stars, #gg-"+l+"-populate."+item.id+" li.stars .gg-stars").each(function(){
					$j("span",this).width(starX * Math.abs($j("span",this).text()));
					$j(this).attr('title',"Current score "+(Math.round(Math.abs($j("span",this).text())*10)/10)+" stars");
					});
				$j("#gg-"+l+"-populate  ul."+item.id+" li.stars .gg-stars, #gg-"+l+"-populate."+item.id+" li.stars .gg-stars").mousemove(function(e){
						doStarsMove($j(this), e)
					}).click(function(e){
						doStarsClick($j(this), e);
					})
					.mouseleave(function(){
						$j("#gg-pleaselogin",this).text("").remove();
						$j(this).removeClass("nostars");
						$j("span",this).width(starX * Math.abs($j("span",this).text()));
					});
				}
			if($j.inArray("flag",binds)>-1) $j("#gg-"+l+"-populate  ul."+item.id+" li.flag" ).click(function(){
					setFlagThis(item.id);
					$j("#flagViolation, #gg-flagReason").val("");
					$j(".flag-comment, .flagbox").show();
					$j(".flag-comment blockquote").text(item.comment);
					$j(".flag-image, #flag-status").hide();
					tb_show(txtFlagCommentTitle,"#TB_inline?width=400&mp;height=400&amp;inlineId=flagbox", null);
					acticateFlagSubmit();
					})
				.hover(
					function() {
						$j(this).css({"color":"#f6e971"});
						},
					function() {
						$j(this).css({"color":"#ffffff" });
						}
					);
		function field(f){
			switch(f){
				case "sendtogame" :
					return (enableSendToGame)?"<li class=\"sendtogame\"><div>"+txtSendToGame+"</div></li>" :"";
				case "default" :
					return (enableSendToGame)? ($shelving.ddefault == item.id)? "<li class=\"isdefault\">"+txtYourDefault+"/<br />"+txtActiveGraphic+"</li>" : "<li class=\"makedefault\"><div>"+txtMakeDefaultGraphic+"</div></li>" :"";	
				case "commentlink" :
					return (loggedIn)?"<li class=\"commentlink\"><div>"+txtCommentOn+"</div></li>":"";
				case "favtoggle" :
					return (hasPersona && loggedIn)?(typeof($items.byLists["favorites"]) != "undefined" && $j.inArray(item.id, $items.byLists["favorites"])>-1)? "<li id=\"favtoggle\" class=\"removefav\">"+txtRemFav+"</li>" 
								:"<li id=\"favtoggle\" class=\"addtofav\">"+txtAddFav+"</li>":"";
				case "removefav" :
					return "<li class=\"removefav\">"+txtRemoveFromFavorites+"</li>";
				case "thumb": 
					return "<li class=\"thumb\"><img src=\""+ item.version[2].url +"\" width=\"102\" height=\"100\" /></li>";
				case "gallery-img": 
					return "<li class=\"gallery-img\"><img src='"+ item.version[2].url +"' /></li>";
				case "title":
					return "<li class=\"title\"><h5>"+ item.title +"</h5></li>";
				case "uploader": 
					return "<li class=\"uploader\">"+txtBy+" <strong>"+item.personaName+"</strong>"+
							"<div class=\"flyout\"><ul>"+
								((!item.isProfileEnabled)? "<li>"+txtCreatorDoesNot+"</li>":
										((item.personaNamespace == "xbox" || item.personaNamespace == "ps3" )? (
											((loggedIn && hasPersona && !item.isMyFriend && !item.isPendingFriend && LPName!=item.personaName)? ("<li class=\"add\"><a href=\"/profile/friends/addFriend.json?personaName="+  item.personaName  + "&personaNamespace="+ item.personaNamespace + "\">"+txtAddFriend+"</a></li> <li class=\"added\" style=\"display: none;\">*"+txtFriendAdded+"*</li>"):"" )+
											"<li class=\"go-link\"><a href=\"/profile/user?friendPersonaId="+item.personaId+"&amp;friendNamespace="+item.personaNamespace+"&amp;friendPersonaName="+item.personaName +"\" class=\"go-link\">"+txtViewProfile+"</a></li>"+
											((loggedIn && hasPersona)? "<li class=\"go-link\"><a href=\"/profile/compare/head2head?comparePersonaId="+item.personaId+"&compareNamespace="+item.personaNamespace+"&comparePersonaName="+item.personaName +"\">Compare Head To Head</a></li>":"")):
											((loggedIn )? "<li>"+txtPleaseCreateXboxorPS3+"</li>":"")))+
									"<li class=\"close\"><a href=\"#\">X</a></li></ul></div>"+
							"</li>";
				case "score":
					return "<li class=\"score\">"+ txtAvgScore +" <span>"+ Math.round(item.rating*10)/10 +"</span></li>";
				case "votes":
					return "<li class=\"votes\">"+txtBasedOn+" <span>"+ item.ratingCount +"</span> Votes</li>";
				case "views":
					return "<li class=\"views\">"+txtViews+" <span>"+item.viewCount+"</span></li>";
				case "stars":
					return "<li class=\"stars\"><span class=\"alttext\">"+txtRateThis+"</span><div class=\"gg-stars\"><span class=\""+item.id+"\">"+ item.rating +"</span></div></li>";	
				case "desc":
					return "<li class=\"desc\"><p><h6>"+txtDescription+"</h6>"+item.description+"</p></li>";
				case "user" :  
					return "<li class=\"user\"><h5 class=\"name\">" + item.creatorPersonaName + "</h5>"+
								"<div class=\"flyout\"><ul>"+
								((!item.isProfileEnabled)? "<li>"+txtCreatorDoesNot+"</li>":
										((item.personaNamespace == "xbox" || item.personaNamespace == "ps3" )? (
											((loggedIn && hasPersona && !item.isMyFriend && !item.isPendingFriend)? "<li class=\"add\"><a href=\"/profile/friends/addFriend.json?personaName="+  item.personaName  + "&personaNamespace="+ item.personaNamespace + "\">"+txtAddFriend+"</a></li> <li class=\"added\" style=\"display: none;\">*"+txtFriendAdded+"*</li>":"" )+
											"<li class=\"go-link\"><a href=\"/profile/user?friendPersonaId="+item.personaId+"&amp;friendNamespace="+item.personaNamespace+"&amp;friendPersonaName="+item.personaName +"\" class=\"go-link\">"+txtViewProfile+"</a></li>"+
											((loggedIn && hasPersona)? "<li class=\"go-link\"><a href=\"/profile/compare/head2head?comparePersonaId="+item.personaId+"&compareNamespace="+item.personaNamespace+"&comparePersonaName="+item.personaName +"\">Compare Head To Head</a></li>":"")):
											((loggedIn )? "<li>"+txtPleaseCreateXboxorPS3+"</li>":"")))+
									"<li class=\"close\"><a href=\"#\">X</a></li></ul></div>"+
							"</li>";
				case "commentor" :  
					return "<li class=\"user\"><h5>" + item.personaName + "</h5>&nbsp;"+ txtSays +"</li>";
				case "timestamp" :  
					return  "<li class=\"timestamp\"><span class=\"alttext\">"+txtUploaded+"</span> "+timestamp(item.createdDate.time, true)+"</li>";
				case "datestamp" :  
					return  "<li class=\"datestamp\"><span class=\"alttext\">"+txtUploaded+"</span> "+timestamp(item.createdDate.time, 0)+"</li>";
				case "post"	:
					return "<li class=\"post\"><p> "+ item.comment +" </p></li>"
				case "flag" :
					return (loggedIn)?"<li class=\"flag\"><div class=\"gg-flag flag-"+item.id+"\">"+txtFlag +"</div></li>":"";
				}
			}
		function timestamp(timestamp, t){
			var theMonths = ["JAN", "FEB","MAR", "APR", "MAY" , "JUN", "JUL", "AUG", "SEP" , "OCT", "NOV", "DEC"];
			Stamp = new Date(parseFloat(timestamp));
			var Hours; var Mins; var Time; var Day; var Month; var Year;
			Hours = Stamp.getHours();
			Mins = Stamp.getMinutes();
			Secs = Stamp.getSeconds();
			Year = Stamp.getFullYear();
			Month = Stamp.getMonth();
			Day = Stamp.getDate();
			//if(Year>99) Year-= 100;
			//if(Year<10) Year = "0"+Year;
			if (Mins < 10) {Mins = "0" + Mins;}
			if (Secs < 10) {Secs = "0" + Secs;}
			var stamp =  Day +"-"+ theMonths[Month] +"-"+Year+((t)?" "+ Hours +":"+ Mins +":"+Secs:"");
			return stamp;
			}
		}
	}
$dropDowns={
	init: function(){
		 	ddDefault = [{
				selector : "#gg-search-tools .chooser.sortby",
				val : "sortOrder",
				action:"gallery-sort",
				params: ["gallerytabs", "gallery"] ,
				sethash:true
				},
				{
				selector : "#gg-search-tools .chooser.firendlist",
				val : "friendId", 
				action:"gallery-sort",
				params: ["gallerytabs", "gallery"] ,
				sethash:true
				},
				{
				selector : "#gg-search-tools .chooser.weekly",
				val : "periodType",
				action:"gallery-sort",
				params: ["gallerytabs", "gallery"] ,
				sethash:true
				},
				{
				selector : "#gg-search-tools .chooser.searchby ",
				val : "searchTextType",
				action: "search-param",
				params: "",
				sethash:true
				}];
		$j.each(ddDefault, function(i){
			if(this.sethash) $dropDowns.getHash(this.selector, this.val);
			$j(this.selector).click(function(){
				$j("ul",this).toggle()
				.parents(".chooser").bind("mouseleave", function(){
					$j("ul", this).hide()
					.children(".chooseritems").removeClass("highlight");
					});
				})
			$j(ddDefault[i].selector + " .chooseritems").mouseover(function(){
					$j(this).siblings().removeClass("highlight");
					$j(this).addClass("highlight");
					})
				.click(function(){
					$dropDowns.actions(this, ddDefault[i]);
					$j(this).siblings().removeClass("highlight")
					})
			});
		},
	actions: function(obj,data){
		$j(obj).parent().fadeOut("slow").prev().find("div").text($j(obj).text());
		if(data.sethash) $hash.set([$j(obj).attr('id'), 1,"" ], [$j(obj).parent().attr('id'), "page","searchField" ]);
		if(data.action == "gallery-sort") {
			$tabs.loading(data.params[0]);
			$items.loadLists([$hash.array[data.params[0]]], [data.params[0]], false);
			}
		else if(data.action == "search-param") {
			}
		},
	getHash:function(selector, hashId){
		var vid = $hash.array[hashId];
		/* 	EXCEPTIONS */
		if (vid == "searchResults") vid = "createdDate";  // search results use the sortOrder parameter, so the DD defaults to created_date option		
		$j(selector +" h4 div").text($j("#"+vid).text());
		}
	}
function doStarsMove(obj,e){
	if(loggedIn && hasPersona){
		var position = obj.position();
		var offset = obj.offset();
		var x = e.pageX - (offset.left);
		$j("span",obj).width(Math.round((x+6)/starX)*starX);
		}
	else if($j("#wd-pleaselogin a", obj).text()=="") {
		var loginUrl = $j("#gus_login a").attr("href");
		var onTheClick = $j("#gus_login a").attr("onClick");
		$j(obj).addClass("nostars");
		$j('span',obj).html('<div id="gg-pleaselogin"><a href="'+loginUrl+'" onClick="'+onTheClick+'">'+txtPleaseLoginRate+'</a></div>');
		$j("span #gg-pleaselogin", obj).show();
		}
	}
function doStarsClick(obj,e){			
	if($j("span",obj).hasClass("ranked")) return;
	if(loggedIn){
		var position = obj.position();
		var offset = obj.offset();
		var x = e.pageX - (offset.left);
		var iid = $j("span",obj).attr('class');
		var iid = iid.replace("voted", "");
		var iid = iid.replace(" ", "");
		var score = ( (Math.round( (x+6)/starX)  > 5 )? 5 : Math.round((x+6)/starX));
		$j("."+$j("span",obj).attr('class')).attr("title",txtYouGaveThis+" "+ score +" "+txtStars);
		$j.ajax({
			url: "/graphicscreator/graphics/rateItem?itemId="+ iid +"&rating="+ score, 
			dataType : "json" , 
			success: function(json){
				var result = json;	
				var newRcount = result.ratingCount;
				var newRating = result.rating;
				$items.byId[iid].data.ratingCount = newRcount; 
				$items.byId[iid].data.rating = newRating; 
				$j(".stars ."+result.publishedId+",#gg-details-populate .score span").text(+Math.round((result.rating)*10)/10);
				$j(".stars ."+result.publishedId).width(result.rating*starX);   				
				//$j(".rcount"+iid ).text(newRcount);
				$j(".stars ."+iid).addClass("ranked").text( Math.round(newRating*10)/10) ;
				}
			});		
		}
	else return;
	}	
$shelving={
	shelves :[],
	ddefault: false,
	init :function(){
		if(!enableSendToGame) return;
		$j.getJSON("/graphicscreator/graphics/getActiveGraphic",function(json){
			 $shelving.ddefault = (json.activeGraphic != "")?json.activeGraphic[0].publishedGraphic.id : false; 
			if( $shelving.ddefault == $items.current && $items.current) 
				$j("#gg-details-populate  li.makedefault")
					.removeClass("makedefault")
					.addClass("isdefault")
					.html("Your Default/<br />Active Graphic")
        	})
        $shelving.loadShelves();
		},
	current: ["","","","",""],
	loadShelves: function(){
        $j(".gameshelf .gamesend")
       		.hover(
				function() {
					$j(this).addClass("hover");
					},
				function() {
					$j(this).removeClass("hover");
					})
			.click(function(){
        		$j.each($shelving.current,function(i,id){ 
        		/*if(this != ""){
					$j.getJSON((this)?"/graphicscreator/graphics/sendGraphicToGameById?slotNum="+ i +"&itemId="+$items.byId[id].data.id :
					"/graphicscreator/graphics/sendGraphicToGameById?slotNum="+ i ,function(json){
						})
					}*/
					if(this != "" && this){
						$j.getJSON("/graphicscreator/graphics/sendGraphicToGameById?slotNum="+ i +"&itemId="+$items.byId[id].data.id ,function(json){
						})
					}
        		})
        	})
		},
	loadViewer:function(){
		$j(".gameshelf").hide();
		$j("#gameshelf-loader").fadeIn('fast');
		$j.getJSON("/graphicscreator/graphics/getInGameGraphics",function(json){
			 $shelving.shelves = json.image; 
			$j.each($shelving.shelves, function(i){ 
				var slot = "#s"+this.slot;
				var index = this.slot;
				$j(slot+" img.thumb").remove();
				$j(slot).prepend("<img class=\"thumb\" height=\"128\" width=\"128\" src=\"/sharedservices/xml/gos-ao3-locker-getImageFile?willConfigName=ao3-cgc&fileId="+ $shelving.shelves[i].fullFileId+"&version="+$shelving.shelves[i].thumbnailVersion +"\" />" );
				})
			$j("#gameshelf-loader").hide();
			$j(".gameshelf").fadeIn('fast');
        	})
		$items.populate('shelfviewer', $items.byId[$items.current].data);
		$j("#gg-shelf-populate li")
			.removeClass("ctrlon")
			.children("img.thumb")
			.remove();
		$j.each($j("#gg-shelf-populate li.shelf"), function(i){
			$j("li.sendto",this)
			.unbind()	
			.click(function(){ 
			/*	$shelving.current[i] = $items.current;
				$j(this)
					.siblings(".makedef, .deletefrom").removeClass("off") 
					.parents("li.shelf")
					.prepend("<img  height=\"128\" width=\"128\" class=\"thumb\" src='"+  $items.byId[$items.current].data.version[2].url +"' />") 
					.children("img.thumb").remove();*/
				if(confirm(txtYouAreAboutToSend)){
					tb_remove();
					$j.getJSON("/graphicscreator/graphics/sendGraphicToGameById?slotNum="+ i +"&itemId="+$items.byId[$items.current].data.id ,function(json){})
					}
				else return;
				})
			$j("#gg-shelf-populate li").hover(
				function(){
					$j(this).addClass("ctrlon");
					},
				function(){
					$j(this).removeClass("ctrlon");
					}
				)
			$j("#gg-shelf-populate .shelfctrls li").hover(
				function() {
					$j(this).addClass("shelfhover");
					},
				function() {
					$j(this).removeClass("shelfhover");
					}
				)
			})
		}
	}
$j(document).ready($hash.init);
$j(document).ready($items.init);
$j(document).ready($tabs.init);
$j(document).ready($dropDowns.init);
$j(document).ready(function(){
	 $j("#resetSearch").click(function(){
	 		$j("#keyword-results").hide()
			$j('.sortby, .weekly,  #gg-search-tools label').show();
			$j("#searchstring").val("")
	 		$hash.set([$j("#searchstring").val(), "createdDate"],["searchField", "sortOrder"] );
			$tabs.loading("gallerytabs");
			setTimeout("$items.loadLists([\""+$hash.array["gallerytabs"]+"\"], [\"gallerytabs\"], false)",500);
	 		})
	 $j("#gg-share-utils div.flagimg" ).click(function(){
	 		setFlagThis(false); //gets id from $items.current
			$j("#flagViolation, #gg-flagReason").val("");
			$j(".flag-image, .flagbox").show();
			$j(".flag-comment, #flag-status").hide();
			$j("#gg-flagimg-populate").html("");
			$items.populate('flagimg', $items.byId[$items.current].data);
			tb_show(txtFlagImageTitle,"#TB_inline?width=400&mp;height=400&amp;inlineId=flagbox", null);
			acticateFlagSubmit();
			})
		.hover(
			function() {
				$j(this).addClass("hover");
				},
			function() {
				$j(this).removeClass("hover");
				}
			);
		$j("#send-email-input").click(function(){
		if ($j(this).val() =="Email Sent") $j(this).val("");
		})
		$j('#footer-links')
            .hover(function() {
                $j('#footer #links').slideDown('slow');
            }, function() {
                $j('#footer #links').slideUp('slow');
            });
	$j("#gg-search-tools #searchbox #searchbutt").click(
		function(){
			fireSearch();
			}
		);
	$j("input#searchstring").keypress(function(e){
		 if (e.which == 13) {
			fireSearch();
			 }
		}) 
	$j("#thicksharebox .TB_butt.cancel-terms").click(
		function(){
			$j("#thicksharebox .sharebox-item").fadeIn("fast").siblings(".share-notice").hide();
			}
		);
		
	$j("#thicksharebox #download .TB_butt.continue").click(
		function(){
			$j("#thicksharebox .sharebox-item").hide().siblings("#download-terms-box").fadeIn("fast");
			}
		);
	$j("#gg-share-utils div.share").hover(
		function() {
			$j(this).addClass("hover");
			},
		function() {
			$j(this).removeClass("hover");
			}
		)
	.click(
		function() {
			
			$j("body").addClass("shareutils");
			tb_show(null,"#TB_inline?height=500&width=600&amp;inlineId=sharetools", null);
			$items.setShare();
			$j(this).removeClass("hover");
			}
		);
	$j("#dialogue-boxes .TB_butt:not(.inactive)").hover(
		function() {
			$j(this).addClass("hover");
			},
		function() {
			$j(this).removeClass("hover");
			}
		)
	.click(
		function() {
			$j(this).removeClass("hover");
			}
		);
	$j("#dialogue-boxes #gg-flagReason").keyup(function(){acticateFlagSubmit()});
	$j("#dialogue-boxes #flagViolation").change(function(){acticateFlagSubmit()});
	$j(".cancel")
		.hover(
		function() {
			$j(this).addClass("hover");
			},
		function() {
			$j(this).removeClass("hover");
			})
		.click(function(){
			tb_remove();
			});
	
	$j("#gg-commenttext").val(txtWriteYourCommentHere)
		.click(function(){
			if($j(this).val() == txtWriteYourCommentHere) $j(this).val("").css("text-transform", "none");	
			})
		.keyup(function(e){
			if($j(this).val().length>256 && e.which != 8) {
				$j(this).val($j(this).val().substring(0,256));
				alert(txtToManyChars);
				}
			$j("#charcount").text("("+$j(this).val().length+"/256)");
			});
	$j("#gg-submitcomment")
	.click(function(e){
		if($j("#gg-commenttext").val() == txtWriteYourCommentHere || $j(this).hasClass("clicked")) return;
		$j(this)
			.addClass("clicked")
			.removeClass("hover");
		if($j(this).val().length>256) {
			$j("#charcount").text("("+$j(this).val().length+"/256)");
			if (!e) event.returnValue = false;
			else e.preventDefault();
			alert(txtToManyChars);
			return;
			}
		var t = encodeURIComponent($j("#gg-commenttext").val());


		$j.ajax({
			url:"/graphicscreator/graphics/postItemComment?page=1&commentText="+t+"&assetUrl="+encodeURIComponent("http://"+window.location.host+"/graphicscreator/graphics/gallery#viewertabs=comments&")+"id="+$items.current,
			dataType : "json" , 
			success: function(json){
				$items.byId[$items.current].comments  = json;
				$j("#gg-comments-populate")[0].scrollTo(0);
				$items.populate("comments", $items.byId[$items.current].comments.items[0]);
				$j("#firstcomment").css({ "display":"none"});
				$j("#gg-comments-populate li#comments-li-"+$items.byId[$items.current].comments.items[0].id).remove().hide().prependTo("#gg-comments-populate").fadeIn("slow");
				$j("#comments h4 span").html("").hide().text("("+$items.byId[$items.current].comments.pageInfo.totalResults+")").show();
				$j("#gg-comments-populate").jScrollPane( { showArrows:true, scrollbarWidth:18, scrollbarMargin:10, maintainPosition:true } );
				$j("#charcount").text("(0/256)");
				$j("#gg-commenttext").css("text-transform", "uppercase").val(txtWriteYourCommentHere)
				$j("#gg-submitcomment").show();
				$j("#gg-comments-populate  ul."+$items.byId[$items.current].comments.items[0].id+" li.flag" ).click(function(){
					setFlagThis($items.byId[$items.current].comments.items[0].id);
					$j("#flagViolation, #gg-flagReason").val("");
					$j(".flag-comment, .flagbox").show();
					$j(".flag-comment blockquote").text($items.byId[$items.current].comments.items[0].comment);
					$j(".flag-image, #flag-status").hide();
					tb_show(txtFlagCommentTitle,"#TB_inline?width=400&mp;height=400&amp;inlineId=flagbox", null);
					acticateFlagSubmit();
					})
				.hover(
					function() {
						$j(this).css({"color":"#f6e971"});
						},
					function() {
						$j(this).css({"color":"#ffffff" });
						}
					);
				$j("#gg-submitcomment")
					.removeClass("clicked");
				}
			});			
		});
	});
 $j(document).ready($shelving.init);

