Changeset 9 for trunk/admin


Ignore:
Timestamp:
May 13, 2003, 12:02:06 PM (21 years ago)
Author:
z0rglub
Message:

2003.05.13 user_add and user_modify added

Location:
trunk/admin
Files:
1 deleted
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/admin.php

    r2 r9  
    11<?php
    22/***************************************************************************
    3  *                   admin.php is a part of PhpWebGallery                  *
     3 *                                 admin.php                               *
    44 *                            -------------------                          *
    5  *   last update          : Tuesday, July 16, 2002                         *
    6  *   email                : pierrick@z0rglub.com                           *
     5 *   application          : PhpWebGallery 1.3                              *
     6 *   author               : Pierrick LE GALL <pierrick@z0rglub.com>        *
    77 *                                                                         *
    88 ***************************************************************************/
     
    2828switch ( $_GET['page'] )
    2929{
    30  case 'ajout':
    31  {
    32    $titre = $lang['title_add'];
    33    $page_valide = true;
    34    break;
    35  }
     30 case 'user_add':
     31   $titre = $lang['title_add'];           $page_valide = true; break;
    3632 case 'user_list':
    37  {
    38    $titre = $lang['title_liste_users'];
    39    $page_valide = true;
    40    break;
    41  }
     33   $titre = $lang['title_liste_users'];   $page_valide = true; break;
     34 case 'user_modify':
     35   $titre = $lang['title_modify'];        $page_valide = true; break;
    4236 case 'historique':
    43  {
    44    $titre = $lang['title_history'];
    45    $page_valide = true;
    46    break;
    47  }
     37   $titre = $lang['title_history'];       $page_valide = true; break;
    4838 case 'miseajour':
    49  {
    50    $titre = $lang['title_update'];
    51    $page_valide = true;
    52    break;
    53  }
     39   $titre = $lang['title_update'];        $page_valide = true; break;
    5440 case 'configuration':
    55  {
    56    $titre = $lang['title_configuration'];
    57    $page_valide = true;
    58    break;
    59  }
     41   $titre = $lang['title_configuration']; $page_valide = true; break;
    6042 case 'manuel':
    61  {
    62    $titre = $lang['title_instructions'];
    63    $page_valide = true;
    64    break;
    65  }
     43   $titre = $lang['title_instructions'];  $page_valide = true; break;
    6644 case 'perm':
    67  {
    68    $titre = $lang['title_permissions'];
    69    $page_valide = true;
    70    break;
    71  }
     45   $titre = $lang['title_permissions'];   $page_valide = true; break;
    7246 case 'cat':
    73  {
    74    $titre = $lang['title_categories'];
    75    $page_valide = true;
    76    break;
    77  }
     47   $titre = $lang['title_categories'];    $page_valide = true; break;
    7848 case 'edit_cat':
    79  {
    80    $titre = $lang['title_edit_cat'];
    81    $page_valide = true;
    82    break;
    83  }
     49   $titre = $lang['title_edit_cat'];      $page_valide = true; break;
    8450 case 'infos_images':
    85  {
    86    $titre = $lang['title_info_images'];
    87    $page_valide = true;
    88    break;
    89  }
     51   $titre = $lang['title_info_images'];   $page_valide = true; break;
     52 case 'waiting':
     53   $titre = $lang['title_waiting'];       $page_valide = true; break;
    9054 case 'thumbnail':
    91  {
    9255   $titre = $lang['title_thumbnails'];
    9356   if ( isset( $_GET['dir'] ) )
     
    10871   $page_valide = true;
    10972   break;
    110  }
    111  case 'waiting':
    112  {
    113    $titre = $lang['title_waiting'];
    114    $page_valide = true;
    115    break;
    116  }
    11773 default:
    118  {
    119    $titre = $lang['title_default'];
    120    break;
    121  }
     74   $titre = $lang['title_default']; break;
    12275}
    123 $vtp->setGlobalVar( $handle, 'title',       $titre );
     76$vtp->setGlobalVar( $handle, 'title', $titre );
    12477//--------------------------------------------------------------------- summary
    12578$link_start = './admin.php?page=';
     
    148101$vtp->addSession( $handle, 'summary' );
    149102$vtp->setVar( $handle, 'summary.indent', '&nbsp;&nbsp;' );
    150 $vtp->setVar( $handle, 'summary.link', add_session_id( $link_start.'ajout' ) );
     103$vtp->setVar(
     104  $handle, 'summary.link', add_session_id( $link_start.'user_add' ) );
    151105$vtp->setVar( $handle, 'summary.name', $lang['menu_add_user'] );
    152106$vtp->closeSession( $handle, 'summary' );
     
    212166else
    213167{
    214   $vtp->setVar( $handle, 'sub',
    215                 '<div style="text-align:center">'.
    216                 $lang['default_message'].
    217                 '</div>' );
     168  $vtp->setVar(
     169    $handle, 'sub',
     170    '<div style="text-align:center">'.$lang['default_message'].'</div>' );
    218171}
    219172//----------------------------------------------------------- html code display
  • trunk/admin/configuration.php

    r2 r9  
    11<?
    22/***************************************************************************
    3  *               configuration.php is a part of PhpWebGallery              *
     3 *                             configuration.php                           *
    44 *                            -------------------                          *
    5  *   last update          : Tuesday, July 16, 2002                         *
    6  *   email                : pierrick@z0rglub.com                           *
     5 *   application          : PhpWebGallery 1.3                              *
     6 *   author               : Pierrick LE GALL <pierrick@z0rglub.com>        *
    77 *                                                                         *
    88 ***************************************************************************/
     
    294294  }
    295295  $query .= ' from '.$prefixeTable.'users';
    296   $query.= " where pseudo ='visiteur';";
     296  $query.= " where username = 'guest'";
     297  $query.= ';';
    297298
    298299  $row = mysql_fetch_array( mysql_query( $query ) );
  • trunk/admin/user_add.php

    r2 r9  
    11<?php
    22/***************************************************************************
    3  *                   ajout.php is a part of PhpWebGallery                  *
     3 *                               user_add.php                              *
    44 *                            -------------------                          *
    5  *   last update          : Tuesday, July 16, 2002                         *
    6  *   email                : pierrick@z0rglub.com                           *
     5 *   application          : PhpWebGallery 1.3                              *
     6 *   author               : Pierrick LE GALL <pierrick@z0rglub.com>        *
    77 *                                                                         *
    88 ***************************************************************************/
     
    1515 *                                                                         *
    1616 ***************************************************************************/
    17  
    1817include_once( './include/isadmin.inc.php' );
     18//----------------------------------------------------- template initialization
     19$sub = $vtp->Open( '../template/'.$user['template'].'/admin/user_add.vtp' );
     20$tpl = array( 'adduser_info_message', 'adduser_info_back',
     21              'adduser_fill_form', 'login', 'password', 'mail_address',
     22              'adduser_status', 'submit' );
     23templatize_array( $tpl, 'lang', $sub );
     24//--------------------------------------------------------- form criteria check
     25$error = array();
     26if ( isset( $_POST['submit'] ) )
     27{
     28  $error = register_user(
     29    $_POST['username'], $_POST['password'], $_POST['password'],
     30    $_POST['mail_address'], $_POST['status'] );
     31}
     32//-------------------------------------------------------------- errors display
     33if ( sizeof( $error ) != 0 )
     34{
     35  $vtp->addSession( $sub, 'errors' );
     36  for ( $i = 0; $i < sizeof( $error ); $i++ )
     37  {
     38    $vtp->addSession( $sub, 'li' );
     39    $vtp->setVar( $sub, 'li.li', $error[$i] );
     40    $vtp->closeSession( $sub, 'li' );
     41  }
     42  $vtp->closeSession( $sub, 'errors' );
     43}
     44//---------------------------------------------------------------- confirmation
     45if ( sizeof( $error ) == 0 and isset( $_POST['submit'] ) )
     46{
     47  $vtp->addSession( $sub, 'confirmation' );
     48  $vtp->setVar( $sub, 'confirmation.username', $_POST['username'] );
     49  $url = add_session_id( './admin.php?page=user_list' );
     50  $vtp->setVar( $sub, 'confirmation.url', $url );
     51  $vtp->closeSession( $sub, 'confirmation' );
     52  // reset all values
     53  unset( $_POST );
     54}
     55//------------------------------------------------------------------------ form
     56$action = add_session_id( './admin.php?page=user_add' );
     57$vtp->setVar( $sub, 'form_action', $action );
     58$vtp->setVar( $sub, 'user:username',     $_POST['username'] );
     59$vtp->setVar( $sub, 'user:password',     $_POST['password'] );
     60$vtp->setVar( $sub, 'user:mail_address', $_POST['mail_address'] );
    1961
    20 $error = array();
    21 $absent = false;
    22 
    23 $query = 'select';
    24 $query.= ' pseudo,status,mail_address';
    25 $query.= ' from '.$prefixeTable.'users';
    26 $query.= ' where id = '.$_GET['user_id'];
    27 $query.= ';';
    28 $row = mysql_fetch_array( mysql_query( $query ) );
    29 
    30 $pseudo = $row['pseudo'];
    31 $status = $row['status'];
    32 $mail_address = $row['mail_address'];
    33 
    34 if ( $pseudo == 'visiteur' ||
    35      ( $pseudo == $conf['webmaster']
    36        && $user['pseudo'] != $conf['webmaster'] ) )
     62if ( !isset( $_POST['status'] ) )
    3763{
    38   echo "<div class=\"erreur\">".$lang['user_err_modify']."</div>";
    39   $absent = true;
     64  $_POST['status'] = 'guest';
    4065}
    41 if ( $_GET['mode'] == 'modif' )
     66$option = get_enums( $prefixeTable.'users', 'status' );
     67for ( $i = 0; $i < sizeof( $option ); $i++ )
    4268{
    43   if ( $pseudo == '' )
     69  $vtp->addSession( $sub, 'status_option' );
     70  $vtp->setVar( $sub, 'status_option.value', $option[$i] );
     71  $vtp->setVar( $sub, 'status_option.option',
     72                $lang['adduser_status_'.$option[$i]] );
     73  if( $option[$i] == $_POST['status'] )
    4474  {
    45     echo"<div class=\"info\">".$lang['user_err_unknown']."</div>";
    46     $absent = true;
     75    $vtp->setVar( $sub, 'status_option.selected', ' selected="selected"' );
    4776  }
     77  $vtp->closeSession( $sub, 'status_option' );
    4878}
    49 if ( !$absent )
    50 {
    51   if ( $_GET['valider'] == 1 )
    52   {                     
    53     if ( $_GET['mode'] != 'modif' )
    54     {
    55       $error = register_user( $_POST['pseudo'], $_POST['password'],
    56                               $_POST['password'], $_POST['mail_address'],
    57                               $_POST['status'] );
    58     }
    59     else
    60     {
    61       $use_new_password = false;
    62       if ( $_POST['use_new_pwd'] == 1)
    63       {
    64         $use_new_password = true;
    65       }
    66       $error = update_user( $_GET['user_id'], $_POST['mail_address'],
    67                             $_POST['status'], $use_new_password,
    68                             $_POST['password'] );
    69     }
    70   }
    71   if ( sizeof( $error ) > 0 )
    72   {
    73     echo "<div class=\"erreur\">".$lang['adduser_err_message'].sizeof( $error )." :";
    74     echo "<ul>";
    75     for ( $i = 0; $i < sizeof( $error ); $i++ )
    76     {
    77       echo "<li>".$error[$i]."</li>";
    78     }
    79     echo "</ul>";
    80     echo "</div>";
    81   }
    82   if ( sizeof( $error ) == 0 && $_GET['valider'] == 1 )
    83   {
    84     echo"<div class=\"info\">".$lang['adduser_info_message']."\"$pseudo\" ";
    85     if ( $_POST['use_new_pwd'] == 1 )
    86     {
    87       echo $lang['adduser_info_password_updated']." ";
    88     }
    89     echo"[ <a href=\"".add_session_id_to_url( "./admin.php?page=liste_users" )."\">".$lang['adduser_info_back']."</a> ]</div>";
    90   }
    91   if ( $_GET['valider'] != 1 || $_GET['mode'] != "modif" || sizeof( $error ) > 0 )
    92   {
    93     if ( $_GET['mode'] != "modif" && sizeof( $error ) == 0 )
    94     {
    95       unset( $pseudo, $password, $status, $mail_address );
    96     }
    97     if ( !isset( $_POST['use_new_pwd'] ) || $_POST['use_new_pwd'] != 1 )
    98     {
    99       unset( $password );
    100     }
    101     $action = "./admin.php?page=ajout&amp;valider=1";
    102     if ( $_GET['mode'] == "modif" )
    103     {
    104       $action.= "&amp;mode=modif&amp;user_id=".$_GET['user_id'];
    105     }
    106     echo"<form method=\"post\" action=\"".add_session_id_to_url( $action )."\">
    107                                 <table style=\"width:100%;\">
    108                                 <tr align=\"center\" valign=\"middle\">
    109                                         <td>
    110                                 <table style=\"margin-left:auto;margin-right:auto;\">
    111                                         <tr>
    112                                                 <th colspan=\"2\">".$lang['adduser_fill_form']."</th>
    113                                         </tr>
    114                                         <tr>
    115                                                 <td colspan=\"2\"><div style=\"margin-bottom:0px;\">&nbsp;</div></td>
    116                                         </tr>
    117                                         <tr>
    118                                                 <td>".$lang['adduser_login']."</td>
    119                                                 <td>";
    120     if ( $_GET['mode'] == "modif" )
    121     {
    122       echo"<span style=\"color:red;\">$pseudo [".$lang['adduser_unmodify']."]</span>";
    123       echo"<input type=\"hidden\" name=\"pseudo\" value=\"$pseudo\"/>";
    124     }
    125     else
    126     {
    127       echo"<input type=\"text\" name=\"pseudo\" value=\"$pseudo\"/>";
    128     }
    129     echo"
    130                                                 </td>
    131                                         </tr>";
    132     echo"
    133                                         <tr>
    134                                                 <td>";
    135     if ( $_GET['mode'] == "modif" )
    136     {
    137       echo $lang['new']." ".$lang['password']."<input type=\"checkbox\" name=\"use_new_pwd\" value=\"1\"";
    138       if ( isset( $_POST['use_new_pwd'] ) && $_POST['use_new_pwd'] == 1 )
    139       {
    140         echo " checked=\"checked\"";
    141       }
    142       echo " />";
    143     }
    144     else
    145     {
    146       echo $lang['password'];
    147     }
    148     echo"</td>
    149                                                 <td>";
    150     echo"<input type=\"text\" name=\"password\" value=\"$password\"/></td>
    151                                         </tr>";
    152     echo"
    153                                         <tr>
    154                                                 <td>".$lang['reg_mail_address']."</td>";
    155     echo "
    156                                                 <td><input type=\"text\" name=\"mail_address\" value=\"$mail_address\"/></td>
    157                                         </tr>";                 
    158     echo"
    159                                         <tr>
    160                                                 <td>".$lang['adduser_status']."</td>
    161                                                 <td>";
    162     if ( $pseudo == $conf['webmaster'] )
    163     {
    164       echo "<span style=\"color:red;\">$status [".$lang['adduser_unmodify']."]</span>
    165                                                         <input type=\"hidden\" name=\"status\" value=\"$status\"/>";
    166     }
    167     else
    168     {
    169       echo"
    170                                                         <select name=\"status\">";
    171       // on récupère toutes les status possibles dans la base
    172       // par l'intermédiaire de la fonction get_enums
    173       $option = get_enums( $prefixeTable."users", "status" );
    174       for ( $i = 0; $i < sizeof( $option ); $i++ )
    175       {
    176         if ( isset( $status ) )
    177         {
    178           echo"
    179                                                                         <option value=\"$option[$i]\"";
    180           if ( $option[$i] == $status )
    181           {
    182             echo" selected=\"selected\"";
    183           }
    184           echo">";
    185           switch ( $option[$i] )
    186           {
    187           case "admin" :
    188           {
    189             echo $lang['adduser_status_admin'];
    190             break;
    191           }
    192           case "membre" :
    193           {
    194             echo $lang['adduser_status_member'];
    195             break;
    196           }
    197           case "visiteur" :
    198           {
    199             echo $lang['adduser_status_guest'];
    200             break;
    201           }
    202           }
    203           echo"</option>";
    204         }
    205         else
    206         {
    207           echo"
    208                                                                                 <option value=\"$option[$i]\"";
    209           if ( $option[$i] == "visiteur" )
    210           {
    211             echo" selected=\"selected\"";
    212           }
    213           echo">";
    214           switch ( $option[$i] )
    215           {
    216           case "admin" :
    217           {
    218             echo $lang['adduser_status_admin'];
    219             break;
    220           }
    221           case "membre" :
    222           {
    223             echo $lang['adduser_status_member'];
    224             break;
    225           }
    226           case "visiteur" :
    227           {
    228             echo $lang['adduser_status_guest'];
    229             break;
    230           }
    231           }
    232           echo"</option>";
    233         }
    234       }
    235       echo"
    236                                                         </select>";
    237     }
    238     echo"
    239                                                 </td>
    240                                         </tr>
    241                                         <tr>
    242                                                 <td colspan=\"2\" align=\"center\"><input type=\"submit\"  value=\"".$lang['submit']."\"/></td>
    243                                         </tr>
    244                                 </table>
    245                                 </td>
    246                                 </tr>
    247                                 </table>
    248                         </form>";
    249     if ( $_GET['mode'] == "modif" )
    250     {
    251       echo "<div style=\"text-align:center;margin-bottom:10px;\">[ <a href=\"".add_session_id_to_url( "./admin.php?page=liste_users" )."\">".$lang['adduser_info_back']."</a> ]</div>";
    252     }
    253   }
    254 }
     79//----------------------------------------------------------- sending html code
     80$vtp->Parse( $handle , 'sub', $sub );
    25581?>
  • trunk/admin/user_list.php

    r2 r9  
    11<?php
    22/***************************************************************************
    3  *                 liste_users.php is a part of PhpWebGallery              *
     3 *                               user_list.php                             *
    44 *                            -------------------                          *
    5  *   last update          : Tuesday, July 16, 2002                         *
    6  *   email                : pierrick@z0rglub.com                           *
     5 *   application          : PhpWebGallery 1.3                              *
     6 *   author               : Pierrick LE GALL <pierrick@z0rglub.com>        *
    77 *                                                                         *
    88 ***************************************************************************/
     
    3939                    $lang['listuser_button_create_address'] );
    4040//--------------------------------------------------------------- delete a user
    41 if ( isset ( $_GET['delete'] ) && is_numeric( $_GET['delete'] ) )
     41if ( isset ( $_GET['delete'] ) and is_numeric( $_GET['delete'] ) )
    4242{
    43   $query = 'select pseudo';
     43  $query = 'select username';
    4444  $query.= ' from '.$prefixeTable.'users';
    4545  $query.= ' where id = '.$_GET['delete'];
     
    5050  {
    5151    $vtp->addSession( $sub, 'deletion' );
    52     $vtp->setVar( $sub, 'deletion.login', $row['pseudo'] );
     52    $vtp->setVar( $sub, 'deletion.login', $row['username'] );
    5353    $yes_url = './admin.php?page=user_list&amp;delete='.$_GET['delete'];
    5454    $yes_url.= '&amp;confirm=1';
     
    6262  {
    6363    $vtp->addSession( $sub, 'confirmation' );
    64     if ( $row['pseudo'] != 'visiteur' && $row['pseudo'] != $conf['webmaster'] )
     64    if ( $row['username'] != 'guest'
     65         and $row['username'] != $conf['webmaster'] )
    6566    {
    6667      $query = 'select count(*) as nb_result';
     
    7374        delete_user( $_GET['delete'] );
    7475        $vtp->setVar( $sub, 'confirmation.class', 'info' );
    75         $info = '"'.$row['pseudo'].'" '.$lang['listuser_info_deletion'];
     76        $info = '"'.$row['username'].'" '.$lang['listuser_info_deletion'];
    7677        $vtp->setVar( $sub, 'confirmation.info', $info );
    7778      }
     
    102103  $vtp->setVar( $sub, 'users.form_action', $action );
    103104
    104   $query = 'select id,pseudo,status,mail_address';
     105  $query = 'select id,username,status,mail_address';
    105106  $query.= ' from '.$prefixeTable.'users';
    106   $query.= ' order by status asc, pseudo asc';
     107  $query.= ' order by status asc, username asc';
    107108  $query.= ';';
    108109  $result = mysql_query( $query );
     
    127128        break;
    128129      }
    129       case 'visiteur' :
     130      case 'guest' :
    130131      {
    131132        $title.= $lang['adduser_status_guest'];
     
    138139    $vtp->addSession( $sub, 'user' );
    139140    // checkbox for mail management if the user has a mail address
    140     if ( $row['mail_address'] != '' && $row['pseudo'] != 'visiteur' )
     141    if ( $row['mail_address'] != '' and $row['username'] != 'guest' )
    141142    {
    142143      $vtp->addSession( $sub, 'checkbox' );
     
    145146    }
    146147    // use a special color for the login of the user ?
    147     if ( $row['pseudo'] == $conf['webmaster'] )
     148    if ( $row['username'] == $conf['webmaster'] )
    148149    {
    149150      $vtp->setVar( $sub, 'user.color', 'red' );
    150151    }
    151     if ( $row['pseudo'] == "visiteur" )
     152    if ( $row['username'] == 'guest' )
    152153    {
    153154      $vtp->setVar( $sub, 'user.color', 'green' );
    154155    }
    155     $vtp->setVar( $sub, 'user.login', $row['pseudo'] );
     156    if ( $row['username'] == 'guest' )
     157    {
     158      $vtp->setVar( $sub, 'user.login', $lang['guest'] );
     159    }
     160    else
     161    {
     162      $vtp->setVar( $sub, 'user.login', $row['username'] );
     163    }
    156164    // modify or not modify ?
    157     if ( $row['pseudo'] == "visiteur"
    158          || ( $row['pseudo'] == $conf['webmaster']
    159               && $user['pseudo'] != $conf['webmaster'] ) )
     165    if ( $row['username'] == 'guest'
     166         or ( $row['username'] == $conf['webmaster']
     167              and $user['username'] != $conf['webmaster'] ) )
    160168    {
    161169      $vtp->addSession( $sub, 'not_modify' );
     
    165173    {
    166174      $vtp->addSession( $sub, 'modify' );
    167       $url = './admin.php?page=user_add&amp;mode=modif&amp;user_id=';
     175      $url = './admin.php?page=user_modify&amp;user_id=';
    168176      $url.= $row['id'];
    169177      $vtp->setVar( $sub, 'modify.url', add_session_id( $url ) );
    170       $vtp->setVar( $sub, 'modify.login', $row['pseudo'] );
     178      $vtp->setVar( $sub, 'modify.login', $row['username'] );
    171179      $vtp->closeSession( $sub, 'modify' );
    172180    }
    173181    // manage permission or not ?
    174     if ( $row['pseudo'] == $conf['webmaster'] )
     182    if ( $row['username'] == $conf['webmaster'] )
    175183    {
    176184      $vtp->addSession( $sub, 'not_permission' );
     
    182190      $url = './admin.php?page=perm&amp;user_id='.$row['id'];
    183191      $vtp->setVar( $sub, 'permission.url', add_session_id( $url ) );
    184       $vtp->setVar( $sub, 'permission.login', $row['pseudo'] );
     192      $vtp->setVar( $sub, 'permission.login', $row['username'] );
    185193      $vtp->closeSession( $sub, 'permission' );
    186194    }
    187195    // is the user deletable or not ?
    188     if ( $row['pseudo'] == 'visiteur' || $row['pseudo'] == $conf['webmaster'] )
     196    if ( $row['username'] == 'guest'
     197         or $row['username'] == $conf['webmaster'] )
    189198    {
    190199      $vtp->addSession( $sub, 'not_delete' );
     
    196205      $url = './admin.php?page=user_list&amp;delete='.$row['id'];
    197206      $vtp->setVar( $sub, 'delete.url', add_session_id( $url ) );
    198       $vtp->setVar( $sub, 'delete.login', $row['pseudo'] );
     207      $vtp->setVar( $sub, 'delete.login', $row['username'] );
    199208      $vtp->closeSession( $sub, 'delete' );
    200209    }
  • trunk/admin/user_modify.php

    r8 r9  
    1919$sub = $vtp->Open( '../template/'.$user['template'].'/admin/user_modify.vtp' );
    2020$error = array();
    21 $tpl = array( 'user_err_modify', 'user_err_unknown' );
    22 templatize_array( $tpl, 'lang' );
     21$tpl = array( 'adduser_info_message', 'adduser_info_back', 'adduser_fill_form',
     22              'login', 'new', 'password', 'mail_address', 'adduser_status',
     23              'submit', 'adduser_info_password_updated' );
     24templatize_array( $tpl, 'lang', $sub );
    2325//--------------------------------------------------------- form criteria check
     26$error = array();
    2427$display_form = true;
    2528
     29// retrieving information in the database about the user identified by its
     30// id in $_GET['user_id']
    2631$query = 'select';
    2732$query.= ' username,status,mail_address';
     
    3136$row = mysql_fetch_array( mysql_query( $query ) );
    3237
    33 $username     = $row['username'];
    34 $status       = $row['status'];
    35 $mail_address = $row['mail_address'];
    36 
    37 if ( $username == 'guest'
    38      or ( $username == $conf['webmaster']
     38// user is not modifiable if :
     39//   1. the selected user is the user "guest"
     40//   2. the selected user is the webmaster and the user making the modification
     41//      is not the webmaster
     42if ( $row['username'] == 'guest'
     43     or ( $row['username'] == $conf['webmaster']
    3944          and $user['username'] != $conf['webmaster'] ) )
    4045{
    41   $vtp->addSession( $sub, 'err_modify' );
    42   $vtp->closeSession( $sub, 'err_modify' );
     46  array_push( $error, $lang['user_err_modify'] );
    4347  $display_form = false;
    4448}
    45 if ( $username == '' )
     49// if the user was not found in the database, no modification possible
     50if ( $row['username'] == '' )
    4651{
    47   $vtp->addSession( $sub, 'err_unknown' );
    48   $vtp->closeSession( $sub, 'err_unknown' );
     52  array_push( $error, $lang['user_err_unknown'] );
    4953  $display_form = false;
    5054}
    5155
    52 if ( $display_form and isset( $_POST['submit'] ) )
     56if ( sizeof( $error ) == 0 and isset( $_POST['submit'] ) )
    5357{
     58  // shall we use a new password and overwrite the old one ?
    5459  $use_new_password = false;
    5560  if ( $_POST['use_new_pwd'] == 1)
     
    5762    $use_new_password = true;
    5863  }
    59   $error = update_user(
    60     $_GET['user_id'], $_POST['mail_address'], $_POST['status'],
    61     $use_new_password, $POST['password'] );
     64  $error = array_merge( $error, update_user(
     65                          $_GET['user_id'], $_POST['mail_address'],
     66                          $_POST['status'], $use_new_password,
     67                          $_POST['password'] ) );
    6268}
     69//-------------------------------------------------------------- errors display
     70if ( sizeof( $error ) != 0 )
     71{
     72  $vtp->addSession( $sub, 'errors' );
     73  for ( $i = 0; $i < sizeof( $error ); $i++ )
     74  {
     75    $vtp->addSession( $sub, 'li' );
     76    $vtp->setVar( $sub, 'li.li', $error[$i] );
     77    $vtp->closeSession( $sub, 'li' );
     78  }
     79  $vtp->closeSession( $sub, 'errors' );
     80}
     81//---------------------------------------------------------------- confirmation
     82if ( sizeof( $error ) == 0 and isset( $_POST['submit'] ) )
     83{
     84  $vtp->addSession( $sub, 'confirmation' );
     85  $vtp->setVar( $sub, 'confirmation.username', $row['username'] );
     86  $url = add_session_id( './admin.php?page=user_list' );
     87  $vtp->setVar( $sub, 'confirmation.url', $url );
     88  $vtp->closeSession( $sub, 'confirmation' );
     89  if ( $use_new_pwd )
     90  {
     91    $vtp->addSession( $sub, 'password_updated' );
     92    $vtp->closeSession( $sub, 'password_updated' );
     93  }
     94  $display_form = false;
     95}
     96//------------------------------------------------------------------------ form
     97if ( $display_form )
     98{
     99  $vtp->addSession( $sub, 'form' );
     100  $action = './admin.php?page=user_modify&amp;user_id='.$_GET['user_id'];
     101  $vtp->setVar( $sub, 'form.form_action', add_session_id( $action ) );
     102  $vtp->setVar( $sub, 'form.user:username',     $row['username'] );
     103  $vtp->setVar( $sub, 'form.user:password',     $_POST['password'] );
     104  $vtp->setVar( $sub, 'form.user:mail_address', $_POST['mail_address'] );
     105
     106  if ( !isset( $_POST['status'] ) )
     107  {
     108    $_POST['status'] = 'guest';
     109  }
     110  $option = get_enums( $prefixeTable.'users', 'status' );
     111  for ( $i = 0; $i < sizeof( $option ); $i++ )
     112  {
     113    $vtp->addSession( $sub, 'status_option' );
     114    $vtp->setVar( $sub, 'status_option.value', $option[$i] );
     115    $vtp->setVar( $sub, 'status_option.option',
     116                  $lang['adduser_status_'.$option[$i]] );
     117    if( $option[$i] == $_POST['status'] )
     118    {
     119      $vtp->setVar( $sub, 'status_option.selected', ' selected="selected"' );
     120    }
     121    $vtp->closeSession( $sub, 'status_option' );
     122  }
     123  $url = add_session_id( './admin.php?page=user_list' );
     124  $vtp->setVar( $sub, 'form.url_back', $url );
     125  $vtp->closeSession( $sub, 'form' );
     126}
     127//----------------------------------------------------------- sending html code
     128$vtp->Parse( $handle , 'sub', $sub );
    63129?>
Note: See TracChangeset for help on using the changeset viewer.