Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Thomas Willingham 2014-09-02 01:57:30 +01:00
commit 1c0be39943
17 changed files with 1688 additions and 1426 deletions

View File

@ -293,19 +293,19 @@ La Matrice <span style="color: #c60032;">Rouge</span> est un outil id&eacute;al
<div lang="nl" class="wrapper" style="display: none;">
<div class="tr" style="font-size: 1.4em; color: #666; margin-left: 75px; margin-right: 75px;">
De <strong>Red Matrix</strong> (ook bekend als "<span style="color: #c60032;">red</span>") is een opensource webapplicatie dat een volledig systeem biedt voor <em>gedecentraliseerd</em> publiceren, delen en communiceren. Het combineert communicatie (een <em>sociaal netwerk</em>, chat en priv&#233;communicatie) en mediabeheer (foto's, bookmarks, bestanden, webpagina's en apps), met zoveel mogelijkheden dat het je begint te duizelen.
Een van de traditionele problemen met onafhankelijke internetpublicaties is dat onafhankelijke publicisten met hun eigen website op een geïsoleerd eilandje zitten. Mede hierdoor zijn ze veel tijd en geld kwijt aan het lokken van bezoekers. De opkomst van grote commerciële internetdiensten en sociale netwerken hebben veel van deze problemen verzacht. Het gecentraliseerde karakter van deze diensten heeft er echter voor gezorgd dat jouw publicaties en overige gegevens niet meer direct door jou beheerd worden. Dit wordt allemaal op grote schaal met online advertentiebedrijven en overheden gedeeld, maar ironisch genoeg moet er tegenwoordig wel betaald worden om jouw vrienden en volgers jouw werk te kunnen laten vinden. Wat nou als je de voordelen van gecentraliseerde diensten, zoals de schaal en het grote bereik, kunt combineren met het behoud van eigen beheer over jouw aanwezigheid op internet?
</div>
<br />
<div class="tr" style="font-size: 1.4em; color: #666; margin-left: 75px; margin-right: 75px;">
Wat de Red Matrix uniek maakt is de zogenaamde &#8220;magische authenticatie&#8221;. Wat gebaseerd is op ons baanbrekende werk in gedecentraliseerde identificatie. Dit knoopt alle Red Matrix-hubs en -kanalen aan elkaar, waardoor er &#233;&#233;n groot supernetwerk ontstaat waarin de grenzen tussen verschillende websites zijn vervaagd of niet meer lijken te bestaan. Waar &#8220;wie je bent&#8221; niets te maken heeft met met &#8220;wat voor computerserver je verbonden bent&#8221; en waar de inhoud van webpagina's zich kan aanpassen aan wie er naar kijkt.
De RedMatrix is een supernetwerk bestaande uit een enorme hoeveelheid kleinere onafhankelijke en autonome websites, die aan elkaar gekoppeld een coöperatief publicatie en sociaal platform vormen. Het bestaat uit een opensource webapplicatie die een compleet <strong>gedecentraliseerd</strong> multi-user publicatie-, communicatie- en social media-systeem biedt, een “hub” geheten. Elke hub verzorgt de communicatie (privéberichten, chatten, bloggen, forums en een sociaal netwerk) en het mediabeheer (foto's, agenda, webpagina's en apps) voor zijn leden; alles in een functie-rijke omgeving. Deze hubs maken automatisch contact met elkaar en de rest van de matrix. Het individu blijft altijd directe controle houden over zijn/haar privacy en eigendom; en aan elk item in de gehele matrix kan aan wie dan ook toegang verleend of geweigerd worden.
</div>
<br />
<div class="tr" style="font-size: 1.4em; color: #666; margin-left: 75px; margin-right: 75px;">
Waarschuwing: Nadat je de &#8220;magische authenticatie&#8221; en een &#8220;nomadische identiteit&#8221; ervaren hebt, kan het erg storend zijn en een beetje &#8220;primitief&#8221; om terug te moeten keren naar het oude internet. Je hoeft geen honderden verschillende wachtwoorden te onthouden om het web te gebruiken... of om volledig ge&#239;soleerd te zijn van je vrienden en familie, omdat een server of router in een ander land "<em>problemen</em>" ondervindt.
Wat de Red Matrix uniek maakt is de zogenaamde “magische authenticatie”. Gebaseerd op ons baanbrekende werk in gedecentraliseerde identificatie. Geen enkel ander platform biedt deze mogelijkheid. Binnen de matrix zijn de grenzen tussen verschillende websites vervaagd of lijken ze niet meer te bestaan. Een identiteit is binnen de matrix niet statisch en kan zelfs een nomadenbestaan leiden. “Wie je bent” heeft niets te maken met “welke computerserver je verbonden bent” en de inhoud van webpagina's kan zich hierdoor aanpassen aan wie er naar kijkt. Je hebt de mogelijkheid om jouw “identiteit” naar andere hubs te klonen; waardoor je zonder onderbrekingen kan blijven communiceren met je vrienden, wanneer jouw primaire hub is uitgeschakeld (tijdelijk of permanent).
</div>
<br />
<div class="tr" style="font-size: 1.4em; color: #666; margin-left: 75px; margin-right: 75px;">
Voor een gewoon mens is het grootste voordeel van een gedecentraliseerde identiteit dat jij kan beslissen met wie je jouw gegevens deelt. En wanneer iemand niet jouw toestemming heeft, dan krijgt hij/zij het ook niet te zien. Je hebt alles onder controle, gebruik de Red Matrix als een sociaal netwerk &#243;f een bedrijfswebsite &#243;f als persoonlijke cloud-opslag &#243;f om media te publiceren, of voor wat voor toepassing dan ook. Als grens geldt alleen jouw verbeelding.<br />
De RedMatrix is ideaal voor groepen mensen van welke omvang dan ook, van kleine groepen vrienden en families, tot online forums, zakenwebsites, en organisaties. Het kan door iedereen gebruikt worden die wil communiceren of internetpublicaties wil delen, maar de volledige controle wenst met wie zij willen communiceren en delen.<br />
</div>
<br />
<div style="margin-bottom: 15px; color: #808080; font-size: 1.8em;"><strong>RedMatrix - &quot;The Network&quot;</strong></div>

View File

@ -304,7 +304,7 @@ define ( 'ABOOK_FLAG_ARCHIVED' , 0x0008);
define ( 'ABOOK_FLAG_PENDING' , 0x0010);
define ( 'ABOOK_FLAG_UNCONNECTED', 0x0020);
define ( 'ABOOK_FLAG_SELF' , 0x0080);
define ( 'ABOOK_FLAG_FEED' , 0x0100);
define ( 'MAIL_DELETED', 0x0001);

View File

@ -180,7 +180,7 @@ Now let's add our functions to create and store preference settings.
/* Add our stylesheet to the page so we can make our settings look nice */
head_add_css(/addon/randplace/randplace.css');
head_add_css('/addon/randplace/randplace.css');
/* Get the current state of our config variable */

BIN
images/rss_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@ -323,7 +323,7 @@ function mark_orphan_hubsxchans() {
return;
$r = q("update hubloc set hubloc_status = (hubloc_status | %d) where not (hubloc_status & %d)
and hubloc_connected < utc_timestamp() - interval 36 day",
and hubloc_network != 'zot' and hubloc_connected < utc_timestamp() - interval 36 day",
intval(HUBLOC_OFFLINE),
intval(HUBLOC_OFFLINE)
);

View File

@ -25,7 +25,7 @@ function profile_activity($changed, $value) {
$arr['verb'] = ACTIVITY_UPDATE;
$arr['obj_type'] = ACTIVITY_OBJ_PROFILE;
$arr['$plink'] = z_root() . '/channel/' . $self['channel_address'] . '/?f=&mid=' . $arr['mid'];
$arr['plink'] = z_root() . '/channel/' . $self['channel_address'] . '/?f=&mid=' . $arr['mid'];
$A = '[url=' . z_root() . '/channel/' . $self['channel_address'] . ']' . $self['channel_name'] . '[/url]';

View File

@ -17,7 +17,7 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
$a = get_app();
$is_red = false;
$is_http = ((strpos($url,'://') !== false) ? true : false);
if(! allowed_url($url)) {
$result['message'] = t('Channel is blocked on this site.');
@ -29,16 +29,32 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
return $result;
}
// check service class limits
$r = q("select count(*) as total from abook where abook_channel = %d and not (abook_flags & %d) ",
intval($uid),
intval(ABOOK_FLAG_SELF)
);
if($r)
$total_channels = $r[0]['total'];
if(! service_class_allows($uid,'total_channels',$total_channels)) {
$result['message'] = upgrade_message();
return $result;
}
$arr = array('url' => $url, 'channel' => array());
call_hooks('follow', $arr);
if($arr['channel']['success'])
$ret = $arr['channel'];
else
elseif($is_http)
$ret = zot_finger($url,$channel);
if($ret['success']) {
if($ret && $ret['success']) {
$is_red = true;
$j = json_decode($ret['body'],true);
}
@ -61,20 +77,6 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
if(array_key_exists('connect_url',$j) && (! $confirm))
goaway(zid($j['connect_url']));
// check service class limits
$r = q("select count(*) as total from abook where abook_channel = %d and not (abook_flags & %d) ",
intval($uid),
intval(ABOOK_FLAG_SELF)
);
if($r)
$total_channels = $r[0]['total'];
if(! service_class_allows($uid,'total_channels',$total_channels)) {
$result['message'] = upgrade_message();
return $result;
}
// do we have an xchan and hubloc?
// If not, create them.
@ -121,7 +123,8 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
$their_perms = 0;
$xchan_hash = '';
$r = q("select * from xchan where xchan_hash = '%s' limit 1",
$r = q("select * from xchan where xchan_hash = '%s' or xchan_url = '%s' limit 1",
dbesc($url),
dbesc($url)
);
@ -130,13 +133,21 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
if(strpos($url,'@')) {
$r = discover_by_webbie($url);
}
elseif($is_http) {
$r = discover_by_url($url);
}
if($r) {
$r = q("select * from xchan where xchan_hash = '%s' or xchan_url = '%s' limit 1",
dbesc($url),
dbesc($url)
);
}
}
if($r) {
$xchan_hash = $url;
$xchan_hash = $r[0]['xchan_hash'];
$their_perms = 0;
$my_perms = PERMS_W_STREAM|PERMS_W_MAIL;
}
}
if(! $xchan_hash) {
@ -150,7 +161,6 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
$hash = get_observer_hash();
$ch = $a->get_channel();
$default_group = $ch['channel_default_group'];
}
else {
$r = q("select * from channel where channel_id = %d limit 1",
@ -164,7 +174,25 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
$hash = $r[0]['channel_hash'];
$default_group = $r[0]['channel_default_group'];
}
if($is_http) {
if(! intval(get_config('system','feed_contacts'))) {
$result['message'] = t('Protocol disabled.');
return $result;
}
$r = q("select count(*) as total from abook where abook_account = %d and abook_network = 'rss'",
intval($aid)
);
if($r)
$total_feeds = $r[0]['total'];
if(! service_class_allows($uid,'total_feeds',$total_feeds)) {
$result['message'] = upgrade_message();
return $result;
}
}
if($hash == $xchan_hash) {
$result['message'] = t('Cannot connect to yourself.');
return $result;
@ -181,11 +209,12 @@ function new_contact($uid,$url,$channel,$interactive = false, $confirm = false)
);
}
else {
$r = q("insert into abook ( abook_account, abook_channel, abook_xchan, abook_their_perms, abook_my_perms, abook_created, abook_updated )
values( %d, %d, '%s', %d, %d, '%s', '%s' ) ",
$r = q("insert into abook ( abook_account, abook_channel, abook_xchan, abook_flags, abook_their_perms, abook_my_perms, abook_created, abook_updated )
values( %d, %d, '%s', %d, %d, %d, '%s', '%s' ) ",
intval($aid),
intval($uid),
dbesc($xchan_hash),
intval(($is_http) ? ABOOK_FLAG_FEED : 0),
intval($their_perms),
intval($my_perms),
dbesc(datetime_convert()),

View File

@ -1499,6 +1499,9 @@ function get_atom_elements($feed,$item,&$author) {
if($d2 > $d3)
$res['edited'] = datetime_convert();
$res['created'] = datetime_convert('UTC','UTC',$res['created']);
$res['edited'] = datetime_convert('UTC','UTC',$res['edited']);
$rawowner = $item->get_item_tags(NAMESPACE_DFRN, 'owner');
if(! $rawowner)
$rawowner = $item->get_item_tags(NAMESPACE_ZOT,'owner');
@ -1555,12 +1558,12 @@ function get_atom_elements($feed,$item,&$author) {
$termurl = unxmlify(substr($scheme,9));
}
else {
$termtype = TERM_UNKNOWN;
$termtype = TERM_CATEGORY;
}
$termterm = notags(trim(unxmlify($term)));
if($termterm) {
$terms = array(
$terms[] = array(
'otype' => TERM_OBJ_POST,
'type' => $termtype,
'url' => $termurl,
@ -1568,7 +1571,7 @@ function get_atom_elements($feed,$item,&$author) {
);
}
}
$res['term'] = implode(',', $tag_arr);
$res['term'] = $terms;
}
$attach = $item->get_enclosures();
@ -1663,6 +1666,9 @@ function get_atom_elements($feed,$item,&$author) {
$res['target'] = $obj;
}
$res['public_policy'] = 'specific';
$res['comment_policy'] = 'none';
$arr = array('feed' => $feed, 'item' => $item, 'result' => $res);
call_hooks('parse_atom', $arr);
@ -3207,14 +3213,14 @@ function consume_feed($xml,$importer,&$contact,$pass = 0) {
$datarray['uid'] = $importer['channel_id'];
//FIXME
$datarray['author_xchan'] = $contact['xchan_hash'];
$datarray['owner_xchan'] = $datarray['author_xchan'] = $contact['xchan_hash'];
// FIXME pull out the author and owner
logger('consume_feed: ' . print_r($datarray,true),LOGGER_DATA);
// $xx = item_store($datarray);
$xx = item_store($datarray);
$r = $xx['item_id'];
continue;
}
@ -3267,18 +3273,21 @@ function consume_feed($xml,$importer,&$contact,$pass = 0) {
$datarray['parent_mid'] = $item_id;
$datarray['uid'] = $importer['channel_id'];
//FIXME
$datarray['author_xchan'] = $contact['author_xchan'];
$datarray['owner_xchan'] = $datarray['author_xchan'] = $contact['xchan_hash'];
if(! link_compare($author['owner_link'],$contact['xchan_url'])) {
logger('consume_feed: Correcting item owner.', LOGGER_DEBUG);
$author['owner-name'] = $contact['name'];
$author['owner-link'] = $contact['url'];
$author['owner-avatar'] = $contact['thumb'];
$author['owner_name'] = $contact['name'];
$author['owner_link'] = $contact['url'];
$author['owner_avatar'] = $contact['thumb'];
}
logger('consume_feed: author ' . print_r($author,true));
logger('consume_feed: ' . print_r($datarray,true),LOGGER_DATA);
// $xx = item_store($datarray);
$xx = item_store($datarray);
$r = $xx['item_id'];
continue;
@ -3311,7 +3320,7 @@ function handle_feed($uid,$abook_id,$url) {
$recurse = 0;
$z = z_fetch_url($url,false,$recurse,array('novalidate' => true));
logger('handle_feed:' . print_r($z,true));
//logger('handle_feed:' . print_r($z,true));
if($z['success']) {
consume_feed($z['body'],$channel,$x[0],0);

View File

@ -819,6 +819,153 @@ function email_send($addr, $subject, $headers, $item) {
}
function discover_by_url($url,$arr = null) {
require_once('library/HTML5/Parser.php');
$x = scrape_feed($url);
if(! $x) {
if(! $arr)
return false;
$network = (($arr['network']) ? $arr['network'] : 'unknown');
$name = (($arr['name']) ? $arr['name'] : 'unknown');
$photo = (($arr['photo']) ? $arr['photo'] : '');
$addr = (($arr['addr']) ? $arr['addr'] : '');
$guid = $url;
}
$profile = $url;
logger('scrape_feed results: ' . print_r($x,true));
if($x['feed_atom'])
$guid = $x['feed_atom'];
if($x['feed_rss'])
$guid = $x['feed_rss'];
if(! $guid)
return false;
// try and discover stuff from the feeed
require_once('library/simplepie/simplepie.inc');
$feed = new SimplePie();
$level = 0;
$x = z_fetch_url($guid,false,$level,array('novalidate' => true));
if(! $x['success']) {
logger('probe_url: feed fetch failed for ' . $poll);
return false;
}
$xml = $x['body'];
logger('probe_url: fetch feed: ' . $guid . ' returns: ' . $xml, LOGGER_DATA);
logger('probe_url: scrape_feed: headers: ' . $x['header'], LOGGER_DATA);
// Don't try and parse an empty string
$feed->set_raw_data(($xml) ? $xml : '<?xml version="1.0" encoding="utf-8" ?><xml></xml>');
$feed->init();
if($feed->error())
logger('probe_url: scrape_feed: Error parsing XML: ' . $feed->error());
$photo = $feed->get_image_url();
$author = $feed->get_author();
if($author) {
$name = unxmlify(trim($author->get_name()));
if(! $name)
$name = trim(unxmlify($author->get_email()));
if(strpos($name,'@') !== false)
$name = substr($name,0,strpos($name,'@'));
if(! $profile && $author->get_link())
$profile = trim(unxmlify($author->get_link()));
if(! $photo) {
$rawtags = $feed->get_feed_tags( SIMPLEPIE_NAMESPACE_ATOM_10, 'author');
if($rawtags) {
$elems = $rawtags[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10];
if((x($elems,'link')) && ($elems['link'][0]['attribs']['']['rel'] === 'photo'))
$photo = $elems['link'][0]['attribs']['']['href'];
}
}
}
else {
$item = $feed->get_item(0);
if($item) {
$author = $item->get_author();
if($author) {
$name = trim(unxmlify($author->get_name()));
if(! $name)
$name = trim(unxmlify($author->get_email()));
if(strpos($name,'@') !== false)
$name = substr($name,0,strpos($name,'@'));
if(! $profile && $author->get_link())
$profile = trim(unxmlify($author->get_link()));
}
if(! $photo) {
$rawmedia = $item->get_item_tags('http://search.yahoo.com/mrss/','thumbnail');
if($rawmedia && $rawmedia[0]['attribs']['']['url'])
$photo = unxmlify($rawmedia[0]['attribs']['']['url']);
}
if(! $photo) {
$rawtags = $item->get_item_tags( SIMPLEPIE_NAMESPACE_ATOM_10, 'author');
if($rawtags) {
$elems = $rawtags[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10];
if((x($elems,'link')) && ($elems['link'][0]['attribs']['']['rel'] === 'photo'))
$photo = $elems['link'][0]['attribs']['']['href'];
}
}
}
}
if($poll === $profile)
$lnk = $feed->get_permalink();
if(isset($lnk) && strlen($lnk))
$profile = $lnk;
if(! $network) {
$network = 'rss';
}
if(! $name)
$name = notags($feed->get_title());
if(! $name)
$name = notags($feed->get_description());
if(! $guid)
return false;
$r = q("select * from xchan where xchan_hash = '%s' limit 1",
dbesc($guid)
);
if($r)
return true;
if(! $photo)
$photo = z_root() . '/images/rss_icon.png';
$r = q("insert into xchan ( xchan_hash, xchan_guid, xchan_pubkey, xchan_addr, xchan_url, xchan_name, xchan_network, xchan_instance_url, xchan_name_date ) values ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s') ",
dbesc($guid),
dbesc($guid),
dbesc($pubkey),
dbesc($addr),
dbesc($profile),
dbesc($name),
dbesc($network),
dbesc(z_root()),
dbesc(datetime_convert())
);
$photos = import_profile_photo($photo,$guid);
$r = q("update xchan set xchan_photo_date = '%s', xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s' limit 1",
dbesc(datetime_convert()),
dbesc($photos[0]),
dbesc($photos[1]),
dbesc($photos[2]),
dbesc($photos[3]),
dbesc($guid)
);
return true;
}
function discover_by_webbie($webbie) {
require_once('library/HTML5/Parser.php');
@ -882,14 +1029,12 @@ function discover_by_webbie($webbie) {
}
}
if($diaspora && $diaspora_base && $diaspora_guid) {
if($diaspora && $diaspora_base && $diaspora_guid && intval(get_config('system','diaspora_enabled'))) {
$guid = $diaspora_guid;
$diaspora_base = trim($diaspora_base,'/');
$notify = $diaspora_base . '/receive';
// // '/users/' . $diaspora_guid;
// $batch = $diaspora_base . '/receive/public' ;
if(strpos($webbie,'@')) {
$addr = str_replace('acct:', '', $webbie);
$hostname = substr($webbie,strpos($webbie,'@')+1);
@ -988,23 +1133,23 @@ function discover_by_webbie($webbie) {
Array
(
[name] => Mike Macgirvin
[nick] => macgirvin
[guid] => a9174a618f8d269a
[url] => https://joindiaspora.com/u/macgirvin
[hostname] => joindiaspora.com
[addr] => macgirvin@joindiaspora.com
[batch] =>
[notify] => https://joindiaspora.com/receive
[poll] => https://joindiaspora.com/public/macgirvin.atom
[request] =>
[confirm] =>
[poco] =>
[photo] => https://joindiaspora.s3.amazonaws.com/uploads/images/thumb_large_fec4e6eef13ae5e56207.jpg
[priority] =>
[network] => diaspora
[alias] =>
[pubkey] => -----BEGIN PUBLIC KEY-----
[name] => Mike Macgirvin
[nick] => macgirvin
[guid] => a9174a618f8d269a
[url] => https://joindiaspora.com/u/macgirvin
[hostname] => joindiaspora.com
[addr] => macgirvin@joindiaspora.com
[batch] =>
[notify] => https://joindiaspora.com/receive
[poll] => https://joindiaspora.com/public/macgirvin.atom
[request] =>
[confirm] =>
[poco] =>
[photo] => https://joindiaspora.s3.amazonaws.com/uploads/images/thumb_large_fec4e6eef13ae5e56207.jpg
[priority] =>
[network] => diaspora
[alias] =>
[pubkey] => -----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtihtyIuRDWkDpCA+I1UaQ
jI4S7k625+A7EEJm+pL2ZVSJxeCKiFeEgHBQENjLMNNm8l8F6blxgQqE6ZJ9Spa7f
tlaXYTRCrfxKzh02L3hR7sNA+JS/nXJaUAIo+IwpIEspmcIRbD9GB7Wv/rr+M28uH

View File

@ -38,7 +38,7 @@ function onepoll_run($argv, $argc){
AND NOT ( abook_flags & %d )
AND (( account_flags = %d ) OR ( account_flags = %d )) limit 1",
intval($contact_id),
intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_UNCONNECTED),
intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_UNCONNECTED|ABOOK_FLAG_FEED),
intval(0),
intval(ABOOK_FLAG_ARCHIVED|ABOOK_FLAG_BLOCKED|ABOOK_FLAG_IGNORED),
intval(ACCOUNT_OK),
@ -72,6 +72,19 @@ function onepoll_run($argv, $argc){
: datetime_convert('UTC','UTC',$contact['abook_updated'] . ' - 2 days')
);
if($contact['xchan_network'] === 'rss') {
logger('onepoll: processing feed ' . $contact['xchan_name'], LOGGER_DEBUG);
handle_feed($importer['channel_id'],$contact_id,$contact['xchan_hash']);
q("update abook set abook_connected = '%s' where abook_id = %d limit 1",
dbesc(datetime_convert()),
intval($contact['abook_id'])
);
return;
}
if($contact['xchan_network'] !== 'zot')
return;
// update permissions
$x = zot_refresh($contact,$importer);
@ -130,11 +143,9 @@ function onepoll_run($argv, $argc){
}
}
// fetch some items
// set last updated timestamp
if($contact['xchan_connurl']) {
$r = q("SELECT xlink_id from xlink
where xlink_xchan = '%s' and xlink_updated > UTC_TIMESTAMP() - INTERVAL 1 DAY limit 1",

View File

@ -247,7 +247,7 @@ function poller_run($argv, $argc){
$sql_extra
AND (( abook_flags & %d ) OR ( abook_flags = %d ))
AND (( account_flags = %d ) OR ( account_flags = %d )) $abandon_sql ORDER BY RAND()",
intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_UNCONNECTED),
intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_UNCONNECTED|ABOOK_FLAG_FEED),
intval(0),
intval(ACCOUNT_OK),
intval(ACCOUNT_UNVERIFIED) // FIXME
@ -263,6 +263,19 @@ function poller_run($argv, $argc){
$t = $contact['abook_updated'];
$c = $contact['abook_connected'];
if($contact['abook_flags'] & ABOOK_FLAG_FEED) {
$min = intval(get_config('system','minimum_feedcheck_minutes'));
if(! $min)
$min = 60;
$x = datetime_convert('UTC','UTC',"now - $min minutes");
if($c < $x) {
proc_run('php','include/onepoll.php',$contact['abook_id']);
if($interval)
@time_sleep_until(microtime(true) + (float) $interval);
}
continue;
}
if($c == $t) {
if(datetime_convert('UTC','UTC', 'now') > datetime_convert('UTC','UTC', $t . " + 1 day"))

View File

@ -1865,6 +1865,11 @@ function xchan_query(&$items,$abook = true) {
$chans = q("select xchan.*,hubloc.* from xchan left join hubloc on hubloc_hash = xchan_hash
where xchan_hash in (" . implode(',', $arr) . ") and ( hubloc_flags & " . intval(HUBLOC_FLAGS_PRIMARY) . " )");
}
$xchans = q("select * from xchan where xchan_hash in (" . implode(',',$arr) . ") and xchan_network in ('rss','unknown')");
if(! $chans)
$chans = $xchans;
else
$chans = array_merge($xchans,$chans);
}
if($items && count($items) && $chans && count($chans)) {
for($x = 0; $x < count($items); $x ++) {

View File

@ -1791,8 +1791,6 @@ function process_mail_delivery($sender,$arr,$deliveries) {
function process_profile_delivery($sender,$arr,$deliveries) {
// deliveries is irrelevant, what to do about birthday notification....?
logger('process_profile_delivery', LOGGER_DEBUG);
$r = q("select xchan_addr from xchan where xchan_hash = '%s' limit 1",
@ -1864,7 +1862,7 @@ function import_directory_profile($hash,$profile,$addr,$ud_flags = UPDATE_FLAGS_
$update = false;
foreach($r[0] as $k => $v) {
if((array_key_exists($k,$arr)) && ($arr[$k] != $v)) {
logger('import_directory_profile: update' . $k . ' => ' . $arr[$k]);
logger('import_directory_profile: update ' . $k . ' => ' . $arr[$k]);
$update = true;
break;
}
@ -1906,7 +1904,7 @@ function import_directory_profile($hash,$profile,$addr,$ud_flags = UPDATE_FLAGS_
}
else {
$update = true;
logger('import_directory_profile: new profile');
logger('import_directory_profile: new profile ');
$x = q("insert into xprof (xprof_hash, xprof_desc, xprof_dob, xprof_age, xprof_gender, xprof_marital, xprof_sexual, xprof_locale, xprof_region, xprof_postcode, xprof_country, xprof_about, xprof_homepage, xprof_hometown, xprof_keywords) values ('%s', '%s', '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s') ",
dbesc($arr['xprof_hash']),
dbesc($arr['xprof_desc']),

View File

@ -18,7 +18,7 @@ class TwitterOAuth {
/* Contains the last API call. */
public $url;
/* Set up the API root URL. */
public $host = "https://api.twitter.com/1/";
public $host = "https://api.twitter.com/1.1/";
/* Set timeout default. */
public $timeout = 30;
/* Set connect timeout. */

View File

@ -1 +1 @@
2014-08-30.783
2014-09-01.785

File diff suppressed because it is too large Load Diff

View File

@ -7,12 +7,7 @@ function string_plural_select_it($n){
;
$a->strings["Cannot locate DNS info for database server '%s'"] = "Non trovo le informazioni DNS per il database server '%s'";
$a->strings["Profile Photos"] = "Foto del profilo";
$a->strings["%1\$s is now friends with %2\$s"] = "%1\$s è ora amico di %2\$s";
$a->strings["Sharing notification from Diaspora network"] = "Notifica condivisa da Diaspora";
$a->strings["photo"] = "la foto";
$a->strings["status"] = "il messaggio di stato";
$a->strings["%1\$s likes %2\$s's %3\$s"] = "A %1\$s piace %3\$s di %2\$s";
$a->strings["Attachments:"] = "Allegati:";
$a->strings["view full size"] = "guarda nelle dimensioni reali";
$a->strings["Embedded content"] = "Contenuti incorporati";
$a->strings["Embedding disabled"] = "Contenuti incorporati - funzione disabilitata";
$a->strings["created a new post"] = "Ha creato un nuovo articolo";
@ -21,10 +16,10 @@ $a->strings["Site Admin"] = "Amministrazione sito";
$a->strings["Bookmarks"] = "Segnalibri";
$a->strings["Address Book"] = "Rubrica";
$a->strings["Login"] = "Accedi";
$a->strings["Channel Select"] = "Gestisci i canali";
$a->strings["Matrix"] = "La tua rete";
$a->strings["Channel Manager"] = "Gestione canali";
$a->strings["Matrix"] = "RedMatrix";
$a->strings["Settings"] = "Impostazioni";
$a->strings["Files"] = "Elenco file";
$a->strings["Files"] = "Archivio file";
$a->strings["Webpages"] = "Pagine web";
$a->strings["Channel Home"] = "Bacheca del canale";
$a->strings["Profile"] = "Profilo";
@ -35,7 +30,7 @@ $a->strings["Help"] = "Guida";
$a->strings["Mail"] = "Messaggi";
$a->strings["Mood"] = "Umore";
$a->strings["Poke"] = "Poke";
$a->strings["Chat"] = "Chat";
$a->strings["Chat"] = "Area chat";
$a->strings["Search"] = "Cerca";
$a->strings["Probe"] = "Diagnostica";
$a->strings["Suggest"] = "Suggerisci";
@ -51,6 +46,108 @@ $a->strings["Purchase"] = "Acquista";
$a->strings["Edit"] = "Modifica";
$a->strings["Delete"] = "Elimina";
$a->strings["Unknown"] = "Sconosciuto";
$a->strings["New Page"] = "Nuova pagina web";
$a->strings["View"] = "Guarda";
$a->strings["Preview"] = "Anteprima";
$a->strings["Actions"] = "Azioni";
$a->strings["Page Link"] = "Link alla pagina";
$a->strings["Title"] = "Titolo";
$a->strings["Created"] = "Creato";
$a->strings["Edited"] = "Modificato";
$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "L'identificativo di sicurezza del modulo che hai riempito non è corretto. Probabilmente è accaduto perché la pagina è stata tenuta aperta troppo a lungo (ore?) prima di inviare il contenuto.";
$a->strings["Invalid data packet"] = "Dati 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["Permission denied."] = "Permesso negato.";
$a->strings["Image exceeds website size limit of %lu bytes"] = "L'immagine supera il limite massimo di %lu bytes";
$a->strings["Image file is empty."] = "Il file dell'immagine è vuoto.";
$a->strings["Unable to process image"] = "Impossibile elaborare l'immagine";
$a->strings["Photo storage failed."] = "Impossibile caricare la foto.";
$a->strings["Photo Albums"] = "Album foto";
$a->strings["Upload New Photos"] = "Carica nuove foto";
$a->strings["Visible to your default audience"] = "Visibile secondo le impostazioni predefinite";
$a->strings["Show"] = "Mostra";
$a->strings["Don't show"] = "Non mostrare";
$a->strings["Permissions"] = "Permessi";
$a->strings["Close"] = "Chiudi";
$a->strings[" and "] = "e";
$a->strings["public profile"] = "profilo pubblico";
$a->strings["%1\$s changed %2\$s to &ldquo;%3\$s&rdquo;"] = "%1\$s ha cambiato %2\$s in &ldquo;%3\$s&rdquo;";
$a->strings["Visit %1\$s's %2\$s"] = "Guarda %2\$s di %1\$s ";
$a->strings["%1\$s has an updated %2\$s, changing %3\$s."] = "%1\$s ha aggiornato %2\$s cambiando %3\$s.";
$a->strings["Public Timeline"] = "Diario pubblico";
$a->strings["Item was not found."] = "Elemento non trovato.";
$a->strings["No source file."] = "Nessun file di origine.";
$a->strings["Cannot locate file to replace"] = "Il file da sostituire non è stato trovato";
$a->strings["Cannot locate file to revise/update"] = "Il file da aggiornare non è stato trovato";
$a->strings["File exceeds size limit of %d"] = "Il file supera la dimensione massima di %d";
$a->strings["You have reached your limit of %1$.0f Mbytes attachment storage."] = "Hai raggiunto il limite complessivo di %1$.0f Mbytes per gli allegati.";
$a->strings["File upload failed. Possible system limit or action terminated."] = "Caricamento file fallito, potrebbe aver superato i limiti o l'azione potrebbe essere stata interrotta.";
$a->strings["Stored file could not be verified. Upload failed."] = "Il file non può essere verificato. Caricamento fallito.";
$a->strings["Path not available."] = "Percorso non disponibile.";
$a->strings["Empty pathname"] = "Il percorso del file è vuoto";
$a->strings["duplicate filename or path"] = "il file o percorso del file è duplicato";
$a->strings["Path not found."] = "Percorso del file non trovato.";
$a->strings["mkdir failed."] = "mkdir fallito.";
$a->strings["database storage failed."] = "scrittura su database fallita.";
$a->strings["Click here to upgrade."] = "Clicca qui per aggiornare.";
$a->strings["This action exceeds the limits set by your subscription plan."] = "Questa operazione esce dai termini del tuo abbonamento.";
$a->strings["This action is not available under your subscription plan."] = "Questa operazione non è prevista dal tuo abbonamento.";
$a->strings["l F d, Y \\@ g:i A"] = "l d F Y \\@ G:i";
$a->strings["Starts:"] = "Inizio:";
$a->strings["Finishes:"] = "Fine:";
$a->strings["Location:"] = "Luogo:";
$a->strings["Logout"] = "Esci";
$a->strings["End this session"] = "Chiudi questa sessione";
$a->strings["Home"] = "Bacheca";
$a->strings["Your posts and conversations"] = "I tuoi articoli e conversazioni";
$a->strings["View Profile"] = "Profilo";
$a->strings["Your profile page"] = "Il tuo profilo";
$a->strings["Edit Profiles"] = "Modifica i profili";
$a->strings["Manage/Edit profiles"] = "Gestisci/modifica i profili";
$a->strings["Edit Profile"] = "Modifica il profilo";
$a->strings["Edit your profile"] = "Modifica il profilo";
$a->strings["Your photos"] = "Le tue foto";
$a->strings["Your files"] = "I tuoi file";
$a->strings["Your chatrooms"] = "Le tue aree chat";
$a->strings["Your bookmarks"] = "I tuoi segnalibri";
$a->strings["Your webpages"] = "Le tue pagine web";
$a->strings["Sign in"] = "Entra";
$a->strings["%s - click to logout"] = "%s - clicca per uscire";
$a->strings["Click to authenticate to your home hub"] = "Clicca per autenticarti sul tuo server principale";
$a->strings["Home Page"] = "Bacheca";
$a->strings["Register"] = "Iscriviti";
$a->strings["Create an account"] = "Crea un account";
$a->strings["Help and documentation"] = "Guida e documentazione";
$a->strings["Apps"] = "Apps";
$a->strings["Applications, utilities, links, games"] = "Applicazioni, utilità, link, giochi";
$a->strings["Search site content"] = "Cerca nel sito";
$a->strings["Channel Locator"] = "Ricerca canali";
$a->strings["Your matrix"] = "La tua rete";
$a->strings["Mark all matrix notifications seen"] = "Segna come lette le notifiche della tua rete";
$a->strings["Channel home"] = "Bacheca del canale";
$a->strings["Mark all channel notifications seen"] = "Segna come lette le notifiche dei canali";
$a->strings["Connections"] = "Contatti";
$a->strings["Notices"] = "Notifiche";
$a->strings["Notifications"] = "Notifiche";
$a->strings["See all notifications"] = "Vedi tutte le notifiche";
$a->strings["Mark all system notifications seen"] = "Segna come lette le notifiche di sistema";
$a->strings["Private mail"] = "Messaggi privati";
$a->strings["See all private messages"] = "Guarda tutti i messaggi privati";
$a->strings["Mark all private messages seen"] = "Segna come letti tutti i messaggi privati";
$a->strings["Inbox"] = "In arrivo";
$a->strings["Outbox"] = "Inviati";
$a->strings["New Message"] = "Nuovo messaggio";
$a->strings["Event Calendar"] = "Calendario";
$a->strings["See all events"] = "Guarda tutti gli eventi";
$a->strings["Mark all events seen"] = "Marca come letti tutti gli eventi";
$a->strings["Manage Your Channels"] = "Gestisci i contatti dei tuoi canali";
$a->strings["Account/Channel Settings"] = "Impostazioni account e canali";
$a->strings["Admin"] = "Amministrazione";
$a->strings["Site Setup and Configuration"] = "Configurazione del sito";
$a->strings["Nothing new here"] = "Niente di nuovo qui";
$a->strings["Please wait..."] = "Attendere...";
$a->strings["%1\$s's bookmarks"] = "I segnalibri di %1\$s";
$a->strings["prev"] = "prec";
$a->strings["first"] = "inizio";
$a->strings["last"] = "fine";
@ -126,7 +223,9 @@ $a->strings["Select a page layout: "] = "Scegli il layout della pagina:";
$a->strings["default"] = "predefinito";
$a->strings["Page content type: "] = "Contenuto della pagina:";
$a->strings["Select an alternate language"] = "Seleziona una lingua diversa";
$a->strings["photo"] = "la foto";
$a->strings["event"] = "l'evento";
$a->strings["status"] = "il messaggio di stato";
$a->strings["comment"] = "il commento";
$a->strings["activity"] = "l'attività";
$a->strings["Design"] = "Design";
@ -134,120 +233,6 @@ $a->strings["Blocks"] = "Riquadri";
$a->strings["Menus"] = "Menù";
$a->strings["Layouts"] = "Layout";
$a->strings["Pages"] = "Pagine";
$a->strings["New Page"] = "Nuova pagina web";
$a->strings["View"] = "Guarda";
$a->strings["Preview"] = "Anteprima";
$a->strings["Actions"] = "Azioni";
$a->strings["Page Link"] = "Link alla pagina";
$a->strings["Title"] = "Titolo";
$a->strings["Created"] = "Creato";
$a->strings["Edited"] = "Modificato";
$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "L'identificativo di sicurezza del modulo che hai riempito non è corretto. Probabilmente è accaduto perché la pagina è stata tenuta aperta troppo a lungo (ore?) prima di inviare il contenuto.";
$a->strings["Not a valid email address"] = "Email non valida";
$a->strings["Your email domain is not among those allowed on this site"] = "Il dominio della tua email attualmente non è permesso su questo sito";
$a->strings["Your email address is already registered at this site."] = "La tua email è già registrata su questo sito.";
$a->strings["An invitation is required."] = "È necessario un invito.";
$a->strings["Invitation could not be verified."] = "L'invito non può essere verificato.";
$a->strings["Please enter the required information."] = "Inserisci le informazioni richieste.";
$a->strings["Failed to store account information."] = "Non è stato possibile salvare le informazioni del tuo account.";
$a->strings["Registration confirmation for %s"] = "Registrazione di %s confermata";
$a->strings["Registration request at %s"] = "Richiesta di registrazione su %s";
$a->strings["Administrator"] = "Amministratore";
$a->strings["your registration password"] = "la password di registrazione";
$a->strings["Registration details for %s"] = "Dettagli della registrazione di %s";
$a->strings["Account approved."] = "Account approvato.";
$a->strings["Registration revoked for %s"] = "Registrazione revocata per %s";
$a->strings["Account verified. Please login."] = "Registrazione verificata. Adesso puoi effettuare login.";
$a->strings["Permission denied."] = "Permesso negato.";
$a->strings["Image exceeds website size limit of %lu bytes"] = "L'immagine supera il limite massimo di %lu bytes";
$a->strings["Image file is empty."] = "Il file dell'immagine è vuoto.";
$a->strings["Unable to process image"] = "Impossibile elaborare l'immagine";
$a->strings["Photo storage failed."] = "Impossibile caricare la foto.";
$a->strings["Photo Albums"] = "Album foto";
$a->strings["Upload New Photos"] = "Carica nuove foto";
$a->strings["Visible to your default audience"] = "Visibile secondo le impostazioni predefinite";
$a->strings["Show"] = "Mostra";
$a->strings["Don't show"] = "Non mostrare";
$a->strings["Permissions"] = "Permessi";
$a->strings["Close"] = "Chiudi";
$a->strings[" and "] = "e";
$a->strings["public profile"] = "profilo pubblico";
$a->strings["%1\$s changed %2\$s to &ldquo;%3\$s&rdquo;"] = "%1\$s ha cambiato %2\$s in &ldquo;%3\$s&rdquo;";
$a->strings["Visit %1\$s's %2\$s"] = "Guarda %2\$s di %1\$s ";
$a->strings["%1\$s has an updated %2\$s, changing %3\$s."] = "%1\$s ha aggiornato %2\$s cambiando %3\$s.";
$a->strings["Public Timeline"] = "Diario pubblico";
$a->strings["Item was not found."] = "Elemento non trovato.";
$a->strings["No source file."] = "Nessun file di origine.";
$a->strings["Cannot locate file to replace"] = "Il file da sostituire non è stato trovato";
$a->strings["Cannot locate file to revise/update"] = "Il file da aggiornare non è stato trovato";
$a->strings["File exceeds size limit of %d"] = "Il file supera la dimensione massima di %d";
$a->strings["You have reached your limit of %1$.0f Mbytes attachment storage."] = "Hai raggiunto il limite complessivo di %1$.0f Mbytes per gli allegati.";
$a->strings["File upload failed. Possible system limit or action terminated."] = "Caricamento file fallito, potrebbe aver superato i limiti o l'azione potrebbe essere stata interrotta.";
$a->strings["Stored file could not be verified. Upload failed."] = "Il file non può essere verificato. Caricamento fallito.";
$a->strings["Path not available."] = "Percorso non disponibile.";
$a->strings["Empty pathname"] = "Il percorso del file è vuoto";
$a->strings["duplicate filename or path"] = "il file o percorso del file è duplicato";
$a->strings["Path not found."] = "Percorso del file non trovato.";
$a->strings["mkdir failed."] = "mkdir fallito.";
$a->strings["database storage failed."] = "scrittura su database fallita.";
$a->strings["Click here to upgrade."] = "Clicca qui per aggiornare.";
$a->strings["This action exceeds the limits set by your subscription plan."] = "Questa operazione esce dai termini del tuo abbonamento.";
$a->strings["This action is not available under your subscription plan."] = "Questa operazione non è prevista dal tuo abbonamento.";
$a->strings["l F d, Y \\@ g:i A"] = "l d F Y \\@ G:i";
$a->strings["Starts:"] = "Inizio:";
$a->strings["Finishes:"] = "Fine:";
$a->strings["Location:"] = "Luogo:";
$a->strings["Logout"] = "Esci";
$a->strings["End this session"] = "Chiudi questa sessione";
$a->strings["Home"] = "Bacheca";
$a->strings["Your posts and conversations"] = "I tuoi articoli e conversazioni";
$a->strings["View Profile"] = "Profilo";
$a->strings["Your profile page"] = "Il tuo profilo";
$a->strings["Edit Profiles"] = "Modifica i profili";
$a->strings["Manage/Edit profiles"] = "Gestisci/modifica i profili";
$a->strings["Edit Profile"] = "Modifica il profilo";
$a->strings["Edit your profile"] = "Modifica il profilo";
$a->strings["Your photos"] = "Le tue foto";
$a->strings["Your files"] = "I tuoi file";
$a->strings["Your chatrooms"] = "Le tue chat";
$a->strings["Your bookmarks"] = "I tuoi segnalibri";
$a->strings["Your webpages"] = "Le tue pagine web";
$a->strings["Sign in"] = "Entra";
$a->strings["%s - click to logout"] = "%s - clicca per uscire";
$a->strings["Click to authenticate to your home hub"] = "Clicca per autenticarti sul tuo server principale";
$a->strings["Home Page"] = "Bacheca";
$a->strings["Register"] = "Iscriviti";
$a->strings["Create an account"] = "Crea un account";
$a->strings["Help and documentation"] = "Guida e documentazione";
$a->strings["Apps"] = "Apps";
$a->strings["Applications, utilities, links, games"] = "Applicazioni, utilità, link, giochi";
$a->strings["Search site content"] = "Cerca nel sito";
$a->strings["Channel Locator"] = "Ricerca canali";
$a->strings["Your matrix"] = "La tua rete";
$a->strings["Mark all matrix notifications seen"] = "Segna come lette le notifiche della tua rete";
$a->strings["Channel home"] = "Bacheca del canale";
$a->strings["Mark all channel notifications seen"] = "Segna come lette le notifiche dei canali";
$a->strings["Connections"] = "Contatti";
$a->strings["Notices"] = "Notifiche";
$a->strings["Notifications"] = "Notifiche";
$a->strings["See all notifications"] = "Vedi tutte le notifiche";
$a->strings["Mark all system notifications seen"] = "Segna come lette le notifiche di sistema";
$a->strings["Private mail"] = "Messaggi privati";
$a->strings["See all private messages"] = "Guarda tutti i messaggi privati";
$a->strings["Mark all private messages seen"] = "Segna come letti tutti i messaggi privati";
$a->strings["Inbox"] = "In arrivo";
$a->strings["Outbox"] = "Inviati";
$a->strings["New Message"] = "Nuovo messaggio";
$a->strings["Event Calendar"] = "Calendario";
$a->strings["See all events"] = "Guarda tutti gli eventi";
$a->strings["Mark all events seen"] = "Marca come letti tutti gli eventi";
$a->strings["Manage Your Channels"] = "Gestisci i contatti dei tuoi canali";
$a->strings["Account/Channel Settings"] = "Impostazioni account e canali";
$a->strings["Admin"] = "Amministrazione";
$a->strings["Site Setup and Configuration"] = "Configurazione del sito";
$a->strings["Nothing new here"] = "Niente di nuovo qui";
$a->strings["Please wait..."] = "Attendere...";
$a->strings["%1\$s's bookmarks"] = "I segnalibri di %1\$s";
$a->strings["Tags"] = "Tag";
$a->strings["Keywords"] = "Parole chiave";
$a->strings["have"] = "ho";
@ -303,9 +288,23 @@ $a->strings["%d connection in common"] = array(
);
$a->strings["show more"] = "mostra tutto";
$a->strings["This event has been added to your calendar."] = "Questo evento è stato aggiunto al tuo calendario";
$a->strings["Invalid data packet"] = "Dati 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["Not a valid email address"] = "Email non valida";
$a->strings["Your email domain is not among those allowed on this site"] = "Il dominio della tua email attualmente non è permesso su questo sito";
$a->strings["Your email address is already registered at this site."] = "La tua email è già registrata su questo sito.";
$a->strings["An invitation is required."] = "È necessario un invito.";
$a->strings["Invitation could not be verified."] = "L'invito non può essere verificato.";
$a->strings["Please enter the required information."] = "Inserisci le informazioni richieste.";
$a->strings["Failed to store account information."] = "Non è stato possibile salvare le informazioni del tuo account.";
$a->strings["Registration confirmation for %s"] = "Registrazione di %s confermata";
$a->strings["Registration request at %s"] = "Richiesta di registrazione su %s";
$a->strings["Administrator"] = "Amministratore";
$a->strings["your registration password"] = "la password di registrazione";
$a->strings["Registration details for %s"] = "Dettagli della registrazione di %s";
$a->strings["Account approved."] = "Account approvato.";
$a->strings["Registration revoked for %s"] = "Registrazione revocata per %s";
$a->strings["Account verified. Please login."] = "Registrazione verificata. Adesso puoi effettuare login.";
$a->strings["%1\$s likes %2\$s's %3\$s"] = "A %1\$s piace %3\$s di %2\$s";
$a->strings["Attachments:"] = "Allegati:";
$a->strings["Miscellaneous"] = "Altro";
$a->strings["year"] = "anno";
$a->strings["month"] = "mese";
@ -333,12 +332,12 @@ $a->strings["Newest to Oldest"] = "Dal più nuovo al più vecchio";
$a->strings["Enable Safe Search"] = "Abilita SafeSearch";
$a->strings["Disable Safe Search"] = "Disabilita SafeSearch";
$a->strings["Safe Mode"] = "Modalità SafeSearch";
$a->strings["Red Matrix Notification"] = "Notifica di Red Matrix";
$a->strings["redmatrix"] = "redmatrix";
$a->strings["Red Matrix Notification"] = "Notifica di RedMatrix";
$a->strings["redmatrix"] = "RedMatrix";
$a->strings["Thank You,"] = "Grazie,";
$a->strings["%s Administrator"] = "Amministratore %s";
$a->strings["%s <!item_type!>"] = "%s <!item_type!>";
$a->strings["[Red:Notify] New mail received at %s"] = "[Red:Notifica] Nuovo messaggio ricevuto su %s";
$a->strings["[Red:Notify] New mail received at %s"] = "[RedMatrix] Nuovo messaggio ricevuto 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";
@ -346,33 +345,33 @@ $a->strings["Please visit %s to view and/or reply to your private messages."] =
$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["[Red:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Red:Notifica] Nuovo commento di %2\$s alla conversazione #%1\$d";
$a->strings["[Red:Notify] Comment to conversation #%1\$d by %2\$s"] = "[RedMatrix] 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["[Red:Notify] %s posted to your profile wall"] = "[Red:Notifica] %s ha scritto sulla tua bacheca";
$a->strings["[Red:Notify] %s posted to your profile wall"] = "[RedMatrix] %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["[Red:Notify] %s tagged you"] = "[Red:Notifica] %s ti ha taggato";
$a->strings["[Red:Notify] %s tagged you"] = "[RedMatrix] %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["[Red:Notify] %1\$s poked you"] = "[Red:Notifica] %1\$s ti ha mandato un poke";
$a->strings["[Red:Notify] %1\$s poked you"] = "[RedMatrix] %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["[Red:Notify] %s tagged your post"] = "[Red:Notifica] %s ha taggato il tuo articolo";
$a->strings["[Red:Notify] %s tagged your post"] = "[RedMatrix] %s ha taggato il tuo articolo";
$a->strings["%1\$s, %2\$s tagged your post at %3\$s"] = "%1\$s, %2\$s ha taggato il tuo articolo 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 articolo[/zrl]";
$a->strings["[Red:Notify] Introduction received"] = "[Red:Notifica] Hai una richiesta di amicizia";
$a->strings["[Red:Notify] Introduction received"] = "[RedMatrix] 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["[Red:Notify] Friend suggestion received"] = "[Red:Notifica] Ti è stato suggerito un amico";
$a->strings["[Red:Notify] Friend suggestion received"] = "[RedMatrix] 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["[Red:Notify]"] = "[Red:Notifica]";
$a->strings["[Red:Notify]"] = "[RedMatrix]";
$a->strings["parent"] = "cartella superiore";
$a->strings["Collection"] = "Cartella";
$a->strings["Principal"] = "Principale";
@ -415,6 +414,7 @@ $a->strings["Follow Thread"] = "Segui la discussione";
$a->strings["View Status"] = "Guarda il messaggio di stato";
$a->strings["View Photos"] = "Guarda le foto";
$a->strings["Matrix Activity"] = "Attività nella tua rete";
$a->strings["Connect"] = "Aggiungi";
$a->strings["Edit Contact"] = "Modifica il contatto";
$a->strings["Send PM"] = "Invia messaggio privato";
$a->strings["%s likes this."] = "Piace a %s.";
@ -488,7 +488,7 @@ $a->strings["Status Messages and Posts"] = "Articoli e messaggi di stato";
$a->strings["About"] = "Informazioni";
$a->strings["Profile Details"] = "Dettagli del profilo";
$a->strings["Files and Storage"] = "Archivio file";
$a->strings["Chatrooms"] = "Chat";
$a->strings["Chatrooms"] = "Area chat";
$a->strings["Saved Bookmarks"] = "Segnalibri salvati";
$a->strings["Manage Webpages"] = "Gestisci le pagine web";
$a->strings["General Features"] = "Funzionalità di base";
@ -504,8 +504,10 @@ $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 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["Extended Identity Sharing"] = "Condivisione avanzata dell'identità";
$a->strings["Share your identity with all websites on the internet. When disabled, identity is only shared with sites in the matrix."] = "Rendi nota la tua identità a tutti i siti internet. Se disabilitato, la tua identità sarà comunicata solo ai siti red matrix.";
$a->strings["Share your identity with all websites on the internet. When disabled, identity is only shared with sites in the matrix."] = "Rendi nota la tua identità a tutti i siti internet. Se disabilitato, la tua identità sarà comunicata solo ai siti RedMatrix.";
$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";
@ -555,11 +557,11 @@ $a->strings["Channel was deleted and no longer exists."] = "Il canale è stato r
$a->strings["Channel discovery failed."] = "La ricerca del canale non ha avuto successo.";
$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["Missing room name"] = "Chat senza nome";
$a->strings["Duplicate room name"] = "Il nome della chat è duplicato";
$a->strings["Invalid room specifier."] = "Il nome della chat non è valido.";
$a->strings["Room not found."] = "Chat non trovata.";
$a->strings["Room is full"] = "La chat è al completo";
$a->strings["Missing room name"] = "Area chat senza nome";
$a->strings["Duplicate room name"] = "Il nome dell'area chat è duplicato";
$a->strings["Invalid room specifier."] = "Il nome dell'area chat non è valido.";
$a->strings["Room not found."] = "Area chat non trovata.";
$a->strings["Room is full"] = "L'area chat è al completo";
$a->strings["Permission denied"] = "Permesso negato";
$a->strings["(Unknown)"] = "(Sconosciuto)";
$a->strings["Visible to anybody on the internet."] = "Visibile a chiunque su internet";
@ -569,6 +571,7 @@ $a->strings["Visible to anybody authenticated."] = "Visibile a chiunque sia aute
$a->strings["Visible to anybody on %s."] = "Visibile a tutti in %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 non trovato.";
$a->strings["Collection is empty."] = "L'insieme di canali è vuoto.";
@ -596,7 +599,6 @@ $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["Connect"] = "Aggiungi";
$a->strings["Change profile photo"] = "Cambia la foto del profilo";
$a->strings["Profiles"] = "Profili";
$a->strings["Manage/edit profiles"] = "Gestisci/modifica i profili";
@ -642,7 +644,6 @@ $a->strings["Love/Romance:"] = "Amore:";
$a->strings["Work/employment:"] = "Lavoro:";
$a->strings["School/education:"] = "Scuola:";
$a->strings["Like this thing"] = "Mi piace questo oggetto";
$a->strings["view full size"] = "guarda nelle dimensioni reali";
$a->strings["Image/photo"] = "Immagine";
$a->strings["Encrypted content"] = "Contenuto crittografato";
$a->strings["QR code"] = "QR code";
@ -683,9 +684,9 @@ $a->strings["Export channel"] = "Esporta il canale";
$a->strings["Automatic Permissions (Advanced)"] = "Permessi predefiniti (avanzato)";
$a->strings["Premium Channel Settings"] = "Canale premium - impostazioni";
$a->strings["Check Mail"] = "Controlla i messaggi";
$a->strings["Chat Rooms"] = "Chat attive";
$a->strings["Bookmarked Chatrooms"] = "Chat nei segnalibri";
$a->strings["Suggested Chatrooms"] = "Chat suggerite";
$a->strings["Chat Rooms"] = "Aree chat attive";
$a->strings["Bookmarked Chatrooms"] = "Aree chat nei segnalibri";
$a->strings["Suggested Chatrooms"] = "Aree chat suggerite";
$a->strings["Save to Folder"] = "Salva nella cartella";
$a->strings["View all"] = "Vedi tutto";
$a->strings["__ctx:noun__ Dislike"] = array(
@ -756,6 +757,7 @@ $a->strings[" "] = " ";
$a->strings["timeago.numbers"] = "timeago.numbers";
$a->strings["New window"] = "Nuova finestra";
$a->strings["Open the selected location in a different window or browser tab"] = "Apri l'indirizzo selezionato in una nuova scheda o finestra";
$a->strings["User '%s' deleted"] = "Utente '%s' eliminato";
$a->strings["Male"] = "Maschio";
$a->strings["Female"] = "Femmina";
$a->strings["Currently Male"] = "Al momento maschio";
@ -859,7 +861,7 @@ $a->strings["Menu Item Permissions"] = "Permessi del menu";
$a->strings["(click to open/close)"] = "(clicca per aprire/chiudere)";
$a->strings["Link text"] = "Testo del link";
$a->strings["URL of link"] = "Indirizzo del link";
$a->strings["Use Red magic-auth if available"] = "Usa l'autenticazione magica di Red, se disponibile";
$a->strings["Use Red magic-auth if available"] = "Usa l'autenticazione magica di RedMatrix, se disponibile";
$a->strings["Open link in new window"] = "Apri il link in una nuova finestra";
$a->strings["Order in list"] = "Ordine dell'elenco";
$a->strings["Higher numbers will sink to bottom of listing"] = "I numeri più alti andranno in fondo all'elenco";
@ -905,6 +907,7 @@ $a->strings["Confirm:"] = "Conferma:";
$a->strings["Leave password fields blank unless changing"] = "Lascia questi campi in bianco per non cambiare la password";
$a->strings["Email Address:"] = "Indirizzo email:";
$a->strings["Remove Account"] = "Elimina l'account";
$a->strings["Remove this account from this server including all its channels"] = "Elimina questo account da questo server, inclusi tutti i canali.";
$a->strings["Warning: This action is permanent and cannot be reversed."] = "Attenzione: questa azione è permanente e non potrà più essere annullata.";
$a->strings["Off"] = "Off";
$a->strings["On"] = "On";
@ -1035,7 +1038,7 @@ $a->strings["Sexual Preference"] = "Preferenze sessuali";
$a->strings["Homepage"] = "Home page";
$a->strings["Interests"] = "Interessi";
$a->strings["Address"] = "Indirizzo";
$a->strings["Location"] = "Luogo attuale";
$a->strings["Location"] = "Posizione geografica";
$a->strings["Profile updated."] = "Profilo aggiornato.";
$a->strings["Hide your contact/friend list from viewers of this profile?"] = "Nascondi la tua lista di contatti/amici ai visitatori di questo profilo?";
$a->strings["Edit Profile Details"] = "Modifica i dettagli del profilo";
@ -1090,7 +1093,7 @@ $a->strings["Click on a contact to add or remove."] = "Clicca su un contatto per
$a->strings["Visible To"] = "Visibile a";
$a->strings["All Connections"] = "Tutti i contatti";
$a->strings["Public Sites"] = "Siti pubblici";
$a->strings["The listed sites allow public registration into the Red Matrix. All sites in the matrix are interlinked so membership on any of them conveys membership in the matrix as a whole. Some sites may require subscription or provide tiered service plans. The provider links <strong>may</strong> provide additional details."] = "Gli indirizzi elencati permettono la registrazione su Red Matrix. Tutti i siti di questa rete sono interconnessi, quindi essere registrati su uno è come essere registrati ovunque. Alcuni potrebbero richiedere un'iscrizione a pagamento o prevedere tipi diversi di abbonamento. Potrai trovare maggiori informazioni al riguardo visitando ciascun sito.";
$a->strings["The listed sites allow public registration into the Red Matrix. All sites in the matrix are interlinked so membership on any of them conveys membership in the matrix as a whole. Some sites may require subscription or provide tiered service plans. The provider links <strong>may</strong> provide additional details."] = "Gli indirizzi elencati permettono la registrazione su RedMatrix. Tutti i siti di questa rete sono interconnessi, quindi essere registrati su uno è come essere registrati ovunque. Alcuni potrebbero richiedere un'iscrizione a pagamento o prevedere tipi diversi di abbonamento. Potrai trovare maggiori informazioni al riguardo visitando ciascun sito.";
$a->strings["Site URL"] = "URL del sito";
$a->strings["Access Type"] = "Tipo di accesso";
$a->strings["Registration Policy"] = "Politica di registrazione";
@ -1101,15 +1104,15 @@ $a->strings["Save Bookmark"] = "Salva segnalibro";
$a->strings["URL of bookmark"] = "URL del segnalibro";
$a->strings["Description"] = "Descrizione";
$a->strings["Or enter new bookmark folder name"] = "O inserisci il nome di una nuova cartella di segnalibri";
$a->strings["Room not found"] = "Chat non trovata";
$a->strings["Leave Room"] = "Lascia la chat";
$a->strings["Delete This Room"] = "Elimina questa chat";
$a->strings["Room not found"] = "Area chat non trovata";
$a->strings["Leave Room"] = "Lascia l'area chat";
$a->strings["Delete This Room"] = "Elimina questa area chat";
$a->strings["I am away right now"] = "Non sono presente al momento";
$a->strings["I am online"] = "Sono online";
$a->strings["Bookmark this room"] = "Aggiungi chat ai segnalibri";
$a->strings["New Chatroom"] = "Nuova chat";
$a->strings["Chatroom Name"] = "Nome della chat";
$a->strings["%1\$s's Chatrooms"] = "Le chat di %1\$s";
$a->strings["Bookmark this room"] = "Aggiungi l'area chat ai segnalibri";
$a->strings["New Chatroom"] = "Nuova area chat";
$a->strings["Chatroom Name"] = "Nome dell'area chat";
$a->strings["%1\$s's Chatrooms"] = "Le aree chat di %1\$s";
$a->strings["Maximum daily site registrations exceeded. Please try again tomorrow."] = "È stato superato il numero massimo giornaliero di registrazioni a questo sito. Riprova domani!";
$a->strings["Please indicate acceptance of the Terms of Service. Registration failed."] = "Impossibile proseguire. Devi prima accettare le Condizioni d'Uso del servizio.";
$a->strings["Passwords do not match."] = "Le password non corrispondono.";
@ -1131,7 +1134,7 @@ $a->strings["Please re-enter your password"] = "Ripeti la password per verifica"
$a->strings["Away"] = "Assente";
$a->strings["Online"] = "Online";
$a->strings["Please login."] = "Accedi.";
$a->strings["Red Matrix - Guests: Username: {your email address}, Password: +++"] = "Accesso a Red Matrix. Inserisci l'email con cui sei registrato e la password.";
$a->strings["Red Matrix - Guests: Username: {your email address}, Password: +++"] = "Accesso a RedMatrix. Inserisci l'email con cui sei registrato e la password.";
$a->strings["Channel removals are not allowed within 48 hours of changing the account password."] = "Non è possibile eliminare un canale prima di 48 ore dall'ultimo cambio password.";
$a->strings["Remove This Channel"] = "Elimina questo canale";
$a->strings["This will completely remove this channel from the network. Once this has been done it is not recoverable."] = "Questo comando rimuoverà completamente il canale che stai usando. Una volta fatto non sarà più possibile ripristinarlo.";
@ -1280,9 +1283,9 @@ $a->strings["Hometown: "] = "Città dove vivo:";
$a->strings["About: "] = "Informazioni:";
$a->strings["Keywords: "] = "Parole chiave:";
$a->strings["This site is not a directory server"] = "Questo sito non fornisce l'elenco generale dei canali";
$a->strings["Red Matrix - &quot;The Network&quot;"] = "Red Matrix - &quot;La Rete&quot;";
$a->strings["Red Matrix - &quot;The Network&quot;"] = "RedMatrix - &quot;La Rete&quot;";
$a->strings["Welcome to %s"] = "%s ti dà il benvenuto";
$a->strings["Red Matrix Server - Setup"] = "Red Matrix Server - Installazione";
$a->strings["Red Matrix Server - Setup"] = "RedMatrix Server - Installazione";
$a->strings["Could not connect to database."] = " Impossibile connettersi al database.";
$a->strings["Could not connect to specified site URL. Possible SSL certificate or DNS issue."] = "Non è possibile raggiungere l'indirizzo del sito specificato. Potrebbe essere un problema di SSL o DNS.";
$a->strings["Could not create table."] = "Impossibile creare le tabelle.";
@ -1293,7 +1296,7 @@ $a->strings["System check"] = "Verifica del sistema";
$a->strings["Next"] = "Successivo";
$a->strings["Check again"] = "Verifica di nuovo";
$a->strings["Database connection"] = "Connessione al database";
$a->strings["In order to install Red Matrix we need to know how to connect to your database."] = "Per installare Red Matrix è necessario conoscere i parametri di connessione al database.";
$a->strings["In order to install Red Matrix we need to know how to connect to your database."] = "Per installare RedMatrix è necessario conoscere i parametri di connessione al database.";
$a->strings["Please contact your hosting provider or site administrator if you have questions about these settings."] = "Contatta il tuo fornitore di hosting o l'amministratore del sito se hai domande su queste impostazioni.";
$a->strings["The database you specify below should already exist. If it does not, please create it before continuing."] = "Il database deve già esistere. Se non esiste, crealo prima di continuare.";
$a->strings["Database Server Name"] = "Server del database";
@ -1338,15 +1341,15 @@ $a->strings["Error: mb_string PHP module required but not installed."] = "Errore
$a->strings["Error: mcrypt PHP module required but not installed."] = "Errore: il modulo PHP mcrypt è richiesto ma non installato.";
$a->strings["The web installer needs to be able to create a file called \".htconfig.php\ in the top folder of your web server and it is unable to do so."] = "L'installazione web deve poter creare un file chiamato \".htconfig.php\" nella cartella principale del tuo web server ma non è in grado di farlo.";
$a->strings["This is most often a permission setting, as the web server may not be able to write files in your folder - even if you can."] = "Spesso ciò è dovuto ai permessi di accesso al disco: il web server potrebbe non aver diritto di scrivere il file nella cartella, anche se tu puoi.";
$a->strings["At the end of this procedure, we will give you a text to save in a file named .htconfig.php in your Red top folder."] = "Alla fine di questa procedura ti sarà dato il testo da salvare in un file di nome .htconfig.php dentro la cartella principale di Red.";
$a->strings["At the end of this procedure, we will give you a text to save in a file named .htconfig.php in your Red top folder."] = "Alla fine di questa procedura ti sarà dato il testo da salvare in un file di nome .htconfig.php dentro la cartella principale di RedMatrix.";
$a->strings["You can alternatively skip this procedure and perform a manual installation. Please see the file \"install/INSTALL.txt\" for instructions."] = "Puoi anche saltare questa procedura ed effettuare un'installazione manuale. Guarda il file 'install/INSTALL.txt' per le istruzioni.";
$a->strings[".htconfig.php is writable"] = ".htconfig.php è scrivibile";
$a->strings["Red uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering."] = "Red usa il sistema Smarty3 per costruire i suoi template grafici. Smarty3 è molto veloce perché compila i template delle pagine direttamente in PHP.";
$a->strings["In order to store these compiled templates, the web server needs to have write access to the directory %s under the Red top level folder."] = "Per poter memorizzare i template compilati, il web server deve avere accesso in scrittura a %s sotto la cartella di installazione di Red.";
$a->strings["In order to store these compiled templates, the web server needs to have write access to the directory %s under the Red top level folder."] = "Per poter memorizzare i template compilati, il web server deve avere accesso in scrittura a %s sotto la cartella di installazione di RedMatrix.";
$a->strings["Please ensure that the user that your web server runs as (e.g. www-data) has write access to this folder."] = "Assicurati che il tuo web server sia in esecuzione come un utente che ha diritto di scrittura su quella cartella (ad esempio www-data).";
$a->strings["Note: as a security measure, you should give the web server write access to %s only--not the template files (.tpl) that it contains."] = "Nota bene: come precauzione, dovresti dare i diritti di scrittura solamente su %s e non sui file template (.tpl) che contiene.";
$a->strings["%s is writable"] = "%s è scrivibile";
$a->strings["Red uses the store directory to save uploaded files. The web server needs to have write access to the store directory under the Red top level folder"] = "Red usa un archivio per salvare i file caricati. Il server deve avere i diritti di scrittura sulla cartella dell'archivio che si trova dentro la cartella principale di Red";
$a->strings["Red uses the store directory to save uploaded files. The web server needs to have write access to the store directory under the Red top level folder"] = "RedMatrix usa un archivio per salvare i file caricati. Il server deve avere i diritti di scrittura sulla cartella dell'archivio che si trova dentro la cartella principale di RedMatrix";
$a->strings["store is writable"] = "l'archivio è scrivibile";
$a->strings["SSL certificate cannot be validated. Fix certificate or disable https access to this site."] = "Il certificato SSL non può essere validato. Correggi l'errore o disabilita l'accesso https al sito.";
$a->strings["If you have https access to your website or allow connections to TCP port 443 (the https: port), you MUST use a browser-valid certificate. You MUST NOT use self-signed certificates!"] = "Se abiliti https per il tuo sito o permetti connessioni TCP su port 443 (quella di https), DEVI usare un certificato riconosciuto dai browser internet. NON DEVI usare certificati generati da te!";
@ -1384,10 +1387,10 @@ $a->strings["Delete Webpage"] = "Elimina la pagina web";
$a->strings["Version %s"] = "Versione %s";
$a->strings["Installed plugins/addons/apps:"] = "App e componenti installati:";
$a->strings["No installed plugins/addons/apps"] = "Nessuna app o componente installato";
$a->strings["Red"] = "Red";
$a->strings["Red"] = "RedMatrix";
$a->strings["This is a hub of the Red Matrix - a global cooperative network of decentralized privacy enhanced websites."] = "Questo è un hub di RedMatrix - una rete cooperativa e decentralizzata di siti ad elevata privacy. ";
$a->strings["Running at web location"] = "In esecuzione sull'indirizzo web";
$a->strings["Please visit <a href=\"http://getzot.com\">GetZot.com</a> to learn more about the Red Matrix."] = "Visita <a href=\"http://getzot.com\">GetZot.com</a> per scoprire il progetto Red Matrix.";
$a->strings["Please visit <a href=\"http://getzot.com\">GetZot.com</a> to learn more about the Red Matrix."] = "Visita <a href=\"http://getzot.com\">GetZot.com</a> per scoprire il progetto RedMatrix.";
$a->strings["Bug reports and issues: please visit"] = "Per segnalare bug e problemi: visita";
$a->strings["Suggestions, praise, etc. - please email \"redmatrix\" at librelist - dot com"] = "Per consigli, ringraziamenti, ecc. - scrivi a \"redmatrix\" at librelist - dot com";
$a->strings["Site Administrators"] = "Amministratori del sito";
@ -1530,6 +1533,10 @@ $a->strings["Accessibility system theme"] = "Tema di sistema ad alta accessibili
$a->strings["Accessibility theme"] = "Tema ad alta accessibilità";
$a->strings["Channel to use for this website's static pages"] = "Canale da usare per le pagine statiche di questo sito";
$a->strings["Site Channel"] = "Canale del sito";
$a->strings["Enable Diaspora Protocol"] = "Abilita la comunicazione con Diaspora";
$a->strings["Communicate with Diaspora and Friendica - experimental"] = "Sperimentale - per comunicare con Diaspora e Friendica";
$a->strings["Allow Feeds as Connections"] = "Permetti di aggiungere i feed come contatti";
$a->strings["(Heavy system resource usage)"] = "(Uso intenso delle risorse di sistema!)";
$a->strings["Maximum image size"] = "Dimensione massima immagini";
$a->strings["Maximum size in bytes of uploaded images. Default is 0, which means no limits."] = "Massima dimensione in byte delle immagini caricate. Il default è 0, cioè nessun limite.";
$a->strings["Does this site allow new member registration?"] = "Questo sito permette a nuovi utenti di registrarsi?";
@ -1583,7 +1590,6 @@ $a->strings["%s user deleted"] = array(
1 => "%s utenti cancellati",
);
$a->strings["Account not found"] = "Account non trovato";
$a->strings["User '%s' deleted"] = "Utente '%s' eliminato";
$a->strings["User '%s' unblocked"] = "Utente '%s' sbloccato";
$a->strings["User '%s' blocked"] = "Utente '%s' bloccato";
$a->strings["Users"] = "Utenti";
@ -1631,8 +1637,18 @@ $a->strings["Log settings updated."] = "Impostazioni di log aggiornate.";
$a->strings["Clear"] = "Pulisci";
$a->strings["Debugging"] = "Debugging";
$a->strings["Log file"] = "File di log";
$a->strings["Must be writable by web server. Relative to your Red top-level directory."] = "Deve essere scrivibile dal web server. È relativa alla cartella dove è installato Red.";
$a->strings["Must be writable by web server. Relative to your Red top-level directory."] = "Deve essere scrivibile dal web server. È relativa alla cartella dove è installato RedMatrix.";
$a->strings["Log level"] = "Livello di log";
$a->strings["New Profile Field"] = "Nuovo campo del profilo";
$a->strings["Field nickname"] = "Nome breve del campo";
$a->strings["System name of field"] = "Nome di sistema del campo";
$a->strings["Input type"] = "Tipo di dati";
$a->strings["Field Name"] = "Nome del campo";
$a->strings["Label on profile pages"] = "Etichetta da mostrare sulla pagina del profilo";
$a->strings["Help text"] = "Testo di aiuto";
$a->strings["Additional info (optional)"] = "Informazioni aggiuntive (opzionali)";
$a->strings["Field definition not found"] = "Impossibile trovare la definizione del campo";
$a->strings["Edit Profile Field"] = "Modifica campo del profilo";
$a->strings["Thing updated"] = "L'oggetto è stato aggiornato";
$a->strings["Object store: failed"] = "Impossibile memorizzare l'oggetto.";
$a->strings["Thing added"] = "L'oggetto è stato aggiunto";
@ -1666,7 +1682,7 @@ $a->strings["For either option, please choose whether to make this hub your new
$a->strings["Make this hub my primary location"] = "Rendi questo server il mio indirizzo primario";
$a->strings["Total invitation limit exceeded."] = "Hai superato il numero massimo di inviti.";
$a->strings["%s : Not a valid email address."] = "%s: non è un indirizzo email valido.";
$a->strings["Please join us on Red"] = "Vieni con noi su Red";
$a->strings["Please join us on Red"] = "Vieni con noi su RedMatrix";
$a->strings["Invitation limit exceeded. Please contact your site administrator."] = "Hai superato il numero massimo di inviti. Contatta l'amministratore se necessario.";
$a->strings["%s : Message delivery failed."] = "%s: la consegna del messaggio è fallita.";
$a->strings["%d message sent."] = array(
@ -1746,7 +1762,6 @@ $a->strings["No secure communications available. You <strong>may</strong> be abl
$a->strings["Send Reply"] = "Invia la risposta";
$a->strings["You have created %1$.0f of %2$.0f allowed channels."] = "Hai creato %1$.0f dei %2$.0f canali permessi.";
$a->strings["Create a new channel"] = "Crea un nuovo canale";
$a->strings["Channel Manager"] = "Gestione canali";
$a->strings["Current Channel"] = "Canale attuale";
$a->strings["Attach to one of your channels by selecting it."] = "Seleziona il canale a cui vuoi passare.";
$a->strings["Default Channel"] = "Canale predefinito";
@ -1808,11 +1823,6 @@ $a->strings["Price of app"] = "Prezzo app";
$a->strings["Location (URL) to purchase app"] = "Indirizzo (URL) per acquistare la app";
$a->strings["Poll"] = "Sondaggio";
$a->strings["View Results"] = "Guarda i risultati";
$a->strings["Friendica Photo Album Import"] = "Importazione album fotografici da Friendica";
$a->strings["This will import all your Friendica photo albums to this Red channel."] = "Questa operazione importerà tutti i tuoi album fotografici da Friendica a questo canale RedMatrix.";
$a->strings["Friendica Server base URL"] = "URL base del server Friendica";
$a->strings["Friendica Login Username"] = "Nome utente Friendica";
$a->strings["Friendica Login Password"] = "Password Friendica";
$a->strings["Account removals are not allowed within 48 hours of changing the account password."] = "Non è possibile eliminare il tuo account prima di 48 ore dall'ultimo cambio password.";
$a->strings["Remove This Account"] = "Elimina questo account";
$a->strings["This will completely remove this account including all its channels from the network. Once this has been done it is not recoverable."] = "Questa operazione rimuoverà completamente il tuo account dalla rete, inclusi tutti i suoi canali. Una volta avviata la rimozione, sarà definitiva.";
@ -1834,8 +1844,8 @@ $a->strings["Set line-height for posts and comments"] = "Altezza della riga per
$a->strings["Set background image"] = "Immagine di sfondo";
$a->strings["Set background attachment"] = "Allega uno sfondo";
$a->strings["Set background color"] = "Colore di sfondo";
$a->strings["Set section background image"] = "Immagine di sfondo della sezione";
$a->strings["Set section background color"] = "Colore di sfondo della sezione";
$a->strings["Set section background image"] = "Immagine di sfondo dei contenuti";
$a->strings["Set section background color"] = "Colore di sfondo dei contenuti";
$a->strings["Set color of items - use hex"] = "Colore degli elementi della pagina - esadecimale";
$a->strings["Set color of links - use hex"] = "Colore dei link - esadecimale";
$a->strings["Set max-width for items. Default 400px"] = "Larghezza massima degli elementi della pagina. Predefinita: 400px";
@ -1848,9 +1858,9 @@ $a->strings["Display post previews only"] = "Mostra le anteprime solo degli arti
$a->strings["Display side bar on channel page"] = "Mostra la colonna laterale sulla pagina del canale";
$a->strings["Colour of the navigation bar"] = "Colore della barra di navigazione";
$a->strings["Item float"] = "Float degli oggetti della pagina";
$a->strings["Left offset of the section element"] = "Spostamento a sinistra della sezione";
$a->strings["Right offset of the section element"] = "Spostamento a destra della sezione";
$a->strings["Section width"] = "Larghezza della section";
$a->strings["Left offset of the section element"] = "Spostamento a sinistra dei contenuti";
$a->strings["Right offset of the section element"] = "Spostamento a destra dei contenuti";
$a->strings["Section width"] = "Larghezza dei contenuti";
$a->strings["Left offset of the aside"] = "Spostamento a sinistra della colonna laterale";
$a->strings["Right offset of the aside element"] = "Spostamento a destra della colonna laterale";
$a->strings["None"] = "Nessuno";
@ -1889,7 +1899,7 @@ $a->strings["Sloppy photo albums"] = "Album con foto storte";
$a->strings["Are you a clean desk or a messy desk person?"] = "La tua scrivania è sempre a posto? Sei una persona disordinata?";
$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 Red Matrix"] = "Registrati per accedere ai servizi e alle applicazioni di Red Matrix";
$a->strings["Create an account to access services and applications within the Red Matrix"] = "Registrati per accedere ai servizi e alle applicazioni di RedMatrix";
$a->strings["Password"] = "Password";
$a->strings["Remember me"] = "Resta connesso";
$a->strings["Forgot your password?"] = "Hai dimenticato la password?";