source: trunk/gsdl/src/recpt/queryaction.cpp@ 183

Last change on this file since 183 was 183, checked in by rjmcnab, 25 years ago

Modified stuff.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 4.6 KB
Line 
1/**********************************************************************
2 *
3 * queryaction.cpp --
4 * Copyright (C) 1999 The New Zealand Digital Library Project
5 *
6 * PUT COPYRIGHT NOTICE HERE
7 *
8 * $Id: queryaction.cpp 183 1999-03-03 20:26:50Z rjmcnab $
9 *
10 *********************************************************************/
11
12/*
13 $Log$
14 Revision 1.2 1999/03/03 20:26:50 rjmcnab
15
16 Modified stuff.
17
18 Revision 1.1 1999/02/28 22:45:21 rjmcnab
19
20 Initial revision.
21
22 */
23
24
25#include "queryaction.h"
26
27
28queryaction::queryaction () {
29 // this action uses cgi variable "a"
30 cgiarginfo arg_ainfo;
31 arg_ainfo.shortname = "a";
32 arg_ainfo.longname = "action";
33 arg_ainfo.multiplechar = true;
34 arg_ainfo.defaultstatus = cgiarginfo::weak;
35 arg_ainfo.argdefault = "q";
36 arg_ainfo.savedarginfo = cgiarginfo::must;
37 argsinfo.addarginfo (NULL, arg_ainfo);
38
39 // "h"
40 arg_ainfo.shortname = "h";
41 arg_ainfo.longname = "main index";
42 arg_ainfo.multiplechar = true;
43 arg_ainfo.defaultstatus = cgiarginfo::weak;
44 arg_ainfo.argdefault = "";
45 arg_ainfo.savedarginfo = cgiarginfo::mustnot;
46 argsinfo.addarginfo (NULL, arg_ainfo);
47
48 // "j"
49 arg_ainfo.shortname = "j";
50 arg_ainfo.longname = "sub collection index";
51 arg_ainfo.multiplechar = true;
52 arg_ainfo.defaultstatus = cgiarginfo::weak;
53 arg_ainfo.argdefault = "";
54 arg_ainfo.savedarginfo = cgiarginfo::mustnot;
55 argsinfo.addarginfo (NULL, arg_ainfo);
56
57 // "n"
58 arg_ainfo.shortname = "n";
59 arg_ainfo.longname = "language index";
60 arg_ainfo.multiplechar = true;
61 arg_ainfo.defaultstatus = cgiarginfo::weak;
62 arg_ainfo.argdefault = "";
63 arg_ainfo.savedarginfo = cgiarginfo::mustnot;
64 argsinfo.addarginfo (NULL, arg_ainfo);
65
66 // "q"
67 arg_ainfo.shortname = "q";
68 arg_ainfo.longname = "query string";
69 arg_ainfo.multiplechar = true;
70 arg_ainfo.defaultstatus = cgiarginfo::weak;
71 arg_ainfo.argdefault = "";
72 arg_ainfo.savedarginfo = cgiarginfo::must;
73 argsinfo.addarginfo (NULL, arg_ainfo);
74
75 // "t"
76 arg_ainfo.shortname = "t";
77 arg_ainfo.longname = "search type";
78 arg_ainfo.multiplechar = false;
79 arg_ainfo.defaultstatus = cgiarginfo::weak;
80 arg_ainfo.argdefault = "0";
81 arg_ainfo.savedarginfo = cgiarginfo::must;
82 argsinfo.addarginfo (NULL, arg_ainfo);
83
84 // "k"
85 arg_ainfo.shortname = "k";
86 arg_ainfo.longname = "casefolding";
87 arg_ainfo.multiplechar = false;
88 arg_ainfo.defaultstatus = cgiarginfo::weak;
89 arg_ainfo.argdefault = "1";
90 arg_ainfo.savedarginfo = cgiarginfo::must;
91 argsinfo.addarginfo (NULL, arg_ainfo);
92
93 // "s"
94 arg_ainfo.shortname = "s";
95 arg_ainfo.longname = "stemming";
96 arg_ainfo.multiplechar = false;
97 arg_ainfo.defaultstatus = cgiarginfo::weak;
98 arg_ainfo.argdefault ="0";
99 arg_ainfo.savedarginfo = cgiarginfo::must;
100 argsinfo.addarginfo (NULL, arg_ainfo);
101
102 // "m"
103 arg_ainfo.shortname = "m";
104 arg_ainfo.longname = "maximum number of documents";
105 arg_ainfo.multiplechar = true;
106 arg_ainfo.defaultstatus = cgiarginfo::weak;
107 arg_ainfo.argdefault = "50";
108 arg_ainfo.savedarginfo = cgiarginfo::must;
109 argsinfo.addarginfo (NULL, arg_ainfo);
110
111 // "o"
112 arg_ainfo.shortname = "o";
113 arg_ainfo.longname = "hits per page";
114 arg_ainfo.multiplechar = true;
115 arg_ainfo.defaultstatus = cgiarginfo::weak;
116 arg_ainfo.argdefault = "20";
117 arg_ainfo.savedarginfo = cgiarginfo::must;
118 argsinfo.addarginfo (NULL, arg_ainfo);
119
120 // "r"
121 arg_ainfo.shortname = "r";
122 arg_ainfo.longname = "start results from";
123 arg_ainfo.multiplechar = true;
124 arg_ainfo.defaultstatus = cgiarginfo::weak;
125 arg_ainfo.argdefault = "1";
126 arg_ainfo.savedarginfo = cgiarginfo::must;
127 argsinfo.addarginfo (NULL, arg_ainfo);
128}
129
130void queryaction::configure (const text_t &key, const text_tarray &cfgline) {
131 action::configure (key, cfgline);
132}
133
134bool queryaction::init (ostream &logout) {
135 return action::init (logout);
136}
137
138bool queryaction::check_cgiargs (cgiargsclass &/*args*/, ostream &/*logout*/) {
139 // check t argument
140
141 // check k argument
142
143 // check s argument
144
145 // check m argument
146
147 // check o argument
148
149 // check r argument
150
151 return true;
152}
153
154void queryaction::get_cgihead_info (cgiargsclass &/*args*/, response_t &response,
155 text_t &response_data, ostream &/*logout*/) {
156 response = content;
157 response_data = "text/html";
158}
159
160void queryaction::define_internal_macros (displayclass &/*disp*/, cgiargsclass &/*args*/,
161 ostream &/*logout*/) {
162}
163
164void queryaction::define_external_macros (displayclass &/*disp*/, cgiargsclass &/*args*/,
165 ostream &/*logout*/) {
166}
167
168bool queryaction::do_action (cgiargsclass &/*args*/, recptproto */*collectproto*/,
169 displayclass &/*disp*/, outconvertclass &/*outconvert*/,
170 ostream &/*textout*/, ostream &/*logout*/) {
171 return false;
172}
Note: See TracBrowser for help on using the repository browser.