Fixes macro parameter form validation, adds the number parameter editor, updates the parameter editor mapping, adds more fixes to the number fixer and changes the integer property editor to use a type='number'

This commit is contained in:
Shannon
2013-10-30 15:45:16 +11:00
parent 46ba9718ff
commit e4f8f6ebd5
5 changed files with 27 additions and 11 deletions

View File

@@ -94,6 +94,12 @@ namespace Umbraco.Core.PropertyEditors
CreateMap("textMultiLine", Constants.PropertyEditors.TextboxMultipleAlias);
CreateMap("text", Constants.PropertyEditors.TextboxAlias);
CreateMap("bool", Constants.PropertyEditors.TrueFalseAlias);
CreateMap("mediaCurrent", Constants.PropertyEditors.MediaPickerAlias);
CreateMap("number", Constants.PropertyEditors.IntegerAlias);
}
}

View File

@@ -31,6 +31,13 @@ function fixNumber() {
}
}
ngModel.$formatters.push(function (value) {
if (angular.isString(value)) {
return parseFloat(value);
}
return value;
});
//This fixes this angular issue:
//https://github.com/angular/angular.js/issues/2144
// which doesn't actually validate the number input properly since the model only changes when a real number is entered

View File

@@ -29,9 +29,11 @@
<ul class="unstyled">
<li ng-repeat="param in $parent.macroParams">
<umb-control-group label="{{param.name}}">
<umb-editor model="param"></umb-editor>
</umb-control-group>
<ng-form name="parameterForm">
<umb-control-group label="{{param.name}}">
<umb-editor model="param"></umb-editor>
</umb-control-group>
</ng-form>
</li>
</ul>

View File

@@ -1,9 +1,10 @@
<div class="umb-editor umb-integer">
<input name="integerField" type="text" class="umb-textstring span7 textstring"
<div class="umb-editor">
<input name="integerField" type="number" class="umb-editor umb-number"
ng-model="model.value"
val-regex="^\d*$"
val-server="value" />
<span class="help-inline" val-msg-for="integerField" val-toggle-msg="valRegex">Invalid integer value</span>
val-server="value"
fix-number />
<span class="help-inline" val-msg-for="integerField" val-toggle-msg="number">Not a number</span>
<span class="help-inline" val-msg-for="integerField" val-toggle-msg="valServer">{{propertyForm.requiredField.errorMsg}}</span>
</div>
</div>

View File

@@ -3,7 +3,7 @@ using Umbraco.Core.PropertyEditors;
namespace Umbraco.Web.PropertyEditors
{
[PropertyEditor(Constants.PropertyEditors.IntegerAlias, "Numeric", "integer")]
[PropertyEditor(Constants.PropertyEditors.IntegerAlias, "Numeric", "integer", IsParameterEditor = true)]
public class IntegerPropertyEditor : PropertyEditor
{
/// <summary>