moodle/lib/form/url.js
Jake Dallimore 1c1d738ba0 MDL-52318 core_form: allow multiple filepicker-enabled url elements
In cases when filepicker support is enabled, this patch adds a wrapper
div around the url element and includes the filepicker id in its id.
This allows the js callback code to target the specific input field
with which it is associated.
2018-07-09 11:29:23 +08:00

20 lines
744 B
JavaScript

M.form_url = {};
M.form_url.init = function(Y, options) {
options.formcallback = M.form_url.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-js-'+options.client_id, null, options.client_id);
};
M.form_url.callback = function (params) {
// Get the first child of type 'input' within the wrapper div associated with the filepicker's id.
var urlElement = document.getElementById('url-wrapper-' + params.client_id).getElementsByTagName('input')[0];
urlElement.value = params.url;
urlElement.focus();
};