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();
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; }
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);