mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-25 19:17:13 +08:00
Fixing that the content fields' values in a new content item were reset when building their editor (#7505) (#7507)
Fixes #7505
This commit is contained in:
committed by
Sébastien Ros
parent
ddfcfd7379
commit
863d2e4e6b
@@ -46,7 +46,7 @@ namespace Orchard.Core.Common.Drivers {
|
||||
return ContentShape("Fields_Common_Text_Edit", GetDifferentiator(field, part),
|
||||
() => {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<TextFieldSettings>();
|
||||
var text = part.IsNew() ? settings.DefaultValue : field.Value;
|
||||
var text = part.IsNew() && String.IsNullOrEmpty(field.Value) ? settings.DefaultValue : field.Value;
|
||||
|
||||
var viewModel = new TextFieldDriverViewModel {
|
||||
Field = field,
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Orchard.Fields.Drivers {
|
||||
protected override DriverResult Editor(ContentPart part, BooleanField field, dynamic shapeHelper) {
|
||||
return ContentShape("Fields_Boolean_Edit", GetDifferentiator(field, part),
|
||||
() => {
|
||||
if (part.IsNew()) {
|
||||
if (part.IsNew() && field.Value == null) {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<BooleanFieldSettings>();
|
||||
field.Value = settings.DefaultValue;
|
||||
}
|
||||
|
||||
@@ -75,7 +75,7 @@ namespace Orchard.Fields.Drivers {
|
||||
|
||||
protected override DriverResult Editor(ContentPart part, DateTimeField field, dynamic shapeHelper) {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<DateTimeFieldSettings>();
|
||||
var value = part.IsNew() ? settings.DefaultValue : field.DateTime;
|
||||
var value = part.IsNew() && field.DateTime == default(DateTime) ? settings.DefaultValue : field.DateTime;
|
||||
var options = new DateLocalizationOptions();
|
||||
|
||||
// Don't do any time zone conversion if field is semantically a date-only field, because that might mutate the date component.
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Orchard.Fields.Drivers {
|
||||
protected override DriverResult Editor(ContentPart part, EnumerationField field, dynamic shapeHelper) {
|
||||
return ContentShape("Fields_Enumeration_Edit", GetDifferentiator(field, part),
|
||||
() => {
|
||||
if (part.IsNew()) {
|
||||
if (part.IsNew() && String.IsNullOrEmpty(field.Value)) {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<EnumerationFieldSettings>();
|
||||
if (!String.IsNullOrWhiteSpace(settings.DefaultValue)) {
|
||||
field.Value = settings.DefaultValue;
|
||||
|
||||
@@ -36,7 +36,7 @@ namespace Orchard.Fields.Drivers {
|
||||
protected override DriverResult Editor(ContentPart part, InputField field, dynamic shapeHelper) {
|
||||
return ContentShape("Fields_Input_Edit", GetDifferentiator(field, part),
|
||||
() => {
|
||||
if (part.IsNew()) {
|
||||
if (part.IsNew() && String.IsNullOrEmpty(field.Value)) {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<InputFieldSettings>();
|
||||
field.Value = settings.DefaultValue;
|
||||
}
|
||||
|
||||
@@ -39,8 +39,12 @@ namespace Orchard.Fields.Drivers {
|
||||
() => {
|
||||
if (part.IsNew()) {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<LinkFieldSettings>();
|
||||
field.Value = settings.DefaultValue;
|
||||
field.Text = settings.TextDefaultValue;
|
||||
if (String.IsNullOrEmpty(field.Value)) {
|
||||
field.Value = settings.DefaultValue;
|
||||
}
|
||||
if (String.IsNullOrEmpty(field.Text)) {
|
||||
field.Text = settings.TextDefaultValue;
|
||||
}
|
||||
}
|
||||
return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part));
|
||||
});
|
||||
|
||||
@@ -44,7 +44,7 @@ namespace Orchard.Fields.Drivers {
|
||||
return ContentShape("Fields_Numeric_Edit", GetDifferentiator(field, part),
|
||||
() => {
|
||||
var settings = field.PartFieldDefinition.Settings.GetModel<NumericFieldSettings>();
|
||||
var value = part.IsNew() ? settings.DefaultValue : Convert.ToString(field.Value, _cultureInfo.Value);
|
||||
var value = part.IsNew() && field.Value == null ? settings.DefaultValue : Convert.ToString(field.Value, _cultureInfo.Value);
|
||||
|
||||
var model = new NumericFieldViewModel {
|
||||
Field = field,
|
||||
|
||||
Reference in New Issue
Block a user