version 1.109, 2008/09/25 17:44:11
|
version 1.112, 2008/11/18 19:14:22
|
Line 27
|
Line 27
|
# |
# |
### |
### |
|
|
|
=head1 NAME |
|
|
|
Apache::loncreatecourse.pm |
|
|
|
=head1 SYNOPSIS |
|
|
|
Allows domain coordinators to create new |
|
courses and assign course coordinators. |
|
|
|
This is part of the LearningOnline Network with CAPA project |
|
described at http://www.lon-capa.org. |
|
|
|
=head1 SUBROUTINES |
|
|
|
=over |
|
|
|
=item handler() |
|
|
|
=item print_course_creation_page() |
|
|
|
=item create_course() |
|
|
|
=item print_intro_page() |
|
|
|
=item upload_batchfile() |
|
|
|
=item process_batchfile() |
|
|
|
=back |
|
|
|
=cut |
|
|
package Apache::loncreatecourse; |
package Apache::loncreatecourse; |
|
|
use strict; |
use strict; |
Line 127 function validate(formname) {
|
Line 159 function validate(formname) {
|
'navi' => "Navigate", |
'navi' => "Navigate", |
'cid' => "Course ID", |
'cid' => "Course ID", |
'dmn' => "Domain", |
'dmn' => "Domain", |
|
'dsh' => "Date Shift", |
'asov' => "Additional settings, if specified below, will override cloned settings", |
'asov' => "Additional settings, if specified below, will override cloned settings", |
'ncd' => "Do not clone date parameters", |
'ncd' => "Do not clone date parameters", |
'prd' => 'Clone date parameters as-is', |
'prd' => 'Clone date parameters as-is', |
Line 223 END
|
Line 256 END
|
'Create_Course',undef, |
'Create_Course',undef, |
'Create_Courses'); |
'Create_Courses'); |
$r->print($start_page.$crumbs); |
$r->print($start_page.$crumbs); |
if ($crstype eq 'Course') { |
|
|
|
|
if ($crstype eq 'Course') { |
$r->print('<form action="/adm/createcourse" method="post" name="ccrs">' |
$r->print('<form action="/adm/createcourse" method="post" name="ccrs">' |
.&Apache::lonhtmlcommon::start_pick_box() |
.&Apache::lonhtmlcommon::start_pick_box() |
|
|
Line 263 END
|
Line 296 END
|
.'<input type="text" size="30" name="crsxlist" />' |
.'<input type="text" size="30" name="crsxlist" />' |
.'<br />('.$lt{'cscs'}.')' |
.'<br />('.$lt{'cscs'}.')' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
|
); |
|
|
.&Apache::lonhtmlcommon::row_headline() |
# Table: New Course / Clone Course |
|
$r->print(&Apache::lonhtmlcommon::row_headline() |
.'<h3>'.$lt{'crco'}.'</h3>' |
.'<h3>'.$lt{'crco'}.'</h3>' |
); |
.&Apache::loncommon::start_data_table() |
$r->print(<<MYEND); |
.&Apache::loncommon::start_data_table_header_row() |
<table border="2"> |
.'<th>'.$lt{'cncr'}.'</th>' |
<tr><th>$lt{'cncr'}</th><th>$lt{'cecr'}</th></tr> |
.'<th> '.&mt('or').' </th>' |
<tr><td> |
.'<th>'.$lt{'cecr'}.'</th>' |
<p> |
.&Apache::loncommon::end_data_table_header_row() |
<label> |
.&Apache::loncommon::start_data_table_row() |
<b>$lt{'map'}:</b> |
|
<input type="text" size="50" name="topmap" /> |
|
</label> |
|
<a href="javascript:openbrowser('ccrs','topmap')">$lt{'smap'}</a> |
|
</p><p> |
|
<label for="nonstd"><b>$lt{'sacr'}</b></label> |
|
<br /> |
|
($lt{'ocik'}): |
|
<input id="nonstd" type="checkbox" name="nonstandard" /> |
|
</p><p> |
|
<b>$lt{'fres'}</b><br />($lt{'stco'}): |
|
<label> |
|
<input type="radio" name="firstres" value="blank" />$lt{'blnk'} |
|
</label> |
|
|
|
<label> |
|
<input type="radio" name="firstres" value="syl" checked="checked" />$lt{'sllb'} |
|
</label> |
|
|
|
<label> |
|
<input type="radio" name="firstres" value="nav" />$lt{'navi'} |
|
</label> |
|
</p> |
|
</td><td> |
|
<label> |
|
$lt{'cid'}: <input type="text" size="25" name="clonecourse" value="" /> |
|
</label> |
|
<br /> |
|
<label> |
|
$lt{'dmn'}: $cloneform |
|
</label> |
|
<br /> |
|
<label><input type="radio" name="datemode" value="delete" /> $lt{'ncd'}</label><br /> |
|
<label><input type="radio" name="datemode" value="preserve" /> $lt{'prd'}</label><br /> |
|
<label><input type="radio" name="datemode" value="shift" checked="checked" /> $lt{'shd'}</label> |
|
<input type="text" size="5" name="dateshift" value="365" /><br /> |
|
<br /> |
|
$lt{'asov'}. |
|
</td></tr> |
|
</table> |
|
MYEND |
|
|
|
|
|
$r->print(' ' |
# New Course: |
|
.'<td>' |
|
.&Apache::lonhtmlcommon::start_pick_box() |
|
.&Apache::lonhtmlcommon::row_title($lt{'map'}) |
|
.'<input type="text" size="50" name="topmap" />' |
|
.'<a href="javascript:openbrowser(\'ccrs\',\'topmap\')">'.$lt{'smap'}.'</a>' |
|
.&Apache::lonhtmlcommon::row_closure() |
|
.&Apache::lonhtmlcommon::row_title('<label for="nonstd">'.$lt{'sacr'}.'</label>') |
|
.'<input id="nonstd" type="checkbox" name="nonstandard" />' |
|
.'<br />('.$lt{'ocik'}.')' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
|
.&Apache::lonhtmlcommon::row_title($lt{'fres'}) |
|
.'<label>' |
|
.'<input type="radio" name="firstres" value="blank" />'.$lt{'blnk'} |
|
.'</label>' |
|
.' ' |
|
.'<label>' |
|
.'<input type="radio" name="firstres" value="syl" checked="checked" />'.$lt{'sllb'} |
|
.'</label>' |
|
.' ' |
|
.'<label>' |
|
.'<input type="radio" name="firstres" value="nav" />'.$lt{'navi'} |
|
.'</label>' |
|
.'<br />('.$lt{'stco'}.')' |
|
.&Apache::lonhtmlcommon::row_closure(1) |
|
.&Apache::lonhtmlcommon::end_pick_box() |
|
|
|
.'<td> </td>' |
|
|
|
# Clone Course: |
|
.'<td>' |
|
.&Apache::lonhtmlcommon::start_pick_box() |
|
.&Apache::lonhtmlcommon::row_title($lt{'cid'}) |
|
.'<label>' |
|
.'<input type="text" size="25" name="clonecourse" value="" />' |
|
.'</label>' |
|
.&Apache::lonhtmlcommon::row_closure(1) |
|
.&Apache::lonhtmlcommon::row_title($lt{'dmn'}) |
|
.'<label>' |
|
.$cloneform |
|
.'</label>' |
|
.&Apache::lonhtmlcommon::row_closure() |
|
.&Apache::lonhtmlcommon::row_title($lt{'dsh'}) |
|
.'<label>' |
|
.'<input type="radio" name="datemode" value="delete" /> '.$lt{'ncd'} |
|
.'</label><br />' |
|
.'<label>' |
|
.'<input type="radio" name="datemode" value="preserve" /> '.$lt{'prd'} |
|
.'</label><br />' |
|
.'<label>' |
|
.'<input type="radio" name="datemode" value="shift" checked="checked" /> '.$lt{'shd'} |
|
.'</label>' |
|
.' <input type="text" size="5" name="dateshift" value="365" />' |
|
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_headline() |
.&Apache::lonhtmlcommon::row_headline() |
|
.$lt{'asov'} |
|
.&Apache::lonhtmlcommon::row_closure(1) |
|
.&Apache::lonhtmlcommon::end_pick_box() |
|
.'</td>' |
|
.&Apache::loncommon::end_data_table_row() |
|
.&Apache::loncommon::end_data_table() |
|
.&Apache::lonhtmlcommon::row_closure() |
|
); |
|
|
|
$r->print(&Apache::lonhtmlcommon::row_headline() |
.'<h3>'.$lt{'assp'}.'</h3>' |
.'<h3>'.$lt{'assp'}.'</h3>' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
|
|
Line 440 $r->print(' '
|
Line 494 $r->print(' '
|
.&Apache::lonhtmlcommon::row_closure(1) |
.&Apache::lonhtmlcommon::row_closure(1) |
|
|
.&Apache::lonhtmlcommon::end_pick_box() |
.&Apache::lonhtmlcommon::end_pick_box() |
); |
); |
|
|
$r->print(<<ENDDOCUMENT); |
$r->print(<<ENDDOCUMENT); |
<p> |
<p> |