category()->club()}}
{{if settings.clubs and settings.clubs_header == 'full'}}
{template="header" app="core" group="clubs" params="$club, $album->category()"}
{{endif}}
{{endif}}
{{if $album->coverPhoto('masked')}}
{{elseif $album->lastImage()}}
{{if $album->lastImage()->media}}
{template="thumbImage" group="global" app="core" params="'', $album->name, 'veryLarge', 'ipsNoThumb_video'"}
{{else}}
{template="thumbImage" group="global" app="core" params="'', $album->name, 'large'"}
{{endif}}
{{endif}}
{{if $album->type === \IPS\gallery\Album::AUTH_TYPE_PRIVATE}}
{lang="album_private_badge"}
{{elseif $album->type === \IPS\gallery\Album::AUTH_TYPE_RESTRICTED}}
{lang="album_friend_only_badge"}
{{endif}}
{template="userPhoto" group="global" app="core" params="\IPS\Member::load( $album->owner_id ), 'tiny'"}
{lang="album_created_by"}
{$album->owner()->link()|raw}
{$album->count_imgs}
{{if $album->use_comments}}
{$album->comments}
{{endif}}
{{if $album->allow_comments}}
{$album->count_comments}
{{endif}}
{{if $album->description}}
{$album->description|raw}
{{endif}}
{{if \IPS\IPS::classUsesTrait( $album->asItem(), 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
{template="reputation" app="core" group="global" params="$album->asItem()"}
{{endif}}
{{if $album->canDelete() || $album->asItem()->canEdit() || $album->asItem()->canOnMessage( 'add' ) || $album->asItem()->canFeature() || $album->asItem()->canUnfeature() || $album->asItem()->canHide() || $album->asItem()->canUnhide() || $album->asItem()->canMove() || $album->asItem()->canLock() || $album->asItem()->canUnlock() || $album->asItem()->canReportOrRevoke() === TRUE}}
{{endif}}
{{if count( $album->_event )}}
{lang="events_in_album" pluralize="count( $album->_event )"}
{template="eventBlocks" group="view" app="calendar" params="$album->_event"}
{{endif}}
{template="contentItemMessages" group="global" app="core" params="$album->asItem()->getMessages(), $album->asItem()"}
{{if $album->can('add')}}
{{endif}}
{$table|raw}
{{if $album->asItem()->shareLinks()}}
{template="sharelinks" app="core" group="global" params="$album->asItem()"}
{{endif}}
{{if $commentsAndReviews}}
{{if ( $album->asItem()->use_reviews && $album->asItem()->container()->allow_reviews ) && ( $album->asItem()->use_comments && $album->asItem()->container()->allow_comments ) }}
{lang="user_feedback"}
{{endif}}
{$commentsAndReviews|raw}
{{endif}}
{template="follow" app="core" group="global" params="'gallery', 'album', $album->_id, $followerCount"}
{template="promote" app="core" group="global" params="$album"}
{{if $album->category()->club()}}
{{endif}}
]]>
isLastPage()}}data-lastPage{{endif}} data-feedID='image-{$album->id}' id='comments'>
{lang="num_comments_uc" pluralize="$album->comments"}
{{if $album->commentPageCount() > 1}}
{$album->commentPagination( array('tab') )|raw}
{{endif}}
{{if count( $album->comments( NULL, NULL, 'date', 'asc', NULL, NULL, NULL, NULL, FALSE, isset( \IPS\Request::i()->showDeleted ) ) )}}
{{else}}
{lang="no_comments"}
{{endif}}
{{if $album->commentPageCount() > 1}}
{$album->commentPagination( array('tab') )|raw}
{{endif}}
{{if $album->commentForm() || $album->locked() || \IPS\Member::loggedIn()->restrict_post || \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings'] || !\IPS\Member::loggedIn()->checkPostsPerDay()}}
{{endif}}
]]>
url()}' {{if $album->isLastPage('reviews')}}data-lastPage{{endif}} data-feedID='image-{$album->id}-reviews' id='reviews'>
{{if $album->reviewForm()}}
{$album->reviewForm()|raw}
{{else}}
{{if $album->hasReviewed()}}
{{elseif \IPS\Member::loggedin()->restrict_post}}
{{if \IPS\Member::loggedIn()->restrict_post == -1}}
{template="reviewUnavailable" group="forms" location="front" app="core" params="'restricted_cannot_comment'"}
{{else}}
{template="reviewUnavailable" group="forms" location="front" app="core" params="'restricted_cannot_comment', \IPS\Member::loggedIn()->warnings(5,NULL,'rpa'), \IPS\Member::loggedIn()->restrict_post"}
{{endif}}
{{elseif \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings']}}
{template="reviewUnavailable" group="forms" location="front" app="core" params="'unacknowledged_warning_cannot_post', \IPS\Member::loggedIn()->warnings( 1, FALSE )"}
{{endif}}
{{endif}}
{{if count( $album->reviews( NULL, NULL, NULL, 'desc', NULL, NULL, NULL, NULL, isset( \IPS\Request::i()->showDeleted ) ) )}}
{{if !$album->hasReviewed()}} {{endif}}
{template="commentMultimodHeader" app="core" group="global" params="$album, '#reviews', 'review'"}
{{if $album->reviewPageCount() > 1}}
{$album->reviewPagination( array( 'tab', 'sort' ) )|raw}
{{endif}}
{{if $album->reviewPageCount() > 1}}
{$album->reviewPagination( array( 'tab', 'sort' ) )|raw}
{{endif}}
{{elseif !$album->canReview()}}
{lang="no_reviews"}
{{endif}}
]]>
asNode();}}
{{endif}}
{{if \IPS\gallery\Image::containerUnread( $album )}}
{{endif}}
{{if $album->asItem()->mapped('featured')}}
{{endif}}
{{if $album->type === \IPS\gallery\Album::AUTH_TYPE_PRIVATE}}
{lang="album_private_badge"}
{{elseif $album->type === \IPS\gallery\Album::AUTH_TYPE_RESTRICTED}}
{lang="album_friend_only_badge"}
{{endif}}
{{if \IPS\gallery\Image::containerUnread( $album )}}{{endif}}
{$album->_title}
{{if \IPS\gallery\Image::containerUnread( $album )}} {{endif}}
{{if $album->last_img_date}}
{lang="updated"} {datetime="$album->last_img_date"}
{{endif}}
{{if $album->type === \IPS\gallery\Album::AUTH_TYPE_PRIVATE}}
{lang="album_private_badge"}
{{elseif $album->type === \IPS\gallery\Album::AUTH_TYPE_RESTRICTED}}
{lang="album_friend_only_badge"}
{{endif}}
{{if $album->truncated()}}
{$album->truncated()|raw}
{{else}}
{{endif}}
{{if !isset( \IPS\Request::i()->tab ) || \IPS\Request::i()->tab !== 'node_gallery_gallery'}}
{template="userPhoto" group="global" app="core" params="$album->owner(), 'tiny'"}
{lang="album_created_by"}
{lang="by"}
{$album->owner()->link()|raw}
{{if $album->last_img_date}}
{lang="updated"}
{datetime="$album->last_img_date"}
{{endif}}
{{endif}}
{$album->count_imgs}
{{if $album->use_comments}}
{$album->comments}
{{endif}}
{{if $album->allow_comments}}
{$album->count_comments}
{{endif}}
{{if $table->canModerate()}}
multimodActions( $album ) )"}" data-state=''>
{{endif}}
coverPhoto( 'small' )}}style='background-image: url( "{backgroundimage="$album->coverPhoto( 'small' )"}" );'{{endif}} class='cGalleryTrimmedImage{{if !$album->coverPhoto('small') AND $album->lastImage() AND $album->lastImage()->media}} ipsNoThumb ipsNoThumb_video{{endif}}'>
{{if $album->coverPhoto( 'small' )}}
{{endif}}
{{foreach $album->_latestImages as $image }}
{{if ( $album->cover_img_id AND $image->id != $album->cover_img_id ) OR ( !$album->cover_img_id AND $album->lastImage() AND $image->id != $album->lastImage()->id )}}
small_file_name}}style='background-image: url( "{backgroundimage="\IPS\File::get( 'gallery_Images', $image->small_file_name )->url"}" );'{{endif}} class='cGalleryTrimmedImage{{if $image->media}} ipsNoThumb ipsNoThumb_video{{endif}}' data-imageId="{$image->id}">
{{if $image->small_file_name}} {{endif}}
{{if ( $image->directContainer()->allow_comments && $image->container()->allow_comments )}}
{{endif}}
{{endif}}
{{endforeach}}
{lang="num_images" pluralize="$album->count_imgs"}
{{if $album->use_comments}}
{lang="num_comments" pluralize="$album->comments"}
{{endif}}
{{if $album->allow_comments}}
{lang="gallery_image_comments_s" pluralize="$album->count_comments"}
{{endif}}
{{endforeach}}]]>
isAjax()}}
{{endif}}
{template="categoryRow" group="browse" params="NULL, NULL, \IPS\gallery\Category::roots()"}
]]>
children() : \IPS\gallery\Category::roots();}}
{{if count($categories)}}
{{if $currentCategory}}{lang="subcategories"}{{else}}{lang="categories"}{{endif}}
{{endif}}]]>
club()}}
{{if settings.clubs and settings.clubs_header == 'full'}}
{template="header" app="core" group="clubs" params="$club, $category"}
{{endif}}
{{endif}}
{{if $category->show_rules || $category->description}}
{{endif}}
{{if $category->can('add')}}
{{endif}}
{{if $category->children()}}
{template="categoryGrid" group="browse" app="gallery" params="$category->children()"}
{{endif}}
{{if $albums}}
{$albums|raw}
{{endif}}
{{if $table}}
{$table|raw}
{{endif}}
{template="follow" app="core" group="global" params="'gallery', 'category', $category->_id, $followerCount"}
{{if $category->club()}}
{{endif}}]]>
id}&album={$currentAlbum->id}&_new=1" seoTemplate="gallery_submit"}" {{elseif $currentCategory}} href="{url="app=gallery&module=gallery&controller=submit&category={$currentCategory->id}&_new=1" seoTemplate="gallery_submit"}" {{else}} href="{url="app=gallery&module=gallery&controller=submit&_new=1" seoTemplate="gallery_submit"}" {{endif}}>{lang="add_gallery_image"}
]]>
{{endif}}]]>
can('view')}}
{template="thumbImage" group="global" app="core" params="$category->coverPhoto( 'small' ), $category->_title, 'medium', '', 'view_this', $category->url(), 'gallery_Images'"}
{{if \IPS\gallery\Image::containerUnread( $category )}}
{{endif}}
{$category->_title}
{$category->description|raw}
{{if $category->hasChildren()}}
{{endif}}
{{$count = \IPS\gallery\Image::contentCount( $category );}}
{number="$count"}
{lang="images_no_number" pluralize="$count"}
{{if $lastPost = $category->lastImage()}}
{template="userPhoto" app="core" group="global" params="$lastPost->author(), 'tiny'"}
{$lastPost->caption}
{lang="byline_nodate" htmlsprintf="$lastPost->author()->link()"}
{datetime="$lastPost->date"}
{{endif}}
{{if $table AND $table->canModerate()}}
multimodActions( $category ) )"}" data-state=''>
{{endif}}
{{endif}}
{{endforeach}}]]>
baseUrl}' data-resort='{$table->resortKey}' data-controller='core.global.core.table{{if $table->canModerate()}},core.front.core.moderation{{endif}}'>
{{if \IPS\Request::i()->app == 'gallery'}}{lang="num_images" pluralize="$table->count"} {{endif}}
{{if $table->canModerate() OR ( $table->showAdvancedSearch AND ( (isset( $table->sortOptions ) and !empty( $table->sortOptions )) OR $table->advancedSearch ) ) OR !empty( $table->filters ) OR $table->pages > 1}}
{{endif}}
{{if $table->canModerate()}}
{{endif}}
{{if $table->pages > 1}}
{{endif}}
]]>
{lang="gallery_title"}
{{if \IPS\gallery\Category::canOnAny('add')}}
{{endif}}
{{$clubNodes = settings.club_nodes_in_apps ? \IPS\gallery\Category::clubNodes() : array();}}
{{if $rootCategories = \IPS\gallery\Category::roots()}}
{{if $clubNodes}}
{lang="community_image_categories"} {{endif}}
{template="categoryGrid" group="browse" app="gallery" params="$rootCategories"}
{{endif}}
{{if settings.club_nodes_in_apps and $clubNodes = \IPS\gallery\Category::clubNodes()}}
{{if $rootCategories}}
{lang="club_node_gallery"} {{endif}}
{template="categoryGrid" group="browse" app="gallery" params="$clubNodes"}
{{endif}}
{{if !empty( $featured )}}
{lang="featured_images"}
{{foreach $featured as $image}}
'featured' ) )|raw}'>
{{endforeach}}
{{endif}}
{{if !empty( $new )}}
{lang="new_images"}
{{foreach $new as $image}}
'new' ) )|raw}'>
{{endforeach}}
{{endif}}]]>
{{foreach $album->_latestImages as $image}}
{{if $image->small_file_name}}
small_file_name )->url"}" );' class='ipsGrid_span3 cGalleryTrimmedImage' data-grid-ratio='100' data-imageID='{$image->id}'>
{{else}}
{{endif}}
{{endforeach}}
{lang="view_entire_album" sprintf="$album->name"} ]]>
{{if $container instanceof \IPS\gallery\Album}}{lang="no_images_in_album"}{{else}}{lang="no_images_in_cat"}{{endif}}
{{if $container->can('add')}}
{lang="submit_first_image"}
{{endif}}
]]>
hidden()}}ipsModerated{{else}}ipsAreaBackground_reset{{endif}} ipsBox ipsPad ipsType_center cGalleryImageItem' data-imageId="{$image->id}">
{{if $image->media }}
masked_file_name }} poster="{file="$image->masked_file_name" extension="gallery_Images"}"{{endif}}>
original_file_name" extension="gallery_Images"}" type='{$image->file_type}' />
{{else}}
{{endif}}
{{if $image->unread()}} {{endif}}
{{if $image->prefix()}}
{template="prefix" group="global" app="core" params="$image->prefix( TRUE ), $image->prefix()"}
{{endif}}
{{if $image->unread()}}{$image->caption} {{else}}{$image->caption}{{endif}}
{{if $table->canModerate()}}
{{endif}}
{{if $image->directContainer()->allow_comments}}
{{endif}}
{$image->views}
{{if $image->mapped('pinned') || $image->mapped('featured') || $image->hidden() === -1 || $image->hidden() === 1}}
{{if $image->hidden() === -1}}
{{elseif $image->hidden() === 1}}
{{endif}}
{{if $image->mapped('pinned')}}
{{endif}}
{{if $image->mapped('featured')}}
{{endif}}
{{endif}}
{{endforeach}}
]]>
unread()}}ipsDataItem_unread{{endif}} {{if method_exists( $image, 'tableClass' ) && $image->tableClass()}}ipsDataItem_{$image->tableClass()}{{endif}} {{if $image->hidden()}}ipsModerated{{endif}}' data-imageId="{$image->id}">
{{if $image->unread()}}
{{endif}}
{{if $image->hidden() === -1}}
{{elseif $image->hidden() === 1}}
{{endif}}
{{if $image->mapped('pinned')}}
{{endif}}
{{if $image->mapped('featured')}}
{{endif}}
{{if $image->prefix()}}
{template="prefix" group="global" app="core" params="$image->prefix( TRUE ), $image->prefix()"}
{{endif}}
canEdit()}}data-role="editableTitle"{{endif}}>
{$image->caption}
{lang="byline_nodate" htmlsprintf="$image->author()->link()"}
{$image->truncated()|raw}
{{if count( $image->tags() )}}
{template="tags" group="global" app="core" params="$image->tags()"}
{{endif}}
{{if $table->canModerate()}}
multimodActions( $image ) )"}" data-state='{{if $image->unread() === -1 or $image->unread() === 1}}unread{{else}}read{{endif}} {{if $image->hidden() === -1}}hidden{{elseif $image->hidden === 1}}unapproved{{endif}} {{if $image->mapped('pinned')}}pinned{{endif}} {{if $image->mapped('featured')}}featured{{endif}} {{if $image->mapped('locked')}}locked{{endif}}'>
{{endif}}
{{endforeach}}
{{endif}}]]>
hidden()}}ipsModerated{{else}}ipsAreaBackground_light{{endif}} cGalleryImageItem' data-role='patchworkImage' data-json='{$image->json()|raw}' data-imageId="{$image->id}">
{{if $image->unread()}}
{{endif}}
{{if $image->mapped('pinned') || $image->mapped('featured') || $image->hidden() === -1 || $image->hidden() === 1}}
{{if $image->hidden() === -1}}
{{elseif $image->hidden() === 1}}
{{endif}}
{{if $image->mapped('pinned')}}
{{endif}}
{{if $image->mapped('featured')}}
{{endif}}
{{endif}}
{{if $image->directContainer()->allow_comments}}
{{endif}}
{{endforeach}}]]>
{{foreach $data as $k => $v}}
{lang="$k"}
{{if $k === 'total_disk_spaceg'}}
{filesize="$v"}
{{elseif $k === 'largest_image'}}
{$v->caption} ({filesize="$v->file_size"})
{{elseif $k === 'most_viewed_image'}}
{$v->caption} ({lang="num_views_with_number" pluralize="$v->views"})
{{else}}
{$v}
{{endif}}
{{endforeach}}
]]>
{{foreach $hiddenValues as $k => $v}}
{{endforeach}}
{{if $uploadField}}
{{endif}}
{{if !\IPS\Member::loggedIn()->member_id}}
{lang="commenting_as_guest"}
{{endif}}
{{foreach $elements as $collection}}
{{foreach $collection as $input}}
{{if $input->name == 'guest_name'}}
{{endif}}
{{endforeach}}
{{endforeach}}
{{foreach $elements as $collection}}
{{foreach $collection as $input}}
{{if $input instanceof \IPS\Helpers\Form\Editor}}
{{if $input->options['minimize'] !== NULL}}
{{$minimized = true;}}
{{endif}}
{$input->html( TRUE )|raw}
{{if $input->error}}
{lang="$input->error"}
{{endif}}
{{endif}}
{{endforeach}}
{{endforeach}}
]]>
{lang="$lang"} {{if $ends !== NULL AND $ends > 0}}{lang="restriction_ends" sprintf="\IPS\DateTime::ts( $ends )->relative()"}{{endif}}
{{if count( $warnings) }}
{{foreach $warnings as $idx => $warning}}
{{if $idx === 0}}
{lang="view_warning_details"}
{{endif}}
{{endforeach}}
{{endif}}
]]>
]]>
{lang="$lang"} {{if $ends !== NULL AND $ends > 0}}{lang="restriction_ends" sprintf="\IPS\DateTime::ts( $ends )->relative()"}{{endif}}
{{if count( $warnings) }}
{{foreach $warnings as $idx => $warning}}
{{if $idx === 0}}
{lang="view_warning_details"}
{{endif}}
{{endforeach}}
{{endif}}
]]>
{{if $item->masked_file_name}}
{{else}}
{{endif}}
]]>
$idField}_wrap' data-controller='core.front.core.comment' data-commentApp='{$app}' data-commentType='{$type}' data-commentID="{$comment->$idField}" data-quoteData='{expression="json_encode( array('userid' => $comment->author()->member_id, 'username' => $comment->author()->name, 'timestamp' => $comment->mapped('date'), 'contentapp' => $app, 'contenttype' => $type, 'contentclass' => $class, 'contentid' => $item->id, 'contentcommentid' => $comment->$idField) )"}' class='ipsComment_content ipsType_medium'>
{{if ( settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and settings.reputation_highlight and $comment->reactionCount() >= settings.reputation_highlight ) OR $comment->isFeatured()}}
{{if $comment->isFeatured()}}
{{else}}
{{endif}}
{{endif}}
{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
{lang="comment_awaiting_approval"}
{{endif}}
{$comment->content()|raw}
{{if $comment->editLine()}}
{$comment->editLine()|raw}
{{endif}}
]]>
isIgnored()}}
{{endif}}
author()->hasHighlightedReplies()}}data-memberGroup="{$comment->author()->member_group_id}" {{endif}} id='elComment_{$comment->$idField}' class='ipsComment {{if ( settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and settings.reputation_highlight and $comment->reactionCount() >= settings.reputation_highlight ) OR $comment->isFeatured()}}ipsComment_popular{{endif}} ipsComment_parent ipsClearfix ipsClear {{if $comment->isIgnored()}}ipsHide{{endif}} {{if $comment->author()->hasHighlightedReplies()}}ipsComment_highlighted{{endif}} {{if $comment->hidden() OR $item->hidden() == -2}}ipsModerated{{endif}}'>
{template="comment" group="global" app="gallery" params="$item, $comment, $item::$formLangPrefix . 'comment', $item::$application, $item::$module, $itemClassSafe"}
]]>
{template="thumbImage" group="global" app="core" params="$image->small_file_name, $image->caption, 'small', '', 'view_this', $image->url(), 'gallery_Images'"}
{lang="in"} {$image->container()->_title}
{{if $image->container()->allow_rating}}
{template="rating" group="global" location="front" app="core" params="'large', $image->rating"}
{{endif}}
{{if $image->container()->allow_comments}} {{if !$image->comments}}{{endif}} {$image->comments}{{endif}}{{if !$image->comments}} {{endif}}
]]>
{template="embedHeader" group="embed" app="core" params="$comment, \IPS\Member::loggedIn()->language()->addToStack( 'x_commented_album', FALSE, array( 'sprintf' => array( $comment->author()->name ) ) ), $comment->mapped('date'), $url"}
{{$images = \IPS\Gallery\Image::getItemsWithPermission( array( array( 'image_album_id=?', $item->asNode()->id ) ), ( $item->asNode()->sort_options == 'title' ) ? 'image_caption ASC' : \IPS\gallery\Image::$databasePrefix . \IPS\gallery\Image::$databaseColumnMap[ $item->asNode()->sort_options ] . ' DESC', 19 );}}
{{if count( $images )}}
{{endif}}
{template="embedOriginalItem" group="embed" app="core" params="$item"}
{$comment->truncated(TRUE)|raw}
{{if settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and count( $comment->reactions() )}}
{template="reactionOverview" app="core" group="global" params="$comment, TRUE, 'small'"}
{{endif}}
]]>
{template="embedHeader" group="embed" app="core" params="$comment, \IPS\Member::loggedIn()->language()->addToStack( 'x_reviewed_album', FALSE, array( 'sprintf' => array( $comment->author()->name ) ) ), $comment->mapped('date'), $url"}
{{$images = \IPS\Gallery\Image::getItemsWithPermission( array( array( 'image_album_id=?', $item->asNode()->id ) ), ( $item->asNode()->sort_options == 'title' ) ? 'image_caption ASC' : \IPS\gallery\Image::$databasePrefix . \IPS\gallery\Image::$databaseColumnMap[ $item->asNode()->sort_options ] . ' DESC', 19 );}}
{{if count( $images )}}
{{endif}}
{template="embedOriginalItem" group="embed" app="core" params="$item"}
{template="rating" app="core" params="'veryLarge', $comment->mapped('rating')" group="global"}
{{if $comment->mapped('votes_total')}}
{$comment->helpfulLine()|raw}
{{endif}}
{$comment->truncated(TRUE)|raw}
{{if settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and count( $comment->reactions() )}}
{template="reactionOverview" app="core" group="global" params="$comment, TRUE, 'small'"}
{{endif}}
]]>
{template="embedHeader" group="embed" app="core" params="$albumItem, \IPS\Member::loggedIn()->language()->addToStack( 'x_added_album_in', FALSE, array( 'sprintf' => array( $albumItem->author()->name, $albumNode->category()->_title ) ) ), $albumItem->mapped('date'), $url"}
{{if $albumNode->coverPhoto('small')}}
{{endif}}
{{$images = \IPS\Gallery\Image::getItemsWithPermission( array( array( 'image_album_id=?', $albumNode->id ) ), ( $albumNode->sort_options == 'title' ) ? 'image_caption ASC' : \IPS\gallery\Image::$databasePrefix . \IPS\gallery\Image::$databaseColumnMap[ $albumNode->sort_options ] . ' DESC', 9 );}}
{{if count( $images )}}
{{endif}}
{{if $desc = $albumItem->truncated(TRUE)}}
{$desc|raw}
{{endif}}
{template="embedItemStats" group="embed" app="core" params="$albumItem, $albumNode->use_comments"}
]]>
{template="embedHeader" group="embed" app="core" params="$item, \IPS\Member::loggedIn()->language()->addToStack( $item->media ? 'x_added_video_in' : 'x_added_image_in', FALSE, array( 'sprintf' => array( $item->author()->name, $item->directContainer()->_title ) ) ), $item->mapped('date'), $url"}
{{if $item->media }}
masked_file_name }} poster="{file="$item->masked_file_name" extension="gallery_Images"}"{{endif}}>
original_file_name" extension="gallery_Images"}" type='{$item->file_type}' />
{{else}}
small_file_name )->url"}" );'>
{{endif}}
{$item->caption}
{{if $desc = $item->truncated(TRUE)}}
{$desc|raw}
{{endif}}
{{if $item->copyright}}
© {$item->copyright}
{{endif}}
{template="embedItemStats" group="embed" app="core" params="$item"}
{{if $item->directContainer() instanceof \IPS\gallery\Album}}
{{$images = \IPS\Gallery\Image::getItemsWithPermission( array( array( 'image_album_id=?', $item->album_id ) ), ( $item->directContainer()->sort_options == 'title' ) ? 'image_caption ASC' : $item::$databasePrefix . $item::$databaseColumnMap[ $item->directContainer()->sort_options ] . ' DESC', 9 );}}
{{if count( $images )}}
{{endif}}
{{endif}}
]]>
{template="embedHeader" group="embed" app="core" params="$comment, \IPS\Member::loggedIn()->language()->addToStack( 'x_commented_photo', FALSE, array( 'sprintf' => array( $comment->author()->name ) ) ), $comment->mapped('date'), $url"}
{$comment->truncated(TRUE)|raw}
{{if settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and count( $comment->reactions() )}}
{template="reactionOverview" app="core" group="global" params="$comment, TRUE, 'small'"}
{{endif}}
]]>
{template="embedHeader" group="embed" app="core" params="$comment, \IPS\Member::loggedIn()->language()->addToStack( 'x_reviewed_photo', FALSE, array( 'sprintf' => array( $comment->author()->name ) ) ), $comment->mapped('date'), $url"}
{template="rating" app="core" params="'veryLarge', $comment->mapped('rating')" group="global"}
{{if $comment->mapped('votes_total')}}
{$comment->helpfulLine()|raw}
{{endif}}
{$comment->truncated(TRUE)|raw}
{{if settings.reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and count( $comment->reactions() )}}
{template="reactionOverview" app="core" group="global" params="$comment, TRUE, 'small'"}
{{endif}}
]]>
{{if \IPS\IPS::classUsesTrait( $comment['comment'], 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
{template="reactionOverview" group="global" app="core" params="$comment['comment']"}
{{endif}}
{$comment['comment']->truncated( TRUE )|raw}
{{if $comment['note']}}
{{elseif isset( $comment['featured_by'] )}}
{lang="recommended_by" htmlsprintf="$comment['featured_by']->link()"}
{{endif}}
{{endif}}]]>
{lang="$titleLang"}
{{if count( $comments )}}
{{foreach $comments AS $id => $comment}}
{template="featuredComment" group="global" app="gallery" params="$comment, $id, $commentLang"}
{{endforeach}}
{{endif}}
]]>
{$image->caption} ]]>
tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}}" data-controller='core.front.system.manageFollowed' data-followID='{$row->_followData['follow_area']}-{$row->_followData['follow_rel_id']}'>
{{if $coverImage = $row->coverPhoto('small') }}
{{else}}
{{endif}}
{{if $row->_locked}}
{{endif}}
{$row->_title}
{$row->_description}
{{if $row->_items}}
{lang="node_content_items" pluralize="$row->_items"}
{{endif}}
{{if $row->_commentsForDisplay}}
{lang="node_content_comments" pluralize="$row->_commentsForDisplay"}
{{endif}}
{{if $row->_reviews}}
{lang="node_content_reviews" pluralize="$row->_reviews"}
{{endif}}
{{if count( $row->_latestImages )}}
{{endif}}
{datetime="$row->_followData['follow_added']"}
{{if $row->_followData['follow_notify_freq'] == 'none'}}
{{else}}
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
{{if $table->canModerate()}}
multimodActions( $row ) )"}" data-state=''>
{{endif}}
{{endforeach}}]]>
unread()}}ipsDataItem_unread{{endif}} {{if method_exists( $row, 'tableClass' ) && $row->tableClass()}}ipsDataItem_{$row->tableClass()}{{endif}} {{if $row->hidden()}}ipsModerated{{endif}}" data-controller='core.front.system.manageFollowed' data-followID='{$row->_followData['follow_area']}-{$row->_followData['follow_rel_id']}'>
small_file_name )->url"} )'>
{{if $row->mapped('locked')}}
{{endif}}
{{if $row->mapped('pinned') || $row->mapped('featured') || $row->hidden() === -1 || $row->hidden() === 1}}
{{if $row->hidden() === -1}}
{{elseif $row->hidden() === 1}}
{{endif}}
{{if $row->mapped('pinned')}}
{{endif}}
{{if $row->mapped('featured')}}
{{endif}}
{{endif}}
{{if $row->prefix()}}
{template="prefix" group="global" app="core" params="$row->prefix( TRUE ), $row->prefix()"}
{{endif}}
{{if $row->mapped('title')}}{$row->mapped('title')}{{else}}{lang="content_deleted"} {{endif}}
{datetime="$row->_followData['follow_added']"}
{{if $row->_followData['follow_notify_freq'] == 'none'}}
{{else}}
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
{{if $table->canModerate()}}
multimodActions( $row ) )"}" data-state='{{if $row->tableStates()}}{$row->tableStates()}{{endif}}'>
{{endif}}
{{endforeach}}
{{endif}}
]]>
baseUrl}' data-resort='{$table->resortKey}' data-pageParam='albumPage' data-controller='core.global.core.table{{if $table->canModerate()}},core.front.core.moderation{{endif}}'>
{{if $table->pages > 1}}
{template="pagination" group="global" app="core" location="global" params="$table->baseUrl, $table->pages, $table->page, $table->limit, TRUE, 'albumPage'"}
{{endif}}
{template="$table->rowsTemplate[1]" params="$table, $headers, $rows" object="$table->rowsTemplate[0]"}
]]>
id}_wrap' data-controller='core.front.core.comment' data-commentApp='{$app}' data-commentType='{$type}-review' data-commentID="{$review->id}" data-quoteData='{expression="json_encode( array('userid' => $review->author()->member_id, 'username' => $review->author()->name, 'timestamp' => $review->mapped('date'), 'contentapp' => $app, 'contenttype' => $type, 'contentid' => $item->id, 'contentcommentid' => $review->id) )"}' class='ipsComment_content ipsType_medium'>
]]>
isIgnored()}}
{{else}}
{{endif}}]]>
small_file_name )->url"}")'>
{{else}}
{{endif}}
{{else}}
{{endif}}]]>
url()}'>
small_file_name )->url"}")'>
{{else}}
{{endif}}
{{else}}
{{if trim( $indexData['index_content'] ) !== ''}}
application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' )}}data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='3 lines' data-ipsTruncate-watch='false'{{else}}data-searchable data-findTerm{{endif}}>
{expression="\IPS\Content\Search\Result::preDisplay( $indexData['index_content'] )" raw="true"}
{{endif}}
{{if count($images)}}
{{foreach $images as $k => $image}}
small_file_name )->url"}" );' class='cGalleryTrimmedImage'>
{{endforeach}}
{{endif}}
{{endif}}]]>
url"}")'>
{{else}}
{{endif}}
{{else}}
{{endif}}]]>
url"}")'>
{{else}}
{{endif}}
{{else}}
{{if $albumData}}
{lang="from_the_album"} {$albumData['album_name']}
{{endif}}
{{if trim( $indexData['index_content'] ) !== ''}}
application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' )}}data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='3 lines' data-ipsTruncate-watch='false'{{else}}data-searchable data-findTerm{{endif}}>
{expression="\IPS\Content\Search\Result::preDisplay( $indexData['index_content'] )" raw="true"}
{{endif}}
{{if $itemData['image_copyright']}}
© {$itemData['image_copyright']}
{{endif}}
{{endif}}]]>
{$category->_title}
]]>
member_id}"}" data-ipsDialog data-ipsDialog-title="{lang="bandwidth_use_gallery"}">({lang="bandwidth_use_gallery"})]]>
{lang="gallery_graph_disclaimer"}
]]>
{lang="gallery_stats_disclaimer"}
]]>
{{endif}}
{{if count( $select )}}
{$pagination|raw}
{{else}}
{lang="no_results"}
{{endif}}]]>
isAjax()}}
{template="pageHeader" group="global" app="core" params="\IPS\Member::loggedIn()->language()->addToStack('choose_category')"}
{{else}}
{{endif}}
{$form|raw}
{{if \IPS\Request::i()->isAjax()}}
{{endif}}]]>
{{if $createAlbumForm}}
{$createAlbumForm|raw}
{{endif}}
{{if $existingAlbumForm}}
{$existingAlbumForm|raw}
{{endif}}
]]>
album"}" class='cGallerySubmit_chooseCategory'>
]]>
{{if $container['album']}}
{lang="gallery_submit_prefix_album" sprintf="$container['album']->_title"}
{{else}}
{lang="gallery_submit_prefix_cat" sprintf="$container['category']->_title"}
{{endif}}
]]>
$v}}{$k}="{$v}"{{endforeach}} data-ipsForm>
{{foreach $hiddenValues as $k => $v}}
{{if is_array($v)}}
{{foreach $v as $_k => $_v}}
{{endforeach}}
{{else}}
{{endif}}
{{endforeach}}
{{if $uploadField}}
{{endif}}
{lang="create_album"}
]]>
$v}}{$k}="{$v}"{{endforeach}} data-ipsForm data-ipsFormSubmit data-controller='gallery.front.submit.existingAlbums'>
{{foreach $hiddenValues as $k => $v}}
{{if is_array($v)}}
{{foreach $v as $_k => $_v}}
{{endforeach}}
{{else}}
{{endif}}
{{endforeach}}
{lang="choose_selected_album"}
]]>
{lang="saving_images_desc"}
{$redirector|raw}
]]>
action}" id='elGallerySubmit' enctype="multipart/form-data">
{{if $form->error}}
{$form->error}
{{endif}}
]]>
isAjax()}}
{template="header" group="clubs" app="core" params="$club, $container['category']"}
{{endif}}
{{if $moderated}}
{template="modQueueMessage" group="forms" app="core" params="\IPS\Member::loggedIn()->warnings( 5, NULL, 'mq' ), \IPS\Member::loggedIn()->mod_posts"}
{{endif}}
×
{lang="add_gallery_image"}
{{if is_array( $container )}}
{template="container" group="submit" app="gallery" params="$container"}
{{endif}}
{{if !is_array( $container )}}
{$container|raw}
{{endif}}
{{if is_array( $container )}}
{$images|raw}
{{endif}}
{lang="files_had_errors"}
{lang="submit_all_images"}
]]>
url()}' {{if $image->isLastPage()}}data-lastPage{{endif}} data-feedID='image-{$image->id}' id='comments'>
{{if $image->commentPageCount() > 1}}
{$image->commentPagination( array('tab') )|raw}
{{endif}}
{template="featuredComments" group="global" app="gallery" params="$image->featuredComments(), $image->url()->setQueryString('tab', 'comments')->setQueryString('recommended', 'comments')"}
{template="commentMultimodHeader" app="core" group="global" params="$image, '#comments'"}
{{if count( $image->comments( NULL, NULL, 'date', 'asc', NULL, NULL, NULL, NULL, FALSE, isset( \IPS\Request::i()->showDeleted ) ) )}}
{{else}}
{lang="no_comments"}
{{endif}}
{{if $image->commentPageCount() > 1}}
{$image->commentPagination( array('tab') )|raw}
{{endif}}
{{if $image->commentForm() || $image->locked() || \IPS\Member::loggedIn()->restrict_post || \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings'] || !\IPS\Member::loggedIn()->checkPostsPerDay()}}
{{endif}}
]]>
container()->club()}}
{{if settings.clubs and settings.clubs_header == 'full'}}
{template="header" app="core" group="clubs" params="$club, $image->container()"}
{{endif}}
{{endif}}
{template="imageInfo" group="view" params="$image"}
{{if $commentsAndReviews}}
{{if ( $image->directContainer()->allow_reviews && $image->container()->allow_reviews ) && ( $image->directContainer()->allow_comments && $image->container()->allow_comments ) }}
{lang="user_feedback"}
{{endif}}
{$commentsAndReviews|raw}
{{endif}}
{{if $image->container()->club()}}
{{endif}}]]>
data}}data-imageSizes='{$image->data}'{{endif}}>
{{if $image->media }}
masked_file_name }} poster="{file="$image->masked_file_name" extension="gallery_Images"}"{{endif}}>
original_file_name" extension="gallery_Images"}" type='{$image->file_type}' />
original_file_name" extension="gallery_Images"}" width="480" height="360" type='{$image->file_type}' />
{{else}}
canEdit()}}data-editable{{endif}} data-notesData='{$image->_notes_json}'>
{{if count( $image->_notes )}}
{{foreach $image->_notes as $note}}
{{endforeach}}
{{endif}}
{{if !$image->media }}
{{endif}}
{{if $image->copyright}}
© {$image->copyright}
{{endif}}
{{if $image->credit_info}}
{lang="image_credit_info"} {$image->credit_info}
{{endif}}
{lang="image_tools"}
{{endif}}
{{if $prev = $image->prevItem()}}
{{endif}}
{{if $next = $image->nextItem()}}
{{endif}}
]]>
getMessages(), $image"}
{{if $image->hidden() === 1 and $image->canUnhide()}}
{lang="image_pending_approval"}
{{endif}}
{{if $image->prefix() OR ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) AND $image::canPrefix( NULL, $image->container() ) )}}
prefix()}}class='ipsHide'{{endif}} {{if ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) AND $image::canPrefix( NULL, $image->container() ) )}}data-editablePrefix{{endif}}>
{template="prefix" group="global" app="core" params="$image->prefix( TRUE ), $image->prefix()"}
{{endif}}
{{if $image->hidden() === 1}}
{{elseif $image->hidden() === -1}}
{{elseif $image->hidden() === -2}}
{{endif}}
{{if $image->mapped('pinned')}}
{{endif}}
{{if $image->mapped('featured')}}
{{endif}}
{{if $image->canEdit()}}
{{if $image->locked()}} {{endif}}
{$image->caption}
{{else}}
{{if $image->locked()}} {{endif}}{$image->caption}
{{endif}}
{template="userPhoto" app="core" group="global" params="$image->author(), 'mini', $image->warningRef()"}
{template="follow" app="core" group="global" params="'gallery', 'image', $image->id, $image->followers()->count( TRUE )"}
{lang="byline_nodate_itemprop" htmlsprintf="$image->author()->link( $image->warningRef() )"}
{{if $image->description}}
{$image->content()|raw}
{{endif}}
{{if count( $image->tags() ) OR ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) )}}
{template="tags" group="global" app="core" params="$image->tags(), FALSE, FALSE, ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) ) ? $image->url() : NULL"}
{{endif}}
{{if $image->credit_info && $image->copyright}}
{{endif}}
{{if $image->credit_info}}
{lang="image_credit_info"}
{$image->credit_info}
{{endif}}
{{if $image->credit_info && $image->copyright}}
{{endif}}
{{if $image->copyright}}
{lang="image_copyright"}
© {$image->copyright}
{{endif}}
{{if $image->credit_info && $image->copyright}}
{{endif}}
{{if \IPS\IPS::classUsesTrait( $image, 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
{template="reputation" app="core" group="global" params="$image"}
{{endif}}
{template="follow" app="core" group="global" params="'gallery', 'image', $image->id, $image->followers()->count( TRUE )"}
{{if count( $image->shareLinks() )}}
{template="sharelinks" app="core" group="global" params="$image"}
{{endif}}
{{if $image->directContainer()->allow_rating}}
{$image->rating()|raw}
{{endif}}
{{if \IPS\GeoLocation::enabled() AND $image->gps_show}}
{$image->map( 240, 100 )|raw}
{{elseif \IPS\GeoLocation::enabled() AND $image->canEdit() AND $image->gps_raw}}
{$image->map( 240, 100 )|raw}
{$image->loc_short}
{{endif}}
{{if $image->directContainer() instanceof \IPS\gallery\Album}}
{lang="from_the_album"}
{lang="num_images" pluralize="$image->directContainer()->count_imgs"}
{{if $image->container()->allow_comments and $image->directContainer()->use_comments}}
{lang="num_comments" pluralize="$image->directContainer()->comments"}
{{endif}}
{{if $image->container()->allow_comments and $image->directContainer()->allow_comments}}
{lang="gallery_image_comments_s" pluralize="$image->directContainer()->count_comments"}
{{endif}}
{{endif}}
{{if count($image->metadata)}}
{lang="gallery_metadata" sprintf="$image->caption"}
{{if isset( $image->metadata['EXIF.FocalLength'] ) || ( isset( $image->metadata['IFD0.Make'] ) AND isset( $image->metadata['IFD0.Model'] ) ) || isset( $image->metadata['EXIF.ShutterSpeedValue'] ) || isset( $image->metadata['COMPUTED.ApertureFNumber'] ) || isset( $image->metadata['Exif.Photo.ISOSpeed'] )}}
{{if isset( $image->metadata['IFD0.Make'] ) AND isset( $image->metadata['IFD0.Model'] )}}
{lang="gallery_exif_camera"} {$image->metadata['IFD0.Make']} {$image->metadata['IFD0.Model']}
{{else}}
{lang="camera_information"}
{{endif}}
{{if isset( $image->metadata['EXIF.FocalLength'] )}}
{$image->focallength}
{{endif}}
{{if isset( $image->metadata['EXIF.ExposureTime'] )}}
{$image->metadata['EXIF.ExposureTime']}
{{endif}}
{{if isset( $image->metadata['COMPUTED.ApertureFNumber'] )}}
f
{$image->metadata['COMPUTED.ApertureFNumber']}
{{endif}}
{{if isset( $image->metadata['Exif.Photo.ISOSpeed'] ) || isset( $image->metadata['EXIF.ISOSpeedRatings'] )}}
{lang="gallery_exif_iso"}
{{if isset( $image->metadata['Exit.Photo.ISOSpeed'] )}}
{$image->metadata['Exif.Photo.ISOSpeed']}
{{else}}
{{if is_array( $image->metadata['EXIF.ISOSpeedRatings'] )}}
{expression="implode( '/', $image->metadata['EXIF.ISOSpeedRatings'] )"}
{{else}}
{$image->metadata['EXIF.ISOSpeedRatings']}
{{endif}}
{{endif}}
{{endif}}
{lang="view_all_photo_info"}
{{else}}
{lang="view_photo_info"}
{{endif}}
{{endif}}
]]>
{template="imageLightboxInfo" group="view" params="$image, $commentsAndReviews"}
]]>
data}}data-imageSizes='{$image->data}'{{endif}}>
{{if $image->media }}
canEdit()}}data-editable{{endif}} class="ipsPos_center" controls preload="auto" width="100%" height="100%"{{if $image->masked_file_name }} poster="{file="$image->masked_file_name" extension="gallery_Images"}"{{endif}}>
original_file_name" extension="gallery_Images"}" type='{$image->file_type}' />
original_file_name" extension="gallery_Images"}" width="480" height="360" type='{$image->file_type}' />
{{else}}
canEdit()}}data-editable{{endif}} data-notesData='{$image->_notes_json}'>
{{if count( $image->_notes )}}
{{foreach $image->_notes as $note}}
{{endforeach}}
{{endif}}
{{endif}}
{{if $image->prefix() OR ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) AND $image::canPrefix( NULL, $image->container() ) )}}
prefix()}}class='ipsHide'{{endif}} {{if ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) AND $image::canPrefix( NULL, $image->container() ) )}}data-editablePrefix{{endif}}>
{template="prefix" group="global" app="core" params="$image->prefix( TRUE ), $image->prefix()"}
{{endif}}
{{if $image->hidden() === 1}}
{{elseif $image->hidden() === -1}}
{{elseif $image->hidden() === -2}}
{{endif}}
{{if $image->mapped('pinned')}}
{{endif}}
{{if $image->mapped('featured')}}
{{endif}}
{{if $image->canEdit()}}
{{if $image->locked()}} {{endif}}
{$image->caption}
{{else}}
{{if $image->locked()}} {{endif}}{$image->caption}
{{endif}}
{{if $image->album_id}}
{{endif}}
{template="promote" app="core" group="global" params="$image"}
{template="follow" app="core" group="global" params="'gallery', 'image', $image->id, $image->followers()->count( TRUE )"}
{{if !$image->media }}
{{endif}}
{{if $image->copyright}}
© {$image->copyright}
{{endif}}
{{if $image->credit_info}}
{lang="image_credit_info"} {$image->credit_info}
{{endif}}
{{if $prev = $image->prevItem( \IPS\Request::i()->context )}}
1, 'lightbox' => 1, 'context' => \IPS\Request::i()->context ) )}' class='elGalleryImageNav_prev' data-action='prevImage' data-imageID='{$prev->id}' title='{$prev->caption}'>
{{endif}}
{{if $next = $image->nextItem( \IPS\Request::i()->context )}}
1, 'lightbox' => 1, 'context' => \IPS\Request::i()->context ) )}' class='elGalleryImageNav_next' data-action='nextImage' data-imageID='{$next->id}' title='{$next->caption}'>
{{endif}}
]]>
hidden() === -1}}class='ipsModerated'{{endif}}>
{template="contentItemMessages" group="global" app="core" params="$image->getMessages(), $image"}
{{if $image->hidden() === 1 and $image->canUnhide()}}
{lang="image_pending_approval"}
{{endif}}
{template="userPhoto" app="core" group="global" params="$image->author(), 'mini', $image->warningRef()"}
{{if ( $image->canEdit() or $image->canFeature() or $image->canPin() or $image->canUnfeature() or $image->canHide() or $image->canUnhide() or $image->canMove() or $image->canLock() or $image->canUnlock() or $image->canDelete() or $image->canChangeAuthor() ) or ( $image->hidden() == -2 AND \IPS\Member::loggedIn()->modPermission('can_manage_deleted_content') )}}
{{endif}}
{$image->author()->link( $image->warningRef() )|raw}
{datetime="$image->date"}
{lang="num_views_with_number" pluralize="$image->views"}
{{if $image->canReportOrRevoke() === TRUE}}
{lang="report_image"}
{{endif}}
{{if $image->directContainer()->allow_rating}}
{$image->rating('small')|raw}
{{endif}}
{{if count( $image->tags() ) OR ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) )}}
{template="tags" group="global" app="core" params="$image->tags(), FALSE, FALSE, ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) ) ? $image->url() : NULL"}
{{endif}}
{{if $image->description}}
{$image->content()|raw}
{{endif}}
{{if \IPS\IPS::classUsesTrait( $image, 'IPS\Content\Reactable' ) and settings.reputation_enabled}}
{template="reputation" app="core" group="global" params="$image"}
{{endif}}
{advertisement="ad_image_lightbox"}
{{if count($image->metadata)}}
{{if isset( $image->metadata['EXIF.FocalLength'] ) || ( isset( $image->metadata['IFD0.Make'] ) AND isset( $image->metadata['IFD0.Model'] ) ) || isset( $image->metadata['EXIF.ShutterSpeedValue'] ) || isset( $image->metadata['COMPUTED.ApertureFNumber'] ) || isset( $image->metadata['Exif.Photo.ISOSpeed'] )}}
{{if isset( $image->metadata['IFD0.Make'] ) AND isset( $image->metadata['IFD0.Model'] )}}
{lang="gallery_exif_camera"} {{if mb_strpos( $image->metadata['IFD0.Model'], $image->metadata['IFD0.Make'] ) !== 0}}{$image->metadata['IFD0.Make']}{{endif}} {$image->metadata['IFD0.Model']}
{{else}}
{lang="camera_information"}
{{endif}}
{{if isset( $image->metadata['EXIF.FocalLength'] )}}
{$image->focallength}
{{endif}}
{{if isset( $image->metadata['EXIF.ExposureTime'] )}}
{$image->metadata['EXIF.ExposureTime']}
{{endif}}
{{if isset( $image->metadata['COMPUTED.ApertureFNumber'] )}}
f
{$image->metadata['COMPUTED.ApertureFNumber']}
{{endif}}
{{if isset( $image->metadata['Exif.Photo.ISOSpeed'] ) || isset( $image->metadata['EXIF.ISOSpeedRatings'] )}}
{lang="gallery_exif_iso"}
{{if isset( $image->metadata['Exit.Photo.ISOSpeed'] )}}
{$image->metadata['Exif.Photo.ISOSpeed']}
{{else}}
{{if is_array( $image->metadata['EXIF.ISOSpeedRatings'] )}}
{expression="implode( '/', $image->metadata['EXIF.ISOSpeedRatings'] )"}
{{else}}
{$image->metadata['EXIF.ISOSpeedRatings']}
{{endif}}
{{endif}}
{{endif}}
{lang="view_all_photo_info"}
{{else}}
{lang="view_photo_info"}
{{endif}}
{{endif}}
{{if \IPS\GeoLocation::enabled() AND $image->gps_show}}
{$image->map( 400, 100 )|raw}
{{elseif $image->canEdit() AND \IPS\GeoLocation::enabled() AND $image->gps_raw}}
{$image->map( 400, 100 )|raw}
{$image->loc_short}
{{endif}}
{{if $commentsAndReviews}}
{{if ( $image->directContainer()->allow_reviews && $image->container()->allow_reviews ) && ( $image->directContainer()->allow_comments && $image->container()->allow_comments ) }}
{lang="user_feedback"}
{{endif}}
{$commentsAndReviews|raw}
{{endif}}
]]>
isAjax()" group="global" app="core" params="\IPS\Member::loggedIn()->language()->addToStack('gallery_metadata', FALSE, array( 'sprintf' => array( $image->caption ) ) )"}
{{if count( $image->metadata )}}
{{foreach $image->metadata as $key => $value}}
{{if !is_array( $value ) AND ( $image->gps_show OR mb_strpos( $key, 'GPS.' ) === FALSE ) AND mb_strpos( $key, 'UndefinedTag' ) === FALSE AND ( !\IPS\Member::loggedIn()->language()->checkKeyExists( $key ) OR ( \IPS\Member::loggedIn()->language()->checkKeyExists( $key ) AND \IPS\Member::loggedIn()->language()->get( $key ) ) )}}
{lang="$key"}
{{if \IPS\Member::loggedIn()->language()->checkKeyExists( $key . '_map_' . $value )}}{lang="{$key}_map_{$value}"}{{else}}{$value}{{endif}}
{{endif}}
{{endforeach}}
{{else}}
{lang="gallery_no_metadata"}
{{endif}}
]]>
url()}' {{if $image->isLastPage('reviews')}}data-lastPage{{endif}} data-feedID='image-{$image->id}-reviews' id='reviews'>
{{if count( $image->reviews( NULL, NULL, NULL, 'desc', NULL, NULL, NULL, NULL, isset( \IPS\Request::i()->showDeleted ) ) )}}
{{if !$image->hasReviewed()}} {{endif}}
{template="commentMultimodHeader" app="core" group="global" params="$image, '#reviews', 'review'"}
{{if $image->reviewPageCount() > 1}}
{$image->reviewPagination( array( 'tab', 'sort' ) )|raw}
{{endif}}
{{if $image->reviewPageCount() > 1}}
{$image->reviewPagination( array( 'tab', 'sort' ) )|raw}
{{endif}}
{{elseif !$image->canReview()}}
{lang="no_reviews"}
{{endif}}
{{if $image->reviewForm()}}
{{if $image->locked()}}
{lang="item_locked_can_review"}
{{endif}}
{$image->reviewForm()|raw}
{{else}}
{{if $image->hasReviewed()}}
{{elseif $image->locked()}}
{template="commentUnavailable" group="forms" location="front" app="gallery" params="'item_locked_cannot_review'"}
{{elseif \IPS\Member::loggedin()->restrict_post}}
{{if \IPS\Member::loggedIn()->restrict_post == -1}}
{template="reviewUnavailable" group="forms" location="front" app="gallery" params="'restricted_cannot_comment'"}
{{else}}
{template="reviewUnavailable" group="forms" location="front" app="gallery" params="'restricted_cannot_comment', \IPS\Member::loggedIn()->warnings(5,NULL,'rpa'), \IPS\Member::loggedIn()->restrict_post"}
{{endif}}
{{elseif \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings']}}
{template="reviewUnavailable" group="forms" location="front" app="gallery" params="'unacknowledged_warning_cannot_post', \IPS\Member::loggedIn()->warnings( 1, FALSE )"}
{{endif}}
{{endif}}
]]>
description|raw}
]]>
{$title}
{{if $orientation == 'horizontal'}}