1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-24 18:27:10 +02:00
invoiceninja/app/Ninja/Import/CSV/ClientTransformer.php
2015-11-24 21:45:38 +02:00

41 lines
1.6 KiB
PHP

<?php namespace App\Ninja\Import\CSV;
use League\Fractal\TransformerAbstract;
use App\Models\Country;
use League\Fractal\Resource\Item;
class ClientTransformer extends TransformerAbstract
{
public function transform($data, $maps)
{
if (isset($maps[ENTITY_CLIENT][$data->name])) {
return false;
}
if (isset($maps['countries'][$data->country])) {
$data->country_id = $maps['countries'][$data->country];
}
return new Item($data, function ($data) use ($maps) {
return [
'name' => isset($data->name) ? $data->name : null,
'work_phone' => isset($data->work_phone) ? $data->work_phone : null,
'address1' => isset($data->address1) ? $data->address1 : null,
'city' => isset($data->city) ? $data->city : null,
'state' => isset($data->state) ? $data->state : null,
'postal_code' => isset($data->postal_code) ? $data->postal_code : null,
'private_notes' => isset($data->notes) ? $data->notes : null,
'contacts' => [
[
'first_name' => isset($data->first_name) ? $data->first_name : null,
'last_name' => isset($data->last_name) ? $data->last_name : null,
'email' => isset($data->email) ? $data->email : null,
'phone' => isset($data->phone) ? $data->phone : null,
],
],
'country_id' => isset($data->country_id) ? $data->country_id : null,
];
});
}
}