diff options
author | Buchan Milne <buchan@mageia.org> | 2011-02-16 22:02:11 +0000 |
---|---|---|
committer | Buchan Milne <buchan@mageia.org> | 2011-02-16 22:02:11 +0000 |
commit | 231a224023466b6a42ee9eeb371966c23e407f2f (patch) | |
tree | ce5be6768b5d5a12c09d63c6419723aa9feb2f8b | |
parent | 7c7b5838cc0387a18891f2c00fe8a247a8f4e86f (diff) | |
parent | f31883ea438fc6ecabe3a1da24aecdced5e356e1 (diff) | |
download | identity-231a224023466b6a42ee9eeb371966c23e407f2f.tar identity-231a224023466b6a42ee9eeb371966c23e407f2f.tar.gz identity-231a224023466b6a42ee9eeb371966c23e407f2f.tar.bz2 identity-231a224023466b6a42ee9eeb371966c23e407f2f.tar.xz identity-231a224023466b6a42ee9eeb371966c23e407f2f.zip |
Merge branch 'master' into stable
Additional Differences During Subversion Conversion:
root/template/layout
-rw-r--r-- | CatDap.spec | 67 | ||||
-rw-r--r-- | catdap.yml | 9 | ||||
-rw-r--r-- | lib/CatDap/Controller/admin.pm | 28 | ||||
-rw-r--r-- | lib/CatDap/Controller/forgot_password.pm | 283 | ||||
-rw-r--r-- | lib/CatDap/Controller/register.pm | 4 | ||||
-rw-r--r-- | lib/CatDap/Controller/user.pm | 19 | ||||
-rw-r--r-- | lib/CatDap/I18N/af.po | 153 | ||||
-rw-r--r-- | lib/CatDap/I18N/de.po | 137 | ||||
-rw-r--r-- | lib/CatDap/I18N/fr.po | 75 | ||||
-rw-r--r-- | lib/CatDap/I18N/messages.pot | 58 | ||||
-rw-r--r-- | root/email/forgot_password.tt | 7 | ||||
-rw-r--r-- | root/forgot_password/check.tt | 4 | ||||
-rw-r--r-- | root/forgot_password/complete.tt | 6 | ||||
-rw-r--r-- | root/forgot_password/confirm.tt | 21 | ||||
-rw-r--r-- | root/forgot_password/index.tt | 17 | ||||
-rw-r--r-- | root/index.tt | 3 | ||||
-rw-r--r-- | root/template/footer | 4 | ||||
-rw-r--r-- | root/template/layout | 2 | ||||
-rw-r--r-- | root/user/add.tt | 4 | ||||
-rw-r--r-- | root/user/delete.tt | 4 |
20 files changed, 714 insertions, 191 deletions
diff --git a/CatDap.spec b/CatDap.spec new file mode 100644 index 0000000..032c805 --- /dev/null +++ b/CatDap.spec @@ -0,0 +1,67 @@ +%define upstream_name CatDap +%define upstream_version 0.0.1-r200 + +Name: perl-%{upstream_name} +Version: %perl_convert_version %{upstream_version} +Release: %mkrel 1 +Summary: Web Based LDAP Administration Program +License: GPL+ or Artistic +Group: System/Configuration/Other +Url: http://www.mageia.org/wiki/doku.php?id=web:identity +Source0: %{upstream_name}-%{upstream_version}.tar.bz2 +BuildRequires: perl(Module::Install) +BuildRequires: perl(Module::Install::Catalyst) +BuildRequires: perl(Catalyst::Plugin::ConfigLoader) +BuildRequires: perl(Catalyst::Plugin::Static::Simple) +BuildRequires: perl(Catalyst::Plugin::I18N) +BuildRequires: perl(Catalyst::Plugin::Unicode::Encoding) +BuildRequires: perl(Catalyst::Plugin::Authentication) +BuildRequires: perl(Catalyst::Plugin::Authentication::Store::LDAP) +BuildRequires: perl(Catalyst::Plugin::Authorization::Roles) +BuildRequires: perl(Catalyst::Plugin::Captcha) +BuildRequires: perl(Catalyst::Plugin::Session::Store::File) +BuildRequires: perl(Catalyst::Plugin::Session::State::Cookie) +BuildRequires: perl(Catalyst::Action::RenderView) +BuildRequires: perl(Catalyst::View::TT) +BuildRequires: perl(Catalyst::View::Email) +BuildRequires: perl(Catalyst::Model::LDAP::FromAuthentication) +BuildRequires: perl(Crypt::CBC) +BuildRequires: perl(Email::Valid) +BuildRequires: perl(Data::UUID) +BuildRequires: perl(Config::General) +BuildArch: noarch +BuildRoot: %{_tmppath}/%{name}-%{version} + +%description +CatDap is a combination of system-administrator and end-user web +interface, designed to handle LDAP based setups. +It fetches the schema to handle any kind of case, but is made to work +with groups to give various access. + +%prep +%setup -q -n %{upstream_name}-%{upstream_version} + +%build +%{__perl} Makefile.PL INSTALLDIRS=vendor +%make + +%check +#make test + +%install +rm -rf %buildroot +%makeinstall_std + +%clean +rm -rf %buildroot + +%files +%defattr(-,root,root) +%doc Changes +%doc README +%doc catdap.yml +%{_mandir}/man1/* +%{_mandir}/man3/* +%{perl_vendorlib}/CatDap.pm +%{perl_vendorlib}/CatDap +%{_bindir}/catdap_*.pl @@ -35,6 +35,13 @@ register: login_blacklist: - apache +forgot_password: + secret: + path: '/tmp/' + prefix: 'catdap-forgot_password-' + timeout: 259200 + allow_filter: '(!(objectClass=posixAccount))' + authentication: default_realm: ldap realms: @@ -55,6 +62,7 @@ authentication: user_filter: '(&(objectClass=inetOrgPerson)(uid=%s))' user_scope: 'one' user_field: 'uid' + email_filter: '(&(objectClass=inetOrgPerson)(|(mail=%s)(mailAlternateAddress=%s)))' use_roles: 1 role_basedn: 'dc=mageia,dc=org' role_scope: 'sub' @@ -79,6 +87,7 @@ Controller::User: - secretary - mailForwardingAddress - sshPublicKey + - preferredLanguage # Currently not used, we only respect editable_attrs uneditable_attrs: diff --git a/lib/CatDap/Controller/admin.pm b/lib/CatDap/Controller/admin.pm index 914b2d0..7fd5539 100644 --- a/lib/CatDap/Controller/admin.pm +++ b/lib/CatDap/Controller/admin.pm @@ -143,7 +143,15 @@ sub account : Local { my $mesg = $c->model('user') ->search("(&(objectClass=inetOrgPerson)($attribute=$value))"); - my @entries = $mesg->entries; + my @orig_entries = $mesg->entries; + my @entries; + foreach my $entry (@orig_entries) { + my %new_entry; + foreach my $attr ($entry->attributes) { + $new_entry{$attr} = Encode::decode_utf8($entry->get_value($attr)); + } + push @entries, \%new_entry; + } push @errors, $mesg->error if $mesg->code; $c->stash( entries => \@entries ); $c->stash( errors => \@errors ); @@ -204,7 +212,16 @@ sub account_promote : Local { my $mesg = $c->model('user') ->search("(&(objectClass=inetOrgPerson)(!(objectClass=posixAccount)))"); - my @entries = $mesg->entries; + my @orig_entries = $mesg->entries; + my @entries; + foreach my $entry (@orig_entries) { + my %new_entry; + foreach my $attr($entry->attributes) { + $new_entry{$attr} = Encode::decode_utf8($entry->get_value($attr)); + } + push @entries, \%new_entry; + } + $c->stash( entries => \@entries ); push @errors, $mesg->error if $mesg->code; $mesg = $c->model('user')->search("(objectClass=posixGroup)"); @@ -295,6 +312,7 @@ sub account_modify : Local { if grep /$attr/, @{ ${ $c->config }{'Controller::User'}{'skip_attrs'} }; my @vals = $entry->get_value($attr); + foreach (@vals) { $_ = Encode::decode_utf8( $_ ); } $attrdef = $schema->attribute($attr) or die("getting schema failed: $!"); my %valhash = ( @@ -554,7 +572,7 @@ sub group : Local { my $attribute = $c->req->param('attribute'); $attribute =~ s/[^\w\d]//g; my $value = $c->req->param('value'); - $value =~ s/[^\w\d\*]//g; + $value =~ s/[^\w\d\* ]//g; my $mesg = $c->model('user') ->search("(&(objectclass=posixGroup)($attribute=$value))"); @@ -574,9 +592,9 @@ sub group_modify : Local { $c->stash( subpages => gensubpages('account') ); my @errors; $c->detach('/admin/group') if $group eq ''; - if ( $group !~ /^[\w\d]*$/ ) { + if ( $group !~ /^[\w\d ]*$/ ) { push @errors, "Group contains illegal characters"; - $c->detach('admin/group'); + $c->detach('/admin/group'); } my $mesg = $c->model('user')->search("(&(objectClass=posixGroup)(cn=$group))"); diff --git a/lib/CatDap/Controller/forgot_password.pm b/lib/CatDap/Controller/forgot_password.pm new file mode 100644 index 0000000..92792b5 --- /dev/null +++ b/lib/CatDap/Controller/forgot_password.pm @@ -0,0 +1,283 @@ +package CatDap::Controller::forgot_password; +use Moose; +use namespace::autoclean; +use Email::Valid; +use Data::UUID; + +BEGIN {extends 'Catalyst::Controller'; } + +=head1 NAME + +CatDap::Controller::forgot_password - Catalyst Controller + +=head1 DESCRIPTION + +Catalyst Controller. + +=head1 METHODS + +=cut + + +=head2 index + +=cut + +sub index :Path :Args(0) : Form { + my ( $self, $c ) = @_; + + if (defined $c->user) { + # if we're logged in, we haven't forgotten the password + $c->log->debug('Redirecting to /user'); + $c->res->redirect('/user'); + } +} + +sub check : Local { + my ( $self, $c ) = @_; + + my %details = %{$c->request->params}; + my $username = lc($c->request->params->{uid}); + my @errors; + $c->stash(errors => []); + my $email = $c->request->params->{mail}; + if (! Email::Valid->address($email)) { + push @errors, $c->loc('Invalid email address'); + } + + if (@errors) { + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + + # check in LDAP now that we have validated username and email + my $emailfilter = $c->config->{'authentication'}{'realms'}{'ldap'}{'store'}{'email_filter'}; + $emailfilter =~ s/\%s/$email/g, + $c->log->debug("Searching for email $email with filter $emailfilter"); + my $mesg = $c->model('Proxy')->search($emailfilter); + + if ($mesg->code) { + $c->log->info(printf("Search failed: %s"),$mesg->error); + push @errors, $c->loc('Error while searching for account: ') . $mesg->error; + } + my @entries = $mesg->entries; + if (@entries != 1) { + push @errors,$c->loc( + 'This email address is not bound to an account' + ); + } + my $checkfilter = '(&' . $c->config->{'forgot_password'}{'allow_filter'} . + $emailfilter . ')'; + $c->log->info(sprintf("Checking if user passes allow_filter $checkfilter")); + $mesg = $c->model('Proxy')->search($checkfilter); + if ($mesg->code) { + $c->log->info(printf("Search failed: %s"),$mesg->error); + push @errors, $c->loc('Error while searching for account: ') . $mesg->error; + + } + my @checkentries = $mesg->entries; + if (@entries == 1 and @checkentries != 1) { + push @errors,$c->loc( + 'Privileged accounts may not recover passwords via this mechanism' + ); + } + + if (@errors) { + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + + my $secret = gen_secret($c, $email); + + $c->stash( + email => { + 'to' => $email, + 'from' => ${$c->config}{'emailfrom'}, + 'subject' => ${$c->config}{'apptitle'} . " - " . $c->loc('Forgotten password'), + 'template' => 'forgot_password.tt', + }, + url => $c->uri_for('/forgot_password/confirm') . "?secret=$secret", + cn => $entries[0]->cn, + ); + + $c->log->info("Sending forgot password mail to email address $email"); + $c->forward( $c->view('Email::Template') ); + if ( @{ $c->error } ) { + my $errors = join "\n",@{ $c->error }; + $c->log->info("Sending activation mail to $email failed: $errors"); + $c->response->body($c->loc('An error occured sending the email, please try again later. Errors [_1]', $errors)); + $c->error(0); # Reset the error condition if you need to + } + $c->stash(template => 'forgot_password/complete.tt'); +} + +sub confirm : Local { + my ($self, $c) = @_; + my $secret = $c->req->param('secret'); + my @errors; + + # show confirm page which can enter new password + if (defined $c->user) { + # if we're logged in, we haven't forgotten the password + $c->log->debug('Redirecting to /user'); + $c->res->redirect('/user'); + } + + # find secret + my $email = find_secret($c, $secret); + if (!$email) { + push @errors, "Secret has expired, please try again."; + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + my $mesg = find_user_email($c, $email); + if ($mesg->code) { + push @errors, "Secret has expired, please try again."; + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + + # show template to enter a new password + $c->stash(secret => $secret, template => 'forgot_password/confirm.tt'); +} + +sub change_password : Local { + my ($self, $c) = @_; + my @errors = (); + my $secret = $c->req->param('secret'); + my $newpass; + + # find secret + my $email = find_secret($c, $secret); + if (!$email) { + push @errors, "Secret has expired, please try again."; + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + my $mesg = find_user_email($c, $email); + if ( $mesg->code) { + push @errors, "Secret has expired, please try again."; + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/index.tt'); + return; + } + my $entry = $mesg->entry; + + # check if both passwords are equal and are confirm the validation norms + if ($c->req->param('newpassword1') eq $c->req->param('newpassword2')) { + $newpass = $c->req->param('newpassword1'); + } else { + push @errors, "New passwords do not match"; + } + # if error show confirm page again to retry + if (@errors) { + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/confirm.tt'); + return; + } + + # change password + my $pp = Net::LDAP::Control::PasswordPolicy->new; + $mesg = $c->model('Proxy')->set_password( + user => $entry->dn, + newpasswd => $newpass, + control => [ $pp ], + ); + if ($mesg->code) { + my $perror = $mesg->error; + push @errors, "Password change failed: $perror"; + } + + # if error show confirm page again to retry + if (@errors) { + $c->stash(errors => \@errors); + $c->stash(template => 'forgot_password/confirm.tt'); + return; + } + + # TODO: log in by setting the $c->user + + # remove the stored secret + remove_secret($c, $secret); + + # redirect to / + $c->log->debug('Redirecting to /'); + $c->res->redirect('/'); +} + +sub gen_secret { + my ($c, $email) = @_; + my $ug = new Data::UUID; + # generate a unique secret + my $secret = $ug->create_str(); + my $filename = $c->config->{'forgot_password'}{'secret'}{'path'} .'/'. $c->config->{'forgot_password'}{'secret'}{'prefix'} . $secret; + # store secret with email + open FILE, ">$filename"; + print FILE $email; + close FILE; + return $secret; +} + +sub find_secret { + my ($c, $secret) = @_; + my $email; + my $filename = $c->config->{'forgot_password'}{'secret'}{'path'} .'/'. $c->config->{'forgot_password'}{'secret'}{'prefix'} . $secret; + my $timeout = 259200; # 3days in seconds + if ($c->config->{'forgot_password'}{'secret'}{'timeout'}) { + $timeout = $c->config->{'forgot_password'}{'secret'}{'timeout'}; + } + + # find secret + if (!$secret || !open(FILE, "<$filename")) { + # if secret is wrong, timeout expired? + return ''; + } + read(FILE, $email, 255); + close FILE; + + # check the time, and see if it's longer than timeout + my @s = stat($filename); + if (time() > $s[9] + $timeout) { + # expired + return ''; + } + + return $email; +} + +sub remove_secret { + my ($c, $secret) = @_; + my $filename = $c->config->{'forgot_password'}{'secret'}{'path'} .'/'. $c->config->{'forgot_password'}{'secret'}{'prefix'} . $secret; + unlink $filename; +} + +sub find_user_email { + my ($c, $email) = @_; + + # find user by email; + my $emailfilter = $c->config->{'authentication'}{'realms'}{'ldap'}{'store'}{'email_filter'}; + $emailfilter =~ s/\%s/$email/g, + $c->log->debug("Searching for email $email with filter $emailfilter"); + return $c->model('Proxy')->search($emailfilter); +} + + +=head1 AUTHOR + +Buchan Milne + +=head1 LICENSE + +This library is free software. You can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +__PACKAGE__->meta->make_immutable; + +1; diff --git a/lib/CatDap/Controller/register.pm b/lib/CatDap/Controller/register.pm index a488181..d52971e 100644 --- a/lib/CatDap/Controller/register.pm +++ b/lib/CatDap/Controller/register.pm @@ -65,12 +65,12 @@ sub check : Local { push @errors, $c->loc('Username is not authorized to be used'); } - if ($c->request->params->{gn} !~ /^\p{IsAlnum}+$/) { + if ($c->request->params->{gn} !~ /^[\p{IsAlnum} ]+$/) { push @errors, $c->loc( 'The first name supplied contains illegal characters' ); } - if ($c->request->params->{sn} !~ /^\p{IsAlnum}+$/) { + if ($c->request->params->{sn} !~ /^[\p{IsAlnum} ]+$/) { push @errors, $c->loc( 'The surname supplied contains illegal characters' ); diff --git a/lib/CatDap/Controller/user.pm b/lib/CatDap/Controller/user.pm index b3edb32..f2171eb 100644 --- a/lib/CatDap/Controller/user.pm +++ b/lib/CatDap/Controller/user.pm @@ -202,6 +202,7 @@ sub index :Path :Args(0) { next if ($attr eq "objectClass"); next if grep /$attr/,@{${$c->config}{'Controller::User'}{'skip_attrs'}}; my @vals = $entry->get_value($attr); + foreach (@vals) { $_ = Encode::decode_utf8( $_ ); } $attrdef = $schema->attribute($attr) or die ("getting schema failed: $!"); my %valhash = ( name => $attr, @@ -222,6 +223,7 @@ sub index :Path :Args(0) { grep /$attrname/,@attributes or grep /$attrname/,@{${$c->config}{'Controller::User'}{'uneditable_attrs'}} or grep /$attrname/,@{${$c->config}{'Controller::User'}{'skip_attrs'}} or + grep /$attrname/,@{${$c->config}{'Controller::User'}{'editable_attrs'}} and push @may, $attrname; } } @@ -246,7 +248,7 @@ sub add : Local { my $entry = $mesg->entry; $entry->add( $attr => $value); $c->log->info("Adding $attr = $value to user $user"); - $entry->update; + $mesg = $entry->update; push @{${$c->stash}{'errors'}},$mesg->error if $mesg->code; $c->log->info($mesg->error); $c->res->redirect('/user'); @@ -257,16 +259,19 @@ sub delete : Local : Args(2) { my ($mesg,$entry,$user,$userfilter); $user = $c->user->username; $userfilter = $c->user->store->user_filter; - $userfilter =~ s/%s/$c->user->username/g; - $c->log->debug("Searching for user $user"); + $userfilter =~ s/%s/$user/g; + $c->log->debug("Searching for user $user with filter $userfilter"); $mesg = $c->model('User')->search($userfilter); + push @{${$c->stash}{'errors'}},$mesg->error if $mesg->code; + $c->log->info($mesg->error) if $mesg->code; $entry = $mesg->entry; - $c->log->info("Deleting $attrname = $attrvalue from user $user"); + $c->log->info("Deleting $attrname: $attrvalue from dn " . $entry->dn); $entry->delete($attrname => $attrvalue); - $entry->update; + $mesg = $entry->update; push @{${$c->stash}{'errors'}},$mesg->error if $mesg->code; - $c->log->info($mesg->error); - $c->res->redirect('/user'); + $c->log->info("Result of update: " . $mesg->error . "," . $mesg->code) if $mesg->code; + $c->res->redirect('/user') unless $mesg->code; + $c->stash({ attrname => $attrname, attrvalue => $attrvalue}); } sub password : Local { diff --git a/lib/CatDap/I18N/af.po b/lib/CatDap/I18N/af.po index 1a6cf5a..a9576de 100644 --- a/lib/CatDap/I18N/af.po +++ b/lib/CatDap/I18N/af.po @@ -3,7 +3,7 @@ msgid "Activation" msgstr "Aktivering" #: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 -#: root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:46 +#: root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:48 msgid "Add" msgstr "Voeg by" @@ -44,8 +44,7 @@ msgstr "" "was. Foute: %1" #. ($errors) -#: lib/CatDap/Controller/admin.pm:539 -#, fuzzy +#: lib/CatDap/Controller/admin.pm:548 msgid "" "An error occured sending the email, but your account was created. Please try " "the password recovery process if you entered the correct email address: %1" @@ -55,9 +54,10 @@ msgstr "" "was: %1" #. ($errors) -#: lib/CatDap/Controller/forgot_password.pm:105 +#: lib/CatDap/Controller/forgot_password.pm:110 msgid "An error occured sending the email, please try again later. Errors %1" msgstr "" +"Daar was 'n fout met die stuur van die epos, probeer weer later. Foute: %1" #: root/admin/account_addoc.tt:9 root/admin/account_modify.tt:8 #: root/admin/group_modify.tt:5 root/user/index.tt:4 @@ -72,7 +72,7 @@ msgstr "" msgid "Captcha" msgstr "" -#: root/user/firstlogin.tt:14 root/user/password.tt:19 +#: root/user/firstlogin.tt:14 root/user/password.tt:15 msgid "Change" msgstr "Verander" @@ -85,9 +85,8 @@ msgid "Check your mail for activation instructions." msgstr "Kyk jou epos vir aktiverings instruksies." #: root/forgot_password/complete.tt:5 -#, fuzzy msgid "Check your mail for password reset instructions." -msgstr "Kyk jou epos vir aktiverings instruksies." +msgstr "Kyk jou epos vir herwinnings instruksies." #: root/register/index.tt:24 msgid "Confirm Email address" @@ -115,27 +114,30 @@ msgstr "Wysig" #: root/admin/account.tt:33 root/admin/account.tt:8 #: root/admin/account_promote.tt:6 root/register/index.tt:20 msgid "Email" -msgstr "" +msgstr "Epos" -#: root/forgot_password/index.tt:11 root/register/index.tt:21 +#: root/forgot_password/index.tt:8 root/register/index.tt:21 msgid "Email address" msgstr "Epos adres" #: root/forgot_password/complete.tt:1 msgid "Email sent." -msgstr "" +msgstr "Epos is gestuur" #: root/forgot_password/confirm.tt:2 -#, fuzzy msgid "Enter new password." -msgstr "Verander wagwoord" +msgstr "Sleutel nuwe wagwoord in." #: root/register/index.tt:32 msgid "Enter text" -msgstr "" +msgstr "Sleutel teks in" + +#: lib/CatDap/Controller/forgot_password.pm:62 +#: lib/CatDap/Controller/forgot_password.pm:76 +msgid "Error while searching for account: " +msgstr "Fout terwyl die rekening gesoek is: " #: root/admin/account.tt:34 root/admin/account_promote.tt:7 -#, fuzzy msgid "First Name" msgstr "Voornaam" @@ -143,39 +145,35 @@ msgstr "Voornaam" msgid "First name" msgstr "Voornaam" -#: lib/CatDap/Controller/forgot_password.pm:94 -#, fuzzy -msgid "Forgot password" -msgstr "Huidige wagwoord" - -#: root/forgot_password/index.tt:5 +#: root/forgot_password/index.tt:2 msgid "Forgot your password?" -msgstr "" +msgstr "Jou wagwoord vergeet?" -#: root/index.tt:17 root/index.tt:18 -#, fuzzy +#: lib/CatDap/Controller/forgot_password.pm:98 +msgid "Forgotten password" +msgstr "Vergete wagwoord" + +#: root/index.tt:17 msgid "Forgotten password?" -msgstr "Huidige wagwoord" +msgstr "Wagwoord vergeet?" #: root/admin/account.tt:36 root/admin/account.tt:9 #: root/admin/account_promote.tt:9 msgid "Full Name" -msgstr "" +msgstr "Volle Naam" #: root/admin/group.tt:27 msgid "Group Name" -msgstr "" +msgstr "Groep Naam" #: root/admin/group.tt:9 -#, fuzzy msgid "Group name" -msgstr "Voornaam" +msgstr "Groep naam" #: root/admin/account_modify.tt:2 msgid "Groups" -msgstr "" +msgstr "Groepe" -#: lib/CatDap/Controller/forgot_password.pm:48 #: lib/CatDap/Controller/register.pm:52 msgid "Incorrect validation text, please try again" msgstr "Inkorrekte teks van die prentjie, probeer weer" @@ -191,7 +189,7 @@ msgstr "Ongeldige gebruikersnaam" #: lib/CatDap/Controller/register.pm:59 msgid "Invalid username, already used by system" -msgstr "" +msgstr "Ongeldige gebruikersnaam, in gebruik deur stelsel" #: root/template/header:10 root/user/fake.tt:3 msgid "Log out" @@ -202,34 +200,33 @@ msgid "Login" msgstr "Teken in" #: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 -#: root/user/password.tt:10 +#: root/user/password.tt:9 msgid "New Password" msgstr "Nuwe Wagwoord" -#: lib/CatDap/Controller/user.pm:296 +#: lib/CatDap/Controller/user.pm:295 msgid "New passwords dont match" msgstr "Nuwe wagwoorde verskil" #: root/forgot_password/complete.tt:4 -#, fuzzy msgid "Operation was successful." -msgstr "Registrasie was suksesvol." +msgstr "Operasie was suksesvol." #: root/index.tt:10 -msgid "Password" -msgstr "Wagwoord" +msgid "Password : " +msgstr "Wagwoord : " -#: lib/CatDap/Controller/user.pm:290 +#: lib/CatDap/Controller/user.pm:289 msgid "Password incorrect" msgstr "Wagwoord inkorrek" -#: lib/CatDap/Controller/admin.pm:542 +#: lib/CatDap/Controller/admin.pm:551 msgid "Password reset and email sent" msgstr "Wagwoord is herstel en epos gestuur" #: root/register/index.tt:12 msgid "Personal Information" -msgstr "" +msgstr "Persoonlike Inligting" #: root/email/admin/password.tt:5 msgid "Please click below to change your password" @@ -241,15 +238,20 @@ msgstr "" #: root/admin/account_promote.tt:25 msgid "Primary group" +msgstr "Primêre groep" + +#: lib/CatDap/Controller/forgot_password.pm:82 +msgid "Privileged accounts may not recover passwords via this mechanism" msgstr "" +"Rekening met hoër vooregte mag nie wagwoorde op hierdie manier herwin nie" #: root/admin/account_modify.tt:71 msgid "Promote" -msgstr "" +msgstr "Bevorder" #: root/admin/account_modify.tt:62 msgid "Promote user to posixAccount with primary group:" -msgstr "" +msgstr "Bevorder gebruiker na posixAccount met primêre groep:" #: root/index.tt:16 root/register/index.tt:3 root/register/index.tt:35 msgid "Register" @@ -264,40 +266,33 @@ msgid "Registration was successful." msgstr "Registrasie was suksesvol." #: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 -#: root/user/password.tt:15 +#: root/user/password.tt:12 msgid "Repeat New Password" msgstr "Herhaal Nuwe Wagwoord" -#: root/admin/account_modify.tt:1 -#, fuzzy +#: root/admin/account_modify.tt:1 root/forgot_password/index.tt:12 msgid "Reset password" -msgstr "Huidige wagwoord" +msgstr "Herstel wagwoord" #: root/admin/account.tt:22 msgid "Search" -msgstr "" +msgstr "Soek" #: root/admin/account.tt:4 root/admin/group.tt:5 msgid "Search by" -msgstr "" +msgstr "Soek met" #: root/admin/account_promote.tt:4 msgid "Select" -msgstr "" - -#: root/forgot_password/index.tt:18 -#, fuzzy -msgid "Send me my password" -msgstr "Verander wagwoord" +msgstr "Selekteer" #: root/forgot_password/confirm.tt:16 -#, fuzzy msgid "Set new password" -msgstr "Herhaal Nuwe Wagwoord" +msgstr "Stel nuwe wagwoord" #: root/register/check.tt:1 msgid "Success" -msgstr "" +msgstr "Sukses" #: root/admin/account.tt:10 root/admin/account.tt:35 #: root/admin/account_promote.tt:8 root/register/index.tt:16 @@ -312,37 +307,40 @@ msgstr "Die verskafte noemnaam sluit ongeldige karakters in" msgid "The surname supplied contains illegal characters" msgstr "Die verskafte van sluit ondeldige karakters in" -#: lib/CatDap/Controller/forgot_password.pm:66 +#: lib/CatDap/Controller/forgot_password.pm:67 msgid "This email address is not bound to an account" -msgstr "" +msgstr "Hierdie epos is nie verbonde aan 'n rekening nie" #: root/email/activation.tt:3 msgid "To activate your account, please follow the link below." msgstr "Om U rekening te aktiveer, volg asseblief die volgende skakel." #: root/email/forgot_password.tt:3 -#, fuzzy msgid "To reset your password, please follow the link below." -msgstr "Om U rekening te aktiveer, volg asseblief die volgende skakel." +msgstr "Om U wagwoord te herstel, volg asseblief die volgende skakel." #: root/admin/account_modify.tt:35 root/user/index.tt:29 msgid "Update" msgstr "Opdateer" #: root/admin/account.tt:32 root/admin/account.tt:7 -#: root/admin/account_promote.tt:5 root/index.tt:6 root/register/index.tt:7 +#: root/admin/account_promote.tt:5 root/register/index.tt:7 #: root/register/index.tt:8 msgid "Username" msgstr "Gebruikersnaam" +#: root/index.tt:6 +msgid "Username : " +msgstr "Gebruikersnaam : " + #: lib/CatDap/Controller/register.pm:65 msgid "Username is not authorized to be used" -msgstr "" +msgstr "Gebruikersnaam nie toegelaat om gebruik te word nie" #: root/admin/account_addoc.tt:10 root/admin/account_modify.tt:9 #: root/admin/group_modify.tt:6 root/user/index.tt:4 msgid "Value" -msgstr "" +msgstr "Waarde" #. (c.config.organisation) #: root/email/forgot_password.tt:2 @@ -350,6 +348,9 @@ msgid "" "Your %1 account has been requested to change the password. If you did not do " "this, or you do not want to change your password; you can just do nothing." msgstr "" +"Jou %1 rekening het gevra om die wagwoord te verander. As U dit nie self dit " +"gedoen het nie, of as U nie die wagwoord wil verander nie, kan U hierdie " +"boodskap ignoreer." #. (c.config.organisation) #: root/email/activation.tt:2 @@ -367,36 +368,42 @@ msgstr "Jou sessie het verstrek" #: root/admin/account.tt:15 root/admin/group.tt:15 msgid "contains" -msgstr "" +msgstr "sluit in" #: root/admin/group_modify.tt:14 -#, fuzzy msgid "delete" -msgstr "Vee uit" +msgstr "vee uit" #: root/admin/account.tt:17 root/admin/group.tt:17 msgid "greater than or equal to" -msgstr "" +msgstr "groter of gelyk aan" #: root/admin/account.tt:16 root/admin/group.tt:16 msgid "is exactly" -msgstr "" +msgstr "is presies" #: root/admin/account.tt:18 root/admin/group.tt:18 msgid "less than" -msgstr "" +msgstr "minder as" #: root/admin/group.tt:10 msgid "member" -msgstr "" +msgstr "lid" -#: lib/CatDap/Controller/admin.pm:526 +#: lib/CatDap/Controller/admin.pm:535 msgid "password reset" msgstr "Wagwoord herstelling" #: root/admin/account_modify.tt:53 msgid "with value" -msgstr "" +msgstr "met waarde" + +#~ msgid "Forgot password" +#~ msgstr "Wagwoord vergeet" + +#, fuzzy +#~ msgid "Send me my password" +#~ msgstr "Verander wagwoord" #~ msgid "or" #~ msgstr "of" diff --git a/lib/CatDap/I18N/de.po b/lib/CatDap/I18N/de.po index 636b777..e84c06e 100644 --- a/lib/CatDap/I18N/de.po +++ b/lib/CatDap/I18N/de.po @@ -19,7 +19,8 @@ msgstr "" msgid "Activation" msgstr "Aktivierung" -#: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:46 +#: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 +#: root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:48 msgid "Add" msgstr "Hinzufügen" @@ -50,36 +51,49 @@ msgstr "Ein Zugang mit diesem Benutzernamen existiert bereits" #. ($errors) #: lib/CatDap/Controller/register.pm:145 -msgid "An error occured sending the email, but your account was created. Please try the password recovery process if you entered the correct email address. Errors %1" +msgid "" +"An error occured sending the email, but your account was created. Please try " +"the password recovery process if you entered the correct email address. " +"Errors %1" msgstr "" -"Ein Fehler beim Senden der Email ist aufgetreten, aber Ihr Zugang wurde eingerichtet. Bitte versuchen Sie, den Passwortwiederherstellungs-Prozess durchzuführen, " -"falls Sie die korrekte Email-Adresse angegeben haben. Fehler %1" +"Ein Fehler beim Senden der Email ist aufgetreten, aber Ihr Zugang wurde " +"eingerichtet. Bitte versuchen Sie, den Passwortwiederherstellungs-Prozess " +"durchzuführen, falls Sie die korrekte Email-Adresse angegeben haben. Fehler %" +"1" #. ($errors) -#: lib/CatDap/Controller/admin.pm:539 -msgid "An error occured sending the email, but your account was created. Please try the password recovery process if you entered the correct email address: %1" +#: lib/CatDap/Controller/admin.pm:548 +msgid "" +"An error occured sending the email, but your account was created. Please try " +"the password recovery process if you entered the correct email address: %1" msgstr "" -"Ein Fehler ist beim Senden der Email aufgetreten, aber Ihr Zugang wurde eingerichtet. Bitte versuchen Sie, den Passwortwiederherstellungs-Prozess durchzuführen, " -"falls Sie die richtige Email-Adresse angegeben haben: %1" +"Ein Fehler ist beim Senden der Email aufgetreten, aber Ihr Zugang wurde " +"eingerichtet. Bitte versuchen Sie, den Passwortwiederherstellungs-Prozess " +"durchzuführen, falls Sie die richtige Email-Adresse angegeben haben: %1" #. ($errors) -#: lib/CatDap/Controller/forgot_password.pm:105 +#: lib/CatDap/Controller/forgot_password.pm:110 msgid "An error occured sending the email, please try again later. Errors %1" -msgstr "Ein Fehler ist beim Versenden der Email aufgetreten, bitte versuchen Sie es später erneut. Fehler %1" +msgstr "" +"Ein Fehler ist beim Versenden der Email aufgetreten, bitte versuchen Sie es " +"später erneut. Fehler %1" -#: root/admin/account_addoc.tt:9 root/admin/account_modify.tt:8 root/admin/group_modify.tt:5 root/user/index.tt:4 +#: root/admin/account_addoc.tt:9 root/admin/account_modify.tt:8 +#: root/admin/group_modify.tt:5 root/user/index.tt:4 msgid "Attribute" msgstr "Attribut" #: lib/CatDap/Controller/register.pm:56 msgid "Cannot check /etc/passwd, please warn system administrators" -msgstr "Die Datei /etc/passwd kann nicht überprüft werden, bitte warnen Sie die System-Administratoren" +msgstr "" +"Die Datei /etc/passwd kann nicht überprüft werden, bitte warnen Sie die " +"System-Administratoren" #: root/register/index.tt:29 msgid "Captcha" msgstr "Captcha" -#: root/user/firstlogin.tt:14 root/user/password.tt:19 +#: root/user/firstlogin.tt:14 root/user/password.tt:15 msgid "Change" msgstr "Ändern" @@ -93,7 +107,8 @@ msgstr "Überprüfen Sie Ihre Emails auf Anweisungen zum Aktivieren." #: root/forgot_password/complete.tt:5 msgid "Check your mail for password reset instructions." -msgstr "Überprüfen Sie Ihre Emails auf Anweisungen zum Zurücksetzen Ihres Passwortes." +msgstr "" +"Überprüfen Sie Ihre Emails auf Anweisungen zum Zurücksetzen Ihres Passwortes." #: root/register/index.tt:24 msgid "Confirm Email address" @@ -105,7 +120,8 @@ msgstr "Aktuelles Passwort" #. (cn) #. (entry.cn) -#: root/email/activation.tt:1 root/email/admin/password.tt:1 root/email/forgot_password.tt:1 +#: root/email/activation.tt:1 root/email/admin/password.tt:1 +#: root/email/forgot_password.tt:1 msgid "Dear %1," msgstr "Sehr geehrter %1," @@ -117,11 +133,12 @@ msgstr "Löschen" msgid "Edit" msgstr "Ändern" -#: root/admin/account.tt:33 root/admin/account.tt:8 root/admin/account_promote.tt:6 root/register/index.tt:20 +#: root/admin/account.tt:33 root/admin/account.tt:8 +#: root/admin/account_promote.tt:6 root/register/index.tt:20 msgid "Email" msgstr "Email" -#: root/forgot_password/index.tt:11 root/register/index.tt:21 +#: root/forgot_password/index.tt:8 root/register/index.tt:21 msgid "Email address" msgstr "Email-Adresse" @@ -137,6 +154,11 @@ msgstr "Neues Passwort angeben." msgid "Enter text" msgstr "Text angeben" +#: lib/CatDap/Controller/forgot_password.pm:62 +#: lib/CatDap/Controller/forgot_password.pm:76 +msgid "Error while searching for account: " +msgstr "" + #: root/admin/account.tt:34 root/admin/account_promote.tt:7 msgid "First Name" msgstr "Vorname" @@ -145,19 +167,21 @@ msgstr "Vorname" msgid "First name" msgstr "Nachname" -#: lib/CatDap/Controller/forgot_password.pm:94 -msgid "Forgot password" -msgstr "Passwort vergessen" - -#: root/forgot_password/index.tt:5 +#: root/forgot_password/index.tt:2 msgid "Forgot your password?" msgstr "Haben Sie Ihr Passwort vergessen?" -#: root/index.tt:17 root/index.tt:18 +#: lib/CatDap/Controller/forgot_password.pm:98 +#, fuzzy +msgid "Forgotten password" +msgstr "Vergessenes Passwort?" + +#: root/index.tt:17 msgid "Forgotten password?" msgstr "Vergessenes Passwort?" -#: root/admin/account.tt:36 root/admin/account.tt:9 root/admin/account_promote.tt:9 +#: root/admin/account.tt:36 root/admin/account.tt:9 +#: root/admin/account_promote.tt:9 msgid "Full Name" msgstr "Vollständiger Name" @@ -173,11 +197,12 @@ msgstr "Gruppenname" msgid "Groups" msgstr "Gruppen" -#: lib/CatDap/Controller/forgot_password.pm:48 lib/CatDap/Controller/register.pm:52 +#: lib/CatDap/Controller/register.pm:52 msgid "Incorrect validation text, please try again" msgstr "Inkorrekter Überprüfungstext, bitte versuchen Sie es erneut" -#: lib/CatDap/Controller/forgot_password.pm:45 lib/CatDap/Controller/register.pm:46 +#: lib/CatDap/Controller/forgot_password.pm:45 +#: lib/CatDap/Controller/register.pm:46 msgid "Invalid email address" msgstr "Ungültige Email-Adresse" @@ -197,11 +222,12 @@ msgstr "Abmelden" msgid "Login" msgstr "Anmelden" -#: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 root/user/password.tt:10 +#: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 +#: root/user/password.tt:9 msgid "New Password" msgstr "Neues Passwort" -#: lib/CatDap/Controller/user.pm:296 +#: lib/CatDap/Controller/user.pm:295 msgid "New passwords dont match" msgstr "Die neuen Passwörter stimmen nicht überein" @@ -210,14 +236,15 @@ msgid "Operation was successful." msgstr "Die Operation war erfolgreich." #: root/index.tt:10 -msgid "Password" +#, fuzzy +msgid "Password : " msgstr "Passwort" -#: lib/CatDap/Controller/user.pm:290 +#: lib/CatDap/Controller/user.pm:289 msgid "Password incorrect" msgstr "Falsches Passwort" -#: lib/CatDap/Controller/admin.pm:542 +#: lib/CatDap/Controller/admin.pm:551 msgid "Password reset and email sent" msgstr "Passwort zurückgesetzt und Email versandt" @@ -237,6 +264,10 @@ msgstr "Bitte benutzen Sie die Menüs oben." msgid "Primary group" msgstr "Primäre Gruppe" +#: lib/CatDap/Controller/forgot_password.pm:82 +msgid "Privileged accounts may not recover passwords via this mechanism" +msgstr "" + #: root/admin/account_modify.tt:71 msgid "Promote" msgstr "" @@ -257,11 +288,12 @@ msgstr "Registrierung vollständig" msgid "Registration was successful." msgstr "Die Registrierung war erfolgreich" -#: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 root/user/password.tt:15 +#: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 +#: root/user/password.tt:12 msgid "Repeat New Password" msgstr "Neues Passwort wiederholen" -#: root/admin/account_modify.tt:1 +#: root/admin/account_modify.tt:1 root/forgot_password/index.tt:12 msgid "Reset password" msgstr "Passwort wiederherstellen" @@ -277,10 +309,6 @@ msgstr "Suchen nach" msgid "Select" msgstr "Auswählen" -#: root/forgot_password/index.tt:18 -msgid "Send me my password" -msgstr "Ein Passwort senden" - #: root/forgot_password/confirm.tt:16 msgid "Set new password" msgstr "Neues Passwort setzen" @@ -289,7 +317,8 @@ msgstr "Neues Passwort setzen" msgid "Success" msgstr "Erfolg" -#: root/admin/account.tt:10 root/admin/account.tt:35 root/admin/account_promote.tt:8 root/register/index.tt:16 +#: root/admin/account.tt:10 root/admin/account.tt:35 +#: root/admin/account_promote.tt:8 root/register/index.tt:16 msgid "Surname" msgstr "Nachname" @@ -301,7 +330,7 @@ msgstr "Der angegebene Vorname enthält ungültige Zeichen" msgid "The surname supplied contains illegal characters" msgstr "Der angegebene Nachname enthält ungültige Zeichen" -#: lib/CatDap/Controller/forgot_password.pm:66 +#: lib/CatDap/Controller/forgot_password.pm:67 msgid "This email address is not bound to an account" msgstr "Diese Email-Adresse ist nicht an einen Zugang gebunden" @@ -317,28 +346,41 @@ msgstr "Um Ihr Passwort zurückzusetzen, folgen Sie den Links unten." msgid "Update" msgstr "Aktualisieren" -#: root/admin/account.tt:32 root/admin/account.tt:7 root/admin/account_promote.tt:5 root/index.tt:6 root/register/index.tt:7 root/register/index.tt:8 +#: root/admin/account.tt:32 root/admin/account.tt:7 +#: root/admin/account_promote.tt:5 root/register/index.tt:7 +#: root/register/index.tt:8 msgid "Username" msgstr "Benutzername" +#: root/index.tt:6 +#, fuzzy +msgid "Username : " +msgstr "Benutzername" + #: lib/CatDap/Controller/register.pm:65 msgid "Username is not authorized to be used" msgstr "Der Benutzername darf nicht verwendet werden" -#: root/admin/account_addoc.tt:10 root/admin/account_modify.tt:9 root/admin/group_modify.tt:6 root/user/index.tt:4 +#: root/admin/account_addoc.tt:10 root/admin/account_modify.tt:9 +#: root/admin/group_modify.tt:6 root/user/index.tt:4 msgid "Value" msgstr "Wert" #. (c.config.organisation) #: root/email/forgot_password.tt:2 -msgid "Your %1 account has been requested to change the password. If you did not do this, or you do not want to change your password; you can just do nothing." +msgid "" +"Your %1 account has been requested to change the password. If you did not do " +"this, or you do not want to change your password; you can just do nothing." msgstr "" -"Für ihren %1-Zugang wurde angefordert, das Passwort zu ändern. Wenn Sie dies nicht getan haben oder Ihr Passwort nicht ändern wollen, können Sie einfach nichts tun." +"Für ihren %1-Zugang wurde angefordert, das Passwort zu ändern. Wenn Sie dies " +"nicht getan haben oder Ihr Passwort nicht ändern wollen, können Sie einfach " +"nichts tun." #. (c.config.organisation) #: root/email/activation.tt:2 msgid "Your %1 account has been successfully created, but requires activation." -msgstr "Ihr %1-Zugang wurde erfolgreich eingerichtet, benötigt aber noch Aktivierung." +msgstr "" +"Ihr %1-Zugang wurde erfolgreich eingerichtet, benötigt aber noch Aktivierung." #. (c.user.username) #: root/email/admin/password.tt:3 @@ -373,7 +415,7 @@ msgstr "weniger als" msgid "member" msgstr "Mitglied" -#: lib/CatDap/Controller/admin.pm:526 +#: lib/CatDap/Controller/admin.pm:535 msgid "password reset" msgstr "Passwort zurückgesetzt" @@ -381,3 +423,8 @@ msgstr "Passwort zurückgesetzt" msgid "with value" msgstr "mit dem Wert" +#~ msgid "Forgot password" +#~ msgstr "Passwort vergessen" + +#~ msgid "Send me my password" +#~ msgstr "Ein Passwort senden" diff --git a/lib/CatDap/I18N/fr.po b/lib/CatDap/I18N/fr.po index 85cb6e4..8c87e77 100644 --- a/lib/CatDap/I18N/fr.po +++ b/lib/CatDap/I18N/fr.po @@ -10,10 +10,10 @@ msgstr "" "PO-Revision-Date: 2010-11-04 21:09+0100\n" "Last-Translator: Michael Scherer <misc@zarb.org>\n" "Language-Team: LANGUAGE <mageia-i18n@mageia.org>\n" -"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: \n" "X-Poedit-Language: French\n" "X-Poedit-Country: FRANCE\n" "X-Poedit-SourceCharset: utf-8\n" @@ -23,7 +23,7 @@ msgid "Activation" msgstr "Activation" #: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 -#: root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:46 +#: root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:48 msgid "Add" msgstr "Ajouter" @@ -64,7 +64,7 @@ msgstr "" "votre adresse est correcte. Erreurs %1" #. ($errors) -#: lib/CatDap/Controller/admin.pm:539 +#: lib/CatDap/Controller/admin.pm:548 #, fuzzy msgid "" "An error occured sending the email, but your account was created. Please try " @@ -75,7 +75,7 @@ msgstr "" "votre adresse est correcte : %1" #. ($errors) -#: lib/CatDap/Controller/forgot_password.pm:105 +#: lib/CatDap/Controller/forgot_password.pm:110 msgid "An error occured sending the email, please try again later. Errors %1" msgstr "" @@ -92,7 +92,7 @@ msgstr "" msgid "Captcha" msgstr "" -#: root/user/firstlogin.tt:14 root/user/password.tt:19 +#: root/user/firstlogin.tt:14 root/user/password.tt:15 msgid "Change" msgstr "Changer" @@ -137,7 +137,7 @@ msgstr "Éditer" msgid "Email" msgstr "" -#: root/forgot_password/index.tt:11 root/register/index.tt:21 +#: root/forgot_password/index.tt:8 root/register/index.tt:21 msgid "Email address" msgstr "Adresse email" @@ -154,6 +154,11 @@ msgstr "Changer le mot de passe" msgid "Enter text" msgstr "" +#: lib/CatDap/Controller/forgot_password.pm:62 +#: lib/CatDap/Controller/forgot_password.pm:76 +msgid "Error while searching for account: " +msgstr "" + #: root/admin/account.tt:34 root/admin/account_promote.tt:7 #, fuzzy msgid "First Name" @@ -163,16 +168,16 @@ msgstr "Prénom" msgid "First name" msgstr "Prénom" -#: lib/CatDap/Controller/forgot_password.pm:94 -#, fuzzy -msgid "Forgot password" -msgstr "Mot de passe actuel" - -#: root/forgot_password/index.tt:5 +#: root/forgot_password/index.tt:2 msgid "Forgot your password?" msgstr "" -#: root/index.tt:17 root/index.tt:18 +#: lib/CatDap/Controller/forgot_password.pm:98 +#, fuzzy +msgid "Forgotten password" +msgstr "Mot de passe actuel" + +#: root/index.tt:17 #, fuzzy msgid "Forgotten password?" msgstr "Mot de passe actuel" @@ -195,7 +200,6 @@ msgstr "Prénom" msgid "Groups" msgstr "" -#: lib/CatDap/Controller/forgot_password.pm:48 #: lib/CatDap/Controller/register.pm:52 msgid "Incorrect validation text, please try again" msgstr "Texte de validation incorrect, merci de tester à nouveau" @@ -222,11 +226,11 @@ msgid "Login" msgstr "Login" #: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 -#: root/user/password.tt:10 +#: root/user/password.tt:9 msgid "New Password" msgstr "Nouveau mot de passe" -#: lib/CatDap/Controller/user.pm:296 +#: lib/CatDap/Controller/user.pm:295 msgid "New passwords dont match" msgstr "Les mot de passes ne correspondent pas" @@ -236,14 +240,15 @@ msgid "Operation was successful." msgstr "L'enregistrement a réussi" #: root/index.tt:10 -msgid "Password" +#, fuzzy +msgid "Password : " msgstr "Mot de passe" -#: lib/CatDap/Controller/user.pm:290 +#: lib/CatDap/Controller/user.pm:289 msgid "Password incorrect" msgstr "Mot de passe incorrect" -#: lib/CatDap/Controller/admin.pm:542 +#: lib/CatDap/Controller/admin.pm:551 msgid "Password reset and email sent" msgstr "Mot de passe réinitialiser, email envoyé" @@ -263,6 +268,10 @@ msgstr "" msgid "Primary group" msgstr "" +#: lib/CatDap/Controller/forgot_password.pm:82 +msgid "Privileged accounts may not recover passwords via this mechanism" +msgstr "" + #: root/admin/account_modify.tt:71 msgid "Promote" msgstr "" @@ -284,11 +293,11 @@ msgid "Registration was successful." msgstr "L'enregistrement a réussi" #: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 -#: root/user/password.tt:15 +#: root/user/password.tt:12 msgid "Repeat New Password" msgstr "Répéter le nouveau de passe" -#: root/admin/account_modify.tt:1 +#: root/admin/account_modify.tt:1 root/forgot_password/index.tt:12 #, fuzzy msgid "Reset password" msgstr "Mot de passe actuel" @@ -305,11 +314,6 @@ msgstr "" msgid "Select" msgstr "" -#: root/forgot_password/index.tt:18 -#, fuzzy -msgid "Send me my password" -msgstr "Changer le mot de passe" - #: root/forgot_password/confirm.tt:16 #, fuzzy msgid "Set new password" @@ -332,7 +336,7 @@ msgstr "Le prénom proposé contient des caractères interdits" msgid "The surname supplied contains illegal characters" msgstr "Le nom proposé contient des caractères interdits" -#: lib/CatDap/Controller/forgot_password.pm:66 +#: lib/CatDap/Controller/forgot_password.pm:67 msgid "This email address is not bound to an account" msgstr "" @@ -350,11 +354,16 @@ msgid "Update" msgstr "Mettre à jour" #: root/admin/account.tt:32 root/admin/account.tt:7 -#: root/admin/account_promote.tt:5 root/index.tt:6 root/register/index.tt:7 +#: root/admin/account_promote.tt:5 root/register/index.tt:7 #: root/register/index.tt:8 msgid "Username" msgstr "Nom d'utilisateur" +#: root/index.tt:6 +#, fuzzy +msgid "Username : " +msgstr "Nom d'utilisateur" + #: lib/CatDap/Controller/register.pm:65 msgid "Username is not authorized to be used" msgstr "" @@ -410,7 +419,7 @@ msgstr "" msgid "member" msgstr "" -#: lib/CatDap/Controller/admin.pm:526 +#: lib/CatDap/Controller/admin.pm:535 msgid "password reset" msgstr "réinitialisation du mot de passe" @@ -418,6 +427,14 @@ msgstr "réinitialisation du mot de passe" msgid "with value" msgstr "" +#, fuzzy +#~ msgid "Forgot password" +#~ msgstr "Mot de passe actuel" + +#, fuzzy +#~ msgid "Send me my password" +#~ msgstr "Changer le mot de passe" + #~ msgid "or" #~ msgstr "ou" diff --git a/lib/CatDap/I18N/messages.pot b/lib/CatDap/I18N/messages.pot index 295da82..b972de9 100644 --- a/lib/CatDap/I18N/messages.pot +++ b/lib/CatDap/I18N/messages.pot @@ -19,7 +19,7 @@ msgstr "" msgid "Activation" msgstr "" -#: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:46 +#: root/admin/account_addoc.tt:28 root/admin/account_modify.tt:24 root/admin/group_modify.tt:18 root/user/index.tt:19 root/user/index.tt:48 msgid "Add" msgstr "" @@ -54,12 +54,12 @@ msgid "An error occured sending the email, but your account was created. Please msgstr "" #. ($errors) -#: lib/CatDap/Controller/admin.pm:539 +#: lib/CatDap/Controller/admin.pm:548 msgid "An error occured sending the email, but your account was created. Please try the password recovery process if you entered the correct email address: %1" msgstr "" #. ($errors) -#: lib/CatDap/Controller/forgot_password.pm:105 +#: lib/CatDap/Controller/forgot_password.pm:110 msgid "An error occured sending the email, please try again later. Errors %1" msgstr "" @@ -75,7 +75,7 @@ msgstr "" msgid "Captcha" msgstr "" -#: root/user/firstlogin.tt:14 root/user/password.tt:19 +#: root/user/firstlogin.tt:14 root/user/password.tt:15 msgid "Change" msgstr "" @@ -117,7 +117,7 @@ msgstr "" msgid "Email" msgstr "" -#: root/forgot_password/index.tt:11 root/register/index.tt:21 +#: root/forgot_password/index.tt:8 root/register/index.tt:21 msgid "Email address" msgstr "" @@ -133,6 +133,10 @@ msgstr "" msgid "Enter text" msgstr "" +#: lib/CatDap/Controller/forgot_password.pm:62 lib/CatDap/Controller/forgot_password.pm:76 +msgid "Error while searching for account: " +msgstr "" + #: root/admin/account.tt:34 root/admin/account_promote.tt:7 msgid "First Name" msgstr "" @@ -141,15 +145,15 @@ msgstr "" msgid "First name" msgstr "" -#: lib/CatDap/Controller/forgot_password.pm:94 -msgid "Forgot password" +#: root/forgot_password/index.tt:2 +msgid "Forgot your password?" msgstr "" -#: root/forgot_password/index.tt:5 -msgid "Forgot your password?" +#: lib/CatDap/Controller/forgot_password.pm:98 +msgid "Forgotten password" msgstr "" -#: root/index.tt:17 root/index.tt:18 +#: root/index.tt:17 msgid "Forgotten password?" msgstr "" @@ -169,7 +173,7 @@ msgstr "" msgid "Groups" msgstr "" -#: lib/CatDap/Controller/forgot_password.pm:48 lib/CatDap/Controller/register.pm:52 +#: lib/CatDap/Controller/register.pm:52 msgid "Incorrect validation text, please try again" msgstr "" @@ -193,11 +197,11 @@ msgstr "" msgid "Login" msgstr "" -#: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 root/user/password.tt:10 +#: root/forgot_password/confirm.tt:8 root/user/firstlogin.tt:5 root/user/password.tt:9 msgid "New Password" msgstr "" -#: lib/CatDap/Controller/user.pm:296 +#: lib/CatDap/Controller/user.pm:295 msgid "New passwords dont match" msgstr "" @@ -206,14 +210,14 @@ msgid "Operation was successful." msgstr "" #: root/index.tt:10 -msgid "Password" +msgid "Password : " msgstr "" -#: lib/CatDap/Controller/user.pm:290 +#: lib/CatDap/Controller/user.pm:289 msgid "Password incorrect" msgstr "" -#: lib/CatDap/Controller/admin.pm:542 +#: lib/CatDap/Controller/admin.pm:551 msgid "Password reset and email sent" msgstr "" @@ -233,6 +237,10 @@ msgstr "" msgid "Primary group" msgstr "" +#: lib/CatDap/Controller/forgot_password.pm:82 +msgid "Privileged accounts may not recover passwords via this mechanism" +msgstr "" + #: root/admin/account_modify.tt:71 msgid "Promote" msgstr "" @@ -253,11 +261,11 @@ msgstr "" msgid "Registration was successful." msgstr "" -#: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 root/user/password.tt:15 +#: root/forgot_password/confirm.tt:11 root/user/firstlogin.tt:10 root/user/password.tt:12 msgid "Repeat New Password" msgstr "" -#: root/admin/account_modify.tt:1 +#: root/admin/account_modify.tt:1 root/forgot_password/index.tt:12 msgid "Reset password" msgstr "" @@ -273,10 +281,6 @@ msgstr "" msgid "Select" msgstr "" -#: root/forgot_password/index.tt:18 -msgid "Send me my password" -msgstr "" - #: root/forgot_password/confirm.tt:16 msgid "Set new password" msgstr "" @@ -297,7 +301,7 @@ msgstr "" msgid "The surname supplied contains illegal characters" msgstr "" -#: lib/CatDap/Controller/forgot_password.pm:66 +#: lib/CatDap/Controller/forgot_password.pm:67 msgid "This email address is not bound to an account" msgstr "" @@ -313,10 +317,14 @@ msgstr "" msgid "Update" msgstr "" -#: root/admin/account.tt:32 root/admin/account.tt:7 root/admin/account_promote.tt:5 root/index.tt:6 root/register/index.tt:7 root/register/index.tt:8 +#: root/admin/account.tt:32 root/admin/account.tt:7 root/admin/account_promote.tt:5 root/register/index.tt:7 root/register/index.tt:8 msgid "Username" msgstr "" +#: root/index.tt:6 +msgid "Username : " +msgstr "" + #: lib/CatDap/Controller/register.pm:65 msgid "Username is not authorized to be used" msgstr "" @@ -368,7 +376,7 @@ msgstr "" msgid "member" msgstr "" -#: lib/CatDap/Controller/admin.pm:526 +#: lib/CatDap/Controller/admin.pm:535 msgid "password reset" msgstr "" diff --git a/root/email/forgot_password.tt b/root/email/forgot_password.tt new file mode 100644 index 0000000..af9231f --- /dev/null +++ b/root/email/forgot_password.tt @@ -0,0 +1,7 @@ +[% l('Dear [_1],',cn) %] +[% l('Your [_1] account has been requested to change the password. If you did not do this, or you do not want to change your password; you can just do nothing.',c.config.organisation) %] +[% l('To reset your password, please follow the link below.') %] +[% url %] + +-- +[% c.config.project_url %] diff --git a/root/forgot_password/check.tt b/root/forgot_password/check.tt new file mode 100644 index 0000000..b8ec933 --- /dev/null +++ b/root/forgot_password/check.tt @@ -0,0 +1,4 @@ +<h2>Success</h2> +<p> +[% message %] +</p>
\ No newline at end of file diff --git a/root/forgot_password/complete.tt b/root/forgot_password/complete.tt new file mode 100644 index 0000000..3a9995c --- /dev/null +++ b/root/forgot_password/complete.tt @@ -0,0 +1,6 @@ +<h2>[% l('Email sent.') %]</h2> + +<p> + [% l('Operation was successful.') %] + [% l('Check your mail for password reset instructions.') %] +</p> diff --git a/root/forgot_password/confirm.tt b/root/forgot_password/confirm.tt new file mode 100644 index 0000000..3c3e07d --- /dev/null +++ b/root/forgot_password/confirm.tt @@ -0,0 +1,21 @@ + +<h1>[% l('Enter new password.') %]</h1> + +<div id="input_form"> +<form method="post" action="/forgot_password/change_password"> + <table> + <tr> + <td><label for="newpassword1_">[% l('New Password') %]</label></td> + <td><input id="newpassword1_" name="newpassword1" type="password" value="" /></td> + </tr><tr> + <td><label for="newpassword2_">[% l('Repeat New Password') %]</label></td> + <td><input id="newpassword2_" name="newpassword2" type="password" value="" /></td> + </tr><tr> + <td colspan="2" style="text-align:center;"> + <input type="hidden" name="secret" value="[% secret %]" /> + <button type="submit" value="[% l('Set new password') %]">[% l('Set new password') %]</button> + </td> + </tr> + </table> +</form> +</div> diff --git a/root/forgot_password/index.tt b/root/forgot_password/index.tt new file mode 100644 index 0000000..c5fbddd --- /dev/null +++ b/root/forgot_password/index.tt @@ -0,0 +1,17 @@ + +<h1>[% l('Forgot your password?') %]</h1> + +<div id="input_form"> +<form method="post" action="/forgot_password/check"> + <table> + <tr> + <td><label for="mail_">[% l('Email address') %]</label></td> + <td><input id="mail_" type="text" name="mail" value="[% c.request.params.mail %]" /></td> + </tr><tr> + <td colspan="2" style="text-align:center;"> + <button type="submit" value="[% l('Reset password') %]">[% l('Reset password') %]</button> + </td> + </tr> + </table> +</form> +</div> diff --git a/root/index.tt b/root/index.tt index 8e1720c..de256f6 100644 --- a/root/index.tt +++ b/root/index.tt @@ -14,8 +14,7 @@ </div> <div id="login_form_line"> <span><a href="/register">[% l('Register') %]</a> | - @todo [% l('Forgotten password?') %] - <!--<a href="/forgot_password">[% l('Forgotten password?') %]</a> --> + <a href="/forgot_password">[% l('Forgotten password?') %]</a> </span> </div> </form> diff --git a/root/template/footer b/root/template/footer index e6b8e62..f87ece5 100644 --- a/root/template/footer +++ b/root/template/footer @@ -1,5 +1,5 @@ <div class="hnav"> <div align=center><p>2010 <a href="http://mageia.org/">Mageia.org</a> - | <a href="http://mageia.org/policies/privacy/">Privacy policy</a> - | <a href="http://mageia.org/faq/accounts/">Mageia user accounts FAQ</a> + | <a href="http://mageia.org/en/about/policies/privacy/">Privacy policy</a> + | <a href="http://mageia.org/wiki/doku.php?id=faq:accounts">Mageia user accounts FAQ</a> </p></div></div> diff --git a/root/template/layout b/root/template/layout index bd9201a..56470a8 100644 --- a/root/template/layout +++ b/root/template/layout @@ -3,7 +3,7 @@ [% PROCESS template/header %] </div> <div id="bd" role="main"> - <div class="yui-g"> + <div class="vnav"> <ul id="nav"> [% FOREACH subpage IN subpages %] <li><a href="[% c.uri_for(subpage.page) %]">[% l(subpage.title) %]</a></li> diff --git a/root/user/add.tt b/root/user/add.tt new file mode 100644 index 0000000..eaf84aa --- /dev/null +++ b/root/user/add.tt @@ -0,0 +1,4 @@ +An error occured adding the attribute [% attrname %] +[% IF attrvalue %]with value [% attrvalue %][% END %]. + +Please go back and try again diff --git a/root/user/delete.tt b/root/user/delete.tt new file mode 100644 index 0000000..a0adffd --- /dev/null +++ b/root/user/delete.tt @@ -0,0 +1,4 @@ +An error occured deleting the attribute [% attrname %] +[% IF attrvalue %]with value [% attrvalue %][% END %]. + +Please go back and try again |