﻿
var ContactMode = 1;
var Fid = function(obj) {
    return document.getElementById(obj);
};
//是否空值
function Fempty(v) { return (("" == v || undefined == v || null == v) ? true : false); };
//优化字符串
var StringBuffer = function()
{ this._string = new Array; };
StringBuffer.prototype.append = function(str) {
    this._string.push(str);
};
StringBuffer.prototype.toString = function() {
    return this._string.join("");
};
var MCL = {};
MCL.Cookie = {
    Get: function(name) {
        var mn = name + "=";
        var b, e;
        var co = document.cookie;

        if (mn == "=") {
            return co;
        }

        b = co.indexOf(mn);

        if (b < 0) {
            return "";
        }

        e = co.indexOf(";", b + name.length);

        if (e < 0) {
            return co.substring(b + name.length + 1);
        }
        else {
            return co.substring(b + name.length + 1, e);
        }
    },
    Set: function(name, val, cotp) {
        var date = new Date;
        var year = date.getFullYear();
        var hour = date.getHours();

        var cookie = "";

        if (cotp == 0) {
            cookie = name + "=" + val + ";";
        }
        else if (cotp == 1) {
            year = year + 10;
            date.setYear(year);
            cookie = name + "=" + val + ";expires=" + date.toGMTString() + ";";
        }
        else if (cotp == 2) {
            hour = hour + 1;
            date.setHours(hour);
            cookie = name + "=" + val + ";expires=" + date.toGMTString() + ";";
        }

        var d = ""; // MCL.Domain.Get(document.domain);
        if (d != "") {
            cookie += "domain=" + d + ";";
        }
        cookie += "path=" + "/;";
        document.cookie = cookie;
    }

};
MCL.LocalUser = {
    GetLanguage: function() {
        var l = "";
        var n = navigator;

        if (n.language) {
            l = n.language.toLowerCase();
        }
        else
            if (n.browserLanguage) {
            l = n.browserLanguage.toLowerCase();
        }
        return l;
    },
    GetScreen: function() {
        var c = "";

        if (self.screen) {
            c = screen.width + "x" + screen.height;
        }

        return c;
    },
    GetAgent: function() {
        var a = "";
        var n = navigator;

        if (n.userAgent) {
            a = n.userAgent;
        }

        return a;
    },
    GetCookieEnabled: function() {
        var c = "";
        var n = navigator;
        c = n.cookieEnabled ? 1 : 0;

        return c;
    },
    GetTimeZoneOffset: function() {
        return new Date().getTimezoneOffset() / 60 * -1
    }
};


