--- loncom/interface/londocs.pm 2013/03/31 22:36:01 1.538 +++ loncom/interface/londocs.pm 2013/04/02 00:07:08 1.541 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: londocs.pm,v 1.538 2013/03/31 22:36:01 raeburn Exp $ +# $Id: londocs.pm,v 1.541 2013/04/02 00:07:08 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -834,7 +834,7 @@ sub print_paste_buffer { $othercourse = 1; if ($env{"user.priv.cm./$srcdom/$srcnum"} =~ /\Q:mdc&F\E/) { if ($canpaste) { - $othercrs = '
'.&mt('(from another course).'); + $othercrs = '
'.&mt('(from another course)'); } } else { $canpaste = 0; @@ -902,7 +902,7 @@ sub print_paste_buffer { my ($pasteform,$form_start,$buttons,$form_end); if ($pasteitems) { $pasteitems .= '
'; - $form_start = '
'; + $form_start = ''; if (@pasteable) { $buttons = ''.(' 'x2); } @@ -1009,6 +1009,7 @@ sub paste_popup_js { my %lt = &Apache::lonlocal::texthash( show => 'Show Options', hide => 'Hide Options', + none => 'No items selected from clipboard.', ); return <<"END"; @@ -1038,6 +1039,29 @@ function showOptions(caller,suffix) { return; } +function validateClipboard() { + var numchk = 0; + if (document.pasteform.pasting.length > 1) { + for (var i=0; i 0) { + return true; + } else { + alert("$lt{'none'}"); + return false; + } +} + END } @@ -2170,7 +2194,9 @@ sub update_parameter { } } } else { - map { $allchecked{$which}{$_} = 1; } split(/,/,$env{'form.all'.$which}); + if ($env{'form.all'.$which}) { + map { $allchecked{$which}{$_} = 1; } split(/,/,$env{'form.all'.$which}); + } } } my $haschanges = 0; @@ -2349,24 +2375,30 @@ sub editor { my ($paste_res,$save_error,$pastemsgarray,$lockerror) = &do_paste_from_buffer($coursenum,$coursedom,$folder,$container, \%paste_errors); - if (ref($pastemsgarray) eq 'ARRAY') { - if (@{$pastemsgarray} > 0) { - - $r->print('

'. - join('
',@{$pastemsgarray}). - '

'); - } - } - if ($lockerror) { - $r->print('

'. - $lockerror. + if (ref($pastemsgarray) eq 'ARRAY') { + if (@{$pastemsgarray} > 0) { + $r->print('

'. + join('
',@{$pastemsgarray}). '

'); } - if ($save_error ne '') { - return $save_error; + } + if ($lockerror) { + $r->print('

'. + $lockerror. + '

'); + } + if ($save_error ne '') { + return $save_error; + } + if ($paste_res) { + my %errortext = &Apache::lonlocal::texthash ( + fail => 'Storage of folder contents failed', + failread => 'Reading folder contents failed', + failstore => 'Storage of folder contents failed', + ); + if ($errortext{$paste_res}) { + $r->print('

'.$errortext{$paste_res}.'

'); } - if ($paste_res ne 'ok') { - $r->print('

'.$paste_res.'

'); } if (keys(%paste_errors) > 0) { $r->print('

'."\n". @@ -3034,7 +3066,7 @@ ENDCOPY $copylink=(< $form_common -$lt{'cp'} +$lt{'cp'} $form_end ENDCOPY if (($ishash) && (ref($filtersref->{'cancopy'}) eq 'ARRAY')) { @@ -3051,7 +3083,7 @@ ENDCUT $cutlink=(< $form_common -$lt{'ct'} +$lt{'ct'} $form_end ENDCUT if (($ishash) && (ref($filtersref->{'cancut'}) eq 'ARRAY')) { @@ -3068,7 +3100,7 @@ ENDREM $removelink=(< $form_common -$lt{'rm'} +$lt{'rm'} $form_end ENDREM if (($ishash) && (ref($filtersref->{'canremove'}) eq 'ARRAY')) { @@ -3100,11 +3132,10 @@ ENDREN $selectbox $form_end - + $removelink $cutlink $copylink - END } @@ -5643,69 +5674,78 @@ function propagateState(form,param) { } function checkForSubmit(targetform,param,context,idx,folderpath,index,oldtitle,skip_confirm,container,folder) { + var dosettings; + var doaction; var control = document.togglemultsettings; if (context == 'actions') { control = document.togglemultactions; + doaction = 1; + } else { + dosettings = 1; } - if (control.showmultpick.length) { - for (var i=0; i