forked from YodasMyDad/mvcforum
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathVersionDbChanges.txt
More file actions
417 lines (355 loc) · 15 KB
/
VersionDbChanges.txt
File metadata and controls
417 lines (355 loc) · 15 KB
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
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
#### NOTE ####
Db & Upgrade scripts that you can paste directly into SQL Express are found in MVCforum.Website project
Installer > Db > 'Then Choose version number'
==============================
============ v1.0 ============
==============================
N/A
==============================
============ v1.1 ============
==============================
Added primary key to Activity Table 'Id' field
ALTER TABLE [dbo].[Activity] ADD CONSTRAINT [PK_Activity] PRIMARY KEY CLUSTERED
([Id] ASC) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
Added primary key to BadgeTypeTimeLastChecked Table 'Id' field
ALTER TABLE [dbo].[BadgeTypeTimeLastChecked] ADD CONSTRAINT [PK_BadgeTypeTimeLastChecked] PRIMARY KEY CLUSTERED
([Id] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
Updated table 'Topic'
---- Poll_Id (Guid) allow nulls
ALTER TABLE Topic ADD Poll_Id uniqueidentifier
** Update name to nvarchar(450)
** Update slug to nvarchar(450)
Updated table 'Category'
** Update name to nvarchar(450)
** Update slug to nvarchar(450)
Updated table 'TopicTag'
** Update name to nvarchar(100)
Added new table 'Poll'
---- Id (Guid) PK
---- IsClosed (bit)
---- MembershipUser_Id (Guid)
---- DateCreated (DateTime)
++++ FK_Poll_MembershipUser
Added new table 'PollAnswer'
---- Id (Guid) PK
---- Answer (nvarchar(600))
---- Poll_Id (Guid)
++++ FK_PollAnswer_Poll
Added new table 'PollVote'
---- Id (Guid) PK
---- MembershipUser_Id (Guid)
---- PollAnswer_Id (Guid)
++++ FK_PollVote_MembershipUser
++++ FK_PollVote_PollAnswer
Added to Settings
---- EnableAkisment (bit) allow nulls
---- AkismentKey (nvarchar(100)) allow nulls
---- CurrentDatabaseVersion (nvarchar(10)) allow nulls
---- SMTPPort (nvarchar(10)) allow nulls
---- SpamQuestion (nvarchar(500)) allow nulls
---- SpamAnswer (nvarchar(500)) allow nulls
---- SMTPEnableSSL (bit) allow nulls
---- EnableSocialLogins (bit) allow nulls
---- EnablePolls (bit) allow nulls
Added to Post
---- FlaggedAsSpam (bit) allow nulls
Added to MembershipUser
---- Avatar (nvarchar(250)) allow nulls
---- FacebookAccessToken (nvarchar(150)) allow nulls
---- FacebookId (bigint) allow nulls
---- TwitterAccessToken (nvarchar(150)) allow nulls
---- TwitterId (nvarchar(150)) allow nulls
---- GoogleAccessToken (nvarchar(150)) allow nulls
---- GoogleId (nvarchar(150)) allow nulls
---- MiscAccessToken (nvarchar(150)) allow nulls
---- IsExternalAccount (bit) allow nulls
---- TwitterShowFeed (bit) allow nulls
---- LoginIdExpires (datetime) allow nulls
---- Latitude (nvarchar(40)) allow nulls
---- Longitude (nvarchar(40)) allow nulls
** Updated UserName to nvarchar(150)
** Update slug to nvarchar(150)
Added to Permission (Data)
---- Vote In Polls
Added Language Strings
---- Topic.Label.TopicTitle = Title
---- Poll.Button.Create = Add A Poll To This Topic
---- Poll.Button.Remove = Remove Poll From Topic
---- Poll.Placeholder.TypeAnswerHere = Type A Poll Answer Here
---- Topic.OptionsHeading = Topic Options
---- Poll.Button.Vote = Submit Vote
---- Error.WrongAnswerRegistration = There was an error with your answer, please try again
---- Members.LoginOrText = Or
---- Facebook.Error.EnabledButNotAddedKeys = You have enabled Facebook login but not added your AppId or Secret key to the web.config
---- Members.Profile.IsSocialAccount = Social Account
Web.config Changes
<add key="FacebookAppId" value=""/>
<add key="FacebookAppSecret" value="" />
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" />
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true"/>
</security>
</system.webServer>
<httpRuntime requestValidationMode="2.0"
requestPathInvalidCharacters="*,:,&,\"
relaxedUrlToFileSystemMapping="true" maxRequestPathLength="260" maxQueryStringLength="2048" />
==============================
============ v1.2 ============
==============================
Added Language Strings
---- Date.JustNow = Just now
---- Date.OneMinuteAgo = 1 minute ago
---- Date.MinutesAgo = {0} minutes ago
---- Date.OneHourAgo = 1 hour ago
---- Date.HoursAgo = {0} hours ago
---- Date.Yesterday = yesterday
---- Date.DaysAgo = {0} days ago
---- Date.WeeksAgo = {0} weeks ago
---- Side.Search = Search
---- Search.NoResults = Sorry no results found
==============================
============ v1.3 ============
==============================
---Added New Language Strings
Members.DeleteAllPosts = Delete All Posts
Poll.Button.Remove = Remove Poll
Poll.Button.Create = Create Poll
Poll.Placeholder.TypeAnswerHere = Type Answer Here
Topic.OptionsHeading = More Options
Buttons.CreatePost = Add Post
Topic.Label.Category = Choose Category
Editor.NeedHelp = Need formatting help?
Members.BanUser = Ban User
Members.UnBanUser = Unban User
Errors.NoPermissionPolls = Topic Created, But you do not have permission to create polls
Topic.ShowMorePosts = Show More Posts
Topic.ShowMorePostsLoading = Loading Posts...
Topic.AlreadyAnswered = Questions that may already have your answer
Topic.CommentsDetails = Comments
Topic.Comment = Answer
Stats.FooterActiveUsersText = Members Currently Online
PostFilter.OrderBy = Order By:
PostFilter.Standard = Standard
PostFilter.Newest = Newest
PostFilter.Votes = Votes
PM.NewPrivateMessageSubject = New Private Message
PM.NewPrivateMessageBody = {0} has just sent you a private message.
Post.DeleteConfirmation = Are you sure you want to delete?
Category.SubCategoriesHeading = Sub Categories In
Category.AllCategories = All Categories
Category.MostRecent = Most recent:
Members.LogonFacebookButton = Login with Facebook
Members.LogonGoogleButton = Login with Google
Members.LogonYahooButton = Login with Yahoo
Members.LogonTwitterButton = Login with Twitter
Twitter.Error.EnabledButNotAddedKeys = You have enabled social logins but not added the Twitter id and secret key in the web.config
Error.EmailIsBanned = The email address or domain you are trying to use is banned
Post.FilesUploaded = Files uploaded successfully
Post.Attach = Attach
Post.Upload = Upload Files
Post.UploadBannedFileExtension = File extension not allowed
Post.UploadFileTooBig = File upload is too big
File.SuccessfullyDeleted = File deleted
+++ CHANGES TO EXISTING LANGUAGE STRINGS
Topic.Comments = Answers
--- MembershipRole
Add > Moderator
--- MembershipUser
LastActivityDate - DateTime allow nulls
DisableEmailNotifications (bit) allow nulls
DisablePosting (bit) allow nulls
DisablePrivateMessages (bit) allow nulls
DisableFileUploads (bit) allow nulls
+++ CHANGES
FacebookAccessToken - change to nvarchar(250)
TwitterAccessToken - change to nvarchar(250)
GoogleAccessToken - change to nvarchar(250)
MiscAccessToken - change to nvarchar(250)
--- Vote
Added VotedByMembershipUser_Id (uniqueidentifier) allow nulls
Added DateVoted (datetime) allow nulls
--- Permission
Add > Create Polls
Add > Create Topics
Add > Attach Files
--- TopicTag
Slug (nvarchar(100)) do not allow nulls
// Use this SQL to update existing site with tags
UPDATE TopicTag
SET Slug = Tag
--- Settings
SuspendRegistration bit allow nulls
--- Add new BannedEmail Table using the SQL below
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[BannedEmail](
[Id] [uniqueidentifier] NOT NULL,
[Email] [nvarchar](200) NOT NULL,
[DateAdded] [datetime] NOT NULL,
CONSTRAINT [PK_BannedEmail] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
--- Add new BannedWord Table using the SQL below
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[BannedWord](
[Id] [uniqueidentifier] NOT NULL,
[Word] [nvarchar](75) NOT NULL,
[DateAdded] [datetime] NOT NULL,
CONSTRAINT [PK_BannedWord] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
--- Add new UploadedFile Table using the SQL below
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[UploadedFile](
[Id] [uniqueidentifier] NOT NULL,
[Filename] [nvarchar](200) NOT NULL,
[MembershipUser_Id] [uniqueidentifier] NOT NULL,
[Post_Id] [uniqueidentifier] NOT NULL,
[DateCreated] [datetime] NOT NULL,
CONSTRAINT [PK_UploadedFile] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
--- Web.Config add the following app settings
<add key="TwitterAppId" value="" />
<add key="TwitterAppSecret" value="" />
<add key="BannedWordReplaceCharactor" value="?" />
<add key="FileUploadAllowedExtensions" value="jpg,jpeg,png,gif" />
<add key="FileUploadMaximumFileSizeInBytes" value="1048576" />
--- Web.config added dotnet open auth
<configSections>
<sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
<section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
---
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
---
<!-- This prevents the Windows Event Log from frequently logging that HMAC1 is being used (when the other party needs it). -->
<legacyHMACWarning enabled="0" />
<!-- When targeting ASP.NET MVC 3, this assemblyBinding makes MVC 1 and 2 references relink
to MVC 3 so libraries such as DotNetOpenAuth that compile against MVC 1 will work with it.
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
</assemblyBinding>
-->
---
<system.net>
<defaultProxy enabled="true" />
<settings>
<!-- This setting causes .NET to check certificate revocation lists (CRL)
before trusting HTTPS certificates. But this setting tends to not
be allowed in shared hosting environments. -->
<!--<servicePointManager checkCertificateRevocationList="true"/>-->
</settings>
</system.net>
<dotNetOpenAuth>
<messaging>
<untrustedWebRequest>
<whitelistHosts>
<!-- Uncomment to enable communication with localhost (should generally not activate in production!) -->
<!--<add name="localhost" />-->
</whitelistHosts>
</untrustedWebRequest>
</messaging>
<!-- Allow DotNetOpenAuth to publish usage statistics to library authors to improve the library. -->
<reporting enabled="true" />
<!-- This is an optional configuration section where aspects of dotnetopenauth can be customized. -->
<!-- For a complete set of configuration options see http://www.dotnetopenauth.net/developers/code-snippets/configuration-options/ -->
<openid>
<relyingParty>
<security requireSsl="false">
<!-- Uncomment the trustedProviders tag if your relying party should only accept positive assertions from a closed set of OpenID Providers. -->
<!--<trustedProviders rejectAssertionsFromUntrustedProviders="true">
<add endpoint="https://www.google.com/accounts/o8/ud" />
</trustedProviders>-->
</security>
<behaviors>
<!-- The following OPTIONAL behavior allows RPs to use SREG only, but be compatible
with OPs that use Attribute Exchange (in various formats). -->
<add type="DotNetOpenAuth.OpenId.RelyingParty.Behaviors.AXFetchAsSregTransform, DotNetOpenAuth.OpenId.RelyingParty" />
</behaviors>
</relyingParty>
<provider></provider>
</openid>
</dotNetOpenAuth>
<uri>
<!-- The uri section is necessary to turn on .NET 3.5 support for IDN (international domain names),
which is necessary for OpenID urls with unicode characters in the domain/host name.
It is also required to put the Uri class into RFC 3986 escaping mode, which OpenID and OAuth require. -->
<idn enabled="All" />
<iriParsing enabled="true" />
</uri>
==============================
============ v1.4 ============
==============================
--- Settings
NewMemberEmailConfirmation bit allow nulls
--- Post
IpAddress nvarchar(50) allow nulls
--- Language strings
Members.MemberEmailAuthorisationNeeded = We have sent you a confirmation email - please click the confirmation link in your email to approve your account.
Members.MemberEmailAuthorisation.EmailBody = You have registered on {0} - in order to continue you must confirm your email address by clicking the link below.<br> {1}
Members.MemberEmailAuthorisation.Subject = Email Confirmation
Members.NowApproved = Your account has now been approved - thank you
Members.MemberEmailAuthorisationNeededMessage = Click the link in your confirmation email to approve your account.
Members.MemberEmailAuthorisationResend = Resend Confirmation Email
Members.MessageMe = Message Me
Confirmation.DeleteMembersPosts = Are you sure? This will delete all the members posts and topics!
--- Web.CONFIG
We won't be putting changes in here anymore for this, it's best to take the new web.config and just
update the connection string and other settings and run the forum.
==============================
============ v1.5 ============
==============================
--- Category
ModerateTopics bit NULL
ModeratePosts bit NULL
PageTitle nvarchar(80) NULL
MetaDescription nvarchar(200) NULL
[Path] nvarchar(2500) NULL
-- Post
Pending bit NULL
-- Topic
Pending bit NULL
-- PrivateMessage
IsSentMessage bit NULL
-- Badge
AwardsPoints int NULL
-- Misc - Membershipuser
Optional > Change [Avatar] to [nvarchar](500)
-- Language Strings
Moderate.AwaitingModeration = Your post is currently awaiting moderation. Once approved it will appear on the site
Badges.AwardsPoints = Awards {0} points
Language.Change = Change Language
Post.Quote = Quote
Members.Label.UploadNewAvatar = Upload a new profile image
Member.HasNewPrivateMessages = You have new unread Private messages