AdminModel.php (1046B)
1 <?php 2 3 /** 4 * Handles all data manipulation of the admin part 5 */ 6 class AdminModel 7 { 8 public static function setAccountSuspensionAndDeletionStatus($suspensionInDays, $softDelete, $userId) 9 { 10 $database = DatabaseFactory::getFactory()->getConnection(); 11 12 if ($suspensionInDays > 0) { 13 $suspensionTime = time() + ($suspensionInDays * 60 * 60 * 24); 14 } else { 15 $suspensionTime = null; 16 } 17 18 // FYI "on" is what a checkbox delivers by default when submitted. Didn't know that for a long time :) 19 if ($softDelete == "on") { 20 $delete = 1; 21 } else { 22 $delete = 0; 23 } 24 25 $query = $database->prepare("UPDATE users SET user_suspension_timestamp = :user_suspension_timestamp, user_deleted = :user_deleted WHERE user_id = :user_id LIMIT 1"); 26 $query->execute(array( 27 ':user_suspension_timestamp' => $suspensionTime, 28 ':user_deleted' => $delete, 29 ':user_id' => $userId 30 )); 31 32 if ($query->rowCount() == 1) { 33 Session::add('feedback_positive', Text::get('FEEDBACK_ACCOUNT_SUSPENSION_DELETION_STATUS')); 34 return true; 35 } 36 } 37 }