From ce5adbf51e230e6eddf8bffb26108ca216372824 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Sat, 9 Jul 2016 18:10:13 -0700 Subject: [PATCH 01/58] more sql fine tuning --- include/widgets.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/widgets.php b/include/widgets.php index a4a6fb55a..2d4d5b799 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -296,7 +296,7 @@ function widget_filer($arr) { $selected = ((x($_REQUEST,'file')) ? $_REQUEST['file'] : ''); $terms = array(); - $r = q("select distinct(term) from term where uid = %d and ttype = %d order by term asc", + $r = q("select distinct term from term where uid = %d and ttype = %d order by term asc", intval(local_channel()), intval(TERM_FILE) ); From 3d3584b36c9cb1d8d0dfe9c036b77bbc921f4c59 Mon Sep 17 00:00:00 2001 From: Mario Vavti Date: Sun, 10 Jul 2016 13:42:04 +0200 Subject: [PATCH 02/58] remove check for mcrypt --- Zotlabs/Module/Setup.php | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Zotlabs/Module/Setup.php b/Zotlabs/Module/Setup.php index c5d0ccc21..802f0c216 100644 --- a/Zotlabs/Module/Setup.php +++ b/Zotlabs/Module/Setup.php @@ -493,7 +493,6 @@ class Setup extends \Zotlabs\Web\Controller { $this->check_add($ck_funcs, t('OpenSSL PHP module'), true, true); $this->check_add($ck_funcs, t('mysqli or postgres PHP module'), true, true); $this->check_add($ck_funcs, t('mb_string PHP module'), true, true); - $this->check_add($ck_funcs, t('mcrypt PHP module'), true, true); $this->check_add($ck_funcs, t('xml PHP module'), true, true); if(function_exists('apache_get_modules')){ @@ -530,10 +529,6 @@ class Setup extends \Zotlabs\Web\Controller { $ck_funcs[4]['status'] = false; $ck_funcs[4]['help'] = t('Error: mb_string PHP module required but not installed.'); } - if(! function_exists('mcrypt_encrypt')) { - $ck_funcs[5]['status'] = false; - $ck_funcs[5]['help'] = t('Error: mcrypt PHP module required but not installed.'); - } if(! extension_loaded('xml')) { $ck_funcs[6]['status'] = false; $ck_funcs[6]['help'] = t('Error: xml PHP module required for DAV but not installed.'); From d5afd0d7c223161b673dca529830be3bfc739cd2 Mon Sep 17 00:00:00 2001 From: Mario Vavti Date: Mon, 11 Jul 2016 12:49:53 +0200 Subject: [PATCH 03/58] do not use visibility for fullscreen button and move fullscreen button to the right --- view/css/bootstrap-red.css | 3 ++- view/theme/redbasic/js/redbasic.js | 6 ++++-- view/tpl/chat.tpl | 4 ++-- view/tpl/events-js.tpl | 4 ++-- view/tpl/events_cal-js.tpl | 4 ++-- view/tpl/photo_album.tpl | 4 ++-- view/tpl/photos_recent.tpl | 4 ++-- 7 files changed, 16 insertions(+), 13 deletions(-) diff --git a/view/css/bootstrap-red.css b/view/css/bootstrap-red.css index 26321ab3c..20df16446 100644 --- a/view/css/bootstrap-red.css +++ b/view/css/bootstrap-red.css @@ -59,7 +59,8 @@ aside .nav-pills > li > a, padding: 6px 10px; } -.wall-item-tools .dropdown-menu { +.wall-item-tools .dropdown-menu, +.section-title-wrapper .dropdown-menu { min-width: auto; } diff --git a/view/theme/redbasic/js/redbasic.js b/view/theme/redbasic/js/redbasic.js index 5209ad945..300f076f0 100644 --- a/view/theme/redbasic/js/redbasic.js +++ b/view/theme/redbasic/js/redbasic.js @@ -56,14 +56,16 @@ $(document).ready(function() { function makeFullScreen(full) { if(typeof full=='undefined' || full == true) { $('main').css({'transition': 'none'}).addClass('fullscreen'); - $('#fullscreen-btn, header, nav, aside, #tabs-collapse-1').css({'visibility': 'hidden'}); + $('header, nav, aside, #tabs-collapse-1').css({'visibility': 'hidden'}); + $('#fullscreen-btn').hide(); $('#inline-btn').show(); } else { $('main').removeClass('fullscreen'); - $('#fullscreen-btn, header, nav, aside, #tabs-collapse-1').css({'visibility': ''}); + $('header, nav, aside, #tabs-collapse-1').css({'visibility': ''}); $('#inline-btn').hide(); + $('#fullscreen-btn').show(); $('main').css({'transition': ''}); } } diff --git a/view/tpl/chat.tpl b/view/tpl/chat.tpl index 341ff7649..31be4136f 100644 --- a/view/tpl/chat.tpl +++ b/view/tpl/chat.tpl @@ -1,8 +1,6 @@
- - {{if $is_owner}}
@@ -10,6 +8,8 @@
{{/if}} + +

{{$room_name}}

diff --git a/view/tpl/events-js.tpl b/view/tpl/events-js.tpl index 3397411a8..6299242ce 100755 --- a/view/tpl/events-js.tpl +++ b/view/tpl/events-js.tpl @@ -2,8 +2,6 @@
+ +

diff --git a/view/tpl/events_cal-js.tpl b/view/tpl/events_cal-js.tpl index 121c06cb5..b7836cfab 100755 --- a/view/tpl/events_cal-js.tpl +++ b/view/tpl/events_cal-js.tpl @@ -2,13 +2,13 @@
- -
+ +

diff --git a/view/tpl/photo_album.tpl b/view/tpl/photo_album.tpl index e6cb61637..b391a00a1 100755 --- a/view/tpl/photo_album.tpl +++ b/view/tpl/photo_album.tpl @@ -1,8 +1,6 @@
- - {{if $order}} {{/if}} @@ -14,6 +12,8 @@ {{/if}}
+ +

{{$album}}

diff --git a/view/tpl/photos_recent.tpl b/view/tpl/photos_recent.tpl index c40dda145..139f27a23 100755 --- a/view/tpl/photos_recent.tpl +++ b/view/tpl/photos_recent.tpl @@ -1,11 +1,11 @@
- - {{if $can_post}} {{/if}} + +

{{$title}}

From 67c60229ca663135e8de5b99b27b0838fa6c205a Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 13:20:12 -0700 Subject: [PATCH 04/58] use the profile_uid here. --- Zotlabs/Module/Item.php | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Zotlabs/Module/Item.php b/Zotlabs/Module/Item.php index 58d39da83..235c5528e 100644 --- a/Zotlabs/Module/Item.php +++ b/Zotlabs/Module/Item.php @@ -905,7 +905,7 @@ class Item extends \Zotlabs\Web\Controller { if($r) { xchan_query($r); $sync_item = fetch_post_tags($r); - build_sync_packet($uid,array('item' => array(encode_item($sync_item[0],true)))); + build_sync_packet($profile_uid,array('item' => array(encode_item($sync_item[0],true)))); } } if(! $nopush) @@ -1000,7 +1000,7 @@ class Item extends \Zotlabs\Web\Controller { if($r) { xchan_query($r); $sync_item = fetch_post_tags($r); - build_sync_packet($uid,array('item' => array(encode_item($sync_item[0],true)))); + build_sync_packet($profile_uid,array('item' => array(encode_item($sync_item[0],true)))); } } @@ -1014,11 +1014,6 @@ class Item extends \Zotlabs\Web\Controller { logger('post_complete'); - - - - - // figure out how to return, depending on from whence we came if($api_source) From fb36561a6841c165dc8644a61c4c37a771461e2b Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 13:27:44 -0700 Subject: [PATCH 05/58] force non-null sess_data --- Zotlabs/Web/SessionHandler.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Zotlabs/Web/SessionHandler.php b/Zotlabs/Web/SessionHandler.php index 6e7333b4b..93b27a7e8 100644 --- a/Zotlabs/Web/SessionHandler.php +++ b/Zotlabs/Web/SessionHandler.php @@ -24,7 +24,8 @@ class SessionHandler implements \SessionHandlerInterface { return $r[0]['sess_data']; } else { - q("INSERT INTO `session` (sid, expire) values ('%s', '%s')", + q("INSERT INTO `session` (sess_data, sid, expire) values ('%s', '%s', '%s')", + dbesc(''), dbesc($id), dbesc(time() + 300) ); From 833de9180eeb8b2d6cf0e0e90a656419f6172ab4 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 13:46:06 -0700 Subject: [PATCH 06/58] create change_channel hook --- include/security.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/security.php b/include/security.php index 38045c8a9..6c245fa09 100644 --- a/include/security.php +++ b/include/security.php @@ -132,6 +132,10 @@ function change_channel($change_channel) { } if(! is_dir('store/' . $r[0]['channel_address'])) @os_mkdir('store/' . $r[0]['channel_address'], STORAGE_DEFAULT_PERMISSIONS,true); + + $arr = [ 'channel_id' => $change_channel, 'chanx' => $ret ]; + call_hooks('change_channel', $arr); + } return $ret; From 17c3e12eabf93fe76061af0b97d25c6a9d080025 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 17:43:10 -0700 Subject: [PATCH 07/58] document the new change_channel hook --- doc/hook/change_channel.bb | 11 +++++++++++ doc/hooklist.bb | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 doc/hook/change_channel.bb diff --git a/doc/hook/change_channel.bb b/doc/hook/change_channel.bb new file mode 100644 index 000000000..4514b9265 --- /dev/null +++ b/doc/hook/change_channel.bb @@ -0,0 +1,11 @@ +[h2]change_channel[/h2] + +Called when entering a logged in state in a channel context (as opposed to an account context). +The hook array provides two arguments, 'channel_id' and 'chanx'. 'chanx' is a union of the channel +and xchan records for the now active channel. + +Use this to capture what would traditionally be known as 'login events'. In this platform, login is +a separate authentication activity and doesn't necessarily require "connecting to an identity", which +is what the change_channel activity represents. + + diff --git a/doc/hooklist.bb b/doc/hooklist.bb index bb1bffcf0..66ff1cf71 100644 --- a/doc/hooklist.bb +++ b/doc/hooklist.bb @@ -73,6 +73,9 @@ Hooks allow plugins/addons to "hook into" the code at many points and alter the [zrl=[baseurl]/help/hook/bb_translate_video]bb_translate_video[/zrl] Called when extracting embedded services from bbcode video elements (rarely used) +[zrl=[baseurl]/help/hook/change_channel]change_channel[/zrl] + Called when logging in to a channel (either during login or afterward through the channel manager) + [zrl=[baseurl]/help/hook/channel_remove]channel_remove[/zrl] Called when removing a channel From 168d35747da8730a7e3a1e6cb40d4f411e147be3 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 18:59:54 -0700 Subject: [PATCH 08/58] use the get_hostname function rather than parse the url --- include/security.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/security.php b/include/security.php index 6c245fa09..212690d91 100644 --- a/include/security.php +++ b/include/security.php @@ -125,7 +125,7 @@ function change_channel($change_channel) { ); if($x) { $_SESSION['my_url'] = $x[0]['xchan_url']; - $_SESSION['my_address'] = $r[0]['channel_address'] . '@' . substr(z_root(), strpos(z_root(), '://') + 3); + $_SESSION['my_address'] = $r[0]['channel_address'] . '@' . App::get_hostname(); App::set_observer($x[0]); App::set_perms(get_all_perms(local_channel(), $hash)); From ed0e2b52d7cf66ada81208c5068f70568a0b2310 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Mon, 11 Jul 2016 21:46:16 -0700 Subject: [PATCH 09/58] move permissiondescription class to zotlabs/lib --- {include => Zotlabs/Lib}/PermissionDescription.php | 2 +- Zotlabs/Module/Channel.php | 3 +-- Zotlabs/Module/Editwebpage.php | 3 +-- Zotlabs/Module/Events.php | 3 +-- Zotlabs/Module/Filestorage.php | 3 +-- Zotlabs/Module/Network.php | 4 +--- Zotlabs/Module/Photos.php | 6 ++---- Zotlabs/Module/Rpost.php | 3 +-- Zotlabs/Module/Settings.php | 4 +--- Zotlabs/Module/Webpages.php | 3 +-- include/acl_selectors.php | 4 +--- 11 files changed, 12 insertions(+), 26 deletions(-) rename {include => Zotlabs/Lib}/PermissionDescription.php (99%) diff --git a/include/PermissionDescription.php b/Zotlabs/Lib/PermissionDescription.php similarity index 99% rename from include/PermissionDescription.php rename to Zotlabs/Lib/PermissionDescription.php index 1f7799406..55aac2dea 100644 --- a/include/PermissionDescription.php +++ b/Zotlabs/Lib/PermissionDescription.php @@ -1,6 +1,6 @@ (($is_owner) ? \App::$profile['channel_location'] : ''), 'nickname' => \App::$profile['channel_address'], 'lockstate' => (((strlen(\App::$profile['channel_allow_cid'])) || (strlen(\App::$profile['channel_allow_gid'])) || (strlen(\App::$profile['channel_deny_cid'])) || (strlen(\App::$profile['channel_deny_gid']))) ? 'lock' : 'unlock'), - 'acl' => (($is_owner) ? populate_acl($channel_acl,true, \PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post') : ''), + 'acl' => (($is_owner) ? populate_acl($channel_acl,true, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post') : ''), 'showacl' => (($is_owner) ? 'yes' : ''), 'bang' => '', 'visitor' => (($is_owner || $observer) ? true : false), diff --git a/Zotlabs/Module/Editwebpage.php b/Zotlabs/Module/Editwebpage.php index 5cd409e1e..be4803a07 100644 --- a/Zotlabs/Module/Editwebpage.php +++ b/Zotlabs/Module/Editwebpage.php @@ -4,7 +4,6 @@ namespace Zotlabs\Module; require_once('include/channel.php'); require_once('include/acl_selectors.php'); require_once('include/conversation.php'); -require_once('include/PermissionDescription.php'); class Editwebpage extends \Zotlabs\Web\Controller { @@ -151,7 +150,7 @@ class Editwebpage extends \Zotlabs\Web\Controller { 'body' => undo_post_tagging($itm[0]['body']), 'post_id' => $post_id, 'visitor' => ($is_owner) ? true : false, - 'acl' => populate_acl($itm[0],false,\PermissionDescription::fromGlobalPermission('view_pages')), + 'acl' => populate_acl($itm[0],false,\Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_pages')), 'showacl' => ($is_owner) ? true : false, 'mimetype' => $mimetype, 'mimeselect' => true, diff --git a/Zotlabs/Module/Events.php b/Zotlabs/Module/Events.php index 3187cddb4..def5c437b 100644 --- a/Zotlabs/Module/Events.php +++ b/Zotlabs/Module/Events.php @@ -6,7 +6,6 @@ require_once('include/bbcode.php'); require_once('include/datetime.php'); require_once('include/event.php'); require_once('include/items.php'); -require_once('include/PermissionDescription.php'); class Events extends \Zotlabs\Web\Controller { @@ -471,7 +470,7 @@ class Events extends \Zotlabs\Web\Controller { '$permissions' => t('Permission settings'), // populating the acl dialog was a permission description from view_stream because Cal.php, which // displays events, says "since we don't currently have an event permission - use the stream permission" - '$acl' => (($orig_event['event_xchan']) ? '' : populate_acl(((x($orig_event)) ? $orig_event : $perm_defaults), false, \PermissionDescription::fromGlobalPermission('view_stream'))), + '$acl' => (($orig_event['event_xchan']) ? '' : populate_acl(((x($orig_event)) ? $orig_event : $perm_defaults), false, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'))), '$submit' => t('Submit'), '$advanced' => t('Advanced Options') diff --git a/Zotlabs/Module/Filestorage.php b/Zotlabs/Module/Filestorage.php index 2861f31be..c3ef22e32 100644 --- a/Zotlabs/Module/Filestorage.php +++ b/Zotlabs/Module/Filestorage.php @@ -6,7 +6,6 @@ namespace Zotlabs\Module; */ require_once('include/attach.php'); -require_once('include/PermissionDescription.php'); /** @@ -134,7 +133,7 @@ class Filestorage extends \Zotlabs\Web\Controller { $cloudpath = get_cloudpath($f) . (intval($f['is_dir']) ? '?f=&davguest=1' : ''); $parentpath = get_parent_cloudpath($channel['channel_id'], $channel['channel_address'], $f['hash']); - $aclselect_e = populate_acl($f, false, \PermissionDescription::fromGlobalPermission('view_storage')); + $aclselect_e = populate_acl($f, false, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_storage')); $is_a_dir = (intval($f['is_dir']) ? true : false); $lockstate = (($f['allow_cid'] || $f['allow_gid'] || $f['deny_cid'] || $f['deny_gid']) ? 'lock' : 'unlock'); diff --git a/Zotlabs/Module/Network.php b/Zotlabs/Module/Network.php index 87ed326e2..3b88cd8d6 100644 --- a/Zotlabs/Module/Network.php +++ b/Zotlabs/Module/Network.php @@ -6,8 +6,6 @@ require_once('include/group.php'); require_once('include/contact_widgets.php'); require_once('include/conversation.php'); require_once('include/acl_selectors.php'); -require_once('include/PermissionDescription.php'); - class Network extends \Zotlabs\Web\Controller { @@ -171,7 +169,7 @@ class Network extends \Zotlabs\Web\Controller { 'default_location' => $channel['channel_location'], 'nickname' => $channel['channel_address'], 'lockstate' => (($private_editing || $channel['channel_allow_cid'] || $channel['channel_allow_gid'] || $channel['channel_deny_cid'] || $channel['channel_deny_gid']) ? 'lock' : 'unlock'), - 'acl' => populate_acl((($private_editing) ? $def_acl : $channel_acl), true, \PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), + 'acl' => populate_acl((($private_editing) ? $def_acl : $channel_acl), true, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), 'bang' => (($private_editing) ? '!' : ''), 'visitor' => true, 'profile_uid' => local_channel(), diff --git a/Zotlabs/Module/Photos.php b/Zotlabs/Module/Photos.php index 1633e08ef..1eeab1461 100644 --- a/Zotlabs/Module/Photos.php +++ b/Zotlabs/Module/Photos.php @@ -9,8 +9,6 @@ require_once('include/bbcode.php'); require_once('include/security.php'); require_once('include/attach.php'); require_once('include/text.php'); -require_once('include/PermissionDescription.php'); - class Photos extends \Zotlabs\Web\Controller { @@ -633,7 +631,7 @@ class Photos extends \Zotlabs\Web\Controller { $lockstate = (($acl->is_private()) ? 'lock' : 'unlock'); } - $aclselect = (($_is_owner) ? populate_acl($channel_acl,false, \PermissionDescription::fromGlobalPermission('view_storage')) : ''); + $aclselect = (($_is_owner) ? populate_acl($channel_acl,false, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_storage')) : ''); // this is wrong but is to work around an issue with js_upload wherein it chokes if these variables // don't exist. They really should be set to a parseable representation of the channel's default permissions @@ -1023,7 +1021,7 @@ class Photos extends \Zotlabs\Web\Controller { if($can_post) { $album_e = $ph[0]['album']; $caption_e = $ph[0]['description']; - $aclselect_e = (($_is_owner) ? populate_acl($ph[0], true, \PermissionDescription::fromGlobalPermission('view_storage')) : ''); + $aclselect_e = (($_is_owner) ? populate_acl($ph[0], true, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_storage')) : ''); $albums = ((array_key_exists('albums', \App::$data)) ? \App::$data['albums'] : photos_albums_list(\App::$data['channel'],\App::$data['observer'])); $_SESSION['album_return'] = bin2hex($ph[0]['album']); diff --git a/Zotlabs/Module/Rpost.php b/Zotlabs/Module/Rpost.php index 1396f2a55..32d52c30c 100644 --- a/Zotlabs/Module/Rpost.php +++ b/Zotlabs/Module/Rpost.php @@ -7,7 +7,6 @@ require_once('include/items.php'); require_once('include/taxonomy.php'); require_once('include/conversation.php'); require_once('include/zot.php'); -require_once('include/PermissionDescription.php'); /** * remote post @@ -116,7 +115,7 @@ class Rpost extends \Zotlabs\Web\Controller { 'default_location' => $channel['channel_location'], 'nickname' => $channel['channel_address'], 'lockstate' => (($acl->is_private()) ? 'lock' : 'unlock'), - 'acl' => populate_acl($channel_acl, true, \PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), + 'acl' => populate_acl($channel_acl, true, Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), 'bang' => '', 'visitor' => true, 'profile_uid' => local_channel(), diff --git a/Zotlabs/Module/Settings.php b/Zotlabs/Module/Settings.php index 875004fae..af246a4dc 100644 --- a/Zotlabs/Module/Settings.php +++ b/Zotlabs/Module/Settings.php @@ -2,8 +2,6 @@ namespace Zotlabs\Module; /** @file */ require_once('include/zot.php'); -require_once('include/PermissionDescription.php'); - class Settings extends \Zotlabs\Web\Controller { @@ -1066,7 +1064,7 @@ class Settings extends \Zotlabs\Web\Controller { '$maxreq' => array('maxreq', t('Maximum Friend Requests/Day:'), intval($channel['channel_max_friend_req']) , t('May reduce spam activity')), '$permissions' => t('Default Post and Publish Permissions'), '$permdesc' => t("\x28click to open/close\x29"), - '$aclselect' => populate_acl($perm_defaults, false, \PermissionDescription::fromDescription(t('Use my default audience setting for the type of object published'))), + '$aclselect' => populate_acl($perm_defaults, false, \Zotlabs\Lib\PermissionDescription::fromDescription(t('Use my default audience setting for the type of object published'))), '$suggestme' => $suggestme, '$group_select' => $group_select, '$role' => array('permissions_role' , t('Channel permissions category:'), $permissions_role, '', get_roles()), diff --git a/Zotlabs/Module/Webpages.php b/Zotlabs/Module/Webpages.php index bb8d9c6ed..cc0a01cce 100644 --- a/Zotlabs/Module/Webpages.php +++ b/Zotlabs/Module/Webpages.php @@ -4,7 +4,6 @@ namespace Zotlabs\Module; require_once('include/channel.php'); require_once('include/conversation.php'); require_once('include/acl_selectors.php'); -require_once('include/PermissionDescription.php'); class Webpages extends \Zotlabs\Web\Controller { @@ -105,7 +104,7 @@ class Webpages extends \Zotlabs\Web\Controller { 'is_owner' => true, 'nickname' => \App::$profile['channel_address'], 'lockstate' => (($channel['channel_allow_cid'] || $channel['channel_allow_gid'] || $channel['channel_deny_cid'] || $channel['channel_deny_gid']) ? 'lock' : 'unlock'), - 'acl' => (($is_owner) ? populate_acl($channel_acl,false, \PermissionDescription::fromGlobalPermission('view_pages')) : ''), + 'acl' => (($is_owner) ? populate_acl($channel_acl,false, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_pages')) : ''), 'showacl' => (($is_owner) ? true : false), 'visitor' => true, 'hide_location' => true, diff --git a/include/acl_selectors.php b/include/acl_selectors.php index 89d054e3b..148c67a6c 100644 --- a/include/acl_selectors.php +++ b/include/acl_selectors.php @@ -7,8 +7,6 @@ * @package acl_selectors */ -require_once("include/PermissionDescription.php"); - function group_select($selname,$selclass,$preselected = false,$size = 4) { $o = ''; @@ -231,7 +229,7 @@ function populate_acl($defaults = null,$show_jotnets = true, $emptyACL_descripti if(! $emptyACL_description) { $showall_caption = t('Visible to your default audience'); - } else if (is_a($emptyACL_description, 'PermissionDescription')) { + } else if (is_a($emptyACL_description, '\\Zotlabs\\Lib\\PermissionDescription')) { $showall_caption = $emptyACL_description->get_permission_description(); $showall_origin = (($role === 'custom') ? $emptyACL_description->get_permission_origin_description() : ''); $showall_icon = $emptyACL_description->get_permission_icon(); From b6987b4287bb2492b8f4000bdef08b376aa5f265 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 12 Jul 2016 13:15:20 -0700 Subject: [PATCH 10/58] the abconfig defaults weren't changed in the schema files when they were changed in the code --- install/schema_mysql.sql | 2 +- install/schema_postgres.sql | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql index d2a5ac85e..b43ead050 100644 --- a/install/schema_mysql.sql +++ b/install/schema_mysql.sql @@ -1,7 +1,7 @@ CREATE TABLE IF NOT EXISTS `abconfig` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `chan` int(10) unsigned NOT NULL DEFAULT '', + `chan` int(10) unsigned NOT NULL DEFAULT '0', `xchan` char(255) NOT NULL DEFAULT '', `cat` char(255) NOT NULL DEFAULT '', `k` char(255) NOT NULL DEFAULT '', diff --git a/install/schema_postgres.sql b/install/schema_postgres.sql index 378308233..5080d7608 100644 --- a/install/schema_postgres.sql +++ b/install/schema_postgres.sql @@ -1,6 +1,6 @@ CREATE TABLE "abconfig" ( "id" serial NOT NULL, - "chan" bigint NOT NULL, + "chan" bigint NOT NULL DEFAULT '0', "xchan" text NOT NULL, "cat" text NOT NULL, "k" text NOT NULL, From 0fa807e7ad7340ae1a3de4c75bf5c2b1b9f863bc Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 12 Jul 2016 18:38:39 -0700 Subject: [PATCH 11/58] don't try to send sync packets to dead sites. --- include/zot.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/include/zot.php b/include/zot.php index 6dd789181..45347ef22 100644 --- a/include/zot.php +++ b/include/zot.php @@ -3014,7 +3014,12 @@ function build_sync_packet($uid = 0, $packet = null, $groups_changed = false) { if($x['hubloc_host'] == App::get_hostname()) continue; - $synchubs[] = $x; + $y = q("select site_dead from site where site_url = '%s' limit 1", + dbesc($x['hubloc_url']) + ); + + if((! $y) || ($y[0]['site_dead'] == 0)) + $synchubs[] = $x; } if(! $synchubs) From bdd7d24ac1ccf8f7c5b8939cf23a6a156da959c1 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 12 Jul 2016 19:08:36 -0700 Subject: [PATCH 12/58] update_remote_id - updated to work with iconfig --- include/items.php | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/include/items.php b/include/items.php index 72f0896ad..373090d41 100755 --- a/include/items.php +++ b/include/items.php @@ -4154,32 +4154,19 @@ function update_remote_id($channel,$post_id,$webpage,$pagetitle,$namespace,$remo } if($page_type) { - // store page info as an alternate message_id so we can access it via // https://sitename/page/$channelname/$pagetitle // if no pagetitle was given or it couldn't be transliterated into a url, use the first // sixteen bytes of the mid - which makes the link portable and not quite as daunting // as the entire mid. If it were the post_id the link would be less portable. - $r = q("select * from item_id where iid = %d and uid = %d and service = '%s' limit 1", + \Zotlabs\Lib\IConfig::Set( intval($post_id), - intval($channel['channel_id']), - dbesc($page_type) + 'system', + $page_type, + ($pagetitle) ? $pagetitle : substr($mid,0,16), + false ); - if($r) { - q("update item_id set sid = '%s' where id = %d", - dbesc(($pagetitle) ? $pagetitle : substr($mid,0,16)), - intval($r[0]['id']) - ); - } - else { - q("insert into item_id ( iid, uid, sid, service ) values ( %d, %d, '%s','%s' )", - intval($post_id), - intval($channel['channel_id']), - dbesc(($pagetitle) ? $pagetitle : substr($mid,0,16)), - dbesc($page_type) - ); - } } } From 18565600b2b9e36f1792bf29d5575f681fafc0b5 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 12 Jul 2016 22:58:12 -0700 Subject: [PATCH 13/58] missing namespace prefix \ --- Zotlabs/Module/Rpost.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Zotlabs/Module/Rpost.php b/Zotlabs/Module/Rpost.php index 32d52c30c..9e3043d10 100644 --- a/Zotlabs/Module/Rpost.php +++ b/Zotlabs/Module/Rpost.php @@ -115,7 +115,7 @@ class Rpost extends \Zotlabs\Web\Controller { 'default_location' => $channel['channel_location'], 'nickname' => $channel['channel_address'], 'lockstate' => (($acl->is_private()) ? 'lock' : 'unlock'), - 'acl' => populate_acl($channel_acl, true, Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), + 'acl' => populate_acl($channel_acl, true, \Zotlabs\Lib\PermissionDescription::fromGlobalPermission('view_stream'), get_post_aclDialogDescription(), 'acl_dialog_post'), 'bang' => '', 'visitor' => true, 'profile_uid' => local_channel(), From f60a0c5ce050febb0b200938eb51d88cf563b88f Mon Sep 17 00:00:00 2001 From: redmatrix Date: Wed, 13 Jul 2016 17:51:19 -0700 Subject: [PATCH 14/58] document mod_acl a bit better and try to remove some redundancies and consolidate the various options --- Zotlabs/Module/Acl.php | 82 +++++++++++++++++++++++++++++------------ view/js/autocomplete.js | 2 +- view/js/mod_mail.js | 2 +- view/js/mod_photos.js | 2 +- 4 files changed, 61 insertions(+), 27 deletions(-) diff --git a/Zotlabs/Module/Acl.php b/Zotlabs/Module/Acl.php index 2bc4ba62d..f33e257f4 100644 --- a/Zotlabs/Module/Acl.php +++ b/Zotlabs/Module/Acl.php @@ -1,7 +1,18 @@ standard ACL request + // 'g' => Groups only ACL request + // 'c' => Connections only ACL request or editor (textarea) mention request + // $_REQUEST['search'] contains ACL search text. + + + // $type = + // 'm' => autocomplete private mail recipient (checks post_mail permission) + // 'a' => autocomplete connections (mod_connections, mod_poke, mod_sources, mod_photos) + // 'x' => nav search bar autocomplete (match any xchan) + // $_REQUEST['query'] contains autocomplete search text. - // List of channels whose connections to also suggest, e.g. currently viewed channel or channels mentioned in a post + // List of channels whose connections to also suggest, + // e.g. currently viewed channel or channels mentioned in a post + $extra_channels = (x($_REQUEST,'extra_channels') ? $_REQUEST['extra_channels'] : array()); - // For use with jquery.autocomplete for private mail completion + // The different autocomplete libraries use different names for the search text + // parameter. Internaly we'll use $search to represent the search text no matter + // what request variable it was attached to. - if(x($_REQUEST,'query') && strlen($_REQUEST['query'])) { - if(! $type) - $type = 'm'; + if(array_key_exists('query',$_REQUEST)) { $search = $_REQUEST['query']; } - if(!(local_channel())) - if(!($type == 'x' || $type == 'c')) - killme(); + if( (! local_channel()) && (! ($type == 'x' || $type == 'c'))) + killme(); - if ($search != "") { + if($search) { $sql_extra = " AND `name` LIKE " . protect_sprintf( "'%" . dbesc($search) . "%'" ) . " "; $sql_extra2 = "AND ( xchan_name LIKE " . protect_sprintf( "'%" . dbesc($search) . "%'" ) . " OR xchan_addr LIKE " . protect_sprintf( "'%" . dbesc($search) . ((strpos($search,'@') === false) ? "%@%'" : "%'")) . ") "; - // This horrible mess is needed because position also returns 0 if nothing is found. W/ould be MUCH easier if it instead returned a very large value - // Otherwise we could just order by LEAST(POSITION($search IN xchan_name),POSITION($search IN xchan_addr)). - $order_extra2 = "CASE WHEN xchan_name LIKE " . protect_sprintf( "'%" . dbesc($search) . "%'" ) ." then POSITION('".dbesc($search)."' IN xchan_name) else position('".dbesc($search)."' IN xchan_addr) end, "; + // This horrible mess is needed because position also returns 0 if nothing is found. + // Would be MUCH easier if it instead returned a very large value + // Otherwise we could just + // order by LEAST(POSITION($search IN xchan_name),POSITION($search IN xchan_addr)). + + $order_extra2 = "CASE WHEN xchan_name LIKE " + . protect_sprintf( "'%" . dbesc($search) . "%'" ) + . " then POSITION('" . dbesc($search) + . "' IN xchan_name) else position('" . dbesc($search) . "' IN xchan_addr) end, "; + $col = ((strpos($search,'@') !== false) ? 'xchan_addr' : 'xchan_name' ); $sql_extra3 = "AND $col like " . protect_sprintf( "'%" . dbesc($search) . "%'" ) . " "; - } else { + } + else { $sql_extra = $sql_extra2 = $sql_extra3 = ""; } @@ -51,7 +85,7 @@ class Acl extends \Zotlabs\Web\Controller { $groups = array(); $contacts = array(); - if ($type=='' || $type=='g'){ + if($type == '' || $type == 'g') { $r = q("SELECT `groups`.`id`, `groups`.`hash`, `groups`.`gname` FROM `groups`,`group_member` @@ -82,7 +116,7 @@ class Acl extends \Zotlabs\Web\Controller { } } - if ($type=='' || $type=='c') { + if($type == '' || $type == 'c') { $extra_channels_sql = ''; // Only include channels who allow the observer to view their permissions foreach($extra_channels as $channel) { @@ -171,7 +205,7 @@ class Acl extends \Zotlabs\Web\Controller { intval(PERMS_W_MAIL) ); } - elseif(($type == 'a') || ($type == 'p')) { + elseif($type == 'a') { $r = q("SELECT abook_id as id, xchan_name as name, xchan_hash as hash, xchan_addr as nick, xchan_photo_s as micro, xchan_network as network, xchan_url as url, xchan_addr as attag , abook_their_perms FROM abook left join xchan on abook_xchan = xchan_hash WHERE abook_channel = %d @@ -296,7 +330,7 @@ class Acl extends \Zotlabs\Web\Controller { $url = $directory['url'] . '/dirsearch'; } - $count = (x($_REQUEST,'count')?$_REQUEST['count']:100); + $count = (x($_REQUEST,'count') ? $_REQUEST['count'] : 100); if($url) { $query = $url . '?f=' ; $query .= '&name=' . urlencode($search) . "&limit=$count" . (($address) ? '&address=' . urlencode($search) : ''); diff --git a/view/js/autocomplete.js b/view/js/autocomplete.js index 59a9ed355..63f1e9a13 100644 --- a/view/js/autocomplete.js +++ b/view/js/autocomplete.js @@ -1,5 +1,5 @@ /** - * Red people autocomplete + * general autocomplete support * * require jQuery, jquery.textcomplete */ diff --git a/view/js/mod_mail.js b/view/js/mod_mail.js index 3e55c8aeb..46574a63d 100644 --- a/view/js/mod_mail.js +++ b/view/js/mod_mail.js @@ -1,5 +1,5 @@ $(document).ready(function() { - $("#recip").name_autocomplete(baseurl + '/acl', '', false, function(data) { + $("#recip").name_autocomplete(baseurl + '/acl', 'm', false, function(data) { $("#recip-complete").val(data.xid); }); $(".autotime").timeago() diff --git a/view/js/mod_photos.js b/view/js/mod_photos.js index 006be5f23..e3df3ca68 100644 --- a/view/js/mod_photos.js +++ b/view/js/mod_photos.js @@ -3,7 +3,7 @@ */ $(document).ready(function() { - $("#photo-edit-newtag").contact_autocomplete(baseurl + '/acl', 'p', false, function(data) { + $("#photo-edit-newtag").contact_autocomplete(baseurl + '/acl', 'a', false, function(data) { $("#photo-edit-newtag").val('@' + data.name); }); From 00afe56cadbf72bd76efceb0663291d7f88a93fc Mon Sep 17 00:00:00 2001 From: redmatrix Date: Wed, 13 Jul 2016 20:17:40 -0700 Subject: [PATCH 15/58] let abconfig specify a family --- Zotlabs/Lib/AbConfig.php | 6 ++++-- include/config.php | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Zotlabs/Lib/AbConfig.php b/Zotlabs/Lib/AbConfig.php index 138d0dfea..cab59abbd 100644 --- a/Zotlabs/Lib/AbConfig.php +++ b/Zotlabs/Lib/AbConfig.php @@ -5,8 +5,10 @@ namespace Zotlabs\Lib; class AbConfig { - static public function Load($chan,$xhash) { - $r = q("select * from abconfig where chan = %d and xchan = '%s'", + static public function Load($chan,$xhash,$family = '') { + if($family) + $where = sprintf(" and family = '%s' ",dbesc($family)); + $r = q("select * from abconfig where chan = %d and xchan = '%s' $where", intval($chan), dbesc($xhash) ); diff --git a/include/config.php b/include/config.php index ece22793f..08810e298 100644 --- a/include/config.php +++ b/include/config.php @@ -98,8 +98,8 @@ function del_aconfig($account_id, $family, $key) { } -function load_abconfig($chan,$xhash) { - Zlib\AbConfig::Load($chan,$xhash); +function load_abconfig($chan, $xhash, $family = '') { + return Zlib\AbConfig::Load($chan,$xhash,$family); } function get_abconfig($chan,$xhash,$family,$key) { From 115ef3249cb9b724fecb03ff043af34458587be0 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 17:45:09 -0700 Subject: [PATCH 16/58] who are we --- README.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/README.md b/README.md index 8a6c003fc..fc19e26fc 100644 --- a/README.md +++ b/README.md @@ -47,4 +47,16 @@ Possible website applications include Installing Hubzilla

+** Who Are We and What Are Our Principles? ** + +The Hubzilla community is powered by passionate volunteers creating an open source **commons** of decentralised services which are highly integrated and can rival the feature set of centralised providers. We are open to sponsorship and donations to cover expenses and compensate for our time and energy, however the project core is basically non-profit and is not designed for the purpose of commercial gain or exploitation. + +Some sites may include monetisation strategies such as subscriptions and *freemium* models where members pay for resources they consume beyond a basic level. The project community supports such monetisation initiatives (nobody should be forced to pay "out of pocket" to provide a service to others), but we maintain the **commons** to provide open and free access of the software to all. + +The software is not designed for data collection of its members or providing advertising. We don't have a need or desire for these things and feel that software built around these goals is poorly designed and represents compromised principles and ethics. + +As a project, we are inclusive of all beliefs and cultures and do what we are able to provide an environment that is free from hostility and harrassment. Whether or not we succeed in this endaevour requires constant vigilance and help from all members of the community, working together to build an inter-networking tool with amazing potential. + + + [![Build Status](https://travis-ci.org/redmatrix/hubzilla.svg)](https://travis-ci.org/redmatrix/hubzilla) From 05a9f2f0f58b9ca84e3a286a6126baf9455f947b Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 17:46:21 -0700 Subject: [PATCH 17/58] markdown is whitespace sensitive --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index fc19e26fc..9929f6a16 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ Possible website applications include Installing Hubzilla

-** Who Are We and What Are Our Principles? ** +**Who Are We and What Are Our Principles?** The Hubzilla community is powered by passionate volunteers creating an open source **commons** of decentralised services which are highly integrated and can rival the feature set of centralised providers. We are open to sponsorship and donations to cover expenses and compensate for our time and energy, however the project core is basically non-profit and is not designed for the purpose of commercial gain or exploitation. From e6c861480138ba871907ed6994d0fb840fd0e77f Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 19:24:15 -0700 Subject: [PATCH 18/58] first cut at zot access tokens --- include/auth.php | 72 ++++++++++++++++++++++++++++++-------------- include/security.php | 33 ++++++++++++++++++++ 2 files changed, 83 insertions(+), 22 deletions(-) diff --git a/include/auth.php b/include/auth.php index 01fcf0094..79d04c728 100644 --- a/include/auth.php +++ b/include/auth.php @@ -36,22 +36,33 @@ function account_verify_password($email, $pass) { // you have to verify the email and then go through the account approval workflow before // letting them login. - if(($email_verify) && ($register_policy == REGISTER_OPEN) && ($record['account_flags'] & ACCOUNT_UNVERIFIED)) - return null; + // @bug there is no record here + //if(($email_verify) && ($register_policy == REGISTER_OPEN) && ($record['account_flags'] & ACCOUNT_UNVERIFIED)) + // return null; $r = q("select * from account where account_email = '%s'", dbesc($email) ); - if(! ($r && count($r))) - return null; + if($r) { - foreach($r as $record) { - if(($record['account_flags'] == ACCOUNT_OK) - && (hash('whirlpool', $record['account_salt'] . $pass) === $record['account_password'])) { - logger('password verified for ' . $email); - return $record; + foreach($r as $record) { + if(($record['account_flags'] == ACCOUNT_OK) + && (hash('whirlpool', $record['account_salt'] . $pass) === $record['account_password'])) { + logger('password verified for ' . $email); + return $record; + } } } + + $x = q("select * from atoken where atoken_name = '%s' and atoken_token = '%s' limit 1", + dbesc($email), + dbesc($pass) + ); + if($x) { + atoken_login($x[0]); + return $x[0]; + } + $error = 'password failed for ' . $email; logger($error); @@ -123,10 +134,18 @@ if((isset($_SESSION)) && (x($_SESSION, 'authenticated')) && authenticate_success($x[0], true, true); } } - - $r = q("select * from xchan left join hubloc on xchan_hash = hubloc_hash where xchan_hash = '%s' limit 1", - dbesc($_SESSION['visitor_id']) - ); + if(array_key_exists('atoken',$_SESSION)) { + $y = q("select * from atoken where atoken_id = %d limit 1", + intval($_SESSION['atoken']) + ); + if($y) + $r = array(atoken_xchan($y[0])); + } + else { + $r = q("select * from xchan left join hubloc on xchan_hash = hubloc_hash where xchan_hash = '%s' limit 1", + dbesc($_SESSION['visitor_id']) + ); + } if($r) { App::set_observer($r[0]); } @@ -199,20 +218,27 @@ else { call_hooks('authenticate', $addon_auth); + $atoken = false; + if(($addon_auth['authenticated']) && (count($addon_auth['user_record']))) { $record = $addon_auth['user_record']; } else { - $record = App::$account = account_verify_password($_POST['username'], $_POST['password']); + $x = account_verify_password($_POST['username'], $_POST['password']); + if(array_key_exists('atoken',$x)) + $atoken = true; + if(! $atoken) { + $record = App::$account = $x; - if(App::$account) { - $_SESSION['account_id'] = App::$account['account_id']; - } - else { - notice( t('Failed authentication') . EOL); - } + if(App::$account) { + $_SESSION['account_id'] = App::$account['account_id']; + } + else { + notice( t('Failed authentication') . EOL); + } - logger('authenticate: ' . print_r(App::$account, true), LOGGER_ALL); + logger('authenticate: ' . print_r(App::$account, true), LOGGER_ALL); + } } if((! $record) || (! count($record))) { @@ -252,7 +278,8 @@ else { // if we haven't failed up this point, log them in. $_SESSION['last_login_date'] = datetime_convert(); - authenticate_success($record, true, true); + if(! $atoken) + authenticate_success($record, true, true); } } @@ -270,6 +297,7 @@ else { * @return int|bool * Return channel_id from pconfig or false. */ + function match_openid($authid) { // Query the uid/channel_id from pconfig for a given value. $r = q("SELECT uid FROM pconfig WHERE cat = 'system' AND k = 'openid' AND v = '%s' LIMIT 1", diff --git a/include/security.php b/include/security.php index 212690d91..55e9d906f 100644 --- a/include/security.php +++ b/include/security.php @@ -82,6 +82,39 @@ function authenticate_success($user_record, $login_initial = false, $interactive /* else just return */ } +function atoken_login($atoken) { + if(! $atoken) + return false; + + $xchan = atoken_xchan($atoken); + + $_SESSION['authenticated'] = 1; + $_SESSION['visitor_id'] = $xchan['xchan_hash']; + $_SESSION['atoken'] = $atoken['atoken_id']; + + \App::set_observer($xchan); + + return [ 'atoken' => true ]; +} + + +function atoken_xchan($atoken) { + + return [ + 'xchan_hash' => $atoken['atoken_uid'] . '.' . $atoken['atoken_name'], + 'xchan_network' => 'unknown', + 'xchan_hidden' => 1, + 'xchan_photo_mimetype' => 'image/jpeg', + 'xchan_photo_l' => get_default_profile_photo(300), + 'xchan_photo_m' => get_default_profile_photo(80), + 'xchan_photo_s' => get_default_profile_photo(48) + + ]; + +} + + + /** * @brief Change to another channel with current logged-in account. * From f3eb9af046b155c53a194db6104a24b6d6756072 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 19:43:47 -0700 Subject: [PATCH 19/58] more ZAT work --- Zotlabs/Web/WebServer.php | 9 ++++++++- include/channel.php | 25 +++++++++++++++++++++++-- include/security.php | 2 ++ include/text.php | 4 ++++ 4 files changed, 37 insertions(+), 3 deletions(-) diff --git a/Zotlabs/Web/WebServer.php b/Zotlabs/Web/WebServer.php index 88ab4995b..d4f3cb9ea 100644 --- a/Zotlabs/Web/WebServer.php +++ b/Zotlabs/Web/WebServer.php @@ -59,7 +59,14 @@ class WebServer { \App::$query_string = strip_zids(\App::$query_string); if(! local_channel()) { $_SESSION['my_address'] = $_GET['zid']; - zid_init($a); + zid_init(); + } + } + + if((x($_GET,'zat')) && (! \App::$install)) { + \App::$query_string = strip_zats(\App::$query_string); + if(! local_channel()) { + zat_init(); } } diff --git a/include/channel.php b/include/channel.php index 95506ed78..1a6508803 100644 --- a/include/channel.php +++ b/include/channel.php @@ -1310,13 +1310,12 @@ function get_my_address() { * If somebody arrives at our site using a zid, add their xchan to our DB if we don't have it already. * And if they aren't already authenticated here, attempt reverse magic auth. * - * @param App &$a * * @hooks 'zid_init' * string 'zid' - their zid * string 'url' - the destination url */ -function zid_init(&$a) { +function zid_init() { $tmp_str = get_my_address(); if(validate_email($tmp_str)) { Zotlabs\Daemon\Master::Summon(array('Gprobe',bin2hex($tmp_str))); @@ -1342,6 +1341,28 @@ function zid_init(&$a) { } } +/** + * @brief + * + * If somebody arrives at our site using a zat, authenticate them + * + */ + +function zat_init() { + if(local_channel() || remote_channel()) + return; + + $r = q("select * from atoken where atoken_token = '%s' limit 1", + dbesc($_REQUEST['zat']) + ); + if($r) { + atoken_login($r[0]); + } + +} + + + /** * @brief Adds a zid parameter to a url. * diff --git a/include/security.php b/include/security.php index 55e9d906f..c2515a6e1 100644 --- a/include/security.php +++ b/include/security.php @@ -102,6 +102,8 @@ function atoken_xchan($atoken) { return [ 'xchan_hash' => $atoken['atoken_uid'] . '.' . $atoken['atoken_name'], + 'xchan_name' => $atoken['atoken_name'], + 'xchan_addr' => t('guest:') . $atoken['atoken_name'] . '@' . \App::get_hostname(), 'xchan_network' => 'unknown', 'xchan_hidden' => 1, 'xchan_photo_mimetype' => 'image/jpeg', diff --git a/include/text.php b/include/text.php index 986e3b56c..0b4f039af 100644 --- a/include/text.php +++ b/include/text.php @@ -774,6 +774,10 @@ function strip_zids($s) { return preg_replace('/[\?&]zid=(.*?)(&|$)/ism','$2',$s); } +function strip_zats($s) { + return preg_replace('/[\?&]zat=(.*?)(&|$)/ism','$2',$s); +} + // quick and dirty quoted_printable encoding From f70f4a4e8558a6d715eb7ca0d02ac38753094068 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 20:26:22 -0700 Subject: [PATCH 20/58] add zat to acl --- Zotlabs/Module/Acl.php | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/Zotlabs/Module/Acl.php b/Zotlabs/Module/Acl.php index f33e257f4..c8a4fdd7c 100644 --- a/Zotlabs/Module/Acl.php +++ b/Zotlabs/Module/Acl.php @@ -130,13 +130,38 @@ class Acl extends \Zotlabs\Web\Controller { if(local_channel()) { if($extra_channels_sql != '') $extra_channels_sql = " OR (abook_channel IN ($extra_channels_sql)) and abook_hidden = 0 "; + + $r2 = null; + + $r1 = q("select * from atoken where atoken_uid = %d", + intval(local_channel()) + ); + if($r1) { + $r2 = array(); + foreach($r1 as $rr) { + $r2[] = [ + 'id' => 'a' . $rr['atoken_id'] , + 'hash' => $rr['atoken_uid'] . '.' . $rr['atoken_name'], + 'name' => $rr['atoken_name'], + 'micro' => get_default_profile_photo(48), + 'url' => z_root(), + 'nick' => t('guest:') . $rr['atoken_name'], + 'abook_their_perms' => 0, + 'abook_flags' => 0, + 'abook_self' => 0 + ]; + } + } + $r = q("SELECT abook_id as id, xchan_hash as hash, xchan_name as name, xchan_photo_s as micro, xchan_url as url, xchan_addr as nick, abook_their_perms, abook_flags, abook_self FROM abook left join xchan on abook_xchan = xchan_hash WHERE (abook_channel = %d $extra_channels_sql) AND abook_blocked = 0 and abook_pending = 0 and xchan_deleted = 0 $sql_extra2 order by $order_extra2 xchan_name asc" , intval(local_channel()) ); - + if($r2) + $r = array_merge($r2,$r); + } else { // Visitors $r = q("SELECT xchan_hash as id, xchan_hash as hash, xchan_name as name, xchan_photo_s as micro, xchan_url as url, xchan_addr as nick, 0 as abook_their_perms, 0 as abook_flags, 0 as abook_self From 94bd53c0f1faa333991786684028e347ab17cfb9 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 20:51:15 -0700 Subject: [PATCH 21/58] schema updates for zot access tokens --- boot.php | 2 +- install/schema_mysql.sql | 17 ++++++++++++++ install/schema_postgres.sql | 15 +++++++++++++ install/update.php | 45 ++++++++++++++++++++++++++++++++++++- 4 files changed, 77 insertions(+), 2 deletions(-) diff --git a/boot.php b/boot.php index bad3b2e5d..6abc4137e 100755 --- a/boot.php +++ b/boot.php @@ -47,7 +47,7 @@ define ( 'PLATFORM_NAME', 'hubzilla' ); define ( 'STD_VERSION', '1.9' ); define ( 'ZOT_REVISION', '1.1' ); -define ( 'DB_UPDATE_VERSION', 1179 ); +define ( 'DB_UPDATE_VERSION', 1180 ); /** diff --git a/install/schema_mysql.sql b/install/schema_mysql.sql index b43ead050..5335c231e 100644 --- a/install/schema_mysql.sql +++ b/install/schema_mysql.sql @@ -141,6 +141,23 @@ CREATE TABLE IF NOT EXISTS `app` ( KEY `app_edited` (`app_edited`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `atoken` ( + `atoken_id` int(11) NOT NULL AUTO_INCREMENT, + `atoken_aid` int(11) NOT NULL DEFAULT 0, + `atoken_uid` int(11) NOT NULL DEFAULT 0, + `atoken_name` char(255) NOT NULL DEFAULT '', + `atoken_token` char(255) NOT NULL DEFAULT '', + `atoken_expires` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', + PRIMARY KEY (`atoken_id`), + KEY `atoken_aid` (`atoken_aid`), + KEY `atoken_uid` (`atoken_uid`), + KEY `atoken_uid_2` (`atoken_uid`), + KEY `atoken_name` (`atoken_name`), + KEY `atoken_token` (`atoken_token`), + KEY `atoken_expires` (`atoken_expires`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + CREATE TABLE IF NOT EXISTS `attach` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `aid` int(10) unsigned NOT NULL DEFAULT '0', diff --git a/install/schema_postgres.sql b/install/schema_postgres.sql index 5080d7608..1a770d4ff 100644 --- a/install/schema_postgres.sql +++ b/install/schema_postgres.sql @@ -137,6 +137,21 @@ create index "app_created" on app ("app_created"); create index "app_edited" on app ("app_edited"); create index "app_deleted" on app ("app_deleted"); create index "app_system" on app ("app_system"); + +CREATE TABLE "atoken" ( + "atoken_id" serial NOT NULL, + "atoken_aid" bigint NOT NULL DEFAULT 0, + "atoken_uid" bigint NOT NULL DEFAULT 0, + "atoken_name" varchar(255) NOT NULL DEFAULT '', + "atoken_token" varchar(255) NOT NULL DEFAULT '', + "atoken_expires" timestamp NOT NULL DEFAULT '0001-01-01 00:00:00', + PRIMARY KEY ("atoken_id")); +create index atoken_aid on atoken (atoken_aid); +create index atoken_uid on atoken (atoken_uid); +create index atoken_name on atoken (atoken_name); +create index atoken_token on atoken (atoken_token); +create index atoken_expires on atoken (atoken_expires); + CREATE TABLE "attach" ( "id" serial NOT NULL, "aid" bigint NOT NULL DEFAULT '0', diff --git a/install/update.php b/install/update.php index 3cb5010eb..6ca9ec6a4 100644 --- a/install/update.php +++ b/install/update.php @@ -1,6 +1,6 @@ Date: Thu, 14 Jul 2016 20:53:38 -0700 Subject: [PATCH 22/58] missing brace --- install/update.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/update.php b/install/update.php index 6ca9ec6a4..f2d97430b 100644 --- a/install/update.php +++ b/install/update.php @@ -2397,7 +2397,7 @@ function update_r1179() { KEY `atoken_token` (`atoken_token`), KEY `atoken_expires` (`atoken_expires`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 "); - + } if($r) return UPDATE_SUCCESS; return UPDATE_FAILED; From 397a23499dc64e2abdd2c27ccdf7e059a23dcfff Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 21:28:17 -0700 Subject: [PATCH 23/58] make the xchan_hash for the access token location independent --- Zotlabs/Module/Acl.php | 10 ++++++---- include/security.php | 27 +++++++++++++++------------ 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/Zotlabs/Module/Acl.php b/Zotlabs/Module/Acl.php index c8a4fdd7c..15609c3c8 100644 --- a/Zotlabs/Module/Acl.php +++ b/Zotlabs/Module/Acl.php @@ -137,15 +137,17 @@ class Acl extends \Zotlabs\Web\Controller { intval(local_channel()) ); if($r1) { + require_once('include/security.php'); $r2 = array(); foreach($r1 as $rr) { + $x = atoken_xchan($rr); $r2[] = [ 'id' => 'a' . $rr['atoken_id'] , - 'hash' => $rr['atoken_uid'] . '.' . $rr['atoken_name'], - 'name' => $rr['atoken_name'], - 'micro' => get_default_profile_photo(48), + 'hash' => $x['xchan_hash'], + 'name' => $x['xchan_name'], + 'micro' => $x['xchan_photo_m'], 'url' => z_root(), - 'nick' => t('guest:') . $rr['atoken_name'], + 'nick' => $x['xchan_addr'], 'abook_their_perms' => 0, 'abook_flags' => 0, 'abook_self' => 0 diff --git a/include/security.php b/include/security.php index c2515a6e1..e345636e7 100644 --- a/include/security.php +++ b/include/security.php @@ -100,18 +100,21 @@ function atoken_login($atoken) { function atoken_xchan($atoken) { - return [ - 'xchan_hash' => $atoken['atoken_uid'] . '.' . $atoken['atoken_name'], - 'xchan_name' => $atoken['atoken_name'], - 'xchan_addr' => t('guest:') . $atoken['atoken_name'] . '@' . \App::get_hostname(), - 'xchan_network' => 'unknown', - 'xchan_hidden' => 1, - 'xchan_photo_mimetype' => 'image/jpeg', - 'xchan_photo_l' => get_default_profile_photo(300), - 'xchan_photo_m' => get_default_profile_photo(80), - 'xchan_photo_s' => get_default_profile_photo(48) - - ]; + $c = channelx_by_n($atoken['atoken_uid']); + if($c) { + return [ + 'xchan_hash' => substr($c['channel_hash'],0,16) . '.' . $atoken['atoken_name'], + 'xchan_name' => $atoken['atoken_name'], + 'xchan_addr' => t('guest:') . $atoken['atoken_name'] . '@' . \App::get_hostname(), + 'xchan_network' => 'unknown', + 'xchan_hidden' => 1, + 'xchan_photo_mimetype' => 'image/jpeg', + 'xchan_photo_l' => get_default_profile_photo(300), + 'xchan_photo_m' => get_default_profile_photo(80), + 'xchan_photo_s' => get_default_profile_photo(48) + + ]; + } } From 7ee7f00bf34b11d0427f03df9494088cf56ef9ee Mon Sep 17 00:00:00 2001 From: redmatrix Date: Thu, 14 Jul 2016 22:41:53 -0700 Subject: [PATCH 24/58] Here's the basic UI for the Zot Access Tokens, requires some minor cleanup --- Zotlabs/Module/Settings.php | 78 +++++++++++++++++++++++++++++++++++- include/widgets.php | 9 +++++ view/tpl/settings_tokens.tpl | 28 +++++++++++++ 3 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 view/tpl/settings_tokens.tpl diff --git a/Zotlabs/Module/Settings.php b/Zotlabs/Module/Settings.php index af246a4dc..60c9be519 100644 --- a/Zotlabs/Module/Settings.php +++ b/Zotlabs/Module/Settings.php @@ -28,7 +28,7 @@ class Settings extends \Zotlabs\Web\Controller { } - function post() { + function post() { if(! local_channel()) return; @@ -117,6 +117,43 @@ class Settings extends \Zotlabs\Web\Controller { build_sync_packet(); return; } + + + if((argc() > 1) && (argv(1) == 'tokens')) { + check_form_security_token_redirectOnErr('/settings/tokens', 'settings_tokens'); + + $atoken_id = (($_POST['atoken_id']) ? intval($_POST['atoken_id']) : 0); + $name = trim(escape_tags($_POST['name'])); + $token = trim($_POST['token']); + if(trim($_POST['expires'])) + $expires = datetime_convert(date_default_timezone_get(),'UTC',$_POST['expires']); + else + $expires = NULL_DATE; + + if($atoken_id) { + $r = q("update atoken set atoken_name = '%s', atoken_token = '%s' atoken_expire = '%s' + where atoken_id = %d and atoken_uid = %d", + dbesc($name), + dbesc($token), + dbesc($expires), + intval($atoken_id), + intval($channel['channel_id']) + ); + } + else { + $r = q("insert into atoken ( atoken_aid, atoken_uid, atoken_name, atoken_token, atoken_expire ) + values ( %d, %d, '%s', '%s', '%s' ) ", + intval($channel['channel_account_id']), + intval($channel['channel_id']), + dbesc($name), + dbesc($token), + dbesc($expires) + ); + } + + info( t('Token saved.') . EOL); + return; + } @@ -706,6 +743,45 @@ class Settings extends \Zotlabs\Web\Controller { )); return $o; } + + if((argc() > 1) && (argv(1) === 'tokens')) { + $atoken = null; + if(argc() > 2) { + $id = argv(2); + + $atoken = q("select * from atoken where atoken_id = %d and atoken_uid = %d", + intval($id), + intval(local_channel()) + ); + + if($atoken) + $atoken = $atoken[0]; + + if($atoken && argc() > 3 && argv(3) === 'drop') { + $r = q("delete from atoken where atoken_id = %d", + intval($id) + ); + } + } + $t = q("select * from atoken where atoken_uid = %d", + intval(local_channel()) + ); + + $tpl = get_markup_template("settings_tokens.tpl"); + $o .= replace_macros($tpl, array( + '$form_security_token' => get_form_security_token("settings_tokens"), + '$title' => t('Guest Access Tokens'), + '$tokens' => $t, + '$atoken' => $atoken, + '$name' => array('name', t('Login Name'), (($atoken) ? $atoken['atoken_name'] : ''),''), + '$token'=> array('token', t('Login Password'),(($atoken) ? $atoken['atoken_token'] : autoname(8)), ''), + '$expires'=> array('expires', t('Expires (yyyy-mm-dd)'), (($atoken['atoken_expires'] && $atoken['atoken_expires'] != NULL_DATE) ? datetime_convert('UTC',date_default_timezone_get(),$atoken['atoken_expires']) : ''), ''), + '$submit' => t('Submit') + )); + return $o; + } + + diff --git a/include/widgets.php b/include/widgets.php index 2d4d5b799..da73657f5 100644 --- a/include/widgets.php +++ b/include/widgets.php @@ -609,6 +609,15 @@ function widget_settings_menu($arr) { 'selected' => ((argv(1) === 'oauth') ? 'active' : ''), ); + if(! UNO) { + $tabs[] = array( + 'label' => t('Guest Access Tokens'), + 'url' => z_root() . '/settings/tokens', + 'selected' => ((argv(1) === 'tokens') ? 'active' : ''), + ); + } + + if($role === false || $role === 'custom') { $tabs[] = array( 'label' => t('Connection Default Permissions'), diff --git a/view/tpl/settings_tokens.tpl b/view/tpl/settings_tokens.tpl new file mode 100644 index 000000000..8763a681c --- /dev/null +++ b/view/tpl/settings_tokens.tpl @@ -0,0 +1,28 @@ +
+
+

{{$title}}

+
+
+
+ + {{if $atoken}}{{/if}} +
+ {{include file="field_input.tpl" field=$name}} + {{include file="field_input.tpl" field=$token}} + {{include file="field_input.tpl" field=$expires}} +
+ +
+
+
+ {{if $tokens}} +
+ +
+ {{/if}} + +
From f666d8a0838efec0e05fcd9ea884eb6733cea3a8 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Fri, 15 Jul 2016 01:06:25 -0700 Subject: [PATCH 25/58] enforce non-empty name and token/password on access tokens until better checks are instituted. --- Zotlabs/Module/Settings.php | 25 +- util/hmessages.po | 4231 ++++++++++++++++++----------------- 2 files changed, 2140 insertions(+), 2116 deletions(-) diff --git a/Zotlabs/Module/Settings.php b/Zotlabs/Module/Settings.php index 60c9be519..b1f6c8144 100644 --- a/Zotlabs/Module/Settings.php +++ b/Zotlabs/Module/Settings.php @@ -121,15 +121,22 @@ class Settings extends \Zotlabs\Web\Controller { if((argc() > 1) && (argv(1) == 'tokens')) { check_form_security_token_redirectOnErr('/settings/tokens', 'settings_tokens'); - - $atoken_id = (($_POST['atoken_id']) ? intval($_POST['atoken_id']) : 0); - $name = trim(escape_tags($_POST['name'])); - $token = trim($_POST['token']); - if(trim($_POST['expires'])) - $expires = datetime_convert(date_default_timezone_get(),'UTC',$_POST['expires']); - else - $expires = NULL_DATE; - + $token_errs = 0; + if(array_key_exists('token',$_POST)) { + $atoken_id = (($_POST['atoken_id']) ? intval($_POST['atoken_id']) : 0); + $name = trim(escape_tags($_POST['name'])); + $token = trim($_POST['token']); + if((! $name) || (! $token)) + $token_errs ++; + if(trim($_POST['expires'])) + $expires = datetime_convert(date_default_timezone_get(),'UTC',$_POST['expires']); + else + $expires = NULL_DATE; + } + if($token_errs) { + notice( t('Name and Token are required.') . EOL); + return; + } if($atoken_id) { $r = q("update atoken set atoken_name = '%s', atoken_token = '%s' atoken_expire = '%s' where atoken_id = %d and atoken_uid = %d", diff --git a/util/hmessages.po b/util/hmessages.po index 8ab5226e5..b076aadf8 100644 --- a/util/hmessages.po +++ b/util/hmessages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-07-08 00:02-0700\n" +"POT-Creation-Date: 2016-07-15 00:02-0700\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -21,7 +21,7 @@ msgstr "" msgid "parent" msgstr "" -#: ../../Zotlabs/Storage/Browser.php:131 ../../include/text.php:2609 +#: ../../Zotlabs/Storage/Browser.php:131 ../../include/text.php:2613 msgid "Collection" msgstr "" @@ -45,17 +45,17 @@ msgstr "" msgid "Schedule Outbox" msgstr "" -#: ../../Zotlabs/Storage/Browser.php:164 ../../Zotlabs/Module/Photos.php:798 -#: ../../Zotlabs/Module/Photos.php:1243 +#: ../../Zotlabs/Storage/Browser.php:164 ../../Zotlabs/Module/Photos.php:796 +#: ../../Zotlabs/Module/Photos.php:1241 #: ../../Zotlabs/Module/Embedphotos.php:147 ../../Zotlabs/Lib/Apps.php:490 -#: ../../Zotlabs/Lib/Apps.php:565 ../../include/conversation.php:1035 -#: ../../include/widgets.php:1563 +#: ../../Zotlabs/Lib/Apps.php:565 ../../include/widgets.php:1594 +#: ../../include/conversation.php:1035 msgid "Unknown" msgstr "" #: ../../Zotlabs/Storage/Browser.php:226 ../../Zotlabs/Module/Fbrowser.php:85 -#: ../../Zotlabs/Lib/Apps.php:217 ../../include/conversation.php:1654 -#: ../../include/nav.php:93 +#: ../../Zotlabs/Lib/Apps.php:217 ../../include/nav.php:93 +#: ../../include/conversation.php:1654 msgid "Files" msgstr "" @@ -70,21 +70,21 @@ msgstr "" #: ../../Zotlabs/Storage/Browser.php:230 ../../Zotlabs/Storage/Browser.php:306 #: ../../Zotlabs/Module/Layouts.php:184 ../../Zotlabs/Module/Menu.php:118 #: ../../Zotlabs/Module/New_channel.php:142 -#: ../../Zotlabs/Module/Blocks.php:159 ../../Zotlabs/Module/Webpages.php:194 +#: ../../Zotlabs/Module/Blocks.php:159 ../../Zotlabs/Module/Webpages.php:193 msgid "Create" msgstr "" #: ../../Zotlabs/Storage/Browser.php:231 ../../Zotlabs/Storage/Browser.php:308 #: ../../Zotlabs/Module/Cover_photo.php:357 -#: ../../Zotlabs/Module/Photos.php:825 ../../Zotlabs/Module/Photos.php:1364 +#: ../../Zotlabs/Module/Photos.php:823 ../../Zotlabs/Module/Photos.php:1362 #: ../../Zotlabs/Module/Profile_photo.php:390 -#: ../../Zotlabs/Module/Embedphotos.php:159 ../../include/widgets.php:1576 +#: ../../Zotlabs/Module/Embedphotos.php:159 ../../include/widgets.php:1607 msgid "Upload" msgstr "" #: ../../Zotlabs/Storage/Browser.php:235 ../../Zotlabs/Module/Chat.php:247 -#: ../../Zotlabs/Module/Admin.php:1223 ../../Zotlabs/Module/Settings.php:592 -#: ../../Zotlabs/Module/Settings.php:618 +#: ../../Zotlabs/Module/Admin.php:1223 ../../Zotlabs/Module/Settings.php:627 +#: ../../Zotlabs/Module/Settings.php:653 #: ../../Zotlabs/Module/Sharedwithme.php:99 msgid "Name" msgstr "" @@ -94,7 +94,7 @@ msgid "Type" msgstr "" #: ../../Zotlabs/Storage/Browser.php:237 -#: ../../Zotlabs/Module/Sharedwithme.php:101 ../../include/text.php:1320 +#: ../../Zotlabs/Module/Sharedwithme.php:101 ../../include/text.php:1324 msgid "Size" msgstr "" @@ -107,27 +107,27 @@ msgstr "" #: ../../Zotlabs/Module/Connections.php:290 #: ../../Zotlabs/Module/Connections.php:310 #: ../../Zotlabs/Module/Editlayout.php:114 -#: ../../Zotlabs/Module/Editwebpage.php:146 +#: ../../Zotlabs/Module/Editwebpage.php:145 #: ../../Zotlabs/Module/Layouts.php:192 ../../Zotlabs/Module/Menu.php:112 #: ../../Zotlabs/Module/Admin.php:2113 ../../Zotlabs/Module/Blocks.php:160 #: ../../Zotlabs/Module/Editblock.php:109 -#: ../../Zotlabs/Module/Settings.php:652 ../../Zotlabs/Module/Thing.php:260 -#: ../../Zotlabs/Module/Webpages.php:195 ../../Zotlabs/Lib/Apps.php:341 +#: ../../Zotlabs/Module/Settings.php:687 ../../Zotlabs/Module/Thing.php:260 +#: ../../Zotlabs/Module/Webpages.php:194 ../../Zotlabs/Lib/Apps.php:341 #: ../../Zotlabs/Lib/ThreadItem.php:106 ../../include/page_widgets.php:9 -#: ../../include/page_widgets.php:39 ../../include/menu.php:108 -#: ../../include/channel.php:961 ../../include/channel.php:965 +#: ../../include/page_widgets.php:39 ../../include/channel.php:961 +#: ../../include/channel.php:965 ../../include/menu.php:108 msgid "Edit" msgstr "" #: ../../Zotlabs/Storage/Browser.php:241 ../../Zotlabs/Module/Connedit.php:578 #: ../../Zotlabs/Module/Connections.php:263 #: ../../Zotlabs/Module/Editlayout.php:137 -#: ../../Zotlabs/Module/Editwebpage.php:170 ../../Zotlabs/Module/Group.php:177 -#: ../../Zotlabs/Module/Photos.php:1173 ../../Zotlabs/Module/Admin.php:1039 +#: ../../Zotlabs/Module/Editwebpage.php:169 ../../Zotlabs/Module/Group.php:177 +#: ../../Zotlabs/Module/Photos.php:1171 ../../Zotlabs/Module/Admin.php:1039 #: ../../Zotlabs/Module/Admin.php:1213 ../../Zotlabs/Module/Admin.php:2114 #: ../../Zotlabs/Module/Blocks.php:162 ../../Zotlabs/Module/Editblock.php:134 -#: ../../Zotlabs/Module/Settings.php:653 ../../Zotlabs/Module/Thing.php:261 -#: ../../Zotlabs/Module/Webpages.php:197 ../../Zotlabs/Lib/Apps.php:342 +#: ../../Zotlabs/Module/Settings.php:688 ../../Zotlabs/Module/Thing.php:261 +#: ../../Zotlabs/Module/Webpages.php:196 ../../Zotlabs/Lib/Apps.php:342 #: ../../Zotlabs/Lib/ThreadItem.php:126 ../../include/conversation.php:660 msgid "Delete" msgstr "" @@ -154,7 +154,7 @@ msgstr "" msgid "Upload file" msgstr "" -#: ../../Zotlabs/Web/WebServer.php:120 ../../Zotlabs/Module/Dreport.php:10 +#: ../../Zotlabs/Web/WebServer.php:127 ../../Zotlabs/Module/Dreport.php:10 #: ../../Zotlabs/Module/Dreport.php:66 ../../Zotlabs/Module/Group.php:72 #: ../../Zotlabs/Module/Like.php:284 ../../Zotlabs/Module/Import_items.php:114 #: ../../Zotlabs/Module/Profperm.php:28 ../../Zotlabs/Module/Subthread.php:62 @@ -162,10 +162,10 @@ msgstr "" msgid "Permission denied" msgstr "" -#: ../../Zotlabs/Web/WebServer.php:121 ../../Zotlabs/Web/Router.php:65 +#: ../../Zotlabs/Web/WebServer.php:128 ../../Zotlabs/Web/Router.php:65 #: ../../Zotlabs/Module/Achievements.php:34 #: ../../Zotlabs/Module/Connedit.php:366 ../../Zotlabs/Module/Id.php:76 -#: ../../Zotlabs/Module/Authtest.php:16 ../../Zotlabs/Module/Events.php:265 +#: ../../Zotlabs/Module/Authtest.php:16 ../../Zotlabs/Module/Events.php:264 #: ../../Zotlabs/Module/Bookmarks.php:61 ../../Zotlabs/Module/Editpost.php:17 #: ../../Zotlabs/Module/Page.php:35 ../../Zotlabs/Module/Page.php:91 #: ../../Zotlabs/Module/Connections.php:33 @@ -173,26 +173,26 @@ msgstr "" #: ../../Zotlabs/Module/Cover_photo.php:290 ../../Zotlabs/Module/Chat.php:100 #: ../../Zotlabs/Module/Chat.php:105 ../../Zotlabs/Module/Editlayout.php:67 #: ../../Zotlabs/Module/Editlayout.php:90 -#: ../../Zotlabs/Module/Editwebpage.php:69 -#: ../../Zotlabs/Module/Editwebpage.php:90 -#: ../../Zotlabs/Module/Editwebpage.php:105 -#: ../../Zotlabs/Module/Editwebpage.php:127 ../../Zotlabs/Module/Group.php:13 +#: ../../Zotlabs/Module/Editwebpage.php:68 +#: ../../Zotlabs/Module/Editwebpage.php:89 +#: ../../Zotlabs/Module/Editwebpage.php:104 +#: ../../Zotlabs/Module/Editwebpage.php:126 ../../Zotlabs/Module/Group.php:13 #: ../../Zotlabs/Module/Appman.php:75 ../../Zotlabs/Module/Pdledit.php:26 -#: ../../Zotlabs/Module/Filestorage.php:24 -#: ../../Zotlabs/Module/Filestorage.php:79 -#: ../../Zotlabs/Module/Filestorage.php:94 -#: ../../Zotlabs/Module/Filestorage.php:121 +#: ../../Zotlabs/Module/Filestorage.php:23 +#: ../../Zotlabs/Module/Filestorage.php:78 +#: ../../Zotlabs/Module/Filestorage.php:93 +#: ../../Zotlabs/Module/Filestorage.php:120 #: ../../Zotlabs/Module/Layouts.php:71 ../../Zotlabs/Module/Layouts.php:78 #: ../../Zotlabs/Module/Layouts.php:89 ../../Zotlabs/Module/Like.php:181 #: ../../Zotlabs/Module/Profiles.php:203 ../../Zotlabs/Module/Profiles.php:601 #: ../../Zotlabs/Module/Item.php:211 ../../Zotlabs/Module/Item.php:219 -#: ../../Zotlabs/Module/Item.php:1072 ../../Zotlabs/Module/Photos.php:75 +#: ../../Zotlabs/Module/Item.php:1067 ../../Zotlabs/Module/Photos.php:73 #: ../../Zotlabs/Module/Invite.php:17 ../../Zotlabs/Module/Invite.php:91 #: ../../Zotlabs/Module/Locs.php:87 ../../Zotlabs/Module/Mail.php:129 #: ../../Zotlabs/Module/Manage.php:10 ../../Zotlabs/Module/Menu.php:78 #: ../../Zotlabs/Module/Message.php:18 ../../Zotlabs/Module/Mood.php:116 -#: ../../Zotlabs/Module/Network.php:17 ../../Zotlabs/Module/Channel.php:105 -#: ../../Zotlabs/Module/Channel.php:226 ../../Zotlabs/Module/Channel.php:267 +#: ../../Zotlabs/Module/Network.php:15 ../../Zotlabs/Module/Channel.php:104 +#: ../../Zotlabs/Module/Channel.php:225 ../../Zotlabs/Module/Channel.php:266 #: ../../Zotlabs/Module/Mitem.php:115 ../../Zotlabs/Module/New_channel.php:77 #: ../../Zotlabs/Module/New_channel.php:104 #: ../../Zotlabs/Module/Notifications.php:70 ../../Zotlabs/Module/Poke.php:137 @@ -205,22 +205,22 @@ msgstr "" #: ../../Zotlabs/Module/Common.php:39 ../../Zotlabs/Module/Register.php:77 #: ../../Zotlabs/Module/Regmod.php:21 #: ../../Zotlabs/Module/Service_limits.php:11 -#: ../../Zotlabs/Module/Settings.php:572 ../../Zotlabs/Module/Setup.php:215 +#: ../../Zotlabs/Module/Settings.php:607 ../../Zotlabs/Module/Setup.php:215 #: ../../Zotlabs/Module/Sharedwithme.php:11 ../../Zotlabs/Module/Thing.php:274 #: ../../Zotlabs/Module/Thing.php:294 ../../Zotlabs/Module/Thing.php:331 #: ../../Zotlabs/Module/Sources.php:74 ../../Zotlabs/Module/Suggest.php:30 -#: ../../Zotlabs/Module/Webpages.php:74 +#: ../../Zotlabs/Module/Webpages.php:73 #: ../../Zotlabs/Module/Viewconnections.php:28 #: ../../Zotlabs/Module/Viewconnections.php:33 #: ../../Zotlabs/Module/Viewsrc.php:18 ../../Zotlabs/Module/Api.php:13 #: ../../Zotlabs/Module/Api.php:18 ../../Zotlabs/Lib/Chatroom.php:137 -#: ../../include/photos.php:27 ../../include/attach.php:141 -#: ../../include/attach.php:189 ../../include/attach.php:252 -#: ../../include/attach.php:266 ../../include/attach.php:273 -#: ../../include/attach.php:338 ../../include/attach.php:352 -#: ../../include/attach.php:359 ../../include/attach.php:439 -#: ../../include/attach.php:901 ../../include/attach.php:972 -#: ../../include/attach.php:1124 ../../include/items.php:3449 +#: ../../include/photos.php:27 ../../include/items.php:3449 +#: ../../include/attach.php:141 ../../include/attach.php:189 +#: ../../include/attach.php:252 ../../include/attach.php:266 +#: ../../include/attach.php:273 ../../include/attach.php:338 +#: ../../include/attach.php:352 ../../include/attach.php:359 +#: ../../include/attach.php:439 ../../include/attach.php:901 +#: ../../include/attach.php:972 ../../include/attach.php:1124 msgid "Permission denied." msgstr "" @@ -248,10 +248,10 @@ msgstr "" #: ../../Zotlabs/Module/Achievements.php:15 #: ../../Zotlabs/Module/Connect.php:17 ../../Zotlabs/Module/Editlayout.php:31 -#: ../../Zotlabs/Module/Editwebpage.php:33 ../../Zotlabs/Module/Hcard.php:12 -#: ../../Zotlabs/Module/Filestorage.php:60 ../../Zotlabs/Module/Layouts.php:31 +#: ../../Zotlabs/Module/Editwebpage.php:32 ../../Zotlabs/Module/Hcard.php:12 +#: ../../Zotlabs/Module/Filestorage.php:59 ../../Zotlabs/Module/Layouts.php:31 #: ../../Zotlabs/Module/Profile.php:20 ../../Zotlabs/Module/Blocks.php:33 -#: ../../Zotlabs/Module/Editblock.php:31 ../../Zotlabs/Module/Webpages.php:34 +#: ../../Zotlabs/Module/Editblock.php:31 ../../Zotlabs/Module/Webpages.php:33 #: ../../include/channel.php:861 msgid "Requested profile is not available." msgstr "" @@ -289,32 +289,32 @@ msgid "is now connected to" msgstr "" #: ../../Zotlabs/Module/Connedit.php:379 ../../Zotlabs/Module/Connedit.php:660 -#: ../../Zotlabs/Module/Events.php:459 ../../Zotlabs/Module/Events.php:460 -#: ../../Zotlabs/Module/Events.php:469 -#: ../../Zotlabs/Module/Filestorage.php:157 -#: ../../Zotlabs/Module/Filestorage.php:165 -#: ../../Zotlabs/Module/Profiles.php:647 ../../Zotlabs/Module/Photos.php:666 +#: ../../Zotlabs/Module/Events.php:458 ../../Zotlabs/Module/Events.php:459 +#: ../../Zotlabs/Module/Events.php:468 +#: ../../Zotlabs/Module/Filestorage.php:156 +#: ../../Zotlabs/Module/Filestorage.php:164 +#: ../../Zotlabs/Module/Profiles.php:647 ../../Zotlabs/Module/Photos.php:664 #: ../../Zotlabs/Module/Menu.php:100 ../../Zotlabs/Module/Menu.php:157 #: ../../Zotlabs/Module/Mitem.php:158 ../../Zotlabs/Module/Mitem.php:159 #: ../../Zotlabs/Module/Mitem.php:232 ../../Zotlabs/Module/Mitem.php:233 #: ../../Zotlabs/Module/Admin.php:459 ../../Zotlabs/Module/Removeme.php:61 -#: ../../Zotlabs/Module/Settings.php:581 ../../Zotlabs/Module/Api.php:89 +#: ../../Zotlabs/Module/Settings.php:616 ../../Zotlabs/Module/Api.php:89 #: ../../include/dir_fns.php:143 ../../include/dir_fns.php:144 #: ../../include/dir_fns.php:145 ../../view/theme/redbasic/php/config.php:105 #: ../../view/theme/redbasic/php/config.php:130 ../../boot.php:1708 msgid "No" msgstr "" -#: ../../Zotlabs/Module/Connedit.php:379 ../../Zotlabs/Module/Events.php:459 -#: ../../Zotlabs/Module/Events.php:460 ../../Zotlabs/Module/Events.php:469 -#: ../../Zotlabs/Module/Filestorage.php:157 -#: ../../Zotlabs/Module/Filestorage.php:165 -#: ../../Zotlabs/Module/Profiles.php:647 ../../Zotlabs/Module/Photos.php:666 +#: ../../Zotlabs/Module/Connedit.php:379 ../../Zotlabs/Module/Events.php:458 +#: ../../Zotlabs/Module/Events.php:459 ../../Zotlabs/Module/Events.php:468 +#: ../../Zotlabs/Module/Filestorage.php:156 +#: ../../Zotlabs/Module/Filestorage.php:164 +#: ../../Zotlabs/Module/Profiles.php:647 ../../Zotlabs/Module/Photos.php:664 #: ../../Zotlabs/Module/Menu.php:100 ../../Zotlabs/Module/Menu.php:157 #: ../../Zotlabs/Module/Mitem.php:158 ../../Zotlabs/Module/Mitem.php:159 #: ../../Zotlabs/Module/Mitem.php:232 ../../Zotlabs/Module/Mitem.php:233 #: ../../Zotlabs/Module/Admin.php:461 ../../Zotlabs/Module/Removeme.php:61 -#: ../../Zotlabs/Module/Settings.php:581 ../../Zotlabs/Module/Api.php:88 +#: ../../Zotlabs/Module/Settings.php:616 ../../Zotlabs/Module/Api.php:88 #: ../../include/dir_fns.php:143 ../../include/dir_fns.php:144 #: ../../include/dir_fns.php:145 ../../view/theme/redbasic/php/config.php:105 #: ../../view/theme/redbasic/php/config.php:130 ../../boot.php:1708 @@ -340,7 +340,7 @@ msgid "Connection has been removed." msgstr "" #: ../../Zotlabs/Module/Connedit.php:525 ../../Zotlabs/Lib/Apps.php:221 -#: ../../include/conversation.php:957 ../../include/nav.php:86 +#: ../../include/nav.php:86 ../../include/conversation.php:957 msgid "View Profile" msgstr "" @@ -444,12 +444,12 @@ msgstr "" msgid "Family" msgstr "" -#: ../../Zotlabs/Module/Connedit.php:598 ../../Zotlabs/Module/Settings.php:342 -#: ../../Zotlabs/Module/Settings.php:346 ../../Zotlabs/Module/Settings.php:347 -#: ../../Zotlabs/Module/Settings.php:350 ../../Zotlabs/Module/Settings.php:361 -#: ../../include/selectors.php:123 ../../include/widgets.php:495 -#: ../../include/channel.php:389 ../../include/channel.php:390 -#: ../../include/channel.php:397 +#: ../../Zotlabs/Module/Connedit.php:598 ../../Zotlabs/Module/Settings.php:377 +#: ../../Zotlabs/Module/Settings.php:381 ../../Zotlabs/Module/Settings.php:382 +#: ../../Zotlabs/Module/Settings.php:385 ../../Zotlabs/Module/Settings.php:396 +#: ../../include/widgets.php:495 ../../include/channel.php:389 +#: ../../include/channel.php:390 ../../include/channel.php:397 +#: ../../include/selectors.php:123 msgid "Friends" msgstr "" @@ -487,7 +487,7 @@ msgstr "" msgid "none" msgstr "" -#: ../../Zotlabs/Module/Connedit.php:708 ../../include/widgets.php:614 +#: ../../Zotlabs/Module/Connedit.php:708 ../../include/widgets.php:623 msgid "Connection Default Permissions" msgstr "" @@ -570,14 +570,14 @@ msgid "inherited" msgstr "" #: ../../Zotlabs/Module/Connedit.php:737 ../../Zotlabs/Module/Connect.php:98 -#: ../../Zotlabs/Module/Events.php:475 ../../Zotlabs/Module/Cal.php:338 +#: ../../Zotlabs/Module/Events.php:474 ../../Zotlabs/Module/Cal.php:338 #: ../../Zotlabs/Module/Chat.php:196 ../../Zotlabs/Module/Chat.php:238 #: ../../Zotlabs/Module/Group.php:85 ../../Zotlabs/Module/Appman.php:126 #: ../../Zotlabs/Module/Pdledit.php:66 -#: ../../Zotlabs/Module/Filestorage.php:162 +#: ../../Zotlabs/Module/Filestorage.php:161 #: ../../Zotlabs/Module/Profiles.php:687 ../../Zotlabs/Module/Import.php:551 -#: ../../Zotlabs/Module/Photos.php:677 ../../Zotlabs/Module/Photos.php:1052 -#: ../../Zotlabs/Module/Photos.php:1092 ../../Zotlabs/Module/Photos.php:1210 +#: ../../Zotlabs/Module/Photos.php:675 ../../Zotlabs/Module/Photos.php:1050 +#: ../../Zotlabs/Module/Photos.php:1090 ../../Zotlabs/Module/Photos.php:1208 #: ../../Zotlabs/Module/Import_items.php:122 #: ../../Zotlabs/Module/Invite.php:146 ../../Zotlabs/Module/Locs.php:121 #: ../../Zotlabs/Module/Mail.php:378 ../../Zotlabs/Module/Mood.php:139 @@ -587,15 +587,16 @@ msgstr "" #: ../../Zotlabs/Module/Admin.php:1421 ../../Zotlabs/Module/Admin.php:1648 #: ../../Zotlabs/Module/Admin.php:1733 ../../Zotlabs/Module/Admin.php:2116 #: ../../Zotlabs/Module/Poke.php:186 ../../Zotlabs/Module/Pconfig.php:107 -#: ../../Zotlabs/Module/Rate.php:170 ../../Zotlabs/Module/Settings.php:590 -#: ../../Zotlabs/Module/Settings.php:703 ../../Zotlabs/Module/Settings.php:731 -#: ../../Zotlabs/Module/Settings.php:754 ../../Zotlabs/Module/Settings.php:842 -#: ../../Zotlabs/Module/Settings.php:1034 ../../Zotlabs/Module/Setup.php:312 +#: ../../Zotlabs/Module/Rate.php:170 ../../Zotlabs/Module/Settings.php:625 +#: ../../Zotlabs/Module/Settings.php:738 ../../Zotlabs/Module/Settings.php:779 +#: ../../Zotlabs/Module/Settings.php:805 ../../Zotlabs/Module/Settings.php:828 +#: ../../Zotlabs/Module/Settings.php:916 +#: ../../Zotlabs/Module/Settings.php:1108 ../../Zotlabs/Module/Setup.php:312 #: ../../Zotlabs/Module/Setup.php:353 ../../Zotlabs/Module/Thing.php:316 #: ../../Zotlabs/Module/Thing.php:362 ../../Zotlabs/Module/Sources.php:114 #: ../../Zotlabs/Module/Sources.php:149 ../../Zotlabs/Module/Xchan.php:15 -#: ../../Zotlabs/Lib/ThreadItem.php:710 ../../include/js_strings.php:22 -#: ../../include/widgets.php:754 ../../view/theme/redbasic/php/config.php:99 +#: ../../Zotlabs/Lib/ThreadItem.php:710 ../../include/widgets.php:763 +#: ../../include/js_strings.php:22 ../../view/theme/redbasic/php/config.php:99 msgid "Submit" msgstr "" @@ -638,13 +639,13 @@ msgid "Last update:" msgstr "" #: ../../Zotlabs/Module/Display.php:17 ../../Zotlabs/Module/Directory.php:63 -#: ../../Zotlabs/Module/Photos.php:522 ../../Zotlabs/Module/Ratings.php:86 +#: ../../Zotlabs/Module/Photos.php:520 ../../Zotlabs/Module/Ratings.php:86 #: ../../Zotlabs/Module/Search.php:17 #: ../../Zotlabs/Module/Viewconnections.php:23 msgid "Public access denied." msgstr "" -#: ../../Zotlabs/Module/Display.php:40 ../../Zotlabs/Module/Filestorage.php:33 +#: ../../Zotlabs/Module/Display.php:40 ../../Zotlabs/Module/Filestorage.php:32 #: ../../Zotlabs/Module/Admin.php:164 ../../Zotlabs/Module/Admin.php:1255 #: ../../Zotlabs/Module/Admin.php:1561 ../../Zotlabs/Module/Thing.php:89 #: ../../Zotlabs/Module/Viewsrc.php:24 ../../include/items.php:3370 @@ -771,9 +772,9 @@ msgstr "" msgid "Age:" msgstr "" -#: ../../Zotlabs/Module/Directory.php:311 ../../include/event.php:52 -#: ../../include/event.php:84 ../../include/bb2diaspora.php:507 -#: ../../include/channel.php:1051 +#: ../../Zotlabs/Module/Directory.php:311 ../../include/channel.php:1051 +#: ../../include/event.php:52 ../../include/event.php:84 +#: ../../include/bb2diaspora.php:507 msgid "Location:" msgstr "" @@ -790,9 +791,9 @@ msgid "About:" msgstr "" #: ../../Zotlabs/Module/Directory.php:325 ../../Zotlabs/Module/Match.php:68 -#: ../../Zotlabs/Module/Suggest.php:56 ../../include/conversation.php:959 -#: ../../include/connections.php:78 ../../include/widgets.php:147 +#: ../../Zotlabs/Module/Suggest.php:56 ../../include/widgets.php:147 #: ../../include/widgets.php:184 ../../include/channel.php:1036 +#: ../../include/conversation.php:959 ../../include/connections.php:78 msgid "Connect" msgstr "" @@ -911,203 +912,203 @@ msgstr "" msgid "Restricted or Premium Channel" msgstr "" -#: ../../Zotlabs/Module/Events.php:26 +#: ../../Zotlabs/Module/Events.php:25 msgid "Calendar entries imported." msgstr "" -#: ../../Zotlabs/Module/Events.php:28 +#: ../../Zotlabs/Module/Events.php:27 msgid "No calendar entries found." msgstr "" -#: ../../Zotlabs/Module/Events.php:105 +#: ../../Zotlabs/Module/Events.php:104 msgid "Event can not end before it has started." msgstr "" -#: ../../Zotlabs/Module/Events.php:107 ../../Zotlabs/Module/Events.php:116 -#: ../../Zotlabs/Module/Events.php:136 +#: ../../Zotlabs/Module/Events.php:106 ../../Zotlabs/Module/Events.php:115 +#: ../../Zotlabs/Module/Events.php:135 msgid "Unable to generate preview." msgstr "" -#: ../../Zotlabs/Module/Events.php:114 +#: ../../Zotlabs/Module/Events.php:113 msgid "Event title and start time are required." msgstr "" -#: ../../Zotlabs/Module/Events.php:134 ../../Zotlabs/Module/Events.php:259 +#: ../../Zotlabs/Module/Events.php:133 ../../Zotlabs/Module/Events.php:258 msgid "Event not found." msgstr "" -#: ../../Zotlabs/Module/Events.php:254 ../../Zotlabs/Module/Like.php:373 -#: ../../Zotlabs/Module/Tagger.php:51 ../../include/conversation.php:123 -#: ../../include/event.php:949 ../../include/text.php:1920 +#: ../../Zotlabs/Module/Events.php:253 ../../Zotlabs/Module/Like.php:373 +#: ../../Zotlabs/Module/Tagger.php:51 ../../include/event.php:949 +#: ../../include/conversation.php:123 ../../include/text.php:1924 msgid "event" msgstr "" -#: ../../Zotlabs/Module/Events.php:449 +#: ../../Zotlabs/Module/Events.php:448 msgid "Edit event title" msgstr "" -#: ../../Zotlabs/Module/Events.php:449 +#: ../../Zotlabs/Module/Events.php:448 msgid "Event title" msgstr "" -#: ../../Zotlabs/Module/Events.php:449 ../../Zotlabs/Module/Events.php:454 +#: ../../Zotlabs/Module/Events.php:448 ../../Zotlabs/Module/Events.php:453 #: ../../Zotlabs/Module/Appman.php:115 ../../Zotlabs/Module/Appman.php:116 #: ../../Zotlabs/Module/Profiles.php:709 ../../Zotlabs/Module/Profiles.php:713 #: ../../include/datetime.php:245 msgid "Required" msgstr "" -#: ../../Zotlabs/Module/Events.php:451 +#: ../../Zotlabs/Module/Events.php:450 msgid "Categories (comma-separated list)" msgstr "" -#: ../../Zotlabs/Module/Events.php:452 +#: ../../Zotlabs/Module/Events.php:451 msgid "Edit Category" msgstr "" -#: ../../Zotlabs/Module/Events.php:452 +#: ../../Zotlabs/Module/Events.php:451 msgid "Category" msgstr "" -#: ../../Zotlabs/Module/Events.php:455 +#: ../../Zotlabs/Module/Events.php:454 msgid "Edit start date and time" msgstr "" -#: ../../Zotlabs/Module/Events.php:455 +#: ../../Zotlabs/Module/Events.php:454 msgid "Start date and time" msgstr "" -#: ../../Zotlabs/Module/Events.php:456 ../../Zotlabs/Module/Events.php:459 +#: ../../Zotlabs/Module/Events.php:455 ../../Zotlabs/Module/Events.php:458 msgid "Finish date and time are not known or not relevant" msgstr "" -#: ../../Zotlabs/Module/Events.php:458 +#: ../../Zotlabs/Module/Events.php:457 msgid "Edit finish date and time" msgstr "" -#: ../../Zotlabs/Module/Events.php:458 +#: ../../Zotlabs/Module/Events.php:457 msgid "Finish date and time" msgstr "" -#: ../../Zotlabs/Module/Events.php:460 ../../Zotlabs/Module/Events.php:461 +#: ../../Zotlabs/Module/Events.php:459 ../../Zotlabs/Module/Events.php:460 msgid "Adjust for viewer timezone" msgstr "" -#: ../../Zotlabs/Module/Events.php:460 +#: ../../Zotlabs/Module/Events.php:459 msgid "" "Important for events that happen in a particular place. Not practical for " "global holidays." msgstr "" -#: ../../Zotlabs/Module/Events.php:462 +#: ../../Zotlabs/Module/Events.php:461 msgid "Edit Description" msgstr "" -#: ../../Zotlabs/Module/Events.php:462 ../../Zotlabs/Module/Appman.php:117 +#: ../../Zotlabs/Module/Events.php:461 ../../Zotlabs/Module/Appman.php:117 #: ../../Zotlabs/Module/Rbmark.php:101 msgid "Description" msgstr "" -#: ../../Zotlabs/Module/Events.php:464 +#: ../../Zotlabs/Module/Events.php:463 msgid "Edit Location" msgstr "" -#: ../../Zotlabs/Module/Events.php:464 ../../Zotlabs/Module/Profiles.php:477 +#: ../../Zotlabs/Module/Events.php:463 ../../Zotlabs/Module/Profiles.php:477 #: ../../Zotlabs/Module/Profiles.php:698 ../../Zotlabs/Module/Locs.php:117 #: ../../Zotlabs/Module/Pubsites.php:41 ../../include/js_strings.php:25 msgid "Location" msgstr "" -#: ../../Zotlabs/Module/Events.php:467 ../../Zotlabs/Module/Events.php:469 +#: ../../Zotlabs/Module/Events.php:466 ../../Zotlabs/Module/Events.php:468 msgid "Share this event" msgstr "" -#: ../../Zotlabs/Module/Events.php:470 ../../Zotlabs/Module/Photos.php:1093 -#: ../../Zotlabs/Module/Webpages.php:202 ../../Zotlabs/Lib/ThreadItem.php:719 -#: ../../include/conversation.php:1198 ../../include/page_widgets.php:43 +#: ../../Zotlabs/Module/Events.php:469 ../../Zotlabs/Module/Photos.php:1091 +#: ../../Zotlabs/Module/Webpages.php:201 ../../Zotlabs/Lib/ThreadItem.php:719 +#: ../../include/page_widgets.php:43 ../../include/conversation.php:1198 msgid "Preview" msgstr "" -#: ../../Zotlabs/Module/Events.php:471 ../../include/conversation.php:1247 +#: ../../Zotlabs/Module/Events.php:470 ../../include/conversation.php:1247 msgid "Permission settings" msgstr "" -#: ../../Zotlabs/Module/Events.php:476 +#: ../../Zotlabs/Module/Events.php:475 msgid "Advanced Options" msgstr "" -#: ../../Zotlabs/Module/Events.php:588 ../../Zotlabs/Module/Cal.php:259 +#: ../../Zotlabs/Module/Events.php:587 ../../Zotlabs/Module/Cal.php:259 msgid "l, F j" msgstr "" -#: ../../Zotlabs/Module/Events.php:610 +#: ../../Zotlabs/Module/Events.php:609 msgid "Edit event" msgstr "" -#: ../../Zotlabs/Module/Events.php:612 +#: ../../Zotlabs/Module/Events.php:611 msgid "Delete event" msgstr "" -#: ../../Zotlabs/Module/Events.php:637 ../../Zotlabs/Module/Cal.php:308 -#: ../../include/text.php:1708 +#: ../../Zotlabs/Module/Events.php:636 ../../Zotlabs/Module/Cal.php:308 +#: ../../include/text.php:1712 msgid "Link to Source" msgstr "" -#: ../../Zotlabs/Module/Events.php:646 +#: ../../Zotlabs/Module/Events.php:645 msgid "calendar" msgstr "" -#: ../../Zotlabs/Module/Events.php:665 ../../Zotlabs/Module/Cal.php:331 +#: ../../Zotlabs/Module/Events.php:664 ../../Zotlabs/Module/Cal.php:331 msgid "Edit Event" msgstr "" -#: ../../Zotlabs/Module/Events.php:665 ../../Zotlabs/Module/Cal.php:331 +#: ../../Zotlabs/Module/Events.php:664 ../../Zotlabs/Module/Cal.php:331 msgid "Create Event" msgstr "" -#: ../../Zotlabs/Module/Events.php:666 ../../Zotlabs/Module/Events.php:675 +#: ../../Zotlabs/Module/Events.php:665 ../../Zotlabs/Module/Events.php:674 #: ../../Zotlabs/Module/Cal.php:332 ../../Zotlabs/Module/Cal.php:339 -#: ../../Zotlabs/Module/Photos.php:949 +#: ../../Zotlabs/Module/Photos.php:947 msgid "Previous" msgstr "" -#: ../../Zotlabs/Module/Events.php:667 ../../Zotlabs/Module/Events.php:676 +#: ../../Zotlabs/Module/Events.php:666 ../../Zotlabs/Module/Events.php:675 #: ../../Zotlabs/Module/Cal.php:333 ../../Zotlabs/Module/Cal.php:340 -#: ../../Zotlabs/Module/Photos.php:958 ../../Zotlabs/Module/Setup.php:267 +#: ../../Zotlabs/Module/Photos.php:956 ../../Zotlabs/Module/Setup.php:267 msgid "Next" msgstr "" -#: ../../Zotlabs/Module/Events.php:668 ../../Zotlabs/Module/Cal.php:334 +#: ../../Zotlabs/Module/Events.php:667 ../../Zotlabs/Module/Cal.php:334 msgid "Export" msgstr "" -#: ../../Zotlabs/Module/Events.php:671 ../../Zotlabs/Module/Layouts.php:197 +#: ../../Zotlabs/Module/Events.php:670 ../../Zotlabs/Module/Layouts.php:197 #: ../../Zotlabs/Module/Pubsites.php:47 ../../Zotlabs/Module/Blocks.php:166 -#: ../../Zotlabs/Module/Webpages.php:201 ../../include/page_widgets.php:42 +#: ../../Zotlabs/Module/Webpages.php:200 ../../include/page_widgets.php:42 msgid "View" msgstr "" -#: ../../Zotlabs/Module/Events.php:672 +#: ../../Zotlabs/Module/Events.php:671 msgid "Month" msgstr "" -#: ../../Zotlabs/Module/Events.php:673 +#: ../../Zotlabs/Module/Events.php:672 msgid "Week" msgstr "" -#: ../../Zotlabs/Module/Events.php:674 +#: ../../Zotlabs/Module/Events.php:673 msgid "Day" msgstr "" -#: ../../Zotlabs/Module/Events.php:677 ../../Zotlabs/Module/Cal.php:341 +#: ../../Zotlabs/Module/Events.php:676 ../../Zotlabs/Module/Cal.php:341 msgid "Today" msgstr "" -#: ../../Zotlabs/Module/Events.php:708 +#: ../../Zotlabs/Module/Events.php:707 msgid "Event removed" msgstr "" -#: ../../Zotlabs/Module/Events.php:711 +#: ../../Zotlabs/Module/Events.php:710 msgid "Failed to remove event" msgstr "" @@ -1124,7 +1125,7 @@ msgid "My Connections Bookmarks" msgstr "" #: ../../Zotlabs/Module/Editpost.php:24 ../../Zotlabs/Module/Editlayout.php:79 -#: ../../Zotlabs/Module/Editwebpage.php:81 +#: ../../Zotlabs/Module/Editwebpage.php:80 #: ../../Zotlabs/Module/Editblock.php:79 ../../Zotlabs/Module/Editblock.php:95 msgid "Item not found" msgstr "" @@ -1133,18 +1134,18 @@ msgstr "" msgid "Item is not editable" msgstr "" -#: ../../Zotlabs/Module/Editpost.php:106 ../../Zotlabs/Module/Rpost.php:135 +#: ../../Zotlabs/Module/Editpost.php:106 ../../Zotlabs/Module/Rpost.php:134 msgid "Edit post" msgstr "" #: ../../Zotlabs/Module/Fbrowser.php:29 ../../Zotlabs/Lib/Apps.php:222 -#: ../../include/conversation.php:1647 ../../include/nav.php:92 +#: ../../include/nav.php:92 ../../include/conversation.php:1647 msgid "Photos" msgstr "" #: ../../Zotlabs/Module/Fbrowser.php:66 ../../Zotlabs/Module/Fbrowser.php:88 -#: ../../Zotlabs/Module/Admin.php:1406 ../../Zotlabs/Module/Settings.php:591 -#: ../../Zotlabs/Module/Settings.php:617 ../../Zotlabs/Module/Tagrm.php:15 +#: ../../Zotlabs/Module/Admin.php:1406 ../../Zotlabs/Module/Settings.php:626 +#: ../../Zotlabs/Module/Settings.php:652 ../../Zotlabs/Module/Tagrm.php:15 #: ../../Zotlabs/Module/Tagrm.php:138 ../../Zotlabs/Module/Wiki.php:166 #: ../../Zotlabs/Module/Wiki.php:202 ../../include/conversation.php:1235 #: ../../include/conversation.php:1274 @@ -1181,7 +1182,7 @@ msgstr "" #: ../../Zotlabs/Module/Filer.php:53 ../../Zotlabs/Module/Admin.php:2033 #: ../../Zotlabs/Module/Admin.php:2053 ../../Zotlabs/Module/Rbmark.php:32 #: ../../Zotlabs/Module/Rbmark.php:104 ../../include/widgets.php:201 -#: ../../include/text.php:922 ../../include/text.php:934 +#: ../../include/text.php:926 ../../include/text.php:938 msgid "Save" msgstr "" @@ -1299,14 +1300,14 @@ msgid "Recent activity" msgstr "" #: ../../Zotlabs/Module/Connections.php:302 ../../Zotlabs/Lib/Apps.php:209 -#: ../../include/nav.php:188 ../../include/text.php:851 +#: ../../include/nav.php:188 ../../include/text.php:855 msgid "Connections" msgstr "" #: ../../Zotlabs/Module/Connections.php:306 ../../Zotlabs/Module/Search.php:44 -#: ../../Zotlabs/Lib/Apps.php:230 ../../include/acl_selectors.php:276 -#: ../../include/nav.php:167 ../../include/text.php:921 -#: ../../include/text.php:933 +#: ../../Zotlabs/Lib/Apps.php:230 ../../include/nav.php:167 +#: ../../include/acl_selectors.php:274 ../../include/text.php:925 +#: ../../include/text.php:937 msgid "Search" msgstr "" @@ -1348,30 +1349,30 @@ msgstr "" msgid "Unable to process image." msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:233 ../../include/items.php:4297 +#: ../../Zotlabs/Module/Cover_photo.php:233 ../../include/items.php:4284 msgid "female" msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:234 ../../include/items.php:4298 +#: ../../Zotlabs/Module/Cover_photo.php:234 ../../include/items.php:4285 #, php-format msgid "%1$s updated her %2$s" msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:235 ../../include/items.php:4299 +#: ../../Zotlabs/Module/Cover_photo.php:235 ../../include/items.php:4286 msgid "male" msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:236 ../../include/items.php:4300 +#: ../../Zotlabs/Module/Cover_photo.php:236 ../../include/items.php:4287 #, php-format msgid "%1$s updated his %2$s" msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:238 ../../include/items.php:4302 +#: ../../Zotlabs/Module/Cover_photo.php:238 ../../include/items.php:4289 #, php-format msgid "%1$s updated their %2$s" msgstr "" -#: ../../Zotlabs/Module/Cover_photo.php:240 ../../include/channel.php:1687 +#: ../../Zotlabs/Module/Cover_photo.php:240 ../../include/channel.php:1708 msgid "cover photo" msgstr "" @@ -1398,7 +1399,7 @@ msgstr "" #: ../../Zotlabs/Module/Cover_photo.php:361 #: ../../Zotlabs/Module/Profile_photo.php:396 -#: ../../Zotlabs/Module/Settings.php:985 +#: ../../Zotlabs/Module/Settings.php:1059 msgid "or" msgstr "" @@ -1469,7 +1470,7 @@ msgstr "" msgid "This directory server requires an access token" msgstr "" -#: ../../Zotlabs/Module/Chat.php:25 ../../Zotlabs/Module/Channel.php:29 +#: ../../Zotlabs/Module/Chat.php:25 ../../Zotlabs/Module/Channel.php:28 #: ../../Zotlabs/Module/Wiki.php:20 msgid "You must be logged in to see this page." msgstr "" @@ -1509,7 +1510,7 @@ msgstr "" msgid "Encrypt text" msgstr "" -#: ../../Zotlabs/Module/Chat.php:207 ../../Zotlabs/Module/Editwebpage.php:147 +#: ../../Zotlabs/Module/Chat.php:207 ../../Zotlabs/Module/Editwebpage.php:146 #: ../../Zotlabs/Module/Mail.php:252 ../../Zotlabs/Module/Mail.php:377 #: ../../Zotlabs/Module/Editblock.php:111 ../../include/conversation.php:1146 msgid "Insert web link" @@ -1531,10 +1532,10 @@ msgstr "" msgid "Expiration of chats (minutes)" msgstr "" -#: ../../Zotlabs/Module/Chat.php:235 ../../Zotlabs/Module/Filestorage.php:153 -#: ../../Zotlabs/Module/Photos.php:671 ../../Zotlabs/Module/Photos.php:1045 +#: ../../Zotlabs/Module/Chat.php:235 ../../Zotlabs/Module/Filestorage.php:152 +#: ../../Zotlabs/Module/Photos.php:669 ../../Zotlabs/Module/Photos.php:1043 #: ../../Zotlabs/Module/Thing.php:313 ../../Zotlabs/Module/Thing.php:359 -#: ../../include/acl_selectors.php:283 +#: ../../include/acl_selectors.php:281 msgid "Permissions" msgstr "" @@ -1639,11 +1640,11 @@ msgstr "" msgid "Edit Layout" msgstr "" -#: ../../Zotlabs/Module/Editwebpage.php:143 +#: ../../Zotlabs/Module/Editwebpage.php:142 msgid "Page link" msgstr "" -#: ../../Zotlabs/Module/Editwebpage.php:169 +#: ../../Zotlabs/Module/Editwebpage.php:168 msgid "Edit Webpage" msgstr "" @@ -1803,59 +1804,59 @@ msgstr "" msgid "Activate the Firefox $Projectname provider" msgstr "" -#: ../../Zotlabs/Module/Acl.php:227 +#: ../../Zotlabs/Module/Acl.php:288 msgid "network" msgstr "" -#: ../../Zotlabs/Module/Acl.php:237 +#: ../../Zotlabs/Module/Acl.php:298 msgid "RSS" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:88 +#: ../../Zotlabs/Module/Filestorage.php:87 msgid "Permission Denied." msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:104 +#: ../../Zotlabs/Module/Filestorage.php:103 msgid "File not found." msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:147 +#: ../../Zotlabs/Module/Filestorage.php:146 msgid "Edit file permissions" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:156 +#: ../../Zotlabs/Module/Filestorage.php:155 msgid "Set/edit permissions" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:157 +#: ../../Zotlabs/Module/Filestorage.php:156 msgid "Include all files and sub folders" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:158 +#: ../../Zotlabs/Module/Filestorage.php:157 msgid "Return to file list" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:160 +#: ../../Zotlabs/Module/Filestorage.php:159 msgid "Copy/paste this code to attach file to a post" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:161 +#: ../../Zotlabs/Module/Filestorage.php:160 msgid "Copy/paste this URL to link file from a web page" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:163 +#: ../../Zotlabs/Module/Filestorage.php:162 msgid "Share this file" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:164 +#: ../../Zotlabs/Module/Filestorage.php:163 msgid "Show URL to this file" msgstr "" -#: ../../Zotlabs/Module/Filestorage.php:165 +#: ../../Zotlabs/Module/Filestorage.php:164 msgid "Notify your contacts about this file" msgstr "" -#: ../../Zotlabs/Module/Layouts.php:183 ../../include/text.php:2244 +#: ../../Zotlabs/Module/Layouts.php:183 ../../include/text.php:2248 msgid "Layouts" msgstr "" @@ -1868,19 +1869,19 @@ msgid "Layout Description" msgstr "" #: ../../Zotlabs/Module/Layouts.php:190 ../../Zotlabs/Module/Menu.php:114 -#: ../../Zotlabs/Module/Blocks.php:157 ../../Zotlabs/Module/Webpages.php:206 +#: ../../Zotlabs/Module/Blocks.php:157 ../../Zotlabs/Module/Webpages.php:205 #: ../../include/page_widgets.php:47 msgid "Created" msgstr "" #: ../../Zotlabs/Module/Layouts.php:191 ../../Zotlabs/Module/Menu.php:115 -#: ../../Zotlabs/Module/Blocks.php:158 ../../Zotlabs/Module/Webpages.php:207 +#: ../../Zotlabs/Module/Blocks.php:158 ../../Zotlabs/Module/Webpages.php:206 #: ../../include/page_widgets.php:48 msgid "Edited" msgstr "" -#: ../../Zotlabs/Module/Layouts.php:193 ../../Zotlabs/Module/Photos.php:1072 -#: ../../Zotlabs/Module/Blocks.php:161 ../../Zotlabs/Module/Webpages.php:196 +#: ../../Zotlabs/Module/Layouts.php:193 ../../Zotlabs/Module/Photos.php:1070 +#: ../../Zotlabs/Module/Blocks.php:161 ../../Zotlabs/Module/Webpages.php:195 #: ../../include/conversation.php:1219 msgid "Share" msgstr "" @@ -1926,12 +1927,12 @@ msgstr "" #: ../../Zotlabs/Module/Like.php:371 ../../Zotlabs/Module/Subthread.php:87 #: ../../Zotlabs/Module/Tagger.php:47 ../../include/conversation.php:120 -#: ../../include/text.php:1917 +#: ../../include/text.php:1921 msgid "photo" msgstr "" #: ../../Zotlabs/Module/Like.php:371 ../../Zotlabs/Module/Subthread.php:87 -#: ../../include/conversation.php:148 ../../include/text.php:1923 +#: ../../include/conversation.php:148 ../../include/text.php:1927 msgid "status" msgstr "" @@ -2106,8 +2107,8 @@ msgstr "" msgid "Add profile things" msgstr "" -#: ../../Zotlabs/Module/Profiles.php:697 ../../include/conversation.php:1541 -#: ../../include/widgets.php:105 +#: ../../Zotlabs/Module/Profiles.php:697 ../../include/widgets.php:105 +#: ../../include/conversation.php:1541 msgid "Personal" msgstr "" @@ -2382,25 +2383,25 @@ msgstr "" msgid "System error. Post not saved." msgstr "" -#: ../../Zotlabs/Module/Item.php:1243 +#: ../../Zotlabs/Module/Item.php:1238 msgid "Unable to obtain post information from database." msgstr "" -#: ../../Zotlabs/Module/Item.php:1250 +#: ../../Zotlabs/Module/Item.php:1245 #, php-format msgid "You have reached your limit of %1$.0f top level posts." msgstr "" -#: ../../Zotlabs/Module/Item.php:1257 +#: ../../Zotlabs/Module/Item.php:1252 #, php-format msgid "You have reached your limit of %1$.0f webpages." msgstr "" -#: ../../Zotlabs/Module/Photos.php:84 +#: ../../Zotlabs/Module/Photos.php:82 msgid "Page owner information could not be retrieved." msgstr "" -#: ../../Zotlabs/Module/Photos.php:99 ../../Zotlabs/Module/Photos.php:743 +#: ../../Zotlabs/Module/Photos.php:97 ../../Zotlabs/Module/Photos.php:741 #: ../../Zotlabs/Module/Profile_photo.php:115 #: ../../Zotlabs/Module/Profile_photo.php:212 #: ../../Zotlabs/Module/Profile_photo.php:311 @@ -2408,237 +2409,237 @@ msgstr "" msgid "Profile Photos" msgstr "" -#: ../../Zotlabs/Module/Photos.php:105 ../../Zotlabs/Module/Photos.php:149 +#: ../../Zotlabs/Module/Photos.php:103 ../../Zotlabs/Module/Photos.php:147 msgid "Album not found." msgstr "" -#: ../../Zotlabs/Module/Photos.php:132 +#: ../../Zotlabs/Module/Photos.php:130 msgid "Delete Album" msgstr "" -#: ../../Zotlabs/Module/Photos.php:153 +#: ../../Zotlabs/Module/Photos.php:151 msgid "" "Multiple storage folders exist with this album name, but within different " "directories. Please remove the desired folder or folders using the Files " "manager" msgstr "" -#: ../../Zotlabs/Module/Photos.php:210 ../../Zotlabs/Module/Photos.php:1053 +#: ../../Zotlabs/Module/Photos.php:208 ../../Zotlabs/Module/Photos.php:1051 msgid "Delete Photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:533 +#: ../../Zotlabs/Module/Photos.php:531 msgid "No photos selected" msgstr "" -#: ../../Zotlabs/Module/Photos.php:582 +#: ../../Zotlabs/Module/Photos.php:580 msgid "Access to this item is restricted." msgstr "" -#: ../../Zotlabs/Module/Photos.php:621 +#: ../../Zotlabs/Module/Photos.php:619 #, php-format msgid "%1$.2f MB of %2$.2f MB photo storage used." msgstr "" -#: ../../Zotlabs/Module/Photos.php:624 +#: ../../Zotlabs/Module/Photos.php:622 #, php-format msgid "%1$.2f MB photo storage used." msgstr "" -#: ../../Zotlabs/Module/Photos.php:660 +#: ../../Zotlabs/Module/Photos.php:658 msgid "Upload Photos" msgstr "" -#: ../../Zotlabs/Module/Photos.php:664 +#: ../../Zotlabs/Module/Photos.php:662 msgid "Enter an album name" msgstr "" -#: ../../Zotlabs/Module/Photos.php:665 +#: ../../Zotlabs/Module/Photos.php:663 msgid "or select an existing album (doubleclick)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:666 +#: ../../Zotlabs/Module/Photos.php:664 msgid "Create a status post for this upload" msgstr "" -#: ../../Zotlabs/Module/Photos.php:667 +#: ../../Zotlabs/Module/Photos.php:665 msgid "Caption (optional):" msgstr "" -#: ../../Zotlabs/Module/Photos.php:668 +#: ../../Zotlabs/Module/Photos.php:666 msgid "Description (optional):" msgstr "" -#: ../../Zotlabs/Module/Photos.php:695 +#: ../../Zotlabs/Module/Photos.php:693 msgid "Album name could not be decoded" msgstr "" -#: ../../Zotlabs/Module/Photos.php:743 +#: ../../Zotlabs/Module/Photos.php:741 msgid "Contact Photos" msgstr "" -#: ../../Zotlabs/Module/Photos.php:766 +#: ../../Zotlabs/Module/Photos.php:764 msgid "Show Newest First" msgstr "" -#: ../../Zotlabs/Module/Photos.php:768 +#: ../../Zotlabs/Module/Photos.php:766 msgid "Show Oldest First" msgstr "" -#: ../../Zotlabs/Module/Photos.php:792 ../../Zotlabs/Module/Photos.php:1331 -#: ../../Zotlabs/Module/Embedphotos.php:141 ../../include/widgets.php:1557 +#: ../../Zotlabs/Module/Photos.php:790 ../../Zotlabs/Module/Photos.php:1329 +#: ../../Zotlabs/Module/Embedphotos.php:141 ../../include/widgets.php:1588 msgid "View Photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:823 -#: ../../Zotlabs/Module/Embedphotos.php:157 ../../include/widgets.php:1574 +#: ../../Zotlabs/Module/Photos.php:821 +#: ../../Zotlabs/Module/Embedphotos.php:157 ../../include/widgets.php:1605 msgid "Edit Album" msgstr "" -#: ../../Zotlabs/Module/Photos.php:870 +#: ../../Zotlabs/Module/Photos.php:868 msgid "Permission denied. Access to this item may be restricted." msgstr "" -#: ../../Zotlabs/Module/Photos.php:872 +#: ../../Zotlabs/Module/Photos.php:870 msgid "Photo not available" msgstr "" -#: ../../Zotlabs/Module/Photos.php:930 +#: ../../Zotlabs/Module/Photos.php:928 msgid "Use as profile photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:931 +#: ../../Zotlabs/Module/Photos.php:929 msgid "Use as cover photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:938 +#: ../../Zotlabs/Module/Photos.php:936 msgid "Private Photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:953 +#: ../../Zotlabs/Module/Photos.php:951 msgid "View Full Size" msgstr "" -#: ../../Zotlabs/Module/Photos.php:998 ../../Zotlabs/Module/Admin.php:1437 +#: ../../Zotlabs/Module/Photos.php:996 ../../Zotlabs/Module/Admin.php:1437 #: ../../Zotlabs/Module/Tagrm.php:137 msgid "Remove" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1032 +#: ../../Zotlabs/Module/Photos.php:1030 msgid "Edit photo" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1034 +#: ../../Zotlabs/Module/Photos.php:1032 msgid "Rotate CW (right)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1035 +#: ../../Zotlabs/Module/Photos.php:1033 msgid "Rotate CCW (left)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1038 +#: ../../Zotlabs/Module/Photos.php:1036 msgid "Enter a new album name" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1039 +#: ../../Zotlabs/Module/Photos.php:1037 msgid "or select an existing one (doubleclick)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1042 +#: ../../Zotlabs/Module/Photos.php:1040 msgid "Caption" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1044 +#: ../../Zotlabs/Module/Photos.php:1042 msgid "Add a Tag" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1048 +#: ../../Zotlabs/Module/Photos.php:1046 msgid "Example: @bob, @Barbara_Jensen, @jim@example.com" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1051 +#: ../../Zotlabs/Module/Photos.php:1049 msgid "Flag as adult in album view" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1070 ../../Zotlabs/Lib/ThreadItem.php:261 +#: ../../Zotlabs/Module/Photos.php:1068 ../../Zotlabs/Lib/ThreadItem.php:261 msgid "I like this (toggle)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1071 ../../Zotlabs/Lib/ThreadItem.php:262 +#: ../../Zotlabs/Module/Photos.php:1069 ../../Zotlabs/Lib/ThreadItem.php:262 msgid "I don't like this (toggle)" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1073 ../../Zotlabs/Lib/ThreadItem.php:397 +#: ../../Zotlabs/Module/Photos.php:1071 ../../Zotlabs/Lib/ThreadItem.php:397 #: ../../include/conversation.php:743 msgid "Please wait" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1089 ../../Zotlabs/Module/Photos.php:1207 +#: ../../Zotlabs/Module/Photos.php:1087 ../../Zotlabs/Module/Photos.php:1205 #: ../../Zotlabs/Lib/ThreadItem.php:707 msgid "This is you" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1091 ../../Zotlabs/Module/Photos.php:1209 +#: ../../Zotlabs/Module/Photos.php:1089 ../../Zotlabs/Module/Photos.php:1207 #: ../../Zotlabs/Lib/ThreadItem.php:709 ../../include/js_strings.php:6 msgid "Comment" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1107 ../../include/conversation.php:577 +#: ../../Zotlabs/Module/Photos.php:1105 ../../include/conversation.php:577 msgctxt "title" msgid "Likes" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1107 ../../include/conversation.php:577 +#: ../../Zotlabs/Module/Photos.php:1105 ../../include/conversation.php:577 msgctxt "title" msgid "Dislikes" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1108 ../../include/conversation.php:578 +#: ../../Zotlabs/Module/Photos.php:1106 ../../include/conversation.php:578 msgctxt "title" msgid "Agree" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1108 ../../include/conversation.php:578 +#: ../../Zotlabs/Module/Photos.php:1106 ../../include/conversation.php:578 msgctxt "title" msgid "Disagree" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1108 ../../include/conversation.php:578 +#: ../../Zotlabs/Module/Photos.php:1106 ../../include/conversation.php:578 msgctxt "title" msgid "Abstain" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1109 ../../include/conversation.php:579 +#: ../../Zotlabs/Module/Photos.php:1107 ../../include/conversation.php:579 msgctxt "title" msgid "Attending" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1109 ../../include/conversation.php:579 +#: ../../Zotlabs/Module/Photos.php:1107 ../../include/conversation.php:579 msgctxt "title" msgid "Not attending" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1109 ../../include/conversation.php:579 +#: ../../Zotlabs/Module/Photos.php:1107 ../../include/conversation.php:579 msgctxt "title" msgid "Might attend" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1126 ../../Zotlabs/Module/Photos.php:1138 +#: ../../Zotlabs/Module/Photos.php:1124 ../../Zotlabs/Module/Photos.php:1136 #: ../../Zotlabs/Lib/ThreadItem.php:181 ../../Zotlabs/Lib/ThreadItem.php:193 #: ../../include/conversation.php:1738 msgid "View all" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1130 ../../Zotlabs/Lib/ThreadItem.php:185 -#: ../../include/conversation.php:1762 ../../include/taxonomy.php:403 -#: ../../include/channel.php:1183 +#: ../../Zotlabs/Module/Photos.php:1128 ../../Zotlabs/Lib/ThreadItem.php:185 +#: ../../include/taxonomy.php:403 ../../include/channel.php:1183 +#: ../../include/conversation.php:1762 msgctxt "noun" msgid "Like" msgid_plural "Likes" msgstr[0] "" msgstr[1] "" -#: ../../Zotlabs/Module/Photos.php:1135 ../../Zotlabs/Lib/ThreadItem.php:190 +#: ../../Zotlabs/Module/Photos.php:1133 ../../Zotlabs/Lib/ThreadItem.php:190 #: ../../include/conversation.php:1765 msgctxt "noun" msgid "Dislike" @@ -2646,39 +2647,39 @@ msgid_plural "Dislikes" msgstr[0] "" msgstr[1] "" -#: ../../Zotlabs/Module/Photos.php:1235 +#: ../../Zotlabs/Module/Photos.php:1233 msgid "Photo Tools" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1244 +#: ../../Zotlabs/Module/Photos.php:1242 msgid "In This Photo:" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1249 +#: ../../Zotlabs/Module/Photos.php:1247 msgid "Map" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1257 ../../Zotlabs/Lib/ThreadItem.php:386 +#: ../../Zotlabs/Module/Photos.php:1255 ../../Zotlabs/Lib/ThreadItem.php:386 msgctxt "noun" msgid "Likes" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1258 ../../Zotlabs/Lib/ThreadItem.php:387 +#: ../../Zotlabs/Module/Photos.php:1256 ../../Zotlabs/Lib/ThreadItem.php:387 msgctxt "noun" msgid "Dislikes" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1263 ../../Zotlabs/Lib/ThreadItem.php:392 -#: ../../include/acl_selectors.php:285 +#: ../../Zotlabs/Module/Photos.php:1261 ../../Zotlabs/Lib/ThreadItem.php:392 +#: ../../include/acl_selectors.php:283 msgid "Close" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1337 +#: ../../Zotlabs/Module/Photos.php:1335 msgid "View Album" msgstr "" -#: ../../Zotlabs/Module/Photos.php:1348 ../../Zotlabs/Module/Photos.php:1361 -#: ../../Zotlabs/Module/Photos.php:1362 +#: ../../Zotlabs/Module/Photos.php:1346 ../../Zotlabs/Module/Photos.php:1359 +#: ../../Zotlabs/Module/Photos.php:1360 msgid "Recent Photos" msgstr "" @@ -3005,7 +3006,7 @@ msgstr "" msgid "Submit and proceed" msgstr "" -#: ../../Zotlabs/Module/Menu.php:107 ../../include/text.php:2243 +#: ../../Zotlabs/Module/Menu.php:107 ../../include/text.php:2247 msgid "Menus" msgstr "" @@ -3153,31 +3154,31 @@ msgstr "" msgid "Set your current mood and tell your friends" msgstr "" -#: ../../Zotlabs/Module/Network.php:96 +#: ../../Zotlabs/Module/Network.php:94 msgid "No such group" msgstr "" -#: ../../Zotlabs/Module/Network.php:136 +#: ../../Zotlabs/Module/Network.php:134 msgid "No such channel" msgstr "" -#: ../../Zotlabs/Module/Network.php:141 +#: ../../Zotlabs/Module/Network.php:139 msgid "forum" msgstr "" -#: ../../Zotlabs/Module/Network.php:153 +#: ../../Zotlabs/Module/Network.php:151 msgid "Search Results For:" msgstr "" -#: ../../Zotlabs/Module/Network.php:217 +#: ../../Zotlabs/Module/Network.php:215 msgid "Privacy group is empty" msgstr "" -#: ../../Zotlabs/Module/Network.php:226 +#: ../../Zotlabs/Module/Network.php:224 msgid "Privacy group: " msgstr "" -#: ../../Zotlabs/Module/Network.php:252 +#: ../../Zotlabs/Module/Network.php:250 msgid "Invalid connection." msgstr "" @@ -3207,15 +3208,15 @@ msgstr "" msgid "No matches" msgstr "" -#: ../../Zotlabs/Module/Channel.php:41 +#: ../../Zotlabs/Module/Channel.php:40 msgid "Posts and comments" msgstr "" -#: ../../Zotlabs/Module/Channel.php:42 +#: ../../Zotlabs/Module/Channel.php:41 msgid "Only posts" msgstr "" -#: ../../Zotlabs/Module/Channel.php:102 +#: ../../Zotlabs/Module/Channel.php:101 msgid "Insufficient permissions. Request redirected to profile page." msgstr "" @@ -3236,7 +3237,7 @@ msgid "Menu Item Permissions" msgstr "" #: ../../Zotlabs/Module/Mitem.php:154 ../../Zotlabs/Module/Mitem.php:227 -#: ../../Zotlabs/Module/Settings.php:1068 +#: ../../Zotlabs/Module/Settings.php:1142 msgid "(click to open/close)" msgstr "" @@ -3421,11 +3422,11 @@ msgstr "" msgid "Site settings updated." msgstr "" -#: ../../Zotlabs/Module/Admin.php:400 ../../include/text.php:2833 +#: ../../Zotlabs/Module/Admin.php:400 ../../include/text.php:2837 msgid "Default" msgstr "" -#: ../../Zotlabs/Module/Admin.php:410 ../../Zotlabs/Module/Settings.php:798 +#: ../../Zotlabs/Module/Admin.php:410 ../../Zotlabs/Module/Settings.php:872 msgid "mobile" msgstr "" @@ -3457,7 +3458,7 @@ msgstr "" msgid "My site offers free accounts with optional paid upgrades" msgstr "" -#: ../../Zotlabs/Module/Admin.php:491 ../../include/widgets.php:1440 +#: ../../Zotlabs/Module/Admin.php:491 ../../include/widgets.php:1471 msgid "Site" msgstr "" @@ -3744,12 +3745,12 @@ msgid "0 for no expiration of imported content" msgstr "" #: ../../Zotlabs/Module/Admin.php:677 ../../Zotlabs/Module/Admin.php:678 -#: ../../Zotlabs/Module/Settings.php:722 +#: ../../Zotlabs/Module/Settings.php:796 msgid "Off" msgstr "" #: ../../Zotlabs/Module/Admin.php:677 ../../Zotlabs/Module/Admin.php:678 -#: ../../Zotlabs/Module/Settings.php:722 +#: ../../Zotlabs/Module/Settings.php:796 msgid "On" msgstr "" @@ -3806,7 +3807,7 @@ msgid "" "embedded content from that site is explicitly blocked." msgstr "" -#: ../../Zotlabs/Module/Admin.php:756 ../../include/widgets.php:1443 +#: ../../Zotlabs/Module/Admin.php:756 ../../include/widgets.php:1474 msgid "Security" msgstr "" @@ -3973,7 +3974,7 @@ msgid "Account '%s' unblocked" msgstr "" #: ../../Zotlabs/Module/Admin.php:1031 ../../Zotlabs/Module/Admin.php:1044 -#: ../../include/widgets.php:1441 +#: ../../include/widgets.php:1472 msgid "Accounts" msgstr "" @@ -4079,7 +4080,7 @@ msgstr "" msgid "Channel '%s' code disallowed" msgstr "" -#: ../../Zotlabs/Module/Admin.php:1210 ../../include/widgets.php:1442 +#: ../../Zotlabs/Module/Admin.php:1210 ../../include/widgets.php:1473 msgid "Channels" msgstr "" @@ -4138,7 +4139,7 @@ msgid "Enable" msgstr "" #: ../../Zotlabs/Module/Admin.php:1330 ../../Zotlabs/Module/Admin.php:1420 -#: ../../include/widgets.php:1445 +#: ../../include/widgets.php:1476 msgid "Plugins" msgstr "" @@ -4147,8 +4148,8 @@ msgid "Toggle" msgstr "" #: ../../Zotlabs/Module/Admin.php:1332 ../../Zotlabs/Module/Admin.php:1615 -#: ../../Zotlabs/Lib/Apps.php:216 ../../include/nav.php:210 -#: ../../include/widgets.php:638 +#: ../../Zotlabs/Lib/Apps.php:216 ../../include/widgets.php:647 +#: ../../include/nav.php:210 msgid "Settings" msgstr "" @@ -4220,8 +4221,8 @@ msgstr "" msgid "Install a New Plugin Repository" msgstr "" -#: ../../Zotlabs/Module/Admin.php:1435 ../../Zotlabs/Module/Settings.php:77 -#: ../../Zotlabs/Module/Settings.php:616 ../../Zotlabs/Lib/Apps.php:334 +#: ../../Zotlabs/Module/Admin.php:1435 ../../Zotlabs/Module/Settings.php:75 +#: ../../Zotlabs/Module/Settings.php:651 ../../Zotlabs/Lib/Apps.php:334 msgid "Update" msgstr "" @@ -4238,7 +4239,7 @@ msgid "Screenshot" msgstr "" #: ../../Zotlabs/Module/Admin.php:1613 ../../Zotlabs/Module/Admin.php:1647 -#: ../../include/widgets.php:1446 +#: ../../include/widgets.php:1477 msgid "Themes" msgstr "" @@ -4254,8 +4255,8 @@ msgstr "" msgid "Log settings updated." msgstr "" -#: ../../Zotlabs/Module/Admin.php:1732 ../../include/widgets.php:1467 -#: ../../include/widgets.php:1477 +#: ../../Zotlabs/Module/Admin.php:1732 ../../include/widgets.php:1498 +#: ../../include/widgets.php:1508 msgid "Logs" msgstr "" @@ -4321,7 +4322,7 @@ msgstr "" msgid "Edit Profile Field" msgstr "" -#: ../../Zotlabs/Module/Admin.php:2106 ../../include/widgets.php:1448 +#: ../../Zotlabs/Module/Admin.php:2106 ../../include/widgets.php:1479 msgid "Profile Fields" msgstr "" @@ -4478,7 +4479,7 @@ msgstr "" msgid "OpenID protocol error. No ID returned." msgstr "" -#: ../../Zotlabs/Module/Openid.php:193 ../../include/auth.php:226 +#: ../../Zotlabs/Module/Openid.php:193 ../../include/auth.php:252 msgid "Login failed." msgstr "" @@ -4606,7 +4607,7 @@ msgstr "" msgid "Authenticate" msgstr "" -#: ../../Zotlabs/Module/Pubsites.php:22 ../../include/widgets.php:1328 +#: ../../Zotlabs/Module/Pubsites.php:22 ../../include/widgets.php:1337 msgid "Public Hubs" msgstr "" @@ -4663,7 +4664,7 @@ msgstr "" msgid "Block Name" msgstr "" -#: ../../Zotlabs/Module/Blocks.php:154 ../../include/text.php:2242 +#: ../../Zotlabs/Module/Blocks.php:154 ../../include/text.php:2246 msgid "Blocks" msgstr "" @@ -4704,8 +4705,8 @@ msgstr "" msgid "Description: " msgstr "" -#: ../../Zotlabs/Module/Apps.php:47 ../../include/nav.php:165 -#: ../../include/widgets.php:102 +#: ../../Zotlabs/Module/Apps.php:47 ../../include/widgets.php:102 +#: ../../include/nav.php:165 msgid "Apps" msgstr "" @@ -4890,7 +4891,7 @@ msgid "" msgstr "" #: ../../Zotlabs/Module/Removeaccount.php:60 -#: ../../Zotlabs/Module/Settings.php:705 +#: ../../Zotlabs/Module/Settings.php:740 msgid "Remove Account" msgstr "" @@ -4918,7 +4919,7 @@ msgid "" "removed from the network" msgstr "" -#: ../../Zotlabs/Module/Removeme.php:62 ../../Zotlabs/Module/Settings.php:1124 +#: ../../Zotlabs/Module/Removeme.php:62 ../../Zotlabs/Module/Settings.php:1198 msgid "Remove Channel" msgstr "" @@ -4994,608 +4995,628 @@ msgstr "" msgid "No service class restrictions found." msgstr "" -#: ../../Zotlabs/Module/Settings.php:69 +#: ../../Zotlabs/Module/Settings.php:67 msgid "Name is required" msgstr "" -#: ../../Zotlabs/Module/Settings.php:73 +#: ../../Zotlabs/Module/Settings.php:71 msgid "Key and Secret are required" msgstr "" -#: ../../Zotlabs/Module/Settings.php:225 +#: ../../Zotlabs/Module/Settings.php:154 +msgid "Token saved." +msgstr "" + +#: ../../Zotlabs/Module/Settings.php:260 msgid "Not valid email." msgstr "" -#: ../../Zotlabs/Module/Settings.php:228 +#: ../../Zotlabs/Module/Settings.php:263 msgid "Protected email address. Cannot change to that email." msgstr "" -#: ../../Zotlabs/Module/Settings.php:237 +#: ../../Zotlabs/Module/Settings.php:272 msgid "System failure storing new email. Please try again." msgstr "" -#: ../../Zotlabs/Module/Settings.php:254 +#: ../../Zotlabs/Module/Settings.php:289 msgid "Password verification failed." msgstr "" -#: ../../Zotlabs/Module/Settings.php:261 +#: ../../Zotlabs/Module/Settings.php:296 msgid "Passwords do not match. Password unchanged." msgstr "" -#: ../../Zotlabs/Module/Settings.php:265 +#: ../../Zotlabs/Module/Settings.php:300 msgid "Empty passwords are not allowed. Password unchanged." msgstr "" -#: ../../Zotlabs/Module/Settings.php:279 +#: ../../Zotlabs/Module/Settings.php:314 msgid "Password changed." msgstr "" -#: ../../Zotlabs/Module/Settings.php:281 +#: ../../Zotlabs/Module/Settings.php:316 msgid "Password update failed. Please try again." msgstr "" -#: ../../Zotlabs/Module/Settings.php:525 +#: ../../Zotlabs/Module/Settings.php:560 msgid "Settings updated." msgstr "" -#: ../../Zotlabs/Module/Settings.php:589 ../../Zotlabs/Module/Settings.php:615 -#: ../../Zotlabs/Module/Settings.php:651 +#: ../../Zotlabs/Module/Settings.php:624 ../../Zotlabs/Module/Settings.php:650 +#: ../../Zotlabs/Module/Settings.php:686 msgid "Add application" msgstr "" -#: ../../Zotlabs/Module/Settings.php:592 +#: ../../Zotlabs/Module/Settings.php:627 msgid "Name of application" msgstr "" -#: ../../Zotlabs/Module/Settings.php:593 ../../Zotlabs/Module/Settings.php:619 +#: ../../Zotlabs/Module/Settings.php:628 ../../Zotlabs/Module/Settings.php:654 msgid "Consumer Key" msgstr "" -#: ../../Zotlabs/Module/Settings.php:593 ../../Zotlabs/Module/Settings.php:594 +#: ../../Zotlabs/Module/Settings.php:628 ../../Zotlabs/Module/Settings.php:629 msgid "Automatically generated - change if desired. Max length 20" msgstr "" -#: ../../Zotlabs/Module/Settings.php:594 ../../Zotlabs/Module/Settings.php:620 +#: ../../Zotlabs/Module/Settings.php:629 ../../Zotlabs/Module/Settings.php:655 msgid "Consumer Secret" msgstr "" -#: ../../Zotlabs/Module/Settings.php:595 ../../Zotlabs/Module/Settings.php:621 +#: ../../Zotlabs/Module/Settings.php:630 ../../Zotlabs/Module/Settings.php:656 msgid "Redirect" msgstr "" -#: ../../Zotlabs/Module/Settings.php:595 +#: ../../Zotlabs/Module/Settings.php:630 msgid "" "Redirect URI - leave blank unless your application specifically requires this" msgstr "" -#: ../../Zotlabs/Module/Settings.php:596 ../../Zotlabs/Module/Settings.php:622 +#: ../../Zotlabs/Module/Settings.php:631 ../../Zotlabs/Module/Settings.php:657 msgid "Icon url" msgstr "" -#: ../../Zotlabs/Module/Settings.php:596 ../../Zotlabs/Module/Sources.php:112 +#: ../../Zotlabs/Module/Settings.php:631 ../../Zotlabs/Module/Sources.php:112 #: ../../Zotlabs/Module/Sources.php:147 msgid "Optional" msgstr "" -#: ../../Zotlabs/Module/Settings.php:607 +#: ../../Zotlabs/Module/Settings.php:642 msgid "Application not found." msgstr "" -#: ../../Zotlabs/Module/Settings.php:650 +#: ../../Zotlabs/Module/Settings.php:685 msgid "Connected Apps" msgstr "" -#: ../../Zotlabs/Module/Settings.php:654 +#: ../../Zotlabs/Module/Settings.php:689 msgid "Client key starts with" msgstr "" -#: ../../Zotlabs/Module/Settings.php:655 +#: ../../Zotlabs/Module/Settings.php:690 msgid "No name" msgstr "" -#: ../../Zotlabs/Module/Settings.php:656 +#: ../../Zotlabs/Module/Settings.php:691 msgid "Remove authorization" msgstr "" -#: ../../Zotlabs/Module/Settings.php:669 +#: ../../Zotlabs/Module/Settings.php:704 msgid "No feature settings configured" msgstr "" -#: ../../Zotlabs/Module/Settings.php:676 +#: ../../Zotlabs/Module/Settings.php:711 msgid "Feature/Addon Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:699 +#: ../../Zotlabs/Module/Settings.php:734 msgid "Account Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:700 +#: ../../Zotlabs/Module/Settings.php:735 msgid "Current Password" msgstr "" -#: ../../Zotlabs/Module/Settings.php:701 +#: ../../Zotlabs/Module/Settings.php:736 msgid "Enter New Password" msgstr "" -#: ../../Zotlabs/Module/Settings.php:702 +#: ../../Zotlabs/Module/Settings.php:737 msgid "Confirm New Password" msgstr "" -#: ../../Zotlabs/Module/Settings.php:702 +#: ../../Zotlabs/Module/Settings.php:737 msgid "Leave password fields blank unless changing" msgstr "" -#: ../../Zotlabs/Module/Settings.php:704 -#: ../../Zotlabs/Module/Settings.php:1041 +#: ../../Zotlabs/Module/Settings.php:739 +#: ../../Zotlabs/Module/Settings.php:1115 msgid "Email Address:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:706 +#: ../../Zotlabs/Module/Settings.php:741 msgid "Remove this account including all its channels" msgstr "" -#: ../../Zotlabs/Module/Settings.php:729 +#: ../../Zotlabs/Module/Settings.php:773 ../../include/widgets.php:614 +msgid "Guest Access Tokens" +msgstr "" + +#: ../../Zotlabs/Module/Settings.php:776 +msgid "Login Name" +msgstr "" + +#: ../../Zotlabs/Module/Settings.php:777 +msgid "Login Password" +msgstr "" + +#: ../../Zotlabs/Module/Settings.php:778 +msgid "Expires (yyyy-mm-dd)" +msgstr "" + +#: ../../Zotlabs/Module/Settings.php:803 msgid "Additional Features" msgstr "" -#: ../../Zotlabs/Module/Settings.php:753 +#: ../../Zotlabs/Module/Settings.php:827 msgid "Connector Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:792 +#: ../../Zotlabs/Module/Settings.php:866 msgid "No special theme for mobile devices" msgstr "" -#: ../../Zotlabs/Module/Settings.php:795 +#: ../../Zotlabs/Module/Settings.php:869 #, php-format msgid "%s - (Experimental)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:837 +#: ../../Zotlabs/Module/Settings.php:911 msgid "Display Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:838 +#: ../../Zotlabs/Module/Settings.php:912 msgid "Theme Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:839 +#: ../../Zotlabs/Module/Settings.php:913 msgid "Custom Theme Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:840 +#: ../../Zotlabs/Module/Settings.php:914 msgid "Content Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:846 +#: ../../Zotlabs/Module/Settings.php:920 msgid "Display Theme:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:847 +#: ../../Zotlabs/Module/Settings.php:921 msgid "Mobile Theme:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:848 +#: ../../Zotlabs/Module/Settings.php:922 msgid "Preload images before rendering the page" msgstr "" -#: ../../Zotlabs/Module/Settings.php:848 +#: ../../Zotlabs/Module/Settings.php:922 msgid "" "The subjective page load time will be longer but the page will be ready when " "displayed" msgstr "" -#: ../../Zotlabs/Module/Settings.php:849 +#: ../../Zotlabs/Module/Settings.php:923 msgid "Enable user zoom on mobile devices" msgstr "" -#: ../../Zotlabs/Module/Settings.php:850 +#: ../../Zotlabs/Module/Settings.php:924 msgid "Update browser every xx seconds" msgstr "" -#: ../../Zotlabs/Module/Settings.php:850 +#: ../../Zotlabs/Module/Settings.php:924 msgid "Minimum of 10 seconds, no maximum" msgstr "" -#: ../../Zotlabs/Module/Settings.php:851 +#: ../../Zotlabs/Module/Settings.php:925 msgid "Maximum number of conversations to load at any time:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:851 +#: ../../Zotlabs/Module/Settings.php:925 msgid "Maximum of 100 items" msgstr "" -#: ../../Zotlabs/Module/Settings.php:852 +#: ../../Zotlabs/Module/Settings.php:926 msgid "Show emoticons (smilies) as images" msgstr "" -#: ../../Zotlabs/Module/Settings.php:853 +#: ../../Zotlabs/Module/Settings.php:927 msgid "Link post titles to source" msgstr "" -#: ../../Zotlabs/Module/Settings.php:854 +#: ../../Zotlabs/Module/Settings.php:928 msgid "System Page Layout Editor - (advanced)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:857 +#: ../../Zotlabs/Module/Settings.php:931 msgid "Use blog/list mode on channel page" msgstr "" -#: ../../Zotlabs/Module/Settings.php:857 ../../Zotlabs/Module/Settings.php:858 +#: ../../Zotlabs/Module/Settings.php:931 ../../Zotlabs/Module/Settings.php:932 msgid "(comments displayed separately)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:858 +#: ../../Zotlabs/Module/Settings.php:932 msgid "Use blog/list mode on grid page" msgstr "" -#: ../../Zotlabs/Module/Settings.php:859 +#: ../../Zotlabs/Module/Settings.php:933 msgid "Channel page max height of content (in pixels)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:859 ../../Zotlabs/Module/Settings.php:860 +#: ../../Zotlabs/Module/Settings.php:933 ../../Zotlabs/Module/Settings.php:934 msgid "click to expand content exceeding this height" msgstr "" -#: ../../Zotlabs/Module/Settings.php:860 +#: ../../Zotlabs/Module/Settings.php:934 msgid "Grid page max height of content (in pixels)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:894 +#: ../../Zotlabs/Module/Settings.php:968 msgid "Nobody except yourself" msgstr "" -#: ../../Zotlabs/Module/Settings.php:895 +#: ../../Zotlabs/Module/Settings.php:969 msgid "Only those you specifically allow" msgstr "" -#: ../../Zotlabs/Module/Settings.php:896 +#: ../../Zotlabs/Module/Settings.php:970 msgid "Approved connections" msgstr "" -#: ../../Zotlabs/Module/Settings.php:897 +#: ../../Zotlabs/Module/Settings.php:971 msgid "Any connections" msgstr "" -#: ../../Zotlabs/Module/Settings.php:898 +#: ../../Zotlabs/Module/Settings.php:972 msgid "Anybody on this website" msgstr "" -#: ../../Zotlabs/Module/Settings.php:899 +#: ../../Zotlabs/Module/Settings.php:973 msgid "Anybody in this network" msgstr "" -#: ../../Zotlabs/Module/Settings.php:900 +#: ../../Zotlabs/Module/Settings.php:974 msgid "Anybody authenticated" msgstr "" -#: ../../Zotlabs/Module/Settings.php:901 +#: ../../Zotlabs/Module/Settings.php:975 msgid "Anybody on the internet" msgstr "" -#: ../../Zotlabs/Module/Settings.php:976 +#: ../../Zotlabs/Module/Settings.php:1050 msgid "Publish your default profile in the network directory" msgstr "" -#: ../../Zotlabs/Module/Settings.php:981 +#: ../../Zotlabs/Module/Settings.php:1055 msgid "Allow us to suggest you as a potential friend to new members?" msgstr "" -#: ../../Zotlabs/Module/Settings.php:990 +#: ../../Zotlabs/Module/Settings.php:1064 msgid "Your channel address is" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1032 +#: ../../Zotlabs/Module/Settings.php:1106 msgid "Channel Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1039 +#: ../../Zotlabs/Module/Settings.php:1113 msgid "Basic Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1040 ../../include/channel.php:1165 +#: ../../Zotlabs/Module/Settings.php:1114 ../../include/channel.php:1165 msgid "Full Name:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1042 +#: ../../Zotlabs/Module/Settings.php:1116 msgid "Your Timezone:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1043 +#: ../../Zotlabs/Module/Settings.php:1117 msgid "Default Post Location:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1043 +#: ../../Zotlabs/Module/Settings.php:1117 msgid "Geographical location to display on your posts" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1044 +#: ../../Zotlabs/Module/Settings.php:1118 msgid "Use Browser Location:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1046 +#: ../../Zotlabs/Module/Settings.php:1120 msgid "Adult Content" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1046 +#: ../../Zotlabs/Module/Settings.php:1120 msgid "" "This channel frequently or regularly publishes adult content. (Please tag " "any adult material and/or nudity with #NSFW)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1048 +#: ../../Zotlabs/Module/Settings.php:1122 msgid "Security and Privacy Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1051 +#: ../../Zotlabs/Module/Settings.php:1125 msgid "Your permissions are already configured. Click to view/adjust" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1053 +#: ../../Zotlabs/Module/Settings.php:1127 msgid "Hide my online presence" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1053 +#: ../../Zotlabs/Module/Settings.php:1127 msgid "Prevents displaying in your profile that you are online" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1055 +#: ../../Zotlabs/Module/Settings.php:1129 msgid "Simple Privacy Settings:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1056 +#: ../../Zotlabs/Module/Settings.php:1130 msgid "" "Very Public - extremely permissive (should be used with caution)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1057 +#: ../../Zotlabs/Module/Settings.php:1131 msgid "" "Typical - default public, privacy when desired (similar to social " "network permissions but with improved privacy)" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1058 +#: ../../Zotlabs/Module/Settings.php:1132 msgid "Private - default private, never open or public" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1059 +#: ../../Zotlabs/Module/Settings.php:1133 msgid "Blocked - default blocked to/from everybody" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1061 +#: ../../Zotlabs/Module/Settings.php:1135 msgid "Allow others to tag your posts" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1061 +#: ../../Zotlabs/Module/Settings.php:1135 msgid "" "Often used by the community to retro-actively flag inappropriate content" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1063 +#: ../../Zotlabs/Module/Settings.php:1137 msgid "Advanced Privacy Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1065 +#: ../../Zotlabs/Module/Settings.php:1139 msgid "Expire other channel content after this many days" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1065 +#: ../../Zotlabs/Module/Settings.php:1139 msgid "0 or blank to use the website limit." msgstr "" -#: ../../Zotlabs/Module/Settings.php:1065 +#: ../../Zotlabs/Module/Settings.php:1139 #, php-format msgid "This website expires after %d days." msgstr "" -#: ../../Zotlabs/Module/Settings.php:1065 +#: ../../Zotlabs/Module/Settings.php:1139 msgid "This website does not expire imported content." msgstr "" -#: ../../Zotlabs/Module/Settings.php:1065 +#: ../../Zotlabs/Module/Settings.php:1139 msgid "The website limit takes precedence if lower than your limit." msgstr "" -#: ../../Zotlabs/Module/Settings.php:1066 +#: ../../Zotlabs/Module/Settings.php:1140 msgid "Maximum Friend Requests/Day:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1066 +#: ../../Zotlabs/Module/Settings.php:1140 msgid "May reduce spam activity" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1067 +#: ../../Zotlabs/Module/Settings.php:1141 msgid "Default Post and Publish Permissions" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1069 +#: ../../Zotlabs/Module/Settings.php:1143 msgid "Use my default audience setting for the type of object published" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1072 +#: ../../Zotlabs/Module/Settings.php:1146 msgid "Channel permissions category:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1078 +#: ../../Zotlabs/Module/Settings.php:1152 msgid "Maximum private messages per day from unknown people:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1078 +#: ../../Zotlabs/Module/Settings.php:1152 msgid "Useful to reduce spamming" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1081 +#: ../../Zotlabs/Module/Settings.php:1155 msgid "Notification Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1082 +#: ../../Zotlabs/Module/Settings.php:1156 msgid "By default post a status message when:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1083 +#: ../../Zotlabs/Module/Settings.php:1157 msgid "accepting a friend request" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1084 +#: ../../Zotlabs/Module/Settings.php:1158 msgid "joining a forum/community" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1085 +#: ../../Zotlabs/Module/Settings.php:1159 msgid "making an interesting profile change" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1086 +#: ../../Zotlabs/Module/Settings.php:1160 msgid "Send a notification email when:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1087 +#: ../../Zotlabs/Module/Settings.php:1161 msgid "You receive a connection request" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1088 +#: ../../Zotlabs/Module/Settings.php:1162 msgid "Your connections are confirmed" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1089 +#: ../../Zotlabs/Module/Settings.php:1163 msgid "Someone writes on your profile wall" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1090 +#: ../../Zotlabs/Module/Settings.php:1164 msgid "Someone writes a followup comment" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1091 +#: ../../Zotlabs/Module/Settings.php:1165 msgid "You receive a private message" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1092 +#: ../../Zotlabs/Module/Settings.php:1166 msgid "You receive a friend suggestion" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1093 +#: ../../Zotlabs/Module/Settings.php:1167 msgid "You are tagged in a post" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1094 +#: ../../Zotlabs/Module/Settings.php:1168 msgid "You are poked/prodded/etc. in a post" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1097 +#: ../../Zotlabs/Module/Settings.php:1171 msgid "Show visual notifications including:" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1099 +#: ../../Zotlabs/Module/Settings.php:1173 msgid "Unseen grid activity" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1100 +#: ../../Zotlabs/Module/Settings.php:1174 msgid "Unseen channel activity" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1101 +#: ../../Zotlabs/Module/Settings.php:1175 msgid "Unseen private messages" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1101 -#: ../../Zotlabs/Module/Settings.php:1106 -#: ../../Zotlabs/Module/Settings.php:1107 -#: ../../Zotlabs/Module/Settings.php:1108 +#: ../../Zotlabs/Module/Settings.php:1175 +#: ../../Zotlabs/Module/Settings.php:1180 +#: ../../Zotlabs/Module/Settings.php:1181 +#: ../../Zotlabs/Module/Settings.php:1182 msgid "Recommended" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1102 +#: ../../Zotlabs/Module/Settings.php:1176 msgid "Upcoming events" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1103 +#: ../../Zotlabs/Module/Settings.php:1177 msgid "Events today" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1104 +#: ../../Zotlabs/Module/Settings.php:1178 msgid "Upcoming birthdays" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1104 +#: ../../Zotlabs/Module/Settings.php:1178 msgid "Not available in all themes" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1105 +#: ../../Zotlabs/Module/Settings.php:1179 msgid "System (personal) notifications" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1106 +#: ../../Zotlabs/Module/Settings.php:1180 msgid "System info messages" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1107 +#: ../../Zotlabs/Module/Settings.php:1181 msgid "System critical alerts" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1108 +#: ../../Zotlabs/Module/Settings.php:1182 msgid "New connections" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1109 +#: ../../Zotlabs/Module/Settings.php:1183 msgid "System Registrations" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1110 +#: ../../Zotlabs/Module/Settings.php:1184 msgid "" "Also show new wall posts, private messages and connections under Notices" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1112 +#: ../../Zotlabs/Module/Settings.php:1186 msgid "Notify me of events this many days in advance" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1112 +#: ../../Zotlabs/Module/Settings.php:1186 msgid "Must be greater than 0" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1114 +#: ../../Zotlabs/Module/Settings.php:1188 msgid "Advanced Account/Page Type Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1115 +#: ../../Zotlabs/Module/Settings.php:1189 msgid "Change the behaviour of this account for special situations" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1118 +#: ../../Zotlabs/Module/Settings.php:1192 msgid "" "Please enable expert mode (in Settings > " "Additional features) to adjust!" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1119 +#: ../../Zotlabs/Module/Settings.php:1193 msgid "Miscellaneous Settings" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1120 +#: ../../Zotlabs/Module/Settings.php:1194 msgid "Default photo upload folder" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1120 -#: ../../Zotlabs/Module/Settings.php:1121 +#: ../../Zotlabs/Module/Settings.php:1194 +#: ../../Zotlabs/Module/Settings.php:1195 msgid "%Y - current year, %m - current month" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1121 +#: ../../Zotlabs/Module/Settings.php:1195 msgid "Default file upload folder" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1123 +#: ../../Zotlabs/Module/Settings.php:1197 msgid "Personal menu to display in your channel pages" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1125 +#: ../../Zotlabs/Module/Settings.php:1199 msgid "Remove this channel." msgstr "" -#: ../../Zotlabs/Module/Settings.php:1126 +#: ../../Zotlabs/Module/Settings.php:1200 msgid "Firefox Share $Projectname provider" msgstr "" -#: ../../Zotlabs/Module/Settings.php:1127 +#: ../../Zotlabs/Module/Settings.php:1201 msgid "Start calendar week on monday" msgstr "" @@ -5628,7 +5649,7 @@ msgid "" msgstr "" #: ../../Zotlabs/Module/Setup.php:204 ../../Zotlabs/Module/Setup.php:266 -#: ../../Zotlabs/Module/Setup.php:727 +#: ../../Zotlabs/Module/Setup.php:722 msgid "Please see the file \"install/INSTALL.txt\"." msgstr "" @@ -5828,170 +5849,162 @@ msgid "mb_string PHP module" msgstr "" #: ../../Zotlabs/Module/Setup.php:496 -msgid "mcrypt PHP module" -msgstr "" - -#: ../../Zotlabs/Module/Setup.php:497 msgid "xml PHP module" msgstr "" -#: ../../Zotlabs/Module/Setup.php:501 ../../Zotlabs/Module/Setup.php:503 +#: ../../Zotlabs/Module/Setup.php:500 ../../Zotlabs/Module/Setup.php:502 msgid "Apache mod_rewrite module" msgstr "" -#: ../../Zotlabs/Module/Setup.php:501 +#: ../../Zotlabs/Module/Setup.php:500 msgid "" "Error: Apache webserver mod-rewrite module is required but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:507 ../../Zotlabs/Module/Setup.php:510 +#: ../../Zotlabs/Module/Setup.php:506 ../../Zotlabs/Module/Setup.php:509 msgid "proc_open" msgstr "" -#: ../../Zotlabs/Module/Setup.php:507 +#: ../../Zotlabs/Module/Setup.php:506 msgid "" "Error: proc_open is required but is either not installed or has been " "disabled in php.ini" msgstr "" -#: ../../Zotlabs/Module/Setup.php:515 +#: ../../Zotlabs/Module/Setup.php:514 msgid "Error: libCURL PHP module required but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:519 +#: ../../Zotlabs/Module/Setup.php:518 msgid "" "Error: GD graphics PHP module with JPEG support required but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:523 +#: ../../Zotlabs/Module/Setup.php:522 msgid "Error: openssl PHP module required but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:527 +#: ../../Zotlabs/Module/Setup.php:526 msgid "" "Error: mysqli or postgres PHP module required but neither are installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:531 +#: ../../Zotlabs/Module/Setup.php:530 msgid "Error: mb_string PHP module required but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:535 -msgid "Error: mcrypt PHP module required but not installed." -msgstr "" - -#: ../../Zotlabs/Module/Setup.php:539 +#: ../../Zotlabs/Module/Setup.php:534 msgid "Error: xml PHP module required for DAV but not installed." msgstr "" -#: ../../Zotlabs/Module/Setup.php:557 +#: ../../Zotlabs/Module/Setup.php:552 msgid "" "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." msgstr "" -#: ../../Zotlabs/Module/Setup.php:558 +#: ../../Zotlabs/Module/Setup.php:553 msgid "" "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." msgstr "" -#: ../../Zotlabs/Module/Setup.php:559 +#: ../../Zotlabs/Module/Setup.php:554 msgid "" "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." msgstr "" -#: ../../Zotlabs/Module/Setup.php:560 +#: ../../Zotlabs/Module/Setup.php:555 msgid "" "You can alternatively skip this procedure and perform a manual installation. " "Please see the file \"install/INSTALL.txt\" for instructions." msgstr "" -#: ../../Zotlabs/Module/Setup.php:563 +#: ../../Zotlabs/Module/Setup.php:558 msgid ".htconfig.php is writable" msgstr "" -#: ../../Zotlabs/Module/Setup.php:577 +#: ../../Zotlabs/Module/Setup.php:572 msgid "" "Red uses the Smarty3 template engine to render its web views. Smarty3 " "compiles templates to PHP to speed up rendering." msgstr "" -#: ../../Zotlabs/Module/Setup.php:578 +#: ../../Zotlabs/Module/Setup.php:573 #, php-format msgid "" "In order to store these compiled templates, the web server needs to have " "write access to the directory %s under the top level web folder." msgstr "" -#: ../../Zotlabs/Module/Setup.php:579 ../../Zotlabs/Module/Setup.php:600 +#: ../../Zotlabs/Module/Setup.php:574 ../../Zotlabs/Module/Setup.php:595 msgid "" "Please ensure that the user that your web server runs as (e.g. www-data) has " "write access to this folder." msgstr "" -#: ../../Zotlabs/Module/Setup.php:580 +#: ../../Zotlabs/Module/Setup.php:575 #, php-format msgid "" "Note: as a security measure, you should give the web server write access to " "%s only--not the template files (.tpl) that it contains." msgstr "" -#: ../../Zotlabs/Module/Setup.php:583 +#: ../../Zotlabs/Module/Setup.php:578 #, php-format msgid "%s is writable" msgstr "" -#: ../../Zotlabs/Module/Setup.php:599 +#: ../../Zotlabs/Module/Setup.php:594 msgid "" "This software 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" msgstr "" -#: ../../Zotlabs/Module/Setup.php:603 +#: ../../Zotlabs/Module/Setup.php:598 msgid "store is writable" msgstr "" -#: ../../Zotlabs/Module/Setup.php:636 +#: ../../Zotlabs/Module/Setup.php:631 msgid "" "SSL certificate cannot be validated. Fix certificate or disable https access " "to this site." msgstr "" -#: ../../Zotlabs/Module/Setup.php:637 +#: ../../Zotlabs/Module/Setup.php:632 msgid "" "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!" msgstr "" -#: ../../Zotlabs/Module/Setup.php:638 +#: ../../Zotlabs/Module/Setup.php:633 msgid "" "This restriction is incorporated because public posts from you may for " "example contain references to images on your own hub." msgstr "" -#: ../../Zotlabs/Module/Setup.php:639 +#: ../../Zotlabs/Module/Setup.php:634 msgid "" "If your certificate is not recognized, members of other sites (who may " "themselves have valid certificates) will get a warning message on their own " "site complaining about security issues." msgstr "" -#: ../../Zotlabs/Module/Setup.php:640 +#: ../../Zotlabs/Module/Setup.php:635 msgid "" "This can cause usability issues elsewhere (not just on your own site) so we " "must insist on this requirement." msgstr "" -#: ../../Zotlabs/Module/Setup.php:641 +#: ../../Zotlabs/Module/Setup.php:636 msgid "" "Providers are available that issue free certificates which are browser-valid." msgstr "" -#: ../../Zotlabs/Module/Setup.php:643 +#: ../../Zotlabs/Module/Setup.php:638 msgid "" "If you are confident that the certificate is valid and signed by a trusted " "authority, check to see if you have failed to install an intermediate cert. " @@ -5999,36 +6012,36 @@ msgid "" "server communications." msgstr "" -#: ../../Zotlabs/Module/Setup.php:646 +#: ../../Zotlabs/Module/Setup.php:641 msgid "SSL certificate validation" msgstr "" -#: ../../Zotlabs/Module/Setup.php:652 +#: ../../Zotlabs/Module/Setup.php:647 msgid "" "Url rewrite in .htaccess is not working. Check your server configuration." "Test: " msgstr "" -#: ../../Zotlabs/Module/Setup.php:655 +#: ../../Zotlabs/Module/Setup.php:650 msgid "Url rewrite is working" msgstr "" -#: ../../Zotlabs/Module/Setup.php:664 +#: ../../Zotlabs/Module/Setup.php:659 msgid "" "The database configuration file \".htconfig.php\" could not be written. " "Please use the enclosed text to create a configuration file in your web " "server root." msgstr "" -#: ../../Zotlabs/Module/Setup.php:688 +#: ../../Zotlabs/Module/Setup.php:683 msgid "Errors encountered creating database tables." msgstr "" -#: ../../Zotlabs/Module/Setup.php:725 +#: ../../Zotlabs/Module/Setup.php:720 msgid "

What next

" msgstr "" -#: ../../Zotlabs/Module/Setup.php:726 +#: ../../Zotlabs/Module/Setup.php:721 msgid "" "IMPORTANT: You will need to [manually] setup a scheduled task for the poller." msgstr "" @@ -6122,7 +6135,7 @@ msgstr "" msgid "*" msgstr "" -#: ../../Zotlabs/Module/Sources.php:96 ../../include/widgets.php:630 +#: ../../Zotlabs/Module/Sources.php:96 ../../include/widgets.php:639 #: ../../include/features.php:72 msgid "Channel Sources" msgstr "" @@ -6204,7 +6217,7 @@ msgid "post" msgstr "" #: ../../Zotlabs/Module/Tagger.php:57 ../../include/conversation.php:150 -#: ../../include/text.php:1925 +#: ../../include/text.php:1929 msgid "comment" msgstr "" @@ -6225,20 +6238,20 @@ msgstr "" msgid "Select a tag to remove: " msgstr "" -#: ../../Zotlabs/Module/Webpages.php:192 ../../Zotlabs/Lib/Apps.php:218 -#: ../../include/conversation.php:1700 ../../include/nav.php:106 +#: ../../Zotlabs/Module/Webpages.php:191 ../../Zotlabs/Lib/Apps.php:218 +#: ../../include/nav.php:106 ../../include/conversation.php:1700 msgid "Webpages" msgstr "" -#: ../../Zotlabs/Module/Webpages.php:203 ../../include/page_widgets.php:44 +#: ../../Zotlabs/Module/Webpages.php:202 ../../include/page_widgets.php:44 msgid "Actions" msgstr "" -#: ../../Zotlabs/Module/Webpages.php:204 ../../include/page_widgets.php:45 +#: ../../Zotlabs/Module/Webpages.php:203 ../../include/page_widgets.php:45 msgid "Page Link" msgstr "" -#: ../../Zotlabs/Module/Webpages.php:205 +#: ../../Zotlabs/Module/Webpages.php:204 msgid "Page Title" msgstr "" @@ -6247,8 +6260,8 @@ msgid "Not found" msgstr "" #: ../../Zotlabs/Module/Wiki.php:92 ../../Zotlabs/Lib/Apps.php:219 -#: ../../include/conversation.php:1710 ../../include/conversation.php:1713 -#: ../../include/nav.php:108 ../../include/features.php:55 +#: ../../include/nav.php:108 ../../include/conversation.php:1710 +#: ../../include/conversation.php:1713 ../../include/features.php:55 msgid "Wiki" msgstr "" @@ -6627,8 +6640,8 @@ msgstr "" msgid "Channel Home" msgstr "" -#: ../../Zotlabs/Lib/Apps.php:223 ../../include/conversation.php:1664 -#: ../../include/conversation.php:1667 ../../include/nav.php:203 +#: ../../Zotlabs/Lib/Apps.php:223 ../../include/nav.php:203 +#: ../../include/conversation.php:1664 ../../include/conversation.php:1667 msgid "Events" msgstr "" @@ -6660,7 +6673,7 @@ msgstr "" msgid "Invite" msgstr "" -#: ../../Zotlabs/Lib/Apps.php:235 ../../include/widgets.php:1444 +#: ../../Zotlabs/Lib/Apps.php:235 ../../include/widgets.php:1475 msgid "Features" msgstr "" @@ -6848,6 +6861,69 @@ msgstr "" msgid "Video" msgstr "" +#: ../../Zotlabs/Lib/PermissionDescription.php:31 +#: ../../include/acl_selectors.php:230 +msgid "Visible to your default audience" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:115 +#: ../../include/acl_selectors.php:266 +msgid "Only me" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:116 +msgid "Public" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:117 +msgid "Anybody in the $Projectname network" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:118 +#, php-format +msgid "Any account on %s" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:119 +msgid "Any of my connections" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:120 +msgid "Only connections I specifically allow" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:121 +msgid "Anybody authenticated (could include visitors from other networks)" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:122 +msgid "Any connections including those who haven't yet been approved" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:161 +msgid "" +"This is your default setting for the audience of your normal stream, and " +"posts." +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:162 +msgid "" +"This is your default setting for who can view your default channel profile" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:163 +msgid "This is your default setting for who can view your connections" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:164 +msgid "" +"This is your default setting for who can view your file storage and photos" +msgstr "" + +#: ../../Zotlabs/Lib/PermissionDescription.php:165 +msgid "This is your default setting for the audience of your webpages" +msgstr "" + #: ../../include/Import/import_diaspora.php:16 msgid "No username found in import file." msgstr "" @@ -6861,690 +6937,262 @@ msgstr "" msgid "Cannot locate DNS info for database server '%s'" msgstr "" -#: ../../include/acl_selectors.php:232 -#: ../../include/PermissionDescription.php:31 -msgid "Visible to your default audience" +#: ../../include/widgets.php:46 ../../include/widgets.php:429 +#: ../../include/taxonomy.php:188 ../../include/taxonomy.php:270 +#: ../../include/contact_widgets.php:91 +msgid "Categories" msgstr "" -#: ../../include/acl_selectors.php:268 -#: ../../include/PermissionDescription.php:115 -msgid "Only me" +#: ../../include/widgets.php:103 +msgid "System" msgstr "" -#: ../../include/acl_selectors.php:271 -msgid "Who can see this?" +#: ../../include/widgets.php:106 +msgid "New App" msgstr "" -#: ../../include/acl_selectors.php:272 -msgid "Custom selection" +#: ../../include/widgets.php:154 +msgid "Suggestions" msgstr "" -#: ../../include/acl_selectors.php:273 -msgid "" -"Select \"Show\" to allow viewing. \"Don't show\" lets you override and limit " -"the scope of \"Show\"." +#: ../../include/widgets.php:155 +msgid "See more..." msgstr "" -#: ../../include/acl_selectors.php:274 -msgid "Show" -msgstr "" - -#: ../../include/acl_selectors.php:275 -msgid "Don't show" -msgstr "" - -#: ../../include/acl_selectors.php:281 -msgid "Other networks and post services" -msgstr "" - -#: ../../include/acl_selectors.php:311 +#: ../../include/widgets.php:175 #, php-format -msgid "" -"Post permissions %s cannot be changed %s after a post is shared.
These " -"permissions set who is allowed to view the post." +msgid "You have %1$.0f of %2$.0f allowed connections." msgstr "" -#: ../../include/conversation.php:204 -#, php-format -msgid "%1$s is now connected with %2$s" +#: ../../include/widgets.php:181 +msgid "Add New Connection" msgstr "" -#: ../../include/conversation.php:239 -#, php-format -msgid "%1$s poked %2$s" +#: ../../include/widgets.php:182 +msgid "Enter channel address" msgstr "" -#: ../../include/conversation.php:243 ../../include/text.php:1009 -#: ../../include/text.php:1014 -msgid "poked" +#: ../../include/widgets.php:183 +msgid "Examples: bob@example.com, https://example.com/barbara" msgstr "" -#: ../../include/conversation.php:694 -#, php-format -msgid "View %s's profile @ %s" +#: ../../include/widgets.php:199 +msgid "Notes" msgstr "" -#: ../../include/conversation.php:713 -msgid "Categories:" +#: ../../include/widgets.php:273 +msgid "Remove term" msgstr "" -#: ../../include/conversation.php:714 -msgid "Filed under:" +#: ../../include/widgets.php:281 ../../include/features.php:85 +msgid "Saved Searches" msgstr "" -#: ../../include/conversation.php:741 -msgid "View in context" -msgstr "" - -#: ../../include/conversation.php:850 -msgid "remove" -msgstr "" - -#: ../../include/conversation.php:854 ../../include/nav.php:249 -msgid "Loading..." -msgstr "" - -#: ../../include/conversation.php:855 -msgid "Delete Selected Items" -msgstr "" - -#: ../../include/conversation.php:951 -msgid "View Source" -msgstr "" - -#: ../../include/conversation.php:952 -msgid "Follow Thread" -msgstr "" - -#: ../../include/conversation.php:953 -msgid "Unfollow Thread" -msgstr "" - -#: ../../include/conversation.php:958 -msgid "Activity/Posts" -msgstr "" - -#: ../../include/conversation.php:960 -msgid "Edit Connection" -msgstr "" - -#: ../../include/conversation.php:961 -msgid "Message" -msgstr "" - -#: ../../include/conversation.php:1078 -#, php-format -msgid "%s likes this." -msgstr "" - -#: ../../include/conversation.php:1078 -#, php-format -msgid "%s doesn't like this." -msgstr "" - -#: ../../include/conversation.php:1082 -#, php-format -msgid "%2$d people like this." -msgid_plural "%2$d people like this." -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1084 -#, php-format -msgid "%2$d people don't like this." -msgid_plural "%2$d people don't like this." -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1090 -msgid "and" -msgstr "" - -#: ../../include/conversation.php:1093 -#, php-format -msgid ", and %d other people" -msgid_plural ", and %d other people" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1094 -#, php-format -msgid "%s like this." -msgstr "" - -#: ../../include/conversation.php:1094 -#, php-format -msgid "%s don't like this." -msgstr "" - -#: ../../include/conversation.php:1133 -msgid "Set your location" -msgstr "" - -#: ../../include/conversation.php:1134 -msgid "Clear browser location" -msgstr "" - -#: ../../include/conversation.php:1182 -msgid "Tag term:" -msgstr "" - -#: ../../include/conversation.php:1183 -msgid "Where are you right now?" -msgstr "" - -#: ../../include/conversation.php:1221 -msgid "Page link name" -msgstr "" - -#: ../../include/conversation.php:1224 -msgid "Post as" -msgstr "" - -#: ../../include/conversation.php:1238 -msgid "Toggle voting" -msgstr "" - -#: ../../include/conversation.php:1246 -msgid "Categories (optional, comma-separated list)" -msgstr "" - -#: ../../include/conversation.php:1269 -msgid "Set publish date" -msgstr "" - -#: ../../include/conversation.php:1518 -msgid "Discover" -msgstr "" - -#: ../../include/conversation.php:1521 -msgid "Imported public streams" -msgstr "" - -#: ../../include/conversation.php:1526 -msgid "Commented Order" -msgstr "" - -#: ../../include/conversation.php:1529 -msgid "Sort by Comment Date" -msgstr "" - -#: ../../include/conversation.php:1533 -msgid "Posted Order" -msgstr "" - -#: ../../include/conversation.php:1536 -msgid "Sort by Post Date" -msgstr "" - -#: ../../include/conversation.php:1544 -msgid "Posts that mention or involve you" -msgstr "" - -#: ../../include/conversation.php:1553 -msgid "Activity Stream - by date" -msgstr "" - -#: ../../include/conversation.php:1559 -msgid "Starred" -msgstr "" - -#: ../../include/conversation.php:1562 -msgid "Favourite Posts" -msgstr "" - -#: ../../include/conversation.php:1569 -msgid "Spam" -msgstr "" - -#: ../../include/conversation.php:1572 -msgid "Posts flagged as SPAM" -msgstr "" - -#: ../../include/conversation.php:1629 -msgid "Status Messages and Posts" -msgstr "" - -#: ../../include/conversation.php:1638 -msgid "About" -msgstr "" - -#: ../../include/conversation.php:1641 -msgid "Profile Details" -msgstr "" - -#: ../../include/conversation.php:1650 ../../include/photos.php:506 -msgid "Photo Albums" -msgstr "" - -#: ../../include/conversation.php:1657 -msgid "Files and Storage" -msgstr "" - -#: ../../include/conversation.php:1677 ../../include/conversation.php:1680 -#: ../../include/widgets.php:827 -msgid "Chatrooms" -msgstr "" - -#: ../../include/conversation.php:1690 ../../include/nav.php:102 -msgid "Bookmarks" -msgstr "" - -#: ../../include/conversation.php:1693 -msgid "Saved Bookmarks" -msgstr "" - -#: ../../include/conversation.php:1703 -msgid "Manage Webpages" -msgstr "" - -#: ../../include/conversation.php:1768 -msgctxt "noun" -msgid "Attending" -msgid_plural "Attending" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1771 -msgctxt "noun" -msgid "Not Attending" -msgid_plural "Not Attending" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1774 -msgctxt "noun" -msgid "Undecided" -msgid_plural "Undecided" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1777 -msgctxt "noun" -msgid "Agree" -msgid_plural "Agrees" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1780 -msgctxt "noun" -msgid "Disagree" -msgid_plural "Disagrees" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/conversation.php:1783 -msgctxt "noun" -msgid "Abstain" -msgid_plural "Abstains" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/connections.php:95 -msgid "New window" -msgstr "" - -#: ../../include/connections.php:96 -msgid "Open the selected location in a different window or browser tab" -msgstr "" - -#: ../../include/connections.php:214 -#, php-format -msgid "User '%s' deleted" -msgstr "" - -#: ../../include/group.php:26 -msgid "" -"A deleted group with this name was revived. Existing item permissions " -"may apply to this group and any future members. If this is " -"not what you intended, please create another group with a different name." -msgstr "" - -#: ../../include/group.php:248 -msgid "Add new connections to this privacy group" -msgstr "" - -#: ../../include/group.php:289 -msgid "edit" -msgstr "" - -#: ../../include/group.php:311 ../../include/features.php:84 -msgid "Privacy Groups" -msgstr "" - -#: ../../include/group.php:312 -msgid "Edit group" -msgstr "" - -#: ../../include/group.php:313 -msgid "Add privacy group" -msgstr "" - -#: ../../include/group.php:314 -msgid "Channels not in any privacy group" -msgstr "" - -#: ../../include/group.php:316 ../../include/widgets.php:282 +#: ../../include/widgets.php:282 ../../include/group.php:316 msgid "add" msgstr "" -#: ../../include/js_strings.php:5 -msgid "Delete this item?" +#: ../../include/widgets.php:310 ../../include/features.php:99 +#: ../../include/contact_widgets.php:53 +msgid "Saved Folders" msgstr "" -#: ../../include/js_strings.php:8 -#, php-format -msgid "%s show less" +#: ../../include/widgets.php:313 ../../include/widgets.php:432 +#: ../../include/contact_widgets.php:56 ../../include/contact_widgets.php:94 +msgid "Everything" msgstr "" -#: ../../include/js_strings.php:9 -#, php-format -msgid "%s expand" +#: ../../include/widgets.php:354 +msgid "Archives" msgstr "" -#: ../../include/js_strings.php:10 -#, php-format -msgid "%s collapse" +#: ../../include/widgets.php:516 +msgid "Refresh" msgstr "" -#: ../../include/js_strings.php:11 -msgid "Password too short" +#: ../../include/widgets.php:556 +msgid "Account settings" msgstr "" -#: ../../include/js_strings.php:12 -msgid "Passwords do not match" +#: ../../include/widgets.php:562 +msgid "Channel settings" msgstr "" -#: ../../include/js_strings.php:13 -msgid "everybody" +#: ../../include/widgets.php:571 +msgid "Additional features" msgstr "" -#: ../../include/js_strings.php:14 -msgid "Secret Passphrase" +#: ../../include/widgets.php:578 +msgid "Feature/Addon settings" msgstr "" -#: ../../include/js_strings.php:15 -msgid "Passphrase hint" +#: ../../include/widgets.php:584 +msgid "Display settings" msgstr "" -#: ../../include/js_strings.php:16 -msgid "Notice: Permissions have changed but have not yet been submitted." +#: ../../include/widgets.php:591 +msgid "Manage locations" msgstr "" -#: ../../include/js_strings.php:17 -msgid "close all" +#: ../../include/widgets.php:600 +msgid "Export channel" msgstr "" -#: ../../include/js_strings.php:18 -msgid "Nothing new here" +#: ../../include/widgets.php:607 +msgid "Connected apps" msgstr "" -#: ../../include/js_strings.php:19 -msgid "Rate This Channel (this is public)" +#: ../../include/widgets.php:631 +msgid "Premium Channel Settings" msgstr "" -#: ../../include/js_strings.php:21 -msgid "Describe (optional)" +#: ../../include/widgets.php:660 +msgid "Private Mail Menu" msgstr "" -#: ../../include/js_strings.php:23 -msgid "Please enter a link URL" +#: ../../include/widgets.php:662 +msgid "Combined View" msgstr "" -#: ../../include/js_strings.php:24 -msgid "Unsaved changes. Are you sure you wish to leave this page?" +#: ../../include/widgets.php:667 ../../include/nav.php:198 +msgid "Inbox" msgstr "" -#: ../../include/js_strings.php:27 -msgid "timeago.prefixAgo" +#: ../../include/widgets.php:672 ../../include/nav.php:199 +msgid "Outbox" msgstr "" -#: ../../include/js_strings.php:28 -msgid "timeago.prefixFromNow" +#: ../../include/widgets.php:677 ../../include/nav.php:200 +msgid "New Message" msgstr "" -#: ../../include/js_strings.php:29 -msgid "ago" +#: ../../include/widgets.php:694 ../../include/widgets.php:706 +msgid "Conversations" msgstr "" -#: ../../include/js_strings.php:30 -msgid "from now" +#: ../../include/widgets.php:698 +msgid "Received Messages" msgstr "" -#: ../../include/js_strings.php:31 -msgid "less than a minute" +#: ../../include/widgets.php:702 +msgid "Sent Messages" msgstr "" -#: ../../include/js_strings.php:32 -msgid "about a minute" +#: ../../include/widgets.php:716 +msgid "No messages." msgstr "" -#: ../../include/js_strings.php:33 -#, php-format -msgid "%d minutes" +#: ../../include/widgets.php:734 +msgid "Delete conversation" msgstr "" -#: ../../include/js_strings.php:34 -msgid "about an hour" +#: ../../include/widgets.php:760 +msgid "Events Tools" msgstr "" -#: ../../include/js_strings.php:35 -#, php-format -msgid "about %d hours" +#: ../../include/widgets.php:761 +msgid "Export Calendar" msgstr "" -#: ../../include/js_strings.php:36 -msgid "a day" +#: ../../include/widgets.php:762 +msgid "Import Calendar" msgstr "" -#: ../../include/js_strings.php:37 -#, php-format -msgid "%d days" +#: ../../include/widgets.php:836 ../../include/conversation.php:1677 +#: ../../include/conversation.php:1680 +msgid "Chatrooms" msgstr "" -#: ../../include/js_strings.php:38 -msgid "about a month" +#: ../../include/widgets.php:840 +msgid "Overview" msgstr "" -#: ../../include/js_strings.php:39 -#, php-format -msgid "%d months" +#: ../../include/widgets.php:847 +msgid "Chat Members" msgstr "" -#: ../../include/js_strings.php:40 -msgid "about a year" +#: ../../include/widgets.php:869 +msgid "Wiki List" msgstr "" -#: ../../include/js_strings.php:41 -#, php-format -msgid "%d years" +#: ../../include/widgets.php:907 +msgid "Wiki Pages" msgstr "" -#: ../../include/js_strings.php:42 -msgid " " +#: ../../include/widgets.php:942 +msgid "Bookmarked Chatrooms" msgstr "" -#: ../../include/js_strings.php:43 -msgid "timeago.numbers" +#: ../../include/widgets.php:965 +msgid "Suggested Chatrooms" msgstr "" -#: ../../include/js_strings.php:45 ../../include/text.php:1237 -msgid "January" +#: ../../include/widgets.php:1111 ../../include/widgets.php:1223 +msgid "photo/image" msgstr "" -#: ../../include/js_strings.php:46 ../../include/text.php:1237 -msgid "February" +#: ../../include/widgets.php:1166 +msgid "Click to show more" msgstr "" -#: ../../include/js_strings.php:47 ../../include/text.php:1237 -msgid "March" +#: ../../include/widgets.php:1317 +msgid "Rating Tools" msgstr "" -#: ../../include/js_strings.php:48 ../../include/text.php:1237 -msgid "April" +#: ../../include/widgets.php:1321 ../../include/widgets.php:1323 +msgid "Rate Me" msgstr "" -#: ../../include/js_strings.php:49 -msgctxt "long" -msgid "May" +#: ../../include/widgets.php:1326 +msgid "View Ratings" msgstr "" -#: ../../include/js_strings.php:50 ../../include/text.php:1237 -msgid "June" +#: ../../include/widgets.php:1405 +msgid "Forums" msgstr "" -#: ../../include/js_strings.php:51 ../../include/text.php:1237 -msgid "July" +#: ../../include/widgets.php:1434 +msgid "Tasks" msgstr "" -#: ../../include/js_strings.php:52 ../../include/text.php:1237 -msgid "August" +#: ../../include/widgets.php:1443 +msgid "Documentation" msgstr "" -#: ../../include/js_strings.php:53 ../../include/text.php:1237 -msgid "September" +#: ../../include/widgets.php:1445 +msgid "Project/Site Information" msgstr "" -#: ../../include/js_strings.php:54 ../../include/text.php:1237 -msgid "October" +#: ../../include/widgets.php:1446 +msgid "For Members" msgstr "" -#: ../../include/js_strings.php:55 ../../include/text.php:1237 -msgid "November" +#: ../../include/widgets.php:1447 +msgid "For Administrators" msgstr "" -#: ../../include/js_strings.php:56 ../../include/text.php:1237 -msgid "December" +#: ../../include/widgets.php:1448 +msgid "For Developers" msgstr "" -#: ../../include/js_strings.php:57 -msgid "Jan" +#: ../../include/widgets.php:1472 ../../include/widgets.php:1510 +msgid "Member registrations waiting for confirmation" msgstr "" -#: ../../include/js_strings.php:58 -msgid "Feb" +#: ../../include/widgets.php:1478 +msgid "Inspect queue" msgstr "" -#: ../../include/js_strings.php:59 -msgid "Mar" +#: ../../include/widgets.php:1480 +msgid "DB updates" msgstr "" -#: ../../include/js_strings.php:60 -msgid "Apr" +#: ../../include/widgets.php:1505 ../../include/nav.php:218 +msgid "Admin" msgstr "" -#: ../../include/js_strings.php:61 -msgctxt "short" -msgid "May" -msgstr "" - -#: ../../include/js_strings.php:62 -msgid "Jun" -msgstr "" - -#: ../../include/js_strings.php:63 -msgid "Jul" -msgstr "" - -#: ../../include/js_strings.php:64 -msgid "Aug" -msgstr "" - -#: ../../include/js_strings.php:65 -msgid "Sep" -msgstr "" - -#: ../../include/js_strings.php:66 -msgid "Oct" -msgstr "" - -#: ../../include/js_strings.php:67 -msgid "Nov" -msgstr "" - -#: ../../include/js_strings.php:68 -msgid "Dec" -msgstr "" - -#: ../../include/js_strings.php:69 ../../include/text.php:1233 -msgid "Sunday" -msgstr "" - -#: ../../include/js_strings.php:70 ../../include/text.php:1233 -msgid "Monday" -msgstr "" - -#: ../../include/js_strings.php:71 ../../include/text.php:1233 -msgid "Tuesday" -msgstr "" - -#: ../../include/js_strings.php:72 ../../include/text.php:1233 -msgid "Wednesday" -msgstr "" - -#: ../../include/js_strings.php:73 ../../include/text.php:1233 -msgid "Thursday" -msgstr "" - -#: ../../include/js_strings.php:74 ../../include/text.php:1233 -msgid "Friday" -msgstr "" - -#: ../../include/js_strings.php:75 ../../include/text.php:1233 -msgid "Saturday" -msgstr "" - -#: ../../include/js_strings.php:76 -msgid "Sun" -msgstr "" - -#: ../../include/js_strings.php:77 -msgid "Mon" -msgstr "" - -#: ../../include/js_strings.php:78 -msgid "Tue" -msgstr "" - -#: ../../include/js_strings.php:79 -msgid "Wed" -msgstr "" - -#: ../../include/js_strings.php:80 -msgid "Thu" -msgstr "" - -#: ../../include/js_strings.php:81 -msgid "Fri" -msgstr "" - -#: ../../include/js_strings.php:82 -msgid "Sat" -msgstr "" - -#: ../../include/js_strings.php:83 -msgctxt "calendar" -msgid "today" -msgstr "" - -#: ../../include/js_strings.php:84 -msgctxt "calendar" -msgid "month" -msgstr "" - -#: ../../include/js_strings.php:85 -msgctxt "calendar" -msgid "week" -msgstr "" - -#: ../../include/js_strings.php:86 -msgctxt "calendar" -msgid "day" -msgstr "" - -#: ../../include/js_strings.php:87 -msgctxt "calendar" -msgid "All day" +#: ../../include/widgets.php:1506 +msgid "Plugin Features" msgstr "" #: ../../include/nav.php:82 ../../include/nav.php:115 ../../boot.php:1703 @@ -7591,6 +7239,10 @@ msgstr "" msgid "Your chatrooms" msgstr "" +#: ../../include/nav.php:102 ../../include/conversation.php:1690 +msgid "Bookmarks" +msgstr "" + #: ../../include/nav.php:102 msgid "Your bookmarks" msgstr "" @@ -7684,18 +7336,6 @@ msgstr "" msgid "Mark all private messages seen" msgstr "" -#: ../../include/nav.php:198 ../../include/widgets.php:658 -msgid "Inbox" -msgstr "" - -#: ../../include/nav.php:199 ../../include/widgets.php:663 -msgid "Outbox" -msgstr "" - -#: ../../include/nav.php:200 ../../include/widgets.php:668 -msgid "New Message" -msgstr "" - #: ../../include/nav.php:203 msgid "Event Calendar" msgstr "" @@ -7716,14 +7356,14 @@ msgstr "" msgid "Account/Channel Settings" msgstr "" -#: ../../include/nav.php:218 ../../include/widgets.php:1474 -msgid "Admin" -msgstr "" - #: ../../include/nav.php:218 msgid "Site Setup and Configuration" msgstr "" +#: ../../include/nav.php:249 ../../include/conversation.php:854 +msgid "Loading..." +msgstr "" + #: ../../include/nav.php:254 msgid "@name, #tag, ?doc, content" msgstr "" @@ -7732,6 +7372,320 @@ msgstr "" msgid "Please wait..." msgstr "" +#: ../../include/network.php:704 +msgid "view full size" +msgstr "" + +#: ../../include/network.php:1930 ../../include/account.php:317 +#: ../../include/account.php:344 ../../include/account.php:404 +msgid "Administrator" +msgstr "" + +#: ../../include/network.php:1944 +msgid "No Subject" +msgstr "" + +#: ../../include/network.php:2198 ../../include/network.php:2199 +msgid "Friendica" +msgstr "" + +#: ../../include/network.php:2200 +msgid "OStatus" +msgstr "" + +#: ../../include/network.php:2201 +msgid "GNU-Social" +msgstr "" + +#: ../../include/network.php:2202 +msgid "RSS/Atom" +msgstr "" + +#: ../../include/network.php:2204 +msgid "Diaspora" +msgstr "" + +#: ../../include/network.php:2205 +msgid "Facebook" +msgstr "" + +#: ../../include/network.php:2206 +msgid "Zot" +msgstr "" + +#: ../../include/network.php:2207 +msgid "LinkedIn" +msgstr "" + +#: ../../include/network.php:2208 +msgid "XMPP/IM" +msgstr "" + +#: ../../include/network.php:2209 +msgid "MySpace" +msgstr "" + +#: ../../include/oembed.php:325 +msgid "Embedded content" +msgstr "" + +#: ../../include/oembed.php:334 +msgid "Embedding disabled" +msgstr "" + +#: ../../include/page_widgets.php:7 +msgid "New Page" +msgstr "" + +#: ../../include/page_widgets.php:46 +msgid "Title" +msgstr "" + +#: ../../include/photos.php:114 +#, php-format +msgid "Image exceeds website size limit of %lu bytes" +msgstr "" + +#: ../../include/photos.php:121 +msgid "Image file is empty." +msgstr "" + +#: ../../include/photos.php:259 +msgid "Photo storage failed." +msgstr "" + +#: ../../include/photos.php:299 +msgid "a new photo" +msgstr "" + +#: ../../include/photos.php:303 +#, php-format +msgctxt "photo_upload" +msgid "%1$s posted %2$s to %3$s" +msgstr "" + +#: ../../include/photos.php:506 ../../include/conversation.php:1650 +msgid "Photo Albums" +msgstr "" + +#: ../../include/photos.php:510 +msgid "Upload New Photos" +msgstr "" + +#: ../../include/taxonomy.php:228 ../../include/taxonomy.php:249 +msgid "Tags" +msgstr "" + +#: ../../include/taxonomy.php:293 +msgid "Keywords" +msgstr "" + +#: ../../include/taxonomy.php:314 +msgid "have" +msgstr "" + +#: ../../include/taxonomy.php:314 +msgid "has" +msgstr "" + +#: ../../include/taxonomy.php:315 +msgid "want" +msgstr "" + +#: ../../include/taxonomy.php:315 +msgid "wants" +msgstr "" + +#: ../../include/taxonomy.php:316 +msgid "likes" +msgstr "" + +#: ../../include/taxonomy.php:317 +msgid "dislikes" +msgstr "" + +#: ../../include/follow.php:27 +msgid "Channel is blocked on this site." +msgstr "" + +#: ../../include/follow.php:32 +msgid "Channel location missing." +msgstr "" + +#: ../../include/follow.php:81 +msgid "Response from remote channel was incomplete." +msgstr "" + +#: ../../include/follow.php:98 +msgid "Channel was deleted and no longer exists." +msgstr "" + +#: ../../include/follow.php:154 ../../include/follow.php:190 +msgid "Protocol disabled." +msgstr "" + +#: ../../include/follow.php:178 +msgid "Channel discovery failed." +msgstr "" + +#: ../../include/follow.php:216 +msgid "Cannot connect to yourself." +msgstr "" + +#: ../../include/channel.php:32 +msgid "Unable to obtain identity information from database" +msgstr "" + +#: ../../include/channel.php:66 +msgid "Empty name" +msgstr "" + +#: ../../include/channel.php:69 +msgid "Name too long" +msgstr "" + +#: ../../include/channel.php:180 +msgid "No account identifier" +msgstr "" + +#: ../../include/channel.php:192 +msgid "Nickname is required." +msgstr "" + +#: ../../include/channel.php:206 +msgid "Reserved nickname. Please choose another." +msgstr "" + +#: ../../include/channel.php:211 +msgid "" +"Nickname has unsupported characters or is already being used on this site." +msgstr "" + +#: ../../include/channel.php:287 +msgid "Unable to retrieve created identity" +msgstr "" + +#: ../../include/channel.php:345 +msgid "Default Profile" +msgstr "" + +#: ../../include/channel.php:815 +msgid "Requested channel is not available." +msgstr "" + +#: ../../include/channel.php:962 +msgid "Create New Profile" +msgstr "" + +#: ../../include/channel.php:982 +msgid "Visible to everybody" +msgstr "" + +#: ../../include/channel.php:1055 ../../include/channel.php:1167 +msgid "Gender:" +msgstr "" + +#: ../../include/channel.php:1056 ../../include/channel.php:1211 +msgid "Status:" +msgstr "" + +#: ../../include/channel.php:1057 ../../include/channel.php:1222 +msgid "Homepage:" +msgstr "" + +#: ../../include/channel.php:1058 +msgid "Online Now" +msgstr "" + +#: ../../include/channel.php:1172 +msgid "Like this channel" +msgstr "" + +#: ../../include/channel.php:1196 +msgid "j F, Y" +msgstr "" + +#: ../../include/channel.php:1197 +msgid "j F" +msgstr "" + +#: ../../include/channel.php:1204 +msgid "Birthday:" +msgstr "" + +#: ../../include/channel.php:1217 +#, php-format +msgid "for %1$d %2$s" +msgstr "" + +#: ../../include/channel.php:1220 +msgid "Sexual Preference:" +msgstr "" + +#: ../../include/channel.php:1226 +msgid "Tags:" +msgstr "" + +#: ../../include/channel.php:1228 +msgid "Political Views:" +msgstr "" + +#: ../../include/channel.php:1230 +msgid "Religion:" +msgstr "" + +#: ../../include/channel.php:1234 +msgid "Hobbies/Interests:" +msgstr "" + +#: ../../include/channel.php:1236 +msgid "Likes:" +msgstr "" + +#: ../../include/channel.php:1238 +msgid "Dislikes:" +msgstr "" + +#: ../../include/channel.php:1240 +msgid "Contact information and Social Networks:" +msgstr "" + +#: ../../include/channel.php:1242 +msgid "My other channels:" +msgstr "" + +#: ../../include/channel.php:1244 +msgid "Musical interests:" +msgstr "" + +#: ../../include/channel.php:1246 +msgid "Books, literature:" +msgstr "" + +#: ../../include/channel.php:1248 +msgid "Television:" +msgstr "" + +#: ../../include/channel.php:1250 +msgid "Film/dance/culture/entertainment:" +msgstr "" + +#: ../../include/channel.php:1252 +msgid "Love/Romance:" +msgstr "" + +#: ../../include/channel.php:1254 +msgid "Work/employment:" +msgstr "" + +#: ../../include/channel.php:1256 +msgid "School/education:" +msgstr "" + +#: ../../include/channel.php:1277 +msgid "Like this thing" +msgstr "" + #: ../../include/selectors.php:30 msgid "Frequently" msgstr "" @@ -8107,645 +8061,265 @@ msgstr "" msgid "Happy Birthday %1$s" msgstr "" -#: ../../include/follow.php:27 -msgid "Channel is blocked on this site." -msgstr "" - -#: ../../include/follow.php:32 -msgid "Channel location missing." -msgstr "" - -#: ../../include/follow.php:81 -msgid "Response from remote channel was incomplete." -msgstr "" - -#: ../../include/follow.php:98 -msgid "Channel was deleted and no longer exists." -msgstr "" - -#: ../../include/follow.php:154 ../../include/follow.php:190 -msgid "Protocol disabled." -msgstr "" - -#: ../../include/follow.php:178 -msgid "Channel discovery failed." -msgstr "" - -#: ../../include/follow.php:216 -msgid "Cannot connect to yourself." -msgstr "" - -#: ../../include/import.php:29 -msgid "" -"Cannot create a duplicate channel identifier on this system. Import failed." -msgstr "" - -#: ../../include/import.php:76 -msgid "Channel clone failed. Import failed." -msgstr "" - -#: ../../include/security.php:383 -msgid "" -"The form security token was not correct. This probably happened because the " -"form has been opened for too long (>3 hours) before submitting it." -msgstr "" - -#: ../../include/api.php:1326 -msgid "Public Timeline" -msgstr "" - -#: ../../include/page_widgets.php:7 -msgid "New Page" -msgstr "" - -#: ../../include/page_widgets.php:46 -msgid "Title" -msgstr "" - -#: ../../include/photos.php:114 +#: ../../include/conversation.php:204 #, php-format -msgid "Image exceeds website size limit of %lu bytes" +msgid "%1$s is now connected with %2$s" msgstr "" -#: ../../include/photos.php:121 -msgid "Image file is empty." -msgstr "" - -#: ../../include/photos.php:259 -msgid "Photo storage failed." -msgstr "" - -#: ../../include/photos.php:299 -msgid "a new photo" -msgstr "" - -#: ../../include/photos.php:303 +#: ../../include/conversation.php:239 #, php-format -msgctxt "photo_upload" -msgid "%1$s posted %2$s to %3$s" -msgstr "" - -#: ../../include/photos.php:510 -msgid "Upload New Photos" -msgstr "" - -#: ../../include/taxonomy.php:188 ../../include/taxonomy.php:270 -#: ../../include/widgets.php:46 ../../include/widgets.php:429 -#: ../../include/contact_widgets.php:91 -msgid "Categories" -msgstr "" - -#: ../../include/taxonomy.php:228 ../../include/taxonomy.php:249 -msgid "Tags" -msgstr "" - -#: ../../include/taxonomy.php:293 -msgid "Keywords" -msgstr "" - -#: ../../include/taxonomy.php:314 -msgid "have" -msgstr "" - -#: ../../include/taxonomy.php:314 -msgid "has" -msgstr "" - -#: ../../include/taxonomy.php:315 -msgid "want" -msgstr "" - -#: ../../include/taxonomy.php:315 -msgid "wants" -msgstr "" - -#: ../../include/taxonomy.php:316 -msgid "likes" -msgstr "" - -#: ../../include/taxonomy.php:317 -msgid "dislikes" -msgstr "" - -#: ../../include/zot.php:709 -msgid "Invalid data packet" -msgstr "" - -#: ../../include/zot.php:725 -msgid "Unable to verify channel signature" -msgstr "" - -#: ../../include/zot.php:2373 -#, php-format -msgid "Unable to verify site signature for %s" -msgstr "" - -#: ../../include/zot.php:3718 -msgid "invalid target signature" -msgstr "" - -#: ../../include/attach.php:247 ../../include/attach.php:333 -msgid "Item was not found." -msgstr "" - -#: ../../include/attach.php:499 -msgid "No source file." -msgstr "" - -#: ../../include/attach.php:521 -msgid "Cannot locate file to replace" -msgstr "" - -#: ../../include/attach.php:539 -msgid "Cannot locate file to revise/update" -msgstr "" - -#: ../../include/attach.php:674 -#, php-format -msgid "File exceeds size limit of %d" -msgstr "" - -#: ../../include/attach.php:688 -#, php-format -msgid "You have reached your limit of %1$.0f Mbytes attachment storage." -msgstr "" - -#: ../../include/attach.php:846 -msgid "File upload failed. Possible system limit or action terminated." -msgstr "" - -#: ../../include/attach.php:859 -msgid "Stored file could not be verified. Upload failed." -msgstr "" - -#: ../../include/attach.php:915 ../../include/attach.php:931 -msgid "Path not available." -msgstr "" - -#: ../../include/attach.php:977 ../../include/attach.php:1129 -msgid "Empty pathname" -msgstr "" - -#: ../../include/attach.php:1003 -msgid "duplicate filename or path" -msgstr "" - -#: ../../include/attach.php:1025 -msgid "Path not found." -msgstr "" - -#: ../../include/attach.php:1083 -msgid "mkdir failed." -msgstr "" - -#: ../../include/attach.php:1087 -msgid "database storage failed." -msgstr "" - -#: ../../include/attach.php:1135 -msgid "Empty path" -msgstr "" - -#: ../../include/widgets.php:103 -msgid "System" -msgstr "" - -#: ../../include/widgets.php:106 -msgid "New App" -msgstr "" - -#: ../../include/widgets.php:154 -msgid "Suggestions" -msgstr "" - -#: ../../include/widgets.php:155 -msgid "See more..." -msgstr "" - -#: ../../include/widgets.php:175 -#, php-format -msgid "You have %1$.0f of %2$.0f allowed connections." -msgstr "" - -#: ../../include/widgets.php:181 -msgid "Add New Connection" -msgstr "" - -#: ../../include/widgets.php:182 -msgid "Enter channel address" -msgstr "" - -#: ../../include/widgets.php:183 -msgid "Examples: bob@example.com, https://example.com/barbara" -msgstr "" - -#: ../../include/widgets.php:199 -msgid "Notes" -msgstr "" - -#: ../../include/widgets.php:273 -msgid "Remove term" -msgstr "" - -#: ../../include/widgets.php:281 ../../include/features.php:85 -msgid "Saved Searches" -msgstr "" - -#: ../../include/widgets.php:310 ../../include/features.php:99 -#: ../../include/contact_widgets.php:53 -msgid "Saved Folders" -msgstr "" - -#: ../../include/widgets.php:313 ../../include/widgets.php:432 -#: ../../include/contact_widgets.php:56 ../../include/contact_widgets.php:94 -msgid "Everything" -msgstr "" - -#: ../../include/widgets.php:354 -msgid "Archives" -msgstr "" - -#: ../../include/widgets.php:516 -msgid "Refresh" -msgstr "" - -#: ../../include/widgets.php:556 -msgid "Account settings" -msgstr "" - -#: ../../include/widgets.php:562 -msgid "Channel settings" -msgstr "" - -#: ../../include/widgets.php:571 -msgid "Additional features" -msgstr "" - -#: ../../include/widgets.php:578 -msgid "Feature/Addon settings" -msgstr "" - -#: ../../include/widgets.php:584 -msgid "Display settings" -msgstr "" - -#: ../../include/widgets.php:591 -msgid "Manage locations" -msgstr "" - -#: ../../include/widgets.php:600 -msgid "Export channel" -msgstr "" - -#: ../../include/widgets.php:607 -msgid "Connected apps" -msgstr "" - -#: ../../include/widgets.php:622 -msgid "Premium Channel Settings" -msgstr "" - -#: ../../include/widgets.php:651 -msgid "Private Mail Menu" -msgstr "" - -#: ../../include/widgets.php:653 -msgid "Combined View" -msgstr "" - -#: ../../include/widgets.php:685 ../../include/widgets.php:697 -msgid "Conversations" -msgstr "" - -#: ../../include/widgets.php:689 -msgid "Received Messages" -msgstr "" - -#: ../../include/widgets.php:693 -msgid "Sent Messages" -msgstr "" - -#: ../../include/widgets.php:707 -msgid "No messages." -msgstr "" - -#: ../../include/widgets.php:725 -msgid "Delete conversation" -msgstr "" - -#: ../../include/widgets.php:751 -msgid "Events Tools" -msgstr "" - -#: ../../include/widgets.php:752 -msgid "Export Calendar" -msgstr "" - -#: ../../include/widgets.php:753 -msgid "Import Calendar" -msgstr "" - -#: ../../include/widgets.php:831 -msgid "Overview" -msgstr "" - -#: ../../include/widgets.php:838 -msgid "Chat Members" -msgstr "" - -#: ../../include/widgets.php:860 -msgid "Wiki List" -msgstr "" - -#: ../../include/widgets.php:898 -msgid "Wiki Pages" -msgstr "" - -#: ../../include/widgets.php:933 -msgid "Bookmarked Chatrooms" -msgstr "" - -#: ../../include/widgets.php:956 -msgid "Suggested Chatrooms" -msgstr "" - -#: ../../include/widgets.php:1102 ../../include/widgets.php:1214 -msgid "photo/image" -msgstr "" - -#: ../../include/widgets.php:1157 -msgid "Click to show more" -msgstr "" - -#: ../../include/widgets.php:1308 -msgid "Rating Tools" -msgstr "" - -#: ../../include/widgets.php:1312 ../../include/widgets.php:1314 -msgid "Rate Me" -msgstr "" - -#: ../../include/widgets.php:1317 -msgid "View Ratings" -msgstr "" - -#: ../../include/widgets.php:1374 -msgid "Forums" -msgstr "" - -#: ../../include/widgets.php:1403 -msgid "Tasks" -msgstr "" - -#: ../../include/widgets.php:1412 -msgid "Documentation" -msgstr "" - -#: ../../include/widgets.php:1414 -msgid "Project/Site Information" -msgstr "" - -#: ../../include/widgets.php:1415 -msgid "For Members" -msgstr "" - -#: ../../include/widgets.php:1416 -msgid "For Administrators" -msgstr "" - -#: ../../include/widgets.php:1417 -msgid "For Developers" -msgstr "" - -#: ../../include/widgets.php:1441 ../../include/widgets.php:1479 -msgid "Member registrations waiting for confirmation" -msgstr "" - -#: ../../include/widgets.php:1447 -msgid "Inspect queue" -msgstr "" - -#: ../../include/widgets.php:1449 -msgid "DB updates" -msgstr "" - -#: ../../include/widgets.php:1475 -msgid "Plugin Features" -msgstr "" - -#: ../../include/text.php:404 -msgid "prev" -msgstr "" - -#: ../../include/text.php:406 -msgid "first" -msgstr "" - -#: ../../include/text.php:435 -msgid "last" -msgstr "" - -#: ../../include/text.php:438 -msgid "next" -msgstr "" - -#: ../../include/text.php:448 -msgid "older" -msgstr "" - -#: ../../include/text.php:450 -msgid "newer" -msgstr "" - -#: ../../include/text.php:839 -msgid "No connections" -msgstr "" - -#: ../../include/text.php:864 -#, php-format -msgid "View all %s connections" -msgstr "" - -#: ../../include/text.php:1009 ../../include/text.php:1014 -msgid "poke" -msgstr "" - -#: ../../include/text.php:1015 -msgid "ping" -msgstr "" - -#: ../../include/text.php:1015 -msgid "pinged" -msgstr "" - -#: ../../include/text.php:1016 -msgid "prod" -msgstr "" - -#: ../../include/text.php:1016 -msgid "prodded" -msgstr "" - -#: ../../include/text.php:1017 -msgid "slap" -msgstr "" - -#: ../../include/text.php:1017 -msgid "slapped" +msgid "%1$s poked %2$s" msgstr "" +#: ../../include/conversation.php:243 ../../include/text.php:1013 #: ../../include/text.php:1018 -msgid "finger" +msgid "poked" msgstr "" -#: ../../include/text.php:1018 -msgid "fingered" +#: ../../include/conversation.php:694 +#, php-format +msgid "View %s's profile @ %s" msgstr "" -#: ../../include/text.php:1019 -msgid "rebuff" +#: ../../include/conversation.php:713 +msgid "Categories:" msgstr "" -#: ../../include/text.php:1019 -msgid "rebuffed" +#: ../../include/conversation.php:714 +msgid "Filed under:" msgstr "" -#: ../../include/text.php:1031 -msgid "happy" +#: ../../include/conversation.php:741 +msgid "View in context" msgstr "" -#: ../../include/text.php:1032 -msgid "sad" +#: ../../include/conversation.php:850 +msgid "remove" msgstr "" -#: ../../include/text.php:1033 -msgid "mellow" +#: ../../include/conversation.php:855 +msgid "Delete Selected Items" msgstr "" -#: ../../include/text.php:1034 -msgid "tired" +#: ../../include/conversation.php:951 +msgid "View Source" msgstr "" -#: ../../include/text.php:1035 -msgid "perky" +#: ../../include/conversation.php:952 +msgid "Follow Thread" msgstr "" -#: ../../include/text.php:1036 -msgid "angry" +#: ../../include/conversation.php:953 +msgid "Unfollow Thread" msgstr "" -#: ../../include/text.php:1037 -msgid "stupefied" +#: ../../include/conversation.php:958 +msgid "Activity/Posts" msgstr "" -#: ../../include/text.php:1038 -msgid "puzzled" +#: ../../include/conversation.php:960 +msgid "Edit Connection" msgstr "" -#: ../../include/text.php:1039 -msgid "interested" +#: ../../include/conversation.php:961 +msgid "Message" msgstr "" -#: ../../include/text.php:1040 -msgid "bitter" +#: ../../include/conversation.php:1078 +#, php-format +msgid "%s likes this." msgstr "" -#: ../../include/text.php:1041 -msgid "cheerful" +#: ../../include/conversation.php:1078 +#, php-format +msgid "%s doesn't like this." msgstr "" -#: ../../include/text.php:1042 -msgid "alive" +#: ../../include/conversation.php:1082 +#, php-format +msgid "%2$d people like this." +msgid_plural "%2$d people like this." +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1084 +#, php-format +msgid "%2$d people don't like this." +msgid_plural "%2$d people don't like this." +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1090 +msgid "and" msgstr "" -#: ../../include/text.php:1043 -msgid "annoyed" +#: ../../include/conversation.php:1093 +#, php-format +msgid ", and %d other people" +msgid_plural ", and %d other people" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1094 +#, php-format +msgid "%s like this." msgstr "" -#: ../../include/text.php:1044 -msgid "anxious" +#: ../../include/conversation.php:1094 +#, php-format +msgid "%s don't like this." msgstr "" -#: ../../include/text.php:1045 -msgid "cranky" +#: ../../include/conversation.php:1133 +msgid "Set your location" msgstr "" -#: ../../include/text.php:1046 -msgid "disturbed" +#: ../../include/conversation.php:1134 +msgid "Clear browser location" msgstr "" -#: ../../include/text.php:1047 -msgid "frustrated" +#: ../../include/conversation.php:1182 +msgid "Tag term:" msgstr "" -#: ../../include/text.php:1048 -msgid "depressed" +#: ../../include/conversation.php:1183 +msgid "Where are you right now?" msgstr "" -#: ../../include/text.php:1049 -msgid "motivated" +#: ../../include/conversation.php:1221 +msgid "Page link name" msgstr "" -#: ../../include/text.php:1050 -msgid "relaxed" +#: ../../include/conversation.php:1224 +msgid "Post as" msgstr "" -#: ../../include/text.php:1051 -msgid "surprised" +#: ../../include/conversation.php:1238 +msgid "Toggle voting" msgstr "" -#: ../../include/text.php:1237 -msgid "May" +#: ../../include/conversation.php:1246 +msgid "Categories (optional, comma-separated list)" msgstr "" -#: ../../include/text.php:1314 ../../include/text.php:1318 -msgid "Unknown Attachment" +#: ../../include/conversation.php:1269 +msgid "Set publish date" msgstr "" -#: ../../include/text.php:1320 -msgid "unknown" +#: ../../include/conversation.php:1518 +msgid "Discover" msgstr "" -#: ../../include/text.php:1356 -msgid "remove category" +#: ../../include/conversation.php:1521 +msgid "Imported public streams" msgstr "" -#: ../../include/text.php:1433 -msgid "remove from file" +#: ../../include/conversation.php:1526 +msgid "Commented Order" msgstr "" -#: ../../include/text.php:1730 ../../include/text.php:1801 -msgid "default" +#: ../../include/conversation.php:1529 +msgid "Sort by Comment Date" msgstr "" -#: ../../include/text.php:1738 -msgid "Page layout" +#: ../../include/conversation.php:1533 +msgid "Posted Order" msgstr "" -#: ../../include/text.php:1738 -msgid "You can create your own with the layouts tool" +#: ../../include/conversation.php:1536 +msgid "Sort by Post Date" msgstr "" -#: ../../include/text.php:1780 -msgid "Page content type" +#: ../../include/conversation.php:1544 +msgid "Posts that mention or involve you" msgstr "" -#: ../../include/text.php:1813 -msgid "Select an alternate language" +#: ../../include/conversation.php:1553 +msgid "Activity Stream - by date" msgstr "" -#: ../../include/text.php:1930 -msgid "activity" +#: ../../include/conversation.php:1559 +msgid "Starred" msgstr "" -#: ../../include/text.php:2239 -msgid "Design Tools" +#: ../../include/conversation.php:1562 +msgid "Favourite Posts" msgstr "" -#: ../../include/text.php:2245 -msgid "Pages" +#: ../../include/conversation.php:1569 +msgid "Spam" msgstr "" +#: ../../include/conversation.php:1572 +msgid "Posts flagged as SPAM" +msgstr "" + +#: ../../include/conversation.php:1629 +msgid "Status Messages and Posts" +msgstr "" + +#: ../../include/conversation.php:1638 +msgid "About" +msgstr "" + +#: ../../include/conversation.php:1641 +msgid "Profile Details" +msgstr "" + +#: ../../include/conversation.php:1657 +msgid "Files and Storage" +msgstr "" + +#: ../../include/conversation.php:1693 +msgid "Saved Bookmarks" +msgstr "" + +#: ../../include/conversation.php:1703 +msgid "Manage Webpages" +msgstr "" + +#: ../../include/conversation.php:1768 +msgctxt "noun" +msgid "Attending" +msgid_plural "Attending" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1771 +msgctxt "noun" +msgid "Not Attending" +msgid_plural "Not Attending" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1774 +msgctxt "noun" +msgid "Undecided" +msgid_plural "Undecided" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1777 +msgctxt "noun" +msgid "Agree" +msgid_plural "Agrees" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1780 +msgctxt "noun" +msgid "Disagree" +msgid_plural "Disagrees" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/conversation.php:1783 +msgctxt "noun" +msgid "Abstain" +msgid_plural "Abstains" +msgstr[0] "" +msgstr[1] "" + #: ../../include/items.php:898 ../../include/items.php:943 msgid "(Unknown)" msgstr "" @@ -8796,139 +8370,21 @@ msgstr "" msgid "Connection not found." msgstr "" -#: ../../include/items.php:4304 +#: ../../include/items.php:4291 msgid "profile photo" msgstr "" -#: ../../include/bbcode.php:123 ../../include/bbcode.php:878 -#: ../../include/bbcode.php:881 ../../include/bbcode.php:886 -#: ../../include/bbcode.php:889 ../../include/bbcode.php:892 -#: ../../include/bbcode.php:895 ../../include/bbcode.php:900 -#: ../../include/bbcode.php:903 ../../include/bbcode.php:908 -#: ../../include/bbcode.php:911 ../../include/bbcode.php:914 -#: ../../include/bbcode.php:917 -msgid "Image/photo" +#: ../../include/connections.php:95 +msgid "New window" msgstr "" -#: ../../include/bbcode.php:162 ../../include/bbcode.php:928 -msgid "Encrypted content" +#: ../../include/connections.php:96 +msgid "Open the selected location in a different window or browser tab" msgstr "" -#: ../../include/bbcode.php:178 +#: ../../include/connections.php:214 #, php-format -msgid "Install %s element: " -msgstr "" - -#: ../../include/bbcode.php:182 -#, php-format -msgid "" -"This post contains an installable %s element, however you lack permissions " -"to install it on this site." -msgstr "" - -#: ../../include/bbcode.php:261 -#, php-format -msgid "%1$s wrote the following %2$s %3$s" -msgstr "" - -#: ../../include/bbcode.php:338 ../../include/bbcode.php:346 -msgid "Click to open/close" -msgstr "" - -#: ../../include/bbcode.php:346 -msgid "spoiler" -msgstr "" - -#: ../../include/bbcode.php:619 -msgid "Different viewers will see this text differently" -msgstr "" - -#: ../../include/bbcode.php:866 -msgid "$1 wrote:" -msgstr "" - -#: ../../include/network.php:704 -msgid "view full size" -msgstr "" - -#: ../../include/network.php:1930 ../../include/account.php:317 -#: ../../include/account.php:344 ../../include/account.php:404 -msgid "Administrator" -msgstr "" - -#: ../../include/network.php:1944 -msgid "No Subject" -msgstr "" - -#: ../../include/network.php:2198 ../../include/network.php:2199 -msgid "Friendica" -msgstr "" - -#: ../../include/network.php:2200 -msgid "OStatus" -msgstr "" - -#: ../../include/network.php:2201 -msgid "GNU-Social" -msgstr "" - -#: ../../include/network.php:2202 -msgid "RSS/Atom" -msgstr "" - -#: ../../include/network.php:2204 -msgid "Diaspora" -msgstr "" - -#: ../../include/network.php:2205 -msgid "Facebook" -msgstr "" - -#: ../../include/network.php:2206 -msgid "Zot" -msgstr "" - -#: ../../include/network.php:2207 -msgid "LinkedIn" -msgstr "" - -#: ../../include/network.php:2208 -msgid "XMPP/IM" -msgstr "" - -#: ../../include/network.php:2209 -msgid "MySpace" -msgstr "" - -#: ../../include/activities.php:41 -msgid " and " -msgstr "" - -#: ../../include/activities.php:49 -msgid "public profile" -msgstr "" - -#: ../../include/activities.php:58 -#, php-format -msgid "%1$s changed %2$s to “%3$s”" -msgstr "" - -#: ../../include/activities.php:59 -#, php-format -msgid "Visit %1$s's %2$s" -msgstr "" - -#: ../../include/activities.php:62 -#, php-format -msgid "%1$s has an updated %2$s, changing %3$s." -msgstr "" - -#: ../../include/bb2diaspora.php:398 -msgid "Attachments:" -msgstr "" - -#: ../../include/bb2diaspora.php:487 -msgid "$Projectname event notification:" +msgid "User '%s' deleted" msgstr "" #: ../../include/features.php:48 @@ -9114,6 +8570,10 @@ msgstr "" msgid "Ability to select posts by date ranges" msgstr "" +#: ../../include/features.php:84 ../../include/group.php:311 +msgid "Privacy Groups" +msgstr "" + #: ../../include/features.php:84 msgid "Enable management and selection of privacy groups" msgstr "" @@ -9214,365 +8674,31 @@ msgstr "" msgid "Provide a personal tag cloud on your channel page" msgstr "" -#: ../../include/oembed.php:325 -msgid "Embedded content" -msgstr "" - -#: ../../include/oembed.php:334 -msgid "Embedding disabled" -msgstr "" - -#: ../../include/account.php:28 -msgid "Not a valid email address" -msgstr "" - -#: ../../include/account.php:30 -msgid "Your email domain is not among those allowed on this site" -msgstr "" - -#: ../../include/account.php:36 -msgid "Your email address is already registered at this site." -msgstr "" - -#: ../../include/account.php:68 -msgid "An invitation is required." -msgstr "" - -#: ../../include/account.php:72 -msgid "Invitation could not be verified." -msgstr "" - -#: ../../include/account.php:122 -msgid "Please enter the required information." -msgstr "" - -#: ../../include/account.php:189 -msgid "Failed to store account information." -msgstr "" - -#: ../../include/account.php:249 -#, php-format -msgid "Registration confirmation for %s" -msgstr "" - -#: ../../include/account.php:315 -#, php-format -msgid "Registration request at %s" -msgstr "" - -#: ../../include/account.php:339 -msgid "your registration password" -msgstr "" - -#: ../../include/account.php:342 ../../include/account.php:402 -#, php-format -msgid "Registration details for %s" -msgstr "" - -#: ../../include/account.php:414 -msgid "Account approved." -msgstr "" - -#: ../../include/account.php:454 -#, php-format -msgid "Registration revoked for %s" -msgstr "" - -#: ../../include/account.php:739 ../../include/account.php:741 -msgid "Click here to upgrade." -msgstr "" - -#: ../../include/account.php:747 -msgid "This action exceeds the limits set by your subscription plan." -msgstr "" - -#: ../../include/account.php:752 -msgid "This action is not available under your subscription plan." -msgstr "" - -#: ../../include/PermissionDescription.php:116 -msgid "Public" -msgstr "" - -#: ../../include/PermissionDescription.php:117 -msgid "Anybody in the $Projectname network" -msgstr "" - -#: ../../include/PermissionDescription.php:118 -#, php-format -msgid "Any account on %s" -msgstr "" - -#: ../../include/PermissionDescription.php:119 -msgid "Any of my connections" -msgstr "" - -#: ../../include/PermissionDescription.php:120 -msgid "Only connections I specifically allow" -msgstr "" - -#: ../../include/PermissionDescription.php:121 -msgid "Anybody authenticated (could include visitors from other networks)" -msgstr "" - -#: ../../include/PermissionDescription.php:122 -msgid "Any connections including those who haven't yet been approved" -msgstr "" - -#: ../../include/PermissionDescription.php:161 +#: ../../include/group.php:26 msgid "" -"This is your default setting for the audience of your normal stream, and " -"posts." +"A deleted group with this name was revived. Existing item permissions " +"may apply to this group and any future members. If this is " +"not what you intended, please create another group with a different name." msgstr "" -#: ../../include/PermissionDescription.php:162 -msgid "" -"This is your default setting for who can view your default channel profile" +#: ../../include/group.php:248 +msgid "Add new connections to this privacy group" msgstr "" -#: ../../include/PermissionDescription.php:163 -msgid "This is your default setting for who can view your connections" +#: ../../include/group.php:289 +msgid "edit" msgstr "" -#: ../../include/PermissionDescription.php:164 -msgid "" -"This is your default setting for who can view your file storage and photos" +#: ../../include/group.php:312 +msgid "Edit group" msgstr "" -#: ../../include/PermissionDescription.php:165 -msgid "This is your default setting for the audience of your webpages" +#: ../../include/group.php:313 +msgid "Add privacy group" msgstr "" -#: ../../include/contact_widgets.php:11 -#, php-format -msgid "%d invitation available" -msgid_plural "%d invitations available" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/contact_widgets.php:19 -msgid "Find Channels" -msgstr "" - -#: ../../include/contact_widgets.php:20 -msgid "Enter name or interest" -msgstr "" - -#: ../../include/contact_widgets.php:21 -msgid "Connect/Follow" -msgstr "" - -#: ../../include/contact_widgets.php:22 -msgid "Examples: Robert Morgenstein, Fishing" -msgstr "" - -#: ../../include/contact_widgets.php:26 -msgid "Random Profile" -msgstr "" - -#: ../../include/contact_widgets.php:27 -msgid "Invite Friends" -msgstr "" - -#: ../../include/contact_widgets.php:29 -msgid "Advanced example: name=fred and country=iceland" -msgstr "" - -#: ../../include/contact_widgets.php:122 -#, php-format -msgid "%d connection in common" -msgid_plural "%d connections in common" -msgstr[0] "" -msgstr[1] "" - -#: ../../include/contact_widgets.php:127 -msgid "show more" -msgstr "" - -#: ../../include/dir_fns.php:141 -msgid "Directory Options" -msgstr "" - -#: ../../include/dir_fns.php:143 -msgid "Safe Mode" -msgstr "" - -#: ../../include/dir_fns.php:144 -msgid "Public Forums Only" -msgstr "" - -#: ../../include/dir_fns.php:145 -msgid "This Website Only" -msgstr "" - -#: ../../include/message.php:20 -msgid "No recipient provided." -msgstr "" - -#: ../../include/message.php:25 -msgid "[no subject]" -msgstr "" - -#: ../../include/message.php:45 -msgid "Unable to determine sender." -msgstr "" - -#: ../../include/message.php:222 -msgid "Stored post could not be verified." -msgstr "" - -#: ../../include/channel.php:32 -msgid "Unable to obtain identity information from database" -msgstr "" - -#: ../../include/channel.php:66 -msgid "Empty name" -msgstr "" - -#: ../../include/channel.php:69 -msgid "Name too long" -msgstr "" - -#: ../../include/channel.php:180 -msgid "No account identifier" -msgstr "" - -#: ../../include/channel.php:192 -msgid "Nickname is required." -msgstr "" - -#: ../../include/channel.php:206 -msgid "Reserved nickname. Please choose another." -msgstr "" - -#: ../../include/channel.php:211 -msgid "" -"Nickname has unsupported characters or is already being used on this site." -msgstr "" - -#: ../../include/channel.php:287 -msgid "Unable to retrieve created identity" -msgstr "" - -#: ../../include/channel.php:345 -msgid "Default Profile" -msgstr "" - -#: ../../include/channel.php:815 -msgid "Requested channel is not available." -msgstr "" - -#: ../../include/channel.php:962 -msgid "Create New Profile" -msgstr "" - -#: ../../include/channel.php:982 -msgid "Visible to everybody" -msgstr "" - -#: ../../include/channel.php:1055 ../../include/channel.php:1167 -msgid "Gender:" -msgstr "" - -#: ../../include/channel.php:1056 ../../include/channel.php:1211 -msgid "Status:" -msgstr "" - -#: ../../include/channel.php:1057 ../../include/channel.php:1222 -msgid "Homepage:" -msgstr "" - -#: ../../include/channel.php:1058 -msgid "Online Now" -msgstr "" - -#: ../../include/channel.php:1172 -msgid "Like this channel" -msgstr "" - -#: ../../include/channel.php:1196 -msgid "j F, Y" -msgstr "" - -#: ../../include/channel.php:1197 -msgid "j F" -msgstr "" - -#: ../../include/channel.php:1204 -msgid "Birthday:" -msgstr "" - -#: ../../include/channel.php:1217 -#, php-format -msgid "for %1$d %2$s" -msgstr "" - -#: ../../include/channel.php:1220 -msgid "Sexual Preference:" -msgstr "" - -#: ../../include/channel.php:1226 -msgid "Tags:" -msgstr "" - -#: ../../include/channel.php:1228 -msgid "Political Views:" -msgstr "" - -#: ../../include/channel.php:1230 -msgid "Religion:" -msgstr "" - -#: ../../include/channel.php:1234 -msgid "Hobbies/Interests:" -msgstr "" - -#: ../../include/channel.php:1236 -msgid "Likes:" -msgstr "" - -#: ../../include/channel.php:1238 -msgid "Dislikes:" -msgstr "" - -#: ../../include/channel.php:1240 -msgid "Contact information and Social Networks:" -msgstr "" - -#: ../../include/channel.php:1242 -msgid "My other channels:" -msgstr "" - -#: ../../include/channel.php:1244 -msgid "Musical interests:" -msgstr "" - -#: ../../include/channel.php:1246 -msgid "Books, literature:" -msgstr "" - -#: ../../include/channel.php:1248 -msgid "Television:" -msgstr "" - -#: ../../include/channel.php:1250 -msgid "Film/dance/culture/entertainment:" -msgstr "" - -#: ../../include/channel.php:1252 -msgid "Love/Romance:" -msgstr "" - -#: ../../include/channel.php:1254 -msgid "Work/employment:" -msgstr "" - -#: ../../include/channel.php:1256 -msgid "School/education:" -msgstr "" - -#: ../../include/channel.php:1277 -msgid "Like this thing" +#: ../../include/group.php:314 +msgid "Channels not in any privacy group" msgstr "" #: ../../include/permissions.php:26 @@ -9715,14 +8841,905 @@ msgstr "" msgid "Custom/Expert Mode" msgstr "" -#: ../../include/auth.php:105 +#: ../../include/account.php:28 +msgid "Not a valid email address" +msgstr "" + +#: ../../include/account.php:30 +msgid "Your email domain is not among those allowed on this site" +msgstr "" + +#: ../../include/account.php:36 +msgid "Your email address is already registered at this site." +msgstr "" + +#: ../../include/account.php:68 +msgid "An invitation is required." +msgstr "" + +#: ../../include/account.php:72 +msgid "Invitation could not be verified." +msgstr "" + +#: ../../include/account.php:122 +msgid "Please enter the required information." +msgstr "" + +#: ../../include/account.php:189 +msgid "Failed to store account information." +msgstr "" + +#: ../../include/account.php:249 +#, php-format +msgid "Registration confirmation for %s" +msgstr "" + +#: ../../include/account.php:315 +#, php-format +msgid "Registration request at %s" +msgstr "" + +#: ../../include/account.php:339 +msgid "your registration password" +msgstr "" + +#: ../../include/account.php:342 ../../include/account.php:402 +#, php-format +msgid "Registration details for %s" +msgstr "" + +#: ../../include/account.php:414 +msgid "Account approved." +msgstr "" + +#: ../../include/account.php:454 +#, php-format +msgid "Registration revoked for %s" +msgstr "" + +#: ../../include/account.php:739 ../../include/account.php:741 +msgid "Click here to upgrade." +msgstr "" + +#: ../../include/account.php:747 +msgid "This action exceeds the limits set by your subscription plan." +msgstr "" + +#: ../../include/account.php:752 +msgid "This action is not available under your subscription plan." +msgstr "" + +#: ../../include/api.php:1326 +msgid "Public Timeline" +msgstr "" + +#: ../../include/attach.php:247 ../../include/attach.php:333 +msgid "Item was not found." +msgstr "" + +#: ../../include/attach.php:499 +msgid "No source file." +msgstr "" + +#: ../../include/attach.php:521 +msgid "Cannot locate file to replace" +msgstr "" + +#: ../../include/attach.php:539 +msgid "Cannot locate file to revise/update" +msgstr "" + +#: ../../include/attach.php:674 +#, php-format +msgid "File exceeds size limit of %d" +msgstr "" + +#: ../../include/attach.php:688 +#, php-format +msgid "You have reached your limit of %1$.0f Mbytes attachment storage." +msgstr "" + +#: ../../include/attach.php:846 +msgid "File upload failed. Possible system limit or action terminated." +msgstr "" + +#: ../../include/attach.php:859 +msgid "Stored file could not be verified. Upload failed." +msgstr "" + +#: ../../include/attach.php:915 ../../include/attach.php:931 +msgid "Path not available." +msgstr "" + +#: ../../include/attach.php:977 ../../include/attach.php:1129 +msgid "Empty pathname" +msgstr "" + +#: ../../include/attach.php:1003 +msgid "duplicate filename or path" +msgstr "" + +#: ../../include/attach.php:1025 +msgid "Path not found." +msgstr "" + +#: ../../include/attach.php:1083 +msgid "mkdir failed." +msgstr "" + +#: ../../include/attach.php:1087 +msgid "database storage failed." +msgstr "" + +#: ../../include/attach.php:1135 +msgid "Empty path" +msgstr "" + +#: ../../include/bbcode.php:123 ../../include/bbcode.php:878 +#: ../../include/bbcode.php:881 ../../include/bbcode.php:886 +#: ../../include/bbcode.php:889 ../../include/bbcode.php:892 +#: ../../include/bbcode.php:895 ../../include/bbcode.php:900 +#: ../../include/bbcode.php:903 ../../include/bbcode.php:908 +#: ../../include/bbcode.php:911 ../../include/bbcode.php:914 +#: ../../include/bbcode.php:917 +msgid "Image/photo" +msgstr "" + +#: ../../include/bbcode.php:162 ../../include/bbcode.php:928 +msgid "Encrypted content" +msgstr "" + +#: ../../include/bbcode.php:178 +#, php-format +msgid "Install %s element: " +msgstr "" + +#: ../../include/bbcode.php:182 +#, php-format +msgid "" +"This post contains an installable %s element, however you lack permissions " +"to install it on this site." +msgstr "" + +#: ../../include/bbcode.php:261 +#, php-format +msgid "%1$s wrote the following %2$s %3$s" +msgstr "" + +#: ../../include/bbcode.php:338 ../../include/bbcode.php:346 +msgid "Click to open/close" +msgstr "" + +#: ../../include/bbcode.php:346 +msgid "spoiler" +msgstr "" + +#: ../../include/bbcode.php:619 +msgid "Different viewers will see this text differently" +msgstr "" + +#: ../../include/bbcode.php:866 +msgid "$1 wrote:" +msgstr "" + +#: ../../include/import.php:29 +msgid "" +"Cannot create a duplicate channel identifier on this system. Import failed." +msgstr "" + +#: ../../include/import.php:76 +msgid "Channel clone failed. Import failed." +msgstr "" + +#: ../../include/auth.php:116 msgid "Logged out." msgstr "" -#: ../../include/auth.php:212 +#: ../../include/auth.php:237 msgid "Failed authentication" msgstr "" +#: ../../include/activities.php:41 +msgid " and " +msgstr "" + +#: ../../include/activities.php:49 +msgid "public profile" +msgstr "" + +#: ../../include/activities.php:58 +#, php-format +msgid "%1$s changed %2$s to “%3$s”" +msgstr "" + +#: ../../include/activities.php:59 +#, php-format +msgid "Visit %1$s's %2$s" +msgstr "" + +#: ../../include/activities.php:62 +#, php-format +msgid "%1$s has an updated %2$s, changing %3$s." +msgstr "" + +#: ../../include/zot.php:709 +msgid "Invalid data packet" +msgstr "" + +#: ../../include/zot.php:725 +msgid "Unable to verify channel signature" +msgstr "" + +#: ../../include/zot.php:2373 +#, php-format +msgid "Unable to verify site signature for %s" +msgstr "" + +#: ../../include/zot.php:3723 +msgid "invalid target signature" +msgstr "" + +#: ../../include/bb2diaspora.php:398 +msgid "Attachments:" +msgstr "" + +#: ../../include/bb2diaspora.php:487 +msgid "$Projectname event notification:" +msgstr "" + +#: ../../include/js_strings.php:5 +msgid "Delete this item?" +msgstr "" + +#: ../../include/js_strings.php:8 +#, php-format +msgid "%s show less" +msgstr "" + +#: ../../include/js_strings.php:9 +#, php-format +msgid "%s expand" +msgstr "" + +#: ../../include/js_strings.php:10 +#, php-format +msgid "%s collapse" +msgstr "" + +#: ../../include/js_strings.php:11 +msgid "Password too short" +msgstr "" + +#: ../../include/js_strings.php:12 +msgid "Passwords do not match" +msgstr "" + +#: ../../include/js_strings.php:13 +msgid "everybody" +msgstr "" + +#: ../../include/js_strings.php:14 +msgid "Secret Passphrase" +msgstr "" + +#: ../../include/js_strings.php:15 +msgid "Passphrase hint" +msgstr "" + +#: ../../include/js_strings.php:16 +msgid "Notice: Permissions have changed but have not yet been submitted." +msgstr "" + +#: ../../include/js_strings.php:17 +msgid "close all" +msgstr "" + +#: ../../include/js_strings.php:18 +msgid "Nothing new here" +msgstr "" + +#: ../../include/js_strings.php:19 +msgid "Rate This Channel (this is public)" +msgstr "" + +#: ../../include/js_strings.php:21 +msgid "Describe (optional)" +msgstr "" + +#: ../../include/js_strings.php:23 +msgid "Please enter a link URL" +msgstr "" + +#: ../../include/js_strings.php:24 +msgid "Unsaved changes. Are you sure you wish to leave this page?" +msgstr "" + +#: ../../include/js_strings.php:27 +msgid "timeago.prefixAgo" +msgstr "" + +#: ../../include/js_strings.php:28 +msgid "timeago.prefixFromNow" +msgstr "" + +#: ../../include/js_strings.php:29 +msgid "ago" +msgstr "" + +#: ../../include/js_strings.php:30 +msgid "from now" +msgstr "" + +#: ../../include/js_strings.php:31 +msgid "less than a minute" +msgstr "" + +#: ../../include/js_strings.php:32 +msgid "about a minute" +msgstr "" + +#: ../../include/js_strings.php:33 +#, php-format +msgid "%d minutes" +msgstr "" + +#: ../../include/js_strings.php:34 +msgid "about an hour" +msgstr "" + +#: ../../include/js_strings.php:35 +#, php-format +msgid "about %d hours" +msgstr "" + +#: ../../include/js_strings.php:36 +msgid "a day" +msgstr "" + +#: ../../include/js_strings.php:37 +#, php-format +msgid "%d days" +msgstr "" + +#: ../../include/js_strings.php:38 +msgid "about a month" +msgstr "" + +#: ../../include/js_strings.php:39 +#, php-format +msgid "%d months" +msgstr "" + +#: ../../include/js_strings.php:40 +msgid "about a year" +msgstr "" + +#: ../../include/js_strings.php:41 +#, php-format +msgid "%d years" +msgstr "" + +#: ../../include/js_strings.php:42 +msgid " " +msgstr "" + +#: ../../include/js_strings.php:43 +msgid "timeago.numbers" +msgstr "" + +#: ../../include/js_strings.php:45 ../../include/text.php:1241 +msgid "January" +msgstr "" + +#: ../../include/js_strings.php:46 ../../include/text.php:1241 +msgid "February" +msgstr "" + +#: ../../include/js_strings.php:47 ../../include/text.php:1241 +msgid "March" +msgstr "" + +#: ../../include/js_strings.php:48 ../../include/text.php:1241 +msgid "April" +msgstr "" + +#: ../../include/js_strings.php:49 +msgctxt "long" +msgid "May" +msgstr "" + +#: ../../include/js_strings.php:50 ../../include/text.php:1241 +msgid "June" +msgstr "" + +#: ../../include/js_strings.php:51 ../../include/text.php:1241 +msgid "July" +msgstr "" + +#: ../../include/js_strings.php:52 ../../include/text.php:1241 +msgid "August" +msgstr "" + +#: ../../include/js_strings.php:53 ../../include/text.php:1241 +msgid "September" +msgstr "" + +#: ../../include/js_strings.php:54 ../../include/text.php:1241 +msgid "October" +msgstr "" + +#: ../../include/js_strings.php:55 ../../include/text.php:1241 +msgid "November" +msgstr "" + +#: ../../include/js_strings.php:56 ../../include/text.php:1241 +msgid "December" +msgstr "" + +#: ../../include/js_strings.php:57 +msgid "Jan" +msgstr "" + +#: ../../include/js_strings.php:58 +msgid "Feb" +msgstr "" + +#: ../../include/js_strings.php:59 +msgid "Mar" +msgstr "" + +#: ../../include/js_strings.php:60 +msgid "Apr" +msgstr "" + +#: ../../include/js_strings.php:61 +msgctxt "short" +msgid "May" +msgstr "" + +#: ../../include/js_strings.php:62 +msgid "Jun" +msgstr "" + +#: ../../include/js_strings.php:63 +msgid "Jul" +msgstr "" + +#: ../../include/js_strings.php:64 +msgid "Aug" +msgstr "" + +#: ../../include/js_strings.php:65 +msgid "Sep" +msgstr "" + +#: ../../include/js_strings.php:66 +msgid "Oct" +msgstr "" + +#: ../../include/js_strings.php:67 +msgid "Nov" +msgstr "" + +#: ../../include/js_strings.php:68 +msgid "Dec" +msgstr "" + +#: ../../include/js_strings.php:69 ../../include/text.php:1237 +msgid "Sunday" +msgstr "" + +#: ../../include/js_strings.php:70 ../../include/text.php:1237 +msgid "Monday" +msgstr "" + +#: ../../include/js_strings.php:71 ../../include/text.php:1237 +msgid "Tuesday" +msgstr "" + +#: ../../include/js_strings.php:72 ../../include/text.php:1237 +msgid "Wednesday" +msgstr "" + +#: ../../include/js_strings.php:73 ../../include/text.php:1237 +msgid "Thursday" +msgstr "" + +#: ../../include/js_strings.php:74 ../../include/text.php:1237 +msgid "Friday" +msgstr "" + +#: ../../include/js_strings.php:75 ../../include/text.php:1237 +msgid "Saturday" +msgstr "" + +#: ../../include/js_strings.php:76 +msgid "Sun" +msgstr "" + +#: ../../include/js_strings.php:77 +msgid "Mon" +msgstr "" + +#: ../../include/js_strings.php:78 +msgid "Tue" +msgstr "" + +#: ../../include/js_strings.php:79 +msgid "Wed" +msgstr "" + +#: ../../include/js_strings.php:80 +msgid "Thu" +msgstr "" + +#: ../../include/js_strings.php:81 +msgid "Fri" +msgstr "" + +#: ../../include/js_strings.php:82 +msgid "Sat" +msgstr "" + +#: ../../include/js_strings.php:83 +msgctxt "calendar" +msgid "today" +msgstr "" + +#: ../../include/js_strings.php:84 +msgctxt "calendar" +msgid "month" +msgstr "" + +#: ../../include/js_strings.php:85 +msgctxt "calendar" +msgid "week" +msgstr "" + +#: ../../include/js_strings.php:86 +msgctxt "calendar" +msgid "day" +msgstr "" + +#: ../../include/js_strings.php:87 +msgctxt "calendar" +msgid "All day" +msgstr "" + +#: ../../include/contact_widgets.php:11 +#, php-format +msgid "%d invitation available" +msgid_plural "%d invitations available" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/contact_widgets.php:19 +msgid "Find Channels" +msgstr "" + +#: ../../include/contact_widgets.php:20 +msgid "Enter name or interest" +msgstr "" + +#: ../../include/contact_widgets.php:21 +msgid "Connect/Follow" +msgstr "" + +#: ../../include/contact_widgets.php:22 +msgid "Examples: Robert Morgenstein, Fishing" +msgstr "" + +#: ../../include/contact_widgets.php:26 +msgid "Random Profile" +msgstr "" + +#: ../../include/contact_widgets.php:27 +msgid "Invite Friends" +msgstr "" + +#: ../../include/contact_widgets.php:29 +msgid "Advanced example: name=fred and country=iceland" +msgstr "" + +#: ../../include/contact_widgets.php:122 +#, php-format +msgid "%d connection in common" +msgid_plural "%d connections in common" +msgstr[0] "" +msgstr[1] "" + +#: ../../include/contact_widgets.php:127 +msgid "show more" +msgstr "" + +#: ../../include/dir_fns.php:141 +msgid "Directory Options" +msgstr "" + +#: ../../include/dir_fns.php:143 +msgid "Safe Mode" +msgstr "" + +#: ../../include/dir_fns.php:144 +msgid "Public Forums Only" +msgstr "" + +#: ../../include/dir_fns.php:145 +msgid "This Website Only" +msgstr "" + +#: ../../include/message.php:20 +msgid "No recipient provided." +msgstr "" + +#: ../../include/message.php:25 +msgid "[no subject]" +msgstr "" + +#: ../../include/message.php:45 +msgid "Unable to determine sender." +msgstr "" + +#: ../../include/message.php:222 +msgid "Stored post could not be verified." +msgstr "" + +#: ../../include/acl_selectors.php:269 +msgid "Who can see this?" +msgstr "" + +#: ../../include/acl_selectors.php:270 +msgid "Custom selection" +msgstr "" + +#: ../../include/acl_selectors.php:271 +msgid "" +"Select \"Show\" to allow viewing. \"Don't show\" lets you override and limit " +"the scope of \"Show\"." +msgstr "" + +#: ../../include/acl_selectors.php:272 +msgid "Show" +msgstr "" + +#: ../../include/acl_selectors.php:273 +msgid "Don't show" +msgstr "" + +#: ../../include/acl_selectors.php:279 +msgid "Other networks and post services" +msgstr "" + +#: ../../include/acl_selectors.php:309 +#, php-format +msgid "" +"Post permissions %s cannot be changed %s after a post is shared.
These " +"permissions set who is allowed to view the post." +msgstr "" + +#: ../../include/security.php:108 +msgid "guest:" +msgstr "" + +#: ../../include/security.php:425 +msgid "" +"The form security token was not correct. This probably happened because the " +"form has been opened for too long (>3 hours) before submitting it." +msgstr "" + +#: ../../include/text.php:404 +msgid "prev" +msgstr "" + +#: ../../include/text.php:406 +msgid "first" +msgstr "" + +#: ../../include/text.php:435 +msgid "last" +msgstr "" + +#: ../../include/text.php:438 +msgid "next" +msgstr "" + +#: ../../include/text.php:448 +msgid "older" +msgstr "" + +#: ../../include/text.php:450 +msgid "newer" +msgstr "" + +#: ../../include/text.php:843 +msgid "No connections" +msgstr "" + +#: ../../include/text.php:868 +#, php-format +msgid "View all %s connections" +msgstr "" + +#: ../../include/text.php:1013 ../../include/text.php:1018 +msgid "poke" +msgstr "" + +#: ../../include/text.php:1019 +msgid "ping" +msgstr "" + +#: ../../include/text.php:1019 +msgid "pinged" +msgstr "" + +#: ../../include/text.php:1020 +msgid "prod" +msgstr "" + +#: ../../include/text.php:1020 +msgid "prodded" +msgstr "" + +#: ../../include/text.php:1021 +msgid "slap" +msgstr "" + +#: ../../include/text.php:1021 +msgid "slapped" +msgstr "" + +#: ../../include/text.php:1022 +msgid "finger" +msgstr "" + +#: ../../include/text.php:1022 +msgid "fingered" +msgstr "" + +#: ../../include/text.php:1023 +msgid "rebuff" +msgstr "" + +#: ../../include/text.php:1023 +msgid "rebuffed" +msgstr "" + +#: ../../include/text.php:1035 +msgid "happy" +msgstr "" + +#: ../../include/text.php:1036 +msgid "sad" +msgstr "" + +#: ../../include/text.php:1037 +msgid "mellow" +msgstr "" + +#: ../../include/text.php:1038 +msgid "tired" +msgstr "" + +#: ../../include/text.php:1039 +msgid "perky" +msgstr "" + +#: ../../include/text.php:1040 +msgid "angry" +msgstr "" + +#: ../../include/text.php:1041 +msgid "stupefied" +msgstr "" + +#: ../../include/text.php:1042 +msgid "puzzled" +msgstr "" + +#: ../../include/text.php:1043 +msgid "interested" +msgstr "" + +#: ../../include/text.php:1044 +msgid "bitter" +msgstr "" + +#: ../../include/text.php:1045 +msgid "cheerful" +msgstr "" + +#: ../../include/text.php:1046 +msgid "alive" +msgstr "" + +#: ../../include/text.php:1047 +msgid "annoyed" +msgstr "" + +#: ../../include/text.php:1048 +msgid "anxious" +msgstr "" + +#: ../../include/text.php:1049 +msgid "cranky" +msgstr "" + +#: ../../include/text.php:1050 +msgid "disturbed" +msgstr "" + +#: ../../include/text.php:1051 +msgid "frustrated" +msgstr "" + +#: ../../include/text.php:1052 +msgid "depressed" +msgstr "" + +#: ../../include/text.php:1053 +msgid "motivated" +msgstr "" + +#: ../../include/text.php:1054 +msgid "relaxed" +msgstr "" + +#: ../../include/text.php:1055 +msgid "surprised" +msgstr "" + +#: ../../include/text.php:1241 +msgid "May" +msgstr "" + +#: ../../include/text.php:1318 ../../include/text.php:1322 +msgid "Unknown Attachment" +msgstr "" + +#: ../../include/text.php:1324 +msgid "unknown" +msgstr "" + +#: ../../include/text.php:1360 +msgid "remove category" +msgstr "" + +#: ../../include/text.php:1437 +msgid "remove from file" +msgstr "" + +#: ../../include/text.php:1734 ../../include/text.php:1805 +msgid "default" +msgstr "" + +#: ../../include/text.php:1742 +msgid "Page layout" +msgstr "" + +#: ../../include/text.php:1742 +msgid "You can create your own with the layouts tool" +msgstr "" + +#: ../../include/text.php:1784 +msgid "Page content type" +msgstr "" + +#: ../../include/text.php:1817 +msgid "Select an alternate language" +msgstr "" + +#: ../../include/text.php:1934 +msgid "activity" +msgstr "" + +#: ../../include/text.php:2243 +msgid "Design Tools" +msgstr "" + +#: ../../include/text.php:2249 +msgid "Pages" +msgstr "" + #: ../../view/theme/redbasic/php/config.php:82 msgid "Focus (Hubzilla default)" msgstr "" From 5e475acb85cac2dd87f92f6c8d51dc0071e5c2eb Mon Sep 17 00:00:00 2001 From: redmatrix Date: Fri, 15 Jul 2016 01:33:28 -0700 Subject: [PATCH 26/58] cleanup and debug of atoken feature --- Zotlabs/Module/Settings.php | 4 ++-- view/theme/redbasic/css/style.css | 8 ++++++++ view/tpl/settings_tokens.tpl | 4 ++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Zotlabs/Module/Settings.php b/Zotlabs/Module/Settings.php index b1f6c8144..44088fea5 100644 --- a/Zotlabs/Module/Settings.php +++ b/Zotlabs/Module/Settings.php @@ -138,7 +138,7 @@ class Settings extends \Zotlabs\Web\Controller { return; } if($atoken_id) { - $r = q("update atoken set atoken_name = '%s', atoken_token = '%s' atoken_expire = '%s' + $r = q("update atoken set atoken_name = '%s', atoken_token = '%s' atoken_expires = '%s' where atoken_id = %d and atoken_uid = %d", dbesc($name), dbesc($token), @@ -148,7 +148,7 @@ class Settings extends \Zotlabs\Web\Controller { ); } else { - $r = q("insert into atoken ( atoken_aid, atoken_uid, atoken_name, atoken_token, atoken_expire ) + $r = q("insert into atoken ( atoken_aid, atoken_uid, atoken_name, atoken_token, atoken_expires ) values ( %d, %d, '%s', '%s', '%s' ) ", intval($channel['channel_account_id']), intval($channel['channel_id']), diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 5768ccbd9..5f1637c50 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -2039,3 +2039,11 @@ dl.bb-dl > dd > li { border-style: solid; border-width: 5px; } + +.atoken-list { + margin-right: 5px; + list-style-type: none; +} +.atoken-list li { + margin-bottom: 8px; +} \ No newline at end of file diff --git a/view/tpl/settings_tokens.tpl b/view/tpl/settings_tokens.tpl index 8763a681c..73c6e9a64 100644 --- a/view/tpl/settings_tokens.tpl +++ b/view/tpl/settings_tokens.tpl @@ -17,9 +17,9 @@ {{if $tokens}}
-
From d54f5a3831ec003468e33185318a060711cb9c09 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Fri, 15 Jul 2016 01:43:09 -0700 Subject: [PATCH 27/58] more cleanup of atoken UI --- Zotlabs/Module/Settings.php | 5 ++++- view/theme/redbasic/css/style.css | 5 ++++- view/tpl/settings_tokens.tpl | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Zotlabs/Module/Settings.php b/Zotlabs/Module/Settings.php index 44088fea5..20aa59f78 100644 --- a/Zotlabs/Module/Settings.php +++ b/Zotlabs/Module/Settings.php @@ -134,7 +134,7 @@ class Settings extends \Zotlabs\Web\Controller { $expires = NULL_DATE; } if($token_errs) { - notice( t('Name and Token are required.') . EOL); + notice( t('Name and Password are required.') . EOL); return; } if($atoken_id) { @@ -774,10 +774,13 @@ class Settings extends \Zotlabs\Web\Controller { intval(local_channel()) ); + $desc = t('Use this form to create temporary access identifiers to share things with non-members. These identities may be used in Access Control Lists and visitors may login using these credentials to access the private content.'); + $tpl = get_markup_template("settings_tokens.tpl"); $o .= replace_macros($tpl, array( '$form_security_token' => get_form_security_token("settings_tokens"), '$title' => t('Guest Access Tokens'), + '$desc' => $desc, '$tokens' => $t, '$atoken' => $atoken, '$name' => array('name', t('Login Name'), (($atoken) ? $atoken['atoken_name'] : ''),''), diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index 5f1637c50..e39c9eb11 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -2045,5 +2045,8 @@ dl.bb-dl > dd > li { list-style-type: none; } .atoken-list li { - margin-bottom: 8px; + margin-bottom: 10px; +} +.atoken-text { + margin: 5px 10px 5px 10px; } \ No newline at end of file diff --git a/view/tpl/settings_tokens.tpl b/view/tpl/settings_tokens.tpl index 73c6e9a64..a81d65dfc 100644 --- a/view/tpl/settings_tokens.tpl +++ b/view/tpl/settings_tokens.tpl @@ -3,6 +3,7 @@

{{$title}}

+
{{$desc}}
{{if $atoken}}{{/if}} From da5ec98f98dd8cef034d568bf0f67231e8517bd4 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Fri, 15 Jul 2016 02:07:27 -0700 Subject: [PATCH 28/58] make lockview work with throwaway identities --- Zotlabs/Module/Lockview.php | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/Zotlabs/Module/Lockview.php b/Zotlabs/Module/Lockview.php index 4776e1c56..d86a3c1d8 100644 --- a/Zotlabs/Module/Lockview.php +++ b/Zotlabs/Module/Lockview.php @@ -1,17 +1,31 @@ 1) ? argv(1) : 0); if (is_numeric($type)) { $item_id = intval($type); $type='item'; - } else { + } + else { $item_id = ((argc() > 2) ? intval(argv(2)) : 0); } @@ -98,6 +112,13 @@ class Lockview extends \Zotlabs\Web\Controller { if($r) foreach($r as $rr) $l[] = '
  • ' . $rr['xchan_name'] . '
  • '; + if($atokens) { + foreach($atokens as $at) { + if(in_array("'" . $at['xchan_hash'] . "'",$allowed_users)) { + $l[] = '
  • ' . $at['xchan_name'] . '
  • '; + } + } + } } if(count($deny_groups)) { $r = q("SELECT gname FROM `groups` WHERE hash IN ( " . implode(', ', $deny_groups) . " )"); @@ -110,6 +131,16 @@ class Lockview extends \Zotlabs\Web\Controller { if($r) foreach($r as $rr) $l[] = '
  • ' . $rr['xchan_name'] . '
  • '; + + if($atokens) { + foreach($atokens as $at) { + if(in_array("'" . $at['xchan_hash'] . "'",$deny_users)) { + $l[] = '
  • ' . $at['xchan_name'] . '
  • '; + } + } + } + + } echo $o . implode($l); From 2e32b5f467e9bb66e339c56308ad8a82163566e6 Mon Sep 17 00:00:00 2001 From: Mario Vavti Date: Fri, 15 Jul 2016 13:20:00 +0200 Subject: [PATCH 29/58] upgrade to jquery-3.1 and minor fixes --- view/css/bootstrap-red.css | 1 + view/css/conversation.css | 4 +- view/css/mod_directory.css | 2 +- view/js/jquery-migrate-1.1.1.js | 511 ------------------------------ view/js/jquery.js | 8 +- view/js/main.js | 9 +- view/php/theme_init.php | 2 +- view/theme/redbasic/css/style.css | 3 - view/tpl/contact_block.tpl | 1 - view/tpl/cover_photo_widget.tpl | 20 +- 10 files changed, 30 insertions(+), 531 deletions(-) delete mode 100644 view/js/jquery-migrate-1.1.1.js diff --git a/view/css/bootstrap-red.css b/view/css/bootstrap-red.css index 20df16446..b68517e25 100644 --- a/view/css/bootstrap-red.css +++ b/view/css/bootstrap-red.css @@ -5,6 +5,7 @@ nav .badge { position: relative; top: -49px; + left: 2px; float: left; font-size: 10px; line-height: 20px; diff --git a/view/css/conversation.css b/view/css/conversation.css index b6e316121..68aa8bfbe 100644 --- a/view/css/conversation.css +++ b/view/css/conversation.css @@ -121,7 +121,7 @@ a.wall-item-name-link { } .wall-item-content { - overflow: auto; + overflow: hidden; } .wall-item-content h1, @@ -316,4 +316,4 @@ code.inline-code { img.smiley.emoji:hover { width: 32px; height: 32px; -} \ No newline at end of file +} diff --git a/view/css/mod_directory.css b/view/css/mod_directory.css index 9bfea856d..af89e597d 100644 --- a/view/css/mod_directory.css +++ b/view/css/mod_directory.css @@ -30,5 +30,5 @@ } .directory-collapse { - overflow: auto; + overflow: hidden; } diff --git a/view/js/jquery-migrate-1.1.1.js b/view/js/jquery-migrate-1.1.1.js deleted file mode 100644 index e99f954e6..000000000 --- a/view/js/jquery-migrate-1.1.1.js +++ /dev/null @@ -1,511 +0,0 @@ -/*! - * jQuery Migrate - v1.1.1 - 2013-02-16 - * https://github.com/jquery/jquery-migrate - * Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors; Licensed MIT - */ -(function( jQuery, window, undefined ) { -// See http://bugs.jquery.com/ticket/13335 -// "use strict"; - - -var warnedAbout = {}; - -// List of warnings already given; public read only -jQuery.migrateWarnings = []; - -// Set to true to prevent console output; migrateWarnings still maintained -// jQuery.migrateMute = false; - -// Show a message on the console so devs know we're active -if ( !jQuery.migrateMute && window.console && console.log ) { - console.log("JQMIGRATE: Logging is active"); -} - -// Set to false to disable traces that appear with warnings -if ( jQuery.migrateTrace === undefined ) { - jQuery.migrateTrace = true; -} - -// Forget any warnings we've already given; public -jQuery.migrateReset = function() { - warnedAbout = {}; - jQuery.migrateWarnings.length = 0; -}; - -function migrateWarn( msg) { - if ( !warnedAbout[ msg ] ) { - warnedAbout[ msg ] = true; - jQuery.migrateWarnings.push( msg ); - if ( window.console && console.warn && !jQuery.migrateMute ) { - console.warn( "JQMIGRATE: " + msg ); - if ( jQuery.migrateTrace && console.trace ) { - console.trace(); - } - } - } -} - -function migrateWarnProp( obj, prop, value, msg ) { - if ( Object.defineProperty ) { - // On ES5 browsers (non-oldIE), warn if the code tries to get prop; - // allow property to be overwritten in case some other plugin wants it - try { - Object.defineProperty( obj, prop, { - configurable: true, - enumerable: true, - get: function() { - migrateWarn( msg ); - return value; - }, - set: function( newValue ) { - migrateWarn( msg ); - value = newValue; - } - }); - return; - } catch( err ) { - // IE8 is a dope about Object.defineProperty, can't warn there - } - } - - // Non-ES5 (or broken) browser; just set the property - jQuery._definePropertyBroken = true; - obj[ prop ] = value; -} - -if ( document.compatMode === "BackCompat" ) { - // jQuery has never supported or tested Quirks Mode - migrateWarn( "jQuery is not compatible with Quirks Mode" ); -} - - -var attrFn = jQuery( "", { size: 1 } ).attr("size") && jQuery.attrFn, - oldAttr = jQuery.attr, - valueAttrGet = jQuery.attrHooks.value && jQuery.attrHooks.value.get || - function() { return null; }, - valueAttrSet = jQuery.attrHooks.value && jQuery.attrHooks.value.set || - function() { return undefined; }, - rnoType = /^(?:input|button)$/i, - rnoAttrNodeType = /^[238]$/, - rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, - ruseDefault = /^(?:checked|selected)$/i; - -// jQuery.attrFn -migrateWarnProp( jQuery, "attrFn", attrFn || {}, "jQuery.attrFn is deprecated" ); - -jQuery.attr = function( elem, name, value, pass ) { - var lowerName = name.toLowerCase(), - nType = elem && elem.nodeType; - - if ( pass ) { - // Since pass is used internally, we only warn for new jQuery - // versions where there isn't a pass arg in the formal params - if ( oldAttr.length < 4 ) { - migrateWarn("jQuery.fn.attr( props, pass ) is deprecated"); - } - if ( elem && !rnoAttrNodeType.test( nType ) && - (attrFn ? name in attrFn : jQuery.isFunction(jQuery.fn[name])) ) { - return jQuery( elem )[ name ]( value ); - } - } - - // Warn if user tries to set `type`, since it breaks on IE 6/7/8; by checking - // for disconnected elements we don't warn on $( "