function TagPrompt(select_tag_callback, tag_prompt_connector) { // En plus je change une ligne ! /* @var tags_selected array of Tag */ var tags_selected = []; /* @var tags_proposed array of Tag */ var tags_proposed = []; var _select_tag_callback = select_tag_callback; var _tag_prompt_connector = tag_prompt_connector; this.getProposedTagsForString = function(search_string, callback_success, callback_error) { tags_proposed = []; JQueryJson(url_search_tag, {'string_search': search_string}, function(response){ if (response.status == 'error') { callback_error(response.error); } else if (response.status == 'success') { for (i in response.data) { var tag = new Tag( response.data[i].id, response.data[i].name ); tags_proposed.push(tag); } callback_success(tags_proposed, search_string, response.message, response.same_found); } }); } this.selectProposedTag = function (tag_id, tag_name) { if (!tag_id) { if (!visitor) { openTagSubmission(tag_name); } else { open_connection_or_subscription_window(); } } else { addTagToSelectedTags(findTagInProposedList(tag_id)); _select_tag_callback(tags_selected); } } var openTagSubmission = function (tag_name) { // TODO : Cette partie du code n'est pas encore refactorisé // Effet fade-in du fond opaque $('body').append($('