// JavaScript Document

// den v měsíci (uzávěrky)
var uzaverkaDen = 7;
var monthArray = new Array("leden", "únor", "březen", "duben", "květen", "červen", "červenec", "srpen", "září", "říjen", "listopad", "prosinec");
var monthArray2 = new Array("ledna", "února", "března", "dubna", "května", "června", "července", "srpna", "září", "října", "listopadu", "prosince");

var Mutace = "";
var SubKategoriesMutace = "";

var objednavka = new Array();
var objednavkaTemp = new Array("mutace", "cenaperline", "titulek", "text", "", "podbarveni", "cenacelkem");

// upravit při přenosu na ostrý provoz
var getCalculatorDataURL = '/getKalkulacka.php';

// array pro URL encoding
 var specChars = new Array();
  specChars["ě"] = "%EC";
  specChars["š"] = "%9A";
  specChars["č"] = "%E8";
  specChars["ř"] = "%F8";
  specChars["ž"] = "%9E";
  specChars["ý"] = "%FD";
  specChars["á"] = "%E1";
  specChars["í"] = "%ED";
  specChars["é"] = "%E9";
  specChars["Ě"] = "%CC";
  specChars["Š"] = "%8A";
  specChars["Č"] = "%C8";
  specChars["Ř"] = "%D8";
  specChars["Ž"] = "%8E";
  specChars["Ý"] = "%DD";
  specChars["Á"] = "%C1";
  specChars["Í"] = "%CD";
  specChars["É"] = "%C9";
  specChars["ú"] = "%FA";
  specChars["ů"] = "%F9";
  specChars["Ú"] = "%DA";
  specChars["Ů"] = "%D9";


function countUzaverkaDate() {
  var uzaverkaMonth = "";
  var today = new Date();
  var uzaverka = new Date();
  uzaverka.setDate(uzaverkaDen);

  //alert("uza: " + uzaverka.getTime() + "\ntod: " + today.getTime());
  //alert(uzaverka.getMonth());

  if(uzaverka.getTime() < today.getTime()) {
    var newMonth = ((uzaverka.getMonth() + 1)>11)?0:(uzaverka.getMonth() + 1);
    uzaverka.setMonth(newMonth);
  } 

  //alert(uzaverka.getMonth());

  return uzaverka;
}

function countUzaverkaMonth () {
  var uzaverka = countUzaverkaDate();
  var uzaverkaMonth = ((uzaverka.getMonth() + 1) > 11)?0:(uzaverka.getMonth() + 1);
  
  return monthArray[uzaverkaMonth];
}

/*
var Mutace = new Array("Ostrava", "Frýdecko", "Opavsko", "Brno");
var SubKategoriesMutace = new Array (
                                    new Array(90, "(135 000 výtisků)", "Prodej", "Koupě", "Práce", "Auto-Moto", "Cestování"),
                                    new Array(50, "(47 000 výtisků)", "Prodej", "Koupě", "Práce", "Auto-Moto", "Seznámení", "Zvířectvo"),  
                                    new Array(50, "(48 000 výtisků)", "Prodej", "Koupě", "Práce", "Auto-Moto", "Cestování"),  
                                    new Array(90, "(175 000 výtisků)", "Prodej", "Koupě", "Diskrétně", "Auto-Moto", "Cestování")
                                   );
*/

function createCalculator() {
  var test = Builder.node('div',{id: 'test', style: 'display: none; top:100px; left:200px; positiom:absolute;'});
  document.body.appendChild(test);
  
  new Ajax.Updater('test', getCalculatorDataURL,{
      method: 'get',
      asynchronous: true,
      evalScripts: true,
      onComplete: setTimeout(createCalculatorAfterAjax, 1000) 
    }  
  );

  return 0;
}

