aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--admin/template/goto/user_list.tpl9
-rw-r--r--admin/user_list.php81
-rw-r--r--include/config_default.inc.php3
3 files changed, 75 insertions, 18 deletions
diff --git a/admin/template/goto/user_list.tpl b/admin/template/goto/user_list.tpl
index aa4e369dc..76bbdbf3c 100644
--- a/admin/template/goto/user_list.tpl
+++ b/admin/template/goto/user_list.tpl
@@ -6,8 +6,13 @@
<form class="filter" method="post" name="add_user" action="{$F_ADD_ACTION}">
<fieldset>
<legend>{'Add a user'|@translate}</legend>
- <label>{'Username'|@translate} <input type="text" name="login" maxlength="50" size="20" /></label>
- <label>{'Password'|@translate} <input type="text" name="password" /></label>
+ <label>{'Username'|@translate} <input type="text" name="login" maxlength="50" size="20"></label>
+ {if $Double_Password}
+ <label>{'Password'|@translate} <input type="password" name="password"></label>
+ <label>{'Confirm Password'|@translate} <input type="password" name="password_conf" id="password_conf"></label>
+ {else}
+ <label>{'Password'|@translate} <input type="text" name="password"></label>
+ {/if}
<label>{'Email address'|@translate} <input type="text" name="email" /></label>
<label>&nbsp; <input class="submit" type="submit" name="submit_add" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} /></label>
</fieldset>
diff --git a/admin/user_list.php b/admin/user_list.php
index 5011a2aea..daac95a8e 100644
--- a/admin/user_list.php
+++ b/admin/user_list.php
@@ -183,20 +183,63 @@ $page['direction_items'] = array(
// | add a user |
// +-----------------------------------------------------------------------+
-if (isset($_POST['submit_add']))
+// Check for config_default var - If True : Using double password type else single password type
+// This feature is discussed on Piwigo's english forum
+if ($conf['double_password_type_in_admin'] == true)
{
- $page['errors'] = register_user(
- $_POST['login'], $_POST['password'], $_POST['email'], false);
-
- if (count($page['errors']) == 0)
- {
- array_push(
- $page['infos'],
- sprintf(
- l10n('user "%s" added'),
- $_POST['login']
- )
- );
+ if (isset($_POST['submit_add']))
+ {
+ if(empty($_POST['password']))
+ {
+ array_push($page['errors'], l10n('Password is missing'));
+ }
+ else if(empty($_POST['password_conf']))
+ {
+ array_push($page['errors'], l10n('Password confirmation is missing'));
+ }
+ else if(empty($_POST['email']))
+ {
+ array_push($page['errors'], l10n('Email address is missing'));
+ }
+ else if ($_POST['password'] != $_POST['password_conf'])
+ {
+ array_push($page['errors'], l10n('Password confirmation error'));
+ }
+ else
+ {
+ $page['errors'] = register_user(
+ $_POST['login'], $_POST['password'], $_POST['email'], false);
+
+ if (count($page['errors']) == 0)
+ {
+ array_push(
+ $page['infos'],
+ sprintf(
+ l10n('user "%s" added'),
+ $_POST['login']
+ )
+ );
+ }
+ }
+ }
+}
+else if ($conf['double_password_type_in_admin'] == false)
+{
+ if (isset($_POST['submit_add']))
+ {
+ $page['errors'] = register_user(
+ $_POST['login'], $_POST['password'], $_POST['email'], false);
+
+ if (count($page['errors']) == 0)
+ {
+ array_push(
+ $page['infos'],
+ sprintf(
+ l10n('user "%s" added'),
+ $_POST['login']
+ )
+ );
+ }
}
}
@@ -486,6 +529,12 @@ if ($conf['allow_adviser'])
$template->assign('adviser', true);
}
+// Display or Hide double password type
+if ($conf['double_password_type_in_admin'])
+{
+ $template->assign('Double_Password', true);
+}
+
// Filter status options
$status_options[-1] = '------------';
foreach (get_enums(USER_INFOS_TABLE, 'status') as $status)
@@ -658,12 +707,12 @@ foreach ($visible_user_list as $local_user)
'U_PERM' => $perm_url.$local_user['id'],
'USERNAME' => $local_user['username']
.($local_user['id'] == $conf['guest_id']
- ? '<BR />['.l10n('is_the_guest').']' : '')
+ ? '<br>['.l10n('is_the_guest').']' : '')
.($local_user['id'] == $conf['default_user_id']
- ? '<BR />['.l10n('is_the_default').']' : ''),
+ ? '<br>['.l10n('is_the_default').']' : ''),
'STATUS' => l10n('user_status_'.
$local_user['status']).(($local_user['adviser'] == 'true')
- ? '<BR />['.l10n('adviser').']' : ''),
+ ? '<br>['.l10n('adviser').']' : ''),
'EMAIL' => get_email_address_as_display_text($local_user['email']),
'GROUPS' => $groups_string,
'PROPERTIES' => implode( ', ', $properties),
diff --git a/include/config_default.inc.php b/include/config_default.inc.php
index 8d5c295ce..5983c392c 100644
--- a/include/config_default.inc.php
+++ b/include/config_default.inc.php
@@ -319,6 +319,9 @@ $conf['rate_items'] = array(0,1,2,3,4,5);
// Define default method to use ('http' or 'html' in order to do redirect)
$conf['default_redirect_method'] = 'http';
+// Define using double password type in admin's users management panel
+$conf['double_password_type_in_admin'] = false;
+
// +-----------------------------------------------------------------------+
// | metadata |
// +-----------------------------------------------------------------------+