Beispiel #1
0
 protected function testAction()
 {
     $translate = $this->application->getBootstrap()->getResource('translate');
     $view = $this->application->getBootstrap()->getResource('view');
     $view->setScriptPath(APPLICATION_PATH . '/views/scripts');
     $u = new User();
     $u_row = $u->findOne($_SERVER['argv'][6]);
     $mailer = new Logic_Mailer($view, $translate);
     $mailer->userPass('asdf', $u_row);
 }
Beispiel #2
0
 protected function reminderEmailAction()
 {
     $translate = $this->application->getBootstrap()->getResource('translate');
     $view = $this->application->getBootstrap()->getResource('view');
     $view->setScriptPath(APPLICATION_PATH . '/views/scripts');
     $acl = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('formacl');
     $mailer = new Logic_Mailer($view, $translate);
     $sentCount = $mailer->reminder(null);
     echo 'E-mail sent: ' . $sentCount;
 }
Beispiel #3
0
 protected function runAction()
 {
     $translate = $this->application->getBootstrap()->getResource('translate');
     $view = $this->application->getBootstrap()->getResource('view');
     $acl = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('formacl');
     $view->setScriptPath(APPLICATION_PATH . '/views/scripts');
     $logic = new Logic_MailerQueque();
     $model = new MailerQueque();
     $data = array();
     $data = $logic->getMailsValidToSend();
     $sendCounter['success'] = 0;
     $sendCounter['error'] = 0;
     $sendCounter['overall'] = 0;
     foreach ($data as $mail) {
         $mailer = new Logic_Mailer($view, $translate);
         $sendCounter['overall']++;
         try {
             $mailerStatus = $mailer->userRemindMeeting($mail['id_contact'], $mail['id'], $mail['mail_template_type']);
             $sendCounter['success']++;
         } catch (Exception $e) {
             //$logicMailerQueque = new Logic_MailerQueque();
             //$logicMailerQueque->markAsGhost($mail['id_contact'],$mail['id']);
             echo $e . ' Nie wysłano maila do kontaktu o id: ' . $mail['id_contact'] . "\n";
             $sendCounter['error']++;
         }
         echo $mailerStatus . "\n";
     }
     echo "\n <<<< PODSUMOWANIE WYSYŁKI E-MAILI >>>> ";
     echo "\n";
     echo "\n Ilość maili pobranych do wysyłki: " . $sendCounter['overall'];
     echo "\n";
     echo "\n Wysłanych poprawnie wiadomości: " . $sendCounter['success'];
     echo "\n Nie wysłanych wiadomości: " . $sendCounter['error'];
     echo "\n";
     echo "\n <<<< PODSUMOWANIE WYSYŁKI E-MAILI >>>> ";
 }
