{layout '..\@layout.latte'} {var $photo = new \App\Models\Photo($photo_id)} {block content} {var $id = $photo->i('id')} {if $photo->i('moderated') === 0 && $moderated === true}

Это {$extname} пока не опубликовано

Сейчас {$extnamef} рассматривается модераторами и пока не видна другим пользователям. Это может занять определённое время, иногда до нескольких дней.

Здесь Вы можете увидеть, как будет выглядеть страница с фотографией после публикации.
{/if} {if $photo->i('moderated') === 2 && $moderated === true}

Фотография не принята к публикации

' . $photo->declineReason($photo->content('declineReason')) . '
{/if}
{if $photo_id != null && $moderated === true}
{if $photo->content('videourl') != null} {else} {/if} {if $photo->i('on_contest') === 2}  Фотография участвует в голосовании {/if} {foreach $photo->content('contests') as $c} {if $c['place'] === 1} {var $img = '3'} {/if} {if $c['place'] === 2} {var $img = '2'} {/if} {if $c['place'] === 3} {var $img = '1'} {/if}  {$c['place']}-е место на фотоконкурсе {/foreach} {if $photo->i('priority') === 1}
Условная публикация
{elseif $photo->i('priority') === 2}
Временная публикация
{/if}
{/if}
{if $photo->i('place') != null} {/if}
{$photo->i('place')}
{if $photo->i('gallery_id') != 0 || $photo->i('gallery_id') != null}
' . \App\Services\DB::query('SELECT title FROM galleries WHERE id=:id', array(':id' => $photo->i('gallery_id')))[0]['title'] . '
{/if}
{if $photo->i('entitydata_id') >= 1} {$entitydata['title']}  —  маршрут {$photo->content('entityroute')} {/if}
{if $photo->content('comment') != null}
{$photo->content('comment')}
{/if}

{if $photo->i('posted_at') === 943909200 || \App\Services\Date::zmdate($photo->i('posted_at')) === '30 ноября 1999 в 00:00'} {var $date = 'не указана'} {else} {var $date = \App\Services\Date::zmdate($photo->i('posted_at'))} {/if}
Автор: {$photouser->i('username')}          Дата: {$date}
{/if}

Статистика

Лицензия: BY-NC
Опубликовано {\App\Services\Date::zmdate($photo->i('timeupload'))}
Просмотров — {\App\Services\DB::query('SELECT COUNT(*) FROM photos_views WHERE photo_id=:id', array(':id' => $photo_id))[0]['COUNT(*)']}

Подробная информация
{if $user_id > 0}

Инструменты

{if \App\Services\DB::query('SELECT user_id FROM photos_favorite WHERE photo_id=:pid AND user_id=:uid', array(':uid' => $user_id, ':pid' => $photo_id))} {var $fav = 1} {var $textfav = 'Удалить фото из Избранного'} {else} {var $fav = 0} {var $textfav = 'Добавить фото в Избранное'} {/if} {$textfav}
{/if} {if $photo->i('moderated') === 1 && $photo->content('rating') != 'disabled'}

Оценка

Рейтинг: {\App\Models\Vote::count($id)}
{if $user_id > 0 && ($ngallery['root']['registration']['emailverify'] != true || $user->i('status') != 3)}
Интересная фотография! Мне не нравится {if (($photo->content('video') === null && $photo->i('user_id') != $user_id) || $photo->i('on_contest') != 2)} Красиво, на конкурс! Неконкурсное фото {elseif ($photo->i('user_id') === $user_id && $photo->i('on_contest') != 2)} Выставить на конкурсНе участвовать в конкурсе
{/if}
{/if}
{var $votespos = \App\Services\DB::query('SELECT * FROM photos_rates WHERE photo_id=:pid AND type=1 AND contest=0 ORDER BY id DESC', array(':pid' => $id))} {foreach $votespos as $ps} {var $uservote = new \App\Models\User($ps['user_id'])} {/foreach}
{$uservote->i('username')}+1
{var $votesneg = \App\Services\DB::query('SELECT * FROM photos_rates WHERE photo_id=:pid AND type=0 AND contest=0 ORDER BY id DESC', array(':pid' => $id))} {foreach $votesneg as $ps} {var $uservote = new \App\Models\User($ps['user_id'])} {/foreach}
{$uservote->i('username')}-1
{/if}
{if $photo->i('entitydata_id') >= 1}

{$entitydata['title']}

{var $entity = \App\Services\DB::query('SELECT * FROM entities_data WHERE id=:id', array(':id'=>$photo->i('entitydata_id')))[0]} {var $vehiclevariables = json_decode($vehicle->i('sampledata'), true)} {var $vehicledatavariables = json_decode($entity['content'], true)} {var $num = 1} {foreach $vehiclevariables as $vb} {$num++} {/foreach}
{$vb['name']}: {$vehicledatavariables[$num]['value']}
{/if} {if ($photo->content('type') != 'none') && (json_decode($photo->i('exif'), true)['type'] != 'none') && ($photo->content('rating') != 'disabled') && ($photo->i('exif') != NULL)}

