window.addEvent('domready', function() {
    if (document.getElementById('search-right')) {
        setAutoRemove('search-right', 'Искать');
    }

    if (document.getElementById('button-close-eacw')) {
        $('button-close-eacw').addEvent('click', function(evt) { Modal.hide(); });
    }

    setAutoRemove('search-footer', 'Искать');
    if (document.getElementById('order-form')) {
        setAutoRemove('order-author', 'ФИО');
        setAutoRemove('order-author-email', 'Email');
        setAutoRemove('order-author-phone', 'Телефон');
        setAutoRemove('order-author-address', 'Адрес доставки');
        setAutoRemove('order-author-addinfo', 'Дополнительная информация');

        $('button-close-scw').addEvent('click', function(evt) { Modal.hide(); });

        $('goto-order-step-second').addEvent('click', function() {
            var tbody = $('order-table').getFirst('tbody');
            var ftr = tbody.getFirst('tr');
            var str = ftr.getNext('tr');
            if(str.hasClass('product_order')){
                $('order-step-first').addClass('none');
                $('order-step-second').removeClass('none');

                Modal.centerContent();
            }
        });

        $('goto-order-step-first').addEvent('click', function() {
            $('order-step-first').removeClass('none');
            $('order-step-second').addClass('none');

            Modal.centerContent();
        });

        $('send-order').addEvent('click', function() {
            var is_error = false;

            if ($('order-author').get('value') == 'ФИО' || $('order-author').get('value') == '') {
                $('order-author').setStyle('border-color', '#F00');
                is_error = true;
            }
            if ($('order-author-email').get('value') == 'Email' || $('order-author-email').get('value') == '') {
                $('order-author-email').set('value','');
                //$('order-author-email').setStyle('border-color', '#F00');
                //is_error = true;
            }
            if ($('order-author-phone').get('value') == 'Телефон' || $('order-author-phone').get('value') == '') {
                is_error = true;
                $('order-author-phone').setStyle('border-color', '#F00');
            }
            if ($('order-author-address').get('value') == 'Адрес доставки' || $('order-author-address').get('value') == '') {
                is_error = true;
                $('order-author-address').setStyle('border-color', '#F00');
            }
            if (($('order-author-addinfo').get('value') == 'Дополнительная информация') && !is_error) {
                $('order-author-addinfo').set('value', '');
            }
            if (is_error) return false;
            $('order-form').submit();
        });
    }

    ['button-view-shopping-cart', 'button-issue-order'].each(function(el) {
        if ($(el)) {
            $(el).addEvent('click', function(evt) {
                Modal.show('shopping-cart-window');
            });
        }
    });

    $$('.filter_select').each(function(item) {
        item.addEvent('change', function(evt) {
            var cat = this.get('value');
            if (cat != 0) {
                window.location.href = base_url + 'catalog/cat:'+cat+'/';
            } else {
                window.location.href = base_url + 'catalog/';
            }
        });
    });

    $$('.button_buy_green').each(function(item) {
        item.addEvent('click', function() {
            var id =  item.get('id');
            if (id) {
                var i = id.split('-').pop();
                app.Cart.add(i, 1);
            }
        });
        i = null;
    });

    if (document.getElementById('vedamarket-presentation-block')) {
        $('vedamarket-presentation-block').getElement('.block_headerless_title_action').addEvent('click', function(evt) {
            Cookie.write('vedamarket_presentation_block_hidden', 'true', { 'duration': 30 });

            new Fx.Morph('vedamarket-presentation-block', {
                'duration':	'short',
                'onComplete': function(el) {
                    el.destroy();
                }
            }).start({
                'opacity':		0.0,
                'height':		0.0,
                'margin-top':	0.0
            });
        });
    }
    if (document.getElementById('blog-presentation-block')) {
        $('blog-presentation-block').getElement('.block_headerless_title_action').addEvent('click', function(evt) {
            Cookie.write('blog_presentation_block_hidden', 'true', { 'duration': 30 });

            new Fx.Morph('blog-presentation-block', {
                'duration':	'short',
                'onComplete': function(el) {
                    el.destroy();
                }
            }).start({
                'opacity':		0.0,
                'height':		0.0,
                'margin-top':	0.0
            });
        });
    }
    if (document.getElementById('places-presentation-block')) {
        $('places-presentation-block').getElement('.block_headerless_title_action').addEvent('click', function(evt) {
            Cookie.write('places_presentation_block_hidden', 'true', { 'duration': 30 });

            new Fx.Morph('places-presentation-block', {
                'duration':	'short',
                'onComplete': function(el) {
                    el.destroy();
                }
            }).start({
                'opacity':		0.0,
                'height':		0.0,
                'margin-top':	0.0
            });
        });
    }
    $$('.video_player').each(function(item) {
        if (item.get('id')) {
            var is_sound = item.get('title').indexOf('mp3') != -1;
            swfobject.embedSWF(
                    'flash/player.swf',
                    item.get('id'),
                    '400',
                    item.get('title').indexOf('mp3') == -1 ? 160 : 21,
                    '9.0.0',
                    'flash/expressInstall.swf',
            {
                'file':			item.get('title'),
                'type':			is_sound ? 'sound' : 'video',
                'icons':		is_sound ? false : true,
                //'image':		'/flash/preview.jpg',
                //				'controlbar':	'none',
                'screencolor':	'#030303',
                //			    'fullscreen': 'false',
                //			    'smoothing': 'false',
                //			    'stretching': 'none',
                'volume':		'60',
                'skin':			'/flash/simple.swf'
                //				'bufferlength':	'5'
            },
            {
                'allowScriptAccess':	'always',
                'allowFullScreen':		'false',
                'scale':				'noscale',
                'salign':				'tl',
                'bgcolor':				'#030303'
            },
            {
                'id':					'index-videoplayer',
                'name':					'index-videoplayer',
                'align':				'middle'
            }
                    );
        }
    });

    if (document.getElementById('button-close-tcw')) {
        $('button-close-tcw').addEvent('click', function(evt) { Modal.hide(); });
    }

    if (document.getElementById('button-close-osw')) {
        $('button-close-osw').addEvent('click', function(evt) { Modal.hide(); });
    }

    if (document.getElementById('button-close-ocw')) {
        $('button-close-ocw').addEvent('click', function(evt) { Modal.hide(); });
    }

    $$('.change_view').each(function(el) {
        el.addEvent('click', function(evt) {
            if (evt.target.get('text') == 'Смотреть списком') {
                evt.target.getParent('.block_rounded').getElement('.table_view').addClass('none');
                evt.target.getParent('.block_rounded').getElement('.list_view').removeClass('none');
                evt.target.set('text', 'Смотреть таблицей');
            } else if (evt.target.get('text') == 'Смотреть таблицей') {
                evt.target.getParent('.block_rounded').getElement('.list_view').addClass('none');
                evt.target.getParent('.block_rounded').getElement('.table_view').removeClass('none');
                evt.target.set('text', 'Смотреть списком');
            }
        });
    });

    if (document.getElementById('button-show-subscribe-window') && document.getElementById('subscribe-window')) {
        $('button-show-subscribe-window').addEvent('click', function(evt) { Modal.show('subscribe-window'); });
        $('button-close-sw').addEvent('click', function(evt) { Modal.hide(); });
    }

    if (document.getElementById('button-show-afw') && document.getElementById('addfriend-window')) {
        setAutoRemove('addfriend-link', 'Ссылка');
        setAutoRemove('addfriend-description', 'Описание');

        $('button-show-afw').addEvent('click', function(evt) { Modal.show('addfriend-window'); });
        ['button-close-afw', 'button-addfrined-cancel'].each(function(el) {
            if (document.getElementById(el)) {
                $(el).addEvent('click', function(evt) {
                    $('addfriend-link').set('value', 'Ссылка');
                    $('addfriend-description').set('value', 'Описание');

                    Modal.hide();
                });
            }
        });
    }

    if (document.getElementById('button-show-aew') && document.getElementById('addevent-window')) {
        setAutoRemove('addevent-title', 'Название');
        setAutoRemove('addevent-date', 'Дата');
        setAutoRemove('addevent-city', 'Город');
        setAutoRemove('addevent-place', 'Место');
        setAutoRemove('addevent-link', 'Ссылка');
        setAutoRemove('addevent-description', 'Описание');
        setAutoRemove('addevent-tags','Теги');

        $('button-show-aew').addEvent('click', function(evt) { Modal.show('addevent-window'); });
        if (document.getElementById('button-show-aew2')) $('button-show-aew2').addEvent('click', function(evt) { Modal.show('addevent-window'); });
        ['button-close-aew', 'button-addevent-cancel'].each(function(el) {
            if (document.getElementById(el)) {
                $(el).addEvent('click', function(evt) {
                    $('addevent-title').set('value', 'Название');
                    $('addevent-tags').set('value', 'Теги');
                    $('addevent-place').set('value', 'Место');
                    $('addevent-description').set('value', 'Описание');

                    Modal.hide();
                });
            }
        });
    }

    if (document.getElementById('button-show-apw') && document.getElementById('addplace-window')) {
        setAutoRemove('addplace-title', 'Название');
        setAutoRemove('addplace-city', 'Город');
        setAutoRemove('addplace-address', 'Адрес');
        setAutoRemove('addplace-link', 'Ссылка');
        setAutoRemove('addplace-description', 'Описание');

        $('button-show-apw').addEvent('click', function(evt) { Modal.show('addplace-window'); });
        ['button-close-apw', 'button-addplace-cancel'].each(function(el) {
            if (document.getElementById(el)) {
                $(el).addEvent('click', function(evt) {
                    $('addplace-title').set('value', 'Название');
                    $('addplace-address').set('value', 'Адрес');
                    $('addplace-link').set('value', 'Ссылка');
                    $('addplace-description').set('value', 'Описание');

                    Modal.hide();
                });
            }
        });
    }

    $$('.autoremove').each(function(item) { setAutoRemove(item.get('id'), item.get('value')); });
    $$('.i_go').each(function(item) {
        item.addEvent('click', function(evt) {
            var id = $(evt.target).get('id').split('-').pop();
            new Request.JSON({
                'url':	base_url + 'events/igo.json',
                onComplete: function(response) {
                    $('event-go-'+id).destroy();
                    $$('.event_go_count_'+id).each(function(item) {
                        item.set('html', response);
                    });
                }
            }).post({
                'id_event':	id
            });
        });
    });

    if(document.getElementById('post-comment')) {
        $('post-comment').addEvent('click', function(evt){
            $(evt.target).getParent('form').submit();
        });
    }

    if (document.getElementById('calendar-action-expand')) {
        $('calendar-slider').slide('out');
        $('calendar-action-expand').addEvent('click', function(evt){
            if ($('calendar-slider').hasClass('none')) {
                $('calendar-slider').removeClass('none');
            }
            if ($(evt.target).hasClass('expand')) {
                $(evt.target).set('html','Скрыть');
                $(evt.target).removeClass('expand');
                $('calendar-slider').slide('in');
            } else {
                $(evt.target).set('html','Подробней');
                $(evt.target).addClass('expand');
                $('calendar-slider').slide('out');
            }
        });
    }
    if(document.getElementById('slider')) {
        var slider = new Slider({block_width: 120, block_selector: '.slider_item'});
    }

    if (document.getElementById('show-picture-window')) {
        $$('.slider_item').each(function(item) {
            item.addEvent('click', function(evt) {
                $('slider-full-image').set('src','');
                $('slider-full-image').set('src',item.getLast('span').get('html'));
                Modal.show('show-picture-window');
            });
        });
        $('button-close-spw').addEvent('click', function(evt) {
            Modal.hide();
        });
    }

    if (document.getElementById('i-like-it')) {
        $('i-like-it').addEvent('click', function(evt) {
            if($('i-like-it').hasClass('i_like_it_active')) {
            var id = $('i-like-it').getFirst('span').get('html');
            new Request.JSON({
                'url':  'places/i_like_it.json',
                'onComplete': function(res) {
                    if (res) {
                        $('i-like-it-counter').innerHTML++;
                        $('i-like-it').removeClass('i_like_it_active');
                    }
                }
            }).post({
                'id': id
            });
            }
        });
    }
});

