(function() {

function cm_mmc_forward(){
	var str=location.search.substring(1);
	if(str){
		var x=str.split("&");
		for(var i=0;i<x.length;i++){
			var y=x[i].split("=");
			if(y[0]=="cm_mmc"){
				var spl=y[1].split("-_-");
				if (spl.length == 4){
					y[1] = allReplace(y[1],"<", "&lt;"); 
					y[1] = allReplace(y[1],">", "&gt;"); 
					y[1] = allReplace(y[1],"\"", "&quot;"); 
					y[1] = allReplace(y[1],"\'", "&#39;"); 
					return "cm_mmc=" + y[1];
				}
			}
		}
		return "";
	}else{
		return "";
	}
}
function allReplace(text, sText, rText) {
	while (true) { 
		dummy = text;
		text = dummy.replace(sText, rText);
		if (text == dummy) {
			break;
		}
	}
	return text;
}
function cm_mmc_ref( param ) {
	var y = param.split("=");
	var ref = CM_REF[y[1]];
	if ( ref == undefined ) {
		ref = null;
	}
	return ref;
}
function cm_to_ref() {
	var cm = cm_mmc_forward();
	var r = cm_mmc_ref( cm );
	return r;
}

function appendCode() {
	
	var cm_param = cm_mmc_forward();
	var ref_param = cm_to_ref();

	if (cm_param || ref_param) {

		var divList = jQuery("div, li");

		for (var i=0,len=divList.length;i<len;i++) {
   			if (cm_param && divList[i].id.indexOf("nextpage") > -1) {
       			var tNode = divList[i];
    			var aNodeList = jQuery("a", tNode);
    			for (var j=0,jlen=aNodeList.length;j<jlen;j++) {
       				var aNode = aNodeList[j];
       				var href = aNode.href;
	       			var uri = href;
	       			var idStr = "";
	       			var sharpPosi = href.indexOf("#");
	       			if (sharpPosi > -1) {
	       				uri = href.substr(0, sharpPosi);
	       				idStr = href.substr(sharpPosi);
	       			}
	       			
	       			if (href.indexOf("?") > -1) {
	       				aNode.href = uri + "&" + cm_param + idStr;
	       			} else {
	       				aNode.href = uri + "?" + cm_param + idStr;
       				}
    			}
   			}
   			if (ref_param && divList[i].id.indexOf("nextimail") > -1) {
       			var tNode = divList[i];
    			var aNodeList = jQuery("a", tNode);
    			for (var j=0,jlen=aNodeList.length;j<jlen;j++) {
       				var aNode = aNodeList[j];
       				var href = aNode.href;
       				if (href.indexOf("&REF") == -1) {
       					aNode.href = href + "&REF=" + ref_param;
       				}
    			}
   			}
		}
		
		var aNodeList = jQuery("a");
		
		for (var i=0,len=aNodeList.length;i<len;i++) {
			var aNode = aNodeList[i];
			if (cm_param 
				&& aNode.id.indexOf("nextpage") > -1 
				&& aNode.href.indexOf("cm_mmc") == -1) {
       			var href = aNode.href;
       			
       			var uri = href;
       			var idStr = "";
       			var sharpPosi = href.indexOf("#");
       			if (sharpPosi > -1) {
       				uri = href.substr(0, sharpPosi);
       				idStr = href.substr(sharpPosi);
       			}
       			
       			if (href.indexOf("?") > -1) {
       				aNode.href = uri + "&" + cm_param + idStr;
       			} else {
       				aNode.href = uri + "?" + cm_param + idStr;
       			}

			}
			if (ref_param
				&& aNode.id.indexOf("nextimail") > -1
				&& aNode.href.indexOf("&REF") == -1) {
				var href = aNode.href;
       			aNode.href = href + "&REF=" + ref_param;
			}
		}
		
		var formNodeList = jQuery("form");
		
		for (var i=0,len=formNodeList.length;i<len;i++) {
			var formNode = formNodeList[i];
			if (formNode.id.indexOf("nextimail") > -1) {
				var flag = 0;
				var inputNodeList = jQuery("input", formNode);
				for (var j=0,jlen=inputNodeList.length;j<jlen;j++) {
					var inputNode = inputNodeList[j];
					if (inputNode.name == "REF") {
						flag = 1;
						break;
					}
				}
				if (0 == flag) {
					var newInputNode = document.createElement("input");
					newInputNode.type = "hidden";
					newInputNode.name = "REF";
					newInputNode.value = ref_param;
					formNode.appendChild(newInputNode);
				}
			}
		}
		
	}
	
}

jQuery(document).ready(function(){
	
	appendCode();
	
});

})();
