--- loncom/interface/loncreatecourse.pm 2010/03/15 17:27:40 1.135
+++ loncom/interface/loncreatecourse.pm 2010/09/20 00:51:14 1.144
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Create a course
#
-# $Id: loncreatecourse.pm,v 1.135 2010/03/15 17:27:40 raeburn Exp $
+# $Id: loncreatecourse.pm,v 1.144 2010/09/20 00:51:14 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -61,8 +61,6 @@ described at http://www.lon-capa.org.
=item creation_display_filter()
-=item course_types()
-
=item context_names()
=item instcode_srchstr()
@@ -361,15 +359,21 @@ END
.''
- .' '
- .'');
+ }
+ $r->print('
('.$lt{'stco'}.')'
.&Apache::lonhtmlcommon::row_closure(1)
.&Apache::lonhtmlcommon::end_pick_box()
@@ -685,7 +689,7 @@ sub create_course {
'
'.&mt('Roles will be active at next login').'.
'); } $r->print(''.
@@ -694,7 +698,7 @@ sub create_course {
}
sub print_intro_page {
- my $r = shift;
+ my ($r,$show_all_choices) = @_;
my $start_page =
&Apache::loncommon::start_page('Create a New Course or Community');
my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Options','Create_Course',undef,'Create_Courses');
@@ -702,51 +706,78 @@ sub print_intro_page {
&Apache::loncommon::end_page();
my $helplink=&Apache::loncommon::help_open_topic('Create_Course_Community',&mt('Help on Creating Courses and Communities'));
- my @choices = ({ internal_name => 'courseone',
- name => &mt('Create a single course'),
- short_description =>
- &mt('Create a new course by completing an online form.'),
- },
- { internal_name => 'groupone',
- name => &mt('Create a single community'),
- short_description =>
- &mt('Create a new collaborative community by completing an online form.'),
- },
- { internal_name => 'batchone',
- name => &mt('Create courses/communities by uploading an attributes file'),
- short_description =>
- &mt('Upload an attributes file containing specifications for one or more courses or communities in XML format.'),
- help => 'Batch_Creation',
- },
- { internal_name => 'requestdisplay',
- name => &mt('Approve or reject requests'),
- short_description =>
- &mt('Display course and community creation requests submitted by authorized users, held pending approval by a Domain Coordinator.'),
- },
- { internal_name => 'creationlog',
- name => &mt('View creation log'),
- short_description =>
- &mt('Display information about when, how and by whom courses and communities were created in this domain.'),
- },
+ # Create menu
+ my @menu;
+ @menu =
+ ({ categorytitle => 'Course/Community Creation',
+ items => [
+ {
+ linktext => 'Create a single course',
+ url => '/adm/createcourse?phase=courseone',
+ permission => 1,
+ #help => '',
+ icon => 'crsnew.png',
+ linktitle => 'Create a new course by completing an online form.'
+ },
+ {
+ linktext => 'Create a single community',
+ url => '/adm/createcourse?phase=groupone',
+ permission => $show_all_choices,
+ #help => '',
+ icon => 'crsnew.png',
+ linktitle => 'Create a new collaborative community by completing an online form.'
+ },
+ {
+ linktext => 'Create courses/communities by uploading an attributes file',
+ url => '/adm/createcourse?phase=batchone',
+ permission => 1,
+ help => 'Batch_Creation',
+ icon => 'uplcrs.png',
+ linktitle => 'Upload an attributes file containing specifications for one or more courses or communities in XML format.'
+ },
+ ]
+ },
+ { categorytitle => 'Course/Community Requests',
+ items => [
+ {
+ linktext => 'Approve or reject requests',
+ url => '/adm/createcourse?phase=requestdisplay',
+ permission => $show_all_choices,
+ #help => '',
+ icon => 'rcrs.png',
+ linktitle => 'Display course and community creation requests submitted by authorized users, held pending approval by a Domain Coordinator.'
+ },
+ {
+ linktext => 'View pending official course requests',
+ url => '/adm/createcourse?phase=pendingdisplay',
+ permission => $show_all_choices,
+ #help => '',
+ icon => 'edit-find.png',
+ alttext => '',
+ linktitle => 'Display official course requests submitted by authorized users, held pending validation of instructor status.'
+ },
+ ]
+ },
+ { categorytitle => 'Administration',
+ items => [
+ {
+ linktext => 'View creation log',
+ url => '/adm/createcourse?phase=creationlog',
+ permission => $show_all_choices,
+ #help => '',
+ icon => 'document-properties.png',
+ linktitle => 'Display information about when, how and by whom courses and communities were created in this domain.'
+ },
+ ]
+ },
+ );
+
+ $r->print(
+ $start_page
+ .$crumbs
+ .&Apache::lonhtmlcommon::generate_menu(@menu)
+ .$end_page
);
- my $options;
- foreach my $choice (@choices) {
- $options .=' '.
- $choice->{'name'}.'';
- if (exists($choice->{'help'})) {
- $options .= &Apache::loncommon::help_open_topic($choice->{'help'});
- }
- $options .= "
\n".' '.(' 'x8).$choice->{'short_description'}.
- "\n";
- }
-
- $r->print(<
'.
'');
+ 'value="'.&mt('Create Courses/Communities').'" />');
$r->print($end_page);
return;
}
@@ -814,15 +845,16 @@ sub courserequestbrowser_javascript {
ENDREQBRW
@@ -850,8 +882,6 @@ sub print_creation_logs {
foreach my $item ('show','page','type','context') {
$curr{$item} = $env{'form.'.$item};
}
- my $createdafter = &Apache::lonhtmlcommon::get_date_from_form('created_after_date');
- my $createdbefore = &Apache::lonhtmlcommon::get_date_from_form('created_before_date');
$curr{'created_after_date'} = &Apache::lonhtmlcommon::get_date_from_form('created_after_date');
$curr{'created_before_date'} = &Apache::lonhtmlcommon::get_date_from_form('created_before_date');
foreach my $key (keys(%defaults)) {
@@ -902,7 +932,7 @@ sub print_creation_logs {
if ($numtitles) {
if (($curr{'type'} eq 'official') || ($curr{'type'} eq 'unofficial')) {
$instcodefilter = &instcode_srchstr($dom,$numtitles);
- &Apache::courseclassifier::instcode_search_str($dom,$numtitles);
+ &Apache::courseclassifier::instcode_search_str($dom,$numtitles,\@codetitles);
if ($curr{'type'} eq 'official') {
$regexpok = 1;
} else {
@@ -925,6 +955,12 @@ sub print_creation_logs {
undef,undef,undef,$curr{'created_before_date'},
$curr{'created_after_date'},$creationcontext);
foreach my $cid (sort { $courses{$b}{'created'}<=>$courses{$a}{'created'} } (keys(%courses))) {
+ if ($curr{'show'} ne &mt('all')) {
+ if ($count >= $curr{'page'} * $curr{'show'}) {
+ $more_records = 1;
+ last;
+ }
+ }
$count ++;
next if ($count < $minshown);
if (!$showntablehdr) {
@@ -1060,14 +1096,14 @@ sub creation_display_filter {
&Apache::lonhtmlcommon::date_setter($formname,'created_before_date',
$curr->{'created_before_date'},undef,
undef,undef,undef,undef,undef,undef,$nolink);
- $output .= '
'.&mt('After:'). ' | '.$startform.' |
'.&mt('Before:').' | '. ''.$endform.' |