version 1.244, 2024/03/02 18:47:15
|
version 1.246, 2025/03/05 02:27:00
|
Line 864 sub msgforwardchanger {
|
Line 864 sub msgforwardchanger {
|
my $validatescript = &Apache::lonhtmlcommon::javascript_valid_email(); |
my $validatescript = &Apache::lonhtmlcommon::javascript_valid_email(); |
my $jscript = qq| |
my $jscript = qq| |
<script type="text/javascript" language="JavaScript"> |
<script type="text/javascript" language="JavaScript"> |
|
// <![CDATA[ |
function validate() { |
function validate() { |
for (var i=0; i<document.prefs.numnotify.value; i++) { |
for (var i=0; i<document.prefs.numnotify.value; i++) { |
var checkaddress = 0; |
var checkaddress = 0; |
Line 916 function modify_address(adnum) {
|
Line 917 function modify_address(adnum) {
|
} |
} |
|
|
$validatescript |
$validatescript |
|
|
|
// ]]> |
</script> |
</script> |
|; |
|; |
$r->print(<<ENDMSG); |
$r->print(<<ENDMSG); |
Line 1189 sub colorschanger {
|
Line 1192 sub colorschanger {
|
my $resetbuttondesc = &mt('Reset All Colors to Default'); |
my $resetbuttondesc = &mt('Reset All Colors to Default'); |
my $colorchooser=&Apache::lonhtmlcommon::color_picker(); |
my $colorchooser=&Apache::lonhtmlcommon::color_picker(); |
$r->print('<script type="text/javascript" language="JavaScript"> |
$r->print('<script type="text/javascript" language="JavaScript"> |
' . $colorchooser . ' |
// <![CDATA[' ."\n".' . $colorchooser . '."\n". ' |
|
// ]]> |
</script> |
</script> |
'); |
'); |
$r->print(<<ENDCOL); |
$r->print(<<ENDCOL); |
Line 1480 sub jscript_send {
|
Line 1484 sub jscript_send {
|
ENDJS |
ENDJS |
my $output = qq| |
my $output = qq| |
<script type="text/javascript" language="JavaScript"> |
<script type="text/javascript" language="JavaScript"> |
|
// <![CDATA[ |
function send() { |
function send() { |
$passwdcheck |
$passwdcheck |
uextkey=this.document.client.elements.ukey_cpass.value; |
uextkey=this.document.client.elements.ukey_cpass.value; |
Line 1519 $passwdcheck
|
Line 1523 $passwdcheck
|
this.document.pserver.submit(); |
this.document.pserver.submit(); |
} |
} |
|
|
|
// ]]> |
</script> |
</script> |
|; |
|; |
} |
} |
Line 2081 sub author_space_settings {
|
Line 2086 sub author_space_settings {
|
my ($showdomdefs,$js,$args,@items); |
my ($showdomdefs,$js,$args,@items); |
my $returnurl = &HTML::Entities::encode($env{'form.returnurl'},'"<>&\''); |
my $returnurl = &HTML::Entities::encode($env{'form.returnurl'},'"<>&\''); |
if (&expanded_authoring_settings()) { |
if (&expanded_authoring_settings()) { |
@items = ('nocodemirror','copyright','sourceavail'); |
@items = ('nocodemirror'); |
|
if (&daxe_permitted(\%author_roles)) { |
|
push(@items,'daxecollapse'); |
|
} |
|
push(@items,('copyright','sourceavail')); |
$showdomdefs = 1; |
$showdomdefs = 1; |
$js = &toggle_options_js(); |
$js = &toggle_options_js(); |
my $onload; |
my $onload; |
Line 2097 sub author_space_settings {
|
Line 2106 sub author_space_settings {
|
my %domdefs = &Apache::lonnet::get_domain_defaults($domain); |
my %domdefs = &Apache::lonnet::get_domain_defaults($domain); |
my %staticdefaults = ( |
my %staticdefaults = ( |
'nocodemirror' => '0', |
'nocodemirror' => '0', |
|
'daxecollapse' => '0', |
'copyright' => 'default', |
'copyright' => 'default', |
'sourceavail' => 'closed', |
'sourceavail' => 'closed', |
); |
); |
my %lt = &authoring_settings_text(); |
my %lt = &authoring_settings_text(); |
my %titles = &authoring_settings_titles(); |
my %titles = &authoring_settings_titles(); |
$r->print("<h3>$lt{'auss'}</h3><br /><hr />\n". |
$r->print("<h3>$lt{'auss'}</h3>". |
'<form name="prefs" action="/adm/preferences" method="post">'."\n". |
'<form name="prefs" action="/adm/preferences" method="post">'."\n". |
|
'<input type="submit" value="'.$lt{'save'}.'" /><br /><hr />'."\n". |
'<input type="hidden" name="returnurl" value="'.$returnurl.'" />'."\n". |
'<input type="hidden" name="returnurl" value="'.$returnurl.'" />'."\n". |
'<input type="hidden" name="action" value="change_authoring_settings" />'."\n"); |
'<input type="hidden" name="action" value="change_authoring_settings" />'."\n"); |
foreach my $item (@items) { |
foreach my $item (@items) { |
Line 2125 sub author_space_settings {
|
Line 2136 sub author_space_settings {
|
$userelem = &selectbox('userchoice_'.$item,$userenv{$item},'', |
$userelem = &selectbox('userchoice_'.$item,$userenv{$item},'', |
\&Apache::loncommon::source_copyrightdescription, |
\&Apache::loncommon::source_copyrightdescription, |
(&Apache::loncommon::source_copyrightids)); |
(&Apache::loncommon::source_copyrightids)); |
} elsif ($item eq 'nocodemirror') { |
} elsif (($item eq 'nocodemirror') || ($item eq 'daxecollapse')) { |
if ($domdef) { |
if ($domdef) { |
$domdefdisplay = $lt{'yes'}; |
if ($item eq 'daxecollapse') { |
|
$domdefdisplay = $lt{'coll'}; |
|
} else { |
|
$domdefdisplay = $lt{'yes'}; |
|
} |
} else { |
} else { |
$domdefdisplay = $lt{'no'}; |
if ($item eq 'daxecollapse') { |
|
$domdefdisplay = $lt{'expa'}; |
|
} else { |
|
$domdefdisplay = $lt{'no'}; |
|
} |
} |
} |
my %checked; |
my (%checked,%text); |
$checked{'no'} = ' checked="checked"'; |
$checked{'no'} = ' checked="checked"'; |
if ($userenv{$item} eq 'yes') { |
if ($userenv{$item} eq 'yes') { |
$checked{'yes'} = $checked{'no'}; |
$checked{'yes'} = $checked{'no'}; |
$checked{'no'} = ''; |
$checked{'no'} = ''; |
} |
} |
|
if ($item eq 'daxecollapse') { |
|
%text = ( |
|
yes => $lt{'coll'}, |
|
no => $lt{'expa'}, |
|
); |
|
} else { |
|
%text = ( |
|
yes => $lt{'yes'}, |
|
no => $lt{'no'}, |
|
); |
|
} |
$userelem = '<span class="LC_nobreak">'; |
$userelem = '<span class="LC_nobreak">'; |
foreach my $choice ('yes','no') { |
foreach my $choice ('yes','no') { |
$userelem .= '<label><input type="radio" name="userchoice_'.$item.'" value="'.$choice.'"'. |
$userelem .= '<label><input type="radio" name="userchoice_'.$item.'" value="'.$choice.'"'. |
$checked{$choice}.' />'.$lt{$choice}.'</label> '; |
$checked{$choice}.' />'.$text{$choice}.'</label> '; |
} |
} |
$userelem .= '</span>'; |
$userelem .= '</span>'; |
} |
} |
Line 2161 $userelem
|
Line 2191 $userelem
|
</fieldset><br /><hr /> |
</fieldset><br /><hr /> |
END |
END |
} |
} |
$r->print('<br />'. |
$r->print('<input type="submit" value="'.$lt{'save'}.'" />'. |
'<input type="submit" value="'.$lt{'save'}.'" />'. |
|
'</form>'."\n"); |
'</form>'."\n"); |
} else { |
} else { |
my $constchecked=''; |
my $constchecked=''; |
Line 2206 sub change_authoring_settings {
|
Line 2235 sub change_authoring_settings {
|
$message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]','<i>'.&mt('Deactivate CodeMirror in Authoring Space').'</i>','<tt>'.$status.'</tt>')); |
$message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]','<i>'.&mt('Deactivate CodeMirror in Authoring Space').'</i>','<tt>'.$status.'</tt>')); |
$message=&Apache::loncommon::confirmwrapper($message); |
$message=&Apache::loncommon::confirmwrapper($message); |
} else { |
} else { |
my @items = ('nocodemirror','copyright','sourceavail'); |
my @items = ('nocodemirror'); |
|
if (&daxe_permitted(\%author_roles)) { |
|
push(@items,'daxecollapse'); |
|
} |
|
push(@items,('copyright','sourceavail')); |
my %oldsettings = &Apache::lonnet::get('environment',\@items); |
my %oldsettings = &Apache::lonnet::get('environment',\@items); |
my %domdefs = &Apache::lonnet::get_domain_defaults($domain); |
my %domdefs = &Apache::lonnet::get_domain_defaults($domain); |
my %lt = &authoring_settings_text(); |
my %lt = &authoring_settings_text(); |
Line 2222 sub change_authoring_settings {
|
Line 2255 sub change_authoring_settings {
|
} elsif ($env{'form.'.$item} eq 'user') { |
} elsif ($env{'form.'.$item} eq 'user') { |
my $newval = $env{'form.userchoice_'.$item}; |
my $newval = $env{'form.userchoice_'.$item}; |
my @possibles; |
my @possibles; |
if ($item eq 'nocodemirror') { |
if (($item eq 'nocodemirror') || ($item eq 'daxecollapse')) { |
if ($newval =~ /^yes|no$/) { |
if ($newval =~ /^yes|no$/) { |
$newsettings{$item} = $newval; |
$newsettings{$item} = $newval; |
} |
} |
Line 2277 sub change_authoring_settings {
|
Line 2310 sub change_authoring_settings {
|
my $value = $changes{$item}; |
my $value = $changes{$item}; |
if ($item eq 'nocodemirror') { |
if ($item eq 'nocodemirror') { |
$value = $lt{$changes{$item}}; |
$value = $lt{$changes{$item}}; |
|
} elsif ($item eq 'daxecollapse') { |
|
if ($value eq 'yes') { |
|
$value = $lt{'coll'}; |
|
} else { |
|
$value = $lt{'expa'}; |
|
} |
} elsif ($item eq 'copyright') { |
} elsif ($item eq 'copyright') { |
$value = &Apache::loncommon::copyrightdescription($changes{$item}); |
$value = &Apache::loncommon::copyrightdescription($changes{$item}); |
} elsif ($item eq 'sourceavail') { |
} elsif ($item eq 'sourceavail') { |
Line 2324 sub authoring_settings_text {
|
Line 2363 sub authoring_settings_text {
|
'save' => 'Save', |
'save' => 'Save', |
'yes' => 'Deactivated', |
'yes' => 'Deactivated', |
'no' => 'Activated', |
'no' => 'Activated', |
|
'expa' => 'Start Expanded', |
|
'coll' => 'Start Collapsed', |
); |
); |
} |
} |
|
|
sub authoring_settings_titles { |
sub authoring_settings_titles { |
return &Apache::lonlocal::texthash( |
return &Apache::lonlocal::texthash( |
'nocodemirror' => 'CodeMirror for EditXML editor', |
'nocodemirror' => 'CodeMirror for EditXML editor', |
|
'daxecollapse' => 'Daxe editor: collapsible standard LON-CAPA menus', |
'copyright' => 'Default Copyright/Distribution in new metadata file', |
'copyright' => 'Default Copyright/Distribution in new metadata file', |
'sourceavail' => 'Default Source Available in new metadata file', |
'sourceavail' => 'Default Source Available in new metadata file', |
); |
); |
Line 2347 sub expanded_authoring_settings {
|
Line 2389 sub expanded_authoring_settings {
|
return; |
return; |
} |
} |
|
|
|
sub daxe_permitted { |
|
my ($aurolesref) = @_; |
|
my $hasdaxe; |
|
if (ref($aurolesref) eq 'HASH') { |
|
my %editors; |
|
foreach my $key (keys(%{$aurolesref})) { |
|
if ($key =~ /^:$LONCAPA::match_domain:au$/) { |
|
if (exists($env{'environment.editors'})) { |
|
if (grep(/^daxe$/,split(/,/,$env{'environment.editors'}))) { |
|
$hasdaxe = 1; |
|
last; |
|
} |
|
} |
|
} else { |
|
my ($auname,$audom) = ($key =~ /^($LONCAPA::match_username):($LONCAPA::match_domain):(ca|aa)$/); |
|
if (exists($env{"environment.internal.editors./$audom/$auname"})) { |
|
if (grep(/^daxe$/,split(/,/,$env{"environment.internal.editors./$audom/$auname"}))) { |
|
$hasdaxe = 1; |
|
last; |
|
} |
|
} |
|
} |
|
} |
|
} |
|
return $hasdaxe; |
|
} |
|
|
sub lockednameschanger { |
sub lockednameschanger { |
my $r = shift; |
my $r = shift; |
my %userenv = &Apache::lonnet::get('environment',['lockedname']); |
my %userenv = &Apache::lonnet::get('environment',['lockedname']); |