One Hat Cyber Team
Your IP:
216.73.216.176
Server IP:
198.54.114.155
Server:
Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
Server Software:
LiteSpeed
PHP Version:
5.6.40
Create File
|
Create Folder
Execute
Dir :
~
/
proc
/
thread-self
/
root
/
proc
/
self
/
cwd
/
Edit File:
Field.tar
InputFormField.php 0000644 00000002636 15111426507 0010155 0 ustar 00 <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DomCrawler\Field; /** * InputFormField represents an input form field (an HTML input tag). * * For inputs with type of file, checkbox, or radio, there are other more * specialized classes (cf. FileFormField and ChoiceFormField). * * @author Fabien Potencier <fabien@symfony.com> */ class InputFormField extends FormField { /** * Initializes the form field. * * @return void * * @throws \LogicException When node type is incorrect */ protected function initialize() { if ('input' !== $this->node->nodeName && 'button' !== $this->node->nodeName) { throw new \LogicException(sprintf('An InputFormField can only be created from an input or button tag (%s given).', $this->node->nodeName)); } $type = strtolower($this->node->getAttribute('type')); if ('checkbox' === $type) { throw new \LogicException('Checkboxes should be instances of ChoiceFormField.'); } if ('file' === $type) { throw new \LogicException('File inputs should be instances of FileFormField.'); } $this->value = $this->node->getAttribute('value'); } } FormField.php 0000644 00000005066 15111426507 0007135 0 ustar 00 <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DomCrawler\Field; /** * FormField is the abstract class for all form fields. * * @author Fabien Potencier <fabien@symfony.com> */ abstract class FormField { /** * @var \DOMElement */ protected $node; /** * @var string */ protected $name; /** * @var string */ protected $value; /** * @var \DOMDocument */ protected $document; /** * @var \DOMXPath */ protected $xpath; /** * @var bool */ protected $disabled; /** * @param \DOMElement $node The node associated with this field */ public function __construct(\DOMElement $node) { $this->node = $node; $this->name = $node->getAttribute('name'); $this->xpath = new \DOMXPath($node->ownerDocument); $this->initialize(); } /** * Returns the label tag associated to the field or null if none. */ public function getLabel(): ?\DOMElement { $xpath = new \DOMXPath($this->node->ownerDocument); if ($this->node->hasAttribute('id')) { $labels = $xpath->query(sprintf('descendant::label[@for="%s"]', $this->node->getAttribute('id'))); if ($labels->length > 0) { return $labels->item(0); } } $labels = $xpath->query('ancestor::label[1]', $this->node); return $labels->length > 0 ? $labels->item(0) : null; } /** * Returns the name of the field. */ public function getName(): string { return $this->name; } /** * Gets the value of the field. */ public function getValue(): string|array|null { return $this->value; } /** * Sets the value of the field. * * @return void */ public function setValue(?string $value) { $this->value = $value ?? ''; } /** * Returns true if the field should be included in the submitted values. */ public function hasValue(): bool { return true; } /** * Check if the current field is disabled. */ public function isDisabled(): bool { return $this->node->hasAttribute('disabled'); } /** * Initializes the form field. * * @return void */ abstract protected function initialize(); } ChoiceFormField.php 0000644 00000021473 15111426507 0010250 0 ustar 00 <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DomCrawler\Field; /** * ChoiceFormField represents a choice form field. * * It is constructed from an HTML select tag, or an HTML checkbox, or radio inputs. * * @author Fabien Potencier <fabien@symfony.com> */ class ChoiceFormField extends FormField { private string $type; private bool $multiple; private array $options; private bool $validationDisabled = false; /** * Returns true if the field should be included in the submitted values. * * @return bool true if the field should be included in the submitted values, false otherwise */ public function hasValue(): bool { // don't send a value for unchecked checkboxes if (\in_array($this->type, ['checkbox', 'radio']) && null === $this->value) { return false; } return true; } /** * Check if the current selected option is disabled. */ public function isDisabled(): bool { if (parent::isDisabled() && 'select' === $this->type) { return true; } foreach ($this->options as $option) { if ($option['value'] == $this->value && $option['disabled']) { return true; } } return false; } /** * Sets the value of the field. * * @return void */ public function select(string|array|bool $value) { $this->setValue($value); } /** * Ticks a checkbox. * * @return void * * @throws \LogicException When the type provided is not correct */ public function tick() { if ('checkbox' !== $this->type) { throw new \LogicException(sprintf('You cannot tick "%s" as it is not a checkbox (%s).', $this->name, $this->type)); } $this->setValue(true); } /** * Unticks a checkbox. * * @return void * * @throws \LogicException When the type provided is not correct */ public function untick() { if ('checkbox' !== $this->type) { throw new \LogicException(sprintf('You cannot untick "%s" as it is not a checkbox (%s).', $this->name, $this->type)); } $this->setValue(false); } /** * Sets the value of the field. * * @return void * * @throws \InvalidArgumentException When value type provided is not correct */ public function setValue(string|array|bool|null $value) { if ('checkbox' === $this->type && false === $value) { // uncheck $this->value = null; } elseif ('checkbox' === $this->type && true === $value) { // check $this->value = $this->options[0]['value']; } else { if (\is_array($value)) { if (!$this->multiple) { throw new \InvalidArgumentException(sprintf('The value for "%s" cannot be an array.', $this->name)); } foreach ($value as $v) { if (!$this->containsOption($v, $this->options)) { throw new \InvalidArgumentException(sprintf('Input "%s" cannot take "%s" as a value (possible values: "%s").', $this->name, $v, implode('", "', $this->availableOptionValues()))); } } } elseif (!$this->containsOption($value, $this->options)) { throw new \InvalidArgumentException(sprintf('Input "%s" cannot take "%s" as a value (possible values: "%s").', $this->name, $value, implode('", "', $this->availableOptionValues()))); } if ($this->multiple) { $value = (array) $value; } if (\is_array($value)) { $this->value = $value; } else { parent::setValue($value); } } } /** * Adds a choice to the current ones. * * @throws \LogicException When choice provided is not multiple nor radio * * @internal */ public function addChoice(\DOMElement $node): void { if (!$this->multiple && 'radio' !== $this->type) { throw new \LogicException(sprintf('Unable to add a choice for "%s" as it is not multiple or is not a radio button.', $this->name)); } $option = $this->buildOptionValue($node); $this->options[] = $option; if ($node->hasAttribute('checked')) { $this->value = $option['value']; } } /** * Returns the type of the choice field (radio, select, or checkbox). */ public function getType(): string { return $this->type; } /** * Returns true if the field accepts multiple values. */ public function isMultiple(): bool { return $this->multiple; } /** * Initializes the form field. * * @return void * * @throws \LogicException When node type is incorrect */ protected function initialize() { if ('input' !== $this->node->nodeName && 'select' !== $this->node->nodeName) { throw new \LogicException(sprintf('A ChoiceFormField can only be created from an input or select tag (%s given).', $this->node->nodeName)); } if ('input' === $this->node->nodeName && 'checkbox' !== strtolower($this->node->getAttribute('type')) && 'radio' !== strtolower($this->node->getAttribute('type'))) { throw new \LogicException(sprintf('A ChoiceFormField can only be created from an input tag with a type of checkbox or radio (given type is "%s").', $this->node->getAttribute('type'))); } $this->value = null; $this->options = []; $this->multiple = false; if ('input' == $this->node->nodeName) { $this->type = strtolower($this->node->getAttribute('type')); $optionValue = $this->buildOptionValue($this->node); $this->options[] = $optionValue; if ($this->node->hasAttribute('checked')) { $this->value = $optionValue['value']; } } else { $this->type = 'select'; if ($this->node->hasAttribute('multiple')) { $this->multiple = true; $this->value = []; $this->name = str_replace('[]', '', $this->name); } $found = false; foreach ($this->xpath->query('descendant::option', $this->node) as $option) { $optionValue = $this->buildOptionValue($option); $this->options[] = $optionValue; if ($option->hasAttribute('selected')) { $found = true; if ($this->multiple) { $this->value[] = $optionValue['value']; } else { $this->value = $optionValue['value']; } } } // if no option is selected and if it is a simple select box, take the first option as the value if (!$found && !$this->multiple && $this->options) { $this->value = $this->options[0]['value']; } } } /** * Returns option value with associated disabled flag. */ private function buildOptionValue(\DOMElement $node): array { $option = []; $defaultDefaultValue = 'select' === $this->node->nodeName ? '' : 'on'; $defaultValue = (isset($node->nodeValue) && !empty($node->nodeValue)) ? $node->nodeValue : $defaultDefaultValue; $option['value'] = $node->hasAttribute('value') ? $node->getAttribute('value') : $defaultValue; $option['disabled'] = $node->hasAttribute('disabled'); return $option; } /** * Checks whether given value is in the existing options. * * @internal */ public function containsOption(string $optionValue, array $options): bool { if ($this->validationDisabled) { return true; } foreach ($options as $option) { if ($option['value'] == $optionValue) { return true; } } return false; } /** * Returns list of available field options. * * @internal */ public function availableOptionValues(): array { $values = []; foreach ($this->options as $option) { $values[] = $option['value']; } return $values; } /** * Disables the internal validation of the field. * * @internal * * @return $this */ public function disableValidation(): static { $this->validationDisabled = true; return $this; } } error_log 0000644 00000005374 15111426507 0006474 0 ustar 00 [19-Nov-2025 12:04:57 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/ChoiceFormField.php:21 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/ChoiceFormField.php on line 21 [19-Nov-2025 13:22:28 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/InputFormField.php:22 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/InputFormField.php on line 22 [20-Nov-2025 01:15:25 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/FileFormField.php:19 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/FileFormField.php on line 19 [20-Nov-2025 06:44:40 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/TextareaFormField.php:19 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/TextareaFormField.php on line 19 [25-Nov-2025 03:00:33 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/FileFormField.php:19 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/FileFormField.php on line 19 [25-Nov-2025 03:03:12 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/ChoiceFormField.php:21 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/ChoiceFormField.php on line 21 [25-Nov-2025 05:27:14 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/TextareaFormField.php:19 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/TextareaFormField.php on line 19 [25-Nov-2025 05:29:53 UTC] PHP Fatal error: Uncaught Error: Class "Symfony\Component\DomCrawler\Field\FormField" not found in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/InputFormField.php:22 Stack trace: #0 {main} thrown in /home/fluxyjvi/public_html/project/vendor/symfony/dom-crawler/Field/InputFormField.php on line 22 FileFormField.php 0000644 00000006544 15111426507 0007737 0 ustar 00 <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DomCrawler\Field; /** * FileFormField represents a file form field (an HTML file input tag). * * @author Fabien Potencier <fabien@symfony.com> */ class FileFormField extends FormField { /** * Sets the PHP error code associated with the field. * * @param int $error The error code (one of UPLOAD_ERR_INI_SIZE, UPLOAD_ERR_FORM_SIZE, UPLOAD_ERR_PARTIAL, UPLOAD_ERR_NO_FILE, UPLOAD_ERR_NO_TMP_DIR, UPLOAD_ERR_CANT_WRITE, or UPLOAD_ERR_EXTENSION) * * @return void * * @throws \InvalidArgumentException When error code doesn't exist */ public function setErrorCode(int $error) { $codes = [\UPLOAD_ERR_INI_SIZE, \UPLOAD_ERR_FORM_SIZE, \UPLOAD_ERR_PARTIAL, \UPLOAD_ERR_NO_FILE, \UPLOAD_ERR_NO_TMP_DIR, \UPLOAD_ERR_CANT_WRITE, \UPLOAD_ERR_EXTENSION]; if (!\in_array($error, $codes)) { throw new \InvalidArgumentException(sprintf('The error code "%s" is not valid.', $error)); } $this->value = ['name' => '', 'type' => '', 'tmp_name' => '', 'error' => $error, 'size' => 0]; } /** * Sets the value of the field. * * @return void */ public function upload(?string $value) { $this->setValue($value); } /** * Sets the value of the field. * * @return void */ public function setValue(?string $value) { if (null !== $value && is_readable($value)) { $error = \UPLOAD_ERR_OK; $size = filesize($value); $info = pathinfo($value); $name = $info['basename']; // copy to a tmp location $tmp = sys_get_temp_dir().'/'.strtr(substr(base64_encode(hash('sha256', uniqid(mt_rand(), true), true)), 0, 7), '/', '_'); if (\array_key_exists('extension', $info)) { $tmp .= '.'.$info['extension']; } if (is_file($tmp)) { unlink($tmp); } copy($value, $tmp); $value = $tmp; } else { $error = \UPLOAD_ERR_NO_FILE; $size = 0; $name = ''; $value = ''; } $this->value = ['name' => $name, 'type' => '', 'tmp_name' => $value, 'error' => $error, 'size' => $size]; } /** * Sets path to the file as string for simulating HTTP request. * * @return void */ public function setFilePath(string $path) { parent::setValue($path); } /** * Initializes the form field. * * @return void * * @throws \LogicException When node type is incorrect */ protected function initialize() { if ('input' !== $this->node->nodeName) { throw new \LogicException(sprintf('A FileFormField can only be created from an input tag (%s given).', $this->node->nodeName)); } if ('file' !== strtolower($this->node->getAttribute('type'))) { throw new \LogicException(sprintf('A FileFormField can only be created from an input tag with a type of file (given type is "%s").', $this->node->getAttribute('type'))); } $this->setValue(null); } } TextareaFormField.php 0000644 00000001756 15111426507 0010635 0 ustar 00 <?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\DomCrawler\Field; /** * TextareaFormField represents a textarea form field (an HTML textarea tag). * * @author Fabien Potencier <fabien@symfony.com> */ class TextareaFormField extends FormField { /** * Initializes the form field. * * @return void * * @throws \LogicException When node type is incorrect */ protected function initialize() { if ('textarea' !== $this->node->nodeName) { throw new \LogicException(sprintf('A TextareaFormField can only be created from a textarea tag (%s given).', $this->node->nodeName)); } $this->value = ''; foreach ($this->node->childNodes as $node) { $this->value .= $node->wholeText; } } }
Simpan