Ejemplo n.º 1
0
function main_rec_admin($post)
{
    $rs = array();
    $rs['akce'] = 'error';
    $rs['ok'] = FALSE;
    $rs['report'] = '';
    $rs['data'] = '';
    //$recno = ($post['recno'] != '') ? htmlspecialchars($post['recno']) : -1;
    $recno = $_REQUEST['recno'] != '' ? htmlspecialchars($_REQUEST['recno']) : -1;
    if ($recno == -1) {
        setMickaLog('Recno=-1, not edit', 'ERROR', 'micka_main_lib.main_rec_admin');
        $rs['report'] = 'Bad input! (recno -1)';
        return $rs;
    }
    $form_akce = isset($post['form_akce']) ? htmlspecialchars($post['form_akce']) : 'new';
    $md_record = new MdRecord();
    $md_record->setTableMode('tmp');
    if ($form_akce == 'new') {
        // editační formulář
        $record = $md_record->getMdValues($recno, 'xxx', 0, 0);
        if (isset($record['report']) && $record['report'] != 'ok') {
            setMickaLog("Recno={$recno}, " . $record['report'], 'ERROR', 'micka_main_lib.main_rec_admin');
            $rs['report'] = $record['report'];
            return $rs;
        }
        $rs['ok'] = TRUE;
        $rs['akce'] = 'record_admin';
        $rs['data']['form_akce'] = 'new';
        $rs['data']['RECNO'] = $record['md']['RECNO'];
        //$rs['data']['DATA_TYPE'] = $record['md']['DATA_TYPE'];
        $rs['data']['LANG'] = $record['md']['LANG'];
        //$rs['data']['EDIT_GROUP'] = $record['md']['EDIT_GROUP'];
        //$rs['data']['VIEW_GROUP'] = $record['md']['VIEW_GROUP'];
        // jazyk metadat
        $rs['data']['md_lang'] = '';
        if ($record['md']['MD_STANDARD'] == 0 || $record['md']['MD_STANDARD'] == 10) {
            foreach ($record['md_values'] as $row) {
                if ($row['MD_ID'] == 5527) {
                    $rs['data']['md_lang'] = $row['MD_VALUE'];
                    break;
                }
            }
        }
    } elseif ($form_akce == 'form' && count($post) > 1) {
        $form_data['recno'] = $recno;
        //$form_data['edit_group'] = $post['edit_group'];
        //$form_data['view_group'] = $post['view_group'];
        //$form_data['data_type'] = isset($post['public']) ? 1 : 0;
        $form_data['lang'] = isset($post['rec_lang']) && count($post['rec_lang']) > 0 ? implode('|', $post['rec_lang']) : '';
        $rs['ok'] = TRUE;
        $rs['akce'] = 'record_admin';
        $rs['data']['form_akce'] = $md_record->setRecordAdmin($form_akce, $form_data);
        $rs['data']['RECNO'] = $recno;
        //$rs['data']['DATA_TYPE'] = '';
        $rs['data']['LANG'] = '';
        //$rs['data']['EDIT_GROUP'] = '';
        //$rs['data']['VIEW_GROUP'] = '';
    } elseif ($form_akce == 'form' && count($post) < 0) {
        setMickaLog('Not complete input!', 'ERROR', 'micka_main_lib.main_rec_admin');
        $rs['report'] = 'Not complete input!';
    } elseif ($form_akce == 'warning') {
        $recno = isset($post['recno']) ? htmlspecialchars($post['recno']) : -1;
        $form_data['recno'] = $_SESSION['micka']['rec_admin']['recno'];
        //$form_data['edit_group'] = $_SESSION['micka']['rec_admin']['edit_group'];
        //$form_data['view_group'] = $_SESSION['micka']['rec_admin']['view_group'];
        //$form_data['data_type'] = $_SESSION['micka']['rec_admin']['data_type'];
        $form_data['lang'] = $_SESSION['micka']['rec_admin']['lang'];
        unset($_SESSION['micka']['rec_admin']);
        $rs['ok'] = TRUE;
        $rs['akce'] = 'record_admin';
        $rs['data']['form_akce'] = $md_record->setRecordAdmin($form_akce, $form_data);
    }
    return $rs;
}