// JavaScript for AD #2
// 2006-07-06
// inome _at_ nhncorp.com

// Flash
// s: source url, d: flash id, w: source width, h: source height, t: wmode
// f: frequency, l: link list
// k: flashvars key, v: flashvars value
function mf(s,d,w,h,t){
	return mf8(s,d,w,h,t,null,null);
}

function mf8(s,d,w,h,t,f,l){
    var keys = new Array();
    var values = new Array();
    if(f != null && f.length > 0){keys.push("nfreq");values.push(f);}
    for(var i = 0; l != null && i < l.length; i++){
        var clkid = i + 1;
        keys.push(clkid);values.push(encode(l[i]));
    }
    return mf81(s,d,w,h,t,keys,values);
}

function mf81(s,d,w,h,t,k,v){
    var flashvars = "";
    if(k != null && v != null && k.length > 0 && k.length == v.length){
        for(var i = 0; i < k.length; i++){
            if(i > 0){ flashvars += "&"; }
            flashvars += k[i] + "=" + v[i];
        }
    }

    var code = "";
    code  = "<object type=\"application/x-shockwave-flash\" ";
    code +=         "classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" ";
    code +=         "codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" ";
    code +=         "width=\""+w+"\" height=\""+h+"\" id=\""+d+"\">";
    code += "<param name=\"movie\" value=\""+s+"\" />";
    code += "<param name=\"quality\" value=\"high\" />";
    //code += "<param name=\"bgcolor\" value=\"#ffffff\" />";
    code += "<param name=\"wmode\" value=\""+t+"\" />";
    code += "<param name=\"menu\" value=\"false\" />";
    code += "<param name=\"allowScriptAccess\" value=\"always\" />";
    code += "<param name=\"swliveconnect\" value=\"true\" />";

    if(flashvars.length > 0){
        code += "<param name=\"FlashVars\" value=\""+flashvars+"\" />";
    }

    code += "<embed src=\""+s+"\" quality=\"high\" "
    //code +=        "bgcolor=\"#ffffff\" "
    code +=        "wmode=\""+t+"\" "
    code +=        "menu=\"false\" width=\""+w+"\" height=\""+h+"\" "
    code +=        "type=\"application/x-shockwave-flash\" "

    if(flashvars.length > 0){
        code +=    "FlashVars=\""+flashvars+"\" ";
    }

    code +=        "pluginspage=\"http://www.macromedia.com/go/getflashplayer\"> "
    code += "</embed>"
    code += "</object>"

    return code;
}

// write document contents
function documentwrite(src){ document.write(src); }

// assign code innerHTML
function setcode(target, code){ target.innerHTML = code; }

// 0 for impression, 1 for click.
function icprocess(vals, idx, type){
    for(var i = 0; i < vals.length; i++){
        if(i == idx){
            if(type == 0){ impress(vals[idx]); }
            else{ click(vals[idx]); }
            break;
        }
    }
}

// impression check
function checkimp(vals, idx){idx--;icprocess(vals, idx, 0); }

// impression check process
function impress(addr){ var i = new Image; i.src = addr; }

//// util

// browser check for ad
function isAdAvailable(){
    var g,a,p,m,noepd; g=navigator; a=g.userAgent;
    p=g.appVersion; m=p.indexOf("MSIE");

    if(a.indexOf("MSIE")==-1){ noepd=true; }

    if(m!=-1 && a.indexOf("Win")!=-1){
        v=parseFloat(p.substring(m+4)); if(v<5.5){ noepd=true; }
    }

    return !noepd;
}

// url encode
function encode(str){
    var result = "";
    for (i=0;i<str.length;i++) {
        if(str.charAt(i) == " ") result +=  "+";
        else result +=  str.charAt(i);    
    }    
    return escape(result);
}

// set cookie
function setCookie(name,value,expires,domain) {
document.cookie=name + "=" + escape(value) + ((expires == null)? "" : (" ; expires=" + expires.toGMTString())) + "; domain=" + (domain ? domain : "ad.naver.com") + ";" ;
}

// get cookie
function getCookie(name){

    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;

    while(i< clen){
        var j = i + alen;
        if(document.cookie.substring(i,j)==arg){
            var end = document.cookie.indexOf(";",j);
            if(end == -1)
                end = document.cookie.length;
            return unescape(document.cookie.substring(j,end));
        }
        i=document.cookie.indexOf(" ",i)+1;
        if (i==0) break;
    }
    return null;
}
