function on_load(mode)
 {
  switch (mode)
   {
    case 'edit':
     hideformparts();
     if((typeof use_fckeditor) != 'undefined') fckeditor_init();
     break;
    case 'login':
     sf();
    //default:
  }
 }

function sf()
 {
  document.getElementById('login').focus();
 }

function hideformparts()
 {
  document.getElementById('formpart-n1').style.display='block';
  document.getElementById('formpart-n2').style.display='none';
  document.getElementById('formpart-n3').style.display='none';
  document.getElementById('formpart-n4').style.display='none';
  document.getElementById('formpart-n5').style.display='none';  
 } 
 
function show_element(e)
 {
  document.getElementById('n1').className='inactive';
  document.getElementById('n2').className='inactive';
  document.getElementById('n3').className='inactive';
  document.getElementById('n4').className='inactive';
  document.getElementById('n5').className='inactive';  
  document.getElementById(e).className='active';
  document.getElementById('formpart-n1').style.display='none';
  document.getElementById('formpart-n2').style.display='none';
  document.getElementById('formpart-n3').style.display='none';
  document.getElementById('formpart-n4').style.display='none';
  document.getElementById('formpart-n5').style.display='none';  
  document.getElementById('formpart-'+e).style.display='block';
  return false;
 }

function insert_image(form,field,insert_mode)
 {
  new_window=window.open('index.php?mode=image&form='+form+'&field='+field+'&insert_mode='+insert_mode,'image','toolbar=no,scrollbars=yes,resizable=yes,status=no,menubar=no,location=no,width=420,height=450');
  new_window.focus();
  return false;
 }

function insert_thumbnail(form,field,insert_mode)
 {
  new_window=window.open('index.php?mode=thumbnail&form='+form+'&field='+field,'image','toolbar=no,scrollbars=no,resizable=yes,status=no,menubar=no,location=no,width=400,height=380');
  new_window.focus();
  return false;
 }

function insert_html(opentag,closetag,form,field)
 {
 if(closetag=='') insert(form,field,opentag);
 else
 {
 if(document.selection) // for IE
   {
    var str = document.selection.createRange().text;
    document.forms[form].elements[field].focus();
    var sel = document.selection.createRange();
    sel.text = opentag + str + closetag;
    return;
   }
  else if((typeof document.forms[form].elements[field].selectionStart) != 'undefined') // for Mozilla
   {
    var txtarea = document.forms[form].elements[field];
    var selLength = txtarea.textLength;
    var selStart = txtarea.selectionStart;
    var selEnd = txtarea.selectionEnd;
    var oldScrollTop = txtarea.scrollTop;
    var s1 = (txtarea.value).substring(0,selStart);
    var s2 = (txtarea.value).substring(selStart, selEnd)
    var s3 = (txtarea.value).substring(selEnd, selLength);
    txtarea.value = s1 + opentag + s2 + closetag + s3;
    txtarea.selectionStart = s1.length;
    txtarea.selectionEnd = s1.length + opentag.length + s2.length + closetag.length;
    txtarea.scrollTop = oldScrollTop;
    txtarea.focus();
    return;
   }
  else insert(form,field,opentag+closetag+' ');
 }
 }

function format(v,form,field)
 {
 if (document.selection) // for IE
   {
    var str = document.selection.createRange().text;
    document.forms[form].elements[field].focus();
    var sel = document.selection.createRange();
    sel.text = "<" + v + ">" + str + "</" + v + ">";
    return;
   }
  else if ((typeof document.forms[form].elements[field].selectionStart) != 'undefined') // for Mozilla
   {
    var txtarea = document.forms[form].elements[field];
    var selLength = txtarea.textLength;
    var selStart = txtarea.selectionStart;
    var selEnd = txtarea.selectionEnd;
    var oldScrollTop = txtarea.scrollTop;
    var s1 = (txtarea.value).substring(0,selStart);
    var s2 = (txtarea.value).substring(selStart, selEnd)
    var s3 = (txtarea.value).substring(selEnd, selLength);
    txtarea.value = s1 + '<' + v + '>' + s2 + '</' + v + '>' + s3;
    txtarea.selectionStart = s1.length;
    txtarea.selectionEnd = s1.length + 5 + s2.length + v.length * 2;
    txtarea.scrollTop = oldScrollTop;
    txtarea.focus();
    return;
   }
  else insert(form,field,'<' + v + '></' + v + '> ');
 }

