forked from External/greenlight
commit
93b5e9a1b3
|
@ -11,6 +11,14 @@
|
||||||
var rowData = table.row("#"+data.record_id).data();
|
var rowData = table.row("#"+data.record_id).data();
|
||||||
rowData.published = data.published
|
rowData.published = data.published
|
||||||
table.row("#"+data.record_id).data(rowData).draw();
|
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");
|
document.execCommand("copy");
|
||||||
meetingURL.blur();
|
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() {
|
var initIndex = function() {
|
||||||
|
@ -141,10 +155,12 @@
|
||||||
var roomName = getRoomName();
|
var roomName = getRoomName();
|
||||||
var published = row.published;
|
var published = row.published;
|
||||||
var eye = getPublishClass(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> ' +
|
'<i class="fa '+eye+'" aria-hidden="true"></i></button> ' +
|
||||||
'<button type="button" class="btn btn-default recording-delete" data-id="'+data+'" data-room="'+roomName+'">' +
|
'<a tabindex="0" role="button" class="btn btn-default has-popover"' +
|
||||||
'<i class="fa fa-trash-o" aria-hidden="true"></i></button>';
|
'data-toggle="popover" data-placement="top">' +
|
||||||
|
'<i class="fa fa-trash-o" aria-hidden="true"></i>' +
|
||||||
|
'</a>';
|
||||||
}
|
}
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
@ -154,27 +170,29 @@
|
||||||
|
|
||||||
$('#recordings').on('click', '.recording-update', function(event) {
|
$('#recordings').on('click', '.recording-update', function(event) {
|
||||||
var btn = $(this);
|
var btn = $(this);
|
||||||
var room = btn.data('room');
|
var row = recordingsTable.api().row($(this).closest('tr')).data();
|
||||||
var id = btn.data('id');
|
var url = $('.meeting-url').val();
|
||||||
|
var id = row.id;
|
||||||
var published = btn.data('published');
|
var published = btn.data('published');
|
||||||
btn.prop("disabled", true);
|
btn.prop('disabled', true);
|
||||||
$.ajax({
|
$.ajax({
|
||||||
method: 'PATCH',
|
method: 'PATCH',
|
||||||
url: '/rooms/'+room+'/recordings/'+id,
|
url: url+'/recordings/'+id,
|
||||||
data: {published: (!published).toString()}
|
data: {published: (!published).toString()}
|
||||||
}).done(function(data) {
|
}).done(function(data) {
|
||||||
|
|
||||||
}).fail(function(data) {
|
}).fail(function(data) {
|
||||||
btn.prop("disabled", false);
|
btn.prop('disabled', false);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#recordings').on('click', '.recording-delete', function(event) {
|
$('#recordings').on('click', '.recording-delete', function(event) {
|
||||||
var room = $(this).data('room');
|
var row = recordingsTable.api().row($(this).closest('tr')).data();
|
||||||
var id = $(this).data('id');
|
var url = $('.meeting-url').val();
|
||||||
|
var id = row.id;
|
||||||
$.ajax({
|
$.ajax({
|
||||||
method: 'DELETE',
|
method: 'DELETE',
|
||||||
url: '/rooms/'+room+'/recordings/'+id
|
url: url+'/recordings/'+id
|
||||||
}).done(function() {
|
}).done(function() {
|
||||||
recordingsTable.api().row("#"+id).remove().draw();
|
recordingsTable.api().row("#"+id).remove().draw();
|
||||||
});
|
});
|
||||||
|
|
|
@ -10,7 +10,23 @@ html, body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.app-background {
|
.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 {
|
.header {
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
<table id="recordings" class="table" width="100%">
|
<table id="recordings" class="table" width="100%">
|
||||||
<thead>
|
<thead>
|
||||||
<th><%= t('date_recorded') %></th>
|
<th><%= t('date_recorded') %></th>
|
||||||
<th><%= t('presentation') %></th>
|
<th><%= t('thumbnails') %></th>
|
||||||
<th><%= t('duration') %></th>
|
<th><%= t('duration') %></th>
|
||||||
<th><%= t('views') %></th>
|
<th><%= t('views') %></th>
|
||||||
<th><%= t('actions') %></th>
|
<th><%= t('actions') %></th>
|
||||||
|
@ -50,3 +50,31 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</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] %>">
|
<body class="app-background" data-controller="<%= params[:controller] %>" data-action="<%= params[:action] %>">
|
||||||
<!-- Messages -->
|
<!-- Messages -->
|
||||||
<div id='messages' class='hidden'>
|
<div id='alerts'>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Header -->
|
<!-- Header -->
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
en-US:
|
en-US:
|
||||||
actions: Actions
|
actions: Actions
|
||||||
are_you: Are you %{name}?
|
are_you: Are you %{name}?
|
||||||
|
are_you_sure: Are you sure?
|
||||||
date_recorded: Date Recorded
|
date_recorded: Date Recorded
|
||||||
duration: Duration
|
duration: Duration
|
||||||
end: End
|
end: End
|
||||||
|
@ -35,16 +36,21 @@ en-US:
|
||||||
login: login
|
login: login
|
||||||
logout: logout
|
logout: logout
|
||||||
my_room: my room
|
my_room: my room
|
||||||
|
no: No
|
||||||
oauth_signup: Signup for customized sessions
|
oauth_signup: Signup for customized sessions
|
||||||
past_recordings: Past Recordings
|
past_recordings: Past Recordings
|
||||||
powered_bigbluebutton: Powered by BigBlueButton
|
powered_bigbluebutton: Powered by BigBlueButton
|
||||||
presentation: Presentation
|
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
|
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
|
session_url_explanation: The session will be taking place using the following URL
|
||||||
start: Start
|
start: Start
|
||||||
start_new_session: Start a new session
|
start_new_session: Start a new session
|
||||||
|
thumbnails: Thumbnails
|
||||||
url_copy_explanation: Copy this URL to invite others to the meeting
|
url_copy_explanation: Copy this URL to invite others to the meeting
|
||||||
video: Video
|
video: Video
|
||||||
views: Views
|
views: Views
|
||||||
wait_for_mod_msg: Looks like you're the first one here...
|
wait_for_mod_msg: Looks like you're the first one here...
|
||||||
wait_for_mod_explanation: You will automatically join when the meeting starts
|
wait_for_mod_explanation: You will automatically join when the meeting starts
|
||||||
|
yes: Yes
|
||||||
|
|
Loading…
Reference in New Issue