Files
faveo/app/Http/Controllers/Admin/EmailsController.php
2015-05-01 13:13:01 +05:30

182 lines
3.9 KiB
PHP

<?php namespace App\Http\Controllers\Admin;
use App\Http\Requests\EmailsRequest;
use App\Http\Requests\EmailsEditRequest;
use App\Http\Controllers\Controller;
/* Include Priority Model */
use App\Model\Utility\Priority;
/* Include Mailbox Protocol */
use App\Model\Utility\MailboxProtocol;
use Illuminate\Http\Request;
use App\Model\Email\Emails;
use App\Model\Manage\Help_topic;
use App\Model\Agent\Department;
use Crypt;
class EmailsController extends Controller {
/* constructor for authentication */
public function __construct()
{
$this->middleware('auth');
$this->middleware('roles');
}
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index(Emails $emails)
{
try
{
$emails = $emails->get();
return view('themes.default1.admin.emails.emails.index', compact('emails'));
}
catch(Exception $e)
{
return view('404');
}
}
/**
* Show the form for creating a new resource.
*
* @return Response
*/
public function create(Department $department, Help_topic $help, Priority $priority, MailboxProtocol $mailbox_protocol)
{
try
{
$departments = $department->get();
$helps = $help->get();
$priority = $priority->get();
$mailbox_protocols = $mailbox_protocol->get();
return view('themes.default1.admin.emails.emails.create',compact('mailbox_protocols','priority','departments','helps'));
}
catch(Exception $e)
{
return view('404');
}
}
/**
* Store a newly created resource in storage.
*
* @return Response
*/
public function store(Emails $email, EmailsRequest $request)
{
try
{
$password = $request->input('password');
$encrypted = Crypt::encrypt($password);
$email->password = $encrypted;
if($email->fill($request->except('password'))->save()==true)
{
return redirect('emails')->with('success','Email Created sucessfully');
}
else
{
return redirect('emails')->with('fails','Email can not Create');
}
}
catch(Exception $e)
{
return redirect('emails')->with('fails','Email can not Create');
}
}
/**
* Display the specified resource.
*
* @param int $id
* @return Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return Response
*/
public function edit($id, Department $department, Help_topic $help, Emails $email, Priority $priority, MailboxProtocol $mailbox_protocol)
{
try
{
$emails = $email->whereId($id)->first();
$departments = $department->get();
$helps = $help->get();
$priority = $priority->get();
$mailbox_protocols = $mailbox_protocol->get();
return view('themes.default1.admin.emails.emails.edit',compact('mailbox_protocols','priority','departments','helps','emails'));
}
catch(Exception $e)
{
return view('404');
}
}
/**
* Update the specified resource in storage.
*
* @param int $id
* @return Response
*/
public function update($id, Emails $email, EmailsEditRequest $request)
{
$password = $request->input('password');
$encrypted = Crypt::encrypt($password);
//echo $encrypted;
//$value = Crypt::decrypt($encrypted);
//echo $value;
try
{
$emails = $email->whereId($id)->first();
$emails->password = $encrypted;
$emails->fill($request->except('password'))->save();
return redirect('emails')->with('success','Email Updated sucessfully');
}
catch(Exception $e)
{
return redirect('emails')->with('fails','Email not updated');
}
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return Response
*/
public function destroy($id, Emails $email)
{
try
{
$emails = $email->whereId($id)->first();
if($emails->delete()==true)
{
return redirect('emails')->with('success','Email Deleted sucessfully');
}
else
{
return redirect('emails')->with('fails','Email can not Delete ');
}
}
catch(Exception $e)
{
return redirect('emails')->with('fails','Email can not Delete ');
}
}
}