function addOrderProduct(id, label, amount, price) {
    var newOP = new Element('tr', { 'class': 'product_order' }).adopt([
        new Element('input', {
            'type':		'hidden',
            'class':	'input_hidden',
            'name':		'order[products]['+id+'][id_product]',
            'value':	id
        }),
        new Element('td', {
            'class':	'name'
        }).grab(
                new Element('a', {
                    'title':	'Перейти к странице продукта',
                    'href':		'/',
                    'text':		label
                })
                ),
        new Element('td', {
            'class':	'amount'
        }).grab(
                new Element('input', {
                    'class':	'order_input_text',
                    'type':		'text',
                    'name':		'order[products]['+id+'][amount]',
                    'value':	amount,
                    'events': {
                        'keyup': onAmountOrderProductChange
                    }
                })
                ),
        new Element('td', {
            'class':	'price',
            'text':		price + ' грн'
        })
    ]).inject($('product-order-summary'), 'before');

    new Element('td', {
        'class':	'product_remove',
        'html':		'&nbsp;',
        'events':	{
            'click':	removeOrderProduct.bind(newOP)
        }
    }).inject(newOP, 'bottom');

    refreshOrder();

    newOP			= null;
}

function removeOrderProduct() {
    var id = this.getElement('input[type=hidden]').get('value');

    app.Cart.remove(this.getElement('input[type=hidden]').get('value'));
}

