/**
  * @param int   $id
  * @param array $data
  *
  * @return \Illuminate\Database\Eloquent\Model
  */
 public function update($id, array $data = [])
 {
     if (!isset($data['is_redirect'])) {
         $data['is_redirect'] = 0;
     }
     return parent::update($id, $data);
 }
 /**
  * @param int   $id
  * @param array $data
  *
  * @return \Illuminate\Database\Eloquent\Model
  */
 public function update($id, array $data = [])
 {
     $role = parent::update($id, $data);
     if ($role->id > 2) {
         $role->syncPermissions((array) array_get($data, 'permissions'));
     }
     return $role;
 }
 /**
  * @param int   $id
  * @param array $data
  *
  * @return \Illuminate\Database\Eloquent\Model
  */
 public function update($id, array $data = [])
 {
     /** @var User $user */
     $user = parent::update($id, $data);
     if ($user->id > 1) {
         $result = $user->roles()->sync((array) array_get($data, 'roles', []));
         event(new UserRolesChanged($user, $result['attached'], $result['detached']));
     }
     return $user;
 }
 /**
  * @param array $data
  *
  * @return \Illuminate\Database\Eloquent\Model
  * @throws FieldException
  */
 public function create(array $data = [])
 {
     if (is_null($type = array_get($data, 'type'))) {
         throw new FieldException('Type not set');
     }
     if (is_null($typeObject = FieldManager::getFieldTypeBy('type', $type))) {
         throw new FieldException("Datasource field type {$type} not found");
     }
     /** @var FieldInterface $field */
     $field = parent::create($data);
     FieldManager::addFieldToSectionTable($field->getSection(), $field);
     return $field;
 }
 /**
  * @param EmailEvent $model
  */
 public function __construct(EmailEvent $model)
 {
     parent::__construct($model);
 }
 /**
  * @param EmailTemplate $model
  */
 public function __construct(EmailTemplate $model)
 {
     parent::__construct($model);
 }
 /**
  * @param FieldGroup $model
  */
 public function __construct(FieldGroup $model)
 {
     parent::__construct($model);
 }
 /**
  * @param int   $id
  * @param array $data
  *
  * @return \Illuminate\Database\Eloquent\Model
  */
 public function update($id, array $data = [])
 {
     return parent::update($id, array_except($data, ['type']));
 }
 /**
  * @param int $id
  *
  * @return Model
  * @throws \Exception
  */
 public function delete($id)
 {
     $model = parent::delete($id);
     $model->fields()->delete();
     DatasourceManager::dropSectionTable($model);
     return $model;
 }
 /**
  * @param PagePart $model
  */
 public function __construct(PagePart $model)
 {
     parent::__construct($model);
 }
 /**
  * @param Job $model
  */
 public function __construct(Job $model)
 {
     parent::__construct($model);
 }
 /**
  * @param Notification $model
  */
 public function __construct(Notification $model)
 {
     parent::__construct($model);
 }
 /**
  * @param Document          $model
  * @param SectionRepository $repository
  */
 public function __construct(Document $model, SectionRepository $repository)
 {
     parent::__construct($model);
     $this->section = $repository;
 }
 /**
  * TokenRepository constructor.
  *
  * @param Token $model
  */
 public function __construct(Token $model)
 {
     parent::__construct($model);
 }