IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->thumbImage( $file->primary_screenshot, $file->name, 'small', '', 'view_this', $file->url( 'getPrefComment' ) ); $return .= <<
IPSCONTENT; return $return; } function embedFile( $item, $url, $image=NULL ) { $return = ''; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedHeader( $item, $item->mapped('title'), $item->mapped('date'), $url ); $return .= <<primary_screenshot_thumb ): $return .= << 
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $item->mapped('title'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
IPSCONTENT; endif; $return .= << IPSCONTENT; if ( \IPS\Application::appIsEnabled( 'nexus' ) and \IPS\Settings::i()->idm_nexus_on ): $return .= <<
  • IPSCONTENT; if ( $item->isPaid() ): $return .= <<price()} IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( 'file_free', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; if ( $renewalTerm = $item->renewalTerm() ): $return .= << IPSCONTENT; $sprintf = array($renewalTerm); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'file_renewal_term_val', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= <<container()->version_numbers OR ($item->isPaid() and \in_array( 'purchases', explode( ',', \IPS\Settings::i()->idm_nexus_display ) )) OR (!$item->isPaid() or \in_array( 'downloads', explode( ',', \IPS\Settings::i()->idm_nexus_display ) )) ): $return .= << IPSCONTENT; if ( $item->container()->version_numbers ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'version', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<version, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; endif; $return .= <<isPaid() and \in_array( 'purchases', explode( ',', \IPS\Settings::i()->idm_nexus_display ) ) ): $return .= <<purchaseCount() ): $return .= << IPSCONTENT; $pluralize = array( $item->purchaseCount() ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'x_purchases', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) ); $return .= << IPSCONTENT; endif; $return .= <<isPaid() or \in_array( 'downloads', explode( ',', \IPS\Settings::i()->idm_nexus_display ) ) ): $return .= <<downloads ): $return .= << IPSCONTENT; $pluralize = array( $item->downloads ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'num_downloads', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= <<member_id ): $return .= << IPSCONTENT; if ( $item->canBuy() AND $item->isPurchasable() ): $return .= <<canDownload() ): $return .= <<csrf(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<url('download'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<requiresDownloadConfirmation() ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'download_now', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; else: $return .= <<csrf(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<   IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'buy_now', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<price() ): $return .= << IPSCONTENT; endif; $return .= <<isPaid() AND !$item->isPurchasable( FALSE ) ): $return .= <<language()->addToStack( htmlspecialchars( 'purchasing_disabled', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<canDownload() or !$item->downloadTeaser() ): $return .= <<csrf(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<url('download'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<requiresDownloadConfirmation() ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'download_now', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; else: $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'download_teaser', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= << {$item->truncated(TRUE)} IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedItemStats( $item, $item->container()->bitoptions['comments'] ); $return .= << IPSCONTENT; return $return; } function embedFileComment( $comment, $item, $url ) { $return = ''; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedHeader( $comment, $item->mapped('title'), $comment->mapped('date'), $url ); $return .= <<
    IPSCONTENT; if ( $item->primary_screenshot_thumb ): $return .= << 
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $item->mapped('title'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedOriginalItem( $item, FALSE, \IPS\Theme::i()->getTemplate( 'global', 'downloads' )->embedFileItemSnippet( $item ) ); $return .= <<
    {$comment->truncated(TRUE)}
    IPSCONTENT; if ( \IPS\Settings::i()->reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and \count( $comment->reactions() ) ): $return .= <<
  • IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->reactionOverview( $comment, TRUE, 'small' ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; return $return; } function embedFileItemSnippet( $item ) { $return = ''; $return .= << IPSCONTENT; if ( \IPS\Application::appIsEnabled( 'nexus' ) and \IPS\Settings::i()->idm_nexus_on ): $return .= << IPSCONTENT; if ( $item->isPaid() ): $return .= <<price()} IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( 'file_free', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; if ( $renewalTerm = $item->renewalTerm() ): $return .= << IPSCONTENT; $sprintf = array($renewalTerm); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'file_renewal_term_val', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'sprintf' => $sprintf ) ); $return .= << IPSCONTENT; endif; $return .= <<isPaid() and \in_array( 'purchases', explode( ',', \IPS\Settings::i()->idm_nexus_display ) ) ): $return .= <<purchaseCount() ): $return .= << IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $item->purchaseCount(), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; endif; $return .= <<isPaid() or \in_array( 'downloads', explode( ',', \IPS\Settings::i()->idm_nexus_display ) ) ): $return .= <<downloads ): $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->formatNumber( $item->downloads ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; return $return; } function embedFileReview( $comment, $item, $url ) { $return = ''; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedHeader( $comment, $item->mapped('title'), $comment->mapped('date'), $url ); $return .= <<
    IPSCONTENT; if ( $item->primary_screenshot_thumb ): $return .= << 
IPSCONTENT;
$return .= \IPS\Theme\Template::htmlspecialchars( $item->mapped('title'), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE );
$return .= <<<IPSCONTENT
IPSCONTENT; else: $return .= <<
    IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "embed", "core" )->embedOriginalItem( $item, FALSE, \IPS\Theme::i()->getTemplate( 'global', 'downloads' )->embedFileItemSnippet( $item ) ); $return .= <<
    IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->rating( 'veryLarge', $comment->mapped('rating') ); $return .= <<mapped('votes_total') ): $return .= <<{$comment->helpfulLine()}

    IPSCONTENT; endif; $return .= <<
    {$comment->truncated(TRUE)}
    IPSCONTENT; if ( \IPS\Settings::i()->reputation_enabled and \IPS\IPS::classUsesTrait( $comment, 'IPS\Content\Reactable' ) and \count( $comment->reactions() ) ): $return .= <<
  • IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->reactionOverview( $comment, TRUE, 'small' ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; return $return; } function manageFollowRow( $table, $headers, $rows, $includeFirstCommentInCommentCount=TRUE ) { $return = ''; $return .= <<_followData['follow_rel_id'], ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<unread() ): $return .= <<
    IPSCONTENT; if ( $row->_primary_screenshot ): $return .= <<primary_screenshot->url ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= << IPSCONTENT; else: $return .= << IPSCONTENT; endif; $return .= <<
    IPSCONTENT; endif; $return .= <<
    • IPSCONTENT; $val = ( $row->_followData['follow_added'] instanceof \IPS\DateTime ) ? $row->_followData['follow_added'] : \IPS\DateTime::ts( $row->_followData['follow_added'] );$return .= $val->html(); $return .= <<
    • IPSCONTENT; if ( $row->_followData['follow_notify_freq'] == 'none' ): $return .= << IPSCONTENT; else: $return .= << IPSCONTENT; endif; $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= <<
    IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "system", "core" )->manageFollow( $row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id'] ); $return .= <<
    IPSCONTENT; if ( $table->canModerate() ): $return .= <<
    IPSCONTENT; endif; $return .= << IPSCONTENT; endforeach; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'front' )->thumbImage( $screenshot, $indexData['index_title'], 'fluid', '', 'view_this', $url, 'downloads_Screenshots', '', true ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; if ( $reviewRating !== NULL ): $return .= <<getTemplate( "global", "core" )->rating( 'medium', $reviewRating, \IPS\Settings::i()->reviews_rating_out_of ); $return .= << IPSCONTENT; if ( trim( $indexData['index_content'] ) !== '' ): $return .= <<application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' ) ): $return .= << IPSCONTENT; $return .= \IPS\Content\Search\Result::preDisplay( $indexData['index_content'] ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'front' )->thumbImage( $screenshot, $indexData['index_title'], 'fluid', '', 'view_this', $url, 'downloads_Screenshots', '', true ); $return .= << IPSCONTENT; endif; $return .= <<
      IPSCONTENT; if ( !$price or \in_array( 'downloads', explode( ',', \IPS\Settings::i()->idm_nexus_display ) ) ): $return .= << IPSCONTENT; $pluralize = array( $itemData['file_downloads'] ); $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'num_downloads', ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'pluralize' => $pluralize ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'version', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; if ( trim( $indexData['index_content'] ) !== '' ): $return .= <<application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' ) ): $return .= << IPSCONTENT; $return .= \IPS\Content\Search\Result::preDisplay( $indexData['index_content'] ); $return .= << IPSCONTENT; endif; $return .= <<idm_nexus_on ): $return .= << IPSCONTENT; if ( $price ): $return .= <<language()->addToStack( htmlspecialchars( 'file_free', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; endif; $return .= <<