Changeset View
Changeset View
Standalone View
Standalone View
src/applications/files/markup/PhabricatorEmbedFileRemarkupRule.php
Show First 20 Lines • Show All 92 Lines • ▼ Show 20 Lines | private function getFileOptions($option_string) { | ||||
return $options; | return $options; | ||||
} | } | ||||
private function renderImageFile( | private function renderImageFile( | ||||
PhabricatorFile $file, | PhabricatorFile $file, | ||||
PhabricatorObjectHandle $handle, | PhabricatorObjectHandle $handle, | ||||
array $options) { | array $options) { | ||||
require_celerity_resource('lightbox-attachment-css'); | require_celerity_resource('phui-lightbox-css'); | ||||
$attrs = array(); | $attrs = array(); | ||||
$image_class = 'phabricator-remarkup-embed-image'; | $image_class = 'phabricator-remarkup-embed-image'; | ||||
$use_size = true; | $use_size = true; | ||||
if (!$options['size']) { | if (!$options['size']) { | ||||
$width = $this->parseDimension($options['width']); | $width = $this->parseDimension($options['width']); | ||||
$height = $this->parseDimension($options['height']); | $height = $this->parseDimension($options['height']); | ||||
▲ Show 20 Lines • Show All 61 Lines • ▼ Show 20 Lines | $embed = javelin_tag( | ||||
'href' => $file->getBestURI(), | 'href' => $file->getBestURI(), | ||||
'class' => $image_class, | 'class' => $image_class, | ||||
'sigil' => 'lightboxable', | 'sigil' => 'lightboxable', | ||||
'meta' => array( | 'meta' => array( | ||||
'phid' => $file->getPHID(), | 'phid' => $file->getPHID(), | ||||
'uri' => $file->getBestURI(), | 'uri' => $file->getBestURI(), | ||||
'dUri' => $file->getDownloadURI(), | 'dUri' => $file->getDownloadURI(), | ||||
'viewable' => true, | 'viewable' => true, | ||||
'monogram' => $file->getMonogram(), | |||||
), | ), | ||||
), | ), | ||||
$img); | $img); | ||||
switch ($options['layout']) { | switch ($options['layout']) { | ||||
case 'right': | case 'right': | ||||
case 'center': | case 'center': | ||||
case 'inline': | case 'inline': | ||||
▲ Show 20 Lines • Show All 87 Lines • ▼ Show 20 Lines | private function renderFileLink( | ||||
PhabricatorObjectHandle $handle, | PhabricatorObjectHandle $handle, | ||||
array $options) { | array $options) { | ||||
return id(new PhabricatorFileLinkView()) | return id(new PhabricatorFileLinkView()) | ||||
->setFilePHID($file->getPHID()) | ->setFilePHID($file->getPHID()) | ||||
->setFileName($this->assertFlatText($options['name'])) | ->setFileName($this->assertFlatText($options['name'])) | ||||
->setFileDownloadURI($file->getDownloadURI()) | ->setFileDownloadURI($file->getDownloadURI()) | ||||
->setFileViewURI($file->getBestURI()) | ->setFileViewURI($file->getBestURI()) | ||||
->setFileViewable((bool)$options['viewable']); | ->setFileViewable((bool)$options['viewable']) | ||||
->setFileMonogram($file->getMonogram()); | |||||
} | } | ||||
private function parseDimension($string) { | private function parseDimension($string) { | ||||
$string = trim($string); | $string = trim($string); | ||||
if (preg_match('/^(?:\d*\\.)?\d+%?$/', $string)) { | if (preg_match('/^(?:\d*\\.)?\d+%?$/', $string)) { | ||||
return $string; | return $string; | ||||
} | } | ||||
return null; | return null; | ||||
} | } | ||||
} | } |