/**
 * @author Mihai
 */

///////////////////////
// variabile globale //
///////////////////////

var httpObject = null;

//////////////////////
// functii generale //
//////////////////////

function getHTTPObject(){
	var xmlhttp;
	// Attempt to initialize xmlhttp object
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (e) {
		// Try to use different activex object
		try {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch (E) {
			xmlhttp = false;
		}
	}
	// If not initialized, create XMLHttpRequest object
	if (!xmlhttp) {
		if (typeof XMLHttpRequest != 'undefined') {
			xmlhttp = new XMLHttpRequest();
		}
		else {
			alert("Browser-ul nu suporta scripturi AJAX. Folositi Mozilla 1.5+, Internet Explorer 5.5+ sau Opera");
			return null;
		}
	}
	return xmlhttp;
}

function $(id) {
	return document.getElementById(id);
}

function $s(id) {
	return document.getElementById(id).style;
}

function ajaxOk() {
	if (httpObject)
		return httpObject.readyState == 4 && httpObject.status == 200;
		
	return false;
}

function initializeMCE(elems) {
	tinyMCE.init({
		// General options
		mode : "exact",
		elements : elems,
		theme : "advanced",
		plugins : "safari,pagebreak,style,layer,table,advlink,preview,searchreplace,contextmenu,paste,directionality,noneditable",

		// Theme options
		theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,fontselect,fontsizeselect,|,cut,copy,paste,pastetext,pasteword,|,forecolor,backcolor,|,help",
		theme_advanced_buttons2 : "search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,code",
		theme_advanced_buttons3 : "",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_statusbar_location : "bottom",
		theme_advanced_resizing : false,
		theme_advanced_containers_default_class : 'content_inner',
		theme_advanced_containers_default_align : 'right',
		convert_urls : false,

		// Example content CSS (should be your site CSS)
		content_css : "/css/mce.css"
	});
}

function sendGetRequest(target, handler) {
	httpObject = getHTTPObject();
	if (httpObject != null) {
		path = target.charAt(0) == '/' ? '' : '/include/admin/';
		httpObject.open('GET', path + target, true);
		eval('httpObject.onreadystatechange = ' + handler);
		httpObject.send(null);
	}
}

function sendPostRequest(target, handler, data) {
	httpObject = getHTTPObject();
	if (httpObject != null) {
		path = target.charAt(0) == '/' ? '' : '/include/admin/';
		httpObject.open('POST', path + target, true);
		httpObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		httpObject.setRequestHeader("Connection", "close");
		eval('httpObject.onreadystatechange = ' + handler);
		httpObject.send(data);
	}
}

/* inregistrare newsletter */

function registerNewsletter(lang) {
	sendPostRequest('/include/register-newsletter.php', 'newsletterStatus', 'email=' + encodeURIComponent(document.formNewsletter.email.value));
}

function newsletterStatus() {
	if (ajaxOk()) {
		alert (httpObject.responseText);
		if (httpObject.responseText.indexOf('eroare') == -1 && httpObject.responseText.indexOf('error') == -1)
			document.formNewsletter.reset();
	}
}

/* cautare */

function doSearch() {
	sendPostRequest('/include/set-search.php', 'searchStatus', 'q=' + encodeURIComponent(document.search.q.value))
}

function searchStatus() {
	if (ajaxOk())
		document.location.href = "/search/";
}

function getkey(e) {
	if (window.event) 
		return window.event.keyCode;
	else 
		if (e) 
			return e.which;
		else 
			return null;
}

function start_search(e) {
	var key;
	key = getkey(e);
	if (key == 13) 
		doSearch();
	return
}

/* dezabonare newsletter */

function confirmUnsubscribe() {
	sendPostRequest('/include/unsubscribe.php', 'unsubscribeStatus', 'email=' + encodeURIComponent(document.formUnsubscribe.unsubscriber.value));
}

function unsubscribeStatus() {
	if (ajaxOk())
		document.getElementById('unsubscribeContent').innerHTML = httpObject.responseText;
}