Параметры съёмки

{var $data = json_decode($photo->i('exif'), true)} {var $exifTranslations = [ 'FILE.FileName' => 'Имя файла', 'FILE.FileSize' => 'Размер файла', 'FILE.FileDateTime' => 'Дата и время файла', 'COMPUTED.MimeType' => 'Тип MIME', 'IFD0.Make' => 'Производитель камеры', 'IFD0.Model' => 'Модель камеры', 'IFD0.Orientation' => 'Ориентация', 'IFD0.XResolution' => 'Разрешение по X', 'IFD0.YResolution' => 'Разрешение по Y', 'IFD0.ResolutionUnit' => 'Единица разрешения', 'IFD0.Software' => 'Программное обеспечение', 'IFD0.DateTime' => 'Дата и время', 'IFD0.Artist' => 'Автор', 'IFD0.Copyright' => 'Авторские права', 'EXIF.ExposureTime' => 'Время экспозиции', 'EXIF.FNumber' => 'Диафрагма', 'EXIF.ExposureProgram' => 'Программа экспозиции', 'EXIF.ISOSpeedRatings' => 'ISO', 'EXIF.ExifVersion' => 'Версия EXIF', 'EXIF.DateTimeOriginal' => 'Дата и время оригинала', 'EXIF.DateTimeDigitized' => 'Дата и время оцифровки', 'EXIF.ShutterSpeedValue' => 'Значение выдержки', 'EXIF.ApertureValue' => 'Значение диафрагмы', 'EXIF.BrightnessValue' => 'Значение яркости', 'EXIF.ExposureBiasValue' => 'Экспокоррекция', 'EXIF.MaxApertureValue' => 'Максимальная диафрагма', 'EXIF.MeteringMode' => 'Режим экспозамера', 'EXIF.LightSource' => 'Источник света', 'EXIF.Flash' => 'Вспышка', 'EXIF.FocalLength' => 'Фокусное расстояние', 'EXIF.SubjectArea' => 'Область объекта', 'EXIF.FlashpixVersion' => 'Версия Flashpix', 'EXIF.ColorSpace' => 'Цветовое пространство', 'EXIF.PixelXDimension' => 'Размер изображения по X', 'EXIF.PixelYDimension' => 'Размер изображения по Y', 'EXIF.SensingMethod' => 'Метод съёмки', 'EXIF.SceneType' => 'Тип сцены', 'EXIF.ExposureMode' => 'Режим экспозиции', 'EXIF.WhiteBalance' => 'Баланс белого', 'EXIF.FocalLengthIn35mmFilm' => 'Фокусное расстояние для 35мм плёнки', 'EXIF.SceneCaptureType' => 'Тип съёмки', 'EXIF.GainControl' => 'Регулировка усиления', 'EXIF.Contrast' => 'Контрастность', 'EXIF.Saturation' => 'Насыщенность', 'EXIF.Sharpness' => 'Резкость', 'GPS.GPSLatitude' => 'Широта', 'GPS.GPSLongitude' => 'Долгота', 'GPS.GPSAltitude' => 'Высота', 'GPS.GPSTimeStamp' => 'Время GPS', 'GPS.GPSDateStamp' => 'Дата GPS' ]}
{foreach $data as $key => $value} {if isset($exifTranslations[$key])} {/if} {/foreach}
{$exifTranslations[$key]|escape}: {$value|escape}
{/if} {if $photo->content('lat') != null && $photo->content('lng') != null}

Место на карте

{/if} {if ($photo->i('moderated') === 1)} {var = $comments = \App\Services\DB::query('SELECT * FROM photos_comments WHERE photo_id=:pid ORDER BY CASE WHEN id = :pinnedid THEN 0 ELSE 1 END, id ASC', array(':pid' => $id, ':pinnedid' => $photo->i('pinnedcomment_id')))} {var = $commcount = 0} {foreach $comments as $c} {if json_decode($c['content'], true)['deleted'] != 'true'} {var $commcount = $commcount+1} {/if} {/foreach} {if ($photo->content('comments') != 'disabled')}
{if ($commcount > 0)}

Комментарии ·{$commcount}

{/if}
{var $number = 1} {foreach $comments as $c} {var $comm = new \App\Models\Comment($c)} {if $comm->content('deleted') != 'true'} {if $number % 2 == 0} {var $class = 's11'} {else} {var $class = 's1'} {/if} {$comm->class($class)} {var $number = $number+1} {$comm->i()} {/if} {/foreach}

Ваш комментарий

{if $user_id > 0} {if ($ngallery['root']['registration']['emailverify'] != true || $user->i('status') != 3)}

{else} {'Комментарии могут оставлять только пользователи с подтверждённой почтой.'} {/if} {else} {'Комментарии могут оставлять только зарегистрированные пользователи.'} {/if}
{else}

Комментарии отключены пользователем или по усмотрению Администрации.

{/if} {/block}