function action_delete(action_id) {
	var params = 'action_id=' + action_id;
	var m = new Ajax.Request('./action_delete.php',
	{
		method: 'get',
		parameters: params	,
		onComplete: function() {
			$('action_' + action_id).hide();
		}
	}
	); // end ajax requester
}

function showLoad() {
	$('minichat_load').show();
	$('memotext').value = '';
}

function noteAdd(action, profile_id) {
	$('memobox').show();
	var params = 'action=' + action + '&note=' + encodeURIComponent($F('memotext')) + '&profile_id=' + profile_id;
	if($F('memotext') != "") {
		var note = new Ajax.Request('./profile_ajax_notes.php',
		{
			method: 'get',
			parameters: params,
			onLoading: showLoad(),
			onComplete: function(transport) {
				$('minichat_load').hide();
				$('memo_input_field').hide();
				$('memobox').update(transport.responseText);
			}
		}

		); // end ajax requester
	}
}

function noteDelete(action, note_id, profile_id) {
	var params = 'action=' + action + '&note_id=' + note_id + '&profile_id=' + profile_id;
	var note = new Ajax.Request('./profile_ajax_notes.php',
	{
		method: 'get',
		parameters: params,
		onLoading: showLoad(),
		onComplete: function(transport) {
			$('minichat_load').hide();
			$('memobox').update(transport.responseText);
		}
	}

	); // end ajax requester
}

function noteShow(action, profile_id) {
	var params = 'action=' + action + '&profile_id=' + profile_id;
	var note = new Ajax.Request('./profile_ajax_notes.php',
	{
		method: 'post',
		parameters: params,
		onLoading: showLoad(),
		onComplete: function(transport) {
			$('minichat_load').hide();
			if(transport.responseText != ' ') {
				$('memobox').show();
				$('memobox').update(transport.responseText);
			}

		}
	}

	); // end ajax requester
}

function note_press_enter() {
	if(window.event && window.event.keyCode == 13)
	chat('send');
}

function editProfileField(fieldID,fieldLength,fieldType) {
	if($F('edit_status')=='1') {
		var newID = 'nf' + fieldID; 	// element ID of new input field
		var prilID = 'pril' + fieldID; 	// element ID of new input field
		var subID = 'submit' + fieldID; // element ID of save/submit button
		var img   = 'i' + fieldID;  	// element id of indicator
		var s 	  = 's'  + fieldID; 	// element ID of new save button
		var fb    = "fbe" + fieldID;
		autosave = 'saveField(' + fieldID + ',' + fieldLength + ',\'' + fieldType + '\')';
		var action = 'javascript:saveField(' + fieldID + ',' + fieldLength + ',\'' + fieldType + '\')';
		var ob = 'closeField(' + fieldID + ')';

		v = new Ajax.Request('profile_ajax_update.php', {
			method: 'post',
			parameters: 'action=getVal&field_id=' + fieldID,
			onLoading: $(img).show(),
			onComplete: function(transport) {
				$(img).hide();
				if ($(fb)) {
					backupFb = $(fb).cloneNode(true);
					Element.replace($(fb),"<span id='replacement' />");

				}
				a = transport.responseText.evalJSON();
				$('edit_status').value = '0';
				var pril 	= new Element('a', { 'rel': 'protolimit['+newID+'='+fieldLength+']', id: prilID }).update('66');
				pril.setStyle({fontSize: '10px', fontWeight: 'normal', fontFamily: 'Arial'});
				if(fieldType == 'text')
				var input 	= new Element('input', { 'class': 'fieldEdit', type: 'text', value: a.field_value, size: fieldLength, id: newID, 'onBlur': autosave });
				if(fieldType == 'textarea')
				var input 	= new Element('textarea', { 'class': 'fieldEdit', rows: '8', cols: '50', id: newID, 'onBlur': autosave });


				var saveIcon 	= new Element('img', { 'class': 'fieldSubmit', type: 'image', src: './images/icons/save.gif', border: '0'});
				var anchor = new Element('a', { href: action, id: subID }).update(saveIcon);
				var  field	= 'p' + fieldID;
				$(field).update(pril).appendChild(input);
				$(newID).value=a.field_value;
				$(s).update(anchor);
				$(newID).focus();
				new Protolimit();
			}
		}
		);
	} // close if edit_status
} // end function

