var escape = window.encodeURIComponent ? encodeURIComponent : escape;
var unescape = window.decodeURIComponent ? decodeURIComponent : unescape;

// Copyright (c) 1996-1997 Athenia Associates.
// http://www.webreference.com/js/
// License is granted if and only if this entire
// copyright notice is included. By Tomer Shiran.

function setCookie (name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) + (expires ? "; expires=" + expires : "") +
        (path ? "; path=" + path : "") + (domain ? "; domain=" + domain : "") + (secure ? "secure" : "");
    document.cookie = curCookie;
}

function getCookie (name) {
    var prefix = name + '=';
    var c = document.cookie;
    var nullstring = '';
    var cookieStartIndex = c.indexOf(prefix);
    if (cookieStartIndex == -1)
        return nullstring;
    var cookieEndIndex = c.indexOf(";", cookieStartIndex + prefix.length);
    if (cookieEndIndex == -1)
        cookieEndIndex = c.length;
    return unescape(c.substring(cookieStartIndex + prefix.length, cookieEndIndex));
}

function deleteCookie (name, path, domain) {
    if (getCookie(name))
        document.cookie = name + "=" + ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
}

function fixDate (date) {
    var base = new Date(0);
    var skew = base.getTime();
    if (skew > 0)
        date.setTime(date.getTime() - skew);
}

function rememberMe (f) {
    var now = new Date();
    fixDate(now);
    now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
    now = now.toGMTString();
    if (f.author != undefined)
       setCookie('mealcmtauth', f.author.value, now, '/', '', '');
    if (f.email != undefined)
       setCookie('mealcmtmail', f.email.value, now, '/', '', '');
    if (f.url != undefined)
       setCookie('mealcmthome', f.url.value, now, '/', '', '');
}

function forgetMe (f) {
    deleteCookie('mealcmtmail', '/', '');
    deleteCookie('mealcmthome', '/', '');
    deleteCookie('mealcmtauth', '/', '');
    f.email.value = '';
    f.author.value = '';
    f.url.value = '';
}

function hideDocumentElement(id) {
    var el = document.getElementById(id);
    if (el) el.style.display = 'none';
}

function showDocumentElement(id) {
    var el = document.getElementById(id);
    if (el) el.style.display = 'block';
}

var commenter_name;

function individualArchivesOnLoad(commenter_name) {
    if (commenter_name) {
        hideDocumentElement('name-email');
    } else {
        showDocumentElement('name-email');
    }


    if (document.forms['comments-form']) {
        fillCommentsForm(document.forms['comments-form']);
    }
}

function fillCommentsForm(f) {
    var mealcmtmail, mealcmtauth, mealcmthome;
    if (f.email != undefined && (mealcmtmail = getCookie("mealcmtmail")))
        f.email.value = mealcmtmail;
    if (f.author != undefined && (mealcmtauth = getCookie("mealcmtauth")))
        f.author.value = mealcmtauth;
    if (f.url != undefined && (mealcmthome = getCookie("mealcmthome")))
        f.url.value = mealcmthome;
    f.bakecookie.checked = (mealcmtauth || mealcmthome) ? true : false;
}

function writeTypeKeyGreeting(commenter_name, entry_id) {
    if (commenter_name) {
        document.write('<div class="tk-status" title="TypeKey認証サービス: Now Signed In"><a href="http://as-is.net/mt/mt-comments.fcgi?__mode=handle_sign_in&amp;static=1&amp;logout=1&entry_id=' + entry_id + '" rel="nofollow" accesskey="O">TypeKeyからサイン・アウトする(<span class="accesskey">O</span>)</a></div><p>' + commenter_name + ' さんのTypeKeyアカウントを確認しました。</p>');
    } else {
        document.write('<div class="tk-status" title="TypeKey認証サービス: Not Signed In"><a href="https://www.typekey.com/t/typekey/login?&amp;need_email=1&amp;lang=ja&amp;t=b1cpHmla2My5JUkUoW7L&amp;v=1.1&amp;_return=http://as-is.net/mt/mt-comments.fcgi%3f__mode=handle_sign_in%26static=1%26entry_id=' + entry_id + '" rel="nofollow" accesskey="I">TypeKeyにサイン・インまたは登録する(<span class="accesskey">I</span>)</a></div><p>TypeKey認証サービスにサイン・インしてください。TypeKeyアカウントをお持ちでない場合は上記リンクから登録することができます。</p>');

    }

}

commenter_name = getCookie('commenter_name');
