function topWarningBox_setFullWidth() {
    $('#TOP_WARNINGBOX_ENVELOPE').removeClass('shortWidthWarningBox');
    $('#TOP_WARNINGBOX_ENVELOPE').addClass('fullWidthWarningBox');
}
function topWarningBox_setShortWidth() {
    $('#TOP_WARNINGBOX_ENVELOPE').removeClass('fullWidthWarningBox');
    $('#TOP_WARNINGBOX_ENVELOPE').addClass('shortWidthWarningBox');
}
function topWarningBox_show(text) {
    $('#TOP_WARNINGBOX_ENVELOPE').css('display','block');
    $('#TOP_WARNINGBOX_TEXT').html(text);
}

function topWarningBox_hide() {
    $('#TOP_WARNINGBOX_ENVELOPE').css('display','none');
    $('#TOP_WARNINGBOX_TEXT').html('');
}


function Get_Cookie( check_name ) 
{
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; 

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		a_temp_cookie = a_all_cookies[i].split( '=' );
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

// function for displaying/hiding wait icon (div is defined in corex_FOOTER)
function waitIcon(status) {

	if   (status=='show')
		document.getElementById('ajaxProcess_waitIcon').style.display = 'block';
	else
		document.getElementById('ajaxProcess_waitIcon').style.display = 'none';

}

function submitLogonForm(log,pas)   {

	var l = document.getElementById(log).value;
	var p = document.getElementById(pas).value;

	xajax_checkUser(l,p);

}
function showDefault(inputId) {

	var inputId_def = inputId + '_def';

	if (document.getElementById(inputId).value=='')
		document.getElementById(inputId).value = document.getElementById(inputId_def).value;

}
function hideDefault(inputId) {

	var inputId_def = inputId + '_def';

	if (document.getElementById(inputId).value == document.getElementById(inputId_def).value)
		document.getElementById(inputId).value = '';

}

function submitLogoffForm()  { document.forms.FORM__userLogoffArea.submit();  }
function submitSearchBox() {

	if (document.getElementById('search_textbox_def').value!=document.getElementById('search_textbox').value && document.getElementById('search_textbox').value!='')
		document.getElementById('sBA_searchbox').submit();

}

function addToNewsletter(varSuffix)
{
	if (varSuffix == null)
	{
		varSuffix = '';
	}

	var email = $('#nl_email' + varSuffix).val();
	var name  = $('#nl_name' + varSuffix).val();

	if (name == $('#nl_name_def' + varSuffix).val())
	{
		name = '';
	}

	if (corex.checkMail(email))
	{
		$('#nl_em' + varSuffix).val(email);
		$('#nl_nm' + varSuffix).val(name);
		$('#nl_ac' + varSuffix).val('add');

		xajax_corex_templateLoader('newsletter','NL_ADD_AREA' + varSuffix,xajax.getFormValues('nl' + varSuffix));
	}
}

function updateShirttextBox()
{
	document.getElementById('shirttext_box').innerHTML = document.getElementById('shirttext_text').value;
}

function openShirttextInCreator(text)
{
	if (text!='')
	{
		document.getElementById('shirttext_text').value  = text;
		document.getElementById('shirttext_form').action = document.getElementById('shirttext_form').action + '?sq=' + escape(text) + '&sc=creator';
		document.getElementById('shirttext_form').submit();
	}
}

function getSelectedValueText(inputBoxId)
{
	var tmp    = document.getElementById(inputBoxId);
	var retVal = '';

	for (i=0;i<tmp.length;i++)
	{
		if (tmp[i].value==tmp.value)
		{
			retVal = tmp[i].text;
		}
	}

	return(retVal);
}

function verifyUserDataForm(formId, passwordIsMandatory)
{
	if ($('#' + formId).length == 0)
	{
		alert('mainLib: Error ' + formId + ' not found !');
		return false;
	}
	else
	{
		formId = '#' + formId + ' ';
	}

	var mandatoryFields = new Array('name','surname','street','street_nr','zip','city','state','telephone','email','email_2','password');
	var allFilled = true;

	// highlight all mandatory fields which aren't filled
	for(i=0;i<mandatoryFields.length;i++)
	{
		if (mandatoryFields[i] == 'password' && passwordIsMandatory != true)
		{
			continue;
		}

		if ($(formId + '#' + mandatoryFields[i]).val() == '')
		{
			$(formId + '#' + mandatoryFields[i]).css('border', '1px solid #ff0000');
			allFilled = false;
		}
		else
		{
			$(formId + '#' + mandatoryFields[i]).css('border', '1px solid #dddcda');
		}
	}

	// are all mandatory fileds filled ?
	if (allFilled == false)
	{
		alert($('#NOT_ALL_FIELDS_FILLED').val());
	}

	// is email valid ?
	else if (checkMail('email') == false)
	{
		alert($('#EMAIL_NOT_VALID').val());
	}

	// is email unique ?? (used for now only in signIn.tpl, variable is set by ajax call from __user_registration.php
	else if ($(formId + '#emailUnique').val() == '0')
	{
		alert($('#EMAIL_NOT_UNIQUE').val());
	}

	// are passwords same (password/password2 input boxes)
	else if ($(formId + '#email').val() != $(formId + '#email_2').val())
	{
		alert($('#EMAILS_DOESNT_MATCH').val());
	}

	// is password bigger than 6 characters ?
	else if ($(formId + '#password').val().length < 6 && (passwordIsMandatory == true || $(formId + '#password').val() != ''))
	{
		alert($('#PASSWORD_TOO_SHORT').val());
	}

	// all ok, return TRUE
	else
	{
		return true;
	}

	return false;
}

// ---------------> misc global functions <--------------------------------------------------------------------------------------------------------------------
function in_array(val,a)
{
  for(var i=0;i<a.length;i++)
  {
    if (a[i]==val) return true;
  }
  return false;
}
function array_search(val,a)
{
  for(var i=0;i<a.length;i++)
  {
    if (a[i]==val) return i;
  }
  return 0;
}


function iconBigOver(n) {
	document.getElementById("btn"+n).className = "btn1On" ;
}
function iconBigOut(n)  {
	document.getElementById("btn"+n).className = "btn1Off" ;
}

function checkIfFieldsFilled(fieldsList) {

	allFilled = true;

	for(i=0;i<fieldsList.length;i++) {
		if (document.getElementById(fieldsList[i]).value=='') allFilled = false;
	}

	return(allFilled);
}
function checkMail(email) {
	 var regExpEmail=/^.+@.+\..+$/;
	 var o = document.getElementById(email);
	 if(!regExpEmail.exec(o.value)) return(false);
	 						   else return(true);
}

function get_ed_text(editor_name) {

    var oEditor = FCKeditorAPI.GetInstance(editor_name) ;
    if (oEditor.EditorDocument.body.innerHTML) {
	  	  return oEditor.GetXHTML();
          // return oEditor.EditorDocument.body.innerHTML;
    }
    else return '';
}

function replaceSubstring(inputString, fromString, toString) {
	return corex.replaceSubstring(inputString, fromString, toString);
}

// --------- POPUP BOX HANDLER -----------------------------------------------------
function showPopup(contentElementId,boxWidth,boxHeight) {

	var popupBox = document.getElementById('POPUP_TEXTBOX');
	var content  = document.getElementById(contentElementId);

	if(boxWidth>0)  popupBox.style.width  = boxWidth + 'px';
	if(boxHeight>0) popupBox.style.height = boxHeight + 'px';

	popupBox.innerHTML     = content.innerHTML;

	popupBox.style.top     = parseInt(corex.mouseY) + 10 + 'px';
	popupBox.style.left    = parseInt(corex.mouseX) + 10 + 'px';

	popupBox.style.display = 'block';

}
function hidePopup() {

	document.getElementById('POPUP_TEXTBOX').style.display='none';

	updatePopupBoxPosition = 0;

}
// ------------------------------------------------------------------------------------

function getElementHeight(Elem) {
	return corex.getElementHeight(Elem);
}

function getElementWidth(Elem) {
	return corex.getElementWidth(Elem);
}

function findPos(obj) {
	return(corex.findPos(obj));
}

function is_int( mixed_var ) {
    // *     example 1: is_int(23)
    // *     returns 1: true
    // *     example 2: is_int('23')
    // *     returns 2: false
    // *     example 3: is_int(23.5)
    // *     returns 3: false
    // *     example 4: is_int(true)
    // *     returns 4: false

    if (typeof mixed_var !== 'number') {
        return false;
    }

    if (parseFloat(mixed_var) != parseInt(mixed_var, 10)) {
        return false;
    }

    return true;
}
