some more zot changes migrating back to f9a mainline
This commit is contained in:
parent
8b31ff15f5
commit
2637831d90
15 changed files with 67 additions and 40 deletions
|
@ -564,7 +564,7 @@ function facebook_post_hook(&$a,&$b) {
|
||||||
|
|
||||||
$msg = preg_replace("/\[img\](.*?)\[\/img\]/is", t('Image: ') . '$1', $msg);
|
$msg = preg_replace("/\[img\](.*?)\[\/img\]/is", t('Image: ') . '$1', $msg);
|
||||||
|
|
||||||
if((strpos($link,$a->get_baseurl()) !== false) && (! $image))
|
if((strpos($link,z_root()) !== false) && (! $image))
|
||||||
$image = $a->get_baseurl() . '/images/friendika-64.jpg';
|
$image = $a->get_baseurl() . '/images/friendika-64.jpg';
|
||||||
|
|
||||||
$msg = trim(strip_tags(bbcode($msg)));
|
$msg = trim(strip_tags(bbcode($msg)));
|
||||||
|
|
32
boot.php
32
boot.php
|
@ -325,7 +325,7 @@ class App {
|
||||||
|
|
||||||
if($this->cmd === '.well-known/host-meta') {
|
if($this->cmd === '.well-known/host-meta') {
|
||||||
require_once('include/hostxrd.php');
|
require_once('include/hostxrd.php');
|
||||||
hostxrd($this->get_baseurl());
|
hostxrd();
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -402,7 +402,7 @@ class App {
|
||||||
$this->page['title'] = $this->config['sitename'];
|
$this->page['title'] = $this->config['sitename'];
|
||||||
$tpl = file_get_contents('view/head.tpl');
|
$tpl = file_get_contents('view/head.tpl');
|
||||||
$this->page['htmlhead'] = replace_macros($tpl,array(
|
$this->page['htmlhead'] = replace_macros($tpl,array(
|
||||||
'$baseurl' => $this->get_baseurl(),
|
'$baseurl' => $this->get_baseurl(), // FIXME for z_path!!!!
|
||||||
'$generator' => 'Friendika' . ' ' . FRIENDIKA_VERSION,
|
'$generator' => 'Friendika' . ' ' . FRIENDIKA_VERSION,
|
||||||
'$delitem' => t('Delete this item?'),
|
'$delitem' => t('Delete this item?'),
|
||||||
'$comment' => t('Comment')
|
'$comment' => t('Comment')
|
||||||
|
@ -475,6 +475,34 @@ function system_unavailable() {
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function clean_urls() {
|
||||||
|
global $a;
|
||||||
|
// if($a->config['system']['clean_urls'])
|
||||||
|
return true;
|
||||||
|
// return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
function z_path() {
|
||||||
|
global $a;
|
||||||
|
$base = $a->get_baseurl();
|
||||||
|
if(! clean_urls())
|
||||||
|
$base .= '/?q=';
|
||||||
|
return $base;
|
||||||
|
}
|
||||||
|
|
||||||
|
function z_root() {
|
||||||
|
global $a;
|
||||||
|
return $a->get_baseurl();
|
||||||
|
}
|
||||||
|
|
||||||
|
function absurl($path) {
|
||||||
|
if(strpos($path,'/') === 0)
|
||||||
|
return z_path() . $path;
|
||||||
|
return $path;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Primarily involved with database upgrade, but also sets the
|
// Primarily involved with database upgrade, but also sets the
|
||||||
// base url for use in cmdline programs which don't have
|
// base url for use in cmdline programs which don't have
|
||||||
// $_SERVER variables, and synchronising the state of installed plugins.
|
// $_SERVER variables, and synchronising the state of installed plugins.
|
||||||
|
|
|
@ -25,7 +25,7 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
|
||||||
|
|
||||||
nuke_session();
|
nuke_session();
|
||||||
info( t('Logged out.') . EOL);
|
info( t('Logged out.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(x($_SESSION,'visitor_id') && (! x($_SESSION,'uid'))) {
|
if(x($_SESSION,'visitor_id') && (! x($_SESSION,'uid'))) {
|
||||||
|
@ -45,7 +45,7 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
|
||||||
// extra paranoia - if the IP changed, log them out
|
// extra paranoia - if the IP changed, log them out
|
||||||
if($check && ($_SESSION['addr'] != $_SERVER['REMOTE_ADDR'])) {
|
if($check && ($_SESSION['addr'] != $_SERVER['REMOTE_ADDR'])) {
|
||||||
nuke_session();
|
nuke_session();
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$r = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1",
|
$r = q("SELECT * FROM `user` WHERE `uid` = %d LIMIT 1",
|
||||||
|
@ -54,7 +54,7 @@ if((isset($_SESSION)) && (x($_SESSION,'authenticated')) && ((! (x($_POST,'auth-p
|
||||||
|
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
nuke_session();
|
nuke_session();
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
// initialise user environment
|
// initialise user environment
|
||||||
|
@ -118,7 +118,7 @@ else {
|
||||||
if(($noid) || (strpos($temp_string,'@')) || (! validate_url($temp_string))) {
|
if(($noid) || (strpos($temp_string,'@')) || (! validate_url($temp_string))) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
notice( t('Login failed.') . EOL);
|
notice( t('Login failed.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -143,7 +143,7 @@ else {
|
||||||
if($a->config['register_policy'] == REGISTER_CLOSED) {
|
if($a->config['register_policy'] == REGISTER_CLOSED) {
|
||||||
$a = get_app();
|
$a = get_app();
|
||||||
notice( t('Login failed.') . EOL);
|
notice( t('Login failed.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
// new account
|
// new account
|
||||||
|
@ -196,7 +196,7 @@ else {
|
||||||
if((! $record) || (! count($record))) {
|
if((! $record) || (! count($record))) {
|
||||||
logger('authenticate: failed login attempt: ' . trim($_POST['openid_url']));
|
logger('authenticate: failed login attempt: ' . trim($_POST['openid_url']));
|
||||||
notice( t('Login failed.') . EOL );
|
notice( t('Login failed.') . EOL );
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$_SESSION['uid'] = $record['uid'];
|
$_SESSION['uid'] = $record['uid'];
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
function hostxrd($baseurl) {
|
function hostxrd() {
|
||||||
|
|
||||||
header('Access-Control-Allow-Origin: *');
|
header('Access-Control-Allow-Origin: *');
|
||||||
header("Content-type: text/xml");
|
header("Content-type: text/xml");
|
||||||
$tpl = file_get_contents('view/xrd_host.tpl');
|
$tpl = file_get_contents('view/xrd_host.tpl');
|
||||||
echo str_replace('$domain',$baseurl,$tpl);
|
echo str_replace(array('$zroot','$domain'),array(z_root(),z_path()),$tpl);
|
||||||
session_write_close();
|
session_write_close();
|
||||||
exit();
|
exit();
|
||||||
|
|
||||||
|
|
|
@ -672,7 +672,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
|
|
||||||
// somebody arrived here by mistake or they are fishing. Send them to the homepage.
|
// somebody arrived here by mistake or they are fishing. Send them to the homepage.
|
||||||
|
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ function dfrn_poll_init(&$a) {
|
||||||
$my_id = '0:' . $dfrn_id;
|
$my_id = '0:' . $dfrn_id;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
break; // NOTREACHED
|
break; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -100,7 +100,7 @@ function dfrn_poll_init(&$a) {
|
||||||
$profile = $r[0]['nickname'];
|
$profile = $r[0]['nickname'];
|
||||||
goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/profile/' . $profile);
|
goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/profile/' . $profile);
|
||||||
}
|
}
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -297,7 +297,7 @@ function dfrn_poll_post(&$a) {
|
||||||
$my_id = '0:' . $dfrn_id;
|
$my_id = '0:' . $dfrn_id;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
break; // NOTREACHED
|
break; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -420,7 +420,7 @@ function dfrn_poll_content(&$a) {
|
||||||
$my_id = '0:' . $dfrn_id;
|
$my_id = '0:' . $dfrn_id;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
break; // NOTREACHED
|
break; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,7 @@ function dfrn_request_post(&$a) {
|
||||||
|
|
||||||
|
|
||||||
if($_POST['cancel']) {
|
if($_POST['cancel']) {
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -190,7 +190,7 @@ function dfrn_request_post(&$a) {
|
||||||
// invalid/bogus request
|
// invalid/bogus request
|
||||||
|
|
||||||
notice( t('Unrecoverable protocol error.') . EOL );
|
notice( t('Unrecoverable protocol error.') . EOL );
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -602,7 +602,7 @@ function dfrn_request_content(&$a) {
|
||||||
$myaddr = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
|
$myaddr = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$myaddr = $a->user['nickname'] . '@' . substr($a->get_baseurl(), strpos($a->get_baseurl(),'://') + 3 );
|
$myaddr = $a->user['nickname'] . '@' . substr(z_root(), strpos(z_root(),'://') + 3 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif(x($_GET,'addr')) {
|
elseif(x($_GET,'addr')) {
|
||||||
|
|
|
@ -16,7 +16,7 @@ function friendika_init(&$a) {
|
||||||
|
|
||||||
$data = Array(
|
$data = Array(
|
||||||
'version' => FRIENDIKA_VERSION,
|
'version' => FRIENDIKA_VERSION,
|
||||||
'url' => $a->get_baseurl(),
|
'url' => z_root(),
|
||||||
'plugins' => $a->plugins,
|
'plugins' => $a->plugins,
|
||||||
'register_policy' => $register_policy[$a->config['register_policy']],
|
'register_policy' => $register_policy[$a->config['register_policy']],
|
||||||
'admin' => $admin,
|
'admin' => $admin,
|
||||||
|
@ -40,7 +40,7 @@ function friendika_content(&$a) {
|
||||||
$o .= '<p></p><p>';
|
$o .= '<p></p><p>';
|
||||||
|
|
||||||
$o .= t('This is Friendika version') . ' ' . FRIENDIKA_VERSION . ' ';
|
$o .= t('This is Friendika version') . ' ' . FRIENDIKA_VERSION . ' ';
|
||||||
$o .= t('running at web location') . ' ' . $a->get_baseurl() . '</p><p>';
|
$o .= t('running at web location') . ' ' . z_root() . '</p><p>';
|
||||||
|
|
||||||
$o .= t('Shared content within the Friendika network is provided under the <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0 license</a>') . '</p><p>';
|
$o .= t('Shared content within the Friendika network is provided under the <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0 license</a>') . '</p><p>';
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ function lostpass_post(&$a) {
|
||||||
|
|
||||||
$email = notags(trim($_POST['login-name']));
|
$email = notags(trim($_POST['login-name']));
|
||||||
if(! $email)
|
if(! $email)
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
$r = q("SELECT * FROM `user` WHERE ( `email` = '%s' OR `nickname` = '%s' ) AND `verified` = 1 AND `blocked` = 0 LIMIT 1",
|
$r = q("SELECT * FROM `user` WHERE ( `email` = '%s' OR `nickname` = '%s' ) AND `verified` = 1 AND `blocked` = 0 LIMIT 1",
|
||||||
dbesc($email),
|
dbesc($email),
|
||||||
|
@ -14,7 +14,7 @@ function lostpass_post(&$a) {
|
||||||
|
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice( t('No valid account found.') . EOL);
|
notice( t('No valid account found.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$uid = $r[0]['uid'];
|
$uid = $r[0]['uid'];
|
||||||
|
@ -46,7 +46,7 @@ function lostpass_post(&$a) {
|
||||||
. 'Content-transfer-encoding: 8bit' );
|
. 'Content-transfer-encoding: 8bit' );
|
||||||
|
|
||||||
|
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -62,7 +62,7 @@ function lostpass_content(&$a) {
|
||||||
);
|
);
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice( t("Request could not be verified. \x28You may have previously submitted it.\x29 Password reset failed.") . EOL);
|
notice( t("Request could not be verified. \x28You may have previously submitted it.\x29 Password reset failed.") . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$uid = $r[0]['uid'];
|
$uid = $r[0]['uid'];
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
function notifications_post(&$a) {
|
function notifications_post(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$request_id = (($a->argc > 1) ? $a->argv[1] : 0);
|
$request_id = (($a->argc > 1) ? $a->argv[1] : 0);
|
||||||
|
@ -60,7 +60,7 @@ function notifications_content(&$a) {
|
||||||
|
|
||||||
if(! local_user()) {
|
if(! local_user()) {
|
||||||
notice( t('Permission denied.') . EOL);
|
notice( t('Permission denied.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$o = '';
|
$o = '';
|
||||||
|
|
|
@ -8,7 +8,7 @@ function openid_content(&$a) {
|
||||||
|
|
||||||
$noid = get_config('system','no_openid');
|
$noid = get_config('system','no_openid');
|
||||||
if($noid)
|
if($noid)
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
if((x($_GET,'openid_mode')) && (x($_SESSION,'openid'))) {
|
if((x($_GET,'openid_mode')) && (x($_SESSION,'openid'))) {
|
||||||
$openid = new LightOpenID;
|
$openid = new LightOpenID;
|
||||||
|
@ -49,7 +49,7 @@ function openid_content(&$a) {
|
||||||
if($a->config['register_policy'] != REGISTER_CLOSED)
|
if($a->config['register_policy'] != REGISTER_CLOSED)
|
||||||
goaway($a->get_baseurl() . '/register' . $args);
|
goaway($a->get_baseurl() . '/register' . $args);
|
||||||
else
|
else
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
@ -60,7 +60,7 @@ function openid_content(&$a) {
|
||||||
);
|
);
|
||||||
if(! count($r)) {
|
if(! count($r)) {
|
||||||
notice( t('Login failed.') . EOL );
|
notice( t('Login failed.') . EOL );
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
unset($_SESSION['openid']);
|
unset($_SESSION['openid']);
|
||||||
|
|
||||||
|
@ -116,10 +116,10 @@ function openid_content(&$a) {
|
||||||
if(($a->module !== 'home') && isset($_SESSION['return_url']))
|
if(($a->module !== 'home') && isset($_SESSION['return_url']))
|
||||||
goaway($a->get_baseurl() . '/' . $_SESSION['return_url']);
|
goaway($a->get_baseurl() . '/' . $_SESSION['return_url']);
|
||||||
else
|
else
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
notice( t('Login failed.') . EOL);
|
notice( t('Login failed.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
// NOTREACHED
|
// NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
function redir_init(&$a) {
|
function redir_init(&$a) {
|
||||||
|
|
||||||
if((! local_user()) || (! ($a->argc == 2)) || (! intval($a->argv[1])))
|
if((! local_user()) || (! ($a->argc == 2)) || (! intval($a->argv[1])))
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
$cid = $a->argv[1];
|
$cid = $a->argv[1];
|
||||||
$url = ((x($_GET,'url')) ? $_GET['url'] : '');
|
$url = ((x($_GET,'url')) ? $_GET['url'] : '');
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ function redir_init(&$a) {
|
||||||
);
|
);
|
||||||
|
|
||||||
if((! count($r)) || ($r[0]['network'] !== 'dfrn'))
|
if((! count($r)) || ($r[0]['network'] !== 'dfrn'))
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
$dfrn_id = $orig_id = (($r[0]['issued-id']) ? $r[0]['issued-id'] : $r[0]['dfrn-id']);
|
$dfrn_id = $orig_id = (($r[0]['issued-id']) ? $r[0]['issued-id'] : $r[0]['dfrn-id']);
|
||||||
|
|
||||||
|
|
|
@ -373,7 +373,7 @@ function register_post(&$a) {
|
||||||
|
|
||||||
if($res) {
|
if($res) {
|
||||||
info( t('Registration successful. Please check your email for further instructions.') . EOL ) ;
|
info( t('Registration successful. Please check your email for further instructions.') . EOL ) ;
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
notice( t('Failed to send email message. Here is the message that failed.') . $email_tpl . EOL );
|
notice( t('Failed to send email message. Here is the message that failed.') . $email_tpl . EOL );
|
||||||
|
@ -382,7 +382,7 @@ function register_post(&$a) {
|
||||||
elseif($a->config['register_policy'] == REGISTER_APPROVE) {
|
elseif($a->config['register_policy'] == REGISTER_APPROVE) {
|
||||||
if(! strlen($a->config['admin_email'])) {
|
if(! strlen($a->config['admin_email'])) {
|
||||||
notice( t('Your registration can not be processed.') . EOL);
|
notice( t('Your registration can not be processed.') . EOL);
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
$hash = random_string();
|
$hash = random_string();
|
||||||
|
@ -428,7 +428,7 @@ function register_post(&$a) {
|
||||||
|
|
||||||
if($res) {
|
if($res) {
|
||||||
info( t('Your registration is pending approval by the site owner.') . EOL ) ;
|
info( t('Your registration is pending approval by the site owner.') . EOL ) ;
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,7 +29,7 @@ function removeme_post(&$a) {
|
||||||
function removeme_content(&$a) {
|
function removeme_content(&$a) {
|
||||||
|
|
||||||
if(! local_user())
|
if(! local_user())
|
||||||
goaway($a->get_baseurl());
|
goaway(z_root());
|
||||||
|
|
||||||
$hash = random_string();
|
$hash = random_string();
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
|
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
|
||||||
xmlns:hm='http://host-meta.net/xrd/1.0'>
|
xmlns:hm='http://host-meta.net/xrd/1.0'>
|
||||||
|
|
||||||
<hm:Host>$domain</hm:Host>
|
<hm:Host>$zroot</hm:Host>
|
||||||
|
|
||||||
<Link rel='lrdd' template='$domain/xrd/?uri={uri}' />
|
<Link rel='lrdd' template='$domain/xrd/?uri={uri}' />
|
||||||
<Link rel='acct-mgmt' href='$domain/amcd' />
|
<Link rel='acct-mgmt' href='$domain/amcd' />
|
||||||
|
|
Loading…
Reference in a new issue