+ Enter connection and authentication details for the database you want to install Umbraco on
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/error.html b/src/Umbraco.Web.UI.Client/src/installer/steps/error.html
new file mode 100644
index 0000000000..234f86e1a4
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/error.html
@@ -0,0 +1,9 @@
+
+
Error during installation
+
+
{{installer.current.model.message}}
+
+
See log for full details
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/permissionsreport.html b/src/Umbraco.Web.UI.Client/src/installer/steps/permissionsreport.html
new file mode 100644
index 0000000000..3ced6ed678
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/permissionsreport.html
@@ -0,0 +1,26 @@
+
+
Your permission settings are not ready for umbraco
+
+ In order to run umbraco, you'll need to update your permission settings.
+ Detailed information about the correct file & folder permissions for Umbraco can be found
+ here.
+
+
+ The following report list the permissions that are currently failing. Once the permissions are fixed press the 'Go back' button to restart the installation.
+
+
+
+
+
{{category}}
+
+
+ {{item}}
+
+
+
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.controller.js b/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.controller.js
new file mode 100644
index 0000000000..81958ddd55
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.controller.js
@@ -0,0 +1,12 @@
+angular.module("umbraco.install").controller("Umbraco.Installer.PackagesController", function ($scope, installerService) {
+
+ installerService.getPackages().then(function (response) {
+ $scope.packages = response.data;
+ });
+
+ $scope.setPackageAndContinue = function (pckId) {
+ installerService.status.current.model = pckId;
+ installerService.forward();
+ };
+
+});
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.html b/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.html
new file mode 100644
index 0000000000..7347023c9d
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/starterkit.html
@@ -0,0 +1,20 @@
+
+
Install a starter website
+
+
+ Installing a starter website helps you learn how Umbraco works, and gives you a solid
+ and simple foundation to build on top of.
+
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/upgrade.html b/src/Umbraco.Web.UI.Client/src/installer/steps/upgrade.html
new file mode 100644
index 0000000000..3638f7f37a
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/upgrade.html
@@ -0,0 +1,14 @@
+
+
Upgrading Umbraco
+
+ Welcome to the Umbraco installer. You see this screen because your Umbraco installation needs a quick upgrade of its database and files,
+ it is completely harmless and will simply ensure your website is kept as fast, secure and uptodate as possible.
+
+
+ Simply click continue below to be guided through the rest of the upgrade
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js
new file mode 100644
index 0000000000..6c689a3166
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/user.controller.js
@@ -0,0 +1,24 @@
+angular.module("umbraco.install").controller("Umbraco.Install.UserController", function($scope, installerService) {
+
+ $scope.passwordPattern = /.*/;
+ if ($scope.installer.current.model.minNonAlphaNumericLength > 0) {
+ var exp = "";
+ for (var i = 0; i < $scope.installer.current.model.minNonAlphaNumericLength; i++) {
+ exp += ".*[\\W].*";
+ }
+ //replace duplicates
+ exp = exp.replace(".*.*", ".*");
+ $scope.passwordPattern = new RegExp(exp);
+ }
+
+ $scope.validateAndInstall = function(){
+ installerService.install();
+ };
+
+ $scope.validateAndForward = function(){
+ if(this.myForm.$valid){
+ installerService.forward();
+ }
+ };
+
+});
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/user.html b/src/Umbraco.Web.UI.Client/src/installer/steps/user.html
new file mode 100644
index 0000000000..0b8b44124a
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/user.html
@@ -0,0 +1,56 @@
+
+
Install Umbraco 7
+
+
Enter your name, email and password to install Umbraco 7 with its default settings, alternatively you can customize your installation
+
+
+
+
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/installer/steps/version7upgradereport.html b/src/Umbraco.Web.UI.Client/src/installer/steps/version7upgradereport.html
new file mode 100644
index 0000000000..df1e58d737
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/installer/steps/version7upgradereport.html
@@ -0,0 +1,22 @@
+
+
Major version upgrade from {{installer.current.model.currentVersion}} to {{installer.current.model.newVersion}}
+
There were {{installer.current.model.errors.length}} issues detected
+
+ The following compatibility issues were found. If you continue all non-compatible property editors will be converted to a Readonly/Label.
+ You will be able to change the property editor to a compatible type manually by editing the data type after installation.
+
+
+ Otherwise if you choose not to proceed you will need to fix the errors listed below.
+ Refer to v{{installer.current.model.newVersion}} upgrade instructions for full details.
+
+
+
+
+ {{item}}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/less/installer.less b/src/Umbraco.Web.UI.Client/src/less/installer.less
new file mode 100644
index 0000000000..1e306419c4
--- /dev/null
+++ b/src/Umbraco.Web.UI.Client/src/less/installer.less
@@ -0,0 +1,280 @@
+// Core variables and mixins
+@import "fonts.less"; // Loading fonts
+@import "variables.less"; // Modify this for custom colors, font-sizes, etc
+@import "mixins.less";
+@import "buttons.less";
+@import "forms.less";
+
+// Grid system and page structure
+@import "../../lib/bootstrap/less/scaffolding.less";
+@import "../../lib/bootstrap/less/grid.less";
+@import "../../lib/bootstrap/less/layouts.less";
+
+@import "../../lib/bootstrap/less/thumbnails.less";
+@import "../../lib/bootstrap/less/media.less";
+
+
+[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
+ display: none !important;
+}
+
+
+html {
+ background: url('../img/installer.jpg') no-repeat center center fixed;
+ -webkit-background-size: cover;
+ -moz-background-size: cover;
+ -o-background-size: cover;
+ background-size: cover;
+}
+
+body {
+ margin: 0;
+ padding: 0;
+ height: 100%;
+ width: 100%;
+
+ font-family: @baseFontFamily;
+ font-size: @baseFontSize;
+ line-height: @baseLineHeight;
+ color: @textColor;
+
+ vertical-align: center;
+ text-align: center;
+}
+
+#logo{
+ position: absolute;
+ top: 20px;
+ left: 20px;
+ opacity: 0.8;
+ z-index: 777;
+}
+
+#installer{
+ margin: auto;
+ background: white;
+ width: 750px;
+ height: 600px;
+ text-align: left;
+ padding: 30px;
+ overflow:hidden;
+ z-index: 667;
+}
+
+#overlay{
+ position: absolute;
+ top: 0;
+ right: 0;
+ left: 0;
+ bottom: 0;
+ background: @blackLight;
+ z-index: 666;
+}
+
+.loading #overlay{
+ opacity: 0.5;
+ display: block !important;
+}
+
+
+#fact{
+ color: #fff;
+ text-shadow: 0px 0px 4px black;
+ font-size: 25px;
+ text-align: left;
+ line-height: 35px;
+ z-index: 667;
+ height: 600px;
+ width: 750px;
+}
+
+#fact h2{
+ font-size: 35px;
+ border-bottom: 1px solid white;
+ padding-bottom: 10px;
+ margin-bottom: 20px;
+ color: white;
+}
+
+#fact a{color: white;}
+
+#feedback{
+ color: #fff;
+ text-shadow: 0px 0px 4px black;
+ font-size: 14px;
+ text-align: center;
+ line-height: 20px;
+ z-index: 667;
+ bottom: 20px;
+ right: 0;
+ left: 0;
+ height: 25px;
+ position: absolute;
+}
+
+
+h1{
+ border-bottom: 1px solid @grayLighter;
+ padding-bottom: 10px;
+ color: @gray;
+}
+
+.error h1, .error .message, span.error{ color: @red;}
+
+legend{font-size: 14px; font-weight: bold}
+
+input.ng-dirty.ng-invalid{border-color: #b94a48; color: #b94a48;}
+.disabled{
+ opacity: 0.6;
+}
+
+.controls{
+ text-align: left
+}
+
+.controls small{display: block; color: @gray;}
+
+.absolute-center {
+ margin: auto;
+ position: absolute;
+ top: 0; left: 0; bottom: 0; right: 0;
+}
+
+.fade-hide, .fade-show {
+ -webkit-transition:all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
+ -moz-transition:all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
+ -o-transition:all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
+ transition:all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
+}
+.fade-hide {
+ opacity:1;
+}
+.fade-hide.fade-hide-active {
+ opacity:0;
+}
+.fade-show {
+ opacity:0;
+}
+.fade-show.fade-show-active {
+ opacity:1;
+}
+
+
+.umb-loader{
+background-color: white;
+margin-top:0;
+margin-left:-100%;
+-moz-animation-name:bounce_loadingProgressG;
+-moz-animation-duration:1s;
+-moz-animation-iteration-count:infinite;
+-moz-animation-timing-function:linear;
+-webkit-animation-name:bounce_loadingProgressG;
+-webkit-animation-duration:1s;
+-webkit-animation-iteration-count:infinite;
+-webkit-animation-timing-function:linear;
+-ms-animation-name:bounce_loadingProgressG;
+-ms-animation-duration:1s;
+-ms-animation-iteration-count:infinite;
+-ms-animation-timing-function:linear;
+-o-animation-name:bounce_loadingProgressG;
+-o-animation-duration:1s;
+-o-animation-iteration-count:infinite;
+-o-animationtiming-function:linear;
+animation-name:bounce_loadingProgressG;
+animation-duration:1s;
+animation-iteration-count:infinite;
+animation-timing-function:linear;
+width:100%;
+height: 5px;
+}
+
+
+ @-moz-keyframes bounce_loadingProgressG{
+ 0%{
+ margin-left:-100%;
+ }
+
+ 100%{
+ margin-left:100%;
+ }
+
+ }
+
+ @-webkit-keyframes bounce_loadingProgressG{
+ 0%{
+ margin-left:-100%;
+ }
+
+ 100%{
+ margin-left:100%;
+ }
+
+ }
+
+ @-ms-keyframes bounce_loadingProgressG{
+ 0%{
+ margin-left:-100%;
+ }
+
+ 100%{
+ margin-left:100%;
+ }
+
+ }
+
+ @-o-keyframes bounce_loadingProgressG{
+ 0%{
+ margin-left:-100%;
+ }
+
+ 100%{
+ margin-left:100%;
+ }
+
+ }
+
+ @keyframes bounce_loadingProgressG{
+ 0%{
+ margin-left:-100%;
+ }
+ 100%{
+ margin-left:100%;
+ }
+}
+
+//loader defaults
+.umb-loader-container, .umb-loader-done{
+ height: 3px;
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ overflow: hidden;
+ width: 0%;
+ z-index: 777;
+}
+
+.umb-loader-done{
+ right: 0%;
+ background: white;
+}
+
+
+.permissions-report {
+ overflow:auto;
+ height:320px;
+ margin:0;
+ display:block;
+ padding:0;
+}
+.permissions-report > li {
+ list-style:none;
+}
+.permissions-report h4 {
+ margin:7px;
+}
+
+.upgrade-report {
+ overflow:auto;
+ height:280px;
+ display:block;
+}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js
index 824360692f..54886e3580 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/fileupload/fileupload.controller.js
@@ -15,8 +15,8 @@
*/
function fileUploadController($scope, $element, $compile, imageHelper, fileManager, umbRequestHelper, mediaHelper) {
- mediaHelper.registerFileResolver("Umbraco.UploadField", function (property) {
- return property.value;
+ mediaHelper.registerFileResolver("Umbraco.UploadField", function(property){
+ return property.value;
});
/** Clears the file collections when content is saving (if we need to clear) or after saved */
diff --git a/src/Umbraco.Web.UI.Client/test/unit/app/media/edit-media-controller.spec.js b/src/Umbraco.Web.UI.Client/test/unit/app/media/edit-media-controller.spec.js
index 0d06b92c3d..331d81e131 100644
--- a/src/Umbraco.Web.UI.Client/test/unit/app/media/edit-media-controller.spec.js
+++ b/src/Umbraco.Web.UI.Client/test/unit/app/media/edit-media-controller.spec.js
@@ -5,7 +5,7 @@ describe('edit media controller tests', function () {
beforeEach(module('umbraco'));
//inject the contentMocks service
- beforeEach(inject(function ($rootScope, $controller, angularHelper, $httpBackend, mediaMocks, mocksUtils, entityMocks) {
+ beforeEach(inject(function ($rootScope, $controller, angularHelper, $httpBackend, mediaMocks, entityMocks, mocksUtils) {
//for these tests we don't want any authorization to occur
mocksUtils.disableAuth();
diff --git a/src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.cs b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.cs
similarity index 78%
rename from src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.cs
rename to src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.cs
index c27ce02c2f..013cd28c00 100644
--- a/src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.cs
+++ b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.cs
@@ -1,104 +1,106 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.Mvc;
-using System.Web.Routing;
-using Umbraco.Core.Logging;
-using Umbraco.Web.Install;
-
-namespace Umbraco.Web.UI.Install.Steps.Skinning
-{
- public delegate void StarterKitInstalledEventHandler();
-
- public partial class LoadStarterKits : StepUserControl
- {
- ///
- /// Returns the string for the package installer web service base url
- ///
- protected string PackageInstallServiceBaseUrl { get; private set; }
-
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
-
- //Get the URL for the package install service base url
- var umbracoPath = Core.Configuration.GlobalSettings.UmbracoMvcArea;
- var urlHelper = new UrlHelper(Context.Request.RequestContext);
- PackageInstallServiceBaseUrl = urlHelper.Action("Index", "InstallPackage", new { area = umbracoPath });
- }
-
- ///
- /// Flag to show if we can connect to the repo or not
- ///
- protected bool CannotConnect { get; private set; }
-
- public event StarterKitInstalledEventHandler StarterKitInstalled;
-
- protected virtual void OnStarterKitInstalled()
- {
- StarterKitInstalled();
- }
-
-
- private readonly global::umbraco.cms.businesslogic.packager.repositories.Repository _repo;
- private const string RepoGuid = "65194810-1f85-11dd-bd0b-0800200c9a66";
-
- public LoadStarterKits()
- {
- _repo = global::umbraco.cms.businesslogic.packager.repositories.Repository.getByGuid(RepoGuid);
- }
-
- protected void Page_Load(object sender, EventArgs e)
- {
-
- }
-
- protected void NextStep(object sender, EventArgs e)
- {
- var p = (Default)this.Page;
- InstallHelper.RedirectToNextStep(Page, Request.GetItemAsString("installStep"));
- }
-
- protected override void OnInit(EventArgs e)
- {
- base.OnInit(e);
-
- if (_repo == null)
- {
- throw new InvalidOperationException("Could not find repository with id " + RepoGuid);
- }
-
- //clear progressbar cache
- InstallHelper.ClearProgress();
-
- if (_repo.HasConnection())
- {
- try
- {
- var r = new org.umbraco.our.Repository();
-
- rep_starterKits.DataSource = r.Modules();
- rep_starterKits.DataBind();
- }
- catch (Exception ex)
- {
- LogHelper.Error("Cannot connect to package repository", ex);
- CannotConnect = true;
-
- }
- }
- else
- {
- CannotConnect = true;
- }
- }
-
-
- protected void GotoLastStep(object sender, EventArgs e)
- {
- InstallHelper.RedirectToLastStep(Page);
- }
-
- }
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+using System.Web.Routing;
+using System.Web.UI;
+using Umbraco.Core.Logging;
+using Umbraco.Web.Install;
+
+namespace Umbraco.Web.UI.Install.Steps.Skinning
+{
+ public delegate void StarterKitInstalledEventHandler();
+
+ public partial class LoadStarterKits : UserControl
+ {
+ ///
+ /// Returns the string for the package installer web service base url
+ ///
+ protected string PackageInstallServiceBaseUrl { get; private set; }
+
+ protected override void OnLoad(EventArgs e)
+ {
+ base.OnLoad(e);
+
+ //Get the URL for the package install service base url
+ var umbracoPath = Core.Configuration.GlobalSettings.UmbracoMvcArea;
+ var urlHelper = new UrlHelper(Context.Request.RequestContext);
+ //PackageInstallServiceBaseUrl = urlHelper.Action("Index", "InstallPackage", new { area = "UmbracoInstall" });
+ PackageInstallServiceBaseUrl = urlHelper.GetUmbracoApiService("Index", "InstallPackage", "UmbracoInstall");
+ }
+
+ ///
+ /// Flag to show if we can connect to the repo or not
+ ///
+ protected bool CannotConnect { get; private set; }
+
+ public event StarterKitInstalledEventHandler StarterKitInstalled;
+
+ protected virtual void OnStarterKitInstalled()
+ {
+ StarterKitInstalled();
+ }
+
+
+ private readonly global::umbraco.cms.businesslogic.packager.repositories.Repository _repo;
+ private const string RepoGuid = "65194810-1f85-11dd-bd0b-0800200c9a66";
+
+ public LoadStarterKits()
+ {
+ _repo = global::umbraco.cms.businesslogic.packager.repositories.Repository.getByGuid(RepoGuid);
+ }
+
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+
+ //protected void NextStep(object sender, EventArgs e)
+ //{
+ // var p = (Default)this.Page;
+ // //InstallHelper.RedirectToNextStep(Page, Request.GetItemAsString("installStep"));
+ //}
+
+ protected override void OnInit(EventArgs e)
+ {
+ base.OnInit(e);
+
+ if (_repo == null)
+ {
+ throw new InvalidOperationException("Could not find repository with id " + RepoGuid);
+ }
+
+ //clear progressbar cache
+ //InstallHelper.ClearProgress();
+
+ if (_repo.HasConnection())
+ {
+ try
+ {
+ var r = new org.umbraco.our.Repository();
+
+ rep_starterKits.DataSource = r.Modules();
+ rep_starterKits.DataBind();
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Error("Cannot connect to package repository", ex);
+ CannotConnect = true;
+
+ }
+ }
+ else
+ {
+ CannotConnect = true;
+ }
+ }
+
+
+ protected void GotoLastStep(object sender, EventArgs e)
+ {
+ //InstallHelper.RedirectToLastStep(Page);
+ }
+
+ }
}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.designer.cs b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.designer.cs
similarity index 97%
rename from src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.designer.cs
rename to src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.designer.cs
index 3af8ec681c..f9f25ad3a1 100644
--- a/src/Umbraco.Web.UI/install/steps/Skinning/LoadStarterKits.ascx.designer.cs
+++ b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/LoadStarterKits.ascx.designer.cs
@@ -1,60 +1,60 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps.Skinning {
-
-
- public partial class LoadStarterKits {
-
- ///
- /// pl_loadStarterKits control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder pl_loadStarterKits;
-
- ///
- /// JsInclude1 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::ClientDependency.Core.Controls.JsInclude JsInclude1;
-
- ///
- /// rep_starterKits control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Repeater rep_starterKits;
-
- ///
- /// LinkButton1 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton LinkButton1;
-
- ///
- /// LinkButton2 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton LinkButton2;
- }
-}
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Umbraco.Web.UI.Install.Steps.Skinning {
+
+
+ public partial class LoadStarterKits {
+
+ ///
+ /// pl_loadStarterKits control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.PlaceHolder pl_loadStarterKits;
+
+ ///
+ /// JsInclude1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::ClientDependency.Core.Controls.JsInclude JsInclude1;
+
+ ///
+ /// rep_starterKits control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Repeater rep_starterKits;
+
+ ///
+ /// LinkButton1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.LinkButton LinkButton1;
+
+ ///
+ /// LinkButton2 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.LinkButton LinkButton2;
+ }
+}
diff --git a/src/Umbraco.Web.UI/install/steps/Skinning/loadStarterKits.ascx b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/loadStarterKits.ascx
similarity index 93%
rename from src/Umbraco.Web.UI/install/steps/Skinning/loadStarterKits.ascx
rename to src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/loadStarterKits.ascx
index 586162a2fd..987abaff0b 100644
--- a/src/Umbraco.Web.UI/install/steps/Skinning/loadStarterKits.ascx
+++ b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Legacy/loadStarterKits.ascx
@@ -1,98 +1,98 @@
-<%@ Control Language="C#" AutoEventWireup="True" CodeBehind="LoadStarterKits.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.Skinning.LoadStarterKits" %>
-<%@ Import Namespace="Umbraco.Web.org.umbraco.our" %>
-
-<%@ Register TagPrefix="umb" Namespace="ClientDependency.Core.Controls" Assembly="ClientDependency.Core" %>
-
-
-
-
-
- <% if (!CannotConnect) { %>
-
- <% } %>
-
-
-
-
-
-
- No thanks, do not install a starterkit!
-
-
-
-
-
-
-
">
-
-
-
Oops...the installer can't connect to the repository
- Starter Kits could not be fetched from the repository as there was no connection - which can occur if you are using a proxy server or firewall with certain configurations,
- or if you are not currently connected to the internet.
-
- Click Continue to complete the installation then navigate to the Developer section of your Umbraco installation
- where you will find the Starter Kits listed in the Packages tree.
-
+
+
+
+
+ <%--
+ No thanks, do not install a starterkit!
+ --%>
+
+
+
+
+
+
">
+
+
+
Oops...the installer can't connect to the repository
+ Starter Kits could not be fetched from the repository as there was no connection - which can occur if you are using a proxy server or firewall with certain configurations,
+ or if you are not currently connected to the internet.
+
+ Click Continue to complete the installation then navigate to the Developer section of your Umbraco installation
+ where you will find the Starter Kits listed in the Packages tree.
+
+
+
+
+
+
+
+
+
+
+
Oops...the installer encountered an error
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Install/Index.cshtml b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Install/Index.cshtml
new file mode 100644
index 0000000000..4c930e0b30
--- /dev/null
+++ b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Install/Index.cshtml
@@ -0,0 +1,52 @@
+@using Umbraco.Web
+@using Umbraco.Web.Install.Controllers
+@{
+ Layout = null;
+}
+
+
+
+
+
+
+
+ Install Umbraco
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Did you know
+
+
+
+
{{installer.feedback}}
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Web.config b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Web.config
new file mode 100644
index 0000000000..a4def2a3db
--- /dev/null
+++ b/src/Umbraco.Web.UI/Areas/UmbracoInstall/Views/Web.config
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
index 3cfadc34bf..5f41b320ce 100644
--- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
+++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
@@ -1,4 +1,4 @@
-
+
@@ -307,10 +307,13 @@
Properties\SolutionInfo.cs
-
- default.aspx
+
+ loadStarterKits.ascxASPXCodeBehind
+
+ loadStarterKits.ascx
+ noNodes.aspxASPXCodeBehind
@@ -319,103 +322,6 @@
noNodes.aspxASPXCodeBehind
-
- default.aspx
-
-
- InstallerRestService.aspx
- ASPXCodeBehind
-
-
- InstallerRestService.aspx
-
-
- database.ascx
- ASPXCodeBehind
-
-
- database.ascx
-
-
- defaultUser.ascx
- ASPXCodeBehind
-
-
- defaultUser.ascx
-
-
- license.ascx
- ASPXCodeBehind
-
-
- license.ascx
-
-
- renaming.ascx
- ASPXCodeBehind
-
-
- renaming.ascx
-
-
- RenderingEngine.ascx
- ASPXCodeBehind
-
-
- RenderingEngine.ascx
-
-
- loadStarterKits.ascx
- ASPXCodeBehind
-
-
- loadStarterKits.ascx
-
-
- StarterKits.ascx
- ASPXCodeBehind
-
-
- StarterKits.ascx
-
-
- ASPXCodeBehind
-
-
- theend.ascx
- ASPXCodeBehind
-
-
- theend.ascx
-
-
- UpgradeReport.ascx
- ASPXCodeBehind
-
-
- UpgradeReport.ascx
-
-
- validatePermissions.ascx
- ASPXCodeBehind
-
-
- validatePermissions.ascx
-
-
- welcome.ascx
- ASPXCodeBehind
-
-
- welcome.ascx
-
-
- Title.ascx
- ASPXCodeBehind
-
-
- Title.ascx
- True
@@ -630,6 +536,7 @@
treeInit.aspx
+
@@ -651,7 +558,6 @@
-
@@ -667,6 +573,7 @@
+ 404handlers.config
@@ -729,6 +636,7 @@
Designer
+ Designer
@@ -740,7 +648,6 @@
UI.xml
-
@@ -1752,12 +1659,6 @@
-
-
-
-
-
-
@@ -1895,8 +1796,6 @@
-
-
@@ -2087,18 +1986,6 @@
-
- UserControl
-
-
- UserControl
-
-
- UserControl
-
-
- UserControl
- Designer
@@ -2615,6 +2502,7 @@
+
diff --git a/src/Umbraco.Web.UI/Umbraco/js/install.js b/src/Umbraco.Web.UI/Umbraco/js/install.js
new file mode 100644
index 0000000000..41aab12c80
--- /dev/null
+++ b/src/Umbraco.Web.UI/Umbraco/js/install.js
@@ -0,0 +1,30 @@
+yepnope({
+
+ load: [
+ 'lib/jquery/jquery-2.0.3.min.js',
+
+ /* 1.1.5 */
+ 'lib/angular/1.1.5/angular.min.js',
+ 'lib/angular/1.1.5/angular-cookies.min.js',
+ 'lib/angular/1.1.5/angular-mobile.min.js',
+ 'lib/angular/1.1.5/angular-mocks.js',
+ 'lib/angular/1.1.5/angular-sanitize.min.js',
+ 'lib/underscore/underscore.js',
+ 'js/umbraco.servervariables.js',
+ 'js/app.dev.js'
+ ],
+
+ complete: function () {
+ jQuery(document).ready(function () {
+
+ angular.module('umbraco.install', [
+ 'umbraco.resources',
+ 'umbraco.services',
+ 'umbraco.httpbackend',
+ 'ngMobile'
+ ]);
+
+ angular.bootstrap(document, ['umbraco.install']);
+ });
+ }
+});
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/Umbraco/js/install.loader.js b/src/Umbraco.Web.UI/Umbraco/js/install.loader.js
new file mode 100644
index 0000000000..bf4a8e787d
--- /dev/null
+++ b/src/Umbraco.Web.UI/Umbraco/js/install.loader.js
@@ -0,0 +1,21 @@
+yepnope({
+
+ load: [
+ 'lib/jquery/jquery-2.0.3.min.js',
+
+ /* 1.1.5 */
+ 'lib/angular/1.1.5/angular.min.js',
+ 'lib/angular/1.1.5/angular-cookies.min.js',
+ 'lib/angular/1.1.5/angular-mobile.min.js',
+ 'lib/angular/1.1.5/angular-mocks.js',
+ 'lib/angular/1.1.5/angular-sanitize.min.js',
+ 'lib/underscore/underscore.js',
+ 'js/umbraco.installer.js'
+ ],
+
+ complete: function () {
+ jQuery(document).ready(function () {
+ angular.bootstrap(document, ['umbraco.install']);
+ });
+ }
+});
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/config/ClientDependency.config b/src/Umbraco.Web.UI/config/ClientDependency.config
index 47bbf4bc32..e09251e424 100644
--- a/src/Umbraco.Web.UI/config/ClientDependency.config
+++ b/src/Umbraco.Web.UI/config/ClientDependency.config
@@ -10,7 +10,7 @@ NOTES:
* Compression/Combination/Minification is not enabled unless debug="false" is specified on the 'compiliation' element in the web.config
* A new version will invalidate both client and server cache and create new persisted files
-->
-
+
-
+
-
+
diff --git a/src/Umbraco.Web.UI/install/Default.aspx.cs b/src/Umbraco.Web.UI/install/Default.aspx.cs
deleted file mode 100644
index 75e701d250..0000000000
--- a/src/Umbraco.Web.UI/install/Default.aspx.cs
+++ /dev/null
@@ -1,86 +0,0 @@
-using System;
-using System.Web;
-using System.Web.UI.WebControls;
-using Umbraco.Core.IO;
-using Umbraco.Web.Install;
-using Umbraco.Web.Security;
-using Umbraco.Web.UI.Pages;
-using umbraco;
-
-namespace Umbraco.Web.UI.Install
-{
- public partial class Default : BasePage
- {
- private string _installStep = "";
-
- protected string CurrentStepClass = "";
-
- protected void Page_Load(object sender, System.EventArgs e)
- {
- rp_steps.DataSource = InstallHelper.InstallerSteps.Values;
- rp_steps.DataBind();
- }
-
- private void LoadContent(InstallerStep currentStep)
- {
- PlaceHolderStep.Controls.Clear();
- PlaceHolderStep.Controls.Add(LoadControl(IOHelper.ResolveUrl(currentStep.UserControl)));
- step.Value = currentStep.Alias;
- CurrentStepClass = currentStep.Alias;
- }
-
- int _stepCounter = 0;
- protected void BindStep(object sender, RepeaterItemEventArgs e)
- {
-
- if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
- {
- var i = (InstallerStep)e.Item.DataItem;
-
- if (!i.HideFromNavigation)
- {
- var _class = (Literal)e.Item.FindControl("lt_class");
- var name = (Literal)e.Item.FindControl("lt_name");
-
- if (i.Alias == CurrentStepClass)
- _class.Text = "active";
-
- _stepCounter++;
- name.Text = (_stepCounter).ToString() + " - " + i.Name;
- }
- else
- e.Item.Visible = false;
- }
- }
-
- override protected void OnInit(EventArgs e)
- {
- base.OnInit(e);
-
- _installStep = Request.GetItemAsString("installStep");
-
- //if this is not an upgrade we will log in with the default user.
- // It's not considered an upgrade if the ConfigurationStatus is missing or empty.
- if (string.IsNullOrWhiteSpace(GlobalSettings.ConfigurationStatus) == false)
- {
- var result = Security.ValidateCurrentUser(false);
-
- switch (result)
- {
- case ValidateRequestAttempt.FailedNoPrivileges:
- case ValidateRequestAttempt.FailedTimedOut:
- case ValidateRequestAttempt.FailedNoContextId:
- Response.Redirect(SystemDirectories.Umbraco + "/AuthorizeUpgrade?redir=" + Server.UrlEncode(Request.RawUrl));
- break;
- }
- }
-
- var s = string.IsNullOrEmpty(_installStep)
- ? InstallHelper.InstallerSteps["welcome"]
- : InstallHelper.InstallerSteps[_installStep];
-
- LoadContent(s);
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/Default.aspx.designer.cs b/src/Umbraco.Web.UI/install/Default.aspx.designer.cs
deleted file mode 100644
index 37e8062070..0000000000
--- a/src/Umbraco.Web.UI/install/Default.aspx.designer.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install {
-
-
- public partial class Default
- {
- ///
- /// ScriptManager1 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.ScriptManager ScriptManager1;
-
- ///
- /// rp_steps control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Repeater rp_steps;
-
- ///
- /// PlaceHolderStep control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder PlaceHolderStep;
-
- ///
- /// step control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- public global::System.Web.UI.HtmlControls.HtmlInputHidden step;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/InstallerRestService.aspx b/src/Umbraco.Web.UI/install/InstallerRestService.aspx
deleted file mode 100644
index cf38b78a70..0000000000
--- a/src/Umbraco.Web.UI/install/InstallerRestService.aspx
+++ /dev/null
@@ -1 +0,0 @@
-<%@ Page Language="C#" AutoEventWireup="True" CodeBehind="InstallerRestService.aspx.cs" Inherits="Umbraco.Web.UI.Install.InstallerRestService" %>
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/InstallerRestService.aspx.cs b/src/Umbraco.Web.UI/install/InstallerRestService.aspx.cs
deleted file mode 100644
index 8b197d75f0..0000000000
--- a/src/Umbraco.Web.UI/install/InstallerRestService.aspx.cs
+++ /dev/null
@@ -1,126 +0,0 @@
-using System;
-using System.Configuration;
-using System.Security.Authentication;
-using System.Web;
-using System.Web.Script.Serialization;
-using System.Web.Script.Services;
-using System.Web.Services;
-using Umbraco.Core;
-using Umbraco.Core.Logging;
-using Umbraco.Web.Install;
-using umbraco;
-using umbraco.businesslogic.Exceptions;
-
-namespace Umbraco.Web.UI.Install
-{
- public partial class InstallerRestService : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- LogHelper.Info(string.Format("Hitting Page_Load on InstallerRestService.aspx for the requested '{0}' feed", Request.QueryString["feed"]));
-
- // Stop Caching in IE
- Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
-
- // Stop Caching in Firefox
- Response.Cache.SetNoStore();
-
- string feed = Request.QueryString["feed"];
- string url = "http://our.umbraco.org/html/twitter";
-
- if (feed == "progress")
- {
- Response.ContentType = "application/json";
- Response.Write(InstallHelper.GetProgress());
- }
- else
- {
- if (feed == "blogs")
- url = "http://our.umbraco.org/html/blogs";
-
- if (feed == "sitebuildervids")
- url = "http://umbraco.org/feeds/videos/site-builder-foundation-html";
-
- if (feed == "developervids")
- url = "http://umbraco.org/feeds/videos/developer-foundation-html";
-
- string xmlResponse = library.GetXmlDocumentByUrl(url).Current.OuterXml;
-
- if (!xmlResponse.Contains("System.Net.WebException"))
- {
- Response.Write(library.GetXmlDocumentByUrl(url).Current.OuterXml);
- }
- else
- {
- Response.Write("We can't connect to umbraco.tv right now. Click Set up your new website above to continue.");
- }
- }
- }
-
-
- [WebMethod]
- [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
- public static string Install()
- {
- //if its not configured then we can continue
- if (ApplicationContext.Current == null || ApplicationContext.Current.IsConfigured)
- {
- throw new AuthenticationException("The application is already configured");
- }
-
- LogHelper.Info("Running 'Install' service");
-
- var result = ApplicationContext.Current.DatabaseContext.CreateDatabaseSchemaAndData();
-
- if (result.RequiresUpgrade == false)
- {
- HandleConnectionStrings();
- }
-
- var js = new JavaScriptSerializer();
- var jsonResult = js.Serialize(result);
- return jsonResult;
- }
-
- [WebMethod]
- [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
- public static string Upgrade()
- {
- //if its not configured then we can continue
- if (ApplicationContext.Current == null || ApplicationContext.Current.IsConfigured)
- {
- throw new AuthenticationException("The application is already configured");
- }
-
- LogHelper.Info("Running 'Upgrade' service");
-
- var result = ApplicationContext.Current.DatabaseContext.UpgradeSchemaAndData();
-
- HandleConnectionStrings();
-
- //After upgrading we must restart the app pool - the reason is because PetaPoco caches a lot of the mapping logic
- // and after we upgrade a db, some of the mapping needs to be updated so we restart the app pool to clear it's cache or
- // else we can end up with YSODs
- ApplicationContext.Current.RestartApplicationPool(new HttpContextWrapper(HttpContext.Current));
-
- var js = new JavaScriptSerializer();
- var jsonResult = js.Serialize(result);
- return jsonResult;
- }
-
- private static void HandleConnectionStrings()
- {
- // Remove legacy umbracoDbDsn configuration setting if it exists and connectionstring also exists
- if (ConfigurationManager.ConnectionStrings[Core.Configuration.GlobalSettings.UmbracoConnectionName] != null)
- {
- Core.Configuration.GlobalSettings.RemoveSetting(Core.Configuration.GlobalSettings.UmbracoConnectionName);
- }
- else
- {
- var ex = new ArgumentNullException(string.Format("ConfigurationManager.ConnectionStrings[{0}]", Core.Configuration.GlobalSettings.UmbracoConnectionName), "Install / upgrade did not complete successfully, umbracoDbDSN was not set in the connectionStrings section");
- LogHelper.Error("", ex);
- throw ex;
- }
- }
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/InstallerRestService.aspx.designer.cs b/src/Umbraco.Web.UI/install/InstallerRestService.aspx.designer.cs
deleted file mode 100644
index 390aeeeaeb..0000000000
--- a/src/Umbraco.Web.UI/install/InstallerRestService.aspx.designer.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install {
-
-
- public partial class InstallerRestService {
- }
-}
diff --git a/src/Umbraco.Web.UI/install/Title.ascx b/src/Umbraco.Web.UI/install/Title.ascx
deleted file mode 100644
index 748e05dfe8..0000000000
--- a/src/Umbraco.Web.UI/install/Title.ascx
+++ /dev/null
@@ -1,3 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="True" CodeBehind="Title.ascx.cs" Inherits="Umbraco.Web.UI.Install.Title" %>
-<%@ Import Namespace="Umbraco.Core.Configuration" %>
-Umbraco <%=UmbracoVersion.Current.ToString(3)%> <%=UmbracoVersion.CurrentComment%> Configuration Wizard
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/Title.ascx.cs b/src/Umbraco.Web.UI/install/Title.ascx.cs
deleted file mode 100644
index ae4881e776..0000000000
--- a/src/Umbraco.Web.UI/install/Title.ascx.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using Umbraco.Web.UI.Pages;
-
-namespace Umbraco.Web.UI.Install
-{
- public partial class Title : System.Web.UI.UserControl
- {
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/Title.ascx.designer.cs b/src/Umbraco.Web.UI/install/Title.ascx.designer.cs
deleted file mode 100644
index b5999c18bb..0000000000
--- a/src/Umbraco.Web.UI/install/Title.ascx.designer.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install {
-
-
- public partial class Title {
- }
-}
diff --git a/src/Umbraco.Web.UI/install/default.aspx b/src/Umbraco.Web.UI/install/default.aspx
deleted file mode 100644
index 20deecb43f..0000000000
--- a/src/Umbraco.Web.UI/install/default.aspx
+++ /dev/null
@@ -1,161 +0,0 @@
-<%@ Page Language="c#" CodeBehind="Default.aspx.cs" AutoEventWireup="True" Inherits="Umbraco.Web.UI.Install.Default" EnableViewState="False" %>
-
-<%@ Register TagPrefix="umb" Namespace="ClientDependency.Core.Controls" Assembly="ClientDependency.Core" %>
-
-<%@ Register Src="~/install/Title.ascx" TagPrefix="umb1" TagName="PageTitle" %>
-
-
-
-
-
-
-
- " />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Umbraco.Web.UI/install/steps/Database.ascx.cs b/src/Umbraco.Web.UI/install/steps/Database.ascx.cs
deleted file mode 100644
index 45eab19d45..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Database.ascx.cs
+++ /dev/null
@@ -1,273 +0,0 @@
-using System;
-using System.Configuration;
-using System.Data.Common;
-using System.Web.UI.WebControls;
-using System.Web.UI.HtmlControls;
-using Umbraco.Core;
-using Umbraco.Core.Configuration;
-using Umbraco.Core.IO;
-using Umbraco.Core.Logging;
-using System.IO;
-using Umbraco.Core.Persistence;
-using Umbraco.Web.Install;
-using umbraco.DataLayer;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- ///
- /// Database detection step in the installer wizard.
- ///
- public partial class Database : StepUserControl
- {
- ///
- /// Returns whether the selected database is an embedded database.
- ///
- protected bool IsEmbeddedDatabase
- {
- get
- {
- var databaseSettings = ConfigurationManager.ConnectionStrings[GlobalSettings.UmbracoConnectionName];
- var configuredDatabaseIsEmbedded = databaseSettings != null && databaseSettings.ProviderName.ToLower().Contains("SqlServerCe".ToLower());
-
- return Request["database"] == "embedded" || configuredDatabaseIsEmbedded;
- }
- }
-
- protected bool IsConfigured
- {
- get { return DatabaseType.SelectedValue != ""; }
- }
-
- protected bool IsNewInstall
- {
- get
- {
- var databaseSettings = ConfigurationManager.ConnectionStrings[GlobalSettings.UmbracoConnectionName];
- if (databaseSettings != null && (
- databaseSettings.ConnectionString.Trim() == string.Empty
- && databaseSettings.ProviderName.Trim() == string.Empty
- && GlobalSettings.ConfigurationStatus == string.Empty))
- {
- return true;
- }
-
- return false;
- }
- }
-
- ///
- /// Returns whether the connection string is set by direct text input.
- ///
- protected bool ManualConnectionString
- {
- get { return Request["database"] == "advanced"; }
- }
-
- ///
- /// Shows the right panel to the user.
- ///
- /// The sender.
- /// The event arguments.
- protected void Page_Load(object sender, System.EventArgs e)
- {
- // Does the user have to enter a connection string?
- if (settings.Visible && !Page.IsPostBack)
- {
- //If the connection string is already present in web.config we don't need to show the settings page and we jump to installing/upgrading.
- var databaseSettings = ConfigurationManager.ConnectionStrings[GlobalSettings.UmbracoConnectionName];
-
- var dbIsSqlCe = false;
- if(databaseSettings != null && databaseSettings.ProviderName != null)
- dbIsSqlCe = databaseSettings.ProviderName == "System.Data.SqlServerCe.4.0";
- var sqlCeDatabaseExists = false;
- if (dbIsSqlCe)
- {
- var datasource = databaseSettings.ConnectionString.Replace("|DataDirectory|", AppDomain.CurrentDomain.GetData("DataDirectory").ToString());
- var filePath = datasource.Replace("Data Source=", string.Empty);
- sqlCeDatabaseExists = File.Exists(filePath);
- }
-
- // Either the connection details are not fully specified or it's a SQL CE database that doesn't exist yet
- if (databaseSettings == null
- || string.IsNullOrWhiteSpace(databaseSettings.ConnectionString) || string.IsNullOrWhiteSpace(databaseSettings.ProviderName)
- || (dbIsSqlCe && sqlCeDatabaseExists == false))
- {
- installProgress.Visible = true;
- upgradeProgress.Visible = false;
- ShowDatabaseSettings();
- }
- else
- {
- //Since a connection string was present we verify whether this is an upgrade or an empty db
- var result = ApplicationContext.Current.DatabaseContext.ValidateDatabaseSchema();
- var determinedVersion = result.DetermineInstalledVersion();
- if (determinedVersion.Equals(new Version(0, 0, 0)))
- {
- //Fresh install
- installProgress.Visible = true;
- upgradeProgress.Visible = false;
- }
- else
- {
- //Upgrade
- installProgress.Visible = false;
- upgradeProgress.Visible = true;
- }
-
- settings.Visible = false;
- installing.Visible = true;
- }
- }
- }
-
- ///
- /// Prepares and shows the database settings panel.
- ///
- protected void ShowDatabaseSettings()
- {
- // Parse the connection string
- var connectionStringBuilder = new DbConnectionStringBuilder();
-
- var databaseSettings = ConfigurationManager.ConnectionStrings[GlobalSettings.UmbracoConnectionName];
- if (databaseSettings != null && string.IsNullOrWhiteSpace(databaseSettings.ConnectionString) == false)
- {
- var dataHelper = DataLayerHelper.CreateSqlHelper(databaseSettings.ConnectionString, false);
- connectionStringBuilder.ConnectionString = dataHelper.ConnectionString;
-
- // Prepare data layer type
- var datalayerType = GetConnectionStringValue(connectionStringBuilder, "datalayer");
- if (datalayerType.Length > 0)
- {
- foreach (ListItem item in DatabaseType.Items)
- if (item.Value != string.Empty && datalayerType.Contains(item.Value))
- DatabaseType.SelectedValue = item.Value;
- }
- else if (dataHelper.ConnectionString != "server=.\\SQLEXPRESS;database=DATABASE;user id=USER;password=PASS")
- DatabaseType.SelectedValue = "SqlServer";
- }
- else
- {
- DatabaseType.SelectedValue = "SqlServer";
- }
-
- DatabaseType_SelectedIndexChanged(this, new EventArgs());
-
- // Prepare other fields
- DatabaseServer.Text = GetConnectionStringValue(connectionStringBuilder, "server");
- if (string.IsNullOrEmpty(DatabaseServer.Text)) DatabaseServer.Text = GetConnectionStringValue(connectionStringBuilder, "Data Source");
- DatabaseName.Text = GetConnectionStringValue(connectionStringBuilder, "database");
- if (string.IsNullOrEmpty(DatabaseName.Text)) DatabaseName.Text = GetConnectionStringValue(connectionStringBuilder, "Initial Catalog");
- DatabaseUsername.Text = GetConnectionStringValue(connectionStringBuilder, "user id");
- DatabasePassword.Text = GetConnectionStringValue(connectionStringBuilder, "password");
- if (string.IsNullOrEmpty(DatabasePassword.Text)) DatabasePassword.Text = GetConnectionStringValue(connectionStringBuilder, "pwd");
-
- ToggleVisible(DatabaseServerItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabaseUsernameItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabasePasswordItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabaseNameItem, !ManualConnectionString && !IsEmbeddedDatabase);
-
- if (IsNewInstall || IsEmbeddedDatabase)
- dbinit.Text = "$('#databaseOptionEmbedded').click();$('#databaseOptionEmbedded').change();";
- else if (ManualConnectionString)
- dbinit.Text = "$('#databaseOptionAdvanced').click();$('#databaseOptionAdvanced').change();";
- else if (DatabaseType.SelectedValue == "SqlServer")
- dbinit.Text = "$('#databaseOptionBlank').click();$('#databaseOptionBlank').change();";
- else if (DatabaseType.SelectedValue == "SqlAzure")
- dbinit.Text = "$('#databaseOptionBlank').click();$('#databaseOptionBlank').change();";
- //toggleVisible(DatabaseConnectionString, ManualConnectionString);
-
- // Make sure ASP.Net displays the password text
- DatabasePassword.Attributes["value"] = DatabasePassword.Text;
- }
-
- ///
- /// Shows the installation/upgrade panel.
- ///
- protected void SaveDbConfig(object sender, EventArgs e)
- {
- try
- {
- var dbContext = ApplicationContext.Current.DatabaseContext;
-
- if (string.IsNullOrEmpty(ConnectionString.Text) == false)
- {
- dbContext.ConfigureDatabaseConnection(ConnectionString.Text);
- }
- else if (IsEmbeddedDatabase)
- {
- dbContext.ConfigureEmbeddedDatabaseConnection();
- }
- else
- {
- var server = DatabaseServer.Text;
- var databaseName = DatabaseName.Text;
-
- if (DatabaseType.SelectedValue == "SqlServer" && DatabaseIntegratedSecurity.Checked == true)
- {
- dbContext.ConfigureIntegratedSecurityDatabaseConnection(server, databaseName);
- }
- else
- {
- dbContext.ConfigureDatabaseConnection(server, databaseName,
- DatabaseUsername.Text, DatabasePassword.Text, DatabaseType.SelectedValue
- );
- }
- }
- }
- catch (Exception ex)
- {
- LogHelper.Error("Exception was thrown during the setup of the database in 'saveDBConfig'.", ex);
- }
-
- settings.Visible = false;
- installing.Visible = true;
- }
-
- ///
- /// Gets the value of the specified item in the connection string.
- ///
- /// The connection string.
- /// Name of the item.
- /// The value of the item, or an empty string if not found.
- protected string GetConnectionStringValue(DbConnectionStringBuilder connectionStringBuilder, string keyword)
- {
- object value = null;
- connectionStringBuilder.TryGetValue(keyword, out value);
- return (string)value ?? String.Empty;
- }
-
- ///
- /// Show the needed fields according to the database type.
- ///
- /// The sender.
- /// The event arguments.
- protected void DatabaseType_SelectedIndexChanged(object sender, EventArgs e)
- {
- ToggleVisible(DatabaseServerItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabaseUsernameItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabasePasswordItem, !ManualConnectionString && !IsEmbeddedDatabase);
- ToggleVisible(DatabaseNameItem, !ManualConnectionString && !IsEmbeddedDatabase);
-
- //toggleVisible(DatabaseConnectionString, ManualConnectionString);
- }
-
- private static void ToggleVisible(HtmlGenericControl div, bool visible)
- {
- if (!visible)
- div.Attributes["style"] = "display: none;";
- else
- div.Attributes["style"] = "display: block;";
- }
-
- protected void GotoSettings(object sender, EventArgs e)
- {
- settings.Visible = true;
- installing.Visible = false;
-
- ShowDatabaseSettings();
-
- jsVars.Text = "showDatabaseSettings();";
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/Database.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/Database.ascx.designer.cs
deleted file mode 100644
index 2c41a8968e..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Database.ascx.designer.cs
+++ /dev/null
@@ -1,249 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class Database {
-
- ///
- /// settings control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder settings;
-
- ///
- /// DatabaseType control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.DropDownList DatabaseType;
-
- ///
- /// ph_dbError control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder ph_dbError;
-
- ///
- /// lt_dbError control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal lt_dbError;
-
- ///
- /// DatabaseServerItem control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl DatabaseServerItem;
-
- ///
- /// DatabaseServerLabel control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Label DatabaseServerLabel;
-
- ///
- /// DatabaseServer control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox DatabaseServer;
-
- ///
- /// DatabaseNameItem control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl DatabaseNameItem;
-
- ///
- /// DatabaseNameLabel control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Label DatabaseNameLabel;
-
- ///
- /// DatabaseName control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox DatabaseName;
-
- ///
- /// DatabaseIntegratedSecurity control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.CheckBox DatabaseIntegratedSecurity;
-
- ///
- /// DatabaseUsernameItem control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl DatabaseUsernameItem;
-
- ///
- /// DatabaseUsernameLabel control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Label DatabaseUsernameLabel;
-
- ///
- /// DatabaseUsername control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox DatabaseUsername;
-
- ///
- /// DatabasePasswordItem control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl DatabasePasswordItem;
-
- ///
- /// DatabasePasswordLabel control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Label DatabasePasswordLabel;
-
- ///
- /// DatabasePassword control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox DatabasePassword;
-
- ///
- /// embeddedFilesMissing control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl embeddedFilesMissing;
-
- ///
- /// DatabaseConnectionString control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.HtmlControls.HtmlGenericControl DatabaseConnectionString;
-
- ///
- /// ConnectionStringLabel control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Label ConnectionStringLabel;
-
- ///
- /// ConnectionString control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox ConnectionString;
-
- ///
- /// jsVars control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal jsVars;
-
- ///
- /// dbinit control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal dbinit;
-
- ///
- /// installing control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder installing;
-
- ///
- /// installProgress control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder installProgress;
-
- ///
- /// upgradeProgress control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder upgradeProgress;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.cs b/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.cs
deleted file mode 100644
index 9df2a3798a..0000000000
--- a/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-using System;
-using System.Web.Security;
-using Umbraco.Core.Configuration;
-using Umbraco.Core.Logging;
-using Umbraco.Core.Security;
-using Umbraco.Web.Install;
-using Umbraco.Web.Security;
-using umbraco.BusinessLogic;
-using umbraco.providers;
-using System.Collections.Specialized;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- ///
- /// Summary description for defaultUser.
- ///
- public partial class DefaultUser : StepUserControl
- {
-
- protected MembershipProvider CurrentProvider
- {
- get
- {
- var provider = Membership.Providers[UmbracoConfig.For.UmbracoSettings().Providers.DefaultBackOfficeUserProvider];
- if (provider == null)
- {
- throw new InvalidOperationException("No MembershipProvider found with name " + UmbracoConfig.For.UmbracoSettings().Providers.DefaultBackOfficeUserProvider);
- }
- return provider;
- }
- }
-
- protected void ChangePasswordClick(object sender, EventArgs e)
- {
- Page.Validate();
-
- if (Page.IsValid)
- {
- var user = User.GetUser(0);
-
- var membershipUser = CurrentProvider.GetUser(0, true);
- if (membershipUser == null)
- {
- throw new InvalidOperationException("No user found in membership provider with id of 0");
- }
-
- try
- {
- var success = membershipUser.ChangePassword(user.GetPassword(), tb_password.Text.Trim());
- if (success == false)
- {
- PasswordValidator.IsValid = false;
- PasswordValidator.ErrorMessage = "Password must be at least " + CurrentProvider.MinRequiredPasswordLength + " characters long and contain at least " + CurrentProvider.MinRequiredNonAlphanumericCharacters + " symbols";
- return;
- }
- }
- catch (Exception ex)
- {
- PasswordValidator.IsValid = false;
- PasswordValidator.ErrorMessage = "Password must be at least " + CurrentProvider.MinRequiredPasswordLength + " characters long and contain at least " + CurrentProvider.MinRequiredNonAlphanumericCharacters + " symbols";
- return;
- }
-
- user.Email = tb_email.Text.Trim();
- user.Name = tb_name.Text.Trim();
- user.LoginName = tb_login.Text;
-
- user.Save();
-
- if (cb_newsletter.Checked)
- {
- try
- {
- var client = new System.Net.WebClient();
- var values = new NameValueCollection {{"name", tb_name.Text}, {"email", tb_email.Text}};
-
- client.UploadValues("http://umbraco.org/base/Ecom/SubmitEmail/installer.aspx", values);
- }
- catch (Exception ex)
- {
- LogHelper.Error("An error occurred subscribing user to newsletter", ex);
- }
- }
-
-
- if (String.IsNullOrWhiteSpace(GlobalSettings.ConfigurationStatus))
- UmbracoContext.Current.Security.PerformLogin(user.Id);
-
- InstallHelper.RedirectToNextStep(Page, GetCurrentStep());
- }
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.designer.cs
deleted file mode 100644
index e785e804e3..0000000000
--- a/src/Umbraco.Web.UI/install/steps/DefaultUser.ascx.designer.cs
+++ /dev/null
@@ -1,87 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class DefaultUser {
-
- ///
- /// identify control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder identify;
-
- ///
- /// tb_name control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox tb_name;
-
- ///
- /// tb_email control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox tb_email;
-
- ///
- /// tb_login control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox tb_login;
-
- ///
- /// tb_password control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox tb_password;
-
- ///
- /// PasswordValidator control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.CustomValidator PasswordValidator;
-
- ///
- /// tb_password_confirm control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.TextBox tb_password_confirm;
-
- ///
- /// cb_newsletter control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.CheckBox cb_newsletter;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/License.ascx.cs b/src/Umbraco.Web.UI/install/steps/License.ascx.cs
deleted file mode 100644
index ff6a6c6c50..0000000000
--- a/src/Umbraco.Web.UI/install/steps/License.ascx.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using Umbraco.Web.Install;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class License : StepUserControl
- {
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/License.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/License.ascx.designer.cs
deleted file mode 100644
index 76f8b87c8f..0000000000
--- a/src/Umbraco.Web.UI/install/steps/License.ascx.designer.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class License {
-
- ///
- /// btnNext control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton btnNext;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/Renaming.ascx.cs b/src/Umbraco.Web.UI/install/steps/Renaming.ascx.cs
deleted file mode 100644
index 496690a715..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Renaming.ascx.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-using System;
-using System.IO;
-using System.Xml;
-using Umbraco.Core.IO;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class Renaming : StepUserControl
- {
- private readonly string _oldAccessFilePath = IOHelper.MapPath(SystemDirectories.Data + "/access.xml");
- private readonly string _newAccessFilePath = IOHelper.MapPath(SystemDirectories.Data + "/access.config");
- private bool _changesNeeded = false;
-
- protected void Page_Load(object sender, EventArgs e)
- {
- // check access.xml file
- identifyResult.Text += CheckAccessFile();
-
- if (_changesNeeded)
- {
- changesNeeded.Visible = true;
- }
- else
- {
- noChangedNeeded.Visible = true;
- changesNeeded.Visible = false;
- }
- }
-
- private string CheckAccessFile()
- {
- if (!NewAccessFileExist() && OldAccessFileExist())
- {
- _changesNeeded = true;
- return "
Access.xml found. Needs to be renamed to access.config
",
- resultClass,
- progressText);
- result.Visible = true;
- init.Visible = false;
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/Renaming.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/Renaming.ascx.designer.cs
deleted file mode 100644
index 90743813a4..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Renaming.ascx.designer.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class Renaming {
-
- ///
- /// init control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel init;
-
- ///
- /// noChangedNeeded control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel noChangedNeeded;
-
- ///
- /// changesNeeded control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel changesNeeded;
-
- ///
- /// identifyResult control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal identifyResult;
-
- ///
- /// updateChanges control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Button updateChanges;
-
- ///
- /// result control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel result;
-
- ///
- /// resultText control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal resultText;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx b/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx
deleted file mode 100644
index 1b94e7ebd9..0000000000
--- a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx
+++ /dev/null
@@ -1,27 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="RenderingEngine.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.RenderingEngine" %>
-
-
-
-
- Chose how you like to work with Templates
-
- Umbraco works with both ASP.NET WebForms (also known as MasterPages) and ASP.NET MVC (called Views). If you're not sure, we recommend using the MVC templates. You can of course use both but let's select a default one to get started.
-
-
-
-
-
- Choose a default template type:
-
-
- MVC
- Web forms
-
-
-
-
-
-
diff --git a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.cs b/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.cs
deleted file mode 100644
index b47830ecbe..0000000000
--- a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.cs
+++ /dev/null
@@ -1,22 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.UI;
-using System.Web.UI.WebControls;
-using Umbraco.Core.Configuration;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class RenderingEngine : StepUserControl
- {
- protected override void GotoNextStep(object sender, EventArgs e)
- {
- ////set the default engine
- //UmbracoSettings.DefaultRenderingEngine = Core.RenderingEngine.Mvc;
- //UmbracoSettings.Save();
-
- base.GotoNextStep(sender, e);
- }
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.designer.cs
deleted file mode 100644
index 44e5bc8d04..0000000000
--- a/src/Umbraco.Web.UI/install/steps/RenderingEngine.ascx.designer.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class RenderingEngine {
-
- ///
- /// EngineSelection control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.RadioButtonList EngineSelection;
-
- ///
- /// btnNext control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton btnNext;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx b/src/Umbraco.Web.UI/install/steps/StarterKits.ascx
deleted file mode 100644
index a71ff25d9b..0000000000
--- a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx
+++ /dev/null
@@ -1,122 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="StarterKits.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.StarterKits" %>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Starter kits
-
To help you get started here are some basic starter kits. They have been tailored to suit common site configurations and install useful functionality.
-
-
-
-
-
-
-
-
-
-
-
-
Install a Skin
-
-
You can now further enhance your site by choosing one of these great skins. This will apply a default look and feel to all the pages in your site, considerably reducing development time.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Installing Starter Kit
-
Your starter kit is installing.
-
-
-
- 56%
-
- Starting installation...
-
-
-
-
diff --git a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.cs b/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.cs
deleted file mode 100644
index 7a51a2eede..0000000000
--- a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-using System;
-using Umbraco.Core.IO;
-using Umbraco.Web.Install;
-using Umbraco.Web.UI.Install.Steps.Skinning;
-using umbraco.cms.businesslogic.packager;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class StarterKits : StepUserControl
- {
-
- protected void Page_Load(object sender, EventArgs e)
- {
- if (InstalledPackage.GetAllInstalledPackages().Count > 0)
- GotoNextStep(sender, e);
-
- ShowStarterKits();
- }
-
-
- private void ShowStarterKits()
- {
- ph_starterKits.Controls.Add(LoadControl(SystemDirectories.Install + "/steps/Skinning/loadStarterKits.ascx"));
-
- pl_starterKit.Visible = true;
- pl_starterKitDesign.Visible = false;
-
-
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.designer.cs
deleted file mode 100644
index f46284e985..0000000000
--- a/src/Umbraco.Web.UI/install/steps/StarterKits.ascx.designer.cs
+++ /dev/null
@@ -1,60 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class StarterKits {
-
- ///
- /// udp control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.UpdatePanel udp;
-
- ///
- /// pl_starterKit control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder pl_starterKit;
-
- ///
- /// ph_starterKits control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder ph_starterKits;
-
- ///
- /// pl_starterKitDesign control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder pl_starterKitDesign;
-
- ///
- /// ph_starterKitDesigns control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder ph_starterKitDesigns;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/StepUserControl.cs b/src/Umbraco.Web.UI/install/steps/StepUserControl.cs
deleted file mode 100644
index 49a72a5da1..0000000000
--- a/src/Umbraco.Web.UI/install/steps/StepUserControl.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-using System;
-using System.Web.UI;
-using Umbraco.Web.Install;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public abstract class StepUserControl : UserControl
- {
- protected string GetCurrentStep()
- {
- var defaultPage = (Default) Page;
- return defaultPage.step.Value;
- }
-
- protected virtual void GotoNextStep(object sender, EventArgs e)
- {
- InstallHelper.RedirectToNextStep(Page, GetCurrentStep());
- }
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.cs b/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.cs
deleted file mode 100644
index 141bc56958..0000000000
--- a/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System;
-using System.Web;
-using Umbraco.Core;
-using Umbraco.Core.Configuration;
-using Umbraco.Core.Logging;
-using Umbraco.Web.Security;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class TheEnd : StepUserControl
- {
- protected void Page_Load(object sender, System.EventArgs e)
- {
- // Update configurationStatus
- try
- {
- GlobalSettings.ConfigurationStatus = UmbracoVersion.Current.ToString(3);
- }
- catch (Exception ex)
- {
- LogHelper.Error("An error occurred updating the config status", ex);
- }
-
- // Update ClientDependency version
- var clientDependencyConfig = new ClientDependencyConfiguration();
- var clientDependencyUpdated = clientDependencyConfig.IncreaseVersionNumber();
-
- //Clear the auth cookie - this is required so that the login screen is displayed after upgrade and so the
- // csrf anti-forgery tokens are created, otherwise there will just be JS errors if the user has an old
- // login token from a previous version when we didn't have csrf tokens in place
- var security = new WebSecurity(new HttpContextWrapper(Context), ApplicationContext.Current);
- security.ClearCurrentLogin();
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.designer.cs
deleted file mode 100644
index 2c7c5fe114..0000000000
--- a/src/Umbraco.Web.UI/install/steps/TheEnd.ascx.designer.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class TheEnd {
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx b/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx
deleted file mode 100644
index e254965090..0000000000
--- a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx
+++ /dev/null
@@ -1,73 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="UpgradeReport.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.UpgradeReport" %>
-
-
-
-
Major version upgrade from <%= CurrentVersion %> to <%= NewVersion %>
-
-
-
-
- This installation step will determine if there are compatibility issues with Property Editors that you have defined in your current installation.
-
-
-
-
-
-
-
There were <%=Report.Count() %> issues detected
-
- The following compatibility issues were found. If you continue all non-compatible property editors will be converted to a Readonly/Label.
- You will be able to change the property editor to a compatible type manually by editing the data type after installation.
-
-
- Otherwise if you choose not to proceed you will need to fix the errors listed below.
- Refer to v<%= NewVersion%> upgrade instructions for full details.
-
-
-
-
No issues detected
-
- Click 'Continue' to proceed with the upgrade
-
-
-
-
-
-
-
-
-
-
-
-
- Click 'Continue' to generate the compatibility report
-
-
-
-
-
- <% foreach (var item in Report)
- { %>
-
-
-
-
-
-
- <%=item.Item2 %>
-
-
-
- <% } %>
-
-
-
-
-
-
-
-
-
diff --git a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.cs b/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.cs
deleted file mode 100644
index 8377930abd..0000000000
--- a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Web;
-using System.Web.UI;
-using System.Web.UI.WebControls;
-using Umbraco.Core;
-using Umbraco.Core.Configuration;
-using Umbraco.Core.Persistence;
-using Umbraco.Core.Persistence.SqlSyntax;
-using Umbraco.Core.PropertyEditors;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class UpgradeReport : StepUserControl
- {
- protected Version CurrentVersion { get; private set; }
- protected Version NewVersion { get; private set; }
- protected IEnumerable> Report { get; private set; }
-
- protected override void OnInit(EventArgs e)
- {
- base.OnInit(e);
-
- var result = ApplicationContext.Current.DatabaseContext.ValidateDatabaseSchema();
- var determinedVersion = result.DetermineInstalledVersion();
-
- CurrentVersion = determinedVersion;
- NewVersion = UmbracoVersion.Current;
- Report = new List>();
- }
-
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- if (!IsPostBack)
- {
- DataBind();
- }
- }
-
- protected void NextButtonClick(object sender, EventArgs e)
- {
- if (ToggleView.ActiveViewIndex == 1)
- {
- GotoNextStep(sender, e);
- }
- else
- {
- CreateReport();
- ToggleView.ActiveViewIndex = 1;
- DataBind();
- }
- }
-
- private void CreateReport()
- {
- var errorReport = new List>();
-
- var sql = new Sql();
- sql
- .Select(
- SqlSyntaxContext.SqlSyntaxProvider.GetQuotedColumn("cmsDataType", "controlId"),
- SqlSyntaxContext.SqlSyntaxProvider.GetQuotedColumn("umbracoNode", "text"))
- .From(SqlSyntaxContext.SqlSyntaxProvider.GetQuotedTableName("cmsDataType"))
- .InnerJoin(SqlSyntaxContext.SqlSyntaxProvider.GetQuotedTableName("umbracoNode"))
- .On(
- SqlSyntaxContext.SqlSyntaxProvider.GetQuotedColumn("cmsDataType", "nodeId") + " = " +
- SqlSyntaxContext.SqlSyntaxProvider.GetQuotedColumn("umbracoNode", "id"));
-
- var list = ApplicationContext.Current.DatabaseContext.Database.Fetch(sql);
- foreach (var item in list)
- {
- Guid legacyId = item.controlId;
- //check for a map entry
- var alias = LegacyPropertyEditorIdToAliasConverter.GetAliasFromLegacyId(legacyId);
- if (alias != null)
- {
- //check that the new property editor exists with that alias
- var editor = PropertyEditorResolver.Current.GetByAlias(alias);
- if (editor == null)
- {
- errorReport.Add(new Tuple(false, string.Format("Property Editor with ID '{0}' (assigned to Data Type '{1}') has a valid GUID -> Alias map but no property editor was found. It will be replaced with a Readonly/Label property editor.", item.controlId, item.text)));
- }
- }
- else
- {
- errorReport.Add(new Tuple(false, string.Format("Property Editor with ID '{0}' (assigned to Data Type '{1}') does not have a valid GUID -> Alias map. It will be replaced with a Readonly/Label property editor.", item.controlId, item.text)));
- }
- }
-
- Report = errorReport;
- }
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.designer.cs
deleted file mode 100644
index 443a42398a..0000000000
--- a/src/Umbraco.Web.UI/install/steps/UpgradeReport.ascx.designer.cs
+++ /dev/null
@@ -1,60 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class UpgradeReport {
-
- ///
- /// MultiView1 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.MultiView MultiView1;
-
- ///
- /// View1 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.View View1;
-
- ///
- /// View2 control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.View View2;
-
- ///
- /// ToggleView control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.MultiView ToggleView;
-
- ///
- /// btnNext control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton btnNext;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.cs b/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.cs
deleted file mode 100644
index 13dc4fb89a..0000000000
--- a/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.cs
+++ /dev/null
@@ -1,181 +0,0 @@
-using System;
-using System.IO;
-using Umbraco.Core.IO;
-using Umbraco.Web.Install;
-using umbraco;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class ValidatePermissions : StepUserControl
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- var permissionsOk = true;
- var packageOk = true;
- var foldersOk = true;
- var cacheOk = true;
- var valResult = "";
-
- // Test default dir permissions
- foreach (var dir in FilePermissionHelper.PermissionDirs)
- {
- var result = SaveAndDeleteFile(IOHelper.MapPath(dir + "/configWizardPermissionTest.txt"));
-
- if (!result)
- {
- permissionsOk = false;
- permSummary.Text += "
Directory: ./" + dir + "
";
- }
-
- // Print
- valResult += " " + dir + " : " + SuccessOrFailure(result) + "! ";
- }
-
- // Test default file permissions
- foreach (var file in FilePermissionHelper.PermissionFiles)
- {
- var result = OpenFileForWrite(IOHelper.MapPath(file));
- if (!result)
- {
- permissionsOk = false;
- permSummary.Text += "
File: " + file + "
";
- }
-
- // Print
- valResult += " " + file + " : " + SuccessOrFailure(result) + "! ";
- }
- permissionResults.Text = valResult;
-
- // Test package dir permissions
- string packageResult = "";
- foreach (var dir in FilePermissionHelper.PackagesPermissionsDirs)
- {
- var result =
- SaveAndDeleteFile(IOHelper.MapPath(dir + "/configWizardPermissionTest.txt"));
- if (!result)
- {
- packageOk = false;
- permSummary.Text += "
", tempFile, ee);
- }
-
- // Test creation of folders
- try
- {
- string tempDir = IOHelper.MapPath(SystemDirectories.Media + "/testCreatedByConfigWizard");
- Directory.CreateDirectory(tempDir);
- Directory.Delete(tempDir);
- foldersResult.Text = "Success!";
- }
- catch
- {
- foldersOk = false;
- foldersResult.Text = "Failure!";
- }
-
- // update config files
- if (permissionsOk)
- {
- foreach (
- var configFile in new DirectoryInfo(IOHelper.MapPath(SystemDirectories.Config)).GetFiles("*.xml"))
- {
- try
- {
- if (File.Exists(configFile.FullName.Replace(".xml", ".config")))
- File.Delete(configFile.FullName.Replace(".xml", ".config"));
-
- configFile.MoveTo(configFile.FullName.Replace(".xml", ".config"));
- }
- catch { }
-
- }
- }
-
- // Generate summary
- howtoResolve.Visible = true;
- if (permissionsOk && cacheOk && packageOk && foldersOk)
- {
- perfect.Visible = true;
- howtoResolve.Visible = false;
- }
- else if (permissionsOk && cacheOk && foldersOk)
- noPackages.Visible = true;
- else if (permissionsOk && cacheOk)
- {
- folderWoes.Visible = true;
- grant.Visible = false;
- noFolders.Visible = true;
- }
- else
- {
- error.Visible = true;
- if (!foldersOk)
- folderWoes.Visible = true;
- }
- }
-
- private static string SuccessOrFailure(bool result)
- {
- return result ? "Success" : "Failure";
- }
-
- private static bool SaveAndDeleteFile(string file)
- {
- try
- {
- //first check if the directory of the file exists, and if not try to create that first.
- var fi = new FileInfo(file);
- if (!fi.Directory.Exists)
- {
- fi.Directory.Create();
- }
-
- File.WriteAllText(file,
- "This file has been created by the umbraco configuration wizard. It is safe to delete it!");
- File.Delete(file);
- return true;
- }
- catch
- {
- return false;
- }
-
- }
-
- private bool OpenFileForWrite(string file)
- {
- try
- {
- File.AppendText(file).Close();
- }
- catch
- {
- return false;
- }
- return true;
- }
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.designer.cs
deleted file mode 100644
index d595bc11f9..0000000000
--- a/src/Umbraco.Web.UI/install/steps/ValidatePermissions.ascx.designer.cs
+++ /dev/null
@@ -1,132 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class ValidatePermissions {
-
- ///
- /// perfect control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal perfect;
-
- ///
- /// noPackages control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal noPackages;
-
- ///
- /// noFolders control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal noFolders;
-
- ///
- /// error control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal error;
-
- ///
- /// howtoResolve control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel howtoResolve;
-
- ///
- /// grant control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel grant;
-
- ///
- /// permSummary control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal permSummary;
-
- ///
- /// folderWoes control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Panel folderWoes;
-
- ///
- /// permissionResults control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal permissionResults;
-
- ///
- /// packageResults control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal packageResults;
-
- ///
- /// xmlResult control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal xmlResult;
-
- ///
- /// foldersResult control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.Literal foldersResult;
-
- ///
- /// btnNext control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton btnNext;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/Welcome.ascx.cs b/src/Umbraco.Web.UI/install/steps/Welcome.ascx.cs
deleted file mode 100644
index ca95acda1f..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Welcome.ascx.cs
+++ /dev/null
@@ -1,45 +0,0 @@
-using System;
-using Umbraco.Core;
-using umbraco;
-
-namespace Umbraco.Web.UI.Install.Steps
-{
- public partial class Welcome : StepUserControl
- {
- protected override void OnInit(EventArgs e)
- {
- base.OnInit(e);
-
- if (!IsPostBack)
- {
- //clear the plugin cache when installation starts (just a safety check)
- PluginManager.Current.ClearPluginCache();
- }
- }
-
- protected void Page_Load(object sender, EventArgs e)
- {
- // Check for config! SD: I've moved this config check above the other stuff since there's no point in doing all that processing if we're
- // just going to redirect if this setting is true.
- if (GlobalSettings.Configured)
- {
- Response.Redirect(Request.QueryString["url"] ?? "/", true);
- }
-
- var result = ApplicationContext.Current.DatabaseContext.ValidateDatabaseSchema();
- var determinedVersion = result.DetermineInstalledVersion();
-
- // Display the Umbraco upgrade message if Umbraco is already installed
- if (string.IsNullOrWhiteSpace(GlobalSettings.ConfigurationStatus) == false || determinedVersion.Equals(new Version(0, 0, 0)) == false)
- {
- ph_install.Visible = false;
- ph_upgrade.Visible = true;
- }
-
- }
-
-
-
-
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/Welcome.ascx.designer.cs b/src/Umbraco.Web.UI/install/steps/Welcome.ascx.designer.cs
deleted file mode 100644
index 43350478db..0000000000
--- a/src/Umbraco.Web.UI/install/steps/Welcome.ascx.designer.cs
+++ /dev/null
@@ -1,42 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-namespace Umbraco.Web.UI.Install.Steps {
-
-
- public partial class Welcome {
-
- ///
- /// ph_install control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder ph_install;
-
- ///
- /// ph_upgrade control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.PlaceHolder ph_upgrade;
-
- ///
- /// btnNext control.
- ///
- ///
- /// Auto-generated field.
- /// To modify move field declaration from designer file to code-behind file.
- ///
- protected global::System.Web.UI.WebControls.LinkButton btnNext;
- }
-}
diff --git a/src/Umbraco.Web.UI/install/steps/database.ascx b/src/Umbraco.Web.UI/install/steps/database.ascx
deleted file mode 100644
index 75071ba979..0000000000
--- a/src/Umbraco.Web.UI/install/steps/database.ascx
+++ /dev/null
@@ -1,442 +0,0 @@
-<%@ Control Language="c#" AutoEventWireup="True" CodeBehind="database.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.Database" %>
-<%@ Import Namespace="Umbraco.Core.Configuration" %>
-
-
-
-
-
-
Database configuration
-
- To complete this step you will either need a blank database or, if you do not have a blank database available, choose the SQL CE 4 embedded
- database (This is the recommended approach for first time users or if you are unsure).
-
-
- If you are not using the SQL CE 4 embedded database you will need the connection details for your database, such as the
- "connection string". You may need to contact your system administrator or web host for this information.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Installing Umbraco
-
- The Umbraco database is being configured. This process populates your chosen database with a blank Umbraco instance.
-
-
-
-
Database installed
-
-
- Umbraco
- <%=UmbracoVersion.Current.ToString(3)%> <%=UmbracoVersion.CurrentComment%>
- has now been copied to your database. Press Continue to proceed.
-
-
-
-
-
-
-
Upgrading Umbraco
-
- The Umbraco database is being configured. This process upgrades your Umbraco database.
-
-
-
-
Database upgraded
-
-
- Your database has been upgraded to version:
- <%=UmbracoVersion.Current.ToString(3)%>.
- Press Continue to proceed.
-
-
-
-
-
-
-
-
- 0%
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/defaultUser.ascx b/src/Umbraco.Web.UI/install/steps/defaultUser.ascx
deleted file mode 100644
index 4fec7e243c..0000000000
--- a/src/Umbraco.Web.UI/install/steps/defaultUser.ascx
+++ /dev/null
@@ -1,89 +0,0 @@
-<%@ Control Language="c#" AutoEventWireup="True" Codebehind="DefaultUser.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.DefaultUser" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
-
-
-
-
-
-
-
-
Create User
-
-
You can now setup a new admin user to log into Umbraco, we recommend using a stong password for this (a password which is more than 4 characters and contains a mix of letters, numbers and symbols).
- Please make a note of the chosen password.
-
The password can be changed once you have completed the installation and logged into the admin interface.
By clicking the "accept and continue" button (or by modifying the Umbraco Configuration Status in the web.config), you accept the license for this software as specified in the text below.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
The above copyright and this permission notice shall be included in all copies or substantial portions of the software.
-
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USER OR OTHER DEALINGS IN THE SOFTWARE.
-
-
That’s all. That didn’t hurt did it?
-
-
-
-
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/renaming.ascx b/src/Umbraco.Web.UI/install/steps/renaming.ascx
deleted file mode 100644
index 27bdcb41ce..0000000000
--- a/src/Umbraco.Web.UI/install/steps/renaming.ascx
+++ /dev/null
@@ -1,25 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="True" CodeBehind="Renaming.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.Renaming" %>
-
Step 3/5: Updating old conventions
-
-
- This version of Umbraco introduces new conventions for naming XSLT and REST extensions as well as a renaming of the Public Access storage file.
- You no longer need to prefix your extension references with /bin and the public access storage file is now called access.config instead of access.xml.
- This step of the installer will try to update your old references. If it fails due to permission settings, you'll need to make these changes manually!
-
-
-
-
Everything looks good. No changes needed for the upgrade, just press next.
-
-
-
-The following changes will need to be made. Press to update changes button to proceed:
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/theend.ascx b/src/Umbraco.Web.UI/install/steps/theend.ascx
deleted file mode 100644
index 2f123741c6..0000000000
--- a/src/Umbraco.Web.UI/install/steps/theend.ascx
+++ /dev/null
@@ -1,63 +0,0 @@
-<%@ Control Language="c#" AutoEventWireup="True" CodeBehind="TheEnd.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.TheEnd"
- TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
-<%@ Import Namespace="Umbraco.Core.IO" %>
-
-
-
-
-
-
-
You’re done...now what?
-
Excellent, you are now ready to start using Umbraco, one of the worlds most popular open source .NET CMS.
-umbraco needs write/modify access to certain directories in order to store files like pictures and PDF's.
-It also stores temporary data (aka: cache) for enhancing the performance of your website.
-
-
-
-
-
Your permission settings are perfect!
-
You are ready to run umbraco and install packages!
-
-
-
-
-
-
Your permission settings are almost perfect!
-
-You can run umbraco without problems, but you will not be able to install packages which are recommended to take full advantage of umbraco.
-
-
-
-
-
-
-
-Your permission settings might be an issue!
-
-
You can run umbraco without problems, but you will not be able to create folders or install packages which are recommended to take full advantage of umbraco.
-
-
-
-
-
-
-Your permission settings are not ready for umbraco!
-
-
-In order to run umbraco, you'll need to update your permission settings.
-
-
-
-
-
-
How to Resolve
-
-
-
-
Affected files and folders
-
- You need to grant ASP.NET modify permissions to the following files/folders:
-
-
-
-
\ No newline at end of file
diff --git a/src/Umbraco.Web.UI/install/steps/welcome.ascx b/src/Umbraco.Web.UI/install/steps/welcome.ascx
deleted file mode 100644
index 6cd504a364..0000000000
--- a/src/Umbraco.Web.UI/install/steps/welcome.ascx
+++ /dev/null
@@ -1,55 +0,0 @@
-<%@ Control Language="c#" AutoEventWireup="True" CodeBehind="Welcome.ascx.cs" Inherits="Umbraco.Web.UI.Install.Steps.Welcome"
- TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
-<%@ Import Namespace="Umbraco.Core.Configuration" %>
-
-
-
-
-
-
-
- Welcome to the Umbraco installation
-
- Thanks for downloading the Umbraco CMS installer.
-
-
- You are just a few minutes away from getting up and running. The installer will
- take you through the following process:-
-
-
1.Accept the easy to read License.
-
2.Set up a database. There are a number of options available
- such as MS SQL Server, MS SQL Express Edition and MYSQL or you may wish to use the
- Microsoft SQL CE 4 database. You may need to consult your web host or system administrator.
-
3.Set an Umbraco Admin password.
-
4.You can then choose to install one of our great starter
- kits and a skin.
-
5.But whatever you do don't forget to become part of the Umbraco community, one of the friendliest developer communities you will find. It’s what makes Umbraco such a great product and so much fun to use.
-
- Enjoy!
-
-
-
-
Upgrading Umbraco
-
- Welcome to the umbraco upgrade wizard. This will make sure that you upgrade safely from your old version to Umbraco version <%=UmbracoVersion.Current.ToString(3) %> <%=UmbracoVersion.CurrentComment %>
-
-
- As this is an upgrade, the wizard might skip steps that are only needed for new umbraco installations. It might also ask you questions you've already answered once. But do not worry,
- everything is in order. Click Let's get started below to begin your upgrade.
-
a",n=d.getElementsByTagName("*")||[],r=d.getElementsByTagName("a")[0],!r||!r.style||!n.length)return t;s=a.createElement("select"),u=s.appendChild(a.createElement("option")),o=d.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t.getSetAttribute="t"!==d.className,t.leadingWhitespace=3===d.firstChild.nodeType,t.tbody=!d.getElementsByTagName("tbody").length,t.htmlSerialize=!!d.getElementsByTagName("link").length,t.style=/top/.test(r.getAttribute("style")),t.hrefNormalized="/a"===r.getAttribute("href"),t.opacity=/^0.5/.test(r.style.opacity),t.cssFloat=!!r.style.cssFloat,t.checkOn=!!o.value,t.optSelected=u.selected,t.enctype=!!a.createElement("form").enctype,t.html5Clone="<:nav>"!==a.createElement("nav").cloneNode(!0).outerHTML,t.inlineBlockNeedsLayout=!1,t.shrinkWrapBlocks=!1,t.pixelPosition=!1,t.deleteExpando=!0,t.noCloneEvent=!0,t.reliableMarginRight=!0,t.boxSizingReliable=!0,o.checked=!0,t.noCloneChecked=o.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!u.disabled;try{delete d.test}catch(h){t.deleteExpando=!1}o=a.createElement("input"),o.setAttribute("value",""),t.input=""===o.getAttribute("value"),o.value="t",o.setAttribute("type","radio"),t.radioValue="t"===o.value,o.setAttribute("checked","t"),o.setAttribute("name","t"),l=a.createDocumentFragment(),l.appendChild(o),t.appendChecked=o.checked,t.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,d.attachEvent&&(d.attachEvent("onclick",function(){t.noCloneEvent=!1}),d.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})d.setAttribute(c="on"+f,"t"),t[f+"Bubbles"]=c in e||d.attributes[c].expando===!1;d.style.backgroundClip="content-box",d.cloneNode(!0).style.backgroundClip="",t.clearCloneStyle="content-box"===d.style.backgroundClip;for(f in x(t))break;return t.ownLast="0"!==f,x(function(){var n,r,o,s="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",l=a.getElementsByTagName("body")[0];l&&(n=a.createElement("div"),n.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",l.appendChild(n).appendChild(d),d.innerHTML="