version 1.100, 2003/05/15 13:32:55
|
version 1.107, 2003/06/24 22:16:32
|
Line 329 sub studentbrowser_javascript {
|
Line 329 sub studentbrowser_javascript {
|
} |
} |
url += 'form=' + formname + '&unameelement='+uname+ |
url += 'form=' + formname + '&unameelement='+uname+ |
'&udomelement='+udom; |
'&udomelement='+udom; |
var title = 'Student Browser'; |
var title = 'Student_Browser'; |
var options = 'scrollbars=1,resizable=1,menubar=0'; |
var options = 'scrollbars=1,resizable=1,menubar=0'; |
options += ',width=700,height=600'; |
options += ',width=700,height=600'; |
stdeditbrowser = open(url,title,options,'1'); |
stdeditbrowser = open(url,title,options,'1'); |
Line 363 sub coursebrowser_javascript {
|
Line 363 sub coursebrowser_javascript {
|
} |
} |
url += 'form=' + formname + '&cnumelement='+uname+ |
url += 'form=' + formname + '&cnumelement='+uname+ |
'&cdomelement='+udom; |
'&cdomelement='+udom; |
var title = 'Course Browser'; |
var title = 'Course_Browser'; |
var options = 'scrollbars=1,resizable=1,menubar=0'; |
var options = 'scrollbars=1,resizable=1,menubar=0'; |
options += ',width=700,height=600'; |
options += ',width=700,height=600'; |
stdeditbrowser = open(url,title,options,'1'); |
stdeditbrowser = open(url,title,options,'1'); |
Line 586 ENDTEMPLATE
|
Line 586 ENDTEMPLATE
|
|
|
} |
} |
|
|
|
# This is a quicky function for Latex cheatsheet editing, since it |
|
# appears in at least four places |
|
sub helpLatexCheatsheet { |
|
my $other = shift; |
|
my $addOther = ''; |
|
if ($other) { |
|
$addOther = Apache::loncommon::help_open_topic($other, shift, |
|
undef, undef, 600) . |
|
'</td><td>'; |
|
} |
|
return '<table><tr><td>'. |
|
$addOther . |
|
&Apache::loncommon::help_open_topic("Greek_Symbols",'Greek Symbols', |
|
undef,undef,600) |
|
.'</td><td>'. |
|
&Apache::loncommon::help_open_topic("Other_Symbols",'Other Symbols', |
|
undef,undef,600) |
|
.'</td></tr></table>'; |
|
} |
|
|
=pod |
=pod |
|
|
=item csv_translate($text) |
=item csv_translate($text) |
Line 1358 sub display_languages {
|
Line 1378 sub display_languages {
|
$languages{$_}=1; |
$languages{$_}=1; |
} |
} |
} |
} |
|
if ($ENV{'course.'.$ENV{'request.course.id'}.'.languages'}) { |
|
foreach (split(/\s*(\,|\;|\:)\s*/, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.languages'})) { |
|
$languages{$_}=1; |
|
} |
|
} |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
&get_unprocessed_cgi($ENV{'QUERY_STRING'},['displaylanguage']); |
if ($ENV{'form.displaylanguage'}) { |
if ($ENV{'form.displaylanguage'}) { |
foreach (split(/\s*(\,|\;|\:)\s*/,$ENV{'form.displaylanguage'})) { |
foreach (split(/\s*(\,|\;|\:)\s*/,$ENV{'form.displaylanguage'})) { |
Line 1485 sub get_previous_attempt {
|
Line 1511 sub get_previous_attempt {
|
} |
} |
} |
} |
|
|
|
sub relative_to_absolute { |
|
my ($url,$output)=@_; |
|
my $parser=HTML::TokeParser->new(\$output); |
|
my $token; |
|
my $thisdir=$url; |
|
my @rlinks=(); |
|
while ($token=$parser->get_token) { |
|
if ($token->[0] eq 'S') { |
|
if ($token->[1] eq 'a') { |
|
if ($token->[2]->{'href'}) { |
|
$rlinks[$#rlinks+1]=$token->[2]->{'href'}; |
|
} |
|
} elsif ($token->[1] eq 'img' || $token->[1] eq 'embed' ) { |
|
$rlinks[$#rlinks+1]=$token->[2]->{'src'}; |
|
} elsif ($token->[1] eq 'base') { |
|
$thisdir=$token->[2]->{'href'}; |
|
} |
|
} |
|
} |
|
$thisdir=~s-/[^/]*$--; |
|
foreach (@rlinks) { |
|
unless (($_=~/^http:\/\//i) || |
|
($_=~/^\//) || |
|
($_=~/^javascript:/i) || |
|
($_=~/^mailto:/i) || |
|
($_=~/^\#/)) { |
|
my $newlocation=&Apache::lonnet::hreflocation($thisdir,$_); |
|
$output=~s/(\"|\'|\=\s*)$_(\"|\'|\s|\>)/$1$newlocation$2/; |
|
} |
|
} |
|
# -------------------------------------------------- Deal with Applet codebases |
|
$output=~s/(\<applet[^\>]+)(codebase\=[^\S\>]+)*([^\>]*)\>/$1.($2?$2:' codebase="'.$thisdir.'"').$3.'>'/gei; |
|
return $output; |
|
} |
|
|
sub get_student_view { |
sub get_student_view { |
my ($symb,$username,$domain,$courseid,$target) = @_; |
my ($symb,$username,$domain,$courseid,$target) = @_; |
my ($map,$id,$feedurl) = split(/___/,$symb); |
my ($map,$id,$feedurl) = split(/___/,$symb); |
Line 1496 sub get_student_view {
|
Line 1557 sub get_student_view {
|
} |
} |
if ($target eq 'tex') {$moreenv{'form.grade_target'} = 'tex';} |
if ($target eq 'tex') {$moreenv{'form.grade_target'} = 'tex';} |
&Apache::lonnet::appenv(%moreenv); |
&Apache::lonnet::appenv(%moreenv); |
my $userview=&Apache::lonnet::ssi('/res/'.$feedurl); |
$feedurl=&Apache::lonnet::clutter($feedurl); |
|
my $userview=&Apache::lonnet::ssi_body($feedurl); |
&Apache::lonnet::delenv('form.grade_'); |
&Apache::lonnet::delenv('form.grade_'); |
foreach my $element (@elements) { |
foreach my $element (@elements) { |
$ENV{'form.grade_'.$element}=$old{$element}; |
$ENV{'form.grade_'.$element}=$old{$element}; |
Line 1508 sub get_student_view {
|
Line 1570 sub get_student_view {
|
$userview=~s/\<head\>//gi; |
$userview=~s/\<head\>//gi; |
$userview=~s/\<\/head\>//gi; |
$userview=~s/\<\/head\>//gi; |
$userview=~s/action\s*\=/would_be_action\=/gi; |
$userview=~s/action\s*\=/would_be_action\=/gi; |
|
$userview=&relative_to_absolute($feedurl,$userview); |
return $userview; |
return $userview; |
} |
} |
|
|
Line 1731 sub bodytag {
|
Line 1794 sub bodytag {
|
unless ($realm) { $realm=' '; } |
unless ($realm) { $realm=' '; } |
# Set messages |
# Set messages |
my $messages=&domainlogo($domain); |
my $messages=&domainlogo($domain); |
# Output |
# Port for miniserver |
my $lonhttpdPort=$Apache::lonnet::perlvar{'lonhttpdPort'}; |
my $lonhttpdPort=$Apache::lonnet::perlvar{'lonhttpdPort'}; |
if (!defined($lonhttpdPort)) { $lonhttpdPort='8080'; } |
if (!defined($lonhttpdPort)) { $lonhttpdPort='8080'; } |
|
# construct main body tag |
my $bodytag = <<END; |
my $bodytag = <<END; |
<body bgcolor="$pgbg" text="$font" alink="$alink" vlink="$vlink" link="$link" |
<body bgcolor="$pgbg" text="$font" alink="$alink" vlink="$vlink" link="$link" |
$addentries> |
$addentries> |