/**
 * 公益社団法人 全国老人福祉施設協議会
 *
 * @version jQuery v1.4.2
 * @update 2011-01-19
 */

$(function(){

    /**
     * 透過PNG対応(IE6用)
     */
    if($.fn.pngfix) {
        $(".iepngfix").pngfix();
    }


    /**
     * ロールオーバー設定
     */
    $('.RollOver').mouseover(function() {
        $(this).attr("src", ($(this).attr("src")).replace("_off.", "_on."));
    });
    $('.RollOver').mouseout(function() {
        $(this).attr("src", ($(this).attr("src")).replace("_on.", "_off."));
    });


    /**
     * グローバルナビゲーション設定
     */
    $('ul#GlobalNavi li img').mouseover(function() {
        if (this.id == activeTab) {
            return;
        }
        $(this).attr("src", ($(this).attr("src")).replace("_off.", "_on."));
    });
    $('ul#GlobalNavi li img').mouseout(function() {
        if (this.id == activeTab) {
            return;
        }
        $(this).attr("src", ($(this).attr("src")).replace("_on.", "_off."));
    });
    $('ul#GlobalNavi li img').click(function() {
        if (this.id == activeTab) {
            return false;
        }
        activeTab = this.id;
        updateTab(this);
        return false;
    });


    /**
     * サブメニューの状態を更新
     */
    function updateTab(objTab) {
        $.each($('ul#GlobalNavi li img'), function(i, val){
            $(val).attr("src", ($(this).attr("src")).replace("_on.", "_off."));
            if (this.id != activeTab) {
                $(val).attr("src", ($(this).attr("src")).replace("_act.", "_off."));
            }
        });
        $(objTab).attr("src", ($(objTab).attr("src")).replace("_off.", "_act."));
        $.each($('div#SubMenu div'), function(i, val){
            $(val).hide();
        });
        $('div#SubMenu div.'+$(objTab).attr('id')).show();
    }


    /**
     * イージング設定
     */
    jQuery.easing.easeOutCubic = function (x, t, b, c, d) {
         return c*((t=t/d-1)*t*t + 1) + b;
    };


    /**
     * ページ上部へ戻る
     */
    $('.ReturnTop').click(function() {
        var highlight = false;
        var target = (! this.hash || this.hash == "#") ? $('body') : $(this.hash);
        var top = (target.attr("tagName") == "BODY") ? 0 : target.offset().top-20;
        var winHeight = $(window).height();
        var cntHeight = $(document).height();
        if (cntHeight - top < winHeight) top = cntHeight - winHeight;
        $('html, body').animate({scrollTop: top}, 1000, 'easeOutCubic');
        return false;
    });


    /**
     * 施設紹介
     */
    function slideShisetsu(init) {
        if (init) {
            window.setInterval(function(){
                slideShisetsu(false);
            }, 33000);
        }
        $('div#Shisetsu div.Photo').fadeOut(1500, function(){
            if (arrShisetsu[numShisetsu][0].length == 0) {
                numShisetsu = 0;
            }
            $('div#Shisetsu div.Photo').html('<p style="margin-left:'+margin_left+'px; margin-top:'+margin_top+'px;"><a href="http://www.js-job.jp/" target="_blank"><img src="' + pathShisetsu+arrShisetsu[numShisetsu][0] + '" alt="' + arrShisetsu[numShisetsu][1] + '" /></a></p>');
        }).fadeIn(1500);
        $('div#Shisetsu div.Name p').fadeOut(1500, function(){
            $('div#Shisetsu div.Name p').html(arrShisetsu[numShisetsu][1]);
            numShisetsu++;
            if (numShisetsu >= arrShisetsu.length) {
                numShisetsu = 0;
            }
            // 次の画像をプリロード
            imgShisetsu.src = pathShisetsu+arrShisetsu[numShisetsu][0] + "?" + (new Date().getTime());;
            img.src = imgShisetsu.src;
        }).fadeIn(1500, function() {
            if (img.width <= 0) {
                margin_left = 0;
                margin_top = 0;
            } else {
                margin_left = (214 - img.width > 0 && img.width <= 214) ? (214 - img.width)/2 : 0;
                margin_top = (155 - img.height > 0 && img.height <= 155) ? (155 - img.height)/2 : 0;
            }
        });
    }


    /**
     * メインビジュアル
     */
    function slideMainVisual(init) {
        if (init) {
            window.setInterval(function(){
                slideMainVisual(false);
            }, 33000);
        }
        $('div#MainVisual div').fadeOut(1500, function(){
            if (arrMainVisual[numMainVisual][0].length == 0) {
                numMainVisual = 0;
            }
            $('div#MainVisual div').html('<a href="'+arrMainVisual[numMainVisual][2]+'" target="_blank"><img src="' + pathMainVisual+arrMainVisual[numMainVisual][0] + '" alt="' + arrMainVisual[numMainVisual][1] + '" width="444" height="174" /></a>');
            numMainVisual++;
            if (numMainVisual >= arrMainVisual.length) {
                numMainVisual = 0;
            }
        }).fadeIn(1500, function(){
            imgMainVisual.src = pathMainVisual+arrMainVisual[numMainVisual][0] + "?" + (new Date().getTime());
        });
    }


    /**
     * Arrayオブジェクトにromdomメソッドを追加
     */
    Array.prototype.random = function () {
        this.sort(function (a,b) {
            var i = Math.ceil(Math.random()*100+1)%2;
            if(i == 0) {
                return -1;
            } else{
                return 1;
            }
        });
    }


    /**
     * トップページの処理
     */
    if($('body#Home').size() > 0) {
        var num = 0;
        var numShisetsu = 0;
        var imgMainVisual = new Image();
        var imgShisetsu = new Image();
        var pathMainVisual = '../../img/visual/';
        var pathShisetsu = '../../img/shisetsu/';
        var arrMainVisual;
        var arrShisetsu;
        var timerMainVisual;
        var timerShisetsu;
        var activeTab = 'Tab1';
        var margin_top = 0;
        var margin_left = 0;
        var img = new Image();
        var imgFirst = new Image();

        updateTab($('ul#GlobalNavi li img#Tab1'));
        $('div.Jimu div.Frame > ul > li:last-child').css('padding-bottom', '0');  
        $('div.Jimu div.Frame > ul > li:last-child ul li:last-child').css('padding-bottom', '0');  
        $('div.Jimu div.Frame > ul').flatHeights();  
        $.get(
            '../../img/visual/list.txt',
            function(data){
                arrMainVisual = $.csv()(data);
                numMainVisual = Math.floor(Math.random()*arrMainVisual.length);
                slideMainVisual(true);
            }
        );
        $.get(
            '../../img/shisetsu/list.txt',
            function(data){
                arrShisetsu = $.csv()(data);
                numShisetsu = Math.floor(Math.random()*arrShisetsu.length);
                imgFirst.src = pathShisetsu+arrShisetsu[numShisetsu][0] + "?" + (new Date().getTime());
                imgFirst.onload = function(){
                    if (imgFirst.width <= 0) {
                        margin_left = 0;
                        margin_top = 0;
                    } else {
                        margin_left = (214 - imgFirst.width > 0 && imgFirst.width <= 214) ? (214 - imgFirst.width)/2 : 0;
                        margin_top = (155 - imgFirst.height > 0 && imgFirst.height <= 155) ? (155 - imgFirst.height)/2 : 0;
                        slideShisetsu(true);
                    }
                }
            }
        );
    }

});

