forked from moodle/moodle
-
Notifications
You must be signed in to change notification settings - Fork 0
/
data.js
117 lines (103 loc) · 3.67 KB
/
data.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
/**
* Javascript to insert the field tags into the textarea.
* Used when editing a data template
*/
function insert_field_tags(selectlist) {
if (typeof(currEditor) != 'undefined' && currEditor._editMode == 'wysiwyg') {
// HTMLArea-specific
currEditor.insertHTML(selectlist.options[selectlist.selectedIndex].value);
} else {
// For inserting when in HTMLArea code view or for normal textareas
insertAtCursor(currTextarea, selectlist.options[selectlist.selectedIndex].value);
}
}
/**
* javascript for hiding/displaying advanced search form when viewing
*/
function showHideAdvSearch(checked) {
var divs = document.getElementsByTagName('div');
for(i=0;i<divs.length;i++) {
if(divs[i].id.match('data_adv_form')) {
if(checked) {
divs[i].style.display = 'inline';
}
else {
divs[i].style.display = 'none';
}
}
else if (divs[i].id.match('reg_search')) {
if (!checked) {
divs[i].style.display = 'inline';
}
else {
divs[i].style.display = 'none';
}
}
}
}
M.data_filepicker = {};
M.data_filepicker.callback = function(params) {
var html = '<a href="'+params['url']+'">'+params['file']+'</a>';
document.getElementById('file_info_'+params['client_id']).innerHTML = html;
};
/**
* This fucntion is called for each file picker on page.
*/
M.data_filepicker.init = function(Y, options) {
options.formcallback = M.data_filepicker.callback;
if (!M.core_filepicker.instances[options.client_id]) {
M.core_filepicker.init(Y, options);
}
Y.on('click', function(e, client_id) {
e.preventDefault();
M.core_filepicker.instances[client_id].show();
}, '#filepicker-button-'+options.client_id, null, options.client_id);
var item = document.getElementById('nonjs-filepicker-'+options.client_id);
if (item) {
item.parentNode.removeChild(item);
}
item = document.getElementById('filepicker-wrapper-'+options.client_id);
if (item) {
item.style.display = '';
}
};
M.data_urlpicker = {};
M.data_urlpicker.init = function(Y, options) {
options.formcallback = M.data_urlpicker.callback;
if (!M.core_filepicker.instances[options.client_id]) {
M.core_filepicker.init(Y, options);
}
Y.on('click', function(e, client_id) {
e.preventDefault();
M.core_filepicker.instances[client_id].show();
}, '#filepicker-button-'+options.client_id, null, options.client_id);
};
M.data_urlpicker.callback = function (params) {
document.getElementById('field_url_'+params.client_id).value = params.url;
};
M.data_imagepicker = {};
M.data_imagepicker.callback = function(params) {
var html = '<a href="'+params['url']+'"><img src="'+params['url']+'" /> '+params['file']+'</a>';
document.getElementById('file_info_'+params['client_id']).innerHTML = html;
};
/**
* This fucntion is called for each file picker on page.
*/
M.data_imagepicker.init = function(Y, options) {
options.formcallback = M.data_imagepicker.callback;
if (!M.core_filepicker.instances[options.client_id]) {
M.core_filepicker.init(Y, options);
}
Y.on('click', function(e, client_id) {
e.preventDefault();
M.core_filepicker.instances[client_id].show();
}, '#filepicker-button-'+options.client_id, null, options.client_id);
var item = document.getElementById('nonjs-filepicker-'+options.client_id);
if (item) {
item.parentNode.removeChild(item);
}
item = document.getElementById('filepicker-wrapper-'+options.client_id);
if (item) {
item.style.display = '';
}
};