luis@1278: function add_author_fields(link, association, content, action) { luis@1278: var new_id = new Date().getTime(); luis@1278: var regexp = new RegExp("new_" + association, "g"); luis@1278: luis@1278: $(link).before(content.replace(regexp, new_id)); luis@1278: luis@1278: if(action != "new"){ luis@1278: toggle_save_author(new_id, $(link)); luis@1278: } luis@469: } luis@469: luis@1278: function remove_fields(link) { luis@1278: $(link).prev("input[type=hidden]").val("1"); luis@1278: $(link).closest(".fields").hide(); luis@481: } luis@481: luis@1281: $(".author_search").live('keyup.autocomplete', function(){ luis@1284: $this = $(this); luis@1284: luis@1284: $this.autocomplete({ luis@1282: source: '/publications/autocomplete_for_author', luis@1283: minLength: 2, luis@1288: focus: function(event, ui) { luis@1289: $this.closest('div').next().find("input[id$='name_on_paper']").val(ui.item.name); luis@1288: $this.closest('div').next().find("input[id$='institution']").val(ui.item.institution); luis@1288: $this.closest('div').next().find("input[id$='email']").val(ui.item.email); luis@1288: $this.closest('div').next().find("input[id$='search_author_class']").val(ui.item.search_author_class); luis@1288: $this.closest('div').next().find("input[id$='search_author_id']").val(ui.item.search_author_id); luis@1288: luis@1288: return false; luis@1288: }, luis@1283: select: function(event, ui){ luis@1289: $this.closest('div').next().find("input[id$='name_on_paper']").val(ui.item.name); luis@1284: $this.closest('div').next().find("input[id$='institution']").val(ui.item.institution); luis@1284: $this.closest('div').next().find("input[id$='email']").val(ui.item.email); luis@1286: $this.closest('div').next().find("input[id$='search_author_class']").val(ui.item.search_author_class); luis@1286: $this.closest('div').next().find("input[id$='search_author_id']").val(ui.item.search_author_id); luis@1283: } luis@1288: }) luis@1288: .data( "autocomplete" )._renderItem = function( ul, item ) { luis@1288: return $( "
" ) luis@1288: .data( "item.autocomplete", item ) luis@1289: .append( "" + item.label + "" ) luis@1288: .appendTo( ul ); luis@1288: }; luis@1288: }); luis@1281: luis@1292: luis@1292: $("input[id$='identify_author_yes']").live("click", function() { luis@1292: console.log("aaaa"); luis@1292: }); luis@1292: luis@1293: $("input[id$='identify_author_no']").live("click", function() { luis@1293: $this.closest('div').next().find("input[id$='name_on_paper']").val(''); luis@1293: $this.closest('div').next().find("input[id$='institution']").val(''); luis@1293: $this.closest('div').next().find("input[id$='email']").val(''); luis@1293: $this.closest('div').next().find("input[id$='search_author_class']").val(''); luis@1293: }); luis@1292: luis@1277: function toggle_div(div_id){ luis@1284: $("#" + div_id).toggle(0.3); luis@603: } luis@603: luis@605: function toggle_save_author(form_object_id, $this){ chris@623: $('publication_authorships_attributes_' + form_object_id + '_edit_author_info').select('input').each(function(s) { chris@623: toggle_input_field(s, $this); chris@623: }); chris@624: $('publication_authorships_attributes_' + form_object_id + '_edit_author_info').select('p.description').each(function(s) { chris@623: s.toggle(); chris@623: }); chris@623: toggle_edit_save_button(form_object_id); chris@623: toggle_div("publication_authorships_attributes_" + form_object_id +"_search_author"); luis@1277: }