// *********************************************************
//
//  Common routines for working with the powerbar.
//
//  Copyright (C) 1994-2005 Corbis Digital Asset Management Services, LLC
//  All Rights Reserved.
//
//  $Id: addinfocomp.js 1.11 2001/06/28 17:36:47 rmccaskill production jfewell $
//
// **********************************************************

// Theoretically, this'll cache the images at the browser.

//g_powerbarOn = new Image();
//g_powerbarOn.src = "/images/powerbar_on.gif";

//g_powerbarOn2 = new Image();
//g_powerbarOn2.src = "/images/powerbar_on2.gif";

//g_powerbarOff = new Image();
//g_powerbarOff.src = "/images/powerbar_off.gif";

g_selectedLightOn = new Image();
g_selectedLightOn.src = "/images/dot_on.gif";

g_selectedLightOff = new Image();
g_selectedLightOff.src = "/images/dot_off.gif";

g_deletedMarker = new Image();
g_deletedMarker.src = "/images/deletedflag.gif";


// An Asset object represents a single item displayed on
// the page.

function Asset(captionId, itemId, approval, inTrashcan, isCheckout, hasLinks, metadataOnlyAsset)
{
    this.captionId  = captionId;   // Unique identifier for the caption
    this.itemId     = itemId;      // Unique identifier within a lightbox
    this.approval   = approval;    // Is this item undergoing approval?
    this.inTrashcan = inTrashcan;  // Is this item in the system trashcan
    if(isCheckout =='' || isCheckout == null)	
    	this.isCheckout = false;  // Is this checked out from collection.
    else 
	    this.isCheckout=isCheckout;
    this.hasLinks  = hasLinks;    // Does the caption has links?
    this.metadataOnlyAsset = metadataOnlyAsset;
    this.displayed = false;       // Is the powerbar currently displayed?
    this.added     = false;       // Has this object been added (to our knowledge?)
    this.selected  = false;       // Is the item currently selected?
}

document.assetArray = new Array();

// Abhishek added one optional parameter 
function appendAsset(captionId, itemId, approval, inTrashcan, isCheckout, hasLinks, metadataOnlyAsset)
{
    document.assetArray[document.assetArray.length] = new Asset(captionId,itemId,approval,inTrashcan, isCheckout, hasLinks, metadataOnlyAsset);
}

function orderAll(fromLocation)
{
    var appendStr = "/license/categories.aspx";
    var emptyStr = "empty";
    var count = 0;
    var deletedFound  = false;            

    for (var i = 0; i < document.assetArray.length; i++)
    {
        if(document.assetArray[i].selected)
        {
	     if ( document.assetArray[i].inTrashcan ) 
             {
                deletedFound = true;
		if ( deletedFound ) 
                {
                    alert('Deleted items were selected.');
                }
             }
             else
             {
	     	    count++;
             	if( count == 1)
             	{
                     appendStr += "?";
             	}
                if(!document.assetArray[i].isCheckout){
                 var isOldVersion = "oldVersion_"+ document.assetArray[i].captionId;
                 if(!document.getElementById(isOldVersion))
                   {
                    appendStr += "caption_id=" + document.assetArray[i].captionId + "&";
                    }
                }
            }
        }
    }
    
    if (fromLocation == "lbx") {
       appendStr += "origin=lbx";
       appendStr += "&lightbox_id=" + document.lightbox_notes_form.lightbox_id.value;
    }

    if( count == 0) appendStr = emptyStr;
    
    return appendStr;
}

function noSelectionMade()
{
   alert(" No items were selected ");
}
//This variable maintains the state of Select All/Deselect All
var selectedAllItems = false;
function selectAllItems(pDocument)
{
	if(typeof(pDocument) == "undefined")
		pDocument = document;

	selectedAllItems = !selectedAllItems;
    
	
	//var toggle = true;
    //var check = true;
    //var count = 0;	
    //var disabled = 0;
	
	
    for (var i = 0; i < document.assetArray.length; i++)
    {
         var notDisabled = (pDocument.images[getSelectedLightName(i)].src.indexOf("disabled") == -1);
		 
		 if(selectedAllItems)
         {
			if(notDisabled)
				selectedLightOnEx(i, pDocument);
		 }
         else
         {
		 	if(notDisabled)
	       		selectedLightOffEx(i, pDocument);
		 }
    }
    if(!selectedAllItems)
    {
         NS4 = (pDocument.layers);
         if (NS4)
		 {
			 //Kyocera customization:
			 //pDocument.layout.document.getElementById('SelectAllButtonTop').innerText="Select All";
			 pDocument.layout.document.getElementById('SelectAllButtonTop').innerText="select all";
			 pDocument.layout.document.getElementById('SelectAllButtonTop').title="Select all on this page";	
			 if(pDocument.layout.document.getElementById('SelectAllButtonBottom'))
			 {
				 //pDocument.layout.document.getElementById('SelectAllButtonBottom').innerHTML="Select All";
				 pDocument.layout.document.getElementById('SelectAllButtonBottom').innerHTML="select all";
				 pDocument.layout.document.getElementById('SelectAllButtonBottom').title="Select all on this page";
			 }
		 }
		 else
		 {
			 //document.getElementById('SelectAllButtonTop').innerHTML="Select All";
			 document.getElementById('SelectAllButtonTop').innerHTML="select all";
			 document.getElementById('SelectAllButtonTop').title="Select all on this page";
			 if(document.getElementById('SelectAllButtonBottom'))
			 {
				 //document.getElementById('SelectAllButtonBottom').innerHTML="Select All";
				 document.getElementById('SelectAllButtonBottom').innerHTML="select all";
				 document.getElementById('SelectAllButtonBottom').title="Select all on this page";
			 }

		 }
		 
    }
    else
    {
         NS4 = (pDocument.layers);
         if (NS4)
		 {
			//pDocument.layout.document.getElementById('SelectAllButtonTop').innerText="Deselect All";
			pDocument.layout.document.getElementById('SelectAllButtonTop').innerText="deselect all";
			pDocument.layout.document.getElementById('SelectAllButtonTop').title="Deselect all on this page";
			if(pDocument.layout.document.getElementById('SelectAllButtonBottom'))
			 {
				 //pDocument.layout.document.getElementById('SelectAllButtonBottom').innerHTML="Deselect All";
				 pDocument.layout.document.getElementById('SelectAllButtonBottom').innerHTML="deselect all";
  				 pDocument.layout.document.getElementById('SelectAllButtonBottom').title="Deselect all on this page";
			 }
		 }
		 else
		 {
			 //document.getElementById('SelectAllButtonTop').innerHTML="Deselect All";
			 document.getElementById('SelectAllButtonTop').innerHTML="deselect all";
			 document.getElementById('SelectAllButtonTop').title="Deselect all on this page";
			 if(document.getElementById('SelectAllButtonBottom'))
			 {
				 //document.getElementById('SelectAllButtonBottom').innerHTML="Deselect All";
				 document.getElementById('SelectAllButtonBottom').innerHTML="deselect all";
  				 document.getElementById('SelectAllButtonBottom').title="Deselect all on this page";
			 }

		 }
		 
    }
    return selectedAllItems;
}


function getPowerbarImageName(item)
{
    return "powerbar_image_" + item;
}


function getDocImages() {

    var imgs = document.images;

    var NS4 = (document.layers);
    if ( NS4 && document.layout)
        imgs = document.layout.document.images;

    return imgs;
}


function getDocForm(formName) {
   var form = document.forms[formName];
   if (!form)
   {
       var NS4 = (document.layers);
       if ( NS4 && document.layout)
           form = document.layout.document.forms[formName];
   }
   return form;
}


   function performEpakTransferAction(DocumentBulkForm, pDocument) 
   {
      var bulkForm;

	  if(typeof(pDocument) != "undefined")
	  {	  	
	     bulkForm = pDocument.forms[DocumentBulkForm];
 	  
 	  } else 
	  {
 	  	
	     bulkForm = getDocForm(DocumentBulkForm);
	  }

      var lbx = "";

      bulkForm.project_id.value = lbx;
    
      var selectedItems = 0;
      var deletedFound  = false;
	
      for (var i = 0; i < document.assetArray.length; i++)
	  {
         if (document.assetArray[i].selected) 
		 {            
            var hiddenCaptionName = "caption_id_" + selectedItems;
            bulkForm[hiddenCaptionName].value = document.assetArray[i].captionId;
        
            selectedItems++;
         }
      }
    
      if (selectedItems == 0)
	  {
         alert('No items were selected.  Please select one or more items.');
         return false;
      } 
	  else 
	  {    
         // Make sure the rest of 'em are clear
            
         for ( ; selectedItems < document.assetArray.length; selectedItems++)
		 {         
            var hiddenCaptionName = "caption_id_" + selectedItems;
            bulkForm[hiddenCaptionName].value = "";
         }

		if (typeof(pDocument) != "undefined")
		{
			
			bulkForm.epak_transfer_action_top_command.value = "transfer_to_epak";
			bulkForm.submit();
         
		}
		else
		{
			return true;
		}
     }
   }


   function performBulkDeleteAction(DocumentBulkForm, pDocument) {

      var lbxForm;
      var bulkForm;

	  if(typeof(pDocument) != "undefined") {
	  	
	     lbxForm =  pDocument.forms["current_lightbox_form"];
	     bulkForm = pDocument.forms[DocumentBulkForm];
 	  
 	  } else {
 	  	
	     lbxForm = getDocForm("current_lightbox_form");
	     bulkForm = getDocForm(DocumentBulkForm);
	  }

      // Get the currently selected lightbox.  Not all actions require
      // a lightbox, so we can't usefully check for non-existence.
    
      var lbx;

          if (lbxForm) {
             
             if (lbxForm.project_id) {
                var idx = lbxForm.project_id.selectedIndex;
                    if (idx != -1) {
                       lbx = lbxForm.project_id.options[idx].value;
                    }
             }
          }

          if (lbx == null)
             lbx = "";

       if(lbx!="")   bulkForm.project_id.value = lbx;
    
      var selectedItems = 0;
      var deletedFound  = false;
      var checkoutAssetList = new Array();
      var checkoutAssetCount = 0;
	
          for (var i = 0; i < document.assetArray.length; i++) {
		var isCheckedOut="";

             if (document.assetArray[i].selected) {
	    	if(document.assetArray[i].isCheckout){
			checkoutAssetList[checkoutAssetCount]=document.assetArray[i];
			checkoutAssetCount++;
			isCheckedOut = "yes";
	    	} else isCheckedOut = "no";
                
                var hiddenItemName    = "bulk_item_id_"    + selectedItems;
                var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
				var hiddenCheckOutStatus="bulk_is_checkout_"+selectedItems;
				bulkForm[hiddenItemName].value    = document.assetArray[i].itemId;
				bulkForm[hiddenCaptionName].value = document.assetArray[i].captionId;
				bulkForm[hiddenCheckOutStatus].value=isCheckedOut;	
            
                    selectedItems++;
             }
          }
    
          if (selectedItems == 0) {
             alert('No items were selected.  Please select one or more items.');
             return false;
          }

	{
        
             // Make sure the rest of 'em are clear
                
             for ( ; selectedItems < document.assetArray.length; selectedItems++) {
             
				 var hiddenItemName       = "bulk_item_id_"    + selectedItems;
				 var hiddenCaptionName    = "bulk_caption_id_" + selectedItems;
				 var hiddenCheckOutStatus = "bulk_is_checkout_" + selectedItems;
				 bulkForm[hiddenItemName].value    = "";
				 bulkForm[hiddenCaptionName].value = "";
				 bulkForm[hiddenCheckOutStatus].value="";
             }

	     if (typeof(pDocument) != "undefined") {
	     	
		bulkForm.bulk_browser_action_top_command.value = "remove_from_project";
		bulkForm.submit();
             
             } else
	        return true;
         }
   }


