|
From: <ada...@us...> - 2003-07-09 20:24:30
|
Update of /cvsroot/phpwebsite-comm/modules/article
In directory sc8-pr-cvs1:/tmp/cvs-serv30555
Added Files:
index.php
Log Message:
Initial commit to CVS
--- NEW FILE: index.php ---
<?php
/**
* This is the index file for the article module.
*
* @author Eloi George <el...@NO...>
* @module Article Manager
*/
/* Display the homepage if requested */
if($GLOBALS['module']=='home')
{
$_SESSION['SES_ART_master'] = new PHPWS_ArticleManager;
$_SESSION['SES_ART_master']->show_mainarticle();
$_SESSION['SES_ART_master']->view_summaries();
$_SESSION['SES_ART_master']->view_popular();
return;
}
/* Script to reroute pagemaster pages... */
elseif ($GLOBALS['module']=='pagemaster' && !isset($_SESSION['SES_PM_master']))
{
include (PHPWS_HOME_DIR . 'convert/reroute/pagemaster.AM');
$_REQUEST['view'] = $convert[$_REQUEST['PAGE_id']];
}
/* Script to reroute announcements... */
elseif (($GLOBALS['module']=='announce') && !isset($_SESSION['SES_ANN_MANAGER']))
{
include (PHPWS_HOME_DIR . 'convert/reroute/announce.AM');
$_REQUEST['view'] = $convert[$_REQUEST['ANN_id']];
}
/* Don't process the rest if the request isn't for this module... */
elseif ($GLOBALS['module'] != 'article')
return;
/* Make sure the helper class is activated and up to date*/
if (!$_SESSION['SES_ART_master'])
$_SESSION['SES_ART_master'] = new PHPWS_ArticleManager;
$user = &$_SESSION['SES_ART_master'];
/* Determine the command to be executed */
if (isset($_REQUEST['view']))
{
$temp = new PHPWS_Article($_REQUEST['view']);
$temp->view();
/* Increment the articleview counter */
$temp->increment_counter($_REQUEST['view']);
unset($temp);
return;
}
/* The rest of this module's functions are off-limits to non-users */
elseif (!$_SESSION['OBJ_user']->isUser())
{
$GLOBALS['CNT_article']['title'] = 'Article Manager';
$GLOBALS['CNT_article']['content'] =
$_SESSION['translate']->it('Members get to do fun stuff! Login or Register today!')
. '<br />';
return;
}
/* Process any form button submissions */
if (isset($_REQUEST['ARTICLE_vars']))
{
list($command,) = each($_REQUEST['ARTICLE_vars']);
$pos = strpos($command, ':');
$_REQUEST[substr($command,0,$pos)] = substr($command,$pos+1);
}
/* Start processing module operation requests */
if (isset($_REQUEST['disp']))
{
switch($_REQUEST['disp'])
{
case 'main_menu':
$_SESSION['SES_ART_master']->main_menu();
case 'list':
$_SESSION['SES_ART_master']->list_articles();
break;
case 'news':
$_SESSION['SES_ART_master']->list_news();
break;
}
}
elseif (isset($_REQUEST['edit']))
{
switch($_REQUEST['edit'])
{
case 'cancel':
$_SESSION['SES_ART_article']->setEditLock(FALSE);
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_master']->main_menu();
$_SESSION['SES_ART_master']->list_articles();
break;
case 'create':
$_SESSION['SES_ART_article'] = new PHPWS_Article();
if ($user->can('create'))
$_SESSION['SES_ART_article']->edit_article();
break;
case 'save':
$_SESSION['SES_ART_master']->main_menu();
if ($user->can('create')
|| $user->can('edit',$_SESSION['SES_ART_article']->author))
{
$_SESSION['SES_ART_article']->update_settings();
$_SESSION['SES_ART_article']->save();
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_section']=null;
}
$_SESSION['SES_ART_master']->list_articles();
break;
case 'delete':
$_SESSION['SES_ART_master']->main_menu();
$_SESSION['SES_ART_article'] = new PHPWS_Article($_REQUEST['ARTICLE_id']);
if ($user->can('delete',$_SESSION['SES_ART_article']->author))
$_SESSION['SES_ART_article']->delete_article();
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_master']->list_articles();
break;
case 'expire':
$_SESSION['SES_ART_article'] = new PHPWS_Article($_REQUEST['ARTICLE_id']);
if ($_SESSION['OBJ_user']->allow_access('article', 'change_dates'))
$_SESSION['SES_ART_article']->expire();
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_master']->main_menu();
$_SESSION['SES_ART_master']->list_articles();
break;
case 'publish':
$_SESSION['SES_ART_article'] = new PHPWS_Article($_REQUEST['ARTICLE_id']);
if ($_SESSION['OBJ_user']->allow_access('article', 'change_dates'))
$_SESSION['SES_ART_article']->publish();
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_master']->main_menu();
$_SESSION['SES_ART_master']->list_articles();
break;
case 'set_main':
if ($_SESSION['OBJ_user']->allow_access('article', 'set_mainarticle'))
$_SESSION['SES_ART_master']->set_main_article();
$_SESSION['SES_ART_article']=null;
$_SESSION['SES_ART_master']->main_menu();
$_SESSION['SES_ART_master']->list_articles();
break;
case 'save_title':
if ($user->can('edit',$_SESSION['SES_ART_article']->author))
{
$_SESSION['SES_ART_article']->update_title();
$_SESSION['SES_ART_article']->edit_article($_SESSION['SES_ART_section']->id);
}
break;
/* If none of the above commands were given, edit the identified article */
default:
$_SESSION['SES_ART_article'] = new PHPWS_Article($_REQUEST['edit']);
if ($user->can('edit',$_SESSION['SES_ART_article']->author))
$_SESSION['SES_ART_article']->edit_article();
break;
}
return;
}
elseif (isset($_REQUEST['section']))
{
switch($_REQUEST['section'])
{
case 'save':
$_SESSION['SES_ART_section']->update();
break;
case 'edit':
$_SESSION['SES_ART_article']->edit_article($_REQUEST['SECT_id']);
return;
break;
case 'remove':
$_SESSION['SES_ART_article']->remove_section($_REQUEST['SECT_id']);
break;
case 'move_up':
if ($_REQUEST['SECT_id']!=reset($_SESSION['SES_ART_article']->order))
$_SESSION['SES_ART_article']->move_section($_REQUEST['SECT_id'], true);
break;
case 'move_down':
if ($_REQUEST['SECT_id']!=end($_SESSION['SES_ART_article']->order))
$_SESSION['SES_ART_article']->move_section($_REQUEST['SECT_id'], false);
break;
}
$_SESSION['SES_ART_article']->update_title();
if ($_SESSION['SES_ART_error'])
$_SESSION['SES_ART_article']->edit_article($_SESSION['SES_ART_section']->id);
else $_SESSION['SES_ART_article']->edit_article();
return;
}
elseif (isset($_REQUEST['config']))
{
$_SESSION['SES_ART_master']->main_menu();
switch($_REQUEST['config'])
{
case 'edit':
if ($_SESSION['OBJ_user']->allow_access('article', 'global_config_prefs'))
$_SESSION['SES_ART_master']->edit_configuration();
break;
case 'save':
if ($_SESSION['OBJ_user']->allow_access('article', 'global_config_prefs'))
$_SESSION['SES_ART_master']->save_configuration();
$_SESSION['SES_ART_master'] = new PHPWS_ArticleManager;
$_SESSION['SES_ART_master']->list_articles();
break;
case 'reset':
if ($_SESSION['OBJ_user']->allow_access('article', 'global_config_prefs'))
$_SESSION['SES_ART_master']->reset_configuration();
$_SESSION['SES_ART_master'] = new PHPWS_ArticleManager;
$_SESSION['SES_ART_master']->list_articles();
break;
case 'image_library':
if ($_SESSION['OBJ_user']->allow_access('article', 'images_in_library'))
$_SESSION['SES_ART_master']->manage_library();
break;
case 'save_library_item':
if ($_SESSION['OBJ_user']->allow_access('article', 'images_in_library'))
$_SESSION['SES_ART_master']->save_lib_item();
$_SESSION['SES_ART_master']->manage_library();
break;
case 'delete_library_item':
if ($_SESSION['OBJ_user']->allow_access('article', 'images_in_library'))
$_SESSION['SES_ART_master']->del_lib_item($_POST['LIB_image']);
$_SESSION['SES_ART_master']->manage_library();
break;
case 'import_pagemaster':
include(PHPWS_SOURCE_DIR . 'mod/article/inc/importPM.php');
break;
case 'import_announce':
include(PHPWS_SOURCE_DIR . 'mod/article/inc/importANN.php');
break;
}
return;
}
?>
|