Unverified Commit 1cbf5904 authored by IKEDA Soji's avatar IKEDA Soji Committed by GitHub
Browse files

Merge branch 'sympa-6.2' into issue-507

parents 3e1308bb 5b729299
......@@ -38,6 +38,7 @@ Makefile
/po/web_help/remove-potcdate.sed
/po/web_help/stamp-po
/src/etc/script/sympa
/src/lib/stamp-man3
/src/lib/Sympa/Constants.pm
/src/lib/Sympa/Internals.pod
/src/libexec/bouncequeue
......@@ -55,6 +56,12 @@ Makefile
/sympa-*.tar.gz
# make distcheck
/sympa-*/
/sympa-*.tar.gz.md5
/sympa-*.tar.gz.sha256
# perltidy
*.bak
......
......@@ -6,8 +6,8 @@
# Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Comite Reseau des Universites
# Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016, 2017 GIP RENATER
# Copyright 2017, 2018 The Sympa Community. See the AUTHORS.md file at the
# top-level directory of this distribution and at
# Copyright 2017, 2018, 2019 The Sympa Community. See the AUTHORS.md file at
# the top-level directory of this distribution and at
# <https://github.com/sympa-community/sympa.git>.
#
# This program is free software; you can redistribute it and/or modify
......@@ -65,11 +65,12 @@ noinst_SCRIPTS = \
xt/pod-coverage.t \
xt/pod-spelling.t \
xt/perltidy.t
nobase_modules_DATA = \
cpanfile
EXTRA_DIST = \
AUTHORS.md \
CONTRIBUTING.md \
cpanfile \
INSTALL.md \
NEWS.md \
OChangeLog \
......@@ -77,7 +78,8 @@ EXTRA_DIST = \
README.md \
etc_README \
$(check_SCRIPTS) $(check_DATA) \
$(noinst_SCRIPTS)
$(noinst_SCRIPTS) \
$(nobase_modules_DATA)
CLEANFILES = sympa_wizard.pl.inst
......@@ -85,10 +87,13 @@ MSGFMT=@MSGFMT@
.po.mo:
$(MSGFMT) -o $@ $<
# Skip this with "make distcheck"
check-local: $(check_DATA)
[ -z "$(TEST_FILES)" ] && TEST_FILES="$(check_SCRIPTS)"; \
PERL5LIB=src/lib; export PERL5LIB; \
$(PERL) -MTest::Harness -e 'runtests @ARGV' $$TEST_FILES
if test -d t; then \
[ -z "$(TEST_FILES)" ] && TEST_FILES="$(check_SCRIPTS)"; \
PERL5LIB=src/lib; export PERL5LIB; \
$(PERL) -MTest::Harness -e 'runtests @ARGV' $$TEST_FILES; \
fi
authorcheck:
[ -z "$(TEST_FILES)" ] && TEST_FILES="$(noinst_SCRIPTS)"; \
......@@ -169,10 +174,9 @@ installconfig: installdir sympa_wizard.pl.inst
$(SED) \
-e 's|--sysconfdir--|$(sysconfdir)|' \
-e 's|--defaultdir--|$(defaultdir)|' \
etc_README > $(DESTDIR)$(sysconfdir)/README; \
$(srcdir)/etc_README > $(DESTDIR)$(sysconfdir)/README; \
chmod 644 $(DESTDIR)$(sysconfdir)/README; \
fi
@$(INSTALL_DATA) cpanfile $(DESTDIR)$(modulesdir)/;
nextstep:
@echo ""
......@@ -195,11 +199,19 @@ nextstep:
@echo "#######################################################"
uninstall-hook:
rm -f $(DESTDIR)$(confdir)/sympa.conf
rm -f $(DESTDIR)$(confdir)/wwsympa.conf
cd $(DESTDIR)$(confdir) && rm -f sympa.conf
cd $(DESTDIR)$(confdir) && rm -f wwsympa.conf
cd $(DESTDIR)$(sysconfdir) && rm -f data_structure.version
cd $(DESTDIR)$(sysconfdir) && rm -f README
DISTCHECK_CONFIGURE_FLAGS = --enable-fhs --with-perl=$(PERL)
dist-hook:
$(MAKE) check
distcheck-hook:
-md5sum $(DIST_ARCHIVES) > $(DIST_ARCHIVES).md5
-sha256sum $(DIST_ARCHIVES) > $(DIST_ARCHIVES).sha256
tidyall:
tidyall --conf-file doc/dot.tidyallrc --root-dir . -r src t xt
# Change Log
## [6.2.40](https://github.com/sympa-community/sympa/tree/6.2.40) (2019-01-19)
[Full Changelog](https://github.com/sympa-community/sympa/compare/6.2.38...6.2.40)
**Fixed bugs:**
- Public archives not available with sympa-6.2.38 [\#527](https://github.com/sympa-community/sympa/issues/527)
## [6.2.38](https://github.com/sympa-community/sympa/tree/6.2.38) (2018-12-21)
[Full Changelog](https://github.com/sympa-community/sympa/compare/6.2.37b.3...6.2.38)
......
......@@ -7,8 +7,8 @@
# Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Comite Reseau des Universites
# Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016, 2017 GIP RENATER
# Copyright 2017, 2018 The Sympa Community. See the AUTHORS.md file at the
# top-level directory of this distribution and at
# Copyright 2017, 2018, 2019 The Sympa Community. See the AUTHORS.md file at
# the top-level directory of this distribution and at
# <https://github.com/sympa-community/sympa.git>.
#
# This program is free software; you can redistribute it and/or modify
......@@ -25,7 +25,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
AC_PREREQ(2.60)
AC_INIT(sympa, 6.2.38, sympa-developpers@listes.renater.fr)
AC_INIT(sympa, 6.2.40, sympa-developpers@listes.renater.fr)
AM_INIT_AUTOMAKE([foreign -Wall -Werror 1.9 tar-pax])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AM_PO_SUBDIRS
......
......@@ -410,23 +410,6 @@ EXTRA_DIST = $(nobase_default_DATA) \
CLEANFILES = list_aliases.tt2
DEFAULT_SCENARIOS = \
add.owner \
archive_mail_access.closed \
d_edit.owner \
d_read.private \
del.owner \
info.open \
invite.private \
remind.owner \
review.owner \
send.private \
subscribe.open \
topics_visibility.noconceal \
tracking.owner \
unsubscribe.open \
visibility.conceal
list_aliases.tt2: Makefile list_aliases.tt2.in
@rm -f $@
$(AM_V_GEN)$(SED) \
......@@ -434,10 +417,6 @@ list_aliases.tt2: Makefile list_aliases.tt2.in
< $(srcdir)/$@.in > $@
install-data-hook:
cd $(DESTDIR)$(defaultdir)/scenari; \
for file in $(DEFAULT_SCENARIOS); do \
$(LN_S) -f $$file `echo $$file | $(SED) -e 's/\.[^.]*$$/.default/'`; \
done
cd $(DESTDIR)$(defaultdir)/web_tt2; \
rm -f ja_JP/css.tt2 ko_KR/css.tt2 zh_CN/css.tt2 zh_TW/css.tt2; \
$(LN_S) -f review.tt2 search.tt2; \
......
......@@ -47,16 +47,17 @@ Some of the customizations have been removed because they no longer respect the
[% ELSIF type == 'subrequest' -%]
Subject: [% FILTER qencode %][%|loc(list.name)%]Subscription request to list %1[%END%][%END%]
[%|loc(list.name)-%]Dear owner of list %1,
[%|loc(list.name)%]Dear owner of list %1,[%END%]
A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:[%END%]
[% IF user_interfaces.size() == 1 && user_interfaces.0 == 'mail' -%]
[%IF gecos; SET target="${gecos} <${who}>"; ELSE; SET target="<${who}>"; END~%]
[%|loc(target)%]A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:[%END%]
[% IF conf.wwsympa_url -%]
[% 'auth' | url_abs([keyauth,'add',list.name],{email=>user.email}) %]
[%- ELSE -%]
[% "${conf.email}@${domain}" | mailtourl({subject=>"AUTH ${keyauth} ADD ${list.name} ${who} ${gecos}"}) %]
[%|loc(conf.email,domain)%]Or send a message to %1@%2 with the following subject:[%END%]
AUTH [%keyauth%] ADD [%list.name%] [%who%] [%gecos%]
[%- ELSE -%]
[% 'auth' | url_abs([keyauth,'add',list.name],{email=>user.email}) %]
[%- END %]
[% IF custom_attribute %]
......@@ -69,16 +70,17 @@ A user asked to be added as a subscriber to your list. If this is OK with you, y
[% ELSIF type == 'sigrequest' -%]
Subject: [% FILTER qencode %][%|loc(list.name)%]UNsubscription request from list %1[%END%][%END%]
[%|loc(list.name)-%]Dear owner of list %1,
[%|loc(list.name)%]Dear owner of list %1,[%END%]
A user asked to be deleted from your list. If this is OK with you, you should click the following URL:[% END %]
[% IF user_interfaces.size() == 1 && user_interfaces.0 == 'mail' -%]
[% SET target = "<${who}>" ~%]
[%|loc(target)%]A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:[%END%]
[% IF conf.wwsympa_url -%]
[% 'auth' | url_abs([keyauth,'del',list.name],{email=>user.email}) %]
[%- ELSE -%]
[% "${conf.email}@${domain}" | mailtourl({subject=>"AUTH ${keyauth} DEL ${list.name} ${who}"}) %]
[%|loc(conf.email,domain)%]Or send a message to %1@%2 with the following subject:[%END%]
AUTH [%keyauth%] DEL [%list.name%] [%who%]
[%- ELSE -%]
[% 'auth' | url_abs([keyauth,'del',list.name],{email=>user.email}) %]
[%- END %]
[% ELSIF type == 'automatic_bounce_management' -%]
......
......@@ -597,6 +597,9 @@ Warning: this message may already have been sent by one of the list's moderators
[%~ ELSIF report_entry == 'incorrect_email' ~%]
[%|loc(report_param.email || report_param.value)%]Address "%1" is incorrect[%END%]
[%~ ELSIF report_entry == 'blacklisted_domain' ~%]
[%|loc(report_param.email || report_param.value)%]Address "%1" belongs to a blacklisted domain[%END%]
[%~ ELSIF report_entry == 'incorrect_passwd' ~%]
[%|loc%]Provided password is incorrect[%END%]
......
......@@ -151,13 +151,11 @@
<select name="single_param.[% ppaths.join('.') %].name"
id="param.[% ppaths.join('.') %]">
[% FOREACH scenario = pitem.format ~%]
[% UNLESS scenario.value.name == 'default' ~%]
<option value="[% scenario.value.name %]"
[%~ IF scenario.value.name == val.name %] selected="selected"[% END %]>
[%~ scenario.value.title %]
[%~ IF is_listmaster %] ([% scenario.value.name %])[% END ~%]
</option>
[%~ END %]
<option value="[% scenario.value.name %]"
[%~ IF scenario.value.name == val.name %] selected="selected"[% END %]>
[%~ scenario.value.title %]
[%~ IF is_listmaster %] ([% scenario.value.name %])[% END ~%]
</option>
[% END %]
</select>
[%~ ELSE ~%]
......
......@@ -52,7 +52,19 @@
[%~ END %]
</h2>
<p><strong>
[% IF heldaction == 'add' && request.email ~%]
[%IF request.gecos ~%]
[% SET target="${request.gecos} &lt;${request.email}&gt;" %]
[%~ELSE~%]
[% SET target="&lt;${request.email}&gt;" %]
[%~END~%]
[%|loc(target)%]Do you really want to add %1?[%END%]
[%~ ELSIF heldaction == 'del' && request.email ~%]
[% SET target = "&lt;${request.email}&gt;" ~%]
[%|loc(target)%]Do you really want to delete %1?[%END%]
[%~ ELSE ~%]
[%|loc%]Do you really want this action to be taken?[%END%]
[%~ END %]
</strong></p>
[%~ ELSIF confirm_action == 'auto_signoff' ~%]
<h2><i class="fa fa-check-circle"></i>
......@@ -231,11 +243,13 @@
[% FOREACH e = email ~%]
<input type="hidden" name="email" value="[% e %]" />
[%~ END %]
<div>
<input type="checkbox" id="quiet" type="checkbox" name="quiet" value="1"
[% IF quiet %]checked="checked"[%END%] />
<label for="quiet">[%|loc%]Quiet (don't send welcome email)[%END%]</label>
</div>
[% IF conf.quiet_subscription == 'optional' %]
<div>
<input type="checkbox" id="quiet" type="checkbox" name="quiet" value="1"
[% IF quiet %]checked="checked"[%END%] />
<label for="quiet">[%|loc%]Quiet (don't send welcome email)[%END%]</label>
</div>
[%~ END %]
[%~ ELSIF confirm_action == 'add_frommod' ~%]
[% FOREACH i = id ~%]
<input type="hidden" name="id" value="[% i %]" />
......
......@@ -10,9 +10,11 @@
</textarea>
</div>
<div>
<input id="quiet" type="checkbox" name="quiet" value="quiet"
[% IF quiet %] checked="checked"[%END%] />
<label for="quiet">[%|loc%]quiet[%END%]</label>
[% IF conf.quiet_subscription == 'optional' %]
<input id="quiet" type="checkbox" name="quiet" value="quiet"
[% IF quiet %] checked="checked"[%END%] />
<label for="quiet">[%|loc%]quiet[%END%]</label>
[% END ~%]
<input class="MainMenuLinks" type="submit" name="action_import"
value="[%|loc%]Add subscribers[%END%]" />
</div>
......
......@@ -68,12 +68,14 @@
<label for="email_search">[%|loc%]Email address:[%END%]</label>
<input id="email_search" type="text" name="email" size="35" />
</div>
<div>
<input id="quietly" type="checkbox" name="quiet" />
<label for="quietly">
[%|loc%]Quiet (don't send welcome email)[%END%]
</label>
</div>
[% IF conf.quiet_subscription == 'optional' %]
<div>
<input id="quietly" type="checkbox" name="quiet" />
<label for="quietly">
[%|loc%]Quiet (don't send welcome email)[%END%]
</label>
</div>
[% END ~%]
<div>
<input class="MainMenuLinks" type="submit" name="action_add"
value="[%|loc%]Add[%END%]" />
......
......@@ -6,8 +6,8 @@
# Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
# 2006, 2007, 2008, 2009, 2010, 2011 Comite Reseau des Universites
# Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016, 2017 GIP RENATER
# Copyright 2017 The Sympa Community. See the AUTHORS.md file at the top-level
# directory of this distribution and at
# Copyright 2017, 2019 The Sympa Community. See the AUTHORS.md file at
# the top-level directory of this distribution and at
# <https://github.com/sympa-community/sympa.git>.
#
# This program is free software; you can redistribute it and/or modify
......@@ -77,11 +77,12 @@ CLEANFILES = $(man1_MANS) $(man5_MANS)
.pod.1:
$(AM_V_GEN)$(POD2MAN) --section=1 --center="sympa $(VERSION)" \
--lax --release="$(VERSION)" $*.pod $@
--lax --release="$(VERSION)" $< $@
.pod.5:
$(AM_V_GEN)$(POD2MAN) --section=5 --center="sympa $(VERSION)" \
--lax --release="$(VERSION)" $*.pod $@
--lax --release="$(VERSION)" $< $@
.podpl.pod:
$(AM_V_GEN)PERL5LIB=$(top_srcdir)/src/lib; export PERL5LIB; \
$(PERL) $(srcdir)/$< > $*.pod
$(AM_V_GEN)PERL5LIB=$(top_builddir)/src/lib:$(top_srcdir)/src/lib; \
export PERL5LIB; \
$(PERL) $< --top_srcdir=$(top_srcdir) > $*.pod
......@@ -175,15 +175,12 @@ example, the canonic email is C<mail>.
=item C<alternative_email_attribute>
The name of the attribute for the alternate email in your directory: for
instance C<alternate_email>, C<mailalternateaddress>, ... You make a list of
these attributes separated by commas (C<,>).
With this list, Sympa creates a cookie which contains various information:
Whether the user is authenticated via LDAP or not, their alternate email.
Storing the alternate email is interesting when you want to canonify your
preferences and subscriptions, that is to say you want to use a unique
address in C<user_table> and C<subscriber_table>, which is the canonic email.
I<Obsoleted>.
On Sympa 6.2.38 or earlier, web interface provided a cookie named
C<sympa_altemails> which contained attribute values specified by this
parameter along with authenticated email address.
This feature was deprecated.
=item C<scope>
......
......@@ -4,11 +4,16 @@ use strict;
use warnings;
use Cwd qw();
use English qw(-no_match_vars);
use Getopt::Long;
use Sympa::ConfDef;
use Sympa::ListDef;
use Sympa::ListOpt;
my $top_srcdir;
GetOptions('top_srcdir=s' => \$top_srcdir);
$top_srcdir ||= '..';
my @groups = (
[description => 'List definition'],
[sending => 'Sending/receiving setup'],
......@@ -184,7 +189,7 @@ sub _format {
} elsif (exists $pinfo->{scenario}) {
my $function = $pinfo->{scenario};
my $cwd = Cwd::getcwd();
chdir '../default/scenari/' or die $ERRNO;
chdir $top_srcdir . '/default/scenari/' or die $ERRNO;
$parameters .= sprintf "Name of C<%s> scenario:\n\n",
$pinfo->{scenario};
......
......@@ -20885,3 +20885,20 @@ msgstr "Font desconeguda."
#~ msgstr ""
#~ "Algú, probablement vostè, ha demanat subscriure's a la llista %1@%2. "
#~ "(Aquesta petició ve del host %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuari ha preguntat per a donar-se d'alta a la teva llista. Si la petició és correcte \ncal que seleccioni el següent enllaç : "
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuari ha preguntat per a donar-se d'alta a la teva llista. Si la petició és correcte \ncal que seleccioni el següent enllaç : "
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr " \nUna persona ha demanat donar-se de baixa de la vostra llista. Si és correcte visiteu el següent enllaç:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr " \nUna persona ha demanat donar-se de baixa de la vostra llista. Si és correcte visiteu el següent enllaç:"
msgid "Dear owner of list %1,"
msgstr "Estimat/da administrador de la llista %1,"
......@@ -20437,3 +20437,20 @@ msgstr "Unbekannter Anbieter."
#~ msgstr ""
#~ "Irgendjemand, wahrscheinlich Sie, hat beantragt, die Liste %1@%2 zu "
#~ "abonnieren. (Diese Anfrage kam von Rechner %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "ein Nutzer hat darum gebeten, als Abonnent zu der Liste hinzugefügt zu werden. Wenn dies in Ordnung ist, sollten Sie den folgenden Link anklicken:"
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "ein Nutzer hat darum gebeten, als Abonnent zu der Liste hinzugefügt zu werden. Wenn dies in Ordnung ist, sollten Sie den folgenden Link anklicken:"
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "ein Abonnent hat darum gebeten, von der Liste abgemeldet zu werden. Wenn dies in Ordnung ist, sollten Sie den folgenden Link anklicken:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "ein Abonnent hat darum gebeten, von der Liste abgemeldet zu werden. Wenn dies in Ordnung ist, sollten Sie den folgenden Link anklicken:"
msgid "Dear owner of list %1,"
msgstr "Sehr geehrter Eigentümer der Liste %1,"
......@@ -20566,3 +20566,20 @@ msgstr "Άγνωστος παροχέας."
#~ msgstr ""
#~ "Κάποιος, πιθανότατα εσείς, ζήτησε την εγγραφή του στη λίστα %1@%2. (Το "
#~ "αίτημα ήρθε από τον κόμβο %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Ένας χρήστης επιθυμεί τη διαγραφή του από τη λίστας σας. Αν επιθυμείτε την \nπραγματοποίηση της διαγραφή, επιλέξτε το ακόλουθο URL :\n\nmailto:%s?subject=auth%%20%s%%20DEL%%20%s%%20%s\n\nή αποστείλτε ένα μήνυμα στη %s με το ακόλουθο θέμα:\nAUTH %s DEL %s %s\n"
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Ένας χρήστης επιθυμεί τη διαγραφή του από τη λίστας σας. Αν επιθυμείτε την \nπραγματοποίηση της διαγραφή, επιλέξτε το ακόλουθο URL :\n\nmailto:%s?subject=auth%%20%s%%20DEL%%20%s%%20%s\n\nή αποστείλτε ένα μήνυμα στη %s με το ακόλουθο θέμα:\nAUTH %s DEL %s %s\n"
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Ένας χρήστης ζήτησε τη διαγραφή του από τη λίστα.\nΕάν αυτό είναι αποδεκτό από εσάς, πατήστε στον παρακάτω σύνδεσμο:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Ένας χρήστης ζήτησε τη διαγραφή του από τη λίστα.\nΕάν αυτό είναι αποδεκτό από εσάς, πατήστε στον παρακάτω σύνδεσμο:"
msgid "Dear owner of list %1,"
msgstr "Αγαπητέ ιδιοκτήτη της λίστας %1,"
......@@ -19814,3 +19814,20 @@ msgstr "Unknown error."
#~ msgstr ""
#~ "Someone, probably you, requested to subscribe to list %1@%2. (This "
#~ "request came from host %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgid "Dear owner of list %1,"
msgstr "Dear owner of list %1,"
......@@ -20555,3 +20555,20 @@ msgstr "Proveedor desconocido."
#~ msgstr ""
#~ "Alguien - tú, muy probablemente - solicitó tu suscripción a la lista %1@%"
#~ "2. (Esta solicitud proviene de la máquina %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuario solicitó ser añadido como suscriptor de tu lista. Si estás de acuerdo deberías pulsar en la siguiente URL:"
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuario solicitó ser añadido como suscriptor de tu lista. Si estás de acuerdo deberías pulsar en la siguiente URL:"
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuario solicitó ser eliminado como suscriptor de tu lista. Si estás de acuerdo deberías pulsar en la siguiente URL:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Un usuario solicitó ser eliminado como suscriptor de tu lista. Si estás de acuerdo deberías pulsar en la siguiente URL:"
msgid "Dear owner of list %1,"
msgstr "Estimado propietario de la lista %1,"
......@@ -20052,3 +20052,20 @@ msgstr "Tundmatu teenusepakkuja."
#~ msgstr ""
#~ "Keegi, tõenäoliselt te ise, soovis tellida listi %1@%2. (Sooviavaldus "
#~ "tuli arvutist %3)."
msgid "A user asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "1 kasutaja soovis liituda teie listiga. Kui te nõustute sellega, klikkige \njärgnevale URLile:"
#, fuzzy
msgid "A user %1 asked to be added as a subscriber to your list. If this is OK with you, you should click the following URL:"
msgstr "1 kasutaja soovis liituda teie listiga. Kui te nõustute sellega, klikkige \njärgnevale URLile:"
msgid "A user asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Teie listist paluti kustutada üks kasutaja. Kui te nõustute\nselle sooviga, klikkige järgnevale lingile:"
#, fuzzy
msgid "A user %1 asked to be deleted from your list. If this is OK with you, you should click the following URL:"
msgstr "Teie listist paluti kustutada üks kasutaja. Kui te nõustute\nselle sooviga, klikkige järgnevale lingile:"
msgid "Dear owner of list %1,"
msgstr "Lugupeetud listi %1 omanik,"
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment