Skip to content

Commit

Permalink
Merge pull request #17 from mettle/bugfix/helper-deprecations
Browse files Browse the repository at this point in the history
Fix deprecated helper methods
  • Loading branch information
JonoB authored Jun 10, 2020
2 parents 549dac1 + a316003 commit fa06347
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,10 @@
use Exception;
use Illuminate\Contracts\View\View as ViewContract;
use Illuminate\Http\RedirectResponse;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
use Rap2hpoutre\FastExcel\FastExcel;
use Sendportal\Base\Http\Controllers\Controller;
use Sendportal\Base\Http\Requests\SubscribersImportRequest;
Expand Down Expand Up @@ -44,14 +46,14 @@ public function show(SegmentTenantRepository $segmentRepo): ViewContract
public function store(SubscribersImportRequest $request): RedirectResponse
{
if ($request->file('file')->isValid()) {
$filename = str_random(16) . '.csv';
$filename = Str::random(16) . '.csv';

$path = $request->file('file')->storeAs('imports', $filename);

$subscribers = (new FastExcel)->import(storage_path('app/' . $path), function (array $line) use ($request) {
// TODO: validate each row beforehand
try {
$data = array_only($line, ['id', 'email', 'first_name', 'last_name']);
$data = Arr::only($line, ['id', 'email', 'first_name', 'last_name']);

$data['segments'] = $request->get('segments') ?? [];

Expand Down
9 changes: 5 additions & 4 deletions src/Services/Subscribers/ImportSubscriberService.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

namespace Sendportal\Base\Services\Subscribers;

use Illuminate\Support\Arr;
use Sendportal\Base\Models\Subscriber;
use Sendportal\Base\Repositories\SubscriberTenantRepository;
use Exception;
Expand All @@ -28,19 +29,19 @@ public function import(int $workspaceId, array $data): Subscriber
{
$subscriber = null;

if (!empty(\Arr::get($data, 'id'))) {
if (!empty(Arr::get($data, 'id'))) {
$subscriber = $this->subscribers->findBy($workspaceId, 'id', $data['id'], ['segments']);
}

if (!$subscriber) {
$subscriber = $this->subscribers->findBy($workspaceId, 'email', \Arr::get($data, 'email'), ['segments']);
$subscriber = $this->subscribers->findBy($workspaceId, 'email', Arr::get($data, 'email'), ['segments']);
}

if (!$subscriber) {
$subscriber = $this->subscribers->store($workspaceId, array_except($data, ['id', 'segments']));
$subscriber = $this->subscribers->store($workspaceId, Arr::except($data, ['id', 'segments']));
}

$data['segments'] = array_merge($subscriber->segments->pluck('id')->toArray(), \Arr::get($data, 'segments'));
$data['segments'] = array_merge($subscriber->segments->pluck('id')->toArray(), Arr::get($data, 'segments'));

$this->subscribers->update($workspaceId, $subscriber->id, $data);

Expand Down

0 comments on commit fa06347

Please sign in to comment.