function createCalculatorAfterAjax() {
	if (!$('calculator')) {
    objednavka = new Array();
    objednavkaTemp = new Array("mutace", "cenaperline", "titulek", "text", "", "podbarveni", "cenacelkem");
	  
  	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:100px; left:200px;'});
		document.body.appendChild(dragableBox);

		var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Rubriky (1/5)</div>";
		calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
		calculatorText += "<div id=\"calculatorInfo\">VYPOČTĚTE SI CENU ZA JEDNO OTIŠTĚNÍ VAŠEHO INZERÁTU<br />";
    calculatorText += "Popis: Zde si můžete sami určit cenu za Váš inzerát v časopise PROGRAM. ";
    calculatorText += "Cena za 1 tiskový řádek je za jedno zveřejnění v Ostravě nebo Brně 100,- Kč; na Frýdecku nebo Opavsku 50,- Kč";
    calculatorText += " včetně 20% DPH.</div>";
		calculatorText += "<div id=\"calculatorForm\">Rubrika:";
	
		for (i = 0; i < Mutace.length; i ++) {
		  // onclick, save mutace name and call function for displaying categories
      calculatorText += "<div><label><input type=\"checkbox\" onclick=\"showhideBlock('sub_" + i + "');\"";
      calculatorText += " name=\"mutace\" value=\"" + i + "\"/>";
      calculatorText += "<span class=\"subPadTop\">" + Mutace[i] + "&nbsp;" + SubKategoriesMutace[i][1] + "</span></label></div>";   
      calculatorText += "<div class=\"subkategorie\" style=\"display: none;\" id=\"sub_" + i + "\">";
      // go thru all variants and display 
      for (j = 2; j < SubKategoriesMutace[i].length; j ++) {
          calculatorText += "<div class=\"subkategorie\"><label><input type=\"checkbox\" name=\"subcat_" + i + "\" value=\"" + SubKategoriesMutace[i][j] + "\" /><span class=\"subPadTop\">" + SubKategoriesMutace[i][j] + "</span></label></div>";
        }
        
      calculatorText += "</div><br />";
    }

    calculatorText += "<br />";
		
		calculatorText += "<div style=\"text-align: right;\">";
		calculatorText += "<input type=\"button\" onclick=\"countSubcategoriesAndNextStep();\" value=\">>\"/>&nbsp;</div></div>";
		$('calculator').innerHTML = calculatorText;

	  new Draggable('calculator');
		new Effect.Appear('calculator');
	}
	
	if(objednavka.length > 0) {
    newTop = $('calculator').getStyle('top');
    newLeft = $('calculator').getStyle('left');
    closeCalculator();

  	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:' + newTop + '; left:' + newLeft + ';'});
  	document.body.appendChild(dragableBox);

		var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Rubriky (1/5)</div>";
		calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
		calculatorText += "<div id=\"calculatorInfo\">VYPOČTĚTE SI CENU ZA JEDNO OTIŠTĚNÍ VAŠEHO INZERÁTU<br />";
    calculatorText += "Popis: Zde si můžete sami určit cenu za Váš inzerát v časopise PROGRAM. ";
    calculatorText += "Cena za 1 tiskový řádek je za jedno zveřejnění v Ostravě nebo Brně 90,- Kč; na Frýdecku nebo Opavsku 50,- Kč";
    calculatorText += " včetně 20% DPH.</div>";
		calculatorText += "<div id=\"calculatorForm\">Rubrika:";
	
		for (i = 0; i < Mutace.length; i ++) {
		  var mutaceSelected = 0;
		  // onclick, save mutace name and call function for displaying categories
      calculatorText += "<div><input type=\"checkbox\" onclick=\"showhideBlock('sub_" + i + "');\"";
      calculatorText += " name=\"mutace\" value=\"" + i + "\"";
      
      // test na checked
      if (objednavka.length > 0) {
        for (m = 0; m < objednavka.length; m++) {
          if (objednavka[m][0] == Mutace[i]) {
            calculatorText += " checked ";
            mutaceSelected = 1;
            break;
          }        
        }      
      }
      
      calculatorText += "/>";
      calculatorText += "<span class=\"subPadTop\">" + Mutace[i] + "&nbsp;" + SubKategoriesMutace[i][1] + "</span></div>";   
      calculatorText += "<div class=\"subkategorie\" style=\"";
      if (mutaceSelected == 0) {
        calculatorText += "display: none;";
      }
      calculatorText += "\" id=\"sub_" + i + "\">";
      // go thru all variants and display 
      for (j = 2; j < SubKategoriesMutace[i].length; j ++) {
          calculatorText += "<div class=\"subkategorie\"><input type=\"checkbox\" name=\"subcat_" + i + "\" ";
            
            if (objednavka.length > 0) {
              for (m = 0; m < objednavka.length; m++) {
                if (objednavka[m][0] == Mutace[i]) {
                  for (n = 0; n < objednavka[m][4].length; n++) {
                    if (SubKategoriesMutace[i][j] == objednavka[m][4][n]) {
                      calculatorText += " checked ";
                      break;
                    }
                  }
                 } 
              }              
            }
            
          calculatorText += "value=\"" + SubKategoriesMutace[i][j] + "\" /><span class=\"subPadTop\">" + SubKategoriesMutace[i][j] + "</span></div>";
        }
        
      calculatorText += "</div><br />";
    }

    calculatorText += "<br />";
		
		calculatorText += "<div style=\"text-align: right;\">";
		calculatorText += "<input type=\"button\" onclick=\"countSubcategoriesAndNextStep();\" value=\">>\"/>&nbsp;</div></div>";
		$('calculator').innerHTML = calculatorText;

    new Draggable('calculator');
    new Effect.Appear('calculator');	
  }

	return 0;
}

function closeCalculator() {
  $('calculator').remove(); 
  
  return 0;
}

