public function process(Attachment $attachment) { $this->attachment = $attachment; $this->attach($attachment); $this->attachment->saved(function (Attachment $attachment) { $this->getFinder()->useDisk($attachment->disk); $this->apply($attachment); }); }
public function process(Attachment $attachment) { /** @var \Illuminate\Database\Eloquent\Model $attachment */ $attachment->saved(function (Attachment $attachment) { /** @var \Illuminate\Database\Eloquent\Model $attachment */ if ($attachment->isDirty()) { $attachment->save(); } }, PHP_INT_MIN); }
/** * @param Attachment $attachment * @param string|null $var * @param array $params * @param bool|null $sign * * @return null|string */ function attach_url($attachment, string $var = null, $params = [], bool $sign = null) { if (!$attachment instanceof Attachment) { return null; } $route = config('attach.route'); $sign = is_null($sign) ? config('attach.sign') : $sign; $name = is_string($route) ? $route : array_get($route, 'as'); $filename = $attachment->getAttachmentKey() . (is_null($var) ? '' : '.' . $var) . '.' . $attachment->extension; $url = route($name, $params + compact('filename')); if ($sign) { return sign_url($url); } return $url; }