|
1 | 1 | SET NOCOUNT ON
|
2 | 2 | GO
|
3 | 3 |
|
4 |
| -/* issues 1242 - error deleting post when removing reply */ |
5 |
| - |
6 |
| -/* activeforums_Reply_Delete */ |
7 |
| -IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'{databaseOwner}[{objectQualifier}activeforums_Reply_Delete]') AND type in (N'P', N'PC')) |
8 |
| -DROP PROCEDURE {databaseOwner}[{objectQualifier}activeforums_Reply_Delete] |
9 |
| -GO |
10 |
| - |
11 |
| -/*activeforums_Reply_Delete*/ |
12 |
| -CREATE PROCEDURE {databaseOwner}[{objectQualifier}activeforums_Reply_Delete] |
13 |
| -@ForumId int, |
14 |
| -@TopicId int, |
15 |
| -@ReplyId int, |
16 |
| -@DelBehavior int |
17 |
| -AS |
18 |
| -DECLARE @ContentId int |
19 |
| -SELECT @ContentId = ContentId FROM {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
20 |
| -BEGIN |
21 |
| -SELECT |
22 |
| - v.ForumGroupId, |
23 |
| - v.ModuleId, |
24 |
| - v.GroupName, |
25 |
| - v.GroupActive, |
26 |
| - v.GroupHidden, |
27 |
| - v.ForumId, |
28 |
| - v.ParentForumId, |
29 |
| - v.ForumName, |
30 |
| - v.ForumDesc, |
31 |
| - v.ForumActive, |
32 |
| - v.ForumHidden, |
33 |
| - v.TotalTopics, |
34 |
| - ISNULL(v.TotalReplies, 0) AS TotalReplies, |
35 |
| - v.LastPostId, |
36 |
| - v.GroupSettingsKey, |
37 |
| - v.ForumSettingsKey, |
38 |
| - TopicTemplateId = IsNull((SELECT SettingValue FROM {databaseOwner}{objectQualifier}activeforums_Settings WHERE SettingName = 'TOPICTEMPLATEID' and GroupKey = v.ForumSettingsKey),0), |
39 |
| - |
40 |
| -DECLARE @LastTopicReply int |
41 |
| -SET @LastTopicReply = (SELECT MAX(ReplyId) from {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND IsApproved = 1 AND IsDeleted = 0 AND ReplyId <> @ReplyId) |
42 |
| -UPDATE {databaseOwner}{objectQualifier}activeforums_ForumTopics SET LastReplyId = @LastTopicReply WHERE ForumId = @ForumId and TopicId = @TopicId |
43 |
| - |
44 |
| -IF @DelBehavior = 1 |
45 |
| - BEGIN |
46 |
| - UPDATE {databaseOwner}{objectQualifier}activeforums_Replies SET IsDeleted = 1 WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
47 |
| - END |
48 |
| -ELSE |
49 |
| - BEGIN |
50 |
| - DELETE FROM {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
51 |
| - DELETE FROM {databaseOwner}{objectQualifier}activeforums_Content WHERE ContentId = @ContentId |
52 |
| - END |
53 |
| -END |
54 |
| -UPDATE {databaseOwner}{objectQualifier}activeforums_Topics |
55 |
| -SET ReplyCount = ISNULL((Select Count(ReplyId) from {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND IsDeleted = 0 AND IsApproved = 1),0) |
56 |
| -WHERE TopicId = @TopicId |
57 |
| -exec {databaseOwner}{objectQualifier}activeforums_Forums_LastUpdates @ForumId |
58 |
| - |
59 |
| --- reset thread order |
60 |
| -EXEC {databaseOwner}{objectQualifier}activeforums_SaveTopicNextPrev @ForumId |
61 |
| -GO |
62 |
| - |
63 |
| -/* issues 1242 - error deleting post when removing reply */ |
64 |
| - |
65 |
| - |
66 |
| -/* --------------------- */ |
67 |
| - |
68 |
| - |
69 | 4 | /* issues 1240 - begin - issues with editing post */
|
70 | 5 |
|
71 | 6 | /*activeforums_UI_TopicView*/
|
|
225 | 160 |
|
226 | 161 | /* --------------------- */
|
227 | 162 |
|
| 163 | +/* issues 1242 - error deleting post when removing reply */ |
| 164 | + |
| 165 | +IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'{databaseOwner}[{objectQualifier}activeforums_Reply_Delete]') AND type in (N'P', N'PC')) |
| 166 | +DROP PROCEDURE {databaseOwner}[{objectQualifier}activeforums_Reply_Delete] |
| 167 | +GO |
| 168 | + |
| 169 | +/*activeforums_Reply_Delete*/ |
| 170 | +CREATE PROCEDURE {databaseOwner}[{objectQualifier}activeforums_Reply_Delete] |
| 171 | +@ForumId int, |
| 172 | +@TopicId int, |
| 173 | +@ReplyId int, |
| 174 | +@DelBehavior int |
| 175 | +AS |
| 176 | +DECLARE @ContentId int |
| 177 | +SELECT @ContentId = ContentId FROM {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
| 178 | +BEGIN |
| 179 | + |
| 180 | +DECLARE @LastTopicReply int |
| 181 | +SET @LastTopicReply = (SELECT MAX(ReplyId) from {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND IsApproved = 1 AND IsDeleted = 0 AND ReplyId <> @ReplyId) |
| 182 | +UPDATE {databaseOwner}{objectQualifier}activeforums_ForumTopics SET LastReplyId = @LastTopicReply WHERE ForumId = @ForumId and TopicId = @TopicId |
| 183 | + |
| 184 | +IF @DelBehavior = 1 |
| 185 | + BEGIN |
| 186 | + UPDATE {databaseOwner}{objectQualifier}activeforums_Replies SET IsDeleted = 1 WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
| 187 | + END |
| 188 | +ELSE |
| 189 | + BEGIN |
| 190 | + DELETE FROM {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND ReplyId = @ReplyId |
| 191 | + DELETE FROM {databaseOwner}{objectQualifier}activeforums_Content WHERE ContentId = @ContentId |
| 192 | + END |
| 193 | +END |
| 194 | +UPDATE {databaseOwner}{objectQualifier}activeforums_Topics |
| 195 | +SET ReplyCount = ISNULL((Select Count(ReplyId) from {databaseOwner}{objectQualifier}activeforums_Replies WHERE TopicId = @TopicId AND IsDeleted = 0 AND IsApproved = 1),0) |
| 196 | +WHERE TopicId = @TopicId |
| 197 | +exec {databaseOwner}{objectQualifier}activeforums_Forums_LastUpdates @ForumId |
| 198 | + |
| 199 | +-- reset thread order |
| 200 | +EXEC {databaseOwner}{objectQualifier}activeforums_SaveTopicNextPrev @ForumId |
| 201 | +GO |
| 202 | + |
| 203 | +/* issues 1242 - error deleting post when removing reply */ |
| 204 | + |
| 205 | + |
| 206 | +/* --------------------- */ |
| 207 | + |
0 commit comments