// check first part of ad form
function countSubcategoriesAndNextStep() {
  var globalCount = 0;

  // pokud máme uložené objednávky, přidáme už vytvořené texty
  if (objednavka.length >0) {
    var regexp = /<br \/>/g;
       
    //alert(objednavka[0][3]);
    var tempTitle = objednavka[0][2];
    var tempText = objednavka[0][3].replace(/<br \/>/g, "\n");        
  } else {
    var tempTitle = "";
    var tempText = "";      
  }
  
  objednavka = new Array();

  for (i = 0; i < Mutace.length; i ++) {
    var mutaceName = "";
    var mutaceSub = new Array();
    var count = 0;
  
    var kategorieFields = document.getElementsByName('subcat_' + i);
    
    for (j = 0; j < kategorieFields.length; j++) {
      if (kategorieFields[j].checked == true) {
        count++;
        mutaceSub.push(kategorieFields[j].value);
      } 
    }
    
    if (count > 0) {
      // add mutace to objednavka
      //var objednavkaTemp = new Array("mutace", "cenaperline", "titulek", "text", "", "podbarveni", "cenacelkem");
      //var SubKategoriesMutace = new Array (
      //                          new Array(90, "(135 000 výtisků)", "Prodej", "Koupě", "Práce", "Auto-Moto", "Cestování"),
      objednavkaTemp[0] = Mutace[i];
      objednavkaTemp[1] = SubKategoriesMutace[i][0];
      objednavkaTemp[4] = mutaceSub;
      
      objednavkaTemp[2] = tempTitle;
      objednavkaTemp[3] = tempText;
            
      objednavka.push(objednavkaTemp);
      // set default objednavkaTemp
      objednavkaTemp = new Array("mutace", "cenaperline", "titulek", "text", "", "podbarveni", "cenacelkem");
    }
    
    globalCount += count;
  }

  if (globalCount == 0) {
    alert("Vyberte prosím místo, kde si přejete inzerát vložit.");
    return 0;
  }
  
 	new Effect.SlideUp('calculator', {afterFinish: textSlideDown});

  return 0;
}

function textSlideDown() {
	objednavka[0][3] = objednavka[0][3].replace(/<br \/>/g, "\n");

	newTop = $('calculator').getStyle('top');
	newLeft = $('calculator').getStyle('left');

	closeCalculator();

	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:' + newTop + '; left:' + newLeft + ';'});
	document.body.appendChild(dragableBox);
	
	var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Zadání a kalkulace (2/5)</div>";
	calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
	calculatorText += "<div id=\"calculatorInfo\">Rubrika: <br />";
  
  for (i = 0; i < objednavka.length; i ++) {
    calculatorText += "&nbsp;&nbsp;&nbsp;&nbsp;" + objednavka[i][0] + " (";
    
    for (j = 0; j < objednavka[i][4].length; j++) {
      calculatorText += objednavka[i][4][j] + ", " 
    }
    calculatorText = calculatorText.substr(0, calculatorText.length -2);
    calculatorText += ")<br />";
  } 
  
  calculatorText += "</div>";
	calculatorText += "<div id=\"calculatorForm\">Titulek (max. 25 znaků):<br />";
	calculatorText += "<input type=\"text\" id=\"titulek\" name=\"titulek\" size=\"40\" maxlength=\"25\" /><br />";
	calculatorText += "<br />Text (max. 12 řádků):<br/>";
	calculatorText += "<textarea id=\"text\" name=\"text\" rows=\"4\" cols=\"40\" wrap=\"hard\"></textarea><br /><br />";
	calculatorText += "<input type=\"checkbox\" name=\"zvyraznit\" id=\"zvyraznit\" /><span class=\"subPadTop\">Přejete si zvýraznit Váš inzerát podbarvením? (300,- Kč)</span>";	
	calculatorText += "<div style=\"text-align: right;\"><span id=\"calculatorCounter\"></span>&nbsp;&nbsp;";
	calculatorText += "<input type=\"button\" onclick=\"parseText(1);\" value=\"Spočítej\"/>&nbsp;</div></div>";
	calculatorText += "<br /><div id=\"calculatorView\" style=\"display: none;\"></div>";
	$('calculator').innerHTML = calculatorText;
		
	if(objednavka.length > 0) {
    $('titulek').value = objednavka[0][2];
    $('text').value = objednavka[0][3];
    if(objednavka[0][5] == 1) {
      $('zvyraznit').checked = true;
    }
  }
		
	Event.observe('text', 'keyup',
	 function(event) {
	   elt = Event.element(event);
	   diplayPosition();
	});

	Event.observe('titulek', 'keyup',
	 function(event) {
	   elt = Event.element(event);
	   $('titulek').value = ($('titulek').value).toUpperCase();
	   if ($('titulek').value.length > 25) {
      $('titulek').value.length = 25;
     }
	});
	
	new Draggable('calculator');
	new Effect.Appear('calculator');
	window.scroll(0,10); 

	return 0;
}

