<?php require_once '/var/www/vendor/autoload.php'; use relive\Crawlers\TwitterCrawler; use relive\Crawlers\InstagramCrawler; use relive\Crawlers\GPlusCrawler; $event_id = $argv[1]; $event = \relive\models\Event::find($event_id); $twitterCrawler = TwitterCrawler::getInstance(); $instagramCrawler = InstagramCrawler::getInstance(); $gPlusCrawler = GPlusCrawler::getInstance(); $hashtagRelationships = \relive\models\EventHashtagRelationship::where('event_id', '=', $event->event_id)->get(); foreach ($hashtagRelationships as $hashtagRelationship) { $hashtag = \relive\models\Hashtag::find($hashtagRelationship->hashtag_id); $twitterCrawler->popularCrawl($event, $hashtag->hashtag); $instagramCrawler->initialCrawl($event, $hashtag->hashtag); $gPlusCrawler->initialCrawl($event, $hashtag->hashtag); }
public static function addHashtagToEvent($event_id) { $app = \Slim\Slim::getInstance(); $allPostVars = $app->request->post(); $hashtag = @$allPostVars['hashtag'] ? trim($allPostVars['hashtag']) : NULL; $hashtag = htmlspecialchars($hashtag, ENT_QUOTES, 'UTF-8'); if (!filter_var($event_id, FILTER_VALIDATE_INT) || is_null($hashtag) || strlen($hashtag) > 255 || empty($hashtag)) { $app->render(400, ['Status' => 'Invalid input.']); return; } $event = \relive\models\Event::find($event_id); $hashtag = \relive\models\Hashtag::firstOrCreate(['hashtag' => $hashtag]); $eventhashtagrelationship = \relive\models\EventHashtagRelationship::firstOrCreate(['event_id' => $event->event_id, 'hashtag_id' => $hashtag->hashtag_id]); if ($event) { echo json_encode($event, JSON_UNESCAPED_SLASHES); } else { $app->render(404, ['Status', 'Event not found.']); } }