Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/Core/src/View/Widget/StringListWidget.php
<?php

namespace Croogo\Core\View\Widget;

use
Cake\Utility\Hash;
use
Cake\View\Form\ContextInterface;
use
Cake\View\Widget\WidgetInterface;

class
StringListWidget implements WidgetInterface
{

    protected
$_templates;

    public function
__construct($templates)
    {
       
$this->_templates = $templates;
    }

    public function
render(array $data, ContextInterface $context)
    {
       
$values = [];
        foreach ((array)
$data['val'] as $k => $v) {
            if (
is_numeric($k)) {
               
$values[] = $v;
            } else {
               
$values[] = $k . '=' . $v;
            }
        }
       
$data = Hash::merge(['class' => 'form-control'], $data);

        return
$this->_templates->format('textarea', [
           
'class' => 'textarea stringlist',
           
'name' => $data['name'],
           
'value' => implode("\n", $values),
           
'attrs' => $this->_templates->formatAttributes($data, [
               
'type', 'name', 'val', 'before', 'after',
            ]),
        ]);
    }

    public function
secureFields(array $data)
    {
        return [
$data['name']];
    }
}