// Functions to toggle image to powerbar
function powerbarOn(item)
{/*
    var powerbarImageName = getPowerbarImageName(item);

    if ( document.assetArray[item].inTrashcan ) 
        getDocImages()[powerbarImageName].src = g_deletedMarker.src;
    else if ( document.assetArray[item].added )
        getDocImages()[powerbarImageName].src = g_powerbarOn2.src;
    else
        getDocImages()[powerbarImageName].src = g_powerbarOn.src;

    document.assetArray[item].displayed = true;
*/}

function powerbarOff(item)
{/*
    var powerbarImageName = getPowerbarImageName(item);

    document.assetArray[item].displayed = false;

    if ( document.assetArray[item].inTrashcan ) 
        getDocImages()[powerbarImageName].src = g_deletedMarker.src;
    else 
        getDocImages()[powerbarImageName].src = g_powerbarOn.src;
*/}



// Handle the 'selected' light

function getSelectedLightName(item)
{
    return "selected_light_" + item;
}


function selectedLightOn(item)
{
    var name = getSelectedLightName(item);
    if (getDocImages()[name])
	    getDocImages()[name].src = g_selectedLightOn.src;
    document.assetArray[item].selected = true;
    return false;
}

function selectedLightOff(item)
{
    var name = getSelectedLightName(item);
    if (getDocImages()[name])
	    getDocImages()[name].src = g_selectedLightOff.src;
    document.assetArray[item].selected = false;
    return false;
}

function selectedLightOnEx(item, pDocument)
{
    var name = getSelectedLightName(item);
    if (pDocument.images[name])
	    pDocument.images[name].src = g_selectedLightOn.src;
    document.assetArray[item].selected = true;
    return false;
}

function selectedLightOffEx(item, pDocument)
{
    var name = getSelectedLightName(item);
    if (pDocument.images[name])
	    pDocument.images[name].src = g_selectedLightOff.src;
    document.assetArray[item].selected = false;
    return false;
}

function toggleSelectedLightEx(item, pDocument)
{
    if (document.assetArray[item].selected)
        return selectedLightOffEx(item, pDocument);
    else
        return selectedLightOnEx(item, pDocument);
}

//Kyocera customization:
//function eqTransForClickedAsset(item,caption_id,pDocument,collection_id)
//{
	
	//var url = '/include/transformation_options.aspx?method=none&assetcount=single&caption_id=' + caption_id + '&collection_id='+collection_id;

	//MP2133: Turn selection off for other assets as this is a single download 
	for (var i = 0; i < document.assetArray.length; i++)
      	if (document.assetArray[i].selected && caption_id != document.assetArray[i].captionId)
			selectedLightOffEx(i, pDocument);

	//if (!document.assetArray[item].selected)
		//selectedLightOnEx(item, pDocument);	
	//var win = window.open(url, 'transformation_options', 'menubar=no,scrollbars=no,resizable=yes,width=550,height=200,alwaysRaised=yes'); 
	//win.focus(); 
	//return false;

//}
// End Kyocera Customization

function toggleSelectedLight(item)
{
    if (document.assetArray[item].selected)
        return selectedLightOff(item);
    else
        return selectedLightOn(item);
}

