1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
val_file_size.php
См. документацию.
1<?php
2
4
6{
7 public static function GetDescription()
8 {
9 return array(
10 "NAME" => "file_size", // unique validator string ID
11 "DESCRIPTION" => GetMessage('FORM_VALIDATOR_FILE_SIZE_DESCRIPTION'), // validator description
12 "TYPES" => array("file", "image"), // list of types validator can be applied.
13 "SETTINGS" => array("CFormValidatorFileSize", "GetSettings"), // method returning array of validator settings, optional
14 "CONVERT_TO_DB" => array("CFormValidatorFileSize", "ToDB"), // method, processing validator settings to string to put to db, optional
15 "CONVERT_FROM_DB" => array("CFormValidatorFileSize", "FromDB"), // method, processing validator settings from string from db, optional
16 "HANDLER" => array("CFormValidatorFileSize", "DoValidate") // main validation method
17 );
18 }
19
20 public static function GetSettings()
21 {
22 return array(
23 "SIZE_FROM" => array(
24 "TITLE" => GetMessage("FORM_VALIDATOR_FILE_SIZE_SETTINGS_SIZE_FROM"),
25 "TYPE" => "TEXT",
26 "DEFAULT" => "0",
27 ),
28
29 "SIZE_TO" => array(
30 "TITLE" => GetMessage("FORM_VALIDATOR_FILE_SIZE_SETTINGS_SIZE_TO"),
31 "TYPE" => "TEXT",
32 "DEFAULT" => "5242880",
33 ),
34
35 );
36 }
37
38 public static function ToDB($arParams)
39 {
40 $arParams["SIZE_FROM"] = intval($arParams["SIZE_FROM"]);
41 $arParams["SIZE_TO"] = intval($arParams["SIZE_TO"]);
42
43 if ($arParams["SIZE_FROM"] > $arParams["SIZE_TO"])
44 {
45 $tmp = $arParams["SIZE_FROM"];
46 $arParams["SIZE_FROM"] = $arParams["SIZE_TO"];
47 $arParams["SIZE_TO"] = $tmp;
48 }
49
50 return serialize($arParams);
51 }
52
53 public static function FromDB($strParams)
54 {
55 return unserialize($strParams, ['allowed_classes' => false]);
56 }
57
58 public static function DoValidate($arParams, $arQuestion, $arAnswers, $arValues)
59 {
60 global $APPLICATION;
61
62 if (count($arValues) > 0)
63 {
64 foreach ($arValues as $arFile)
65 {
66 if ($arFile["tmp_name"] <> '' && $arFile["error"] == "0")
67 {
68 if ($arParams["SIZE_FROM"] > 0 && $arFile["size"] < $arParams["SIZE_FROM"])
69 {
70 $APPLICATION->ThrowException(GetMessage("FORM_VALIDATOR_FILE_SIZE_ERROR_LESS"));
71 return false;
72 }
73
74 if ($arParams["SIZE_TO"] > 0 && $arFile["size"] > $arParams["SIZE_TO"])
75 {
76 $APPLICATION->ThrowException(GetMessage("FORM_VALIDATOR_FILE_SIZE_ERROR_MORE"));
77 return false;
78 }
79 }
80 }
81 }
82
83 return true;
84 }
85}
86
87AddEventHandler("form", "onFormValidatorBuildList", array("CFormValidatorFileSize", "GetDescription"));
$arParams
Определения access_dialog.php:21
global $APPLICATION
Определения include.php:80
static ToDB($arParams)
Определения val_file_size.php:38
static GetSettings()
Определения val_file_size.php:20
static DoValidate($arParams, $arQuestion, $arAnswers, $arValues)
Определения val_file_size.php:58
static FromDB($strParams)
Определения val_file_size.php:53
static GetDescription()
Определения val_file_size.php:7
$arValues
Определения component_props.php:25
if(!is_array($prop["VALUES"])) $tmp
Определения component_props.php:203
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
AddEventHandler($FROM_MODULE_ID, $MESSAGE_ID, $CALLBACK, $SORT=100, $FULL_PATH=false)
Определения tools.php:5165
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
GetMessage($name, $aReplace=null)
Определения tools.php:3397
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936