var selected = 'none';
function setmenu(sel) {
	var oldsel = selected;
	var newsel = $get(sel+'_nav');
	if ( newsel ) {
		selected = sel;
	} else {
		selected = 'none';
		newsel = $get(selected+'_nav');
	}
	if ( selected != oldsel ) {
		$get(oldsel+'_nav').style.display = 'none';
		newsel.style.display = 'block';
	}
}

function init_kazi_logging(sender, args) {
	var mgr = Kazi.Logging.ExceptionManager.getInstance();
	mgr.set_handleErrors(HandleJavascriptErrors);
	mgr.addListener(new Kazi.Logging.WebServiceTraceListener());
	mgr.addListener(new Kazi.Logging.AlertTraceListener());
}
Sys.Application.add_load(init_kazi_logging);

var pageTracker = null;
if ( GoogleAnalytics && GoogleAnalytics !== '' ) {
	pageTracker = _gat._getTracker(GoogleAnalytics);
	pageTracker._initData();
	pageTracker._trackPageview();
	var silverlightVersion = getSilverlightVersion();
	pageTracker._setVar(silverlightVersion);
}

if ( top != self ) {
	// Don't frame me
	top.location.href = 'http://www.tradesmenbids.com/';
}

// Disable the button that pushed submit
var pbControl = null;
function DisableSubmit_BeginRequestHandler(sender, args) {
	pbControl = args.get_postBackElement(); // the control causing the postback
	pbControl.disabled = true;
}
function DisableSubmit_EndRequestHandler(sender, args) {
	if (pbControl) {
		pbControl.disabled = false;
	}
	pbControl = null;
}
function DisableInit() {
	var prm = Sys.WebForms.PageRequestManager.getInstance();
	prm.add_beginRequest(DisableSubmit_BeginRequestHandler);
	prm.add_endRequest(DisableSubmit_EndRequestHandler);
}
Sys.Application.add_init(DisableInit);

// Strip html out of the form on submit
function NoHtmlInForm() {
	var elms = document.forms[0].elements;
	for (i = 0; i < elms.length; i++) {
		try {
			var content = elms[i].value;
			if (content && content != '') {
				content = content.replace(/<[^>]*>/g, '');
				content = content.replace(/</g, '');
				content = content.replace(/>/g, '');
				if (content != elms[i].value) {
					elms[i].value = content;
				}
			}
		} catch (Err) {
			// We couldn't fix this element -- ignore it
		}
	}
}
function NoHtmlInRequest(form, request) {
	try {
		var body = request.get_request().get_body();
		var content = body;
		if (content && content != '') {
			content = content.replace(/%3C.*?%3E/g, '');
			content = content.replace(/%3C/g, '');
			content = content.replace(/%3E/g, '');
			if (content != body) {
				request.get_request().set_body(content);
			}
		}
	} catch (Err) {
		// We couldn't fix it -- ignore it
	}
}

// If there was an error server-side in a partial update, handle it gracefully
function EndRequestErrorHandler(sender, e) {
	var error = e.get_error();
	if (error) {
		// Hide update panel
		var update = $get("ctl00_ctl00_updateProgress"); // FRAGILE
		if (update) {
			update.style.display = "none";
		}
		// Put submit button back
		if (pbControl) {
			pbControl.disabled = false;
		}
		pbControl = null;
		var mgr = Kazi.Logging.ExceptionManager.getInstance();
		mgr.publishException("Partial Page Update Error", error);
		e.set_errorHandled(true);
	}
}

function HackerInit() {
	var prm = Sys.WebForms.PageRequestManager.getInstance();
	prm.add_beginRequest(NoHtmlInRequest);
	prm.add_endRequest(EndRequestErrorHandler);
}
Sys.Application.add_init(HackerInit);

Sys.Application.notifyScriptLoaded();
