Skip to content
Snippets Groups Projects
Commit 530dbe55 authored by Patrick Barroca's avatar Patrick Barroca :grin:
Browse files

Merge branch 'hotline#88412_probleme_dans_l_agenda' into 'hotline'

hotline #88412 fix form radio element value

See merge request !3062
parents 2650c29f a5e56627
Branches
Tags
3 merge requests!3297WIP: Master,!3067Hotline,!3062hotline #88412 fix form radio element value
Pipeline #6576 passed with stage
in 35 minutes and 23 seconds
- ticket #88412 : Administration : correction de l'enregistrement des formulaires ou la valeur des éléments de type radio comporte des accents
\ No newline at end of file
......@@ -87,7 +87,5 @@ class Class_CustomField_Value extends Storm_Model_Abstract {
return $options;
return [$this->getValue()];
}
}
?>
......@@ -121,6 +121,7 @@ class ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy_ckeditor extend
class ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy_select extends ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy {
protected function getOptions() {
$options = $this->_field->getOptionsListAsArray();
$multioptions=[];
......@@ -136,12 +137,14 @@ class ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy_select extends
class ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy_multiCheckbox extends ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy {
protected function getOptions() {
$options = $this->_field->getOptionsListAsArray();
$multioptions=[];
foreach($options as $option) {
$multioptions[$option]=$option;
}
return ['multioptions' => $multioptions];
}
......@@ -149,7 +152,4 @@ class ZendAfi_Form_Admin_CustomFields_ModelValues_Field_Strategy_multiCheckbox e
public function unserialize($value) {
return $value ? explode(';', $value) : [];
}
}
?>
}
\ No newline at end of file
......@@ -21,10 +21,12 @@
class ZendAfi_View_Helper_FormRadio extends ZendAfi_View_Helper_FormElement {
protected
$_inputType = 'radio',
$_isArray = false;
public function formRadio($name, $value = null, $attribs = null, $options = null, $listsep = "<br />\n") {
$info = $this->_getInfo($name, $value, $attribs, $options, $listsep);
extract($info);
......@@ -108,7 +110,7 @@ class ZendAfi_View_Helper_FormRadio extends ZendAfi_View_Helper_FormElement {
array_merge(['type' => $this->_inputType,
'name' => $name,
'id' => $optId,
'value' => $this->view->escape($opt_value)],
'value' => $opt_value],
$input_attribs,
$attribs),
$label_attribs)
......
......@@ -36,16 +36,10 @@ abstract class CmsControllerCustomFieldsTestCase extends AbstractControllerTestC
'code' => Class_CodifThesaurus::fixedCodeOf('CustomField'),
'libelle' => 'Champs personnalisés']);
$meta = $this->fixture('Class_CustomField_Meta',
['id' => 3,
'label' => 'Public',
'field_type' => Class_CustomField_Meta::SELECT,
'options_list' => 'Hardcore gamers; newbies',
'indexable' => 1]);
$closure = function () { $this->_count++;
if ($this->_count == 1)
return [];
return array_filter( [Class_CodifThesaurus::findFirstBy(['libelle' => 'Hardcore gamers']),Class_CodifThesaurus::findFirstBy(['libelle' => 'newbies'])]);} ;
return array_filter( [Class_CodifThesaurus::findFirstBy(['libelle' => 'Hardcore gamers']),Class_CodifThesaurus::findFirstBy(['libelle' => 'Newbies'])]);} ;
Storm_Test_ObjectWrapper::onLoaderOfModel('Class_CodifThesaurus')
->whenCalled('findAllBy')
......@@ -53,7 +47,12 @@ abstract class CmsControllerCustomFieldsTestCase extends AbstractControllerTestC
'order' => 'libelle'])
->willDo($closure);
$meta = $this->fixture('Class_CustomField_Meta',
['id' => 3,
'label' => 'Public',
'field_type' => Class_CustomField_Meta::SELECT,
'options_list' => 'Hardcore gamers; Newbies;',
'indexable' => 1]);
$this->_custom_field = $this->fixture('Class_CustomField',
['id' => 5,
......@@ -61,11 +60,23 @@ abstract class CmsControllerCustomFieldsTestCase extends AbstractControllerTestC
'meta' => $meta,
'model' => 'Article']);
$meta_multi = $this->fixture('Class_CustomField_Meta',
['id' => 8,
'label' => 'Niveau d\'accès',
'field_type' => Class_CustomField_Meta::MULTI_CHECKBOX,
'options_list' => 'Débutant; Expert;',
'indexable' => 0]);
$this->fixture('Class_CustomField',
['id' => 89,
'priority' => 9,
'meta' => $meta_multi,
'model' => 'Article']);
$this->_article = $this->fixture('Class_Article',
['id' => 1,
'titre' => 'News Article',
'contenu' => 'Welcome']);
}
}
......@@ -87,7 +98,7 @@ class CmsControllerCustomFieldsEditActionTest extends CmsControllerCustomFieldsT
/** @test */
public function publicNewsbiesShouldBePresent() {
$this->assertXPathContentContains('//select[@name="field_5"]//option', 'newbies');
$this->assertXPathContentContains('//select[@name="field_5"]//option', 'Newbies');
}
}
......@@ -101,7 +112,7 @@ class CmsControllerCustomFieldsWithNewbiesSetActionTest extends CmsControllerCus
['id' => 10,
'model_id' => 1,
'custom_field_id' => 5,
'value' => 'newbies']);
'value' => 'Newbies']);
}
......@@ -109,7 +120,7 @@ class CmsControllerCustomFieldsWithNewbiesSetActionTest extends CmsControllerCus
public function editActionShouldHaveNewbiesOptionSelected() {
$this->dispatch('admin/cms/edit/id/1' ,true);
$this->assertXPathContentContains('//select[@name="field_5"]//option[@selected="selected"]',
'newbies');
'Newbies');
}
......@@ -140,6 +151,7 @@ class CmsControllerCustomFieldsAndIndexationPostEditActionTest
'indexation' => 1,
'status' => Class_Article::STATUS_VALIDATED,
'field_5' => 'Hardcore gamers',
'field_89' => ['Débutant'],
'debut' => '',
'fin' => '',
'events_debut' => '',
......@@ -153,11 +165,17 @@ class CmsControllerCustomFieldsAndIndexationPostEditActionTest
/** @test */
public function shouldHaveCreatedCustomValue() {
public function shouldHaveCreatedCustomValueHardcoreGamers() {
$this->assertNotNull(Class_CustomField_Value::findFirstBy(['value' => 'Hardcore gamers']));
}
/** @test */
public function shouldHaveCreatedCustomValueDebutant() {
$this->assertNotNull(Class_CustomField_Value::findFirstBy(['value' => 'Débutant']));
}
/** @test */
public function shouldHaveCreatedCustomFieldThesaurus() {
$this->assertNotNull($this->_field_thesaurus);
......@@ -240,7 +258,7 @@ class CmsControllerCustomFieldsNotIndexableMetaPostEditActionTest
function() {
Class_CodifThesaurus::findForCustomField($this->_custom_field)->delete();
Class_CodifThesaurus::findFirstBy(['libelle' => 'Hardcore gamers'])->delete();
Class_CodifThesaurus::findFirstBy(['libelle' => 'newbies'])->delete();
Class_CodifThesaurus::findFirstBy(['libelle' => 'Newbies'])->delete();
})
->beStrict());
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment