Author: jsuchome Date: Thu Sep 10 15:22:21 2009 New Revision: 58612 URL: http://svn.opensuse.org/viewcvs/yast?rev=58612&view=rev Log: new file YaPI/ADMINISTRATOR.pm for root's password and aliases Added: trunk/users/src/YaPI/ADMINISTRATOR.pm Modified: trunk/users/src/Makefile.am trunk/users/yast2-users.spec.in Modified: trunk/users/src/Makefile.am URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/Makefile.am?rev=58612&r1=58611&r2=58612&view=diff ============================================================================== --- trunk/users/src/Makefile.am (original) +++ trunk/users/src/Makefile.am Thu Sep 10 15:22:21 2009 @@ -58,6 +58,7 @@ YaPI_perldir = @moduledir@/YaPI YaPI_perl_DATA = \ + YaPI/ADMINISTRATOR.pm \ YaPI/USERS.pm Added: trunk/users/src/YaPI/ADMINISTRATOR.pm URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/YaPI/ADMINISTRATOR.pm?rev=58612&view=auto ============================================================================== --- trunk/users/src/YaPI/ADMINISTRATOR.pm (added) +++ trunk/users/src/YaPI/ADMINISTRATOR.pm Thu Sep 10 15:22:21 2009 @@ -0,0 +1,84 @@ +package YaPI::ADMINISTRATOR; + +use strict; +use YaST::YCP qw(:LOGGING); +use YaPI; + +textdomain ("users"); + +# ------------------- imported modules +YaST::YCP::Import ("MailAliases"); +YaST::YCP::Import ("Users"); +# ------------------------------------- + +our $VERSION = '1.0.0'; +our @CAPABILITIES = ('SLES11'); +our %TYPEINFO; + +=item * +C<$hash Read ();> + +Returns the information about system administrator (root). +Currently return hash contains the list of mail aliases. + +=cut + +BEGIN{$TYPEINFO{Read} = ["function", + [ "map", "string", "any" ]]; +} +sub Read { + + my $self = shift; + + my $root_mail = MailAliases->GetRootAlias (); + return {} if !defined $root_mail; + + my @root_aliases = (); + foreach my $alias (split (/,/, $root_mail)) { + $alias =~ s/[ \t]//g; + push @root_aliases, $alias; + } + + return { + "aliases" => \@root_aliases + } +} + +=item * +C<$string Write ($argument_hash);> + +write the system adminstrator data. Supported keys of the argument hash are: + + "aliases" => list of mail aliases + "password" => new password + +Returns error message on error. + +=cut + +BEGIN{$TYPEINFO{Write} = ["function", + "string", + [ "map", "string", "any" ]]; +} +sub Write { + + my $self = shift; + my $args = shift; + my $ret = ""; + + if ($args->{"aliases"} && ref ($args->{"aliases"}) eq "ARRAY") { + + my $root_mail = join (", ", @{$args->{"aliases"}}); + if (!MailAliases->SetRootAlias ($root_mail)) { + # error popup + $ret = __("An error occurred while setting forwarding for root's mail."); + return $ret; + } + } + if ($args->{"password"}) { + Users->SetRootPassword ($args->{"password"}); + Users->WriteRootPassword (); + } + return $ret; +} + Modified: trunk/users/yast2-users.spec.in URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/yast2-users.spec.in?rev=58612&r1=58611&r2=58612&view=diff ============================================================================== --- trunk/users/yast2-users.spec.in (original) +++ trunk/users/yast2-users.spec.in Thu Sep 10 15:22:21 2009 @@ -39,7 +39,7 @@ @desktopdir@/*.desktop @moduledir@/*.pm @moduledir@/UsersUI.y* -@moduledir@/YaPI/USERS.pm +@moduledir@/YaPI/*.pm @yncludedir@/users/* @schemadir@/autoyast/rnc/users.rnc #agents: -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org