Мои самые первые эксперименты с elgg. elgg_view («вход/дата» использует функцию Datepicker, но мне нужно добавить некоторые опциив elgg jQuery datepicker опции не работают
В моем плагине (называется «помощь») функция инициализации (start.php) я объявил elgg_extend_view ('Js/Elgg. , 'help/js'); Затем в \ mod \ help \ views \ default \ help \ js.php Я скопировал функцию elgg.ui.initDatePicker из ядра elgg, и я добавил свои варианты к нему. Также я добавил
elgg.provide ('elgg.help');
на вершине и
elgg.register_hook_handler ('инициализации', 'системы', elgg.ui .initDatePicker);
на дно, как это:
- начало \ модов \ помощь \ Views \ умолчанию \ помощью кода \ js.php
elgg.provide('elgg.help');
elgg.ui.initDatePicker = function() {
var loadDatePicker = function() {
$('.elgg-input-date').datepicker({
// MY OPTIONS ADDED
yearRange: "-100:+0",
changeYear: true,
changeMonth: true,
// ISO-8601
dateFormat: 'yy-mm-dd',
onSelect: function(dateText) {
if ($(this).is('.elgg-input-timestamp')) {
// convert to unix timestamp
var dateParts = dateText.split("-");
var timestamp = Date.UTC(dateParts[0], dateParts[1] - 1, dateParts[2]);
timestamp = timestamp/1000;
var id = $(this).attr('id');
$('input[name="' + id + '"]').val(timestamp);
}
}
});
};
if ($('.elgg-input-date').length && elgg.get_language() == 'en') {
loadDatePicker();
} else if ($('.elgg-input-date').length) {
elgg.get({
url: elgg.config.wwwroot + 'vendors/jquery/i18n/jquery.ui.datepicker-'+ elgg.get_language() +'.js',
dataType: "script",
cache: true,
success: loadDatePicker,
error: loadDatePicker // english language is already loaded.
});
}
}
elgg.register_hook_handler('init', 'system', elgg.ui.initDatePicker);
--- конец \ мода \ help \ views \ default \ help \ js.php code
Он действительно открывает календарь, но он не применяется в моих вариантах yearRange, changeYear и changeMonth. Хотя, если я просто добавлю опции в elgg \ js \ lib \ ui.js, он отлично работает. Поскольку я не хочу возиться с основным файлом, я прошу указать здесь подсказки. Спасибо