// changes new line char with br tag, and if no linewraping was applyied set br after 40 characters
function parseText(displayResult) {
  //new Effect.Fade('calculatorView');
  $('calculatorView').style.display = "none";
  
  if ($('titulek').value == "") {
    alert('Zadejte prosím titulek inzerátu.');
    return 0;
  }

  var lineCount = 1; // starts on 1 because of title
  strParseText = "";

  if ($('text').value.length > 0) {
    var parseLineText = $('text').value.split("\n");
  
    for (i = 0; i < parseLineText.length; i++) {
      lineCount += Math.ceil(parseLineText[i].length / 40);
      
      if (lineCount > 12) {
      	if (displayResult == 1) {
          alert('Vámi zadaný text je na více než 12 řádků, proto bude oříznut!');
        }
        
        break;
      }
      
      while (parseLineText[i].length > 40) {
        //alert("x> " + parseLineText[i]);
        strParseText += parseLineText[i].substr(0, 40) + "<br />";
        parseLineText[i] = parseLineText[i].substr(40, parseLineText[i].length - 40);
        //alert("y> " + parseLineText[i]);
      }
      
      strParseText += parseLineText[i] + "<br />";
    }
  }
  
  //alert(lineCount);
  // underline advertisement?
  var specConst = 0;
  if (document.getElementsByName('zvyraznit')[0].checked == true) {
    specConst = 300;
  }


	if (displayResult == 1) {
  		var displayText = "";
  		displayText += "<div>Náhled inzerátu:<br />";
  
      if (specConst == 0) {
        displayText += "<div style=\"font-weight: bold; padding: 5px;\">" + $('titulek').value + "</div>";
  		  displayText += "<div style=\"padding: 5px;\">" + strParseText + "</div>";
  		} else {  		
  		  displayText += "<div style=\"font-weight: bold; background: #ffff99; padding: 5px;\">" + $('titulek').value + "</div>";
  		  displayText += "<div style=\"background: #ffff99; padding: 5px;\">" + strParseText + "</div>";
  		}
  
      displayText += "<br /><b>Cena inzerátu za jedno zveřejnění: <br />";
      
      for (i = 0; i < objednavka.length; i ++) {
        displayText += "&nbsp;&nbsp;&nbsp;&nbsp;" + objednavka[i][0] + " (";
    
        for (j = 0; j < objednavka[i][4].length; j++) {
          displayText += objednavka[i][4][j] + ", " 
        }
        displayText = displayText.substr(0, displayText.length -2);
        displayText += ") = " + objednavka[i][4].length*((lineCount * objednavka[i][1]) + specConst) + ",- Kč<br />";
      }
      
  		displayText += "<div style=\"text-align: right;\"><br /><input type=\"button\" value=\"<<\" onclick=\"createCalculatorAfterAjax();\" /><input type=\"button\" value=\">>\" onclick=\"showUzaverkaInfo();\" /></div>";
  	  displayText += "</div>";

		  $('calculatorView').innerHTML = displayText;
  		new Effect.SlideDown('calculatorView');
	} else {
  		var displayText = "";
  		displayText += "<div>Náhled inzerátu:<br />";
      if (specConst == 0) {
        displayText += "<div style=\"font-weight: bold; padding: 5px;\">" + $('titulek').value + "</div>";
  		  displayText += "<div style=\"padding: 5px;\">" + strParseText + "</div>";
  		} else {  		
  		  displayText += "<div style=\"font-weight: bold; background: #ffff99; padding: 5px;\">" + $('titulek').value + "</div>";
  		  displayText += "<div style=\"background: #ffff99; padding: 5px;\">" + strParseText + "</div>";
  		}
      displayText += "</div>";
	}

  for (i = 0; i < objednavka.length; i ++) {
    objednavka[i][6] = objednavka[i][4].length * ((lineCount * objednavka[i][1]) + specConst);
    objednavka[i][2] = $('titulek').value;
    objednavka[i][3] = strParseText;
    objednavka[i][5] = (specConst == 0)?"ne":"ano";
  }
  
 	return displayText;
}

// returns cursor positions, or selection start and end
function getCursorPos(elm)
{
    if (typeof elm.selectionStart != "undefined" && typeof elm.selectionEnd != "undefined")
        return {begin: elm.selectionStart, end: elm.selectionEnd};

    if (document.selection && document.selection.createRange)
    {
        elm.focus ();

        var selRange = document.selection.createRange ().duplicate ();

        // check if element contains selected text
        if (selRange.parentElement () != elm)
            return {begin: "n/a", end: "n/a"};

        var count = 0;

        while (selRange.moveStart ("character", -1))
        {
            if (selRange.htmlText.charAt (0) == "<") break;
            ++count;
        }

        // check if unavailable
        if (selRange.htmlText.length == 0)
            return {begin: "n/a", end: "n/a"};

        return {begin: count, end: selRange.text.length};
    }

    return {begin: null, end: null};
}

