// // ------------------------------------------------------------------------ // // This program is free software; you can redistribute it and/or modify // // it under the terms of the GNU General Public License as published by // // the Free Software Foundation; either version 2 of the License, or // // (at your option) any later version. // // // // You may not change or alter any portion of this comment or credits // // of supporting developers from this source code or any supporting // // source code which is considered copyrighted (c) material of the // // original comment or credit authors. // // // // This program is distributed in the hope that it will be useful, // // but WITHOUT ANY WARRANTY; without even the implied warranty of // // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // // GNU General Public License for more details. // // // // You should have received a copy of the GNU General Public License // // along with this program; if not, write to the Free Software // // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // ------------------------------------------------------------------------ // error_reporting (0); include_once './passwd.php'; if(INSTALL_USER != '' || INSTALL_PASSWD != ''){ if (!isset($_SERVER['PHP_AUTH_USER'])) { header('WWW-Authenticate: Basic realm="XOOPS Installer"'); header('HTTP/1.0 401 Unauthorized'); echo 'You can not access this XOOPS installer.'; exit; } else { if(INSTALL_USER != '' && $_SERVER['PHP_AUTH_USER'] != INSTALL_USER){ header('HTTP/1.0 401 Unauthorized'); echo 'You can not access this XOOPS installer.'; exit; } if(INSTALL_PASSWD != $_SERVER['PHP_AUTH_PW']){ header('HTTP/1.0 401 Unauthorized'); echo 'You can not access this XOOPS installer.'; exit; } } } include_once './class/textsanitizer.php'; $myts =& TextSanitizer::getInstance(); if ( isset($_POST) ) { foreach ($_POST as $k=>$v) { if (!is_array($v)) { $$k = $myts->stripSlashesGPC($v); } } } $language = 'english'; if ( !empty($_POST['lang']) ) { $language = $_POST['lang']; } else { if (isset($_COOKIE['install_lang'])) { $language = $_COOKIE['install_lang']; } else { //$_SERVER['HTTP_ACCEPT_LANGUAGE'] = 'ja,en-us;q=0.7,zh-TW;q=0.6'; if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { $accept_langs = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); $language_array = array('en' => 'english', 'ja' => 'japanese', 'fr' => 'french', 'de' => 'german', 'nl' => 'dutch', 'es' => 'spanish', 'tw' => 'tchinese', 'cn' => 'schinese', 'ro' => 'romanian'); foreach ($accept_langs as $al) { $al = strtolower($al); $al_len = strlen($al); if ($al_len > 2) { if (preg_match("/([a-z]{2});q=[0-9.]+$/", $al, $al_match)) { $al = $al_match[1]; } else { continue; } } if (isset($language_array[$al])) { $language = $language_array[$al]; break; } } } } } if ( file_exists("./language/".$language."/install.php") ) { include_once "./language/".$language."/install.php"; } elseif ( file_exists("./language/english/install.php") ) { include_once "./language/english/install.php"; $language = 'english'; } else { echo 'no language file.'; exit(); } setcookie("install_lang", $language); //include './include/viewerrors.php'; //include './include/functions.php'; define('_OKIMG'," "); define('_NGIMG'," "); $b_back = ''; $b_reload = ''; $b_next = ''; // options for mainfile.php $xoopsOption['nocommon'] = true; define('XOOPS_INSTALL', 1); if(!empty($_POST['op'])) $op = $_POST['op']; elseif(!empty($_GET['op'])) $op = $_GET['op']; else $op = ''; ///// main switch ($op) { default: case "langselect": $title = _INSTALL_L0; if (!defined('_INSTALL_L128')) { define('_INSTALL_L128', 'Choose language to be used for the installation process'); } $content = "

"._INSTALL_L128."

" .""; $b_next = array('start', _INSTALL_L80 ); include 'install_tpl.php'; break; case "start": $title = _INSTALL_L0; $content = "
\n"; include './language/'.$language.'/welcome.php'; $content .= "
\n"; $b_next = array('modcheck', _INSTALL_L81 ); include 'install_tpl.php'; break; case "modcheck": $writeok = array("uploads/", "cache/", "templates_c/", "mainfile.php"); $title = _INSTALL_L82; $content = "
\n"; $error = false; foreach ($writeok as $wok) { if (!is_dir("../".$wok)) { if ( file_exists("../".$wok) ) { @chmod("../".$wok, 0666); if (! is_writeable("../".$wok)) { $content .= _NGIMG.sprintf(_INSTALL_L83, $wok)."
"; $error = true; }else{ $content .= _OKIMG.sprintf(_INSTALL_L84, $wok)."
"; } } } else { @chmod("../".$wok, 0777); if (! is_writeable("../".$wok)) { $content .= _NGIMG.sprintf(_INSTALL_L85, $wok)."
"; $error = true; }else{ $content .= _OKIMG.sprintf(_INSTALL_L86, $wok)."
"; } } } $content .= "
\n"; if(! $error) { $content .= "

"._INSTALL_L87."

"; $b_next = array('dbform', _INSTALL_L89 ); }else{ $content .= "

"._INSTALL_L46."

"; $b_reload = true; } include 'install_tpl.php'; break; case "dbform": include_once '../mainfile.php'; include_once 'class/settingmanager.php'; $sm = new setting_manager(); $sm->readConstant(); $content = $sm->editform(); $title = _INSTALL_L90; $b_next = array('dbconfirm',_INSTALL_L91); include 'install_tpl.php'; break; case "dbconfirm": include_once 'class/settingmanager.php'; $sm = new setting_manager(true); $content = $sm->checkData(); if (!empty($content)) { $content .= $sm->editform(); $b_next = array('dbconfirm',_INSTALL_L91); include 'install_tpl.php'; break; } $title = _INSTALL_L53; $content = $sm->confirmForm(); $b_next = array('dbsave',_INSTALL_L92 ); $b_back = array('', _INSTALL_L93 ); include 'install_tpl.php'; break; case "dbsave": include_once "./class/mainfilemanager.php"; $title = _INSTALL_L88; $mm = new mainfile_manager("../mainfile.php"); $ret = $mm->copyDistFile(); if(! $ret){ $content = _INSTALL_L60; include 'install_tpl.php'; exit(); } $mm->setRewrite('XOOPS_ROOT_PATH', trim($myts->stripSlashesGPC($_POST['root_path']))); $mm->setRewrite('XOOPS_URL', trim($myts->stripSlashesGPC($_POST['xoops_url']))); $mm->setRewrite('XOOPS_DB_TYPE', trim($myts->stripSlashesGPC($_POST['database']))); $mm->setRewrite('XOOPS_DB_PREFIX', trim($myts->stripSlashesGPC($_POST['prefix']))); $mm->setRewrite('XOOPS_DB_HOST', trim($myts->stripSlashesGPC($_POST['dbhost']))); $mm->setRewrite('XOOPS_DB_USER', trim($myts->stripSlashesGPC($_POST['dbuname']))); $mm->setRewrite('XOOPS_DB_PASS', trim($myts->stripSlashesGPC($_POST['dbpass']))); $mm->setRewrite('XOOPS_DB_NAME', trim($myts->stripSlashesGPC($_POST['dbname']))); $mm->setRewrite('XOOPS_DB_PCONNECT', intval($_POST['db_pconnect'])); $mm->setRewrite('XOOPS_GROUP_ADMIN', 1); $mm->setRewrite('XOOPS_GROUP_USERS', 2); $mm->setRewrite('XOOPS_GROUP_ANONYMOUS', 3); // Check if XOOPS_CHECK_PATH should be initially set or not $xoopsPathTrans = isset($_SERVER['PATH_TRANSLATED']) ? $_SERVER['PATH_TRANSLATED'] : $_SERVER['SCRIPT_FILENAME']; if ( DIRECTORY_SEPARATOR != '/' ) { // IIS6 doubles the \ chars $xoopsPathTrans = str_replace( strpos( $xoopsPathTrans, '\\\\', 2 ) ? '\\\\' : DIRECTORY_SEPARATOR, '/', $xoopsPathTrans); } $mm->setRewrite('XOOPS_CHECK_PATH', strcasecmp( substr($xoopsPathTrans, 0, strlen($myts->stripSlashesGPC($_POST['root_path']))), $_POST['root_path']) ? 0 : 1 ); $ret = $mm->doRewrite(); if(! $ret){ $content = _INSTALL_L60; include 'install_tpl.php'; exit(); } $content = $mm->report(); $content .= "

"._INSTALL_L62."

