var addEntryClicked = false;

function trim(s) {

    if((s==null)||(typeof(s)!='string')||!s.length) {
        return '';
    }
    return s.replace(/^\s+/,'').replace(/\s+$/,'');

}

function check_blank(field) {
    
    var stripped = trim(field.replace(/(<([^>]+)>)/ig,""));
    stripped = stripped.replace(/&nbsp;/ig,"");

    if (field == '') {
        return false;
    }
    if (trim(field) == '') {
        return false;
    }
    if (stripped == '') {
	return false;
    }
    return true;
}

function validateAddEntry() {
    
    var title = document.form1.title.value;
    var oEditor = FCKeditorAPI.GetInstance('entryContent');
    var oDOM = oEditor.EditorDocument;
    var entry = '';
    if (document.all) {
	entry = oDOM.body.innerText;
    }
    else {
	var r = oDOM.createRange();
	r.selectNodeContents(oDOM.body);
	entry = r.toString(); 
    }

    if (addEntryClicked) {
        addEntryClicked = false;

	if(!check_blank(title)) {
	    alert('Title cannot be blank.');
	    return false;
	}
	else if (!check_blank(entry)) {
	    alert('Entry cannot be blank.');
	    return false;
	}
	else if (entry.length > 3000) {
	    alert('Entry cannot be over 3000 characters.\nCurrently: ' + entry.length + ' characters.');
	    return false;
	}
	return true;
    }
    else {
        return false;
    }
}

function validateEditEntry(entryID) {
    
    var form = document.getElementById('formEntry' + entryID);
    var title = form.title.value;
    var oEditor = FCKeditorAPI.GetInstance('entryContent' + entryID);
    var oDOM = oEditor.EditorDocument;
    var entry = '';
    if (document.all) {
	entry = oDOM.body.innerText;
    }
    else {
	var r = oDOM.createRange();
	r.selectNodeContents(oDOM.body);
	entry = r.toString(); 
    }

    if (!check_blank(title)) {
	alert('Title cannot be blank.');
	return false;
    }
    else if (!check_blank(entry)) {
	alert('Entry cannot be blank.');
	return false;
    }
    else if (entry.length > 3000) {
        alert('Entry cannot be over 3000 characters.\nCurrently: ' + entry.length + ' characters.');
        return false;
    }
    else {
        return true;;
    }
}

function validateAddCategory() {
    
    var name = document.form2.name.value;

    if (!check_blank(name)) {
        alert('Category Name cannot be blank.');
	return false;
    }
    else {
	return true;
    }
}

function validateEditCategory(categoryID) {
    
    var form = document.getElementById('formCategory' + categoryID);
    var name = form.name.value;

    if (!check_blank(name)) {
	alert ('Category Name caanot be blank.');
	return false;
    }
    else {
	return true;
    }
}
