mirror of
https://github.com/moodle/moodle.git
synced 2025-08-05 08:56:36 +02:00
Merge branch 'wip-MDL-33423-m23' of git://github.com/samhemelryk/moodle
This commit is contained in:
commit
bb046e61b6
2 changed files with 33 additions and 2 deletions
|
@ -518,7 +518,7 @@ M.core_filepicker.init = function(Y, options) {
|
||||||
Y.extend(FilePickerHelper, Y.Base, {
|
Y.extend(FilePickerHelper, Y.Base, {
|
||||||
api: M.cfg.wwwroot+'/repository/repository_ajax.php',
|
api: M.cfg.wwwroot+'/repository/repository_ajax.php',
|
||||||
cached_responses: {},
|
cached_responses: {},
|
||||||
|
waitinterval : null, // When the loading template is being displayed and its animation is running this will be an interval instance.
|
||||||
initializer: function(options) {
|
initializer: function(options) {
|
||||||
this.options = options;
|
this.options = options;
|
||||||
if (!this.options.savepath) {
|
if (!this.options.savepath) {
|
||||||
|
@ -1188,7 +1188,37 @@ M.core_filepicker.init = function(Y, options) {
|
||||||
}, this);
|
}, this);
|
||||||
},
|
},
|
||||||
wait: function() {
|
wait: function() {
|
||||||
this.fpnode.one('.fp-content').setContent(M.core_filepicker.templates.loading);
|
// First check there isn't already an interval in play, and if there is kill it now.
|
||||||
|
if (this.waitinterval != null) {
|
||||||
|
clearInterval(this.waitinterval);
|
||||||
|
}
|
||||||
|
// Prepare the root node we will set content for and the loading template we want to display as a YUI node.
|
||||||
|
var root = this.fpnode.one('.fp-content');
|
||||||
|
var content = Y.Node.create(M.core_filepicker.templates.loading).addClass('fp-content-hidden').setStyle('opacity', 0);
|
||||||
|
var count = 0;
|
||||||
|
// Initiate an interval, we will have a count which will increment every 100 milliseconds.
|
||||||
|
// Count 0 - the loading icon will have visibility set to hidden (invisible) and have an opacity of 0 (invisible also)
|
||||||
|
// Count 5 - the visiblity will be switched to visible but opacity will still be at 0 (inivisible)
|
||||||
|
// Counts 6 - 15 opacity will be increased by 0.1 making the loading icon visible over the period of a second
|
||||||
|
// Count 16 - The interval will be cancelled.
|
||||||
|
var interval = setInterval(function(){
|
||||||
|
if (!content || !root.contains(content) || count >= 15) {
|
||||||
|
clearInterval(interval);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (count == 5) {
|
||||||
|
content.removeClass('fp-content-hidden');
|
||||||
|
} else if (count > 5) {
|
||||||
|
var opacity = parseFloat(content.getStyle('opacity'));
|
||||||
|
content.setStyle('opacity', opacity + 0.1);
|
||||||
|
}
|
||||||
|
count++;
|
||||||
|
return false;
|
||||||
|
}, 100);
|
||||||
|
// Store the wait interval so that we can check it in the future.
|
||||||
|
this.waitinterval = interval;
|
||||||
|
// Set the content to the loading template.
|
||||||
|
root.setContent(content);
|
||||||
},
|
},
|
||||||
viewbar_set_enabled: function(mode) {
|
viewbar_set_enabled: function(mode) {
|
||||||
var viewbar = this.fpnode.one('.fp-viewbar')
|
var viewbar = this.fpnode.one('.fp-viewbar')
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
.filemanager input[type="text"], .file-picker input[type="text"] {border: 1px solid #BBBBBB;width: 265px;height: 18px;padding: 1px 6px;}
|
.filemanager input[type="text"], .file-picker input[type="text"] {border: 1px solid #BBBBBB;width: 265px;height: 18px;padding: 1px 6px;}
|
||||||
.filemanager select, .file-picker select {height: 22px;padding: 2px 1px;}
|
.filemanager select, .file-picker select {height: 22px;padding: 2px 1px;}
|
||||||
.fp-content-center {height: 100%;width: 100%;display:table-cell;vertical-align: middle;}
|
.fp-content-center {height: 100%;width: 100%;display:table-cell;vertical-align: middle;}
|
||||||
|
.fp-content-hidden {visibility: hidden;}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Dialogue (File Picker and File Manager)
|
* Dialogue (File Picker and File Manager)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue