35 lines
749 B
PHP
35 lines
749 B
PHP
|
<?php
|
||
|
|
||
|
namespace Bluesquare\Connect\Traits;
|
||
|
|
||
|
trait HasConnectSync
|
||
|
{
|
||
|
abstract function fill($data);
|
||
|
abstract function save();
|
||
|
abstract function delete();
|
||
|
|
||
|
public static $connectResource;
|
||
|
|
||
|
public static function onConnectResourceCreated($id, $data)
|
||
|
{
|
||
|
$record = new self;
|
||
|
$record->fill($data);
|
||
|
$record->save();
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public static function onConnectResourceUpdated($id, $data)
|
||
|
{
|
||
|
$record = self::find($id) ?? new self;
|
||
|
$record->fill($data);
|
||
|
$record->save();
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public static function onConnectResourceDeleted($id, $data)
|
||
|
{
|
||
|
$record = self::find($id);
|
||
|
return $record ? $record->delete() : false;
|
||
|
}
|
||
|
}
|