/******************************************************************************/
/*
                                  search.h
*/
/******************************************************************************/

#ifndef INCLUDE_SEARCH_H
#define INCLUDE_SEARCH_H

#include "request.h"

#define SEARCH_DATE_SCOPE_ANY     1
#define SEARCH_DATE_SCOPE_SINCE   2
#define SEARCH_DATE_SCOPE_BEFORE  3
#define SEARCH_DATE_SCOPE_ON      4

#define SEARCH_CATEGORY_ANY          1
#define SEARCH_CATEGORY_RFC          2
#define SEARCH_CATEGORY_VMS          3
#define SEARCH_CATEGORY_WITH_ATT     4
#define SEARCH_CATEGORY_WITHOUT_ATT  5
#define SEARCH_CATEGORY_HTML         6
#define SEARCH_CATEGORY_PLAIN        7
#define SEARCH_CATEGORY_RAW          8
#define SEARCH_CATEGORY_NEWMSG       9
#define SEARCH_CATEGORY_REPLIED     10
#define SEARCH_CATEGORY_MARKED      11
#define SEARCH_CATEGORY__LAST       11

/**************/
/* prototypes */
/**************/

void SearchCriteria (REQUEST_DATA*);
int SearchGetString (SEARCH_DATA*, char*, char*, int, regex_t*, char*);
BOOL SearchKeyword (char*, char*, regex_t*);
BOOL SearchMessage (VMS_MAIL_MSG*, SEARCH_DATA*);
void SearchPage (REQUEST_DATA*);
BOOL SearchPageRequest (REQUEST_DATA*);
void SearchPropagate (REQUEST_DATA*);
void SearchRegexCheck (char*);
void SearchRestorePriority ();

#endif /* INCLUDE_SEARCH_H */

/******************************************************************************/

