public function sendMessage($alias)
{
$input = Input::all();
$rules = array('email' => 'required|min:5|email', 'name' => 'required|alpha_spaces|min:3', 'message' => 'required');
$validator = Validator::make(Input::all(), $rules);
if ($validator->fails()) {
return Redirect::back()->withErrors($validator)->withInput();
}
$form = $this->getForm(18);
$model_name = "Components\\ContactManager\\Models\\{$form['model']}";
$contact = $model_name::whereAlias($alias)->first();
ContactEmail::create(array('name' => $input['name'], 'email' => $input['email'], 'subject' => $input['subject'], 'message' => $input['message'], 'contact_id' => $contact->id));
$input['message_text'] = $input['message'];
try {
Mail::send('public.' . $this->current_theme . '.email', $input, function ($email_message) use($input, $contact) {
$email_message->from($input['email'], $input['name']);
$email_message->to($contact->email, $contact->name)->subject($input['subject']);
});
} catch (Exception $e) {
return Redirect::back()->withInput()->with('error_message', $e->getMessage());
}
return Redirect::back()->with('success_message', trans('success_messages.mail_sent'));
}