「トップページ」の編集履歴(バックアップ)一覧に戻る

トップページ - (2009/08/22 (土) 00:02:54) のソース

|&html(<iframe width="400" height="170" src="http://patch.starwarsgalaxies.com:7040/patch/web/swg/motd/patch_message.html"></iframe>)|&html(<form method="post" name="worldclock"><table><tr><td><span style="font-size:smaller">ロンドン:</span></td><td><input name="ldn" class="ldn" size=8></td></tr><tr><td><span style="font-size:smaller">東京:</span></td><td><input name="tyo" class="tyo" size=8></td></tr><tr><td><span style="font-size:smaller">ロス PDT:</span></td><td><input name="lax" class="lax" size=8></td></tr><tr><td><span style="font-size:smaller">ニューヨーク:</span></td><td><input name="nyc" class="nyc" size=8></td></tr><tr><td><span style="font-size:smaller">Internet Time:</span></td><td><input name="internettime" class="internettime" SIZE="5"></td></tr></table></form>)|

このサイトはオンラインゲームStarWarsGalaxies
Naritus Server内の日本人PA、AEGISのwikiです。

*&bold(){[[AEGIS FORUM 更新情報>>http://bb2.atbb.jp/aegis55/index.php]]}
#showrss(http://bb2.atbb.jp/aegis55/rss.php,showdate,linelimit=5,target=blank,lasttime)
*&bold(){[[SWG Dev Tracker>>http://forums.station.sony.com/swg/search/search.m?clean=1&sortBy=time&sortDir=DESC&group=Developer]]}
#showrss(http://forums.station.sony.com/swg/rss/groupPosts.m?group=Developer,showdate,linelimit=5,target=blank,lasttime)
*&bold(){[[SWG Senate Tracker>>http://forums.station.sony.com/swg/search/search.m?clean=1&sortBy=time&sortDir=DESC&group=Senator]]}
#showrss(http://forums.station.sony.com/swg/rss/groupPosts.m?group=Senator,showdate,linelimit=5,target=blank,lasttime)
*&bold(){運営方針}
当サイトは以下を目的として運営しています。 
・AEGISおよびAcropolis Cityの紹介 
・AEGISおよびAcropolis住人間の情報共有 
・プラスαとしてゲストの方への情報提供

基本的にページの編集はAEGISメンバーもしくはAcropolisの住人が行っています。
ページに設置されたBBS用フォームなどへの書き込みはどなたでも可能です。 
ご意見ご質問がある方はBBSへお気軽にどうぞ。

#javascript(){{
<script>
// まず今が何年か調べる
var today = new Date();
var year = today.getYear();
if (year < 1900) { year += 1900; }

// ローカル時間とグリニッジ標準時の差を分で表示
var tz_offset = today.getTimezoneOffset();

// 米英のサマータイムの期間を格納
var pos_startUS  = GetDstStartUS(year);
var pos_endUS    = GetDstEndUS(year);
var pos_startUK  = GetDstStartUK(year);
var pos_endUK    = GetDstEndUK(year);

// 各都市の時差を格納
var tz_ldn = 0 * 60;    // GMT +-0
var tz_tyo = 9 * 60;    // GMT  +9
var tz_lax = -8 * 60;   // GMT  -8
var tz_nyc = -5 * 60;   // GMT  -5



//
// ◆各都市の表示欄の色づけ
//
cities = Array(4);
cities[0] = "ldn";
cities[1] = "tyo";
cities[2] = "lax";
cities[3] = "nyc";

document.writeln("<style type=text/css>");

// いまの時刻を取得(たぶん1000ミリ秒単位)
var now  = new Date();
var n_t  = now.getTime();

for ( i=0; i<4; i++ ) {

    if (cities[i] == "ldn")         { var str = printtime(n_t,tz_ldn); }
    else if (cities[i] == "tyo")    { var str = printtime(n_t,tz_tyo); }
    else if (cities[i] == "lax")    { var str = printtime(n_t,tz_lax); }
    else if (cities[i] == "nyc")    { var str = printtime(n_t,tz_nyc); }

    var hour = str.substring(0,2);

    /*
     * ○時刻ごとの背景色設定
     * 白 ....... 6-16
     * 薄い青 ... 16-18, 5-6
     * 青 ....... 18-20, 4-5
     * 濃い青 ... 20-4
     */

    if ( 6 <= hour && hour < 16 ) {
        document.writeln("input." + cities[i] + " { background:#eee }");
    } else if ( (16 <= hour && hour < 18) || (5 <= hour && hour < 6) ) {
        document.writeln("input." + cities[i] + " { background:#ccf }");
    } else if ( (18 <= hour && hour < 20) || (4 <= hour && hour < 5) ) {
        document.writeln("input." + cities[i] + " { background:#77c;color:#ddd }");
    } else {
        document.writeln("input." + cities[i] + " { background:#448;color:#ddd }");
    }
}

document.writeln("</style>");



// ◆メインルーチン
function update_watch() {
    // いまの時刻を取得(たぶん1000ミリ秒単位)
    var now  = new Date();
    var n_t  = now.getTime();

    document.worldclock.ldn.value = printtime(n_t,tz_ldn);
    document.worldclock.tyo.value = printtime(n_t,tz_tyo);
    document.worldclock.lax.value = printtime(n_t,tz_lax);
    document.worldclock.nyc.value = printtime(n_t,tz_nyc);

    document.worldclock.internettime.value = internettime();

    setTimeout('update_watch()', 999);        // 1000msec = 1sec(秒)
}


// ◆米国版 DST 開始設定(4月第1日曜日2:00AM から 10月最終日曜日1:00AM まで)
// 引数arg_yearで指定された年のサマータイム開始時刻を return で返す
// UPD Eleyne 2007年から3月の第二日曜日から11月第一日曜日に変わったため修正

function GetDstStartUS(arg_year) {
    // 第2引数の3→4月 第3引数の1→1日 第4引数の2→2:00AM
    // 第2引数の2→3月 第3引数の1→1日 第4引数の2→2:00AM 
    var dst_start = new Date(arg_year, 2, 1, 2, 0, 0);
    for (var i = 8; i <= 14; i++) {
        dst_start.setDate(i);
        if (0 == dst_start.getDay()) {    // 0は日曜日を意味する
            break;
        }
    }
    return dst_start.getTime();
}

// ◆米国版 DST 終了設定(4月第1日曜日2:00AM から 10月最終日曜日1:00AM まで)
// 引数arg_yearで指定された年のサマータイム終了時刻を return で返す
// UPD Eleyne 2007年から3月の第二日曜日から11月第一日曜日に変わったため修正

function GetDstEndUS(arg_year) {
    // 第2引数の9→10月 第3引数の31→31日 第4引数の1→1:00AM
    // 第2引数の10→11月 第3引数の1→1日 第4引数の2→2:00AM
    var dst_end = new Date(arg_year, 10, 1, 2, 0, 0);
    for (var i = 1; i <= 7; i++) {
        dst_end.setDate(i);
        if (0 == dst_end.getDay()) {    // 0は日曜日を意味する
            break;
        }
    }
    return dst_end.getTime();
}


// ◆英国版 DST 開始設定(3月最終土曜日2:00AM から 10月最終土曜日2:00AM まで)
// 引数arg_yearで指定された年のサマータイム開始時刻を return で返す
function GetDstStartUK(arg_yearUK) {
    // 第2引数の2→3月 第3引数の31→31日 第4引数の2→2:00AM
    var dst_startUK = new Date(arg_yearUK, 2, 31, 2, 0, 0);
    for (var i = 31; i > 24; i--) {
        dst_startUK.setDate(i);
        if (6 == dst_startUK.getDay()) {    // 6は土曜日を意味する
            break;
        }
    }
    return dst_startUK.getTime();
}

// ◆英国版 DST 終了設定(3月最終土曜日2:00AM から 10月最終土曜日2:00AM まで)
// 引数arg_yearで指定された年のサマータイム終了時刻を return で返す
function GetDstEndUK(arg_yearUK) {
    // 第2引数の9→10月 第3引数の31→31日 第4引数の2→2:00AM
    var dst_endUK = new Date(arg_yearUK, 9, 31, 2, 0, 0);
    for (var i = 31; i > 24; i--) {
        dst_endUK.setDate(i);
        if (6 == dst_endUK.getDay()) {    // 6は土曜日を意味する
            break;
        }
    }
    return dst_endUK.getTime();
}


// ◆表示・サマータイム処理
function printtime(now_time, timezone) {
    var hour, min, sec;

    var pos_t = now_time + (tz_offset + timezone) * 60 * 1000;

    // サマータイム処理
    if (timezone == tz_ldn) {
        // ロンドン編
        if ((pos_startUK <= pos_t) && (pos_endUK > pos_t)) {
            pos_t += 60 * 60 * 1000;
        }
    } else if ( timezone == tz_lax || timezone == tz_nyc ) {
        // LA & NY 編
        if ((pos_startUS <= pos_t) && (pos_endUS > pos_t)) {
            pos_t += 60 * 60 * 1000;
        }
    }

    var t = new Date();
    t.setTime(pos_t);
    hour = t.getHours();
    min  = t.getMinutes();
    sec  = t.getSeconds();

    // 「XX時00分00秒」で、かつ、XX が「4,5,6,16,18,20」のうち
    // いずれかであるときにページをリロード
    // この処理により時間ごとの背景色が自動的に変わる
    if ( (hour==4||hour==5||hour==6||hour==16||hour==18||hour==20) && min==0 && sec==0 ) {
        window.location.reload();
    }

    if (hour < 10) {
        hour = "0" + hour;
    }
    if (min < 10) {
        min = "0" + min;
    }
    if (sec < 10) {
        sec = "0" + sec;
    }

    return hour + ":" + min + ":" + sec;
//    return hour + ":" + min;
}



// ◆インターネットタイムの処理
function internettime() {
    var c = new Date();
    var gmt = c.toGMTString();
    var d = gmt.indexOf(":")

    var h = eval( gmt.slice(d-2,d) );
    var m = eval( gmt.slice(d+1,d+3) );
    var s = eval( gmt.slice(d+4,d+6) );

    // LONDON と BIEL(SWATCH本社所在地/PARISとtime zoneが同じ)の 時差は1時間(3600秒)
    var beat = (h * 3600 + m * 60 + s + 3600) / 86.4;

    if (beat >= 1000) beat = beat - 1000;
    beat = Math.floor(beat);

    var zero = "";
    if (beat < 100) zero = "0";
    if (beat < 10) zero = "00";

    return "@" + zero + beat;

}
update_watch();
</script>
}}
人気記事ランキング
目安箱バナー