--- loncom/interface/loncommon.pm 2016/04/02 04:30:20 1.1237
+++ loncom/interface/loncommon.pm 2016/04/04 01:09:47 1.1239
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common routines
#
-# $Id: loncommon.pm,v 1.1237 2016/04/02 04:30:20 raeburn Exp $
+# $Id: loncommon.pm,v 1.1239 2016/04/04 01:09:47 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -590,7 +590,10 @@ sub coursebrowser_javascript {
if (formname == 'ccrs') {
var ownername = document.forms[formid].ccuname.value;
var ownerdom = document.forms[formid].ccdomain.options[document.forms[formid].ccdomain.selectedIndex].value;
- url += '&cloner='+ownername+':'+ownerdom+'&crscode='+document.forms[formid].crscode.value;
+ url += '&cloner='+ownername+':'+ownerdom;
+ if (type == 'Course') {
+ url += '&crscode='+document.forms[formid].crscode.value;
+ }
}
if (formname == 'requestcrs') {
url += '&crsdom=$domainfilter&crscode=$instcode';
@@ -878,6 +881,8 @@ sub selectcourse_link {
my $linktext = &mt('Select Course');
if ($selecttype eq 'Community') {
$linktext = &mt('Select Community');
+ } elsif ($selecttype eq 'Placement') {
+ $linktext = &mt('Select Placement Test');
} elsif ($selecttype eq 'Course/Community') {
$linktext = &mt('Select Course/Community');
$type = '';
@@ -14268,6 +14273,8 @@ sub extract_categories {
$trailstr = &mt('Official courses (with institutional codes)');
} elsif ($name eq 'communities') {
$trailstr = &mt('Communities');
+ } elsif ($name eq 'placement') {
+ $trailstr = &mt('Placement Tests');
} else {
$trailstr = $name;
}
@@ -14406,8 +14413,10 @@ sub assign_categories_table {
next if ($parent eq 'instcode');
if ($type eq 'Community') {
next unless ($parent eq 'communities');
+ } elsif ($type eq 'Placement') {
+ next unless ($parent eq 'placement');
} else {
- next if ($parent eq 'communities');
+ next if (($parent eq 'communities') || ($parent eq 'placement'));
}
my $css_class = $itemcount%2?' class="LC_odd_row"':'';
my $item = &escape($parent).'::0';
@@ -14420,6 +14429,8 @@ sub assign_categories_table {
my $parent_title = $parent;
if ($parent eq 'communities') {
$parent_title = &mt('Communities');
+ } elsif ($parent eq 'placement') {
+ $parent_title = &mt('Placement Tests');
}
$table .= '
'.
''.$clonemsg.'';
}
@@ -15200,10 +15216,23 @@ sub construct_course {
#
# Set params for Placement Tests
#
- if ($crstype eq 'Placement') {
- my $storeunder=$$crsudom.'_'.$$crsunum.'.0.buttonshide';
- my %storecontent = ($storeunder => 'yes',
- $storeunder.'.type' => 'string_yesno');
+ if ($args->{'crstype'} eq 'Placement') {
+ my %storecontent;
+ my $prefix=$$crsudom.'_'.$$crsunum.'.0.';
+ my %defaults = (
+ buttonshide => { value => 'yes',
+ type => 'string_yesno',},
+ type => { value => 'randomizetry',
+ type => 'string_questiontype',},
+ maxtries => { value => 1,
+ type => 'int_pos',},
+ problemstatus => { value => 'no',
+ type => 'string_problemstatus',},
+ );
+ foreach my $key (keys(%defaults)) {
+ $storecontent{$prefix.$key} = $defaults{$key}{'value'};
+ $storecontent{$prefix.$key.'.type'} = $defaults{$key}{'type'};
+ }
&Apache::lonnet::cput
('resourcedata',\%storecontent,$$crsudom,$$crsunum);
}
@@ -15761,15 +15790,19 @@ sub build_filters {
$createdfilterform = &timebased_select_form('createdfilter',$filter);
}
+ my $prefix = $crstype;
+ if ($crstype eq 'Placement') {
+ $prefix = 'Placement Test'
+ }
my %lt = &Apache::lonlocal::texthash(
- 'cac' => "$crstype Activity",
- 'ccr' => "$crstype Created",
- 'cde' => "$crstype Title",
- 'cdo' => "$crstype Domain",
+ 'cac' => "$prefix Activity",
+ 'ccr' => "$prefix Created",
+ 'cde' => "$prefix Title",
+ 'cdo' => "$prefix Domain",
'ins' => 'Institutional Code',
'inc' => 'Institutional Categorization',
- 'cow' => "$crstype Owner/Co-owner",
- 'cop' => "$crstype Personnel Includes",
+ 'cow' => "$prefix Owner/Co-owner",
+ 'cop' => "$prefix Personnel Includes",
'cog' => 'Type',
);
@@ -15777,6 +15810,8 @@ sub build_filters {
my $typeval = 'Course';
if ($crstype eq 'Community') {
$typeval = 'Community';
+ } elsif ($crstype eq 'Placement') {
+ $typeval = 'Placement';
}
$typeselectform = '';
} else {
@@ -15786,8 +15821,14 @@ sub build_filters {
}
$typeselectform .= '>'."\n";
foreach my $posstype ('Course','Community','Placement') {
+ my $shown;
+ if ($posstype eq 'Placement') {
+ $shown = &mt('Placement Test');
+ } else {
+ $shown = &mt($posstype);
+ }
$typeselectform.='\n";
+ ($posstype eq $crstype ? ' selected="selected" ' : ''). ">".$shown."\n";
}
$typeselectform.="";
}
|