-
diff --git a/src/Umbraco.Web.UI.Client/src/views/dictionary/create.html b/src/Umbraco.Web.UI.Client/src/views/dictionary/create.html
index 9e628464b2bc..62546298f057 100644
--- a/src/Umbraco.Web.UI.Client/src/views/dictionary/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/dictionary/create.html
@@ -1,21 +1,31 @@
-
-
-
-
Create an item under {{currentNode.name}}
-
-
-
diff --git a/src/Umbraco.Web.UI.Client/src/views/dictionary/dictionary.create.controller.js b/src/Umbraco.Web.UI.Client/src/views/dictionary/dictionary.create.controller.js
index d22738b6769d..74c1455aeaa8 100644
--- a/src/Umbraco.Web.UI.Client/src/views/dictionary/dictionary.create.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/dictionary/dictionary.create.controller.js
@@ -12,7 +12,13 @@ function DictionaryCreateController($scope, $location, dictionaryResource, navig
vm.itemKey = "";
vm.createItem = createItem;
+ vm.close = close;
$scope.$emit("$changeTitle", "");
+
+ function close() {
+ navigationService.hideDialog();
+ }
+
function createItem() {
if (formHelper.submitForm({ scope: $scope, formCtrl: $scope.createDictionaryForm })) {
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.controller.js
index 2d3a3a08ed51..694192d86a4c 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.controller.js
@@ -6,11 +6,11 @@
* @description
* The controller for the doc type creation dialog
*/
-function DocumentTypesCreateController($scope, $location, navigationService, contentTypeResource, formHelper, appState, notificationsService, localizationService, iconHelper) {
+function DocumentTypesCreateController($scope, $location, navigationService, contentTypeResource, formHelper, appState) {
$scope.model = {
- allowCreateFolder: $scope.currentNode.parentId === null || $scope.currentNode.nodeType === "container",
- folderName: "",
+ allowCreateFolder: $scope.currentNode.parentId === null || $scope.currentNode.nodeType === 'container',
+ folderName: '',
creatingFolder: false
};
@@ -31,18 +31,18 @@ function DocumentTypesCreateController($scope, $location, navigationService, con
navigationService.hideMenu();
- var currPath = node.path ? node.path : "-1";
+ var currPath = node.path ? node.path : '-1';
navigationService.syncTree({
- tree: "documentTypes",
- path: currPath + "," + folderId,
+ tree: 'documentTypes',
+ path: currPath + ',' + folderId,
forceReload: true,
activate: true
});
formHelper.resetForm({ scope: $scope, formCtrl: $scope.createFolderForm });
- var section = appState.getSectionState("currentSection");
+ var section = appState.getSectionState('currentSection');
}, function (err) {
@@ -53,37 +53,51 @@ function DocumentTypesCreateController($scope, $location, navigationService, con
}
};
+ function createDocType(config) {
+
+ $location.search('create', null);
+ $location.search('notemplate', null);
+ $location.search('iscomposition', null);
+ $location.search('iselement', null);
+ $location.search('icon', null);
+
+ var icon = null;
+
+ if (config.icon != undefined && config.icon != null) {
+ icon = config.icon;
+ if (config.color) {
+ icon += ' ' + config.color;
+ }
+ }
+
+ $location
+ .path('/settings/documentTypes/edit/' + node.id)
+ .search('create', 'true')
+ .search('notemplate', config.notemplate ? 'true' : null)
+ .search('iscomposition', config.iscomposition ? 'true' : null)
+ .search('iselement', config.iselement ? 'true' : null)
+ .search('icon', icon);
+ navigationService.hideMenu();
+ }
+
+
// Disabling logic for creating document type with template if disableTemplates is set to true
if (!disableTemplates) {
- $scope.createDocType = function () {
- $location.search('create', null);
- $location.search('notemplate', null);
- $location.path("/settings/documentTypes/edit/" + node.id).search("create", "true");
- navigationService.hideMenu();
+ $scope.createDocType = function (icon) {
+ createDocType({ icon });
};
}
- $scope.createComponent = function () {
- $location.search('create', null);
- $location.search('notemplate', null);
- $location.path("/settings/documentTypes/edit/" + node.id).search("create", "true").search("notemplate", "true");
- navigationService.hideMenu();
+ $scope.createComponent = function (icon) {
+ createDocType({ notemplate: true, icon });
};
- $scope.createComposition = function () {
- $location.search('create', null);
- $location.search('notemplate', null);
- $location.search('iscomposition', null);
- $location.path("/settings/documentTypes/edit/" + node.id).search("create", "true").search("notemplate", "true").search("iscomposition", "true");
- navigationService.hideMenu();
+ $scope.createComposition = function (icon) {
+ createDocType({ notemplate: true, iscomposition: true, iselement: true, icon });
};
- $scope.createElement = function () {
- $location.search('create', null);
- $location.search('notemplate', null);
- $location.search('iselement', null);
- $location.path("/settings/documentTypes/edit/" + node.id).search("create", "true").search("notemplate", "true").search("iselement", "true");
- navigationService.hideMenu();
+ $scope.createElement = function (icon) {
+ createDocType({ notemplate: true, iselement: true, icon });
};
$scope.close = function() {
@@ -92,4 +106,4 @@ function DocumentTypesCreateController($scope, $location, navigationService, con
};
}
-angular.module('umbraco').controller("Umbraco.Editors.DocumentTypes.CreateController", DocumentTypesCreateController);
+angular.module('umbraco').controller('Umbraco.Editors.DocumentTypes.CreateController', DocumentTypesCreateController);
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.html b/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.html
index 8992c73525dd..0caba5f51157 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/create.html
@@ -1,11 +1,13 @@
-
-
-
Create an item under {{currentNode.name}}
+
+
+
+
+
Create an item under {{currentNode.name}}
-
-
-
-
-
-
{{error.errorMsg}}
-
{{error.data.message}}
-
-
+
+
-
-
-
+
-
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
index 0e13657e6878..d83cf350db97 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
@@ -22,6 +22,7 @@
var create = $routeParams.create;
var noTemplate = $routeParams.notemplate;
var isElement = $routeParams.iselement;
+ var icon = $routeParams.icon;
var allowVaryByCulture = $routeParams.culturevary;
var infiniteMode = $scope.model && $scope.model.infiniteMode;
var documentTypeIcon = "";
@@ -72,6 +73,7 @@
if (create && !documentTypeId) documentTypeId = -1;
noTemplate = $scope.model.notemplate || $scope.model.noTemplate;
isElement = $scope.model.isElement;
+ icon = $scope.model.icon;
allowVaryByCulture = $scope.model.allowVaryByCulture;
vm.submitButtonKey = "buttons_saveAndClose";
vm.generateModelsKey = "buttons_generateModelsAndClose";
@@ -385,14 +387,22 @@
contentType.defaultTemplate = contentTypeHelper.insertDefaultTemplatePlaceholder(contentType.defaultTemplate);
contentType.allowedTemplates = contentTypeHelper.insertTemplatePlaceholder(contentType.allowedTemplates);
}
+
// set isElement checkbox by default
if (isElement) {
contentType.isElement = true;
}
+
+ // set icon if one is provided
+ if (icon !== null && icon !== undefined) {
+ contentType.icon = icon;
+ }
+
// set vary by culture checkbox by default
if (allowVaryByCulture) {
contentType.allowCultureVariant = true;
}
+
// convert icons for content type
convertLegacyIcons(contentType);
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/import.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/import.controller.js
index 7ca85352badc..617034824366 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/import.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/import.controller.js
@@ -1,12 +1,14 @@
angular.module("umbraco")
.controller("Umbraco.Editors.DocumentTypes.ImportController",
- function ($scope, contentTypeResource, navigationService, Upload, umbRequestHelper) {
+ function ($scope, contentTypeResource, navigationService, Upload, umbRequestHelper) {
var vm = this;
vm.serverErrorMessage = "";
vm.state = "upload";
vm.model = {};
vm.uploadStatus = "";
+ vm.cancelButtonLabel = "cancel";
+
$scope.handleFiles = function (files, event) {
if (files && files.length > 0) {
$scope.upload(files[0]);
@@ -67,10 +69,12 @@ angular.module("umbraco")
$scope.import = function () {
contentTypeResource.import(vm.model.tempFileName);
vm.state = "done";
+
+ vm.cancelButtonLabel = "general_close";
}
- $scope.close = function() {
+ $scope.close = function () {
navigationService.hideDialog();
};
-
+
});
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/importdocumenttype.html b/src/Umbraco.Web.UI.Client/src/views/documentTypes/importdocumenttype.html
index 9ddc0b7c93b5..75919d8c74b3 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/importdocumenttype.html
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/importdocumenttype.html
@@ -1,51 +1,58 @@
-
-
-
-
- To import a document type, find the '.udt' file on your computer by clicking the 'Browse' button and click 'Import' (you'll be asked for confirmation on the next screen)
-
-
+
-
+
+
+
+
+
+ To import a document type, find the '.udt' file on your computer by clicking the 'Browse' button and click 'Import' (you'll be asked for confirmation on the next screen)
+
+
-
-
- Import
-
+
- or
+
+
+ Import
+
+
-
- Cancel
-
-
+
Please choose a .udt file to import
-
Please choose a .udt file to import
-
+
+
+
+ Name :
+
+ {{vm.model.name}}
+
+
+ Alias :
+
+ {{vm.model.alias}}
+
+
+
+ Import
+
+
+
+ {{vm.model.name}} has been imported!
+
+
-
-
- Name :
-
- {{vm.model.name}}
-
-
- Alias :
-
- {{vm.model.alias}}
-
-
-
- Import
-
-
-
- {{vm.model.name}} has been imported!
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/views/permissions/permissions.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/views/permissions/permissions.controller.js
index b0531d0c0ac8..da293a6820d9 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/views/permissions/permissions.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/views/permissions/permissions.controller.js
@@ -6,10 +6,10 @@
* @description
* The controller for the content type editor property dialog
*/
-(function() {
+(function () {
'use strict';
- function PermissionsController($scope, $timeout, contentTypeResource, iconHelper, contentTypeHelper, localizationService, overlayService) {
+ function PermissionsController($scope, $timeout, contentTypeResource, iconHelper, contentTypeHelper, editorService) {
/* ----------- SCOPE VARIABLES ----------- */
@@ -34,22 +34,22 @@
function init() {
- contentTypeResource.getAll().then(function(contentTypes){
- vm.contentTypes = _.where(contentTypes, {isElement: false});
+ contentTypeResource.getAll().then(contentTypes => {
+ vm.contentTypes = contentTypes.filter(x => !x.isElement);
// convert legacy icons
iconHelper.formatContentTypeIcons(vm.contentTypes);
vm.selectedChildren = contentTypeHelper.makeObjectArrayFromId($scope.model.allowedContentTypes, contentTypes);
- if($scope.model.id === 0) {
- contentTypeHelper.insertChildNodePlaceholder(vm.contentTypes, $scope.model.name, $scope.model.icon, $scope.model.id);
+ if ($scope.model.id === 0) {
+ contentTypeHelper.insertChildNodePlaceholder(vm.contentTypes, $scope.model.name, $scope.model.icon, $scope.model.id);
}
});
// Can only switch to an element type if there are no content nodes already created from the type.
- if ($scope.model.id > 0 && !$scope.model.isElement ) {
- contentTypeResource.hasContentNodes($scope.model.id).then(function (result) {
+ if ($scope.model.id > 0 && !$scope.model.isElement) {
+ contentTypeResource.hasContentNodes($scope.model.id).then(result => {
vm.canToggleIsElement = !result;
});
} else {
@@ -58,48 +58,42 @@
}
function addChild($event) {
-
- const dialog = {
- view: "itempicker",
- availableItems: vm.contentTypes,
- selectedItems: vm.selectedChildren,
- position: "target",
- event: $event,
- submit: function (model) {
- if (model.selectedItem) {
- vm.selectedChildren.push(model.selectedItem);
- $scope.model.allowedContentTypes.push(model.selectedItem.id);
- }
- overlayService.close();
+
+ var editor = {
+ multiPicker: true,
+ filterCssClass: 'not-allowed not-published',
+ filter: item =>
+ !vm.contentTypes.some(x => x.udi == item.udi) || vm.selectedChildren.some(x => x.udi === item.udi),
+ submit: model => {
+ model.selection.forEach(item =>
+ contentTypeResource.getById(item.id).then(contentType => {
+ vm.selectedChildren.push(contentType);
+ $scope.model.allowedContentTypes.push(item.id);
+ }));
+
+ editorService.close();
},
- close: function() {
- overlayService.close();
- }
+ close: () => editorService.close()
};
- localizationService.localize("contentTypeEditor_chooseChildNode").then(value => {
- dialog.title = value;
- overlayService.open(dialog);
- });
+ editorService.contentTypePicker(editor);
}
function removeChild(selectedChild, index) {
- // remove from vm
- vm.selectedChildren.splice(index, 1);
+ // remove from vm
+ vm.selectedChildren.splice(index, 1);
- // remove from content type model
- var selectedChildIndex = $scope.model.allowedContentTypes.indexOf(selectedChild.id);
- $scope.model.allowedContentTypes.splice(selectedChildIndex, 1);
+ // remove from content type model
+ var selectedChildIndex = $scope.model.allowedContentTypes.indexOf(selectedChild.id);
+ $scope.model.allowedContentTypes.splice(selectedChildIndex, 1);
}
function sortChildren() {
// we need to wait until the next digest cycle for vm.selectedChildren to be updated
- $timeout(function () {
- $scope.model.allowedContentTypes = _.pluck(vm.selectedChildren, "id");
- });
+ $timeout(() => $scope.model.allowedContentTypes = vm.selectedChildren.map(x => x.id));
}
- // note: "safe toggling" here ie handling cases where the value is undefined, etc
+ // note: 'safe toggling' here ie handling cases where the value is undefined, etc
function toggleAllowAsRoot() {
$scope.model.allowAsRoot = $scope.model.allowAsRoot ? false : true;
@@ -119,5 +113,5 @@
}
- angular.module("umbraco").controller("Umbraco.Editors.DocumentType.PermissionsController", PermissionsController);
+ angular.module('umbraco').controller('Umbraco.Editors.DocumentType.PermissionsController', PermissionsController);
})();
diff --git a/src/Umbraco.Web.UI.Client/src/views/macros/create.html b/src/Umbraco.Web.UI.Client/src/views/macros/create.html
index bed989f5711b..8cf4424247af 100644
--- a/src/Umbraco.Web.UI.Client/src/views/macros/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/macros/create.html
@@ -1,16 +1,15 @@
-
-
-
-
Create an item under {{currentNode.name}}
-
-
-
-
+
+
+
+
+
Create an item under {{currentNode.name}}
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/macros/macros.create.controller.js b/src/Umbraco.Web.UI.Client/src/views/macros/macros.create.controller.js
index baae8e085a7a..06fe48f3b1b6 100644
--- a/src/Umbraco.Web.UI.Client/src/views/macros/macros.create.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/macros/macros.create.controller.js
@@ -42,6 +42,10 @@ function MacrosCreateController($scope, $location, macroResource, navigationServ
}
}
+ $scope.close = function () {
+ navigationService.hideDialog(true);
+ };
+
vm.createItem = createItem;
}
diff --git a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
index cb7bd7442493..afa987f0affb 100644
--- a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
@@ -1,61 +1,72 @@
-
+
+
-
-
Create an item under {{currentNode.name}}
+
+
Create an item under {{currentNode.name}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{{error.errorMsg}}
-
{{error.data.message}}
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
- Create
-
+
-
+
+
+
+
+
+
+
{{error.errorMsg}}
+
{{error.data.message}}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/views/permissions/permissions.controller.js b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/views/permissions/permissions.controller.js
index 7ff479327240..126d31f7c86f 100644
--- a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/views/permissions/permissions.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/views/permissions/permissions.controller.js
@@ -1,7 +1,7 @@
(function() {
'use strict';
- function PermissionsController($scope, $timeout, mediaTypeResource, iconHelper, contentTypeHelper, localizationService, overlayService) {
+ function PermissionsController($scope, $timeout, mediaTypeResource, iconHelper, contentTypeHelper, editorService) {
/* ----------- SCOPE VARIABLES ----------- */
@@ -21,7 +21,7 @@
function init() {
- mediaTypeResource.getAll().then(function(mediaTypes){
+ mediaTypeResource.getAll().then(mediaTypes => {
vm.mediaTypes = mediaTypes;
@@ -39,29 +39,25 @@
}
function addChild($event) {
-
- var dialog = {
- view: "itempicker",
- availableItems: vm.mediaTypes,
- selectedItems: vm.selectedChildren,
- position: "target",
- event: $event,
- submit: function (model) {
- if (model.selectedItem) {
- vm.selectedChildren.push(model.selectedItem);
- $scope.model.allowedContentTypes.push(model.selectedItem.id);
- }
- overlayService.close();
+
+ var editor = {
+ multiPicker: true,
+ filterCssClass: 'not-allowed not-published',
+ filter: item =>
+ !vm.mediaTypes.some(x => x.udi == item.udi) || vm.selectedChildren.some(x => x.udi === item.udi),
+ submit: model => {
+ model.selection.forEach(item =>
+ mediaTypeResource.getById(item.id).then(contentType => {
+ vm.selectedChildren.push(contentType);
+ $scope.model.allowedContentTypes.push(item.id);
+ }));
+
+ editorService.close();
},
- close: function() {
- overlayService.close();
- }
+ close: () => editorService.close()
};
- localizationService.localize("contentTypeEditor_chooseChildNode").then(value => {
- dialog.title = value;
- overlayService.open(dialog);
- });
+ editorService.mediaTypePicker(editor);
}
function removeChild(selectedChild, index) {
@@ -75,9 +71,7 @@
function sortChildren() {
// we need to wait until the next digest cycle for vm.selectedChildren to be updated
- $timeout(function () {
- $scope.model.allowedContentTypes = _.pluck(vm.selectedChildren, "id");
- });
+ $timeout(() => $scope.model.allowedContentTypes = vm.selectedChildren.map(x => x.id));
}
/**
@@ -94,5 +88,5 @@
}
- angular.module("umbraco").controller("Umbraco.Editors.MediaType.PermissionsController", PermissionsController);
+ angular.module('umbraco').controller('Umbraco.Editors.MediaType.PermissionsController', PermissionsController);
})();
diff --git a/src/Umbraco.Web.UI.Client/src/views/partialViewMacros/create.html b/src/Umbraco.Web.UI.Client/src/views/partialViewMacros/create.html
index 9afd3447ea83..e4670174e097 100644
--- a/src/Umbraco.Web.UI.Client/src/views/partialViewMacros/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/partialViewMacros/create.html
@@ -1,86 +1,97 @@
-
-
-
-
-
-
-
-
Create an item under {{currentNode.name}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
Create an item under {{currentNode.name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
Select snippet
+
Select snippet
-
+
+
-
-
-
-
+
+
+
-
-
-
{{vm.createFolderError.data.message}}
+
+
+
+
+
+
+
+
{{vm.createFolderError.data.message}}
+
-
-
-
-
-
-
Create
-
-
-
-
+
+
+
-
-
+
+
+
-
diff --git a/src/Umbraco.Web.UI.Client/src/views/partialViews/create.html b/src/Umbraco.Web.UI.Client/src/views/partialViews/create.html
index 3203ed1b256e..17ee8b019057 100644
--- a/src/Umbraco.Web.UI.Client/src/views/partialViews/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/partialViews/create.html
@@ -1,76 +1,87 @@
-
+
+
-
-
-
Create an item under {{currentNode.name}}
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
Create an item under {{currentNode.name}}
-
-
-
-
-
-
-
{{vm.createFolderError.data.message}}
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
Create
-
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
{{vm.createFolderError.data.message}}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js
index d8c7b3e76a62..7c8c1e64fbd7 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/contentpicker/contentpicker.controller.js
@@ -413,8 +413,13 @@ function contentPickerController($scope, $q, $routeParams, $location, entityReso
var missingIds = _.difference(valueIds, renderModelIds);
if (missingIds.length > 0) {
- return entityResource.getByIds(missingIds, entityType).then(function (data) {
+ var requests = [
+ entityResource.getByIds(missingIds, entityType),
+ entityResource.getUrlsByUdis(missingIds)
+ ];
+
+ return $q.all(requests).then(function ([data, urlMap]) {
_.each(valueIds,
function (id, i) {
var entity = _.find(data, function (d) {
@@ -422,7 +427,12 @@ function contentPickerController($scope, $q, $routeParams, $location, entityReso
});
if (entity) {
- addSelectedItem(entity);
+
+ entity.url = entity.trashed
+ ? vm.labels.general_recycleBin
+ : urlMap[id];
+
+ addSelectedItem(entity);
}
});
@@ -469,26 +479,6 @@ function contentPickerController($scope, $q, $routeParams, $location, entityReso
}
- function setEntityUrl(entity) {
-
- // get url for content and media items
- if (entityType !== "Member") {
- entityResource.getUrl(entity.id, entityType).then(function (data) {
- // update url
- $scope.renderModel.forEach(function (item) {
- if (item.id === entity.id) {
- if (entity.trashed) {
- item.url = vm.labels.general_recycleBin;
- } else {
- item.url = data;
- }
- }
- });
- });
- }
-
- }
-
function addSelectedItem(item) {
// set icon
@@ -523,8 +513,6 @@ function contentPickerController($scope, $q, $routeParams, $location, entityReso
"published": (item.metaData && item.metaData.IsPublished === false && entityType === "Document") ? false : true
// only content supports published/unpublished content so we set everything else to published so the UI looks correct
});
-
- setEntityUrl(item);
}
function setSortingState(items) {
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/icon.prevalues.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/icon.prevalues.controller.js
index fd5c3dbf1273..4ad2935981ea 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/icon.prevalues.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/icon.prevalues.controller.js
@@ -12,6 +12,7 @@ function iconPreValsController($scope, editorService) {
var iconPicker = {
icon: $scope.icon,
color: $scope.color,
+ size: "medium",
submit: function (model) {
if (model.icon) {
if (model.color) {
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/layouts.prevalues.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/layouts.prevalues.controller.js
index acfb11430757..db79c31cfd04 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/layouts.prevalues.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/layouts.prevalues.controller.js
@@ -61,6 +61,7 @@
var iconPicker = {
icon: layout.icon.split(' ')[0],
color: layout.icon.split(' ')[1],
+ size: "medium",
submit: function (model) {
if (model.icon) {
if (model.color) {
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.controller.js
index 42ce10c519c4..40aa7eb5a8db 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.controller.js
@@ -26,6 +26,29 @@
}
}
+ $scope.paste = function (event, index) {
+ event.preventDefault();
+ var text = (event.clipboardData || window.clipboardData || event.originalEvent.clipboardData).getData('text');
+ var lines = text.split(/\r?\n/).map(line => { return { value: line, hasFocus: false } });
+
+ if (lines.length > 0) {
+ // merge with the current text
+ var currentText = $scope.model.value[index].value;
+ lines[0].value = currentText.substring(0, event.target.selectionStart) + lines[0].value;
+ lines[lines.length - 1].value = lines[lines.length - 1].value + currentText.substring(event.target.selectionEnd);
+
+ // clear selection
+ event.target.selectionEnd = event.target.selectionStart;
+
+ // remove focus from existing values
+ $scope.model.value.forEach(value => value.hasFocus = false);
+
+ // add all the lines to the value
+ lines[lines.length - 1].hasFocus = true;
+ $scope.model.value.splice(index, 1, ...lines);
+ }
+ }
+
$scope.addRemoveOnKeyDown = function (event, index) {
var txtBoxValue = $scope.model.value[index];
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.html b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.html
index 9e90666eacd5..d0d4749c2238 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.html
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/multipletextbox/multipletextbox.html
@@ -6,6 +6,7 @@
class="umb-property-editor umb-textstring textstring flx-i"
ng-trim="false"
ng-keyup="addRemoveOnKeyDown($event, $index)"
+ ng-paste="paste($event, $index)"
focus-when="{{item.hasFocus}}" />
diff --git a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/slider/slider.controller.js b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/slider/slider.controller.js
index b0c3b88bc6c0..700f831f5af2 100644
--- a/src/Umbraco.Web.UI.Client/src/views/propertyeditors/slider/slider.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/propertyeditors/slider/slider.controller.js
@@ -45,8 +45,13 @@
if (!$scope.model.value) {
$scope.model.value = start.toString();
}
- // convert to array
- $scope.sliderValue = $scope.model.value ? $scope.model.value.split(',') : null;
+
+ // convert to array - exiting value can be a number if switching from numeric/decimal property editor
+ $scope.sliderValue = $scope.model.value
+ ? Utilities.isString($scope.model.value) || Utilities.isNumber($scope.model.value)
+ ? $scope.model.value.toString().split(',')
+ : null
+ : null;
// don't render values with decimal places if the step increment in a whole number
var stepDecimalPlaces = $scope.model.config.step % 1 == 0
diff --git a/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.controller.js b/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.controller.js
index bd990961bf99..1ebf5dea45ae 100644
--- a/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.controller.js
@@ -49,6 +49,10 @@ function RelationTypeCreateController($scope, $location, relationTypeResource, n
});
}
}
+
+ $scope.close = function () {
+ navigationService.hideDialog(true);
+ };
}
angular.module("umbraco").controller("Umbraco.Editors.RelationTypes.CreateController", RelationTypeCreateController);
diff --git a/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.html b/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.html
index 93debb550796..72918c6414fe 100644
--- a/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/relationTypes/create.html
@@ -1,60 +1,69 @@
-
-
-
+
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
- {{objectType.name}}
-
-
+
+
+
+ {{objectType.name}}
+
+
-
-
-
- {{objectType.name}}
-
-
-
-
- Create
-
-
-
+
+
+
+ {{objectType.name}}
+
+
+
+
+
+
diff --git a/src/Umbraco.Web.UI.Client/src/views/scripts/create.html b/src/Umbraco.Web.UI.Client/src/views/scripts/create.html
index e11c51068eb3..3107b508b2dc 100644
--- a/src/Umbraco.Web.UI.Client/src/views/scripts/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/scripts/create.html
@@ -1,52 +1,62 @@
-
-
-
-
-
-
Create an item under {{currentNode.name}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
Create an item under {{currentNode.name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
{{vm.createFolderError.data.message}}
-
-
-
-
-
-
-
- Create
-
+
-
+
+
+
+
+
+
+
{{vm.createFolderError.data.message}}
+
+
-
+
+
+
-
diff --git a/src/Umbraco.Web.UI.Client/src/views/stylesheets/create.html b/src/Umbraco.Web.UI.Client/src/views/stylesheets/create.html
index eb63612263aa..205a677bb63e 100644
--- a/src/Umbraco.Web.UI.Client/src/views/stylesheets/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/stylesheets/create.html
@@ -1,58 +1,68 @@
-
+
-
+
+
-
-
Create an item under {{currentNode.name}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
Create an item under {{currentNode.name}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
{{vm.createFolderError.data.message}}
-
-
-
-
-
-
-
- Create
-
+
-
+
+
+
+
+
+
+
{{vm.createFolderError.data.message}}
+
+
-
+
+
+
-
diff --git a/src/Umbraco.Web.UI.Client/test/unit/common/filters/umbCmsJoinArray.filter.spec.js b/src/Umbraco.Web.UI.Client/test/unit/common/filters/umbCmsJoinArray.filter.spec.js
index 4a44b17bff5c..1c33a91b09a3 100644
--- a/src/Umbraco.Web.UI.Client/test/unit/common/filters/umbCmsJoinArray.filter.spec.js
+++ b/src/Umbraco.Web.UI.Client/test/unit/common/filters/umbCmsJoinArray.filter.spec.js
@@ -11,12 +11,9 @@
{input:[], separator:', ', prop:'param' , expectedResult: ''},
{input:[{param:'a'},{param:'b'},{param:'c'}], separator:', ', prop:null , expectedResult: ', , '},
{input:[{param:'a'},{param:'b'},{param:'c'}], separator:null, prop:'param' , expectedResult: 'abc'},
- ];
-
- var testCasesWithExpectedError = [
- {input:'test', separator:', ', prop:'param'},
- {input:null, separator:', ', prop:'param'},
- {input:undefined, separator:', ', prop:'param'},
+ {input:'test', separator:', ', prop:'param', expectedResult: 'test'},
+ {input:null, separator:', ', prop:'param', expectedResult: ''},
+ {input:undefined, separator:', ', prop:'param', expectedResult: ''},
];
beforeEach(module('umbraco'));
@@ -25,19 +22,11 @@
$umbCmsJoinArray = $filter('umbCmsJoinArray');
}));
-
testCases.forEach(function(test){
it('Blackbox tests with expected result=\''+test.expectedResult+'\'', function() {
expect($umbCmsJoinArray(test.input, test.separator, test.prop)).toBe(test.expectedResult);
});
});
-
- testCasesWithExpectedError.forEach(function(test){
- it('Blackbox tests with expected error. Input=\''+test.input+'\'', function() {
- expect(function() { $umbCmsJoinArray(test.input, test.separator, test.prop)}).toThrow();
- });
- });
-
});
}());
diff --git a/src/Umbraco.Web.UI.Docs/umb-docs.css b/src/Umbraco.Web.UI.Docs/umb-docs.css
index e49f2ec88fb2..850e0d4aa45b 100644
--- a/src/Umbraco.Web.UI.Docs/umb-docs.css
+++ b/src/Umbraco.Web.UI.Docs/umb-docs.css
@@ -107,3 +107,23 @@ a:hover {
.form-search > ul.nav > li.module > a:hover{
color: #fff;
}
+
+.close {
+ float: initial;
+ font-size: 14px;
+ font-weight: initial;
+ line-height: 20px;
+ color: #333333;
+ text-shadow: initial;
+ opacity: initial;
+ filter: initial;
+}
+
+.close:hover,
+.close:focus {
+ color: #333333;
+ text-decoration: initial;
+ cursor: initial;
+ opacity: initial;
+ filter: initial;
+}
diff --git a/src/Umbraco.Web.UI/umbraco/config/lang/cs.xml b/src/Umbraco.Web.UI/umbraco/config/lang/cs.xml
index 1c9def696eca..148ebf23532b 100644
--- a/src/Umbraco.Web.UI/umbraco/config/lang/cs.xml
+++ b/src/Umbraco.Web.UI/umbraco/config/lang/cs.xml
@@ -283,7 +283,7 @@
This item is in the Recycle Bin
-
Vytvořit novou šablonu obsahu z '%0%'
+
%0%]]>
Prázdná
Vybrat obsahovou šablonu
Šablona obsahu byla vytvořena
@@ -2118,7 +2118,6 @@
Otevřít akce vlastností
-
Čekejte
Stav obnovení
Cache paměť
diff --git a/src/Umbraco.Web.UI/umbraco/config/lang/cy.xml b/src/Umbraco.Web.UI/umbraco/config/lang/cy.xml
index 7ec801131303..0a414d23df04 100644
--- a/src/Umbraco.Web.UI/umbraco/config/lang/cy.xml
+++ b/src/Umbraco.Web.UI/umbraco/config/lang/cy.xml
@@ -18,10 +18,10 @@
Dileu
Analluogi
Golygu gosodiadau
- Gwagu bin ailgylchu
+ Gwagu bin ailgylchu
Galluogi
Allforio Math o Ddogfen
- Mewnforio Math o Ddogfen
+ Mewnforio Math o Ddogfen
Mewnforio Pecyn
Golygu mewn Cynfas
Gadael
@@ -35,6 +35,7 @@
Dileu
Ailenwi
Adfer
+ Gosod hawliau ar gyfer y dudalen %0%
Dewis ble i copïo
Dewis ble i symud
Yn y strwythyr goeden isod
@@ -140,9 +141,11 @@
Achub
Achub a cau
Achub a chyhoeddi
+ Achub ac amserlenni
Achub ac anfon am gymeradwyo
Achub gwedd rhestr
Amserlenni
+ Rhagolwg
Save and preview
Rhagolwg wedi analluogi gan nad oes templed wedi'i neilltuo
Dewis arddull
@@ -152,11 +155,13 @@
Achub a chynhyrchu modelau
Dadwneud
Ail-wneud
+ Rolio yn ôl
Dileu tag
Canslo
Cadarnhau
Mwy opsiynau cyhoeddi
Submit
+ Submit and close
Dangos am
@@ -193,6 +198,8 @@
Hanes (pob amrywiad)
+ Methwyd creu ffolder o dan id rhiant %0%
+ Methwyd creu ffolder o dan rhiant efo enw %0%
Mae'r enw'r ffolder methu cynnwys nodau anghyfreithlon.
Methwyd dileu eitem: %0%
@@ -250,6 +257,7 @@
Ystadegau
Teitl (dewisol)
Testyn amgen (dewisol)
+ Capsiwn (dewisol)
Math
Dadgyhoeddi
Wedi dadgyhoeddi
@@ -281,17 +289,28 @@
Cynnwys eitemau cynnwys heb eu cyhoeddi.
Mae'r gwerth yma'n gudd. Os ydych chi angen hawl i weld y gwerth yma, cysylltwch â gweinyddwr eich gwefan.
Mae'r gwerth yma'n gudd.
+ Pa ieithoedd yr hoffech chi eu cyhoeddi? Mae pob iaith sydd â chynnwys wei cael ei arbed!
Pa ieithoedd yr hoffech chi eu cyhoeddi?
+ Pa ieithoedd yr hoffech chi eu arbed?
+ Mae pob iaith sydd â chynnwys yn cael ei arbed wrth greu!
Pa ieithoedd hoffech chi anfon am gymeradwyaeth?
Pa ieithoedd yr hoffech chi eu hamserlennu?
Dewiswch yr ieithoedd i'w anghyhoeddi. Bydd anghyhoeddi iaith orfodol yn anghyhoeddi pob iaith.
+ Ieithoedd Cyhoeddedig
+ Ieithoedd heb ei gyhoeddi
+ Ieithoedd heb eu haddasu
+ Nid yw'r ieithoedd hyn wedi'u creu
Bydd pob amrywiad newydd yn cael ei arbed.
P'un amrywiadau wyt ti eisiau cyhoeddi?
Dewiswch pa amrywiadau wyt ti eisiau arbed.
+ Dewiswch pa amrywiadau i anfon am gymeradwyaeth.
+ Gosod cyhoeddi rhestredig...
+ Dewiswch yr amrywiadau i'w anghyhoeddi. Bydd anghyhoeddi iaith orfodol yn anghyhoeddi pob amrywiad.
Mae'r amrywiadau canlynol yn ofynnol er mwyn i gyhoeddi:
Ni ddim yn barod i Gyhoeddi
Barod i Gyhoeddi?
Barod i Arbed?
+ Ailosod pwynt canolog
Anfonwch am gymeradwyaeth
Dewiswch y dyddiad a'r amser i gyhoeddi a / neu anghyhoeddi'r eitem gynnwys.
Creu newydd
@@ -309,11 +328,17 @@
Cliciwch i lanlwytho
+ Gollyngwch eich ffeiliau yma...
+ Dolen i gyfrwng
neu cliciwch yma i ddewis ffeiliau
+ Gallwch lusgo ffeiliau yma i lanlwtho.
+ Dim ond mathau caniatol o ffeil sydd
Ni ellir lanlwytho'r ffeil yma, nid yw math y ffeil yn wedi'i gymeradwyo
Maint ffeil uchaf
Gwraidd gyfrwng
+ Methwyd symud cyfrwng
Ni all y ffolderi rhiant a chyrchfan fod yr un peth
+ Methwyd copïo cyfrwng
Methwyd creu ffolder o dan id rhiant %0%
Methwyd ailenwi'r ffolder gyda id %0%
Llusgo a gollwng eich ffeil(iau) i mewn i'r ardal
@@ -324,6 +349,18 @@
Pob Aelod
Nid oes gan grwpiau aelodau unrhyw eiddo ychwanegol ar gyfer golygu.
+
+ Wedi methu copïo'r fath cynnwys
+ Wedi methu symud y fath cynnwys
+
+
+ Wedi methu copïo'r fath cyfrwng
+ Wedi methu symud y fath cyfrwng
+ Dewis awtomatig
+
+
+ Wedi methu copïo'r fath aelod
+
Ble hoffwch greu eitem newydd %0%
Creu eitem o dan
@@ -340,6 +377,16 @@
Nid yw'r cyfryngau a ddewiswyd yn y goeden yn caniatáu i unrhyw gyfryngau eraill gael eu creu oddi tano.
Golygu caniatâd ar gyfer y math hwn o gyfryngau
Math o Ddogfen heb dempled
+ Math o Ddogfen efo dempled
+ Y diffiniad data ar gyfer tudalen gynnwys y gellir ei chreu gan olygyddion yn y goeden gynnwys ac sydd ar gael yn uniongyrchol trwy URL.
+ Math o Ddogfen
+ Y diffiniad data ar gyfer cydran gynnwys y gellir ei chreu gan olygyddion yn y goeden gynnwys a'i ddewis ar dudalennau eraill ond nid oes ganddo URL uniongyrchol.
+ Math o Elfen
+ Yn diffinio'r sgema ar gyfer set o eiddo ailadroddus, er enghraifft, mewn golygydd eiddo 'Rhestr Bloc' neu 'Cynnwys Amnyth'.
+ Cyfansoddiad
+ Yn diffinio set o eiddo, y gellir ei hailddefnyddio, a'i chynnwys yn y diffiniad o sawl Math o Ddogfen arall. Er enghraifft, set o 'Gosodiadau Tudalen Cyffredin'.
+ Ffolder
+ Yn cael ei defnyddio i drefnu'r Mathau o Ddogfennau, Cyfansoddiadau a Mathau Elfen a grëir yn y goeden Math o Ddogfen hon.
Ffolder newydd
Math o ddata newydd
Ffeil JavaScript newydd
@@ -350,6 +397,7 @@
Macro rhan-wedd newydd (heb macro)
Ffeil ddalen arddull newydd
Ffeil ddalen arddull Golygydd Testun Cyfoethog newydd
+ Macro rhan-wedd wag newydd
Pori eich gwefan
@@ -401,9 +449,14 @@
Gweinyddu enwau gwesteia
Cau'r ffenestr yma
Ydych chi'n sicr eich bod eisiau dileu
+ Wyt ti'n siŵr fod ti eisiau dileu %0% yn seiliedig ar %1%
+
Ydych chi'n sicr eich bod eisiau analluogi
+
Wyt ti'n siŵr fod ti eisiau dileu
%0%]]>
+ %0%]]>
+
Ydych chi'n sicr?
Ydych chi'n sicr?
Torri
@@ -424,6 +477,7 @@
Dolen fewnol:
Wrth ddefnyddio dolenni leol, defnyddiwch "#" o flaen y ddolen
Agor mewn ffenestr newydd?
+ Gosodiadau Macro
Nid yw'r macro yma yn cynnwys unrhyw briodweddau gallwch chi olygu
Gludo
Golygu hawliau ar gyfer
@@ -442,6 +496,10 @@
Bydd storfa'r wefan yn cael ei adnewyddu. Bydd holl gynnwys cyhoeddi yn cael ei ddiweddaru, ac bydd holl gynnwys sydd heb ei gyhoeddi yn dal i fod heb ei gyhoeddi.
Nifer o golofnau
Nifer o resi
+
+ Gosodwch id dalfan wrth osod ID ar eich dalfan gallwch chwistrellu cynnwys i mewn i'r templed yma o dempledi blentyn,
+ wrth gyfeirio at yr ID yma gan ddefnyddio elfen <asp:content />
.]]>
+
Dewiswch id dalfan o'r rhestr isod. Gallwch ddim ond
ddewis Id (neu sawl) o feistr y dempled bresennol.]]>
@@ -449,12 +507,14 @@
Cliciwch ar y llun i weld y maint llawn
Dewis eitem
Gweld Eitem Storfa
+ Creu ffolder...
Perthnasu at y gwreiddiol
Cynnwys disgynyddion
Y gymuned fwyaf cyfeillgar
Dolen i dudalen
Agor y ddolen ddogfen mewn ffenestr neu tab newydd
Dolen i gyfrwng
+ Dolen i ffeil
Dewis nod cychwyn cynnwys
Dewis cyfrwng
Dewis y math o gyfrwng
@@ -500,6 +560,7 @@
]]>
Enw Diwylliant
+ Golygu allwedd yr eitem geiriadur.
Darparwch enw arall...
Yn generadu enw arall...
Creu eitem
+ Creu
Golygu
Enw
+ Caniatáu ar y gwraidd
+ Dim ond Mathau o Gynnwys gyda hwn wedi ticio all gael eu creu ar lefel wraidd coed Cynnwys a Chyfrwng
+ Mathau o nod blentyn caniataol
+ Cyfansoddiadau Mathau o Ddogfen
+ Creu
+ Dileu tab
+ Disgrifiad
+ Tab newydd
+ Tab
+ Ciplun bach
+ Galluogi gwedd rhestr
+ Ffurfweddu'r eitem gynnwysi ddangos rhestr trefnadwy & a chwiladwy o'i phlant, ni fydd y plant yn cael eu dangos yn y goeden
+ Gwedd rhestr bresennol
+ Y fath o ddata gwedd rhestr gweithredol
Creu gwedd rhestr pwrpasol
Dileu gwedd rhestr pwrpasol
Mae math o gynnwys, math o gyfrwng neu math o aeold gyda'r enw arall yma'n bodoli eisoes
@@ -581,9 +657,14 @@
Taflenni arddull perthnasol
Dangos label
Lled ac uchder
+ Holl fathau o briodweddau & data priodwedd
+ yn defnyddio'r fath yma o ddata yn cael eu dileu yn barhaol, cadarnhewch eich bod eisiau dileu'r rhain hefyd
+ Iawn, dileu
+ a holl fathau o briodwedd & data priodwedd sy'n defnyddio'r math o ddata yma
Dewiswch y ffolder i symud
i'r strwythyr goeden isod
wedi symud o dan
+
%0% yn dileu'r briodweddau a'i data o'r eitemau canlynol]]>
Rwy'n deall y weithred hon yn dileu'r holl briodweddau a data sy'n seiliedig ar Fath o Ddata hon
@@ -607,15 +688,25 @@
Darparwch yr enw ac yr enw arall ar y math o briodwedd newydd!
Mae yna broblem gyda hawliau darllen/ysgrifennu i ffeil neu ffolder penodol
Gwall yn llwytho sgript Rhan-Wedd (ffeil: %0%)
+ Gwall yn llwytho Rheolydd Defnyddiwr '%0%'
+ Gwall yn llwytho Rheolydd Pwrpasol (Gwasaneth: %0%, Math: '%1%')
+ Gwall yn llwytho sgript MacroEngine (ffeil: %0%)
+ "Gwall yn dosbarthu'r ffeil XSLT: %0%
+ "Gwall yn darllen y ffeil XSLT: %0%
Darparwch deitl
Dewiswch fath
Rydych ar fîn gwneud y llun yn fwy 'na'r maint gwreiddiol. Ydych chi'n sicr eich bod eisiau parhau?
+ Gwall yn y sgript python
+ Nid yw'r sgript python wedi'i achub gan ei fod yn cynnwys gwall(au)
Nod gychwynnol wedi'i ddileu, cysylltwch â'ch gweinyddwr
Marciwch gynnwys cyn newid arddull
Dim arddulliau gweithredol ar gael
Symudwch y cyrchwr ar ochr chwith y ddwy gell yr ydych eisiau cyfuno
Ni allwch hollti cell sydd heb ei gyfuno.
Mae gan briodwedd hon gwallau
+ Gwall yn y ffynhonnell XSLT
+ Nid yw'r XSLTwedi'i achub gan ei fod yn cynnwys gwall(au)
+ Mae gwall ffurfwedd gyda'r math o ddata sy'n cael ei ddefnyddio ar gyfer y priodwedd yma, gwiriwch y fath o ddata
Dewisiadau
@@ -636,6 +727,7 @@
Clirio
Cau
Cau Ffenest
+ Cau Cwarel
Sylw
Cadarnhau
Gorfodi
@@ -667,6 +759,7 @@
Cyntaf
Canolbwynt
Cyffredinol
+ Generig
Grŵpiau
Grŵp
Uchder
@@ -676,6 +769,7 @@
Eicon
Id
Mewnforio
+ Cynnwys is-ffolderi wrth chwilio
Search only this folder Chwilio yn ffolder hwn yn unig
Gwybodaeth
Ymyl mewnol
@@ -697,6 +791,7 @@
Gofynnol
Neges
Symud
+ Mwy
Enw
Newydd
Nesaf
@@ -705,6 +800,7 @@
I ffwrdd
Iawn
Agor
+ Opsiynau
Ymlaen
neu
Trefnu wrth
@@ -766,13 +862,35 @@
Yn achub...
presennol
Mewnblannu
+ Adfer
dewiswyd
Arall
Erthyglau
Fideos
+ Clirio
+ Arsefydlu
+ Avatar am
+ Du
+ Gwyrdd
+ Melyn
+ Oren
Glas
+ Llwyd Las
+ Llwyd
+ Brown
+ Glas Golau
+ Gwyrddlas
+ Gwyrdd Golau
+ Leim
+ Melyngoch
+ Oren Ddwfn
+ Coch
+ Pinc
+ Piws
+ Piws Ddwfn
+ Dulas
Ychwanegu tab
@@ -797,6 +915,7 @@
Cyffredinol
Golygydd
Toglo caniatáu amrywiadau diwylliant
+ Toglo caniatáu segmentiad
Lliw cefndir
@@ -825,7 +944,7 @@
Cliciwch y botwm ceisio eto pan rydych wedi
gorffen.
- Mwy o wybodaeth am newid y ffeil web.config yma .
]]>
+ Mwy o wybodaeth am newid y ffeil web.config yma.]]>
@@ -989,85 +1108,85 @@ Er mwyn gweinyddu eich gwefan, agorwch swyddfa gefn Umbraco a dechreuwch ychwang
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Ailosod cyfrinair wedi dymuno
-
-
- Eich enw defnyddiwr ar gyfer swyddfa gefn Umbraco yw: %0%
-
-
-
-
- Os na allwch glicio ar y ddolen yma, copïwch a gludwch y URL i mewn i'ch porwr:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-