function diplayPosition() {
	objPosition = getCursorPos($('text'));
	end = objPosition.end;

	if (end == $('text').value.length) {
	    var parseLineText = $('text').value.split("\n");

		$('calculatorCounter').innerHTML = "Do konce řádku zbývá:" + (40 - parseLineText[parseLineText.length - 1].length);
		if ((40 - parseLineText[parseLineText.length - 1].length) <= 0) {
			$('text').value += "\n";
		}
	} else {
		$('calculatorCounter').innerHTML = "";
	}

	return 0;
}

function showUzaverkaInfo() {
  // kontrola na prázdný titulek
  if ($('titulek').value == "") {
    alert('Zadejte prosím titulek inzerátu.');
    return 0;
  }
   
  inzerat = parseText(0);
     
	new Effect.SlideUp('calculator', {afterFinish: uzaverkaSlideDown});

  return 0;
}

function uzaverkaSlideDown() { 
	newTop = $('calculator').getStyle('top');
	newLeft = $('calculator').getStyle('left');

	closeCalculator();

	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:' + newTop + '; left:' + newLeft + ';'});
	document.body.appendChild(dragableBox);

	var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Informace (3/5)</div>";
	calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
	calculatorText += "<div id=\"calculatorInfo\"><b>Uzávěrka nejbližšího vydání pro měsíc " + countUzaverkaMonth() + " je " + countUzaverkaDate().getDate() + ". " + monthArray2[countUzaverkaDate().getMonth()] + ".</b><br /><br />";
	calculatorText += "<i>Upozorňujeme, že řádková inzerce je zveřejněna až po zaplacení. ";
	calculatorText += "Pokud nebude inzerát do termínu uzávěrky uhrazen, vyhrazuje si vydavatel právo zařadit inzerát do nejbližšího následujícího vydání. <br /><br />";
	calculatorText += "Vydavatel si vyhrazuje právo nezveřejnit inzerát v rozporu s dobrými mravy, inzerát, který odporuje českým zákonům ";
	calculatorText += "a inzerát, který by poškodil dobré jméno vydavatele.";
	calculatorText += "Inzeráty erotické povahy, prodej starožitností a nemovitostí je nutné sjednat osobně v redakci.</i>";
	calculatorText += "</div>";
	calculatorText += "<div style=\"text-align: right; padding-top: 10px;\">&nbsp;&nbsp;";
	calculatorText += "<input type=\"button\" onclick=\"new Effect.SlideUp('calculator', {afterFinish: textSlideDown});\" value=\"<<\"/><input type=\"button\" onclick=\"createSendForm();\" value=\">>\"/>&nbsp;</div><br />";
	// před textslidedown provézt záměnu znaků v textu     var tempText = objednavka[0][3].replace(/<br \/>/g, "\n"); 
	
	$('calculator').innerHTML = calculatorText;

	new Draggable('calculator');
	new Effect.Appear('calculator');

  return 0;
}

function createSendForm() {
	new Effect.SlideUp('calculator', {afterFinish: sendFormSlideDown});

	return 0;
}

