tbrehm
2008-08-01 c4ff8259c95c34b9b501ba9d19d3380e9ee9edde
Fixed: when creating a cp user with modules "mail,dns,sites" and start module "monitor" he gets "LOGIN_REDIRECT:/index.php" after login in.
Added: Better username regular expression check.
7 files modified
52 ■■■■ changed files
interface/web/admin/form/users.tform.php 12 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/en_users.lng 5 ●●●● patch | view | raw | blame | history
interface/web/admin/templates/users_user_edit.htm 6 ●●●● patch | view | raw | blame | history
interface/web/admin/users_edit.php 19 ●●●● patch | view | raw | blame | history
interface/web/client/form/client.tform.php 3 ●●●●● patch | view | raw | blame | history
interface/web/client/lib/lang/en_client.lng 1 ●●●● patch | view | raw | blame | history
interface/web/client/templates/client_edit_address.htm 6 ●●●● patch | view | raw | blame | history
interface/web/admin/form/users.tform.php
@@ -137,8 +137,16 @@
        'username' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'regex'        => '/^.{1,30}$/',
            'errmsg'    => 'username_err',
            'validators'    => array (     0 => array (    'type'    => 'NOTEMPTY',
                                                        'errmsg'=> 'username_empty'),
                                        1 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'username_unique'),
                                        2 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-\_]{0,50}$/',
                                                        'errmsg'=> 'username_err'),
                                    ),
            'regex'        => '',
            'errmsg'    => '',
            'default'    => '',
            'value'        => '',
            'separator'    => '',
interface/web/admin/lib/lang/en_users.lng
@@ -1,6 +1,8 @@
<?php
$wb["username_txt"] = 'Username';
$wb["username_err"] = 'username_err';
$wb["username_err"] = 'The username is too long or contains invalid characters.';
$wb["username_empty"] = 'The username is empty.';
$wb["username_unique"] = 'There is already a user with this username.';
$wb["passwort_txt"] = 'Password';
$wb["modules_txt"] = 'Module';
$wb["startmodule_txt"] = 'Startmodule';
@@ -24,4 +26,5 @@
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["startmodule_err"] = 'Start module is not within modules.';
?>
interface/web/admin/templates/users_user_edit.htm
@@ -1,7 +1,7 @@
<table width="500" border="0" cellspacing="0" cellpadding="2">
  <tr>
    <td class="frmText11">{tmpl_var name='username_txt'}:</td>
    <td class="frmText11"><input name="username" type="text" class="text" value="{tmpl_var name='username'}" size="15" maxlength="30"></td>
    <td class="frmText11"><input name="username" type="text" class="text" value="{tmpl_var name='username'}" size="15" maxlength="50"></td>
  </tr>
  <tr>
    <td class="frmText11">{tmpl_var name='passwort_txt'}:</td>
@@ -47,6 +47,6 @@
    <td><input name="btn_save" type="button" class="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','admin/users_edit.php');"><div class="buttonEnding"></div>&nbsp;
      <input name="btn_cancel" type="button" class="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('admin/users_list.php');"><div class="buttonEnding"></div>
    </td>
  </tr>
</table>
  </tr>
</table>
<input type="hidden" name="id" value="{tmpl_var name='id'}">
interface/web/admin/users_edit.php
@@ -1,6 +1,6 @@
<?php
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
Copyright (c) 2008, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -46,8 +46,21 @@
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->load('tform_actions');
// let tform_actions handle the page
$app->tform_actions->onLoad();
class page_action extends tform_actions {
    function onBeforeInsert() {
        global $app, $conf;
        if(!in_array($this->dataRecord['startmodule'],$this->dataRecord['modules'])) {
            $app->tform->errorMessage .= $app->tform->wordbook['startmodule_err'];
        }
    }
}
$page = new page_action;
$page->onLoad();
?>
interface/web/client/form/client.tform.php
@@ -92,6 +92,9 @@
                                                        'class' => 'validate_client',
                                                        'function' => 'username_unique',
                                                        'errmsg'=> 'username_error_unique'),
                                        2 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-\_]{0,50}$/',
                                                        'errmsg'=> 'username_error_regex'),
                                        ),
            'default'    => '',
            'value'        => '',
interface/web/client/lib/lang/en_client.lng
@@ -80,4 +80,5 @@
$wb["default_dbserver_txt"] = 'Default Database Server';
$wb["limit_database_txt"] = 'Max. number of Databases';
$wb["limit_database_error_notint"] = 'The database limit must be a number.';
$wb["username_error_regex"] = 'The Username contains invalid chracaters.';
?>
interface/web/client/templates/client_edit_address.htm
@@ -9,7 +9,7 @@
  </tr>
  <tr>
    <td class="frmText11">{tmpl_var name='username_txt'}:</td>
    <td class="frmText11"><input name="username" type="text" class="text" value="{tmpl_var name='username'}" size="30" maxlength="255"></td>
    <td class="frmText11"><input name="username" type="text" class="text" value="{tmpl_var name='username'}" size="30" maxlength="50"></td>
  </tr>
  <tr>
    <td class="frmText11">{tmpl_var name='password_txt'}:</td>
@@ -87,6 +87,6 @@
    <td><input name="btn_save" type="button" class="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','client/client_edit.php');"><div class="buttonEnding"></div>&nbsp;
      <input name="btn_cancel" type="button" class="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('client/client_list.php');"><div class="buttonEnding"></div>
    </td>
  </tr>
</table>
  </tr>
</table>
<input type="hidden" name="id" value="{tmpl_var name='id'}">