/**

**/

function setMaximum(type,number) {
   	document.getElementsByName(type)[0].value = number;
   	try{
		calcualtePopulation();//Edit by Sasho: funkciata se izpolzva i na mesta kudeto dava greshka
	}catch(e){
	
	}
}

// --------------------------------------------
  
function setAll(maximum) {
    var unitsToSendTable = document.getElementById('units_to_send');
    var anchors = unitsToSendTable.getElementsByTagName('a');
    var aCount = anchors.length;
    var classToSearch = maximum ? 'set_max' : 'set_min';
    for (var i = 0; i < aCount; i++) {
        if (anchors[i].className == classToSearch) anchors[i].onclick();
    }
}

// --------------------------------------------

function calcualtePopulation() {
	var unitsToSendTable = document.getElementById('units_to_send');
	var inputs = unitsToSendTable.getElementsByTagName('input');
	var iCount = inputs.length;
	var pop = 0;
	for (var i = 0; i < iCount; i++) {
		pop += inputs[i].value * parseInt(inputs[i].getAttribute('pop'));
	}
	document.getElementById('pop_span').innerHTML = pop;
}

// --------------------------------------------

function ValidateForm(){
	document.form1.submit.disabled = true;
	var posted = document.form1.posted.value;
	if (posted == '0')
	{
	  document.form1.posted.value = '1';
	  document.form1.submit();
	  return true;
	}
	else return false;
}

// --------------------------------------------

// SCRIPT FUNCTION CLOCK
function MakeArrayday(size)
{
  this.length = size;
  for(var i = 1; i <= size; i++)
    this[i] = "";
  return this;
}

// --------------------------------------------

function MakeArraymonth(size)
{
  this.length = size;
  for(var i = 1; i <= size; i++)
    this[i] = "";
  return this;
}

// --------------------------------------------

var hours;
var minutes;
var seconds;
var timer=null;

function sClock()
{
  hours=document.getElementsByName('hours')[0].value * 1;;
  minutes=document.getElementsByName('minutes')[0].value * 1;;
  seconds=document.getElementsByName('seconds')[0].value * 1;;
  if(timer){clearInterval(timer);timer=null;}
  timer=setInterval("work();",1000);
}

// --------------------------------------------

function twoDigit(_v)
{
  if(_v<10)_v="0"+_v;
  return _v;
}

// --------------------------------------------

function work()
{
  if (!document.layers && !document.all && !document.getElementById) return;
  var runTime = new Date();
  var shours = hours;
  var sminutes = minutes;
  var sseconds = seconds;
  /*if (shours >= 12)
  {
    dn = "PM";
    shours-=12;
  }*/
  if (!shours) shours = 12;
  sminutes=twoDigit(sminutes);
  sseconds=twoDigit(sseconds);
  shours  =twoDigit(shours  );
  movingtime = ""+ shours + ":" + sminutes +":"+sseconds+"";
  if (document.getElementById)
    document.getElementById("theClock").innerHTML=movingtime;
  else if (document.layers)
  {
    document.layers.clock.document.open();
    document.layers.clock.document.write(movingtime);
    document.layers.clock.document.close();
  }
  else if (document.all)
    clock.innerHTML = movingtime;

  if(++seconds>59)
  {
    seconds=0;
    if(++minutes>59)
    {
      minutes=0;
      if(++hours>23)
      {
        hours=0;
      }
    }
  }
}
// CLOCK SCRIPT END

// --------------------------------------------

function toggleBlock(id) {
   var e = document.getElementById(id);
   if(e.style.display == 'block')
	  e.style.display = 'none';
   else{
	  e.style.display = 'block';
	  e.focus();
	}
}

// --------------------------------------------


function get_archive_msg(to_user,msg_id){
	var msg_id=parseInt(msg_id);
	var archive=document.getElementById('chatHistoryWrap_'+msg_id)
	if(archive){
		if(archive.style.display!='none')
			archive.style.display='none';
		else
			archive.style.display='block';
	}else{
		new Ajax.Request('msg_history.php',{
			method: 'post',
			parameters: {to_user: to_user,msg_id: msg_id},
			onSuccess: function(transport){
				var info=transport.responseText.split('#;#');
				var element=document.createElement('div');
				element.className='chatHistoryWrap';
				element.id='chatHistoryWrap_'+info[0];
				element.innerHTML=info[1];
				var insertAfterElement=document.getElementById('msg_item_'+msg_id);
				insertAfter(element,insertAfterElement);
			}
		});
	}
}

