//-----------------------------------------------------------------
// ヤマサキ公式サイト
// メイン JavaScript
//-----------------------------------------------------------------
//---------- 共通変数 ----------//
// クッキー有効日数
var COOKIE_EXPIRES = 1;
//------------------------------//

//----------------------------------------------------
// 関数名：PageStart
// 概要　：画面初期処理
// 説明　：それぞれの機能の初期処理を行う。
//----------------------------------------------------
function PageStart(SHOP_MEMBER_PATH)
{
    CartInit(SHOP_MEMBER_PATH);
    initRollovers();
    SetUserName();

    try
    {
        // PageRequestManagerクラスをインスタンス化
        var mng = Sys.WebForms.PageRequestManager.getInstance();
        // 非同期ポストバックの完了後処理
        mng.add_endRequest(
            function(sender, args)
            {
                LoadCart();
            }
        );
    }
    catch(e)
    {
    }
}

//----------------------------------------------------
// 関数名：SetUserName
// 概要　：ユーザー名表示
// 説明　：クッキーにログイン情報が存在する場合、
// 　　　　ユーザー名を表示する。
//----------------------------------------------------
function SetUserName()
{
    var eleuser = document.getElementById("user");
    eleuser.innerHTML = CookieRead("CUST_KANJI");
    if(eleuser.innerHTML == "")
        eleuser.innerHTML = "ゲスト";
    eleuser.innerHTML = eleuser.innerHTML + " さま";
}

//----------------------------------------------------
// 関数名：CookieWrite
// 概要　：クッキー書き込み
// 説明　：クッキーに指定のキーで書き込む。
//----------------------------------------------------
function CookieWrite(kword, kdata)
{
    // クッキーが利用可能かどうか
    if(!navigator.cookieEnabled)
    {
        alert("クッキーへの書き込みができません");
        return;
    }
    sday = new Date();
    // クッキーは30日(共通変数)有効としておく
    sday.setTime(sday.getTime() + (COOKIE_EXPIRES * 1000 * 60 * 60 * 24));
    s2day = sday.toGMTString();
    document.cookie = kword + "=" + encodeURIComponent(kdata) + ";expires=" + s2day + ";path=/;";
}

//----------------------------------------------------
// 関数名：CookieRead
// 概要　：クッキー読み出し
// 説明　：クッキーから指定のキーの値を読み出す。
//----------------------------------------------------
function CookieRead(kword)
{
    // キーワードなし
    if(typeof(kword) == "undefined")
        return ""; // 何もしないで戻る
    kword = kword + "=";
    kdata = "";
    // クッキー情報を読み込む
    scookie = document.cookie + ";";
    // キーワードを検索
    start = scookie.indexOf(kword);
    // キーワードと一致するものあり
    if (start != -1)
    {
        // 情報の末尾位置を検索
        end = scookie.indexOf(";", start);
        // データ取り出し
        kdata = decodeURIComponent(scookie.substring(start + kword.length, end));
    }
    return kdata;
}

//----------------------------------------------------
// 関数名：CookieDelete
// 概要　：クッキー削除
// 説明　：クッキーから指定のキーを削除する。
//----------------------------------------------------
function CookieDelete(kword)
{
    dTime = new Date();
    dTime.setYear(dTime.getYear() - 1);
    document.cookie = kword + "=;expires=" + dTime.toGMTString() + ";path=/;";
}

//----------------------------------------------------
// 関数名：CookieDeleteAll
// 概要　：クッキー削除
// 説明　：クッキーをすべて削除する。
//----------------------------------------------------
function CookieDeleteAll()
{
    CookieDelete("ItemCodeList");
    CookieDelete("GetPoint");
    CookieDelete("TestCookie");
    CookieDelete("CUST_BAN");
    CookieDelete("CUST_KANJI");
    CookieDelete("MAILADDR");
    location.reload(true);
}

//----------------------------------------------------
// 関数名：NumFormat
// 概要　：3桁区切り変換
// 説明　：指定の数値を3桁区切りに変換する。
//----------------------------------------------------
function NumFormat(num)
{
    var str = new String(num);
    var n = "";
    var count = 0;
    for (var i = str.length-1 ; i >= 0 ; i--)
    {
        n = str.charAt(i) + n;
        count++;
        if (((count % 3) == 0) && (i != 0))
            n = ","+n;
    }
    return n;
}

//----------------------------------------------------
// 関数名：DisplayChange
// 概要　：表示切替
// 説明　：渡されたIDのオブジェクトを表示切替する
//----------------------------------------------------
function DisplayChange(objID)
{
    var eleObj = document.getElementById(objID);
    if(typeof(eleObj) == "undefined")
        return;
    if(eleObj.style.display == "none")
        eleObj.style.display = '';
    else
        eleObj.style.display = 'none';
}

//----------------------------------------------------
// 関数名：AbsolutePath
// 概要　：絶対パス変換
// 説明　：渡されたパスを絶対パスに変換する
//----------------------------------------------------
function AbsolutePath(path)
{
  var e = document.createElement('span');
  e.innerHTML = '<a href="' + path + '" />';
  return e.firstChild.href;
}