MCL.Domain = {
    lz_c_ctry_top_domain: function(str) {
        var pattern = "/^aero$|^cat$|^coop$|^int$|^museum$|^pro$|^travel$|^xxx$|^com$|^net$|^gov$|^org$|^mil$|^edu$|^biz$|^info$|^name$|^ac$|^mil$|^co$|^ed$|^gv$|^nt$|^bj$|^hz$|^sh$|^tj$|^cq$|^he$|^nm$|^ln$|^jl$|^hl$|^js$|^zj$|^ah$|^hb$|^hn$|^gd$|^gx$|^hi$|^sc$|^gz$|^yn$|^xz$|^sn$|^gs$|^qh$|^nx$|^xj$|^tw$|^hk$|^mo$|^fj$|^ha$|^jx$|^sd$|^sx$/i";

        if (str.match(pattern)) { return 1; }

        return 0;
    },
    lz_c_ctry_domain: function(str) {
        var pattern = "/^ac$|^ad$|^ae$|^af$|^ag$|^ai$|^al$|^am$|^an$|^ao$|^aq$|^ar$|^as$|^at$|^au$|^aw$|^az$|^ba$|^bb$|^bd$|^be$|^bf$|^bg$|^bh$|^bi$|^bj$|^bm$|^bo$|^br$|^bs$|^bt$|^bv$|^bw$|^by$|^bz$|^ca$|^cc$|^cd$|^cf$|^cg$|^ch$|^ci$|^ck$|^cl$|^cm$|^cn$|^co$|^cr$|^cs$|^cu$|^cv$|^cx$|^cy$|^cz$|^de$|^dj$|^dk$|^dm$|^do$|^dz$|^ec$|^ee$|^eg$|^eh$|^er$|^es$|^et$|^eu$|^fi$|^fj$|^fk$|^fm$|^fo$|^fr$|^ly$|^hk$|^hm$|^hn$|^hr$|^ht$|^hu$|^id$|^ie$|^il$|^im$|^in$|^io$|^ir$|^is$|^it$|^je$|^jm$|^jo$|^jp$|^ke$|^kg$|^kh$|^ki$|^km$|^kn$|^kp$|^kr$|^kw$|^ky$|^kz$|^la$|^lb$|^lc$|^li$|^lk$|^lr$|^ls$|^lt$|^lu$|^lv$|^ly$|^ga$|^gb$|^gd$|^ge$|^gf$|^gg$|^gh$|^gi$|^gl$|^gm$|^gn$|^gp$|^gq$|^gr$|^gs$|^gt$|^gu$|^gw$|^gy$|^ma$|^mc$|^md$|^mg$|^mh$|^mk$|^ml$|^mm$|^mn$|^mo$|^mp$|^mq$|^mr$|^ms$|^mt$|^mu$|^mv$|^mw$|^mx$|^my$|^mz$|^na$|^nc$|^ne$|^nf$|^ng$|^ni$|^nl$|^no$|^np$|^nr$|^nu$|^nz$|^om$|^re$|^ro$|^ru$|^rw$|^pa$|^pe$|^pf$|^pg$|^ph$|^pk$|^pl$|^pm$|^pr$|^ps$|^pt$|^pw$|^py$|^qa$|^wf$|^ws$|^sa$|^sb$|^sc$|^sd$|^se$|^sg$|^sh$|^si$|^sj$|^sk$|^sl$|^sm$|^sn$|^so$|^sr$|^st$|^su$|^sv$|^sy$|^sz$|^tc$|^td$|^tf$|^th$|^tg$|^tj$|^tk$|^tm$|^tn$|^to$|^tp$|^tr$|^tt$|^tv$|^tw$|^tz$|^ua$|^ug$|^uk$|^um$|^us$|^uy$|^uz$|^va$|^vc$|^ve$|^vg$|^vi$|^vn$|^vu$|^ye$|^yt$|^yu$|^za$|^zm$|^zr$|^zw$/i";

        if (str.match(pattern)) { return 1; }

        return 0;
    },
    Get: function(host) {
        var d = host.replace(/^www\./, "");

        var ss = d.split(".");
        var l = ss.length;

        if (l == 3) {
            if (MCL.Domain.lz_c_ctry_top_domain(ss[1]) && MCL.Domain.lz_c_ctry_domain(ss[2])) {
            }
            else {
                d = ss[1] + "." + ss[2];
            }
        }
        else if (l >= 3) {

            var ip_pat = "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$";

            if (host.match(ip_pat)) {
                return d;
            }

            if (MCL.Domain.lz_c_ctry_top_domain(ss[l - 2]) && MCL.Domain.lz_c_ctry_domain(ss[l - 1])) {
                d = ss[l - 3] + "." + ss[l - 2] + "." + ss[l - 1];
            }
            else {
                d = ss[l - 2] + "." + ss[l - 1];
            }
        }

        return d;
    }
};
MCL.Country = {
    Load: function() {
        $.getScript("/script/Country.js", function() {
            var indexed = 0;
            var lang = MCL.LocalUser.GetLanguage();
            if (lang.indexOf("-") > 0) {
                lang = lang.split("-")[1]
            }
            for (var i = 0; i < country.DataTable.length; i++) {
                if (country.DataTable[i].Code.toLowerCase() == lang) {
                    indexed = i;

                }
                document.getElementById("txtSignNationality").options.add(new Option(country.DataTable[i].CountryName, country.DataTable[i].Code + "|" + country.DataTable[i].AreaCode))
            }
            document.getElementById("txtSignNationality").options[indexed].selected = true;
            document.getElementById("txtSignAreaCode").value = document.getElementById("txtSignNationality").options[indexed].value.split("|")[1];
            document.getElementById("hidCountryID").value = document.getElementById("txtSignNationality").options[indexed].value.split("|")[0];
        });

    }

};
MCL.SignUp = {
    Check: function() {
        if (document.getElementById("txtSignName") && document.getElementById("txtSignEmail")) {
            var regName = /\w+/;
            var regEmail = /\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
            var regAreaCode = /\d{1,4}/;
            var regPhone = /(\d{3,4}([ |\-])?){2,4}/;
            var vaild = true;
            var temp = "";
            if ($.trim(document.getElementById("txtSignName").value)=="") {
                temp = "Please fill your name.\n"
                vaild = false;
            }
            if (!regEmail.test(document.getElementById("txtSignEmail").value)) {
                temp = temp + "The email address entered is incorrectly formatted.!\n"
                vaild = false;
            }
            if (!regAreaCode.test(document.getElementById("txtSignAreaCode").value)) {
                temp = temp + "IDD Code is requaired 1-4 digits in length!\n"
                vaild = false;
            }
            if (!regPhone.test(document.getElementById("txtSignPhone").value)) {
                temp = temp + "Phone number is 6 digits at least in length!\n"
                vaild = false;
            }
            if (document.getElementById("txtSignCode").value != "") {
                if (!regName.test(document.getElementById("txtSignCode").value)) {

                    temp = temp + "Please fill correct Invitation Code!\n"
                    vaild = false;
                }
            }
            if (!vaild) {
                alert(temp);
            }
            return vaild;
        }
        else {
            alert("Registration failed");
            location.href = '/FreeTrial/SignUp.aspx';
        }
    },
    Post: function() {
        if (!MCL.SignUp.Check()) {
            return;
        }
        var par = "linkName=" + document.getElementById("txtSignName").value + "&email=" + document.getElementById("txtSignEmail").value;
        par = par + "&area=" + document.getElementById("txtSignAreaCode").value + "&phone=" + document.getElementById("txtSignPhone").value;
        par = par + "&InvitationCode=" + document.getElementById("txtSignCode").value + "&country=" + document.getElementById("hidCountryID").value;
        par = par + "&timeoffset=" + MCL.LocalUser.GetTimeZoneOffset() + "&uvid=" + MCL.Cookie.Get("MCL_UV")
        $("#SignPost").css("display", "block");
        $.ajax({
            type: "POST",
            url: "/WebService/SignUp.ashx",
            data: par,
            error: function() {
                alert("");
                location.href = '/FreeTrial/SignUp.aspx';
            },
            success: function(msg) {
                if (msg == "OK") {
                    alert("Thank you for signing up at MyChineseLearning.com. Your course consultant will contact you soon.");
                    location.href = '/FreeTrial/Success.html';
                }
                else {
                    alert("Registration failed");
                    location.href = '/FreeTrial/SignUp.aspx';
                }
            }
        });
    }
};
MCL.Encode = function(str) {
    var e = "", i = 0;

    for (i = 0; i < str.length; i++) {
        if (str.charCodeAt(i) >= 0 && str.charCodeAt(i) <= 255) {
            e = e + escape(str.charAt(i));
        }
        else {
            e = e + str.charAt(i);
        }
    }

    return e;
};
MCL.Analysis = function() {
    var expire_time = 1800;
    var host = document.location.host;
    var domain = MCL.Domain.Get(host.toLocaleLowerCase());
    var path = "http://student.mychineselearning.com/Analysis.ashx";
    var hashval = 0;
    for (i = 0; i < domain.length; i++) {
        hashval += domain.charCodeAt(i);
    }

    var uv_id = MCL.Cookie.Get("MCL_UV");
    var uv_new = 0;
    if (uv_id == "") {
        uv_new = 1;

        var rand1 = parseInt(Math.random() * 4000000000);
        var rand2 = parseInt(Math.random() * 4000000000);
        uv_id = String(rand1) + String(rand2);

        MCL.Cookie.Set("MCL_UV", uv_id, 1);
    }

    var ref = document.referrer;
    ref = MCL.Encode(String(ref));

    var url = document.URL;
    url = MCL.Encode(String(url));

    var title = document.title;
    title = escape(String(title));

    var charset = document.charset;
    charset = MCL.Encode(String(charset));
    var agent = MCL.LocalUser.GetAgent();
    agent = MCL.Encode(String(agent));
    var screen = MCL.LocalUser.GetScreen();
    screen = MCL.Encode(String(screen));
    var language = MCL.LocalUser.GetLanguage();
    language = MCL.Encode(language)
    var timezoneOffset = MCL.LocalUser.GetTimeZoneOffset()
    dest = path + "?uv_id=" + uv_id + "&uv_new=" + uv_new + "&ref=" + ref + "&url=" + url + "&title=" + title + "&charset=" + charset + "&domain=" + domain
    dest = dest + "&agent=" + agent + "&screen=" + screen + "&language=" + language + "&timezoneOffset=" + timezoneOffset + "&cnu=" + String(Math.random());
    document.write("<img src=\"" + dest + "\" border=\"0\" width=\"0\" height=\"0\" >");
};
MCL.Dict = {
    Search: function() {
        if ($.trim(document.getElementById("DictSearchTxt").value) != "")
            location.href = "/dict/" + document.getElementById("DictSearchTxt").value;

    },
    MusicInit: function(code) {
        var url = "http://www.mychineselearning.com/data/dict/mp3/" + code + ".mp3"
        var flash = ""
        flash = flash + '<object type="application/x-shockwave-flash" data="/video/dewplayer-mini.swf" width="20" height="20" id="dewplayermini" name="dewplayermini">';
        flash = flash + '<param name="movie" value="/video/dewplayer-mini.swf" />';
        flash = flash + '<param name="flashvars" value="mp3=' + url + '" />';
        flash = flash + '</object>';
        //document.getElementById("flashPlayer").innerHTML = flash;
        document.write(flash);
    }
};
MCL.LiveChat = function() {
    var left = (window.screen.width - 380) / 2;
    var top = (window.screen.height - 370) / 2;

    window.open("/support.htm", "Live_Chat", "height=370,width=380,status=yes,toolbar=no,resizable=no,top=" + top + ",left=" + left);
};
MCL.Bookmark = function() {
    if (window.sidebar) {
        window.sidebar.addPanel("MyChineselearning", "http://www.mychineselearning.com", "");
    }
    else if (document.all) {
        window.external.AddFavorite("http://www.mychineselearning.com", "MyChineselearning");
    }
};
MCL.Google =
{ 
Analysis: function() {
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-10022461-2']);
_gaq.push(['_trackPageview']);

(function() {
    var ga = document.createElement('script');
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' :
        'http://www') + '.google-analytics.com/ga.js';
    ga.setAttribute('async', 'true');
    document.documentElement.firstChild.appendChild(ga);
})();

   }
};
MCL.Init = function() {
    MCL.Analysis();
    if (document.getElementById("txtSignNationality")) {
        MCL.Country.Load();
        document.getElementById("txtSignNationality").onchange = function() {
            document.getElementById("txtSignAreaCode").value = this.value.split("|")[1];
            document.getElementById("hidCountryID").value = this.value.split("|")[0];
        }
    }
    if (document.getElementById("DictSearchTxt")) {
        document.getElementById("DictSearchTxt").onkeyup = function() {
            if (event.keyCode == 13) {
                if ($.trim($("#DictSearchTxt").val()) != "")
                    location.href = '/dict/' + $("#DictSearchTxt").val();

            }
        }
    }
    if (document.getElementById("SignSubmit")) {
        document.getElementById("SignSubmit").onclick = function() { MCL.SignUp.Post(); }
    }
    if (typeof hidUVID != 'undefined') {
        hidUVID.value = MCL.Cookie.Get("MCL_UV");
        hidTimeOffSet.value = MCL.LocalUser.GetTimeZoneOffset();
    }
 
    //document.getElementsByTagName("form")[0].action = window.location;
};