Skip to content

Commit 59c1790

Browse files
authored
Merge pull request #238 from topcoder-platform/issues-226
Issues-213, Issues-226
2 parents 79a04dc + 9b41eae commit 59c1790

File tree

4 files changed

+1701
-8
lines changed

4 files changed

+1701
-8
lines changed

config/vanilla/config.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,14 @@
5656
$Configuration['Garden']['Email']['SmtpPort'] = getenv('MAIL_SMTP_PORT');
5757
$Configuration['Garden']['Email']['SmtpSecurity'] = getenv('MAIL_SMTP_SECURITY');
5858
$Configuration['Garden']['UpdateToken'] = '105e786dc643fd20143d3c137b593af168560c13';
59-
$Configuration['Garden']['InputFormatter'] = 'Rich';
59+
$Configuration['Garden']['InputFormatter'] = 'Markdown';
6060
$Configuration['Garden']['Version'] = 'Undefined';
6161
$Configuration['Garden']['CanProcessImages'] = true;
6262
$Configuration['Garden']['Theme'] = 'topcoder-theme';
6363
$Configuration['Garden']['MobileTheme'] = 'topcoder-theme';
6464
$Configuration['Garden']['Profile']['EditPhotos'] = false;
6565
$Configuration['Garden']['SystemUserID'] = '1';
66-
$Configuration['Garden']['MobileInputFormatter'] = 'Rich';
66+
$Configuration['Garden']['MobileInputFormatter'] = 'Markdown';
6767
$Configuration['Garden']['AllowFileUploads'] = true;
6868
$Configuration['Garden']['EditContentTimeout'] = -1;
6969
$Configuration['Garden']['Profile']['EditPhotos'] = false;

vanilla/applications/vanilla/models/class.commentmodel.php

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -541,7 +541,7 @@ public function lookup(array $where = [], $permissionFilter = true, $limit = nul
541541
* @param array $comment
542542
* @param array $discussion
543543
*/
544-
private function notifyNewComment(?array $comment, ?array $discussion) {
544+
public function notifyNewComment(?array $comment, ?array $discussion) {
545545
if ($comment === null || $discussion === null) {
546546
return;
547547
}
@@ -563,6 +563,13 @@ private function notifyNewComment(?array $comment, ?array $discussion) {
563563
$discussionUserID = $discussion["InsertUserID"] ?? null;
564564
$format = $comment["Format"] ?? null;
565565

566+
$mediaModel = new MediaModel();
567+
$sqlWhere = [
568+
'ForeignTable' => 'comment',
569+
'ForeignID' => $commentID
570+
];
571+
$mediaData = $mediaModel->getWhere($sqlWhere)->resultArray();
572+
566573
// Prepare the notification queue.
567574
$data = [
568575
"ActivityType" => "Comment",
@@ -577,6 +584,7 @@ private function notifyNewComment(?array $comment, ?array $discussion) {
577584
"Data" => [
578585
"Name" => $discussion["Name"] ?? null,
579586
"Category" => $category["Name"] ?? null,
587+
"Media" => $mediaData
580588
]
581589
];
582590

@@ -1362,10 +1370,12 @@ public function save2($CommentID, $Insert, $CheckExisting = true, $IncUser = fal
13621370
if ($Discussion->CategoryID > 0) {
13631371
CategoryModel::instance()->incrementLastComment($Fields);
13641372
}
1365-
$this->notifyNewComment(
1366-
$Fields ? (array)$Fields : null,
1367-
$Discussion ? (array)$Discussion : null
1368-
);
1373+
if(!c('EnabledPlugins.editor', false)) {
1374+
$this->notifyNewComment(
1375+
$Fields ? (array)$Fields : null,
1376+
$Discussion ? (array)$Discussion : null
1377+
);
1378+
}
13691379
}
13701380
}
13711381

vanilla/applications/vanilla/models/class.discussionmodel.php

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1969,6 +1969,7 @@ public function setField($rowID, $property, $value = false) {
19691969
public function save($formPostValues, $settings = false) {
19701970
// Define the primary key in this model's table.
19711971
$this->defineSchema();
1972+
$sendNewDiscussionNotification = false;
19721973

19731974
// If the site isn't configured to use categories, don't allow one to be set.
19741975
if (!c('Vanilla.Categories.Use', true)) {
@@ -2223,7 +2224,7 @@ public function save($formPostValues, $settings = false) {
22232224
$formPostValues['DiscussionID'] = $discussionID;
22242225

22252226
$discussion = $this->getID($discussionID, DATASET_TYPE_ARRAY);
2226-
$this->notifyNewDiscussion($discussion);
2227+
$sendNewDiscussionNotification = true;
22272228
}
22282229

22292230
// Get CategoryID of this discussion
@@ -2244,7 +2245,18 @@ public function save($formPostValues, $settings = false) {
22442245
$this->EventArguments['FormPostValues'] = $formPostValues;
22452246
$this->EventArguments['Fields'] = $fields;
22462247
$this->EventArguments['DiscussionID'] = $discussionID;
2248+
$this->EventArguments['SendNewDiscussionNotification'] = $sendNewDiscussionNotification;
22472249
$this->fireEvent('AfterSaveDiscussion');
2250+
2251+
2252+
//FIX: https://github.com/topcoder-platform/forums/issues/213
2253+
// If the plugin is enabled then send notifications after updating MediaTables with discussionID
2254+
if ($sendNewDiscussionNotification === true) {
2255+
if(!c('EnabledPlugins.editor', false)) {
2256+
$discussion = $this->getID($discussionID, DATASET_TYPE_ARRAY);
2257+
$this->notifyNewDiscussion($discussion);
2258+
}
2259+
}
22482260
}
22492261
}
22502262

@@ -2288,6 +2300,13 @@ public function notifyNewDiscussion($discussion, $activityModel = null, $activit
22882300
$code = "HeadlineFormat.Discussion";
22892301
}
22902302

2303+
// FIX: https://github.com/topcoder-platform/forums/issues/213
2304+
$mediaModel = new MediaModel();
2305+
$sqlWhere = [
2306+
'ForeignTable' => 'discussion',
2307+
'ForeignID' => $discussionID
2308+
];
2309+
$mediaData = $mediaModel->getWhere($sqlWhere)->resultArray();
22912310
$data = [
22922311
"ActivityType" => "Discussion",
22932312
"ActivityUserID" => $insertUserID,
@@ -2301,6 +2320,7 @@ public function notifyNewDiscussion($discussion, $activityModel = null, $activit
23012320
"Data" => [
23022321
"Name" => $name,
23032322
"Category" => $categoryName,
2323+
"Media" => $mediaData
23042324
]
23052325
];
23062326

0 commit comments

Comments
 (0)