function togglecheckout() //mp4
{
    if (document.assetArray[item].selected)
        return checkoutOff(item);
    else
        return checkoutOn(item);
}

// hasLinkSelection()
// 	Returns true if Assets with links are selected, false otherwise.
function hasLinkSelection()
{
    for (var i = 0; i < document.assetArray.length; i++)
        if (document.assetArray[i].selected)
		if(document.assetArray[i].hasLinks)
			return true;
    return false;
}

// Fix For PV26 -- Satyajit Rai (10-Dec-2003)
// getCheckOutStatus() returns
//    0 - If no active assets were selected
//    1 - If some of the assets selected are active
//    2 - If all of the selected assets are active
function getCheckOutStatus()
{
    var activeCount = 0;
    var selectedCount = 0;
    for (var i = 0; i < document.assetArray.length; i++)
        if (document.assetArray[i].selected) {
            selectedCount++;
            if (document.assetArray[i].isCheckout)
                activeCount++;
        }

    if (activeCount == 0)
        return 0;
    if (activeCount != selectedCount)
        return 1;
    else
        return 2;
}

function checkOutStatusAssetInTaskOfHimself()
{
    var inactiveCount = 0;
    var selectedCount = 0;
   
    for (var i = 0; i < document.assetArray.length; i++)
    {
       if (document.assetArray[i].selected) 
       {
            selectedCount++;
            var isinABatchOfhimself = "isInAbatchOfhimself_"+ document.assetArray[i].captionId;
            if(document.getElementById(isinABatchOfhimself))
            {
                inactiveCount++;
            }
        }        
    }
    if(inactiveCount == 0)
        return 0;
    else if(inactiveCount != selectedCount)   
        return 1;
    else
        return 2;    
}
//getOldVersionStatus() function returns
//true - when its old version
//false -when its a current version

function isOldVersion()
{
    var inactiveCount = 0;
    var selectedCount = 0;
   
    for (var i = 0; i < document.assetArray.length; i++)
    {
       if (document.assetArray[i].selected) 
       {
            selectedCount++;
            var isOldVersion = "oldVersion_"+ document.assetArray[i].captionId;
            if(document.getElementById(isOldVersion))
            {
                inactiveCount++;
                //return document.getElementById(isOldVersion).value;
            }
        }        
    }
    if(inactiveCount == 0)
        return 0;
    else if(inactiveCount != selectedCount)   
        return 1;
    else
        return 2;    
    //return false;
}


// This gives us some hope of not screwing up the
// user's display (by displaying more than one
// powerbar, or allowing them to click twice before
// an action is complete).

var g_currentlyUpdating = false;

// Finish the lightbox-update function...
function finishLightboxUpdate(item,statusMessage,addedFlag)
{
  
    window.status = statusMessage;

    document.assetArray[item].added = addedFlag;
    if (document.assetArray[item].displayed)
        powerbarOn(item);

    g_currentlyUpdating = false;
}

// Get the currently selected project, returning the
// option object.  If no lightbox is selected, inform the user,
// and return null.

function getSelectedProject()
{
    var prjForm = getDocForm("current_lightbox_form");
    
    // Does the user have any lightboxes?
    if ( ! prjForm.project_id ) {
        alert('You have no projects');
        return null;
    }

    // Has the user selected a lightbox?
    var idx = prjForm.project_id.selectedIndex;
    if (idx == -1) {
        alert('Please select a project');
        prjForm.project_id.focus();
        return null;
    }

    // Make sure it's a valid choice
    var prj = prjForm.project_id.options[idx].value;
    if ((prj == null) || (prj == "")) {
        alert('Please select a project');
        prjForm.project_id.focus();
        return null;
    }

    return prjForm.project_id.options[idx];
}

// Update a lightbox.  The page this refers to is supposed
// to return a status code of 204, which requests that the
// user agent *not* update its display.

function updateLightbox(item)
{
    if (g_currentlyUpdating)
        return;

    var lbxForm = getDocForm("quiet_lightbox_form");

    var captionId = document.assetArray[item].captionId;
    var lbx = getSelectedLightbox();
    if (lbx == null)
        return;

    lbxForm.caption_id.value = document.assetArray[item].captionId;
    lbxForm.project_id.value = lbx.value;
	
	//workout if this is Macintosh IE 
	
	if (navigator.appName.indexOf("Microsoft") != -1){
		if (navigator.platform == "MacPPC"){
			lbxForm.macIEHack.value = "true";
			lbxForm.target="garbage";
			var features='left=100,top=100,width=150,height=25,scrollbars=no' ;
			g_garbageWindow=window.open("","garbage",features);
			g_garbageWindow.document.writeln("<html>");
			g_garbageWindow.document.writeln("<head>");
			g_garbageWindow.document.writeln("</head>");
			g_garbageWindow.document.writeln("<body bgcolor=#FFFFFF>");
			g_garbageWindow.document.writeln("<b>Updating Lightbox...</b>");
			g_garbageWindow.document.writeln("</body>");
			g_garbageWindow.document.writeln("</html>");
		}
	}

    if (document.assetArray[item].added) {

        lbxForm.operation.value = "remove";
        lbxForm.submit();
        g_currentlyUpdating = true;

        // The submit returns immediately, but actually takes a little
        // time in real life.  Therefore we give the server half a chance
        // to catch up...

        var expr = 'finishLightboxUpdate("' +
                   item +
                   '","Removed ' + captionId + ' from lightbox ' +
                   lbx.text +
                   '",false);';

        window.setTimeout(expr, 1000);

    } else {
        
        lbxForm.operation.value = "add";
        lbxForm.submit();
        g_currentlyUpdating = true;

        var expr = 'finishLightboxUpdate("' +
                   item +
                   '","Added ' + captionId + ' to lightbox ' +
                   lbx.text +
                   '",true);';

        window.setTimeout(expr, 1000);
    }
}

