Files
meanTorrent/modules/vip/client/views/vip.client.view.html
2018-06-18 20:32:11 +08:00

258 lines
17 KiB
HTML

<div ng-controller="VipController as vm">
<div class="pagetop">
<div class="container">
<div class="row margin-top-10 margin-bottom-10">
<div class="col-sm-9">
<h3>{{'VIP.VIP_TITLE' | translate}}
<small>{{'VIP.VIP_SUB_TITLE' | translate}}
<small class="text-mt"
ng-if="vm.user.isVip">{{ vm.user.vip_start_at | date: 'yyyy-MM-dd' }} - {{ vm.user.vip_end_at | date: 'yyyy-MM-dd' }}
</small>
</small>
</h3>
<div class="vip-tooltip margin-left-100" ng-bind-html="vm.getVipTooltip();"></div>
</div>
<div class="col-sm-3 text-right donate-button">
<a ui-sref="vip.donate" class="btn btn-min-width-120 margin-top-5"
mouse-enter-toggle-class="btn-mt" base-class="btn-mt-o">
{{'VIP.BUTTON_DONATE' | translate}}
</a>
</div>
</div>
</div>
</div>
<div class="container" ng-if="!vm.user.isVip && !vm.user.isOper">
<div class="col-sm-10" ng-init="vm.getTemplateFileContent('/modules/vip/client/templates/vip-'+vm.lang+'.md')">
<span ng-bind-html="vm.getTemplateMarkedContent()" style="line-height: 1.6;"></span>
</div>
</div>
<div class="container" ng-if="vm.user.isVip || vm.user.isOper" ng-init="vm.buildPager();">
<div class="row margin-top-10">
<div class="col-md-12 torrent-list" id="top_of_torrent_list" ng-show="vm.pagedItems">
<div class="panel panel-default">
<div class="panel-heading text-center">
<h3 class="panel-title">{{'VIP.TORRENTS_LIST' | translate}} - {{'TAGS_SEARCH' | translate}}</h3>
</div>
<div class="panel-body">
<div class="row filter-tags text-center"
ng-if="(vm.filterType && vm.filterType!='aggregate') || vm.releaseYear || vm.torrentRLevel != 'level0' || vm.filterSale || vm.filterHnR || vm.filterTop || vm.filterUnique || vm.searchTags.length>0">
<div class="col-md-6 col-md-offset-3">
<span class="filter-tag-item label-tag" ng-if="vm.filterType && vm.filterType!='aggregate'">{{'TORRENT_TYPE_LABEL.' + vm.filterType.toUpperCase() | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onTorrentTypeClicked(vm.filterType);">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.releaseYear">{{vm.releaseYear}}
<i class="fa fa-times-circle"
ng-click="vm.onReleaseClicked(vm.releaseYear);">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.torrentRLevel != 'level0'">{{ 'TORRENT_RECOMMEND_LEVEL_ITEM.' + vm.torrentRLevel.toUpperCase() | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onRLevelClicked(vm.torrentRLevel);">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.filterSale">{{ 'CA_TORRENT_SALE_NOW' | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onSaleClicked();">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.filterHnR">H&R
<i class="fa fa-times-circle"
ng-click="vm.onHnRClicked();">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.filterTop">{{'STATUS_TOP_KEY' | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onTopClicked();">
</i>
</span>
<span class="filter-tag-item label-tag" ng-if="vm.filterUnique">{{'STATUS_UNIQUE_KEY' | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onUniqueClicked();">
</i>
</span>
<span ng-repeat="t in vm.searchTags" ng-if="vm.searchTags.length>0">
<span class="filter-tag-item label-tag">{{ 'RESOURCESTAGS.' + vm.RTS.getTagTitle(t) + '.' + t.toUpperCase() | translate}}
<i class="fa fa-times-circle"
ng-click="vm.onTagClicked(t);">
</i>
</span>
</span>
</div>
</div>
<div class="col-md-10 col-md-offset-1">
<dl class="dl-horizontal tags-admin-dl">
<dt class="h-line">{{ 'CA_KEYWORD' | translate}}:</dt>
<dd class="h-line">
<div class="row" style="">
<div class="col-sm-6">
<input type="text" class="form-control" ng-model="vm.searchKey"
ng-keydown="vm.onKeysKeyDown($event);"
placeholder="{{ 'PH_KEYWORD' | translate}}">
</div>
<div class="col-sm-6">
<span class="label label-tag text-uppercase incline-block-valign"
uib-tooltip="{{ 'TITLE_ALT.MORE_TAGS' | translate}}"
ng-click="vm.onMoreTagsClicked();">
<i class="glyphicon glyphicon-chevron-down" id="more-tags-icon"></i> {{ 'MORE_TAGS' | translate}}
</span>
<span class="label label-tag text-uppercase incline-block-valign"
uib-tooltip="{{ 'TITLE_ALT.RESET_TAGS' | translate}}"
ng-click="vm.clearAllCondition();">
<i class="glyphicon glyphicon-repeat"></i> {{ 'CA_RESET' | translate}}
</span>
<span>
<i class="fa fa-rss-square color-mt-base" aria-hidden="true"
uib-tooltip="{{ 'DESC_MAKE_RSS_URL' | translate}}"
mt-scale-by-click="{scale: 2, duration: '.3s'}"
mt-copy-to-clipboard="{{vm.rssUrl}}">
</i>
</span>
</div>
</div>
</dd>
<div class="more-tags panel-collapsed padding-top-10" style="display: none; margin-bottom: 20px;">
<dt class="h-line margin-top-10">{{'CA_RESOURCE_TYPE' | translate}}</dt>
<dd class="h-line margin-top-10">
<div class="radio radio-type margin-top-5">
<label class="radio-inline" ng-class="{checked: vm.filterType == t.value}"
ng-repeat="t in vm.torrentTypeConfig.value | filter:{enable: true} | orderBy: 'position'">
<input type="radio" ng-model="vm.filterType" value="{{t.value}}"
ng-change="vm.onTorrentTypeChanged();"> {{'MENU_TORRENTS_SUB.'+t.name | translate}}
</label>
</div>
</dd>
<dt class="h-line">{{ 'CA_TORRENT_ATTR' | translate}}:</dt>
<dd class="h-line">
<div class="checkbox checkbox-hnr">
<label class="checkbox-inline" ng-if="vm.hnrConfig.enable">
<input type="checkbox" ng-model="vm.filterHnR"
ng-change="vm.onHnRChanged();"> {{ 'CA_TORRENT_HNR' | translate}}
</label>
<label class="checkbox-inline" ng-if="!vm.isGlobalSaleNow()">
<input type="checkbox" ng-model="vm.filterSale"
ng-change="vm.onSaleChanged();"> {{ 'CA_TORRENT_SALE_NOW' | translate}}
</label>
<label class="checkbox-inline">
<input type="checkbox" ng-model="vm.filterTop"
ng-change="vm.onTopChanged();"> {{ 'TORRENT_STATUS_TOP_TITLE' | translate}}
</label>
<label class="checkbox-inline">
<input type="checkbox" ng-model="vm.filterUnique"
ng-change="vm.onUniqueChanged();"> {{ 'TORRENT_STATUS_UNIQUE' | translate}}
</label>
</div>
</dd>
<div ng-repeat="item in vm.resourcesTags.radio | filter: vm.tagsFilter">
<dt class="h-line">{{ 'RESOURCESTAGS.'+item.name+'.SELF' | translate}}:</dt>
<dd class="h-line">
<div class="btn-group btn-group-xs" role="group">
<button ng-repeat="sitem in item.value" id="tag_{{sitem.name}}"
class="btn btn-xs btn-default btn-tag" value="{{sitem.name}}"
ng-click="vm.onRadioTagClicked($event, sitem.name)">
{{ 'RESOURCESTAGS.' + item.name + '.' + sitem.name | translate}}
</button>
</span>
</div>
</dd>
</div>
<div style="margin-top: 20px;"></div>
<div ng-repeat="item in vm.resourcesTags.checkbox | filter: vm.tagsFilter">
<dt class="h-line">{{ 'RESOURCESTAGS.'+item.name+'.SELF' | translate}}:</dt>
<dd class="h-line">
<div class="btn-group btn-group-xs" role="group">
<button ng-repeat="sitem in item.value" id="tag_{{sitem.name}}"
class="btn btn-xs btn-default btn-tag" value="{{sitem.name}}"
ng-click="vm.onCheckboxTagClicked($event, sitem.name)"
toggle-class="btn-success" base-class="btn-default" onclick="this.blur();">
{{ 'RESOURCESTAGS.' + item.name + '.' + sitem.name | translate}}
</button>
</div>
</dd>
</div>
</div>
</dl>
</div>
</div>
</div>
<div class="pagination-div-top">
<div class="row">
<div class="col-sm-12">
<ul uib-pagination boundary-links="true" max-size="8" items-per-page="vm.itemsPerPage" total-items="vm.filterLength"
ng-model="vm.currentPage"
ng-change="vm.pageChanged()"
first-text="{{ 'PAGE_TEXT_FIRST' | translate}}" previous-text="{{ 'PAGE_TEXT_PREVIOUS' | translate}}"
next-text="{{ 'PAGE_TEXT_NEXT' | translate}}" last-text="{{ 'PAGE_TEXT_LAST' | translate}}">
</ul>
</div>
</div>
</div>
<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>
<a href="#" tooltip-placement="top"
ng-click="vm.orderByVote();"
uib-tooltip="{{ 'TABLE_FIELDS.TITLE_VOTES' | translate}}">{{ 'TABLE_FIELDS.VOTES' | translate}}</a>
<i class="fa fa-caret-down text-info" ng-if="vm.sortVote == '-'"></i>
</th>
<th class="text-center">
<a href="#" tooltip-placement="top"
ng-click="vm.orderByLife();"
uib-tooltip="{{ 'TABLE_FIELDS.TITLE_LIFE' | translate}}">{{ 'TABLE_FIELDS.LIFETIME' | translate}}</a>
<i class="fa fa-caret-down text-info" ng-if="vm.sortLife == '-'"></i>
</th>
<th class="text-center">
<a href="#" tooltip-placement="top"
ng-click="vm.orderBySize();"
uib-tooltip="{{ 'TABLE_FIELDS.TITLE_SIZE' | translate}}">{{ 'TABLE_FIELDS.SIZE' | translate}}</a>
<i class="fa fa-caret-down text-info" ng-if="vm.sortSize == '-'"></i>
</th>
<th>
<a href="#" tooltip-placement="top"
ng-click="vm.orderBySLF();"
uib-tooltip="{{ 'TABLE_FIELDS.TITLE_SEEDS_LEECHERS_FINISHED' | translate}}"
ng-bind-html="vm.getOrderTableHead()"></a>
</th>
<th class="text-center">{{ 'TABLE_FIELDS.PUBLISHER' | translate}}</th>
</tr>
</thead>
<tbody ng-if="vm.tooltipMsg">
<tr>
<td colspan="7">
<div class="text-center margin-top-50 margin-bottom-30 padding-top-20 padding-bottom-50">
<h3>{{vm.tooltipMsg | translate}}</h3>
</div>
</td>
</tr>
</tbody>
<tbody ng-if="!vm.tooltipMsg" torrent-list-item parent="vm" item="item" list="vm.pagedItems"
ng-repeat="item in vm.pagedItems"></tbody>
</table>
</div>
<div class="pagination-div-bottom">
<ul uib-pagination boundary-links="true" max-size="8" items-per-page="vm.itemsPerPage" total-items="vm.filterLength"
ng-model="vm.currentPage"
ng-change="vm.pageChanged()"
first-text="{{ 'PAGE_TEXT_FIRST' | translate}}" previous-text="{{ 'PAGE_TEXT_PREVIOUS' | translate}}"
next-text="{{ 'PAGE_TEXT_NEXT' | translate}}" last-text="{{ 'PAGE_TEXT_LAST' | translate}}">
</ul>
</div>
</div>
</div>
</div>
</div>