chore: refactor user model (#3564)

This commit is contained in:
Regis Freyd
2020-02-11 16:01:06 -05:00
committed by GitHub
parent 26bdb8c8bb
commit 355f3b8a23
37 changed files with 790 additions and 419 deletions
+36 -22
View File
@@ -3,7 +3,9 @@
namespace App\Http\Controllers;
use App\Helpers\DBHelper;
use Illuminate\View\View;
use App\Helpers\DateHelper;
use App\Helpers\FormHelper;
use App\Models\Contact\Tag;
use Illuminate\Support\Str;
use Illuminate\Http\Request;
@@ -14,8 +16,11 @@ use App\Models\Contact\Contact;
use App\Services\VCard\ExportVCard;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\RedirectResponse;
use Illuminate\Contracts\View\Factory;
use App\Models\Relationship\Relationship;
use Barryvdh\Debugbar\Facade as Debugbar;
use App\Services\User\UpdateViewPreference;
use Illuminate\Validation\ValidationException;
use App\Services\Contact\Contact\CreateContact;
use App\Services\Contact\Contact\UpdateContact;
@@ -31,7 +36,7 @@ class ContactsController extends Controller
*
* @param Request $request
*
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
* @return View|RedirectResponse
*/
public function index(Request $request)
{
@@ -43,7 +48,7 @@ class ContactsController extends Controller
*
* @param Request $request
*
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
* @return View|RedirectResponse
*/
public function archived(Request $request)
{
@@ -54,8 +59,8 @@ class ContactsController extends Controller
* Display contacts.
*
* @param Request $request
*
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
* @param bool $active
* @return View|RedirectResponse
*/
private function contacts(Request $request, bool $active)
{
@@ -64,7 +69,11 @@ class ContactsController extends Controller
$showDeceased = $request->input('show_dead');
if ($user->contacts_sort_order !== $sort) {
$user->updateContactViewPreference($sort);
app(UpdateViewPreference::class)->execute([
'account_id' => $user->account->id,
'user_id' => $user->id,
'preference' => $sort,
]);
}
$contacts = $user->account->contacts()->real();
@@ -131,7 +140,7 @@ class ContactsController extends Controller
/**
* Show the form to add a new contact.
*
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse
* @return View|Factory|RedirectResponse
*/
public function create()
{
@@ -141,7 +150,7 @@ class ContactsController extends Controller
/**
* Show the form in case the contact is missing.
*
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse
* @return View|Factory|RedirectResponse
*/
public function missing()
{
@@ -152,7 +161,7 @@ class ContactsController extends Controller
* Show the Add user form unless the contact has limitations.
*
* @param bool $isContactMissing
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse
* @return View|Factory|RedirectResponse
*/
private function createForm($isContactMissing = false)
{
@@ -165,15 +174,15 @@ class ContactsController extends Controller
return view('people.create')
->withIsContactMissing($isContactMissing)
->withGenders(GendersHelper::getGendersInput())
->withDefaultGender(auth()->user()->account->default_gender_id);
->withDefaultGender(auth()->user()->account->default_gender_id)
->withFormNameOrder(FormHelper::getNameOrderForForms(auth()->user()));
}
/**
* Store the contact.
*
* @param \Illuminate\Http\Request $request
*
* @return \Illuminate\Http\RedirectResponse
* @param Request $request
* @return RedirectResponse
*/
public function store(Request $request)
{
@@ -208,7 +217,7 @@ class ContactsController extends Controller
*
* @param Contact $contact
*
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
* @return View|RedirectResponse
*/
public function show(Contact $contact)
{
@@ -292,7 +301,7 @@ class ContactsController extends Controller
*
* @param Contact $contact
*
* @return \Illuminate\View\View
* @return View
*/
public function edit(Contact $contact)
{
@@ -318,7 +327,8 @@ class ContactsController extends Controller
->withAge($age)
->withHasBirthdayReminder($hasBirthdayReminder)
->withHasDeceasedReminder($hasDeceasedReminder)
->withGenders(GendersHelper::getGendersInput());
->withGenders(GendersHelper::getGendersInput())
->withFormNameOrder(FormHelper::getNameOrderForForms(auth()->user()));
}
/**
@@ -327,7 +337,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\Http\RedirectResponse
* @return RedirectResponse
*/
public function update(Request $request, Contact $contact)
{
@@ -414,7 +424,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\Http\RedirectResponse
* @return RedirectResponse
*/
public function destroy(Request $request, Contact $contact)
{
@@ -439,7 +449,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\View\View
* @return View
*/
public function editWork(Request $request, Contact $contact)
{
@@ -453,7 +463,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\Http\RedirectResponse
* @return RedirectResponse
*/
public function updateWork(Request $request, Contact $contact)
{
@@ -474,7 +484,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\View\View
* @return View
*/
public function editFoodPreferences(Request $request, Contact $contact)
{
@@ -488,7 +498,7 @@ class ContactsController extends Controller
* @param Request $request
* @param Contact $contact
*
* @return \Illuminate\Http\RedirectResponse
* @return RedirectResponse
*/
public function updateFoodPreferences(Request $request, Contact $contact)
{
@@ -625,7 +635,11 @@ class ContactsController extends Controller
$sort = $request->input('sort') ?? $user->contacts_sort_order;
if ($user->contacts_sort_order !== $sort) {
$user->updateContactViewPreference($sort);
app(UpdateViewPreference::class)->execute([
'account_id' => $user->account->id,
'user_id' => $user->id,
'preference' => $sort,
]);
}
$tags = null;