var imagePath = './templates/client_admin/images/';
var currDay, currMonth, currYear;
/**
* Toggles the check state of a group of boxes
*
* Checkboxes must have an id attribute in the form cb0, cb1...
* @param The number of box to 'check'
* @param An alternative field name
*/
function checkAll( n, fldName ) 
{
  if (!fldName) 
  {
     fldName = 'id';
  }
  for (var j = 1; j <= n; j++)
  {
    box = eval(document.getElementById(fldName + j));
    toggle = eval(document.getElementById('toggle'));
    if (toggle.checked)
    {
      box.checked = true;
      document.adminForm.boxchecked.value++;
    }
    else
    {
      box.checked = false;
      document.adminForm.boxchecked.value--;
    }
  }
}

function checkAll1( n, fldName, bName ) 
{
  if (!fldName) 
  {
     fldName = 'id';
  }
  for (var j = 1; j <= n; j++)
  {
    box = eval(document.getElementById(fldName + j));
    //toggle = eval(document.getElementById('toggle'));
    if (bName == "selectAll")
    {
      box.checked = true;
      document.adminForm.boxchecked.value++;
    }
    else
    {
      box.checked = false;
      document.adminForm.boxchecked.value--;
    }
  }
}



function isChecked(isitchecked)
{
	if (isitchecked == true){
		document.adminForm.boxchecked.value++;
	}
	else {
		document.adminForm.boxchecked.value--;
	}
}

function isChecked1(isitchecked)
{
	if (isitchecked == true){
		document.siteForm.boxchecked.value++;
	}
	else {
		document.siteForm.boxchecked.value--;
	}
}


/**
* Default function.  Usually would be overriden by the component
*/
function submitbutton(pressbutton) 
{
	submitform(pressbutton);
}

/**
* Submit the admin form
*/
function submitform(pressbutton){
	document.adminForm.task.value=pressbutton;
	try 
	{
		document.adminForm.onsubmit();
	}
	catch(e)
	{
	
	}
	document.adminForm.submit();	
	
}

function hideMainMenu()
{
	document.adminForm.hidemainmenu.value=1;
}

function confirmSubmit()
{
  var agree=confirm("Are you sure you wish to continue?");
  if (agree)
    return true ;
  else
    return false ;
}

var form = document.adminForm;
function moveItems (from, to, bitstatus)
{
   var selindex;
   
   //document.getElementById('changesWereMade').innerHTML='Changes were made to group attachments (don\'t forget to apply changes) *';
   
   while ((selindex=from.selectedIndex) != -1)
   {
       var i;
       var item = new Option(from.options[selindex].text,
                             from.options[selindex].value,
                             false, true);

       from.options[selindex] = null;
       //to.options[to.options.length] = item;

       // find spot to put new item
       for (i=0; i<to.options.length && to.options[i].text < item.text; i++) { }
       var newindex = i;

       // move everything else down
       for (i=to.options.length; i>newindex; i--) {
                to.options[i] = new Option(to.options[i-1].text,
                                      to.options[i-1].value,
                                      false,
                                      to.options[i-1].selected);
       }
       to.options[newindex] = item;

       // turn the groupmask bit on or off
       var groupId = item.value;
       var element = document.forms['adminForm'].elements['groupsStats'+groupId];
       element.value = bitstatus;
   }
}

function moveIn ()
{
   var form = document.adminForm;
   var inlist = form.groupsIn;
   var outlist = form.groups;
   moveItems(document.adminForm.groups, document.adminForm.groupsIn, '1');
}
function moveOut ()
{
   moveItems(document.adminForm.groupsIn, document.adminForm.groups, '0');
}


function moveItems1 (from, to, bitstatus)
{
   var selindex;
   
   //document.getElementById('changesWereMade').innerHTML='Changes were made to group attachments (don\'t forget to apply changes) *';
   
   while ((selindex=from.selectedIndex) != -1)
   {
       var i;
       var item = new Option(from.options[selindex].text,
                             from.options[selindex].value,
                             false, true);

       from.options[selindex] = null;
       //to.options[to.options.length] = item;

       // find spot to put new item
       for (i=0; i<to.options.length && to.options[i].text < item.text; i++) { }
       var newindex = i;

       // move everything else down
       for (i=to.options.length; i>newindex; i--) {
                to.options[i] = new Option(to.options[i-1].text,
                                      to.options[i-1].value,
                                      false,
                                      to.options[i-1].selected);
       }
       to.options[newindex] = item;

       // turn the groupmask bit on or off
       var groupId = item.value;
       var element = document.forms['adminForm'].elements['tableStat'+groupId];
       element.value = bitstatus;
   }
}

function moveIn1 ()
{
   var form = document.adminForm;
   var inlist = form.groupsIn1;
   var outlist = form.groups1;
   moveItems1(document.adminForm.groups1, document.adminForm.groupsIn1, '1');
}
function moveOut1 ()
{
   moveItems1(document.adminForm.groupsIn1, document.adminForm.groups1, '0');
}


function saveorder( n ) 
{
	checkAll_button( n );
}

function updateItems( n ) 
{
	checkAll_siteButton( n );
}


//needed by saveorder function
function checkAll_siteButton( n ) 
{
	for ( var j = 1; j <= n; j++ ) 
	{
		box = eval( "document.siteForm.id" + j );
		if ( box ) 
		{
			if ( box.checked == false ) 
			{
				box.checked = true;
			}
		} 
		else 
		{
			alert("You cannot change the order of items, as an item in the list is `Checked Out`");
			return;
		}
	}
	//submitform('saveorder');
}


//needed by saveorder function
function checkAll_button( n ) 
{
	for ( var j = 1; j <= n; j++ ) 
	{
		box = eval( "document.adminForm.id" + j );
		if ( box ) 
		{
			if ( box.checked == false ) 
			{
				box.checked = true;
			}
		} 
		else 
		{
			alert("You cannot change the order of items, as an item in the list is `Checked Out`");
			return;
		}
	}
	submitform('saveorder');
}

function listOrderTask( id, task ) 
{
  var f = document.adminForm;
  cb = eval( 'f.' + id );
  if (cb) 
  {
    for (i = 0; true; i++) 
    {
      cbx = eval('f.id'+i);
      if (!cbx) break;
      cbx.checked = false;
    } 
    cb.checked = true;
    f.boxchecked.value = 1;
    submitbutton(task);
  }
  return false;
}

function listTask( id, task ) 
{
  var f = document.adminForm;
  cb = eval( 'f.' + id );
  if (cb) 
  {
    for (i = 0; true; i++) 
    {
      cbx = eval('f.id'+i);
      if (!cbx) break;
      cbx.checked = false;
    } 
    cb.checked = true;
    f.boxchecked.value = 1;
    submitbutton(task);
  }
  return false;
}
