*
* @return boolean true
*/
- function prepare($args)
+ function prepare(array $args=array())
{
parent::prepare($args);
throw new ClientException(_('Invalid URL.'), 400);
}
- $f = File::getKV('url', $this->url);
-
- if (empty($url)) {
- $f = File::processNew($this->url);
+ try {
+ // processNew will first try to fetch a locally stored File entry
+ $f = File::processNew($this->url);
+ } catch (ServerException $e) {
+ $f = null;
}
// How about now?
- if (!empty($f)) {
+ if ($f instanceof File) {
+ // FIXME: Use some File metadata Event instead
$this->oembed = File_oembed::getKV('file_id', $f->id);
- if (!empty($this->oembed)) {
+ if ($this->oembed instanceof File_oembed) {
$this->title = $this->oembed->title;
}
$this->thumbnail = File_thumbnail::getKV('file_id', $f->id);
* Handler method
*
* @param array $args is ignored since it's now passed in in prepare()
- *
* @return void
*/
-
- function handle($args=null)
+ function handle(array $args=array())
{
$this->startHTML('text/xml;charset=utf-8');
$this->elementStart('head');
* MAY override
*
* @param array $args other arguments
- *
* @return boolean is read only action?
*/
-
- function isReadOnly($args)
+ function isReadOnly(array $args=array())
{
return false;
}