// This function removes an item from a lightbox - and thus
// is only used on lightbox pages.

function removeFromLightbox(itemId,project_id)
{
    if (confirm('Are you sure you want to remove the item?')) {

        var lbxForm = getDocForm("remove_item_form");
        lbxForm.item_id.value     = itemId;
        lbxForm.project_id.value = project_id;
        lbxForm.submit();

    }
}

function performSimpleAction() {

   var bulkForm = getDocForm("bulk_browser_action");

       if ( bulkForm.project_needed.value == 'true' ) {
       	
       	  var prj = getSelectedProject();
       	      
       	      if ( prj == null)
                 return false;
              else 
                 bulkForm.project_id.value = prj.value;
       	
       } else if (bulkForm.lbx_needed.value == 'true') {
       	
          var lbxId = document.lightbox_form.lightbox_list.options[document.lightbox_form.lightbox_list.selectedIndex].value;	
       	      bulkForm.lightbox_id.value = lbxId;
       	      
       } else {
       	
       	   return false;
       }			

       return true;
}

function performBulkAction()
{
        
        var bulkForm = getDocForm("bulk_browser_action");
        if (bulkForm.project_needed.value == 'true') {
     
           var prj = getSelectedProject();
           
               if ( prj == null)
                  return false;
               else 
                  bulkForm.project_id.value = prj.value;
        }
        
        if (bulkForm.lbx_needed.value == 'true') {
     
           var lbxId = document.lightbox_form.lightbox_list.options[document.lightbox_form.lightbox_list.selectedIndex].value;
           
               if ( lbxId == null)
                  return false;
               else 
                  bulkForm.lightbox_id.value = lbxId;
        }
        
    var selectedItems = 0;
    var deletedFound  = false;
    var assetInTask = 0;

    for (var i = 0; i < document.assetArray.length; i++) {

        if ( document.assetArray[i].selected   ) {

            if ( document.assetArray[i].inTrashcan ) 
                deletedFound = true;
             if(bulkForm["submit_name"].name == "transmit_assets.x")    
                {
                    var hiddenName = "bulk_caption_id_" + selectedItems;
                    bulkForm[hiddenName].value = document.assetArray[i].captionId;
                    selectedItems++;
                }
                else if(bulkForm["submit_name"].name == "export_to_excel.x")    
                {
                    var hiddenName = "bulk_caption_id_" + selectedItems;
                    bulkForm[hiddenName].value = document.assetArray[i].captionId;
                    selectedItems++
                 
                }
              else {
                        if(!document.assetArray[i].isCheckout){
                            var isOldVersion = "oldVersion_"+ document.assetArray[i].captionId;
                            //
                            //if(!document.getElementById(isinABatchOfhimself))
                            
                            if(!document.getElementById(isOldVersion))
                            {
                                if(bulkForm["submit_name"].name == "checkout_to_project.x" || bulkForm["submit_name"].name == "asset_move_task.x" || bulkForm["submit_name"].name == "asset_copy_task.x" || bulkForm["submit_name"].name == "export_to_excel.x")
                                {
                                    var isinABatchOfhimself = "isInAbatchOfhimself_"+ document.assetArray[i].captionId;
                                    if(!document.getElementById(isinABatchOfhimself))
                                    {    
                                        var hiddenName = "bulk_caption_id_" + selectedItems;
                                        bulkForm[hiddenName].value = document.assetArray[i].captionId;
                                        selectedItems++;
                                    } 
                                    else  
                                        assetInTask++; 
                                 }
                                 else
                                 {
                                        var hiddenName = "bulk_caption_id_" + selectedItems;
                                        bulkForm[hiddenName].value = document.assetArray[i].captionId;
                                        selectedItems++;
                                 }    
                            }
                        }
                        else
                            assetInTask++;
                   }         
        }
    }

    if ( deletedFound ) {
        alert('Deleted items were selected.');
        return false;
    }
    else if (selectedItems == 0) {
        if(assetInTask != 0){
            alert('Selected items were in task of other user.');
            return false;
        }
        else {
            alert('No items were selected. Please select one or more items.');
            return false;
        }    
    }
      else if(selectedItems != 0 && assetInTask != 0) {
        if(bulkForm["submit_name"].name == "add_to_lightbox.x" || bulkForm["submit_name"].name == "checkout_to_project.x" || bulkForm["submit_name"].name == "add_to_project.x"){
            if(confirm("Some of selected items are in task. So can't perform oprations on them."))
                return true; 
        }        
        else
            return true;        
    }
    else {
        // Make sure the rest of 'em are clear
        for ( ; selectedItems < document.assetArray.length; selectedItems++) {
            var hiddenName = "bulk_caption_id_" + selectedItems;
            bulkForm[hiddenName].value = "";
        }
       return true;
    }
}

