----------------------------------------------------------------------------------------------------
-- ChatBox Slash Commands
----------------------------------------------------------------------------------------------------
function ChatBox_Commands(msg)
   if msg == nil then msg = "" end

   msg = string.lower(msg)

   -- No parameter or not one listed from above
   if msg == "" or msg == "?" or msg == string.lower(CB_OPTIONS) or msg == string.lower(CB_HELP) then

      cb_display("\n");
      cb_display(YEL..CB_HELPTITLE.."   /ts and /plm are also valid options.".."\n")
      cb_display(YEL .. CB_SHORTCUTS);
      cb_display(WHT .. CB_STICKY .. " : " .. RED .. ChatBox_check(ChatBox.setSticky) ..GRN.. CB_STICKY_HELP_TEXT)
      cb_display(WHT .. CB_SHORTLFG .. " : " .. RED ..  ChatBox_check(ChatBox.shortLFG) ..GRN..CB_SHORTLFG_HELP_TEXT)
      cb_display(WHT .. CB_HIDEBOTTOMBUTTON .. " : " .. RED .. ChatBox_check(ChatBox.hideBottomButton) ..GRN..CB_HIDEBOTTOMBUTTON_HELP_TEXT)
      cb_display(WHT .. CB_THROTTLE .. " : " .. RED .. ChatBox_check(ChatBox.throttle) ..GRN..CB_THROTTLE_HELP_TEXTA)
      cb_display(RED .. "                     0 "..GRN..CB_THROTTLE_HELP_TEXTB..RED.."1-20"..GRN..CB_THROTTLE_HELP_TEXTC)
      cb_display(WHT .. CB_GTHROTTLE .. " : " .. RED .. ChatBox_check(ChatBox.gthrottle) ..GRN..CB_GTHROTTLE_HELP_TEXTA)
      cb_display(RED .. "                     0 "..GRN..CB_GTHROTTLE_HELP_TEXTB..RED.."1-30"..GRN..CB_GTHROTTLE_HELP_TEXTC)
      cb_display(WHT .. CB_HIDEGOSSIP .. " : " .. RED .. ChatBox_check(ChatBox.hideGossip) ..GRN..CB_HIDEGOSSIP_HELP_TEXT)
      cb_display(WHT .. CB_USEARROWS .. " : " .. RED .. ChatBox_check(ChatBox.useArrows) ..GRN..CB_USEARROWS_HELP_TEXT)
      cb_display(WHT .. CB_EDITATTOP .. " : " .. RED .. ChatBox_check(ChatBox.editAtTop) ..GRN..CB_EDITATTOP_HELP_TEXT)
      cb_display(WHT .. CB_HIDEEMOTEBUTTON .. " : " .. RED .. ChatBox_check(ChatBox.hideEmoteButton) ..GRN..CB_HIDEEMOTEBUTTON_HELP_TEXT)
      cb_display(WHT .. CB_MENUSIDE .. " : " .. RED .. ChatBox_check(ChatBox.menuOnLeft) ..GRN..CB_MENUSIDE_HELP_TEXT)
      cb_display(WHT .. CB_COLORNAMES .. " : " .. RED .. ChatBox_check(ChatBox.colorNames) ..GRN..CB_COLORNAMES_HELP_TEXT)
      cb_display(WHT .. CB_COLORRANDOM .. " : " .. RED .. ChatBox_check(ChatBox.colorRandom) ..GRN..CB_COLORRANDOM_HELP_TEXT)
      cb_display(WHT .. CB_LONGSTRINGS .. " : " .. RED .. ChatBox_check(ChatBox.longStrings) ..GRN..CB_LONGSTRINGS_HELP_TEXT)
      cb_display(WHT .. CB_TRUNCLENGTH .. " : " .. RED .. ChatBox_check(ChatBox.truncLength) ..GRN..CB_TRUNCLENGTH_HELP_TEXTA)
      cb_display(RED .. "                     100 "..GRN..CB_TRUNCLENGTH_HELP_TEXTB..RED.."0-20"..GRN..CB_TRUNCLENGTH_HELP_TEXTC)
      cb_display(WHT .. CB_CLINK .. " : " .. RED .. ChatBox_check(ChatBox.CLINK) ..GRN..CB_CLINK_HELP_TEXT)
      cb_display(WHT .. CB_NORRIS .. " : " .. RED .. ChatBox_check(ChatBox.chuckNorris) ..GRN..CB_NORRIS_HELP_TEXT)

   --to change the sticky
   elseif ( string.find(msg, string.lower(CB_STICKY_SHORT))) then
      if ChatBox.setSticky then
         cb_display(WHT..CB_STICKY_TEXT..RED..CB_OFF);
         ChatBox.setSticky = false;
      else
         cb_display(WHT..CB_STICKY_TEXT..RED..CB_ON);
         ChatBox.setSticky = true;
      end
      ChatBox_SetSticky();


   --to change the shortLFG tag (Change LookingForGroup to LFG) TODO possilby add more. (G, T, WD, LD)?
   elseif ( string.find(msg, string.lower(CB_SHORTLFG_SHORT))) then
      if ChatBox.shortLFG then
         cb_display(WHT..CB_SHORTLFG_TEXT..RED..CB_OFF);
         ChatBox.shortLFG = false;
      else
         cb_display(WHT..CB_SHORTLFG_TEXT..RED..CB_ON);
         ChatBox.shortLFG = true;
      end

   --to change the scroll to bottom button display
   elseif ( string.find(msg, string.lower(CB_HIDEBOTTOMBUTTON_SHORT))) then
      if ChatBox.hideBottomButton then
         cb_display(WHT..CB_HIDEBOTTOMBUTTON_TEXT..RED..CB_ON);
         ChatBox.hideBottomButton = false;
      else
         cb_display(WHT..CB_HIDEBOTTOMBUTTON_TEXT..RED..CB_OFF);
         ChatBox.hideBottomButton = true;
      end


   --to change the emote/language button display
   elseif ( string.find(msg, string.lower(CB_HIDEEMOTEBUTTON_SHORT))) then
      if ChatBox.hideEmoteButton then
         cb_display(WHT..CB_HIDEEMOTEBUTTON_TEXT..RED..CB_ON);
         ChatFrameMenuButton:Show();
         ChatBox.hideEmoteButton = false;
      else
         cb_display(WHT..CB_HIDEEMOTEBUTTON_TEXT..RED..CB_OFF);
         ChatFrameMenuButton:Hide();
         ChatBox.hideEmoteButton = true;
      end


   --to change the hideGossip display
   elseif ( string.find(msg, string.lower(CB_HIDEGOSSIP_SHORT))) then
      if ChatBox.hideGossip then
         cb_display(WHT..CB_HIDEGOSSIP_TEXT..RED..CB_OFF);
         ChatBox.hideGossip = false;
      else
         cb_display(WHT..CB_HIDEGOSSIP_TEXT..RED..CB_ON);
         ChatBox.hideGossip = true;
      end

   --to change the useArrows behavior
   elseif ( string.find(msg, string.lower(CB_USEARROWS_SHORT))) then
      if ChatBox.useArrows then
         cb_display(WHT..CB_USEARROWS_TEXT.. RED .. CB_OFF);
         ChatFrameEditBox:SetAltArrowKeyMode(true);
         ChatBox.useArrows = false;
      else
         cb_display(WHT..CB_USEARROWS_TEXT .. RED .. CB_ON);
         ChatFrameEditBox:SetAltArrowKeyMode(false);
         ChatBox.useArrows = true;
      end

   --to change the editAtTop display
   elseif ( string.find(msg, string.lower(CB_EDITATTOP_SHORT)) ) then
      if ChatBox.editAtTop then
         cb_display(WHT..CB_EDITATTOP_TEXTA..RED..CB_BOTTOM..WHT..CB_EDITATTOP_TEXTB);
         ChatFrameEditBox:ClearAllPoints();
         ChatFrameEditBox:SetPoint("TOPLEFT", "ChatFrame1", "BOTTOMLEFT", 0, 2);
         ChatFrameEditBox:SetPoint("TOPRIGHT", "ChatFrame1", "BOTTOMRIGHT", 0, 2);
         ChatBox.editAtTop = false;
      else
         cb_display(WHT..CB_EDITATTOP_TEXTA..RED..CB_TOP..WHT..CB_EDITATTOP_TEXTB);
         ChatFrameEditBox:ClearAllPoints();
         ChatFrameEditBox:SetPoint("BOTTOMLEFT", "ChatFrame1", "TOPLEFT", 0, 2);
         ChatFrameEditBox:SetPoint("BOTTOMRIGHT", "ChatFrame1", "TOPRIGHT", 0, 2);
         ChatBox.editAtTop = true;
      end


   --to change the throttle
   elseif ( string.find(msg, string.lower(CB_THROTTLE_SHORT)) ) then
       local index = string.find(msg, " ");
        if (index) then
            local test = tonumber(strsub(msg, index+1));
            if ( test and test == 0 ) then
               cb_display(WHT..CB_THROTTLE_TEXTA..RED..CB_OFF);
               ChatBox.throttle = false;
            elseif ( test and test > 0 and test < 21 ) then
               ChatBox.throttle = test;
               cb_display(WHT..CB_THROTTLE_TEXTA..RED..ChatBox.throttle);
            else
               cb_display(WHT..CB_THROTTLE_TEXTB..RED.."1-20");
            end
        else
            cb_display(WHT..CB_THROTTLE_TEXTA..RED..ChatBox_check(ChatBox.throttle));
        end

   --to change the guild throttle
   elseif ( string.find(msg, string.lower(CB_GTHROTTLE_SHORT)) ) then
       local index = string.find(msg, " ");
        if (index) then
            local test = tonumber(strsub(msg, index+1));
            if ( test and test == 0 ) then
               cb_display(WHT..CB_GTHROTTLE_TEXTA..RED..CB_OFF);
               ChatBox.gthrottle = false;
            elseif ( test and test > 0 and test < 31 ) then
               ChatBox.gthrottle = test;
               cb_display(WHT..CB_GTHROTTLE_TEXTA..RED..ChatBox.gthrottle);
            else
               cb_display(WHT..CB_GTHROTTLE_TEXTB..RED.."1-30");
            end
        else
            cb_display(WHT..CB_GTHROTTLE_TEXTA..RED..ChatBox_check(ChatBox.gthrottle));
        end

   --to change the truncLength for channel names in chat
   elseif ( string.find(msg, string.lower(CB_TRUNCLENGTH_SHORT)) ) then
       local index = string.find(msg, " ");
        if (index) then
            local test = tonumber(strsub(msg, index+1));
            if ( test and test == 100 ) then
               cb_display(WHT..CB_TRUNCLENGTH_TEXTA..RED..CB_OFF);
               ChatBox.truncLength = 100;
            elseif ( test and test >= 0 and test < 21 ) then
               ChatBox.truncLength = test;
               cb_display(WHT..CB_TRUNCLENGTH_TEXTA..RED..ChatBox.truncLength);
            else
               cb_display(WHT..CB_TRUNCLENGTH_TEXTB..RED.."0-20");
            end
        else
            cb_display(WHT..CB_TRUNCLENGTH_TEXTA..RED..ChatBox_check(ChatBox.truncLength));
        end

   --to change which side the buttons are on.
   elseif ( string.find(msg, string.lower(CB_MENUSIDE_SHORT)) ) then
      if ChatBox.menuOnLeft then
         cb_display(WHT..CB_MENUSIDE_TEXT.. RED .. CB_OFF);
         ChatBox.menuOnLeft = false;
      else
         cb_display(WHT..CB_MENUSIDE_TEXT .. RED .. CB_ON);
         ChatBox.menuOnLeft = true;
      end
      ChatBox_Relocate_Buttons()

   --to change the color of names in chat behavior
   elseif ( string.find(msg, string.lower(CB_COLORNAMES_SHORT))) then
      if ChatBox.colorNames then
         cb_display(WHT..CB_COLORNAMES_TEXT.. RED .. CB_OFF);
         ChatBox.colorNames = false;
      else
         cb_display(WHT..CB_COLORNAMES_TEXT .. RED .. CB_ON);
         ChatBox.colorNames = true;
      end
      ChatBox_SetStrings();

   --to change the RANDOM color of names in chat behavior
   elseif ( string.find(msg, string.lower(CB_COLORRANDOM_SHORT))) then
      if ChatBox.colorRandom then
         cb_display(WHT..CB_COLORRANDOM_TEXT.. RED .. CB_OFF);
         ChatBox.colorRandom = false;
      else
         cb_display(WHT..CB_COLORRANDOM_TEXT .. RED .. CB_ON);
         ChatBox.colorRandom = true;
      end

   --to change showing [Party] [Guild] [Raid] in chat.
   elseif ( string.find(msg, string.lower(CB_LONGSTRINGS_SHORT))) then
      if ChatBox.longStrings then
         cb_display(WHT..CB_LONGSTRINGS_TEXT.. RED .. CB_OFF);
         ChatBox.longStrings = false;
      else
         cb_display(WHT..CB_LONGSTRINGS_TEXT .. RED .. CB_ON);
         ChatBox.longStrings = true;
      end
      ChatBox_SetStrings();

   --to change if you want to use the CLINK tag
   elseif ( string.find(msg, string.lower(CB_CLINK_SHORT))) then
      if ChatBox.CLINK then
         cb_display(WHT..CB_CLINK_TEXT..RED..CB_OFF);
         ChatBox.CLINK = false;
      else
         cb_display(WHT..CB_CLINK_TEXT..RED..CB_ON);
         ChatBox.CLINK = true;
      end

    --to change if you want to use the Chuck Norris spam nuker
   elseif ( string.find(msg, string.lower(CB_NORRIS_SHORT))) then
      if ( string.find(msg, string.lower(CB_VERBOSE))) then
            cb_display(WHT..CB_NORRIS_TEXT..RED..CB_ON.." ("..CB_VERBOSE..")");
            ChatBox.chuckNorris = CB_VERBOSE;
      else
         if ChatBox.chuckNorris then
            cb_display(WHT..CB_NORRIS_TEXT..RED..CB_OFF);
            ChatBox.chuckNorris = false;
	      else
             cb_display(WHT..CB_NORRIS_TEXT..RED..CB_ON);
             ChatBox.chuckNorris = true;
	      end
      end

    --no idea what they typed!!!
   else
      cb_display(RED .. CB_ERRORMSG)
   end
