Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Haakon Meland Eriksen 2016-02-24 17:44:27 +01:00
commit ddeab48f9b
77 changed files with 16347 additions and 15956 deletions

View File

@ -9,7 +9,9 @@ db_pass=
###############################################
### MANDATORY - let's encrypt #################
#
# Hubilla does not allow ecrypted communication, httpS.
# Hubilla requires encrypted communication via secure HTTP (HTTPS).
# This script automates installation of an SSL certificate from
# Let's Encrypt (https://letsencrypt.org)
#
# Please give the domain name of your hub
#
@ -136,12 +138,12 @@ backup_device_pass=
### OPTIONAL - do not mess with things below ##
# (...if you are not certain)
#
# Usally you are done here
# All what comes below is OPTIONAL
# Usually you are done here
# Everything below is OPTIONAL
#
###############################################
#
# Database for huzilla
# Database for hubzilla
hubzilla_db_name=hubzilla
hubzilla_db_user=hubzilla
hubzilla_db_pass=$db_pass
@ -168,7 +170,7 @@ phpmyadminpass=$db_pass
# * in eclipse: switch php debugger from zend to xdebug
# * in eclipse: add local hubzilla github repository
#
# Wich user will use eclipse?
# Which user will use eclipse?
# Leave this empty if you do not want to prepare hubzilla for debugging
#
#developer_name=

View File

@ -5,7 +5,7 @@
#
# This file automates the installation of hubzilla under Debian Linux
#
# 1) Edit the file "hubzilla-config.txt"
# 1) Copy the file "hubzilla-config.txt.template" to "hubzilla-config.txt"
# Follow the instuctions there
#
# 2) Switch to user "root" by typing "su -"
@ -92,12 +92,12 @@
# Credits
# -------
#
# The srcipt is based on Thomas Willinghams script "debian-setup.sh"
# The script is based on Thomas Willinghams script "debian-setup.sh"
# which he used to install the red#matrix.
#
# The script uses another script from https://github.com/lukas2511/letsencrypt.sh
#
# The documentation of bash is here
# The documentation for bash is here
# https://www.gnu.org/software/bash/manual/bash.html
#
function check_sanity {
@ -120,6 +120,15 @@ function check_sanity {
function check_config {
print_info "config check..."
# Check for required parameters
if [ -z "$db_pass" ]
then
die "db_pass not set in $configfile"
fi
if [ -z "$le_domain" ]
then
die "le_domain not set in $configfile"
fi
# backup is important and should be checked
if [ -n "$backup_device_name" ]
then
@ -225,6 +234,11 @@ function install_curl {
nocheck_install "curl"
}
function install_sendmail {
print_info "installing sendmail..."
nocheck_install "sendmail"
}
function install_php {
# openssl and mbstring are included in libapache2-mod-php5
# to_to: php5-suhosin
@ -809,6 +823,7 @@ check_sanity
# Read config file edited by user
configfile=hubzilla-config.txt
source $configfile
selfhostdir=/etc/selfhost
selfhostscript=selfhost-updater.sh
hubzilladaily=hubzilla-daily.sh
@ -823,6 +838,7 @@ sslconf=/etc/apache2/sites-available/default-ssl.conf
check_config
update_upgrade
install_curl
install_sendmail
install_apache
install_php
install_mysql

View File

@ -1,5 +1,7 @@
<?php
namespace Zotlabs\Access;
class AccessList {
@ -88,61 +90,3 @@ class AccessList {
}
/**
* @brief Used to wrap ACL elements in angle brackets for storage.
*
* @param[in,out] array &$item
*/
function sanitise_acl(&$item) {
if (strlen($item))
$item = '<' . notags(trim($item)) . '>';
else
unset($item);
}
/**
* @brief Convert an ACL array to a storable string.
*
* @param array $p
* @return array
*/
function perms2str($p) {
$ret = '';
if (is_array($p))
$tmp = $p;
else
$tmp = explode(',', $p);
if (is_array($tmp)) {
array_walk($tmp, 'sanitise_acl');
$ret = implode('', $tmp);
}
return $ret;
}
/**
* @brief Turn user/group ACLs stored as angle bracketed text into arrays.
*
* turn string array of angle-bracketed elements into string array
* e.g. "<123xyz><246qyo><sxo33e>" => array(123xyz,246qyo,sxo33e);
*
* @param string $s
* @return array
*/
function expand_acl($s) {
$ret = array();
if(strlen($s)) {
$t = str_replace('<','',$s);
$a = explode('>',$t);
foreach($a as $aa) {
if($aa)
$ret[] = $aa;
}
}
return $ret;
}

View File

@ -0,0 +1,62 @@
<?php
namespace Zotlabs\Project;
class System {
function get_platform_name() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['platform_name'])
return $a->config['system']['platform_name'];
return PLATFORM_NAME;
}
function get_project_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return RED_VERSION;
}
function get_update_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return DB_UPDATE_VERSION;
}
function get_notify_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['email_notify_icon_url'])
return $a->config['system']['email_notify_icon_url'];
return z_root() . '/images/hz-white-32.png';
}
function get_site_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['site_icon_url'])
return $a->config['system']['site_icon_url'];
return z_root() . '/images/hz-32.png';
}
function get_server_role() {
if(UNO)
return 'basic';
return 'advanced';
}
// return the standardised version. Since we can't easily compare
// before the STD_VERSION definition was applied, we have to treat
// all prior release versions the same. You can dig through them
// with other means (such as RED_VERSION) if necessary.
function get_std_version() {
if(defined('STD_VERSION'))
return STD_VERSION;
return '0.0.0';
}
}

View File

@ -1,11 +1,11 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
/**
* @brief Authentication backend class for RedDAV.
* @brief Authentication backend class for DAV.
*
* This class also contains some data which is not necessary for authentication
* like timezone settings.
@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
class BasicAuth extends DAV\Auth\Backend\AbstractBasic {
/**
* @brief This variable holds the currently logged-in channel_address.
@ -45,18 +45,18 @@ class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
public $observer = '';
/**
*
* @see RedBrowser::set_writeable()
* @see Browser::set_writeable()
* @var \Sabre\DAV\Browser\Plugin
*/
public $browser;
/**
* channel_id of the current visited path. Set in RedDirectory::getDir().
* channel_id of the current visited path. Set in Directory::getDir().
*
* @var int
*/
public $owner_id = 0;
/**
* channel_name of the current visited path. Set in RedDirectory::getDir().
* channel_name of the current visited path. Set in Directory::getDir().
*
* Used for creating the path in cloud/
*
@ -197,7 +197,7 @@ class RedBasicAuth extends DAV\Auth\Backend\AbstractBasic {
}
/**
* @brief Prints out all RedBasicAuth variables to logger().
* @brief Prints out all BasicAuth variables to logger().
*
* @return void
*/

View File

@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedBrowser extends DAV\Browser\Plugin {
class Browser extends DAV\Browser\Plugin {
/**
* @see set_writeable()

View File

@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@ -16,7 +16,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
class Directory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
/**
* @brief The path inside /cloud
@ -116,7 +116,7 @@ class RedDirectory extends DAV\Node implements DAV\ICollection, DAV\IQuota {
$modulename = get_app()->module;
if ($this->red_path === '/' && $name === $modulename) {
return new RedDirectory('/' . $modulename, $this->auth);
return new Directory('/' . $modulename, $this->auth);
}
$x = RedFileData($this->ext_path . '/' . $name, $this->auth);

View File

@ -1,6 +1,6 @@
<?php
namespace RedMatrix\RedDAV;
namespace Zotlabs\Storage;
use Sabre\DAV;
@ -15,7 +15,7 @@ use Sabre\DAV;
* @link http://github.com/friendica/red
* @license http://opensource.org/licenses/mit-license.php The MIT License (MIT)
*/
class RedFile extends DAV\Node implements DAV\IFile {
class File extends DAV\Node implements DAV\IFile {
/**
* The file from attach table.

200
Zotlabs/Web/Router.php Normal file
View File

@ -0,0 +1,200 @@
<?php
namespace Zotlabs\Web;
class Router {
function __construct(&$a) {
/**
*
* We have already parsed the server path into $a->argc and $a->argv
*
* $a->argv[0] is our module name. We will load the file mod/{$a->argv[0]}.php
* and use it for handling our URL request.
* The module file contains a few functions that we call in various circumstances
* and in the following order:
*
* "module"_init
* "module"_post (only called if there are $_POST variables)
* "module"_content - the string return of this function contains our page body
*
* Modules which emit other serialisations besides HTML (XML,JSON, etc.) should do
* so within the module init and/or post functions and then invoke killme() to terminate
* further processing.
*/
if(strlen($a->module)) {
/**
*
* We will always have a module name.
* First see if we have a plugin which is masquerading as a module.
*
*/
if(is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) {
include_once("addon/{$a->module}/{$a->module}.php");
if(function_exists($a->module . '_module'))
$a->module_loaded = true;
}
if((strpos($a->module,'admin') === 0) && (! is_site_admin())) {
$a->module_loaded = false;
notice( t('Permission denied.') . EOL);
goaway(z_root());
}
/**
* If the site has a custom module to over-ride the standard module, use it.
* Otherwise, look for the standard program module in the 'mod' directory
*/
if(! $a->module_loaded) {
if(file_exists("mod/site/{$a->module}.php")) {
include_once("mod/site/{$a->module}.php");
$a->module_loaded = true;
}
elseif(file_exists("mod/{$a->module}.php")) {
include_once("mod/{$a->module}.php");
$a->module_loaded = true;
}
}
/**
* This provides a place for plugins to register module handlers which don't otherwise exist on the system.
* If the plugin sets 'installed' to true we won't throw a 404 error for the specified module even if
* there is no specific module file or matching plugin name.
* The plugin should catch at least one of the module hooks for this URL.
*/
$x = array('module' => $a->module, 'installed' => false);
call_hooks('module_loaded', $x);
if($x['installed'])
$a->module_loaded = true;
/**
* The URL provided does not resolve to a valid module.
*
* On Dreamhost sites, quite often things go wrong for no apparent reason and they send us to '/internal_error.html'.
* We don't like doing this, but as it occasionally accounts for 10-20% or more of all site traffic -
* we are going to trap this and redirect back to the requested page. As long as you don't have a critical error on your page
* this will often succeed and eventually do the right thing.
*
* Otherwise we are going to emit a 404 not found.
*/
if(! $a->module_loaded) {
// Stupid browser tried to pre-fetch our Javascript img template. Don't log the event or return anything - just quietly exit.
if((x($_SERVER, 'QUERY_STRING')) && preg_match('/{[0-9]}/', $_SERVER['QUERY_STRING']) !== 0) {
killme();
}
if((x($_SERVER, 'QUERY_STRING')) && ($_SERVER['QUERY_STRING'] === 'q=internal_error.html') && $a->config['system']['dreamhost_error_hack']) {
logger('index.php: dreamhost_error_hack invoked. Original URI =' . $_SERVER['REQUEST_URI']);
goaway($a->get_baseurl() . $_SERVER['REQUEST_URI']);
}
logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' ADDRESS: ' . $_SERVER['REMOTE_ADDR'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG);
header($_SERVER['SERVER_PROTOCOL'] . ' 404 ' . t('Not Found'));
$tpl = get_markup_template('404.tpl');
$a->page['content'] = replace_macros($tpl, array(
'$message' => t('Page not found.')
));
// pretend this is a module so it will initialise the theme
$a->module = '404';
$a->module_loaded = true;
}
}
}
function Dispatch(&$a) {
/**
* Call module functions
*/
if($a->module_loaded) {
$a->page['page_title'] = $a->module;
$placeholder = '';
/**
* No theme has been specified when calling the module_init functions
* For this reason, please restrict the use of templates to those which
* do not provide any presentation details - as themes will not be able
* to over-ride them.
*/
if(function_exists($a->module . '_init')) {
$arr = array('init' => true, 'replace' => false);
call_hooks($a->module . '_mod_init', $arr);
if(! $arr['replace']) {
$func = $a->module . '_init';
$func($a);
}
}
/**
* Do all theme initialiasion here before calling any additional module functions.
* The module_init function may have changed the theme.
* Additionally any page with a Comanche template may alter the theme.
* So we'll check for those now.
*/
/**
* In case a page has overloaded a module, see if we already have a layout defined
* otherwise, if a PDL file exists for this module, use it
* The member may have also created a customised PDL that's stored in the config
*/
load_pdl($a);
/**
* load current theme info
*/
$theme_info_file = 'view/theme/' . current_theme() . '/php/theme.php';
if (file_exists($theme_info_file)){
require_once($theme_info_file);
}
if(function_exists(str_replace('-', '_', current_theme()) . '_init')) {
$func = str_replace('-', '_', current_theme()) . '_init';
$func($a);
}
elseif (x($a->theme_info, 'extends') && file_exists('view/theme/' . $a->theme_info['extends'] . '/php/theme.php')) {
require_once('view/theme/' . $a->theme_info['extends'] . '/php/theme.php');
if(function_exists(str_replace('-', '_', $a->theme_info['extends']) . '_init')) {
$func = str_replace('-', '_', $a->theme_info['extends']) . '_init';
$func($a);
}
}
if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error)
&& (function_exists($a->module . '_post'))
&& (! x($_POST, 'auth-params'))) {
call_hooks($a->module . '_mod_post', $_POST);
$func = $a->module . '_post';
$func($a);
}
if((! $a->error) && (function_exists($a->module . '_content'))) {
$arr = array('content' => $a->page['content'], 'replace' => false);
call_hooks($a->module . '_mod_content', $arr);
$a->page['content'] = $arr['content'];
if(! $arr['replace']) {
$func = $a->module . '_content';
$arr = array('content' => $func($a));
}
call_hooks($a->module . '_mod_aftercontent', $arr);
$a->page['content'] .= $arr['content'];
}
}
}
}

View File

