Revert "Temp8 tinymce"

This commit is contained in:
Warren Buckley
2018-11-22 14:05:51 +00:00
committed by GitHub
parent 2a0748fc1e
commit 54a2aa00a7
6677 changed files with 646351 additions and 410535 deletions

View File

@@ -0,0 +1,10 @@
<browsers>
<browser refID="Default">
<controlAdapters>
<adapter controlType="System.Web.UI.HtmlControls.HtmlForm"
adapterType="umbraco.presentation.urlRewriter.FormRewriterControlAdapter" />
</controlAdapters>
</browser>
</browsers>

View File

@@ -0,0 +1,26 @@
<browsers>
<!--
Browser capability file for the w3c validator
sample UA: "W3C_Validator/1.305.2.148 libwww-perl/5.803"
-->
<browser id="w3cValidator" parentID="default">
<identification>
<userAgent match="^W3C_Validator" />
</identification>
<capture>
<userAgent match="^W3C_Validator/(?'version'(?'major'\d+)(?'minor'\.\d+)\w*).*" />
</capture>
<capabilities>
<capability name="browser" value="w3cValidator" />
<capability name="majorversion" value="${major}" />
<capability name="minorversion" value="${minor}" />
<capability name="version" value="${version}" />
<capability name="w3cdomversion" value="1.0" />
<capability name="xml" value="true" />
<capability name="tagWriter" value="System.Web.UI.HtmlTextWriter" />
</capabilities>
</browser>
</browsers>

View File

@@ -11,7 +11,7 @@
</div>
<div ng-show="ready">
<div ng-bind-html="dashboard.text"></div>
<div ng-bind-html-unsafe="dashboard.text"></div>
<div ng-if="dashboard.outOfDateModels">
<p>Models are <strong>out-of-date</strong>.

View File

@@ -1,2 +1,2 @@
<%@ Application Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %>
<%@ Application Inherits="Umbraco.Web.UmbracoApplication" Language="C#" %>

View File

@@ -1,10 +1,25 @@
using System.Reflection;
using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Umbraco.Web.UI")]
[assembly: AssemblyDescription("Umbraco Web UI")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyProduct("Umbraco CMS")]
[assembly: ComVisible(false)]
[assembly: Guid("A87ADD48-9DB5-4068-BCC6-377CC54E7AE4")]
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("Umbraco.Web.UI")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyProduct("Umbraco CMS")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("A87ADD48-9DB5-4068-BCC6-377CC54E7AE4")]
//[assembly: System.Security.SecurityRules(System.Security.SecurityRuleSet.Level1)]
[assembly: log4net.Config.XmlConfigurator(Watch = false)]

View File

@@ -1,35 +1,35 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Umbraco.Web.UI.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.6.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("https://our.umbraco.com/umbraco/webservices/api/repository.asmx")]
public string Umbraco_Web_UI_org_umbraco_our_Repository {
get {
return ((string)(this["Umbraco_Web_UI_org_umbraco_our_Repository"]));
}
}
}
}
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace Umbraco.Web.UI.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("https://our.umbraco.com/umbraco/webservices/api/repository.asmx")]
public string Umbraco_Web_UI_org_umbraco_our_Repository {
get {
return ((string)(this["Umbraco_Web_UI_org_umbraco_our_Repository"]));
}
}
}
}

View File

@@ -1,9 +1,9 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Umbraco.Web.UI.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="Umbraco_Web_UI_org_umbraco_our_Repository" Type="System.String" Scope="Application">
<Value Profile="(Default)">https://our.umbraco.com/umbraco/webservices/api/repository.asmx</Value>
</Setting>
</Settings>
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Umbraco.Web.UI.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="Umbraco_Web_UI_org_umbraco_our_Repository" Type="System.String" Scope="Application">
<Value Profile="(Default)">https://our.umbraco.com/umbraco/webservices/api/repository.asmx</Value>
</Setting>
</Settings>
</SettingsFile>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,2 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String></wpf:ResourceDictionary>

View File

@@ -1,58 +0,0 @@
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
<!--
Enabling request validation in view pages would cause validation to occur
after the input has already been processed by the controller. By default
MVC performs request validation before a controller processes the input.
To change this behavior apply the ValidateInputAttribute to a
controller or action.
-->
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<controls>
<add assembly="System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
</controls>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
</configuration>

View File

@@ -1,26 +1,25 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a breadcrumb of parents using an unordered HTML list.
How it works:
- It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
@{ var selection = Model.Content.Ancestors().ToArray(); }
@if (selection.Length > 0)
{
<ul class="breadcrumb">
@* For each page in the ancestors collection which have been ordered by Level (so we start with the highest top node first) *@
@foreach (var item in selection.OrderBy(x => x.Level))
{
<li><a href="@item.Url">@item.Name</a> <span class="divider">/</span></li>
}
@* Display the current page as the last item in the list *@
<li class="active">@Model.Content.Name</li>
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a breadcrumb of parents using an unordered HTML list.
How it works:
- It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
@{ var selection = Model.Content.Ancestors().ToArray(); }
@if (selection.Length > 0)
{
<ul class="breadcrumb">
@* For each page in the ancestors collection which have been ordered by Level (so we start with the highest top node first) *@
@foreach (var item in selection.OrderBy(x => x.Level))
{
<li><a href="@item.Url">@item.Name</a> <span class="divider">/</span></li>
}
@* Display the current page as the last item in the list *@
<li class="active">@Model.Content.Name</li>
</ul>
}

View File

@@ -1,65 +1,66 @@
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Controllers
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
var profileModel = Members.GetCurrentMemberProfileModel();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco/lib/jquery/jquery.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validate/jquery.validate.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js");
var success = TempData["ProfileUpdateSuccess"] != null;
}
@*NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed*@
@Html.RenderJsHere()
@if (Members.IsLoggedIn() && profileModel != null)
{
if (success)
{
@* This message will show if RedirectOnSucces is set to false (default) *@
<p>Profile updated</p>
}
using (Html.BeginUmbracoForm<UmbProfileController>("HandleUpdateProfile"))
{
<fieldset>
<legend>Edit profile</legend>
@Html.ValidationSummary("profileModel", true)
@Html.LabelFor(m => profileModel.Name)
@Html.TextBoxFor(m => profileModel.Name)
@Html.ValidationMessageFor(m => profileModel.Name)
<br />
@Html.LabelFor(m => profileModel.Email)
@Html.TextBoxFor(m => profileModel.Email)
@Html.ValidationMessageFor(m => profileModel.Email)
<br />
@for (var i = 0; i < profileModel.MemberProperties.Count; i++)
{
@Html.LabelFor(m => profileModel.MemberProperties[i].Value, profileModel.MemberProperties[i].Name)
@*
By default this will render a textbox but if you want to change the editor template for this property you can
easily change it. For example, if you wanted to render a custom editor for this field called "MyEditor" you would
create a file at ~/Views/Shared/EditorTemplates/MyEditor.cshtml", then you will change the next line of code to
render your specific editor template like:
@Html.EditorFor(m => profileModel.MemberProperties[i].Value, "MyEditor")
*@
@Html.EditorFor(m => profileModel.MemberProperties[i].Value)
@Html.HiddenFor(m => profileModel.MemberProperties[i].Alias)
<br />
}
<button>Save</button>
</fieldset>
}
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Controllers
@{
var profileModel = Members.GetCurrentMemberProfileModel();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco_client/ui/jquery.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.min.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.unobtrusive.min.js");
var success = TempData["ProfileUpdateSuccess"] != null;
}
@*NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed*@
@Html.RenderJsHere()
@if (Members.IsLoggedIn() && profileModel != null)
{
if (success)
{
@* This message will show if RedirectOnSucces is set to false (default) *@
<p>Profile updated</p>
}
using (Html.BeginUmbracoForm<UmbProfileController>("HandleUpdateProfile"))
{
<fieldset>
<legend>Edit profile</legend>
@Html.ValidationSummary("profileModel", true)
@Html.LabelFor(m => profileModel.Name)
@Html.TextBoxFor(m => profileModel.Name)
@Html.ValidationMessageFor(m => profileModel.Name)
<br />
@Html.LabelFor(m => profileModel.Email)
@Html.TextBoxFor(m => profileModel.Email)
@Html.ValidationMessageFor(m => profileModel.Email)
<br />
@for (var i = 0; i < profileModel.MemberProperties.Count; i++)
{
@Html.LabelFor(m => profileModel.MemberProperties[i].Value, profileModel.MemberProperties[i].Name)
@*
By default this will render a textbox but if you want to change the editor template for this property you can
easily change it. For example, if you wanted to render a custom editor for this field called "MyEditor" you would
create a file at ~/Views/Shared/EditorTemplates/MyEditor.cshtml", then you will change the next line of code to
render your specific editor template like:
@Html.EditorFor(m => profileModel.MemberProperties[i].Value, "MyEditor")
*@
@Html.EditorFor(m => profileModel.MemberProperties[i].Value)
@Html.HiddenFor(m => profileModel.MemberProperties[i].Alias)
<br />
}
<button>Save</button>
</fieldset>
}
}

View File

@@ -0,0 +1 @@
@inherits Umbraco.Web.Mvc.UmbracoViewPage<dynamic>

View File

@@ -1 +1 @@
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@inherits Umbraco.Web.Macros.PartialViewMacroPage

View File

@@ -1,50 +1,47 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to display a gallery of images from the Media section.
Works with either a 'Single Media Picker' or a 'Multiple Media Picker' macro parameter (see below).
How it works:
- Confirm the macro parameter has been passed in with a value
- Loop through all the media Ids passed in (might be a single item, might be many)
- Display any individual images, as well as any folders of images
Macro Parameters To Create, for this macro to work:
Alias:mediaIds Name:Select folders and/or images Type: Multiple Media Picker
Type: (note: You can use a Single Media Picker if that's more appropriate to your needs)
*@
@{ var mediaIds = Model.MacroParameters["mediaIds"] as string; }
@if (mediaIds != null)
{
<div class="row">
@foreach (var mediaId in mediaIds.Split(','))
{
var media = Umbraco.Media(mediaId);
@* a single image *@
if (media.IsDocumentType("Image"))
{
@Render(media);
}
@* a folder with images under it *@
foreach (var image in media.Children())
{
@Render(image);
}
}
</div>
}
@helper Render(IPublishedContent item)
{
<div class="col-xs-6 col-md-3">
<a href="@item.Url" class="thumbnail">
<img src="@item.GetCropUrl(width:200, height:200)" alt="@item.Name" />
</a>
</div>
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to display a gallery of images from the Media section.
Works with either a 'Single Media Picker' or a 'Multiple Media Picker' macro parameter (see below).
How it works:
- Confirm the macro parameter has been passed in with a value
- Loop through all the media Ids passed in (might be a single item, might be many)
- Display any individual images, as well as any folders of images
Macro Parameters To Create, for this macro to work:
Alias:mediaIds Name:Select folders and/or images Type: Multiple Media Picker
Type: (note: You can use a Single Media Picker if that's more appropriate to your needs)
*@
@{ var mediaIds = Model.MacroParameters["mediaIds"] as string; }
@if (mediaIds != null)
{
<div class="row">
@foreach (var mediaId in mediaIds.Split(','))
{
var media = Umbraco.TypedMedia(mediaId);
@* a single image *@
if (media.DocumentTypeAlias == "Image")
{
@Render(media as Image);
}
@* a folder with images under it *@
foreach (var image in media.Children<Image>())
{
@Render(image);
}
}
</div>
}
@helper Render(Image item)
{
<div class="col-xs-6 col-md-3">
<a href="@item.Url" class="thumbnail">
<img src="@item.GetCropUrl(width:200, height:200)" alt="@item.Name" />
</a>
</div>
}

View File

@@ -1,26 +1,25 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of parents of the current page using an unordered HTML list.
How it works:
- It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
@{ var selection = Model.Content.Ancestors().ToArray(); }
@if (selection.Length > 0)
{
<ul>
@* For each page in the ancestors collection which have been ordered by Level (so we start with the highest top node first) *@
@foreach (var item in selection.OrderBy(x => x.Level))
{
<li><a href="@item.Url">@item.Name</a> &raquo;</li>
}
@* Display the current page as the last item in the list *@
<li>@Model.Content.Name</li>
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of parents of the current page using an unordered HTML list.
How it works:
- It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
@{ var selection = Model.Content.Ancestors().ToArray(); }
@if (selection.Length > 0)
{
<ul>
@* For each page in the ancestors collection which have been ordered by Level (so we start with the highest top node first) *@
@foreach (var item in selection.OrderBy(x => x.Level))
{
<li><a href="@item.Url">@item.Name</a> &raquo;</li>
}
@* Display the current page as the last item in the list *@
<li>@Model.Content.Name</li>
</ul>
}

View File

@@ -1,33 +1,33 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to list all child pages under a specific page in the content tree.
How it works:
- Confirm the startNodeId macro parameter has been passed in with a value
- Loop through all child pages
- Display a list of link to those pages, sorted by the value of the propertyAlias
Macro Parameters To Create, for this macro to work:
Alias:startNodeId Name:Select starting page Type:Content Picker
*@
@{ var startNodeId = Model.MacroParameters["startNodeId"]; }
@if (startNodeId != null)
{
@* Get the starting page *@
var startNode = Umbraco.Content(startNodeId);
var selection = startNode.Children.Where(x => x.IsVisible()).ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to list all child pages under a specific page in the content tree.
How it works:
- Confirm the startNodeId macro parameter has been passed in with a value
- Loop through all child pages
- Display a list of link to those pages, sorted by the value of the propertyAlias
Macro Parameters To Create, for this macro to work:
Alias:startNodeId Name:Select starting page Type:Content Picker
*@
@{ var startNodeId = Model.MacroParameters["startNodeId"]; }
@if (startNodeId != null)
{
@* Get the starting page *@
var startNode = Umbraco.TypedContent(startNodeId);
var selection = startNode.Children.Where(x => x.IsVisible()).ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
}

View File

@@ -1,24 +1,24 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}

View File

@@ -1,23 +1,23 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then uses the OrderByDescending() method, which takes the property to sort. In this case the page's creation date.
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderByDescending(x => x.CreateDate).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then uses the OrderByDescending() method, which takes the property to sort. In this case the page's creation date.
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderByDescending(x => x.CreateDate).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}

View File

@@ -1,23 +1,23 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then uses the OrderBy() method, which takes the property to sort. In this case, the page's name.
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.Name).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@*
This snippet makes a list of links to the of children of the current page using an unordered HTML list.
How it works:
- It uses the Children method to get all child pages
- It then uses the OrderBy() method, which takes the property to sort. In this case, the page's name.
- It then generates links so the visitor can go to each page
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.Name).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}

View File

@@ -1,31 +1,30 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to list all child pages with a specific property, sorted by the value of that property.
How it works:
- Confirm the propertyAlias macro parameter has been passed in with a value
- Loop through all child pages that have the propertyAlias
- Display a list of link to those pages, sorted by the value of the propertyAlias
Macro Parameters To Create, for this macro to work:
Alias:propertyAlias Name:Property Alias Type:Textbox
*@
@{ var propertyAlias = Model.MacroParameters["propertyAlias"]; }
@if (propertyAlias != null)
{
var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.GetPropertyValue(propertyAlias.ToString())).ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to list all child pages with a specific property, sorted by the value of that property.
How it works:
- Confirm the propertyAlias macro parameter has been passed in with a value
- Loop through all child pages that have the propertyAlias
- Display a list of link to those pages, sorted by the value of the propertyAlias
Macro Parameters To Create, for this macro to work:
Alias:propertyAlias Name:Property Alias Type:Textbox
*@
@{ var propertyAlias = Model.MacroParameters["propertyAlias"]; }
@if (propertyAlias != null)
{
var selection = Model.Content.Children.Where(x => x.IsVisible()).OrderBy(x => x.GetPropertyValue(propertyAlias.ToString())).ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
}

View File

@@ -1,22 +1,23 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet shows how simple it is to fetch only children of a certain Document Type.
Be sure to change "IPublishedContent" below to match your needs, such as "TextPage" or "NewsItem".
(You can find the alias of your Document Type by editing it in the Settings section)
*@
@{ var selection = Model.Content.Children<IPublishedContent>().Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}
@using Umbraco.Core.Models
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet shows how simple it is to fetch only children of a certain Document Type.
Be sure to change "IPublishedContent" below to match your needs, such as "TextPage" or "NewsItem".
(You can find the alias of your Document Type by editing it in the Settings section)
*@
@{ var selection = Model.Content.Children<IPublishedContent>().Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li><a href="@item.Url">@item.Name</a></li>
}
</ul>
}

View File

@@ -1,68 +1,69 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet creates links for every single page (no matter how deep) below
the page currently being viewed by the website visitor, displayed as nested unordered HTML lists.
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
@* Ensure that the Current Page has children *@
@if (selection.Length > 0)
{
@* Get the first page in the children, where the property umbracoNaviHide is not True *@
var naviLevel = selection[0].Level;
@* Add in level for a CSS hook *@
<ul class="level-@(naviLevel)">
@* Loop through the selection *@
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
@* if this child page has any children, where the property umbracoNaviHide is not True *@
@{
var children = item.Children.Where(x => x.IsVisible()).ToArray();
if (children.Length > 0)
{
@* Call our helper to display the children *@
@ChildPages(children)
}
}
</li>
}
</ul>
}
@helper ChildPages(IPublishedContent[] selection)
{
@* Ensure that we have a collection of pages *@
if (selection.Length > 0)
{
@* Get the first page in pages and get the level *@
var naviLevel = selection[0].Level;
@* Add in level for a CSS hook *@
<ul class="level-@(naviLevel)">
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
@* if the page has any children, where the property umbracoNaviHide is not True *@
@{
var children = item.Children.Where(x => x.IsVisible()).ToArray();
if (children.Length > 0)
{
@* Recurse and call our helper to display the children *@
@ChildPages(children)
}
}
</li>
}
</ul>
}
}
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@using Umbraco.Core.Models
@using Umbraco.Web
@*
This snippet creates links for every single page (no matter how deep) below
the page currently being viewed by the website visitor, displayed as nested unordered HTML lists.
*@
@{ var selection = Model.Content.Children.Where(x => x.IsVisible()).ToArray(); }
@* Ensure that the Current Page has children *@
@if (selection.Length > 0)
{
@* Get the first page in the children, where the property umbracoNaviHide is not True *@
var naviLevel = selection[0].Level;
@* Add in level for a CSS hook *@
<ul class="level-@(naviLevel)">
@* Loop through the selection *@
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
@* if this child page has any children, where the property umbracoNaviHide is not True *@
@{
var children = item.Children.Where(x => x.IsVisible()).ToArray();
if (children.Length > 0)
{
@* Call our helper to display the children *@
@ChildPages(children)
}
}
</li>
}
</ul>
}
@helper ChildPages(IPublishedContent[] selection)
{
@* Ensure that we have a collection of pages *@
if (selection.Length > 0)
{
@* Get the first page in pages and get the level *@
var naviLevel = selection[0].Level;
@* Add in level for a CSS hook *@
<ul class="level-@(naviLevel)">
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
@* if the page has any children, where the property umbracoNaviHide is not True *@
@{
var children = item.Children.Where(x => x.IsVisible()).ToArray();
if (children.Length > 0)
{
@* Recurse and call our helper to display the children *@
@ChildPages(children)
}
}
</li>
}
</ul>
}
}

View File

@@ -1,34 +1,33 @@
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to display a series of images from a media folder.
How it works:
- Confirm the macro parameter has been passed in with a value
- Loop through all the media Ids passed in (might be a single item, might be many)
- Display any individual images, as well as any folders of images
Macro Parameters To Create, for this macro to work:
Alias:mediaId Name:Select folder with images Type:Single Media Picker
*@
@{ var mediaId = Model.MacroParameters["mediaId"]; }
@if (mediaId != null)
{
@* Get the media item associated with the id passed in *@
var media = Umbraco.Media(mediaId);
var selection = media.Children.ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<img src="@item.Url" alt="@item.Name" />
</li>
}
</ul>
}
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
Macro to display a series of images from a media folder.
How it works:
- Confirm the macro parameter has been passed in with a value
- Loop through all the media Ids passed in (might be a single item, might be many)
- Display any individual images, as well as any folders of images
Macro Parameters To Create, for this macro to work:
Alias:mediaId Name:Select folder with images Type:Single Media Picker
*@
@{ var mediaId = Model.MacroParameters["mediaId"]; }
@if (mediaId != null)
{
@* Get the media item associated with the id passed in *@
var media = Umbraco.TypedMedia(mediaId);
var selection = media.Children<Image>().ToArray();
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<img src="@item.Url" alt="@item.Name" />
</li>
}
</ul>
}
}

View File

@@ -1,40 +1,41 @@
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Models
@using Umbraco.Web.Controllers
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
var loginModel = new LoginModel();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco/lib/jquery/jquery.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validate/jquery.validate.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js");
}
@* NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed *@
@Html.RenderJsHere()
@using (Html.BeginUmbracoForm<UmbLoginController>("HandleLogin"))
{
<fieldset>
<legend>Login</legend>
@Html.ValidationSummary("loginModel", true)
@Html.LabelFor(m => loginModel.Username)
@Html.TextBoxFor(m => loginModel.Username)
@Html.ValidationMessageFor(m => loginModel.Username)
<br />
@Html.LabelFor(m => loginModel.Password)
@Html.PasswordFor(m => loginModel.Password)
@Html.ValidationMessageFor(m => loginModel.Password)
<br />
<button>Login</button>
</fieldset>
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Models
@using Umbraco.Web.Controllers
@{
var loginModel = new LoginModel();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco_client/ui/jquery.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.min.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.unobtrusive.min.js");
}
@* NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed *@
@Html.RenderJsHere()
@using (Html.BeginUmbracoForm<UmbLoginController>("HandleLogin"))
{
<fieldset>
<legend>Login</legend>
@Html.ValidationSummary("loginModel", true)
@Html.LabelFor(m => loginModel.Username)
@Html.TextBoxFor(m => loginModel.Username)
@Html.ValidationMessageFor(m => loginModel.Username)
<br />
@Html.LabelFor(m => loginModel.Password)
@Html.PasswordFor(m => loginModel.Password)
@Html.ValidationMessageFor(m => loginModel.Password)
<br />
<button>Login</button>
</fieldset>
}

View File

@@ -1,43 +1,43 @@
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Models
@using Umbraco.Web.Controllers
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
var loginStatusModel = Members.GetCurrentLoginStatus();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco/lib/jquery/jquery.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validate/jquery.validate.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js");
var logoutModel = new PostRedirectModel();
@*
Here you can specify a redirect URL for after logging out, by default umbraco will simply
redirect to the current page. Example to redirect to the home page:
logoutModel.RedirectUrl = "/";
*@
}
@* NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed *@
@Html.RenderJsHere()
@if (loginStatusModel.IsLoggedIn)
{
<p>You are currently logged in as @loginStatusModel.Name</p>
using (Html.BeginUmbracoForm<UmbLoginStatusController>("HandleLogout"))
{
<fieldset>
<legend>Logout</legend>
<button>Logout</button>
</fieldset>
@Html.HiddenFor(m => logoutModel.RedirectUrl)
}
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Models
@using Umbraco.Web.Controllers
@{
var loginStatusModel = Members.GetCurrentLoginStatus();
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco_client/ui/jquery.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.min.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.unobtrusive.min.js");
var logoutModel = new PostRedirectModel();
@*
Here you can specify a redirect URL for after logging out, by default umbraco will simply
redirect to the current page. Example to redirect to the home page:
logoutModel.RedirectUrl = "/";
*@
}
@* NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed *@
@Html.RenderJsHere()
@if (loginStatusModel.IsLoggedIn)
{
<p>You are currently logged in as @loginStatusModel.Name</p>
using (Html.BeginUmbracoForm<UmbLoginStatusController>("HandleLogout"))
{
<fieldset>
<legend>Logout</legend>
<button>Logout</button>
</fieldset>
@Html.HiddenFor(m => logoutModel.RedirectUrl)
}
}

View File

@@ -1,25 +1,25 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet lists the items from a Multinode tree picker, using the picker's default settings.
Content Values stored as XML.
To get it working with any site's data structure, set the selection equal to the property which has the
multinode treepicker (so: replace "PropertyWithPicker" with the alias of your property).
*@
@{ var selection = Model.Content.Value<IEnumerable<IPublishedContent>>("PropertyWithPicker").ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}
@using Umbraco.Core.Models
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet lists the items from a Multinode tree picker, using the picker's default settings.
Content Values stored as XML.
To get it working with any site's data structure, set the selection equal to the property which has the
multinode treepicker (so: replace "PropertyWithPicker" with the alias of your property).
*@
@{ var selection = Model.Content.GetPropertyValue<IEnumerable<IPublishedContent>>("PropertyWithPicker").ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li>
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}

View File

@@ -1,22 +1,22 @@
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet displays a list of links of the pages immediately under the top-most page in the content tree.
This is the home page for a standard website.
It also highlights the current active page/section in the navigation with the CSS class "current".
*@
@{ var selection = Model.Content.Root().Children.Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li class="@(item.IsAncestorOrSelf(Model.Content) ? "current" : null)">
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet displays a list of links of the pages immediately under the top-most page in the content tree.
This is the home page for a standard website.
It also highlights the current active page/section in the navigation with the CSS class "current".
*@
@{ var selection = Model.Content.Site().Children.Where(x => x.IsVisible()).ToArray(); }
@if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li class="@(item.IsAncestorOrSelf(Model.Content) ? "current" : null)">
<a href="@item.Url">@item.Name</a>
</li>
}
</ul>
}

View File

@@ -1,103 +1,104 @@
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Controllers
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@{
@*
You can specify a custom member type alias in the constructor, the default is 'Member'
for example, to use 'Custom Member' you'd use this syntax:
var registerModel = Members.CreateRegistrationModel("Custom Member");
*@
var registerModel = Members.CreateRegistrationModel();
@*
Configurable here:
registerModel.RedirectUrl - Optional. What path to redirect to if registration is successful.
By default the member will be redirected to the current umbraco page
unless this is specified.
registerModel.UsernameIsEmail - the default is true
if you want the username to be different from the email
address, set this to true and add a new Username field in
the form below
@Html.LabelFor(m => registerModel.Username)
@Html.TextBoxFor(m => registerModel.Username)
@Html.ValidationMessageFor(m => registerModel.Username)
*@
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco/lib/jquery/jquery.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validate/jquery.validate.min.js");
Html.RequiresJs("/umbraco/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js");
var success = TempData["FormSuccess"] != null;
}
@*NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed*@
@Html.RenderJsHere()
@if (success)
{
@* This message will show if RedirectOnSucces is set to false (default) *@
<p>Registration succeeded.</p>
}
else
{
using (Html.BeginUmbracoForm<UmbRegisterController>("HandleRegisterMember"))
{
<fieldset>
<legend>Register Member</legend>
@Html.ValidationSummary("registerModel", true)
@Html.LabelFor(m => registerModel.Name)
@Html.TextBoxFor(m => registerModel.Name)
@Html.ValidationMessageFor(m => registerModel.Name)
<br />
@Html.LabelFor(m => registerModel.Email)
@Html.TextBoxFor(m => registerModel.Email)
@Html.ValidationMessageFor(m => registerModel.Email)
<br />
@Html.LabelFor(m => registerModel.Password)
@Html.PasswordFor(m => registerModel.Password)
@Html.ValidationMessageFor(m => registerModel.Password)
<br />
@if (registerModel.MemberProperties != null)
{
@*
It will only displays properties marked as "Member can edit" on the "Info" tab of the Member Type.
*@
for (var i = 0; i < registerModel.MemberProperties.Count; i++)
{
@Html.LabelFor(m => registerModel.MemberProperties[i].Value, registerModel.MemberProperties[i].Name)
@*
By default this will render a textbox but if you want to change the editor template for this property you can
easily change it. For example, if you wanted to render a custom editor for this field called "MyEditor" you would
create a file at ~/Views/Shared/EditorTemplates/MyEditor.cshtml", then you will change the next line of code to
render your specific editor template like:
@Html.EditorFor(m => profileModel.MemberProperties[i].Value, "MyEditor")
*@
@Html.EditorFor(m => registerModel.MemberProperties[i].Value)
@Html.HiddenFor(m => registerModel.MemberProperties[i].Alias)
<br />
}
}
@Html.HiddenFor(m => registerModel.MemberTypeAlias)
@Html.HiddenFor(m => registerModel.RedirectUrl)
@Html.HiddenFor(m => registerModel.UsernameIsEmail)
<button>Register</button>
</fieldset>
}
}
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using System.Web.Mvc.Html
@using ClientDependency.Core.Mvc
@using Umbraco.Web
@using Umbraco.Web.Controllers
@{
@*
You can specify a custom member type alias in the constructor, the default is 'Member'
for example, to use 'Custom Member' you'd use this syntax:
var registerModel = Members.CreateRegistrationModel("Custom Member");
*@
var registerModel = Members.CreateRegistrationModel();
@*
Configurable here:
registerModel.RedirectUrl - Optional. What path to redirect to if registration is successful.
By default the member will be redirected to the current umbraco page
unless this is specified.
registerModel.UsernameIsEmail - the default is true
if you want the username to be different from the email
address, set this to true and add a new Username field in
the form below
@Html.LabelFor(m => registerModel.Username)
@Html.TextBoxFor(m => registerModel.Username)
@Html.ValidationMessageFor(m => registerModel.Username)
*@
Html.EnableClientValidation();
Html.EnableUnobtrusiveJavaScript();
Html.RequiresJs("/umbraco_client/ui/jquery.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.min.js");
Html.RequiresJs("/umbraco_client/Application/JQuery/jquery.validate.unobtrusive.min.js");
var success = TempData["FormSuccess"] != null;
}
@*NOTE: This RenderJsHere code should be put on your main template page where the rest of your script tags are placed*@
@Html.RenderJsHere()
@if (success)
{
@* This message will show if RedirectOnSucces is set to false (default) *@
<p>Registration succeeded.</p>
}
else
{
using (Html.BeginUmbracoForm<UmbRegisterController>("HandleRegisterMember"))
{
<fieldset>
<legend>Register Member</legend>
@Html.ValidationSummary("registerModel", true)
@Html.LabelFor(m => registerModel.Name)
@Html.TextBoxFor(m => registerModel.Name)
@Html.ValidationMessageFor(m => registerModel.Name)
<br />
@Html.LabelFor(m => registerModel.Email)
@Html.TextBoxFor(m => registerModel.Email)
@Html.ValidationMessageFor(m => registerModel.Email)
<br />
@Html.LabelFor(m => registerModel.Password)
@Html.PasswordFor(m => registerModel.Password)
@Html.ValidationMessageFor(m => registerModel.Password)
<br />
@if (registerModel.MemberProperties != null)
{
@*
It will only displays properties marked as "Member can edit" on the "Info" tab of the Member Type.
*@
for (var i = 0; i < registerModel.MemberProperties.Count; i++)
{
@Html.LabelFor(m => registerModel.MemberProperties[i].Value, registerModel.MemberProperties[i].Name)
@*
By default this will render a textbox but if you want to change the editor template for this property you can
easily change it. For example, if you wanted to render a custom editor for this field called "MyEditor" you would
create a file at ~/Views/Shared/EditorTemplates/MyEditor.cshtml", then you will change the next line of code to
render your specific editor template like:
@Html.EditorFor(m => profileModel.MemberProperties[i].Value, "MyEditor")
*@
@Html.EditorFor(m => registerModel.MemberProperties[i].Value)
@Html.HiddenFor(m => registerModel.MemberProperties[i].Alias)
<br />
}
}
@Html.HiddenFor(m => registerModel.MemberTypeAlias)
@Html.HiddenFor(m => registerModel.RedirectUrl)
@Html.HiddenFor(m => registerModel.UsernameIsEmail)
<button>Register</button>
</fieldset>
}
}

View File

@@ -1,43 +1,44 @@
@using Umbraco.Core.Models.PublishedContent
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links of all visible pages of the site, as nested unordered HTML lists.
How it works:
- It uses a custom Razor helper called Traverse() to select and display the markup and links.
*@
@{ var selection = Model.Content.Root(); }
<div class="sitemap">
@* Render the sitemap by passing the root node to the traverse helper, below *@
@Traverse(selection)
</div>
@* Helper method to traverse through all descendants *@
@helper Traverse(IPublishedContent node)
{
@* Update the level to reflect how deep you want the sitemap to go *@
const int maxLevelForSitemap = 4;
@* Select visible children *@
var selection = node.Children.Where(x => x.IsVisible() && x.Level <= maxLevelForSitemap).ToArray();
@* If any items are returned, render a list *@
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li class="level-@item.Level">
<a href="@item.Url">@item.Name</a>
@* Run the traverse helper again for any child pages *@
@Traverse(item)
</li>
}
</ul>
}
}
@using Umbraco.Core.Models
@using Umbraco.Web
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@*
This snippet makes a list of links of all visible pages of the site, as nested unordered HTML lists.
How it works:
- It uses a custom Razor helper called Traverse() to select and display the markup and links.
*@
@{ var selection = Model.Content.Site(); }
<div class="sitemap">
@* Render the sitemap by passing the root node to the traverse helper, below *@
@Traverse(selection)
</div>
@* Helper method to traverse through all descendants *@
@helper Traverse(IPublishedContent node)
{
@* Update the level to reflect how deep you want the sitemap to go *@
const int maxLevelForSitemap = 4;
@* Select visible children *@
var selection = node.Children.Where(x => x.IsVisible() && x.Level <= maxLevelForSitemap).ToArray();
@* If any items are returned, render a list *@
if (selection.Length > 0)
{
<ul>
@foreach (var item in selection)
{
<li class="level-@item.Level">
<a href="@item.Url">@item.Name</a>
@* Run the traverse helper again for any child pages *@
@Traverse(item)
</li>
}
</ul>
}
}

View File