function sendFormSlideDown(obj) {
  inzerat = objednavka[0][3];
	newTop = $('calculator').getStyle('top');
	newLeft = $('calculator').getStyle('left');

	closeCalculator();

	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:' + newTop + '; left:' + newLeft + ';'});
	document.body.appendChild(dragableBox);

	var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Způsob platby (4/5)</div>";
	calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
	calculatorText += "<div id=\"calculatorInfo\">Náhled inzerátu:<br />";
  
  if (objednavka[0][5] == "ne") {
        calculatorText += "<div style=\"font-weight: bold; padding: 5px;\">"  + objednavka[0][2] + "</div>";
  		  calculatorText += "<div style=\"padding: 5px;\">" + objednavka[0][3] + "</div>";
  		} else {  		
  		  calculatorText += "<div style=\"font-weight: bold; background: #ffff99; padding: 5px;\">" + objednavka[0][2] + "</div>";
  		  calculatorText += "<div style=\"background: #ffff99; padding: 5px;\">" + objednavka[0][3] + "</div>";
  		}
  
	calculatorText += "<br />Váš inzerát bude zveřejněn v měsíci: " + countUzaverkaMonth() + ", v rubrikách:<b><br />";
  
  var totalPrize = 0;
  for (i = 0; i < objednavka.length; i ++) {
        calculatorText += "&nbsp;&nbsp;&nbsp;&nbsp;" + objednavka[i][0] + " (";
    
        for (j = 0; j < objednavka[i][4].length; j++) {
          calculatorText += objednavka[i][4][j] + ", " 
        }
        calculatorText = calculatorText.substr(0, calculatorText.length -2);
        calculatorText += ")<br />";
        
        totalPrize += objednavka[i][6];
      }
  
  calculatorText += "</b><br />Celková cena za jedno otištění je: <b>" + totalPrize + ",- Kč</b> včetně 20% DPH<br /><br />";
  calculatorText += "<b>Děkujeme za Vaši objednávku.</b></div><br />";
  	   
	calculatorText += "<div id=\"calculatorForm\">Možnosti platby: <br />";
	calculatorText += "<label><input type=\"checkbox\" value=\"1\" name=\"slozenkou\" id=\"slozenkou\" onclick=\"changedPayment('slozenkou');\" checked=\"checked\" /><span class=\"subPadTop\"> Složenkou</span></label><br />";
	calculatorText += "<label><input type=\"checkbox\" value=\"1\" name=\"prevodem\" id=\"prevodem\" onclick=\"changedPayment('prevodem');\" /><span class=\"subPadTop\"> Převodem z účtu (proforma faktura)</span></label><br />";
	calculatorText += "<label><input type=\"checkbox\" name=\"sDD\" value=\"1\" name=\"\" id=\"sDD\" onclick=\"changedPayment('sDD');\" /><span class=\"subPadTop\"> Přeji si zaslat daňový doklad</span></label><br /><br />";
	
	calculatorText += "<table style=\"font-size: 10px;\"><tr><td>Jméno a příjmení: </td><td>";
	calculatorText += "<input type=\"text\" id=\"jmeno\" name=\"jmeno\" size=\"30\" maxlenght=\"40\" style=\"background: #FEFE99;\" />!";
	calculatorText += "</td></tr><tr><td>Firma: </td><td>";
	calculatorText += "<input type=\"text\" id=\"firma\" name=\"firma\" size=\"30\" maxlenght=\"40\" />";
	calculatorText += "</td></tr><tr><td>Email: </td><td>";
	calculatorText += "<input type=\"text\" id=\"email\" name=\"email\" size=\"30\" maxlenght=\"40\" style=\"background: #FEFE99;\" />";
	calculatorText += "</td></tr><tr><td>Ulice (č.p.): </td><td>";
	calculatorText += "<input type=\"text\" id=\"ulice\" name=\"ulice\" size=\"30\" maxlenght=\"40\" style=\"background: #FEFE99;\" />";
	calculatorText += "</td></tr><tr><td>Město: </td><td>";
	calculatorText += "<input type=\"text\" id=\"mesto\" name=\"mesto\" size=\"30\" maxlenght=\"40\" style=\"background: #FEFE99;\" />";	

	//calculatorText += "</td></tr><tr><td>Adresa: </td><td>";
	//calculatorText += "<textarea id=\"adresa\" name=\"adresa\" cols=\"30\" rows=\"4\"></textarea>";
	
	calculatorText += "</td></tr><tr><td>PSČ: </td><td>";
	calculatorText += "<input type=\"text\" id=\"psc\" name=\"psc\" size=\"10\" maxlenght=\"40\" style=\"background: #FEFE99;\" />";
	calculatorText += "</td></tr><tr><td>IČO: </td><td>";
	calculatorText += "<input type=\"text\" id=\"ico\" name=\"ico\" size=\"30\" maxlenght=\"40\" />";
	calculatorText += "</td></tr><tr><td>DIČ: </td><td>";
	calculatorText += "<input type=\"text\" id=\"dic\" name=\"dic\" size=\"30\" maxlenght=\"40\" />";
	calculatorText += "</td></tr><tr><td>Telefon: </td><td>";
	calculatorText += "<input type=\"text\" id=\"tel\" name=\"tel\" size=\"30\" maxlenght=\"40\" />";
	calculatorText += "</td></tr></table><br />Žlutě označena políčka jsou povinné údaje.";

	calculatorText += "<div id=\"calculatorInfo\" style=\"font-weight: bold; text-align: center;\">Dle zákona pro ochranu osobních údajů č. 101/2000 Sb. naše organizace garantuje, že Vaše osobní data jsou považována za přísně důvěrná a nebudou nikdy prodána nebo převedena na jinou společnost.</div>";
	
  calculatorText += "<div style=\"text-align: right; padding-top: 10px;\">&nbsp;&nbsp;";
	calculatorText += "<input type=\"button\" onclick=\"new Effect.SlideUp('calculator', {afterFinish: uzaverkaSlideDown});\" value=\"<<\" /><input type=\"button\" onclick=\"infoSlideUp();\" value=\">>\"/>&nbsp;</div></div>";
	$('calculator').innerHTML = calculatorText;

	new Draggable('calculator');
	new Effect.Appear('calculator');

	return 0;
}

function infoSlideUp() {
  // test na email 
  if ($('email').value == '') {
    alert('Zadejte prosím svůj email.');
    return 0;  
  }
  
  // test na jméno 
  if ($('jmeno').value == '') {
    alert('Zadejte prosím své jméno a příjmení.');
    return 0;  
  }
  
  if (($('ulice').value == '') || ($('mesto').value == '') || ($('psc').value == '')) {
    alert('Zadejte prosím adresu.');
    return 0;  
  }
  
  if (($('prevodem').checked == true) && ($('ico').value == '') || ($('sDD').checked == true) && ($('ico').value == '')) {
  	alert('Zadejte prosím IČO.');
    return 0;
  }
  
  new Effect.SlideUp('calculator', {afterFinish: showMoney});

}

