var C_IMAGES_DIR = 'images';

function updClock(){
	 var dateobj=new Date()
	 var ct=padfield(dateobj.getHours())+":"+padfield(dateobj.getMinutes())+":"+padfield(dateobj.getSeconds());
	 document.getElementById("clock").firstChild.nodeValue = ct;
} 

function padfield(f){
	return (f<10)? "0"+f : f
}

var sirka=1400;
var m=0;
var n=sirka;
var d=0;
var speed=1;
var stop=0;
	
function scroll_right() {
	 document.getElementById('div1').style.left=m+'px';
	 document.getElementById('div2').style.left=n+'px';
	 m++;m++;
	 n++;n++;
	 if(m>sirka) {m=-sirka;}
	 if(n>sirka) {n=-sirka;}
	 d++;
	 if(d!=78) setTimeout('scroll_right()',speed);
	 if(d==78) d=0;
}
	
function scroll_right_smooth_start() {
	 document.getElementById('div1').style.left=m+'px';
	 document.getElementById('div2').style.left=n+'px';
	 m++;
	 n++;
	 if(m>sirka) {m=-sirka;}
	 if(n>sirka) {n=-sirka;}
	 if (stop==0) setTimeout('scroll_right_smooth_start()',20);
}
	
function stop_scrolling() {
	 stop=1;
}
	
function scroll_left() {
	 document.getElementById('div1').style.left=m+'px';
	 document.getElementById('div2').style.left=n+'px';
	 m--;m--;
	 n--;n--;
	 if(m<-sirka) {m=sirka;}
	 if(n<-sirka) {n=sirka;}
	 d++;
	 if(d!=78) setTimeout('scroll_left()',speed);
	 if(d==78) d=0;
}
	
function scroll_left_smooth_start() {
	 document.getElementById('div1').style.left=m+'px';
	 document.getElementById('div2').style.left=n+'px';
	 m--;
	 n--;
	 if(m<-sirka) {m=sirka;}
	 if(n<-sirka) {n=sirka;}
	 if (stop==0) setTimeout('scroll_left_smooth_start()',20);
	
}
function click_without_payment(obj_select, obj_name) {
	var without_payment = document.getElementById(obj_name);
	if (obj_select.value > 10) {
		without_payment.click();
	}
}

function switch_gratis_description(checkbox) {
	var gratis_description = document.getElementById('gratis_description');
	var availability = document.getElementById('availability');
	
	if (checkbox.checked == true) {
		gratis_description.style.display = '';
	} else {
		gratis_description.style.display = 'none';
		if (availability.value > 10) {
			availability.selectedIndex = 0;
		}	
	}
	windowResize();	
}		
	

function reset_ceo_function_select(checkbox, select) {
	var checkbox = document.getElementById(checkbox);
	var select = document.getElementById(select);
	
	if (checkbox.checked == true) {
		select.selectedIndex = 0;
	}
}

function reset_ceo_function_other(checkbox, select) {
	var checkbox = document.getElementById(checkbox);
	var select = document.getElementById(select);
	
	if (checkbox && (select.selectedIndex != 0)) {
		checkbox.checked = false;
	}
}


function switch_gp(object) {
	var en_show_company_name = document.getElementById('en_show_company_name');
	var gp_category = document.getElementById('gp_category');
	var contact_person = document.getElementById('contact_person');
	var ceo_name = document.getElementById('ceo_name');
	var ceo_function = document.getElementById('ceo_function');
	var ceo_contact_name = document.getElementById('ceo_contact_name');
	var ceo_function = document.getElementById('ceo_function');
	var ceo_contact_e_mail = document.getElementById('ceo_contact_e_mail');
	var ceo_contact_language = document.getElementById('ceo_contact_language');
	var en_web_site = document.getElementById('en_web_site');
	var en_characteristic = document.getElementById('en_characteristic');
	var stamp_gp_published = document.getElementById('stamp_gp_published');
	var id_user_gp_sales = document.getElementById('id_user_gp_sales');

	if (object.checked == true) {
		en_show_company_name.style.display = '';
		gp_category.style.display = '';
		contact_person.style.display = '';
		ceo_name.style.display = '';
		ceo_function.style.display = '';
		ceo_contact_name.style.display = '';
		ceo_contact_e_mail.style.display = '';
		ceo_contact_language.style.display = '';
		en_web_site.style.display = '';
		en_characteristic.style.display = '';
		if (stamp_gp_published) { stamp_gp_published.style.display = ''; }
		if (id_user_gp_sales) { id_user_gp_sales.style.display = ''; }
	} else {
		en_show_company_name.style.display = 'none';
		gp_category.style.display = 'none';
		contact_person.style.display = 'none';
		ceo_name.style.display = 'none';
		ceo_function.style.display = 'none';
		ceo_contact_name.style.display = 'none';
		ceo_contact_e_mail.style.display = 'none';
		ceo_contact_language.style.display = 'none';
		en_web_site.style.display = 'none';
		en_characteristic.style.display = 'none';
		if (stamp_gp_published) { stamp_gp_published.style.display = 'none'; }
		if (id_user_gp_sales) { id_user_gp_sales.style.display = 'none'; }
	}
}
function show_readonly_field(obj, field_name, new_class) {
	var field = document.getElementById(field_name);
	field.className = new_class;
	field.readOnly=false;
	obj.style.display='none';
}


