forked from GNUsocial/gnu-social
Merge remote-tracking branch 'statusnet/master'
This merges GNU Social with current development of StatusNet. The only conflicts were some documentation, where GNU Social's versions were retained. Conflicts: doc-src/about doc-src/faq plugins/OpenID/doc-src/openid
This commit is contained in:
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Asturian (Asturianu)
|
||||
# Translation of StatusNet - APC to Asturian (asturianu)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Xuacu
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:37+0000\n"
|
||||
"Language-Team: Asturian <http://translatewiki.net/wiki/Portal:ast>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Language-Team: Asturian <https://translatewiki.net/wiki/Portal:ast>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ast\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Belarusian (Taraškievica orthography) (Беларуская (тарашкевіца))
|
||||
# Translation of StatusNet - APC to Belarusian (Taraškievica orthography) (беларуская (тарашкевіца))
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: EugeneZelenko
|
||||
@@ -9,15 +9,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:37+0000\n"
|
||||
"Language-Team: Belarusian (Taraškievica orthography) <http://translatewiki."
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Language-Team: Belarusian (Taraškievica orthography) <https://translatewiki."
|
||||
"net/wiki/Portal:be-tarask>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: be-tarask\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Breton (Brezhoneg)
|
||||
# Translation of StatusNet - APC to Breton (brezhoneg)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Fulup
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Breton <http://translatewiki.net/wiki/Portal:br>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Language-Team: Breton <https://translatewiki.net/wiki/Portal:br>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: br\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: German <http://translatewiki.net/wiki/Portal:de>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Language-Team: German <https://translatewiki.net/wiki/Portal:de>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: de\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Spanish (Español)
|
||||
# Translation of StatusNet - APC to Spanish (español)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Translationista
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Spanish <http://translatewiki.net/wiki/Portal:es>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Language-Team: Spanish <https://translatewiki.net/wiki/Portal:es>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: es\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
27
plugins/APC/locale/eu/LC_MESSAGES/APC.po
Normal file
27
plugins/APC/locale/eu/LC_MESSAGES/APC.po
Normal file
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - APC to Basque (euskara)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Artsuaga
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:37+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"Use the <a href=\"http://pecl.php.net/package/apc\">APC</a> variable cache "
|
||||
"to cache query results."
|
||||
msgstr ""
|
||||
"Erabili <a href=\"http://pecl.php.net/package/apc\">APC</a> aldagairen "
|
||||
"katxea kontsultako emaitzak katxean kopiatzeko."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to French (Français)
|
||||
# Translation of StatusNet - APC to French (français)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Verdy p
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: French <http://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: French <https://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: fr\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Galician (Galego)
|
||||
# Translation of StatusNet - APC to Galician (galego)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toliño
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Galician <http://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Galician <https://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: gl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Hebrew <http://translatewiki.net/wiki/Portal:he>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Hebrew <https://translatewiki.net/wiki/Portal:he>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: he\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Interlingua (Interlingua)
|
||||
# Translation of StatusNet - APC to Interlingua (interlingua)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: McDutchie
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Interlingua <http://translatewiki.net/wiki/Portal:ia>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Interlingua <https://translatewiki.net/wiki/Portal:ia>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ia\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Indonesian <http://translatewiki.net/wiki/Portal:id>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Indonesian <https://translatewiki.net/wiki/Portal:id>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: id\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
27
plugins/APC/locale/it/LC_MESSAGES/APC.po
Normal file
27
plugins/APC/locale/it/LC_MESSAGES/APC.po
Normal file
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - APC to Italian (italiano)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Ximo17
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"Use the <a href=\"http://pecl.php.net/package/apc\">APC</a> variable cache "
|
||||
"to cache query results."
|
||||
msgstr ""
|
||||
"Utilizzare la cache variabile <a href=\"http://pecl.php.net/package/apc"
|
||||
"\">APC</a> per i risultati della query cache."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Macedonian (Македонски)
|
||||
# Translation of StatusNet - APC to Macedonian (македонски)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Bjankuloski06
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Macedonian <http://translatewiki.net/wiki/Portal:mk>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Macedonian <https://translatewiki.net/wiki/Portal:mk>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: mk\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"
|
||||
|
30
plugins/APC/locale/ms/LC_MESSAGES/APC.po
Normal file
30
plugins/APC/locale/ms/LC_MESSAGES/APC.po
Normal file
@@ -0,0 +1,30 @@
|
||||
# Translation of StatusNet - APC to Malay (Bahasa Melayu)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Anakmalaysia
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Malay <https://translatewiki.net/wiki/Portal:ms>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ms\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"Use the <a href=\"http://pecl.php.net/package/apc\">APC</a> variable cache "
|
||||
"to cache query results."
|
||||
msgstr ""
|
||||
"Gunakan cache pembolehubah <a href=\"http://pecl.php.net/package/apc\">APC</"
|
||||
"a> untuk meng-cache-kan hasil pertanyaan."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Norwegian (bokmål) (Norsk (bokmål))
|
||||
# Translation of StatusNet - APC to Norwegian Bokmål (norsk (bokmål))
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Nghtwlkr
|
||||
@@ -9,15 +9,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Norwegian (bokmål) <http://translatewiki.net/wiki/Portal:no>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Norwegian Bokmål <https://translatewiki.net/wiki/Portal:nb>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-Language-Code: no\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: nb\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
|
@@ -2,6 +2,7 @@
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: McDutchie
|
||||
# Author: Siebrand
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
@@ -9,14 +10,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Dutch <http://translatewiki.net/wiki/Portal:nl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:38+0000\n"
|
||||
"Language-Team: Dutch <https://translatewiki.net/wiki/Portal:nl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: nl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
@@ -27,4 +28,4 @@ msgid ""
|
||||
"to cache query results."
|
||||
msgstr ""
|
||||
"De variabelencache <a href=\"http://pecl.php.net/package/apc\">APC</a> "
|
||||
"gebruiken op resultaten van zoekopdrachten te cachen."
|
||||
"gebruiken om resultaten van zoekopdrachten te cachen."
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Polish (Polski)
|
||||
# Translation of StatusNet - APC to Polish (polski)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Sp5uhe
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Polish <http://translatewiki.net/wiki/Portal:pl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Polish <https://translatewiki.net/wiki/Portal:pl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: pl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && "
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Portuguese (Português)
|
||||
# Translation of StatusNet - APC to Portuguese (português)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Waldir
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Portuguese <http://translatewiki.net/wiki/Portal:pt>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Portuguese <https://translatewiki.net/wiki/Portal:pt>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: pt\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Brazilian Portuguese (Português do Brasil)
|
||||
# Translation of StatusNet - APC to Brazilian Portuguese (português do Brasil)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Giro720
|
||||
@@ -9,15 +9,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Brazilian Portuguese <http://translatewiki.net/wiki/Portal:pt-"
|
||||
"br>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Brazilian Portuguese <https://translatewiki.net/wiki/Portal:"
|
||||
"pt-br>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: pt-br\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Russian (Русский)
|
||||
# Translation of StatusNet - APC to Russian (русский)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Александр Сигачёв
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Russian <http://translatewiki.net/wiki/Portal:ru>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Russian <https://translatewiki.net/wiki/Portal:ru>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ru\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:38+0000\n"
|
||||
"Language-Team: Tagalog <http://translatewiki.net/wiki/Portal:tl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Tagalog <https://translatewiki.net/wiki/Portal:tl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: tl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Ukrainian (Українська)
|
||||
# Translation of StatusNet - APC to Ukrainian (українська)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Boogie
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:39+0000\n"
|
||||
"Language-Team: Ukrainian <http://translatewiki.net/wiki/Portal:uk>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Ukrainian <https://translatewiki.net/wiki/Portal:uk>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: uk\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - APC to Simplified Chinese (中文(简体))
|
||||
# Translation of StatusNet - APC to Simplified Chinese (中文(简体))
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Chenxiaoqino
|
||||
@@ -9,15 +9,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - APC\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:39+0000\n"
|
||||
"Language-Team: Simplified Chinese <http://translatewiki.net/wiki/Portal:zh-"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:39+0000\n"
|
||||
"Language-Team: Simplified Chinese <https://translatewiki.net/wiki/Portal:zh-"
|
||||
"hans>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-13 13:56:51+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-06-18 16:18:40+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: zh-hans\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-apc\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Afrikaans <http://translatewiki.net/wiki/Portal:af>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:26+0000\n"
|
||||
"Language-Team: Afrikaans <https://translatewiki.net/wiki/Portal:af>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: af\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Asturian (Asturianu)
|
||||
# Translation of StatusNet - AccountManager to Asturian (asturianu)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Xuacu
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Asturian <http://translatewiki.net/wiki/Portal:ast>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:26+0000\n"
|
||||
"Language-Team: Asturian <https://translatewiki.net/wiki/Portal:ast>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ast\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Catalan (Català)
|
||||
# Translation of StatusNet - AccountManager to Catalan (català)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toniher
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Catalan <http://translatewiki.net/wiki/Portal:ca>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Catalan <https://translatewiki.net/wiki/Portal:ca>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ca\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: German <http://translatewiki.net/wiki/Portal:de>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: German <https://translatewiki.net/wiki/Portal:de>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: de\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -0,0 +1,29 @@
|
||||
# Translation of StatusNet - AccountManager to Spanish (español)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Erchache2000
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Spanish <https://translatewiki.net/wiki/Portal:es>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: es\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr ""
|
||||
"El plugin Account Manager implementa la especificación de la cuenta "
|
||||
"Administrador."
|
@@ -0,0 +1,28 @@
|
||||
# Translation of StatusNet - AccountManager to Basque (euskara)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Artsuaga
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Basque <https://translatewiki.net/wiki/Portal:eu>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: eu\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr ""
|
||||
"Kontu Kudeatzaile pluginak Kontu Kudeatzaile zehaztapenak ezartzen ditu."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Finnish (Suomi)
|
||||
# Translation of StatusNet - AccountManager to Finnish (suomi)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Nike
|
||||
@@ -10,14 +10,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Finnish <http://translatewiki.net/wiki/Portal:fi>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Finnish <https://translatewiki.net/wiki/Portal:fi>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: fi\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to French (Français)
|
||||
# Translation of StatusNet - AccountManager to French (français)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Crochet.david
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: French <http://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: French <https://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: fr\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -0,0 +1,29 @@
|
||||
# Translation of StatusNet - AccountManager to Galician (galego)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toliño
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Galician <https://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: gl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr ""
|
||||
"O complemento de xestión de contas aplica a especificación do xestor de "
|
||||
"contas."
|
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - AccountManager to Hebrew (עברית)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Amire80
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Hebrew <https://translatewiki.net/wiki/Portal:he>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: he\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr "תוסף מנהל החשבון מיישם את מִפרט מנהל החשבון."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Interlingua (Interlingua)
|
||||
# Translation of StatusNet - AccountManager to Interlingua (interlingua)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: McDutchie
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Interlingua <http://translatewiki.net/wiki/Portal:ia>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Interlingua <https://translatewiki.net/wiki/Portal:ia>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ia\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -0,0 +1,24 @@
|
||||
# Translation of StatusNet - AccountManager to Italian (italiano)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Ximo17
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr "Il plugin Account Manager implementa le specifiche Account Manager."
|
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - AccountManager to Japanese (日本語)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Miwa ka
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:27+0000\n"
|
||||
"Language-Team: Japanese <https://translatewiki.net/wiki/Portal:ja>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ja\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr "Account Manager プラグインは、アカウント管理の仕様を実装しています"
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Macedonian (Македонски)
|
||||
# Translation of StatusNet - AccountManager to Macedonian (македонски)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Bjankuloski06
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Macedonian <http://translatewiki.net/wiki/Portal:mk>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Macedonian <https://translatewiki.net/wiki/Portal:mk>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: mk\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"
|
||||
|
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - AccountManager to Malay (Bahasa Melayu)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Anakmalaysia
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Malay <https://translatewiki.net/wiki/Portal:ms>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ms\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr "Pemalam Pengurus Akaun melaksanakan spesifikasi Pengurus Akaun."
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Dutch <http://translatewiki.net/wiki/Portal:nl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Dutch <https://translatewiki.net/wiki/Portal:nl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: nl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -0,0 +1,25 @@
|
||||
# Translation of StatusNet - AccountManager to Polish (polski)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: BeginaFelicysym
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && "
|
||||
"(n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid ""
|
||||
"The Account Manager plugin implements the Account Manager specification."
|
||||
msgstr "Wtyczka menedżer kont implementuje specyfikację menedżera kont."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Portuguese (Português)
|
||||
# Translation of StatusNet - AccountManager to Portuguese (português)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: SandroHc
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Portuguese <http://translatewiki.net/wiki/Portal:pt>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Portuguese <https://translatewiki.net/wiki/Portal:pt>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: pt\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Russian (Русский)
|
||||
# Translation of StatusNet - AccountManager to Russian (русский)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Александр Сигачёв
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Russian <http://translatewiki.net/wiki/Portal:ru>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Russian <https://translatewiki.net/wiki/Portal:ru>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ru\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
|
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Tagalog <http://translatewiki.net/wiki/Portal:tl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Tagalog <https://translatewiki.net/wiki/Portal:tl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: tl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - AccountManager to Ukrainian (Українська)
|
||||
# Translation of StatusNet - AccountManager to Ukrainian (українська)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Boogie
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - AccountManager\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:31+0000\n"
|
||||
"Language-Team: Ukrainian <http://translatewiki.net/wiki/Portal:uk>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Ukrainian <https://translatewiki.net/wiki/Portal:uk>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-09 18:55:57+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-08-30 10:01:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: uk\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-accountmanager\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
|
430
plugins/Activity/ActivityPlugin.php
Normal file
430
plugins/Activity/ActivityPlugin.php
Normal file
@@ -0,0 +1,430 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2010, StatusNet, Inc.
|
||||
*
|
||||
* Shows social activities in the output feed
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Activity
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2010 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Activity plugin main class
|
||||
*
|
||||
* @category Activity
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2010 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class ActivityPlugin extends Plugin
|
||||
{
|
||||
const VERSION = '0.1';
|
||||
const SOURCE = 'activity';
|
||||
|
||||
// Flags to switch off certain activity notices
|
||||
public $StartFollowUser = true;
|
||||
public $StopFollowUser = false;
|
||||
public $JoinGroup = true;
|
||||
public $LeaveGroup = false;
|
||||
public $StartLike = false;
|
||||
public $StopLike = false;
|
||||
|
||||
function onAutoload($cls)
|
||||
{
|
||||
$dir = dirname(__FILE__);
|
||||
|
||||
switch ($cls)
|
||||
{
|
||||
case 'JoinListItem':
|
||||
case 'LeaveListItem':
|
||||
case 'FollowListItem':
|
||||
case 'UnfollowListItem':
|
||||
case 'SystemListItem':
|
||||
include_once $dir . '/'.strtolower($cls).'.php';
|
||||
return false;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function onEndSubscribe($subscriber, $other)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->StartFollowUser) return true;
|
||||
$user = $subscriber->getUser();
|
||||
if (!empty($user)) {
|
||||
$sub = Subscription::pkeyGet(array('subscriber' => $subscriber->id,
|
||||
'subscribed' => $other->id));
|
||||
// TRANS: Text for "started following" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> started following <a href="%3$s">%4$s</a>.'),
|
||||
$subscriber->profileurl,
|
||||
$subscriber->getBestName(),
|
||||
$other->profileurl,
|
||||
$other->getBestName());
|
||||
// TRANS: Text for "started following" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) started following %3$s (%4$s).'),
|
||||
$subscriber->getBestName(),
|
||||
$subscriber->profileurl,
|
||||
$other->getBestName(),
|
||||
$other->profileurl);
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'replies' => array($other->getUri()),
|
||||
'verb' => ActivityVerb::FOLLOW,
|
||||
'object_type' => ActivityObject::PERSON,
|
||||
'uri' => $sub->uri));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndUnsubscribe($subscriber, $other)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->StopFollowUser) return true;
|
||||
$user = $subscriber->getUser();
|
||||
if (!empty($user)) {
|
||||
// TRANS: Text for "stopped following" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> stopped following <a href="%3$s">%4$s</a>.'),
|
||||
$subscriber->profileurl,
|
||||
$subscriber->getBestName(),
|
||||
$other->profileurl,
|
||||
$other->getBestName());
|
||||
// TRANS: Text for "stopped following" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) stopped following %3$s (%4$s).'),
|
||||
$subscriber->getBestName(),
|
||||
$subscriber->profileurl,
|
||||
$other->getBestName(),
|
||||
$other->profileurl);
|
||||
|
||||
$uri = TagURI::mint('stop-following:%d:%d:%s',
|
||||
$subscriber->id,
|
||||
$other->id,
|
||||
common_date_iso8601(common_sql_now()));
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'replies' => array($other->getUri()),
|
||||
'uri' => $uri,
|
||||
'verb' => ActivityVerb::UNFOLLOW,
|
||||
'object_type' => ActivityObject::PERSON));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndFavorNotice($profile, $notice)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->StartLike) return true;
|
||||
|
||||
$user = $profile->getUser();
|
||||
|
||||
if (!empty($user)) {
|
||||
|
||||
$author = $notice->getProfile();
|
||||
$fave = Fave::pkeyGet(array('user_id' => $user->id,
|
||||
'notice_id' => $notice->id));
|
||||
|
||||
// TRANS: Text for "liked" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> liked <a href="%3$s">%4$s\'s update</a>.'),
|
||||
$profile->profileurl,
|
||||
$profile->getBestName(),
|
||||
$notice->bestUrl(),
|
||||
$author->getBestName());
|
||||
// TRANS: Text for "liked" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) liked %3$s\'s status (%4$s).'),
|
||||
$profile->getBestName(),
|
||||
$profile->profileurl,
|
||||
$author->getBestName(),
|
||||
$notice->bestUrl());
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'replies' => array($author->getUri()),
|
||||
'uri' => $fave->getURI(),
|
||||
'verb' => ActivityVerb::FAVORITE,
|
||||
'object_type' => (($notice->verb == ActivityVerb::POST) ?
|
||||
$notice->object_type : ActivityObject::ACTIVITY)));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndDisfavorNotice($profile, $notice)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->StopLike) return true;
|
||||
$user = User::staticGet('id', $profile->id);
|
||||
|
||||
if (!empty($user)) {
|
||||
$author = Profile::staticGet('id', $notice->profile_id);
|
||||
// TRANS: Text for "stopped liking" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> stopped liking <a href="%3$s">%4$s\'s update</a>.'),
|
||||
$profile->profileurl,
|
||||
$profile->getBestName(),
|
||||
$notice->bestUrl(),
|
||||
$author->getBestName());
|
||||
// TRANS: Text for "stopped liking" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) stopped liking %3$s\'s status (%4$s).'),
|
||||
$profile->getBestName(),
|
||||
$profile->profileurl,
|
||||
$author->getBestName(),
|
||||
$notice->bestUrl());
|
||||
|
||||
$uri = TagURI::mint('unlike:%d:%d:%s',
|
||||
$profile->id,
|
||||
$notice->id,
|
||||
common_date_iso8601(common_sql_now()));
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'replies' => array($author->getUri()),
|
||||
'uri' => $uri,
|
||||
'verb' => ActivityVerb::UNFAVORITE,
|
||||
'object_type' => (($notice->verb == ActivityVerb::POST) ?
|
||||
$notice->object_type : ActivityObject::ACTIVITY)));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndJoinGroup($group, $profile)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->JoinGroup) return true;
|
||||
|
||||
$user = $profile->getUser();
|
||||
|
||||
if (empty($user)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// TRANS: Text for "joined group" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> joined the group <a href="%3$s">%4$s</a>.'),
|
||||
$profile->profileurl,
|
||||
$profile->getBestName(),
|
||||
$group->homeUrl(),
|
||||
$group->getBestName());
|
||||
// TRANS: Text for "joined group" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) joined the group %3$s (%4$s).'),
|
||||
$profile->getBestName(),
|
||||
$profile->profileurl,
|
||||
$group->getBestName(),
|
||||
$group->homeUrl());
|
||||
|
||||
$mem = Group_member::pkeyGet(array('group_id' => $group->id,
|
||||
'profile_id' => $profile->id));
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'groups' => array($group->id),
|
||||
'uri' => $mem->getURI(),
|
||||
'verb' => ActivityVerb::JOIN,
|
||||
'object_type' => ActivityObject::GROUP));
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndLeaveGroup($group, $profile)
|
||||
{
|
||||
// Only do this if config is enabled
|
||||
if(!$this->LeaveGroup) return true;
|
||||
|
||||
$user = $profile->getUser();
|
||||
|
||||
if (empty($user)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// TRANS: Text for "left group" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
$rendered = sprintf(_m('<a href="%1$s">%2$s</a> left the group <a href="%3$s">%4$s</a>.'),
|
||||
$profile->profileurl,
|
||||
$profile->getBestName(),
|
||||
$group->homeUrl(),
|
||||
$group->getBestName());
|
||||
// TRANS: Text for "left group" item in activity plugin.
|
||||
// TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
// TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
$content = sprintf(_m('%1$s (%2$s) left the group %3$s (%4$s).'),
|
||||
$profile->getBestName(),
|
||||
$profile->profileurl,
|
||||
$group->getBestName(),
|
||||
$group->homeUrl());
|
||||
|
||||
$uri = TagURI::mint('leave:%d:%d:%s',
|
||||
$user->id,
|
||||
$group->id,
|
||||
common_date_iso8601(common_sql_now()));
|
||||
|
||||
$notice = Notice::saveNew($user->id,
|
||||
$content,
|
||||
ActivityPlugin::SOURCE,
|
||||
array('rendered' => $rendered,
|
||||
'urls' => array(),
|
||||
'groups' => array($group->id),
|
||||
'uri' => $uri,
|
||||
'verb' => ActivityVerb::LEAVE,
|
||||
'object_type' => ActivityObject::GROUP));
|
||||
return true;
|
||||
}
|
||||
|
||||
function onStartShowNoticeItem($nli)
|
||||
{
|
||||
$notice = $nli->notice;
|
||||
|
||||
$adapter = null;
|
||||
|
||||
switch ($notice->verb) {
|
||||
case ActivityVerb::FAVORITE:
|
||||
case ActivityVerb::UNFAVORITE:
|
||||
$adapter = new SystemListItem($nli);
|
||||
break;
|
||||
case ActivityVerb::JOIN:
|
||||
$adapter = new JoinListItem($nli);
|
||||
break;
|
||||
case ActivityVerb::LEAVE:
|
||||
$adapter = new JoinListItem($nli);
|
||||
break;
|
||||
case ActivityVerb::FOLLOW:
|
||||
$adapter = new FollowListItem($nli);
|
||||
break;
|
||||
case ActivityVerb::UNFOLLOW:
|
||||
$adapter = new UnfollowListItem($nli);
|
||||
break;
|
||||
}
|
||||
|
||||
if (!empty($adapter)) {
|
||||
$adapter->showNotice();
|
||||
$adapter->showNoticeAttachments();
|
||||
$adapter->showNoticeInfo();
|
||||
$adapter->showNoticeOptions();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndNoticeAsActivity($notice, &$activity)
|
||||
{
|
||||
switch ($notice->verb) {
|
||||
case ActivityVerb::FAVORITE:
|
||||
$fave = Fave::staticGet('uri', $notice->uri);
|
||||
if (!empty($fave)) {
|
||||
$notice = Notice::staticGet('id', $fave->notice_id);
|
||||
if (!empty($notice)) {
|
||||
$cur = common_current_user();
|
||||
$target = $notice->asActivity($cur);
|
||||
if ($target->verb == ActivityVerb::POST) {
|
||||
// "I like the thing you posted"
|
||||
$activity->objects = $target->objects;
|
||||
} else {
|
||||
// "I like that you did whatever you did"
|
||||
$activity->objects = array($target);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ActivityVerb::UNFAVORITE:
|
||||
// FIXME: do something here
|
||||
break;
|
||||
case ActivityVerb::JOIN:
|
||||
$mem = Group_member::staticGet('uri', $notice->uri);
|
||||
if (!empty($mem)) {
|
||||
$group = $mem->getGroup();
|
||||
$activity->objects = array(ActivityObject::fromGroup($group));
|
||||
}
|
||||
break;
|
||||
case ActivityVerb::LEAVE:
|
||||
// FIXME: ????
|
||||
break;
|
||||
case ActivityVerb::FOLLOW:
|
||||
$sub = Subscription::staticGet('uri', $notice->uri);
|
||||
if (!empty($sub)) {
|
||||
$profile = Profile::staticGet('id', $sub->subscribed);
|
||||
if (!empty($profile)) {
|
||||
$activity->objects = array(ActivityObject::fromProfile($profile));
|
||||
}
|
||||
}
|
||||
break;
|
||||
case ActivityVerb::UNFOLLOW:
|
||||
// FIXME: ????
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function onPluginVersion(&$versions)
|
||||
{
|
||||
$versions[] = array('name' => 'Activity',
|
||||
'version' => self::VERSION,
|
||||
'author' => 'Evan Prodromou',
|
||||
'homepage' => 'http://status.net/wiki/Plugin:Activity',
|
||||
'rawdescription' =>
|
||||
// TRANS: Plugin description.
|
||||
_m('Emits notices when social activities happen.'));
|
||||
return true;
|
||||
}
|
||||
}
|
49
plugins/Activity/followlistitem.php
Normal file
49
plugins/Activity/followlistitem.php
Normal file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Title of module
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Cache
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* NoticeListItemAdapter for join activities
|
||||
*
|
||||
* @category General
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class FollowListItem extends SystemListItem
|
||||
{
|
||||
}
|
75
plugins/Activity/joinlistitem.php
Normal file
75
plugins/Activity/joinlistitem.php
Normal file
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* List item for when you join a group
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Cache
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* NoticeListItemAdapter for join activities
|
||||
*
|
||||
* @category General
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class JoinListItem extends SystemListItem
|
||||
{
|
||||
function showContent()
|
||||
{
|
||||
$notice = $this->nli->notice;
|
||||
$out = $this->nli->out;
|
||||
|
||||
$mem = Group_member::staticGet('uri', $notice->uri);
|
||||
|
||||
if (!empty($mem)) {
|
||||
$out->elementStart('div', 'join-activity');
|
||||
$profile = $mem->getMember();
|
||||
$group = $mem->getGroup();
|
||||
|
||||
// TRANS: Text for "joined list" item in activity plugin.
|
||||
// TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
// TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
$out->raw(sprintf(_m('<a href="%1$s">%2$s</a> joined the group <a href="%3$s">%4$s</a>.'),
|
||||
$profile->profileurl,
|
||||
$profile->getBestName(),
|
||||
$group->homeUrl(),
|
||||
$group->getBestName()));
|
||||
|
||||
$out->elementEnd('div');
|
||||
} else {
|
||||
parent::showContent();
|
||||
}
|
||||
}
|
||||
}
|
49
plugins/Activity/leavelistitem.php
Normal file
49
plugins/Activity/leavelistitem.php
Normal file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* List item for when you leave a group
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Cache
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* NoticeListItemAdapter for leave activities
|
||||
*
|
||||
* @category General
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class LeaveListItem extends SystemListItem
|
||||
{
|
||||
}
|
122
plugins/Activity/locale/Activity.pot
Normal file
122
plugins/Activity/locale/Activity.pot
Normal file
@@ -0,0 +1,122 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#: joinlistitem.php:64 ActivityPlugin.php:259
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#: ActivityPlugin.php:89
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#: ActivityPlugin.php:97
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#: ActivityPlugin.php:125
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#: ActivityPlugin.php:133
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#: ActivityPlugin.php:173
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#: ActivityPlugin.php:181
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#: ActivityPlugin.php:212
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#: ActivityPlugin.php:220
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#: ActivityPlugin.php:267
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#: ActivityPlugin.php:302
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#: ActivityPlugin.php:310
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
#: ActivityPlugin.php:427
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr ""
|
118
plugins/Activity/locale/ar/LC_MESSAGES/Activity.po
Normal file
118
plugins/Activity/locale/ar/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,118 @@
|
||||
# Translation of StatusNet - Activity to Arabic (العربية)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: DRIHEM
|
||||
# Author: OsamaK
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Arabic <https://translatewiki.net/wiki/Portal:ar>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ar\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=6; plural=(n == 0) ? 0 : ( (n == 1) ? 1 : ( (n == "
|
||||
"2) ? 2 : ( (n%100 >= 3 && n%100 <= 10) ? 3 : ( (n%100 >= 11 && n%100 <= "
|
||||
"99) ? 4 : 5 ) ) ) );\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> انضم لمجموعة <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> بدأ متابعة <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) بدأ متابعة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> توقف عن متابعة <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) توقف عن متابعة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> أعجبه <a href=\"%3$s\">مستجد %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) أعجبته حالة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> لم يعد يعجبه <a href=\"%3$s\">مستجد %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) لم تعد تعجبه حالة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) انضم لمجموعة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> غادر مجموعة <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) غادر مجموعة %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "يرسل إشعارات عند حدوث أنشطة إجتماعية."
|
120
plugins/Activity/locale/ca/LC_MESSAGES/Activity.po
Normal file
120
plugins/Activity/locale/ca/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,120 @@
|
||||
# Translation of StatusNet - Activity to Catalan (català)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toniher
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:28+0000\n"
|
||||
"Language-Team: Catalan <https://translatewiki.net/wiki/Portal:ca>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ca\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> s'ha unit al grup <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ha començat a seguir <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ha començat a seguir %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ha deixat de seguir <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ha deixat de seguir %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"A <a href=\"%1$s\">%2$s</a> li ha agradat l'actualització de <a href=\"%3$s"
|
||||
"\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "A %1$s (%2$s) li ha agradat l'estat de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"A <a href=\"%1$s\">%2$s</a> li ha deixat d'agradar l'actualització de <a "
|
||||
"href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "A %1$s (%2$s) li ha deixat d'agradar l'estat de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) s'ha unit al grup %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> ha deixat el grup <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ha deixat el grup %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Emet avisos quan passen activitats socials."
|
120
plugins/Activity/locale/de/LC_MESSAGES/Activity.po
Normal file
120
plugins/Activity/locale/de/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,120 @@
|
||||
# Translation of StatusNet - Activity to German (Deutsch)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Marcel083
|
||||
# Author: Tiin
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: German <https://translatewiki.net/wiki/Portal:de>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: de\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> hat die Gruppe <a href=\"%3$s\">%4$s</a> betreten."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> folgt jetzt <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) folgt jetzt %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> folgt jetzt nicht mehr <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) folgt jetzt nicht mehr %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> gefällt <a href=\"%3$s\">%4$s's Post</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) gefällt %3$s's Status (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> gefällt <a href=\"%3$s\">%4$s's Update</a> nicht "
|
||||
"mehr."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) gefällt %3$s's Status (%4$s) nicht mehr."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) hat die Gruppe %3$s (%4$s) betreten."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> hat die Gruppe <a href=\"%3$s\">%4$s</a> verlassen."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) hat die Gruppe %3$s (%4$s) verlassen."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Gibt Hinweise, wenn soziale Aktivitäten geschehen."
|
118
plugins/Activity/locale/es/LC_MESSAGES/Activity.po
Normal file
118
plugins/Activity/locale/es/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,118 @@
|
||||
# Translation of StatusNet - Activity to Spanish (español)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Erchache2000
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Spanish <https://translatewiki.net/wiki/Portal:es>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: es\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> se unió al grupo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> empieza a seguir <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) empieza a seguir %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> deja de seguir <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) deja de seguir %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> le gusta <a href=\"%3$s\">%4$s's actualizaciones</"
|
||||
"a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) le gusta el estado de %3$s's (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> deja de seguir las actualizaciones de <a href=\"%3"
|
||||
"$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s( %2$s ) dejó de seguir el estado de %3$s ( %4$s )."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s( %2$s ) se unió al grupo %3$s ( %4$s )."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> deja al grupo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s( %2$s ) deja al grupo %3$s ( %4$s )."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Emite mensajes cuando se producen actividades sociales."
|
124
plugins/Activity/locale/eu/LC_MESSAGES/Activity.po
Normal file
124
plugins/Activity/locale/eu/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,124 @@
|
||||
# Translation of StatusNet - Activity to Basque (euskara)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Artsuaga
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Basque <https://translatewiki.net/wiki/Portal:eu>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: eu\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> <a href=\"%3$s\">%4$s</a> taldekoa da orain."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> <a href=\"%3$s\">%4$s</a> jarraitzen hasi da."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) %3$s (%4$s) jarraitzen hasi da."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a>(e)k <a href=\"%3$s\">%4$s</a> jarraitzeari utzi "
|
||||
"dio."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s(e)k (%2$s) %3$s (%4$s) jarraitzeari utzi dio."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a>(e)k <a href=\"%3$s\">%4$s(r)en eguneraketa</a> "
|
||||
"atsegin du."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s(e)k (%2$s) %3$s(r)en egoera (%4$s) atsegin du."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a>(r)i ez zaio dagoeneko <a href=\"%3$s\">%4$s(r)en "
|
||||
"eguneraketa</a> atsegin."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s(r)i (%2$s) ez zaio dagoeneko %3$s(r)en egoera (%4$s) atsegin."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) %3$s (%4$s) taldera batu da."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a>(e)k <a href=\"%3$s\">%4$s</a> taldea utzi du."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s(e)k (%2$s) %3$s (%4$s) taldea utzi du."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr ""
|
||||
"Oharrak argitaratzen ditu iharduera bat dagoenean (lagun egin, taldekide "
|
||||
"izan, taldea utzi...)."
|
117
plugins/Activity/locale/fr/LC_MESSAGES/Activity.po
Normal file
117
plugins/Activity/locale/fr/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,117 @@
|
||||
# Translation of StatusNet - Activity to French (français)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Gomoko
|
||||
# Author: Jean-Frédéric
|
||||
# Author: Od1n
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> a rejoint le groupe <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> suit désormais <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) suit désormais %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> a cessé de suivre <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) a arrêté de suivre %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> a aimé <a href=\"%3$s\">%4$s's update</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) a aimé le statut de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> n'aime plus <a href=\"%3$s\">les mises à jour de %4"
|
||||
"$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) n'aime plus le statut de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) a rejoint le groupe %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> a quitté le groupe <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) a quitté le groupe %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Émettre des avis lorsque des activités sociales se produisent."
|
120
plugins/Activity/locale/gl/LC_MESSAGES/Activity.po
Normal file
120
plugins/Activity/locale/gl/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,120 @@
|
||||
# Translation of StatusNet - Activity to Galician (galego)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toliño
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Galician <https://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: gl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> uniuse ao grupo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> comezou a seguir a <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) comezou a seguir a %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> deixou de seguir a <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) deixou de seguir a %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> gustou da <a href=\"%3$s\">actualización de %4$s</"
|
||||
"a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) gustou do estado de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> deixou de gustar da <a href=\"%3$s\">actualización "
|
||||
"de %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) deixou de gustar do estado de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) uniuse ao grupo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> deixou o grupo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) deixou o grupo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Emite notificacións cando acontecen actividades sociais."
|
120
plugins/Activity/locale/ia/LC_MESSAGES/Activity.po
Normal file
120
plugins/Activity/locale/ia/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,120 @@
|
||||
# Translation of StatusNet - Activity to Interlingua (interlingua)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: McDutchie
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Interlingua <https://translatewiki.net/wiki/Portal:ia>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ia\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> adhereva al gruppo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> comenciava a sequer <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) comenciava a sequer %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> cessava de sequer <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) cessava de sequer %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> amava <a href=\"%3$s\">le actualisation de %4$s</"
|
||||
"a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) amava le stato de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> cessava de amar <a href=\"%3$s\">le actualisation "
|
||||
"de %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) cessava de amar le stato de %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) adhereva al gruppo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> quitava le gruppo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) quitava le gruppo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Emitte notificationes quando activitates social occurre."
|
118
plugins/Activity/locale/it/LC_MESSAGES/Activity.po
Normal file
118
plugins/Activity/locale/it/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,118 @@
|
||||
# Translation of StatusNet - Activity to Italian (italiano)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Ximo17
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> unisciti al gruppo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ha iniziato a seguire <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ha iniziato a seguire %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ha smesso di seguire <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ha smesso di seguire %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> piace <a href=\"%3$s\">l'aggiornamento di %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) piace lo stato di %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> non piace più <a href=\"%3$s\">l'aggiornamento di %"
|
||||
"4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) non piace più lo stato di %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) si è unito al gruppo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> è uscito dal gruppo <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) è uscito dal gruppo %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Emette avvisi quando avvengono le attività sociali."
|
116
plugins/Activity/locale/lt/LC_MESSAGES/Activity.po
Normal file
116
plugins/Activity/locale/lt/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,116 @@
|
||||
# Translation of StatusNet - Activity to Lithuanian (lietuvių)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Eitvys200
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Lithuanian <https://translatewiki.net/wiki/Portal:lt>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: lt\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
"2 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> prisijungė prie grupės <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> pradėjo sekti <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> nustojo sekti <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr ""
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) prisijungė prie grupės %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> paliko grupę <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) paliko grupę %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr ""
|
123
plugins/Activity/locale/mk/LC_MESSAGES/Activity.po
Normal file
123
plugins/Activity/locale/mk/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,123 @@
|
||||
# Translation of StatusNet - Activity to Macedonian (македонски)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Bjankuloski06
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Macedonian <https://translatewiki.net/wiki/Portal:mk>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: mk\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> се зачлени во групата <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> почна да го следи корисникот <a href=\"%3$s\">%4"
|
||||
"$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) почна да го следи корисникот %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> престана да го следи корисникот <a href=\"%3$s\">%4"
|
||||
"$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) престана да го следи корисникот %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ја бендиса <a href=\"%3$s\">објавата на %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) го бендиса статусот на %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> повеќе не ја бендисува <a href=\"%3$s\">објавата "
|
||||
"на %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) повеќе не го бендисува статусот на %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) се зачлени во групата %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> ја напушти групата <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) ја напушти групата %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Емитува известувања кога се одвиваат друштвени активности."
|
120
plugins/Activity/locale/nl/LC_MESSAGES/Activity.po
Normal file
120
plugins/Activity/locale/nl/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,120 @@
|
||||
# Translation of StatusNet - Activity to Dutch (Nederlands)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Siebrand
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:29+0000\n"
|
||||
"Language-Team: Dutch <https://translatewiki.net/wiki/Portal:nl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: nl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> is lid geworden van de groep <a href=\"%3$s\">%4"
|
||||
"$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> is <a href=\"%3$s\">%4$s</a> gaan volgen."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) is %3$s (%4$s) gaan volgen."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> volgt <a href=\"%3$s\">%4$s</a> niet langer."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) volgt %3$s (%4$s) niet langer."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> vindt de <a href=\"%3$s\">status van %4$s</a> leuk."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) vindt de status van %3$s leuk (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> vindt de <a href=\"%3$s\">status van %4$s</a> niet "
|
||||
"langer leuk."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) vindt de status van %3$s niet langer leuk (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) is lid geworden van de groep %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> heeft de groep <a href=\"%3$s\">%4$s</a> verlaten."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) heeft de groep %3$s verlaten (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Verstuurt mededelingen als sociale activiteiten gebeuren."
|
117
plugins/Activity/locale/pl/LC_MESSAGES/Activity.po
Normal file
117
plugins/Activity/locale/pl/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,117 @@
|
||||
# Translation of StatusNet - Activity to Polish (polski)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: BeginaFelicysym
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && "
|
||||
"(n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> dołączył do grupy <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> zaczął obserwować <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) zaczął obserwować %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> zakończył obserwację <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) zakończył obserwację %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> polubił <a href=\"%3$s\">aktualizację użytkownika %"
|
||||
"4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) polubił status (%4$s) użytkownika %3$s."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> przestał lubić <a href=\"%3$s\">aktualizację "
|
||||
"użytkownika %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) przestał lubić status (%4$s) użytkownika %3$s."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) dołączył do grupy %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> opuścił grupę <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) opuścił grupę %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Wysyła ogłoszenia, gdy się dzieją się zdarzenia towarzyskie."
|
121
plugins/Activity/locale/ru/LC_MESSAGES/Activity.po
Normal file
121
plugins/Activity/locale/ru/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,121 @@
|
||||
# Translation of StatusNet - Activity to Russian (русский)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Lockal
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Language-Team: Russian <https://translatewiki.net/wiki/Portal:ru>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ru\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-activity\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= "
|
||||
"2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> присоединился к группе <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, fuzzy, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> начал следить за <a href=\"%2$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) начал следить за %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> перестал следить за <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) перестал следить за %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> добавил <a href=\"%3$s\">обновление %4$s</a> в "
|
||||
"число любимых."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) добавил статус %3$s в число любимых (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"<a href=\"%1$s\">%2$s</a> убрал <a href=\"%3$s\">обновление %4$s</a> из "
|
||||
"числа любимых."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "%1$s (%2$s) убрал статус %3$s из числа любимых (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) присоединился к группе %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr "<a href=\"%1$s\">%2$s</a> покинул группу <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "%1$s (%2$s) покинул группу %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Выдаёт уведомления, когда происходит социальная деятельность."
|
121
plugins/Activity/locale/tl/LC_MESSAGES/Activity.po
Normal file
121
plugins/Activity/locale/tl/LC_MESSAGES/Activity.po
Normal file
@@ -0,0 +1,121 @@
|
||||
# Translation of StatusNet - Activity to Tagalog (Tagalog)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: AnakngAraw
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Activity\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-01-30 18:15:05+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Text for "joined list" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group home URL, %4$s is a group name.
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> joined the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"Sumali si <a href=\"%1$s\">%2$s</a> sa pangkat na <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> started following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"Nagsimulang sundan ni <a href=\"%1$s\">%2$s</a> si <a href=\"%3$s\">%4$s</a>."
|
||||
|
||||
#. TRANS: Text for "started following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) started following %3$s (%4$s)."
|
||||
msgstr "Nagsimulang sundan ni %1$s (%2$s) si %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a profile URL, %4$s is a profile name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> stopped following <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"Huminto si <a href=\"%1$s\">%2$s</a> sa pagsunod kay <a href=\"%3$s\">%4$s</"
|
||||
"a>."
|
||||
|
||||
#. TRANS: Text for "stopped following" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a profile name, %4$s is a profile URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped following %3$s (%4$s)."
|
||||
msgstr "Huminto si %1$s (%2$s) sa pagsunod kay %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> liked <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"Nagustuhan ni <a href=\"%1$s\">%2$s</a> ang <a href=\"%3$s\">pagsasapanahon "
|
||||
"ni %4$s</a>."
|
||||
|
||||
#. TRANS: Text for "liked" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) liked %3$s's status (%4$s)."
|
||||
msgstr "Nagustuhan ni %1$s (%2$s) ang katayuan ni %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a notice URL, %4$s is an author name.
|
||||
#, php-format
|
||||
msgid ""
|
||||
"<a href=\"%1$s\">%2$s</a> stopped liking <a href=\"%3$s\">%4$s's update</a>."
|
||||
msgstr ""
|
||||
"Huminto sa paggusto si <a href=\"%1$s\">%2$s</a> kay <a href=\"%3$s\">%4$s's "
|
||||
"update</a>."
|
||||
|
||||
#. TRANS: Text for "stopped liking" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is an author name, %4$s is a notice URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) stopped liking %3$s's status (%4$s)."
|
||||
msgstr "Huminto si %1$s (%2$s) sa paggusto ng katayuan ni %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "joined group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) joined the group %3$s (%4$s)."
|
||||
msgstr "Sumali si %1$s (%2$s) sa pangkat na %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile URL, %2$s is a profile name,
|
||||
#. TRANS: %3$s is a group URL, %4$s is a group name.
|
||||
#, php-format
|
||||
msgid "<a href=\"%1$s\">%2$s</a> left the group <a href=\"%3$s\">%4$s</a>."
|
||||
msgstr ""
|
||||
"Umalis si <a href=\"%1$s\">%2$s</a> mula sa pangkat na <a href=\"%3$s\">%4"
|
||||
"$s</a>."
|
||||
|
||||
#. TRANS: Text for "left group" item in activity plugin.
|
||||
#. TRANS: %1$s is a profile name, %2$s is a profile URL,
|
||||
#. TRANS: %3$s is a group name, %4$s is a group URL.
|
||||
#, php-format
|
||||
msgid "%1$s (%2$s) left the group %3$s (%4$s)."
|
||||
msgstr "Umalis si %1$s (%2$s) mula sa pangkat na %3$s (%4$s)."
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Emits notices when social activities happen."
|
||||
msgstr "Nagbubuga ng mga pabatid kapag nagaganap ang mga gawaing panlipunan."
|
89
plugins/Activity/systemlistitem.php
Normal file
89
plugins/Activity/systemlistitem.php
Normal file
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Superclass for system event items
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Activity
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* NoticeListItemAdapter for system activities
|
||||
*
|
||||
* @category General
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class SystemListItem extends NoticeListItemAdapter
|
||||
{
|
||||
/**
|
||||
* Show the activity
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showNotice()
|
||||
{
|
||||
$out = $this->nli->out;
|
||||
$out->elementStart('div', 'entry-title');
|
||||
$this->showContent();
|
||||
$out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showContent()
|
||||
{
|
||||
$notice = $this->nli->notice;
|
||||
$out = $this->nli->out;
|
||||
|
||||
// FIXME: get the actual data on the leave
|
||||
|
||||
$out->elementStart('div', 'system-activity');
|
||||
|
||||
$out->raw($notice->rendered);
|
||||
|
||||
$out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showNoticeOptions()
|
||||
{
|
||||
if (Event::handle('StartShowNoticeOptions', array($this))) {
|
||||
$user = common_current_user();
|
||||
if (!empty($user)) {
|
||||
$this->nli->out->elementStart('div', 'notice-options');
|
||||
$this->showFaveForm();
|
||||
$this->showReplyLink();
|
||||
$this->nli->out->elementEnd('div');
|
||||
}
|
||||
Event::handle('EndShowNoticeOptions', array($this));
|
||||
}
|
||||
}
|
||||
}
|
75
plugins/Activity/unfollowlistitem.php
Normal file
75
plugins/Activity/unfollowlistitem.php
Normal file
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Unfollow list item
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Activity
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* NoticeListItemAdapter for join activities
|
||||
*
|
||||
* @category General
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class UnfollowListItem extends SystemListItem
|
||||
{
|
||||
/**
|
||||
* Show the join activity
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
function showNotice()
|
||||
{
|
||||
$out = $this->nli->out;
|
||||
$out->elementStart('div', 'entry-title');
|
||||
$this->showContent();
|
||||
$out->elementEnd('div');
|
||||
}
|
||||
|
||||
function showContent()
|
||||
{
|
||||
$notice = $this->nli->notice;
|
||||
$out = $this->nli->out;
|
||||
|
||||
// FIXME: get the actual data on the leave
|
||||
|
||||
$out->elementStart('div', 'unfollow-activity');
|
||||
|
||||
$out->raw($notice->rendered);
|
||||
|
||||
$out->elementEnd('div');
|
||||
}
|
||||
}
|
293
plugins/ActivitySpam/ActivitySpamPlugin.php
Normal file
293
plugins/ActivitySpam/ActivitySpamPlugin.php
Normal file
@@ -0,0 +1,293 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011,2012, StatusNet, Inc.
|
||||
*
|
||||
* ActivitySpam Plugin
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011,2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check new notices with activity spam service.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011,2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
class ActivitySpamPlugin extends Plugin
|
||||
{
|
||||
public $server = null;
|
||||
public $hideSpam = false;
|
||||
|
||||
const REVIEWSPAM = 'ActivitySpamPlugin::REVIEWSPAM';
|
||||
const TRAINSPAM = 'ActivitySpamPlugin::TRAINSPAM';
|
||||
|
||||
/**
|
||||
* Initializer
|
||||
*
|
||||
* @return boolean hook value; true means continue processing, false means stop.
|
||||
*/
|
||||
function initialize()
|
||||
{
|
||||
$this->filter = new SpamFilter(common_config('activityspam', 'server'),
|
||||
common_config('activityspam', 'consumerkey'),
|
||||
common_config('activityspam', 'secret'));
|
||||
|
||||
$this->hideSpam = common_config('activityspam', 'hidespam');
|
||||
|
||||
// Let DB_DataObject find Spam_score
|
||||
|
||||
common_config_set('db', 'class_location',
|
||||
common_config('db', 'class_location') .':'.dirname(__FILE__));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Database schema setup
|
||||
*
|
||||
* @see Schema
|
||||
* @see ColumnDef
|
||||
*
|
||||
* @return boolean hook value; true means continue processing, false means stop.
|
||||
*/
|
||||
|
||||
function onCheckSchema()
|
||||
{
|
||||
$schema = Schema::get();
|
||||
$schema->ensureTable('spam_score', Spam_score::schemaDef());
|
||||
|
||||
Spam_score::upgrade();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load related modules when needed
|
||||
*
|
||||
* @param string $cls Name of the class to be loaded
|
||||
*
|
||||
* @return boolean hook value; true means continue processing, false means stop.
|
||||
*/
|
||||
|
||||
function onAutoload($cls)
|
||||
{
|
||||
$dir = dirname(__FILE__);
|
||||
|
||||
switch ($cls)
|
||||
{
|
||||
case 'TrainAction':
|
||||
case 'SpamAction':
|
||||
include_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php';
|
||||
return false;
|
||||
case 'Spam_score':
|
||||
include_once $dir . '/'.$cls.'.php';
|
||||
return false;
|
||||
case 'SpamFilter':
|
||||
case 'SpamNoticeStream':
|
||||
case 'TrainSpamForm':
|
||||
case 'TrainHamForm':
|
||||
include_once $dir . '/'.strtolower($cls).'.php';
|
||||
return false;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* When a notice is saved, check its spam score
|
||||
*
|
||||
* @param Notice $notice Notice that was just saved
|
||||
*
|
||||
* @return boolean hook value; true means continue processing, false means stop.
|
||||
*/
|
||||
|
||||
function onEndNoticeSave($notice)
|
||||
{
|
||||
try {
|
||||
|
||||
$result = $this->filter->test($notice);
|
||||
|
||||
$score = Spam_score::saveNew($notice, $result);
|
||||
|
||||
$this->log(LOG_INFO, "Notice " . $notice->id . " has spam score " . $score->score);
|
||||
|
||||
} catch (Exception $e) {
|
||||
// Log but continue
|
||||
$this->log(LOG_ERR, $e->getMessage());
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function onNoticeDeleteRelated($notice) {
|
||||
$score = Spam_score::staticGet('notice_id', $notice->id);
|
||||
if (!empty($score)) {
|
||||
$score->delete();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onUserRightsCheck($profile, $right, &$result) {
|
||||
switch ($right) {
|
||||
case self::REVIEWSPAM:
|
||||
case self::TRAINSPAM:
|
||||
$result = ($profile->hasRole(Profile_role::MODERATOR) || $profile->hasRole('modhelper'));
|
||||
return false;
|
||||
default:
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
function onGetSpamFilter(&$filter) {
|
||||
$filter = $this->filter;
|
||||
return false;
|
||||
}
|
||||
|
||||
function onEndShowNoticeOptionItems($nli)
|
||||
{
|
||||
$profile = Profile::current();
|
||||
|
||||
if (!empty($profile) && $profile->hasRight(self::TRAINSPAM)) {
|
||||
|
||||
$notice = $nli->getNotice();
|
||||
$out = $nli->getOut();
|
||||
|
||||
if (!empty($notice)) {
|
||||
|
||||
$score = Spam_score::staticGet('notice_id', $notice->id);
|
||||
|
||||
if (empty($score)) {
|
||||
// If it's empty, we can train it.
|
||||
$form = new TrainSpamForm($out, $notice);
|
||||
$form->show();
|
||||
} else if ($score->is_spam) {
|
||||
$form = new TrainHamForm($out, $notice);
|
||||
$form->show();
|
||||
} else if (!$score->is_spam) {
|
||||
$form = new TrainSpamForm($out, $notice);
|
||||
$form->show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Map URLs to actions
|
||||
*
|
||||
* @param Net_URL_Mapper $m path-to-action mapper
|
||||
*
|
||||
* @return boolean hook value; true means continue processing, false means stop.
|
||||
*/
|
||||
|
||||
function onRouterInitialized($m)
|
||||
{
|
||||
$m->connect('main/train/spam',
|
||||
array('action' => 'train', 'category' => 'spam'));
|
||||
$m->connect('main/train/ham',
|
||||
array('action' => 'train', 'category' => 'ham'));
|
||||
$m->connect('main/spam',
|
||||
array('action' => 'spam'));
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndShowStyles($action)
|
||||
{
|
||||
$action->element('style', null,
|
||||
'.form-train-spam input.submit { background: url('.$this->path('icons/bullet_black.png').') no-repeat 0px 0px } ' . "\n" .
|
||||
'.form-train-ham input.submit { background: url('.$this->path('icons/exclamation.png').') no-repeat 0px 0px } ');
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndPublicGroupNav($nav)
|
||||
{
|
||||
$user = common_current_user();
|
||||
|
||||
if (!empty($user) && $user->hasRight(self::REVIEWSPAM)) {
|
||||
$nav->out->menuItem(common_local_url('spam'),
|
||||
_m('MENU','Spam'),
|
||||
// TRANS: Menu item title in search group navigation panel.
|
||||
_('Notices marked as spam'),
|
||||
$nav->actionName == 'spam',
|
||||
'nav_timeline_spam');
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function onPluginVersion(&$versions)
|
||||
{
|
||||
$versions[] = array('name' => 'ActivitySpam',
|
||||
'version' => STATUSNET_VERSION,
|
||||
'author' => 'Evan Prodromou',
|
||||
'homepage' => 'http://status.net/wiki/Plugin:ActivitySpam',
|
||||
'description' =>
|
||||
_m('Test notices against the Activity Spam service.'));
|
||||
return true;
|
||||
}
|
||||
|
||||
function onEndNoticeInScope($notice, $profile, &$bResult)
|
||||
{
|
||||
if ($this->hideSpam) {
|
||||
if ($bResult) {
|
||||
|
||||
$score = Spam_score::staticGet('notice_id', $notice->id);
|
||||
|
||||
if (!empty($score) && $score->is_spam) {
|
||||
if (empty($profile) ||
|
||||
($profile->id !== $notice->profile_id &&
|
||||
!$profile->hasRight(self::REVIEWSPAM))) {
|
||||
$bResult = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Pre-cache our spam scores if needed.
|
||||
*/
|
||||
function onEndNoticeListPrefill(&$notices, &$profiles, $avatarSize) {
|
||||
if ($this->hideSpam) {
|
||||
foreach ($notices as $notice) {
|
||||
$ids[] = $notice->id;
|
||||
}
|
||||
Memcached_DataObject::multiGet('Spam_score', 'notice_id', $ids);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
216
plugins/ActivitySpam/Spam_score.php
Normal file
216
plugins/ActivitySpam/Spam_score.php
Normal file
@@ -0,0 +1,216 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Score of a notice by activity spam service
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Score of a notice per the activity spam service
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
|
||||
* @link http://status.net/
|
||||
*
|
||||
* @see DB_DataObject
|
||||
*/
|
||||
|
||||
class Spam_score extends Managed_DataObject
|
||||
{
|
||||
const MAX_SCALE = 10000;
|
||||
public $__table = 'spam_score'; // table name
|
||||
|
||||
public $notice_id; // int
|
||||
public $score; // float
|
||||
public $created; // datetime
|
||||
|
||||
/**
|
||||
* Get an instance by key
|
||||
*
|
||||
* @param string $k Key to use to lookup (usually 'notice_id' for this class)
|
||||
* @param mixed $v Value to lookup
|
||||
*
|
||||
* @return Spam_score object found, or null for no hits
|
||||
*
|
||||
*/
|
||||
function staticGet($k, $v=null)
|
||||
{
|
||||
return Managed_DataObject::staticGet('Spam_score', $k, $v);
|
||||
}
|
||||
|
||||
function saveNew($notice, $result) {
|
||||
|
||||
$score = new Spam_score();
|
||||
|
||||
$score->notice_id = $notice->id;
|
||||
$score->score = $result->probability;
|
||||
$score->is_spam = $result->isSpam;
|
||||
$score->scaled = Spam_score::scale($score->score);
|
||||
$score->created = common_sql_now();
|
||||
$score->notice_created = $notice->created;
|
||||
|
||||
$score->insert();
|
||||
|
||||
self::blow('spam_score:notice_ids');
|
||||
|
||||
return $score;
|
||||
}
|
||||
|
||||
function save($notice, $result) {
|
||||
|
||||
$orig = null;
|
||||
$score = Spam_score::staticGet('notice_id', $notice->id);
|
||||
|
||||
if (empty($score)) {
|
||||
$score = new Spam_score();
|
||||
} else {
|
||||
$orig = clone($score);
|
||||
}
|
||||
|
||||
$score->notice_id = $notice->id;
|
||||
$score->score = $result->probability;
|
||||
$score->is_spam = $result->isSpam;
|
||||
$score->scaled = Spam_score::scale($score->score);
|
||||
$score->created = common_sql_now();
|
||||
$score->notice_created = $notice->created;
|
||||
|
||||
if (empty($orig)) {
|
||||
$score->insert();
|
||||
} else {
|
||||
$score->update($orig);
|
||||
}
|
||||
|
||||
self::blow('spam_score:notice_ids');
|
||||
|
||||
return $score;
|
||||
}
|
||||
|
||||
function delete()
|
||||
{
|
||||
self::blow('spam_score:notice_ids');
|
||||
self::blow('spam_score:notice_ids;last');
|
||||
parent::delete();
|
||||
}
|
||||
|
||||
/**
|
||||
* The One True Thingy that must be defined and declared.
|
||||
*/
|
||||
public static function schemaDef()
|
||||
{
|
||||
return array(
|
||||
'description' => 'score of the notice per activityspam',
|
||||
'fields' => array(
|
||||
'notice_id' => array('type' => 'int',
|
||||
'not null' => true,
|
||||
'description' => 'notice getting scored'),
|
||||
'score' => array('type' => 'double',
|
||||
'not null' => true,
|
||||
'description' => 'score for the notice (0.0, 1.0)'),
|
||||
'scaled' => array('type' => 'int',
|
||||
'description' => 'scaled score for the notice (0, 10000)'),
|
||||
'is_spam' => array('type' => 'tinyint',
|
||||
'description' => 'flag for spamosity'),
|
||||
'created' => array('type' => 'datetime',
|
||||
'not null' => true,
|
||||
'description' => 'date this record was created'),
|
||||
'notice_created' => array('type' => 'datetime',
|
||||
'description' => 'date the notice was created'),
|
||||
),
|
||||
'primary key' => array('notice_id'),
|
||||
'foreign keys' => array(
|
||||
'spam_score_notice_id_fkey' => array('notice', array('notice_id' => 'id')),
|
||||
),
|
||||
'indexes' => array(
|
||||
'spam_score_created_idx' => array('created'),
|
||||
'spam_score_scaled_idx' => array('scaled'),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
public static function upgrade()
|
||||
{
|
||||
Spam_score::upgradeScaled();
|
||||
Spam_score::upgradeIsSpam();
|
||||
Spam_score::upgradeNoticeCreated();
|
||||
}
|
||||
|
||||
protected static function upgradeScaled()
|
||||
{
|
||||
$score = new Spam_score();
|
||||
$score->whereAdd('scaled IS NULL');
|
||||
|
||||
if ($score->find()) {
|
||||
while ($score->fetch()) {
|
||||
$orig = clone($score);
|
||||
$score->scaled = Spam_score::scale($score->score);
|
||||
$score->update($orig);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected static function upgradeIsSpam()
|
||||
{
|
||||
$score = new Spam_score();
|
||||
$score->whereAdd('is_spam IS NULL');
|
||||
|
||||
if ($score->find()) {
|
||||
while ($score->fetch()) {
|
||||
$orig = clone($score);
|
||||
$score->is_spam = ($score->score >= 0.90) ? 1 : 0;
|
||||
$score->update($orig);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected static function upgradeNoticeCreated()
|
||||
{
|
||||
$score = new Spam_score();
|
||||
$score->whereAdd('notice_created IS NULL');
|
||||
|
||||
if ($score->find()) {
|
||||
while ($score->fetch()) {
|
||||
$notice = Notice::staticGet('id', $score->notice_id);
|
||||
if (!empty($notice)) {
|
||||
$orig = clone($score);
|
||||
$score->notice_created = $notice->created;
|
||||
$score->update($orig);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static function scale($score)
|
||||
{
|
||||
$raw = round($score * Spam_score::MAX_SCALE);
|
||||
return max(0, min(Spam_score::MAX_SCALE, $raw));
|
||||
}
|
||||
}
|
BIN
plugins/ActivitySpam/icons/bullet_black.png
Normal file
BIN
plugins/ActivitySpam/icons/bullet_black.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 211 B |
BIN
plugins/ActivitySpam/icons/exclamation.png
Normal file
BIN
plugins/ActivitySpam/icons/exclamation.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 701 B |
26
plugins/ActivitySpam/locale/ActivitySpam.pot
Normal file
26
plugins/ActivitySpam/locale/ActivitySpam.pot
Normal file
@@ -0,0 +1,26 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ActivitySpamPlugin.php:240
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr ""
|
||||
|
||||
#: ActivitySpamPlugin.php:257
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr ""
|
26
plugins/ActivitySpam/locale/de/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/de/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to German (Deutsch)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: PtM
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Nachrichten am Activity-Spam-Service testen"
|
26
plugins/ActivitySpam/locale/es/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/es/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Spanish (español)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Armando-Martin
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Probar los avisos contra el servicio de actividad de spam."
|
26
plugins/ActivitySpam/locale/fr/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/fr/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to French (français)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Gomoko
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Courrier polluant"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Avis de test à l'encontre du service d'activité du courrier polluant."
|
26
plugins/ActivitySpam/locale/gl/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/gl/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Galician (galego)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toliño
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Probar os avisos co servizo de actividade de spam."
|
26
plugins/ActivitySpam/locale/ia/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/ia/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Interlingua (interlingua)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: McDutchie
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Testar avisos contra le servicio Activity Spam."
|
27
plugins/ActivitySpam/locale/it/LC_MESSAGES/ActivitySpam.po
Normal file
27
plugins/ActivitySpam/locale/it/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,27 @@
|
||||
# Translation of StatusNet - ActivitySpam to Italian (italiano)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: GreenFox
|
||||
# Author: Ximo17
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Avvisi di prova contro il servizio Spam Activity."
|
26
plugins/ActivitySpam/locale/mk/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/mk/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Macedonian (македонски)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Bjankuloski06
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Спам"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Испробување на забелешките со Службата за спам во активностите."
|
26
plugins/ActivitySpam/locale/nl/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/nl/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Dutch (Nederlands)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Siebrand
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Spam"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Mededelingen testen tegen de dienst Activity Spam."
|
26
plugins/ActivitySpam/locale/tl/LC_MESSAGES/ActivitySpam.po
Normal file
26
plugins/ActivitySpam/locale/tl/LC_MESSAGES/ActivitySpam.po
Normal file
@@ -0,0 +1,26 @@
|
||||
# Translation of StatusNet - ActivitySpam to Tagalog (Tagalog)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: AnakngAraw
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - ActivitySpam\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:30+0000\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2012-06-18 00:06:35+0000\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
msgctxt "MENU"
|
||||
msgid "Spam"
|
||||
msgstr "Manlulusob"
|
||||
|
||||
msgid "Test notices against the Activity Spam service."
|
||||
msgstr "Mga pabatid na pangsubok laban sa palingkuran ng Gawain ng Manlulusob."
|
120
plugins/ActivitySpam/scripts/silencespammer.php
Normal file
120
plugins/ActivitySpam/scripts/silencespammer.php
Normal file
@@ -0,0 +1,120 @@
|
||||
<?php
|
||||
/*
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2013 StatusNet, Inc.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
|
||||
|
||||
$shortoptions = 'i:n:a';
|
||||
$longoptions = array('id=', 'nickname=', 'all');
|
||||
|
||||
$helptext = <<<END_OF_SILENCESPAMMER_HELP
|
||||
silencespammer.php [options]
|
||||
Users who post a lot of spam get silenced
|
||||
|
||||
-i --id ID of user to test and silence
|
||||
-n --nickname nickname of the user to test and silence
|
||||
-a --all All users
|
||||
END_OF_SILENCESPAMMER_HELP;
|
||||
|
||||
require_once INSTALLDIR.'/scripts/commandline.inc';
|
||||
|
||||
function testAllUsers($filter, $minimum, $percent) {
|
||||
$found = false;
|
||||
$offset = 0;
|
||||
$limit = 1000;
|
||||
|
||||
do {
|
||||
|
||||
$user = new User();
|
||||
$user->orderBy('created');
|
||||
$user->limit($offset, $limit);
|
||||
|
||||
$found = $user->find();
|
||||
|
||||
if ($found) {
|
||||
while ($user->fetch()) {
|
||||
try {
|
||||
silencespammer($filter, $user, $minimum, $percent);
|
||||
} catch (Exception $e) {
|
||||
printfnq("ERROR testing user %s\n: %s", $user->nickname, $e->getMessage());
|
||||
}
|
||||
}
|
||||
$offset += $found;
|
||||
}
|
||||
|
||||
} while ($found > 0);
|
||||
}
|
||||
|
||||
function silencespammer($filter, $user, $minimum, $percent) {
|
||||
|
||||
printfnq("Testing user %s\n", $user->nickname);
|
||||
|
||||
$profile = Profile::staticGet('id', $user->id);
|
||||
|
||||
if ($profile->isSilenced()) {
|
||||
printfnq("Already silenced %s\n", $user->nickname);
|
||||
return;
|
||||
}
|
||||
|
||||
$cnt = $profile->noticeCount();
|
||||
|
||||
if ($cnt < $minimum) {
|
||||
printfnq("Only %d notices posted (minimum %d); skipping\n", $cnt, $minimum);
|
||||
return;
|
||||
}
|
||||
|
||||
$ss = new Spam_score();
|
||||
|
||||
$ss->query(sprintf("SELECT count(*) as spam_count ".
|
||||
"FROM notice join spam_score on notice.id = spam_score.notice_id ".
|
||||
"WHERE notice.profile_id = %d AND spam_score.is_spam = 1", $profile->id));
|
||||
|
||||
while ($ss->fetch()) {
|
||||
$spam_count = $ss->spam_count;
|
||||
}
|
||||
|
||||
$spam_percent = ($spam_count * 100.0 / $cnt);
|
||||
|
||||
if ($spam_percent > $percent) {
|
||||
printfnq("Silencing user %s (%d/%d = %0.2f%% spam)\n", $user->nickname, $spam_count, $cnt, $spam_percent);
|
||||
try {
|
||||
$profile->silence();
|
||||
} catch(Exception $e) {
|
||||
printfnq("Error: %s", $e->getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
$filter = null;
|
||||
$minimum = 5;
|
||||
$percent = 80;
|
||||
Event::handle('GetSpamFilter', array(&$filter));
|
||||
if (empty($filter)) {
|
||||
throw new Exception(_("No spam filter."));
|
||||
}
|
||||
if (have_option('a', 'all')) {
|
||||
testAllUsers($filter, $minimum, $percent);
|
||||
} else {
|
||||
$user = getUser();
|
||||
silencespammer($filter, $user, $minimum, $percent);
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
print $e->getMessage()."\n";
|
||||
exit(1);
|
||||
}
|
105
plugins/ActivitySpam/scripts/testuser.php
Normal file
105
plugins/ActivitySpam/scripts/testuser.php
Normal file
@@ -0,0 +1,105 @@
|
||||
<?php
|
||||
/*
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012 StatusNet, Inc.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
|
||||
|
||||
$shortoptions = 'i:n:a';
|
||||
$longoptions = array('id=', 'nickname=', 'all');
|
||||
|
||||
$helptext = <<<END_OF_TESTUSER_HELP
|
||||
testuser.php [options]
|
||||
Test user activities against the spam filter
|
||||
|
||||
-i --id ID of user to export
|
||||
-n --nickname nickname of the user to export
|
||||
-a --all All users
|
||||
END_OF_TESTUSER_HELP;
|
||||
|
||||
require_once INSTALLDIR.'/scripts/commandline.inc';
|
||||
|
||||
function testAllUsers($filter) {
|
||||
$found = false;
|
||||
$offset = 0;
|
||||
$limit = 1000;
|
||||
|
||||
do {
|
||||
|
||||
$user = new User();
|
||||
$user->orderBy('created');
|
||||
$user->limit($offset, $limit);
|
||||
|
||||
$found = $user->find();
|
||||
|
||||
if ($found) {
|
||||
while ($user->fetch()) {
|
||||
try {
|
||||
testUser($filter, $user);
|
||||
} catch (Exception $e) {
|
||||
printfnq("ERROR testing user %s\n: %s", $user->nickname, $e->getMessage());
|
||||
}
|
||||
}
|
||||
$offset += $found;
|
||||
}
|
||||
|
||||
} while ($found > 0);
|
||||
}
|
||||
|
||||
function testUser($filter, $user) {
|
||||
|
||||
printfnq("Testing user %s\n", $user->nickname);
|
||||
|
||||
$profile = Profile::staticGet('id', $user->id);
|
||||
|
||||
$str = new ProfileNoticeStream($profile, $profile);
|
||||
|
||||
$offset = 0;
|
||||
$limit = 100;
|
||||
|
||||
do {
|
||||
$notice = $str->getNotices($offset, $limit);
|
||||
while ($notice->fetch()) {
|
||||
try {
|
||||
printfv("Testing notice %d...", $notice->id);
|
||||
$result = $filter->test($notice);
|
||||
Spam_score::save($notice, $result);
|
||||
printfv("%s\n", ($result->isSpam) ? "SPAM" : "HAM");
|
||||
} catch (Exception $e) {
|
||||
printfnq("ERROR testing notice %d: %s\n", $notice->id, $e->getMessage());
|
||||
}
|
||||
}
|
||||
$offset += $notice->N;
|
||||
} while ($notice->N > 0);
|
||||
}
|
||||
|
||||
try {
|
||||
$filter = null;
|
||||
Event::handle('GetSpamFilter', array(&$filter));
|
||||
if (empty($filter)) {
|
||||
throw new Exception(_("No spam filter."));
|
||||
}
|
||||
if (have_option('a', 'all')) {
|
||||
testAllUsers($filter);
|
||||
} else {
|
||||
$user = getUser();
|
||||
testUser($filter, $user);
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
print $e->getMessage()."\n";
|
||||
exit(1);
|
||||
}
|
81
plugins/ActivitySpam/scripts/trainuser.php
Normal file
81
plugins/ActivitySpam/scripts/trainuser.php
Normal file
@@ -0,0 +1,81 @@
|
||||
<?php
|
||||
/*
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012 StatusNet, Inc.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
|
||||
|
||||
$shortoptions = 'i:n:t:';
|
||||
$longoptions = array('id=', 'nickname=', 'category=');
|
||||
|
||||
$helptext = <<<END_OF_TRAINUSER_HELP
|
||||
trainuser.php [options]
|
||||
Train user activities against the spam filter
|
||||
|
||||
-i --id ID of user to export
|
||||
-n --nickname nickname of the user to export
|
||||
-t --category Category; one of "spam" or "ham"
|
||||
|
||||
END_OF_TRAINUSER_HELP;
|
||||
|
||||
require_once INSTALLDIR.'/scripts/commandline.inc';
|
||||
|
||||
function trainUser($filter, $user, $category) {
|
||||
|
||||
printfnq("Training user %s\n", $user->nickname);
|
||||
|
||||
$profile = Profile::staticGet('id', $user->id);
|
||||
|
||||
$str = new ProfileNoticeStream($profile, $profile);
|
||||
|
||||
$offset = 0;
|
||||
$limit = 100;
|
||||
|
||||
do {
|
||||
$notice = $str->getNotices($offset, $limit);
|
||||
while ($notice->fetch()) {
|
||||
try {
|
||||
printfv("Training notice %d...", $notice->id);
|
||||
$filter->trainOnError($notice, $category);
|
||||
$result = $filter->test($notice);
|
||||
$score = Spam_score::save($notice, $result);
|
||||
printfv("%s\n", ($result->isSpam) ? "SPAM" : "HAM");
|
||||
} catch (Exception $e) {
|
||||
printfnq("ERROR training notice %d\n: %s", $notice->id, $e->getMessage());
|
||||
}
|
||||
}
|
||||
$offset += $notice->N;
|
||||
} while ($notice->N > 0);
|
||||
}
|
||||
|
||||
try {
|
||||
$filter = null;
|
||||
Event::handle('GetSpamFilter', array(&$filter));
|
||||
if (empty($filter)) {
|
||||
throw new Exception(_("No spam filter."));
|
||||
}
|
||||
$user = getUser();
|
||||
$category = get_option_value('t', 'category');
|
||||
if ($category !== SpamFilter::HAM &&
|
||||
$category !== SpamFilter::SPAM) {
|
||||
throw new Exception(_("No such category."));
|
||||
}
|
||||
trainUser($filter, $user, $category);
|
||||
} catch (Exception $e) {
|
||||
print $e->getMessage()."\n";
|
||||
exit(1);
|
||||
}
|
165
plugins/ActivitySpam/spam.php
Normal file
165
plugins/ActivitySpam/spam.php
Normal file
@@ -0,0 +1,165 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012, StatusNet, Inc.
|
||||
*
|
||||
* Stream of latest spam messages
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
require_once INSTALLDIR.'/lib/noticelist.php';
|
||||
|
||||
/**
|
||||
* SpamAction
|
||||
*
|
||||
* Shows the latest spam on the service
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class SpamAction extends Action
|
||||
{
|
||||
var $page = null;
|
||||
var $notices = null;
|
||||
|
||||
function title() {
|
||||
return _("Latest Spam");
|
||||
}
|
||||
|
||||
/**
|
||||
* For initializing members of the class.
|
||||
*
|
||||
* @param array $argarray misc. arguments
|
||||
*
|
||||
* @return boolean true
|
||||
*/
|
||||
|
||||
function prepare($argarray)
|
||||
{
|
||||
parent::prepare($argarray);
|
||||
|
||||
$this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1;
|
||||
|
||||
// User must be logged in.
|
||||
|
||||
$user = common_current_user();
|
||||
|
||||
if (empty($user)) {
|
||||
throw new ClientException(_("You must be logged in to review."), 403);
|
||||
}
|
||||
|
||||
// User must have the right to review spam
|
||||
|
||||
if (!$user->hasRight(ActivitySpamPlugin::REVIEWSPAM)) {
|
||||
throw new ClientException(_('You cannot review spam on this site.'), 403);
|
||||
}
|
||||
|
||||
$stream = new SpamNoticeStream($user->getProfile());
|
||||
|
||||
$this->notices = $stream->getNotices(($this->page-1)*NOTICES_PER_PAGE,
|
||||
NOTICES_PER_PAGE + 1);
|
||||
|
||||
if($this->page > 1 && $this->notices->N == 0) {
|
||||
throw new ClientException(_('No such page.'), 404);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler method
|
||||
*
|
||||
* @param array $argarray is ignored since it's now passed in in prepare()
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function handle($argarray=null)
|
||||
{
|
||||
parent::handle($args);
|
||||
|
||||
$this->showPage();
|
||||
}
|
||||
|
||||
/**
|
||||
* Fill the content area
|
||||
*
|
||||
* Shows a list of the notices in the public stream, with some pagination
|
||||
* controls.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function showContent()
|
||||
{
|
||||
$nl = new NoticeList($this->notices, $this);
|
||||
|
||||
$cnt = $nl->show();
|
||||
|
||||
if ($cnt == 0) {
|
||||
$this->showEmptyList();
|
||||
}
|
||||
|
||||
$this->pagination($this->page > 1,
|
||||
$cnt > NOTICES_PER_PAGE,
|
||||
$this->page,
|
||||
'spam');
|
||||
}
|
||||
|
||||
function showEmptyList()
|
||||
{
|
||||
// TRANS: Text displayed for public feed when there are no public notices.
|
||||
$message = _('This is the timeline of spam messages for %%site.name%% but none have been detected yet.');
|
||||
|
||||
$this->elementStart('div', 'guide');
|
||||
$this->raw(common_markup_to_html($message));
|
||||
$this->elementEnd('div');
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if read only.
|
||||
*
|
||||
* MAY override
|
||||
*
|
||||
* @param array $args other arguments
|
||||
*
|
||||
* @return boolean is read only action?
|
||||
*/
|
||||
|
||||
function isReadOnly($args)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
171
plugins/ActivitySpam/spamfilter.php
Normal file
171
plugins/ActivitySpam/spamfilter.php
Normal file
@@ -0,0 +1,171 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012, StatusNet, Inc.
|
||||
*
|
||||
* Spam filter class
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Spam filter class
|
||||
*
|
||||
* Local proxy for remote filter
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class SpamFilter extends OAuthClient {
|
||||
|
||||
const HAM = 'ham';
|
||||
const SPAM = 'spam';
|
||||
|
||||
public $server;
|
||||
|
||||
function __construct($server, $consumerKey, $secret) {
|
||||
parent::__construct($consumerKey, $secret);
|
||||
$this->server = $server;
|
||||
}
|
||||
|
||||
protected function toActivity($notice) {
|
||||
// FIXME: need this to autoload ActivityStreamsMediaLink
|
||||
$doc = new ActivityStreamJSONDocument();
|
||||
|
||||
$activity = $notice->asActivity(null);
|
||||
|
||||
return $activity;
|
||||
}
|
||||
|
||||
public function test($notice) {
|
||||
|
||||
$activity = $this->toActivity($notice);
|
||||
return $this->testActivity($activity);
|
||||
}
|
||||
|
||||
public function testActivity($activity) {
|
||||
|
||||
$response = $this->postJSON($this->server . "/is-this-spam", $activity->asArray());
|
||||
|
||||
$result = json_decode($response->getBody());
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function train($notice, $category) {
|
||||
|
||||
$activity = $this->toActivity($notice);
|
||||
return $this->trainActivity($activity, $category);
|
||||
|
||||
}
|
||||
|
||||
public function trainActivity($activity, $category) {
|
||||
|
||||
switch ($category) {
|
||||
case self::HAM:
|
||||
$endpoint = '/this-is-ham';
|
||||
break;
|
||||
case self::SPAM:
|
||||
$endpoint = '/this-is-spam';
|
||||
break;
|
||||
default:
|
||||
throw new Exception("Unknown category: " + $category);
|
||||
}
|
||||
|
||||
$response = $this->postJSON($this->server . $endpoint, $activity->asArray());
|
||||
|
||||
// We don't do much with the results
|
||||
return true;
|
||||
}
|
||||
|
||||
public function trainOnError($notice, $category) {
|
||||
|
||||
$activity = $this->toActivity($notice);
|
||||
|
||||
return $this->trainActivityOnError($activity, $category);
|
||||
}
|
||||
|
||||
public function trainActivityOnError($activity, $category) {
|
||||
|
||||
$result = $this->testActivity($activity);
|
||||
|
||||
if (($category === self::SPAM && $result->isSpam) ||
|
||||
($category === self::HAM && !$result->isSpam)) {
|
||||
return true;
|
||||
} else {
|
||||
return $this->trainActivity($activity, $category);
|
||||
}
|
||||
}
|
||||
|
||||
function postJSON($url, $body)
|
||||
{
|
||||
$request = OAuthRequest::from_consumer_and_token($this->consumer,
|
||||
$this->token,
|
||||
'POST',
|
||||
$url);
|
||||
|
||||
$request->sign_request($this->sha1_method,
|
||||
$this->consumer,
|
||||
$this->token);
|
||||
|
||||
$hclient = new HTTPClient($url);
|
||||
|
||||
$hclient->setConfig(array('connect_timeout' => 120,
|
||||
'timeout' => 120,
|
||||
'follow_redirects' => true,
|
||||
'ssl_verify_peer' => false,
|
||||
'ssl_verify_host' => false));
|
||||
|
||||
$hclient->setMethod(HTTP_Request2::METHOD_POST);
|
||||
$hclient->setBody(json_encode($body));
|
||||
$hclient->setHeader('Content-Type', 'application/json');
|
||||
$hclient->setHeader($request->to_header());
|
||||
|
||||
// Twitter is strict about accepting invalid "Expect" headers
|
||||
// No reason not to clear it still here -ESP
|
||||
|
||||
$hclient->setHeader('Expect', '');
|
||||
|
||||
try {
|
||||
$response = $hclient->send();
|
||||
$code = $response->getStatus();
|
||||
if (!$response->isOK()) {
|
||||
throw new OAuthClientException($response->getBody(), $code);
|
||||
}
|
||||
return $response;
|
||||
} catch (Exception $e) {
|
||||
throw new OAuthClientException($e->getMessage(), $e->getCode());
|
||||
}
|
||||
}
|
||||
}
|
101
plugins/ActivitySpam/spamnoticestream.php
Normal file
101
plugins/ActivitySpam/spamnoticestream.php
Normal file
@@ -0,0 +1,101 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012, StatusNet, Inc.
|
||||
*
|
||||
* Spam notice stream
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Spam notice stream
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class SpamNoticeStream extends ScopingNoticeStream
|
||||
{
|
||||
function __construct($tag, $profile = -1)
|
||||
{
|
||||
if (is_int($profile) && $profile == -1) {
|
||||
$profile = Profile::current();
|
||||
}
|
||||
parent::__construct(new CachingNoticeStream(new RawSpamNoticeStream(),
|
||||
'spam_score:notice_ids'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Raw stream of spammy notices
|
||||
*
|
||||
* @category Stream
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class RawSpamNoticeStream extends NoticeStream
|
||||
{
|
||||
function getNoticeIds($offset, $limit, $since_id, $max_id)
|
||||
{
|
||||
$ss = new Spam_score();
|
||||
|
||||
$ss->is_spam = 1;
|
||||
|
||||
$ss->selectAdd();
|
||||
$ss->selectAdd('notice_id');
|
||||
|
||||
Notice::addWhereSinceId($ss, $since_id, 'notice_id');
|
||||
Notice::addWhereMaxId($ss, $max_id, 'notice_id');
|
||||
|
||||
$ss->orderBy('notice_created DESC, notice_id DESC');
|
||||
|
||||
if (!is_null($offset)) {
|
||||
$ss->limit($offset, $limit);
|
||||
}
|
||||
|
||||
$ids = array();
|
||||
|
||||
if ($ss->find()) {
|
||||
while ($ss->fetch()) {
|
||||
$ids[] = $ss->notice_id;
|
||||
}
|
||||
}
|
||||
|
||||
return $ids;
|
||||
}
|
||||
}
|
155
plugins/ActivitySpam/train.php
Normal file
155
plugins/ActivitySpam/train.php
Normal file
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2012, StatusNet, Inc.
|
||||
*
|
||||
* Train a notice as spam
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Train a notice as spam
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2012 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class TrainAction extends Action
|
||||
{
|
||||
protected $notice = null;
|
||||
protected $filter = null;
|
||||
protected $category = null;
|
||||
|
||||
/**
|
||||
* For initializing members of the class.
|
||||
*
|
||||
* @param array $argarray misc. arguments
|
||||
*
|
||||
* @return boolean true
|
||||
*/
|
||||
|
||||
function prepare($argarray)
|
||||
{
|
||||
parent::prepare($argarray);
|
||||
|
||||
// User must be logged in.
|
||||
|
||||
$user = common_current_user();
|
||||
|
||||
if (empty($user)) {
|
||||
throw new ClientException(_("You must be logged in to train spam."), 403);
|
||||
}
|
||||
|
||||
// User must have the right to review spam
|
||||
|
||||
if (!$user->hasRight(ActivitySpamPlugin::TRAINSPAM)) {
|
||||
throw new ClientException(_('You cannot review spam on this site.'), 403);
|
||||
}
|
||||
|
||||
$id = $this->trimmed('notice');
|
||||
|
||||
$this->notice = Notice::staticGet('id', $id);
|
||||
|
||||
if (empty($this->notice)) {
|
||||
throw new ClientException(_("No such notice."));
|
||||
}
|
||||
|
||||
$this->checkSessionToken();
|
||||
|
||||
$filter = null;
|
||||
|
||||
Event::handle('GetSpamFilter', array(&$filter));
|
||||
|
||||
if (empty($filter)) {
|
||||
throw new ServerException(_("No spam filter configured."));
|
||||
}
|
||||
|
||||
$this->filter = $filter;
|
||||
|
||||
$this->category = $this->trimmed('category');
|
||||
|
||||
if ($this->category !== SpamFilter::SPAM &&
|
||||
$this->category !== SpamFilter::HAM)
|
||||
{
|
||||
throw new ClientException(_("No such category."));
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handler method
|
||||
*
|
||||
* @param array $argarray is ignored since it's now passed in in prepare()
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function handle($argarray=null)
|
||||
{
|
||||
// Train
|
||||
|
||||
$this->filter->trainOnError($this->notice, $this->category);
|
||||
|
||||
// Re-test
|
||||
|
||||
$result = $this->filter->test($this->notice);
|
||||
|
||||
// Update or insert
|
||||
|
||||
$score = Spam_score::save($this->notice, $result);
|
||||
|
||||
// Show new toggle form
|
||||
|
||||
if ($this->category === SpamFilter::SPAM) {
|
||||
$form = new TrainHamForm($this, $this->notice);
|
||||
} else {
|
||||
$form = new TrainSpamForm($this, $this->notice);
|
||||
}
|
||||
|
||||
if ($this->boolean('ajax')) {
|
||||
$this->startHTML('text/xml;charset=utf-8');
|
||||
$this->elementStart('head');
|
||||
// TRANS: Page title for page on which favorite notices can be unfavourited.
|
||||
$this->element('title', null, _('Disfavor favorite.'));
|
||||
$this->elementEnd('head');
|
||||
$this->elementStart('body');
|
||||
$form->show();
|
||||
$this->elementEnd('body');
|
||||
$this->elementEnd('html');
|
||||
} else {
|
||||
common_redirect(common_local_url('spam'), 303);
|
||||
}
|
||||
}
|
||||
}
|
146
plugins/ActivitySpam/trainhamform.php
Normal file
146
plugins/ActivitySpam/trainhamform.php
Normal file
@@ -0,0 +1,146 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Toggle indicating spam, click to train as ham
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Form
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class TrainHamForm extends Form {
|
||||
|
||||
var $notice = null;
|
||||
|
||||
function __construct($out, $notice) {
|
||||
parent::__construct($out);
|
||||
$this->notice = $notice;
|
||||
}
|
||||
|
||||
/**
|
||||
* Name of the form
|
||||
*
|
||||
* Sub-classes should overload this with the name of their form.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formLegend()
|
||||
{
|
||||
return _("Train ham");
|
||||
}
|
||||
|
||||
/**
|
||||
* Visible or invisible data elements
|
||||
*
|
||||
* Display the form fields that make up the data of the form.
|
||||
* Sub-classes should overload this to show their data.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formData()
|
||||
{
|
||||
$this->hidden('notice', $this->notice->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Buttons for form actions
|
||||
*
|
||||
* Submit and cancel buttons (or whatever)
|
||||
* Sub-classes should overload this to show their own buttons.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formActions()
|
||||
{
|
||||
$this->submit('train-ham-submit-' . $this->notice->id,
|
||||
_('Clear spam'),
|
||||
'submit',
|
||||
null,
|
||||
_("Clear spam"));
|
||||
}
|
||||
|
||||
/**
|
||||
* ID of the form
|
||||
*
|
||||
* Should be unique on the page. Sub-classes should overload this
|
||||
* to show their own IDs.
|
||||
*
|
||||
* @return int ID of the form
|
||||
*/
|
||||
|
||||
function id()
|
||||
{
|
||||
return 'train-ham-' . $this->notice->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Action of the form.
|
||||
*
|
||||
* URL to post to. Should be overloaded by subclasses to give
|
||||
* somewhere to post to.
|
||||
*
|
||||
* @return string URL to post to
|
||||
*/
|
||||
|
||||
function action()
|
||||
{
|
||||
return common_local_url('train', array('category' => 'ham'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Class of the form. May include space-separated list of multiple classes.
|
||||
*
|
||||
* If 'ajax' is included, the form will automatically be submitted with
|
||||
* an 'ajax=1' parameter added, and the resulting form or error message
|
||||
* will replace the form after submission.
|
||||
*
|
||||
* It's up to you to make sure that the target action supports this!
|
||||
*
|
||||
* @return string the form's class
|
||||
*/
|
||||
|
||||
function formClass()
|
||||
{
|
||||
return 'form-train-ham ajax';
|
||||
}
|
||||
}
|
146
plugins/ActivitySpam/trainspamform.php
Normal file
146
plugins/ActivitySpam/trainspamform.php
Normal file
@@ -0,0 +1,146 @@
|
||||
<?php
|
||||
/**
|
||||
* StatusNet - the distributed open-source microblogging tool
|
||||
* Copyright (C) 2011, StatusNet, Inc.
|
||||
*
|
||||
* Toggle indicating ham, click to train as spam
|
||||
*
|
||||
* PHP version 5
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
if (!defined('STATUSNET')) {
|
||||
// This check helps protect against security problems;
|
||||
// your code file can't be executed directly from the web.
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Form
|
||||
*
|
||||
* @category Spam
|
||||
* @package StatusNet
|
||||
* @author Evan Prodromou <evan@status.net>
|
||||
* @copyright 2011 StatusNet, Inc.
|
||||
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
|
||||
* @link http://status.net/
|
||||
*/
|
||||
|
||||
class TrainSpamForm extends Form {
|
||||
|
||||
var $notice = null;
|
||||
|
||||
function __construct($out, $notice) {
|
||||
parent::__construct($out);
|
||||
$this->notice = $notice;
|
||||
}
|
||||
|
||||
/**
|
||||
* Name of the form
|
||||
*
|
||||
* Sub-classes should overload this with the name of their form.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formLegend()
|
||||
{
|
||||
return _("Train spam");
|
||||
}
|
||||
|
||||
/**
|
||||
* Visible or invisible data elements
|
||||
*
|
||||
* Display the form fields that make up the data of the form.
|
||||
* Sub-classes should overload this to show their data.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formData()
|
||||
{
|
||||
$this->hidden('notice', $this->notice->id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Buttons for form actions
|
||||
*
|
||||
* Submit and cancel buttons (or whatever)
|
||||
* Sub-classes should overload this to show their own buttons.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function formActions()
|
||||
{
|
||||
$this->submit('train-spam-submit-' . $this->notice->id,
|
||||
_('Train spam'),
|
||||
'submit',
|
||||
null,
|
||||
_("Mark as spam"));
|
||||
}
|
||||
|
||||
/**
|
||||
* ID of the form
|
||||
*
|
||||
* Should be unique on the page. Sub-classes should overload this
|
||||
* to show their own IDs.
|
||||
*
|
||||
* @return int ID of the form
|
||||
*/
|
||||
|
||||
function id()
|
||||
{
|
||||
return 'train-spam-' . $this->notice->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Action of the form.
|
||||
*
|
||||
* URL to post to. Should be overloaded by subclasses to give
|
||||
* somewhere to post to.
|
||||
*
|
||||
* @return string URL to post to
|
||||
*/
|
||||
|
||||
function action()
|
||||
{
|
||||
return common_local_url('train', array('category' => 'spam'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Class of the form. May include space-separated list of multiple classes.
|
||||
*
|
||||
* If 'ajax' is included, the form will automatically be submitted with
|
||||
* an 'ajax=1' parameter added, and the resulting form or error message
|
||||
* will replace the form after submission.
|
||||
*
|
||||
* It's up to you to make sure that the target action supports this!
|
||||
*
|
||||
* @return string the form's class
|
||||
*/
|
||||
|
||||
function formClass()
|
||||
{
|
||||
return 'form-train-spam ajax';
|
||||
}
|
||||
}
|
@@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - Adsense to Belarusian (Taraškievica orthography) (Беларуская (тарашкевіца))
|
||||
# Translation of StatusNet - Adsense to Belarusian (Taraškievica orthography) (беларуская (тарашкевіца))
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: EugeneZelenko
|
||||
@@ -10,15 +10,15 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: Belarusian (Taraškievica orthography) <http://translatewiki."
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Belarusian (Taraškievica orthography) <https://translatewiki."
|
||||
"net/wiki/Portal:be-tarask>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: be-tarask\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - Adsense to Breton (Brezhoneg)
|
||||
# Translation of StatusNet - Adsense to Breton (brezhoneg)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Y-M D
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: Breton <http://translatewiki.net/wiki/Portal:br>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Breton <https://translatewiki.net/wiki/Portal:br>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: br\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - Adsense to Catalan (Català)
|
||||
# Translation of StatusNet - Adsense to Catalan (català)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toniher
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: Catalan <http://translatewiki.net/wiki/Portal:ca>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Catalan <https://translatewiki.net/wiki/Portal:ca>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: ca\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
@@ -4,6 +4,7 @@
|
||||
# Author: Fujnky
|
||||
# Author: Giftpflanze
|
||||
# Author: MF-Warburg
|
||||
# Author: Marcel083
|
||||
# Author: Michael
|
||||
# Author: The Evil IP address
|
||||
# --
|
||||
@@ -13,14 +14,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: German <http://translatewiki.net/wiki/Portal:de>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: German <https://translatewiki.net/wiki/Portal:de>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: de\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
@@ -52,7 +53,6 @@ msgid "Client ID"
|
||||
msgstr "Client-ID"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Google client ID."
|
||||
msgstr "Google-Client-ID"
|
||||
|
||||
@@ -61,7 +61,6 @@ msgid "Ad script URL"
|
||||
msgstr "Skript-URL"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Script URL (advanced)."
|
||||
msgstr "Skript-URL (erweitert)"
|
||||
|
||||
@@ -78,9 +77,8 @@ msgid "Rectangle"
|
||||
msgstr "Rechteck"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Rectangle slot code."
|
||||
msgstr "Rechteck"
|
||||
msgstr "Rectangle-Slot-Code."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Leaderboard"
|
||||
@@ -99,12 +97,10 @@ msgid "Wide skyscraper slot code."
|
||||
msgstr "Slotcode des weiten Hochhauses."
|
||||
|
||||
#. TRANS: Button text to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgctxt "BUTTON"
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
|
||||
#. TRANS: Button title to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Save AdSense settings."
|
||||
msgstr "AdSense-Einstellungen speichern"
|
||||
|
@@ -1,6 +1,8 @@
|
||||
# Translation of StatusNet - Adsense to Spanish (Español)
|
||||
# Translation of StatusNet - Adsense to Spanish (español)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Armando-Martin
|
||||
# Author: Erchache2000
|
||||
# Author: Translationista
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
@@ -9,14 +11,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: Spanish <http://translatewiki.net/wiki/Portal:es>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Spanish <https://translatewiki.net/wiki/Portal:es>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: es\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
@@ -26,7 +28,6 @@ msgid "AdSense configuration"
|
||||
msgstr "Configuración de \"AdSense\""
|
||||
|
||||
#. TRANS: Menu item for site administration
|
||||
#, fuzzy
|
||||
msgctxt "MENU"
|
||||
msgid "AdSense"
|
||||
msgstr "AdSense"
|
||||
@@ -49,7 +50,6 @@ msgid "Client ID"
|
||||
msgstr "ID de cliente"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Google client ID."
|
||||
msgstr "ID de cliente de Google"
|
||||
|
||||
@@ -58,7 +58,6 @@ msgid "Ad script URL"
|
||||
msgstr "URL del script del anuncio"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Script URL (advanced)."
|
||||
msgstr "URL del script (avanzado)"
|
||||
|
||||
@@ -67,7 +66,6 @@ msgid "Medium rectangle"
|
||||
msgstr "Rectángulo mediano"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Medium rectangle slot code."
|
||||
msgstr "Código de espacio de rectángulo mediano"
|
||||
|
||||
@@ -76,7 +74,6 @@ msgid "Rectangle"
|
||||
msgstr "Rectángulo"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Rectangle slot code."
|
||||
msgstr "Código de espacio de rectángulo"
|
||||
|
||||
@@ -85,26 +82,22 @@ msgid "Leaderboard"
|
||||
msgstr "Clasificación"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Leaderboard slot code."
|
||||
msgstr "Código de espacio de clasificación"
|
||||
msgstr "Código colocado en el panel de comandos"
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Skyscraper"
|
||||
msgstr "Banderola rascacielos"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Wide skyscraper slot code."
|
||||
msgstr "Código de espacio de banderola rascacielos ancha"
|
||||
msgstr "Código colocado en rectángulo (''banner'') vertical ancho"
|
||||
|
||||
#. TRANS: Button text to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgctxt "BUTTON"
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#. TRANS: Button title to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Save AdSense settings."
|
||||
msgstr "Guardar la configuración de AdSense"
|
||||
msgstr "Guardar configuración de AdSense."
|
||||
|
102
plugins/Adsense/locale/eu/LC_MESSAGES/Adsense.po
Normal file
102
plugins/Adsense/locale/eu/LC_MESSAGES/Adsense.po
Normal file
@@ -0,0 +1,102 @@
|
||||
# Translation of StatusNet - Adsense to Basque (euskara)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Artsuaga
|
||||
# Author: Unai Fdz. de Betoño
|
||||
# --
|
||||
# This file is distributed under the same license as the StatusNet package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Basque <https://translatewiki.net/wiki/Portal:eu>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: eu\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#. TRANS: Menu item title/tooltip
|
||||
msgid "AdSense configuration"
|
||||
msgstr "AdSense konfigurazioa"
|
||||
|
||||
#. TRANS: Menu item for site administration
|
||||
msgctxt "MENU"
|
||||
msgid "AdSense"
|
||||
msgstr "AdSense"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Plugin to add Google AdSense to StatusNet sites."
|
||||
msgstr "Google Adsense Statusnet guneetara gehitzeko plugina."
|
||||
|
||||
#. TRANS: Title of AdSense administrator panel.
|
||||
msgctxt "TITLE"
|
||||
msgid "AdSense"
|
||||
msgstr "AdSense"
|
||||
|
||||
#. TRANS: Instructions for AdSense administrator panel.
|
||||
msgid "AdSense settings for this StatusNet site"
|
||||
msgstr "AdSense aukerak StatusNet gune hontarako"
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Client ID"
|
||||
msgstr "ID bezeroa"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Google client ID."
|
||||
msgstr "Google bezero IDa."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Ad script URL"
|
||||
msgstr "Gehitu scriptaren URLa"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Script URL (advanced)."
|
||||
msgstr "Scriptaren URLa (aurreratua)."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Medium rectangle"
|
||||
msgstr "Laukizuzen ertaina"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Medium rectangle slot code."
|
||||
msgstr "Lauki ertaineko kodea."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Rectangle"
|
||||
msgstr "Laukizuzena"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Rectangle slot code."
|
||||
msgstr "Laukiko kodea."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Leaderboard"
|
||||
msgstr "Sailkapena"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Leaderboard slot code."
|
||||
msgstr "Sailkapeneko kodea."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Skyscraper"
|
||||
msgstr "Lauki bertikala"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Wide skyscraper slot code."
|
||||
msgstr "Lauki bertikaleko kodea."
|
||||
|
||||
#. TRANS: Button text to save settings in AdSense administration panel.
|
||||
msgctxt "BUTTON"
|
||||
msgid "Save"
|
||||
msgstr "Gorde"
|
||||
|
||||
#. TRANS: Button title to save settings in AdSense administration panel.
|
||||
msgid "Save AdSense settings."
|
||||
msgstr "Gorde AdSense aukerak."
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - Adsense to French (Français)
|
||||
# Translation of StatusNet - Adsense to French (français)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Brunoperel
|
||||
@@ -13,14 +13,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: French <http://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: French <https://translatewiki.net/wiki/Portal:fr>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: fr\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
@@ -1,4 +1,4 @@
|
||||
# Translation of StatusNet - Adsense to Galician (Galego)
|
||||
# Translation of StatusNet - Adsense to Galician (galego)
|
||||
# Exported from translatewiki.net
|
||||
#
|
||||
# Author: Toliño
|
||||
@@ -9,14 +9,14 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: StatusNet - Adsense\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-05-05 20:48+0000\n"
|
||||
"PO-Revision-Date: 2011-05-05 20:48:33+0000\n"
|
||||
"Language-Team: Galician <http://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
|
||||
"PO-Revision-Date: 2012-06-30 11:07:31+0000\n"
|
||||
"Language-Team: Galician <https://translatewiki.net/wiki/Portal:gl>\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-POT-Import-Date: 2011-04-27 13:25:53+0000\n"
|
||||
"X-Generator: MediaWiki 1.18alpha (r87509); Translate extension (2011-04-26)\n"
|
||||
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
|
||||
"X-POT-Import-Date: 2011-12-03 10:22:41+0000\n"
|
||||
"X-Generator: MediaWiki 1.20alpha (233fc08); Translate 2012-06-21\n"
|
||||
"X-Translation-Project: translatewiki.net <https://translatewiki.net>\n"
|
||||
"X-Language-Code: gl\n"
|
||||
"X-Message-Group: #out-statusnet-plugin-adsense\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
@@ -26,14 +26,13 @@ msgid "AdSense configuration"
|
||||
msgstr "Configuración de AdSense"
|
||||
|
||||
#. TRANS: Menu item for site administration
|
||||
#, fuzzy
|
||||
msgctxt "MENU"
|
||||
msgid "AdSense"
|
||||
msgstr "AdSense"
|
||||
|
||||
#. TRANS: Plugin description.
|
||||
msgid "Plugin to add Google AdSense to StatusNet sites."
|
||||
msgstr ""
|
||||
msgstr "Complemento para engadir Google AdSense aos sitios de StatusNet."
|
||||
|
||||
#. TRANS: Title of AdSense administrator panel.
|
||||
msgctxt "TITLE"
|
||||
@@ -49,43 +48,40 @@ msgid "Client ID"
|
||||
msgstr "Identificación do cliente"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Google client ID."
|
||||
msgstr "Identificación do cliente de Google"
|
||||
msgstr "Identificación do cliente de Google."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Ad script URL"
|
||||
msgstr ""
|
||||
msgstr "Enderezo URL da escritura do anuncio"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Script URL (advanced)."
|
||||
msgstr ""
|
||||
msgstr "Enderezo URL da escritura (avanzado)."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Medium rectangle"
|
||||
msgstr ""
|
||||
msgstr "Rectángulo mediano"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Medium rectangle slot code."
|
||||
msgstr ""
|
||||
msgstr "Código disposto no rectángulo mediano."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Rectangle"
|
||||
msgstr "Rectángulo"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Rectangle slot code."
|
||||
msgstr "Rectángulo"
|
||||
msgstr "Código disposto no rectángulo."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Leaderboard"
|
||||
msgstr "Taboleiro de logros"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Leaderboard slot code."
|
||||
msgstr "Taboleiro de logros"
|
||||
msgstr "Código disposto no taboleiro de logros."
|
||||
|
||||
#. TRANS: Field label in AdSense administration panel.
|
||||
msgid "Skyscraper"
|
||||
@@ -93,15 +89,13 @@ msgstr "Rañaceos"
|
||||
|
||||
#. TRANS: Field title in AdSense administration panel.
|
||||
msgid "Wide skyscraper slot code."
|
||||
msgstr ""
|
||||
msgstr "Código disposto no rañaceos."
|
||||
|
||||
#. TRANS: Button text to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgctxt "BUTTON"
|
||||
msgid "Save"
|
||||
msgstr "Gardar"
|
||||
|
||||
#. TRANS: Button title to save settings in AdSense administration panel.
|
||||
#, fuzzy
|
||||
msgid "Save AdSense settings."
|
||||
msgstr "Gardar a configuración de AdSense"
|
||||
msgstr "Gardar a configuración de AdSense."
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user