code:
<?php

/* ***** BEGIN LICENSE BLOCK *****
 *
 * This file is part of FirePHP (http://www.firephp.org/).
 *
 * Software License Agreement (New BSD License)
 *
 * Copyright (c) 2006-2009, Christoph Dorn
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification,
 * are permitted provided that the following conditions are met:
 *
 *     * Redistributions of source code must retain the above copyright notice,
 *       this list of conditions and the following disclaimer.
 *
 *     * Redistributions in binary form must reproduce the above copyright notice,
 *       this list of conditions and the following disclaimer in the documentation
 *       and/or other materials provided with the distribution.
 *
 *     * Neither the name of Christoph Dorn nor the names of its
 *       contributors may be used to endorse or promote products derived from this
 *       software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * ***** END LICENSE BLOCK *****
 *
 * @copyright   Copyright (C) 2007-2009 Christoph Dorn
 * @author      Christoph Dorn <christoph@christophdorn.com>
 * @author      Michael Day <manveru.alma@gmail.com>
 * @license     http://www.opensource.org/licenses/bsd-license.php
 * @package     FirePHP
 */

require_once dirname(__FILE__).'/FirePHP.class.php4';

/**
 * Sends the given data to the FirePHP Firefox Extension.
 * The data can be displayed in the Firebug Console or in the
 * "Server" request tab.
 *
 * @see http://www.firephp.org/Wiki/Reference/Fb
 * @param mixed $Object
 * @return true
 * @throws Exception
 */
function fb()
{
  $instance =& FirePHP::getInstance(true);

  $args = func_get_args();
  return call_user_func_array(array(&$instance,'fb'),$args);
}

class FB
{
  /**
   * Enable and disable logging to Firebug
   *
   * @see FirePHP->setEnabled()
   * @param boolean $Enabled TRUE to enable, FALSE to disable
   * @return void
   */
  function setEnabled($Enabled) {
    $instance =& FirePHP::getInstance(true);
    $instance->setEnabled($Enabled);
  }

  /**
   * Check if logging is enabled
   *
   * @see FirePHP->getEnabled()
   * @return boolean TRUE if enabled
   */
  function getEnabled() {
    $instance =& FirePHP::getInstance(true);
    return $instance->getEnabled();
  }

  /**
   * Specify a filter to be used when encoding an object
   *
   * Filters are used to exclude object members.
   *
   * @see FirePHP->setObjectFilter()
   * @param string $Class The class name of the object
   * @param array $Filter An array or members to exclude
   * @return void
   */
  function setObjectFilter($Class, $Filter) {
    $instance =& FirePHP::getInstance(true);
    $instance->setObjectFilter($Class, $Filter);
  }

  /**
   * Set some options for the library
   *
   * @see FirePHP->setOptions()
   * @param array $Options The options to be set
   * @return void
   */
  function setOptions($Options) {
    $instance =& FirePHP::getInstance(true);
    $instance->setOptions($Options);
  }

  /**
   * Get options for the library
   *
   * @see FirePHP->getOptions()
   * @return array The options
   */
  function getOptions() {
    $instance =& FirePHP::getInstance(true);
    return $instance->getOptions();
  }

  /**
   * Log object to firebug
   *
   * @see http://www.firephp.org/Wiki/Reference/Fb
   * @param mixed $Object
   * @return true
   */
  function send()
  {
    $instance =& FirePHP::getInstance(true);
    $args = func_get_args();
    return call_user_func_array(array(&$instance,'fb'),$args);
  }

  /**
   * Start a group for following messages
   *
   * Options:
   *   Collapsed: [true|false]
   *   Color:     [#RRGGBB|ColorName]
   *
   * @param string $Name
   * @param array $Options OPTIONAL Instructions on how to log the group
   * @return true
   */
  function group($Name, $Options=null) {
    $instance =& FirePHP::getInstance(true);
    return $instance->group($Name, $Options);
  }

  /**
   * Ends a group you have started before
   *
   * @return true
   */
  function groupEnd() {
    return FB::send(null, null, FirePHP_GROUP_END);
  }

  /**
   * Log object with label to firebug console
   *
   * @see FirePHP::LOG
   * @param mixes $Object
   * @param string $Label
   * @return true
   */
  function log($Object, $Label=null) {
    return FB::send($Object, $Label, FirePHP_LOG);
  }

  /**
   * Log object with label to firebug console
   *
   * @see FirePHP::INFO
   * @param mixes $Object
   * @param string $Label
   * @return true
   */
  function info($Object, $Label=null) {
    return FB::send($Object, $Label, FirePHP_INFO);
  }

  /**
   * Log object with label to firebug console
   *
   * @see FirePHP::WARN
   * @param mixes $Object
   * @param string $Label
   * @return true
   */
  function warn($Object, $Label=null) {
    return FB::send($Object, $Label, FirePHP_WARN);
  }

  /**
   * Log object with label to firebug console
   *
   * @see FirePHP::ERROR
   * @param mixes $Object
   * @param string $Label
   * @return true
   */
  function error($Object, $Label=null) {
    return FB::send($Object, $Label, FirePHP_ERROR);
  }

  /**
   * Dumps key and variable to firebug server panel
   *
   * @see FirePHP::DUMP
   * @param string $Key
   * @param mixed $Variable
   * @return true
   */
  function dump($Key, $Variable) {
    return FB::send($Variable, $Key, FirePHP_DUMP);
  }

  /**
   * Log a trace in the firebug console
   *
   * @see FirePHP::TRACE
   * @param string $Label
   * @return true
   */
  function trace($Label) {
    return FB::send($Label, FirePHP_TRACE);
  }

  /**
   * Log a table in the firebug console
   *
   * @see FirePHP::TABLE
   * @param string $Label
   * @param string $Table
   * @return true
   */
  function table($Label, $Table) {
    return FB::send($Table, $Label, FirePHP_TABLE);
  }
}


code:
# 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: Plugin description.
#: FirePHPPlugin.php:69
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""

license: mit


code:
# Translation of StatusNet - FirePHP to Catalan (català)
# Exported from translatewiki.net
#
# Author: Solde
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"El plugin de FirePHP escriu al StatusNet al registre de sortida del FirePHP."


code:
# Translation of StatusNet - FirePHP to German (Deutsch)
# Exported from translatewiki.net
#
# Author: The Evil IP address
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"Das FirePHP-Plugin schreibt die Konsolenausgabe von StatusNet an FirePHP."


code:
# Translation of StatusNet - FirePHP to Spanish (español)
# Exported from translatewiki.net
#
# Author: Translationista
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"La extensión FirePHP escribe la salida del registro de StatusNet en FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:08+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 FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "FirePHP pluginak StatusNeten erregistro irteera FirePHPn idazten du."


code:
# Translation of StatusNet - FirePHP to Finnish (suomi)
# Exported from translatewiki.net
#
# Author: Nike
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "FirePHP-liitännäinen kirjoittaa StatusNetin tulosteen FirePHP:hen."


code:
# Translation of StatusNet - FirePHP to French (français)
# Exported from translatewiki.net
#
# Author: Peter17
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:35+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"L’extension FirePHP écrit la sortie du journal de StatusNet dans FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"O complemento FirePHP escribe a saída do rexistro de StatusNet en FirePHP."


code:
# Translation of StatusNet - FirePHP to Hebrew (עברית)
# Exported from translatewiki.net
#
# Author: YaronSh
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "התוסף FirePHP כותב את פלט הרישום של StatusNet ל־FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"Le plug-in FirePHP transmitte le output del registro de StatusNet a FirePHP."


code:
# Translation of StatusNet - FirePHP to Indonesian (Bahasa Indonesia)
# Exported from translatewiki.net
#
# Author: Farras
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "Pengaya FirePHP menulis keluaran log StatusNet kepada FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:08+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 FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "Il plugin FirePHP scrive l'output del registro di StatusNet FirePHP."


code:
# Translation of StatusNet - FirePHP to Japanese (日本語)
# Exported from translatewiki.net
#
# Author: 青子守歌
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "FirePHPプラグインは、StatusNetの記録出力を、FirePHPへ書き出します。"


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"Приклучокот FirePHP ги врши излезните записи во дневникот на StatusNet во "
"FirePHP."


code:
# Translation of StatusNet - FirePHP to Norwegian Bokmål (norsk (bokmål))
# Exported from translatewiki.net
#
# Author: Nghtwlkr
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "Utvidelsen FirePHP skriver StatusNets logg-utdata til FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"De plug-in FirePHP schrijft de logboekuitvoer van StatusNet naar FirePHP."


code:
# Translation of StatusNet - FirePHP to Portuguese (português)
# Exported from translatewiki.net
#
# Author: Waldir
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:36+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "O plugin FirePHP envia a saída do log do StatusNet para o FirePHP."


code:
# Translation of StatusNet - FirePHP to Russian (русский)
# Exported from translatewiki.net
#
# Author: Александр Сигачёв
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-firephp\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: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "Модуль FirePHP записывает вывод журнала StatusNet в FirePHP."


code:
# Translation of StatusNet - FirePHP 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 - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""
"Ang pamasak na FirePHP ay nagsusulat ng tala ng paglalabas ng StatusNet sa "
"FirePHP."


code:
# Translation of StatusNet - FirePHP to Ukrainian (українська)
# Exported from translatewiki.net
#
# Author: Boogie
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-firephp\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: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "Додаток FirePHP записує лоґи StatusNet до FirePHP."


