function parse(data) 
{
	var parsed = [];
	var rows = data.split("\n");
	for (var i=0; i < rows.length; i++) 
	{
		var row = $.trim(rows[i]);
		if (row) 
		{
			row = row.split("|");
			parsed[parsed.length] = 
			{
				data: row,
				value: row[0],
				result: options.formatResult && options.formatResult(row, row[0]) || row[0]
			};
		}
	}
	
	return parsed;
}
	
function ajax_load_video(input_id, value)
{		
	value = stripValue(value);
	$("#youtube_form_loader").toggle();
    
	$.post(base_url + '/ajax/upload-video', {video_id: value}, function(json_data){
				
				error_viewer = new ErrorViewer('youtube_errors');
		
				var result = eval('(' + json_data + ')');
				
				if(result.error == true)
				{					
					error_viewer.displayError(result.error_message);					
				}
				else
				{					
					addValueToList(input_id, value);					
					$("#" + input_id + '_video_container').append($(result.html));
					$("#" + input_id + '_video_container > div').show('fast');			 				
	 			}
				
				$("#youtube_form_loader").toggle();	
            }
        );
}

function stripValue(value)
{
	var end_value;
	if(value.substr(0,7) == "http://")
	{
		tmp   = value.split("?");
		value = tmp.pop();
		tmp   = value.split("&");
		
		
		$.each(tmp,function(i,val)
				{
					tmp2 = val.split("=")
					{
						if(tmp2[0] == "v")
						{
							end_value = tmp2[1];
						}
					}
				})
		
	}
	else
	{
		end_value = value;
	}
	return end_value;
}

function addValueToList(input_id, value, key)
{
	new_input = document.createElement('input');
	$(new_input).attr('value', value);
	$(new_input).attr('id', input_id + '_' + value);
	
	if (typeof key == 'undefined')
	{
		$(new_input).attr('name', input_id + '[]');
	}
	else
	{
		$(new_input).attr('name', input_id + '[' + key + ']');
	}
	
	$(new_input).attr('type', 'hidden');
	
	$("#" + input_id).parent().append($(new_input));
}

function removeValueFromList(input_id, value)
{
	$("#" + input_id + '_' + value).remove();	
}

function ajax_load_flickr(input_id, value)
{		
	$("#flickr_form_loader").toggle();
    
	$.post(base_url + '/ajax/upload-flickr', {user_name: value}, function(data){
				
				error_viewer = new ErrorViewer('flickr_errors');
				
				result = eval('(' + data + ')');
				if(result.error == true)
				{					
					error_viewer.displayError(result.err_msg);					
				}
				else
				{	
					error_viewer.resetError();
					//if (result.set != false)
					//{						
						//$("#flickr_set_id").val(result.set_id);	
					//}
					
					new_div = document.createElement('div');
					$(new_div).html(result.html);
					$(new_div).css('display', 'none');
                                        $("#" + input_id + '_flickr_container').children().remove();
					$("#" + input_id + '_flickr_container').append($(new_div));
					$(new_div).show('fast');	 				
	 			}
				
				$("#flickr_form_loader").toggle();
            }
        );
}

function select_flickr_set(set_id)
{
	var previous_set = $("#flickr_set_id").val();
	if(previous_set == "")
	{
		previous_set = 0;
		$("#current-flickr-set").show(300);
	}
	
	var html = $("#flickr_set_" + set_id).html();
	
	$("#flickr_current_set_" + previous_set).hide(300);
	
	$("#flickr_current_set_" + previous_set).html("");
	$("#flickr_set_" + set_id).siblings().hide(300, function(){
			$(this).remove();
	});
	$("#flickr_set_" + set_id).remove();
	$("#flickr_current_set_" + previous_set).attr("id","flickr_current_set_" + set_id);
	$("#flickr_current_set_" + set_id).html(html);
	$("#flickr_current_set_" + set_id + " .select").remove();
	$("#flickr_current_set_" + set_id + " .remove").show();
	$("#flickr_current_set_" + set_id).show(300);
	$("#flickr_set_id").val(set_id);
}

function remove_flickr_set(set_id)
{
	$("#current-flickr-set").hide(300);
	$("#flickr_current_set_" + set_id).attr("id","flickr_current_set_0");
	$("#flickr_set_id").val('');	
}

var first_name;
var last_name;
var user_name;
var company_name;
var suggested_name;
$(document).ready(function()
{
	$("#first_name").change(function()
			{
				first_name = $("#first_name").val();
			})
			
	$("#last_name").change(function()
			{
				last_name = $("#last_name").val();
			})
			
	$("#company_name").change(function()
			{
				company_name = $("#company_name").val();
			})
	
	getSuggestion = function()
	{
		if((first_name != undefined && last_name != undefined) || company_name != undefined)
		{
			$.ajax({
					type:    "GET",
					url:     base_url + "/ajax/suggest-username",
					data:    "first_name=" + first_name + "&last_name=" + last_name + "&company_name=" + company_name,
					success: function(msg)
							{
								$("#username_info").addClass("dark-blue-bckg");
								$("#username_info").fadeIn('fast');
								$("#username_info").html("Suggested automatically");
								$("#user_name").val(msg);
								suggested_name = msg;
							}
			});
		}
		else
		{
			$("#username_info").removeClass("dark-blue-bckg");
			$("#username_info").addClass("dark-pink-bckg");
			$("#username_info").fadeIn('fast');
			$("#username_info").html("Type in First Name, Last Name or Company Name for autosuggestion");
		}
	}
			
	$("#last_name").blur(getSuggestion);
	$("#company_name").blur(getSuggestion);
	
	$("#user_name").change(
			function()
			{
				user_name = $("#user_name").val();
				if(user_name == "")
				{
					$("#username_info").fadeOut('fast');
				}
				else
				{
					$.ajax({
							type:    "GET",
							url:     base_url + "/ajax/suggest-username",
							data:    "user_name=" + user_name,
							success: function(msg)
									{
										if(suggested_name != user_name)
										{
											$("#username_info").fadeIn('fast');
											//changed the name
											if(msg == user_name)
											{
												$("#username_info").html("Username <strong>: " + msg + "</strong> available.");
											}
											else
											{
												$("#username_info").html("Username <strong>: " + user_name + "</strong> not available.<br /> Available: <strong>" + msg + "</strong>" );
											}
											$("#user_name").val(msg);
											suggested_name = msg;
										}
										
									}
					});
				}
			});
	
});
