//------------------------------------------------------------------------------
// o(d)značení všech formulářových prvků začínajících daným jménem
//------------------------------------------------------------------------------
function setCheckboxes (form_id, name_prefix)
{
  value = 1;
  var form = document.getElementById(form_id);
  // zjištění cílového stavu checkboxů
  for (i = 0; i < form.length; i++)
  {
    if (form[i].name.substr(0,name_prefix.length) == name_prefix)
    {
      value = !form[i].checked;
      break;
    }
  }  
  // nastavení stavu
  for (i = 0; i < form.length; i++)
    if (form[i].name.substr(0,name_prefix.length) == name_prefix) form[i].checked = value;
}

function switchCheckbox (check_id)
{
  var checkbox = document.getElementById(check_id);
  checkbox.checked = !checkbox.checked;
}

//------------------------------------------------------------------------------
// TEXT TO HTML - vkládání značek do formulářových polí
//------------------------------------------------------------------------------

function text2html_tag_img (form_id, img_value, imgout_id)
{
  
  img = img_value.split("_");
  if (document.getElementById(imgout_id).checked)
    text2html_tag (form_id, '{{obrázek č. '+img[0]+', '+img[1]+'+}}', '');
  else
    text2html_tag (form_id, '{{obrázek č. '+img[0]+', '+img[1]+'}}', '')
  document.getElementById ("text2html_img_select"+form_id).style.display="none";
}

function text2html_tag (id, tag, tag2)
{
 var obj = document.getElementById(id);
 obj.focus();
 
 // IE
 if (document.selection)
 {
   var textrange = document.selection.createRange();
   // odstranění poslední mezery z výběru
   if (textrange.text.substr(textrange.text.length-1,1) == ' ')
   {
     textrange.moveStart("character", -1);
     textrange.select();
   }
   // zrušení výběru při požadavku "no_select" -  umístění kurzoru na konec výběru
   if (tag2 == "no_select")
   {
     textrange.moveStart("character", textrange.text.length);
     textrange.select();
     tag2 = "";
   }
   
   // nulový výběr
   if (!textrange.text.length) move_cursor = true;
   
   // přidat tagy
   textrange.text = tag + textrange.text + tag2;
   
   // nulový výběr
   if (move_cursor)
   {
     textrange.moveStart("character", -tag2.length);
     textrange.collapse();
     textrange.select();
   }
 }
 
 // Mozilla
 else if  (obj.selectionStart || obj.selectionStart == '0')
 {
   // uložení pozic výběru
   sel_start = obj.selectionStart;
   sel_end = obj.selectionEnd;
   scroll_position = obj.scrollTop;
   
   // zrušení výběru při tomto požadavku (umístění kurzoru na konec výběru)
   if (tag2 == "no_select")
   {
     sel_start = sel_end;
     tag2 = "";
   }
   
   // odebrat z výběru poslední mezeru v případě vkládání párového tagu
   if (obj.value.substring(sel_end-1,sel_end) == ' ' && tag2 && obj.selectionStart != obj.selectionEnd)
     sel_end--;
   
   // vložení tagů
   obj.value = obj.value.substring(0,sel_start) + tag + obj.value.substring(sel_start, sel_end) + tag2 + obj.value.substring(sel_end, obj.value.length);
   
   // znovunastavení výběru
   obj.selectionEnd = sel_end + tag.length + tag2.length;
   obj.selectionStart = obj.selectionEnd;
   
   // nulový výběr > posun doprostřed
   if (sel_start == sel_end)
     obj.selectionStart = obj.selectionEnd = obj.selectionStart - tag2.length;

   
   // scrollování v textarea
   obj.scrollTop = scroll_position;
  
 }
 
 // jiné
 else
  obj.value += (tag + tag2);
}

function text2html_show_img_select (select_id)
{
  obj = document.getElementById(select_id);
  if (obj.style.display == 'inline')
    obj.style.display = 'none';
  else
    obj.style.display = 'inline';
}


//------------------------------------------------------------------------------
// SMS - počet zpráv
//------------------------------------------------------------------------------
function count_sms_parts (max_o2, max_vod, max_tmo, max_parts)
{
  var sender = document.getElementById ("sender");
  var sms_body = document.getElementById ("sms_body");
  var max_length_obj = document.getElementById ("max_length");
  var sms_parts_obj = document.getElementById ("sms_parts");
  
  var num_o2 = Math.ceil(sms_body.value.length/(max_o2-sender.innerHTML.length))
  var num_vod = Math.ceil(sms_body.value.length/(max_vod-sender.innerHTML.length))
  var num_tmo = Math.ceil(sms_body.value.length/(max_tmo-sender.innerHTML.length))
  
  var max_length = (Math.min (max_o2, max_vod, max_tmo) - sender.innerHTML.length) * 5;
  
  max_length_obj.innerHTML = sms_body.value.length + "/" + max_length;
  sms_parts_obj.innerHTML = "O2 " + num_o2 + ", Vodafone " + num_vod + ", T-mobile " + num_tmo;
  
  if (num_o2 > max_parts || num_vod > max_parts || num_tmo > max_parts)
    document.getElementById("message_limit").innerHTML = " - překročena povolená délka zprávy, text bude zkrácen!";
  else
    document.getElementById("message_limit").innerHTML = "";
    
}
    