function set_tag(tag_id){
    $('#id_tags').val('"'+tag_id+'"');
}

function clear_tag(){
		$('#id_tags').val('');
}

function del_tag(tag_id){
		tags=$('#id_tags').val().split(", ");
		deleted_tag='"'+tag_id+'"';
		new_tags=Array();
		for (i=0; i<tags.length; i++){
				tag=tags[i]
				if (tag==""){
						continue;
				}
				if (tag==deleted_tag){
						continue;
				}
				new_tags.push(tag);
		}
		$('#id_tags').val(new_tags.join(", "));
}


function add_tag(tag_id){
		tags=$('#id_tags').val().split(", ");
		new_tag='"'+tag_id+'"';
		new_tags=Array();
		haved=false;
		for (i=0; i<tags.length; i++){
				tag=tags[i]
				if (tag==""){
						continue;
				}
				if (tag==new_tag){
						haved=true;
				}
				new_tags.push(tag);
		}
		if (!haved){
				new_tags.push(new_tag);
		}
		$('#id_tags').val(new_tags.join(", "));
}


function user_tag_list_normalize(){
		allcount=0;

		if($('ul#usl_part').children().size()>0){
				$('div#sl_part').css('display','block');
				allcount+=1;
		}else{
				$('div#sl_part').css('display','none');
		}

		if($('ul#usl_region').children().size()>0){
				$('div#sl_region').css('display','block');
				allcount+=1;
		}else{
				$('div#sl_region').css('display','none');
		}

		if($('ul#usl_cloud').children().size()>0){
				$('div#sl_cloud').css('display','block');
				allcount+=1;
		}else{
				$('div#sl_cloud').css('display','none');
		}

		if(allcount>0){
				$('div#listtag').css('display','block');
		}else{
				$('div#listtag').css('display','none');
		}
}


function get_tag_list(){
		queryparts=Array();
		counter=0
		tags=$('ul#usl_part li');
    if (tags.size()>0){
				taglist=Array();
				for (i=0; i<tags.size();i++){
						taglist[i]=$('li#'+tags[i].id+' a:first').text().toLowerCase();
				}
				queryparts[counter]=taglist.join('|');
				counter++;
		}

		tags=$('ul#usl_region li');
    if (tags.size()>0){
				taglist=Array();
				for (i=0; i<tags.size();i++){
						taglist[i]=$('#'+tags[i].id+' a:first').text().toLowerCase();
				}
				queryparts[counter]=taglist.join('|');
				counter++;
		}

		tags=$('ul#usl_cloud li');
    if (tags.size()>0){
				taglist=Array();
				for (i=0; i<tags.size();i++){
						taglist[i]=$('#'+tags[i].id+' a:first').text().toLowerCase();
				}
				queryparts[counter]=taglist.join('|');
				counter++;
		}

		query=queryparts.join('+');
		if (query.length==0){
				top.location="/";
		}else{
				top.location="/tag/"+query+"/";
		}
}

function uat(){user_add_tag(this.id,'');return false;}
function udt(){user_del_tag(this.id,'');return false;}

function add_tag_to_list(id,name,part){
		var re = /(\w+)(\d+)/;
		
		$('<li class="utag" id="utag_'+id+'">'+'<a href="#" title="удалить">'+name+'</a><a href="#" title="удалить"><img class="x" title="удалить" alt="[x]" src="/static/ord/img/x.gif" /></a>'+''+'</li>').appendTo('ul#usl_'+part);
		$('li#utag_'+id+' a').click(function(){user_del_tag(id,part);return false;});
		user_tag_list_normalize();
}

function delete_tag_from_list(id,name,part){
		$('ul#usl_'+part+' li#utag_'+id).remove();
		user_tag_list_normalize();
}

function user_add_tag(id,part){
		re=/([^\d]+)\d+/; 
		part=re.exec(id)[1];
		elem=$("#"+id);
		document.getElementById(id).onclick=udt;
		add_tag_to_list(id,elem.attr('title'),part);
}

function user_del_tag(id,part){
		re=/([^\d]+)\d+/; 
		part=re.exec(id)[1];
		elem=$("#"+id);
		document.getElementById(id).onclick=uat;
		delete_tag_from_list(id,elem.attr('title'),part);
}

String.prototype.capitalize = function(){ //v1.0
    return this.replace(/.+/g, function(a){
        return a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
    });
};

function user_taglist_restore(){
		url=decodeURIComponent(location.href);
		re=/\/tag\/([^\/]+)\/?/;
		if(re.test(url)){
				taglist=new Array();
				taggroups=re.exec(url)[1].split('+');
				for (group in taggroups){
						tags=taggroups[group].split('|');
						taglist=taglist.concat(tags);
				}
				for (tag in taglist){
						
						elem=$("div#selecttag area, div#selecttag a").filter( function(){
										return $(this).attr('title').toLowerCase()==taglist[tag]; 
								}).each(function(){
												id=$(this).attr('id'); 
												re=/([^\d]+)\d+/; 
												part=re.exec(id)[1];
												user_add_tag(id,part);
										});
				}
		}
}

function aat(){admin_add_tag(this.id,'');return false;}
function adt(){admin_del_tag(this.id,'');return false;}


function admin_add_tag(id,part){
		re=/([^\d]+)\d+/; 
		part=re.exec(id)[1];
		elem=$("#"+id);
		document.getElementById(id).onclick=adt;
		add_tag(elem.attr('title').toLowerCase());
}

function admin_del_tag(id,part){
		re=/([^\d]+)\d+/; 
		part=re.exec(id)[1];
		elem=$("#"+id);
		document.getElementById(id).onclick=aat;
		del_tag(elem.attr('title').toLowerCase());
}

