Same name and namespace in other branches
  1. 8.x-2.x src/Controller/ExifSettingsController.php \Drupal\exif\Controller\ExifSettingsController::showSample() 1 comment

Create a sample HTML Fragment.

Return value

array HTML Fragment with a sample image and metadata.

1 string reference to 'ExifSettingsController::showSample'
exif.routing.yml in ./exif.routing.yml
exif.routing.yml

File

src/Controller/ExifSettingsController.php, line 245

Class

ExifSettingsController
Class ExifSettingsController manage action of settings pages.

Namespace

Drupal\exif\Controller

Code

public function showSample() {
    $sampleImageFilePath = drupal_get_path('module', 'exif') . '/sample.jpg';
    $exif = ExifFactory::getExifInterface();
    $fullmetadata = $exif->readMetadataTags($sampleImageFilePath);
    $html = '<table class="metadata-table"><tbody>';
    foreach ($fullmetadata as $currentSection => $currentValues) {
        $html .= '<tr class="metadata-section"><td colspan="2">' . $currentSection . '</td></tr>';
        foreach ($currentValues as $currentKey => $currentValue) {
            $exif_value = $this->sanitizeValue($currentValue);
            $html .= '<tr class="metadata-row ' . $currentKey . '"><td class="metadata-key">' . $currentKey . '</td><td class="metadata-value">' . $exif_value . '</td></tr>';
        }
    }
    $html .= '</tbody><tfoot></tfoot></table>';
    return [
        '#metadata' => $html,
        '#image_path' => '/' . $sampleImageFilePath,
        '#taxo' => '',
        '#permissionLink' => '',
        '#taxonomyFragment' => '',
        '#theme' => 'exif_sample',
        '#attached' => [
            'library' => [
                'exif/exif-sample',
            ],
        ],
    ];
}