function resize_textarea(obj, height) {
	obj.style.height = height + 'px';
	windowResize();
}

function toggle_contact_type(select_object, id_type_e_mail) {
	var phone_field = document.getElementById('phone_field');
	var e_mail_field = document.getElementById('e_mail_field');


	if (select_object.value == id_type_e_mail) {
		phone_field.style.display = 'none';
		e_mail_field.style.display = '';
	} else {
		phone_field.style.display = '';
		e_mail_field.style.display = 'none';
	}
}

function layer_message(title, text, e) {
	if ( !e ) {
		if ( window.event ) {
			//Internet Explorer
			e = window.event;
		} else {
			//total failure, we have no way of referencing the event
			return;
		}
	}
	
	doc_pos = getScrollXY();
	xcoord = doc_pos[0] + e.clientX + 5 + 'px';
	ycoord  = doc_pos[1] + e.clientY + 20 + 'px';
	
	
	var layer_message_main = document.getElementById('layer_message_main');
	var layer_message_head = document.getElementById('layer_message_head');
	var layer_message_body = document.getElementById('layer_message_body');
	
	layer_message_main.style.display = '';
	layer_message_main.style.top = (ycoord + 20) + 'px';
	layer_message_main.style.left = (xcoord) + 'px';
	layer_message_head.innerHTML = ycoord;
	layer_message_body.innerHTML = xcoord;
	
}

function layer_message_off() {
	var layer_message_main = document.getElementById('layer_message_main');
	layer_message_main.style.display = 'none';
}


var help = false

function changeHelp(pa_s) {
	if (help) {
		help.style.visibility   = 'visible';
		help.innerHTML          = pa_s;
	}
}

function hideHelp() {
	if (help) help.style.visibility='hidden';
}

function getMouseMove(e) {
  if (document.all) e = event;
	if (help)
		if (help.style.visibility == 'visible') {
			doc_pos = getScrollXY();
			help.style.left = doc_pos[0] + e.clientX + 5 + 'px';
			help.style.top  = doc_pos[1] + e.clientY + 20 + 'px';
		}
}

function helpInit() {
	help = document.getElementById('helpbox');
}

document.onmousemove=getMouseMove;
var help=false;

function main_onload() {
	helpInit();
}



function getScrollXY() {
	var scrOfX = 0, scrOfY = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
	  //Netscape compliant
	  scrOfY = window.pageYOffset;
	  scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
	  //DOM compliant
	  scrOfY = document.body.scrollTop;
	  scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
	  //IE6 standards compliant mode
	  scrOfY = document.documentElement.scrollTop;
	  scrOfX = document.documentElement.scrollLeft;
	}
	return [ scrOfX, scrOfY ];
}


var tooltip=function(){
	var id = 'tt';
	var top = 3;
	var left = 3;
	var maxw = 300;
	var speed = 10;
	var timer = 20;
	var endalpha = 95;
	var alpha = 0;
	var tt,t,c,b,h;
	var ie = document.all ? true : false;
	return{
		show:function(v,w){
			if(tt == null){
				tt = document.createElement('div');
				tt.setAttribute('id',id);
				t = document.createElement('div');
				t.setAttribute('id',id + 'top');
				c = document.createElement('div');
				c.setAttribute('id',id + 'cont');
				b = document.createElement('div');
				b.setAttribute('id',id + 'bot');
				tt.appendChild(t);
				tt.appendChild(c);
				tt.appendChild(b);
				document.body.appendChild(tt);
				tt.style.opacity = 0;
				tt.style.filter = 'alpha(opacity=0)';
				document.onmousemove = this.pos;
			}
			tt.style.display = 'block';
			c.innerHTML = v;
			tt.style.width = w ? w + 'px' : 'auto';
			if(!w && ie){
				t.style.display = 'none';
				b.style.display = 'none';
				tt.style.width = tt.offsetWidth;
				t.style.display = 'block';
				b.style.display = 'block';
			}
			if(tt.offsetWidth > maxw){tt.style.width = maxw + 'px'}
			h = parseInt(tt.offsetHeight) + top;
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(1)},timer);
		},
		pos:function(e){
			var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
			var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
			tt.style.top = (u - h) + 'px';
			tt.style.left = (l + left) + 'px';
		},
		fade:function(d){
			var a = alpha;
			if((a != endalpha && d == 1) || (a != 0 && d == -1)){
				var i = speed;
				if(endalpha - a < speed && d == 1){
					i = endalpha - a;
				}else if(alpha < speed && d == -1){
					i = a;
				}
				alpha = a + (i * d);
				tt.style.opacity = alpha * .01;
				tt.style.filter = 'alpha(opacity=' + alpha + ')';
			}else{
				clearInterval(tt.timer);
				if(d == -1){tt.style.display = 'none'}
			}
		},
		hide:function(){
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){tooltip.fade(-1)},timer);
		}
	};
}();