code:
# Translation of StatusNet - FirePHP to Simplified Chinese (中文（简体）)
# Exported from translatewiki.net
#
# Author: ZhengYiFeng
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FirePHP\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-firephp\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#. TRANS: Plugin description.
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr "FirePHP 插件将 StatusNet 的日志输出到 FirePHP。"


code:
<?php
/**
 * StatusNet - the distributed open-source microblogging tool
 * Copyright (C) 2010, StatusNet, Inc.
 *
 * When a new user registers, all existing users follow them automatically.
 *
 * 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  Community
 * @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);
}

/**
 * Plugin to make all users follow each other at registration
 *
 * Users can unfollow afterwards if they want.
 *
 * @category  Sample
 * @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 FollowEveryonePlugin extends Plugin
{
    /**
     * Called when a new user is registered.
     *
     * We find all users, and try to subscribe them to the new user, and
     * the new user to them. Exceptions (like silenced users or whatever)
     * are caught, logged, and ignored.
     *
     * @param Profile $profile The new user's profile
     *
     * @return boolean hook value
     */
    public function onEndUserRegister(Profile $profile)
    {
        $otherUser = new User();
        $otherUser->whereAdd('id != ' . $profile->id);

        if ($otherUser->find()) {
            while ($otherUser->fetch()) {
                $otherProfile = $otherUser->getProfile();
                try {
                    if (User_followeveryone_prefs::followEveryone($otherUser->id)) {
                        Subscription::start($otherProfile, $profile);
                    }
                    Subscription::start($profile, $otherProfile);
                } catch (Exception $e) {
                    common_log(LOG_WARNING, $e->getMessage());
                    continue;
                }
            }
        }

        $ufep = new User_followeveryone_prefs();

        $ufep->user_id        = $profile->id;
        $ufep->followeveryone = true;

        $ufep->insert();

        return true;
    }

    /**
     * Database schema setup
     *
     * Plugins can add their own tables to the StatusNet database. Plugins
     * should use StatusNet's schema interface to add or delete tables. The
     * ensureTable() method provides an easy way to ensure a table's structure
     * and availability.
     *
     * By default, the schema is checked every time StatusNet is run (say, when
     * a Web page is hit). Admins can configure their systems to only check the
     * schema when the checkschema.php script is run, greatly improving performance.
     * However, they need to remember to run that script after installing or
     * upgrading a plugin!
     *
     * @see Schema
     * @see ColumnDef
     *
     * @return boolean hook value; true means continue processing, false means stop.
     */
    function onCheckSchema()
    {
        $schema = Schema::get();

        // For storing user-submitted flags on profiles
        $schema->ensureTable('user_followeveryone_prefs', User_followeveryone_prefs::schemaDef());

        return true;
    }

    /**
     * Show a checkbox on the profile form to ask whether to follow everyone
     *
     * @param Action $action The action being executed
     *
     * @return boolean hook value
     */
    function onEndProfileFormData($action)
    {
        $user = common_current_user();

        $action->elementStart('li');
        // TRANS: Checkbox label in form for profile settings.
        $action->checkbox('followeveryone', _m('Follow everyone'),
                          ($action->arg('followeveryone')) ?
                          $action->arg('followeveryone') :
                          User_followeveryone_prefs::followEveryone($user->id));
        $action->elementEnd('li');

        return true;
    }

    /**
     * Save checkbox value for following everyone
     *
     * @param Action $action The action being executed
     *
     * @return boolean hook value
     */
    function onEndProfileSaveForm($action)
    {
        $user = common_current_user();

        User_followeveryone_prefs::savePref($user->id,
                                            $action->boolean('followeveryone'));

        return true;
    }

    /**
     * Provide version information about this plugin.
     *
     * @param Array &$versions Array of version data
     *
     * @return boolean hook value
     *
     */
    function onPluginVersion(&$versions)
    {
        $versions[] = array('name' => 'FollowEveryone',
                            'version' => GNUSOCIAL_VERSION,
                            'author' => 'Evan Prodromou',
                            'homepage' => 'http://status.net/wiki/Plugin:FollowEveryone',
                            'rawdescription' =>
                            // TRANS: Plugin description.
                            _m('New users follow everyone at registration and are followed in return.'));
        return true;
    }
}


code:
<?php
/**
 * Data class for counting greetings
 *
 * PHP version 5
 *
 * @category Data
 * @package  StatusNet
 * @author   Evan Prodromou <evan@status.net>
 * @license  http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
 * @link     http://status.net/
 *
 * StatusNet - the distributed open-source microblogging tool
 * Copyright (C) 2009, 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/>.
 */

