Beispiel #1
0
        $fstruct = cmsCore::request('fstruct', 'array', array());
        foreach ($fstruct as $key=>$value) {
            if ($value=='') { unset($fstruct[$key]); continue; }
            if ($_REQUEST['fformat'][$key]=='html') { $fstruct[$key] .= '/~h~/'; }
            if ($_REQUEST['fformat'][$key]=='link') { $fstruct[$key] .= '/~l~/'; }
            if ($_REQUEST['flink'][$key]) { $fstruct[$key] .= '/~m~/'; }
        }
        $fstruct = cmsCore::arrayToYaml($fstruct);
    }
    $cat['fieldsstruct'] = cmsCore::c('db')->escape_string($fstruct);

    if ($opt == 'submit_cat') {
        $cat_id = cmsCore::c('db')->addNsCategory('cms_uc_cats', cmsCore::callEvent('ADD_CATALOG_CAT', $cat));
    } else {
        $cat_id = cmsCore::request('item_id', 'int', 0);
        $model->updateCategory($cat_id, $cat);
    }

    if ($cat['is_public']) {
        $showfor = cmsCore::request('showfor', 'array_int', array());
        if ($showfor) {
            $model->setCategoryAccess($cat_id, $showfor);
        }
    } else {
        $model->clearCategoryAccess($cat_id);
    }

    cmsCore::addSessionMessage($_LANG['AD_DO_SUCCESS'], 'success');
    cmsCore::redirect('?view=components&do=config&id='.$id.'&opt=list_cats');
}