Proyectos de Subversion Moodle

Rev

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

Rev 1 Rev 1441
Línea 27... Línea 27...
27
require_once("lib.php");
27
require_once("lib.php");
Línea 28... Línea 28...
28
 
28
 
29
$sectionreturn = optional_param('sr', null, PARAM_INT);
29
$sectionreturn = optional_param('sr', null, PARAM_INT);
30
$add           = optional_param('add', '', PARAM_ALPHANUM);
30
$add           = optional_param('add', '', PARAM_ALPHANUM);
31
$type          = optional_param('type', '', PARAM_ALPHA);
31
$type          = optional_param('type', '', PARAM_ALPHA);
32
$indent        = optional_param('indent', 0, PARAM_INT);
32
$indent        = optional_param('indent', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
33
$update        = optional_param('update', 0, PARAM_INT);
33
$update        = optional_param('update', 0, PARAM_INT);
34
$duplicate     = optional_param('duplicate', 0, PARAM_INT);
34
$duplicate     = optional_param('duplicate', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
35
$hide          = optional_param('hide', 0, PARAM_INT);
35
$hide          = optional_param('hide', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
36
$stealth       = optional_param('stealth', 0, PARAM_INT);
36
$stealth       = optional_param('stealth', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
37
$show          = optional_param('show', 0, PARAM_INT);
37
$show          = optional_param('show', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
38
$copy          = optional_param('copy', 0, PARAM_INT);
38
$copy          = optional_param('copy', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
39
$moveto        = optional_param('moveto', 0, PARAM_INT);
39
$moveto        = optional_param('moveto', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
40
$movetosection = optional_param('movetosection', 0, PARAM_INT);
40
$movetosection = optional_param('movetosection', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
41
$delete        = optional_param('delete', 0, PARAM_INT);
41
$delete        = optional_param('delete', 0, PARAM_INT); // TODO remove this param as part of MDL-83530.
42
$course        = optional_param('course', 0, PARAM_INT);
42
$course        = optional_param('course', 0, PARAM_INT);
43
$groupmode     = optional_param('groupmode', -1, PARAM_INT);
43
$groupmode     = optional_param('groupmode', -1, PARAM_INT); // TODO remove this param as part of MDL-83530.
44
$cancelcopy    = optional_param('cancelcopy', 0, PARAM_BOOL);
44
$cancelcopy    = optional_param('cancelcopy', 0, PARAM_BOOL); // TODO remove this param as part of MDL-83530.
Línea 45... Línea 45...
45
$confirm       = optional_param('confirm', 0, PARAM_BOOL);
45
$confirm       = optional_param('confirm', 0, PARAM_BOOL); // TODO remove this param as part of MDL-83530.
46
 
46
 
47
// This page should always redirect
47
// This page should always redirect
48
$url = new moodle_url('/course/mod.php');
48
$url = new moodle_url('/course/mod.php');
Línea 116... Línea 116...
116
            '/course/modedit.php',
116
            '/course/modedit.php',
117
            $params,
117
            $params,
118
        )
118
        )
119
    );
119
    );
120
} else if (!empty($duplicate) and confirm_sesskey()) {
120
} else if (!empty($duplicate) and confirm_sesskey()) {
-
 
121
    // TODO remove this else if as part of MDL-83530.
-
 
122
    debugging(
-
 
123
        'The duplicate param is deprecated. Please use action cm_duplicate in course/format/update.php instead.',
-
 
124
        DEBUG_DEVELOPER
-
 
125
    );
121
     $cm     = get_coursemodule_from_id('', $duplicate, 0, true, MUST_EXIST);
126
     $cm     = get_coursemodule_from_id('', $duplicate, 0, true, MUST_EXIST);
122
     $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
127
     $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
Línea 123... Línea 128...
123
 
128
 
124
    require_login($course, false, $cm);
129
    require_login($course, false, $cm);
125
    $modcontext = context_module::instance($cm->id);
130
    $coursecontext = context_course::instance($course->id);
Línea 126... Línea 131...
126
    require_capability('moodle/course:manageactivities', $modcontext);
131
    require_all_capabilities(['moodle/backup:backuptargetimport', 'moodle/restore:restoretargetimport'], $coursecontext);
127
 
132
 
128
    // Duplicate the module.
133
    // Duplicate the module.
Línea 129... Línea 134...
129
    $newcm = duplicate_module($course, $cm);
134
    $newcm = duplicate_module($course, $cm);
-
 
135
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
-
 
136
 
-
 
137
} else if (!empty($delete)) {
-
 
138
    // TODO remove this else if as part of MDL-83530.
-
 
139
    debugging(
130
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
140
        'The delete param is deprecated. Please use action cm_delete in course/format/update.php instead.',
131
 
141
        DEBUG_DEVELOPER
Línea 132... Línea 142...
132
} else if (!empty($delete)) {
142
    );
133
    $cm     = get_coursemodule_from_id('', $delete, 0, true, MUST_EXIST);
143
    $cm     = get_coursemodule_from_id('', $delete, 0, true, MUST_EXIST);
134
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
144
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
Línea -... Línea 145...
-
 
145
 
-
 
146
    require_login($course, false, $cm);
-
 
147
    $modcontext = context_module::instance($cm->id);
135
 
148
    require_capability('moodle/course:manageactivities', $modcontext);
-
 
149
 
Línea 136... Línea 150...
136
    require_login($course, false, $cm);
150
    if (plugin_supports('mod', $cm->modname, FEATURE_PUBLISHES_QUESTIONS)) {
137
    $modcontext = context_module::instance($cm->id);
151
        $return = \core_question\local\bank\question_bank_helper::get_url_for_qbank_list($course->id);
Línea 138... Línea 152...
138
    require_capability('moodle/course:manageactivities', $modcontext);
152
    } else {
Línea 176... Línea 190...
176
    redirect($return);
190
    redirect($return);
177
}
191
}
Línea 178... Línea 192...
178
 
192
 
-
 
193
 
-
 
194
if ((!empty($movetosection) or !empty($moveto)) and confirm_sesskey()) {
-
 
195
    // TODO remove this if as part of MDL-83530.
-
 
196
    debugging(
-
 
197
        'The moveto param is deprecated. Please use the standard move modal instead.',
179
 
198
        DEBUG_DEVELOPER
180
if ((!empty($movetosection) or !empty($moveto)) and confirm_sesskey()) {
199
    );
Línea 181... Línea 200...
181
    $cm     = get_coursemodule_from_id('', $USER->activitycopy, 0, true, MUST_EXIST);
200
    $cm     = get_coursemodule_from_id('', $USER->activitycopy, 0, true, MUST_EXIST);
182
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
201
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
Línea 214... Línea 233...
214
    unset($USER->activitycopysectionreturn);
233
    unset($USER->activitycopysectionreturn);
Línea 215... Línea 234...
215
 
234
 
Línea 216... Línea 235...
216
    redirect(course_get_url($course, $section->section, $urloptions));
235
    redirect(course_get_url($course, $section->section, $urloptions));
-
 
236
 
-
 
237
} else if (!empty($indent) and confirm_sesskey()) {
-
 
238
    // TODO remove this else if as part of MDL-83530.
-
 
239
    debugging(
-
 
240
        'The indent param deprecated. Please use action cm_moveleft and cm_moveright in course/format/update.php instead.',
217
 
241
        DEBUG_DEVELOPER
Línea 218... Línea 242...
218
} else if (!empty($indent) and confirm_sesskey()) {
242
    );
219
    $id = required_param('id', PARAM_INT);
243
    $id = required_param('id', PARAM_INT);
Línea 239... Línea 263...
239
    rebuild_course_cache($cm->course, false, true);
263
    rebuild_course_cache($cm->course, false, true);
Línea 240... Línea 264...
240
 
264
 
Línea 241... Línea 265...
241
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
265
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
-
 
266
 
-
 
267
} else if (!empty($hide) and confirm_sesskey()) {
-
 
268
    // TODO remove this else if as part of MDL-83530.
-
 
269
    debugging(
-
 
270
        'The hide param deprecated. Please use action cm_hide in course/format/update.php instead.',
242
 
271
        DEBUG_DEVELOPER
243
} else if (!empty($hide) and confirm_sesskey()) {
272
    );
Línea 244... Línea 273...
244
    $cm     = get_coursemodule_from_id('', $hide, 0, true, MUST_EXIST);
273
    $cm     = get_coursemodule_from_id('', $hide, 0, true, MUST_EXIST);
245
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
274
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
Línea 253... Línea 282...
253
        \core\event\course_module_updated::create_from_cm($cm, $modcontext)->trigger();
282
        \core\event\course_module_updated::create_from_cm($cm, $modcontext)->trigger();
254
    }
283
    }
255
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
284
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
Línea 256... Línea 285...
256
 
285
 
-
 
286
} else if (!empty($stealth) and confirm_sesskey()) {
-
 
287
    // TODO remove this else if as part of MDL-83530.
-
 
288
    debugging(
-
 
289
        'The stealth param deprecated. Please use action cm_stealth in course/format/update.php instead.',
-
 
290
        DEBUG_DEVELOPER
257
} else if (!empty($stealth) and confirm_sesskey()) {
291
    );
258
    list($course, $cm) = get_course_and_cm_from_cmid($stealth);
292
    list($course, $cm) = get_course_and_cm_from_cmid($stealth);
259
    require_login($course, false, $cm);
293
    require_login($course, false, $cm);
Línea 260... Línea 294...
260
    require_capability('moodle/course:activityvisibility', $cm->context);
294
    require_capability('moodle/course:activityvisibility', $cm->context);
261
 
295
 
262
    if (set_coursemodule_visible($cm->id, 1, 0)) {
296
    if (set_coursemodule_visible($cm->id, 1, 0)) {
263
        \core\event\course_module_updated::create_from_cm($cm)->trigger();
297
        \core\event\course_module_updated::create_from_cm($cm)->trigger();
Línea 264... Línea 298...
264
    }
298
    }
-
 
299
    redirect(course_get_url($course, $cm->sectionnum, array('sr' => $sectionreturn)));
-
 
300
 
-
 
301
} else if (!empty($show) and confirm_sesskey()) {
-
 
302
    // TODO remove this else if as part of MDL-83530.
-
 
303
    debugging(
265
    redirect(course_get_url($course, $cm->sectionnum, array('sr' => $sectionreturn)));
304
        'The show param deprecated. Please use action cm_show in course/format/update.php instead.',
266
 
305
        DEBUG_DEVELOPER
267
} else if (!empty($show) and confirm_sesskey()) {
306
    );
268
    list($course, $cm) = get_course_and_cm_from_cmid($show);
307
    list($course, $cm) = get_course_and_cm_from_cmid($show);
Línea 274... Línea 313...
274
        \core\event\course_module_updated::create_from_cm($cm)->trigger();
313
        \core\event\course_module_updated::create_from_cm($cm)->trigger();
275
    }
314
    }
276
    redirect(course_get_url($course, $section->section, $urloptions));
315
    redirect(course_get_url($course, $section->section, $urloptions));
Línea 277... Línea 316...
277
 
316
 
-
 
317
} else if ($groupmode > -1 and confirm_sesskey()) {
-
 
318
    // TODO remove this else if as part of MDL-83530.
-
 
319
    debugging(
-
 
320
        'The groupmode param deprecated. Please use the group mode actions in course/format/update.php instead.',
-
 
321
        DEBUG_DEVELOPER
278
} else if ($groupmode > -1 and confirm_sesskey()) {
322
    );
Línea 279... Línea 323...
279
    $id = required_param('id', PARAM_INT);
323
    $id = required_param('id', PARAM_INT);
280
 
324
 
Línea 289... Línea 333...
289
    set_coursemodule_groupmode($cm->id, $groupmode);
333
    set_coursemodule_groupmode($cm->id, $groupmode);
290
    \core\event\course_module_updated::create_from_cm($cm, $modcontext)->trigger();
334
    \core\event\course_module_updated::create_from_cm($cm, $modcontext)->trigger();
291
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
335
    redirect(course_get_url($course, $cm->sectionnum, $urloptions));
Línea 292... Línea 336...
292
 
336
 
-
 
337
} else if (!empty($copy) and confirm_sesskey()) { // value = course module
-
 
338
    // TODO remove this else if as part of MDL-83530.
-
 
339
    debugging(
-
 
340
        'The copy param is deprecated. Please use the standard move modal instead.',
-
 
341
        DEBUG_DEVELOPER
293
} else if (!empty($copy) and confirm_sesskey()) { // value = course module
342
    );
294
    $cm     = get_coursemodule_from_id('', $copy, 0, true, MUST_EXIST);
343
    $cm     = get_coursemodule_from_id('', $copy, 0, true, MUST_EXIST);
Línea 295... Línea 344...
295
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
344
    $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
296
 
345
 
Línea 307... Línea 356...
307
    $USER->activitycopysectionreturn = $sectionreturn;
356
    $USER->activitycopysectionreturn = $sectionreturn;
Línea 308... Línea 357...
308
 
357
 
Línea 309... Línea 358...
309
    redirect(course_get_url($course, $section->section, $urloptions));
358
    redirect(course_get_url($course, $section->section, $urloptions));
-
 
359
 
-
 
360
} else if (!empty($cancelcopy) and confirm_sesskey()) { // value = course module
-
 
361
    // TODO remove this else if as part of MDL-83530.
-
 
362
    debugging(
310
 
363
        'The copy param is deprecated. Please use the standard move modal instead.',
311
} else if (!empty($cancelcopy) and confirm_sesskey()) { // value = course module
364
        DEBUG_DEVELOPER
312
 
365
    );
Línea 313... Línea 366...
313
    $courseid = $USER->activitycopycourse;
366
    $courseid = $USER->activitycopycourse;
314
    $course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST);
367
    $course = $DB->get_record('course', array('id' => $courseid), '*', MUST_EXIST);