mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-25 03:30:13 +01:00
42 lines
No EOL
1.4 KiB
Text
42 lines
No EOL
1.4 KiB
Text
<% if @saved -%>
|
|
|
|
TracksPages.page_notify('notice', '<%= t('contexts.save_status_message') %>', 5);
|
|
|
|
<% if @state_changed -%>
|
|
remove_and_re_add_context();
|
|
<% else -%>
|
|
replace_context_form_with_updated_context();
|
|
<% end -%>
|
|
|
|
<% else -%>
|
|
TracksPages.show_edit_errors(html_for_error_messages());
|
|
<% end -%>
|
|
|
|
function remove_and_re_add_context() {
|
|
$('#<%=dom_id(@context, 'container')%>').slideUp(500, function() {
|
|
$('#<%=dom_id(@context, 'container')%>').remove();
|
|
$('#list-contexts-<%=@new_state%>').append(html_for_context_listing());
|
|
});
|
|
}
|
|
|
|
function replace_context_form_with_updated_context() {
|
|
$('#<%=dom_id(@context, 'container')%>').fadeOut(250, function() {
|
|
<%
|
|
# first add the updated context after the old one, then remove old one
|
|
# using html() does not work, because it will replace the _content_ of
|
|
# the container instead of the container itself, i.e. you will get
|
|
# a container within a container which will break drag-and-drop sorting
|
|
-%>
|
|
$('#<%=dom_id(@context, 'container')%>').after(html_for_context_listing());
|
|
$('#<%=dom_id(@context, 'container')%>').remove();
|
|
$('#<%=dom_id(@context, 'container')%>').fadeIn(500);
|
|
});
|
|
}
|
|
|
|
function html_for_error_messages() {
|
|
return "<%= escape_javascript(error_messages_for('context')) %>";
|
|
}
|
|
|
|
function html_for_context_listing() {
|
|
return "<%= escape_javascript(render(:partial => 'context_listing', :object => @context))%>";
|
|
} |