Changeset 3841 for extensions/NBC_UserAdvManager
- Timestamp:
- Sep 12, 2009, 6:57:18 PM (15 years ago)
- Location:
- extensions/NBC_UserAdvManager/trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
extensions/NBC_UserAdvManager/trunk/admin/UserAdvManager_admin.php
r3836 r3841 22 22 // +-----------------------------------------------------------------------+ 23 23 if (!isset($_GET['tab'])) 24 24 $page['tab'] = 'global'; 25 25 else 26 26 $page['tab'] = $_GET['tab']; … … 33 33 l10n('Tab_ConfirmMail'), 34 34 $my_base_url.'&tab=confirmmail'); 35 /* For futur options */ 35 36 //$tabsheet->add('Misc_Options', 36 37 // l10n('Tab_Misc_Options'), … … 53 54 case 'global': 54 55 55 56 if ( isset($_POST['submit']) and !is_adviser() and isset($_POST['UserAdvManager_Mail_Info']) and isset($_POST['UserAdvManager_No_Casse']) and isset($_POST['UserAdvManager_Username_Char']) and isset($_POST['UserAdvManager_Confirm_Mail']) and isset($_POST['UserAdvManager_No_Comment_Anonymous']) ) 56 57 { 57 58 $_POST['UserAdvManager_ConfirmMail_Text'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_Text']));59 60 $newconf_nbc_UserAdvManager = $_POST['UserAdvManager_Mail_Info'].';'.$_POST['UserAdvManager_No_Casse'].';'.$_POST['UserAdvManager_Confirm_Mail'].';'.(isset($_POST['UserAdvManager_No_Confirm_Group'])?$_POST['UserAdvManager_No_Confirm_Group']:'').';'.(isset($_POST['UserAdvManager_Validated_Group'])?$_POST['UserAdvManager_Validated_Group']:'').';'.(isset($_POST['UserAdvManager_Validated_Status'])?$_POST['UserAdvManager_Validated_Status']:'').';'.$_POST['UserAdvManager_No_Comment_Anonymous'].';'.$_POST['UserAdvManager_Username_Char'].';'.$_POST['UserAdvManager_Username_List'].';'.(isset($_POST['UserAdvManager_No_Confirm_Status'])?$_POST['UserAdvManager_No_Confirm_Status']:'').';'.$_POST['UserAdvManager_MailInfo_Text'].';'.$_POST['UserAdvManager_ConfirmMail_Text'].';'.$_POST['UserAdvManager_MailExclusion'].';'.$_POST['UserAdvManager_MailExclusion_List'];61 62 $conf['nbc_UserAdvManager'] = $newconf_nbc_UserAdvManager;63 64 $query = '65 UPDATE '.CONFIG_TABLE.'66 SET value="'.$newconf_nbc_UserAdvManager.'"67 WHERE param="nbc_UserAdvManager"68 LIMIT 169 ;';70 71 pwg_query($query);72 73 array_push($page['infos'], l10n('UserAdvManager_save_config'));58 $_POST['UserAdvManager_MailInfo_Text'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_MailInfo_Text'])); 59 $_POST['UserAdvManager_ConfirmMail_Text'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_Text'])); 60 61 $newconf_nbc_UserAdvManager = $_POST['UserAdvManager_Mail_Info'].';'.$_POST['UserAdvManager_No_Casse'].';'.$_POST['UserAdvManager_Confirm_Mail'].';'.(isset($_POST['UserAdvManager_No_Confirm_Group'])?$_POST['UserAdvManager_No_Confirm_Group']:'').';'.(isset($_POST['UserAdvManager_Validated_Group'])?$_POST['UserAdvManager_Validated_Group']:'').';'.(isset($_POST['UserAdvManager_Validated_Status'])?$_POST['UserAdvManager_Validated_Status']:'').';'.$_POST['UserAdvManager_No_Comment_Anonymous'].';'.$_POST['UserAdvManager_Username_Char'].';'.$_POST['UserAdvManager_Username_List'].';'.(isset($_POST['UserAdvManager_No_Confirm_Status'])?$_POST['UserAdvManager_No_Confirm_Status']:'').';'.$_POST['UserAdvManager_MailInfo_Text'].';'.$_POST['UserAdvManager_ConfirmMail_Text'].';'.$_POST['UserAdvManager_MailExclusion'].';'.$_POST['UserAdvManager_MailExclusion_List']; 62 63 $conf['nbc_UserAdvManager'] = $newconf_nbc_UserAdvManager; 64 65 $query = ' 66 UPDATE '.CONFIG_TABLE.' 67 SET value="'.$newconf_nbc_UserAdvManager.'" 68 WHERE param="nbc_UserAdvManager" 69 LIMIT 1 70 ;'; 71 72 pwg_query($query); 73 74 array_push($page['infos'], l10n('UserAdvManager_save_config')); 74 75 } 75 76 … … 84 85 $query = ' 85 86 SELECT id, name 86 FROM '.GROUPS_TABLE.'87 ORDER BY name ASC88 ;';87 FROM '.GROUPS_TABLE.' 88 ORDER BY name ASC 89 ;'; 89 90 90 91 $result = pwg_query($query); … … 96 97 if (isset($conf_nbc_UserAdvManager[3]) and $conf_nbc_UserAdvManager[3] == $row['id']) 97 98 { 98 $No_Valid = $row['id'];99 }99 $No_Valid = $row['id']; 100 } 100 101 /* configuration value for validated users */ 101 102 if (isset($conf_nbc_UserAdvManager[4]) and $conf_nbc_UserAdvManager[4] == $row['id']) 102 {103 $Valid = $row['id'];104 }103 { 104 $Valid = $row['id']; 105 } 105 106 } 106 107 … … 108 109 $template->assign( 109 110 'No_Confirm_Group', 110 111 'group_options'=> $groups,112 'group_selected' => $No_Valid113 )114 111 array( 112 'group_options'=> $groups, 113 'group_selected' => $No_Valid 114 ) 115 ); 115 116 /* Template initialization for validated users group */ 116 117 $template->assign( 117 118 'Validated_Group', 118 array(119 array( 119 120 'group_options'=> $groups, 120 121 'group_selected' => $Valid 121 )122 );122 ) 123 ); 123 124 124 125 /* Status setting for unvalidated and validated users */ … … 129 130 /* Get status values */ 130 131 foreach (get_enums(USER_INFOS_TABLE, 'status') as $status) 131 132 { 132 133 $status_options[$status] = l10n('user_status_'.$status); 133 134 if (isset($conf_nbc_UserAdvManager[9]) and $conf_nbc_UserAdvManager[9] == $status) … … 139 140 'No_Confirm_Status', 140 141 array( 141 142 'Status_selected' => $No_Valid_Status143 )144 );145 142 'Status_options' => $status_options, 143 'Status_selected' => $No_Valid_Status 144 ) 145 ); 146 } 146 147 /* Get status values */ 147 148 foreach (get_enums(USER_INFOS_TABLE, 'status') as $status) 148 149 { 149 150 $status_options[$status] = l10n('user_status_'.$status); 150 151 if (isset($conf_nbc_UserAdvManager[5]) and $conf_nbc_UserAdvManager[5] == $status) 151 152 { 152 153 $Valid_Status = $status; 153 154 } … … 156 157 'Confirm_Status', 157 158 array( 158 'Status_options' => $status_options,159 'Status_selected' => $Valid_Status160 )161 );162 159 'Status_options' => $status_options, 160 'Status_selected' => $Valid_Status 161 ) 162 ); 163 } 163 164 164 165 $template->assign( … … 189 190 190 191 if ( isset($_POST['audit']) or isset($_POST['submit']) ) 191 192 192 { 193 $msg_error1 = ''; 193 194 194 195 /* username insensible a la casse */ 195 196 197 198 199 FROM ".USERS_TABLE." p1200 WHERE EXISTS(201 SELECT ".$conf['user_fields']['username']."202 FROM ".USERS_TABLE." p2203 WHERE p1.".$conf['user_fields']['id']." <> p2.".$conf['user_fields']['id']."204 AND LOWER(p1.".$conf['user_fields']['username'].") = LOWER(p2.".$conf['user_fields']['username'].")205 )196 if (isset($conf_nbc_UserAdvManager[3]) and $conf_nbc_UserAdvManager[3] == 'true') 197 { 198 $query = " 199 SELECT ".$conf['user_fields']['username']." 200 FROM ".USERS_TABLE." p1 201 WHERE EXISTS( 202 SELECT ".$conf['user_fields']['username']." 203 FROM ".USERS_TABLE." p2 204 WHERE p1.".$conf['user_fields']['id']." <> p2.".$conf['user_fields']['id']." 205 AND LOWER(p1.".$conf['user_fields']['username'].") = LOWER(p2.".$conf['user_fields']['username'].") 206 ) 206 207 ;"; 207 208 … … 209 210 210 211 while($row = mysql_fetch_array($result)) 211 212 212 { 213 $msg_error1 .= (($msg_error1 <> '') ? '<br/>' : '') . l10n('Err_audit_no_casse').$row['username']; 213 214 } 214 215 } 215 216 216 217 $msg_error2 = ''; 217 218 218 219 /* Username without forbidden keys */ 219 220 if ( isset($conf_nbc_UserAdvManager[7]) and $conf_nbc_UserAdvManager[7] == 'true' ) 220 221 { 221 $query = "222 SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']."223 FROM ".USERS_TABLE."224 ;";222 $query = " 223 SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']." 224 FROM ".USERS_TABLE." 225 ;"; 225 226 226 $result = pwg_query($query);227 $result = pwg_query($query); 227 228 228 while($row = mysql_fetch_array($result)) 229 { 230 if ( !ValidateUsername($row['username']) ) 231 $msg_error2 .= (($msg_error2 <> '') ? '<br/>' : '') . l10n('Err_audit_username_char').$row['username']; 229 while($row = mysql_fetch_array($result)) 230 { 231 if (!ValidateUsername($row['username'])) 232 $msg_error2 .= (($msg_error2 <> '') ? '<br/>' : '') . l10n('Err_audit_username_char').$row['username']; 233 } 232 234 } 233 } 234 235 $msg_error3 = ''; 235 236 $msg_error3 = ''; 236 237 237 238 /* Email without forbidden domain */ 238 239 if ( isset($conf_nbc_UserAdvManager[12]) and $conf_nbc_UserAdvManager[12] == 'true' ) 239 240 { 240 $query = "241 SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']."242 FROM ".USERS_TABLE."243 ;";241 $query = " 242 SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']." 243 FROM ".USERS_TABLE." 244 ;"; 244 245 245 $result = pwg_query($query);246 $result = pwg_query($query); 246 247 247 while($row = mysql_fetch_array($result))248 while($row = mysql_fetch_array($result)) 248 249 { 249 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();250 $conf_nbc_MailExclusion = preg_split('/,/',$conf_nbc_UserAdvManager[13]);251 for ($i = 0 ; $i < count($conf_nbc_MailExclusion) ; $i++)250 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 251 $conf_nbc_MailExclusion = preg_split('/,/',$conf_nbc_UserAdvManager[13]); 252 for ($i = 0 ; $i < count($conf_nbc_MailExclusion) ; $i++) 252 253 { 253 254 if (preg_match($pattern, $row['mail_address']))254 $pattern = '/'.$conf_nbc_MailExclusion[$i].'/'; 255 if (preg_match($pattern, $row['mail_address'])) 255 256 { 256 $msg_error3 .= (($msg_error3 <> '') ? '<br/>' : '') . l10n('Err_audit_email_forbidden').$row['username'].' ('.$row['mail_address'].')'; 257 $msg_error3 .= (($msg_error3 <> '') ? '<br/>' : '') . l10n('Err_audit_email_forbidden').$row['username'].' ('.$row['mail_address'].')'; 258 } 257 259 } 258 260 } 259 261 } 260 }261 262 262 263 if ($msg_error1 <> '') 263 $errors[] = $msg_error1.'<br/><br/>';264 $errors[] = $msg_error1.'<br/><br/>'; 264 265 265 266 if ($msg_error2 <> '') 266 $errors[] = $msg_error2.'<br/><br/>';267 268 if ($msg_error3 <> '')269 $errors[] = $msg_error3.'<br/><br/>';270 271 if ($msg_error1 <> '' or $msg_error2 <> '' or $msg_error3 <> '')272 array_push($page['errors'], l10n('Err_audit_advise'));273 else267 $errors[] = $msg_error2.'<br/><br/>'; 268 269 if ($msg_error3 <> '') 270 $errors[] = $msg_error3.'<br/><br/>'; 271 272 if ($msg_error1 <> '' or $msg_error2 <> '' or $msg_error3 <> '') 273 array_push($page['errors'], l10n('Err_audit_advise')); 274 else 274 275 array_push($page['infos'], l10n('UserAdvManager_audit_ok')); 275 276 } 276 277 277 278 … … 280 281 // +-----------------------------------------------------------------------+ 281 282 if ( isset ($errors) and count($errors) != 0) 282 283 { 283 284 $template->assign('errors',array()); 284 285 foreach ($errors as $error) 285 286 { 286 287 array_push($page['errors'], $error); 287 288 } … … 304 305 305 306 if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2]=='true' ) 306 { 307 if ( isset($_POST['submit']) and !is_adviser() and isset($_POST['UserAdvManager_ConfirmMail_TimeOut']) ) 308 { 309 $newconf_nbc_UserAdvManager_ConfirmMail = $_POST['UserAdvManager_ConfirmMail_TimeOut'].';'.$_POST['UserAdvManager_ConfirmMail_Delay']; 310 //NODO:Adding new option [Auto deletion : True | False] - No access to cron functionnalities 311 //TODO:Adding new option [Resend_new_validation_key : True | False] 312 $conf['nbc_UserAdvManager_ConfirmMail'] = $newconf_nbc_UserAdvManager_ConfirmMail; 313 314 $query = ' 315 UPDATE '.CONFIG_TABLE.' 316 SET value="'.$newconf_nbc_UserAdvManager_ConfirmMail.'" 317 WHERE param="nbc_UserAdvManager_ConfirmMail" 318 LIMIT 1 319 ;'; 320 321 pwg_query($query); 322 323 array_push($page['infos'], l10n('UserAdvManager_save_config')); 324 } 325 326 $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array(); 327 328 function get_unvalid_user_list() 329 { 330 global $conf, $page; 307 { 308 if ( isset($_POST['submit']) and !is_adviser() and isset($_POST['UserAdvManager_ConfirmMail_TimeOut']) ) 309 { 310 $_POST['UserAdvManager_ConfirmMail_ReMail_Txt'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_ReMail_Txt'])); 311 312 $newconf_nbc_UserAdvManager_ConfirmMail = $_POST['UserAdvManager_ConfirmMail_TimeOut'].';'.$_POST['UserAdvManager_ConfirmMail_Delay'].';'.$_POST['UserAdvManager_ConfirmMail_ReMail_Txt']; 313 314 //NODO:Adding new option [Auto deletion : True | False] - No access to cron functionnalities 315 316 $conf['nbc_UserAdvManager_ConfirmMail'] = $newconf_nbc_UserAdvManager_ConfirmMail; 317 318 $query = ' 319 UPDATE '.CONFIG_TABLE.' 320 SET value="'.$newconf_nbc_UserAdvManager_ConfirmMail.'" 321 WHERE param="nbc_UserAdvManager_ConfirmMail" 322 LIMIT 1 323 ;'; 324 325 pwg_query($query); 326 327 array_push($page['infos'], l10n('UserAdvManager_save_config')); 328 } 329 330 $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array(); 331 332 // +-----------------------------------------------------------------------+ 333 // | initialization | 334 // +-----------------------------------------------------------------------+ 335 336 if (!defined('PHPWG_ROOT_PATH')) 337 { 338 die('Hacking attempt!'); 339 } 331 340 332 /* Get ConfirmMail configuration */ 333 $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array(); 341 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); 342 343 // +-----------------------------------------------------------------------+ 344 // | Check Access and exit when user status is not ok | 345 // +-----------------------------------------------------------------------+ 346 check_status(ACCESS_ADMINISTRATOR); 347 348 $page['order_by_items'] = array( 349 'id' => l10n('registration_date'), 350 'username' => l10n('Username'), 351 'level' => l10n('Privacy level'), 352 'language' => l10n('language'), 353 ); 354 355 // +-----------------------------------------------------------------------+ 356 // | user list | 357 // +-----------------------------------------------------------------------+ 358 359 $page['filtered_users'] = get_unvalid_user_list(); 360 361 // +-----------------------------------------------------------------------+ 362 // | selected users | 363 // +-----------------------------------------------------------------------+ 364 if (isset($_POST['Del_Selected'])) 365 { 366 $collection = array(); 367 368 switch ($_POST['target']) 369 { 370 case 'all' : 371 { 372 foreach($page['filtered_users'] as $local_user) 373 { 374 array_push($collection, $local_user['id']); 375 } 376 break; 377 } 378 case 'selection' : 379 { 380 if (isset($_POST['selection'])) 381 { 382 $collection = $_POST['selection']; 383 } 384 break; 385 } 386 } 387 388 if (count($collection) == 0) 389 { 390 array_push($page['errors'], l10n('Select at least one user')); 391 } 392 } 393 394 // +-----------------------------------------------------------------------+ 395 // | delete users | 396 // +-----------------------------------------------------------------------+ 397 if (isset($_POST['Del_Selected']) and count($collection) > 0) 398 { 399 if (in_array($conf['guest_id'], $collection)) 400 { 401 array_push($page['errors'], l10n('Guest cannot be deleted')); 402 } 403 if (($conf['guest_id'] != $conf['default_user_id']) and 404 in_array($conf['default_user_id'], $collection)) 405 { 406 array_push($page['errors'], l10n('Default user cannot be deleted')); 407 } 408 if (in_array($conf['webmaster_id'], $collection)) 409 { 410 array_push($page['errors'], l10n('Webmaster cannot be deleted')); 411 } 412 if (in_array($user['id'], $collection)) 413 { 414 array_push($page['errors'], l10n('You cannot delete your account')); 415 } 416 417 if (count($page['errors']) == 0) 418 { 419 foreach ($collection as $user_id) 420 { 421 delete_user($user_id); 422 } 423 array_push( 424 $page['infos'], 425 l10n_dec( 426 '%d user deleted', '%d users deleted', 427 count($collection) 428 ) 429 ); 430 431 foreach ($page['filtered_users'] as $filter_key => $filter_user) 432 { 433 if (in_array($filter_user['id'], $collection)) 434 { 435 unset($page['filtered_users'][$filter_key]); 436 } 437 } 438 } 439 } 440 441 // +-----------------------------------------------------------------------+ 442 // | selected users | 443 // +-----------------------------------------------------------------------+ 444 if (isset($_POST['Mail_With_Key'])) 445 { 446 $collection = array(); 447 448 switch ($_POST['target']) 449 { 450 case 'all' : 451 { 452 foreach($page['filtered_users'] as $local_user) 453 { 454 array_push($collection, $local_user['id']); 455 } 456 break; 457 } 458 case 'selection' : 459 { 460 if (isset($_POST['selection'])) 461 { 462 $collection = $_POST['selection']; 463 } 464 break; 465 } 466 } 467 468 if (count($collection) == 0) 469 { 470 array_push($page['errors'], l10n('Select at least one user')); 471 } 472 } 473 // +-----------------------------------------------------------------------+ 474 // | Resend new validation key to users | 475 // +-----------------------------------------------------------------------+ 476 if (isset($_POST['Mail_With_Key']) and count($collection) > 0) 477 { 478 if (in_array($conf['guest_id'], $collection)) 479 { 480 array_push($page['errors'], l10n('No_validation_for_Guest')); 481 } 482 if (($conf['guest_id'] != $conf['default_user_id']) and 483 in_array($conf['default_user_id'], $collection)) 484 { 485 array_push($page['errors'], l10n('No_validation_for_default_user')); 486 } 487 if (in_array($conf['webmaster_id'], $collection)) 488 { 489 array_push($page['errors'], l10n('No_validation_for_Webmaster')); 490 } 491 if (in_array($user['id'], $collection)) 492 { 493 array_push($page['errors'], l10n('No_validation_for_your_account')); 494 } 495 496 if (count($page['errors']) == 0) 497 { 498 foreach ($collection as $user_id) 499 { 500 $typemail = 1; 501 $query = " 502 SELECT id, username, mail_address 503 FROM ".USERS_TABLE." 504 WHERE id = '".$user_id."' 505 ;"; 506 $data = mysql_fetch_array(pwg_query($query)); 507 508 ResendMail2User($typemail,$user_id,$data['username'],$data['mail_address'],true); 509 } 510 array_push( 511 $page['infos'], 512 l10n_dec( 513 '%d_Mail_With_Key', '%d_Mails_With_Key', 514 count($collection) 515 ) 516 ); 517 518 foreach ($page['filtered_users'] as $filter_key => $filter_user) 519 { 520 if (in_array($filter_user['id'], $collection)) 521 { 522 unset($page['filtered_users'][$filter_key]); 523 } 524 } 525 } 526 } 527 528 // +-----------------------------------------------------------------------+ 529 // | selected users | 530 // +-----------------------------------------------------------------------+ 531 if (isset($_POST['Mail_Without_Key'])) 532 { 533 $collection = array(); 534 535 switch ($_POST['target']) 536 { 537 case 'all' : 538 { 539 foreach($page['filtered_users'] as $local_user) 540 { 541 array_push($collection, $local_user['id']); 542 } 543 break; 544 } 545 case 'selection' : 546 { 547 if (isset($_POST['selection'])) 548 { 549 $collection = $_POST['selection']; 550 } 551 break; 552 } 553 } 554 555 if (count($collection) == 0) 556 { 557 array_push($page['errors'], l10n('Select at least one user')); 558 } 559 } 560 // +-----------------------------------------------------------------------+ 561 // | Send reminder without new key to users | 562 // +-----------------------------------------------------------------------+ 563 if (isset($_POST['Mail_Without_Key']) and count($collection) > 0) 564 { 565 if (in_array($conf['guest_id'], $collection)) 566 { 567 array_push($page['errors'], l10n('No_validation_for_Guest')); 568 } 569 if (($conf['guest_id'] != $conf['default_user_id']) and 570 in_array($conf['default_user_id'], $collection)) 571 { 572 array_push($page['errors'], l10n('No_validation_for_default_user')); 573 } 574 if (in_array($conf['webmaster_id'], $collection)) 575 { 576 array_push($page['errors'], l10n('No_validation_for_Webmaster')); 577 } 578 if (in_array($user['id'], $collection)) 579 { 580 array_push($page['errors'], l10n('No_validation_for_your_account')); 581 } 582 583 if (count($page['errors']) == 0) 584 { 585 foreach ($collection as $user_id) 586 { 587 $typemail = 2; 588 $query = " 589 SELECT id, username, mail_address 590 FROM ".USERS_TABLE." 591 WHERE id = '".$user_id."' 592 ;"; 593 $data = mysql_fetch_array(pwg_query($query)); 594 595 ResendMail2User($typemail,$user_id,$data['username'],$data['mail_address'],false); 596 } 597 array_push( 598 $page['infos'], 599 l10n_dec( 600 '%d_Reminder_Sent', '%d_Reminders_Sent', 601 count($collection) 602 ) 603 ); 604 605 foreach ($page['filtered_users'] as $filter_key => $filter_user) 606 { 607 if (in_array($filter_user['id'], $collection)) 608 { 609 unset($page['filtered_users'][$filter_key]); 610 } 611 } 612 } 613 } 614 615 // +-----------------------------------------------------------------------+ 616 // | groups list | 617 // +-----------------------------------------------------------------------+ 618 619 $groups[-1] = '------------'; 620 621 $query = ' 622 SELECT id, name 623 FROM '.GROUPS_TABLE.' 624 ORDER BY name ASC 625 ;'; 626 627 $result = pwg_query($query); 334 628 335 /* Get UserAdvManager configuration */ 336 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 337 338 $users = array(); 339 340 /* search users depending expiration date */ 341 $query = ' 342 SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id, 343 u.'.$conf['user_fields']['username'].' AS username, 344 u.'.$conf['user_fields']['email'].' AS email, 345 ui.status, 346 ui.adviser, 347 ui.enabled_high, 348 ui.level, 349 ui.registration_date, 350 ug.group_id 351 FROM '.USERS_TABLE.' AS u 352 INNER JOIN '.USER_INFOS_TABLE.' AS ui 353 ON u.'.$conf['user_fields']['id'].' = ui.user_id 354 INNER JOIN '.USER_GROUP_TABLE.' AS ug 355 ON u.'.$conf['user_fields']['id'].' = ug.user_id 356 WHERE u.'.$conf['user_fields']['id'].' >= 0 357 AND ug.group_id = "'.$conf_nbc_UserAdvManager[3].'" 358 AND TO_DAYS(NOW()) - TO_DAYS(ui.registration_date) >= "'.$conf_nbc_UserAdvManager_ConfirmMail[1].'" 359 ORDER BY id ASC 360 ;'; 361 362 $result = pwg_query($query); 363 364 while ($row = mysql_fetch_array($result)) 365 { 366 $user = $row; 367 $user['groups'] = array(); 368 369 array_push($users, $user); 370 } 371 372 /* add group lists */ 373 $user_ids = array(); 374 foreach ($users as $i => $user) 375 { 376 $user_ids[$i] = $user['id']; 377 } 378 $user_nums = array_flip($user_ids); 379 380 if (count($user_ids) > 0) 381 { 382 $query = ' 383 SELECT user_id, group_id 384 FROM '.USER_GROUP_TABLE.' 385 WHERE user_id IN ('.implode(',', $user_ids).') 386 ;'; 387 388 $result = pwg_query($query); 389 390 while ($row = mysql_fetch_array($result)) 391 { 392 array_push( 393 $users[$user_nums[$row['user_id']]]['groups'], 394 $row['group_id'] 395 ); 396 } 397 } 398 399 return $users; 400 } 401 402 // +-----------------------------------------------------------------------+ 403 // | initialization | 404 // +-----------------------------------------------------------------------+ 405 406 if (!defined('PHPWG_ROOT_PATH')) 407 { 408 die('Hacking attempt!'); 409 } 410 411 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); 412 413 // +-----------------------------------------------------------------------+ 414 // | Check Access and exit when user status is not ok | 415 // +-----------------------------------------------------------------------+ 416 check_status(ACCESS_ADMINISTRATOR); 417 418 $page['order_by_items'] = array( 419 'id' => l10n('registration_date'), 420 'username' => l10n('Username'), 421 'level' => l10n('Privacy level'), 422 'language' => l10n('language'), 629 while ($row = mysql_fetch_array($result)) 630 { 631 $groups[$row['id']] = $row['name']; 632 } 633 634 // +-----------------------------------------------------------------------+ 635 // | Template Init | 636 // +-----------------------------------------------------------------------+ 637 $base_url = PHPWG_ROOT_PATH.'admin.php?page=user_list'; 638 639 if (isset($_GET['start']) and is_numeric($_GET['start'])) 640 { 641 $start = $_GET['start']; 642 } 643 else 644 { 645 $start = 0; 646 } 647 648 $template->assign( 649 array( 650 'F_ADD_ACTION' => $base_url, 651 'F_USERNAME' => @htmlentities($_GET['username']), 652 'F_FILTER_ACTION' => get_root_url().'admin.php' 653 ) 654 ); 655 656 /* Hide radio-button if not allow to assign adviser */ 657 if ($conf['allow_adviser']) 658 { 659 $template->assign('adviser', true); 660 } 661 662 // +-----------------------------------------------------------------------+ 663 // | user list | 664 // +-----------------------------------------------------------------------+ 665 666 $profile_url = get_root_url().'admin.php?page=profile&user_id='; 667 $perm_url = get_root_url().'admin.php?page=user_perm&user_id='; 668 669 $visible_user_list = array(); 670 foreach ($page['filtered_users'] as $num => $local_user) 671 { 672 /* simulate LIMIT $start, $conf['users_page'] */ 673 if ($num < $start) 674 { 675 continue; 676 } 677 if ($num >= $start + $conf['users_page']) 678 { 679 break; 680 } 681 682 $visible_user_list[] = $local_user; 683 } 684 685 foreach ($visible_user_list as $local_user) 686 { 687 $groups_string = preg_replace( 688 '/(\d+)/e', 689 "\$groups['$1']", 690 implode( 691 ', ', 692 $local_user['groups'] 693 ) 423 694 ); 424 695 425 // +-----------------------------------------------------------------------+ 426 // | user list | 427 // +-----------------------------------------------------------------------+ 428 429 $page['filtered_users'] = get_unvalid_user_list(); 430 431 // +-----------------------------------------------------------------------+ 432 // | selected users | 433 // +-----------------------------------------------------------------------+ 434 //TODO:Link deletion to all users selected or single user 435 if (isset($_POST['delete'])) 436 { 437 $collection = array(); 438 439 switch ($_POST['target']) 440 { 441 case 'all' : 442 { 443 foreach($page['filtered_users'] as $local_user) 444 { 445 array_push($collection, $local_user['id']); 446 } 447 break; 448 } 449 case 'selection' : 450 { 451 if (isset($_POST['selection'])) 452 { 453 $collection = $_POST['selection']; 454 } 455 break; 456 } 457 } 458 459 if (count($collection) == 0) 460 { 461 array_push($page['errors'], l10n('Select at least one user')); 462 } 463 } 464 465 // +-----------------------------------------------------------------------+ 466 // | delete users | 467 // +-----------------------------------------------------------------------+ 468 if (isset($_POST['delete']) and count($collection) > 0) 469 { 470 if (in_array($conf['guest_id'], $collection)) 471 { 472 array_push($page['errors'], l10n('Guest cannot be deleted')); 473 } 474 if (($conf['guest_id'] != $conf['default_user_id']) and 475 in_array($conf['default_user_id'], $collection)) 476 { 477 array_push($page['errors'], l10n('Default user cannot be deleted')); 478 } 479 if (in_array($conf['webmaster_id'], $collection)) 480 { 481 array_push($page['errors'], l10n('Webmaster cannot be deleted')); 482 } 483 if (in_array($user['id'], $collection)) 484 { 485 array_push($page['errors'], l10n('You cannot delete your account')); 486 } 487 488 if (count($page['errors']) == 0) 489 { 490 if (isset($_POST['confirm_deletion']) and 1 == $_POST['confirm_deletion']) 491 { 492 foreach ($collection as $user_id) 493 { 494 delete_user($user_id); 495 } 496 array_push( 497 $page['infos'], 498 l10n_dec( 499 '%d user deleted', '%d users deleted', 500 count($collection) 501 ) 502 ); 503 504 foreach ($page['filtered_users'] as $filter_key => $filter_user) 505 { 506 if (in_array($filter_user['id'], $collection)) 507 { 508 unset($page['filtered_users'][$filter_key]); 509 } 510 } 511 } 512 else 513 { 514 array_push($page['errors'], l10n('You need to confirm deletion')); 515 } 516 } 517 } 518 // +-----------------------------------------------------------------------+ 519 // | Resend new validation key to users | 520 // +-----------------------------------------------------------------------+ 521 522 //TODO:Function to send a new validation key to all | single | selected users 523 524 // +-----------------------------------------------------------------------+ 525 // | groups list | 526 // +-----------------------------------------------------------------------+ 527 528 $groups[-1] = '------------'; 529 530 $query = ' 531 SELECT id, name 532 FROM '.GROUPS_TABLE.' 533 ORDER BY name ASC 534 ;'; 535 536 $result = pwg_query($query); 537 538 while ($row = mysql_fetch_array($result)) 539 { 540 $groups[$row['id']] = $row['name']; 541 } 542 543 // +-----------------------------------------------------------------------+ 544 // | Template Init | 545 // +-----------------------------------------------------------------------+ 546 $base_url = PHPWG_ROOT_PATH.'admin.php?page=user_list'; 547 548 if (isset($_GET['start']) and is_numeric($_GET['start'])) 549 { 550 $start = $_GET['start']; 551 } 552 else 553 { 554 $start = 0; 555 } 556 557 $template->assign( 558 array( 559 'F_ADD_ACTION' => $base_url, 560 'F_USERNAME' => @htmlentities($_GET['username']), 561 'F_FILTER_ACTION' => get_root_url().'admin.php' 562 ) 563 ); 564 565 /* Hide radio-button if not allow to assign adviser */ 566 if ($conf['allow_adviser']) 567 { 568 $template->assign('adviser', true); 569 } 570 571 // +-----------------------------------------------------------------------+ 572 // | user list | 573 // +-----------------------------------------------------------------------+ 574 575 $profile_url = get_root_url().'admin.php?page=profile&user_id='; 576 $perm_url = get_root_url().'admin.php?page=user_perm&user_id='; 577 578 $visible_user_list = array(); 579 foreach ($page['filtered_users'] as $num => $local_user) 580 { 581 /* simulate LIMIT $start, $conf['users_page'] */ 582 if ($num < $start) 583 { 584 continue; 585 } 586 if ($num >= $start + $conf['users_page']) 587 { 588 break; 589 } 590 591 $visible_user_list[] = $local_user; 592 } 593 594 foreach ($visible_user_list as $local_user) 595 { 596 $groups_string = preg_replace( 597 '/(\d+)/e', 598 "\$groups['$1']", 599 implode( 600 ', ', 601 $local_user['groups'] 602 ) 603 ); 604 605 if (isset($_POST['pref_submit']) 606 and isset($_POST['selection']) 607 and in_array($local_user['id'], $_POST['selection'])) 608 { 609 $checked = 'checked="checked"'; 610 } 611 else 612 { 613 $checked = ''; 614 } 615 616 $properties = array(); 617 if ( $local_user['level'] != 0 ) 618 { 619 $properties[] = l10n( sprintf('Level %d', $local_user['level']) ); 620 } 621 $properties[] = 622 (isset($local_user['enabled_high']) and ($local_user['enabled_high'] == 'true')) 623 ? l10n('is_high_enabled') : l10n('is_high_disabled'); 696 if (isset($_POST['pref_submit']) 697 and isset($_POST['selection']) 698 and in_array($local_user['id'], $_POST['selection'])) 699 { 700 $checked = 'checked="checked"'; 701 } 702 else 703 { 704 $checked = ''; 705 } 706 707 $properties = array(); 708 if ( $local_user['level'] != 0 ) 709 { 710 $properties[] = l10n( sprintf('Level %d', $local_user['level']) ); 711 } 712 $properties[] = 713 (isset($local_user['enabled_high']) and ($local_user['enabled_high'] == 'true')) 714 ? l10n('is_high_enabled') : l10n('is_high_disabled'); 624 715 625 if (isset($conf_nbc_UserAdvManager_ConfirmMail[1]) and $conf_nbc_UserAdvManager_ConfirmMail[0]=='true' ) 626 { 627 $template->append( 628 'users', 629 array( 630 'ID' => $local_user['id'], 631 'CHECKED' => $checked, 632 'U_PROFILE' => $profile_url.$local_user['id'], 633 'U_PERM' => $perm_url.$local_user['id'], 634 'USERNAME' => $local_user['username'] 635 .($local_user['id'] == $conf['guest_id'] 636 ? '<BR />['.l10n('is_the_guest').']' : '') 637 .($local_user['id'] == $conf['default_user_id'] 638 ? '<BR />['.l10n('is_the_default').']' : ''), 639 'STATUS' => l10n('user_status_'. 640 $local_user['status']).(($local_user['adviser'] == 'true') 641 ? '<BR />['.l10n('adviser').']' : ''), 642 'EMAIL' => get_email_address_as_display_text($local_user['email']), 643 'GROUPS' => $groups_string, 644 //TODO:Changing ACTION from $properties to Single_Deletion 645 //TODO:Addin new ACTION to Resend new validation key 646 'ACTION' => implode( ', ', $properties), 647 ) 648 ); 649 } 650 } 651 652 $template->assign( 653 array( 654 'UserAdvManager_CONFIRMMAIL_TIMEOUT_TRUE' => $conf_nbc_UserAdvManager_ConfirmMail[0]=='true' ? 'checked="checked"' : '' , 655 'UserAdvManager_CONFIRMMAIL_TIMEOUT_FALSE' => $conf_nbc_UserAdvManager_ConfirmMail[0]=='false' ? 'checked="checked"' : '' , 656 'UserAdvManager_CONFIRMMAIL_DELAY' => $conf_nbc_UserAdvManager_ConfirmMail[1], 657 //TODO:Adding new option [Resend_new_validation_key : True | False] 658 ) 659 ); 716 if (isset($conf_nbc_UserAdvManager_ConfirmMail[1]) and $conf_nbc_UserAdvManager_ConfirmMail[0]=='true' ) 717 { 718 $template->append( 719 'users', 720 array( 721 'ID' => $local_user['id'], 722 'CHECKED' => $checked, 723 'U_PROFILE' => $profile_url.$local_user['id'], 724 'U_PERM' => $perm_url.$local_user['id'], 725 'USERNAME' => $local_user['username'] 726 .($local_user['id'] == $conf['guest_id'] 727 ? '<BR />['.l10n('is_the_guest').']' : '') 728 .($local_user['id'] == $conf['default_user_id'] 729 ? '<BR />['.l10n('is_the_default').']' : ''), 730 'STATUS' => l10n('user_status_'. 731 $local_user['status']).(($local_user['adviser'] == 'true') 732 ? '<BR />['.l10n('adviser').']' : ''), 733 'EMAIL' => get_email_address_as_display_text($local_user['email']), 734 'GROUPS' => $groups_string, 735 'REGISTRATION' => $local_user['registration_date'], 736 ) 737 ); 738 } 739 } 740 741 $template->assign( 742 array( 743 'UserAdvManager_CONFIRMMAIL_TIMEOUT_TRUE' => $conf_nbc_UserAdvManager_ConfirmMail[0]=='true' ? 'checked="checked"' : '' , 744 'UserAdvManager_CONFIRMMAIL_TIMEOUT_FALSE' => $conf_nbc_UserAdvManager_ConfirmMail[0]=='false' ? 'checked="checked"' : '' , 745 'UserAdvManager_CONFIRMMAIL_DELAY' => $conf_nbc_UserAdvManager_ConfirmMail[1], 746 'UserAdvManager_CONFIRMMAIL_REMAIL_TXT' => $conf_nbc_UserAdvManager_ConfirmMail[2], 747 ) 748 ); 660 749 661 750 // +-----------------------------------------------------------------------+ 662 751 // | errors display | 663 752 // +-----------------------------------------------------------------------+ 664 665 666 667 668 669 670 671 753 if ( isset ($errors) and count($errors) != 0) 754 { 755 $template->assign('errors',array()); 756 foreach ($errors as $error) 757 { 758 array_push($page['errors'], $error); 759 } 760 } 672 761 673 762 // +-----------------------------------------------------------------------+ 674 763 // | templates display | 675 764 // +-----------------------------------------------------------------------+ 676 677 678 765 $template->set_filename('plugin_admin_content', dirname(__FILE__) . '/confirmmail.tpl'); 766 $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content'); 767 } 679 768 else 680 681 682 769 { 770 array_push($page['infos'], l10n('Err_ConfirmMail_Settings')); 771 } 683 772 break; 684 773 } -
extensions/NBC_UserAdvManager/trunk/admin/confirmmail.tpl
r3836 r3841 40 40 <td>{'Email address'|@translate}</td> 41 41 <td>{'Groups'|@translate}</td> 42 < !--<td>{'UserAdvManager_Indiv_Suppr'|@translate}</td>-->42 <td>{'Registration'|@translate}</td> 43 43 </tr> 44 44 </thead> … … 54 54 {foreach from=$user.plugin_columns item=data} 55 55 <td>{$data}</td> 56 {/foreach} 57 <!--Todo - Display registration date --> 58 <!--Unaffected column - Can be used in the future --> 59 <!--<td style="text-align:center;">--> 60 <!--<a href="{$user.U_ACTION}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/edit_s.png" class="button" style="border:none" alt="{'Profile'|@translate}" title="{'Profile'|@translate}" /></a>--> 61 <!--</td>--> 56 {/foreach} 57 <td style="text-align:center;">{$user.REGISTRATION}</td> 62 58 </tr> 63 59 {/foreach} -
extensions/NBC_UserAdvManager/trunk/include/functions_UserAdvManager.inc.php
r3836 r3841 7 7 global $conf; 8 8 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 9 include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php'); 10 $infos1_perso = ""; 9 10 include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php'); 11 12 $infos1_perso = ""; 11 13 $infos2_perso = ""; 12 14 … … 84 86 fclose($fo) ; 85 87 //return mail ($to,$subject) ; 88 } 89 90 91 function ResendMail2User($typemail, $user_id, $username, $email, $confirm) 92 { 93 global $conf; 94 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 95 $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array(); 96 97 include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php'); 98 99 $infos1_perso = ""; 100 $infos2_perso = ""; 101 102 switch($typemail) 103 { 104 case 1: 105 $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Reminder_with_key_of_%s', $username)); 106 107 if (isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] <> '') 108 { 109 if (function_exists('get_user_language_desc')) 110 { 111 $infos1 = get_user_language_desc($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n"; 112 113 if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2] == 'true' and $confirm) 114 { 115 $infos2 = array 116 ( 117 get_l10n_args('Link: %s', ResetConfirmMail($user_id)), 118 get_l10n_args('', ''), 119 ); 120 } 121 } 122 else 123 { 124 $infos1 = $conf_nbc_UserAdvManager_ConfirmMail[2]."\n\n"; 125 126 if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2] == 'true' and $confirm) 127 { 128 $infos2 = array 129 ( 130 get_l10n_args('Link: %s', ResetConfirmMail($user_id)), 131 get_l10n_args('', ''), 132 ); 133 } 134 } 135 pwg_mail($email, array( 136 'subject' => $subject, 137 'content' => (isset($infos1) ? $infos1."\n\n" : "").(isset($infos2) ? $infos2."\n\n" : "").get_absolute_root_url(), 138 )); 139 } 140 elseif (isset($conf_nbc_UserAdvManager[11]) and $conf_nbc_UserAdvManager[11] <> '' and !isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] == '') 141 { 142 if (function_exists('get_user_language_desc')) 143 { 144 $infos1 = get_user_language_desc($conf_nbc_UserAdvManager[11])."\n\n"; 145 146 if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2] == 'true' and $confirm) 147 { 148 $infos2 = array 149 ( 150 get_l10n_args('Link: %s', ResetConfirmMail($user_id)), 151 get_l10n_args('', ''), 152 ); 153 } 154 } 155 else 156 { 157 $infos1 = $conf_nbc_UserAdvManager[11]."\n\n"; 158 159 if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2] == 'true' and $confirm) 160 { 161 $infos2 = array 162 ( 163 get_l10n_args('Link: %s', ResetConfirmMail($user_id)), 164 get_l10n_args('', ''), 165 ); 166 } 167 } 168 pwg_mail($email, array( 169 'subject' => $subject, 170 'content' => (isset($infos1) ? $infos1."\n\n" : "").(isset($infos2) ? $infos2."\n\n" : "").get_absolute_root_url(), 171 )); 172 } 173 174 break; 175 176 case 2: 177 $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Reminder_without_key_of_%s', $username)); 178 179 if (isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] <> '' and isset($conf_nbc_UserAdvManager[11]) and $conf_nbc_UserAdvManager[11] <> '') 180 { 181 if (function_exists('get_user_language_desc')) 182 { 183 $infos1 = get_user_language_desc($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n"; 184 } 185 else 186 { 187 $infos1 = $conf_nbc_UserAdvManager_ConfirmMail[2]."\n\n"; 188 } 189 pwg_mail($email, array( 190 'subject' => $subject, 191 'content' => (isset($infos1) ? $infos1."\n\n" : "").(isset($infos2) ? $infos2."\n\n" : "").get_absolute_root_url(), 192 )); 193 } 194 elseif ((function_exists('get_user_language_desc') and isset($conf_nbc_UserAdvManager[11]) and $conf_nbc_UserAdvManager[11] <> '' and !isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] == '')) 195 { 196 if (function_exists('get_user_language_desc')) 197 { 198 $infos1 = get_user_language_desc($conf_nbc_UserAdvManager[11])."\n\n"; 199 } 200 else 201 { 202 $infos1 = $conf_nbc_UserAdvManager[11]."\n\n"; 203 } 204 pwg_mail($email, array( 205 'subject' => $subject, 206 'content' => (isset($infos1) ? $infos1."\n\n" : "").(isset($infos2) ? $infos2."\n\n" : "").get_absolute_root_url(), 207 )); 208 } 209 210 break; 211 } 212 213 /* ********************** */ 214 /* Email sending debugger */ 215 /* This is only to trace */ 216 /* the send of emails for */ 217 /* debugging */ 218 /* ********************** */ 219 MailLog($email,$subject); 220 /* ********************** */ 221 86 222 } 87 223 … … 167 303 } 168 304 305 306 function ResetConfirmMail($user_id) 307 { 308 global $conf; 309 310 $Confirm_Mail_ID = FindAvailableConfirmMailID(); 311 312 list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();')); 313 314 if ( isset($Confirm_Mail_ID) ) 315 { 316 $query = " 317 UPDATE ".USER_CONFIRM_MAIL_TABLE." 318 SET id = '".$Confirm_Mail_ID."' 319 WHERE user_id = '".$user_id."' 320 ;"; 321 pwg_query($query); 322 323 $query = " 324 UPDATE ".USER_INFOS_TABLE." 325 SET registration_date = '".$dbnow."' 326 WHERE user_id = '".$user_id."' 327 ;"; 328 pwg_query($query); 329 330 return get_absolute_root_url().NBC_UserAdvManager_PATH.'ConfirmMail.php?key='.$Confirm_Mail_ID; 331 } 332 } 169 333 170 334 … … 347 511 } 348 512 } 349 /* ****************** end ******************* */350 // Original code without time limit351 /* list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));352 353 $query = '354 UPDATE '.USER_CONFIRM_MAIL_TABLE.'355 SET date_check="'.$dbnow.'"356 WHERE id = "'.$id.'"357 ;';358 pwg_query($query);359 360 if ( $conf_nbc_UserAdvManager[3] <> -1 )361 {362 $query = "363 DELETE FROM ".USER_GROUP_TABLE."364 WHERE user_id = '".$data['user_id']."'365 AND group_id = '".$conf_nbc_UserAdvManager[3]."'366 ;";367 pwg_query($query);368 }369 370 if ( $conf_nbc_UserAdvManager[4] <> -1 )371 {372 $query = "373 DELETE FROM ".USER_GROUP_TABLE."374 WHERE user_id = '".$data['user_id']."'375 AND group_id = '".$conf_nbc_UserAdvManager[4]."'376 ;";377 pwg_query($query);378 379 $query = "380 INSERT INTO ".USER_GROUP_TABLE."381 (user_id, group_id)382 VALUES383 ('".$data['user_id']."', '".$conf_nbc_UserAdvManager[4]."')384 ;";385 pwg_query($query);386 }387 388 if ( ( $conf_nbc_UserAdvManager[5] <> -1 or isset($data['status']) ) )389 {390 $query = "391 UPDATE ".USER_INFOS_TABLE."392 SET status = '".(isset($data['status']) ? $data['status'] : $conf_nbc_UserAdvManager[5])."'393 WHERE user_id = '".$data['user_id']."'394 ;";395 pwg_query($query);396 }397 // Refresh user's category cache398 invalidate_user_cache();399 400 return true;*/401 513 } 402 514 } … … 404 516 return false; 405 517 } 518 406 519 407 520 function NotSensibleSearchUsername($username) … … 421 534 } 422 535 } 536 423 537 424 538 function SearchMail($email) … … 470 584 $conf_nbc_MailExclusion = preg_split('/,/',$conf_nbc_UserAdvManager[13]); 471 585 for ($i = 0 ; $i < count($conf_nbc_MailExclusion) ; $i++) 472 473 474 475 476 477 478 586 { 587 $pattern = '/'.$conf_nbc_MailExclusion[$i].'/'; 588 if (preg_match($pattern, $ncsemail)) 589 return false; 590 else 591 return true; 592 } 479 593 } 480 594 } 595 596 597 function get_unvalid_user_list() 598 { 599 global $conf, $page; 600 601 /* Get ConfirmMail configuration */ 602 $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array(); 603 604 /* Get UserAdvManager configuration */ 605 $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 606 607 $users = array(); 608 609 /* search users depending expiration date */ 610 $query = ' 611 SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id, 612 u.'.$conf['user_fields']['username'].' AS username, 613 u.'.$conf['user_fields']['email'].' AS email, 614 ui.status, 615 ui.adviser, 616 ui.enabled_high, 617 ui.level, 618 ui.registration_date, 619 ug.group_id 620 FROM '.USERS_TABLE.' AS u 621 INNER JOIN '.USER_INFOS_TABLE.' AS ui 622 ON u.'.$conf['user_fields']['id'].' = ui.user_id 623 INNER JOIN '.USER_GROUP_TABLE.' AS ug 624 ON u.'.$conf['user_fields']['id'].' = ug.user_id 625 WHERE u.'.$conf['user_fields']['id'].' >= 0 626 AND ug.group_id = "'.$conf_nbc_UserAdvManager[3].'" 627 AND TO_DAYS(NOW()) - TO_DAYS(ui.registration_date) >= "'.$conf_nbc_UserAdvManager_ConfirmMail[1].'" 628 ORDER BY id ASC 629 ;'; 630 631 $result = pwg_query($query); 632 633 while ($row = mysql_fetch_array($result)) 634 { 635 $user = $row; 636 $user['groups'] = array(); 637 638 array_push($users, $user); 639 } 640 641 /* add group lists */ 642 $user_ids = array(); 643 foreach ($users as $i => $user) 644 { 645 $user_ids[$i] = $user['id']; 646 } 647 648 $user_nums = array_flip($user_ids); 649 650 if (count($user_ids) > 0) 651 { 652 $query = ' 653 SELECT user_id, group_id 654 FROM '.USER_GROUP_TABLE.' 655 WHERE user_id IN ('.implode(',', $user_ids).') 656 ;'; 657 658 $result = pwg_query($query); 659 660 while ($row = mysql_fetch_array($result)) 661 { 662 array_push( 663 $users[$user_nums[$row['user_id']]]['groups'], 664 $row['group_id'] 665 ); 666 } 667 } 668 669 return $users; 670 } 481 671 ?> -
extensions/NBC_UserAdvManager/trunk/language/fr_FR/plugin.lang.php
r3836 r3841 96 96 - Valider manuellement une inscription en attente de validation même si la date d\'expiration est révolue <b>(forçage de la validation)</b>. 97 97 <br>'; 98 $lang['Registration'] = 'Date d\'enregistrement'; 99 $lang['No_validation_for_Guest'] = 'Le compte Guest n\'est pas soumis à validation'; 100 $lang['No_validation_for_default_user'] = 'Le compte par défaut n\'est pas soumis à validation'; 101 $lang['No_validation_for_Webmaster'] = 'Le compte du Webmaster n\'est pas soumis à validation'; 102 $lang['No_validation_for_your_account'] = 'Votre compte d\'admin n\'est pas soumis à validation'; 103 104 $lang['%d_Mail_With_Key'] = '%d message avec renouvellement de clé a été envoyé'; 105 $lang['%d_Mails_With_Key'] = '%d messages avec renouvellement de clé ont été envoyés'; 106 $lang['%d_Reminder_Sent'] = '%d message de relance a été envoyé'; 107 $lang['%d_Reminders_Sent'] = '%d messages de relance ont été envoyés'; 108 109 $lang['Reminder_with_key_of_%s'] = '%s, votre clé de confirmation a été renouvelée'; 110 $lang['Reminder_without_key_of_%s'] = '%s, votre clé de confirmation va expirer'; 98 111 99 112 $lang['Delete_selected'] = 'Supprimer'; -
extensions/NBC_UserAdvManager/trunk/maintain.inc.php
r3742 r3841 16 16 $q = ' 17 17 INSERT INTO '.CONFIG_TABLE.' (param, value, comment) 18 VALUES ("nbc_UserAdvManager_ConfirmMail","false;5; ","Parametres nbc_UserAdvManager - ConfirmMail")18 VALUES ("nbc_UserAdvManager_ConfirmMail","false;5;;","Parametres nbc_UserAdvManager - ConfirmMail") 19 19 ;'; 20 20 pwg_query($q);
Note: See TracChangeset
for help on using the changeset viewer.