예제 #1
0
 public static function deleteUser($user_id)
 {
     $db = JO_Db::getDefaultAdapter();
     $user_info = self::getUser($user_id);
     if (!$user_info) {
         return;
     }
     /*if($user_info['store'] == 's3') {
     			self::deleteImagesAmazon($user_info['avatar']);
     		} else {
     			if($user_info['avatar']) {
     				$model_image = new Helper_Images();
     				$model_image->deleteImages($user_info['avatar']);
     			}
     		}*/
     $query = $db->select()->from('boards')->where('user_id = ?', (string) $user_id);
     $rows = $db->fetchAll($query);
     if ($rows) {
         foreach ($rows as $row) {
             Model_Boards::delete($row['board_id']);
         }
     }
     $ext = Model_Extensions_Install::getByMethod('user_login');
     $front = JO_Front::getInstance();
     foreach ($ext as $login) {
         $model = $front->formatModuleName('model_' . $login . '_users');
         $instance = new $model();
         $instance->deleteByUserId($user_id);
     }
     $db->query("DELETE FROM url_alias WHERE query = 'user_id=" . (string) $user_id . "'");
     $db->delete('users_boards', array('user_id = ?' => (string) $user_id));
     $db->delete('shared_content', array('user_id = ?' => (string) $user_id));
     $db->delete('users_following', array('user_id = ?' => (string) $user_id));
     $db->delete('users_following', array('following_id = ?' => (string) $user_id));
     $db->delete('users_following_ignore', array('user_id = ?' => (string) $user_id));
     $db->delete('users_following_ignore', array('following_id = ?' => (string) $user_id));
     $db->delete('users_following_user', array('user_id = ?' => (string) $user_id));
     $db->delete('users_following_user', array('following_id = ?' => (string) $user_id));
     $db->delete('users_history', array('from_user_id = ?' => (string) $user_id));
     $db->delete('users_history', array('to_user_id = ?' => (string) $user_id));
     $db->delete('users', array('user_id = ?' => (string) $user_id));
 }