$loadScripts[] = 'includes/content';
$loadScripts[] = 'includes/comments';
if (!isset($currentContent)) {
    if (!$currentLesson) {
        if ($_GET['view_unit']) {
            $unit = new EfrontUnit($_GET['view_unit']);
            $currentLesson = new EfrontLesson($unit['lessons_ID']);
        } elseif ($_GET['package_ID']) {
            $unit = new EfrontUnit($_GET['package_ID']);
            $currentLesson = new EfrontLesson($unit['lessons_ID']);
        }
        $_SESSION['s_lessons_ID'] = $currentLesson->lesson['id'];
    }
    $currentContent = new EfrontContentTree($currentLesson);
    if ($_student_) {
        $currentContent->markSeenNodes($currentUser);
    }
}
//Legal values are the array of entities that the current user may actually edit or change.
foreach (new EfrontNodeFilterIterator(new RecursiveIteratorIterator(new RecursiveArrayIterator($currentContent->tree), RecursiveIteratorIterator::SELF_FIRST)) as $key => $value) {
    $legalValues[] = $key;
}
if (isset($_GET['add']) || isset($_GET['edit']) && in_array($_GET['edit'], $legalValues) && eF_checkParameter($_GET['edit'], 'id') && $_change_) {
    try {
        if ($_GET['edit']) {
            $currentUnit = $currentContent->seekNode($_GET['edit']);
            //The content tree does not hold data, so assign this unit its data
            $unitData = new EfrontUnit($_GET['edit']);
            $currentUnit['data'] = $unitData['data'];
            $currentUnitName = $unitData['name'];
        } else {