Moodle Turnitin: добавлена функциональность для вставки дополнительного текста в задания
В некоторых университетах есть схема Blue Card, позволяющая студентам с особыми трудностями в обучении (SpLD) отмечать свою работу синей картой, поэтому преподаватель отметит ее с должным вниманием.
Нам нужен был способ облегчить учащимся пометить их работу с помощью синей карточки, и я разработал следующий скрипт, который входит в раздел "Дополнительный HTML" в Администрировании сайта в Moodle и работает с плагином Turnitin. (Смотрите мой другой пост о скрипте, который работает с функциональностью Moodle Assignment.)
Сначала студент нажимает кнопку, чтобы добавить синюю карточку, которая вставляет текст "Синяя карточка: " в начале заголовка задания. Когда форма отправлена, JavaScript ищет текст "Голубая карта" на следующей странице, окрашивает ячейку таблицы в синий цвет и добавляет ссылку на рекомендации по маркировке дислексии.
1 ответ
<script type="text/javascript">
var TurnitinBlueCardButton = '<input type="button" id="tiibluecard" value="Flag with Blue Card"/> <a href="http://www.brookes.ac.uk/students/wellbeing/dyslexia-spld/blue-marking-cards/" class="info" target="_blank" title="What is the Blue Card scheme?">What\'s this?</a><br/>'
/* TURNITIN BLUE CARD */
if (!document.getElementById('fitem_id_submissiontype')) {
/* do nothing */
} else {
document.getElementById('fitem_id_submissiontype').insertAdjacentHTML('beforebegin', TurnitinBlueCardButton);
}
/* EVENT LISTENER FOR TURNITIN BLUE CARD BUTTON */
if (!document.getElementById('tiibluecard')) {
/* do nothing */
} else {
document.getElementById("tiibluecard").addEventListener('click', function () {
var title = document.getElementById('id_submissiontitle');
/* turn off validation of title field, as it will now have a value */
title.removeAttribute('onchange');
if (!title.value) {
title.value = ('Blue Card: ');
} else {
title.value = ('Blue Card: ' + title.value);
}
});
}
/* highlight blue card in TURNITIN submission inbox table */
if (!document.getElementById('inboxTable')) {
/* do nothing */
} else {
var table = document.getElementById('inboxTable');
var tbody = table.getElementsByTagName('tbody')[0];
var cells = tbody.getElementsByTagName('td');
for (var i=0, len=cells.length; i<len; i++){
if (cells[i].innerHTML.includes('Blue Card')){
cells[i].style.backgroundColor = '#99ccff';
cells[i].innerHTML += ' [<a href="http://www.brookes.ac.uk/students/wellbeing/dyslexia-spld/blue-marking-cards/" class="info" target="_blank" title="What is the Blue Card scheme?">What\'s this?</a>]';
}
}
}
</script>
Примечание: код предоставляется "как есть", без каких-либо обязательств по его пригодности для использования, а также без каких-либо обязательств по обслуживанию или поддержке.
( также размещено в блоге нашей команды)
ОБНОВЛЕНИЕ: чтобы заставить это работать в Internet Explorer 11, мне пришлось изменить несколько вещей:
/* highlight blue card in TURNITIN submission inbox table */
if (!document.getElementById('inboxTable')) {
/* do nothing */
} else {
var table = document.getElementById('inboxTable');
var tbody = table.getElementsByTagName('tbody')[0];
var cells = tbody.getElementsByTagName('td');
for (var i=0, len=cells.length; i<len; i++){
if (cells[i].innerText.search('Blue Card') > -1){
cells[i].style.backgroundColor = '#99ccff';
cells[i].getElementsByTagName('a')[0].insertAdjacentHTML('afterend', ' [<a href="http://www.brookes.ac.uk/staff/academic/dyslexia-spld-service/marking-work/" class="info" target="_blank" title="What is the Blue Card scheme?">What\'s this?</a>]');
}
}
}