// MacroMedia image functions #######################################################

function MM_swapImgRestore(){ //v3.0
	var i, x, a = document.MM_sr;
	
	for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) {
		x.src = x.oSrc;
	}
}

function MM_preloadImages(){ //v3.0
	var d = document;
	
	if (d.images) {
		if (!d.MM_p) {
			d.MM_p = new Array();
		}
		
		var i, j = d.MM_p.length, a = MM_preloadImages.arguments;
		
		for (i = 0; i < a.length; i++) {
			
			if (a[i].indexOf("#") != 0) {
				d.MM_p[j] = new Image;
				d.MM_p[j++].src = a[i];
			}
		}
	}
}

function MM_findObj(n, d){ //v4.01
	var p, i, x;
	
	if (!d) {
		d = document;
	}
	
	if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
		d = parent.frames[n.substring(p + 1)].document;
		n = n.substring(0, p);
	}
	
	if (!(x = d[n]) && d.all) {
		x = d.all[n];
	}
	
	for (i = 0; !x && i < d.forms.length; i++) {
		x = d.forms[i][n];
	}
	
	for (i = 0; !x && d.layers && i < d.layers.length; i++) {
		x = MM_findObj(n, d.layers[i].document);
	}
	
	if (!x && d.getElementById) {
		x = d.getElementById(n);
	}
	
	return x;
}

function MM_swapImage(){ //v3.0
	var i, j = 0, x, a = MM_swapImage.arguments;
	
	document.MM_sr = new Array;
	
	for (i = 0; i < (a.length - 2); i += 3) {
		
		if ((x = MM_findObj(a[i])) != null) {
			document.MM_sr[j++] = x;
			
			if (!x.oSrc) {
				x.oSrc = x.src;
			}
			x.src = a[i + 2];
		}
	}
}

// ################################################################################

// Form functions #######################################################

function form_set_select_id(sel_id, form_name, sel_index){
	var obj = dom_get_element(sel_id);
	var sel_length = obj.length;

	for (optionCounter = 0; optionCounter < sel_length; optionCounter++) {
		
		if (obj.options[optionCounter].value == sel_index) {
			obj.selectedIndex = optionCounter;
		}
	}
}

function CounterText(field, cntfield, maxlimit){
	var obj_field = dom_get_element(field);
	var obj_cntfield = dom_get_element(cntfield);
		
	if (obj_field.value.length > maxlimit) {
		obj_field.value = obj_field.value.substring(0, maxlimit);
	}
	else {
		obj_cntfield.value = maxlimit - obj_field.value.length;
	}
}

function submit_search_form(form_name, button_name){
	
	var arr = button_name.split(",");
	
	if (!form_is_submitted) {
		
		for (var i=0; i<arr.length; i++) {
			eval("document." + form_name + "." + arr[i].replace(/\s/g,"") + ".disabled=true");
		}
		
		eval("document." + form_name + ".submit()");
		eval("submitted_form = '" + form_name + "'");
		eval("submission_button = '" + button_name + "'");
		form_is_submitted = 1;
	}
	
	return false;
}

function set_smiley(text_area, add_smiley){ 
      
	eval(text_area + ".value = " + text_area + ".value + ' " + add_smiley + " ';");
	eval(text_area + ".focus();");
}

// ################################################################################

// Cookies functions #######################################################

function set_cookie(name, value){
	
	var argv = set_cookie.arguments;
	var argc = set_cookie.arguments.length;
	var expires;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
		
	expires = new Date ();
	expires.setTime(expires.getTime() + (1 * 24 * 3600 * 1000));
		
	document.cookie = name + "=" + escape(value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) +((secure == true) ? "; secure" : "");
}

function get_cookie_val(offset){
	
	var endstr = document.cookie.indexOf(";", offset);
	
	if (endstr == -1) {
		endstr = document.cookie.length;
	}
	
	return unescape(document.cookie.substring(offset, endstr));
}

function get_cookie(name){
	
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	
	while (i < clen) {
		
		var j = i + alen;
		
		if (document.cookie.substring(i, j) == arg) {
			return get_cookie_val(j);
		}
		
		i = document.cookie.indexOf(" ", i) + 1;
		
		if (i == 0) {
			break;
		}
	}
		
	return null;
}

// ################################################################################

// String functions #######################################################

