aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actions/admin/site/update_basic.php6
-rw-r--r--actions/systemsettings/install.php7
-rw-r--r--languages/en.php2
-rw-r--r--views/default/account/forms/login.php10
-rw-r--r--views/default/settings/system.php5
5 files changed, 26 insertions, 4 deletions
diff --git a/actions/admin/site/update_basic.php b/actions/admin/site/update_basic.php
index 5710e63b9..c29fdd044 100644
--- a/actions/admin/site/update_basic.php
+++ b/actions/admin/site/update_basic.php
@@ -45,6 +45,12 @@
else
unset_config('debug', $site->getGUID());
+ $https_login = get_input('https_login');
+ if ($https_login)
+ set_config('https_login', 1, $site->getGUID());
+ else
+ unset_config('https_login', $site->getGUID());
+
$usage = get_input('usage');
if ($usage)
unset_config('ping_home', $site->getGUID());
diff --git a/actions/systemsettings/install.php b/actions/systemsettings/install.php
index 25846d6f1..3ea4e117e 100644
--- a/actions/systemsettings/install.php
+++ b/actions/systemsettings/install.php
@@ -78,7 +78,12 @@
unset_config('disable_api', $site->getGUID());
else
set_config('disable_api', 'disabled', $site->getGUID());
-
+
+ $https_login = get_input('https_login');
+ if ($https_login)
+ set_config('https_login', 1, $site->getGUID());
+ else
+ unset_config('https_login', $site->getGUID());
// activate some plugins by default
if (isset($CONFIG->default_plugins))
diff --git a/languages/en.php b/languages/en.php
index fd9119e53..62e48f38c 100644
--- a/languages/en.php
+++ b/languages/en.php
@@ -711,6 +711,8 @@ Alternatively, you can enter your database settings below and we will try and do
'installation:language' => "The default language for your site:",
'installation:debug' => "Debug mode provides extra information which can be used to diagnose faults, however it can slow your system down so should only be used if you are having problems:",
'installation:debug:label' => "Turn on debug mode",
+ 'installation:httpslogin' => "Enable this to have user logins performed over HTTPS. You will need to have https enabled on your server for this to work.",
+ 'installation:httpslogin:label' => "Enable HTTPS logins",
'installation:usage' => "This option lets Elgg send anonymous usage statistics back to Curverider.",
'installation:usage:label' => "Send anonymous usage statistics",
'installation:view' => "Enter the view which will be used as the default for your site or leave this blank for the default view (if in doubt, leave as default):",
diff --git a/views/default/account/forms/login.php b/views/default/account/forms/login.php
index 17b44cc78..95eef7790 100644
--- a/views/default/account/forms/login.php
+++ b/views/default/account/forms/login.php
@@ -21,11 +21,17 @@
$form_body .= (!isset($CONFIG->disable_registration) || !($CONFIG->disable_registration)) ? "<a href=\"{$vars['url']}account/register.php\">" . elgg_echo('register') . "</a> | " : "";
$form_body .= "<a href=\"{$vars['url']}account/forgotten_password.php\">" . elgg_echo('user:password:lost') . "</a></p>";
- //<input name=\"username\" type=\"text\" class="general-textarea" /></label>
+ //<input name=\"username\" type=\"text\" class="general-textarea" /></label>
+
+ $login_url = $vars['url'];
+ if ((isset($CONFIG->https_login)) && ($CONFIG->https_login))
+ $login_url = str_replace("http", "https", $vars['url']);
?>
<div id="login-box">
<h2><?php echo elgg_echo('login'); ?></h2>
- <?php echo elgg_view('input/form', array('body' => $form_body, 'action' => "{$vars['url']}action/login")); ?>
+ <?php
+ echo elgg_view('input/form', array('body' => $form_body, 'action' => "{$login_url}action/login"));
+ ?>
</div> \ No newline at end of file
diff --git a/views/default/settings/system.php b/views/default/settings/system.php
index 2ddd8ac7b..be9b00dee 100644
--- a/views/default/settings/system.php
+++ b/views/default/settings/system.php
@@ -35,7 +35,10 @@
$languages = get_installed_translations();
$form_body .= "<p>" . elgg_echo('installation:language') . elgg_view("input/pulldown", array('internalname' => 'language', 'value' => $vars['config']->language, 'options_values' => $languages)) . "</p>";
- $form_body .= "<p class=\"admin_debug\">" . elgg_echo('installation:debug') . "<br />" .elgg_view("input/checkboxes", array('options' => array(elgg_echo('installation:debug:label')), 'internalname' => 'debug', 'value' => ($vars['config']->debug ? elgg_echo('installation:debug:label') : "") )) . "</p>";
+ $form_body .= "<p class=\"admin_debug\">" . elgg_echo('installation:debug') . "<br />" .elgg_view("input/checkboxes", array('options' => array(elgg_echo('installation:debug:label')), 'internalname' => 'debug', 'value' => ($vars['config']->debug ? elgg_echo('installation:debug:label') : "") )) . "</p>";
+
+ $form_body .= "<p class=\"admin_debug\">" . elgg_echo('installation:httpslogin') . "<br />" .elgg_view("input/checkboxes", array('options' => array(elgg_echo('installation:httpslogin:label')), 'internalname' => 'https_login', 'value' => ($vars['config']->https_login ? elgg_echo('installation:httpslogin:label') : "") )) . "</p>";
+
$form_body .= "<p class=\"admin_debug\">" . elgg_echo('installation:disableapi') . "<br />";
$on = elgg_echo('installation:disableapi:label');