<!DOCTYPE html> <html> <head> <title>calibre web | {{title}}</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="apple-mobile-web-app-capable" content="yes"> <!-- Bootstrap --> <link rel="shortcut icon" href="{{ url_for('static', filename='favicon.ico') }}"> <link href="{{ url_for('static', filename='css/bootstrap.min.css') }}" rel="stylesheet" media="screen"> <link href="{{ url_for('static', filename='css/style.css') }}" rel="stylesheet" media="screen"> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script> <![endif]--> <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="https://code.jquery.com/jquery.js"></script> <!-- Include all compiled plugins (below), or include individual files as needed --> <script src="{{ url_for('static', filename='js/bootstrap.min.js') }}"></script> <script src="{{ url_for('static', filename='js/underscore.min.js') }}"></script> <script src="{{ url_for('static', filename='js/intention.js') }}"></script> <script src="{{ url_for('static', filename='js/context.js') }}"></script> <script src="{{ url_for('static', filename='js/plugins.js') }}"></script> <script src="{{ url_for('static', filename='js/main.js') }}"></script> {% block header %}{% endblock %} </head> <body> <script> $(document).ready(function(){ $("#btn-upload").change(function() { $("#form-upload").submit(); }); }); </script> <!-- Static navbar --> <div class="navbar navbar-default navbar-static-top" role="navigation"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">{{_('Toggle navigation')}}</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="{{url_for('index')}}">Calibre Web</a> </div> <div class="navbar-collapse collapse"> {% if g.user.is_authenticated or g.user.is_anonymous() %} <ul class="nav navbar-nav "> <li> <form class="navbar-form navbar-left" role="search" action="{{url_for('search')}}" method="GET"> <div class="form-group"> <input type="text" class="form-control" name="query" placeholder="{{_('Search')}}"> </div> <button type="submit" class="btn btn-default">{{_('Go!')}}</button> </form> </li> <li><a href="{{url_for('advanced_search')}}"><span class="glyphicon glyphicon-search"></span> {{_('Advanced Search')}}</a></li> </ul> {% endif %} <ul class="nav navbar-nav navbar-right" id="main-nav"> {% if g.user.is_authenticated or g.user.is_anonymous() %} {% if g.user.role_upload() or g.user.role_admin()%} {% if g.allow_upload %} <li> <form id="form-upload" class="navbar-form" action="{{ url_for('upload') }}" method="post" enctype="multipart/form-data"> <div class="form-group"> <span class="btn btn-default btn-file">{{_('Upload')}} <input id="btn-upload" name="btn-upload" type="file"></span> </div> </form> </li> {% endif %} {% endif %} {% if g.user.role_admin() %} <li><a href="{{url_for('user_list')}}"><span class="glyphicon glyphicon-dashboard"></span> {{_('Admin')}}</a></li> {% endif %} <li><a href="{{url_for('profile')}}"><span class="glyphicon glyphicon-user"></span> {{g.user.nickname}}</a></li> {% if not g.user.is_anonymous() %} <li><a href="{{url_for('logout', next='%s%s' % (request.script_root, request.path))}}"><span class="glyphicon glyphicon-log-out"></span> {{_('Logout')}}</a></li> {% endif %} {% endif %} {% if g.allow_registration and not g.user.is_authenticated %} <li><a href="{{url_for('login', next='%s%s' % (request.script_root, request.path))}}"><span class="glyphicon glyphicon-log-in"></span> {{_('Login')}}</a></li> <li><a href="{{url_for('register')}}"><span class="glyphicon glyphicon-user"></span> {{_('Register')}}</a></li> {% endif %} </ul> </div><!--/.nav-collapse --> </div> </div> {% for message in get_flashed_messages(with_categories=True) %} {%if message[0] == "error" %} <div class="row-fluid" style="margin-top: -20px; text-align: center;"> <div class="alert alert-danger">{{ message[1] }}</div> </div> {%endif%} {%if message[0] == "info" %} <div class="row-fluid" style="margin-top: -20px; text-align: center;"> <div class="alert alert-info">{{ message[1] }}</div> </div> {%endif%} {%if message[0] == "success" %} <div class="row-fluid" style="margin-top: -20px; text-align: center;"> <div class="alert alert-success">{{ message[1] }}</div> </div> {%endif%} {% endfor %} <div class="container-fluid"> <div class="row-fluid"> {% if g.user.is_authenticated or g.user.is_anonymous() %} <div class="col-sm-2"> <nav class="navigation"> <ul class="list-unstyled" id="scnd-nav" intent in-standard-append="nav.navigation" in-mobile-after="#main-nav" in-mobile-class="nav navbar-nav"> <li class="nav-head hidden-xs">{{_('Browse')}}</li> <li><a href="{{url_for('index')}}"><span class="glyphicon glyphicon-book"></span> {{_('New Books')}}</a></li> {% if g.user.show_hot_books() %} <li><a href="{{url_for('hot_books')}}"><span class="glyphicon glyphicon-fire"></span> {{_('Hot Books')}}</a></li> {%endif%} {% if g.user.show_random_books() %} <li><a href="{{url_for('discover')}}"><span class="glyphicon glyphicon-random"></span> {{_('Discover')}}</a></li> {%endif%} {% if g.user.show_category() %} <li><a href="{{url_for('category_list')}}"><span class="glyphicon glyphicon-inbox"></span> {{_('Categories')}}</a></li> {%endif%} {% if g.user.show_series() %} <li><a href="{{url_for('series_list')}}"><span class="glyphicon glyphicon-bookmark"></span> {{_('Series')}}</a></li> {%endif%} <li><a href="{{url_for('author_list')}}"><span class="glyphicon glyphicon-user"></span> {{_('Authors')}}</a></li> {% if g.user.filter_language() == 'all' and g.user.show_language() %} <li><a href="{{url_for('language_overview')}}"><span class="glyphicon glyphicon-flag"></span> {{_('Languages')}} </a></li> {%endif%} {% if g.user.is_authenticated or g.user.is_anonymous() %} <li class="nav-head hidden-xs">{{_('Public Shelves')}}</li> {% for shelf in g.public_shelfes %} <li><a href="{{url_for('show_shelf', shelf_id=shelf.id)}}"><span class="glyphicon glyphicon-list"></span> {{shelf.name}}</a></li> {% endfor %} <li class="nav-head hidden-xs">{{_('Your Shelves')}}</li> {% for shelf in g.user.shelf %} <li><a href="{{url_for('show_shelf', shelf_id=shelf.id)}}"><span class="glyphicon glyphicon-list"></span> {{shelf.name}}</a></li> {% endfor %} {% if not g.user.is_anonymous() %} <li class="create-shelf"><a href="{{url_for('create_shelf')}}">{{_('Create a Shelf')}}</a></li> {% endif %} {% endif %} <li><a href="{{url_for('stats')}}"><span class="glyphicon glyphicon-info-sign"></span> {{_('About')}}</a></li> </ul> </nav> </div> {% endif %} <div class="col-sm-10"> {% block body %}{% endblock %} {% if pagination %} <div class="pagination"> {%- for page in pagination.iter_pages() %} {% if page %} {% if page != pagination.page %} <a href="{{ url_for_other_page(page) }}">{{ page }}</a> {% else %} <strong>{{ page }}</strong> {% endif %} {% else %} <span class="ellipsis">…</span> {% endif %} {%- endfor %} {% if pagination.has_next %} <a class="next" href="{{ url_for_other_page(pagination.page + 1) }}">Next »</a> {% endif %} </div> {% endif %} </div> </div> </div> {% block js %}{% endblock %} </body> </html>