function checkSelection(bulkForm)
{
    var selectedItems = 0;
    var deletedFound  = false;

    if(typeof(bulkForm.bypassSelectCheck) != "undefined")
	    if(bulkForm.bypassSelectCheck.value == 'true')
		return true;

    for (var i = 0; i < document.assetArray.length; i++) {
        if ( document.assetArray[i].selected   ) {
            if ( document.assetArray[i].inTrashcan ) 
                deletedFound = true;
            selectedItems++;
        }
    }

    if ( deletedFound ) {
        alert('Deleted items were selected.');
        return false;
    }
    else if (selectedItems == 0) {
        alert('No items were selected.  Please select one or more items.');
        return false;
    }
    return true;
}

//This Function set values in hindden varible when form is posted
//performBulkLightboxAction called this function.
function getSelectedItems(bulkForm, selectedItemsCount, itemIndex )
{
        var hiddenItemName    = "bulk_item_id_"    + selectedItemsCount;
        var hiddenCaptionName = "bulk_caption_id_" + selectedItemsCount;
        bulkForm[hiddenItemName].value    = document.assetArray[itemIndex].itemId;
        bulkForm[hiddenCaptionName].value = document.assetArray[itemIndex].captionId;
}

function performBulkLightboxAction(DocumentBulkForm, pDocument) {

   
   var lbxForm;
   var bulkForm;

       if(typeof(pDocument) != "undefined") {
       
         lbxForm =  pDocument.forms["bulk_browser_action_top"];
	 bulkForm = pDocument.forms[DocumentBulkForm];
       
       } else {
       
	 lbxForm = getDocForm("bulk_browser_action_top");
	 // bulkForm = getDocForm(DocumentBulkForm);
	 
	 bulkForm = getDocForm("bulk_browser_action_top");
	 
       }

       // -- Get the currently selected lightbox.  Not all actions require
       // -- a lightbox, so we can't usefully check for non-existence.
   
   var lbx;

       if (lbxForm) {
          
          if (lbxForm.lightbox_id_options) {
            
            var idx = lbxForm.lightbox_id_options.selectedIndex;
            
                if (idx != -1) {
                   lbx = lbxForm.lightbox_id_options.options[idx].value;
                }
          }
       }

       if (lbx == null)
          lbx = "";

        bulkForm.lightbox_id.value = lbx;
    
    var selectedItems = 0;
    var deletedFound  = false;
	var itemInTask = 0;
	
	if(bulkForm["submit_name"].name == "checkout_to_project.x" || bulkForm["submit_name"].name == "create_move_task.x" || bulkForm["submit_name"].name == "create_copy_task.x")
	        {
                for (var i = 0; i < document.assetArray.length; i++) 
                {
                    if (document.assetArray[i].selected) 
                    {
                        if ( document.assetArray[i].inTrashcan ) 
                            deletedFound = true;
	                    if(!document.assetArray[i].isCheckout)
	                    {
	                        var isinABatchOfhimself = "isInAbatchOfhimself_"+ document.assetArray[i].captionId;
                            if(!document.getElementById(isinABatchOfhimself))
                            {                        
                                getSelectedItems(bulkForm ,selectedItems ,i);
                                selectedItems++;
                            }
                            else
                                itemInTask++;     
                        }
                        else
                                itemInTask++;     
                    }           
                }
        	            
	        }
	        else
	        {
               for (var i = 0; i < document.assetArray.length; i++) {

                    if (document.assetArray[i].selected) {

                        if ( document.assetArray[i].inTrashcan ) 
                            deletedFound = true;
                        
                        if(bulkForm["submit_name"].name == "transmit_assets.x")    
                        {
                            getSelectedItems(bulkForm, selectedItems,i);
                            selectedItems++;
                       
                        } 
                        else {
                            if(!document.assetArray[i].isCheckout){
                                getSelectedItems(bulkForm, selectedItems, i);
                                selectedItems++;
                            }
                            else
                                itemInTask++;     
                    }     
                    }
                }
            }
  
    if ( deletedFound ) {
        
        alert('Deleted items were selected.');
        return false;
    
    } else if (selectedItems == 0) {
        if(itemInTask != 0)
        {
            alert("Selected items were in task of other user.");
            return false;
        }
        
	if(typeof(bulkForm.bypassSelectCheck) == "undefined")
	{
		alert('No items were selected.  Please select one or more items.');
		return false;
	}
	
	if (bulkForm.bypassSelectCheck.value == 'false')
	{
    		alert('No items were selected.  Please select one or more items.');
	        return false;
	}
	else
	{
		bulkForm.bypassSelectCheck.value = 'false';
		return true;
	}
    
    }
	 else {

     //-- Kyocera customization:
     //-- warn before removing items from a lightbox:       
     var warning = "You are about to remove selected item(s) from this folder.\n Do you wish to continue?";
     
     if(bulkForm.submit_name.name == "remove_from_lightbox.x" && !confirm(warning))
     	return false;
	else {
        // Make sure the rest of 'em are clear
        for ( ; selectedItems < document.assetArray.length; selectedItems++) {
            var hiddenItemName    = "bulk_item_id_"    + selectedItems;
            var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
            bulkForm[hiddenItemName].value    = "";
            bulkForm[hiddenCaptionName].value = "";
        }

	if(typeof(pDocument) != "undefined") {
	
	   bulkForm.bulk_browser_action_top_command.value = "add_to_collection";
           bulkForm.submit();
	
	} else 
	
	   return true;
	}//Kyocera customization
   }
}