if (!defined('STATUSNET')) {
    exit(1);
}

require_once INSTALLDIR . '/classes/Memcached_DataObject.php';

/**
 * Data class for counting greetings
 *
 * We use the DB_DataObject framework for data classes in StatusNet. Each
 * table maps to a particular data class, making it easier to manipulate
 * data.
 *
 * Data classes should extend Memcached_DataObject, the (slightly misnamed)
 * extension of DB_DataObject that provides caching, internationalization,
 * and other bits of good functionality to StatusNet-specific data classes.
 *
 * @category Action
 * @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 User_followeveryone_prefs extends Managed_DataObject
{
    public $__table = 'user_followeveryone_prefs'; // table name
    public $user_id;                               // int(4)  primary_key not_null
    public $followeveryone;                        // tinyint(1)
    public $created;                               // datetime()   not_null
    public $modified;                              // timestamp()   not_null default_CURRENT_TIMESTAMP

    public static function schemaDef()
    {
        return array(
            'fields' => array(
                'user_id' => array('type' => 'int', 'not null' => true, 'description' => 'user id'),
                'followeveryone' => array('type' => 'int', 'default' => 1, 'size' => 'tiny', 'description' => 'whether to follow everyone'),
                'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'),
                'modified' => array('type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'),
            ),
            'primary key' => array('user_id'),
            'foreign keys' => array(
                'user_followeveryone_prefs_user_id_fkey' => array('user', array('user_id' => 'id')),
            ),
        );
    }

    static function followEveryone($user_id)
    {
        $ufep = self::getKV('user_id', $user_id);

        if (empty($ufep)) {
            return true;
        } else {
            return (bool)$ufep->followeveryone;
        }
    }

    static function savePref($user_id, $followEveryone)
    {
        $ufep = self::getKV('user_id', $user_id);

        if (empty($ufep)) {
            $ufep = new User_followeveryone_prefs();
            $ufep->user_id = $user_id;
            $ufep->followeveryone = $followEveryone;
            $ufep->insert();
        } else {
            $orig = clone($ufep);
            $ufep->followeveryone = $followEveryone;
            $ufep->update();
        }

        return true;
    }
}


code:
# 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: Checkbox label in form for profile settings.
#: FollowEveryonePlugin.php:160
msgid "Follow everyone"
msgstr ""

#. TRANS: Plugin description.
#: FollowEveryonePlugin.php:202
msgid "New users follow everyone at registration and are followed in return."
msgstr ""


code:
# Translation of StatusNet - FollowEveryone to Breton (brezhoneg)
# Exported from translatewiki.net
#
# Author: Y-M D
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Heuliañ an holl"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Segueix a tothom"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Els usuaris nous segueixen a tothom en registrar-se i són seguits en retorn."


code:
# Translation of StatusNet - FollowEveryone to German (Deutsch)
# Exported from translatewiki.net
#
# Author: Giftpflanze
# Author: The Evil IP address
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Jedem folgen"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Neue Benutzer folgen jedem nach der Registrierung und werden im Gegenzug "
"ebenfalls gefolgt."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:08+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: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Seguir a todos"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Los nuevos usuarios siguen a todos al registrarse y son seguidos a cambio."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Jarraitu guztiak"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Erabiltzaile berriak izen ematean erabiltzaile zahar guztien jarraitzale eta "
"alderantziz egiteko."


code:
# Translation of StatusNet - FollowEveryone to Finnish (suomi)
# Exported from translatewiki.net
#
# Author: Silvonen
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Seuraa kaikkia"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""


code:
# Translation of StatusNet - FollowEveryone to French (français)
# Exported from translatewiki.net
#
# Author: Od1n
# Author: Peter17
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:37+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Suivre tout le monde"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Les nouveaux utilisateurs suivent tout le monde lors de l’inscription et "
"sont suivis en retour."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Seguir a todos"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Os novos usuarios siguen a todos durante o rexistro e, a cambio, son "
"seguidos."


code:
# Translation of StatusNet - FollowEveryone to Hebrew (עברית)
# Exported from translatewiki.net
#
# Author: Amire80
# Author: YaronSh
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "לעקוב אחרי כולם"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr "משתמשים חדשים עוקבים אחר כולם בעת הרישום ובתמורה עוקבים אחריהם."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Sequer omnes"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr "Nove usatores seque omnes al inscription e es sequite per omnes."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:08+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: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Segui tutti"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"I nuovi utenti seguono tutti al momento della registrazione e in cambio sono "
"seguiti."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Следи ги сите"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr "Новите корисници следат секого при регистрација и сите ги следат нив."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08: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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Iedereen volgen"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Nieuwe gebruikers volgen iedereen bij inschrijving en worden door iedereen "
"gevolgd."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:08+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: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Obserwuj wszystkich"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Nowi użytkownicy obserwują wszystkich przy rejestracji i są również "
"obserwowani."


code:
# Translation of StatusNet - FollowEveryone to Portuguese (português)
# Exported from translatewiki.net
#
# Author: Waldir
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr ""

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Novos utilizadores seguem toda a gente no momento do registo e são seguidos "
"em troca."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:08+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-followeveryone\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: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr ""

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Новые пользователи следят за всеми при регистрации и получают обратное "
"слежение."


code:
# Translation of StatusNet - FollowEveryone 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 - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:08+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-followeveryone\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Sundan ang lahat"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Ang bagong mga tagagamit ay sumusunod sa lahat sa panahon ng pagpapatala at "
"sinusundan din bilang kapalit."


code:
# Translation of StatusNet - FollowEveryone to Ukrainian (українська)
# Exported from translatewiki.net
#
# Author: Boogie
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - FollowEveryone\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:08+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-followeveryone\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: Checkbox label in form for profile settings.
msgid "Follow everyone"
msgstr "Відслідковувати всіх"

#. TRANS: Plugin description.
msgid "New users follow everyone at registration and are followed in return."
msgstr ""
"Нові користувачі автоматично підписуються до всіх після реєстрації, а всі "
"решта автоматично підписуються навзаєм."


code:
<?php
/*
 * StatusNet - the distributed open-source microblogging tool
 * Copyright (C) 2010, 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/>.
 */

