var member_visible_id = 0;
var member_last_value;
var member_last_counter = 0;
var member_wait_time = 500;
var member_link_ok = 1;
var wall_submitted = 0;
var crop_string = "";

function check_if_link_is_free(input, member) {
	member_last_counter++;
	var func_call = "perform_search(" + member_last_counter + ", '" + input.value + "', '" + member + "')";
	setTimeout(func_call, member_wait_time);
}

function perform_search(counter, value, member) {

	if (counter != member_last_counter) {
		return;
	}
		
    if(value.length < 2) {
		set_not_ok();
     	return;
    }

    if (value==member_last_value) {
    	return;
    }
    
	member_last_value=value;
	
    ok_func = function (transport) { update_search(transport); };
    failed_func = function (transport) { update_search(transport); };
    var url = 'member/ajax/check_link.cgi'
    var pars = 'keyword=member&value='+value+'&args='+member;

    var myAjax = new Ajax.Request( url,
                                  { method: 'get',
                                    parameters: pars,
                                    onSuccess: ok_func,
				    				onFailure: failed_func
                                  });
    return false;
}

function return_if_ok() {
	if (member_link_ok == 1) {
		return true;
	} else {
		return false;
	}
}

function set_not_ok() {
	$('link_is_free').innerHTML = "Inte ledigt!";
	$('link_is_free').style.color = "red";
	member_link_ok = 0;
}

function set_ok() {
	$('link_is_free').innerHTML = "";
	$('link_is_free').style.color = "green";
	member_link_ok = 1;
}

function update_search(transport) {
	if (transport.responseText == 'ok') {
		set_ok();
	} else {
		set_not_ok();
	}
}

function onEndCrop( coords, dimensions ) {
	crop_string = coords.x1 + '|' + coords.y1 + '|' + coords.x2 + '|' + coords.y2 + '|' + dimensions.width + '|' + dimensions.height + '|';
}

function save_crop(type, member) {
	document.location="/member/save_edit_image.cgi?type=" + type + "&id=" + member + "&data=" + crop_string;
}

function save_friend(action,friend) {
	var url = '/member/ajax/save_friend.cgi';
	var pars = 'action='+action+'&friend='+friend;
	var ok_func = function (transport) { saved_friend(action, friend, transport); };
	new Ajax.Request(url,
						{ method: 'get',
						  parameters: pars,
						  onSuccess: ok_func,
						  onFailure: ok_func
      });
}

function saved_friend(action, friend, transport) {
	if (transport.responseText != 'ok') {
		alert("Något gick fel.");
		return false;
	}

    window.location.reload();
}

function load_blob(blob, member, type) {
	var url = '/member/ajax/load_blob.cgi';
	var pars = 'blob='+blob+'&viewed='+member+'&type='+type;
	var ok_func = function (transport) { show_result('blob', transport); };
	new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				        });

}

function load_shelf(shelf, member, offset) {
	var url = '/lists/ajax/load_shelf.cgi';
	var pars = 'shelf='+shelf+'&viewed='+member+'&offset='+offset;
	var ok_func = function (transport) { show_result('shelf', transport); };
	new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				        });
}

function load_news(type, member) {
	var url = '/member/ajax/load_news.cgi';
	var pars = 'news='+type+'&viewed='+member;
	var ok_func = function (transport) { show_result('news_div', transport); };
	new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				        });
}

function load_shelf_as_list(shelf, member, offset) {
	var url = '/lists/ajax/load_shelf_as_list.cgi';
	var pars = 'shelf='+shelf+'&viewed='+member+'&offset='+offset;
	var ok_func = function (transport) { show_result('shelf', transport); };
	new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				        });
}

function show_result(divname, transport) {

    if(!$(divname)) {
        window.location.reload();
    }
    
    $(divname).innerHTML = transport.responseText;

    var x = $(divname).getElementsByTagName("script");
    for(var i=0;i<x.length;i++) {
    	eval(x[i].text);
    }
    $(divname).style.display='block';
//    setTimeout('setTall("primaryContent", "secondaryContent")',1250);
}

/*function write_on_wall() {
    if ($('write_on_wall').style.display = 'none') {
	$('write_on_wall').style.display = 'block';
    }
    else {
	$('write_on_wall').style.display = 'none';
    }
    }*/

function submit_wall(post_form_name, viewed) {
	var url = '/forum/save_straight_answer.cgi';
	var pars = $(post_form_name).serialize();
	var ok_func = function (transport) { load_blob('wall', viewed); };
	new Ajax.Request(url,
						{ method: 'get',
						  parameters: pars,
						  onSuccess: ok_func
				    });
}

function get_all_events(divname, source, type) {
	var url = '/member/ajax/get_all_events.cgi';
	var pars = 'source=' + source + '&type=' + type;
	var ok_func = function (transport) { show_result(divname, transport); };
	new Ajax.Request(url,
						{ method: 'get',
						  parameters: pars,
						  onSuccess: ok_func
				    });
}
function get_all_grouped_events(divname, source, type) {
    var url = '/member/ajax/get_all_events.cgi';
    var pars = 'source=' + source + '&type=' + type + '&grouped=1';
    var ok_func = function (transport) { show_result(divname, transport); };
    new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				    });
}

function ignore_event(event) {
    var url = '/calendar_events/ajax/ignore_event.cgi';
    var pars = 'event=' + event;
    var ok_func = function (transport) { event_ignored(transport); };
    new Ajax.Request(url,
						{ method: 'post',
						  parameters: pars,
						  onSuccess: ok_func
				    });
}

function event_ignored(transport) {
    if (transport.responseText == 'ok') {
	window.location.reload();
    }
}

function check_edit_fields () {
    var error = 0;
    $('no_firstname').style.display = 'none';
    $('no_lastname').style.display = 'none';
    $('no_birthday').style.display = 'none';

    if ($('firstname').value == '') {
	$('no_firstname').style.display = 'block';
	error = 1;
    }
    if ($('lastname').value == '') {
	$('no_lastname').style.display = 'block';
	error = 1;
    }
    if ($('age_day').value == '' || $('age_month').value == '' || $('age_year').value == '') { 
	$('no_birthday').style.display = 'block';
	error = 1;
    }
    if (error == 1) {
	return false;
    } else {
	return true;
    }
}
