mirror of
https://github.com/taobataoma/meanTorrent.git
synced 2026-01-29 18:49:20 +01:00
215 lines
14 KiB
HTML
215 lines
14 KiB
HTML
<section ng-controller="CollectionItemController as vm" ng-init="vm.getCollection();">
|
|
<div class="backdrop attachment-scroll">
|
|
<div class="filter">
|
|
<div class="container collection-view-top">
|
|
<div class="row margin-bottom-10">
|
|
<div class="col-sm-9">
|
|
<span class="item-name">
|
|
<h3 class="margin-bottom-10">
|
|
{{vm.collection.name}}
|
|
</h3>
|
|
</span>
|
|
</div>
|
|
<div class="col-sm-3 text-right">
|
|
<span class="item-release">
|
|
<h3 class="margin-bottom-10">
|
|
<span>{{vm.getMinMaxRelease().min}}</span><span ng-if="vm.release.length>1">-{{vm.getMinMaxRelease().max}}</span>
|
|
</h3>
|
|
</span>
|
|
</div>
|
|
<div class="col-sm-12">
|
|
<ul class="list-unstyled item-data list-inline">
|
|
<li><i class="fa fa-list text-info"> {{'COLLECTIONS.FILES_NUMBERS' | translate}}: {{vm.collection.torrents.length}}</i>
|
|
</li>
|
|
<li><i class="fa fa-star-half-o text-info"> {{'COLLECTIONS.VOTE_AVERAGE' | translate}}:
|
|
{{vm.collection.vote_average}} / {{vm.collection.vote_count}} {{ 'TMDB_FIELDS.VOTE_UNIT' | translate}}
|
|
</i></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row margin-bottom-20">
|
|
<div class="col-sm-12">
|
|
<div>
|
|
<div class="item-overview" id="{{vm.collection._id}}" data-provide="markdown"
|
|
ng-bind-html="vm.getCollectionOverviewContent(vm.collection)">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-sm-12">
|
|
<div class="collection-button text-right">
|
|
<button class="btn btn-width-160 margin-top-5" mouse-enter-toggle-class="btn-default" base-class="btn-mt-o"
|
|
ng-if="vm.user.isOper" ng-click="vm.beginEditCollectionOverview(vm.collection)">
|
|
{{'COLLECTIONS.BTN_EDIT_OVERVIEW' | translate}}
|
|
</button>
|
|
<button class="btn btn-width-160 margin-top-5" mouse-enter-toggle-class="btn-default" base-class="btn-mt-o"
|
|
ng-if="vm.user.isOper" ng-click="vm.beginRemoveCollection(vm.collection)">
|
|
{{'COLLECTIONS.BTN_REMOVE_COLLECTION' | translate}}
|
|
</button>
|
|
|
|
<div class="btn-group width-160 margin-top-5" ng-if="vm.user.isOper" uib-dropdown dropdown-append-to-body>
|
|
<button id="btn-append-to-body" type="button"
|
|
class="btn btn-block"
|
|
mouse-enter-toggle-class="btn-default" base-class="btn-mt-o"
|
|
ng-click="$event.stopPropagation();"
|
|
uib-dropdown-toggle>
|
|
{{'ADMIN_BASIC_RLEVEL_SET' | translate }} <span class="caret"></span>
|
|
</button>
|
|
<ul class="dropdown-menu-left" uib-dropdown-menu role="menu"
|
|
aria-labelledby="btn-append-to-body">
|
|
<li role="menuitem" ng-repeat="l in vm.torrentRLevels.value"
|
|
ng-class="{'active': vm.collection.recommend_level == l.value}">
|
|
<a href="#"
|
|
ng-click="vm.setRecommendLevel(vm.collection, l);">{{ 'TORRENT_RECOMMEND_LEVEL_ITEM.' + l.name | translate}}</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="container">
|
|
<div class="row margin-top-20 margin-bottom-20">
|
|
<div class="col-md-12 torrent-list" id="top_of_torrent_list" ng-show="vm.collection.torrents">
|
|
<div class="table-responsive">
|
|
<table class="table table-hover tb-v-middle">
|
|
<thead>
|
|
<tr>
|
|
<th class="td-width-0"></th>
|
|
<th>{{ 'TABLE_FIELDS.INFO' | translate}}</th>
|
|
<th>{{ 'TABLE_FIELDS.VOTES' | translate}}</th>
|
|
<th class="text-center">{{ 'TABLE_FIELDS.LIFETIME' | translate}}</th>
|
|
<th class="text-center">{{ 'TABLE_FIELDS.SIZE' | translate}}</th>
|
|
<th>
|
|
<abbr title="{{ 'TABLE_FIELDS.ABBR_SEEDS_LEECHERS_FINISHED' | translate}}" class="initialism">
|
|
{{ 'TABLE_FIELDS.SEEDS_LEECHERS_FINISHED' | translate}}
|
|
</abbr>
|
|
</th>
|
|
<th class="text-center">{{ 'TABLE_FIELDS.PUBLISHER' | translate}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr class="torrent-list-info"
|
|
ng-repeat-start="item in vm.collection.torrents" ng-click="vm.TGI.openTorrentDetailInfo(item._id);">
|
|
<td class="td-width-0" rowspan="2"></td>
|
|
<td class="col-md-7 td-text-overflow">
|
|
<div class="media">
|
|
<div class="media-left">
|
|
<img class="media-object" torrent-logo="item"
|
|
ng-src="{{vm.TGI.getTorrentListImage(item)}}"
|
|
alt="{{vm.TGI.getTorrentTitle(item)}}">
|
|
|
|
<div class="layer-download">
|
|
<i class="fa fa-arrow-circle-o-down fa-3x" aria-hidden="true"
|
|
title="{{ 'TITLE_ALT.DOWNLOAD_TORRENT' | translate}}"
|
|
ng-click="vm.DLS.downloadTorrent(item._id); $event.stopPropagation();"
|
|
ng-class="{'fa-arrow-circle-down': vm.hover}"
|
|
ng-mouseover="vm.hover = true;" ng-mouseleave="vm.hover = false;"></i>
|
|
</div>
|
|
</div>
|
|
<div class="media-body">
|
|
<h5 class="media-heading">
|
|
<a ui-sref="torrents.view({torrentId: item._id})">{{vm.TGI.getTorrentDoubleTitle(item)}}</a>
|
|
</h5>
|
|
|
|
<div class="list-all-genres">
|
|
<span class="genres-item" ng-repeat="t in item.resource_detail_info.genres">{{t.name}}</span>
|
|
</div>
|
|
|
|
<div class="torrent-filename text-long">{{item.resource_detail_info.subtitle}}</div>
|
|
<div class="torrent-filename text-long">{{item.torrent_filename | filename}}</div>
|
|
|
|
<div class="list-all-tags">
|
|
<span class="label label-release label-warning" ng-show="item.resource_detail_info.release_date"
|
|
ng-click="$event.stopPropagation();">
|
|
{{ item.resource_detail_info.release_date}}
|
|
</span>
|
|
<span class="label label-rlevel label-info"
|
|
ng-show="item.torrent_recommended != 'none'"
|
|
ng-click="$event.stopPropagation();">
|
|
{{ 'TORRENT_RECOMMEND_LEVEL_ITEM.' + item.torrent_recommended.toUpperCase() | translate}}
|
|
</span>
|
|
<span class="label label-sale" ng-if="item.isSaling"
|
|
title="{{vm.TGI.getTorrentSaleTypeDesc(item);}} | {{ 'SALE_EXPIRES_TIME' | translate}}: {{item.torrent_sale_expires | date: 'MM-dd HH:mm'}}"
|
|
ng-click="$event.stopPropagation();"
|
|
ng-class="{'label-default': !item.isSaling, 'label-success': item.isSaling}">
|
|
{{item.torrent_sale_status}} {{item.torrent_sale_expires | unlife}}
|
|
</span>
|
|
<span class="label label-se-info" ng-if="item.torrent_type == 'tvserial'"
|
|
ng-click="$event.stopPropagation();">S{{item.torrent_seasons}}E{{item.torrent_episodes}}</span>
|
|
|
|
<span class="label label-hnr-info" ng-if="item.torrent_hnr"
|
|
ng-click="$event.stopPropagation();">H&R</span>
|
|
|
|
<span class="label label-vip-info" ng-if="item.torrent_vip"
|
|
ng-click="$event.stopPropagation();">VIP</span>
|
|
|
|
<span ng-repeat="t in item.torrent_tags">
|
|
<span class="label label-tag" ng-class="{'used': vm.searchTags.indexOf(t) !== -1}"
|
|
ng-click="$event.stopPropagation();"
|
|
ng-if="vm.RTS.tagInList(t);">
|
|
{{ 'RESOURCESTAGS.' + vm.RTS.getTagTitle(t) + '.' + t.toUpperCase() | translate}}
|
|
</span>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
<td class="col-md-1 td-v-middle td-imdb">
|
|
<span title="{{ 'TITLE_ALT.IMDB_VOTES' | translate}}"
|
|
class="torrent-votes"><kbd>{{vm.TGI.getVoteTitle(item)}}</kbd> {{item.resource_detail_info.vote_average | number : 1}}</span>
|
|
</td>
|
|
<td class="col-md-1 td-v-middle text-center td-life">{{item.createdat | life}}</td>
|
|
<td class="col-md-1 td-v-middle text-center td-size">{{item.torrent_size | bytes:2}}</td>
|
|
<td class="col-md-1 td-v-middle list-user-info td-user-info">
|
|
<p class="no-margin-p" title="{{ 'TITLE_ALT.SEEDS' | translate}}">
|
|
<span class="glyphicon glyphicon-arrow-up torrent-up"></span>
|
|
{{item.torrent_seeds}}
|
|
</p>
|
|
|
|
<p class="no-margin-p" title="{{ 'TITLE_ALT.LEECHERS' | translate}}">
|
|
<span class="glyphicon glyphicon-arrow-down torrent-down"></span>
|
|
{{item.torrent_leechers}}
|
|
</p>
|
|
|
|
<p class="no-margin-p" title="{{ 'TITLE_ALT.FINISHED' | translate}}">
|
|
<span class="glyphicon glyphicon-ok torrent-finished"></span>
|
|
{{item.torrent_finished}}
|
|
</p>
|
|
</td>
|
|
<td class="col-md-1 td-v-middle text-center td-uploader">
|
|
<div class="coll-item-uploader">
|
|
<span ng-if="!item.isAnonymous" user-info="item.user" info-name></span>
|
|
<span ng-if="item.isAnonymous">{{ 'ANONYMOUS' | translate }}</span>
|
|
|
|
<div maker-info="item.maker"></div>
|
|
<!--<span vip-flag="item.user"></span>-->
|
|
<!--<span message-to="item.user" to-class="message-to-icon"></span>-->
|
|
</div>
|
|
<div class="coll-item-remove">
|
|
<button class="btn btn-default" uib-tooltip="{{ 'COLLECTIONS.BTN_REMOVE_TITLE' | translate}}"
|
|
ng-click="vm.removeFromCollections(item); $event.stopPropagation();">
|
|
{{'COLLECTIONS.BTN_REMOVE_FROM_COLLECTION' | translate}}
|
|
</button>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr ng-repeat-end>
|
|
<td class="td-progress" colspan="6">
|
|
<div torrent-progress="item.my_peers"></div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section> |