(function($)
{
	$(function() {	
		
		//--- auto-fill top search field
		$("#txtSearchValue")
			.val("Enter keywords...")
			.focus(function(){
			    if ($(this).val() == "Enter keywords...") {
			        $(this).val("");
			    }
			})
			.blur(function(){
			    if ($(this).val() == "") {
			        $(this).val("Enter keywords...");
			    }
		});
	
	});
})(jQuery);

function change_date_calendar(new_date, url) {
	
	//alert(new_date);
	if ( new_date != "" ) {
		
		$.post('/actions/change_date_calendar.html?date='+new_date+'&url='+url, '', function (data) {
			
			$('#aricles_calendar').html(data);
			
		});
		
	}
	
}

function get_random() {
	
    var ranNum= Math.floor(Math.random()*63);
    
    return ranNum;
    
}

function reloadCurrentPage() {
	
	location.reload(true);
	
}


function getToken(number) {
	
	var parts = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	var token = '';
	
	for( var i = 0; i < number; i++ ) {
		
		var j = parts.substr(get_random(), 1);
		
		if ( j != '' )
			token += j;
		
	}
	
	return token;
	
}

function stripHTML(oldString) {

   var newString = "";
   var inTag = false;
   
   for(var i = 0; i < oldString.length; i++) {
   
	   if(oldString.charAt(i) == '<') inTag = true;
	    if(oldString.charAt(i) == '>') {
	    	if(oldString.charAt(i+1)=="<")
	        {
	         	//dont do anything
	        }
			else
			{
				inTag = false;
				i++;
			}
	    }
	   
	    if(!inTag) newString += oldString.charAt(i);

   }

   return newString;
   
}

function isEnterKey(ev) {
	
	var e = window.event ? window.event : ev;

	var iKeyCode = e.keyCode ? e.keyCode: e.charCode;
	
	return (iKeyCode == 13);
		
	//return false;
	
}

function performSearch() {
	
	var searchValue = document.getElementById('txtSearchValue').value;
	
	searchValueNew = searchValue.replace(/^\s+|\s+$/g,"");
	
	// require at least 3 characters be entered
	if ( searchValueNew.length < 1 ) {
		
		alert("Please enter at least 1 character in the \"Search\" field.");
		document.getElementById('txtSearchValue').focus();
		
	} else {
		
		// allow ONLY alphanumeric keys, no symbols or punctuation
		var checkOK  = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 0123456789";
		var checkStr = searchValueNew;
		var allValid = true;
		
		for ( i = 0;  i < checkStr.length;  i++ ) {
			
			ch = checkStr.charAt(i);
			
			for ( j = 0;  j < checkOK.length;  j++ )
				if (ch == checkOK.charAt(j))
					break;
			
			if ( j == checkOK.length ) {
				allValid = false;
				break;
			}
			
		}
		
		if ( !allValid ) {
			
			alert("Please enter only letter and numeric characters in the \"Search\" field.");
			
			document.getElementById('txtSearchValue').focus();
			
		} else {
			
			document.getElementById('txtSearchValue').value = searchValueNew;
			
			document.forms['mainForm'].action='/search'; 
			document.forms['mainForm'].submit();
			
		}
		
	}
	
}

function clearSearch() {
	
	var elem = document.getElementById('txtSearchValue');
	
	if ( elem != null ) {
		
		if (elem.value == '')
			elem.value = "";
		
	}
	
}

function CheckContactFields() {
	
	var bOk = true;
	
	if (!addValidator("txtName", "requiredValidatorName", "required"))
		bOk = false;

	if (!addValidator("txtEmail", "requiredValidatorEmail", "required,email"))
		bOk = false;
		
	if (!addValidator("txtPhone", "requiredValidatorPhone", "required"))
		bOk = false;

	if (!addValidator("txtMessage", "requiredValidatorMessage", "required"))
		bOk = false;

	if (!addValidator("code", "requiredValidatorSecureCodeUser", "required"))
		bOk = false;

	return bOk;
}

function CheckCommentFields() {
	
	var bOk = true;
	
	if ( !addValidator("txtCommentName", "requiredValidatorName", "required") )
		bOk = false;

	if ( !addValidator("txtCommentEmail", "requiredValidatorEmail", "required,email") )
		bOk = false;
		
	if ( !addValidator("txtCommentContent", "requiredValidatorMessage", "required") )
		bOk = false;

	if ( !addValidator("code", "requiredValidatorSecureCodeUser", "required") )
		bOk = false;

	return bOk;
	
}

function CheckForgotPasswordFieldsUser() {
	
	var bOk = true;
	
	if (!addValidator("txtEmailForgot", "requiredValidatorEmailForgot", "required,email"))
		bOk = false;
		
	return bOk;
	
}

function CheckRegisterFieldsUser() {
	
	var bOk = true;
	
	if (!addValidator("txtEmail", "requiredValidatorEmailUser", "required,email"))
		bOk = false;
		
	if (!addValidator("pwdPassword", "requiredValidatorPasswordUser", "required"))
		bOk = false;

	if (!addValidator("txtDisplayName", "requiredValidatorDisplayNameUser", "required"))
		bOk = false;

	if (!addValidator("code", "requiredValidatorSecureCodeUser", "required"))
		bOk = false;

	return bOk;
	
}

function CheckChangePasswordFieldsUser() {
	
	var bOk = true;
	
	if ( !addValidator("txtActualPassword", "requiredValidatorActualPasswordUser", "required") )
		bOk = false;

	if ( !addValidator("txtNewPassword", "requiredValidatorNewPasswordUser", "required") )
		bOk = false;
		
	if ( !addValidator("txtRetypePassword", "requiredValidatorRetypePassword", "required") )
		bOk = false;

	return bOk;
	
}

function CheckPreferencesFieldsUser() {
	
	var bOk = true;
	
	if ( !addValidator("txtFirstName", "requiredValidatorFirstNameUser", "required") )
		bOk = false;

	if ( !addValidator("txtLastName", "requiredValidatorLastNameUser", "required") )
		bOk = false;
		
	if ( !addValidator("txtDisplayName", "requiredValidatorDisplayNameUser", "required") )
		bOk = false;

	if ( !addValidator("txtPaymentAccount", "requiredValidatorPaymentAccountUser", "required,email") )
		bOk = false;

	return bOk;
	
}

function CheckPostFields() {
	
	// get content of textarea with html editor
	var post;
	
	post	 = tinyMCE.get('txtPostContent').getContent();
	source	 = $('#hdnArticleSource').val();
	
	if ( post == "" ) {
		alert('Add content for post!');
		return false;
	} else if ( source == "" ) {
		alert('Select a source!');
		return false;
	} else
		return true;
	
}

function CheckKeywordFields() {
	
	keyword = $('#txtKeywordValue').val();
	
	if ( keyword == "" ) {
		alert('Fill in the keyword field!');
		return false;
	} else
		return true;
	
}

function generateArticle() {
	
	var params = new Object();
	
	params['txtKeyword'] = $('#txtKeyword').val();
	
	$.post('/actions/create_article.html?random='+getToken(10), params, function (data) {
		
		if (data == '' )
			tb_remove();
		else
			window.location = "/newpost/" +  data;
		
	});
	
}

