/**
 * Provides suggestions for searchqueries
 * @class
 * @scope public
 */
function StateSuggestions(maxitems_arg ) {
    this.states = [

"aansteker", "aanstekers", "aardewerk", "adresboek", "adresboeken", "agenda", "agenda's", "Agrarische sector", "aktentas", "aktetassen", "alarm", "alarm klok", "alarm klokken", "alcoholmeter", "alcoholmeters", "anti-stress", "anti-stress artikelen", "anti stress", "apron", "armband", "armbanden", "asbak", "asbakken", "ash tray", "atlassen", "auto", "auto-accessoire", "auto-accessoires", "autominiaturen", "autominiatuur", "bad", "bad artikelen", "badge", "badges", "badhanddoek", "badjas", "badjassen", "badlaken", "badminton", "badset", "bag", "bagagelabel", "bagagelabels", "bak", "bakvorm", "bakvormen", "bal", "ball", "ballen", "ballon", "ballonnen", "balloon", "ballpen", "ballpoint", "balpen", "balpennen", "bandana", "bar artikelen", "barbecue", "barbeque", "barbeque artikelen", "barometer", "barometers", "baseball", "baseballcap", "baseballcaps", "basketbal", "bath", "batterij", "batterijen", "bbq", "beach", "beachball", "Beauty case", "beauty cases", "beeld", "beelden", "beer", "beker", "bekerhouder", "bekers", "belt", "bestek", "beursartikel", "beursartikelen", "bicycle", "bidon", "bidon's", "bier", "bierfiltje", "bike", "binoculars", "birthday", "bladwijzer", "blender", "block", "bloem", "blok", "bluetooth", "bluetooth accessoires", "board", "boat", "bodywarmer", "bodywarmers-jassen", "boek", "boekenlegger", "boil", "boksen", "boodschappentas", "boodschappentassen", "book", "boomerang", "boot", "bord", "borden", "borstel", "borstels", "bottle", "Bouw", "bowl", "box", "bracelet", "bread", "briefopener", "briefopeners", "bril", "brillendoos", "broek", "brood", "broodrooster", "broodroosters", "broodtrommel", "broodtrommels", "brush", "buddy artikelen", "bullet", "bureau", "bureau-accessoires", "bureauklok", "bureauklokjes", "button", "buttons", "calculator", "calendar", "camera", "camera's", "camping", "camping accessoires", "can", "candle", "candlestick", "candy", "cap", "caps", "car", "card", "card reader", "case", "castle", "cat", "cd-speler", "cd-toebehoren", "cd houder", "cd houders", "chair", "chess", "chest", "child", "chip & dip", "chocola", "chocolade", "chocolate", "christmass", "chronometer", "chronometers", "cigar", "cigarette", "clock", "coaster", "cocktail set", "cocktail sets", "coffee", "coin", "Communicatie/media", "compass", "computer-accessoires", "computermuis", "confetti", "congres map", "congres mappen", "cool bag", "cooler", "cool pad", "cool pads", "cord", "cosmetica", "cosmetics", "cotton", "cover", "creditcard", "creme", "cube", "curtain", "cutter", "dart", "dartboard", "dartbord", "dart borden", "das", "dassen", "databank", "databanken", "decanter", "decoratief", "decoratieve figuren", "deurmat", "deurmatten", "deurstop", "diadeem", "diademe", "dictaphoon", "diece", "dienblad", "dier", "digital camera", "digitale camera", "digitale camera's", "digitale fotolijst", "digitale fotolijsten", "dip", "dipbak", "diplomatenkoffers", "dippen", "dobbelbekers", "dobbelsteen", "dobbelstenen", "documentenmap", "documententas", "documentmappen", "documenttassen", "doel", "dog", "doos", "douch", "doucheradio", "draagtas", "draagtassen", "drank", "drum", "duffelbag", "duik", "duikartikelen", "duimstok", "duimstokken", "dvd-speler", "eco", "eerste hulp", "eerste hulpsetjes", "eet artikelen", "EHBO", "ehbo sets", "eieren", "eindejaarsgeschenken", "EK artikelen", "emmer", "emmers", "etui", "etuis", "euro-artikelen", "fan", "Farmaceutische industrie", "feest", "feest artikelen", "female", "fiets", "fietsartikelen", "film", "Financiële dienstverlening", "fish", "fitness", "fitness artikelen", "flag", "flashlight", "flask", "fleece", "fleece artikelen", "fles", "flesafsluiter", "flesafsluiters", "fleshouder", "flesopeners", "flessenhouder", "flessenhouders", "flower", "fluit", "fluitjes", "fluorescent", "fluoriserend", "flute", "fondue set", "fondue sets", "foot", "foto", "fotoalbum", "Fotoalbum's", "fotolijst", "frame", "frisbee", "frisbees", "fun", "Fuß", "game", "garden", "geduldspel", "geduldspelletjes", "gel", "geld", "geluid", "geluid sensor art.", "gereedschap", "geurmarkers", "Gezondheidszorg/welzijn", "glas", "glass", "glasses", "glaswerk", "glazen", "globe", "glove", "goal", "gokspellen", "golf", "golfartikelen", "gordijn", "gras", "grass", "grill", "gsm", "gsm-artikelen", "gum", "haar", "haarborstel", "haarborstels", "haardroger", "haardrogers", "hair", "hairstyler", "halloween", "hamer", "hammer", "handdoek", "handdoeken", "Handel", "handkacheltjes", "handschoen", "handschoenen", "handschuh", "handtas", "handtassen", "hangkoordpen", "hangmat", "hart", "hartje", "hartslag meter", "hat", "heart", "heater", "herfst", "heupfles", "heuptas", "heuptassen", "highlighter", "hoed", "hoeden", "hoes", "hoesje", "hond", "horloge", "horloges", "horn", "hot pack", "hot pad", "hot spot finders", "hourglass", "hout", "houtenartikelen", "huishoudartikelen", "huls", "hygrometer", "Hüls", "ice", "ICT", "ijs", "ijsemmer", "ijsemmers", "ijskrabber", "ijskrabbers", "ijsmachine", "incense", "Industrie/productie", "internet", "isoleerkan", "isoleerkannen", "jack", "jacket", "jacks", "jas", "jassen", "jeu de boules", "jewel", "jogging pakken", "jojo", "jojo's", "jumping rope ", "juweel", "kaars", "kaarsen", "kaarshouders", "kaart", "kaartenhouders", "kaarthouder", "kaartlezer", "kaartlezers", "kachel", "kalender", "kalenders", "kam", "kandelaar", "kandelaars", "kantoor", "kapstok", "kapstokken", "karabijnhaak", "karaf", "karaffen", "kasteel", "katoen", "katoenen artikelen", "kelnermes", "kelnersmes", "keramiek", "kerst", "kerstartikelen", "kerstpakketten", "keuken", "keuken accessoires", "key", "keyboard", "keycord", "keyring", "kind", "kinderartikelen", "kist", "kiste", "kitchen", "kite", "klapper", "klappers", "klapstoel", "klapstoelen", "kleding", "kledingborstel", "kleding hanger", "kleding hangers", "kledingtas", "kledingtassen", "klemmap", "klemmappen", "kleurboek", "kleurboeken", "klok", "klokken", "knapsack", "knife", "knikker", "knikkers", "knuffel", "knuffels", "koekjes vormen", "koeler", "koelers", "koelkast", "koeltas", "koeltassen", "koffer", "kofferlabel", "kofferlabels", "kofferriem", "kofferriemen", "koffers", "kofferslot", "koffie", "koffieset", "koffiesets", "koffiezet apparaten", "kogel", "koker", "kokers", "kompas", "kompassen", "kookgerei", "kookwekker", "kookwekkers", "koord", "kop & schotel", "korte broek", "krijt", "krijtjes", "kruiden", "kubus", "kubusblok", "kubusblokken", "kubushouder", "kubushouders", "kurkentrekker", "kurkentrekkers", "kussen", "kussens", "laguiole", "lamp", "lampen", "lanyard", "lanyard pen", "lanyards", "lappendeken", "laptoptas", "laptoptassen", "laserpointer", "laserpointers", "lederwaren", "led verlichting", "lees accessoires", "leeslamp", "lente", "lepel", "lepel set", "lezen", "licht", "lichtgevende stokken", "light", "lighter", "light strings", "ligstoelen", "lijst", "liniaal", "linialen", "lippenbalsem", "lippenstift", "list", "lock", "loep", "loepen", "luchtbed", "lucifer", "lucifers", "lunchbox", "magneet", "magnet", "magneten", "magnetron", "magnifying glass", "mailing artikelen", "make-up", "make-up artikelen", "manchetknopen", "manicureset", "manicuresets", "map", "mappen", "marble", "markeerstift", "markeerstiften", "massage", "massage artikelen", "matrassen", "meetlint", "memoblok", "memoblokken", "memoclip", "memoclips", "memoholder", "memohouder", "mes", "messen", "messenblok", "mikado", "miniature", "miniatuur", "miniatuur auto's", "mini producten", "mirror", "mixer", "mobile", "mok", "mokken", "money", "moneyclip", "monitor", "mouse", "mousepad", "movie", "mp3", "mp3 speler", "mp4", "mp4 spelers", "mug", "muis", "muismat", "muismatten", "munt", "muntjes", "musketonhaak", "muts", "mutsen", "naaiset", "naaisetjes", "naamkaart", "neklint", "nietmachine", "nietmachines", "noodlampen", "note", "notenkraker", "notenkrakers", "notitieblok", "notitieblokjes", "notitieboekjes", "notitieboeknyl", "nylon", "nylon artikelen", "office", "oil", "olie", "Olympische spelen", "onderbroek", "onderbroeken", "Onderwijs en onderzoek", "onderzetter", "onderzetters", "ontbijt", "ontbijt artikelen", "oorwarmers", "opblaasbaar", "opblaasbare artikelen", "opener", "openers", "opvouwbare stoel", "oranje", "oranje artikelen", "organizer", "organizers", "outdoor", "ovenwant", "ovenwanten", "Overheid", "paas artikelen", "pan", "pannen", "pannenlappen", "pants", "paper", "paperclip", "paperclips", "papier", "papierklem", "paraplu", "paraplu's", "parasol", "parasols", "parfum", "parfumverstuivers", "parkeerschijf", "party", "pasta set", "pasta sets", "patience", "paul bocuse", "pda", "pedometer", "pedometers", "pen", "pen-knife", "pencil", "penhouder", "penhouders", "pen met omhangkoord", "pennen", "pennenetui", "pennenetuis en doosjes", "pennenset", "pennensets", "peper", "peper en zout", "peper en zoutstellen", "pepermunt", "pepper", "perforator", "perfume", "perpetuum mobile", "pet", "petten", "Pharmaceutische artikelen", "phone", "photo", "photoframe", "picknick", "picknick artikelen", "pillendoos", "pillendoosje", "pilotenkoffers", "pins", "pizza", "placemat", "placemats", "plakband", "plane", "plaster", "plate", "player", "pleister", "pleisters", "pluche", "pluche artikelen", "plug", "plunje tas", "plunjetassen", "plunjezak", "poker", "polo's", "polsband", "polsbandje", "pols bandjes", "pomp", "poncho", "pooltafel", "pooltafels", "porselein", "portable", "portemonnee", "portemonnees", "portfolio", "porzellan", "post it artikelen", "pot", "potloden", "potlood", "pouch", "presse-papier", "pump", "puntenslijper", "puntenslijpers", "puzzel", "puzzels", "puzzle", "raam", "radio", "radio's", "razor", "reading", "reflector", "reflectoren", "regenjas", "regenjassen", "regiestoelen", "reisaccessoires", "reistas", "reistassen", "reiswekkers", "rek", "rekenmachine", "relax", "relax artikelen", "retro", "retro artikelen", "riem", "ringband", "ringbanden", "rituals", "roaster", "rollerpen", "rollerpens", "rolmaat", "rooster", "rope", "rubber", "rucksack", "rugby shirt", "rugby shirts", "rugkrabber", "rugkrabbers", "rugzak", "rugzakken", "ruler", "sack", "safety", "salade", "salt", "saw", "schaakspel", "schaakspelen", "schaal", "schaar", "schalen", "scharen", "scheer", "scheersetjes", "scherm", "schmink", "schoen", "schoenlepel", "schoenlepels", "schoenpoets", "schoenpoetssets", "school", "schoolartikelen", "schoonmaak accessoires", "schort", "schorten", "schoudertas", "schrijfblok", "schrijfblokken", "schrijfbord", "schrijfmap", "schrijfmappen", "schrijfset", "schrijfsets", "schrijven", "schroeven", "schroevendraaier", "schroevendraaiers", "scissor", "scooters", "screen", "screw", "screwdriver", "servetten houder", "servetten houders", "sewing set", "shampoo", "shoe", "shower", "sieraad", "sigaar", "sigaren accessoires", "sigaret", "sigaretten accessoires", "sign", "sim-kaart artikelen", "sjaal", "sjalen", "skipashouder", "slaapzak", "slazenger", "sleutel", "sleuteletui", "sleuteletuis", "sleutelhanger", "sleutelhangers", "sleutelrekken", "slijper", "slipper", "slippers", "slot", "sloten", "smiley", "smiley artikelen", "smoke", "snoep", "snoepje", "soap", "sock", "sok", "sound", "spaarpot", "speaker", "speakers", "speelgoed", "speelkaarten", "spel", "speler", "spellen en puzzles", "spiegel", "spiegels", "spons", "spoon", "sport", "sport artikelen", "sporttas", "sporttassen", "springtouw", "springtouwen", "stairs", "stanleymes", "stapler", "stappenteller", "Stappentellers", "statue", "stekker", "stoel", "stoelen", "stoel opvouwbaar", "stopwatch", "strand", "strandartikelen", "strandbal", "strandballen", "strandlaken", "strandtas", "strandtassen", "strap", "stress bal", "strijkijzer", "sudoku", "sugar", "suiker", "suiker artikelen", "suitcase", "sun", "survivalset", "survivalsets", "sweatband", "sweater", "sweaters", "swim", "säge", "t-shirt", "t-shirts", "tafelklok", "tafelklokjes", "tafels", "tand", "tandenpoetssets", "tape", "tas", "tassen", "teeth", "teken artikelen", "tekendoos", "tekstmarker", "tekstmarkers", "Telecom", "telefoon", "telefoon accessoires", "telefoonboekjes", "telephone", "telescope", "tennis", "textiel", "textile", "thea", "thee", "thee artikelen", "thee lichtjes", "thermobeker", "thermobekers", "thermometer", "thermometers", "thermosfles", "thermosflessen", "tie", "tijd", "timetables", "tin", "toeter", "toetsenbord", "toiletartikelen", "toilettas", "toilettassen", "torch", "touw", "towel", "tracksuit", "trainingspak", "trainingspakken", "Transport/logistiek", "trap", "trolley", "trolleys", "trommel", "truck", "trunk", "tuin", "tuin artikelen", "uhr", "umbrella", "usb-lichtje", "usb-stick", "usb-ventilator", "us basic", "usb licht", "usb light", "usb stick", "usb ventilator", "uurwerk", "vaas", "valentijn", "vase", "vazen", "veiligheid", "veiligheidsartikelen", "veldfles", "veldflessen", "ventilator", "ventilatoren", "verbandtrommels", "verfset", "verfsets", "vergiet", "vergrootglas", "verjaardag", "verjaardagen", "verrekijker", "verrekijkers", "verzorgingsproducten", "vessel", "vest", "vesten", "vis", "visgereedschap", "visitekaart", "visitekaart artikelen", "vlag", "vlaggen", "vliegenmeppers", "vlieger", "vliegers", "vliegtuig", "voet", "voetbal", "voetbal artikelen", "voetbal doel", "voetbal doelen", "voetballen", "voetbaltafel", "voice-recorder", "vork", "vrachtwagen", "vulpen", "vulpennen", "vulpotloden", "vulpotlood", "waaier", "waaiers", "wallet", "wandelstok", "wandklok", "wandklokken", "warmhouder", "warmhouders", "wasknijpers", "watch", "waterpas", "waterpistolen", "waterpistool", "wc borstels", "weatherstation", "webcam", "weegschaal", "weerstation", "weerstations", "wekker", "wekkerradio's", "wekkers", "wereld", "wereldbol", "wereldbollen", "wereldtijdenklok", "whistle", "whiteboard", "wierook", "wijn", "wijnglas", "wijnhouders", "wijnkoeler", "wijnkoelers", "wijnset", "wijnsets", "windbreaker", "windmolentjes", "window", "wine", "winter", "winter(sport)", "WK artikelen", "wood", "world", "wristband", "writing", "writing set", "xmas", "yoyo", "zaag", "zak", "Zakelijke dienstverlening", "zaklamp", "zaklampen", "zakmes", "zakmessen", "zakspiegel", "zakspiegels", "zandloper", "zandlopers", "zeep", "zomer", "zon", "zonnebrandcreme", "zonnebril", "zonnebrillen", "zonnehoed", "zonnehoedjes", "zonneklep", "zonnekleppen", "zonnescherm", "zout", "zout en peper", "zweetband", "zweetbandjes", "zwem", "zwem spullen"
    ];

	
	/**
     * The default maximum number of items to show in the dropdown.
     * @scope private
     */
    this.maxitems /*:int*/ = 0;

	if(maxitems_arg) {
		this.maxitems = maxitems_arg;
	}
}

/**
 * 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;
	var ii = 0;
    
    if (sTextboxValue.length > 0){
    
        //convert value in textbox to lowercase
        var sTextboxValueLC = sTextboxValue.toLowerCase();

        //search for matching states
        for (var i=0; i < this.states.length; i++) { 

            //convert state name to lowercase
            var sStateLC = this.states[i].toLowerCase();
           
            //compare the lowercase versions for case-insensitive comparison
            if (sStateLC.indexOf(sTextboxValueLC) == 0) {
				ii++;
                //add a suggestion using what's already in the textbox to begin it                
                aSuggestions.push(sTextboxValue + this.states[i].substring(sTextboxValue.length));
				if (ii == this.maxitems) {
					break;
				}
            } 
        }
    }

    //provide suggestions to the control
    oAutoSuggestControl.autosuggest(aSuggestions, bTypeAhead);
};