end

----------------------------------------------------------------------------------------------------
-- TimeStamp Commands
----------------------------------------------------------------------------------------------------

-- Handles a slash command
function ChatBox_TimeStamp_Commands(msg)

   if msg == nil then msg = "" end

   if not (string.find(msg, CB_TS_FORMAT)) then
      msg = string.lower(msg)
   end

   -- No parameter or not one listed from above
   if msg == "" or msg == "?" or msg == string.lower(CB_OPTIONS) or msg == string.lower(CB_HELP) then

      cb_display("\n");
      cb_display(YEL..CB_TS_HELPTITLE.."   /cb and /plm are also valid options.".."\n")
      -- List all chat frames and their status
		for i = 1, 7 do
		   local name = "ChatFrame"..i;
		   local status = ChatBox.TimeStamp_Settings.frames[name];
			local tabtext  =  getglobal(name .. "TabText"):GetText();
			if (tabtext) then
				name = name .. " (" .. tabtext .. ")";
			end
			if (status and status == CB_ON) then
			   cb_display(string.format("    " .. CB_TS_FRAMESTATUS_TEXT, WHT .. name .. END, GRN .. CB_ON));
			else
			   cb_display(string.format("    " .. CB_TS_FRAMESTATUS_TEXT, WHT .. name .. END, RED .. CB_OFF));
			end
		end
		cb_display(YEL .. "        " .. CB_TIMESTAMP_FRAME_HELP1);
		cb_display(YEL .. "        " .. CB_TIMESTAMP_FRAME_HELP2);
		cb_display("\n");

      cb_display(WHT .. CB_TS_COLOR .. " : " .. ChatBox_check_color() ..GRN.. CB_TS_COLOR_HELP_TEXT)
      cb_display(WHT .. CB_TS_FORMAT .. " : " .. RED .. ChatBox_check(ChatBox.TimeStamp_Settings.format).. GRN.. CB_TS_FORMAT_HELP_TEXTA)
      cb_display(WHT .. CB_TS_FORMAT_HELP_TEXTB);
      cb_display(WHT .. CB_TS_RESET .. GRN.. CB_TS_RESET_HELP_TEXT)



	elseif (msg == CB_TS_COLOR) then
		-- Change the color of the timestamps using a color picker
		ChatBox_TimeStamp_ColorPicker();

	elseif (msg == CB_TS_COLOR .. " " .. string.lower(CB_OFF)) then
		-- Disable the coloring of the timestamps
		ChatBox.TimeStamp_Settings.color = false;
		--ChatBox_TimeStamp_Set(CB_TS_COLOR, CB_OFF);
		cb_display(WHT..CB_TS_COLOR_TEXT .. " " .. ChatBox_check_color());

	elseif (string.find(msg, CB_TS_FORMAT)) then
	   local index = string.find(msg, " ");
        if (index) then
            local test = string.sub(msg, index+1)
            if ( test ) then
               ChatBox.TimeStamp_Settings.format = test;
            else
               ChatBox.TimeStamp_Settings.format = "[%H:%M:%S]";
            end
        else
           ChatBox.TimeStamp_Settings.format = "[%H:%M:%S]";
        end

		-- Show a message notifying the user what happened
		cb_display(WHT..CB_TS_FORMAT_TEXT .. " " .. RED .. ChatBox.TimeStamp_Settings.format);

	elseif (string.find(msg, string.lower(CB_ON))) then
      local index = string.find(msg, " ");
      if (index) then
         local test = string.sub(msg, index+1)
         if ( test ) then
            test = "ChatFrame"..tostring(test)
            ChatBox.TimeStamp_Settings.frames[test] = CB_ON;
            cb_display(string.format(CB_TIMESTAMP_FRAMEENABLED, GRN .. test .. END));
         else
            cb_display(RED .. CB_ERRORMSG)
         end
      else
         cb_display(RED .. CB_ERRORMSG)
      end

   elseif (string.find(msg, string.lower(CB_OFF))) then
      local index = string.find(msg, " ");
      if (index) then
         local test = string.sub(msg, index+1)
         if ( test ) then
            test = "ChatFrame"..tostring(test)
            ChatBox.TimeStamp_Settings.frames[test] = CB_OFF;
            cb_display(string.format(CB_TIMESTAMP_FRAMEDISABLED, GRN .. test .. END));
         else
            cb_display(RED .. CB_ERRORMSG)
         end
      else
         cb_display(RED .. CB_ERRORMSG)
      end

	elseif (msg == CB_TS_RESET) then
		-- Reset the settings of the current character back to defaults
		ChatBox.TimeStamp_Settings = {
   		color = false,
   		format = "[%H:%M:%S]",
   		frames = {
   			ChatFrame1 = CB_OFF,
   			ChatFrame2 = CB_OFF,
   			ChatFrame3 = CB_OFF,
   			ChatFrame4 = CB_OFF,
   			ChatFrame5 = CB_OFF,
   			ChatFrame6 = CB_OFF,
   			ChatFrame7 = CB_OFF,
   		   },
   		};

		-- Show a message notifying the user what happened
		cb_display(RED .. CB_TS_RESET_TEXT);

	--no idea what they typed!!!
   else
      cb_display(RED .. CB_ERRORMSG)
   end
