﻿/*
 * @author: Alexander Myadzel <aem@teletype.ru>
 * @modified: n/a
 *
 */

var Page = {

    oIntroText: null,
    oIntroTextBody: null,
    oIntroTextClicker: null,
    oIntroTextClickerLabel: null,
    
    bIntroTextHidden: false,

    hideIntro: function()
    {
        removeEvent(Page.oIntroTextClicker, 'click', Page.hideIntroText);
        addEvent(Page.oIntroTextClicker, 'click', Page.showIntroText);
        
        Page.oIntroTextBody.className = 'body js-none';
        Page.oIntroTextClickerLabel.innerHTML = 'Показать вводный текст';
        Page.bIntroTextHidden = true;
    },
    
    hideIntroText: function()
    {
        Page.hideIntro();
        Cookie.set('bIntroTextHidden', 'true');
    },
    
    showIntro: function()
    {
        removeEvent(Page.oIntroTextClicker, 'click', Page.showIntroText);
        addEvent(Page.oIntroTextClicker, 'click', Page.hideIntroText);
        
        Page.oIntroTextBody.className = 'body js-block';
        Page.oIntroTextClickerLabel.innerHTML = 'Скрыть вводный текст';
        Page.bIntroTextHidden = false;
    },

    showIntroText: function()
    {
        Page.showIntro();
        Cookie.set('bIntroTextHidden', 'false');
    },
    
    initIntroText: function()
    {
        try {
            Page.oIntroText = (getElementsByClassName('intro-text'))[0];
            Page.oIntroTextBody = (getElementsByClassName('body', Page.oIntroText))[0];
            Page.oIntroTextClicker = (getElementsByClassName('closer', Page.oIntroText))[0];
            Page.oIntroTextClickerLabel = (getElementsByClassName('pseudo-link', Page.oIntroTextClicker))[0];

            if (null != Cookie.get('bIntroTextHidden')) {
                if (Cookie.get('bIntroTextHidden') === 'true') {
                    Page.hideIntro();
                } else {
                    Page.showIntro();
                }
            } else {
                addEvent(Page.oIntroTextClicker, 'click', Page.hideIntroText);
            }
        } catch (oException) {}

    },

    init: function()
    {
        Page.initIntroText();
    }
    
}

addEvent(window, 'load', Page.init);