Exemple #1
0
<?php

require_once '/var/www/vendor/autoload.php';
use relive\models\Event;
use relive\models\Post;
use relive\models\PostEventRelationship;
foreach (Event::all() as $event) {
    $event_id = $event->event_id;
    $count = PostEventRelationship::where('event_id', '=', $event_id)->count();
    if ($count > 500) {
        $post = Post::whereIn('post_id', function ($query) use($event_id) {
            $query->select('post_id')->from('posteventrelationships')->where('event_id', '=', $event_id);
        })->orderBy('rankPoints', 'asc')->offset($count * 0.35)->limit(1)->first();
        $rankPoints = $post->rankPoints;
        PostEventRelationship::whereIn('post_id', function ($query) use($rankPoints) {
            $query->select('post_id')->from('posts')->where('rankPoints', '<', $rankPoints);
        })->where('event_id', '=', $event_id)->update(['isFiltered' => 1]);
        PostEventRelationship::whereIn('post_id', function ($query) use($rankPoints) {
            $query->select('post_id')->from('posts')->where('rankPoints', '>=', $rankPoints);
        })->where('event_id', '=', $event_id)->update(['isFiltered' => 0]);
    }
}
Exemple #2
0
 public static function reportPostFromEvent($event_id)
 {
     $app = \Slim\Slim::getInstance();
     $allPostVars = $app->request->post();
     $post_id = @$allPostVars['post_id'] ? $allPostVars['post_id'] : -1;
     if (isset($post_id) && $post_id != -1) {
         try {
             $relationship = \relive\models\PostEventRelationship::where('event_id', '=', $event_id)->where('post_id', '=', $post_id)->firstOrFail();
             $report = \relive\models\Report::create(['report_time' => time(), 'post_id' => $post_id]);
             echo json_encode($report, JSON_UNESCAPED_SLASHES);
         } catch (ModelNotFoundException $e) {
             $app->render(404, ['Status' => 'Relationship not found']);
         }
     }
 }