mirror of
https://github.com/janeczku/calibre-web
synced 2024-12-26 01:50:31 +00:00
bbf6d9b026
Bugfix for feeds - removed categories related and up - load new books now working - category random now working login page is free of non accessible elements boolean custom column is vivible in UI books with only with certain languages can be shown book shelfs can be deleted from UI Anonymous user view is more resticted Added browse of series in sidebar Dependencys in vendor folder are updated to newer versions (licencs files are now present) Bugfix editing Authors names Made upload on windows working
118 lines
5.8 KiB
HTML
118 lines
5.8 KiB
HTML
{% extends "layout.html" %}
|
|
{% block body %}
|
|
{% if book %}
|
|
<div class="col-sm-3 col-lg-3 col-xs-12">
|
|
<div class="cover">
|
|
{% if book.has_cover is defined %}
|
|
<img src="{{ url_for('get_cover', cover_path=book.path) }}" />
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="col-sm-8">
|
|
<form role="form" action="{{ url_for('edit_book', book_id=book.id) }}" method="post">
|
|
<div class="form-group">
|
|
<label for="book_title">{{_('Book Title')}}</label>
|
|
<input type="text" class="form-control" name="book_title" id="book_title" value="{{book.title}}">
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="bookAuthor">{{_('Author')}}</label>
|
|
<input type="text" class="form-control typeahead" name="author_name" id="bookAuthor" value="{{' & '.join(authors)}}" autocomplete="off">
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="description">{{_('Description')}}</label>
|
|
<textarea class="form-control" name="description" id="description" rows="7">{% if book.comments %}{{book.comments[0].text}}{%endif%}</textarea>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="tags">{{_('Tags')}}</label>
|
|
<input type="text" class="form-control typeahead" name="tags" id="tags" value="{% for tag in book.tags %}{{tag.name.strip()}}, {% endfor %}">
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="series">{{_('Series')}}</label>
|
|
<input type="text" class="form-control typeahead" name="series" id="series" value="{% if book.series %}{{book.series[0].name}}{% endif %}">
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="series_index">{{_('Series id')}}</label>
|
|
<input type="text" class="form-control" name="series_index" id="series_index" value="{{book.series_index}}">
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="rating">{{_('Rating')}}</label>
|
|
<input type="number" min="1" max="5" step="1" class="form-control" name="rating" id="rating" value="{% if book.ratings %}{{book.ratings[0].rating / 2}}{% endif %}">
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="cover_url">{{_('Cover URL (jpg)')}}</label>
|
|
<input type="text" class="form-control" name="cover_url" id="cover_url" value="">
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="languages">{{_('Language')}}</label>
|
|
<input type="text" class="form-control typeahead" name="languages" id="languages" value="{% for language in book.languages %}{{language.language_name.strip()}}, {% endfor %}">
|
|
</div>
|
|
|
|
{% if cc|length > 0 %}
|
|
{% for c in cc %}
|
|
<div class="form-group">
|
|
<label for="{{ 'custom_column_' ~ c.id }}">{{ c.name }}</label>
|
|
{% if c.datatype == 'bool' %}
|
|
<select name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" class="form-control">
|
|
<option value="None" {% if book['custom_column_' ~ c.id]|length == 0 %} selected {% endif %}></option>
|
|
<option value="True" {% if book['custom_column_' ~ c.id]|length > 0 %}{% if book['custom_column_' ~ c.id][0].value ==true %}selected{% endif %}{% endif %} >{{_('Yes')}}</option>
|
|
<option value="False" {% if book['custom_column_' ~ c.id]|length > 0 %}{% if book['custom_column_' ~ c.id][0].value ==false %}selected{% endif %}{% endif %}>{{_('No')}}</option>
|
|
</select>
|
|
{% endif %}
|
|
{% if c.datatype in ['text', 'series'] and not c.is_multiple %}
|
|
<input type="text" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}"
|
|
{% if book['custom_column_' ~ c.id]|length > 0 %}
|
|
value="{{ book['custom_column_' ~ c.id][0].value }}"
|
|
{% endif %}>
|
|
{% endif %}
|
|
|
|
{% if c.datatype in ['text', 'series'] and c.is_multiple %}
|
|
<input type="text" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}"
|
|
{% if book['custom_column_' ~ c.id]|length > 0 %}
|
|
value="{% for column in book['custom_column_' ~ c.id] %}{{ column.value.strip() }}{% if not loop.last %}, {% endif %}{% endfor %}"{% endif %}>
|
|
{% endif %}
|
|
|
|
{% if c.datatype == 'enumeration' %}
|
|
<select class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}">
|
|
<option></option>
|
|
{% for opt in c.get_display_dict().enum_values %}
|
|
<option
|
|
{% if book['custom_column_' ~ c.id]|length > 0 %}
|
|
{% if book['custom_column_' ~ c.id][0].value == opt %}selected="selected"{% endif %}
|
|
{% endif %}
|
|
>{{ opt }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
{% endif %}
|
|
|
|
{% if c.datatype == 'rating' %}
|
|
<input type="number" min="1" max="5" step="1" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}"
|
|
{% if book['custom_column_' ~ c.id]|length > 0 %}
|
|
value="{{ '%d' % (book['custom_column_' ~ c.id][0].value / 2) }}"
|
|
{% endif %}>
|
|
{% endif %}
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
|
|
<div class="checkbox">
|
|
<label>
|
|
<input name="detail_view" type="checkbox" checked> {{_('view book after edit')}}
|
|
</label>
|
|
</div>
|
|
<button type="submit" class="btn btn-default">{{_('Submit')}}</button>
|
|
</form>
|
|
</div>
|
|
{% endif %}
|
|
{% endblock %}
|
|
|
|
{% block js %}
|
|
<script src="{{ url_for('static', filename='js/typeahead.bundle.js') }}"></script>
|
|
<script src="{{ url_for('static', filename='js/edit_books.js') }}"></script>
|
|
{% endblock %}
|
|
{% block header %}
|
|
<link href="{{ url_for('static', filename='css/typeahead.css') }}" rel="stylesheet" media="screen">
|
|
{% endblock %}
|