| Server IP : 213.186.33.4 / Your IP : 216.73.216.193 Web Server : Apache System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : awebpaca ( 35430) PHP Version : 8.5.0 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/awebpaca/boutiques/lib/Varien/Data/Form/Element/ |
Upload File : |
<?php
/**
* Magento
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@magentocommerce.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade Magento to newer
* versions in the future. If you wish to customize Magento for your
* needs please refer to http://www.magentocommerce.com for more information.
*
* @category Varien
* @package Varien_Data
* @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
/**
* Form select element
*
* @category Varien
* @package Varien_Data
* @author Magento Core Team <core@magentocommerce.com>
*/
class Varien_Data_Form_Element_Checkboxes extends Varien_Data_Form_Element_Abstract
{
/**
* Init Element
*
* @param array $attributes
*/
public function __construct($attributes=array())
{
parent::__construct($attributes);
$this->setType('checkbox');
$this->setExtType('checkbox');
}
/**
* Retrieve allow attributes
*
* @return array
*/
public function getHtmlAttributes()
{
return array('type', 'name', 'class', 'style', 'checked', 'onclick', 'onchange', 'disabled');
}
/**
* Prepare value list
*
* @return array
*/
protected function _prepareValues() {
$options = array();
$values = array();
if ($this->getValues()) {
if (!is_array($this->getValues())) {
$options = array($this->getValues());
}
else {
$options = $this->getValues();
}
}
elseif ($this->getOptions() && is_array($this->getOptions())) {
$options = $this->getOptions();
}
foreach ($options as $k => $v) {
if (is_string($v)) {
$values[] = array(
'label' => $v,
'value' => $k
);
}
elseif (isset($v['value'])) {
if (!isset($v['label'])) {
$v['label'] = $v['value'];
}
$values[] = array(
'label' => $v['label'],
'value' => $v['value']
);
}
}
return $values;
}
/**
* Retrieve HTML
*
* @return string
*/
public function getElementHtml()
{
$values = $this->_prepareValues();
if (!$values) {
return '';
}
$html = '<ul class="checkboxes">';
foreach ($values as $value) {
$html.= $this->_optionToHtml($value);
}
$html .= '</ul>'
. $this->getAfterElementHtml();
return $html;
}
public function getChecked($value)
{
if ($checked = $this->getValue()) {
}
elseif ($checked = $this->getData('checked')) {
}
else {
return ;
}
if (!is_array($checked)) {
$checked = array(strval($checked));
}
else {
foreach ($checked as $k => $v) {
$checked[$k] = strval($v);
}
}
if (in_array(strval($value), $checked)) {
return 'checked';
}
return ;
}
public function getDisabled($value)
{
if ($disabled = $this->getData('disabled')) {
if (!is_array($disabled)) {
$disabled = array(strval($disabled));
}
else {
foreach ($disabled as $k => $v) {
$disabled[$k] = strval($v);
}
}
if (in_array(strval($value), $disabled)) {
return 'disabled';
}
}
return ;
}
public function getOnclick($value)
{
if ($onclick = $this->getData('onclick')) {
return str_replace('$value', $value, $onclick);
}
return ;
}
public function getOnchange($value)
{
if ($onchange = $this->getData('onchange')) {
return str_replace('$value', $value, $onchange);
}
return ;
}
// public function getName($value)
// {
// if ($name = $this->getData('name')) {
// return str_replace('$value', $value, $name);
// }
// return ;
// }
protected function _optionToHtml($option)
{
$id = $this->getHtmlId().'_'.$this->_escape($option['value']);
$html = '<li><input id="'.$id.'"';
foreach ($this->getHtmlAttributes() as $attribute) {
if ($value = $this->getDataUsingMethod($attribute, $option['value'])) {
$html .= ' '.$attribute.'="'.$value.'"';
}
}
$html .= ' value="'.$option['value'].'" />'
. ' <label for="'.$id.'">' . $option['label'] . '</label></li>'
. "\n";
return $html;
}
}