mirror of
https://github.com/e107inc/e107.git
synced 2025-01-17 20:58:30 +01:00
145 lines
3.0 KiB
PHP
145 lines
3.0 KiB
PHP
<?php
|
|
/*
|
|
* e107 website system
|
|
*
|
|
* Copyright 2008-2010 e107 Inc (e107.org)
|
|
* Released under the terms and conditions of the
|
|
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
|
*
|
|
* Forum plugin version tools
|
|
*
|
|
* $URL$
|
|
* $Id$
|
|
*
|
|
*/
|
|
|
|
class forum_setup
|
|
{
|
|
function install_pre($var)
|
|
{
|
|
// print_a($var);
|
|
// echo "custom install 'pre' function<br /><br />";
|
|
}
|
|
|
|
function install_post($var)
|
|
{
|
|
$sql = e107::getDb();
|
|
$mes = e107::getMessage();
|
|
|
|
/*if($sql -> db_Update("user", "user_forums='0'")) // deprecated in 0.8
|
|
{
|
|
$mes->add("Setting all user_forums to 0.", E_MESSAGE_SUCCESS);
|
|
}*/
|
|
}
|
|
|
|
function uninstall_post($var)
|
|
{
|
|
$sql = e107::getDb();
|
|
$mes = e107::getMessage();
|
|
|
|
/* if($sql -> db_Update("user", "user_forums='0'")) // deprecated in 0.8
|
|
{
|
|
$mes->add("Setting all user_forums to 0.", E_MESSAGE_SUCCESS);
|
|
}*/
|
|
}
|
|
|
|
/*
|
|
* Call During Upgrade Check. May be used to check for existance of tables etc and if not found return TRUE to call for an upgrade.
|
|
*
|
|
*/
|
|
function upgrade_required()
|
|
{
|
|
if(!e107::getDb()->isTable('forum_thread'))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
|
|
if(!e107::getDb()->field('forum_thread','thread_id'))
|
|
{
|
|
return true; // true to trigger an upgrade alert, and false to not.
|
|
}
|
|
|
|
if(e107::getDb()->field('forum_thread', 'thread_sef'))
|
|
{
|
|
e107::getDb()->gen("ALTER TABLE `#forum_thread` DROP `thread_sef` ");
|
|
}
|
|
|
|
$legacyMenuPref = e107::getConfig('menu')->getPref();
|
|
//if(isset($legacyMenuPref['newforumposts_caption']))
|
|
//{
|
|
|
|
// }
|
|
|
|
// Check if e_print addon is loaded
|
|
if(!e107::getAddon('forum','e_print'))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
|
|
function upgrade_pre($var)
|
|
{
|
|
|
|
$sql = e107::getDb();
|
|
|
|
if(!$sql->isTable('forum_t') || !$sql->isEmpty('forum_thread')) // no table, so run a default plugin install procedure.
|
|
{
|
|
return false;
|
|
// e107::getSingleton('e107plugin')->refresh('forum');
|
|
}
|
|
else
|
|
{
|
|
e107::getRedirect()->go(e_PLUGIN_ABS.'forum/forum_update.php'); //Redirect upgrade to customized upgrade routine
|
|
}
|
|
|
|
//header('Location: '.e_PLUGIN.'forum/forum_update.php');
|
|
}
|
|
|
|
// After Automatic Upgrade Routine has completed.. run this. ;-)
|
|
function upgrade_post($var)
|
|
{
|
|
$sql = e107::getDb();
|
|
|
|
$config = e107::getPref('url_config');
|
|
|
|
if(!empty($config['forum']))
|
|
{
|
|
e107::getConfig()
|
|
->removePref('url_config/forum')
|
|
->removePref('url_locations/forum')
|
|
->save(false,true);
|
|
|
|
if(file_exists(e_PLUGIN."forum/url/url.php"))
|
|
{
|
|
@unlink(e_PLUGIN."forum/url/url.php");
|
|
@unlink(e_PLUGIN."forum/url/rewrite_url.php");
|
|
}
|
|
|
|
$bld = new eRouter;
|
|
$bld->buildGlobalConfig();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if($sql->isEmpty('forum_thread') === true && $sql->isTable('forum_t') && $sql->isEmpty('forum_t') === false)
|
|
{
|
|
$mes = e107::getMessage();
|
|
$mes->addSuccess("Migration is required. Please click 'Continue'.<br /><a class='btn btn-primary' href='".e_PLUGIN."forum/forum_update.php'>Continue</a>");
|
|
}
|
|
|
|
|
|
if(!e107::getAddon('forum','e_print'))
|
|
{
|
|
e107::getPlug()->clearCache()->buildAddonPrefLists();
|
|
}
|
|
|
|
}
|
|
}
|