/**
 * @package ForceGroupPlugin
 * @maintainer Brion Vibber <brion@status.net>
 */

if (!defined('STATUSNET')) { exit(1); }

class ForceGroupPlugin extends Plugin
{
    /**
     * Members of these groups will have all their posts mirrored into
     * the group even if they don't explicitly mention it.
     *
     * List by local nickname.
     */
    public $post = array();

    /**
     * New user registrations will automatically join these groups on
     * registration. They're not prevented from leaving, however.
     *
     * List by local nickname.
     */
    public $join = array();

    /**
     * If poster is in one of the forced groups, make sure their notice
     * gets saved into that group even if not explicitly mentioned.
     *
     * @param Notice $notice
     * @return boolean event hook return
     */
    function onStartNoticeDistribute($notice)
    {
        $profile = $notice->getProfile();

        $isRemote = !(User::getKV('id', $profile->id));
        if ($isRemote) {
            /*
             * Notices from remote users on other sites
             * will normally not end up here unless they're
             * specifically directed here, e.g.: via explicit
             * post to a remote (to them) group. But remote
             * notices can also be `pulled in' as a result of
             * local users subscribing to the remote user;
             * from the remote user's perspective, this results
             * in group-forcing appearing effectively random.
             * So let's be consistent, and just never force
             * incoming remote notices into a ForceGroup:
             */
            return true;
        }

        foreach ($this->post as $nickname) {
            $group = User_group::getForNickname($nickname);
            if ($group && $profile->isMember($group)) {
                $notice->addToGroupInbox($group);
            }
        }
        return true;
    }

    public function onEndUserRegister(Profile $profile)
    {
        foreach ($this->join as $nickname) {
            $group = User_group::getForNickname($nickname);
            if ($group && !$profile->isMember($group)) {
                try {
                    $profile->joinGroup($group);
                } catch (Exception $e) {
                    // TRANS: Server exception.
                    // TRANS: %1$s is a user nickname, %2$s is a group nickname.
                    throw new ServerException(sprintf(_m('Could not join user %1$s to group %2$s.'),
                                               $profile->nickname, $group->nickname));
                }
            }
        }
    }

    /**
     * Provide plugin version information.
     *
     * This data is used when showing the version page.
     *
     * @param array &$versions array of version data arrays; see EVENTS.txt
     *
     * @return boolean hook value
     */
    function onPluginVersion(&$versions)
    {
        $url = 'http://status.net/wiki/Plugin:ForceGroup';

        $versions[] = array('name' => 'ForceGroup',
            'version' => GNUSOCIAL_VERSION,
            'author' => 'Brion Vibber',
            'homepage' => $url,
            'rawdescription' =>
            // TRANS: Plugin description.
            _m('Allows forced group memberships and forces all notices to appear in groups that users were forced in.'));

        return true;
    }
}


code:
# 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: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#: ForceGroupPlugin.php:75
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr ""

#. TRANS: Plugin description.
#: ForceGroupPlugin.php:101
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""


code:
# Translation of StatusNet - ForceGroup to Breton (brezhoneg)
# Exported from translatewiki.net
#
# Author: Y-M D
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Dibosupl eo stagañ an implijer %1$s d'ar strollad %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "No s'ha pogut unir l'usuari %1$s al grup %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""