@ -1,5 +1,5 @@
<?php
namespace Zotlabs\Zot;
class DReport {

View File

@ -2,9 +2,6 @@
namespace Zotlabs\Zot;
require_once('Zotlabs/Zot/IHandler.php');
class ZotHandler implements IHandler {
function Ping() {

View File

@ -43,12 +43,11 @@ require_once('include/taxonomy.php');
require_once('include/identity.php');
require_once('include/Contact.php');
require_once('include/account.php');
require_once('include/AccessList.php');
define ( 'PLATFORM_NAME', 'hubzilla' );
define ( 'RED_VERSION', trim(file_get_contents('version.inc')));
define ( 'STD_VERSION', '1.2.3' );
define ( 'STD_VERSION', '1.2.4' );
define ( 'ZOT_REVISION', 1 );
define ( 'DB_UPDATE_VERSION', 1163 );
@ -624,6 +623,21 @@ function startup() {
}
}
class ZotlabsAutoloader {
static public function loader($className) {
$filename = str_replace('\\', '/', $className) . ".php";
if (file_exists($filename)) {
include($filename);
if (class_exists($className)) {
return TRUE;
}
}
return FALSE;
}
}
/**
* class: App
*
@ -854,6 +868,9 @@ class App {
$this->register_template_engine($k);
}
}
spl_autoload_register('ZotlabsAutoloader::loader');
}
function get_baseurl($ssl = false) {
@ -1013,7 +1030,7 @@ class App {
'$user_scalable' => $user_scalable,
'$baseurl' => $this->get_baseurl(),
'$local_channel' => local_channel(),
'$generator' => get_platform_name() . ((get_project_version()) ? ' ' . get_project_version() : ''),
'$generator' => Zotlabs\Project\System::get_platform_name() . ((Zotlabs\Project\System::get_project_version()) ? ' ' . Zotlabs\Project\System::get_project_version() : ''),
'$update_interval' => $interval,
'$icon' => head_get_icon(),
'$head_css' => head_get_css(),
@ -1402,6 +1419,9 @@ function check_config(&$a) {
}
load_hooks();
check_cron_broken();
}
@ -2364,45 +2384,3 @@ function check_cron_broken() {
}
function get_platform_name() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['platform_name'])
return $a->config['system']['platform_name'];
return PLATFORM_NAME;
}
function get_project_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return RED_VERSION;
}
function get_update_version() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['hide_version'])
return '';
return DB_UPDATE_VERSION;
}
function get_notify_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['email_notify_icon_url'])
return $a->config['system']['email_notify_icon_url'];
return z_root() . '/images/hz-white-32.png';
}
function get_site_icon() {
$a = get_app();
if(is_array($a->config) && is_array($a->config['system']) && $a->config['system']['site_icon_url'])
return $a->config['system']['site_icon_url'];
return z_root() . '/images/hz-32.png';
}
function get_server_role() {
if(UNO)
return 'basic';
return 'advanced';
}

View File

@ -407,7 +407,7 @@ function account_allow($hash) {
pop_lang();
if(get_config('system','auto_channel_create'))
if(get_config('system','auto_channel_create') || UNO)
auto_channel_create($register[0]['uid']);
if ($res) {
@ -500,7 +500,7 @@ function account_approve($hash) {
);
if(get_config('system','auto_channel_create'))
if(get_config('system','auto_channel_create') || UNO)
auto_channel_create($register[0]['uid']);
info( t('Account verified. Please login.') . EOL );

View File

@ -2106,10 +2106,10 @@ require_once('include/api_auth.php');
'private' => $private, 'textlimit' => $textlimit, 'sslserver' => $sslserver, 'ssl' => $ssl,
'shorturllength' => '30',
'hubzilla' => array(
'PLATFORM_NAME' => get_platform_name(),
'RED_VERSION' => get_project_version(),
'PLATFORM_NAME' => Zotlabs\Project\System::get_platform_name(),
'RED_VERSION' => Zotlabs\Project\System::get_project_version(),
'ZOT_REVISION' => ZOT_REVISION,
'DB_UPDATE_VERSION' => get_update_version()
'DB_UPDATE_VERSION' => Zotlabs\Project\System::get_update_version()
)
));
@ -2142,12 +2142,12 @@ require_once('include/api_auth.php');
if($type === 'xml') {
header("Content-type: application/xml");
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\r\n" . '<version>' . get_project_version() . '</version>' . "\r\n";
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\r\n" . '<version>' . Zotlabs\Project\System::get_project_version() . '</version>' . "\r\n";
killme();
}
elseif($type === 'json') {
header("Content-type: application/json");
echo '"' . get_project_version() . '"';
echo '"' . Zotlabs\Project\System::get_project_version() . '"';
killme();
}
}

View File

@ -269,15 +269,16 @@ function relative_date($posted_date, $format = null) {
return t('less than a second ago');
}
$a = array( 12 * 30 * 24 * 60 * 60 => array( t('year'), t('years')),
30 * 24 * 60 * 60 => array( t('month'), t('months')),
7 * 24 * 60 * 60 => array( t('week'), t('weeks')),
24 * 60 * 60 => array( t('day'), t('days')),
60 * 60 => array( t('hour'), t('hours')),
60 => array( t('minute'), t('minutes')),
1 => array( t('second'), t('seconds'))
$a = array( 12 * 30 * 24 * 60 * 60 => 'y',
30 * 24 * 60 * 60 => 'm',
7 * 24 * 60 * 60 => 'w',
24 * 60 * 60 => 'd',
60 * 60 => 'h',
60 => 'i',
1 => 's'
);
foreach ($a as $secs => $str) {
$d = $etime / $secs;
if ($d >= 1) {
@ -285,11 +286,43 @@ function relative_date($posted_date, $format = null) {
if (! $format)
$format = t('%1$d %2$s ago', 'e.g. 22 hours ago, 1 minute ago');
return sprintf($format, $r, (($r == 1) ? $str[0] : $str[1]));
return sprintf($format, $r, plural_dates($str,$r));
}
}
}
function plural_dates($k,$n) {
switch($k) {
case 'y':
return tt('year','years',$n,'relative_date');
break;
case 'm':
return tt('month','months',$n,'relative_date');
break;
case 'w':
return tt('week','weeks',$n,'relative_date');
break;
case 'd':
return tt('day','days',$n,'relative_date');
break;
case 'h':
return tt('hour','hours',$n,'relative_date');
break;
case 'i':
return tt('minute','minutes',$n,'relative_date');
break;
case 's':
return tt('second','seconds',$n,'relative_date');
break;
default:
return;
}
}
/**
* @brief Returns timezone correct age in years.
*

View File

@ -529,7 +529,7 @@ function notification($params) {
$tpl = get_markup_template('email_notify_html.tpl');
$email_html_body = replace_macros($tpl,array(
'$banner' => $datarray['banner'],
'$notify_icon' => get_notify_icon(),
'$notify_icon' => Zotlabs\Project\System::get_notify_icon(),
'$product' => $datarray['product'],
'$preamble' => $datarray['preamble'],
'$sitename' => $datarray['sitename'],

View File

@ -67,7 +67,7 @@ function ical_wrapper($ev) {
$o .= "BEGIN:VCALENDAR";
$o .= "\r\nVERSION:2.0";
$o .= "\r\nMETHOD:PUBLISH";
$o .= "\r\nPRODID:-//" . get_config('system','sitename') . "//" . get_platform_name() . "//" . strtoupper(get_app()->language). "\r\n";
$o .= "\r\nPRODID:-//" . get_config('system','sitename') . "//" . Zotlabs\Project\System::get_platform_name() . "//" . strtoupper(get_app()->language). "\r\n";
if(array_key_exists('start', $ev))
$o .= format_event_ical($ev);
else {

View File

@ -25,7 +25,7 @@ function feature_enabled($uid,$feature) {
}
function get_feature_default($feature) {
$f = get_features();
$f = get_features(false);
foreach($f as $cat) {
foreach($cat as $feat) {
if(is_array($feat) && $feat[0] === $feature)

View File

@ -484,7 +484,7 @@ function identity_basic_export($channel_id, $items = false) {
// use constants here as otherwise we will have no idea if we can import from a site
// with a non-standard platform and version.
$ret['compatibility'] = array('project' => PLATFORM_NAME, 'version' => RED_VERSION, 'database' => DB_UPDATE_VERSION, 'server_role' => get_server_role());
$ret['compatibility'] = array('project' => PLATFORM_NAME, 'version' => RED_VERSION, 'database' => DB_UPDATE_VERSION, 'server_role' => Zotlabs\Project\System::get_server_role());
$r = q("select * from channel where channel_id = %d limit 1",
intval($channel_id)

View File

@ -610,8 +610,8 @@ function get_feed_for($channel, $observer_hash, $params) {
$atom = '';
$atom .= replace_macros($feed_template, array(
'$version' => xmlify(get_project_version()),
'$red' => xmlify(get_platform_name()),
'$version' => xmlify(Zotlabs\Project\System::get_project_version()),
'$red' => xmlify(Zotlabs\Project\System::get_platform_name()),
'$feed_id' => xmlify($channel['xchan_url']),
'$feed_title' => xmlify($channel['channel_name']),
'$feed_updated' => xmlify(datetime_convert('UTC', 'UTC', 'now' , ATOM_TIME)) ,
@ -2887,13 +2887,13 @@ function store_diaspora_comment_sig($datarray, $channel, $parent_item, $post_id,
$signed_text = $datarray['mid'] . ';' . $parent_item['mid'] . ';' . $signed_body . ';' . $diaspora_handle;
/** @FIXME $uprvkey is undefined, do we still need this if-statement? */
if( $uprvkey !== false )
if( $channel && $channel['channel_prvkey'] )
$authorsig = base64_encode(rsa_sign($signed_text, $channel['channel_prvkey'], 'sha256'));
else
$authorsig = '';
$x = array('signer' => $diaspora_handle, 'body' => $signed_body, 'signed_text' => $signed_text, 'signature' => base64_encode($authorsig));
$x = array('signer' => $diaspora_handle, 'body' => $signed_body, 'signed_text' => $signed_text, 'signature' => $authorsig);
$y = json_encode($x);
@ -2902,6 +2902,7 @@ function store_diaspora_comment_sig($datarray, $channel, $parent_item, $post_id,
intval($post_id)
);
if(! $r)
logger('store_diaspora_comment_sig: DB write failed');
@ -5440,7 +5441,7 @@ function send_profile_photo_activity($channel,$photo,$profile) {
$arr['body'] = sprintf($t,$channel['channel_name'],$ptext) . "\n\n" . $ltext;
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$x = $acl->get();
$arr['allow_cid'] = $x['allow_cid'];

View File

@ -189,7 +189,7 @@ function t($s, $ctx = '') {
function translate_projectname($s) {
return str_replace(array('$projectname','$Projectname'),array(get_platform_name(),ucfirst(get_platform_name())),$s);
return str_replace(array('$projectname','$Projectname'),array(Zotlabs\Project\System::get_platform_name(),ucfirst(Zotlabs\Project\System::get_platform_name())),$s);
}

View File

@ -299,7 +299,7 @@ function menu_add_item($menu_id, $uid, $arr) {
$channel = get_app()->get_channel();
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$acl->set_from_array($arr);
$p = $acl->get();
@ -340,7 +340,7 @@ function menu_edit_item($menu_id, $uid, $arr) {
$channel = get_app()->get_channel();
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$acl->set_from_array($arr);
$p = $acl->get();

View File

@ -294,8 +294,8 @@ function z_post_url_json($url, $params, $redirects = 0, $opts = array()) {
}
function json_return_and_die($x) {
header("content-type: application/json");
function json_return_and_die($x, $content_type = 'application/json') {
header("Content-type: $content_type");
echo json_encode($x);
killme();
}
@ -1620,7 +1620,7 @@ function format_and_send_email($sender,$xchan,$item) {
$tpl = get_markup_template('email_notify_html.tpl');
$email_html_body = replace_macros($tpl,array(
'$banner' => $banner,
'$notify_icon' => get_notify_icon(),
'$notify_icon' => Zotlabs\Project\System::get_notify_icon(),
'$product' => $product,
'$preamble' => '',
'$sitename' => $sitename,
@ -1768,8 +1768,8 @@ function get_site_info() {
$site_info = get_config('system','info');
$site_name = get_config('system','sitename');
if(! get_config('system','hidden_version_siteinfo')) {
$version = get_project_version();
$tag = get_std_version();
$version = Zotlabs\Project\System::get_project_version();
$tag = Zotlabs\Project\System::get_std_version();
if(@is_dir('.git') && function_exists('shell_exec')) {
$commit = trim( @shell_exec('git log -1 --format="%h"'));
@ -1805,7 +1805,7 @@ function get_site_info() {
$data = Array(
'version' => $version,
'version_tag' => $tag,
'server_role' => get_server_role(),
'server_role' => Zotlabs\Project\System::get_server_role(),
'commit' => $commit,
'url' => z_root(),
'plugins' => $visible_plugins,
@ -1819,7 +1819,7 @@ function get_site_info() {
'locked_features' => $locked_features,
'admin' => $admin,
'site_name' => (($site_name) ? $site_name : ''),
'platform' => get_platform_name(),
'platform' => Zotlabs\Project\System::get_platform_name(),
'dbdriver' => $db->getdriver(),
'lastpoll' => get_config('system','lastpoll'),
'info' => (($site_info) ? $site_info : ''),

View File

@ -232,7 +232,7 @@ function oembed_format_object($j){
// add link to source if not present in "rich" type
if ( $j->type!='rich' || !strpos($j->html,$embedurl) ){
$embedlink = (isset($j->title))?$j->title:$embedurl;
$ret .= '<br /><span class="bookmark-identifier">#^</span>' . "<a href='$embedurl' rel='oembed'>$embedlink</a>";
$ret .= '<br />' . "<a href='$embedurl' rel='oembed'>$embedlink</a>";
$ret .= "<br />";
if (isset($j->author_name)) $ret.=" by ".$j->author_name;
if (isset($j->provider_name)) $ret.=" on ".$j->provider_name;

View File

@ -864,10 +864,10 @@ function get_role_perms($role) {
*/
function get_roles() {
$roles = array(
t('Social Networking') => array('social' => t('Mostly Public'), 'social_restricted' => t('Restricted'), 'social_private' => t('Private')),
t('Community Forum') => array('forum' => t('Mostly Public'), 'forum_restricted' => t('Restricted'), 'forum_private' => t('Private')),
t('Feed Republish') => array('feed' => t('Mostly Public'), 'feed_restricted' => t('Restricted')),
t('Special Purpose') => array('soapbox' => t('Celebrity/Soapbox'), 'repository' => t('Group Repository')),
t('Social Networking') => array('social' => t('Social - Mostly Public'), 'social_restricted' => t('Social - Restricted'), 'social_private' => t('Social - Private')),
t('Community Forum') => array('forum' => t('Forum - Mostly Public'), 'forum_restricted' => t('Forum - Restricted'), 'forum_private' => t('Forum - Private')),
t('Feed Republish') => array('feed' => t('Feed - Mostly Public'), 'feed_restricted' => t('Feed - Restricted')),
t('Special Purpose') => array('soapbox' => t('Special - Celebrity/Soapbox'), 'repository' => t('Special - Group Repository')),
t('Other') => array('custom' => t('Custom/Expert Mode'))
);

View File

@ -48,7 +48,7 @@ function photo_upload($channel, $observer, $args) {
// all other settings. 'allow_cid' being passed from an external source takes priority over channel settings.
// ...messy... needs re-factoring once the photos/files integration stabilises
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
if(array_key_exists('directory',$args) && $args['directory'])
$acl->set($args['directory']);
if(array_key_exists('allow_cid',$args))

View File

@ -653,17 +653,6 @@ function get_markup_template($s, $root = '') {
return $template;
}
// return the standardised version. Since we can't easily compare
// before the STD_VERSION definition was applied, we have to treat
// all prior release versions the same. You can dig through them
// with other means (such as RED_VERSION) if necessary.
function get_std_version() {
if(defined('STD_VERSION'))
return STD_VERSION;
return '0.0.0';
}
function folder_exists($folder)
{

View File

@ -19,13 +19,13 @@
*/
use Sabre\DAV;
use RedMatrix\RedDAV;
use Zotlabs\Storage;
require_once('vendor/autoload.php');
require_once('include/attach.php');
require_once('include/RedDAV/RedFile.php');
require_once('include/RedDAV/RedDirectory.php');
require_once('include/RedDAV/RedBasicAuth.php');
//require_once('Zotlabs/Storage/File.php');
//require_once('Zotlabs/Storage/Directory.php');
//require_once('Zotlabs/Storage/BasicAuth.php');
/**
* @brief Returns an array with viewable channels.
@ -51,7 +51,7 @@ function RedChannelList(&$auth) {
if (perm_is_allowed($rr['channel_id'], $auth->observer, 'view_storage')) {
logger('found channel: /cloud/' . $rr['channel_address'], LOGGER_DATA);
// @todo can't we drop '/cloud'? It gets stripped off anyway in RedDirectory
$ret[] = new RedDAV\RedDirectory('/cloud/' . $rr['channel_address'], $auth);
$ret[] = new Zotlabs\Storage\Directory('/cloud/' . $rr['channel_address'], $auth);
}
}
}
@ -167,9 +167,9 @@ function RedCollectionData($file, &$auth) {
foreach ($r as $rr) {
//logger('filename: ' . $rr['filename'], LOGGER_DEBUG);
if (intval($rr['is_dir'])) {
$ret[] = new RedDAV\RedDirectory($path . '/' . $rr['filename'], $auth);
$ret[] = new Zotlabs\Storage\Directory($path . '/' . $rr['filename'], $auth);
} else {
$ret[] = new RedDAV\RedFile($path . '/' . $rr['filename'], $rr, $auth);
$ret[] = new Zotlabs\Storage\File($path . '/' . $rr['filename'], $rr, $auth);
}
}
@ -204,7 +204,7 @@ function RedFileData($file, &$auth, $test = false) {
if ((! $file) || ($file === '/')) {
return new RedDAV\RedDirectory('/', $auth);
return new Zotlabs\Storage\Directory('/', $auth);
}
$file = trim($file, '/');
@ -274,7 +274,7 @@ function RedFileData($file, &$auth, $test = false) {
if ($test)
return true;
// final component was a directory.
return new RedDAV\RedDirectory($file, $auth);
return new Zotlabs\Storage\Directory($file, $auth);
}
if ($errors) {
@ -293,9 +293,9 @@ function RedFileData($file, &$auth, $test = false) {
return true;
if (intval($r[0]['is_dir'])) {
return new RedDAV\RedDirectory($path . '/' . $r[0]['filename'], $auth);
return new Zotlabs\Storage\Directory($path . '/' . $r[0]['filename'], $auth);
} else {
return new RedDAV\RedFile($path . '/' . $r[0]['filename'], $r[0], $auth);
return new Zotlabs\Storage\File($path . '/' . $r[0]['filename'], $r[0], $auth);
}
}
return false;

View File

@ -2728,3 +2728,63 @@ function item_url_replace($channel,&$item,$old,$new) {
// @fixme item['plink'] and item['llink']
}
/**
* @brief Used to wrap ACL elements in angle brackets for storage.
*
* @param[in,out] array &$item
*/
function sanitise_acl(&$item) {
if (strlen($item))
$item = '<' . notags(trim($item)) . '>';
else
unset($item);
}
/**
* @brief Convert an ACL array to a storable string.
*
* @param array $p
* @return array
*/
function perms2str($p) {
$ret = '';
if (is_array($p))
$tmp = $p;
else
$tmp = explode(',', $p);
if (is_array($tmp)) {
array_walk($tmp, 'sanitise_acl');
$ret = implode('', $tmp);
}
return $ret;
}
/**
* @brief Turn user/group ACLs stored as angle bracketed text into arrays.
*
* turn string array of angle-bracketed elements into string array
* e.g. "<123xyz><246qyo><sxo33e>" => array(123xyz,246qyo,sxo33e);
*
* @param string $s
* @return array
*/
function expand_acl($s) {
$ret = array();
if(strlen($s)) {
$t = str_replace('<','',$s);
$a = explode('>',$t);
foreach($a as $aa) {
if($aa)
$ret[] = $aa;
}
}
return $ret;
}

View File

@ -11,7 +11,6 @@
require_once('include/crypto.php');
require_once('include/items.php');
require_once('include/hubloc.php');
require_once('include/DReport.php');
require_once('include/queue_fn.php');
@ -1589,7 +1588,7 @@ function process_delivery($sender, $arr, $deliveries, $relay, $public = false, $
foreach($deliveries as $d) {
$local_public = $public;
$DR = new DReport(z_root(),$sender['hash'],$d['hash'],$arr['mid']);
$DR = new Zotlabs\Zot\DReport(z_root(),$sender['hash'],$d['hash'],$arr['mid']);
$r = q("select * from channel where channel_hash = '%s' limit 1",
dbesc($d['hash'])
@ -2068,7 +2067,7 @@ function process_mail_delivery($sender, $arr, $deliveries) {
foreach($deliveries as $d) {
$DR = new DReport(z_root(),$sender['hash'],$d['hash'],$arr['mid']);
$DR = new Zotlabs\Zot\DReport(z_root(),$sender['hash'],$d['hash'],$arr['mid']);
$r = q("select * from channel where channel_hash = '%s' limit 1",
dbesc($d['hash'])
@ -3410,14 +3409,12 @@ function process_channel_sync_delivery($sender, $arr, $deliveries) {
// we should probably do this for all items, but usually we only send one.
require_once('include/DReport.php');
if(array_key_exists('item',$arr) && is_array($arr['item'][0])) {
$DR = new DReport(z_root(),$d['hash'],$d['hash'],$arr['item'][0]['message_id'],'channel sync processed');
$DR = new Zotlabs\Zot\DReport(z_root(),$d['hash'],$d['hash'],$arr['item'][0]['message_id'],'channel sync processed');
$DR->addto_recipient($channel['channel_name'] . ' <' . $channel['channel_address'] . '@' . get_app()->get_hostname() . '>');
}
else
$DR = new DReport(z_root(),$d['hash'],$d['hash'],'sync packet','channel sync delivered');
$DR = new Zotlabs\Zot\DReport(z_root(),$d['hash'],$d['hash'],'sync packet','channel sync delivered');
$result[] = $DR->get();
@ -3835,7 +3832,7 @@ function zotinfo($arr) {
$ret['site']['channels'] = channel_total();
$ret['site']['version'] = get_platform_name() . ' ' . RED_VERSION . '[' . DB_UPDATE_VERSION . ']';
$ret['site']['version'] = Zotlabs\Project\System::get_platform_name() . ' ' . RED_VERSION . '[' . DB_UPDATE_VERSION . ']';
$ret['site']['admin'] = get_config('system','admin_email');
@ -3855,7 +3852,7 @@ function zotinfo($arr) {
$ret['site']['sellpage'] = get_config('system','sellpage');
$ret['site']['location'] = get_config('system','site_location');
$ret['site']['realm'] = get_directory_realm();
$ret['site']['project'] = get_platform_name();
$ret['site']['project'] = Zotlabs\Project\System::get_platform_name();
}

190
index.php
View File

@ -151,109 +151,7 @@ call_hooks('app_menu', $arr);
$a->set_apps($arr['app_menu']);
/**
*
* We have already parsed the server path into $a->argc and $a->argv
*
* $a->argv[0] is our module name. We will load the file mod/{$a->argv[0]}.php
* and use it for handling our URL request.
* The module file contains a few functions that we call in various circumstances
* and in the following order:
*
* "module"_init
* "module"_post (only called if there are $_POST variables)
* "module"_content - the string return of this function contains our page body
*
* Modules which emit other serialisations besides HTML (XML,JSON, etc.) should do
* so within the module init and/or post functions and then invoke killme() to terminate
* further processing.
*/
if(strlen($a->module)) {
/**
*
* We will always have a module name.
* First see if we have a plugin which is masquerading as a module.
*
*/
if(is_array($a->plugins) && in_array($a->module,$a->plugins) && file_exists("addon/{$a->module}/{$a->module}.php")) {
include_once("addon/{$a->module}/{$a->module}.php");
if(function_exists($a->module . '_module'))
$a->module_loaded = true;
}
if((strpos($a->module,'admin') === 0) && (! is_site_admin())) {
$a->module_loaded = false;
notice( t('Permission denied.') . EOL);
goaway(z_root());
}
/**
* If the site has a custom module to over-ride the standard module, use it.
* Otherwise, look for the standard program module in the 'mod' directory
*/
if(! $a->module_loaded) {
if(file_exists("mod/site/{$a->module}.php")) {
include_once("mod/site/{$a->module}.php");
$a->module_loaded = true;
}
elseif(file_exists("mod/{$a->module}.php")) {
include_once("mod/{$a->module}.php");
$a->module_loaded = true;
}
}
/**
* This provides a place for plugins to register module handlers which don't otherwise exist on the system.
* If the plugin sets 'installed' to true we won't throw a 404 error for the specified module even if
* there is no specific module file or matching plugin name.
* The plugin should catch at least one of the module hooks for this URL.
*/
$x = array('module' => $a->module, 'installed' => false);
call_hooks('module_loaded', $x);
if($x['installed'])
$a->module_loaded = true;
/**
* The URL provided does not resolve to a valid module.
*
* On Dreamhost sites, quite often things go wrong for no apparent reason and they send us to '/internal_error.html'.
* We don't like doing this, but as it occasionally accounts for 10-20% or more of all site traffic -
* we are going to trap this and redirect back to the requested page. As long as you don't have a critical error on your page
* this will often succeed and eventually do the right thing.
*
* Otherwise we are going to emit a 404 not found.
*/
if(! $a->module_loaded) {
// Stupid browser tried to pre-fetch our Javascript img template. Don't log the event or return anything - just quietly exit.
if((x($_SERVER, 'QUERY_STRING')) && preg_match('/{[0-9]}/', $_SERVER['QUERY_STRING']) !== 0) {
killme();
}
if((x($_SERVER, 'QUERY_STRING')) && ($_SERVER['QUERY_STRING'] === 'q=internal_error.html') && isset($dreamhost_error_hack)) {
logger('index.php: dreamhost_error_hack invoked. Original URI =' . $_SERVER['REQUEST_URI']);
goaway($a->get_baseurl() . $_SERVER['REQUEST_URI']);
}
logger('index.php: page not found: ' . $_SERVER['REQUEST_URI'] . ' ADDRESS: ' . $_SERVER['REMOTE_ADDR'] . ' QUERY: ' . $_SERVER['QUERY_STRING'], LOGGER_DEBUG);
header($_SERVER['SERVER_PROTOCOL'] . ' 404 ' . t('Not Found'));
$tpl = get_markup_template('404.tpl');
$a->page['content'] = replace_macros($tpl, array(
'$message' => t('Page not found.')
));
// pretend this is a module so it will initialise the theme
$a->module = '404';
$a->module_loaded = true;
}
}
$Router = new Zotlabs\Web\Router($a);
/* initialise content region */
@ -274,90 +172,9 @@ if(! ($a->module === 'setup')) {
call_hooks('page_content_top', $a->page['content']);
}
$Router->Dispatch($a);
/**
* Call module functions
*/
if($a->module_loaded) {
$a->page['page_title'] = $a->module;
$placeholder = '';
/**
* No theme has been specified when calling the module_init functions
* For this reason, please restrict the use of templates to those which
* do not provide any presentation details - as themes will not be able
* to over-ride them.
*/
if(function_exists($a->module . '_init')) {
$arr = array('init' => true, 'replace' => false);
call_hooks($a->module . '_mod_init', $arr);
if(! $arr['replace']) {
$func = $a->module . '_init';
$func($a);
}
}
/**
* Do all theme initialiasion here before calling any additional module functions.
* The module_init function may have changed the theme.
* Additionally any page with a Comanche template may alter the theme.
* So we'll check for those now.
*/
/**
* In case a page has overloaded a module, see if we already have a layout defined
* otherwise, if a PDL file exists for this module, use it
* The member may have also created a customised PDL that's stored in the config
*/
load_pdl($a);
/**
* load current theme info
*/
$theme_info_file = 'view/theme/' . current_theme() . '/php/theme.php';
if (file_exists($theme_info_file)){
require_once($theme_info_file);
}
if(function_exists(str_replace('-', '_', current_theme()) . '_init')) {
$func = str_replace('-', '_', current_theme()) . '_init';
$func($a);
}
elseif (x($a->theme_info, 'extends') && file_exists('view/theme/' . $a->theme_info['extends'] . '/php/theme.php')) {
require_once('view/theme/' . $a->theme_info['extends'] . '/php/theme.php');
if(function_exists(str_replace('-', '_', $a->theme_info['extends']) . '_init')) {
$func = str_replace('-', '_', $a->theme_info['extends']) . '_init';
$func($a);
}
}
if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error)
&& (function_exists($a->module . '_post'))
&& (! x($_POST, 'auth-params'))) {
call_hooks($a->module . '_mod_post', $_POST);
$func = $a->module . '_post';
$func($a);
}
if((! $a->error) && (function_exists($a->module . '_content'))) {
$arr = array('content' => $a->page['content'], 'replace' => false);
call_hooks($a->module . '_mod_content', $arr);
$a->page['content'] = $arr['content'];
if(! $arr['replace']) {
$func = $a->module . '_content';
$arr = array('content' => $func($a));
}
call_hooks($a->module . '_mod_aftercontent', $arr);
$a->page['content'] .= $arr['content'];
}
}
// If you're just visiting, let javascript take you home
if(x($_SESSION, 'visitor_home')) {
@ -380,9 +197,6 @@ if(stristr(implode("", $_SESSION['sysmsg']), t('Permission denied'))) {
call_hooks('page_end', $a->page['content']);
if(! $a->install)
check_cron_broken();
construct_page($a);
session_write_close();

View File

@ -555,7 +555,7 @@ CREATE TABLE IF NOT EXISTS `iconfig` (
KEY `iid` (`iid`),
KEY `cat` (`cat`),
KEY `k` (`k`),
KEY `sharing` (`sharing`),
KEY `sharing` (`sharing`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `issue` (

View File

@ -54,7 +54,7 @@ function chat_post(&$a) {
goaway(z_root() . '/chat/' . $channel['channel_address']);
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$acl->set_from_array($_REQUEST);
$arr = $acl->get();
@ -162,7 +162,7 @@ function chat_content(&$a) {
intval($a->profile['profile_uid'])
);
if($x) {
$acl = new AccessList(false);
$acl = new Zotlabs\Access\AccessList(false);
$acl->set($x[0]);
$private = $acl->is_private();
@ -199,7 +199,7 @@ function chat_content(&$a) {
if(local_channel() && argc() > 2 && argv(2) === 'new') {
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$channel_acl = $acl->get();
require_once('include/acl_selectors.php');

View File

@ -7,7 +7,7 @@
*/
use Sabre\DAV;
use RedMatrix\RedDAV;
use Zotlabs\Storage;
// composer autoloader for SabreDAV
require_once('vendor/autoload.php');
@ -35,7 +35,7 @@ function cloud_init(&$a) {
if ($which)
profile_load($a, $which, $profile);
$auth = new RedDAV\RedBasicAuth();
$auth = new Zotlabs\Storage\BasicAuth();
$ob_hash = get_observer_hash();
@ -63,7 +63,7 @@ function cloud_init(&$a) {
$_SERVER['REQUEST_URI'] = strip_zids($_SERVER['REQUEST_URI']);
$_SERVER['REQUEST_URI'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['REQUEST_URI']);
$rootDirectory = new RedDAV\RedDirectory('/', $auth);
$rootDirectory = new Zotlabs\Storage\Directory('/', $auth);
// A SabreDAV server-object
$server = new DAV\Server($rootDirectory);
@ -86,16 +86,16 @@ function cloud_init(&$a) {
}
}
require_once('include/RedDAV/RedBrowser.php');
// require_once('Zotlabs/Storage/Browser.php');
// provide a directory view for the cloud in Hubzilla
$browser = new RedDAV\RedBrowser($auth);
$browser = new Zotlabs\Storage\Browser($auth);
$auth->setBrowserPlugin($browser);
$server->addPlugin($browser);
// Experimental QuotaPlugin
// require_once('include/RedDAV/QuotaPlugin.php');
// $server->addPlugin(new RedDAV\QuotaPlugin($auth));
// require_once('Zotlabs\Storage/QuotaPlugin.php');
// $server->addPlugin(new Zotlabs\Storage\\QuotaPlugin($auth));
// All we need to do now, is to fire up the server
$server->exec();

View File

@ -239,7 +239,7 @@ function send_cover_photo_activity($channel,$photo,$profile) {
$arr['body'] = sprintf($t,$channel['channel_name'],$ptext) . "\n\n" . $ltext;
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$x = $acl->get();
$arr['allow_cid'] = $x['allow_cid'];

View File

@ -7,7 +7,7 @@
*/
use Sabre\DAV;
use RedMatrix\RedDAV;
use Zotlabs\Storage;
// composer autoloader for SabreDAV
require_once('vendor/autoload.php');
@ -54,7 +54,7 @@ function dav_init(&$a) {
if ($which)
profile_load($a, $which, $profile);
$auth = new RedDAV\RedBasicAuth();
$auth = new Zotlabs\Storage\BasicAuth();
$ob_hash = get_observer_hash();
@ -82,7 +82,7 @@ function dav_init(&$a) {
$_SERVER['REQUEST_URI'] = strip_zids($_SERVER['REQUEST_URI']);
$_SERVER['REQUEST_URI'] = preg_replace('/[\?&]davguest=(.*?)([\?&]|$)/ism', '', $_SERVER['REQUEST_URI']);
$rootDirectory = new RedDAV\RedDirectory('/', $auth);
$rootDirectory = new Zotlabs\Storage\Directory('/', $auth);
// A SabreDAV server-object
$server = new DAV\Server($rootDirectory);
@ -108,7 +108,7 @@ function dav_init(&$a) {
if ((! $auth->observer) && ($_SERVER['REQUEST_METHOD'] === 'GET')) {
try {
$x = RedFileData('/' . $a->cmd, $auth);
if($x instanceof RedDAV\RedFile)
if($x instanceof Zotlabs\Storage\File)
$isapublic_file = true;
}
catch (Exception $e) {
@ -126,14 +126,14 @@ function dav_init(&$a) {
}
}
require_once('include/RedDAV/RedBrowser.php');
// require_once('Zotlabs/Storage/Browser.php');
// provide a directory view for the cloud in Hubzilla
$browser = new RedDAV\RedBrowser($auth);
$browser = new Zotlabs\Storage\Browser($auth);
$auth->setBrowserPlugin($browser);
// Experimental QuotaPlugin
// require_once('include/RedDAV/QuotaPlugin.php');
// $server->addPlugin(new RedDAV\QuotaPlugin($auth));
// require_once('Zotlabs/Storage/QuotaPlugin.php');
// $server->addPlugin(new Zotlabs\Storage\QuotaPlugin($auth));
// All we need to do now, is to fire up the server
$server->exec();

View File

@ -118,7 +118,7 @@ function events_post(&$a) {
$channel = $a->get_channel();
$acl = new AccessList(false);
$acl = new Zotlabs\Access\AccessList(false);
if($event_id) {
$x = q("select * from event where id = %d and uid = %d limit 1",
@ -422,7 +422,7 @@ function events_content(&$a) {
require_once('include/acl_selectors.php');
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$perm_defaults = $acl->get();
$tpl = get_markup_template('event_form.tpl');

View File

@ -30,7 +30,7 @@ function filestorage_post(&$a) {
$channel = $a->get_channel();
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$acl->set_from_array($_REQUEST);
$x = $acl->get();

View File

@ -160,7 +160,7 @@ function help_content(&$a) {
$path = trim(substr($dirname,4),'/');
$o .= '<li><a href="help/' . (($path) ? $path . '/' : '') . $fname . '" >' . ucwords(str_replace('_',' ',notags($fname))) . '</a><br />' .
str_replace('$Projectname',get_platform_name(),substr($rr['text'],0,200)) . '...<br /><br /></li>';
str_replace('$Projectname',Zotlabs\Project\System::get_platform_name(),substr($rr['text'],0,200)) . '...<br /><br /></li>';
}
$o .= '</ul>';

View File

@ -120,7 +120,7 @@ function import_account(&$a, $account_id) {
notice($t);
}
if(array_key_exists('server_role',$data['compatibility'])
&& $data['compatibility']['server_role'] != get_server_role()) {
&& $data['compatibility']['server_role'] != Zotlabs\Project\System::get_server_role()) {
notice( t('Server platform is not compatible. Operation not permitted.') . EOL);
return;
}

View File

@ -310,7 +310,7 @@ function item_post(&$a) {
}
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$public_policy = ((x($_REQUEST,'public_policy')) ? escape_tags($_REQUEST['public_policy']) : map_scope($channel['channel_r_stream'],true));

View File

@ -115,7 +115,7 @@ function linkinfo_content(&$a) {
// If this is a Red site, use zrl rather than url so they get zids sent to them by default
if( x($siteinfo,'generator') && (strpos($siteinfo['generator'], get_platform_name() . ' ') === 0))
if( x($siteinfo,'generator') && (strpos($siteinfo['generator'], Zotlabs\Project\System::get_platform_name() . ' ') === 0))
$template = str_replace('url','zrl',$template);
if($siteinfo["title"] == "") {

View File

@ -127,7 +127,7 @@ function mitem_content(&$a) {
$menu_names[] = $menus['menu_name'];
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$lockstate = (($channel['channel_allow_cid'] || $channel['channel_allow_gid'] || $channel['channel_deny_cid'] || $channel['channel_deny_gid']) ? 'lock' : 'unlock');

View File

@ -8,7 +8,6 @@ function new_channel_init(&$a) {
$cmd = ((argc() > 1) ? argv(1) : '');
if($cmd === 'autofill.json') {
require_once('library/urlify/URLify.php');
$result = array('error' => false, 'message' => '');
@ -59,7 +58,6 @@ function new_channel_init(&$a) {
}
function new_channel_post(&$a) {
$arr = $_POST;
@ -94,15 +92,8 @@ function new_channel_post(&$a) {
}
function new_channel_content(&$a) {
$acc = $a->get_account();
if((! $acc) || $acc['account_id'] != get_account_id()) {
@ -119,29 +110,33 @@ function new_channel_content(&$a) {
if($r && (! intval($r[0]['total']))) {
$default_role = get_config('system','default_permissions_role');
}
$limit = account_service_class_fetch(get_account_id(),'total_identities');
if($r && ($limit !== false)) {
$channel_usage_message = sprintf( t("You have created %1$.0f of %2$.0f allowed channels."), $r[0]['total'], $limit);
}
else {
$channel_usage_message = '';
}
}
$name = ((x($_REQUEST,'name')) ? $_REQUEST['name'] : "" );
$nickname = ((x($_REQUEST,'nickname')) ? $_REQUEST['nickname'] : "" );
$name = array('name', t('Name or caption'), ((x($_REQUEST,'name')) ? $_REQUEST['name'] : ''), t('Examples: "Bob Jameson", "Lisa and her Horses", "Soccer", "Aviation Group"'));
$nickhub = '@' . str_replace(array('http://','https://','/'), '', get_config('system','baseurl'));
$nickname = array('nickname', t('Choose a short nickname'), ((x($_REQUEST,'nickname')) ? $_REQUEST['nickname'] : ''), sprintf( t('Your nickname will be used to create an easy to remember channel address e.g. nickname%s'), $nickhub));
$privacy_role = ((x($_REQUEST,'permissions_role')) ? $_REQUEST['permissions_role'] : "" );
$role = array('permissions_role' , t('Channel role and privacy'), ($privacy_role) ? $privacy_role : 'social', t('Select a channel role with your privacy requirements.') . ' <a href="help/roles" target="_blank">' . t('Read more about roles') . '</a>',get_roles());
$o = replace_macros(get_markup_template('new_channel.tpl'), array(
'$title' => t('Add a Channel'),
'$desc' => t('A channel is your own collection of related web pages. A channel can be used to hold social network profiles, blogs, conversation groups and forums, celebrity pages, and much more. You may create as many channels as your service provider allows.'),
'$label_name' => t('Name'),
'$help_name' => t('Examples: "Bob Jameson", "Lisa and her Horses", "Soccer", "Aviation Group" '),
'$label_nick' => t('Choose a short nickname'),
'$nick_hub' => '@' . str_replace(array('http://','https://','/'), '', get_config('system','baseurl')),
'$nick_desc' => t('Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others.'),
'$label_import' => t('Or <a href="import">import an existing channel</a> from another location'),
'$title' => t('Create Channel'),
'$desc' => t('A channel is your identity on this network. It can represent a person, a blog, or a forum to name a few. Channels can make connections with other channels to share information with highly detailed permissions.'),
'$label_import' => t('or <a href="import">import an existing channel</a> from another location.'),
'$name' => $name,
'$help_role' => t('Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you'),
'$role' => array('permissions_role' , t('Channel Type'), ($privacy_role) ? $privacy_role : 'social', '<a href="help/roles" target="_blank">'.t('Read more about roles').'</a>',get_roles()),
'$role' => $role,
'$default_role' => $default_role,
'$nickname' => $nickname,
'$submit' => t('Create')
'$submit' => t('Create'),
'$channel_usage_message' => $channel_usage_message
));
return $o;

View File

@ -85,7 +85,7 @@ function photos_post(&$a) {
$owner_record = $s[0];
$acl = new AccessList($a->data['channel']);
$acl = new Zotlabs\Access\AccessList($a->data['channel']);
if((argc() > 3) && (argv(2) === 'album')) {
@ -595,7 +595,7 @@ function photos_content(&$a) {
if($_is_owner) {
$channel = $a->get_channel();
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$channel_acl = $acl->get();
$lockstate = (($acl->is_private()) ? 'lock' : 'unlock');

View File

@ -12,7 +12,6 @@ require_once('include/zot.php');
function post_init(&$a) {
if (array_key_exists('auth', $_REQUEST)) {
require_once('Zotlabs/Zot/Auth.php');
$x = new Zotlabs\Zot\Auth($_REQUEST);
exit;
}
@ -22,9 +21,6 @@ function post_init(&$a) {
function post_post(&$a) {
require_once('Zotlabs/Zot/Receiver.php');
require_once('Zotlabs/Zot/ZotHandler.php');
$z = new Zotlabs\Zot\Receiver($_REQUEST['data'],get_config('system','prvkey'), new Zotlabs\Zot\ZotHandler());
// notreached;

View File

@ -13,30 +13,39 @@ function pubsites_content(&$a) {
}
$url .= '/sites';
$o .= '<div class="generic-content-wrapper-styled">';
$o .= '<div class="generic-content-wrapper">';
$o .= '<h1>' . t('Public Sites') . '</h1>';
$o .= '<div class="section-title-wrapper"><h2>' . t('Public Hubs') . '</h2></div>';
$o .= '<div class="descriptive-text">' .
t('The listed sites allow public registration for the $Projectname network. All sites in the network are interlinked so membership on any of them conveys membership in the network as a whole. Some sites may require subscription or provide tiered service plans. The provider links <strong>may</strong> provide additional details.') . '</div>' . EOL;
$o .= '<div class="section-content-tools-wrapper"><div class="descriptive-text">' .
t('The listed hubs allow public registration for the $Projectname network. All hubs in the network are interlinked so membership on any of them conveys membership in the network as a whole. Some hubs may require subscription or provide tiered service plans. The hub itself <strong>may</strong> provide additional details.') . '</div>' . EOL;
$ret = z_fetch_url($url);
if($ret['success']) {
$j = json_decode($ret['body'],true);
if($j) {
$rate_meta = ((local_channel()) ? '<td>' . t('Rate this hub') . '</td>' : '');
$o .= '<table border="1"><tr><td>' . t('Site URL') . '</td><td>' . t('Access Type') . '</td><td>' . t('Registration Policy') . '</td><td>' . t('Location') . '</td><td>' . t('Project') . '</td><td>' . t('View hub ratings') . '</td>' . $rate_meta . '</tr>';
$o .= '<table class="table table-striped table-hover"><tr><td>' . t('Hub URL') . '</td><td>' . t('Access Type') . '</td><td>' . t('Registration Policy') . '</td><td colspan="2">' . t('Ratings') . '</td></tr>';
if($j['sites']) {
foreach($j['sites'] as $jj) {
if($jj['project'] !== Zotlabs\Project\System::get_platform_name())
continue;
$host = strtolower(substr($jj['url'],strpos($jj['url'],'://')+3));
$rate_links = ((local_channel()) ? '<td><a href="rate?f=&target=' . $host . '" class="btn-btn-default"><i class="icon-check"></i> ' . t('Rate') . '</a></td>' : '');
$o .= '<tr><td>' . '<a href="'. (($jj['sellpage']) ? $jj['sellpage'] : $jj['url'] . '/register' ) . '" >' . $jj['url'] . '</a>' . '</td><td>' . $jj['access'] . '</td><td>' . $jj['register'] . '</td><td>' . $jj['location'] . '</td><td>' . $jj['project'] . '</td><td><a href="ratings/' . $host . '" class="btn-btn-default"><i class="icon-eye-open"></i> ' . t('View ratings') . '</a></td>' . $rate_links . '</tr>';
$location = '';
if(!empty($jj['location'])) {
$location = '<p title="' . t('Location') . '" style="margin: 5px 5px 0 0; text-align: right"><i class="icon-globe"></i> ' . $jj['location'] . '</p>';
}
else {
$location = '<br />&nbsp;';
}
$urltext = str_replace(array('https://'), '', $jj['url']);
$o .= '<tr><td><a href="'. (($jj['sellpage']) ? $jj['sellpage'] : $jj['url'] . '/register' ) . '" ><i class="icon-link"></i> ' . $urltext . '</a>' . $location . '</td><td>' . $jj['access'] . '</td><td>' . $jj['register'] . '</td><td><a href="ratings/' . $host . '" class="btn-btn-default"><i class="icon-eye-open"></i> ' . t('View') . '</a></td>' . $rate_links . '</tr>';
}
}
$o .= '</table>';
$o .= '</div>';
$o .= '</div></div>';
}
}

View File

@ -177,7 +177,7 @@ function register_content(&$a) {
if(get_config('system','register_policy') == REGISTER_CLOSED) {
if(get_config('system','directory_mode') == DIRECTORY_MODE_STANDALONE) {
notice( t('Registration on this site is disabled.') . EOL);
notice( t('Registration on this hub is disabled.') . EOL);
return;
}
@ -186,8 +186,8 @@ function register_content(&$a) {
}
if(get_config('system','register_policy') == REGISTER_APPROVE) {
$registration_is = t('Registration on this site/hub is by approval only.');
$other_sites = t('<a href="pubsites">Register at another affiliated site/hub</a>');
$registration_is = t('Registration on this hub is by approval only.');
$other_sites = t('<a href="pubsites">Register at another affiliated hub.</a>');
}
$max_dailies = intval(get_config('system','max_daily_registrations'));
@ -208,7 +208,7 @@ function register_content(&$a) {
if(! $tosurl)
$tosurl = $a->get_baseurl() . '/help/TermsOfService';
$toslink = '<a href="' . $tosurl . '" >' . t('Terms of Service') . '</a>';
$toslink = '<a href="' . $tosurl . '" target="_blank">' . t('Terms of Service') . '</a>';
// Configurable whether to restrict age or not - default is based on international legal requirements
// This can be relaxed if you are on a restricted server that does not share with public servers
@ -220,13 +220,16 @@ function register_content(&$a) {
$enable_tos = 1 - intval(get_config('system','no_termsofservice'));
$email = ((x($_REQUEST,'email')) ? strip_tags(trim($_REQUEST['email'])) : "" );
$password = ((x($_REQUEST,'password')) ? trim($_REQUEST['password']) : "" );
$password2 = ((x($_REQUEST,'password2')) ? trim($_REQUEST['password2']) : "" );
$invite_code = ((x($_REQUEST,'invite_code')) ? strip_tags(trim($_REQUEST['invite_code'])) : "" );
$name = ((x($_REQUEST,'name')) ? escape_tags(trim($_REQUEST['name'])) : "" );
$nickname = ((x($_REQUEST,'nickname')) ? strip_tags(trim($_REQUEST['nickname'])) : "" );
$privacy_role = ((x($_REQUEST,'permissions_role')) ? $_REQUEST['permissions_role'] : "" );
$email = array('email', t('Your email address'), ((x($_REQUEST,'email')) ? strip_tags(trim($_REQUEST['email'])) : ""));
$password = array('password', t('Choose a password'), ((x($_REQUEST,'password')) ? trim($_REQUEST['password']) : ""));
$password2 = array('password2', t('Please re-enter your password'), ((x($_REQUEST,'password2')) ? trim($_REQUEST['password2']) : ""));
$invite_code = array('invite_code', t('Please enter your invitation code'), ((x($_REQUEST,'invite_code')) ? strip_tags(trim($_REQUEST['invite_code'])) : ""));
$name = array('name', t('Name or caption'), ((x($_REQUEST,'name')) ? $_REQUEST['name'] : ''), t('Examples: "Bob Jameson", "Lisa and her Horses", "Soccer", "Aviation Group"'));
$nickhub = '@' . str_replace(array('http://','https://','/'), '', get_config('system','baseurl'));
$nickname = array('nickname', t('Choose a short nickname'), ((x($_REQUEST,'nickname')) ? $_REQUEST['nickname'] : ''), sprintf( t('Your nickname will be used to create an easy to remember channel address e.g. nickname%s'), $nickhub));
$privacy_role = ((x($_REQUEST,'permissions_role')) ? $_REQUEST['permissions_role'] : "");
$role = array('permissions_role' , t('Channel role and privacy'), ($privacy_role) ? $privacy_role : 'social', t('Select a channel role with your privacy requirements.') . ' <a href="help/roles" target="_blank">' . t('Read more about roles') . '</a>',get_roles());
$tos = array('tos', $label_tos, '', '', array(t('no'),t('yes')));
$auto_create = ((UNO) || (get_config('system','auto_channel_create')) ? true : false);
$default_role = ((UNO) ? 'social' : get_config('system','default_permissions_role'));
@ -241,29 +244,17 @@ function register_content(&$a) {
'$other_sites' => $other_sites,
'$invitations' => get_config('system','invitation_only'),
'$invite_desc' => t('Membership on this site is by invitation only.'),
'$label_invite' => t('Please enter your invitation code'),
'$invite_code' => $invite_code,
'$auto_create' => $auto_create,
'$label_name' => t('Name'),
'$help_name' => t('Enter your name'),
'$label_nick' => t('Choose a short nickname'),
'$nick_hub' => '@' . str_replace(array('http://','https://','/'), '', get_config('system','baseurl')),
'$nick_desc' => t('Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others.'),
'$name' => $name,
'$help_role' => t('Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you'),
'$role' => array('permissions_role' , t('Channel Type'), ($privacy_role) ? $privacy_role : 'social', '<a href="help/roles" target="_blank">'.t('Read more about roles').'</a>',get_roles()),
'$role' => $role,
'$default_role' => $default_role,
'$nickname' => $nickname,
'$submit' => t('Create'),
'$label_email' => t('Your email address'),
'$label_pass1' => t('Choose a password'),
'$label_pass2' => t('Please re-enter your password'),
'$label_tos' => $label_tos,
'$enable_tos' => $enable_tos,
'$tos' => $tos,
'$email' => $email,
'$pass1' => $password,
'$pass2' => $password2,
'$submit' => t('Register')
'$submit' => ((UNO || $auto_create || $registration_is) ? t('Register') : t('Proceed to create your first channel'))
));
return $o;

View File

@ -95,7 +95,7 @@ function rpost_content(&$a) {
$channel = $a->get_channel();
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$channel_acl = $acl->get();

View File

@ -225,10 +225,44 @@ function settings_post(&$a) {
$errs = array();
$email = ((x($_POST,'email')) ? trim(notags($_POST['email'])) : '');
$account = $a->get_account();
if($email != $account['account_email']) {
if(! valid_email($email))
$errs[] = t('Not valid email.');
$adm = trim(get_config('system','admin_email'));
if(($adm) && (strcasecmp($email,$adm) == 0)) {
$errs[] = t('Protected email address. Cannot change to that email.');
$email = $a->user['email'];
}
if(! $errs) {
$r = q("update account set account_email = '%s' where account_id = %d",
dbesc($email),
intval($account['account_id'])
);
if(! $r)
$errs[] = t('System failure storing new email. Please try again.');
}
}
if($errs) {
foreach($errs as $err)
notice($err . EOL);
$errs = array();
}
if((x($_POST,'npassword')) || (x($_POST,'confirm'))) {
$newpass = $_POST['npassword'];
$confirm = $_POST['confirm'];
$origpass = trim($_POST['origpass']);
require_once('include/auth.php');
if(! account_verify_password($email,$origpass)) {
$errs[] = t('Password verification failed.');
}
$newpass = trim($_POST['npassword']);
$confirm = trim($_POST['confirm']);
if($newpass != $confirm ) {
$errs[] = t('Passwords do not match. Password unchanged.');
@ -255,31 +289,6 @@ function settings_post(&$a) {
}
}
if($errs) {
foreach($errs as $err)
notice($err . EOL);
$errs = array();
}
$email = ((x($_POST,'email')) ? trim(notags($_POST['email'])) : '');
$account = $a->get_account();
if($email != $account['account_email']) {
if(! valid_email($email))
$errs[] = t('Not valid email.');
$adm = trim(get_config('system','admin_email'));
if(($adm) && (strcasecmp($email,$adm) == 0)) {
$errs[] = t('Protected email address. Cannot change to that email.');
$email = $a->user['email'];
}
if(! $errs) {
$r = q("update account set account_email = '%s' where account_id = %d",
dbesc($email),
intval($account['account_id'])
);
if(! $r)
$errs[] = t('System failure storing new email. Please try again.');
}
}
if($errs) {
foreach($errs as $err)
@ -314,7 +323,7 @@ function settings_post(&$a) {
foreach($global_perms as $k => $v) {
$set_perms .= ', ' . $v[0] . ' = ' . intval($_POST[$k]) . ' ';
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$acl->set_from_array($_POST);
$x = $acl->get();
@ -695,8 +704,9 @@ function settings_content(&$a) {
$o .= replace_macros($tpl, array(
'$form_security_token' => get_form_security_token("settings_account"),
'$title' => t('Account Settings'),
'$password1'=> array('npassword', t('Enter New Password:'), '', ''),
'$password2'=> array('confirm', t('Confirm New Password:'), '', t('Leave password fields blank unless changing')),
'$origpass' => array('origpass', t('Current Password'), ' ',''),
'$password1'=> array('npassword', t('Enter New Password'), '', ''),
'$password2'=> array('confirm', t('Confirm New Password'), '', t('Leave password fields blank unless changing')),
'$submit' => t('Submit'),
'$email' => array('email', t('Email Address:'), $email, ''),
'$removeme' => t('Remove Account'),
@ -992,7 +1002,7 @@ function settings_content(&$a) {
$stpl = get_markup_template('settings.tpl');
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$perm_defaults = $acl->get();
require_once('include/group.php');
@ -1044,7 +1054,7 @@ function settings_content(&$a) {
'$h_prv' => t('Security and Privacy Settings'),
'$permissions_set' => $permissions_set,
'$server_role' => get_server_role(),
'$server_role' => Zotlabs\Project\System::get_server_role(),
'$perms_set_msg' => t('Your permissions are already configured. Click to view/adjust'),
'$hide_presence' => array('hide_presence', t('Hide my online presence'),$hide_presence, t('Prevents displaying in your profile that you are online'), $yes_no),

View File

@ -12,10 +12,10 @@ function siteinfo_init(&$a) {
function siteinfo_content(&$a) {
if(! get_config('system','hidden_version_siteinfo')) {
$version = sprintf( t('Version %s'), get_project_version());
$version = sprintf( t('Version %s'), Zotlabs\Project\System::get_project_version());
if(@is_dir('.git') && function_exists('shell_exec')) {
$commit = @shell_exec('git log -1 --format="%h"');
$tag = get_std_version(); // @shell_exec('git describe --tags --abbrev=0');
$tag = Zotlabs\Project\System::get_std_version(); // @shell_exec('git describe --tags --abbrev=0');
}
if(! isset($commit) || strlen($commit) > 16)
$commit = '';

View File

@ -65,7 +65,7 @@ function thing_init(&$a) {
if((! $name) || (! $translated_verb))
return;
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
if(array_key_exists('contact_allow',$_REQUEST)
|| array_key_exists('group_allow',$_REQUEST)
@ -271,7 +271,7 @@ function thing_content(&$a) {
return;
}
$acl = new AccessList($channel);
$acl = new Zotlabs\Access\AccessList($channel);
$channel_acl = $acl->get();
$lockstate = (($acl->is_private()) ? 'lock' : 'unlock');

View File

@ -51,8 +51,6 @@ function wfinger_init(&$a) {
header('Access-Control-Allow-Origin: *');
header('Content-type: application/jrd+json');
if($resource && $r) {
@ -108,6 +106,11 @@ function wfinger_init(&$a) {
array(
'rel' => 'http://purl.org/zot/protocol',
'href' => z_root() . '/.well-known/zot-info' . '?address=' . $r[0]['xchan_addr'],
),
array(
'rel' => 'magic-public-key',
'href' => 'data:application/magic-public-key,' . salmon_key($r[0]['channel_pubkey']),
)
);
@ -124,7 +127,6 @@ function wfinger_init(&$a) {
$arr = array('channel' => $r[0], 'request' => $_REQUEST, 'result' => $result);
call_hooks('webfinger',$arr);
echo json_encode($arr['result']);
killme();
json_return_and_die($arr['result'],'application/jrd+json');
}

File diff suppressed because it is too large Load Diff

View File

@ -1 +1 @@
2016-02-17.1312H
2016-02-22.1315H

View File

@ -1,172 +1,3 @@
h2 {
margin-left: 15%;
margin-top: 5%;
}
#newchannel-form {
font-size: 1.4em;
margin-left: 15%;
margin-top: 20px;
width: 50%;
}
#newchannel-form .descriptive-paragraph {
color: #888;
margin-left: 20px;
margin-bottom: 25px;
}
.newchannel-label {
float: left;
width: 275px;
}
.newchannel-role-morehelp {
float: left;
width: 32px;
}
.newchannel-input {
float: left;
width: 275px;
padding: 5px;
}
.newchannel-feedback {
float: left;
margin-left: 5px;
}
.newchannel-field-end {
clear: both;
margin-bottom: 20px;
}
/**
* Stylish Select 0.4.9 - $ plugin to replace a select drop down box with a stylable unordered list
* http://github.com/scottdarby/Stylish-Select/
*
* Copyright (c) 2009 Scott Darby
*
* Requires: jQuery 1.3 or newer
*
* Dual licensed under the MIT and GPL licenses.
*/
/**
* Hide lists on page load
---------------------------------------------------------*/
.stylish-select .SSContainerDivWrapper {
left:-9999px;
}
/*
* Red example
---------------------------------------------------------*/
.stylish-select .SSContainerDivWrapper {
margin:0;
padding:0;
width:290px;
position:absolute;
top:22px;
left:0;
z-index:9999;
font-size: 60%;
line-height: 1.1;
}
.stylish-select a {
font-weight: normal !important;
}
.stylish-select ul.newList {
margin:0;
padding:0;
list-style:none;
color:#000;
background:#fff;
border:1px solid #ccc;
overflow:auto;
}
.stylish-select ul.newList * {
margin:0;
padding:0;
}
.stylish-select ul.newList a {
color: #000;
text-decoration:none;
display:block;
padding:3px 8px;
}
.stylish-select .newListSelected {
width:285px;
color:#000;
height:19px;
padding:3px 0 0 6px;
float:left;
background:url(select-bg.png) no-repeat;
}
.stylish-select ul.newList li a:focus {
-moz-outline-style: none;
}
.stylish-select .selectedTxt {
width:258px;
overflow:hidden;
height:18px;
font-size: 90%;
padding:0 23px 0 0;
}
.stylish-select .hiLite {
background:#650101!important;
color:#fff!important;
}
.stylish-select .newListHover {
background:#ccc!important;
color:#000!important;
cursor:default;
}
.stylish-select .newListDisabled {
opacity: 0.6;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
filter: alpha(opacity=60);
}
.stylish-select .newListItemDisabled {
opacity: 0.6;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
filter: alpha(opacity=60);
}
.stylish-select .newListOptionDisabled {
opacity: 0.6;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
filter: alpha(opacity=60);
}
.stylish-select .newListSelHover,
.stylish-select .newListSelFocus {
background-position:0 -22px;
cursor:default;
}
.stylish-select .newListOptionTitle {
font-weight:bold;
}
.stylish-select .newListOptionTitle ul {
margin:3px 0 0;
}
.stylish-select .newListOptionTitle li {
font-weight:normal;
.descriptive-paragraph {
margin-top: 10px;
}

View File

@ -1,86 +0,0 @@
h2 {
margin: 20px 0 20px 5%;
}
.generic-content-wrapper-styled {
margin-left: auto;
margin-right: auto;
max-width: 820px;
font-size: 1.1em;
}
#register-desc, #register-invite-desc, #register-text, #register-sites {
font-weight: bold;
margin-bottom: 15px;
padding: 8px;
border: 1px solid #ccc;
}
@media (min-width: 560px) {
.register-label, .register-input {
float: left;
width: 50%;
}
}
@media (max-width: 559px) {
.register-label, .register-input {
float: left;
max-width: 400px;
}
}
.register-feedback {
float: left;
margin-left: 45px;
}
.register-field-end {
clear: both;
margin-bottom: 20px;
}
#newchannel-form {
font-size: 1.4em;
margin-left: 15%;
margin-top: 20px;
width: 50%;
}
#newchannel-form .descriptive-paragraph {
color: #888;
margin-left: 20px;
margin-bottom: 25px;
}
.newchannel-label {
float: left;
width: 275px;
}
.newchannel-role-morehelp {
float: left;
width: 32px;
}
.newchannel-input {
float: left;
width: 275px;
padding: 5px;
}
.newchannel-feedback {
float: left;
margin-left: 5px;
}
.newchannel-field-end {
clear: both;
margin-bottom: 20px;
}
.descriptive-paragraph {
margin-left: 20px;
margin-bottom: 25px;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -7,13 +7,6 @@ function string_plural_select_es_es($n){
;
$a->strings["Remote authentication blocked. You are logged into this site locally. Please logout and retry."] = "La autenticación desde su servidor está bloqueada. Ha iniciado sesión localmente. Por favor, salga de la sesión y vuelva a intentarlo.";
$a->strings["Welcome %s. Remote authentication successful."] = "Bienvenido %s. La identificación desde su servidor se ha llevado a cabo correctamente.";
$a->strings["Connect"] = "Conectar";
$a->strings["New window"] = "Nueva ventana";
$a->strings["Open the selected location in a different window or browser tab"] = "Abrir la dirección seleccionada en una ventana o pestaña aparte";
$a->strings["User '%s' deleted"] = "El usuario '%s' ha sido eliminado";
$a->strings["No username found in import file."] = "No se ha encontrado el nombre de usuario en el fichero importado.";
$a->strings["Unable to create a unique channel address. Import failed."] = "No se ha podido crear una dirección de canal única. Ha fallado la importación.";
$a->strings["Import completed."] = "Importación completada.";
$a->strings["parent"] = "padre";
$a->strings["Collection"] = "Colección";
$a->strings["Principal"] = "Principal";
@ -38,6 +31,16 @@ $a->strings["You are using %1\$s of %2\$s available file storage. (%3\$s&#37;)"]
$a->strings["WARNING:"] = "ATENCIÓN:";
$a->strings["Create new folder"] = "Crear nueva carpeta";
$a->strings["Upload file"] = "Subir fichero";
$a->strings["Permission denied."] = "Acceso denegado.";
$a->strings["Not Found"] = "No encontrado";
$a->strings["Page not found."] = "Página no encontrada.";
$a->strings["Connect"] = "Conectar";
$a->strings["New window"] = "Nueva ventana";
$a->strings["Open the selected location in a different window or browser tab"] = "Abrir la dirección seleccionada en una ventana o pestaña aparte";
$a->strings["User '%s' deleted"] = "El usuario '%s' ha sido eliminado";
$a->strings["No username found in import file."] = "No se ha encontrado el nombre de usuario en el fichero importado.";
$a->strings["Unable to create a unique channel address. Import failed."] = "No se ha podido crear una dirección de canal única. Ha fallado la importación.";
$a->strings["Import completed."] = "Importación completada.";
$a->strings["Not a valid email address"] = "Dirección de correo no válida";
$a->strings["Your email domain is not among those allowed on this site"] = "Su dirección de correo no pertenece a ninguno de los dominios permitidos en este sitio.";
$a->strings["Your email address is already registered at this site."] = "Su dirección de correo está ya registrada en este sitio.";
@ -98,7 +101,6 @@ $a->strings["Profile Photo"] = "Foto del perfil";
$a->strings["Update"] = "Actualizar";
$a->strings["Install"] = "Instalar";
$a->strings["Purchase"] = "Comprar";
$a->strings["Permission denied."] = "Acceso denegado.";
$a->strings["Item was not found."] = "Elemento no encontrado.";
$a->strings["No source file."] = "Ningún fichero de origen";
$a->strings["Cannot locate file to replace"] = "No se puede localizar el fichero que va a ser sustituido.";
@ -328,21 +330,35 @@ $a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-DD o MM-DD";
$a->strings["Required"] = "Obligatorio";
$a->strings["never"] = "nunca";
$a->strings["less than a second ago"] = "hace un instante";
$a->strings["year"] = "año";
$a->strings["years"] = "años";
$a->strings["month"] = "mes";
$a->strings["months"] = "meses";
$a->strings["week"] = "semana";
$a->strings["weeks"] = "semanas";
$a->strings["day"] = "día";
$a->strings["days"] = "días";
$a->strings["hour"] = "hora";
$a->strings["hours"] = "horas";
$a->strings["minute"] = "minuto";
$a->strings["minutes"] = "minutos";
$a->strings["second"] = "segundo";
$a->strings["seconds"] = "segundos";
$a->strings["__ctx:e.g. 22 hours ago, 1 minute ago__ %1\$d %2\$s ago"] = "hace %1\$d %2\$s";
$a->strings["__ctx:relative_date__ year"] = array(
0 => "año",
1 => "años",
);
$a->strings["__ctx:relative_date__ month"] = array(
0 => "mes",
1 => "meses",
);
$a->strings["__ctx:relative_date__ week"] = array(
0 => "semana",
1 => "semanas",
);
$a->strings["__ctx:relative_date__ day"] = array(
0 => "día",
1 => "días",
);
$a->strings["__ctx:relative_date__ hour"] = array(
0 => "hora",
1 => "horas",
);
$a->strings["__ctx:relative_date__ minute"] = array(
0 => "minuto",
1 => "minutos",
);
$a->strings["__ctx:relative_date__ second"] = array(
0 => "segundo",
1 => "segundos",
);
$a->strings["%1\$s's birthday"] = "Cumpleaños de %1\$s";
$a->strings["Happy Birthday %1\$s"] = "Feliz cumpleaños %1\$s";
$a->strings["Cannot locate DNS info for database server '%s'"] = "No se ha podido localizar información de DNS para el servidor de base de datos “%s”";
@ -513,12 +529,6 @@ $a->strings["Admin"] = "Administrador";
$a->strings["Site Setup and Configuration"] = "Ajustes y configuración del sitio";
$a->strings["@name, #tag, ?doc, content"] = "@nombre, #etiqueta, ?ayuda, contenido";
$a->strings["Please wait..."] = "Espere por favor…";
$a->strings["view full size"] = "Ver en el tamaño original";
$a->strings["\$Projectname Notification"] = "Notificación de \$Projectname";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Gracias,";
$a->strings["%s Administrator"] = "%s Administrador";
$a->strings["No Subject"] = "Sin asunto";
$a->strings["created a new post"] = "ha creado una nueva entrada";
$a->strings["commented on %s's post"] = "ha comentado la entrada de %s";
$a->strings["New Page"] = "Nueva página";
@ -625,117 +635,12 @@ $a->strings["Zot"] = "Zot";
$a->strings["LinkedIn"] = "LinkedIn";
$a->strings["XMPP/IM"] = "XMPP/IM";
$a->strings["MySpace"] = "MySpace";
$a->strings["prev"] = "anterior";
$a->strings["first"] = "primera";
$a->strings["last"] = "última";
$a->strings["next"] = "próxima";
$a->strings["older"] = "más antiguas";
$a->strings["newer"] = "más recientes";
$a->strings["No connections"] = "Sin conexiones";
$a->strings["View all %s connections"] = "Ver todas las %s conexiones";
$a->strings["Save"] = "Guardar";
$a->strings["poke"] = "un toque";
$a->strings["ping"] = "un \"ping\"";
$a->strings["pinged"] = "ha enviado un \"ping\" a";
$a->strings["prod"] = "una incitación ";
$a->strings["prodded"] = "ha incitado a ";
$a->strings["slap"] = "una bofetada ";
$a->strings["slapped"] = "ha abofeteado a ";
$a->strings["finger"] = "un \"finger\" ";
$a->strings["fingered"] = "envió un \"finger\" a";
$a->strings["rebuff"] = "un reproche";
$a->strings["rebuffed"] = "ha hecho un reproche a ";
$a->strings["happy"] = "feliz ";
$a->strings["sad"] = "triste ";
$a->strings["mellow"] = "tranquilo/a";
$a->strings["tired"] = "cansado/a ";
$a->strings["perky"] = "vivaz";
$a->strings["angry"] = "enfadado/a";
$a->strings["stupefied"] = "asombrado/a";
$a->strings["puzzled"] = "perplejo/a";
$a->strings["interested"] = "interesado/a";
$a->strings["bitter"] = "amargado/a";
$a->strings["cheerful"] = "alegre";
$a->strings["alive"] = "animado/a";
$a->strings["annoyed"] = "molesto/a";
$a->strings["anxious"] = "ansioso/a";
$a->strings["cranky"] = "de mal humor";
$a->strings["disturbed"] = "perturbado/a";
$a->strings["frustrated"] = "frustrado/a";
$a->strings["depressed"] = "deprimido/a";
$a->strings["motivated"] = "motivado/a";
$a->strings["relaxed"] = "relajado/a";
$a->strings["surprised"] = "sorprendido/a";
$a->strings["May"] = "mayo";
$a->strings["Unknown Attachment"] = "Adjunto no reconocido";
$a->strings["unknown"] = "desconocido";
$a->strings["remove category"] = "eliminar categoría";
$a->strings["remove from file"] = "eliminar del fichero";
$a->strings["Click to open/close"] = "Pulsar para abrir/cerrar";
$a->strings["Link to Source"] = "Enlazar con la entrada en su ubicación original";
$a->strings["default"] = "por defecto";
$a->strings["Page layout"] = "Formato de la página";
$a->strings["You can create your own with the layouts tool"] = "Puede crear su propio formato gráfico con las herramientas de diseño";
$a->strings["Page content type"] = "Tipo de contenido de página";
$a->strings["Select an alternate language"] = "Seleccionar un idioma alternativo";
$a->strings["activity"] = "la actividad";
$a->strings["Design Tools"] = "Herramientas de diseño";
$a->strings["Blocks"] = "Bloques";
$a->strings["Menus"] = "Menús";
$a->strings["Layouts"] = "Formato gráfico";
$a->strings["Pages"] = "Páginas";
$a->strings["Permission denied"] = "Permiso denegado";
$a->strings["(Unknown)"] = "(Desconocido)";
$a->strings["Visible to anybody on the internet."] = "Visible para cualquiera en internet.";
$a->strings["Visible to you only."] = "Visible sólo para usted.";
$a->strings["Visible to anybody in this network."] = "Visible para cualquiera en esta red.";
$a->strings["Visible to anybody authenticated."] = "Visible para cualquiera que haya sido autenticado.";
$a->strings["Visible to anybody on %s."] = "Visible para cualquiera en %s.";
$a->strings["Visible to all connections."] = "Visible para todas las conexiones.";
$a->strings["Visible to approved connections."] = "Visible para las conexiones permitidas.";
$a->strings["Visible to specific connections."] = "Visible para conexiones específicas.";
$a->strings["Item not found."] = "Elemento no encontrado.";
$a->strings["Privacy group not found."] = "Grupo de canales no encontrado.";
$a->strings["Privacy group is empty."] = "El grupo de canales está vacío.";
$a->strings["Privacy group: %s"] = "Grupo de canales: %s";
$a->strings["Connection: %s"] = "Conexión: %s";
$a->strings["Connection not found."] = "Conexión no encontrada";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla:Aviso] Nuevo mensaje en %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s le ha enviado un nuevo mensaje privado en %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s le ha enviado %2\$s.";
$a->strings["a private message"] = "un mensaje privado";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Por favor visite %s para ver y/o responder a su mensaje privado.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%5\$s de %4\$s[/zrl] ";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%4\$s creado por usted[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla:Aviso] Nuevo comentario de %2\$s a la conversación #%1\$d";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s ha comentado un elemento/conversación que ha estado siguiendo.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Para ver o comentar la conversación, visite %s";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla:Aviso] %s ha publicado una entrada en su página de inicio del perfil (\"muro\")";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s ha publicado en su página del perfil en %3\$s";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s ha publicado en [zrl=%3\$s]su página del perfil[/zrl]";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla:Aviso] %s le ha etiquetado";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s le ha etiquetado en %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]le etiquetó[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla:Aviso] %1\$s le ha dado un toque";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s le ha dado un toque en %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]le ha dado un toque[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla:Aviso] %s ha etiquetado su publicación";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha etiquetado su publicación en %3\$s";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s ha etiquetado [zrl=%3\$s]su publicación[/zrl]";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla:Aviso] Ha recibido una solicitud de conexión";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, ha recibido una nueva solicitud de conexión de '%2\$s' en %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, ha recibido [zrl=%2\$s]una nueva solicitud de conexión[/zrl] de %3\$s.";
$a->strings["You may visit their profile at %s"] = "Puede visitar su perfil en %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Por favor, visite %s para permitir o rechazar la solicitad de conexión.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla:Aviso] Ha recibido una sugerencia de amistad";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, ha recibido una sugerencia de conexión de '%2\$s' en %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, ha recibido [zrl=%2\$s]una sugerencia de conexión[/zrl] para %3\$s de %4\$s.";
$a->strings["Name:"] = "Nombre:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Por favor, visite %s para aprobar o rechazar la sugerencia.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla:Aviso]";
$a->strings["view full size"] = "Ver en el tamaño original";
$a->strings["\$Projectname Notification"] = "Notificación de \$Projectname";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Gracias,";
$a->strings["%s Administrator"] = "%s Administrador";
$a->strings["No Subject"] = "Sin asunto";
$a->strings["General Features"] = "Funcionalidades básicas";
$a->strings["Content Expiration"] = "Caducidad del contenido";
$a->strings["Remove posts/comments and/or private messages at a future time"] = "Eliminar publicaciones/comentarios y/o mensajes privados más adelante";
@ -802,95 +707,28 @@ $a->strings["Star Posts"] = "Entradas destacadas";
$a->strings["Ability to mark special posts with a star indicator"] = "Capacidad de marcar entradas destacadas con un indicador de estrella";
$a->strings["Tag Cloud"] = "Nube de etiquetas";
$a->strings["Provide a personal tag cloud on your channel page"] = "Proveer nube de etiquetas personal en su página de canal";
$a->strings["Unable to obtain identity information from database"] = "No ha sido posible obtener información sobre la identidad desde la base de datos";
$a->strings["Empty name"] = "Nombre vacío";
$a->strings["Name too long"] = "Nombre demasiado largo";
$a->strings["No account identifier"] = "Ningún identificador de la cuenta";
$a->strings["Nickname is required."] = "Se requiere un sobrenombre (alias).";
$a->strings["Reserved nickname. Please choose another."] = "Sobrenombre en uso. Por favor, elija otro.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "El alias contiene caracteres no admitidos o está ya en uso por otros usuarios de este sitio.";
$a->strings["Unable to retrieve created identity"] = "No ha sido posible recuperar la identidad creada";
$a->strings["Default Profile"] = "Perfil principal";
$a->strings["Requested channel is not available."] = "El canal solicitado no está disponible.";
$a->strings["Requested profile is not available."] = "El perfil solicitado no está disponible.";
$a->strings["Change profile photo"] = "Cambiar la foto del perfil";
$a->strings["Profiles"] = "Perfiles";
$a->strings["Manage/edit profiles"] = "Administrar/editar perfiles";
$a->strings["Create New Profile"] = "Crear un nuevo perfil";
$a->strings["Profile Image"] = "Imagen del perfil";
$a->strings["visible to everybody"] = "visible para cualquiera";
$a->strings["Edit visibility"] = "Editar visibilidad";
$a->strings["Gender:"] = "Género:";
$a->strings["Status:"] = "Estado:";
$a->strings["Homepage:"] = "Página personal:";
$a->strings["Online Now"] = "Ahora en línea";
$a->strings["g A l F d"] = "g A l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[hoy]";
$a->strings["Birthday Reminders"] = "Recordatorios de cumpleaños";
$a->strings["Birthdays this week:"] = "Cumpleaños de esta semana:";
$a->strings["[No description]"] = "[Sin descripción]";
$a->strings["Event Reminders"] = "Recordatorios de eventos";
$a->strings["Events this week:"] = "Eventos de esta semana:";
$a->strings["Full Name:"] = "Nombre completo:";
$a->strings["Like this channel"] = "Me gusta este canal";
$a->strings["j F, Y"] = "j F Y";
$a->strings["j F"] = "j F";
$a->strings["Birthday:"] = "Cumpleaños:";
$a->strings["Age:"] = "Edad:";
$a->strings["for %1\$d %2\$s"] = "por %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Orientación sexual:";
$a->strings["Hometown:"] = "Ciudad de origen:";
$a->strings["Tags:"] = "Etiquetas:";
$a->strings["Political Views:"] = "Posición política:";
$a->strings["Religion:"] = "Religión:";
$a->strings["About:"] = "Sobre mí:";
$a->strings["Hobbies/Interests:"] = "Aficciones/Intereses:";
$a->strings["Likes:"] = "Me gusta:";
$a->strings["Dislikes:"] = "No me gusta:";
$a->strings["Contact information and Social Networks:"] = "Información de contacto y redes sociales:";
$a->strings["My other channels:"] = "Mis otros canales:";
$a->strings["Musical interests:"] = "Intereses musicales:";
$a->strings["Books, literature:"] = "Libros, literatura:";
$a->strings["Television:"] = "Televisión:";
$a->strings["Film/dance/culture/entertainment:"] = "Cine/danza/cultura/entretenimiento:";
$a->strings["Love/Romance:"] = "Vida sentimental/amorosa:";
$a->strings["Work/employment:"] = "Trabajo:";
$a->strings["School/education:"] = "Estudios:";
$a->strings["Like this thing"] = "Me gusta esto";
$a->strings["cover photo"] = "Imagen de portada del perfil";
$a->strings["Embedded content"] = "Contenido incorporado";
$a->strings["Embedding disabled"] = "Incrustación deshabilitada";
$a->strings["Can view my normal stream and posts"] = "Pueden verse mi actividad y publicaciones normales";
$a->strings["Can view my default channel profile"] = "Puede verse mi perfil de canal predeterminado.";
$a->strings["Can view my connections"] = "Pueden verse mis conexiones";
$a->strings["Can view my file storage and photos"] = "Pueden verse mi repositorio de ficheros y mis fotos";
$a->strings["Can view my webpages"] = "Pueden verse mis páginas web";
$a->strings["Can send me their channel stream and posts"] = "Me pueden enviar sus entradas y contenidos del canal";
$a->strings["Can post on my channel page (\"wall\")"] = "Pueden crearse entradas en mi página de inicio del canal (“muro”)";
$a->strings["Can comment on or like my posts"] = "Pueden publicarse comentarios en mis publicaciones o marcar mis entradas con 'me gusta'.";
$a->strings["Can send me private mail messages"] = "Se me pueden enviar mensajes privados";
$a->strings["Can like/dislike stuff"] = "Puede marcarse contenido como me gusta/no me gusta";
$a->strings["Profiles and things other than posts/comments"] = "Perfiles y otras cosas aparte de publicaciones/comentarios";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Puede enviarse una entrada a todos mis contactos del canal mediante una @mención";
$a->strings["Advanced - useful for creating group forum channels"] = "Avanzado - útil para crear canales de foros de discusión o grupos";
$a->strings["Can chat with me (when available)"] = "Se puede charlar conmigo (cuando esté disponible)";
$a->strings["Can write to my file storage and photos"] = "Puede escribirse en mi repositorio de ficheros y fotos";
$a->strings["Can edit my webpages"] = "Pueden editarse mis páginas web";
$a->strings["Can source my public posts in derived channels"] = "Pueden utilizarse mis publicaciones públicas como origen de contenidos en canales derivados";
$a->strings["Somewhat advanced - very useful in open communities"] = "Algo avanzado - muy útil en comunidades abiertas";
$a->strings["Can administer my channel resources"] = "Pueden administrarse mis recursos del canal";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Muy avanzado. Déjelo a no ser que sepa bien lo que está haciendo.";
$a->strings["Social Networking"] = "Redes sociales";
$a->strings["Mostly Public"] = "Público en su mayor parte";
$a->strings["Restricted"] = "Restringido";
$a->strings["Private"] = "Privado";
$a->strings["Community Forum"] = "Foro de discusión";
$a->strings["Feed Republish"] = "Republicar un \"feed\"";
$a->strings["Special Purpose"] = "Propósito especial";
$a->strings["Celebrity/Soapbox"] = "Página para fans";
$a->strings["Group Repository"] = "Repositorio de grupo";
$a->strings["Custom/Expert Mode"] = "Modo personalizado/experto";
$a->strings["Permission denied"] = "Permiso denegado";
$a->strings["(Unknown)"] = "(Desconocido)";
$a->strings["Visible to anybody on the internet."] = "Visible para cualquiera en internet.";
$a->strings["Visible to you only."] = "Visible sólo para usted.";
$a->strings["Visible to anybody in this network."] = "Visible para cualquiera en esta red.";
$a->strings["Visible to anybody authenticated."] = "Visible para cualquiera que haya sido autenticado.";
$a->strings["Visible to anybody on %s."] = "Visible para cualquiera en %s.";
$a->strings["Visible to all connections."] = "Visible para todas las conexiones.";
$a->strings["Visible to approved connections."] = "Visible para las conexiones permitidas.";
$a->strings["Visible to specific connections."] = "Visible para conexiones específicas.";
$a->strings["Item not found."] = "Elemento no encontrado.";
$a->strings["Privacy group not found."] = "Grupo de canales no encontrado.";
$a->strings["Privacy group is empty."] = "El grupo de canales está vacío.";
$a->strings["Privacy group: %s"] = "Grupo de canales: %s";
$a->strings["Connection: %s"] = "Conexión: %s";
$a->strings["Connection not found."] = "Conexión no encontrada";
$a->strings["female"] = "mujer";
$a->strings["%1\$s updated her %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["male"] = "hombre";
$a->strings["%1\$s updated his %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["%1\$s updated their %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["profile photo"] = "foto del perfil";
$a->strings["System"] = "Sistema";
$a->strings["Create Personal App"] = "Crear una aplicación personal";
$a->strings["Edit Personal App"] = "Editar una aplicación personal";
@ -902,6 +740,7 @@ $a->strings["Add New Connection"] = "Añadir nueva conexión";
$a->strings["Enter channel address"] = "Dirección del canal";
$a->strings["Examples: bob@example.com, https://example.com/barbara"] = "Ejemplos: manuel@ejemplo.com, https://ejemplo.com/carmen";
$a->strings["Notes"] = "Notas";
$a->strings["Save"] = "Guardar";
$a->strings["Remove term"] = "Eliminar término";
$a->strings["Archives"] = "Hemeroteca";
$a->strings["Me"] = "Yo";
@ -963,6 +802,159 @@ $a->strings["Plugin Features"] = "Extensiones";
$a->strings["User registrations waiting for confirmation"] = "Registros de usuarios pendientes de confirmación";
$a->strings["View Photo"] = "Ver foto";
$a->strings["Edit Album"] = "Editar álbum";
$a->strings["prev"] = "anterior";
$a->strings["first"] = "primera";
$a->strings["last"] = "última";
$a->strings["next"] = "próxima";
$a->strings["older"] = "más antiguas";
$a->strings["newer"] = "más recientes";
$a->strings["No connections"] = "Sin conexiones";
$a->strings["View all %s connections"] = "Ver todas las %s conexiones";
$a->strings["poke"] = "un toque";
$a->strings["ping"] = "un \"ping\"";
$a->strings["pinged"] = "ha enviado un \"ping\" a";
$a->strings["prod"] = "una incitación ";
$a->strings["prodded"] = "ha incitado a ";
$a->strings["slap"] = "una bofetada ";
$a->strings["slapped"] = "ha abofeteado a ";
$a->strings["finger"] = "un \"finger\" ";
$a->strings["fingered"] = "envió un \"finger\" a";
$a->strings["rebuff"] = "un reproche";
$a->strings["rebuffed"] = "ha hecho un reproche a ";
$a->strings["happy"] = "feliz ";
$a->strings["sad"] = "triste ";
$a->strings["mellow"] = "tranquilo/a";
$a->strings["tired"] = "cansado/a ";
$a->strings["perky"] = "vivaz";
$a->strings["angry"] = "enfadado/a";
$a->strings["stupefied"] = "asombrado/a";
$a->strings["puzzled"] = "perplejo/a";
$a->strings["interested"] = "interesado/a";
$a->strings["bitter"] = "amargado/a";
$a->strings["cheerful"] = "alegre";
$a->strings["alive"] = "animado/a";
$a->strings["annoyed"] = "molesto/a";
$a->strings["anxious"] = "ansioso/a";
$a->strings["cranky"] = "de mal humor";
$a->strings["disturbed"] = "perturbado/a";
$a->strings["frustrated"] = "frustrado/a";
$a->strings["depressed"] = "deprimido/a";
$a->strings["motivated"] = "motivado/a";
$a->strings["relaxed"] = "relajado/a";
$a->strings["surprised"] = "sorprendido/a";
$a->strings["May"] = "mayo";
$a->strings["Unknown Attachment"] = "Adjunto no reconocido";
$a->strings["unknown"] = "desconocido";
$a->strings["remove category"] = "eliminar categoría";
$a->strings["remove from file"] = "eliminar del fichero";
$a->strings["Click to open/close"] = "Pulsar para abrir/cerrar";
$a->strings["Link to Source"] = "Enlazar con la entrada en su ubicación original";
$a->strings["default"] = "por defecto";
$a->strings["Page layout"] = "Formato de la página";
$a->strings["You can create your own with the layouts tool"] = "Puede crear su propio formato gráfico con las herramientas de diseño";
$a->strings["Page content type"] = "Tipo de contenido de página";
$a->strings["Select an alternate language"] = "Seleccionar un idioma alternativo";
$a->strings["activity"] = "la actividad";
$a->strings["Design Tools"] = "Herramientas de diseño";
$a->strings["Blocks"] = "Bloques";
$a->strings["Menus"] = "Menús";
$a->strings["Layouts"] = "Formato gráfico";
$a->strings["Pages"] = "Páginas";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla:Aviso] Nuevo mensaje en %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s le ha enviado un nuevo mensaje privado en %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s le ha enviado %2\$s.";
$a->strings["a private message"] = "un mensaje privado";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Por favor visite %s para ver y/o responder a su mensaje privado.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%5\$s de %4\$s[/zrl] ";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s ha comentado [zrl=%3\$s]%4\$s creado por usted[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla:Aviso] Nuevo comentario de %2\$s a la conversación #%1\$d";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s ha comentado un elemento/conversación que ha estado siguiendo.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Para ver o comentar la conversación, visite %s";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla:Aviso] %s ha publicado una entrada en su página de inicio del perfil (\"muro\")";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s ha publicado en su página del perfil en %3\$s";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s ha publicado en [zrl=%3\$s]su página del perfil[/zrl]";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla:Aviso] %s le ha etiquetado";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s le ha etiquetado en %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]le etiquetó[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla:Aviso] %1\$s le ha dado un toque";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s le ha dado un toque en %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]le ha dado un toque[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla:Aviso] %s ha etiquetado su publicación";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha etiquetado su publicación en %3\$s";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s ha etiquetado [zrl=%3\$s]su publicación[/zrl]";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla:Aviso] Ha recibido una solicitud de conexión";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, ha recibido una nueva solicitud de conexión de '%2\$s' en %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, ha recibido [zrl=%2\$s]una nueva solicitud de conexión[/zrl] de %3\$s.";
$a->strings["You may visit their profile at %s"] = "Puede visitar su perfil en %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Por favor, visite %s para permitir o rechazar la solicitad de conexión.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla:Aviso] Ha recibido una sugerencia de amistad";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, ha recibido una sugerencia de conexión de '%2\$s' en %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, ha recibido [zrl=%2\$s]una sugerencia de conexión[/zrl] para %3\$s de %4\$s.";
$a->strings["Name:"] = "Nombre:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Por favor, visite %s para aprobar o rechazar la sugerencia.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla:Aviso]";
$a->strings["Unable to obtain identity information from database"] = "No ha sido posible obtener información sobre la identidad desde la base de datos";
$a->strings["Empty name"] = "Nombre vacío";
$a->strings["Name too long"] = "Nombre demasiado largo";
$a->strings["No account identifier"] = "Ningún identificador de la cuenta";
$a->strings["Nickname is required."] = "Se requiere un sobrenombre (alias).";
$a->strings["Reserved nickname. Please choose another."] = "Sobrenombre en uso. Por favor, elija otro.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "El alias contiene caracteres no admitidos o está ya en uso por otros usuarios de este sitio.";
$a->strings["Unable to retrieve created identity"] = "No ha sido posible recuperar la identidad creada";
$a->strings["Default Profile"] = "Perfil principal";
$a->strings["Requested channel is not available."] = "El canal solicitado no está disponible.";
$a->strings["Requested profile is not available."] = "El perfil solicitado no está disponible.";
$a->strings["Change profile photo"] = "Cambiar la foto del perfil";
$a->strings["Profiles"] = "Perfiles";
$a->strings["Manage/edit profiles"] = "Administrar/editar perfiles";
$a->strings["Create New Profile"] = "Crear un nuevo perfil";
$a->strings["Profile Image"] = "Imagen del perfil";
$a->strings["visible to everybody"] = "visible para cualquiera";
$a->strings["Edit visibility"] = "Editar visibilidad";
$a->strings["Gender:"] = "Género:";
$a->strings["Status:"] = "Estado:";
$a->strings["Homepage:"] = "Página personal:";
$a->strings["Online Now"] = "Ahora en línea";
$a->strings["g A l F d"] = "g A l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[hoy]";
$a->strings["Birthday Reminders"] = "Recordatorios de cumpleaños";
$a->strings["Birthdays this week:"] = "Cumpleaños de esta semana:";
$a->strings["[No description]"] = "[Sin descripción]";
$a->strings["Event Reminders"] = "Recordatorios de eventos";
$a->strings["Events this week:"] = "Eventos de esta semana:";
$a->strings["Full Name:"] = "Nombre completo:";
$a->strings["Like this channel"] = "Me gusta este canal";
$a->strings["j F, Y"] = "j F Y";
$a->strings["j F"] = "j F";
$a->strings["Birthday:"] = "Cumpleaños:";
$a->strings["Age:"] = "Edad:";
$a->strings["for %1\$d %2\$s"] = "por %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Orientación sexual:";
$a->strings["Hometown:"] = "Ciudad de origen:";
$a->strings["Tags:"] = "Etiquetas:";
$a->strings["Political Views:"] = "Posición política:";
$a->strings["Religion:"] = "Religión:";
$a->strings["About:"] = "Sobre mí:";
$a->strings["Hobbies/Interests:"] = "Aficciones/Intereses:";
$a->strings["Likes:"] = "Me gusta:";
$a->strings["Dislikes:"] = "No me gusta:";
$a->strings["Contact information and Social Networks:"] = "Información de contacto y redes sociales:";
$a->strings["My other channels:"] = "Mis otros canales:";
$a->strings["Musical interests:"] = "Intereses musicales:";
$a->strings["Books, literature:"] = "Libros, literatura:";
$a->strings["Television:"] = "Televisión:";
$a->strings["Film/dance/culture/entertainment:"] = "Cine/danza/cultura/entretenimiento:";
$a->strings["Love/Romance:"] = "Vida sentimental/amorosa:";
$a->strings["Work/employment:"] = "Trabajo:";
$a->strings["School/education:"] = "Estudios:";
$a->strings["Like this thing"] = "Me gusta esto";
$a->strings["cover photo"] = "Imagen de portada del perfil";
$a->strings["Embedded content"] = "Contenido incorporado";
$a->strings["Embedding disabled"] = "Incrustación deshabilitada";
$a->strings["Save to Folder"] = "Guardar en carpeta";
$a->strings["I will attend"] = "Participaré";
$a->strings["I will not attend"] = "No participaré";
@ -998,8 +990,41 @@ $a->strings["This is you"] = "Este es usted";
$a->strings["Image"] = "Imagen";
$a->strings["Insert Link"] = "Insertar enlace";
$a->strings["Video"] = "Vídeo";
$a->strings["Not Found"] = "No encontrado";
$a->strings["Page not found."] = "Página no encontrada.";
$a->strings["Can view my normal stream and posts"] = "Pueden verse mi actividad y publicaciones normales";
$a->strings["Can view my default channel profile"] = "Puede verse mi perfil de canal predeterminado.";
$a->strings["Can view my connections"] = "Pueden verse mis conexiones";
$a->strings["Can view my file storage and photos"] = "Pueden verse mi repositorio de ficheros y mis fotos";
$a->strings["Can view my webpages"] = "Pueden verse mis páginas web";
$a->strings["Can send me their channel stream and posts"] = "Me pueden enviar sus entradas y contenidos del canal";
$a->strings["Can post on my channel page (\"wall\")"] = "Pueden crearse entradas en mi página de inicio del canal (“muro”)";
$a->strings["Can comment on or like my posts"] = "Pueden publicarse comentarios en mis publicaciones o marcar mis entradas con 'me gusta'.";
$a->strings["Can send me private mail messages"] = "Se me pueden enviar mensajes privados";
$a->strings["Can like/dislike stuff"] = "Puede marcarse contenido como me gusta/no me gusta";
$a->strings["Profiles and things other than posts/comments"] = "Perfiles y otras cosas aparte de publicaciones/comentarios";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Puede enviarse una entrada a todos mis contactos del canal mediante una @mención";
$a->strings["Advanced - useful for creating group forum channels"] = "Avanzado - útil para crear canales de foros de discusión o grupos";
$a->strings["Can chat with me (when available)"] = "Se puede charlar conmigo (cuando esté disponible)";
$a->strings["Can write to my file storage and photos"] = "Puede escribirse en mi repositorio de ficheros y fotos";
$a->strings["Can edit my webpages"] = "Pueden editarse mis páginas web";
$a->strings["Can source my public posts in derived channels"] = "Pueden utilizarse mis publicaciones públicas como origen de contenidos en canales derivados";
$a->strings["Somewhat advanced - very useful in open communities"] = "Algo avanzado - muy útil en comunidades abiertas";
$a->strings["Can administer my channel resources"] = "Pueden administrarse mis recursos del canal";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Muy avanzado. Déjelo a no ser que sepa bien lo que está haciendo.";
$a->strings["Social Networking"] = "Redes sociales";
$a->strings["Social - Mostly Public"] = "Social - Público en su mayor parte";
$a->strings["Social - Restricted"] = "Social - Restringido";
$a->strings["Social - Private"] = "Social - Privado";
$a->strings["Community Forum"] = "Foro de discusión";
$a->strings["Forum - Mostly Public"] = "Foro - Público en su mayor parte";
$a->strings["Forum - Restricted"] = "Foro - Restringido";
$a->strings["Forum - Private"] = "Foro - Privado";
$a->strings["Feed Republish"] = "Republicar un \"feed\"";
$a->strings["Feed - Mostly Public"] = "Feed - Público en su mayor parte";
$a->strings["Feed - Restricted"] = "Feed - Restringido";
$a->strings["Special Purpose"] = "Propósito especial";
$a->strings["Special - Celebrity/Soapbox"] = "Especial - Celebridad / Tribuna improvisada";
$a->strings["Special - Group Repository"] = "Especial - Repositorio de grupo";
$a->strings["Custom/Expert Mode"] = "Modo personalizado/experto";
$a->strings["Some blurb about what to do when you're new here"] = "Algunas propuestas para el nuevo usuario sobre qué se puede hacer aquí";
$a->strings["network"] = "red";
$a->strings["RSS"] = "RSS";
@ -1119,6 +1144,7 @@ $a->strings["Set Profile"] = "Ajustar el perfil";
$a->strings["Set Affinity & Profile"] = "Ajustar la afinidad y el perfil";
$a->strings["none"] = "-";
$a->strings["Apply these permissions automatically"] = "Aplicar estos permisos automaticamente";
$a->strings["Connection requests will be approved without your interaction"] = "Las solicitudes de conexión serán aprobadas sin su intervención";
$a->strings["This connection's primary address is"] = "La dirección primaria de esta conexión es";
$a->strings["Available locations:"] = "Ubicaciones disponibles:";
$a->strings["The permissions indicated on this page will be applied to all new connections."] = "Los permisos indicados en esta página serán aplicados en todas las nuevas conexiones.";
@ -1464,16 +1490,16 @@ $a->strings["Search Results For:"] = "Buscar resultados para:";
$a->strings["Privacy group is empty"] = "El grupo de canales está vacío";
$a->strings["Privacy group: "] = "Grupo de canales:";
$a->strings["Invalid connection."] = "Conexión no válida.";
$a->strings["Add a Channel"] = "Añadir un canal";
$a->strings["A channel is your own collection of related web pages. A channel can be used to hold social network profiles, blogs, conversation groups and forums, celebrity pages, and much more. You may create as many channels as your service provider allows."] = "Un canal está formado por su propia colección de páginas web relacionadas. Se puede utilizar para almacenar los perfiles sociales de la red, blogs, grupos de conversación y foros, páginas de famosos y mucho más. Puede crear tantos canales como su proveedor de servicio permita.";
$a->strings["Channel Name"] = "Nombre del canal";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\" "] = "Ejemplos: \"Juan García\", \"Isabel y sus caballos\", \"Fútbol\", \"Grupo de parapente\" ";
$a->strings["Name or caption"] = "Nombre o descripción";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\""] = "Ejemplos: \"Juan García\", \"Luisa y sus caballos\", \"Fútbol\", \"Grupo de aviación\"";
$a->strings["Choose a short nickname"] = "Elija un alias corto";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Su alias podrá usarse para crear una dirección de canal fácilmente memorizable (como una dirección de correo electrónico) que puede ser compartido con otros.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "O <a href=\"import\">importar un canal existente</a> de otro lugar";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Elija el tipo de canal (como red social o foro de discusión) y la privacidad que requiera, así podremos seleccionar el mejor conjunto de permisos para usted";
$a->strings["Channel Type"] = "Tipo de canal";
$a->strings["Your nickname will be used to create an easy to remember channel address e.g. nickname%s"] = "Su alias se usará para crear una dirección de canal fácil de recordar, p. ej.: alias%s";
$a->strings["Channel role and privacy"] = "Clase de canal y privacidad";
$a->strings["Select a channel role with your privacy requirements."] = "Seleccione un tipo de canal con sus requisitos de privacidad";
$a->strings["Read more about roles"] = "Leer más sobre los roles";
$a->strings["Create a Channel"] = "Crear un canal";
$a->strings["A channel is your identity on the grid. It can represent a person, a blog, or a forum to name a few. Channels can make connections with other channels to share information with highly detailed permissions."] = "Un canal es su identidad en la red. Puede representar a una persona, un blog o un foro, por nombrar unos pocos ejemplos. Los canales se pueden conectar con otros canales para compartir información con distintos permisos extremadamente detallados.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "O <a href=\"import\">importar un canal existente</a> de otro lugar";
$a->strings["Invalid request identifier."] = "Petición inválida del identificador.";
$a->strings["Discard"] = "Descartar";
$a->strings["No more system notifications."] = "No hay más notificaciones del sistema";
@ -1553,7 +1579,7 @@ $a->strings["My site has paid access only"] = "Mi sitio es un servicio de pago";
$a->strings["My site has free access only"] = "Mi sitio es un servicio gratuito";
$a->strings["My site offers free accounts with optional paid upgrades"] = "Mi sitio ofrece cuentas gratuitas con opciones extra de pago";
$a->strings["Registration"] = "Registro";
$a->strings["File upload"] = "Fichero subido";
$a->strings["File upload"] = "Subir fichero";
$a->strings["Policies"] = "Políticas";
$a->strings["Site name"] = "Nombre del sitio";
$a->strings["Banner/Logo"] = "Banner/Logo";
@ -1739,18 +1765,12 @@ $a->strings["Fetching URL returns error: %1\$s"] = "Al intentar obtener la direc
$a->strings["Image uploaded but image cropping failed."] = "Imagen actualizada, pero el recorte de la imagen ha fallado. ";
$a->strings["Image resize failed."] = "El ajuste del tamaño de la imagen ha fallado.";
$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Recargue la página o limpie el caché del navegador si la nueva foto no se muestra inmediatamente.";
$a->strings["Image upload failed."] = "Subida de imagen fallida.";
$a->strings["Image upload failed."] = "La carga de la imagen ha fallado.";
$a->strings["Unable to process image."] = "No ha sido posible procesar la imagen.";
$a->strings["female"] = "mujer";
$a->strings["%1\$s updated her %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["male"] = "hombre";
$a->strings["%1\$s updated his %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["%1\$s updated their %2\$s"] = "%1\$s ha actualizado su %2\$s";
$a->strings["profile photo"] = "foto del perfil";
$a->strings["Photo not available."] = "Foto no disponible.";
$a->strings["Upload File:"] = "Subir fichero:";
$a->strings["Select a profile:"] = "Seleccionar un perfil:";
$a->strings["Upload Profile Photo"] = "Subir foto del perfil";
$a->strings["Upload Profile Photo"] = "Subir foto de perfil";
$a->strings["or"] = "o";
$a->strings["skip this step"] = "Omitir este paso";
$a->strings["select a photo from your photo albums"] = "Seleccione una foto de sus álbumes de fotos";
@ -1861,6 +1881,9 @@ $a->strings["I am over 13 years of age and accept the %s for this website"] = "T
$a->strings["Membership on this site is by invitation only."] = "Para registrarse en este sitio es necesaria una invitación.";
$a->strings["Please enter your invitation code"] = "Por favor, introduzca el código de su invitación";
$a->strings["Enter your name"] = "Su nombre";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Su alias podrá usarse para crear una dirección de canal fácilmente memorizable (como una dirección de correo electrónico) que puede ser compartido con otros.";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Elija el tipo de canal (como red social o foro de discusión) y la privacidad que requiera, así podremos seleccionar el mejor conjunto de permisos para usted";
$a->strings["Channel Type"] = "Tipo de canal";
$a->strings["Your email address"] = "Su dirección de correo electrónico";
$a->strings["Choose a password"] = "Elija una contraseña";
$a->strings["Please re-enter your password"] = "Por favor, vuelva a escribir su contraseña";
@ -1891,13 +1914,14 @@ $a->strings["Search results for: %s"] = "Resultados de la búsqueda para: %s";
$a->strings["No service class restrictions found."] = "No se han encontrado restricciones sobre esta clase de servicio.";
$a->strings["Name is required"] = "El nombre es obligatorio";
$a->strings["Key and Secret are required"] = "\"Key\" y \"Secret\" son obligatorios";
$a->strings["Not valid email."] = "Correo electrónico no válido.";
$a->strings["Protected email address. Cannot change to that email."] = "Dirección de correo electrónico protegida. No se puede cambiar a ella.";
$a->strings["System failure storing new email. Please try again."] = "Fallo de sistema al guardar el nuevo correo electrónico. Por favor, inténtelo de nuevo.";
$a->strings["Password verification failed."] = "La comprobación de la contraseña ha fallado.";
$a->strings["Passwords do not match. Password unchanged."] = "Las contraseñas no coinciden. La contraseña no se ha cambiado.";
$a->strings["Empty passwords are not allowed. Password unchanged."] = "No se permiten contraseñas vacías. La contraseña no se ha cambiado.";
$a->strings["Password changed."] = "Contraseña cambiada.";
$a->strings["Password update failed. Please try again."] = "La actualización de la contraseña ha fallado. Por favor, inténtalo de nuevo.";
$a->strings["Not valid email."] = "Correo electrónico no válido.";
$a->strings["Protected email address. Cannot change to that email."] = "Dirección de correo electrónico protegida. No se puede cambiar a ella.";
$a->strings["System failure storing new email. Please try again."] = "Fallo de sistema al guardar el nuevo correo electrónico. Por favor, inténtelo de nuevo.";
$a->strings["Settings updated."] = "Ajustes actualizados.";
$a->strings["Add application"] = "Añadir aplicación";
$a->strings["Name of application"] = "Nombre de la aplicación";
@ -1916,8 +1940,9 @@ $a->strings["Remove authorization"] = "Eliminar autorización";
$a->strings["No feature settings configured"] = "No se ha establecido la configuración de los complementos";
$a->strings["Feature/Addon Settings"] = "Ajustes de los complementos";
$a->strings["Account Settings"] = "Configuración de la cuenta";
$a->strings["Enter New Password:"] = "Introduzca la nueva contraseña:";
$a->strings["Confirm New Password:"] = "Confirme la nueva contraseña:";
$a->strings["Current Password"] = "Contraseña actual";
$a->strings["Enter New Password"] = "Escribir una nueva contraseña";
$a->strings["Confirm New Password"] = "Confirmar la nueva contraseña";
$a->strings["Leave password fields blank unless changing"] = "Dejar en blanco los campos de contraseña a menos que cambie";
$a->strings["Email Address:"] = "Dirección de correo electrónico:";
$a->strings["Remove this account including all its channels"] = "Eliminar esta cuenta incluyendo todos sus canales";
@ -1931,6 +1956,8 @@ $a->strings["Custom Theme Settings"] = "Ajustes personalizados del tema";
$a->strings["Content Settings"] = "Ajustes del contenido";
$a->strings["Display Theme:"] = "Tema gráfico del perfil:";
$a->strings["Mobile Theme:"] = "Tema para el móvil:";
$a->strings["Preload images before rendering the page"] = "Carga previa de las imágenes antes de generar la página";
$a->strings["The subjective page load time will be longer but the page will be ready when displayed"] = "El tiempo subjetivo de carga de la página será más largo, pero la página estará lista cuando se muestre.";
$a->strings["Enable user zoom on mobile devices"] = "Habilitar zoom de usuario en dispositivos móviles";
$a->strings["Update browser every xx seconds"] = "Actualizar navegador cada xx segundos";
$a->strings["Minimum of 10 seconds, no maximum"] = "Mínimo de 10 segundos, sin máximo";
@ -2054,7 +2081,7 @@ $a->strings["Please use SSL (https) URL if available."] = "Por favor, use SSL (h
$a->strings["Please select a default timezone for your website"] = "Por favor, selecciones la zona horaria por defecto de su sitio web";
$a->strings["Site settings"] = "Ajustes del sitio";
$a->strings["Enable \$Projectname <strong>advanced</strong> features?"] = "¿Habilitar las funcionalidades <strong>avanzadas</strong> de \$Projectname ?";
$a->strings["Some advanced features, while useful - may be best suited for technically proficient audiences"] = "Algunas funcionalidades avanzadas, si bien bien son útiles, pueden ser más adecuadas para un público técnicamente competente";
$a->strings["Some advanced features, while useful - may be best suited for technically proficient audiences"] = "Algunas funcionalidades avanzadas, si bien son útiles, pueden ser más adecuadas para un público técnicamente competente";
$a->strings["Could not find a command line version of PHP in the web server PATH."] = "No se puede encontrar una versión en línea de comandos de PHP en la ruta del servidor web.";
$a->strings["If you don't have a command line version of PHP installed on server, you will not be able to run background polling via cron."] = "Si no tiene instalada la versión de línea de comandos de PHP en su servidor, no podrá realizar envíos en segundo plano mediante cron.";
$a->strings["PHP executable path"] = "Ruta del ejecutable PHP";
@ -2097,7 +2124,7 @@ $a->strings["In order to store these compiled templates, the web server needs to
$a->strings["Please ensure that the user that your web server runs as (e.g. www-data) has write access to this folder."] = "Por favor, asegúrese de que el servidor web está siendo ejecutado por un usuario que tenga permisos de escritura sobre esta carpeta (por ejemplo, www-data).";
$a->strings["Note: as a security measure, you should give the web server write access to %s only--not the template files (.tpl) that it contains."] = "Nota: como medida de seguridad, debe dar al servidor web permisos de escritura solo sobre %s - no sobre el fichero de plantilla (.tpl) que contiene.";
$a->strings["%s is writable"] = "%s tiene permisos de escritura";
$a->strings["Red uses the store directory to save uploaded files. The web server needs to have write access to the store directory under the Red top level folder"] = "Red guarda los ficheros descargados en la carpeta \"store\". El servidor web necesita tener permisos de escritura sobre esa carpeta, en el directorio de instalación.";
$a->strings["Red uses the store directory to save uploaded files. The web server needs to have write access to the store directory under the Red top level folder"] = "Hubzilla guarda los ficheros descargados en la carpeta \"store\". El servidor web necesita tener permisos de escritura sobre esa carpeta, en el directorio de instalación.";
$a->strings["store is writable"] = "\"store\" tiene permisos de escritura";
$a->strings["SSL certificate cannot be validated. Fix certificate or disable https access to this site."] = "El certificado SSL no ha podido ser validado. Corrija este problema o desactive el acceso https a este sitio.";
$a->strings["If you have https access to your website or allow connections to TCP port 443 (the https: port), you MUST use a browser-valid certificate. You MUST NOT use self-signed certificates!"] = "Si su servidor soporta conexiones cifradas SSL o si permite conexiones al puerto TCP 443 (el puerto usado por el protocolo https), debe utilizar un certificado válido. No debe usar un certificado firmado por usted mismo.";
@ -2154,6 +2181,7 @@ $a->strings["New Source"] = "Nueva fuente";
$a->strings["Import all or selected content from the following channel into this channel and distribute it according to your channel settings."] = "Importar todo el contenido o una selección de los siguientes canales en este canal y distribuirlo de acuerdo con sus ajustes.";
$a->strings["Only import content with these words (one per line)"] = "Importar solo contenido que contenga estas palabras (una por línea)";
$a->strings["Leave blank to import all public content"] = "Dejar en blanco para importar todo el contenido público";
$a->strings["Channel Name"] = "Nombre del canal";
$a->strings["Source not found."] = "Fuente no encontrada";
$a->strings["Edit Source"] = "Editar fuente";
$a->strings["Delete Source"] = "Eliminar fuente";

File diff suppressed because it is too large Load Diff

View File

@ -7,13 +7,6 @@ function string_plural_select_it($n){
;
$a->strings["Remote authentication blocked. You are logged into this site locally. Please logout and retry."] = "L'autenticazione tramite il tuo hub non è disponibile. Puoi provare a disconnetterti per tentare di nuovo.";
$a->strings["Welcome %s. Remote authentication successful."] = "Ciao %s. L'accesso tramite il tuo hub è avvenuto con successo.";
$a->strings["Connect"] = "Aggiungi";
$a->strings["New window"] = "Nuova finestra";
$a->strings["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra";
$a->strings["User '%s' deleted"] = "Utente '%s' eliminato";
$a->strings["No username found in import file."] = "Impossibile trovare il nome utente nel file da importare.";
$a->strings["Unable to create a unique channel address. Import failed."] = "Impossibile creare un indirizzo univoco per il canale. L'import è fallito.";
$a->strings["Import completed."] = "L'importazione è terminata con successo.";
$a->strings["parent"] = "cartella superiore";
$a->strings["Collection"] = "Cartella";
$a->strings["Principal"] = "Principale";
@ -38,6 +31,16 @@ $a->strings["You are using %1\$s of %2\$s available file storage. (%3\$s&#37;)"]
$a->strings["WARNING:"] = "ATTENZIONE:";
$a->strings["Create new folder"] = "Nuova cartella";
$a->strings["Upload file"] = "Carica un file";
$a->strings["Permission denied."] = "Permesso negato.";
$a->strings["Not Found"] = "Non disponibile";
$a->strings["Page not found."] = "Pagina non trovata.";
$a->strings["Connect"] = "Aggiungi";
$a->strings["New window"] = "Nuova finestra";
$a->strings["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra";
$a->strings["User '%s' deleted"] = "Utente '%s' eliminato";
$a->strings["No username found in import file."] = "Impossibile trovare il nome utente nel file da importare.";
$a->strings["Unable to create a unique channel address. Import failed."] = "Impossibile creare un indirizzo univoco per il canale. L'import è fallito.";
$a->strings["Import completed."] = "L'importazione è terminata con successo.";
$a->strings["Not a valid email address"] = "Email non valida";
$a->strings["Your email domain is not among those allowed on this site"] = "Il dominio della tua email attualmente non è permesso su questo sito";
$a->strings["Your email address is already registered at this site."] = "La tua email è già registrata su questo sito.";
@ -98,7 +101,6 @@ $a->strings["Profile Photo"] = "Foto del profilo";
$a->strings["Update"] = "Aggiorna";
$a->strings["Install"] = "Installa";
$a->strings["Purchase"] = "Acquista";
$a->strings["Permission denied."] = "Permesso negato.";
$a->strings["Item was not found."] = "Elemento non trovato.";
$a->strings["No source file."] = "Nessun file di origine.";
$a->strings["Cannot locate file to replace"] = "Il file da sostituire non è stato trovato";
@ -328,21 +330,35 @@ $a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-GG oppure MM-GG";
$a->strings["Required"] = "Obbligatorio";
$a->strings["never"] = "mai";
$a->strings["less than a second ago"] = "meno di un secondo fa";
$a->strings["year"] = "anno";
$a->strings["years"] = "anni";
$a->strings["month"] = "mese";
$a->strings["months"] = "mesi";
$a->strings["week"] = "settimana";
$a->strings["weeks"] = "settimane";
$a->strings["day"] = "giorno";
$a->strings["days"] = "giorni";
$a->strings["hour"] = "ora";
$a->strings["hours"] = "ore";
$a->strings["minute"] = "minuto";
$a->strings["minutes"] = "minuti";
$a->strings["second"] = "secondo";
$a->strings["seconds"] = "secondi";
$a->strings["__ctx:e.g. 22 hours ago, 1 minute ago__ %1\$d %2\$s ago"] = "%1\$d %2\$s fa";
$a->strings["__ctx:relative_date__ year"] = array(
0 => "anno",
1 => "anni",
);
$a->strings["__ctx:relative_date__ month"] = array(
0 => "mese",
1 => "mesi",
);
$a->strings["__ctx:relative_date__ week"] = array(
0 => "settimana",
1 => "settimane",
);
$a->strings["__ctx:relative_date__ day"] = array(
0 => "giorno",
1 => "giorni",
);
$a->strings["__ctx:relative_date__ hour"] = array(
0 => "ora",
1 => "ore",
);
$a->strings["__ctx:relative_date__ minute"] = array(
0 => "minuto",
1 => "minuti",
);
$a->strings["__ctx:relative_date__ second"] = array(
0 => "secondo",
1 => "secondi",
);
$a->strings["%1\$s's birthday"] = "Compleanno di %1\$s";
$a->strings["Happy Birthday %1\$s"] = "Buon compleanno %1\$s";
$a->strings["Cannot locate DNS info for database server '%s'"] = "Non trovo le informazioni DNS per il database server '%s'";
@ -513,12 +529,6 @@ $a->strings["Admin"] = "Amministrazione";
$a->strings["Site Setup and Configuration"] = "Installazione e configurazione del sito";
$a->strings["@name, #tag, ?doc, content"] = "@nome, #tag, ?guida, contenuto";
$a->strings["Please wait..."] = "Attendere...";
$a->strings["view full size"] = "guarda nelle dimensioni reali";
$a->strings["\$Projectname Notification"] = "Notifica \$Projectname";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Grazie,";
$a->strings["%s Administrator"] = "L'amministratore di %s";
$a->strings["No Subject"] = "Nessun titolo";
$a->strings["created a new post"] = "Ha creato un nuovo post";
$a->strings["commented on %s's post"] = "ha commentato il post di %s";
$a->strings["New Page"] = "Nuova pagina web";
@ -625,117 +635,12 @@ $a->strings["Zot"] = "Zot";
$a->strings["LinkedIn"] = "LinkedIn";
$a->strings["XMPP/IM"] = "XMPP/IM";
$a->strings["MySpace"] = "MySpace";
$a->strings["prev"] = "prec";
$a->strings["first"] = "inizio";
$a->strings["last"] = "fine";
$a->strings["next"] = "succ";
$a->strings["older"] = "più recenti";
$a->strings["newer"] = "più nuovi";
$a->strings["No connections"] = "Nessun contatto";
$a->strings["View all %s connections"] = "Mostra tutti i %s contatti";
$a->strings["Save"] = "Salva";
$a->strings["poke"] = "poke";
$a->strings["ping"] = "ping";
$a->strings["pinged"] = "ha ricevuto un ping";
$a->strings["prod"] = "spintone";
$a->strings["prodded"] = "ha ricevuto uno spintone";
$a->strings["slap"] = "schiaffo";
$a->strings["slapped"] = "ha ricevuto uno schiaffo";
$a->strings["finger"] = "finger";
$a->strings["fingered"] = "ha ricevuto un finger";
$a->strings["rebuff"] = "rifiuto";
$a->strings["rebuffed"] = "ha ricevuto un rifiuto";
$a->strings["happy"] = "felice";
$a->strings["sad"] = "triste";
$a->strings["mellow"] = "calmo";
$a->strings["tired"] = "stanco";
$a->strings["perky"] = "vivace";
$a->strings["angry"] = "arrabbiato";
$a->strings["stupefied"] = "stupito";
$a->strings["puzzled"] = "confuso";
$a->strings["interested"] = "attento";
$a->strings["bitter"] = "amaro";
$a->strings["cheerful"] = "allegro";
$a->strings["alive"] = "vivace";
$a->strings["annoyed"] = "seccato";
$a->strings["anxious"] = "ansioso";
$a->strings["cranky"] = "irritabile";
$a->strings["disturbed"] = "turbato";
$a->strings["frustrated"] = "frustrato";
$a->strings["depressed"] = "in depressione";
$a->strings["motivated"] = "motivato";
$a->strings["relaxed"] = "rilassato";
$a->strings["surprised"] = "sorpreso";
$a->strings["May"] = "Mag";
$a->strings["Unknown Attachment"] = "Allegato non riconoscuto";
$a->strings["unknown"] = "sconosciuta";
$a->strings["remove category"] = "rimuovi la categoria";
$a->strings["remove from file"] = "rimuovi dal file";
$a->strings["Click to open/close"] = "Clicca per aprire/chiudere";
$a->strings["Link to Source"] = "Link al sito d'origine";
$a->strings["default"] = "predefinito";
$a->strings["Page layout"] = "Layout della pagina";
$a->strings["You can create your own with the layouts tool"] = "Puoi creare un tuo layout dalla configurazione delle pagine web";
$a->strings["Page content type"] = "Tipo di contenuto della pagina";
$a->strings["Select an alternate language"] = "Seleziona una lingua diversa";
$a->strings["activity"] = "l'attività";
$a->strings["Design Tools"] = "Strumenti di design";
$a->strings["Blocks"] = "Block";
$a->strings["Menus"] = "Menù";
$a->strings["Layouts"] = "Layout";
$a->strings["Pages"] = "Pagine";
$a->strings["Permission denied"] = "Permesso negato";
$a->strings["(Unknown)"] = "(Sconosciuto)";
$a->strings["Visible to anybody on the internet."] = "Visibile a chiunque su internet.";
$a->strings["Visible to you only."] = "Visibile solo a te.";
$a->strings["Visible to anybody in this network."] = "Visibile a tutti su questa rete.";
$a->strings["Visible to anybody authenticated."] = "Visibile a chiunque sia autenticato.";
$a->strings["Visible to anybody on %s."] = "Visibile a tutti su %s.";
$a->strings["Visible to all connections."] = "Visibile a tutti coloro che ti seguono.";
$a->strings["Visible to approved connections."] = "Visibile ai contatti approvati.";
$a->strings["Visible to specific connections."] = "Visibile ad alcuni contatti scelti.";
$a->strings["Item not found."] = "Elemento non trovato.";
$a->strings["Privacy group not found."] = "Gruppo di canali non trovato.";
$a->strings["Privacy group is empty."] = "Gruppo di canali vuoto.";
$a->strings["Privacy group: %s"] = "Gruppo di canali: %s";
$a->strings["Connection: %s"] = "Contatto: %s";
$a->strings["Connection not found."] = "Contatto non trovato.";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla] Nuovo messaggio su %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s ti ha mandato un messaggio privato su %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s ti ha mandato %2\$s.";
$a->strings["a private message"] = "un messaggio privato";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Visita %s per leggere i tuoi messaggi privati e rispondere.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%5\$s di %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%4\$s che hai creato[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla] Nuovo commento di %2\$s alla conversazione #%1\$d";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s ha commentato un elemento che stavi seguendo.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Visita %s per leggere o commentare la conversazione.";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla] %s ha scritto sulla tua bacheca";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s ha scritto sulla bacheca del tuo profilo su %3\$s";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s ha scritto sulla [zrl=%3\$s]tua bacheca[/zrl]";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla] %s ti ha taggato";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s ti ha taggato su %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]ti ha taggato[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla] %1\$s ti ha mandato un poke";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s ti ha mandato un poke su %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]ti ha mandato un poke[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla] %s ha taggato il tuo post";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha taggato il tuo post su %3\$s";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s ha taggato [zrl=%3\$s]il tuo post[/zrl]";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla] Hai una richiesta di amicizia";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, hai ricevuto una richiesta di entrare in contatto da '%2\$s' su %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, hai ricevuto una [zrl=%2\$s]richiesta di entrare in contatto[/zrl] da %3\$s.";
$a->strings["You may visit their profile at %s"] = "Puoi visitare il suo profilo su %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Visita %s per approvare o rifiutare la richiesta di entrare in contatto.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla] Ti è stato suggerito un amico";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, ti è stato suggerito un amico da '%2\$s' su %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, %4\$s ti [zrl=%2\$s]ha suggerito %3\$s[/zrl] come amico.";
$a->strings["Name:"] = "Nome:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Visita %s per approvare o rifiutare il suggerimento.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla]";
$a->strings["view full size"] = "guarda nelle dimensioni reali";
$a->strings["\$Projectname Notification"] = "Notifica \$Projectname";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Grazie,";
$a->strings["%s Administrator"] = "L'amministratore di %s";
$a->strings["No Subject"] = "Nessun titolo";
$a->strings["General Features"] = "Funzionalità di base";
$a->strings["Content Expiration"] = "Scadenza";
$a->strings["Remove posts/comments and/or private messages at a future time"] = "Elimina i post, i commenti o i messaggi privati dopo un lasso di tempo";
@ -802,95 +707,28 @@ $a->strings["Star Posts"] = "Post con stella";
$a->strings["Ability to mark special posts with a star indicator"] = "Mostra la stella per segnare i post preferiti";
$a->strings["Tag Cloud"] = "Nuvola di tag";
$a->strings["Provide a personal tag cloud on your channel page"] = "Mostra la nuvola dei tag che usi di più sulla pagina del tuo canale";
$a->strings["Unable to obtain identity information from database"] = "Impossibile ottenere le informazioni di identificazione dal database";
$a->strings["Empty name"] = "Nome vuoto";
$a->strings["Name too long"] = "Nome troppo lungo";
$a->strings["No account identifier"] = "Account senza identificativo";
$a->strings["Nickname is required."] = "Il nome dell'account è obbligatorio.";
$a->strings["Reserved nickname. Please choose another."] = "Nome utente riservato. Per favore scegline un altro.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "Il nome dell'account è già in uso oppure ha dei caratteri non supportati.";
$a->strings["Unable to retrieve created identity"] = "Impossibile caricare l'identità creata";
$a->strings["Default Profile"] = "Profilo predefinito";
$a->strings["Requested channel is not available."] = "Il canale che cerchi non è disponibile.";
$a->strings["Requested profile is not available."] = "Il profilo richiesto non è disponibile.";
$a->strings["Change profile photo"] = "Cambia la foto del profilo";
$a->strings["Profiles"] = "Profili";
$a->strings["Manage/edit profiles"] = "Gestisci/modifica i profili";
$a->strings["Create New Profile"] = "Crea un nuovo profilo";
$a->strings["Profile Image"] = "Immagine del profilo";
$a->strings["visible to everybody"] = "visibile a tutti";
$a->strings["Edit visibility"] = "Cambia la visibilità";
$a->strings["Gender:"] = "Sesso:";
$a->strings["Status:"] = "Stato:";
$a->strings["Homepage:"] = "Home page:";
$a->strings["Online Now"] = "Online adesso";
$a->strings["g A l F d"] = "g A l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[oggi]";
$a->strings["Birthday Reminders"] = "Promemoria compleanni";
$a->strings["Birthdays this week:"] = "Compleanni questa settimana:";
$a->strings["[No description]"] = "[Nessuna descrizione]";
$a->strings["Event Reminders"] = "Promemoria";
$a->strings["Events this week:"] = "Eventi della settimana:";
$a->strings["Full Name:"] = "Nome completo:";
$a->strings["Like this channel"] = "Mi piace questo canale";
$a->strings["j F, Y"] = "j F Y";
$a->strings["j F"] = "j F";
$a->strings["Birthday:"] = "Compleanno:";
$a->strings["Age:"] = "Età:";
$a->strings["for %1\$d %2\$s"] = "per %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Preferenze sessuali:";
$a->strings["Hometown:"] = "Città dove vivo:";
$a->strings["Tags:"] = "Tag:";
$a->strings["Political Views:"] = "Orientamento politico:";
$a->strings["Religion:"] = "Religione:";
$a->strings["About:"] = "Informazioni:";
$a->strings["Hobbies/Interests:"] = "Interessi e hobby:";
$a->strings["Likes:"] = "Mi piace:";
$a->strings["Dislikes:"] = "Non mi piace:";
$a->strings["Contact information and Social Networks:"] = "Contatti e social network:";
$a->strings["My other channels:"] = "I miei altri canali:";
$a->strings["Musical interests:"] = "Gusti musicali:";
$a->strings["Books, literature:"] = "Libri, letteratura:";
$a->strings["Television:"] = "Televisione:";
$a->strings["Film/dance/culture/entertainment:"] = "Film, danza, cultura, intrattenimento:";
$a->strings["Love/Romance:"] = "Amore:";
$a->strings["Work/employment:"] = "Lavoro:";
$a->strings["School/education:"] = "Scuola:";
$a->strings["Like this thing"] = "Mi piace";
$a->strings["cover photo"] = "Copertina del canale";
$a->strings["Embedded content"] = "Contenuti incorporati";
$a->strings["Embedding disabled"] = "Disabilita la creazione di contenuti incorporati";
$a->strings["Can view my normal stream and posts"] = "Può vedere i miei contenuti e i post normali";
$a->strings["Can view my default channel profile"] = "Può vedere il profilo predefinito del canale";
$a->strings["Can view my connections"] = "Può vedere i miei contatti";
$a->strings["Can view my file storage and photos"] = "Può vedere il mio archivio file e foto";
$a->strings["Can view my webpages"] = "Può vedere le mie pagine web";
$a->strings["Can send me their channel stream and posts"] = "È tra i canali che seguo";
$a->strings["Can post on my channel page (\"wall\")"] = "Può scrivere sulla bacheca del mio canale";
$a->strings["Can comment on or like my posts"] = "Può commentare o aggiungere \"mi piace\" ai miei post";
$a->strings["Can send me private mail messages"] = "Può inviarmi messaggi privati";
$a->strings["Can like/dislike stuff"] = "Può aggiungere \"mi piace\" a tutto il resto";
$a->strings["Profiles and things other than posts/comments"] = "Può aggiungere \"mi piace\" a tutto ciò che non riguarda i post, come per esempio il profilo";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Può inoltrare post a tutti i contatti del canale tramite una @menzione";
$a->strings["Advanced - useful for creating group forum channels"] = "Impostazione avanzata - utile per creare un canale-forum di discussione";
$a->strings["Can chat with me (when available)"] = "Può aprire una chat con me (se disponibile)";
$a->strings["Can write to my file storage and photos"] = "Può modificare il mio archivio file e foto";
$a->strings["Can edit my webpages"] = "Può modificare le mie pagine web";
$a->strings["Can source my public posts in derived channels"] = "Può usare i miei post pubblici per creare canali derivati";
$a->strings["Somewhat advanced - very useful in open communities"] = "Piuttosto avanzato - molto utile nelle comunità aperte";
$a->strings["Can administer my channel resources"] = "Può amministrare i contenuti del mio canale";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Impostazione pericolosa - lasciare il valore predefinito se non si è assolutamente sicuri";
$a->strings["Social Networking"] = "Social network";
$a->strings["Mostly Public"] = "Prevalentemente pubblico";
$a->strings["Restricted"] = "Con restrizioni";
$a->strings["Private"] = "Privato";
$a->strings["Community Forum"] = "Forum di discussione";
$a->strings["Feed Republish"] = "Aggregatore di feed esterni";
$a->strings["Special Purpose"] = "Per finalità speciali";
$a->strings["Celebrity/Soapbox"] = "Pagina per fan";
$a->strings["Group Repository"] = "Repository di gruppo";
$a->strings["Custom/Expert Mode"] = "Personalizzazione per esperti";
$a->strings["Permission denied"] = "Permesso negato";
$a->strings["(Unknown)"] = "(Sconosciuto)";
$a->strings["Visible to anybody on the internet."] = "Visibile a chiunque su internet.";
$a->strings["Visible to you only."] = "Visibile solo a te.";
$a->strings["Visible to anybody in this network."] = "Visibile a tutti su questa rete.";
$a->strings["Visible to anybody authenticated."] = "Visibile a chiunque sia autenticato.";
$a->strings["Visible to anybody on %s."] = "Visibile a tutti su %s.";
$a->strings["Visible to all connections."] = "Visibile a tutti coloro che ti seguono.";
$a->strings["Visible to approved connections."] = "Visibile ai contatti approvati.";
$a->strings["Visible to specific connections."] = "Visibile ad alcuni contatti scelti.";
$a->strings["Item not found."] = "Elemento non trovato.";
$a->strings["Privacy group not found."] = "Gruppo di canali non trovato.";
$a->strings["Privacy group is empty."] = "Gruppo di canali vuoto.";
$a->strings["Privacy group: %s"] = "Gruppo di canali: %s";
$a->strings["Connection: %s"] = "Contatto: %s";
$a->strings["Connection not found."] = "Contatto non trovato.";
$a->strings["female"] = "femmina";
$a->strings["%1\$s updated her %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["male"] = "maschio";
$a->strings["%1\$s updated his %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["%1\$s updated their %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["profile photo"] = "foto del profilo";
$a->strings["System"] = "Sistema";
$a->strings["Create Personal App"] = "Crea app personale";
$a->strings["Edit Personal App"] = "Modifica app personale";
@ -902,6 +740,7 @@ $a->strings["Add New Connection"] = "Aggiungi un contatto";
$a->strings["Enter channel address"] = "Indirizzo del canale";
$a->strings["Examples: bob@example.com, https://example.com/barbara"] = "Per esempio: bob@example.com, https://example.com/barbara";
$a->strings["Notes"] = "Note";
$a->strings["Save"] = "Salva";
$a->strings["Remove term"] = "Rimuovi termine";
$a->strings["Archives"] = "Archivi";
$a->strings["Me"] = "Me";
@ -963,6 +802,159 @@ $a->strings["Plugin Features"] = "Plugin";
$a->strings["User registrations waiting for confirmation"] = "Registrazioni in attesa";
$a->strings["View Photo"] = "Guarda la foto";
$a->strings["Edit Album"] = "Modifica album";
$a->strings["prev"] = "prec";
$a->strings["first"] = "inizio";
$a->strings["last"] = "fine";
$a->strings["next"] = "succ";
$a->strings["older"] = "più recenti";
$a->strings["newer"] = "più nuovi";
$a->strings["No connections"] = "Nessun contatto";
$a->strings["View all %s connections"] = "Mostra tutti i %s contatti";
$a->strings["poke"] = "poke";
$a->strings["ping"] = "ping";
$a->strings["pinged"] = "ha ricevuto un ping";
$a->strings["prod"] = "spintone";
$a->strings["prodded"] = "ha ricevuto uno spintone";
$a->strings["slap"] = "schiaffo";
$a->strings["slapped"] = "ha ricevuto uno schiaffo";
$a->strings["finger"] = "finger";
$a->strings["fingered"] = "ha ricevuto un finger";
$a->strings["rebuff"] = "rifiuto";
$a->strings["rebuffed"] = "ha ricevuto un rifiuto";
$a->strings["happy"] = "felice";
$a->strings["sad"] = "triste";
$a->strings["mellow"] = "calmo";
$a->strings["tired"] = "stanco";
$a->strings["perky"] = "vivace";
$a->strings["angry"] = "arrabbiato";
$a->strings["stupefied"] = "stupito";
$a->strings["puzzled"] = "confuso";
$a->strings["interested"] = "attento";
$a->strings["bitter"] = "amaro";
$a->strings["cheerful"] = "allegro";
$a->strings["alive"] = "vivace";
$a->strings["annoyed"] = "seccato";
$a->strings["anxious"] = "ansioso";
$a->strings["cranky"] = "irritabile";
$a->strings["disturbed"] = "turbato";
$a->strings["frustrated"] = "frustrato";
$a->strings["depressed"] = "in depressione";
$a->strings["motivated"] = "motivato";
$a->strings["relaxed"] = "rilassato";
$a->strings["surprised"] = "sorpreso";
$a->strings["May"] = "Mag";
$a->strings["Unknown Attachment"] = "Allegato non riconoscuto";
$a->strings["unknown"] = "sconosciuta";
$a->strings["remove category"] = "rimuovi la categoria";
$a->strings["remove from file"] = "rimuovi dal file";
$a->strings["Click to open/close"] = "Clicca per aprire/chiudere";
$a->strings["Link to Source"] = "Link al sito d'origine";
$a->strings["default"] = "predefinito";
$a->strings["Page layout"] = "Layout della pagina";
$a->strings["You can create your own with the layouts tool"] = "Puoi creare un tuo layout dalla configurazione delle pagine web";
$a->strings["Page content type"] = "Tipo di contenuto della pagina";
$a->strings["Select an alternate language"] = "Seleziona una lingua diversa";
$a->strings["activity"] = "l'attività";
$a->strings["Design Tools"] = "Strumenti di design";
$a->strings["Blocks"] = "Block";
$a->strings["Menus"] = "Menù";
$a->strings["Layouts"] = "Layout";
$a->strings["Pages"] = "Pagine";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla] Nuovo messaggio su %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s ti ha mandato un messaggio privato su %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s ti ha mandato %2\$s.";
$a->strings["a private message"] = "un messaggio privato";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Visita %s per leggere i tuoi messaggi privati e rispondere.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%5\$s di %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s ha commentato [zrl=%3\$s]%4\$s che hai creato[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla] Nuovo commento di %2\$s alla conversazione #%1\$d";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s ha commentato un elemento che stavi seguendo.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Visita %s per leggere o commentare la conversazione.";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla] %s ha scritto sulla tua bacheca";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s ha scritto sulla bacheca del tuo profilo su %3\$s";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s ha scritto sulla [zrl=%3\$s]tua bacheca[/zrl]";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla] %s ti ha taggato";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s ti ha taggato su %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]ti ha taggato[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla] %1\$s ti ha mandato un poke";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s ti ha mandato un poke su %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]ti ha mandato un poke[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla] %s ha taggato il tuo post";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha taggato il tuo post su %3\$s";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s ha taggato [zrl=%3\$s]il tuo post[/zrl]";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla] Hai una richiesta di amicizia";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, hai ricevuto una richiesta di entrare in contatto da '%2\$s' su %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, hai ricevuto una [zrl=%2\$s]richiesta di entrare in contatto[/zrl] da %3\$s.";
$a->strings["You may visit their profile at %s"] = "Puoi visitare il suo profilo su %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Visita %s per approvare o rifiutare la richiesta di entrare in contatto.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla] Ti è stato suggerito un amico";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, ti è stato suggerito un amico da '%2\$s' su %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, %4\$s ti [zrl=%2\$s]ha suggerito %3\$s[/zrl] come amico.";
$a->strings["Name:"] = "Nome:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Visita %s per approvare o rifiutare il suggerimento.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla]";
$a->strings["Unable to obtain identity information from database"] = "Impossibile ottenere le informazioni di identificazione dal database";
$a->strings["Empty name"] = "Nome vuoto";
$a->strings["Name too long"] = "Nome troppo lungo";
$a->strings["No account identifier"] = "Account senza identificativo";
$a->strings["Nickname is required."] = "Il nome dell'account è obbligatorio.";
$a->strings["Reserved nickname. Please choose another."] = "Nome utente riservato. Per favore scegline un altro.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "Il nome dell'account è già in uso oppure ha dei caratteri non supportati.";
$a->strings["Unable to retrieve created identity"] = "Impossibile caricare l'identità creata";
$a->strings["Default Profile"] = "Profilo predefinito";
$a->strings["Requested channel is not available."] = "Il canale che cerchi non è disponibile.";
$a->strings["Requested profile is not available."] = "Il profilo richiesto non è disponibile.";
$a->strings["Change profile photo"] = "Cambia la foto del profilo";
$a->strings["Profiles"] = "Profili";
$a->strings["Manage/edit profiles"] = "Gestisci/modifica i profili";
$a->strings["Create New Profile"] = "Crea un nuovo profilo";
$a->strings["Profile Image"] = "Immagine del profilo";
$a->strings["visible to everybody"] = "visibile a tutti";
$a->strings["Edit visibility"] = "Cambia la visibilità";
$a->strings["Gender:"] = "Sesso:";
$a->strings["Status:"] = "Stato:";
$a->strings["Homepage:"] = "Home page:";
$a->strings["Online Now"] = "Online adesso";
$a->strings["g A l F d"] = "g A l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[oggi]";
$a->strings["Birthday Reminders"] = "Promemoria compleanni";
$a->strings["Birthdays this week:"] = "Compleanni questa settimana:";
$a->strings["[No description]"] = "[Nessuna descrizione]";
$a->strings["Event Reminders"] = "Promemoria";
$a->strings["Events this week:"] = "Eventi della settimana:";
$a->strings["Full Name:"] = "Nome completo:";
$a->strings["Like this channel"] = "Mi piace questo canale";
$a->strings["j F, Y"] = "j F Y";
$a->strings["j F"] = "j F";
$a->strings["Birthday:"] = "Compleanno:";
$a->strings["Age:"] = "Età:";
$a->strings["for %1\$d %2\$s"] = "per %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Preferenze sessuali:";
$a->strings["Hometown:"] = "Città dove vivo:";
$a->strings["Tags:"] = "Tag:";
$a->strings["Political Views:"] = "Orientamento politico:";
$a->strings["Religion:"] = "Religione:";
$a->strings["About:"] = "Informazioni:";
$a->strings["Hobbies/Interests:"] = "Interessi e hobby:";
$a->strings["Likes:"] = "Mi piace:";
$a->strings["Dislikes:"] = "Non mi piace:";
$a->strings["Contact information and Social Networks:"] = "Contatti e social network:";
$a->strings["My other channels:"] = "I miei altri canali:";
$a->strings["Musical interests:"] = "Gusti musicali:";
$a->strings["Books, literature:"] = "Libri, letteratura:";
$a->strings["Television:"] = "Televisione:";
$a->strings["Film/dance/culture/entertainment:"] = "Film, danza, cultura, intrattenimento:";
$a->strings["Love/Romance:"] = "Amore:";
$a->strings["Work/employment:"] = "Lavoro:";
$a->strings["School/education:"] = "Scuola:";
$a->strings["Like this thing"] = "Mi piace";
$a->strings["cover photo"] = "Copertina del canale";
$a->strings["Embedded content"] = "Contenuti incorporati";
$a->strings["Embedding disabled"] = "Disabilita la creazione di contenuti incorporati";
$a->strings["Save to Folder"] = "Salva nella cartella";
$a->strings["I will attend"] = "Parteciperò";
$a->strings["I will not attend"] = "Non parteciperò";
@ -998,8 +990,41 @@ $a->strings["This is you"] = "Questo sei tu";
$a->strings["Image"] = "Immagine";
$a->strings["Insert Link"] = "Collegamento";
$a->strings["Video"] = "Video";
$a->strings["Not Found"] = "Non disponibile";
$a->strings["Page not found."] = "Pagina non trovata.";
$a->strings["Can view my normal stream and posts"] = "Può vedere i miei contenuti e i post normali";
$a->strings["Can view my default channel profile"] = "Può vedere il profilo predefinito del canale";
$a->strings["Can view my connections"] = "Può vedere i miei contatti";
$a->strings["Can view my file storage and photos"] = "Può vedere il mio archivio file e foto";
$a->strings["Can view my webpages"] = "Può vedere le mie pagine web";
$a->strings["Can send me their channel stream and posts"] = "È tra i canali che seguo";
$a->strings["Can post on my channel page (\"wall\")"] = "Può scrivere sulla bacheca del mio canale";
$a->strings["Can comment on or like my posts"] = "Può commentare o aggiungere \"mi piace\" ai miei post";
$a->strings["Can send me private mail messages"] = "Può inviarmi messaggi privati";
$a->strings["Can like/dislike stuff"] = "Può aggiungere \"mi piace\" a tutto il resto";
$a->strings["Profiles and things other than posts/comments"] = "Può aggiungere \"mi piace\" a tutto ciò che non riguarda i post, come per esempio il profilo";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Può inoltrare post a tutti i contatti del canale tramite una @menzione";
$a->strings["Advanced - useful for creating group forum channels"] = "Impostazione avanzata - utile per creare un canale-forum di discussione";
$a->strings["Can chat with me (when available)"] = "Può aprire una chat con me (se disponibile)";
$a->strings["Can write to my file storage and photos"] = "Può modificare il mio archivio file e foto";
$a->strings["Can edit my webpages"] = "Può modificare le mie pagine web";
$a->strings["Can source my public posts in derived channels"] = "Può usare i miei post pubblici per creare canali derivati";
$a->strings["Somewhat advanced - very useful in open communities"] = "Piuttosto avanzato - molto utile nelle comunità aperte";
$a->strings["Can administer my channel resources"] = "Può amministrare i contenuti del mio canale";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Impostazione pericolosa - lasciare il valore predefinito se non si è assolutamente sicuri";
$a->strings["Social Networking"] = "Social network";
$a->strings["Social - Mostly Public"] = "Social - Prevalentemente pubblico";
$a->strings["Social - Restricted"] = "Social - Con restrizioni";
$a->strings["Social - Private"] = "Social - Privato";
$a->strings["Community Forum"] = "Forum di discussione";
$a->strings["Forum - Mostly Public"] = "Social - Prevalentemente pubblico";
$a->strings["Forum - Restricted"] = "Forum - Con restrizioni";
$a->strings["Forum - Private"] = "Forum - Privato";
$a->strings["Feed Republish"] = "Aggregatore di feed esterni";
$a->strings["Feed - Mostly Public"] = "Feed - Prevalentemente pubblico";
$a->strings["Feed - Restricted"] = "Feed - Con restrizioni";
$a->strings["Special Purpose"] = "Per finalità speciali";
$a->strings["Special - Celebrity/Soapbox"] = "Speciale - Pagina per fan";
$a->strings["Special - Group Repository"] = "Speciale - Repository di gruppo";
$a->strings["Custom/Expert Mode"] = "Personalizzazione per esperti";
$a->strings["Some blurb about what to do when you're new here"] = "Qualche suggerimento per i nuovi utenti su cosa fare";
$a->strings["network"] = "rete";
$a->strings["RSS"] = "RSS";
@ -1119,6 +1144,7 @@ $a->strings["Set Profile"] = "Scegli il profilo da mostrare";
$a->strings["Set Affinity & Profile"] = "Affinità e profilo";
$a->strings["none"] = "--";
$a->strings["Apply these permissions automatically"] = "Applica automaticamente questi permessi";
$a->strings["Connection requests will be approved without your interaction"] = "Le richieste di entrare in contatto saranno approvate in automatico";
$a->strings["This connection's primary address is"] = "Indirizzo primario di questo canale";
$a->strings["Available locations:"] = "Indirizzi disponibili";
$a->strings["The permissions indicated on this page will be applied to all new connections."] = "I permessi indicati su questa pagina saranno applicati a tutti i nuovi contatti da ora in poi.";
@ -1464,16 +1490,16 @@ $a->strings["Search Results For:"] = "Cerca risultati con:";
$a->strings["Privacy group is empty"] = "Il gruppo di canali è vuoto";
$a->strings["Privacy group: "] = "Gruppo di canali:";
$a->strings["Invalid connection."] = "Contatto non valido.";
$a->strings["Add a Channel"] = "Aggiungi un canale";
$a->strings["A channel is your own collection of related web pages. A channel can be used to hold social network profiles, blogs, conversation groups and forums, celebrity pages, and much more. You may create as many channels as your service provider allows."] = "I contenuti che pubblichi sono mostrati nel tuo \"canale\". Un canale può essere usato come bacheca personale, come blog, oppure può essere un forum di discussione, un gruppo di interesse, una pagina di celebrità e molto altro. Puoi creare tanti canali quanti te ne permette il tuo sito.";
$a->strings["Channel Name"] = "Nome del canale";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\" "] = "Per esempio: \"Mario Rossi\", \"Lisa e le sue ricette\", \"Il campionato\", \"Il gruppo di escursionismo\"";
$a->strings["Name or caption"] = "Nome o titolo";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\""] = "Per esempio: \"Mario Rossi\", \"Lisa e le sue ricette\", \"Il campionato\", \"Il gruppo di escursionismo\"";
$a->strings["Choose a short nickname"] = "Scegli un nome breve";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Il nome breve sarà usato per creare un indirizzo facile da ricordare per il tuo canale (simile a una email). Così potrai condividerlo e gli altri potranno trovarti.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "Oppure <a href=\"import\">importa un tuo canale esistente</a> da un altro hub";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Descrivi il tipo di canale che vorresti creare (per esempio se ti interessa più usarlo come social network, come un forum di discussione...) e il tipo di privacy che preferisci. Hubzilla sceglierà per te i permessi più adatti.";
$a->strings["Channel Type"] = "Tipo di canale";
$a->strings["Your nickname will be used to create an easy to remember channel address e.g. nickname%s"] = "Il nome breve sarà usato per creare un indirizzo facile da ricordare per il tuo canale, per esempio nickname%s";
$a->strings["Channel role and privacy"] = "Tipo di canale e privacy";
$a->strings["Select a channel role with your privacy requirements."] = "Scegli il tipo di canale che vuoi e la privacy da applicare.";
$a->strings["Read more about roles"] = "Maggiori informazioni sui ruoli";
$a->strings["Create a Channel"] = "Crea un canale";
$a->strings["A channel is your identity on the grid. It can represent a person, a blog, or a forum to name a few. Channels can make connections with other channels to share information with highly detailed permissions."] = "Un canale è la tua identità sulla rete. Può rappresentare una persona, un blog o un forum, per esempio. I canali possono essere in contatto con altri canali per condividere i loro contenuti con permessi anche molto dettagliati.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "Oppure <a href=\"import\">importa un tuo canale esistente</a> da un altro hub";
$a->strings["Invalid request identifier."] = "L'identificativo della richiesta non è valido.";
$a->strings["Discard"] = "Rifiuta";
$a->strings["No more system notifications."] = "Non ci sono nuove notifiche di sistema.";
@ -1741,12 +1767,6 @@ $a->strings["Image resize failed."] = "Il ridimensionamento dell'immagine è fal
$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Ricarica la pagina con shift+F5 o cancella la cache del browser se la nuova foto non viene mostrata immediatamente.";
$a->strings["Image upload failed."] = "Il caricamento dell'immagine è fallito.";
$a->strings["Unable to process image."] = "Impossibile elaborare l'immagine.";
$a->strings["female"] = "femmina";
$a->strings["%1\$s updated her %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["male"] = "maschio";
$a->strings["%1\$s updated his %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["%1\$s updated their %2\$s"] = "Aggiornamento: %2\$s di %1\$s";
$a->strings["profile photo"] = "foto del profilo";
$a->strings["Photo not available."] = "Foto non disponibile.";
$a->strings["Upload File:"] = "Carica un file:";
$a->strings["Select a profile:"] = "Seleziona un profilo:";
@ -1861,6 +1881,9 @@ $a->strings["I am over 13 years of age and accept the %s for this website"] = "H
$a->strings["Membership on this site is by invitation only."] = "Per registrarsi su questo hub è necessario un invito.";
$a->strings["Please enter your invitation code"] = "Inserisci il codice dell'invito";
$a->strings["Enter your name"] = "Il tuo nome";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Il nome breve sarà usato per creare un indirizzo facile da ricordare per il tuo canale (simile a una email). Così potrai condividerlo e gli altri potranno trovarti.";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Descrivi il tipo di canale che vorresti creare (per esempio se ti interessa più usarlo come social network, come un forum di discussione...) e il tipo di privacy che preferisci. Hubzilla sceglierà per te i permessi più adatti.";
$a->strings["Channel Type"] = "Tipo di canale";
$a->strings["Your email address"] = "Il tuo indirizzo email";
$a->strings["Choose a password"] = "Scegli una password";
$a->strings["Please re-enter your password"] = "Ripeti la password per verifica";
@ -1891,13 +1914,14 @@ $a->strings["Search results for: %s"] = "Risultati ricerca: %s";
$a->strings["No service class restrictions found."] = "Non esistono restrizioni su questa classe di account.";
$a->strings["Name is required"] = "Il nome è obbligatorio";
$a->strings["Key and Secret are required"] = "Key e Secret sono richiesti";
$a->strings["Not valid email."] = "Email non valida.";
$a->strings["Protected email address. Cannot change to that email."] = "È un indirizzo email riservato. Non puoi sceglierlo.";
$a->strings["System failure storing new email. Please try again."] = "Errore di sistema. Non è stato possibile memorizzare il tuo messaggio, riprova per favore.";
$a->strings["Password verification failed."] = "Verifica della password fallita.";
$a->strings["Passwords do not match. Password unchanged."] = "Le password non corrispondono. Password non cambiata.";
$a->strings["Empty passwords are not allowed. Password unchanged."] = "Le password non possono essere vuote. Password non cambiata.";
$a->strings["Password changed."] = "Password cambiata.";
$a->strings["Password update failed. Please try again."] = "Modifica password fallita. Prova ancora.";
$a->strings["Not valid email."] = "Email non valida.";
$a->strings["Protected email address. Cannot change to that email."] = "È un indirizzo email riservato. Non puoi sceglierlo.";
$a->strings["System failure storing new email. Please try again."] = "Errore di sistema. Non è stato possibile memorizzare il tuo messaggio, riprova per favore.";
$a->strings["Settings updated."] = "Impostazioni aggiornate.";
$a->strings["Add application"] = "Aggiungi una app";
$a->strings["Name of application"] = "Nome dell'applicazione";
@ -1916,8 +1940,9 @@ $a->strings["Remove authorization"] = "Revoca l'autorizzazione";
$a->strings["No feature settings configured"] = "Non hai componenti aggiuntivi da personalizzare";
$a->strings["Feature/Addon Settings"] = "Impostazioni dei componenti aggiuntivi";
$a->strings["Account Settings"] = "Il tuo account";
$a->strings["Enter New Password:"] = "Inserisci la nuova password:";
$a->strings["Confirm New Password:"] = "Conferma la nuova password:";
$a->strings["Current Password"] = "Password attuale";
$a->strings["Enter New Password"] = "Nuova password";
$a->strings["Confirm New Password"] = "Conferma la nuova password";
$a->strings["Leave password fields blank unless changing"] = "Lascia vuoti questi campi per non cambiare la password";
$a->strings["Email Address:"] = "Indirizzo email:";
$a->strings["Remove this account including all its channels"] = "Elimina questo account e tutti i suoi canali";
@ -1931,6 +1956,8 @@ $a->strings["Custom Theme Settings"] = "Personalizzazione del tema";
$a->strings["Content Settings"] = "Impostazioni dei contenuti";
$a->strings["Display Theme:"] = "Tema per schermi medio grandi:";
$a->strings["Mobile Theme:"] = "Tema per dispositivi mobili:";
$a->strings["Preload images before rendering the page"] = "Anticipa il caricamento delle immagini prima del rendering della pagina";
$a->strings["The subjective page load time will be longer but the page will be ready when displayed"] = "Il tempo di caricamento della pagina sarà più lungo ma sarà mostrato il rendering completo";
$a->strings["Enable user zoom on mobile devices"] = "Attiva la possibilità di fare zoom sui dispositivi mobili";
$a->strings["Update browser every xx seconds"] = "Aggiorna il browser ogni x secondi";
$a->strings["Minimum of 10 seconds, no maximum"] = "Minimo 10 secondi, nessun limite massimo";
@ -2154,6 +2181,7 @@ $a->strings["New Source"] = "Nuova sorgente";
$a->strings["Import all or selected content from the following channel into this channel and distribute it according to your channel settings."] = "Importa nel tuo canale tutti o una parte dei contenuti dal canale seguente.";
$a->strings["Only import content with these words (one per line)"] = "Importa solo i contenuti che hanno queste parole (una per riga)";
$a->strings["Leave blank to import all public content"] = "Lascia vuoto per importare tutti i contenuti pubblici";
$a->strings["Channel Name"] = "Nome del canale";
$a->strings["Source not found."] = "Sorgente non trovata.";
$a->strings["Edit Source"] = "Modifica la sorgente";
$a->strings["Delete Source"] = "Elimina la sorgente";

View File

@ -1,20 +1,27 @@
$(document).ready(function() {
// $("#id_permissions_role").sSelect();
$("#newchannel-name").blur(function() {
$("#id_name").blur(function() {
$("#name-spinner").spin('small');
var zreg_name = $("#newchannel-name").val();
var zreg_name = $("#id_name").val();
$.get("new_channel/autofill.json?f=&name=" + encodeURIComponent(zreg_name),function(data) {
$("#newchannel-nickname").val(data);
zFormError("#newchannel-name-feedback",data.error);
$("#id_nickname").val(data);
if(data.error) {
$("#help_name").html("");
zFormError("#help_name",data.error);
}
$("#name-spinner").spin(false);
});
});
$("#newchannel-nickname").blur(function() {
$("#id_nickname").blur(function() {
$("#nick-spinner").spin('small');
var zreg_nick = $("#newchannel-nickname").val();
var zreg_nick = $("#id_nickname").val();
$.get("new_channel/checkaddr.json?f=&nick=" + encodeURIComponent(zreg_nick),function(data) {
$("#newchannel-nickname").val(data);
zFormError("#newchannel-nickname-feedback",data.error);
$("#id_nickname").val(data);
if(data.error) {
$("#help_nickname").html("");
zFormError("#help_nickname",data.error);
}
$("#nick-spinner").spin(false);
});
});

View File

@ -1,48 +1,54 @@
$(document).ready(function() {
$("#register-email").blur(function() {
var zreg_email = $("#register-email").val();
$("#id_email").blur(function() {
var zreg_email = $("#id_email").val();
$.get("register/email_check.json?f=&email=" + encodeURIComponent(zreg_email), function(data) {
$("#register-email-feedback").html(data.message);
zFormError("#register-email-feedback",data.error);
$("#help_email").html(data.message);
zFormError("#help_email",data.error);
});
});
$("#register-password").blur(function() {
if(($("#register-password").val()).length < 6 ) {
$("#register-password-feedback").html(aStr.pwshort);
zFormError("#register-password-feedback", true);
$("#id_password").blur(function() {
if(($("#id_password").val()).length < 6 ) {
$("#help_password").html(aStr.pwshort);
zFormError("#help_password", true);
}
else {
$("#register-password-feedback").html("");
zFormError("#register-password-feedback", false);
$("#help_password").html("");
zFormError("#help_password", false);
}
});
$("#register-password2").blur(function() {
if($("#register-password").val() != $("#register-password2").val()) {
$("#register-password2-feedback").html(aStr.pwnomatch);
zFormError("#register-password2-feedback", true);
$("#id_password2").blur(function() {
if($("#id_password").val() != $("#id_password2").val()) {
$("#help_password2").html(aStr.pwnomatch);
zFormError("#help_password2", true);
}
else {
$("#register-password2-feedback").html("");
zFormError("#register-password2-feedback", false);
$("#help_password2").html("");
zFormError("#help_password2", false);
}
});
$("#newchannel-name").blur(function() {
$("#id_name").blur(function() {
$("#name-spinner").spin('small');
var zreg_name = $("#newchannel-name").val();
var zreg_name = $("#id_name").val();
$.get("new_channel/autofill.json?f=&name=" + encodeURIComponent(zreg_name),function(data) {
$("#newchannel-nickname").val(data);
zFormError("#newchannel-name-feedback",data.error);
$("#id_nickname").val(data);
if(data.error) {
$("#help_name").html("");
zFormError("#help_name",data.error);
}
$("#name-spinner").spin(false);
});
});
$("#newchannel-nickname").blur(function() {
$("#id_nickname").blur(function() {
$("#nick-spinner").spin('small');
var zreg_nick = $("#newchannel-nickname").val();
var zreg_nick = $("#id_nickname").val();
$.get("new_channel/checkaddr.json?f=&nick=" + encodeURIComponent(zreg_nick),function(data) {
$("#newchannel-nickname").val(data);
zFormError("#newchannel-nickname-feedback",data.error);
$("#id_nickname").val(data);
if(data.error) {
$("#help_nickname").html("");
zFormError("#help_nickname",data.error);
}
$("#nick-spinner").spin(false);
});
});

File diff suppressed because it is too large Load Diff

View File

@ -7,13 +7,6 @@ function string_plural_select_nl($n){
;
$a->strings["Remote authentication blocked. You are logged into this site locally. Please logout and retry."] = "Authenticatie op afstand geblokkeerd. Je bent lokaal op deze hub ingelogd. Uitloggen en opnieuw proberen.";
$a->strings["Welcome %s. Remote authentication successful."] = "Welkom %s. Authenticatie op afstand geslaagd.";
$a->strings["Connect"] = "Verbinden";
$a->strings["New window"] = "Nieuw venster";
$a->strings["Open the selected location in a different window or browser tab"] = "Open de geselecteerde locatie in een ander venster of tab";
$a->strings["User '%s' deleted"] = "Account '%s' verwijderd";
$a->strings["No username found in import file."] = "Geen gebruikersnaam in het importbestand gevonden.";
$a->strings["Unable to create a unique channel address. Import failed."] = "Niet in staat om een uniek kanaaladres aan te maken. Importeren is mislukt.";
$a->strings["Import completed."] = "Import voltooid.";
$a->strings["parent"] = "omhoog";
$a->strings["Collection"] = "map";
$a->strings["Principal"] = "principal";
@ -38,6 +31,16 @@ $a->strings["You are using %1\$s of %2\$s available file storage. (%3\$s&#37;)"]
$a->strings["WARNING:"] = "WAARSCHUWING:";
$a->strings["Create new folder"] = "Nieuwe map aanmaken";
$a->strings["Upload file"] = "Bestand uploaden";
$a->strings["Permission denied."] = "Toegang geweigerd.";
$a->strings["Not Found"] = "Niet gevonden";
$a->strings["Page not found."] = "Pagina niet gevonden.";
$a->strings["Connect"] = "Verbinden";
$a->strings["New window"] = "Nieuw venster";
$a->strings["Open the selected location in a different window or browser tab"] = "Open de geselecteerde locatie in een ander venster of tab";
$a->strings["User '%s' deleted"] = "Account '%s' verwijderd";
$a->strings["No username found in import file."] = "Geen gebruikersnaam in het importbestand gevonden.";
$a->strings["Unable to create a unique channel address. Import failed."] = "Niet in staat om een uniek kanaaladres aan te maken. Importeren is mislukt.";
$a->strings["Import completed."] = "Import voltooid.";
$a->strings["Not a valid email address"] = "Geen geldig e-mailadres";
$a->strings["Your email domain is not among those allowed on this site"] = "Jouw e-maildomein is op deze hub niet toegestaan";
$a->strings["Your email address is already registered at this site."] = "Jouw e-mailadres is al op deze hub geregistreerd.";
@ -98,7 +101,6 @@ $a->strings["Profile Photo"] = "Profielfoto";
$a->strings["Update"] = "Bijwerken";
$a->strings["Install"] = "Installeren";
$a->strings["Purchase"] = "Aanschaffen";
$a->strings["Permission denied."] = "Toegang geweigerd.";
$a->strings["Item was not found."] = "Item niet gevonden";
$a->strings["No source file."] = "Geen bronbestand.";
$a->strings["Cannot locate file to replace"] = "Kan het te vervangen bestand niet vinden";
@ -328,21 +330,35 @@ $a->strings["YYYY-MM-DD or MM-DD"] = "JJJJ-MM-DD of MM-DD";
$a->strings["Required"] = "Vereist";
$a->strings["never"] = "nooit";
$a->strings["less than a second ago"] = "minder dan een seconde geleden";
$a->strings["year"] = "jaar";
$a->strings["years"] = "jaren";
$a->strings["month"] = "maand";
$a->strings["months"] = "maanden";
$a->strings["week"] = "week";
$a->strings["weeks"] = "weken";
$a->strings["day"] = "dag";
$a->strings["days"] = "dagen";
$a->strings["hour"] = "uur";
$a->strings["hours"] = "uren";
$a->strings["minute"] = "minuut";
$a->strings["minutes"] = "minuten";
$a->strings["second"] = "seconde";
$a->strings["seconds"] = "seconden";
$a->strings["__ctx:e.g. 22 hours ago, 1 minute ago__ %1\$d %2\$s ago"] = "%1\$d %2\$s geleden";
$a->strings["__ctx:relative_date__ year"] = array(
0 => "jaar",
1 => "jaren",
);
$a->strings["__ctx:relative_date__ month"] = array(
0 => "maand",
1 => "maanden",
);
$a->strings["__ctx:relative_date__ week"] = array(
0 => "week",
1 => "weken",
);
$a->strings["__ctx:relative_date__ day"] = array(
0 => "dag",
1 => "dagen",
);
$a->strings["__ctx:relative_date__ hour"] = array(
0 => "uur",
1 => "uren",
);
$a->strings["__ctx:relative_date__ minute"] = array(
0 => "minuut",
1 => "minuten",
);
$a->strings["__ctx:relative_date__ second"] = array(
0 => "seconde",
1 => "seconden",
);
$a->strings["%1\$s's birthday"] = "Verjaardag van %1\$s";
$a->strings["Happy Birthday %1\$s"] = "Gefeliciteerd met je verjaardag %1\$s";
$a->strings["Cannot locate DNS info for database server '%s'"] = "Kan DNS-informatie voor databaseserver '%s' niet vinden";
@ -513,12 +529,6 @@ $a->strings["Admin"] = "Beheer";
$a->strings["Site Setup and Configuration"] = "Hub instellen en beheren";
$a->strings["@name, #tag, ?doc, content"] = "@kanaal, #tag, inhoud, ?hulp";
$a->strings["Please wait..."] = "Wachten aub...";
$a->strings["view full size"] = "volledige grootte tonen";
$a->strings["\$Projectname Notification"] = "\$Projectname-notificatie";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Bedankt,";
$a->strings["%s Administrator"] = "Beheerder %s";
$a->strings["No Subject"] = "Geen onderwerp";
$a->strings["created a new post"] = "maakte een nieuw bericht aan";
$a->strings["commented on %s's post"] = "gaf een reactie op een bericht van %s";
$a->strings["New Page"] = "Nieuwe pagina";
@ -625,117 +635,12 @@ $a->strings["Zot"] = "Zot";
$a->strings["LinkedIn"] = "LinkedIn";
$a->strings["XMPP/IM"] = "XMPP/IM";
$a->strings["MySpace"] = "MySpace";
$a->strings["prev"] = "vorige";
$a->strings["first"] = "eerste";
$a->strings["last"] = "laatste";
$a->strings["next"] = "volgende";
$a->strings["older"] = "ouder";
$a->strings["newer"] = "nieuwer";
$a->strings["No connections"] = "Geen connecties";
$a->strings["View all %s connections"] = "Toon alle %s connecties";
$a->strings["Save"] = "Opslaan";
$a->strings["poke"] = "aanstoten";
$a->strings["ping"] = "ping";
$a->strings["pinged"] = "gepingd";
$a->strings["prod"] = "por";
$a->strings["prodded"] = "gepord";
$a->strings["slap"] = "slaan";
$a->strings["slapped"] = "sloeg";
$a->strings["finger"] = "finger";
$a->strings["fingered"] = "gefingerd";
$a->strings["rebuff"] = "afpoeieren";
$a->strings["rebuffed"] = "afgepoeierd";
$a->strings["happy"] = "gelukkig";
$a->strings["sad"] = "bedroefd";
$a->strings["mellow"] = "mellow";
$a->strings["tired"] = "moe";
$a->strings["perky"] = "parmantig";
$a->strings["angry"] = "boos";
$a->strings["stupefied"] = "verbijsterd";
$a->strings["puzzled"] = "verward";
$a->strings["interested"] = "geïnteresseerd";
$a->strings["bitter"] = "verbitterd";
$a->strings["cheerful"] = "vrolijk";
$a->strings["alive"] = "levendig";
$a->strings["annoyed"] = "geërgerd";
$a->strings["anxious"] = "bezorgd";
$a->strings["cranky"] = "humeurig";
$a->strings["disturbed"] = "verontrust";
$a->strings["frustrated"] = "gefrustreerd ";
$a->strings["depressed"] = "gedeprimeerd";
$a->strings["motivated"] = "gemotiveerd";
$a->strings["relaxed"] = "ontspannen";
$a->strings["surprised"] = "verrast";
$a->strings["May"] = "mei";
$a->strings["Unknown Attachment"] = "Onbekende bijlage";
$a->strings["unknown"] = "onbekend";
$a->strings["remove category"] = "categorie verwijderen";
$a->strings["remove from file"] = "uit map verwijderen";
$a->strings["Click to open/close"] = "Klik om te openen of te sluiten";
$a->strings["Link to Source"] = "Originele locatie";
$a->strings["default"] = "standaard";
$a->strings["Page layout"] = "Pagina-lay-out";
$a->strings["You can create your own with the layouts tool"] = "Je kan jouw eigen lay-out ontwerpen onder lay-outs";
$a->strings["Page content type"] = "Opmaaktype pagina";
$a->strings["Select an alternate language"] = "Kies een andere taal";
$a->strings["activity"] = "activiteit";
$a->strings["Design Tools"] = "Ontwerp-hulpmiddelen";
$a->strings["Blocks"] = "Blokken";
$a->strings["Menus"] = "Menu's";
$a->strings["Layouts"] = "Lay-outs";
$a->strings["Pages"] = "Pagina's";
$a->strings["Permission denied"] = "Toegang geweigerd";
$a->strings["(Unknown)"] = "(Onbekend)";
$a->strings["Visible to anybody on the internet."] = "Voor iedereen op het internet zichtbaar.";
$a->strings["Visible to you only."] = "Alleen voor jou zichtbaar.";
$a->strings["Visible to anybody in this network."] = "Voor iedereen in dit netwerk zichtbaar.";
$a->strings["Visible to anybody authenticated."] = "Voor iedereen die geauthenticeerd is zichtbaar.";
$a->strings["Visible to anybody on %s."] = "Voor iedereen op %s zichtbaar.";
$a->strings["Visible to all connections."] = "Voor alle connecties zichtbaar.";
$a->strings["Visible to approved connections."] = "Voor alle geaccepteerde connecties zichtbaar.";
$a->strings["Visible to specific connections."] = "Voor specifieke connecties zichtbaar.";
$a->strings["Item not found."] = "Item niet gevonden.";
$a->strings["Privacy group not found."] = "Privacygroep niet gevonden";
$a->strings["Privacy group is empty."] = "Privacygroep is leeg";
$a->strings["Privacy group: %s"] = "Privacygroep: %s";
$a->strings["Connection: %s"] = "Connectie: %s";
$a->strings["Connection not found."] = "Connectie niet gevonden.";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla:Notificatie] Nieuw privébericht ontvangen op %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s zond jou een nieuw privébericht om %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s zond jou %2\$s.";
$a->strings["a private message"] = "een privébericht";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Bezoek %s om je privéberichten te bekijken en/of er op te reageren.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]een %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]een %5\$s van %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]jouw %4\$s[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla:Notificatie] Reactie op conversatie #%1\$d door %2\$s";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s gaf een reactie op een bericht/conversatie die jij volgt.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Bezoek %s om de conversatie te bekijken en/of er op te reageren.";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla:Notificatie] %s heeft een bericht op jouw kanaal geplaatst";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s heeft om %3\$s een bericht op jouw kanaal geplaatst";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s heeft een bericht op [zrl=%3\$s]jouw kanaal[/zrl] geplaatst";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla:Notificatie] %s heeft je genoemd";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s noemde jou op %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]noemde jou[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla:Notificatie] %1\$s heeft je aangestoten";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s heeft je aangestoten op %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]heeft je aangestoten[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla:Notificatie] %s heeft jouw bericht getagd";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s heeft jouw bericht om %3\$s getagd";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s heeft [zrl=%3\$s]jouw bericht[/zrl] getagd";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla:Notificatie] Connectieverzoek ontvangen";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, je hebt een nieuw connectieverzoek ontvangen van '%2\$s' op %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, je hebt een [zrl=%2\$s]nieuw connectieverzoek[/zrl] ontvangen van %3\$s.";
$a->strings["You may visit their profile at %s"] = "Je kan het profiel bekijken op %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Bezoek %s om het connectieverzoek te accepteren of af te wijzen.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla:Notificatie] Kanaalvoorstel ontvangen";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, je hebt een kanaalvoorstel ontvangen van '%2\$s' om %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, je hebt [zrl=%2\$s]een kanaalvoorstel[/zrl] ontvangen voor %3\$s van %4\$s.";
$a->strings["Name:"] = "Naam:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Bezoek %s om het voorstel te accepteren of af te wijzen.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla:Notificatie]";
$a->strings["view full size"] = "volledige grootte tonen";
$a->strings["\$Projectname Notification"] = "\$Projectname-notificatie";
$a->strings["\$projectname"] = "\$projectname";
$a->strings["Thank You,"] = "Bedankt,";
$a->strings["%s Administrator"] = "Beheerder %s";
$a->strings["No Subject"] = "Geen onderwerp";
$a->strings["General Features"] = "Algemene functies";
$a->strings["Content Expiration"] = "Inhoud laten verlopen";
$a->strings["Remove posts/comments and/or private messages at a future time"] = "Berichten, reacties en/of privéberichten na een bepaalde tijd verwijderen";
@ -802,95 +707,28 @@ $a->strings["Star Posts"] = "Geef berichten een ster";
$a->strings["Ability to mark special posts with a star indicator"] = "Mogelijkheid om speciale berichten met een ster te markeren";
$a->strings["Tag Cloud"] = "Tagwolk";
$a->strings["Provide a personal tag cloud on your channel page"] = "Zorgt voor een persoonlijke wolk met tags op jouw kanaalpagina";
$a->strings["Unable to obtain identity information from database"] = "Niet in staat om identiteitsinformatie uit de database te verkrijgen";
$a->strings["Empty name"] = "Ontbrekende naam";
$a->strings["Name too long"] = "Naam te lang";
$a->strings["No account identifier"] = "Geen account-identificator";
$a->strings["Nickname is required."] = "Bijnaam is verplicht";
$a->strings["Reserved nickname. Please choose another."] = "Deze naam is gereserveerd. Kies een andere.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "Deze naam heeft niet ondersteunde karakters of is al op deze hub in gebruik.";
$a->strings["Unable to retrieve created identity"] = "Niet in staat om aangemaakte identiteit te vinden";
$a->strings["Default Profile"] = "Standaardprofiel";
$a->strings["Requested channel is not available."] = "Opgevraagd kanaal is niet beschikbaar.";
$a->strings["Requested profile is not available."] = "Opgevraagd profiel is niet beschikbaar";
$a->strings["Change profile photo"] = "Profielfoto veranderen";
$a->strings["Profiles"] = "Profielen";
$a->strings["Manage/edit profiles"] = "Profielen beheren/bewerken";
$a->strings["Create New Profile"] = "Nieuw profiel aanmaken";
$a->strings["Profile Image"] = "Profielfoto";
$a->strings["visible to everybody"] = "Voor iedereen zichtbaar";
$a->strings["Edit visibility"] = "Zichtbaarheid bewerken";
$a->strings["Gender:"] = "Geslacht:";
$a->strings["Status:"] = "Status:";
$a->strings["Homepage:"] = "Homepagina:";
$a->strings["Online Now"] = "Nu online";
$a->strings["g A l F d"] = "G:i, l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[vandaag]";
$a->strings["Birthday Reminders"] = "Verjaardagsherinneringen";
$a->strings["Birthdays this week:"] = "Verjaardagen deze week:";
$a->strings["[No description]"] = "[Geen omschrijving]";
$a->strings["Event Reminders"] = "Herinneringen";
$a->strings["Events this week:"] = "Gebeurtenissen deze week:";
$a->strings["Full Name:"] = "Volledige naam:";
$a->strings["Like this channel"] = "Vind dit kanaal leuk";
$a->strings["j F, Y"] = "F j Y";
$a->strings["j F"] = "F j";
$a->strings["Birthday:"] = "Geboortedatum:";
$a->strings["Age:"] = "Leeftijd:";
$a->strings["for %1\$d %2\$s"] = "voor %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Seksuele voorkeur:";
$a->strings["Hometown:"] = "Oorspronkelijk uit:";
$a->strings["Tags:"] = "Tags:";
$a->strings["Political Views:"] = "Politieke overtuigingen:";
$a->strings["Religion:"] = "Religie:";
$a->strings["About:"] = "Over:";
$a->strings["Hobbies/Interests:"] = "Hobby's/interesses:";
$a->strings["Likes:"] = "Houdt van:";
$a->strings["Dislikes:"] = "Houdt niet van:";
$a->strings["Contact information and Social Networks:"] = "Contactinformatie en sociale netwerken:";
$a->strings["My other channels:"] = "Mijn andere kanalen";
$a->strings["Musical interests:"] = "Muzikale interesses:";
$a->strings["Books, literature:"] = "Boeken, literatuur:";
$a->strings["Television:"] = "Televisie:";
$a->strings["Film/dance/culture/entertainment:"] = "Films/dansen/cultuur/vermaak:";
$a->strings["Love/Romance:"] = "Liefde/romantiek:";
$a->strings["Work/employment:"] = "Werk/beroep:";
$a->strings["School/education:"] = "School/opleiding:";
$a->strings["Like this thing"] = "Vind dit ding leuk";
$a->strings["cover photo"] = "omslagfoto";
$a->strings["Embedded content"] = "Ingesloten (embedded) inhoud";
$a->strings["Embedding disabled"] = "Insluiten (embedding) uitgeschakeld";
$a->strings["Can view my normal stream and posts"] = "Kan mijn normale kanaalstream en berichten bekijken";
$a->strings["Can view my default channel profile"] = "Kan mijn standaard kanaalprofiel bekijken";
$a->strings["Can view my connections"] = "Kan een lijst met mijn connecties bekijken";
$a->strings["Can view my file storage and photos"] = "Kan mijn foto's en andere bestanden bekijken";
$a->strings["Can view my webpages"] = "Kan mijn pagina's bekijken";
$a->strings["Can send me their channel stream and posts"] = "Kan mij de inhoud van hun kanaal en berichten sturen";
$a->strings["Can post on my channel page (\"wall\")"] = "Kan een bericht in mijn kanaal plaatsen";
$a->strings["Can comment on or like my posts"] = "Kan op mijn berichten reageren of deze (niet) leuk vinden";
$a->strings["Can send me private mail messages"] = "Kan mij privéberichten sturen";
$a->strings["Can like/dislike stuff"] = "Kan dingen leuk of niet leuk vinden";
$a->strings["Profiles and things other than posts/comments"] = "Profielen en dingen, buiten berichten en reacties";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Kan naar al mijn kanaalconnecties berichten doorsturen met behulp van @vermeldingen+";
$a->strings["Advanced - useful for creating group forum channels"] = "Geavanceerd - nuttig voor groepforums";
$a->strings["Can chat with me (when available)"] = "Kan met mij chatten (wanneer beschikbaar)";
$a->strings["Can write to my file storage and photos"] = "Kan foto's en andere bestanden aan mijn bestandsopslag toevoegen";
$a->strings["Can edit my webpages"] = "Kan mijn pagina's bewerken";
$a->strings["Can source my public posts in derived channels"] = "Kan mijn openbare berichten als bron voor andere kanalen gebruiken";
$a->strings["Somewhat advanced - very useful in open communities"] = "Enigszins geavanceerd (erg nuttig voor kanalen van forums/groepen)";
$a->strings["Can administer my channel resources"] = "Kan mijn kanaal beheren";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Zeer geavanceerd. Laat dit met rust, behalve als je weet wat je doet.";
$a->strings["Social Networking"] = "Sociaal netwerk";
$a->strings["Mostly Public"] = "Vrijwel alles openbaar";
$a->strings["Restricted"] = "Beperkt zichtbaar";
$a->strings["Private"] = "Verborgen kanaal";
$a->strings["Community Forum"] = "Groepsforum";
$a->strings["Feed Republish"] = "Feed herpubliceren";
$a->strings["Special Purpose"] = "Speciaal doel";
$a->strings["Celebrity/Soapbox"] = "Beroemdheid/alleen volgen";
$a->strings["Group Repository"] = "Groepsopslag";
$a->strings["Custom/Expert Mode"] = "Expertmodus/handmatig aanpassen";
$a->strings["Permission denied"] = "Toegang geweigerd";
$a->strings["(Unknown)"] = "(Onbekend)";
$a->strings["Visible to anybody on the internet."] = "Voor iedereen op het internet zichtbaar.";
$a->strings["Visible to you only."] = "Alleen voor jou zichtbaar.";
$a->strings["Visible to anybody in this network."] = "Voor iedereen in dit netwerk zichtbaar.";
$a->strings["Visible to anybody authenticated."] = "Voor iedereen die geauthenticeerd is zichtbaar.";
$a->strings["Visible to anybody on %s."] = "Voor iedereen op %s zichtbaar.";
$a->strings["Visible to all connections."] = "Voor alle connecties zichtbaar.";
$a->strings["Visible to approved connections."] = "Voor alle geaccepteerde connecties zichtbaar.";
$a->strings["Visible to specific connections."] = "Voor specifieke connecties zichtbaar.";
$a->strings["Item not found."] = "Item niet gevonden.";
$a->strings["Privacy group not found."] = "Privacygroep niet gevonden";
$a->strings["Privacy group is empty."] = "Privacygroep is leeg";
$a->strings["Privacy group: %s"] = "Privacygroep: %s";
$a->strings["Connection: %s"] = "Connectie: %s";
$a->strings["Connection not found."] = "Connectie niet gevonden.";
$a->strings["female"] = "vrouw";
$a->strings["%1\$s updated her %2\$s"] = "%1\$s heeft haar %2\$s bijgewerkt";
$a->strings["male"] = "man";
$a->strings["%1\$s updated his %2\$s"] = "%1\$s heeft zijn %2\$s bijgewerkt";
$a->strings["%1\$s updated their %2\$s"] = "%1\$s hebben hun %2\$s bijgewerkt";
$a->strings["profile photo"] = "profielfoto";
$a->strings["System"] = "Systeem";
$a->strings["Create Personal App"] = "Persoonlijke app maken";
$a->strings["Edit Personal App"] = "Persoonlijke app bewerken";
@ -902,6 +740,7 @@ $a->strings["Add New Connection"] = "Nieuwe connectie toevoegen";
$a->strings["Enter channel address"] = "Vul kanaaladres in";
$a->strings["Examples: bob@example.com, https://example.com/barbara"] = "Voorbeelden: bob@example.com, http://example.com/barbara";
$a->strings["Notes"] = "Aantekeningen";
$a->strings["Save"] = "Opslaan";
$a->strings["Remove term"] = "Verwijder zoekterm";
$a->strings["Archives"] = "Archieven";
$a->strings["Me"] = "Ik";
@ -963,6 +802,159 @@ $a->strings["Plugin Features"] = "Plugin-opties";
$a->strings["User registrations waiting for confirmation"] = "Accounts die op goedkeuring wachten";
$a->strings["View Photo"] = "Foto weergeven";
$a->strings["Edit Album"] = "Album bewerken";
$a->strings["prev"] = "vorige";
$a->strings["first"] = "eerste";
$a->strings["last"] = "laatste";
$a->strings["next"] = "volgende";
$a->strings["older"] = "ouder";
$a->strings["newer"] = "nieuwer";
$a->strings["No connections"] = "Geen connecties";
$a->strings["View all %s connections"] = "Toon alle %s connecties";
$a->strings["poke"] = "aanstoten";
$a->strings["ping"] = "ping";
$a->strings["pinged"] = "gepingd";
$a->strings["prod"] = "por";
$a->strings["prodded"] = "gepord";
$a->strings["slap"] = "slaan";
$a->strings["slapped"] = "sloeg";
$a->strings["finger"] = "finger";
$a->strings["fingered"] = "gefingerd";
$a->strings["rebuff"] = "afpoeieren";
$a->strings["rebuffed"] = "afgepoeierd";
$a->strings["happy"] = "gelukkig";
$a->strings["sad"] = "bedroefd";
$a->strings["mellow"] = "mellow";
$a->strings["tired"] = "moe";
$a->strings["perky"] = "parmantig";
$a->strings["angry"] = "boos";
$a->strings["stupefied"] = "verbijsterd";
$a->strings["puzzled"] = "verward";
$a->strings["interested"] = "geïnteresseerd";
$a->strings["bitter"] = "verbitterd";
$a->strings["cheerful"] = "vrolijk";
$a->strings["alive"] = "levendig";
$a->strings["annoyed"] = "geërgerd";
$a->strings["anxious"] = "bezorgd";
$a->strings["cranky"] = "humeurig";
$a->strings["disturbed"] = "verontrust";
$a->strings["frustrated"] = "gefrustreerd ";
$a->strings["depressed"] = "gedeprimeerd";
$a->strings["motivated"] = "gemotiveerd";
$a->strings["relaxed"] = "ontspannen";
$a->strings["surprised"] = "verrast";
$a->strings["May"] = "mei";
$a->strings["Unknown Attachment"] = "Onbekende bijlage";
$a->strings["unknown"] = "onbekend";
$a->strings["remove category"] = "categorie verwijderen";
$a->strings["remove from file"] = "uit map verwijderen";
$a->strings["Click to open/close"] = "Klik om te openen of te sluiten";
$a->strings["Link to Source"] = "Originele locatie";
$a->strings["default"] = "standaard";
$a->strings["Page layout"] = "Pagina-lay-out";
$a->strings["You can create your own with the layouts tool"] = "Je kan jouw eigen lay-out ontwerpen onder lay-outs";
$a->strings["Page content type"] = "Opmaaktype pagina";
$a->strings["Select an alternate language"] = "Kies een andere taal";
$a->strings["activity"] = "activiteit";
$a->strings["Design Tools"] = "Ontwerp-hulpmiddelen";
$a->strings["Blocks"] = "Blokken";
$a->strings["Menus"] = "Menu's";
$a->strings["Layouts"] = "Lay-outs";
$a->strings["Pages"] = "Pagina's";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Hubzilla:Notify] New mail received at %s"] = "[Hubzilla:Notificatie] Nieuw privébericht ontvangen op %s";
$a->strings["%1\$s, %2\$s sent you a new private message at %3\$s."] = "%1\$s, %2\$s zond jou een nieuw privébericht om %3\$s.";
$a->strings["%1\$s sent you %2\$s."] = "%1\$s zond jou %2\$s.";
$a->strings["a private message"] = "een privébericht";
$a->strings["Please visit %s to view and/or reply to your private messages."] = "Bezoek %s om je privéberichten te bekijken en/of er op te reageren.";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]a %4\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]een %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]%4\$s's %5\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]een %5\$s van %4\$s[/zrl]";
$a->strings["%1\$s, %2\$s commented on [zrl=%3\$s]your %4\$s[/zrl]"] = "%1\$s, %2\$s gaf een reactie op [zrl=%3\$s]jouw %4\$s[/zrl]";
$a->strings["[Hubzilla:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Hubzilla:Notificatie] Reactie op conversatie #%1\$d door %2\$s";
$a->strings["%1\$s, %2\$s commented on an item/conversation you have been following."] = "%1\$s, %2\$s gaf een reactie op een bericht/conversatie die jij volgt.";
$a->strings["Please visit %s to view and/or reply to the conversation."] = "Bezoek %s om de conversatie te bekijken en/of er op te reageren.";
$a->strings["[Hubzilla:Notify] %s posted to your profile wall"] = "[Hubzilla:Notificatie] %s heeft een bericht op jouw kanaal geplaatst";
$a->strings["%1\$s, %2\$s posted to your profile wall at %3\$s"] = "%1\$s, %2\$s heeft om %3\$s een bericht op jouw kanaal geplaatst";
$a->strings["%1\$s, %2\$s posted to [zrl=%3\$s]your wall[/zrl]"] = "%1\$s, %2\$s heeft een bericht op [zrl=%3\$s]jouw kanaal[/zrl] geplaatst";
$a->strings["[Hubzilla:Notify] %s tagged you"] = "[Hubzilla:Notificatie] %s heeft je genoemd";
$a->strings["%1\$s, %2\$s tagged you at %3\$s"] = "%1\$s, %2\$s noemde jou op %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%3\$s]tagged you[/zrl]."] = "%1\$s, %2\$s [zrl=%3\$s]noemde jou[/zrl].";
$a->strings["[Hubzilla:Notify] %1\$s poked you"] = "[Hubzilla:Notificatie] %1\$s heeft je aangestoten";
$a->strings["%1\$s, %2\$s poked you at %3\$s"] = "%1\$s, %2\$s heeft je aangestoten op %3\$s";
$a->strings["%1\$s, %2\$s [zrl=%2\$s]poked you[/zrl]."] = "%1\$s, %2\$s [zrl=%2\$s]heeft je aangestoten[/zrl].";
$a->strings["[Hubzilla:Notify] %s tagged your post"] = "[Hubzilla:Notificatie] %s heeft jouw bericht getagd";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s heeft jouw bericht om %3\$s getagd";
$a->strings["%1\$s, %2\$s tagged [zrl=%3\$s]your post[/zrl]"] = "%1\$s, %2\$s heeft [zrl=%3\$s]jouw bericht[/zrl] getagd";
$a->strings["[Hubzilla:Notify] Introduction received"] = "[Hubzilla:Notificatie] Connectieverzoek ontvangen";
$a->strings["%1\$s, you've received an new connection request from '%2\$s' at %3\$s"] = "%1\$s, je hebt een nieuw connectieverzoek ontvangen van '%2\$s' op %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a new connection request[/zrl] from %3\$s."] = "%1\$s, je hebt een [zrl=%2\$s]nieuw connectieverzoek[/zrl] ontvangen van %3\$s.";
$a->strings["You may visit their profile at %s"] = "Je kan het profiel bekijken op %s";
$a->strings["Please visit %s to approve or reject the connection request."] = "Bezoek %s om het connectieverzoek te accepteren of af te wijzen.";
$a->strings["[Hubzilla:Notify] Friend suggestion received"] = "[Hubzilla:Notificatie] Kanaalvoorstel ontvangen";
$a->strings["%1\$s, you've received a friend suggestion from '%2\$s' at %3\$s"] = "%1\$s, je hebt een kanaalvoorstel ontvangen van '%2\$s' om %3\$s";
$a->strings["%1\$s, you've received [zrl=%2\$s]a friend suggestion[/zrl] for %3\$s from %4\$s."] = "%1\$s, je hebt [zrl=%2\$s]een kanaalvoorstel[/zrl] ontvangen voor %3\$s van %4\$s.";
$a->strings["Name:"] = "Naam:";
$a->strings["Photo:"] = "Foto:";
$a->strings["Please visit %s to approve or reject the suggestion."] = "Bezoek %s om het voorstel te accepteren of af te wijzen.";
$a->strings["[Hubzilla:Notify]"] = "[Hubzilla:Notificatie]";
$a->strings["Unable to obtain identity information from database"] = "Niet in staat om identiteitsinformatie uit de database te verkrijgen";
$a->strings["Empty name"] = "Ontbrekende naam";
$a->strings["Name too long"] = "Naam te lang";
$a->strings["No account identifier"] = "Geen account-identificator";
$a->strings["Nickname is required."] = "Bijnaam is verplicht";
$a->strings["Reserved nickname. Please choose another."] = "Deze naam is gereserveerd. Kies een andere.";
$a->strings["Nickname has unsupported characters or is already being used on this site."] = "Deze naam heeft niet ondersteunde karakters of is al op deze hub in gebruik.";
$a->strings["Unable to retrieve created identity"] = "Niet in staat om aangemaakte identiteit te vinden";
$a->strings["Default Profile"] = "Standaardprofiel";
$a->strings["Requested channel is not available."] = "Opgevraagd kanaal is niet beschikbaar.";
$a->strings["Requested profile is not available."] = "Opgevraagd profiel is niet beschikbaar";
$a->strings["Change profile photo"] = "Profielfoto veranderen";
$a->strings["Profiles"] = "Profielen";
$a->strings["Manage/edit profiles"] = "Profielen beheren/bewerken";
$a->strings["Create New Profile"] = "Nieuw profiel aanmaken";
$a->strings["Profile Image"] = "Profielfoto";
$a->strings["visible to everybody"] = "Voor iedereen zichtbaar";
$a->strings["Edit visibility"] = "Zichtbaarheid bewerken";
$a->strings["Gender:"] = "Geslacht:";
$a->strings["Status:"] = "Status:";
$a->strings["Homepage:"] = "Homepagina:";
$a->strings["Online Now"] = "Nu online";
$a->strings["g A l F d"] = "G:i, l d F";
$a->strings["F d"] = "d F";
$a->strings["[today]"] = "[vandaag]";
$a->strings["Birthday Reminders"] = "Verjaardagsherinneringen";
$a->strings["Birthdays this week:"] = "Verjaardagen deze week:";
$a->strings["[No description]"] = "[Geen omschrijving]";
$a->strings["Event Reminders"] = "Herinneringen";
$a->strings["Events this week:"] = "Gebeurtenissen deze week:";
$a->strings["Full Name:"] = "Volledige naam:";
$a->strings["Like this channel"] = "Vind dit kanaal leuk";
$a->strings["j F, Y"] = "F j Y";
$a->strings["j F"] = "F j";
$a->strings["Birthday:"] = "Geboortedatum:";
$a->strings["Age:"] = "Leeftijd:";
$a->strings["for %1\$d %2\$s"] = "voor %1\$d %2\$s";
$a->strings["Sexual Preference:"] = "Seksuele voorkeur:";
$a->strings["Hometown:"] = "Oorspronkelijk uit:";
$a->strings["Tags:"] = "Tags:";
$a->strings["Political Views:"] = "Politieke overtuigingen:";
$a->strings["Religion:"] = "Religie:";
$a->strings["About:"] = "Over:";
$a->strings["Hobbies/Interests:"] = "Hobby's/interesses:";
$a->strings["Likes:"] = "Houdt van:";
$a->strings["Dislikes:"] = "Houdt niet van:";
$a->strings["Contact information and Social Networks:"] = "Contactinformatie en sociale netwerken:";
$a->strings["My other channels:"] = "Mijn andere kanalen";
$a->strings["Musical interests:"] = "Muzikale interesses:";
$a->strings["Books, literature:"] = "Boeken, literatuur:";
$a->strings["Television:"] = "Televisie:";
$a->strings["Film/dance/culture/entertainment:"] = "Films/dansen/cultuur/vermaak:";
$a->strings["Love/Romance:"] = "Liefde/romantiek:";
$a->strings["Work/employment:"] = "Werk/beroep:";
$a->strings["School/education:"] = "School/opleiding:";
$a->strings["Like this thing"] = "Vind dit ding leuk";
$a->strings["cover photo"] = "omslagfoto";
$a->strings["Embedded content"] = "Ingesloten (embedded) inhoud";
$a->strings["Embedding disabled"] = "Insluiten (embedding) uitgeschakeld";
$a->strings["Save to Folder"] = "In map opslaan";
$a->strings["I will attend"] = "Aanwezig";
$a->strings["I will not attend"] = "Niet aanwezig";
@ -998,8 +990,41 @@ $a->strings["This is you"] = "Dit ben jij";
$a->strings["Image"] = "Afbeelding";
$a->strings["Insert Link"] = "Link invoegen";
$a->strings["Video"] = "Video";
$a->strings["Not Found"] = "Niet gevonden";
$a->strings["Page not found."] = "Pagina niet gevonden.";
$a->strings["Can view my normal stream and posts"] = "Kan mijn normale kanaalstream en berichten bekijken";
$a->strings["Can view my default channel profile"] = "Kan mijn standaard kanaalprofiel bekijken";
$a->strings["Can view my connections"] = "Kan een lijst met mijn connecties bekijken";
$a->strings["Can view my file storage and photos"] = "Kan mijn foto's en andere bestanden bekijken";
$a->strings["Can view my webpages"] = "Kan mijn pagina's bekijken";
$a->strings["Can send me their channel stream and posts"] = "Kan mij de inhoud van hun kanaal en berichten sturen";
$a->strings["Can post on my channel page (\"wall\")"] = "Kan een bericht in mijn kanaal plaatsen";
$a->strings["Can comment on or like my posts"] = "Kan op mijn berichten reageren of deze (niet) leuk vinden";
$a->strings["Can send me private mail messages"] = "Kan mij privéberichten sturen";
$a->strings["Can like/dislike stuff"] = "Kan dingen leuk of niet leuk vinden";
$a->strings["Profiles and things other than posts/comments"] = "Profielen en dingen, buiten berichten en reacties";
$a->strings["Can forward to all my channel contacts via post @mentions"] = "Kan naar al mijn kanaalconnecties berichten doorsturen met behulp van @vermeldingen+";
$a->strings["Advanced - useful for creating group forum channels"] = "Geavanceerd - nuttig voor groepforums";
$a->strings["Can chat with me (when available)"] = "Kan met mij chatten (wanneer beschikbaar)";
$a->strings["Can write to my file storage and photos"] = "Kan foto's en andere bestanden aan mijn bestandsopslag toevoegen";
$a->strings["Can edit my webpages"] = "Kan mijn pagina's bewerken";
$a->strings["Can source my public posts in derived channels"] = "Kan mijn openbare berichten als bron voor andere kanalen gebruiken";
$a->strings["Somewhat advanced - very useful in open communities"] = "Enigszins geavanceerd (erg nuttig voor kanalen van forums/groepen)";
$a->strings["Can administer my channel resources"] = "Kan mijn kanaal beheren";
$a->strings["Extremely advanced. Leave this alone unless you know what you are doing"] = "Zeer geavanceerd. Laat dit met rust, behalve als je weet wat je doet.";
$a->strings["Social Networking"] = "Sociaal netwerk";
$a->strings["Social - Mostly Public"] = "Sociaal - Vrijwel alles openbaar";
$a->strings["Social - Restricted"] = "Sociaal - Beperkt zichtbaar";
$a->strings["Social - Private"] = "Sociaal - Verborgen kanaal";
$a->strings["Community Forum"] = "Groepsforum";
$a->strings["Forum - Mostly Public"] = "Forum - Vrijwel alles openbaar";
$a->strings["Forum - Restricted"] = "Forum - Beperkt zichtbaar";
$a->strings["Forum - Private"] = "Forum - Verborgen kanaal";
$a->strings["Feed Republish"] = "Feed herpubliceren";
$a->strings["Feed - Mostly Public"] = "Feed - Vrijwel alles openbaar";
$a->strings["Feed - Restricted"] = "Feed - Beperkt zichtbaar";
$a->strings["Special Purpose"] = "Speciaal doel";
$a->strings["Special - Celebrity/Soapbox"] = "Speciaal - Beroemdheid/alleen volgen";
$a->strings["Special - Group Repository"] = "Speciaal - Groepsopslag";
$a->strings["Custom/Expert Mode"] = "Expertmodus/handmatig aanpassen";
$a->strings["Some blurb about what to do when you're new here"] = "Welkom op \$Projectname. Klik op de tab ontdekken of klik rechtsboven op de <a href=\"directory\">kanalengids</a>, om kanalen te vinden. Rechtsboven vind je ook <a href=\"directory\">apps</a>, waar je vrijwel alle functies van \$Projectname kunt vinden. Voor <a href=\"directory\">hulp</a> met \$Projectname klik je op het vraagteken.";
$a->strings["network"] = "netwerk";
$a->strings["RSS"] = "RSS";
@ -1119,6 +1144,7 @@ $a->strings["Set Profile"] = "Profiel instellen";
$a->strings["Set Affinity & Profile"] = "Verwantschapsfilter en profiel instellen";
$a->strings["none"] = "geen";
$a->strings["Apply these permissions automatically"] = "Deze permissies automatisch toepassen";
$a->strings["Connection requests will be approved without your interaction"] = "Connectieverzoeken zullen automatisch worden geaccepteerd";
$a->strings["This connection's primary address is"] = "Het primaire kanaaladres van deze connectie is";
$a->strings["Available locations:"] = "Beschikbare locaties:";
$a->strings["The permissions indicated on this page will be applied to all new connections."] = "Permissies die op deze pagina staan vermeld worden op alle nieuwe connecties toegepast.";
@ -1464,16 +1490,16 @@ $a->strings["Search Results For:"] = "Zoekresultaten voor:";
$a->strings["Privacy group is empty"] = "Privacygroep is leeg";
$a->strings["Privacy group: "] = "Privacygroep: ";
$a->strings["Invalid connection."] = "Ongeldige connectie.";
$a->strings["Add a Channel"] = "Kanaal toevoegen";
$a->strings["A channel is your own collection of related web pages. A channel can be used to hold social network profiles, blogs, conversation groups and forums, celebrity pages, and much more. You may create as many channels as your service provider allows."] = "Naast een account moet je tenminste één kanaal aanmaken. Een kanaal is een persoonlijke verzameling (gerelateerde) berichten en media, zoals je misschien gewend bent van sociale netwerken. Een kanaal kan gebruikt worden voor social media, een blog, forum, en voor veel meer. Je kan net zoveel kanalen aanmaken als dat de eigenaar/beheerder van jouw hub toestaat.";
$a->strings["Channel Name"] = "Kanaalnaam";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\" "] = "Jouw naam of een andere relevante naam. Voorbeelden: \"Jan Pietersen\", \"Willems weblog\", \"Familieforum\"";
$a->strings["Name or caption"] = "Naam";
$a->strings["Examples: \"Bob Jameson\", \"Lisa and her Horses\", \"Soccer\", \"Aviation Group\""] = "Voorbeelden: \"Jan Pietersen\", \"Willems weblog\", \"Computerforum\"";
$a->strings["Choose a short nickname"] = "Korte bijnaam";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Deze bijnaam (geen spaties) wordt gebruikt om een makkelijk te onthouden kanaaladres (zoals een e-mailadres) en het internetadres (URL) van jouw kanaal aan te maken, die je dan met anderen kunt delen. Voorbeeld: <b>janp</b> wordt <em>janp@jouw_hub.nl</em> en <em>https://jouw_hub.nl/channel/janp</em>.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "Of <a href=\"import\">importeer een bestaand kanaal</a> vanaf een andere locatie.";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Kies een kanaaltype en het door jouw gewenste privacy-niveau, zodat automatisch de beste permissies kunnen worden ingesteld. Dit kan later, indien gewenst, worden veranderd.";
$a->strings["Channel Type"] = "Kanaaltype";
$a->strings["Your nickname will be used to create an easy to remember channel address e.g. nickname%s"] = "Deze bijnaam wordt gebruikt om een makkelijk te onthouden kanaaladres van jouw kanaal aan te maken, die je dan met anderen kunt delen. Bijvoorbeeld: bijnaam%s";
$a->strings["Channel role and privacy"] = "Kanaaltype en privacy";
$a->strings["Select a channel role with your privacy requirements."] = "Kies een kanaaltype met het door jou gewenste privacyniveau.";
$a->strings["Read more about roles"] = "Lees meer over kanaaltypes";
$a->strings["Create a Channel"] = "Kanaal aanmaken";
$a->strings["A channel is your identity on this network. It can represent a person, a blog, or a forum to name a few. Channels can make connections with other channels to share information with highly detailed permissions."] = "Een kanaal is jouw identiteit in dit netwerk. Het kan bijvoorbeeld een persoon, een blog of een forum vertegenwoordigen. Door met elkaar te verbinden kunnen kanalen, eventueel met behulp van uitgebreide permissies, informatie uitwisselen.";
$a->strings["Or <a href=\"import\">import an existing channel</a> from another location"] = "Of <a href=\"import\">importeer een bestaand kanaal</a> vanaf een andere locatie.";
$a->strings["Invalid request identifier."] = "Ongeldige verzoek identificator (request identifier)";
$a->strings["Discard"] = "Annuleren";
$a->strings["No more system notifications."] = "Geen systeemnotificaties meer.";
@ -1741,12 +1767,6 @@ $a->strings["Image resize failed."] = "Afbeelding kon niet van grootte veranderd
$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Vernieuw de pagina met shift+R of shift+F5, of leeg je browserbuffer, wanneer de nieuwe foto niet meteen wordt weergegeven.";
$a->strings["Image upload failed."] = "Uploaden afbeelding mislukt";
$a->strings["Unable to process image."] = "Niet in staat om afbeelding te verwerken.";
$a->strings["female"] = "vrouw";
$a->strings["%1\$s updated her %2\$s"] = "%1\$s heeft haar %2\$s bijgewerkt";
$a->strings["male"] = "man";
$a->strings["%1\$s updated his %2\$s"] = "%1\$s heeft zijn %2\$s bijgewerkt";
$a->strings["%1\$s updated their %2\$s"] = "%1\$s hebben hun %2\$s bijgewerkt";
$a->strings["profile photo"] = "profielfoto";
$a->strings["Photo not available."] = "Foto niet beschikbaar.";
$a->strings["Upload File:"] = "Bestand uploaden:";
$a->strings["Select a profile:"] = "Kies een profiel:";
@ -1830,9 +1850,9 @@ $a->strings["Site URL"] = "URL hub";
$a->strings["Access Type"] = "Toegangstype";
$a->strings["Registration Policy"] = "Registratiebeleid";
$a->strings["Project"] = "Project";
$a->strings["View hub ratings"] = "Bekijk hubbeoordelingen";
$a->strings["View hub ratings"] = "Beoordelingen";
$a->strings["Rate"] = "Beoordeel";
$a->strings["View ratings"] = "Bekijk beoordelingen";
$a->strings["View ratings"] = "Bekijk";
$a->strings["Website:"] = "Website:";
$a->strings["Remote Channel [%s] (not yet known on this site)"] = "Kanaal op afstand [%s] (nog niet op deze hub bekend)";
$a->strings["Rating (this information is public)"] = "Beoordeling (deze informatie is openbaar)";
@ -1861,6 +1881,9 @@ $a->strings["I am over 13 years of age and accept the %s for this website"] = "I
$a->strings["Membership on this site is by invitation only."] = "Registreren op deze \$Projectname-hub kan alleen op uitnodiging.";
$a->strings["Please enter your invitation code"] = "Vul jouw uitnodigingscode in";
$a->strings["Enter your name"] = "Vul jouw naam in";
$a->strings["Your nickname will be used to create an easily remembered channel address (like an email address) which you can share with others."] = "Deze bijnaam (geen spaties) wordt gebruikt om een makkelijk te onthouden kanaaladres (zoals een e-mailadres) en het internetadres (URL) van jouw kanaal aan te maken, die je dan met anderen kunt delen. Voorbeeld: <b>janp</b> wordt <em>janp@jouw_hub.nl</em> en <em>https://jouw_hub.nl/channel/janp</em>.";
$a->strings["Please choose a channel type (such as social networking or community forum) and privacy requirements so we can select the best permissions for you"] = "Kies een kanaaltype en het door jouw gewenste privacy-niveau, zodat automatisch de beste permissies kunnen worden ingesteld. Dit kan later, indien gewenst, worden veranderd.";
$a->strings["Channel Type"] = "Kanaaltype";
$a->strings["Your email address"] = "Jouw e-mailadres";
$a->strings["Choose a password"] = "Geef een wachtwoord op";
$a->strings["Please re-enter your password"] = "Geef het wachtwoord opnieuw op";
@ -1891,13 +1914,14 @@ $a->strings["Search results for: %s"] = "Zoekresultaten voor %s";
$a->strings["No service class restrictions found."] = "Geen abonnementsbeperkingen gevonden.";
$a->strings["Name is required"] = "Naam is vereist";
$a->strings["Key and Secret are required"] = "Key en secret zijn vereist";
$a->strings["Not valid email."] = "Geen geldig e-mailadres.";
$a->strings["Protected email address. Cannot change to that email."] = "Beschermd e-mailadres. Kan dat e-mailadres niet gebruiken.";
$a->strings["System failure storing new email. Please try again."] = "Systeemfout opslaan van nieuwe e-mail. Probeer het nog een keer.";
$a->strings["Password verification failed."] = "Wachtwoordverificatie mislukt";
$a->strings["Passwords do not match. Password unchanged."] = "Wachtwoorden komen niet overeen. Wachtwoord onveranderd.";
$a->strings["Empty passwords are not allowed. Password unchanged."] = "Lege wachtwoorden zijn niet toegestaan. Wachtwoord onveranderd.";
$a->strings["Password changed."] = "Wachtwoord veranderd.";
$a->strings["Password update failed. Please try again."] = "Bijwerken wachtwoord mislukt. Probeer opnieuw.";
$a->strings["Not valid email."] = "Geen geldig e-mailadres.";
$a->strings["Protected email address. Cannot change to that email."] = "Beschermd e-mailadres. Kan dat e-mailadres niet gebruiken.";
$a->strings["System failure storing new email. Please try again."] = "Systeemfout opslaan van nieuwe e-mail. Probeer het nog een keer.";
$a->strings["Settings updated."] = "Instellingen bijgewerkt.";
$a->strings["Add application"] = "Applicatie toevoegen";
$a->strings["Name of application"] = "Naam van applicatie";
@ -1916,8 +1940,9 @@ $a->strings["Remove authorization"] = "Autorisatie verwijderen";
$a->strings["No feature settings configured"] = "Geen plugin-instellingen aanwezig";
$a->strings["Feature/Addon Settings"] = "Plugin-instellingen";
$a->strings["Account Settings"] = "Account-instellingen";
$a->strings["Enter New Password:"] = "Nieuw wachtwoord invoeren:";
$a->strings["Confirm New Password:"] = "Nieuw wachtwoord bevestigen:";
$a->strings["Current Password"] = "Huidig wachtwoord";
$a->strings["Enter New Password"] = "Nieuw wachtwoord invoeren";
$a->strings["Confirm New Password"] = "Nieuw wachtwoord bevestigen";
$a->strings["Leave password fields blank unless changing"] = "Laat de wachtwoordvelden leeg, behalve wanneer je deze wil veranderen";
$a->strings["Email Address:"] = "E-mailadres:";
$a->strings["Remove this account including all its channels"] = "Dit account en al zijn kanalen verwijderen";
@ -1931,6 +1956,8 @@ $a->strings["Custom Theme Settings"] = "Handmatige thema-instellingen";
$a->strings["Content Settings"] = "Inhoudsinstellingen";
$a->strings["Display Theme:"] = "Gebruik thema:";
$a->strings["Mobile Theme:"] = "Mobiel thema:";
$a->strings["Preload images before rendering the page"] = "Afbeeldingen laden voordat de pagina wordt weergegeven";
$a->strings["The subjective page load time will be longer but the page will be ready when displayed"] = "De laadtijd van een pagina lijkt langer, maar de pagina is wel meteen helemaal geladen wanneer deze wordt weergeven";
$a->strings["Enable user zoom on mobile devices"] = "Inzoomen op smartphones en tablets toestaan";
$a->strings["Update browser every xx seconds"] = "Ververs de webbrowser om de zoveel seconde";
$a->strings["Minimum of 10 seconds, no maximum"] = "Minimaal 10 seconde, geen maximum";
@ -2154,6 +2181,7 @@ $a->strings["New Source"] = "Nieuwe bron";
$a->strings["Import all or selected content from the following channel into this channel and distribute it according to your channel settings."] = "Importeer complete of gedeelde inhoud vanuit het volgende kanaal naar dit kanaal, en verdeel het vervolgens volgens jouw kanaalinstellingen.";
$a->strings["Only import content with these words (one per line)"] = "Importeer alleen inhoud met deze woorden (één per regel)";
$a->strings["Leave blank to import all public content"] = "Laat leeg om alle openbare inhoud te importeren";
$a->strings["Channel Name"] = "Kanaalnaam";
$a->strings["Source not found."] = "Bron niet gevonden";
$a->strings["Edit Source"] = "Bron bewerken";
$a->strings["Delete Source"] = "Bron verwijderen";

View File

@ -1 +0,0 @@
[template]full[/template]

View File

@ -1 +0,0 @@
[template]full[/template]

View File

@ -1544,6 +1544,7 @@ nav .dropdown-menu {
.section-content-tools-wrapper .section-content-danger-wrapper,
.section-content-wrapper .section-content-danger-wrapper {
margin-bottom: 10px;
border-bottom: none;
border-radius: $radiuspx;
}

View File

@ -352,3 +352,11 @@ pre {
background-color: inherit;
border: none;
}
.table-striped > tbody > tr:nth-of-type(2n+1), .table-hover > tbody > tr:hover {
background-color: #191919;
}
.table > tbody > tr > td {
border-color: #888;
}

View File

@ -202,6 +202,7 @@ a.rconnect, a.rateme, div.rateme {
text-decoration: underline;
background-color: #000;
color: #50f148;
border-color: #143D12;
}
aside .nav > li > a:hover, aside .nav > li > a:focus {
@ -292,3 +293,15 @@ pre {
background-color: inherit;
border: none;
}
.table-striped > tbody > tr:nth-of-type(2n+1) {
background-color: #000;
}
.table-hover > tbody > tr:hover {
background-color: #143D12;
}
.table > tbody > tr > td {
border-color: #143D12;
}

View File

@ -271,3 +271,11 @@ pre {
background-color: inherit;
border: none;
}
.table-striped > tbody > tr:nth-of-type(2n+1), .table-hover > tbody > tr:hover {
background-color: #030303;
}
.table > tbody > tr > td {
border-color: #FFF;
}

View File

@ -1,5 +1,5 @@
<div class='form-group field password'>
<label for='id_{{$field.0}}'>{{$field.1}}</label>
<input class="form-control" type='password' name='{{$field.0}}' id='id_{{$field.0}}' value="{{$field.2}}"{{if $field.5}} {{$field.5}}{{/if}}>{{if $field.4}} <span class="required">{{$field.4}}</span> {{/if}}
<span class='help-block'>{{$field.3}}</span>
<span id="help_{{$field.0}}" class="help-block">{{$field.3}}</span>
</div>

View File

@ -1,42 +1,34 @@
<div class="generic-content-wrapper-styled">
<h2>{{$title}}</h2>
<div class="generic-content-wrapper">
<div class="section-title-wrapper">
<h2>{{$title}}</h2>
</div>
<div class="section-content-wrapper">
<div class="section-content-info-wrapper">
{{$desc}}
</div>
{{if $channel_usage_message}}
<div class="section-content-warning-wrapper">
{{$channel_usage_message}}
</div>
{{/if}}
<form action="new_channel" method="post" id="newchannel-form">
{{if $default_role}}
<input type="hidden" name="permissions_role" value="{{$default_role}}" />
{{else}}
{{include file="field_select_grouped.tpl" field=$role}}
{{/if}}
<form action="new_channel" method="post" id="newchannel-form" class="stylish-select">
{{include file="field_input.tpl" field=$name}}
<div id="name-spinner"></div>
<div id="newchannel-desc" class="descriptive-paragraph">{{$desc}}</div>
{{include file="field_input.tpl" field=$nickname}}
<div id="nick-spinner"></div>
{{if $default_role}}
<input type="hidden" name="permissions_role" value="{{$default_role}}" />
{{else}}
<div id="newchannel-role-help" class="descriptive-paragraph">{{$help_role}}</div>
{{include file="field_select_grouped.tpl" field=$role}}
<div id="newchannel-role-end" class="newchannel-field-end"></div>
{{/if}}
<button class="btn btn-primary" type="submit" name="submit" id="newchannel-submit-button" value="{{$submit}}">{{$submit}}</button>
<div id="newchannel-submit-end" class="clear"></div>
<label for="newchannel-name" id="label-newchannel-name" class="newchannel-label" >{{$label_name}}</label>
<input type="text" name="name" id="newchannel-name" class="newchannel-input" value="{{$name}}" />
<div id="name-spinner"></div>
<div id="newchannel-name-feedback" class="newchannel-feedback"></div>
<div id="newchannel-name-end" class="newchannel-field-end"></div>
<div id="newchannel-name-help" class="descriptive-paragraph">{{$help_name}}</div>
<label for="newchannel-nickname" id="label-newchannel-nickname" class="newchannel-label" >{{$label_nick}}</label>
<input type="text" name="nickname" id="newchannel-nickname" class="newchannel-input" value="{{$nickname}}" />
<div id="nick-spinner"></div>
<div id="newchannel-nick-desc" class="descriptive-paragraph">{{$nick_hub}}</div>
<div id="newchannel-nickname-feedback" class="newchannel-feedback"></div>
<div id="newchannel-nickname-end" class="newchannel-field-end"></div>
<div id="newchannel-nick-desc" class="descriptive-paragraph">{{$nick_desc}}</div>
<div id="newchannel-import-link" class="descriptive-paragraph" >{{$label_import}}</div>
<div id="newchannel-import-end" class="newchannel-field-end"></div>
<input type="submit" name="submit" id="newchannel-submit-button" value="{{$submit}}" />
<div id="newchannel-submit-end" class="newchannel-field-end"></div>
</form>
<div id="newchannel-import-link" class="descriptive-paragraph" >{{$label_import}}</div>
<div id="newchannel-import-end" class="clear"></div>
</form>
</div>
</div>

View File

@ -1,86 +1,58 @@
<div class="generic-content-wrapper-styled">
<h2>{{$title}}</h2>
<div class="generic-content-wrapper">
<div class="section-title-wrapper">
<h2>{{$title}}</h2>
</div>
<div class="section-content-wrapper">
<form action="register" method="post" id="register-form">
{{if $reg_is}}
<div class="section-content-warning-wrapper">
<div id="register-desc" class="descriptive-paragraph">{{$reg_is}}</div>
<div id="register-sites" class="descriptive-paragraph">{{$other_sites}}</div>
</div>
{{/if}}
<form action="register" method="post" id="register-form">
{{if $registertext}}
<div id="register-text" class="descriptive-paragraph">{{$registertext}}</div>
{{/if}}
{{if $invitations}}
<div class="section-content-info-wrapper">
<div id="register-invite-desc" class="descriptive-paragraph">{{$invite_desc}}</div>
</div>
{{include file="field_input.tpl" field=$invite_code}}
{{/if}}
{{include file="field_input.tpl" field=$email}}
{{if $reg_is}}
<div id="register-desc" class="descriptive-paragraph">{{$reg_is}}</div>
{{/if}}
{{if $registertext}}<div id="register-text" class="descriptive-paragraph">{{$registertext}}</div>
{{/if}}
{{if $other_sites}}<div id="register-sites" class="descriptive-paragraph">{{$other_sites}}</div>
{{/if}}
{{include file="field_password.tpl" field=$pass1}}
{{if $invitations}}
<p id="register-invite-desc">{{$invite_desc}}</p>
{{include file="field_password.tpl" field=$pass2}}
<label for="register-invite" id="label-register-invite" class="register-label">{{$label_invite}}</label>
<input type="text" maxlength="72" size="32" name="invite_code" id="register-invite" class="register-input" value="{{$invite_code}}" />
<div id="register-invite-feedback" class="register-feedback"></div>
<div id="register-invite-end" class="register-field-end"></div>
{{/if}}
{{if $auto_create}}
{{if $default_role}}
<input type="hidden" name="permissions_role" value="{{$default_role}}" />
{{else}}
<div class="section-content-info-wrapper">
{{$help_role}}
</div>
{{include file="field_select_grouped.tpl" field=$role}}
{{/if}}
{{if $auto_create}}
{{include file="field_input.tpl" field=$name}}
<div id="name-spinner"></div>
{{if $default_role}}
<input type="hidden" name="permissions_role" value="{{$default_role}}" />
{{else}}
<div id="newchannel-role-help" class="descriptive-paragraph">{{$help_role}}</div>
{{include file="field_select_grouped.tpl" field=$role}}
<div id="newchannel-role-end" class="newchannel-field-end"></div>
{{/if}}
<label for="newchannel-name" id="label-newchannel-name" class="register-label" >{{$label_name}}</label>
<input type="text" name="name" id="newchannel-name" class="register-input" value="{{$name}}" />
<div id="name-spinner"></div>
<div id="newchannel-name-feedback" class="register-feedback"></div>
<div id="newchannel-name-end" class="register-field-end"></div>
<div id="newchannel-name-help" class="descriptive-paragraph">{{$help_name}}</div>
{{include file="field_input.tpl" field=$nickname}}
<div id="nick-spinner"></div>
{{/if}}
{{if $enable_tos}}
{{include file="field_checkbox.tpl" field=$tos}}
{{else}}
<input type="hidden" name="tos" value="1" />
{{/if}}
{{/if}}
<label for="register-email" id="label-register-email" class="register-label" >{{$label_email}}</label>
<input type="text" maxlength="72" size="32" name="email" id="register-email" class="register-input" value="{{$email}}" />
<div id="register-email-feedback" class="register-feedback"></div>
<div id="register-email-end" class="register-field-end"></div>
<label for="register-password" id="label-register-password" class="register-label" >{{$label_pass1}}</label>
<input type="password" maxlength="72" size="32" name="password" id="register-password" class="register-input" value="{{$pass1}}" />
<div id="register-password-feedback" class="register-feedback"></div>
<div id="register-password-end" class="register-field-end"></div>
<label for="register-password2" id="label-register-password2" class="register-label" >{{$label_pass2}}</label>
<input type="password" maxlength="72" size="32" name="password2" id="register-password2" class="register-input" value="{{$pass2}}" />
<div id="register-password2-feedback" class="register-feedback"></div>
<div id="register-password2-end" class="register-field-end"></div>
{{if $auto_create}}
<label for="newchannel-nickname" id="label-newchannel-nickname" class="register-label" >{{$label_nick}}</label>
<input type="text" name="nickname" id="newchannel-nickname" class="register-input" value="{{$nickname}}" />
<div id="nick-spinner"></div>
<div id="newchannel-nick-desc" style="text-align: right;">{{$nick_hub}}</div>
<div id="newchannel-nickname-feedback" class="register-feedback"></div>
<div id="newchannel-nickname-end" class="register-field-end"></div>
<div id="newchannel-nick-desc" class="descriptive-paragraph">{{$nick_desc}}</div>
{{/if}}
{{if $enable_tos}}
<input type="checkbox" name="tos" id="register-tos" value="1" />
<label for="register-tos" id="label-register-tos">{{$label_tos}}</label>
<div id="register-tos-feedback" class="register-feedback"></div>
<div id="register-tos-end" class="register-field-end"></div>
{{else}}
<input type="hidden" name="tos" value="1" />
{{/if}}
<input type="submit" name="submit" class="btn btn-default" id="register-submit-button" value="{{$submit}}" />
<div id="register-submit-end" class="register-field-end"></div>
</form>
<button class="btn btn-primary" type="submit" name="submit" id="newchannel-submit-button" value="{{$submit}}">{{$submit}}</button>
<div id="register-submit-end" class="register-field-end"></div>
</form>
</div>
</div>

View File

@ -8,6 +8,7 @@
<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
<div class="section-content-tools-wrapper">
{{include file="field_input.tpl" field=$email}}
{{include file="field_password.tpl" field=$origpass}}
{{include file="field_password.tpl" field=$password1}}
{{include file="field_password.tpl" field=$password2}}
<div class="settings-submit-wrapper" >