diff plugins/redmine_bibliography/assets/javascripts/authors.js @ 1409:3cb633d4b37d biblio_alt_search_auth

Authorship autocomplete is now a function.
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Tue, 01 Oct 2013 13:05:17 +0100
parents 00a51e442fe9
children 2599a11ef11a
line wrap: on
line diff
--- a/plugins/redmine_bibliography/assets/javascripts/authors.js	Tue Oct 01 12:08:09 2013 +0100
+++ b/plugins/redmine_bibliography/assets/javascripts/authors.js	Tue Oct 01 13:05:17 2013 +0100
@@ -10,35 +10,36 @@
   $(link).closest(".fields").hide();
 }
 
-$(".author_name_on_paper").live('keyup.autocomplete', function(){
-     $this = $(this);
+function authorship_autocomplete(url){
+    $(".author_name_on_paper").live('keyup.autocomplete', function(){
+         $this = $(this);
 
-     $this.autocomplete({
-        source: '/publications/autocomplete_for_author',
-        minLength: 2,
-        focus: function(event, ui) {
-            $this.val(ui.item.label);
-            return false;
-        },
-        select: function(event, ui){
-            $this.closest('div').find("input[id$='institution']").val(ui.item.institution);
-            $this.closest('div').find("input[id$='email']").val(ui.item.email);
+         $this.autocomplete({
+            source: url,
+            minLength: 2,
+            focus: function(event, ui) {
+                $this.val(ui.item.label);
+                return false;
+            },
+            select: function(event, ui){
+                $this.closest('div').find("input[id$='institution']").val(ui.item.institution);
+                $this.closest('div').find("input[id$='email']").val(ui.item.email);
 
-            $this.closest('div').find("input[id$='search_author_class']").val(ui.item.search_author_class);
-            $this.closest('div').find("input[id$='search_author_id']").val(ui.item.search_author_id);
+                $this.closest('div').find("input[id$='search_author_class']").val(ui.item.  search_author_class);
+                $this.closest('div').find("input[id$='search_author_id']").val(ui.item. search_author_id);
 
-            $this.closest('div').find("input[id$='search_author_tie']").attr('checked', 'checked');
-            $this.closest('div').find("input[id$='search_author_tie']").next('span').replaceWith(ui.item.authorship_link);
+                $this.closest('div').find("input[id$='search_author_tie']").attr('checked', '   checked');
+                $this.closest('div').find("input[id$='search_author_tie']").next('span').   replaceWith(ui.item.authorship_link);
 
-            // triggers the save button
-            $this.closest('div').next('div').find('.author_save_btn').click();
-        }
-        })
-        .data( "autocomplete" )._renderItem = function( ul, item ) {
-            return $( "<li>" )
-                .data("item.autocomplete", item )
-                .append( "<a>" + item.label + "<br><em>" + item.email + "</em><br>" + item.institution + "</a>" )
-                .appendTo(ul);
-            };
-        });
-
+                // triggers the save button
+                $this.closest('div').next('div').find('.author_save_btn').click();
+            }
+            })
+            .data( "autocomplete" )._renderItem = function( ul, item ) {
+                return $( "<li>" )
+                    .data("item.autocomplete", item )
+                    .append( "<a>" + item.label + "<br><em>" + item.email + "</em><br>" + item. institution + "</a>" )
+                    .appendTo(ul);
+                };
+            });
+}