function rewrite_helper(id_name){
	var id_value = query_get_id(window.location.search,id_name);
	if(id_value) rewrite(id_name,id_value);
}

function rewrite(id_name, id_value){
	for( var i=0; i<document.links.length; i++ ){
		if(document.links[i].target=='_blank' || document.links[i].protocol=='mailto:' || document.links[i].protocol=='javascript:') continue;
		if(document.links[i].innerHTML) var content = document.links[i].innerHTML;	// workaround for IE ;-)
		document.links[i].search = query_set_id( document.links[i].search, id_name, id_value);
		if(content) document.links[i].innerHTML = content;	// workaround for IE ;-)
	}
	for( var i=0; i<document.forms.length; i++ ){
		aarr=document.forms[i].action.split('?');
		if(aarr[1])	query='?'+aarr[1];
		else query='?';
		document.forms[i].action = aarr[0] + query_set_id( query, id_name, id_value);
	}
}
function query_set_id( query, id_name, id_value){
	var newquery='?'; var vstr=query.substr(1);	var varr=vstr.split('&'); var is_set=false;
	for(var i=0;i<varr.length;i++){
		if(!varr[i]) continue;
		vpair=varr[i].split('=');
		if(vpair[0]==id_name){ newquery+=id_name+'='+id_value+'&'; is_set=true;}
		else{ newquery+=varr[i]+'&';}
	}
	if(!is_set) newquery+=id_name+'='+id_value+'&';
	return newquery.substr(0,newquery.length-1);
}
function query_get_id( query, id_name ){
	var id_value=''; var vstr=query.substr(1);	var varr=vstr.split('&');
	for(var i=0;i<varr.length;i++){
		if(!varr[i]) continue;
		vpair=varr[i].split('=');
		if(vpair[0]==id_name){ id_value=vpair[1]; break;}
	}
	return id_value;
}