code:
# Translation of StatusNet - ForceGroup to German (Deutsch)
# Exported from translatewiki.net
#
# Author: The Evil IP address
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Konnte Benutzer %1$s nicht der Gruppe %2$s hinzufügen."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Ermöglicht erzwungene Gruppenmitgliedschaften und sorgt dafür, dass alle "
"Nachrichten in Gruppen erscheinen, in die Benutzer reingezwungen wurden."


code:
# Translation of StatusNet - ForceGroup to Spanish (español)
# Exported from translatewiki.net
#
# Author: Translationista
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:38+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "No se pudo incluir al usuario %1$s en el grupo %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permite forzar inclusiones en grupos y fuerza la aparición de todos los "
"mensajes en los grupos en los que los usuarios fueron incluidos a la fuerza."


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:09+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: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "%1$s erabiltzailea ezin izan da %2$s taldera gehitu."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Google Analytics erabiltzen "
"du web gunera atzipenak jarraitu ahal izateko."


code:
# Translation of StatusNet - ForceGroup to French (français)
# Exported from translatewiki.net
#
# Author: Peter17
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Impossible d’inscrire l’utilisateur %1$s au groupe %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permet de forcer l’inscription à un groupe et force tous les avis à "
"apparaître dans les groupes dont les utilisateurs sont forcés."


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "O usuario %1$s non se puido engadir ao grupo %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permite forzar a inscripción nun grupo e forza a que todas as notas aparezan "
"nos grupos onde os usuarios se ven forzados a estar."


code:
# Translation of StatusNet - ForceGroup to Hebrew (עברית)
# Exported from translatewiki.net
#
# Author: Amire80
# Author: YaronSh
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "לא ניתן לצרף את המשתמש %1$s לקבוצה %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"מתן האפשרות לחברויות מאולצות בקבוצות ואילוץ הצגת כל העדכונים בקבוצות "
"שהמשתמשים אולצו להצטרף אליהן."


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Non poteva inscriber le usator %1$s in le gruppo %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permitte fortiar le inscription in gruppos e fortia que tote le notas appare "
"in gruppos in que usatores esseva inscribite."


code:
# Translation of StatusNet - ForceGroup to Indonesian (Bahasa Indonesia)
# Exported from translatewiki.net
#
# Author: Farras
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Tidak dapat menggabungkan pengguna %1$s ke grup %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Memungkinkan keanggotaan grup secara paksa dan memaksa semua pemberitahuan "
"muncul di grup yang penggunanya dipaksa masuk."


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+0000\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:09+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: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Impossibile iscrivere l'utente %1$s al gruppo %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permette l'iscrizione forzata ad un gruppo e costringe tutti gli avvisi ad "
"apparire nei gruppi dove gli utenti sono stati iscritti forzatamente."


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Не можев да го зачленам корисникот %1$s во групата %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Овозможува наметнати членства во групи и наметнува на сите забелешки да се "
"јавуваат во групите кајшто корисниците имаат наметнати членства"


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:39+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Het was niet mogelijk gebruiker %1$s toe te voegen aan de groep %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Maakt het mogelijk gedwongen lid te worden van groepen en alle mededelingen "
"weer te geven in die groepen."


code:
# Translation of StatusNet - ForceGroup to Portuguese (português)
# Exported from translatewiki.net
#
# Author: SandroHc
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:40+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Não foi possível juntar o usuário %1$s ao grupo %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Permite que membros forçados do grupo forcem com que todos os anúncios "
"apareçam em grupos em que os utilizadores foram forçados."


code:
# Translation of StatusNet - ForceGroup to Telugu (తెలుగు)
# Exported from translatewiki.net
#
# Author: Veeven
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:40+0000\n"
"Language-Team: Telugu <https://translatewiki.net/wiki/Portal:te>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-POT-Import-Date: 2011-06-05 21:50:09+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: te\n"
"X-Message-Group: #out-statusnet-plugin-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "వాడుకరి %1$sని %2$s గుంపులో చేర్చలేకపోయాం."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""


code:
# Translation of StatusNet - ForceGroup 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 - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:40+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-06-05 21:50:09+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-forcegroup\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. TRANS: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Hindi maisama ang tagagamit na %1$s sa pangkat na %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Nagpapahintulot ng pinilit na mga pagkakasapi sa pangkat at pumipilit sa "
"lahat ng mga pabatid na lumitaw sa loob ng mga pangkat na pinagpilitang "
"paloob ng mga tagagamit."


