--- loncom/interface/loncreatecourse.pm 2010/04/13 21:19:15 1.137 +++ loncom/interface/loncreatecourse.pm 2010/09/23 21:25:43 1.145 @@ -1,7 +1,7 @@ # The LearningOnline Network # Create a course # -# $Id: loncreatecourse.pm,v 1.137 2010/04/13 21:19:15 raeburn Exp $ +# $Id: loncreatecourse.pm,v 1.145 2010/09/23 21:25:43 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -299,7 +299,7 @@ END .&Apache::lonhtmlcommon::row_closure() .&Apache::lonhtmlcommon::row_title($lt{'ctit'}) - .'' + .'' .&Apache::lonhtmlcommon::row_closure() .&Apache::lonhtmlcommon::row_title($lt{'chsr'}) @@ -359,15 +359,21 @@ END .'' - .' ' - .''); + } + $r->print('
('.$lt{'stco'}.')' .&Apache::lonhtmlcommon::row_closure(1) .&Apache::lonhtmlcommon::end_pick_box() @@ -683,7 +689,7 @@ sub create_course { '

'.&mt('Manage Access Keys').'

'); } # Flush the course logs so reverse user roles immediately updated - &Apache::lonnet::flushcourselogs(); + $r->register_cleanup(\&Apache::lonnet::flushcourselogs); $r->print('

'.&mt('Roles will be active at next login').'.

'); } $r->print('

'. @@ -699,62 +705,79 @@ sub print_intro_page { my $end_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.'), - }); - if ($show_all_choices) { - push(@choices,{ 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 => 'pendingdisplay', - name => &mt('Display official course requests'), - short_description => - &mt('Display official course requests submitted by authorized users, held pending validation of instructor status.'), - }, - { 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.'), - }); - } else { - push(@choices,{ internal_name => 'batchone', - name => &mt('Create courses by uploading an attributes file'), - short_description => - &mt('Upload an attributes file containing specifications for one or more courses in XML format.'), - help => 'Batch_Creation', - }); - } - 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(< '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 + ); } sub upload_batchfile { @@ -771,7 +794,7 @@ sub upload_batchfile { ''. '

'. ''); + 'value="'.&mt('Create Courses/Communities').'" />'); $r->print($end_page); return; } @@ -909,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 {