auto_polling_enabled ): $return .= <<isLastPage() ): $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "gallery" )->featuredComments( $image->featuredComments(), $image->url()->setQueryString('tab', 'comments')->setQueryString('recommended', 'comments') ); $return .= <<commentPageCount() > 1 ): $return .= <<
{$image->commentPagination( array('tab') )}
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->commentMultimodHeader( $image, '#comments' ); $return .= <<
IPSCONTENT; endif; $return .= <<
IPSCONTENT; if ( \count( $image->comments( NULL, NULL, 'date', 'asc', NULL, NULL, NULL, NULL, FALSE, isset( \IPS\Widget\Request::i()->showDeleted ) ) ) ): $return .= <<timeLastRead(); $lined = FALSE; $return .= <<comments( NULL, NULL, 'date', 'asc', NULL, NULL, NULL, NULL, FALSE, isset( \IPS\Widget\Request::i()->showDeleted ) ) as $comment ): $return .= <<getTimestamp() < $comment->mapped('date') ): $return .= << IPSCONTENT; endif; $return .= <<html()} IPSCONTENT; endforeach; $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'no_comments', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= <<getTemplate( "global", "core" )->commentMultimod( $image ); $return .= << IPSCONTENT; if ( $image->commentPageCount() > 1 ): $return .= <<
{$image->commentPagination( array('tab') )}
IPSCONTENT; endif; $return .= <<commentForm() || $image->locked() || \IPS\Member::loggedIn()->restrict_post || \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings'] || !\IPS\Member::loggedIn()->checkPostsPerDay() ): $return .= << IPSCONTENT; if ( $image->commentForm() ): $return .= <<locked() ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'image_locked_can_comment', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= <<commentForm()} IPSCONTENT; else: $return .= <<locked() ): $return .= <<getTemplate( "forms", "gallery", 'front' )->commentUnavailable( 'image_locked_cannot_comment' ); $return .= <<restrict_post ): $return .= <<getTemplate( "forms", "gallery", 'front' )->commentUnavailable( 'restricted_cannot_comment', \IPS\Member::loggedIn()->warnings(5,NULL,'rpa'), \IPS\Member::loggedIn()->restrict_post ); $return .= <<members_bitoptions['unacknowledged_warnings'] ): $return .= <<getTemplate( "forms", "gallery", 'front' )->commentUnavailable( 'unacknowledged_warning_cannot_post', \IPS\Member::loggedIn()->warnings( 1, FALSE ) ); $return .= <<checkPostsPerDay() ): $return .= <<getTemplate( "forms", "gallery", 'front' )->commentUnavailable( 'member_exceeded_posts_per_day' ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; return $return; } function image( $image, $commentsAndReviews=FALSE ) { $return = ''; $return .= <<container()->club() ): $return .= <<clubs and \IPS\Settings::i()->clubs_header == 'full' ): $return .= <<getTemplate( "clubs", "core" )->header( $club, $image->container() ); $return .= << IPSCONTENT; endif; $return .= <<
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "view", "gallery" )->imageFrame( $image ); $return .= << IPSCONTENT; if ( $image->hasPreviousOrNext() ): $return .= <<fetchNextOrPreviousImages( 9, 'ASC' ), 0, 4 ) ); $return .= <<fetchNextOrPreviousImages( 9, 'DESC' ); $return .= <<
IPSCONTENT; if ( $image->container()->club() ): $return .= << IPSCONTENT; endif; $return .= <<data ): $return .= << IPSCONTENT; if ( $image->media ): $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageFrame", "videoContainer:inside-start", [ $image ] ); $return .= <<masked_file_name ): $return .= <<masked_file_name )->url; $return .= << original_file_name )->url; $return .= << original_file_name )->url; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageFrame", "videoContainer:inside-end", [ $image ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageFrame", "videoContainer:after", [ $image ] ); $return .= <<canEdit() ): $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageFrame", "imageContainer:inside-start", [ $image ] ); $return .= <<masked_file_name )->url; $return .= << IPSCONTENT; $imageWidth=isset( $image->_dimensions['small'][0] ) ? $image->_dimensions['small'][0] : 0; $return .= <<_dimensions['small'][1] ) ? $image->_dimensions['small'][1] : 0; $return .= <<masked_file_name )->url; $return .= << IPSCONTENT; if ( \is_countable( $image->_notes ) AND \count( $image->_notes ) ): $return .= << IPSCONTENT; foreach ( $image->_notes as $note ): $return .= <<
IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $note['NOTE'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<
IPSCONTENT; endforeach; $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageFrame", "imageContainer:after", [ $image ] ); $return .= <<getTemplate( "global", "gallery", 'front' )->nsfwOverlay( $image ); $return .= << IPSCONTENT; if ( $image->canEdit() OR $image->canDownloadOriginal() OR \IPS\Member::loggedIn()->member_id ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'image_tools', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<
IPSCONTENT; return $return; } function imageInfo( $image ) { $return = ''; $return .= <<getTemplate( "global", "core" )->contentItemMessages( $image->getMessages(), $image ); $return .= << IPSCONTENT; endif; $return .= <<
IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "header:before", [ $image ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "header:inside-start", [ $image ] ); $return .= <<

IPSCONTENT; if ( $image->canEdit() ): $return .= << IPSCONTENT; if ( $image->locked() ): $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $image->caption, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; else: $return .= << IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $image->caption, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "badges:before", [ $image ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "badges:inside-start", [ $image ] ); $return .= <<badges() as $badge ): $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "badges:after", [ $image ] ); $return .= << IPSCONTENT; if ( $image->directContainer()->allow_rating ): $return .= <<{$image->rating()}

IPSCONTENT; endif; $return .= <<tags() ) OR ( $image->canEdit() AND $image::canTag( NULL, $image->container() ) ) ): $return .= <<getTemplate( "global", "core" )->tagsWithPrefix( $image->tags(), $image->prefix(), FALSE, FALSE, ( $image->canEdit() AND ( \count( $image->tags() ) OR $image::canTag( NULL, $image->container() ) ) ) ? $image->url() : NULL ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "header:after", [ $image ] ); $return .= << IPSCONTENT; if ( \count( $image->shareLinks() ) ): $return .= <<getTemplate( "sharelinks", "core" )->shareButton( $image ); $return .= <<getTemplate( "global", "core" )->follow( 'gallery', 'image', $image->id, $image->followersCount() ); $return .= <<
IPSCONTENT; endif; $return .= <<credit_info OR $image->copyright ): $return .= << IPSCONTENT; if ( $image->credit_info ): $return .= <<

IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'image_credit_info', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<
IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $image->credit_info, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<
IPSCONTENT; endif; $return .= <<copyright ): $return .= <<

IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'image_copyright', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<
© IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $image->copyright, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<
IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "gallery/front/view/imageInfo", "info:after", [ $image ] ); $return .= <<