]> git.0d.be Git - django-panik-nonstop.git/commitdiff
templates: improve metadata sync between instru and language
authorFrédéric Péters <fpeters@0d.be>
Wed, 5 Aug 2020 08:55:14 +0000 (10:55 +0200)
committerFrédéric Péters <fpeters@0d.be>
Wed, 5 Aug 2020 09:52:14 +0000 (11:52 +0200)
nonstop/templates/nonstop/track_detail.html
nonstop/templates/nonstop/tracks_metadata.html

index 57a46f3eff0193ce268be2ddff37f83264aef945..70eaac73d7d323b3029c50cc9ee874e480b4b34e 100644 (file)
   <div class="buttons">
     <button class="submit-button">{% trans "Update" %}</button>
   </div>
+<script>
+$(function() {
+ $('[name=language]').on('change', function() {
+   $('[name=instru]').prop('checked', $(this).val() == 'na');
+ });
+ $('[name=instru').on('change', function() {
+   if ($(this).is(':checked') && $('[name=language]').val() != 'na') {
+     $('[name=language]').val('na');
+   }
+   if (! $(this).is(':checked') && $('[name=language]').val() == 'na') {
+     $('[name=language]').val('');
+   }
+ });
+});
+
+</script>
 </form>
 {% endif %}
 </aside>
index 75e3854638e0c49b8264db2bade63674bc3e5838..0e38ab54d68fe219c2ffb447da001bede34682be 100644 (file)
@@ -48,9 +48,20 @@ $('table#edit-metadata th').on('click', function() {
   if ($(this)[0].className == 'sabam') propvalue = false;
   $('tbody').find('.' + $(this)[0].className + ' input').prop('checked', propvalue);
 });
+
+$('input[type=radio][name^=lang-]').on('change', function() {
+  var $instru = $(this).parents('tr').find('input[type=checkbox][name^=instru]');
+  if (($(this).val() == 'na' && ! $instru.is(':checked')) ||
+      ($(this).val() != 'na' && $instru.is(':checked'))) {
+    $instru.trigger('click');
+  }
+});
+
 $('input[type=checkbox][name^=instru]').on('change', function() {
   if ($(this).is(':checked')) {
     $(this).parents('tr').find('input[name^=lang][value=na]').trigger('click');
+  } else {
+    $(this).parents('tr').find('input[name^=lang]').prop('checked', false);
   }
 });
 </script>