code:
# Translation of StatusNet - ForceGroup to Ukrainian (українська)
# Exported from translatewiki.net
#
# Author: Boogie
# --
# This file is distributed under the same license as the StatusNet package.
#
msgid ""
msgstr ""
"Project-Id-Version: StatusNet - ForceGroup\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2012-06-30 11:07+0000\n"
"PO-Revision-Date: 2012-06-30 11:08:40+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-06-05 21:50:09+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-forcegroup\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: Server exception.
#. TRANS: %1$s is a user nickname, %2$s is a group nickname.
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Не вдалось долучити користувача %1$s до спільноти %2$s."

#. TRANS: Plugin description.
msgid ""
"Allows forced group memberships and forces all notices to appear in groups "
"that users were forced in."
msgstr ""
"Дозволяє примусове долучення користувачів до спільнот разом із дописами, "
"котрі відповідають темі той чи іншої спільноти, до якої було примусово "
"долучено користувача."


code:
<?php
/**
 * GNU Social
 * Copyright (C) 2011, Free Software Foundation, Inc.
 *
 * PHP version 5
 *
 * LICENCE:
 * 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  Widget
 * @package   GNU Social
 * @author    Ian Denhardt <ian@zenhack.net>
 * @copyright 2011 Free Software Foundation, Inc.
 * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
 */

if (!defined('STATUSNET')) {
    exit(1);
}

class GNUsocialPhotoPlugin extends MicroAppPlugin
{

    var $oldSaveNew = true;

    function onCheckSchema()
    {
        $schema = Schema::get();

        $schema->ensureTable('photo', Photo::schemaDef());

        return true;
    }

    function onRouterInitialized($m)
    {
        $m->connect('main/photo/new', array('action' => 'newphoto'));
        $m->connect('main/photo/:id', array('action' => 'showphoto'));
        return true;
    }

    function entryForm($out)
    {
        return new NewPhotoForm($out);
    }

    function appTitle()
    {
        return _('Photo');
    }

    function tag()
    {
        return 'Photo';
    }

    function types()
    {
        return array(Photo::OBJECT_TYPE);
    }

    function saveNoticeFromActivity(Activity $activity, Profile $actor, array $options=array())
    {

        if(count($activity->objects) != 1) {
            throw new Exception('Too many activity objects.');
        }

        $photoObj = $activity->objects[0];

        if ($photoObj->type != Photo::OBJECT_TYPE) {
            throw new Exception('Wrong type for object.');
        }

        $photo_uri = $photoObj->largerImage;
        $thumb_uri = $photo_uri;
        if(!empty($photoObj->thumbnail)){
            $thumb_uri = $photoObj->thumbnail;
        }

        $description = $photoObj->description;
        $title = $photoObj->title;

        $options['object_type'] = Photo::OBJECT_TYPE;

        Photo::saveNew($actor, $photo_uri, $thumb_uri, $title, $description, $options);

    }

    function activityObjectFromNotice(Notice $notice)
    {

        $photo = Photo::getByNotice($notice);

        $object = new ActivityObject();
        $object->id = $notice->uri;
        $object->type = Photo::OBJECT_TYPE;
        $object->title = $photo->title;
        $object->summary = $notice->content;
        $object->link = $notice->getUrl();

        $object->largerImage = $photo->photo_uri;
        $object->thumbnail = $photo->thumb_uri;
        $object->description = $photo->description;

        return $object;

    }

    function showNoticeContent(Notice $notice, HTMLOutputter $out)
    {
        $photo = Photo::getByNotice($notice);
        if ($photo) {
            if($photo->title){
                // TODO: ugly. feel like we should have a more abstract way
                // of choosing the h-level.
                $out->element('h3', array(), $title);
            }
            $out->element('img', array('src' => $photo->photo_uri,
                'width' => '100%'));
            // TODO: add description
        }
    }

    function deleteRelated(Notice $notice)
    {
        $photo = Photo::getByNotice($notice);
        if ($photo) {
            $photo->delete();
        }
    }
}


code:
<?php
/**
 * GNU Social
 * Copyright (C) 2011, Free Software Foundation, Inc.
 *
 * PHP version 5
 *
 * LICENCE:
 * 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/>.
 *
 * @package   GNU Social
 * @author    Ian Denhardt <ian@zenhack.net>
 * @copyright 2011 Free Software Foundation, Inc.
 * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
 */

if(!defined('STATUSNET')){
    exit(1);
}

class NewphotoAction extends Action
{
    var $user = null;

    function prepare($args)
    {
        parent::prepare($args);
        $this->user = common_current_user();

        if(empty($this->user)){
            throw new ClientException(_('Must be logged in to post a photo'),
                403);
        }

        if($this->isPost()){
            $this->checkSessionToken();
        }

        return true;
    }

    function handle($args)
    {
        parent::handle($args);

        if ($this->isPost()) {
            $this->handlePost($args);
        } else {
            $this->showPage();
        }
    }

