
var tags = {};
tags.rTagID = 0;

function tagsFilterUnregistered (tagsObj, callback)
	{
	$.post
		(
		'ajax.php?do=tags-filter_unregistered',
		{'tags': tagsObj.val()},
		function (xml)
			{
			if ($(xml).find('filtered').children().size() > 0)
				{
				var newTags = $(xml).find('newTags').text();
				if (newTags != '')
					{
					newTags += ", ";
					}
				tagsObj.val(newTags);
				var filteredList = "<ul>";
				$(xml).find('filtered').children().each
					(
					function ()
						{
						filteredList += "<li>"+$(this).text()+"</li>";
						}
					);
				filteredList += "</ul>";
				showStatus({'body': $(xml).find('unregisteredMessage').text()+filteredList, 'duration': 5});
				if (typeof(callback) == 'function')
					{
					callback();
					}
				}
			},
		'xml'
		);
	}

function tagsInitializeRegistered ()
	{
	$('#tags-registered li .edit').live
		(
		'click',
		function ()
			{
			var id = $(this).parent().attr('id').replace("tags-reg-tag-", "");
			tagsRegisteredDialog(id);
			}
		);
	$('#tags-registered li .delete').live
		(
		'click',
		function ()
			{
			var id = $(this).parent().attr('id').replace("tags-reg-tag-", "");
			tagsDeleteRegistered(id);
			}
		);
	$('#tags-tag').live
		(
		'keydown',
		function (e)
			{
			if (enterKeyHit(e))
				{
				tagsSaveRegistered();
				}
			}
		);
	$('#tags-registered').find('li').each
		(
		function ()
			{
			var li = $(this);
			liTag = li.html();
			li.html("<span>"+liTag+"</span>");
			li.append("<div class='edit tags-registered_edit'></div><div class='delete tags-registered_delete'></div>");
			}
		);
	}

function tagsSaveRegistered ()
	{
	var tag = $('#tags-tag').val();
	if (typeof(tag) != 'undefined')
		{
		$('#tags-reg-dlg').dialog('close');
		$.post
			(
			'ajax.php?do=tags-save_registered',
			{'tag': tag, 'id': tags.rTagID},
			function (xml)
				{
				if (tags.rTagID > 0)
					{
					$('#tags-reg-tag-'+tags.rTagID).html("<span>"+tag+"</span><div class='edit tags-registered_edit'></div><div class='delete tags-registered_delete'></div>").effect('pulsate', {times: 4}, 200);
					tags.rTagID = 0;
					}
				else
					{
					$('#tags-registered').append("<li id='tags-reg-tag-"+$(xml).find('id').text()+"' class='tags-registered_li' style='display:none;'><span>"+$(xml).find('tag').text()+"</span><div class='edit tags-registered_edit'></div><div class='delete tags-registered_delete'></div></li>");
					$('#tags-reg-tag-'+$(xml).find('id').text()).animate({height: 'show', opacity: 'show'});
					}
				showStatus({'body': $(xml).find('result').text()});
				},
			'xml'
			);
		}
	else
		{
		tagsRegisteredDialog();
		}
	}

function tagsDeleteRegistered (id)
	{
	var c = confirm(langMes['confirm_delete']);
	if (c)
		{
		$.post
			(
			'ajax.php?do=tags-delete_registered',
			{'id': id},
			function (xml)
				{
				showStatus({'body': $(xml).find('result').text()});
				$('#tags-reg-tag-'+id).animate({height: 'hide', opacity: 'hide'}, function () {$(this).remove();});
				},
			'xml'
			);
		}
	}

function tagsRegisteredDialog (tid)
	{
	if (typeof(tid) == 'undefined')
		{
		var dTitle = langMes['edit_a_tag'];
		var button = langMes['add_tag'];
		var value = "";
		}
	else
		{
		tags.rTagID = tid;
		var dTitle = langMes['edit_a_tag'];
		var button = langMes['edit_tag'];
		var value = $('#tags-reg-tag-'+tid).children('span').html();
		}
	$('#tags-reg-dlg').dialog('close').remove();
	$('body').prepend("<div id='tags-reg-dlg' style='display:none;'></div>");
	var ard = langMes['tag'];
	ard += ": <input type='text' name='tag' id='tags-tag' value=\""+value+"\"/>";
	ard += "<div class='submit_pane'><input type='button' class='submit_button' value=\""+button+"\" onclick=\"tagsSaveRegistered();\"/></div>";
	$('#tags-reg-dlg').html(ard).dialog
		({
		title: dTitle,
		width: 300,
		height: 200,
		open: function ()
			{
			$('#tags-tag').focus();
			},
		close: function ()
			{
			$('#tags-reg-dlg').remove();
			}
		});

	}

