	/*** (C) Copyright 1984, 1985  S.R.I. International ***/
/*
 *
 *	Type out headers of recent messages
 *
 */
#include <stdio.h>
#include "vax-mm.h"

Recent(Print)
{
	register struct Msg *Msg;
	register int i;

	/*
	 *	Count recent, unseen and delete messages
	 */
	Number_Of_Recent_Messages = 0;
	Number_Of_Unseen_Messages = 0;
	Number_Of_Deleted_Messages = 0;
	/*
	 *	Run through all the messages
	 */
	Msg = Messages;
	for (i = 0; i < Last_Message; i++) {
		/*
		 *	Check for a recent message
		 *	(after last modify date)
		 */
		if (Msg->Date > Message_File_Last_Modified) {
			Number_Of_Recent_Messages++;
			if (Current_Message == Last_Message)
					Current_Message = (i == 0) ? 1 : i;
		}
		/*
		 *	Count the message types
		 */
		if (!(Msg->Flags & MSG_SEEN)) Number_Of_Unseen_Messages++;
		if (Msg->Flags & MSG_DELETED) Number_Of_Deleted_Messages++;
		/*
		 *	Print appropriate headers
		 */
		if (Print &&
		    !(Msg->Flags & MSG_DELETED) &&
			(((Msg->Date > Message_File_Last_Modified) &&
						 !(Msg->Flags & MSG_SEEN)) ||
			 ((Msg->Flags & MSG_FLAGGED) &&
						!Flagged_Autotype_Suppress)))
					Print_Header(stdout,Msg,i+1);
		/*
		 *	Next message
		 */
		Msg++;
	}
}
