public function prepareData()
 {
     parent::prepareData();
     $this->wellId = CoreServices2::getRequest()->getFromPost('wellId');
     $this->wellType = CoreServices2::getRequest()->getFromPost('wellType');
     $this->wellPoints = CoreServices2::getRequest()->getFromPost('wellPoints');
     $this->messageManager = new CoreFormValidationMessageContainer();
     CoreServices2::getDB()->transactionStart();
     if (!$this->hasUserPermissionsForRecord()) {
         $this->messageManager->addMessage('fileDeleteErrorNoPermission');
         return;
     }
     $pointsData = json_decode($this->wellPoints);
     foreach ($pointsData as $key => $pointData) {
         if ($pointData == "") {
             return false;
         }
         $keyValue = explode("_", $key);
         if ($keyValue[1] != "rowOrder") {
             $wellPoints[$keyValue[2]][$keyValue[1]] = $pointData;
         } else {
             $pointsOrder = explode(',', $pointData);
         }
     }
     // find old points connectet with welll
     $well3dDAO = new Well3DPointDAO();
     $oldPoints = $well3dDAO->getWellPointsByWellId($this->wellId);
     // delete old points
     if (!empty($oldPoints)) {
         foreach ($oldPoints as $point) {
             $well3dDAO->delete($point);
         }
     }
     $pointsCounter = 1;
     foreach ($pointsOrder as $order) {
         // save new points into table
         $recordTemplate = $well3dDAO->getRecordTemplate();
         $recordTemplate['wellId'] = $this->wellId;
         $recordTemplate['number'] = $pointsCounter;
         $recordTemplate['X'] = $wellPoints[$order]['X'];
         $recordTemplate['Y'] = $wellPoints[$order]['Y'];
         $recordTemplate['Z'] = $wellPoints[$order]['Z'];
         $recordTemplate['LP'] = $wellPoints[$order]['LP'];
         $recordTemplate['alfa'] = $wellPoints[$order]['alfa'];
         $recordTemplate['beta'] = $wellPoints[$order]['beta'];
         $well3dDAO->save($recordTemplate);
         $pointsCounter++;
     }
     CoreServices2::getDB()->transactionCommit();
 }
 protected function assignErrorValue()
 {
     $error = null;
     if (!empty($this->loginErrorMessageContainer) && $this->loginErrorMessageContainer->isAnyErrorMessage()) {
         $messages = $this->loginErrorMessageContainer->getMessages();
         if (!empty($messages['']['messages'][0]) && $messages['']['messages'][0] == 'userAccountTemporarilyBlocked') {
             $error = 'userAccountTemporarilyBlocked';
         } else {
             $error = 'defaultLoginErrorMessage';
         }
     } elseif (CoreServices2::getRequest()->getFromGet('error')) {
         $error = 'defaultLoginErrorMessage';
     }
     CoreServices2::getDisplay()->assign('error', $error);
 }
 protected function validateFields()
 {
     $this->checkBasicValidation();
     if (!$this->messageManager->isAnyErrorMessage()) {
         $this->checkDataConsistency();
     }
 }
 /**
  * Likely to be overwritten if initAdditions() is not empty.
  */
 public function assignDisplayVariables()
 {
     parent::assignDisplayVariables();
     $display = CoreServices::get('display');
     $display->assign('mainForm', $this->form);
     $display->assign('recordOldValues', $this->recordOldValues);
     $display->assign('pagePath', $this->pagePath);
     if ($this->record['id']) {
         $display->assign('recordId', $this->record['id']);
     }
     if (!is_null($this->errorMessageContainer) && $this->errorMessageContainer->isAnyErrorMessage()) {
         $display->assign('formErrorMessages', $this->errorMessageContainer);
     }
 }
 protected function checkDataConsistency()
 {
     $attachmentTypes = CoreConfig::get('FileUpload', 'swfUploadAttachmentTypes');
     $fileCategory = $this->fileRecord['fileCategory'];
     $recordType = $this->fileRecord['recordType'];
     if ($recordType == '_tmpRecord') {
         return;
     }
     $filePosition = $this->fileRecord['filePosition'];
     CoreUtils::checkConstraint(is_array($attachmentTypes[$recordType][$filePosition]));
     $minItems = $attachmentTypes[$recordType][$filePosition]['minItems'];
     if (!empty($minItems)) {
         $currentItems = $this->fileDAO->getCountByRecord($recordType, $this->baseRecord['id'], $fileCategory, $filePosition);
         if ($currentItems - 1 < $minItems) {
             $this->messageManager->addMessage('fileDeleteErrorTooFewAttachments');
             return;
         }
     }
 }