// --------------------------------------------
 
//create function, it expects 2 values.
function insertAfter(newElement,targetElement) {
	//target is what you want it to go after. Look for this elements parent.
	var parent = targetElement.parentNode;
	//if the parents lastchild is the targetElement...
	if(parent.lastchild == targetElement) {
		//add the newElement after the target element.
		parent.appendChild(newElement);
	} else {
		// else the target has siblings, insert the new element between the target and it's next sibling.
		parent.insertBefore(newElement, targetElement.nextSibling);
	}
}

// --------------------------------------------
var before_workers;
function set_workers(element_id, building_id){
    var building_id=parseInt(building_id);
    var percentage=parseInt($('slider_value').value);
    var population_used = parseInt($('population_used').value);
    new Ajax.Request('ajax_workers.php',{
        method: 'post',
        parameters: {b_id: building_id, percent: percentage},
        onSuccess: function(transport){
            var element=document.getElementById(element_id);
            var after_workers = parseInt($('slider_all').innerHTML);
            var difference = after_workers - before_workers;
            var old_pop = parseInt($('population_used').innerHTML);
            var new_pop = old_pop + difference;
            var income_worker = $('income_worker').value;
            $("population_used").update(new_pop);
           
            if(building_id > 0 && building_id < 5) {
                var New_income = $('slider_income').innerHTML;
                $("PerHour_"+building_id).innerHTML = New_income; 
            }
            if(building_id == 10) {
                var gold = parseInt($('HaveGold').innerHTML);
                var iron = parseInt($('HaveIron').innerHTML);
                var wood = parseInt($('HaveWood').innerHTML);
                var food = parseInt($('HaveFood').innerHTML);

                if(difference < 0) {
                    if(gold >= Math.abs(difference*2) && iron >= Math.abs(difference*1) && wood >= Math.abs(difference*1) && food >= Math.abs(difference*2)){
                        
                            $("HaveGold").innerHTML = gold - Math.abs(difference*2); 
                            $("HaveIron").innerHTML = iron - Math.abs(difference*1); 
                            $("HaveWood").innerHTML = wood - Math.abs(difference*1); 
                            $("HaveFood").innerHTML = food - Math.abs(difference*2);
                        element.innerHTML=transport.responseText;
                        toggleBlock('msg1');
                        showTooltip = 1;
                    }
                    else{
                        new Effect.Highlight('NeedResources', { startcolor: '#ffff99', endcolor: '#ff0000'});
                    }
                }
                else {
                        element.innerHTML=transport.responseText;
                        toggleBlock('msg1');
                        showTooltip = 1;
                }   
            }
            else{
                element.innerHTML=transport.responseText;
                toggleBlock('msg1');
                showTooltip = 1;
            }
            }
        
    });
}


// --------------------------------------------

