Completed
Pull Request — master (#1)
by Jacob
03:28
created
script/cron/fetch-blog-activity.php 1 patch
Indentation   +36 added lines, -36 removed lines patch added patch discarded remove patch
@@ -13,24 +13,24 @@  discard block
 block discarded – undo
13 13
 
14 14
 $blogFeed = Feed::loadRss('http://blog.jacobemerick.com/rss.xml');
15 15
 foreach ($blogFeed->item as $item) {
16
-    $datetime = new DateTime($item->pubDate);
17
-    if ($datetime <= $mostRecentBlogDateTime) {
18
-        break;
19
-    }
20
-
21
-    $uniqueBlogCheck = $blogRepository->getBlogByPermalink((string) $item->guid);
22
-    if ($uniqueBlogCheck !== false) {
23
-        continue;
24
-    }
25
-
26
-    $datetime->setTimezone($container['default_timezone']);
27
-    $metadata = json_decode(json_encode($item), true);
28
-
29
-    $blogRepository->insertBlog(
30
-        (string) $item->guid,
31
-        $datetime,
32
-        $metadata
33
-    );
16
+	$datetime = new DateTime($item->pubDate);
17
+	if ($datetime <= $mostRecentBlogDateTime) {
18
+		break;
19
+	}
20
+
21
+	$uniqueBlogCheck = $blogRepository->getBlogByPermalink((string) $item->guid);
22
+	if ($uniqueBlogCheck !== false) {
23
+		continue;
24
+	}
25
+
26
+	$datetime->setTimezone($container['default_timezone']);
27
+	$metadata = json_decode(json_encode($item), true);
28
+
29
+	$blogRepository->insertBlog(
30
+		(string) $item->guid,
31
+		$datetime,
32
+		$metadata
33
+	);
34 34
 }
35 35
 
36 36
 $blogCommentRepository = new BlogCommentRepository($container['db_connection_locator']);
@@ -41,22 +41,22 @@  discard block
 block discarded – undo
41 41
 
42 42
 $commentFeed = Feed::loadRss('http://blog.jacobemerick.com/rss-comments.xml');
43 43
 foreach ($commentFeed->item as $item) {
44
-    $datetime = new DateTime($item->pubDate);
45
-    if ($datetime <= $mostRecentBlogCommentDateTime) {
46
-        break;
47
-    }
48
-
49
-    $uniqueBlogCommentCheck = $blogCommentRepository->getBlogCommentByPermalink((string) $item->guid);
50
-    if ($uniqueBlogCommentCheck !== false) {
51
-        continue;
52
-    }
53
-
54
-    $datetime->setTimezone($container['default_timezone']);
55
-    $metadata = json_decode(json_encode($item), true);
56
-
57
-    $blogCommentRepository->insertBlogComment(
58
-        (string) $item->guid,
59
-        $datetime,
60
-        $metadata
61
-    );
44
+	$datetime = new DateTime($item->pubDate);
45
+	if ($datetime <= $mostRecentBlogCommentDateTime) {
46
+		break;
47
+	}
48
+
49
+	$uniqueBlogCommentCheck = $blogCommentRepository->getBlogCommentByPermalink((string) $item->guid);
50
+	if ($uniqueBlogCommentCheck !== false) {
51
+		continue;
52
+	}
53
+
54
+	$datetime->setTimezone($container['default_timezone']);
55
+	$metadata = json_decode(json_encode($item), true);
56
+
57
+	$blogCommentRepository->insertBlogComment(
58
+		(string) $item->guid,
59
+		$datetime,
60
+		$metadata
61
+	);
62 62
 }
Please login to merge, or discard this patch.
script/cron/fetch-goodreads-activity.php 1 patch
Indentation   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
 use Jacobemerick\Web\Domain\Stream\Goodread\MysqlGoodreadRepository as GoodreadRepository;
7 7
 
8 8
 $client = new Client([
9
-    'base_uri' => 'http://www.goodreads.com',
9
+	'base_uri' => 'http://www.goodreads.com',
10 10
 ]);
11 11
 
12 12
 $goodreadRepository = new GoodreadRepository($container['db_connection_locator']);
@@ -20,23 +20,23 @@  discard block
 block discarded – undo
20 20
 $reviews = simplexml_load_string($reviews, 'SimpleXMLElement', LIBXML_NOCDATA);
21 21
 
22 22
 foreach ($reviews->channel->item as $review) {
23
-    $datetime = new DateTime((string) $review->pubDate);
24
-    if ($datetime <= $mostRecentReviewDateTime) {
25
-        break;
26
-    }
27
-
28
-    $uniqueReviewCheck = $goodreadRepository->getReviewByPermalink((string) $review->guid);
29
-    if ($uniqueReviewCheck !== false) {
30
-        continue;
31
-    }
32
-
33
-    $datetime->setTimezone($container['default_timezone']);
34
-    $metadata = json_decode(json_encode($review), true);
35
-
36
-    $goodreadRepository->insertReview(
37
-        (string) $review->guid,
38
-        (string) $review->book_id,
39
-        $datetime,
40
-        $metadata
41
-    );
23
+	$datetime = new DateTime((string) $review->pubDate);
24
+	if ($datetime <= $mostRecentReviewDateTime) {
25
+		break;
26
+	}
27
+
28
+	$uniqueReviewCheck = $goodreadRepository->getReviewByPermalink((string) $review->guid);
29
+	if ($uniqueReviewCheck !== false) {
30
+		continue;
31
+	}
32
+
33
+	$datetime->setTimezone($container['default_timezone']);
34
+	$metadata = json_decode(json_encode($review), true);
35
+
36
+	$goodreadRepository->insertReview(
37
+		(string) $review->guid,
38
+		(string) $review->book_id,
39
+		$datetime,
40
+		$metadata
41
+	);
42 42
 }
Please login to merge, or discard this patch.
script/manual/historic-twitter-fetch.php 1 patch
Indentation   +29 added lines, -29 removed lines patch added patch discarded remove patch
@@ -4,17 +4,17 @@  discard block
 block discarded – undo
4 4
 
5 5
 $options = getopt('f:');
6 6
 if (empty($options['f'])) {
7
-    exit('Must pass in a file with the f parameter.');
7
+	exit('Must pass in a file with the f parameter.');
8 8
 }
9 9
 
10 10
 use Abraham\TwitterOAuth\TwitterOAuth;
11 11
 use Jacobemerick\Web\Domain\Stream\Twitter\MysqlTwitterRepository as TwitterRepository;
12 12
 
13 13
 $client = new TwitterOAuth(
14
-    $config->twitter->consumer_key,
15
-    $config->twitter->consumer_secret,
16
-    $config->twitter->access_token,
17
-    $config->twitter->access_token_secret
14
+	$config->twitter->consumer_key,
15
+	$config->twitter->consumer_secret,
16
+	$config->twitter->access_token,
17
+	$config->twitter->access_token_secret
18 18
 );
19 19
 $client->setDecodeJsonAsArray(true);
20 20
 
@@ -24,29 +24,29 @@  discard block
 block discarded – undo
24 24
 
25 25
 $handle = fopen(__DIR__ . '/' . $options['f'], 'r');
26 26
 while ($row = fgets($handle)) {
27
-    array_push($idList, trim($row));
28
-    if (count($idList) == 100) {
29
-        $tweetLookup = $client->get('statuses/lookup', [
30
-            'id' => implode(',', $idList),
31
-            'trim_user' => true,
32
-        ]);
33
-
34
-        foreach ($tweetLookup as $tweet) {
35
-            $uniqueTweetCheck = $twitterRepository->getTwitterByTweetId($tweet['id_str']);
36
-            if ($uniqueTweetCheck !== false) {
37
-                if ($uniqueTweetCheck['metadata'] != json_encode($tweet)) {
38
-                    $twitterRepository->updateTweetMetadata($tweet['id_str'], $tweet);
39
-                }
40
-                continue;
41
-            }
42
-
43
-            $twitterRepository->insertTweet(
44
-                $tweet['id_str'],
45
-                (new DateTime($tweet['created_at']))->setTimezone($container['default_timezone']),
46
-                $tweet
47
-            );
48
-        }
49
-        $idList = [];
50
-    }
27
+	array_push($idList, trim($row));
28
+	if (count($idList) == 100) {
29
+		$tweetLookup = $client->get('statuses/lookup', [
30
+			'id' => implode(',', $idList),
31
+			'trim_user' => true,
32
+		]);
33
+
34
+		foreach ($tweetLookup as $tweet) {
35
+			$uniqueTweetCheck = $twitterRepository->getTwitterByTweetId($tweet['id_str']);
36
+			if ($uniqueTweetCheck !== false) {
37
+				if ($uniqueTweetCheck['metadata'] != json_encode($tweet)) {
38
+					$twitterRepository->updateTweetMetadata($tweet['id_str'], $tweet);
39
+				}
40
+				continue;
41
+			}
42
+
43
+			$twitterRepository->insertTweet(
44
+				$tweet['id_str'],
45
+				(new DateTime($tweet['created_at']))->setTimezone($container['default_timezone']),
46
+				$tweet
47
+			);
48
+		}
49
+		$idList = [];
50
+	}
51 51
 }
52 52
 fclose($handle);
Please login to merge, or discard this patch.
src/Domain/Stream/Activity/ActivityRepositoryInterface.php 1 patch
Indentation   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -4,9 +4,9 @@
 block discarded – undo
4 4
 
5 5
 interface ActivityRepositoryInterface
6 6
 {
7
-    public function getActivityById($id);
8
-    public function getActivities($limit = null, $offset = 0);
9
-    public function getActivitiesCount();
10
-    public function getActivitiesByType($type, $limit = null, $offset = 0);
11
-    public function getActivitiesByTypeCount($type);
7
+	public function getActivityById($id);
8
+	public function getActivities($limit = null, $offset = 0);
9
+	public function getActivitiesCount();
10
+	public function getActivitiesByType($type, $limit = null, $offset = 0);
11
+	public function getActivitiesByTypeCount($type);
12 12
 }
Please login to merge, or discard this patch.
src/Domain/Stream/Activity/MysqlActivityRepository.php 1 patch
Indentation   +146 added lines, -146 removed lines patch added patch discarded remove patch
@@ -8,192 +8,192 @@
 block discarded – undo
8 8
 class MysqlActivityRepository implements ActivityRepositoryInterface
9 9
 {
10 10
 
11
-    /** @var  ConnectionLocator */
12
-    protected $connections;
13
-
14
-    /**
15
-     * @param ConnectonLocator $connections
16
-     */
17
-    public function __construct(ConnectionLocator $connections)
18
-    {
19
-        $this->connections = $connections;
20
-    }
21
-
22
-    /**
23
-     * @param integer $id
24
-     *
25
-     * @return array|false
26
-     */
27
-    public function getActivityById($id)
28
-    {
29
-        $query = "
11
+	/** @var  ConnectionLocator */
12
+	protected $connections;
13
+
14
+	/**
15
+	 * @param ConnectonLocator $connections
16
+	 */
17
+	public function __construct(ConnectionLocator $connections)
18
+	{
19
+		$this->connections = $connections;
20
+	}
21
+
22
+	/**
23
+	 * @param integer $id
24
+	 *
25
+	 * @return array|false
26
+	 */
27
+	public function getActivityById($id)
28
+	{
29
+		$query = "
30 30
             SELECT *
31 31
             FROM `jpemeric_stream`.`activity`
32 32
             WHERE `id` = :id
33 33
             LIMIT 1";
34
-        $bindings = [
35
-            'id' => $id,
36
-        ];
37
-
38
-        return $this
39
-            ->connections
40
-            ->getRead()
41
-            ->fetchOne($query, $bindings);
42
-    }
43
-
44
-    public function getActivityByTypeId($type, $typeId)
45
-    {
46
-        $query = "
34
+		$bindings = [
35
+			'id' => $id,
36
+		];
37
+
38
+		return $this
39
+			->connections
40
+			->getRead()
41
+			->fetchOne($query, $bindings);
42
+	}
43
+
44
+	public function getActivityByTypeId($type, $typeId)
45
+	{
46
+		$query = "
47 47
             SELECT *
48 48
             FROM `jpemeric_stream`.`activity`
49 49
             WHERE `type` = :type && `type_id` = :type_id
50 50
             LIMIT 1";
51
-        $bindings = [
52
-            'type'    => $type,
53
-            'type_id' => $typeId,
54
-        ];
55
-
56
-        return $this
57
-            ->connections
58
-            ->getRead()
59
-            ->fetchOne($query, $bindings);
60
-    }
61
-
62
-    public function getActivityLastUpdateByType($type)
63
-    {
64
-        $query = "
51
+		$bindings = [
52
+			'type'    => $type,
53
+			'type_id' => $typeId,
54
+		];
55
+
56
+		return $this
57
+			->connections
58
+			->getRead()
59
+			->fetchOne($query, $bindings);
60
+	}
61
+
62
+	public function getActivityLastUpdateByType($type)
63
+	{
64
+		$query = "
65 65
             SELECT *
66 66
             FROM `jpemeric_stream`.`activity`
67 67
             WHERE `type` = :type
68 68
             ORDER BY `updated_at` DESC
69 69
             LIMIT 1";
70 70
 
71
-        $bindings = [
72
-            'type' => $type,
73
-        ];
74
-
75
-        return $this
76
-            ->connections
77
-            ->getRead()
78
-            ->fetchOne($query, $bindings);
79
-    }
80
-
81
-    /**
82
-     * @param integer $limit
83
-     * @param integer $offset
84
-     *
85
-     * @return array|false
86
-     */
87
-    public function getActivities($limit = null, $offset = 0)
88
-    {
89
-        $query = "
71
+		$bindings = [
72
+			'type' => $type,
73
+		];
74
+
75
+		return $this
76
+			->connections
77
+			->getRead()
78
+			->fetchOne($query, $bindings);
79
+	}
80
+
81
+	/**
82
+	 * @param integer $limit
83
+	 * @param integer $offset
84
+	 *
85
+	 * @return array|false
86
+	 */
87
+	public function getActivities($limit = null, $offset = 0)
88
+	{
89
+		$query = "
90 90
             SELECT *
91 91
             FROM `jpemeric_stream`.`activity`
92 92
             ORDER BY `datetime` DESC";
93
-        if (!is_null($limit)) {
94
-            $query .= "
93
+		if (!is_null($limit)) {
94
+			$query .= "
95 95
             LIMIT {$offset}, {$limit}";
96
-        }
96
+		}
97 97
 
98
-        return $this
99
-            ->connections
100
-            ->getRead()
101
-            ->fetchAll($query);
102
-    }
98
+		return $this
99
+			->connections
100
+			->getRead()
101
+			->fetchAll($query);
102
+	}
103 103
 
104
-    public function getActivitiesCount()
105
-    {
106
-        $query = "
104
+	public function getActivitiesCount()
105
+	{
106
+		$query = "
107 107
             SELECT COUNT(1) AS `count`
108 108
             FROM `jpemeric_stream`.`activity`";
109 109
 
110
-        return $this
111
-            ->connections
112
-            ->getRead()
113
-            ->fetchValue($query);
114
-    }
110
+		return $this
111
+			->connections
112
+			->getRead()
113
+			->fetchValue($query);
114
+	}
115 115
 
116
-    public function getActivitiesByType($type, $limit = null, $offset = 0)
117
-    {
118
-        $query = "
116
+	public function getActivitiesByType($type, $limit = null, $offset = 0)
117
+	{
118
+		$query = "
119 119
             SELECT *
120 120
             FROM `jpemeric_stream`.`activity`
121 121
             WHERE `type` = :type
122 122
             ORDER BY `datetime` DESC";
123
-        if (!is_null($limit)) {
124
-            $query .= "
123
+		if (!is_null($limit)) {
124
+			$query .= "
125 125
             LIMIT {$offset}, {$limit}";
126
-        }
127
-        $bindings = [
128
-            'type' => $type,
129
-        ];
130
-
131
-        return $this
132
-            ->connections
133
-            ->getRead()
134
-            ->fetchAll($query, $bindings);
135
-    }
136
-
137
-    public function getActivitiesByTypeCount($type)
138
-    {
139
-        $query = "
126
+		}
127
+		$bindings = [
128
+			'type' => $type,
129
+		];
130
+
131
+		return $this
132
+			->connections
133
+			->getRead()
134
+			->fetchAll($query, $bindings);
135
+	}
136
+
137
+	public function getActivitiesByTypeCount($type)
138
+	{
139
+		$query = "
140 140
             SELECT COUNT(1) AS `count`
141 141
             FROM `jpemeric_stream`.`activity`
142 142
             WHERE `type` = :type";
143
-        $bindings = [
144
-            'type' => $type,
145
-        ];
146
-
147
-        return $this
148
-            ->connections
149
-            ->getRead()
150
-            ->fetchValue($query, $bindings);
151
-    }
152
-
153
-    public function insertActivity(
154
-        $message,
155
-        $messageLong,
156
-        DateTime $datetime,
157
-        array $metadata,
158
-        $type,
159
-        $typeId
160
-    ) {
161
-        $query = "
143
+		$bindings = [
144
+			'type' => $type,
145
+		];
146
+
147
+		return $this
148
+			->connections
149
+			->getRead()
150
+			->fetchValue($query, $bindings);
151
+	}
152
+
153
+	public function insertActivity(
154
+		$message,
155
+		$messageLong,
156
+		DateTime $datetime,
157
+		array $metadata,
158
+		$type,
159
+		$typeId
160
+	) {
161
+		$query = "
162 162
             INSERT INTO `jpemeric_stream`.`activity`
163 163
                 (`message`, `message_long`, `datetime`, `metadata`, `type`, `type_id`)
164 164
             VALUES
165 165
                 (:message, :message_long, :datetime, :metadata, :type, :type_id)";
166 166
 
167
-        $bindings = [
168
-            'message' => $message,
169
-            'message_long' => $messageLong,
170
-            'datetime' => $datetime->format('Y-m-d H:i:s'),
171
-            'metadata' => json_encode($metadata),
172
-            'type' => $type,
173
-            'type_id' => $typeId,
174
-        ];
175
-
176
-        return $this
177
-            ->connections
178
-            ->getWrite()
179
-            ->perform($query, $bindings);
180
-    }
181
-
182
-    public function updateActivityMetadata($activityId, array $metadata)
183
-    {
184
-        $query = "
167
+		$bindings = [
168
+			'message' => $message,
169
+			'message_long' => $messageLong,
170
+			'datetime' => $datetime->format('Y-m-d H:i:s'),
171
+			'metadata' => json_encode($metadata),
172
+			'type' => $type,
173
+			'type_id' => $typeId,
174
+		];
175
+
176
+		return $this
177
+			->connections
178
+			->getWrite()
179
+			->perform($query, $bindings);
180
+	}
181
+
182
+	public function updateActivityMetadata($activityId, array $metadata)
183
+	{
184
+		$query = "
185 185
             UPDATE `jpemeric_stream`.`activity`
186 186
             SET `metadata` = :metadata
187 187
             WHERE `id` = :id";
188 188
 
189
-        $bindings = [
190
-            'metadata' => json_encode($metadata),
191
-            'id' => $activityId,
192
-        ];
189
+		$bindings = [
190
+			'metadata' => json_encode($metadata),
191
+			'id' => $activityId,
192
+		];
193 193
 
194
-        return $this
195
-            ->connections
196
-            ->getWrite()
197
-            ->perform($query, $bindings);
198
-    }
194
+		return $this
195
+			->connections
196
+			->getWrite()
197
+			->perform($query, $bindings);
198
+	}
199 199
 }
Please login to merge, or discard this patch.
src/Domain/Stream/DailyMile/MysqlDailyMileRepository.php 1 patch
Indentation   +82 added lines, -82 removed lines patch added patch discarded remove patch
@@ -8,106 +8,106 @@
 block discarded – undo
8 8
 class MysqlDailyMileRepository implements DailyMileRepositoryInterface
9 9
 {
10 10
 
11
-    /** @var  ConnectionLocator */
12
-    protected $connections;
13
-
14
-    /**
15
-     * @param ConnectonLocator $connections
16
-     */
17
-    public function __construct(ConnectionLocator $connections)
18
-    {
19
-        $this->connections = $connections;
20
-    }
21
-
22
-    /**
23
-     * @param integer $limit
24
-     * @param integer $offset
25
-     *
26
-     * @return array|false
27
-     */
28
-    public function getEntries($limit = null, $offset = 0)
29
-    {
30
-        $query = "
11
+	/** @var  ConnectionLocator */
12
+	protected $connections;
13
+
14
+	/**
15
+	 * @param ConnectonLocator $connections
16
+	 */
17
+	public function __construct(ConnectionLocator $connections)
18
+	{
19
+		$this->connections = $connections;
20
+	}
21
+
22
+	/**
23
+	 * @param integer $limit
24
+	 * @param integer $offset
25
+	 *
26
+	 * @return array|false
27
+	 */
28
+	public function getEntries($limit = null, $offset = 0)
29
+	{
30
+		$query = "
31 31
             SELECT `id`, `entry_id`, `datetime`
32 32
             FROM `jpemeric_stream`.`dailymile`
33 33
             ORDER BY `datetime` DESC";
34
-        if (!is_null($limit)) {
35
-          $query .= "
34
+		if (!is_null($limit)) {
35
+		  $query .= "
36 36
           LIMIT {$offset}, {$limit}";
37
-        }
38
-
39
-        return $this
40
-            ->connections
41
-            ->getRead()
42
-            ->fetchAll($query);
43
-    }
44
-
45
-    /**
46
-     * @param integer $entryId
47
-     *
48
-     * @return array|false
49
-     */
50
-    public function getEntryByEntryId($entryId)
51
-    {
52
-        $query = "
37
+		}
38
+
39
+		return $this
40
+			->connections
41
+			->getRead()
42
+			->fetchAll($query);
43
+	}
44
+
45
+	/**
46
+	 * @param integer $entryId
47
+	 *
48
+	 * @return array|false
49
+	 */
50
+	public function getEntryByEntryId($entryId)
51
+	{
52
+		$query = "
53 53
             SELECT *
54 54
             FROM `jpemeric_stream`.`dailymile`
55 55
             WHERE `entry_id` = :entry_id
56 56
             LIMIT 1";
57 57
 
58
-        $bindings = [
59
-            'entry_id' => $entryId,
60
-        ];
58
+		$bindings = [
59
+			'entry_id' => $entryId,
60
+		];
61 61
 
62
-        return $this
63
-            ->connections
64
-            ->getRead()
65
-            ->fetchOne($query, $bindings);
66
-    }
62
+		return $this
63
+			->connections
64
+			->getRead()
65
+			->fetchOne($query, $bindings);
66
+	}
67 67
 
68
-    public function getDailyMilesUpdatedSince(DateTime $datetime)
69
-    {
70
-        $query = "
68
+	public function getDailyMilesUpdatedSince(DateTime $datetime)
69
+	{
70
+		$query = "
71 71
             SELECT *
72 72
             FROM `jpemeric_stream`.`dailymile`
73 73
             WHERE `updated_at` >= :last_update";
74 74
 
75
-        $bindings = [
76
-            'last_update' => $datetime->format('Y-m-d H:i:s'),
77
-        ];
78
-
79
-        return $this
80
-            ->connections
81
-            ->getRead()
82
-            ->fetchAll($query, $bindings);
83
-    }
84
-
85
-    /**
86
-     * @param integer  $entryId
87
-     * @param string   $entryType
88
-     * @param DateTime $datetime
89
-     * @param array    $metadata
90
-     *
91
-     * @return
92
-     */
93
-    public function insertEntry($entryId, $entryType, DateTime $datetime, array $metadata)
94
-    {
95
-        $query = "
75
+		$bindings = [
76
+			'last_update' => $datetime->format('Y-m-d H:i:s'),
77
+		];
78
+
79
+		return $this
80
+			->connections
81
+			->getRead()
82
+			->fetchAll($query, $bindings);
83
+	}
84
+
85
+	/**
86
+	 * @param integer  $entryId
87
+	 * @param string   $entryType
88
+	 * @param DateTime $datetime
89
+	 * @param array    $metadata
90
+	 *
91
+	 * @return
92
+	 */
93
+	public function insertEntry($entryId, $entryType, DateTime $datetime, array $metadata)
94
+	{
95
+		$query = "
96 96
             INSERT INTO `jpemeric_stream`.`dailymile`
97 97
                 (`entry_id`, `type`, `datetime`, `metadata`)
98 98
             VALUES
99 99
                 (:entry_id, :entry_type, :datetime, :metadata)";
100 100
 
101
-        $bindings = [
102
-            'entry_id' => $entryId,
103
-            'entry_type' => $entryType,
104
-            'datetime' => $datetime->format('Y-m-d H:i:s'),
105
-            'metadata' => json_encode($metadata),
106
-        ];
107
-
108
-        return $this
109
-            ->connections
110
-            ->getWrite()
111
-            ->perform($query, $bindings);
112
-    }
101
+		$bindings = [
102
+			'entry_id' => $entryId,
103
+			'entry_type' => $entryType,
104
+			'datetime' => $datetime->format('Y-m-d H:i:s'),
105
+			'metadata' => json_encode($metadata),
106
+		];
107
+
108
+		return $this
109
+			->connections
110
+			->getWrite()
111
+			->perform($query, $bindings);
112
+	}
113 113
 }
Please login to merge, or discard this patch.
src/Domain/Stream/Goodread/MysqlGoodreadRepository.php 1 patch
Indentation   +65 added lines, -65 removed lines patch added patch discarded remove patch
@@ -8,93 +8,93 @@
 block discarded – undo
8 8
 class MysqlGoodreadRepository implements GoodreadRepositoryInterface
9 9
 {
10 10
 
11
-    /** @var  ConnectionLocator */
12
-    protected $connections;
13
-
14
-    /**
15
-     * @param ConnectonLocator $connections
16
-     */
17
-    public function __construct(ConnectionLocator $connections)
18
-    {
19
-        $this->connections = $connections;
20
-    }
21
-
22
-    /**
23
-     * @param integer $limit
24
-     * @param integer $offset
25
-     *
26
-     * @return array|false
27
-     */
28
-    public function getReviews($limit = null, $offset = 0)
29
-    {
30
-        $query = "
11
+	/** @var  ConnectionLocator */
12
+	protected $connections;
13
+
14
+	/**
15
+	 * @param ConnectonLocator $connections
16
+	 */
17
+	public function __construct(ConnectionLocator $connections)
18
+	{
19
+		$this->connections = $connections;
20
+	}
21
+
22
+	/**
23
+	 * @param integer $limit
24
+	 * @param integer $offset
25
+	 *
26
+	 * @return array|false
27
+	 */
28
+	public function getReviews($limit = null, $offset = 0)
29
+	{
30
+		$query = "
31 31
             SELECT `id`, `permalink`, `datetime`
32 32
             FROM `jpemeric_stream`.`goodread`
33 33
             ORDER BY `datetime` DESC";
34
-        if (!is_null($limit)) {
35
-          $query .= "
34
+		if (!is_null($limit)) {
35
+		  $query .= "
36 36
           LIMIT {$offset}, {$limit}";
37
-        }
37
+		}
38 38
 
39
-        return $this
40
-            ->connections
41
-            ->getRead()
42
-            ->fetchAll($query);
43
-    }
39
+		return $this
40
+			->connections
41
+			->getRead()
42
+			->fetchAll($query);
43
+	}
44 44
 
45
-    public function getReviewByPermalink($permalink)
46
-    {
47
-        $query = "
45
+	public function getReviewByPermalink($permalink)
46
+	{
47
+		$query = "
48 48
             SELECT *
49 49
             FROM `jpemeric_stream`.`goodread`
50 50
             WHERE `permalink` = :permalink
51 51
             LIMIT 1";
52 52
 
53
-        $bindings = [
54
-            'permalink' => $permalink,
55
-        ];
53
+		$bindings = [
54
+			'permalink' => $permalink,
55
+		];
56 56
 
57
-        return $this
58
-            ->connections
59
-            ->getRead()
60
-            ->fetchOne($query, $bindings);
61
-    }
57
+		return $this
58
+			->connections
59
+			->getRead()
60
+			->fetchOne($query, $bindings);
61
+	}
62 62
 
63
-    public function getGoodreadsUpdatedSince(DateTime $datetime)
64
-    {
65
-        $query = "
63
+	public function getGoodreadsUpdatedSince(DateTime $datetime)
64
+	{
65
+		$query = "
66 66
             SELECT *
67 67
             FROM `jpemeric_stream`.`goodread`
68 68
             WHERE `updated_at` >= :last_update";
69 69
 
70
-        $bindings = [
71
-            'last_update' => $datetime->format('Y-m-d H:i:s'),
72
-        ];
70
+		$bindings = [
71
+			'last_update' => $datetime->format('Y-m-d H:i:s'),
72
+		];
73 73
 
74
-        return $this
75
-            ->connections
76
-            ->getRead()
77
-            ->fetchAll($query, $bindings);
78
-    }
74
+		return $this
75
+			->connections
76
+			->getRead()
77
+			->fetchAll($query, $bindings);
78
+	}
79 79
 
80
-    public function insertReview($permalink, $bookId, DateTime $datetime, array $metadata)
81
-    {
82
-        $query = "
80
+	public function insertReview($permalink, $bookId, DateTime $datetime, array $metadata)
81
+	{
82
+		$query = "
83 83
             INSERT INTO `jpemeric_stream`.`goodread`
84 84
                 (`permalink`, `book_id`, `datetime`, `metadata`)
85 85
             VALUES
86 86
                 (:permalink, :book_id, :datetime, :metadata)";
87 87
 
88
-        $bindings = [
89
-            'permalink' => $permalink,
90
-            'book_id' => $bookId,
91
-            'datetime' => $datetime->format('Y-m-d H:i:s'),
92
-            'metadata' => json_encode($metadata),
93
-        ];
94
-
95
-        return $this
96
-            ->connections
97
-            ->getWrite()
98
-            ->perform($query, $bindings);
99
-    }
88
+		$bindings = [
89
+			'permalink' => $permalink,
90
+			'book_id' => $bookId,
91
+			'datetime' => $datetime->format('Y-m-d H:i:s'),
92
+			'metadata' => json_encode($metadata),
93
+		];
94
+
95
+		return $this
96
+			->connections
97
+			->getWrite()
98
+			->perform($query, $bindings);
99
+	}
100 100
 }
Please login to merge, or discard this patch.
src/Domain/Stream/Github/MysqlGithubRepository.php 1 patch
Indentation   +75 added lines, -75 removed lines patch added patch discarded remove patch
@@ -8,104 +8,104 @@
 block discarded – undo
8 8
 class MysqlGithubRepository implements GithubRepositoryInterface
9 9
 {
10 10
 
11
-    /** @var  ConnectionLocator */
12
-    protected $connections;
11
+	/** @var  ConnectionLocator */
12
+	protected $connections;
13 13
 
14
-    /**
15
-     * @param ConnectonLocator $connections
16
-     */
17
-    public function __construct(ConnectionLocator $connections)
18
-    {
19
-        $this->connections = $connections;
20
-    }
14
+	/**
15
+	 * @param ConnectonLocator $connections
16
+	 */
17
+	public function __construct(ConnectionLocator $connections)
18
+	{
19
+		$this->connections = $connections;
20
+	}
21 21
 
22
-    /**
23
-     * @param integer $limit
24
-     * @param integer $offset
25
-     *
26
-     * @return array|false
27
-     */
28
-    public function getEvents($limit = null, $offset = 0)
29
-    {
30
-        $query = "
22
+	/**
23
+	 * @param integer $limit
24
+	 * @param integer $offset
25
+	 *
26
+	 * @return array|false
27
+	 */
28
+	public function getEvents($limit = null, $offset = 0)
29
+	{
30
+		$query = "
31 31
             SELECT `id`, `event_id`, `datetime`
32 32
             FROM `jpemeric_stream`.`github`
33 33
             ORDER BY `datetime` DESC";
34
-        if (!is_null($limit)) {
35
-            $query .= "
34
+		if (!is_null($limit)) {
35
+			$query .= "
36 36
             LIMIT {$offset}, {$limit}";
37
-        }
37
+		}
38 38
 
39
-        return $this
40
-            ->connections
41
-            ->getRead()
42
-            ->fetchAll($query);
43
-    }
39
+		return $this
40
+			->connections
41
+			->getRead()
42
+			->fetchAll($query);
43
+	}
44 44
 
45
-    /**
46
-     * @param integer $eventId
47
-     *
48
-     * @return array|false
49
-     */
50
-    public function getEventByEventId($eventId)
51
-    {
52
-        $query = "
45
+	/**
46
+	 * @param integer $eventId
47
+	 *
48
+	 * @return array|false
49
+	 */
50
+	public function getEventByEventId($eventId)
51
+	{
52
+		$query = "
53 53
             SELECT *
54 54
             FROM `jpemeric_stream`.`github`
55 55
             WHERE `event_id` = :event_id
56 56
             LIMIT 1";
57 57
 
58
-        $bindings = [
59
-            'event_id' => $eventId,
60
-        ];
58
+		$bindings = [
59
+			'event_id' => $eventId,
60
+		];
61 61
 
62
-        return $this
63
-            ->connections
64
-            ->getRead()
65
-            ->fetchOne($query, $bindings);
66
-    }
62
+		return $this
63
+			->connections
64
+			->getRead()
65
+			->fetchOne($query, $bindings);
66
+	}
67 67
 
68
-    public function getGithubsUpdatedSince(DateTime $datetime)
69
-    {
70
-        $query = "
68
+	public function getGithubsUpdatedSince(DateTime $datetime)
69
+	{
70
+		$query = "
71 71
             SELECT *
72 72
             FROM `jpemeric_stream`.`github`
73 73
             WHERE `updated_at` >= :last_update";
74
-        $bindings = [
75
-            'last_update' => $datetime->format('Y-m-d H:i:s'),
76
-        ];
77
-        return $this
78
-            ->connections
79
-            ->getRead()
80
-            ->fetchAll($query, $bindings);
81
-    }
74
+		$bindings = [
75
+			'last_update' => $datetime->format('Y-m-d H:i:s'),
76
+		];
77
+		return $this
78
+			->connections
79
+			->getRead()
80
+			->fetchAll($query, $bindings);
81
+	}
82 82
 
83
-    /**
84
-     * @param integer  $eventId
85
-     * @param string   $eventType
86
-     * @param DateTime $datetime
87
-     * @param array    $metadata
88
-     *
89
-     * @return
90
-     */
91
-    public function insertEvent($eventId, $eventType, DateTime $datetime, array $metadata)
92
-    {
93
-        $query = "
83
+	/**
84
+	 * @param integer  $eventId
85
+	 * @param string   $eventType
86
+	 * @param DateTime $datetime
87
+	 * @param array    $metadata
88
+	 *
89
+	 * @return
90
+	 */
91
+	public function insertEvent($eventId, $eventType, DateTime $datetime, array $metadata)
92
+	{
93
+		$query = "
94 94
             INSERT INTO `jpemeric_stream`.`github`
95 95
                 (`event_id`, `type`, `datetime`, `metadata`)
96 96
             VALUES
97 97
                 (:event_id, :event_type, :datetime, :metadata)";
98 98
 
99
-        $bindings = [
100
-            'event_id' => $eventId,
101
-            'event_type' => $eventType,
102
-            'datetime' => $datetime->format('Y-m-d H:i:s'),
103
-            'metadata' => json_encode($metadata),
104
-        ];
99
+		$bindings = [
100
+			'event_id' => $eventId,
101
+			'event_type' => $eventType,
102
+			'datetime' => $datetime->format('Y-m-d H:i:s'),
103
+			'metadata' => json_encode($metadata),
104
+		];
105 105
 
106
-        return $this
107
-            ->connections
108
-            ->getWrite()
109
-            ->perform($query, $bindings);
110
-    }
106
+		return $this
107
+			->connections
108
+			->getWrite()
109
+			->perform($query, $bindings);
110
+	}
111 111
 }
Please login to merge, or discard this patch.
script/cron/build-activity-stream.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -406,7 +406,7 @@
 block discarded – undo
406 406
 
407 407
     $messageLong = $twitterData['text'];
408 408
     krsort($entityHolder);
409
-    foreach($entityHolder as $entity)
409
+    foreach ($entityHolder as $entity)
410 410
     {
411 411
         $messageLong = substr_replace(
412 412
             $messageLong,
Please login to merge, or discard this patch.
Indentation   +402 added lines, -402 removed lines patch added patch discarded remove patch
@@ -11,42 +11,42 @@  discard block
 block discarded – undo
11 11
 
12 12
 $lastBlogActivity = $activityRepository->getActivityLastUpdateByType('blog');
13 13
 if ($lastBlogActivity === false) {
14
-    $lastBlogActivityDateTime = new DateTime('2008-05-03');
14
+	$lastBlogActivityDateTime = new DateTime('2008-05-03');
15 15
 } else {
16
-    $lastBlogActivityDateTime = new DateTime($lastBlogActivity['updated_at']);
17
-    $lastBlogActivityDateTime->modify('-5 days');
16
+	$lastBlogActivityDateTime = new DateTime($lastBlogActivity['updated_at']);
17
+	$lastBlogActivityDateTime->modify('-5 days');
18 18
 }
19 19
 $newBlogActivity = $blogRepository->getBlogsUpdatedSince($lastBlogActivityDateTime);
20 20
 foreach ($newBlogActivity as $blog) {
21
-    $uniqueBlogCheck = $activityRepository->getActivityByTypeId('blog', $blog['id']);
22
-    if ($uniqueBlogCheck !== false) {
23
-        continue;
24
-    }
25
-
26
-    $blogData = json_decode($blog['metadata'], true);
27
-    $message = sprintf(
28
-        'Blogged about %s | %s.',
29
-        str_replace('-', ' ', $blogData['category']),
30
-        $blogData['title']
31
-    );
32
-    $messageLong = sprintf(
33
-        "<h4><a href=\"%s\" title=\"Jacob Emerick's Blog | %s\">%s</a></h4>\n" .
34
-        "<p>%s [<a href=\"%s\">read more</a></a>]</p>",
35
-        $blogData['link'],
36
-        $blogData['title'],
37
-        $blogData['title'],
38
-        htmlentities($blogData['description']),
39
-        $blogData['link']
40
-    );
41
-
42
-    $activityRepository->insertActivity(
43
-        $message,
44
-        $messageLong,
45
-        (new DateTime($blog['datetime'])),
46
-        [],
47
-        'blog',
48
-        $blog['id']
49
-    );
21
+	$uniqueBlogCheck = $activityRepository->getActivityByTypeId('blog', $blog['id']);
22
+	if ($uniqueBlogCheck !== false) {
23
+		continue;
24
+	}
25
+
26
+	$blogData = json_decode($blog['metadata'], true);
27
+	$message = sprintf(
28
+		'Blogged about %s | %s.',
29
+		str_replace('-', ' ', $blogData['category']),
30
+		$blogData['title']
31
+	);
32
+	$messageLong = sprintf(
33
+		"<h4><a href=\"%s\" title=\"Jacob Emerick's Blog | %s\">%s</a></h4>\n" .
34
+		"<p>%s [<a href=\"%s\">read more</a></a>]</p>",
35
+		$blogData['link'],
36
+		$blogData['title'],
37
+		$blogData['title'],
38
+		htmlentities($blogData['description']),
39
+		$blogData['link']
40
+	);
41
+
42
+	$activityRepository->insertActivity(
43
+		$message,
44
+		$messageLong,
45
+		(new DateTime($blog['datetime'])),
46
+		[],
47
+		'blog',
48
+		$blog['id']
49
+	);
50 50
 }
51 51
 
52 52
 use Jacobemerick\Web\Domain\Stream\BlogComment\MysqlBlogCommentRepository as BlogCommentRepository;
@@ -54,30 +54,30 @@  discard block
 block discarded – undo
54 54
 $blogCommentActivity = $blogCommentRepository->getBlogComments();
55 55
 $blogCommentHolder = [];
56 56
 foreach ($blogCommentActivity as $blogComment) {
57
-    $blogPermalink = $blogComment['permalink'];
58
-    $blogPermalink = explode('#', $blogPermalink);
59
-    $blogPermalink = current($blogPermalink);
60
-
61
-    $blog = $blogRepository->getBlogByPermalink($blogPermalink);
62
-    if (!array_key_exists($blog['id'], $blogCommentHolder)) {
63
-        $blogCommentHolder[$blog['id']] = 1;
64
-    } else {
65
-        $blogCommentHolder[$blog['id']]++;
66
-    }
57
+	$blogPermalink = $blogComment['permalink'];
58
+	$blogPermalink = explode('#', $blogPermalink);
59
+	$blogPermalink = current($blogPermalink);
60
+
61
+	$blog = $blogRepository->getBlogByPermalink($blogPermalink);
62
+	if (!array_key_exists($blog['id'], $blogCommentHolder)) {
63
+		$blogCommentHolder[$blog['id']] = 1;
64
+	} else {
65
+		$blogCommentHolder[$blog['id']]++;
66
+	}
67 67
 }
68 68
 
69 69
 foreach ($blogCommentHolder as $blogId => $commentCount) {
70
-    $blogActivity = $activityRepository->getActivityByTypeId('blog', $blogId);
71
-    $blogActivityMetadata = json_decode($blogActivity['metadata'], true);
72
-    if (
73
-        !isset($blogActivityMetadata['comments']) ||
74
-        $blogActivityMetadata['comments'] != $commentCount
75
-    ) {
76
-        $activityRepository->updateActivityMetadata(
77
-            $blogActivity['id'],
78
-            ['comments' => $commentCount]
79
-        );
80
-    }
70
+	$blogActivity = $activityRepository->getActivityByTypeId('blog', $blogId);
71
+	$blogActivityMetadata = json_decode($blogActivity['metadata'], true);
72
+	if (
73
+		!isset($blogActivityMetadata['comments']) ||
74
+		$blogActivityMetadata['comments'] != $commentCount
75
+	) {
76
+		$activityRepository->updateActivityMetadata(
77
+			$blogActivity['id'],
78
+			['comments' => $commentCount]
79
+		);
80
+	}
81 81
 }
82 82
 
83 83
 // distance
@@ -86,67 +86,67 @@  discard block
 block discarded – undo
86 86
 
87 87
 $lastDailyMileActivity = $activityRepository->getActivityLastUpdateByType('distance');
88 88
 if ($lastDailyMileActivity === false) {
89
-    $lastDailyMileActivityDateTime = new DateTime('2008-05-03');
89
+	$lastDailyMileActivityDateTime = new DateTime('2008-05-03');
90 90
 } else {
91
-    $lastDailyMileActivityDateTime = new DateTime($lastDailyMileActivity['updated_at']);
92
-    $lastDailyMileActivityDateTime->modify('-5 days');
91
+	$lastDailyMileActivityDateTime = new DateTime($lastDailyMileActivity['updated_at']);
92
+	$lastDailyMileActivityDateTime->modify('-5 days');
93 93
 }
94 94
 $newDailyMileActivity = $dailyMileRepository->getDailyMilesUpdatedSince($lastDailyMileActivityDateTime);
95 95
 foreach ($newDailyMileActivity as $dailyMile) {
96
-    $uniqueDailyMileCheck = $activityRepository->getActivityByTypeId('distance', $dailyMile['id']);
97
-    if ($uniqueDailyMileCheck !== false) {
98
-        continue;
99
-    }
100
-
101
-    $dailyMileData = json_decode($dailyMile['metadata'], true);
102
-    if ($dailyMile['type'] == 'Hiking') {
103
-        $message = sprintf(
104
-            '%s %.2f %s and felt %s.',
105
-            'Hiked',
106
-            $dailyMileData['workout']['distance']['value'],
107
-            $dailyMileData['workout']['distance']['units'],
108
-            $dailyMileData['workout']['felt']
109
-        );
110
-        $messageLong = "<p>{$message}</p>";
111
-        if (isset($dailyMileData['workout']['title'])) {
112
-            $messageLong .= "\n<p>I was hiking up around the {$dailyMileData['workout']['title']} area.</p>";
113
-        }
114
-    } else if ($dailyMile['type'] == 'Running') {
115
-        $message = sprintf(
116
-            '%s %.2f %s and felt %s.',
117
-            'Ran',
118
-            $dailyMileData['workout']['distance']['value'],
119
-            $dailyMileData['workout']['distance']['units'],
120
-            $dailyMileData['workout']['felt']
121
-        );
122
-        $messageLong = "<p>{$message}</p>";
123
-        if (isset($dailyMileData['message'])) {
124
-            $messageLong .= "\n<p>Afterwards, I was all like '{$dailyMileData['message']}'.</p>";
125
-        }
126
-    } else if ($dailyMile['type'] == 'Walking') {
127
-        $message = sprintf(
128
-            '%s %.2f %s and felt %s.',
129
-            'Walked',
130
-            $dailyMileData['workout']['distance']['value'],
131
-            $dailyMileData['workout']['distance']['units'],
132
-            $dailyMileData['workout']['felt']
133
-        );
134
-        $messageLong = "<p>{$message}</p>";
135
-        if (isset($dailyMileData['message'])) {
136
-            $messageLong .= "\n<p>{$dailyMileData['message']}</p>";
137
-        }
138
-    } else {
139
-        continue;
140
-    }
141
-
142
-    $activityRepository->insertActivity(
143
-        $message,
144
-        $messageLong,
145
-        (new DateTime($dailyMile['datetime'])),
146
-        [],
147
-        'distance',
148
-        $dailyMile['id']
149
-    );
96
+	$uniqueDailyMileCheck = $activityRepository->getActivityByTypeId('distance', $dailyMile['id']);
97
+	if ($uniqueDailyMileCheck !== false) {
98
+		continue;
99
+	}
100
+
101
+	$dailyMileData = json_decode($dailyMile['metadata'], true);
102
+	if ($dailyMile['type'] == 'Hiking') {
103
+		$message = sprintf(
104
+			'%s %.2f %s and felt %s.',
105
+			'Hiked',
106
+			$dailyMileData['workout']['distance']['value'],
107
+			$dailyMileData['workout']['distance']['units'],
108
+			$dailyMileData['workout']['felt']
109
+		);
110
+		$messageLong = "<p>{$message}</p>";
111
+		if (isset($dailyMileData['workout']['title'])) {
112
+			$messageLong .= "\n<p>I was hiking up around the {$dailyMileData['workout']['title']} area.</p>";
113
+		}
114
+	} else if ($dailyMile['type'] == 'Running') {
115
+		$message = sprintf(
116
+			'%s %.2f %s and felt %s.',
117
+			'Ran',
118
+			$dailyMileData['workout']['distance']['value'],
119
+			$dailyMileData['workout']['distance']['units'],
120
+			$dailyMileData['workout']['felt']
121
+		);
122
+		$messageLong = "<p>{$message}</p>";
123
+		if (isset($dailyMileData['message'])) {
124
+			$messageLong .= "\n<p>Afterwards, I was all like '{$dailyMileData['message']}'.</p>";
125
+		}
126
+	} else if ($dailyMile['type'] == 'Walking') {
127
+		$message = sprintf(
128
+			'%s %.2f %s and felt %s.',
129
+			'Walked',
130
+			$dailyMileData['workout']['distance']['value'],
131
+			$dailyMileData['workout']['distance']['units'],
132
+			$dailyMileData['workout']['felt']
133
+		);
134
+		$messageLong = "<p>{$message}</p>";
135
+		if (isset($dailyMileData['message'])) {
136
+			$messageLong .= "\n<p>{$dailyMileData['message']}</p>";
137
+		}
138
+	} else {
139
+		continue;
140
+	}
141
+
142
+	$activityRepository->insertActivity(
143
+		$message,
144
+		$messageLong,
145
+		(new DateTime($dailyMile['datetime'])),
146
+		[],
147
+		'distance',
148
+		$dailyMile['id']
149
+	);
150 150
 }
151 151
 
152 152
 // github
@@ -155,127 +155,127 @@  discard block
 block discarded – undo
155 155
 
156 156
 $lastGithubActivity = $activityRepository->getActivityLastUpdateByType('git');
157 157
 if ($lastGithubActivity === false) {
158
-    $lastGithubActivityDateTime = new DateTime('2015-10-01');
158
+	$lastGithubActivityDateTime = new DateTime('2015-10-01');
159 159
 } else {
160
-    $lastGithubActivityDateTime = new DateTime($lastGithubActivity['updated_at']);
161
-    $lastGithubActivityDateTime->modify('-5 days');
160
+	$lastGithubActivityDateTime = new DateTime($lastGithubActivity['updated_at']);
161
+	$lastGithubActivityDateTime->modify('-5 days');
162 162
 }
163 163
 $newGithubActivity = $githubRepository->getGithubsUpdatedSince($lastGithubActivityDateTime);
164 164
 foreach ($newGithubActivity as $github) {
165
-    $uniqueGithubCheck = $activityRepository->getActivityByTypeId('git', $github['id']);
166
-    if ($uniqueGithubCheck !== false) {
167
-        continue;
168
-    }
169
-
170
-    $githubData = json_decode($github['metadata'], true);
171
-
172
-    if ($github['type'] == 'CreateEvent') {
173
-        if (
174
-            $githubData['payload']['ref_type'] == 'branch' ||
175
-            $githubData['payload']['ref_type'] == 'tag'
176
-        ) {
177
-            $message = sprintf(
178
-                'Created %s %s at %s.',
179
-                $githubData['payload']['ref_type'],
180
-                $githubData['payload']['ref'],
181
-                $githubData['repo']['name']
182
-            );
183
-            $messageLong = sprintf(
184
-                '<p>Created %s %s at <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
185
-                $githubData['payload']['ref_type'],
186
-                $githubData['payload']['ref'],
187
-                "https://github.com/{$githubData['repo']['name']}",
188
-                $githubData['repo']['name'],
189
-                $githubData['repo']['name']
190
-            );
191
-        } else if ($githubData['payload']['ref_type'] == 'repository') {
192
-            $message = sprintf(
193
-                'Created %s %s.',
194
-                $githubData['payload']['ref_type'],
195
-                $githubData['repo']['name']
196
-            );
197
-            $messageLong = sprintf(
198
-                '<p>Created %s <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
199
-                $githubData['payload']['ref_type'],
200
-                "https://github.com/{$githubData['repo']['name']}",
201
-                $githubData['repo']['name'],
202
-                $githubData['repo']['name']
203
-            );
204
-        } else {
205
-            continue;
206
-        }
207
-    } else if ($github['type'] == 'ForkEvent') {
208
-        $message = sprintf(
209
-            'Forked %s to %s',
210
-            $githubData['repo']['name'],
211
-            $githubData['payload']['forkee']['full_name']
212
-        );
213
-        $messageLong = sprintf(
214
-            '<p>Forked <a href="%s" target="_blank" title="Github | %s">%s</a> to <a href="%s" target="_blank" title="Github | %s">%s</a>.',
215
-            "https://github.com/{$githubData['repo']['name']}",
216
-            $githubData['repo']['name'],
217
-            $githubData['repo']['name'],
218
-            $githubData['payload']['forkee']['html_url'],
219
-            $githubData['payload']['forkee']['full_name'],
220
-            $githubData['payload']['forkee']['full_name']
221
-        );
222
-    } else if ($github['type'] == 'PullRequestEvent') {
223
-        $message = sprintf(
224
-            '%s a pull request at %s',
225
-            ucwords($githubData['payload']['action']),
226
-            $githubData['repo']['name']
227
-        );
228
-        $messageLong = sprintf(
229
-            '<p>%s pull request <a href="%s" target="_blank" title="Github | %s PR %d">%d</a> at <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
230
-            ucwords($githubData['payload']['action']),
231
-            $githubData['payload']['pull_request']['html_url'],
232
-            $githubData['repo']['name'],
233
-            $githubData['payload']['number'],
234
-            $githubData['payload']['number'],
235
-            "https://github.com/{$githubData['repo']['name']}",
236
-            $githubData['repo']['name'],
237
-            $githubData['repo']['name']
238
-        );
239
-    } else if ($github['type'] == 'PushEvent') {
240
-        $message = sprintf(
241
-            'Pushed some code at %s.',
242
-            $githubData['repo']['name']
243
-        );
244
-        $messageLong = sprintf(
245
-            "<p>Pushed some code at <a href=\"%s\" target=\"_blank\" title=\"Github | %s\">%s</a>.</p>\n",
246
-            $githubData['payload']['ref'],
247
-            "https://github.com/{$githubData['repo']['name']}",
248
-            $githubData['repo']['name'],
249
-            $githubData['repo']['name']
250
-        );
251
-        $messageLong .= "<ul>\n";
252
-        foreach ($githubData['payload']['commits'] as $commit) {
253
-            $messageShort = $commit['message'];
254
-            $messageShort = strtok($messageShort, "\n");
255
-            if (strlen($messageShort) > 72) {
256
-                $messageShort = wordwrap($messageShort, 65);
257
-                $messageShort = strtok($messageShort, "\n");
258
-                $messageShort .= '...';
259
-            }
260
-            $messageLong .= sprintf(
261
-                "<li><a href=\"%s\" target=\"_blank\" title=\"Github | %s\">%s</a> %s.</p>\n",
262
-                "https://github.com/{$githubData['repo']['name']}/commit/{$commit['sha']}",
263
-                substr($commit['sha'], 0, 7),
264
-                substr($commit['sha'], 0, 7),
265
-                $messageShort
266
-            );
267
-        }
268
-        $messageLong .= "</ul>";
269
-    }
270
-
271
-    $activityRepository->insertActivity(
272
-        $message,
273
-        $messageLong,
274
-        (new DateTime($github['datetime'])),
275
-        [],
276
-        'git',
277
-        $github['id']
278
-    );
165
+	$uniqueGithubCheck = $activityRepository->getActivityByTypeId('git', $github['id']);
166
+	if ($uniqueGithubCheck !== false) {
167
+		continue;
168
+	}
169
+
170
+	$githubData = json_decode($github['metadata'], true);
171
+
172
+	if ($github['type'] == 'CreateEvent') {
173
+		if (
174
+			$githubData['payload']['ref_type'] == 'branch' ||
175
+			$githubData['payload']['ref_type'] == 'tag'
176
+		) {
177
+			$message = sprintf(
178
+				'Created %s %s at %s.',
179
+				$githubData['payload']['ref_type'],
180
+				$githubData['payload']['ref'],
181
+				$githubData['repo']['name']
182
+			);
183
+			$messageLong = sprintf(
184
+				'<p>Created %s %s at <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
185
+				$githubData['payload']['ref_type'],
186
+				$githubData['payload']['ref'],
187
+				"https://github.com/{$githubData['repo']['name']}",
188
+				$githubData['repo']['name'],
189
+				$githubData['repo']['name']
190
+			);
191
+		} else if ($githubData['payload']['ref_type'] == 'repository') {
192
+			$message = sprintf(
193
+				'Created %s %s.',
194
+				$githubData['payload']['ref_type'],
195
+				$githubData['repo']['name']
196
+			);
197
+			$messageLong = sprintf(
198
+				'<p>Created %s <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
199
+				$githubData['payload']['ref_type'],
200
+				"https://github.com/{$githubData['repo']['name']}",
201
+				$githubData['repo']['name'],
202
+				$githubData['repo']['name']
203
+			);
204
+		} else {
205
+			continue;
206
+		}
207
+	} else if ($github['type'] == 'ForkEvent') {
208
+		$message = sprintf(
209
+			'Forked %s to %s',
210
+			$githubData['repo']['name'],
211
+			$githubData['payload']['forkee']['full_name']
212
+		);
213
+		$messageLong = sprintf(
214
+			'<p>Forked <a href="%s" target="_blank" title="Github | %s">%s</a> to <a href="%s" target="_blank" title="Github | %s">%s</a>.',
215
+			"https://github.com/{$githubData['repo']['name']}",
216
+			$githubData['repo']['name'],
217
+			$githubData['repo']['name'],
218
+			$githubData['payload']['forkee']['html_url'],
219
+			$githubData['payload']['forkee']['full_name'],
220
+			$githubData['payload']['forkee']['full_name']
221
+		);
222
+	} else if ($github['type'] == 'PullRequestEvent') {
223
+		$message = sprintf(
224
+			'%s a pull request at %s',
225
+			ucwords($githubData['payload']['action']),
226
+			$githubData['repo']['name']
227
+		);
228
+		$messageLong = sprintf(
229
+			'<p>%s pull request <a href="%s" target="_blank" title="Github | %s PR %d">%d</a> at <a href="%s" target="_blank" title="Github | %s">%s</a>.</p>',
230
+			ucwords($githubData['payload']['action']),
231
+			$githubData['payload']['pull_request']['html_url'],
232
+			$githubData['repo']['name'],
233
+			$githubData['payload']['number'],
234
+			$githubData['payload']['number'],
235
+			"https://github.com/{$githubData['repo']['name']}",
236
+			$githubData['repo']['name'],
237
+			$githubData['repo']['name']
238
+		);
239
+	} else if ($github['type'] == 'PushEvent') {
240
+		$message = sprintf(
241
+			'Pushed some code at %s.',
242
+			$githubData['repo']['name']
243
+		);
244
+		$messageLong = sprintf(
245
+			"<p>Pushed some code at <a href=\"%s\" target=\"_blank\" title=\"Github | %s\">%s</a>.</p>\n",
246
+			$githubData['payload']['ref'],
247
+			"https://github.com/{$githubData['repo']['name']}",
248
+			$githubData['repo']['name'],
249
+			$githubData['repo']['name']
250
+		);
251
+		$messageLong .= "<ul>\n";
252
+		foreach ($githubData['payload']['commits'] as $commit) {
253
+			$messageShort = $commit['message'];
254
+			$messageShort = strtok($messageShort, "\n");
255
+			if (strlen($messageShort) > 72) {
256
+				$messageShort = wordwrap($messageShort, 65);
257
+				$messageShort = strtok($messageShort, "\n");
258
+				$messageShort .= '...';
259
+			}
260
+			$messageLong .= sprintf(
261
+				"<li><a href=\"%s\" target=\"_blank\" title=\"Github | %s\">%s</a> %s.</p>\n",
262
+				"https://github.com/{$githubData['repo']['name']}/commit/{$commit['sha']}",
263
+				substr($commit['sha'], 0, 7),
264
+				substr($commit['sha'], 0, 7),
265
+				$messageShort
266
+			);
267
+		}
268
+		$messageLong .= "</ul>";
269
+	}
270
+
271
+	$activityRepository->insertActivity(
272
+		$message,
273
+		$messageLong,
274
+		(new DateTime($github['datetime'])),
275
+		[],
276
+		'git',
277
+		$github['id']
278
+	);
279 279
 }
280 280
 
281 281
 // books
@@ -284,46 +284,46 @@  discard block
 block discarded – undo
284 284
 
285 285
 $lastGoodreadActivity = $activityRepository->getActivityLastUpdateByType('book');
286 286
 if ($lastGoodreadActivity === false) {
287
-    $lastGoodreadActivityDateTime = new DateTime('2010-08-28');
287
+	$lastGoodreadActivityDateTime = new DateTime('2010-08-28');
288 288
 } else {
289
-    $lastGoodreadActivityDateTime = new DateTime($lastGoodreadActivity['updated_at']);
290
-    $lastGoodreadActivityDateTime->modify('-5 days');
289
+	$lastGoodreadActivityDateTime = new DateTime($lastGoodreadActivity['updated_at']);
290
+	$lastGoodreadActivityDateTime->modify('-5 days');
291 291
 }
292 292
 $newGoodreadActivity = $goodreadRepository->getGoodreadsUpdatedSince($lastGoodreadActivityDateTime);
293 293
 foreach ($newGoodreadActivity as $goodread) {
294
-    $uniqueGoodreadCheck = $activityRepository->getActivityByTypeId('book', $goodread['id']);
295
-    if ($uniqueGoodreadCheck !== false) {
296
-        continue;
297
-    }
298
-
299
-    $goodreadData = json_decode($goodread['metadata'], true);
300
-
301
-    if (empty($goodreadData['user_read_at'])) {
302
-        continue;
303
-    }
304
-
305
-    $message = sprintf(
306
-        'Read %s by %s.',
307
-        $goodreadData['title'],
308
-        $goodreadData['author_name']
309
-    );
310
-    if (isset($goodreadData['book_large_image_url'])) {
311
-        $messageLong = sprintf(
312
-            "<img alt=\"Goodreads | %s\" src=\"%s\" />\n",
313
-            $goodreadData['title'],
314
-            $goodreadData['book_large_image_url']
315
-        );
316
-    }
317
-    $messageLong .= "<p>{$message}</p>";
318
-
319
-    $activityRepository->insertActivity(
320
-        $message,
321
-        $messageLong,
322
-        (new DateTime($goodread['datetime'])),
323
-        [],
324
-        'book',
325
-        $goodread['id']
326
-    );
294
+	$uniqueGoodreadCheck = $activityRepository->getActivityByTypeId('book', $goodread['id']);
295
+	if ($uniqueGoodreadCheck !== false) {
296
+		continue;
297
+	}
298
+
299
+	$goodreadData = json_decode($goodread['metadata'], true);
300
+
301
+	if (empty($goodreadData['user_read_at'])) {
302
+		continue;
303
+	}
304
+
305
+	$message = sprintf(
306
+		'Read %s by %s.',
307
+		$goodreadData['title'],
308
+		$goodreadData['author_name']
309
+	);
310
+	if (isset($goodreadData['book_large_image_url'])) {
311
+		$messageLong = sprintf(
312
+			"<img alt=\"Goodreads | %s\" src=\"%s\" />\n",
313
+			$goodreadData['title'],
314
+			$goodreadData['book_large_image_url']
315
+		);
316
+	}
317
+	$messageLong .= "<p>{$message}</p>";
318
+
319
+	$activityRepository->insertActivity(
320
+		$message,
321
+		$messageLong,
322
+		(new DateTime($goodread['datetime'])),
323
+		[],
324
+		'book',
325
+		$goodread['id']
326
+	);
327 327
 }
328 328
 
329 329
 // twitter
@@ -332,118 +332,118 @@  discard block
 block discarded – undo
332 332
 
333 333
 $lastTwitterActivity = $activityRepository->getActivityLastUpdateByType('twitter');
334 334
 if ($lastTwitterActivity === false) {
335
-    $lastTwitterActivityDateTime = new DateTime('2010-03-10');
335
+	$lastTwitterActivityDateTime = new DateTime('2010-03-10');
336 336
 } else {
337
-    $lastTwitterActivityDateTime = new DateTime($lastTwitterActivity['updated_at']);
338
-    $lastTwitterActivityDateTime->modify('-5 days');
337
+	$lastTwitterActivityDateTime = new DateTime($lastTwitterActivity['updated_at']);
338
+	$lastTwitterActivityDateTime->modify('-5 days');
339 339
 }
340 340
 $newTwitterActivity = $twitterRepository->getTwittersUpdatedSince($lastTwitterActivityDateTime);
341 341
 foreach ($newTwitterActivity as $twitter) {
342
-    $twitterData = json_decode($twitter['metadata'], true);
343
-
344
-    $uniqueTwitterCheck = $activityRepository->getActivityByTypeId('twitter', $twitter['id']);
345
-    if ($uniqueTwitterCheck !== false) {
346
-        $metadata = [];
347
-        if ($twitterData['favorite_count'] > 0) {
348
-            $metadata['favorites'] = $twitterData['favorite_count'];
349
-        }
350
-        if ($twitterData['retweet_count'] > 0) {
351
-            $metadata['retweets'] = $twitterData['retweet_count'];
352
-        }
353
-
354
-        $activityRepository->updateActivityMetadata($twitter['id'], $metadata);
355
-        continue;
356
-    }
357
-
358
-    if (
359
-        ($twitterData['in_reply_to_user_id'] != null || substr($twitterData['text'], 0, 1) === '@') &&
360
-        $twitterData['favorite_count'] == 0 &&
361
-        $twitterData['retweet_count'] == 0
362
-    ) {
363
-        continue;
364
-    }
365
-
366
-    $message = "Tweeted | {$twitterData['text']}";
367
-    $message = trim(preg_replace('/\s+/', ' ', $message));
368
-    $message = mb_convert_encoding($message, 'HTML-ENTITIES', 'UTF-8');
369
-
370
-    $entityHolder = [];
371
-    foreach ($twitterData['entities'] as $entityType => $entities) {
372
-        foreach ($entities as $entity) {
373
-            if ($entityType == 'hashtags') {
374
-                $replace = sprintf(
375
-                    '<a href="https://twitter.com/search?q=%%23%s&src=hash" rel="nofollow" target="_blank">#%s</a>',
376
-                    $entity['text'],
377
-                    $entity['text']
378
-                );
379
-            } else if ($entityType == 'urls') {
380
-                $replace = sprintf(
381
-                    '<a href="%s" rel="nofollow" target="_blank" title="%s">%s</a>',
382
-                    $entity['url'],
383
-                    $entity['expanded_url'],
384
-                    $entity['display_url']
385
-                );
386
-            } else if ($entityType == 'user_mentions') {
387
-                $replace = sprintf(
388
-                    '<a href="https://twitter.com/%s" rel="nofollow" target="_blank" title="Twitter | %s">@%s</a>',
389
-                    strtolower($entity['screen_name']),
390
-                    $entity['name'],
391
-                    $entity['screen_name']
392
-                );
393
-            } else if ($entityType == 'media') {
394
-                $replace = sprintf(
395
-                    "<a href=\"%s\" rel=\"nofollow\" target=\"_blank\" title=\"%s\">\n" .
396
-                    "<img src=\"%s:%s\" alt=\"%s\" height=\"%s\" width=\"%s\" />\n" .
397
-                    "</a>",
398
-                    $entity['url'],
399
-                    $entity['display_url'],
400
-                    $entity['media_url'],
401
-                    'large',
402
-                    $entity['display_url'],
403
-                    $entity['sizes']['large']['h'],
404
-                    $entity['sizes']['large']['w']
405
-                );
406
-            } else {
407
-                continue 2;
408
-            }
409
-
410
-            $entityHolder[$entity['indices'][0]] = [
411
-                'start' => $entity['indices'][0],
412
-                'end' => $entity['indices'][1],
413
-                'replace' => $replace,
414
-            ];
415
-        }
416
-    }
417
-
418
-    $messageLong = $twitterData['text'];
419
-    krsort($entityHolder);
420
-    foreach($entityHolder as $entity)
421
-    {
422
-        $messageLong =
423
-            mb_substr($messageLong, 0, $entity['start']) .
424
-            $entity['replace'] .
425
-            mb_substr($messageLong, $entity['end'], null, 'UTF-8');
426
-    }
427
-    $messageLong = mb_convert_encoding($messageLong, 'HTML-ENTITIES', 'UTF-8');
428
-    $messageLong = nl2br($messageLong, true);
429
-    $messageLong = "<p>{$messageLong}</p>";
430
-
431
-    $metadata = [];
432
-    if ($twitterData['favorite_count'] > 0) {
433
-        $metadata['favorites'] = $twitterData['favorite_count'];
434
-    }
435
-    if ($twitterData['retweet_count'] > 0) {
436
-        $metadata['retweets'] = $twitterData['retweet_count'];
437
-    }
438
-
439
-    $activityRepository->insertActivity(
440
-        $message,
441
-        $messageLong,
442
-        (new DateTime($twitter['datetime'])),
443
-        $metadata,
444
-        'twitter',
445
-        $twitter['id']
446
-    );
342
+	$twitterData = json_decode($twitter['metadata'], true);
343
+
344
+	$uniqueTwitterCheck = $activityRepository->getActivityByTypeId('twitter', $twitter['id']);
345
+	if ($uniqueTwitterCheck !== false) {
346
+		$metadata = [];
347
+		if ($twitterData['favorite_count'] > 0) {
348
+			$metadata['favorites'] = $twitterData['favorite_count'];
349
+		}
350
+		if ($twitterData['retweet_count'] > 0) {
351
+			$metadata['retweets'] = $twitterData['retweet_count'];
352
+		}
353
+
354
+		$activityRepository->updateActivityMetadata($twitter['id'], $metadata);
355
+		continue;
356
+	}
357
+
358
+	if (
359
+		($twitterData['in_reply_to_user_id'] != null || substr($twitterData['text'], 0, 1) === '@') &&
360
+		$twitterData['favorite_count'] == 0 &&
361
+		$twitterData['retweet_count'] == 0
362
+	) {
363
+		continue;
364
+	}
365
+
366
+	$message = "Tweeted | {$twitterData['text']}";
367
+	$message = trim(preg_replace('/\s+/', ' ', $message));
368
+	$message = mb_convert_encoding($message, 'HTML-ENTITIES', 'UTF-8');
369
+
370
+	$entityHolder = [];
371
+	foreach ($twitterData['entities'] as $entityType => $entities) {
372
+		foreach ($entities as $entity) {
373
+			if ($entityType == 'hashtags') {
374
+				$replace = sprintf(
375
+					'<a href="https://twitter.com/search?q=%%23%s&src=hash" rel="nofollow" target="_blank">#%s</a>',
376
+					$entity['text'],
377
+					$entity['text']
378
+				);
379
+			} else if ($entityType == 'urls') {
380
+				$replace = sprintf(
381
+					'<a href="%s" rel="nofollow" target="_blank" title="%s">%s</a>',
382
+					$entity['url'],
383
+					$entity['expanded_url'],
384
+					$entity['display_url']
385
+				);
386
+			} else if ($entityType == 'user_mentions') {
387
+				$replace = sprintf(
388
+					'<a href="https://twitter.com/%s" rel="nofollow" target="_blank" title="Twitter | %s">@%s</a>',
389
+					strtolower($entity['screen_name']),
390
+					$entity['name'],
391
+					$entity['screen_name']
392
+				);
393
+			} else if ($entityType == 'media') {
394
+				$replace = sprintf(
395
+					"<a href=\"%s\" rel=\"nofollow\" target=\"_blank\" title=\"%s\">\n" .
396
+					"<img src=\"%s:%s\" alt=\"%s\" height=\"%s\" width=\"%s\" />\n" .
397
+					"</a>",
398
+					$entity['url'],
399
+					$entity['display_url'],
400
+					$entity['media_url'],
401
+					'large',
402
+					$entity['display_url'],
403
+					$entity['sizes']['large']['h'],
404
+					$entity['sizes']['large']['w']
405
+				);
406
+			} else {
407
+				continue 2;
408
+			}
409
+
410
+			$entityHolder[$entity['indices'][0]] = [
411
+				'start' => $entity['indices'][0],
412
+				'end' => $entity['indices'][1],
413
+				'replace' => $replace,
414
+			];
415
+		}
416
+	}
417
+
418
+	$messageLong = $twitterData['text'];
419
+	krsort($entityHolder);
420
+	foreach($entityHolder as $entity)
421
+	{
422
+		$messageLong =
423
+			mb_substr($messageLong, 0, $entity['start']) .
424
+			$entity['replace'] .
425
+			mb_substr($messageLong, $entity['end'], null, 'UTF-8');
426
+	}
427
+	$messageLong = mb_convert_encoding($messageLong, 'HTML-ENTITIES', 'UTF-8');
428
+	$messageLong = nl2br($messageLong, true);
429
+	$messageLong = "<p>{$messageLong}</p>";
430
+
431
+	$metadata = [];
432
+	if ($twitterData['favorite_count'] > 0) {
433
+		$metadata['favorites'] = $twitterData['favorite_count'];
434
+	}
435
+	if ($twitterData['retweet_count'] > 0) {
436
+		$metadata['retweets'] = $twitterData['retweet_count'];
437
+	}
438
+
439
+	$activityRepository->insertActivity(
440
+		$message,
441
+		$messageLong,
442
+		(new DateTime($twitter['datetime'])),
443
+		$metadata,
444
+		'twitter',
445
+		$twitter['id']
446
+	);
447 447
 }
448 448
 
449 449
 // youtube
@@ -452,39 +452,39 @@  discard block
 block discarded – undo
452 452
 
453 453
 $lastYouTubeActivity = $activityRepository->getActivityLastUpdateByType('youtube');
454 454
 if ($lastYouTubeActivity === false) {
455
-    $lastYouTubeActivityDateTime = new DateTime('2010-08-28');
455
+	$lastYouTubeActivityDateTime = new DateTime('2010-08-28');
456 456
 } else {
457
-    $lastYouTubeActivityDateTime = new DateTime($lastYouTubeActivity['updated_at']);
458
-    $lastYouTubeActivityDateTime->modify('-5 days');
457
+	$lastYouTubeActivityDateTime = new DateTime($lastYouTubeActivity['updated_at']);
458
+	$lastYouTubeActivityDateTime->modify('-5 days');
459 459
 }
460 460
 $newYouTubeActivity = $youTubeRepository->getYouTubesUpdatedSince($lastYouTubeActivityDateTime);
461 461
 foreach ($newYouTubeActivity as $youTube) {
462
-    $uniqueYouTubeCheck = $activityRepository->getActivityByTypeId('youtube', $youTube['id']);
463
-    if ($uniqueYouTubeCheck !== false) {
464
-        continue;
465
-    }
466
-
467
-    $youTubeData = json_decode($youTube['metadata'], true);
468
-
469
-    $message = sprintf(
470
-        'Favorited %s on YouTube.',
471
-        $youTubeData['snippet']['title']
472
-    );
473
-    $messageLong = sprintf(
474
-        "<iframe src=\"%s\" frameborder=\"0\" allowfullscreen></iframe>\n" .
475
-        "<p>Favorited <a href=\"%s\" target=\"_blank\" title=\"YouTube | %s\">%s</a> on YouTube.</p>",
476
-        "https://www.youtube.com/embed/{$youTubeData['contentDetails']['videoId']}",
477
-        "https://youtu.be/{$youTubeData['contentDetails']['videoId']}",
478
-        $youTubeData['snippet']['title'],
479
-        $youTubeData['snippet']['title']
480
-    );
481
-
482
-    $activityRepository->insertActivity(
483
-        $message,
484
-        $messageLong,
485
-        (new DateTime($youTube['datetime'])),
486
-        [],
487
-        'youtube',
488
-        $youTube['id']
489
-    );
462
+	$uniqueYouTubeCheck = $activityRepository->getActivityByTypeId('youtube', $youTube['id']);
463
+	if ($uniqueYouTubeCheck !== false) {
464
+		continue;
465
+	}
466
+
467
+	$youTubeData = json_decode($youTube['metadata'], true);
468
+
469
+	$message = sprintf(
470
+		'Favorited %s on YouTube.',
471
+		$youTubeData['snippet']['title']
472
+	);
473
+	$messageLong = sprintf(
474
+		"<iframe src=\"%s\" frameborder=\"0\" allowfullscreen></iframe>\n" .
475
+		"<p>Favorited <a href=\"%s\" target=\"_blank\" title=\"YouTube | %s\">%s</a> on YouTube.</p>",
476
+		"https://www.youtube.com/embed/{$youTubeData['contentDetails']['videoId']}",
477
+		"https://youtu.be/{$youTubeData['contentDetails']['videoId']}",
478
+		$youTubeData['snippet']['title'],
479
+		$youTubeData['snippet']['title']
480
+	);
481
+
482
+	$activityRepository->insertActivity(
483
+		$message,
484
+		$messageLong,
485
+		(new DateTime($youTube['datetime'])),
486
+		[],
487
+		'youtube',
488
+		$youTube['id']
489
+	);
490 490
 }
Please login to merge, or discard this patch.