« Movable Type バイナリーファイル (tar.gz) と rbash | メイン | デイレクトリ( cache, templates_c ) のセキュリティ対策 »

2004年10月27日

テンプレート・モジュール "Remember Me" と個別アーカイブ

テンプレート template 【個別エントリーアーカイブ】の headタグ内には、下記のテンプレート・モジュール "Remember Me"ないし下記のjavascriptが必要です。
Movable Type 3.01D日本語版(および、英語 3.11バグフィックス版)まではjavascriptが挿入されていましたが、日本語版 3.11(および、英語版 3.12)からデフォルトでモジュールのタグ単独となっています。
もし、TypeKey サインイン/サインアウト新タグの利用のため、本テンプレートのみアップグレードした場合、テンプレート・モジュール「(テンプレートの名前) Remember Me」を新規に作成し、下記のjavascript全体をコピー・ペーストして、保存して下さい。
このスクリプトがないと、ブラウザ(Internet Explorerなど一部のもの)でエラー表示となります。
「ページでエラーが発生しました」

■ ところが、、、
<!--MTInclude module="Remember Me"--> とコメント文としたり、下記javascriptを挿入せずブラウザ(IE)でエラー表示する 【個別エントリーアーカイブ】で運用しても、TypeKey サインイン/サインアウトは正常作動します。また、Netscapeで閲覧すると、スクリプトエラーを表示しないため、スクリプトの挿入ミスにブログ作成者もクライアントも全く気づかない・・ということになります。
しかし、実際には、Remember me? (日本語表示: 情報を登録する?) のラジオボタンは選択できませんし、正しくコメント投稿できないことがありますので、ご注意下さい。
サンプルページをご覧下さい。⇒ http://www.osbsd.net/

モジュールのタグ
<MTInclude module="Remember Me">

旧バージョンでのjavascript
<script type="text/javascript" language="javascript">
<!--

var HOST = '<$MTBlogHost$>';

// 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('mtcmtauth', f.author.value, now, '/', '', '');
if (f.email != undefined)
setCookie('mtcmtmail', f.email.value, now, '/', '', '');
if (f.url != undefined)
setCookie('mtcmthome', f.url.value, now, '/', '', '');
}

function forgetMe (f) {
deleteCookie('mtcmtmail', '/', '');
deleteCookie('mtcmthome', '/', '');
deleteCookie('mtcmtauth', '/', '');
f.email.value = '';
f.author.value = '';
f.url.value = '';
}

//-->
</script>

投稿者 mvtp : 2004年10月27日 17:45

トラックバック

このエントリーのトラックバックURL:
trackbacklink 29

このリストは、次のエントリーを参照しています: テンプレート・モジュール "Remember Me" と個別アーカイブ:

» Remember Meをコメント文としたサンプルページ from tips::RSS, Atom, S/MIME mail
Movable Type 3.11-ja へアップグレード後、テンプレートモジュール"Remember Me" を作成しないと(新規インストールでないとき)、 ... [続きを読む]

トラックバック時刻: 2004年10月27日 20:22

» MT 3.1アップグレード from 京都祇園観光案内
Milanoさんのサイトで、バージョン別アップグレード方法が掲載されてるので、最... [続きを読む]

トラックバック時刻: 2004年11月10日 20:16

» Remember Meをコメント文としたサンプルページ from tips::RSS, Atom, S/MIME mail
Movable Type 3.11-ja へアップグレード後、テンプレートモジュール"Remember Me" を作成しないと(新規インストールでないとき)、 ... [続きを読む]

トラックバック時刻: 2004年11月14日 21:33

» 個別テンプレート from /PEN/
「Individual Entry Archive」が若干変更になっているという... [続きを読む]

トラックバック時刻: 2005年06月15日 20:56

コメント

コメントしてください

サイン・インを確認しました、 . さん。コメントしてください。 (サイン・アウト)

(いままで、ここでコメントしたとがないときは、コメントを表示する前にこのウェブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)


情報を登録する?




 Modified by Toshiaki YAMAMURA    Powered by Movable Type
 ■シックス・アパート株式会社より「個人用ライセンス」を取得し、Movable Type にて情報提供中です. ■ハンドル名とメールアドレスを入力すると、自由にコメント投稿できます. 但し、15歳未満のお子供は必ず保護者の指導・監督下で行って下さい. ■本ウエブログでは、サイト管理・運営者が著しく不利益と判断するコメントや他人を誹謗中傷するコメントは、直ちに削除いたします.