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@1278
|
6
|
luis@1278
|
7 if(action != "new"){
|
luis@1278
|
8 toggle_save_author(new_id, $(link));
|
luis@1278
|
9 }
|
luis@469
|
10 }
|
luis@469
|
11
|
luis@1278
|
12 function remove_fields(link) {
|
luis@1278
|
13 $(link).prev("input[type=hidden]").val("1");
|
luis@1278
|
14 $(link).closest(".fields").hide();
|
luis@481
|
15 }
|
luis@481
|
16
|
luis@1281
|
17 $(".author_search").live('keyup.autocomplete', function(){
|
luis@1284
|
18 $this = $(this);
|
luis@1284
|
19
|
luis@1284
|
20 $this.autocomplete({
|
luis@1282
|
21 source: '/publications/autocomplete_for_author',
|
luis@1283
|
22 minLength: 2,
|
luis@1288
|
23 focus: function(event, ui) {
|
luis@1289
|
24 $this.closest('div').next().find("input[id$='name_on_paper']").val(ui.item.name);
|
luis@1288
|
25 $this.closest('div').next().find("input[id$='institution']").val(ui.item.institution);
|
luis@1288
|
26 $this.closest('div').next().find("input[id$='email']").val(ui.item.email);
|
luis@1288
|
27 $this.closest('div').next().find("input[id$='search_author_class']").val(ui.item.search_author_class);
|
luis@1288
|
28 $this.closest('div').next().find("input[id$='search_author_id']").val(ui.item.search_author_id);
|
luis@1288
|
29
|
luis@1288
|
30 return false;
|
luis@1288
|
31 },
|
luis@1283
|
32 select: function(event, ui){
|
luis@1289
|
33 $this.closest('div').next().find("input[id$='name_on_paper']").val(ui.item.name);
|
luis@1284
|
34 $this.closest('div').next().find("input[id$='institution']").val(ui.item.institution);
|
luis@1284
|
35 $this.closest('div').next().find("input[id$='email']").val(ui.item.email);
|
luis@1286
|
36 $this.closest('div').next().find("input[id$='search_author_class']").val(ui.item.search_author_class);
|
luis@1286
|
37 $this.closest('div').next().find("input[id$='search_author_id']").val(ui.item.search_author_id);
|
luis@1283
|
38 }
|
luis@1288
|
39 })
|
luis@1288
|
40 .data( "autocomplete" )._renderItem = function( ul, item ) {
|
luis@1288
|
41 return $( "<li></li>" )
|
luis@1288
|
42 .data( "item.autocomplete", item )
|
luis@1289
|
43 .append( "<a>" + item.label + "</a>" )
|
luis@1288
|
44 .appendTo( ul );
|
luis@1288
|
45 };
|
luis@1288
|
46 });
|
luis@1281
|
47
|
luis@1277
|
48 function toggle_div(div_id){
|
luis@1284
|
49 $("#" + div_id).toggle(0.3);
|
luis@603
|
50 }
|
luis@603
|
51
|
luis@605
|
52 function toggle_save_author(form_object_id, $this){
|
chris@623
|
53 $('publication_authorships_attributes_' + form_object_id + '_edit_author_info').select('input').each(function(s) {
|
chris@623
|
54 toggle_input_field(s, $this);
|
chris@623
|
55 });
|
chris@624
|
56 $('publication_authorships_attributes_' + form_object_id + '_edit_author_info').select('p.description').each(function(s) {
|
chris@623
|
57 s.toggle();
|
chris@623
|
58 });
|
chris@623
|
59 toggle_edit_save_button(form_object_id);
|
chris@623
|
60 toggle_div("publication_authorships_attributes_" + form_object_id +"_search_author");
|
luis@1277
|
61 } |