Beispiel #1
0
function ActionForm_for_modal($SubClassID)
{
    global $CatalogueID, $SubdivisionID, $loc, $perm;
    global $SUB_FOLDER, $HTTP_ROOT_PATH, $MODULE_FOLDER, $ADMIN_FOLDER, $ADMIN_PATH;
    $nc_core = nc_Core::get_object();
    $db = $nc_core->db;
    $type = 2;
    $SubdivisionID = $SubdivisionID ? +$SubdivisionID : $nc_core->sub_class->get_by_id($SubClassID, 'Subdivision_ID');
    $CatalogueID = $CatalogueID ? +$CatalogueID : $nc_core->subdivision->get_by_id($SubdivisionID, 'Catalogue_ID');
    $SubEnv = $nc_core->sub_class->get_by_id($SubClassID);
    $ClassEnv = $db->get_row("SELECT * FROM `Class` WHERE `Class_ID` = '" . intval($SubEnv["Class_ID"]) . "'", ARRAY_A);
    if (nc_module_check_by_keyword("cache")) {
        $cache_select_fields = "s.`Cache_Access_ID`, s.`Cache_Lifetime`, s.`CacheForUser`,";
    } else {
        $cache_select_fields = "";
    }
    $select = "SELECT " . $cache_select_fields . "\n                          s.`Sub_Class_Name`,\n                          s.`Subdivision_ID`,\n                          s.`Priority`,\n                          s.`Read_Access_ID`,\n                          s.`Write_Access_ID`,\n                          s.`Edit_Access_ID`,\n                          s.`Checked_Access_ID`,\n                          s.`Delete_Access_ID`,\n                          s.`Moderation_ID`,\n                          s.`EnglishName`,\n                          s.`Checked`,\n                          s.`Subscribe_Access_ID`,\n                          s.`DaysToHold`,\n                          s.`AllowTags`,\n                          s.`NL2BR`,\n                          s.`RecordsPerPage`,\n                          s.`SortBy`,\n                          s.`Created`,\n                          s.`LastUpdated`,\n                          c.`Class_Name`,\n                          c.`Class_ID`,\n                          c.`System_Table_ID`,\n                          s.`DefaultAction`,\n                          s.`UseCaptcha`,\n                          c.`CustomSettingsTemplate`,\n                          s.`CustomSettings`,\n                          s.`Class_Template_ID`,\n                          s.`isNaked`,\n                          s.`SrcMirror`,\n                          s.`AllowRSS`,\n                          s.`Edit_Class_Template`\n                       FROM `Sub_Class` as s,\n                            `Class` as c\n                           WHERE `Sub_Class_ID` = " . +$SubClassID . "\n                             AND c.`Class_ID` = s.`Class_ID`";
    $Array = $db->get_row($select, ARRAY_A);
    if ($db->is_error) {
        throw new nc_Exception_DB_Error($db->last_query, $db->last_error);
    }
    if (empty($Array)) {
        nc_print_status(CONTROL_CONTENT_CATALOUGE_FUNCS_ERROR_NOSUBCLASS, 'info');
        return;
    }
    if ($Array['Class_Template_ID']) {
        $Array['CustomSettingsTemplate'] = $db->get_var("SELECT `CustomSettingsTemplate`\n                                                                 FROM `Class`\n                                                                     WHERE `Class_ID` = " . $Array['Class_Template_ID']);
    }
    $mobile = $nc_core->catalogue->get_by_id($CatalogueID, 'ncMobile');
    $classTemplatesArr = $db->get_results("SELECT `Class_Name`,\n                                                      `Class_ID`\n                                                   FROM `Class`\n                                                       WHERE `ClassTemplate` = '" . $Array['Class_ID'] . "'\n                                                         AND `Type` " . (!$mobile ? "IN ('useful', 'title', 'mobile')" : "= 'mobile'"), ARRAY_A);
    $class_array = nc_get_class_template_array_by_id($Array['Class_Template_ID'] ? $Array['Class_Template_ID'] : $Array['Class_ID']);
    $edit_class_select = null;
    if (count($class_array) > 1) {
        $edit_class_select = nc_get_class_template_form_select_by_array($class_array, $Array['Edit_Class_Template']);
    }
    $classInfo = nc_sub_class_get_classInfo($perm, $Array, $classTemplatesArr, $edit_class_select);
    if ($loc->SubdivisionID) {
        $wsts = CONTROL_CONTENT_SUBCLASS_ONSECTION;
    } else {
        $wsts = CONTROL_CONTENT_SUBCLASS_ONSITE;
    }
    $wsts_msg = nc_sub_class_get_wsts_msg($wsts);
    require_once $ADMIN_FOLDER . "related/format.inc.php";
    $field = new field_relation_subclass();
    $fieldsets = new nc_admin_fieldset_collection();
    $fieldsets->set_prefix(nc_sub_class_get_prefix($SubClassID, $Array));
    $fieldsets->set_static_prefix(nc_sub_class_get_style_prefix());
    $fieldsets->set_suffix("\n            </div>\n            " . $nc_core->token->get_input() . "\n            <input type='hidden' name='phase' value='4' />\n            <input type='hidden' name='SubClassID' value='{$SubClassID}' />\n            <input type='hidden' name='SubdivisionID' value='{$loc->SubdivisionID}' />\n            <input type='hidden' name='CatalogueID' value='{$loc->CatalogueID}' />\n            <input type='submit' style='display: none;' />\n            ");
    $fieldsets->new_fieldset('main_info', CONTROL_CONTENT_CATALOUGE_FUNCS_CATALOGUEFORM_MAININFO)->add(nc_sub_class_get_main_info($Array, $classInfo, $wsts_msg, $field));
    $fieldsets->new_fieldset('objlist', CONTROL_CONTENT_SUBDIVISION_FUNCS_OBJ_HOWSHOW)->add(nc_sub_class_get_objlist($Array));
    if ($Array['CustomSettingsTemplate']) {
        require_once $ADMIN_FOLDER . 'array_to_form.inc.php';
        $values = $CustomSettings ? $CustomSettings : $Array['CustomSettings'];
        $a2f = new nc_a2f($Array['CustomSettingsTemplate'], 'CustomSettings');
        $a2f->set_value($values);
        $fieldsets->new_fieldset('CustomSettings', CONTROL_CONTENT_SUBDIVISION_CUSTOM_SETTINGS_TEMPLATE)->add(nc_sub_class_get_CustomSettings($a2f));
    }
    $fieldsets->new_fieldset('access', CONTROL_CONTENT_CATALOUGE_FUNCS_CATALOGUEFORM_ACCESS)->add(nc_subdivision_show_access($SubEnv));
    #$fieldsets->new_fieldset('rss', 'RSS')->add(nc_subclass_show_export('rss', $SubdivisionID, $SubClassID));
    #$fieldsets->new_fieldset('xml', 'XML')->add(nc_subclass_show_export('xml', $SubdivisionID, $SubClassID));
    if (nc_module_check_by_keyword('cache')) {
        $fieldsets->new_fieldset('cache', CONTROL_CONTENT_SUBCLASS_FUNCS_CACHE)->add(nc_subdivision_show_cache($SubEnv));
    }
    if (nc_module_check_by_keyword('comments')) {
        $fieldsets->new_fieldset('comments', CONTROL_CONTENT_SUBCLASS_FUNCS_COMMENTS)->add(nc_subdivision_show_comments($SubEnv));
    }
    echo $fieldsets->to_string();
}
<?php

