/**
 * create Cinema in SAPO.namespace
 */
if(!SAPO.Cinema || typeof(SAPO.Cinema) == 'undefined') {
    SAPO.namespace('Cinema');
}


/**
 * Sapo.Cinema.enhance constructor
 */
SAPO.Cinema.enhance = function(options)
{
    this.init(options);
};


/**
 * Sapo.Cinema.enhance methods
 */
SAPO.Cinema.enhance.prototype = {

    baseUrl : '',
    defaultSearchTerms : 'filmes, pessoas e artigos',

    /**
     * init
     */
    init: function(args) {
        // configure
        if (args.baseUrl) {
            this.baseUrl = args.baseUrl;
        }
        // enhance through CSS
        $('container').addClassName('enhanced');
        // bindings
        this.autoSelect();
        this.enhanceLinks();
        this.enhanceSearchButton();
        this.scrollToTop();
    },

    /**
    * enhance auto-select input
    */
    autoSelect: function() {
        $$('input.autoSelect').each( function (el) {
            el.observe('click', function(ev) {
                el.select();
            } );
        } );
    },

    /**
     * enhance auto-submit forms / selects
     */
    autoSelect: function() {
        // hide submit button
        $$('form.autoSubmit .buttonOk').each( function(el) {
            el.addClassName('hidden');
        } );
        $$('input.autoSubmit').each( function(el) {
            el.observe('click', function (ev) {
                ev.target.form.submit();
            } );
        } );
        // suto submit selects (on change)
        $$('select.autoSubmit').each( function (el) {
            el.observe('change', function(ev) {
                ev.target.form.submit();
            } );
        } );
    },

    /**
     * enhance links
     */
    enhanceLinks: function() {
        var el = $('printMe');
        if (el) {
            el.addClassName('enhanced'); el.observe('click', function() {
                window.print(); }
            ); }
        el = $('sendBlogs');
        if (el) {
            $(el).observe('click', this.showShareBlogDialog );
        }
    },

    /**
     * enhance search buttons
     */
    enhanceSearchButton: function() {
        // bind search terms
        $$('input.searchTerms').each( function (el) {
            // default text
            if (!el.value) {
                el.value = this.defaultSearchTerms; }
            // bind blur
            el.observe('blur', function(ev) {
                if (!ev.target.value.length) {
                    ev.target.value = this.defaultSearchTerms;
                    ev.target.removeClassName('focus');
                }
            }.bind(this) );
            // bind focus
            el.observe('focus', function(ev) {
                if (ev.target.value == this.defaultSearchTerms) ev.target.value = '';
                ev.target.addClassName('focus');
            }.bind(this) );
        }.bind(this) );
    },

    /**
     * enhance search buttons
     */
    scrollToTop: function() {
        var el = $('page');
        if (el && el.hasClassName('scrollToTop')) {
            window.scroll(0,0);
        }
    },

    /*
    hit netscope
   */
    hitNetscope: function(){
        // Hit Netscope
      	if (typeof(w_counter) != 'undefined')
      		w_counter.count();
    },



    /**
     * validate
     */
    showShareBlogDialog : function(ev) {
        ev.stop();
        var options = { width : 500, height : 265, className : 'dialogWrapper' }
        SAPO.Widget.Dialog.alert('<div id=\'dialogShareBlog\'>' + $('shareBlogContainer').innerHTML + '</div>', false, options);
        $$('div#dialogShareBlog a').each(function(el){
            $(el).observe('click', function(ev){
                ev.stop(); 
                SAPO.Widget.Dialog.removeLayer();
            })
        });
    }
}


