<?php
+/**
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
namespace Friendica\Model\User;
use Friendica\App;
-use Friendica\Core\Config\Configuration;
+use Friendica\Core\Config\IConfig;
/**
* Interacting with the Friendica Cookie of a user
const PATH = '/';
/** @var string The domain name of the Friendica cookie */
const DOMAIN = '';
- /** @var bool True, if the cookie should only be accessable through HTTP */
+ /** @var bool True, if the cookie should only be accessible through HTTP */
const HTTPONLY = true;
/** @var string The remote address of this node */
/** @var array The $_COOKIE array */
private $cookie;
- public function __construct(Configuration $config, array $server = [], array $cookie = [])
+ public function __construct(IConfig $config, App\BaseURL $baseURL, array $server = [], array $cookie = [])
{
if (!empty($server['REMOTE_ADDR'])) {
$this->remoteAddr = $server['REMOTE_ADDR'];
}
- $this->sslEnabled = $config->get('system', 'ssl_policy') === App\BaseURL::SSL_POLICY_FULL;
+ $this->sslEnabled = $baseURL->getSSLPolicy() === App\BaseURL::SSL_POLICY_FULL;
$this->sitePrivateKey = $config->get('system', 'site_prvkey');
$authCookieDays = $config->get('system', 'auth_cookie_lifetime',
/**
* Set the Friendica cookie for a user
*
- * @param int $uid The user id
- * @param string $password The user password
- * @param string $privateKey The user private key
- * @param int|null $seconds optional the seconds
+ * @param int $uid The user id
+ * @param string $password The user password
+ * @param string $privateKey The user private key
+ * @param int|null $seconds optional the seconds
*
* @return bool
*/
* @link https://php.net/manual/en/function.setcookie.php
*
* @param string $name
- * @param string $value [optional]
- * @param int $expire [optional]
- * @param bool $secure [optional]
+ * @param string $value [optional]
+ * @param int $expire [optional]
+ * @param bool $secure [optional]
*
* @return bool If output exists prior to calling this function,
*