public function delete($user_id = NULL) { $user = $this->prepare_user($user_id); if ($this->ion_auth->is_admin($user_id)) { $url = 'manage_admins'; } elseif ($this->ion_auth->is_manager($user_id)) { $url = 'manage_accounts'; } else { $url = 'admin_users'; } if ($this->ion_auth->is_collaborator($user_id)) { $this->c_user->delete($user); } $user_deleted = $this->ion_auth->delete_user($user->id); if (!$user_deleted) { $this->addFlash(lang('delete_error', [$this->ion_auth->errors()])); redirect('admin/admin_users'); } $sender = $this->get('core.mail.sender'); $sender->sendUserDeleteMail(array('user' => $user)); $access_token = new Access_token(); $access_token->where('user_id', $user->id)->get()->delete_all(); $directory_user = new Directory_User(); $directory_user->where('user_id', $user->id)->get()->delete_all(); $facebook_fanpage = new Facebook_Fanpage(); $facebook_fanpage->where('user_id', $user->id)->get()->delete_all(); $keyword = new Keyword(); $keyword->where('user_id', $user->id)->get(); foreach ($keyword as $k) { $keyword_rank = new Keyword_rank(); $keyword_rank->where('keyword_id', $k->id)->get()->delete_all(); } $keyword->delete_all(); $media = new Media(); $media->where('user_id', $user->id)->get()->delete_all(); $post = new Post(); $post->where('user_id', $user->id)->get(); foreach ($post as $p) { $post_social = new Post_social(); $post_social->where('post_id', $p->id)->get()->delete_all(); } $post->delete_all(); $review = new Review(); $review->where('user_id', $user->id)->get()->delete_all(); $reviews_notification = new Reviews_notification(); $reviews_notification->where('user_id', $user->id)->get()->delete_all(); $rss_feeds_users = new Rss_feeds_users(); $rss_feeds_users->where('user_id', $user->id)->get()->delete_all(); $social_post = new Social_post(); $social_post->where('user_id', $user->id)->get()->delete_all(); $social_value = new Social_value(); $social_value->where('user_id', $user->id)->get()->delete_all(); $user_additional = new User_additional(); $user_additional->where('user_id', $user->id)->get()->delete_all(); $user_feed = new User_feed(); $user_feed->where('user_id', $user->id)->get()->delete_all(); $user_timezone = new User_timezone(); $user_timezone->where('user_id', $user->id)->get()->delete_all(); $this->addFlash(lang('delete_success'), 'success'); redirect('admin/' . $url); }
public function notf() { $this->load->helper('review_format'); $subject = 'New reviews'; $users = Reviews_notification::getUniqUsers(); foreach ($users as $user) { $dap_user = new User($user['user_id']); if (!$dap_user) { //Reviews_notification::deleteAllByUser($user['user_id']); continue; } $email = $dap_user->email; $reviews = Reviews_notification::getReviewsByUser($user['user_id']); if ($reviews->count()) { $notification = array('to' => $email, 'subject' => $subject, 'body' => array()); $notification['body']['body'] = $this->template->block('notify_review', 'templates/email/notify_review', array('reviews' => $reviews)); $notification['body']['content_type'] = 'text/html'; $sender = $this->get('core.mailer'); $sender->sendMail($notification['subject'], $notification['body'], $notification['to']); // $reviews->delete_all(); } } }
public function grabber(array $directory_user) { try { $directory = new DM_Directory($directory_user['directory_id']); if (!$directory->exists()) { throw new Exception('Directory id:' . $directory_user['directory_id'] . ' doesn\'t exist'); } if (!$directory->status) { throw new Exception('Directory id:' . $directory_user['directory_id'] . ' is disabled'); } $link = !empty($directory_user['additional']) ? $directory_user['additional'] : $directory_user['link']; $directory_parcer = Directory_Parser::factory($directory->type)->set_url($link); $reviews = $directory_parcer->get_reviews(); } catch (Exception $e) { throw $e; } //$today_midnight = strtotime('-7 day midnight'); $today_midnight = strtotime('-14 day midnight'); foreach ($reviews as $_review) { $review_model = new Review(); $review_model->from_array($_review); $review_model->user_id = $directory_user['user_id']; $review_model->directory_id = $directory_user['directory_id']; $review_model->posted_date = date('Y-m-d', $_review['posted']); $review_model->save(); // notify user about new review if (!empty($directory_user['notify_status']) && $_review['posted'] > $today_midnight && !empty($review_model->id) && !empty($directory_user['user_id']) && !empty($directory_user['notify'])) { $obj = Reviews_notification::addOne($directory_user['user_id'], $review_model->id); if (!$obj->id) { echo 'Error notification: ' . date('d-m-Y H:i') . ' - ' . $obj->error->string . PHP_EOL; } } } }