

// remember last showed box
var EnabledObject = '';

// show selected layers
function showSelectedID( selectedID, extID ) {
	if( EnabledObject != selectedID+''+extID ) {
		EnabledObject = selectedID+''+extID;
		hideAllIDs( selectedID );
		if( document.getElementById(selectedID+''+extID) ) {
			document.getElementById(selectedID+''+extID).style.display="block";
		}
	}
}

// hiade all layers
function hideAllIDs( selectedID ) {
	for( var i=0; element = document.getElementById(selectedID+''+i); i++ ) {
		if( element.style.display=="block" ) {
			element.style.display="none";
		}
	}
}



function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
    if (! allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    } else if (email.indexOf("..") >=0) { // two periods in a row is not valid
	return false;
    } else if (email.indexOf(".") == email.length) {  // . must not be the last character
	return false;
    }
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}


var actualLink;
var actualContainer;


function loadAjaxPage( linkURL, containerID, revokeUpdate ) {
	actualLink = linkURL;
	actualContainer = containerID;
	advAJAX.get({
		  url: linkURL,
		  onSuccess : function(obj) { if( obj.responseText.length > 1 ) {  document.getElementById(containerID).innerHTML = obj.responseText; if(revokeUpdate) { setTimeout("initLightbox()",500); }; } }
	});
}



function reloadPage( pageNum ) {
	advAJAX.get({
		  url: actualLink+'?strona='+pageNum,
		  onSuccess : function(obj) { if( obj.responseText.length > 1 ) {  document.getElementById(actualContainer).innerHTML = obj.responseText; } }
	});
}

function reloadCalendar(month, year, day) {
	actualLink = "/ajax/kalendarium.html?rok="+year+"&miesiac="+month+"&dzien="+day;
	actualContainer = 'kalendarium_container';
	advAJAX.get({
		  url: actualLink,
		  unique: false,
		  onSuccess : function(obj) { if( obj.responseText.length > 1 ) {  document.getElementById(actualContainer).innerHTML = obj.responseText; } }
	});
}





// Password checking: 2 password fields mut be equal, min 6 chars length
function passIsEqual( pass1ID, pass2ID ) {
	var pass1 =  document.getElementById( pass1ID );
	var pass2 =  document.getElementById( pass2ID );
	if( pass1.value == pass2.value ) {
		return true;
	}
	return false;
}

// Input is not empty
function isNotEmptyField( idElem ) {
	if( document.getElementById( idElem ) ) {
		if( document.getElementById( idElem ).value != "" ) {
			return true;
		}
		document.getElementById( idElem ).focus();
	}
	return false;
}

// Value is higher than (integer)
function higherThan( idElem, indexInt ) {
	if( document.getElementById( idElem ) ) {
		if( document.getElementById( idElem ).value.length > indexInt ) {
			return true;
		}
		document.getElementById( idElem ).focus();
	}
	return false;
}

// Value is equal (integer)
function equalAs( idElem, indexInt ) {
	if( document.getElementById( idElem ) ) {
		if( document.getElementById( idElem ).value.length == indexInt ) {
			return true;
		}
		document.getElementById( idElem ).focus();
	}
	return false;
}

// Radio or checkbox is selected
function isChecked( idElem ) {
	if( document.getElementById( idElem ) ) {
		if( document.getElementById( idElem ).checked ) {
			return true;
		}
	}
	return false;
}


// Valid e-mail
//function isValidEmail( elem ) {
//	str = document.getElementById(elem).value;
//	return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
//}

// Set focus on input
function setFocus( idElem ) {
	document.getElementById( idElem ).focus();
}

// Clear inputvalue
function clearValue( idElem ) {
	document.getElementById( idElem ).value = '';;
}



function getObj(name){
	if (document.getElementById) {
		this.obj = document.getElementById(name);
		this.style = document.getElementById(name).style;
	} else if (document.all) {
		this.obj = document.all[name];
		this.style = document.all[name].style;
	} else if (document.layers) {
		this.obj = document.layers[name];
		this.style = document.layers[name];
	}
}



function showCommentBox() {
	var comment = document.getElementById('comment_content');
	comment.style.display="block";
	var commentHide = document.getElementById('komHide');
	commentHide.style.display="none";
	var commentShow = document.getElementById('komShow');
	commentShow.style.display="block";
	setFocus( 'comment_contents' );
}


function submitCommentBox(typ) {
	var textbox = document.getElementById('comment_contents');
	var autorName = document.getElementById('nickx');
	var mailName = document.getElementById('emailx');
	
	if( autorName.value == '' ) {
		alert('Brak autora!');
		setFocus( 'nickx' );
		return;
	}

	if( textbox.value == '' ) {
		alert('Brak komentarza!');
		setFocus( 'comment_contents' );
		return;
	}
	if( typeof( newsID ) == "undefined" ) {
		alert('Nie można zapisac komentarza!');
		return;
	}
	advAJAX.get({
		  url: "/ajax/comment_add",
		  parameters : {
		        "content" : textbox.value,
		        "message_id" : newsID,
		        "autor" : autorName.value,
		        "mail" : mailName.value,
		        "type" : typ
		      },
		  onSuccess : function(obj) { if( obj.responseText.length > 1 ) {  document.getElementById('comment_content').innerHTML = obj.responseText; } else { document.getElementById('comment_content').innerHTML = '<p>Problem z dodaniem wiadomości.</p>'; } }
	});
}




function emailDoznajomego(objectElem) {
	if( objectElem.value == "wpisz e-mail znajomej osoby" ) {
		objectElem.value="";
		return;
	}
	if( objectElem.value == "" ) {
		objectElem.value="wpisz e-mail znajomej osoby";
		return;
	}
}
function sprawdzEmail(objectElem) {
	if( isValidEmail( objectElem.value ) ) {
		if( document.getElementById('przyjaciel_sub').style.display == "none" ) {
			document.getElementById('przyjaciel_sub').style.display="inline";
		}
	}
}

function wyslijDoZnajomego(objectElem) {
	advAJAX.get({
		  url: "/ajax/send_friend?email="+objectElem.value+"&url="+document.location+"",
		  parameters : {
		        "email" : objectElem.value,
		        "url" : document.location
		      },
		  onSuccess : function(obj) { document.getElementById('przyjaciel_sub').style.display = "none"; objectElem.style.display = "none"; document.getElementById('wyslano_znajomy').style.display = "block"; alert("Wysłano wiadomość");  }
	});
}

