version 1.9, 2003/02/10 14:44:36
|
version 1.16, 2003/03/10 14:20:07
|
Line 33 use Apache::Constants qw(:common);
|
Line 33 use Apache::Constants qw(:common);
|
use Apache::loncommon; |
use Apache::loncommon; |
use Apache::lonnet; |
use Apache::lonnet; |
use Apache::lontexconvert; |
use Apache::lontexconvert; |
|
use Apache::lonfeedback; |
|
|
sub handler { |
sub handler { |
my $r = shift; |
my $r = shift; |
Line 45 sub handler {
|
Line 46 sub handler {
|
<html> |
<html> |
<head> |
<head> |
<title>The LearningOnline Network with CAPA</title> |
<title>The LearningOnline Network with CAPA</title> |
</head> |
|
ENDDOCUMENT |
ENDDOCUMENT |
my (undef,undef,$cdom,$cnum)=split(/\//,$r->uri); |
my (undef,undef,$cdom,$cnum)=split(/\//,$r->uri); |
# Is this even a course? |
# Is this even a course? |
my $homeserver=&Apache::lonnet::homeserver($cnum,$cdom); |
my $homeserver=&Apache::lonnet::homeserver($cnum,$cdom); |
if ($homeserver eq 'no_host') { |
if ($homeserver eq 'no_host') { |
$r->print('<body>No syllabus available</body>'); |
$r->print('</head><body>No syllabus available</body></html>'); |
return OK; |
return OK; |
} |
} |
# --------------------------------------------------------- The syllabus fields |
# --------------------------------------------------------- The syllabus fields |
Line 72 ENDDOCUMENT
|
Line 72 ENDDOCUMENT
|
'kkk_textbook' => 'Textbook', |
'kkk_textbook' => 'Textbook', |
'lll_includeurl' => 'URLs To Include in Syllabus'); |
'lll_includeurl' => 'URLs To Include in Syllabus'); |
|
|
# --------------------------------------------------------------- Force Student |
# ------------------------------------------------------------ Get query string |
&Apache::loncommon::get_unprocessed_cgi |
&Apache::loncommon::get_unprocessed_cgi |
($ENV{'QUERY_STRING'},['forcestudent']); |
($ENV{'QUERY_STRING'},['forcestudent','register']); |
|
# ----------------------------------------------------- Force menu registration |
|
my $addentries=''; |
|
if ($ENV{'form.register'}) { |
|
$addentries=' onLoad="'.&Apache::lonmenu::loadevents(). |
|
'" onUnload="'.&Apache::lonmenu::unloadevents().'"'; |
|
$r->print(&Apache::lonmenu::registerurl(1)); |
|
} |
|
# --------------------------------------------------------------- Force Student |
my $forcestudent=''; |
my $forcestudent=''; |
if ($ENV{'form.forcestudent'}) { $forcestudent='student'; }; |
if ($ENV{'form.forcestudent'}) { $forcestudent='student'; }; |
|
|
# ------------------------------------- There is such a course, get environment |
# ------------------------------------- There is such a course, get environment |
my %courseenv=&Apache::lonnet::dump('environment',$cdom,$cnum); |
my %courseenv=&Apache::lonnet::dump('environment',$cdom,$cnum); |
$r->print(&Apache::loncommon::bodytag |
$r->print('</head>'.&Apache::loncommon::bodytag |
("Syllabus",$forcestudent,'','',$cdom)); |
("Syllabus",$forcestudent,$addentries,'',$cdom,$ENV{'form.register'})); |
$r->print('<h1>'.$courseenv{'description'}.'</h1><h3>'. |
$r->print('<h1>'.$courseenv{'description'}.'</h1><h3>'. |
$Apache::lonnet::domaindescription{$cdom}.'</h3>'); |
$Apache::lonnet::domaindescription{$cdom}.'</h3>'); |
my %syllabus=&Apache::lonnet::dump('syllabus',$cdom,$cnum); |
my %syllabus=&Apache::lonnet::dump('syllabus',$cdom,$cnum); |
Line 96 ENDDOCUMENT
|
Line 104 ENDDOCUMENT
|
if ($forcestudent) { $allowed=0; } |
if ($forcestudent) { $allowed=0; } |
} |
} |
if ($allowed) { |
if ($allowed) { |
$r->print('<p>This syllabus can be publically viewed at <tt>http://'. |
$r->print('<p>'. |
$Apache::lonnet::hostname{$homeserver}.$r->uri.'</tt></p>'. |
&Apache::loncommon::help_open_topic('Uploaded_Templates_TextBoxes','Help with filling in text boxes').'</p><p>This syllabus can be publicly viewed at <tt>http://'. |
'<p><a href="'.$r->uri.'?forcestudent=1">Show Student View</a></p>'); |
$Apache::lonnet::hostname{$homeserver}.$r->uri.'</tt>'. |
|
&Apache::loncommon::help_open_topic('Syllabus_ExtLink').'</p>'. |
|
'<p><a href="'.$r->uri.'?forcestudent=1">Show Student View</a>'. |
|
&Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView'). |
|
'</p>'); |
} |
} |
if (($allowed) && ($ENV{'form.storesyl'})) { |
if (($allowed) && ($ENV{'form.storesyl'})) { |
foreach (keys %syllabusfields) { |
foreach (keys %syllabusfields) { |
my $field=$ENV{'form.'.$_}; |
my $field=$ENV{'form.'.$_}; |
$field=~s/\s+$//s; |
$field=~s/\s+$//s; |
$field=~s/\</\<\;/g; |
$field=&Apache::lonfeedback::clear_out_html($field,1); |
$field=~s/\>/\>\;/g; |
|
$syllabus{$_}=$field; |
$syllabus{$_}=$field; |
if ($_ eq 'lll_includeurl') { # clean up included URLs |
if ($_ eq 'lll_includeurl') { # clean up included URLs |
my $field=''; |
my $field=''; |
Line 168 ENDDOCUMENT
|
Line 179 ENDDOCUMENT
|
# embed style? |
# embed style? |
my ($curfext)=($filelink=~/\.([^\.]+)$/); |
my ($curfext)=($filelink=~/\.([^\.]+)$/); |
my $embstyle=&Apache::loncommon::fileembstyle($curfext); |
my $embstyle=&Apache::loncommon::fileembstyle($curfext); |
if ($embstyle eq 'ssi') { |
if (($embstyle eq 'ssi') || ($curfext=~/\/$/)) { |
# make ssi call and remove everything but the body contents |
# make ssi call and remove everything but the body contents |
$output=&Apache::lonnet::ssi($filelink); |
$output=&Apache::lonnet::ssi_body($filelink); |
$output=~s/^.*\<body[^\>]*\>//si; |
|
$output=~s/\<\/body\s*\>.*$//si; |
|
} elsif ($embstyle eq 'img') { |
} elsif ($embstyle eq 'img') { |
# embed as an image |
# embed as an image |
$output='<img src="'.$filelink.'" />'; |
$output='<img src="'.$filelink.'" />'; |
Line 181 ENDDOCUMENT
|
Line 190 ENDDOCUMENT
|
} |
} |
if ($allowed) { |
if ($allowed) { |
$r->print('<h3>'.$syllabusfields{$_}. |
$r->print('<h3>'.$syllabusfields{$_}. |
'</h3>URLs provided will be included into the page output.'. |
&Apache::loncommon::help_open_topic('Syllabus_URLs').'</h3>'. |
'<br />Format:<br /><pre>'. |
'<p><a href="'.$r->uri.'?forcestudent=1">Show Student View</a>'. |
"http://www.foo.org/foo.html\n/res/foo/author/foo.html\n</pre>". |
&Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'</p>'); |
'<p><a href="'.$r->uri.'?forcestudent=1">Show Student View</a></p>'); |
|
} else { |
} else { |
$r->print($message); |
$r->print($message); |
} |
} |