forked from External/greenlight
		
	| @@ -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); | ||||
|       } | ||||
|     }); | ||||
|   }; | ||||
|   | ||||
| @@ -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 '<button type="button" class="btn btn-default recording-update" data-id="'+data+'" data-room="'+roomName+'" data-published="'+published+'">' + | ||||
|               return '<button type="button" class="btn btn-default recording-update" data-published="'+published+'">' + | ||||
|                 '<i class="fa '+eye+'" aria-hidden="true"></i></button> ' + | ||||
|                 '<button type="button" class="btn btn-default recording-delete" data-id="'+data+'" data-room="'+roomName+'">' + | ||||
|                 '<i class="fa fa-trash-o" aria-hidden="true"></i></button>'; | ||||
|                 '<a tabindex="0" role="button" class="btn btn-default has-popover"' + | ||||
|                   'data-toggle="popover" data-placement="top">' + | ||||
|                     '<i class="fa fa-trash-o" aria-hidden="true"></i>' + | ||||
|                 '</a>'; | ||||
|             } | ||||
|             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(); | ||||
|       }); | ||||
|   | ||||
| @@ -10,7 +10,23 @@ html, body { | ||||
| } | ||||
|  | ||||
| .app-background { | ||||
|   background: linear-gradient(0, white 65%, #4DC0A2 35%); | ||||
|   background: #4dc0a2; | ||||
|   background: -moz-linear-gradient(top, #4dc0a2 0%, #4dc0a2 35%, #ffffff 35%, #ffffff 100%); | ||||
|   background: -webkit-gradient(left top, left bottom, color-stop(0%, #4dc0a2), color-stop(35%, #4dc0a2), color-stop(35%, #ffffff), color-stop(100%, #ffffff)); | ||||
|   background: -webkit-linear-gradient(top, #4dc0a2 0%, #4dc0a2 35%, #ffffff 35%, #ffffff 100%); | ||||
|   background: -o-linear-gradient(top, #4dc0a2 0%, #4dc0a2 35%, #ffffff 35%, #ffffff 100%); | ||||
|   background: -ms-linear-gradient(top, #4dc0a2 0%, #4dc0a2 35%, #ffffff 35%, #ffffff 100%); | ||||
|   background: linear-gradient(to bottom, #4dc0a2 0%, #4dc0a2 35%, #ffffff 35%, #ffffff 100%); | ||||
|   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4dc0a2', endColorstr='#ffffff', GradientType=0 ); | ||||
| } | ||||
|  | ||||
| #alerts { | ||||
|   position: absolute; | ||||
|   top: 10px; | ||||
|   left: 50%; | ||||
|   margin-left: -250px; | ||||
|   width: 500px; | ||||
|   z-index: 999; | ||||
| } | ||||
|  | ||||
| .header { | ||||
|   | ||||
| @@ -41,7 +41,7 @@ | ||||
|       <table id="recordings" class="table" width="100%"> | ||||
|         <thead> | ||||
|           <th><%= t('date_recorded') %></th> | ||||
|           <th><%= t('presentation') %></th> | ||||
|           <th><%= t('thumbnails') %></th> | ||||
|           <th><%= t('duration') %></th> | ||||
|           <th><%= t('views') %></th> | ||||
|           <th><%= t('actions') %></th> | ||||
| @@ -50,3 +50,31 @@ | ||||
|     </div> | ||||
|   </div> | ||||
| </div> | ||||
|  | ||||
| <div hidden class="hidden-elements"> | ||||
|   <div class="delete-popover-title"> | ||||
|     <%= t('are_you_sure') %> | ||||
|   </div> | ||||
|   <div class="delete-popover-body"> | ||||
|     <button type="button" class="btn btn-danger recording-delete"> | ||||
|       <%= t('yes') %> | ||||
|     </button> | ||||
|     <button type="button" class="btn btn-default"> | ||||
|       <%= t('no') %> | ||||
|     </button> | ||||
|   </div> | ||||
|   <div class="alert-template"> | ||||
|     <div class="alert alert-success alert-dismissible fade in" role="alert"> | ||||
|       <button type="button" class="close" data-dismiss="alert" aria-label="Close"> | ||||
|         <span aria-hidden="true">×</span> | ||||
|       </button> | ||||
|       <span class="alert-message">Recording was successfully published</span> | ||||
|     </div> | ||||
|   </div> | ||||
|   <div class="publish-alert"> | ||||
|     <%= t('recording_publish_success') %> | ||||
|   </div> | ||||
|   <div class="unpublish-alert"> | ||||
|     <%= t('recording_unpublish_success') %> | ||||
|   </div> | ||||
| </div> | ||||
|   | ||||
| @@ -11,7 +11,7 @@ | ||||
|  | ||||
|   <body class="app-background" data-controller="<%= params[:controller] %>" data-action="<%= params[:action] %>"> | ||||
|     <!-- Messages --> | ||||
|     <div id='messages' class='hidden'> | ||||
|     <div id='alerts'> | ||||
|     </div> | ||||
|      | ||||
|     <!-- Header --> | ||||
|   | ||||
| @@ -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,16 +36,21 @@ 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 | ||||
|   presentation: Presentation | ||||
|   recording_publish_success: Recording was successfully published | ||||
|   recording_unpublish_success: Recording was successfully unpublished | ||||
|   refresh_html: <a href="#" class="generate-link">Click refresh</a> to generate a new meeting URL | ||||
|   session_url_explanation: The session will be taking place using the following URL | ||||
|   start: Start | ||||
|   start_new_session: Start a new session | ||||
|   thumbnails: Thumbnails | ||||
|   url_copy_explanation: Copy this URL to invite others to the meeting | ||||
|   video: Video | ||||
|   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 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user