$(document).ready(function () {
	watchlistInitialize();
});

function watchlistInitialize() {
	
	if(watchlistLoad())
		return false;
	
	if($.cookie(WATCHLIST_COOKIE_NAME) != null)
	{
		var rooms = $.evalJSON($.cookie(WATCHLIST_COOKIE_NAME))
		$('#watchlistContent').html(TEXT_WATCHLIST_FILLED);
		$('#watchlistContent').append('<table id="watchlistContentList"></table>');
		$.each(rooms, function() {
			$('#watchlistContentList').append('<tr id="room_' + this.id + '"><td class="roomName"><a href="' + this.url + '">' + this.title + '</a></td><td><a href="#" onclick="watchlistRemove(' + this.id + ')">' + TEXT_WATCHLIST_DELETE_ITEM + '</a></td></tr>');
		});
		$('#watchlistContent').append('<p class="button"><a href="/de/Merkliste.htm" id="watchlistDeleteLink">' + TEXT_WATCHLIST_DELETE + '</a></p>');
		
		$("#watchlistDeleteLink").click(function () {
			$.cookie(WATCHLIST_COOKIE_NAME, null, WATCHLIST_COOKIE_OPTIONS);
			$(this).text(TEXT_WATCHLIST_DELETE_SUCCESS);
			$('#watchlistContent').html(TEXT_WATCHLIST_EMPTY);
			return false;
		});

		$('#watchlistContent').append('<p class="button"><a href="' + LINK_WATCHLIST + '" id="watchlistSendLink">' + TEXT_WATCHLIST_SEND + '</a></li>');
		
		$("#watchlistSendLink").click(function () {
			var dialogButtons = {};
			dialogButtons[DIALOG_SEND] = function() {
				var bValid = true;
				bValid = bValid && $('#wlEmail').val() != '';
				bValid = bValid && valIsEmail($('#wlEmail').val());
			
				if (bValid) {
					$.post('/scripts/applications/watchlistSend.asp', { email: $('#wlEmail').val(), watchlist: escape($.cookie(WATCHLIST_COOKIE_NAME)) } );
					$(this).dialog('destroy');
					dialogButtons = {};
					dialogButtons[DIALOG_CLOSE] = function() {
						$(this).dialog('destroy');
					};
					$("#dialogWatchlistSendSuccess").dialog({
						bgiframe: true,
						modal: true,
						buttons: dialogButtons
					});
				}
				else
				{
					$('#wlError').show();
				}
			};
			dialogButtons[DIALOG_CANCEL] = function() {
				$(this).dialog('destroy');
			};
			$("#dialogWatchlistSend").dialog({
				bgiframe: true,
				modal: true,
				buttons: dialogButtons
			});
			return false;
		});
		
		$('watchlistEntry').attr('value', escape($.cookie(WATCHLIST_COOKIE_NAME)));

	}
	else
	{
		$('#watchlistContent').html(TEXT_WATCHLIST_EMPTY);
	}
}

function watchlistLoad()
{
	if($.query.get('watchlistEntry') != '')
	{
		var dialogButtons = {};
		dialogButtons[DIALOG_YES] = function() {
			$.cookie(WATCHLIST_COOKIE_NAME, $.query.get('watchlistEntry'), WATCHLIST_COOKIE_OPTIONS);
			location.href = '/de/Merkliste.htm';
		};
		dialogButtons[DIALOG_NO] = function() {
			$(this).dialog('destroy');
		};
		$("#dialogWatchlistLoad").dialog({
			bgiframe: true,
			modal: true,
			buttons: dialogButtons
		});
		return true;
	}
	else
	{
		return false;
	}
}

function watchlistRemove(_id) {
	if($.cookie(WATCHLIST_COOKIE_NAME) != null)
	{
		var rooms = $.evalJSON($.cookie(WATCHLIST_COOKIE_NAME));
		var roomsNew;
		$.each(rooms, function() {
			if(this.id == _id)
			{
				$('#room_' + _id).remove();
			}
			else
			{
				var room = {'id' : this.id, 'url': this.url, 'title': this.title};
				if(roomsNew == undefined)
				{
					roomsNew = [room];
				}
				else
				{
					roomsNew[roomsNew.length] = room;
				}
				
			}
		});
		
		if(roomsNew != undefined)
			$.cookie(WATCHLIST_COOKIE_NAME, $.toJSON(roomsNew), WATCHLIST_COOKIE_OPTIONS);
		else
			watchlistDelete();
		
		watchlistInitialize();
	}
	else
	{
		var rooms = [room];
		$.cookie(WATCHLIST_COOKIE_NAME, $.toJSON(rooms), WATCHLIST_COOKIE_OPTIONS);
	}
	return false;
}

function watchlistDelete() {
	$.cookie(WATCHLIST_COOKIE_NAME, null, WATCHLIST_COOKIE_OPTIONS);
}
