Subversion Repositories wimsdev

Rev

Rev 1111 | Rev 5766 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1978 bpr 1
!read tabletheme
32 reyssat 2
The central piece of a wims server is a cgi program, usually in the name of
3
wims.cgi. It takes all the http calls to the server, then does the following
4
work:
5
<ol>
6
<li>Call the module asked by the user, and process parameters and variables
7
according to what is defined in the module.
8
<li>Session management.
9
<li>Send the result of the process to the user.
10
<li>Write to different log files.
11
</ol>
12
 
1091 bpr 13
<h4> Modules of wims</h4>
32 reyssat 14
 
15
A wims server is a modular system, with different applications as modules.
16
At each new call to wims, the user has to specify which module he want to
17
access. <p>
18
 
19
A wims module may be an interactive course or interactive exercise (of any
20
level), a computational tool, a dictionary, a mathematical game, a database,
21
or a mixture of the above. <p>
22
 
23
Wims modules are independent from each other. Each module has its own
24
directory, which serves as its address, and contains all the files of this
25
module. Different modules have different authors and different maintainers,
26
and may follow different copyright policies. <p>
27
 
28
There is no relation between modules in a same wims site, except hypertext
29
links which allows one module to access another in various ways.
30
 
31
<H4>How to access a wims server</H4>
32
 
33
Wims is accessed by a request to the main cgi program, for example
34
<pre>
1111 bpr 35
http://wims.unice.fr/wims/wims.cgi
32 reyssat 36
</pre>
37
which usually should be followed by parameters. A call to the main wims.cgi
38
program without parameter will bring up the wims homepage of the site. <p>
39
 
40
Parameters of wims.cgi is a usual http $emph name=value$emphend pair, where the
41
$emph name$emphend field may be one of the following:
42
<ul>
43
<li><font color=green>cmd</font>: the value is the command of the call.
44
Valid commands:
1978 bpr 45
$table_header
46
$table_tr<th>Parameter string<th>Meaning
47
$table_tr<td>cmd=intro<td>get introduction page of the module
48
$table_tr<td>cmd=new<td>open new working session
49
$table_tr<td>cmd=renew<td>restart working session
50
$table_tr<td>cmd=reply<td>send reply to the module
51
$table_tr<td>cmd=next<td>get next exercise (in a working session)
52
$table_tr<td>cmd=config<td>set preferences
53
$table_tr<td>cmd=help<td>get contextual help
54
$table_tr<td>cmd=hint<td>get contextual hint
55
$table_tr<td>cmd=resume<td>resume work (e.g. after help)
56
$table_tr<td>cmd=getins<td>get dynamic insertions: internal use<br>
32 reyssat 57
by the server. Not to be used by modules.
1978 bpr 58
</table></center>
32 reyssat 59
<li><font color=green>module</font>. the value is the name of the module
60
which the user wants to access. <br>
61
<li><font color=green>session</font>: the value is the number of the current
62
session of the user. <br>
63
The session number is automatically generated by wims.cgi, and is usually
64
automatically contained in the pages sent by the server. Tampering with this
65
parameter by the user (e.g. in order to spy into others' work) is not
66
allowed and has practically no chance to get through.
67
<li><font color=green>lang</font>: the value defines the prefered language
68
of the user.
69
<li><font color=green>user</font>: the value is the user name (for
70
registered users; reserved for internal use).
71
<li><font color=green>useropts</font>: the value contains user options for the
72
server. The format is coded and may varie from version to version.
73
<li><font color=green>worksheet</font>: reserved for internal use, for
74
determining user works assigned by worksheets.
75
<li><font color=green>special_parm</font>: this parameter is reserved for
76
special requests (help, etc).
77
<li>Any variables accepted by the module on which the user is working on (or
78
wants to work on).
79
</ul>
80
 
81
Example:
82
<pre>
1111 bpr 83
http://wims.unice.fr/~wims/wims.cgi?cmd=new&+module=tool/algebra/factor.en
32 reyssat 84
</pre>
85
calls the wims server at wims.unice.fr, with `new' as the value of `cmd',
86
`tool/algebra/factor.en' as the module name.
87
 
88
 
89
<H4>How to use the supervisor-side interface</H4>
90
 
91
Supervisors of registered classes can maintain their classes and consult
92
results of students via the same web address (the main cgi program), just
93
by logging in as supervisor. All the options are then available via html
94
links and buttons.
95
 
96