diff --git a/build/UmbracoVersion.txt b/build/UmbracoVersion.txt
index 6ef1d69bd9..fc49d734a7 100644
--- a/build/UmbracoVersion.txt
+++ b/build/UmbracoVersion.txt
@@ -1,2 +1,3 @@
# Usage: on line 2 put the release version, on line 3 put the version comment (example: beta)
-7.6.0
\ No newline at end of file
+7.7.0
+alpha001
\ No newline at end of file
diff --git a/src/SolutionInfo.cs b/src/SolutionInfo.cs
index ad697d99bf..9f58f72a6d 100644
--- a/src/SolutionInfo.cs
+++ b/src/SolutionInfo.cs
@@ -11,5 +11,5 @@ using System.Resources;
[assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyFileVersion("7.6.0")]
-[assembly: AssemblyInformationalVersion("7.6.0")]
\ No newline at end of file
+[assembly: AssemblyFileVersion("7.7.0")]
+[assembly: AssemblyInformationalVersion("7.7.0-alpha001")]
\ No newline at end of file
diff --git a/src/Umbraco.Core/Configuration/UmbracoVersion.cs b/src/Umbraco.Core/Configuration/UmbracoVersion.cs
index 952dd9a22a..05d75516d7 100644
--- a/src/Umbraco.Core/Configuration/UmbracoVersion.cs
+++ b/src/Umbraco.Core/Configuration/UmbracoVersion.cs
@@ -6,7 +6,7 @@ namespace Umbraco.Core.Configuration
{
public class UmbracoVersion
{
- private static readonly Version Version = new Version("7.6.0");
+ private static readonly Version Version = new Version("7.7.0");
///
/// Gets the current version of Umbraco.
@@ -24,7 +24,7 @@ namespace Umbraco.Core.Configuration
/// Gets the version comment (like beta or RC).
///
/// The version comment.
- public static string CurrentComment { get { return ""; } }
+ public static string CurrentComment { get { return "alpha001"; } }
// Get the version of the umbraco.dll by looking at a class in that dll
// Had to do it like this due to medium trust issues, see: http://haacked.com/archive/2010/11/04/assembly-location-and-medium-trust.aspx
diff --git a/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseSchemaResult.cs b/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseSchemaResult.cs
index a34db10839..45438da9d8 100644
--- a/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseSchemaResult.cs
+++ b/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseSchemaResult.cs
@@ -142,6 +142,12 @@ namespace Umbraco.Core.Persistence.Migrations.Initial
return new Version(7, 5, 0);
}
+ //if the error is for umbracoUserGroup it must be the previous version to 7.7 since that is when it is added
+ if (Errors.Any(x => x.Item1.Equals("Table") && (x.Item2.InvariantEquals("umbracoUserGroup"))))
+ {
+ return new Version(7, 6, 0);
+ }
+
return UmbracoVersion.Current;
}
diff --git a/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenFiveZero/AddRedirectUrlTable.cs b/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenFiveZero/AddRedirectUrlTable.cs
index 829631c7f4..94bac477f2 100644
--- a/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenFiveZero/AddRedirectUrlTable.cs
+++ b/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenFiveZero/AddRedirectUrlTable.cs
@@ -33,7 +33,7 @@ namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenFiveZer
return null;
localContext.Delete.Table(umbracoRedirectUrlTableName);
}
-
+
localContext.Create.Table(umbracoRedirectUrlTableName)
.WithColumn("id").AsGuid().NotNullable().PrimaryKey("PK_" + umbracoRedirectUrlTableName)
.WithColumn("createDateUtc").AsDateTime().NotNullable()
diff --git a/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenSevenZero/AddUserGroupTables.cs b/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenSevenZero/AddUserGroupTables.cs
index 62b75bbf7a..f4b5de6c02 100644
--- a/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenSevenZero/AddUserGroupTables.cs
+++ b/src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSevenSevenZero/AddUserGroupTables.cs
@@ -3,11 +3,12 @@ using System.Data;
using System.Linq;
using Umbraco.Core.Configuration;
using Umbraco.Core.Logging;
+using Umbraco.Core.Models.Rdbms;
using Umbraco.Core.Persistence.SqlSyntax;
namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenSevenZero
{
- [Migration("7.6.0", 100, Constants.System.UmbracoMigrationName)]
+ [Migration("7.6.0", 0, Constants.System.UmbracoMigrationName)]
public class AddUserGroupTables : MigrationBase
{
public AddUserGroupTables(ISqlSyntaxProvider sqlSyntax, ILogger logger)
@@ -29,64 +30,27 @@ namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenSevenZe
{
if (tables.InvariantContains("umbracoUserGroup") == false)
{
- Create.Table("umbracoUserGroup")
- .WithColumn("id").AsInt32().Identity().PrimaryKey("PK_umbracoUserGroup")
- .WithColumn("userGroupAlias").AsString(200).NotNullable()
- .WithColumn("userGroupName").AsString(200).NotNullable()
- .WithColumn("userGroupDefaultPermissions").AsString(50).Nullable();
+ Create.Table();
}
if (tables.InvariantContains("umbracoUser2UserGroup") == false)
{
- Create.Table("umbracoUser2UserGroup")
- .WithColumn("userId").AsInt32().NotNullable()
- .WithColumn("userGroupId").AsInt32().NotNullable();
- Create.PrimaryKey("PK_user2userGroup")
- .OnTable("umbracoUser2UserGroup")
- .Columns(new[] {"userId", "userGroupId"});
- Create.ForeignKey("FK_umbracoUser2UserGroup_userId")
- .FromTable("umbracoUser2UserGroup").ForeignColumn("userId")
- .ToTable("umbracoUser").PrimaryColumn("id").OnDeleteOrUpdate(Rule.None);
- Create.ForeignKey("FK_umbracoUser2UserGroup_userGroupId")
- .FromTable("umbracoUser2UserGroup").ForeignColumn("userGroupId")
- .ToTable("umbracoUserGroup").PrimaryColumn("id").OnDeleteOrUpdate(Rule.None);
+ Create.Table();
}
if (tables.InvariantContains("umbracoUserGroup2App") == false)
{
- Create.Table("umbracoUserGroup2App")
- .WithColumn("userGroupId").AsInt32().NotNullable()
- .WithColumn("app").AsString(50).NotNullable();
- Create.PrimaryKey("PK_userGroup2App")
- .OnTable("umbracoUserGroup2App")
- .Columns(new[] {"userGroupId", "app"});
- Create.ForeignKey("FK_umbracoUserGroup2App_umbracoGroupUser_id")
- .FromTable("umbracoUserGroup2App").ForeignColumn("userGroupId")
- .ToTable("umbracoUserGroup").PrimaryColumn("id").OnDeleteOrUpdate(Rule.None);
+ Create.Table();
}
if (tables.InvariantContains("umbracoUserGroup2NodePermission") == false)
{
- Create.Table("umbracoUserGroup2NodePermission")
- .WithColumn("userGroupId").AsInt32().NotNullable()
- .WithColumn("nodeId").AsInt32().NotNullable()
- .WithColumn("permission").AsString(10).NotNullable();
- Create.PrimaryKey("PK_umbracoUserGroup2NodePermission")
- .OnTable("umbracoUserGroup2NodePermission")
- .Columns(new[] {"userGroupId", "nodeId", "permission"});
- Create.ForeignKey("FK_umbracoUserGroup2NodePermission_umbracoNode_id")
- .FromTable("umbracoUserGroup2NodePermission").ForeignColumn("nodeId")
- .ToTable("umbracoNode").PrimaryColumn("id").OnDeleteOrUpdate(Rule.None);
- Create.ForeignKey("FK_umbracoUserGroup2NodePermission_umbracoUserGroup_id")
- .FromTable("umbracoUserGroup2NodePermission").ForeignColumn("userGroupId")
- .ToTable("umbracoUserGroup").PrimaryColumn("id").OnDeleteOrUpdate(Rule.None);
+ Create.Table();
}
}
private void MigrateUserTypesToGroups()
{
- // TODO: review for MySQL and CE (tested only on SQL Express)
-
// Create a user group for each user type
Execute.Sql(@"INSERT INTO umbracoUserGroup (userGroupAlias, userGroupName, userGroupDefaultPermissions)
SELECT userTypeAlias, userTypeName, userTypeDefaultPermissions
@@ -108,7 +72,7 @@ namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenSevenZe
FROM umbracoUserGroup ug
INNER JOIN umbracoUser2UserGroup u2ug ON u2ug.userGroupId = ug.id
INNER JOIN umbracoUser u ON u.id = u2ug.userId
- INNER JOIN umbracoUser2app u2a ON u2a.[user] = u.id
+ INNER JOIN umbracoUser2app u2a ON u2a." + SqlSyntax.GetQuotedColumnName("user") + @" = u.id
WHERE u.id = 0");
// Rename some groups for consistency (plural form)
@@ -118,14 +82,12 @@ namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenSevenZe
private void MigrateUserPermissions()
{
- // TODO: review for MySQL and CE (tested only on SQL Express)
-
// Create user group records for all non-admin users that have specific permissions set
Execute.Sql(@"INSERT INTO umbracoUserGroup(userGroupAlias, userGroupName)
SELECT userName + 'Group', 'Group for ' + userName
FROM umbracoUser
WHERE (id IN (
- SELECT [user]
+ SELECT " + SqlSyntax.GetQuotedColumnName("user") + @"
FROM umbracoUser2app
) OR id IN (
SELECT userid
@@ -157,7 +119,7 @@ namespace Umbraco.Core.Persistence.Migrations.Upgrades.TargetVersionSevenSevenZe
FROM umbracoUserGroup ug
INNER JOIN umbracoUser2UserGroup u2ug ON u2ug.userGroupId = ug.id
INNER JOIN umbracoUser u ON u.id = u2ug.userId
- INNER JOIN umbracoUser2app u2a ON u2a.[user] = u.id
+ INNER JOIN umbracoUser2app u2a ON u2a." + SqlSyntax.GetQuotedColumnName("user") + @" = u.id
WHERE ug.userGroupAlias NOT IN (
SELECT userTypeAlias
FROM umbracoUserType
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index dd1c53c34b..8d8e94cb0b 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -2376,9 +2376,9 @@ xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.1\x86\*.* "$(TargetDir)x86\"
True
True
- 7600
+ 7700
/
- http://localhost:7600
+ http://localhost:7700
False
False