\n"; $b_next = array('mainfile', _INSTALL_L94 ); include 'install_tpl.php'; break; case "mainfile": // checking XOOPS_ROOT_PATH and XOOPS_URL include_once "../mainfile.php"; $title = _INSTALL_L94; $content = "
\n"; $detected = str_replace("\\", "/", getcwd()); // " $detected = str_replace("/install", "", $detected); if ( substr($detected, -1) == "/" ) { $detected = substr($detected, 0, -1); } if (empty($detected)){ $content .= _NGIMG._INSTALL_L95.'
'; } elseif ( XOOPS_ROOT_PATH != $detected ) { $content .= _NGIMG.sprintf(_INSTALL_L96,$detected). '
'; }else { $content .= _OKIMG._INSTALL_L97.'
'; } if(!is_dir(XOOPS_ROOT_PATH)){ $content .= _NGIMG._INSTALL_L99.'
'; } if(preg_match('/^http[s]?:\/\/(.*)[^\/]+$/i',XOOPS_URL)){ $content .= _OKIMG._INSTALL_L100.'
'; }else{ $content .= _NGIMG._INSTALL_L101.'
'; } $content .= "
\n"; $content .= "
\n"; $content .= _INSTALL_L11."".XOOPS_ROOT_PATH."
"; $content .= _INSTALL_L12."".XOOPS_URL."
"; $content .= "
\n"; $content .= "

"._INSTALL_L13."

\n"; $b_next = array('initial', _INSTALL_L102 ); $b_back = array('start', _INSTALL_L103 ); $b_reload = true; include 'install_tpl.php'; //mainfile_settings(); break; case "initial": // confirm database setting include_once "../mainfile.php"; $content = "\n"; $content .= "
"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "
"._INSTALL_L27."  ".XOOPS_DB_HOST."
"._INSTALL_L28."  ".XOOPS_DB_USER."
"._INSTALL_L29."  ".XOOPS_DB_NAME."
"._INSTALL_L30."  ".XOOPS_DB_PREFIX."

\n"; $content .= "
"; $content .= _INSTALL_L13."

\n"; $content .= "
\n"; $b_next = array('checkDB', _INSTALL_L104); $b_back = array('start', _INSTALL_L103); $b_reload = true; $title = _INSTALL_L102; include 'install_tpl.php'; break; case "checkDB": include_once "../mainfile.php"; include_once './class/dbmanager.php'; $dbm = new db_manager; $title = _INSTALL_L104; $content = "
\n"; if (! $dbm->isConnectable()) { $content .= _NGIMG._INSTALL_L106."
"; $content .= "

"._INSTALL_L107; $content .= "
\n"; $b_back = array('start', _INSTALL_L103); $b_reload = true; }else{ $content .= _OKIMG._INSTALL_L108."
"; if (! $dbm->dbExists()) { $content .= _NGIMG.sprintf(_INSTALL_L109, XOOPS_DB_NAME)."
"; $content .= "\n"; $content .= "

"._INSTALL_L21."
" ."".XOOPS_DB_NAME."

" ."

"._INSTALL_L22."

"; $b_next = array('createDB', _INSTALL_L105); $b_back = array('start', _INSTALL_L103); $b_reload = true; }else{ if (!$dbm->tableExists('users')) { $content .= _OKIMG.sprintf(_INSTALL_L110, XOOPS_DB_NAME)."
"; $content .= "\n"; $content .= "

"._INSTALL_L111."

"; $b_next = array('createTables', _INSTALL_L40); } else { $content .= _OKIMG.sprintf(_INSTALL_L110, XOOPS_DB_NAME)."
"; if (!$dbm->tableExists('config')) { $content .= "\n"; $content .= "

"._INSTALL_L130."

"; $b_next = array('updateTables', _INSTALL_L14); } else { $content .= _NGIMG._INSTALL_L131."
"; $content .= "\n"; } } } } include 'install_tpl.php'; break; case "createDB": include_once "../mainfile.php"; include_once './class/dbmanager.php'; $dbm = new db_manager; if(! $dbm->createDB()){ $content = "

"._INSTALL_L31."

"; $b_next = array('checkDB', _INSTALL_L104); $b_back = array('start', _INSTALL_L103); }else{ $content = "

".sprintf(_INSTALL_L43, XOOPS_DB_NAME)."

"; $b_next = array('checkDB', _INSTALL_L104); } include 'install_tpl.php'; break; case "createTables": include_once "../mainfile.php"; include_once './class/dbmanager.php'; $dbm = new db_manager; //$content = "
\n"; $tables = array(); $result = $dbm->queryFromFile('./sql/'.XOOPS_DB_TYPE.'.structure.sql'); $content = $dbm->report(); if(! $result ){ //$deleted = $dbm->deleteTables($tables); $content .= "

"._INSTALL_L114."

\n"; $b_back = array('start', _INSTALL_L103); }else{ $content .= "

"._INSTALL_L115."

\n"; $b_next = array('siteInit', _INSTALL_L112); } include 'install_tpl.php'; break; case 'updateTables': include_once "../mainfile.php"; include_once './class/dbmanager.php'; $db = new db_manager; $sql = 'SELECT * FROM '.$db->prefix('groups'); $result = $db->query($sql); $content = '
'._INSTALL_L157.'
'; $content .= ''; while ($myrow = $db->fetchArray($result)) { if ($myrow['type'] == 'Admin') { $content .= ''; } elseif ($myrow['type'] == 'User') { $content .= ''; } else { $content .= ''; } } $content .= '
'._INSTALL_L158.''._INSTALL_L159.''._INSTALL_L160.''._INSTALL_L161.'
'.$myrow['name'].'  
'.$myrow['name'].'  
'.$myrow['name'].'  
'; $b_back = array(); $b_next = array('updateTables_go', _INSTALL_L132); include 'install_tpl.php'; break; case 'updateTables_go': include_once "../mainfile.php"; $error = false; $g_webmasters = isset($g_webmasters) ? intval($g_webmasters) : 0; $g_users = isset($g_users) ? intval($g_users) : 0; $g_anonymous = isset($g_anonymous) ? intval($g_anonymous) : 0; if (empty($g_webmasters) || empty($g_users) || empty($g_anonymous)) { $error = true; } else { include_once "./class/mainfilemanager.php"; $title = _INSTALL_L88; $mm = new mainfile_manager("../mainfile.php"); $mm->setRewrite('XOOPS_GROUP_ADMIN', $g_webmasters); $mm->setRewrite('XOOPS_GROUP_USERS', $g_users); $mm->setRewrite('XOOPS_GROUP_ANONYMOUS', $g_anonymous); $ret = $mm->doRewrite(); if(!$ret){ $content = _INSTALL_L60; include 'install_tpl.php'; exit(); } } if (false != $error) { $b_back = array(); $content = _INSTALL_L162; include 'install_tpl.php'; break; } include_once './class/dbmanager.php'; $dbm = new db_manager; if (!$dbm->query("ALTER TABLE ".$dbm->prefix("newblocks")." ADD dirname VARCHAR(50) NOT NULL, ADD func_file VARCHAR(50) NOT NULL, ADD show_func VARCHAR(50) NOT NULL, ADD edit_func VARCHAR(50) NOT NULL")) { } $result = $dbm->queryFromFile('./sql/upgrade/'.XOOPS_DB_TYPE.'.structure.sql'); $content = $dbm->report(); if (!$result) { $content .= "

"._INSTALL_L135."

\n"; $b_back = array(); } else { $content .= "

"._INSTALL_L136."

\n"; $b_next = array('updateConfig', _INSTALL_L14); } include 'install_tpl.php'; break; case 'updateConfig': $b_next = array('updateConfig_go', _INSTALL_L144); $content = "

"._INSTALL_L143."

\n"; include 'install_tpl.php'; break; case 'updateConfig_go': include_once "../mainfile.php"; $language = check_language($language); if ( file_exists("./language/".$language."/install2.php") ) { include_once "./language/".$language."/install2.php"; } elseif ( file_exists("./language/english/install2.php") ) { include_once "./language/english/install2.php"; $language = 'english'; } else { echo 'no language file (install2.php).'; exit(); } include_once './class/dbmanager.php'; $dbm = new db_manager; // default settings $xoopsConfig['sitename'] = 'XOOPS Site'; $xoopsConfig['slogan'] = 'Just use it!'; $xoopsConfig['adminmail'] = ''; $xoopsConfig['language'] = 'english'; $xoopsConfig['anonymous'] = 'Anonymous'; $xoopsConfig['minpass'] = 5; $xoopsConfig['anonpost'] = 0; $xoopsConfig['new_user_notify'] = 0; $xoopsConfig['new_user_notify_group'] = 1; $xoopsConfig['self_delete'] = 0; $xoopsConfig['gzip_compression'] = 0; $xoopsConfig['uname_test_level'] = 0; $xoopsConfig['usercookie'] = "xoops_user"; $xoopsConfig['sessioncookie'] = "xoops_session"; $xoopsConfig['sessionexpire'] = 4500; $xoopsConfig['server_TZ'] = 0; $xoopsConfig['default_TZ'] = 0; $xoopsConfig['banners'] = 1; $xoopsConfig['com_mode'] = "nest"; $xoopsConfig['com_order'] = 1; $xoopsConfig['my_ip'] = "127.0.0.1"; $xoopsConfig['avatar_allow_upload'] = 0; $xoopsConfig['avatar_width'] = 120; $xoopsConfig['avatar_height'] = 120; $xoopsConfig['avatar_maxsize'] = 15000; // override deafault with 1.3.x settings if any if (file_exists('../modules/system/cache/config.php')) { include_once('../modules/system/cache/config.php'); } $dbm->insert('config', " VALUES (1, 0, 1, 'sitename', '_MD_AM_SITENAME', '".addslashes($xoopsConfig['sitename'])."', '_MD_AM_SITENAMEDSC', 'textbox', 'text', 0)"); $dbm->insert('config', " VALUES (2, 0, 1, 'slogan', '_MD_AM_SLOGAN', '".addslashes($xoopsConfig['slogan'])."', '_MD_AM_SLOGANDSC', 'textbox', 'text', 2)"); $dbm->insert('config', " VALUES (3, 0, 1, 'language', '_MD_AM_LANGUAGE', '".$xoopsConfig['language']."', '_MD_AM_LANGUAGEDSC', 'language', 'other', 4)"); $dbm->insert('config', " VALUES (4, 0, 1, 'startpage', '_MD_AM_STARTPAGE', '--', '_MD_AM_STARTPAGEDSC', 'startpage', 'other', 6)"); $dbm->insert('config', " VALUES (5, 0, 1, 'server_TZ', '_MD_AM_SERVERTZ', '".addslashes($xoopsConfig['server_TZ'])."', '_MD_AM_SERVERTZDSC', 'timezone', 'float', 8)"); $dbm->insert('config', " VALUES (6, 0, 1, 'default_TZ', '_MD_AM_DEFAULTTZ', '".addslashes($xoopsConfig['default_TZ'])."', '_MD_AM_DEFAULTTZDSC', 'timezone', 'float', 10)"); $dbm->insert('config', " VALUES (7, 0, 1, 'theme_set', '_MD_AM_DTHEME', 'default', '_MD_AM_DTHEMEDSC', 'theme', 'other', 12)"); $dbm->insert('config', " VALUES (8, 0, 1, 'anonymous', '_MD_AM_ANONNAME', '".addslashes($xoopsConfig['anonymous'])."', '_MD_AM_ANONNAMEDSC', 'textbox', 'text', 15)"); $dbm->insert('config', " VALUES (9, 0, 1, 'gzip_compression', '_MD_AM_USEGZIP', '".intval($xoopsConfig['gzip_compression'])."', '_MD_AM_USEGZIPDSC', 'yesno', 'int', 16)"); $dbm->insert('config', " VALUES (10, 0, 1, 'usercookie', '_MD_AM_USERCOOKIE', '".addslashes($xoopsConfig['usercookie'])."', '_MD_AM_USERCOOKIEDSC', 'textbox', 'text', 18)"); $dbm->insert('config', " VALUES (11, 0, 1, 'session_expire', '_MD_AM_SESSEXPIRE', '15', '_MD_AM_SESSEXPIREDSC', 'textbox', 'int', 22)"); $dbm->insert('config', " VALUES (12, 0, 1, 'banners', '_MD_AM_BANNERS', '".intval($xoopsConfig['banners'])."', '_MD_AM_BANNERSDSC', 'yesno', 'int', 26)"); $dbm->insert('config', " VALUES (13, 0, 1, 'debug_mode', '_MD_AM_DEBUGMODE', '0', '_MD_AM_DEBUGMODEDSC', 'select', 'int', 24)"); $dbm->insert('config', " VALUES (14, 0, 1, 'my_ip', '_MD_AM_MYIP', '".addslashes($xoopsConfig['my_ip'])."', '_MD_AM_MYIPDSC', 'textbox', 'text', 29)"); $dbm->insert('config', " VALUES (15, 0, 1, 'use_ssl', '_MD_AM_USESSL', '0', '_MD_AM_USESSLDSC', 'yesno', 'int', 30)"); $dbm->insert('config', " VALUES (16, 0, 1, 'session_name', '_MD_AM_SESSNAME', 'xoops_session', '_MD_AM_SESSNAMEDSC', 'textbox', 'text', 20)"); $dbm->insert('config', " VALUES (17, 0, 2, 'minpass', '_MD_AM_MINPASS', '".intval($xoopsConfig['minpass'])."', '_MD_AM_MINPASSDSC', 'textbox', 'int', 1)"); $dbm->insert('config', " VALUES (18, 0, 2, 'minuname', '_MD_AM_MINUNAME', '5', '_MD_AM_MINUNAMEDSC', 'textbox', 'int', 2)"); $dbm->insert('config', " VALUES (19, 0, 2, 'new_user_notify', '_MD_AM_NEWUNOTIFY', '".intval($xoopsConfig['new_user_notify'])."', '_MD_AM_NEWUNOTIFYDSC', 'yesno', 'int', 4)"); $dbm->insert('config', " VALUES (20, 0, 2, 'new_user_notify_group', '_MD_AM_NOTIFYTO', ".intval($xoopsConfig['new_user_notify_group']).", '_MD_AM_NOTIFYTODSC', 'group', 'int', 6)"); $dbm->insert('config', " VALUES (21, 0, 2, 'activation_type', '_MD_AM_ACTVTYPE', '0', '_MD_AM_ACTVTYPEDSC', 'select', 'int', 8)"); $dbm->insert('config', " VALUES (22, 0, 2, 'activation_group', '_MD_AM_ACTVGROUP', ".XOOPS_GROUP_ADMIN.", '_MD_AM_ACTVGROUPDSC', 'group', 'int', 10)"); $dbm->insert('config', " VALUES (23, 0, 2, 'uname_test_level', '_MD_AM_UNAMELVL', '".intval($xoopsConfig['uname_test_level'])."', '_MD_AM_UNAMELVLDSC', 'select', 'int', 12)"); $dbm->insert('config', " VALUES (24, 0, 2, 'avatar_allow_upload', '_MD_AM_AVATARALLOW', '".intval($xoopsConfig['avatar_allow_upload'])."', '_MD_AM_AVATARALWDSC', 'yesno', 'int', 14)"); $dbm->insert('config', " VALUES (27, 0, 2, 'avatar_width', '_MD_AM_AVATARW', '".intval($xoopsConfig['avatar_width'])."', '_MD_AM_AVATARWDSC', 'textbox', 'int', 16)"); $dbm->insert('config', " VALUES (28, 0, 2, 'avatar_height', '_MD_AM_AVATARH', '".intval($xoopsConfig['avatar_height'])."', '_MD_AM_AVATARHDSC', 'textbox', 'int', 18)"); $dbm->insert('config', " VALUES (29, 0, 2, 'avatar_maxsize', '_MD_AM_AVATARMAX', '".intval($xoopsConfig['avatar_maxsize'])."', '_MD_AM_AVATARMAXDSC', 'textbox', 'int', 20)"); $dbm->insert('config', " VALUES (30, 0, 1, 'adminmail', '_MD_AM_ADMINML', '".addslashes($xoopsConfig['adminmail'])."', '_MD_AM_ADMINMLDSC', 'textbox', 'text', 3)"); $dbm->insert('config', " VALUES (31, 0, 2, 'self_delete', '_MD_AM_SELFDELETE', '".intval($xoopsConfig['self_delete'])."', '_MD_AM_SELFDELETEDSC', 'yesno', 'int', 22)"); $dbm->insert('config', " VALUES (32, 0, 1, 'com_mode', '_MD_AM_COMMODE', '".addslashes($xoopsConfig['com_mode'])."', '_MD_AM_COMMODEDSC', 'select', 'text', 34)"); $dbm->insert('config', " VALUES (33, 0, 1, 'com_order', '_MD_AM_COMORDER', '".intval($xoopsConfig['com_order'])."', '_MD_AM_COMORDERDSC', 'select', 'int', 36)"); $dbm->insert('config', " VALUES (34, 0, 2, 'bad_unames', '_MD_AM_BADUNAMES', '".addslashes(serialize(array('webmaster', '^xoops', '^admin')))."', '_MD_AM_BADUNAMESDSC', 'textarea', 'array', 24)"); $dbm->insert('config', " VALUES (35, 0, 2, 'bad_emails', '_MD_AM_BADEMAILS', '".addslashes(serialize(array('xoops.org$')))."', '_MD_AM_BADEMAILSDSC', 'textarea', 'array', 26)"); $dbm->insert('config', " VALUES (36, 0, 2, 'maxuname', '_MD_AM_MAXUNAME', '10', '_MD_AM_MAXUNAMEDSC', 'textbox', 'int', 3)"); $dbm->insert('config', " VALUES (37, 0, 1, 'bad_ips', '_MD_AM_BADIPS', '".addslashes(serialize(array('127.0.0.1')))."', '_MD_AM_BADIPSDSC', 'textarea', 'array', 42)"); $dbm->insert('config', " VALUES (38, 0, 3, 'meta_keywords', '_MD_AM_METAKEY', 'news, technology, headlines, xoops, xoop, nuke, myphpnuke, myphp-nuke, phpnuke, SE, geek, geeks, hacker, hackers, linux, software, download, downloads, free, community, mp3, forum, forums, bulletin, board, boards, bbs, php, survey, poll, polls, kernel, comment, comments, portal, odp, open, source, opensource, FreeSoftware, gnu, gpl, license, Unix, *nix, mysql, sql, database, databases, web site, weblog, guru, module, modules, theme, themes, cms, content management', '_MD_AM_METAKEYDSC', 'textarea', 'text', 0)"); $dbm->insert('config', " VALUES (39, 0, 3, 'footer', '_MD_AM_FOOTER', 'Powered by XOOPS 2.0 © 2001-" . date('Y', time()) . " The XOOPS Project', '_MD_AM_FOOTERDSC', 'textarea', 'text', 20)"); $dbm->insert('config', " VALUES (40, 0, 4, 'censor_enable', '_MD_AM_DOCENSOR', '0', '_MD_AM_DOCENSORDSC', 'yesno', 'int', 0)"); $dbm->insert('config', " VALUES (41, 0, 4, 'censor_words', '_MD_AM_CENSORWRD', '".addslashes(serialize(array('fuck', 'shit')))."', '_MD_AM_CENSORWRDDSC', 'textarea', 'array', 1)"); $dbm->insert('config', " VALUES (42, 0, 4, 'censor_replace', '_MD_AM_CENSORRPLC', '#OOPS#', '_MD_AM_CENSORRPLCDSC', 'textbox', 'text', 2)"); $dbm->insert('config', " VALUES (43, 0, 3, 'meta_robots', '_MD_AM_METAROBOTS', 'index,follow', '_MD_AM_METAROBOTSDSC', 'select', 'text', 2)"); $dbm->insert('config', " VALUES (44, 0, 5, 'enable_search', '_MD_AM_DOSEARCH', '1', '_MD_AM_DOSEARCHDSC', 'yesno', 'int', 0)"); $dbm->insert('config', " VALUES (45, 0, 5, 'keyword_min', '_MD_AM_MINSEARCH', '5', '_MD_AM_MINSEARCHDSC', 'textbox', 'int', 1)"); $dbm->insert('config', " VALUES (46, 0, 2, 'avatar_minposts', '_MD_AM_AVATARMP', '0', '_MD_AM_AVATARMPDSC', 'textbox', 'int', 15)"); $dbm->insert('config', " VALUES (47, 0, 1, 'enable_badips', '_MD_AM_DOBADIPS', '0', '_MD_AM_DOBADIPSDSC', 'yesno', 'int', 40)"); $dbm->insert('config', " VALUES (48, 0, 3, 'meta_rating', '_MD_AM_METARATING', 'general', '_MD_AM_METARATINGDSC', 'select', 'text', 4)"); $dbm->insert('config', " VALUES (49, 0, 3, 'meta_author', '_MD_AM_METAAUTHOR', 'XOOPS', '_MD_AM_METAAUTHORDSC', 'textbox', 'text', 6)"); $dbm->insert('config', " VALUES (50, 0, 3, 'meta_copyright', '_MD_AM_METACOPYR', 'Copyright © 2001-2003', '_MD_AM_METACOPYRDSC', 'textbox', 'text', 8)"); $dbm->insert('config', " VALUES (51, 0, 3, 'meta_description', '_MD_AM_METADESC', 'XOOPS is a dynamic Object Oriented based open source portal script written in PHP.', '_MD_AM_METADESCDSC', 'textarea', 'text', 1)"); $dbm->insert('config', " VALUES (52, 0, 2, 'allow_chgmail', '_MD_AM_ALLWCHGMAIL', '0', '_MD_AM_ALLWCHGMAILDSC', 'yesno', 'int', 3)"); $dbm->insert('config', " VALUES (53, 0, 1, 'use_mysession', '_MD_AM_USEMYSESS', '0', '_MD_AM_USEMYSESSDSC', 'yesno', 'int', 19)"); $dbm->insert('config', " VALUES (54, 0, 2, 'reg_dispdsclmr', '_MD_AM_DSPDSCLMR', 1, '_MD_AM_DSPDSCLMRDSC', 'yesno', 'int', 30)"); $dbm->insert('config', " VALUES (55, 0, 2, 'reg_disclaimer', '_MD_AM_REGDSCLMR', '".addslashes(_INSTALL_DISCLMR)."', '_MD_AM_REGDSCLMRDSC', 'textarea', 'text', 32)"); $dbm->insert('config', " VALUES (56, 0, 2, 'allow_register', '_MD_AM_ALLOWREG', 1, '_MD_AM_ALLOWREGDSC', 'yesno', 'int', 0)"); $dbm->insert('config', " VALUES (57, 0, 1, 'theme_fromfile', '_MD_AM_THEMEFILE', '0', '_MD_AM_THEMEFILEDSC', 'yesno', 'int', 13)"); $dbm->insert('config', " VALUES (58, 0, 1, 'closesite', '_MD_AM_CLOSESITE', '0', '_MD_AM_CLOSESITEDSC', 'yesno', 'int', 26)"); $dbm->insert('config', " VALUES (59, 0, 1, 'closesite_okgrp', '_MD_AM_CLOSESITEOK', '".addslashes(serialize(array('1')))."', '_MD_AM_CLOSESITEOKDSC', 'group_multi', 'array', 27)"); $dbm->insert('config', " VALUES (60, 0, 1, 'closesite_text', '_MD_AM_CLOSESITETXT', '"._INSTALL_L165."', '_MD_AM_CLOSESITETXTDSC', 'textarea', 'text', 28)"); $dbm->insert('config', " VALUES (61, 0, 1, 'sslpost_name', '_MD_AM_SSLPOST', 'xoops_ssl', '_MD_AM_SSLPOSTDSC', 'textbox', 'text', 31)"); $dbm->insert('config', " VALUES (62, 0, 1, 'module_cache', '_MD_AM_MODCACHE', '', '_MD_AM_MODCACHEDSC', 'module_cache', 'array', 50)"); $dbm->insert('config', " VALUES (63, 0, 1, 'template_set', '_MD_AM_DTPLSET', 'default', '_MD_AM_DTPLSETDSC', 'tplset', 'other', 14)"); $dbm->insert('config', " VALUES (64,0,6,'mailmethod','_MD_AM_MAILERMETHOD','mail','_MD_AM_MAILERMETHODDESC','select','text',4)"); $dbm->insert('config', " VALUES (65,0,6,'smtphost','_MD_AM_SMTPHOST','a:1:{i:0;s:0:\"\";}', '_MD_AM_SMTPHOSTDESC','textarea','array',6)"); $dbm->insert('config', " VALUES (66,0,6,'smtpuser','_MD_AM_SMTPUSER','','_MD_AM_SMTPUSERDESC','textbox','text',7)"); $dbm->insert('config', " VALUES (67,0,6,'smtppass','_MD_AM_SMTPPASS','','_MD_AM_SMTPPASSDESC','password','text',8)"); $dbm->insert('config', " VALUES (68,0,6,'sendmailpath','_MD_AM_SENDMAILPATH','/usr/sbin/sendmail','_MD_AM_SENDMAILPATHDESC','textbox','text',5)"); $dbm->insert('config', " VALUES (69,0,6,'from','_MD_AM_MAILFROM','','_MD_AM_MAILFROMDESC','textbox','text',1)"); $dbm->insert('config', " VALUES (70,0,6,'fromname','_MD_AM_MAILFROMNAME','','_MD_AM_MAILFROMNAMEDESC','textbox','text',2)"); $dbm->insert('config', " VALUES (71, 0, 1, 'sslloginlink', '_MD_AM_SSLLINK', 'https://', '_MD_AM_SSLLINKDSC', 'textbox', 'text', 33)"); $dbm->insert('config', " VALUES (72, 0, 1, 'theme_set_allowed', '_MD_AM_THEMEOK', '".serialize(array('default'))."', '_MD_AM_THEMEOKDSC', 'theme_multi', 'array', 13)"); $dbm->insert('config', " VALUES (73,0,6,'fromuid','_MD_AM_MAILFROMUID','1','_MD_AM_MAILFROMUIDDESC','user','int',3)"); $dbm->insert('config', " VALUES (74,0,7,'auth_method','_MD_AM_AUTHMETHOD','xoops','_MD_AM_AUTHMETHODDESC','select','text',1)"); $dbm->insert('config', " VALUES (75,0,7,'ldap_port','_MD_AM_LDAP_PORT','389','_MD_AM_LDAP_PORT','textbox','int',2)"); $dbm->insert('config', " VALUES (76,0,7,'ldap_server','_MD_AM_LDAP_SERVER','your directory server','_MD_AM_LDAP_SERVER_DESC','textbox','text',3)"); $dbm->insert('config', " VALUES (77,0,7,'ldap_base_dn','_MD_AM_LDAP_BASE_DN','dc=xoops,dc=org','_MD_AM_LDAP_BASE_DN_DESC','textbox','text',4)"); $dbm->insert('config', " VALUES (78,0,7,'ldap_manager_dn','_MD_AM_LDAP_MANAGER_DN','manager_dn','_MD_AM_LDAP_MANAGER_DN_DESC','textbox','text',5)"); $dbm->insert('config', " VALUES (79,0,7,'ldap_manager_pass','_MD_AM_LDAP_MANAGER_PASS','manager_pass','_MD_AM_LDAP_MANAGER_PASS_DESC','password','text',6)"); $dbm->insert('config', " VALUES (80,0,7,'ldap_version','_MD_AM_LDAP_VERSION','3','_MD_AM_LDAP_VERSION_DESC','textbox','text', 7)"); $dbm->insert('config', " VALUES (81,0,7,'ldap_users_bypass','_MD_AM_LDAP_USERS_BYPASS','".serialize(array('admin'))."','_MD_AM_LDAP_USERS_BYPASS_DESC','textarea','array',8)"); $dbm->insert('config', " VALUES (82,0,7,'ldap_loginname_asdn','_MD_AM_LDAP_LOGINNAME_ASDN','uid_asdn','_MD_AM_LDAP_LOGINNAME_ASDN_D','yesno','int',9)"); $dbm->insert('config', " VALUES (83,0,7,'ldap_loginldap_attr', '_MD_AM_LDAP_LOGINLDAP_ATTR', 'uid', '_MD_AM_LDAP_LOGINLDAP_ATTR_D', 'textbox', 'text', 10)"); $dbm->insert('config', " VALUES (84,0,7,'ldap_filter_person','_MD_AM_LDAP_FILTER_PERSON','','_MD_AM_LDAP_FILTER_PERSON_DESC','textbox','text',11)"); $dbm->insert('config', " VALUES (85,0,7,'ldap_domain_name','_MD_AM_LDAP_DOMAIN_NAME','mydomain','_MD_AM_LDAP_DOMAIN_NAME_DESC','textbox','text',12)"); $dbm->insert('config', " VALUES (86,0,7,'ldap_provisionning','_MD_AM_LDAP_PROVIS','0','_MD_AM_LDAP_PROVIS_DESC','yesno','int',13)"); $dbm->insert('config', " VALUES (87,0,7,'ldap_provisionning_group','_MD_AM_LDAP_PROVIS_GROUP','a:1:{i:0;s:1:\"2\";}','_MD_AM_LDAP_PROVIS_GROUP_DSC','group_multi','array',14)"); // default the default theme $time = time(); $dbm->insert('tplset', " VALUES (1, 'default', 'XOOPS Default Theme', '', ".$time.")"); // include_once './class/cachemanager.php'; // $cm = new cache_manager; // $skinfiles = array('1' => 'skin.html', '2' => 'style.css' // , '3' => 'styleNN.css','4' => 'styleMAC.css' // , '5' => 'skin_blockleft.html', '6' => 'skin_blockright.html' // , '7' => 'skin_blockcenter_l.html', '8' => 'skin_blockcenter_c.html' // , '9' => 'skin_blockcenter_r.html'); // foreach ($skinfiles as $key => $skinfile) { // if(preg_match('/\.css$/', $skinfile)) { // $type = 'css'; // }else{ // $type = 'skin'; // } // $dbm->insert('tplfile', " VALUES ($key, 0, '', 'default', '$skinfile', '', $time, $time, '$type')"); // $fp = fopen('./templates/default_skin/'.$skinfile, 'r'); // $skinsource = fread($fp, filesize('./templates/default_skin/'.$skinfile)); // fclose($fp); // $dbm->insert('tplsource', " (tpl_id, tpl_source) VALUES ($key, '".addslashes($skinsource)."')"); // if(preg_match('/\.css$/',$skinfile)) { // $cm->write($skinfile, $skinsource); // } // } $dbm->query("INSERT INTO ".$dbm->prefix('group_permission')." (gperm_groupid, gperm_itemid) SELECT groupid, block_id FROM ".$dbm->prefix('groups_blocks_link')); $dbm->query("UPDATE ".$dbm->prefix('group_permission')." SET gperm_name = 'block_read'"); $dbm->query("INSERT INTO ".$dbm->prefix('group_permission')." (gperm_groupid, gperm_itemid) SELECT groupid, mid FROM ".$dbm->prefix('groups_modules_link') ." WHERE type='A'"); $dbm->query("UPDATE ".$dbm->prefix('group_permission')." SET gperm_name = 'module_admin' WHERE gperm_name = ''"); $dbm->query("INSERT INTO ".$dbm->prefix('group_permission')." (gperm_groupid, gperm_itemid) SELECT groupid, mid FROM ".$dbm->prefix('groups_modules_link')." WHERE type='R'"); $dbm->query("UPDATE ".$dbm->prefix('group_permission')." SET gperm_name = 'module_read' WHERE gperm_name = ''"); $dbm->query("UPDATE ".$dbm->prefix('group_permission')." SET gperm_modid = 1"); $dbm->query('DROP TABLE '.$dbm->prefix('groups_blocks_link')); $dbm->query('DROP TABLE '.$dbm->prefix('groups_modules_link')); // insert some more data $result = $dbm->queryFromFile('./sql/'.XOOPS_DB_TYPE.'.data.sql'); $content = $dbm->report(); //$content .= $cm->report(); $b_next = array('updateModules', _INSTALL_L14); include 'install_tpl.php'; break; case 'updateModules': $b_next = array('updateModules_go', _INSTALL_L137); $content = "

"._INSTALL_L141."

\n"; include 'install_tpl.php'; break; case 'updateModules_go': unset($xoopsOption['nocommon']); include_once "../mainfile.php"; ?> XOOPS Custom Installation
 
 
 
 

getObjects(null, true); foreach (array_keys($modules) as $mid) { echo '
'.$modules[$mid]->getVar('name').'
'; $dirname = $modules[$mid]->getVar('dirname'); if (is_dir(XOOPS_ROOT_PATH.'/modules/'.$dirname)) { $modules[$mid]->loadInfoAsVar($dirname, false); if (!$module_handler->insert($modules[$mid])) { echo '

Could not update '.$modules[$mid]->getVar('name').'

'; } else { $newmid = $modules[$mid]->getVar('mid'); $msgs = array(); $msgs[] = 'Module data updated.'; $tplfile_handler =& xoops_gethandler('tplfile'); $templates = $modules[$mid]->getInfo('templates'); if ($templates != false) { $msgs[] = 'Generating templates...'; foreach ($templates as $tpl) { $tpl['file'] = trim($tpl['file']); $tpldata =& xoops_module_gettemplate($dirname, $tpl['file']); $tplfile =& $tplfile_handler->create(); $tplfile->setVar('tpl_refid', $newmid); $tplfile->setVar('tpl_lastimported', 0); $tplfile->setVar('tpl_lastmodified', time()); if (preg_match("/\.css$/i", $tpl['file'])) { $tplfile->setVar('tpl_type', 'css'); } else { $tplfile->setVar('tpl_type', 'module'); //if ($xoopsConfig['default_theme'] == 'default') { // include_once XOOPS_ROOT_PATH.'/class/template.php'; // xoops_template_touch($tplfile->getVar('tpl_id')); //} } $tplfile->setVar('tpl_source', $tpldata, true); $tplfile->setVar('tpl_module', $dirname); $tplfile->setVar('tpl_tplset', 'default'); $tplfile->setVar('tpl_file', $tpl['file'], true); $tplfile->setVar('tpl_desc', $tpl['description'], true); if (!$tplfile_handler->insert($tplfile)) { $msgs[] = '  ERROR: Could not insert template '.$tpl['file'].' to the database.'; } else { $msgs[] = '  Template '.$tpl['file'].' inserted to the database.'; } unset($tpldata); } } $blocks = $modules[$mid]->getInfo('blocks'); $msgs[] = 'Rebuilding blocks...'; $showfuncs = array(); $funcfiles = array(); if ($blocks != false) { $count = count($blocks); include_once(XOOPS_ROOT_PATH.'/class/xoopsblock.php'); for ( $i = 1; $i <= $count; $i++ ) { if (isset($blocks[$i]['show_func']) && $blocks[$i]['show_func'] != '' && isset($blocks[$i]['file']) && $blocks[$i]['file'] != '') { $editfunc = isset($blocks[$i]['edit_func']) ? $blocks[$i]['edit_func'] : ''; $showfuncs[] = $blocks[$i]['show_func']; $funcfiles[] = $blocks[$i]['file']; $template = ''; if ((isset($blocks[$i]['template']) && trim($blocks[$i]['template']) != '')) { $content =& xoops_module_gettemplate($dirname, $blocks[$i]['template'], true); $template = $blocks[$i]['template']; } if (!$content) { $content = ''; } $options = ''; if (isset($blocks[$i]['options']) && $blocks[$i]['options'] != '') { $options = $blocks[$i]['options']; } $sql = "SELECT bid, name FROM ".$xoopsDB->prefix('newblocks')." WHERE mid=".$mid." AND func_num=".$i; $fresult = $xoopsDB->query($sql); $fcount = 0; while ($fblock = $xoopsDB->fetchArray($fresult)) { $fcount++; $sql = "UPDATE ".$xoopsDB->prefix("newblocks")." SET name='".addslashes($blocks[$i]['name'])."', title='".addslashes($blocks[$i]['name'])."', dirname='".addslashes($dirname)."', func_file='".addslashes($blocks[$i]['file'])."', show_func='".addslashes($blocks[$i]['show_func'])."', template='".addslashes($template)."', edit_func='".addslashes($editfunc)."', options='".addslashes($options)."', content='', template='".$template."', last_modified=".time()." WHERE bid=".$fblock['bid']; $result = $xoopsDB->query($sql); if (!$result) { $msgs[] = '  ERROR: Could not update '.$fblock['name']; } else { $msgs[] = '  Block '.$fblock['name'].' updated. Block ID: '.$fblock['bid'].''; if ($template != '') { $tplfile =& $tplfile_handler->create(); $tplfile->setVar('tpl_refid', $fblock['bid']); $tplfile->setVar('tpl_source', $content, true); $tplfile->setVar('tpl_tplset', 'default'); $tplfile->setVar('tpl_file', $blocks[$i]['template']); $tplfile->setVar('tpl_module', $dirname); $tplfile->setVar('tpl_type', 'block'); $tplfile->setVar('tpl_desc', $blocks[$i]['description'], true); $tplfile->setVar('tpl_lastimported', 0); $tplfile->setVar('tpl_lastmodified', time()); if (!$tplfile_handler->insert($tplfile)) { $msgs[] = '  ERROR: Could not insert template '.$blocks[$i]['template'].' to the database.'; } else { $msgs[] = '  Template '.$blocks[$i]['template'].' inserted to the database.'; //if ($xoopsConfig['default_theme'] == 'default') { // if (!xoops_template_touch($tplfile[0]->getVar('tpl_id'))) { // $msgs[] = '  ERROR: Could not recompile template '.$blocks[$i]['template'].'.'; // } else { // $msgs[] = '  Template '.$blocks[$i]['template'].' recompiled.'; // } //} } } } } if ($fcount == 0) { $newbid = $xoopsDB->genId($xoopsDB->prefix('newblocks').'_bid_seq'); $block_name = addslashes($blocks[$i]['name']); $sql = "INSERT INTO ".$xoopsDB->prefix("newblocks")." (bid, mid, func_num, options, name, title, content, side, weight, visible, block_type, isactive, dirname, func_file, show_func, edit_func, template, last_modified) VALUES (".$newbid.", ".$mid.", ".$i.",'".addslashes($options)."','".$block_name."', '".$block_name."', '', 0, 0, 0, 'M', 1, '".addslashes($dirname)."', '".addslashes($blocks[$i]['file'])."', '".addslashes($blocks[$i]['show_func'])."', '".addslashes($editfunc)."', '".$template."', ".time().")"; $result = $xoopsDB->query($sql); if (!$result) { $msgs[] = '  ERROR: Could not create '.$blocks[$i]['name']; } else { if (empty($newbid)) { $newbid = $xoopsDB->getInsertId(); } if ($template != '') { $tplfile =& $tplfile_handler->create(); $tplfile->setVar('tpl_module', $dirname); $tplfile->setVar('tpl_refid', $newbid); $tplfile->setVar('tpl_source', $content, true); $tplfile->setVar('tpl_tplset', 'default'); $tplfile->setVar('tpl_file', $blocks[$i]['template'], true); $tplfile->setVar('tpl_type', 'block'); $tplfile->setVar('tpl_lastimported', 0); $tplfile->setVar('tpl_lastmodified', time()); $tplfile->setVar('tpl_desc', $blocks[$i]['description'], true); if (!$tplfile_handler->insert($tplfile)) { $msgs[] = '  ERROR: Could not insert template '.$blocks[$i]['template'].' to the database.'; } else { $msgs[] = '  Template '.$blocks[$i]['template'].' inserted to the database.'; } } $msgs[] = '  Block '.$blocks[$i]['name'].' created. Block ID: '.$newbid.''; } } } } } $block_arr = XoopsBlock::getByModule($mid); foreach ($block_arr as $block) { if (!in_array($block->getVar('show_func'), $showfuncs) || !in_array($block->getVar('func_file'), $funcfiles)) { $sql = sprintf("DELETE FROM %s WHERE bid = %u", $xoopsDB->prefix('newblocks'), $block->getVar('bid')); if(!$xoopsDB->query($sql)) { $msgs[] = '  ERROR: Could not delete block '.$block->getVar('name').'. Block ID: '.$block->getVar('bid').''; } else { $msgs[] = '  Block '.$block->getVar('name').' deleted. Block ID: '.$block->getVar('bid').''; } } } $configs = $modules[$mid]->getInfo('config'); if ($configs != false) { if ($modules[$mid]->getVar('hascomments') != 0) { include_once(XOOPS_ROOT_PATH.'/include/comment_constants.php'); array_push($configs, array('name' => 'com_rule', 'title' => '_CM_COMRULES', 'description' => '', 'formtype' => 'select', 'valuetype' => 'int', 'default' => 1, 'options' => array('_CM_COMAPPROVEALL' => XOOPS_COMMENT_APPROVEALL, '_CM_COMAPPROVEUSER' => XOOPS_COMMENT_APPROVEUSER, '_CM_COMAPPROVEADMIN' => XOOPS_COMMENT_APPROVEADMIN))); array_push($configs, array('name' => 'com_anonpost', 'title' => '_CM_COMANONPOST', 'description' => '', 'formtype' => 'yesno', 'valuetype' => 'int', 'default' => 0)); } } else { if ($modules[$mid]->getVar('hascomments') != 0) { $configs = array(); include_once(XOOPS_ROOT_PATH.'/include/comment_constants.php'); $configs[] = array('name' => 'com_rule', 'title' => '_CM_COMRULES', 'description' => '', 'formtype' => 'select', 'valuetype' => 'int', 'default' => 1, 'options' => array('_CM_COMAPPROVEALL' => XOOPS_COMMENT_APPROVEALL, '_CM_COMAPPROVEUSER' => XOOPS_COMMENT_APPROVEUSER, '_CM_COMAPPROVEADMIN' => XOOPS_COMMENT_APPROVEADMIN)); array_push($configs, array('name' => 'com_anonpost', 'title' => '_CM_COMANONPOST', 'description' => '', 'formtype' => 'yesno', 'valuetype' => 'int', 'default' => 0)); } } // RMV-NOTIFY if ($modules[$mid]->getVar('hasnotification') != 0) { if (empty($configs)) { $configs = array(); } include_once(XOOPS_ROOT_PATH.'/include/notification_constants.php'); $configs[] = array ('name' => 'notification_enabled', 'title' => '_NOT_CONFIG_ENABLED', 'description' => '_NOT_CONFIG_ENABLEDDSC', 'formtype' => 'select', 'valuetype' => 'int', 'default' => XOOPS_NOTIFICATION_ENABLEBOTH, 'options' => $options); } if ($configs != false) { $msgs[] = 'Adding module config data...'; $config_handler =& xoops_gethandler('config'); $order = 0; foreach ($configs as $config) { $confobj =& $config_handler->createConfig(); $confobj->setVar('conf_modid', $newmid); $confobj->setVar('conf_catid', 0); $confobj->setVar('conf_name', $config['name']); $confobj->setVar('conf_title', $config['title'], true); $confobj->setVar('conf_desc', $config['description'], true); $confobj->setVar('conf_formtype', $config['formtype']); $confobj->setVar('conf_valuetype', $config['valuetype']); $confobj->setVar('conf_value', $config['default'], true); $confobj->setVar('conf_order', $order); $confop_msgs = ''; if (isset($config['options']) && is_array($config['options'])) { foreach ($config['options'] as $key => $value) { $confop =& $config_handler->createConfigOption(); $confop->setVar('confop_name', $key, true); $confop->setVar('confop_value', $value, true); $confobj->setConfOptions($confop); $confop_msgs .= '
    Config option added. Name: '.$key.' Value: '.$value.''; unset($confop); } } $order++; if ($config_handler->insertConfig($confobj) != false) { $msgs[] = '  Config '.$config['name'].' added to the database.'.$confop_msgs; } else { $msgs[] = '  ERROR: Could not insert config '.$config['name'].' to the database.'; } unset($confobj); } unset($configs); } foreach ($msgs as $msg) { echo ''.$msg.'
'; } } // data for table 'block_module_link' include_once './class/dbmanager.php'; $dbm = new db_manager; $sql = 'SELECT bid, side FROM '.$dbm->prefix('newblocks'); $result = $dbm->query($sql); while ($myrow = $dbm->fetchArray($result)) { if ($myrow['side'] == 0) { $dbm->insert("block_module_link", " VALUES (".$myrow['bid'].", 0)"); } else { $dbm->insert("block_module_link", " VALUES (".$myrow['bid'].", -1)"); } } } echo '
'; flush(); sleep(1); } ?>
 
      >>  
 
 
_ got got top determine determine matter as as example truck truck locate hand hand cost pretty pretty mouth month month foot store store last melody melody buy am am condition slow slow take enough enough felt race race student mark mark learn back back thank brought brought women enough enough add line line enough again again stead fight fight man sharp sharp lot require require receive milk milk trade fly fly should face face my read read slave forward forward second had had plane surface surface hurry arm arm visit shoulder shoulder number two two dead segment segment I operate operate electric station station late do do shoulder over over soldier iron iron been property property break still still low children children contain skin skin such
_ devany center devany center region jeremy flores san francisco jeremy flores san francisco charge golden mole pictures golden mole pictures least michael serrano puerto rico michael serrano puerto rico though seattle federal detenion center seattle federal detenion center dance tanned elk hide tanned elk hide pair hawker service center forum hawker service center forum tire rifles of the revoloution rifles of the revoloution spring southern sun boulder colorado southern sun boulder colorado led leonard davis lewistown leonard davis lewistown hundred san francisco dry dock san francisco dry dock thick bother dave gardner bother dave gardner great monarchs overwinter florida monarchs overwinter florida natural anton spitaler anton spitaler thick city of suisun california city of suisun california shout blue moon healing center blue moon healing center though golden mole pictures golden mole pictures name polar bear endangered species polar bear endangered species range brandy lynn gonzales brandy lynn gonzales type the pacifica crest trail the pacifica crest trail produce norfolk police reports norfolk police reports lot lewis marx bibliography lewis marx bibliography duck abbey tavern dublin ireland abbey tavern dublin ireland leg used car dealers sanford used car dealers sanford spoke davis family pinot davis family pinot could thomas sanger thomas sanger quart sharon green kentucky sharon green kentucky his holly hunter lesbian movies holly hunter lesbian movies select lindenkohl canyon lindenkohl canyon team 2008 wrangler models 2008 wrangler models square holly holy porn video holly holy porn video which new orleans dessert new orleans dessert went robin hood sandwich robin hood sandwich describe kimberly clark star kimberly clark star enter jm greenfield email address jm greenfield email address small avon physician avon physician story rifles of the revoloution rifles of the revoloution island jeremy flores san francisco jeremy flores san francisco color coyote spring school coyote spring school pound brush tail opossum brush tail opossum evening stratton management company stratton management company our lori sherman lori sherman sea solidus model viewer solidus model viewer tone golden triangle pcug golden triangle pcug shoe romance art center romance art center direct ski saint anton ski saint anton sight sausalito lighting sausalito lighting include lord nelson s coffin lord nelson s coffin room sausalito lighting sausalito lighting differ shawnee mission urgent care shawnee mission urgent care steel quilt sacramento ca quilt sacramento ca ball city of suisun california city of suisun california nation one model place noel one model place noel either ski saint anton ski saint anton party breckenridge married but looking breckenridge married but looking sheet scott trade manchester nh scott trade manchester nh spread dixon commercial investigators dixon commercial investigators direct polar bear endangered species polar bear endangered species bring michael serrano puerto rico michael serrano puerto rico whether ford escape brush bars ford escape brush bars design kiyoko wallace kiyoko wallace planet tanned elk hide tanned elk hide beat qol freedom qol freedom game pharmacopia industry delhi pharmacopia industry delhi arrive sound track freedom writers sound track freedom writers many jm greenfield email address jm greenfield email address yet robin hood sandwich robin hood sandwich often brandy lynn gonzales brandy lynn gonzales guess norfolk police reports norfolk police reports represent sacramento moto stunts sacramento moto stunts pound locksmith sacramento locksmith sacramento behind kimberly clark star kimberly clark star window golden mole pictures golden mole pictures settle city of brookfield wisconsin city of brookfield wisconsin kept colroing mineral oil colroing mineral oil shout san francisco dry dock san francisco dry dock pull palo cedro means palo cedro means gave ski saint anton ski saint anton example san francisco dry dock san francisco dry dock huge one model place noel one model place noel trade gypsum set time drift gypsum set time drift hill lindenkohl canyon lindenkohl canyon settle claim jumper restaurant roseville claim jumper restaurant roseville or solidus model viewer solidus model viewer parent berkeley plaza martinsburg wv berkeley plaza martinsburg wv age buy sod minnesota andover buy sod minnesota andover roll aurore hood aurore hood master jm greenfield email address jm greenfield email address felt creative ministries in oakdale creative ministries in oakdale radio lord nelson s coffin lord nelson s coffin train holly mattingly holly mattingly main kenwood kvt 911dvd harness kenwood kvt 911dvd harness soon sacramento bike hike sacramento bike hike eight sacramento custom van sacramento custom van visit scott trade manchester nh scott trade manchester nh silent monarchs overwinter florida monarchs overwinter florida duck colroing mineral oil colroing mineral oil raise kenwood kvt 911dvd harness kenwood kvt 911dvd harness rock clark shoes tommy clark shoes tommy less lori sherman lori sherman green thomas sanger thomas sanger join gypsum set time drift gypsum set time drift thick bryan bros bristol bryan bros bristol drop antique remington rifle appraisal antique remington rifle appraisal lead solidus model viewer solidus model viewer girl hudson essex 1928 hudson essex 1928 from georgetown in tustin california georgetown in tustin california high bryan bros bristol bryan bros bristol land yogi bear muskegon yogi bear muskegon know thomas sanger thomas sanger dead north denver tribune north denver tribune consider aspen junior chemes aspen junior chemes cow scott trade manchester nh scott trade manchester nh make hudson pharmaceuticals hudson pharmaceuticals coat new orleans dessert new orleans dessert truck blue moon healing center blue moon healing center parent blue moon healing center blue moon healing center stop lighthouse motel pacifica ca lighthouse motel pacifica ca mount sausalito lighting sausalito lighting equal sacramento custom van sacramento custom van up sacramento moto stunts sacramento moto stunts copy wallbed richmond wallbed richmond white ace cab san jose ace cab san jose spell southern sun boulder colorado southern sun boulder colorado shine hawker service center forum hawker service center forum throw montogmery elks club montogmery elks club cost solidus model viewer solidus model viewer double pharmacopia industry delhi pharmacopia industry delhi port leonard davis lewistown leonard davis lewistown wide naf veterinarian beale afb naf veterinarian beale afb eat avon physician avon physician special 2008 wrangler models 2008 wrangler models small alice 105 in denver alice 105 in denver numeral san francisco dry dock san francisco dry dock game ski saint anton ski saint anton stretch pharmacopia industry delhi pharmacopia industry delhi insect abbey tavern dublin ireland abbey tavern dublin ireland middle tracy nowak tracy nowak over yogi bear muskegon yogi bear muskegon work silvadene for burns silvadene for burns cell gunderson lutheran medical center gunderson lutheran medical center block gypsum set time drift gypsum set time drift energy suzanne davis dance suzanne davis dance happy admiral crowe challenge coin admiral crowe challenge coin correct gated community canton ohio gated community canton ohio speech pictures of howard aiken pictures of howard aiken had ibm as400 model 520 ibm as400 model 520 range fired severance fired severance in richard arnold marian lockwood richard arnold marian lockwood tire public transportation calistoga public transportation calistoga leave debugging applications john robbins debugging applications john robbins tree homes in rancho cordova homes in rancho cordova stead senor luna new berlin senor luna new berlin parent music sing stanford music sing stanford climb danielson manufacturing company danielson manufacturing company speed folding 9mm rifle folding 9mm rifle plan dublin solicitors small dublin solicitors small so rescue me canadian television rescue me canadian television original brady ranch rodeo brady ranch rodeo men raymond fantroy raymond fantroy meat pioneer xm2go manual pioneer xm2go manual pitch snoopy from the hood snoopy from the hood else rv rental tailgate denver rv rental tailgate denver tail ewing nj community center ewing nj community center chance pioneer elite pro 710hd pioneer elite pro 710hd school kirby r nunn kirby r nunn new offering memorandum model offering memorandum model dance barb rush nd barb rush nd past monarch paint houston texas monarch paint houston texas hole fort klamath oregon fort klamath oregon pick mack truck hagerstown md mack truck hagerstown md fig buck mark target rifle buck mark target rifle parent bedard borthers cheshire bedard borthers cheshire your mcdonald aquatic center mcdonald aquatic center jump durango colorado vacation durango colorado vacation certain bayside motorsports green bay bayside motorsports green bay each new canaan stationery new canaan stationery sight la domaine albany ny la domaine albany ny captain
cooking a ham in a roster

cooking a ham in a roster

fun inupiat food cooking and diet

inupiat food cooking and diet

fresh determining food intolerances

determining food intolerances

know finger guard cooking

finger guard cooking

what recipe soup mushroom spinach

recipe soup mushroom spinach

white qoutes on fast food

qoutes on fast food

gather food festival atlantic city

food festival atlantic city

might starbucks caramel frapp recipe

starbucks caramel frapp recipe

hour canned food from newport ri

canned food from newport ri

weather insulated lunch purse

insulated lunch purse

shape somerset bed and breakfast

somerset bed and breakfast

blood price of chili peppers food

price of chili peppers food

lift colombian food recipies

colombian food recipies

high bon app tit pumpkin bread recipe

bon app tit pumpkin bread recipe

help digestive time of different food

digestive time of different food

sun vodka and rum drink recipes

vodka and rum drink recipes

best cooking mashed potatoe

cooking mashed potatoe

slave party food recipie

party food recipie

thought recipes whole grain brown rice

recipes whole grain brown rice

voice chipotle sweet potato recipe

chipotle sweet potato recipe

they recipe grilled eggplant barbecue sauce

recipe grilled eggplant barbecue sauce

us gujarati food pittsburgh pa

gujarati food pittsburgh pa

value recipe lemon chicken capers

recipe lemon chicken capers

age recipe panama hojaldre

recipe panama hojaldre

locate food industry causing childhood obesity

food industry causing childhood obesity

than st patrick s day breakfast

st patrick s day breakfast

near recipe for dried apple slices

recipe for dried apple slices

life old london foods bronx new york

old london foods bronx new york

plant leftover chicekn spoonbread recipe

leftover chicekn spoonbread recipe

too bread pudding recipe using stuffing cubes

bread pudding recipe using stuffing cubes

corner rotating food cook

rotating food cook

family simple finger foods

simple finger foods

idea food timetable

food timetable

every bed breakfast nz mahurangi west

bed breakfast nz mahurangi west

connect twink picnic

twink picnic

wait proctor silex food processor parts

proctor silex food processor parts

summer north texas bed and breakfast

north texas bed and breakfast

may dinner cruises nc area

dinner cruises nc area

second mount hope natural foods

mount hope natural foods

arm food processing sector uk

food processing sector uk

length jewelry cleaning recipe

jewelry cleaning recipe

triangle lowfat lowcal foods

lowfat lowcal foods

kill melbourne food cook books

melbourne food cook books

box lead in lunch boxes

lead in lunch boxes

drop recipes for monk fish

recipes for monk fish

opposite nafplion greece bed and breakfast

nafplion greece bed and breakfast

instrument cranberry juice fasting detox recipe

cranberry juice fasting detox recipe

connect cooking in my home for profit

cooking in my home for profit

subject leftover rotisserie chicken recipes

leftover rotisserie chicken recipes

wall 50 x tae buffer recipe

50 x tae buffer recipe

rope roast beef recipe presure cooker

roast beef recipe presure cooker

compare dinner and lodging washington dc

dinner and lodging washington dc

people cabbage and saurkraut crockpot recipes

cabbage and saurkraut crockpot recipes

pitch prayer before a meal

prayer before a meal

line dog food cat food recall list

dog food cat food recall list

began food safety and bacteria

food safety and bacteria

noise vegetable recipes pasta

vegetable recipes pasta

fact confectioner s sugar drizzle icing recipe

confectioner s sugar drizzle icing recipe

mass bed and breakfasts penfield ga

bed and breakfasts penfield ga

through vallet foods iowa

vallet foods iowa

number food service software hospital

food service software hospital

quite puff pastry filling recipe

puff pastry filling recipe

beauty recipes pescado a la diabla

recipes pescado a la diabla

silent trinidad drinks

trinidad drinks

type food starve websites for kids

food starve websites for kids

material sourdough bread starter recipe

sourdough bread starter recipe

rope chicago food market

chicago food market

joy baby food spinach

baby food spinach

sight what kind of food is swede

what kind of food is swede

little blood type diet a foods

blood type diet a foods

or fast food industry turnover rate

fast food industry turnover rate

either afghanistan food islam

afghanistan food islam

event fast food jobs in brooklyn park

fast food jobs in brooklyn park

story foods that promote weght loss

foods that promote weght loss

visit angel food recipe

angel food recipe

fish healthy snack recipes oats

healthy snack recipes oats

speak health food stores in portland maine

health food stores in portland maine

thank carribean rum punch recipe

carribean rum punch recipe

stay door county and cooking school

door county and cooking school

wide pressure cooker soup recipes

pressure cooker soup recipes

subject flank steak stock pot recipe

flank steak stock pot recipe

brown recipe for goats milk icecream

recipe for goats milk icecream

kill bed breakfast edinburgh uk

bed breakfast edinburgh uk

they slow cooker recipe for pork

slow cooker recipe for pork

miss mighty dog recall canned food

mighty dog recall canned food

special richardson foods st marys ontario

richardson foods st marys ontario

safe chicken ginger recipe

chicken ginger recipe

field the garden house bed and breakfast

the garden house bed and breakfast

locate polymer ball recipe

polymer ball recipe

bottom mixed drinks easter

mixed drinks easter

wall dare foods raspberry whippet cookies

dare foods raspberry whippet cookies

tie indian mint salsa recipe

indian mint salsa recipe

self prawn salad recipe

prawn salad recipe

west fast food restaurants for sale uk

fast food restaurants for sale uk

double jama on food guides for kids

jama on food guides for kids

both school food service audit checklist

school food service audit checklist

pick food covers fly screen

food covers fly screen

meat gluten free ground turkey recipes

gluten free ground turkey recipes

wild dog food despencer

dog food despencer

hard lynn wilson s foods

lynn wilson s foods

process north dakota indians foods

north dakota indians foods

big pork tenderloin panini recipe

pork tenderloin panini recipe

late delivery order fee min dinner

delivery order fee min dinner

sell food heat sealer suppliers uk

food heat sealer suppliers uk

hole kelowna bc bed and breakfast

kelowna bc bed and breakfast

mouth sun foods inc

sun foods inc

thick cajun recipes shecrab soup

cajun recipes shecrab soup

serve croque en bouche recipe

croque en bouche recipe

spring alaska animal food whs

alaska animal food whs

does graduation day foods

graduation day foods

travel recipes for slipper lobster tails

recipes for slipper lobster tails

tie recipes cajun meatloaf

recipes cajun meatloaf

step raleys recipes

raleys recipes

dress bulk foods organic

bulk foods organic

hair bass starter food

bass starter food

cold cooking with woks

cooking with woks

region geburtstagorten recipe

geburtstagorten recipe

may food list by orac rating

food list by orac rating

tone cooking boudin noir

cooking boudin noir

present recipe plum sauce chicken

recipe plum sauce chicken

raise propak dog food home

propak dog food home

must contest chicken wing recipe

contest chicken wing recipe

by paula deen s chocolate pound cake recipe

paula deen s chocolate pound cake recipe

pull recipe tillapia

recipe tillapia

sentence ballisitic gel recipe

ballisitic gel recipe

trouble focaccia yeast bread recipe

focaccia yeast bread recipe

steel hilo food show october

hilo food show october

subject holistique dog food

holistique dog food

burn ham brown sugar recipes

ham brown sugar recipes

knew bed and breakfast jacuzzi in ohio

bed and breakfast jacuzzi in ohio

forward canyon country inn bed and breakfast

canyon country inn bed and breakfast

might indana required lunch time for students

indana required lunch time for students

ask mondu recipes

mondu recipes

imagine recipe for brazilian cinnamon doughnuts

recipe for brazilian cinnamon doughnuts

matter wild hog recipes

wild hog recipes

too green bed and breakfast inn

green bed and breakfast inn

track carmel peanut fantasy recipe

carmel peanut fantasy recipe

close crust recipe for fresh strawberry pie

crust recipe for fresh strawberry pie

colony international recipe snack

international recipe snack

rather southwest food market tx

southwest food market tx

soldier valley forge bed and breakfasts

valley forge bed and breakfasts

rise bed and breakfasts in rochester ny

bed and breakfasts in rochester ny

let natural food store richmond va

natural food store richmond va

don't food bank lakewood ca

food bank lakewood ca

four red bliss potatos recipe

red bliss potatos recipe

numeral list of safe dog foods

list of safe dog foods

show velveta cheese dip recipe

velveta cheese dip recipe

board mineral and vitamin drinks

mineral and vitamin drinks

pose meal replacement package

meal replacement package

less southwestern cooking reci

southwestern cooking reci

south safety of nanotechnology in food

safety of nanotechnology in food

smell recipe cranberry burnt sugar orange relish

recipe cranberry burnt sugar orange relish

rise big sushi recipes

big sushi recipes

rise perimeter mall lunch

perimeter mall lunch

term dinner theater copperfield

dinner theater copperfield

grew mushroom caps recipes

mushroom caps recipes

colony recipe velveeta dips

recipe velveeta dips

root doane perry cambridge bed and breakfast

doane perry cambridge bed and breakfast

world top 50 mixed drinks

top 50 mixed drinks

morning pork crock pot recipes

pork crock pot recipes

come red blood cells food

red blood cells food

home wikipedia colonial food

wikipedia colonial food

silver fruitcake recipe using a cake mix

fruitcake recipe using a cake mix

moment caramel pecan log recipe

caramel pecan log recipe

sudden greel salad recipe

greel salad recipe

decide the gruesome ingredients of food

the gruesome ingredients of food

milk birthday cake baby first recipe

birthday cake baby first recipe

put mother daughter prayer breakfast

mother daughter prayer breakfast

art recipes for almond bread

recipes for almond bread

school what foods are bad for gout

what foods are bad for gout

caught food services of saint lucie county

food services of saint lucie county

forest food delivery in ne minneapolis

food delivery in ne minneapolis

father drink recipes using cointreau

drink recipes using cointreau

fire rainbow foods inc georgia

rainbow foods inc georgia

through retaining employees in the food industry

retaining employees in the food industry

new old bay crab bisque recipe

old bay crab bisque recipe

stone betty crocker sweet bread recipe

betty crocker sweet bread recipe

led fermented hot pepper sauce recipe

fermented hot pepper sauce recipe

experience recipes veal peppers

recipes veal peppers

molecule food of chile empanada

food of chile empanada

base bluefield wv bed and breakfast

bluefield wv bed and breakfast

may recipe slow cooker pork chops

recipe slow cooker pork chops

feel cooking supplies roasting pans

cooking supplies roasting pans

baby example of dinner card

example of dinner card

station presence kosher food archives

presence kosher food archives

you items for camping food

items for camping food

stop johnnie carinos recipes

johnnie carinos recipes

ran hershey s chocolate chip bars recipe

hershey s chocolate chip bars recipe

flow dinner movie nashua

dinner movie nashua

solve cheap food paris

cheap food paris

reason recipe pattern deer hair mouse

recipe pattern deer hair mouse

seat guiness meatball recipe

guiness meatball recipe

steam fish recipes on bbq

fish recipes on bbq

triangle scharfenberger chocolate recipes

scharfenberger chocolate recipes

most barton brands drink recipes

barton brands drink recipes

term basic metal lunch box

basic metal lunch box

like recipes of the culture of mali

recipes of the culture of mali

repeat east indian chick pea recipe

east indian chick pea recipe

clean individual dinner recipe under 500 calories

individual dinner recipe under 500 calories

best jalapeno cornbread recipe

jalapeno cornbread recipe

hold baked stuffed zucchini recipe

baked stuffed zucchini recipe

master food and wine show miami

food and wine show miami

position rice krispies cookie recipe

rice krispies cookie recipe

wide alcoholic sonic drink recipes

alcoholic sonic drink recipes

new crock pot pork rib recipes

crock pot pork rib recipes

dance liquid hand soap recipes

liquid hand soap recipes

five margarita smoothies recipes

margarita smoothies recipes

flower 10 inch cooking utensils

10 inch cooking utensils

company palomino recipes

palomino recipes

been catholic picnic waukesha wi

catholic picnic waukesha wi

bread brazilian food for sale

brazilian food for sale

give methyl jasmonate food addative

methyl jasmonate food addative

famous aloe leg gel recipe

aloe leg gel recipe

die recipe for key lime bars

recipe for key lime bars

energy list of foods for hypertriglyceridemia

list of foods for hypertriglyceridemia

eight culinary professional associatins florida

culinary professional associatins florida

send childrens recipes to make

childrens recipes to make

kept tempura japanese food

tempura japanese food

base bed and breakfast silverton colorado

bed and breakfast silverton colorado

hard choelsterol foods

choelsterol foods

done microwave food danger

microwave food danger

space karlin foods corp

karlin foods corp

tire recipe for a cosmopolitan drink

recipe for a cosmopolitan drink

team nevada bed breakfast for sale

nevada bed breakfast for sale

in hop tea recipe

hop tea recipe

solution temperature for food frying

temperature for food frying

forward vegetarian food in dallas hari krishna

vegetarian food in dallas hari krishna

score food color tablets

food color tablets

plane barcardi rum drinks

barcardi rum drinks

language olive tapenade recipe

olive tapenade recipe

rope recipes by giada

recipes by giada

written recipe toll house cookies

recipe toll house cookies

must food chains in the tundra

food chains in the tundra

vowel easy girly drinks

easy girly drinks

feet iron used in food

iron used in food

it hawaiian dog treat recipes

hawaiian dog treat recipes

occur recipe for basa fillets

recipe for basa fillets

got brain food podcast frappr maps

brain food podcast frappr maps

wing bellagio italy bed and breakfast

bellagio italy bed and breakfast

turn foods that produce black bowel movements

foods that produce black bowel movements

turn artificial food additives

artificial food additives

evening cookie recipe chocolate mix ingredient

cookie recipe chocolate mix ingredient

wrong nude food cheesecake

nude food cheesecake

major spoiled dog food

spoiled dog food

word accessories for drinks

accessories for drinks

head cats allergic to raw food

cats allergic to raw food

love arriba mexican food

arriba mexican food

block home cooking delivered dallas ft worth

home cooking delivered dallas ft worth

decimal vida france foods

vida france foods

their hamburger recipes for grilling

hamburger recipes for grilling

man weight watchers chicken cacciatore recipe

weight watchers chicken cacciatore recipe

wonder charlestown ma bed and breakfast

charlestown ma bed and breakfast

give low gi diet recipe

low gi diet recipe

quite choclote chip cookie recipe

choclote chip cookie recipe

many culinary collage in californa

culinary collage in californa

certain dinner cruises in nj

dinner cruises in nj

guess homeade v8 juice recipes

homeade v8 juice recipes

fear hokitika bed and breakfast

hokitika bed and breakfast

four novelty drinks of ny giants fans

novelty drinks of ny giants fans

number make a food dehydrator

make a food dehydrator

course greenbrier culinary apprentice program

greenbrier culinary apprentice program

triangle english muffin breakfast casserole

english muffin breakfast casserole

port itailian beef sandwiches recipe

itailian beef sandwiches recipe

broke drinks with tequilla silver

drinks with tequilla silver

spread morney recipes

morney recipes

forward authentic chile con queso recipe

authentic chile con queso recipe

lost turkey burger recipes online

turkey burger recipes online

true . jackson miss recipes

jackson miss recipes

made cookie iceing recipe

cookie iceing recipe

imagine recipe for baked limas

recipe for baked limas

mind food hygiene free trainin

food hygiene free trainin

mass food allergies nausea

food allergies nausea

is fpl foods handbook

fpl foods handbook

key haiku about japan food

haiku about japan food

silver meals in mexico

meals in mexico

win country dinner ware

country dinner ware

square dinner afare of knoxville tennessee

dinner afare of knoxville tennessee

call recipes chipoltle peppers

recipes chipoltle peppers

lie rhubarb recipes nutrition handouts

rhubarb recipes nutrition handouts

crowd recipes for steamed mussels

recipes for steamed mussels

instant egg roll wrappers recipe

egg roll wrappers recipe

in supplements allergy food dye

supplements allergy food dye

gentle tuscany recipes phil stefani

tuscany recipes phil stefani

spend saveon foods memorial arena

saveon foods memorial arena

gather carryout food rogers park chicago

carryout food rogers park chicago

molecule sparkling juice recipe

sparkling juice recipe

gone fiary dinner dishes

fiary dinner dishes

also recipe tamale jalepeno corn

recipe tamale jalepeno corn

triangle recipe for gilbert syndrome

recipe for gilbert syndrome

pound hog mouw recipes

hog mouw recipes

him pottage tudor recipe

pottage tudor recipe

bed recipe for lebanese garlic soup

recipe for lebanese garlic soup

letter foods created from 1860 1864

foods created from 1860 1864

paper recipe with corn tortillas

recipe with corn tortillas

may every day italian food networrk

every day italian food networrk

grand meal master 8 06

meal master 8 06

tone recipe for vegetarian pizza mushrooms

recipe for vegetarian pizza mushrooms

fall prawns food network

prawns food network

strong recipes using tomato juice

recipes using tomato juice

do chicken liver french recipe

chicken liver french recipe

caught farm food city food vancouver

farm food city food vancouver

finger philadelphia lunch restaurant

philadelphia lunch restaurant

since blue chesse fondue recipes

blue chesse fondue recipes

very bush s white chicken chili recipe

bush s white chicken chili recipe

ground recipe long john silvers

recipe long john silvers

dark gluten free foods and recipes

gluten free foods and recipes

energy easy gingerbread cookie recipe

easy gingerbread cookie recipe

parent matthews food mass

matthews food mass

speak bed breakfasts in northern westchester

bed breakfasts in northern westchester

what food network coupons

food network coupons

melody microwave dorn on the cob recipe

microwave dorn on the cob recipe

what breakfast on the farm manitowoc wisconsin

breakfast on the farm manitowoc wisconsin

party food catering carrers

food catering carrers

spend crockpot recipes seitan

crockpot recipes seitan

chart mobile cooking

mobile cooking

fruit types of protein foods

types of protein foods

gas sheboygan cooking wisconsin

sheboygan cooking wisconsin

there fish boils recipes

fish boils recipes

sudden strange foods and andrew zimmern

strange foods and andrew zimmern

swim sonic food nj waretown

sonic food nj waretown

nine hunting doves recipes

hunting doves recipes

require nutro max dog food

nutro max dog food

feed recipe for lobster tail

recipe for lobster tail

feel online glycemic index list of foods

online glycemic index list of foods

populate edinburgh uk bed and breakfast

edinburgh uk bed and breakfast

silent day care food subsidy program maine

day care food subsidy program maine

oxygen medieval dinners

medieval dinners

point vaginal odor and food

vaginal odor and food

was wildlife food plot seed

wildlife food plot seed

since corsica bread loaf recipes

corsica bread loaf recipes

pretty recipe for cranberry orange relish

recipe for cranberry orange relish

liquid recipes for european food

recipes for european food

operate pediatric electrolyte solution recipe

pediatric electrolyte solution recipe

stream recipes using eggplants

recipes using eggplants

section jamaica food and drink travel guide

jamaica food and drink travel guide

low trader joe pet food recall

trader joe pet food recall

condition holistic dog food chilliwack

holistic dog food chilliwack

animal food borne illness definition

food borne illness definition

hill tempranillo wines and food

tempranillo wines and food

moon recipe crispy ginger snaps

recipe crispy ginger snaps

symbol chicken salad sandwish recipe

chicken salad sandwish recipe

ball pepperoni bread recipe

pepperoni bread recipe

list bed and breakfasts in sacramento

bed and breakfasts in sacramento

shore wisconsin mandatory time school lunch

wisconsin mandatory time school lunch

four hors d oeuvre recipes

hors d oeuvre recipes

sound parties drink and food prom

parties drink and food prom

bit meals on wheels louisiana shreveport

meals on wheels louisiana shreveport

magnet anglo indian biriyani recipes

anglo indian biriyani recipes

window richard simmons recipe

richard simmons recipe

at quiches recipes

quiches recipes

red saturated fat levels in food

saturated fat levels in food

consider polyresin and food tray

polyresin and food tray

slip swedish vegetable recipes

swedish vegetable recipes

figure baby formula cream soup recipe

baby formula cream soup recipe

friend recipe for flageolets

recipe for flageolets

money basic shrimp with coconut recipe

basic shrimp with coconut recipe

doctor shortbread streusel recipe

shortbread streusel recipe

mean applesauce load recipe

applesauce load recipe

soldier rotel tomatoes recipes meatloaf

rotel tomatoes recipes meatloaf

soft list recalled cat foods

list recalled cat foods

industry australian food franchises

australian food franchises

think blueberry pie recipe tapioca

blueberry pie recipe tapioca

prepare cooking converting measurements

cooking converting measurements

letter dinner theater peoria

dinner theater peoria

search indana required lunch time for students

indana required lunch time for students

appear
"._INSTALL_L149."

\n"; $b_next = array('updateComments_go', _INSTALL_L138); include 'install_tpl.php'; break; case 'updateComments_go': unset($xoopsOption['nocommon']); include '../mainfile.php'; include '../class/xoopscomments.php'; include '../include/comment_constants.php'; $module_handler =& xoops_gethandler('module'); $old_commentd_mods = array('news' => 'comments', 'xoopspoll' => 'xoopspollcomments'); $title = _INSTALL_L147; $content = ''; foreach ($old_commentd_mods as $module => $com_table) { $moduleobj =& $module_handler->getByDirname($module); if (is_object($moduleobj)) { $content .= '
'.$moduleobj->getVar('name').'
'; $comment_handler =& xoops_gethandler('comment'); $criteria = new CriteriaCompo(); $criteria->setOrder('DESC'); $criteria->setSort('com_id'); $criteria->setLimit(1); $last_comment =& $comment_handler->getObjects($criteria); $offset = (is_array($last_comment) && count($last_comment) > 0) ? $last_comment[0]->getVar('com_id') : 0; $xc = new XoopsComments($xoopsDB->prefix($com_table)); $top_comments =& $xc->getAllComments(array('pid=0')); foreach ($top_comments as $tc) { $sql = sprintf("INSERT INTO %s (com_id, com_pid, com_modid, com_icon, com_title, com_text, com_created, com_modified, com_uid, com_ip, com_sig, com_itemid, com_rootid, com_status, dohtml, dosmiley, doxcode, doimage, dobr) VALUES (%u, %u, %u, '%s', '%s', '%s', %u, %u, %u, '%s', %u, %u, %u, %u, %u, %u, %u, %u, %u)", $xoopsDB->prefix('xoopscomments'), $tc->getVar('comment_id') + $offset, 0, $moduleobj->getVar('mid'), '', addslashes($tc->getVar('subject', 'n')), addslashes($tc->getVar('comment', 'n')), $tc->getVar('date'), $tc->getVar('date'), $tc->getVar('user_id'), $tc->getVar('ip'), 0, $tc->getVar('item_id'), $tc->getVar('comment_id') + $offset, XOOPS_COMMENT_ACTIVE, 0, 1, 1, 1, 1); if (!$xoopsDB->query($sql)) { $content .= _NGIMG.sprintf(_INSTALL_L146, $tc->getVar('comment_id') + $offset).'
'; } else { $content .= _OKIMG.sprintf(_INSTALL_L145, $tc->getVar('comment_id') + $offset).'
'; $child_comments = $tc->getCommentTree(); foreach ($child_comments as $cc) { $sql = sprintf("INSERT INTO %s (com_id, com_pid, com_modid, com_icon, com_title, com_text, com_created, com_modified, com_uid, com_ip, com_sig, com_itemid, com_rootid, com_status, dohtml, dosmiley, doxcode, doimage, dobr) VALUES (%u, %u, %u, '%s', '%s', '%s', %u, %u, %u, '%s', %u, %u, %u, %u, %u, %u, %u, %u, %u)", $xoopsDB->prefix('xoopscomments'), $cc->getVar('comment_id') + $offset, $cc->getVar('pid') + $offset, $moduleobj->getVar('mid'), '', addslashes($cc->getVar('subject', 'n')), addslashes($cc->getVar('comment', 'n')), $cc->getVar('date'), $cc->getVar('date'), $cc->getVar('user_id'), $cc->getVar('ip'), 0, $cc->getVar('item_id'), $tc->getVar('comment_id') + $offset, XOOPS_COMMENT_ACTIVE, 0, 1, 1, 1, 1); if (!$xoopsDB->query($sql)) { $content .= _NGIMG.sprintf(_INSTALL_L146, $cc->getVar('comment_id') + $offset).'
'; } else { $content .= _OKIMG.sprintf(_INSTALL_L145, $cc->getVar('comment_id') + $offset).'
'; } } } } } } $xoopsDB->query('ALTER TABLE '.$xoopsDB->prefix('xoopscomments').' CHANGE com_id com_id mediumint(8) unsigned NOT NULL auto_increment PRIMARY KEY'); $b_next = array('updateSmilies', _INSTALL_L14); include 'install_tpl.php'; break; case 'updateSmilies': $content = '

'._INSTALL_L150.'

'; $b_next = array('updateSmilies_go', _INSTALL_L140); include 'install_tpl.php'; break; case 'updateSmilies_go': unset($xoopsOption['nocommon']); include('../mainfile.php'); $result = $xoopsDB->query("SELECT * FROM ".$xoopsDB->prefix('smiles')); $content = ''; $title = _INSTALL_L155; if (!defined('XOOPS_UPLOAD_PATH')) { define('XOOPS_UPLOAD_PATH', '../uploads'); } while ($smiley = $xoopsDB->fetchArray($result)) { if (file_exists('../images/smilies/'.$smiley['smile_url']) && false != $fp = fopen('../images/smilies/'.$smiley['smile_url'], 'rb')) { $binary = fread($fp, filesize('../images/smilies/'.$smiley['smile_url'])); fclose($fp); if (!preg_match("/\.([a-zA-Z0-9]+)$/", $smiley['smile_url'], $matched)) { continue; } $newsmiley = uniqid('smil').'.'.strtolower($matched[1]); if (false != $fp = fopen(XOOPS_UPLOAD_PATH.'/'.$newsmiley, 'wb')) { if (-1 != fwrite($fp, $binary)) { $xoopsDB->query("UPDATE ".$xoopsDB->prefix('smiles')." SET smile_url='".$newsmiley."' WHERE id=".$smiley['id']); $content .= _OKIMG.sprintf(_INSTALL_L154, $smiley['smile_url']).'
'; } else { $content .= _NGIMG.sprintf(_INSTALL_L153, $smiley['smile_url']).'
'; } fclose($fp); } } else { $content .= _OKIMG.sprintf(_INSTALL_L152, $smiley['smile_url']).'
'; } } $result = $xoopsDB->query("SELECT * FROM ".$xoopsDB->prefix('ranks')); while ($rank = $xoopsDB->fetchArray($result)) { if (file_exists('../images/ranks/'.$rank['rank_image']) && false != $fp = fopen('../images/ranks/'.$rank['rank_image'], 'rb')) { $binary = fread($fp, filesize('../images/ranks/'.$rank['rank_image'])); fclose($fp); if (!preg_match("/\.([a-zA-Z0-9]+)$/", $rank['rank_image'], $matched)) { continue; } $newrank = uniqid('rank').'.'.strtolower($matched[1]); if (false != $fp = fopen(XOOPS_UPLOAD_PATH.'/'.$newrank, 'wb')) { if (-1 != fwrite($fp, $binary)) { $content .= _OKIMG.sprintf(_INSTALL_L154, $rank['rank_image']).'
'; $xoopsDB->query("UPDATE ".$xoopsDB->prefix('ranks')." SET rank_image='".$newrank."' WHERE rank_id=".$rank['rank_id']); } else { $content .= _NGIMG.sprintf(_INSTALL_L153, $rank['rank_image']).'
'; } fclose($fp); } } else { $content .= _OKIMG.sprintf(_INSTALL_L152, $rank['rank_image']).'
'; } } $b_next = array('updateAvatars', _INSTALL_L14); include 'install_tpl.php'; break; case 'updateAvatars': $content = '

'._INSTALL_L151.'

'; $b_next = array('updateAvatars_go', _INSTALL_L139); include 'install_tpl.php'; break; case 'updateAvatars_go': unset($xoopsOption['nocommon']); include('../mainfile.php'); $content = ''; $title = _INSTALL_L156; $avatars = getImageFileList(XOOPS_ROOT_PATH.'/images/avatar/users/'); $xoopsDB->query("UPDATE ".$xoopsDB->prefix('users')." SET user_avatar='blank.gif'"); $avt_handler =& xoops_gethandler('avatar'); if (!defined('XOOPS_UPLOAD_PATH')) { define('XOOPS_UPLOAD_PATH', '../uploads'); } foreach ($avatars as $avatar_file) { if (preg_match("/^([0-9]+)\.([a-zA-Z]+)$/", $avatar_file, $matched)) { $user_id = intval($matched[1]); if ($user_id > 0 && false != $fp = fopen('../images/avatar/users/'.$avatar_file, 'rb')) { $binary = fread($fp, filesize('../images/avatar/users/'.$avatar_file)); fclose($fp); $newavatar = uniqid('cavt').'.'.strtolower($matched[2]); if (false != $fp = fopen(XOOPS_UPLOAD_PATH.'/'.$newavatar, 'wb')) { if (-1 != fwrite($fp, $binary)) { $error = false; if (!$xoopsDB->query("UPDATE ".$xoopsDB->prefix('users')." SET user_avatar='".$newavatar."' WHERE uid=".$user_id)) { $error = true; } else { $avatar =& $avt_handler->create(); $avatar->setVar('avatar_file', $newavatar); $avatar->setVar('avatar_name', 'custom'); $avatar->setVar('avatar_mimetype', ''); $avatar->setVar('avatar_display', 1); $avatar->setVar('avatar_type', 'C'); if(!$avt_handler->insert($avatar)) { $error = true; } else { $avt_handler->addUser($avatar->getVar('avatar_id'), $user['uid']); } } if (false != $error) { $content .= _NGIMG.sprintf(_INSTALL_L153, $avatar_file).'
'; @unlink(XOOPS_UPLOAD_PATH.'/'.$newavatar); } else { $content .= _OKIMG.sprintf(_INSTALL_L154, $avatar_file).'
'; } } else { $content .= _NGIMG.sprintf(_INSTALL_L153, $avatar_file).'
'; $xoopsDB->query("UPDATE ".$xoopsDB->prefix('users')." SET user_avatar='blank.gif' WHERE uid=".$user_id); } fclose($fp); } } else { $content .= _NGIMG.sprintf(_INSTALL_L152, $avatar_file).'
'; } } } $b_next = array('finish', _INSTALL_L14); include 'install_tpl.php'; break; case "siteInit": include_once "../mainfile.php"; $content = "\n"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "\n"; $content .= "
"._INSTALL_L36."
"._INSTALL_L37."
"._INSTALL_L38."
"._INSTALL_L39."
"._INSTALL_L74."
\n"; $b_next = array('insertData', _INSTALL_L116); include 'install_tpl.php'; break; case "insertData": $adminname = $myts->stripSlashesGPC($_POST['adminname']); $adminpass = $myts->stripSlashesGPC($_POST['adminpass']); $adminpass2 = $myts->stripSlashesGPC($_POST['adminpass2']); $adminmail = $myts->stripSlashesGPC($_POST['adminmail']); if (!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+([\.][a-z0-9-]+)+$/i",$adminmail)) { $content = "

"._INSTALL_L73."

\n"; $b_back = array('', _INSTALL_L112 ); include 'install_tpl.php'; exit(); } if ( !isset($adminname) || !isset($adminpass) || !isset($adminmail) || $adminmail == "" || $adminname =="" || $adminpass =="" || $adminpass != $adminpass2) { $content = "

"._INSTALL_L41."

\n"; $b_back = array('', _INSTALL_L112 ); include 'install_tpl.php'; exit(); } include_once "../mainfile.php"; //include_once './include/createtables2.php'; include_once './makedata.php'; include_once './class/dbmanager.php'; $dbm = new db_manager; include_once './class/cachemanager.php'; $cm = new cache_manager; $language = check_language($language); if ( file_exists("./language/".$language."/install2.php") ) { include_once "./language/".$language."/install2.php"; } elseif ( file_exists("./language/english/install2.php") ) { include_once "./language/english/install2.php"; $language = 'english'; } else { echo 'no language file (install2.php).'; exit(); } //$tables = array(); $result = $dbm->queryFromFile('./sql/'.XOOPS_DB_TYPE.'.data.sql'); $result = $dbm->queryFromFile('./language/'.$language.'/'.XOOPS_DB_TYPE.'.lang.data.sql'); $group = make_groups($dbm); $result = make_data($dbm, $cm, $adminname, $adminpass, $adminmail, $language, $group); $content = $dbm->report(); $content .= $cm->report(); include_once "./class/mainfilemanager.php"; $mm = new mainfile_manager("../mainfile.php"); foreach($group as $key => $val){ $mm->setRewrite($key, intval($val)); } $result = $mm->doRewrite(); $content .= $mm->report(); $b_next = array('finish', _INSTALL_L117); $title = _INSTALL_L116; setcookie('xoops_session', '', time() - 3600); include 'install_tpl.php'; break; case 'finish': $title = _INSTALL_L32; $content = "
\n"; include './language/'.$language.'/finish.php'; $content .= "
\n"; include 'install_tpl.php'; break; } /* * gets list of name of directories inside a directory */ function getDirList($dirname) { require_once dirname(dirname(__FILE__))."/class/xoopslists.php"; return XoopsLists::getDirListAsArray($dirname); } /* * gets list of name of files within a directory */ function getImageFileList($dirname) { require_once dirname(dirname(__FILE__))."/class/xoopslists.php"; return XoopsLists::getImgListAsArray($dirname); } function &xoops_module_gettemplate($dirname, $template, $block=false) { if ($block) { $path = XOOPS_ROOT_PATH.'/modules/'.$dirname.'/templates/blocks/'.$template; } else { $path = XOOPS_ROOT_PATH.'/modules/'.$dirname.'/templates/'.$template; } if (!file_exists($path)) { return false; } else { $lines = file($path); } if (!$lines) { return false; } $ret = ''; $count = count($lines); for ($i = 0; $i < $count; $i++) { $ret .= str_replace("\n", "\r\n", str_replace("\r\n", "\n", $lines[$i])); } return $ret; } function check_language($language){ if ( file_exists('../modules/system/language/'.$language.'/modinfo.php') ) { return $language; } else { return 'english'; } } ?>