public function getDownloadURL() { $file_svc = new \Elgg\FileService\File(); $file_svc->setFile($this); $file_svc->setDisposition('attachment'); $file_svc->bindSession(false); return $file_svc->getURL(); }
/** * Returns file's URL for inline display * Suitable for displaying cacheable resources, such as user avatars * * @param \ElggFile $file File object or entity * @param bool $use_cookie Limit URL validity to current session only * @param string $expires URL expiration, as a string suitable for strtotime() * @return string */ function elgg_get_inline_url(\ElggFile $file, $use_cookie = false, $expires = '+1 year') { $file_svc = new Elgg\FileService\File(); $file_svc->setFile($file); $file_svc->setExpires($expires); $file_svc->setDisposition('inline'); $file_svc->bindSession($use_cookie); return $file_svc->getURL(); }
/** * @group FileService */ public function testSends304WithIfNoneMatchHeadersIncludedAndDeflationEnabled() { $file = new \Elgg\FileService\File(); $file->setFile($this->file); $request = $this->createRequest($file); $request->headers->set('if_none_match', '"' . $this->file->getModifiedTime() . '-gzip"'); $response = $this->handler->getResponse($request); $this->assertEquals(304, $response->getStatusCode()); }
/** * @group FileService * @expectedException \InvalidArgumentException */ public function testInvalidDisposition() { $file = new \Elgg\FileService\File(); $file->setFile($this->file); $file->setDisposition('foo'); }