diff --git a/app/assets/javascripts/rename.js b/app/assets/javascripts/rename.js index 7cd7069f..3cf80d64 100644 --- a/app/assets/javascripts/rename.js +++ b/app/assets/javascripts/rename.js @@ -18,7 +18,7 @@ $(document).on('turbolinks:load', function(){ var controller = $("body").data('controller'); var action = $("body").data('action'); - if(controller == "rooms" && action == "show" || controller == "rooms" && action == "update"){ + if(controller == "rooms" && action == "show" || controller == "rooms" && action == "update" || controller == "users" && action == "recordings"){ // Set a room header rename event var configure_room_header = function(room_title){ @@ -117,14 +117,7 @@ $(document).on('turbolinks:load', function(){ // Apply ajax request depending on the element that triggered the event var submit_rename_request = function(element){ - if(element.data('room-uid')){ - submit_update_request({ - setting: "rename_block", - room_block_uid: element.data('room-uid'), - room_name: element.find('#room-name-editable-input').val(), - }); - } - else if(element.is('#room-title')){ + if(element.is('#room-title')){ submit_update_request({ setting: "rename_header", room_name: element.find('#user-text').text(), @@ -135,15 +128,28 @@ $(document).on('turbolinks:load', function(){ setting: "rename_recording", record_id: element.data('recordid'), record_name: element.find('text').text(), + room_uid: element.data('room-uid'), }); } } // Helper for submitting ajax requests var submit_update_request = function(data){ + var update_path = window.location.pathname + + if ('room_uid' in data) { + update_path = $("body").data('relative-root') + + if (!update_path.endsWith("/")) { + update_path += "/" + } + + update_path += data.room_uid + } + // Send ajax request for update $.ajax({ - url: window.location.pathname, + url: update_path, type: "PATCH", data: data, }); diff --git a/app/assets/javascripts/room.js b/app/assets/javascripts/room.js index 7f49391d..ab02eabe 100644 --- a/app/assets/javascripts/room.js +++ b/app/assets/javascripts/room.js @@ -55,10 +55,7 @@ $(document).on('turbolinks:load', function(){ // Display and update all fields related to creating a room in the createRoomModal $("#create-room").click(function(){ $("#create-room-name").val("") - - var relative_url_root = window.location.pathname.split("/")[1]; - - $("#createRoomModal form").attr("action", "/" + relative_url_root) + $("#createRoomModal form").attr("action", $("body").data('relative-root')) updateDropdown($(".dropdown-item[value='default']")) $("#room_mute_on_join").prop("checked", false) diff --git a/app/controllers/rooms_controller.rb b/app/controllers/rooms_controller.rb index a53435a6..c808f184 100644 --- a/app/controllers/rooms_controller.rb +++ b/app/controllers/rooms_controller.rb @@ -73,7 +73,12 @@ class RoomsController < ApplicationController elsif params[:setting] == "rename_recording" @room.update_recording(params[:record_id], "meta_name" => params[:record_name]) end - redirect_to room_path + + if request.referrer + redirect_to request.referrer + else + redirect_to room_path + end end # POST /:room_uid diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 0873db12..e1fc5e24 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -34,7 +34,7 @@ <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> - + "> <%= render "shared/header" %>
diff --git a/app/views/shared/components/_recording_row.html.erb b/app/views/shared/components/_recording_row.html.erb index d61618b6..6489a44d 100644 --- a/app/views/shared/components/_recording_row.html.erb +++ b/app/views/shared/components/_recording_row.html.erb @@ -15,7 +15,7 @@ -
+
<% if recording[:metadata][:name] %> <%= recording[:metadata][:name] %>