@@ -29,156 +29,156 @@ Imports DotNetNuke.Entities.Modules
2929
3030Namespace Integration
3131
32- Public Class JournalController
32+ Public Class JournalController
3333
3434# Region " Public Methods "
35- ''' <summary>
36- ''' Informs the core journal that the user has posted a blog Post.
37- ''' </summary>
38- ''' <param name="objPost"></param>
39- ''' <param name="portalId"></param>
40- ''' <param name="tabId"></param>
41- ''' <param name="journalUserId"></param>
42- ''' <param name="url"></param>
43- ''' <remarks></remarks>
44- Public Shared Sub AddBlogPostToJournal(objPost As PostInfo, portalId As Integer , tabId As Integer , journalUserId As Integer , url As String )
45- If journalUserId = - 1 Then Exit Sub
46- Dim objectKey As String = ContentTypeName + "_" + ContentTypeName + "_" + String .Format( "{0}:{1}" , objPost.BlogID, objPost.ContentItemId)
47- Dim ji As JournalItem = DotNetNuke.Services.Journal.JournalController.Instance.GetJournalItemByKey(portalId, objectKey)
48-
49- If Not ji Is Nothing Then
50- DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
51- End If
52-
53- ji = New JournalItem
54-
55- ji.PortalId = portalId
56- ji.ProfileId = journalUserId
57- ji.UserId = journalUserId
58- ji.ContentItemId = objPost.ContentItemId
59- ji.Title = objPost.Title
60- ji.ItemData = New ItemData()
61- ji.ItemData.Url = url
62- ji.Summary = objPost.Summary
63- ji.Body = Nothing
64- ji.JournalTypeId = GetBlogJournalTypeID(portalId)
65- ji.ObjectKey = objectKey
66- ji.SecuritySet = "E,"
67-
68- Dim moduleInfo As ModuleInfo = ModuleController.Instance.GetModule(objPost.ModuleID, tabId, False )
69- DotNetNuke.Services.Journal.JournalController.Instance.SaveJournalItem(ji, moduleInfo)
70- End Sub
71-
72- ''' <summary>
73- ''' Deletes a journal item associated with the specified blog Post.
74- ''' </summary>
75- ''' <param name="blogId"></param>
76- ''' <param name="PostId"></param>
77- ''' <param name="portalId"></param>
78- ''' <remarks></remarks>
79- Public Shared Sub RemoveBlogPostFromJournal(blogId As Integer , PostId As Integer , portalId As Integer )
80- Dim objectKey As String = ContentTypeName + "_" + ContentTypeName + "_" + String .Format( "{0}:{1}" , blogId, PostId)
81- DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
82- End Sub
83-
84- ''' <summary>
85- ''' Informs the core journal that the user has commented on a blog Post.
86- ''' </summary>
87- ''' <param name="objPost"></param>
88- ''' <param name="objComment"></param>
89- ''' <param name="portalId"></param>
90- ''' <param name="tabId"></param>
91- ''' <param name="journalUserId"></param>
92- ''' <param name="url"></param>
93- Public Shared Sub AddOrUpdateCommentInJournal(objBlog As BlogInfo, objPost As PostInfo, objComment As Entities.Comments.CommentInfo, portalId As Integer , tabId As Integer , journalUserId As Integer , url As String )
94- If journalUserId = - 1 Then Exit Sub
95- Dim objectKey As String = ContentTypeName + "_" + JournalCommentTypeName + "_" + String .Format( "{0}:{1}" , objPost.ContentItemId.ToString(), objComment.CommentID.ToString())
96- Dim ji As JournalItem = DotNetNuke.Services.Journal.JournalController.Instance.GetJournalItemByKey(portalId, objectKey)
97- If Not ji Is Nothing Then
98- DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
99- End If
100-
101- ji = New JournalItem
102-
103- ji.PortalId = portalId
104- ji.ProfileId = journalUserId
105- ji.UserId = journalUserId
106- ji.ContentItemId = objPost.ContentItemId
107- ji.Title = objPost.Title
108- ji.ItemData = New ItemData()
109- ji.ItemData.Url = url
110- ji.Summary = objComment.Comment
111- ji.Body = Nothing
112- ji.JournalTypeId = GetCommentJournalTypeID(portalId)
113- ji.ObjectKey = objectKey
114- ji.SecuritySet = "E,"
115-
116- Dim moduleInfo As ModuleInfo = ModuleController.Instance.GetModule(objPost.ModuleID, tabId, False )
117- DotNetNuke.Services.Journal.JournalController.Instance.SaveJournalItem(ji, moduleInfo)
118-
119- If objBlog.OwnerUserId = journalUserId Then
120- Dim title As String = DotNetNuke.Services.Localization.Localization.GetString( "CommentAddedNotify" , SharedResourceFileName)
121- Dim summary As String = "<a target='_blank' href='" + url + "'>" + objPost.Title + "</a>"
122- NotificationController.CommentAdded(objComment, objPost, objBlog, portalId, summary, title)
123- End If
124-
125- End Sub
126-
127- ''' <summary>
128- ''' Deletes a journal item associated with the specific comment.
129- ''' </summary>
130- ''' <param name="PostId"></param>
131- ''' <param name="commentId"></param>
132- ''' <param name="portalId"></param>
133- Public Shared Sub RemoveCommentFromJournal(PostId As Integer , commentId As Integer , portalId As Integer )
134- Dim objectKey As String = ContentTypeName + "_" + JournalCommentTypeName + "_" + String .Format( "{0}:{1}" , PostId, commentId)
135- DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
136- End Sub
35+ ''' <summary>
36+ ''' Informs the core journal that the user has posted a blog Post.
37+ ''' </summary>
38+ ''' <param name="objPost"></param>
39+ ''' <param name="portalId"></param>
40+ ''' <param name="tabId"></param>
41+ ''' <param name="journalUserId"></param>
42+ ''' <param name="url"></param>
43+ ''' <remarks></remarks>
44+ Public Shared Sub AddBlogPostToJournal(objPost As PostInfo, portalId As Integer , tabId As Integer , journalUserId As Integer , url As String )
45+ If journalUserId = - 1 Then Exit Sub
46+ Dim objectKey As String = ContentTypeName + "_" + ContentTypeName + "_" + String .Format( "{0}:{1}" , objPost.BlogID, objPost.ContentItemId)
47+ Dim ji As JournalItem = DotNetNuke.Services.Journal.JournalController.Instance.GetJournalItemByKey(portalId, objectKey)
48+
49+ If Not ji Is Nothing Then
50+ DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
51+ End If
52+
53+ ji = New JournalItem
54+
55+ ji.PortalId = portalId
56+ ji.ProfileId = journalUserId
57+ ji.UserId = journalUserId
58+ ji.ContentItemId = objPost.ContentItemId
59+ ji.Title = objPost.Title
60+ ji.ItemData = New ItemData()
61+ ji.ItemData.Url = url
62+ ji.Summary = HttpUtility.HtmlDecode( objPost.Summary)
63+ ji.Body = Nothing
64+ ji.JournalTypeId = GetBlogJournalTypeID(portalId)
65+ ji.ObjectKey = objectKey
66+ ji.SecuritySet = "E,"
67+
68+ Dim moduleInfo As ModuleInfo = ModuleController.Instance.GetModule(objPost.ModuleID, tabId, False )
69+ DotNetNuke.Services.Journal.JournalController.Instance.SaveJournalItem(ji, moduleInfo)
70+ End Sub
71+
72+ ''' <summary>
73+ ''' Deletes a journal item associated with the specified blog Post.
74+ ''' </summary>
75+ ''' <param name="blogId"></param>
76+ ''' <param name="PostId"></param>
77+ ''' <param name="portalId"></param>
78+ ''' <remarks></remarks>
79+ Public Shared Sub RemoveBlogPostFromJournal(blogId As Integer , PostId As Integer , portalId As Integer )
80+ Dim objectKey As String = ContentTypeName + "_" + ContentTypeName + "_" + String .Format( "{0}:{1}" , blogId, PostId)
81+ DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
82+ End Sub
83+
84+ ''' <summary>
85+ ''' Informs the core journal that the user has commented on a blog Post.
86+ ''' </summary>
87+ ''' <param name="objPost"></param>
88+ ''' <param name="objComment"></param>
89+ ''' <param name="portalId"></param>
90+ ''' <param name="tabId"></param>
91+ ''' <param name="journalUserId"></param>
92+ ''' <param name="url"></param>
93+ Public Shared Sub AddOrUpdateCommentInJournal(objBlog As BlogInfo, objPost As PostInfo, objComment As Entities.Comments.CommentInfo, portalId As Integer , tabId As Integer , journalUserId As Integer , url As String )
94+ If journalUserId = - 1 Then Exit Sub
95+ Dim objectKey As String = ContentTypeName + "_" + JournalCommentTypeName + "_" + String .Format( "{0}:{1}" , objPost.ContentItemId.ToString(), objComment.CommentID.ToString())
96+ Dim ji As JournalItem = DotNetNuke.Services.Journal.JournalController.Instance.GetJournalItemByKey(portalId, objectKey)
97+ If Not ji Is Nothing Then
98+ DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
99+ End If
100+
101+ ji = New JournalItem
102+
103+ ji.PortalId = portalId
104+ ji.ProfileId = journalUserId
105+ ji.UserId = journalUserId
106+ ji.ContentItemId = objPost.ContentItemId
107+ ji.Title = objPost.Title
108+ ji.ItemData = New ItemData()
109+ ji.ItemData.Url = url
110+ ji.Summary = HttpUtility.HtmlDecode( objComment.Comment)
111+ ji.Body = Nothing
112+ ji.JournalTypeId = GetCommentJournalTypeID(portalId)
113+ ji.ObjectKey = objectKey
114+ ji.SecuritySet = "E,"
115+
116+ Dim moduleInfo As ModuleInfo = ModuleController.Instance.GetModule(objPost.ModuleID, tabId, False )
117+ DotNetNuke.Services.Journal.JournalController.Instance.SaveJournalItem(ji, moduleInfo)
118+
119+ If objBlog.OwnerUserId = journalUserId Then
120+ Dim title As String = DotNetNuke.Services.Localization.Localization.GetString( "CommentAddedNotify" , SharedResourceFileName)
121+ Dim summary As String = "<a target='_blank' href='" + url + "'>" + objPost.Title + "</a>"
122+ NotificationController.CommentAdded(objComment, objPost, objBlog, portalId, summary, title)
123+ End If
124+
125+ End Sub
126+
127+ ''' <summary>
128+ ''' Deletes a journal item associated with the specific comment.
129+ ''' </summary>
130+ ''' <param name="PostId"></param>
131+ ''' <param name="commentId"></param>
132+ ''' <param name="portalId"></param>
133+ Public Shared Sub RemoveCommentFromJournal(PostId As Integer , commentId As Integer , portalId As Integer )
134+ Dim objectKey As String = ContentTypeName + "_" + JournalCommentTypeName + "_" + String .Format( "{0}:{1}" , PostId, commentId)
135+ DotNetNuke.Services.Journal.JournalController.Instance.DeleteJournalItemByKey(portalId, objectKey)
136+ End Sub
137137# End Region
138138
139139# Region " Private Methods "
140- ''' <summary>
141- ''' Returns a journal type associated with blog Posts (using one of the core built in journal types)
142- ''' </summary>
143- ''' <param name="portalId"></param>
144- ''' <returns></returns>
145- ''' <remarks></remarks>
146- Private Shared Function GetBlogJournalTypeID(portalId As Integer ) As Integer
147- Dim colJournalTypes As IEnumerable( Of JournalTypeInfo)
148- colJournalTypes = ( From t In DotNetNuke.Services.Journal.JournalController.Instance.GetJournalTypes(portalId) Where t.JournalType = JournalBlogTypeName)
149- Dim journalTypeId As Integer
150-
151- If colJournalTypes.Count() > 0 Then
152- Dim journalType As JournalTypeInfo = colJournalTypes.[Single]()
153- journalTypeId = journalType.JournalTypeId
154- Else
155- journalTypeId = 7
156- End If
157-
158- Return journalTypeId
159- End Function
160-
161- ''' <summary>
162- ''' Returns a journal type associated with commenting (using one of the core built in journal types)
163- ''' </summary>
164- ''' <param name="portalId"></param>
165- ''' <returns></returns>
166- Private Shared Function GetCommentJournalTypeID(portalId As Integer ) As Integer
167- Dim colJournalTypes As IEnumerable( Of JournalTypeInfo)
168- colJournalTypes = ( From t In DotNetNuke.Services.Journal.JournalController.Instance.GetJournalTypes(portalId) Where t.JournalType = JournalCommentTypeName)
169- Dim journalTypeId As Integer
170-
171- If colJournalTypes.Count() > 0 Then
172- Dim journalType As JournalTypeInfo = colJournalTypes.[Single]()
173- journalTypeId = journalType.JournalTypeId
174- Else
175- journalTypeId = 18
176- End If
177-
178- Return journalTypeId
179- End Function
140+ ''' <summary>
141+ ''' Returns a journal type associated with blog Posts (using one of the core built in journal types)
142+ ''' </summary>
143+ ''' <param name="portalId"></param>
144+ ''' <returns></returns>
145+ ''' <remarks></remarks>
146+ Private Shared Function GetBlogJournalTypeID(portalId As Integer ) As Integer
147+ Dim colJournalTypes As IEnumerable( Of JournalTypeInfo)
148+ colJournalTypes = ( From t In DotNetNuke.Services.Journal.JournalController.Instance.GetJournalTypes(portalId) Where t.JournalType = JournalBlogTypeName)
149+ Dim journalTypeId As Integer
150+
151+ If colJournalTypes.Count() > 0 Then
152+ Dim journalType As JournalTypeInfo = colJournalTypes.[Single]()
153+ journalTypeId = journalType.JournalTypeId
154+ Else
155+ journalTypeId = 7
156+ End If
157+
158+ Return journalTypeId
159+ End Function
160+
161+ ''' <summary>
162+ ''' Returns a journal type associated with commenting (using one of the core built in journal types)
163+ ''' </summary>
164+ ''' <param name="portalId"></param>
165+ ''' <returns></returns>
166+ Private Shared Function GetCommentJournalTypeID(portalId As Integer ) As Integer
167+ Dim colJournalTypes As IEnumerable( Of JournalTypeInfo)
168+ colJournalTypes = ( From t In DotNetNuke.Services.Journal.JournalController.Instance.GetJournalTypes(portalId) Where t.JournalType = JournalCommentTypeName)
169+ Dim journalTypeId As Integer
170+
171+ If colJournalTypes.Count() > 0 Then
172+ Dim journalType As JournalTypeInfo = colJournalTypes.[Single]()
173+ journalTypeId = journalType.JournalTypeId
174+ Else
175+ journalTypeId = 18
176+ End If
177+
178+ Return journalTypeId
179+ End Function
180180# End Region
181181
182- End Class
182+ End Class
183183
184184End Namespace
0 commit comments