function LoadAutocomplete( tags )
{
	
	properties = { 
					result_field:'result_tags', 
					matchContains: true,
					minChars: 0,
					seletFirst:	true,
					onSubmit: function(){ AddTagsLabel( $('#result_tags')[0] ) },
					intro_text: "type tag",
					no_result: 'no tags'};
	
	$("#list_user").autocomplete(tags, properties);
	
	setTimeout( function(){ 
		$("#list_user").AddBox( tags[ parseInt(Math.random()*tags.length) ] );
		$("#list_user").AddBox( tags[ parseInt(Math.random()*tags.length) ] );
		$("#list_user").blur();
	} ,30);
	
	$("#list_user").click(FirstTagsClick);

/*	jQuery("#search_str").suggest(tags,{
			'sourceType' : 'array',
			'selectType': 'add',
			'minchars': -1,
			'onSubmit': AddTagsLabel
		}
	); */
}

function FirstTagsClick()
{
	var values = $('#result_tags').val().split(",");
	$.each( values, function(i, node){
		if( !node ) return;
		$("#list_user").DelBox( node );
	})
	$("#list_user").unbind('click',FirstTagsClick);
}

function AddTagsLabel( strObj )
{
	if( !strObj || !$.trim( $(strObj).val() ) ) return;
	var selectedTags = $.trim( $(strObj).val() );
	selectedTags = selectedTags.replace(/</g,'&lt;');
	selectedTags = selectedTags.replace(/>/g,'&rt;');
	if( selectedTags.substr(selectedTags.length-1) == ',' )
			selectedTags = selectedTags.substr(0,selectedTags.length-1);
	var selectedTagsArray = selectedTags.split(',');
	selectedTagsArray = $.map( selectedTagsArray, function( node ){ return $.trim(node) });	
	selectedTagsArray = selectedTagsArray.sort();
	
	var newLabel = selectedTagsArray.join("\t"); 
	var TagsLabels = GetTagsLabels();
	
	
	if( $.inArray(newLabel, TagsLabels) == -1 )
	{
		TagsLabels.push(newLabel);	
	}
	
	SaveTagsLabels(TagsLabels);
		
	TagLabelRedirect( newLabel );
	
	//set_cookie('blogs', blogs.join(':'),0,0,0,'/' );	
}


function SaveTagsLabels( labelsArray )
{
	if( !labelsArray ) return;
	labelsArray =labelsArray.sort();
	
	var labelsCount = get_cookie('label_count') || 0;

	for( var labelI = 0; labelI < labelsCount; labelI++ )
	{
		clear_cookie('label_'+labelI);
	}
	
	for( var labelI = 0; labelI < labelsArray.length; labelI++ )
	{
		set_cookie('label_'+labelI, labelsArray[labelI], 2020,0,1,'/' );
	}
	
	set_cookie('label_count', labelsArray.length, 2020,0,1,'/' );
}

function TagLabelRedirect( tagLabel )
{	
	document.location = '/tags/'+encodeURI(tagLabel);
}

function GetTagsLabels()
{
	var labels = [];
	var labelsCount = get_cookie('label_count');
	if( !labelsCount ) return labels;
	
	for( var labelI = 0; labelI < labelsCount; labelI++ )
	{
		var labelText = get_cookie('label_'+labelI);
		if(labelText) labels.push(labelText);
	}
	return labels;
}


function DisplayTagLabels()
{
	$('#navsub').empty();
	var TagsLabels = GetTagsLabels();
	for (var labelI = 0; labelI < TagsLabels.length; labelI++)
	{
		var linkText = TagsLabels[labelI];
		linkText = linkText.replace(/\t/g,'+');
		var imgDel = '<img onclick="DelTagLabel(\''+TagsLabels[labelI]+'\')" src="/img/hide_1.png" />';
		var tagLabel = $('<div><a href="/tags/'+encodeURI(TagsLabels[labelI])+'">'+linkText+'</a>'+imgDel+'</div>');
		tagLabel.mouseover( function(){ $('img',this).show() } );
		tagLabel.mouseout( function(){ $('img',this).hide() } );
		$('#navsub').append( tagLabel );
	}	
}

function DelTagLabel( label )
{
	if( !label) return;
	
	var TagsLabels = GetTagsLabels();
	var DelIndex = $.inArray( label, TagsLabels);
	if( DelIndex != -1 )
	{
		TagsLabels.splice(DelIndex, 1);
		SaveTagsLabels(TagsLabels);
	}
	DisplayTagLabels();
	return;
}
