Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 1441
Línea 208... Línea 208...
208
                return;
208
                return;
209
            });
209
            });
210
        }
210
        }
211
    });
211
    });
Línea 212... Línea 212...
212
 
212
 
213
    // Initialize sortable list to handle active conditions moving (note JQuery dependency, see MDL-72293 for resolution).
213
    // Initialize sortable list to handle active conditions moving.
214
    var activeConditionsSortableList = new SortableList(`${reportSelectors.regions.activeConditions}`,
214
    const activeConditionsSelector = reportSelectors.regions.activeConditions;
215
        {isHorizontal: false});
215
    const activeConditionsSortableList = new SortableList(activeConditionsSelector, {isHorizontal: false});
Línea 216... Línea 216...
216
    activeConditionsSortableList.getElementName = element => Promise.resolve(element.data('conditionName'));
216
    activeConditionsSortableList.getElementName = element => Promise.resolve(element.data('conditionName'));
-
 
217
 
217
 
218
    document.addEventListener(SortableList.EVENTS.elementDrop, event => {
218
    $(document).on(SortableList.EVENTS.DROP, reportSelectors.regions.activeCondition, (event, info) => {
219
        const reportOrderCondition = event.target.closest(`${activeConditionsSelector} ${reportSelectors.regions.activeCondition}`);
-
 
220
        if (reportOrderCondition && event.detail.positionChanged) {
219
        if (info.positionChanged) {
221
            const pendingPromise = new Pending('core_reportbuilder/conditions:reorder');
220
            const pendingPromise = new Pending('core_reportbuilder/conditions:reorder');
-
 
221
            const reportElement = event.target.closest(reportSelectors.regions.report);
222
 
Línea 222... Línea 223...
222
            const conditionId = info.element.data('conditionId');
223
            const reportElement = reportOrderCondition.closest(reportSelectors.regions.report);
223
            const conditionPosition = info.element.data('conditionPosition');
224
            const {conditionId, conditionPosition, conditionName} = reportOrderCondition.dataset;
-
 
225
 
224
 
226
            // Select target position, if moving to the end then count number of element siblings.
225
            // Select target position, if moving to the end then count number of element siblings.
227
            let targetConditionPosition = event.detail.targetNextElement.data('conditionPosition')
226
            let targetConditionPosition = info.targetNextElement.data('conditionPosition') || info.element.siblings().length + 2;
228
                || event.detail.element.siblings().length + 2;
Línea 227... Línea 229...
227
            if (targetConditionPosition > conditionPosition) {
229
            if (targetConditionPosition > conditionPosition) {
228
                targetConditionPosition--;
230
                targetConditionPosition--;
229
            }
231
            }
230
 
232
 
231
            // Re-order condition, giving drop event transition time to finish.
233
            // Re-order condition, giving drop event transition time to finish.
232
            const reorderPromise = reorderCondition(reportElement.dataset.reportId, conditionId, targetConditionPosition);
234
            const reorderPromise = reorderCondition(reportElement.dataset.reportId, conditionId, targetConditionPosition);
233
            Promise.all([reorderPromise, new Promise(resolve => setTimeout(resolve, 1000))])
235
            Promise.all([reorderPromise, new Promise(resolve => setTimeout(resolve, 1000))])
234
                .then(([data]) => reloadSettingsConditionsRegion(reportElement, data))
236
                .then(([data]) => reloadSettingsConditionsRegion(reportElement, data))
235
                .then(() => getString('conditionmoved', 'core_reportbuilder', info.element.data('conditionName')))
237
                .then(() => getString('conditionmoved', 'core_reportbuilder', conditionName))
236
                .then(addToast)
238
                .then(addToast)