diff --git a/CHANGELOG.md b/CHANGELOG.md
index bc7b2544..7a6c65cf 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,8 @@
## 1.0.0-RC2
+ - BUGFIX #132 Fix boolean values in list
+ - FEATURE #132 Add id to search fields in form and dynamic list
- ENHANCEMENT #131 Add created date to list view
- BUGFIX #130 Fixed csv export for big results
- FEATURE #129 Add disabled field type configuration
diff --git a/ListBuilder/DynamicListBuilder.php b/ListBuilder/DynamicListBuilder.php
index d7c69b35..8d713ce0 100644
--- a/ListBuilder/DynamicListBuilder.php
+++ b/ListBuilder/DynamicListBuilder.php
@@ -84,10 +84,6 @@ public function build(Dynamic $dynamic, $locale)
*/
protected function toString($value)
{
- if (!$value) {
- return '';
- }
-
if (is_string($value) || is_numeric($value)) {
return $value;
}
@@ -100,6 +96,10 @@ protected function toString($value)
return $value->format('c');
}
+ if (!$value) {
+ return '';
+ }
+
if (!is_array($value)) {
throw new \Exception('Invalid value for list builder.');
}
diff --git a/ListBuilder/DynamicListFactory.php b/ListBuilder/DynamicListFactory.php
index aa2e2a8c..d96008b8 100644
--- a/ListBuilder/DynamicListFactory.php
+++ b/ListBuilder/DynamicListFactory.php
@@ -53,11 +53,10 @@ public function getFieldDescriptors(Form $form, $locale)
}
$title = '';
-
$translation = $field->getTranslation($locale);
if ($translation) {
- $title = $translation->getTitle();
+ $title = $translation->getShortTitle() ?: $translation->getTitle();
}
$fieldDescriptors[$field->getKey()] = new FieldDescriptor(
diff --git a/Resources/public/dist/components/dynamics/list/main.js b/Resources/public/dist/components/dynamics/list/main.js
index 882803ee..f1b45ca4 100644
--- a/Resources/public/dist/components/dynamics/list/main.js
+++ b/Resources/public/dist/components/dynamics/list/main.js
@@ -1 +1 @@
-define(["jquery"],function(a){"use strict";var b={toolbarId:"dynamic-toolbar",toolbarKey:"dynamics",listId:"dynamic-list",endPointUrl:"/admin/api/form/dynamics",fieldsAction:"/admin/api/form/dynamics/fields"};return{layout:function(){return{extendExisting:!0,content:{width:this.options.width?this.options.width:"fixed",leftSpace:!0,rightSpace:!0}}},initialize:function(){this.render(),this.initPreview()},initPreview:function(){this.sandbox.emit("sulu.preview.initialize",null,!0)},getUrlParameters:function(){var a={form:this.getFormDataProperty(this.options.property),webspaceKey:this.options.webspace,locale:this.options.language,view:this.options.view,sortBy:"created",sortOrder:"desc"};return this.options.type&&(a.type=this.options.type,a.typeId=this.getFormDataProperty("id")),a},getFormDataProperty:function(a){var b=this.getFormData();if(b||"undefined"!=typeof b[a])return b[a]},getFormData:function(){var a=null;if("function"==typeof this.options.data?a=this.options.data():"object"==typeof this.options.data?a=this.options.data:"undefined"!=typeof this.options&&(a=this.options),a){if(this.options.page>1){if("undefined"===a._embedded||"undefined"==typeof a._embedded.pages)return;a=a._embedded.pages[this.options.page-2]}return a}},render:function(){this.sandbox.dom.html(this.$el,'
');var c=this.getUrlParameters();if(!c.form)return void a("#"+b.listId).html(""+app.sandbox.translate("select.no-choice")+"
");var d="?"+a.param(c);this.sandbox.sulu.initListToolbarAndList.call(this,b.toolbarKey,b.fieldsAction+d,{el:this.$find("#"+b.toolbarId),template:this.sandbox.sulu.buttons.get({settings:{options:{id:"settings",dropdownItems:{"export":{options:{title:"public.export",icon:"download",callback:function(){var d=a("");a("body").append(d);var e={el:d,urlParameter:c,url:b.endPointUrl+".csv"};App.start([{name:"csv-export@suluform",options:e}]).fail(function(){console.warn("Ignore error! For date-range specific export at least Sulu 1.5 is needed. Automatic fallback to default export."),App.start([{name:"csv-export@suluadmin",options:e}])})}.bind(this)}},columnOptions:{options:{type:"columnOptions"}}}}}}),instanceName:this.instanceName},{el:this.$find("#"+b.listId),instanceName:this.instanceName,url:b.endPointUrl+d,resultKey:"dynamics",searchFields:["email","firstName","lastName"],viewOptions:{table:{selectItem:!1,fullWidth:!0}}})}}});
\ No newline at end of file
+define(["jquery"],function(a){"use strict";var b={toolbarId:"dynamic-toolbar",toolbarKey:"dynamics",listId:"dynamic-list",endPointUrl:"/admin/api/form/dynamics",fieldsAction:"/admin/api/form/dynamics/fields"};return{layout:function(){return{extendExisting:!0,content:{width:this.options.width?this.options.width:"fixed",leftSpace:!0,rightSpace:!0}}},initialize:function(){this.render(),this.initPreview()},initPreview:function(){this.sandbox.emit("sulu.preview.initialize",null,!0)},getUrlParameters:function(){var a={form:this.getFormDataProperty(this.options.property),webspaceKey:this.options.webspace,locale:this.options.language,view:this.options.view,sortBy:"created",sortOrder:"desc"};return this.options.type&&(a.type=this.options.type,a.typeId=this.getFormDataProperty("id")),a},getFormDataProperty:function(a){var b=this.getFormData();if(b||"undefined"!=typeof b[a])return b[a]},getFormData:function(){var a=null;if("function"==typeof this.options.data?a=this.options.data():"object"==typeof this.options.data?a=this.options.data:"undefined"!=typeof this.options&&(a=this.options),a){if(this.options.page>1){if("undefined"===a._embedded||"undefined"==typeof a._embedded.pages)return;a=a._embedded.pages[this.options.page-2]}return a}},render:function(){this.sandbox.dom.html(this.$el,'');var c=this.getUrlParameters();if(!c.form)return void a("#"+b.listId).html(""+app.sandbox.translate("select.no-choice")+"
");var d="?"+a.param(c);this.sandbox.sulu.initListToolbarAndList.call(this,b.toolbarKey,b.fieldsAction+d,{el:this.$find("#"+b.toolbarId),template:this.sandbox.sulu.buttons.get({settings:{options:{id:"settings",dropdownItems:{"export":{options:{title:"public.export",icon:"download",callback:function(){var d=a("");a("body").append(d);var e={el:d,urlParameter:c,url:b.endPointUrl+".csv"};App.start([{name:"csv-export@suluform",options:e}]).fail(function(){console.warn("Ignore error! For date-range specific export at least Sulu 1.5 is needed. Automatic fallback to default export."),App.start([{name:"csv-export@suluadmin",options:e}])})}.bind(this)}},columnOptions:{options:{type:"columnOptions"}}}}}}),instanceName:this.instanceName},{el:this.$find("#"+b.listId),instanceName:this.instanceName,url:b.endPointUrl+d,resultKey:"dynamics",searchFields:["id","email","firstName","lastName"],viewOptions:{table:{selectItem:!1,fullWidth:!0}}})}}});
\ No newline at end of file
diff --git a/Resources/public/dist/components/forms/list/main.js b/Resources/public/dist/components/forms/list/main.js
index b5f3fad6..3a025629 100644
--- a/Resources/public/dist/components/forms/list/main.js
+++ b/Resources/public/dist/components/forms/list/main.js
@@ -1 +1 @@
-define(["suluform/collections/forms"],function(a){"use strict";var b=new a,c={toolbarId:"form-toolbar",listId:"form-list",lastClickedEventSettingsKey:"suluformformLastClicked",endPointUrl:b.url(),toolbarKey:"forms",toolbarSearchFields:["title"],fieldsAction:b.fieldsUrl(),eventPrefix:"sulu.form.forms.",translatePrefix:"sulu_form.forms."};return{view:!0,layout:{content:{width:"max"}},header:function(){return{title:c.translatePrefix+"title",noBack:!0,toolbar:{languageChanger:{preSelected:this.options.language},buttons:{add:{},deleteSelected:{}}}}},initialize:function(){this.sandbox.sulu.triggerDeleteSuccessLabel(c.translatePrefix+"success_delete"),this.bindCustomEvents(),this.render()},bindCustomEvents:function(){this.sandbox.on("sulu.toolbar.add",this.add.bind(this)),this.sandbox.on("sulu.toolbar.delete",this.deleteSelected.bind(this)),this.sandbox.on("husky.datagrid.item.click",this.saveLastClickedEvent.bind(this)),this.sandbox.on("husky.datagrid.number.selections",this.activateDeleteButton.bind(this))},activateDeleteButton:function(a){a?this.sandbox.emit("sulu.header.toolbar.item.enable","deleteSelected",!0):this.sandbox.emit("sulu.header.toolbar.item.disable","deleteSelected",!1)},render:function(){this.sandbox.dom.html(this.$el,''),this.sandbox.sulu.initListToolbarAndList.call(this,c.toolbarKey,c.fieldsAction+"?locale="+this.options.language,{el:this.$find("#"+c.toolbarId),template:"default",instanceName:this.instanceName},{el:this.$find("#"+c.listId),instanceName:this.instanceName,url:c.endPointUrl+"?locale="+this.options.language+"&flat=true&sortBy=title&sortOrder=asc",resultKey:c.toolbarKey,searchFields:c.toolbarSearchFields,viewOptions:{table:{icons:[{column:"title",icon:"pencil",align:"left",callback:this.edit.bind(this)}],rowClickSelect:!0,highlightSelected:!0,fullWidth:!0}}})},add:function(){this.sandbox.emit(c.eventPrefix+"navigate-add")},edit:function(a){this.saveLastClickedEvent(a),this.sandbox.emit(c.eventPrefix+"navigate-to",a)},saveLastClickedEvent:function(a){a&&this.sandbox.sulu.saveUserSetting(c.lastClickedEventSettingsKey,a)},deleteSelected:function(){this.sandbox.emit("husky.datagrid.items.get-selected",function(a){this.sandbox.emit(c.eventPrefix+"delete",a,function(a){this.sandbox.emit("husky.datagrid.record.remove",a)}.bind(this),function(){this.sandbox.emit("sulu.labels.success.show",c.translatePrefix+"delete.success","labels.success")}.bind(this))}.bind(this))}}});
\ No newline at end of file
+define(["suluform/collections/forms"],function(a){"use strict";var b=new a,c={toolbarId:"form-toolbar",listId:"form-list",lastClickedEventSettingsKey:"suluformformLastClicked",endPointUrl:b.url(),toolbarKey:"forms",toolbarSearchFields:["id","title"],fieldsAction:b.fieldsUrl(),eventPrefix:"sulu.form.forms.",translatePrefix:"sulu_form.forms."};return{view:!0,layout:{content:{width:"max"}},header:function(){return{title:c.translatePrefix+"title",noBack:!0,toolbar:{languageChanger:{preSelected:this.options.language},buttons:{add:{},deleteSelected:{}}}}},initialize:function(){this.sandbox.sulu.triggerDeleteSuccessLabel(c.translatePrefix+"success_delete"),this.bindCustomEvents(),this.render()},bindCustomEvents:function(){this.sandbox.on("sulu.toolbar.add",this.add.bind(this)),this.sandbox.on("sulu.toolbar.delete",this.deleteSelected.bind(this)),this.sandbox.on("husky.datagrid.item.click",this.saveLastClickedEvent.bind(this)),this.sandbox.on("husky.datagrid.number.selections",this.activateDeleteButton.bind(this))},activateDeleteButton:function(a){a?this.sandbox.emit("sulu.header.toolbar.item.enable","deleteSelected",!0):this.sandbox.emit("sulu.header.toolbar.item.disable","deleteSelected",!1)},render:function(){this.sandbox.dom.html(this.$el,''),this.sandbox.sulu.initListToolbarAndList.call(this,c.toolbarKey,c.fieldsAction+"?locale="+this.options.language,{el:this.$find("#"+c.toolbarId),template:"default",instanceName:this.instanceName},{el:this.$find("#"+c.listId),instanceName:this.instanceName,url:c.endPointUrl+"?locale="+this.options.language+"&flat=true&sortBy=title&sortOrder=asc",resultKey:c.toolbarKey,searchFields:c.toolbarSearchFields,viewOptions:{table:{icons:[{column:"title",icon:"pencil",align:"left",callback:this.edit.bind(this)}],rowClickSelect:!0,highlightSelected:!0,fullWidth:!0}}})},add:function(){this.sandbox.emit(c.eventPrefix+"navigate-add")},edit:function(a){this.saveLastClickedEvent(a),this.sandbox.emit(c.eventPrefix+"navigate-to",a)},saveLastClickedEvent:function(a){a&&this.sandbox.sulu.saveUserSetting(c.lastClickedEventSettingsKey,a)},deleteSelected:function(){this.sandbox.emit("husky.datagrid.items.get-selected",function(a){this.sandbox.emit(c.eventPrefix+"delete",a,function(a){this.sandbox.emit("husky.datagrid.record.remove",a)}.bind(this),function(){this.sandbox.emit("sulu.labels.success.show",c.translatePrefix+"delete.success","labels.success")}.bind(this))}.bind(this))}}});
\ No newline at end of file
diff --git a/Resources/public/js/components/dynamics/list/main.js b/Resources/public/js/components/dynamics/list/main.js
index b5b32e85..e2e8ae0b 100644
--- a/Resources/public/js/components/dynamics/list/main.js
+++ b/Resources/public/js/components/dynamics/list/main.js
@@ -184,7 +184,7 @@ define(['jquery'], function ($) {
instanceName: this.instanceName,
url: constants.endPointUrl + queryString,
resultKey: 'dynamics',
- searchFields: ['email', 'firstName', 'lastName'],
+ searchFields: ['id', 'email', 'firstName', 'lastName'],
viewOptions: {
table: {
selectItem: false,
diff --git a/Resources/public/js/components/forms/list/main.js b/Resources/public/js/components/forms/list/main.js
index 51e0eef5..213f0725 100644
--- a/Resources/public/js/components/forms/list/main.js
+++ b/Resources/public/js/components/forms/list/main.js
@@ -14,7 +14,7 @@ define(['suluform/collections/forms'], function (Collection) {
lastClickedEventSettingsKey: 'suluformformLastClicked',
endPointUrl: collection.url(),
toolbarKey: 'forms',
- toolbarSearchFields: ['title'],
+ toolbarSearchFields: ['id', 'title'],
fieldsAction: collection.fieldsUrl(),
eventPrefix: 'sulu.form.forms.',
translatePrefix: 'sulu_form.forms.'