var Call = {
	init: function(params){
		this.params = params;
		var $Ca = this;
		
		// information in popup
		$('body .callInPopup')
			.click(function(){
				$Ca.callTextInPopup(this, 400);
				return false;
			});

		// congratulations popup
		$('body .callCongratulationInPopup')
			.click(function(){
				$Ca.callTextInPopup(this, 650);
				return false;
			});
				

		// outlets in MAXIMA
		var sourceOutletsInMaxima = $('body div.callOutletsInMaxima');
		if(0 < sourceOutletsInMaxima.length)
			$Ca.callOutletsInMaxima(sourceOutletsInMaxima);

		// count downs
		var sourceCountDownds = $('body div.callCountDown')
		if(0 < sourceCountDownds.length)
			$Ca.callCountDown(sourceCountDownds);
	},

	callTextInPopup: function(obj, width){
		var $Ca = this;
		var $obj = $(obj);
		var item = $obj.attr('id');
		var uri = $Ca.params.webroot +'/c/json/' + encodeURI(item);

		if(item)
			$.getJSON(uri, function(data){
				$Ca._popup(width, data);
			});
	},
	
	callOutletsInMaxima: function($source){
		var $Ca = this;
		var uri = $Ca.params.webroot +'/c/json/maxima_outlets';

		$source.html('<div class="cities"></div><ul class="output"></ul>');

		$.getJSON(uri, function(data){
			var output = {cities:[], list:{}};
			var $cities = $('div.cities', $source);
			var $output = $('ul.output', $source);

			if(data)
				var c = 0;
				$.each(data, function(city,list){
					$city	= $('<a href="javascript:;" title="'+ city +'">'+ city +'</a>')
								.click(function(){
									$('a', $cities).removeClass('active');
									$(this).addClass('active');

									$output.empty();
									$.each(list, function(i,item){
										$output.append('<li>'+ item[0] + ', <strong>'+ item[1] +'</strong></li>')
									});

									return false;
								});
					
					$cities.append(c++ > 0 ? ', ' : null);
					$cities.append($city);

					if(city in {'Vilnius':null})
						$city.click();
				});

				$cities.append('.');
		});
	},

    popup: function(width, name){
        var $Ca = this;
        var uri = $Ca.params.webroot +'/c/json/' + encodeURI(name);

        $.getJSON(uri, function(data){
				$Ca._popup(width, data);
			});
    },

    _popup: function(width, data){
        $.blockUI({
            css: {
                left:'50%',
                marginLeft: -(width/2) + 'px',
                marginTop: '150px',
                position:'absolute',
                top:0,
                padding:0, 
                width: width + 'px', 
                textAlign:'left',  
                color:'#000',  
                border:0, 
                backgroundColor:'#fff',
                cursor:'default',
                zIndex:9999999
            },
            overlayCSS: {
                backgroundColor:'#000', 
                opacity:'0.3', 
                cursor: 'default',
                zIndex:999999
            },
            message: '<div id="addonPopup">'
            + '<a href="javascript:;" class="close" onclick="$.unblockUI();">'
            + '<img src="img/common/close.greenish.gif" alt="" />'
            + '</a>'
            + '<p>'
            + data
            + '</p>'
            + '</div>'
        });
    }
};