function showMoney(obj) {
  // odeslat objednávky i s variabilním symbolem do db a odeslat maily
  var datum = new Date();
  var varSymbol = datum.getTime();
  varSymbol = String(varSymbol).substr(String(varSymbol).length - 10, 10);
  
  //alert('1');
  var email = $('email').value;
  var jmeno = $('jmeno').value;
  var firma = $('firma').value;
  var adresa = $('ulice').value + ' - ' + $('mesto').value;
  var psc = $('psc').value;
  var ico = $('ico').value;
  var dic = $('dic').value;
  var tel = $('tel').value;
	if ($('slozenkou').checked == true) {
		var slozenkou = 1;
		var prevodem = 0; 
  	var platba = 1;
	} else {
		var slozenkou = 0;
		var prevodem = 1;
		var platba = 0;
	} 
	
	if ($('sDD').checked == true) {
		var doklad = 1;
	} else {
		var doklad = 0;
	} 
  //alert('2');

  for (i = 0; i < objednavka.length; i++) {
    var rubriky  = ""; 
    for (j = 0; j < objednavka[i][4].length; j++) {
      rubriky += objednavka[i][4][j] + ", "; 
    }
  
    if (rubriky.length > 0) {
      rubriky = rubriky.substr(0, rubriky.length -2); 
    }
  
    strForm = '<form id="objednavka" accept-charset="windows-1250" method="post">';
    strForm += '<input type="text" id="titulek" name="titulek" value="' + objednavka[i][2] + '"/>';
    strForm += '<input type="text" id="text" name="text" value="' + objednavka[i][3] + '"/>';
    strForm += '<input type="text" id="zvyrazneni" name="zvyrazneni" value="' + objednavka[i][5] + '"/>';
    strForm += '<input type="text" id="cena" name="cena" value="' + objednavka[i][6] + '"/>';
    strForm += '<input type="text" id="variabil" name="variabil" value="' + varSymbol + '"/>';
    strForm += '<input type="text" id="misto" name="misto" value="' + objednavka[i][0] + '"/>';
    strForm += '<input type="text" id="rubriky" name="rubriky" value="' + rubriky + '"/>';
    strForm += '<input type="text" id="email" name="email" value="' + email + '"/>';
    
    strForm += '<input type="text" id="jmeno" name="jmeno" value="' + jmeno + '"/>';
    strForm += '<input type="text" id="firma" name="firma" value="' + firma + '"/>';
    strForm += '<textarea id="adresa" name="adresa">' + adresa + '</textarea>';
    strForm += '<input type="text" id="psc" name="psc" value="' + psc + '"/>';
    strForm += '<input type="text" id="ico" name="ico" value="' + ico + '"/>';
    strForm += '<input type="text" id="dic" name="dic" value="' + dic + '"/>';
    strForm += '<input type="text" id="tel" name="tel" value="' + tel + '"/>';
    strForm += '<input type="text" id="platba" name="platba" value="' + platba + '"/>';
    strForm += '<input type="text" id="prevodem" name="prevodem" value="' + prevodem + '"/>';
    strForm += '<input type="text" id="slozenkou" name="slozenkou" value="' + slozenkou + '"/>';
    strForm += '<input type="text" id="doklad" name="doklad" value="' + doklad + '"/>';
		                        
    strForm += '</form>';
    
    $('test').innerHTML = strForm;
    
    /*
    params = "titulek=" + URLEncode(objednavka[i][2]) + "&text=" + URLEncode(objednavka[i][3]) + "&zvyrazneni=" + URLEncode(objednavka[i][5]);
    params += "&cena=" + objednavka[i][6] + "&variabil=" + varSymbol + "&misto=" + URLEncode(objednavka[i][0]);
    params += "&rubriky=" + rubriky + "&email=" + email;

    alert(params);
    */

    new Ajax.Updater('test', 'save_kalk.php',{
        method: 'post',
        requestHeaders: ['Content-Type', 'application/x-www-form-urlencoded; charset=windows-1250'],
        asynchronous: false,
        evalScripts: false,
        parameters: $('objednavka').serialize() 
      }  
    );
  }
  
	newTop = $('calculator').getStyle('top');
	newLeft = $('calculator').getStyle('left');

	closeCalculator();

	var dragableBox = Builder.node('div',{id: 'calculator', style: 'display: none; top:' + newTop + '; left:' + newLeft + ';'});
	document.body.appendChild(dragableBox);

	var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Dokončení objednávky</div>";
	calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
	calculatorText += "<div id=\"calculatorInfo\">Děkujeme za vaši objednávku. Inzerát bude zařazen do nejbližšího vydání po zaplacení.<br/>Na Váš email jsme odeslali pokyny k platbě.<br /><br />Při úhradě používejte Váš variabilní symbol: " + varSymbol + "<br /><br /></div>";
  
	$('calculator').innerHTML = calculatorText;

	new Draggable('calculator');
	new Effect.Appear('calculator');

	return 0;
}

