// ==UserScript==
// @name		UW Search to UWhub Search
// @namespace		http://uwhub.ca/
// @description		Forces search forms on uwaterloo.ca to use UWhub
// @include		http://*uwaterloo.ca*
// ==/UserScript==

var box = document.getElementById('search');
if (box) {

	box.target = '';
	box.action = 'http://uwhub.ca/';
	box.method = 'get';

	var spans = document.getElementsByTagName('span');
	if (spans.length>0) {
		for (var i=0; i<spans.length; i++) {
			if (spans[i].className == 'search_note') {
				spans[i].parentNode.removeChild(spans[i]);
				}
			}
		}

	var q = document.getElementById('searchterm');
	q.name = 'q';

	var inp = box.getElementsByTagName('input');
	if (inp.length>0) {
		for (var i=0; i<inp.length; i++) {
			if (inp[i].name == 'searchtype') {
				inp[i].parentNode.removeChild(inp[i]);
				}
			else if (inp[i].name == 'site') {
				inp[i].name = 'within';
				}
			}
		}

	var sel = box.getElementsByTagName('select');
	if (sel.length>0) {
		for (var i=0; i<sel.length; i++) {
			if (sel[i].name == 'searchtype') {
				sel[i].name = 'within';
				for (var j=0; j<sel[i].length; j++) {
					if (sel[i][j].value.indexOf('google') == 0) {
						sel[i][j].value = sel[i][j].value.replace('google', '');
						if (sel[i][j].value.length>0) {
							sel[i][j].value += '.uwaterloo.ca';
							}
						}
					else if (sel[i][j].value == 'uwdir') {
						sel[i][j].parentNode.removeChild(sel[i][j]);
						}
					}
				}
			}
		}

	}