Esempio n. 1
0
 public function isValid($data)
 {
     $phoneCol = $data['phone_heders'];
     $emailCol = $data['email_heders'];
     if (!empty($phoneCol) && !empty($emailCol)) {
         $validator = new Logic_Validate_NotEqual($phoneCol);
         $validator->setMessage("Kolumna z adresami email musi być inna niż z numerami telefonów");
         $this->getElement('phone_heders')->setAttrib('options', array($phoneCol => $phoneCol));
         $this->getElement('email_heders')->setAttrib('options', array($emailCol => $emailCol))->addValidator($validator);
     }
     $isValid = parent::isValid($data);
     $certFileName = $this->_receiveFiles('addressbook_import_csv');
     return $isValid;
 }
Esempio n. 2
0
 public function isValid($data)
 {
     $contactCol = $data['phone_heders'];
     $messageCol = $data['message_heders'];
     $file_type = (int) $data['file_type'];
     $serviceSetmodel = new WsServiceSet();
     $serviceSetInfo = $serviceSetmodel->getSet($data['ws_service_set_id']);
     if ($serviceSetInfo !== null) {
         if ($serviceSetInfo->file_type !== null && $serviceSetInfo->file_type != $file_type) {
             $this->addErrorMessage("Typ wysyłki rózni się od zdefiniowanego");
             return false;
         }
         if ($file_type != Logic_Ws_ServiceSet_ServiceSet::TYPE_CONST && $serviceSetInfo->delimeter != null && $serviceSetInfo->delimeter !== (int) $data['delimeter']) {
             $this->addErrorMessage("Separator pola rózni się od zdefiniowanego");
             return false;
         }
         if ($file_type == Logic_Ws_ServiceSet_ServiceSet::TYPE_CONST && $serviceSetInfo->ws_addressbook_id != null && $serviceSetInfo->ws_addressbook_id !== (int) $data['ws_addressbook_id']) {
             $this->addErrorMessage("Wybrana książka adresowa rózni się od zdefiniowanej");
             return false;
         }
     }
     $notEqualValidator = new Logic_Validate_NotEqual($data['phone_heders']);
     if (!empty($contactCol) || !empty($messageCol) && !empty($contactCol)) {
         $this->getElement('phone_heders')->setAttrib('options', array($contactCol => $contactCol));
         $this->getElement('message_heders')->setAttrib('options', array($messageCol => $messageCol));
     }
     switch ($file_type) {
         case Logic_Ws_ServiceSet_ServiceSet::TYPE_CONST:
             $this->ws_addressbook_id->setRequired(true);
             break;
         case Logic_Ws_ServiceSet_ServiceSet::TYPE_VAR:
             $this->addressbook_import_csv->setRequired(true);
             $this->delimeter->setRequired(true);
             $this->phone_heders->setRequired(true);
             break;
         case Logic_Ws_ServiceSet_ServiceSet::TYPE_ANY:
             $validator = new Logic_Validate_NotEqual($contactCol);
             $validator->setMessage("Kolumna z kontaktami musi być inna niż z wiadomością");
             $this->addressbook_import_csv->setRequired(true);
             $this->delimeter->setRequired(true);
             $this->phone_heders->setRequired(true);
             $this->message_heders->setRequired(true)->addValidator($validator);
             break;
     }
     $isValid = parent::isValid($data);
     if ($file_type == Logic_Ws_ServiceSet_ServiceSet::TYPE_VAR || $file_type == Logic_Ws_ServiceSet_ServiceSet::TYPE_ANY) {
         $this->_receiveFiles('addressbook_import_csv');
     }
     if ($isValid && $file_type == Logic_Ws_ServiceSet_ServiceSet::TYPE_VAR) {
         $tagsValidator = $this->tagsValidator($data);
         if (!empty($tagsValidator)) {
             $isValid = false;
             $this->setErrorMessages($tagsValidator);
         }
     }
     return $isValid;
 }