Merge remote-tracking branch 'remotes/upstream/master'
* remotes/upstream/master: service class restrict the email connector stray s typos add event titles to discovered birthday events change required doco change event behaviour so that title is required but description is not event summary/title propagate remote deletes remove possibly unnecessary checks for likes or comments created by Diaspora users store signature info for remote users too was passing the wrong arguments to the signature storage function add some debug logging revert extra Diaspora disabling changes to try to eliminate Mustard double-posting Clean up the Diaspora connectivity: improve remote delete forwarding typos in bbcode, add service class restrictions to jot uploads rev update
This commit is contained in:
commit
5b35a02d26
22 changed files with 777 additions and 475 deletions
4
boot.php
4
boot.php
|
|
@ -10,9 +10,9 @@ require_once('include/nav.php');
|
|||
require_once('include/cache.php');
|
||||
|
||||
define ( 'FRIENDICA_PLATFORM', 'Friendica');
|
||||
define ( 'FRIENDICA_VERSION', '3.0.1384' );
|
||||
define ( 'FRIENDICA_VERSION', '3.0.1386' );
|
||||
define ( 'DFRN_PROTOCOL_VERSION', '2.23' );
|
||||
define ( 'DB_UPDATE_VERSION', 1150 );
|
||||
define ( 'DB_UPDATE_VERSION', 1151 );
|
||||
|
||||
define ( 'EOL', "<br />\r\n" );
|
||||
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
|
||||
|
|
|
|||
10
database.sql
10
database.sql
|
|
@ -254,6 +254,7 @@ CREATE TABLE IF NOT EXISTS `event` (
|
|||
`edited` datetime NOT NULL,
|
||||
`start` datetime NOT NULL,
|
||||
`finish` datetime NOT NULL,
|
||||
`summary` text NOT NULL,
|
||||
`desc` text NOT NULL,
|
||||
`location` text NOT NULL,
|
||||
`type` char(255) NOT NULL,
|
||||
|
|
@ -263,7 +264,14 @@ CREATE TABLE IF NOT EXISTS `event` (
|
|||
`allow_gid` mediumtext NOT NULL,
|
||||
`deny_cid` mediumtext NOT NULL,
|
||||
`deny_gid` mediumtext NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uid` ( `uid` ),
|
||||
KEY `cid` ( `cid` ),
|
||||
KEY `uri` ( `uri` ),
|
||||
KEY `type` ( `type` ),
|
||||
KEY `start` ( `start` ),
|
||||
KEY `finish` ( `finish` ),
|
||||
KEY `adjust` ( `adjust` )
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -565,7 +565,7 @@
|
|||
if(requestdata('lat') && requestdata('long'))
|
||||
$_REQUEST['coord'] = sprintf("%s %s",requestdata('lat'),requestdata('long'));
|
||||
$_REQUEST['profile_uid'] = local_user();
|
||||
// if(requestdata('parent'))
|
||||
|
||||
if($parent)
|
||||
$_REQUEST['type'] = 'net-comment';
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ function bb2diaspora($Text,$preserve_nl = false) {
|
|||
// to define the closing tag for the list elements. So nested lists
|
||||
// are going to be flattened out in Diaspora for now
|
||||
$endlessloop = 0;
|
||||
while ((strpos($Text, "[/list]") !== false) && (strpos($Text, "[list") !== false)
|
||||
while ((strpos($Text, "[/list]") !== false) && (strpos($Text, "[list") !== false) &&
|
||||
(strpos($Text, "[/ol]") !== false) && (strpos($Text, "[ol]") !== false) &&
|
||||
(strpos($Text, "[/ul]") !== false) && (strpos($Text, "[ul]") !== false) && (++$endlessloop < 20)) {
|
||||
$Text = preg_replace_callback("/\[list\](.*?)\[\/list\]/is", 'diaspora_ul', $Text);
|
||||
|
|
|
|||
|
|
@ -162,7 +162,8 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
|
|||
|
||||
// handle nested lists
|
||||
$endlessloop = 0;
|
||||
while ((strpos($Text, "[/list]") !== false) && (strpos($Text, "[list]") !== false) &&
|
||||
|
||||
while ((strpos($Text, "[/list]") !== false) && (strpos($Text, "[list") !== false) &&
|
||||
(strpos($Text, "[/ol]") !== false) && (strpos($Text, "[ol]") !== false) &&
|
||||
(strpos($Text, "[/ul]") !== false) && (strpos($Text, "[ul]") !== false) && (++$endlessloop < 20)) {
|
||||
$Text = preg_replace("/\[list\](.*?)\[\/list\]/ism", '<ul class="listbullet" style="list-style-type: circle;">$1</ul>' ,$Text);
|
||||
|
|
@ -296,12 +297,16 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true) {
|
|||
$Text = oembed_bbcode2html($Text);
|
||||
|
||||
// If we found an event earlier, strip out all the event code and replace with a reformatted version.
|
||||
// Replace the event-start section with the entire formatted event. The other bbcode is stripped.
|
||||
// Summary (e.g. title) is required, earlier revisions only required description (in addition to
|
||||
// start which is always required). Allow desc with a missing summary for compatibility.
|
||||
|
||||
if(x($ev,'desc') && x($ev,'start')) {
|
||||
if((x($ev,'desc') || x($ev,'summary')) && x($ev,'start')) {
|
||||
$sub = format_event_html($ev);
|
||||
|
||||
$Text = preg_replace("/\[event\-description\](.*?)\[\/event\-description\]/ism",$sub,$Text);
|
||||
$Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/ism",'',$Text);
|
||||
$Text = preg_replace("/\[event\-summary\](.*?)\[\/event\-summary\]/ism",'',$Text);
|
||||
$Text = preg_replace("/\[event\-description\](.*?)\[\/event\-description\]/ism",'',$Text);
|
||||
$Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/ism",$sub,$Text);
|
||||
$Text = preg_replace("/\[event\-finish\](.*?)\[\/event\-finish\]/ism",'',$Text);
|
||||
$Text = preg_replace("/\[event\-location\](.*?)\[\/event\-location\]/ism",'',$Text);
|
||||
$Text = preg_replace("/\[event\-adjust\](.*?)\[\/event\-adjust\]/ism",'',$Text);
|
||||
|
|
|
|||
|
|
@ -447,11 +447,13 @@ function update_contact_birthdays() {
|
|||
*
|
||||
*/
|
||||
|
||||
$bdtext = t('Birthday:') . ' [url=' . $rr['url'] . ']' . $rr['name'] . '[/url]' ;
|
||||
$bdtext = sprintf( t('%s\'s birthday'), $rr['name']);
|
||||
$bdtext2 = sprintf( t('Happy Birthday %s'), ' [url=' . $rr['url'] . ']' . $rr['name'] . '[/url]') ;
|
||||
|
||||
|
||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`desc`,`type`,`adjust`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%d' ) ",
|
||||
|
||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`,`adjust`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%d' ) ",
|
||||
intval($rr['uid']),
|
||||
intval($rr['id']),
|
||||
dbesc(datetime_convert()),
|
||||
|
|
@ -459,6 +461,7 @@ function update_contact_birthdays() {
|
|||
dbesc(datetime_convert('UTC','UTC', $nextbd)),
|
||||
dbesc(datetime_convert('UTC','UTC', $nextbd . ' + 1 day ')),
|
||||
dbesc($bdtext),
|
||||
dbesc($bdtext2),
|
||||
dbesc('birthday'),
|
||||
intval(0)
|
||||
);
|
||||
|
|
|
|||
|
|
@ -113,7 +113,7 @@ function delivery_run($argv, $argc){
|
|||
$uid = $r[0]['uid'];
|
||||
$updated = $r[0]['edited'];
|
||||
|
||||
// The following seems superfluous. We've already checked for "if (! intval($r[0]['parent']))" a few lines up
|
||||
// POSSIBLE CLEANUP --> The following seems superfluous. We've already checked for "if (! intval($r[0]['parent']))" a few lines up
|
||||
if(! $parent_id)
|
||||
continue;
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,9 @@ function format_event_html($ev) {
|
|||
|
||||
$o = '<div class="vevent">' . "\r\n";
|
||||
|
||||
|
||||
$o .= '<p class="summary event-summary">' . bbcode($ev['summary']) . '</p>' . "\r\n";
|
||||
|
||||
$o .= '<p class="description event-description">' . bbcode($ev['desc']) . '</p>' . "\r\n";
|
||||
|
||||
$o .= '<p class="event-start">' . t('Starts:') . ' <abbr class="dtstart" title="'
|
||||
|
|
@ -114,6 +117,9 @@ function format_event_bbcode($ev) {
|
|||
|
||||
$o = '';
|
||||
|
||||
if($ev['summary'])
|
||||
$o .= '[event-summary]' . $ev['summary'] . '[/event-summary]';
|
||||
|
||||
if($ev['desc'])
|
||||
$o .= '[event-description]' . $ev['desc'] . '[/event-description]';
|
||||
|
||||
|
|
@ -147,6 +153,9 @@ function bbtoevent($s) {
|
|||
|
||||
$ev = array();
|
||||
|
||||
$match = '';
|
||||
if(preg_match("/\[event\-summary\](.*?)\[\/event\-summary\]/is",$s,$match))
|
||||
$ev['summary'] = $match[1];
|
||||
$match = '';
|
||||
if(preg_match("/\[event\-description\](.*?)\[\/event\-description\]/is",$s,$match))
|
||||
$ev['desc'] = $match[1];
|
||||
|
|
@ -244,6 +253,7 @@ function event_store($arr) {
|
|||
`edited` = '%s',
|
||||
`start` = '%s',
|
||||
`finish` = '%s',
|
||||
`summary` = '%s',
|
||||
`desc` = '%s',
|
||||
`location` = '%s',
|
||||
`type` = '%s',
|
||||
|
|
@ -258,6 +268,7 @@ function event_store($arr) {
|
|||
dbesc($arr['edited']),
|
||||
dbesc($arr['start']),
|
||||
dbesc($arr['finish']),
|
||||
dbesc($arr['summary']),
|
||||
dbesc($arr['desc']),
|
||||
dbesc($arr['location']),
|
||||
dbesc($arr['type']),
|
||||
|
|
@ -306,9 +317,9 @@ function event_store($arr) {
|
|||
|
||||
// New event. Store it.
|
||||
|
||||
$r = q("INSERT INTO `event` ( `uid`,`cid`,`uri`,`created`,`edited`,`start`,`finish`,`desc`,`location`,`type`,
|
||||
$r = q("INSERT INTO `event` ( `uid`,`cid`,`uri`,`created`,`edited`,`start`,`finish`,`summary`, `desc`,`location`,`type`,
|
||||
`adjust`,`nofinish`,`allow_cid`,`allow_gid`,`deny_cid`,`deny_gid`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', '%s', '%s', '%s' ) ",
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', '%s', '%s', '%s' ) ",
|
||||
intval($arr['uid']),
|
||||
intval($arr['cid']),
|
||||
dbesc($arr['uri']),
|
||||
|
|
@ -316,6 +327,7 @@ function event_store($arr) {
|
|||
dbesc($arr['edited']),
|
||||
dbesc($arr['start']),
|
||||
dbesc($arr['finish']),
|
||||
dbesc($arr['summary']),
|
||||
dbesc($arr['desc']),
|
||||
dbesc($arr['location']),
|
||||
dbesc($arr['type']),
|
||||
|
|
|
|||
|
|
@ -1457,11 +1457,12 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
|
|||
*
|
||||
*/
|
||||
|
||||
$bdtext = t('Birthday:') . ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]' ;
|
||||
$bdtext = sprintf( t('%s\'s birthday'), $contact['name']);
|
||||
$bdtext2 = sprintf( t('Happy Birthday %s'), ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]' ) ;
|
||||
|
||||
|
||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`desc`,`type`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s' ) ",
|
||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s' ) ",
|
||||
intval($contact['uid']),
|
||||
intval($contact['id']),
|
||||
dbesc(datetime_convert()),
|
||||
|
|
@ -1469,6 +1470,7 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0)
|
|||
dbesc(datetime_convert('UTC','UTC', $birthday)),
|
||||
dbesc(datetime_convert('UTC','UTC', $birthday . ' + 1 day ')),
|
||||
dbesc($bdtext),
|
||||
dbesc($bdtext2),
|
||||
dbesc('birthday')
|
||||
);
|
||||
|
||||
|
|
@ -2148,6 +2150,67 @@ function local_delivery($importer,$data) {
|
|||
}
|
||||
if($deleted) {
|
||||
|
||||
// check for relayed deletes to our conversation
|
||||
|
||||
$is_reply = false;
|
||||
$r = q("select * from item where uri = '%s' and uid = %d limit 1",
|
||||
dbesc($uri),
|
||||
intval($importer['importer_uid'])
|
||||
);
|
||||
if(count($r)) {
|
||||
$parent_uri = $r[0]['parent-uri'];
|
||||
if($r[0]['id'] != $r[0]['parent'])
|
||||
$is_reply = true;
|
||||
}
|
||||
|
||||
if($is_reply) {
|
||||
$community = false;
|
||||
|
||||
if($importer['page-flags'] == PAGE_COMMUNITY || $importer['page-flags'] == PAGE_PRVGROUP ) {
|
||||
$sql_extra = '';
|
||||
$community = true;
|
||||
logger('local_delivery: possible community delete');
|
||||
}
|
||||
else
|
||||
$sql_extra = " and contact.self = 1 and item.wall = 1 ";
|
||||
|
||||
// was the top-level post for this reply written by somebody on this site?
|
||||
// Specifically, the recipient?
|
||||
|
||||
$is_a_remote_delete = false;
|
||||
|
||||
$r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`, `item`.`forum_mode`,`item`.`origin`,`item`.`wall`,
|
||||
`contact`.`name`, `contact`.`url`, `contact`.`thumb` from `item`
|
||||
LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||
WHERE `item`.`uri` = '%s' AND (`item`.`parent-uri` = '%s' or `item`.`thr-parent` = '%s')
|
||||
AND `item`.`uid` = %d
|
||||
$sql_extra
|
||||
LIMIT 1",
|
||||
dbesc($parent_uri),
|
||||
dbesc($parent_uri),
|
||||
dbesc($parent_uri),
|
||||
intval($importer['importer_uid'])
|
||||
);
|
||||
if($r && count($r))
|
||||
$is_a_remote_delete = true;
|
||||
|
||||
// Does this have the characteristics of a community or private group comment?
|
||||
// If it's a reply to a wall post on a community/prvgroup page it's a
|
||||
// valid community comment. Also forum_mode makes it valid for sure.
|
||||
// If neither, it's not.
|
||||
|
||||
if($is_a_remote_delete && $community) {
|
||||
if((! $r[0]['forum_mode']) && (! $r[0]['wall'])) {
|
||||
$is_a_remote_delete = false;
|
||||
logger('local_delivery: not a community delete');
|
||||
}
|
||||
}
|
||||
|
||||
if($is_a_remote_delete) {
|
||||
logger('local_delivery: received remote delete');
|
||||
}
|
||||
}
|
||||
|
||||
$r = q("SELECT `item`.*, `contact`.`self` FROM `item` left join contact on `item`.`contact-id` = `contact`.`id`
|
||||
WHERE `uri` = '%s' AND `item`.`uid` = %d AND `contact-id` = %d AND NOT `item`.`file` LIKE '%%[%%' LIMIT 1",
|
||||
dbesc($uri),
|
||||
|
|
@ -2235,7 +2298,11 @@ function local_delivery($importer,$data) {
|
|||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
// if this is a relayed delete, propagate it to other recipients
|
||||
|
||||
if($is_a_remote_delete)
|
||||
proc_run('php',"include/notifier.php","drop",$item['id']);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -2268,6 +2335,7 @@ function local_delivery($importer,$data) {
|
|||
|
||||
$is_a_remote_comment = false;
|
||||
|
||||
// POSSIBLE CLEANUP --> Why select so many fields when only forum_mode and wall are used?
|
||||
$r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`, `item`.`forum_mode`,`item`.`origin`,`item`.`wall`,
|
||||
`contact`.`name`, `contact`.`url`, `contact`.`thumb` from `item`
|
||||
LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
|
||||
|
|
@ -3359,40 +3427,8 @@ function drop_item($id,$interactive = true) {
|
|||
);
|
||||
}
|
||||
|
||||
// Add a relayable_retraction signature for Diaspora. Note that we can't add a target_author_signature
|
||||
// if the comment was deleted by a remote user. That should be ok, because if a remote user is deleting
|
||||
// the comment, that means we're the home of the post, and Diaspora will only
|
||||
// check the parent_author_signature of retractions that it doesn't have to relay further
|
||||
//
|
||||
// I don't think this function gets called for an "unlike," but I'll check anyway
|
||||
$signed_text = $item['guid'] . ';' . ( ($item['verb'] === ACTIVITY_LIKE) ? 'Like' : 'Comment');
|
||||
|
||||
if(local_user() == $item['uid']) {
|
||||
|
||||
$handle = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$a->user['prvkey'],'sha256'));
|
||||
}
|
||||
else {
|
||||
$r = q("SELECT `nick`, `url` FROM `contact` WHERE `id` = '%d' LIMIT 1",
|
||||
$item['contact-id']
|
||||
);
|
||||
if(count($r)) {
|
||||
// The below handle only works for NETWORK_DFRN. I think that's ok, because this function
|
||||
// only handles DFRN deletes
|
||||
$handle_baseurl_start = strpos($r['url'],'://') + 3;
|
||||
$handle_baseurl_length = strpos($r['url'],'/profile') - $handle_baseurl_start;
|
||||
$handle = $r['nick'] . '@' . substr($r['url'], $handle_baseurl_start, $handle_baseurl_length);
|
||||
$authorsig = '';
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($handle))
|
||||
q("insert into sign (`retract_iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($item['id']),
|
||||
dbesc($signed_text),
|
||||
dbesc($authorsig),
|
||||
dbesc($handle)
|
||||
);
|
||||
// Add a relayable_retraction signature for Diaspora.
|
||||
store_diaspora_retract_sig($item, $a->user, $a->get_baseurl());
|
||||
}
|
||||
$drop_id = intval($item['id']);
|
||||
|
||||
|
|
@ -3479,4 +3515,53 @@ function posted_date_widget($url,$uid,$wall) {
|
|||
'$dates' => $ret
|
||||
));
|
||||
return $o;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function store_diaspora_retract_sig($item, $user, $baseurl) {
|
||||
// Note that we can't add a target_author_signature
|
||||
// if the comment was deleted by a remote user. That should be ok, because if a remote user is deleting
|
||||
// the comment, that means we're the home of the post, and Diaspora will only
|
||||
// check the parent_author_signature of retractions that it doesn't have to relay further
|
||||
//
|
||||
// I don't think this function gets called for an "unlike," but I'll check anyway
|
||||
|
||||
$enabled = intval(get_config('system','diaspora_enabled'));
|
||||
if(! $enabled) {
|
||||
logger('drop_item: diaspora support disabled, not storing retraction signature', LOGGER_DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
logger('drop_item: storing diaspora retraction signature');
|
||||
|
||||
$signed_text = $item['guid'] . ';' . ( ($item['verb'] === ACTIVITY_LIKE) ? 'Like' : 'Comment');
|
||||
|
||||
if(local_user() == $item['uid']) {
|
||||
|
||||
$handle = $user['nickname'] . '@' . substr($baseurl, strpos($baseurl,'://') + 3);
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$user['prvkey'],'sha256'));
|
||||
}
|
||||
else {
|
||||
$r = q("SELECT `nick`, `url` FROM `contact` WHERE `id` = '%d' LIMIT 1",
|
||||
$item['contact-id']
|
||||
);
|
||||
if(count($r)) {
|
||||
// The below handle only works for NETWORK_DFRN. I think that's ok, because this function
|
||||
// only handles DFRN deletes
|
||||
$handle_baseurl_start = strpos($r['url'],'://') + 3;
|
||||
$handle_baseurl_length = strpos($r['url'],'/profile') - $handle_baseurl_start;
|
||||
$handle = $r['nick'] . '@' . substr($r['url'], $handle_baseurl_start, $handle_baseurl_length);
|
||||
$authorsig = '';
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($handle))
|
||||
q("insert into sign (`retract_iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($item['id']),
|
||||
dbesc($signed_text),
|
||||
dbesc($authorsig),
|
||||
dbesc($handle)
|
||||
);
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ function notifier_run($argv, $argc){
|
|||
$uid = $r[0]['uid'];
|
||||
$updated = $r[0]['edited'];
|
||||
|
||||
// The following seems superfluous. We've already checked for "if (! intval($r[0]['parent']))" a few lines up
|
||||
// POSSIBLE CLEANUP --> The following seems superfluous. We've already checked for "if (! intval($r[0]['parent']))" a few lines up
|
||||
if(! $parent_id)
|
||||
return;
|
||||
|
||||
|
|
|
|||
|
|
@ -380,20 +380,23 @@ function service_class_fetch($uid,$property) {
|
|||
|
||||
}
|
||||
|
||||
function upgrade_link() {
|
||||
function upgrade_link($bbcode = false) {
|
||||
$l = get_config('service_class','upgrade_link');
|
||||
$t = sprintf('<a href="%s">' . t('Click here to upgrade.') . '</div>', $l);
|
||||
if($l)
|
||||
return $t;
|
||||
return '';
|
||||
if(! $l)
|
||||
return '';
|
||||
if($bbcode)
|
||||
$t = sprintf('[url=%s]' . t('Click here to upgrade.') . '[/url]', $l);
|
||||
else
|
||||
$t = sprintf('<a href="%s">' . t('Click here to upgrade.') . '</div>', $l);
|
||||
return $t;
|
||||
}
|
||||
|
||||
function upgrade_message() {
|
||||
$x = upgrade_link();
|
||||
function upgrade_message($bbcode = false) {
|
||||
$x = upgrade_link($bbcode);
|
||||
return t('This action exceeds the limits set by your subscription plan.') . (($x) ? ' ' . $x : '') ;
|
||||
}
|
||||
|
||||
function upgrade_bool_message() {
|
||||
$x = upgrade_link();
|
||||
function upgrade_bool_message($bbcode = false) {
|
||||
$x = upgrade_link($bbcode);
|
||||
return t('This action is not available under your subscription plan.') . (($x) ? ' ' . $x : '') ;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -57,12 +57,13 @@ function events_post(&$a) {
|
|||
if(strcmp($finish,$start) < 0)
|
||||
$finish = $start;
|
||||
|
||||
$summary = escape_tags(trim($_POST['summary']));
|
||||
$desc = escape_tags(trim($_POST['desc']));
|
||||
$location = escape_tags(trim($_POST['location']));
|
||||
$type = 'event';
|
||||
|
||||
if((! $desc) || (! $start)) {
|
||||
notice( t('Event description and start time are required.') . EOL);
|
||||
if((! $summary) || (! $start)) {
|
||||
notice( t('Event title and start time are required.') . EOL);
|
||||
goaway($a->get_baseurl() . '/events/new');
|
||||
}
|
||||
|
||||
|
|
@ -107,6 +108,7 @@ function events_post(&$a) {
|
|||
$datarray = array();
|
||||
$datarray['start'] = $start;
|
||||
$datarray['finish'] = $finish;
|
||||
$datarray['summary'] = $summary;
|
||||
$datarray['desc'] = $desc;
|
||||
$datarray['location'] = $location;
|
||||
$datarray['type'] = $type;
|
||||
|
|
@ -278,9 +280,11 @@ function events_content(&$a) {
|
|||
|
||||
$last_date = $d;
|
||||
$edit = ((! $rr['cid']) ? array($a->get_baseurl().'/events/event/'.$rr['id'],t('Edit event'),'','') : null);
|
||||
|
||||
list($title, $_trash) = explode("<br",bbcode($rr['desc']),2);
|
||||
$title = strip_tags($title);
|
||||
$title = strip_tags(bbcode($rr['summary']));
|
||||
if(! $title) {
|
||||
list($title, $_trash) = explode("<br",bbcode($rr['desc']),2);
|
||||
$title = strip_tags($title);
|
||||
}
|
||||
$html = format_event_html($rr);
|
||||
$rr['desc'] = bbcode($rr['desc']);
|
||||
$rr['location'] = bbcode($rr['location']);
|
||||
|
|
@ -351,6 +355,7 @@ function events_content(&$a) {
|
|||
|
||||
$n_checked = ((x($orig_event) && $orig_event['nofinish']) ? ' checked="checked" ' : '');
|
||||
$a_checked = ((x($orig_event) && $orig_event['adjust']) ? ' checked="checked" ' : '');
|
||||
$t_orig = ((x($orig_event)) ? $orig_event['summary'] : '');
|
||||
$d_orig = ((x($orig_event)) ? $orig_event['desc'] : '');
|
||||
$l_orig = ((x($orig_event)) ? $orig_event['location'] : '');
|
||||
$eid = ((x($orig_event)) ? $orig_event['id'] : 0);
|
||||
|
|
@ -405,10 +410,11 @@ function events_content(&$a) {
|
|||
'$eid' => $eid,
|
||||
'$cid' => $cid,
|
||||
'$uri' => $uri,
|
||||
|
||||
'$title' => t('Event details'),
|
||||
'$desc' => sprintf( t('Format is %s %s. Starting date and Description are required.'),$dateformat,$timeformat),
|
||||
'$desc' => sprintf( t('Format is %s %s. Starting date and Title are required.'),$dateformat,$timeformat),
|
||||
|
||||
'$s_text' => t('Event Starts:') . ' <span class="required">*</span> ',
|
||||
'$s_text' => t('Event Starts:') . ' <span class="required" title="' . t('Required') . '">*</span>',
|
||||
'$s_dsel' => datesel($f,'start',$syear+5,$syear,false,$syear,$smonth,$sday),
|
||||
'$s_tsel' => timesel('start',$shour,$sminute),
|
||||
'$n_text' => t('Finish date/time is not known or not relevant'),
|
||||
|
|
@ -418,10 +424,12 @@ function events_content(&$a) {
|
|||
'$f_tsel' => timesel('finish',$fhour,$fminute),
|
||||
'$a_text' => t('Adjust for viewer timezone'),
|
||||
'$a_checked' => $a_checked,
|
||||
'$d_text' => t('Description:') . ' <span class="required">*</span>',
|
||||
'$d_text' => t('Description:'),
|
||||
'$d_orig' => $d_orig,
|
||||
'$l_text' => t('Location:'),
|
||||
'$l_orig' => $l_orig,
|
||||
'$t_text' => t('Title:') . ' <span class="required" title="' . t('Required') . '">*</span>',
|
||||
'$t_orig' => $t_orig,
|
||||
'$sh_text' => t('Share this event'),
|
||||
'$sh_checked' => $sh_checked,
|
||||
'$acl' => (($cid) ? '' : populate_acl(((x($orig_event)) ? $orig_event : $a->user),false)),
|
||||
|
|
|
|||
64
mod/item.php
64
mod/item.php
|
|
@ -728,26 +728,10 @@ function item_post(&$a) {
|
|||
|
||||
}
|
||||
|
||||
// We won't be able to sign Diaspora comments for authenticated visitors - we don't have their private key
|
||||
|
||||
if($self) {
|
||||
require_once('include/bb2diaspora.php');
|
||||
$signed_body = html_entity_decode(bb2diaspora($datarray['body']));
|
||||
$myaddr = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3);
|
||||
if($datarray['verb'] === ACTIVITY_LIKE)
|
||||
$signed_text = $datarray['guid'] . ';' . 'Post' . ';' . $parent_item['guid'] . ';' . 'true' . ';' . $myaddr;
|
||||
else
|
||||
$signed_text = $datarray['guid'] . ';' . $parent_item['guid'] . ';' . $signed_body . ';' . $myaddr;
|
||||
// Store the comment signature information in case we need to relay to Diaspora
|
||||
store_diaspora_comment_sig($datarray, $author, ($self ? $a->user['prvkey'] : false), $parent_item, $post_id);
|
||||
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$a->user['prvkey'],'sha256'));
|
||||
|
||||
q("insert into sign (`iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($post_id),
|
||||
dbesc($signed_text),
|
||||
dbesc(base64_encode($authorsig)),
|
||||
dbesc($myaddr)
|
||||
);
|
||||
}
|
||||
}
|
||||
else {
|
||||
$parent = $post_id;
|
||||
|
|
@ -1038,3 +1022,47 @@ function handle_tag($a, &$body, &$inform, &$str_tags, $profile_uid, $tag) {
|
|||
|
||||
return array('replaced' => $replaced, 'contact' => $r[0]);
|
||||
}
|
||||
|
||||
|
||||
function store_diaspora_comment_sig($datarray, $author, $uprvkey, $parent_item, $post_id) {
|
||||
// We won't be able to sign Diaspora comments for authenticated visitors - we don't have their private key
|
||||
|
||||
$enabled = intval(get_config('system','diaspora_enabled'));
|
||||
if(! $enabled) {
|
||||
logger('mod_item: diaspora support disabled, not storing comment signature', LOGGER_DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
logger('mod_item: storing diaspora comment signature');
|
||||
|
||||
require_once('include/bb2diaspora.php');
|
||||
$signed_body = html_entity_decode(bb2diaspora($datarray['body']));
|
||||
|
||||
// $myaddr = $user['nickname'] . '@' . substr($baseurl, strpos($baseurl,'://') + 3);
|
||||
// if( $author['network'] === NETWORK_DIASPORA)
|
||||
// $diaspora_handle = $author['addr'];
|
||||
// else {
|
||||
// Only works for NETWORK_DFRN
|
||||
$contact_baseurl_start = strpos($author['url'],'://') + 3;
|
||||
$contact_baseurl_length = strpos($author['url'],'/profile') - $contact_baseurl_start;
|
||||
$contact_baseurl = substr($author['url'], $contact_baseurl_start, $contact_baseurl_length);
|
||||
$diaspora_handle = $author['nick'] . '@' . $contact_baseurl;
|
||||
// }
|
||||
|
||||
$signed_text = $datarray['guid'] . ';' . $parent_item['guid'] . ';' . $signed_body . ';' . $diaspora_handle;
|
||||
|
||||
if( $uprvkey !== false )
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$uprvkey,'sha256'));
|
||||
else
|
||||
$authorsig = '';
|
||||
|
||||
q("insert into sign (`iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($post_id),
|
||||
dbesc($signed_text),
|
||||
dbesc(base64_encode($authorsig)),
|
||||
dbesc($diaspora_handle)
|
||||
);
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
184
mod/like.php
184
mod/like.php
|
|
@ -121,57 +121,16 @@ function like_content(&$a) {
|
|||
intval($like_item['id'])
|
||||
);
|
||||
|
||||
// Clean up the `sign` table
|
||||
|
||||
// Clean up the Diaspora signatures for this like
|
||||
// Go ahead and do it even if Diaspora support is disabled. We still want to clean up
|
||||
// if it had been enabled in the past
|
||||
$r = q("DELETE FROM `sign` WHERE `iid` = %d",
|
||||
intval($like_item['id'])
|
||||
);
|
||||
|
||||
// Save the author information for the unlike in case we need to relay to Diaspora
|
||||
// Note that we can only create a signature for a user of the local server. We don't have
|
||||
// a key for remote users. That is ok, because if a remote user is "unlike"ing a post, it
|
||||
// means we are the relay, and for relayable_retractions, Diaspora
|
||||
// only checks the parent_author_signature if it doesn't have to relay further
|
||||
//
|
||||
// If $item['resource-id'] exists, it means the item is a photo. Diaspora doesn't support
|
||||
// likes on photos, so don't bother.
|
||||
|
||||
if(($activity === ACTIVITY_LIKE) && (! $item['resource-id'])) {
|
||||
$signed_text = $like_item['guid'] . ';' . 'Like';
|
||||
|
||||
if( $contact['network'] === NETWORK_DIASPORA)
|
||||
$diaspora_handle = $contact['addr'];
|
||||
else { // Only works for NETWORK_DFRN
|
||||
$contact_baseurl_start = strpos($contact['url'],'://') + 3;
|
||||
$contact_baseurl_length = strpos($contact['url'],'/profile') - $contact_baseurl_start;
|
||||
$contact_baseurl = substr($contact['url'], $contact_baseurl_start, $contact_baseurl_length);
|
||||
$diaspora_handle = $contact['nick'] . '@' . $contact_baseurl;
|
||||
|
||||
// Get contact's private key if he's a user of the local Friendica server
|
||||
$r = q("SELECT `contact`.`uid` FROM `contact` WHERE `url` = '%s' AND `self` = 1 LIMIT 1",
|
||||
dbesc($contact['url'])
|
||||
);
|
||||
|
||||
if( $r) {
|
||||
$contact_uid = $r['uid'];
|
||||
$r = q("SELECT prvkey FROM user WHERE uid = %d LIMIT 1",
|
||||
intval($contact_uid)
|
||||
);
|
||||
|
||||
if( $r)
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$r['prvkey'],'sha256'));
|
||||
}
|
||||
}
|
||||
|
||||
if(! isset($authorsig))
|
||||
$authorsig = '';
|
||||
|
||||
q("insert into sign (`retract_iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($like_item['id']),
|
||||
dbesc($signed_text),
|
||||
dbesc($authorsig),
|
||||
dbesc($diaspora_handle)
|
||||
);
|
||||
}
|
||||
store_diaspora_like_retract_sig($activity, $item, $like_item, $contact);
|
||||
|
||||
|
||||
// proc_run('php',"include/notifier.php","like","$post_id"); // $post_id isn't defined here!
|
||||
|
|
@ -252,35 +211,118 @@ EOT;
|
|||
|
||||
|
||||
// Save the author information for the like in case we need to relay to Diaspora
|
||||
store_diaspora_like_sig($activity, $post_type, $contact, $post_id);
|
||||
|
||||
|
||||
$arr['id'] = $post_id;
|
||||
|
||||
call_hooks('post_local_end', $arr);
|
||||
|
||||
proc_run('php',"include/notifier.php","like","$post_id");
|
||||
|
||||
killme();
|
||||
// return; // NOTREACHED
|
||||
}
|
||||
|
||||
|
||||
function store_diaspora_like_retract_sig($activity, $item, $like_item, $contact) {
|
||||
// Note that we can only create a signature for a user of the local server. We don't have
|
||||
// a key for remote users. That is ok, because if a remote user is "unlike"ing a post, it
|
||||
// means we are the relay, and for relayable_retractions, Diaspora
|
||||
// only checks the parent_author_signature if it doesn't have to relay further
|
||||
//
|
||||
// If $item['resource-id'] exists, it means the item is a photo. Diaspora doesn't support
|
||||
// likes on photos, so don't bother.
|
||||
|
||||
$enabled = intval(get_config('system','diaspora_enabled'));
|
||||
if(! $enabled) {
|
||||
logger('mod_like: diaspora support disabled, not storing like retraction signature', LOGGER_DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
logger('mod_like: storing diaspora like retraction signature');
|
||||
|
||||
if(($activity === ACTIVITY_LIKE) && (! $item['resource-id'])) {
|
||||
$signed_text = $like_item['guid'] . ';' . 'Like';
|
||||
|
||||
// if( $contact['network'] === NETWORK_DIASPORA)
|
||||
// $diaspora_handle = $contact['addr'];
|
||||
// else {
|
||||
// Only works for NETWORK_DFRN
|
||||
$contact_baseurl_start = strpos($contact['url'],'://') + 3;
|
||||
$contact_baseurl_length = strpos($contact['url'],'/profile') - $contact_baseurl_start;
|
||||
$contact_baseurl = substr($contact['url'], $contact_baseurl_start, $contact_baseurl_length);
|
||||
$diaspora_handle = $contact['nick'] . '@' . $contact_baseurl;
|
||||
|
||||
// Get contact's private key if he's a user of the local Friendica server
|
||||
$r = q("SELECT `contact`.`uid` FROM `contact` WHERE `url` = '%s' AND `self` = 1 LIMIT 1",
|
||||
dbesc($contact['url'])
|
||||
);
|
||||
|
||||
if( $r) {
|
||||
$contact_uid = $r['uid'];
|
||||
$r = q("SELECT prvkey FROM user WHERE uid = %d LIMIT 1",
|
||||
intval($contact_uid)
|
||||
);
|
||||
|
||||
if( $r)
|
||||
$authorsig = base64_encode(rsa_sign($signed_text,$r['prvkey'],'sha256'));
|
||||
}
|
||||
// }
|
||||
|
||||
if(! isset($authorsig))
|
||||
$authorsig = '';
|
||||
|
||||
q("insert into sign (`retract_iid`,`signed_text`,`signature`,`signer`) values (%d,'%s','%s','%s') ",
|
||||
intval($like_item['id']),
|
||||
dbesc($signed_text),
|
||||
dbesc($authorsig),
|
||||
dbesc($diaspora_handle)
|
||||
);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
function store_diaspora_like_sig($activity, $post_type, $contact, $post_id) {
|
||||
// Note that we can only create a signature for a user of the local server. We don't have
|
||||
// a key for remote users. That is ok, because if a remote user is "unlike"ing a post, it
|
||||
// means we are the relay, and for relayable_retractions, Diaspora
|
||||
// only checks the parent_author_signature if it doesn't have to relay further
|
||||
|
||||
if(($activity === ACTIVITY_LIKE) && ($post_type === t('status'))) {
|
||||
if( $contact['network'] === NETWORK_DIASPORA)
|
||||
$diaspora_handle = $contact['addr'];
|
||||
else { // Only works for NETWORK_DFRN
|
||||
$contact_baseurl_start = strpos($contact['url'],'://') + 3;
|
||||
$contact_baseurl_length = strpos($contact['url'],'/profile') - $contact_baseurl_start;
|
||||
$contact_baseurl = substr($contact['url'], $contact_baseurl_start, $contact_baseurl_length);
|
||||
$diaspora_handle = $contact['nick'] . '@' . $contact_baseurl;
|
||||
$enabled = intval(get_config('system','diaspora_enabled'));
|
||||
if(! $enabled) {
|
||||
logger('mod_like: diaspora support disabled, not storing like signature', LOGGER_DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
// Get contact's private key if he's a user of the local Friendica server
|
||||
$r = q("SELECT `contact`.`uid` FROM `contact` WHERE `url` = '%s' AND `self` = 1 LIMIT 1",
|
||||
dbesc($contact['url'])
|
||||
logger('mod_like: storing diaspora like signature');
|
||||
|
||||
if(($activity === ACTIVITY_LIKE) && ($post_type === t('status'))) {
|
||||
// if( $contact['network'] === NETWORK_DIASPORA)
|
||||
// $diaspora_handle = $contact['addr'];
|
||||
// else {
|
||||
// Only works for NETWORK_DFRN
|
||||
$contact_baseurl_start = strpos($contact['url'],'://') + 3;
|
||||
$contact_baseurl_length = strpos($contact['url'],'/profile') - $contact_baseurl_start;
|
||||
$contact_baseurl = substr($contact['url'], $contact_baseurl_start, $contact_baseurl_length);
|
||||
$diaspora_handle = $contact['nick'] . '@' . $contact_baseurl;
|
||||
|
||||
// Get contact's private key if he's a user of the local Friendica server
|
||||
$r = q("SELECT `contact`.`uid` FROM `contact` WHERE `url` = '%s' AND `self` = 1 LIMIT 1",
|
||||
dbesc($contact['url'])
|
||||
);
|
||||
|
||||
if( $r) {
|
||||
$contact_uid = $r['uid'];
|
||||
$r = q("SELECT prvkey FROM user WHERE uid = %d LIMIT 1",
|
||||
intval($contact_uid)
|
||||
);
|
||||
|
||||
if( $r) {
|
||||
$contact_uid = $r['uid'];
|
||||
$r = q("SELECT prvkey FROM user WHERE uid = %d LIMIT 1",
|
||||
intval($contact_uid)
|
||||
);
|
||||
|
||||
if( $r)
|
||||
$contact_uprvkey = $r['prvkey'];
|
||||
}
|
||||
if( $r)
|
||||
$contact_uprvkey = $r['prvkey'];
|
||||
}
|
||||
// }
|
||||
|
||||
$r = q("SELECT guid, parent FROM `item` WHERE id = %d LIMIT 1",
|
||||
intval($post_id)
|
||||
|
|
@ -308,13 +350,5 @@ EOT;
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
$arr['id'] = $post_id;
|
||||
|
||||
call_hooks('post_local_end', $arr);
|
||||
|
||||
proc_run('php',"include/notifier.php","like","$post_id");
|
||||
|
||||
killme();
|
||||
// return; // NOTREACHED
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -677,6 +677,14 @@ function settings_content(&$a) {
|
|||
|
||||
|
||||
$tpl = get_markup_template("settings_connectors.tpl");
|
||||
|
||||
if(! service_class_allows(local_user(),'email_connect')) {
|
||||
$mail_disabled_message = upgrade_bool_message();
|
||||
}
|
||||
else {
|
||||
$mail_disabled_message = (($mail_disabled) ? t('Email access is disabled on this site.') : '');
|
||||
}
|
||||
|
||||
$o .= replace_macros($tpl, array(
|
||||
'$form_security_token' => get_form_security_token("settings_connectors"),
|
||||
|
||||
|
|
@ -688,7 +696,7 @@ function settings_content(&$a) {
|
|||
'$h_imap' => t('Email/Mailbox Setup'),
|
||||
'$imap_desc' => t("If you wish to communicate with email contacts using this service \x28optional\x29, please specify how to connect to your mailbox."),
|
||||
'$imap_lastcheck' => array('imap_lastcheck', t('Last successful email check:'), $mail_chk,''),
|
||||
'$mail_disabled' => (($mail_disabled) ? t('Email access is disabled on this site.') : ''),
|
||||
'$mail_disabled' => $mail_disabled_message,
|
||||
'$mail_server' => array('mail_server', t('IMAP server name:'), $mail_server, ''),
|
||||
'$mail_port' => array('mail_port', t('IMAP port:'), $mail_port, ''),
|
||||
'$mail_ssl' => array('mail_ssl', t('Security:'), strtoupper($mail_ssl), '', array( 'notls'=>t('None'), 'TLS'=>'TLS', 'SSL'=>'SSL')),
|
||||
|
|
@ -921,18 +929,12 @@ function settings_content(&$a) {
|
|||
|
||||
));
|
||||
|
||||
|
||||
|
||||
|
||||
$invisible = (((! $profile['publish']) && (! $profile['net-publish']))
|
||||
? true : false);
|
||||
|
||||
if($invisible)
|
||||
info( t('Profile is <strong>not published</strong>.') . EOL );
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$subdir = ((strlen($a->get_path())) ? '<br />' . t('or') . ' ' . $a->get_baseurl(true) . '/profile/' . $nickname : '');
|
||||
|
||||
|
|
@ -1029,17 +1031,6 @@ function settings_content(&$a) {
|
|||
'$h_descadvn' => t('Change the behaviour of this account for special situations'),
|
||||
'$pagetype' => $pagetype,
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
));
|
||||
|
||||
call_hooks('settings_form',$o);
|
||||
|
|
|
|||
|
|
@ -60,6 +60,19 @@ function wall_attach_post(&$a) {
|
|||
return;
|
||||
}
|
||||
|
||||
$r = q("select sum(octet_length(data)) as total from attach where uid = %d ",
|
||||
intval($page_owner_uid)
|
||||
);
|
||||
|
||||
$limit = service_class_fetch($page_owner_uid,'attach_upload_limit');
|
||||
|
||||
if(($limit !== false) && (($r[0]['total'] + strlen($imagedata)) > $limit)) {
|
||||
echo upgrade_message(true) . EOL ;
|
||||
@unlink($src);
|
||||
killme();
|
||||
}
|
||||
|
||||
|
||||
$filedata = @file_get_contents($src);
|
||||
$mimetype = z_mime_content_type($filename);
|
||||
$hash = random_string();
|
||||
|
|
|
|||
|
|
@ -79,6 +79,19 @@ function wall_upload_post(&$a) {
|
|||
killme();
|
||||
}
|
||||
|
||||
$r = q("select sum(octet_length(data)) as total from photo where uid = %d and scale = 0 and album != 'Contact Photos' ",
|
||||
intval($page_owner_uid)
|
||||
);
|
||||
|
||||
$limit = service_class_fetch($page_owner_uid,'photo_upload_limit');
|
||||
|
||||
if(($limit !== false) && (($r[0]['total'] + strlen($imagedata)) > $limit)) {
|
||||
echo upgrade_message(true) . EOL ;
|
||||
@unlink($src);
|
||||
killme();
|
||||
}
|
||||
|
||||
|
||||
$imagedata = @file_get_contents($src);
|
||||
$ph = new Photo($imagedata, $filetype);
|
||||
|
||||
|
|
|
|||
11
update.php
11
update.php
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
define( 'UPDATE_VERSION' , 1150 );
|
||||
define( 'UPDATE_VERSION' , 1151 );
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
@ -1298,3 +1298,12 @@ function update_1149() {
|
|||
return UPDATE_FAILED;
|
||||
return UPDATE_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
function update_1150() {
|
||||
$r = q("ALTER TABLE event ADD summary text NOT NULL after finish, add index ( uid ), add index ( cid ), add index ( uri ), add index ( `start` ), add index ( finish ), add index ( `type` ), add index ( adjust ) ");
|
||||
if(! $r)
|
||||
return UPDATE_FAILED;
|
||||
return UPDATE_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
|||
635
util/messages.po
635
util/messages.po
|
|
@ -6,9 +6,9 @@
|
|||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.0.1384\n"
|
||||
"Project-Id-Version: 3.0.1386\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-06-24 10:00-0700\n"
|
||||
"POT-Creation-Date: 2012-06-26 10:00-0700\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
@ -35,8 +35,8 @@ msgid "Contact update failed."
|
|||
msgstr ""
|
||||
|
||||
#: ../../mod/crepair.php:115 ../../mod/wall_attach.php:44
|
||||
#: ../../mod/fsuggest.php:78 ../../mod/events.php:138 ../../mod/api.php:26
|
||||
#: ../../mod/api.php:31 ../../mod/photos.php:133 ../../mod/photos.php:931
|
||||
#: ../../mod/fsuggest.php:78 ../../mod/events.php:140 ../../mod/api.php:26
|
||||
#: ../../mod/api.php:31 ../../mod/photos.php:135 ../../mod/photos.php:951
|
||||
#: ../../mod/editpost.php:10 ../../mod/install.php:151
|
||||
#: ../../mod/notifications.php:66 ../../mod/contacts.php:145
|
||||
#: ../../mod/settings.php:106 ../../mod/settings.php:537
|
||||
|
|
@ -52,11 +52,11 @@ msgstr ""
|
|||
#: ../../mod/message.php:97 ../../mod/allfriends.php:9
|
||||
#: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53
|
||||
#: ../../mod/follow.php:9 ../../mod/display.php:138 ../../mod/profiles.php:7
|
||||
#: ../../mod/profiles.php:385 ../../mod/delegate.php:6
|
||||
#: ../../mod/profiles.php:400 ../../mod/delegate.php:6
|
||||
#: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81
|
||||
#: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:508
|
||||
#: ../../addon/dav/layout.fnk.php:353 ../../include/items.php:3411
|
||||
#: ../../index.php:309
|
||||
#: ../../addon/facebook/facebook.php:514 ../../addon/dav/layout.fnk.php:353
|
||||
#: ../../include/items.php:3447 ../../index.php:309
|
||||
msgid "Permission denied."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -123,18 +123,18 @@ msgid "New photo from this URL"
|
|||
msgstr ""
|
||||
|
||||
#: ../../mod/crepair.php:166 ../../mod/fsuggest.php:107
|
||||
#: ../../mod/events.php:428 ../../mod/photos.php:966 ../../mod/photos.php:1024
|
||||
#: ../../mod/photos.php:1270 ../../mod/photos.php:1310
|
||||
#: ../../mod/photos.php:1350 ../../mod/photos.php:1381
|
||||
#: ../../mod/events.php:436 ../../mod/photos.php:986 ../../mod/photos.php:1057
|
||||
#: ../../mod/photos.php:1303 ../../mod/photos.php:1343
|
||||
#: ../../mod/photos.php:1383 ../../mod/photos.php:1414
|
||||
#: ../../mod/install.php:246 ../../mod/install.php:284
|
||||
#: ../../mod/localtime.php:45 ../../mod/contacts.php:343
|
||||
#: ../../mod/settings.php:555 ../../mod/settings.php:701
|
||||
#: ../../mod/settings.php:762 ../../mod/settings.php:969
|
||||
#: ../../mod/group.php:85 ../../mod/message.php:216 ../../mod/message.php:410
|
||||
#: ../../mod/admin.php:420 ../../mod/admin.php:656 ../../mod/admin.php:792
|
||||
#: ../../mod/admin.php:991 ../../mod/admin.php:1078 ../../mod/profiles.php:554
|
||||
#: ../../mod/admin.php:991 ../../mod/admin.php:1078 ../../mod/profiles.php:569
|
||||
#: ../../mod/invite.php:119 ../../addon/fromgplus/fromgplus.php:40
|
||||
#: ../../addon/facebook/facebook.php:610
|
||||
#: ../../addon/facebook/facebook.php:617
|
||||
#: ../../addon/snautofollow/snautofollow.php:64
|
||||
#: ../../addon/yourls/yourls.php:76 ../../addon/ljpost/ljpost.php:93
|
||||
#: ../../addon/nsfw/nsfw.php:57 ../../addon/page/page.php:164
|
||||
|
|
@ -194,7 +194,7 @@ msgstr ""
|
|||
msgid "File exceeds size limit of %d"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/wall_attach.php:86 ../../mod/wall_attach.php:97
|
||||
#: ../../mod/wall_attach.php:99 ../../mod/wall_attach.php:110
|
||||
msgid "File upload failed."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -211,79 +211,87 @@ msgstr ""
|
|||
msgid "Suggest a friend for %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:65
|
||||
msgid "Event description and start time are required."
|
||||
#: ../../mod/events.php:66
|
||||
msgid "Event title and start time are required."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:258
|
||||
#: ../../mod/events.php:260
|
||||
msgid "l, F j"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:280
|
||||
#: ../../mod/events.php:282
|
||||
msgid "Edit event"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:300 ../../include/text.php:1065
|
||||
#: ../../mod/events.php:304 ../../include/text.php:1065
|
||||
msgid "link to source"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:324 ../../view/theme/diabook/theme.php:131
|
||||
#: ../../mod/events.php:328 ../../view/theme/diabook/theme.php:131
|
||||
#: ../../include/nav.php:52 ../../boot.php:1546
|
||||
msgid "Events"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:325
|
||||
#: ../../mod/events.php:329
|
||||
msgid "Create New Event"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:326 ../../addon/dav/layout.fnk.php:154
|
||||
#: ../../mod/events.php:330 ../../addon/dav/layout.fnk.php:154
|
||||
msgid "Previous"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:327 ../../mod/install.php:205
|
||||
#: ../../mod/events.php:331 ../../mod/install.php:205
|
||||
#: ../../addon/dav/layout.fnk.php:157
|
||||
msgid "Next"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:399
|
||||
#: ../../mod/events.php:404
|
||||
msgid "hour:minute"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:408
|
||||
#: ../../mod/events.php:414
|
||||
msgid "Event details"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:409
|
||||
#: ../../mod/events.php:415
|
||||
#, php-format
|
||||
msgid "Format is %s %s. Starting date and Description are required."
|
||||
msgid "Format is %s %s. Starting date and Title are required."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:411
|
||||
#: ../../mod/events.php:417
|
||||
msgid "Event Starts:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:414
|
||||
#: ../../mod/events.php:417 ../../mod/events.php:431
|
||||
msgid "Required"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:420
|
||||
msgid "Finish date/time is not known or not relevant"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:416
|
||||
#: ../../mod/events.php:422
|
||||
msgid "Event Finishes:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:419
|
||||
#: ../../mod/events.php:425
|
||||
msgid "Adjust for viewer timezone"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:421
|
||||
#: ../../mod/events.php:427
|
||||
msgid "Description:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:423 ../../include/event.php:37
|
||||
#: ../../include/bb2diaspora.php:355 ../../boot.php:1126
|
||||
#: ../../mod/events.php:429 ../../include/event.php:40
|
||||
#: ../../include/bb2diaspora.php:357 ../../boot.php:1126
|
||||
msgid "Location:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:425
|
||||
#: ../../mod/events.php:431
|
||||
msgid "Title:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/events.php:433
|
||||
msgid "Share this event"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -340,7 +348,7 @@ msgstr ""
|
|||
#: ../../mod/settings.php:956 ../../mod/settings.php:957
|
||||
#: ../../mod/settings.php:958 ../../mod/settings.php:959
|
||||
#: ../../mod/settings.php:960 ../../mod/register.php:234
|
||||
#: ../../mod/profiles.php:531
|
||||
#: ../../mod/profiles.php:546
|
||||
msgid "Yes"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -352,36 +360,36 @@ msgstr ""
|
|||
#: ../../mod/settings.php:956 ../../mod/settings.php:957
|
||||
#: ../../mod/settings.php:958 ../../mod/settings.php:959
|
||||
#: ../../mod/settings.php:960 ../../mod/register.php:235
|
||||
#: ../../mod/profiles.php:532
|
||||
#: ../../mod/profiles.php:547
|
||||
msgid "No"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:44 ../../boot.php:1540
|
||||
#: ../../mod/photos.php:46 ../../boot.php:1540
|
||||
msgid "Photo Albums"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:52 ../../mod/photos.php:154 ../../mod/photos.php:945
|
||||
#: ../../mod/photos.php:1016 ../../mod/photos.php:1031
|
||||
#: ../../mod/photos.php:1459 ../../mod/photos.php:1471
|
||||
#: ../../mod/photos.php:54 ../../mod/photos.php:156 ../../mod/photos.php:965
|
||||
#: ../../mod/photos.php:1049 ../../mod/photos.php:1064
|
||||
#: ../../mod/photos.php:1492 ../../mod/photos.php:1504
|
||||
#: ../../addon/communityhome/communityhome.php:110
|
||||
#: ../../view/theme/diabook/theme.php:598
|
||||
msgid "Contact Photos"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:59 ../../mod/photos.php:1041 ../../mod/photos.php:1509
|
||||
#: ../../mod/photos.php:61 ../../mod/photos.php:1074 ../../mod/photos.php:1542
|
||||
msgid "Upload New Photos"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:70 ../../mod/settings.php:21
|
||||
#: ../../mod/photos.php:72 ../../mod/settings.php:21
|
||||
msgid "everybody"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:143
|
||||
#: ../../mod/photos.php:145
|
||||
msgid "Contact information unavailable"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:154 ../../mod/photos.php:658 ../../mod/photos.php:1016
|
||||
#: ../../mod/photos.php:1031 ../../mod/profile_photo.php:60
|
||||
#: ../../mod/photos.php:156 ../../mod/photos.php:660 ../../mod/photos.php:1049
|
||||
#: ../../mod/photos.php:1064 ../../mod/profile_photo.php:60
|
||||
#: ../../mod/profile_photo.php:67 ../../mod/profile_photo.php:74
|
||||
#: ../../mod/profile_photo.php:176 ../../mod/profile_photo.php:254
|
||||
#: ../../mod/profile_photo.php:263
|
||||
|
|
@ -391,23 +399,23 @@ msgstr ""
|
|||
msgid "Profile Photos"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:164
|
||||
#: ../../mod/photos.php:166
|
||||
msgid "Album not found."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:182 ../../mod/photos.php:1025
|
||||
#: ../../mod/photos.php:184 ../../mod/photos.php:1058
|
||||
msgid "Delete Album"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:245 ../../mod/photos.php:1271
|
||||
#: ../../mod/photos.php:247 ../../mod/photos.php:1304
|
||||
msgid "Delete Photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:589
|
||||
#: ../../mod/photos.php:591
|
||||
msgid "was tagged in a"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:589 ../../mod/like.php:185 ../../mod/tagger.php:70
|
||||
#: ../../mod/photos.php:591 ../../mod/like.php:144 ../../mod/tagger.php:70
|
||||
#: ../../addon/communityhome/communityhome.php:163
|
||||
#: ../../view/theme/diabook/theme.php:570 ../../include/text.php:1316
|
||||
#: ../../include/diaspora.php:1710 ../../include/conversation.php:53
|
||||
|
|
@ -415,176 +423,186 @@ msgstr ""
|
|||
msgid "photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:589
|
||||
#: ../../mod/photos.php:591
|
||||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:694 ../../addon/js_upload/js_upload.php:315
|
||||
#: ../../mod/photos.php:696 ../../addon/js_upload/js_upload.php:315
|
||||
msgid "Image exceeds size limit of "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:702
|
||||
#: ../../mod/photos.php:704
|
||||
msgid "Image file is empty."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:716 ../../mod/profile_photo.php:126
|
||||
#: ../../mod/wall_upload.php:86
|
||||
#: ../../mod/photos.php:736 ../../mod/profile_photo.php:126
|
||||
#: ../../mod/wall_upload.php:99
|
||||
msgid "Unable to process image."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:737 ../../mod/profile_photo.php:259
|
||||
#: ../../mod/wall_upload.php:105
|
||||
#: ../../mod/photos.php:757 ../../mod/profile_photo.php:259
|
||||
#: ../../mod/wall_upload.php:118
|
||||
msgid "Image upload failed."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:823 ../../mod/community.php:16
|
||||
#: ../../mod/photos.php:843 ../../mod/community.php:16
|
||||
#: ../../mod/dfrn_request.php:759 ../../mod/viewcontacts.php:17
|
||||
#: ../../mod/display.php:7 ../../mod/search.php:71 ../../mod/directory.php:29
|
||||
msgid "Public access denied."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:833
|
||||
#: ../../mod/photos.php:853
|
||||
msgid "No photos selected"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:912
|
||||
#: ../../mod/photos.php:932
|
||||
msgid "Access to this item is restricted."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:973
|
||||
#: ../../mod/photos.php:996
|
||||
#, php-format
|
||||
msgid "You have used %1$.2f Mbytes of %2$.2f Mbytes photo storage."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:999
|
||||
#, php-format
|
||||
msgid "You have used %1$.2f Mbytes of photo storage."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1005
|
||||
msgid "Upload Photos"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:976 ../../mod/photos.php:1020
|
||||
#: ../../mod/photos.php:1009 ../../mod/photos.php:1053
|
||||
msgid "New album name: "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:977
|
||||
#: ../../mod/photos.php:1010
|
||||
msgid "or existing album name: "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:978
|
||||
#: ../../mod/photos.php:1011
|
||||
msgid "Do not show a status post for this upload"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:980 ../../mod/photos.php:1266
|
||||
#: ../../mod/photos.php:1013 ../../mod/photos.php:1299
|
||||
msgid "Permissions"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1035
|
||||
#: ../../mod/photos.php:1068
|
||||
msgid "Edit Album"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1059 ../../mod/photos.php:1492
|
||||
#: ../../mod/photos.php:1092 ../../mod/photos.php:1525
|
||||
msgid "View Photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1094
|
||||
#: ../../mod/photos.php:1127
|
||||
msgid "Permission denied. Access to this item may be restricted."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1096
|
||||
#: ../../mod/photos.php:1129
|
||||
msgid "Photo not available"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1146
|
||||
#: ../../mod/photos.php:1179
|
||||
msgid "View photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1146
|
||||
#: ../../mod/photos.php:1179
|
||||
msgid "Edit photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1147
|
||||
#: ../../mod/photos.php:1180
|
||||
msgid "Use as profile photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1153 ../../include/conversation.php:490
|
||||
#: ../../mod/photos.php:1186 ../../include/conversation.php:490
|
||||
msgid "Private Message"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1175
|
||||
#: ../../mod/photos.php:1208
|
||||
msgid "View Full Size"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1243
|
||||
#: ../../mod/photos.php:1276
|
||||
msgid "Tags: "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1246
|
||||
#: ../../mod/photos.php:1279
|
||||
msgid "[Remove any tag]"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1256
|
||||
#: ../../mod/photos.php:1289
|
||||
msgid "Rotate CW (right)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1257
|
||||
#: ../../mod/photos.php:1290
|
||||
msgid "Rotate CCW (left)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1259
|
||||
#: ../../mod/photos.php:1292
|
||||
msgid "New album name"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1262
|
||||
#: ../../mod/photos.php:1295
|
||||
msgid "Caption"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1264
|
||||
#: ../../mod/photos.php:1297
|
||||
msgid "Add a Tag"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1268
|
||||
#: ../../mod/photos.php:1301
|
||||
msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1288 ../../include/conversation.php:554
|
||||
#: ../../mod/photos.php:1321 ../../include/conversation.php:554
|
||||
msgid "I like this (toggle)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1289 ../../include/conversation.php:555
|
||||
#: ../../mod/photos.php:1322 ../../include/conversation.php:555
|
||||
msgid "I don't like this (toggle)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1290 ../../include/conversation.php:993
|
||||
#: ../../mod/photos.php:1323 ../../include/conversation.php:993
|
||||
msgid "Share"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1291 ../../mod/editpost.php:104
|
||||
#: ../../mod/photos.php:1324 ../../mod/editpost.php:104
|
||||
#: ../../mod/wallmessage.php:145 ../../mod/message.php:215
|
||||
#: ../../mod/message.php:411 ../../include/conversation.php:371
|
||||
#: ../../include/conversation.php:731 ../../include/conversation.php:1012
|
||||
msgid "Please wait"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1307 ../../mod/photos.php:1347
|
||||
#: ../../mod/photos.php:1378 ../../include/conversation.php:577
|
||||
#: ../../mod/photos.php:1340 ../../mod/photos.php:1380
|
||||
#: ../../mod/photos.php:1411 ../../include/conversation.php:577
|
||||
msgid "This is you"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1309 ../../mod/photos.php:1349
|
||||
#: ../../mod/photos.php:1380 ../../include/conversation.php:579
|
||||
#: ../../mod/photos.php:1342 ../../mod/photos.php:1382
|
||||
#: ../../mod/photos.php:1413 ../../include/conversation.php:579
|
||||
#: ../../boot.php:518
|
||||
msgid "Comment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1311 ../../mod/editpost.php:125
|
||||
#: ../../mod/photos.php:1344 ../../mod/editpost.php:125
|
||||
#: ../../include/conversation.php:589 ../../include/conversation.php:1030
|
||||
msgid "Preview"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1408 ../../mod/settings.php:618
|
||||
#: ../../mod/photos.php:1441 ../../mod/settings.php:618
|
||||
#: ../../mod/settings.php:699 ../../mod/group.php:168 ../../mod/admin.php:663
|
||||
#: ../../include/conversation.php:328 ../../include/conversation.php:609
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1498
|
||||
#: ../../mod/photos.php:1531
|
||||
msgid "View Album"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/photos.php:1507
|
||||
#: ../../mod/photos.php:1540
|
||||
msgid "Recent Photos"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -827,7 +845,7 @@ msgstr ""
|
|||
msgid "Confirm"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/dfrn_request.php:715 ../../include/items.php:2805
|
||||
#: ../../mod/dfrn_request.php:715 ../../include/items.php:2873
|
||||
msgid "[Name Withheld]"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1153,7 +1171,7 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: ../../mod/localtime.php:12 ../../include/event.php:11
|
||||
#: ../../include/bb2diaspora.php:333
|
||||
#: ../../include/bb2diaspora.php:335
|
||||
msgid "l F d, Y \\@ g:i A"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -1726,10 +1744,10 @@ msgstr ""
|
|||
#: ../../mod/lostpass.php:45 ../../mod/lostpass.php:107
|
||||
#: ../../mod/register.php:90 ../../mod/register.php:144
|
||||
#: ../../mod/regmod.php:54 ../../mod/dfrn_confirm.php:752
|
||||
#: ../../addon/facebook/facebook.php:693
|
||||
#: ../../addon/facebook/facebook.php:1183
|
||||
#: ../../addon/facebook/facebook.php:700
|
||||
#: ../../addon/facebook/facebook.php:1190
|
||||
#: ../../addon/public_server/public_server.php:62
|
||||
#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:2814
|
||||
#: ../../addon/testdrive/testdrive.php:67 ../../include/items.php:2882
|
||||
#: ../../boot.php:720
|
||||
msgid "Administrator"
|
||||
msgstr ""
|
||||
|
|
@ -2420,7 +2438,7 @@ msgid "Personal Notes"
|
|||
msgstr ""
|
||||
|
||||
#: ../../mod/notes.php:63 ../../mod/filer.php:30
|
||||
#: ../../addon/facebook/facebook.php:761
|
||||
#: ../../addon/facebook/facebook.php:768
|
||||
#: ../../addon/privacy_image_cache/privacy_image_cache.php:187
|
||||
#: ../../addon/dav/layout.fnk.php:384 ../../include/text.php:652
|
||||
msgid "Save"
|
||||
|
|
@ -2665,7 +2683,7 @@ msgid "Profile Visibility Editor"
|
|||
msgstr ""
|
||||
|
||||
#: ../../mod/profperm.php:103 ../../view/theme/diabook/theme.php:128
|
||||
#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:79
|
||||
#: ../../include/profile_advanced.php:7 ../../include/profile_advanced.php:84
|
||||
#: ../../include/nav.php:50 ../../boot.php:1531
|
||||
msgid "Profile"
|
||||
msgstr ""
|
||||
|
|
@ -2778,8 +2796,8 @@ msgstr ""
|
|||
msgid "People Search"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/like.php:185 ../../mod/like.php:260 ../../mod/tagger.php:70
|
||||
#: ../../addon/facebook/facebook.php:1577
|
||||
#: ../../mod/like.php:144 ../../mod/like.php:301 ../../mod/tagger.php:70
|
||||
#: ../../addon/facebook/facebook.php:1584
|
||||
#: ../../addon/communityhome/communityhome.php:158
|
||||
#: ../../addon/communityhome/communityhome.php:167
|
||||
#: ../../view/theme/diabook/theme.php:565
|
||||
|
|
@ -2789,7 +2807,7 @@ msgstr ""
|
|||
msgid "status"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/like.php:202 ../../addon/facebook/facebook.php:1581
|
||||
#: ../../mod/like.php:161 ../../addon/facebook/facebook.php:1588
|
||||
#: ../../addon/communityhome/communityhome.php:172
|
||||
#: ../../view/theme/diabook/theme.php:579 ../../include/diaspora.php:1726
|
||||
#: ../../include/conversation.php:65
|
||||
|
|
@ -2797,14 +2815,14 @@ msgstr ""
|
|||
msgid "%1$s likes %2$s's %3$s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/like.php:204 ../../include/conversation.php:68
|
||||
#: ../../mod/like.php:163 ../../include/conversation.php:68
|
||||
#, php-format
|
||||
msgid "%1$s doesn't like %2$s's %3$s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:159
|
||||
#: ../../mod/admin.php:700 ../../mod/admin.php:899 ../../mod/display.php:37
|
||||
#: ../../mod/display.php:142 ../../include/items.php:3258
|
||||
#: ../../mod/display.php:142 ../../include/items.php:3326
|
||||
msgid "Item not found."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -2842,34 +2860,34 @@ msgstr ""
|
|||
msgid "Empty post discarded."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:379 ../../mod/wall_upload.php:102
|
||||
#: ../../mod/wall_upload.php:111 ../../mod/wall_upload.php:118
|
||||
#: ../../mod/item.php:379 ../../mod/wall_upload.php:115
|
||||
#: ../../mod/wall_upload.php:124 ../../mod/wall_upload.php:131
|
||||
#: ../../include/message.php:144
|
||||
msgid "Wall Photos"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:800
|
||||
#: ../../mod/item.php:784
|
||||
msgid "System error. Post not saved."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:825
|
||||
#: ../../mod/item.php:809
|
||||
#, php-format
|
||||
msgid ""
|
||||
"This message was sent to you by %s, a member of the Friendica social network."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:827
|
||||
#: ../../mod/item.php:811
|
||||
#, php-format
|
||||
msgid "You may visit them online at %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:828
|
||||
#: ../../mod/item.php:812
|
||||
msgid ""
|
||||
"Please contact the sender by replying to this post if you do not wish to "
|
||||
"receive these messages."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/item.php:830
|
||||
#: ../../mod/item.php:814
|
||||
#, php-format
|
||||
msgid "%s posted an update."
|
||||
msgstr ""
|
||||
|
|
@ -3720,8 +3738,8 @@ msgstr ""
|
|||
msgid "Search"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:21 ../../mod/profiles.php:395
|
||||
#: ../../mod/profiles.php:509 ../../mod/dfrn_confirm.php:62
|
||||
#: ../../mod/profiles.php:21 ../../mod/profiles.php:410
|
||||
#: ../../mod/profiles.php:524 ../../mod/dfrn_confirm.php:62
|
||||
msgid "Profile not found."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -3729,285 +3747,301 @@ msgstr ""
|
|||
msgid "Profile Name is required."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:152
|
||||
#: ../../mod/profiles.php:155
|
||||
msgid "Marital Status"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:156
|
||||
#: ../../mod/profiles.php:159
|
||||
msgid "Romantic Partner"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:160
|
||||
msgid "Work/Employment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:163
|
||||
msgid "Religion"
|
||||
msgid "Likes"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:167
|
||||
msgid "Political Views"
|
||||
msgid "Dislikes"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:171
|
||||
msgid "Work/Employment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:174
|
||||
msgid "Religion"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:178
|
||||
msgid "Political Views"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:182
|
||||
msgid "Gender"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:175
|
||||
#: ../../mod/profiles.php:186
|
||||
msgid "Sexual Preference"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:179
|
||||
#: ../../mod/profiles.php:190
|
||||
msgid "Homepage"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:183
|
||||
#: ../../mod/profiles.php:194
|
||||
msgid "Interests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:187
|
||||
#: ../../mod/profiles.php:198
|
||||
msgid "Address"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:194 ../../addon/dav/layout.fnk.php:310
|
||||
#: ../../mod/profiles.php:205 ../../addon/dav/layout.fnk.php:310
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:273
|
||||
#: ../../mod/profiles.php:288
|
||||
msgid "Profile updated."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:340
|
||||
#: ../../mod/profiles.php:355
|
||||
msgid " and "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:348
|
||||
#: ../../mod/profiles.php:363
|
||||
msgid "public profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:351
|
||||
#: ../../mod/profiles.php:366
|
||||
#, php-format
|
||||
msgid "%1$s changed %2$s to “%3$s”"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:352
|
||||
#: ../../mod/profiles.php:367
|
||||
#, php-format
|
||||
msgid " - Visit %1$s's %2$s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:355
|
||||
#: ../../mod/profiles.php:370
|
||||
#, php-format
|
||||
msgid "%1$s has an updated %2$s, changing %3$s."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:414
|
||||
#: ../../mod/profiles.php:429
|
||||
msgid "Profile deleted."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:432 ../../mod/profiles.php:466
|
||||
#: ../../mod/profiles.php:447 ../../mod/profiles.php:481
|
||||
msgid "Profile-"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:451 ../../mod/profiles.php:493
|
||||
#: ../../mod/profiles.php:466 ../../mod/profiles.php:508
|
||||
msgid "New profile created."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:472
|
||||
#: ../../mod/profiles.php:487
|
||||
msgid "Profile unavailable to clone."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:530
|
||||
#: ../../mod/profiles.php:545
|
||||
msgid "Hide your contact/friend list from viewers of this profile?"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:553
|
||||
#: ../../mod/profiles.php:568
|
||||
msgid "Edit Profile Details"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:555
|
||||
#: ../../mod/profiles.php:570
|
||||
msgid "View this profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:556
|
||||
#: ../../mod/profiles.php:571
|
||||
msgid "Create a new profile using these settings"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:557
|
||||
#: ../../mod/profiles.php:572
|
||||
msgid "Clone this profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:558
|
||||
#: ../../mod/profiles.php:573
|
||||
msgid "Delete this profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:559
|
||||
#: ../../mod/profiles.php:574
|
||||
msgid "Profile Name:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:560
|
||||
#: ../../mod/profiles.php:575
|
||||
msgid "Your Full Name:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:561
|
||||
#: ../../mod/profiles.php:576
|
||||
msgid "Title/Description:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:562
|
||||
#: ../../mod/profiles.php:577
|
||||
msgid "Your Gender:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:563
|
||||
#: ../../mod/profiles.php:578
|
||||
#, php-format
|
||||
msgid "Birthday (%s):"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:564
|
||||
#: ../../mod/profiles.php:579
|
||||
msgid "Street Address:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:565
|
||||
#: ../../mod/profiles.php:580
|
||||
msgid "Locality/City:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:566
|
||||
#: ../../mod/profiles.php:581
|
||||
msgid "Postal/Zip Code:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:567
|
||||
#: ../../mod/profiles.php:582
|
||||
msgid "Country:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:568
|
||||
#: ../../mod/profiles.php:583
|
||||
msgid "Region/State:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:569
|
||||
#: ../../mod/profiles.php:584
|
||||
msgid "<span class=\"heart\">♥</span> Marital Status:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:570
|
||||
#: ../../mod/profiles.php:585
|
||||
msgid "Who: (if applicable)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:571
|
||||
#: ../../mod/profiles.php:586
|
||||
msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:572
|
||||
#: ../../mod/profiles.php:587
|
||||
msgid "Since [date]:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:573 ../../include/profile_advanced.php:46
|
||||
#: ../../mod/profiles.php:588 ../../include/profile_advanced.php:46
|
||||
msgid "Sexual Preference:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:574
|
||||
#: ../../mod/profiles.php:589
|
||||
msgid "Homepage URL:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:575 ../../include/profile_advanced.php:50
|
||||
#: ../../mod/profiles.php:590 ../../include/profile_advanced.php:50
|
||||
msgid "Hometown:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:576 ../../include/profile_advanced.php:54
|
||||
#: ../../mod/profiles.php:591 ../../include/profile_advanced.php:54
|
||||
msgid "Political Views:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:577
|
||||
#: ../../mod/profiles.php:592
|
||||
msgid "Religious Views:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:578
|
||||
#: ../../mod/profiles.php:593
|
||||
msgid "Public Keywords:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:579
|
||||
#: ../../mod/profiles.php:594
|
||||
msgid "Private Keywords:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:580
|
||||
msgid "Example: fishing photography software"
|
||||
#: ../../mod/profiles.php:595 ../../include/profile_advanced.php:62
|
||||
msgid "Likes:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:581
|
||||
msgid "(Used for suggesting potential friends, can be seen by others)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:582
|
||||
msgid "(Used for searching profiles, never shown to others)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:583
|
||||
msgid "Tell us about yourself..."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:584
|
||||
msgid "Hobbies/Interests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:585
|
||||
msgid "Contact information and Social Networks"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:586
|
||||
msgid "Musical interests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:587
|
||||
msgid "Books, literature"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:588
|
||||
msgid "Television"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:589
|
||||
msgid "Film/dance/culture/entertainment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:590
|
||||
msgid "Love/romance"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:591
|
||||
msgid "Work/employment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:592
|
||||
msgid "School/education"
|
||||
#: ../../mod/profiles.php:596 ../../include/profile_advanced.php:64
|
||||
msgid "Dislikes:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:597
|
||||
msgid "Example: fishing photography software"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:598
|
||||
msgid "(Used for suggesting potential friends, can be seen by others)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:599
|
||||
msgid "(Used for searching profiles, never shown to others)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:600
|
||||
msgid "Tell us about yourself..."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:601
|
||||
msgid "Hobbies/Interests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:602
|
||||
msgid "Contact information and Social Networks"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:603
|
||||
msgid "Musical interests"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:604
|
||||
msgid "Books, literature"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:605
|
||||
msgid "Television"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:606
|
||||
msgid "Film/dance/culture/entertainment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:607
|
||||
msgid "Love/romance"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:608
|
||||
msgid "Work/employment"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:609
|
||||
msgid "School/education"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:614
|
||||
msgid ""
|
||||
"This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
|
||||
"be visible to anybody using the internet."
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:607 ../../mod/directory.php:111
|
||||
#: ../../mod/profiles.php:624 ../../mod/directory.php:111
|
||||
msgid "Age: "
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:644
|
||||
#: ../../mod/profiles.php:663
|
||||
msgid "Edit/Manage Profiles"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:645 ../../boot.php:1092
|
||||
#: ../../mod/profiles.php:664 ../../boot.php:1092
|
||||
msgid "Change profile photo"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:646 ../../boot.php:1093
|
||||
#: ../../mod/profiles.php:665 ../../boot.php:1093
|
||||
msgid "Create New Profile"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:657 ../../boot.php:1103
|
||||
#: ../../mod/profiles.php:676 ../../boot.php:1103
|
||||
msgid "Profile Image"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:659 ../../boot.php:1106
|
||||
#: ../../mod/profiles.php:678 ../../boot.php:1106
|
||||
msgid "visible to everybody"
|
||||
msgstr ""
|
||||
|
||||
#: ../../mod/profiles.php:660 ../../boot.php:1107
|
||||
#: ../../mod/profiles.php:679 ../../boot.php:1107
|
||||
msgid "Edit visibility"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -4281,83 +4315,83 @@ msgstr ""
|
|||
msgid "Google+ Import Settings saved."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:514
|
||||
#: ../../addon/facebook/facebook.php:521
|
||||
msgid "Facebook disabled"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:519
|
||||
#: ../../addon/facebook/facebook.php:526
|
||||
msgid "Updating contacts"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:542
|
||||
#: ../../addon/facebook/facebook.php:549
|
||||
msgid "Facebook API key is missing."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:549
|
||||
#: ../../addon/facebook/facebook.php:556
|
||||
msgid "Facebook Connect"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:555
|
||||
#: ../../addon/facebook/facebook.php:562
|
||||
msgid "Install Facebook connector for this account."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:562
|
||||
#: ../../addon/facebook/facebook.php:569
|
||||
msgid "Remove Facebook connector"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:567
|
||||
#: ../../addon/facebook/facebook.php:574
|
||||
msgid ""
|
||||
"Re-authenticate [This is necessary whenever your Facebook password is "
|
||||
"changed.]"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:574
|
||||
#: ../../addon/facebook/facebook.php:581
|
||||
msgid "Post to Facebook by default"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:580
|
||||
#: ../../addon/facebook/facebook.php:587
|
||||
msgid ""
|
||||
"Facebook friend linking has been disabled on this site. The following "
|
||||
"settings will have no effect."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:584
|
||||
#: ../../addon/facebook/facebook.php:591
|
||||
msgid ""
|
||||
"Facebook friend linking has been disabled on this site. If you disable it, "
|
||||
"you will be unable to re-enable it."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:587
|
||||
#: ../../addon/facebook/facebook.php:594
|
||||
msgid "Link all your Facebook friends and conversations on this website"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:589
|
||||
#: ../../addon/facebook/facebook.php:596
|
||||
msgid ""
|
||||
"Facebook conversations consist of your <em>profile wall</em> and your friend "
|
||||
"<em>stream</em>."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:590
|
||||
#: ../../addon/facebook/facebook.php:597
|
||||
msgid "On this website, your Facebook friend stream is only visible to you."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:591
|
||||
#: ../../addon/facebook/facebook.php:598
|
||||
msgid ""
|
||||
"The following settings determine the privacy of your Facebook profile wall "
|
||||
"on this website."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:595
|
||||
#: ../../addon/facebook/facebook.php:602
|
||||
msgid ""
|
||||
"On this website your Facebook profile wall conversations will only be "
|
||||
"visible to you"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:600
|
||||
#: ../../addon/facebook/facebook.php:607
|
||||
msgid "Do not import your Facebook profile wall conversations"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:602
|
||||
#: ../../addon/facebook/facebook.php:609
|
||||
msgid ""
|
||||
"If you choose to link conversations and leave both of these boxes unchecked, "
|
||||
"your Facebook profile wall will be merged with your profile wall on this "
|
||||
|
|
@ -4365,120 +4399,120 @@ msgid ""
|
|||
"who may see the conversations."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:607
|
||||
#: ../../addon/facebook/facebook.php:614
|
||||
msgid "Comma separated applications to ignore"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:691
|
||||
#: ../../addon/facebook/facebook.php:698
|
||||
msgid "Problems with Facebook Real-Time Updates"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:719
|
||||
#: ../../addon/facebook/facebook.php:726
|
||||
#: ../../include/contact_selectors.php:81
|
||||
msgid "Facebook"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:720
|
||||
#: ../../addon/facebook/facebook.php:727
|
||||
msgid "Facebook Connector Settings"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:735
|
||||
#: ../../addon/facebook/facebook.php:742
|
||||
msgid "Facebook API Key"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:745
|
||||
#: ../../addon/facebook/facebook.php:752
|
||||
msgid ""
|
||||
"Error: it appears that you have specified the App-ID and -Secret in your ."
|
||||
"htconfig.php file. As long as they are specified there, they cannot be set "
|
||||
"using this form.<br><br>"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:750
|
||||
#: ../../addon/facebook/facebook.php:757
|
||||
msgid ""
|
||||
"Error: the given API Key seems to be incorrect (the application access token "
|
||||
"could not be retrieved)."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:752
|
||||
#: ../../addon/facebook/facebook.php:759
|
||||
msgid "The given API Key seems to work correctly."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:754
|
||||
#: ../../addon/facebook/facebook.php:761
|
||||
msgid ""
|
||||
"The correctness of the API Key could not be detected. Somthing strange's "
|
||||
"going on."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:757
|
||||
#: ../../addon/facebook/facebook.php:764
|
||||
msgid "App-ID / API-Key"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:758
|
||||
#: ../../addon/facebook/facebook.php:765
|
||||
msgid "Application secret"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:759
|
||||
#: ../../addon/facebook/facebook.php:766
|
||||
#, php-format
|
||||
msgid "Polling Interval in minutes (minimum %1$s minutes)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:760
|
||||
#: ../../addon/facebook/facebook.php:767
|
||||
msgid ""
|
||||
"Synchronize comments (no comments on Facebook are missed, at the cost of "
|
||||
"increased system load)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:764
|
||||
#: ../../addon/facebook/facebook.php:771
|
||||
msgid "Real-Time Updates"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:768
|
||||
#: ../../addon/facebook/facebook.php:775
|
||||
msgid "Real-Time Updates are activated."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:769
|
||||
#: ../../addon/facebook/facebook.php:776
|
||||
msgid "Deactivate Real-Time Updates"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:771
|
||||
#: ../../addon/facebook/facebook.php:778
|
||||
msgid "Real-Time Updates not activated."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:771
|
||||
#: ../../addon/facebook/facebook.php:778
|
||||
msgid "Activate Real-Time Updates"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:790 ../../addon/dav/layout.fnk.php:360
|
||||
#: ../../addon/facebook/facebook.php:797 ../../addon/dav/layout.fnk.php:360
|
||||
msgid "The new values have been saved."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:814
|
||||
#: ../../addon/facebook/facebook.php:821
|
||||
msgid "Post to Facebook"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:912
|
||||
#: ../../addon/facebook/facebook.php:919
|
||||
msgid ""
|
||||
"Post to Facebook cancelled because of multi-network access permission "
|
||||
"conflict."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:1132
|
||||
#: ../../addon/facebook/facebook.php:1139
|
||||
msgid "View on Friendica"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:1165
|
||||
#: ../../addon/facebook/facebook.php:1172
|
||||
msgid "Facebook post failed. Queued for retry."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:1205
|
||||
#: ../../addon/facebook/facebook.php:1212
|
||||
msgid "Your Facebook connection became invalid. Please Re-authenticate."
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:1206
|
||||
#: ../../addon/facebook/facebook.php:1213
|
||||
msgid "Facebook connection became invalid"
|
||||
msgstr ""
|
||||
|
||||
#: ../../addon/facebook/facebook.php:1207
|
||||
#: ../../addon/facebook/facebook.php:1214
|
||||
#, php-format
|
||||
msgid ""
|
||||
"Hi %1$s,\n"
|
||||
|
|
@ -6101,8 +6135,7 @@ msgstr ""
|
|||
msgid "j F"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:30 ../../include/datetime.php:450
|
||||
#: ../../include/items.php:1460
|
||||
#: ../../include/profile_advanced.php:30
|
||||
msgid "Birthday:"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -6139,35 +6172,35 @@ msgstr ""
|
|||
msgid "Hobbies/Interests:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:62
|
||||
#: ../../include/profile_advanced.php:67
|
||||
msgid "Contact information and Social Networks:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:64
|
||||
#: ../../include/profile_advanced.php:69
|
||||
msgid "Musical interests:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:66
|
||||
#: ../../include/profile_advanced.php:71
|
||||
msgid "Books, literature:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:68
|
||||
#: ../../include/profile_advanced.php:73
|
||||
msgid "Television:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:70
|
||||
#: ../../include/profile_advanced.php:75
|
||||
msgid "Film/dance/culture/entertainment:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:72
|
||||
#: ../../include/profile_advanced.php:77
|
||||
msgid "Love/Romance:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:74
|
||||
#: ../../include/profile_advanced.php:79
|
||||
msgid "Work/employment:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/profile_advanced.php:76
|
||||
#: ../../include/profile_advanced.php:81
|
||||
msgid "School/education:"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -6475,11 +6508,11 @@ msgstr ""
|
|||
msgid "Ask me"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/event.php:17 ../../include/bb2diaspora.php:339
|
||||
#: ../../include/event.php:20 ../../include/bb2diaspora.php:341
|
||||
msgid "Starts:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/event.php:27 ../../include/bb2diaspora.php:347
|
||||
#: ../../include/event.php:30 ../../include/bb2diaspora.php:349
|
||||
msgid "Finishes:"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -6956,15 +6989,25 @@ msgstr ""
|
|||
msgid "%1$d %2$s ago"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/datetime.php:450 ../../include/items.php:1460
|
||||
#, php-format
|
||||
msgid "%s's birthday"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/datetime.php:451 ../../include/items.php:1461
|
||||
#, php-format
|
||||
msgid "Happy Birthday %s"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/onepoll.php:399
|
||||
msgid "From: "
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/bbcode.php:214 ../../include/bbcode.php:234
|
||||
#: ../../include/bbcode.php:216 ../../include/bbcode.php:236
|
||||
msgid "$1 wrote:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/bbcode.php:249 ../../include/bbcode.php:322
|
||||
#: ../../include/bbcode.php:251 ../../include/bbcode.php:328
|
||||
msgid "Image/photo"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -7159,61 +7202,61 @@ msgid ""
|
|||
"This site is not configured to allow communications with other networks."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:60 ../../include/follow.php:75
|
||||
#: ../../include/follow.php:60 ../../include/follow.php:80
|
||||
msgid "No compatible communication protocols or feeds were discovered."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:73
|
||||
#: ../../include/follow.php:78
|
||||
msgid "The profile address specified does not provide adequate information."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:77
|
||||
#: ../../include/follow.php:82
|
||||
msgid "An author or name was not found."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:79
|
||||
#: ../../include/follow.php:84
|
||||
msgid "No browser URL could be matched to this address."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:81
|
||||
#: ../../include/follow.php:86
|
||||
msgid ""
|
||||
"Unable to match @-style Identity Address with a known protocol or email "
|
||||
"contact."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:82
|
||||
#: ../../include/follow.php:87
|
||||
msgid "Use mailto: in front of address to force email check."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:88
|
||||
#: ../../include/follow.php:93
|
||||
msgid ""
|
||||
"The profile address specified belongs to a network which has been disabled "
|
||||
"on this site."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:93
|
||||
#: ../../include/follow.php:103
|
||||
msgid ""
|
||||
"Limited profile. This person will be unable to receive direct/personal "
|
||||
"notifications from you."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:169
|
||||
#: ../../include/follow.php:205
|
||||
msgid "Unable to retrieve contact information."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/follow.php:223
|
||||
#: ../../include/follow.php:259
|
||||
msgid "following"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/items.php:2812
|
||||
#: ../../include/items.php:2880
|
||||
msgid "A new person is sharing with you at "
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/items.php:2812
|
||||
#: ../../include/items.php:2880
|
||||
msgid "You have a new follower at "
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/items.php:3476
|
||||
#: ../../include/items.php:3512
|
||||
msgid "Archives"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -7556,6 +7599,18 @@ msgstr ""
|
|||
msgid "permissions"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/plugin.php:388 ../../include/plugin.php:390
|
||||
msgid "Click here to upgrade."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/plugin.php:396
|
||||
msgid "This action exceeds the limits set by your subscription plan."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/plugin.php:401
|
||||
msgid "This action is not available under your subscription plan."
|
||||
msgstr ""
|
||||
|
||||
#: ../../boot.php:517
|
||||
msgid "Delete this item?"
|
||||
msgstr ""
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@ $f_dsel $f_tsel
|
|||
|
||||
<div id="event-adjust-break"></div>
|
||||
|
||||
<div id="event-summary-text">$t_text</div>
|
||||
<input type="text" id="event-summary" name="summary" value="$t_orig" />
|
||||
|
||||
|
||||
<div id="event-desc-text">$d_text</div>
|
||||
<textarea id="event-desc-textarea" name="desc">$d_orig</textarea>
|
||||
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<div style="display: none;">
|
||||
<div id="profile-jot-acl-wrapper" style="width:auto;height:auto;overflow:auto;">
|
||||
$acl
|
||||
<hr style="clear:both"/>
|
||||
<hr style="clear:both;"/>
|
||||
<div id="profile-jot-email-label">$emailcc</div><input type="text" name="emailcc" id="profile-jot-email" title="$emtitle" />
|
||||
<div id="profile-jot-email-end"></div>
|
||||
$jotnets
|
||||
|
|
|
|||
|
|
@ -2421,9 +2421,40 @@ aside input[type='text'] {
|
|||
font-size: 20px;
|
||||
}
|
||||
|
||||
#event-summary-text {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
#event-share-checkbox {
|
||||
float: left;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
#event-share-text {
|
||||
float: left;
|
||||
margin-top: 10px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
#event-share-break {
|
||||
clear: both;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#event-summary {
|
||||
width: 400px;
|
||||
}
|
||||
|
||||
.vevent {
|
||||
border: 1px solid #CCCCCC;
|
||||
}
|
||||
|
||||
.vevent .event-summary {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.vevent .event-description, .vevent .event-location {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue