Getting ready to start the presentations section
This commit is contained in:
@@ -380,8 +380,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (idb_event_session_check_datetime < Date.now()) {
|
if (idb_event_session_check_datetime < Date.now()) {
|
||||||
console.log('**** *** Time to check event --location-- sessions *** ****');
|
console.log('**** *** Time to check event sessions *** ****'); // All event sessions, not just location specific.
|
||||||
let v2_event_sessions = await api.v2_get_event_sessions(axios, event_id);
|
let v2_event_sessions = await api.v2_get_event_sessions(axios, event_id); // Was v2_get_event_location_sessions
|
||||||
//tbl_event_session.clear();
|
//tbl_event_session.clear();
|
||||||
for (var i in v2_event_sessions) {
|
for (var i in v2_event_sessions) {
|
||||||
tbl_event_session.setItem(v2_event_sessions[i].id.toString(), v2_event_sessions[i]);
|
tbl_event_session.setItem(v2_event_sessions[i].id.toString(), v2_event_sessions[i]);
|
||||||
@@ -390,6 +390,7 @@
|
|||||||
safe_to_render_launcher = false; // Set to false so that the launcher render only starts after the launcher object has updated
|
safe_to_render_launcher = false; // Set to false so that the launcher render only starts after the launcher object has updated
|
||||||
idb_event_session_check_datetime = Date.now() + idb_event_session_check_period;
|
idb_event_session_check_datetime = Date.now() + idb_event_session_check_period;
|
||||||
let render_event_session_records_result = uiv2.render_event_session_records(); // NOTE: v2 idb to ui
|
let render_event_session_records_result = uiv2.render_event_session_records(); // NOTE: v2 idb to ui
|
||||||
|
//ui.index_launcher_sessions('btn_view_session'); // NOTE: This should probably go in module_app_ui_v2.js
|
||||||
}
|
}
|
||||||
|
|
||||||
if (idb_event_presentation_check_datetime < Date.now()) {
|
if (idb_event_presentation_check_datetime < Date.now()) {
|
||||||
@@ -511,7 +512,7 @@
|
|||||||
console.log('FLAG: safe_to_render_launcher='+safe_to_render_launcher);
|
console.log('FLAG: safe_to_render_launcher='+safe_to_render_launcher);
|
||||||
console.log('FLAG: enough_time_to_render='+enough_time_to_render);
|
console.log('FLAG: enough_time_to_render='+enough_time_to_render);
|
||||||
if (safe_to_render_launcher && enough_time_to_render) {
|
if (safe_to_render_launcher && enough_time_to_render) {
|
||||||
let render_launcher_result = ui.render_launcher(launcher);
|
//////////////let render_launcher_result = ui.render_launcher(launcher);
|
||||||
|
|
||||||
run_render_launcher = false; // Set to true so that the launcher will be rendered again
|
run_render_launcher = false; // Set to true so that the launcher will be rendered again
|
||||||
safe_to_render_launcher = false;
|
safe_to_render_launcher = false;
|
||||||
|
|||||||
BIN
app/js/.module_app_ui_v2.js.kate-swp
Normal file
BIN
app/js/.module_app_ui_v2.js.kate-swp
Normal file
Binary file not shown.
@@ -231,6 +231,7 @@ exports.render_launcher = function (launcher_tmp) {
|
|||||||
|
|
||||||
/* Updated 2019-12-19 */
|
/* Updated 2019-12-19 */
|
||||||
function index_launcher_sessions(class_name) {
|
function index_launcher_sessions(class_name) {
|
||||||
|
console.log('Indexing launcher sessions with class name: '+class_name);
|
||||||
var class_elements = document.getElementsByClassName(class_name);
|
var class_elements = document.getElementsByClassName(class_name);
|
||||||
|
|
||||||
for (var i = 0; i < class_elements.length; i++) {
|
for (var i = 0; i < class_elements.length; i++) {
|
||||||
@@ -243,7 +244,7 @@ function index_launcher_sessions(class_name) {
|
|||||||
|
|
||||||
/* Updated 2019-12-19 */
|
/* Updated 2019-12-19 */
|
||||||
function view_session(session_id) {
|
function view_session(session_id) {
|
||||||
var class_elements = document.getElementsByClassName('session_detail');
|
var class_elements = document.getElementsByClassName('launcher_sessions');
|
||||||
console.log('*** View session ID: '+session_id);
|
console.log('*** View session ID: '+session_id);
|
||||||
for (var i = 0; i < class_elements.length; i++) {
|
for (var i = 0; i < class_elements.length; i++) {
|
||||||
//console.log('*** checking: '+class_elements[i].getAttribute('data-session_id'));
|
//console.log('*** checking: '+class_elements[i].getAttribute('data-session_id'));
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ exports.render_event_session_records = function () {
|
|||||||
if (value.event_id == event_id && value.event_location_id == event_location_id) {
|
if (value.event_id == event_id && value.event_location_id == event_location_id) {
|
||||||
console.log('*** Event session id ('+value.id+') is part of this event location.');
|
console.log('*** Event session id ('+value.id+') is part of this event location.');
|
||||||
|
|
||||||
// Checking if the session is already in the launcher menu
|
// *** ** * Checking if the session is already in the launcher menu * ** ***
|
||||||
if (document.getElementById('menu_event_session_'+value.id)) {
|
if (document.getElementById('menu_event_session_'+value.id)) {
|
||||||
// Update the session menu list item
|
// Update the session menu list item
|
||||||
document.getElementById('menu_event_session_'+value.id).innerHTML = value.name;
|
document.getElementById('menu_event_session_'+value.id).innerHTML = value.name;
|
||||||
@@ -102,22 +102,17 @@ exports.render_event_session_records = function () {
|
|||||||
document.getElementById('sessions_menu').getElementsByTagName('ul')[0].appendChild(node);
|
document.getElementById('sessions_menu').getElementsByTagName('ul')[0].appendChild(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let session_startdatetime = new Date(value.start_datetime);
|
||||||
|
|
||||||
// Checking if the session is already in the launcher sessions detail
|
// *** ** * Checking if the session is already in the launcher sessions detail * ** ***
|
||||||
if (document.getElementById('detail_session_'+value.id)) {
|
if (document.getElementById('detail_session_'+value.id)) {
|
||||||
// Update the session menu list item
|
// Update the launcher sessions list
|
||||||
document.getElementById('detail_session_'+value.id).getElementsByTagName('h2')[0].innerHTML = value.name;
|
// NOTE: Updating this text is very awkward?
|
||||||
document.getElementById('detail_session_'+value.id).getElementsByTagName('h2')[0].getElementsByTagName('span')[0].innerHTML = dateFns.format(value.startdatetime, 'ddd h:mm A');
|
document.getElementById('detail_session_'+value.id).getElementsByTagName('h2')[0].firstChild.data = value.name;
|
||||||
|
console.log(document.getElementById('detail_session_'+value.id).getElementsByTagName('h2')[0]);
|
||||||
|
document.getElementById('detail_session_'+value.id).getElementsByTagName('h2')[0].getElementsByTagName('span')[0].innerHTML = dateFns.format(session_startdatetime, 'ddd h:mm A');
|
||||||
} else {
|
} else {
|
||||||
/*
|
// Add the new session to the launcher sessions list
|
||||||
// Unhide the sessions menu
|
|
||||||
if (document.getElementById('launcher_sessions').classList.contains('d-none') ) {
|
|
||||||
document.getElementById('launcher_sessions').classList.remove('d-none');
|
|
||||||
document.getElementById('launcher_sessions').classList.add('d-block');
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Add the new session to the launcher session detail
|
|
||||||
let div_node = document.createElement('DIV');
|
let div_node = document.createElement('DIV');
|
||||||
div_node.id = 'detail_session_'+value.id;
|
div_node.id = 'detail_session_'+value.id;
|
||||||
div_node.className = 'container d-none session_detail';
|
div_node.className = 'container d-none session_detail';
|
||||||
@@ -126,13 +121,15 @@ exports.render_event_session_records = function () {
|
|||||||
let h2_node = document.createElement('H2');
|
let h2_node = document.createElement('H2');
|
||||||
h2_node.className = 'session_title d-flex justify-content-between align-items-center';
|
h2_node.className = 'session_title d-flex justify-content-between align-items-center';
|
||||||
|
|
||||||
|
// NOTE: Instead of a text node should this just be wrapped in a set of tags?
|
||||||
|
// Updating this is kind of awkward... see above
|
||||||
let h2_text_node = document.createTextNode(value.name);
|
let h2_text_node = document.createTextNode(value.name);
|
||||||
h2_node.appendChild(h2_text_node);
|
h2_node.appendChild(h2_text_node);
|
||||||
|
|
||||||
let h2_span_node = document.createElement('SPAN');
|
let h2_span_node = document.createElement('SPAN');
|
||||||
h2_span_node.className = 'badge badge-pill badge-info';
|
h2_span_node.className = 'badge badge-pill badge-info';
|
||||||
|
|
||||||
let h2_span_text_node = document.createTextNode(dateFns.format(value.startdatetime, 'ddd h:mm A'));
|
let h2_span_text_node = document.createTextNode(dateFns.format(session_startdatetime, 'ddd h:mm A'));
|
||||||
h2_span_node.appendChild(h2_span_text_node);
|
h2_span_node.appendChild(h2_span_text_node);
|
||||||
|
|
||||||
h2_node.appendChild(h2_span_node);
|
h2_node.appendChild(h2_span_node);
|
||||||
@@ -142,10 +139,6 @@ exports.render_event_session_records = function () {
|
|||||||
document.getElementById('launcher_sessions').appendChild(div_node);
|
document.getElementById('launcher_sessions').appendChild(div_node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
console.log('Event session not it.');
|
console.log('Event session not it.');
|
||||||
}
|
}
|
||||||
@@ -153,14 +146,14 @@ exports.render_event_session_records = function () {
|
|||||||
console.log('idb_to_ui: Iterate tbl_event_session complete')
|
console.log('idb_to_ui: Iterate tbl_event_session complete')
|
||||||
tbl_event_session_complete = true;
|
tbl_event_session_complete = true;
|
||||||
}).then(function() {
|
}).then(function() {
|
||||||
// Second: remove sessions
|
// Second: remove sessions from the launcher sessions menu and sessions list
|
||||||
|
// This is basing the removal of sessions only on the menu list of sessions.
|
||||||
|
// In theory this should be safe as long as nothing gets out sync...
|
||||||
console.log('Looking for removed sessions...');
|
console.log('Looking for removed sessions...');
|
||||||
|
|
||||||
//let session_list_items = document.getElementById('sessions_menu').getElementsByTagName('ul').childNodes;
|
|
||||||
let session_list_items = document.getElementById('sessions_menu').getElementsByTagName('ul')[0].childNodes;
|
let session_list_items = document.getElementById('sessions_menu').getElementsByTagName('ul')[0].childNodes;
|
||||||
console.log(session_list_items);
|
console.log(session_list_items);
|
||||||
|
//console.log(session_list_items.length);
|
||||||
console.log(session_list_items.length);
|
|
||||||
|
|
||||||
for (var i in session_list_items) {
|
for (var i in session_list_items) {
|
||||||
console.log(session_list_items[i].getAttribute('data-session_id'));
|
console.log(session_list_items[i].getAttribute('data-session_id'));
|
||||||
@@ -169,7 +162,7 @@ exports.render_event_session_records = function () {
|
|||||||
let session_valid = false;
|
let session_valid = false;
|
||||||
|
|
||||||
tbl_event_session.iterate(function(value, key, iteration) {
|
tbl_event_session.iterate(function(value, key, iteration) {
|
||||||
console.log(value.event_id+' ?= '+event_id+' : '+value.event_location_id+' ?- '+event_location_id+' : '+value.id+' ?- '+session_id);
|
console.log(value.event_id+' ?= '+event_id+' : '+value.event_location_id+' ?= '+event_location_id+' : '+value.id+' ?= '+session_id);
|
||||||
if (value.event_id == event_id && value.event_location_id == event_location_id && value.id == session_id) {
|
if (value.event_id == event_id && value.event_location_id == event_location_id && value.id == session_id) {
|
||||||
// The session is still part of the event and the location
|
// The session is still part of the event and the location
|
||||||
session_valid = true;
|
session_valid = true;
|
||||||
@@ -183,8 +176,9 @@ exports.render_event_session_records = function () {
|
|||||||
console.log('Keep session id '+session_id);
|
console.log('Keep session id '+session_id);
|
||||||
} else {
|
} else {
|
||||||
console.log('Remove session id '+session_id);
|
console.log('Remove session id '+session_id);
|
||||||
session_list_items[i].remove();
|
//session_list_items[i].remove();
|
||||||
document.getElementById('menu_event_session_'+session_id).remove();
|
document.getElementById('menu_event_session_'+session_id).remove(); // Remove the node from the launcher sessions menu list
|
||||||
|
document.getElementById('detail_session_'+session_id).remove(); // Remove the node from the launcher sessions list
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -194,6 +188,7 @@ exports.render_event_session_records = function () {
|
|||||||
// NOTE: Should this go in a .then() section?
|
// NOTE: Should this go in a .then() section?
|
||||||
// NOTE: It might make even more sense to only have this done individually per add. Should also do a remove to keep things clean.
|
// NOTE: It might make even more sense to only have this done individually per add. Should also do a remove to keep things clean.
|
||||||
//index_launcher_sessions('btn_view_session');
|
//index_launcher_sessions('btn_view_session');
|
||||||
|
index_launcher_sessions('btn_view_session');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -222,3 +217,50 @@ exports.render_event_presenter_file_records = function (events) {
|
|||||||
console.log('Rendering event presenter file records...');
|
console.log('Rendering event presenter file records...');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Updated 2020-01-31 */
|
||||||
|
function index_launcher_sessions(class_name) {
|
||||||
|
console.log('Indexing launcher sessions with class name: '+class_name);
|
||||||
|
var class_elements = document.getElementsByClassName(class_name);
|
||||||
|
|
||||||
|
|
||||||
|
for (var i = 0; i < class_elements.length; i++) {
|
||||||
|
class_elements[i].addEventListener( 'click', function() {view_session( this.getAttribute('data-session_id')) } );
|
||||||
|
}
|
||||||
|
console.log(class_elements);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Updated 2020-01-31 */
|
||||||
|
function view_session(session_id) {
|
||||||
|
var class_elements = document.getElementsByClassName('session_detail'); // This class name should be the class names for each div container
|
||||||
|
console.log('*** View session ID: '+session_id);
|
||||||
|
for (var i = 0; i < class_elements.length; i++) {
|
||||||
|
console.log('*** checking: '+class_elements[i].getAttribute('data-session_id'));
|
||||||
|
if (class_elements[i].getAttribute('data-session_id') == session_id) {
|
||||||
|
console.log('show');
|
||||||
|
class_elements[i].classList.remove('d-none');
|
||||||
|
class_elements[i].classList.add('d-block');
|
||||||
|
} else {
|
||||||
|
console.log('hide');
|
||||||
|
class_elements[i].classList.remove('d-block');
|
||||||
|
class_elements[i].classList.add('d-none');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function format_bytes(bytes, decimals = 2) {
|
||||||
|
if (bytes === 0) return '0 Bytes';
|
||||||
|
|
||||||
|
const k = 1024;
|
||||||
|
const dm = decimals < 0 ? 0 : decimals;
|
||||||
|
const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
||||||
|
|
||||||
|
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
||||||
|
|
||||||
|
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user