| Server IP : 23.111.136.34 / Your IP : 216.73.216.136 Web Server : Apache System : Linux servidor.eurohost.com.br 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : meusitei ( 1072) PHP Version : 5.6.40 Disable Function : show_source, system, shell_exec, passthru, proc_open MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/meusitei/public_html/central/ajuda/ |
Upload File : |
<?php
/******************************************************************************
* Administration Article Edit <administration_article_edit.php>
*
* Author: Michael McMullen <michael.mcmullen@tutelagesystems.com>
******************************************************************************/
require_once '../System/configuration.php';
class AdministrationArticleEditPage extends MasterTemplate
{
var $template = 'admin_article_edit.html';
var $output = array();
function AdministrationArticleEditPage()
{
// Call the Master Template Constructor
parent::__construct();
// Validate for Administrator
if(! isset($_SESSION['administration']))
{
$this->redirect('login.php');
}
// Load Categories for drop down
$this->output['categories'] = $this->LoadCategories();
// Check for Post
$this->SaveArticle();
// Check for Edit
$this->LoadArticle();
// Add a Crumb
$this->AddBreadCrumb('Welcome', $this->output['webRoot']);
$this->AddBreadCrumb('Administration', 'administration.php');
$this->AddBreadCrumb('Article Management', 'administration_article.php');
$this->AddBreadCrumb('Add / Edit Article', null);
// Render the Template
$this->RenderTemplate();
}
// Renders the index template (called from master)
function outputBody()
{
$body = new HTML_Template_Flexy($this->config['flexy']);
$body->compile($this->template);
$body->outputObject($this);
}
function LoadArticle()
{
$article_id = intval($_GET['article_id']);
if($article_id > 0)
{
$article_db = DB_DataObject::factory('articles');
$article_db->article_id = $article_id;
if($article_db->find(true))
{
$this->output['article'] = $article_db->toArray();
$category_db = DB_DataObject::factory('categories');
$category_db->category_id = $article_db->article_category_id;
if($category_db->find(true))
{
$this->output['article']['category'] = $category_db->toArray();
}
}
}
// Check for form data (from previous POST)
$form_data = $this->GetFormData();
if(! empty($form_data))
{
$this->output['article'] = $form_data;
// Set article as active by default
if(empty($this->output['article']['article_active']))
{
$this->output['article']['article_active'] = 1;
}
}
}
function SaveArticle()
{
if(isset($_POST['article']))
{
$article_id = 0;
$article_category_id = intval($_POST['article']['article_category_id']);
$article_name = $_POST['article']['article_name'];
$article_text = $_POST['article']['article_text'];
$article_rank = $_POST['article']['article_rank']; // This will be validated later
$article_active = isset($_POST['article']['article_active']) ? intval($_POST['article']['article_active']) : 1;
if(empty($article_name))
{
// Save Form Input
$this->SaveFormInput($_POST['article']);
// Show Error
$this->output['errors'] = 'The Article Name cannot be empty.';
return;
}
if(empty($article_category_id))
{
// Save Form Input
$this->SaveFormInput($_POST['article']);
// Show Error
$this->output['errors'] = 'You must select a Category for this article.';
return;
}
if(! empty($_POST['article']['article_id']))
{
$article_id = intval($_POST['article']['article_id']);
}
// Validate Rank
if(empty($article_rank))
{
$article_db = DB_DataObject::factory('articles');
$article_rank = $article_db->count();
}
// Are we updating or inserting
if($article_id <= 0)
{
$article_db = DB_DataObject::factory('articles');
$article_db->article_category_id = $article_category_id;
$article_db->article_name = $article_name;
$article_db->article_text = $article_text;
$article_db->article_rank = intval($article_rank);
$article_db->insert();
}
else
{
$article_db = DB_DataObject::factory('articles');
$article_db->article_id = $article_id;
if(! $article_db->find(true))
{
$this->output['errors'] = 'The Article you are trying to edit could not be found.';
return;
}
$article_db->article_category_id = $article_category_id;
$article_db->article_name = $article_name;
$article_db->article_text = $article_text;
$article_db->article_rank = intval($article_rank);
$article_db->article_active = $article_active;
$article_db->update();
}
// We have inserted or updated successfully
$this->redirect('administration_article.php');
}
}
function LoadCategories()
{
$categories = array();
$category_db = DB_DataObject::factory('categories');
$category_db->category_active = 1;
$category_db->orderBy('category_rank, category_name');
$category_db->find();
while($category_db->fetch())
{
$categories[$category_db->category_id] = $category_db->category_name;
}
return $categories;
}
}
new AdministrationArticleEditPage();