/* $Id: get_class_custom_settings.php 7620 2012-07-11 12:55:12Z alive $ */
$_POST["NC_HTTP_REQUEST"] = true;
$NETCAT_FOLDER = join(strstr(__FILE__, "/") ? "/" : "\\", array_slice(preg_split("/[\\/\\\\]+/", __FILE__), 0, -4)) . (strstr(__FILE__, "/") ? "/" : "\\");
include_once $NETCAT_FOLDER . "vars.inc.php";
require $ADMIN_FOLDER . "function.inc.php";
$custom_settings_template = $db->get_var("SELECT `CustomSettingsTemplate` FROM `Class` WHERE `Class_ID` = '" . (int) $class_id . "'");
if ($custom_settings_template) {
    require_once $GLOBALS['ADMIN_FOLDER'] . "array_to_form.inc.php";
    require $GLOBALS['ADMIN_FOLDER'] . 'subdivision/subclass.inc.php';
    $a2f = new nc_a2f($custom_settings_template, 'CustomSettings');
    $fieldset = new nc_admin_fieldset(CONTROL_CONTENT_SUBDIVISION_CUSTOM_SETTINGS_TEMPLATE);
    $fieldset->add(nc_sub_class_get_CustomSettings($a2f));
    echo $fieldset->result();
}