ACC SHELL
<?php
/**
* This file is part of the Nette Framework (http://nette.org)
*
* Copyright (c) 2004 David Grudl (http://davidgrudl.com)
*
* For the full copyright and license information, please view
* the file license.txt that was distributed with this source code.
*/
namespace Nette\Forms\Controls;
use Nette;
/**
* Submittable image button form control.
*
* @author David Grudl
*/
class ImageButton extends SubmitButton
{
/**
* @param string URI of the image
* @param string alternate text for the image
*/
public function __construct($src = NULL, $alt = NULL)
{
parent::__construct();
$this->control->type = 'image';
$this->control->src = $src;
$this->control->alt = $alt;
}
/**
* Returns HTML name of control.
* @return string
*/
public function getHtmlName()
{
$name = parent::getHtmlName();
return strpos($name, '[') === FALSE ? $name : $name . '[]';
}
/**
* Loads HTTP data.
* @return void
*/
public function loadHttpData()
{
$path = $this->getHtmlName(); // img_x or img['x']
$path = explode('[', strtr(str_replace(']', '', strpos($path, '[') === FALSE ? $path . '.x' : substr($path, 0, -2)), '.', '_'));
$this->setValue(Nette\Utils\Arrays::get($this->getForm()->getHttpData(), $path, NULL) !== NULL);
}
}
ACC SHELL 2018