- added possibility to allow customer to login with their domain-name, fixes #374
This commit is contained in:
@@ -38,6 +38,14 @@ return array(
|
|||||||
'default' => false,
|
'default' => false,
|
||||||
'save_method' => 'storeSettingField',
|
'save_method' => 'storeSettingField',
|
||||||
),
|
),
|
||||||
|
'login_domain_login' => array(
|
||||||
|
'label' => $lng['serversettings']['login_domain_login'],
|
||||||
|
'settinggroup' => 'login',
|
||||||
|
'varname' => 'domain_login',
|
||||||
|
'type' => 'bool',
|
||||||
|
'default' => false,
|
||||||
|
'save_method' => 'storeSettingField',
|
||||||
|
),
|
||||||
'login_maxloginattempts' => array(
|
'login_maxloginattempts' => array(
|
||||||
'label' => $lng['serversettings']['maxloginattempts'],
|
'label' => $lng['serversettings']['maxloginattempts'],
|
||||||
'settinggroup' => 'login',
|
'settinggroup' => 'login',
|
||||||
|
|||||||
37
index.php
37
index.php
@@ -48,9 +48,46 @@ if($action == 'login')
|
|||||||
$is_admin = false;
|
$is_admin = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
if((int)$settings['login']['domain_login'] == 1)
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* check if the customer tries to login with a domain, #374
|
||||||
|
*/
|
||||||
|
$domainname = $idna_convert->encode(preg_replace(Array('/\:(\d)+$/', '/^https?\:\/\//'), '', $loginname));
|
||||||
|
$row2 = $db->query_first("SELECT `customerid` FROM `".TABLE_PANEL_DOMAINS."` WHERE `domain` = '".$db->escape($domainname)."'");
|
||||||
|
|
||||||
|
if(isset($row2['customerid']) && $row2['customerid'] > 0)
|
||||||
|
{
|
||||||
|
$loginname = getCustomerDetail($row2['customerid'], 'loginname');
|
||||||
|
|
||||||
|
if($loginname !== false)
|
||||||
|
{
|
||||||
|
$row3 = $db->query_first("SELECT `loginname` AS `customer` FROM `" . TABLE_PANEL_CUSTOMERS . "` WHERE `loginname`='" . $db->escape($loginname) . "'");
|
||||||
|
|
||||||
|
if($row3['customer'] == $loginname)
|
||||||
|
{
|
||||||
|
$table = "`" . TABLE_PANEL_CUSTOMERS . "`";
|
||||||
|
$uid = 'customerid';
|
||||||
|
$adminsession = '0';
|
||||||
|
$is_admin = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
$is_admin = true;
|
$is_admin = true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$is_admin = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$is_admin = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(hasUpdates($version) && $is_admin == false)
|
if(hasUpdates($version) && $is_admin == false)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -462,7 +462,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
|
|||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (18, 'system', 'vmail_homedir', '/var/customers/mail/');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (19, 'system', 'bindconf_directory', '/etc/bind/');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (20, 'system', 'bindreload_command', '/etc/init.d/bind9 reload');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.14-svn5');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (22, 'panel', 'version', '0.9.14-svn6');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (23, 'system', 'hostname', 'SERVERNAME');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (24, 'login', 'maxloginattempts', '3');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (25, 'login', 'deactivatetime', '900');
|
||||||
@@ -594,6 +594,7 @@ INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) V
|
|||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (152, 'system', 'mod_fcgid_defaultini_ownvhost', '1');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (152, 'system', 'mod_fcgid_defaultini_ownvhost', '1');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (153, 'system', 'awstats_icons', '/usr/share/awstats/icon/');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (153, 'system', 'awstats_icons', '/usr/share/awstats/icon/');
|
||||||
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (154, 'system', 'ssl_cert_chainfile', '');
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (154, 'system', 'ssl_cert_chainfile', '');
|
||||||
|
INSERT INTO `panel_settings` (`settingid`, `settinggroup`, `varname`, `value`) VALUES (155, 'login', 'domain_login', '0');
|
||||||
|
|
||||||
# --------------------------------------------------------
|
# --------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@@ -1150,3 +1150,16 @@ if(isFroxlorVersion('0.9.14-svn4'))
|
|||||||
|
|
||||||
updateToVersion('0.9.14-svn5');
|
updateToVersion('0.9.14-svn5');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(isFroxlorVersion('0.9.14-svn5'))
|
||||||
|
{
|
||||||
|
showUpdateStep("Updating from 0.9.14-svn5 to 0.9.14-svn6", false);
|
||||||
|
|
||||||
|
$update_allow_domain_login = isset($_POST['update_allow_domain_login']) ? (int)$_POST['update_allow_domain_login'] : '0';
|
||||||
|
|
||||||
|
showUpdateStep("Adding domain-login switch to the settings");
|
||||||
|
$db->query("INSERT INTO `" . TABLE_PANEL_SETTINGS . "` (`settinggroup`, `varname`, `value`) VALUES ('login', 'domain_login', '".(int)$update_allow_domain_login."');");
|
||||||
|
lastStepStatus(0);
|
||||||
|
|
||||||
|
updateToVersion('0.9.14-svn6');
|
||||||
|
}
|
||||||
|
|||||||
@@ -334,4 +334,13 @@ function parseAndOutputPreconfig(&$has_preconfig, &$return, $current_version)
|
|||||||
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(versionInUpdate($current_version, '0.9.14-svn6'))
|
||||||
|
{
|
||||||
|
$has_preconfig = true;
|
||||||
|
$description = 'You can now allow customers to use any of their domains as username for the login.';
|
||||||
|
$question = '<strong>Do you want to enable domain-login for all customers?:</strong> ';
|
||||||
|
$question.= makeyesno('update_allow_domain_login', '1', '0', '0');
|
||||||
|
eval("\$return.=\"" . getTemplate("update/preconfigitem") . "\";");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ define('PACKAGE_ENABLED', 2);
|
|||||||
|
|
||||||
// VERSION INFO
|
// VERSION INFO
|
||||||
|
|
||||||
$version = '0.9.14-svn5';
|
$version = '0.9.14-svn6';
|
||||||
$dbversion = '2';
|
$dbversion = '2';
|
||||||
$branding = '';
|
$branding = '';
|
||||||
|
|
||||||
|
|||||||
@@ -1510,4 +1510,7 @@ $lng['admin']['ipsandports']['ssl_cert_chainfile'] = 'Path to the SSL Certificat
|
|||||||
$lng['admin']['ipsandports']['docroot']['title'] = 'Custom docroot (empty = point to Froxlor)';
|
$lng['admin']['ipsandports']['docroot']['title'] = 'Custom docroot (empty = point to Froxlor)';
|
||||||
$lng['admin']['ipsandports']['docroot']['description'] = 'You can define a custom document-root (the destination for a request) for this ip/port combination here.<br /><strong>ATTENTION:</strong> Please be careful with what you enter here!';
|
$lng['admin']['ipsandports']['docroot']['description'] = 'You can define a custom document-root (the destination for a request) for this ip/port combination here.<br /><strong>ATTENTION:</strong> Please be careful with what you enter here!';
|
||||||
|
|
||||||
|
// ADDED IN FROXLOR 0.9.14-svn6
|
||||||
|
$lng['serversettings']['login_domain_login'] = 'Allow login with domains';
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
@@ -1493,4 +1493,7 @@ $lng['admin']['ipsandports']['ssl_cert_chainfile'] = 'Pfad zu dem SSL Certificat
|
|||||||
$lng['admin']['ipsandports']['docroot']['title'] = 'Benutzerdefinierter Docroot (leer = zeige auf Froxlor)';
|
$lng['admin']['ipsandports']['docroot']['title'] = 'Benutzerdefinierter Docroot (leer = zeige auf Froxlor)';
|
||||||
$lng['admin']['ipsandports']['docroot']['description'] = 'Hier kann ein benutzerdefinierter Document-Root (der Zeilordner für einen Zugriff) für diese IP/Port Kombination gesetzt werden.<br /><strong>ACHTUNG:</strong> Bitte überlege vorher, welchen Pfad du hier angibst!';
|
$lng['admin']['ipsandports']['docroot']['description'] = 'Hier kann ein benutzerdefinierter Document-Root (der Zeilordner für einen Zugriff) für diese IP/Port Kombination gesetzt werden.<br /><strong>ACHTUNG:</strong> Bitte überlege vorher, welchen Pfad du hier angibst!';
|
||||||
|
|
||||||
|
// ADDED IN FROXLOR 0.9.14-svn6
|
||||||
|
$lng['serversettings']['login_domain_login'] = 'Erlaube Anmeldung mit Domains';
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
Reference in New Issue
Block a user