if (window.execScript == null) {
    try {
        	window.execScript = function(script) {
            window.eval(script);
        }
    } catch (e) {
        alert("PUF1_UseScript - execScript : "+e);
    }
}

//宣告儲存使用過的陣列
if (window.useScriptArr == null ){
    window.useScriptArr  = new Array();
};

//檢查是否已經載入
function alreadyInclude(url){
    var result = false;
    for (var i = 0 ; i < window.useScriptArr.length ; i++){
        if (window.useScriptArr[i] == url ){
            result = true;
            break;
        }
    }
    return result;
}

function _useScript (url,is_async){
	if (!alreadyInclude(url)){
		if((url.substr(url.length-4,4).toLowerCase()).lastIndexOf(".css",(url.length-1))!=-1){
			_IncludeCssFile(url);
		}else{ // *.js
			_IncludeJsFile (url,is_async);
		}
		
	}
}

function _IncludeJsFile (url,is_async){
    try {
        var xmlhttp;
        if (window.XMLHttpRequest){
            xmlhttp = new XMLHttpRequest();
        }else if (window.ActiveXObject){
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        var is_async = ( is_async ? true : false );
        if (is_async){
            xmlhttp.onreadystatechange =  function() {
                if (xmlhttp.readyState == 4) {
                    var response = xmlhttp.responseText;
                    if (xmlhttp.status == 200 ){
                        try{
							window.execScript(xmlhttp.responseText.toString());
							window.useScriptArr[window.useScriptArr.length] = url;
                         }catch(ex) {
                            alert(ex.message);
                            return false;
                        }
                    }
                }
            };
        }
        xmlhttp.open('GET', url, is_async);
        xmlhttp.setRequestHeader("X-Requested-With", "XMLHttpRequest");
        xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        xmlhttp.setRequestHeader("Connection","Keep-Alive");
        xmlhttp.send(null);
        if (!is_async){
            window.execScript(xmlhttp.responseText.toString());
            window.useScriptArr[window.useScriptArr.length] = url;
        }
    } catch (e) {
        alert("PUF1_UseScript - useScript ("+url+") : "+e);
    }
}

function _IncludeCssFile(cssFile){
	var headID = document.getElementsByTagName("head")[0];
	var newCss = document.createElement('link');
	newCss.type = 'text/css';
	newCss.rel = "stylesheet";
	newCss.href = cssFile;
	headID.appendChild(newCss);
	window.useScriptArr[window.useScriptArr.length] = cssFile;
}