function performBulkLightboxActionORIG(DocumentBulkForm, pDocument) // delete
{
	var lbxForm;
	var bulkForm;

	if(typeof(pDocument) != "undefined")
	{
	    lbxForm =  pDocument.forms["current_lightbox_form"];
		bulkForm = pDocument.forms[DocumentBulkForm];
	}
	else
	{
	    lbxForm = getDocForm("current_lightbox_form");
		bulkForm = getDocForm(DocumentBulkForm);
	}


    // Get the currently selected lightbox.  Not all actions require
    // a lightbox, so we can't usefully check for non-existence.
    
	var lbx;

    if (lbxForm) {
        if (lbxForm.project_id) {
            var idx = lbxForm.project_id.selectedIndex;
            if (idx != -1) {
                lbx = lbxForm.project_id.options[idx].value;
            }
        }
    }

    if (lbx == null)
        lbx = "";


    bulkForm.project_id.value = lbx;
    var selectedItems = 0;
    var deletedFound  = false;
	
    for (var i = 0; i < document.assetArray.length; i++) {

        if (document.assetArray[i].selected) {

            if ( document.assetArray[i].inTrashcan ) 
                deletedFound = true;

            var hiddenItemName    = "bulk_item_id_"    + selectedItems;
            var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
            bulkForm[hiddenItemName].value    = document.assetArray[i].itemId;
            bulkForm[hiddenCaptionName].value = document.assetArray[i].captionId;
            selectedItems++;
        }
    }
    
    if ( deletedFound ) {
        alert('Deleted items were selected.');
        return false;
    }
    else if (selectedItems == 0) {
        alert('No items were selected.  Please select one or more items.');
        return false;
    } else {
        // Make sure the rest of 'em are clear
        for ( ; selectedItems < document.assetArray.length; selectedItems++) {
            var hiddenItemName    = "bulk_item_id_"    + selectedItems;
            var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
            bulkForm[hiddenItemName].value    = "";
            bulkForm[hiddenCaptionName].value = "";
        }

		if(typeof(pDocument) != "undefined")
		{
			//alert(bulkForm.action);

			bulkForm.bulk_browser_action_top_command.value = "add_to_collection";

			//alert(bulkForm.bulk_browser_action_top_command.value);
			
			bulkForm.submit();
		}
		else
	        return true;
    }
}

	var ProjectbulkForm;
	var ProjectpDoc;
    	var checkoutAssetList = new Array();

function performBulkProjectAction(DocumentBulkForm, pDocument)
{
	var lbxForm;
	ProjectpDoc = pDocument;

	if(typeof(pDocument) != "undefined")
	{
	    lbxForm =  pDocument.forms["current_lightbox_form"];
		ProjectbulkForm = pDocument.forms[DocumentBulkForm];
	}
	else
	{
	    lbxForm = getDocForm("current_lightbox_form");
		ProjectbulkForm = getDocForm(DocumentBulkForm);
	}


    // Get the currently selected lightbox.  Not all actions require
    // a lightbox, so we can't usefully check for non-existence.
    
	var lbx;

    if (lbxForm) {
        if (lbxForm.project_id) {
            var idx = lbxForm.project_id.selectedIndex;
            if (idx != -1) {
                lbx = lbxForm.project_id.options[idx].value;
            }
        }
    }


    if (lbx == null)
        lbx = "";

    if(lbx!="")
	ProjectbulkForm.project_id.value = lbx;
    var selectedItems = 0;
    var collectionItemsFound  = false;
    var checkoutAssetCount = 0;
	
    for (var i = 0; i < document.assetArray.length; i++) {
		var isCheckedOut = "";

        if (document.assetArray[i].selected) {

            if ( document.assetArray[i].inTrashcan ) 
                collectionItemsFound = true;
	    if(document.assetArray[i].isCheckout){
			checkoutAssetList[checkoutAssetCount]=document.assetArray[i];
			checkoutAssetCount++;
			isCheckedOut = "yes";
	    } else isCheckedOut = "no";

            var hiddenItemName    = "bulk_item_id_"    + selectedItems;
            var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
			var hiddenCheckOutStatus = "bulk_is_checkout_" + selectedItems; // Satyajit: to identify checkouts
            ProjectbulkForm[hiddenItemName].value    = document.assetArray[i].itemId;
            ProjectbulkForm[hiddenCaptionName].value = document.assetArray[i].captionId;
	    ProjectbulkForm[hiddenCheckOutStatus].value = isCheckedOut;
            selectedItems++;
        }
    }
    
    if ( collectionItemsFound ) {
        alert('Collection items were selected.');
        return false;
    }
    else if (selectedItems == 0) {
        alert('No items were selected.  Please select one or more items.');
        return false;
    }


    if(selectedItems==checkoutAssetCount){
		doCheckin_to_collection();
		return true;
	}

	for ( ; selectedItems < document.assetArray.length; selectedItems++) {
		var hiddenItemName    = "bulk_item_id_"    + selectedItems;
		var hiddenCaptionName = "bulk_caption_id_" + selectedItems;
		var hiddenCheckOutStatus="bulk_is_checkout_" + selectedItems;
		ProjectbulkForm[hiddenItemName].value    = "";
		ProjectbulkForm[hiddenCaptionName].value = "";
		ProjectbulkForm[hiddenCheckOutStatus].value="";
	}

	
    if(checkoutAssetCount==0){
		doAdd_to_collection();
		return true;

	}

    

	if(checkoutAssetCount > 0 ){
	var url = '/work/determine_add_method.aspx?project_id='+ProjectbulkForm.project_id.value;
	
        var finishTaskPopUp = window.open(url, 'determine_add_method', 'width=500,height=350');
        finishTaskPopUp.focus();
	return true;
		
	}

return false;
	 
}

function doAdd_to_collection()
{
	// Make sure the rest of 'em are clear
	
	if(typeof(ProjectpDoc) != "undefined")
	{
		//alert(bulkForm.action);

		ProjectbulkForm.bulk_browser_action_top_command.value = "add_to_collection";

		//alert(bulkForm.bulk_browser_action_top_command.value);

		ProjectbulkForm.submit();
	}
	else
		return true;

return true;
}

function doCheckin_to_collection()
{
var url='/work/checkin_continue.aspx?project_id=' + ProjectbulkForm.project_id.value;

url+= '&return_url='+ProjectbulkForm.return_url.value;

for ( i in checkoutAssetList)
{
	url+='&item_id=' + checkoutAssetList[i].itemId;
}

document.location.href=url;
return true;
}

// Set all the added flags (for example, after updating the
// lightbox select box...)

function setAddedFlags(flag)
{
    for (var i = 0; i < document.assetArray.length; i++)
        document.assetArray[i].added = flag;
}

// Set all the 'displayed' flags.

function setDisplayedFlags(flag)
{
    for (var i = 0; i < document.assetArray.length; i++)
        document.assetArray[i].displayed = flag;
}

// Turn all the images on or off

function updatePowerbars()
{
    for (var i = 0; i < document.assetArray.length; i++) {

        //if (document.assetArray[i].displayed)
        //    powerbarOn(i);
        //else
        powerbarOn(i);
    }
}

function updateItemDisplay(item)
{
    //if (document.assetArray[item].displayed)
    //    powerbarOn(item);
    //else
        powerbarOn(item);

    if (document.assetArray[item].selected)
        selectedLightOn(item);
    else
        selectedLightOff(item);
}

function updateDisplay()
{
    for (var i = 0; i < document.assetArray.length; i++) {
        updateItemDisplay(i);
    }
}

// Do the appropriate stuff at loading time
function setInitialFlags()
{
    setAddedFlags(false);
    setDisplayedFlags(false);
}

// Do what's necessary for changing the lightbox
function changeLightbox()
{
    setAddedFlags(false);
    updatePowerbars();
}

// the info and/or comp window
var g_infoCompWindow;

function openInfoCompWindow(uri,caption_id) {
    var windowHeight = eval(screen.height - 150);
    var windowwidth  = eval(screen.width - 150);
    var features     = "width=" + windowwidth + 
                       ",height=" + windowHeight +
                       ",location=no,menubar=no,toolbar=no,resizable=yes" +
                       ",scrollbars=yes,left=75,top=75";
    var windowname   = "infocompwindow_" + caption_id;

    g_infoCompWindow = window.open(uri, windowname, features);
    g_infoCompWindow.focus();
}

function plugInFound() {
	var found = false;
   
    if (navigator.appName=="Netscape") {

		for (i=0;i<navigator.mimeTypes.length;i++)
			if( navigator.mimeTypes[i].type=="audio/x-pn-realaudio-plugin" ) {
				found = true;
				break;
			}
    }

	else
		found = true;

	return found;
}

function pbShowTooltip(id, text)
{
    var control = document.getElementById(id);
    if(control)
    {
	if (browser.toLowerCase() == "ie" && platform.toLowerCase() == "mac")
		text = text.substr(0, 20);
        control.innerHTML = text;
    }
   return onText(text);
}
function pbHideTooltip(id)
{
    var control = document.getElementById(id);
    if(control)
    {
        control.innerHTML = "";
    }
     return offText('');
}

