version 1.33, 2006/03/24 17:16:07
|
version 1.34, 2006/03/24 17:36:27
|
Line 64 sub ims_config {
|
Line 64 sub ims_config {
|
survey => 'FORM', |
survey => 'FORM', |
); |
); |
@{$$cmsmap{angel}{doc}} = ('FILE','PAGE'); |
@{$$cmsmap{angel}{doc}} = ('FILE','PAGE'); |
%{$$cmsmap{webct4}} = ( |
%{$$cmsmap{webctce4}} = ( |
quiz => 'webctquiz', |
quiz => 'webctquiz', |
survey => 'webctsurvey', |
survey => 'webctsurvey', |
doc => 'webcontent' |
doc => 'webcontent' |
Line 158 sub process_manifest {
|
Line 158 sub process_manifest {
|
bb6 => 'organization', |
bb6 => 'organization', |
bb5 => 'tableofcontents', |
bb5 => 'tableofcontents', |
angel => 'organization', |
angel => 'organization', |
webct4 => 'organization', |
webctce4 => 'organization', |
); |
); |
my %contents = (); |
my %contents = (); |
my @state = (); |
my @state = (); |
Line 202 sub process_manifest {
|
Line 202 sub process_manifest {
|
%{$$items{$itm}} = (); |
%{$$items{$itm}} = (); |
$$items{$itm}{contentscount} = 0; |
$$items{$itm}{contentscount} = 0; |
@{$$items{$itm}{contents}} = (); |
@{$$items{$itm}{contents}} = (); |
if ($cms eq 'bb5' || $cms eq 'bb6' || $cms eq 'webct4') { |
if ($cms eq 'bb5' || $cms eq 'bb6' || $cms eq 'webctce4') { |
$$items{$itm}{resnum} = $attr->{identifierref}; |
$$items{$itm}{resnum} = $attr->{identifierref}; |
if ($cms eq 'bb5') { |
if ($cms eq 'bb5') { |
$$items{$itm}{title} = $attr->{title}; |
$$items{$itm}{title} = $attr->{title}; |
Line 256 sub process_manifest {
|
Line 256 sub process_manifest {
|
$lastitem = $itm; |
$lastitem = $itm; |
} |
} |
} |
} |
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
if (($state[-1] eq "webct:properties") && (@state > 4)) { |
if (($state[-1] eq "webct:properties") && (@state > 4)) { |
$$items{$itm}{properties} = $attr->{identifierref}; |
$$items{$itm}{properties} = $attr->{identifierref}; |
} |
} |
Line 267 sub process_manifest {
|
Line 267 sub process_manifest {
|
if ($cms eq 'bb5' || $cms eq 'bb6') { |
if ($cms eq 'bb5' || $cms eq 'bb6') { |
$$resources{$identifier}{file} = $attr->{file}; |
$$resources{$identifier}{file} = $attr->{file}; |
$$resources{$identifier}{type} = $attr->{type}; |
$$resources{$identifier}{type} = $attr->{type}; |
} elsif ($cms eq 'webct4') { |
} elsif ($cms eq 'webctce4') { |
$$resources{$identifier}{type} = $attr->{type}; |
$$resources{$identifier}{type} = $attr->{type}; |
$$resources{$identifier}{file} = $attr->{href}; |
$$resources{$identifier}{file} = $attr->{href}; |
} elsif ($cms eq 'angel') { |
} elsif ($cms eq 'angel') { |
Line 280 sub process_manifest {
|
Line 280 sub process_manifest {
|
} |
} |
} elsif ("@state" eq "manifest resources resource file") { |
} elsif ("@state" eq "manifest resources resource file") { |
if ($$includedres{$identifier} || $phase ne 'build') { |
if ($$includedres{$identifier} || $phase ne 'build') { |
if ($cms eq 'bb5' || $cms eq 'bb6' || $cms eq 'webct4') { |
if ($cms eq 'bb5' || $cms eq 'bb6' || $cms eq 'webctce4') { |
push @{$$hrefs{$identifier}},$attr->{href}; |
push @{$$hrefs{$identifier}},$attr->{href}; |
} elsif ($cms eq 'angel') { |
} elsif ($cms eq 'angel') { |
if ($attr->{href} =~ m/^_assoc\\$identifier\\(.+)$/) { |
if ($attr->{href} =~ m/^_assoc\\$identifier\\(.+)$/) { |
Line 303 sub process_manifest {
|
Line 303 sub process_manifest {
|
if ($cms eq 'angel' || $cms eq 'bb6') { |
if ($cms eq 'angel' || $cms eq 'bb6') { |
$$items{$itm}{title} = $text; |
$$items{$itm}{title} = $text; |
} |
} |
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
$$items{$itm}{title} = $text; |
$$items{$itm}{title} = $text; |
$$items{$itm}{title} =~ s/(<[^>]*>)//g; |
$$items{$itm}{title} =~ s/(<[^>]*>)//g; |
} |
} |
Line 372 sub copy_resources {
|
Line 372 sub copy_resources {
|
%{$$url{$key}} = (); |
%{$$url{$key}} = (); |
foreach my $file (@{$$hrefs{$key}}) { |
foreach my $file (@{$$hrefs{$key}}) { |
my $source = $tempdir.'/'.$key.'/'.$file; |
my $source = $tempdir.'/'.$key.'/'.$file; |
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
$source = $tempdir.'/'.$file; |
$source = $tempdir.'/'.$file; |
} |
} |
my $filename = ''; |
my $filename = ''; |
Line 384 sub copy_resources {
|
Line 384 sub copy_resources {
|
} |
} |
$file =~ s-\\-/-g; |
$file =~ s-\\-/-g; |
my $copyfile = $file; |
my $copyfile = $file; |
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
if ($file =~ m-/my_files/(.+)$-) { |
if ($file =~ m-/my_files/(.+)$-) { |
$copyfile = $1; |
$copyfile = $1; |
} |
} |
} |
} |
unless (($cms eq 'webct4') && ($copyfile =~ m/questionDB\.xml$/ || $copyfile =~ m/quiz_QIZ_\d+\.xml$/ || $copyfile =~ m/properties_QIZ_\d+\.xml$/)) { |
unless (($cms eq 'webctce4') && ($copyfile =~ m/questionDB\.xml$/ || $copyfile =~ m/quiz_QIZ_\d+\.xml$/ || $copyfile =~ m/properties_QIZ_\d+\.xml$/)) { |
$copyfile = $fpath.$copyfile; |
$copyfile = $fpath.$copyfile; |
my $fileresult; |
my $fileresult; |
if (-e $source) { |
if (-e $source) { |
Line 427 sub copy_resources {
|
Line 427 sub copy_resources {
|
} elsif ($cms eq 'bb5' || $cms eq 'bb6') { |
} elsif ($cms eq 'bb5' || $cms eq 'bb6') { |
rename("$tempdir/$key/$file","$destdir/resfiles/$key/$file"); |
rename("$tempdir/$key/$file","$destdir/resfiles/$key/$file"); |
} |
} |
} elsif ($cms eq 'webct4') { |
} elsif ($cms eq 'webctce4') { |
if ($file =~ m-/my_files/(.+)$-) { |
if ($file =~ m-/my_files/(.+)$-) { |
my $copyfile = $1; |
my $copyfile = $1; |
if ($copyfile =~ m-^[^/]+/[^/]+-) { |
if ($copyfile =~ m-^[^/]+/[^/]+-) { |
Line 569 sub process_resinfo {
|
Line 569 sub process_resinfo {
|
if (@{$pools}) { |
if (@{$pools}) { |
$$items{'Top'}{'contentscount'} ++; |
$$items{'Top'}{'contentscount'} ++; |
} |
} |
} elsif ($cms eq 'webct4') { |
} elsif ($cms eq 'webctce4') { |
foreach my $key (sort keys %{$resources}) { |
foreach my $key (sort keys %{$resources}) { |
if (grep/^$key$/,@{$targets}) { |
if (grep/^$key$/,@{$targets}) { |
if ($$resources{$key}{type} eq "webcontent") { |
if ($$resources{$key}{type} eq "webcontent") { |
Line 649 sub build_structure {
|
Line 649 sub build_structure {
|
my $resnum = $$items{$key}{resnum}; |
my $resnum = $$items{$key}{resnum}; |
my $type = $$resources{$resnum}{type}; |
my $type = $$resources{$resnum}{type}; |
my $contentscount = $$items{$key}{'contentscount'}; |
my $contentscount = $$items{$key}{'contentscount'}; |
if (($cms eq 'angel' && $type eq "FOLDER") || (($cms eq 'bb5' || $cms eq 'bb6') && $$resinfo{$resnum}{'isfolder'} eq "true") && (($type eq "resource/x-bb-document") || ($type eq "resource/x-bb-staffinfo") || ($type eq "resource/x-bb-externallink")) || ($cms eq 'webct4' && $contentscount > 0)) { |
if (($cms eq 'angel' && $type eq "FOLDER") || (($cms eq 'bb5' || $cms eq 'bb6') && $$resinfo{$resnum}{'isfolder'} eq "true") && (($type eq "resource/x-bb-document") || ($type eq "resource/x-bb-staffinfo") || ($type eq "resource/x-bb-externallink")) || ($cms eq 'webctce4' && $contentscount > 0)) { |
unless (($cms eq 'bb5') && $key eq 'Top') { |
unless (($cms eq 'bb5') && $key eq 'Top') { |
$seqtext{$key} = "<map>\n"; |
$seqtext{$key} = "<map>\n"; |
} |
} |
Line 887 sub build_structure {
|
Line 887 sub build_structure {
|
sub make_structure { |
sub make_structure { |
my ($cms,$key,$srcstem,$flag,$count,$timestamp,$boardnum,$hrefs,$pagecontents,$res,$type,$file,$resinfo,$contitem,$uname,$cdom,$contcount,$packageflag,$contitemcount,$randompick) = @_; |
my ($cms,$key,$srcstem,$flag,$count,$timestamp,$boardnum,$hrefs,$pagecontents,$res,$type,$file,$resinfo,$contitem,$uname,$cdom,$contcount,$packageflag,$contitemcount,$randompick) = @_; |
my $src =''; |
my $src =''; |
if (($cms eq 'angel' && $type eq 'FOLDER') || (($cms eq 'bb5' || $cms eq 'bb6') && (($$resinfo{$res}{'isfolder'} eq 'true') || $key eq 'Top')) || ($cms eq 'webct4' && $contitemcount > 0)) { |
if (($cms eq 'angel' && $type eq 'FOLDER') || (($cms eq 'bb5' || $cms eq 'bb6') && (($$resinfo{$res}{'isfolder'} eq 'true') || $key eq 'Top')) || ($cms eq 'webctce4' && $contitemcount > 0)) { |
$src = $srcstem.'/sequences/'.$contitem.'.sequence'; |
$src = $srcstem.'/sequences/'.$contitem.'.sequence'; |
$$flag{$key}{page} = 0; |
$$flag{$key}{page} = 0; |
$$flag{$key}{seq} = 1; |
$$flag{$key}{seq} = 1; |
$$count{$key}{seq} ++; |
$$count{$key}{seq} ++; |
} elsif ($cms eq 'webct4' && $randompick) { |
} elsif ($cms eq 'webctce4' && $randompick) { |
$src = $srcstem.'/sequences/'.$res.'.sequence'; |
$src = $srcstem.'/sequences/'.$res.'.sequence'; |
$$flag{$key}{page} = 0; |
$$flag{$key}{page} = 0; |
$$flag{$key}{seq} = 1; |
$$flag{$key}{seq} = 1; |
Line 940 sub make_structure {
|
Line 940 sub make_structure {
|
} |
} |
$$flag{$key}{seq} = 0; |
$$flag{$key}{seq} = 0; |
} |
} |
} elsif ($cms eq 'webct4') { |
} elsif ($cms eq 'webctce4') { |
if ($type eq 'webctquiz') { |
if ($type eq 'webctquiz') { |
$src = $srcstem.'/pages/'.$res.'.page'; |
$src = $srcstem.'/pages/'.$res.'.page'; |
$$count{$key}{page} ++; |
$$count{$key}{page} ++; |
Line 2540 sub process_assessment {
|
Line 2540 sub process_assessment {
|
&parse_bb5_assessment($res,$docroot,$container,$settings,\%allanswers,\%allchoices,\@allids); |
&parse_bb5_assessment($res,$docroot,$container,$settings,\%allanswers,\%allchoices,\@allids); |
} elsif ($cms eq 'bb6') { |
} elsif ($cms eq 'bb6') { |
&parse_bb6_assessment($res,$docroot,$container,$settings,\@allids); |
&parse_bb6_assessment($res,$docroot,$container,$settings,\@allids); |
} elsif ($cms eq 'webct4') { |
} elsif ($cms eq 'webctce4') { |
unless($$dbparse) { |
unless($$dbparse) { |
&parse_webct4_questionDB($docroot,$$resources{$res}{file},$catinfo,$qzdbsettings,\%alldbanswers,\%alldbchoices,\@alldbquestids); |
&parse_webct4_questionDB($docroot,$$resources{$res}{file},$catinfo,$qzdbsettings,\%alldbanswers,\%alldbchoices,\@alldbquestids); |
if (!-e "$destdir/sequences") { |
if (!-e "$destdir/sequences") { |
Line 2603 sub process_assessment {
|
Line 2603 sub process_assessment {
|
} |
} |
} |
} |
my $dirtitle; |
my $dirtitle; |
unless ($cms eq 'webct4') { |
unless ($cms eq 'webctce4') { |
$dirtitle = $$settings{'title'}; |
$dirtitle = $$settings{'title'}; |
$dirtitle =~ s/\W//g; |
$dirtitle =~ s/\W//g; |
$dirtitle .= '_'.$res; |
$dirtitle .= '_'.$res; |
Line 2616 sub process_assessment {
|
Line 2616 sub process_assessment {
|
$newdir = "$destdir/problems/$dirtitle"; |
$newdir = "$destdir/problems/$dirtitle"; |
} |
} |
|
|
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
&build_problem_container($cms,$dirtitle,$destdir,$container,$res,$total,$sequencesfiles,$pagesfiles,$randompickflag,$context,\@allids,$udom,$uname,$dirname,\$containerdir,$cid,$cdom,$cnum,$catinfo,$qzdbsettings); |
&build_problem_container($cms,$dirtitle,$destdir,$container,$res,$total,$sequencesfiles,$pagesfiles,$randompickflag,$context,\@allids,$udom,$uname,$dirname,\$containerdir,$cid,$cdom,$cnum,$catinfo,$qzdbsettings); |
} else { |
} else { |
&build_problem_container($cms,$dirtitle,$destdir,$container,$res,$total,$sequencesfiles,$pagesfiles,$randompickflag,$context,\@allids,$udom,$uname,$dirname,\$containerdir,$cid,$cdom,$cnum,$catinfo,$settings); |
&build_problem_container($cms,$dirtitle,$destdir,$container,$res,$total,$sequencesfiles,$pagesfiles,$randompickflag,$context,\@allids,$udom,$uname,$dirname,\$containerdir,$cid,$cdom,$cnum,$catinfo,$settings); |
Line 2658 sub build_problem_container {
|
Line 2658 sub build_problem_container {
|
my $probsrc = "/res/lib/templates/simpleproblem.problem"; |
my $probsrc = "/res/lib/templates/simpleproblem.problem"; |
if ($context eq 'CSTR') { |
if ($context eq 'CSTR') { |
foreach my $id (@{$allids}) { |
foreach my $id (@{$allids}) { |
if ($cms eq 'webct4') { |
if ($cms eq 'webctce4') { |
$probtitle{$id} = $$settings{$id}{title}; |
$probtitle{$id} = $$settings{$id}{title}; |
} else { |
} else { |
$probtitle{$id} = $$settings{title}; |
$probtitle{$id} = $$settings{title}; |
Line 2667 sub build_problem_container {
|
Line 2667 sub build_problem_container {
|
$probtitle{$id} =~ s/\W//g; |
$probtitle{$id} =~ s/\W//g; |
$probtitle{$id} .= '_'.$id; |
$probtitle{$id} .= '_'.$id; |
} |
} |
if ($cms eq 'webct4' && $container ne 'database') { |
if ($cms eq 'webctce4' && $container ne 'database') { |
my $catid = $$settings{$$allids[0]}{category}; |
my $catid = $$settings{$$allids[0]}{category}; |
my $probdir = $$catinfo{$catid}{title}.'_'.$catid; |
my $probdir = $$catinfo{$catid}{title}.'_'.$catid; |
$probdir =~ s/\s/_/g; |
$probdir =~ s/\s/_/g; |
Line 2691 sub build_problem_container {
|
Line 2691 sub build_problem_container {
|
$curr_id = $j; |
$curr_id = $j; |
$next_id = $curr_id + 1; |
$next_id = $curr_id + 1; |
if ($context eq 'CSTR') { |
if ($context eq 'CSTR') { |
if ($cms eq 'webct4' && $container ne 'database') { |
if ($cms eq 'webctce4' && $container ne 'database') { |
my $catid = $$settings{$$allids[$j]}{category}; |
my $catid = $$settings{$$allids[$j]}{category}; |
my $probdir = $$catinfo{$catid}{title}.'_'.$catid; |
my $probdir = $$catinfo{$catid}{title}.'_'.$catid; |
$probdir =~ s/\s/_/g; |
$probdir =~ s/\s/_/g; |