From 8c8a28d004d5c711a20fda1277db70f29900f78b Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 29 Jan 2014 12:52:51 -0500 Subject: [PATCH] Bug 11534 - impossible to remove instructors on course reserve In some cases clicking the "remove" link to remove a course instructor when editing a course reserves course doesn't work. I suspect this is caused by leading zeroes in the card number. This patch refactors the relevant function to fix the problem and to remove inline JavaScript from generated markup. Other changes: - Make the "Remove" text translatable - Re-order the first name and last name when added by JavaScript to match the template's "surname, firstname" order. To test: 1. If necessary, create or modify a patron to have a card number with leading zeroes. 2. Go to Course reserves and add or edit a course. 3. If you are editing a course and there are existing instructors, click the "remove" link. Nothing will happen. 4. Perform a patron search and choose one of the results. The name should be added to the list of instructors in the format "surname, firstname." 5. Click the "remove" link next to the patron name which was just added. Nothing will happen. 6. Apply the patch and repeat step 4. The "remove" link should work. 7. Add an instructor and save the course reserve. Repeat steps 2 and 3. The "remove" link should now work. To test the translation fix, after applying the patch run "translate update [language code]" and confirm that the "Remove" string is listed in the updated po file for course_reserves/course.tt. Signed-off-by: Chris Cormack --- .../prog/en/modules/course_reserves/course.tt | 31 ++++++++++++++-------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/course.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/course.tt index 1f5aca8..b9daa0a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/course.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/course_reserves/course.tt @@ -43,7 +43,7 @@ source: "/cgi-bin/koha/circ/ysearch.pl", minLength: 3, select: function( event, ui ) { - AddInstructor( ui.item.firstname + " " + ui.item.surname, ui.item.cardnumber ); + AddInstructor( ui.item.surname + ", " + ui.item.firstname, ui.item.cardnumber ); return false; } }) @@ -54,17 +54,32 @@ .appendTo( ul ); }; + if ( ! $('#instructors').html() ) { + $('#course_instructors').hide(); + } + + $("body").on("click",".removeInstructor",function(e){ + e.preventDefault(); + var divid = $(this).parent().attr("id"); + var cardnumber = divid.replace("borrower_",""); + RemoveInstructor(cardnumber); + }); }); function AddInstructor( name, cardnumber ) { - div = "
" + name + " ( Remove )
"; + div = "
" + name + " ( " + _("Remove")+ " )
"; $('#instructors').append( div ); $('#find_instructor').val('').focus(); + $('#course_instructors').show(); } function RemoveInstructor( cardnumber ) { $( '#borrower_' + cardnumber ).remove(); + + if ( ! $('#instructors').html() ) { + $('#course_instructors').hide( 800 ); + } } //]]> @@ -143,15 +158,9 @@
  • Instructors: -
    -
    - [% FOREACH i IN instructors %] -
    - [% i.surname %], [% i.firstname %] ( Remove ) - -
    - [% END %] -
    +
    +
    [% FOREACH i IN instructors %]
    [% i.surname %], [% i.firstname %] ( Remove ) +
    [% END %]
    -- 1.8.5.3