var fontSizeSwitcher = {};

(function($) {
  fontSizeSwitcher = {

        config: {
            area: ['lake_mori'], // 対象となるid
            length: 3, // 切り替え段階数
            id: ['fontSizeSwitcherSmall', 'fontSizeSwitcherMedium', 'fontSizeSwitcherLarge'], // 切り替えボタンの各id
            offlabel: ['<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_s_off.gif" alt="小" />', '<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_m_off.gif" alt="中" />', '<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_l_off.gif" alt="大" />'], // 切り替えボタンの各offラベル
            onlabel: ['<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_s_on.gif" alt="小" />', '<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_m_on.gif" alt="中" />', '<img src="http://www.aeon-laketown.jp/mori/img/share/btn_f_change_l_on.gif" alt="大" />'],// 切り替えボタンの各onラベル
            size: ['75%', '88%', '100%'], // 切り替えサイズ (http://developer.yahoo.com/yui/fonts/)
            cookieName: 'aeon-font_size', // ここにクッキー名を入れる
            cookieDate: '90' // クッキーの有効日数
        },

        cookie: {
            set: function(n, v) {
                var t = new Date();
                t.setTime(t.getTime() + (1000 * 60 * 60 * 24 * fontSizeSwitcher.config.cookieDate));
                document.cookie = n + '=' + encodeURIComponent(v) + '; path=/; expires=' + t.toGMTString();
            },
            get: function(n, m) {
                return (m = ('; ' + document.cookie + ';').match('; ' + n + '=(.*?);')) ? decodeURIComponent(m[1]) : '';
            }
        },
        
        changeFontSize: function(size_num) {
            var config = fontSizeSwitcher.config;

            var items = document.getElementById('fontSizeSwitcher').getElementsByTagName('dd');
            for(var i = 0; i < items.length; i++) {
                if(size_num == i) {
                    items[i].innerHTML = config.onlabel[i];
                }
                else {
                    items[i].innerHTML = config.offlabel[i];
                    //site.js
                    SetRollover(items[i].getElementsByTagName('img')[0]);
                }
            }

            $("#" + config.area).css("font-size",fontSizeSwitcher.config.size[size_num]);

            // set cookie
            this.cookie.set(config.cookieName, size_num);
        },

    
        start: function(){
            var size_num = fontSizeSwitcher.cookie.get(fontSizeSwitcher.config.cookieName, 's');
            if(!parseInt(size_num)) size_num = 0;
            $("#" + fontSizeSwitcher.config.area).css("font-size",fontSizeSwitcher.config.size[size_num]);

            var config = fontSizeSwitcher.config;
            var i      = fontSizeSwitcher.cookie.get(config.cookieName, 's');
            
            var  str = '';
            for(var j = 0; j < config.length; j++) {
                str += '<dd id="' + config.id[j] + '" onclick="fontSizeSwitcher.changeFontSize(' + j + ')">' + config[(i==j)?"onlabel":"offlabel"][j] + '</dd>';
            }
            document.write('<dl id="fontSizeSwitcher">' + '<dt></dt>' + str + '</dl>');

        }

    }
    
    fontSizeSwitcher.start();
})(jQuery);

