/* ************************************************************************** */
/*
  html_to_str / Source: webmasters.hu
*/
function html_to_str(myStr)
{
  var arEzt = [
      "&aacute;", "&iacute;", "&ucirc;", "&otilde;", "&#369;", "&#337;", "&uuml;", "&ouml;", "&uacute;", "&oacute;", "&eacute;", "&Aacute;", "&Iacute;", "&#368;", "&#336;", "&Ucirc;", "&Otilde;", "&Uuml;", "&Ouml;", "&Uacute;", "&Oacute;", "&Eacute;"
    ];

  var arErre = [
      "á", "í", "û", "õ", "û", "õ", "ü", "ö", "ú", "ó", "é", "Á", "Í", "Û", "Õ", "Û", "Õ", "Ü", "Ö", "Ú", "Ó", "É"
    ];

  for (var i=0; i < arEzt.length; i++)
    myStr = str_replace( arEzt[i], arErre[i], myStr);

  return myStr;
}//html_to_str

/* ************************************************************************** */
/*
  str_replace / Source: http://kevin.vanzonneveld.net/techblog/article/javascript_equivalent_for_phps_str_replace/
*/
function str_replace ( search, replace, subject ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Gabriel Paderni
    // *     example 1: str_replace(' ', '.', 'Kevin van Zonneveld');
    // *     returns 1: 'Kevin.van.Zonneveld'

    if(!(replace instanceof Array)){
        replace=new Array(replace);
        if(search instanceof Array){//If search    is an array and replace    is a string, then this replacement string is used for every value of search
            while(search.length>replace.length){
                replace[replace.length]=replace[0];
            }
        }
    }

    if(!(search instanceof Array))search=new Array(search);
    while(search.length>replace.length){//If replace    has fewer values than search , then an empty string is used for the rest of replacement values
        replace[replace.length]='';
    }

    if(subject instanceof Array){//If subject is an array, then the search and replace is performed with every entry of subject , and the return value is an array as well.
        for(k in subject){
            subject[k]=str_replace(search,replace,subject[k]);
        }
        return subject;
    }

    for(var k=0; k<search.length; k++){
        var i = subject.indexOf(search[k]);
        while(i>-1){
            subject = subject.replace(search[k], replace[k]);
            i = subject.indexOf(search[k],i);
        }
    }

    return subject;

}

function strstr( haystack, needle, bool ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: strstr('Kevin van Zonneveld', 'van');
    // *     returns 1: 'van Zonneveld'
    // *     example 2: strstr('Kevin van Zonneveld', 'van', true);
    // *     returns 2: 'Kevin '

    var pos = 0;

    pos = haystack.indexOf( needle );
    if( pos == -1 ){
        return false;
    } else{
        if( bool ){
            return haystack.substr( 0, pos );
        } else{
            return haystack.slice( pos );
        }
    }
}

/* ************************************************************************** */
/**
 * Provides suggestions for state names (USA).
 * @class
 * @scope public
 */

function StateSuggestions(myStates) {
   this.states = myStates;
}

/**
 * Request suggestions for the given autosuggest control. 
 * @scope protected
 * @param oAutoSuggestControl The autosuggest control to provide suggestions for.
 */
StateSuggestions.prototype.requestSuggestions = function (oAutoSuggestControl /*:AutoSuggestControl*/,
                                                          bTypeAhead /*:boolean*/) {
    var aSuggestions = [];
    var sTextboxValue = oAutoSuggestControl.textbox.value;
    
    if (sTextboxValue.length > 0){
    
        //search for matching states
        for (var i=0; i < this.states.length; i++) { 
            if (this.states[i].indexOf(sTextboxValue) == 0) {
                aSuggestions.push(this.states[i]);
            } 
        }
    }

    //provide suggestions to the control
    oAutoSuggestControl.autosuggest(aSuggestions, bTypeAhead);
};

/**/

function keresokuldo()
{
  if (document.getElementById(comboroll_input_IDname).value=='')
    alert('Kérem adjon meg egy várost a kereséshez!');
  else
    document.getElementById(comboroll_form_IDname).submit();
}//keresokuldo

function varosellenor( varosom )
{
    var bRet = false;
    for (var i=0; i < myStates.length; i++)
    {
      if (myStates[i] == varosom)
        bRet = true;
    }

    var oVicon = document.getElementById(comboroll_icon_IDname);
    if (bRet)
    {
      oVicon.src = 'gfx/icon_good.jpg';
    }
    else
    {
      if (document.getElementById(comboroll_input_IDname).value == '')
        oVicon.src = 'gfx/icon_search.jpg';
      else
      {
        oVicon.src = 'gfx/icon_wrong.jpg';
        document.getElementById(comboroll_input_IDname).value = '';
      }
    }

    return bRet;
}
