Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Haakon Meland Eriksen 2016-02-02 17:51:34 +01:00
commit 36ac48779c
22 changed files with 2609 additions and 1930 deletions

92
CHANGELOG Normal file
View file

@ -0,0 +1,92 @@
Hubzilla 1.2
Provide extra HTTP security headers (several of them).
Allow a site to disable delivery reports if disk space is limited
Regression: Wrong theme when viewing single post as non-member
Some Diaspora profile photos use relative URLs - force absolute
Add locked features to siteinfo report to aid remote debugging
Provide version compatibility checking to plugins (minversion, maxversion, and minphpversion)
Account config storage
Provide optional integrated registration and channel create form
cli utility for managing addons
issue with sharing photo "items"
cover photo manager: upload, crop, and store
cover photo widget created
rework the connections list page and provide a few management features there
fixed issue with Comanche layout definitions loaded by plugins
provide ability to separate delivery functions from item_store() and item_store_update() - some forum messages were being redelivered when cloned.
call build_sync_packet() on pdledit changes
Abstract the project name and version so these can be customised or removed
Allow hiding the ratings links on a per-site basis
db_type not present in international setup templates - was unable to choose postgres.
item_photo_menu logically divided into a) actions on the post, b) actions related to the author
bug: default channel not reset to 0 when last channel removed
create widget containing only the contact block
regression: public forums granted send stream permissions to connections
workaround Firefox's refusal to honour disabling autocomplete of passwords
regression: photo's uploaded to a channel by a guest (with file write permissions) not saved correctly.
provide mechanisms for custom .well-known handlers (needed for LetsEncrypt ownership verification)
proc_run modified to use exec() instead of proc_open() - causing issues on some PHP installations
remote delegation failure under a specific set of circumstances which we were finally able to duplicate
Delegation section of Channel Manager was missing names and contained useless notification icons.
Change "expire" channel setting to show system limit if there is one.
Regression: provide a one-click ignore of pending connection
Config to control directory keyword generation on client and server.
"Collections" renamed to "Privacy Groups", documentation improved
widget_item - allow use of page title instead of message id
Add site black/white list checking to all .well-known services
reduce incidents of screen jumping when "showmore" is activated
add oembed provider for photos
Addons:
CSS theming of pageheader plugin
xmpp addon ported from Friendica
Diaspora private mail issues after the third reply
Occasional issue with Diaspora connection requests
Add notification email to Diaspora PMs
Allow anonymising platform and version for statistics
msgfooter addon created
removed embedly plugin
sync clones after superblock addition
"keepout" plugin created
Hubzilla 1.1
Rewrote and simplified the Queue manager and delivery system
Rewrote and simplified the outer layers of the Zot protocol
Use a standard version numbering scheme in addition to the snapshot tags
Provide a channel blacklist for blocking channels with abusive or illegal content at the hub level
Make the black/white lists pluggable
Update template library
Support for letsencrypt certs in various places
Cleanup of login and register pages
Better error responses for permission denied on channel file repositories
Disabled the public stream by default for new installs (can be enabled if desired)
Cleanup of API authentication and rework the old OAuth1 stuff
Add API "status with media" support compatible with Twitter and conflicting method for GNU-social
Rework photo ActivityStreams objects to align better with ActivityStreams producers/consumers
Several minor API fixes to work better with AndStatus client
Invitation only site - experimental support added, needs more work
Fix delivery loop condition due to corrupted data which resulted in recursive upstream delivery
Provide more support for external (git) widget collections.
Extend the Queue API to 3rd-party network addons which have experienced downtime recently.
Regression: Inherited permissions were not explicitly set
Regression: "Xyz posted on your wall" notification sent when creating webpages at another channel
Regression: Custom permissions not pre-populated on channel creation with named role.
Provide "Public" string when a post can be made public, instead of "visible to default audience"
Allow hub admin to specify a default role type for the first channel created, reducing complexity
Ability for a hub admin to set feature defaults and lock them, reducing complexity
Change default expiration of delivery reports to 10 days to accomodate sites with reduced resources
Addons/Plugins:
Pageheader addon ported from Friendica
Hubwall (allow admin to send email to all accounts on this hub) created
GNU-social - queueing added
Diaspora - fixes for various failures to update profile photos, updates to queue API
Cross Domain Authenticated Chess (Andrew Manning's repository)
And... the normal "lots of bugs fixed, translations updated, and documentation improved"

View file

@ -48,7 +48,7 @@ require_once('include/AccessList.php');
define ( 'PLATFORM_NAME', 'hubzilla' ); define ( 'PLATFORM_NAME', 'hubzilla' );
define ( 'RED_VERSION', trim(file_get_contents('version.inc'))); define ( 'RED_VERSION', trim(file_get_contents('version.inc')));
define ( 'STD_VERSION', '1.1.3' ); define ( 'STD_VERSION', '1.2' );
define ( 'ZOT_REVISION', 1 ); define ( 'ZOT_REVISION', 1 );
define ( 'DB_UPDATE_VERSION', 1161 ); define ( 'DB_UPDATE_VERSION', 1161 );

View file

@ -1267,7 +1267,7 @@ function advanced_profile(&$a) {
$profile['like_button_label'] = tt('Like','Likes',$profile['like_count'],'noun'); $profile['like_button_label'] = tt('Like','Likes',$profile['like_count'],'noun');
if($likers) { if($likers) {
foreach($likers as $l) foreach($likers as $l)
$profile['likers'][] = array('name' => $l['xchan_name'],'url' => zid($l['xchan_url'])); $profile['likers'][] = array('name' => $l['xchan_name'],'photo' => zid($l['xchan_photo_s']), 'url' => zid($l['xchan_url']));
} }
if(($a->profile['dob']) && ($a->profile['dob'] != '0000-00-00')) { if(($a->profile['dob']) && ($a->profile['dob'] != '0000-00-00')) {
@ -1781,3 +1781,45 @@ function get_cover_photo($channel_id,$format = 'bbcode', $res = PHOTO_RES_COVER_
return $output; return $output;
} }
function get_zcard($channel,$observer_hash = '',$args = array()) {
logger('get_zcard');
$channel['channel_addr'] = $channel['channel_address'] . '@' . get_app()->get_hostname();
$r = q("select height, width, resource_id, scale, type from photo where uid = %d and scale = %d and photo_usage = %d",
intval($channel['channel_id']),
intval(PHOTO_RES_COVER_1200),
intval(PHOTO_COVER)
);
if($r) {
$cover = $r[0];
$cover['href'] = z_root() . '/photo/' . $r[0]['resource_id'] . '-' . $r[0]['scale'];
}
$pphoto = array('type' => $channel['xchan_photo_mimetype'],
'width' => 300 , 'height' => 300, 'href' => $channel['xchan_photo_l']);
$maxwidth = (($args['width']) ? intval($args['width']) : 0);
$maxheight = (($args['height']) ? intval($args['height']) : 0);
$zcard = array('chan' => $channel);
if(($maxwidth > 1200) || ($maxwidth < 1))
$maxwidth = 1200;
$scale = (float) $maxwidth / 1200;
$translate = intval(($scale / 1.0) * 100);
$o .= replace_macros(get_markup_template('zcard.tpl'),array(
'$scale' => $scale,
'$translate' => $translate,
'$cover' => $cover,
'$pphoto' => $pphoto,
'$zcard' => $zcard
));
return $o;
}

View file

@ -3438,6 +3438,7 @@ function check_item_source($uid, $item) {
if(! $r[0]['src_patt']) if(! $r[0]['src_patt'])
return true; return true;
require_once('include/html2plain.php'); require_once('include/html2plain.php');
$text = prepare_text($item['body'],$item['mimetype']); $text = prepare_text($item['body'],$item['mimetype']);
$text = html2plain($text); $text = html2plain($text);

View file

@ -53,6 +53,10 @@ function oembed_fetch_url($embedurl){
$a = get_app(); $a = get_app();
$embedurl = str_replace('&amp;','&', $embedurl);
// logger('fetch: ' . $embedurl);
$txt = Cache::get($a->videowidth . $embedurl); $txt = Cache::get($a->videowidth . $embedurl);
if(strstr($txt,'youtu') && strstr(z_root(),'https:')) { if(strstr($txt,'youtu') && strstr(z_root(),'https:')) {
@ -78,7 +82,6 @@ function oembed_fetch_url($embedurl){
else { else {
// try oembed autodiscovery // try oembed autodiscovery
$redirects = 0; $redirects = 0;
$result = z_fetch_url($embedurl, false, $redirects, array('timeout' => 15, 'accept_content' => "text/*", 'novalidate' => true )); $result = z_fetch_url($embedurl, false, $redirects, array('timeout' => 15, 'accept_content' => "text/*", 'novalidate' => true ));
if($result['success']) if($result['success'])
$html_text = $result['body']; $html_text = $result['body'];
@ -88,8 +91,8 @@ function oembed_fetch_url($embedurl){
if ($dom){ if ($dom){
$xpath = new DOMXPath($dom); $xpath = new DOMXPath($dom);
$attr = "oembed"; $attr = "oembed";
$xattr = oe_build_xpath("class","oembed"); $xattr = oe_build_xpath("class","oembed");
$entries = $xpath->query("//link[@type='application/json+oembed']"); $entries = $xpath->query("//link[@type='application/json+oembed']");
foreach($entries as $e){ foreach($entries as $e){
$href = $e->getAttributeNode("href")->nodeValue; $href = $e->getAttributeNode("href")->nodeValue;
@ -121,20 +124,29 @@ function oembed_fetch_url($embedurl){
if ($txt[0]!="{") $txt='{"type":"error"}'; if ($txt[0]!="{") $txt='{"type":"error"}';
//save in cache //save in cache
Cache::set($a->videowidth . $embedurl,$txt);
if(! get_config('system','oembed_cache_disable'))
Cache::set($a->videowidth . $embedurl,$txt);
} }
$j = json_decode($txt); $j = json_decode($txt);
$j->embedurl = $embedurl; $j->embedurl = $embedurl;
// logger('fetch return: ' . print_r($j,true));
return $j; return $j;
} }
function oembed_format_object($j){ function oembed_format_object($j){
$a = get_app(); $a = get_app();
$embedurl = $j->embedurl; $embedurl = $j->embedurl;
// logger('format: ' . print_r($j,true));
$jhtml = oembed_iframe($j->embedurl,(isset($j->width) ? $j->width : null), (isset($j->height) ? $j->height : null)); $jhtml = oembed_iframe($j->embedurl,(isset($j->width) ? $j->width : null), (isset($j->height) ? $j->height : null));
$ret="<span class='oembed ".$j->type."'>"; $ret="<span class='oembed ".$j->type."'>";
@ -173,6 +185,14 @@ function oembed_format_object($j){
$ret.="<br>"; $ret.="<br>";
}; break; }; break;
case "link": { case "link": {
if($j->thumbnail_url) {
if(is_matrix_url($embedurl)) {
$embedurl = zid($embedurl);
$j->thumbnail_url = zid($j->thumbnail_url);
}
$ret = '<a href="' . $embedurl . '" ><img src="' . $j->thumbnail_url . '" alt="thumbnail" /></a><br /><br />';
}
//$ret = "<a href='".$embedurl."'>".$j->title."</a>"; //$ret = "<a href='".$embedurl."'>".$j->title."</a>";
}; break; }; break;
case "rich": { case "rich": {
@ -184,13 +204,13 @@ function oembed_format_object($j){
// add link to source if not present in "rich" type // add link to source if not present in "rich" type
if ( $j->type!='rich' || !strpos($j->html,$embedurl) ){ if ( $j->type!='rich' || !strpos($j->html,$embedurl) ){
$embedlink = (isset($j->title))?$j->title:$embedurl; $embedlink = (isset($j->title))?$j->title:$embedurl;
$ret .= '<span class="bookmark-identifier">#^</span>' . "<a href='$embedurl' rel='oembed'>$embedlink</a>"; $ret .= '<br /><span class="bookmark-identifier">#^</span>' . "<a href='$embedurl' rel='oembed'>$embedlink</a>";
$ret .= "<br>"; $ret .= "<br />";
if (isset($j->author_name)) $ret.=" by ".$j->author_name; if (isset($j->author_name)) $ret.=" by ".$j->author_name;
if (isset($j->provider_name)) $ret.=" on ".$j->provider_name; if (isset($j->provider_name)) $ret.=" on ".$j->provider_name;
} else { } else {
// add <a> for html2bbcode conversion // add <a> for html2bbcode conversion
$ret .= "<a href='$embedurl' rel='oembed'/>"; $ret .= "<br /><a href='$embedurl' rel='oembed'>$embedurl</a>";
} }
$ret.="<br style='clear:left'></span>"; $ret.="<br style='clear:left'></span>";
return mb_convert_encoding($ret, 'HTML-ENTITIES', mb_detect_encoding($ret)); return mb_convert_encoding($ret, 'HTML-ENTITIES', mb_detect_encoding($ret));

View file

@ -181,7 +181,7 @@ function permissions_sql($owner_id, $remote_observer = null) {
*/ */
else { else {
$observer = (($remote_observer) ? $remote_observer : get_observer_hash()); $observer = ((! is_null($remote_observer)) ? $remote_observer : get_observer_hash());
if($observer) { if($observer) {
$groups = init_groups_visitor($observer); $groups = init_groups_visitor($observer);

View file

@ -398,16 +398,17 @@ function get_things($profile_hash,$uid) {
$things[$k] = null; $things[$k] = null;
foreach($r as $rr) { foreach($r as $rr) {
$l = q("select xchan_name, xchan_url from likes left join xchan on likee = xchan_hash where $l = q("select xchan_name, xchan_photo_s, xchan_url from likes left join xchan on likee = xchan_hash where
target_type = '%s' and target_id = '%s' and channel_id = %d", target_type = '%s' and target_id = '%s' and channel_id = %d",
dbesc(ACTIVITY_OBJ_THING), dbesc(ACTIVITY_OBJ_THING),
dbesc($rr['obj_obj']), dbesc($rr['obj_obj']),
intval($uid) intval($uid)
); );
for($x = 0; $x < count($l); $x ++) for($x = 0; $x < count($l); $x ++) {
$l[$x]['xchan_url'] = zid($l[$x]['xchan_url']); $l[$x]['xchan_url'] = zid($l[$x]['xchan_url']);
$l[$x]['xchan_photo_s'] = zid($l[$x]['xchan_photo_s']);
}
if(! $things[$rr['obj_verb']]) if(! $things[$rr['obj_verb']])
$things[$rr['obj_verb']] = array(); $things[$rr['obj_verb']] = array();

View file

@ -289,9 +289,12 @@ if($a->module_loaded) {
*/ */
if(function_exists($a->module . '_init')) { if(function_exists($a->module . '_init')) {
call_hooks($a->module . '_mod_init', $placeholder); $arr = array('init' => true, 'replace' => false);
$func = $a->module . '_init'; call_hooks($a->module . '_mod_init', $arr);
$func($a); if(! $arr['replace']) {
$func = $a->module . '_init';
$func($a);
}
} }
/** /**
@ -333,7 +336,7 @@ if($a->module_loaded) {
if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error) if(($_SERVER['REQUEST_METHOD'] === 'POST') && (! $a->error)
&& (function_exists($a->module . '_post')) && (function_exists($a->module . '_post'))
&& (! x($_POST, 'auth-params'))) { && (! x($_POST, 'auth-params'))) {
call_hooks($a->module . '_mod_post', $_POST); call_hooks($a->module . '_mod_post', $_POST);
$func = $a->module . '_post'; $func = $a->module . '_post';
$func($a); $func($a);

View file

@ -156,7 +156,11 @@ function channel_content(&$a, $update = 0, $load = false) {
$abook_uids = " and abook.abook_channel = " . intval($a->profile['profile_uid']) . " "; $abook_uids = " and abook.abook_channel = " . intval($a->profile['profile_uid']) . " ";
$simple_update = (($update) ? " AND item_unseen = 1 " : ''); $simple_update = (($update) ? " AND item_unseen = 1 " : '');
if($mid) {
$a->page['htmlhead'] .= "\r\n" . '<link rel="alternate" type="application/json+oembed" href="' . z_root() . '/oep?f=&url=' . urlencode(z_root() . '/' . $a->query_string) . '" title="oembed" />' . "\r\n";
}
if($update && $_SESSION['loadtime']) if($update && $_SESSION['loadtime'])
$simple_update = " AND (( item_unseen = 1 AND item.changed > '" . datetime_convert('UTC','UTC',$_SESSION['loadtime']) . "' ) OR item.changed > '" . datetime_convert('UTC','UTC',$_SESSION['loadtime']) . "' ) "; $simple_update = " AND (( item_unseen = 1 AND item.changed > '" . datetime_convert('UTC','UTC',$_SESSION['loadtime']) . "' ) OR item.changed > '" . datetime_convert('UTC','UTC',$_SESSION['loadtime']) . "' ) ";
if($load) if($load)

View file

@ -22,6 +22,8 @@ function linkinfo_content(&$a) {
else else
$url = trim($_GET['url']); $url = trim($_GET['url']);
$url = strip_zids($url);
if((substr($url,0,1) != '/') && (substr($url,0,4) != 'http')) if((substr($url,0,1) != '/') && (substr($url,0,4) != 'http'))
$url = 'http://' . $url; $url = 'http://' . $url;

387
mod/oep.php Normal file
View file

@ -0,0 +1,387 @@
<?php
// oembed provider
function oep_init(&$a) {
logger('oep: ' . print_r($_REQUEST,true), LOGGER_DEBUG, LOG_INFO);
if($_REQUEST['url']) {
$_REQUEST['url'] = strip_zids($_REQUEST['url']);
$url = $_REQUEST['url'];
}
if(! $url)
http_status_exit(404, 'Not found');
$maxwidth = $_REQUEST['maxwidth'];
$maxheight = $_REQUEST['maxheight'];
$format = $_REQUEST['format'];
if($format && $format !== 'json')
http_status_exit(501, 'Not implemented');
if(fnmatch('*/photos/*/album/*',$url))
$arr = oep_album_reply($_REQUEST);
elseif(fnmatch('*/photos/*/image/*',$url))
$arr = oep_photo_reply($_REQUEST);
elseif(fnmatch('*/photos*',$url))
$arr = oep_phototop_reply($_REQUEST);
elseif(fnmatch('*/display/*',$url))
$arr = oep_display_reply($_REQUEST);
elseif(fnmatch('*/channel/*mid=*',$url))
$arr = oep_mid_reply($_REQUEST);
elseif(fnmatch('*/profile/*',$url))
$arr = oep_profile_reply($_REQUEST);
if($arr) {
header('Content-Type: application/json+oembed');
echo json_encode($arr);
killme();
}
http_status_exit(404,'Not found');
}
function oep_display_reply($args) {
$ret = array();
$url = $args['url'];
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
if(preg_match('#//(.*?)/(.*?)/(.*?)/(.*?)mid\=(.*?)(&|$)#',$url,$matches)) {
$chn = $matches[3];
$res = $matches[5];
}
if(! ($chn && $res))
return;
$c = q("select * from channel where channel_address = '%s' limit 1",
dbesc($chn)
);
if(! $c)
return;
$sql_extra = item_permissions_sql($c[0]['channel_id']);
$p = q("select * from item where mid = '%s' and uid = %d $sql_extra limit 1",
dbesc($res),
intval($c[0]['channel_id'])
);
if(! $p)
return;
xchan_query($p,true);
$p = fetch_post_tags($p,true);
$o = "[share author='".urlencode($p[0]['author']['xchan_name']).
"' profile='".$p[0]['author']['xchan_url'] .
"' avatar='".$p[0]['author']['xchan_photo_s'].
"' link='".$p[0]['plink'].
"' posted='".$p[0]['created'].
"' message_id='".$p[0]['mid']."']";
if($p[0]['title'])
$o .= '[b]'.$p[0]['title'].'[/b]'."\r\n";
$o .= $p[0]['body'];
$o .= "[/share]";
$o = bbcode($o);
$ret['type'] = 'rich';
$w = (($maxwidth) ? $maxwidth : 640);
$h = (($maxheight) ? $maxheight : $w * 2 / 3);
$ret['html'] = '<div style="width: ' . $w . '; height: ' . $h . ';" >' . $o . '</div>';
$ret['width'] = $w;
$ret['height'] = $h;
return $ret;
}
function oep_mid_reply($args) {
$ret = array();
$url = $args['url'];
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
if(preg_match('#//(.*?)/(.*?)/(.*?)/(.*?)mid\=(.*?)(&|$)#',$url,$matches)) {
$chn = $matches[3];
$res = $matches[5];
}
if(! ($chn && $res))
return;
$c = q("select * from channel where channel_address = '%s' limit 1",
dbesc($chn)
);
if(! $c)
return;
$sql_extra = item_permissions_sql($c[0]['channel_id']);
$p = q("select * from item where mid = '%s' and uid = %d $sql_extra limit 1",
dbesc($res),
intval($c[0]['channel_id'])
);
if(! $p)
return;
xchan_query($p,true);
$p = fetch_post_tags($p,true);
$o = "[share author='".urlencode($p[0]['author']['xchan_name']).
"' profile='".$p[0]['author']['xchan_url'] .
"' avatar='".$p[0]['author']['xchan_photo_s'].
"' link='".$p[0]['plink'].
"' posted='".$p[0]['created'].
"' message_id='".$p[0]['mid']."']";
if($p[0]['title'])
$o .= '[b]'.$p[0]['title'].'[/b]'."\r\n";
$o .= $p[0]['body'];
$o .= "[/share]";
$o = bbcode($o);
$ret['type'] = 'rich';
$w = (($maxwidth) ? $maxwidth : 640);
$h = (($maxheight) ? $maxheight : $w * 2 / 3);
$ret['html'] = '<div style="width: ' . $w . '; height: ' . $h . ';" >' . $o . '</div>';
$ret['width'] = $w;
$ret['height'] = $h;
return $ret;
}
function oep_profile_reply($args) {
require_once('include/identity.php');
require_once('include/Contact.php');
$url = $args['url'];
if(preg_match('#//(.*?)/(.*?)/(.*?)(/|\?|&|$)#',$url,$matches)) {
$chn = $matches[3];
}
if(! $chn)
return;
$c = channelx_by_nick($chn);
if(! $c)
return;
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
$width = 800;
$height = 375;
if($maxwidth) {
$width = $maxwidth;
$height = (375 / 800) * $width;
}
if($maxheight) {
if($maxheight < $height) {
$width = (800 / 375) * $maxheight;
$height = $maxheight;
}
}
$ret = array();
$ret['type'] = 'rich';
$ret['width'] = intval($width);
$ret['height'] = intval($height);
$ret['html'] = get_zcard($c,get_observer_hash(),array('width' => $width, 'height' => $height));
return $ret;
}
function oep_album_reply($args) {
$ret = array();
$url = $args['url'];
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
if(preg_match('|//(.*?)/(.*?)/(.*?)/album/|',$url,$matches)) {
$chn = $matches[3];
$res = hex2bin(basename($url));
}
if(! ($chn && $res))
return;
$c = q("select * from channel where channel_address = '%s' limit 1",
dbesc($chn)
);
if(! $c)
return;
$sql_extra = permissions_sql($c[0]['channel_id']);
$p = q("select resource_id from photo where album = '%s' and uid = %d and scale = 0 $sql_extra order by created desc limit 1",
dbesc($res),
intval($c[0]['channel_id'])
);
if(! $p)
return;
$res = $p[0]['resource_id'];
$r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
intval($c[0]['channel_id']),
dbesc($res)
);
if($r) {
foreach($r as $rr) {
$foundres = false;
if($maxheight && $rr['height'] > $maxheight)
continue;
if($maxwidth && $rr['width'] > $maxwidth)
continue;
$foundres = true;
break;
}
if($foundres) {
$ret['type'] = 'link';
$ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
$ret['thumbnail_width'] = $rr['width'];
$ret['thumbnail_height'] = $rr['height'];
}
}
return $ret;
}
function oep_phototop_reply($args) {
$ret = array();
$url = $args['url'];
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
if(preg_match('|//(.*?)/(.*?)/(.*?)$|',$url,$matches)) {
$chn = $matches[3];
}
if(! $chn)
return;
$c = q("select * from channel where channel_address = '%s' limit 1",
dbesc($chn)
);
if(! $c)
return;
$sql_extra = permissions_sql($c[0]['channel_id']);
$p = q("select resource_id from photo where uid = %d and scale = 0 $sql_extra order by created desc limit 1",
intval($c[0]['channel_id'])
);
if(! $p)
return;
$res = $p[0]['resource_id'];
$r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
intval($c[0]['channel_id']),
dbesc($res)
);
if($r) {
foreach($r as $rr) {
$foundres = false;
if($maxheight && $rr['height'] > $maxheight)
continue;
if($maxwidth && $rr['width'] > $maxwidth)
continue;
$foundres = true;
break;
}
if($foundres) {
$ret['type'] = 'link';
$ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
$ret['thumbnail_width'] = $rr['width'];
$ret['thumbnail_height'] = $rr['height'];
}
}
return $ret;
}
function oep_photo_reply($args) {
$ret = array();
$url = $args['url'];
$maxwidth = intval($args['maxwidth']);
$maxheight = intval($args['maxheight']);
if(preg_match('|//(.*?)/(.*?)/(.*?)/image/|',$url,$matches)) {
$chn = $matches[3];
$res = basename($url);
}
if(! ($chn && $res))
return;
$c = q("select * from channel where channel_address = '%s' limit 1",
dbesc($chn)
);
if(! $c)
return;
$sql_extra = permissions_sql($c[0]['channel_id']);
$r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
intval($c[0]['channel_id']),
dbesc($res)
);
if($r) {
foreach($r as $rr) {
$foundres = false;
if($maxheight && $rr['height'] > $maxheight)
continue;
if($maxwidth && $rr['width'] > $maxwidth)
continue;
$foundres = true;
break;
}
if($foundres) {
$ret['type'] = 'link';
$ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
$ret['thumbnail_width'] = $rr['width'];
$ret['thumbnail_height'] = $rr['height'];
}
}
return $ret;
}

View file

@ -660,6 +660,10 @@ function photos_content(&$a) {
$album = (($datum) ? hex2bin($datum) : ''); $album = (($datum) ? hex2bin($datum) : '');
$a->page['htmlhead'] .= "\r\n" . '<link rel="alternate" type="application/json+oembed" href="' . z_root() . '/oep?f=&url=' . urlencode(z_root() . '/' . $a->cmd) . '" title="oembed" />' . "\r\n";
$r = q("SELECT `resource_id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` = '%s' $r = q("SELECT `resource_id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` = '%s'
AND `scale` <= 4 and photo_usage IN ( %d, %d ) and is_nsfw = %d $sql_extra GROUP BY `resource_id`", AND `scale` <= 4 and photo_usage IN ( %d, %d ) and is_nsfw = %d $sql_extra GROUP BY `resource_id`",
intval($owner_uid), intval($owner_uid),
@ -804,6 +808,8 @@ function photos_content(&$a) {
if($datatype === 'image') { if($datatype === 'image') {
$a->page['htmlhead'] .= "\r\n" . '<link rel="alternate" type="application/json+oembed" href="' . z_root() . '/oep?f=&url=' . urlencode(z_root() . '/' . $a->cmd) . '" title="oembed" />' . "\r\n";
// fetch image, item containing image, then comments // fetch image, item containing image, then comments
$ph = q("SELECT id,aid,uid,xchan,resource_id,created,edited,title,`description`,album,filename,`type`,height,width,`size`,scale,photo_usage,is_nsfw,allow_cid,allow_gid,deny_cid,deny_gid FROM `photo` WHERE `uid` = %d AND `resource_id` = '%s' $ph = q("SELECT id,aid,uid,xchan,resource_id,created,edited,title,`description`,album,filename,`type`,height,width,`size`,scale,photo_usage,is_nsfw,allow_cid,allow_gid,deny_cid,deny_gid FROM `photo` WHERE `uid` = %d AND `resource_id` = '%s'
@ -1226,6 +1232,9 @@ function photos_content(&$a) {
// Default - show recent photos with upload link (if applicable) // Default - show recent photos with upload link (if applicable)
//$o = ''; //$o = '';
$a->page['htmlhead'] .= "\r\n" . '<link rel="alternate" type="application/json+oembed" href="' . z_root() . '/oep?f=&url=' . urlencode(z_root() . '/' . $a->cmd) . '" title="oembed" />' . "\r\n";
$r = q("SELECT `resource_id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s' $r = q("SELECT `resource_id`, max(`scale`) AS `scale` FROM `photo` WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s'
and photo_usage in ( %d, %d ) and is_nsfw = %d $sql_extra GROUP BY `resource_id`", and photo_usage in ( %d, %d ) and is_nsfw = %d $sql_extra GROUP BY `resource_id`",
intval($a->data['channel']['channel_id']), intval($a->data['channel']['channel_id']),

View file

@ -75,6 +75,7 @@ function profile_content(&$a, $update = 0) {
$o .= profile_tabs($a, $is_owner, $a->profile['channel_address']); $o .= profile_tabs($a, $is_owner, $a->profile['channel_address']);
$a->page['htmlhead'] .= "\r\n" . '<link rel="alternate" type="application/json+oembed" href="' . z_root() . '/oep?f=&url=' . urlencode(z_root() . '/' . $a->query_string) . '" title="oembed" />' . "\r\n";
$o .= advanced_profile($a); $o .= advanced_profile($a);
call_hooks('profile_advanced',$o); call_hooks('profile_advanced',$o);

View file

@ -1 +1 @@
2016-01-29.1293H 2016-02-01.1296H

File diff suppressed because it is too large Load diff

View file

@ -7,25 +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["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["Welcome %s. Remote authentication successful."] = "Ciao %s. L'accesso tramite il tuo hub è avvenuto con successo.";
$a->strings["Update %s failed. See error logs."] = "%s: aggiornamento fallito. Controlla i log di errore.";
$a->strings["Update Error at %s"] = "Errore di aggiornamento su %s";
$a->strings["Create an account to access services and applications within the Hubzilla"] = "Registrati per accedere ai servizi e alle applicazioni di Hubzilla";
$a->strings["Register"] = "Registrati";
$a->strings["Logout"] = "Esci";
$a->strings["Login"] = "Accedi";
$a->strings["Email"] = "Email";
$a->strings["Password"] = "Password";
$a->strings["Remember me"] = "Resta connesso";
$a->strings["No"] = "No";
$a->strings["Yes"] = "";
$a->strings["Forgot your password?"] = "Hai dimenticato la password?";
$a->strings["Password Reset"] = "Reimposta la password";
$a->strings["toggle mobile"] = "attiva/disattiva versione mobile";
$a->strings["Website SSL certificate is not valid. Please correct."] = "Il certificato SSL del sito non è valido. Si prega di intervenire.";
$a->strings["[hubzilla] Website SSL error for %s"] = "[hubzilla] Errore SSL su %s";
$a->strings["Cron/Scheduled tasks not running."] = "Processi cron non avviati.";
$a->strings["never"] = "mai";
$a->strings["[hubzilla] Cron tasks not running on %s"] = "[hubzilla] Cron non è stato eseguito %s";
$a->strings["Connect"] = "Aggiungi"; $a->strings["Connect"] = "Aggiungi";
$a->strings["New window"] = "Nuova finestra"; $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["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra";
@ -154,6 +135,7 @@ $a->strings["Public Timeline"] = "Diario pubblico";
$a->strings["Site Admin"] = "Amministrazione sito"; $a->strings["Site Admin"] = "Amministrazione sito";
$a->strings["Bookmarks"] = "Segnalibri"; $a->strings["Bookmarks"] = "Segnalibri";
$a->strings["Address Book"] = "Rubrica"; $a->strings["Address Book"] = "Rubrica";
$a->strings["Login"] = "Accedi";
$a->strings["Channel Manager"] = "Gestione canali"; $a->strings["Channel Manager"] = "Gestione canali";
$a->strings["Grid"] = "Rete"; $a->strings["Grid"] = "Rete";
$a->strings["Settings"] = "Impostazioni"; $a->strings["Settings"] = "Impostazioni";
@ -225,21 +207,6 @@ $a->strings["Invalid room specifier."] = "Il nome della chat non è valido.";
$a->strings["Room not found."] = "Chat non trovata."; $a->strings["Room not found."] = "Chat non trovata.";
$a->strings["Room is full"] = "La chat è al completo"; $a->strings["Room is full"] = "La chat è al completo";
$a->strings["Default"] = "Predefinito"; $a->strings["Default"] = "Predefinito";
$a->strings["Frequently"] = "Frequentemente";
$a->strings["Hourly"] = "Ogni ora";
$a->strings["Twice daily"] = "Due volte al giorno";
$a->strings["Daily"] = "Ogni giorno";
$a->strings["Weekly"] = "Ogni settimana";
$a->strings["Monthly"] = "Ogni mese";
$a->strings["Friendica"] = "Friendica";
$a->strings["OStatus"] = "OStatus";
$a->strings["RSS/Atom"] = "RSS/Atom";
$a->strings["Diaspora"] = "Diaspora";
$a->strings["Facebook"] = "Facebook";
$a->strings["Zot!"] = "Zot!";
$a->strings["LinkedIn"] = "LinkedIn";
$a->strings["XMPP/IM"] = "XMPP/IM";
$a->strings["MySpace"] = "MySpace";
$a->strings["%d invitation available"] = array( $a->strings["%d invitation available"] = array(
0 => "%d invito disponibile", 0 => "%d invito disponibile",
1 => "%d inviti disponibili", 1 => "%d inviti disponibili",
@ -291,12 +258,11 @@ $a->strings["Delete Selected Items"] = "Elimina gli oggetti selezionati";
$a->strings["View Source"] = "Vedi il sorgente"; $a->strings["View Source"] = "Vedi il sorgente";
$a->strings["Follow Thread"] = "Segui la discussione"; $a->strings["Follow Thread"] = "Segui la discussione";
$a->strings["Unfollow Thread"] = "Non seguire la discussione"; $a->strings["Unfollow Thread"] = "Non seguire la discussione";
$a->strings["View Status"] = "Bacheca";
$a->strings["View Profile"] = "Profilo"; $a->strings["View Profile"] = "Profilo";
$a->strings["View Photos"] = "Foto";
$a->strings["Activity/Posts"] = "Attività e Post"; $a->strings["Activity/Posts"] = "Attività e Post";
$a->strings["Edit Connection"] = "Modifica il contatto"; $a->strings["Edit Connection"] = "Modifica il contatto";
$a->strings["Send PM"] = "Messaggio privato"; $a->strings["Message"] = "Messaggio";
$a->strings["Ratings"] = "Valutazioni";
$a->strings["%s likes this."] = "Piace a %s."; $a->strings["%s likes this."] = "Piace a %s.";
$a->strings["%s doesn't like this."] = "Non piace a %s."; $a->strings["%s doesn't like this."] = "Non piace a %s.";
$a->strings["<span %1\$s>%2\$d people</span> like this."] = array( $a->strings["<span %1\$s>%2\$d people</span> like this."] = array(
@ -400,6 +366,7 @@ $a->strings["__ctx:noun__ Abstain"] = array(
$a->strings["Miscellaneous"] = "Altro"; $a->strings["Miscellaneous"] = "Altro";
$a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-GG oppure MM-GG"; $a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-GG oppure MM-GG";
$a->strings["Required"] = "Obbligatorio"; $a->strings["Required"] = "Obbligatorio";
$a->strings["never"] = "mai";
$a->strings["less than a second ago"] = "meno di un secondo fa"; $a->strings["less than a second ago"] = "meno di un secondo fa";
$a->strings["year"] = "anno"; $a->strings["year"] = "anno";
$a->strings["years"] = "anni"; $a->strings["years"] = "anni";
@ -421,119 +388,16 @@ $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'"; $a->strings["Cannot locate DNS info for database server '%s'"] = "Non trovo le informazioni DNS per il database server '%s'";
$a->strings["Directory Options"] = "Visibilità negli elenchi pubblici"; $a->strings["Directory Options"] = "Visibilità negli elenchi pubblici";
$a->strings["Safe Mode"] = "Modalità SafeSearch"; $a->strings["Safe Mode"] = "Modalità SafeSearch";
$a->strings["No"] = "No";
$a->strings["Yes"] = "";
$a->strings["Public Forums Only"] = "Solo forum pubblici"; $a->strings["Public Forums Only"] = "Solo forum pubblici";
$a->strings["This Website Only"] = "Solo in questo sito"; $a->strings["This Website Only"] = "Solo in questo sito";
$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["%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["This event has been added to your calendar."] = "Questo evento è stato aggiunto al tuo calendario"; $a->strings["This event has been added to your calendar."] = "Questo evento è stato aggiunto al tuo calendario";
$a->strings["Not specified"] = "Non specificato"; $a->strings["Not specified"] = "Non specificato";
$a->strings["Needs Action"] = "Necessita di un intervento"; $a->strings["Needs Action"] = "Necessita di un intervento";
$a->strings["Completed"] = "Completato"; $a->strings["Completed"] = "Completato";
$a->strings["In Process"] = "In corso"; $a->strings["In Process"] = "In corso";
$a->strings["Cancelled"] = "Annullato"; $a->strings["Cancelled"] = "Annullato";
$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";
$a->strings["Multiple Profiles"] = "Profili multipli";
$a->strings["Ability to create multiple profiles"] = "Abilitazione a creare profili multipli";
$a->strings["Advanced Profiles"] = "Profili avanzati";
$a->strings["Additional profile sections and selections"] = "Informazioni aggiuntive del profilo";
$a->strings["Profile Import/Export"] = "Importa/esporta il profilo";
$a->strings["Save and load profile details across sites/channels"] = "Salva o ripristina le informazioni del profilo su siti diversi";
$a->strings["Web Pages"] = "Pagine web";
$a->strings["Provide managed web pages on your channel"] = "Attiva la creazione di pagine web sul tuo canale";
$a->strings["Private Notes"] = "Note private";
$a->strings["Enables a tool to store notes and reminders"] = "Abilita il riquadro per scrivere le tue annotazioni";
$a->strings["Navigation Channel Select"] = "Scegli il canale attivo dal menu";
$a->strings["Change channels directly from within the navigation dropdown menu"] = "Scegli il canale attivo direttamente dal menu di navigazione";
$a->strings["Photo Location"] = "Posizione geografica";
$a->strings["If location data is available on uploaded photos, link this to a map."] = "Collega la foto a una mappa quando contiene indicazioni geografiche.";
$a->strings["Expert Mode"] = "Modalità esperto";
$a->strings["Enable Expert Mode to provide advanced configuration options"] = "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate";
$a->strings["Premium Channel"] = "Canale premium";
$a->strings["Allows you to set restrictions and terms on those that connect with your channel"] = "Ti permette di impostare restrizioni e termini d'uso per il canale";
$a->strings["Post Composition Features"] = "Modalità di scrittura post";
$a->strings["Use Markdown"] = "Usa il markdown";
$a->strings["Allow use of \"Markdown\" to format posts"] = "Consenti l'uso del markdown per formattare i post";
$a->strings["Large Photos"] = "Foto grandi";
$a->strings["Include large (1024px) photo thumbnails in posts. If not enabled, use small (640px) photo thumbnails"] = "Includi anteprime grandi per le foto dei tuoi post (1024px). Altrimenti saranno mostrate anteprime più piccole (640px)";
$a->strings["Channel Sources"] = "Sorgenti del canale";
$a->strings["Automatically import channel content from other channels or feeds"] = "Importa automaticamente il contenuto del canale da altri canali o feed";
$a->strings["Even More Encryption"] = "Cifratura addizionale";
$a->strings["Allow optional encryption of content end-to-end with a shared secret key"] = "Rendi possibile la crifratura aggiuntiva tra mittente e destinatario usando una parola chiave conosciuta a entrambi";
$a->strings["Enable Voting Tools"] = "Permetti i post con votazione";
$a->strings["Provide a class of post which others can vote on"] = "Rende possibile la creazione di post in cui sarà possibile votare";
$a->strings["Delayed Posting"] = "Pubblicazione ritardata";
$a->strings["Allow posts to be published at a later date"] = "Per scegliere una data e un'ora a cui far uscire i post";
$a->strings["Suppress Duplicate Posts/Comments"] = "Impedisci post e commenti duplicati";
$a->strings["Prevent posts with identical content to be published with less than two minutes in between submissions."] = "Scarta post e commenti se sono identici ad altri inviati meno di due minuti prima.";
$a->strings["Network and Stream Filtering"] = "Filtraggio dei contenuti";
$a->strings["Search by Date"] = "Ricerca per data";
$a->strings["Ability to select posts by date ranges"] = "Per selezionare i post in un intervallo tra date";
$a->strings["Collections Filter"] = "Filtra per insiemi di canali";
$a->strings["Enable widget to display Network posts only from selected collections"] = "Mostra il riquadro per filtrare i post di certi insiemi di canali";
$a->strings["Saved Searches"] = "Ricerche salvate";
$a->strings["Save search terms for re-use"] = "Salva i termini delle ricerche per poterle ripetere";
$a->strings["Network Personal Tab"] = "Attività personale";
$a->strings["Enable tab to display only Network posts that you've interacted on"] = "Abilita il link per mostrare solamente i contenuti con cui hai interagito";
$a->strings["Network New Tab"] = "Contenuti nuovi";
$a->strings["Enable tab to display all new Network activity"] = "Abilita il link per visualizzare solo i nuovi contenuti";
$a->strings["Affinity Tool"] = "Filtro per affinità";
$a->strings["Filter stream activity by depth of relationships"] = "Permette di selezionare i contenuti in base al livello di amicizia";
$a->strings["Connection Filtering"] = "Filtro sui contatti";
$a->strings["Filter incoming posts from connections based on keywords/content"] = "Filtra i post che ricevi con parole chiave";
$a->strings["Suggest Channels"] = "Suggerisci canali";
$a->strings["Show channel suggestions"] = "Mostra alcuni canali che potrebbero interessarti";
$a->strings["Post/Comment Tools"] = "Gestione post e commenti";
$a->strings["Community Tagging"] = "Tag della comunità";
$a->strings["Ability to tag existing posts"] = "Permetti l'aggiunta di tag su post già esistenti";
$a->strings["Post Categories"] = "Categorie dei post";
$a->strings["Add categories to your posts"] = "Abilita le categorie per i tuoi post";
$a->strings["Ability to file posts under folders"] = "Abilita la raccolta dei tuoi articoli in cartelle";
$a->strings["Dislike Posts"] = "Non mi piace";
$a->strings["Ability to dislike posts/comments"] = "Abilità la funzionalità \"non mi piace\" per i tuoi post";
$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["Channel is blocked on this site."] = "Il canale è bloccato per questo sito."; $a->strings["Channel is blocked on this site."] = "Il canale è bloccato per questo sito.";
$a->strings["Channel location missing."] = "Manca l'indirizzo del canale."; $a->strings["Channel location missing."] = "Manca l'indirizzo del canale.";
$a->strings["Response from remote channel was incomplete."] = "La risposta dal canale non è completa."; $a->strings["Response from remote channel was incomplete."] = "La risposta dal canale non è completa.";
@ -543,91 +407,17 @@ $a->strings["Channel discovery failed."] = "La ricerca del canale non ha avuto s
$a->strings["local account not found."] = "l'account locale non è stato trovato."; $a->strings["local account not found."] = "l'account locale non è stato trovato.";
$a->strings["Cannot connect to yourself."] = "Non puoi connetterti a te stesso."; $a->strings["Cannot connect to yourself."] = "Non puoi connetterti a te stesso.";
$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "È stato ripristinato un insieme con lo stesso nome che era stato eliminato in precedenza. I permessi già presenti <strong>potrebbero</strong> rimanere validi per i nuovi canali. Se non vuoi che ciò accada, devi creare un altro insieme con un nome diverso."; $a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "È stato ripristinato un insieme con lo stesso nome che era stato eliminato in precedenza. I permessi già presenti <strong>potrebbero</strong> rimanere validi per i nuovi canali. Se non vuoi che ciò accada, devi creare un altro insieme con un nome diverso.";
$a->strings["Add new connections to this collection (privacy group)"] = "Aggiungi altri contatti a questo insieme (privacy di gruppo)"; $a->strings["Add new connections to this privacy group"] = "Aggiungi nuovi contatti a questo gruppo di canali";
$a->strings["All Channels"] = "Tutti i canali"; $a->strings["All Channels"] = "Tutti i canali";
$a->strings["edit"] = "modifica"; $a->strings["edit"] = "modifica";
$a->strings["Collections"] = "Insiemi di canali"; $a->strings["Privacy Groups"] = "Gruppi di canali";
$a->strings["Edit collection"] = "Modifica l'insieme di canali"; $a->strings["Edit group"] = "Modifica il gruppo";
$a->strings["Add new collection"] = "Nuovo insieme"; $a->strings["Add privacy group"] = "Crea un gruppo di canali";
$a->strings["Channels not in any collection"] = "Canali che non sono in un insieme"; $a->strings["Channels not in any privacy group"] = "Canali che non sono in nessun gruppo";
$a->strings["add"] = "aggiungi"; $a->strings["add"] = "aggiungi";
$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["Friends"] = "Amici";
$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["Edit Profile"] = "Modifica il 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["Cannot create a duplicate channel identifier on this system. Import failed."] = "Non posso creare un canale con un identificativo che già esiste su questo sistema. L'importazione è fallita."; $a->strings["Cannot create a duplicate channel identifier on this system. Import failed."] = "Non posso creare un canale con un identificativo che già esiste su questo sistema. L'importazione è fallita.";
$a->strings["Channel clone failed. Import failed."] = "Impossibile clonare il canale. L'importazione è fallita."; $a->strings["Channel clone failed. Import failed."] = "Impossibile clonare il canale. L'importazione è fallita.";
$a->strings["Cloned channel not found. Import failed."] = "Impossibile trovare il canale clonato. L'importazione è fallita."; $a->strings["Cloned channel not found. Import failed."] = "Impossibile trovare il canale clonato. L'importazione è fallita.";
$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["Collection not found."] = "Insieme di canali non trovato.";
$a->strings["Collection is empty."] = "L'insieme di canali è vuoto.";
$a->strings["Collection: %s"] = "Insieme: %s";
$a->strings["Connection: %s"] = "Contatto: %s";
$a->strings["Connection not found."] = "Contatto non trovato.";
$a->strings["Delete this item?"] = "Eliminare questo elemento?"; $a->strings["Delete this item?"] = "Eliminare questo elemento?";
$a->strings["[-] show less"] = "[-] riduci"; $a->strings["[-] show less"] = "[-] riduci";
$a->strings["[+] expand"] = "[+] mostra tutto"; $a->strings["[+] expand"] = "[+] mostra tutto";
@ -710,12 +500,14 @@ $a->strings["No recipient provided."] = "Devi scegliere un destinatario.";
$a->strings["[no subject]"] = "[nessun titolo]"; $a->strings["[no subject]"] = "[nessun titolo]";
$a->strings["Unable to determine sender."] = "Impossibile determinare il mittente."; $a->strings["Unable to determine sender."] = "Impossibile determinare il mittente.";
$a->strings["Stored post could not be verified."] = "Non è stato possibile verificare il post."; $a->strings["Stored post could not be verified."] = "Non è stato possibile verificare il post.";
$a->strings["Logout"] = "Esci";
$a->strings["End this session"] = "Chiudi questa sessione"; $a->strings["End this session"] = "Chiudi questa sessione";
$a->strings["Home"] = "Bacheca"; $a->strings["Home"] = "Bacheca";
$a->strings["Your posts and conversations"] = "I tuoi post e conversazioni"; $a->strings["Your posts and conversations"] = "I tuoi post e conversazioni";
$a->strings["Your profile page"] = "Il tuo profilo"; $a->strings["Your profile page"] = "Il tuo profilo";
$a->strings["Edit Profiles"] = "Modifica i tuoi profili"; $a->strings["Edit Profiles"] = "Modifica i tuoi profili";
$a->strings["Manage/Edit profiles"] = "Gestisci i tuoi profili"; $a->strings["Manage/Edit profiles"] = "Gestisci i tuoi profili";
$a->strings["Edit Profile"] = "Modifica il profilo";
$a->strings["Edit your profile"] = "Modifica il tuo profilo"; $a->strings["Edit your profile"] = "Modifica il tuo profilo";
$a->strings["Your photos"] = "Le tue foto"; $a->strings["Your photos"] = "Le tue foto";
$a->strings["Your files"] = "I tuoi file"; $a->strings["Your files"] = "I tuoi file";
@ -727,6 +519,7 @@ $a->strings["%s - click to logout"] = "%s - clicca per uscire";
$a->strings["Remote authentication"] = "Accedi dal tuo hub"; $a->strings["Remote authentication"] = "Accedi dal tuo hub";
$a->strings["Click to authenticate to your home hub"] = "Clicca per farti riconoscere dal tuo hub principale"; $a->strings["Click to authenticate to your home hub"] = "Clicca per farti riconoscere dal tuo hub principale";
$a->strings["Home Page"] = "Bacheca"; $a->strings["Home Page"] = "Bacheca";
$a->strings["Register"] = "Registrati";
$a->strings["Create an account"] = "Crea un account"; $a->strings["Create an account"] = "Crea un account";
$a->strings["Help and documentation"] = "Guida e documentazione"; $a->strings["Help and documentation"] = "Guida e documentazione";
$a->strings["Apps"] = "App"; $a->strings["Apps"] = "App";
@ -758,6 +551,10 @@ $a->strings["Site Setup and Configuration"] = "Installazione e configurazione de
$a->strings["@name, #tag, ?doc, content"] = "@nome, #tag, ?guida, contenuto"; $a->strings["@name, #tag, ?doc, content"] = "@nome, #tag, ?guida, contenuto";
$a->strings["Please wait..."] = "Attendere..."; $a->strings["Please wait..."] = "Attendere...";
$a->strings["view full size"] = "guarda nelle dimensioni reali"; $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["No Subject"] = "Nessun titolo";
$a->strings["created a new post"] = "Ha creato un nuovo post"; $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["commented on %s's post"] = "ha commentato il post di %s";
@ -844,6 +641,7 @@ $a->strings["Infatuated"] = "Infatuato/a";
$a->strings["Dating"] = "Disponibile a un incontro"; $a->strings["Dating"] = "Disponibile a un incontro";
$a->strings["Unfaithful"] = "Infedele"; $a->strings["Unfaithful"] = "Infedele";
$a->strings["Sex Addict"] = "Sesso-dipendente"; $a->strings["Sex Addict"] = "Sesso-dipendente";
$a->strings["Friends"] = "Amici";
$a->strings["Friends/Benefits"] = "Amici con qualcosa in più"; $a->strings["Friends/Benefits"] = "Amici con qualcosa in più";
$a->strings["Casual"] = "Casual"; $a->strings["Casual"] = "Casual";
$a->strings["Engaged"] = "Impegnato"; $a->strings["Engaged"] = "Impegnato";
@ -874,6 +672,83 @@ $a->strings["want"] = "voglio";
$a->strings["wants"] = "vuole"; $a->strings["wants"] = "vuole";
$a->strings["likes"] = "gli piace"; $a->strings["likes"] = "gli piace";
$a->strings["dislikes"] = "non gli piace"; $a->strings["dislikes"] = "non gli piace";
$a->strings["Invalid data packet"] = "Dati ricevuti non validi";
$a->strings["Unable to verify channel signature"] = "Impossibile verificare la firma elettronica del canale";
$a->strings["Unable to verify site signature for %s"] = "Impossibile verificare la firma elettronica del sito %s";
$a->strings["invalid target signature"] = "la firma ricevuta non è valida";
$a->strings["Frequently"] = "Frequentemente";
$a->strings["Hourly"] = "Ogni ora";
$a->strings["Twice daily"] = "Due volte al giorno";
$a->strings["Daily"] = "Ogni giorno";
$a->strings["Weekly"] = "Ogni settimana";
$a->strings["Monthly"] = "Ogni mese";
$a->strings["Friendica"] = "Friendica";
$a->strings["OStatus"] = "OStatus";
$a->strings["RSS/Atom"] = "RSS/Atom";
$a->strings["Email"] = "Email";
$a->strings["Diaspora"] = "Diaspora";
$a->strings["Facebook"] = "Facebook";
$a->strings["Zot"] = "Zot";
$a->strings["LinkedIn"] = "LinkedIn";
$a->strings["XMPP/IM"] = "XMPP/IM";
$a->strings["MySpace"] = "MySpace";
$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["prev"] = "prec"; $a->strings["prev"] = "prec";
$a->strings["first"] = "inizio"; $a->strings["first"] = "inizio";
$a->strings["last"] = "fine"; $a->strings["last"] = "fine";
@ -881,11 +756,7 @@ $a->strings["next"] = "succ";
$a->strings["older"] = "più recenti"; $a->strings["older"] = "più recenti";
$a->strings["newer"] = "più nuovi"; $a->strings["newer"] = "più nuovi";
$a->strings["No connections"] = "Nessun contatto"; $a->strings["No connections"] = "Nessun contatto";
$a->strings["%d Connection"] = array( $a->strings["View all %s connections"] = "Mostra tutti i %s contatti";
0 => "%d contatto",
1 => "%d contatti",
);
$a->strings["View Connections"] = "Elenco contatti";
$a->strings["Save"] = "Salva"; $a->strings["Save"] = "Salva";
$a->strings["poke"] = "poke"; $a->strings["poke"] = "poke";
$a->strings["ping"] = "ping"; $a->strings["ping"] = "ping";
@ -937,6 +808,58 @@ $a->strings["Blocks"] = "Block";
$a->strings["Menus"] = "Menù"; $a->strings["Menus"] = "Menù";
$a->strings["Layouts"] = "Layout"; $a->strings["Layouts"] = "Layout";
$a->strings["Pages"] = "Pagine"; $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["System"] = "Sistema"; $a->strings["System"] = "Sistema";
$a->strings["Create Personal App"] = "Crea app personale"; $a->strings["Create Personal App"] = "Crea app personale";
$a->strings["Edit Personal App"] = "Modifica app personale"; $a->strings["Edit Personal App"] = "Modifica app personale";
@ -945,10 +868,11 @@ $a->strings["Suggestions"] = "Suggerimenti";
$a->strings["See more..."] = "Altro..."; $a->strings["See more..."] = "Altro...";
$a->strings["You have %1$.0f of %2$.0f allowed connections."] = "Hai attivato %1$.0f delle %2$.0f connessioni permesse."; $a->strings["You have %1$.0f of %2$.0f allowed connections."] = "Hai attivato %1$.0f delle %2$.0f connessioni permesse.";
$a->strings["Add New Connection"] = "Aggiungi un contatto"; $a->strings["Add New Connection"] = "Aggiungi un contatto";
$a->strings["Enter the channel address"] = "Scrivi l'indirizzo del canale"; $a->strings["Enter channel address"] = "Indirizzo del canale";
$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Per esempio: mario@pippo.it oppure http://pluto.com/barbara"; $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["Notes"] = "Note";
$a->strings["Remove term"] = "Rimuovi termine"; $a->strings["Remove term"] = "Rimuovi termine";
$a->strings["Saved Searches"] = "Ricerche salvate";
$a->strings["Archives"] = "Archivi"; $a->strings["Archives"] = "Archivi";
$a->strings["Me"] = "Me"; $a->strings["Me"] = "Me";
$a->strings["Family"] = "Famiglia"; $a->strings["Family"] = "Famiglia";
@ -964,6 +888,7 @@ $a->strings["Connected apps"] = "App connesse";
$a->strings["Export channel"] = "Esporta il canale"; $a->strings["Export channel"] = "Esporta il canale";
$a->strings["Connection Default Permissions"] = "Permessi predefiniti dei nuovi contatti"; $a->strings["Connection Default Permissions"] = "Permessi predefiniti dei nuovi contatti";
$a->strings["Premium Channel Settings"] = "Canale premium - impostazioni"; $a->strings["Premium Channel Settings"] = "Canale premium - impostazioni";
$a->strings["Channel Sources"] = "Sorgenti del canale";
$a->strings["Private Mail Menu"] = "Menu messaggi privati"; $a->strings["Private Mail Menu"] = "Menu messaggi privati";
$a->strings["Combined View"] = "Vista combinata"; $a->strings["Combined View"] = "Vista combinata";
$a->strings["Conversations"] = "Conversazioni"; $a->strings["Conversations"] = "Conversazioni";
@ -984,6 +909,7 @@ $a->strings["Chat Rooms"] = "Chat";
$a->strings["Bookmarked Chatrooms"] = "Chat nei segnalibri"; $a->strings["Bookmarked Chatrooms"] = "Chat nei segnalibri";
$a->strings["Suggested Chatrooms"] = "Chat suggerite"; $a->strings["Suggested Chatrooms"] = "Chat suggerite";
$a->strings["photo/image"] = "foto/immagine"; $a->strings["photo/image"] = "foto/immagine";
$a->strings["Rating Tools"] = "Valutazione";
$a->strings["Rate Me"] = "Valutami"; $a->strings["Rate Me"] = "Valutami";
$a->strings["View Ratings"] = "Vedi le valutazioni ricevute"; $a->strings["View Ratings"] = "Vedi le valutazioni ricevute";
$a->strings["Public Hubs"] = "Hub pubblici"; $a->strings["Public Hubs"] = "Hub pubblici";
@ -1007,10 +933,70 @@ $a->strings["Plugin Features"] = "Plugin";
$a->strings["User registrations waiting for confirmation"] = "Registrazioni in attesa"; $a->strings["User registrations waiting for confirmation"] = "Registrazioni in attesa";
$a->strings["View Photo"] = "Guarda la foto"; $a->strings["View Photo"] = "Guarda la foto";
$a->strings["Edit Album"] = "Modifica album"; $a->strings["Edit Album"] = "Modifica album";
$a->strings["Invalid data packet"] = "Dati ricevuti non validi"; $a->strings["General Features"] = "Funzionalità di base";
$a->strings["Unable to verify channel signature"] = "Impossibile verificare la firma elettronica del canale"; $a->strings["Content Expiration"] = "Scadenza";
$a->strings["Unable to verify site signature for %s"] = "Impossibile verificare la firma elettronica del sito %s"; $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";
$a->strings["invalid target signature"] = "la firma ricevuta non è valida"; $a->strings["Multiple Profiles"] = "Profili multipli";
$a->strings["Ability to create multiple profiles"] = "Abilitazione a creare profili multipli";
$a->strings["Advanced Profiles"] = "Profili avanzati";
$a->strings["Additional profile sections and selections"] = "Informazioni aggiuntive del profilo";
$a->strings["Profile Import/Export"] = "Importa/esporta il profilo";
$a->strings["Save and load profile details across sites/channels"] = "Salva o ripristina le informazioni del profilo su siti diversi";
$a->strings["Web Pages"] = "Pagine web";
$a->strings["Provide managed web pages on your channel"] = "Attiva la creazione di pagine web sul tuo canale";
$a->strings["Hide Rating"] = "Nascondi le valutazioni";
$a->strings["Hide the rating buttons on your channel and profile pages. Note: People can still rate you somewhere else."] = "Nascondi i bottoni delle valutazioni sul tuo canale e sul profilo. Nota: le persone potranno comunque esprimere una valutazione altrove.";
$a->strings["Private Notes"] = "Note private";
$a->strings["Enables a tool to store notes and reminders (note: not encrypted)"] = "Abilita il riquadro per scrivere annotazioni (in chiaro)";
$a->strings["Navigation Channel Select"] = "Scegli il canale attivo dal menu";
$a->strings["Change channels directly from within the navigation dropdown menu"] = "Scegli il canale attivo direttamente dal menu di navigazione";
$a->strings["Photo Location"] = "Posizione geografica";
$a->strings["If location data is available on uploaded photos, link this to a map."] = "Collega la foto a una mappa quando contiene indicazioni geografiche.";
$a->strings["Expert Mode"] = "Modalità esperto";
$a->strings["Enable Expert Mode to provide advanced configuration options"] = "Abilita la modalità esperto per vedere le opzioni di configurazione avanzate";
$a->strings["Premium Channel"] = "Canale premium";
$a->strings["Allows you to set restrictions and terms on those that connect with your channel"] = "Ti permette di impostare restrizioni e termini d'uso per il canale";
$a->strings["Post Composition Features"] = "Modalità di scrittura post";
$a->strings["Use Markdown"] = "Usa il markdown";
$a->strings["Allow use of \"Markdown\" to format posts"] = "Consenti l'uso del markdown per formattare i post";
$a->strings["Large Photos"] = "Foto grandi";
$a->strings["Include large (1024px) photo thumbnails in posts. If not enabled, use small (640px) photo thumbnails"] = "Includi anteprime grandi per le foto dei tuoi post (1024px). Altrimenti saranno mostrate anteprime più piccole (640px)";
$a->strings["Automatically import channel content from other channels or feeds"] = "Importa automaticamente il contenuto del canale da altri canali o feed";
$a->strings["Even More Encryption"] = "Cifratura addizionale";
$a->strings["Allow optional encryption of content end-to-end with a shared secret key"] = "Rendi possibile la crifratura aggiuntiva tra mittente e destinatario usando una parola chiave conosciuta a entrambi";
$a->strings["Enable Voting Tools"] = "Permetti i post con votazione";
$a->strings["Provide a class of post which others can vote on"] = "Rende possibile la creazione di post in cui sarà possibile votare";
$a->strings["Delayed Posting"] = "Pubblicazione ritardata";
$a->strings["Allow posts to be published at a later date"] = "Per scegliere una data e un'ora a cui far uscire i post";
$a->strings["Suppress Duplicate Posts/Comments"] = "Impedisci post e commenti duplicati";
$a->strings["Prevent posts with identical content to be published with less than two minutes in between submissions."] = "Scarta post e commenti se sono identici ad altri inviati meno di due minuti prima.";
$a->strings["Network and Stream Filtering"] = "Filtraggio dei contenuti";
$a->strings["Search by Date"] = "Ricerca per data";
$a->strings["Ability to select posts by date ranges"] = "Per selezionare i post in un intervallo tra date";
$a->strings["Enable management and selection of privacy groups"] = "Abilita i gruppi di canali";
$a->strings["Save search terms for re-use"] = "Salva i termini delle ricerche per poterle ripetere";
$a->strings["Network Personal Tab"] = "Attività personale";
$a->strings["Enable tab to display only Network posts that you've interacted on"] = "Abilita il link per mostrare solamente i contenuti con cui hai interagito";
$a->strings["Network New Tab"] = "Contenuti nuovi";
$a->strings["Enable tab to display all new Network activity"] = "Abilita il link per visualizzare solo i nuovi contenuti";
$a->strings["Affinity Tool"] = "Filtro per affinità";
$a->strings["Filter stream activity by depth of relationships"] = "Permette di selezionare i contenuti in base al livello di amicizia";
$a->strings["Connection Filtering"] = "Filtro sui contatti";
$a->strings["Filter incoming posts from connections based on keywords/content"] = "Filtra i post che ricevi con parole chiave";
$a->strings["Suggest Channels"] = "Suggerisci canali";
$a->strings["Show channel suggestions"] = "Mostra alcuni canali che potrebbero interessarti";
$a->strings["Post/Comment Tools"] = "Gestione post e commenti";
$a->strings["Community Tagging"] = "Tag della comunità";
$a->strings["Ability to tag existing posts"] = "Permetti l'aggiunta di tag su post già esistenti";
$a->strings["Post Categories"] = "Categorie dei post";
$a->strings["Add categories to your posts"] = "Abilita le categorie per i tuoi post";
$a->strings["Ability to file posts under folders"] = "Abilita la raccolta dei tuoi articoli in cartelle";
$a->strings["Dislike Posts"] = "Non mi piace";
$a->strings["Ability to dislike posts/comments"] = "Abilità la funzionalità \"non mi piace\" per i tuoi post";
$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["Not Found"] = "Non disponibile"; $a->strings["Not Found"] = "Non disponibile";
$a->strings["Page not found."] = "Pagina non trovata."; $a->strings["Page not found."] = "Pagina non trovata.";
$a->strings["Some blurb about what to do when you're new here"] = "Qualche suggerimento per i nuovi utenti su cosa fare"; $a->strings["Some blurb about what to do when you're new here"] = "Qualche suggerimento per i nuovi utenti su cosa fare";
@ -1099,7 +1085,7 @@ $a->strings["Poll interval"] = "Intervallo di polling";
$a->strings["Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval."] = "Numero di secondi di cui può essere ritardato il polling in background, per ridurre il carico del sistema. Se 0, verrà usato lo stesso valore del 'Recapito ritardato'."; $a->strings["Delay background polling processes by this many seconds to reduce system load. If 0, use delivery interval."] = "Numero di secondi di cui può essere ritardato il polling in background, per ridurre il carico del sistema. Se 0, verrà usato lo stesso valore del 'Recapito ritardato'.";
$a->strings["Maximum Load Average"] = "Carico massimo medio"; $a->strings["Maximum Load Average"] = "Carico massimo medio";
$a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Carico di sistema massimo perché i processi di recapito e polling siano ritardati - il valore predefinito è 50."; $a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Carico di sistema massimo perché i processi di recapito e polling siano ritardati - il valore predefinito è 50.";
$a->strings["Expiration period in days for imported (matrix/network) content"] = "Scadenza dei contenuti importati da altri siti (in giorni)"; $a->strings["Expiration period in days for imported (grid/network) content"] = "Scadenza dei contenuti importati da altri siti (in giorni)";
$a->strings["0 for no expiration of imported content"] = "0 per non avere scadenza"; $a->strings["0 for no expiration of imported content"] = "0 per non avere scadenza";
$a->strings["Off"] = "Off"; $a->strings["Off"] = "Off";
$a->strings["On"] = "On"; $a->strings["On"] = "On";
@ -1187,6 +1173,10 @@ $a->strings["Enable"] = "Attiva";
$a->strings["Toggle"] = "Attiva/disattiva"; $a->strings["Toggle"] = "Attiva/disattiva";
$a->strings["Author: "] = "Autore:"; $a->strings["Author: "] = "Autore:";
$a->strings["Maintainer: "] = "Gestore:"; $a->strings["Maintainer: "] = "Gestore:";
$a->strings["Minimum project version: "] = "Minima versione hubzilla";
$a->strings["Maximum project version: "] = "Massima versione hubzilla";
$a->strings["Minimum PHP version: "] = "Minima versione PHP:";
$a->strings["Disabled - version incompatibility"] = "Disabilitato - incompatibilità di versione";
$a->strings["No themes found."] = "Nessun tema trovato."; $a->strings["No themes found."] = "Nessun tema trovato.";
$a->strings["Screenshot"] = "Istantanea dello schermo"; $a->strings["Screenshot"] = "Istantanea dello schermo";
$a->strings["[Experimental]"] = "[Sperimentale]"; $a->strings["[Experimental]"] = "[Sperimentale]";
@ -1263,21 +1253,27 @@ $a->strings["Blocked"] = "Bloccati";
$a->strings["Ignored"] = "Ignorati"; $a->strings["Ignored"] = "Ignorati";
$a->strings["Hidden"] = "Nascosti"; $a->strings["Hidden"] = "Nascosti";
$a->strings["Archived"] = "Archiviati"; $a->strings["Archived"] = "Archiviati";
$a->strings["Suggest new connections"] = "Suggerisci nuovi contatti";
$a->strings["New Connections"] = "Nuovi contatti"; $a->strings["New Connections"] = "Nuovi contatti";
$a->strings["Show pending (new) connections"] = "Richieste di contatto in attesa"; $a->strings["Show pending (new) connections"] = "Richieste di contatto in attesa";
$a->strings["All Connections"] = "Tutti i contatti"; $a->strings["All Connections"] = "Tutti i contatti";
$a->strings["Show all connections"] = "Mostra tutti i contatti"; $a->strings["Show all connections"] = "Mostra tutti i contatti";
$a->strings["Unblocked"] = "Non bloccati";
$a->strings["Only show unblocked connections"] = "Mostra solo i contatti non bloccati";
$a->strings["Only show blocked connections"] = "Mostra solo i contatti bloccati"; $a->strings["Only show blocked connections"] = "Mostra solo i contatti bloccati";
$a->strings["Only show ignored connections"] = "Mostra solo i contatti ignorati"; $a->strings["Only show ignored connections"] = "Mostra solo i contatti ignorati";
$a->strings["Only show archived connections"] = "Mostra solo i contatti archiviati"; $a->strings["Only show archived connections"] = "Mostra solo i contatti archiviati";
$a->strings["Only show hidden connections"] = "Mostra solo i contatti nascosti"; $a->strings["Only show hidden connections"] = "Mostra solo i contatti nascosti";
$a->strings["Pending approval"] = "In attesa di conferma";
$a->strings["%1\$s [%2\$s]"] = "%1\$s [%2\$s]"; $a->strings["%1\$s [%2\$s]"] = "%1\$s [%2\$s]";
$a->strings["Edit connection"] = "Modifica il contatto"; $a->strings["Edit connection"] = "Modifica il contatto";
$a->strings["Delete connection"] = "Elimina il contatto";
$a->strings["Channel address"] = "Indirizzo del canale";
$a->strings["Network"] = "Network";
$a->strings["Connected"] = "In contatto";
$a->strings["Approve connection"] = "Approva questo contatto";
$a->strings["Ignore connection"] = "Ignora il contatto";
$a->strings["Ignore"] = "Ignora";
$a->strings["Recent activity"] = "Attività recenti";
$a->strings["Search your connections"] = "Cerca tra i contatti"; $a->strings["Search your connections"] = "Cerca tra i contatti";
$a->strings["Finding: "] = "Ricerca: "; $a->strings["Connections search"] = "Ricerca tra i contatti";
$a->strings["Could not access contact record."] = "Non è possibile accedere alle informazioni sul contatto."; $a->strings["Could not access contact record."] = "Non è possibile accedere alle informazioni sul contatto.";
$a->strings["Could not locate selected profile."] = "Non riesco a trovare il profilo selezionato."; $a->strings["Could not locate selected profile."] = "Non riesco a trovare il profilo selezionato.";
$a->strings["Connection updated."] = "Contatto aggiornato."; $a->strings["Connection updated."] = "Contatto aggiornato.";
@ -1295,7 +1291,6 @@ $a->strings["View recent posts and comments"] = "Leggi i post recenti e i commen
$a->strings["Block (or Unblock) all communications with this connection"] = "Blocca ogni interazione con questo contatto (abilita/disabilita)"; $a->strings["Block (or Unblock) all communications with this connection"] = "Blocca ogni interazione con questo contatto (abilita/disabilita)";
$a->strings["This connection is blocked!"] = "Questa connessione è tra quelle bloccate!"; $a->strings["This connection is blocked!"] = "Questa connessione è tra quelle bloccate!";
$a->strings["Unignore"] = "Non ignorare"; $a->strings["Unignore"] = "Non ignorare";
$a->strings["Ignore"] = "Ignora";
$a->strings["Ignore (or Unignore) all inbound communications from this connection"] = "Ignora tutte le comunicazioni in arrivo da questo contatto (abilita/disabilita)"; $a->strings["Ignore (or Unignore) all inbound communications from this connection"] = "Ignora tutte le comunicazioni in arrivo da questo contatto (abilita/disabilita)";
$a->strings["This connection is ignored!"] = "Questa connessione è tra quelle ignorate!"; $a->strings["This connection is ignored!"] = "Questa connessione è tra quelle ignorate!";
$a->strings["Unarchive"] = "Non archiviare"; $a->strings["Unarchive"] = "Non archiviare";
@ -1326,9 +1321,6 @@ $a->strings["words one per line or #tags or /patterns/ or lang=xx, leave blank t
$a->strings["Do not import posts with this text"] = "Non importare i post con queste parole chiave"; $a->strings["Do not import posts with this text"] = "Non importare i post con queste parole chiave";
$a->strings["This information is public!"] = "Questa informazione è pubblica!"; $a->strings["This information is public!"] = "Questa informazione è pubblica!";
$a->strings["Connection Pending Approval"] = "Contatti in attesa di approvazione"; $a->strings["Connection Pending Approval"] = "Contatti in attesa di approvazione";
$a->strings["Connection Request"] = "Richiesta di entrare in contatto";
$a->strings["(%s) would like to connect with you. Please approve this connection to allow communication."] = "(%s) vorrebbe entrare in contatto con te. Per permettere la comunicazione è necessario che tu approvi.";
$a->strings["Approve Later"] = "Approva più tardi";
$a->strings["inherited"] = "derivato"; $a->strings["inherited"] = "derivato";
$a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "Seleziona il profilo che vuoi mostrare a %s dopo che ha effettuato l'accesso."; $a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "Seleziona il profilo che vuoi mostrare a %s dopo che ha effettuato l'accesso.";
$a->strings["Their Settings"] = "Permessi concessi a te"; $a->strings["Their Settings"] = "Permessi concessi a te";
@ -1446,15 +1438,15 @@ $a->strings["Contact not found."] = "Contatto non trovato.";
$a->strings["Friend suggestion sent."] = "Suggerimento di amicizia inviato."; $a->strings["Friend suggestion sent."] = "Suggerimento di amicizia inviato.";
$a->strings["Suggest Friends"] = "Suggerisci amici"; $a->strings["Suggest Friends"] = "Suggerisci amici";
$a->strings["Suggest a friend for %s"] = "Suggerisci un amico a %s"; $a->strings["Suggest a friend for %s"] = "Suggerisci un amico a %s";
$a->strings["Collection created."] = "L'insieme di canali è stato creato."; $a->strings["Privacy group created."] = "Gruppo di canali creato";
$a->strings["Could not create collection."] = "Impossibile creare l'insieme."; $a->strings["Could not create privacy group."] = "Impossibile creare il gruppo di canali.";
$a->strings["Collection updated."] = "Insieme aggiornato."; $a->strings["Privacy group updated."] = "Gruppo di canali aggiornato.";
$a->strings["Create a collection of channels."] = "Crea un insieme di canali."; $a->strings["Create a group of channels."] = "Crea un gruppo di canali.";
$a->strings["Collection Name: "] = "Nome dell'insieme:"; $a->strings["Privacy group name: "] = "Nome del gruppo di canali:";
$a->strings["Members are visible to other channels"] = "I membri potranno vedere gli altri canali dell'insieme"; $a->strings["Members are visible to other channels"] = "I membri potranno vedere gli altri canali dell'insieme";
$a->strings["Collection removed."] = "Insieme rimosso."; $a->strings["Privacy group removed."] = "Gruppo di canali rimosso.";
$a->strings["Unable to remove collection."] = "Impossibile rimuovere l'insieme."; $a->strings["Unable to remove privacy group."] = "Impossibile rimuovere il gruppo di canali.";
$a->strings["Collection Editor"] = "Modifica l'insieme"; $a->strings["Privacy group editor"] = "Editor dei gruppi di canali";
$a->strings["Members"] = "Membri"; $a->strings["Members"] = "Membri";
$a->strings["All Connected Channels"] = "Tutti i canali connessi"; $a->strings["All Connected Channels"] = "Tutti i canali connessi";
$a->strings["Click on a channel to add or remove."] = "Clicca su un canale per aggiungerlo o rimuoverlo."; $a->strings["Click on a channel to add or remove."] = "Clicca su un canale per aggiungerlo o rimuoverlo.";
@ -1563,21 +1555,9 @@ $a->strings["Sync now"] = "Sincronizza ora";
$a->strings["Please wait several minutes between consecutive operations."] = "Si raccomanda di attendere alcuni minuti prima di effettuare una nuova sincronizzazione."; $a->strings["Please wait several minutes between consecutive operations."] = "Si raccomanda di attendere alcuni minuti prima di effettuare una nuova sincronizzazione.";
$a->strings["When possible, drop a location by logging into that website/hub and removing your channel."] = "Quando possibile, riduci il numero di cloni del tuo canale effettuando il login sul relativo hub e rimuovendoli."; $a->strings["When possible, drop a location by logging into that website/hub and removing your channel."] = "Quando possibile, riduci il numero di cloni del tuo canale effettuando il login sul relativo hub e rimuovendoli.";
$a->strings["Use this form to drop the location if the hub is no longer operating."] = "Usa questo modulo per abbandonare un canale su un hub che non è più funzionante."; $a->strings["Use this form to drop the location if the hub is no longer operating."] = "Usa questo modulo per abbandonare un canale su un hub che non è più funzionante.";
$a->strings["No valid account found."] = "Nessun account valido trovato."; $a->strings["sent you a private message"] = "ti ha inviato un messaggio privato";
$a->strings["Password reset request issued. Check your email."] = "La richiesta per reimpostare la password è stata inviata. Controlla la tua email."; $a->strings["added your channel"] = "ha aggiunto il tuo canale";
$a->strings["Site Member (%s)"] = "Utente del sito (%s)"; $a->strings["posted an event"] = "ha creato un evento";
$a->strings["Password reset requested at %s"] = "È stato richiesto di reimpostare password su %s";
$a->strings["Request could not be verified. (You may have previously submitted it.) Password reset failed."] = "La richiesta non può essere verificata (potresti averla già usata precedentemente). La password non sarà reimpostata.";
$a->strings["Your password has been reset as requested."] = "La password è stata reimpostata come richiesto.";
$a->strings["Your new password is"] = "La tua nuova password è";
$a->strings["Save or copy your new password - and then"] = "Salva o copia la tua nuova password, quindi";
$a->strings["click here to login"] = "clicca qui per accedere";
$a->strings["Your password may be changed from the <em>Settings</em> page after successful login."] = "Puoi cambiare la tua password dalla pagina delle <em>Impostazioni</em> dopo aver effettuato l'accesso.";
$a->strings["Your password has changed at %s"] = "La tua password su %s è cambiata";
$a->strings["Forgot your Password?"] = "Hai dimenticato la password?";
$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Inserisci il tuo indirizzo email per reimpostare la password. Dopo aver inviato la richiesta, controlla l'email e troverai le istruzioni per continuare.";
$a->strings["Email Address"] = "Indirizzo email";
$a->strings["Reset"] = "Reimposta";
$a->strings["Hub not found."] = "Hub non trovato."; $a->strings["Hub not found."] = "Hub non trovato.";
$a->strings["Unable to lookup recipient."] = "Impossibile associare un destinatario."; $a->strings["Unable to lookup recipient."] = "Impossibile associare un destinatario.";
$a->strings["Unable to communicate with requested channel."] = "Impossibile comunicare con il canale richiesto."; $a->strings["Unable to communicate with requested channel."] = "Impossibile comunicare con il canale richiesto.";
@ -1670,8 +1650,8 @@ $a->strings["No such group"] = "Impossibile trovare l'insieme";
$a->strings["No such channel"] = "Canale sconosciuto"; $a->strings["No such channel"] = "Canale sconosciuto";
$a->strings["forum"] = "forum"; $a->strings["forum"] = "forum";
$a->strings["Search Results For:"] = "Cerca risultati con:"; $a->strings["Search Results For:"] = "Cerca risultati con:";
$a->strings["Collection is empty"] = "L'insieme di canali è vuoto"; $a->strings["Privacy group is empty"] = "Il gruppo di canali è vuoto";
$a->strings["Collection: "] = "Insieme:"; $a->strings["Privacy group: "] = "Gruppo di canali:";
$a->strings["Invalid connection."] = "Contatto non valido."; $a->strings["Invalid connection."] = "Contatto non valido.";
$a->strings["Add a Channel"] = "Aggiungi un canale"; $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["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.";
@ -1736,9 +1716,6 @@ $a->strings["In This Photo:"] = "In questa foto:";
$a->strings["Map"] = "Mappa"; $a->strings["Map"] = "Mappa";
$a->strings["View Album"] = "Guarda l'album"; $a->strings["View Album"] = "Guarda l'album";
$a->strings["Recent Photos"] = "Foto recenti"; $a->strings["Recent Photos"] = "Foto recenti";
$a->strings["sent you a private message"] = "ti ha inviato un messaggio privato";
$a->strings["added your channel"] = "ha aggiunto il tuo canale";
$a->strings["posted an event"] = "ha creato un evento";
$a->strings["Poke/Prod"] = "Poke/Prod"; $a->strings["Poke/Prod"] = "Poke/Prod";
$a->strings["poke, prod or do other things to somebody"] = "Manda un poke, un prod o altro"; $a->strings["poke, prod or do other things to somebody"] = "Manda un poke, un prod o altro";
$a->strings["Recipient"] = "Destinatario"; $a->strings["Recipient"] = "Destinatario";
@ -1847,7 +1824,6 @@ $a->strings["Remote Channel [%s] (not yet known on this site)"] = "Canale remoto
$a->strings["Rating (this information is public)"] = "Valutazione (visibile a tutti)"; $a->strings["Rating (this information is public)"] = "Valutazione (visibile a tutti)";
$a->strings["Optionally explain your rating (this information is public)"] = "Commento alla valutazione (facoltativo, visibile a tutti)"; $a->strings["Optionally explain your rating (this information is public)"] = "Commento alla valutazione (facoltativo, visibile a tutti)";
$a->strings["No ratings"] = "Nessuna valutazione"; $a->strings["No ratings"] = "Nessuna valutazione";
$a->strings["Ratings"] = "Valutazioni";
$a->strings["Rating: "] = "Valutazione:"; $a->strings["Rating: "] = "Valutazione:";
$a->strings["Website: "] = "Sito web:"; $a->strings["Website: "] = "Sito web:";
$a->strings["Description: "] = "Descrizione:"; $a->strings["Description: "] = "Descrizione:";
@ -1861,6 +1837,7 @@ $a->strings["Passwords do not match."] = "Le password non corrispondono.";
$a->strings["Registration successful. Please check your email for validation instructions."] = "La registrazione è terminata correttamente. Per continuare controlla l'email che ti è stata inviata."; $a->strings["Registration successful. Please check your email for validation instructions."] = "La registrazione è terminata correttamente. Per continuare controlla l'email che ti è stata inviata.";
$a->strings["Your registration is pending approval by the site owner."] = "La tua richiesta è in attesa di approvazione da parte dell'amministratore di questo hub."; $a->strings["Your registration is pending approval by the site owner."] = "La tua richiesta è in attesa di approvazione da parte dell'amministratore di questo hub.";
$a->strings["Your registration can not be processed."] = "La tua registrazione non puo' essere processata."; $a->strings["Your registration can not be processed."] = "La tua registrazione non puo' essere processata.";
$a->strings["Registration on this site is disabled."] = "Su questo sito la registrazione non è permessa";
$a->strings["Registration on this site/hub is by approval only."] = "La registrazione su questo hub è soggetta ad approvazione."; $a->strings["Registration on this site/hub is by approval only."] = "La registrazione su questo hub è soggetta ad approvazione.";
$a->strings["<a href=\"pubsites\">Register at another affiliated site/hub</a>"] = "<a href=\"pubsites\">Registrati su un altro hub affiliato</a>"; $a->strings["<a href=\"pubsites\">Register at another affiliated site/hub</a>"] = "<a href=\"pubsites\">Registrati su un altro hub affiliato</a>";
$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "Questo hub ha superato il numero di registrazioni giornaliere consentite. Prova di nuovo domani."; $a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "Questo hub ha superato il numero di registrazioni giornaliere consentite. Prova di nuovo domani.";
@ -1869,6 +1846,7 @@ $a->strings["I accept the %s for this website"] = "Accetto le %s di questo sito"
$a->strings["I am over 13 years of age and accept the %s for this website"] = "Ho più di 13 anni e accetto le %s di questo sito"; $a->strings["I am over 13 years of age and accept the %s for this website"] = "Ho più di 13 anni e accetto le %s di questo sito";
$a->strings["Membership on this site is by invitation only."] = "Per registrarsi su questo hub è necessario un invito."; $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["Please enter your invitation code"] = "Inserisci il codice dell'invito";
$a->strings["Enter your name"] = "Il tuo nome";
$a->strings["Your email address"] = "Il tuo indirizzo email"; $a->strings["Your email address"] = "Il tuo indirizzo email";
$a->strings["Choose a password"] = "Scegli una password"; $a->strings["Choose a password"] = "Scegli una password";
$a->strings["Please re-enter your password"] = "Ripeti la password per verifica"; $a->strings["Please re-enter your password"] = "Ripeti la password per verifica";
@ -1949,10 +1927,10 @@ $a->strings["Link post titles to source"] = "Il link del titolo di un post porta
$a->strings["System Page Layout Editor - (advanced)"] = "Modifica i layout di sistema (avanzato)"; $a->strings["System Page Layout Editor - (advanced)"] = "Modifica i layout di sistema (avanzato)";
$a->strings["Use blog/list mode on channel page"] = "Mostra il canale nella modalità blog"; $a->strings["Use blog/list mode on channel page"] = "Mostra il canale nella modalità blog";
$a->strings["(comments displayed separately)"] = "(i commenti sono mostrati separatamente)"; $a->strings["(comments displayed separately)"] = "(i commenti sono mostrati separatamente)";
$a->strings["Use blog/list mode on matrix page"] = "Mostra la tua rete in modalità blog"; $a->strings["Use blog/list mode on grid page"] = "Mostra la tua rete in modalità blog";
$a->strings["Channel page max height of content (in pixels)"] = "Altezza massima dei contenuti del canale (in pixel)"; $a->strings["Channel page max height of content (in pixels)"] = "Altezza massima dei contenuti del canale (in pixel)";
$a->strings["click to expand content exceeding this height"] = "dovrai cliccare sul post per mostrare i contenuti di dimensioni maggiori"; $a->strings["click to expand content exceeding this height"] = "dovrai cliccare sul post per mostrare i contenuti di dimensioni maggiori";
$a->strings["Matrix page max height of content (in pixels)"] = "Altezza massima dei contenuti della tua rete (in pixel)"; $a->strings["Grid page max height of content (in pixels)"] = "Altezza massima dei contenuti della tua rete (in pixel)";
$a->strings["Nobody except yourself"] = "Nessuno tranne te"; $a->strings["Nobody except yourself"] = "Nessuno tranne te";
$a->strings["Only those you specifically allow"] = "Solo chi riceve il mio permesso"; $a->strings["Only those you specifically allow"] = "Solo chi riceve il mio permesso";
$a->strings["Approved connections"] = "Contatti approvati"; $a->strings["Approved connections"] = "Contatti approvati";
@ -1985,7 +1963,7 @@ $a->strings["Allow others to tag your posts"] = "Permetti ad altri di taggare i
$a->strings["Often used by the community to retro-actively flag inappropriate content"] = "Usato spesso dalla comunità per marcare contenuti inappropriati già esistenti"; $a->strings["Often used by the community to retro-actively flag inappropriate content"] = "Usato spesso dalla comunità per marcare contenuti inappropriati già esistenti";
$a->strings["Advanced Privacy Settings"] = "Impostazioni di privacy avanzate"; $a->strings["Advanced Privacy Settings"] = "Impostazioni di privacy avanzate";
$a->strings["Expire other channel content after this many days"] = "Giorni dopo cui mettere in scadenza gli altri contenuti del canale"; $a->strings["Expire other channel content after this many days"] = "Giorni dopo cui mettere in scadenza gli altri contenuti del canale";
$a->strings["0 or blank prevents expiration"] = "Lascia vuoto oppure 0 per non impostare scadenze"; $a->strings["0 or blank to use the website limit. The website expires after %d days."] = "0 o vuoto per usare i valori predefiniti. Per questo sito la scadenza è %d giorni. ";
$a->strings["Maximum Friend Requests/Day:"] = "Numero massimo giornaliero di richieste di amicizia:"; $a->strings["Maximum Friend Requests/Day:"] = "Numero massimo giornaliero di richieste di amicizia:";
$a->strings["May reduce spam activity"] = "Serve a ridurre lo spam"; $a->strings["May reduce spam activity"] = "Serve a ridurre lo spam";
$a->strings["Default Post Permissions"] = "Permessi predefiniti per i post"; $a->strings["Default Post Permissions"] = "Permessi predefiniti per i post";
@ -2007,7 +1985,7 @@ $a->strings["You receive a friend suggestion"] = "Ti viene suggerito un amico";
$a->strings["You are tagged in a post"] = "Sei taggato in un post"; $a->strings["You are tagged in a post"] = "Sei taggato in un post";
$a->strings["You are poked/prodded/etc. in a post"] = "Ricevi un poke in un post"; $a->strings["You are poked/prodded/etc. in a post"] = "Ricevi un poke in un post";
$a->strings["Show visual notifications including:"] = "Mostra queste notifiche a schermo:"; $a->strings["Show visual notifications including:"] = "Mostra queste notifiche a schermo:";
$a->strings["Unseen matrix activity"] = "Nuove attività nella rete"; $a->strings["Unseen grid activity"] = "Nuove attività nella rete";
$a->strings["Unseen channel activity"] = "Novità nei canali"; $a->strings["Unseen channel activity"] = "Novità nei canali";
$a->strings["Unseen private messages"] = "Nuovi messaggi privati"; $a->strings["Unseen private messages"] = "Nuovi messaggi privati";
$a->strings["Recommended"] = "Consigliato"; $a->strings["Recommended"] = "Consigliato";
@ -2118,6 +2096,22 @@ $a->strings["The database configuration file \".htconfig.php\" could not be writ
$a->strings["Errors encountered creating database tables."] = "La creazione delle tabelle del database ha generato errori."; $a->strings["Errors encountered creating database tables."] = "La creazione delle tabelle del database ha generato errori.";
$a->strings["<h1>What next</h1>"] = "<h1>I prossimi passi</h1>"; $a->strings["<h1>What next</h1>"] = "<h1>I prossimi passi</h1>";
$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "IMPORTANTE: Devi creare [manualmente] la pianificazione del polling."; $a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the poller."] = "IMPORTANTE: Devi creare [manualmente] la pianificazione del polling.";
$a->strings["No valid account found."] = "Nessun account valido trovato.";
$a->strings["Password reset request issued. Check your email."] = "La richiesta per reimpostare la password è stata inviata. Controlla la tua email.";
$a->strings["Site Member (%s)"] = "Utente del sito (%s)";
$a->strings["Password reset requested at %s"] = "È stato richiesto di reimpostare password su %s";
$a->strings["Request could not be verified. (You may have previously submitted it.) Password reset failed."] = "La richiesta non può essere verificata (potresti averla già usata precedentemente). La password non sarà reimpostata.";
$a->strings["Password Reset"] = "Reimposta la password";
$a->strings["Your password has been reset as requested."] = "La password è stata reimpostata come richiesto.";
$a->strings["Your new password is"] = "La tua nuova password è";
$a->strings["Save or copy your new password - and then"] = "Salva o copia la tua nuova password, quindi";
$a->strings["click here to login"] = "clicca qui per accedere";
$a->strings["Your password may be changed from the <em>Settings</em> page after successful login."] = "Puoi cambiare la tua password dalla pagina delle <em>Impostazioni</em> dopo aver effettuato l'accesso.";
$a->strings["Your password has changed at %s"] = "La tua password su %s è cambiata";
$a->strings["Forgot your Password?"] = "Hai dimenticato la password?";
$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Inserisci il tuo indirizzo email per reimpostare la password. Dopo aver inviato la richiesta, controlla l'email e troverai le istruzioni per continuare.";
$a->strings["Email Address"] = "Indirizzo email";
$a->strings["Reset"] = "Reimposta";
$a->strings["Files: shared with me"] = "File: condivisi con me"; $a->strings["Files: shared with me"] = "File: condivisi con me";
$a->strings["NEW"] = "NOVITÀ"; $a->strings["NEW"] = "NOVITÀ";
$a->strings["Remove all files"] = "Elimina tutti i file"; $a->strings["Remove all files"] = "Elimina tutti i file";
@ -2181,10 +2175,13 @@ $a->strings["To select all posts for a given month, such as January of this year
$a->strings["These content files may be imported or restored by visiting <a href=\"%1\$s\">%2\$s</a> on any site containing your channel. For best results please import or restore these in date order (oldest first)."] = "Questi contenuti potranno essere importati o ripristinati visitando <a href=\"%1\$s\">%2\$s</a> su qualsiasi sito/hub dove è presente il tuo canale. Per mantenere l'ordinamento originale fai attenzione ad importare i file secondo la data (prima il più vecchio)"; $a->strings["These content files may be imported or restored by visiting <a href=\"%1\$s\">%2\$s</a> on any site containing your channel. For best results please import or restore these in date order (oldest first)."] = "Questi contenuti potranno essere importati o ripristinati visitando <a href=\"%1\$s\">%2\$s</a> su qualsiasi sito/hub dove è presente il tuo canale. Per mantenere l'ordinamento originale fai attenzione ad importare i file secondo la data (prima il più vecchio)";
$a->strings["No connections."] = "Nessun contatto."; $a->strings["No connections."] = "Nessun contatto.";
$a->strings["Visit %s's profile [%s]"] = "Visita il profilo di %s [%s]"; $a->strings["Visit %s's profile [%s]"] = "Visita il profilo di %s [%s]";
$a->strings["View Connections"] = "Elenco contatti";
$a->strings["Source of Item"] = "Sorgente"; $a->strings["Source of Item"] = "Sorgente";
$a->strings["Page Title"] = "Titolo della pagina"; $a->strings["Page Title"] = "Titolo della pagina";
$a->strings["Xchan Lookup"] = "Ricerca canale"; $a->strings["Xchan Lookup"] = "Ricerca canale";
$a->strings["Lookup xchan beginning with (or webbie): "] = "Cerca un canale (o un webbie) che inizia per:"; $a->strings["Lookup xchan beginning with (or webbie): "] = "Cerca un canale (o un webbie) che inizia per:";
$a->strings["Cover Photos"] = "Copertine del canale";
$a->strings["Upload Cover Photo"] = "Carica una copertina";
$a->strings["Focus (Hubzilla default)"] = "Focus (predefinito)"; $a->strings["Focus (Hubzilla default)"] = "Focus (predefinito)";
$a->strings["Theme settings"] = "Impostazioni del tema"; $a->strings["Theme settings"] = "Impostazioni del tema";
$a->strings["Select scheme"] = "Scegli uno schema"; $a->strings["Select scheme"] = "Scegli uno schema";
@ -2219,3 +2216,14 @@ $a->strings["Left align page content"] = "Allinea a sinistra il contenuto della
$a->strings["Set minimum opacity of nav bar - to hide it"] = "Opacità minima della barra di navigazione - per nasconderla"; $a->strings["Set minimum opacity of nav bar - to hide it"] = "Opacità minima della barra di navigazione - per nasconderla";
$a->strings["Set size of conversation author photo"] = "Dimensione foto dell'autore della conversazione"; $a->strings["Set size of conversation author photo"] = "Dimensione foto dell'autore della conversazione";
$a->strings["Set size of followup author photos"] = "Dimensione foto dei partecipanti alla conversazione"; $a->strings["Set size of followup author photos"] = "Dimensione foto dei partecipanti alla conversazione";
$a->strings["Update %s failed. See error logs."] = "%s: aggiornamento fallito. Controlla i log di errore.";
$a->strings["Update Error at %s"] = "Errore di aggiornamento su %s";
$a->strings["Create an account to access services and applications within the Hubzilla"] = "Registrati per accedere ai servizi e alle applicazioni di Hubzilla";
$a->strings["Password"] = "Password";
$a->strings["Remember me"] = "Resta connesso";
$a->strings["Forgot your password?"] = "Hai dimenticato la password?";
$a->strings["toggle mobile"] = "attiva/disattiva versione mobile";
$a->strings["Website SSL certificate is not valid. Please correct."] = "Il certificato SSL del sito non è valido. Si prega di intervenire.";
$a->strings["[hubzilla] Website SSL error for %s"] = "[hubzilla] Errore SSL su %s";
$a->strings["Cron/Scheduled tasks not running."] = "Processi cron non avviati.";
$a->strings["[hubzilla] Cron tasks not running on %s"] = "[hubzilla] Cron non è stato eseguito %s";

View file

@ -640,7 +640,10 @@ function collapseHeight() {
var orgHeight = parseInt($(this).css('height')); var orgHeight = parseInt($(this).css('height'));
if(orgHeight > divmore_height) { if(orgHeight > divmore_height) {
if(! $(this).hasClass('divmore')) { if(! $(this).hasClass('divmore')) {
if($(window).scrollTop() + ($(window).height() - divmore_height) < $(this).offset().top) {
var trigger = $(window).scrollTop() + ($(window).height() - divmore_height) < $(this).offset().top ? true : false;
if(trigger) {
$(this).readmore({ $(this).readmore({
speed: 0, speed: 0,
heightMargin: 50, heightMargin: 50,

View file

@ -962,6 +962,9 @@ a.rconnect:hover, a.rateme:hover, div.rateme:hover {
margin-bottom: 18px; margin-bottom: 18px;
} }
#jot-preview-content {
margin-top: 10px;
}
.acl-list-item { .acl-list-item {
width: 48%; /* fallback if browser does not support calc() */ width: 48%; /* fallback if browser does not support calc() */
width: calc(50% - 10px); width: calc(50% - 10px);

View file

@ -7,7 +7,7 @@ $(document).ready(function() {
if( $('#css3-calc').width() == 10) { if( $('#css3-calc').width() == 10) {
$(window).resize(function() { $(window).resize(function() {
if($(window).width() < 767) { if($(window).width() < 767) {
$('main').css('width', $(window).width() + 285 ); $('main').css('width', $(window).width() + 287 );
} else { } else {
$('main').css('width', '100%' ); $('main').css('width', '100%' );
} }

View file

@ -154,7 +154,7 @@ if(file_exists('view/theme/redbasic/css/style.css')) {
$x = file_get_contents('view/theme/redbasic/css/style.css'); $x = file_get_contents('view/theme/redbasic/css/style.css');
$aside_width = 285; $aside_width = 287;
// left aside and right aside are 285px + converse width // left aside and right aside are 285px + converse width
if($align_left) { if($align_left) {

View file

@ -4,7 +4,7 @@
{{if $profile.like_count}} {{if $profile.like_count}}
<button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" id="profile-like">{{$profile.like_count}} {{$profile.like_button_label}}</button> <button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown" id="profile-like">{{$profile.like_count}} {{$profile.like_button_label}}</button>
{{if $profile.likers}} {{if $profile.likers}}
<ul class="dropdown-menu" role="menu" aria-labelledby="profile-like">{{foreach $profile.likers as $liker}}<li role="presentation"><a href="{{$liker.url}}">{{$liker.name}}</a></li>{{/foreach}}</ul> <ul class="dropdown-menu" role="menu" aria-labelledby="profile-like">{{foreach $profile.likers as $liker}}<li role="presentation"><a href="{{$liker.url}}"><img class="dropdown-menu-img-xs" src="{{$liker.photo}}" alt="{{$liker.name}}" /> {{$liker.name}}</a></li>{{/foreach}}</ul>
{{/if}} {{/if}}
{{/if}} {{/if}}
{{if $profile.canlike}} {{if $profile.canlike}}
@ -215,7 +215,7 @@
<div class="btn-group"> <div class="btn-group">
<button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" id="thing-like-{{$item.term_hash}}">{{$item.like_count}} {{$item.like_label}}</button> <button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" id="thing-like-{{$item.term_hash}}">{{$item.like_count}} {{$item.like_label}}</button>
{{if $item.likes}} {{if $item.likes}}
<ul class="dropdown-menu" role="menu" aria-labelledby="thing-like-{{$item.term_hash}}">{{foreach $item.likes as $liker}}<li role="presentation"><a href="{{$liker.xchan_url}}">{{$liker.xchan_name}}</a></li>{{/foreach}}</ul> <ul class="dropdown-menu" role="menu" aria-labelledby="thing-like-{{$item.term_hash}}">{{foreach $item.likes as $liker}}<li role="presentation"><a href="{{$liker.xchan_url}}"><img class="dropdown-menu-img-xs" src="{{$liker.xchan_photo_s}}" alt="{{$liker.name}}" /> {{$liker.xchan_name}}</a></li>{{/foreach}}</ul>
{{/if}} {{/if}}
</div> </div>
{{/if}} {{/if}}

50
view/tpl/zcard.tpl Normal file
View file

@ -0,0 +1,50 @@
<style>
.hz_card {
-moz-transform: translate(-{{$translate}}%, -{{$translate}}%) scale({{$scale}}, {{$scale}});
transform: translate(-{{$translate}}%, -{{$translate}}%) scale({{$scale}}, {{$scale}});
}
.hz_cover_photo {
max-width: 100%;
}
.hz_profile_photo {
position: relative;
top: -300px;
left: 30px;
background-color: white;
border: 1px solid #ddd;
border-radius: 5px;
-moz-border-radius: 5px;
padding: 10px;
width: 320px;
height: 320px;
}
.hz_name {
position: relative;
top: -100px;
left: 400px;
color: #fff;
font-size: 48px;
text-rendering: optimizelegibility;
text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
}
.hz_addr {
position: relative;
top: -110px;
left: 400px;
color: #fff;
font-size: 24px;
text-rendering: optimizelegibility;
text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
}
</style>
<div class="hz_card">
<div class="hz_cover_photo"><img src="{{$cover.href}}" alt="{{$zcard.chan.xchan_name}}" />
<div class="hz_name">{{$zcard.chan.xchan_name}}</div>
<div class="hz_addr">{{$zcard.chan.channel_addr}}</div>
</div>
<div class="hz_profile_photo"><img style="width: 300px; height: 300px;" src="{{$pphoto.href}}" alt="{{$zcard.chan.xchan_name}}" /></div>
</div>