@@ -11,8 +11,7 @@
@using Umbraco.Web
@using Umbraco.Web.Editors
@using umbraco
@using Umbraco.Core.Configuration
@inherits System.Web.Mvc.WebViewPage<Umbraco.Web.Editors.BackOfficeModel>
@inherits System.Web.Mvc.WebViewPage
@{
Layout = null;
@@ -26,14 +25,15 @@
<html lang="en">
<head>
<base href="@Model.GlobalSettings.Path.EnsureEndsWith('/')" />
<base href="@GlobalSettings.Path.EnsureEndsWith('/')" />
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Umbraco</title>
@Html.RenderCssHere(
new BasicPath("Umbraco", IOHelper.ResolveUrl(SystemDirectories.Umbraco)))
new BasicPath("Umbraco", IOHelper.ResolveUrl(SystemDirectories.Umbraco)),
new BasicPath("UmbracoClient", IOHelper.ResolveUrl(SystemDirectories.UmbracoClient)))
@*Because we're lazy loading angular js, the embedded cloak style will not be loaded initially, but we need it*@
<style>
@@ -45,19 +45,21 @@
</head>
<body id="umbracoMainPageBody" ng-controller="Umbraco.AuthorizeUpgradeController" class="login-only">
<umb-login on-login="loginAndRedirect()"></umb-login>
<div data-backdrop="false" class="modal hide login-overlay" aria-hidden="false" style="display: block;">
<div ng-include="'views/common/dialogs/login.html'"></div>
</div>
<umb-notifications></umb-notifications>
@{
var externalLoginUrl = Url.Action("ExternalLogin", "BackOffice", new
{
area = ViewBag.UmbracoPath,
area = ViewBag.UmbracoPath,
//Custom redirect URL since we don't want to just redirect to the back office since this is for authing upgrades
redirectUrl = Url.Action("AuthorizeUpgrade", "BackOffice")
});
}
@Html.BareMinimumServerVariablesScript(Url, externalLoginUrl, Model.Features, Model.GlobalSettings)
@Html.BareMinimumServerVariablesScript(Url, externalLoginUrl)
<script type="text/javascript">
document.angularReady = function (app) {
@@ -69,7 +71,7 @@
</script>
@*And finally we can load in our angular app*@
<script type="text/javascript" src="lib/lazyload-js/lazyload.min.js"></script>
<script type="text/javascript" src="lib/rgrove-lazyload/lazyload.js"></script>
<script type="text/javascript" src="@Url.GetUrlWithCacheBust("Application", "BackOffice")"></script>
</body>

View File

@@ -1,141 +0,0 @@
@using Umbraco.Core
@using ClientDependency.Core
@using ClientDependency.Core.Mvc
@using Umbraco.Core.IO
@using Umbraco.Web
@using Umbraco.Core.Configuration
@inherits WebViewPage<Umbraco.Web.Editors.BackOfficeModel>
@{
var isDebug = false;
if (Request.RawUrl.IndexOf('?') >= 0)
{
var parsed = HttpUtility.ParseQueryString(Request.RawUrl.Split('?')[1]);
var attempt = parsed["umbDebug"].TryConvertTo<bool>();
if (attempt && attempt.Result)
{
isDebug = true;
}
}
Html
.RequiresCss("assets/css/umbraco.css", "Umbraco")
.RequiresCss("lib/bootstrap-social/bootstrap-social.css", "Umbraco")
.RequiresCss("lib/font-awesome/css/font-awesome.min.css", "Umbraco");
}
<!DOCTYPE html>
<html lang="en">
<head>
<base href="@Model.GlobalSettings.Path.EnsureEndsWith('/')" />
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="robots" content="noindex, nofollow">
<meta name="pinterest" content="nopin" />
<title ng-bind="$root.locationTitle">Umbraco</title>
@Html.RenderCssHere(
new BasicPath("Umbraco", IOHelper.ResolveUrl(SystemDirectories.Umbraco)))
</head>
<body ng-class="{'touch':touchDevice, 'emptySection':emptySection, 'umb-drawer-is-visible':drawer.show, 'umb-tour-is-visible': tour.show}" ng-controller="Umbraco.MainController" id="umbracoMainPageBody">
<noscript>
<div style="margin: 10px;">
<h3><img src="assets/img/application/logo.png" alt="Umbraco logo" style="vertical-align: text-bottom;" /> Umbraco</h3>
<p>For full functionality of Umbraco CMS it is necessary to enable JavaScript.</p>
<p>Here are the <a href="https://www.enable-javascript.com/" target="_blank" style="text-decoration: underline;">instructions how to enable JavaScript in your web browser</a>.</p>
</div>
</noscript>
<div ng-hide="!authenticated" ng-cloak>
<div style="display: none;" id="mainwrapper" class="clearfix">
<umb-app-header></umb-app-header>
<div class="umb-app-content">
<umb-navigation></umb-navigation>
<section id="contentwrapper">
<div id="contentcolumn">
<div class="umb-editor" ng-view></div>
<div class="umb-editor__overlay" ng-if="editors.length > 0"></div>
<umb-editors></umb-editors>
</div>
</section>
</div>
<umb-tour
ng-if="tour.show"
model="tour">
</umb-tour>
<umb-notifications></umb-notifications>
</div>
<!-- help dialog controller by the help button - this also forces the backoffice UI to shift 400px -->
<umb-drawer data-element="drawer" ng-if="drawer.show" model="drawer.model" view="drawer.view"></umb-drawer>
<umb-search ng-if="search.show" on-close="closeSearch()"></umb-search>
</div>
<umb-backdrop ng-if="backdrop.show"
backdrop-opacity="backdrop.opacity"
highlight-element="backdrop.element"
highlight-prevent-click="backdrop.elementPreventClick"
disable-events-on-click="backdrop.disableEventsOnClick">
</umb-backdrop>
<umb-overlay ng-if="overlay.show"
model="overlay"
position="{{overlay.position}}"
view="overlay.view"
parent-scope="overlay.parentScope">
</umb-overlay>
<umb-overlay ng-if="ysodOverlay.show"
model="ysodOverlay"
position="right"
view="ysodOverlay.view">
</umb-overlay>
<umb-login
ng-if="login.show"
on-login="hideLoginScreen()">
</umb-login>
@Html.BareMinimumServerVariablesScript(Url, Url.Action("ExternalLogin", "BackOffice", new { area = ViewBag.UmbracoPath }), Model.Features, UmbracoConfig.For.GlobalSettings())
<script>
document.angularReady = function(app) {
@Html.AngularValueExternalLoginInfoScript((IEnumerable<string>)ViewBag.ExternalSignInError)
@Html.AngularValueResetPasswordCodeInfoScript(ViewData["PasswordResetCode"])
//required for the noscript trick
document.getElementById("mainwrapper").style.display = "inherit";
}
</script>
<script src="lib/lazyload-js/lazyload.min.js"></script>
<script src="@Url.GetUrlWithCacheBust("Application", "BackOffice")"></script>
@if (isDebug)
{
@Html.RenderProfiler()
}
</body>
</html>

View File

@@ -0,0 +1,57 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.background">
<div class="box-slider">
<div colorpicker ng-model="item.values.color"></div>
</div>
<div class="box-slider">
<div class="imagePickerPreview" ng-click="open(item.values)" style="background-image:{{ item.values.imageorpattern }}">
<i ng-if="item.values.imageorpattern == ''" class="icon icon-picture"></i>
<i ng-if="item.values.imageorpattern != ''" class="icon icon-delete" ng-click="item.values.imageorpattern = ''"></i>
</div>
</div>
</div>
<script type="text/ng-template" id="mediaPickerModal.html">
<div ng-controller="canvasdesigner.mediaPickerModal">
<div class="modal-header bodyCanvasdesignerImagePicker ng-scope">
<ul class="breadcrumb">
<li ng-if="startNodeId == -1">
<a href="" ng-click="gotoFolder()">Media</a>
</li>
<!-- ngRepeat: item in path -->
<li ng-repeat="item in currentPath" class="ng-scope">
/ <a ng-if="currentFolder.id == item.id" href="" ng-class="{disabled:currentFolder.id == item.id}">{{ item.name }}</a>
<a ng-if="currentFolder.id != item.id" ng-click="gotoFolder(item)">{{ item.name }}</a>
</li>
</ul>
</div>
<div class="modal-body bodyCanvasdesignerImagePicker">
<ul class="canvasdesignerImagePicker">
<li>
<ul class="media-items">
<li ng-repeat="child in currentFolder.children | orderBy:'isFolder':true">
<div ng-if="!child.isFolder" class="media-preview" ng-class="{selected:selectedMedia.id == child.id}" ng-click="selectMedia(child)" style="background-image: url({{ child.thumbnail }})"></div>
<div ng-if="child.isFolder" class="media-preview" ng-click="selectMedia(child)">
<i class="icon icon-folder folder"><p class="folder-name">{{child.name}}</p></i>
</div>
</li>
</ul>
</li>
</ul>
</div>
<div class="right">
<a class="btn" href="#" ng-click="cancelAndClose()">Cancel</a>
<a class="btn btn-success" href="#" ng-click="submitAndClose()">Done</a>
</div>
</div>
</script>

View File

@@ -0,0 +1,20 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.border" class="bordereditor">
<div class="box-slider">
<ul class="box-preview">
<li ng-repeat="border in borderList" class="border-{{border}}" ng-class="{selected: selectedBorder.name == border}" ng-click="setselectedBorder(border)"></li>
</ul>
</div>
<div class="box-slider" ng-repeat="border in borderList" ng-show="selectedBorder.name == border">
<div colorpicker ng-model="item.values[(border !== 'all' ? border : '') + 'bordercolor']"></div>
<select class="borderStyleSelect" ng-model="selectedBorder.type" ng-options="bordertype for bordertype in bordertypes"></select>
<!--<i ng-if="selectedBorder.color != ''" ng-click="selectedBorder.color= ''" class="icon icon-delete colorPickerDelete"></i>-->
</div>
<div class="box-slider">
<div ui-slider min="0" max="40" step="1" ng-model="selectedBorder.size"></div>
</div>
</div>

View File

@@ -0,0 +1,4 @@
@inherits System.Web.Mvc.WebViewPage
<div class="box-slider">
<div colorpicker ng-model="item.values.color"></div>
</div>

View File

@@ -0,0 +1,34 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.googlefontpicker">
<div class="box-slider">
<div class="fontFamilyPickerPreview" ng-click="open(item.values)" ng-style="setStyleVariant()">
<span>Aa</span>
{{ item.values.fontFamily }}
<i ng-if="item.values.fontFamily != ''" ng-click="item.values.fontFamily = ''" class="icon icon-delete fontPickerDelete"></i>
</div>
</div>
</div>
<script type="text/ng-template" id="googlefontdialog.html">
<div ng-controller="googlefontdialog.controller">
<div class="modal-header canvasdesigner-fontfamilypicker">
<select class="font-list" ng-model="selectedFont" ng-change="showFontPreview(selectedFont)" ng-options="font as font.fontFamily group by font.fontType for font in fonts"></select>
<select class="variant-list" ng-model="selectedFont.variant" ng-change="showFontPreview(selectedFont,selectedFont.variant)" ng-options="variant for variant in selectedFont.variants" />
</div>
<div class="modal-body canvasdesigner-fontfamilypicker">
<span class="show" ng-style="setStyleVariant()">Aa Bb Cc 1 2 3 4&hellip; <br />The quick brown fox jumps over the lazy dog&hellip;</span>
</div>
<div class="right">
<a class="btn" href="#" ng-click="cancelAndClose()">Cancel</a>
<a class="btn btn-success" href="#" ng-click="submitAndClose()">Done</a>
</div>
</div>
</script>

View File

@@ -0,0 +1,8 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.gridRow">
<div class="box-slider">
<input type="checkbox" ng-model="item.values.fullsize" /><label>Full size</label>
</div>
</div>

View File

@@ -1,30 +1,18 @@
@using Umbraco.Core
@using ClientDependency.Core
@using ClientDependency.Core.Mvc
@using Umbraco.Core.IO
@using Umbraco.Web
@using Umbraco.Core.Configuration
@inherits System.Web.Mvc.WebViewPage<Umbraco.Web.Editors.BackOfficePreviewModel>
@using System.Web.Mvc.Html
@inherits System.Web.Mvc.WebViewPage<Umbraco.Web.Models.ContentEditing.BackOfficePreview>
@{
var disableDevicePreview = Model.DisableDevicePreview.ToString().ToLowerInvariant();
Html
.RequiresCss("assets/css/canvasdesigner.css", "Umbraco");
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Umbraco Preview</title>
<title>Umbraco Canvas Designer</title>
<link href="../assets/css/canvasdesigner.css" type="text/css" rel="stylesheet" />
<link href="../lib/spectrum/spectrum.css" type="text/css" rel="stylesheet" />
<link href="../lib/jquery-ui/jquery-ui-1.10.4.custom.min.css" type="text/css" rel="stylesheet" />
<meta name="robots" content="noindex, nofollow">
<meta name="pinterest" content="nopin" />
@Html.RenderCssHere(
new BasicPath("Umbraco", IOHelper.ResolveUrl(SystemDirectories.Umbraco)))
</head>
<body id="canvasdesignerPanel" ng-mouseover="outlinePositionHide()" ng-controller="previewController">
<body id="canvasdesignerPanel" ng-mouseover="outlinePositionHide()" ng-class="{ leftOpen: (showStyleEditor || showPalettePicker) && !showDevicesPreview }" ng-controller="Umbraco.canvasdesignerController">
<div class="wait" ng-show="!frameLoaded"></div>
@if (string.IsNullOrWhiteSpace(Model.PreviewExtendedHeaderView) == false)
@@ -33,9 +21,9 @@
}
<div id="demo-iframe-wrapper" class="{{previewDevice.css}}">
<preview-i-frame src="pageUrl" on-loaded="onFrameLoaded(iframe)"></preview-i-frame>
<iframe id="resultFrame" ng-src="{{pageUrl}}" frameborder="0" iframe-is-loaded></iframe>
</div>
<div class="canvasdesigner" ng-init="showDevicesPreview = true; showDevices = !@(disableDevicePreview);" ng-mouseenter="positionSelectedHide()">
<div class="canvasdesigner" ng-init="showDevicesPreview = true; showDevices = !@(disableDevicePreview); showPalettePicker = true" ng-mouseenter="positionSelectedHide()">
<div class="fix-left-menu selected">
<div class="avatar">
<img ng-src="../assets/img/application/logo.png"
@@ -43,19 +31,121 @@
../assets/img/application/logo@3x.png 3x" />
</div>
<ul class="sections" ng-class="{selected: showDevicesPreview && showDevices}">
<li ng-repeat="device in devices" ng-class="{ current:previewDevice==device }">
<a href="" ng-click="updatePreviewDevice(device)"><i class="icon {{device.icon}}" title="{{device.title}}"></i><span></span></a>
<li ng-repeat="device in devices" ng-class="{ current:previewDevice==device }" ng-click="updatePreviewDevice(device)">
<a href="#"><i class="icon {{device.icon}}" title="{{device.title}}"></i><span></span></a>
</li>
<li>
<a href="" ng-click="exitPreview()" title="Exit Preview"><i class="icon icon-wrong"></i><span> </span></a>
<li ng-click="closePreviewDevice()" ng-if="enableCanvasdesigner > 0">
<a href="" class="more-options">
<i></i>
<i></i>
<i></i>
</a>
</li>
<li ng-click="exitPreview()">
<a href="#" title="Exit Preview"><i class="icon icon-wrong"></i><span> </span></a>
</li>
</ul>
<ul class="sections" ng-class="{selected: !showDevicesPreview}" ng-if="enableCanvasdesigner > 0">
<li ng-click="openPreviewDevice()">
<a href="#"><i class="icon {{previewDevice.icon}}"></i><span>Preview</span></a>
</li>
<li ng-click="openPalettePicker()" ng-class=" { current:showPalettePicker }">
<a href="#"><i class="icon icon-palette"></i><span>Palette</span></a>
</li>
<li ng-click="openStyleEditor()" ng-class=" { current:showStyleEditor }">
<a href="#"><i class="icon icon-paint-roller"></i><span>UI Designer</span></a>
</li>
</ul>
</div>
<div class="main-panel" ng-class="{selected: !showDevicesPreview && ( showPalettePicker || showStyleEditor )}">
<div class="header">
<h3>Palette Style</h3>
</div>
<div class="content">
<ul class="samples">
<li ng-repeat="palette in canvasdesignerPalette">
<a href="#" ng-click="refreshCanvasdesignerByPalette(palette)">
<h4>{{palette.name}}</h4>
<ul class="samples">
<li style="background-color:{{palette.color1}}"></li>
<li style="background-color:{{palette.color2}}"></li>
<li style="background-color:{{palette.color3}}"></li>
<li style="background-color:{{palette.color4}}"></li>
<li style="background-color:{{palette.color5}}"></li>
</ul>
</a>
</li>
</ul>
</div>
<div class="btn-group">
<a class="btn btn-success" ng-click="saveStyle()">Save Style</a>
<a class="btn btn-success dropdown-toggle" ng-click="opendropdown = !opendropdown">
<span class="caret"></span>
</a>
<ul class="dropdown-menu" ng-init="opendropdown = false" ng-show="opendropdown">
<li><a ng-click="createStyle();opendropdown = false">Create Page Style</a></li>
<li><a ng-click="deleteCanvasdesigner();opendropdown = false">Reset page style</a></li>
<li><a ng-click="makePreset();opendropdown = false">Make preset</a></li>
</ul>
</div>
</div>
<div class="main-panel" ng-class="{selected: !showDevicesPreview && showStyleEditor}">
<div ng-show="!currentSelected">
<div class="header">
<h3>Select</h3>
</div>
<div class="content">
<ul class="samples">
<li ng-repeat="configItem in canvasdesignerModel.configs"
ng-mousemove="refreshOutlinePosition(configItem)"
ng-class="{hover: configItem.highlighted == true}"
ng-mouseenter="setCurrentHighlighted(configItem)"
ng-mouseleave="configItem.highlighted = false"
ng-click="setCurrentSelected(configItem)">
{{configItem.name}}
</li>
</ul>
</div>
</div>
<div ng-repeat="configItem in canvasdesignerModel.configs" ng-show="currentSelected && currentSelected.name.toLowerCase() == configItem.name.toLowerCase()
&& currentSelected.schema.toLowerCase() == configItem.schema.toLowerCase()" on-finish-render-filters>
<div class="header">
<h3><i class="icon icon-list" ng-click="outlineSelectedHide()"></i> {{configItem.name}}</h3>
</div>
<div class="content">
<div class="editor-category" ng-repeat="category in getCategories(configItem)" ng-show="hasEditor(configItem.editors, category)">
<h4 class="panel-title" ng-click="setSelectedCategory(category)">
{{category}}
<i class="icon icon-remove small right" ng-show="categoriesVisibility[category] === true"></i>
<i class="icon icon-add small right" ng-hide="categoriesVisibility[category] === true"></i>
</h4>
<div class="canvasdesigner-panel-container" ng-show="categoriesVisibility[category] === true">
<div class="canvasdesigner-panel-property" ng-repeat="item in configItem.editors" ng-show="item.category == category">
<h5>{{item.name}} <i class="icon icon-help-alt"></i></h5>
<div ng-include="'../preview/editors/' + item.type + '.html'"></div>
</div>
</div>
</div>
</div>
</div>
<div class="btn-group">
<a class="btn btn-success" ng-click="saveStyle()">Save Style</a>
<a class="btn btn-success dropdown-toggle" ng-click="opendropdown = !opendropdown">
<span class="caret"></span>
</a>
<ul class="dropdown-menu" ng-init="opendropdown = false" ng-show="opendropdown">
<li><a ng-click="createStyle();opendropdown = false">Create Page Style</a></li>
<li><a ng-click="deleteCanvasdesigner();opendropdown = false">Reset page style</a></li>
<li><a ng-click="makePreset();opendropdown = false">Make preset</a></li>
</ul>
</div>
</div>
<div class="float-panel"></div>
</div>
<script src="../lib/lazyload-js/lazyload.min.js"></script>
<script src="@Url.GetUrlWithCacheBust("Application", "Preview")"></script>
<div id="speechbubble">
<p>Styles saved and published</p>
</div>
<script src="../lib/rgrove-lazyload/lazyload.js"></script>
<script src="../js/canvasdesigner.loader.js"></script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.layout">
<div class="box-slider">
<input type="radio" ng-model="item.values.layout" value="box"> Box
<input type="radio" ng-model="item.values.layout" value="wide"> Wide
<input type="radio" ng-model="item.values.layout" value="full"> Full
</div>
</div>

View File

@@ -0,0 +1,14 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.margin">
<div class="box-slider">
<ul class="box-preview">
<li ng-repeat="margin in marginList" class="border-{{margin}}" ng-class="{selected: selectedmargin.name == margin}" ng-click="setSelectedmargin(margin)"></li>
</ul>
</div>
<div class="box-slider">
<div ui-slider min="0" max="400" step="1" ng-model="selectedmargin.value"></div>
</div>
</div>

View File

@@ -0,0 +1,14 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.padding">
<div class="box-slider">
<ul class="box-preview">
<li ng-repeat="padding in paddingList" class="border-{{padding}}" ng-class="{selected: selectedpadding.name == padding}" ng-click="setSelectedpadding(padding)"></li>
</ul>
</div>
<div class="box-slider">
<div ui-slider min="0" max="400" step="1" ng-model="selectedpadding.value"></div>
</div>
</div>

View File

@@ -0,0 +1,21 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.radius">
<div class="box-slider">
<ul class="box-preview">
<li ng-repeat="radius in radiusList" ng-class="{selected: selectedradius.name == radius}" ng-click="setSelectedradius(radius)">
<span ng-show="radius == 'topleft' || radius == 'all'" class="radius-top-left"></span>
<span ng-show="radius == 'topright' || radius == 'all'" class="radius-top-right"></span>
<span ng-show="radius == 'bottomleft' || radius == 'all'" class="radius-bottom-left"></span>
<span ng-show="radius == 'bottomright' || radius == 'all'" class="radius-bottom-right"></span>
</li>
</ul>
</div>
<div class="box-slider">
<div ui-slider min="0" max="40" step="1" ng-model="selectedradius.value"></div>
</div>
</div>

View File

@@ -0,0 +1,8 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.shadow">
<div class="box-slider">
<div ui-slider min="0" max="100" step="1" ng-model="item.values.shadow"></div>
</div>
</div>

View File

@@ -0,0 +1,8 @@
@inherits System.Web.Mvc.WebViewPage
<div ng-controller="Umbraco.canvasdesigner.slider">
<div class="box-slider">
<div ui-slider min="{{item.min}}" max="{{item.max}}" step="1" ng-model="item.values.slider"></div>
</div>
</div>

View File

@@ -9,20 +9,13 @@
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Umbraco.Web" />
<add namespace="Umbraco.Core" />
<add namespace="Umbraco.Core.Models" />
<add namespace="Umbraco.Core.Models.PublishedContent" />
<add namespace="Umbraco.Web.Mvc" />
<add namespace="Examine" />
<add namespace="Umbraco.Web.PublishedModels" />
</namespaces>
</pages>
</system.web.webPages.razor>
@@ -34,15 +27,14 @@
<system.webServer>
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*.cshtml" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
<system.web>
<compilation>
<assemblies>
<add assembly="System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
</compilation>
</system.web>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<createUI>
<nodeType alias="initmacros">
<header>Macro</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="macroTasks" />
</tasks>
</nodeType>
<nodeType alias="macros">
<header>Macro</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="macroTasks" />
<delete assembly="Umbraco.Web" type="macroTasks" />
</tasks>
</nodeType>
<nodeType alias="initpackager">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="packager">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="createdPackages">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="createdPackageInstance">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<delete assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
</createUI>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<createUI>
<nodeType alias="initmacros">
<header>Macro</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="macroTasks" />
</tasks>
</nodeType>
<nodeType alias="macros">
<header>Macro</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="macroTasks" />
<delete assembly="Umbraco.Web" type="macroTasks" />
</tasks>
</nodeType>
<nodeType alias="initpackager">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="packager">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="createdPackages">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<create assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
<nodeType alias="createdPackageInstance">
<header>Package</header>
<usercontrol>/create/simple.ascx</usercontrol>
<tasks>
<delete assembly="Umbraco.Web" type="CreatedPackageTasks" />
</tasks>
</nodeType>
</createUI>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<language alias="cs" intName="Czech" localName="česky" lcid="5" culture="cs-CZ">
<creator>
<name>umbraco</name>
@@ -62,6 +62,7 @@
</area>
<area alias="buttons">
<key alias="select">Vybrat</key>
<key alias="selectCurrentFolder">Vybrat aktuální složku</key>
<key alias="somethingElse">Dělat něco jiného</key>
<key alias="bold">Tučně</key>
<key alias="deindent">Zrušit odsazení odstavce</key>
@@ -146,7 +147,7 @@
<key alias="statistics">Statistika</key>
<key alias="titleOptional">Titulek (volitelně)</key>
<key alias="type">Typ</key>
<key alias="unpublish">Nepublikovat</key>
<key alias="unPublish">Nepublikovat</key>
<key alias="updateDate">Naposledy změněno</key>
<key alias="updateDateDesc" version="7.0">Datum/čas poslední změny dokumentu</key>
<key alias="uploadClear">Odebrat soubor(y)</key>
@@ -158,6 +159,7 @@
</area>
<area alias="media">
<key alias="clickToUpload">Klikněte pro nahrání</key>
<key alias="dropFilesHere">Upusťte soubory zde...</key>
</area>
<area alias="create">
<key alias="chooseNode">Kde chcete vytvořit nový %0%</key>
@@ -183,22 +185,27 @@
</area>
<area alias="bulk">
<key alias="done">Done</key>
<key alias="deletedItem">Deleted %0% item</key>
<key alias="deletedItems">Deleted %0% items</key>
<key alias="deletedItemOfItem">Deleted %0% out of %1% item</key>
<key alias="deletedItemOfItems">Deleted %0% out of %1% items</key>
<key alias="publishedItem">Published %0% item</key>
<key alias="publishedItems">Published %0% items</key>
<key alias="publishedItemOfItem">Published %0% out of %1% item</key>
<key alias="publishedItemOfItems">Published %0% out of %1% items</key>
<key alias="unpublishedItem">Unpublished %0% item</key>
<key alias="unpublishedItems">Unpublished %0% items</key>
<key alias="unpublishedItemOfItem">Unpublished %0% out of %1% item</key>
<key alias="unpublishedItemOfItems">Unpublished %0% out of %1% items</key>
<key alias="movedItem">Moved %0% item</key>
<key alias="movedItems">Moved %0% items</key>
<key alias="movedItemOfItem">Moved %0% out of %1% item</key>
<key alias="movedItemOfItems">Moved %0% out of %1% items</key>
<key alias="copiedItem">Copied %0% item</key>
<key alias="copiedItems">Copied %0% items</key>
<key alias="copiedItemOfItem">Copied %0% out of %1% item</key>
@@ -271,6 +278,7 @@
<key alias="newtab">Nová záložka</key>
<key alias="tab">Záložka</key>
<key alias="thumbnail">Miniatura</key>
<key alias="hasListView">Povolit zobrazení jako seznam</key>
</area>
<area alias="editdatatype">
<key alias="addPrevalue">Přidat předlohu</key>
@@ -306,11 +314,16 @@
<key alias="missingTitle">Uveďte, prosím, titulek</key>
<key alias="missingType">Vyberte, prosím, typ</key>
<key alias="pictureResizeBiggerThanOrg">Chystáte se obrázek zvětšit více, než je jeho původní rozměr. Opravdu chcete pokračovat?</key>
<key alias="pythonErrorHeader">Chyba ve skriptu python</key>
<key alias="pythonErrorText">Skript python nebyl ještě uložen, protože obsahuje chyby</key>
<key alias="startNodeDoesNotExists">Počáteční uzel je odstraněný, kontaktujte, prosím, administrátora</key>
<key alias="stylesMustMarkBeforeSelect">Před změnou stylu označte, prosím, obsah</key>
<key alias="stylesNoStylesOnPage">Žádne aktivní styly nejsou dostupné</key>
<key alias="tableColMergeLeft">Umístěte, prosím, kurzor nalevo od těch dvou buňek, které chcete sloučit</key>
<key alias="tableSplitNotSplittable">Nemužete rozdělit buňku, která nebyla sloučená.</key>
<key alias="xsltErrorHeader">Chyba ve zdroji XSLT</key>
<key alias="xsltErrorText">Soubor XSLT nebyl uložen, protože obsahoval chyby</key>
<key alias="missingPropertyEditorErrorMessage">V nastavení datového typu použitého pro tuto vlastnost je chyba, zkontrolujte, prosím, datový typ</key>
</area>
<area alias="general">
<key alias="about">O...</key>
@@ -365,6 +378,7 @@
<key alias="logout">Odhlášení</key>
<key alias="macro">Makro</key>
<key alias="move">Přesunout</key>
<key alias="more">Více</key>
<key alias="name">Název</key>
<key alias="new">Nový</key>
<key alias="next">Následující</key>
@@ -393,8 +407,7 @@
<key alias="showPageOnSend">Zobrazit stránku při odeslání</key>
<key alias="size">Rozměr</key>
<key alias="sort">Seřadit</key>
<key alias="submit">Submit</key>
<!-- TODO: Translate this -->
<key alias="submit">Submit</key> <!-- TODO: Translate this -->
<key alias="type">Typ</key>
<key alias="typeToSearch">Pro hledání pište...</key>
<key alias="up">Nahoru</key>
@@ -446,7 +459,7 @@
Stiskněte tlačítko <strong>povýšit</strong> pro povýšení Vaší databáze na Umbraco %0%</p>
<p>
Neobávejte se - žádný obsah nebude odstraněn a všechno bude fungovat jak má!
</p>
</p>
]]></key>
<key alias="databaseUpgradeDone"><![CDATA[Vaše databáze byla povýšená na konečnou verzi %0%.<br />Stiskněte <strong>Následující</strong> pro pokračování. ]]></key>
<key alias="databaseUpToDate"><![CDATA[Vaše současná databáze je aktuální!. Klikněte na <strong>následující</strong>, pro pokračování konfiguračního průvodce]]></key>
@@ -482,7 +495,7 @@
]]></key>
<key alias="runwayFromScratch">Chci začít od nuly</key>
<key alias="runwayFromScratchText"><![CDATA[
V tuto chíli je Váš web úplně prázdný, takže je ideální chvíle začít od nuly a vytvořit si vlastní typy dokumentu a šablon.
V tuto chíli je Váš web úplně prázdný, takže je ideální chvíle začít od nuly a vytvořit si vlastní typy dokumentu a šablon.
(<a href="http://umbraco.tv/documentation/videos/for-site-builders/foundation/document-types">zjistěte jak</a>)
Stále se můžete později rozhodnout nainstalovat Runway. Za tím účelem navštivte Vývojářskou sekci a zvolte Balíčky.
]]></key>
@@ -516,7 +529,7 @@
Abyste získali pomoc od naší oceňované komunity, projděte si dokumentaci, nebo si pusťte některá videa zdarma o tom, jak vytvořit jednoduchý web, jak používat balíčky a rychlý úvod do terminologie umbraca]]></key>
<key alias="theEndHeader">Umbraco %0% je nainstalováno a připraveno k použití</key>
<key alias="theEndInstallFailed"><![CDATA[Pro dokončení instalace budete muset ručně změnit <strong>soubor /web.config</strong> a upravit klíč AppSetting <strong>umbracoConfigurationStatus</strong> dole na hodnotu <strong>'%0%'</strong>.]]></key>
<key alias="theEndInstallSuccess"><![CDATA[Můžete <strong>ihned začít</strong> kliknutím na tlačítko "Spustit Umbraco" níže. <br />Jestliže <strong>je pro Vás umbraco nové</strong>,
<key alias="theEndInstallSuccess"><![CDATA[Můžete <strong>ihned začít</strong> kliknutím na tlačítko "Spustit Umbraco" níže. <br />Jestliže <strong>je pro Vás umbraco nové</strong>,
spoustu zdrojů naleznete na naších stránkách "začínáme".]]></key>
<key alias="theEndOpenUmbraco"><![CDATA[<h3>Spustit Umbraco</h3>
Chcete-li spravovat Váš web, jednoduše přejděte do administrace umbraca a začněte přidávat obsah, upravovat šablony a stylopisy, nebo přidávat nové funkce]]></key>
@@ -584,13 +597,13 @@
]]></key>
<key alias="mailBodyHtml"><![CDATA[<p>Hi %0%</p>
<p>Toto je automatická zpráva informující Vás, že úloha <strong>'%1%'</strong>
<p>Toto je automatická zpráva informující Vás, že úloha <strong>'%1%'</strong>
byla provedena na stránce <a href="http://%4%/#/content/content/edit/%5%"><strong>'%2%'</strong></a>
uživatelem <strong>'%3%'</strong>
</p>
<div style="margin: 8px 0; padding: 8px; display: block;">
<br />
<a style="color: white; font-weight: bold; background-color: #5372c3; text-decoration : none; margin-right: 20px; border: 8px solid #5372c3; width: 150px;" href="http://%4%/#/content/content/edit/%5%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDITOVAT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a> &nbsp;
<a style="color: white; font-weight: bold; background-color: #5372c3; text-decoration : none; margin-right: 20px; border: 8px solid #5372c3; width: 150px;" href="http://%4%/#/content/content/edit/%5%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDITOVAT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a> &nbsp;
<br />
</div>
<p>
@@ -602,7 +615,7 @@
<div style="margin: 8px 0; padding: 8px; display: block;">
<br />
<a style="color: white; font-weight: bold; background-color: #5372c3; text-decoration : none; margin-right: 20px; border: 8px solid #5372c3; width: 150px;" href="http://%4%/#/content/content/edit/%5%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDITOVAT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a> &nbsp;
<a style="color: white; font-weight: bold; background-color: #5372c3; text-decoration : none; margin-right: 20px; border: 8px solid #5372c3; width: 150px;" href="http://%4%/#/content/content/edit/%5%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDITOVAT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a> &nbsp;
<br />
</div>
@@ -669,9 +682,11 @@
<key alias="paSimpleHelp">Jestliže chcete nastavit jenom jednoduchou ochranu prostřednictvím uživatelského jména a hesla</key>
</area>
<area alias="publish">
<key alias="contentPublishedFailedAwaitingRelease"><![CDATA[
<key alias="contentPublishedFailedAwaitingRelease">
<![CDATA[
%0% nemůže být publikována, protože položka je naplánovaná k uvolnění.
]]></key>
]]>
</key>
<key alias="contentPublishedFailedInvalid"><![CDATA[
%0% nemůže být publikována, protože tyto vlastnosti: %1% nesplňují validační pravidla.
]]></key>
@@ -794,10 +809,19 @@
<key alias="fileSavedHeader">Soubor byl uložen</key>
<key alias="fileSavedText">Soubor byl uložen bez chyb</key>
<key alias="languageSaved">Jazyk byl uložen</key>
<key alias="pythonErrorHeader">Skript python nebyl uložen</key>
<key alias="pythonErrorText">Skript python nemohl být uložen kvůli chybě</key>
<key alias="pythonSavedHeader">Skript python byl uložen</key>
<key alias="pythonSavedText">Ve skriptu python nejsou žádné chyby</key>
<key alias="templateErrorHeader">Šablona nebyla uložena</key>
<key alias="templateErrorText">Ujistěte se, prosím, že nemáte 2 šablony se stejným aliasem</key>
<key alias="templateSavedHeader">Šablona byla uložena</key>
<key alias="templateSavedText">Šablona byla uložena bez chyb!</key>
<key alias="xsltErrorHeader">XSLT nebyl uložen</key>
<key alias="xsltErrorText">XSLT obsahoval chybu</key>
<key alias="xsltPermissionErrorText">XSLT nemohl být uložen, zkontrolujte oprávnění k souboru</key>
<key alias="xsltSavedHeader">XSLT byl uložen</key>
<key alias="xsltSavedText">V XSLT nejsou žádné chyby</key>
<key alias="contentUnpublished">Publikování obsahu bylo zrušeno</key>
<key alias="partialViewSavedHeader">Částečný pohled byl uložen</key>
<key alias="partialViewSavedText">Částečný pohled byl uložen bez chyb!</key>
@@ -824,20 +848,27 @@
<key alias="template">Šablona</key>
</area>
<area alias="grid">
<key alias="rte">Rich Text Editor</key>
<key alias="media">Image</key>
<key alias="macro">Macro</key>
<key alias="embed">Embed</key>
<key alias="headline">Headline</key>
<key alias="quote">Quote</key>
<key alias="insertControl">Choose type of content</key>
<key alias="chooseLayout">Choose a layout</key>
<key alias="addRows">Add a row</key>
<key alias="addElement">Add content</key>
<key alias="dropElement">Drop content</key>
<key alias="settingsApplied">Settings applied</key>
<key alias="contentNotAllowed">This content is not allowed here</key>
<key alias="contentAllowed">This content is allowed here</key>
<key alias="clickToEmbed">Click to embed</key>
<key alias="clickToInsertImage">Click to insert image</key>
<key alias="placeholderImageCaption">Image caption...</key>
<key alias="placeholderWriteHere">Write here...</key>
<key alias="gridLayouts">Grid Layouts</key>
<key alias="gridLayoutsDetail">Layouts are the overall work area for the grid editor, usually you only need one or two different layouts</key>
<key alias="addGridLayout">Add Grid Layout</key>
@@ -852,6 +883,7 @@
<key alias="settingsDetails">Configure what settings editors can change</key>
<key alias="styles">Styles</key>
<key alias="stylesDetails">Configure what styling editors can change</key>
<key alias="settingDialogDetails">Settings will only save if the entered json configuration is valid</key>
<key alias="allowAllEditors">Allow all editors</key>
<key alias="allowAllRowConfigurations">Allow all row configurations</key>
</area>
@@ -884,7 +916,15 @@
<key alias="withTime">Ano, s časem. Oddělovač: </key>
</area>
<area alias="translation">
<key alias="assignedTasks">Úlohy přidělené Vám</key>
<key alias="assignedTasksHelp"><![CDATA[ Seznam níže zobrazuje překladatelské úlohy <strong>přidělené Vám</strong>. Chcete-li vidět podrobné zobrazení včetně komentářů, klikněte na "Podrobnosti" nebo pouze na název stránky.
Můžete také přímo stáhnout stránku jako XML kliknutím na odkaz "Stáhnout Xml". <br/>
Pro zavření překladatelské úlohy přejděte, prosím, na zobrazení Podrobnosti a klikněte na tlačítko "Zavřít".
]]></key>
<key alias="closeTask">zavřít úlohu</key>
<key alias="details">Podrobnosti překladu</key>
<key alias="downloadAllAsXml">Stáhnout všechny překladatelské úlohy jako xml</key>
<key alias="downloadTaskAsXml">Stáhnout xml</key>
<key alias="DownloadXmlDTD">Stáhnout xml DTD</key>
<key alias="fields">Pole</key>
<key alias="includeSubpages">Zahrnout podstránky</key>
@@ -903,9 +943,16 @@
Zdraví umbraco robot
]]></key>
<key alias="mailSubject">[%0%] Překladatelská úloha pro %1%</key>
<key alias="noTranslators">Žádní uživatelé překladatelé nebyli nalezeni. Vytvořte, prosím, překladatele před tím, než začnete posílat obsah k překladu</key>
<key alias="ownedTasks">Úlohy vytvořené Vámi</key>
<key alias="ownedTasksHelp"><![CDATA[Seznam níže zobrazuje stránky <strong>vytvořené Vámi</strong>. Chcete-li vidět podrobné zobrazení včetně komentářů, klikněte na "Podrobnosti" nebo pouze na název stránky. Můžete také přímo stáhnout stránku jako XML kliknutím na odkaz "Stáhnout Xml".
Pro zavření překladatelské úlohy přejděte, prosím, na zobrazení Podrobnosti a klikněte na tlačítko "Zavřít".
]]></key>
<key alias="pageHasBeenSendToTranslation">Stránka '%0%' byla poslána k překladu</key>
<key alias="sendToTranslate">Poslat stránku '%0%' k překladu</key>
<key alias="taskAssignedBy">Přiděleno uživatelem</key>
<key alias="taskOpened">Otevřené úlohy</key>
<key alias="totalWords">Slov celkem</key>
<key alias="translateTo">Přeložit do</key>
<key alias="translationDone">Překlad hotov.</key>
@@ -935,6 +982,7 @@
<key alias="documentTypes">Typy dokumentů</key>
<key alias="packager">Balíčky</key>
<key alias="packages">Balíčky</key>
<key alias="python">Soubory python</key>
<key alias="repositories">Instalovat z úložiště</key>
<key alias="runway">Instalovat Runway</key>
<key alias="runwayModules">Moduly Runway</key>
@@ -942,9 +990,7 @@
<key alias="scripts">Skripty</key>
<key alias="stylesheets">Stylopisy</key>
<key alias="templates">Šablony</key>
<key alias="userPermissions">Oprávnění Uživatele</key>
<key alias="userTypes">Typy Uživatelů</key>
<key alias="users">Uživatelé</key>
<key alias="xslt">XSLT soubory</key>
</area>
<area alias="update">
<key alias="updateAvailable">Nová aktualizace je připrvena</key>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,7 @@
<language alias="no" intName="Norwegian" localName="norsk" lcid="20" culture="nb-NO">
<creator>
<name>The Umbraco community</name>
<link>http://our.umbraco.org/documentation/Extending-Umbraco/Language-Files</link>
<link>https://our.umbraco.com/documentation/Extending-Umbraco/Language-Files</link>
</creator>
<area alias="actions">
<key alias="assignDomain">Angi domene</key>
@@ -61,6 +61,7 @@
</area>
<area alias="buttons">
<key alias="select">Velg</key>
<key alias="selectCurrentFolder">Velg gjeldende mappe</key>
<key alias="somethingElse">Gjør noe annet</key>
<key alias="bold">Fet</key>
<key alias="deindent">Reduser innrykk</key>
@@ -150,7 +151,7 @@
<key alias="titleOptional">Tittel (valgfri)</key>
<key alias="altTextOptional">Alternativ tekst (valgfri)</key>
<key alias="type">Type</key>
<key alias="unpublish">Avpubliser</key>
<key alias="unPublish">Avpubliser</key>
<key alias="updateDate">Sist endret</key>
<key alias="updateDateDesc" version="7.0">Tidspunkt for siste endring</key>
<key alias="uploadClear">Fjern fil</key>
@@ -162,6 +163,7 @@
</area>
<area alias="media">
<key alias="clickToUpload">Klikk for å laste opp</key>
<key alias="dropFilesHere">Slipp filene her...</key>
</area>
<area alias="member">
<key alias="createNewMember">Opprett et nytt medlem</key>
@@ -191,22 +193,27 @@
</area>
<area alias="bulk">
<key alias="done">Done</key>
<key alias="deletedItem">Deleted %0% item</key>
<key alias="deletedItems">Deleted %0% items</key>
<key alias="deletedItemOfItem">Deleted %0% out of %1% item</key>
<key alias="deletedItemOfItems">Deleted %0% out of %1% items</key>
<key alias="publishedItem">Published %0% item</key>
<key alias="publishedItems">Published %0% items</key>
<key alias="publishedItemOfItem">Published %0% out of %1% item</key>
<key alias="publishedItemOfItems">Published %0% out of %1% items</key>
<key alias="unpublishedItem">Unpublished %0% item</key>
<key alias="unpublishedItems">Unpublished %0% items</key>
<key alias="unpublishedItemOfItem">Unpublished %0% out of %1% item</key>
<key alias="unpublishedItemOfItems">Unpublished %0% out of %1% items</key>
<key alias="movedItem">Moved %0% item</key>
<key alias="movedItems">Moved %0% items</key>
<key alias="movedItemOfItem">Moved %0% out of %1% item</key>
<key alias="movedItemOfItems">Moved %0% out of %1% items</key>
<key alias="copiedItem">Copied %0% item</key>
<key alias="copiedItems">Copied %0% items</key>
<key alias="copiedItemOfItem">Copied %0% out of %1% item</key>
@@ -272,13 +279,20 @@
<key alias="enterTags">Skriv inn nøkkelord (trykk på Enter etter hvert nøkkelord)...</key>
</area>
<area alias="editcontenttype">
<key alias="allowAtRoot" version="7.2">Tillat på rotnivå</key>
<key alias="allowAtRootDesc" version="7.2">Kun dokumenttyper med denne innstillingen aktivert kan opprettes på rotnivå under Innhold og Mediearkiv</key>
<key alias="allowedchildnodetypes">Tillatte underordnede noder</key>
<key alias="contenttypecompositions">Sammensetting av dokumenttyper</key>
<key alias="create">Opprett</key>
<key alias="deletetab">Slett arkfane</key>
<key alias="description">Beskrivelse</key>
<key alias="newtab">Ny arkfane</key>
<key alias="tab">Arkfane</key>
<key alias="thumbnail">Miniatyrbilde</key>
<key alias="hasListView">Aktiver listevisning</key>
<key alias="hasListViewDesc" version="7.2">Viser undersider i en søkbar liste, undersider vises ikke i innholdstreet</key>
<key alias="currentListView" version="7.2">Gjeldende listevisning</key>
<key alias="currentListViewDesc" version="7.2">Den aktive listevisningsdatatypen</key>
<key alias="createListView" version="7.2">Opprett brukerdefinert listevisning</key>
<key alias="removeListView" version="7.2">Fjern brukerdefinert listevisning</key>
</area>
@@ -316,11 +330,16 @@
<key alias="missingTitle">Tittel mangler</key>
<key alias="missingType">Type mangler</key>
<key alias="pictureResizeBiggerThanOrg">Du er i ferd med å gjøre bildet større enn originalen. Det vil forringe kvaliteten på bildet, ønsker du å fortsette?</key>
<key alias="pythonErrorHeader">Feil i python-skriptet</key>
<key alias="pythonErrorText">Python-skriptet ble ikke lagret fordi det inneholder en eller flere feil</key>
<key alias="startNodeDoesNotExists">Startnode er slettet. Kontakt din administrator</key>
<key alias="stylesMustMarkBeforeSelect">Du må markere innhold før du kan endre stil</key>
<key alias="stylesNoStylesOnPage">Det er ingen aktive stiler eller formateringer på denne siden</key>
<key alias="tableColMergeLeft">Sett markøren til venstre i de 2 cellene du ønsker å slå sammen</key>
<key alias="tableSplitNotSplittable">Du kan ikke dele en celle som allerede er delt.</key>
<key alias="xsltErrorHeader">Feil i XSLT kode</key>
<key alias="xsltErrorText">XSLT ble ikke lagret på grunn av feil i koden</key>
<key alias="missingPropertyEditorErrorMessage">Det er et problem dem datatypen som brukes til denne egenskapen. Kontroller innstillingene og prøv igjen.</key>
</area>
<area alias="general">
<key alias="about">Om</key>
@@ -375,6 +394,7 @@
<key alias="logout">Logg ut</key>
<key alias="macro">Makro</key>
<key alias="move">Flytt</key>
<key alias="more">Mer</key>
<key alias="name">Navn</key>
<key alias="new">Ny</key>
<key alias="next">Neste</key>
@@ -449,7 +469,7 @@
<key alias="databaseHeader">Databasekonfigurasjon</key>
<key alias="databaseInstall"><![CDATA[Klikk <strong>installer</strong>-knappen for å installere Umbraco %0% databasen]]></key>
<key alias="databaseInstallDone"><![CDATA[Umbraco %0% har nå blitt kopiert til din database. Trykk <strong>Neste</strong> for å fortsette.]]></key>
<key alias="databaseNotFound"><![CDATA[<p>Databasen ble ikke funnet! Vennligst sjekk at informasjonen i "connection string" i "web.config"-filen er korrekt.</p><p>For å fortsette, vennligst rediger "web.config"-filen (bruk Visual Studio eller din favoritteditor), rull ned til bunnen, og legg til tilkoblingsstrengen for din database i nøkkelen "umbracoDbDSN" og lagre filen.</p><p>Klikk <strong>prøv på nytt</strong> når du er ferdig.<br /> <a href="http://our.umbraco.org/documentation/Using-Umbraco/Config-files/webconfig7" target="_blank">Mer informasjon om redigering av web.config her.</a></p>]]></key>
<key alias="databaseNotFound"><![CDATA[<p>Databasen ble ikke funnet! Vennligst sjekk at informasjonen i "connection string" i "web.config"-filen er korrekt.</p><p>For å fortsette, vennligst rediger "web.config"-filen (bruk Visual Studio eller din favoritteditor), rull ned til bunnen, og legg til tilkoblingsstrengen for din database i nøkkelen "umbracoDbDSN" og lagre filen.</p><p>Klikk <strong>prøv på nytt</strong> når du er ferdig.<br /> <a href="https://our.umbraco.com/documentation/Using-Umbraco/Config-files/webconfig7" target="_blank">Mer informasjon om redigering av web.config her.</a></p>]]></key>
<key alias="databaseText"><![CDATA[For å fullføre dette steget, må du vite en del informasjon om din database server ("tilkoblingsstreng").<br/> Vennligst kontakt din ISP om nødvendig. Hvis du installerer på en lokal maskin eller server, må du kanskje skaffe informasjonen fra din systemadministrator.]]></key>
<key alias="databaseUpgrade"><![CDATA[<p> Trykk på knappen <strong>oppgrader</strong> for å oppgradere databasen din til Umbraco %0%</p> <p> Ikke vær urolig - intet innhold vil bli slettet og alt vil fortsette å virke etterpå! </p>]]></key>
<key alias="databaseUpgradeDone"><![CDATA[Databasen din har blitt oppgradert til den siste utgaven, %0%.<br/>Trykk <strong>Neste</strong> for å fortsette.]]></key>
@@ -692,8 +712,12 @@ Vennlig hilsen Umbraco roboten
<key alias="users">Brukere</key>
<key alias="help" version="7.0">Hjelp</key>
<key alias="forms">Skjemaer</key>
<key alias="analytics">Analytics</key>
</area>
<area alias="help">
<key alias="goTo">gå til</key>
<key alias="helpTopicsFor">Hjelpeemner for</key>
<key alias="videoChaptersFor">Videokapitler for</key>
<key alias="theBestUmbracoVideoTutorials">De beste Umbraco opplæringsvideoer</key>
</area>
<area alias="settings">
@@ -713,6 +737,8 @@ Vennlig hilsen Umbraco roboten
<key alias="contentTypeUses">Denne dokumenttypen bruker</key>
<key alias="asAContentMasterType">som hoveddokumenttype. Arkfaner fra hoveddokumenttyper vises ikke og kan kun endres på hoveddokumenttypen selv.</key>
<key alias="noPropertiesDefinedOnTab">Ingen egenskaper definert i denne arkfanen. Klikk på "legg til ny egenskap" lenken i toppen for å opprette en ny egenskap.</key>
<key alias="masterDocumentType">Hovedinnholdstype</key>
<key alias="createMatchingTemplate">Opprett tilhørende mal</key>
</area>
<area alias="sort">
<key alias="sortOrder">Sort order</key>
@@ -761,15 +787,29 @@ Vennlig hilsen Umbraco roboten
<key alias="fileSavedHeader">Filen ble lagret</key>
<key alias="fileSavedText">Filen ble lagret uten feil</key>
<key alias="languageSaved">Språk lagret</key>
<key alias="pythonErrorHeader">Python-skriptet ble ikke lagret</key>
<key alias="pythonErrorText">Python-skriptet kunne ikke lagres fordi det inneholder en eller flere feil</key>
<key alias="pythonSavedHeader">Python-skriptet er lagret!</key>
<key alias="pythonSavedText">Ingen feil i python-skriptet!</key>
<key alias="templateErrorHeader">Malen ble ikke lagret</key>
<key alias="templateErrorText">Vennligst forviss deg om at du ikke har to maler med samme alias</key>
<key alias="templateSavedHeader">Malen ble lagret</key>
<key alias="templateSavedText">Malen ble lagret uten feil!</key>
<key alias="xsltErrorHeader">XSLT-koden ble ikke lagret</key>
<key alias="xsltErrorText">XSLT-koden inneholdt en feil</key>
<key alias="xsltPermissionErrorText">XSLT-koden ble ikke lagret, sjekk filrettigheter</key>
<key alias="xsltSavedHeader">XSLT lagret</key>
<key alias="xsltSavedText">Ingen feil i XSLT!</key>
<key alias="contentUnpublished">Innhold avpublisert</key>
<key alias="partialViewSavedHeader">Delmal lagret</key>
<key alias="partialViewSavedText">Delmal lagret uten feil</key>
<key alias="partialViewErrorHeader">Delmal ble ikke lagret!</key>
<key alias="partialViewErrorText">En feil oppsto ved lagring av delmal</key>
<key alias="scriptSavedHeader">Script visning lagret</key>
<key alias="scriptSavedText">Script visning lagret uten feil!</key>
<key alias="scriptErrorHeader">Script visning ikke lagret</key>
<key alias="scriptErrorText">En feil oppsto under lagring av filen.</key>
<key alias="cssErrorText">En feil oppsto under lagring av filen.</key>
</area>
<area alias="stylesheet">
<key alias="aliasHelp">Bruk CSS syntaks f.eks: h1, .redHeader, .blueText</key>
@@ -791,20 +831,27 @@ Vennlig hilsen Umbraco roboten
<key alias="template">Mal</key>
</area>
<area alias="grid">
<key alias="rte">Rich Text Editor</key>
<key alias="media">Image</key>
<key alias="macro">Macro</key>
<key alias="embed">Embed</key>
<key alias="headline">Headline</key>
<key alias="quote">Quote</key>
<key alias="insertControl">Sett inn element</key>
<key alias="chooseLayout">Velg layout</key>
<key alias="addRows">Legg til rad</key>
<key alias="addElement">Legg til innhold</key>
<key alias="dropElement">Slipp innhold</key>
<key alias="settingsApplied">Raden har tilpasset design</key>
<key alias="contentNotAllowed">Innholdstypen er ikke tillatt her</key>
<key alias="contentAllowed">Innholdstypen er tillatt her</key>
<key alias="clickToEmbed">Klikk for å bygge inn</key>
<key alias="clickToInsertImage">Klikk for å sette inn et bilde</key>
<key alias="placeholderImageCaption">Bildetekst...</key>
<key alias="placeholderWriteHere">Skriv her...</key>
<key alias="gridLayouts">Rutenettoppsett</key>
<key alias="gridLayoutsDetail">Et oppsett er det overordnede arbeidsområdet til ditt rutenett - du vil typisk kun behøve ett eller to</key>
<key alias="addGridLayout">Legg til rutenettoppsett</key>
@@ -813,12 +860,18 @@ Vennlig hilsen Umbraco roboten
<key alias="rowConfigurationsDetail">Rader er forhåndsdefinerte celler arrangert vannrett</key>
<key alias="addRowConfiguration">Legg til radkonfigurasjon</key>
<key alias="addRowConfigurationDetail">Juster raden ved å sette cellebredder og legge til flere celler</key>
<key alias="columns">Kolonner</key>
<key alias="columnsDetails">Totalt antall kolonner i rutenettet</key>
<key alias="settings">Innstillinger</key>
<key alias="settingsDetails">Konfigurer hvilke innstillinger brukeren kan endre</key>
<key alias="styles">Stiler</key>
<key alias="stylesDetails">Konfigurer hvilke stiler redaktørene kan endre</key>
<key alias="settingDialogDetails">Innstillingene lagres kun når konfigurasjonen er gyldig</key>
<key alias="allowAllEditors">Tillatt alle editorer</key>
<key alias="allowAllRowConfigurations">Tillat alle radkonfigurasjoner</key>
<key alias="setAsDefault">Bruk som standard</key>
@@ -855,7 +908,12 @@ Vennlig hilsen Umbraco roboten
<key alias="withTime">Ja, med klokkeslett. Dato/tid separator: </key>
</area>
<area alias="translation">
<key alias="assignedTasks">Oppgaver satt til deg</key>
<key alias="assignedTasksHelp"><![CDATA[Listen nedenfor viser oversettelsesoppgaver <strong>som du er tildelt</strong>. For å se en detaljert visning inkludert kommentarer, klikk på "Detaljer" eller navnet på siden. Du kan også laste ned siden som XML direkte ved å klikke på linken "Last ned XML". <br/> For å lukke en oversettelsesoppgave, vennligst gå til detaljvisningen og klikk på "Lukk" knappen.]]></key>
<key alias="closeTask">Lukk oppgave</key>
<key alias="details">Oversettelses detaljer</key>
<key alias="downloadAllAsXml">Last ned all oversettelsesoppgaver som XML</key>
<key alias="downloadTaskAsXml">Last ned XML</key>
<key alias="DownloadXmlDTD">Last ned XML DTD</key>
<key alias="fields">Felt</key>
<key alias="includeSubpages">Inkluder undersider</key>
@@ -871,9 +929,14 @@ Vennlig hilsen Umbraco roboten
Vennlig hilsen Umbraco Robot.
]]></key>
<key alias="mailSubject">[%0%] Oversettingsoppgave for %1%</key>
<key alias="noTranslators">Ingen oversettelses-bruker funnet. Vennligst opprett en oversettelses-bruker før du begynner å sende innhold til oversetting</key>
<key alias="ownedTasks">Oppgaver opprettet av deg</key>
<key alias="ownedTasksHelp"><![CDATA[Listen under viser sider <strong>opprettet av deg</strong>. For å se en detaljert visning inkludert kommentarer, klikk på "Detaljer" eller navnet på siden. Du kan også laste ned siden som XML direkte ved å klikke på linken "Last ned XML". For å lukke en oversettelsesoppgave, vennligst gå til detaljvisningen og klikk på "Lukk" knappen.]]></key>
<key alias="pageHasBeenSendToTranslation">Siden '%0%' har blitt sendt til oversetting</key>
<key alias="sendToTranslate">Send til oversetting</key>
<key alias="taskAssignedBy">Tildelt av</key>
<key alias="taskOpened">Oppgave åpnet</key>
<key alias="totalWords">Antall ord</key>
<key alias="translateTo">Oversett til</key>
<key alias="translationDone">Oversetting fullført.</key>
@@ -903,6 +966,7 @@ Vennlig hilsen Umbraco roboten
<key alias="nodeTypes">Dokumenttyper</key>
<key alias="packager">Pakker</key>
<key alias="packages">Pakker</key>
<key alias="python">Python Filer</key>
<key alias="repositories">Installer fra pakkeregister</key>
<key alias="runway">Installer Runway</key>
<key alias="runwayModules">Runway moduler</key>
@@ -910,9 +974,8 @@ Vennlig hilsen Umbraco roboten
<key alias="scripts">Skript</key>
<key alias="stylesheets">Stiler</key>
<key alias="templates">Maler</key>
<key alias="userPermissions">Brukertillatelser</key>
<key alias="userTypes">Brukertyper typer</key>
<key alias="users">Brukere</key>
<key alias="xslt">XSLT Filer</key>
<key alias="analytics">Analytics</key>
</area>
<area alias="update">
<key alias="updateAvailable">Ny oppdatering er klar</key>
@@ -956,6 +1019,7 @@ Vennlig hilsen Umbraco roboten
<key alias="username">Navn</key>
<key alias="userPermissions">Brukertillatelser</key>
<key alias="writer">Forfatter</key>
<key alias="translator">Oversetter</key>
<key alias="change">Endre</key>
<key alias="yourProfile" version="7.0">Din profil</key>
<key alias="yourHistory" version="7.0">Din historikk</key>

