Example #1
0
function modFile(&$url)
{
    checkPerm('view');
    $mod_perm = checkPerm('mod', true);
    require_once _base_ . '/lib/lib.form.php';
    $lang =& DoceboLanguage::createInstance('light_repo');
    $file_man = new LightRepoManager(getLogUserId(), $_SESSION['idCourse']);
    $id_repo = importVar('id_repo', true, 0);
    $id_file = importVar('id_file', true, 0);
    if (isset($_POST['undo'])) {
        Util::jump_to($url->getUrl('op=' . ($mod_perm ? 'repo_manager_details' : 'repo_my_details') . '&id_repo=' . $id_repo));
    }
    if (isset($_POST['save'])) {
        // save changes
        $file_info[LR_FILE_ID_REPO] = $id_repo;
        $file_info[LR_FILE_NAME] = isset($_FILES['file_name']) ? $_FILES['file_name'] : false;
        $file_info[LR_FILE_DESCR] = $_POST['file_descr'];
        $file_info[LR_FILE_AUTHOR] = getLogUserId();
        $file_info[LR_FILE_POSTDATE] = date("Y-m-d H:i:s");
        $re = $file_man->saveFile($id_file, $file_info);
        Util::jump_to($url->getUrl('op=' . ($mod_perm ? 'repo_manager_details' : 'repo_my_details') . '&id_repo=' . $id_repo . '&result=' . ($re ? 'file_ok' : 'file_err')));
    }
    $repo = $file_man->getRepoDetails($id_repo);
    $page_title = array($url->getUrl() => $lang->def('_TITLE_LIGHT_REPO'), $url->getUrl('op=' . ($mod_perm ? 'repo_manager_details' : 'repo_my_details') . '&id_repo=' . $id_repo) => $repo[LR_TITLE]);
    if ($id_file == 0) {
        $page_title[] = $lang->def('_UPLOAD');
        $file = array();
        $file[LR_FILE_NAME] = false;
        $file[LR_FILE_DESCR] = '';
    } else {
        $file = sql_fetch_row($file_man->getFileInfo($id_file));
        $page_title[] = implode('_', array_slice(explode('_', $file[LR_FILE_NAME]), 3));
    }
    cout(getTitleArea($page_title, 'light_repo') . '<div class="std_block">', 'content');
    cout(Form::openForm('mod_file', $url->getUrl('op=mod_file&id_repo=' . $id_repo), false, false, 'multipart/form-data') . Form::openElementSpace() . Form::getHidden('id_file', 'id_file', $id_file) . Form::getHidden('id_repo', 'id_repo', $id_repo) . Form::getExtendedFileField($lang->def('_UPLOAD'), 'file_name', 'file_name', $file[LR_FILE_NAME], implode('_', array_slice(explode('_', $file[LR_FILE_NAME]), 3)), true, false) . Form::getTextarea($lang->def('_DESCRIPTION'), 'file_descr', 'file_descr', importVar('file_descr', false, $file[LR_FILE_DESCR], true)) . Form::closeElementSpace() . Form::openButtonSpace() . Form::getButton('save', 'save', $lang->def('_SAVE')) . Form::getButton('undo', 'undo', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm(), 'content');
    cout('</div>', 'content');
}