src/HTMLForm/FormModelSelectOptionMultiple.php
<?php
namespace Anax\HTMLForm;
use Psr\Container\ContainerInterface;
/**
* Example of FormModel implementation.
*/
class FormModelSelectOptionMultiple extends FormModel
{
/**
* Constructor injects with DI container.
*
* @param Anax\DI\DIInterface $di a service container
*/
public function __construct(ContainerInterface $di)
{
parent::__construct($di);
$this->form->create(
[
"id" => __CLASS__,
"legend" => "Legend"
],
[
"selectm" => [
"type" => "select-multiple",
"label" => "Select one or more fruite:",
"description" => "Here you can place a description.",
"size" => 6,
"options" => [
"tomato" => "tomato",
"potato" => "potato",
"apple" => "apple",
"pear" => "pear",
"banana" => "banana",
],
"checked" => ["potato", "pear"],
],
"submit" => [
"type" => "submit",
"value" => "Submit",
"callback" => [$this, "callbackSubmit"]
],
]
);
}
/**
* Callback for submit-button which should return true if it could
* carry out its work and false if something failed.
*
* @return boolean true if okey, false if something went wrong.
*/
public function callbackSubmit()
{
$this->form->addOutput(
"Checked values are: "
. implode($this->form->value("selectm"), ", ")
. "</br>"
);
// Remember values during resubmit, for sake of the example
$this->form->rememberValues();
return true;
}
}