');
+# Before
+ for (my $idx=0;$idx<=$docslog{$id}{'logentry'}{'maxidx'};$idx++) {
+ my $oldname=(split(/\:/,$docslog{$id}{'logentry'}{'before_resources_'.$idx}))[0];
+ my $newname=(split(/\:/,$docslog{$id}{'logentry'}{'after_resources_'.$idx}))[0];
+ if ($oldname ne $newname) {
+ $r->print(&LONCAPA::map::qtescape($oldname));
+ }
+ }
+ $r->print('
');
+ for (my $idx=0;$idx<=$docslog{$id}{'logentry'}{'maxidx'};$idx++) {
+ if ($docslog{$id}{'logentry'}{'before_order_res_'.$idx}) {
+ $r->print('
'.&Apache::loncommon::end_data_table_row());
+ $shown++;
+ if (!($env{'form.show'} eq &mt('all')
+ || $shown<=$env{'form.show'})) { last; }
+ }
+ $r->print(&Apache::loncommon::end_data_table());
+ $r->print(&Apache::loncommon::end_page());
}
sub editor {
@@ -1013,7 +1210,7 @@ sub editor {
$env{'form.markedcopy_title'}=$title;
$env{'form.markedcopy_url'}=$url;
}
- my ($breadcrumbtrail,$randompick,$ishidden,$isencrypted)=&breadcrumbs($folder);
+ my ($breadcrumbtrail,$randompick,$ishidden,$isencrypted,$plain)=&breadcrumbs($folder);
$r->print($breadcrumbtrail);
if ($fatal) {
$r->print('
'.$errtext.'
');
@@ -1023,68 +1220,85 @@ sub editor {
# ---------------- if they are for this folder and user allowed to make changes
if (($allowed) && ($env{'form.folder'} eq $folder)) {
# set parameters and change order
- if (defined($env{'form.setparms'})) {
+ &snapshotbefore();
+ if ($env{'form.changeparms'}) {
my $idx=$env{'form.setparms'};
# set parameters
- if ($env{'form.randpick_'.$idx}) {
- &LONCAPA::map::storeparameter($idx,'parameter_randompick',$env{'form.randpick_'.$idx},'int_pos');
- } else {
- &LONCAPA::map::delparameter($idx,'parameter_randompick');
+ if ($env{'form.changeparms'} eq 'randompick') {
+ if ($env{'form.randpick_'.$idx}) {
+ &LONCAPA::map::storeparameter($idx,'parameter_randompick',$env{'form.randpick_'.$idx},'int_pos');
+ &remember_parms($idx,'randompick','set',$env{'form.randpick_'.$idx});
+ } else {
+ &LONCAPA::map::delparameter($idx,'parameter_randompick');
+ &remember_parms($idx,'randompick','del');
+ }
}
- if ($env{'form.hidprs_'.$idx}) {
- &LONCAPA::map::storeparameter($idx,'parameter_hiddenresource','yes','string_yesno');
- } else {
- &LONCAPA::map::delparameter($idx,'parameter_hiddenresource');
+ if ($env{'form.changeparms'} eq 'hiddenresource') {
+ if ($env{'form.hidprs_'.$idx}) {
+ &LONCAPA::map::storeparameter($idx,'parameter_hiddenresource','yes','string_yesno');
+ &remember_parms($idx,'hiddenresource','set',$env{'form.hidprs_'.$idx});
+ } else {
+ &LONCAPA::map::delparameter($idx,'parameter_hiddenresource');
+ &remember_parms($idx,'hiddenresource','del');
+ }
}
- if ($env{'form.encprs_'.$idx}) {
- &LONCAPA::map::storeparameter($idx,'parameter_encrypturl','yes','string_yesno');
- } else {
- &LONCAPA::map::delparameter($idx,'parameter_encrypturl');
+ if ($env{'form.changeparms'} eq 'encrypturl') {
+ if ($env{'form.encprs_'.$idx}) {
+ &LONCAPA::map::storeparameter($idx,'parameter_encrypturl','yes','string_yesno');
+ &remember_parms($idx,'encrypturl','set',$env{'form.encprs_'.$idx});
+ } else {
+ &LONCAPA::map::delparameter($idx,'parameter_encrypturl');
+ &remember_parms($idx,'encrypturl','del');
+ }
+ }
+# store the changed version
+ ($errtext,$fatal)=&storemap($coursenum,$coursedom,$folder.'.'.$container);
+ if ($fatal) {
+ $r->print('
'.$errtext.'
');
+ return;
}
+ }
- if ($env{'form.newpos'}) {
+ if ($env{'form.newpos'}) {
# change order
-
- my $newpos=$env{'form.newpos'}-1;
- my $currentpos=$env{'form.currentpos'}-1;
- my $i;
- my @neworder=();
- if ($newpos>$currentpos) {
+ my $newpos=$env{'form.newpos'}-1;
+ my $currentpos=$env{'form.currentpos'}-1;
+ my $i;
+ my @neworder=();
+ if ($newpos>$currentpos) {
# moving stuff up
- for ($i=0;$i<$currentpos;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i];
- }
- for ($i=$currentpos;$i<$newpos;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i+1];
- }
- $neworder[$newpos]=$LONCAPA::map::order[$currentpos];
- for ($i=$newpos+1;$i<=$#LONCAPA::map::order;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i];
- }
- } else {
+ for ($i=0;$i<$currentpos;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i];
+ }
+ for ($i=$currentpos;$i<$newpos;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i+1];
+ }
+ $neworder[$newpos]=$LONCAPA::map::order[$currentpos];
+ for ($i=$newpos+1;$i<=$#LONCAPA::map::order;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i];
+ }
+ } else {
# moving stuff down
- for ($i=0;$i<$newpos;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i];
- }
- $neworder[$newpos]=$LONCAPA::map::order[$currentpos];
- for ($i=$newpos+1;$i<$currentpos+1;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i-1];
- }
- for ($i=$currentpos+1;$i<=$#LONCAPA::map::order;$i++) {
- $neworder[$i]=$LONCAPA::map::order[$i];
- }
+ for ($i=0;$i<$newpos;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i];
+ }
+ $neworder[$newpos]=$LONCAPA::map::order[$currentpos];
+ for ($i=$newpos+1;$i<$currentpos+1;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i-1];
+ }
+ for ($i=$currentpos+1;$i<=$#LONCAPA::map::order;$i++) {
+ $neworder[$i]=$LONCAPA::map::order[$i];
}
- @LONCAPA::map::order=@neworder;
}
+ @LONCAPA::map::order=@neworder;
# store the changed version
-
($errtext,$fatal)=&storemap($coursenum,$coursedom,$folder.'.'.$container);
if ($fatal) {
$r->print('
'.$errtext.'
');
return;
}
-
}
+
if ($env{'form.pastemarked'}) {
# paste resource to end of list
my $url=$env{'form.markedcopy_url'};
@@ -1096,7 +1310,7 @@ sub editor {
$url=~/^(.+)\.(\w+)$/;
my $newurl=$1.$newid.'.'.$2;
my $storefn=$newurl;
- $storefn=~s/^\/\w+\/\w+\/\w+\///;
+ $storefn=~s{^/\w+/$match_domain/$match_username/}{};
&Apache::lonclonecourse::writefile
($env{'request.course.id'},$storefn,
&Apache::lonnet::getfile($url));
@@ -1195,7 +1409,7 @@ sub editor {
}
}
# Store the changed version
- ($errtext,$fatal)=group_import($coursenum, $coursedom, $folder,
+ ($errtext,$fatal)=&group_import($coursenum, $coursedom, $folder,
$container,'londocs',@imports);
if ($fatal) {
$r->print('
'.$errtext.'
');
@@ -1222,6 +1436,7 @@ sub editor {
$r->print('
'.&mt('No map selected.').'
');
}
}
+ &log_differences($plain);
}
# ---------------------------------------------------------------- End commands
# ---------------------------------------------------------------- Print screen
@@ -1403,7 +1618,7 @@ sub process_secondary_uploads {
$destination .= $newidx;
my ($url,$filename);
$url=&Apache::lonnet::userfileupload($formname.$num,1,$destination);
- ($filename) = ($url =~ m-^/uploaded/$coursedom/$coursenum/$destination/(.+)$-);
+ ($filename) = ($url =~ m{^/uploaded/\Q$coursedom\E/\Q$coursenum\E/\Q$destination\E/(.+)$});
return $filename;
}
@@ -1418,7 +1633,7 @@ sub entryline {
my $foldertitle=$title;
my $pagetitle=$title;
my $orderidx=$LONCAPA::map::order[$index];
- if ($title=~ /^(\d+)___&&&___(\w+)___&&&___(\w+)___&&&___(.*)$/ ) {
+ if ($title=~ /^(\d+)___&&&___($match_username)___&&&___($match_domain)___&&&___(.*)$/ ) {
$foldertitle=&Apache::lontexconvert::msgtexconverted($4);
$renametitle=$4;
$title=''.&Apache::lonlocal::locallocaltime($1).' '.
@@ -1504,6 +1719,7 @@ ENDCOPY
+