end

----------------------------------------------------------------------------------------------------
-- PLM Slash Commands
----------------------------------------------------------------------------------------------------
function ChatBox_PLM_Commands(msg)
   if msg == nil then msg = "" end

   msg = string.lower(msg)

   -- No parameter or not one listed from above
   if msg == "" or msg == "?" or msg == string.lower(CB_OPTIONS) or msg == string.lower(CB_HELP) then
      cb_display("\n");
      cb_display(YEL..CB_HELPTITLE.."   /cb and /ts are also valid options.".."\n");
      cb_display(WHT .. CB_PLM_TEXT .. RED .. ChatBox_check(ChatBox.plm))
      cb_display("             " .. GRN .. CB_PLM_HELP_TEXT);
      cb_display(GRY .. CB_PLM_HELPA);
      cb_display(GRY .. CB_PLM_HELPB .. WHT .. CB_PLM_HELPC);
      cb_display(ORN .. CB_PLM_HELPD);
      cb_display("\n");
      cb_display(WHT .. CB_PLM_ALT_TEXT_HELP .. RED .. ChatBox_check(ChatBox.plm_alt_name));
      cb_display(WHT .. CB_PLM_SHIFT_TEXT_HELP .. RED .. ChatBox_check(ChatBox.plm_shift_name));
      cb_display(WHT .. CB_PLM_CTRL_TEXT_HELP .. RED .. ChatBox_check(ChatBox.plm_ctrl_name));


   --to toggle the Player Link Menu.
   elseif ( msg == string.lower(CB_ON) or msg == string.lower(CB_OFF) ) then
      if ChatBox.plm then
         cb_display(WHT..CB_PLM_TEXT..RED..CB_OFF);
         ChatBox.plm = false;
      else
         cb_display(WHT..CB_PLM_TEXT..RED..CB_ON);
         ChatBox.plm = true;
      end
      SetupPLM();


   --to change the alt key functionality
   elseif (string.find(msg, string.lower(CB_PLM_ALT))) then
      local index = string.find(msg, " ");
      if (index) then
         local test = string.sub(msg, index+1)
         if ( test ) then
            if test == string.lower(WHO) then
               ChatBox.plm_alt = ChatBox_specialSendWho;
               ChatBox.plm_alt_name = WHO;
            elseif test == string.lower(CB_TARGET) then
               ChatBox.plm_alt = TargetByName;
               ChatBox.plm_alt_name = CB_TARGET;
            elseif test == string.lower(WHISPER) then
               ChatBox.plm_alt = ChatFrame_SendTell;
               ChatBox.plm_alt_name = WHISPER;
            elseif test == string.lower(PARTY_INVITE) then
               ChatBox.plm_alt = InviteByName;
               ChatBox.plm_alt_name = PARTY_INVITE;
            elseif test == string.lower(IGNORE) then
               ChatBox.plm_alt = AddIgnore;
               ChatBox.plm_alt_name = IGNORE;
            end
         cb_display(WHT .. CB_PLM_ALT_TEXT_HELP .. RED .. ChatBox.plm_alt_name);
         end
      else
   		ChatBox.plm_alt = false;
   		ChatBox.plm_alt_name = CB_OFF;
	      cb_display(WHT .. CB_PLM_ALT_TEXT_HELP .. RED .. CB_OFF);
      end

  --to change the shift key functionality
   elseif (string.find(msg, string.lower(CB_PLM_SHIFT))) then
      local index = string.find(msg, " ");
      if (index) then
         local test = string.sub(msg, index+1)
         if ( test ) then
            if test == string.lower(WHO) then
               ChatBox.plm_shift = ChatBox_specialSendWho;
               ChatBox.plm_shift_name = WHO;
            elseif test == string.lower(CB_TARGET) then
               ChatBox.plm_shift = TargetByName;
               ChatBox.plm_shift_name = CB_TARGET;
            elseif test == string.lower(WHISPER) then
               ChatBox.plm_shift = ChatFrame_SendTell;
               ChatBox.plm_shift_name = WHISPER;
            elseif test == string.lower(PARTY_INVITE) then
               ChatBox.plm_shift = InviteByName;
               ChatBox.plm_shift_name = PARTY_INVITE;
            elseif test == string.lower(IGNORE) then
               ChatBox.plm_shift = AddIgnore;
               ChatBox.plm_shift_name = IGNORE;
            end
         cb_display(WHT .. CB_PLM_SHIFT_TEXT_HELP .. RED .. ChatBox.plm_shift_name);
         end
      else
   		ChatBox.plm_shift = false;
   		ChatBox.plm_shift_name = CB_OFF;
	      cb_display(WHT .. CB_PLM_SHIFT_TEXT_HELP .. RED .. CB_OFF);
      end

  --to change the control key functionality
   elseif (string.find(msg, string.lower(CB_PLM_CTRL))) then
      local index = string.find(msg, " ");
      if (index) then
         local test = string.sub(msg, index+1)
         if ( test ) then
            if test == string.lower(WHO) then
               ChatBox.plm_ctrl = ChatBox_specialSendWho;
               ChatBox.plm_ctrl_name = WHO;
            elseif test == string.lower(CB_TARGET) then
               ChatBox.plm_ctrl = TargetByName;
               ChatBox.plm_ctrl_name = CB_TARGET;
            elseif test == string.lower(WHISPER) then
               ChatBox.plm_ctrl = ChatFrame_SendTell;
               ChatBox.plm_ctrl_name = WHISPER;
            elseif test == string.lower(PARTY_INVITE) then
               ChatBox.plm_ctrl = InviteByName;
               ChatBox.plm_ctrl_name = PARTY_INVITE;
            elseif test == string.lower(IGNORE) then
               ChatBox.plm_ctrl = AddIgnore;
               ChatBox.plm_ctrl_name = IGNORE;
            end
         cb_display(WHT .. CB_PLM_CTRL_TEXT_HELP .. RED .. ChatBox.plm_ctrl_name );
         end
      else
   		ChatBox.plm_ctrl = false;
   		ChatBox.plm_ctrl_name = CB_OFF;
	      cb_display(WHT .. CB_PLM_CTRL_TEXT_HELP .. RED .. CB_OFF);
      end

   --no idea what they typed!!!
   else
      cb_display(RED .. CB_ERRORMSG)
   end
end