function build_str_key(string){
	
	var str = string.replace(/\`|\~|\\|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\+|\=|\||\\|\[|\]|\{|\}|\;|\'|\:|\"|\,|\.|\/|\<|\>|\?/g, "");
	
	str = str.replace(/\_|\s/g,"-");
	str = str.replace(/\-+/g,"-");
	str = str.replace(/\-+$/, "");

	// Replace romanian specific characters
	str = str.replace(/\u0102/, "a");
	str = str.replace(/\u0103/, "a");
	str = str.replace(/\u00CE/, "i");
	str = str.replace(/\u00EE/, "i");
	str = str.replace(/\u00E2/, "a");
	str = str.replace(/\u00C2/, "a");
	str = str.replace(/\u015F/, "s");
	str = str.replace(/\u015E/, "s");
	str = str.replace(/\u0163/, "t");
	str = str.replace(/\u0162/, "t");
	
	str = str.toLowerCase();
	
	return str;
}

// ################################################################################

// Disable right click #######################################################

function clickIE4(){
	
	if (event.button == 2) {
		return false;
	}
}

function clickNS4(e){
	
	if (document.layers || document.getElementById && !document.all) {
		
		if ( (e.which == 2) || (e.which == 3) ) {
			return false;
		}
	}
}

function disable_right_click() {
	
	if (document.layers) {
		document.captureEvents(Event.MOUSEDOWN);
		document.onmousedown = clickNS4;
	}
	else if (document.all && !document.getElementById) {
		document.onmousedown = clickIE4;
	}
	
	document.oncontextmenu = new Function("return false");
}

// ################################################################################

// Populate states select #######################################################

function populate_states(form_name, select_name_country, select_name_states, select_name_cities){
	
	country_selection = eval("document." + form_name + "." + select_name_country + ".options[document." + form_name + "." + select_name_country + ".selectedIndex].value");
	
	var url = do_link("site.remote", "request=states&fk_countries=" + country_selection);
	
	remote_data_request(url, "", "populate_states_data('" + form_name + "', '" + select_name_country + "', '" + select_name_states + "')");
	
	document.forms[form_name].elements[select_name_states].options.length = 0;
	document.forms[form_name].elements[select_name_states].options[0] = new Option("Se incarca ...", 0);
	document.forms[form_name].elements[select_name_states].disabled = true;
	
	document.forms[form_name].elements[select_name_cities].options.length = 0;
	document.forms[form_name].elements[select_name_cities].options[0] = new Option("-------", 0);
	document.forms[form_name].elements[select_name_cities].disabled = true;
}

function populate_states_data(form_name, select_name_country, select_name_states){
	
	document.forms[form_name].elements[select_name_states].disabled = false;
	document.forms[form_name].elements[select_name_states].options[0] = new Option("--------------", 0);
	
	idx = 0;
	for (var i in remote_res_states) {
		if ( (remote_res_states[i] != "") && !remote_res_states[i].toString().match("{") ) {
			idx ++;
			document.forms[form_name].elements[select_name_states].options[idx] = new Option(decodeURI(remote_res_states[i]), i);
		}
	}
	
	return_states();
}

// ################################################################################

// Populate cities select #######################################################

function populate_cities(form_name, select_name_states, select_name_cities){
	
	state_selection = eval("document." + form_name + "." + select_name_states + ".options[document." + form_name + "." + select_name_states + ".selectedIndex].value");
	
	var url = do_link("site.remote", "request=cities&fk_states=" + state_selection);
		
	remote_data_request(url, "", "populate_cities_data('" + form_name + "', '" + select_name_states + "', '" + select_name_cities + "')");
		
	document.forms[form_name].elements[select_name_cities].options.length = 0;
	document.forms[form_name].elements[select_name_cities].options[0] = new Option("Se incarca ...", 0);
	document.forms[form_name].elements[select_name_cities].disabled = true;	
}

function populate_cities_data(form_name, select_name_states, select_name_cities){

	document.forms[form_name].elements[select_name_cities].disabled = false;
	document.forms[form_name].elements[select_name_cities].options[0] = new Option("--------------", 0);
	
	idx = 0;
	for (var i in remote_res_cities) {
		if ( (remote_res_cities[i] != "") && !remote_res_cities[i].toString().match("{") ) {
			idx ++;
			document.forms[form_name].elements[select_name_cities].options[idx] = new Option(decodeURI(remote_res_cities[i]), i);
		}
	}
	
	return_cities();
}

// ################################################################################

// Alternate rows #######################################################

function color_on(obj){
	obj.style.backgroundColor = "#FEFFDB";
}

function color_off(obj){
	obj.style.backgroundColor = "transparent";
}

function opt_row_on(key){
	dom_get_element("row_" + key).style.visibility = 'visible';
}

function opt_row_off(key){
	// setTimeout("dom_get_element('row_' + " + key + ").style.visibility = 'hidden';", 500);
	dom_get_element("row_" + key).style.visibility = 'hidden';
}

// ################################################################################

// Tabs functions #######################################################

function box_show(mode){
	
	for (var i=0; i<tabs.length; i++) {
		
		if (mode == tabs[i]) {
			dom_toggle_element("b_" + tabs[i], true);
			dom_get_element("m_" + tabs[i]).className = "on";
		}
		else {
			dom_toggle_element("b_" + tabs[i], false);
			dom_get_element("m_" + tabs[i]).className = "";
		}
	}
}

function auto_box(){
	var str = document.location.toString();
	var nr = str.indexOf("#") + 1;
	var cmd;

	if (nr > 0) {
		cmd = str.substr(nr);
	}
	else {
		cmd = "";
	}
	
	for (var i=0; i<tabs.length; i++) {
		
		if (cmd == tabs[i] && (dom_get_element("m_" + tabs[i]).style.display != "none")) {
			box_show(cmd);
			break;
		}
	}
}

function toggle_left_section(mode){
	
	dom_toggle_element(mode + "_menu");
	
	if (dom_get_element(mode + "_menu").style.display == "none") {
		dom_get_element(mode + "_img").className = "img_plus";
	}
	else {
		dom_get_element(mode + "_img").className = "img_minus";
	}
}

// ################################################################################

// Check new messages functions #######################################################

function check_new_messages(){
	
	var URL = do_link("site.remote", "request=check_new_messages");
	
	remote_data_request(URL, "", "show_new_messages()");
	setTimeout("check_new_messages();", 15000);
}

function show_new_messages(){
	
	var obj_mail_cnt_holder = dom_get_element("mail_cnt_holder");
	
	if (count_new_messages > 0) {
		
	}
	else {
		
	}
}

function show_bell(nr){
	var obj_mail_cnt_holder = dom_get_element("mail_cnt_holder");
	
	if (nr > 0) {
		
	}
	else {
		
	}
}

// ################################################################################

// User interaction #######################################################

function block_handling(how){
	var block = dom_get_element("can_block");
	var unblock = dom_get_element("can_unblock");
	var tools = dom_get_element("communication_tools");
		
	if (how == "can_unblock") {
		block.style.display = "none";
		unblock.style.display = "";
		tools.style.display = "none";
	}
	else {		
		unblock.style.display = "none";
		block.style.display = "";
		tools.style.display = "";
	}
}

function friend_handling(how){
	var friend_direct = dom_get_element("friend_direct");
	var friend_opposite = dom_get_element("friend_opposite");
	var friend_mutual = dom_get_element("friend_mutual");
	var friend_not_yet = dom_get_element("friend_not_yet");
		
	if (how == "direct") {
		friend_direct.style.display = "";
		friend_opposite.style.display = "none";
		friend_mutual.style.display = "none";
		friend_not_yet.style.display = "none";
	}
	else if (how == "opposite") {
		friend_direct.style.display = "none";
		friend_opposite.style.display = "";
		friend_mutual.style.display = "none";
		friend_not_yet.style.display = "none";
	}
	else if (how == "mutual") {
		friend_direct.style.display = "none";
		friend_opposite.style.display = "none";
		friend_mutual.style.display = "";
		friend_not_yet.style.display = "none";
	}
	else {		
		friend_direct.style.display = "none";
		friend_opposite.style.display = "none";
		friend_mutual.style.display = "none";
		friend_not_yet.style.display = "";
	}
}

// ################################################################################

// User actions #######################################################

function init_request(id){
	dom_get_element(id).innerHTML = "<img src=\"/img/site/loading.gif\">";
}

function item_action(item_action, item_key){
	
	var URL = do_link("site.remote", "request=" + item_action + "&item_key=" + item_key);
	
	remote_data_request(URL, "_RETURN={_RETURN}", "");
}

// ################################################################################

// Other funtions #######################################################

function toggle_nav_bar(){
	
	var cookie_pfk = get_cookie('pfk');
	var cookie_username = get_cookie('_USR[logins_username]');
	var tab_welcome = dom_get_element("tab_welcome");
			
	tab_welcome.innerHTML = "Bine ai venit, <a href='" + do_link("site.edit_profile", "") + "'>" + cookie_username + "</a>! &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;";
}

// ################################################################################

function pic_edit(pic_key){
	
	if (Object.isUndefined(OL) == true) {
		OL = new Overlay();
	}
	
	OverlayOptions = {
		iframeWidth: 700,
		iframeHeight: 620,
		iframe_path: do_link("site.cropper", "files_key=" + pic_key)
	}
	
	OL.start();
}

function win_overlay(src, width, height) {
	if (Object.isUndefined(OL) == true) {
		OL = new Overlay();
	}
	
	OverlayOptions = {
		iframeWidth: width,
		iframeHeight: height,
		iframe_path: src,
		iframe_content: iframe_cnt
	}
	
	OL.start();
}

function view_gallery(link){
	
	if (Object.isUndefined(OL) == true) {
		OL = new Overlay();
	}
	
	OverlayOptions = {
		iframeWidth: 755,
		iframeHeight: 560,
		iframe_path: link,
		page_refresh: false
	}
	
	OL.start();
}

function addBookmark()
{
	var url = "http://www.concursuri.tv?url="+escape(window.location); 
	var title = window.name;

	if (window.sidebar) { // Mozilla Firefox Bookmark
		window.sidebar.addPanel(title, url,"");
	} else if( window.external ) { // IE Favorite
		window.external.AddFavorite( url, title); }
	else if(window.opera && window.print) { // Opera Hotlist
		return true; }
}