app/book/book-list.th.html
<div class="col-lg-3 col-md-4 col-sm-6 col-xs-12 books" ng-repeat="book in books">
<div class="panel panel-default" style="height: 320px;">
<div class="panel-heading">
<h2 class="panel-title"><a class="ellipsis" ui-sref="base.book.detail({id: book.id})">{{::book.title}}</a></h2>
</div>
<div class="panel-body">
<div class="cover-image">
<a ng-click="openLightboxModal($index)" ng-show="::book.hasCover == 1" class="pointer">
<img ng-src="{{ ::bookListHelper.getThumbnailUrlByHeight(book.id, 164) }}" />
</a>
</div>
<div class="ellipsis"><span class="glyphicon glyphicon-user"></span> {{::book.authorsName}}</div>
<div class="ellipsis" ng-show="::book.tagsName"><span class="glyphicon glyphicon-tag"></span> {{::book.tagsName}}</div>
<div class="ellipsis" ng-show="::book.seriesName"><span class="glyphicon glyphicon-list"></span> {{::book.seriesName}} ({{::book.seriesIndex}})</div>
<div class="text-center bottomright">
<a ng-repeat="data in ::book.dataList | limitTo: 2" ng-href="{{ ::bookListHelper.getDataUrl(book.id, data.id) }}" class="btn btn-primary btn-sm" role="button">{{ ::data.format }}</a>
</div>
</div>
</div>
</div>