Made pages edit better and added messages
This commit is contained in:
@@ -1,30 +1,73 @@
|
||||
<?php
|
||||
$data['title'] = 'Novaconium Edit Page';
|
||||
|
||||
if ( empty($session->get('username'))) {
|
||||
$data = array_merge($data, [
|
||||
'title' => 'Novaconium Edit Page',
|
||||
'pageclass' => 'novaconium'
|
||||
]);
|
||||
|
||||
// Check if logged in
|
||||
if (empty($session->get('username'))) {
|
||||
$messages->error('You are not logged in');
|
||||
$redirect->url('/novaconium/login');
|
||||
$messages->error('You are not loggedin');
|
||||
makeitso();
|
||||
}
|
||||
|
||||
$pageid = $router->parameters['id'];
|
||||
$query=<<<EOSQL
|
||||
SELECT
|
||||
id,
|
||||
title,
|
||||
intro,
|
||||
slug,
|
||||
body,
|
||||
draft,
|
||||
created,
|
||||
updated
|
||||
FROM pages
|
||||
WHERE id = '$pageid'
|
||||
// Get page ID from router parameters
|
||||
$pageid = $router->parameters['id'] ?? null;
|
||||
|
||||
if (!empty($pageid)) {
|
||||
// Existing page: fetch from database
|
||||
$query = <<<EOSQL
|
||||
SELECT
|
||||
id,
|
||||
title,
|
||||
heading,
|
||||
description,
|
||||
keywords,
|
||||
author,
|
||||
slug,
|
||||
path,
|
||||
intro,
|
||||
body,
|
||||
notes,
|
||||
draft,
|
||||
changefreq,
|
||||
priority,
|
||||
created,
|
||||
updated
|
||||
FROM pages
|
||||
WHERE id = ?
|
||||
EOSQL;
|
||||
|
||||
$data['rows'] = $db->getRow($query);
|
||||
$data = array_merge($data, [
|
||||
'tinymce' => true,
|
||||
'pageid' => 'admin-edit-page'
|
||||
]);
|
||||
view('@novacore/editpage', $data);
|
||||
$data['rows'] = $db->getRow($query, [$pageid]);
|
||||
|
||||
// If no row is found, treat as new page
|
||||
if (!$data['rows']) {
|
||||
$pageid = null;
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($pageid)) {
|
||||
// New page: set default values for all fields
|
||||
$data['rows'] = [
|
||||
'id' => '',
|
||||
'title' => '',
|
||||
'heading' => '',
|
||||
'description' => '',
|
||||
'keywords' => '',
|
||||
'author' => $session->get('username') ?? '',
|
||||
'slug' => '',
|
||||
'path' => '',
|
||||
'intro' => '',
|
||||
'body' => '',
|
||||
'notes' => '',
|
||||
'draft' => 0,
|
||||
'changefreq' => 'monthly',
|
||||
'priority' => 0.0,
|
||||
'created' => date('Y-m-d H:i:s'),
|
||||
'updated' => date('Y-m-d H:i:s')
|
||||
];
|
||||
}
|
||||
|
||||
// Render the edit page view
|
||||
view('@novacore/editpage', $data);
|
||||
|
||||
Reference in New Issue
Block a user