    function handlePost($args)
    {

        /*
        // Workaround for PHP returning empty $_POST and $_FILES when POST
        // length > post_max_size in php.ini
        if (empty($_FILES)
            && empty($_POST)
            && ($_SERVER['CONTENT_LENGTH'] > 0)
        ) {
            $msg = _('The server was unable to handle that much POST ' .
                'data (%s bytes) due to its current configuration.');
            $this->showForm(sprintf($msg, $_SERVER['CONTENT_LENGTH']));
            return;
        } */

        $profile = $this->user->getProfile();

        $options = array();

        ToSelector::fillOptions($this, $options);

        try {
            $this->handleUpload();
        } catch (Exception $e) {
            $this->showForm($e->getMessage());
            return;
        }

        common_redirect($photo->uri, 303);
    }

    function getUpload()
    {
            $imagefile = ImageFile::fromUpload('photo_upload');

            if($imagefile === null) {
                throw new Exception(_('No file uploaded'));
            }

            $title = $this->trimmed('title');
            $description = $this->trimmed('description');

            $new_filename = UUID::gen() . image_type_to_extension($imagefile->type);
            move_uploaded_file($imagefile->filepath, INSTALLDIR . '/file/' . $new_filename);

            // XXX: we should be using https where we can. TODO: detect whether the server
            // supports this.
            $photo_uri = 'http://' . common_config('site', 'server') . '/file/'
                . $new_filename;
            $thumb_uri = $photo_uri;

            $photo = Photo::saveNew($profile, $photo_uri, $thumb_uri, $title,
                $description, $options);

    }

    function showContent()
    {
        $form = new NewPhotoForm();
        $form->show();
    }
}


code:
<?php
/**
 * GNU Social
 * Copyright (C) 2011, Free Software Foundation, Inc.
 *
 * PHP version 5
 *
 * LICENCE:
 * 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/>.
 *
 * @package   GNU Social
 * @author    Ian Denhardt <ian@zenhack.net>
 * @copyright 2011 Free Software Foundation, Inc.
 * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
 */

if(!defined('STATUSNET')){
    exit(1);
}


code:
<?php
/**
 * GNU Social
 * Copyright (C) 2011, Free Software Foundation, Inc.
 *
 * PHP version 5
 *
 * LICENCE:
 * 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/>.
 *
 * @package   GNU Social
 * @author    Ian Denhardt <ian@zenhack.net>
 * @copyright 2011 Free Software Foundation, Inc.
 * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
 */

if(!defined('STATUSNET')){
    exit(1);
}

/**
 * Data class for photos.
 */

class Photo extends Managed_DataObject
{
    const OBJECT_TYPE = 'http://activitystrea.ms/schema/1.0/photo';

    public $__table = 'photo'; // table name
    public $id;                // char (36) // UUID
    public $uri;               // varchar (255)  // This is the corresponding notice's uri.
    public $photo_uri;         // varchar (255)
    public $thumb_uri;         // varchar (255)
    public $title;             // varchar (255)
    public $description;       // text
    public $profile_id;        // int

    public static function getByNotice($notice)
    {
        return self::getKV('uri', $notice->uri);
    }

    public function getNotice()
    {
        return Notice::getKV('uri', $this->uri);
    }

    public static function schemaDef()
    {
        return array(
            'description' => 'A photograph',
            'fields' => array(
                'id' => array('type' => 'char',
                              'length' => 36,
                              'not null' => true,
                              'description' => 'UUID'),
                'uri' => array('type' => 'varchar',
                               'length' => 255,
                               'not null' => true),
                'photo_uri' => array('type' => 'varchar',
                               'length' => 255,
                               'not null' => true),
                'photo_uri' => array('type' => 'varchar',
                               'length' => 255,
                               'not null' => true),
                'profile_id' => array('type' => 'int', 'not null' => true),
            ),
            'primary key' => array('id'),
            'foreign keys' => array('photo_profile_id__key' => array('profile' => array('profile_id' => 'id'))),
        );
    }

    static function saveNew(Profile $profile, $photo_uri, $thumb_uri, $title, $description, $options=array())
    {
        $photo = new Photo();

        $photo->id =  UUID::gen();
        $photo->profile_id = $profile->id;
        $photo->photo_uri = $photo_uri;
        $photo->thumb_uri = $thumb_uri;

        $options['object_type'] = Photo::OBJECT_TYPE;

        if (!array_key_exists('uri', $options)) {
            $options['uri'] = common_local_url('showphoto', array('id' => $photo->id));
        }

        if (!array_key_exists('rendered', $options)) {
            $options['rendered'] = sprintf("", $photo_uri,
                $title);
        }

        $photo->uri = $options['uri'];

        $photo->insert();

        return Notice::saveNew($profile->id,
                               '',
                               'web',
                               $options);

    }
}