version 1.177, 2010/01/12 10:40:01
|
version 1.180, 2010/05/24 09:21:18
|
Line 2066 the toplevel default.sequence in the res
|
Line 2066 the toplevel default.sequence in the res
|
evaluated with "sub { my $helper = shift; my $state = shift;" and |
evaluated with "sub { my $helper = shift; my $state = shift;" and |
"}", with the return value used as the mapurl. |
"}", with the return value used as the mapurl. |
|
|
|
=item * <option />: Allows you to add optional elements to the |
|
resource chooser currently these can be a checkbox, or a text entry |
|
or hidden (see the 'type' attribute below). |
|
the following attributes are supported by this tag: |
|
|
|
=over 4 |
|
|
|
=item * type=control-type : determines the type of control displayed. |
|
This can be one of the following types: 'checkbox' provides a true/false |
|
checkbox. 'text' provides a text entry control. 'hidden' provides a |
|
hidden form element that returns the name of the resource for each |
|
element of the text box. |
|
|
|
=item * text=header-text : provides column header text for the option. |
|
|
|
=item * variable=helpervar : provides a helper variable to contain the |
|
value of the input control for each resource. In general, the result |
|
will be a set of values separated by ||| for the checkbox the value between |
|
the |||'s will either be empty, if the box is not checked, or the resource |
|
name if checked. For the text entry, the values will be the text in the |
|
text box. This could be empty. Hidden elements unconditionally provide |
|
the resource name for each row of the chooser and allow you to therefore |
|
correlate text entries to their resources. |
|
The helper variable can be initialized by the user code to pre-load values |
|
into the controls: |
|
|
|
=over 4 |
|
|
|
|
|
=item * Preloading checkboxes : Set the helper variable to the value you |
|
would have gotten from the control if it had been manually set as desired. |
|
|
|
=item * Preloading text entries : Set the helper variable to triple pipe |
|
separated values where each value is of the form resource-name=value |
|
|
|
=item * Preloading hidden fields : These cannot be pre-loaded and will always |
|
be pipe separated resource names. |
|
|
|
=back |
|
|
|
|
|
=back |
|
|
=back |
=back |
|
|
=cut |
=cut |
Line 2395 BUTTONS
|
Line 2438 BUTTONS
|
last; |
last; |
} |
} |
} |
} |
|
# TODO: add an attribute to <option> that allows the |
|
# programmer to set the width of the tex entry box. |
|
|
$col .= |
$col .= |
"<td align='center'><input type='text' name ='$option_var". |
"<td align='center'><input type='text' name ='$option_var". |
Line 3244 package Apache::lonhelper::string;
|
Line 3289 package Apache::lonhelper::string;
|
string elements provide a string entry field for the user. string elements |
string elements provide a string entry field for the user. string elements |
take the usual 'variable' and 'nextstate' parameters. string elements |
take the usual 'variable' and 'nextstate' parameters. string elements |
also pass through 'maxlength' and 'size' attributes to the input tag. |
also pass through 'maxlength' and 'size' attributes to the input tag. |
|
Since you could have multiple strings in a helper state, each with its own |
|
validator, all but the last string should have |
|
noproceed='1' so that _all_ validators are evaluated before the next |
|
state can be reached. |
|
|
string honors the defaultvalue tag, if given. |
string honors the defaultvalue tag, if given. |
|
|
Line 3263 BEGIN {
|
Line 3312 BEGIN {
|
|
|
sub new { |
sub new { |
my $ref = Apache::lonhelper::element->new(); |
my $ref = Apache::lonhelper::element->new(); |
|
$ref->{'PROCEED'} = 1; # By default postprocess goes to next state. |
bless($ref); |
bless($ref); |
} |
} |
|
|
Line 3279 sub start_string {
|
Line 3329 sub start_string {
|
$paramHash->{'nextstate'} = $token->[2]{'nextstate'}; |
$paramHash->{'nextstate'} = $token->[2]{'nextstate'}; |
$paramHash->{'maxlength'} = $token->[2]{'maxlength'}; |
$paramHash->{'maxlength'} = $token->[2]{'maxlength'}; |
$paramHash->{'size'} = $token->[2]{'size'}; |
$paramHash->{'size'} = $token->[2]{'size'}; |
|
|
return ''; |
return ''; |
} |
} |
|
|
sub end_string { |
sub end_string { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
|
|
|
if ($target ne 'helper') { |
if ($target ne 'helper') { |
return ''; |
return ''; |
} |
} |
Apache::lonhelper::string->new(); |
my $state = Apache::lonhelper::string->new(); |
|
|
|
|
|
if(&Apache::lonxml::get_param('noproceed', $parstack, $safeeval, undef, 1)) { |
|
$state->noproceed(); |
|
} |
|
|
|
|
|
|
return ''; |
return ''; |
} |
} |
|
|
|
sub noproceed() { |
|
my $self = shift; |
|
$self->{PROCEED} = 0; |
|
} |
|
|
sub render { |
sub render { |
my $self = shift; |
my $self = shift; |
my $result = ''; |
my $result = ''; |
Line 3336 sub postprocess {
|
Line 3399 sub postprocess {
|
} |
} |
} |
} |
|
|
if (defined($self->{'nextstate'})) { |
if (defined($self->{'nextstate'}) && $self->{PROCEED}) { |
$helper->changeState($self->{'nextstate'}); |
$helper->changeState($self->{'nextstate'}); |
} |
} |
|
|
Line 3616 sub render {
|
Line 3679 sub render {
|
} |
} |
my $previous = HTML::Entities::encode(&mt("Back"), '<>&"'); |
my $previous = HTML::Entities::encode(&mt("Back"), '<>&"'); |
my $next = HTML::Entities::encode(&mt("Next"), '<>&"'); |
my $next = HTML::Entities::encode(&mt("Next"), '<>&"'); |
my $target = " target='loncapaclient'"; |
|
if ($env{'environment.remote'} eq 'off') { $target=''; } |
|
$result .= "<p>\n" . |
$result .= "<p>\n" . |
"<form action='".$actionURL."' method='post' $target>\n" . |
"<form action='".$actionURL."' method='post' >\n" . |
"<input type='button' onclick='history.go(-1)' value='$previous' />" . |
"<input type='button' onclick='history.go(-1)' value='$previous' />" . |
"<input type='hidden' name='orgurl' value='$targetURL' />" . |
"<input type='hidden' name='orgurl' value='$targetURL' />" . |
"<input type='hidden' name='selectrole' value='1' />\n" . |
"<input type='hidden' name='selectrole' value='1' />\n" . |