View File

@@ -2,7 +2,7 @@
<language alias="zh_tw" intName="Chinese (Taiwan)" localName="中文(正體,台灣)" lcid="0404" culture="zh-TW">
<creator>
<name>The Umbraco community</name>
<link>http://our.umbraco.org/documentation/Extending-Umbraco/Language-Files</link>
<link>https://our.umbraco.com/documentation/Extending-Umbraco/Language-Files</link>
</creator>
<area alias="actions">
<key alias="assignDomain">管理主機名稱</key>
@@ -67,6 +67,7 @@
<area alias="buttons">
<key alias="clearSelection">清除選擇</key>
<key alias="select">選擇</key>
<key alias="selectCurrentFolder">選擇目前資料夾</key>
<key alias="somethingElse">做別的事情</key>
<key alias="bold">粗體</key>
<key alias="deindent">取消段落縮進</key>
@@ -95,6 +96,7 @@
<key alias="styleChoose">選擇樣式</key>
<key alias="styleShow">顯示樣式</key>
<key alias="tableInsert">插入表格</key>
<key alias="generateModels">產生模組</key>
</area>
<area alias="changeDocType">
<key alias="changeDocTypeInstruction">要更改所選節點的文檔類型,先在列表中選擇合適的文檔類型。</key>
@@ -159,7 +161,7 @@
<key alias="titleOptional">標題(可選)</key>
<key alias="altTextOptional">其他說明文字(可選)</key>
<key alias="type">類型</key>
<key alias="unpublish">取消發佈</key>
<key alias="unPublish">取消發佈</key>
<key alias="updateDate">最近編輯</key>
<key alias="updateDateDesc" version="7.0">本文件修改時間</key>
<key alias="uploadClear">移除文件</key>
@@ -169,11 +171,14 @@
<key alias="childItems" version="7.0">子項目</key>
<key alias="target" version="7.0">目標</key>
<key alias="scheduledPublishServerTime">預計發表的時間(伺服器端)</key>
<key alias="scheduledPublishDocumentation"><![CDATA[<a href="https://our.umbraco.org/documentation/Getting-Started/Data/Scheduled-Publishing/#timezones" target="_blank">這是什麼意思?</a>]]></key>
<key alias="scheduledPublishDocumentation"><![CDATA[<a href="https://our.umbraco.com/documentation/Getting-Started/Data/Scheduled-Publishing/#timezones" target="_blank">這是什麼意思?</a>]]></key>
</area>
<area alias="media">
<key alias="clickToUpload">點選以便上傳</key>
<key alias="dropFilesHere">拖曳檔案至此...</key>
<key alias="urls">媒體連結</key>
<key alias="orClickHereToUpload">或按這裡選擇檔案</key>
<key alias="onlyAllowedFiles">只允許檔案類型為</key>
<key alias="maxFileSize">檔案大小上限為</key>
</area>
<area alias="member">
@@ -273,10 +278,13 @@
<key alias="thumbnailimageclickfororiginal">點擊圖片查看完整大小</key>
<key alias="treepicker">拾取項</key>
<key alias="viewCacheItem">查看緩存項</key>
<key alias="createFolder">新增資料夾...</key>
<key alias="relateToOriginalLabel">與原本相關</key>
<key alias="theFriendliestCommunity">最友善的社群</key>
<key alias="linkToPage">頁面連結</key>
<key alias="openInNewWindow">打開此連結文檔至新視窗或標籤頁</key>
<key alias="openInFullBody">打開此連結文檔至全新視窗</key>
<key alias="openInParentFrame">打開此連結文檔在原本視窗中</key>
<key alias="linkToMedia">媒體連結</key>
<key alias="selectMedia">選擇媒體</key>
<key alias="selectIcon">選擇圖示</key>
@@ -299,7 +307,7 @@
</area>
<area alias="dictionaryItem">
<key alias="description"><![CDATA[
為此字典項目 '<em>%0%</em>' 編輯不同語言版本,<br />您可以在左方選單「語言」中增添新的語言
為此字典項目 '<em>%0%</em>' 編輯不同語言版本,<br />您可以在左方選單「語言」中增添新的語言
]]></key>
<key alias="displayName">語言名稱</key>
</area>
@@ -317,13 +325,20 @@
<key alias="email">輸入您的電子郵件</key>
</area>
<area alias="editcontenttype">
<key alias="allowAtRoot" version="7.2">允許放置於根節點</key>
<key alias="allowAtRootDesc" version="7.2">只有勾選「允許放置於根節點」的內容種類可以放在內容樹或媒體樹的最頂端</key>
<key alias="allowedchildnodetypes">允許子項節點類型</key>
<key alias="contenttypecompositions">文檔種類集合</key>
<key alias="create">創建</key>
<key alias="deletetab">刪除選項卡</key>
<key alias="description">描述</key>
<key alias="newtab">新建選項卡</key>
<key alias="tab">選項卡</key>
<key alias="thumbnail">縮略圖</key>
<key alias="hasListView">允許清單檢視</key>
<key alias="hasListViewDesc" version="7.2">允許內容項目顯示成可以排列及搜尋的清單,子項目不會被顯示</key>
<key alias="currentListView" version="7.2">目前清單檢視</key>
<key alias="currentListViewDesc" version="7.2">作用中的清單檢視資料類別</key>
<key alias="createListView" version="7.2">新增自訂清單檢視</key>
<key alias="removeListView" version="7.2">移除自訂清單檢視</key>
</area>
@@ -361,14 +376,23 @@
<key alias="filePermissionsError">許可權有問題,訪問指定文檔或資料夾失敗!</key>
<key alias="macroErrorLoadingPartialView">讀取片段視圖腳本錯誤(檔案:%0%</key>
<key alias="macroErrorLoadingUsercontrol">讀取使用者控制項 %0% 錯誤</key>
<key alias="macroErrorLoadingCustomControl">讀取使用者控制項 %0% 錯誤(組件:%0%,類別:%1%</key>
<key alias="macroErrorLoadingMacroEngineScript">讀取巨集引擎腳本錯誤(檔案:%0%</key>
<key alias="macroErrorParsingXSLTFile">分析XSLT檔案錯誤%0%</key>
<key alias="macroErrorReadingXSLTFile">讀取XSLT檔案錯誤%0%</key>
<key alias="missingTitle">請輸入標題</key>
<key alias="missingType">請選擇類型</key>
<key alias="pictureResizeBiggerThanOrg">圖片尺寸大於原始尺寸不會提高圖片品質,您確定要把圖片尺寸變大嗎?</key>
<key alias="pythonErrorHeader">python腳本錯誤</key>
<key alias="pythonErrorText">python腳本未保存因為包含錯誤。</key>
<key alias="startNodeDoesNotExists">預設打開頁面不存在,請聯繫管理員</key>
<key alias="stylesMustMarkBeforeSelect">請先選擇內容,再設置樣式。</key>
<key alias="stylesNoStylesOnPage">沒有可用的樣式</key>
<key alias="tableColMergeLeft">請把游標放在您要合併的兩個儲存格中的左邊儲存格</key>
<key alias="tableSplitNotSplittable">非合併儲存格不能分離。</key>
<key alias="xsltErrorHeader">XSLT源碼出錯</key>
<key alias="xsltErrorText">XSLT未保存因為包含錯誤。</key>
<key alias="missingPropertyEditorErrorMessage">這是此屬性所使用的資料類別設定錯誤,請檢查資料類別</key>
</area>
<area alias="general">
<key alias="about">關於</key>
@@ -427,6 +451,7 @@
<key alias="macro">巨集</key>
<key alias="mandatory">必要</key>
<key alias="move">移動</key>
<key alias="more">更多</key>
<key alias="name">名稱</key>
<key alias="new">新的</key>
<key alias="next">下一步</key>
@@ -484,7 +509,12 @@
<key alias="selected">選取的</key>
</area>
<area alias="colors">
<key alias="black"></key>
<key alias="green"></key>
<key alias="yellow"></key>
<key alias="orange"></key>
<key alias="blue"></key>
<key alias="red"></key>
</area>
<area alias="shortcuts">
<key alias="addTab">增加標籤頁</key>
@@ -523,7 +553,7 @@
<p>請編輯檔案"web.config" (例如使用Visual Studio或您喜歡的編輯器),移動到檔案底部,並在名稱為"UmbracoDbDSN"的字串中設定資料庫連結資訊,並存檔。</p>
<p>
點選<strong>重試</strong>按鈕當上述步驟完成。<br />
<a href="http://our.umbraco.org/documentation/Using-Umbraco/Config-files/webconfig7" target="_blank">
<a href="https://our.umbraco.com/documentation/Using-Umbraco/Config-files/webconfig7" target="_blank">
在此查詢更多編輯web.config的資訊。</a></p>]]></key>
<key alias="databaseText"><![CDATA[要完成此步驟,您必須瞭解連結資料庫伺服器的重要資訊("connection string")。<br />
若需要時,請聯繫您的網路公司。如果您在本地機器或伺服器安裝的話,您也許需要聯絡系統管理者。]]></key>
@@ -672,7 +702,7 @@
這是一封自動產生的信件來通知您 %1% 工作
已經在頁面 %2% 上由使用者 %3% 執行完成
請移至下列網址編輯: http://%4%/#/content/content/edit/%5%
@@ -841,8 +871,12 @@
<key alias="users">用戶</key>
<key alias="help" version="7.0">說明</key>
<key alias="forms">表單</key>
<key alias="analytics">統計</key>
</area>
<area alias="help">
<key alias="goTo">移至</key>
<key alias="helpTopicsFor">說明主題為</key>
<key alias="videoChaptersFor">影片主題為</key>
<key alias="theBestUmbracoVideoTutorials">最好的Umbraco影片教學</key>
</area>
<area alias="settings">
@@ -862,6 +896,8 @@
<key alias="contentTypeUses">該文檔類型使用</key>
<key alias="asAContentMasterType">作為主控文件類型. 主控文件類型的標籤只能在主控文件類型裡修改。</key>
<key alias="noPropertiesDefinedOnTab">沒有欄位設置在該標籤頁</key>
<key alias="masterDocumentType">主文檔類別</key>
<key alias="createMatchingTemplate">新增對應範本</key>
<key alias="addIcon">增加圖示</key>
</area>
<area alias="sort">
@@ -915,15 +951,29 @@
<key alias="languageSaved">語言已保存</key>
<key alias="mediaTypeSavedHeader">媒體類別已儲存</key>
<key alias="memberTypeSavedHeader">會員類別已儲存</key>
<key alias="pythonErrorHeader">Python腳本未保存</key>
<key alias="pythonErrorText">Python腳本因為錯誤未能保存</key>
<key alias="pythonSavedHeader">Python已保存</key>
<key alias="pythonSavedText">Python腳本無錯誤</key>
<key alias="templateErrorHeader">範本未保存</key>
<key alias="templateErrorText">範本別名相同</key>
<key alias="templateSavedHeader">範本已保存</key>
<key alias="templateSavedText">範本保存,無錯誤。</key>
<key alias="xsltErrorHeader">XSLT未保存</key>
<key alias="xsltErrorText">XSLT有錯誤</key>
<key alias="xsltPermissionErrorText">XSLT無法保存請檢查許可權。</key>
<key alias="xsltSavedHeader">XSLT已保存</key>
<key alias="xsltSavedText">XSLT無錯誤</key>
<key alias="contentUnpublished">內容已取消發佈</key>
<key alias="partialViewSavedHeader">片段視圖已保存</key>
<key alias="partialViewSavedText">片段視圖保存,無錯誤。</key>
<key alias="partialViewErrorHeader">片段視圖未保存</key>
<key alias="partialViewErrorText">片段視圖因為錯誤未能保存</key>
<key alias="scriptSavedHeader">腳本視圖已儲存</key>
<key alias="scriptSavedText">腳本視圖已儲存,沒有任何錯誤!</key>
<key alias="scriptErrorHeader">腳本視圖未儲存</key>
<key alias="scriptErrorText">儲存檔案時發生錯誤</key>
<key alias="cssErrorText">儲存檔案時發生錯誤</key>
</area>
<area alias="stylesheet">
<key alias="aliasHelp">使用CSS語法h1、.redHeader、.blueTex。</key>
@@ -945,8 +995,12 @@
<key alias="template">範本</key>
</area>
<area alias="grid">
<key alias="rte">Rich Text Editor</key>
<key alias="media">Image</key>
<key alias="macro">Macro</key>
<key alias="embed">Embed</key>
<key alias="headline">Headline</key>
<key alias="quote">Quote</key>
<key alias="insertControl">選擇內容類別</key>
<key alias="chooseLayout">選擇排列方式</key>
<key alias="addRows">新增一行</key>
@@ -973,6 +1027,7 @@
<key alias="settingsDetails">調整設定編輯器可以改變的項目</key>
<key alias="styles">樣式</key>
<key alias="stylesDetails">調整樣式編輯器可以改變的項目</key>
<key alias="settingDialogDetails">當JSON格式正確時設定才可以儲存</key>
<key alias="allowAllEditors">允許所有編輯器</key>
<key alias="allowAllRowConfigurations">允許所有行設定</key>
<key alias="setAsDefault">定為預設</key>
@@ -983,6 +1038,8 @@
<area alias="contentTypeEditor">
<key alias="compositions">組合</key>
<key alias="noTabs">您沒有增加任何選項卡</key>
<key alias="addNewTab">增加新的選項卡</key>
<key alias="addAnotherTab">增加另外的選項卡</key>
<key alias="inheritedFrom">繼承的表格</key>
<key alias="addProperty">增加屬性</key>
<key alias="requiredLabel">必要標籤</key>
@@ -992,6 +1049,7 @@
<key alias="allowedTemplatesDescription">選擇哪些範本編輯器可以使用於此類別的內容</key>
<key alias="allowAsRootHeading">允許為根項目</key>
<key alias="allowAsRootDescription">允許編輯器新增此類別的內容為根項目</key>
<key alias="allowAsRootCheckbox">是的 - 允許此類別內容為根項目</key>
<key alias="childNodesHeading">允許子節點種類</key>
<key alias="childNodesDescription">允許某些特定種類能夠成為此種類內容的子項目</key>
<key alias="chooseChildNode">選擇子節點</key>
@@ -1017,6 +1075,7 @@
<key alias="andAllDocuments">以及所有使用此種類的文件項目</key>
<key alias="andAllMediaItems">以及所有使用此種類的媒體項目</key>
<key alias="andAllMembers">以及所有使用此種類的會員項目</key>
<key alias="thisEditorUpdateSettings">使用此編輯器將會套用新設定</key>
<key alias="memberCanEdit">會員可以編輯</key>
<key alias="showOnMemberProfile">顯示於會員資料</key>
</area>
@@ -1049,7 +1108,15 @@
<key alias="withTime">是,含時間,分隔符號為: </key>
</area>
<area alias="translation">
<key alias="assignedTasks">標記為您的任務</key>
<key alias="assignedTasksHelp"><![CDATA[ 此清單顯示這些翻譯任務是<strong>指派給您</strong>。請按「翻譯詳情」或頁面名稱觀看包含回應的詳細檢視畫面。
您也可以將此頁面下載成為XML格式檔案請按「下載XML」按鈕。<br/>
若想要關閉翻譯任務,請至細節頁面點選「結束」按鈕。
]]></key>
<key alias="closeTask">關閉任務</key>
<key alias="details">翻譯詳情</key>
<key alias="downloadAllAsXml">將翻譯任務下載為XML</key>
<key alias="downloadTaskAsXml">下載 XML</key>
<key alias="DownloadXmlDTD">下載 XML DTD</key>
<key alias="fields">欄位</key>
<key alias="includeSubpages">包含子頁</key>
@@ -1057,7 +1124,7 @@
哈嘍 %0%
這是一封自動產生的郵件通知您文檔 %1%
已經被 %2 要求翻譯成 %5%
已經被 %2 要求翻譯成 %5%
請移至此網址來編輯: http://%3%/translation/details.aspx?id=%4%
@@ -1069,9 +1136,18 @@
Umbraco機器人 謹上
]]></key>
<key alias="mailSubject">[%0%]翻譯任務:%1%</key>
<key alias="noTranslators">沒有翻譯員,請創建翻譯員角色的用戶。</key>
<key alias="ownedTasks">您創建的任務</key>
<key alias="ownedTasksHelp"><![CDATA[ 本清單顯示<strong>由您創建</strong>的頁面。要瀏覽包含回應的詳細檢視畫面,
點選「詳情」或頁面名稱。您可以下載此頁面成為XML格式檔案請點選「下載XML」連結。
若要關閉翻譯任務,請至詳情檢視並點選「關閉」按鈕。
]]></key>
<key alias="pageHasBeenSendToTranslation">頁面'%0%'已經發送給翻譯</key>
<key alias="noLanguageSelected">請選擇本內容應該被翻譯成的語言</key>
<key alias="sendToTranslate">發送頁面'%0%'以便翻譯</key>
<key alias="taskAssignedBy">分配者</key>
<key alias="taskOpened">任務開啟</key>
<key alias="totalWords">總字數</key>
<key alias="translateTo">翻譯到</key>
<key alias="translationDone">翻譯完成。</key>
@@ -1102,6 +1178,7 @@
<key alias="relationTypes">相關類型</key>
<key alias="packager">擴展包</key>
<key alias="packages">擴展包</key>
<key alias="python">Python文件</key>
<key alias="repositories">從線上程式庫安裝</key>
<key alias="runway">安裝Runway</key>
<key alias="runwayModules">Runway模組</key>
@@ -1109,6 +1186,8 @@
<key alias="scripts">腳本</key>
<key alias="stylesheets">樣式表</key>
<key alias="templates">範本</key>
<key alias="xslt">XSLT文件</key>
<key alias="analytics">統計</key>
</area>
<area alias="update">
<key alias="updateAvailable">有可用更新</key>
@@ -1153,6 +1232,7 @@
<key alias="username">用戶名</key>
<key alias="userPermissions">用戶許可權</key>
<key alias="writer">撰稿人</key>
<key alias="translator">翻譯者</key>
<key alias="change">改變</key>
<key alias="yourProfile" version="7.0">您的個人檔案</key>
<key alias="yourHistory" version="7.0">您的歷程記錄</key>