Beispiel #4
0
 /**
  * Nadpisana metoda update'u wiersza tabeli z uwzględnieniem mailera
  * @param array $data
  * @return type
  */
 public function setFromArray(array $data)
 {
     $headerMappings = $this->getHeaderMappings();
     if (isset($data['send_mail'])) {
         $this->send_mail = $data['send_mail'];
         unset($data['send_mail']);
     }
     foreach ($data as $key => $value) {
         if (isset($headerMappings[$key]['format'])) {
             switch ($headerMappings[$key]['format']) {
                 case 'currency':
                     $data[$key] = Zend_Locale_Format::getFloat($value);
                     break;
             }
         }
         if ($value == null) {
             $data[$key] = null;
         }
     }
     parent::setFromArray($data);
     if (isset($data['id_state']) && $this->send_mail) {
         $mailer = new Logic_Mailer(Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view'), $translate);
         $userModel = new User();
         //receiver data
         if (get_called_class() === 'Row_DelegationSettlement') {
             if ($data['id_state'] == Logic_Settlements::STATE_APPROVED_2) {
                 $receiverRow = $userModel->findOne($this->settlement_by);
             } elseif (!is_null($this->created_by)) {
                 $receiverRow = $userModel->findOne($this->created_by);
             } else {
                 $receiverRow = $userModel->findOne($this->settlement_by);
             }
             $delegation = $this->findParentRow('Delegation');
         } else {
             if (get_called_class() === 'Row_Delegation') {
                 if ($data['id_state'] == Logic_Settlements::STATE_APPROVED) {
                     $receiverRow = $userModel->findOne($this->acceptance_by);
                 } else {
                     $receiverRow = $userModel->findOne($this->created_by);
                 }
                 $params['deleg_no'] = $this->deleg_no;
             } else {
                 return $this;
             }
         }
         $params['email'] = $receiverRow->email;
         //diee($params['email']);
         //sender data
         $senderRow = Zend_Auth::getInstance()->getIdentity();
         $params['user_full_name'] = $senderRow->first_name . ' ' . $senderRow->surname;
         $params['departament'] = $senderRow->department;
         $params['KOD_MPK'] = $senderRow->jednostka['symbol'];
         //email body data
         $params['id'] = $this->id;
         if (isset($data['deleg_no'])) {
             $params['deleg_no'] = $data['deleg_no'];
         } elseif (isset($this->deleg_no)) {
             $params['deleg_no'] = $this->deleg_no;
         } elseif (isset($delegation->deleg_no)) {
             $params['deleg_no'] = $delegation->deleg_no;
         }
         try {
             switch ($data['id_state']) {
                 case Logic_Settlements::STATE_ACCEPTED:
                     $mailer->acceptedByDelegation($params);
                     break;
                 case Logic_Settlements::STATE_APPROVED:
                     $mailer->acceptDelegation($params);
                     break;
                 case Logic_Settlements::STATE_APPROVED_2:
                     $mailer->settleDelegation($params);
                     break;
                 case Logic_Settlements::STATE_CORRECTION:
                     $mailer->correctDelegation($params);
                     break;
                 case Logic_Settlements::STATE_SETTLED:
                     $mailer->settledDelegation($params);
                     break;
                 case Logic_Settlements::STATE_APPROVED_ACCOUNTING:
                     $mailer->approvedDelegation($params);
                     break;
                     //                case Logic_Settlements::STATE_SETTLED
             }
         } catch (Exception $e) {
             $messenger = new Base_View_Helper_Messenger();
             $messenger->error($e->getMessage());
         }
     }
     return $this;
 }
Beispiel #5
0
 public function mailtestAction()
 {
     try {
         $auth = Zend_Auth::getInstance();
         $mailer = new Logic_Mailer($this->view, $translate);
         $mailer->admintest(array('email' => $auth->getIdentity()->email));
         $this->view->status = True;
     } catch (Exception $exc) {
         $this->view->status = FALSE;
         $this->view->error = $exc->getMessage();
     }
     $this->renderScript('system/test.phtml');
 }
Beispiel #6
0
 /**
  *  Metoda do resetowanie hasla uzytkownika
  * @param integer $id - id uzytkownika
  */
 public function _resetPassword($id)
 {
     try {
         $user = new User();
         $pass = Base_PasswordGenerator::generate();
         $config = Zend_Registry::get('config');
         $timeOffset = $config['login']['dafault']['freeDaysOffset'];
         if (!empty($timeOffset) && $timeOffset == 1) {
             $offset = $timeOffset . ' day';
         } elseif (!empty($timeOffset) && $timeOffset > 1) {
             $offset = $timeOffset . ' days';
         }
         $date = new DateTime(date('c'));
         $date->modify($offset);
         $values['password'] = $pass['hashed'];
         $values['tmp_password'] = true;
         $values['valid_until'] = $date->format('c');
         $userRow = $user->findOne($id);
         // $resetPassEvent = new Logger_Event_Logic('editUser','Zresetowanie hasła użytkownika '.$userRow['login']);
         $userRow->setFromArray($values);
         // $changes = $userRow->getUpdatedFields();
         // $resetPassEvent->addItem('Zmiana daty', $changes, null); */
         $userRow->save();
         unset($values['valid_until']);
         $userPassword = new UserPassword();
         $select = $userPassword->select()->where('id_user = ?', $id)->where('ghost = false')->setIntegrityCheck(false);
         $dataArray = $userPassword->fetchAll($select);
         $dataArray = $dataArray->toArray();
         foreach ($dataArray as $key => $value) {
             $passRow = $userPassword->findOne($value['id']);
             $passRow->setFromArray(array('ghost' => true));
             $changes = $passRow->getUpdatedFields();
             //                $resetPassEvent->addItem('Dezaktywacja poprzedniego hasła', $changes, null);
             $passRow->save();
         }
         $values['id_user'] = $id;
         $rowPassword = $userPassword->createRow($values);
         $params = $rowPassword->getUpdatedFieldsOnlyNew();
         //            $resetPassEvent->addItem('Wprowadzenie nowego hasła', null, $params);
         $rowPassword->save();
         //            $this->logEvent($resetPassEvent);
         $mailer = new Logic_Mailer(Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view'), $translate);
         $user_row = $user->findOne($id);
         $mailer->userPass($pass['clean'], $user_row);
         // $logger = Zend_Registry::get('logger');
         // $logger['messages']['User'][$id] = 'Password was reset.';
         // Zend_Registry::set('logger', $logger);
     } catch (Exception $e) {
         // $logger = Zend_Registry::get('logger');
         // $logger['messages']['User'][$id] = 'Faile while password reset.';
         // Zend_Registry::set('logger', $logger);
         throw $e;
     }
 }