/* 

	SearchField 
	written by Alen Grakalic, provided by Css Globe (cssglobe.com)
	please visit http://cssglobe.com/post/1202/style-your-websites-search-field-with-jscss/ for more info
	
*/

function keyword(){
	
	// CONFIG 
	
	// this is id of the search field you want to add this script to. 
	// You can use your own id just make sure that it matches the search field in your html file.
	var id = "keyword";
	// Text you want to set as a default value of your search field.
	var defaultText = "Search drugs";	
	
	// set to either true or false
	// when set to true it will generate search suggestions list for search field based on content of variable below
	var suggestion = true;
	
	// static list of suggestion options, separated by comma
	// replace with your own
	var suggestionText ='Abacavir, Abacavir-Lamivudine, Abilify, Acamprosate, Acarbose, accupril, accuretic, accutane, Aceclofenac-DT, Aceclofenac-Paracetamol, Aceclofenac-Paracetamol-Serratiopeptidase, aceon, acetazolamide, Acetylsalicylic-acid, aciphex, Acitretin, Acitrom, Acnomor, Acticin, actigall, actonel, actoplus-met, actos, Acuatim, Acular, Acuvail, Acyclovir, adalat, Adapalene, Adapin, adcirca, Adefovir-Dipivoxil, adoxa, advair-diskus, Advair-HFA, Advil, Afeditab, aggrenox, Albendazole, Albenza, Albumin, Albuminar, Albuterol-Salbutamol, aldactone, aldara, Alendronate, alesse, Aleve, Alfacalcidol, Alfuzosin, Alimta, Alinia, Aliskiren, allegra, Alli, Allopurinol, alphagan, alphatrex, altace, altinac, altocor, Altoprev, amantadine-hcl, amaryl, amias, Amiloride-Hydrochlorothiazide, Amiodarone, Amisulpride, Amitiza, Amitriptyline, Amlodipine, Amlodipine-Besilate-Olmesartan-Medoxomil, Amlodipine-Lisinopril, Amlodipine-Telmisartan, Amoxapine, Amoxicillin, Amoxicillin-Bromhexine, Amoxicillin-Clavulanate, Amoxicillin-Dicloxacillin, Amoxicillin-Dicloxacillin-Lactic-Acid-Bacillus, amoxil, ampicillin, Amrix, anafranil, anaprox, Anastrozole, Ansimar, Antabuse, Aotal, apresoline, apri, Apriso, aprovel, aralen, arava, Arcoxia, aricept, arimidex, Aripiprazole, aristocort, Arsenic-Trioxide, artane, Arthrotec, Asacol, aspirin, Aspirin-Dipyridamole, astelin-nasal-spray, Astonin, atacand, atarax, Atenolol, Atenolol-Chlorthalidone, Atomoxetine, Atorvastatin, Atralin, Atripla, atrovent, augmentin, Avage, avalide, avapro, avelox, aventyl, avita, avodart, aygestin, Azathioprine, Azelaic-Acid, Azelastine, azelex, Azilect, Azithromycin, Azor, azulfidine, baclofen, bactrim, bactroban, Balsalazide, Bambec, Bambuterol, beclomethasone, beconase-aq, Benazepril, Benicar, benicar-hct, benzac-w, Benzonatate, benzoyl-peroxide, beta-val, betagan, Betahistine, Betamethasone, betamethasone-valerate-gentamicin-miconazole-nitrate, betapace, Betaserc, betatrex, Betaxolol, betoptic, biaxin, Bicalutamide, Biltricide, Bimatoprost, Bio-Statin, Bisolvon, Bisoprolol, Bisoprolol-Fumarate, Bisoprolol-Hydrochlorothiazide, Bondronat, boniva, Bortezomib, Bosentan, brethaire, brethine, Brimonidine, Bromfenac, Bromhexine, Bromocriptine, budesonide, Budesonide-formoterol, Buminate, BUPROPION, Buscopan, buspar, Buspirone, Butenafine, Bystolic, Cabergoline, calan, Calcipotriol-Calcipotriene, Calcitonin-Salmon, Calcitriol, Calcium-Acetate, Campral, Canasa, Candesartan, Canesten, Capecitabine, Carafate, Carbamazepine, carbatrol, Carbidopa-Levodopa, Carbidopa-Levodopa-Entacapone, Carbimazole, Carboplatin, cardizem, cardura, Carnitor, cartia, Cartigen, Carvedilol, casodex, cataflam, ceclor, Cefaclor, Cefadroxil, Cefdinir, cefixime, Cefpodoxime, Ceftin, Cefuroxime, celebrex, Celecoxib, celexa, cellcept, Cephalexin, Cetirizine, champix, chantix, Chlorambucil, Chloramphenicol, Chlorhexidine-Gluconate, Chloroquine, Chloroquine-Phosphate, chlorpromazine, Chlorzoxazone-Paracetamol, Chlorzoxazone-Paracetamol-Diclofenac-potassium, Cholestyramine, Ciclesonide, Ciclopirox-Olamine, Cilostazol, ciloxan, Cinacalcet, Cinnarizine, Cinnarizine-Domperidone, Cipro, Ciprofloxacin, Ciprofloxacin-Dexamethasone, Citalopram-Hydrobromide, clarinex, Clarithromycin, claritin, Clemastine, cleocin, climaval, clindagel, clindamycin, Clindamycin-Clotrimazole, Clobetasol, Clobetasol-Clotrimazole-Gentamicin, Clobex, Clofazimine, Clomid, Clomifene, Clomifene-Clomiphene, Clomiphene, Clomipramine, Clonea, clonidine, Clopidogrel, Clotrimazole, Clozapine, clozaril, Clozolen, co-aprovel, Coenzyme-Q10, Colazal, Colazide, colchicine, combivent, combivir, compazine, Comtan, Conjugated-Estrogens, Contractubex, CoQ10, Coralan, cordarone, coreg, cormax, Cortef, Cortineff, cosopt, coumadin, covera-hs, cozaar, crestor, crixivan, Crolom, cyclandelate, Cyclobenzaprine-Hydrochloride, cyclogyl, Cyclomen, Cyclopentolate, Cyclophosphamide-Ciclofosfamida, Cycloserine, Cyclosporine, cycrin, cymbalta, Cyproheptadine, cyproterone-acetate-ethinyl-estradiol, Cytarabine, Cytosar, cytotec, cytoxan, Daflon, Daivonex, Danazol, danocrine, Dapoxetine, DapsoneDarifenacin, Daunorubicin, ddavp, decadron, Delonide, deltasone, demadex, depakote, Dermovate, Desferal, Desferrioxamine, Desloratadine, Desmopressin, desogen, Desogestrel-Ethinyl-Estradiol, Desonate, Desonide, desowen, Desvenlafaxine, desyrel, detrol, detrol-la, detrusitol-xl, Dexamethasone, Dexchlorpheniramine-Maleate, dexone, Dexrabeprazole-Sodium, diabeta, Diamicron, diamox, Diane-35, Diclofenac, Diclofenac-Diethylamine, Diclofenac-Sodium-Misoprostol, Didanosine, differin, diflucan, digitek,Digoxin, dilacor, dilantin, diltia, DILTIAZEM, Dimetindene, Dinagen, diprolene, diprosone, Dipyridamole, Disulfiram, ditropan, Divalproex, Docetaxel, Donepezil, doryx, Dorzolamide, Dorzolamide-Timolol-Maleate, Dostinex, Dosulepin-Dothiepin, Dovonex, Doxazosin, Doxepin, Doxofylline, Doxycycline, Doxycycline-Hyclate, Doxylamine-Pyridoxine, Dronedarone, Drospirenone-Ethinyl-Estradiol, Drotaverine, Drotaverine-Aceclofenac, Drotaverine-Mefenamic-Acid, Drotaverine-Paracetamol, droxia, Duloxetine, duollin, Duratia, duricef, Dutasteride, Dutasteride-Tamsulosin, dynacin, e-mycin, Ebastine, Ebastine-Montelukast, Ebastine-Phenylephrine, Efavirenz, Efavirenz-Emtricitabine-Tenofovir, effexor-xr, Effient, efudex, elavil, eldepryl, eldoquin, Elestat, Elidel, Elimite, elocon, Eloxatin, Eltroxin, Embeline, Emla, Emsam, Emthexate, Enablex, Enalapril, Enalapril-Hydrochlorothiazide, Endep, Entacapone, Epinastine, Epirubicin, epitol, epivir, epivir-3tc, EPLERENONE, eptus, Epzicom, Erdosteine, Erdotin, Erlotinib, Ertaczo, eryc, Erythromycin, Escitalopram, esidrix, eskalith, Esomeprazole, estrace, Estradiol, estring, Ethambutol, Ethionamide, Etoposide, Etoricoxib, Eucreas, eulexin, evista, exelon, Extr-Cepae-Heparin-sodium-Allantoin, Ezetimibe, Ezetimibe-Simvastatin, ezetrol, Famciclovir, Famotidine, famvir, fansidar, Febuxostat, feldene, Felodipine, femara, Femizol, Fenofibrate, Fexmid, Fexofenadine, Fexofenadine-Pseudoephedrine, Filagra, Filitra, Finasteride, Flagyl, Flavoxate, Flax-Seed-oil, Flector, Flexeril, flomax, flomax-od, flonase, Florinef, Flovent, floxin, Fluconazole, Fludrocortisone, Flunarizine, Fluocinolone, Fluorometholone, FLUOROURACIL, Fluoxetine-Hcl, Flurbiprofen, Flutamide, fluticasone, Fluticasone-Salmeterol, Fluvoxamine, fml, Fortical, fosamax, Fosinopril, Fosrenol, fulvicin, furacin, furadantin, Furazolidone, Furosemide, Furoxone, Gabapentin, Gabarone, Galantamine, Galvus, Gefitinib, Gemfibrozil, gengraf, Gentamicin, geodon, Gleevec, Gliclazide, Gliclazide-Metformin, Glimepiride, Glimepiride-Metformin, Glimepiride-Pioglitazone-Metformin, Glipizide, Glipizide-Metformin, Glivec, glucophage, Glucosamine-sulphate, glucotrol, glucovance, glyburide, Glyburide-Glibenclamide-Metformin, grifulvin, grisactin, Griseofulvin, Halobetasol-Propionate, Halobetasol-Propionate-Fusidic-Acid, Halobetasol-Propionate-Salicylic-Acid, haloperidol, Halovate, Halovate-F, Halovate-s, Heparin, Heparin-Benzyl-Nicotinate, Hepsera, Hydeltrasol, hydralazine, hydrea, Hydrochlorothiazide, Hydrocortisone, hydrodiuril, Hydroquinone, Hydroquinone-Tretinoin-Mometasone, Hydroxychloroquine-Sulphate, Hydroxyurea, Hydroxyzine, Hyoscine-Butylbromide, hytrin, hyzaar, Ibandronate, Ibandronate-Sodium, Ibuprofen, ilosone, Imatinib-Mesylate, imdur, Imiquimod, imitrex, imodium, imuran, Indapamide, inderal, Indinavir, indocin, Indomethacin, Invega, Ipratropium-Bromide, Ipratropium-Bromide-Albuterol-Salbutamol, Irbesartan-Hydrochlorothiazide, Iressa, isoniazid, isoptin, isopto-carpine, isordil, Isosorbide-Dinitrate, Isosorbide-Mononitrate, Isotretinoin, Itraconazole, Ivabradine, Ivermectin, Ivermectin-Albendazole, Jalyn, Janumet, Januvia, Kaletra, Kalicor, Kamagra, Kapidex, karvezide, keftab, keppra, Keralyt, Kestine, Ketoconazole, Ketoconazole-Zinc-Pyrithione, Ketorolac, Ketorolac-Tromethamine, Kivexa, Kwellada, L-Arginine, L-Arginine-Proanthocyanidin, L-Ornithine-L-Aspartate, L-Ornithine-L-Aspartate-Pancreatin, Labetalol, Lamictal, lamisil, Lamivudine, Lamivudine-Zidovudine, Lamotrigine, lamprene, lanoxin, lansoprazole, Lanthanum-Carbonate, lariam, lasix, Latanoprost, Latisse, Leflunomide, Lenalidomide, Letrozole, leucovorin-calcium, leukeran, levaquin, Levetiracetam, levitra, levobunolol, Levocarnitine, Levocetirizine, Levofloxacin, Levonorgestrel, Levonorgestrel-Ethinyl-Estradiol, levora, Levothroid, Levothyroxine, Levoxyl, lexapro, Lialda, Lidocaine, Lidocaine-Prilocaine, Linezolid, Lioresal, lipitor, Lipram, Lisinopril, Lisinopril-HCTZ, Lithium, lithobid, lithotabs, locoid-lipo, Lokara, Lomefloxacin, Loniten, Loperamide, lopid, Lopinavir-Ritonavir, lopressor, Loprox, Loratadine, Losartan, Losartan-Hydrochlorothiazide, lotemax, lotensin, Loteprednol-Etabonate, lotrel, Lovastatin, Lovaza, Loxapine, loxitane, lozol, Lubiprostone, Lumigan, lustra, luvox, luxiq, Lyclear, Lythrin, macrobid, macrodantin, maxalt, maxaquin, maxivate, Mebendazole, Meclizine-Caffeine, medrol, Medroxyprogesterone, Mefenamic-Acid, Mefenamic-Acid-Dicyclomine, Mefloquine, Megace, Megestrol-Acetate, mellaril, Meloxicam, Meloxican, melquin, Memantine, Memantine-Donepezil, mentax, Mercaptopurine, Mesalamine, Mesasal, Mestinon, Metadoxine-Silymarin-L-Ornithine-L-aspartate-Folic-acid-Pyridoxine-Hcl, Metaglip, Metaxalone, Metformin, Methergine, Methocarbamol, Methotrexate, Methoxsalen, Methylergometrine-Methylergonovine, Methylprednisolone, meticorten, metoclopramide, Metoprolol, Metronidazole, mevacor, Miacalcin, micardis, micardis-hct, Miconazole, micronase, microzide, mifepristone, Mimpara, minipress, Minocycline, Minoxidil, mirapex, mircette, Mirtazapine, Misoprostol, misoprostol-mifepristone, mobic, Mobilis, moduretic, Mometasone, monistat, monodox, monoket, monopril, Montelukast, motrin, Moxifloxacin, Multaq, Mupirocin, Muscoril, myambutol, mycelex, Mycophenolate-Mofetil, Mycostatin, Mylocel, Myocalm, Myoril, mysoline, nabumetone, Nadiflox, Nadifloxacin, Nadixa, Nadoxin, Nalidixic-Acid, Naltrexone, namenda, naprelan, Naprosyn, Naproxen, nasonex-nasal-spray, Nateglinide, Nebilet, Nebivolol, neggram, Nelfinavir, Neoflax, neoral, Nepafenac, Nestrex, Neurontin, Nevanac, Nevirapine, nexium, Niacin-Nicotinic-Acid, niaspan, nicorette, Nicotine-Polacrilex, Nicoumalone, Nifedipine, Nifedipine-Atenolol, Nilstat, Nitazoxanide, Nitazoxanide-Ofloxacin, nitoman, Nitrofurantoin, Nitrofurazone, Nitroglycerin, Nitrostat, Nivalin, nizoral, nolvadex, nor-qd, norethindrone, Norfloxacin, noroxin, Nortriptyline, norvasc, norvir, Nystatin, Nystop, Ocella, Octinoxate-Avobenzone-Oxybenzone-Zinc-Oxide, Ocufen, ocuflox, Ofloxacin, Olanzapine, Olanzapine-Fluoxetine, Olmesartan, Olmesartan-Hydrochlorothiazide, Olopatadine, OMEPRAZOLE, Omnaris, omnicef, Ondansetron, Onglyza, Opatanol, Opticrom, optivar, oretic, Orlistat, ortho-cept, ortho-micronor, OSELTAMIVIR-PHOSPHATE, Oxaliplatin, Oxcarbazepine, oxsoralen, Oxybutynin, p.c.e, pacerone, Paclitaxel, Paliperidone, pamelor, Pancrelipase, panoxyl, Pantoprazole, Paraplatin, pariet, parlodel, Paroxetine, Pataday, Patanol, paxil, Pedi-Dri, Pemetrexed, Penicillin-G-Potassium, penicillin-v, pentasa, Pentoxifylline, pepcid, periactin, Peridex, Perindopril-Erbumine, Periogard, periostat, Perisol, Permethrin, persantine, Phenazopyridine, phenergan, phenytek, Phenytoin, phoslo, Pilocarpine, Pimecrolimus, Pioglitazone-Hydrochloride, Pioglitazone-Metformin, Piperacillin-Tazobactam, Piracetam, Pirohexal, Piroxicam, Plaquenil, plavix, plendil, pletal, Podofilm, Podophyllum, Polaramine, Polyvinyl-Alcohol-Povidone-Chlorbutol-Purified-water, ponstel, Potassium-Chloride, Potassium-Citrate, potrate, Pramipexole, prandin, prasugrel, Praziquantel, Prazosin, precose, Pred-Forte, Pred-Mild, Prednisone, premarin, prevacid, Priligy, prilosec, PRIMIDONE, principen, prinivil, Pristiq, pro-banthine, Procardia, prochieve, Prochlorperazine, Procoralan, Progesterone, prograf, Promethazine, prometrium, Propantheline, propecia, Propranolol, Proscalpin, proscar, protium, protonix, protopic, Proventil, prozac, pulmicort, Purinethol, pyrazinamide, pyridium, Pyridostigmine, Pyridoxine-Hcl, Pyridoxine-Hcl-Folic-Acid, Pyritinol-Pyrithioxine, Pyroxin, Qropi, Questran, Quetiapine, Quinapril-Hydrochloride, Quinapril-Hydrochlorothiazide, quinine, qvar, Rabeprazole-Domperidone, Rabeprazole-Sodium, Racecadotril-Acetorphan, Raloxifene, Ramipril, ranexa, Ranitidine, Ranolazine, Rapamune, Rapiflux, Rasagiline, Razadyne, RE-SA, rebetol, Refissa, reglan, relafen, remeron, reminyl, renagel, renova, Repaglinide, requip, restasis, retin-a, retrovir, revia, Revlimid, RHEUMATREX, rhinocort, Ribavirin, Rifadin, Rifampin-Isoniazid-Ethambutol-Pyrazinamide, Rifampin-Isoniazid-Pyrazinamide, Rifampin-Rifampicin, Rifater, Rifaximin, Rimactane, Risedronate, risperdal, Risperidone, Risperidone-Trihexyphenidyl, Ritonavir, Rivastigmine, Rizatriptan, robaxin, rocaltrol, rogaine, Ropinirole, Rosuvastatin, Rosuvastatin-Fenofibrate, Rowasa, Roxithromycin, Rulid, Salagen, Salex, Salicylic-Acid, Salkera, Salmeterol, Salofalk, Sanctura, sandimmune, sarafem, Saxagliptin, Secnidazole, selegiline, Selenium-Sulfide, Selseb, Selsun, Sensipar, Serc, serevent, seromycin, serophene, Seroquel, Serratiopeptidase, Sertaconazole, Sertraline, Sevelamer-Hydrochloride, Sibelium, Sildenafil-Citrate, Sildenafil-Citrate-Dapoxetine, Silenor, Silymarin, Simvastatin, sinemet, Sinequan, singulair, Sirolimus, Sitagliptin, Sitagliptin-Phosphate-Metformin-Hydrochloride, Skelaxin, sodium-cromoglycate-cromolyn, Sodium-Sulamyd, solaquin, Solifenacin, Soltamox, sorbitrate, Soriatane, Sotalol, Sparfloxacin, Spiriva, Spironolactone, Sporanox, Stalevo, Stanozolol, starlix, Stavudine, Sterapred, strattera, Stromectol, Stugeron, Stugil, Sucralfate, Sulfadoxine-Pyrimethamine, Sulfamethoxazole-Trimethoprim, Sulfasalazine, Sulphacetamide-Sulfacetamide, Sumatriptan, sumycin, super-filagra, Supralip, sustiva, Symbicort, Symbyax, symmetrel, Synalar, Synaptine, Synthroid, Tacrolimus, tadalafil, Tadalista, tamiflu, Tamoxifen, Tamsulosin, Tarceva, tavist, Taxol, Taxotere, Tazarotene, Tazorac, tears-plus, tegretol, Tekturna, Telmisartan, Telmisartan-Hydrochlorothiazide, Temodal, temovate, Temozolomide, tenofovir-disoproxil-fumarate, tenoretic, tenormin, Terazosin, Terbinafine, Terbutaline, Tessalon Perles, Tetrabenazine, Tetracycline, Thalidomide, Thalomid, Theophylline-Etofylline, Thiocolchicoside, Thioridazine, thorazine, Tianeptine, tiazac, ticlid, Ticlopidine, Timolol, timoptic, Tiotropium-Bromide, tizanidine, tobramycin, Tolterodine, Tolterodine-tartrate, topamax, Topiramate, toprol, toradol, Torsemide, trandate, Tranexamic-Acid-Etamsylate, Tranexamic-Acid-Mefenamic-Acid, Travatan, Travoprost, Trazodone, trecator-sc, trental, Tretin-X, Tretinoin, Tretinoin-Clindamycin, triacet, Triamcinolone, Triatec, tricor, triderm, tridesilon, Trihexyphenidyl, trileptal, Trilipix, Trimetazidine, Trisenox, tritace, Trospium, trusopt, Trypsin-Chymotrypsin, Twynsta, Uloric, Ultrase, Ultravate, Ultravate-F, Ultravate-s, urispas, rocit, uroxatral, urso, ursodiol, Vagifem, Valacyclovir, Valcyte, Valganciclovir, valsartan, valsartan-hydrochlorothiazide, Valsartan-S-Amlodipine, valtrex, Vanatrip, Vancenase, Vancenase-aq, vantin, Vardenafil, Varenicline, vaseretic, vasodyl, vasotec, Vastarel, Vectical, veetids, Velcade, Venlafaxine, Ventolin, vepesid, Verapamil, Verdeso, verelan, vermox, vesicare, Vfend, viagra, vibramycin, Vibramycin-Hyclate, vibratab, videx, videx-ddi, vigamox, Vildagliptin, Vildagliptin-Metformin, Viokase, viracept, viramune, Viread, Voglibose, volmax, voltaren, Voriconazole, vospire, vytorin, Warfarin, wellbutrin, Winstrol, Xalatan, xeloda, xenical, Xibrom, Xifaxan, xylocaine, Xyzal, Yasmin, Yaz, zagam, zanaflex, zantac, zebeta, Zegerid, zerit-d4t, zestoretic, zestril, zetia, ziac, ziagen, Ziana, Zidovudine, Zinacef, Zinc-Gluconate, Zinnat, Ziprasidone, Zithromax, zocor, zofran, ZOLEDRONIC-ACID, zoloft, Zonegran, Zonisamide, Zosyn, zoton, zovirax, Zulex, Zyban, zyloprim, zyprexa, zyrtec, zyvox';
	
	// END CONFIG (do not edit below this line, well unless you really, really want to change something :) )
	
	// Peace, 
	// Alen

	var field = document.getElementById(id);	
	var classInactive = "sf_inactive";
	var classActive = "sf_active";
	var classText = "sf_text";
	var classSuggestion = "sf_suggestion";
	this.safari = false;
	if(field && !safari){
		field.value = defaultText;
		field.c = field.className;		
		field.className = field.c + " " + classInactive;
		field.onfocus = function(){
			this.className = this.c + " "  + classActive;
			this.value = (this.value == "" || this.value == defaultText) ?  "" : this.value;
		};
		field.onblur = function(){
			this.className = (this.value != "" && this.value != defaultText) ? this.c + " " +  classText : this.c + " " +  classInactive;
			this.value = (this.value != "" && this.value != defaultText) ?  this.value : defaultText;
			clearList();
		};
		if (suggestion){
			
			var selectedIndex = 0;
						
			field.setAttribute("autocomplete", "off");
			var div = document.createElement("div");
			var list = document.createElement("ul");
			list.style.display = "none";
			div.className = classSuggestion;
			list.style.width = field.offsetWidth + "px";
			div.appendChild(list);
			field.parentNode.appendChild(div);	

			field.onkeypress = function(e){
				
				var key = getKeyCode(e);
		
				if(key == 13){ // enter
					selectList();
					selectedIndex = 0;
					return false;
				};	
			};
				
			field.onkeyup = function(e){
			
				var key = getKeyCode(e);
		
				switch(key){
				case 13:
					return false;
					break;			
				case 27:  // esc
					field.value = "";
					selectedIndex = 0;
					clearList();
					break;				
				case 38: // up
					navList("up");
					break;
				case 40: // down
					navList("down");		
					break;
				default:
					startList();			
					break;
				};
			};
			
			this.startList = function(){
				var arr = getListItems(field.value);
				if(field.value.length > 0){
					createList(arr);
				} else {
					clearList();
				};	
			};
			
			this.getListItems = function(value){
				var arr = new Array();
				var src = suggestionText;
				var src = src.replace(/, /g, ",");
				var arrSrc = src.split(",");
				for(i=0;i<arrSrc.length;i++){
					if(arrSrc[i].substring(0,value.length).toLowerCase() == value.toLowerCase()){
						arr.push(arrSrc[i]);
					};
				};				
				return arr;
			};
			
			this.createList = function(arr){				
				resetList();
				if(arr.length > 0) {
					for(i=0;i<arr.length;i++){				
						li = document.createElement("li");
						a = document.createElement("a");
						a.href = "javascript:void(0);";
						a.i = i+1;
						a.innerHTML = arr[i];
						li.i = i+1;
						li.onmouseover = function(){
							navListItem(this.i);
						};
						a.onmousedown = function(){
							selectedIndex = this.i;
							selectList(this.i);		
							return false;
						};					
						li.appendChild(a);
						list.setAttribute("tabindex", "-1");
						list.appendChild(li);	
					};	
					list.style.display = "block";				
				} 
				else {
					clearList();
				};
							};	
			
			this.resetList = function(){
				var li = list.getElementsByTagName("li");
				var len = li.length;
				for(var i=0;i<len;i++){
					list.removeChild(li[0]);
				};
			};
			
			this.navList = function(dir){			
				selectedIndex += (dir == "down") ? 1 : -1;
				li = list.getElementsByTagName("li");
				if (selectedIndex < 1) selectedIndex =  li.length;
				if (selectedIndex > li.length) selectedIndex =  1;
				navListItem(selectedIndex);
			};
			
			this.navListItem = function(index){	
				selectedIndex = index;
				li = list.getElementsByTagName("li");
				for(var i=0;i<li.length;i++){
					li[i].className = (i==(selectedIndex-1)) ? "selected" : "";
				};
			};
			
			this.selectList = function(){
				li = list.getElementsByTagName("li");	
				a = li[selectedIndex-1].getElementsByTagName("a")[0];
				field.value = a.innerHTML;
				clearList();
			};			
			
		};
	};
	
	this.clearList = function(){
		if(list){
			list.style.display = "none";
			selectedIndex = 0;
		};
	};		
	this.getKeyCode = function(e){
		var code;
		if (!e) var e = window.event;
		if (e.keyCode) code = e.keyCode;
		return code;
	};
	
};

// script initiates on page load. 

this.addEvent = function(obj,type,fn){
	if(obj.attachEvent){
		obj['e'+type+fn] = fn;
		obj[type+fn] = function(){obj['e'+type+fn](window.event );}
		obj.attachEvent('on'+type, obj[type+fn]);
	} else {
		obj.addEventListener(type,fn,false);
	};
};
addEvent(window,"load",keyword);

