﻿function Search()
            {
                var box = document.getElementById("search_box");                
                var query = box.value;
                var base_url = "http://www.usc.edu/search/results.php?q=";
                var url_suffix = "&access=p&entqr=3&output=xml_no_dtd&client=homepage&ud=1&site=homepage&sort=date%3AD%3AL%3Ad1&sitesearch=http://housing.usc.edu";
                var url = base_url + URLEncode(query) + url_suffix;
                window.location.href=url;                                
            }
            
            function OnSearchKeyDown(event)
            {
                var box = document.getElementById("search_box");

                box.data = true;
                if (event.keyCode == 13) 
                {
                    Search();
                    return false;
                }            
                else
                    return true;
            }
            
            function URLEncode(plaintext)
            {
	            // The Javascript escape and unescape functions do not correspond
	            // with what browsers actually do...
	            var SAFECHARS = "0123456789" +					// Numeric
					            "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					            "abcdefghijklmnopqrstuvwxyz" +
					            "-_.!~*'()";					// RFC2396 Mark characters
	            var HEX = "0123456789ABCDEF";
            	
	            var encoded = "";
	            for (var i = 0; i < plaintext.length; i++ ) {
		            var ch = plaintext.charAt(i);
	                if (ch == " ") {
		                encoded += "+";				// x-www-urlencoded, rather than %20
		            } else if (SAFECHARS.indexOf(ch) != -1) {
		                encoded += ch;
		            } else {
		                var charCode = ch.charCodeAt(0);
			            if (charCode > 255) {
			                alert( "Unicode Character '" 
                                    + ch 
                                    + "' cannot be encoded using standard URL encoding.\n" +
				                      "(URL encoding only supports 8-bit characters.)\n" +
						              "A space (+) will be substituted." );
				            encoded += "+";
			            } else {
				            encoded += "%";
				            encoded += HEX.charAt((charCode >> 4) & 0xF);
				            encoded += HEX.charAt(charCode & 0xF);
			            }
		            }
	            } // for

	            return (encoded);	
            }     