//pop-up a new window
function newWindow(pag, name, prop){
  var frame=window.open(pag, name, prop);
  frame.focus();
}

//validate newsletter form
function validateNewsLetter(obj){
	if (!obj.nume.value) {
		alert('Introduceți numele!');
		obj.nume.focus();
		return false;
		}
	if (!obj.prenume.value) {
		alert('Introduceți prenumele!');
		obj.prenume.focus();
		return false;
		}
	if (obj.z.value=='zi') {
		alert('Alegeți ziua nașterii din caseta respectivă!');
		return false;
		}
	if (obj.l.value=='luna') {
		alert('Alegeți luna nașterii din caseta respectivă!');
		return false;
		}
	if (obj.a.value=='an') {
		alert('Alegeți anul nașterii din caseta respectivă!');
		return false;
		}
	if (!obj.email.value) {
		alert('Introduceți emailul!');
		obj.email.focus();
		return false;
		}
	else  {
		if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(obj.email.value))) {
			alert("Adresa de email introdusă nu este validă.");
			obj.email.focus();
			return false;
			}
		}
	if (obj.dom_activ.value=='- alege din listă -') {
		alert('Alegeți domeniul de activitate din caseta respectivă!');
		return false;
		}
	return true;
}

//add events to trigger
//usage : addEvent(window,'load',func1,false);
function addEvent(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	}
	else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	}
	else {
		elm['on' + evType] = fn;
	}
}

// add events to trigger after the page has loaded
function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	}
	else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}

//toggle display for a given element
function toggle(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != 'none' ) {
		el.style.display = 'none';
	}
	else {
		el.style.display = '';
	}	
}

// check if an element has the defined class
function checkClass(o,c){
	return new RegExp('\\b'+c+'\\b').test(o.className);
}

// swap classes
function swapClass(o,c1,c2){
	var cn = o.className;
	o.className = !checkClass(o,c1)?cn.replace(c2,c1):cn.replace(c1,c2);
}

// add class to the element
function addClass(o,c){
	if(!checkClass(o,c)){o.className+=o.className==''?c:' '+c;}
}

/* -- BASIC COOKIE MANIPULATION METHODS -- */
function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

/*-- END COOKIE MANIPULATION METHODS --*/

function switchSize(type){
    createCookie('fontsize', type);
	window.location.reload();
}



function setUserStyles(){
	if (getCookie('styles')){
		document.getElementsByTagName('body')[0].className = readCookie('styles');
	} 
}

//other style utyility

//php print_r equivalent function in javascript
function dump(arr,level) {
var dumped_text = "";
if(!level) level = 0;

//The padding given at the beginning of the line.
var level_padding = "";
for(var j=0;j<level+1;j++) level_padding += "    ";

if(typeof(arr) == 'object') { //Array/Hashes/Objects
 for(var item in arr) {
  var value = arr[item];
 
  if(typeof(value) == 'object') { //If it is an array,
   dumped_text += level_padding + "'" + item + "' ...\n";
   dumped_text += dump(value,level+1);
  } else {
   dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
  }
 }
} else { //Stings/Chars/Numbers etc.
 dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
}
return dumped_text;
} 
