/** * Send new invitation * * @param string $code Invalid code given? */ protected function _invite($code = null) { /** @var Model_Invitation $invitation */ $invitation = Model_Invitation::factory(); $errors = array(); $message = ''; if ($code) { // Invalid code given $errors = array('code' => __('Invalid invitation code')); $invitation->code = $code; } else { if ($_POST && !empty($_POST['email'])) { // Handle post $invitation->email = Arr::get($_POST, 'email'); $invitation->code = $invitation->code(); try { $invitation->is_valid(); // Send invitation $subject = __(':site invite', array(':site' => Kohana::$config->load('site.site_name'))); $mail = __("Your invitation code is: :code\n\nOr click directly to sign up: :url", array(':code' => $invitation->code, ':url' => URL::site(Route::get('sign')->uri(array('action' => 'up')) . '?code=' . $invitation->code, true))); // Send invitation if (Email::send($invitation->email, Kohana::$config->load('site.email_invitation'), $subject, $mail)) { $invitation->save(); $message = '<div class="alert alert-success">' . __('Invitation sent, you can proceed to Step 2 when you receive your mail.') . '</div>'; } else { $message = '<div class="alert">' . __('Could not send invite to :email', array(':email' => $invitation->email)) . '</div>'; } } catch (Validation_Exception $e) { $errors = $e->array->errors('validation'); } } } $this->view->add(View_Page::COLUMN_MAIN, $this->section_invitation($invitation, $errors, $message)); }
/** * Send new invitation * * @param string $code Invalid code given? */ protected function _invite($code = null) { /** @var Model_Invitation $invitation */ $invitation = Model_Invitation::factory(); $errors = array(); $message = ''; if ($code) { // Invalid code given $errors = array('code' => __('Invalid invitation code')); $invitation->code = $code; } else { if ($_POST && !empty($_POST['email'])) { // Handle post $invitation->email = Arr::get($_POST, 'email'); $invitation->code = $invitation->code(); try { $invitation->is_valid(); // Send invitation $subject = __(':site invite', array(':site' => Kohana::$config->load('site.site_name'))); $mail = __("Your invitation code is: :code\n\nOr click directly to sign up: :url", array(':code' => $invitation->code, ':url' => URL::site(Route::get('sign')->uri(array('action' => 'up')) . '?code=' . $invitation->code, true))); // Send invitation if (Email::send($invitation->email, Kohana::$config->load('site.email_invitation'), $subject, $mail)) { $invitation->save(); $message = new View_Alert(__('Invitation sent, should be already in your inbox.'), true, View_Alert::SUCCESS); } else { $message = new View_Alert(__('Could not send invite to :email', array(':email' => $invitation->email)), true); } } catch (Validation_Exception $e) { $errors = $e->array->errors('validation'); } } } $this->view->add(View_Page::COLUMN_CENTER, $this->section_invitation($invitation, $errors, $message)); }