forked from ventrian/News-Articles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathucEditPage.ascx.vb
executable file
·199 lines (123 loc) · 5.87 KB
/
ucEditPage.ascx.vb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
'
' News Articles for DotNetNuke - http://www.dotnetnuke.com
' Copyright (c) 2002-2007
' by Ventrian ( [email protected] ) ( http://www.ventrian.com )
'
Imports DotNetNuke.Common
Imports DotNetNuke.Common.Utilities
Imports DotNetNuke.Services.Exceptions
Imports DotNetNuke.UI.UserControls
Imports Ventrian.NewsArticles.Base
Namespace Ventrian.NewsArticles
Partial Public Class ucEditPage
Inherits NewsArticleModuleBase
#Region " Private Properties "
Private ReadOnly Property Summary() As TextEditor
Get
Return CType(txtSummary, TextEditor)
End Get
End Property
#End Region
#Region " Private Members "
Private _pageID As Integer = Null.NullInteger
Private _articleID As Integer = Null.NullInteger
#End Region
#Region " Private Methods "
Private Sub ReadQueryString()
If (IsNumeric(Request("ArticleID"))) Then
_articleID = Convert.ToInt32(Request("ArticleID"))
End If
If (IsNumeric(Request("PageID"))) Then
_pageID = Convert.ToInt32(Request("PageID"))
End If
End Sub
Private Sub CheckSecurity()
If (HasEditRights(_articleID, Me.ModuleId, Me.TabId) = False) Then
Response.Redirect(Common.GetModuleLink(Me.TabId, Me.ModuleId, "NotAuthorized", ArticleSettings), True)
End If
End Sub
Private Sub BindPage()
If (_pageID = Null.NullInteger) Then
cmdDelete.Visible = False
Else
cmdDelete.Visible = True
cmdDelete.Attributes.Add("onClick", "javascript:return confirm('Are You Sure You Wish To Delete This Item ?');")
Dim objPageController As New PageController
Dim objPage As PageInfo = objPageController.GetPage(_pageID)
If Not (objPage Is Nothing) Then
txtTitle.Text = objPage.Title
Summary.Text = objPage.PageText
End If
End If
End Sub
Private Sub SetTextEditor()
Summary.Width = Unit.Parse(ArticleSettings.TextEditorWidth)
Summary.Height = Unit.Parse(ArticleSettings.TextEditorHeight)
End Sub
#End Region
#Region " Event Handlers "
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
ReadQueryString()
CheckSecurity()
If (IsPostBack = False) Then
BindPage()
SetTextEditor()
End If
Catch exc As Exception 'Module failed to load
ProcessModuleLoadException(Me, exc)
End Try
End Sub
Private Sub cmdUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdUpdate.Click
Try
If (Page.IsValid) Then
Dim objPageController As PageController = New PageController
Dim objPage As PageInfo = New PageInfo
If (_pageID <> Null.NullInteger) Then
objPage = objPageController.GetPage(_pageID)
Else
objPage = CType(CBO.InitializeObject(objPage, GetType(PageInfo)), PageInfo)
End If
objPage.Title = txtTitle.Text
objPage.PageText = Summary.Text
objPage.ArticleID = _articleID
If (_pageID = Null.NullInteger) Then
objPageController.AddPage(objPage)
Else
If (objPage.SortOrder = 0) Then
Dim objArticleController As New ArticleController()
Dim objArticle As ArticleInfo = objArticleController.GetArticle(_articleID)
If (objArticle IsNot Nothing) Then
If (objArticle.Title <> objPage.Title) Then
objArticle.Title = objPage.Title
objArticleController.UpdateArticle(objArticle)
End If
End If
End If
objPageController.UpdatePage(objPage)
End If
Response.Redirect(Common.GetModuleLink(TabId, ModuleId, "EditPages", ArticleSettings, "ArticleID=" & _articleID.ToString()), True)
End If
Catch exc As Exception 'Module failed to load
ProcessModuleLoadException(Me, exc)
End Try
End Sub
Private Sub cmdDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDelete.Click
Try
Dim objPageController As New PageController
objPageController.DeletePage(_pageID)
Response.Redirect(Common.GetModuleLink(TabId, ModuleId, "EditPages", ArticleSettings, "ArticleID=" & _articleID.ToString()), True)
Catch exc As Exception 'Module failed to load
ProcessModuleLoadException(Me, exc)
End Try
End Sub
Private Sub cmdCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCancel.Click
Try
Response.Redirect(Common.GetModuleLink(TabId, ModuleId, "EditPages", ArticleSettings, "ArticleID=" & _articleID.ToString()), True)
Catch exc As Exception 'Module failed to load
ProcessModuleLoadException(Me, exc)
End Try
End Sub
#End Region
End Class
End Namespace