function send_owner_mail (form, confirm_text) {

	document.getElementById('send_owner_mail_button').value=1;
	
	if (confirm(confirm_text)) {
		form.submit();
	} else {
		return false;
	}
}	

function call_back (lat, lng, zoom) {
	var oLat = document.getElementById('gm_company_lat');
	var oLng = document.getElementById('gm_company_lng');
	var oZoom = document.getElementById('gm_company_zoom');
	oLat.value = lat;
	oLng.value = lng;
	oZoom.value = zoom;
}

function change_contacted_via (source, e_mail_register, $e_mail_owner, e_mail_company) {
	var contacted_via = document.getElementById('contacted_via');
	var mail_array = new Array();
	mail_array[0] = e_mail_register;
	mail_array[1] = $e_mail_owner;
	mail_array[2] = e_mail_company;
	mail_array[3] = '';
	contacted_via.value = mail_array[source.selectedIndex];
}

function copy_message (c_delimiter) {
	var target = document.getElementById('message_text_0');
	var select = document.getElementById('id_copy_text');
	if (select.value > 0) {
		var source = document.getElementById('text_' + select.value);
		var text_string = source.innerHTML;
		
		text_string =  text_string.replace(/<br>/g, "");
		text_string =  text_string.replace(/<BR>/g, "\n");
		
		target.value = text_string
			+ "\n" + c_delimiter + c_delimiter + c_delimiter + c_delimiter + "\n" 
			+ target.value;
	}	
}

function set_id_parent_communication (id_communication) {
	var id_parent_communication = document.getElementById('id_parent_communication');
	id_parent_communication.value = id_communication;
}

function resize_textarea_rows(id_element, min, max) {
	
	var element = document.getElementById(id_element);
	if (element.style.height == min + 'px') {
		element.style.height = max + 'px';
	} else {
		element.style.height = min + 'px';
	}
}

function hide_unhide_element(id_element, id_image) {
	var obj_element = document.getElementById(id_element);
	var obj_image = document.getElementById(id_image);
	
	if (obj_element.style.display == 'none') {
		obj_element.style.display = '';
		if (obj_image != '') {
			obj_image.src =  C_IMAGES_DIR + '/close_16.gif';
		}
	} else {
		obj_element.style.display = 'none';
		if (obj_image != '') {
			obj_image.src =  C_IMAGES_DIR + '/open_16.gif';
		}
	}
}


function test_right_click(e) {
	var right_click;
	if (!e) {
		var e = window.event;
	}
	if (e.which) {
		right_click = (e.which == 3);
	} else if (e.button) {
		right_click = (e.button == 2);
	}
	return right_click;
}

function get_scroll_xy() {
	var scrOfX = 0;
	var scrOfY = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return [ scrOfX, scrOfY ];
}

function layer_message(title, text, e) {
	if ( !e ) {
		if ( window.event ) {
			//Internet Explorer
			e = window.event;
		} else {
			//total failure, we have no way of referencing the event
			return;
		}
	}
	
	var doc_pos = get_scroll_xy();
	var xcoord = doc_pos[0] + e.clientX;
	var ycoord  = doc_pos[1] + e.clientY;
	
	var layer_message_main = document.getElementById('layer_message_main');
	var layer_message_head = document.getElementById('layer_message_head');
	var layer_message_body = document.getElementById('layer_message_body');
	
	layer_message_main.style.display = '';
	layer_message_main.style.top = (ycoord - 50) + 'px';
	layer_message_main.style.left = (xcoord + 30) + 'px';
	layer_message_head.innerHTML = title;
	layer_message_body.innerHTML = text;
	
}/**/

