var SCREEN_WIDTH			= '';
var SCRENN_HEIGHT			= '';
var WINDOW_WIDTH			= $(window).width();
var WINDOW_HEIGHT			= $(window).width();
var BLOCK_FULL_WIDTH		= 800;
var BLOCK_FULL_HEGHT		= 300;
var BLOCK_MIN_WIDTH_LIMIT	= 300;
var BLOCK_MIN_HEIGHT_LIMIT	= 300;
var DEFAUL_BANK_ID			= 1;
var CONVERTOR_TMP_VAL		= 0.00000;

var EXCHANGE_MAX_WIDTH		= 900;
var EXCHANGE_MAX_HEIGHT		= 400;


var attrObj	= {};

$('document').ready(function(){
	$('.block').draggable({ stack: '.block', containment: 'body' });
	toggleBlock();
	initExchange(DEFAUL_BANK_ID);
});

function getMaxZindex()
{
	maxZindex    = 1;
	$('.block').each(function(){
	    if(parseInt($(this).css('z-index')) > maxZindex)
	    {
	        maxZindex    = parseInt($(this).css('z-index'));
	    }
	})
	
	return maxZindex;
}

function toggleBlock()
{
	//$('.block').css('position', 'absolute');
	//exchange move with 310px t right
	exchangLeft	= parseInt($('#exchange-block').offset().left);
	exchangTop	= parseInt($('#exchange-block').offset().top);
	$('#exchange-block').css('left', exchangLeft+310+'px');
	$('#exchange-block').css('top', exchangTop+'px');
	
	meteoLeft	= parseInt($('#meteo-block').offset().left);
	meteoTop	= parseInt($('#meteo-block').offset().top);
	$('#meteo-block').css('left', meteoLeft+'px');
	$('#meteo-block').css('top', meteoTop+'px');
	
	
	$('.block-expand').click(function(){
		thisExpandButtons	= $(this);
		var contentParent	= $(this).parents('.block-content');
		var blockParent		= $(this).parents('.block');
		var blockId			= blockParent.attr('id');
		var newZindex			= getMaxZindex() + 1;
		
		blockParent.css('z-index', newZindex);
		
		//init parameters
		if(typeof attrObj[blockId] == 'undefined' || !attrObj[blockId])
		{
			attrObj[blockId]			= {};
			attrObj[blockId]['width']	= parseInt(contentParent.css('width'));
			attrObj[blockId]['height']	= parseInt(contentParent.css('height'));
			attrObj[blockId]['left']	= parseInt(blockParent.css('left'));
			attrObj[blockId]['top']		= parseInt(blockParent.css('top'));
//			attrObj[blockId]['left']	= blockParent.offset().left;
//			attrObj[blockId]['top']		= blockParent.offset().top;
		}
		//expand
		if(parseInt(contentParent.css('width')) < BLOCK_MIN_WIDTH_LIMIT)
		{
//			attrObj[blockId]['left']	= blockParent.offset().left;
//			attrObj[blockId]['top']		= blockParent.offset().top;
			attrObj[blockId]['left']	= parseInt(blockParent.css('left'));
			attrObj[blockId]['top']		= parseInt(blockParent.css('top'));
			
			var expandWidth		= BLOCK_FULL_WIDTH;
			var expandHeight	= BLOCK_FULL_HEGHT;
			if(blockParent.attr('id') == 'exchange-block')
			{
				expandWidth	= EXCHANGE_MAX_WIDTH;
				expandHeight	= EXCHANGE_MAX_HEIGHT;
			}
			
			
			var leftPosition	= 0;
			if((WINDOW_WIDTH - expandWidth - 10) > 0)
			{
				leftPosition	= (WINDOW_WIDTH - expandWidth - 10) / 2;
			}
			

			
			contentParent.animate({
			    width: expandWidth,
			    height: expandHeight
			  }, 2000, function() {
			    // Animation complete.
				  thisExpandButtons.html('Inchide');
			  });
			blockParent.animate({
			    	left: leftPosition,
			    	top: '50'
			  	}, 2000, function() {
			    // Animation complete.
			});

		}
		// close
		else if(parseInt(contentParent.css('width')) > BLOCK_MIN_WIDTH_LIMIT)
		{
			contentParent.animate({
			    width: attrObj[blockId]['width'],
			    height: attrObj[blockId]['height']
			  }, 2000, function() {
			    // Animation complete.
				  thisExpandButtons.html('Detalii');
			  });
			blockParent.animate({
		    	left: attrObj[blockId]['left'],
		    	top: attrObj[blockId]['top']
		  	}, 2000, function() {
		    // Animation complete.
		});
		}
	});
}

var tempVal	=	0.00000;
var convertorLastChangedEl	= false;
function updateConverterValues(changedElement)
{
	if(typeof changedElement == "undefined" || changedElement == false)
	{
		if(!convertorLastChangedEl)
		{
//			return false;
			changedElement	= $('#rcv-0')[0];
		}
		else
		{
			changedElement	= convertorLastChangedEl;
		}
	}
	convertorLastChangedEl	= changedElement;
	thisVal	= changedElement.value;
	if(!isFloatNumber(tempVal))
	{
		tempVal = 0.00000;
	}
	if(thisVal == '')
	{
		thisVal = 0.00000;
		tempVal = 0.00000;
	}
	if(!isFloatNumber(thisVal))
	{
		changedElement.value = tempVal;
		return;
	}
	var bankId			= $('#exchange-bank-list').val();
	var convertorType	= $('input:radio[name=convertor-type]:checked').val();
	var currencyVal		= currencies[bankId];
	var thisId			= changedElement.id.split('-');
	var currencyId		= thisId[1];
	var coeff			= parseFloat(1 / currencyVal[currencyId][convertorType]);
	
	//alert(thisVal);
	for(key in currencyVal)
	{
		if(key != currencyId)
		{
			var newVal	= parseFloat( parseFloat(1 / currencyVal[key][convertorType]) * thisVal / parseFloat(coeff) ).toFixed(4);
			$('#rcv-'+key).val(newVal);
		} 
	}
}

function initCurrencyval(element)
{
	tempVal = element.value;
	if(element.value == '')
	{
		tempVal = 0.00000;
	}
}

function checkCurrencyValue(element)
{
	if(element.value=='')
	{
		element.value = tempVal;
	}
}

function isFloatNumber(S) {
    return /^\d+(\.\d*)?$/.test(S);
}

function initExchange(bankId)
{
	//if banca natinala
	if(bankId == 1)
	{
		$('.currency-type-rate').css('visibility', 'hidden');
		$('input:radio[name=convertor-type]').attr('disabled', 'disabled');
		$('.currency-rate-diff-up, .currency-rate-diff-down').removeClass('blackColor');
	}
	else
	{
		$('.currency-type-rate').css('visibility', 'visible');
		$('input:radio[name=convertor-type]').attr('disabled', false);	
		$('.currency-rate-diff-up, .currency-rate-diff-down').addClass('blackColor');
	}
	rates	= currencies[bankId];
	// update cuparare/vinzare values
	$('.excrv').addClass('exchange-center-val').html('-');
	$('.excc').attr('disabled','disabled').val('');
	for(currencyId in rates)
	{
		var cumparare	= parseFloat(rates[currencyId]['c']).toFixed(4);
		var vinzare		= parseFloat(rates[currencyId]['v']).toFixed(4);
		var convVal		= parseFloat(1/vinzare).toFixed(4);
		if(bankId == 1)
		{
			vinzare	= parseFloat(rates[currencyId]['v']) - parseFloat(yesterdayValues[currencyId]);
			vinzare	= vinzare.toFixed(4);
			if(vinzare > 0)
			{
				vinzare	= '+'+vinzare;
			}
			else
			{
				$('.rvv-'+currencyId).addClass('currency-rate-diff-down');
				$('.rvv-'+currencyId).removeClass('currency-rate-diff-up');
			}
		}
		
		$('.rvc-'+currencyId).removeClass('exchange-center-val').html(cumparare);
		$('.rvv-'+currencyId).removeClass('exchange-center-val').html(vinzare);
		$('#rcv-'+currencyId).attr('disabled',false).val(convVal);
		
	}
}

function hoverExchangeTableCell()
{
	$(".table-exchange-long tbody").delegate('td','mouseover mouseleave', function(e) {
	    if (e.type == 'mouseover') {
	    	$(this).addClass("active");
	      $(this).parent().addClass("hover");
	      collIndex	= $(this).index();
//	      $('.table-exchange-long tbody tr td:eq('+$(this).index()+')').addClass("hover");
	      	  $('.table-exchange-long tbody tr td').each(function(){
		    	  if($(this).index() == collIndex)
		    	  {
		    	      $(this).addClass('hover');
		    	  }
	    	  });
	    }
	    else {
	    	$(this).removeClass("active");
	      $(this).parent().removeClass("hover");
	      collIndex	= $(this).index();
//	      $('.table-exchange-long tbody tr td:eq('+$(this).index()+')').removeClass("hover");
      	  $('.table-exchange-long tbody tr td').each(function(){
	    	  if($(this).index() == collIndex)
	    	  {
	    	      $(this).removeClass('hover');
	    	  }
    	  });
	    }
	});
}
$(document).ready(function() 
    { 
        $(".table-exchange-long").tablesorter();
        hoverExchangeTableCell();
    } 
);
