[TASK] Remove old language labels in EXT:setup
[Packages/TYPO3.CMS.git] / typo3 / sysext / form / Classes / Domain / Validator / FloatValidator.php
1 <?php
2 namespace TYPO3\CMS\Form\Domain\Validator;
3
4 /*
5 * This file is part of the TYPO3 CMS project.
6 *
7 * It is free software; you can redistribute it and/or modify it under
8 * the terms of the GNU General Public License, either version 2
9 * of the License, or any later version.
10 *
11 * For the full copyright and license information, please read the
12 * LICENSE.txt file that was distributed with this source code.
13 *
14 * The TYPO3 project - inspiring people to share!
15 */
16
17 class FloatValidator extends AbstractValidator
18 {
19 /**
20 * Constant for localisation
21 *
22 * @var string
23 */
24 const LOCALISATION_OBJECT_NAME = 'tx_form_system_validate_float';
25
26 /**
27 * Check if $value is valid. If it is not valid, needs to add an error
28 * to result.
29 *
30 * @param mixed $value
31 * @return void
32 */
33 public function isValid($value)
34 {
35 $locale = localeconv();
36 $valueFiltered = str_replace(
37 [
38 $locale['thousands_sep'],
39 $locale['mon_thousands_sep'],
40 $locale['decimal_point'],
41 $locale['mon_decimal_point']
42 ],
43 [
44 '',
45 '',
46 '.',
47 '.'
48 ],
49 $value
50 );
51 if ($value != strval((float)$valueFiltered)) {
52 $this->addError(
53 $this->renderMessage(
54 $this->options['errorMessage'][0],
55 $this->options['errorMessage'][1],
56 'error'
57 ),
58 1442002070
59 );
60 }
61 }
62 }