function upgrade_info(element_id,building_id){
	var building_id=parseInt(building_id);
    
	new Ajax.Request('ajax_buildings.php',{
		method: 'post',
		parameters: {b_id: building_id,backto: 'overview.php'},
		onSuccess: function(transport){
			var element=document.getElementById(element_id);
			element.innerHTML=transport.responseText;

            
			if(element.style.display=='none') {
                //Effect.Appear(element_id, {duration: 0.5});
                toggleBlock(element_id);
            }    
            if((building_id > 0 && building_id < 5 ) || building_id == 10){
               var zoom_slider = $('zoom_slider');
               var dkoeff = $('dkoeff').value;
               var percentage = parseFloat($('slider_value').value); 
               var max_workers = $('max_workers').value;
               var allowed_workers = $('allowed_workers').value;
               var income_worker = $('income_worker').value;
               var bonus_race = $('bonus_race').value;
               var bonus_race_building_id = parseInt($('bonus_building_id').value);
               var start_value;
               var workers;
               var income;
               var difference;
               var gold = parseInt($('HaveGold').innerHTML);
               var iron = parseInt($('HaveIron').innerHTML);
               var wood = parseInt($('HaveWood').innerHTML);
               var food = parseInt($('HaveFood').innerHTML);
               before_workers =  parseInt($('slider_all').innerHTML);
               
               if(30 > percentage){
                    start_value = parseInt(percentage);
               }
               else {
                    start_value = 30;
               }
                       //alert(allowed_workers);
               new Control.Slider(zoom_slider.down('.handle'), zoom_slider, {
                  range: $R(0, 100),
                  values: $R(start_value, allowed_workers),
                  sliderValue: percentage,
                  minimum: start_value,
                  onSlide: function(value) {
                    $('slider_value').value = parseInt(value);
                    workers = value/100*max_workers;
                    income = parseInt(workers)*income_worker*dkoeff;
                    if(building_id != 10){
                       income = income + 25;
                    }
                    if(bonus_race_building_id == building_id)
                    	income = income*bonus_race;
                    $('slider_all').innerHTML =  Math.round(workers);
                    if(building_id == 10){
                        difference = before_workers - Math.round(workers);
                        if(difference > 0) { 
                        $("NeedGold").innerHTML = difference*2; 
                        $("NeedIron").innerHTML = difference*1; 
                        $("NeedWood").innerHTML = difference*1; 
                        $("NeedFood").innerHTML = difference*2;
                        }
                        else {
                            $("NeedGold").innerHTML = 0; 
                            $("NeedIron").innerHTML = 0; 
                            $("NeedWood").innerHTML = 0; 
                            $("NeedFood").innerHTML = 0;    
                        }
                        if(gold < difference*2 || iron < difference*1 || wood < difference*1 || food < difference*2){
                           //$("NeedResources").setStyle("NeedResources-Error"); 
                           $("NeedResources").setStyle("background-color : red;");
                        }
                        else{
                           //$("NeedResources").setStyle("NeedResources");
                           $("NeedResources").setStyle("background-color : #613810;");
                        }
                        $('slider_income').innerHTML =  income.toFixed(3) + ' %';
                    }
                    else{
                        $('slider_income').innerHTML =  Math.round(income);
                    }
                  },
                  onChange: function(value) {  
                    $('slider_value').value = parseInt(value); 
                    workers = (value/100)*max_workers;
                    income = parseInt(workers)*income_worker*dkoeff;;
                    if(building_id != 10){
                       income = income + 25;
                    }
                    if(bonus_race_building_id == building_id)
                    	income = income*bonus_race;
                    
                    $('slider_all').innerHTML =  Math.round(workers);
                    if(building_id == 10){
                        difference = before_workers - Math.round(workers);
                        if(difference > 0) {  
                            $("NeedGold").InnerHTML = difference*2; 
                            $("NeedIron").InnerHTML = difference*2; 
                            $("NeedWood").InnerHTML = difference*1; 
                            $("NeedFood").InnerHTML = difference*1; 
                        }
                        $('slider_income').innerHTML =  income.toFixed(3) + ' %';
                        
                    }
                    else{
                        $('slider_income').innerHTML =  Math.round(income);
                    }
                  }
                });
            }
		}
	});
}

// --------------------------------------------

function reloadImage(imgSender) {
    var imgsrc = imgSender.src;
    var pos = imgsrc.indexOf("#") < 0 ? imgsrc.length : imgsrc.indexOf("#");
    imgSender.src = imgsrc.substring(0, pos) + '#' + new Date();
}

// --------------------------------------------

function toggleBlock(id) {
   var e = document.getElementById(id);
   if(e.style.display == 'block')
      e.style.display = 'none';
   else{
      e.style.display = 'block';
      e.focus();
    }
}


// --------------------------------------------

function autoLoadRegistration() {
    window.setTimeout('document.getElementById(\'link1\').click();',100);
}

// -------------------------------------------- 

function get_global_news(value){
    value = parseInt(value);
    new Ajax.Updater('globalNewsList','ajax_news.php', {
        method: 'post',
        parameters: {ot: value}
    });
}

