commit
f61fd93db0
70 changed files with 106 additions and 112 deletions
12
CHANGELOG
12
CHANGELOG
|
@ -1378,7 +1378,7 @@ Version 2018.05 (2018-06-01)
|
||||||
Fixed a bug that made edited mentions and hashtags plaintext [annando]
|
Fixed a bug that made edited mentions and hashtags plaintext [annando]
|
||||||
Fixed a bug that caused the /display page to receive constandly new updates [annando]
|
Fixed a bug that caused the /display page to receive constandly new updates [annando]
|
||||||
Fixed wrong version of a dependency preventing the usage of PHP 5.6 [MrPetovan]
|
Fixed wrong version of a dependency preventing the usage of PHP 5.6 [MrPetovan]
|
||||||
Fixed a bug in OpenID authentification [Quix0r]
|
Fixed a bug in OpenID authentication [Quix0r]
|
||||||
Fixed a bug in the item deletion [annando]
|
Fixed a bug in the item deletion [annando]
|
||||||
Fixed a bug that prevented public comments from being distributed [annando]
|
Fixed a bug that prevented public comments from being distributed [annando]
|
||||||
Fixed a bug that caused empty profile pictures for public contacts [annando]
|
Fixed a bug that caused empty profile pictures for public contacts [annando]
|
||||||
|
@ -1485,7 +1485,7 @@ Version 3.6 (2018-03-23)
|
||||||
Fixed a bug in URL completion for feed fragments [annando]
|
Fixed a bug in URL completion for feed fragments [annando]
|
||||||
Fixed a bug in the notification system about new registrations [annando]
|
Fixed a bug in the notification system about new registrations [annando]
|
||||||
Fixed the display of dislikes [annando]
|
Fixed the display of dislikes [annando]
|
||||||
Fixed the display of orphans childs in threads [MrPetovan]
|
Fixed the display of orphan children in threads [MrPetovan]
|
||||||
Fixed some SQL problems [annando]
|
Fixed some SQL problems [annando]
|
||||||
Fixed the CLI config script [tobiasd]
|
Fixed the CLI config script [tobiasd]
|
||||||
Fixed the forum selection on the network display [annando]
|
Fixed the forum selection on the network display [annando]
|
||||||
|
@ -1734,7 +1734,7 @@ Version 3.5.1 (2017-03-12)
|
||||||
Improvements to the documentation [Hypolite, tobiasd, rabuzarus, beardyunixer, eelcomaljaars]
|
Improvements to the documentation [Hypolite, tobiasd, rabuzarus, beardyunixer, eelcomaljaars]
|
||||||
Improvements to the BBCode / Markdown conversation [Hypolite]
|
Improvements to the BBCode / Markdown conversation [Hypolite]
|
||||||
Improvements to the OStatus protocol implementation [annando]
|
Improvements to the OStatus protocol implementation [annando]
|
||||||
Improvements to the installation wizzard [tobiasd]
|
Improvements to the installation wizard [tobiasd]
|
||||||
Improvements to the Diaspora connectivity [annando, Hypolite]
|
Improvements to the Diaspora connectivity [annando, Hypolite]
|
||||||
Work on PHP7 compatibility [ddorian1]
|
Work on PHP7 compatibility [ddorian1]
|
||||||
Code cleanup [Hypolite, Quix0r]
|
Code cleanup [Hypolite, Quix0r]
|
||||||
|
@ -1800,7 +1800,7 @@ Version 3.5 (2016-09-13)
|
||||||
Improvements to the background process (poller, worker) [annando]
|
Improvements to the background process (poller, worker) [annando]
|
||||||
Improvements to the admin panel [tobiasd, annando, fabrixxm]
|
Improvements to the admin panel [tobiasd, annando, fabrixxm]
|
||||||
Improvements to the performance [annando]
|
Improvements to the performance [annando]
|
||||||
Improvements to the installation wizzard (language selection, RINO version, check required PHP modules, default theme is now vier) [tobiasd]
|
Improvements to the installation wizard (language selection, RINO version, check required PHP modules, default theme is now vier) [tobiasd]
|
||||||
Improvements to the relocation of nodes and accounts [annando]
|
Improvements to the relocation of nodes and accounts [annando]
|
||||||
Improvements to the DDoS detection [annando]
|
Improvements to the DDoS detection [annando]
|
||||||
Improvements to the calendar/events module [annando, rabuzarus]
|
Improvements to the calendar/events module [annando, rabuzarus]
|
||||||
|
@ -2020,7 +2020,7 @@ Version 3.4 (2015-04-05)
|
||||||
Optionally, "like" and "dislike" activities don't update thread timestamp (annando)
|
Optionally, "like" and "dislike" activities don't update thread timestamp (annando)
|
||||||
Updated markdown libraries (annando)
|
Updated markdown libraries (annando)
|
||||||
Updated jQuery (StefOfficiel)
|
Updated jQuery (StefOfficiel)
|
||||||
Cache zrl verification requests to prevent DSoS (issue #1453) (annando)
|
Cache zrl verification requests to prevent DDoS (issue #1453) (annando)
|
||||||
"Verify SSL" options affects also VERIFYHOST (annando)
|
"Verify SSL" options affects also VERIFYHOST (annando)
|
||||||
Better handling of hashtags (annando)
|
Better handling of hashtags (annando)
|
||||||
Updated translations (translation teams, tobias)
|
Updated translations (translation teams, tobias)
|
||||||
|
@ -2058,7 +2058,7 @@ Version 3.3.3 (2015-02-24)
|
||||||
Share-it button support (annando)
|
Share-it button support (annando)
|
||||||
More reliable reshare from Diaspora (annando)
|
More reliable reshare from Diaspora (annando)
|
||||||
Load more images via proxy (annando)
|
Load more images via proxy (annando)
|
||||||
util/typo.php uses "php -l" insead of "eval()" to validate code (fabrixxm)
|
util/typo.php uses "php -l" instead of "eval()" to validate code (fabrixxm)
|
||||||
Use $_SERVER array in cli script instead of $argv/$argc (issue #1218) (annando)
|
Use $_SERVER array in cli script instead of $argv/$argc (issue #1218) (annando)
|
||||||
Updated vagrant setup script (silke)
|
Updated vagrant setup script (silke)
|
||||||
API: support to star/unstar items (fabrixxm)
|
API: support to star/unstar items (fabrixxm)
|
||||||
|
|
|
@ -608,7 +608,7 @@ CREATE TABLE IF NOT EXISTS `diaspora-contact` (
|
||||||
`gsid` int unsigned COMMENT 'Global Server ID',
|
`gsid` int unsigned COMMENT 'Global Server ID',
|
||||||
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
|
`created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
|
||||||
`updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
|
`updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
|
||||||
`interacting_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts this contact interactes with',
|
`interacting_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts this contact interacts with',
|
||||||
`interacted_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts that interacted with this contact',
|
`interacted_count` int unsigned DEFAULT 0 COMMENT 'Number of contacts that interacted with this contact',
|
||||||
`post_count` int unsigned DEFAULT 0 COMMENT 'Number of posts and comments',
|
`post_count` int unsigned DEFAULT 0 COMMENT 'Number of posts and comments',
|
||||||
PRIMARY KEY(`uri-id`),
|
PRIMARY KEY(`uri-id`),
|
||||||
|
@ -880,7 +880,7 @@ CREATE TABLE IF NOT EXISTS `mail` (
|
||||||
`guid` varbinary(255) NOT NULL DEFAULT '' COMMENT 'A unique identifier for this private message',
|
`guid` varbinary(255) NOT NULL DEFAULT '' COMMENT 'A unique identifier for this private message',
|
||||||
`from-name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name of the sender',
|
`from-name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name of the sender',
|
||||||
`from-photo` varbinary(383) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
|
`from-photo` varbinary(383) NOT NULL DEFAULT '' COMMENT 'contact photo link of the sender',
|
||||||
`from-url` varbinary(383) NOT NULL DEFAULT '' COMMENT 'profile linke of the sender',
|
`from-url` varbinary(383) NOT NULL DEFAULT '' COMMENT 'profile link of the sender',
|
||||||
`contact-id` varbinary(255) COMMENT 'contact.id',
|
`contact-id` varbinary(255) COMMENT 'contact.id',
|
||||||
`author-id` int unsigned COMMENT 'Link to the contact table with uid=0 of the author of the mail',
|
`author-id` int unsigned COMMENT 'Link to the contact table with uid=0 of the author of the mail',
|
||||||
`convid` int unsigned COMMENT 'conv.id',
|
`convid` int unsigned COMMENT 'conv.id',
|
||||||
|
|
|
@ -163,7 +163,7 @@ Add or remove an activity from an item.
|
||||||
* `attendmaybe`
|
* `attendmaybe`
|
||||||
|
|
||||||
To remove an activity, prepend the verb with "un", eg. "unlike" or "undislike"
|
To remove an activity, prepend the verb with "un", eg. "unlike" or "undislike"
|
||||||
Attend verbs disable eachother: that means that if "attendyes" was added to an item, adding "attendno" remove previous "attendyes".
|
Attend verbs disable each other: that means that if "attendyes" was added to an item, adding "attendno" remove previous "attendyes".
|
||||||
Attend verbs should be used only with event-related items (there is no check at the moment).
|
Attend verbs should be used only with event-related items (there is no check at the moment).
|
||||||
|
|
||||||
#### Parameters
|
#### Parameters
|
||||||
|
|
|
@ -44,7 +44,7 @@ Uninstalling an addon automatically unregisters any hook it registered, but if y
|
||||||
|
|
||||||
The install and uninstall functions will be called (i.e. re-installed) if the addon changes after installation.
|
The install and uninstall functions will be called (i.e. re-installed) if the addon changes after installation.
|
||||||
Therefore your uninstall should not destroy data and install should consider that data may already exist.
|
Therefore your uninstall should not destroy data and install should consider that data may already exist.
|
||||||
Future extensions may provide for "setup" amd "remove".
|
Future extensions may provide for "setup" and "remove".
|
||||||
|
|
||||||
## PHP addon hooks
|
## PHP addon hooks
|
||||||
|
|
||||||
|
@ -264,7 +264,7 @@ $data = [
|
||||||
##### With multiple submit buttons
|
##### With multiple submit buttons
|
||||||
```php
|
```php
|
||||||
$data = [
|
$data = [
|
||||||
'addon' => 'catavar',
|
'addon' => 'catavatar',
|
||||||
'title' => DI::l10n()->t('Cat Avatar Settings'),
|
'title' => DI::l10n()->t('Cat Avatar Settings'),
|
||||||
'html' => $html,
|
'html' => $html,
|
||||||
'submit' => [
|
'submit' => [
|
||||||
|
@ -402,7 +402,7 @@ Called prior to output of personal XRD file.
|
||||||
|
|
||||||
### home_content
|
### home_content
|
||||||
Called prior to output home page content, shown to unlogged users.
|
Called prior to output home page content, shown to unlogged users.
|
||||||
`$b` is the HTML sring of section region.
|
`$b` is the HTML string of section region.
|
||||||
|
|
||||||
### contact_edit
|
### contact_edit
|
||||||
Called when editing contact details on an individual from the Contacts page.
|
Called when editing contact details on an individual from the Contacts page.
|
||||||
|
|
|
@ -47,7 +47,7 @@ function doSomething(\Friendica\Contact\Introductions\Collection\Introductions $
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @var $intros \Friendica\Contact\Introductions\Collection\Introductions */
|
/** @var $intros \Friendica\Contact\Introductions\Collection\Introductions */
|
||||||
$intros = \Friendica\DI::intro()->selecForUser(Session::getLocalUser());
|
$intros = \Friendica\DI::intro()->selectForUser(Session::getLocalUser());
|
||||||
|
|
||||||
doSomething($intros);
|
doSomething($intros);
|
||||||
```
|
```
|
||||||
|
|
|
@ -69,7 +69,7 @@ Friendica Documentation and Resources
|
||||||
* Ways to get Support
|
* Ways to get Support
|
||||||
* Friendica Support Forum: [@helpers@forum.friendi.ca](https://forum.friendi.ca/~helpers)
|
* Friendica Support Forum: [@helpers@forum.friendi.ca](https://forum.friendi.ca/~helpers)
|
||||||
* [Mailing List Archive](http://mailman.friendi.ca/mailman/listinfo/support-friendi.ca) you can subscribe to the list by sending an email to ``support-request(at)friendi.ca?subject=subscribe``
|
* [Mailing List Archive](http://mailman.friendi.ca/mailman/listinfo/support-friendi.ca) you can subscribe to the list by sending an email to ``support-request(at)friendi.ca?subject=subscribe``
|
||||||
* Community chat rooms (the IRC, Matrix and XMPP rooms are bridget) these public chats are logged [from IRC](https://gnusociarg.nsupdate.info/2021/%23friendica/) and [Matrix](https://view.matrix.org/alias/%23friendi.ca:matrix.org/)
|
* Community chat rooms (the IRC, Matrix and XMPP rooms are bridged) these public chats are logged [from IRC](https://gnusociarg.nsupdate.info/2021/%23friendica/) and [Matrix](https://view.matrix.org/alias/%23friendi.ca:matrix.org/)
|
||||||
* XMPP/Jabber MUC: support(at)forum.friendi.ca
|
* XMPP/Jabber MUC: support(at)forum.friendi.ca
|
||||||
* IRC: #friendica at [libera.chat](https://web.libera.chat/?channels=#friendica)
|
* IRC: #friendica at [libera.chat](https://web.libera.chat/?channels=#friendica)
|
||||||
* Matrix: [#friendi.ca](https://matrix.to/#/#friendi.ca:matrix.org) or [#friendica-en](https://matrix.to/#/#friendica-en:matrix.org) at matrix.org
|
* Matrix: [#friendi.ca](https://matrix.to/#/#friendi.ca:matrix.org) or [#friendica-en](https://matrix.to/#/#friendica-en:matrix.org) at matrix.org
|
||||||
|
|
|
@ -50,8 +50,8 @@ This will take you through a similar process.
|
||||||
|
|
||||||
Connect to users of alternate networks
|
Connect to users of alternate networks
|
||||||
---
|
---
|
||||||
### Across the Federation and Fedivese
|
### Across the Federation and Fediverse
|
||||||
You can also use your Identity Address or other people's Identity Addresses to become friends across the so-called Federation/Fedivese of open source social media.
|
You can also use your Identity Address or other people's Identity Addresses to become friends across the so-called Federation/Fediverse of open source social media.
|
||||||
Currently, Friendica supports connections with people on diaspora*, Red, Hubzilla, GNU Social, StatusNet, Mastodon, Pleroma, socialhome, and ganggo platforms.
|
Currently, Friendica supports connections with people on diaspora*, Red, Hubzilla, GNU Social, StatusNet, Mastodon, Pleroma, socialhome, and ganggo platforms.
|
||||||
|
|
||||||
If you know (for instance) "alice" on gnusocial.net (a GNU Social site) you could put alice@gnusocial.net into your Contact page and become friends across networks.
|
If you know (for instance) "alice" on gnusocial.net (a GNU Social site) you could put alice@gnusocial.net into your Contact page and become friends across networks.
|
||||||
|
|
|
@ -52,5 +52,5 @@ The same rules apply as with names that spaces within tags are represented by th
|
||||||
It is therefore not possible to create a tag whose target contains an underscore.
|
It is therefore not possible to create a tag whose target contains an underscore.
|
||||||
|
|
||||||
Topical tags are also not linked if they are purely numeric, e.g. #1.
|
Topical tags are also not linked if they are purely numeric, e.g. #1.
|
||||||
If you wish to use a numerica hashtag, please add some descriptive text such as #2012-elections.
|
If you wish to use a numeric hashtag, please add some descriptive text such as #2012-elections.
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@ Fields
|
||||||
| gsid | Global Server ID | int unsigned | YES | | NULL | |
|
| gsid | Global Server ID | int unsigned | YES | | NULL | |
|
||||||
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
| created | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||||
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
| updated | | datetime | NO | | 0001-01-01 00:00:00 | |
|
||||||
| interacting_count | Number of contacts this contact interactes with | int unsigned | YES | | 0 | |
|
| interacting_count | Number of contacts this contact interacts with | int unsigned | YES | | 0 | |
|
||||||
| interacted_count | Number of contacts that interacted with this contact | int unsigned | YES | | 0 | |
|
| interacted_count | Number of contacts that interacted with this contact | int unsigned | YES | | 0 | |
|
||||||
| post_count | Number of posts and comments | int unsigned | YES | | 0 | |
|
| post_count | Number of posts and comments | int unsigned | YES | | 0 | |
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ Fields
|
||||||
| guid | A unique identifier for this private message | varbinary(255) | NO | | | |
|
| guid | A unique identifier for this private message | varbinary(255) | NO | | | |
|
||||||
| from-name | name of the sender | varchar(255) | NO | | | |
|
| from-name | name of the sender | varchar(255) | NO | | | |
|
||||||
| from-photo | contact photo link of the sender | varbinary(383) | NO | | | |
|
| from-photo | contact photo link of the sender | varbinary(383) | NO | | | |
|
||||||
| from-url | profile linke of the sender | varbinary(383) | NO | | | |
|
| from-url | profile link of the sender | varbinary(383) | NO | | | |
|
||||||
| contact-id | contact.id | varbinary(255) | YES | | NULL | |
|
| contact-id | contact.id | varbinary(255) | YES | | NULL | |
|
||||||
| author-id | Link to the contact table with uid=0 of the author of the mail | int unsigned | YES | | NULL | |
|
| author-id | Link to the contact table with uid=0 of the author of the mail | int unsigned | YES | | NULL | |
|
||||||
| convid | conv.id | int unsigned | YES | | NULL | |
|
| convid | conv.id | int unsigned | YES | | NULL | |
|
||||||
|
|
|
@ -253,9 +253,9 @@ class Page implements ArrayAccess
|
||||||
'$touch_icon' => $touch_icon,
|
'$touch_icon' => $touch_icon,
|
||||||
'$block_public' => intval($config->get('system', 'block_public')),
|
'$block_public' => intval($config->get('system', 'block_public')),
|
||||||
'$stylesheets' => $this->stylesheets,
|
'$stylesheets' => $this->stylesheets,
|
||||||
'$likeError' => $l10n->t('Like not successfull'),
|
'$likeError' => $l10n->t('Like not successful'),
|
||||||
'$dislikeError' => $l10n->t('Dislike not successfull'),
|
'$dislikeError' => $l10n->t('Dislike not successful'),
|
||||||
'$announceError' => $l10n->t('Sharing not successfull'),
|
'$announceError' => $l10n->t('Sharing not successful'),
|
||||||
'$attendError' => $l10n->t('Attendance unsuccessful'),
|
'$attendError' => $l10n->t('Attendance unsuccessful'),
|
||||||
'$srvError' => $l10n->t('Backend error'),
|
'$srvError' => $l10n->t('Backend error'),
|
||||||
'$netError' => $l10n->t('Network error'),
|
'$netError' => $l10n->t('Network error'),
|
||||||
|
|
|
@ -95,7 +95,7 @@ Examples
|
||||||
bin/console autoinstall --savedb
|
bin/console autoinstall --savedb
|
||||||
Installs Friendica with environment variables and saves them to the 'config/local.config.php' file
|
Installs Friendica with environment variables and saves them to the 'config/local.config.php' file
|
||||||
|
|
||||||
bin/console autoinstall -H localhost -p 3365 -u user -P passwort1234 -d friendica -U https://friendica.fqdn
|
bin/console autoinstall -H localhost -p 3365 -u user -P password1234 -d friendica -U https://friendica.fqdn
|
||||||
Installs Friendica with a local mysql database with credentials
|
Installs Friendica with a local mysql database with credentials
|
||||||
HELP;
|
HELP;
|
||||||
}
|
}
|
||||||
|
|
|
@ -270,7 +270,7 @@ HELP;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Allows or denys a user based on it's nickname
|
* Allows or denies a user based on it's nickname
|
||||||
*
|
*
|
||||||
* @param bool $allow True, if the pending user is allowed, false if denies
|
* @param bool $allow True, if the pending user is allowed, false if denies
|
||||||
*
|
*
|
||||||
|
|
|
@ -447,7 +447,7 @@ class OEmbed
|
||||||
* Generates an XPath query to select elements whose provided attribute contains
|
* Generates an XPath query to select elements whose provided attribute contains
|
||||||
* the provided value in a space-separated list.
|
* the provided value in a space-separated list.
|
||||||
*
|
*
|
||||||
* @param string $attr Name of the attribute to seach
|
* @param string $attr Name of the attribute to search
|
||||||
* @param string $value Value to search in a space-separated list
|
* @param string $value Value to search in a space-separated list
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -548,7 +548,7 @@ class BBCode
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The previously spacefied [noparse][ i ]italic[ /i ][/noparse],
|
* The previously spacefied [noparse][ i ]italic[ /i ][/noparse],
|
||||||
* now turns back and the [noparse] tags are trimed
|
* now turns back and the [noparse] tags are trimmed
|
||||||
* returning [i]italic[/i]
|
* returning [i]italic[/i]
|
||||||
*
|
*
|
||||||
* @param array $match
|
* @param array $match
|
||||||
|
|
|
@ -842,7 +842,7 @@ class HTML
|
||||||
*
|
*
|
||||||
* @param string $s Search query.
|
* @param string $s Search query.
|
||||||
* @param string $id HTML id
|
* @param string $id HTML id
|
||||||
* @param bool $aside Display the search widgit aside.
|
* @param bool $aside Display the search widget aside.
|
||||||
*
|
*
|
||||||
* @return string Formatted HTML.
|
* @return string Formatted HTML.
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
|
|
|
@ -98,17 +98,17 @@ class Installer
|
||||||
* Checks the current installation environment. There are optional and mandatory checks.
|
* Checks the current installation environment. There are optional and mandatory checks.
|
||||||
*
|
*
|
||||||
* @param string $baseurl The baseurl of Friendica
|
* @param string $baseurl The baseurl of Friendica
|
||||||
* @param string $phpath Optional path to the PHP binary
|
* @param string $phppath Optional path to the PHP binary
|
||||||
*
|
*
|
||||||
* @return bool if the check succeed
|
* @return bool if the check succeed
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||||
*/
|
*/
|
||||||
public function checkEnvironment($baseurl, $phpath = null)
|
public function checkEnvironment($baseurl, $phppath = null)
|
||||||
{
|
{
|
||||||
$returnVal = true;
|
$returnVal = true;
|
||||||
|
|
||||||
if (isset($phpath)) {
|
if (isset($phppath)) {
|
||||||
if (!$this->checkPHP($phpath)) {
|
if (!$this->checkPHP($phppath)) {
|
||||||
$returnVal = false;
|
$returnVal = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -165,7 +165,7 @@ class Installer
|
||||||
'$dbpass' => $configCache->get('database', 'password'),
|
'$dbpass' => $configCache->get('database', 'password'),
|
||||||
'$dbdata' => $configCache->get('database', 'database'),
|
'$dbdata' => $configCache->get('database', 'database'),
|
||||||
|
|
||||||
'$phpath' => $configCache->get('config', 'php_path'),
|
'$phppath' => $configCache->get('config', 'php_path'),
|
||||||
'$adminmail' => $configCache->get('config', 'admin_email'),
|
'$adminmail' => $configCache->get('config', 'admin_email'),
|
||||||
|
|
||||||
'$system_url' => $configCache->get('system', 'url'),
|
'$system_url' => $configCache->get('system', 'url'),
|
||||||
|
|
|
@ -36,7 +36,7 @@ class Logger
|
||||||
*/
|
*/
|
||||||
const TYPE_LOGGER = LoggerInterface::class;
|
const TYPE_LOGGER = LoggerInterface::class;
|
||||||
/**
|
/**
|
||||||
* @var WorkerLogger A specific worker logger type, which can be anabled
|
* @var WorkerLogger A specific worker logger type, which can be enabled
|
||||||
*/
|
*/
|
||||||
const TYPE_WORKER = WorkerLogger::class;
|
const TYPE_WORKER = WorkerLogger::class;
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -102,7 +102,7 @@ class Database
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
* @todo Make this method obsolet - use a clean pattern instead ...
|
* @todo Make this method obsolete - use a clean pattern instead ...
|
||||||
*/
|
*/
|
||||||
public function setDependency(IManageConfigValues $config, Profiler $profiler, LoggerInterface $logger)
|
public function setDependency(IManageConfigValues $config, Profiler $profiler, LoggerInterface $logger)
|
||||||
{
|
{
|
||||||
|
|
|
@ -675,7 +675,7 @@ class GServer
|
||||||
}
|
}
|
||||||
|
|
||||||
// All following checks are done for systems that always have got a "host-meta" endpoint.
|
// All following checks are done for systems that always have got a "host-meta" endpoint.
|
||||||
// With this check we don't have to waste time and ressources for dead systems.
|
// With this check we don't have to waste time and resources for dead systems.
|
||||||
// Also this hopefully prevents us from receiving abuse messages.
|
// Also this hopefully prevents us from receiving abuse messages.
|
||||||
if (($serverdata['network'] == Protocol::PHANTOM) || in_array($serverdata['detection-method'], self::DETECT_UNSPECIFIC)) {
|
if (($serverdata['network'] == Protocol::PHANTOM) || in_array($serverdata['detection-method'], self::DETECT_UNSPECIFIC)) {
|
||||||
$validHostMeta = self::validHostMeta($url);
|
$validHostMeta = self::validHostMeta($url);
|
||||||
|
|
|
@ -25,7 +25,7 @@ use Friendica\Util\ReversedFileReader;
|
||||||
use Friendica\Object\Log\ParsedLogLine;
|
use Friendica\Object\Log\ParsedLogLine;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An iterator which returns `\Friendica\Objec\Log\ParsedLogLine` instances
|
* An iterator which returns `\Friendica\Object\Log\ParsedLogLine` instances
|
||||||
*
|
*
|
||||||
* Uses `\Friendica\Util\ReversedFileReader` to fetch log lines
|
* Uses `\Friendica\Util\ReversedFileReader` to fetch log lines
|
||||||
* from newest to oldest.
|
* from newest to oldest.
|
||||||
|
|
|
@ -58,7 +58,7 @@ class OpenWebAuthToken
|
||||||
* @param int $uid The user ID.
|
* @param int $uid The user ID.
|
||||||
* @param string $token
|
* @param string $token
|
||||||
*
|
*
|
||||||
* @return string|boolean The meta enry or false if not found.
|
* @return string|boolean The meta entry or false if not found.
|
||||||
* @throws \Exception
|
* @throws \Exception
|
||||||
*/
|
*/
|
||||||
public static function getMeta(string $type, int $uid, string $token)
|
public static function getMeta(string $type, int $uid, string $token)
|
||||||
|
|
|
@ -881,14 +881,14 @@ class Photo
|
||||||
* Then set the permissions to public.
|
* Then set the permissions to public.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
self::setPermissionForRessource($image_rid, $uid, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny);
|
self::setPermissionForResource($image_rid, $uid, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add permissions to photo ressource
|
* Add permissions to photo resource
|
||||||
* @todo mix with previous photo permissions
|
* @todo mix with previous photo permissions
|
||||||
*
|
*
|
||||||
* @param string $image_rid
|
* @param string $image_rid
|
||||||
|
@ -899,7 +899,7 @@ class Photo
|
||||||
* @param string $str_group_deny
|
* @param string $str_group_deny
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public static function setPermissionForRessource(string $image_rid, int $uid, string $str_contact_allow, string $str_group_allow, string $str_contact_deny, string $str_group_deny)
|
public static function setPermissionForResource(string $image_rid, int $uid, string $str_contact_allow, string $str_group_allow, string $str_contact_deny, string $str_group_deny)
|
||||||
{
|
{
|
||||||
$fields = ['allow_cid' => $str_contact_allow, 'allow_gid' => $str_group_allow,
|
$fields = ['allow_cid' => $str_contact_allow, 'allow_gid' => $str_group_allow,
|
||||||
'deny_cid' => $str_contact_deny, 'deny_gid' => $str_group_deny,
|
'deny_cid' => $str_contact_deny, 'deny_gid' => $str_group_deny,
|
||||||
|
|
|
@ -455,7 +455,7 @@ class Media
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests for path patterns that are usef for picture links in Friendica
|
* Tests for path patterns that are used for picture links in Friendica
|
||||||
*
|
*
|
||||||
* @param string $page Link to the image page
|
* @param string $page Link to the image page
|
||||||
* @param string $preview Preview picture
|
* @param string $preview Preview picture
|
||||||
|
@ -467,7 +467,7 @@ class Media
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests for path patterns that are usef for picture links in Friendica
|
* Tests for path patterns that are used for picture links in Friendica
|
||||||
*
|
*
|
||||||
* @param string $page Link to the image page
|
* @param string $page Link to the image page
|
||||||
* @param string $preview Preview picture
|
* @param string $preview Preview picture
|
||||||
|
|
|
@ -816,14 +816,14 @@ class User
|
||||||
* Empties the password reset token field just in case.
|
* Empties the password reset token field just in case.
|
||||||
*
|
*
|
||||||
* @param int $uid
|
* @param int $uid
|
||||||
* @param string $pasword_hashed
|
* @param string $password_hashed
|
||||||
* @return bool
|
* @return bool
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
*/
|
*/
|
||||||
private static function updatePasswordHashed(int $uid, string $pasword_hashed): bool
|
private static function updatePasswordHashed(int $uid, string $password_hashed): bool
|
||||||
{
|
{
|
||||||
$fields = [
|
$fields = [
|
||||||
'password' => $pasword_hashed,
|
'password' => $password_hashed,
|
||||||
'pwdreset' => null,
|
'pwdreset' => null,
|
||||||
'pwdreset_time' => null,
|
'pwdreset_time' => null,
|
||||||
'legacy_password' => false
|
'legacy_password' => false
|
||||||
|
|
|
@ -70,7 +70,7 @@ class Update extends BaseApi
|
||||||
throw new HTTPException\BadRequestException('no albumname specified');
|
throw new HTTPException\BadRequestException('no albumname specified');
|
||||||
}
|
}
|
||||||
|
|
||||||
// check if photo is existing in databasei
|
// check if photo is existing in database
|
||||||
if (!Photo::exists(['resource-id' => $photo_id, 'uid' => $uid, 'album' => $album])) {
|
if (!Photo::exists(['resource-id' => $photo_id, 'uid' => $uid, 'album' => $album])) {
|
||||||
throw new HTTPException\BadRequestException('photo not available');
|
throw new HTTPException\BadRequestException('photo not available');
|
||||||
}
|
}
|
||||||
|
|
|
@ -391,9 +391,8 @@ class Statuses extends BaseApi
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
Photo::setPermissionForRessource($media[0]['resource-id'], $item['uid'], $item['allow_cid'], $item['allow_gid'], $item['deny_cid'], $item['deny_gid']);
|
Photo::setPermissionForResource($media[0]['resource-id'], $item['uid'], $item['allow_cid'], $item['allow_gid'], $item['deny_cid'], $item['deny_gid']);
|
||||||
|
|
||||||
$ressources[] = $media[0]['resource-id'];
|
|
||||||
$phototypes = Images::supportedTypes();
|
$phototypes = Images::supportedTypes();
|
||||||
$ext = $phototypes[$media[0]['type']];
|
$ext = $phototypes[$media[0]['type']];
|
||||||
|
|
||||||
|
|
|
@ -153,11 +153,10 @@ class Update extends BaseApi
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
Photo::setPermissionForRessource($media[0]['resource-id'], $uid, $item['allow_cid'], $item['allow_gid'], $item['deny_cid'], $item['deny_gid']);
|
Photo::setPermissionForResource($media[0]['resource-id'], $uid, $item['allow_cid'], $item['allow_gid'], $item['deny_cid'], $item['deny_gid']);
|
||||||
|
|
||||||
$ressources[] = $media[0]['resource-id'];
|
$phototypes = Images::supportedTypes();
|
||||||
$phototypes = Images::supportedTypes();
|
$ext = $phototypes[$media[0]['type']];
|
||||||
$ext = $phototypes[$media[0]['type']];
|
|
||||||
|
|
||||||
$attachment = [
|
$attachment = [
|
||||||
'type' => Post\Media::IMAGE,
|
'type' => Post\Media::IMAGE,
|
||||||
|
|
|
@ -171,7 +171,7 @@ class Redir extends \Friendica\BaseModule
|
||||||
|
|
||||||
// On a local instance we have to check if the local user has already authenticated
|
// On a local instance we have to check if the local user has already authenticated
|
||||||
// with the local contact. Otherwise, the local user would ask the local contact
|
// with the local contact. Otherwise, the local user would ask the local contact
|
||||||
// for authentification everytime he/she is visiting a profile page of the local
|
// for authentication everytime he/she is visiting a profile page of the local
|
||||||
// contact.
|
// contact.
|
||||||
if (($host == $remotehost) && ($this->session->getRemoteContactID($this->session->get('visitor_visiting')) == $this->session->get('visitor_id'))) {
|
if (($host == $remotehost) && ($this->session->getRemoteContactID($this->session->get('visitor_visiting')) == $this->session->get('visitor_id'))) {
|
||||||
// Remote user is already authenticated.
|
// Remote user is already authenticated.
|
||||||
|
|
|
@ -120,7 +120,7 @@ class Network extends BaseModule
|
||||||
$content = '';
|
$content = '';
|
||||||
|
|
||||||
if (self::$forumContactId) {
|
if (self::$forumContactId) {
|
||||||
// If self::$forumContactId belongs to a community forum or a privat goup,.add a mention to the status editor
|
// If self::$forumContactId belongs to a community forum or a private group, add a mention to the status editor
|
||||||
$condition = ["`id` = ? AND `contact-type` = ?", self::$forumContactId, Contact::TYPE_COMMUNITY];
|
$condition = ["`id` = ? AND `contact-type` = ?", self::$forumContactId, Contact::TYPE_COMMUNITY];
|
||||||
$contact = DBA::selectFirst('contact', ['addr'], $condition);
|
$contact = DBA::selectFirst('contact', ['addr'], $condition);
|
||||||
if (!empty($contact['addr'])) {
|
if (!empty($contact['addr'])) {
|
||||||
|
|
|
@ -80,12 +80,12 @@ class Owa extends BaseModule
|
||||||
$ret['success'] = true;
|
$ret['success'] = true;
|
||||||
$token = Strings::getRandomHex(32);
|
$token = Strings::getRandomHex(32);
|
||||||
|
|
||||||
// Store the generated token in the databe.
|
// Store the generated token in the database.
|
||||||
OpenWebAuthToken::create('owt', 0, $token, $contact['addr']);
|
OpenWebAuthToken::create('owt', 0, $token, $contact['addr']);
|
||||||
|
|
||||||
$result = '';
|
$result = '';
|
||||||
|
|
||||||
// Encrypt the token with the public contacts publik key.
|
// Encrypt the token with the public contacts public key.
|
||||||
// Only the specific public contact will be able to encrypt it.
|
// Only the specific public contact will be able to encrypt it.
|
||||||
// At a later time, we will compare weather the token we're getting
|
// At a later time, we will compare weather the token we're getting
|
||||||
// is really the same token we have stored in the database.
|
// is really the same token we have stored in the database.
|
||||||
|
|
|
@ -31,7 +31,7 @@ class RobotsTxt extends BaseModule
|
||||||
{
|
{
|
||||||
protected function rawContent(array $request = [])
|
protected function rawContent(array $request = [])
|
||||||
{
|
{
|
||||||
$allDisalloweds = [
|
$allDisallowed = [
|
||||||
'/settings/',
|
'/settings/',
|
||||||
'/admin/',
|
'/admin/',
|
||||||
'/message/',
|
'/message/',
|
||||||
|
@ -42,7 +42,7 @@ class RobotsTxt extends BaseModule
|
||||||
|
|
||||||
header('Content-Type: text/plain');
|
header('Content-Type: text/plain');
|
||||||
echo 'User-agent: *' . PHP_EOL;
|
echo 'User-agent: *' . PHP_EOL;
|
||||||
foreach ($allDisalloweds as $disallowed) {
|
foreach ($allDisallowed as $disallowed) {
|
||||||
echo 'Disallow: ' . $disallowed . PHP_EOL;
|
echo 'Disallow: ' . $disallowed . PHP_EOL;
|
||||||
}
|
}
|
||||||
System::exit();
|
System::exit();
|
||||||
|
|
|
@ -28,7 +28,7 @@ use Friendica\Model\Search;
|
||||||
use Friendica\Protocol\Relay;
|
use Friendica\Protocol\Relay;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Node subscription preferences for social realy systems
|
* Node subscription preferences for social relay systems
|
||||||
* @see https://git.feneas.org/jaywink/social-relay/blob/master/docs/relays.md
|
* @see https://git.feneas.org/jaywink/social-relay/blob/master/docs/relays.md
|
||||||
*/
|
*/
|
||||||
class XSocialRelay extends BaseModule
|
class XSocialRelay extends BaseModule
|
||||||
|
|
|
@ -600,7 +600,7 @@ class Image
|
||||||
do {
|
do {
|
||||||
$this->image->cropImage($w, $h, $x, $y);
|
$this->image->cropImage($w, $h, $x, $y);
|
||||||
/*
|
/*
|
||||||
* We need to remove the canva,
|
* We need to remove the canvas,
|
||||||
* or the image is not resized to the crop:
|
* or the image is not resized to the crop:
|
||||||
* http://php.net/manual/en/imagick.cropimage.php#97232
|
* http://php.net/manual/en/imagick.cropimage.php#97232
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -192,7 +192,7 @@ class ProfileField extends BaseRepository
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delets a whole collection of ProfileFields
|
* Deletes a whole collection of ProfileFields
|
||||||
*
|
*
|
||||||
* @param Collection\ProfileFields $profileFields
|
* @param Collection\ProfileFields $profileFields
|
||||||
*
|
*
|
||||||
|
|
|
@ -1181,7 +1181,7 @@ class Receiver
|
||||||
self::switchContacts($receivers, $actor);
|
self::switchContacts($receivers, $actor);
|
||||||
|
|
||||||
// "birdsitelive" is a service that mirrors tweets into the fediverse
|
// "birdsitelive" is a service that mirrors tweets into the fediverse
|
||||||
// These posts can be fetched without authentification, but are not marked as public
|
// These posts can be fetched without authentication, but are not marked as public
|
||||||
// We treat them as unlisted posts to be able to handle them.
|
// We treat them as unlisted posts to be able to handle them.
|
||||||
if (empty($receivers) && $fetch_unlisted && Contact::isPlatform($actor, 'birdsitelive')) {
|
if (empty($receivers) && $fetch_unlisted && Contact::isPlatform($actor, 'birdsitelive')) {
|
||||||
$receivers[0] = ['uid' => 0, 'type' => self::TARGET_GLOBAL];
|
$receivers[0] = ['uid' => 0, 'type' => self::TARGET_GLOBAL];
|
||||||
|
@ -1370,7 +1370,7 @@ class Receiver
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fetches the object data from external ressources if needed
|
* Fetches the object data from external resources if needed
|
||||||
*
|
*
|
||||||
* @param string $object_id Object ID of the provided object
|
* @param string $object_id Object ID of the provided object
|
||||||
* @param array $object The provided object array
|
* @param array $object The provided object array
|
||||||
|
|
|
@ -1838,7 +1838,7 @@ class Transmitter
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return announce related data if the item is an annunce
|
* Return announce related data if the item is an announce
|
||||||
*
|
*
|
||||||
* @param array $item
|
* @param array $item
|
||||||
* @return array Announcement array
|
* @return array Announcement array
|
||||||
|
|
|
@ -608,7 +608,7 @@ class DFRN
|
||||||
|
|
||||||
/// @Todo
|
/// @Todo
|
||||||
/// - Check real image type and image size
|
/// - Check real image type and image size
|
||||||
/// - Check which of these boths elements we should use
|
/// - Check which of these elements we should use
|
||||||
$attributes = [
|
$attributes = [
|
||||||
'rel' => 'photo',
|
'rel' => 'photo',
|
||||||
'type' => 'image/jpeg',
|
'type' => 'image/jpeg',
|
||||||
|
@ -878,7 +878,7 @@ class DFRN
|
||||||
|
|
||||||
XML::addElement($doc, $entry, 'dfrn:diaspora_guid', $item['guid']);
|
XML::addElement($doc, $entry, 'dfrn:diaspora_guid', $item['guid']);
|
||||||
|
|
||||||
// The signed text contains the content in Markdown, the sender handle and the signatur for the content
|
// The signed text contains the content in Markdown, the sender handle and the signature for the content
|
||||||
// It is needed for relayed comments to Diaspora.
|
// It is needed for relayed comments to Diaspora.
|
||||||
if ($item['signed_text']) {
|
if ($item['signed_text']) {
|
||||||
$sign = base64_encode(json_encode(['signed_text' => $item['signed_text'],'signature' => '','signer' => '']));
|
$sign = base64_encode(json_encode(['signed_text' => $item['signed_text'],'signature' => '','signer' => '']));
|
||||||
|
|
|
@ -51,12 +51,12 @@ class Email
|
||||||
|
|
||||||
$errors = imap_errors();
|
$errors = imap_errors();
|
||||||
if (!empty($errors)) {
|
if (!empty($errors)) {
|
||||||
Logger::notice('IMAP Errors occured', ['errors' => $errors]);
|
Logger::notice('IMAP Errors occurred', ['errors' => $errors]);
|
||||||
}
|
}
|
||||||
|
|
||||||
$alerts = imap_alerts();
|
$alerts = imap_alerts();
|
||||||
if (!empty($alerts)) {
|
if (!empty($alerts)) {
|
||||||
Logger::notice('IMAP Alerts occured: ', ['alerts' => $alerts]);
|
Logger::notice('IMAP Alerts occurred: ', ['alerts' => $alerts]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $mbox;
|
return $mbox;
|
||||||
|
|
|
@ -31,7 +31,7 @@ use Friendica\Network\HTTPException\UnauthorizedException;
|
||||||
use Friendica\Util\DateTimeFormat;
|
use Friendica\Util\DateTimeFormat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Authentification via the basic auth method
|
* Authentication via the basic auth method
|
||||||
*/
|
*/
|
||||||
class BasicAuth
|
class BasicAuth
|
||||||
{
|
{
|
||||||
|
|
|
@ -303,7 +303,7 @@ class ExAuth
|
||||||
|
|
||||||
// If the hostnames doesn't match or there is some failure, we try to check remotely
|
// If the hostnames doesn't match or there is some failure, we try to check remotely
|
||||||
if ($Error && !$this->checkCredentials($aCommand[2], $aCommand[1], $aCommand[3], true)) {
|
if ($Error && !$this->checkCredentials($aCommand[2], $aCommand[1], $aCommand[3], true)) {
|
||||||
$this->writeLog(LOG_WARNING, 'authentification failed for user ' . $sUser . '@' . $aCommand[2]);
|
$this->writeLog(LOG_WARNING, 'authentication failed for user ' . $sUser . '@' . $aCommand[2]);
|
||||||
fwrite(STDOUT, pack('nn', 2, 0));
|
fwrite(STDOUT, pack('nn', 2, 0));
|
||||||
} else {
|
} else {
|
||||||
$this->writeLog(LOG_NOTICE, 'authenticated user ' . $sUser . '@' . $aCommand[2]);
|
$this->writeLog(LOG_NOTICE, 'authenticated user ' . $sUser . '@' . $aCommand[2]);
|
||||||
|
|
|
@ -73,7 +73,7 @@ class FileSystem
|
||||||
*
|
*
|
||||||
* @param string $url The file/url
|
* @param string $url The file/url
|
||||||
*
|
*
|
||||||
* @return resource the open stream rssource
|
* @return resource the open stream resource
|
||||||
*
|
*
|
||||||
* @throws \UnexpectedValueException
|
* @throws \UnexpectedValueException
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -451,7 +451,7 @@ class HTTPSignature
|
||||||
* @param string $request request url
|
* @param string $request request url
|
||||||
* @param integer $uid User id of the requester
|
* @param integer $uid User id of the requester
|
||||||
* @param boolean $binary TRUE if asked to return binary results (file download) (default is "false")
|
* @param boolean $binary TRUE if asked to return binary results (file download) (default is "false")
|
||||||
* @param array $opts (optional parameters) assoziative array with:
|
* @param array $opts (optional parameters) associative array with:
|
||||||
* 'accept_content' => supply Accept: header with 'accept_content' as the value
|
* 'accept_content' => supply Accept: header with 'accept_content' as the value
|
||||||
* 'timeout' => int Timeout in seconds, default system config value or 60 seconds
|
* 'timeout' => int Timeout in seconds, default system config value or 60 seconds
|
||||||
* 'nobody' => only return the header
|
* 'nobody' => only return the header
|
||||||
|
|
|
@ -77,7 +77,7 @@ class Proxy
|
||||||
*
|
*
|
||||||
* @param string $url The URL to proxify
|
* @param string $url The URL to proxify
|
||||||
* @param string $size One of the Proxy::SIZE_* constants
|
* @param string $size One of the Proxy::SIZE_* constants
|
||||||
* @return string The proxyfied URL or relative path
|
* @return string The proxified URL or relative path
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||||
*/
|
*/
|
||||||
public static function proxifyUrl(string $url, string $size = ''): string
|
public static function proxifyUrl(string $url, string $size = ''): string
|
||||||
|
|
|
@ -158,7 +158,7 @@ class ReversedFileReader implements \Iterator
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if current iterator value is valid, that is, we readed all lines in files
|
* Checks if current iterator value is valid, that is, we read all lines in files
|
||||||
*
|
*
|
||||||
* @see Iterator::valid()
|
* @see Iterator::valid()
|
||||||
* @return bool
|
* @return bool
|
||||||
|
|
|
@ -44,7 +44,7 @@ class Cron
|
||||||
if ($last) {
|
if ($last) {
|
||||||
$next = $last + ($poll_interval * 60);
|
$next = $last + ($poll_interval * 60);
|
||||||
if ($next > time()) {
|
if ($next > time()) {
|
||||||
Logger::notice('cron intervall not reached');
|
Logger::notice('cron interval not reached');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,7 +52,7 @@ class ExpirePosts
|
||||||
self::addMissingEntries();
|
self::addMissingEntries();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the expiry for origin posta
|
// Set the expiry for origin posts
|
||||||
Worker::add(Worker::PRIORITY_LOW, 'Expire');
|
Worker::add(Worker::PRIORITY_LOW, 'Expire');
|
||||||
|
|
||||||
// update nodeinfo data after everything is cleaned up
|
// update nodeinfo data after everything is cleaned up
|
||||||
|
|
|
@ -26,7 +26,7 @@ use Friendica\Model\Contact;
|
||||||
use Friendica\Util\DateTimeFormat;
|
use Friendica\Util\DateTimeFormat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update contact suggestions for all aktive users
|
* Update contact suggestions for all active users
|
||||||
*/
|
*/
|
||||||
class UpdateAllSuggestions
|
class UpdateAllSuggestions
|
||||||
{
|
{
|
||||||
|
|
|
@ -662,7 +662,7 @@ return [
|
||||||
"gsid" => ["type" => "int unsigned", "foreign" => ["gserver" => "id", "on delete" => "restrict"], "comment" => "Global Server ID"],
|
"gsid" => ["type" => "int unsigned", "foreign" => ["gserver" => "id", "on delete" => "restrict"], "comment" => "Global Server ID"],
|
||||||
"created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
"created" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
||||||
"updated" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
"updated" => ["type" => "datetime", "not null" => "1", "default" => DBA::NULL_DATETIME, "comment" => ""],
|
||||||
"interacting_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of contacts this contact interactes with"],
|
"interacting_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of contacts this contact interacts with"],
|
||||||
"interacted_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of contacts that interacted with this contact"],
|
"interacted_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of contacts that interacted with this contact"],
|
||||||
"post_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of posts and comments"],
|
"post_count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of posts and comments"],
|
||||||
],
|
],
|
||||||
|
@ -926,7 +926,7 @@ return [
|
||||||
"guid" => ["type" => "varbinary(255)", "not null" => "1", "default" => "", "comment" => "A unique identifier for this private message"],
|
"guid" => ["type" => "varbinary(255)", "not null" => "1", "default" => "", "comment" => "A unique identifier for this private message"],
|
||||||
"from-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "name of the sender"],
|
"from-name" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => "name of the sender"],
|
||||||
"from-photo" => ["type" => "varbinary(383)", "not null" => "1", "default" => "", "comment" => "contact photo link of the sender"],
|
"from-photo" => ["type" => "varbinary(383)", "not null" => "1", "default" => "", "comment" => "contact photo link of the sender"],
|
||||||
"from-url" => ["type" => "varbinary(383)", "not null" => "1", "default" => "", "comment" => "profile linke of the sender"],
|
"from-url" => ["type" => "varbinary(383)", "not null" => "1", "default" => "", "comment" => "profile link of the sender"],
|
||||||
"contact-id" => ["type" => "varbinary(255)", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
"contact-id" => ["type" => "varbinary(255)", "relation" => ["contact" => "id"], "comment" => "contact.id"],
|
||||||
"author-id" => ["type" => "int unsigned", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the author of the mail"],
|
"author-id" => ["type" => "int unsigned", "foreign" => ["contact" => "id", "on delete" => "restrict"], "comment" => "Link to the contact table with uid=0 of the author of the mail"],
|
||||||
"convid" => ["type" => "int unsigned", "relation" => ["conv" => "id"], "comment" => "conv.id"],
|
"convid" => ["type" => "int unsigned", "relation" => ["conv" => "id"], "comment" => "conv.id"],
|
||||||
|
|
|
@ -520,7 +520,7 @@ return [
|
||||||
'profiler' => false,
|
'profiler' => false,
|
||||||
|
|
||||||
// pushpoll_frequency (Integer)
|
// pushpoll_frequency (Integer)
|
||||||
// Frequency of contact poll for subhub contact using the DFRM or OStatus network.
|
// Frequency of contact poll for subhub contact using the DFRN or OStatus network.
|
||||||
// Available values:
|
// Available values:
|
||||||
// - 5 = every month
|
// - 5 = every month
|
||||||
// - 4 = every week
|
// - 4 = every week
|
||||||
|
|
|
@ -85,7 +85,7 @@ trait VFSTrait
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delets a config file from the Virtual File System
|
* Deletes a config file from the Virtual File System
|
||||||
*
|
*
|
||||||
* @param string $filename The filename of the config file
|
* @param string $filename The filename of the config file
|
||||||
* @param bool $static True, if the folder `static` instead of `config` should be used
|
* @param bool $static True, if the folder `static` instead of `config` should be used
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
return [
|
||||||
|
'resource' => [
|
||||||
|
'resources_not_allowed' => new \GuzzleHttp\Psr7\AppendStream(),
|
||||||
|
],
|
||||||
|
];
|
|
@ -1,7 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
return [
|
|
||||||
'ressource' => [
|
|
||||||
'ressources_not_allowed' => new \GuzzleHttp\Psr7\AppendStream(),
|
|
||||||
],
|
|
||||||
];
|
|
|
@ -673,7 +673,7 @@ Examples
|
||||||
bin/console autoinstall --savedb
|
bin/console autoinstall --savedb
|
||||||
Installs Friendica with environment variables and saves them to the 'config/local.config.php' file
|
Installs Friendica with environment variables and saves them to the 'config/local.config.php' file
|
||||||
|
|
||||||
bin/console autoinstall -h localhost -p 3365 -U user -P passwort1234 -d friendica
|
bin/console autoinstall -h localhost -p 3365 -U user -P password1234 -d friendica
|
||||||
Installs Friendica with a local mysql database with credentials
|
Installs Friendica with a local mysql database with credentials
|
||||||
|
|
||||||
HELP;
|
HELP;
|
||||||
|
|
|
@ -133,7 +133,7 @@ class UserTest extends MockedTest
|
||||||
$this->dbMock->shouldReceive('isResult')->with('objectReturn')->andReturn(true)->once();
|
$this->dbMock->shouldReceive('isResult')->with('objectReturn')->andReturn(true)->once();
|
||||||
$this->dbMock->shouldReceive('toArray')->with('objectReturn', true, 0)->andReturn([$this->parent])->once();
|
$this->dbMock->shouldReceive('toArray')->with('objectReturn', true, 0)->andReturn([$this->parent])->once();
|
||||||
|
|
||||||
// Select the childs (user & manage)
|
// Select the children (user & manage)
|
||||||
$this->dbMock->shouldReceive('select')->with('user',
|
$this->dbMock->shouldReceive('select')->with('user',
|
||||||
['uid', 'username', 'nickname'],
|
['uid', 'username', 'nickname'],
|
||||||
[
|
[
|
||||||
|
|
|
@ -88,7 +88,7 @@ class ImagesTest extends MockedTest
|
||||||
*
|
*
|
||||||
* @dataProvider dataImages
|
* @dataProvider dataImages
|
||||||
*/
|
*/
|
||||||
public function testGetInfoFromRemotURL(string $url, array $headers, string $data, array $assertion)
|
public function testGetInfoFromRemoteURL(string $url, array $headers, string $data, array $assertion)
|
||||||
{
|
{
|
||||||
$this->httpRequestHandler->setHandler(new MockHandler([
|
$this->httpRequestHandler->setHandler(new MockHandler([
|
||||||
new Response(200, $headers, $data),
|
new Response(200, $headers, $data),
|
||||||
|
|
|
@ -11,7 +11,7 @@ The iconset started from the new default user avatar (letter "p") Andi made for
|
||||||
License
|
License
|
||||||
-------
|
-------
|
||||||
|
|
||||||
The iconset is published unter the [CC-BY-SA 4.0][cc] license.
|
The iconset is published under the [CC-BY-SA 4.0][cc] license.
|
||||||
|
|
||||||
Preview
|
Preview
|
||||||
-------
|
-------
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
</div>\
|
</div>\
|
||||||
<div id="previewImages_' + id + '" class="previewImages">\
|
<div id="previewImages_' + id + '" class="previewImages">\
|
||||||
<div id="previewImgBtn_' + id + '" class="previewImgBtn">\
|
<div id="previewImgBtn_' + id + '" class="previewImgBtn">\
|
||||||
<button type="button" id="previewChangeImg_' + id + '" class="buttonChangeDeactive previewActionBtn" style="display: none">\
|
<button type="button" id="previewChangeImg_' + id + '" class="buttonChangeDeactivate previewActionBtn" style="display: none">\
|
||||||
<i class="fa fa-exchange" aria-hidden="true"></i>\
|
<i class="fa fa-exchange" aria-hidden="true"></i>\
|
||||||
</button>\
|
</button>\
|
||||||
</div>\
|
</div>\
|
||||||
|
|
|
@ -674,15 +674,15 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/App/Page.php:256
|
#: src/App/Page.php:256
|
||||||
msgid "Like not successfull"
|
msgid "Like not successful"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/App/Page.php:257
|
#: src/App/Page.php:257
|
||||||
msgid "Dislike not successfull"
|
msgid "Dislike not successful"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/App/Page.php:258
|
#: src/App/Page.php:258
|
||||||
msgid "Sharing not successfull"
|
msgid "Sharing not successful"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/App/Page.php:259
|
#: src/App/Page.php:259
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
*
|
*
|
||||||
* The site template for pure content (e.g. (modals)
|
* The site template for pure content (e.g. (modals)
|
||||||
*
|
*
|
||||||
* This themplate is used e.g for bs modals. So outputs
|
* This template is used e.g for bs modals. So outputs
|
||||||
* only the pure content
|
* only the pure content
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
{{/foreach}}
|
{{/foreach}}
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
{{if $phpath}}
|
{{if $phppath}}
|
||||||
<input type="hidden" name="config-php_path" value="{{$php_path}}">
|
<input type="hidden" name="config-php_path" value="{{$php_path}}">
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ return [
|
||||||
// ****************************************************************
|
// ****************************************************************
|
||||||
|
|
||||||
'config' => [
|
'config' => [
|
||||||
'php_path' => '{{$phpath|escape:'quotes' nofilter}}',
|
'php_path' => '{{$phppath|escape:'quotes' nofilter}}',
|
||||||
'admin_email' => '{{$adminmail|escape:'quotes' nofilter}}',
|
'admin_email' => '{{$adminmail|escape:'quotes' nofilter}}',
|
||||||
'sitename' => 'Friendica Social Network',
|
'sitename' => 'Friendica Social Network',
|
||||||
'register_policy' => \Friendica\Module\Register::OPEN,
|
'register_policy' => \Friendica\Module\Register::OPEN,
|
||||||
|
|
|
@ -24,11 +24,11 @@
|
||||||
var accountType = {{$account_type}};
|
var accountType = {{$account_type}};
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
// Hide all DIV for page-flags expet the one which belongs to the present
|
// Hide all DIV for page-flags except the one which belongs to the present
|
||||||
// account-type
|
// account-type
|
||||||
showPageFlags(accountType);
|
showPageFlags(accountType);
|
||||||
|
|
||||||
// Save the ID of the active page-flage
|
// Save the ID of the active page-flags
|
||||||
var activeFlag = $('[id^=id_page-flags_]:checked');
|
var activeFlag = $('[id^=id_page-flags_]:checked');
|
||||||
|
|
||||||
$("[id^=id_account-type_]").change(function(){
|
$("[id^=id_account-type_]").change(function(){
|
||||||
|
|
|
@ -2180,7 +2180,7 @@ wall-item-comment-wrapper.well hr {
|
||||||
nav .acpopup {
|
nav .acpopup {
|
||||||
margin-left: -23px;
|
margin-left: -23px;
|
||||||
}
|
}
|
||||||
/** @todo: we schould consider the possibility to overwrite bootstrap dropdowns
|
/** @todo: we should consider the possibility to overwrite bootstrap dropdowns
|
||||||
at the beginning of this file to get rid of the !important */
|
at the beginning of this file to get rid of the !important */
|
||||||
.textcomplete-item > a {
|
.textcomplete-item > a {
|
||||||
color: $font_color_darker !important;
|
color: $font_color_darker !important;
|
||||||
|
|
|
@ -81,7 +81,7 @@ input[type="range"] {
|
||||||
|
|
||||||
.form-control[disabled],
|
.form-control[disabled],
|
||||||
.form-control[readonly],
|
.form-control[readonly],
|
||||||
.ieldset[disabled] .form-control {
|
.fieldset[disabled] .form-control {
|
||||||
background-color: $background_color;
|
background-color: $background_color;
|
||||||
color: $font_color_darker;
|
color: $font_color_darker;
|
||||||
}
|
}
|
||||||
|
|
|
@ -162,7 +162,7 @@
|
||||||
|
|
||||||
{{* The jot modal - We use a own modal for the jot and not the standard modal
|
{{* The jot modal - We use a own modal for the jot and not the standard modal
|
||||||
from the page template. This is because the special structure of the jot
|
from the page template. This is because the special structure of the jot
|
||||||
(e.g.jot navigation tabs in the modal titel area).
|
(e.g.jot navigation tabs in the modal title area).
|
||||||
Then in the frio theme the jot will loaded regularly and is hidden by default.)
|
Then in the frio theme the jot will loaded regularly and is hidden by default.)
|
||||||
The js function jotShow() loads the jot into the modal. With this structure we
|
The js function jotShow() loads the jot into the modal. With this structure we
|
||||||
can load different content into the jot modal (e.g. the item edit jot)
|
can load different content into the jot modal (e.g. the item edit jot)
|
||||||
|
|
|
@ -22,7 +22,7 @@ as the value of $top_child_total (this is done at the end of this file)
|
||||||
{{if $item.thread_level==2 && $top_child_nr==1}}
|
{{if $item.thread_level==2 && $top_child_nr==1}}
|
||||||
<div class="comment-container"> <!--top-child-begin-->
|
<div class="comment-container"> <!--top-child-begin-->
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{* end of hacky part to count childrens *}}
|
{{* end of hacky part to count children *}}
|
||||||
|
|
||||||
|
|
||||||
{{if $mode == display}}
|
{{if $mode == display}}
|
||||||
|
@ -91,7 +91,7 @@ as the value of $top_child_total (this is done at the end of this file)
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{* The litle overlay avatar picture if someone is posting directly to a wall or a forum *}}
|
{{* The little overlay avatar picture if someone is posting directly to a wall or a forum *}}
|
||||||
{{if $item.owner_url}}
|
{{if $item.owner_url}}
|
||||||
<div aria-hidden="true" class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-{{$item.id}}">
|
<div aria-hidden="true" class="contact-photo-wrapper mframe wwto" id="wall-item-ownerphoto-wrapper-{{$item.id}}">
|
||||||
<a href="{{$item.owner_url}}" target="redir" title="{{$item.olinktitle}}" class="contact-photo-link" id="wall-item-ownerphoto-link-{{$item.id}}">
|
<a href="{{$item.owner_url}}" target="redir" title="{{$item.olinktitle}}" class="contact-photo-link" id="wall-item-ownerphoto-link-{{$item.id}}">
|
||||||
|
|
|
@ -551,10 +551,6 @@ select{
|
||||||
border-bottom: 1px solid black;
|
border-bottom: 1px solid black;
|
||||||
}
|
}
|
||||||
|
|
||||||
.setings-contend-block {
|
|
||||||
background-color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
#settings-form {
|
#settings-form {
|
||||||
background-color: #ededed;
|
background-color: #ededed;
|
||||||
}
|
}
|
||||||
|
|
|
@ -421,7 +421,7 @@ pre code {
|
||||||
.tool a {
|
.tool a {
|
||||||
/* color: #000; */
|
/* color: #000; */
|
||||||
}
|
}
|
||||||
.tool a:hover, .widget a:hover, #nets-sidear a:hover, #forum-widget-collapse:hover, .admin.link a:hover, aside h4 a:hover, right_aside h4 a:hover {
|
.tool a:hover, .widget a:hover, #nets-sidebar a:hover, #forum-widget-collapse:hover, .admin.link a:hover, aside h4 a:hover, right_aside h4 a:hover {
|
||||||
/* text-decoration: underline; */
|
/* text-decoration: underline; */
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
color: black;
|
color: black;
|
||||||
|
|
|
@ -27,7 +27,7 @@ right_aside #right_services img {
|
||||||
}
|
}
|
||||||
|
|
||||||
right_aside #lastusers-wrapper,
|
right_aside #lastusers-wrapper,
|
||||||
right_aside div.itens-wrapper,
|
right_aside div.items-wrapper,
|
||||||
right_aside #right_services_icons {
|
right_aside #right_services_icons {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
|
|
Loading…
Reference in a new issue