Version 4.1.2
This commit is contained in:
1 parent
3ba79295ee
commit
28bd025b35
1131 files changed
+63658
-20579
No files matched your search
@@ -70,7 +70,7 @@
|
||||
</div>
|
||||
{template="categoryMenu" group="browse" params="$category->children()"}
|
||||
|
||||
{{if \IPS\downloads\Category::canOnAny('add')}}
|
||||
{{if \IPS\downloads\Category::canOnAny('add') AND ( !$category OR $category->can('add') ) }}
|
||||
<ul class="ipsToolList ipsToolList_horizontal ipsResponsive_hidePhone ipsClearfix ipsSpacer_both">
|
||||
{template="categoryButtons" group="browse" params="\IPS\downloads\Category::canOnAny('add'), $category"}
|
||||
</ul>
|
||||
@@ -80,7 +80,7 @@
|
||||
{$table|raw}
|
||||
</div>
|
||||
|
||||
{{if \IPS\downloads\Category::canOnAny('add')}}
|
||||
{{if \IPS\downloads\Category::canOnAny('add') AND ( !$category OR $category->can('add') ) }}
|
||||
<ul class="ipsToolList ipsToolList_horizontal ipsResponsive_showPhone ipsResponsive_block ipsClearfix ipsSpacer_top">
|
||||
{template="categoryButtons" group="browse" params="\IPS\downloads\Category::canOnAny('add'), $category"}
|
||||
</ul>
|
||||
@@ -90,9 +90,11 @@
|
||||
{template="follow" app="core" group="global" params="'downloads', 'category', $category->_id, \IPS\downloads\File::containerFollowers( $category )->count( TRUE )"}
|
||||
</div>]]></template>
|
||||
<template template_group="browse" template_name="categoryButtons" template_data="$canSubmitFiles, $currentCategory=NULL" template_location="front" template_app="downloads"><![CDATA[
|
||||
{{if $canSubmitFiles AND ( !$currentCategory OR $currentCategory->can('add') ) }}
|
||||
<li class='ipsToolList_primaryAction'>
|
||||
<a class="ipsButton ipsButton_medium ipsButton_important ipsButton_fullWidth" href="{{if $currentCategory}}{url="app=downloads&module=downloads&controller=submit&category={$currentCategory->id}&_new=1" seoTemplate="downloads_submit"}{{else}}{url="app=downloads&module=downloads&controller=submit&_new=1" seoTemplate="downloads_submit"}{{endif}}" data-ipsDialog data-ipsDialog-title='{lang="submit_a_file"}' data-ipsDialog-size='narrow'>{lang="submit_a_file"}</a>
|
||||
</li>]]></template>
|
||||
</li>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="browse" template_name="categoryMenu" template_data="$categories" template_location="front" template_app="downloads"><![CDATA[<ul class='ipsMenu ipsMenu_auto ipsHide' id='elDownloadsCategories_menu'>
|
||||
{{foreach $categories as $cat}}
|
||||
{{if $cat->can('view')}}
|
||||
@@ -137,13 +139,16 @@
|
||||
{{if $lastPost = $category->lastFile()}}
|
||||
<li>{template="userPhoto" app="core" group="global" params="$lastPost->author(), 'tiny'"}</li>
|
||||
<li><a href="{$lastPost->url()}" class='ipsType_break ipsContained'>{$lastPost->name}</a></li>
|
||||
<li>{lang="byline_nodate" htmlsprintf="$lastPost->author()->link()"}</li>
|
||||
<li class='ipsType_blendLinks'>{lang="byline_nodate" htmlsprintf="$lastPost->author()->link()"}</li>
|
||||
<li data-short="1 dy" class="ipsType_light">{datetime="$lastPost->submitted"}</li>
|
||||
{{endif}}
|
||||
</ul>
|
||||
{{if method_exists( $table, 'canModerate' ) AND $table->canModerate()}}
|
||||
<div class='ipsDataItem_modCheck'>
|
||||
<input type='checkbox' data-role='moderation' name="moderate[{$category->_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $category ) )"}" data-state=''>
|
||||
<span class='ipsCustomInput'>
|
||||
<input type='checkbox' data-role='moderation' name="moderate[{$category->_id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $category ) )"}" data-state=''>
|
||||
<span></span>
|
||||
</span>
|
||||
</div>
|
||||
{{endif}}
|
||||
</li>
|
||||
@@ -407,12 +412,6 @@
|
||||
<span class='ipsItemStatus ipsItemStatus_small' data-ipsTooltip title='{{if $file->unread() === -1}}{lang="new"}{{else}}{lang="updated"}{{endif}}'><i class="fa fa-circle"></i></span>
|
||||
{{endif}}
|
||||
|
||||
{{if $file->prefix()}}
|
||||
{template="prefix" group="global" app="core" params="$file->prefix( TRUE ), $file->prefix()"}
|
||||
{{endif}}
|
||||
|
||||
<a href='{$file->url()}' title='{lang="view_this_file" sprintf="$file->name"}' {{if $file->canEdit()}}data-role="editableTitle"{{endif}}>{wordbreak="$file->name"}</a>
|
||||
|
||||
{{if $file->mapped('pinned') || $file->mapped('featured') || $file->hidden() === -1 || $file->hidden() === 1}}
|
||||
{{if $file->hidden() === -1}}
|
||||
<span class="ipsBadge ipsBadge_small ipsBadge_icon ipsBadge_warning" data-ipsTooltip title='{$file->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span>
|
||||
@@ -426,6 +425,12 @@
|
||||
<span class="ipsBadge ipsBadge_small ipsBadge_icon ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span>
|
||||
{{endif}}
|
||||
{{endif}}
|
||||
|
||||
{{if $file->prefix()}}
|
||||
{template="prefix" group="global" app="core" params="$file->prefix( TRUE ), $file->prefix()"}
|
||||
{{endif}}
|
||||
|
||||
<a href='{$file->url()}' title='{lang="view_this_file" sprintf="$file->name"}' {{if $file->canEdit()}}data-role="editableTitle"{{endif}}>{wordbreak="$file->name"}</a>
|
||||
</h4>
|
||||
<p class='ipsType_reset ipsType_light ipsType_blendLinks'>
|
||||
{lang="byline_nodate" htmlsprintf="$file->author()->link()"}
|
||||
@@ -485,7 +490,10 @@
|
||||
</div>
|
||||
{{if method_exists( $table, 'canModerate' ) AND $table->canModerate()}}
|
||||
<div class='ipsDataItem_modCheck'>
|
||||
<input type='checkbox' data-role='moderation' name="moderate[{$file->id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $file ) )"}" data-state='{{if $file->tableStates()}}{$file->tableStates()}{{endif}}'>
|
||||
<span class='ipsCustomInput'>
|
||||
<input type='checkbox' data-role='moderation' name="moderate[{$file->id}]" data-actions="{expression="implode( ' ', $table->multimodActions( $file ) )"}" data-state='{{if $file->tableStates()}}{$file->tableStates()}{{endif}}'>
|
||||
<span></span>
|
||||
</span>
|
||||
</div>
|
||||
{{endif}}
|
||||
</li>
|
||||
@@ -534,55 +542,164 @@
|
||||
</div>
|
||||
</div>]]></template>
|
||||
<template template_group="global" template_name="link" template_data="$file" template_location="global" template_app="downloads"><![CDATA[<a href="{$file->url()}" class="ipsType_blendLinks" target="_blank">{wordbreak="$file->name"}</a>]]></template>
|
||||
<template template_group="global" template_name="snippet" template_data="$activity, $type='activity'" template_location="front" template_app="downloads"><![CDATA[
|
||||
{{if $activity instanceof \IPS\downloads\File\Comment or $activity instanceof \IPS\downloads\File\Review}}
|
||||
{{$item = $activity->item();}}
|
||||
{{else}}
|
||||
{{$item = $activity;}}
|
||||
{{endif}}
|
||||
<template template_group="global" template_name="manageFollowRow" template_data="$table, $headers, $rows, $includeFirstCommentInCommentCount=TRUE" template_location="front" template_app="downloads"><![CDATA[{{if count( $rows )}}
|
||||
{{foreach $rows as $row}}
|
||||
{{$idField = $row::$databaseColumnId;}}
|
||||
<li class="ipsDataItem ipsDataItem_responsivePhoto {{if $row->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']}'>
|
||||
<div class='ipsDataItem_generic ipsDataItem_size2'>
|
||||
<div class='ipsThumb ipsThumb_bg ipsThumb_small' style='background-image: url( {file="$row->primary_screenshot" extension="downloads_Screenshots"} )'></div>
|
||||
</div>
|
||||
<div class='ipsDataItem_main ipsPos_middle'>
|
||||
<h4 class='ipsDataItem_title ipsType_break ipsType_normal'>
|
||||
{{if $row->mapped('locked')}}
|
||||
<i class="fa fa-lock"></i>
|
||||
{{endif}}
|
||||
|
||||
<div class='cSearchActivity_info ipsContained'>
|
||||
<div class='ipsColumns'>
|
||||
{{if $row->mapped('pinned') || $row->mapped('featured') || $row->hidden() === -1 || $row->hidden() === 1}}
|
||||
<span>
|
||||
{{if $row->hidden() === -1}}
|
||||
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$row->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span>
|
||||
{{elseif $row->hidden() === 1}}
|
||||
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span>
|
||||
{{endif}}
|
||||
{{if $row->mapped('pinned')}}
|
||||
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="pinned"}'><i class='fa fa-thumb-tack'></i></span>
|
||||
{{endif}}
|
||||
{{if $row->mapped('featured')}}
|
||||
<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span>
|
||||
{{endif}}
|
||||
</span>
|
||||
{{endif}}
|
||||
|
||||
{{if $row->prefix()}}
|
||||
{template="prefix" group="global" app="core" params="$row->prefix( TRUE ), $row->prefix()"}
|
||||
{{endif}}
|
||||
|
||||
<a href='{$row->url()}'>
|
||||
{{if $row->mapped('title')}}{wordbreak="$row->mapped('title')"}{{else}}<em class="ipsType_light">{lang="content_deleted"}</em>{{endif}}
|
||||
</a>
|
||||
</h4>
|
||||
<div class='ipsDataItem_meta ipsType_light ipsType_blendLinks' data-ipsTruncate data-ipsTruncate-size='2 lines' data-ipsTruncate-type='remove'>
|
||||
{{if method_exists( $row, 'tableDescription' )}}
|
||||
{$row->tableDescription()|raw}
|
||||
{{else}}
|
||||
{lang="byline" htmlsprintf="$row->author()->link( $row->warningRef() )"}{datetime="$row->__get( $row::$databaseColumnMap['date'] )"}
|
||||
{lang="in"} <a href="{$row->container()->url()}">{$row->container()->_title}</a>
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='ipsDataItem_generic ipsDataItem_size1 ipsType_center ipsType_large'>
|
||||
<span class='ipsBadge ipsBadge_icon ipsBadge_new {{if !$row->_followData['follow_is_anon']}}ipsHide{{endif}}' data-role='followAnonymous' data-ipsTooltip title='{lang="follow_is_anon"}'><i class='fa fa-eye-slash'></i></span>
|
||||
</div>
|
||||
|
||||
<div class='ipsDataItem_generic ipsDataItem_size6'>
|
||||
<ul class='ipsList_reset'>
|
||||
<li title='{lang="follow_when"}' data-role='followDate'><i class='fa fa-clock-o'></i> {datetime="$row->_followData['follow_added']"}</li>
|
||||
<li title='{lang="follow_how"}' data-role='followFrequency'>
|
||||
{{if $row->_followData['follow_notify_freq'] == 'none'}}
|
||||
<i class='fa fa-bell-slash-o'></i>
|
||||
{{else}}
|
||||
<i class='fa fa-bell'></i>
|
||||
{{endif}} {lang="follow_freq_{$row->_followData['follow_notify_freq']}"}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='ipsDataItem_generic ipsDataItem_size6 ipsType_center'>
|
||||
{template="manageFollow" group="system" app="core" params="$row->_followData['follow_app'], $row->_followData['follow_area'], $row->_followData['follow_rel_id']"}
|
||||
</div>
|
||||
|
||||
{{if $table->canModerate()}}
|
||||
<div class='ipsDataItem_modCheck'>
|
||||
<span class='ipsCustomInput'>
|
||||
<input type='checkbox' data-role='moderation' name="moderate[{$row->$idField}]" data-actions="{expression="implode( ' ', $table->multimodActions( $row ) )"}" data-state='{{if $row->tableStates()}}{$row->tableStates()}{{endif}}'>
|
||||
<span></span>
|
||||
</span>
|
||||
</div>
|
||||
{{endif}}
|
||||
|
||||
</li>
|
||||
{{endforeach}}
|
||||
{{endif}}
|
||||
]]></template>
|
||||
<template template_group="global" template_name="searchResultCommentSnippet" template_data="$indexData, $screenshot, $url, $reviewRating, $condensed" template_location="front" template_app="downloads"><![CDATA[
|
||||
{{if $condensed}}
|
||||
{{if $screenshot}}
|
||||
<span class='ipsThumb_bg ipsThumb_small ipsPos_left' style='background-image: url("{file="$screenshot_thumb" extension="downloads_Screenshots"}")'>
|
||||
<img src='{file="$screenshot_thumb" extension="downloads_Screenshots"}' alt='' class="">
|
||||
</span>
|
||||
{{else}}
|
||||
<span class='ipsNoThumb ipsThumb_small ipsPos_left'></span>
|
||||
{{endif}}
|
||||
{{else}}
|
||||
<div class='ipsColumns ipsColumns_collapsePhone ipsColumns_noSpacing'>
|
||||
<div class='ipsColumn ipsColumn_narrow'>
|
||||
{template="thumbImage" group="global" app="core" params="$item->primary_screenshot_thumb, $item->name, '', 'cSearchActivity_image', 'view_this', $item->url()"}
|
||||
<a href='{$url}'>
|
||||
{{if $screenshot}}
|
||||
<img src='{file="$screenshot" extension="downloads_Screenshots"}' class='ipsImage ipsStream_image'>
|
||||
{{else}}
|
||||
<div class='ipsNoThumb ipsNoThumb_file ipsThumb_medium'></div>
|
||||
{{endif}}
|
||||
</a>
|
||||
</div>
|
||||
<div class='ipsColumn ipsColumn_fluid'>
|
||||
{{if $activity instanceof \IPS\downloads\File\Comment or $activity instanceof \IPS\downloads\File\Review}}
|
||||
{{if $activity instanceof \IPS\downloads\File\Review}}
|
||||
{template="rating" group="global" location="front" app="core" params="'large', $item->rating, \IPS\Settings::i()->reviews_rating_out_of"}
|
||||
<div class='ipsStream_comment ipsPad'>
|
||||
{{if $reviewRating !== NULL}}
|
||||
{template="rating" app="core" params="'medium', $reviewRating" group="global"}
|
||||
{{endif}}
|
||||
<div class='ipsType_medium ipsType_richText ipsContained {{if $activity instanceof \IPS\downloads\File\Review}}ipsSpacer_both{{else}}ipsSpacer_bottom{{endif}} ipsSpacer_half' data-ipsTruncate data-ipsTruncate-size='3 lines' data-ipsTruncate-type='remove'>
|
||||
{$activity->truncated()|raw}
|
||||
{{if trim( $indexData['index_content'] ) !== ''}}
|
||||
<div class='ipsType_richText ipsType_break ipsType_medium' {{if !( \IPS\Dispatcher::i()->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'{{else}}data-searchable data-findTerm{{endif}}>
|
||||
{$indexData['index_content']|raw}
|
||||
</div>
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="global" template_name="searchResultFileSnippet" template_data="$indexData, $itemData, $screenshot, $url, $price, $condensed" template_location="front" template_app="downloads"><![CDATA[{{if $condensed}}
|
||||
{{if $screenshot}}
|
||||
<span class='ipsThumb_bg ipsThumb_small ipsPos_left' style='background-image: url("{file="$screenshot" extension="downloads_Screenshots"}")'>
|
||||
<img src='{file="$screenshot" extension="downloads_Screenshots"}' alt='' class="">
|
||||
</span>
|
||||
{{else}}
|
||||
<span class='ipsNoThumb ipsThumb_small ipsPos_left'></span>
|
||||
{{endif}}
|
||||
{{else}}
|
||||
<div class='ipsColumns ipsColumns_collapsePhone'>
|
||||
<div class='ipsColumn ipsColumn_medium'>
|
||||
<a href='{$url}'>
|
||||
{{if $screenshot}}
|
||||
<img src='{file="$screenshot" extension="downloads_Screenshots"}' class='ipsImage ipsStream_image'>
|
||||
{{else}}
|
||||
<div class='ipsNoThumb ipsThumb_small'></div>
|
||||
{{endif}}
|
||||
</a>
|
||||
</div>
|
||||
<div class='ipsColumn ipsColumn_fluid ipsStream_snippetInfo'>
|
||||
<p class='ipsType_reset ipsType_light ipsType_normal'>{lang="version"} {$itemData['file_version']}</p>
|
||||
<p class='ipsType_reset ipsType_normal'><i class='fa fa-download'></i> {lang="num_downloads" pluralize="$itemData['file_downloads']"}</p>
|
||||
|
||||
{{if trim( $indexData['index_content'] ) !== ''}}
|
||||
<div class='ipsSpacer_top ipsSpacer_half ipsType_richText ipsType_break ipsType_medium' {{if !( \IPS\Dispatcher::i()->application->directory == 'core' and \IPS\Dispatcher::i()->module and \IPS\Dispatcher::i()->module->key == 'search' )}}data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='2 lines'{{else}}data-searchable data-findTerm{{endif}}>
|
||||
{$indexData['index_content']|raw}
|
||||
</div>
|
||||
<ul class='ipsList_inline ipsType_light'>
|
||||
{{if $activity instanceof \IPS\downloads\File\Review}}
|
||||
<li>{lang="x_members_found_helpful" sprintf="$activity->mapped('votes_helpful'), \IPS\Member::loggedIn()->language()->pluralize( \IPS\Member::loggedIn()->language()->get( 'x_members' ), array( $activity->mapped('votes_total') ) )"}</li>
|
||||
{{endif}}
|
||||
{{if $type != 'search' and $activity instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
||||
<li>{template="reputationMini" group="global" app="core" params="$activity, '', NULL, TRUE"}</li>
|
||||
{{endif}}
|
||||
</ul>
|
||||
{{else}}
|
||||
{{if $type != 'search'}}<a href='{$item->url()}' class='ipsType_normal ipsType_break'>{$item->mapped('title')} <span class='ipsType_light ipsType_small'>v{$item->version}</span></a>{{endif}}
|
||||
<div class='ipsType_medium ipsType_richText ipsContained ipsSpacer_both ipsSpacer_half' data-ipsTruncate data-ipsTruncate-size='3 lines' data-ipsTruncate-type='remove'>
|
||||
{$item->truncated()|raw}
|
||||
</div>
|
||||
<ul class='ipsList_inline ipsType_light'>
|
||||
<li>{lang="num_downloads" pluralize="$item->downloads"}</li>
|
||||
{{if $item->container()->bitoptions['comments']}}
|
||||
<li>{lang="num_comments" pluralize="$item->comments"}</li>
|
||||
{{endif}}
|
||||
{{if $item->container()->bitoptions['reviews']}}
|
||||
<li>{lang="num_reviews" pluralize="$item->reviews"} {{if $item->reviews > 0}} {template="rating" group="global" location="front" app="core" params="'tiny', $item->rating, \IPS\Settings::i()->reviews_rating_out_of"}{{endif}}</li>
|
||||
{{endif}}
|
||||
{{if $type != 'search' and $item instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
||||
<li>{template="reputationMini" group="global" app="core" params="$item, '', NULL, TRUE"}</li>
|
||||
{{endif}}
|
||||
</ul>
|
||||
{{endif}}
|
||||
|
||||
{{if \IPS\Application::appIsEnabled( 'nexus' ) and settings.idm_nexus_on}}
|
||||
<p class='ipsType_large ipsType_reset ipsSpacer_top ipsSpacer_half'>
|
||||
<span class='ipsStream_price'>
|
||||
{{if $price}}
|
||||
{$price|raw}
|
||||
{{else}}
|
||||
{lang="file_free"}
|
||||
{{endif}}
|
||||
</span>
|
||||
</p>
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
</div>]]></template>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="livesearch" template_name="category" template_data="$category" template_location="admin" template_app="downloads"><![CDATA[<li class='ipsPad_half ipsClearfix' data-role='result'>
|
||||
<a href='{url="app=downloads&module=downloads&controller=categories&do=form&id="}{$category->id}' class='ipsPos_left'>{$category->_title}</a>
|
||||
</li>
|
||||
@@ -683,27 +800,30 @@
|
||||
{$pagination|raw}
|
||||
<br><br>
|
||||
{{endif}}
|
||||
|
||||
<table class="ipsTable ipsTable_zebra">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{lang="member"}</th>
|
||||
<th>{lang="downloads"}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{foreach $select as $row}}
|
||||
{{$member = \IPS\Member::constructFromData( $row );}}
|
||||
{{if count( $select )}}
|
||||
<table class="ipsTable ipsTable_zebra">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>{template="userPhoto" app="core" group="global" params="$member"} {$member->name}</td>
|
||||
<td><a href='{url="app=downloads&module=stats&controller=member&do=downloads&id={$member->member_id}&tab=downloads&&type%5Bd74394%5D=Table"}'>{$row['downloads']}</a></td>
|
||||
<th>{lang="member"}</th>
|
||||
<th>{lang="downloads"}</th>
|
||||
</tr>
|
||||
{{endforeach}}
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{foreach $select as $row}}
|
||||
{{$member = \IPS\Member::constructFromData( $row );}}
|
||||
<tr>
|
||||
<td>{template="userPhoto" app="core" group="global" params="$member"} {$member->name}</td>
|
||||
<td><a href='{url="app=downloads&module=stats&controller=member&do=downloads&id={$member->member_id}&tab=downloads&&type%5Bd74394%5D=Table"}'>{$row['downloads']}</a></td>
|
||||
</tr>
|
||||
{{endforeach}}
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
|
||||
{$pagination|raw}]]></template>
|
||||
{$pagination|raw}
|
||||
{{else}}
|
||||
<p class="ipsPad">{lang="no_results"}</p>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="stats" template_name="graphs" template_data="$graph" template_location="admin" template_app="downloads"><![CDATA[{$graph|raw}
|
||||
<div class="ipsPad_half ipsAreaBackground">
|
||||
{lang="download_graph_disclaimer"}
|
||||
@@ -718,27 +838,30 @@
|
||||
{$pagination|raw}
|
||||
<br><br>
|
||||
{{endif}}
|
||||
|
||||
<table class="ipsTable ipsTable_zebra">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{lang="member"}</th>
|
||||
<th>{lang="files"}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{foreach $select as $row}}
|
||||
{{$member = \IPS\Member::constructFromData( $row );}}
|
||||
{{if count( $select )}}
|
||||
<table class="ipsTable ipsTable_zebra">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>{template="userPhoto" app="core" group="global" params="$member"} {$member->link()|raw}</td>
|
||||
<td><a href='{$member->url()->setQueryString( array( 'do' => 'content', 'type' => 'downloads_file' ) )}' target='_blank'>{$row['files']}</a></td>
|
||||
<th>{lang="member"}</th>
|
||||
<th>{lang="files"}</th>
|
||||
</tr>
|
||||
{{endforeach}}
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{foreach $select as $row}}
|
||||
{{$member = \IPS\Member::constructFromData( $row );}}
|
||||
<tr>
|
||||
<td>{template="userPhoto" app="core" group="global" params="$member"} {$member->link()|raw}</td>
|
||||
<td><a href='{$member->url()->setQueryString( array( 'do' => 'content', 'type' => 'downloads_file' ) )}' target='_blank'>{$row['files']}</a></td>
|
||||
</tr>
|
||||
{{endforeach}}
|
||||
</tbody>
|
||||
</table>
|
||||
<br>
|
||||
|
||||
{$pagination|raw}]]></template>
|
||||
{$pagination|raw}
|
||||
{{else}}
|
||||
<p class="ipsPad">{lang="no_results"}</p>
|
||||
{{endif}}]]></template>
|
||||
<template template_group="submit" template_name="bulkForm" template_data="$form, $category" template_location="front" template_app="downloads"><![CDATA[
|
||||
{template="pageHeader" group="global" app="core" params="\IPS\Member::loggedIn()->language()->addToStack('submit_bulk_information')"}
|
||||
<hr class='ipsHr'>
|
||||
@@ -751,7 +874,7 @@
|
||||
{{endif}}
|
||||
|
||||
|
||||
<form accept-charset='utf-8' method="post" action="{$form->action}" enctype="multipart/form-data" id='elDownloadsSubmit'>
|
||||
<form accept-charset='utf-8' method="post" action="{$form->action}" enctype="multipart/form-data" id='elDownloadsSubmit' data-ipsForm>
|
||||
<input type="hidden" name="{$form->id}_submitted" value="1">
|
||||
{{foreach $form->hiddenValues as $k => $v}}
|
||||
<input type="hidden" name="{$k}" value="{$v}">
|
||||
@@ -990,7 +1113,7 @@
|
||||
<div class='ipsColumns ipsColumns_collapsePhone'>
|
||||
<div class='ipsColumn ipsColumn_medium ipsType_center'>
|
||||
<a href="{$file->url()}">
|
||||
<img src="{file="$file->primary_screenshot" extension="downloads_Screenshots"}" alt="{$file->name}">
|
||||
<img src="<fileStore.downloads_Screenshots>/{$file->primary_screenshot}" alt="{$file->name}"
|
||||
</a>
|
||||
<br><br>
|
||||
<a href="{$file->url()}" class='ipsButton ipsButton_primary ipsButton_fullWidth ipsButton_small'>
|
||||
@@ -1112,8 +1235,7 @@
|
||||
</div>
|
||||
</form>]]></template>
|
||||
<template template_group="view" template_name="comments" template_data="$file" template_location="front" template_app="downloads"><![CDATA[
|
||||
<div data-controller='core.front.core.commentFeed' data-commentsType='comments' data-baseURL='{$file->url()}' {{if $file->isLastPage()}}data-lastPage{{endif}} data-feedID='file-{$file->id}' id='comments'>
|
||||
<br>
|
||||
<div data-controller='core.front.core.commentFeed' {{if settings.auto_polling_enabled}}data-autoPoll{{endif}} data-commentsType='comments' data-baseURL='{$file->url()}' {{if $file->isLastPage()}}data-lastPage{{endif}} data-feedID='file-{$file->id}' id='comments'>
|
||||
{{if $file->commentPageCount() > 1}}
|
||||
{$file->commentPagination( array( 'tab' ) )|raw}
|
||||
<br><br>
|
||||
@@ -1142,8 +1264,7 @@
|
||||
{$file->commentPagination( array( 'tab' ) )|raw}
|
||||
{{endif}}
|
||||
{{if $file->commentForm() || $file->locked() || \IPS\Member::loggedin()->restrict_post || \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings']}}
|
||||
<br><br>
|
||||
<div class='ipsAreaBackground ipsPad' data-role='replyArea'>
|
||||
<div class='ipsAreaBackground ipsPad ipsSpacer_top' data-role='replyArea'>
|
||||
{{if $file->commentForm()}}
|
||||
{{if $file->locked()}}
|
||||
<p class='ipsType_reset ipsType_warning ipsComposeArea_warning ipsSpacer_bottom ipsSpacer_half'><i class='fa fa-info-circle'></i> {lang="file_locked_can_comment"}</p>
|
||||
@@ -1264,7 +1385,7 @@
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>]]></template>
|
||||
<template template_group="view" template_name="reviews" template_data="$file" template_location="front" template_app="downloads"><![CDATA[<div data-controller='core.front.core.commentFeed' data-commentsType='reviews' data-baseURL='{$file->url()}' {{if $file->isLastPage('reviews')}}data-lastPage{{endif}} data-feedID='file-{$file->id}-reviews' id='reviews'>
|
||||
<template template_group="view" template_name="reviews" template_data="$file" template_location="front" template_app="downloads"><![CDATA[<div data-controller='core.front.core.commentFeed' {{if settings.auto_polling_enabled}}data-autoPoll{{endif}} data-commentsType='reviews' data-baseURL='{$file->url()}' {{if $file->isLastPage('reviews')}}data-lastPage{{endif}} data-feedID='file-{$file->id}-reviews' id='reviews'>
|
||||
{{if $file->canReview()}}
|
||||
{{if $file->locked()}}
|
||||
<strong class='ipsType_warning'><i class='fa fa-info-circle'></i> {lang="item_locked_can_review"}</strong>
|
||||
@@ -1280,7 +1401,7 @@
|
||||
{{elseif $file->hasReviewed()}}
|
||||
<!-- Already reviewed -->
|
||||
{{elseif $file->mustDownloadBeforeReview()}}
|
||||
<p class='ipsType_reset ipsType_light'>{lang="no_download_review"}</p>
|
||||
<p class='ipsType_reset ipsType_light ipsType_normal'>{lang="no_download_review"}</p>
|
||||
{{elseif \IPS\Member::loggedIn()->restrict_post}}
|
||||
{template="reviewUnavailable" group="forms" location="front" app="core" params="'restricted_cannot_comment'"}
|
||||
{{elseif \IPS\Member::loggedIn()->members_bitoptions['unacknowledged_warnings']}}
|
||||
@@ -1288,8 +1409,8 @@
|
||||
{{endif}}
|
||||
{{endif}}
|
||||
{{if count( $file->reviews() )}}
|
||||
<hr class='ipsHr'>
|
||||
<div class="ipsClearfix ipsSpacer_both">
|
||||
{{if !$file->hasReviewed()}}<hr class='ipsHr'>{{endif}}
|
||||
<div class="ipsClearfix ipsSpacer_bottom">
|
||||
{{if $file->reviewPageCount() > 1}}
|
||||
<div class="ipsPos_left ipsResponsive_noFloat">
|
||||
{$file->reviewPagination( array( 'tab', 'sort' ) )|raw}
|
||||
@@ -1327,6 +1448,8 @@
|
||||
{$file->reviewPagination( array( 'tab', 'sort' ) )|raw}
|
||||
</div>
|
||||
{{endif}}
|
||||
{{elseif !$file->canReview()}}
|
||||
<p class="ipsType_normal ipsType_light ipsType_reset" data-role="noReviews">{lang="no_reviews"}</p>
|
||||
{{endif}}
|
||||
</div>]]></template>
|
||||
<template template_group="view" template_name="view" template_data="$file, $commentsAndReviews, $versionData, $previousVersions, $next=NULL, $prev=NULL, $cfields=array()" template_location="front" template_app="downloads"><![CDATA[<div itemscope itemtype="http://schema.org/CreativeWork">
|
||||
@@ -1447,7 +1570,29 @@
|
||||
{$file->desc|raw}
|
||||
</div>
|
||||
|
||||
<hr class='ipsHr'>
|
||||
{{if $versionData['b_changelog'] or !empty( $previousVersions )}}
|
||||
<hr class='ipsHr ipsSpacer_both ipsSpacer_double'>
|
||||
<section data-controller='downloads.front.view.changeLog'>
|
||||
<h2 class='ipsType_sectionHead'>{lang="whats_new_in_version" sprintf="$versionData['b_version']"}{{if !empty( $previousVersions )}} <a href='#' id='elChangelog' data-ipsMenu data-ipsMenu-selectable="radio" class='ipsButton ipsButton_verySmall ipsButton_light' title='{lang="see_changelog_title"}'>{lang="see_changelog"} <i class='fa fa-caret-down'></i></a>{{endif}}</h2>
|
||||
|
||||
<div data-role='changeLogData'>
|
||||
{template="changeLog" group="view" params="$file, $versionData"}
|
||||
</div>
|
||||
<ul class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' id='elChangelog_menu'>
|
||||
<li class='ipsMenu_item {{if !request.changelog}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$file->version}'><a href='{$file->url()->setQuerystring( 'changelog', 0 )}' title='{lang="see_changelog_for" sprintf="$file->version"}'>{$file->version}</a></li>
|
||||
{{foreach $previousVersions as $version}}
|
||||
<li class='ipsMenu_item {{if request.changelog == $version['b_id']}}ipsMenu_itemChecked{{endif}} {{if $version['b_hidden']}}ipsModerated{{endif}}' data-ipsMenuValue='{$version['b_version']}'>
|
||||
<a href='{$file->url()->setQueryString( 'changelog', $version['b_id'] )}' title='{lang="see_changelog_for" sprintf="$version['b_version']"}'>
|
||||
{$version['b_version']}<br>
|
||||
<span class='ipsType_light'>{expression="\IPS\DateTime::ts( $version['b_updated'] )->html()" raw="true"}</span>
|
||||
</a>
|
||||
</li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</section>
|
||||
{{endif}}
|
||||
|
||||
<hr class='ipsHr ipsSpacer_top ipsSpacer_double'>
|
||||
|
||||
{{if $file instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
||||
<div class='ipsPos_right'>
|
||||
@@ -1503,24 +1648,6 @@
|
||||
<a href='{$file->url('report')}' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title="{lang="report_file"}" data-ipsDialog-remoteSubmit data-ipsDialog-flashMessage="{lang="report_submit_success"}" title="{lang="report_file"}" class='ipsType_medium'>{lang="report_file"}</a>
|
||||
{{endif}}
|
||||
</section>
|
||||
|
||||
{{if $versionData['b_changelog'] or !empty( $previousVersions )}}
|
||||
<hr class='ipsHr'>
|
||||
<br>
|
||||
<section data-controller='downloads.front.view.changeLog'>
|
||||
<h2 class='ipsType_sectionHead'>{lang="whats_new_in_version" sprintf="$versionData['b_version']"}{{if !empty( $previousVersions )}} <a href='#' id='elChangelog' data-ipsMenu data-ipsMenu-selectable="radio" class='ipsButton ipsButton_verySmall ipsButton_light' title='{lang="see_changelog_title"}'>{lang="see_changelog"} <i class='fa fa-caret-down'></i></a>{{endif}}</h2>
|
||||
|
||||
<div data-role='changeLogData'>
|
||||
{template="changeLog" group="view" params="$file, $versionData"}
|
||||
</div>
|
||||
<ul class='ipsMenu ipsMenu_selectable ipsMenu_auto ipsHide' id='elChangelog_menu'>
|
||||
<li class='ipsMenu_item {{if !request.changelog}}ipsMenu_itemChecked{{endif}}' data-ipsMenuValue='{$file->version}'><a href='{$file->url()->setQuerystring( 'changelog', 0 )}' title='{lang="see_changelog_for" sprintf="$file->version"}'>{$file->version}</a></li>
|
||||
{{foreach $previousVersions as $version}}
|
||||
<li class='ipsMenu_item {{if request.changelog == $version['b_id']}}ipsMenu_itemChecked{{endif}} {{if $version['b_hidden']}}ipsModerated{{endif}}' data-ipsMenuValue='{$version['b_version']}'><a href='{$file->url()->setQueryString( 'changelog', $version['b_id'] )}' title='{lang="see_changelog_for" sprintf="$version['b_version']"}'>{$version['b_version']}</a></li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</section>
|
||||
{{endif}}
|
||||
</div>
|
||||
</article>
|
||||
<aside class='ipsColumn ipsColumn_wide'>
|
||||
@@ -1658,6 +1785,169 @@
|
||||
{$commentsAndReviews|raw}
|
||||
{{endif}}
|
||||
</div>]]></template>
|
||||
<template template_group="widgets" template_name="downloadsCommentFeed" template_data="$comments, $title, $orientation='vertical'" template_location="front" template_app="downloads"><![CDATA[{{if !empty( $comments ) }}
|
||||
<h3 class='ipsType_reset ipsWidget_title'>{$title}</h3>
|
||||
{{if $orientation == 'vertical'}}
|
||||
<div class='ipsWidget_inner ipsPad_half'>
|
||||
<ul class='ipsDataList ipsDataList_reducedSpacing'>
|
||||
{{foreach $comments as $comment}}
|
||||
<li class='ipsDataItem'>
|
||||
<div class='ipsDataItem_icon ipsPos_top'>
|
||||
{template="userPhoto" group="global" app="core" params="$comment->author(), 'tiny'"}
|
||||
</div>
|
||||
<div class='ipsDataItem_main'>
|
||||
<a href="{$comment->url()}" class='ipsType_medium ipsType_break'>{wordbreak="$comment->item()->name"}</a><br>
|
||||
<p class='ipsType_reset ipsType_light ipsType_medium ipsType_blendLinks'>{lang="byline_nodate" htmlsprintf="$comment->author()->link()"} · <a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a></p>
|
||||
<div class='ipsType_medium ipsType_textBlock ipsType_richText ipsType_break ipsContained ipsSpacer_top ipsSpacer_half' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='{{if $orientation == 'vertical'}}6 lines{{else}}2 lines{{endif}}'>
|
||||
{$comment->truncated( true )|raw}
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class='ipsWidget_inner'>
|
||||
<ul class='ipsDataList'>
|
||||
{{foreach $comments as $comment}}
|
||||
<li class='ipsDataItem ipsClearfix'>
|
||||
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
||||
{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini', $comment->warningRef()"}
|
||||
<div>
|
||||
<p class='ipsPos_right ipsType_reset ipsType_blendLinks'>
|
||||
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' data-ipsTooltip title='{lang="share_this_comment"}' data-ipsMenu data-ipsMenu-closeOnClick='false' id='elShareComment_{$comment->id}'><i class='fa fa-share-alt'></i></a>
|
||||
</p>
|
||||
<h3 class='ipsComment_author ipsType_blendLinks'>
|
||||
<strong class='ipsType_normal'>{template="userLink" app="core" group="global" params="$comment->author(), $comment->warningRef()"}</strong>
|
||||
{template="reputationBadge" group="global" app="core" params="$comment->author()"}
|
||||
</h3>
|
||||
<p class='ipsComment_meta ipsType_light ipsType_medium'>
|
||||
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a>
|
||||
{{if $comment->editLine()}}
|
||||
({lang="edited_lc"})
|
||||
{{endif}}
|
||||
{{if $comment->hidden()}}
|
||||
· {$comment->hiddenBlurb()}
|
||||
{{endif}}
|
||||
{{if $comment instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and $comment->hidden() !== 1 }}
|
||||
· <a href='{$comment->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report_content"}'>{lang="report"}</a>
|
||||
{{endif}}
|
||||
</p>
|
||||
|
||||
{{if member.modPermission('mod_see_warn') and $comment->warning}}
|
||||
{template="commentWarned" group="global" app="core" params="$comment"}
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='ipsPad ipsClearfix'>
|
||||
{{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}
|
||||
<strong class='ipsComment_popularFlag' data-ipsTooltip title='{lang="this_is_a_popular_comment"}'><i class='fa fa-star'></i></strong>
|
||||
{{endif}}
|
||||
<a href="{$comment->url()}" class='ipsDataItem_title ipsType_break'>{wordbreak="$comment->item()->name"}</a><br>
|
||||
<div data-role='commentContent' class='ipsType_normal ipsType_richText ipsType_break ipsContained' data-controller='core.front.core.lightboxedImages'>
|
||||
{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
|
||||
<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
|
||||
{{endif}}
|
||||
{$comment->content()|raw}
|
||||
|
||||
{{if $comment->editLine()}}
|
||||
{$comment->editLine()|raw}
|
||||
{{endif}}
|
||||
</div>
|
||||
|
||||
{{if $comment->hidden() !== 1 && $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
||||
{template="reputation" group="global" app="core" params="$comment, 'ipsPos_right ipsResponsive_noFloat'"}
|
||||
{{endif}}
|
||||
</div>
|
||||
</li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>
|
||||
{{endif}}
|
||||
{{endif}}
|
||||
]]></template>
|
||||
<template template_group="widgets" template_name="downloadsReviewFeed" template_data="$comments, $title, $orientation='vertical'" template_location="front" template_app="downloads"><![CDATA[{{if !empty( $comments ) }}
|
||||
<h3 class='ipsType_reset ipsWidget_title'>{$title}</h3>
|
||||
{{if $orientation == 'vertical'}}
|
||||
<div class='ipsWidget_inner ipsPad_half'>
|
||||
<ul class='ipsDataList ipsDataList_reducedSpacing'>
|
||||
{{foreach $comments as $comment}}
|
||||
<li class='ipsDataItem'>
|
||||
<div class='ipsDataItem_icon ipsPos_top'>
|
||||
{template="userPhoto" group="global" app="core" params="$comment->author(), 'tiny'"}
|
||||
</div>
|
||||
<div class='ipsDataItem_main'>
|
||||
<a href="{$comment->url()}" class='ipsDataItem_title ipsType_break'>{wordbreak="$comment->item()->name"}</a><br>
|
||||
<span class='ipsType_light ipsType_small'>{lang="byline_nodate" htmlsprintf="$comment->author()->link()"} · <a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a></span>
|
||||
{template="rating" group="global" location="front" app="core" params="'small', $comment->rating, \IPS\Settings::i()->reviews_rating_out_of"}
|
||||
<div class='ipsType_medium ipsType_textBlock ipsType_richText ipsType_break ipsContained' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='{{if $orientation == 'vertical'}}6 lines{{else}}2 lines{{endif}}'>
|
||||
{$comment->truncated( true )|raw}
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class='ipsWidget_inner'>
|
||||
<ul class='ipsDataList'>
|
||||
{{foreach $comments as $comment}}
|
||||
<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini'>
|
||||
{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini', $comment->warningRef()"}
|
||||
<div>
|
||||
<p class='ipsPos_right ipsType_reset ipsType_blendLinks'>
|
||||
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' data-ipsTooltip title='{lang="share_this_comment"}' data-ipsMenu data-ipsMenu-closeOnClick='false' id='elShareComment_{$comment->id}'><i class='fa fa-share-alt'></i></a>
|
||||
</p>
|
||||
<h3 class='ipsComment_author ipsType_blendLinks'>
|
||||
<strong class='ipsType_normal'>{template="userLink" app="core" group="global" params="$comment->author(), $comment->warningRef()"}</strong>
|
||||
{template="reputationBadge" group="global" app="core" params="$comment->author()"}
|
||||
</h3>
|
||||
<p class='ipsComment_meta ipsType_light ipsType_medium'>
|
||||
<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->id ) )}' class='ipsType_blendLinks' title='{lang="share_this_comment"}'>{$comment->dateLine()|raw}</a>
|
||||
{{if $comment->editLine()}}
|
||||
({lang="edited_lc"})
|
||||
{{endif}}
|
||||
{{if $comment->hidden()}}
|
||||
· {$comment->hiddenBlurb()}
|
||||
{{endif}}
|
||||
{{if $comment instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and $comment->hidden() !== 1 }}
|
||||
· <a href='{$comment->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report_content"}'>{lang="report"}</a>
|
||||
{{endif}}
|
||||
</p>
|
||||
|
||||
{{if member.modPermission('mod_see_warn') and $comment->warning}}
|
||||
{template="commentWarned" group="global" app="core" params="$comment"}
|
||||
{{endif}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='ipsPad'>
|
||||
{{if in_array( 'IPS\Content\Reputation', class_implements( $comment ) ) and settings.reputation_highlight and $comment->reputation() >= settings.reputation_highlight}}
|
||||
<strong class='ipsComment_popularFlag' data-ipsTooltip title='{lang="this_is_a_popular_comment"}'><i class='fa fa-star'></i></strong>
|
||||
{{endif}}
|
||||
<a href="{$comment->url()}" class='ipsDataItem_title ipsType_break'>{wordbreak="$comment->item()->name"}</a><br>
|
||||
<div data-role='commentContent' class='ipsType_normal ipsType_richText ipsType_break ipsContained' data-controller='core.front.core.lightboxedImages'>
|
||||
{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
|
||||
<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
|
||||
{{endif}}
|
||||
{$comment->content()|raw}
|
||||
|
||||
{{if $comment->editLine()}}
|
||||
{$comment->editLine()|raw}
|
||||
{{endif}}
|
||||
</div>
|
||||
|
||||
{{if $comment->hidden() !== 1 && $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
|
||||
{template="reputation" group="global" app="core" params="$comment, 'ipsPos_right ipsResponsive_noFloat'"}
|
||||
{{endif}}
|
||||
</div>
|
||||
{{endforeach}}
|
||||
</ul>
|
||||
</div>
|
||||
{{endif}}
|
||||
{{endif}}
|
||||
]]></template>
|
||||
<template template_group="widgets" template_name="downloadStats" template_data="$stats, $latestFile, $orientation='vertical'" template_location="front" template_app="downloads"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_downloadStats"}</h3>
|
||||
<div class='ipsWidget_inner'>
|
||||
{{if $orientation == 'vertical'}}
|
||||
@@ -1785,7 +2075,7 @@
|
||||
<div class='ipsDataItem_main ipsType_break'>
|
||||
<a href="{$file->url()}" title='{lang="view_this_file" sprintf="$file->name"}'>{wordbreak="$file->name"}</a>
|
||||
<br>
|
||||
<span class='ipsType_light ipsType_medium'>{lang="byline_nodate" htmlsprintf="$file->author()->link()"}</span><br>
|
||||
<span class='ipsType_light ipsType_medium ipsType_blendLinks'>{lang="byline_nodate" htmlsprintf="$file->author()->link()"}</span><br>
|
||||
{{if $file->container()->bitoptions['reviews']}}
|
||||
{template="rating" group="global" location="front" app="core" params="'small', $file->rating, \IPS\Settings::i()->reviews_rating_out_of"}
|
||||
{{endif}}
|
||||
@@ -1805,7 +2095,7 @@
|
||||
<template template_group="widgets" template_name="topDownloads" template_data="$week, $month, $year, $all, $orientation='vertical'" template_location="front" template_app="downloads"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_topDownloads"}</h3>
|
||||
|
||||
{{if $orientation == 'vertical'}}
|
||||
<div class='ipsTabs ipsTabs_small ipsClearfix' id='elDownloadsTopDownloads' data-ipsTabBar data-ipsTabBar-stretch data-ipsTabBar-contentArea='#elDownloadsTopDownloads_content'>
|
||||
<div class='ipsTabs ipsTabs_small ipsTabs_stretch ipsClearfix' id='elDownloadsTopDownloads' data-ipsTabBar data-ipsTabBar-contentArea='#elDownloadsTopDownloads_content'>
|
||||
<a href='#elDownloadsTopDownloads' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
||||
<ul role="tablist">
|
||||
<li>
|
||||
@@ -1948,7 +2238,7 @@
|
||||
<template template_group="widgets" template_name="topSubmitters" template_data="$week, $month, $year, $all, $orientation='vertical'" template_location="front" template_app="downloads"><![CDATA[<h3 class='ipsType_reset ipsWidget_title'>{lang="block_topSubmitters"}</h3>
|
||||
|
||||
{{if $orientation == 'vertical'}}
|
||||
<div class='ipsTabs ipsTabs_small ipsClearfix' id='elDownloadsTopSubmitters' data-ipsTabBar data-ipsTabBar-stretch data-ipsTabBar-contentArea='#elDownloadsTopSubmitters_content'>
|
||||
<div class='ipsTabs ipsTabs_small ipsTabs_stretch ipsClearfix' id='elDownloadsTopSubmitters' data-ipsTabBar data-ipsTabBar-contentArea='#elDownloadsTopSubmitters_content'>
|
||||
<a href='#elDownloadsTopSubmitters' data-action='expandTabs'><i class='fa fa-caret-down'></i></a>
|
||||
<ul role="tablist">
|
||||
<li>
|
||||
@@ -2142,8 +2432,14 @@
|
||||
.cDownloadsCarouselItem {
|
||||
width: 170px;
|
||||
min-height: 240px;
|
||||
margin-right: 6px !important;
|
||||
}
|
||||
|
||||
html[dir="ltr"] .cDownloadsCarouselItem {
|
||||
margin-right: 6px !important;
|
||||
}
|
||||
html[dir="rtl"] .cDownloadsCarouselItem {
|
||||
margin-left: 6px !important;
|
||||
}
|
||||
|
||||
.cDownloadsCarouselItem .ipsThumb {
|
||||
max-width: 100%;
|
||||
|
||||
Reference in new issue
Block a user