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@1281: $this = $(this); luis@1281: luis@1281: $.ajax({ luis@1281: type: "POST", luis@1281: url: "/publications/autocomplete_for_author", luis@1281: dataType: "json", luis@1281: data: { luis@1281: q: $this.val() luis@1281: }, luis@1281: luis@1281: success: function(data, type) { luis@1281: console.log("OK: " + data); luis@1281: items = data; luis@1281: response(items); luis@1281: }, luis@1281: luis@1281: error: function(data, type){ luis@1281: console.log("ERROR: " + type); luis@1281: } luis@1281: }); luis@1281: }); luis@1281: luis@1281: luis@600: function identify_author_status(status, object_id) { chris@623: $('publication_authorships_attributes_' + object_id + '_edit_author_info').select('input').each(function(s) { chris@623: if(status == "no"){ chris@623: s.value = ""; chris@623: s.readOnly = false; chris@623: }; luis@1277: chris@623: if(status == "correct"){s.readOnly = false;}; chris@623: if(status == "yes"){s.readOnly = true;}; chris@623: }); luis@600: } luis@603: luis@1277: function toggle_div(div_id){ chris@623: Effect.toggle(div_id, "appear", {duration:0.3}); luis@603: } luis@603: luis@1277: function toggle_input_field(field){ chris@623: if (field.classNames().inspect().include("readonly") == false){ luis@1277: field.readOnly = true; luis@675: field.addClassName('readonly'); chris@623: } else { luis@675: field.readOnly = false; luis@675: field.removeClassName('readonly'); luis@1277: }; luis@603: } luis@603: luis@605: function toggle_edit_save_button(object_id){ chris@623: $button = $('publication_authorships_attributes_' + object_id + '_edit_save_button'); chris@623: if ($button.value == "Edit author"){ chris@623: $button.value = "Save author"; chris@623: } else { chris@623: $button.value = "Edit author"; chris@623: }; luis@605: } luis@605: 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: }