annotate plugins/redmine_bibliography/assets/javascripts/authors.js @ 1407:00a51e442fe9 biblio_alt_search_auth

Adds a "Keep associated with" checkbox to the authorship view.
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Tue, 01 Oct 2013 12:00:45 +0100
parents 35732ac4324a
children 3cb633d4b37d
rev   line source
luis@1278 1 function add_author_fields(link, association, content, action) {
luis@1278 2 var new_id = new Date().getTime();
luis@1278 3 var regexp = new RegExp("new_" + association, "g");
luis@1278 4
luis@1278 5 $(link).before(content.replace(regexp, new_id));
luis@469 6 }
luis@469 7
luis@1278 8 function remove_fields(link) {
luis@1278 9 $(link).prev("input[type=hidden]").val("1");
luis@1278 10 $(link).closest(".fields").hide();
luis@481 11 }
luis@481 12
luis@1394 13 $(".author_name_on_paper").live('keyup.autocomplete', function(){
luis@1284 14 $this = $(this);
luis@1284 15
luis@1284 16 $this.autocomplete({
luis@1282 17 source: '/publications/autocomplete_for_author',
luis@1283 18 minLength: 2,
luis@1288 19 focus: function(event, ui) {
luis@1393 20 $this.val(ui.item.label);
luis@1288 21 return false;
luis@1288 22 },
luis@1283 23 select: function(event, ui){
luis@1394 24 $this.closest('div').find("input[id$='institution']").val(ui.item.institution);
luis@1394 25 $this.closest('div').find("input[id$='email']").val(ui.item.email);
luis@1394 26
luis@1394 27 $this.closest('div').find("input[id$='search_author_class']").val(ui.item.search_author_class);
luis@1394 28 $this.closest('div').find("input[id$='search_author_id']").val(ui.item.search_author_id);
luis@1407 29
luis@1394 30 $this.closest('div').find("input[id$='search_author_tie']").attr('checked', 'checked');
luis@1407 31 $this.closest('div').find("input[id$='search_author_tie']").next('span').replaceWith(ui.item.authorship_link);
luis@1394 32
luis@1394 33 // triggers the save button
luis@1394 34 $this.closest('div').next('div').find('.author_save_btn').click();
luis@1283 35 }
luis@1288 36 })
luis@1288 37 .data( "autocomplete" )._renderItem = function( ul, item ) {
luis@1393 38 return $( "<li>" )
luis@1393 39 .data("item.autocomplete", item )
luis@1403 40 .append( "<a>" + item.label + "<br><em>" + item.email + "</em><br>" + item.institution + "</a>" )
luis@1393 41 .appendTo(ul);
luis@1288 42 };
luis@1288 43 });
luis@1281 44