function URLDecode(encoded)
{
   // Replace + with ' '
   // Replace %xx with equivalent character
   // Put [ERROR] in output if %xx is invalid.
   var HEXCHARS = "0123456789ABCDEFabcdef"; 
   var plaintext = "";
   var i = 0;
   while (i < encoded.length) {
     var ch = encoded.charAt(i);
	   if (ch == "+") {
	       plaintext += " ";
		   i++;
	   } else if (ch == "%") {
			if (i < (encoded.length-2) 
					&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1 
					&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				alert( 'Bad escape combination near ...' + encoded.substr(i) );
				plaintext += "%[ERROR]";
				i++;
			}
		} else {
		   plaintext += ch;
		   i++;
		}
	} // while

   return plaintext;
}

function URLEncode(decoded)
{
 // The Javascript escape and unescape functions do not correspond
 // with what browsers actually do...
 var SAFECHARS = "0123456789" +     // Numeric
     "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + // Alphabetic
     "abcdefghijklmnopqrstuvwxyz" +
     "-_.!~*'()";     // RFC2396 Mark characters
 var HEX = "0123456789ABCDEF";
 var plaintext = decoded;
 var encoded = "";
 for (var i = 0; i < plaintext.length; i++ ) {
  var ch = plaintext.charAt(i);
     if (ch == " ") {
      encoded += "+";    // x-www-urlencoded, rather than %20
  } else if (SAFECHARS.indexOf(ch) != -1) {
      encoded += ch;
  } else {
      var charCode = ch.charCodeAt(0);
   if (charCode > 255) {
       //alert( "Unicode Character '"
       //                 + ch + " - " + charCode
       //                 + "' cannot be encoded using standard URL encoding.\n" +
       //       "(URL encoding only supports 8-bit characters.)\n" +
       // "A space (+) will be substituted." );
    encoded += specChars[ch];
   } else {
    encoded += "%";
    encoded += HEX.charAt((charCode >> 4) & 0xF);
    encoded += HEX.charAt(charCode & 0xF);
   }
  }
 } // for

 return encoded;
}

function changedPayment(clickedObject) {
	if (clickedObject == 'slozenkou') {
		$('slozenkou').checked = true;
		$('prevodem').checked = false;
		$('ico').style.background = '#FFFFFF';
		// nastaví speciální prvky jako nutné pro vyplnění
		
		
	}

	if (clickedObject == 'prevodem') {
		$('prevodem').checked = true;
		$('slozenkou').checked = false;
		$('ico').style.background = '#FEFE99'; 
		// nastaví speciální prvky jako nutné pro vyplnění
	}

	if (clickedObject == 'sDD') {
		if($('sDD').checked == true) {
			$('ico').style.background = '#FEFE99'; 
			// nastaví speciální prvky jako nutné pro vyplnění
		} else {
			if($('prevodem').checked != true) { 
				$('ico').style.background = '#FFFFFF';
			}
		}
	}

	
}

/*
		var calculatorText = "<div id=\"calculatorHeader\" ondblclick=\"closeCalculator();\">&nbsp;&nbsp;Kalkulačka</div>";
		calculatorText += "<div id=\"calculatorHeaderRight\" onclick=\"closeCalculator();\"><img src=\"images/close.gif\" alt=\"Zavřít\"/></div>";
		calculatorText += "<div id=\"calculatorInfo\">Vypočtěte si cenu za otištění<br />Popis: Zde si můžete sami určit cenu za Váš inzerát v časopise PROGRAM. Cena za 1 tiskový řádek je za jedno zveřejnění v Ostravě nebo Brně 90,- Kč; ve Frýdecku nebo Opavsku 50,- Kč včetně 20% DPH.</div>";
		calculatorText += "<div id=\"calculatorForm\">Titulek:<br />";
		calculatorText += "<input type=\"text\" id=\"titulek\" name=\"titulek\" size=\"40\" maxlenght=\"25\" /><br />";
	 	calculatorText += "<br />Text:<br/>";
		calculatorText += "<textarea id=\"text\" name=\"text\" rows=\"4\" cols=\"40\" wrap=\"hard\"></textarea>";
		calculatorText += "<div style=\"text-align: right;\"><span id=\"calculatorCounter\"></span>&nbsp;&nbsp;";
		calculatorText += "<input type=\"button\" onclick=\"parseText(1);\" value=\"Spočítej\"/>&nbsp;</div></div>";
		calculatorText += "<br /><div id=\"calculatorView\" style=\"display: none;\"></div>";
		$('calculator').innerHTML = calculatorText;
		
			   	Event.observe('text', 'keyup',
				function(event) {
	        		elt = Event.element(event);
					diplayPosition();
				});

	   	new Draggable('calculator');
		new Effect.Appear('calculator');
	}

	return 0;
*/