function saveField(id,fieldLength,fieldType) {
	myInputField = 'nf' +id;  				// input feld
	mySaveIcon = 'submit' + id; 			// save/submit button
	myPril = 'pril' + id; 			    // save/submit button
	myIndicator = 'i' + id;  				// id des indicators
	value = $F(myInputField);   			// value des input feldes
	outputField = 'p' + id; 				// zelle des rueckgabewertes
	myEditButton  = 's' + id;
	e = 'e' + id;
	action = 'editProfileField(' + id + ',' + fieldLength + ',\'' + fieldType + '\')';
	url = 'profile_ajax_update.php';
	params = 'action=save&field_id=' + id + '&value=' + encodeURIComponent(value);
	var save = new Ajax.Request(url, {
		method: 'post',
		parameters: params,
		onLoading: $(myIndicator).show(),
		onComplete: function(transport) {
			$('edit_status').value='1';
			$(myIndicator).hide();
			var edit = new Element('img', { 'class': 'profile_edit_icon', src: './images/icons/profil_user_guestbook.png', id: e, onClick: action });
			$(mySaveIcon).remove();
			$(myPril).remove();
			$(myInputField).remove();
			$(myEditButton).update(edit);
			if (typeof backupFb != 'undefined') Element.replace($('replacement'),backupFb);

			var r = transport.responseText.evalJSON();
			if(r.error) {
				$(outputField).update(r.errorText);
			}
			else {
				var value = r.field_value;
				$(outputField).update(value.replace(/\n/g,"<br/>"));
			}
		}
	});
}

function saveLanguages(field_id) {
	output = "";
	myIndicator = 'i' + field_id;
	var a=$$('input.lang');
	a.each(function(s) {
		if(s.checked) {
			output = output + s.value + ",";
		}
	});
	var l = new Ajax.Request('profile_ajax_update.php',{
		method: 'post',
		parameters: {field_id: field_id, action: 'save', value: output},
		onLoading: $(myIndicator).show(),
		onComplete: function(transport) {
			$(myIndicator).hide();
		}

	});
}

function saveDOBField(id) {
	myIndicator = 'i' + id;  				// id des indicators
	value = $F('yob') + '-' + $F('mob') + '-' +  $F('dob');
	url = 'profile_ajax_update.php';
	params = 'action=save&field_id=' + id + '&value=' + value;
	var save = new Ajax.Request(url, {
		method: 'post',
		parameters: params,
		onLoading: $(myIndicator).show(),
		onComplete: function(transport) {
			$(myIndicator).hide();
			var r = transport.responseText.evalJSON();
			if(r.error) {
				$(outputField).update('<strong>ERROR</strong>! Profile could not be updated.');
			}
			else {
				var value = r.field_value;
			}
		}
	});
}



function hideBusinessEdit() {
	var a = $$('img.profile_edit_icon');
	a.each(Element.hide);
}

function showBusinessEdit() {
	var a = $$('img.profile_edit_icon');
	a.each(Element.show);
}

function saveSelected(id) {
	mySelectField = 'p' +id;
	myIndicator = 'i' + id;  			// id des indicators
	url = 'profile_ajax_update.php';
	params = 'action=save&field_id=' + id + '&value=' + $F(mySelectField);

	var s = new Ajax.Request(url,
	{
		method: 'post',
		parameters: params,
		onLoading: $(myIndicator).show(),
		onComplete: function() {
			$(myIndicator).hide();
		}
	}

	); // end ajax requester
}


function startUpload(input) {
	//$('uploadDiv').hide();
	$('ajax-loader-bar').show();
	input.form.submit();
}

function uploadFinished() {
	hideBusyLayer();
	$('ajax-loader-bar').hide();
	$('uploadDiv').hide();
	$('photo').value = '';
	$('uplButton').disable();
	img = new Ajax.Request('profile_ajax_update.php',
	{
		method: 'post',
		parameters: { action: 'getProfilePhoto'},
		onComplete: function(transport) {
			t = transport.responseText.evalJSON();
			newImg = t.img ;
			$('profile-foto').src = newImg;
			Event.stopObserving('upload-frame', 'load', uploadFinished);
		}
	});
}

function privacyFinished() {
	hideBusyLayer();
	$('ajax-loader-bar').hide();
	$('privacyDiv').hide();
	//Event.stopObserving('privacy-frame', 'load', privacyFinished);
}

