var current_opened_form = '';
var messageTimeout = false;
String.prototype.trim = function() {
	a = this.replace(/^\s+/, '');
	return a.replace(/\s+$/, '');
};	


var createPlayer = function(element_id, file, title, playtime){
		var stageW = 470;
		var stageH = 70;
		var cacheBuster = '1';
		var flashvars = {};
		var params = {};
		
		params.bgcolor = "#ffffff";
		params.allowfullscreen = "false";
		
		flashvars.way = file;
		flashvars.skin = 'orange';
		flashvars.time_seconds = playtime;
		flashvars.autoplay =0;
		flashvars.volume = 70;
		flashvars.comment = title;
		
		swfobject.embedSWF(BASE_URL + "files/flash/ump3player_500x70.swf?t="+cacheBuster, element_id, stageW, stageH, "9.0.124", BASE_URL + "files/javascripts/expressInstall.swf", flashvars, params);	
};

var createYoutube = function(element_id, key) {
	var stageW = 425;
	var stageH = 355;		
	var flashvars = {};
	var params = {};			
	params.bgcolor = "#ffffff";
	params.allowfullscreen = "false";
	swfobject.embedSWF('http://www.youtube.com/v/'+ key + '&ap=%2526fmt%3D18&showsearch=0&rel=0', element_id, stageW, stageH, "9.0.124", BASE_URL + "files/javascripts/expressInstall.swf", flashvars, params);		
}

var local_date = function(date) {
	var d = date.split('-');		
	return parseInt(d[2]) + ' ' + monthes_of[d[1]] + ' ' + d[0];
}

