2019-01-27 10:14:38 +00:00
<!DOCTYPE html>
< html class = "no-js" >
< head >
< meta charset = "utf-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" >
< title > {{ entry.title }}< / title >
< meta name = "description" content = "" >
< meta name = "viewport" content = "width=device-width" >
< meta name = "apple-mobile-web-app-capable" content = "yes" >
< script src = "{{ url_for('static', filename='js/libs/jquery.min.js') }}" > < / script >
< script src = "{{ url_for('static', filename='js/libs/soundmanager2.js') }}" > < / script >
< script src = "{{ url_for('static', filename='js/libs/bar-ui.js') }}" > < / script >
< link rel = "apple-touch-icon" sizes = "140x140" href = "{{ url_for('static', filename='favicon.ico') }}" >
< link rel = "shortcut icon" href = "{{ url_for('static', filename='favicon.ico') }}" >
< link href = "{{ url_for('static', filename='css/libs/bootstrap.min.css') }}" rel = "stylesheet" media = "screen" >
< link rel = "stylesheet" href = "{{ url_for('static', filename='css/libs/bar-ui.css') }}" / >
2019-06-29 12:23:39 +00:00
<!-- link rel="stylesheet" href="{{ url_for('static', filename='css/listen.css') }}" / -->
2019-01-27 10:14:38 +00:00
<!-- <link rel="stylesheet" href="{{ url_for('static', filename='css/libs/normalize.css') }}">
< link rel = "stylesheet" href = "{{ url_for('static', filename='css/main.css') }}" >
< link rel = "stylesheet" href = "{{ url_for('static', filename='css/popup.css') }}" > -->
< script >
"use strict";
< / script >
< / head >
< body >
2019-06-29 12:23:39 +00:00
<!-- div id="main">
2019-01-27 10:14:38 +00:00
< div class = "content" >
< h2 > {{ entry.title }}< / h2 >
< div class = "cover" >
2019-06-29 12:23:39 +00:00
< img src = "{{ url_for('web.get_cover', book_id=entry.id) }}" alt = "{{ entry.title }}" / >
2019-01-27 10:14:38 +00:00
< / div >
{% if entry.ratings.__len__() > 0 %}
< div class = "rating" >
< p >
{% for number in range((entry.ratings[0].rating/2)|int(2)) %}
< span class = "glyphicon glyphicon-star good" > < / span >
{% if loop.last and loop.index
< 5 % } { % for numer in range ( 5 - loop . index ) % } < span class = "glyphicon glyphicon-star" >
< / span >
{% endfor %} {% endif %} {% endfor %}
< / p >
< / div >
{% endif %}
< h3 > {{_('Description:')}}< / h3 >
{{entry.comments[0].text|safe}}
2019-06-29 12:23:39 +00:00
< / div-- >
<!-- div class="sm2 - bar - ui compact full - width">
< div class = "bd sm2-main-controls" >
< div class = "sm2-inline-texture" > < / div >
< div class = "sm2-inline-gradient" > < / div >
< div class = "sm2-inline-element sm2-button-element" >
< div class = "sm2-button-bd" >
< a href = "#play" class = "sm2-inline-button sm2-icon-play-pause" > {{_('Play / pause')}}< / a >
< / div >
< / div >
< div class = "sm2-inline-element sm2-inline-status" >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< div class = "sm2-playlist" >
< div class = "sm2-playlist-target" >
<!-- playlist <ul> + <li> markup will be injected here -->
<!-- if you want default / non - JS content, you can put that here. -->
<!-- noscript><p>JavaScript is required.</p></noscript>
< / div >
< / div >
< div class = "sm2-progress" >
< div class = "sm2-row" >
< div class = "sm2-inline-time" > 0:00< / div >
< div class = "sm2-progress-bd" >
< div class = "sm2-progress-track" >
< div class = "sm2-progress-bar" > < / div >
< div class = "sm2-progress-ball" > < div class = "icon-overlay" > < / div > < / div >
2019-01-27 10:14:38 +00:00
< / div >
2019-06-29 12:23:39 +00:00
< / div >
< div class = "sm2-inline-duration" > 0:00< / div >
< / div >
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element sm2-volume" >
< div class = "sm2-button-bd" >
< span class = "sm2-inline-button sm2-volume-control volume-shade" > < / span >
< a href = "#volume" class = "sm2-inline-button sm2-volume-control" > {{_('volume')}}< / a >
< / div >
< / div >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< / div >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< div class = "bd sm2-playlist-drawer sm2-element" >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< div class = "sm2-inline-texture" >
< div class = "sm2-box-shadow" > < / div >
< / div >
<!-- playlist content is mirrored here -->
<!-- div class="sm2 - playlist - wrapper">
< ul class = "sm2-playlist-bd" >
< li > < a href = "{{ url_for('web.serve_book', book_id=mp3file,book_format=audioformat)}}" > < b > {% for author in entry.authors %}{{author.name.replace('|',',')}}
{% if not loop.last %} & {% endif %} {% endfor %}< / b > - {{entry.title}}< / a > < / li >
< / ul >
< / div >
< / div >
< / div-- >
< div class = "sm2-bar-ui full-width fixed" >
< div class = "bd sm2-main-controls" >
< div class = "sm2-inline-texture" > < / div >
< div class = "sm2-inline-gradient" > < / div >
< div class = "sm2-inline-element sm2-button-element" >
< div class = "sm2-button-bd" >
< a href = "#play" class = "sm2-inline-button sm2-icon-play-pause" > Play / pause< / a >
< / div >
< / div >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< div class = "sm2-inline-element sm2-inline-status" >
< div class = "sm2-playlist" >
< div class = "sm2-playlist-target" >
< noscript > < p > JavaScript is required.< / p > < / noscript >
< / div >
< / div >
< div class = "sm2-progress" >
< div class = "sm2-row" >
< div class = "sm2-inline-time" > 0:00< / div >
< div class = "sm2-progress-bd" >
< div class = "sm2-progress-track" >
< div class = "sm2-progress-bar" > < / div >
< div class = "sm2-progress-ball" > < div class = "icon-overlay" > < / div > < / div >
2019-01-27 10:14:38 +00:00
< / div >
2019-06-29 12:23:39 +00:00
< / div >
< div class = "sm2-inline-duration" > 0:00< / div >
2019-01-27 10:14:38 +00:00
< / div >
2019-06-29 12:23:39 +00:00
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element sm2-volume" >
< div class = "sm2-button-bd" >
< span class = "sm2-inline-button sm2-volume-control volume-shade" > < / span >
< a href = "#volume" class = "sm2-inline-button sm2-volume-control" > volume< / a >
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element" >
< div class = "sm2-button-bd" >
< a href = "#prev" title = "Previous" class = "sm2-inline-button sm2-icon-previous" > < previous< / a >
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element" >
< div class = "sm2-button-bd" >
< a href = "#next" title = "Next" class = "sm2-inline-button sm2-icon-next" > > next< / a >
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element" >
< div class = "sm2-button-bd" >
< a href = "#repeat" title = "Repeat playlist" class = "sm2-inline-button sm2-icon-repeat" > ∞ repeat< / a >
< / div >
< / div >
< div class = "sm2-inline-element sm2-button-element sm2-menu" >
< div class = "sm2-button-bd" >
< a href = "#menu" class = "sm2-inline-button sm2-icon-menu" > menu< / a >
< / div >
< / div >
2019-01-27 10:14:38 +00:00
2019-06-29 12:23:39 +00:00
< / div >
< div class = "bd sm2-playlist-drawer sm2-element" >
< div class = "sm2-inline-texture" >
< div class = "sm2-box-shadow" > < / div >
< / div >
<!-- playlist content is mirrored here -->
< div class = "sm2-playlist-wrapper" >
< ul class = "sm2-playlist-bd" >
< li > < a href = "{{ url_for('web.serve_book', book_id=mp3file,book_format=audioformat)}}" > < b > {% for author in entry.authors %}{{author.name.replace('|',',')}}
{% if not loop.last %} & {% endif %} {% endfor %}< / b > - {{entry.title}}< / a > < / li >
< / ul >
< / div >
< / div >
< / div >
< script >
soundManager.setup({
useHTML5Audio: true,
preferFlash: false,
url: '/path/to/swf-files/',
onready: function() {
var mySound = soundManager.createSound({
// id: 'aSound',
// url: "{{ url_for('web.serve_book', book_id=mp3file,book_format=audioformat)}}"
});
mySound.play();
},
ontimeout: function() {
// Hrmm, SM2 could not start. Missing SWF? Flash blocked? Show an error, etc.?
}
});
window.calibre = {
2019-01-27 10:14:38 +00:00
filePath: "{{ url_for('static', filename='js/libs/') }}",
cssPath: "{{ url_for('static', filename='css/') }}",
bookUrl: "{{ url_for('static', filename=mp3file) }}/",
2019-02-09 17:46:36 +00:00
bookmarkUrl: "{{ url_for('web.bookmark', book_id=mp3file, book_format=audioformat.upper()) }}",
2019-01-27 10:14:38 +00:00
bookmark: "{{ bookmark.bookmark_key if bookmark != None }}",
useBookmarks: "{{ g.user.is_authenticated | tojson }}"
};
2019-06-29 12:23:39 +00:00
< / script >
2019-01-27 10:14:38 +00:00
< / body >
2019-02-09 17:46:36 +00:00
< / html >