OXID eShop CE  4.10.7
 All Classes Namespaces Files Functions Variables Pages
oxrequiredfieldsvalidator.php
Go to the documentation of this file.
1 <?php
2 
8 {
9 
15  private $_aRequiredFields = array();
16 
22  private $_aInvalidFields = array();
23 
29  private $_oFieldValidator = array();
30 
36  public function __construct($oFieldValidator = null)
37  {
38  if (is_null($oFieldValidator)) {
39  $oFieldValidator = oxNew('oxRequiredFieldValidator');
40  }
41  $this->setFieldValidator($oFieldValidator);
42  }
43 
49  public function getRequiredFields()
50  {
52  }
53 
59  public function setRequiredFields($aFields)
60  {
61  $this->_aRequiredFields = $aFields;
62  }
63 
69  public function getFieldValidator()
70  {
72  }
73 
79  public function setFieldValidator($oFieldValidator)
80  {
81  $this->_oFieldValidator = $oFieldValidator;
82  }
83 
89  public function getInvalidFields()
90  {
92  }
93 
102  public function validateFields($oObject)
103  {
104  $aRequiredFields = $this->getRequiredFields();
105  $oFieldValidator = $this->getFieldValidator();
106 
107  $aInvalidFields = array();
108  foreach ($aRequiredFields as $sFieldName) {
109  if (!$oFieldValidator->validateFieldValue($oObject->getFieldData($sFieldName))) {
110  $aInvalidFields[] = $sFieldName;
111  }
112  }
113  $this->_setInvalidFields($aInvalidFields);
114 
115  return empty($aInvalidFields);
116  }
117 
123  private function _setInvalidFields($aFields)
124  {
125  $this->_aInvalidFields = $aFields;
126  }
127 }