	function urlFilter(url) {
		if (hcp != "") {
			var baseUrl = (url.indexOf("?") != -1 ? url.substr(0, url.indexOf("?")) : url);
			var queryString = (url.indexOf("?") != -1 ? url.substr(url.indexOf("?")+1) : "");
			return (contextPath + baseUrl + "?hcp=" + hcp + (queryString != "" ? "&" + queryString : ""));
		}
		else return (contextPath + url);
	}
	
	// set up drop downs 
	if (ncqDropDown.isSupported()) {

		//==================================================================================================
		// create a set of dropdowns
		//==================================================================================================
		// the first param should always be down, as it is here
		//
		// The second and third param are the top and left offset positions of the menus from their actuators
		// respectively. To make a menu appear a little to the left and bottom of an actuator, you could use
		// something like -5, 5
		//
		// The last parameter can be .topLeft, .bottomLeft, .topRight, or .bottomRight to inidicate the corner
		// of the actuator from which to measure the offset positions above. Here we are saying we want the 
		// menu to appear directly below the bottom left corner of the actuator
		//==================================================================================================
		var ms = new ncqDropDownSet(ncqDropDown.direction.down, -175, 10, ncqDropDown.reference.bottomLeft);
		
		//==================================================================================================
		// create a dropdown menu
		//==================================================================================================
		// the first parameter should be the HTML element which will act actuator for the menu
		// send no URL if nothing should happen onclick (2nd parameter)
		//==================================================================================================
		
		var menu2 = ms.addMenu(document.getElementById("menu2"));
		menu2.addItem("INDIA", urlFilter("partner-india.html"));
		menu2.addItem("EUROPE", urlFilter("partner-europe.html"));

		//var menu3 = ms.addMenu(document.getElementById("menu3"));
		//menu3.addItem("Visas & Passports &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;", urlFilter("visaandpassport.html"));
		//menu3.addItem("Immigration", urlFilter("immigration.html"));
		//menu3.addItem("Civic Services", urlFilter("civic.html"));
		//menu3.addItem("What are Consular Services", urlFilter("consular.html"));
		//var menu31 = menu3.addMenu("Test", "Test", "Test");
		//menu31.addItem("You will be able to make use of these services by", urlFilter("consular.html#1"));
		//menu31.addItem("Before requesting a service", urlFilter("consular.html#2"));
		//menu31.addItem("What services do consular officers not render to SA citizens", urlFilter("consular.html#3"));
			
		//menu3.addItem("Legalization of documentation", urlFilter("consular.html#6a"));
		//var menu34 = menu3.addMenu("Test", "Test", "Test");
		//menu34.addItem("Certificate of authentication", urlFilter("consular.html#6"));
		//menu34.addItem("Attestation services", urlFilter("consular.html#7"));
		//menu34.addItem("Certification of copies", urlFilter("consular.html#8"));
		//menu34.addItem("Signing of documents in front of the Commissioner of Oath", urlFilter("consular.html#9"));
		
		//menu3.addItem("General information", urlFilter("consular.html#14a"));
		//var menu39 = menu3.addMenu(document.getElementById("menu39"));
		//menu39.addItem("Renewal or replacement of RSA credit card format driving license", urlFilter("consular.html#14"));
		
		//menu3.addItem("Warden System", urlFilter("consular.html#12a"));
		//var menu37 = menu3.addMenu("Test", "Test", "Test");
		//menu37.addItem("Registration of South African's abroad", urlFilter("consular.html#12"));
		
		//menu3.addItem("Deaths abroad", urlFilter("consular.html#4"));
		//menu3.addItem("Arrested abroad", urlFilter("consular.html#5"));
		//menu3.addItem("Service of process", urlFilter("consular.html#10"));
		//menu3.addItem("Application for Police Clearance certificates", urlFilter("consular.html#11"));
		//menu3.addItem("Other Services", urlFilter("consular.html#13"));	
		//menu3.addItem("Service Delivery Charter", urlFilter("servicedelivery.html"));

		//var menu4 = ms.addMenu(document.getElementById("menu4"));
		//menu4.addItem("Visas", urlFilter("visas.html"));
		//menu4.addItem("Transit Visas", urlFilter("transitvisas.html"));
		//menu4.addItem("Work Permits", urlFilter("workpermits.html"));
		//menu4.addItem("Study Permits", urlFilter("studypermits.html"));
		//menu4.addItem("Relatives Permit", urlFilter("relativespermits.html"));
		//menu4.addItem("Spouse Permit", urlFilter("spousepermits.html"));
		//menu4.addItem("Business Permits", urlFilter("businesspermits.html"));
		//menu4.addItem("Quota Work Permits ", urlFilter("quotaworkpermits.html"));
		//menu4.addItem("Permanent Residence", urlFilter("permanentresidence.html"));
		//menu4.addItem("Administrative Fines&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;", urlFilter("administrativefines.html"));
		//menu4.addItem("Downloadable Forms", urlFilter("downloadableforms.html"));
		//menu4.addItem("Schedule of Fees", urlFilter("feeschedule.html"));





		//==================================================================================================
		// write drop downs into page
		//==================================================================================================
		// this method writes all the HTML for the menus into the page with document.write(). It must be
		// called within the body of the HTML page.
		//==================================================================================================
		ncqDropDown.renderAll();
	}