From 9fad2a4ef80ee1c96302c1ec8585f1c47cec6a31 Mon Sep 17 00:00:00 2001 From: Zachary Chai Date: Mon, 7 Nov 2016 15:48:23 -0500 Subject: [PATCH 1/3] delete confirmation --- app/assets/javascripts/landing.js | 40 ++++++++++++++++++++++--------- app/views/landing/rooms.html.erb | 14 +++++++++++ config/locales/en-us.yml | 5 +++- 3 files changed, 47 insertions(+), 12 deletions(-) diff --git a/app/assets/javascripts/landing.js b/app/assets/javascripts/landing.js index 42e42055..376a59b7 100644 --- a/app/assets/javascripts/landing.js +++ b/app/assets/javascripts/landing.js @@ -52,6 +52,20 @@ document.execCommand("copy"); meetingURL.blur(); }); + + // enable popovers + var options = { + selector: '.has-popover', + html: true, + trigger: 'focus', + title: function() { + return $(".delete-popover-title").html(); + }, + content: function() { + return $(".delete-popover-body").html(); + } + }; + $('#recordings').popover(options); }; var initIndex = function() { @@ -141,10 +155,12 @@ var roomName = getRoomName(); var published = row.published; var eye = getPublishClass(published); - return ' ' + - ''; + '' + + '' + + ''; } return data; } @@ -154,27 +170,29 @@ $('#recordings').on('click', '.recording-update', function(event) { var btn = $(this); - var room = btn.data('room'); - var id = btn.data('id'); + var row = recordingsTable.api().row($(this).closest('tr')).data(); + var url = $('.meeting-url').val(); + var id = row.id; var published = btn.data('published'); - btn.prop("disabled", true); + btn.prop('disabled', true); $.ajax({ method: 'PATCH', - url: '/rooms/'+room+'/recordings/'+id, + url: url+'/recordings/'+id, data: {published: (!published).toString()} }).done(function(data) { }).fail(function(data) { - btn.prop("disabled", false); + btn.prop('disabled', false); }); }); $('#recordings').on('click', '.recording-delete', function(event) { - var room = $(this).data('room'); - var id = $(this).data('id'); + var row = recordingsTable.api().row($(this).closest('tr')).data(); + var url = $('.meeting-url').val(); + var id = row.id; $.ajax({ method: 'DELETE', - url: '/rooms/'+room+'/recordings/'+id + url: url+'/recordings/'+id }).done(function() { recordingsTable.api().row("#"+id).remove().draw(); }); diff --git a/app/views/landing/rooms.html.erb b/app/views/landing/rooms.html.erb index f56f22fd..3ebb6fab 100644 --- a/app/views/landing/rooms.html.erb +++ b/app/views/landing/rooms.html.erb @@ -50,3 +50,17 @@ + + diff --git a/config/locales/en-us.yml b/config/locales/en-us.yml index e70e546c..5bc59216 100644 --- a/config/locales/en-us.yml +++ b/config/locales/en-us.yml @@ -21,7 +21,8 @@ en-US: actions: Actions - are_you: Are you %{name} ? + are_you: Are you %{name}? + are_you_sure: Are you sure? date_recorded: Date Recorded duration: Duration end: End @@ -35,6 +36,7 @@ en-US: login: login logout: logout my_room: my room + no: No oauth_signup: Signup for customized sessions past_recordings: Past Recordings powered_bigbluebutton: Powered by BigBlueButton @@ -48,3 +50,4 @@ en-US: views: Views wait_for_mod_msg: Looks like you're the first one here... wait_for_mod_explanation: You will automatically join when the meeting starts + yes: Yes From bc7a77ef77d07a3cf194d5cb0e05c135cc58133c Mon Sep 17 00:00:00 2001 From: Zachary Chai Date: Mon, 7 Nov 2016 17:19:54 -0500 Subject: [PATCH 2/3] dialog confirmation for publish unpublish --- .../javascripts/channels/recording_update.js | 8 ++++++++ app/assets/stylesheets/shared.scss | 9 +++++++++ app/views/landing/rooms.html.erb | 14 ++++++++++++++ app/views/layouts/application.html.erb | 4 ++-- config/locales/en-us.yml | 2 ++ 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/channels/recording_update.js b/app/assets/javascripts/channels/recording_update.js index 23c8a387..f27bf7ea 100644 --- a/app/assets/javascripts/channels/recording_update.js +++ b/app/assets/javascripts/channels/recording_update.js @@ -11,6 +11,14 @@ var rowData = table.row("#"+data.record_id).data(); rowData.published = data.published table.row("#"+data.record_id).data(rowData).draw(); + var publish = (data.published) ? 'publish' : 'unpublish'; + + // show alert success alert + $('.alert-template .alert-message').html($('.'+publish+'-alert').html()); + $('#alerts').html($('.alert-template').html()); + setTimeout(function() { + $('#alerts > .alert').alert('close'); + }, 4000); } }); }; diff --git a/app/assets/stylesheets/shared.scss b/app/assets/stylesheets/shared.scss index 378788d6..ac8845a5 100644 --- a/app/assets/stylesheets/shared.scss +++ b/app/assets/stylesheets/shared.scss @@ -13,6 +13,15 @@ html, body { background: linear-gradient(0, white 65%, #4DC0A2 35%); } +#alerts { + position: absolute; + top: 10px; + left: 50%; + margin-left: -250px; + width: 500px; + z-index: 999; +} + .header { padding: 20px 40px; diff --git a/app/views/landing/rooms.html.erb b/app/views/landing/rooms.html.erb index 3ebb6fab..5dd7f122 100644 --- a/app/views/landing/rooms.html.erb +++ b/app/views/landing/rooms.html.erb @@ -63,4 +63,18 @@ <%= t('no') %> +
+ +
+
+ <%= t('recording_publish_success') %> +
+
+ <%= t('recording_unpublish_success') %> +
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 2475e4da..9fda7d81 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -11,9 +11,9 @@ -