View File

@@ -1,25 +1,31 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UserControlProxy.aspx.cs" Inherits="Umbraco.Web.UI.Umbraco.Dashboard.UserControlProxy" %>
<%@ Register TagPrefix="umb" Namespace="ClientDependency.Core.Controls" Assembly="ClientDependency.Core" %>
<%@ Register TagPrefix="cc1" Namespace="Umbraco.Web.UI.JavaScript" Assembly="umbraco" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<cc1:UmbracoClientDependencyLoader runat="server" ID="ClientLoader" />
<umb:CssInclude ID="CssInclude1" runat="server" FilePath="assets/css/umbraco.css" PathNameAlias="UmbracoRoot" />
<umb:JsInclude ID="JsInclude1" runat="server" FilePath="Application/NamespaceManager.js" PathNameAlias="UmbracoClient" Priority="0" />
<umb:JsInclude ID="JsInclude4" runat="server" FilePath="lib/jquery-migrate/jquery-migrate.min.js" PathNameAlias="UmbracoRoot" Priority="1" />
</head>
<body style="overflow: scroll">
<form id="form1" runat="server">
<div>
<asp:PlaceHolder ID="container" runat="server" />
</div>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UserControlProxy.aspx.cs" Inherits="Umbraco.Web.UI.Umbraco.Dashboard.UserControlProxy" %>
<%@ Register TagPrefix="umb" Namespace="ClientDependency.Core.Controls" Assembly="ClientDependency.Core" %>
<%@ Register TagPrefix="cc1" Namespace="umbraco.uicontrols" Assembly="controls" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<cc1:UmbracoClientDependencyLoader runat="server" ID="ClientLoader" />
<umb:CssInclude ID="CssInclude1" runat="server" FilePath="assets/css/umbraco.css" PathNameAlias="UmbracoRoot" />
<umb:JsInclude ID="JsInclude1" runat="server" FilePath="Application/NamespaceManager.js" PathNameAlias="UmbracoClient" Priority="0" />
<umb:JsInclude ID="JsInclude3" runat="server" FilePath="ui/jquery.js" PathNameAlias="UmbracoClient" Priority="1" />
<umb:JsInclude ID="JsInclude4" runat="server" FilePath="lib/jquery-migrate/jquery-migrate.min.js" PathNameAlias="UmbracoRoot" Priority="1" />
<umb:JsInclude ID="JsInclude6" runat="server" FilePath="ui/base2.js" PathNameAlias="UmbracoClient" Priority="1" />
<umb:JsInclude ID="JsInclude11" runat="server" FilePath="UI/knockout.js" PathNameAlias="UmbracoClient" Priority="3" />
<umb:JsInclude ID="JsInclude12" runat="server" FilePath="UI/knockout.mapping.js" PathNameAlias="UmbracoClient" Priority="4" />
<umb:JsInclude ID="JsInclude2" runat="server" FilePath="ui/default.js" PathNameAlias="UmbracoClient" Priority="5" />
</head>
<body style="overflow: scroll">
<form id="form1" runat="server">
<div>
<asp:PlaceHolder ID="container" runat="server" />
</div>
</form>
</body>
</html>

View File

@@ -1,40 +1,40 @@
using System;
using System.Web.UI;
using Umbraco.Core.IO;
namespace Umbraco.Web.UI.Umbraco.Dashboard
{
public partial class UserControlProxy : Pages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var path = Request.QueryString["ctrl"];
if (string.IsNullOrEmpty(path) == false)
{
path = IOHelper.FindFile(path);
try
{
var c = LoadControl(path);
container.Controls.Add(c);
}
catch (Exception ee)
{
container.Controls.Add(
new LiteralControl(
"<p class=\"umbracoErrorMessage\">Could not load control: '" + path +
"'. <br/><span class=\"guiDialogTiny\"><strong>Error message:</strong> " +
ee.ToString() + "</span></p>"));
}
}
}
}
}
using System;
using System.Web.UI;
using Umbraco.Core.IO;
namespace Umbraco.Web.UI.Umbraco.Dashboard
{
public partial class UserControlProxy : Pages.UmbracoEnsuredPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var path = Request.QueryString["ctrl"];
if (string.IsNullOrEmpty(path) == false)
{
path = IOHelper.FindFile(path);
try
{
var c = LoadControl(path);
container.Controls.Add(c);
}
catch (Exception ee)
{
container.Controls.Add(
new LiteralControl(
"<p class=\"umbracoErrorMessage\">Could not load control: '" + path +
"'. <br/><span class=\"guiDialogTiny\"><strong>Error message:</strong> " +
ee.ToString() + "</span></p>"));
}
}
}
}
}

View File

@@ -1,69 +1,114 @@
//------------------------------------------------------------------------------
// <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.Dashboard {
public partial class UserControlProxy {
/// <summary>
/// ClientLoader control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::Umbraco.Web.UI.JavaScript.UmbracoClientDependencyLoader ClientLoader;
/// <summary>
/// CssInclude1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.CssInclude CssInclude1;
/// <summary>
/// JsInclude1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude1;
/// <summary>
/// JsInclude4 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude4;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// container 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 container;
}
}
//------------------------------------------------------------------------------
// <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.Dashboard {
public partial class UserControlProxy {
/// <summary>
/// ClientLoader control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::umbraco.uicontrols.UmbracoClientDependencyLoader ClientLoader;
/// <summary>
/// CssInclude1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.CssInclude CssInclude1;
/// <summary>
/// JsInclude1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude1;
/// <summary>
/// JsInclude3 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude3;
/// <summary>
/// JsInclude4 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude4;
/// <summary>
/// JsInclude6 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude6;
/// <summary>
/// JsInclude11 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude11;
/// <summary>
/// JsInclude12 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude12;
/// <summary>
/// JsInclude2 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.JsInclude JsInclude2;
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// container 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 container;
}
}

View File

@@ -1,365 +0,0 @@
using System;
using System.Collections.Generic;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
using Umbraco.Core;
using Umbraco.Core.IO;
using Umbraco.Core.Models;
using Umbraco.Core.PropertyEditors;
using System.Linq;
using Umbraco.Web.UI.Pages;
using Umbraco.Core.Services;
using Umbraco.Web.Composing;
using Umbraco.Web._Legacy.Controls;
namespace Umbraco.Web.UI.Umbraco.Developer.Macros
{
public partial class EditMacro : UmbracoEnsuredPage
{
public EditMacro()
{
CurrentApp = Constants.Applications.Packages.ToString();
}
protected PlaceHolder Buttons;
protected Table MacroElements;
public TabPage InfoTabPage;
public TabPage Parameters;
private IMacro _macro;
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
_macro = Services.MacroService.GetById(Convert.ToInt32(Request.QueryString["macroID"]));
if (IsPostBack == false)
{
ClientTools
.SyncTree("-1," + _macro.Id, false);
PopulateFieldsOnLoad(_macro);
// Load elements from macro
MacroPropertyBind();
PopulatePartialViewFiles();
// Load usercontrols
PopulateUserControls(IOHelper.MapPath(SystemDirectories.UserControls));
userControlList.Items.Insert(0, new ListItem("Browse usercontrols on server...", string.Empty));
}
}
/// <summary>
/// Populates the control (textbox) values on page load
/// </summary>
/// <param name="macro"></param>
protected void PopulateFieldsOnLoad(IMacro macro)
{
macroName.Text = macro.Name;
macroAlias.Text = macro.Alias;
macroKey.Text = macro.Key.ToString();
cachePeriod.Text = macro.CacheDuration.ToInvariantString();
macroRenderContent.Checked = macro.DontRender == false;
macroEditor.Checked = macro.UseInEditor;
cacheByPage.Checked = macro.CacheByPage;
cachePersonalized.Checked = macro.CacheByMember;
macroUserControl.Text = macro.MacroType == MacroTypes.UserControl ? macro.MacroSource : null;
SelectedPartialView.Text = macro.MacroType == MacroTypes.PartialView ? macro.MacroSource : null;
}
/// <summary>
/// Sets the values on the Macro object from the values posted back before saving the macro
/// </summary>
protected void SetMacroValuesFromPostBack(IMacro macro, int macroCachePeriod, string userControlValue, string partialViewValue)
{
macro.UseInEditor = macroEditor.Checked;
macro.DontRender = macroRenderContent.Checked == false;
macro.CacheByPage = cacheByPage.Checked;
macro.CacheByMember = cachePersonalized.Checked;
macro.CacheDuration = macroCachePeriod;
macro.Alias = macroAlias.Text;
macro.Name = macroName.Text;
macro.MacroSource = !userControlValue.IsNullOrWhiteSpace() ? userControlValue : partialViewValue;
macro.MacroType = !userControlValue.IsNullOrWhiteSpace() ? MacroTypes.UserControl : !partialViewValue.IsNullOrWhiteSpace() ? MacroTypes.PartialView : MacroTypes.Unknown;
}
public void DeleteMacroProperty(object sender, EventArgs e)
{
var macroPropertyId = (HtmlInputHidden)((Control)sender).Parent.FindControl("macroPropertyID");
var property = _macro.Properties.Values.Single(x => x.Id == int.Parse(macroPropertyId.Value));
_macro.Properties.Remove(property);
Services.MacroService.Save(_macro);
MacroPropertyBind();
}
public void MacroPropertyBind()
{
macroProperties.DataSource = _macro.Properties.Values.OrderBy(x => x.SortOrder);
macroProperties.DataBind();
}
public object CheckNull(object test)
{
return Convert.IsDBNull(test) ? 0 : test;
}
protected IEnumerable<IDataEditor> GetMacroParameterEditors()
{
// we need to show the depracated ones for backwards compatibility
// FIXME not managing deprecated here?!
return Current.ParameterEditors;
}
public void macroPropertyCreate(object sender, EventArgs e)
{
//enable add validators
var val1 = (RequiredFieldValidator)((Control)sender).Parent.FindControl("RequiredFieldValidator1");
var val2 = (RequiredFieldValidator)((Control)sender).Parent.FindControl("RequiredFieldValidator4");
var val3 = (RequiredFieldValidator)((Control)sender).Parent.FindControl("RequiredFieldValidator5");
val1.Enabled = true;
val2.Enabled = true;
val3.Enabled = true;
Page.Validate();
if (Page.IsValid == false)
{
return;
}
var macroPropertyAliasNew = (TextBox)((Control)sender).Parent.FindControl("macroPropertyAliasNew");
var macroPropertyNameNew = (TextBox)((Control)sender).Parent.FindControl("macroPropertyNameNew");
var macroPropertyTypeNew = (DropDownList)((Control)sender).Parent.FindControl("macroPropertyTypeNew");
if (macroPropertyAliasNew.Text != Services.TextService.Localize("general/new") + " " + Services.TextService.Localize("general/alias"))
{
if (_macro.Properties.ContainsKey(macroPropertyAliasNew.Text.Trim()))
{
//don't continue
return;
}
_macro.Properties.Add(new MacroProperty(
macroPropertyAliasNew.Text.Trim(),
macroPropertyNameNew.Text.Trim(),
_macro.Properties.Values.Any() ? _macro.Properties.Values.Max(x => x.SortOrder) + 1 : 0,
macroPropertyTypeNew.SelectedValue));
Services.MacroService.Save(_macro);
MacroPropertyBind();
}
}
public bool macroIsVisible(object isChecked)
{
return Convert.ToBoolean(isChecked);
}
public void AddChooseList(object sender, EventArgs e)
{
if (IsPostBack == false)
{
var dropDown = (DropDownList)sender;
dropDown.Items.Insert(0, new ListItem("Choose...", string.Empty));
}
}
private void PopulateUserControls(string path)
{
var directoryInfo = new DirectoryInfo(path);
if (directoryInfo.Exists == false) return;
var rootDir = IOHelper.MapPath(SystemDirectories.UserControls);
foreach (var uc in directoryInfo.GetFiles("*.ascx"))
{
userControlList.Items.Add(
new ListItem(SystemDirectories.UserControls +
uc.FullName.Substring(rootDir.Length).Replace(IOHelper.DirSepChar, '/')));
}
foreach (var dir in directoryInfo.GetDirectories())
PopulateUserControls(dir.FullName);
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
EnsureChildControls();
}
protected override void CreateChildControls()
{
base.CreateChildControls();
// Tab setup
InfoTabPage = TabView1.NewTabPage("Macro Properties");
InfoTabPage.Controls.Add(Pane1);
InfoTabPage.Controls.Add(Pane1_2);
InfoTabPage.Controls.Add(Pane1_3);
InfoTabPage.Controls.Add(Pane1_4);
Parameters = TabView1.NewTabPage("Parameters");
Parameters.Controls.Add(Panel2);
//var save = TabView1.Menu.NewButton();
//save.ButtonType = MenuButtonType.Primary;
//save.Text = Services.TextService.Localize("save");
//save.ID = "save";
//save.Click += Save_Click;
}
void Save_Click(object sender, EventArgs e)
{
Page.Validate();
ClientTools
.SyncTree("-1," + _macro.Id.ToInvariantString(), true); //true forces the reload
var tempCachePeriod = cachePeriod.Text;
if (tempCachePeriod == string.Empty)
tempCachePeriod = "0";
SetMacroValuesFromPostBack(_macro, Convert.ToInt32(tempCachePeriod), macroUserControl.Text, SelectedPartialView.Text);
// save elements
// this is oh so completely broken
var aliases = new Dictionary<string, string>();
foreach (RepeaterItem item in macroProperties.Items)
{
var macroPropertyId = (HtmlInputHidden)item.FindControl("macroPropertyID");
var macroElementName = (TextBox)item.FindControl("macroPropertyName");
var macroElementAlias = (TextBox)item.FindControl("macroPropertyAlias");
var macroElementSortOrder = (TextBox)item.FindControl("macroPropertySortOrder");
var macroElementType = (DropDownList)item.FindControl("macroPropertyType");
var prop = _macro.Properties.Values.Single(x => x.Id == int.Parse(macroPropertyId.Value));
var sortOrder = 0;
int.TryParse(macroElementSortOrder.Text, out sortOrder);
var alias = macroElementAlias.Text.Trim();
if (prop.Alias != alias) // changing the alias
{
// use a temp alias to avoid collision if eg swapping aliases
var tempAlias = Guid.NewGuid().ToString("N").Substring(0, 8);
aliases[tempAlias] = alias;
alias = tempAlias;
}
_macro.Properties.UpdateProperty(
prop.Alias,
macroElementName.Text.Trim(),
sortOrder,
macroElementType.SelectedValue,
alias);
}
// now apply the real aliases, should not collide
foreach (var kvp in aliases)
_macro.Properties.UpdateProperty(kvp.Key, newAlias: kvp.Value);
Services.MacroService.Save(_macro);
ClientTools.ShowSpeechBubble(SpeechBubbleIcon.Save, "Macro saved", "");
MacroPropertyBind();
}
/// <summary>
/// Populate the drop down list for partial view files
/// </summary>
private void PopulatePartialViewFiles()
{
var partialsDir = IOHelper.MapPath(SystemDirectories.MvcViews + "/MacroPartials");
//get all the partials in the normal /MacroPartials folder
var foundMacroPartials = GetPartialViewFiles(partialsDir, partialsDir, SystemDirectories.MvcViews + "/MacroPartials");
//now try to find all of them int he App_Plugins/[PackageName]/Views/MacroPartials folder
var appPluginsFolder = new DirectoryInfo(IOHelper.MapPath(SystemDirectories.AppPlugins));
if (appPluginsFolder.Exists)
{
foreach (var d in appPluginsFolder.GetDirectories())
{
var viewsFolder = d.GetDirectories("Views");
if (viewsFolder.Any())
{
var macroPartials = viewsFolder.First().GetDirectories("MacroPartials");
if (macroPartials.Any())
{
foundMacroPartials = foundMacroPartials.Concat(
GetPartialViewFiles(macroPartials.First().FullName, macroPartials.First().FullName, SystemDirectories.AppPlugins + "/" + d.Name + "/Views/MacroPartials"));
}
}
}
}
PartialViewList.DataSource = foundMacroPartials;
PartialViewList.DataBind();
PartialViewList.Items.Insert(0, new ListItem("Browse partial view files on server...", string.Empty));
}
/// <summary>
/// Get the list of partial view files in the ~/Views/MacroPartials folder and in all
/// folders of ~/App_Plugins/[PackageName]/Views/MacroPartials
/// </summary>
/// <param name="orgPath"></param>
/// <param name="path"></param>
/// <param name="prefixVirtualPath"> </param>
/// <returns></returns>
private IEnumerable<string> GetPartialViewFiles(string orgPath, string path, string prefixVirtualPath)
{
var files = new List<string>();
var dirInfo = new DirectoryInfo(path);
// Populate subdirectories
var dirInfos = dirInfo.GetDirectories();
foreach (var dir in dirInfos)
{
files.AddRange(GetPartialViewFiles(orgPath, path + "/" + dir.Name, prefixVirtualPath));
}
var fileInfo = dirInfo.GetFiles("*.*");
files.AddRange(
fileInfo.Select(file =>
prefixVirtualPath.TrimEnd('/') + "/" + (path.Replace(orgPath, string.Empty).Trim('/') + "/" + file.Name).Trim('/')));
return files;
}
/// <summary>
/// Binds the drop down list but ensures that the macro param type exists if it doesn't the drop down will be left blank
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void MacroPropertiesOnItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var propertyTypes = (DropDownList)e.Item.FindControl("macroPropertyType");
var editors = GetMacroParameterEditors();
propertyTypes.DataSource = editors;
propertyTypes.DataBind();
var macroProp = (IMacroProperty)e.Item.DataItem;
if (editors.Any(x => x.Alias == macroProp.EditorAlias))
{
propertyTypes.SelectedValue = macroProp.EditorAlias;
}
}
}
}
}

View File

@@ -1,222 +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.Developer.Macros {
public partial class EditMacro {
/// <summary>
/// CssInclude1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::ClientDependency.Core.Controls.CssInclude CssInclude1;
/// <summary>
/// SelectedPartialView 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.TextBox SelectedPartialView;
/// <summary>
/// PartialViewList 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 PartialViewList;
/// <summary>
/// TabView1 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.TabView TabView1;
/// <summary>
/// Pane1 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 Pane1;
/// <summary>
/// macroPane control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable macroPane;
/// <summary>
/// macroName 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.TextBox macroName;
/// <summary>
/// macroAlias 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.TextBox macroAlias;
/// <summary>
/// macroAlias 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 macroKey;
/// <summary>
/// Pane1_2 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 Pane1_2;
/// <summary>
/// macroUserControl 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.TextBox macroUserControl;
/// <summary>
/// userControlList 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 userControlList;
/// <summary>
/// Pane1_3 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 Pane1_3;
/// <summary>
/// Table1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table1;
/// <summary>
/// macroEditor 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.CheckBox macroEditor;
/// <summary>
/// macroRenderContent 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.CheckBox macroRenderContent;
/// <summary>
/// Pane1_4 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 Pane1_4;
/// <summary>
/// Table3 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlTable Table3;
/// <summary>
/// cachePeriod 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.TextBox cachePeriod;
/// <summary>
/// cacheByPage 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.CheckBox cacheByPage;
/// <summary>
/// cachePersonalized 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.CheckBox cachePersonalized;
/// <summary>
/// Panel2 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 Panel2;
/// <summary>
/// macroProperties 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 macroProperties;
}
}

View File

