mirror of
				https://github.com/janeczku/calibre-web
				synced 2025-10-31 15:23:02 +00:00 
			
		
		
		
	Simplify the read functionality's code
* Use block label to toggle the checkbox * Submit form when checkbox's value changes (regardless of whether mouse is used or not) * Remove unused code
This commit is contained in:
		| @@ -52,3 +52,4 @@ span.glyphicon.glyphicon-tags {padding-right: 5px;color: #999;vertical-align: te | ||||
| .spinner {margin:0 41%;} | ||||
| .spinner2 {margin:0 41%;} | ||||
|  | ||||
| .block-label {display: block;} | ||||
|   | ||||
| @@ -109,10 +109,12 @@ | ||||
|       {% endif %}   | ||||
|       {% if not g.user.is_anonymous() %} | ||||
|       <p> | ||||
|         <div class="custom_columns" id="have_read_container"> | ||||
|           <form id="have_read_form" action="{{ url_for('toggle_read', book_id=entry.id)}}" method="POST") > | ||||
|         <div class="custom_columns"> | ||||
|           <form id="have_read_form" action="{{ url_for('toggle_read', book_id=entry.id)}}" method="POST"> | ||||
|             <label class="block-label"> | ||||
|               <input id="have_read_cb" type="checkbox" {% if have_read %}checked{% endif %} > | ||||
|             <label for="have_read_cb">{{_('Read')}}</label> | ||||
|               <span>{{_('Read')}}</span> | ||||
|             </label> | ||||
|           </form> | ||||
|         </div> | ||||
|       </p> | ||||
| @@ -222,28 +224,10 @@ | ||||
| <script src="{{ url_for('static', filename='js/libs/jquery.form.js') }}"></script> | ||||
| <script> | ||||
|   $( document ).ready(function() { | ||||
|     var haveReadForm = $('#have_read_form'); | ||||
|     haveReadForm.ajaxForm(); | ||||
|     $('#have_read_form').ajaxForm(); | ||||
|   }); | ||||
|   $("#have_read_container").attr('unselectable','on') | ||||
|      .css({'-moz-user-select':'-moz-none', | ||||
|            '-moz-user-select':'none', | ||||
|            '-o-user-select':'none', | ||||
|            '-khtml-user-select':'none', /* you could also put this in a class */ | ||||
|            '-webkit-user-select':'none',/* and add the CSS class here instead */ | ||||
|            '-ms-user-select':'none', | ||||
|            'user-select':'none' | ||||
|      }).bind('selectstart', function(){ return false; }); | ||||
|   $("#have_read_container").click(function() { | ||||
|     var haveReadForm = $('#have_read_form'); | ||||
|     if ($("#have_read").find('span').hasClass('glyphicon-ok')) { | ||||
|       $("#have_read").find('span').removeClass('glyphicon-ok'); | ||||
|       $("#have_read").find('span').addClass('glyphicon-remove'); | ||||
|     } else { | ||||
|       $("#have_read").find('span').removeClass('glyphicon-remove'); | ||||
|       $("#have_read").find('span').addClass('glyphicon-ok'); | ||||
|     } | ||||
|     haveReadForm.submit() | ||||
|   $("#have_read_cb").on('change', function() { | ||||
|     $(this).closest('form').submit(); | ||||
|   }); | ||||
| </script> | ||||
| {% endblock %} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jonathan Rehm
					Jonathan Rehm