It is now possible to define the hostname from the admin page. This should definetely end the problem that the hostname couldn't be detected unter certain conditions.
This commit is contained in:
parent
d81289c58b
commit
70ba1667e1
3 changed files with 26 additions and 9 deletions
28
boot.php
28
boot.php
|
@ -522,28 +522,28 @@ if(! class_exists('App')) {
|
|||
if (substr($this->query_string, 0, 1) == "/")
|
||||
$this->query_string = substr($this->query_string, 1);
|
||||
}
|
||||
|
||||
|
||||
if (x($_GET,'pagename'))
|
||||
$this->cmd = trim($_GET['pagename'],'/\\');
|
||||
elseif (x($_GET,'q'))
|
||||
$this->cmd = trim($_GET['q'],'/\\');
|
||||
|
||||
|
||||
|
||||
|
||||
// fix query_string
|
||||
$this->query_string = str_replace($this->cmd."&",$this->cmd."?", $this->query_string);
|
||||
|
||||
|
||||
|
||||
|
||||
// unix style "homedir"
|
||||
|
||||
|
||||
if(substr($this->cmd,0,1) === '~')
|
||||
$this->cmd = 'profile/' . substr($this->cmd,1);
|
||||
|
||||
|
||||
// Diaspora style profile url
|
||||
|
||||
if(substr($this->cmd,0,2) === 'u/')
|
||||
$this->cmd = 'profile/' . substr($this->cmd,2);
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Break the URL path into C style argc/argv style arguments for our
|
||||
|
@ -639,6 +639,9 @@ if(! class_exists('App')) {
|
|||
}
|
||||
}
|
||||
|
||||
if (get_config('config','hostname') != "")
|
||||
$this->hostname = get_config('config','hostname');
|
||||
|
||||
$this->baseurl = $scheme . "://" . $this->hostname . ((isset($this->path) && strlen($this->path)) ? '/' . $this->path : '' );
|
||||
return $this->baseurl;
|
||||
}
|
||||
|
@ -660,12 +663,19 @@ if(! class_exists('App')) {
|
|||
if (file_exists(".htpreconfig.php"))
|
||||
@include(".htpreconfig.php");
|
||||
|
||||
$this->hostname = $hostname;
|
||||
if (get_config('config','hostname') != "")
|
||||
$this->hostname = get_config('config','hostname');
|
||||
|
||||
if (!isset($this->hostname) OR ($this->hostname == ""))
|
||||
$this->hostname = $hostname;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function get_hostname() {
|
||||
if (get_config('config','hostname') != "")
|
||||
$this->hostname = get_config('config','hostname');
|
||||
|
||||
return $this->hostname;
|
||||
}
|
||||
|
||||
|
|
|
@ -308,6 +308,7 @@ function admin_page_site_post(&$a){
|
|||
// end relocate
|
||||
|
||||
$sitename = ((x($_POST,'sitename')) ? notags(trim($_POST['sitename'])) : '');
|
||||
$hostname = ((x($_POST,'hostname')) ? notags(trim($_POST['hostname'])) : '');
|
||||
$banner = ((x($_POST,'banner')) ? trim($_POST['banner']) : false);
|
||||
$info = ((x($_POST,'info')) ? trim($_POST['info']) : false);
|
||||
$language = ((x($_POST,'language')) ? notags(trim($_POST['language'])) : '');
|
||||
|
@ -413,6 +414,7 @@ function admin_page_site_post(&$a){
|
|||
set_config('system','poll_interval',$poll_interval);
|
||||
set_config('system','maxloadavg',$maxloadavg);
|
||||
set_config('config','sitename',$sitename);
|
||||
set_config('config','hostname',$hostname);
|
||||
set_config('system','suppress_language',$suppress_language);
|
||||
if ($banner==""){
|
||||
// don't know why, but del_config doesn't work...
|
||||
|
@ -585,6 +587,9 @@ function admin_page_site(&$a) {
|
|||
SSL_POLICY_SELFSIGN => t("Self-signed certificate, use SSL for local links only (discouraged)")
|
||||
);
|
||||
|
||||
if ($a->config['hostname'] == "")
|
||||
$a->config['hostname'] = $a->get_hostname();
|
||||
|
||||
$t = get_markup_template("admin_site.tpl");
|
||||
return replace_macros($t, array(
|
||||
'$title' => t('Administration'),
|
||||
|
@ -599,6 +604,7 @@ function admin_page_site(&$a) {
|
|||
'$baseurl' => $a->get_baseurl(true),
|
||||
// name, label, value, help string, extra data...
|
||||
'$sitename' => array('sitename', t("Site name"), htmlentities($a->config['sitename'], ENT_QUOTES), 'UTF-8'),
|
||||
'$hostname' => array('hostname', t("Host name"), $a->config['hostname'], ""),
|
||||
'$banner' => array('banner', t("Banner/Logo"), $banner, ""),
|
||||
'$info' => array('info',t('Additional Info'), $info, t('For public servers: you can add additional information here that will be listed at dir.friendica.com/siteinfo.')),
|
||||
'$language' => array('language', t("System language"), get_config('system','language'), "", $lang_choices),
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
<input type='hidden' name='form_security_token' value='{{$form_security_token}}'>
|
||||
|
||||
{{include file="field_input.tpl" field=$sitename}}
|
||||
{{include file="field_input.tpl" field=$hostname}}
|
||||
{{include file="field_textarea.tpl" field=$banner}}
|
||||
{{include file="field_textarea.tpl" field=$info}}
|
||||
{{include file="field_select.tpl" field=$language}}
|
||||
|
|
Loading…
Reference in a new issue