Fixed typeahead with reverse proxy

fixed marking of tags in advanced search
seperated js and html
pull/102/head
OzzieIsaacs 8 years ago
parent d5a64baf13
commit 18a06e4a25

@ -16,6 +16,11 @@
cb(matches);
});
}
function get_path(){
var jsFileLocation = $('script[src*=edit_books]').attr('src'); // the js file path
jsFileLocation = jsFileLocation.replace('/static/js/edit_books.js', ''); // the js folder path
return jsFileLocation;
}
var authors = new Bloodhound({
name: 'authors',
@ -24,7 +29,7 @@
},
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: '/get_authors_json?q=%QUERY'
url: get_path()+'/get_authors_json?q=%QUERY'
}
});
@ -68,7 +73,7 @@
return [query];
},
remote: {
url: '/get_series_json?q=',
url: get_path()+'/get_series_json?q=',
replace: function(url, query) {
url_query = url+encodeURIComponent(query);
return url_query;
@ -99,7 +104,7 @@
return tokens
},
remote: {
url: '/get_tags_json?q=%QUERY'
url: get_path()+'/get_tags_json?q=%QUERY'
}
});
@ -141,7 +146,7 @@
return [query];
},
remote: {
url: '/get_languages_json?q=',
url: get_path()+'/get_languages_json?q=',
replace: function(url, query) {
url_query = url+encodeURIComponent(query);
return url_query;
@ -177,3 +182,19 @@
}
)
});
$('form').on('change input typeahead:selected', function(data){
form = $('form').serialize();
$.getJSON( get_path()+"/get_matching_tags", form, function( data ) {
$('.tags_click').each(function() {
if ($.inArray(parseInt($(this).children('input').first().val(), 10), data.tags) == -1 ) {
if (!($(this).hasClass('active'))) {
$(this).addClass('disabled');
}
}
else {
$(this).removeClass('disabled');
}
});
});
});

@ -25,6 +25,39 @@ $(function() {
$this.text('Please wait...');
$this.addClass('disabled');
});
$("#restart").click(function() {
$.ajax({
dataType: 'json',
url: window.location.pathname+"/../../shutdown",
data: {"parameter":0},
success: function(data) {
return alert(data.text);}
});
});
$("#shutdown").click(function() {
$.ajax({
dataType: 'json',
url: window.location.pathname+"/../../shutdown",
data: {"parameter":1},
success: function(data) {
return alert(data.text);}
});
});
$("#check_for_update").click(function() {
var button_text = $("#check_for_update").html();
$("#check_for_update").html('Checking...');
$.ajax({
dataType: 'json',
url: window.location.pathname+"/../../get_update_status",
success: function(data) {
if (data.status == true) {
$("#check_for_update").addClass('hidden');
$("#perform_update").removeClass('hidden');
}else{
$("#check_for_update").html(button_text);
};}
});
});
});

@ -115,40 +115,3 @@
</div>
{% endblock %}
{% block js %}
<script type="text/javascript">
$("#restart").click(function() {
$.ajax({
dataType: 'json',
url: "{{url_for('shutdown')}}",
data: {"parameter":0},
//data: data,
success: function(data) {
return alert(data.text);}
});
});
$("#shutdown").click(function() {
$.ajax({
dataType: 'json',
url: "{{url_for('shutdown')}}",
data: {"parameter":1},
success: function(data) {
return alert(data.text);}
});
});
$("#check_for_update").click(function() {
$("#check_for_update").html('Checking...');
$.ajax({
dataType: 'json',
url: "{{url_for('get_update_status')}}",
success: function(data) {
if (data.status == true) {
$("#check_for_update").addClass('hidden');
$("#perform_update").removeClass('hidden');
}else{
$("#check_for_update").html('{{_('Check for update')}}');
};}
});
});
</script>
{% endblock %}

@ -4,7 +4,7 @@
<div class="col-sm-3 col-lg-3 col-xs-12">
<div class="cover">
{% if book.has_cover %}
<img src="{{ url_for('get_cover', cover_path=book.path) }}" />
<img src="{{ url_for('get_cover', cover_path=book.path.replace('\\','/')) }}" />
{% else %}
<img src="{{ url_for('static', filename='generic_cover.jpg') }}" />
{% endif %}

@ -40,7 +40,7 @@
{% endfor %}
</div>
</div>
<label for="Tags">{{_('Exclude Series')}}</label>
<label for="Series">{{_('Exclude Series')}}</label>
<div class="form-group">
<div class="btn-toolbar btn-toolbar-lg" data-toggle="buttons">
{% for serie in series %}
@ -81,21 +81,6 @@
<script src="{{ url_for('static', filename='js/typeahead.bundle.js') }}"></script>
<script src="{{ url_for('static', filename='js/edit_books.js') }}"></script>
<script>
$('form')}}.on('change input typeahead:selected', function() {
form = $('form')}}.serialize();
$.getJSON( "{{ url_for('get_matching_tags') }}", form, function( data ) {
$('.tags_click').each(function() {
if ($.inArray(parseInt($(this).children('input').first().val(), 10), data.tags) == -1 ) {
if (!($(this).hasClass('active'))) {
$(this).addClass('disabled');
}
}
else {
$(this).removeClass('disabled');
}
});
});
});
</script>
{% endblock %}
{% block header %}

Loading…
Cancel
Save