@@ -1,232 +0,0 @@
<%@ Page Language="C#" ValidateRequest="false" AutoEventWireup="true" MasterPageFile="../../masterpages/umbracoPage.Master"
Title="Package and export content" CodeBehind="editPackage.aspx.cs" Inherits="umbraco.presentation.developer.packages._Default" %>
<%@ Register TagPrefix="cc2" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
<asp:Content ContentPlaceHolderID="head" runat="server">
<script type="text/javascript">
var updateMethod = "";
var contentOrMediaId = "";
var windowChooser;
var treePickerId = -1;
var prefix;
function addfileJs() {
if (document.getElementById("<%= packageFilePathNew.ClientID %>").value == '') {
alert("Please pick a file by clicking the folder Icon, before clicking the 'add' button");
}
}
</script>
</asp:Content>
<asp:Content ContentPlaceHolderID="body" runat="server">
<cc2:TabView ID="TabView1" runat="server" Width="552px" Height="392px"></cc2:TabView>
<cc2:Pane ID="Pane1" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_name" Text="Package Name">
<asp:TextBox ID="packageName" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator0" runat="server" EnableClientScript="false"
ControlToValidate="packageName">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_url" Text="Package Url">
<asp:TextBox ID="packageUrl" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" EnableClientScript="false"
ControlToValidate="packageUrl">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_version" Text="Package Version">
<asp:TextBox ID="packageVersion" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" EnableClientScript="false"
ControlToValidate="packageVersion">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_icon" Text="Package Icon URL">
<asp:TextBox ID="iconUrl" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_file" Text="Package file (.zip):">
<asp:Literal ID="packageUmbFile" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane5" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_umbracoVersion" Text="Umbraco Target Version">
<asp:TextBox ID="umbracoVersion" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" EnableClientScript="false"
ControlToValidate="umbracoVersion">*</asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="VersionValidator" runat="server" EnableClientScript="false"
ControlToValidate="umbracoVersion" ValidationExpression="^\d+\.\d+\.\d+$">Invalid version number (eg. 7.5.0)</asp:RegularExpressionValidator>
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane1_1" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_author" Text="Author Name" >
<asp:TextBox ID="packageAuthorName" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" EnableClientScript="false"
ControlToValidate="packageAuthorName">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_author_url" Text="Author url">
<asp:TextBox ID="packageAuthorUrl" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" EnableClientScript="false"
ControlToValidate="packageAuthorUrl">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane1_2" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_licens" Text="License Name:">
<asp:TextBox ID="packageLicenseName" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" EnableClientScript="false"
ControlToValidate="packageLicenseName">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
<cc2:PropertyPanel runat="server" ID="pp_license_url" Text="License url:">
<asp:TextBox ID="packageLicenseUrl" runat="server" Width="230px" CssClass="guiInputText"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" EnableClientScript="false"
ControlToValidate="packageLicenseUrl">*</asp:RequiredFieldValidator>
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane1_3" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_readme" Text="Readme">
<asp:TextBox ID="packageReadme" TextMode="MultiLine" Rows="10" Width="460px" CssClass="guiInputText"
runat="server"></asp:TextBox>
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2" runat="server">
<cc2:PropertyPanel runat="server" ID="pp_content" Text="Content">
<asp:PlaceHolder ID="content" runat="server"></asp:PlaceHolder>
<br />
<asp:CheckBox ID="packageContentSubdirs" runat="server" />
<asp:Label ID="packageContentSubdirsLabel" Text="Include all child nodes" AssociatedControlID="packageContentSubdirs" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_1" runat="server">
<cc2:PropertyPanel runat="server" Text="Document Types">
<asp:CheckBoxList ID="documentTypes" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_2" runat="server">
<cc2:PropertyPanel runat="server" Text="Templates">
<asp:CheckBoxList ID="templates" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_3" runat="server">
<cc2:PropertyPanel runat="server" Text="Stylesheets">
<asp:CheckBoxList ID="stylesheets" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_4" runat="server">
<cc2:PropertyPanel runat="server" Text="Macros">
<asp:CheckBoxList ID="macros" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_5" runat="server">
<cc2:PropertyPanel runat="server" Text="Languages">
<asp:CheckBoxList ID="languages" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_6" runat="server">
<cc2:PropertyPanel runat="server" Text="Dictionary Items">
<asp:CheckBoxList ID="dictionary" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane2_7" runat="server">
<cc2:PropertyPanel runat="server" Text="Data types">
<asp:CheckBoxList ID="cbl_datatypes" runat="server" />
</cc2:PropertyPanel>
</cc2:Pane>
<cc2:Pane ID="Pane3" runat="server">
<table border="0" style="width: 100%;">
<tr>
<td>
<strong style="color: Red;">Remember:</strong> .ascx files for your macros
will be added automaticly, but you will still need to add <strong>assemblies</strong>,
<strong>images</strong> and <strong>script files</strong> manually to the list below.
</td>
</tr>
</table>
</cc2:Pane>
<cc2:Pane ID="Pane3_1" runat="server">
<table border="0" style="width: 100%;">
<tr>
<td class="propertyHeader">
Absolute path to file (ie: /bin/umbraco.bin)
</td>
<td class="propertyHeader" />
</tr>
<asp:Repeater ID="packageFilesRepeater" runat="server">
<ItemTemplate>
<tr>
<td class="propertyContent">
<asp:TextBox runat="server" ID="packageFilePath" Enabled="false" Width="330px" CssClass="guiInputText"
Text='<%#DataBinder.Eval(Container, "DataItem")%>' />
</td>
<td class="propertyContent">
<asp:Button OnClick="deleteFileFromPackage" ID="delete" Text="Delete" runat="server"
CssClass="btn btn-danger" />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
<tr>
<td class="propertyContent">
<asp:TextBox runat="server" ID="packageFilePathNew" Width="330px" CssClass="guiInputText"
Text='' />
<a href="#" onclick="UmbClientMgr.openModalWindow('developer/packages/directoryBrowser.aspx?target=<%= packageFilePathNew.ClientID %>','Choose a file or a folder', true, 400, 500); return false;"
style="border: none;">
<i class="icon icon-folder"></i>
</a>
</td>
<td class="propertyContent">
<asp:Button ID="createNewFilePath" OnClientClick="addfileJs()" Text="Add" OnClick="addFileToPackage"
runat="server" CssClass="btn" />
</td>
</tr>
</table>
</cc2:Pane>
<cc2:Pane ID="Pane3_2" runat="server">
<table border="0" style="width: 100%;">
<tr>
<td class="propertyHeader" valign="top">
Load control after installation (ex: /usercontrols/installer.ascx)
</td>
</tr>
<tr>
<td class="propertyContent">
<asp:TextBox ID="packageControlPath" Width="330px" CssClass="guiInputText" runat="server" />
<a href="#" onclick="UmbClientMgr.openModalWindow('developer/packages/directoryBrowser.aspx?target=<%= packageControlPath.ClientID %>','Choose a file or a folder', true, 500, 400); return false;"
style="border: none;">
<i class="icon icon-folder"></i>
</a>
</td>
</tr>
</table>
</cc2:Pane>
<cc2:Pane ID="Pane4" runat="server">
<table border="0" style="width: 100%;">
<tr>
<td>
<p>
Here you can add custom installer / uninstaller events to perform certain tasks
during installation and uninstallation.
<br />
All actions are formed as a xml node, containing data for the action to be performed.
<a href="https://our.umbraco.org/documentation/Reference/Packaging/
" target="_blank">Package actions documentation</a>
</p>
<asp:CustomValidator ID="actionsVal" runat="server" OnServerValidate="validateActions"
ControlToValidate="tb_actions" ErrorMessage="Actions XML is malformed, either remove the text in the actions field or make sure it is correctly formed XML" />
</td>
</tr>
<tr>
<td class="propertyHeader">
Actions:
</td>
</tr>
<tr>
<td class="propertyContent">
<asp:TextBox ID="tb_actions" TextMode="MultiLine" Rows="14" Width="100%" CssClass="guiInputText"
runat="server"></asp:TextBox>
</td>
</tr>
</table>
</cc2:Pane>
<script type="text/javascript">
jQuery(document).ready(function () {
UmbClientMgr.appActions().bindSaveShortCut();
});
</script>
</asp:Content>

View File

@@ -1,6 +1,6 @@
<%@ Page Language="c#" MasterPageFile="../../masterpages/umbracoPage.Master"
AutoEventWireup="True" Inherits="umbraco.presentation.developer.packages.Installer" Trace="false" ValidateRequest="false" %>
<%@ Register TagPrefix="cc1" Namespace="Umbraco.Web._Legacy.Controls" Assembly="Umbraco.Web" %>
<%@ Register TagPrefix="cc1" Namespace="umbraco.uicontrols" Assembly="controls" %>
<asp:Content ContentPlaceHolderID="body" runat="server">
<cc1:UmbracoPanel ID="Panel1" Text="Install package" runat="server" Width="496px" Height="584px">

View File

@@ -1,3 +0,0 @@
<%@ Page Language="C#" AutoEventWireup="true" Inherits="umbraco.presentation.endPreview" %>
<!-- -->

View File

@@ -2,6 +2,6 @@ var app = angular.module('umbraco', [
'umbraco.directives',
'umbraco.install',
'ngCookies',
'ngSanitize',
'ngTouch'
]);
'ngMobile',
'ngSanitize'
]);

View File

@@ -1,8 +1,8 @@
<?xml version="1.0"?>
<configuration>
<system.webServer>
<staticContent>
<clientCache cacheControlCustom="private" cacheControlMode="UseMaxAge" cacheControlMaxAge="3.00:00:00" />
</staticContent>
</system.webServer>
<?xml version="1.0"?>
<configuration>
<system.webServer>
<staticContent>
<clientCache cacheControlCustom="private" cacheControlMode="UseMaxAge" cacheControlMaxAge="3.00:00:00" />
</staticContent>
</system.webServer>
</configuration>

View File

@@ -1,2 +1,2 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="umbraco.aspx.cs" Inherits="Umbraco.Web.UI.Umbraco.umbraco" %>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="umbraco.aspx.cs" Inherits="Umbraco.Web.UI.Umbraco.umbraco" %>

View File

@@ -1,19 +1,19 @@
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.Umbraco
{
public partial class umbraco : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", UmbracoConfig.For.GlobalSettings().Path);
}
}
}
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.Umbraco
{
public partial class umbraco : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", GlobalSettings.Path);
}
}
}

View File

@@ -1,15 +1,15 @@
//------------------------------------------------------------------------------
// <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 {
public partial class umbraco {
}
}
//------------------------------------------------------------------------------
// <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 {
public partial class umbraco {
}
}

View File

@@ -1,4 +1,4 @@
@model dynamic
@using Umbraco.Web.Templates
@Html.Raw(TemplateUtilities.ParseInternalLinks(Model.value.ToString(), UmbracoContext.Current.UrlProvider))
@Html.Raw(TemplateUtilities.ParseInternalLinks(Model.value.ToString()))

View File

@@ -1,74 +1,65 @@
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Umbraco.Web" />
<add namespace="Umbraco.Core" />
<add namespace="Umbraco.Core.Models" />
<add namespace="Umbraco.Core.Models.PublishedContent" />
<add namespace="Umbraco.Web.Mvc" />
<add namespace="Examine" />
<add namespace="Umbraco.Web.PublishedModels" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.webServer>
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
<system.web>
<compilation targetFramework="4.7.2">
<assemblies>
<add assembly="System.Web.Mvc, Version=5.2.6.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<!--
Views are compiled by the Microsoft.CodeDom.Providers.DotNetCompilerPlatform which uses the Roslyn compiler
from ~/bin/roslyn to expose an ICodeProvider implementation to System.CodeDom.
For instance, starting with package 1.4.0 (which contains version 1.2.2.0) System.Collections.Immutable
lists netstandard2.0 as a supported target, whereas package 1.3.1 only listed net45. So now, when
installing, NuGet picks the netstandard2.0 version, thus introducing a dependency to netstandard2.0.
Somehow, transitive dependencies are not working correctly, and either (a) NuGet fails to properly
register this dependency, or (b) when reference assemblies are gathered before compiling views, this
dependency is missed. In any case, the result is that the ICodeProvider is passed a list of referenced
assemblies that is missing netstandard.
It may be a mix of both. NuGet registers the dependency well enough, that we can actually build the
whole application - but it is not doing something that is required in order to have netstandard
being a dependency when building views.
See also: https://stackoverflow.com/questions/50165910
Funny enough, the CSharpCompiler already explicitly adds System.Runtime as a referenced assembly,
with a comment mentioning an issue. But it's not adding netstandard. So, for the time being, to be sure,
we are adding both here.
-->
<add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" />
</assemblies>
</compilation>
</system.web>
</configuration>
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Umbraco.Web" />
<add namespace="Umbraco.Core" />
<add namespace="Umbraco.Core.Models" />
<add namespace="Umbraco.Web.Mvc" />
<add namespace="umbraco" />
<add namespace="Examine" />
<add namespace="Umbraco.Web.PublishedContentModels" />
</namespaces>
</pages>
</system.web.webPages.razor>
<appSettings>
<add key="webpages:Enabled" value="false" />
</appSettings>
<system.web>
<httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
<!--
Enabling request validation in view pages would cause validation to occur
after the input has already been processed by the controller. By default
MVC performs request validation before a controller processes the input.
To change this behavior apply the ValidateInputAttribute to a
controller or action.
-->
<pages
validateRequest="false"
pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<controls>
<add assembly="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
</controls>
</pages>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
</system.webServer>
</configuration>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<NotFoundHandlers>
<notFound assembly="Umbraco.Web" type="SearchForAlias" />
<notFound assembly="Umbraco.Web" type="SearchForTemplate"/>
<notFound assembly="Umbraco.Web" type="SearchForProfile"/>
<notFound assembly="Umbraco.Web" type="handle404"/>
<?xml version="1.0" encoding="utf-8" ?>
<NotFoundHandlers>
<notFound assembly="umbraco" type="SearchForAlias" />
<notFound assembly="umbraco" type="SearchForTemplate"/>
<notFound assembly="umbraco" type="SearchForProfile"/>
<notFound assembly="umbraco" type="handle404"/>
</NotFoundHandlers>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<NotFoundHandlers>
<notFound assembly="Umbraco.Web" type="SearchForAlias" />
<notFound assembly="Umbraco.Web" type="SearchForTemplate"/>
<notFound assembly="Umbraco.Web" type="SearchForProfile"/>
<notFound assembly="Umbraco.Web" type="handle404"/>
<?xml version="1.0" encoding="utf-8" ?>
<NotFoundHandlers>
<notFound assembly="umbraco" type="SearchForAlias" />
<notFound assembly="umbraco" type="SearchForTemplate"/>
<notFound assembly="umbraco" type="SearchForProfile"/>
<notFound assembly="umbraco" type="handle404"/>
</NotFoundHandlers>

View File

