diff --git a/app/Http/Controllers/TemplateController.php b/app/Http/Controllers/TemplateController.php index 784f76bfd443..9a01f2551bc6 100644 --- a/app/Http/Controllers/TemplateController.php +++ b/app/Http/Controllers/TemplateController.php @@ -112,7 +112,7 @@ class TemplateController extends BaseController $body = request()->input('body'); $data = [ - 'subject' => Parsedown::instance()->text(request()->input('subject')), + 'subject' => request()->input('subject'), 'body' => Parsedown::instance()->text(request()->input('body')), ]; diff --git a/app/Models/ClientContact.php b/app/Models/ClientContact.php index 76933d747054..d4db22eef46d 100644 --- a/app/Models/ClientContact.php +++ b/app/Models/ClientContact.php @@ -84,6 +84,7 @@ class ClientContact extends Authenticatable implements HasLocalePreference 'custom_value3', 'custom_value4', 'email', + 'is_primary', ]; public function getHashedIdAttribute() diff --git a/app/Repositories/ClientContactRepository.php b/app/Repositories/ClientContactRepository.php index e149969fb62e..3867097ce656 100644 --- a/app/Repositories/ClientContactRepository.php +++ b/app/Repositories/ClientContactRepository.php @@ -34,14 +34,12 @@ class ClientContactRepository extends BaseRepository }); + $this->is_primary = true; /* Set first record to primary - always */ - $contacts = $contacts->sortBy('is_primary'); - - $contacts->first(function($contact){ - - $contact['is_primary'] = true; - // $contact->save(); - + $contacts = $contacts->sortBy('is_primary')->map(function ($contact){ + $contact['is_primary'] = $this->is_primary; + $this->is_primary = false; + return $contact; }); //loop and update/create contacts @@ -66,6 +64,8 @@ class ClientContactRepository extends BaseRepository $update_contact->save(); }); + + //always made sure we have one blank contact to maintain state if($contacts->count() == 0) { diff --git a/app/Repositories/ClientRepository.php b/app/Repositories/ClientRepository.php index d0a8b76612c3..d299baec4aa1 100644 --- a/app/Repositories/ClientRepository.php +++ b/app/Repositories/ClientRepository.php @@ -71,8 +71,7 @@ class ClientRepository extends BaseRepository if(isset($data['contacts'])) $contacts = $this->contact_repo->save($data['contacts'], $client); - - + if(empty($data['name'])) $data['name'] = $client->present()->name(); diff --git a/database/migrations/2014_10_13_000000_create_users_table.php b/database/migrations/2014_10_13_000000_create_users_table.php index bd42aa1626fb..3457e6399573 100644 --- a/database/migrations/2014_10_13_000000_create_users_table.php +++ b/database/migrations/2014_10_13_000000_create_users_table.php @@ -705,6 +705,7 @@ class CreateUsersTable extends Migration $t->softDeletes('deleted_at', 6); $t->index(['deleted_at', 'invoice_id']); + $t->unique(['client_contact_id', 'invoice_id']); }); diff --git a/resources/views/email/template/custom.blade.php b/resources/views/email/template/custom.blade.php new file mode 100644 index 000000000000..6335a9eb877b --- /dev/null +++ b/resources/views/email/template/custom.blade.php @@ -0,0 +1 @@ +{{ $body }} \ No newline at end of file diff --git a/resources/views/email/template/dark.blade.php b/resources/views/email/template/dark.blade.php new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/resources/views/email/template/light.blade.php b/resources/views/email/template/light.blade.php new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/resources/views/email/template/plain.blade.php b/resources/views/email/template/plain.blade.php new file mode 100644 index 000000000000..e69de29bb2d1