Example #1
0
        if (!$rename_result || !$parse_result) {
            nc_print_status(CONTROL_TEMPLATE_IMPORT_ERROR_NOTUPLOADED, 'error');
            EndHtml();
            exit;
        }
        $importHandler->showTplList($UI_CONFIG, $fs);
        break;
    case 3:
        //upload
        $post = $nc_core->input->fetch_post();
        $parse_result = $importHandler->ParseXmlFile($post['filename']);
        if (!$parse_result) {
            nc_print_status(CONTROL_TEMPLATE_IMPORT_ERROR_NOTUPLOADED, 'error');
            EndHtml();
            exit;
        }
        $result_id = $importHandler->uploadData($post['upload_from']);
        if (is_array($result_id)) {
            nc_print_status($result_id['e'], 'error');
            EndHtml();
            exit;
        } else {
            $AJAX_SAVER = true;
            BeginHtml($Title2);
            $UI_CONFIG = new ui_config_template('edit', $result_id);
            nc_print_status(CONTROL_TEMPLATE_IMPORT_SUCCESS, 'ok');
            TemplateForm($result_id, 2, 2, $fs, true);
        }
        break;
}
EndHtml();
Example #2
0
function ActionTemplateCompleted($type, $File_Mode)
{
    global $nc_core, $db, $ROOT_FOLDER, $FILES_FOLDER;
    global $systemTableID, $systemTableName, $systemMessageID;
    global $loc, $perm, $admin_mode;
    global $INCLUDE_FOLDER;
    global $FILECHMOD, $DIRCHMOD;
    if ($File_Mode) {
        $template_editor = new nc_template_editor($nc_core->TEMPLATE_FOLDER, $nc_core->db);
    }
    require_once $INCLUDE_FOLDER . "s_files.inc.php";
    $is_there_any_files = getFileCount(0, $systemTableID);
    $params = array('TemplateID', 'ParentTemplateID', 'Description', 'Settings', 'Header', 'Footer', 'CustomSettings', 'posting');
    foreach ($params as $v) {
        global ${$v};
    }
    $st = new nc_Component(0, 4);
    foreach ($st->get_fields() as $v) {
        $name = 'f_' . $v['name'];
        global ${$name};
        if ($v['type'] == 6) {
            global ${$name . "_old"};
            global ${"f_KILL" . $v['id']};
        }
    }
    $action = $type == 1 ? "add" : "change";
    $message = $TemplateID;
    require $ROOT_FOLDER . "message_fields.php";
    require $ROOT_FOLDER . "message_put.php";
    //  ADD template
    if ($type == 1) {
        if ($File_Mode) {
            $fields = array('Settings' => $Settings, 'Header' => $Header, 'Footer' => $Footer);
            $Settings = $Header = $Footer = '';
            if (!is_writable($nc_core->TEMPLATE_FOLDER)) {
                nc_print_status(NETCAT_CAN_NOT_WRITE_FILE, 'error');
                return false;
            }
        }
        $insert = "INSERT INTO `Template` (";
        for ($i = 0; $i < $fldCount; $i++) {
            $insert .= $fld[$i] . ",";
        }
        $insert .= "`Description`, `Parent_Template_ID`, `Settings`, `Header`, `Footer`, `CustomSettings`) ";
        $insert .= "VALUES (";
        for ($i = 0; $i < $fldCount; $i++) {
            if (isset(${$fld[$i] . 'Defined'}) && ${$fld[$i] . 'Defined'} == true) {
                $insert .= ${$fld[$i] . 'NewValue'} . ",";
            } else {
                $insert .= $fldValue[$i] . ",";
            }
        }
        $insert .= "'" . $Description . "'," . $ParentTemplateID . ", '" . $Settings . "', '" . $Header . "', '" . $Footer . "', '" . $CustomSettings . "')";
        $nc_core->event->execute("addTemplatePrep", 0);
        $Result = $db->query($insert);
        $message = $db->insert_id;
        if ($File_Mode) {
            if ($ParentTemplateID) {
                $template_editor->load_template($ParentTemplateID);
                $template_editor->load_new_child($message);
            } else {
                $template_editor->load_template($message, "/{$message}/");
            }
            $template_editor->save_new_template(array_map('stripslashes', $fields), $ParentTemplateID ? true : false);
        }
        $nc_core->event->execute("addTemplate", $message);
        // EDIT template
    } else {
        if ($File_Mode) {
            $template_editor->load_template($TemplateID);
            $template_editor->save_fields(array_map('stripslashes', array('Settings' => $Settings, 'Header' => $Header, 'Footer' => $Footer)));
            $Settings = $Header = $Footer = '';
        }
        $update = "UPDATE `Template` SET ";
        for ($i = 0; $i < $fldCount; $i++) {
            if (isset(${$fld[$i] . 'Defined'}) && ${$fld[$i] . 'Defined'} == true) {
                $update .= $fld[$i] . "=" . ${$fld[$i] . 'NewValue'} . ",";
            } else {
                $update .= $fld[$i] . "=" . $fldValue[$i] . ",";
            }
        }
        $update .= "Description='" . $Description . "',";
        $update .= "Settings='" . $Settings . "',";
        $update .= "Header='" . $Header . "',";
        $update .= "Footer='" . $Footer . "',";
        $update .= "CustomSettings='" . $CustomSettings . "'";
        $update .= " where Template_ID=" . $TemplateID;
        $message = $TemplateID;
        // execute core action
        $nc_core->event->execute("updateTemplatePrep", $message);
        $Result = $db->query($update);
        // execute core action
        $nc_core->event->execute("updateTemplate", $message);
    }
    // Обновление в таблице с файлами
    if (!empty($filetable_lastid)) {
        $db->query("UPDATE `Filetable` SET `Message_ID`='" . $message . "' WHERE ID IN (" . join(',', $filetable_lastid) . ")");
    }
    @mkdir($FILES_FOLDER . "t/", $DIRCHMOD);
    for ($i = 0; $i < count($tmpFile); $i++) {
        eval("\$tmpNewFile[\$i] = \"" . $tmpNewFile[$i] . "\";");
        @rename($FILES_FOLDER . $tmpFile[$i], $FILES_FOLDER . $File_Path[$i] . $tmpNewFile[$i]);
        @chmod($FILES_FOLDER . $File_Path[$i] . $tmpNewFile[$i], $FILECHMOD);
    }
    if ($posting == 0) {
        echo $warnText;
        TemplateForm($TemplateID, $phase, $type, $File_Mode);
        return false;
    }
    return $message;
}
Example #3
0
                   ob_clean();
                   echo 'OK';
                   exit;
               }*/
             TemplateForm($TemplateID, 5, 2, $File_Mode);
             global $UI_CONFIG;
             $updateNode = array("nodeId" => "template-{$TemplateID}", "name" => $TemplateID . ". " . $Description);
             $UI_CONFIG->treeChanges['updateNode'][] = $updateNode;
             $GLOBALS["_RESPONSE"]["ui_config"] = (array) $UI_CONFIG;
         }
     } elseif ($posting == 1 && !$Description) {
         if ($_POST["NC_HTTP_REQUEST"]) {
             $GLOBALS["_RESPONSE"]["error"] = CONTROL_TEMPLATE_ERR_NAME;
         }
         nc_print_status(CONTROL_TEMPLATE_ERR_NAME, 'error');
         TemplateForm($TemplateID, 5, 2, $File_Mode);
     }
     break;
 case 6:
     # удаление темплейтов
     BeginHtml($Title2, $Title2, "http://" . $DOC_DOMAIN . "/management/design/");
     $perm->ExitIfNotAccess(NC_PERM_TEMPLATE, 0, 0, 0, 1);
     AscIfDeleteTemplate();
     break;
 case 7:
     # удаление темплейтов
     BeginHtml($Title2, $Title2, "http://" . $DOC_DOMAIN . "/management/design/");
     $perm->ExitIfNotAccess(NC_PERM_TEMPLATE, 0, 0, 0, 1);
     DeleteTemplates();
     $treeChanges = $UI_CONFIG->treeChanges;
     $UI_CONFIG = new ui_config_template('list', $TemplateID);