Merge remote-tracking branch 'origin/temp8' into temp8-removes-config-based-indexes-3901
This commit is contained in:
@@ -95,8 +95,8 @@
|
||||
<PackageReference Include="Microsoft.AspNet.Mvc" Version="5.2.6" />
|
||||
<PackageReference Include="Microsoft.AspNet.WebApi" Version="5.2.6" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="2.10.0" />
|
||||
<PackageReference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" Version="2.0.0" />
|
||||
<PackageReference Include="Microsoft.Net.Compilers" Version="2.9.0">
|
||||
<PackageReference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" Version="2.0.1" />
|
||||
<PackageReference Include="Microsoft.Net.Compilers" Version="2.10.0">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<!-- development dependency -->
|
||||
</PackageReference>
|
||||
@@ -107,7 +107,7 @@
|
||||
<PackageReference Include="MySql.Data" Version="6.10.7" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
|
||||
<PackageReference Include="Umbraco.ModelsBuilder.Ui">
|
||||
<Version>8.0.0-alpha.26</Version>
|
||||
<Version>8.0.0-alpha.31</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Umbraco.SqlServerCE" Version="4.0.0.1" />
|
||||
</ItemGroup>
|
||||
@@ -164,13 +164,6 @@
|
||||
<Compile Include="Umbraco\Developer\Packages\DirectoryBrowser.aspx.designer.cs">
|
||||
<DependentUpon>directoryBrowser.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Umbraco\Dialogs\ChangeDocType.aspx.cs">
|
||||
<DependentUpon>ChangeDocType.aspx</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Umbraco\Dialogs\ChangeDocType.aspx.designer.cs">
|
||||
<DependentUpon>ChangeDocType.aspx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Umbraco\Masterpages\Default.Master.cs">
|
||||
<DependentUpon>default.Master</DependentUpon>
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
@@ -294,15 +287,6 @@
|
||||
<Content Include="Umbraco\Config\Lang\pt.xml" />
|
||||
<Content Include="Umbraco\Config\Lang\ru.xml" />
|
||||
<Content Include="Umbraco\Config\Lang\zh.xml" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\EditRelationType.aspx" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\Images\Bidirectional.png" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\Images\ParentToChild.png" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\Images\Refresh.gif" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\NewRelationType.aspx" />
|
||||
<Content Include="Umbraco\Developer\RelationTypes\RelationTypesWebService.asmx" />
|
||||
<Content Include="Umbraco\Dialogs\ChangeDocType.aspx">
|
||||
<SubType>ASPXCodeBehind</SubType>
|
||||
</Content>
|
||||
<Content Include="Umbraco\Config\Lang\ko.xml" />
|
||||
<Content Include="Umbraco\Dashboard\FeedProxy.aspx" />
|
||||
<Content Include="default.aspx" />
|
||||
@@ -316,7 +300,6 @@
|
||||
<Content Include="Umbraco\Config\Lang\nl.xml" />
|
||||
<Content Include="Umbraco\Config\Lang\nb.xml" />
|
||||
<Content Include="Umbraco\Config\Lang\sv.xml" />
|
||||
<Content Include="Umbraco\Dialogs\republish.aspx" />
|
||||
<Content Include="Umbraco\Developer\Packages\directoryBrowser.aspx" />
|
||||
<Content Include="Umbraco\Developer\Packages\editPackage.aspx" />
|
||||
<Content Include="Umbraco\Config\Create\UI.xml" />
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
on-login="hideLoginScreen()">
|
||||
</umb-login>
|
||||
|
||||
@Html.BareMinimumServerVariablesScript(Url, Url.Action("ExternalLogin", "BackOffice", new { area = ViewBag.UmbracoPath }), Model.Features, Current.Config.Global())
|
||||
@Html.BareMinimumServerVariablesScript(Url, Url.Action("ExternalLogin", "BackOffice", new { area = ViewBag.UmbracoPath }), Model.Features, Current.Configs.Global())
|
||||
|
||||
<script>
|
||||
|
||||
|
||||
@@ -1,147 +0,0 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" Inherits="umbraco.cms.presentation.developer.RelationTypes.EditRelationType" MasterPageFile="../../masterpages/umbracoPage.Master" %>
|
||||
<%@ Register TagPrefix="umb" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
|
||||
|
||||
<asp:Content ID="headContent" ContentPlaceHolderID="head" runat="server">
|
||||
<style type="text/css">
|
||||
table.relations { }
|
||||
table.relations th { width:auto; }
|
||||
|
||||
table.relations th.objectTypeIcon { width:20px; }
|
||||
table.relations th.directionIcon { width:16px; height:16px; }
|
||||
|
||||
table.relations td { background: transparent none no-repeat scroll center center }
|
||||
|
||||
table.relations td a { text-decoration: underline; }
|
||||
|
||||
/* objectType icons */
|
||||
table.relations td.ContentItemType {}
|
||||
table.relations td.ROOT {}
|
||||
table.relations td.Document {}
|
||||
table.relations td.Media {}
|
||||
table.relations td.MemberType {}
|
||||
table.relations td.Template {}
|
||||
table.relations td.MemberGroup {}
|
||||
table.relations td.ContentItem {}
|
||||
table.relations td.MediaType {}
|
||||
table.relations td.DocumentType {}
|
||||
table.relations td.RecycleBin {}
|
||||
table.relations td.Stylesheet {}
|
||||
table.relations td.Member {}
|
||||
table.relations td.DataType {}
|
||||
|
||||
/* direction icons */
|
||||
table.relations td.parentToChild { background-image: url('../../developer/RelationTypes/Images/ParentToChild.png'); }
|
||||
table.relations td.bidirectional { background-image: url('../../developer/RelationTypes/Images/Bidirectional.png'); }
|
||||
</style>
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="bodyContent" ContentPlaceHolderID="body" runat="server">
|
||||
|
||||
<umb:TabView runat="server" ID="tabControl" Width="200" />
|
||||
|
||||
<umb:Pane ID="idPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="idPropertyPanel" Text="Id">
|
||||
<asp:Literal ID="idLiteral" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
<umb:Pane ID="nameAliasPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" ID="nameProperyPanel" Text="Name">
|
||||
<asp:TextBox ID="nameTextBox" runat="server" Columns="40" ></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="nameRequiredFieldValidator" runat="server" ControlToValidate="nameTextBox" ValidationGroup="RelationType" ErrorMessage="Name Required" Display="Dynamic" />
|
||||
|
||||
</umb:PropertyPanel>
|
||||
|
||||
<umb:PropertyPanel runat="server" id="aliasPropertyPanel" Text="Alias">
|
||||
<asp:TextBox ID="aliasTextBox" runat="server" Columns="40"></asp:TextBox>
|
||||
<asp:RequiredFieldValidator ID="aliasRequiredFieldValidator" runat="server" ControlToValidate="aliasTextBox" ValidationGroup="RelationType" ErrorMessage="Alias Required" Display="Dynamic" />
|
||||
<asp:CustomValidator ID="aliasCustomValidator" runat="server" ControlToValidate="aliasTextBox" ValidationGroup="RelationType" onservervalidate="AliasCustomValidator_ServerValidate" ErrorMessage="Duplicate Alias" Display="Dynamic" />
|
||||
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
<umb:Pane ID="directionPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="dualPropertyPanel" Text="Direction">
|
||||
<asp:RadioButtonList ID="dualRadioButtonList" runat="server" RepeatDirection="Vertical">
|
||||
<asp:ListItem Enabled="true" Selected="False" Text="Parent to Child" Value="0" />
|
||||
<asp:ListItem Enabled="true" Selected="False" Text="Bidirectional" Value="1"/>
|
||||
</asp:RadioButtonList>
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
<umb:Pane ID="objectTypePane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="parentPropertyPanel" Text="Parent">
|
||||
<asp:Literal ID="parentLiteral" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
<umb:PropertyPanel runat="server" id="childPropertyPanel" Text="Child">
|
||||
<asp:Literal ID="childLiteral" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
<umb:Pane ID="relationsCountPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="relationsCountPropertyPanel" Text="Count">
|
||||
<asp:Literal ID="relationsCountLiteral" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
<umb:Pane ID="relationsPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="relationsPropertyPanel" Text="Relations">
|
||||
|
||||
<asp:Repeater ID="relationsRepeater" runat="server">
|
||||
<HeaderTemplate>
|
||||
<table class="table relations">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="objectTypeIcon"> </th>
|
||||
<th>Parent</th>
|
||||
<th class="directionIcon"> </th>
|
||||
<th class="objectTypeIcon"> </th>
|
||||
<th>Child</th>
|
||||
<th>Created</th>
|
||||
<th>Comment</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</HeaderTemplate>
|
||||
<ItemTemplate>
|
||||
<tr>
|
||||
<td class="<%= this.ParentObjectType %>"> </td>
|
||||
<td><a href="<%# GetEditUrl(this.ParentObjectType, (int)DataBinder.Eval(Container.DataItem, "ParentId")) %>" target="_blank"><%# DataBinder.Eval(Container.DataItem, "ParentText") %></a></td>
|
||||
<td class="<%= this.RelationTypeDirection %>"> </td>
|
||||
<td class="<%= this.ChildObjectType %>"> </td>
|
||||
<td><a href="<%# GetEditUrl(this.ChildObjectType, (int)DataBinder.Eval(Container.DataItem, "ChildId")) %>" target="_blank"><%# DataBinder.Eval(Container.DataItem, "ChildText") %></a></td>
|
||||
<td><%# DataBinder.Eval(Container.DataItem, "DateTime") %></td>
|
||||
<td><%# DataBinder.Eval(Container.DataItem, "Comment") %></td>
|
||||
</tr>
|
||||
</ItemTemplate>
|
||||
<FooterTemplate>
|
||||
</tbody>
|
||||
</table>
|
||||
</FooterTemplate>
|
||||
</asp:Repeater>
|
||||
|
||||
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
</asp:Content>
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 421 B |
Binary file not shown.
|
Before Width: | Height: | Size: 434 B |
Binary file not shown.
|
Before Width: | Height: | Size: 1.0 KiB |
@@ -1,50 +0,0 @@
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="NewRelationType.aspx.cs" Inherits="umbraco.cms.presentation.developer.RelationTypes.NewRelationType" MasterPageFile="../../masterpages/umbracoDialog.Master"%>
|
||||
<%@ Register TagPrefix="umb" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
|
||||
|
||||
<asp:Content ID="bodyContent" ContentPlaceHolderID="body" runat="server">
|
||||
<umb:Pane ID="nameAliasPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" ID="nameProperyPanel" Text="Name">
|
||||
<asp:TextBox ID="descriptionTextBox" runat="server" Columns="40" AutoCompleteType="Disabled" style="width:200px;" />
|
||||
<asp:RequiredFieldValidator ID="descriptionRequiredFieldValidator" runat="server" ControlToValidate="descriptionTextBox" ValidationGroup="NewRelationType" ErrorMessage="Name Required" Display="Dynamic" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
<umb:PropertyPanel runat="server" id="aliasPropertyPanel" Text="Alias">
|
||||
<asp:TextBox ID="aliasTextBox" runat="server" Columns="40" AutoCompleteType="Disabled" style="width:200px;" />
|
||||
<asp:RequiredFieldValidator ID="aliasRequiredFieldValidator" runat="server" ControlToValidate="aliasTextBox" ValidationGroup="NewRelationType" ErrorMessage="Alias Required" Display="Dynamic" />
|
||||
<asp:CustomValidator ID="aliasCustomValidator" runat="server" ControlToValidate="aliasTextBox" ValidationGroup="NewRelationType" onservervalidate="AliasCustomValidator_ServerValidate" ErrorMessage="Duplicate Alias" Display="Dynamic" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
<umb:Pane ID="directionPane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="PropertyPanel1" Text="Direction">
|
||||
<asp:RadioButtonList ID="dualRadioButtonList" runat="server" RepeatDirection="Horizontal">
|
||||
<asp:ListItem Enabled="true" Selected="True" Text="Parent to Child" Value="0"/>
|
||||
<asp:ListItem Enabled="true" Selected="False" Text="Bidirectional" Value="1"/>
|
||||
</asp:RadioButtonList>
|
||||
</umb:PropertyPanel>
|
||||
</umb:Pane>
|
||||
|
||||
<umb:Pane ID="objectTypePane" runat="server" Text="">
|
||||
|
||||
<umb:PropertyPanel runat="server" id="PropertyPanel2" Text="Parent">
|
||||
<asp:DropDownList ID="parentDropDownList" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
<umb:PropertyPanel runat="server" id="PropertyPanel3" Text="Child">
|
||||
<asp:DropDownList ID="childDropDownList" runat="server" />
|
||||
</umb:PropertyPanel>
|
||||
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
|
||||
<umb:Pane runat="server" CssClass="btn-toolbar umb-btn-toolbar">
|
||||
<a href="#" class="btn btn-link" onclick="UmbClientMgr.closeModalWindow()"><%=Services.TextService.Localize("cancel")%></a>
|
||||
<asp:Button ID="addButton" runat="server" Text="Create" cssclass="btn btn-primary" onclick="AddButton_Click" CausesValidation="true" ValidationGroup="NewRelationType" />
|
||||
</umb:Pane>
|
||||
|
||||
|
||||
</asp:Content>
|
||||
@@ -1 +0,0 @@
|
||||
<%@ WebService Language="C#" CodeBehind="RelationTypesWebService.asmx.cs" Class="umbraco.cms.presentation.developer.RelationTypes.RelationTypesWebService" %>
|
||||
@@ -1,120 +0,0 @@
|
||||
<%@ Page Language="c#" MasterPageFile="../masterpages/umbracoDialog.Master"Codebehind="ChangeDocType.aspx.cs" AutoEventWireup="True" Inherits="Umbraco.Web.UI.Umbraco.Dialogs.ChangeDocType" %>
|
||||
<%@ Register TagPrefix="umb" Namespace="ClientDependency.Core.Controls" Assembly="ClientDependency.Core" %>
|
||||
<%@ Register TagPrefix="cc1" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="head" runat="server">
|
||||
|
||||
<style type="text/css">
|
||||
#propertyMapping thead tr th{border-bottom:1px solid #ccc; padding: 4px; padding-right: 25px;
|
||||
background-image: url(<%= Umbraco.Core.IO.IOHelper.ResolveUrl(Umbraco.Core.IO.SystemDirectories.UmbracoClient) %>/tableSorting/img/bg.gif);
|
||||
cursor: pointer;
|
||||
font-weight: bold;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center right;
|
||||
}
|
||||
|
||||
#propertyMapping tbody tr td{border-bottom:1px solid #efefef}
|
||||
#propertyMapping td{padding: 4px; ;}
|
||||
body.umbracoDialog { overflow: auto; }
|
||||
.umb-dialog .umb-control-group .umb-el-wrap { overflow: hidden; }
|
||||
.umb-dialog .umb-control-group .umb-el-wrap label { float: left; width: 140px; font-weight: bold; }
|
||||
.umb-dialog .umb-control-group .umb-el-wrap label:after { content:":"; }
|
||||
.umb-dialog .umb-control-group .umb-el-wrap .controls-row { float: left; width: 280px; padding-bottom: 8px; }
|
||||
.umb-dialog .umb-control-group .umb-el-wrap .controls-row select { width: auto; }
|
||||
</style>
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="body" runat="server">
|
||||
|
||||
<cc1:Pane runat="server" ID="ChangeDocTypePane">
|
||||
<p class="help">
|
||||
<%= Services.TextService.Localize("changeDocType/changeDocTypeInstruction") %>
|
||||
</p>
|
||||
|
||||
<cc1:PropertyPanel ID="ContentNamePropertyPanel" runat="server">
|
||||
<asp:Label ID="ContentNameLabel" runat="server" />
|
||||
</cc1:PropertyPanel>
|
||||
|
||||
<cc1:PropertyPanel ID="CurrentTypePropertyPanel" runat="server">
|
||||
<asp:Label ID="CurrentTypeLabel" runat="server" />
|
||||
</cc1:PropertyPanel>
|
||||
|
||||
<cc1:PropertyPanel ID="NewTypePropertyPanel" runat="server">
|
||||
<asp:DropDownList ID="NewDocumentTypeList" runat="server" AutoPostBack="true" OnSelectedIndexChanged="NewDocumentTypeList_SelectedIndexChanged" />
|
||||
<asp:RequiredFieldValidator ControlToValidate="NewDocumentTypeList" ErrorMessage="*" ID="NewDocumentTypeValidator" runat="server" Display="Dynamic" />
|
||||
<br /><small><%=Services.TextService.Localize("changeDocType/validDocTypesNote") %></small>
|
||||
</cc1:PropertyPanel>
|
||||
|
||||
<cc1:PropertyPanel ID="NewTemplatePropertyPanel" runat="server">
|
||||
<asp:DropDownList ID="NewTemplateList" runat="server" />
|
||||
</cc1:PropertyPanel>
|
||||
|
||||
<asp:PlaceHolder ID="NotAvailablePlaceholder" runat="server" Visible="false">
|
||||
<div class="propertyItem notice" style="padding-top: 10px">
|
||||
<p><%=Services.TextService.Localize("changeDocType/docTypeCannotBeChanged") %></p>
|
||||
</div>
|
||||
</asp:PlaceHolder>
|
||||
</cc1:Pane>
|
||||
|
||||
<cc1:Pane runat="server" ID="ChangeDocTypePropertyMappingPane">
|
||||
|
||||
<p class="help">
|
||||
<%= Services.TextService.Localize("changeDocType/changeDocTypeInstruction2") %>
|
||||
</p>
|
||||
|
||||
<asp:Repeater ID="PropertyMappingRepeater" runat="server">
|
||||
<HeaderTemplate>
|
||||
<table id="propertyMapping">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><%= Services.TextService.Localize("changeDocType/currentProperty") %></th>
|
||||
<th><%= Services.TextService.Localize("changeDocType/mapToProperty") %></th>
|
||||
</tr>
|
||||
</thead>
|
||||
</HeaderTemplate>
|
||||
<ItemTemplate>
|
||||
<tr>
|
||||
<td>
|
||||
<%# DataBinder.Eval(Container, "DataItem.Name") %>
|
||||
<asp:HiddenField ID="Alias" runat="server" Value='<%#DataBinder.Eval(Container, "DataItem.Alias")%>' />
|
||||
<asp:HiddenField ID="Name" runat="server" Value='<%#DataBinder.Eval(Container, "DataItem.Name")%>' />
|
||||
<asp:HiddenField ID="PropertyEditorAlias" runat="server" Value='<%#DataBinder.Eval(Container, "DataItem.PropertyEditorAlias")%>' />
|
||||
</td>
|
||||
<td><asp:DropDownList id="DestinationProperty" runat="server" /></td>
|
||||
</tr>
|
||||
</ItemTemplate>
|
||||
<FooterTemplate>
|
||||
</table>
|
||||
</FooterTemplate>
|
||||
</asp:Repeater>
|
||||
</cc1:Pane>
|
||||
|
||||
<asp:PlaceHolder ID="SuccessPlaceholder" runat="server" Visible="false">
|
||||
<p><%=Services.TextService.Localize("changeDocType/docTypeChanged") %></p>
|
||||
<p>
|
||||
<asp:Literal ID="SuccessMessage" runat="server" />
|
||||
<asp:Literal ID="PropertiesMappedMessage" runat="server" />
|
||||
<asp:Literal ID="ContentPublishedMessage" runat="server" />
|
||||
<br /><br />
|
||||
<a href="#" style="color: blue" onclick="UmbClientMgr.closeModalWindow()"><%=Services.TextService.Localize("defaultdialogs/closeThisWindow") %></a>
|
||||
</p>
|
||||
</asp:PlaceHolder>
|
||||
|
||||
<asp:PlaceHolder ID="ValidationPlaceholder" runat="server" Visible="false">
|
||||
<br />
|
||||
<div class="notice" style="padding: 10px">
|
||||
<asp:Literal id="ValidationError" runat="server" />
|
||||
</div>
|
||||
</asp:PlaceHolder>
|
||||
|
||||
<div class="btn-toolbar umb-btn-toolbar">
|
||||
<asp:PlaceHolder ID="SaveAndCancelPlaceholder" runat="server">
|
||||
<a href="#" class="btn btn-link" onclick="UmbClientMgr.closeModalWindow()"><%=Services.TextService.Localize("general/cancel")%></a>
|
||||
<asp:PlaceHolder ID="SavePlaceholder" runat="server">
|
||||
<asp:Button ID="ValidateAndSave" runat="server" CssClass="btn btn-primary" Text="Create" OnClick="ValidateAndSave_Click"></asp:Button>
|
||||
</asp:PlaceHolder>
|
||||
</asp:Placeholder>
|
||||
</div>
|
||||
|
||||
</asp:Content>
|
||||
@@ -1,346 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using Umbraco.Core;
|
||||
using Umbraco.Core.Services;
|
||||
using Umbraco.Core.Models;
|
||||
using Umbraco.Web.UI.Pages;
|
||||
|
||||
namespace Umbraco.Web.UI.Umbraco.Dialogs
|
||||
{
|
||||
public partial class ChangeDocType : UmbracoEnsuredPage
|
||||
{
|
||||
class PropertyMapping
|
||||
{
|
||||
public string FromName { get; set; }
|
||||
public string ToName { get; set; }
|
||||
public string ToAlias { get; set; }
|
||||
public object Value { get; set; }
|
||||
}
|
||||
|
||||
private IContent _content;
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
var contentNodeId = int.Parse(Request.QueryString["id"]);
|
||||
_content = Services.ContentService.GetById(contentNodeId);
|
||||
|
||||
LocalizeTexts();
|
||||
|
||||
if (!Page.IsPostBack)
|
||||
{
|
||||
DisplayContentDetails();
|
||||
if (PopulateListOfValidAlternateDocumentTypes())
|
||||
{
|
||||
PopulateListOfTemplates();
|
||||
PopulatePropertyMappingWithSources();
|
||||
PopulatePropertyMappingWithDestinations();
|
||||
}
|
||||
else
|
||||
{
|
||||
DisplayNotAvailable();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void LocalizeTexts()
|
||||
{
|
||||
ChangeDocTypePane.Text = Services.TextService.Localize("changeDocType/selectNewDocType");
|
||||
ContentNamePropertyPanel.Text = Services.TextService.Localize("changeDocType/selectedContent");
|
||||
CurrentTypePropertyPanel.Text = Services.TextService.Localize("changeDocType/currentType");
|
||||
NewTypePropertyPanel.Text = Services.TextService.Localize("changeDocType/newType");
|
||||
NewTemplatePropertyPanel.Text = Services.TextService.Localize("changeDocType/newTemplate");
|
||||
ChangeDocTypePropertyMappingPane.Text = Services.TextService.Localize("changeDocType/mapProperties");
|
||||
ValidateAndSave.Text = Services.TextService.Localize("buttons/save");
|
||||
}
|
||||
|
||||
private void DisplayContentDetails()
|
||||
{
|
||||
ContentNameLabel.Text = _content.Name;
|
||||
CurrentTypeLabel.Text = _content.ContentType.Name;
|
||||
}
|
||||
|
||||
private bool PopulateListOfValidAlternateDocumentTypes()
|
||||
{
|
||||
// Start with all content types
|
||||
var documentTypes = Services.ContentTypeService.GetAll().ToArray();
|
||||
|
||||
// Remove invalid ones from list of potential alternatives
|
||||
documentTypes = RemoveCurrentDocumentTypeFromAlternatives(documentTypes).ToArray();
|
||||
documentTypes = RemoveInvalidByParentDocumentTypesFromAlternatives(documentTypes).ToArray();
|
||||
documentTypes = RemoveInvalidByChildrenDocumentTypesFromAlternatives(documentTypes).ToArray();
|
||||
|
||||
// If we have at least one, bind to list and return true
|
||||
if (documentTypes.Any())
|
||||
{
|
||||
NewDocumentTypeList.DataSource = documentTypes.OrderBy(x => x.Name);
|
||||
NewDocumentTypeList.DataValueField = "Id";
|
||||
NewDocumentTypeList.DataTextField = "Name";
|
||||
NewDocumentTypeList.DataBind();
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private IEnumerable<IContentType> RemoveCurrentDocumentTypeFromAlternatives(IEnumerable<IContentType> documentTypes)
|
||||
{
|
||||
return documentTypes
|
||||
.Where(x => x.Id != _content.ContentType.Id);
|
||||
}
|
||||
|
||||
private IEnumerable<IContentType> RemoveInvalidByParentDocumentTypesFromAlternatives(IEnumerable<IContentType> documentTypes)
|
||||
{
|
||||
if (_content.ParentId == -1)
|
||||
{
|
||||
// Root content, only include those that have been selected as allowed at root
|
||||
return documentTypes
|
||||
.Where(x => x.AllowedAsRoot);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Below root, so only include those allowed as sub-nodes for the parent
|
||||
var parentNode = Services.ContentService.GetById(_content.ParentId);
|
||||
return documentTypes
|
||||
.Where(x => parentNode.ContentType.AllowedContentTypes
|
||||
.Select(y => y.Id.Value)
|
||||
.Contains(x.Id));
|
||||
}
|
||||
}
|
||||
|
||||
private IEnumerable<IContentType> RemoveInvalidByChildrenDocumentTypesFromAlternatives(IEnumerable<IContentType> documentTypes)
|
||||
{
|
||||
//fixme Should do proper paging here ... when this is refactored we will
|
||||
var docTypeIdsOfChildren = Services.ContentService.GetPagedChildren(_content.Id, 0, int.MaxValue, out var total)
|
||||
.Select(x => x.ContentType.Id)
|
||||
.Distinct()
|
||||
.ToList();
|
||||
return documentTypes
|
||||
.Where(x => x.AllowedContentTypes
|
||||
.Select(y => y.Id.Value)
|
||||
.ContainsAll(docTypeIdsOfChildren));
|
||||
}
|
||||
|
||||
private void PopulateListOfTemplates()
|
||||
{
|
||||
// Get selected new document type
|
||||
var contentType = GetSelectedDocumentType();
|
||||
|
||||
// Populate template list
|
||||
NewTemplateList.DataSource = contentType.AllowedTemplates;
|
||||
NewTemplateList.DataValueField = "Id";
|
||||
NewTemplateList.DataTextField = "Name";
|
||||
NewTemplateList.DataBind();
|
||||
NewTemplateList.Items.Add(new ListItem("<" + Services.TextService.Localize("changeDocType/none") + ">", "0"));
|
||||
|
||||
// Set default template
|
||||
if (contentType.DefaultTemplate != null)
|
||||
{
|
||||
var itemToSelect = NewTemplateList.Items.FindByValue(contentType.DefaultTemplate.Id.ToString());
|
||||
if (itemToSelect != null)
|
||||
{
|
||||
itemToSelect.Selected = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void PopulatePropertyMappingWithSources()
|
||||
{
|
||||
PropertyMappingRepeater.DataSource = GetPropertiesOfContentType(_content.ContentType);
|
||||
PropertyMappingRepeater.DataBind();
|
||||
}
|
||||
|
||||
private void PopulatePropertyMappingWithDestinations()
|
||||
{
|
||||
// Get selected new document type
|
||||
var contentType = GetSelectedDocumentType();
|
||||
|
||||
// Get properties of new document type (including any from parent types)
|
||||
var properties = GetPropertiesOfContentType(contentType);
|
||||
|
||||
// Loop through list of source properties and populate destination options with all those of same property type
|
||||
foreach (RepeaterItem ri in PropertyMappingRepeater.Items)
|
||||
{
|
||||
if (ri.ItemType == ListItemType.Item || ri.ItemType == ListItemType.AlternatingItem)
|
||||
{
|
||||
// Get data type from hidden field
|
||||
var propEdAlias = ((HiddenField)ri.FindControl("PropertyEditorAlias")).Value;
|
||||
|
||||
// Bind destination list with properties that match data type
|
||||
var ddl = (DropDownList)ri.FindControl("DestinationProperty");
|
||||
ddl.DataSource = properties.Where(x => x.PropertyEditorAlias == propEdAlias);
|
||||
ddl.DataValueField = "Alias";
|
||||
ddl.DataTextField = "Name";
|
||||
ddl.DataBind();
|
||||
ddl.Items.Insert(0, new ListItem("<" + Services.TextService.Localize("changeDocType/none") + ">", string.Empty));
|
||||
|
||||
// Set default selection to be one with matching alias
|
||||
var alias = ((HiddenField)ri.FindControl("Alias")).Value;
|
||||
var item = ddl.Items.FindByValue(alias);
|
||||
if (item != null)
|
||||
{
|
||||
item.Selected = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private IContentType GetSelectedDocumentType()
|
||||
{
|
||||
return Services.ContentTypeService.Get(int.Parse(NewDocumentTypeList.SelectedItem.Value));
|
||||
}
|
||||
|
||||
private IEnumerable<PropertyType> GetPropertiesOfContentType(IContentType contentType)
|
||||
{
|
||||
return contentType.CompositionPropertyTypes;
|
||||
}
|
||||
|
||||
private void DisplayNotAvailable()
|
||||
{
|
||||
NewTypePropertyPanel.Visible = false;
|
||||
NewTemplatePropertyPanel.Visible = false;
|
||||
SavePlaceholder.Visible = false;
|
||||
NotAvailablePlaceholder.Visible = true;
|
||||
ChangeDocTypePropertyMappingPane.Visible = false;
|
||||
}
|
||||
|
||||
protected void NewDocumentTypeList_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
PopulateListOfTemplates();
|
||||
PopulatePropertyMappingWithDestinations();
|
||||
}
|
||||
|
||||
protected void ValidateAndSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (IsPropertyMappingValid())
|
||||
{
|
||||
// For all properties to be mapped, save the values to a temporary list
|
||||
var propertyMappings = SavePropertyMappings();
|
||||
|
||||
// Get flag for if content already published
|
||||
var wasPublished = _content.Published;
|
||||
|
||||
// Change the document type passing flag to clear the properties
|
||||
var newContentType = GetSelectedDocumentType();
|
||||
_content.ChangeContentType(newContentType, true);
|
||||
|
||||
// Set the template if one has been selected
|
||||
if (NewTemplateList.SelectedItem != null)
|
||||
{
|
||||
var templateId = int.Parse(NewTemplateList.SelectedItem.Value);
|
||||
_content.Template = templateId > 0 ? Services.FileService.GetTemplate(templateId) : null;
|
||||
}
|
||||
|
||||
// Set the property values
|
||||
var propertiesMappedMessageBuilder = new StringBuilder("<ul>");
|
||||
foreach (var propertyMapping in propertyMappings)
|
||||
{
|
||||
propertiesMappedMessageBuilder.AppendFormat("<li>{0} {1} {2}</li>",
|
||||
propertyMapping.FromName, Services.TextService.Localize("changeDocType/to"), propertyMapping.ToName);
|
||||
_content.SetValue(propertyMapping.ToAlias, propertyMapping.Value);
|
||||
}
|
||||
propertiesMappedMessageBuilder.Append("</ul>");
|
||||
|
||||
// Save
|
||||
var user = Security.CurrentUser;
|
||||
Services.ContentService.Save(_content, user.Id);
|
||||
|
||||
// Publish if the content was already published
|
||||
if (wasPublished)
|
||||
{
|
||||
// no values to publish, really
|
||||
Services.ContentService.SaveAndPublish(_content, userId: user.Id);
|
||||
}
|
||||
|
||||
// Sync the tree
|
||||
ClientTools.SyncTree(_content.Path, true);
|
||||
|
||||
// Reload the page if the content was already being viewed
|
||||
ClientTools.ReloadLocation();
|
||||
|
||||
// Display success message
|
||||
SuccessMessage.Text = Services.TextService.Localize("changeDocType/successMessage").Replace("[new type]", "<strong>" + newContentType.Name + "</strong>");
|
||||
PropertiesMappedMessage.Text = propertiesMappedMessageBuilder.ToString();
|
||||
if (wasPublished)
|
||||
{
|
||||
ContentPublishedMessage.Text = Services.TextService.Localize("changeDocType/contentRepublished");
|
||||
ContentPublishedMessage.Visible = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ContentPublishedMessage.Visible = false;
|
||||
}
|
||||
SuccessPlaceholder.Visible = true;
|
||||
SaveAndCancelPlaceholder.Visible = false;
|
||||
ValidationPlaceholder.Visible = false;
|
||||
ChangeDocTypePane.Visible = false;
|
||||
ChangeDocTypePropertyMappingPane.Visible = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
ValidationPlaceholder.Visible = true;
|
||||
}
|
||||
}
|
||||
|
||||
private bool IsPropertyMappingValid()
|
||||
{
|
||||
// Check whether any properties have been mapped to more than once
|
||||
var mappedPropertyAliases = new List<string>();
|
||||
foreach (RepeaterItem ri in PropertyMappingRepeater.Items)
|
||||
{
|
||||
if (ri.ItemType == ListItemType.Item || ri.ItemType == ListItemType.AlternatingItem)
|
||||
{
|
||||
var ddl = (DropDownList)ri.FindControl("DestinationProperty");
|
||||
var mappedPropertyAlias = ddl.SelectedItem.Value;
|
||||
if (!string.IsNullOrEmpty(mappedPropertyAlias))
|
||||
{
|
||||
if (mappedPropertyAliases.Contains(mappedPropertyAlias))
|
||||
{
|
||||
ValidationError.Text = Services.TextService.Localize("changeDocType/validationErrorPropertyWithMoreThanOneMapping");
|
||||
return false;
|
||||
}
|
||||
|
||||
mappedPropertyAliases.Add(mappedPropertyAlias);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private IList<PropertyMapping> SavePropertyMappings()
|
||||
{
|
||||
// Create list of mapped property values for assignment after the document type is changed
|
||||
var mappedPropertyValues = new List<PropertyMapping>();
|
||||
foreach (RepeaterItem ri in PropertyMappingRepeater.Items)
|
||||
{
|
||||
if (ri.ItemType == ListItemType.Item || ri.ItemType == ListItemType.AlternatingItem)
|
||||
{
|
||||
// Get property alias to map to
|
||||
var ddl = (DropDownList)ri.FindControl("DestinationProperty");
|
||||
var mappedAlias = ddl.SelectedItem.Value;
|
||||
if (!string.IsNullOrEmpty(mappedAlias))
|
||||
{
|
||||
// If mapping property, get current property value from alias
|
||||
var sourceAlias = ((HiddenField)ri.FindControl("Alias")).Value;
|
||||
var sourcePropertyValue = _content.GetValue(sourceAlias);
|
||||
|
||||
// Add to list
|
||||
mappedPropertyValues.Add(new PropertyMapping
|
||||
{
|
||||
FromName = ((HiddenField)ri.FindControl("Name")).Value,
|
||||
ToName = ddl.SelectedItem.Text,
|
||||
ToAlias = mappedAlias,
|
||||
Value = sourcePropertyValue
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return mappedPropertyValues;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,213 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Umbraco.Web.UI.Umbraco.Dialogs {
|
||||
|
||||
|
||||
public partial class ChangeDocType {
|
||||
|
||||
/// <summary>
|
||||
/// ChangeDocTypePane control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.Pane ChangeDocTypePane;
|
||||
|
||||
/// <summary>
|
||||
/// ContentNamePropertyPanel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.PropertyPanel ContentNamePropertyPanel;
|
||||
|
||||
/// <summary>
|
||||
/// ContentNameLabel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label ContentNameLabel;
|
||||
|
||||
/// <summary>
|
||||
/// CurrentTypePropertyPanel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.PropertyPanel CurrentTypePropertyPanel;
|
||||
|
||||
/// <summary>
|
||||
/// CurrentTypeLabel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label CurrentTypeLabel;
|
||||
|
||||
/// <summary>
|
||||
/// NewTypePropertyPanel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.PropertyPanel NewTypePropertyPanel;
|
||||
|
||||
/// <summary>
|
||||
/// NewDocumentTypeList control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.DropDownList NewDocumentTypeList;
|
||||
|
||||
/// <summary>
|
||||
/// NewDocumentTypeValidator control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.RequiredFieldValidator NewDocumentTypeValidator;
|
||||
|
||||
/// <summary>
|
||||
/// NewTemplatePropertyPanel control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.PropertyPanel NewTemplatePropertyPanel;
|
||||
|
||||
/// <summary>
|
||||
/// NewTemplateList control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.DropDownList NewTemplateList;
|
||||
|
||||
/// <summary>
|
||||
/// NotAvailablePlaceholder control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.PlaceHolder NotAvailablePlaceholder;
|
||||
|
||||
/// <summary>
|
||||
/// ChangeDocTypePropertyMappingPane control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::Umbraco.Web._Legacy.Controls.Pane ChangeDocTypePropertyMappingPane;
|
||||
|
||||
/// <summary>
|
||||
/// PropertyMappingRepeater control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Repeater PropertyMappingRepeater;
|
||||
|
||||
/// <summary>
|
||||
/// SuccessPlaceholder control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.PlaceHolder SuccessPlaceholder;
|
||||
|
||||
/// <summary>
|
||||
/// SuccessMessage control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Literal SuccessMessage;
|
||||
|
||||
/// <summary>
|
||||
/// PropertiesMappedMessage control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Literal PropertiesMappedMessage;
|
||||
|
||||
/// <summary>
|
||||
/// ContentPublishedMessage control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Literal ContentPublishedMessage;
|
||||
|
||||
/// <summary>
|
||||
/// ValidationPlaceholder control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.PlaceHolder ValidationPlaceholder;
|
||||
|
||||
/// <summary>
|
||||
/// ValidationError control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Literal ValidationError;
|
||||
|
||||
/// <summary>
|
||||
/// SaveAndCancelPlaceholder control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.PlaceHolder SaveAndCancelPlaceholder;
|
||||
|
||||
/// <summary>
|
||||
/// SavePlaceholder control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.PlaceHolder SavePlaceholder;
|
||||
|
||||
/// <summary>
|
||||
/// ValidateAndSave control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Button ValidateAndSave;
|
||||
}
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
<%@ Page Language="c#" Codebehind="republish.aspx.cs" MasterPageFile="../masterpages/umbracoDialog.Master" AutoEventWireup="True" Inherits="umbraco.cms.presentation.republish" %>
|
||||
<%@ Register TagPrefix="cc1" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="head" runat="server">
|
||||
<script type="text/javascript">
|
||||
function showProgress(button, elementId) {
|
||||
var img = document.getElementById(elementId);
|
||||
|
||||
img.style.visibility = "visible";
|
||||
button.style.display = "none";
|
||||
}
|
||||
</script>
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="body" runat="server">
|
||||
<asp:Panel ID="p_republish" runat="server">
|
||||
<div class="propertyDiv">
|
||||
<p><%= Services.TextService.Localize("defaultdialogs/siterepublishHelp")%> </p>
|
||||
</div>
|
||||
|
||||
<div id="buttons" class="btn-toolbar umb-btn-toolbar">
|
||||
<a href="#" class="btn btn-link" onclick="UmbClientMgr.closeModalWindow();"><%=Services.TextService.Localize("cancel")%></a>
|
||||
<asp:Button ID="bt_go" cssclass="btn btn-primary" OnClick="go" OnClientClick="showProgress(document.getElementById('buttons'),'progress'); return true;" runat="server" Text="Republish" />
|
||||
</div>
|
||||
|
||||
<div id="progress" style="visibility: hidden;">
|
||||
<div class="umb-loader-wrapper">
|
||||
<cc1:ProgressBar ID="progbar" runat="server" Title="Please wait..." />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</asp:Panel>
|
||||
|
||||
<asp:Panel ID="p_done" Visible="false" runat="server">
|
||||
<div class="success">
|
||||
<p><%= Services.TextService.Localize("defaultdialogs/siterepublished")%></p>
|
||||
|
||||
</div>
|
||||
<input type="button" class="btn btn-primary" onclick="UmbClientMgr.closeModalWindow();" value="Ok" />
|
||||
</asp:Panel>
|
||||
</asp:Content>
|
||||
@@ -299,11 +299,11 @@
|
||||
<system.codedom>
|
||||
<compilers>
|
||||
<compiler language="c#;cs;csharp" extension=".cs"
|
||||
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
|
||||
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
|
||||
warningLevel="4"
|
||||
compilerOptions="/langversion:7 /nowarn:1659;1699;1701" />
|
||||
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
|
||||
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
|
||||
type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
|
||||
warningLevel="4"
|
||||
compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
|
||||
</compilers>
|
||||
|
||||
Reference in New Issue
Block a user