function insert_link(form,field,link_text,link_target)
 {
 if (document.selection) // for IE
   {
    var str = document.selection.createRange().text;
    document.forms[form].elements[field].focus();
    var sel = document.selection.createRange();
    var insert_link = prompt(link_target,'');
    if(sel.text=='' && insert_link!='' && insert_link!=null) str = prompt(link_text,'');

    if(insert_link && str!=null)
     {
      if(str!='')
       {
        sel.text = "[[" + insert_link + "|" + str + "]]";
       }
      else
       {
        sel.text = "[[" + insert_link + "]]";
       }
     }
    return;
   }
  else if ((typeof document.forms[form].elements[field].selectionStart) != 'undefined') // for Mozilla
   {
    var txtarea = document.forms[form].elements[field];
    var selLength = txtarea.textLength;
    var selStart = txtarea.selectionStart;
    var selEnd = txtarea.selectionEnd;
    var oldScrollTop = txtarea.scrollTop;
    var s1 = (txtarea.value).substring(0,selStart);
    var s2 = (txtarea.value).substring(selStart, selEnd);
    var s3 = (txtarea.value).substring(selEnd, selLength);

    var insert_link = prompt(link_target,'');
    if(selEnd-selStart==0 && insert_link!='' && insert_link!=null) s2 = prompt(link_text,'');
    if(insert_link && s2!=null)
     {
      if(s2!='')
       {
        txtarea.value = s1 + '[[' + insert_link + '|' + s2 + ']]' + s3;
        var codelength = 5 + insert_link.length + s2.length;
       }
      else
       {
        txtarea.value = s1 + '[[' + insert_link + ']]' + s3;
        var codelength = 4 + insert_link.length + s2.length;
       }
      txtarea.selectionStart = s1.length;
      txtarea.selectionEnd = s1.length + codelength;
      txtarea.scrollTop = oldScrollTop;
      txtarea.focus();
      return;
     }
   }
  else insert('[[Link|Link text]]');
 }

function insert(form,field,what)
 {
  if (document.forms[form].elements[field].createTextRange)
   {
    document.forms[form].elements[field].focus();
    document.selection.createRange().duplicate().text = what;
   }
  else if ((typeof document.forms[form].elements[field].selectionStart) != 'undefined') // for Mozilla
   {
    var tarea = document.forms[form].elements[field];
    var selEnd = tarea.selectionEnd;
    var txtLen = tarea.value.length;
    var txtbefore = tarea.value.substring(0,selEnd);
    var txtafter =  tarea.value.substring(selEnd, txtLen);
    var oldScrollTop = tarea.scrollTop;
    tarea.value = txtbefore + what + txtafter;
    tarea.selectionStart = txtbefore.length + what.length;
    tarea.selectionEnd = txtbefore.length + what.length;
    tarea.scrollTop = oldScrollTop;
    tarea.focus();
   }
  else
   {
    document.forms[form].elements[field].value += what;
    document.forms[form].elements[field].focus();
   }
 }

function image_popup(img)
{
 if(img!="")
  {
   //img = '../images/'+img;
   window.open(img,'popup','width=400,height=300,toolbar=0,scrollbars=0,resizable=yes,status=no,menubar=no,location=no,screenX=100,screenY=100,left=100,top=100');
  }
}

function checkall(form, check)
{
 var elts = (typeof(document.forms[form].elements['checked_ids[]']) != 'undefined')
                  ? document.forms[form].elements['checked_ids[]']
                  : 0;

 var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
 if (elts_cnt)
  {
   for (var i = 0; i < elts_cnt; i++)
    {
     elts[i].checked = check;
    }
  }
 else
  {
   elts.checked = check;
  }
 return true;
}

function updatePhotoOrder()
 {
  // show throbber:
  // document.getElementById("throbber").style.display = "block";
  var options = {
                 method : 'post',
                 parameters : 'mode=ajaxprocess&action=reorder&data=photos&'+Sortable.serialize('items'),
                 onComplete : function(request) 
                  {
                   // hide throbber:
                   // document.getElementById("throbber").style.display = "none";
                  }
                };
  new Ajax.Request('index.php', options);
 }
 
function updateMenuOrder()
 {
  // show throbber:
  // document.getElementById("throbber").style.display = "block";
  var options = {
                 method : 'post',
                 parameters : 'mode=ajaxprocess&action=reorder&data=menu_items&'+Sortable.serialize('items'),
                 onComplete : function(request) 
                  {
                   // hide throbber:
                   // document.getElementById("throbber").style.display = "none";
                  }
                };
  new Ajax.Request('index.php', options);
 }

function updateNotesOrder()
 {
  // show throbber:
  // document.getElementById("throbber").style.display = "block";
  var options = {
                 method : 'post',
                 parameters : 'mode=ajaxprocess&action=reorder&data=notes&'+Sortable.serialize('items'),
                 onComplete : function(request) 
                  {
                   // hide throbber:
                   // document.getElementById("throbber").style.display = "none";
                  }
                };
  new Ajax.Request('index.php', options);
 }
  
function confirm_link(confirm_message,this_link,mode)
 {
  this_link = typeof(this_link) != 'undefined' ? this_link : '';
  mode = typeof(mode) != 'undefined' ? mode : 0;
  var confirmed = confirm(decodeURIComponent(confirm_message));
  if(confirmed && this_link!='')
   {
    if(mode==0)
     {
      this_link.href += '&confirmed=true';
     }
    else
     {
      this_link.href += ',confirmed';
     }
   }
  return confirmed;
 }

// preload throbber image:
// img1 = new Image();
// img1.src ="img/throbber.gif";
