function formSubmitSpecial(form){
	var query = "/";
	
	var module, page;
	if((module = getFormElement(form, "module"))){
		query += module.value + "/";
	}
	if((page = getFormElement(form, "page"))){
		if(module.value != page.value){
			query += page.value + "/";
		}
	}
	
	for(var i=0;i<form.elements.length;i++){
		var elem = form.elements[i];
		var name = elem.name;
		var value = "";

		// filter emptynamed elements
		if(!name) continue;
		
		if(name == "module" || name == "page"){
			continue;
		}
		
		if(elem.nodeName.toLowerCase() == 'input'){
			if(elem.type.toLowerCase() == 'checkbox'){
				if(elem.checked){
					value = 1;
				}
				else{
					continue;
				}
			}
			if(elem.type.toLowerCase() == 'radio'){
				if(elem.checked){
					value = elem.value;
				}
				else{
					continue;
				}
			}
			else if(elem.type.toLowerCase() == 'text' ||
					elem.type.toLowerCase() == 'password' ||
					elem.type.toLowerCase() == 'hidden'){
				value = elem.value;
			}
		}
		else if(elem.nodeName.toLowerCase() == 'select'){
			value = getSelectValue(elem);
		}
		else if(elem.nodeName.toLowerCase() == 'textarea'){
			value = elem.value;
		}
		if(value != null && value != undefined && value != ''){
			query += name + ':' + value + '/';
		}
	}
	document.location = query;
	return false;
}

function getFormElement (formObj, elementName) {
	var collObjects = formObj.elements;
	for (i=0; i<collObjects.length; i++) {
      if (collObjects[i].name == elementName) {
         return collObjects[i];
      }
   }
   return false;
}

function getSelectValue(selObject){
	for(i=0;i<selObject.options.length;i++){
		if(selObject.options[i].selected == true){
			return selObject.options[i].value;
		}
	}
}

