jQuery.ajaxSetup({contentType: "application/x-www-form-urlencoded; charset=utf-8"});


$(document).ready(function(){

    // Form validation
    var period_div = $('#id_date_period, #id_mc_date_period');
    var scope_otc = $('#id_data_scope').find('option[value=otc]');
    scope_otc.hide();
    

    if ($('#id_date_from').length > 0) {
        if (! period_div.parents("form").find(".btn_calendar").parents("div").find('[class*=errors]').length > 0) {
            period_div.hide();
        }

        // W przypadku wybranych rynkow dostepne sa tylko niektore
        // zakresy danych
        var market_select = $('#id_market');
        var scope_select = $('#id_data_scope');
        var scope_map = {};
        var lang = window.location.href.indexOf('en/') != -1 ? 'en':'pl';

        if(lang == 'pl'){
            var common_item = [
                            ['', 'Wybierz...'],
   	        		        ['index', "Indeksy"],
   	        		        ['contract', "Poszczególne kontrakty"]	        		        
   	        		        ];
            var common_contract = [
                            ['', 'Wybierz...'],
                            ['contract', "Poszczególne kontrakty"]
                           ];
	        scope_map = {
                        'rdn': [
	        		        ['', 'Wybierz...'],
	        		        ['index', "Indeksy"],
	        		        ['contract', "Poszczególne kontrakty"],
	        		        ['otc', "Poszczególne kontrakty - OTC"]	        		        
	        		       ],
                        'rdb': common_contract,
                        'rpm': common_item,
                        'rtee': common_contract,
                        'rttauctions': common_contract,
                        'rtf': common_item,
                        'rue': common_item,
                        '': [['', 'Wybierz...']]
	        }
        }
        else
        {
            var common_item = [
                               	['', 'Select...'],
      	        		        ['index', "Indices"],
      	        		        ['contract', "Particular contracts"]	        		        
      	        		        ];
            var common_contract = [
                            ['', 'Select...'],
                            ['contract', "Particular contracts"]
                           ];
                           
   	        scope_map = {
   	        		'rdn': [
   	        		        ['', 'Select...'],
   	        		        ['index', "Indices"],
   	        		        ['contract', "Particular contracts"],
   	        		        ['otc', "Particular contracts - OTC"]	        		        
   	        		       ],
   	        		  'rdb': common_contract,
   	        		  'rpm': common_item,
   	        		  'rtee': common_contract,
   	        		  'rtf': common_item,
   	        		  'rue': common_item,
                      'rttauctions': common_contract,
   	        		  '': [['', 'Select...']]

   	        }
        }
        market_select.change(function () {
            var val = $(this).find(':selected').val();
            scope_select.html('');
            var items = scope_map[val];
            for(var i = 0; i < items.length; i++)
            {
            	var selected = i == 0? 'selected="selected"':'';
            	scope_select.append('<option '+selected+' value="'+items[i][0]+'">'+items[i][1]+'</option>');
            }
            scope_select.val('');
        });

        // Zakres czasowy; jesli wybrano "Zdefiniuj przedzial", pokaz 
        // pola do wpisania poczatku i konca przedzialu; w przeciwnym razie
        // ukryj pola do wpisania poczatku i konca przedzialu
        var period_select = $('#id_data_period,#id_mc-data_period');
        period_select.change(function () {

            var val = $(this).find(':selected').val();
            var controls = $(this).parents('form').find(".btn_calendar").parents("div")[0];
            controls = $(controls);
            if (val == 4) { // PERIOD_CUSTOM
                controls.show();
            } else {
                controls.hide();
            }
        });


    }
    
	$('input.btn_calendar').click(function(){
		// show calendar
		$('#calendar').remove();
		var parent = $(this).parent();
		parent.append('<div id="calendar"><div></div><a href="#" title="zamknij" class="close" onclick="closeCalendar(); return false;">zamknij x</a></div>');
		
		var el = parent.children('input.datetime');
		var calendar = $('#calendar');
		
		calendar.children('div').calendarLite({
			showYear: true,
			dateFormat: '{%yyyy}-{%mm}-{%dd}',
			months: ['Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'],
			days: ['Pn', 'Wt', 'Śr', 'Czw', 'Pt', 'Sb', 'Nd'],
			onSelect: function(date){
				el.val(date);
				calendar.remove();
				return false;
			}
		});
		
		//calendar.append('<a href="#" title="zamknij" class="close" onclick="closeCalendar(); return false;">zamknij x</a>');
	})
	
	// multiselect
	$('div.multiselect a.left_to_right').click(function(){
		var parent = $(this).parent().parent();
		var select_left = parent.find('div.left select');
		var select_right = parent.find('div.right select');
		
		select_right.append(select_left.children('option:selected'));
		return false;
	})
	
	$('div.multiselect a.right_to_left').click(function(){
		var parent = $(this).parent().parent();
		var select_left = parent.find('div.left select');
		var select_right = parent.find('div.right select');

		options = select_right.children('option:selected');
		options.each(function() {
		    $(this).removeAttr('selected')
		})		
		select_left.append(options);
		
		return false;
	})
	
	$('div.multiselect a.all_to_right').click(function(){
		var parent = $(this).parent().parent();
		var select_left = parent.find('div.left select');
		var select_right = parent.find('div.right select');
		
		options = select_left.children('option');
		options.each(function() {
		    $(this).attr('selected', true);
		})
		select_right.append(options);
		return false;
	})
	
	$('div.multiselect a.all_to_left').click(function(){
		var parent = $(this).parent().parent();
		var select_left = parent.find('div.left select');
		var select_right = parent.find('div.right select');

		options = select_right.children('option');
		options.each(function() {
		    $(this).removeAttr('selected');
		})
		select_left.append(options);
		return false;
	})
	
	$('input#submit2').click(function () {
	    $('div.right select option').each(function () {
	        $(this).attr('selected', true);
	    });
	});
	// RDN index Total volume check
	$('.fields .left_to_right, .fields .all_to_right, .fields .all_to_left, .fields .right_to_left').click(function(ev){

	   var $this = $(this);
	   var $options = $this.parents('.fields').find('.right option');
	   var $indexes = $('.indexes');
	   if($options.length == 1){
	        if($($options[0]).val() == "13")
	        {
	           $indexes.hide();
	           $(".indexes .all_to_left").click();
	        }
	   } else {
	        $indexes.show();
	   }
	});
});

/* functions */
function closeCalendar(){
	$('#calendar').remove();
}