function layer_message_off() {
	var layer_message_main = document.getElementById('layer_message_main');
	layer_message_main.style.display = 'none';
}


function check_remaining_char(source_object, id_target_object, max_char) {

	var target_object = document.getElementById(id_target_object);
	var remaining_char;

	remaining_char = max_char - source_object.value.length;
	target_object.innerHTML = (remaining_char < 0) ? 0 : remaining_char;

	if (source_object.value.length > max_char) {
		source_object.value = source_object.value.substring(0, max_char);
	}
}

function window_open(url, win_name, features) { 
  window.open(url, win_name, features);
}

function open_web_window(href, width, height) {
	if (href.match("http://") != 'http://') {
		href = 'http://' + href;
	}
	new_window=window.open(href,'','width=' + width + ',height=' + height + ', left=' + (screen.availWidth - width - 30) + ', top=' + (30) + ', resizable=1, scrollbars=1')
}

function confirm_relocate (url, msg) {
	if (confirm(msg)) {
		window.location.replace(url);
	}
}

function header_location(href) {
	window.location=href;
}

function reload () {
	window.location.reload();
}

function open_reaction (id_reaction){
	var head_full = document.getElementById('head_full_' + id_reaction);
	var head_short = document.getElementById('head_short_'+ id_reaction);
	var reaction = document.getElementById('reaction_' + id_reaction);
	
	head_short.style.display = 'none';
	head_full.style.display = '';
	reaction.style.display = '';
}

function close_reaction (id){
	
	var head_full = document.getElementById('head_full_' + id);
	var head_short = document.getElementById('head_short_'+ id);
	var reaction = document.getElementById('reaction_' + id);
	
	head_short.style.display = '';
	head_full.style.display = 'none';
	reaction.style.display = 'none';
}

function close_reaction_by_karma (karma, without_id_reaction){
	
	var divs = document.getElementsByTagName('div');
	var actual_div_id;
	var splitted_id;
	var i;
	for (i=0;i< divs.length; i++ ){
		
		if (divs[i].id!='') {
			actual_div_id = divs[i].id;
			if (actual_div_id.match("head_full_")) {
				splitted_id = actual_div_id.split('_');
				if ((splitted_id[2] < karma) && (splitted_id[3] != without_id_reaction)) {
					close_reaction(splitted_id[2] + '_' + splitted_id[3]);
				}	
			}
		}
	}
}

function border_selected_reaction(id_reaction){
	if (id_reaction != 0) {
		var comment_block = document.getElementById('comment_' + id_reaction);
		comment_block.className = comment_block.className + ' ' + 'reaction_selected';
	}
}


function show_permalink (id_reaction){
	var permalink = document.getElementById('permalink_' + id_reaction);
	var permalink_block = document.getElementById('permalink_block_' + id_reaction);
	var permalink_text = document.getElementById('permalink_text_' + id_reaction);
	permalink.style.display = 'none';
	permalink_block.style.display = '';
	permalink_text.select();
	
}

function hide_permalink (id_reaction){
	var permalink = document.getElementById('permalink_' + id_reaction);
	var permalink_block = document.getElementById('permalink_block_' + id_reaction);
	permalink.style.display = '';
	permalink_block.style.display = 'none';
	
}

/* COOKIE JS FUNCTIONS */
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure ) {
	
	var cookie_string = name + "=" + escape ( value );
	
	if ( exp_y ) {
		var expires = new Date ( exp_y, exp_m, exp_d );
		cookie_string += "; expires=" + expires.toGMTString();
	}
	if ( path ) { cookie_string += "; path=" + escape ( path ); }
	if ( domain ) {	cookie_string += "; domain=" + escape ( domain ); }
	if ( secure ) { cookie_string += "; secure"; }
	document.cookie = cookie_string;
}

function get_cookie ( cookie_name ) {
	var cookie_name_replaced = cookie_name;
	var cookie_string_replaced = document.cookie;
	
	cookie_name_replaced = cookie_name_replaced.replace('[', "->");
	cookie_name_replaced = cookie_name_replaced.replace(']', "");
	for (var i=0; i<100; i++) {
		cookie_string_replaced = cookie_string_replaced.replace('[', "->");
		cookie_string_replaced = cookie_string_replaced.replace(']', "");
	}
	
	var results = cookie_string_replaced.match ( '(^|;) ?' + cookie_name_replaced + '=([^;]*)(;|$)' );
	
	if ( results ) {
		return ( unescape ( results[2] ) );
	} else {
		return null;
	}	
}

function delete_cookie ( cookie_name ) {
	var cookie_date = new Date ( );  // current date & time
	cookie_date.setTime ( cookie_date.getTime() - 1 );
	document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}
