numberrange prevalue editor

This commit is contained in:
Niels Lyngsø
2020-02-13 12:38:07 +01:00
parent 35ba840a25
commit 42ab969725
5 changed files with 57 additions and 4 deletions
@@ -224,6 +224,7 @@
// Used for prevalue editors
@import "components/prevalues/multivalues.less";
@import "../views/prevalueeditors/numberrange.less";
// Block Elements
@import "../views/blockelements/labelblock/labelblock.editor.less";
@@ -0,0 +1,9 @@
(function () {
function NumberRangeController($scope) {
console.log("NumberRangeController")
}
angular.module("umbraco").controller("Umbraco.PrevalueEditors.NumberRangeController", NumberRangeController);
})();
@@ -0,0 +1,22 @@
<div class="umb-property-editor umb-prevalues-numberrange" ng-controller="Umbraco.PrevalueEditors.NumberRangeController">
<ng-form name="prevalueNumberRangeForm">
<input name="numberFieldMin" class="__min-input"
type="number"
ng-model="model.value.min"
placeholder="0"
fix-number />
<span class="__enDash"></span>
<input name="numberFieldMax" class="__max-input"
type="number"
ng-model="model.value.max"
placeholder="∞"
fix-number />
<span ng-messages="prevalueNumberRangeForm.numberFieldMin.$error" show-validation-on-submit >
<span class="help-inline" ng-message="number">Not a number</span>
</span>
<span ng-messages="prevalueNumberRangeForm.numberFieldMax.$error" show-validation-on-submit >
<span class="help-inline" ng-message="number">Not a number</span>
</span>
</ng-form>
</div>
@@ -0,0 +1,14 @@
.umb-prevalues-numberrange {
.__min-input {
}
.__enDash {
display: inline-block;
vertical-align: middle;
margin-top: 5px;
}
.__max-input {
}
}
@@ -14,11 +14,18 @@ namespace Umbraco.Web.PropertyEditors
[ConfigurationField("elementTypes", "Available Blocks", "views/propertyeditors/blocklist/prevalue/blocklist.elementtypepicker.html", Description = "Define the available blocks.")]
public ElementType[] ElementTypes { get; set; }
[ConfigurationField("minNumber", "Minimum amount", "number")]
public int MinNumber { get; set; }
[ConfigurationField("maxNumber", "Maximum amount", "number")]
public int MaxNumber { get; set; }
[ConfigurationField("range", "Amount", "numberrange", Description = "Set a required range of blocks")]
public NumberRange Range { get; set; } = new NumberRange();
public class NumberRange
{
[JsonProperty("min")]
public int? Min { get; set; }
[JsonProperty("max")]
public int? Max { get; set; }
}
public class ElementType
{