function Site_Search() { this.loaded = 0; this.queryitems = []; this.staff_access = 0; this.form = []; this.form['url'] = ""; } function site_search_initialize() { with (this) { if (Site.loaded == 1) { loaded = 1; root = "http://www.rossfraser.ca/"; CompileQuery(); } else { window.setTimeout('Search.Initialize()',10); } } } function site_search_required() { with (this) { if (loaded == 1) { if ($('site_search_form')) { form['url'] = $('site_search_form').value; if (staff_access == 0 && form['url'].id.search(/faculty\//gi) != -1) { form['url'] = ""; } } } } } function site_search_compilequery() { var fields; with (this) { if (loaded == 1) { fields = document.body.getElementsByTagName("INPUT"); for (i = 0; i < fields.length; i++) { if (fields[i].id != "" && fields[i].name != "") { if (fields[i].id.search(/s-/gi) != -1) { queryitems[fields[i].id] = new Array(fields[i].name,fields[i].value); } } } } } } function site_search_addtoquery(item,value,s) { with (this) { if (loaded == 1) { if (item) { if (item.id.search(/s-/gi) != -1) { item.value = value; CompileQuery(); if (s == 1) { SubmitQuery(); } } } } } } function site_search_submitquery() { var query = ""; with (this) { if (loaded == 1) { RequiredVars(); if (form['url'] != "") { if (form['url'].search(/\.php/gi) != -1) { query = form['url']+"?"; } else { query = form['url']+"/?"; } for (i in queryitems) { if (queryitems[i][1] != "") { query += queryitems[i][0]+"="+queryitems[i][1]+"&"; } } query = query.substr(0,query.length-1); location.href = query; } } } } function site_search_keypress(e) { var evt = e || window.event; var key = evt.which || evt.keyCode; with (this) { if (key == 13) { SubmitQuery(); } } } Site_Search.prototype.Initialize = site_search_initialize; Site_Search.prototype.RequiredVars = site_search_required; Site_Search.prototype.CompileQuery = site_search_compilequery; Site_Search.prototype.AddToQuery = site_search_addtoquery; Site_Search.prototype.SubmitQuery = site_search_submitquery; Site_Search.prototype.KeyPress = site_search_keypress; var Search = new Site_Search(); Search.Initialize();