diff options
author | Yorhel <git@yorhel.nl> | 2014-10-09 10:10:12 +0200 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2014-10-09 10:10:12 +0200 |
commit | 1b590ccab6e11202e069ebed1024569e33ea7173 (patch) | |
tree | 200c7e67e60925b632de9b226cd86a43a74c4484 /lib/VNDB/Handler/Users.pm | |
parent | 112c2d90436276d93a0b2dd61ccd92ffb25b0207 (diff) |
Handler::Users: Properly select current skin in user edit form
This used to work fine before the AIR skin was added, because Angelic
Serenade used to be the first in the list.
Diffstat (limited to 'lib/VNDB/Handler/Users.pm')
-rw-r--r-- | lib/VNDB/Handler/Users.pm | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/VNDB/Handler/Users.pm b/lib/VNDB/Handler/Users.pm index 680e50a0..271561af 100644 --- a/lib/VNDB/Handler/Users.pm +++ b/lib/VNDB/Handler/Users.pm @@ -373,12 +373,13 @@ sub edit { { post => 'usrpass2', required => 0, minlength => 4, maxlength => 64, template => 'asciiprint' }, { post => 'hide_list', required => 0, default => 0, enum => [0,1] }, { post => 'show_nsfw', required => 0, default => 0, enum => [0,1] }, - { post => 'skin', required => 0, default => '', enum => [ '', keys %{$self->{skins}} ] }, + { post => 'skin', required => 0, default => $self->{skin_default}, enum => [ keys %{$self->{skins}} ] }, { post => 'customcss', required => 0, maxlength => 2000, default => '' }, ); push @{$frm->{_err}}, 'passmatch' if ($frm->{usrpass} || $frm->{usrpass2}) && (!$frm->{usrpass} || !$frm->{usrpass2} || $frm->{usrpass} ne $frm->{usrpass2}); if(!$frm->{_err}) { + $frm->{skin} = '' if $frm->{skin} eq $self->{skin_default}; $self->dbUserPrefSet($uid, $_ => $frm->{$_}) for (qw|skin customcss show_nsfw hide_list |); my %o; $o{username} = $frm->{usrname} if $frm->{usrname}; @@ -402,6 +403,7 @@ sub edit { $frm->{perms} ||= [ grep $u->{perm} & $self->{permissions}{$_}, keys %{$self->{permissions}} ]; $frm->{$_} //= $u->{prefs}{$_} for(qw|skin customcss show_nsfw hide_list|); $frm->{ign_votes} = $u->{ign_votes} if !defined $frm->{ign_votes}; + $frm->{skin} ||= $self->{skin_default}; # create the page $self->htmlHeader(title => mt('_usere_title'), noindex => 1); @@ -435,7 +437,7 @@ sub edit { [ check => short => 'hide_list', name => mt '_usere_flist', "/u$uid/list", "/u$uid/votes", "/u$uid/wish" ], [ check => short => 'show_nsfw', name => mt '_usere_fnsfw' ], [ select => short => 'skin', name => mt('_usere_skin'), width => 300, options => [ - map [ $_ eq $self->{skin_default} ? '' : $_, $self->{skins}{$_}[0].($self->debug?" [$_]":'') ], sort { $self->{skins}{$a}[0] cmp $self->{skins}{$b}[0] } keys %{$self->{skins}} ] ], + map [ $_, $self->{skins}{$_}[0].($self->debug?" [$_]":'') ], sort { $self->{skins}{$a}[0] cmp $self->{skins}{$b}[0] } keys %{$self->{skins}} ] ], [ textarea => short => 'customcss', name => mt '_usere_css' ], ]); $self->htmlFooter; |