CourseObjectController.php in Course 3.x
Same filename and directory in other branches
Namespace
Drupal\course\ControllerFile
src/Controller/CourseObjectController.phpView source
<?php
namespace Drupal\course\Controller;
use Drupal\Core\Ajax\AjaxResponse;
use Drupal\Core\Ajax\RedirectCommand;
use Drupal\Core\Controller\ControllerBase;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\Core\Url;
use Drupal\course\Entity\Course;
use Drupal\course\Entity\CourseObject;
class CourseObjectController extends ControllerBase {
/**
* AJAX handler to restore a deleted object.
*
* @param Course $course
* The course.
* @param string $coid
* Course object ID, which may be a temporary string.
*
* @return AjaxResponse
*/
public function restoreObject(Course $course, $course_object) {
// Set the session value.
$_SESSION['course'][$course
->id()]['editing'][$course_object]['delete'] = 0;
$_SESSION['course'][$course
->id()]['editing'][$course_object]['delete_instance'] = 0;
$response = new AjaxResponse();
$currentURL = Url::fromRoute('course.outline', [
'course' => $course
->id(),
]);
$response
->addCommand(new RedirectCommand($currentURL
->toString()));
return $response;
}
/**
* Render the take course object page.
*/
public function render(CourseObject $course_object) {
$build = $course_object
->takeObject();
if (is_array($build)) {
// This is a render array, do not cache the content.
$build['#cache']['max-age'] = 0;
return $build;
}
return $build;
}
public static function getTitle($course_object) {
return $course_object
->getTitle();
}
}
Classes
Name | Description |
---|---|
CourseObjectController |