Changeset 19290 for trunk/admin/group_list.php
- Timestamp:
- Dec 5, 2012, 8:58:09 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/admin/group_list.php
r19286 r19290 119 119 // + 120 120 121 if ($action=="delete" and $_POST['confirm_deletion'])121 if ($action=="delete" and isset($_POST['confirm_deletion']) and $_POST['confirm_deletion']) 122 122 { 123 123 foreach($groups as $group) … … 161 161 } 162 162 163 // + 164 // |merge groups into a new one 165 // + 166 167 if ($action=="merge" ) 168 { 169 // is the group not already existing ? 170 $query = ' 171 SELECT COUNT(*) 172 FROM '.GROUPS_TABLE.' 173 WHERE name = \''.pwg_db_real_escape_string($_POST['merge']).'\' 174 ;'; 175 list($count) = pwg_db_fetch_row(pwg_query($query)); 176 if ($count != 0) 177 { 178 array_push($page['errors'], l10n('This name is already used by another group.')); 179 } 180 else 181 { 182 // creating the group 183 $query = ' 184 INSERT INTO '.GROUPS_TABLE.' 185 (name) 186 VALUES 187 (\''.pwg_db_real_escape_string($_POST['merge']).'\') 188 ;'; 189 pwg_query($query); 190 $query = ' 191 SELECT id 192 FROM '.GROUPS_TABLE.' 193 WHERE name = \''.pwg_db_real_escape_string($_POST['merge']).'\' 194 ;'; 195 list($groupid) = pwg_db_fetch_row(pwg_query($query)); 196 } 197 $grp_access = array(); 198 $usr_grp = array(); 199 foreach($groups as $group) 200 { 201 $query = ' 202 SELECT * 203 FROM '.GROUP_ACCESS_TABLE.' 204 WHERE group_id = '.$group.' 205 ;'; 206 $res=pwg_query($query); 207 while ($row = pwg_db_fetch_assoc($res)) 208 { 209 $new_grp_access= array( 210 'cat_id' => $row['cat_id'], 211 'group_id' => $groupid 212 ); 213 if (!in_array($new_grp_access,$grp_access)) 214 { 215 $grp_access[]=$new_grp_access; 216 } 217 } 218 219 $query = ' 220 SELECT * 221 FROM '.USER_GROUP_TABLE.' 222 WHERE group_id = '.$group.' 223 ;'; 224 $res=pwg_query($query); 225 while ($row = pwg_db_fetch_assoc($res)) 226 { 227 $new_usr_grp= array( 228 'user_id' => $row['user_id'], 229 'group_id' => $groupid 230 ); 231 if (!in_array($new_usr_grp,$usr_grp)) 232 { 233 $usr_grp[]=$new_usr_grp; 234 } 235 } 236 } 237 mass_inserts(USER_GROUP_TABLE, array('user_id','group_id'), $usr_grp); 238 mass_inserts(GROUP_ACCESS_TABLE, array('group_id','cat_id'), $grp_access); 239 array_push( 240 $page['infos'], 241 sprintf(l10n('group "%s" added'), $_POST['merge']) 242 ); 243 } 244 163 245 // + 164 246 // |duplicate a group … … 304 386 { 305 387 $query = ' 306 SELECT COUNT(*) 307 FROM '.USER_GROUP_TABLE.' 308 WHERE group_id = '.$row['id'].' 388 SELECT username 389 FROM '.USERS_TABLE.' AS u 390 INNER JOIN '.USER_GROUP_TABLE.' AS ug 391 ON u.'.$conf['user_fields']['id'].' = ug.user_id 392 WHERE ug.group_id = '.$row['id'].' 309 393 ;'; 310 list($counter) = pwg_db_fetch_row(pwg_query($query)); 311 394 $members=array(); 395 $res=pwg_query($query); 396 while ($us= pwg_db_fetch_assoc($res)) 397 { 398 $members[]=$us['username']; 399 } 312 400 $template->append( 313 401 'groups', … … 316 404 'ID' => $row['id'], 317 405 'IS_DEFAULT' => (get_boolean($row['is_default']) ? ' ['.l10n('default').']' : ''), 318 'NB_MEMBERS' => $counter, 319 'MEMBERS' => l10n_dec('%d member', '%d members', $counter), 406 'NB_MEMBERS' => count($members), 407 'L_MEMBERS' => implode(' - ', $members), 408 'MEMBERS' => l10n_dec('%d member', '%d members', count($members)), 320 409 'U_MEMBERS' => $members_url.$row['id'], 321 410 'U_DELETE' => $del_url.$row['id'].'&pwg_token='.get_pwg_token(),
Note: See TracChangeset
for help on using the changeset viewer.