255], [['comment'], 'string', 'max' => 2048], ]; } /** * @inheritdoc */ public function attributeLabels() { return [ 'id_user' => 'Utilisateur', 'id_user_action' => 'Utilisateur', 'date' => 'Date', 'amount' => 'Montant', 'type' => 'Type', 'id_producer' => 'Producteur', 'mean_payment' => 'Moyen de paiement', 'comment' => 'Commentaire', 'send_mail' => 'Prévenir l\'utilisateur', ]; } /** * Enregistre un modèle CreditHistorique. */ public function save() { $userManager = UserManager::getInstance(); $userProducerManager = UserProducerManager::getInstance(); $creditHistoryManager = CreditHistoryManager::getInstance(); $producerManager = ProducerManager::getInstance(); if ($this->validate()) { $user = $userManager->findOneUserById($this->id_user); $creditHistoryManager->creditOrDebitUser($this->type, $user, $this->amount, $this->mean_payment, $userManager->getCurrent()); // on prévient l'utilisateur que son compte vient d'être crédité if($this->send_mail) { $producer = GlobalParam::getCurrentProducer() ; $userProducer = $userProducerManager->findOneUserProducer($user); $paramsEmail = [ 'from_email' => $producerManager->getEmailOpendistrib($producer), 'from_name' => $producer->name, 'to_email' => $user->email, 'to_name' => $userManager->getUsername($user), 'subject' => '['.$producer->name.'] Mouvement de crédit', 'content_view_text' => '@common/mail/creditUser-text.php', 'content_view_html' => '@common/mail/creditUser-html.php', 'content_params' => [ 'user' => $user, 'producer' => $producer, 'userProducer' => $userProducer, 'creditForm' => $this ] ] ; Mailjet::sendMail($paramsEmail); } } } }