function onAmountOrderProductChange() {
    var id	= this.getParent().getParent().getElement('input[type=hidden]').get('value');

    app.Cart.setQuantity(id, this.get('value'));
    /*refreshOrder();*/
}

function refreshOrder() {
    var totalAmount	= 0;
    var totalPrice	= 0;

    $('order-table').getElements('input[type=text]').each(function(el) {
        if (!isNaN(el.get('value').toInt())) {
            totalAmount	+= el.get('value').toInt();
            totalPrice	+= el.get('value').toInt() * el.getParent().getNext().get('text').toInt();
        }
    });

    //	if (totalPrice < 150) {
    if (document.getElementById('product-order-shipping')) {
        $('product-order-shipping').inject($('product-order-summary'), 'before');
    } else {
        new Element('tr', {
            'id':		'product-order-shipping',
            'class':	'product_order_shipping'
        }).adopt([
            new Element('td', {
                'class':	'name',
                'text':		'Стоимость доставки 15грн'
            }),
            new Element('td', {
                'class':	'amount',
                'html':		'&nbsp;'
            }),
            new Element('td', {
                'class':	'price',
                'text':		'15 грн'
            }),
            new Element('td', {
                'class':	'product_remove',
                'html':		'&nbsp;'
            })
        ]).inject($('product-order-summary'), 'before');
    }

    totalPrice	+= 15;
    //	} else if (document.getElementById('product-order-shipping')) {
    //		$('product-order-shipping').destroy();
    //	}

    $('product-order-summary').getChildren()[1].set('text', totalAmount);
    $('product-order-summary').getChildren()[2].set('text', totalPrice + ' грн');
}

function subscribe() {
    $('subscribe-form').set('send', {
        'onComplete': function(res) {
            if (res) res = JSON.decode(res);
            $('subscribe-content').set('html', '<h2>Вы успешно подписались на рассылку</h2>');
        }
    });
    $('subscribe-form').send();
}

function removeMultiImage(uri, id, prodid, link) {

    new Request.JSON({
        'url':  uri,
        'onComplete': function(res) {
            if (res && $(id)) {
                $(id).destroy();
            }
        }
    }).post({
        'link': link
    });
}
