Skip to content

Commit 6080591

Browse files
committed
Disable copy session course to the same course see BT#14744
1 parent 8204c6f commit 6080591

File tree

1 file changed

+28
-17
lines changed

1 file changed

+28
-17
lines changed

main/coursecopy/copy_course_session.php

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -294,17 +294,22 @@ function checkSelected(id_select,id_radio,id_title,id_destination) {
294294
$destination_session = $_POST['destination_session'];
295295
$origin_session = $_POST['origin_session'];
296296

297-
$course = CourseSelectForm::get_posted_course(
298-
'copy_course',
299-
$origin_session,
300-
$origin_course
301-
);
297+
if ($course_code != $origin_course) {
298+
$course = CourseSelectForm::get_posted_course(
299+
'copy_course',
300+
$origin_session,
301+
$origin_course
302+
);
302303

303-
$cr = new CourseRestorer($course);
304-
//$cr->set_file_option($_POST['same_file_name_option']);
305-
$cr->restore($destination_course, $destination_session);
306-
echo Display::return_message(get_lang('CopyFinished'), 'confirmation');
307-
display_form();
304+
$cr = new CourseRestorer($course);
305+
//$cr->set_file_option($_POST['same_file_name_option']);
306+
$cr->restore($destination_course, $destination_session);
307+
echo Display::return_message(get_lang('CopyFinished'), 'confirmation');
308+
display_form();
309+
} else {
310+
echo Display::return_message(get_lang('PleaseSelectACourse'), 'confirm');
311+
display_form();
312+
}
308313
} else {
309314
$arr_course_origin = [];
310315
$arr_course_destination = [];
@@ -333,14 +338,20 @@ function checkSelected(id_select,id_radio,id_title,id_destination) {
333338
$course_code = $arr_course_origin[0];
334339
$course_destinatination = $arr_course_destination[0];
335340

336-
$course_origin = api_get_course_info($course_code);
337-
$cb = new CourseBuilder('', $course_origin);
338-
$course = $cb->build($origin_session, $course_code, $with_base_content);
339-
$cr = new CourseRestorer($course);
340-
$cr->restore($course_destinatination, $destination_session);
341+
if ($course_code != $course_destinatination) {
342+
$course_origin = api_get_course_info($course_code);
343+
$cb = new CourseBuilder('', $course_origin);
344+
$course = $cb->build($origin_session, $course_code, $with_base_content);
345+
$cr = new CourseRestorer($course);
346+
$cr->restore($course_destinatination, $destination_session);
347+
348+
echo Display::return_message(get_lang('CopyFinished'), 'confirm');
349+
display_form();
350+
} else {
351+
echo Display::return_message(get_lang('PleaseSelectACourse'), 'confirm');
352+
display_form();
353+
}
341354
}
342-
echo Display::return_message(get_lang('CopyFinished'), 'confirm');
343-
display_form();
344355
} else {
345356
echo Display::return_message(get_lang('YouMustSelectACourseFromOriginalSession'), 'error');
346357
display_form();

0 commit comments

Comments
 (0)