From b76dc8b129eeee465f1c288b1c4e6d726a0a0c9e Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Sat, 23 Jan 2016 22:05:27 +0100 Subject: [PATCH 1/5] Frequently repair of database entries --- include/cron.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/include/cron.php b/include/cron.php index bf3243cb60..71af5d826f 100644 --- a/include/cron.php +++ b/include/cron.php @@ -164,6 +164,9 @@ function cron_run(&$argv, &$argc){ // Repair missing Diaspora values in contacts cron_repair_diaspora($a); + // Repair entries in the database + cron_repair_database(); + $manual_id = 0; $generation = 0; $force = false; @@ -417,6 +420,24 @@ function cron_repair_diaspora(&$a) { } } +/** + * @brief Do some repairs in database entries + * + */ +function cron_repair_database() { + + // Set the parent if it wasn't set. (Shouldn't happen - but does sometimes) + // This call is very "cheap" so we can do it at any time without a problem + q("UPDATE `item` INNER JOIN `item` AS `parent` ON `parent`.`uri` = `item`.`parent-uri` AND `parent`.`uid` = `item`.`uid` SET `item`.`parent` = `parent`.`id` WHERE `item`.`parent` = 0"); + + /// @todo + // - remove duplicated contacts with uid=0 (We could do this at the place where the contacts are stored) + // - remove thread entries without item + // - remove sign entries without item + // - remove children when parent got lost + // - set contact-id in item when not present +} + if (array_search(__file__,get_included_files())===0){ cron_run($_SERVER["argv"],$_SERVER["argc"]); killme(); From 60470cfafad212e00ef19aacd2e3e8bb2e8f084e Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Sat, 23 Jan 2016 22:36:15 +0100 Subject: [PATCH 2/5] New handling for filling the gcontact table / duplicate prevention --- include/gprobe.php | 19 ++-- include/socgraph.php | 201 ++++++++++++------------------------------- 2 files changed, 61 insertions(+), 159 deletions(-) diff --git a/include/gprobe.php b/include/gprobe.php index 84292f263a..dfa9137d7d 100644 --- a/include/gprobe.php +++ b/include/gprobe.php @@ -33,7 +33,7 @@ function gprobe_run(&$argv, &$argc){ $url = hex2bin($argv[1]); - $r = q("select * from gcontact where nurl = '%s' limit 1", + $r = q("SELECT `id`, `url`, `network` FROM `gcontact` WHERE `nurl` = '%s' ORDER BY `id` LIMIT 1", dbesc(normalise_link($url)) ); @@ -58,21 +58,16 @@ function gprobe_run(&$argv, &$argc){ if (is_null($result)) Cache::set("gprobe:".$urlparts["host"],serialize($arr)); - if(count($arr) && x($arr,'network') && $arr['network'] === NETWORK_DFRN) { - q("insert into `gcontact` (`name`,`url`,`nurl`,`photo`) - values ( '%s', '%s', '%s', '%s') ", - dbesc($arr['name']), - dbesc($arr['url']), - dbesc(normalise_link($arr['url'])), - dbesc($arr['photo']) - ); - } - $r = q("select * from gcontact where nurl = '%s' limit 1", + if (!in_array($result["network"], array(NETWORK_FEED, NETWORK_PHANTOM))) + update_gcontact($arr); + + $r = q("SELECT `id`, `url`, `network` FROM `gcontact` WHERE `nurl` = '%s' ORDER BY `id` LIMIT 1", dbesc(normalise_link($url)) ); } if(count($r)) - poco_load(0,0,$r[0]['id'], str_replace('/profile/','/poco/',$r[0]['url'])); + if ($r[0]["network"] == NETWORK_DFRN) + poco_load(0,0,$r[0]['id'], str_replace('/profile/','/poco/',$r[0]['url'])); logger("gprobe end for ".normalise_link($url), LOGGER_DEBUG); return; diff --git a/include/socgraph.php b/include/socgraph.php index 4532abb39b..c545343393 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -289,93 +289,25 @@ function poco_check($profile_url, $name, $network, $profile_photo, $about, $loca poco_check_server($server_url, $network); - if(count($x)) { - $gcid = $x[0]['id']; + $gcontact = array("url" => $profile_url, + "addr" => $addr, + "alias" => $alias, + "name" => $name, + "network" => $network, + "photo" => $profile_photo, + "about" => $about, + "location" => $location, + "gender" => $gender, + "keywords" => $keywords, + "server_url" => $server_url, + "connect" => $connect_url, + "notify" => $notify, + "updated" => $updated, + "generation" => $generation); - if (($location == "") AND ($x[0]['location'] != "")) - $location = $x[0]['location']; + $gcid = update_gcontact($gcontact); - if (($about == "") AND ($x[0]['about'] != "")) - $about = $x[0]['about']; - - if (($gender == "") AND ($x[0]['gender'] != "")) - $gender = $x[0]['gender']; - - if (($keywords == "") AND ($x[0]['keywords'] != "")) - $keywords = $x[0]['keywords']; - - if (($addr == "") AND ($x[0]['addr'] != "")) - $addr = $x[0]['addr']; - - if (($alias == "") AND ($x[0]['alias'] != "")) - $alias = $x[0]['alias']; - - if (($notify == "") AND ($x[0]['notify'] != "")) - $notify = $x[0]['notify']; - - if (($generation == 0) AND ($x[0]['generation'] > 0)) - $generation = $x[0]['generation']; - - if($x[0]['name'] != $name || $x[0]['photo'] != $profile_photo || $x[0]['updated'] < $updated) { - q("UPDATE `gcontact` SET `name` = '%s', `addr` = '%s', `network` = '%s', `photo` = '%s', `connect` = '%s', `url` = '%s', `server_url` = '%s', - `updated` = '%s', `location` = '%s', `about` = '%s', `keywords` = '%s', `gender` = '%s', `generation` = %d, - `alias` = '$s', `notify` = '%s' - WHERE (`generation` >= %d OR `generation` = 0) AND `nurl` = '%s'", - dbesc($name), - dbesc($addr), - dbesc($network), - dbesc($profile_photo), - dbesc($connect_url), - dbesc($profile_url), - dbesc($server_url), - dbesc($updated), - dbesc($location), - dbesc($about), - dbesc($keywords), - dbesc($gender), - dbesc($alias), - dbesc($notify), - intval($generation), - intval($generation), - dbesc(normalise_link($profile_url)) - ); - } - } else { - // Maybe another process had inserted the entry after the first check, so it again - $x = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' LIMIT 1", - dbesc(normalise_link($profile_url)) - ); - if(!$x) { - q("INSERT INTO `gcontact` (`name`, `nick`, `addr`, `network`, `url`, `nurl`, `photo`, `connect`, `server_url`, `created`, `updated`, `location`, `about`, `keywords`, `gender`, `alias`, `notify`, `generation`) - VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d)", - dbesc($name), - dbesc($nick), - dbesc($addr), - dbesc($network), - dbesc($profile_url), - dbesc(normalise_link($profile_url)), - dbesc($profile_photo), - dbesc($connect_url), - dbesc($server_url), - dbesc(datetime_convert()), - dbesc($updated), - dbesc($location), - dbesc($about), - dbesc($keywords), - dbesc($gender), - dbesc($alias), - dbesc($notify), - intval($generation) - ); - $x = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' LIMIT 1", - dbesc(normalise_link($profile_url)) - ); - } - if(count($x)) - $gcid = $x[0]['id']; - } - - if(! $gcid) + if(!$gcid) return $gcid; $r = q("SELECT * FROM `glink` WHERE `cid` = %d AND `uid` = %d AND `gcid` = %d AND `zcid` = %d LIMIT 1", @@ -402,13 +334,6 @@ function poco_check($profile_url, $name, $network, $profile_photo, $about, $loca ); } - // For unknown reasons there are sometimes duplicates - //q("DELETE FROM `gcontact` WHERE `nurl` = '%s' AND `id` != %d AND - // NOT EXISTS (SELECT `gcid` FROM `glink` WHERE `gcid` = `gcontact`.`id`)", - // dbesc(normalise_link($profile_url)), - // intval($gcid) - //); - return $gcid; } @@ -1540,7 +1465,7 @@ function get_gcontact_id($contact) { if ($contact["network"] == NETWORK_STATUSNET) $contact["network"] = NETWORK_OSTATUS; - $r = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' LIMIT 1", + $r = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' ORDER BY `id` LIMIT 2", dbesc(normalise_link($contact["url"]))); if ($r) @@ -1562,13 +1487,18 @@ function get_gcontact_id($contact) { intval($contact["generation"]) ); - $r = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' LIMIT 1", + $r = q("SELECT `id` FROM `gcontact` WHERE `nurl` = '%s' ORDER BY `id` LIMIT 2", dbesc(normalise_link($contact["url"]))); if ($r) $gcontact_id = $r[0]["id"]; } + if ((count($r) > 1) AND ($gcontact_id > 0) AND ($contact["url"] != "")) + q("DELETE FROM `gcontact` WHERE `nurl` = '%s' AND `id` != %d", + dbesc(normalise_link($contact["url"])), + intval($gcontact_id)); + return $gcontact_id; } @@ -1587,78 +1517,55 @@ function update_gcontact($contact) { if (!$gcontact_id) return false; - $r = q("SELECT `name`, `nick`, `photo`, `location`, `about`, `addr`, `generation`, `birthday`, `gender`, `keywords`, `hide`, `nsfw`, `network`, `alias`, `notify`, `url` + $r = q("SELECT `name`, `nick`, `photo`, `location`, `about`, `addr`, `generation`, `birthday`, `gender`, `keywords`, + `hide`, `nsfw`, `network`, `alias`, `notify`, `server_url`, `connect`, `updated`, `url` FROM `gcontact` WHERE `id` = %d LIMIT 1", intval($gcontact_id)); - if ($contact["generation"] == 0) - $contact["generation"] = $r[0]["generation"]; + // Get all field names + $fields = array(); + foreach ($r[0] AS $field => $data) + $fields[$field] = $data; - if ($contact["photo"] == "") - $contact["photo"] = $r[0]["photo"]; + unset($fields["url"]); + unset($fields["updated"]); - if ($contact["name"] == "") - $contact["name"] = $r[0]["name"]; - - if ($contact["nick"] == "") - $contact["nick"] = $r[0]["nick"]; - - if ($contact["addr"] == "") - $contact["addr"] = $r[0]["addr"]; - - if ($contact["location"] =="") - $contact["location"] = $r[0]["location"]; - - if ($contact["about"] =="") - $contact["about"] = $r[0]["about"]; - - if ($contact["birthday"] =="") - $contact["birthday"] = $r[0]["birthday"]; - - if ($contact["gender"] =="") - $contact["gender"] = $r[0]["gender"]; - - if ($contact["keywords"] =="") - $contact["keywords"] = $r[0]["keywords"]; - - if (!isset($contact["hide"])) - $contact["hide"] = $r[0]["hide"]; - - if (!isset($contact["nsfw"])) - $contact["nsfw"] = $r[0]["nsfw"]; - - if ($contact["network"] =="") - $contact["network"] = $r[0]["network"]; - - if ($contact["alias"] =="") - $contact["alias"] = $r[0]["alias"]; - - if ($contact["url"] =="") - $contact["url"] = $r[0]["url"]; - - if ($contact["notify"] =="") - $contact["notify"] = $r[0]["notify"]; + // assign all unassigned fields from the database entry + foreach ($fields AS $field => $data) + if (!isset($contact[$field])) + $contact[$field] = $r[0][$field]; if ($contact["network"] == NETWORK_STATUSNET) $contact["network"] = NETWORK_OSTATUS; - if (($contact["photo"] != $r[0]["photo"]) OR ($contact["name"] != $r[0]["name"]) OR ($contact["nick"] != $r[0]["nick"]) OR ($contact["addr"] != $r[0]["addr"]) OR - ($contact["birthday"] != $r[0]["birthday"]) OR ($contact["gender"] != $r[0]["gender"]) OR ($contact["keywords"] != $r[0]["keywords"]) OR - ($contact["hide"] != $r[0]["hide"]) OR ($contact["nsfw"] != $r[0]["nsfw"]) OR ($contact["network"] != $r[0]["network"]) OR - ($contact["alias"] != $r[0]["alias"]) OR ($contact["notify"] != $r[0]["notify"]) OR ($contact["url"] != $r[0]["url"]) OR - ($contact["location"] != $r[0]["location"]) OR ($contact["about"] != $r[0]["about"]) OR ($contact["generation"] < $r[0]["generation"])) { + if (!isset($contact["updated"])) + $contact["updated"] = datetime_convert(); + // Check if any field changed + $update = false; + unset($fields["generation"]); + + foreach ($fields AS $field => $data) + if ($contact[$field] != $r[0][$field]) + $update = true; + + if ($contact["generation"] < $r[0]["generation"]) + $update = true; + + if ($update) { q("UPDATE `gcontact` SET `photo` = '%s', `name` = '%s', `nick` = '%s', `addr` = '%s', `network` = '%s', `birthday` = '%s', `gender` = '%s', `keywords` = %d, `hide` = %d, `nsfw` = %d, `alias` = '%s', `notify` = '%s', `url` = '%s', - `location` = '%s', `about` = '%s', `generation` = %d, `updated` = '%s' + `location` = '%s', `about` = '%s', `generation` = %d, `updated` = '%s', + `server_url` = '%s', `connect` = '%s' WHERE `nurl` = '%s' AND (`generation` = 0 OR `generation` >= %d)", dbesc($contact["photo"]), dbesc($contact["name"]), dbesc($contact["nick"]), dbesc($contact["addr"]), dbesc($contact["network"]), dbesc($contact["birthday"]), dbesc($contact["gender"]), dbesc($contact["keywords"]), intval($contact["hide"]), intval($contact["nsfw"]), dbesc($contact["alias"]), dbesc($contact["notify"]), dbesc($contact["url"]), dbesc($contact["location"]), dbesc($contact["about"]), - intval($contact["generation"]), dbesc(datetime_convert()), + intval($contact["generation"]), dbesc($contact["updated"]), + dbesc($contact["server_url"]), dbesc($contact["connect"]), dbesc(normalise_link($contact["url"])), intval($contact["generation"])); } From 275f7b26604af74aa57f7a4a758735e6bc2ab928 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Sun, 24 Jan 2016 02:53:21 +0100 Subject: [PATCH 3/5] The worker now kills processes that run longer than 3 hours --- include/poller.php | 41 ++++++++++++++++++++++++++++++----------- 1 file changed, 30 insertions(+), 11 deletions(-) diff --git a/include/poller.php b/include/poller.php index c681bfb389..190f3fb1ad 100644 --- a/include/poller.php +++ b/include/poller.php @@ -39,8 +39,10 @@ function poller_run(&$argv, &$argc){ } // Checking the number of workers - if (poller_too_much_workers(1)) + if (poller_too_much_workers(1)) { + poller_kill_stale_workers(); return; + } if(($argc <= 1) OR ($argv[1] != "no_cron")) { // Run the cron job that calls all other jobs @@ -50,16 +52,7 @@ function poller_run(&$argv, &$argc){ proc_run("php","include/cronhooks.php"); // Cleaning dead processes - $r = q("SELECT DISTINCT(`pid`) FROM `workerqueue` WHERE `executed` != '0000-00-00 00:00:00'"); - foreach($r AS $pid) - if (!posix_kill($pid["pid"], 0)) - q("UPDATE `workerqueue` SET `executed` = '0000-00-00 00:00:00', `pid` = 0 WHERE `pid` = %d", - intval($pid["pid"])); - else { - /// @TODO Kill long running processes - /// But: Update processes (like the database update) mustn't be killed - } - + poller_kill_stale_workers(); } else // Sleep four seconds before checking for running processes again to avoid having too many workers sleep(4); @@ -124,6 +117,32 @@ function poller_run(&$argv, &$argc){ } +/** + * @brief fix the queue entry if the worker process died + * + */ +function poller_kill_stale_workers() { + $r = q("SELECT `pid`, `executed` FROM `workerqueue` WHERE `executed` != '0000-00-00 00:00:00'"); + foreach($r AS $pid) + if (!posix_kill($pid["pid"], 0)) + q("UPDATE `workerqueue` SET `executed` = '0000-00-00 00:00:00', `pid` = 0 WHERE `pid` = %d", + intval($pid["pid"])); + else { + // Kill long running processes + $duration = (time() - strtotime($pid["executed"])) / 60; + if ($duration > 180) { + logger("Worker process ".$pid["pid"]." took more than 3 hours. It will be killed now."); + posix_kill($pid["pid"], SIGTERM); + + // Question: If a process is stale: Should we remove it or should we reschedule it? + // By now we rescheduling it. It's maybe not the wisest decision? + q("UPDATE `workerqueue` SET `executed` = '0000-00-00 00:00:00', `pid` = 0 WHERE `pid` = %d", + intval($pid["pid"])); + } else + logger("Worker process ".$pid["pid"]." now runs for ".round($duration)." minutes. That's okay.", LOGGER_DEBUG); + } +} + function poller_too_much_workers($stage) { $queues = get_config("system", "worker_queues"); From 3108406c9f325d5569f8ac7a26319a7e6c2dce13 Mon Sep 17 00:00:00 2001 From: Tobias Diekershoff Date: Sun, 24 Jan 2016 06:52:09 +0100 Subject: [PATCH 4/5] Update to the strings --- util/messages.po | 631 ++++++++++++++++++++++++----------------------- 1 file changed, 316 insertions(+), 315 deletions(-) diff --git a/util/messages.po b/util/messages.po index 498a5bc5bc..46a9913f45 100644 --- a/util/messages.po +++ b/util/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-01-20 17:52+0100\n" +"POT-Creation-Date: 2016-01-24 06:49+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -70,7 +70,7 @@ msgstr "" #: mod/api.php:31 mod/notes.php:22 mod/poke.php:149 mod/repair_ostatus.php:9 #: mod/invite.php:15 mod/invite.php:101 mod/photos.php:171 mod/photos.php:1105 #: mod/regmod.php:110 mod/uimport.php:23 mod/attach.php:33 -#: include/items.php:5077 index.php:383 +#: include/items.php:5096 index.php:383 msgid "Permission denied." msgstr "" @@ -109,7 +109,7 @@ msgstr "" #: mod/settings.php:1171 mod/settings.php:1172 mod/settings.php:1173 #: mod/settings.php:1174 mod/dfrn_request.php:857 mod/register.php:238 #: mod/suggest.php:29 mod/profiles.php:658 mod/profiles.php:661 -#: mod/profiles.php:687 mod/api.php:105 include/items.php:4909 +#: mod/profiles.php:687 mod/api.php:105 include/items.php:4928 msgid "Yes" msgstr "" @@ -118,7 +118,7 @@ msgstr "" #: mod/fbrowser.php:128 mod/settings.php:660 mod/settings.php:686 #: mod/dfrn_request.php:871 mod/suggest.php:32 mod/editpost.php:148 #: mod/photos.php:247 mod/photos.php:336 include/conversation.php:1220 -#: include/items.php:4912 +#: include/items.php:4931 msgid "Cancel" msgstr "" @@ -145,7 +145,7 @@ msgstr "" msgid "Private communications are not available for this contact." msgstr "" -#: mod/contacts.php:544 mod/admin.php:820 +#: mod/contacts.php:544 mod/admin.php:822 msgid "Never" msgstr "" @@ -174,7 +174,7 @@ msgstr "" msgid "Fetch further information for feeds" msgstr "" -#: mod/contacts.php:571 mod/admin.php:829 +#: mod/contacts.php:571 mod/admin.php:831 msgid "Disabled" msgstr "" @@ -265,12 +265,12 @@ msgid "Connect/Follow" msgstr "" #: mod/contacts.php:615 mod/contacts.php:806 mod/contacts.php:865 -#: mod/admin.php:1310 +#: mod/admin.php:1312 msgid "Unblock" msgstr "" #: mod/contacts.php:615 mod/contacts.php:806 mod/contacts.php:865 -#: mod/admin.php:1309 +#: mod/admin.php:1311 msgid "Block" msgstr "" @@ -428,7 +428,7 @@ msgstr "" msgid "Unarchive" msgstr "" -#: mod/contacts.php:809 mod/group.php:171 mod/admin.php:1308 +#: mod/contacts.php:809 mod/group.php:171 mod/admin.php:1310 #: mod/content.php:440 mod/content.php:743 mod/settings.php:722 #: mod/photos.php:1723 object/Item.php:134 include/conversation.php:635 msgid "Delete" @@ -547,8 +547,8 @@ msgid "All Contacts (with secure profile access)" msgstr "" #: mod/display.php:82 mod/display.php:291 mod/display.php:513 -#: mod/viewsrc.php:15 mod/admin.php:234 mod/admin.php:1363 mod/admin.php:1597 -#: mod/notice.php:15 include/items.php:4868 +#: mod/viewsrc.php:15 mod/admin.php:234 mod/admin.php:1365 mod/admin.php:1599 +#: mod/notice.php:15 include/items.php:4887 msgid "Item not found." msgstr "" @@ -597,7 +597,7 @@ msgid "" "join." msgstr "" -#: mod/newmember.php:22 mod/admin.php:1416 mod/admin.php:1674 +#: mod/newmember.php:22 mod/admin.php:1418 mod/admin.php:1676 #: mod/settings.php:109 include/nav.php:182 view/theme/diabook/theme.php:544 #: view/theme/diabook/theme.php:648 msgid "Settings" @@ -842,15 +842,15 @@ msgstr "" #: mod/subthread.php:87 mod/tagger.php:62 include/like.php:165 #: include/conversation.php:130 include/conversation.php:266 -#: include/text.php:2000 include/diaspora.php:2151 +#: include/text.php:2000 include/diaspora.php:2169 #: view/theme/diabook/theme.php:471 msgid "photo" msgstr "" #: mod/subthread.php:87 mod/tagger.php:62 include/like.php:165 -#: include/like.php:325 include/conversation.php:125 +#: include/like.php:334 include/conversation.php:125 #: include/conversation.php:134 include/conversation.php:261 -#: include/conversation.php:270 include/diaspora.php:2151 +#: include/conversation.php:270 include/diaspora.php:2169 #: view/theme/diabook/theme.php:466 view/theme/diabook/theme.php:475 msgid "status" msgstr "" @@ -1161,7 +1161,7 @@ msgstr "" msgid "Unable to update your contact profile details on our system" msgstr "" -#: mod/dfrn_confirm.php:753 mod/dfrn_request.php:741 include/items.php:4280 +#: mod/dfrn_confirm.php:753 mod/dfrn_request.php:741 include/items.php:4299 msgid "[Name Withheld]" msgstr "" @@ -1392,7 +1392,7 @@ msgstr "" msgid "System" msgstr "" -#: mod/notifications.php:87 mod/admin.php:388 include/nav.php:154 +#: mod/notifications.php:87 mod/admin.php:390 include/nav.php:154 msgid "Network" msgstr "" @@ -1438,7 +1438,7 @@ msgstr "" msgid "if applicable" msgstr "" -#: mod/notifications.php:176 mod/notifications.php:257 mod/admin.php:1306 +#: mod/notifications.php:176 mod/notifications.php:257 mod/admin.php:1308 msgid "Approve" msgstr "" @@ -1795,8 +1795,8 @@ msgstr "" msgid "Refetch contact data" msgstr "" -#: mod/crepair.php:170 mod/admin.php:1304 mod/admin.php:1316 mod/admin.php:1317 -#: mod/admin.php:1330 mod/settings.php:661 mod/settings.php:687 +#: mod/crepair.php:170 mod/admin.php:1306 mod/admin.php:1318 mod/admin.php:1319 +#: mod/admin.php:1332 mod/settings.php:661 mod/settings.php:687 msgid "Name" msgstr "" @@ -1902,19 +1902,19 @@ msgstr "" msgid "Theme settings updated." msgstr "" -#: mod/admin.php:156 mod/admin.php:886 +#: mod/admin.php:156 mod/admin.php:888 msgid "Site" msgstr "" -#: mod/admin.php:157 mod/admin.php:830 mod/admin.php:1299 mod/admin.php:1314 +#: mod/admin.php:157 mod/admin.php:832 mod/admin.php:1301 mod/admin.php:1316 msgid "Users" msgstr "" -#: mod/admin.php:158 mod/admin.php:1414 mod/admin.php:1474 mod/settings.php:72 +#: mod/admin.php:158 mod/admin.php:1416 mod/admin.php:1476 mod/settings.php:72 msgid "Plugins" msgstr "" -#: mod/admin.php:159 mod/admin.php:1672 mod/admin.php:1722 +#: mod/admin.php:159 mod/admin.php:1674 mod/admin.php:1724 msgid "Themes" msgstr "" @@ -1926,19 +1926,19 @@ msgstr "" msgid "DB updates" msgstr "" -#: mod/admin.php:162 mod/admin.php:383 +#: mod/admin.php:162 mod/admin.php:385 msgid "Inspect Queue" msgstr "" -#: mod/admin.php:163 mod/admin.php:352 +#: mod/admin.php:163 mod/admin.php:354 msgid "Federation Statistics" msgstr "" -#: mod/admin.php:177 mod/admin.php:188 mod/admin.php:1790 +#: mod/admin.php:177 mod/admin.php:188 mod/admin.php:1792 msgid "Logs" msgstr "" -#: mod/admin.php:178 mod/admin.php:1857 +#: mod/admin.php:178 mod/admin.php:1859 msgid "View Logs" msgstr "" @@ -1966,738 +1966,739 @@ msgstr "" msgid "User registrations waiting for confirmation" msgstr "" -#: mod/admin.php:345 +#: mod/admin.php:347 msgid "" "This page offers you some numbers to the known part of the federated social " "network your Friendica node is part of. These numbers are not complete but " "only reflect the part of the network your node is aware of." msgstr "" -#: mod/admin.php:346 +#: mod/admin.php:348 msgid "" "The Auto Discovered Contact Directory feature is not enabled, it " "will improve the data displayed here." msgstr "" -#: mod/admin.php:351 mod/admin.php:382 mod/admin.php:439 mod/admin.php:885 -#: mod/admin.php:1298 mod/admin.php:1413 mod/admin.php:1473 mod/admin.php:1671 -#: mod/admin.php:1721 mod/admin.php:1789 mod/admin.php:1856 +#: mod/admin.php:353 mod/admin.php:384 mod/admin.php:441 mod/admin.php:887 +#: mod/admin.php:1300 mod/admin.php:1415 mod/admin.php:1475 mod/admin.php:1673 +#: mod/admin.php:1723 mod/admin.php:1791 mod/admin.php:1858 msgid "Administration" msgstr "" -#: mod/admin.php:358 -msgid "Currently this node is aware of nodes from the following platforms:" -msgstr "" - -#: mod/admin.php:385 -msgid "ID" -msgstr "" - -#: mod/admin.php:386 -msgid "Recipient Name" +#: mod/admin.php:360 +#, php-format +msgid "Currently this node is aware of %d nodes from the following platforms:" msgstr "" #: mod/admin.php:387 -msgid "Recipient Profile" +msgid "ID" +msgstr "" + +#: mod/admin.php:388 +msgid "Recipient Name" msgstr "" #: mod/admin.php:389 -msgid "Created" -msgstr "" - -#: mod/admin.php:390 -msgid "Last Tried" +msgid "Recipient Profile" msgstr "" #: mod/admin.php:391 +msgid "Created" +msgstr "" + +#: mod/admin.php:392 +msgid "Last Tried" +msgstr "" + +#: mod/admin.php:393 msgid "" "This page lists the content of the queue for outgoing postings. These are " "postings the initial delivery failed for. They will be resend later and " "eventually deleted if the delivery fails permanently." msgstr "" -#: mod/admin.php:410 mod/admin.php:1252 +#: mod/admin.php:412 mod/admin.php:1254 msgid "Normal Account" msgstr "" -#: mod/admin.php:411 mod/admin.php:1253 +#: mod/admin.php:413 mod/admin.php:1255 msgid "Soapbox Account" msgstr "" -#: mod/admin.php:412 mod/admin.php:1254 +#: mod/admin.php:414 mod/admin.php:1256 msgid "Community/Celebrity Account" msgstr "" -#: mod/admin.php:413 mod/admin.php:1255 +#: mod/admin.php:415 mod/admin.php:1257 msgid "Automatic Friend Account" msgstr "" -#: mod/admin.php:414 +#: mod/admin.php:416 msgid "Blog Account" msgstr "" -#: mod/admin.php:415 +#: mod/admin.php:417 msgid "Private Forum" msgstr "" -#: mod/admin.php:434 +#: mod/admin.php:436 msgid "Message queues" msgstr "" -#: mod/admin.php:440 +#: mod/admin.php:442 msgid "Summary" msgstr "" -#: mod/admin.php:442 +#: mod/admin.php:444 msgid "Registered users" msgstr "" -#: mod/admin.php:444 +#: mod/admin.php:446 msgid "Pending registrations" msgstr "" -#: mod/admin.php:445 +#: mod/admin.php:447 msgid "Version" msgstr "" -#: mod/admin.php:450 +#: mod/admin.php:452 msgid "Active plugins" msgstr "" -#: mod/admin.php:473 +#: mod/admin.php:475 msgid "Can not parse base url. Must have at least ://" msgstr "" -#: mod/admin.php:758 +#: mod/admin.php:760 msgid "RINO2 needs mcrypt php extension to work." msgstr "" -#: mod/admin.php:766 +#: mod/admin.php:768 msgid "Site settings updated." msgstr "" -#: mod/admin.php:794 mod/settings.php:912 +#: mod/admin.php:796 mod/settings.php:912 msgid "No special theme for mobile devices" msgstr "" -#: mod/admin.php:813 +#: mod/admin.php:815 msgid "No community page" msgstr "" -#: mod/admin.php:814 +#: mod/admin.php:816 msgid "Public postings from users of this site" msgstr "" -#: mod/admin.php:815 +#: mod/admin.php:817 msgid "Global community page" msgstr "" -#: mod/admin.php:821 +#: mod/admin.php:823 msgid "At post arrival" msgstr "" -#: mod/admin.php:822 include/contact_selectors.php:56 +#: mod/admin.php:824 include/contact_selectors.php:56 msgid "Frequently" msgstr "" -#: mod/admin.php:823 include/contact_selectors.php:57 +#: mod/admin.php:825 include/contact_selectors.php:57 msgid "Hourly" msgstr "" -#: mod/admin.php:824 include/contact_selectors.php:58 +#: mod/admin.php:826 include/contact_selectors.php:58 msgid "Twice daily" msgstr "" -#: mod/admin.php:825 include/contact_selectors.php:59 +#: mod/admin.php:827 include/contact_selectors.php:59 msgid "Daily" msgstr "" -#: mod/admin.php:831 +#: mod/admin.php:833 msgid "Users, Global Contacts" msgstr "" -#: mod/admin.php:832 +#: mod/admin.php:834 msgid "Users, Global Contacts/fallback" msgstr "" -#: mod/admin.php:836 +#: mod/admin.php:838 msgid "One month" msgstr "" -#: mod/admin.php:837 +#: mod/admin.php:839 msgid "Three months" msgstr "" -#: mod/admin.php:838 +#: mod/admin.php:840 msgid "Half a year" msgstr "" -#: mod/admin.php:839 +#: mod/admin.php:841 msgid "One year" msgstr "" -#: mod/admin.php:844 +#: mod/admin.php:846 msgid "Multi user instance" msgstr "" -#: mod/admin.php:867 +#: mod/admin.php:869 msgid "Closed" msgstr "" -#: mod/admin.php:868 +#: mod/admin.php:870 msgid "Requires approval" msgstr "" -#: mod/admin.php:869 +#: mod/admin.php:871 msgid "Open" msgstr "" -#: mod/admin.php:873 +#: mod/admin.php:875 msgid "No SSL policy, links will track page SSL state" msgstr "" -#: mod/admin.php:874 +#: mod/admin.php:876 msgid "Force all links to use SSL" msgstr "" -#: mod/admin.php:875 +#: mod/admin.php:877 msgid "Self-signed certificate, use SSL for local links only (discouraged)" msgstr "" -#: mod/admin.php:887 mod/admin.php:1475 mod/admin.php:1723 mod/admin.php:1791 -#: mod/admin.php:1940 mod/settings.php:659 mod/settings.php:769 +#: mod/admin.php:889 mod/admin.php:1477 mod/admin.php:1725 mod/admin.php:1793 +#: mod/admin.php:1942 mod/settings.php:659 mod/settings.php:769 #: mod/settings.php:813 mod/settings.php:882 mod/settings.php:969 #: mod/settings.php:1204 msgid "Save Settings" msgstr "" -#: mod/admin.php:888 mod/register.php:263 +#: mod/admin.php:890 mod/register.php:263 msgid "Registration" msgstr "" -#: mod/admin.php:889 +#: mod/admin.php:891 msgid "File upload" msgstr "" -#: mod/admin.php:890 +#: mod/admin.php:892 msgid "Policies" msgstr "" -#: mod/admin.php:891 +#: mod/admin.php:893 msgid "Advanced" msgstr "" -#: mod/admin.php:892 +#: mod/admin.php:894 msgid "Auto Discovered Contact Directory" msgstr "" -#: mod/admin.php:893 +#: mod/admin.php:895 msgid "Performance" msgstr "" -#: mod/admin.php:894 +#: mod/admin.php:896 msgid "" "Relocate - WARNING: advanced function. Could make this server unreachable." msgstr "" -#: mod/admin.php:897 +#: mod/admin.php:899 msgid "Site name" msgstr "" -#: mod/admin.php:898 +#: mod/admin.php:900 msgid "Host name" msgstr "" -#: mod/admin.php:899 +#: mod/admin.php:901 msgid "Sender Email" msgstr "" -#: mod/admin.php:899 +#: mod/admin.php:901 msgid "" "The email address your server shall use to send notification emails from." msgstr "" -#: mod/admin.php:900 +#: mod/admin.php:902 msgid "Banner/Logo" msgstr "" -#: mod/admin.php:901 +#: mod/admin.php:903 msgid "Shortcut icon" msgstr "" -#: mod/admin.php:901 +#: mod/admin.php:903 msgid "Link to an icon that will be used for browsers." msgstr "" -#: mod/admin.php:902 +#: mod/admin.php:904 msgid "Touch icon" msgstr "" -#: mod/admin.php:902 +#: mod/admin.php:904 msgid "Link to an icon that will be used for tablets and mobiles." msgstr "" -#: mod/admin.php:903 +#: mod/admin.php:905 msgid "Additional Info" msgstr "" -#: mod/admin.php:903 +#: mod/admin.php:905 #, php-format msgid "" "For public servers: you can add additional information here that will be " "listed at %s/siteinfo." msgstr "" -#: mod/admin.php:904 +#: mod/admin.php:906 msgid "System language" msgstr "" -#: mod/admin.php:905 +#: mod/admin.php:907 msgid "System theme" msgstr "" -#: mod/admin.php:905 +#: mod/admin.php:907 msgid "" "Default system theme - may be over-ridden by user profiles - change theme settings" msgstr "" -#: mod/admin.php:906 +#: mod/admin.php:908 msgid "Mobile system theme" msgstr "" -#: mod/admin.php:906 +#: mod/admin.php:908 msgid "Theme for mobile devices" msgstr "" -#: mod/admin.php:907 +#: mod/admin.php:909 msgid "SSL link policy" msgstr "" -#: mod/admin.php:907 +#: mod/admin.php:909 msgid "Determines whether generated links should be forced to use SSL" msgstr "" -#: mod/admin.php:908 +#: mod/admin.php:910 msgid "Force SSL" msgstr "" -#: mod/admin.php:908 +#: mod/admin.php:910 msgid "" "Force all Non-SSL requests to SSL - Attention: on some systems it could lead " "to endless loops." msgstr "" -#: mod/admin.php:909 +#: mod/admin.php:911 msgid "Old style 'Share'" msgstr "" -#: mod/admin.php:909 +#: mod/admin.php:911 msgid "Deactivates the bbcode element 'share' for repeating items." msgstr "" -#: mod/admin.php:910 +#: mod/admin.php:912 msgid "Hide help entry from navigation menu" msgstr "" -#: mod/admin.php:910 +#: mod/admin.php:912 msgid "" "Hides the menu entry for the Help pages from the navigation menu. You can " "still access it calling /help directly." msgstr "" -#: mod/admin.php:911 +#: mod/admin.php:913 msgid "Single user instance" msgstr "" -#: mod/admin.php:911 +#: mod/admin.php:913 msgid "Make this instance multi-user or single-user for the named user" msgstr "" -#: mod/admin.php:912 +#: mod/admin.php:914 msgid "Maximum image size" msgstr "" -#: mod/admin.php:912 +#: mod/admin.php:914 msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " "limits." msgstr "" -#: mod/admin.php:913 +#: mod/admin.php:915 msgid "Maximum image length" msgstr "" -#: mod/admin.php:913 +#: mod/admin.php:915 msgid "" "Maximum length in pixels of the longest side of uploaded images. Default is " "-1, which means no limits." msgstr "" -#: mod/admin.php:914 +#: mod/admin.php:916 msgid "JPEG image quality" msgstr "" -#: mod/admin.php:914 +#: mod/admin.php:916 msgid "" "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is " "100, which is full quality." msgstr "" -#: mod/admin.php:916 +#: mod/admin.php:918 msgid "Register policy" msgstr "" -#: mod/admin.php:917 +#: mod/admin.php:919 msgid "Maximum Daily Registrations" msgstr "" -#: mod/admin.php:917 +#: mod/admin.php:919 msgid "" "If registration is permitted above, this sets the maximum number of new user " "registrations to accept per day. If register is set to closed, this setting " "has no effect." msgstr "" -#: mod/admin.php:918 +#: mod/admin.php:920 msgid "Register text" msgstr "" -#: mod/admin.php:918 +#: mod/admin.php:920 msgid "Will be displayed prominently on the registration page." msgstr "" -#: mod/admin.php:919 +#: mod/admin.php:921 msgid "Accounts abandoned after x days" msgstr "" -#: mod/admin.php:919 +#: mod/admin.php:921 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "" -#: mod/admin.php:920 +#: mod/admin.php:922 msgid "Allowed friend domains" msgstr "" -#: mod/admin.php:920 +#: mod/admin.php:922 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "" -#: mod/admin.php:921 +#: mod/admin.php:923 msgid "Allowed email domains" msgstr "" -#: mod/admin.php:921 +#: mod/admin.php:923 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "" -#: mod/admin.php:922 +#: mod/admin.php:924 msgid "Block public" msgstr "" -#: mod/admin.php:922 +#: mod/admin.php:924 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "" -#: mod/admin.php:923 +#: mod/admin.php:925 msgid "Force publish" msgstr "" -#: mod/admin.php:923 +#: mod/admin.php:925 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "" -#: mod/admin.php:924 +#: mod/admin.php:926 msgid "Global directory URL" msgstr "" -#: mod/admin.php:924 +#: mod/admin.php:926 msgid "" "URL to the global directory. If this is not set, the global directory is " "completely unavailable to the application." msgstr "" -#: mod/admin.php:925 +#: mod/admin.php:927 msgid "Allow threaded items" msgstr "" -#: mod/admin.php:925 +#: mod/admin.php:927 msgid "Allow infinite level threading for items on this site." msgstr "" -#: mod/admin.php:926 +#: mod/admin.php:928 msgid "Private posts by default for new users" msgstr "" -#: mod/admin.php:926 +#: mod/admin.php:928 msgid "" "Set default post permissions for all new members to the default privacy " "group rather than public." msgstr "" -#: mod/admin.php:927 +#: mod/admin.php:929 msgid "Don't include post content in email notifications" msgstr "" -#: mod/admin.php:927 +#: mod/admin.php:929 msgid "" "Don't include the content of a post/comment/private message/etc. in the " "email notifications that are sent out from this site, as a privacy measure." msgstr "" -#: mod/admin.php:928 +#: mod/admin.php:930 msgid "Disallow public access to addons listed in the apps menu." msgstr "" -#: mod/admin.php:928 +#: mod/admin.php:930 msgid "" "Checking this box will restrict addons listed in the apps menu to members " "only." msgstr "" -#: mod/admin.php:929 +#: mod/admin.php:931 msgid "Don't embed private images in posts" msgstr "" -#: mod/admin.php:929 +#: mod/admin.php:931 msgid "" "Don't replace locally-hosted private photos in posts with an embedded copy " "of the image. This means that contacts who receive posts containing private " "photos will have to authenticate and load each image, which may take a while." msgstr "" -#: mod/admin.php:930 +#: mod/admin.php:932 msgid "Allow Users to set remote_self" msgstr "" -#: mod/admin.php:930 +#: mod/admin.php:932 msgid "" "With checking this, every user is allowed to mark every contact as a " "remote_self in the repair contact dialog. Setting this flag on a contact " "causes mirroring every posting of that contact in the users stream." msgstr "" -#: mod/admin.php:931 +#: mod/admin.php:933 msgid "Block multiple registrations" msgstr "" -#: mod/admin.php:931 +#: mod/admin.php:933 msgid "Disallow users to register additional accounts for use as pages." msgstr "" -#: mod/admin.php:932 +#: mod/admin.php:934 msgid "OpenID support" msgstr "" -#: mod/admin.php:932 +#: mod/admin.php:934 msgid "OpenID support for registration and logins." msgstr "" -#: mod/admin.php:933 +#: mod/admin.php:935 msgid "Fullname check" msgstr "" -#: mod/admin.php:933 +#: mod/admin.php:935 msgid "" "Force users to register with a space between firstname and lastname in Full " "name, as an antispam measure" msgstr "" -#: mod/admin.php:934 +#: mod/admin.php:936 msgid "UTF-8 Regular expressions" msgstr "" -#: mod/admin.php:934 +#: mod/admin.php:936 msgid "Use PHP UTF8 regular expressions" msgstr "" -#: mod/admin.php:935 +#: mod/admin.php:937 msgid "Community Page Style" msgstr "" -#: mod/admin.php:935 +#: mod/admin.php:937 msgid "" "Type of community page to show. 'Global community' shows every public " "posting from an open distributed network that arrived on this server." msgstr "" -#: mod/admin.php:936 +#: mod/admin.php:938 msgid "Posts per user on community page" msgstr "" -#: mod/admin.php:936 +#: mod/admin.php:938 msgid "" "The maximum number of posts per user on the community page. (Not valid for " "'Global Community')" msgstr "" -#: mod/admin.php:937 +#: mod/admin.php:939 msgid "Enable OStatus support" msgstr "" -#: mod/admin.php:937 +#: mod/admin.php:939 msgid "" "Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All " "communications in OStatus are public, so privacy warnings will be " "occasionally displayed." msgstr "" -#: mod/admin.php:938 +#: mod/admin.php:940 msgid "OStatus conversation completion interval" msgstr "" -#: mod/admin.php:938 +#: mod/admin.php:940 msgid "" "How often shall the poller check for new entries in OStatus conversations? " "This can be a very ressource task." msgstr "" -#: mod/admin.php:939 +#: mod/admin.php:941 msgid "OStatus support can only be enabled if threading is enabled." msgstr "" -#: mod/admin.php:941 +#: mod/admin.php:943 msgid "" "Diaspora support can't be enabled because Friendica was installed into a sub " "directory." msgstr "" -#: mod/admin.php:942 +#: mod/admin.php:944 msgid "Enable Diaspora support" msgstr "" -#: mod/admin.php:942 +#: mod/admin.php:944 msgid "Provide built-in Diaspora network compatibility." msgstr "" -#: mod/admin.php:943 +#: mod/admin.php:945 msgid "Only allow Friendica contacts" msgstr "" -#: mod/admin.php:943 +#: mod/admin.php:945 msgid "" "All contacts must use Friendica protocols. All other built-in communication " "protocols disabled." msgstr "" -#: mod/admin.php:944 +#: mod/admin.php:946 msgid "Verify SSL" msgstr "" -#: mod/admin.php:944 +#: mod/admin.php:946 msgid "" "If you wish, you can turn on strict certificate checking. This will mean you " "cannot connect (at all) to self-signed SSL sites." msgstr "" -#: mod/admin.php:945 +#: mod/admin.php:947 msgid "Proxy user" msgstr "" -#: mod/admin.php:946 +#: mod/admin.php:948 msgid "Proxy URL" msgstr "" -#: mod/admin.php:947 +#: mod/admin.php:949 msgid "Network timeout" msgstr "" -#: mod/admin.php:947 +#: mod/admin.php:949 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "" -#: mod/admin.php:948 +#: mod/admin.php:950 msgid "Delivery interval" msgstr "" -#: mod/admin.php:948 +#: mod/admin.php:950 msgid "" "Delay background delivery processes by this many seconds to reduce system " "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " "for large dedicated servers." msgstr "" -#: mod/admin.php:949 +#: mod/admin.php:951 msgid "Poll interval" msgstr "" -#: mod/admin.php:949 +#: mod/admin.php:951 msgid "" "Delay background polling processes by this many seconds to reduce system " "load. If 0, use delivery interval." msgstr "" -#: mod/admin.php:950 +#: mod/admin.php:952 msgid "Maximum Load Average" msgstr "" -#: mod/admin.php:950 +#: mod/admin.php:952 msgid "" "Maximum system load before delivery and poll processes are deferred - " "default 50." msgstr "" -#: mod/admin.php:951 +#: mod/admin.php:953 msgid "Maximum Load Average (Frontend)" msgstr "" -#: mod/admin.php:951 +#: mod/admin.php:953 msgid "Maximum system load before the frontend quits service - default 50." msgstr "" -#: mod/admin.php:952 +#: mod/admin.php:954 msgid "Maximum table size for optimization" msgstr "" -#: mod/admin.php:952 +#: mod/admin.php:954 msgid "" "Maximum table size (in MB) for the automatic optimization - default 100 MB. " "Enter -1 to disable it." msgstr "" -#: mod/admin.php:953 +#: mod/admin.php:955 msgid "Minimum level of fragmentation" msgstr "" -#: mod/admin.php:953 +#: mod/admin.php:955 msgid "" "Minimum fragmenation level to start the automatic optimization - default " "value is 30%." msgstr "" -#: mod/admin.php:955 +#: mod/admin.php:957 msgid "Periodical check of global contacts" msgstr "" -#: mod/admin.php:955 +#: mod/admin.php:957 msgid "" "If enabled, the global contacts are checked periodically for missing or " "outdated data and the vitality of the contacts and servers." msgstr "" -#: mod/admin.php:956 +#: mod/admin.php:958 msgid "Days between requery" msgstr "" -#: mod/admin.php:956 +#: mod/admin.php:958 msgid "Number of days after which a server is requeried for his contacts." msgstr "" -#: mod/admin.php:957 +#: mod/admin.php:959 msgid "Discover contacts from other servers" msgstr "" -#: mod/admin.php:957 +#: mod/admin.php:959 msgid "" "Periodically query other servers for contacts. You can choose between " "'users': the users on the remote system, 'Global Contacts': active contacts " @@ -2707,32 +2708,32 @@ msgid "" "Global Contacts'." msgstr "" -#: mod/admin.php:958 +#: mod/admin.php:960 msgid "Timeframe for fetching global contacts" msgstr "" -#: mod/admin.php:958 +#: mod/admin.php:960 msgid "" "When the discovery is activated, this value defines the timeframe for the " "activity of the global contacts that are fetched from other servers." msgstr "" -#: mod/admin.php:959 +#: mod/admin.php:961 msgid "Search the local directory" msgstr "" -#: mod/admin.php:959 +#: mod/admin.php:961 msgid "" "Search the local directory instead of the global directory. When searching " "locally, every search will be executed on the global directory in the " "background. This improves the search results when the search is repeated." msgstr "" -#: mod/admin.php:961 +#: mod/admin.php:963 msgid "Publish server information" msgstr "" -#: mod/admin.php:961 +#: mod/admin.php:963 msgid "" "If enabled, general server and usage data will be published. The data " "contains the name and version of the server, number of users with public " @@ -2740,204 +2741,204 @@ msgid "" "href='http://the-federation.info/'>the-federation.info for details." msgstr "" -#: mod/admin.php:963 +#: mod/admin.php:965 msgid "Use MySQL full text engine" msgstr "" -#: mod/admin.php:963 +#: mod/admin.php:965 msgid "" "Activates the full text engine. Speeds up search - but can only search for " "four and more characters." msgstr "" -#: mod/admin.php:964 +#: mod/admin.php:966 msgid "Suppress Language" msgstr "" -#: mod/admin.php:964 +#: mod/admin.php:966 msgid "Suppress language information in meta information about a posting." msgstr "" -#: mod/admin.php:965 +#: mod/admin.php:967 msgid "Suppress Tags" msgstr "" -#: mod/admin.php:965 +#: mod/admin.php:967 msgid "Suppress showing a list of hashtags at the end of the posting." msgstr "" -#: mod/admin.php:966 +#: mod/admin.php:968 msgid "Path to item cache" msgstr "" -#: mod/admin.php:966 +#: mod/admin.php:968 msgid "The item caches buffers generated bbcode and external images." msgstr "" -#: mod/admin.php:967 +#: mod/admin.php:969 msgid "Cache duration in seconds" msgstr "" -#: mod/admin.php:967 +#: mod/admin.php:969 msgid "" "How long should the cache files be hold? Default value is 86400 seconds (One " "day). To disable the item cache, set the value to -1." msgstr "" -#: mod/admin.php:968 +#: mod/admin.php:970 msgid "Maximum numbers of comments per post" msgstr "" -#: mod/admin.php:968 +#: mod/admin.php:970 msgid "How much comments should be shown for each post? Default value is 100." msgstr "" -#: mod/admin.php:969 +#: mod/admin.php:971 msgid "Path for lock file" msgstr "" -#: mod/admin.php:969 +#: mod/admin.php:971 msgid "" "The lock file is used to avoid multiple pollers at one time. Only define a " "folder here." msgstr "" -#: mod/admin.php:970 +#: mod/admin.php:972 msgid "Temp path" msgstr "" -#: mod/admin.php:970 +#: mod/admin.php:972 msgid "" "If you have a restricted system where the webserver can't access the system " "temp path, enter another path here." msgstr "" -#: mod/admin.php:971 +#: mod/admin.php:973 msgid "Base path to installation" msgstr "" -#: mod/admin.php:971 +#: mod/admin.php:973 msgid "" "If the system cannot detect the correct path to your installation, enter the " "correct path here. This setting should only be set if you are using a " "restricted system and symbolic links to your webroot." msgstr "" -#: mod/admin.php:972 +#: mod/admin.php:974 msgid "Disable picture proxy" msgstr "" -#: mod/admin.php:972 +#: mod/admin.php:974 msgid "" "The picture proxy increases performance and privacy. It shouldn't be used on " "systems with very low bandwith." msgstr "" -#: mod/admin.php:973 +#: mod/admin.php:975 msgid "Enable old style pager" msgstr "" -#: mod/admin.php:973 +#: mod/admin.php:975 msgid "" "The old style pager has page numbers but slows down massively the page speed." msgstr "" -#: mod/admin.php:974 +#: mod/admin.php:976 msgid "Only search in tags" msgstr "" -#: mod/admin.php:974 +#: mod/admin.php:976 msgid "On large systems the text search can slow down the system extremely." msgstr "" -#: mod/admin.php:976 +#: mod/admin.php:978 msgid "New base url" msgstr "" -#: mod/admin.php:976 +#: mod/admin.php:978 msgid "" "Change base url for this server. Sends relocate message to all DFRN contacts " "of all users." msgstr "" -#: mod/admin.php:978 +#: mod/admin.php:980 msgid "RINO Encryption" msgstr "" -#: mod/admin.php:978 +#: mod/admin.php:980 msgid "Encryption layer between nodes." msgstr "" -#: mod/admin.php:979 +#: mod/admin.php:981 msgid "Embedly API key" msgstr "" -#: mod/admin.php:979 +#: mod/admin.php:981 msgid "" "Embedly is used to fetch additional data for " "web pages. This is an optional parameter." msgstr "" -#: mod/admin.php:1008 +#: mod/admin.php:1010 msgid "Update has been marked successful" msgstr "" -#: mod/admin.php:1016 +#: mod/admin.php:1018 #, php-format msgid "Database structure update %s was successfully applied." msgstr "" -#: mod/admin.php:1019 +#: mod/admin.php:1021 #, php-format msgid "Executing of database structure update %s failed with error: %s" msgstr "" -#: mod/admin.php:1031 +#: mod/admin.php:1033 #, php-format msgid "Executing %s failed with error: %s" msgstr "" -#: mod/admin.php:1034 +#: mod/admin.php:1036 #, php-format msgid "Update %s was successfully applied." msgstr "" -#: mod/admin.php:1038 +#: mod/admin.php:1040 #, php-format msgid "Update %s did not return a status. Unknown if it succeeded." msgstr "" -#: mod/admin.php:1040 +#: mod/admin.php:1042 #, php-format msgid "There was no additional update function %s that needed to be called." msgstr "" -#: mod/admin.php:1059 +#: mod/admin.php:1061 msgid "No failed updates." msgstr "" -#: mod/admin.php:1060 +#: mod/admin.php:1062 msgid "Check database structure" msgstr "" -#: mod/admin.php:1065 +#: mod/admin.php:1067 msgid "Failed Updates" msgstr "" -#: mod/admin.php:1066 +#: mod/admin.php:1068 msgid "" "This does not include updates prior to 1139, which did not return a status." msgstr "" -#: mod/admin.php:1067 +#: mod/admin.php:1069 msgid "Mark success (if update was manually applied)" msgstr "" -#: mod/admin.php:1068 +#: mod/admin.php:1070 msgid "Attempt to execute this update step automatically" msgstr "" -#: mod/admin.php:1100 +#: mod/admin.php:1102 #, php-format msgid "" "\n" @@ -2945,7 +2946,7 @@ msgid "" "\t\t\t\tthe administrator of %2$s has set up an account for you." msgstr "" -#: mod/admin.php:1103 +#: mod/admin.php:1105 #, php-format msgid "" "\n" @@ -2981,168 +2982,168 @@ msgid "" "\t\t\tThank you and welcome to %4$s." msgstr "" -#: mod/admin.php:1135 include/user.php:423 +#: mod/admin.php:1137 include/user.php:423 #, php-format msgid "Registration details for %s" msgstr "" -#: mod/admin.php:1147 +#: mod/admin.php:1149 #, php-format msgid "%s user blocked/unblocked" msgid_plural "%s users blocked/unblocked" msgstr[0] "" msgstr[1] "" -#: mod/admin.php:1154 +#: mod/admin.php:1156 #, php-format msgid "%s user deleted" msgid_plural "%s users deleted" msgstr[0] "" msgstr[1] "" -#: mod/admin.php:1201 +#: mod/admin.php:1203 #, php-format msgid "User '%s' deleted" msgstr "" -#: mod/admin.php:1209 +#: mod/admin.php:1211 #, php-format msgid "User '%s' unblocked" msgstr "" -#: mod/admin.php:1209 +#: mod/admin.php:1211 #, php-format msgid "User '%s' blocked" msgstr "" -#: mod/admin.php:1300 +#: mod/admin.php:1302 msgid "Add User" msgstr "" -#: mod/admin.php:1301 +#: mod/admin.php:1303 msgid "select all" msgstr "" -#: mod/admin.php:1302 +#: mod/admin.php:1304 msgid "User registrations waiting for confirm" msgstr "" -#: mod/admin.php:1303 +#: mod/admin.php:1305 msgid "User waiting for permanent deletion" msgstr "" -#: mod/admin.php:1304 +#: mod/admin.php:1306 msgid "Request date" msgstr "" -#: mod/admin.php:1304 mod/admin.php:1316 mod/admin.php:1317 mod/admin.php:1332 +#: mod/admin.php:1306 mod/admin.php:1318 mod/admin.php:1319 mod/admin.php:1334 #: include/contact_selectors.php:79 include/contact_selectors.php:86 msgid "Email" msgstr "" -#: mod/admin.php:1305 +#: mod/admin.php:1307 msgid "No registrations." msgstr "" -#: mod/admin.php:1307 +#: mod/admin.php:1309 msgid "Deny" msgstr "" -#: mod/admin.php:1311 +#: mod/admin.php:1313 msgid "Site admin" msgstr "" -#: mod/admin.php:1312 +#: mod/admin.php:1314 msgid "Account expired" msgstr "" -#: mod/admin.php:1315 +#: mod/admin.php:1317 msgid "New User" msgstr "" -#: mod/admin.php:1316 mod/admin.php:1317 +#: mod/admin.php:1318 mod/admin.php:1319 msgid "Register date" msgstr "" -#: mod/admin.php:1316 mod/admin.php:1317 +#: mod/admin.php:1318 mod/admin.php:1319 msgid "Last login" msgstr "" -#: mod/admin.php:1316 mod/admin.php:1317 +#: mod/admin.php:1318 mod/admin.php:1319 msgid "Last item" msgstr "" -#: mod/admin.php:1316 +#: mod/admin.php:1318 msgid "Deleted since" msgstr "" -#: mod/admin.php:1317 mod/settings.php:41 +#: mod/admin.php:1319 mod/settings.php:41 msgid "Account" msgstr "" -#: mod/admin.php:1319 +#: mod/admin.php:1321 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: mod/admin.php:1320 +#: mod/admin.php:1322 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: mod/admin.php:1330 +#: mod/admin.php:1332 msgid "Name of the new user." msgstr "" -#: mod/admin.php:1331 +#: mod/admin.php:1333 msgid "Nickname" msgstr "" -#: mod/admin.php:1331 +#: mod/admin.php:1333 msgid "Nickname of the new user." msgstr "" -#: mod/admin.php:1332 +#: mod/admin.php:1334 msgid "Email address of the new user." msgstr "" -#: mod/admin.php:1375 +#: mod/admin.php:1377 #, php-format msgid "Plugin %s disabled." msgstr "" -#: mod/admin.php:1379 +#: mod/admin.php:1381 #, php-format msgid "Plugin %s enabled." msgstr "" -#: mod/admin.php:1390 mod/admin.php:1626 +#: mod/admin.php:1392 mod/admin.php:1628 msgid "Disable" msgstr "" -#: mod/admin.php:1392 mod/admin.php:1628 +#: mod/admin.php:1394 mod/admin.php:1630 msgid "Enable" msgstr "" -#: mod/admin.php:1415 mod/admin.php:1673 +#: mod/admin.php:1417 mod/admin.php:1675 msgid "Toggle" msgstr "" -#: mod/admin.php:1423 mod/admin.php:1682 +#: mod/admin.php:1425 mod/admin.php:1684 msgid "Author: " msgstr "" -#: mod/admin.php:1424 mod/admin.php:1683 +#: mod/admin.php:1426 mod/admin.php:1685 msgid "Maintainer: " msgstr "" -#: mod/admin.php:1476 +#: mod/admin.php:1478 msgid "Reload active plugins" msgstr "" -#: mod/admin.php:1481 +#: mod/admin.php:1483 #, php-format msgid "" "There are currently no plugins available on your node. You can find the " @@ -3150,62 +3151,62 @@ msgid "" "in the open plugin registry at %2$s" msgstr "" -#: mod/admin.php:1586 +#: mod/admin.php:1588 msgid "No themes found." msgstr "" -#: mod/admin.php:1664 +#: mod/admin.php:1666 msgid "Screenshot" msgstr "" -#: mod/admin.php:1724 +#: mod/admin.php:1726 msgid "Reload active themes" msgstr "" -#: mod/admin.php:1729 +#: mod/admin.php:1731 #, php-format msgid "No themes found on the system. They should be paced in %1$s" msgstr "" -#: mod/admin.php:1730 +#: mod/admin.php:1732 msgid "[Experimental]" msgstr "" -#: mod/admin.php:1731 +#: mod/admin.php:1733 msgid "[Unsupported]" msgstr "" -#: mod/admin.php:1755 +#: mod/admin.php:1757 msgid "Log settings updated." msgstr "" -#: mod/admin.php:1792 +#: mod/admin.php:1794 msgid "Clear" msgstr "" -#: mod/admin.php:1797 +#: mod/admin.php:1799 msgid "Enable Debugging" msgstr "" -#: mod/admin.php:1798 +#: mod/admin.php:1800 msgid "Log file" msgstr "" -#: mod/admin.php:1798 +#: mod/admin.php:1800 msgid "" "Must be writable by web server. Relative to your Friendica top-level " "directory." msgstr "" -#: mod/admin.php:1799 +#: mod/admin.php:1801 msgid "Log level" msgstr "" -#: mod/admin.php:1802 +#: mod/admin.php:1804 msgid "PHP logging" msgstr "" -#: mod/admin.php:1803 +#: mod/admin.php:1805 msgid "" "To enable logging of PHP errors and warnings you can add the following to " "the .htconfig.php file of your installation. The filename set in the " @@ -3214,20 +3215,20 @@ msgid "" "'display_errors' is to enable these options, set to '0' to disable them." msgstr "" -#: mod/admin.php:1929 mod/admin.php:1930 mod/settings.php:759 +#: mod/admin.php:1931 mod/admin.php:1932 mod/settings.php:759 msgid "Off" msgstr "" -#: mod/admin.php:1929 mod/admin.php:1930 mod/settings.php:759 +#: mod/admin.php:1931 mod/admin.php:1932 mod/settings.php:759 msgid "On" msgstr "" -#: mod/admin.php:1930 +#: mod/admin.php:1932 #, php-format msgid "Lock feature %s" msgstr "" -#: mod/admin.php:1938 +#: mod/admin.php:1940 msgid "Manage Additional Features" msgstr "" @@ -3620,7 +3621,7 @@ msgstr[1] "" #: mod/content.php:608 boot.php:870 object/Item.php:422 #: include/contact_widgets.php:242 include/forums.php:110 -#: include/items.php:5188 view/theme/vier/theme.php:264 +#: include/items.php:5207 view/theme/vier/theme.php:264 msgid "show more" msgstr "" @@ -6681,12 +6682,12 @@ msgstr "" msgid "%1$d %2$s ago" msgstr "" -#: include/datetime.php:474 include/items.php:2481 +#: include/datetime.php:474 include/items.php:2500 #, php-format msgid "%s's birthday" msgstr "" -#: include/datetime.php:475 include/items.php:2482 +#: include/datetime.php:475 include/items.php:2501 #, php-format msgid "Happy Birthday %s" msgstr "" @@ -6830,7 +6831,7 @@ msgstr "" msgid "event" msgstr "" -#: include/like.php:184 include/conversation.php:141 include/diaspora.php:2167 +#: include/like.php:184 include/conversation.php:141 include/diaspora.php:2185 #: view/theme/diabook/theme.php:480 #, php-format msgid "%1$s likes %2$s's %3$s" @@ -7784,7 +7785,7 @@ msgstr "" msgid "Sharing notification from Diaspora network" msgstr "" -#: include/diaspora.php:2608 +#: include/diaspora.php:2625 msgid "Attachments:" msgstr "" @@ -7796,11 +7797,11 @@ msgstr "" msgid "noreply" msgstr "" -#: include/items.php:4907 +#: include/items.php:4926 msgid "Do you really want to delete this item?" msgstr "" -#: include/items.php:5182 +#: include/items.php:5201 msgid "Archives" msgstr "" From 41dacf4b372ecc72f180ca6f3bf13d1e12a2e692 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Sun, 24 Jan 2016 07:57:36 +0100 Subject: [PATCH 5/5] To-Do bullets can now be listed in doxygen --- include/cron.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/cron.php b/include/cron.php index 71af5d826f..2f276013b2 100644 --- a/include/cron.php +++ b/include/cron.php @@ -431,11 +431,11 @@ function cron_repair_database() { q("UPDATE `item` INNER JOIN `item` AS `parent` ON `parent`.`uri` = `item`.`parent-uri` AND `parent`.`uid` = `item`.`uid` SET `item`.`parent` = `parent`.`id` WHERE `item`.`parent` = 0"); /// @todo - // - remove duplicated contacts with uid=0 (We could do this at the place where the contacts are stored) - // - remove thread entries without item - // - remove sign entries without item - // - remove children when parent got lost - // - set contact-id in item when not present + /// - remove duplicated contacts with uid=0 (We could do this at the place where the contacts are stored) + /// - remove thread entries without item + /// - remove sign entries without item + /// - remove children when parent got lost + /// - set contact-id in item when not present } if (array_search(__file__,get_included_files())===0){