﻿
function WatchEm(onoff)
{
   var WatchButton = document.getElementById('_WatchButton');
   
   var Command;
   var Data = new Object;
   Data.CommandName = "";
   
   if(onoff)
   {
      Command = "AddWatch(*¦**¦*)";
      Data.CommandName = "AddWatch";
      Data.OnOff = true;
   }
   else
   {
      Command = "RemoveWatch(*¦**¦*)";   
      Data.CommandName = "RemoveWatch";
      Data.OnOff = false;
   }
     
   msgBoxId = showMessageBox("_Processing", 1, 0, 1);
   
   AjaxExecute(Command, Data);   
     
}

function Swap(onoff)
{
   var WatchButton = document.getElementById('_PageControl__WatchButton');
   
   if(onoff)
   {
      WatchButton.src = 'http://images.stardock.com/gc2mv/watchplayer.on.gif';
      WatchButton.onclick = function() { WatchEm(false); };
      WatchButton.title = 'Stop Watching this Character';
   }
   else
   {
      WatchButton.src = 'http://images.stardock.com/gc2mv/watchplayer.off.gif';
      WatchButton.onclick = function() { WatchEm(true); };
      WatchButton.title = 'Watch this Character';
   }   
   
}

function ManageCallBack(result, Data)
{
   if (Data.CommandName == "AddWatch")
   {        
      if(ProcessResult(result, 0, Data.OnOff))
      {
         Swap(Data.OnOff);
         alert('You are now watching this Character');
      }         
   }
          
   if (Data.CommandName == "RemoveWatch")
   {        
      if(ProcessResult(result, 0, Data.OnOff))
      {
         Swap(Data.OnOff);
         alert('You are no longer watching this Character');
      }         
   }          
            
}

function ProcessResult(result, setOutput, onoff)
{
   var message = "";

   if(result == "0")
   {
      if(onoff)
         message = "_ErrorAdding";
      else
         message = "_ErrorRemoving";
   }      
      
   hideMessageBox(msgBoxId);
   msgBoxId = 0;     
   
   if(message == "")
   {     
      if(setOutput == 1) document.getElementById("_ActionResult").innerHTML = result;
      return true;
   }
   else
   { 
      msgBoxId = showMessageBox(message, 1, 0, 1);
   }
   
   return false;
   
}

function ManageAjaxError(message, Data)
{
  alert("Exception :\n" + message + "\n\nPlease copy this message (Control + C) and notify the site administrators.");
  
}