Index: lams_central/web/includes/javascript/main.js =================================================================== diff -u -r2ce1ca7a4995e15743c5800fdd789868b0236836 -r9c8c589b55a98647f0e497d63f302568382fd83b --- lams_central/web/includes/javascript/main.js (.../main.js) (revision 2ce1ca7a4995e15743c5800fdd789868b0236836) +++ lams_central/web/includes/javascript/main.js (.../main.js) (revision 9c8c589b55a98647f0e497d63f302568382fd83b) @@ -292,7 +292,7 @@ function showMonitorLessonDialog(lessonID) { var id = "dialogMonitorLesson" + lessonID, - dialog = showDialog(id, { + dialog = showDialog(id, { 'data' : { 'isMonitorDialog' : true, 'lessonID' : lessonID @@ -308,15 +308,15 @@ + $(this).data('lessonID'), 'id' : 'monitorModal'}); }, - - }, true, true); + }, true, true); + + + // if it was just created if (dialog) { // tell the dialog contents that it was resized $('.modal-content', dialog).on('resizestop', resizeSequenceCanvas); - // initial resize - $('iframe', dialog).on('load', resizeSequenceCanvas); dialog.modal('show'); } @@ -326,11 +326,12 @@ * Adjust the position of LD SVG in Monitoring. */ function resizeSequenceCanvas(){ - $('div[id^="dialogMonitorLesson"] iframe').each(function(){ - var win = this.contentWindow || this.contentDocument; + $('div[id^="dialogMonitorLesson"]').each(function(){ + var iframe = $('iframe', this)[0], + win = iframe.contentWindow || iframe.contentDocument; if (win.resizeSequenceCanvas) { - var body = $(this).closest('.modal-body'); - win.resizeSequenceCanvas(body.width(), body.height()); + var body = $(this).find('.modal-body'); + win.resizeSequenceCanvas(body.height()); } }); } Index: lams_monitoring/web/includes/javascript/monitorLesson.js =================================================================== diff -u -r2832aa7ac13f264889b51d8129e14f25d121bd21 -r9c8c589b55a98647f0e497d63f302568382fd83b --- lams_monitoring/web/includes/javascript/monitorLesson.js (.../monitorLesson.js) (revision 2832aa7ac13f264889b51d8129e14f25d121bd21) +++ lams_monitoring/web/includes/javascript/monitorLesson.js (.../monitorLesson.js) (revision 9c8c589b55a98647f0e497d63f302568382fd83b) @@ -1355,8 +1355,7 @@ }, success : function(response) { originalSequenceCanvas = response; - sequenceCanvas = $('#sequenceCanvas').removeAttr('style') - .html(originalSequenceCanvas); + sequenceCanvas = $('#sequenceCanvas').html(originalSequenceCanvas); }, error : function(error) { exit = true; @@ -2118,23 +2117,13 @@ /** * Adjusts sequence canvas (SVG) based on space available in the dialog. */ -function resizeSequenceCanvas(width, height){ - // can the calculation it be done nicer? - var canvasHeight = height - $('.navbar').height() - $('#sequenceTopButtonsContainer').height() - - Math.min(20, $('#completedLearnersContainer').height()), - canvasWidth = width, - svg = $('svg', sequenceCanvas), - // center a small SVG inside large DIV - canvasPaddingTop = Math.max(0, canvasHeight/2 - svg.attr('height')/2 - 50), - canvasPaddingLeft = Math.max(0, canvasWidth/2 - svg.attr('width')/2 - 40); - - sequenceCanvas.css({ - 'padding-top' : canvasPaddingTop + 'px', - 'padding-left' : canvasPaddingLeft + 'px', - 'height' : canvasHeight - 70 + 'px' - }); - - updateSequenceTab(); +function resizeSequenceCanvas(height){ + var svg = $('svg.learningDesignSvg', sequenceCanvas), + svgHeight = +svg.attr('height') + 10, + appliedHeight = Math.max(svgHeight, height - 140); + sequenceCanvas.css({ + 'height' : appliedHeight + 'px' + }); } //********** LEARNERS TAB FUNCTIONS ********** Index: lams_monitoring/web/monitor.jsp =================================================================== diff -u -r0d54fb2115b353bfc618685ce50c08afa8cd669a -r9c8c589b55a98647f0e497d63f302568382fd83b --- lams_monitoring/web/monitor.jsp (.../monitor.jsp) (revision 0d54fb2115b353bfc618685ce50c08afa8cd669a) +++ lams_monitoring/web/monitor.jsp (.../monitor.jsp) (revision 9c8c589b55a98647f0e497d63f302568382fd83b) @@ -271,8 +271,8 @@ sequenceTabShowInfo = false; // only show it once } - updateSequenceTab(); - + + window.parent.resizeSequenceCanvas(); } else { sequenceInfoDialog.modal("hide"); }