$head_tpl = Renderer::getMarkupTemplate('message-head.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($head_tpl, [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$base' => $base
]);
}
$tpl = Renderer::getMarkupTemplate('msg-header.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$nickname' => $a->getLoggedInUserNickname(),
'$linkurl' => DI::l10n()->t('Please enter a link URL:')
]);
$tpl = Renderer::getMarkupTemplate('msg-header.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$nickname' => $a->getLoggedInUserNickname(),
'$linkurl' => DI::l10n()->t('Please enter a link URL:')
]);
header("X-Friendica-Version: " . App::VERSION);
header("Content-type: text/html; charset=utf-8");
- if ($config->get('system', 'hsts') && ($baseURL->getSSLPolicy() == BaseURL::SSL_POLICY_FULL)) {
+ if ($config->get('system', 'hsts') && ($baseURL->getScheme() === 'https')) {
header("Strict-Transport-Security: max-age=31536000");
}
$this->out('The Friendica URL has to be set during CLI installation.');
return 1;
} else {
- $baseUrl = new BaseURL($this->config, []);
- $baseUrl->saveByURL($url);
+ $configCache->set('system', 'url', $url);
}
$installer->createConfig($configCache);
$fields = ['id', 'avatar', 'photo', 'thumb', 'micro', 'uri-id', 'url', 'avatar', 'network'];
$condition = ["NOT `self` AND `avatar` != ? AND `photo` LIKE ? AND `uid` = ? AND `uri-id` != ? AND NOT `uri-id` IS NULL AND NOT `network` IN (?, ?)",
- '', $this->baseUrl->get() . '/photo/%', 0, 0, Protocol::MAIL, Protocol::FEED];
+ '', $this->baseUrl . '/photo/%', 0, 0, Protocol::MAIL, Protocol::FEED];
$count = 0;
$total = $this->dba->count('contact', $condition);
throw new \InvalidArgumentException('Can not parse new base URL. Must have at least <scheme>://<domain>');
}
- $this->out(sprintf('Relocation started from %s to %s. Could take a while to complete.', $this->baseUrl->get(true), $this->getArgument(0)));
+ $this->out(sprintf('Relocation started from %s to %s. Could take a while to complete.', $this->baseUrl, $this->getArgument(0)));
- $old_url = $this->baseUrl->get(true);
+ $old_url = $this->baseUrl;
// Generate host names for relocation the addresses in the format user@address.tld
$new_host = str_replace('http://', '@', Strings::normaliseLink($new_url));
// update config
$this->out('Updating config values');
$this->config->set('system', 'url', $new_url);
- $this->baseUrl->saveByURL($new_url);
$this->database->commit();
} catch (\Throwable $e) {
$tpl = Renderer::getMarkupTemplate('jot-header.tpl');
$this->page['htmlhead'] .= Renderer::replaceMacros($tpl, [
'$newpost' => 'true',
- '$baseurl' => $this->baseURL->get(true),
+ '$baseurl' => $this->baseURL,
'$geotag' => $geotag,
'$nickname' => $x['nickname'],
'$ispublic' => $this->l10n->t('Visible to <strong>everybody</strong>'),
'$posttype' => $notes_cid ? ItemModel::PT_PERSONAL_NOTE : ItemModel::PT_ARTICLE,
'$content' => $x['content'] ?? '',
'$post_id' => $x['post_id'] ?? '',
- '$baseurl' => $this->baseURL->get(true),
+ '$baseurl' => $this->baseURL,
'$defloc' => $x['default_location'],
'$visitor' => $x['visitor'],
'$pvisit' => $notes_cid ? 'none' : $x['visitor'],
}
$o = Renderer::replaceMacros($page_template, [
- '$baseurl' => $this->baseURL->get($ssl_state),
+ '$baseurl' => $this->baseURL,
'$return_path' => $this->args->getQueryString(),
'$live_update' => $live_update_div,
'$remove' => $this->l10n->t('remove'),
if ($post['attach']) {
$post['attach'] .= ',';
}
- $post['attach'] .= Post\Media::getAttachElement($this->baseURL->get() . '/attach/' . $attachment['id'],
+ $post['attach'] .= Post\Media::getAttachElement($this->baseURL . '/attach/' . $attachment['id'],
$attachment['filesize'], $attachment['filetype'], $attachment['filename'] ?? '');
$fields = ['allow_cid' => $post['allow_cid'], 'allow_gid' => $post['allow_gid'],
$myident = !empty($this->session->getLocalUserNickname()) ? $this->session->getLocalUserNickname() . '@' : '';
- $sitelocation = $myident . substr($this->baseUrl->get($ssl_state), strpos($this->baseUrl->get($ssl_state), '//') + 2);
+ $sitelocation = $myident . substr($this->baseUrl, strpos($this->baseUrl, '//') + 2);
$nav = [
'admin' => null,
private static function cleanPictureLinksCallback(array $match): string
{
// When the picture link is the own photo path then we can avoid fetching the link
- $own_photo_url = preg_quote(Strings::normaliseLink(DI::baseUrl()->get()) . '/photos/');
+ $own_photo_url = preg_quote(Strings::normaliseLink(DI::baseUrl()) . '/photos/');
if (preg_match('|' . $own_photo_url . '.*?/image/|', Strings::normaliseLink($match[1]))) {
if (!empty($match[3])) {
$text = '[img=' . str_replace('-1.', '-0.', $match[2]) . ']' . $match[3] . '[/img]';
// Default iframe allowed domains/path
$allowedIframeDomains = [
- DI::baseUrl()->getHostname()
- . (DI::baseUrl()->getUrlPath() ? '/' . DI::baseUrl()->getUrlPath() : '')
+ DI::baseUrl()->getHost()
+ . (DI::baseUrl()->getPath() ? '/' . DI::baseUrl()->getPath() : '')
. '/oembed/', # The path part has to change with the source in Content\Oembed::iframe
'www.youtube.com/embed/',
'player.vimeo.com/video/',
public function __construct(BaseURL $baseURL, IManageConfigValues $config, Database $dba, Profiler $profiler, LoggerInterface $logger)
{
- $this->hostname = $baseURL->getHostname();
+ $this->hostname = $baseURL->getHost();
$this->config = $config;
$this->dba = $dba;
$this->profiler = $profiler;
DI::profiler()->startRecording('rendering');
// pass $baseurl to all templates if it isn't set
- $vars = array_merge(['$baseurl' => DI::baseUrl()->get(), '$APP' => DI::app()], $vars);
+ $vars = array_merge(['$baseurl' => DI::baseUrl(), '$APP' => DI::app()], $vars);
$t = self::getTemplateEngine();
ini_set('session.use_only_cookies', 1);
ini_set('session.cookie_httponly', (int)Cookie::HTTPONLY);
- if ($baseURL->getSSLPolicy() == App\BaseURL::SSL_POLICY_FULL) {
+ if ($baseURL->getScheme() === 'https') {
ini_set('session.cookie_secure', 1);
}
if (is_bool($prefix) && !$prefix) {
$prefix = '';
} elseif (empty($prefix)) {
- $prefix = hash('crc32', DI::baseUrl()->getHostname());
+ $prefix = hash('crc32', DI::baseUrl()->getHost());
}
while (strlen($prefix) < ($size - 13)) {
$temppath = BasePath::getRealPath($temppath);
// To avoid any interferences with other systems we create our own directory
- $new_temppath = $temppath . "/" . DI::baseUrl()->getHostname();
+ $new_temppath = $temppath . "/" . DI::baseUrl()->getHost();
if (!is_dir($new_temppath)) {
/// @TODO There is a mkdir()+chmod() upwards, maybe generalize this (+ configurable) into a function/method?
mkdir($new_temppath);
}
foreach ($photos as $id => $photo) {
- $link = $this->baseUrl->get() . '/photo/' . $data['resource-id'] . '-' . $photo['scale'] . Images::getExtensionByMimeType($data['type']);
+ $link = $this->baseUrl . '/photo/' . $data['resource-id'] . '-' . $photo['scale'] . Images::getExtensionByMimeType($data['type']);
if ($type == 'xml') {
$data['links'][$photo['scale'] . ':link']['@attributes'] = [
'type' => $data['type'],
{
if (!parse_url($url, PHP_URL_SCHEME)) {
$addr_parts = explode('@', $url);
- return (count($addr_parts) == 2) && ($addr_parts[1] == DI::baseUrl()->getHostname());
+ return (count($addr_parts) == 2) && ($addr_parts[1] == DI::baseUrl()->getHost());
}
return Strings::compareLink(self::getBasepath($url, true), DI::baseUrl());
if ($notify) {
// We have to avoid duplicates. So we create the GUID in form of a hash of the plink or uri.
// We add the hash of our own host because our host is the original creator of the post.
- $prefix_host = DI::baseUrl()->getHostname();
+ $prefix_host = DI::baseUrl()->getHost();
} else {
$prefix_host = '';
$guid = System::createUUID();
}
- return DI::baseUrl()->get() . '/objects/' . $guid;
+ return DI::baseUrl() . '/objects/' . $guid;
}
/**
}
// Prevent to forward already forwarded posts
- if ($datarray['app'] == DI::baseUrl()->getHostname()) {
+ if ($datarray['app'] == DI::baseUrl()->getHost()) {
Logger::info('Already forwarded (second test)');
return false;
}
return [
'name' => $administrator['username'] ?? null,
'contact' => $administrator['email'] ?? null,
- 'account' => $administrator['nickname'] ?? '' ? DI::baseUrl()->get() . '/profile/' . $administrator['nickname'] : null,
+ 'account' => $administrator['nickname'] ?? '' ? DI::baseUrl() . '/profile/' . $administrator['nickname'] : null,
];
}
}
*/
public static function getResourceData(string $name): array
{
- $base = DI::baseUrl()->get();
+ $base = DI::baseUrl();
$guid = str_replace([Strings::normaliseLink($base), '/photo/'], '', Strings::normaliseLink($name));
*/
public static function isLocalPage(string $name): bool
{
- $base = DI::baseUrl()->get();
+ $base = DI::baseUrl();
$guid = str_replace(Strings::normaliseLink($base), '', Strings::normaliseLink($name));
$guid = preg_replace("=/photos/.*/image/(.*)=ism", '$1', $guid);
if (!$local_user_is_self) {
if (!$visitor_is_authenticated) {
// Remote follow is only available for local profiles
- if (!empty($profile['nickname']) && strpos($profile_url, DI::baseUrl()->get()) === 0) {
+ if (!empty($profile['nickname']) && strpos($profile_url, DI::baseUrl()) === 0) {
$follow_link = 'profile/' . $profile['nickname'] . '/remote_follow';
}
} else {
$query = rtrim(str_replace($addr_request, '', DI::args()->getQueryString()), '?&');
// The other instance needs to know where to redirect.
- $dest = urlencode(DI::baseUrl()->get() . '/' . $query);
+ $dest = urlencode(DI::baseUrl() . '/' . $query);
// We need to extract the basebath from the profile url
// to redirect the visitors '/magic' module.
$basepath = Contact::getBasepath($contact['url']);
- if ($basepath != DI::baseUrl()->get() && !strstr($dest, '/magic')) {
+ if ($basepath != DI::baseUrl() && !strstr($dest, '/magic')) {
$magic_path = $basepath . '/magic' . '?owa=1&dest=' . $dest . '&' . $addr_request;
// We have to check if the remote server does understand /magic without invoking something
$a->setContactId($arr['visitor']['id']);
- DI::sysmsg()->addInfo(DI::l10n()->t('OpenWebAuth: %1$s welcomes %2$s', DI::baseUrl()->getHostname(), $visitor['name']));
+ DI::sysmsg()->addInfo(DI::l10n()->t('OpenWebAuth: %1$s welcomes %2$s', DI::baseUrl()->getHost(), $visitor['name']));
Logger::info('OpenWebAuth: auth success from ' . $visitor['addr']);
}
$system['region'] = '';
$system['postal-code'] = '';
$system['country-name'] = '';
- $system['homepage'] = DI::baseUrl()->get();
+ $system['homepage'] = DI::baseUrl();
$system['dob'] = '0000-00-00';
// Ensure that the user contains data
'self' => true,
'network' => Protocol::ACTIVITYPUB,
'name' => 'System Account',
- 'addr' => $system_actor_name . '@' . DI::baseUrl()->getHostname(),
+ 'addr' => $system_actor_name . '@' . DI::baseUrl()->getHost(),
'nick' => $system_actor_name,
'url' => DI::baseUrl() . '/friendica',
'pubkey' => $keys['pubkey'],
$_SESSION['register'] = 1;
$_SESSION['openid'] = $openid_url;
- $openid = new LightOpenID(DI::baseUrl()->getHostname());
+ $openid = new LightOpenID(DI::baseUrl()->getHost());
$openid->identity = $openid_url;
$openid->returnUrl = DI::baseUrl() . '/openid';
$openid->required = ['namePerson/friendly', 'contact/email', 'namePerson'];
$l10n,
$user,
DI::config()->get('config', 'sitename'),
- DI::baseUrl()->get(),
+ DI::baseUrl(),
($register['password'] ?? '') ?: 'Sent in a previous email'
);
}
Thank you and welcome to %4$s.'));
$preamble = sprintf($preamble, $user['username'], DI::config()->get('config', 'sitename'));
- $body = sprintf($body, DI::baseUrl()->get(), $user['nickname'], $result['password'], DI::config()->get('config', 'sitename'));
+ $body = sprintf($body, DI::baseUrl(), $user['nickname'], $result['password'], DI::config()->get('config', 'sitename'));
$email = DI::emailer()
->newSystemMail()
*/
public function __construct(App\Request $request, IManageConfigValues $config, App\BaseURL $baseURL, array $COOKIE = [])
{
- $this->sslEnabled = $baseURL->getSSLPolicy() === App\BaseURL::SSL_POLICY_FULL;
+ $this->sslEnabled = $baseURL->getScheme() === 'https';
$this->sitePrivateKey = $config->get('system', 'site_prvkey');
$authCookieDays = $config->get('system', 'auth_cookie_lifetime',
Logger::info('Provided GUID found.', ['guid' => $this->parameters['guid'], 'uri-id' => $itemuri['id']]);
} else {
// The item URI does not always contain the GUID. This means that we have to search the URL instead
- $url = DI::baseUrl()->get() . '/' . DI::args()->getQueryString();
+ $url = DI::baseUrl() . '/' . DI::args()->getQueryString();
$nurl = Strings::normaliseLink($url);
$ssl_url = str_replace('http://', 'https://', $nurl);
'$page' => DI::l10n()->t('Addons'),
'$toggle' => DI::l10n()->t('Toggle'),
'$settings' => DI::l10n()->t('Settings'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$addon' => $addon,
'$status' => $status,
'$page' => DI::l10n()->t('Addons'),
'$submit' => DI::l10n()->t('Save Settings'),
'$reload' => DI::l10n()->t('Reload active addons'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$function' => 'addons',
'$addons' => $addons,
'$pcount' => count($addons),
if (!count($failed)) {
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/dbsync/structure_check.tpl'), [
- '$base' => DI::baseUrl()->get(true),
+ '$base' => DI::baseUrl(),
'$banner' => DI::l10n()->t('No failed updates.'),
'$check' => DI::l10n()->t('Check database structure'),
]);
} else {
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/dbsync/failed_updates.tpl'), [
- '$base' => DI::baseUrl()->get(true),
+ '$base' => DI::baseUrl(),
'$banner' => DI::l10n()->t('Failed Updates'),
'$desc' => DI::l10n()->t('This does not include updates prior to 1139, which did not return a status.'),
'$mark' => DI::l10n()->t("Mark success \x28if update was manually applied\x29"),
$tpl = Renderer::getMarkupTemplate('admin/features.tpl');
$o = Renderer::replaceMacros($tpl, [
'$form_security_token' => self::getFormSecurityToken("admin_manage_features"),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$title' => DI::l10n()->t('Manage Additional Features'),
'$features' => $features,
'$submit' => DI::l10n()->t('Save Settings'),
'$page' => DI::l10n()->t('Logs'),
'$submit' => DI::l10n()->t('Save Settings'),
'$clear' => DI::l10n()->t('Clear'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$logname' => DI::config()->get('system', 'logfile'),
// see /help/smarty3-templates#1_1 on any Friendica node
'$debugging' => ['debugging', DI::l10n()->t("Enable Debugging"), DI::config()->get('system', 'debugging'), ""],
}
}
return Renderer::replaceMacros($t, [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$title' => DI::l10n()->t('Administration'),
'$page' => DI::l10n()->t('View Logs'),
'$l10n' => [
$mail_enabled = !empty($_POST['mail_enabled']);
$ostatus_enabled = !empty($_POST['ostatus_enabled']);
$diaspora_enabled = !empty($_POST['diaspora_enabled']);
- $ssl_policy = (!empty($_POST['ssl_policy']) ? intval($_POST['ssl_policy']) : 0);
$force_ssl = !empty($_POST['force_ssl']);
$show_help = !empty($_POST['show_help']);
$dbclean = !empty($_POST['dbclean']);
Worker::add(Worker::PRIORITY_LOW, 'Directory');
}
- if (DI::baseUrl()->getUrlPath() != "") {
+ if (DI::baseUrl()->getPath() != "") {
$diaspora_enabled = false;
}
- if ($ssl_policy != intval(DI::config()->get('system', 'ssl_policy'))) {
- if ($ssl_policy == App\BaseURL::SSL_POLICY_FULL) {
- DBA::e("UPDATE `contact` SET
- `url` = REPLACE(`url` , 'http:' , 'https:'),
- `photo` = REPLACE(`photo` , 'http:' , 'https:'),
- `thumb` = REPLACE(`thumb` , 'http:' , 'https:'),
- `micro` = REPLACE(`micro` , 'http:' , 'https:'),
- `request` = REPLACE(`request`, 'http:' , 'https:'),
- `notify` = REPLACE(`notify` , 'http:' , 'https:'),
- `poll` = REPLACE(`poll` , 'http:' , 'https:'),
- `confirm` = REPLACE(`confirm`, 'http:' , 'https:'),
- `poco` = REPLACE(`poco` , 'http:' , 'https:')
- WHERE `self` = 1"
- );
- DBA::e("UPDATE `profile` SET
- `photo` = REPLACE(`photo` , 'http:' , 'https:'),
- `thumb` = REPLACE(`thumb` , 'http:' , 'https:')
- WHERE 1 "
- );
- } elseif ($ssl_policy == App\BaseURL::SSL_POLICY_SELFSIGN) {
- DBA::e("UPDATE `contact` SET
- `url` = REPLACE(`url` , 'https:' , 'http:'),
- `photo` = REPLACE(`photo` , 'https:' , 'http:'),
- `thumb` = REPLACE(`thumb` , 'https:' , 'http:'),
- `micro` = REPLACE(`micro` , 'https:' , 'http:'),
- `request` = REPLACE(`request`, 'https:' , 'http:'),
- `notify` = REPLACE(`notify` , 'https:' , 'http:'),
- `poll` = REPLACE(`poll` , 'https:' , 'http:'),
- `confirm` = REPLACE(`confirm`, 'https:' , 'http:'),
- `poco` = REPLACE(`poco` , 'https:' , 'http:')
- WHERE `self` = 1"
- );
- DBA::e("UPDATE `profile` SET
- `photo` = REPLACE(`photo` , 'https:' , 'http:'),
- `thumb` = REPLACE(`thumb` , 'https:' , 'http:')
- WHERE 1 "
- );
- }
- }
- $transactionConfig->set('system', 'ssl_policy' , $ssl_policy);
+
$transactionConfig->set('system', 'maxloadavg' , $maxloadavg);
$transactionConfig->set('system', 'min_memory' , $min_memory);
$transactionConfig->set('system', 'optimize_tables' , $optimize_tables);
Register::OPEN => DI::l10n()->t('Open')
];
- $ssl_choices = [
- App\BaseURL::SSL_POLICY_NONE => DI::l10n()->t('No SSL policy, links will track page SSL state'),
- App\BaseURL::SSL_POLICY_FULL => DI::l10n()->t('Force all links to use SSL'),
- App\BaseURL::SSL_POLICY_SELFSIGN => DI::l10n()->t('Self-signed certificate, use SSL for local links only (discouraged)')
- ];
-
$check_git_version_choices = [
'none' => DI::l10n()->t('Don\'t check'),
'stable' => DI::l10n()->t('check the stable version'),
// ContactRelation::DISCOVERY_ALL => DI::l10n()->t('All'),
];
- $diaspora_able = (DI::baseUrl()->getUrlPath() == '');
+ $diaspora_able = (DI::baseUrl()->getPath() == '');
$t = Renderer::getMarkupTemplate('admin/site.tpl');
return Renderer::replaceMacros($t, [
'$relocate' => DI::l10n()->t('Relocate Node'),
'$relocate_msg' => DI::l10n()->t('Relocating your node enables you to change the DNS domain of this node and keep all the existing users and posts. This process takes a while and can only be started from the relocate console command like this:'),
'$relocate_cmd' => DI::l10n()->t('(Friendica directory)# bin/console relocate https://newdomain.com'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
// name, label, value, help string, extra data...
'$sitename' => ['sitename', DI::l10n()->t('Site name'), DI::config()->get('config', 'sitename'), ''],
'$touch_icon' => ['touch_icon', DI::l10n()->t('Touch icon'), DI::config()->get('system', 'touch_icon'), DI::l10n()->t('Link to an icon that will be used for tablets and mobiles.')],
'$additional_info' => ['additional_info', DI::l10n()->t('Additional Info'), $additional_info, DI::l10n()->t('For public servers: you can add additional information here that will be listed at %s/servers.', Search::getGlobalDirectory())],
'$language' => ['language', DI::l10n()->t('System language'), DI::config()->get('system', 'language'), '', $lang_choices],
- '$theme' => ['theme', DI::l10n()->t('System theme'), DI::config()->get('system', 'theme'), DI::l10n()->t('Default system theme - may be over-ridden by user profiles - <a href="%s" id="cnftheme">Change default theme settings</a>', DI::baseUrl()->get(true) . '/admin/themes'), $theme_choices],
+ '$theme' => ['theme', DI::l10n()->t('System theme'), DI::config()->get('system', 'theme'), DI::l10n()->t('Default system theme - may be over-ridden by user profiles - <a href="%s" id="cnftheme">Change default theme settings</a>', DI::baseUrl() . '/admin/themes'), $theme_choices],
'$theme_mobile' => ['theme_mobile', DI::l10n()->t('Mobile system theme'), DI::config()->get('system', 'mobile-theme', '---'), DI::l10n()->t('Theme for mobile devices'), $theme_choices_mobile],
- '$ssl_policy' => ['ssl_policy', DI::l10n()->t('SSL link policy'), DI::config()->get('system', 'ssl_policy'), DI::l10n()->t('Determines whether generated links should be forced to use SSL'), $ssl_choices],
'$force_ssl' => ['force_ssl', DI::l10n()->t('Force SSL'), DI::config()->get('system', 'force_ssl'), DI::l10n()->t('Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops.')],
'$show_help' => ['show_help', DI::l10n()->t('Show help entry from navigation menu'), !DI::config()->get('system', 'hide_help'), DI::l10n()->t('Displays the menu entry for the Help pages from the navigation menu. It is always accessible by calling /help directly.')],
'$singleuser' => ['singleuser', DI::l10n()->t('Single user instance'), DI::config()->get('system', 'singleuser', '---'), DI::l10n()->t('Make this instance multi-user or single-user for the named user'), $user_names],
'$use' => DI::l10n()->t('Use storage backend'),
'$save_reload' => DI::l10n()->t('Save & Reload'),
'$noconfig' => DI::l10n()->t('This backend doesn\'t have custom settings'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$form_security_token' => self::getFormSecurityToken("admin_storage"),
'$storagebackend' => $current_storage_backend instanceof ICanWriteToStorage ? $current_storage_backend::getName() : DI::l10n()->t('Database (legacy)'),
'$availablestorageforms' => $available_storage_forms,
// Legacy config file warning
if (file_exists('.htconfig.php')) {
- $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href="%s">the Config help page</a> for help with the transition.', DI::baseUrl()->get() . '/help/Config');
+ $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href="%s">the Config help page</a> for help with the transition.', DI::baseUrl() . '/help/Config');
}
if (file_exists('config/local.ini.php')) {
- $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href="%s">the Config help page</a> for help with the transition.', DI::baseUrl()->get() . '/help/Config');
+ $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href="%s">the Config help page</a> for help with the transition.', DI::baseUrl() . '/help/Config');
}
// Check server vitality
if (!self::checkSelfHostMeta()) {
- $well_known = DI::baseUrl()->get() . Probe::HOST_META;
+ $well_known = DI::baseUrl() . Probe::HOST_META;
$warningtext[] = DI::l10n()->t('<a href="%s">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href="%s">the installation page</a> for help.',
- $well_known, $well_known, DI::baseUrl()->get() . '/help/Install');
+ $well_known, $well_known, DI::baseUrl() . '/help/Install');
}
// Check logfile permission
private static function checkSelfHostMeta()
{
// Fetch the host-meta to check if this really is a vital server
- return DI::httpClient()->get(DI::baseUrl()->get() . Probe::HOST_META, HttpClientAccept::XRD_XML)->isSuccess();
+ return DI::httpClient()->get(DI::baseUrl() . Probe::HOST_META, HttpClientAccept::XRD_XML)->isSuccess();
}
}
require_once "view/theme/$theme/config.php";
if (function_exists('theme_admin')) {
- $admin_form = '<iframe onload="resizeIframe(this);" src="' . DI::baseUrl()->get(true) . '/admin/themes/' . $theme . '/embed?mode=minimal" width="100%" height="600px" frameborder="no"></iframe>';
+ $admin_form = '<iframe onload="resizeIframe(this);" src="' . DI::baseUrl() . '/admin/themes/' . $theme . '/embed?mode=minimal" width="100%" height="600px" frameborder="no"></iframe>';
}
}
'$page' => DI::l10n()->t('Themes'),
'$toggle' => DI::l10n()->t('Toggle'),
'$settings' => DI::l10n()->t('Settings'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$addon' => $theme,
'$status' => $status,
'$action' => $action,
$t = Renderer::getMarkupTemplate('admin/addons/embed.tpl');
return Renderer::replaceMacros($t, [
- '$action' => DI::baseUrl()->get(true) . '/admin/themes/' . $theme . '/embed?mode=minimal',
+ '$action' => DI::baseUrl() . '/admin/themes/' . $theme . '/embed?mode=minimal',
'$form' => $admin_form,
'$form_security_token' => self::getFormSecurityToken("admin_theme_settings"),
]);
'$page' => DI::l10n()->t('Themes'),
'$submit' => DI::l10n()->t('Save Settings'),
'$reload' => DI::l10n()->t('Reload active themes'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$function' => 'themes',
'$addons' => $addons,
'$pcount' => count($themes),
$config = [
'site' => [
'name' => DI::config()->get('config', 'sitename'),
- 'server' => DI::baseUrl()->getHostname(),
+ 'server' => DI::baseUrl()->getHost(),
'theme' => DI::config()->get('system', 'theme'),
- 'path' => DI::baseUrl()->getUrlPath(),
+ 'path' => DI::baseUrl()->getPath(),
'logo' => DI::baseUrl() . '/images/friendica-64.png',
'fancy' => true,
'language' => DI::config()->get('system', 'language'),
'private' => (bool)DI::config()->get('system', 'block_public'),
'textlimit' => (string) DI::config()->get('config', 'api_import_size', DI::config()->get('config', 'max_import_size')),
'sslserver' => null,
- 'ssl' => DI::config()->get('system', 'ssl_policy') == App\BaseURL::SSL_POLICY_FULL ? 'always' : '0',
+ 'ssl' => DI::baseUrl()->getScheme() === 'https' ? 'always' : '0',
'friendica' => [
'FRIENDICA_PLATFORM' => App::PLATFORM,
'FRIENDICA_VERSION' => App::VERSION,
if (!$screen_name) {
$contact = Contact::getById($contact_id, ['nick', 'url']);
// We don't have the followers of remote accounts so we check for locality
- if (empty($contact) || !Strings::startsWith($contact['url'], DI::baseUrl()->get())) {
+ if (empty($contact) || !Strings::startsWith($contact['url'], DI::baseUrl())) {
throw new HTTPException\NotFoundException(DI::l10n()->t('Contact not found'));
}
header('Content-Type: text/csv');
header('Content-Transfer-Encoding: Binary');
- header('Content-disposition: attachment; filename="' . $this->baseUrl->getHostname() . '_domain_blocklist_' . substr($hash, 0, 6) . '.csv"');
+ header('Content-disposition: attachment; filename="' . $this->baseUrl->getHost() . '_domain_blocklist_' . substr($hash, 0, 6) . '.csv"');
header("Etag: $etag");
$this->blocklist->exportToFile('php://output');
}
$referer = Strings::normaliseLink($_SERVER['HTTP_REFERER'] ?? '');
- $page = Strings::normaliseLink(DI::baseUrl()->get() . "/bookmarklet");
+ $page = Strings::normaliseLink(DI::baseUrl() . "/bookmarklet");
if (!strstr($referer, $page)) {
if (empty($_REQUEST["url"])) {
$tpl = Renderer::getMarkupTemplate('contacts-head.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
]);
$o = '';
$_SESSION['return_path'] = $this->args->getQueryString();
$this->page['htmlhead'] .= Renderer::replaceMacros(Renderer::getMarkupTemplate('contact_head.tpl'), [
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
]);
switch ($localRelationship->rel) {
}
if ($this->session->getRemoteUserId()) {
- $host = substr($this->baseUrl->getUrlPath() . ($this->baseUrl->getUrlPath() ? '/' . $this->baseUrl->getUrlPath() : ''), strpos($this->baseUrl->getUrlPath(), '://') + 3);
+ $host = substr($this->baseUrl->getPath() . ($this->baseUrl->getPath() ? '/' . $this->baseUrl->getPath() : ''), strpos($this->baseUrl->getPath(), '://') + 3);
$remotehost = substr($contact['addr'], strpos($contact['addr'], '@') + 1);
// On a local instance we have to check if the local user has already authenticated
$output .= '<p>' . DI::l10n()->t('Converted localtime: %s', self::$mod_localtime) . '</p>';
}
- $output .= '<form action ="' . DI::baseUrl()->get() . '/localtime?time=' . $time . '" method="post" >';
+ $output .= '<form action ="' . DI::baseUrl() . '/localtime?time=' . $time . '" method="post" >';
$output .= '<p>' . DI::l10n()->t('Please select your timezone:') . '</p>';
$output .= Temporal::getTimezoneSelect(($_REQUEST['timezone'] ?? '') ?: Installer::DEFAULT_TZ);
$output .= '<input type="submit" name="submit" value="' . DI::l10n()->t('Submit') . '" /></form>';
}
$host = $parts["scheme"] . "://" . $parts["host"];
- if (Strings::normaliseLink($host) != Strings::normaliseLink(DI::baseUrl()->get())) {
+ if (Strings::normaliseLink($host) != Strings::normaliseLink(DI::baseUrl())) {
$location = $host . "/fetch/" . DI::args()->getArgv()[1] . "/" . urlencode($guid);
System::externalRedirect($location, 301);
}
}
$tos = ($config->get('system', 'tosdisplay')) ?
- DI::l10n()->t('Read about the <a href="%1$s/tos">Terms of Service</a> of this node.', DI::baseUrl()->get()) :
+ DI::l10n()->t('Read about the <a href="%1$s/tos">Terms of Service</a> of this node.', DI::baseUrl()) :
'';
$blockList = $config->get('system', 'blocklist');
return Renderer::replaceMacros($tpl, [
'about' => DI::l10n()->t('This is Friendica, version %s that is running at the web location %s. The database version is %s, the post update version is %s.',
'<strong>' . App::VERSION . '</strong>',
- DI::baseUrl()->get(),
+ DI::baseUrl(),
'<strong>' . $config->get('system', 'build') . '/' . DB_UPDATE_VERSION . '</strong>',
'<strong>' . $keyValue->get('post_update_version') . '/' . PostUpdate::VERSION . '</strong>'),
'friendica' => DI::l10n()->t('Please visit <a href="https://friendi.ca">Friendi.ca</a> to learn more about the Friendica project.'),
if (!empty($administrator)) {
$admin = [
'name' => $administrator['username'],
- 'profile' => DI::baseUrl()->get() . '/profile/' . $administrator['nickname'],
+ 'profile' => DI::baseUrl() . '/profile/' . $administrator['nickname'],
];
}
$data = [
'version' => App::VERSION,
- 'url' => DI::baseUrl()->get(),
+ 'url' => DI::baseUrl(),
'addons' => $visible_addons,
'locked_features' => $locked_features,
'explicit_content' => intval($config->get('system', 'explicit_content', 0)),
'site_name' => $config->get('config', 'sitename'),
'platform' => strtolower(App::PLATFORM),
'info' => $config->get('config', 'info'),
- 'no_scrape_url' => DI::baseUrl()->get() . '/noscrape',
+ 'no_scrape_url' => DI::baseUrl() . '/noscrape',
];
System::jsonExit($data);
$baseUrl = DI::baseUrl();
- $uri = urlencode('acct:' . $profile['nickname'] . '@' . $baseUrl->getHostname() . ($baseUrl->getUrlPath() ? '/' . $baseUrl->getUrlPath() : ''));
+ $uri = urlencode('acct:' . $profile['nickname'] . '@' . $baseUrl->getHost() . ($baseUrl->getPath() ? '/' . $baseUrl->getPath() : ''));
$page['htmlhead'] .= '<meta name="dfrn-global-visibility" content="' . ($profile['net-publish'] ? 'true' : 'false') . '" />' . "\r\n";
- $page['htmlhead'] .= '<link rel="alternate" type="application/atom+xml" href="' . $baseUrl->get() . '/dfrn_poll/' . $nickname . '" />' . "\r\n";
- $page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . $baseUrl->get() . '/xrd/?uri=' . $uri . '" />' . "\r\n";
- header('Link: <' . $baseUrl->get() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
+ $page['htmlhead'] .= '<link rel="alternate" type="application/atom+xml" href="' . $baseUrl . '/dfrn_poll/' . $nickname . '" />' . "\r\n";
+ $page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . $baseUrl . '/xrd/?uri=' . $uri . '" />' . "\r\n";
+ header('Link: <' . $baseUrl . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
foreach (['request', 'confirm', 'notify', 'poll'] as $dfrn) {
- $page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"" . $baseUrl->get() . "/dfrn_{$dfrn}/{$nickname}\" />\r\n";
+ $page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"" . $baseUrl . "/dfrn_{$dfrn}/{$nickname}\" />\r\n";
}
$block = (DI::config()->get('system', 'block_public') && !DI::userSession()->isAuthenticated());
$idNum[$level] ++;
- $href = DI::baseUrl()->get() . "/help/{$filename}#{$anchor}";
+ $href = DI::baseUrl() . "/help/{$filename}#{$anchor}";
$toc .= "<li><a href=\"{$href}\">" . strip_tags($line) . "</a></li>";
$id = implode("_", array_slice($idNum, 1, $level));
$line = "<a name=\"{$id}\"></a>" . $line;
$customHome = $homeFilePath;
if (file_exists($cssFilePath)) {
- DI::page()['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . DI::baseUrl()->get() . '/home.css' . '" media="all" />';
+ DI::page()['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . DI::baseUrl() . '/home.css' . '" media="all" />';
}
}
if ($config->get('config', 'register_policy') === Register::CLOSED) {
$linkTxt = DI::l10n()->t('Visit %s for a list of public sites that you can join. Friendica members on other sites can all connect with each other, as well as with members of many other social networks.', $dirLocation . '/servers');
} else {
- $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s or any other public Friendica website.', DI::baseUrl()->get())
+ $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s or any other public Friendica website.', DI::baseUrl())
. "\r\n" . "\r\n" . DI::l10n()->t('Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks. See %s for a list of alternate Friendica sites you can join.', $dirLocation . '/servers');
}
} else { // there is no global directory URL defined
if ($config->get('config', 'register_policy') === Register::CLOSED) {
return DI::l10n()->t('Our apologies. This system is not currently configured to connect with other public sites or invite members.');
} else {
- $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s.', DI::baseUrl()->get()
+ $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s.', DI::baseUrl()
. "\r\n" . "\r\n" . DI::l10n()->t('Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks.'));
}
}
DI::l10n()->t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
. $linkTxt
. "\r\n" . "\r\n" . (($inviteOnly) ? DI::l10n()->t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') . DI::l10n()->t('Once you have registered, please connect with me via my profile page at:')
- . "\r\n" . "\r\n" . DI::baseUrl()->get() . '/profile/' . $app->getLoggedInUserNickname()
+ . "\r\n" . "\r\n" . DI::baseUrl() . '/profile/' . $app->getLoggedInUserNickname()
. "\r\n" . "\r\n" . DI::l10n()->t('For more information about the Friendica project and why we feel it is important, please visit http://friendi.ca') . "\r\n" . "\r\n",
],
'$submit' => DI::l10n()->t('Submit')
$contact = $this->dba->selectFirst('contact', ['id', 'nurl', 'url'], ['id' => $cid]);
// Redirect if the contact is already authenticated on this site.
- if ($this->app->getContactId() && strpos($contact['nurl'], Strings::normaliseLink($this->baseUrl->get())) !== false) {
+ if ($this->app->getContactId() && strpos($contact['nurl'], Strings::normaliseLink($this->baseUrl)) !== false) {
$this->logger->info('Contact is already authenticated');
System::externalRedirect($dest);
}
$header = HTTPSignature::createSig(
$header,
$user['prvkey'],
- 'acct:' . $user['nickname'] . '@' . $this->baseUrl->getHostname() . ($this->baseUrl->getUrlPath() ? '/' . $this->baseUrl->getUrlPath() : '')
+ 'acct:' . $user['nickname'] . '@' . $this->baseUrl->getHost() . ($this->baseUrl->getPath() ? '/' . $this->baseUrl->getPath() : '')
);
// Try to get an authentication token from the other instance.
$manifest = [
'name' => $config->get('config', 'sitename', 'Friendica'),
- 'start_url' => DI::baseUrl()->get(),
+ 'start_url' => DI::baseUrl(),
'display' => 'standalone',
'description' => $config->get('config', 'info', DI::l10n()->t('A Decentralized Social Network')),
'short_name' => 'Friendica',
if($touch_icon){
$manifest['icons'] = [
[
- 'src' => DI::baseUrl()->get() . '/' . $touch_icon,
+ 'src' => DI::baseUrl() . '/' . $touch_icon,
'sizes' => '192x192',
'type' => 'image/png',
],
[
- 'src' => DI::baseUrl()->get() . '/' . $touch_icon,
+ 'src' => DI::baseUrl() . '/' . $touch_icon,
'sizes' => '512x512',
'type' => 'image/png',
],
} else {
$manifest['icons'] = [
[
- 'src' => DI::baseUrl()->get() . '/images/friendica.svg',
+ 'src' => DI::baseUrl() . '/images/friendica.svg',
'sizes' => 'any',
'type' => 'image/svg+xml',
'purpose' => 'any',
],
[
- 'src' => DI::baseUrl()->get() . '/images/friendica-192.png',
+ 'src' => DI::baseUrl() . '/images/friendica-192.png',
'sizes' => '192x192',
'type' => 'image/png',
'purpose' => 'any',
],
[
- 'src' => DI::baseUrl()->get() . '/images/friendica-512.png',
+ 'src' => DI::baseUrl() . '/images/friendica-512.png',
'sizes' => '512x512',
'type' => 'image/png',
'purpose' => 'any',
],
[
- 'src' => DI::baseUrl()->get() . '/images/friendica-maskable.svg',
+ 'src' => DI::baseUrl() . '/images/friendica-maskable.svg',
'sizes' => 'any',
'type' => 'image/svg+xml',
'purpose' => 'maskable',
],
[
- 'src' => DI::baseUrl()->get() . '/images/friendica-maskable-192.png',
+ 'src' => DI::baseUrl() . '/images/friendica-maskable-192.png',
'sizes' => '192x192',
'type' => 'image/png',
'purpose' => 'maskable',
],
[
- 'src' => DI::baseUrl()->get() . '/images/friendica-maskable-512.png',
+ 'src' => DI::baseUrl() . '/images/friendica-maskable-512.png',
'sizes' => '512x512',
'type' => 'image/png',
'purpose' => 'maskable',
'$form_security_token' => self::getFormSecurityToken('moderation_contactblock'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$contacts' => $contacts,
'$total_contacts' => $this->tt('%s total blocked contact', '%s total blocked contacts', $total),
'$newreason' => ['reason', $this->t('Block reason'), $request['reason'] ?? '', $this->t('The reason why you blocked this server domain pattern. This reason will be shown publicly in the server information page.'), $this->t('Required'), '', ''],
'$pattern' => $pattern,
'$gservers' => $gservers,
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$form_security_token' => self::getFormSecurityToken('moderation_blocklist_add')
]);
}
'$mode_append' => ['mode', $this->t('Append'), 'append', $this->t('Imports patterns from the file that weren\'t already existing in the current blocklist.'), 'checked="checked"'],
'$mode_replace' => ['mode', $this->t('Replace'), 'replace', $this->t('Replaces the current blocklist by the imported patterns.')],
'$blocklist' => $this->blocklist,
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$form_security_token' => self::getFormSecurityToken('moderation_blocklist_import')
]);
}
'$listfile' => ['listfile', $this->t('Server domain pattern blocklist CSV file'), '', '', $this->t('Required'), '', 'file'],
'$newdomain' => ['pattern', $this->t('Server Domain Pattern'), '', $this->t('The domain pattern of the new server to add to the blocklist. Do not include the protocol.'), $this->t('Required'), '', ''],
'$entries' => $blocklistform,
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$form_security_token' => self::getFormSecurityToken('moderation_blocklist'),
'$form_security_token_import' => self::getFormSecurityToken('moderation_blocklist_import'),
{
$this->checkModerationAccess();
- self::checkFormSecurityTokenRedirectOnError($this->baseUrl->get(true), 'moderation_users_active');
+ self::checkFormSecurityTokenRedirectOnError($this->baseUrl, 'moderation_users_active');
$users = $request['user'] ?? [];
'$form_security_token' => self::getFormSecurityToken('moderation_users_active'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$users' => $users,
'$form_security_token' => self::getFormSecurityToken('moderation_users_blocked'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$users' => $users,
'$form_security_token' => self::getFormSecurityToken('admin_users_create'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$newusername' => ['new_user_name', $this->t('Name'), '', $this->t('Name of the new user.')],
'$form_security_token' => self::getFormSecurityToken('moderation_users_deleted'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$users' => $users,
switch ($action) {
case 'delete':
if ($this->session->getLocalUserId() != $uid) {
- self::checkFormSecurityTokenRedirectOnError($this->baseUrl->get(true), 'moderation_users', 't');
+ self::checkFormSecurityTokenRedirectOnError($this->baseUrl, 'moderation_users', 't');
// delete user
User::remove($uid);
'$form_security_token' => self::getFormSecurityToken('moderation_users'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$users' => $users,
'$form_security_token' => self::getFormSecurityToken('admin_users_pending'),
// values //
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$query_string' => $this->args->getQueryString(),
'$pending' => $pending,
$nodeinfo = [
'version' => '1.0',
'server' => [
- 'baseUrl' => $this->baseUrl->get(),
+ 'baseUrl' => $this->baseUrl,
'name' => $this->config->get('config', 'sitename'),
'software' => 'friendica',
'version' => App::VERSION . '-' . DB_UPDATE_VERSION,
$registration['url'],
$this->l10n->t('{0} requested registration'),
new \DateTime($registration['created'], new \DateTimeZone('UTC')),
- new Uri($this->baseUrl->get(true) . '/moderation/users/pending')
+ new Uri($this->baseUrl . '/moderation/users/pending')
);
}
} else {
$registrations[0]['url'],
$this->l10n->t('{0} and %d others requested registration', count($registrations) - 1),
new \DateTime($registrations[0]['created'], new \DateTimeZone('UTC')),
- new Uri($this->baseUrl->get(true) . '/moderation/users/pending')
+ new Uri($this->baseUrl . '/moderation/users/pending')
);
}
*/
protected function rawContent(array $request = [])
{
- $hostname = DI::baseUrl()->getHostname();
- $baseUrl = DI::baseUrl()->get();
+ $hostname = DI::baseUrl()->getHost();
+ $baseUrl = DI::baseUrl();
/** @var DOMDocument $xml */
XML::fromArray([
$htmlhead .= '<link rel="alternate" type="application/atom+xml" href="' . $this->baseUrl . '/feed/' . $nickname . '/" title="' . $this->t('%s\'s posts', $profile['name']) . '"/>' . "\n";
$htmlhead .= '<link rel="alternate" type="application/atom+xml" href="' . $this->baseUrl . '/feed/' . $nickname . '/comments" title="' . $this->t('%s\'s comments', $profile['name']) . '"/>' . "\n";
$htmlhead .= '<link rel="alternate" type="application/atom+xml" href="' . $this->baseUrl . '/feed/' . $nickname . '/activity" title="' . $this->t('%s\'s timeline', $profile['name']) . '"/>' . "\n";
- $uri = urlencode('acct:' . $profile['nickname'] . '@' . $this->baseUrl->getHostname() . ($this->baseUrl->getUrlPath() ? '/' . $this->baseUrl->getUrlPath() : ''));
+ $uri = urlencode('acct:' . $profile['nickname'] . '@' . $this->baseUrl->getHost() . ($this->baseUrl->getPath() ? '/' . $this->baseUrl->getPath() : ''));
$htmlhead .= '<link rel="lrdd" type="application/xrd+xml" href="' . $this->baseUrl . '/xrd/?uri=' . $uri . '" />' . "\n";
header('Link: <' . $this->baseUrl . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
$tpl = Renderer::getMarkupTemplate('profile/schedule.tpl');
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("profile_schedule"),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$title' => DI::l10n()->t('Scheduled Posts'),
'$nickname' => $this->parameters['nickname'] ?? '',
'$scheduled_at' => DI::l10n()->t('Scheduled'),
$tpl = Renderer::getMarkupTemplate('profile/unkmail-header.tpl');
$this->page['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$nickname' => $user['nickname'],
'$linkurl' => $this->l10n->t('Please enter a link URL:')
]);
'@attributes' => [
'name' => 'Twitter',
'preferred' => 'true',
- 'apiLink' => DI::baseUrl()->get(),
+ 'apiLink' => DI::baseUrl(),
'blogID' => '',
],
'settings' => [
'$ask_password' => $ask_password,
'$password1' => ['password1', DI::l10n()->t('New Password:'), '', DI::l10n()->t('Leave empty for an auto generated password.')],
'$password2' => ['confirm', DI::l10n()->t('Confirm:'), '', ''],
- '$nickdesc' => DI::l10n()->t('Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be "<strong>nickname@%s</strong>".', DI::baseUrl()->getHostname()),
+ '$nickdesc' => DI::l10n()->t('Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be "<strong>nickname@%s</strong>".', DI::baseUrl()->getHost()),
'$nicklabel' => DI::l10n()->t('Choose a nickname: '),
'$photo' => $photo,
'$publish' => $profile_publish,
'$username' => $username,
'$email' => $email,
'$nickname' => $nickname,
- '$sitename' => DI::baseUrl()->getHostname(),
+ '$sitename' => DI::baseUrl()->getHost(),
'$importh' => DI::l10n()->t('Import'),
'$importt' => DI::l10n()->t('Import your profile to this friendica instance'),
'$showtoslink' => DI::config()->get('system', 'tosdisplay'),
$user = $result['user'];
- $base_url = DI::baseUrl()->get();
+ $base_url = DI::baseUrl();
if ($netpublish && intval(DI::config()->get('config', 'register_policy')) !== self::APPROVE) {
$url = $base_url . '/profile/' . $user['nickname'];
'type' => Model\Notification\Type::SYSTEM,
'event' => $event,
'uid' => $admin['uid'],
- 'link' => DI::baseUrl()->get(true) . '/moderation/users/',
+ 'link' => DI::baseUrl() . '/moderation/users/',
'source_name' => $user['username'],
'source_mail' => $user['email'],
'source_nick' => $user['nickname'],
- 'source_link' => DI::baseUrl()->get(true) . '/moderation/users/',
+ 'source_link' => DI::baseUrl() . '/moderation/users/',
'source_photo' => User::getAvatarUrl($user, Proxy::SIZE_THUMB),
'show_in_notification_page' => false
]);
DI::page()['htmlhead'] .= Renderer::replaceMacros(
Renderer::getMarkupTemplate('login_head.tpl'),
[
- '$baseurl' => DI::baseUrl()->get(true)
+ '$baseurl' => DI::baseUrl()
]
);
$o = Renderer::replaceMacros(
$tpl,
[
- '$dest_url' => DI::baseUrl()->get(true) . '/login',
+ '$dest_url' => DI::baseUrl() . '/login',
'$logout' => DI::l10n()->t('Logout'),
'$login' => DI::l10n()->t('Login'),
if (!empty($_GET['openid_mode']) && !empty($session->get('openid'))) {
- $openid = new LightOpenID(DI::baseUrl()->getHostname());
+ $openid = new LightOpenID(DI::baseUrl()->getHost());
$l10n = DI::l10n();
$session->set('openid_identity', $authId);
// Detect the server URL
- $open_id_obj = new LightOpenID(DI::baseUrl()->getHostname());
+ $open_id_obj = new LightOpenID(DI::baseUrl()->getHost());
$open_id_obj->identity = $authId;
$session->set('openid_server', $open_id_obj->discover($open_id_obj->identity));
'submit' => $this->l10n->t('Update Password'),
],
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$form_security_token' => self::getFormSecurityToken('security/password_too_long'),
'$return_url' => $request['return_url'] ?? '',
$tpl = Renderer::getMarkupTemplate('settings/account.tpl');
$o = Renderer::replaceMacros($tpl, [
'$ptitle' => DI::l10n()->t('Account Settings'),
- '$desc' => DI::l10n()->t("Your Identity Address is <strong>'%s'</strong> or '%s'.", $nickname . '@' . DI::baseUrl()->getHostname() . DI::baseUrl()->getUrlPath(), DI::baseUrl() . '/profile/' . $nickname),
+ '$desc' => DI::l10n()->t("Your Identity Address is <strong>'%s'</strong> or '%s'.", $nickname . '@' . DI::baseUrl()->getHost() . DI::baseUrl()->getPath(), DI::baseUrl() . '/profile/' . $nickname),
'$submit' => DI::l10n()->t('Save Settings'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$uid' => DI::userSession()->getLocalUserId(),
'$form_security_token' => self::getFormSecurityToken('settings'),
'$open' => $this->parameters['open'] ?? 'password',
'$calendar_title' => $this->t('Calendar'),
'$form_security_token' => self::getFormSecurityToken('settings_display'),
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$uid' => $uid,
'$theme' => ['theme', $this->t('Display Theme:'), $theme_selected, '', $themes, true],
$tpl = Renderer::getMarkupTemplate('settings/oauth.tpl');
return Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseSettings::getFormSecurityToken('settings_oauth'),
- '$baseurl' => $this->baseUrl->get(true),
+ '$baseurl' => $this->baseUrl,
'$title' => $this->t('Connected Apps'),
'$name' => $this->t('Name'),
'$website' => $this->t('Home Page'),
];
DI::page()['htmlhead'] .= Renderer::replaceMacros(Renderer::getMarkupTemplate('settings/profile/index_head.tpl'), [
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
]);
$personal_account = ($profile['account-type'] != User::ACCOUNT_TYPE_COMMUNITY);
'$lbl_profile_photo' => DI::l10n()->t('Upload Profile Photo'),
- '$baseurl' => DI::baseUrl()->get(true),
+ '$baseurl' => DI::baseUrl(),
'$nickname' => $profile['nickname'],
'$name' => ['name', DI::l10n()->t('Display name:'), $profile['name']],
'$about' => ['about', DI::l10n()->t('Description:'), $profile['about']],
$config->set('system', 'site_pubkey', $res['pubkey']);
}
- $domain = DI::baseUrl()->get();
+ $domain = DI::baseUrl();
XML::fromArray([
'XRD' => [
'@attributes' => [
'xmlns' => 'http://docs.oasis-open.org/ns/xri/xrd-1.0',
],
- 'hm:Host' => DI::baseUrl()->getHostname(),
+ 'hm:Host' => DI::baseUrl()->getHost(),
'1:link' => [
'@attributes' => [
'rel' => 'lrdd',
$nodeinfo = [
'links' => [
['rel' => 'http://nodeinfo.diaspora.software/ns/schema/1.0',
- 'href' => DI::baseUrl()->get() . '/nodeinfo/1.0'],
+ 'href' => DI::baseUrl() . '/nodeinfo/1.0'],
['rel' => 'http://nodeinfo.diaspora.software/ns/schema/2.0',
- 'href' => DI::baseUrl()->get() . '/nodeinfo/2.0'],
+ 'href' => DI::baseUrl() . '/nodeinfo/2.0'],
]
];
'tags' => $tagList,
'protocols' => [
'activitypub' => [
- 'actor' => DI::baseUrl()->get() . '/friendica',
- 'receive' => DI::baseUrl()->get() . '/inbox'
+ 'actor' => DI::baseUrl() . '/friendica',
+ 'receive' => DI::baseUrl() . '/inbox'
],
'dfrn' => [
- 'receive' => DI::baseUrl()->get() . '/dfrn_notify'
+ 'receive' => DI::baseUrl() . '/dfrn_notify'
]
]
];
if (DI::config()->get("system", "diaspora_enabled")) {
- $relay['protocols']['diaspora'] = ['receive' => DI::baseUrl()->get() . '/receive/public'];
+ $relay['protocols']['diaspora'] = ['receive' => DI::baseUrl() . '/receive/public'];
}
System::jsonExit($relay);
private function printSystemJSON(array $owner)
{
- $baseURL = $this->baseUrl->get();
+ $baseURL = $this->baseUrl;
$json = [
'subject' => 'acct:' . $owner['addr'],
'aliases' => [$owner['url']],
private function printJSON(string $alias, array $owner, array $avatar)
{
- $baseURL = $this->baseUrl->get();
+ $baseURL = $this->baseUrl;
$json = [
'subject' => 'acct:' . $owner['addr'],
private function printXML(string $alias, array $owner, array $avatar)
{
- $baseURL = $this->baseUrl->get();
+ $baseURL = $this->baseUrl;
$xmlString = XML::fromArray([
'XRD' => [
self::$contacts[$notification->actorId]['url'],
$message['notification'],
$notification->created,
- new Uri($this->baseUrl->get() . '/notification/' . $notification->id),
+ new Uri($this->baseUrl . '/notification/' . $notification->id),
$notification->seen,
);
}
self::$contacts[$intro->cid]['url'],
$msg,
$intro->datetime,
- new Uri($this->baseUrl->get() . '/notifications/intros/' . $intro->id)
+ new Uri($this->baseUrl . '/notifications/intros/' . $intro->id)
);
}
}
case Activity::LIKE:
return new ValueObject\FormattedNotify(
'like',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s liked %s's post", $formattedItem['author-name'], $formattedItem['parent-author-name']),
case Activity::DISLIKE:
return new ValueObject\FormattedNotify(
'dislike',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s disliked %s's post", $formattedItem['author-name'], $formattedItem['parent-author-name']),
case Activity::ATTEND:
return new ValueObject\FormattedNotify(
'attend',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s is attending %s's event", $formattedItem['author-name'], $formattedItem['parent-author-name']),
case Activity::ATTENDNO:
return new ValueObject\FormattedNotify(
'attendno',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s is not attending %s's event", $formattedItem['author-name'], $formattedItem['parent-author-name']),
case Activity::ATTENDMAYBE:
return new ValueObject\FormattedNotify(
'attendmaybe',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s may attending %s's event", $formattedItem['author-name'], $formattedItem['parent-author-name']),
return new ValueObject\FormattedNotify(
'friend',
- $this->baseUrl->get(true) . '/display/' . $formattedItem['parent-guid'],
+ $this->baseUrl . '/display/' . $formattedItem['parent-guid'],
$formattedItem['author-avatar'],
$formattedItem['author-link'],
$this->l10n->t("%s is now friends with %s", $formattedItem['author-name'], $formattedItem['fname']),
foreach ($Notifies as $Notify) {
$formattedNotifications[] = new ValueObject\FormattedNotify(
'notification',
- $this->baseUrl->get(true) . '/notify/' . $Notify->id,
+ $this->baseUrl . '/notify/' . $Notify->id,
Contact::getAvatarUrlForUrl($Notify->url, $Notify->uid, Proxy::SIZE_MICRO),
$Notify->url,
strip_tags(BBCode::toPlaintext($Notify->msg)),
}
$item['label'] = (($item['gravity'] == Item::GRAVITY_PARENT) ? 'post' : 'comment');
- $item['link'] = $this->baseUrl->get(true) . '/display/' . $item['parent-guid'];
+ $item['link'] = $this->baseUrl . '/display/' . $item['parent-guid'];
$item['image'] = $item['author-avatar'];
$item['url'] = $item['author-link'];
$item['when'] = DateTimeFormat::local($item['created'], 'r');
continue;
}
$return_addr = bin2hex($this->nick . '@' .
- $this->baseUrl->getHostname() .
- (($this->baseUrl->getUrlPath()) ? '/' . $this->baseUrl->getUrlPath() : ''));
+ $this->baseUrl->getHost() .
+ (($this->baseUrl->getPath()) ? '/' . $this->baseUrl->getPath() : ''));
$formattedIntroductions[] = new ValueObject\Introduction([
'label' => 'friend_suggestion',
}
}
- $siteurl = $this->baseUrl->get(true);
+ $siteurl = $this->baseUrl;
$sitename = $this->config->get('config', 'sitename');
// with $params['show_in_notification_page'] == false, the notification isn't inserted into
$nickname = $user['nickname'];
- $hostname = $this->baseUrl->getHostname();
+ $hostname = $this->baseUrl->getHost();
if (strpos($hostname, ':')) {
$hostname = substr($hostname, 0, strpos($hostname, ':'));
}
$Notify->updateMsgFromPreamble($epreamble);
$Notify = $this->save($Notify);
- $itemlink = $this->baseUrl->get() . '/notify/' . $Notify->id;
+ $itemlink = $this->baseUrl . '/notify/' . $Notify->id;
$notify_id = $Notify->id;
}
$params['item'] = $item;
$params['parent'] = $item['parent'];
- $params['link'] = $this->baseUrl->get() . '/display/' . urlencode($item['guid']);
+ $params['link'] = $this->baseUrl . '/display/' . urlencode($item['guid']);
$subjectPrefix = $l10n->t('[Friendica:Notify]');
$epreamble = $msg['rich'];
$sitename = $this->config->get('config', 'sitename');
- $siteurl = $this->baseUrl->get(true);
+ $siteurl = $this->baseUrl;
$sitelink = $l10n->t('Please visit %s to view and/or reply to the conversation.');
$tsitelink = sprintf($sitelink, $siteurl);
App::CODENAME . "' " .
App::VERSION . '-' .
DB_UPDATE_VERSION . '; ' .
- $this->baseUrl->get();
+ $this->baseUrl;
$guzzle = new GuzzleHttp\Client([
RequestOptions::ALLOW_REDIRECTS => [
*/
private static function ownHost(string $host): bool
{
- $own_host = DI::baseUrl()->getHostname();
+ $own_host = DI::baseUrl()->getHost();
$parts = parse_url($host);
$this->id = (string)$account['pid'];
$this->username = $account['nick'];
$this->acct =
- strpos($account['url'], $baseUrl->get() . '/') === 0 ?
+ strpos($account['url'], $baseUrl . '/') === 0 ?
$account['nick'] :
$account['addr'];
$this->display_name = $account['name'];
{
$register_policy = intval($config->get('config', 'register_policy'));
- $this->uri = $baseUrl->get();
+ $this->uri = $baseUrl;
$this->title = $config->get('config', 'sitename');
$this->short_description = $this->description = $config->get('config', 'info');
$this->email = implode(',', User::getAdminEmailList());
$this->version = '2.8.0 (compatible; Friendica ' . App::VERSION . ')';
$this->urls = null; // Not supported
$this->stats = new Stats($config, $database);
- $this->thumbnail = $baseUrl->get() . 'images/friendica-banner.jpg';
+ $this->thumbnail = $baseUrl . 'images/friendica-banner.jpg';
$this->languages = [$config->get('system', 'language')];
$this->max_toot_chars = (int)$config->get('config', 'api_import_size', $config->get('config', 'max_import_size'));
$this->registrations = ($register_policy != Register::CLOSED);
if (!empty($contact)) {
$this->acct =
- strpos($contact['url'], $baseUrl->get() . '/') === 0 ?
+ strpos($contact['url'], $baseUrl . '/') === 0 ?
$contact['nick'] :
$contact['addr'];
return [
'type' => 'Service',
'name' => App::PLATFORM . " '" . App::CODENAME . "' " . App::VERSION . '-' . DB_UPDATE_VERSION,
- 'url' => DI::baseUrl()->get()
+ 'url' => DI::baseUrl()
];
}
// if $parent['wall'] == 1 we will already have the parent message in our array
// and we will relay the whole lot.
- $localhost = DI::baseUrl()->getHostname();
+ $localhost = DI::baseUrl()->getHost();
if (strpos($localhost, ':')) {
$localhost = substr($localhost, 0, strpos($localhost, ':'));
}
$headers = 'From: ' . Email::encodeHeader($local_user['username'],'UTF-8') . ' <' . $local_user['email'] . '>' . "\n";
}
} else {
- $sender = DI::config()->get('config', 'sender_email', 'noreply@' . DI::baseUrl()->getHostname());
+ $sender = DI::config()->get('config', 'sender_email', 'noreply@' . DI::baseUrl()->getHost());
$headers = 'From: '. Email::encodeHeader($local_user['username'], 'UTF-8') . ' <' . $sender . '>' . "\n";
}
// Distributed items should have a well-formatted URI.
// Additionally, we have to avoid conflicts with identical URI between imported feeds and these items.
if ($notify) {
- $item['guid'] = Item::guidFromUri($orig_plink, DI::baseUrl()->getHostname());
+ $item['guid'] = Item::guidFromUri($orig_plink, DI::baseUrl()->getHost());
$item['uri'] = Item::newURI($item['guid']);
unset($item['plink']);
unset($item['thr-parent']);
}
$item['uri'] = $item['parent-uri'] = $item['thr-parent']
- = 'tag:' . DI::baseUrl()->getHostname().
- ','.date('Y-m-d').':'.$action.':'.$owner['uid'].
+ = 'tag:' . DI::baseUrl()->getHost() .
+ ','.date('Y-m-d').':'.$action.':'.$owner['uid'].
':person:'.$connect_id.':'.$item['created'];
$item['body'] = sprintf($message, $owner['nick'], $contact['nick']);
// Otherwise it's probably an openid.
try {
- $openid = new LightOpenID($this->baseUrl->getHostname());
+ $openid = new LightOpenID($this->baseUrl->getHost());
$openid->identity = $openid_url;
$this->session->set('openid', $openid_url);
$this->session->set('remember', $remember);
- $openid->returnUrl = $this->baseUrl->get(true) . '/openid';
+ $openid->returnUrl = $this->baseUrl . '/openid';
$openid->optional = ['namePerson/friendly', 'contact/email', 'namePerson', 'namePerson/first', 'media/image/aspect11', 'media/image/default'];
System::externalRedirect($openid->authUrl());
} catch (Exception $e) {
'mobile-theme' => $this->pConfig->get($user_record['uid'], 'system', 'mobile_theme'),
'authenticated' => 1,
'page_flags' => $user_record['page-flags'],
- 'my_url' => $this->baseUrl->get() . '/profile/' . $user_record['nickname'],
- 'my_address' => $user_record['nickname'] . '@' . substr($this->baseUrl->get(), strpos($this->baseUrl->get(), '://') + 3),
+ 'my_url' => $this->baseUrl . '/profile/' . $user_record['nickname'],
+ 'my_address' => $user_record['nickname'] . '@' . substr($this->baseUrl, strpos($this->baseUrl, '://') + 3),
'addr' => $this->remoteAddress,
'nickname' => $user_record['nickname'],
]);
$sUser = str_replace(['%20', '(a)'], [' ', '@'], $aCommand[1]);
// Does the hostname match? So we try directly
- if ($this->baseURL->getHostname() == $aCommand[2]) {
+ if ($this->baseURL->getHost() == $aCommand[2]) {
$this->writeLog(LOG_INFO, 'internal user check for ' . $sUser . '@' . $aCommand[2]);
$found = $this->dba->exists('user', ['nickname' => $sUser]);
} else {
$Error = false;
// Does the hostname match? So we try directly
- if ($this->baseURL->getHostname() == $aCommand[2]) {
+ if ($this->baseURL->getHost() == $aCommand[2]) {
try {
$this->writeLog(LOG_INFO, 'internal auth for ' . $sUser . '@' . $aCommand[2]);
User::getIdFromPasswordAuthentication($sUser, $aCommand[3], true);
$this->config = $config;
$this->logger = $logger;
- $hostname = $baseUrl->getHostname();
+ $hostname = $baseUrl->getHost();
if (strpos($hostname, ':')) {
$hostname = substr($hostname, 0, strpos($hostname, ':'));
}
'X-Friendica-Platform' => [App::PLATFORM],
'X-Friendica-Version' => [App::VERSION],
'List-ID' => ['<notification.' . $hostname . '>'],
- 'List-Archive' => ['<' . $baseUrl->get() . '/notifications/system>'],
+ 'List-Archive' => ['<' . $baseUrl . '/notifications/system>'],
];
}
'$htmlversion' => $msgHtml,
'$sitename' => $this->config->get('config', 'sitename'),
'$banner' => $this->config->get('system', 'email_banner',
- $this->baseUrl->get(true) . DIRECTORY_SEPARATOR . self::DEFAULT_EMAIL_BANNER),
+ $this->baseUrl . DIRECTORY_SEPARATOR . self::DEFAULT_EMAIL_BANNER),
]);
}
$this->siteEmailAddress = $this->config->get('config', 'sender_email');
if (empty($this->siteEmailAddress)) {
- $hostname = $this->baseUrl->getHostname();
+ $hostname = $this->baseUrl->getHost();
if (strpos($hostname, ':')) {
$hostname = substr($hostname, 0, strpos($hostname, ':'));
}
Logger::info('start');
ModelNodeInfo::update();
// Now trying to register
- $url = 'http://the-federation.info/register/' . DI::baseUrl()->getHostname();
+ $url = 'http://the-federation.info/register/' . DI::baseUrl()->getHost();
Logger::debug('Check registering url', ['url' => $url]);
$ret = DI::httpClient()->fetch($url, HttpClientAccept::HTML);
Logger::debug('Check registering answer', ['answer' => $ret]);
// if $parent['wall'] == 1 we will already have the parent message in our array
// and we will relay the whole lot.
- $localhost = str_replace('www.','', DI::baseUrl()->getHostname());
+ $localhost = str_replace('www.','', DI::baseUrl()->getHost());
if (strpos($localhost,':')) {
$localhost = substr($localhost,0,strpos($localhost,':'));
}
$auth = [
'VAPID' => [
- 'subject' => DI::baseUrl()->getHostname(),
+ 'subject' => DI::baseUrl()->getHost(),
'publicKey' => ModelSubscription::getPublicVapidKey(),
'privateKey' => ModelSubscription::getPrivateVapidKey(),
],
$minimal = false;
}
-$basepath = DI::baseUrl()->getUrlPath() ? "/" . DI::baseUrl()->getUrlPath() . "/" : "/";
+$basepath = DI::baseUrl()->getPath() ? "/" . DI::baseUrl()->getPath() . "/" : "/";
$frio = "view/theme/frio";
$view_mode_class = (DI::mode()->isMobile() || DI::mode()->isMobile()) ? 'mobile-view' : 'desktop-view';
$is_singleuser = DI::config()->get('system', 'singleuser');
<?php
+/**
+ * @copyright Copyright (C) 2010-2023, the Friendica project
+ *
+ * @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/>.
+ *
+ * Name: Vier
+ * Version: 1.2
+ * Author: Fabio <http://kirgroup.com/profile/fabrixxm>
+ * Author: Ike <http://pirati.ca/profile/heluecht>
+ * Author: Beanow <https://fc.oscp.info/profile/beanow>
+ * Maintainer: Ike <http://pirati.ca/profile/heluecht>
+ * Description: "Vier" is a very compact and modern theme. It uses the font awesome font library: http://fortawesome.github.com/Font-Awesome/
+ */
/*
* Name: Smoothly
$cssFile = null;
$ssl_state = false;
- $baseurl = DI::baseUrl()->get($ssl_state);
+ $baseurl = DI::baseUrl();
DI::page()['htmlhead'] .= <<< EOT
<script>
/** @purpose insert stuff in bottom of page
*/
$ssl_state = false;
- $baseurl = DI::baseUrl()->get($ssl_state);
+ $baseurl = DI::baseUrl();
$bottom['$baseurl'] = $baseurl;
$tpl = Renderer::getMarkupTemplate('bottom.tpl');