/*
    Autorem skryptu jest Marcin Baszczewski <http://baszczewski.pl>
*/

var order = new Class(
{
    Implements: [Events, Options],
    options: 
    {
    },
    update:function()
    {
	if ($('kurier').checked)
	{
	    $('order_delivery').set('html','25');
	}
	else
	{
	    if (parseInt($('order_basket').get('html'))>=300)
		$('order_delivery').set('html','0');
	    else if (parseInt($('order_basket').get('html'))>=150)
		$('order_delivery').set('html','11');
	    else
		$('order_delivery').set('html','7');
	}
	$('order_amount').set('html',parseInt($('order_delivery').get('html'))+parseInt($('order_basket').get('html')));
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element = $('order');

	if (!element)
	    return;

	var parent = this;
	$('kurier').addEvent('change',function()
	{
	    parent.update();
	    //alert($('kurier').checked);
	});
	parent.update();
    }
});

var welcome = new Class(
{
    Implements: [Events, Options],
    options: 
    {
    },
    hover:function(element)
    {
	element.getElements('img').each(function(item) 
	{
	    item.addEvents(
	    {
		'mouseenter':function()
		{
		    item.setOpacity(0.9);
		},
		'mouseleave':function()
		{
		    item.setOpacity(1);
		}
	    });
	});
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element = $('welcome');

	if (!element)
	    return;

	var baner = element.getFirst().getFirst();
	this.hover(baner);
	var designer = baner.getNext().getNext();
	this.hover(designer);
	var packets = element.getFirst().getNext().getFirst();
	this.hover(packets);
	var products = packets.getNext().getNext();
	this.hover(products);
    }
});

var categories = new Class(
{
    Implements: [Events, Options],
    options: 
    {
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element = $('categories');

	if (!element)
	    return;
	if (!element.getFirst().hasClass('big'))
	    return;

	element = element.getFirst().getFirst();
	element.getElements('span').each(function(item) 
	{
	    item.addEvents(
	    {
		'mouseenter':function()
		{
		    item.setStyle('background-color', '#a00200');
		    item.getFirst().getNext().getFirst().setStyle('color', '#fff');
		},
		'mouseleave':function()
		{
		    item.setStyle('background-color', '#fff');
		    item.getFirst().getNext().getFirst().setStyle('color', '#443320');
		}
	    });
	});
    }
});

var photos = new Class(
{
    Implements: [Events, Options],
    options: 
    {
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element1 = $('changephoto_1');
	var element2 = $('changephoto_2');

	if (!element1 || !element2)
	    return;

	element2.getElements('img').each(function(item) 
	{
	    item.addEvent('click',function()
	    {
		//alert(item.get('src'));
		var temp = item.get('src').replace('c.','a.');
		element1.getElements('img').each(function(item) 
		{
		    //alert(temp+' '+item.get('src'));
		    if ( temp==item.get('src') )
			item.getParent().set('styles',{'display':'block'});
		    else
			item.getParent().set('styles',{'display':'none'});
		    //alert(temp);
		    //element1.set('href',temp);
		    //element1.getFirst().set('src',temp);
		});
	    });
	});


    }
});

var baner = new Class(
{
    Implements: [Events, Options],
    options: 
    {
	timeout:4000
    },
    change:function(index)
    {
	var parent = this;
	parent.scrool_fx.start(index*parent.oldWidth,0);
	setTimeout(function()
	{
	      var temp = index+1;
	      if (temp==parent.count)
		  temp = 0;
	      parent.change(temp);
	},parent.options.timeout);
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element = $('baner');

	if (!element)
	    return;

	var count = 0;
	element.getElements('a').each(function(item) 
	{
	    count++;
	});
	if (count==0)
	    return;


	var oldWidth = element.getCoordinates().width;

	element.setStyle('width', oldWidth*count);
	
	var scrool_fx = new Fx.Scroll(element.getParent(),{offset: {'x':0,'y':0}});
	scrool_fx.set(0,0);

	this.scrool_fx = scrool_fx;
	this.element = element;
	this.count = count;
	this.oldWidth = oldWidth;

	this.change(0);
    }
});

var favorite = new Class(
{
    Implements: [Events, Options],
    options: 
    { 
    	element:'favorite',
	url:'http://baszczewski.pl/',
	title:'Marcin Baszczewski'
    },
    initialize: function(options)
    {
	this.setOptions(options);

	var element = $(this.options.element);
	if (!element)
	    return;

	if (Browser.Engine.trident)
	{
	    element.addEvent('click',function()
	    {
		window.external.addFavorite(this.options.url,this.options.title);
		return false;
	    });
	}
	else
	{
	    element.set('href',this.options.url);
	    element.set('rel','sidebar');
	    element.set('title',this.options.title);
	}
    }
});

var qarat = new Class(
{
    Implements: [Events, Options],
    initialize: function(options)
    {
	this.setOptions(options);
	
	this.order = new order();
	this.categories = new categories();
	this.photos = new photos();
	this.baner = new baner();
	this.favorite = new favorite({element:'favorite',url:'htpp://galeriaqarat.pl/',title:'Galeria Qarat'});
	this.welcome = new welcome();
    }
});