Index: lams_central/web/includes/javascript/dialog.js =================================================================== RCS file: /usr/local/cvsroot/lams_central/web/includes/javascript/dialog.js,v diff -u -r1.1.2.5 -r1.1.2.6 --- lams_central/web/includes/javascript/dialog.js 25 Apr 2016 08:30:43 -0000 1.1.2.5 +++ lams_central/web/includes/javascript/dialog.js 13 Oct 2016 13:45:58 -0000 1.1.2.6 @@ -1,5 +1,23 @@ -var dialogTemplate = $('
').append('' + + '
' + + '' + + '' + + ''); + /** * Checks if the dialog is already opened. * If not, creates a new dialog with the given ID and init parameters. @@ -9,49 +27,86 @@ // is it open already? if (dialog.length > 0) { if (recreate){ - dialog.dialog('close'); + dialog.modal('hide'); + dialog.remove(); } else { - dialog.dialog('moveToTop'); + // dialog.dialog('moveToTop'); return; } } // create a new dialog by cloning a template dialog = dialogTemplate.clone(); - dialog.attr('id', id); - // use initParams to overwrite default behaviour of the newly created dialog - dialog.dialog($.extend({ + + $('#myModalLabel', dialog).text(LABELS.GRADEBOOK_LESSON_TITLE); + initParams = $.extend({ 'autoOpen' : true, - 'modal' : false, 'draggable' : true, 'resizable' : extraButtons == true, - 'hide' : 'fold', 'beforeClose' : function(){ $('iframe', this).attr('src', null); }, 'close' : function() { // completely delete the dialog $(this).remove(); } - }, initParams)); + }, initParams); + $('.modal-title', dialog).attr('id', id + 'Label').text(initParams.title); + dialog.attr({ + 'id' : id, + 'aria-labelledby' : id + 'Label' + }); + + if (initParams.width) { + $('.modal-dialog', dialog).width(initParams.width); + } + if (initParams.height) { + $('.modal-content', dialog).height(initParams.height); + } + if (initParams.draggable) { + $('.modal-dialog', dialog).draggable(); + $('.modal-header', dialog).css('cursor', 'move'); + } + if (initParams.resizable) { + $('.modal-content', dialog).resizable(); + } + if (initParams.data) { + dialog.data(initParams.data); + } + + dialog.on('show.bs.modal', initParams.open); + dialog.on('hide.bs.modal', initParams.beforeClose); + dialog.on('hidden.bs.modal', initParams.close); + + dialog.modal({ + 'keyboard' : false, + 'backdrop' : 'static', + 'show' : initParams.autoOpen + }); + if (extraButtons) { - dialog.dialogExtend({ - "closable" : true, - "maximizable" : true, - "minimizable" : true, - "collapsable" : false, - "dblclick" : "collapse", - "minimizeLocation" : "right", - "icons" : { - "close" : "ui-icon-close", - "maximize" : "ui-icon-arrow-4-diag", - "minimize" : "ui-icon-minus", - "collapse" : "ui-icon-triangle-1-s", - "restore" : "ui-icon-newwin" - } - }); + $('.dialogMinimise', dialog).on('click', function() { + dialog.siblings('.modal-backdrop').addClass('display-none'); + dialog.toggleClass('min'); + if (dialog.hasClass('min')) { + $('.minmaxCon').append(dialog); + $('.dialogMinimise span', dialog).text('&clone;'); + } else { + $('body').append(dialog); + $('.dialogMinimise span', dialog).text('−'); + }; + }); + /* + $("button[data-dismiss='modal']").click(function() { + dialog.removeClass('min'); + $(body).removeClass($apnData); + $(this).next('.modalMinimize').find("i").removeClass('fa fa-clone').addClass('fa fa-minus'); + }); + */ + } else { + $('.dialogMinimise', dialog).remove(); } return dialog; @@ -62,5 +117,5 @@ * Focuses on the dialog. Called from within the contained iframe. */ function moveDialogToTop(id) { - $('#' + id).dialog('moveToTop'); + // $('#' + id).dialog('moveToTop'); } \ No newline at end of file