var setCookie = function( name, value, expires, path, domain, secure ) {

	var today = new Date();
	today.setTime(today.getTime());


	if ( expires ){
		expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
		( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
		( ( path ) ? ";path=" + path : "" ) +
		( ( domain ) ? ";domain=" + domain : "" ) +
		( ( secure ) ? ";secure" : "" );
}


var getCookie = function( check_name ) {

	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; 

	for ( i = 0; i < a_all_cookies.length; i++ ) {

		a_temp_cookie = a_all_cookies[i].split( '=' );
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
		if ( cookie_name == check_name ) {
			b_cookie_found = true;
			if ( a_temp_cookie.length > 1 ) {
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			return cookie_value;
			break;
		}

		a_temp_cookie = null;

		cookie_name = '';
	}

	if ( !b_cookie_found ) {
		return null;
	}
}


$(document).ready(function () {

	$('.lightbox').lightBox();

	$.fn.editionCallendar = function(settings){

			var settings = $.extend({
					container: '',
					month_name: '',
					year_name: '',
					edition: 0,
					current_day: 1,
					current_month: 1,
					current_year: 2000,
					max_year: 2009,
					min_year: 1990,
					link: ''
				}, settings);	

			var default_date = 	settings.current_year + '-' + settings.current_month;
			var current_month = settings.current_month;
			var current_year = settings.current_year;			
			var $el = $(this);

			var $year_list = $('<div style="display: none;" id="cl-year-list"></div>');
			
			list = '';
			for(y = settings.max_year; y >= settings.min_year; y--) {
				list += '<a href="#" rel=' + y + '>' + y + '</a>';
			}			
			
			$year_list.html(list);
			
			$year_list.appendTo('body');

			$year_list.click(function(e){
				var $t = $(e.target);
				if($t.is('a')) {
					var year = parseInt($t.attr('rel'));
					if(year!=current_year) {
						$(settings.year_name).html();
						current_year = year;
						$(settings.container).load(BASE_URL + 'files/issues/' + settings.edition + '/' + current_year + '/' + current_month + '.html', {}, updateStatus());
					}
					$(this).hide();

					return false;
				}
			});

			$(settings.year_name).click(function(){
				var pos = $(this).parent().position();
				$year_list.css({top: pos.top, left: pos.left});
				$year_list.show();
				return false;

			});
			

			var updateStatus = function(){
				
				$(settings.month_name).html(monthes[current_month-1]);
				
				$(settings.year_name).html(current_year);

				if(current_month==12 && current_year+1>settings.max_year) {
					$el.find('.next-arrow:first').hide();
				} else {
					$el.find('.next-arrow:first').show();
				}

				if(current_month==1 && current_year-1<settings.min_year) {
					$el.find('.prev-arrow:first').hide();
				} else {
					$el.find('.prev-arrow:first').show();
				}
			};

			updateStatus();

			$el.find('.prev-arrow:first').click(function(){				
				current_month -=1;					
				if(current_month < 1) {
					current_month = 12;
					current_year  -=1;
				}
				$(settings.container).load(BASE_URL + 'files/issues/' + settings.edition + '/' + current_year + '/' + current_month + '.html', {}, updateStatus());
				return false;

			});

			$el.find('.next-arrow:first').click(function(){				
				current_month+=1;				
				if(current_month > 12) {
					current_month = 1;
					current_year  +=1;
				}
				$(settings.container).load(BASE_URL + 'files/issues/' + settings.edition + '/' + current_year + '/' + current_month + '.html', {}, updateStatus());				
				return false;

			});
	};

	$.fn.bottomBanner = function(){
	   $(this).each(function(){
			var $el = $(this);
			var $link = $el.find('a:first');
			$link.css({display: 'block', width: '100%', height: 50});
			$el.css({'background-image': 'url(' + $link.find('img').attr('src') + ')', backgroundPosition: '0 0'});
			$link.html('');
			$el.show();
			$el.animate({backgroundPosition: '-10000px 0'}, 400000);
	   });
	};
	
	$('#bb-bottom-banner').bottomBanner();

	$.fn.mainNavigator = function(settings){
		var settings = $.extend({
				data: []
			}, settings);			
		$('#hl-text').click(function(){
			window.location.href = settings.data[(parseInt($(this).attr('rel'))-1)].link;
		});
		var interval = false;
		var setIntervalValue = function(){
			interval = window.setInterval(function(){			
						var $next = $el.find('a.on:first').next();			
						if($next.is('a'))
							$el.find('a.on:first').next().trigger('click');
						else
							$el.find('a:first').trigger('click');
							
					}, 10000);			
		}		
		var $el =$(this);
		$(this).click(function(e){
			var $t = $(e.target);
			if($t.is('img')) $t = $t.parent();

			if($t.is('a.hl-link') && !$t.hasClass('on')) {
				window.clearInterval(interval);
				setIntervalValue();
				var k = parseInt($t.attr('rel'))-1;
				$(this).css({
					'background': 'url(' + settings.data[k].image + ') no-repeat'
				});
				$(this).find('a.hl-link').removeClass('on');
				$t.addClass('on');
				$('#hl-text').attr('rel', $t.attr('rel'));
				$('#hl-text').html(settings.data[k].title);
				return false;
			}			
		});
		setIntervalValue();
		
	};

	$('.detach > a').click(function(){
		var cssclass = $(this).attr('class');
		switch(cssclass) {
			case 'sound':
				var w = 600;
				var h = 300;
				break;			
			case 'video':
				var w = 600;
				var h = 700;
				break;
			default:
				var w = 500;
				var h = 300;
				break;
		}
		popup_window = window.open($(this).attr('href'), "bbpopup",'status=0,toolbar=0,menubar=0,location=0,width=' + w + '&height=' + h);
		return false;
	});

	$.fn.articleGallery = function(settings){
		var settings = $.extend({
				image_visible: 4,
				thumblist: 'art-photos-thumbs'
			}, settings);		
				
		$(this).each(function(){			
			var $thumb = $('#' + settings.thumblist);			
			var $lis = $thumb.find('li');	
			var elementWidth = parseInt($thumb.find('li:first').width()) + 10;	
			
			$thumb.parent().css({width: (settings.image_visible*elementWidth), position: 'relative'});			
			var max_left = 	settings.image_visible*elementWidth - $lis.length*elementWidth;						
			
			$thumb.css({position: 'relative', width: ($lis.length*elementWidth), left: 0});
			var $panel = $(this).find('.panel:first');
			$lis.each(function(i){
				$(this).attr('rel', i);
			});
			
			$('#art-thumbs-prev').hide();

			$lis.click(function(){
				var $e = $(this);
				if(!$e.hasClass('on')) {
					var i = $e.attr('rel');
					$lis.removeClass('on');
					$e.addClass('on');
					$panel.find('.picture:visible').fadeOut();
					$panel.find('.picture:eq(' + i +')').fadeIn();										
					if(!$thumb.find('li.on:first').next().is('li')) $('#art-thumbs-next').hide(); else $('#art-thumbs-next').css('display', 'block');
					if(!$thumb.find('li.on:first').prev().is('li')) $('#art-thumbs-prev').hide(); else $('#art-thumbs-prev').css('display', 'block');
				}
			});

			$('#art-thumbs-next').click(function(){	
					if(!$thumb.is(':animated')) {
						var left_p = parseFloat($thumb.css('left'))-elementWidth;
						
						if(left_p >= max_left) {
							
							$thumb.animate({left: left_p});
						}
						$thumb.find('li.on:first').next().trigger('click');
						
					}
					return false;
			});

			$('#art-thumbs-prev').click(function(){
					if(!$thumb.is(':animated')) {
						var left_p = parseFloat($thumb.css('left'))+elementWidth;

						if(left_p <= 0) {
							$thumb.animate({left: left_p});
						}												
						$thumb.find('li.on:first').prev().trigger('click');
						$('#art-thumbs-next').css('display', 'block');
					}
					return false;
			});
		});

						
	};
	
	$('#art-photos').articleGallery();

	$('#art-popular-link').click(function(){
		$(this).parent().addClass('on');
		$('#art-commented-link').parent().removeClass('on');
		$('#art-popular-content').show();
		$('#art-commented-content').hide();
		return false;
	});

	$('#art-commented-link').click(function(){
		$(this).parent().addClass('on');
		$('#art-popular-link').parent().removeClass('on');
		$('#art-commented-content').show();
		$('#art-popular-content').hide();
		return false;
	});

	RegExp.escape = function(text) {
	  if (!arguments.callee.sRE) {
		var specials = [
		  '/', '.', '*', '+', '?', '|',
		  '(', ')', '[', ']', '{', '}', '\\'
		];
		arguments.callee.sRE = new RegExp(
		  '(\\' + specials.join('|\\') + ')', 'g'
		);
	  }
	  return text.replace(arguments.callee.sRE, '\\$1');
	}

	$.makeFormArray = function (obj)
	{
		var a = new Array();
		for(t=0; t < obj.length; t++)
		{
			value = $(obj[t]).val();
			name = 	$(obj[t]).attr('name');
			if(!$(obj[t]).attr("disabled"))
			{
				switch($(obj[t]).attr("type")){
					case 'checkbox':
						if($(obj[t]).attr("checked"))
							a.push({name: name, value: value});
						break;
					default:
						a.push({name: name, value: value});
				}
			}
		}

		a.push({name: 'ajax_request', value: 1});

		return a;
	}

	$('.list').hover(function() { 
		$(this).addClass('list_on');
	}, function() {
		$(this).removeClass('list_on');
	});

	$('.validate-form').submit(function() {
		var send = true;
		var error_message = '';
		var form = this;
		$('#error_form_message_div').parent().remove();
		
		$(this).find('input, textarea, select').removeClass('error_input');
		
		$(this).find('div.error_block').remove();

		$(this).find('.required').each(function(i){
			if(($(this).val()=='' || $(this).val()=='http://') && !$(this).attr("disabled") || ($(this).val()==$(this).attr('defaultValue') && !$(this).hasClass('nodef'))) {
				$(this).addClass('error_input');
				$error_message = $('<div class="error_block">' + messages.required + '</div>');				
				$error_message.insertBefore(this);
				send = false;
			}
		});

		re_email = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*\.(\w{2,}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/i;

		$(this).find('.validate-email').each(function() {
			if(!$(this).hasClass('error_input') && $(this).val()!='' &&  !$(this).val().match(re_email)) {
				$(this).addClass('error_input');
				$error_message = $('<div class="error_block">' + messages.email + '</div>');
				$error_message.insertBefore(this);
				send = false;
			}
		});

		if(!send) {				
		   message = $('<div class="message_div" style="display: none;"><div id="error_form_message_div" class="error">'+ messages.error +'</div></div>');
		   message.insertBefore(this);
		   message.fadeIn();			
		} else {
		   message = $('<div class="message_div" style="display: none;"><div id="error_form_message_div" class="wait">'+ message_loading +'</div></div>');
		   message.insertBefore(this);
		   message.fadeIn();

		   if($(this).hasClass('ajax-post')) {

				send = false;

				form_array = $(this).map(function(){ return $.makeFormArray(this.elements); });

				var forma = $(this);

				$.ajax({
				type: "POST",

				url: $(this).attr('action'),

				dataType: 'json',

				data: form_array,

				success: function(data) {
					if(data.result!= undefined && data.result) {
						if(data.redirect) {
							window.location.href = data.redirect;
						} else if(data.refresh) {
							window.location.href = window.location.href.replace(/\#.*$/, '');
						} else if(data.send) {
							send = true;
						}else {
							if(data.reload_link) {
								$('#' +$('#'+data.reload_link).attr('rel')).load($('#'+data.reload_link).attr('href') + '?ajax_request=1');
							} else {
								$(forma).map(function(){ return this.reset(); });
							}
						}
						if(data.eval) {						
							eval(data.eval);
						}
						if($('#feedback-ok').is('div')) {
							forma.hide();
							$('#feedback-ok').fadeIn();
							$('#error_form_message_div').parent().remove();
						} else if(data.message) {
							$('#error_form_message_div').removeClass('wait');
							$('#error_form_message_div').addClass('successful');
							$('#error_form_message_div').html(data.message);
							$('#error_form_message_div').parent().show();

							window.setTimeout(function() {								
								$('#error_form_message_div').slideUp(500, function(){$(this).parent().remove();});
							}, 7000);


						}

					} else if(data.result == undefined) {
						$('#error_form_message_div').removeClass('wait');
						$('#error_form_message_div').addClass('error');
						$('#error_form_message_div').html(messages.form_not_send);
					} else {
						if(data.eval) {							
							eval(data.eval);
						}
						error_message = data.message;
						$('#error_form_message_div').removeClass('wait');
						$('#error_form_message_div').addClass('error');
						$('#error_form_message_div').html(data.message);

					}
				},
				error: function() {
						$('#error_form_message_div').removeClass('wait');
						$('#error_form_message_div').addClass('error');					
					$('#error_form_message_div').html(messages.form_not_send);
				}

				});

		   }
		}
		return send;

	});

	$('.subscribe-buttons > a').click(function(){
		if($(this).hasClass('close')) {
			$(this).parent().parent().slideUp();
			$('#error_form_message_div').parent().remove();
		} else
			$(this).parent().parent().trigger('submit');
		return false;
	});



	$('textarea').focus(function(){
		if(this.value==this.defaultValue) this.value='';
	}).blur(function(){
		if(this.value=='') this.value=this.defaultValue;
	});

	$('.cv-form-button').click(function(){
		var form = $('#send-cv-' + $(this).attr('rel'));
		if(form.is(':visible')) {
			form.slideUp();
		} else {
			form.slideDown();
		}
		return false;
	});

	$('.print_button').click(function(){
		window.print();
		return false;
	});

	$('#send-friend-button').click(function(){
		$('#send-friend').toggleClass('friend-button-on');
		
		if(!$('#send-friend').hasClass('friend-button-on')) $('#error_form_message_div').parent().remove(); 

		return false;
	});

	$('#send-friend-close-button').click(function(){
		$('#send-friend').removeClass('friend-button-on');
		$('#error_form_message_div').parent().remove();
		return false;
	});

	$('#send-friend-send-button').click(function(){
		$('#send-friend > form:first').trigger('submit');		
		return false;
	});

	$('#comment-submit').click(function(){
		$('#comment-form').trigger('submit');
		return false;
	});

	$('.comment_answer-link').click(function(){
		$('#comments_parent_id').val($(this).attr('rel'));		
		$('#comment-answer-author').html($(this).parent().find('font.comment-author:first').html());
		$('#comment-answer-text').html($(this).parent().parent().find('p:first').html());
		$('#comment-header-answer').fadeIn();
		$('#comment-header-add').hide();
	});

	$('#add-comment-add-link').click(function(){
		$('#comments_parent_id').val(0);
		$('#comment-header-answer').hide();
		$('#comment-header-add').show();
				
	});	

	$('#comment-cancel-answer').click(function(){
		$('#comments_parent_id').val(0);
		$('#comment-header-answer').hide();
		$('#comment-header-add').show();
		return false;
	});

	$('.poll-data').click(function(e){	
		$('#poll-loading').show();
		$('#poll-options-p').load(BASE_URL + 'ajax/poll-vote',{poll: $('#poll-options-p').attr('rel'), answer: $(this).attr('rel')}, function(){$('.poll').css({position: 'static'}); $('#poll-results').hide();$('#poll-loading').hide();});
		return false;

	});

	$('#poll-results').click(function(){
		$('#poll-loading').show();

		$('#poll-options-p').load(BASE_URL + 'ajax/poll-results', {poll: $('#poll-options-p').attr('rel')}, function(){$('.poll').css({position: 'static'}); $('#poll-results').hide();$('#poll-loading').hide();});
		return false;
	});

	$('.poll-results-li').click(function(){
		if(!$(this).hasClass('on')) {
			$('.poll-results-li').removeClass('on');
			$(this).addClass('on');
		}
	}).hover(function(){$(this).addClass('over');}, function(){$(this).removeClass('over');
	});

	$('.search-form').submit(function(){
		if($('#searchterm').val()!='') {
			$(this).attr('action', $(this).attr('action') + $('#searchterm').val() + '/');
			return true;
		} else
			return false;
	});


	$('#searchopen').click(function(){
		$('#search-form-top').fadeIn();
		$('<div id="layout-background" style="width: 100%; position: absolute; height:' + $(document).height() + 'px; z-index: 2; top: 0; left: 0;"></div>').prependTo('body');
		$('#layout-background').click(function(){
			$(this).remove();
			$('#search-form-top').fadeOut();
		  
		});
		return false;
	});

	$('#search-button').click(function(){
		$('.search-form').trigger('submit');
		return false;
	});

	$('#expand-tags-link').click(function(){

		var $extend = $('#second-tags-list');

		if($extend.is(':visible')){
			setCookie('expand_tags', 0, 0, '/');
			$extend.hide();
		} else {
			setCookie('expand_tags', 1, 0, '/');			
			$extend.show();
		}

		return false;
	});

	$('#rate-dateselector').datepicker({
		dateFormat: 'yy-mm-dd',
		onSelect: function(dateText, inst) { window.location.href = BASE_URL + 'rates/' + dateText + '/'; $('#rate-dp-span').html(dateText);},
		monthNames: monthes
	});

	$('#rate-dp-to-date').datepicker({
		dateFormat: 'yy-mm-dd',
		onSelect: function(dateText, inst) { $('#rate-dp-to-date-link').html(local_date(dateText));},
		monthNames: monthes
	});

	$('#rate-dp-to-date-link').click(function(){			
		$('#rate-dp-to-date').trigger('focus');
		return false;
	});

	$('#rate-dp-from-date').datepicker({
		dateFormat: 'yy-mm-dd',
		onSelect: function(dateText, inst) { $('#rate-dp-from-date-link').html(local_date(dateText));},
		monthNames: monthes
	});

	$('#rate-dp-from-date-link').click(function(){		
		$('#rate-dp-from-date').trigger('focus');
		return false;
	});

	$('#rate-dp-span').click(function(){
		$('#rate-dateselector').trigger('focus');
		return false;
	});

	$('#fr-button').click(function(){
		if($('#rf-currency').val()!='') {
			var link = BASE_URL + 'rates/filter/' + $('#rf-currency').val() + '/';
			link += $('#rate-dp-from-date').val() + '/' +  $('#rate-dp-to-date').val();
			window.location.href = link;
		} else {			
		}
		return false;
	});

	$('#indexes-dp-span').click(function(){
		$('#indexes-dateselector').trigger('focus');
		return false;
	});


	$('#indexes-dateselector').datepicker({
		dateFormat: 'yy-mm-dd',
		onSelect: function(dateText, inst) { window.location.href = BASE_URL + 'indexes/' + dateText + '/'; $('#rate-dp-span').html(dateText);},
		monthNames: monthes
	});

	$('#in-button').click(function(){
		if($('#rf-index').val()!='') {
			var link = BASE_URL + 'indexes/filter/' + $('#rf-index').val() + '/';
			link += $('#rate-dp-from-date').val() + '/' +  $('#rate-dp-to-date').val();
			window.location.href = link;
		} else {			
		}
		return false;
	});


	$('#comment-form').submit(function(){
		var send = true;
		var error_message = '';
		var form = this;
		$('#error_form_message_div').parent().remove();
		
		$(this).find('div.error_block').remove();		

		$(this).find('input, textarea').removeClass('error_input');		

		$(this).find('.required').each(function(i){
			if($(this).val()=='') {
				$(this).addClass('error_input');
				$error_message = $('<div class="error_block">' + messages.required + '</div>');				
				$error_message.insertBefore(this);
				send = false;
			}
		});

		var $text = $('#comments_text');
		if(!$text.val().length > 300) {
			$text.addClass('error_input');
			$error_message = $('<div class="error_block">' + messages.tolongtext + '</div>');				
			$error_message.insertBefore(this);
			send = false;
		}
		if(!send) {				
			message = $('<div class="message_div" style="display: none;"><div id="error_form_message_div" class="error">'+ messages.error +'</div></div>');
			message.insertBefore(this);
			message.fadeIn();			
		} else {
			message = $('<div class="message_div" style="display: none;"><div id="error_form_message_div" class="wait">'+ message_loading +'</div></div>');
			message.insertBefore(this);
			message.fadeIn();
			send = false;

			form_array = $(this).map(function(){ return $.makeFormArray(this.elements); });
			var vcm = '';
			var $form = $(this);
			var id = new Date().getTime();
			$.ajax({
				type: "POST",
				url: BASE_URL + 'ajax/comments/vcm/?t='+id,
				dataType: 'json',
				data: form_array,
				success: function(data){
						if(data.result!= undefined && data.result && data.vcm!='') {								
							$.ajax({
							type: "POST",
							url: $form.attr('action') + '?vcm=' + data.vcm + '&t=' + id,
							dataType: 'json',
							data: form_array,
							success: function(data) {
								if(data.result!= undefined && data.result) {
									if(data.message) {
										$('#error_form_message_div').removeClass('wait');
										$('#error_form_message_div').addClass('successful');
										$('#error_form_message_div').html(data.message);
										$('#error_form_message_div').parent().show();

										window.setTimeout(function() {								
											$('#error_form_message_div').slideUp(500, function(){$(this).parent().remove();});
										}, 7000);
										window.location.href = window.location.href.replace(/\#.*$/, '');
										$form.map(function(){ return this.reset(); });
									}

								} else if(data.result == undefined) {
									$('#error_form_message_div').removeClass('wait');
									$('#error_form_message_div').addClass('error');
									$('#error_form_message_div').html(messages.form_not_send);
								} else {
									error_message = data.message;
									$('#error_form_message_div').removeClass('wait');
									$('#error_form_message_div').addClass('error');
									$('#error_form_message_div').html(data.message);
								}
							},
							error: function() {
								$('#error_form_message_div').removeClass('wait');
								$('#error_form_message_div').addClass('error');					
								$('#error_form_message_div').html(messages.form_not_send);
							}

							});				

						} else if(data.result == undefined) {
							$('#error_form_message_div').removeClass('wait');
							$('#error_form_message_div').addClass('error');
							$('#error_form_message_div').html(messages.form_not_send);
							return false;
						} else {
							error_message = data.message;
							$('#error_form_message_div').removeClass('wait');
							$('#error_form_message_div').addClass('error');
							$('#error_form_message_div').html(data.message);
							return false;
						}

				},				
				error: function() {
					$('#error_form_message_div').removeClass('wait');
					$('#error_form_message_div').addClass('error');					
					$('#error_form_message_div').html(messages.form_not_send);
					return false;
				}
			});		
		}
		return false;
	});
	$('.is_cell').hover(function(){
		$(this).addClass('on');
	}, function(){
		$(this).removeClass('on');
	});


	$('#search-article-by-date').datepicker({
		dateFormat: 'yy-mm-dd',
		onSelect: function(dateText, inst) { window.location.href = $('#search-article-link').val() + dateText + '/'},
		monthNames: monthes
	});


	$.fn.newsCallendar = function(settings){

			var settings = $.extend({
					container: '',
					month_name: '',
					year_name: '',
					edition: 0,
					current_day: 1,
					current_month: 1,
					current_year: 2000,
					max_year: 2009,
					min_year: 2009,
					link: ''
				}, settings);	

			var default_date = 	settings.current_year + '-' + settings.current_month;
			var current_month = settings.current_month;
			var current_year = settings.current_year;			
			var $el = $(this);

			var $year_list = $('<div style="display: none;" id="news-year-list"></div>');
			
			list = '';
			for(y = settings.max_year; y >= settings.min_year; y--) {
				list += '<a href="#" rel=' + y + '>' + y + '</a>';
			}			
			var updateNewsCalendar = function(month, year){
				month--;
				var c = '<table><tr class="h"><td>п</td><td>в</td><td>с</td><td>ч</td><td>п</td><td>с</td><td>в</td></tr>';
				
				var dteMonth = new Date(year, month);
				var intDaysInMonth = 28;
				var blnDateFound = false;

				while (!blnDateFound) {
					
					dteMonth.setDate(intDaysInMonth+1);
					
					var intNewMonth = dteMonth.getMonth();

					if (intNewMonth != month)
						blnDateFound = true;
					else
						intDaysInMonth++;
				}
				var d = new Date(year, month, 1);
				weekday_first = d.getDay() == 0 ? 7 : d.getDay();
				
				var weekday = weekday_first;
				
				c += '<tr>';
				for($z=1; $z < weekday_first; $z++) {
					c += '<td class="null"></td>';
				}
				var link = '';
				var default_date = 	settings.current_year + '-' +  + (settings.current_month < 10 ? '0' : '') + settings.current_month  + '-' + (settings.current_day < 10 ? '0' : '') + settings.current_day;				
				for(i=1; i<=intDaysInMonth; i++) {

					link = settings.link + year + '-' + ((month+1) < 10 ? '0' : '') + (month + 1) + '-' + (i < 10 ? '0' : '') + i;

					if(default_date  == link) {
						current = ' now';
						
					} else
						current = '';

					url = ' href="' + link + '/"';
					if(weekday<6)
						clas = ' class="workday' + current + '"';
					else
						clas = ' class="weekend' + current + '"';


					c += '<td' + clas + '><a' + url + '>' + i + '</a></td>';
					if(weekday==7) {
						c += '</tr>';
						weekday = 0;
					}
					weekday++;
				}

				c += '</table>';				
				$(settings.container).html(c);
				updateStatus();
			};

			$year_list.html(list);
			
			$year_list.appendTo('body');

			$year_list.click(function(e){
				var $t = $(e.target);
				if($t.is('a')) {
					var year = parseInt($t.attr('rel'));
					if(year!=current_year) {
						$(settings.year_name).html();
						current_year = year;						
						updateNewsCalendar(current_month, current_year);
					}
					$(this).hide();

					return false;
				}
			});

			$(settings.year_name).click(function(){
				var pos = $(this).parent().position();
				$year_list.css({top: pos.top, left: pos.left});
				$year_list.show();
				$('body').mouseup(function(e){
					$('body').unbind('mouseup');
					$year_list.hide();
				});
				return false;

			});
			

			var updateStatus = function(){
				
				$(settings.month_name).html(monthes[current_month-1]);
				
				$(settings.year_name).html(current_year);

				if(current_month==12 && current_year+1>settings.max_year) {
					$el.find('.next-arrow:first').hide();
				} else {
					$el.find('.next-arrow:first').show();
				}

				if(current_month==1 && current_year-1<settings.min_year) {
					$el.find('.prev-arrow:first').hide();
				} else {
					$el.find('.prev-arrow:first').show();
				}
			};

			updateStatus();

			$el.find('.prev-arrow:first').click(function(){				
				current_month -=1;					
				if(current_month < 1) {
					current_month = 12;
					current_year  -=1;
				}
				updateNewsCalendar(current_month, current_year);
				return false;

			});

			$el.find('.next-arrow:first').click(function(){				
				current_month+=1;				
				if(current_month > 12) {
					current_month = 1;
					current_year  +=1;
				}
				updateNewsCalendar(current_month, current_year);
				return false;

			});
	};



});

