Merge remote-tracking branch 'theme/master'
Added translations for some tooltips Updated translations
This commit is contained in:
commit
c527d1f49a
100
cps/static/css/caliBlur.min.css
vendored
100
cps/static/css/caliBlur.min.css
vendored
File diff suppressed because one or more lines are too long
|
@ -1,6 +1,12 @@
|
||||||
// Move advanced search to side-menu
|
// Move advanced search to side-menu
|
||||||
$( 'a[href*="advanced"]' ).parent().insertAfter( '#nav_new' );
|
$( 'a[href*="advanced"]' ).parent().insertAfter( '#nav_new' );
|
||||||
$( 'body' ).addClass('blur');
|
$( 'body' ).addClass('blur');
|
||||||
|
$( 'body.stat' ).addClass( 'stats' );
|
||||||
|
$( 'body.config' ).addClass( 'admin');
|
||||||
|
$( 'body.uiconfig' ).addClass( 'admin');
|
||||||
|
$( 'body.advsearch' ).addClass( 'advanced_search' );
|
||||||
|
$( 'body.newuser' ).addClass( 'admin' );
|
||||||
|
$( 'body.mailset' ).addClass( 'admin' );
|
||||||
|
|
||||||
// Back button
|
// Back button
|
||||||
curHref = window.location.href.split('/');
|
curHref = window.location.href.split('/');
|
||||||
|
@ -34,99 +40,7 @@ $( 'a.navbar-brand' ).clone().appendTo( '.home-btn' ).empty().removeClass('navba
|
||||||
|
|
||||||
// Wrap book description in div container
|
// Wrap book description in div container
|
||||||
if ( $( 'body.book' ).length > 0 ) {
|
if ( $( 'body.book' ).length > 0 ) {
|
||||||
|
|
||||||
/* description = $( 'h3:contains("Description:")' ).nextUntil( '.morestuff' ).slice(0,-1);
|
|
||||||
bookInfo = $( '.author' ).nextUntil( 'h3:contains("Description:")');
|
|
||||||
$( 'h3:contains("Description:")' ).hide();
|
|
||||||
$( description ).detach();
|
|
||||||
$( bookInfo ).wrapAll( '<div class="bookinfo"></div>' );
|
|
||||||
$( 'h3:contains("Description:")' ).after( '<div class="description"></div>' );
|
|
||||||
$( '.languages' ).appendTo( '.bookinfo' );
|
|
||||||
$('.hr').detach();
|
|
||||||
if ( $( '.identifiers ').length > 0 ) {
|
|
||||||
console.log(".identifiers length " + $( '.identifiers ').length );
|
|
||||||
$( '.identifiers' ).before( '<div class="hr"></div>' );
|
|
||||||
} else {
|
|
||||||
if ( $( '.bookinfo > p:first-child' ).length > 0 ) {
|
|
||||||
console.log(".bookinfo > p:first-child length " + $( '.bookinfo > p' ).length );
|
|
||||||
$( '.bookinfo > p:first-child' ).first().after( '<div class="hr"></div>' );
|
|
||||||
} else{
|
|
||||||
if ( $( '.bookinfo a[href*="/series/"]' ).length > 0 ) {
|
|
||||||
console.log( 'series text found; placing hr below series' );
|
|
||||||
$( '.bookinfo a[href*="/series/"]' ).parent().after( '<div class="hr"></div>' );
|
|
||||||
} else {
|
|
||||||
console.log("prepending hr div to top of .bookinfo");
|
|
||||||
$( '.bookinfo' ).prepend( '<div class="hr"></div>' );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$( '.rating' ).insertBefore( '.hr' );
|
|
||||||
$( 'div.description' ).hide();
|
|
||||||
$( '#remove-from-shelves' ).insertAfter( '.hr' );
|
|
||||||
|
|
||||||
/* if book description is not in html format, Remove extra line breaks
|
|
||||||
Remove blank lines/unnecessary spaces, split by line break to array
|
|
||||||
Push array into .description div. If there is still a wall of text,
|
|
||||||
find sentences and split wall into groups of three sentence paragraphs.
|
|
||||||
If the book format is in html format, Keep html, but strip away inline
|
|
||||||
styles and empty elements */
|
|
||||||
/*
|
|
||||||
// If text is sitting in div as text node
|
|
||||||
if ( description[0] === undefined ) {
|
|
||||||
textValue = $( '.book-meta' )
|
|
||||||
.contents()
|
|
||||||
.filter(function() {
|
|
||||||
return this.nodeType == Node.TEXT_NODE;
|
|
||||||
}).text();
|
|
||||||
description = $.makeArray(
|
|
||||||
textValue.replace(/(?:(?:\r\n|\r|\n)\s*){2}/gm, "")
|
|
||||||
);
|
|
||||||
$( '.book-meta' ).contents().filter(function() {
|
|
||||||
return this.nodeType === 3;
|
|
||||||
}).remove();
|
|
||||||
}
|
|
||||||
if ( description[1] === undefined ) {
|
|
||||||
newdesc = description.toString()
|
|
||||||
.replace(/^(?=\n)$|^\s*|\s*$|\n\n+/gm,"").split(/\n/);
|
|
||||||
$.each(newdesc, function(i, val) {
|
|
||||||
$( 'div.description' ).append( '<p>' + newdesc[i] + '</p>' );
|
|
||||||
});
|
|
||||||
$( '.description' ).fadeIn(100);
|
|
||||||
//If still a wall of text create 3 sentence paragraphs.
|
|
||||||
if( $( '.description p' ).length === 1 ) {
|
|
||||||
if ( description.context != undefined ) {
|
|
||||||
newdesc = description.text()
|
|
||||||
.replace(/^(?=\n)$|^\s*|\s*$|\n\n+/gm,"").split(/\n/);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
newdesc = description.toString();
|
|
||||||
}
|
|
||||||
doc = nlp ( newdesc.toString() );
|
|
||||||
sentences = doc.map((m)=> m.out( 'text' ));
|
|
||||||
$( '.description p' ).remove();
|
|
||||||
let size = 3; let sentenceChunks = [];
|
|
||||||
for (var i=0; i<sentences.length; i+=size) {
|
|
||||||
sentenceChunks.push(sentences.slice(i,i+size));
|
|
||||||
}
|
|
||||||
let output = '';
|
|
||||||
$.each(sentenceChunks, function(i, val) {
|
|
||||||
let preOutput = '';
|
|
||||||
$.each(val, function(i, val) {
|
|
||||||
preOutput += val;
|
|
||||||
});
|
|
||||||
output += '<p>' + preOutput + '</p>';
|
|
||||||
});
|
|
||||||
$( 'div.description' ).append( output );
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$.each(description, function(i, val) {
|
|
||||||
$( description[i].outerHTML ).appendTo( '.description' );
|
|
||||||
$( 'div.description :empty' ).remove();
|
|
||||||
$( 'div.description ').attr( 'style', '' );
|
|
||||||
});
|
|
||||||
$( 'div.description' ).fadeIn( 100 );
|
|
||||||
}*/
|
|
||||||
|
|
||||||
description = $( '.comments' );
|
description = $( '.comments' );
|
||||||
bookInfo = $( '.author' ).nextUntil( 'h3:contains("Description")');
|
bookInfo = $( '.author' ).nextUntil( 'h3:contains("Description")');
|
||||||
$( 'h3:contains("Description")' ).detach();
|
$( 'h3:contains("Description")' ).detach();
|
||||||
|
@ -240,7 +154,6 @@ return $(this).text().replace(/^\s+|^\t+|\t+|\s+$/g, "");
|
||||||
$( '.book-meta h2:first' ).clone()
|
$( '.book-meta h2:first' ).clone()
|
||||||
.prependTo( '.book-meta > .btn-toolbar:first' );
|
.prependTo( '.book-meta > .btn-toolbar:first' );
|
||||||
|
|
||||||
|
|
||||||
// If only one download type exists still put the items into a drop-drown list.
|
// If only one download type exists still put the items into a drop-drown list.
|
||||||
downloads = $( 'a[id^=btnGroupDrop]' ).get();
|
downloads = $( 'a[id^=btnGroupDrop]' ).get();
|
||||||
if ( $( downloads ).length === 1 ) {
|
if ( $( downloads ).length === 1 ) {
|
||||||
|
@ -385,18 +298,6 @@ $(document).mouseup(function (e) {
|
||||||
|
|
||||||
// Split path name to array and remove blanks
|
// Split path name to array and remove blanks
|
||||||
url = window.location.pathname
|
url = window.location.pathname
|
||||||
.split( "/" ).filter( function(v){return v!==''} );
|
|
||||||
// Add classes to some body elements that don't have it
|
|
||||||
if ( jQuery.inArray( 'epub', url ) != -1 ) {
|
|
||||||
$( 'body' ).addClass( url[3] );
|
|
||||||
} else {
|
|
||||||
$( 'body' ).addClass( url[1] );
|
|
||||||
}
|
|
||||||
if ( $( 'body.shelf' ).length > 0 ) {
|
|
||||||
$( 'a[href*= "'+url[1]+"/"+url[2]+'"]' )
|
|
||||||
.parent()
|
|
||||||
.addClass( 'active' );
|
|
||||||
}
|
|
||||||
|
|
||||||
// Move create shelf
|
// Move create shelf
|
||||||
$( '#nav_createshelf' ).prependTo( '.your-shelves' );
|
$( '#nav_createshelf' ).prependTo( '.your-shelves' );
|
||||||
|
@ -434,13 +335,7 @@ $( 'input#query' ).focusout(function() {
|
||||||
$( 'form[role="search"]' ).removeClass( 'search-focus' );
|
$( 'form[role="search"]' ).removeClass( 'search-focus' );
|
||||||
}, 100);
|
}, 100);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Add class to random book discover
|
|
||||||
// ToDo: done
|
|
||||||
$( 'h2:contains("Discover (Random Books")' )
|
|
||||||
.parent()
|
|
||||||
.addClass( 'random-books' );
|
|
||||||
|
|
||||||
// Check if dropdown goes out of viewport and add class
|
// Check if dropdown goes out of viewport and add class
|
||||||
|
|
||||||
$(document).on('click','.dropdown-toggle',function() {
|
$(document).on('click','.dropdown-toggle',function() {
|
||||||
|
@ -454,7 +349,7 @@ $(document).on('click','.dropdown-toggle',function() {
|
||||||
|
|
||||||
// Fade out content on page unload
|
// Fade out content on page unload
|
||||||
// delegate all clicks on "a" tag (links)
|
// delegate all clicks on "a" tag (links)
|
||||||
$(document).on("click", "a:not(.btn-toolbar a, a[href*='shelf/remove'], .identifiers a, .bookinfo , .btn-group > a, #add-to-shelves a, #book-list a, .stat.blur.stats a )", function () {
|
/*$(document).on("click", "a:not(.btn-toolbar a, a[href*='shelf/remove'], .identifiers a, .bookinfo , .btn-group > a, #add-to-shelves a, #book-list a, .stat.blur a )", function () {
|
||||||
|
|
||||||
// get the href attribute
|
// get the href attribute
|
||||||
var newUrl = $(this).attr("href");
|
var newUrl = $(this).attr("href");
|
||||||
|
@ -466,7 +361,7 @@ $(document).on("click", "a:not(.btn-toolbar a, a[href*='shelf/remove'], .identif
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// now, fadeout the html (whole page)
|
now, fadeout the html (whole page)
|
||||||
$( '.blur-wrapper' ).fadeOut(250);
|
$( '.blur-wrapper' ).fadeOut(250);
|
||||||
$(".row-fluid .col-sm-10").fadeOut(500,function () {
|
$(".row-fluid .col-sm-10").fadeOut(500,function () {
|
||||||
// when the animation is complete, set the new location
|
// when the animation is complete, set the new location
|
||||||
|
@ -475,7 +370,7 @@ $(document).on("click", "a:not(.btn-toolbar a, a[href*='shelf/remove'], .identif
|
||||||
|
|
||||||
// prevent the default browser behavior.
|
// prevent the default browser behavior.
|
||||||
return false;
|
return false;
|
||||||
});
|
});*/
|
||||||
|
|
||||||
// Collapse long text into read-more
|
// Collapse long text into read-more
|
||||||
$( 'div.comments' ).readmore( {
|
$( 'div.comments' ).readmore( {
|
||||||
|
@ -507,7 +402,7 @@ backurl = '../../book/' + url[2]
|
||||||
$( 'body.epub #title-controls' )
|
$( 'body.epub #title-controls' )
|
||||||
.append('<div class="epub-back"><input action="action" onclick="location.href=backurl; return false;" type="button" value="Back" /></div>')
|
.append('<div class="epub-back"><input action="action" onclick="location.href=backurl; return false;" type="button" value="Back" /></div>')
|
||||||
|
|
||||||
$( 'body.stats .col-sm-10 p:first' ).insertAfter( '#libs' );
|
$( 'body.stat .col-sm-10 p:first' ).insertAfter( '#libs' );
|
||||||
|
|
||||||
// Check if link is external and force _blank attribute
|
// Check if link is external and force _blank attribute
|
||||||
$(function(){ // document ready
|
$(function(){ // document ready
|
||||||
|
@ -593,7 +488,7 @@ $( '.plexBack > a' ).attr({
|
||||||
|
|
||||||
$( '#top_tasks' ).attr({
|
$( '#top_tasks' ).attr({
|
||||||
'data-toggle': 'tooltip',
|
'data-toggle': 'tooltip',
|
||||||
'title': 'Tasks',
|
'title': $( '#top_tasks' ).text(), //'Tasks',
|
||||||
'data-placement': 'bottom',
|
'data-placement': 'bottom',
|
||||||
'data-viewport': '#main-nav' })
|
'data-viewport': '#main-nav' })
|
||||||
.addClass('tasks-btn-tooltip');
|
.addClass('tasks-btn-tooltip');
|
||||||
|
@ -614,18 +509,20 @@ $( '.profileDrop' ).attr({
|
||||||
|
|
||||||
$( '#btn-upload' ).attr({
|
$( '#btn-upload' ).attr({
|
||||||
'data-toggle': 'tooltip',
|
'data-toggle': 'tooltip',
|
||||||
'title': 'Upload',
|
'title': $( '#btn-upload' ).text() , // 'Upload',
|
||||||
'data-placement': 'bottom',
|
'data-placement': 'bottom',
|
||||||
'data-viewport': '#main-nav' })
|
'data-viewport': '#main-nav' })
|
||||||
.addClass('upload-btn-tooltip');
|
.addClass('upload-btn-tooltip');
|
||||||
|
|
||||||
$( '#add-to-shelf' ).attr({
|
$( '#add-to-shelf' ).attr({
|
||||||
'data-toggle-two': 'tooltip',
|
'data-toggle-two': 'tooltip',
|
||||||
'title': 'Add to Shelf',
|
'title': $( '#add-to-shelf' ).text() , // 'Add to Shelf',
|
||||||
'data-placement': 'bottom',
|
'data-placement': 'bottom',
|
||||||
'data-viewport': '.btn-toolbar' })
|
'data-viewport': '.btn-toolbar' })
|
||||||
.addClass('addtoshelf-btn-tooltip');
|
.addClass('addtoshelf-btn-tooltip');
|
||||||
|
|
||||||
|
var teetet = $( '#add-to-shelf' ).text()
|
||||||
|
|
||||||
$( '#have_read_cb' ).attr({
|
$( '#have_read_cb' ).attr({
|
||||||
'data-toggle': 'tooltip',
|
'data-toggle': 'tooltip',
|
||||||
'title': 'Mark As Read',
|
'title': 'Mark As Read',
|
||||||
|
@ -642,7 +539,7 @@ $( '#have_read_cb:checked' ).attr({
|
||||||
|
|
||||||
$( 'button#delete' ).attr({
|
$( 'button#delete' ).attr({
|
||||||
'data-toggle-two': 'tooltip',
|
'data-toggle-two': 'tooltip',
|
||||||
'title': 'Delete',
|
'title': $( 'button#delete' ).text(), //'Delete',
|
||||||
'data-placement': 'bottom',
|
'data-placement': 'bottom',
|
||||||
'data-viewport': '.btn-toolbar' })
|
'data-viewport': '.btn-toolbar' })
|
||||||
.addClass('delete-book-btn-tooltip');
|
.addClass('delete-book-btn-tooltip');
|
||||||
|
@ -657,11 +554,13 @@ $( '#have_read_cb' ).click(function() {
|
||||||
|
|
||||||
$( '.btn-group[aria-label="Edit/Delete book"] a' ).attr({
|
$( '.btn-group[aria-label="Edit/Delete book"] a' ).attr({
|
||||||
'data-toggle': 'tooltip',
|
'data-toggle': 'tooltip',
|
||||||
'title': 'Edit',
|
'title': $( '#edit_book' ).text(), // 'Edit',
|
||||||
'data-placement': 'bottom',
|
'data-placement': 'bottom',
|
||||||
'data-viewport': '.btn-toolbar' })
|
'data-viewport': '.btn-toolbar' })
|
||||||
.addClass('edit-btn-tooltip');
|
.addClass('edit-btn-tooltip');
|
||||||
|
|
||||||
|
var teetet = $( '#edit_book' ).text()
|
||||||
|
|
||||||
$( '#sendbtn' ).attr({
|
$( '#sendbtn' ).attr({
|
||||||
'data-toggle': 'tooltip',
|
'data-toggle': 'tooltip',
|
||||||
'title': 'Send to Kindle',
|
'title': 'Send to Kindle',
|
||||||
|
@ -742,10 +641,10 @@ if ( $( window ).width() <= 768 ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// LayerCake plug
|
// LayerCake plug
|
||||||
if ( $(' .stat.blur.stats p').length > 0 ) {
|
if ( $(' body.stat p').length > 0 ) {
|
||||||
$(' .stat.blur.stats p').append(" and <a href='https://github.com/leram84/layer.Cake/tree/master/caliBlur' target='_blank'>layer.Cake</a>");
|
$(' body.stat p').append(" and <a href='https://github.com/leram84/layer.Cake/tree/master/caliBlur' target='_blank'>layer.Cake</a>");
|
||||||
str = $(' .stat.blur.stats p').html().replace("</a>.","</a>");
|
str = $(' body.stat p').html().replace("</a>.","</a>");
|
||||||
$(' .stat.blur.stats p').html(str);
|
$(' body.stat p').html(str);
|
||||||
}
|
}
|
||||||
// Collect delete buttons in editbook to single dropdown
|
// Collect delete buttons in editbook to single dropdown
|
||||||
$( '.editbook .text-center.more-stuff' ).prepend( '<button id="deleteButton" type="button" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span class="glyphicon glyphicon-remove"></span>Delete Format<span class="caret"></span></button><ul class="dropdown-menu delete-dropdown"></ul>' );
|
$( '.editbook .text-center.more-stuff' ).prepend( '<button id="deleteButton" type="button" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span class="glyphicon glyphicon-remove"></span>Delete Format<span class="caret"></span></button><ul class="dropdown-menu delete-dropdown"></ul>' );
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
<label for="config_theme">{{_('Theme')}}</label>
|
<label for="config_theme">{{_('Theme')}}</label>
|
||||||
<select name="config_theme" id="config_theme" class="form-control">
|
<select name="config_theme" id="config_theme" class="form-control">
|
||||||
<option value="0" {% if content.config_theme == 0 %}selected{% endif %}>{{ _("Standard Theme") }}</option>
|
<option value="0" {% if content.config_theme == 0 %}selected{% endif %}>{{ _("Standard Theme") }}</option>
|
||||||
<option value="1" {% if content.config_theme == 1 %}selected{% endif %}>{{ _("caliBlur! Dark Theme (Beta)") }}</option>
|
<option value="1" {% if content.config_theme == 1 %}selected{% endif %}>{{ _("caliBlur! Dark Theme") }}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
429
messages.pot
429
messages.pot
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user