@@ -21,7 +21,7 @@
"type": "intro"
},
{
"element": "[data-element='sections']",
"element": "#applications",
"elementPreventClick": true,
"title": "Main Menu",
"content": "This is the main menu in Umbraco backoffice. Here you can navigate between the different sections, see your user profile and open the help drawer.",
@@ -41,18 +41,18 @@
"content": "<p>This is the <b>Tree</b> and it is the main navigation inside a section.</p><p>In the Content section the tree is called the <b>Content tree</b> and here you can navigate the content of your website.</p>"
},
{
"element": "[data-element='dashboard']",
"element": "[data-element='editor-container']",
"elementPreventClick": true,
"title": "Dashboards",
"content": "<p>A dashboard is the main view you are presented with when entering a section within the backoffice, and can be used to show valuable information to the users of the system.</p><p>Notice that some sections have multiple dashboards.</p>"
},
{
"element": "[data-element='global-search']",
"element": "[data-element='global-search-field']",
"title": "Search",
"content": "The search allows you to quickly find whatever you're looking for across sections within Umbraco."
},
{
"element": "[data-element='global-user']",
"element": "#applications [data-element='section-user']",
"title": "User profile",
"content": "Now click on your <b>user avatar</b> to open the user profile dialog.",
"event": "click",
@@ -71,7 +71,7 @@
"event": "click"
},
{
"element": "[data-element='global-help']",
"element": "#applications [data-element='section-help']",
"title": "Help",
"content": "If you ever find yourself in trouble click here to open the Help drawer.",
"event": "click",
@@ -144,8 +144,8 @@
},
{
"element": "[data-element='group-add']",
"title": "Add group",
"content": "Group are used to organize properties on content in the Content section. Click <b>Add Group</b> to add a group.",
"title": "Add tab",
"content": "Tabs are used to organize properties on content in the Content section. Click <b>Add new tab</b> to add a tab.",
"event": "click"
},
{
@@ -161,48 +161,48 @@
"event": "click"
},
{
"element": "[data-element='editor-property-settings'] [data-element='property-name']",
"element": "[data-element~='overlay-property-settings'] [data-element='property-name']",
"title": "Name the property",
"content": "Enter <code>Welcome Text</code> as the name for the property.",
"view": "propertyname"
},
{
"element": "[data-element~='editor-property-settings'] [data-element='property-description']",
"element": "[data-element~='overlay-property-settings'] [data-element='property-description']",
"title": "Enter a description",
"content": "<p>A description will help your editor fill in the right content.</p><p>Enter a description for the property editor. It could be:<br/> <pre>Write a nice introduction text so the visitors feel welcome</pre></p>"
},
{
"element": "[data-element~='editor-property-settings'] [data-element='editor-add']",
"element": "[data-element~='overlay-property-settings'] [data-element='editor-add']",
"title": "Add editor",
"content": "When you add an editor you choose what the input method for this property will be. Click <b>Add editor</b> to open the editor picker dialog.",
"event": "click"
},
{
"element": "[data-element~='editor-data-type-picker']",
"element": "[data-element~='overlay-editor-picker']",
"elementPreventClick": true,
"title": "Editor picker",
"content": "<p>In the editor picker dialog we can pick one of the many built-in editors.</p><p><em>You can choose from preconfigured data types (Reuse) or create a new configuration (Available editors)</em>.</p>"
},
{
"element": "[data-element~='editor-data-type-picker'] [data-element='editor-Textarea']",
"element": "[data-element~='overlay-editor-picker'] [data-element='editor-Textarea']",
"title": "Select editor",
"content": "Select the <b>Textarea</b> editor. This will add a textarea to the Welcome Text property.",
"event": "click"
},
{
"element": "[data-element~='editor-data-type-settings']",
"element": "[data-element~='overlay-editor-settings']",
"elementPreventClick": true,
"title": "Editor settings",
"content": "Each property editor can have individual settings. For the textarea editor you can set a character limit but in this case it is not needed."
},
{
"element": "[data-element~='editor-data-type-settings'] [data-element='button-submit']",
"element": "[data-element~='overlay-editor-settings'] [data-element='button-overlaySubmit']",
"title": "Save editor",
"content": "Click <b>Submit</b> to save the changes.",
"event": "click"
},
{
"element": "[data-element~='editor-property-settings'] [data-element='button-submit']",
"element": "[data-element~='overlay-property-settings'] [data-element='button-overlaySubmit']",
"title": "Add property to document type",
"content": "Click <b>Submit</b> to add the property to the document type.",
"event": "click"
@@ -280,8 +280,8 @@
},
{
"element": "[data-element='editor-content'] [data-element='button-saveAndPublish']",
"title": "Publish",
"content": "<p>Now click the <b>Publish</b> button to publish your changes.</p>",
"title": "Save and Publish",
"content": "<p>Now click the <b>Save and publish</b> button to save and publish your changes.</p>",
"event": "click"
}
]
@@ -331,7 +331,7 @@
{
"element": "[data-element='editor-templates'] [data-element='code-editor']",
"title": "Edit template",
"content": "<p>The template can be edited here or in your favorite code editor.</p><p>To render the field from the document type add the following to the template:<br/> <pre>&#60;h1&#62;@Model.Name&#60;/h1&#62;<br>&#60;p&#62;@Model.WelcomeText&#60;/p&#62;</pre></p>"
"content": "<p>The template can be edited here or in your favorite code editor.</p><p>To render the field from the document type add the following to the template:<br/> <pre>&#60;h1&#62;@Model.Content.Name&#60;/h1&#62;<br>&#60;p&#62;@Model.Content.WelcomeText&#60;/p&#62;</pre></p>"
},
{
"element": "[data-element='editor-templates'] [data-element='button-save']",
@@ -376,9 +376,9 @@
"eventElement": "#tree [data-element='tree-item-Home'] a.umb-tree-item__label"
},
{
"element": "[data-element='editor-content'] [data-element='sub-view-info']",
"element": "[data-element='editor-content'] [data-element='tab-_umb_infoTab']",
"title": "Info",
"content": "<p>Under the Info-app you will find the default information about a content item.</p>",
"content": "<p>Under the info tab you will find the default information about a content item.</p>",
"event": "click"
},
{
@@ -467,7 +467,7 @@
"content": "<p>You will also find other details about the image, like the size.</p><p>Media items work in much the same way as content. So you can add extra properties to an image by creating or editing the <b>Media types</b> in the Settings section.</p>"
},
{
"element": "[data-element='editor-media'] [data-element='sub-view-info']",
"element": "[data-element='editor-media'] [data-element='tab-_umb_infoTab']",
"title": "Info",
"content": "Like the content section you can also find default information about the media item. You will find these under the info tab.",
"event": "click"

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<BaseRestExtensions>
<!--
<extension alias="member" type="Umbraco.Web.BaseRest.MemberRest,umbraco">
<method name="Login" allowAll="true" />
<method name="Logout" allowAll="true" />
<method name="GetCurrentMemberId" allowAll="true" />
<method name="GetCurrentMember" allowAll="true" />
<method name="GetCurrentMemberAsXml" allowAll="true" />
<method name="SetProperty" allowAll="false" />
</extension>
-->
<!--
<extension alias="umbBlog" type="Runway.Blog.Library.Base,Runway.Blog">
<method name="CreateComment" returnXml="false" allowAll="true" />
<method name="GetGravatarImage" returnXml="false" allowAll="true" />
</extension>
-->
</BaseRestExtensions>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<BaseRestExtensions>
<extension alias="member" type="Umbraco.Web.BaseRest.MemberRest,umbraco">
<method name="Login" allowAll="true" />
<method name="Logout" allowAll="true" />
<method name="GetCurrentMemberId" allowAll="true" />
<method name="GetCurrentMember" allowAll="true" />
<method name="GetCurrentMemberAsXml" allowAll="true" />
<method name="SetProperty" allowAll="false" />
</extension>
<!--
<extension alias="umbBlog" type="Runway.Blog.Library.Base,Runway.Blog">
<method name="CreateComment" returnXml="false" allowAll="true" />
<method name="GetGravatarImage" returnXml="false" allowAll="true" />
</extension>
-->
</BaseRestExtensions>

View File

@@ -1,66 +1,66 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
For full details of the client dependency framework, visit
https://github.com/Shandem/ClientDependency
It manages CSS and JS file dependencies per control without having to worry about duplicates.
It also manages the combination, compression and minification of all JS & CSS files.
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
-->
<clientDependency version="1" fileDependencyExtensions=".js,.css" loggerType="Umbraco.Web.UI.CdfLogger, Umbraco.Web">
<!--
This section is used for Web Forms only, the enableCompositeFiles="true" is optional and by default is set to true.
The LoaderControlProvider is set to default, the javascriptPlaceHolderId, cssPlaceHolderId attributes are optional and default to what is listed below. If using
this provider, then you must specify both PlaceHolder controls on your page in order to render the JS/CSS.
-->
<fileRegistration defaultProvider="PlaceHolderProvider">
<providers>
<add name="PageHeaderProvider" type="ClientDependency.Core.FileRegistration.Providers.PageHeaderProvider, ClientDependency.Core" />
<add name="LazyLoadProvider" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadProvider, ClientDependency.Core" />
<add name="LoaderControlProvider" type="ClientDependency.Core.FileRegistration.Providers.LoaderControlProvider, ClientDependency.Core" />
<add name="PlaceHolderProvider" type="ClientDependency.Core.FileRegistration.Providers.PlaceHolderProvider, ClientDependency.Core" javascriptPlaceHolderId="JavaScriptPlaceHolder" cssPlaceHolderId="CssPlaceHolder" />
</providers>
</fileRegistration>
<!-- This section is used for MVC only -->
<mvc defaultRenderer="StandardRenderer">
<renderers>
<add name="StandardRenderer" type="ClientDependency.Core.FileRegistration.Providers.StandardRenderer, ClientDependency.Core" />
<add name="LazyLoadRenderer" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadRenderer, ClientDependency.Core" />
</renderers>
</mvc>
<!--
The composite file section configures the compression/combination/minification of files.
You can enable/disable minification of either JS/CSS files and you can enable/disable the
persistence of composite files. By default, minification and persistence is enabled. Persisting files
means that the system is going to save the output of the compressed/combined/minified files
to disk so that on any subsequent request (when output cache expires) that these files don't have
to be recreated again and will be based on the persisted file on disk. This saves on processing time.
-->
<compositeFiles defaultProvider="defaultFileProcessingProvider" compositeFileHandlerPath="~/DependencyHandler.axd">
<fileProcessingProviders>
<add name="CompositeFileProcessor"
type="ClientDependency.Core.CompositeFiles.Providers.CompositeFileProcessingProvider, ClientDependency.Core"
enableCssMinify="true"
enableJsMinify="true"
persistFiles="true"
compositeFilePath="~/App_Data/TEMP/ClientDependency"
bundleDomains="localhost:123456"
urlType="Base64QueryStrings"
pathUrlFormat="{dependencyId}/{version}/{type}"/>
</fileProcessingProviders>
<!-- A file map provider stores references to dependency files by an id to be used in the handler URL when using the MappedId Url type -->
<fileMapProviders>
<add name="XmlFileMap"
type="ClientDependency.Core.CompositeFiles.Providers.XmlFileMapper, ClientDependency.Core"
mapPath="~/App_Data/TEMP/ClientDependency" />
</fileMapProviders>
</compositeFiles>
</clientDependency>
<?xml version="1.0" encoding="utf-8"?>
<!--
For full details of the client dependency framework, visit
https://github.com/Shandem/ClientDependency
It manages CSS and JS file dependencies per control without having to worry about duplicates.
It also manages the combination, compression and minification of all JS & CSS files.
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
-->
<clientDependency version="1" fileDependencyExtensions=".js,.css" loggerType="Umbraco.Web.UI.CdfLogger, umbraco">
<!--
This section is used for Web Forms only, the enableCompositeFiles="true" is optional and by default is set to true.
The LoaderControlProvider is set to default, the javascriptPlaceHolderId, cssPlaceHolderId attributes are optional and default to what is listed below. If using
this provider, then you must specify both PlaceHolder controls on your page in order to render the JS/CSS.
-->
<fileRegistration defaultProvider="PlaceHolderProvider">
<providers>
<add name="PageHeaderProvider" type="ClientDependency.Core.FileRegistration.Providers.PageHeaderProvider, ClientDependency.Core" />
<add name="LazyLoadProvider" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadProvider, ClientDependency.Core" />
<add name="LoaderControlProvider" type="ClientDependency.Core.FileRegistration.Providers.LoaderControlProvider, ClientDependency.Core" />
<add name="PlaceHolderProvider" type="ClientDependency.Core.FileRegistration.Providers.PlaceHolderProvider, ClientDependency.Core" javascriptPlaceHolderId="JavaScriptPlaceHolder" cssPlaceHolderId="CssPlaceHolder" />
</providers>
</fileRegistration>
<!-- This section is used for MVC only -->
<mvc defaultRenderer="StandardRenderer">
<renderers>
<add name="StandardRenderer" type="ClientDependency.Core.FileRegistration.Providers.StandardRenderer, ClientDependency.Core" />
<add name="LazyLoadRenderer" type="ClientDependency.Core.FileRegistration.Providers.LazyLoadRenderer, ClientDependency.Core" />
</renderers>
</mvc>
<!--
The composite file section configures the compression/combination/minification of files.
You can enable/disable minification of either JS/CSS files and you can enable/disable the
persistence of composite files. By default, minification and persistence is enabled. Persisting files
means that the system is going to save the output of the compressed/combined/minified files
to disk so that on any subsequent request (when output cache expires) that these files don't have
to be recreated again and will be based on the persisted file on disk. This saves on processing time.
-->
<compositeFiles defaultProvider="defaultFileProcessingProvider" compositeFileHandlerPath="~/DependencyHandler.axd">
<fileProcessingProviders>
<add name="CompositeFileProcessor"
type="ClientDependency.Core.CompositeFiles.Providers.CompositeFileProcessingProvider, ClientDependency.Core"
enableCssMinify="true"
enableJsMinify="true"
persistFiles="true"
compositeFilePath="~/App_Data/TEMP/ClientDependency"
bundleDomains="localhost:123456"
urlType="Base64QueryStrings"
pathUrlFormat="{dependencyId}/{version}/{type}"/>
</fileProcessingProviders>
<!-- A file map provider stores references to dependency files by an id to be used in the handler URL when using the MappedId Url type -->
<fileMapProviders>
<add name="XmlFileMap"
type="ClientDependency.Core.CompositeFiles.Providers.XmlFileMapper, ClientDependency.Core"
mapPath="~/App_Data/TEMP/ClientDependency" />
</fileMapProviders>
</compositeFiles>
</clientDependency>

View File

@@ -1,115 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<dashBoard>
<section alias="StartupSettingsDashboardSection">
<areas>
<area>settings</area>
</areas>
<tab caption="Welcome">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/settings/settingsdashboardintro.html
</control>
</tab>
<tab caption="Examine Management">
<control>
views/dashboard/settings/examinemanagement.html
</control>
</tab>
<tab caption="Published Status">
<control>
views/dashboard/settings/publishedstatus.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupDeveloperDashboardSection">
<areas>
<area>developer</area>
</areas>
</section>
<section alias="StartupMediaDashboardSection">
<areas>
<area>media</area>
</areas>
<tab caption="Content">
<control showOnce="false" addPanel="false" panelCaption="">
views/dashboard/media/mediafolderbrowser.html
</control>
</tab>
</section>
<section alias="StartupDashboardSection">
<access>
<deny>translator</deny>
</access>
<areas>
<area>content</area>
</areas>
<tab caption="Get Started">
<access>
<grant>admin</grant>
</access>
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/default/startupdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupMemberDashboardSection">
<areas>
<area>member</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/members/membersdashboardvideos.html
</control>
</tab>
</section>
<section alias="UmbracoModelsBuilder">
<areas>
<area>developer</area>
</areas>
<tab caption="Models Builder">
<control>
/App_Plugins/ModelsBuilder/modelsbuilder.htm
</control>
</tab>
</section>
<section alias="UmbracoHealthCheck">
<areas>
<area>settings</area>
</areas>
<tab caption="Health Check">
<control>
views/dashboard/settings/healthcheck.html
</control>
</tab>
</section>
<section alias="RedirectUrlManagement">
<areas>
<area>content</area>
</areas>
<tab caption="Redirect URL Management">
<control>
views/dashboard/content/redirecturls.html
</control>
</tab>
</section>
</dashBoard>
<?xml version="1.0" encoding="utf-8"?>
<dashBoard>
<section alias="StartupSettingsDashboardSection">
<areas>
<area>settings</area>
</areas>
<tab caption="Welcome">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/settings/settingsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupDeveloperDashboardSection">
<areas>
<area>developer</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/developer/developerdashboardvideos.html
</control>
</tab>
<tab caption="Examine Management">
<control>
views/dashboard/developer/examinemanagement.html
</control>
</tab>
</section>
<section alias="StartupMediaDashboardSection">
<areas>
<area>media</area>
</areas>
<tab caption="Content">
<control showOnce="false" addPanel="false" panelCaption="">
views/dashboard/media/mediafolderbrowser.html
</control>
</tab>
</section>
<section alias="StartupDashboardSection">
<access>
<deny>translator</deny>
</access>
<areas>
<area>content</area>
</areas>
<tab caption="Get Started">
<access>
<grant>admin</grant>
</access>
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/default/startupdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupMemberDashboardSection">
<areas>
<area>member</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/members/membersdashboardvideos.html
</control>
</tab>
</section>
<section alias="UmbracoModelsBuilder">
<areas>
<area>developer</area>
</areas>
<tab caption="Models Builder">
<control>
/App_Plugins/ModelsBuilder/modelsbuilder.htm
</control>
</tab>
</section>
<section alias="UmbracoHealthCheck">
<areas>
<area>developer</area>
</areas>
<tab caption="Health Check">
<control>
views/dashboard/developer/healthcheck.html
</control>
</tab>
</section>
<section alias="RedirectUrlManagement">
<areas>
<area>content</area>
</areas>
<tab caption="Redirect URL Management">
<control>
views/dashboard/developer/redirecturls.html
</control>
</tab>
</section>
</dashBoard>

View File

@@ -1,117 +1,122 @@
<?xml version="1.0" encoding="utf-8"?>
<dashBoard>
<section alias="StartupSettingsDashboardSection">
<areas>
<area>settings</area>
</areas>
<tab caption="Welcome">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/settings/settingsdashboardintro.html
</control>
</tab>
<tab caption="Examine Management">
<control>
views/dashboard/settings/examinemanagement.html
</control>
</tab>
<tab caption="Published Status">
<control>
views/dashboard/settings/publishedstatus.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupMediaDashboardSection">
<areas>
<area>media</area>
</areas>
<tab caption="Content">
<control showOnce="false" addPanel="false" panelCaption="">
views/dashboard/media/mediafolderbrowser.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupDashboardSection">
<access>
<deny>translator</deny>
</access>
<areas>
<area>content</area>
</areas>
<tab caption="Get Started">
<access>
<grant>admin</grant>
</access>
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/default/startupdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupMemberDashboardSection">
<areas>
<area>member</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/members/membersdashboardvideos.html
</control>
</tab>
</section>
<section alias="contour">
<areas>
<area>contour</area>
</areas>
<tab caption="Dashboard">
<control>plugins/umbracocontour/formsdashboard.ascx</control>
</tab>
</section>
<section alias="UmbracoHealthCheck">
<areas>
<area>settings</area>
</areas>
<tab caption="Health Check">
<control>
views/dashboard/settings/healthcheck.html
</control>
</tab>
</section>
<section alias="RedirectUrlManagement">
<areas>
<area>content</area>
</areas>
<tab caption="Redirect URL Management">
<control>
views/dashboard/content/redirecturls.html
</control>
</tab>
</section>
<section alias="UmbracoModelsBuilder">
<areas>
<area>settings</area>
</areas>
<tab caption="Models Builder">
<control>
/App_Plugins/ModelsBuilder/modelsbuilder.htm
</control>
</tab>
</section>
</dashBoard>
<?xml version="1.0" encoding="utf-8"?>
<dashBoard>
<section alias="StartupSettingsDashboardSection">
<areas>
<area>settings</area>
</areas>
<tab caption="Welcome">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/settings/settingsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupDeveloperDashboardSection">
<areas>
<area>developer</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/developer/developerdashboardvideos.html
</control>
</tab>
<tab caption="Examine Management">
<control>
views/dashboard/developer/examinemanagement.html
</control>
</tab>
</section>
<section alias="StartupMediaDashboardSection">
<areas>
<area>media</area>
</areas>
<tab caption="Content">
<control showOnce="false" addPanel="false" panelCaption="">
views/dashboard/media/mediafolderbrowser.html
</control>
</tab>
</section>
<section alias="StartupFormsDashboardSection">
<areas>
<area>forms</area>
</areas>
<tab caption="Install Umbraco Forms">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/forms/formsdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupDashboardSection">
<access>
<deny>translator</deny>
</access>
<areas>
<area>content</area>
</areas>
<tab caption="Get Started">
<access>
<grant>admin</grant>
</access>
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/default/startupdashboardintro.html
</control>
</tab>
</section>
<section alias="StartupMemberDashboardSection">
<areas>
<area>member</area>
</areas>
<tab caption="Get Started">
<control showOnce="true" addPanel="true" panelCaption="">
views/dashboard/members/membersdashboardvideos.html
</control>
</tab>
</section>
<section alias="contour">
<areas>
<area>contour</area>
</areas>
<tab caption="Dashboard">
<control>plugins/umbracocontour/formsdashboard.ascx</control>
</tab>
</section>
<section alias="UmbracoHealthCheck">
<areas>
<area>developer</area>
</areas>
<tab caption="Health Check">
<control>
views/dashboard/developer/healthcheck.html
</control>
</tab>
</section>
<section alias="RedirectUrlManagement">
<areas>
<area>content</area>
</areas>
<tab caption="Redirect URL Management">
<control>
views/dashboard/developer/redirecturls.html
</control>
</tab>
</section>
<section alias="UmbracoModelsBuilder">
<areas>
<area>developer</area>
</areas>
<tab caption="Models Builder">
<control>
/App_Plugins/ModelsBuilder/modelsbuilder.htm
</control>
</tab>
</section>
</dashBoard>

View File

@@ -1,134 +1,134 @@
<?xml version="1.0"?>
<embed>
<!-- Flickr Settings-->
<provider name="Flickr" type="Umbraco.Web.Media.EmbedProviders.OEmbedPhoto, Umbraco.Web">
<urlShemeRegex><![CDATA[flickr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.flickr.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- SlideShare Settings -->
<provider name="SlideShare" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, Umbraco.Web">
<urlShemeRegex><![CDATA[slideshare\.net/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.slideshare.net/api/oembed/2]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Kickstarter Settings-->
<provider name="Kickstarter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[kickstarter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.kickstarter.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Getty Images Settings-->
<provider name="GettyImages" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[gty\.im/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://embed.gettyimages.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Poll Everywhere Settings -->
<provider name="PollEverywhere" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[polleverywhere\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.polleverywhere.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Poll Daddy Settings -->
<provider name="PollDaddy" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[polldaddy\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://polldaddy.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- IFTTT Settings -->
<provider name="IFTTT" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[ifttt\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ifttt.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Instagram Settings -->
<provider name="Instagram" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[instagram\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://api.instagram.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Issuu Settings-->
<provider name="Issuu" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[issuu.com/(?:.*)/docs]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://issuu.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">json</param>
</requestParams>
</provider>
<!-- Rdio Settings -->
<provider name="Rdio" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[rdio\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.rdio.com/api/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- SoundCloud Settings -->
<provider name="SoundCloud" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, Umbraco.Web">
<urlShemeRegex><![CDATA[soundcloud\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://soundcloud.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Youtube Settings -->
<provider name="Youtube" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[youtu(?:\.be|be\.com)/(?:(.*)v(/|=)|(.*/)?)([a-zA-Z0-9-_]+)]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://www.youtube.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="iframe">1</param>
<param name="format">xml</param>
<param name="scheme">https</param>
</requestParams>
</provider>
<!-- StreamDotUmbracoDotCom -->
<provider name="StreamDotUmbracoDotCom" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[stream\.umbraco\.org/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://stream.umbraco.org/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Daily Motion -->
<provider name="DailyMotion" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[dailymotion\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.dailymotion.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Hulu -->
<provider name="Hulu" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[hulu\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.hulu.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Vimeo -->
<provider name="Vimeo" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[vimeo\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://vimeo.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Ted -->
<provider name="Ted" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[ted\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ted.com/talks/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Screenr Settings -->
<provider name="Screenr" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web" supportsDimensions="False">
<urlShemeRegex><![CDATA[screenr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.screenr.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Twitgoo Settings , not an OEmbed one -->
<provider name="Twitgoo" type="Umbraco.Web.Media.EmbedProviders.Twitgoo, Umbraco.Web">
<urlShemeRegex><![CDATA[twitgoo\.com/]]></urlShemeRegex>
</provider>
<!-- Twitter Settings -->
<provider name="Twitter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[twitter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://publish.twitter.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
</requestParams>
</provider>
</embed>
<?xml version="1.0"?>
<embed>
<!-- Flickr Settings-->
<provider name="Flickr" type="Umbraco.Web.Media.EmbedProviders.OEmbedPhoto, umbraco">
<urlShemeRegex><![CDATA[flickr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.flickr.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- SlideShare Settings -->
<provider name="SlideShare" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, umbraco">
<urlShemeRegex><![CDATA[slideshare\.net/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.slideshare.net/api/oembed/2]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Kickstarter Settings-->
<provider name="Kickstarter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[kickstarter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.kickstarter.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Getty Images Settings-->
<provider name="GettyImages" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[gty\.im/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://embed.gettyimages.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Poll Everywhere Settings -->
<provider name="PollEverywhere" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[polleverywhere\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.polleverywhere.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Poll Daddy Settings -->
<provider name="PollDaddy" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[polldaddy\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://polldaddy.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- IFTTT Settings -->
<provider name="IFTTT" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[ifttt\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ifttt.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Instagram Settings -->
<provider name="Instagram" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[instagram\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://api.instagram.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Issuu Settings-->
<provider name="Issuu" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[issuu.com/(?:.*)/docs]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://issuu.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">json</param>
</requestParams>
</provider>
<!-- Rdio Settings -->
<provider name="Rdio" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[rdio\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.rdio.com/api/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- SoundCloud Settings -->
<provider name="SoundCloud" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, umbraco">
<urlShemeRegex><![CDATA[soundcloud\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://soundcloud.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Youtube Settings -->
<provider name="Youtube" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[youtu(?:\.be|be\.com)/(?:(.*)v(/|=)|(.*/)?)([a-zA-Z0-9-_]+)]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://www.youtube.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="iframe">1</param>
<param name="format">xml</param>
<param name="scheme">https</param>
</requestParams>
</provider>
<!-- StreamDotUmbracoDotCom -->
<provider name="StreamDotUmbracoDotCom" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[stream\.umbraco\.org/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://stream.umbraco.org/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Daily Motion -->
<provider name="DailyMotion" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[dailymotion\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.dailymotion.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Hulu -->
<provider name="Hulu" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[hulu\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.hulu.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Vimeo -->
<provider name="Vimeo" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[vimeo\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://vimeo.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Ted -->
<provider name="Ted" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[ted\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ted.com/talks/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Screenr Settings -->
<provider name="Screenr" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco" supportsDimensions="False">
<urlShemeRegex><![CDATA[screenr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.screenr.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Twitgoo Settings , not an OEmbed one -->
<provider name="Twitgoo" type="Umbraco.Web.Media.EmbedProviders.Twitgoo, umbraco">
<urlShemeRegex><![CDATA[twitgoo\.com/]]></urlShemeRegex>
</provider>
<!-- Twitter Settings -->
<provider name="Twitter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[twitter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://publish.twitter.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
</requestParams>
</provider>
</embed>

View File

@@ -1,134 +1,134 @@
<?xml version="1.0"?>
<embed>
<!-- Flickr Settings-->
<provider name="Flickr" type="Umbraco.Web.Media.EmbedProviders.OEmbedPhoto, Umbraco.Web">
<urlShemeRegex><![CDATA[flickr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.flickr.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- SlideShare Settings -->
<provider name="SlideShare" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, Umbraco.Web">
<urlShemeRegex><![CDATA[slideshare\.net/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.slideshare.net/api/oembed/2]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Kickstarter Settings-->
<provider name="Kickstarter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[kickstarter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.kickstarter.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Getty Images Settings-->
<provider name="GettyImages" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[gty\.im/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://embed.gettyimages.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Poll Everywhere Settings -->
<provider name="PollEverywhere" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[polleverywhere\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.polleverywhere.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Poll Daddy Settings -->
<provider name="PollDaddy" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[polldaddy\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://polldaddy.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- IFTTT Settings -->
<provider name="IFTTT" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[ifttt\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ifttt.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Instagram Settings -->
<provider name="Instagram" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[instagram\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://api.instagram.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Issuu Settings -->
<provider name="Issuu" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[issuu.com/(?:.*)/docs]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://issuu.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">json</param>
</requestParams>
</provider>
<!-- Rdio Settings -->
<provider name="Rdio" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[rdio\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.rdio.com/api/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- SoundCloud Settings -->
<provider name="SoundCloud" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, Umbraco.Web">
<urlShemeRegex><![CDATA[soundcloud\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://soundcloud.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Youtube Settings -->
<provider name="Youtube" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[youtu(?:\.be|be\.com)/(?:(.*)v(/|=)|(.*/)?)([a-zA-Z0-9-_]+)]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://www.youtube.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="iframe">1</param>
<param name="format">xml</param>
<param name="scheme">https</param>
</requestParams>
</provider>
<!-- StreamDotUmbracoDotCom -->
<provider name="StreamDotUmbracoDotCom" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[stream\.umbraco\.org/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://stream.umbraco.org/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Daily Motion -->
<provider name="DailyMotion" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[dailymotion\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.dailymotion.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Hulu -->
<provider name="Hulu" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[hulu\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.hulu.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Vimeo -->
<provider name="Vimeo" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[vimeo\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://vimeo.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Ted -->
<provider name="Ted" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web">
<urlShemeRegex><![CDATA[ted\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ted.com/talks/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Screenr Settings -->
<provider name="Screenr" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, Umbraco.Web" supportsDimensions="False">
<urlShemeRegex><![CDATA[screenr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.screenr.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web"></requestParams>
</provider>
<!-- Twitgoo Settings , not an OEmbed one -->
<provider name="Twitgoo" type="Umbraco.Web.Media.EmbedProviders.Twitgoo, Umbraco.Web">
<urlShemeRegex><![CDATA[twitgoo\.com/]]></urlShemeRegex>
</provider>
<!-- Twitter Settings -->
<provider name="Twitter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, Umbraco.Web">
<urlShemeRegex><![CDATA[twitter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://publish.twitter.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, Umbraco.Web">
</requestParams>
</provider>
</embed>
<?xml version="1.0"?>
<embed>
<!-- Flickr Settings-->
<provider name="Flickr" type="Umbraco.Web.Media.EmbedProviders.OEmbedPhoto, umbraco">
<urlShemeRegex><![CDATA[flickr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.flickr.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- SlideShare Settings -->
<provider name="SlideShare" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, umbraco">
<urlShemeRegex><![CDATA[slideshare\.net/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.slideshare.net/api/oembed/2]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Kickstarter Settings-->
<provider name="Kickstarter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[kickstarter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.kickstarter.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Getty Images Settings-->
<provider name="GettyImages" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[gty\.im/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://embed.gettyimages.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Poll Everywhere Settings -->
<provider name="PollEverywhere" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[polleverywhere\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.polleverywhere.com/services/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Poll Daddy Settings -->
<provider name="PollDaddy" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[polldaddy\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://polldaddy.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- IFTTT Settings -->
<provider name="IFTTT" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[ifttt\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ifttt.com/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Instagram Settings -->
<provider name="Instagram" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[instagram\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://api.instagram.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Issuu Settings -->
<provider name="Issuu" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[issuu.com/(?:.*)/docs]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://issuu.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">json</param>
</requestParams>
</provider>
<!-- Rdio Settings -->
<provider name="Rdio" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[rdio\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.rdio.com/api/oembed/]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- SoundCloud Settings -->
<provider name="SoundCloud" type="Umbraco.Web.Media.EmbedProviders.OEmbedRich, umbraco">
<urlShemeRegex><![CDATA[soundcloud\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://soundcloud.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Youtube Settings -->
<provider name="Youtube" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[youtu(?:\.be|be\.com)/(?:(.*)v(/|=)|(.*/)?)([a-zA-Z0-9-_]+)]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://www.youtube.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="iframe">1</param>
<param name="format">xml</param>
<param name="scheme">https</param>
</requestParams>
</provider>
<!-- StreamDotUmbracoDotCom -->
<provider name="StreamDotUmbracoDotCom" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[stream\.umbraco\.org/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://stream.umbraco.org/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Daily Motion -->
<provider name="DailyMotion" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[dailymotion\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.dailymotion.com/services/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Hulu -->
<provider name="Hulu" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[hulu\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.hulu.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
<param name="format">xml</param>
</requestParams>
</provider>
<!-- Vimeo -->
<provider name="Vimeo" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[vimeo\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://vimeo.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Ted -->
<provider name="Ted" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco">
<urlShemeRegex><![CDATA[ted\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.ted.com/talks/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Screenr Settings -->
<provider name="Screenr" type="Umbraco.Web.Media.EmbedProviders.OEmbedVideo, umbraco" supportsDimensions="False">
<urlShemeRegex><![CDATA[screenr\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[http://www.screenr.com/api/oembed.xml]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco"></requestParams>
</provider>
<!-- Twitgoo Settings , not an OEmbed one -->
<provider name="Twitgoo" type="Umbraco.Web.Media.EmbedProviders.Twitgoo, umbraco">
<urlShemeRegex><![CDATA[twitgoo\.com/]]></urlShemeRegex>
</provider>
<!-- Twitter Settings -->
<provider name="Twitter" type="Umbraco.Web.Media.EmbedProviders.OEmbedJson, umbraco">
<urlShemeRegex><![CDATA[twitter\.com/]]></urlShemeRegex>
<apiEndpoint><![CDATA[https://publish.twitter.com/oembed]]></apiEndpoint>
<requestParams type="Umbraco.Web.Media.EmbedProviders.Settings.Dictionary, umbraco">
</requestParams>
</provider>
</embed>

View File

@@ -1,28 +1,28 @@
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to create your own index sets.
Index/Search providers can be defined in the UmbracoSettings.config
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<ExamineLuceneIndexSets>
<!-- The internal index set used by Umbraco back-office - DO NOT REMOVE -->
<IndexSet SetName="InternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/Internal/"/>
<!-- The internal index set used by Umbraco back-office for indexing members - DO NOT REMOVE -->
<IndexSet SetName="InternalMemberIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/InternalMember/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName"/>
<add Name="updateDate" />
<add Name="writerName" />
<add Name="loginName" />
<add Name="email" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
</IndexSet>
<!-- Default Indexset for external searches, this indexes all fields on all types of nodes-->
<IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/External/" />
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to create your own index sets.
Index/Search providers can be defined in the UmbracoSettings.config
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<ExamineLuceneIndexSets>
<!-- The internal index set used by Umbraco back-office - DO NOT REMOVE -->
<IndexSet SetName="InternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/Internal/"/>
<!-- The internal index set used by Umbraco back-office for indexing members - DO NOT REMOVE -->
<IndexSet SetName="InternalMemberIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/InternalMember/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName"/>
<add Name="updateDate" />
<add Name="writerName" />
<add Name="loginName" />
<add Name="email" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
</IndexSet>
<!-- Default Indexset for external searches, this indexes all fields on all types of nodes-->
<IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/External/" />
</ExamineLuceneIndexSets>

View File

@@ -1,30 +1,30 @@
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to create your own index sets.
Index/Search providers can be defined in the UmbracoSettings.config
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<ExamineLuceneIndexSets>
<!-- The internal index set used by Umbraco back-office - DO NOT REMOVE -->
<IndexSet SetName="InternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/Internal/" />
<!-- The internal index set used by Umbraco back-office for indexing members - DO NOT REMOVE -->
<IndexSet SetName="InternalMemberIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/InternalMember/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName"/>
<add Name="updateDate" />
<add Name="writerName" />
<add Name="loginName" />
<add Name="email" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
</IndexSet>
<!-- Default Indexset for external searches, this indexes all fields on all types of nodes-->
<IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/External/" />
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to create your own index sets.
Index/Search providers can be defined in the UmbracoSettings.config
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<ExamineLuceneIndexSets>
<!-- The internal index set used by Umbraco back-office - DO NOT REMOVE -->
<IndexSet SetName="InternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/Internal/" />
<!-- The internal index set used by Umbraco back-office for indexing members - DO NOT REMOVE -->
<IndexSet SetName="InternalMemberIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/InternalMember/">
<IndexAttributeFields>
<add Name="id" />
<add Name="nodeName"/>
<add Name="updateDate" />
<add Name="writerName" />
<add Name="loginName" />
<add Name="email" />
<add Name="nodeTypeAlias" />
</IndexAttributeFields>
</IndexSet>
<!-- Default Indexset for external searches, this indexes all fields on all types of nodes-->
<IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/External/" />
</ExamineLuceneIndexSets>

View File

@@ -1,41 +1,41 @@
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to add your own search/index providers.
Index sets can be defined in the ExamineIndex.config if you're using the standard provider model.
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<Examine>
<ExamineIndexProviders>
<providers>
<add name="InternalIndexer" type="Umbraco.Examine.UmbracoContentIndexer, Umbraco.Examine"
supportUnpublished="true"
supportProtected="true"
analyzer="Examine.LuceneEngine.CultureInvariantWhitespaceAnalyzer, Examine"/>
<add name="InternalMemberIndexer" type="Umbraco.Examine.UmbracoMemberIndexer, Umbraco.Examine"
supportUnpublished="true"
supportProtected="true"
analyzer="Examine.LuceneEngine.CultureInvariantStandardAnalyzer, Examine"/>
<!-- default external indexer, which excludes protected and unpublished pages-->
<add name="ExternalIndexer" type="Umbraco.Examine.UmbracoContentIndexer, Umbraco.Examine"/>
</providers>
</ExamineIndexProviders>
<ExamineSearchProviders>
<providers>
<add name="InternalSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="ExternalSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine" />
<add name="InternalMemberSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine"
analyzer="Examine.LuceneEngine.CultureInvariantStandardAnalyzer, Examine" />
</providers>
</ExamineSearchProviders>
</Examine>
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to add your own search/index providers.
Index sets can be defined in the ExamineIndex.config if you're using the standard provider model.
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<Examine>
<ExamineIndexProviders>
<providers>
<add name="InternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine"
supportUnpublished="true"
supportProtected="true"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="InternalMemberIndexer" type="UmbracoExamine.UmbracoMemberIndexer, UmbracoExamine"
supportUnpublished="true"
supportProtected="true"
analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"/>
<!-- default external indexer, which excludes protected and unpublished pages-->
<add name="ExternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine"/>
</providers>
</ExamineIndexProviders>
<ExamineSearchProviders defaultProvider="ExternalSearcher">
<providers>
<add name="InternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="ExternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine" />
<add name="InternalMemberSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"
analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net" enableLeadingWildcard="true"/>
</providers>
</ExamineSearchProviders>
</Examine>

View File

@@ -1,41 +1,42 @@
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to add your own search/index providers.
Index sets can be defined in the ExamineIndex.config if you're using the standard provider model.
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<Examine>
<ExamineIndexProviders>
<providers>
<add name="InternalIndexer" type="Umbraco.Examine.UmbracoContentIndexer, Umbraco.Examine"
supportUnpublished="true"
supportProtected="true"
analyzer="Examine.LuceneEngine.CultureInvariantWhitespaceAnalyzer, Examine"/>
<add name="InternalMemberIndexer" type="Umbraco.Examine.UmbracoMemberIndexer, Umbraco.Examine"
supportUnpublished="true"
supportProtected="true"
analyzer="Examine.LuceneEngine.CultureInvariantStandardAnalyzer, Examine"/>
<!-- default external indexer, which excludes protected and unpublished pages-->
<add name="ExternalIndexer" type="Umbraco.Examine.UmbracoContentIndexer, Umbraco.Examine"/>
</providers>
</ExamineIndexProviders>
<ExamineSearchProviders>
<providers>
<add name="InternalSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="ExternalSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine"/>
<add name="InternalMemberSearcher" type="Umbraco.Examine.UmbracoExamineSearcher, Umbraco.Examine"
analyzer="Examine.LuceneEngine.CultureInvariantStandardAnalyzer, Examine" />
</providers>
</ExamineSearchProviders>
</Examine>
<?xml version="1.0"?>
<!--
Umbraco examine is an extensible indexer and search engine.
This configuration file can be extended to add your own search/index providers.
Index sets can be defined in the ExamineIndex.config if you're using the standard provider model.
More information and documentation can be found on GitHub: https://github.com/Shazwazza/Examine/
-->
<Examine>
<ExamineIndexProviders>
<providers>
<add name="InternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine"
supportUnpublished="true"
supportProtected="true"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="InternalMemberIndexer" type="UmbracoExamine.UmbracoMemberIndexer, UmbracoExamine"
supportUnpublished="true"
supportProtected="true"
analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"/>
<!-- default external indexer, which excludes protected and unpublished pages-->
<add name="ExternalIndexer" type="UmbracoExamine.UmbracoContentIndexer, UmbracoExamine"/>
</providers>
</ExamineIndexProviders>
<ExamineSearchProviders defaultProvider="ExternalSearcher">
<providers>
<add name="InternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"
analyzer="Lucene.Net.Analysis.WhitespaceAnalyzer, Lucene.Net"/>
<add name="ExternalSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"/>
<add name="InternalMemberSearcher" type="UmbracoExamine.UmbracoExamineSearcher, UmbracoExamine"
analyzer="Lucene.Net.Analysis.Standard.StandardAnalyzer, Lucene.Net"
enableLeadingWildcard="true"/>
</providers>
</ExamineSearchProviders>
</Examine>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0"?>
<FileSystemProviders>
<!-- Media -->
<Provider alias="media" type="Umbraco.Core.IO.PhysicalFileSystem, Umbraco.Core">
<Parameters>
<add key="virtualRoot" value="~/media/" />
</Parameters>
</Provider>
</FileSystemProviders>
<?xml version="1.0"?>
<FileSystemProviders>
<!-- Media -->
<Provider alias="media" type="Umbraco.Core.IO.PhysicalFileSystem, Umbraco.Core">
<Parameters>
<add key="virtualRoot" value="~/media/" />
</Parameters>
</Provider>
</FileSystemProviders>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0"?>
<FileSystemProviders>
<!-- Media -->
<Provider alias="media" type="Umbraco.Core.IO.PhysicalFileSystem, Umbraco.Core">
<Parameters>
<add key="virtualRoot" value="~/media/" />
</Parameters>
</Provider>
</FileSystemProviders>
<?xml version="1.0"?>
<FileSystemProviders>
<!-- Media -->
<Provider alias="media" type="Umbraco.Core.IO.PhysicalFileSystem, Umbraco.Core">
<Parameters>
<add key="virtualRoot" value="~/media/" />
</Parameters>
</Provider>
</FileSystemProviders>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<applications>
<add alias="content" name="Content" sortOrder="0" />
<add alias="media" name="Media" sortOrder="1" />
<add alias="settings" name="Settings" sortOrder="2" />
<add alias="packages" name="Packages" sortOrder="3" />
<add alias="users" name="Users" sortOrder="4" />
<add alias="member" name="Members" sortOrder="5" />
<add alias="forms" name="Forms" sortOrder="6" />
<add alias="translation" name="Translation" sortOrder="7" />
</applications>
<?xml version="1.0" encoding="utf-8"?>
<applications>
<add alias="content" name="Content" icon="traycontent" sortOrder="0" />
<add alias="media" name="Media" icon="traymedia" sortOrder="1" />
<add alias="settings" name="Settings" icon="traysettings" sortOrder="2" />
<add alias="developer" name="Developer" icon="traydeveloper" sortOrder="3" />
<add alias="users" name="Users" icon="trayuser" sortOrder="4" />
<add alias="member" name="Members" icon="traymember" sortOrder="5" />
<add alias="forms" name="Forms" icon="icon-umb-contour" sortOrder="6" />
<add alias="translation" name="Translation" icon="traytranslation" sortOrder="7" />
</applications>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<applications>
<add alias="content" name="Content" sortOrder="0" />
<add alias="media" name="Media" sortOrder="1" />
<add alias="settings" name="Settings" sortOrder="2" />
<add alias="packages" name="Packages" sortOrder="3" />
<add alias="users" name="Users" sortOrder="4" />
<add alias="member" name="Members" sortOrder="5" />
<add alias="forms" name="Forms" sortOrder="6" />
<add alias="translation" name="Translation" sortOrder="7" />
</applications>
<?xml version="1.0" encoding="utf-8"?>
<applications>
<add alias="content" name="Content" icon="traycontent" sortOrder="0" />
<add alias="media" name="Media" icon="traymedia" sortOrder="1" />
<add alias="settings" name="Settings" icon="traysettings" sortOrder="2" />
<add alias="developer" name="Developer" icon="traydeveloper" sortOrder="3" />
<add alias="users" name="Users" icon="trayuser" sortOrder="4" />
<add alias="member" name="Members" icon="traymember" sortOrder="5" />
<add alias="forms" name="Forms" icon="icon-umb-contour" sortOrder="6" />
<add alias="translation" name="Translation" icon="traytranslation" sortOrder="7" />
</applications>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0"?>
<feedProxy>
<!-- To enable the FeedProxy to access other domains, please add the hostname to an 'allow' element. -->
<!-- <allow host="domain.com" /> -->
<!-- The following hostnames are used by on the dashboards, please do not delete these. -->
<allow host="umbraco.com" />
<allow host="umbraco.org" />
<allow host="umbraco.tv" />
<allow host="our.umbraco.org" />
<allow host="our.umbraco.com" />
</feedProxy>
<?xml version="1.0"?>
<feedProxy>
<!-- To enable the FeedProxy to access other domains, please add the hostname to an 'allow' element. -->
<!-- <allow host="domain.com" /> -->
<!-- The following hostnames are used by on the dashboards, please do not delete these. -->
<allow host="umbraco.com" />
<allow host="umbraco.org" />
<allow host="umbraco.tv" />
<allow host="our.umbraco.org" />
<allow host="our.umbraco.com" />
</feedProxy>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0"?>
<feedProxy>
<!-- To enable the FeedProxy to access other domains, please add the hostname to an 'allow' element. -->
<!-- <allow host="domain.com" /> -->
<!-- The following hostnames are used by on the dashboards, please do not delete these. -->
<allow host="umbraco.com" />
<allow host="umbraco.org" />
<allow host="umbraco.tv" />
<allow host="our.umbraco.org" />
<allow host="our.umbraco.com" />
</feedProxy>
<?xml version="1.0"?>
<feedProxy>
<!-- To enable the FeedProxy to access other domains, please add the hostname to an 'allow' element. -->
<!-- <allow host="domain.com" /> -->
<!-- The following hostnames are used by on the dashboards, please do not delete these. -->
<allow host="umbraco.com" />
<allow host="umbraco.org" />
<allow host="umbraco.tv" />
<allow host="our.umbraco.org" />
<allow host="our.umbraco.com" />
</feedProxy>

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<caching currentCache="DiskCache">
<caches>
<cache trimCache="false" name="DiskCache" type="ImageProcessor.Web.Caching.DiskCache, ImageProcessor.Web" maxDays="365" browserMaxDays="7">
<settings>
<cache name="DiskCache" type="ImageProcessor.Web.Caching.DiskCache, ImageProcessor.Web" maxDays="365" browserMaxDays="7" trimCache="false">
<settings>
<setting key="VirtualCachePath" value="~/app_data/cache" />
</settings></cache>
</settings>
</cache>
</caches>
</caching>

View File

@@ -1,66 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<processing preserveExifMetaData="true" fixGamma="false" interceptAllRequests="false" allowCacheBuster="true">
<plugins>
<presets>
</presets>
<plugins>
<plugin name="Alpha" type="ImageProcessor.Web.Processors.Alpha, ImageProcessor.Web" />
<plugin name="AutoRotate" type="ImageProcessor.Web.Processors.AutoRotate, ImageProcessor.Web" enabled="true" />
<plugin name="BackgroundColor" type="ImageProcessor.Web.Processors.BackgroundColor, ImageProcessor.Web" enabled="true" />
<plugin name="Brightness" type="ImageProcessor.Web.Processors.Brightness, ImageProcessor.Web" />
<plugin name="Contrast" type="ImageProcessor.Web.Processors.Contrast, ImageProcessor.Web" />
<plugin name="Crop" type="ImageProcessor.Web.Processors.Crop, ImageProcessor.Web" enabled="true" />
<plugin name="DetectEdges" type="ImageProcessor.Web.Processors.DetectEdges, ImageProcessor.Web" />
<plugin name="EntropyCrop" type="ImageProcessor.Web.Processors.EntropyCrop, ImageProcessor.Web" />
<plugin name="Filter" type="ImageProcessor.Web.Processors.Filter, ImageProcessor.Web" />
<plugin name="Flip" type="ImageProcessor.Web.Processors.Flip, ImageProcessor.Web" />
<plugin name="Format" type="ImageProcessor.Web.Processors.Format, ImageProcessor.Web" enabled="true" />
<plugin name="Gamma" type="ImageProcessor.Web.Processors.Gamma, ImageProcessor.Web" />
<plugin name="Alpha" type="ImageProcessor.Web.Processors.Alpha, ImageProcessor.Web" /><plugin name="AutoRotate" type="ImageProcessor.Web.Processors.AutoRotate, ImageProcessor.Web" enabled="true" /><plugin name="Background" type="ImageProcessor.Web.Processors.Background, ImageProcessor.Web">
<settings>
<setting key="VirtualPath" value="~/images/imageprocessor/background/" />
</settings>
</plugin><plugin name="BackgroundColor" type="ImageProcessor.Web.Processors.BackgroundColor, ImageProcessor.Web" enabled="true" /><plugin name="Brightness" type="ImageProcessor.Web.Processors.Brightness, ImageProcessor.Web" /><plugin name="Contrast" type="ImageProcessor.Web.Processors.Contrast, ImageProcessor.Web" /><plugin name="Crop" type="ImageProcessor.Web.Processors.Crop, ImageProcessor.Web" enabled="true" /><plugin name="DetectEdges" type="ImageProcessor.Web.Processors.DetectEdges, ImageProcessor.Web" /><plugin name="EntropyCrop" type="ImageProcessor.Web.Processors.EntropyCrop, ImageProcessor.Web" /><plugin name="Filter" type="ImageProcessor.Web.Processors.Filter, ImageProcessor.Web" /><plugin name="Flip" type="ImageProcessor.Web.Processors.Flip, ImageProcessor.Web" /><plugin name="Format" type="ImageProcessor.Web.Processors.Format, ImageProcessor.Web" enabled="true" /><plugin name="GaussianBlur" type="ImageProcessor.Web.Processors.GaussianBlur, ImageProcessor.Web">
<plugin name="GaussianBlur" type="ImageProcessor.Web.Processors.GaussianBlur, ImageProcessor.Web">
<settings>
<setting key="MaxSize" value="22" />
<setting key="MaxSigma" value="5.1" />
<setting key="MaxThreshold" value="100" />
</settings>
</plugin><plugin name="GaussianSharpen" type="ImageProcessor.Web.Processors.GaussianSharpen, ImageProcessor.Web">
</plugin>
<plugin name="GaussianSharpen" type="ImageProcessor.Web.Processors.GaussianSharpen, ImageProcessor.Web">
<settings>
<setting key="MaxSize" value="22" />
<setting key="MaxSigma" value="5.1" />
<setting key="MaxThreshold" value="100" />
</settings>
</plugin><plugin name="Halftone" type="ImageProcessor.Web.Processors.Halftone, ImageProcessor.Web" /><plugin name="Hue" type="ImageProcessor.Web.Processors.Hue, ImageProcessor.Web" /><plugin name="Mask" type="ImageProcessor.Web.Processors.Mask, ImageProcessor.Web">
</plugin>
<plugin name="Halftone" type="ImageProcessor.Web.Processors.Halftone, ImageProcessor.Web" />
<plugin name="Hue" type="ImageProcessor.Web.Processors.Hue, ImageProcessor.Web" />
<plugin name="Mask" type="ImageProcessor.Web.Processors.Mask, ImageProcessor.Web">
<settings>
<setting key="VirtualPath" value="~/images/imageprocessor/mask/" />
</settings>
</plugin><plugin name="Meta" type="ImageProcessor.Web.Processors.Meta, ImageProcessor.Web" /><plugin name="Overlay" type="ImageProcessor.Web.Processors.Overlay, ImageProcessor.Web">
</plugin>
<plugin name="Meta" type="ImageProcessor.Web.Processors.Meta, ImageProcessor.Web" />
<plugin name="Overlay" type="ImageProcessor.Web.Processors.Overlay, ImageProcessor.Web">
<settings>
<setting key="VirtualPath" value="~/images/imageprocessor/overlay/" />
</settings>
</plugin><plugin name="Pixelate" type="ImageProcessor.Web.Processors.Pixelate, ImageProcessor.Web" /><plugin name="Quality" type="ImageProcessor.Web.Processors.Quality, ImageProcessor.Web" enabled="true" /><plugin name="ReplaceColor" type="ImageProcessor.Web.Processors.ReplaceColor, ImageProcessor.Web" /><plugin name="Resize" type="ImageProcessor.Web.Processors.Resize, ImageProcessor.Web" enabled="true">
</plugin>
<plugin name="Pixelate" type="ImageProcessor.Web.Processors.Pixelate, ImageProcessor.Web" />
<plugin name="Quality" type="ImageProcessor.Web.Processors.Quality, ImageProcessor.Web" enabled="true" />
<plugin name="ReplaceColor" type="ImageProcessor.Web.Processors.ReplaceColor, ImageProcessor.Web" />
<plugin name="Resize" type="ImageProcessor.Web.Processors.Resize, ImageProcessor.Web" enabled="true">
<settings>
<setting key="MaxWidth" value="5000" />
<setting key="MaxHeight" value="5000" />
</settings>
</plugin><plugin name="Rotate" type="ImageProcessor.Web.Processors.Rotate, ImageProcessor.Web" /><plugin name="RotateBounded" type="ImageProcessor.Web.Processors.RotateBounded, ImageProcessor.Web" /><plugin name="RoundedCorners" type="ImageProcessor.Web.Processors.RoundedCorners, ImageProcessor.Web" /><plugin name="Saturation" type="ImageProcessor.Web.Processors.Saturation, ImageProcessor.Web" /><plugin name="Tint" type="ImageProcessor.Web.Processors.Tint, ImageProcessor.Web" /><plugin name="Vignette" type="ImageProcessor.Web.Processors.Vignette, ImageProcessor.Web" /><plugin name="Watermark" type="ImageProcessor.Web.Processors.Watermark, ImageProcessor.Web" /></plugins><presets>
</presets></processing>
</plugin>
<plugin name="Rotate" type="ImageProcessor.Web.Processors.Rotate, ImageProcessor.Web" />
<plugin name="RotateBounded" type="ImageProcessor.Web.Processors.RotateBounded, ImageProcessor.Web" />
<plugin name="RoundedCorners" type="ImageProcessor.Web.Processors.RoundedCorners, ImageProcessor.Web" />
<plugin name="Saturation" type="ImageProcessor.Web.Processors.Saturation, ImageProcessor.Web" />
<plugin name="Tint" type="ImageProcessor.Web.Processors.Tint, ImageProcessor.Web" />
<plugin name="Vignette" type="ImageProcessor.Web.Processors.Vignette, ImageProcessor.Web" />
<plugin name="Watermark" type="ImageProcessor.Web.Processors.Watermark, ImageProcessor.Web" />
</plugins>
</processing>

View File

@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<security>
<services>
<services>
<service name="LocalFileImageService" type="ImageProcessor.Web.Services.LocalFileImageService, ImageProcessor.Web" />
<!--Disable the LocalFileImageService and enable this one when using virtual paths. -->
<!--<service name="CloudImageService" type="ImageProcessor.Web.Services.CloudImageService, ImageProcessor.Web">
@@ -21,4 +20,5 @@
<whitelist>
</whitelist>
</service>
</services></security>
</services>
</security>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<log4net>
<root>
<priority value="Info"/>
<appender-ref ref="AsynchronousLog4NetAppender" />
</root>
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="App_Data\Logs\UmbracoTraceLog.%property{log4net:HostName}.txt" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<maximumFileSize value="5MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value=" %date [P%property{processId}/D%property{appDomainId}/T%thread] %-5level %logger - %message%newline" />
</layout>
<encoding value="utf-8" />
</appender>
<appender name="AsynchronousLog4NetAppender" type="Log4Net.Async.ParallelForwardingAppender,Log4Net.Async">
<appender-ref ref="rollingFile" />
</appender>
<!--Here you can change the way logging works for certain namespaces -->
<logger name="NHibernate">
<level value="WARN" />
</logger>
</log4net>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<log4net>
<root>
<priority value="Debug"/>
<appender-ref ref="AsynchronousLog4NetAppender" />
</root>
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="App_Data\Logs\UmbracoTraceLog.%property{log4net:HostName}.txt" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<maximumFileSize value="5MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value=" %date [P%property{processId}/D%property{appDomainId}/T%thread] %-5level %logger - %message%newline" />
</layout>
<encoding value="utf-8" />
</appender>
<appender name="AsynchronousLog4NetAppender" type="Log4Net.Async.ParallelForwardingAppender,Log4Net.Async">
<appender-ref ref="rollingFile" />
</appender>
<!--Here you can change the way logging works for certain namespaces -->
<logger name="NHibernate">
<level value="WARN" />
</logger>
</log4net>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<microsoft.scripting>
<languages>
<language names="IronPython;Python;py" extensions=".py" displayName="IronPython 2.6" type="IronPython.Runtime.PythonContext, IronPython, Version=2.6.10920.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<language names="IronRuby;Ruby;rb" extensions=".rb" displayName="IronRuby 1.0" type="IronRuby.Runtime.RubyContext, IronRuby, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</languages>
<options>
<set language="Ruby" option="LibraryPaths" value="..\..\Languages\Ruby\libs\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\1.8\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\1.8\" />
</options>
<?xml version="1.0" encoding="utf-8"?>
<microsoft.scripting>
<languages>
<language names="IronPython;Python;py" extensions=".py" displayName="IronPython 2.6" type="IronPython.Runtime.PythonContext, IronPython, Version=2.6.10920.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<language names="IronRuby;Ruby;rb" extensions=".rb" displayName="IronRuby 1.0" type="IronRuby.Runtime.RubyContext, IronRuby, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</languages>
<options>
<set language="Ruby" option="LibraryPaths" value="..\..\Languages\Ruby\libs\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\1.8\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\1.8\" />
</options>
</microsoft.scripting>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<microsoft.scripting>
<languages>
<language names="IronPython;Python;py" extensions=".py" displayName="IronPython 2.6" type="IronPython.Runtime.PythonContext, IronPython, Version=2.6.10920.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<language names="IronRuby;Ruby;rb" extensions=".rb" displayName="IronRuby 1.0" type="IronRuby.Runtime.RubyContext, IronRuby, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</languages>
<options>
<set language="Ruby" option="LibraryPaths" value="..\..\Languages\Ruby\libs\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\1.8\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\1.8\" />
</options>
<?xml version="1.0" encoding="utf-8"?>
<microsoft.scripting>
<languages>
<language names="IronPython;Python;py" extensions=".py" displayName="IronPython 2.6" type="IronPython.Runtime.PythonContext, IronPython, Version=2.6.10920.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<language names="IronRuby;Ruby;rb" extensions=".rb" displayName="IronRuby 1.0" type="IronRuby.Runtime.RubyContext, IronRuby, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</languages>
<options>
<set language="Ruby" option="LibraryPaths" value="..\..\Languages\Ruby\libs\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\1.8\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\site_ruby\;..\..\..\External\Languages\Ruby\ruby-1.8.6\lib\ruby\1.8\" />
</options>
</microsoft.scripting>

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!-- Used to toggle the loge levels for the main Umbraco log files -->
<!-- Found at /app_data/logs/ -->
<!-- NOTE: Changing this will also flow down into serilog.user.config -->
<add key="serilog:minimum-level" value="Verbose" />
<!-- To write to new log locations (aka Sinks) such as your own .txt files, ELMAH.io, Elastic, SEQ -->
<!-- Please use the serilog.user.config file to configure your own logging needs -->
</appSettings>
</configuration>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!-- Controls log levels for all user-defined child sub-logger sinks configured here (Set this higher than child sinks defined here) -->
<add key="serilog:minimum-level" value="Verbose" />
<!-- For Different Namespaces - Set different logging levels -->
<!--
<add key="serilog:minimum-level:override:Microsoft" value="Warning" />
<add key="serilog:minimum-level:override:Microsoft.AspNetCore.Mvc" value="Error" />
<add key="serilog:minimum-level:override:YourNameSpace" value="Information" />
-->
<!-- All logs defined via user.config will contain this property (won't be in main Umbraco logs) -->
<!--
<add key="serilog:enrich:with-property:websiteName" value="My Awesome Website - Development" />
-->
<!-- Write to a user log file -->
<!--
<add key="serilog:using:File" value="Serilog.Sinks.File" />
<add key="serilog:write-to:File.path" value="%BASEDIR%\logs\my-custom-logfile.txt" />
<add key="serilog:write-to:File.shared" value="true" />
<add key="serilog:write-to:File.restrictedToMinimumLevel" value="Debug" />
<add key="serilog:write-to:File.retainedFileCountLimit" value="32" />--> <!-- Number of log files to keep (or remove value to keep all files) -->
<!--<add key="serilog:write-to:File.rollingInterval" value="Day" />--> <!-- Create a new log file every Minute/Hour/Day/Month/Year/infinite -->
<!-- Filters all above sink's to use this expression -->
<!-- Common use case is to include SourceType starting with your own namespace -->
<!--
<add key="serilog:using:FilterExpressions" value="Serilog.Filters.Expressions" />
<add key="serilog:filter:ByIncluding.expression" value="StartsWith(SourceContext, 'Umbraco.Core')" />
-->
</appSettings>
</configuration>

View File

@@ -1,25 +1,25 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.WebPages;
namespace Umbraco.Web.UI.Config.Splashes
{
public partial class NoNodes : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var store = UmbracoContext.Current.ContentCache;
if (store.HasContent())
{
//if there is actually content, go to the root
Response.Redirect("~/");
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.WebPages;
namespace Umbraco.Web.UI.Config.Splashes
{
public partial class NoNodes : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
var store = UmbracoContext.Current.ContentCache;
if (store.HasContent())
{
//if there is actually content, go to the root
Response.Redirect("~/");
}
}
}
}

View File

@@ -1,24 +1,24 @@
//------------------------------------------------------------------------------
// <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.Config.Splashes {
public partial class NoNodes {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
}
}
//------------------------------------------------------------------------------
// <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.Config.Splashes {
public partial class NoNodes {
/// <summary>
/// Form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm Form1;
}
}

View File

@@ -1,29 +1,26 @@
<%@ Page Language="C#" AutoEventWireup="true" Inherits="System.Web.UI.Page" %>
<%@ Import Namespace="System.Web.Mvc" %>
<%@ Import Namespace="Umbraco.Web.Mvc" %>
<%
var urlHelper = new UrlHelper(Request.RequestContext);
// NH: Adds this inline check to avoid a simple codebehind file in the legacy project!
if (Request["url"].ToLower().Contains("booting.aspx") || urlHelper.ValidateProxyUrl(Request["url"], Request.Url.AbsoluteUri) == false)
{
throw new ArgumentException("Can't redirect to the requested url - it's not local or an approved proxy url", "url");
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>The website is restarting</title>
<meta http-equiv="REFRESH" content="10; URL=<%=Request["url"] %>">
</head>
<body>
<h1>The website is restarting</h1>
<p>Please wait for 10s while we prepare to serve the page you have requested...</p>
<p style="border-top: 1px solid #ccc; padding-top: 10px;">
<small>You can modify the design of this page by editing /config/splashes/booting.aspx</small>
</p>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="true" Inherits="System.Web.UI.Page" %>
<%
// NH: Adds this inline check to avoid a simple codebehind file in the legacy project!
if (Request["url"].ToLower().Contains("booting.aspx") || !umbraco.cms.helpers.url.ValidateProxyUrl(Request["url"], Request.Url.AbsoluteUri))
{
throw new ArgumentException("Can't redirect to the requested url - it's not local or an approved proxy url",
"url");
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>The website is restarting</title>
<meta http-equiv="REFRESH" content="10; URL=<%=Request["url"] %>">
</head>
<body>
<h1>The website is restarting</h1>
<p>Please wait for 10s while we prepare to serve the page you have requested...</p>
<p style="border-top: 1px solid #ccc; padding-top: 10px;">
<small>You can modify the design of this page by editing /config/splashes/booting.aspx</small>
</p>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More