Wordpress 2.3.2
[autoinstalls/wordpress.git] / wp-admin / user-edit.php
1 <?php
2 require_once('admin.php');
3
4 $title = __('Edit User');
5 if ( current_user_can('edit_users') )
6         $parent_file = 'users.php';
7 else
8         $parent_file = 'profile.php';
9 $submenu_file = 'users.php';
10
11 wp_reset_vars(array('action', 'redirect', 'profile', 'user_id', 'wp_http_referer'));
12
13 $wp_http_referer = remove_query_arg(array('update', 'delete_count'), stripslashes($wp_http_referer));
14
15 $user_id = (int) $user_id;
16
17 if ( !$user_id )
18         wp_die(__('Invalid user ID.'));
19
20 switch ($action) {
21 case 'switchposts':
22
23 check_admin_referer();
24
25 /* TODO: Switch all posts from one user to another user */
26
27 break;
28
29 case 'update':
30
31 check_admin_referer('update-user_' . $user_id);
32
33 if ( !current_user_can('edit_user', $user_id) )
34         wp_die(__('You do not have permission to edit this user.'));
35
36 $errors = edit_user($user_id);
37
38 if( !is_wp_error( $errors ) ) {
39         $redirect = "user-edit.php?user_id=$user_id&updated=true";
40         $redirect = add_query_arg('wp_http_referer', urlencode($wp_http_referer), $redirect);
41         wp_redirect($redirect);
42         exit;
43 }
44
45 default:
46 $profileuser = get_user_to_edit($user_id);
47
48 if ( !current_user_can('edit_user', $user_id) )
49                 wp_die(__('You do not have permission to edit this user.'));
50
51 include ('admin-header.php');
52 ?>
53
54 <?php if ( isset($_GET['updated']) ) : ?>
55 <div id="message" class="updated fade">
56         <p><strong><?php _e('User updated.') ?></strong></p>
57         <?php if ( $wp_http_referer ) : ?>
58         <p><a href="users.php"><?php _e('&laquo; Back to Authors and Users'); ?></a></p>
59         <?php endif; ?>
60 </div>
61 <?php endif; ?>
62 <?php if ( is_wp_error( $errors ) ) : ?>
63 <div class="error">
64         <ul>
65         <?php
66         foreach( $errors->get_error_messages() as $message )
67                 echo "<li>$message</li>";
68         ?>
69         </ul>
70 </div>
71 <?php endif; ?>
72
73 <div class="wrap">
74 <h2><?php _e('Edit User'); ?></h2>
75
76 <form name="profile" id="your-profile" action="user-edit.php" method="post">
77 <?php wp_nonce_field('update-user_' . $user_id) ?>
78 <?php if ( $wp_http_referer ) : ?>
79         <input type="hidden" name="wp_http_referer" value="<?php echo clean_url($wp_http_referer); ?>" />
80 <?php endif; ?>
81 <p>
82 <input type="hidden" name="from" value="profile" />
83 <input type="hidden" name="checkuser_id" value="<?php echo $user_ID ?>" />
84 </p>
85
86 <p><label for="rich_editing"><input name="rich_editing" type="checkbox" id="rich_editing" value="true" <?php checked('true', $profileuser->rich_editing); ?> /> <?php _e('Use the visual editor when writing'); ?></label></p>
87
88 <p class="submit"><input type="submit" value="<?php _e('Update User &raquo;'); ?>" name="submit" /></p>
89
90 <fieldset>
91 <legend><?php _e('Name'); ?></legend>
92 <p><label><?php _e('Username: (no editing)'); ?><br />
93 <input type="text" name="user_login" value="<?php echo $profileuser->user_login; ?>" disabled="disabled" />
94 </label></p>
95
96 <p><label><?php _e('Role:') ?><br />
97 <?php
98 // print_r($profileuser);
99 echo '<select name="role">';
100 $role_list = '';
101 $user_has_role = false;
102 foreach($wp_roles->role_names as $role => $name) {
103         if ( $profileuser->has_cap($role) ) {
104                 $selected = ' selected="selected"';
105                 $user_has_role = true;
106         } else {
107                 $selected = '';
108         }
109         $role_list .= "<option value=\"{$role}\"{$selected}>{$name}</option>";
110 }
111 if ( $user_has_role )
112         $role_list .= '<option value="">' . __('&mdash; No role for this blog &mdash;') . '</option>';
113 else
114         $role_list .= '<option value="" selected="selected">' . __('&mdash; No role for this blog &mdash;') . '</option>';
115 echo $role_list . '</select>';
116 ?></label></p>
117
118 <p><label><?php _e('First name:') ?><br />
119 <input type="text" name="first_name" value="<?php echo $profileuser->first_name ?>" /></label></p>
120
121 <p><label><?php _e('Last name:') ?><br />
122 <input type="text" name="last_name"  value="<?php echo $profileuser->last_name ?>" /></label></p>
123
124 <p><label><?php _e('Nickname:') ?><br />
125 <input type="text" name="nickname" value="<?php echo $profileuser->nickname ?>" /></label></p>
126
127 <p><label><?php _e('Display name publicly as:') ?> <br />
128 <select name="display_name">
129 <option value="<?php echo $profileuser->display_name; ?>"><?php echo $profileuser->display_name; ?></option>
130 <option value="<?php echo $profileuser->nickname ?>"><?php echo $profileuser->nickname ?></option>
131 <option value="<?php echo $profileuser->user_login ?>"><?php echo $profileuser->user_login ?></option>
132 <?php if ( !empty( $profileuser->first_name ) ) : ?>
133 <option value="<?php echo $profileuser->first_name ?>"><?php echo $profileuser->first_name ?></option>
134 <?php endif; ?>
135 <?php if ( !empty( $profileuser->last_name ) ) : ?>
136 <option value="<?php echo $profileuser->last_name ?>"><?php echo $profileuser->last_name ?></option>
137 <?php endif; ?>
138 <?php if ( !empty( $profileuser->first_name ) && !empty( $profileuser->last_name ) ) : ?>
139 <option value="<?php echo $profileuser->first_name." ".$profileuser->last_name ?>"><?php echo $profileuser->first_name." ".$profileuser->last_name ?></option>
140 <option value="<?php echo $profileuser->last_name." ".$profileuser->first_name ?>"><?php echo $profileuser->last_name." ".$profileuser->first_name ?></option>
141 <?php endif; ?>
142 </select></label></p>
143 </fieldset>
144
145 <fieldset>
146 <legend><?php _e('Contact Info'); ?></legend>
147
148 <p><label><?php _e('E-mail: (required)') ?><br />
149 <input type="text" name="email" value="<?php echo $profileuser->user_email ?>" /></label></p>
150
151 <p><label><?php _e('Website:') ?><br />
152 <input type="text" name="url" value="<?php echo $profileuser->user_url ?>" />
153 </label></p>
154
155 <p><label><?php _e('AIM:') ?><br />
156 <input type="text" name="aim" value="<?php echo $profileuser->aim ?>" />
157 </label></p>
158
159 <p><label><?php _e('Yahoo IM:') ?><br />
160 <input type="text" name="yim" value="<?php echo $profileuser->yim ?>" />
161 </label></p>
162
163 <p><label><?php _e('Jabber / Google Talk:') ?><br />
164 <input type="text" name="jabber" value="<?php echo $profileuser->jabber ?>" /></label>
165 </p>
166 </fieldset>
167 <br clear="all" />
168 <fieldset>
169 <legend><?php _e('About the user'); ?></legend>
170 <p class="desc"><?php _e('Share a little biographical information to fill out your profile. This may be shown publicly.'); ?></p>
171 <p><textarea name="description" rows="5" cols="30"><?php echo $profileuser->description ?></textarea></p>
172 </fieldset>
173
174 <?php
175 $show_password_fields = apply_filters('show_password_fields', true);
176 if ( $show_password_fields ) :
177 ?>
178 <fieldset>
179 <legend><?php _e("Update User's Password"); ?></legend>
180 <p class="desc"><?php _e("If you would like to change the user's password type a new one twice below. Otherwise leave this blank."); ?></p>
181 <p><label><?php _e('New Password:'); ?><br />
182 <input type="password" name="pass1" size="16" value="" />
183 </label></p>
184 <p><label><?php _e('Type it one more time:'); ?><br />
185 <input type="password" name="pass2" size="16" value="" />
186 </label></p>
187 </fieldset>
188 <?php endif; ?>
189
190 <?php do_action('edit_user_profile'); ?>
191
192 <br clear="all" />
193         <table width="99%"  border="0" cellspacing="2" cellpadding="3" class="editform">
194                 <?php
195                 if(count($profileuser->caps) > count($profileuser->roles)):
196                 ?>
197                 <tr>
198                         <th scope="row"><?php _e('Additional Capabilities:') ?></th>
199                         <td><?php
200                         $output = '';
201                         foreach($profileuser->caps as $cap => $value) {
202                                 if(!$wp_roles->is_role($cap)) {
203                                         if($output != '') $output .= ', ';
204                                         $output .= $value ? $cap : "Denied: {$cap}";
205                                 }
206                         }
207                         echo $output;
208                         ?></td>
209                 </tr>
210                 <?php
211                 endif;
212                 ?>
213         </table>
214 <p class="submit">
215         <input type="hidden" name="action" value="update" />
216         <input type="hidden" name="user_id" id="user_id" value="<?php echo $user_id; ?>" />
217         <input type="submit" value="<?php _e('Update User &raquo;') ?>" name="submit" />
218  </p>
219 </form>
220 </div>
221 <?php
222 break;
223 }
224
225 include('admin-footer.php');
226 ?>