version 1.40, 2006/04/15 16:44:56
|
version 1.41, 2007/09/30 13:20:08
|
Line 2834 sub parse_webct4_questionDB {
|
Line 2834 sub parse_webct4_questionDB {
|
$$settings{$id}{texttype} = $attr->{texttype}; |
$$settings{$id}{texttype} = $attr->{texttype}; |
$currtexttype = $attr->{texttype}; |
$currtexttype = $attr->{texttype}; |
} |
} |
|
if ("@state" eq "questestinterop section item presentation flow material matimage") { |
|
$$settings{$id}{imagtype} = $attr->{imagtype}; |
|
$currimagtype = $attr->{imagtype}; |
|
$$settings{$id}{uri} = $attr->{uri}; |
|
|
|
} |
if ("@state" eq "questestinterop section item presentation flow response_lid") { |
if ("@state" eq "questestinterop section item presentation flow response_lid") { |
$$settings{$id}{class} = 'multiplechoice'; |
$$settings{$id}{class} = 'multiplechoice'; |
$list = $attr->{ident}; |
$list = $attr->{ident}; |
Line 3053 sub parse_webct4_questionDB {
|
Line 3059 sub parse_webct4_questionDB {
|
} |
} |
} |
} |
if ("@state" eq "questestinterop section item resprocessing respcondition setvar") { |
if ("@state" eq "questestinterop section item resprocessing respcondition setvar") { |
if ($setvar{varname} eq "answerValue") { # Multiple Choice |
if ($setvar{varname} eq "answerValue") { # Multiple Choice WebCT4.0 |
if ($text =~ m/^\d+$/) { |
if ($text =~ m/^\d+$/) { |
if ($text > 0) { |
if ($text > 0) { |
push(@{$$settings{$id}{$list}{correctanswer}},$answer_id); |
push(@{$$settings{$id}{$list}{correctanswer}},$answer_id); |
} |
} |
} |
} |
|
} elsif ($setvar{varname} eq "que_score") { # Multiple Choice WebCT4.1 |
|
if ($text =~ m/^\d+$/) { |
|
if ($text > 0) { |
|
push(@{$$settings{$id}{$list}{correctanswer}},$answer_id); |
|
} |
|
} |
} |
} |
} |
} |
if ("@state" eq "questestinterop section item resprocessing itemproc_extension webct:x_webct_v01_autocalculate webct:x_webct_v01_anstolerance") { |
if ("@state" eq "questestinterop section item resprocessing itemproc_extension webct:x_webct_v01_autocalculate webct:x_webct_v01_anstolerance") { |
Line 3197 sub build_category_sequences {
|
Line 3209 sub build_category_sequences {
|
push @{$sequencesfiles},'question_database.sequence'; |
push @{$sequencesfiles},'question_database.sequence'; |
foreach my $category (sort keys %{$catinfo}) { |
foreach my $category (sort keys %{$catinfo}) { |
my $seqname; |
my $seqname; |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$seqname = $$catinfo{$category}{title}.'_'.$category; |
$seqname = $$catinfo{$category}{title}.'_'.$category; |
} else { |
} else { |
$seqname = $$catinfo{$category}{title}; |
$seqname = $$catinfo{$category}{title}; |
Line 3286 sub build_problem_container {
|
Line 3298 sub build_problem_container {
|
$probtitle{$id} =~ s/:/_/g; |
$probtitle{$id} =~ s/:/_/g; |
$probtitle{$id} .= '_'.$id; |
$probtitle{$id} .= '_'.$id; |
} |
} |
if (($cms eq 'webct4ce' && $container ne 'database') || |
if (($cms eq 'webctce4' && $container ne 'database') || |
($cms eq 'webctvista4')) { |
($cms eq 'webctvista4')) { |
my $probdir; |
my $probdir; |
my $catid = $$settings{$$allids[0]}{category}; |
my $catid = $$settings{$$allids[0]}{category}; |
if ($catid) { |
if ($catid) { |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
} else { |
} else { |
$probdir = $$catinfo{$catid}{title}; |
$probdir = $$catinfo{$catid}{title}; |
Line 3325 sub build_problem_container {
|
Line 3337 sub build_problem_container {
|
my $probdir; |
my $probdir; |
my $catid = $$settings{$$allids[$j]}{category}; |
my $catid = $$settings{$$allids[$j]}{category}; |
if ($catid) { |
if ($catid) { |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
} else { |
} else { |
$probdir = $$catinfo{$catid}{title}; |
$probdir = $$catinfo{$catid}{title}; |
Line 3756 sub write_webct4_questions {
|
Line 3768 sub write_webct4_questions {
|
if ($$settings{$id}{class} eq 'numerical') { |
if ($$settings{$id}{class} eq 'numerical') { |
foreach my $numid (@{$$settings{$id}{numids}}) { |
foreach my $numid (@{$$settings{$id}{numids}}) { |
foreach my $var (keys %{$$settings{$id}{$numid}{vars}}) { |
foreach my $var (keys %{$$settings{$id}{$numid}{vars}}) { |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$$settings{$id}{text} =~ s/{($var)}/\$$1 /g; |
$$settings{$id}{text} =~ s/{($var)}/\$$1 /g; |
} elsif ($cms eq 'webctvista4') { |
} elsif ($cms eq 'webctvista4') { |
$$settings{$id}{text} =~ s/\[($var)\]/\$$1 /g; |
$$settings{$id}{text} =~ s/\[($var)\]/\$$1 /g; |
Line 3782 sub write_webct4_questions {
|
Line 3794 sub write_webct4_questions {
|
} |
} |
} |
} |
$$total{prob} ++; |
$$total{prob} ++; |
|
|
if (exists($$settings{$id}{uri})) { |
if (exists($$settings{$id}{uri})) { |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
if ($$settings{$id}{imagtype} =~ /^image\//) { |
if ($$settings{$id}{imagtype} =~ /^image\//) { |
$questionimage = '<p><img src="../../resfiles/'.$$settings{$id}{uri}.'" /></p>'."\n"; |
$questionimage = '<p><img src="../../resfiles/'.$$settings{$id}{uri}.'" /></p>'."\n"; |
} else { |
} else { |
Line 4092 $$settings{$id}{$list}{jumbledtext}[$k]
|
Line 4105 $$settings{$id}{$list}{jumbledtext}[$k]
|
($$settings{$id}{class} eq 'shortanswer')) { |
($$settings{$id}{class} eq 'shortanswer')) { |
my $labelnum = 0; |
my $labelnum = 0; |
my @str_labels = (); |
my @str_labels = (); |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
foreach my $str_id (@{$$settings{$id}{str}}) { |
foreach my $str_id (@{$$settings{$id}{str}}) { |
foreach my $label (@{$$settings{$id}{$str_id}{labels}}) { |
foreach my $label (@{$$settings{$id}{$str_id}{labels}}) { |
push(@str_labels,$label); |
push(@str_labels,$label); |
Line 4252 $$settings{$id}{$list}{jumbledtext}[$k]
|
Line 4265 $$settings{$id}{$list}{jumbledtext}[$k]
|
} |
} |
$increment .= '1'; |
$increment .= '1'; |
} |
} |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$formula =~ s/{($var)}/(\$$1)/g; |
$formula =~ s/{($var)}/(\$$1)/g; |
} elsif ($cms eq 'webctvista4') { |
} elsif ($cms eq 'webctvista4') { |
$formula =~ s/\[($var)\]/(\$$1)/g; |
$formula =~ s/\[($var)\]/(\$$1)/g; |
Line 4305 $$settings{$id}{$list}{jumbledtext}[$k]
|
Line 4318 $$settings{$id}{$list}{jumbledtext}[$k]
|
my $probdir; |
my $probdir; |
my $catid = $$settings{$id}{category}; |
my $catid = $$settings{$id}{category}; |
if ($catid) { |
if ($catid) { |
if ($cms eq 'webct4ce') { |
if ($cms eq 'webctce4') { |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
$probdir = $$catinfo{$catid}{title}.'_'.$catid; |
} else { |
} else { |
$probdir = $$catinfo{$catid}{title}; |
$probdir = $$catinfo{$catid}{title}; |