function add_position_box() {
	if( $('former_position_' + counter).value != lang_position && $('former_position_'+counter).value != '' && $('former_firm_'+counter).value != lang_comp && $('former_firm_'+counter).value != '') {
		counter++;
		var box = Builder.node('li',{ id: 'position_li' + counter, className: 'new_postion_list_row' }, [
		Builder.node('div',{className: 'new_position_number'},counter),
		Builder.node('div',{className: 'new_position_box'},[
		Builder.node('input',{className: 'postion_input position_position_input', id: 'former_position_'+counter+'', name: 'former_position_'+counter+'',type: 'text',value: lang_position, onfocus: 'if (this.value == lang_position) {this.value = "";}'}),
		Builder.node('input',{className: 'postion_input', id: 'former_firm_'+counter+'', name: 'former_firm_'+counter+'',type: 'text',value: lang_comp, onfocus: 'if (this.value == lang_comp) {this.value = "";}'}),
		Builder.node('a',{href: 'javascript:void(0);', onclick: 'add_position_box();'}, [Builder.node('img',{className: 'new_position_button', src: 'images/icons/plus16.gif', border: '0'})]),
		Builder.node('a',{href: 'javascript:void(0);', onclick: 'remove_position_box("position_li' + counter + '");'}, [Builder.node('img',{className: 'new_position_button', src: 'images/icons/minus16.gif', border: '0'})])
		])
		]);
		$('new_position_list').appendChild(box);
	}
}

function remove_position_box(id){
	$(id).remove();
	counter--;
	savePositions();
}

function savePositions() {
	var fpos = 'action=fpos&counter=' + counter + '&' + $('poslist').serialize();

	var r = new Ajax.Request('profile_ajax_update.php',
	{
		method: 'post',
		parameters: fpos,
		onLoading: $('loading').show(),
		onComplete: function(transport) {
			$('loading').hide();
			a = transport.responseText.evalJSON();
			//$('fposstatus').update(a.status).show();
		}
	}
	); // end ajax requester
}

function toggleFBSync(field,fieldLength,fieldType) {
	if (fieldType == 'text' || fieldType == 'textarea' || fieldType == 'position')
	{
		var fbtog = 'action=toggle&field=profile_' + field;
		var icon = $('fbe'+field).src;
		$('fbe'+field).src = "./images/indicator.gif";
	}
	else if (fieldType == "picture")
	{
		var fbtog = 'action=toggle&field=user_photo';
		var icon = $('fbepicture').src;
		$('fbepicture').src ="./images/indicator.gif";
	}


	var r = new Ajax.Request('fb_connect_ajax.php',
	{
		method: 'post',
		parameters: fbtog,
		onLoading: $('loading').show(),
		onComplete: function(transport) {
			a = transport.responseText.evalJSON();

			if (fieldType == 'picture'){
				if (a.result && a.result == '_cleared'){
					$('fbepicture').src = icon.replace("_off","_on");
					$('photo_upload').show();
					uploadFinished();
				}
				else if (a.result){
					$('fbepicture').src = icon.replace("_on","_off");
					$('photo_upload').hide();
					uploadFinished();
				}
			}

			else if (fieldType == 'position'){
				if (a.result && a.result == '_cleared'){
					$('fbe'+field).src = icon.replace("_off","_on");
					for (i=2;i<=counter;i++){
						remove_position_box("position_li" + (i));
					}
					$('former_position_1').value='';
					$('former_firm_1').value='';
					savePositions();
				}
				else if (a.result){
					var positions = a.result.split('||');
					var first = true;
					positions.each(function(position){
						job = position.split('::');
						if (!first) add_position_box();
						else first = false;
						$('former_position_'+counter).value=job[0];
						$('former_firm_'+counter).value=job[1];
					});
					savePositions();
					$('fbe'+field).src = icon.replace("_on","_off");
				}
			}


			else if (fieldType == 'text' || fieldType == 'textarea'){
				if (a.result && a.result == '_cleared'){
					$('fbe'+field).src = icon.replace("_off","_on");
					editProfileField(field,fieldLength,fieldType);
				}
				else if (a.result){
					$('fbe'+field).src = icon.replace("_on","_off");
					$('p'+field).update(a.result.replace(/\n/g,"<br/>"));
				}
			}
			$('loading').hide();
			//$('fbtogstatus').update(a.status).show();
		}
	}
	); // end ajax requester
}
