/******************************************************************************
 * This file is part of a software distribution, which is furnished under the *
 * terms of a license.  Use of this software  by any means is subject to this *
 * license  and  signifies  the  acceptance of  the  licensing  terms  stated *
 * therein. Please see  the file LICENSE in the  top-level directory  of this *
 * software  distribution  for detailed copyright  disclaimers  and licensing *
 * terms.                                                                     *
 ******************************************************************************
 * Copryight (c) by Andreas S. Wetzel - All rights reserved.                  *
 ******************************************************************************/

/* $Id: vd_help.c,v 1.5 2002/06/24 00:06:48 mickey Exp $ */

#include <vchat.h>
#include <proto_vchatd.h>
#include <copyright.h>

/********* Code *********/

void help(void)
{
	cprintf(chat, "\n* %sV%sChat%s -- Interactive TCP/IP conference system -- %sCOMMAND HELP%s:",
		S_FG_MAG, S_FG_YEL, S_OFF, S_FG_CYN, S_OFF);
	cprintf(chat, "*");
	cprintf(chat, "*  %sBasic commands are:%s\n*", S_UL, S_OFF);
	cprintf(chat, "*  %s.a%s [msg]           - send action message", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.c%s [chan]          - change to another channel", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.h%s                 - you just found out what this does", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.H%s                 - show extended command summary", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.i%s [nick] ...      - invite others to join the channel you're on", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.l%s [num] [user]    - show <num> last logins of <user> (default=all)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.m%s [nick] [msg]    - send a private message to another user", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.n%s [nick]          - change your current nickname", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.o%s [+/-option]     - display or alter client options", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.p%s [user[@host]]   - send a chat request to a user via mail", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.r%s                 - clear and redraw the screen", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.s%s [* | <chan>]    - show who is chatting on <chan>", S_FG_GRN, S_OFF);
	cprintf(chat, "*                       * means your channel, default is all channels");
	cprintf(chat, "*  %s.t%s                 - show channel topic list", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.v%s                 - show software version information", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.x%s                 - exit from the chat system", S_FG_RED, S_OFF);
}

void ext_help(void)
{
	cprintf(chat, "\n* %sV%sChat%s -- Interactive TCP/IP conference system -- %sEXTENDED COMMAND HELP%s:",
		S_FG_MAG, S_FG_YEL, S_OFF, S_FG_CYN, S_OFF);
	cprintf(chat, "*");
	cprintf(chat, "*  %sExtended commands are:%s\n*", S_UL, S_OFF);
	cprintf(chat, "*  %s.A%s [aclcmd|?]                - modify server ACL database (? for commands)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.B%s [nick] ...                - send a broadcast message to all active users", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.C%s [nick]                    - create a new account with specified nickname", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.D%s [nick] ...                - delete the accounts of the given nickname(s)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.F%s [chan[:topic]]            - delete/create a fixed conference channel", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.H%s                           - you just found out what this does", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.I%s [nick] ...                - request detailed client status information", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.K%s [nick] ...                - kill the specified nickname(s)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.M%s [a|m|?] [+/-perm] [nick]  - modify permissions of the given nickname(s)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.N%s [none|fwd|rev|strict]     - display or alter server DNS checking level", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.O%s [+/-option] ...           - display or alter server options", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.P%s                           - change your current password", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.Q%s [nick] ...                - query account information about nickname(s)", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.R%s                           - measure round-trip-delay to vchat server", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.S%s [pageno]                  - request detailed server status information", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.T%s [topic]                   - change the topic of your current channel", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.W%s [nick] ...                - send wakeup signal to others", S_FG_GRN, S_OFF);
	cprintf(chat, "*  %s.X%s [nick[:ttl]] ...          - exclude users from chat for a period of time", S_FG_GRN, S_OFF);
}

void version_info(void)
{
	cprintf(chat, "\n* VChat TELNET gateway %s%s%s (%s%s%s) "
		"/ protocol revision %s%x-%x%s\n"
		"* %s\n* %s\n * See %s for more info!\n",
		S_FG_CYN, VERSION, S_OFF,
		S_FG_RED, REL_DATE, S_OFF,
		S_FG_CYN, MAJOR_REV(PROTO_REV), MINOR_REV(PROTO_REV), S_OFF,
		CPR1, CPR2, HPURL);

	snd_serv(CMD_VERSION, 0, 0);
}


syntax highlighted by Code2HTML, v. 0.9.1