<?php
/*
// ------------------------------------------------------------------------
-+ Date: 26-May-2004
-+ Version: 1.4
-+ ========================================
-+ Be Modified by Koudanshi
-+ E-mail: koudanshi@gmx.net
-+ Homepage: bbpixel.com
-+ ========================================
-+ Any Problems please email me,
-+ Please! don't bother IPS INC.
-+ ========================================
\\ ------------------------------------------------------------------------
*/
/*
+--------------------------------------------------------------------------
|   INVISION POWER BOARD SAFE MODE INSTALL SCRIPT v1.3
|   ========================================
|   by Matthew Mecham
|   (c) 2001 - 2003 Invision Power Services
|   http://www.invisionpower.com
|   ========================================
|   Web: http://www.ibforums.com
|   Email: phpboards@ibforums.com
|   Licence Info: phpib-licence@ibforums.com
+---------------------------------------------------------------------------
|
|   > Script written by Matthew Mecham
|   > Date started: 30th March 2002
|   > Update started: 17th October 2002
|
+--------------------------------------------------------------------------
*/

error_reporting  (E_ERROR | E_WARNING | E_PARSE);
set_magic_quotes_runtime(0);

//+---------------------------------------
// ENTER YOUR PATH TO THE DIRECTORY THIS SCRIPT
// IS IN.
//
// Tips:
//
// If you are using Windows and Apache, do not
// use backslashes, use normal forward slashes.
// You may need to remove the drive letter also
// Example: C:\apache\htdocs\ibforums\ will need
// to be: /apache/htdocs/ibforums/
//
// If you are using Windows and IIS, then you will 
// need to enter double backslashes.
//
// In all cases, please enter a trailing slash (or
// trailing backslashes...)
//+---------------------------------------
 
$root = "./";
//<<<-------------------------------------
//-+- XOOPS -- MainFile -- Koudanshi
//<<<-------------------------------------
include ($root."../../mainfile.php");
//+---------------------------------------

$template = new template;
$std      = new installer;

$VARS = $std->parse_incoming();

//+---------------------------------------
// What are we doing then? Eh? I'm talking to you!
//+---------------------------------------

if ( file_exists($root.'install.lock') )
{
	install_error("安裝程式已被鎖住！<br>請 (經由 FTP) 移除目錄中的 'install.lock' 檔案");
	exit();
}


switch($VARS['a'])
{
	case '1':
		do_setup_form();
		break;
		
	case '2':
		do_install();
		break;
		
	case 'templates':
		do_templates();
		break;
		
	case '3':
		do_finish();
		break;
		
	default:
		do_intro();
		break;
}

function do_finish()
{
	global $std, $template, $root, $VARS, $SQL;
	
	// Attempt to lock the install..
	
	if ($FH = @fopen( $root.'install.lock', 'w' ) )
	{
		@fwrite( $FH, 'bleh', 4 );
		@fclose($FH);
		
		@chmod( $root.'install.lock', 0666 );
		
		$template->print_top('成功！');
	
		$msg="雖然安裝程式現在已經鎖住 (要重新安裝，請移除檔案 'install.lock')，為了增進安全性，請在繼續之前移除 sm_install.php 程式。
			 <br><br>
			 <center><b><a href='index.php'>點按這裡登入！</a></center>";
	}
	else
	{
		$template->print_top('成功！');
		
		$msg = "請在繼續之前先移除安裝程式 ('sm_install.php')！<br>若不這樣做，則任何人均可隨時刪除您的論壇！
				<br><br>
				<center><b><a href='index.php'>點按這裡登入！</a></center>";
	}
	
	$template->contents .= "
	<div class='centerbox'>
	<div class='tableborder'>
	<div class='maintitle'>成功</div>
	<div class='tablepad'>
	<b>現在已經完成安裝！</b>
	<br><br>
	$msg
	</div>
	</div>
	</div>";
						 
	$template->output();
	
	
	
}


//+---------------------------------------
// Install the template files, woohoo and stuff
//+---------------------------------------


function do_templates()
{
	global $std, $template, $root, $VARS, $HTTP_POST_VARS;
	
	//-----------------------------------
	// IMPORT $INFO!
	//-----------------------------------
	
	if ($root == './')
	{
		$root = str_replace( '\\', '/', getcwd() ) . '/';
	}
	
	$require = $root."conf_global.php";
	
	if ( ! file_exists($require) )
	{
		install_error("無法找到 '$require'，您或許必須在安裝程式中輸入根路徑的鍵值，若要進行，只需以文字編輯器開啟程式輸入 \$root 的鍵值即可 - 記得在最後面加上斜線，NT 使用者必須使用雙反斜線。");
	}
	
	include($require);
	
	//-----------------------------------
	// Attempt a DB connection..
	//-----------------------------------
	
	if ( ! $connect_id = mysql_connect( $INFO['sql_host'],$INFO['sql_user'],$INFO['sql_pass'] ) )
	{
		install_error("無法建立 mySQL 連線，請檢查檔案 'conf_global.php' 是否與安裝程式處於相同的目錄並且安裝程式已將該檔案適時地更新過了。");
	}
	
		
	if ( ! mysql_select_db($INFO['sql_database'], $connect_id) )
	{
		install_error("mySQL 無法找到名為 '{$VARS['sql_database']}' 的資料庫，如果重新安裝仍然無法解決這個問題，請連絡我們的技術支援。");
	}
	
	//-----------------------------------
	// Lets open the style file
	//-----------------------------------
	
	$style_file = $root.'install_templates.txt';
	
	if ( ! file_exists($style_file) )
	{
		install_error("無法找到 '$style_file'。<br><br>請檢查這個檔案是否與安裝程式處於相同的位置。<br><br>您或許必須在安裝程式中輸入根路徑的鍵值，若要進行，只需以文字編輯器開啟程式輸入 \$root 的鍵值即可 - 記得在最後面加上斜線，NT 使用者必須使用雙反斜線。");
	}
	
	if ( $fh = fopen( $style_file, 'r' ) )
	{
		$data = fread($fh, filesize($style_file) );
		fclose($fh);
	}
	else
	{
		install_error("無法開啟 '$style_file'");
	}
	
	if (strlen($data) < 100)
	{
		install_error("錯誤１：'$style_file' 不完整，請重新上傳一份到伺服器覆蓋目前的檔案。'");
	}
	
	// Chop up the data file.
	
	$template_rows = explode( "||~&~||", $data );
	
	$crows = count($template_rows);  //we're counting crows :o
	
	if ( $crows < 100 )
	{
		install_error("錯誤２： (找到 $crows 個欄位) '$style_file' 不完整，請重新上傳一份到伺服器覆蓋目前的檔案。'");
	}
	
	//-----------------------------------
	// Lets populate the database!
	//-----------------------------------
	
	foreach( $template_rows as $q )
	{

	   $q = trim($q);
	   
	   if (strlen($q) < 5)
	   {
	       continue;
	   }
	   
	   $query = "INSERT INTO ".$INFO['sql_tbl_prefix']."ipb_skin_templates (set_id, group_name, section_content, func_name, func_data, updated, can_remove) VALUES $q";
		   
	   if ( ! mysql_query($query, $connect_id) )
	   {
		   install_error("mySQL 錯誤： ".mysql_error());
	   }
   }
   
   // ARE WE DONE? REALLY? COOL!!
   
   $template->print_top('成功！');
   
   $template->contents .= "
	<div class='centerbox'>
	<div class='tableborder'>
	<div class='maintitle'>成功</div>
	<div class='tablepad'>
	<b>已安裝模板檔案！</b>
	<br><br>
	現在已經完成安裝程序
	<br>
	按下面的連結清除安裝程式及相關檔案。
	<br><br>
	<center><b><a href='sm_install.php?a=3'>按這裡結束</a></center>
	</div>
	</div>
	</div>";
   
	$template->output();
	
}

//+---------------------------------------


function do_install()
{
	global $std, $template, $root, $VARS, $HTTP_POST_VARS;
	
	// Ok, lets check for blankies...
	
	$NEW_INFO = array();
	
	$need = array('board_url','sql_host','sql_database','sql_user','adminname');
	
	//-----------------------------------
	
	foreach($need as $greed)
	{
		if ($VARS[ $greed ] == "")
		{
			install_error("除了 'SQL 資料表字首' 之外，您還必須完成整個表單。");
		}
	}
	
	//-----------------------------------
	
	$VARS['board_url'] = preg_replace( "#/$#", "", $VARS['board_url'] );
	
	//-----------------------------------
	// IMPORT $INFO!
	//-----------------------------------
	
	if ($root == './')
	{
		$root = str_replace( '\\', '/', getcwd() ) . '/';
	}
	
	$require = $root."conf_global.php";
	
	if ( ! file_exists($require) )
	{
		install_error("無法找到 '$require'. 您或許必須在安裝程式中輸入根路徑的鍵值，若要進行，只需以文字編輯器開啟程式輸入 \$root 的鍵值即可 - 記得在最後面加上斜線，NT 使用者必須使用雙反斜線。");
	}
	
	//@chmod( "conf_global.php", 0666 );
	
	include($require);
	
	//echo("here");
	//exit();
	
	if ( count($INFO) < 1 )
	{
		install_error("'conf_global.php' ({$VARS['base_dir']}conf_global.php) 可能損毀，請重新以 ASCII 格式上傳。");
	}
	
	//-----------------------------------
	// Attempt a DB connection..
	//-----------------------------------
	
	if ( ! $connect_id = mysql_connect( $VARS['sql_host'],$HTTP_POST_VARS['sql_user'],$HTTP_POST_VARS['sql_pass'] ) )
	{
		install_error("無法建立 mySQL 連線，請檢查輸入的 SQL 資料");
	}
	
		
	if ( ! mysql_select_db($VARS['sql_database'], $connect_id) )
	{
		install_error("mySQL 無法找到名為 '{$VARS['sql_database']}' 的資料庫，請檢查輸入的資料。");
	}
	//<<<---------------------------------------------	
	//-+- Import the info of XOOPS's Admin acct
	//<<<---------------------------------------------
	$user_q   = mysql_query("SELECT email FROM ".XOOPS_DB_PREFIX."_users WHERE uname IN ('".$VARS['adminname']."')", $connect_id);
	$user_arr = mysql_fetch_array($user_q);
	$user_email = $user_arr['email'];
	//>>>---------------------------------------------	
	//-----------------------------------
	// Attempt to write the config file.
	//-----------------------------------
	
    $new  = array( 'base_dir'       => $root,
				   'board_url'      => $VARS['board_url'],
				   'sql_host'       => $VARS['sql_host'],
				   'sql_database'   => $VARS['sql_database'],
				   'sql_user'       => $HTTP_POST_VARS['sql_user'],
				   'sql_pass'       => $HTTP_POST_VARS['sql_pass'],
				   'sql_tbl_prefix' => $VARS['sql_tbl_prefix'],
				   
				   'html_dir'       => $root."html/",
				   'html_url'       => $VARS['board_url']."/html",
				   'upload_dir'     => $root."uploads",
				   'upload_url'     => $VARS['board_url']."/uploads",
				   'email_in'       => $user_email,
				   'email_out'      => $user_email,
				   'ban_names'      => "",
				   'ban_email'      => "",
				   'ban_ip'         => "",
				   'force_login'    => 0,
				   'load_limit'     => "",
				   'board_start'    => time(),
				   'installed'      => 1,
				   'guests_ava'     => 1,
				   'guests_img'		=> 1,
				   'guests_sig'		=> 1,
				   'print_headers'  => 0,
				   'disable_gzip'	=> 1,				   
				   'guest_name_pre' => "Guest_",
				   'xbbc_ucp'        => 1,
				   'xbbc_reg'        => 1,
				   'xbbc_wrap'       => 1,
				   'xbbc_redirect'   => 1,
				   'xbbc_popup'      => 1,
				   'xbbc_charset'    => "big5"
				 );
					 
	 foreach( $new as $k => $v )
	 {
		 // Update the old...
		 
		 $v = preg_replace( "/'/", "\\'" , $v );
		 $v = preg_replace( "/\r/", ""   , $v );
		 
		 $INFO[ $k ] = $v;
	 }
	 
	 $file_string = "<?php\n";
		
	 foreach( $INFO as $k => $v )
	 {
		 if ($k == 'skin' or $k == 'languages')
		 {
			continue;
		 }
		 $file_string .= '$INFO['."'".$k."'".']'."\t\t\t=\t'".$v."';\n";
	 }
	 
	 $file_string .= "\n".'?'.'>';   // Question mark + greater than together break syntax hi-lighting in BBEdit 6 :p
	 
	 if ( $fh = fopen( $require, 'w' ) )
	 {
		 fputs($fh, $file_string, strlen($file_string) );
		 fclose($fh);
	 }
	 else
	 {
		 install_error("無法寫入 'conf_global.php'");
	 }
	 
	 //-----------------------------------
	 // What MySQL version are we running?
	 //-----------------------------------
	 
	 $a = mysql_query("SELECT VERSION() AS version", $connect_id);
		
	 if ( ! $row = mysql_fetch_array($a) )
	 {
		 $b = mysql_query("SHOW VARIABLES LIKE 'version'", $connect_id);
		 $row = mysql_fetch_array($b);
	 }
	 
	 $mysql_version = 32100;
	 
	 $no_array = explode( '.', preg_replace( "/^(.+?)[-_]?/", "\\1", $row['version']) );
	 
	 $one   = (!isset($no_array) || !isset($no_array[0])) ? 3  : $no_array[0];
	 $two   = (!isset($no_array[1]))                      ? 21 : $no_array[1];
	 $three = (!isset($no_array[2]))                      ? 0  : $no_array[2];
	 
	 $mysql_version = (int)sprintf('%d%02d%02d', $one, $two, intval($three));
	 
	 //-----------------------------------
	 // Lets populate the database!
	 //-----------------------------------
	 
	 $SQL = get_sql();
	 
	 foreach( $SQL as $q )
	 {
	 	if ($VARS['sql_tbl_prefix'] != "ibf_")
        {
           //<<<---------------------------------------------
           // Auto change table -- Koudanshi 
           //<<<---------------------------------------------
           $q = str_replace("ibf_sessions", XOOPS_DB_PREFIX."_session", $q);
           $q = str_replace("ibf_members", XOOPS_DB_PREFIX."_users", $q);
           $q = str_replace("ibf_emoticons", XOOPS_DB_PREFIX."_smiles", $q);
           //<<<---------------------------------------------	
           $q = preg_replace("/ibf_(\S+?)([\s\.,]|$)/", $VARS['sql_tbl_prefix']."ipb_\\1\\2", $q);           
        }
        
        $q = str_replace( "<%time%>", time(), $q );
        
        if ( preg_match("/CREATE TABLE (\S+) \(/", $q, $match) )
        {
        	if ($match[1])
        	{
        		$the_query = "DROP TABLE if exists ".$match[1];
        		
        		if (! mysql_query($the_query, $connect_id) )
        		{
        			install_error("mySQL 錯誤： ".mysql_error());
        		}
        	}
        }
        
        if ( $mysql_version < 32323 )
        {
        	$q = str_replace( "KEY forum_id (forum_id,approved,pinned),FULLTEXT KEY title (title)", 'KEY forum_id (forum_id,approved,pinned)', $q );
        	$q = str_replace( "KEY forum_id (forum_id,post_date),FULLTEXT KEY post (post)"        , 'KEY forum_id (forum_id,post_date)'      , $q );
        }
        	
        if ( ! mysql_query($q, $connect_id) )
        {
        	install_error("mySQL 錯誤: ".mysql_error()."<br /><b>Query:</b>".$q);
        }
	}
	
	// Insert the admin...
	//<<<---------------------------------------------
	//-+- Update XOOPS's Admin acct -- Koudanshi
	//<<<---------------------------------------------
	
	$time  = time();
	$query = "UPDATE ".XOOPS_DB_PREFIX."_users SET mgroup=4, title='Administrator',last_visit='$time', last_activity='$time' WHERE uname='".$VARS['adminname']."'";
	if ( ! mysql_query($query, $connect_id) )
	{
		install_error("mySQL 錯誤： ".mysql_error());
		
	}
  //--------------------------------
  // UPDATE STATS + Admin right
  // by Koudanshi
  //--------------------------------  
  $total_u = mysql_fetch_array(mysql_query("SELECT count(uid) as ut FROM ".XOOPS_DB_PREFIX."_users WHERE mgroup <> '".$INFO['auth_group']."' AND uid <> 0",$connect_id));
  $last_u  = mysql_fetch_array(mysql_query("SELECT uid, uname FROM ".XOOPS_DB_PREFIX."_users WHERE mgroup <> '".$INFO['auth_group']."' ORDER BY uid DESC LIMIT 0,1",$connect_id));
  
	if (!mysql_query("UPDATE ".XOOPS_DB_PREFIX."_ipb_stats SET LAST_MEM_NAME = '".$last_u['uname']."', LAST_MEM_ID = '".$last_u['uid']."', MOST_DATE = '".time()."', MEM_COUNT  = '".$total_u['ut']."' ",$connect_id))
	{
		print ("<br /> Error when update Statistics Table! <br />".mysql_error()."");
	}
	
	//<<<---------------------------------------------
  //-+- Update Administrator permission
  //-+- By Koudanshi
	//<<<---------------------------------------------

	$sql = mysql_query("SELECT uid FROM ".XOOPS_DB_PREFIX."_groups_users_link WHERE groupid = '1'",$connect_id);
	while ($row = mysql_fetch_array($sql))
	{
		if (!mysql_query("UPDATE ".XOOPS_DB_PREFIX."_users SET mgroup = '4' WHERE uid = '".$row['uid']."'",$connect_id))
		{
			print ("<br /> Error when update Administrator right! <br />".mysql_error()."");
		}
	}
	//>>>---------------------------------------------

	// ARE WE DONE? REALLY? COOL!!
	
	$template->print_top('成功！');
	
	$template->contents .= "
	<div class='centerbox'>
	<div class='tableborder'>
	<div class='maintitle'>成功</div>
	<div class='tablepad'>
	<b>您的論壇現在已經被安裝了！</b>
	<br><br>
	安裝程序快要完成。
	<br>
	下一個也是最後一個步驟將會安裝模板檔案到您的資料庫中
	<br><br>
	<center><b><a href='sm_install.php?a=templates'>按這裡繼續</a></center>
	</div>
	</div>
	</div>";
						 
	$template->output();
	
}




function do_setup_form()
{
	global $std, $template, $root, $HTTP_SERVER_VARS, $xoopsUser;
	
	$template->print_top('設定表單');
	
	//<<<-----------------------------------------------	
	//-+- Auto Fill by XOOPS config -- Koudanshi
	//<<<-----------------------------------------------	
	$sqlhost    = XOOPS_DB_HOST;
	$sqldb      = XOOPS_DB_NAME;
	$sqluser    = XOOPS_DB_USER;	
	$sqlpass    = XOOPS_DB_PASS;
	$sqlprefix  = XOOPS_DB_PREFIX."_";
	//>>>-----------------------------------------------

	//--------------------------------------------------
	$this_url = str_replace( "/sm_install.php", "", $HTTP_SERVER_VARS['HTTP_REFERER']);
	$this_url = str_replace( "index.php", "", $this_url);

	if ( ! $this_url )
	{
		$this_url = substr($HTTP_SERVER_VARS['SCRIPT_NAME'],0, -15);
		
    	if ($this_url == '')
    	{
    		$this_url == '/';
    	}
    	$this_url = 'http://'.$HTTP_SERVER_VARS['SERVER_NAME'].$this_url; 
    } 
	
	
	//--------------------------------------------------

	$template->contents .= "
	
	<form action='sm_install.php' method='POST'>
	<input type='hidden' name='a' value='2'>
	<div class='centerbox'>
	
	<div class='tableborder'>
	<div class='maintitle'>您的伺服器環境</div>
	<div class='pformstrip'>您必須在這裡輸入論壇路徑及 URL。</div>
	<table width='100%' cellspacing='1'>
	<tr>
	  <td class='pformleftw'><b>程式 URL</b><br>這是程式所在目錄的 URL (開頭必須為 http://)。</td>
	  <td class='pformright'><input type='text' id='textinput' name='board_url' value='$this_url'></td>
	</tr>
	</table>
	</div>
	<div class='fade'>&nbsp;</div>
	
	<br />
	
	<div class='tableborder'>
	<div class='maintitle'>您的 SQL 環境</div>
	<div class='pformstrip'>您必須在這裡輸入您的 SQL 資訊，若無法肯定，請在尋求支援前檢查您的網站主機，您可以選擇輸入一個已存在的資料庫名稱。如果沒有 - 在繼續進行之前您必須建立一個新的資料庫。</div>
	<table width='100%' cellspacing='1'>
	<tr>
	  <td class='pformleftw'><b>SQL 主機</b><br>(通常是 localhost)</td>
	  <td class='pformright'><input type='text' id='textinput' name='sql_host' value='$sqlhost' readonly ></td>
	</tr>
	
	<tr>
	  <td class='pformleftw'><b>SQL 資料庫名稱</b></td>
	  <td class='pformright'><input type='text' id='textinput' name='sql_database' value='$sqldb' readonly ></td>
	</tr>
	
	<tr>
	  <td class='pformleftw'><b>SQL 使用者名稱</b></td>
	  <td class='pformright'><input type='text' id='textinput' name='sql_user' value='$sqluser' readonly ></td>
	</tr>
	
	<tr>
	  <td class='pformleftw'><b>SQL 密碼</b></td>
	  <td class='pformright'><input type='text' id='textinput' name='sql_pass' value='$sqlpass' readonly ></td>
	</tr>
	
	<tr>
	  <td class='pformleftw'><b>SQL 資料表前置名稱</b>(您可以留空)</td>
	  <td class='pformright'><input type='text' id='textinput' name='sql_tbl_prefix' value='$sqlprefix' readonly ></td>
	</tr>
	</table>
	</div>
	<div class='fade'>&nbsp;</div>
	
	<br />
	
	<div class='tableborder'>
	<div class='maintitle'>您的管理帳號</div>
	<div class='pformstrip'>必須在這裡提供資訊以建立您的管理帳號，請小心輸入資料！</div>
	<table width='100%' cellspacing='1'>
	<tr>
	  <td class='pformleftw'><b>請輸入您在 XOOPS 中的系統管理者帳號<br>請輸入帳號名稱即可</b></td>
	  <td class='pformright'><input type='text' id='textinput' name='adminname' value=''></td>
	</tr>
	</table>
	<div class='pformstrip'><font color=red>請在檢視核對資料一次!</font><br>假如你在安裝過程中遭遇到問題, 您必須還原您的資料庫並嘗試重新安裝.</div>
	
	<div align='center' class='pformstrip'  style='text-align:center'><input type='image' src='html/sys-img/install_proceed.gif'></div>
	</div>
	<div class='fade'>&nbsp;</div>
	</div>
	</form>";
						 
	$template->output();
						 
}

//+---------------------------------------

function do_intro()
{
	global $std, $template, $root;
	
	$template->print_top('歡迎');
	
	$template->contents .= "<table width='80%' border='0' cellpadding='0' cellspacing='0' align='center'>
							<tr>
							 <td valign='top'><img src='html/sys-img/install_face.jpg' border='0' alt='Intro'></td>
							 <td><img src='html/sys-img/install_text.gif' border='0' alt='Welcome to IPB'>
							  <br /><br />
							   在我們進行之前，請確定所有的檔案都已上傳，並且檔案
							   'conf_global.php' 有足夠的權限可讓程式讀寫 ( 0666 應該足夠了 )。
							   <br><br>
							   您還需要下面由您主機商所提供的資訊：
							   <ul>
							   <li>您的 MySQL 資料庫名稱</li>
							   <li>您的 MySQL 使用者名稱</li>
							   <li>您的 MySQL 密碼</li>
							   <li>您的 MySQL 主機位址 (通常為 localhost)</li>
							   </ul>
							   <br />
							   一旦按下處理，您將會被帶到一個表單以輸入安裝程式設定論壇所需的資料。
							   <br><br>
							   <b>請注意：此安裝程式將會刪除目前任何使用相同資料表字首的 INVISION POWER BOARD 資料庫。</b>
							   ";
						 
	// Check to make sure that the config file is there and it's got suitable permissions to write to:
	
	$file = $root."conf_global.php";
	
	$style_file = $root."install_templates.txt";
	
	$warnings = array();
	
	if ( ! file_exists($style_file) )
	{
		$warnings[] = "無法找到檔案 'install_templates.txt'，這必須上傳到與安裝程式相同的目錄下！";
	}
	
	if ( ! file_exists($file) )
	{
		$warnings[] = "無法找到檔案 'conf_global.php'，這必須上傳到與安裝程式相同的目錄下！";
	}
	
	if ( ! is_writeable($file) )
	{
		$warnings[] = "無法寫入 'conf_global.php'，請調整權限讓程式可以對此檔案進行寫入，若不能肯定，由 FTP CHMOD 為 0777";
	}
	
	$phpversion = phpversion();
	
	if ($phpversion < '4.0.0') {
		$warnings[] = "您不能安裝 Invision Power Board，Invision Power Board 要求 PHP 為 4.0.0 或較新的版本。";
	}
	
	if ( count($warnings) > 0 )
	{
	
		$err_string = "<ul><li>".implode( "<li>", $warnings )."</ul>";
	
		$template->contents .= "<br /><br />
							    <div class='warnbox'>
							     <strong>警告！</strong>
							     <b>在繼續進行之前必須先修正下列錯誤！</b>
								 <br><br>
								 $err_string
							    </div>";
	}
	else
	{
		$template->contents .= "<br /><br /><div align='center'><a href='sm_install.php?a=1'><img src='html/sys-img/install_proceed.gif' border='0' alt='proceed'></a></div>";
	}
	
	$template->contents .= " </td>
							  </tr>
							 </table>";
	
	$template->output();
}



function install_error($msg="")
{
	global $std, $template, $root;
	
	$template->print_top('警告！');
	

	
	$template->contents .= "<div class='warnbox'>
						     <strong style='font-size:16px;color:#F00'>警告！</strong>
						     <br /><br />
						     <b>在繼續進行之前必須先修正下列錯誤！</b><br>請返回重試！
						     <br><br>
						     $msg
						    </div>";
	
	
	
	$template->output();
}

//+--------------------------------------------------------------------------
// CLASSES
//+--------------------------------------------------------------------------



class template
{
	var $contents = "";
	
	function output()
	{
		echo $this->contents;
		echo "   
				 
				 <br><br><br><br><center>Integrated by <a target=\"_blank\" href=\"http://www.bbpixel.com\">Koudanshi</a> &copy 2004<br><span id='copy'><a href='http://www.invisionboard.com'>Invision Power Board</a> &copy; 2003 <a href='http://www.invisionpower.com'>Invision Power Services, Inc.</a><br>中文語系由 <b><a href='http://singchi.no-ip.com/hack' target='_blank'>Koudanshi 中文支援</a></b> 團隊製作</span></center>
				 
				 </body>
				 </html>";
		exit();
	}
	
	//--------------------------------------

	function print_top($title="")
	{
	
		$this->contents = "<html>
		          <head><title>IPBM 設定 :: $title </title>
		          <style type='text/css'>
		          	
		          	BODY		          	
		          	{
		          		font-size: 11px;
		          		font-family: Verdana, Arial;
		          		color: #000;
		          		margin: 0px;
		          		padding: 0px;
		          		background-image: url(html/sys-img/fadebg.jpg);
		          		background-repeat: no-repeat;
		          		background-position: right bottom;
		          	}
		          	
		          	TABLE, TR, TD     { font-family:Verdana, Arial;font-size: 11px; color:#000 }
					
					a:link, a:visited, a:active  { color:#000055 }
					a:hover                      { color:#333377;text-decoration:underline }
					
					.centerbox { margin-right:10%;margin-left:10%;text-align:left }
					
					.warnbox {
							   border:1px solid #F00;
							   background: #FFE0E0;
							   padding:6px;
							   margin-right:10%;margin-left:10%;text-align:left;
							 }
					
					.tablepad    { background-color:#F5F9FD;padding:6px }

					.pformstrip { background-color: #D1DCEB; color:#3A4F6C;font-weight:bold;padding:7px;margin-top:1px;text-align:left }
					.pformleftw { background-color: #F5F9FD; padding:6px; margin-top:1px;width:40%; border-top:1px solid #C2CFDF; border-right:1px solid #C2CFDF; }
					.pformright { background-color: #F5F9FD; padding:6px; margin-top:1px;border-top:1px solid #C2CFDF; }

					.tableborder { border:1px solid #345487;background-color:#FFF; padding:0px; margin:0px; width:100% }

					.maintitle { text-align:left;vertical-align:middle;font-weight:bold; color:#FFF; letter-spacing:1px; padding:8px 0px 8px 5px; background-image: url(html/sys-img/tile_back.gif) }
					.maintitle a:link, .maintitle  a:visited, .maintitle  a:active { text-decoration: none; color: #FFF }
					.maintitle a:hover { text-decoration: underline }
					
					#copy { font-size:10px }
										
					#button   { background-color: #4C77B6; color: #FFFFFF; font-family:Verdana, Arial; font-size:11px }
					
					#textinput { background-color: #EEEEEE; color: #000000; font-family:Verdana, Arial; font-size:10px; width:100% }
					
					#dropdown { background-color: #EEEEEE; color: #000000; font-family:Verdana, Arial; font-size:10px }
					
					#multitext { background-color: #EEEEEE; color: #000000; font-family:Courier, Verdana, Arial; font-size:10px }
					
					#logostrip {
								 padding: 0px;
								 margin: 0px;
								 background: #7AA3D0;
							   }
							   
					.fade					
					{
						background-image: url(html/sys-img/fade.jpg);
						background-repeat: repeat-x;
					}
					
				  </style>
				  </head>
				 <body marginheight='0' marginwidth='0' leftmargin='0' topmargin='0' bgcolor='#FFFFFF'>
				 
				 <div id='logostrip'><img src='html/sys-img/title.gif' border='0' alt='Invision Power Board 安裝程式' /></div>
				 <div class='fade'>&nbsp;</div>
				 <br />
				 ";
				  	   
	}


}


class installer
{

	function parse_incoming()
    {
    	global $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_CLIENT_IP, $REQUEST_METHOD, $REMOTE_ADDR, $HTTP_PROXY_USER, $HTTP_X_FORWARDED_FOR;
    	$return = array();
    	
		if( is_array($HTTP_GET_VARS) )
		{
			while( list($k, $v) = each($HTTP_GET_VARS) )
			{
				//$k = $this->clean_key($k);
				if( is_array($HTTP_GET_VARS[$k]) )
				{
					while( list($k2, $v2) = each($HTTP_GET_VARS[$k]) )
					{
						$return[$k][ $this->clean_key($k2) ] = $this->clean_value($v2);
					}
				}
				else
				{
					$return[$k] = $this->clean_value($v);
				}
			}
		}
		
		// Overwrite GET data with post data
		
		if( is_array($HTTP_POST_VARS) )
		{
			while( list($k, $v) = each($HTTP_POST_VARS) )
			{
				//$k = $this->clean_key($k);
				if ( is_array($HTTP_POST_VARS[$k]) )
				{
					while( list($k2, $v2) = each($HTTP_POST_VARS[$k]) )
					{
						$return[$k][ $this->clean_key($k2) ] = $this->clean_value($v2);
					}
				}
				else
				{
					$return[$k] = $this->clean_value($v);
				}
			}
		}
		
		return $return;
	}
    
    function clean_key($key) {
    
    	if ($key == "")
    	{
    		return "";
    	}
    	
    	$key = preg_replace( "/\.\./"           , ""  , $key );
    	$key = preg_replace( "/\_\_(.+?)\_\_/"  , ""  , $key );
    	$key = preg_replace( "/^([\w\.\-\_]+)$/", "$1", $key );
    	return $key;
    }
    
    function clean_value($val) {
    
    	if ($val == "")
    	{
    		return "";
    	}
    	
    	$val = preg_replace( "/&/"         , "&amp;"         , $val );
    	$val = preg_replace( "/<!--/"      , "&#60;&#33;--"  , $val );
    	$val = preg_replace( "/-->/"       , "--&#62;"       , $val );
    	$val = preg_replace( "/<script/i"  , "&#60;script"   , $val );
    	$val = preg_replace( "/>/"         , "&gt;"          , $val );
    	$val = preg_replace( "/</"         , "&lt;"          , $val );
    	$val = preg_replace( "/\"/"        , "&quot;"        , $val );
    	$val = preg_replace( "/\|/"        , "&#124;"        , $val );
    	$val = preg_replace( "/\n/"        , "<br>"          , $val ); // Convert literal newlines
    	$val = preg_replace( "/\\\$/"      , "&#036;"        , $val );
    	$val = preg_replace( "/\r/"        , ""              , $val ); // Remove literal carriage returns
    	$val = preg_replace( "/!/"         , "&#33;"         , $val );
    	$val = preg_replace( "/'/"         , "&#39;"         , $val ); // IMPORTANT: It helps to increase sql query safety.
    	$val = stripslashes($val);                                     // Swop PHP added backslashes
    	$val = preg_replace( "/\\\/"       , "&#092;"        , $val ); // Swop user inputted backslashes
    	return $val;
    }
   
}



// DATA AND STUFF, ETC

function get_sql()
{

$SQL = array();

//<<<--------------------------------------------
//-+- Alter table to compatibility with XOOPS
//-+- Koudanshi
//<<<--------------------------------------------
$SQL[] = "ALTER TABLE ibf_emoticons
	CHANGE    id id smallint(3) NOT NULL auto_increment,
	CHANGE    code code varchar(32) NOT NULL default '',
	CHANGE    smile_url smile_url varchar(128) NOT NULL default '',
	ADD  clickable smallint(2) NOT NULL default '1'
";

$SQL[] = "ALTER TABLE ibf_sessions
	ADD    member_name varchar(64) NOT NULL default '',
	ADD    member_id mediumint(8) NOT NULL default '0',
	ADD    browser varchar(64) NOT NULL default '',
	ADD    login_type tinyint(1) NOT NULL default '',
	ADD    location varchar(40) NOT NULL default '',
	ADD    member_group smallint(3) NOT NULL default '',
	ADD    in_forum smallint(5) NOT NULL default '0',
	ADD    in_topic int(10) NOT NULL default '',
	ADD    KEY in_topic (in_topic),
	ADD    KEY in_forum (in_forum)
";

$SQL[] = "ALTER TABLE ibf_members
	CHANGE    uid uid int(10) unsigned NOT NULL auto_increment,
	CHANGE    uname uname varchar(50) NOT NULL default '',
	CHANGE    pass pass varchar(50) NOT NULL default '',
	CHANGE    email email varchar(150) NOT NULL default '',	
	CHANGE    level level tinyint(3) unsigned NOT NULL default '0',	
	CHANGE    user_avatar user_avatar varchar(128) NOT NULL default 'blank.gif',
	CHANGE    posts posts mediumint(7) unsigned NOT NULL default '0',
	CHANGE    user_aim user_aim varchar(30) NOT NULL default '',
	CHANGE    user_icq user_icq varchar(30) NOT NULL default '',
	CHANGE    user_from user_from varchar(128) NOT NULL default '',
	CHANGE    url url varchar(250) NOT NULL default '',
	CHANGE    user_yim user_yim varchar(30) NOT NULL default '',
	CHANGE    user_intrest user_intrest text NOT NULL,
	CHANGE    user_viewemail user_viewemail varchar(8) NOT NULL default '',
	CHANGE    user_msnm user_msnm varchar(30) NOT NULL default '',
	CHANGE    attachsig attachsig tinyint(1)  NOT NULL default '1',
	CHANGE    notify_method notify_method tinyint(1) NOT NULL default '2',	
	CHANGE    user_sig user_sig text NOT NULL,

	ADD   mgroup smallint(3) NOT NULL default '3',
	ADD   ip_address varchar(16) NOT NULL default '',
	ADD   avatar_size varchar(9) NOT NULL default '',
	ADD   title varchar(64) NOT NULL default '',
	ADD   email_pm tinyint(1) NOT NULL default '',
	ADD   email_full tinyint(1) NOT NULL default '',
	ADD   skin smallint(5) NOT NULL default '',
	ADD   warn_level int(10) NOT NULL default '',
	ADD   warn_lastwarn int(10) NOT NULL default '0',
	ADD   language varchar(32) NOT NULL default '',
	ADD   last_post int(10) NOT NULL default '',
	ADD   restrict_post varchar(100) NOT NULL default '0',
	ADD   view_img tinyint(1) NOT NULL default '1',
	ADD   view_avs tinyint(1) NOT NULL default '1',
	ADD   view_pop tinyint(1) NOT NULL default '1',
	ADD   bday_day int(2) NOT NULL default '',
	ADD   bday_month int(2) NOT NULL default '',
	ADD   bday_year int(4) NOT NULL default '',
	ADD   new_msg tinyint(2) NOT NULL default '',
	ADD   msg_from_id mediumint(8) NOT NULL default '',
	ADD   msg_msg_id int(10) NOT NULL default '',
	ADD   msg_total smallint(5) NOT NULL default '',
	ADD   vdirs text NOT NULL,
	ADD   show_popup tinyint(1) NOT NULL default '',
	ADD   misc varchar(128) NOT NULL default '',
	ADD   last_visit int(10) NOT NULL default '0',
	ADD   last_activity int(10) NOT NULL default '0',
	ADD   dst_in_use tinyint(1) NOT NULL default '0',
	ADD   view_prefs varchar(64) NOT NULL default '-1&-1',
	ADD   coppa_user tinyint(1) NOT NULL default '0',
	ADD   mod_posts varchar(100) NOT NULL default '0',
	ADD   auto_track tinyint(1) NOT NULL default '0',
	ADD   org_perm_id varchar(255) NOT NULL default '',
	ADD   org_supmod tinyint(1) NOT NULL default '0',
	ADD   integ_msg varchar(250) NOT NULL default '',
	ADD   temp_ban varchar(100) NOT NULL default '',
	ADD	  sub_end int(10) NOT NULL default '0',
	ADD   KEY mgroup (mgroup),
	ADD   KEY bday_day (bday_day),
	ADD   KEY bday_month (bday_month)
";
	
//>>>--------------------------------------------	
$SQL[] = "CREATE TABLE ibf_admin_logs (
  id bigint(20) NOT NULL auto_increment,
  act varchar(255) default NULL,
  code varchar(255) default NULL,
  member_id int(10) default NULL,
  ctime int(10) default NULL,
  note text,
  ip_address varchar(255) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_admin_sessions (
  ID varchar(32) NOT NULL default '',
  IP_ADDRESS varchar(32) NOT NULL default '',
  MEMBER_NAME varchar(32) NOT NULL default '',
  MEMBER_ID varchar(32) NOT NULL default '',
  SESSION_KEY varchar(32) NOT NULL default '',
  LOCATION varchar(64) default 'index',
  LOG_IN_TIME int(10) NOT NULL default '0',
  RUNNING_TIME int(10) NOT NULL default '0',
  PRIMARY KEY  (ID)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_badwords (
  wid int(3) NOT NULL auto_increment,
  type varchar(250) NOT NULL default '',
  swop varchar(250) default NULL,
  m_exact tinyint(1) default '0',
  PRIMARY KEY  (wid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_cache_store (
  cs_key varchar(255) NOT NULL default '',
  cs_value text NOT NULL,
  cs_extra varchar(255) NOT NULL default '',
  PRIMARY KEY  (cs_key)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_calendar_events (
  eventid mediumint(8) NOT NULL auto_increment,
  userid mediumint(8) NOT NULL default '0',
  year int(4) NOT NULL default '2002',
  month int(2) NOT NULL default '1',
  mday int(2) NOT NULL default '1',
  title varchar(254) NOT NULL default 'no title',
  event_text text NOT NULL,
  read_perms varchar(254) NOT NULL default '*',
  unix_stamp int(10) NOT NULL default '0',
  priv_event tinyint(1) NOT NULL default '0',
  show_emoticons tinyint(1) NOT NULL default '1',
  rating smallint(2) NOT NULL default '1',
  event_ranged tinyint(1) NOT NULL default '0',
  event_repeat tinyint(1) NOT NULL default '0',
  repeat_unit char(2) NOT NULL default '',
  end_day int(2) default NULL,
  end_month int(2) default NULL,
  end_year int(4) default NULL,
  end_unix_stamp int(10) default NULL,
  event_bgcolor varchar(32) NOT NULL default '',
  event_color varchar(32) NOT NULL default '',
  PRIMARY KEY  (eventid),
  KEY unix_stamp (unix_stamp)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_categories (
  id smallint(5) NOT NULL default '0',
  position tinyint(3) default NULL,
  state varchar(10) default NULL,
  name varchar(128) NOT NULL default '',
  description text,
  image varchar(128) default NULL,
  url varchar(128) default NULL,
  PRIMARY KEY  (id),
  KEY id (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_contacts (
  id mediumint(8) NOT NULL auto_increment,
  contact_id mediumint(8) NOT NULL default '0',
  member_id mediumint(8) NOT NULL default '0',
  contact_name varchar(32) NOT NULL default '',
  allow_msg tinyint(1) default NULL,
  contact_desc varchar(50) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_css (
  cssid int(10) NOT NULL auto_increment,
  css_name varchar(128) NOT NULL default '',
  css_text text,
  css_comments text,
  updated int(10) default '0',
  PRIMARY KEY  (cssid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_email_logs (
  email_id int(10) NOT NULL auto_increment,
  email_subject varchar(255) NOT NULL default '',
  email_content text NOT NULL,
  email_date int(10) NOT NULL default '0',
  from_member_id mediumint(8) NOT NULL default '0',
  from_email_address varchar(250) NOT NULL default '',
  from_ip_address varchar(16) NOT NULL default '127.0.0.1',
  to_member_id mediumint(8) NOT NULL default '0',
  to_email_address varchar(250) NOT NULL default '',
  topic_id int(10) NOT NULL default '0',
  PRIMARY KEY  (email_id),
  KEY from_member_id (from_member_id),
  KEY email_date (email_date)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_faq (
  id mediumint(8) NOT NULL auto_increment,
  title varchar(128) NOT NULL default '',
  text text,
  description text NOT NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_forum_perms (
  perm_id int(10) NOT NULL auto_increment,
  perm_name varchar(250) NOT NULL default '',
  PRIMARY KEY  (perm_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_forum_tracker (
  frid mediumint(8) NOT NULL auto_increment,
  member_id varchar(32) NOT NULL default '',
  forum_id smallint(5) NOT NULL default '0',
  start_date int(10) default NULL,
  last_sent int(10) NOT NULL default '0',
  PRIMARY KEY  (frid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_forums (
  id smallint(5) NOT NULL default '0',
  topics mediumint(6) default NULL,
  posts mediumint(6) default NULL,
  last_post int(10) default NULL,
  last_poster_id mediumint(8) NOT NULL default '0',
  last_poster_name varchar(32) default NULL,
  name varchar(128) NOT NULL default '',
  description text,
  position tinyint(2) default NULL,
  use_ibc tinyint(1) default NULL,
  use_html tinyint(1) default NULL,
  status varchar(10) default NULL,
  start_perms varchar(255) NOT NULL default '',
  reply_perms varchar(255) NOT NULL default '',
  read_perms varchar(255) NOT NULL default '',
  password varchar(32) default NULL,
  category tinyint(2) NOT NULL default '0',
  last_title varchar(128) default NULL,
  last_id int(10) default NULL,
  sort_key varchar(32) default NULL,
  sort_order varchar(32) default NULL,
  prune tinyint(3) default NULL,
  show_rules tinyint(1) default NULL,
  upload_perms varchar(255) default NULL,
  preview_posts tinyint(1) default NULL,
  allow_poll tinyint(1) NOT NULL default '1',
  allow_pollbump tinyint(1) NOT NULL default '0',
  inc_postcount tinyint(1) NOT NULL default '1',
  skin_id int(10) default NULL,
  parent_id mediumint(5) default '-1',
  subwrap tinyint(1) default '0',
  sub_can_post tinyint(1) default '1',
  quick_reply tinyint(1) default '0',
  redirect_url varchar(250) default '',
  redirect_on tinyint(1) NOT NULL default '0',
  redirect_hits int(10) NOT NULL default '0',
  redirect_loc varchar(250) default '',
  rules_title varchar(255) NOT NULL default '',
  rules_text text NOT NULL,
  has_mod_posts tinyint(1) NOT NULL default '0',
  topic_mm_id varchar(250) NOT NULL default '',
  notify_modq_emails text default '',
  PRIMARY KEY  (id),
  KEY category (category),
  KEY id (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_groups (
  g_id int(3) unsigned NOT NULL auto_increment,
  g_view_board tinyint(1) default NULL,
  g_mem_info tinyint(1) default NULL,
  g_other_topics tinyint(1) default NULL,
  g_use_search tinyint(1) default NULL,
  g_email_friend tinyint(1) default NULL,
  g_invite_friend tinyint(1) default NULL,
  g_edit_profile tinyint(1) default NULL,
  g_post_new_topics tinyint(1) default NULL,
  g_reply_own_topics tinyint(1) default NULL,
  g_reply_other_topics tinyint(1) default NULL,
  g_edit_posts tinyint(1) default NULL,
  g_delete_own_posts tinyint(1) default NULL,
  g_open_close_posts tinyint(1) default NULL,
  g_delete_own_topics tinyint(1) default NULL,
  g_post_polls tinyint(1) default NULL,
  g_vote_polls tinyint(1) default NULL,
  g_use_pm tinyint(1) default NULL,
  g_is_supmod tinyint(1) default NULL,
  g_access_cp tinyint(1) default NULL,
  g_title varchar(32) NOT NULL default '',
  g_can_remove tinyint(1) default NULL,
  g_append_edit tinyint(1) default NULL,
  g_access_offline tinyint(1) default NULL,
  g_avoid_q tinyint(1) default NULL,
  g_avoid_flood tinyint(1) default NULL,
  g_icon varchar(64) default NULL,
  g_attach_max bigint(20) default NULL,
  g_avatar_upload tinyint(1) default '0',
  g_calendar_post tinyint(1) default '0',
  prefix varchar(250) default NULL,
  suffix varchar(250) default NULL,
  g_max_messages int(5) default '50',
  g_max_mass_pm int(5) default '0',
  g_search_flood mediumint(6) default '20',
  g_edit_cutoff int(10) default '0',
  g_promotion varchar(10) default '-1&-1',
  g_hide_from_list tinyint(1) default '0',
  g_post_closed tinyint(1) default '0',
  g_perm_id varchar(255) NOT NULL default '',
  g_photo_max_vars varchar(200) default '',
  g_dohtml tinyint(1) NOT NULL default '0',
  g_edit_topic tinyint(1) NOT NULL default '0',
  g_email_limit varchar(15) NOT NULL default '10:15',
  PRIMARY KEY  (g_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_languages (
  lid mediumint(8) NOT NULL auto_increment,
  ldir varchar(64) NOT NULL default '',
  lname varchar(250) NOT NULL default '',
  lauthor varchar(250) default NULL,
  lemail varchar(250) default NULL,
  PRIMARY KEY  (lid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_macro (
  macro_id smallint(3) NOT NULL auto_increment,
  macro_value varchar(200) default NULL,
  macro_replace text,
  can_remove tinyint(1) default '0',
  macro_set smallint(3) NOT NULL default '',
  PRIMARY KEY  (macro_id),
  KEY macro_set (macro_set)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_macro_name (
  set_id smallint(3) NOT NULL default '0',
  set_name varchar(200) default NULL,
  PRIMARY KEY  (set_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_member_extra (
  id mediumint(8) NOT NULL default '0',
  notes text,
  links text,
  bio text,
  ta_size char(3) default NULL,
  photo_type varchar(10) default '',
  photo_location varchar(255) default '',
  photo_dimensions varchar(200) default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_messages (
  msg_id int(10) NOT NULL auto_increment,
  msg_date int(10) default NULL,
  read_state tinyint(1) default NULL,
  title varchar(128) default NULL,
  message text,
  from_id mediumint(8) NOT NULL default '0',
  vid varchar(32) default NULL,
  member_id mediumint(8) NOT NULL default '0',
  recipient_id mediumint(8) NOT NULL default '0',
  attach_type tinyint(128) default NULL,
  attach_file tinyint(128) default NULL,
  cc_users text,
  tracking tinyint(1) default '0',
  read_date int(10) default NULL,
  PRIMARY KEY  (msg_id),
  KEY member_id (member_id),
  KEY vid (vid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_moderator_logs (
  id int(10) NOT NULL auto_increment,
  forum_id int(5) default '0',
  topic_id int(10) NOT NULL default '0',
  post_id int(10) default NULL,
  member_id mediumint(8) NOT NULL default '0',
  member_name varchar(32) NOT NULL default '',
  ip_address varchar(16) NOT NULL default '0',
  http_referer varchar(255) default NULL,
  ctime int(10) default NULL,
  topic_title varchar(128) default NULL,
  action varchar(128) default NULL,
  query_string varchar(128) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_moderators (
  mid mediumint(8) NOT NULL auto_increment,
  forum_id int(5) NOT NULL default '0',
  member_name varchar(32) NOT NULL default '',
  member_id mediumint(8) NOT NULL default '0',
  edit_post tinyint(1) default NULL,
  edit_topic tinyint(1) default NULL,
  delete_post tinyint(1) default NULL,
  delete_topic tinyint(1) default NULL,
  view_ip tinyint(1) default NULL,
  open_topic tinyint(1) default NULL,
  close_topic tinyint(1) default NULL,
  mass_move tinyint(1) default NULL,
  mass_prune tinyint(1) default NULL,
  move_topic tinyint(1) default NULL,
  pin_topic tinyint(1) default NULL,
  unpin_topic tinyint(1) default NULL,
  post_q tinyint(1) default NULL,
  topic_q tinyint(1) default NULL,
  allow_warn tinyint(1) default NULL,
  edit_user tinyint(1) NOT NULL default '0',
  is_group tinyint(1) default '0',
  group_id smallint(3) default NULL,
  group_name varchar(200) default NULL,
  split_merge tinyint(1) default '0',
  can_mm tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (mid),
  KEY forum_id (forum_id),
  KEY group_id (group_id),
  KEY member_id (member_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_pfields_content (
  member_id mediumint(8) NOT NULL default '0',
  updated int(10) default '0',
  PRIMARY KEY  (member_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_pfields_data (
  fid smallint(5) NOT NULL auto_increment,
  ftitle varchar(200) NOT NULL default '',
  fdesc varchar(250) default '',
  fcontent text,
  ftype varchar(250) default 'text',
  freq tinyint(1) default '0',
  fhide tinyint(1) default '0',
  fmaxinput smallint(6) default '250',
  fedit tinyint(1) default '1',
  forder smallint(6) default '1',
  fshowreg tinyint(1) default '0',
  PRIMARY KEY  (fid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_polls (
  pid mediumint(8) NOT NULL auto_increment,
  tid int(10) NOT NULL default '0',
  start_date int(10) default NULL,
  choices text,
  starter_id mediumint(8) NOT NULL default '0',
  votes smallint(5) NOT NULL default '0',
  forum_id smallint(5) NOT NULL default '0',
  poll_question varchar(255) default NULL,
  PRIMARY KEY  (pid)
) TYPE=MyISAM;";


$SQL[] = "CREATE TABLE ibf_posts (
  pid int(10) NOT NULL auto_increment,
  append_edit tinyint(1) default '0',
  edit_time int(10) default NULL,
  author_id mediumint(8) NOT NULL default '0',
  author_name varchar(32) default NULL,
  use_sig tinyint(1) NOT NULL default '0',
  use_emo tinyint(1) NOT NULL default '0',
  ip_address varchar(16) NOT NULL default '',
  post_date int(10) default NULL,
  icon_id smallint(3) default NULL,
  post text,
  queued tinyint(1) default NULL,
  topic_id int(10) NOT NULL default '0',
  forum_id smallint(5) NOT NULL default '0',
  attach_id varchar(64) default NULL,
  attach_hits int(10) default NULL,
  attach_type varchar(128) default NULL,
  attach_file varchar(255) default NULL,
  post_title varchar(255) default NULL,
  new_topic tinyint(1) default '0',
  edit_name varchar(255) default NULL,
  PRIMARY KEY  (pid),
  KEY topic_id (topic_id,author_id),
  KEY author_id (author_id),
  KEY forum_id (forum_id,post_date),FULLTEXT KEY post (post)
) TYPE=MyISAM;";


$SQL[] = "CREATE TABLE ibf_reg_antispam (
  regid varchar(32) NOT NULL default '',
  regcode varchar(8) NOT NULL default '',
  ip_address varchar(32) default NULL,
  ctime int(10) default NULL,
  PRIMARY KEY  (regid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_search_results (
  id varchar(32) NOT NULL default '',
  topic_id text NOT NULL,
  search_date int(12) NOT NULL default '0',
  topic_max int(3) NOT NULL default '0',
  sort_key varchar(32) NOT NULL default 'last_post',
  sort_order varchar(4) NOT NULL default 'desc',
  member_id mediumint(10) default '0',
  ip_address varchar(64) default NULL,
  post_id text,
  post_max int(10) NOT NULL default '0',
  query_cache text
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_skin_templates (
  suid int(10) NOT NULL auto_increment,
  set_id int(10) NOT NULL default '0',
  group_name varchar(255) NOT NULL default '',
  section_content mediumtext,
  func_name varchar(255) default NULL,
  func_data text,
  updated int(10) default NULL,
  can_remove tinyint(4) default '0',
  PRIMARY KEY  (suid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_skins (
  uid int(10) NOT NULL auto_increment,
  sname varchar(100) NOT NULL default '',
  sid int(10) NOT NULL default '0',
  set_id int(5) NOT NULL default '0',
  tmpl_id int(10) NOT NULL default '0',
  macro_id int(10) NOT NULL default '1',
  css_id int(10) NOT NULL default '1',
  img_dir varchar(200) default '1',
  tbl_width varchar(250) default NULL,
  tbl_border varchar(250) default NULL,
  hidden tinyint(1) NOT NULL default '0',
  default_set tinyint(1) NOT NULL default '0',
  css_method varchar(100) default 'inline',
  PRIMARY KEY  (uid),
  KEY tmpl_id (tmpl_id),
  KEY css_id (css_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_spider_logs (
  sid int(10) NOT NULL auto_increment,
  bot varchar(255) NOT NULL default '',
  query_string text NOT NULL,
  entry_date int(10) NOT NULL default '0',
  ip_address varchar(16) NOT NULL default '',
  PRIMARY KEY  (sid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_stats (
  TOTAL_REPLIES int(10) NOT NULL default '0',
  TOTAL_TOPICS int(10) NOT NULL default '0',
  LAST_MEM_NAME varchar(32) default NULL,
  LAST_MEM_ID mediumint(8) NOT NULL default '0',
  MOST_DATE int(10) default NULL,
  MOST_COUNT int(10) default '0',
  MEM_COUNT mediumint(8) NOT NULL default '0'
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_subscriptions (
 sub_id smallint(5) NOT NULL auto_increment,
 sub_title varchar(250) NOT NULL default '',
 sub_desc text,
 sub_new_group mediumint(8) NOT NULL default 0,
 sub_length smallint(5) NOT NULL default '1',
 sub_unit varchar(2) NOT NULL default 'm',
 sub_cost decimal(10,2) NOT NULL default '0.00',
 sub_run_module varchar(250) NOT NULL default '',
 PRIMARY KEY (sub_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_subscription_extra (
 subextra_id smallint(5) NOT NULL auto_increment,
 subextra_sub_id smallint(5) NOT NULL default '0',
 subextra_method_id smallint(5) NOT NULL default '0',
 subextra_product_id varchar(250) NOT NULL default '0',
 subextra_can_upgrade tinyint(1) NOT NULL default '0',
 subextra_recurring tinyint(1) NOT NULL default '0',
 subextra_custom_1 text,
 subextra_custom_2 text,
 subextra_custom_3 text,
 subextra_custom_4 text,
 subextra_custom_5 text,
 PRIMARY KEY(subextra_id)
) TYPE=MyISAM;";


$SQL[] = "CREATE TABLE ibf_subscription_trans (
 subtrans_id int(10) NOT NULL auto_increment,
 subtrans_sub_id smallint(5) NOT NULL default '0',
 subtrans_member_id mediumint(8) NOT NULL default '0',
 subtrans_old_group smallint(5) NOT NULL default '0',
 subtrans_paid decimal(10,2) NOT NULL default '0.00',
 subtrans_cumulative decimal(10,2) NOT NULL default '0.00',
 subtrans_method varchar(20) NOT NULL default '',
 subtrans_start_date int(11) NOT NULL default '0',
 subtrans_end_date int(11) NOT NULL default '0',
 subtrans_state varchar(200) NOT NULL default '',
 subtrans_trxid varchar(200) NOT NULL default '',
 subtrans_subscrid varchar(200) NOT NULL default '',
 subtrans_currency varchar(10) NOT NULL default 'USD',
 PRIMARY KEY (subtrans_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_subscription_logs (
 sublog_id int(10) NOT NULL auto_increment,
 sublog_date int(10) NOT NULL default '',
 sublog_member_id mediumint(8) NOT NULL default '0',
 sublog_transid int(10) NOT NULL default '',
 sublog_ipaddress varchar(16) NOT NULL default '',
 sublog_data text,
 sublog_postdata text,
 PRIMARY KEY (sublog_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_subscription_methods (
 submethod_id smallint(5) NOT NULL auto_increment,
 submethod_title varchar(250) NOT NULL default '',
 submethod_name varchar(20) NOT NULL default '',
 submethod_email varchar(250) NOT NULL default '',
 submethod_sid text,
 submethod_custom_1 text,
 submethod_custom_2 text,
 submethod_custom_3 text,
 submethod_custom_4 text,
 submethod_custom_5 text,
 submethod_is_cc tinyint(1) NOT NULL default '0',
 submethod_is_auto tinyint(1) NOT NULL default '0',
 submethod_desc text,
 submethod_logo text,
 submethod_active tinyint(1) NOT NULL default '',
 submethod_use_currency varchar(10) NOT NULL default 'USD',
 PRIMARY KEY (submethod_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_subscription_currency (
 subcurrency_code varchar(10) NOT NULL,
 subcurrency_desc varchar(250) NOT NULL default '',
 subcurrency_exchange decimal(10, 8) NOT NULL,
 subcurrency_default tinyint(1) NOT NULL default '0',
 PRIMARY KEY(subcurrency_code)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_templates (
  tmid int(10) NOT NULL auto_increment,
  template mediumtext,
  name varchar(128) default NULL,
  PRIMARY KEY  (tmid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_titles (
  id smallint(5) NOT NULL auto_increment,
  posts int(10) default NULL,
  title varchar(128) default NULL,
  pips varchar(128) default NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_tmpl_names (
  skid int(10) NOT NULL auto_increment,
  skname varchar(60) NOT NULL default 'Invision Board',
  author varchar(250) default '',
  email varchar(250) default '',
  url varchar(250) default '',
  PRIMARY KEY  (skid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_topic_mmod (
  mm_id smallint(5) NOT NULL auto_increment,
  mm_title varchar(250) NOT NULL default '',
  mm_enabled tinyint(1) NOT NULL default '0',
  topic_state varchar(10) NOT NULL default 'leave',
  topic_pin varchar(10) NOT NULL default 'leave',
  topic_move smallint(5) NOT NULL default '0',
  topic_move_link tinyint(1) NOT NULL default '0',
  topic_title_st varchar(250) NOT NULL default '',
  topic_title_end varchar(250) NOT NULL default '',
  topic_reply tinyint(1) NOT NULL default '0',
  topic_reply_content text NOT NULL,
  topic_reply_postcount tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (mm_id)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_topics (
  tid int(10) NOT NULL auto_increment,
  title varchar(250) NOT NULL default '',
  description varchar(70) default NULL,
  state varchar(8) default NULL,
  posts int(10) default NULL,
  starter_id mediumint(8) NOT NULL default '0',
  start_date int(10) default NULL,
  last_poster_id mediumint(8) NOT NULL default '0',
  last_post int(10) default NULL,
  icon_id tinyint(2) default NULL,
  starter_name varchar(32) default NULL,
  last_poster_name varchar(32) default NULL,
  poll_state varchar(8) default NULL,
  last_vote int(10) default NULL,
  views int(10) default NULL,
  forum_id smallint(5) NOT NULL default '0',
  approved tinyint(1) default NULL,
  author_mode tinyint(1) default NULL,
  pinned tinyint(1) default NULL,
  moved_to varchar(64) default NULL,
  rating text,
  total_votes int(5) NOT NULL default '0',
  PRIMARY KEY  (tid),
  KEY last_post (last_post),
  KEY forum_id (forum_id,approved,pinned),FULLTEXT KEY title (title)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_tracker (
  trid mediumint(8) NOT NULL auto_increment,
  member_id mediumint(8) NOT NULL default '0',
  topic_id bigint(20) NOT NULL default '0',
  start_date int(10) default NULL,
  last_sent int(10) NOT NULL default '0',
  PRIMARY KEY  (trid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_validating (
  vid varchar(32) NOT NULL default '',
  member_id mediumint(8) NOT NULL default '0',
  real_group smallint(3) NOT NULL default '0',
  temp_group smallint(3) NOT NULL default '0',
  entry_date int(10) NOT NULL default '0',
  coppa_user tinyint(1) NOT NULL default '0',
  lost_pass tinyint(1) NOT NULL default '0',
  new_reg tinyint(1) NOT NULL default '0',
  email_chg tinyint(1) NOT NULL default '0',
  ip_address varchar(16) NOT NULL default '0',
  PRIMARY KEY  (vid),
  KEY new_reg (new_reg)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_voters (
  vid int(10) NOT NULL auto_increment,
  ip_address varchar(16) NOT NULL default '',
  vote_date int(10) NOT NULL default '0',
  tid int(10) NOT NULL default '0',
  member_id varchar(32) default NULL,
  forum_id smallint(5) NOT NULL default '0',
  PRIMARY KEY  (vid)
) TYPE=MyISAM;";

$SQL[] = "CREATE TABLE ibf_warn_logs (
  wlog_id int(10) NOT NULL auto_increment,
  wlog_mid mediumint(8) NOT NULL default '0',
  wlog_notes text NOT NULL,
  wlog_contact varchar(250) NOT NULL default 'none',
  wlog_contact_content text NOT NULL,
  wlog_date int(10) NOT NULL default '0',
  wlog_type varchar(6) NOT NULL default 'pos',
  wlog_addedby mediumint(8) NOT NULL default '0',
  PRIMARY KEY  (wlog_id)
) TYPE=MyISAM;";

$SQL[] = "INSERT INTO ibf_categories (id, position, state, name, description, image, url) VALUES (-1, NULL, NULL, '-', NULL, NULL, NULL)";
$SQL[] = "INSERT INTO ibf_categories (id, position, state, name, description, image, url) VALUES (1, 1, '1', '測試區', '', '', '')";

$SQL[] = "INSERT INTO ibf_css (cssid, css_name, css_text, css_comments, updated) VALUES (1, 'IPB Default CSS', '".get_main_css()."', NULL, ".time()." )";

$SQL[] = "INSERT INTO ibf_faq VALUES (1, '註冊及加入會員的好處', '為了能夠使用本論壇的所有功\能，管理員可能要求您<a href=index.php?&act=Reg&CODE=00>註冊</a>一個會員帳號。<a href=index.php?&act=Reg&CODE=00>註冊</a>是免費的，並只需片刻時間即可完成。\r<br>在<a href=index.php?&act=Reg&CODE=00>註冊</a>時，管理員要求您提供一個有效的Email。這是很重要的，因為管理員可能要求您通過Email確認您的<a href=index.php?&act=Reg&CODE=00>註冊</a>。如果是這種情況，<a href=index.php?&act=Reg&CODE=00>註冊</a>時您將獲得提示。\r<br>有些情況下，在您可以完全使用會員帳號之前，可能需要得到管理員的檢視核准。如果是這樣，您將在<a href=index.php?&act=Reg&CODE=00>註冊</a>時被提示。\r<br>\r<br>一旦您<a href=index.php?&act=Reg&CODE=00>註冊</a>並登入，您將能夠使用<b> <a href=index.php?s=&act=Msg&CODE=01>個人訊息</a> </b>和<b> <a href=index.php?s=&act=UserCP&CODE=00>我的控制台等功能</a> </b>。', '如何註冊及註冊的好處?');";
$SQL[] = "INSERT INTO ibf_faq VALUES (2, 'Cookies 和 cookie 的用法', '使用cookies雖然是選擇性的，但是我們建議您使用。Cookies的設置利於追蹤主題，顯示自從您最近一次訪問後哪些主題有了新的回復，並當您再次訪問時能夠自動登入。\r<br>\r<br>如果您的瀏覽器無法正常使用cookie瀏覽論壇，論壇會自動地將補充一個Session ID 在您的每個連結URL。\r<br>\r<br><b> 刪除cookies </b>\r<br>\r<br>您可以在論壇首頁(討論區首頁)底部的<b> <a href=index.php?s=&act=Login&CODE=06>刪除由論壇所設置的 cookie</a> </b>連結來刪除cookies。如果這操作沒有成功\，您可能需要手動刪除cookies。\r<br>\r<br><font color=tomato>在Windows IE瀏覽器下刪除cookie步驟如下</font>\r<br>\r<br><ul>\r<br><li> 關閉所有的Windows IE視窗\r<br><li> 點<b> 開始 </b>按鈕\r<br><li> 移動滑鼠向上到<b> 尋找 </b>，點選<b> 檔案或資料夾 </b>\r<br><li>當一個新的視窗出現時，在<b> 包含文字 </b>編輯框裡輸入您使用的論壇網址(如果這個論壇地址是http://www.invisionboard.com/forums/index.php， 您需要輸入invisionboard.com，不包括頁面地址引用)\r<br><li>在<b> 搜索 </b>框裡，輸入「C:WindowsCookies」，按下<b> 開始尋找 </b>按鈕\r<br><li> 搜尋完成後，選擇所有檔案項目(點一個檔案，接著按「CTRL+A」)，並刪除它們\r<br></ul>\r<br>\r<br><font color=tomato>在Macintosh瀏覽器裡刪除Cookies步驟如下</font>\r<br>\r<br><ul>\r<br><li>打開IE，從螢幕頂部的Macitosh選項單中點按<b> 編輯 </b>接著選擇<b> 參數選擇 </b>\r<br><li> 參數選擇面板打開時，在<b> 收到的文件 </b>部分選中<b> Cookies </b>\r<br><li> 搜尋論壇的網址URL(如果這個論壇地址是http://www.invisionboard.com/forums/index.php， 查找invisionboard.com或者www.invisionboard.com)<br><li> 選擇每一個cookie項目，並按刪除按鈕\r<br></ul>\r<br>\r<br>您的cookie現在應該被刪除了。有些時候，您可能需要重新啟動您的主機以使這些改變生效。', '使用Cookies的好處以及如何刪除論壇設定的cookies.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (3, '找回忘記的密碼', '安全性是本論壇很大的特色，到了安全及隱私，你註冊時所有密碼都經過嚴格加密。\r<br><br>這意味著我們不能夠把您的密碼用電子郵件發給您，因為我們沒有您未加密密碼記錄也無法查閱\。但是您可以藉由密碼補發取得新密碼\r<br><br>\r<br><br>請在登入頁面點擊<b> <a href=index.php?act=Reg&CODE=10>忘記密碼</a> </b>連結。\r<br><br>\r<br><br>這裡將有進一步的說明。', '如何找回忘記的密碼設定!');";
$SQL[] = "INSERT INTO ibf_faq VALUES (4, '我的控制台', '<a href=index.php?s=&act=UserCP&CODE=00>我的控制台</a>是您私人的論壇控制台。在這裡您可以改變您瀏覽論壇的外觀以及您的個人訊息。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=01>編輯個人資料</a> </b>\r<br>\r<br>\r<br>\r<br>這一部分允許\您增加或編輯您的聯絡資料，例如生日或連絡方式。所有項目都是自由填寫，可以保留空白。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=22>編輯簽名檔</a> </b>\r<br>\r<br>\r<br>\r<br>論壇<b> 簽名 </b>和電子郵件簽名很相似。這個簽名被附加到您發表的每一篇文章中，除非您在發表時取消附加簽名。您可以使用BB CODE，甚至可以使用HTML語法(如果論壇管理員允許\)。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=24>個人圖片設定</a> </b>\r<br>\r<br>\r<br>\r<br>個人圖片是當您建立主題或發表回覆時在文章中顯示在您的帳號名稱下方的一個小圖片。如果管理員允許\，您可以或者從論壇圖集中選擇一張個人照片，或者輸入線上個人圖片的 URL，亦或從您的電腦上傳一張新圖片。您也可以設定照片的寬度以確保它按比例縮放大小。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=02>電子郵件設定</a> </b>\r<br>\r<br>\r<br>\r<br><u>對其他會員隱藏我的電子郵件位址</u> 允許\您拒絕其他會員透過本論壇給您發送電子郵件。\r<br>\r<br><u>接收由論壇管理員寄出的任何消息</u> 這個選項啟用後，會將您的電子郵件位址加入管理員的郵件寄送名單，以接收任何消息。\r<br>\r<br><u>當從訂閱\的主題寄發電子郵件給我時將文章複製一份</u>，這個選項啟用後，會在訂閱\的電子郵件中寄送純文字內容文章。\r<br>\r<br><u>當我有新的私人訊息時寄發一封電子郵件通知我</u>，這個選項啟用後，當有新的私人訊息時，會以電子郵件通知您。\r<br>\r<br><u>預設啟用電子郵件通知?</u>，這個選項啟用後，將自動訂閱\任何由您所發起或回覆過的主題。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=04>論壇設定 </a> </b>\r<br>\r<br>\r<br>\r<br>在這部分，您可以設定您的時區，選擇不看看其他會員簽名、個人照片和文章中的圖片。\r<br>\r<br>您可以選擇接到新私人訊息時要彈出提示視窗，還能自動開啟有使用快速回覆討論區的快速回覆文字輸入框。\r<br>\r<br>並可以在此設定討論區單頁顯示的文章數\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=06>面板及語言</a> </b>\r<br>\r<br>\r<br>\r<br>如果管理員允許，您可以選擇一種論壇面板風格和語言。這將影響到本論壇顯示畫面，所以您可以預覽論壇模版。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=08>變更電子郵件位址</a> </b>\r<br>\r<br>\r<br>\r<br>您可以隨時更改註冊的電子郵件地址。某些情況下，更改電子信箱後，你將需要重新確認您的帳號。如果是這樣，在電子信箱的變動的請求被處理前您會得到提示。\r<br>\r<br>\r<br>\r<br><b> <a href=index.php?s=&act=UserCP&CODE=28>變更密碼</a> </b>\r<br>\r<br>\r<br>\r<br>您可以在這一部分修改您的個人密碼。請注意您需要知道您現在使用密碼才能變更您的密碼。', '編輯個人資料，個人相片、簽名、論壇設定、語言、面版選擇.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (5, '新文章以EMAIL通知', '本論壇可以在某主題有新文章回覆時以EMAIL通知您。許\多用戶發現這一功\能非常實用，您不必隨時瀏覽論壇來查閱\是否有新回覆即可獲知指定主題的新回覆通知。\r<br><br>\r<br><br>使用此功\能，只需在論壇任一主題的頂部或者底部點選<b> 追蹤主題 </b>。您點按這個連結後，此一主題將被您訂閱\追蹤。您可以在<b> <a href=index.php?s=&act=UserCP&CODE=00>我的控制台</a> </b>的<b> <a href=index.php?s=&act=UserCP&CODE=26>檢示主題</a> </b>部分管理您訂閱\追蹤的主題。\r<br><br>\r<br><br>請注意，為了避免給您發送大量無用的電子郵件，您每天只會收到一次有新回復的EMAIL通知。', '當主題有新的回覆時怎樣藉由EMAIL通知.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (6, '你的私人訊息', '您的個人訊息作用很像EMAIL的使用，您能發送和接收個人訊息並把訊息儲存在收件夾中。\r<br><br>\r<br><br><b> 編寫新訊息 </b>\r<br><br>\r<br><br>允許\您發送個人訊息給其他會員。如果在您的好友名單裡有記錄，您可以從通訊錄中選擇收件人，或者您可以在相關表單輸入框中輸入一個收件人會員名稱。如果您點選論壇上的<b> <a href=index.php?s=&act=Msg&CODE=01>私訊</a> </b>按鈕(在會員列表或文章頁面中)，系統將會自動填寫好收件人名稱。\r<br><br>如果管理員允許\，在您的個人訊息裡可以使用BB CODE和使用HTML語法。如果您勾選<b> 將此訊息複製一份到我的寄件夾 </b>，私訊的副本將被保存以備您日後參考。如果您勾選<b> 追蹤訊息? </b>，當您的訊息被收件人閱\讀時，您將收到一個通知訊息。\r<br><br>\r<br><br><b> 好友及封鎖名單 </b>\r<br><br>\r<br><br>在這部分您可以新增通訊錄好友及封鎖名單，列為封鎖名單帳戶，將無法傳送私訊給您。\r<br><br>當您發送新的個人訊息時，通訊錄中的會員名稱將顯示在一個下拉表框中，使您能夠快速地選擇一個會員名稱來發送訊息。\r<br><br>\r<br><br><b> 編輯儲存資料夾 </b>\r<br><br>\r<br><br>您可以給一個資料夾改名或者增加、刪除它來存儲新訊息，您可以依照自己的偏好自行分類存放您的個人訊息。但您不能刪除<b> 收件夾 </b>和<b> 寄件夾 </b>。\r<br><br>\r<br><br><b> 封存訊息 </b>\r<br><br>\r<br><br>如果你的收件夾已滿，你將不能收到新訊息，此時你可以把舊訊息封存壓縮。訊息將會被編輯成單個 HTML 頁面或者 Microsoft－Excel 文件格式。並且封存後的文件或頁面會直接發送到你註冊時填寫的EMAIL以供你備份或使用。\r<br><br>\r<br><br><b> 未寄訊息草稿 </b>\r<br><br>\r<br><br>這個允許\你備份你選擇保存的短消息以便以後發出。\r<br><br>\r<br><br><b> 訊息追蹤 </b>\r<br><br>\r<br><br>這會顯示你已經選擇追蹤的所有訊息。它也將顯示收件人閱\讀過的短消息的具體細節，同時可以在此刪除任何你已經發送或未讀訊息。','怎樣發送個人訊息、編輯訊息資料夾和封存訊息.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (7, '聯繫管理團隊與檢舉文章', '<b> 聯繫管理團隊 </b>\r<br>\r<br>如果你需要聯繫管理者或想查看管理團隊名單時，你可以點按論壇首頁(討論區首頁)或者<b> 小幫手 </b>中的<b> <a href=index.php?s=&act=Stats&CODE=leaders>管理團隊</a> </b>連結.\r<br>\r<br>這將會已列表方式顯示出管理團隊名單，共分為：管理員(具有進入ACP後台權限者)，總版主(他們可以管理所有的討論區)和討論區版主.\r<br>\r<br>如果你想聯繫的主題關於您的個人帳號，請聯繫管理員。如果你想聯繫關於文章或主題的內容，可以聯繫總版主或討論區版主。\r<br>\r<br><b> 檢舉文章 </b>\r<br>\r<br>如果管理員開啟了這個功\能，你將在文章中看到<b> 檢舉 </b>按鈕，位於<b> 引用 </b>按鈕旁邊，這個功\能允許\你向論壇版主或管理員檢舉文章。 當你認為版主應該知道某篇文章內容時你就可以利用這個功\能。 但是，<b> 不要用這個功\能和版主聊天 </b>. 你可以用Email或者個人訊息來討論私事。','在哪裡查看管理團隊名單.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (8, '查看會員檔案資料', '您可以隨時透過點選會員帳號連接來查看此會員個人資料。\r<br><br>\r<br><br>將會顯示包含他們的聯絡資料(如果他們已經輸入)和<b> 發表數統計 </b>等個人檔案。\r<br><br>\r<br><br>你也可以點按他們文章下面的<b> 簡易個人資料 </b>按鈕，將顯示一個包含他們聯繫訊息和照片的迷你卡片。','如何查看會員檔案資料?');";
$SQL[] = "INSERT INTO ibf_faq VALUES (9, '查看今天活動主題', '您可以點選論壇首頁(您訪問本論壇時看到的第一個頁面)<b> <a href=index.php?s=&act=Search&CODE=getactive>今天活躍主題</a> </b>查看哪些主題今日有了新的回復。\r<br>\r<br>\r<br>\r<br>您可以設置您自己的日期範圍，選擇查看在指定的日期範圍內所有有新回復的主題。','怎樣查看今天有新回覆的所有主題.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (10, '搜尋主題和文章', '<b> <a href=index.php?s=&act=Search&f=>搜尋</a> </b>功\能允許\您快速尋找包含您輸入的關鍵詞的主題和文章。\r<br><br>\r<br><br>有兩種搜尋模式，簡單搜尋模式和進階搜尋模式。你也可以用<b> 更多選項 </b>和<b> 簡單模式 </b>按鈕來選擇。\r<br>\r<br><b> 簡單模式 </b>\r<br>\r<br>你需要做的就是在搜尋框裏輸入一個關鍵字，然後選擇一個要搜尋的討論區(選擇多個討論區可以按下 Ctrl 或者 Shift/Apple 鍵進行)。然後選擇排序方式開始搜尋。\r<br>\r<br><b> 進階模式 </b>\r<br>\r<br>進階搜尋允許\你從你自定義的搜尋範圍裏更精確的搜尋文章。 除了用關鍵字來搜尋以外，你也可以用藉由會員名稱或者兩者的組合來搜尋。 你也可以藉由選擇日期範圍來縮小你的搜尋範圍，並且有多種時間範圍可用。 有兩種顯示搜尋結果的類型，你可以選擇搜尋結果顯示文章的完整內容或者只顯示文章的主題。\r<br>\r<br>如果管理員設置了搜尋間隔時間，你可能在兩次搜尋之間等待一小段時間，這是為了防止濫用搜尋功\能。\r<br>\r<br>在每個討論區下面也有搜尋框可用，允許\你快速地搜尋特定論壇的所有主題。','如何使用搜尋功\能.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (11, '登入和登出','如果您已選擇不保存您登錄的cookies，或者您正在其它電腦上訪問本論壇，您需要登入論壇來瀏覽您的會員檔案、用您的註冊帳號發表文章。\r<br><br>\r<br><br>您登入時，可以選擇保存cookies，當您重新訪問論壇時將記住帳號自動登入。為了安全起見，請不要在公用電腦上選擇保存cookies。\r<br><br>\r<br><br>您也可以選擇<b> 隱身登錄 </b>，您的名字將不會被顯示在在線用戶列表中。\r<br><br>\r<br><br>點選<b> <a href=index.php?s=&act=Login&CODE=03>登出</a> </b>連結即可退出論壇，當您您登錄後此一連接就會顯示出來。如果您發現您不能登出，您可能需要手工刪除cookies。詳見<b> Cookies 和 cookie 的用法 </b>幫助檔案以獲得更多資料。','怎樣登入和登出本論壇，以及怎樣保持隱身和不顯示在線上用戶列表.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (13, '小幫手','<b> 小幫手 </b>位於討論區頁面上方，最上方的部分將告訴你自從你上次訪問論壇後多少新文章。同樣在下面這個數字說明有多少你曾經回復的主題在這段時間有了新的回復。  \r<br>\r<br>中間部分你可以點按<b> 顯示 </b>連結查看文章。\r<br>\r<br>下面5個部分是非常實用的功\能:\r<br>\r<br><li><b> <a href=index.php?s=&act=Stats&CODE=leaders>管理團隊</a> </b>連結顯示論壇所有的管理員和版主名單。\r<br><li><b> <a href=index.php?s=&act=Search&CODE=getactive>今日活動主題</a> </b>顯示在最近24小時被發表的所有文章。\r<br><li><b> <a href=index.php?s=&act=Stats>今天發表前十名</a> </b>顯示今天發文數最多的10位會員，並且顯示他們今天發表的文章數量和它在論壇今天總文章數中所佔的比例。\r<br><li><b> <a href=index.php?s=&act=Members&max_results=10&sort_key=posts&sort_order=desc>總發表數前十名</a> </b>顯示自論壇成立以來發文數最多的10位會員。\r<br><li><b> 我最新的十篇文章 </b>這將連結到你在論壇裏發表的最新的文章所在.為了節省空間，這裡都是用的簡寫，如果你想瀏覽詳情文章內容請看相關的連接。\r<br>\r<br>搜尋文章允許\你搜尋論壇裏包含關鍵字的所有文章，這並不是正規的搜尋功\能因為它還不夠全面。\r<br>\r<br>搜尋說明能幫助您搜尋論壇所有說明檔案，讓您輕鬆的找到相關的說明文件。','小幫手使用功\能介紹.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (12, '發表文章','共有三種不同的方式可以讓您發表文章，在瀏覽討論區或主題上面的建立主題按鈕，允許\您在這個討論區建立新的主題。如果同時存在發起投票按鈕，您也可以在此討論區發起投票主題。當您觀看某一主題的同時，將有一個發表回覆的按鈕，允許\您對此主題回覆文章。\r<br>\r<br>\r<br><b> 建立主題或發表回覆 </b>\r<br>\r<br>\r<br>\r<br>當您再寫文章的同時，您可以使用BB CODE讓您的文章產生更多變化，想知道更多關於BB CODE的內容可以點按表情圖下方的<b> BB Code 說明 </b>連結，\r<br>\r<br>\r<br>在發表文章頁面左邊有可點選表情圖示 - 你可以透過點選將這些表情圖加入文章之中，(表情圖又被稱作 \'smilies\')，\r<br>\r<br>\r<br>\r<br>再建立主題與回覆文章時還有三種發表選項，\"啟用 表情圖示?\" 如果您未勾選，所有的表情圖文字代碼將不會轉換為表情圖。\"啟用 簽名檔? \"讓您選擇是否在文章中加入個人簽名，\"啟用 電子郵件回覆通知?\"勾選這個項目將會追蹤這個主題，詳細的相關內容可以參考<b> 新文章以EMAIL通知 </b>說明檔，\r<br>\r<br>\r<br>\r<br>你也可以在發表的主題或文章中選擇文章圖示。這個圖示將會顯示在討論區主題列表的主題名稱之前。 或將顯示於回覆文章的發表於連結之前。\r<br>\r<br>\r<br>\r<br>如果管理員有開放上傳功\能，您將可以再發表文章的同時上傳一個附件檔案， 點選<b> 瀏覽 </b>按鈕從您的電腦中選擇要上傳的檔案即可。 如果你上傳的檔案為圖片類型，它也可以作為文章中的一部分顯示出來，其他檔案類型則以連結表示。\r<br>\r<br>\r<br><b> 投票設定 </b>\r<br>\r<br>\r<br>\r<br>如果您點按發起投票按鈕，在發表文章畫面中將會新增投票議題與投票選擇兩個欄位，投票議題顧名思義就是指投票項目的主題名稱。投票選擇則是用來填寫投票的票選項目。請每行填寫一個票選項目. 可票選的項目數量由管理員設定，實際的允許\項目數字將會顯示在左邊。\r<br>\r<br>\r<br><b> 引用文章 </b>\r<br>\r<br>\r<br>\r<br>在每篇文章的上方您可以看到<b> 引用 </b>按鈕，點選這個按鈕將會在您發表回覆時新增引用的原始文章表框，在此表框將會保留您所引用的文章內容，此表框位於文字輸入表框之下，同時您可以在此編輯選擇您想引用的文章內容，\r<br>\r<br>\r<br><b> 編輯文章 </b>\r<br>\r<br>\r<br>\r<br>在您所發表的文章的上方您可以看到<b> 編輯 </b>按鈕，您可藉由此功\能編輯你已經發表過的文章內容。\r<br>\r<br>\r<br>當您再編輯文章時會新增一個<b> 加入 Edit by 在文章末? </b>選項，如果您勾選了這個選項，編輯後的文章下方會出現編輯的時間。如果沒有這個選項，您的文章在編輯後將會自動增加編輯時間，\r<br>\r<br>\r<br>如果在您自己的文章中沒有發現編輯按鈕，可能是管理員禁止您使用編輯設定或文章已超過編輯允許\的時間限制，\r<br>\r<br>\r<br>\r<br><b> 快速回覆 </b>\r<br>\r<br>\r<br>\r<br>假若管理員開啟快速回覆功\能，在每個主題最下方會有一個快速回覆按鈕。點選此按鈕可以打開快速回覆文字輸入表框，這可以減少您一些寶貴的時間。快速回覆文字輸入表框預設是隱藏的，您必須按下快速回覆按鈕後才會顯示，但您可以藉由<a href=index.php?s=&act=UserCP&CODE=00>我的控制台</a>中的<b> <a href=index.php?s=&act=UserCP&CODE=04>論壇設定</a></b>. 將<b> 若有快速回覆可用，自動開啟? </b>選項開啟。 ','如何在論壇發表文章.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (14, '會員列表','您可以藉由論壇頁面上方的<b> <a href=index.php?s=&act=Members>會員</a> </b>連結來取得論壇會員列表，一般情形下可以在此找到所有已註冊的會員名單。\r<br>\r<br>\r<br>您還能藉由不同的搜尋方式尋找指定會員，在會員列表下方的下拉表框中共有<b> 搜尋全部 </b>，<b> 名稱開頭 </b>，<b> 名稱包含 </b>三種搜尋方式，選擇其中一種方式，然後在旁邊的輸入框中填寫會員全部或部分的帳號名稱，然後按下<b> GO </b>進行搜尋。\r<br>\r<br>\r<br>此外，在會員列表下方還有多種不同的排序方式可以使用。\r<br>\r<br>\r<br>假若會員再個人資料中含有個人照片，將會有一張照相機的圖示顯示在會員名稱之旁，點按圖示將可以瀏覽其個人照片。','按照不同的排序方式搜尋會員帳號.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (15, '主題選項','在每篇文章的下方，有一個<b> 主題選項 </b>按鈕. 點按後將會展開所有主題選項，\r<br>\r<br>\r<br>\r<br>在這個選項框中，您可以使用下列幾種選項: \r<br>\r<br>\r<br><li>追蹤主題 - 這個選項可以讓您再主題有新回覆的同時收到Email通知，更多的詳細說明可以參考<b> 新文章以EMAIL通知 </b>說明檔。\r<br>\r<br><li>訂閱\這個討論區  - 這個選項可以讓您再此討論區有任何新主題時收到Email通知，更多的詳細說明可以參考<b> 新文章以EMAIL通知 </b>說明檔，\r<br>\r<br><li>下載/列印 本主題  - 以不同的格式下載本主題，或檢視友善列印版本，<b> 友善列印版本 </b>這會將主題以簡單、友善列印格式的頁面顯示。\r<br><b> 下載 HTML 版本 </b>可以讓您下載該主題的 HTML 版本到硬碟中，供您離線查閱\。\r<br><b> 下載微軟 Word 版本 </b>可以讓您下載該主題可編輯的 Word 格式版本，供您離線查閱\。','主題選項使用指南.');";
$SQL[] = "INSERT INTO ibf_faq VALUES (16, '日曆','本論壇的的特色就是擁有日曆功\能，您可以藉由論壇上方的日曆連結來查看日曆。\r<br>\r<br>您也可以把自己的個人事件記錄在日曆之中 - 這僅有您自己才看的到。 加入新的事件時，您可以點選<b> 新增事件 </b>連結來進入新增事件畫面，您可以再此新增三種事件日期類型:\r<br>\r<br><li>事件發生/開始，您只能選擇事件顯示的日期。\r<br>\r<br><li>限期事件 - 您必須選擇事件結束日期- 適用在連續相同的事件，除樂選擇事件結束日期之外。 還能設定背景與文字顏色突顯事件內容，在事件發生期間若同時存在多項事件將會以隨機方式顯示。\r<br>\r<br><li>復發事件 - 雖然只能顯示單天事件內容，但您能藉由設定始知按照週期循環顯示，週期循環設定共有年，月，週三種方式。\r<br>\r<br>\r<br>如果管理員有允許\權限，您也可以新增一個公開事件，這將會是任何人都能看的見的。\r<br>\r<br>此外，要是管理員允許\在日曆頁面顯示生日，日曆中將會顯示會員生日的訊息連結。若您希望自己生日能顯示出來，請利用<a href=index.php?s=&act=UserCP&CODE=00>我的控制台</a>-<a href=index.php?s=&act=UserCP&CODE=01>編輯個人資料</a>--設定您的生日。','日曆功\能詳細說明.');";

$SQL[] = "INSERT INTO ibf_forums (id, topics, posts, last_post, last_poster_id, last_poster_name, name, description, position, use_ibc, use_html, status, start_perms, reply_perms, read_perms, password, category, last_title, last_id, sort_key, sort_order, prune, show_rules, upload_perms, preview_posts, allow_poll, allow_pollbump, inc_postcount, skin_id, parent_id, subwrap, sub_can_post) VALUES (1, 1, 1, <%time%>, 1, 'Koudanshi 中文支援團隊', '測試區', '你可以隨時移除此測試討論區', 1, 1, 0, '1', '*', '*', '*', '', 1, '歡迎', 1, 'last_post', 'Z-A', 30, 0, '', 0, 0, 1, 1, NULL, -1, 0, 1)";

$SQL[] = "INSERT INTO ibf_groups (g_id, g_view_board, g_mem_info, g_other_topics, g_use_search, g_email_friend, g_invite_friend, g_edit_profile, g_post_new_topics, g_reply_own_topics, g_reply_other_topics, g_edit_posts, g_delete_own_posts, g_open_close_posts, g_delete_own_topics, g_post_polls, g_vote_polls, g_use_pm, g_is_supmod, g_access_cp, g_title, g_can_remove, g_append_edit, g_access_offline, g_avoid_q, g_avoid_flood, g_icon, g_attach_max, g_avatar_upload, g_calendar_post, prefix, suffix, g_max_messages, g_max_mass_pm, g_search_flood, g_edit_cutoff, g_promotion, g_hide_from_list, g_post_closed, g_perm_id) VALUES (4, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, '站務管理', 0, 1, 1, 1, 1, '', 50000, 1, 1, '', '', 50, 6, 0, 5, '-1&-1', 0, 1, 4)";
$SQL[] = "INSERT INTO ibf_groups (g_id, g_view_board, g_mem_info, g_other_topics, g_use_search, g_email_friend, g_invite_friend, g_edit_profile, g_post_new_topics, g_reply_own_topics, g_reply_other_topics, g_edit_posts, g_delete_own_posts, g_open_close_posts, g_delete_own_topics, g_post_polls, g_vote_polls, g_use_pm, g_is_supmod, g_access_cp, g_title, g_can_remove, g_append_edit, g_access_offline, g_avoid_q, g_avoid_flood, g_icon, g_attach_max, g_avatar_upload, g_calendar_post, prefix, suffix, g_max_messages, g_max_mass_pm, g_search_flood, g_edit_cutoff, g_promotion, g_hide_from_list, g_perm_id) VALUES (2, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, '訪客', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, NULL, NULL, 50, 0, 20, 0, '-1&-1', 0, 2)";
$SQL[] = "INSERT INTO ibf_groups (g_id, g_view_board, g_mem_info, g_other_topics, g_use_search, g_email_friend, g_invite_friend, g_edit_profile, g_post_new_topics, g_reply_own_topics, g_reply_other_topics, g_edit_posts, g_delete_own_posts, g_open_close_posts, g_delete_own_topics, g_post_polls, g_vote_polls, g_use_pm, g_is_supmod, g_access_cp, g_title, g_can_remove, g_append_edit, g_access_offline, g_avoid_q, g_avoid_flood, g_icon, g_attach_max, g_avatar_upload, g_calendar_post, prefix, suffix, g_max_messages, g_max_mass_pm, g_search_flood, g_edit_cutoff, g_promotion, g_hide_from_list, g_perm_id) VALUES (3, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, '註冊會員', 0, 1, 0, 0, 0, '', 0, 1, 0, '', '', 50, 0, 20, 0, '-1&-1', 0, 3)";
$SQL[] = "INSERT INTO ibf_groups (g_id, g_view_board, g_mem_info, g_other_topics, g_use_search, g_email_friend, g_invite_friend, g_edit_profile, g_post_new_topics, g_reply_own_topics, g_reply_other_topics, g_edit_posts, g_delete_own_posts, g_open_close_posts, g_delete_own_topics, g_post_polls, g_vote_polls, g_use_pm, g_is_supmod, g_access_cp, g_title, g_can_remove, g_append_edit, g_access_offline, g_avoid_q, g_avoid_flood, g_icon, g_attach_max, g_avatar_upload, g_calendar_post, prefix, suffix, g_max_messages, g_max_mass_pm, g_search_flood, g_edit_cutoff, g_promotion, g_hide_from_list, g_perm_id) VALUES (1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '待審會員', 0, 1, 0, 0, 0, NULL, 0, 0, 0, NULL, NULL, 50, 0, 20, 0, '-1&-1', 0, 1)";
$SQL[] = "INSERT INTO ibf_groups (g_id, g_view_board, g_mem_info, g_other_topics, g_use_search, g_email_friend, g_invite_friend, g_edit_profile, g_post_new_topics, g_reply_own_topics, g_reply_other_topics, g_edit_posts, g_delete_own_posts, g_open_close_posts, g_delete_own_topics, g_post_polls, g_vote_polls, g_use_pm, g_is_supmod, g_access_cp, g_title, g_can_remove, g_append_edit, g_access_offline, g_avoid_q, g_avoid_flood, g_icon, g_attach_max, g_avatar_upload, g_calendar_post, prefix, suffix, g_max_messages, g_max_mass_pm, g_search_flood, g_edit_cutoff, g_promotion, g_hide_from_list, g_perm_id) VALUES (5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '封鎖群組', 0, 0, 0, 0, 0, NULL, NULL, 0, 0, NULL, NULL, 50, 0, 20, 0, '-1&-1', 1, 5)";

$SQL[] = "INSERT INTO ibf_forum_perms SET perm_name='待審會員權限遮蔽', perm_id=1";
$SQL[] = "INSERT INTO ibf_forum_perms SET perm_name='註冊會員權限遮蔽', perm_id=3";
$SQL[] = "INSERT INTO ibf_forum_perms SET perm_name='訪客權限遮蔽', perm_id=2";
$SQL[] = "INSERT INTO ibf_forum_perms SET perm_name='站務管理權限遮蔽', perm_id=4";
$SQL[] = "INSERT INTO ibf_forum_perms SET perm_name='封鎖群組權限遮蔽', perm_id=5";


$SQL[] = "INSERT INTO ibf_languages (lid, ldir, lname, lauthor, lemail) VALUES (1, 'tw', '正體中文', 'Invision Power Board', 'languages@invisionboard.com')";

$SQL[] = "INSERT INTO ibf_macro VALUES (1, 'A_LOCKED_B', '<img src=\'style_images/<#IMG_DIR#>/t_closed.gif\' border=\'0\'  alt=\'關閉主題\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (2, 'A_MOVED_B', '<img src=\'style_images/<#IMG_DIR#>/t_moved.gif\' border=\'0\'  alt=\'移動主題\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (3, 'A_POLLONLY_B', '<img src=\'style_images/<#IMG_DIR#>/t_closed.gif\' border=\'0\'  alt=\'只准投票\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (4, 'A_POST', '<img src=\'style_images/<#IMG_DIR#>/t_new.gif\' border=\'0\'  alt=\'建立主題\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (5, 'A_REPLY', '<img src=\'style_images/<#IMG_DIR#>/t_reply.gif\' border=\'0\'  alt=\'發表回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (6, 'A_POLL', '<img src=\'style_images/<#IMG_DIR#>/t_poll.gif\' border=\'0\'  alt=\'發起投票\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (7, 'A_STAR', '<img src=\'style_images/<#IMG_DIR#>/pip.gif\' border=\'0\'  alt=\'*\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (8, 'B_HOT', '<img src=\'style_images/<#IMG_DIR#>/f_hot.gif\' border=\'0\'  alt=\'熱門主題 (有新回覆)\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (9, 'B_HOT_NN', '<img src=\'style_images/<#IMG_DIR#>/f_hot_no.gif\' border=\'0\'  alt=\'熱門主題 (無新回覆)\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (10, 'B_LOCKED', '<img src=\'style_images/<#IMG_DIR#>/f_closed.gif\' border=\'0\'  alt=\'鎖住的主題\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (11, 'B_MOVED', '<img src=\'style_images/<#IMG_DIR#>/f_moved.gif\' border=\'0\'  alt=\'移走的主題\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (12, 'B_NEW', '<img src=\'style_images/<#IMG_DIR#>/f_norm.gif\' border=\'0\'  alt=\'有新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (13, 'B_NORM', '<img src=\'style_images/<#IMG_DIR#>/f_norm_no.gif\' border=\'0\'  alt=\'無新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (14, 'B_PIN', '<img src=\'style_images/<#IMG_DIR#>/f_pinned.gif\' border=\'0\'  alt=\'置頂主題\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (15, 'B_POLL', '<img src=\'style_images/<#IMG_DIR#>/f_poll.gif\' border=\'0\'  alt=\'有新選票\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (16, 'B_POLL_NN', '<img src=\'style_images/<#IMG_DIR#>/f_poll_no.gif\' border=\'0\'  alt=\'無新選票\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (17, 'B_HOT_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_hot_dot.gif\' border=\'0\' alt=\'有新回覆\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (18, 'B_NEW_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_norm_dot.gif\' border=\'0\' alt=\'無新回覆\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (19, 'B_HOT_NN_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_hot_no_dot.gif\' border=\'0\' alt=\'無新回覆*\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (20, 'B_NORM_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_norm_no_dot.gif\' border=\'0\' alt=\'無新回覆*\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (21, 'B_POLL_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_poll_dot.gif\' border=\'0\' alt=\'有新投票*\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (22, 'B_POLL_NN_DOT', '<img src=\'style_images/<#IMG_DIR#>/f_poll_no_dot.gif\' border=\'0\' alt=\'無新投票*\'>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (23, 'C_LOCKED', '<img src=\'style_images/<#IMG_DIR#>/bf_readonly.gif\' border=\'0\'  alt=\'唯讀討論區\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (24, 'C_OFF', '<img src=\'style_images/<#IMG_DIR#>/bf_nonew.gif\' border=\'0\'  alt=\'無新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (25, 'C_OFF_CAT', '<img src=\'style_images/<#IMG_DIR#>/bc_nonew.gif\' border=\'0\'  alt=\'無新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (26, 'C_OFF_RES', '<img src=\'style_images/<#IMG_DIR#>/br_nonew.gif\' border=\'0\'  alt=\'無新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (27, 'C_ON', '<img src=\'style_images/<#IMG_DIR#>/bf_new.gif\' border=\'0\'  alt=\'有新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (28, 'C_ON_CAT', '<img src=\'style_images/<#IMG_DIR#>/bc_new.gif\' border=\'0\'  alt=\'有新回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (29, 'C_ON_RES', '<img src=\'style_images/<#IMG_DIR#>/br_new.gif\' border=\'0\'  alt=\'有新回覆\'  />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (30, 'F_ACTIVE', '<img src=\'style_images/<#IMG_DIR#>/user.gif\' border=\'0\'  alt=\'活動的使用者\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (31, 'F_NAV_SEP', '&nbsp;-&gt;&nbsp;', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (32, 'F_NAV', '<img src=\'style_images/<#IMG_DIR#>/nav.gif\' border=\'0\'  alt=\'&gt;\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (33, 'F_STATS', '<img src=\'style_images/<#IMG_DIR#>/stats.gif\' border=\'0\'  alt=\'論壇狀態\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (34, 'NO_PHOTO', '<img src=\'style_images/<#IMG_DIR#>/nophoto.gif\' border=\'0\'  alt=\'無個人照片\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (35, 'CAMERA', '<img src=\'style_images/<#IMG_DIR#>/camera.gif\' border=\'0\'  alt=\'有個人照片\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (36, 'M_READ', '<img src=\'style_images/<#IMG_DIR#>/f_norm_no.gif\' border=\'0\'  alt=\'已讀簡訊\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (37, 'M_UNREAD', '<img src=\'style_images/<#IMG_DIR#>/f_norm.gif\' border=\'0\'  alt=\'未讀簡訊\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (38, 'P_AOL', '<img src=\'style_images/<#IMG_DIR#>/p_aim.gif\' border=\'0\'  alt=\'AIM帳號\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (39, 'P_DELETE', '<img src=\'style_images/<#IMG_DIR#>/p_delete.gif\' border=\'0\'  alt=\'刪除文章\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (40, 'P_EDIT', '<img src=\'style_images/<#IMG_DIR#>/p_edit.gif\' border=\'0\'  alt=\'編輯文章\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (41, 'P_EMAIL', '<img src=\'style_images/<#IMG_DIR#>/p_email.gif\' border=\'0\'  alt=\'Email\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (42, 'P_ICQ', '<img src=\'style_images/<#IMG_DIR#>/p_icq.gif\' border=\'0\'  alt=\'ICQ號碼\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (43, 'P_MSG', '<img src=\'style_images/<#IMG_DIR#>/p_pm.gif\' border=\'0\'  alt=\'PM\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (44, 'P_QUOTE', '<img src=\'style_images/<#IMG_DIR#>/p_quote.gif\' border=\'0\'  alt=\'引言回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (45, 'P_WEBSITE', '<img src=\'style_images/<#IMG_DIR#>/p_www.gif\' border=\'0\'  alt=\'個人網站\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (46, 'P_YIM', '<img src=\'style_images/<#IMG_DIR#>/p_yim.gif\' border=\'0\' alt=\'Yahoo帳號\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (47, 'P_REPORT', '<img src=\'style_images/<#IMG_DIR#>/p_report.gif\' border=\'0\'  alt=\'檢舉文章\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (48, 'P_MSN', '<img src=\'style_images/<#IMG_DIR#>/p_msn.gif\' border=\'0\' alt=\'MSN帳號\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (49, 'CAT_IMG', '<img src=\'style_images/<#IMG_DIR#>/nav_m.gif\' border=\'0\'  alt=\'&gt;\' width=\'8\' height=\'8\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (50, 'NEW_POST', '<img src=\'style_images/<#IMG_DIR#>/newpost.gif\' border=\'0\'  alt=\'前往第一篇未讀文章\' title=\'Goto last unread\' hspace=2>', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (51, 'LAST_POST', '<img src=\'style_images/<#IMG_DIR#>/lastpost.gif\' border=\'0\'  alt=\'最後發表\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (52, 'BR_REDIRECT', '<img src=\'style_images/<#IMG_DIR#>/br_redirect.gif\' border=\'0\'  alt=\'改變位址\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (53, 'INTEGRITY_MSGR', '<img src=\'style_images/<#IMG_DIR#>/p_im.gif\' border=\'0\'  alt=\'IM傳訊\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (54, 'ADDRESS_CARD', '<img src=\'style_images/<#IMG_DIR#>/addresscard.gif\' border=\'0\'  alt=\'簡易個人資料\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (55, 'T_QREPLY', '<img src=\'style_images/<#IMG_DIR#>/t_qr.gif\' border=\'0\'  alt=\'快速回覆\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (56, 'T_OPTS', '<img src=\'style_images/<#IMG_DIR#>/t_options.gif\' border=\'0\'  alt=\'主題選項\' />', 1, 1);";
$SQL[] = "INSERT INTO ibf_macro VALUES (57, 'CAL_NEWEVENT', '<img src=\'style_images/<#IMG_DIR#>/cal_newevent.gif\' border=\'0\'  alt=\'新增事件\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (58, 'F_RULES', '<img src=\'style_images/<#IMG_DIR#>/forum_rules.gif\' border=\'0\'  alt=\'討論區規則\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (59, 'WARN_0', '<img src=\'style_images/<#IMG_DIR#>/warn0.gif\' border=\'0\'  alt=\'-----\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (60, 'WARN_1', '<img src=\'style_images/<#IMG_DIR#>/warn1.gif\' border=\'0\'  alt=\'X----\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (61, 'WARN_2', '<img src=\'style_images/<#IMG_DIR#>/warn2.gif\' border=\'0\'  alt=\'XX---\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (62, 'WARN_3', '<img src=\'style_images/<#IMG_DIR#>/warn3.gif\' border=\'0\'  alt=\'XXX--\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (63, 'WARN_4', '<img src=\'style_images/<#IMG_DIR#>/warn4.gif\' border=\'0\'  alt=\'XXXX-\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (64, 'WARN_5', '<img src=\'style_images/<#IMG_DIR#>/warn5.gif\' border=\'0\'  alt=\'XXXXX\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (65, 'WARN_ADD', '<img src=\'style_images/<#IMG_DIR#>/warn_add.gif\' border=\'0\'  alt=\'+\' />', 1, 1)";
$SQL[] = "INSERT INTO ibf_macro VALUES (66, 'WARN_MINUS', '<img src=\'style_images/<#IMG_DIR#>/warn_minus.gif\' border=\'0\'  alt=\'-\' />', 1, 1)";


$SQL[] = "INSERT INTO ibf_macro_name (set_id, set_name) VALUES (1, 'IPB 預設圖樣')";

$SQL[] = "INSERT INTO ibf_members (uname,mgroup, email, last_visit, last_activity ) VALUES ('訪客', 2, 'test@localhost.com', 1052787402, 1052787402);";

//Update uid to 0 after doing our stuff -- KOudanshi
$SQL[] = "UPDATE ibf_members SET uid=0 WHERE uname='訪客'";
//

$SQL[] = "INSERT INTO ibf_posts (append_edit, edit_time, pid, author_id, author_name, use_sig, use_emo, ip_address, post_date, icon_id, post, queued, topic_id, forum_id, attach_id, attach_hits, attach_type, attach_file, post_title, new_topic, edit_name) VALUES (0, NULL, 1, 1, 'Koudanshi 中文支援團隊', '0', '1', '127.0.0.1', <%time%>, 0, '歡迎使用 IPBM v1.4 討論區模組!<br>這是一個測試訊息用來確認您是已否安裝成功.<br>您現在就可以移除此訊息, 主題,討論區及討論類別並祝您使用愉快.', 0, 1, 1, '', 0, '', '', NULL, 1, NULL)";


$SQL[] = "INSERT INTO ibf_skins (uid, sname, sid, set_id, tmpl_id, macro_id, css_id, img_dir, tbl_width, tbl_border, hidden, default_set) VALUES (1, 'Invision Power Board', 0, 1, 1, 1, 1, '1', '95%', '#999999', 0, 1)";

$SQL[] = "INSERT INTO ibf_stats (TOTAL_REPLIES, TOTAL_TOPICS, LAST_MEM_NAME, LAST_MEM_ID, MOST_DATE, MOST_COUNT, MEM_COUNT) VALUES (0, 1, '', '1', <%time%>, 1, 1)";

$SQL[] = "insert into ibf_subscription_currency SET subcurrency_code='USD', subcurrency_desc='United States Dollars', subcurrency_exchange='1.00', subcurrency_default=1;";
$SQL[] = "insert into ibf_subscription_currency SET subcurrency_code='GBP', subcurrency_desc='United Kingdom Pounds', subcurrency_exchange=' 0.630776', subcurrency_default=0;";
$SQL[] = "insert into ibf_subscription_currency SET subcurrency_code='CAD', subcurrency_desc='Canada Dollars', subcurrency_exchange='1.37080', subcurrency_default=0;";
$SQL[] = "insert into ibf_subscription_currency SET subcurrency_code='EUR', subcurrency_desc='Euro', subcurrency_exchange='0.901517', subcurrency_default=0;";

$SQL[] = "INSERT INTO ibf_subscription_methods VALUES (1, 'PayPal', 'paypal', '', '', '', '', '', '', '', 0, 1, 'All major credit cards accepted. See <a href=\"https://www.paypal.com/affil/pal=9DJEWQQKVB6WL\" target=\"_blank\">PayPal</a> for more information.', '', 1, 'USD');";
$SQL[] = "INSERT INTO ibf_subscription_methods VALUES (2, 'NOCHEX', 'nochex', '', '', '', '', '', '', '', 0, 1, 'UK debit and credit cards, such as Switch, Solo and VISA Delta. All prices will be convereted into GBP (UK Pounds) upon ordering.', NULL, 1, 'GBP');";
$SQL[] = "INSERT INTO ibf_subscription_methods VALUES (3, 'Post Service', 'manual', '', '', '', '', '', '', '', 0, 0, 'You can use this method if you wish to send us a check, postal order or international money order.', NULL, 1, 'USD');";
$SQL[] = "INSERT INTO ibf_subscription_methods VALUES (4, '2CheckOut', '2checkout', '', '', '', '', '', '', '', 1, 1, 'All major credit cards accepted. See <a href=\'http://www.2checkout.com/cgi-bin/aff.2c?affid=28376\' target=\'_blank\'>2CheckOut</a> for more information.', NULL, 1, 'USD');";


$SQL[] = "INSERT INTO ibf_templates VALUES (1, '".get_main_wrapper()."', 'Invision Board 規範');";

$SQL[] = "INSERT INTO ibf_titles (id, posts, title, pips) VALUES (1, 0, '新進會員', '1')";
$SQL[] = "INSERT INTO ibf_titles (id, posts, title, pips) VALUES (2, 10, '一般會員', '2')";
$SQL[] = "INSERT INTO ibf_titles (id, posts, title, pips) VALUES (4, 30, '進階會員', '3')";

$SQL[] = "INSERT INTO ibf_tmpl_names (skid, skname, author, email, url) VALUES (1, 'IPB 預設面板', 'Invision Power Board', 'skins@invisionboard.com', 'http://www.invisionboard.com')";

$SQL[] = "INSERT INTO ibf_topics (tid, title, description, state, posts, starter_id, start_date, last_poster_id, last_post, icon_id, starter_name, last_poster_name, poll_state, last_vote, views, forum_id, approved, author_mode, pinned, moved_to, rating, total_votes) VALUES (1, '歡迎使用 IPBM 1.4 !', '', 'open', 0, '-1', <%time%>, '0', <%time%>, 0, 'Koudanshi 中文支援團隊', 'Koudanshi 中文支援團隊', '0', 0, 0, 1, 1, 0, 0, NULL, NULL, 0)";

return $SQL;
}


function get_main_css()
{
return "/* FIX IE6 Scrollbars bug - Leave this in! */
/* FIX IE6 Scrollbars bug - Leave this in! */
html { overflow-x: auto; } 

/* Body entry, change forum page background colour, default font, font size, etc. Leave text-align:center to center board content
   #ipwrapper will set text-align back to left for the forum. Any other tables / divs you use must use text-align:left to re-align
   the content properly. This is a work around to a known Internet Explorer bug */
BODY { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 11px; color: #000; margin:0px;padding:0px;background-color:#FFF; text-align:center }
TABLE, TR, TD { font-family: Verdana, Tahoma, Arial, sans-serif; font-size: 11px; color: #000; }

/* MAIN WRAPPER: Adjust forum width here. Leave margins alone to auto-center content */
#ipbwrapper { text-align:left; width:95%; margin-left:auto;margin-right:auto }

a:link, a:visited, a:active { text-decoration: underline; color: #000 }
a:hover { color: #465584; text-decoration:underline }

fieldset.search { padding:6px; line-height:150% }
label      { cursor:pointer; }
form       { display:inline; }
img        { vertical-align:middle; border:0px }
img.attach { border:2px outset #EEF2F7;padding:2px }

.googleroot  { padding:6px; line-height:130% }
.googlechild { padding:6px; margin-left:30px; line-height:130% }
.googlebottom, .googlebottom a:link, .googlebottom a:visited, .googlebottom a:active { font-size:11px; color: #3A4F6C; }
.googlish, .googlish a:link, .googlish a:visited, .googlish a:active { font-size:14px; font-weight:bold; color:#00D; }
.googlepagelinks { font-size:1.1em; letter-spacing:1px }
.googlesmall, .googlesmall a:link, .googlesmall a:active, .googlesmall a:visited { font-size:10px; color:#434951 }

li.helprow { padding:0px; margin:0px 0px 10px 0px }
ul#help    { padding:0px 0px 0px 15px }

option.cat { font-weight:bold; }
option.sub { font-weight:bold;color:#555 }
.caldate   { text-align:right;font-weight:bold;font-size:11px;color:#777;background-color:#DFE6EF;padding:4px;margin:0px }

.warngood { color:green }
.warnbad  { color:red }

#padandcenter { margin-left:auto;margin-right:auto;text-align:center;padding:14px 0px 14px 0px }

#profilename { font-size:28px; font-weight:bold; }
#calendarname { font-size:22px; font-weight:bold; }

#photowrap { padding:6px; }
#phototitle { font-size:24px; border-bottom:1px solid black }
#photoimg   { text-align:center; margin-top:15px } 

#ucpmenu    { line-height:150%;width:22%; border:1px solid #345487;background-color: #F5F9FD }
#ucpmenu p  { padding:2px 5px 6px 9px;margin:0px; }
#ucpcontent { background-color: #F5F9FD; border:1px solid #345487;line-height:150%; width:auto }
#ucpcontent p  { padding:10px;margin:0px; }

#ipsbanner { position:absolute;top:1px;right:5%; }
#logostrip { border:1px solid #345487;background-color: #3860BB;background-image:url(style_images/<#IMG_DIR#>/tile_back.gif);padding:0px;margin:0px; }
#submenu   { border:1px solid #BCD0ED;background-color: #DFE6EF;font-size:10px;margin:3px 0px 3px 0px;color:#3A4F6C;font-weight:bold;}
#submenu a:link, #submenu  a:visited, #submenu a:active { font-weight:bold;font-size:10px;text-decoration: none; color: #3A4F6C; }
#userlinks { border:1px solid #C2CFDF; background-color: #F0F5FA }

#navstrip  { font-weight:bold;padding:6px 0px 6px 0px; }

.activeuserstrip { background-color:#BCD0ED; padding:6px }

/* Form stuff (post / profile / etc) */
.pformstrip { background-color: #D1DCEB; color:#3A4F6C;font-weight:bold;padding:7px;margin-top:1px }
.pformleft  { background-color: #F5F9FD; padding:6px; margin-top:1px;width:25%; border-top:1px solid #C2CFDF; border-right:1px solid #C2CFDF; }
.pformleftw { background-color: #F5F9FD; padding:6px; margin-top:1px;width:40%; border-top:1px solid #C2CFDF; border-right:1px solid #C2CFDF; }
.pformright { background-color: #F5F9FD; padding:6px; margin-top:1px;border-top:1px solid #C2CFDF; }

/* Topic View elements */
.signature   { font-size: 10px; color: #339; line-height:150% }
.postdetails { font-size: 10px }
.postcolor   { font-size: 12px; line-height: 160% }

.normalname { font-size: 12px; font-weight: bold; color: #003 }
.normalname a:link, .normalname a:visited, .normalname a:active { font-size: 12px }
.unreg { font-size: 11px; font-weight: bold; color: #900 }

.post1 { background-color: #F5F9FD }
.post2 { background-color: #EEF2F7 }
.postlinksbar { background-color:#D1DCEB;padding:7px;margin-top:1px;font-size:10px; background-image: url(style_images/<#IMG_DIR#>/tile_sub.gif) }

/* Common elements */
.row1 { background-color: #F5F9FD }
.row2 { background-color: #DFE6EF }
.row3 { background-color: #EEF2F7 }
.row4 { background-color: #E4EAF2 }

.darkrow1 { background-color: #C2CFDF; color:#4C77B6; }
.darkrow2 { background-color: #BCD0ED; color:#3A4F6C; }
.darkrow3 { background-color: #D1DCEB; color:#3A4F6C; }

.hlight { background-color: #DFE6EF }
.dlight { background-color: #EEF2F7 }

.titlemedium { font-weight:bold; color:#3A4F6C; padding:7px; margin:0px; background-image: url(style_images/<#IMG_DIR#>/tile_sub.gif) }
.titlemedium  a:link, .titlemedium  a:visited, .titlemedium  a:active  { text-decoration: underline; color: #3A4F6C }

/* Main table top (dark blue gradient by default) */
.maintitle { vertical-align:middle;font-weight:bold; color:#FFF; padding:8px 0px 8px 5px; background-image: url(style_images/<#IMG_DIR#>/tile_back.gif) }
.maintitle a:link, .maintitle  a:visited, .maintitle  a:active { text-decoration: none; color: #FFF }
.maintitle a:hover { text-decoration: underline }

/* tableborders gives the white column / row lines effect */
.plainborder { border:1px solid #345487;background-color:#F5F9FD }
.tableborder { border:1px solid #345487;background-color:#FFF; padding:0; margin:0 }
.tablefill   { border:1px solid #345487;background-color:#F5F9FD;padding:6px;  }
.tablepad    { background-color:#F5F9FD;padding:6px }
.tablebasic  { width:100%; padding:0px 0px 0px 0px; margin:0px; border:0px }

.wrapmini    { float:left;line-height:1.5em;width:25% }
.pagelinks   { float:left;line-height:1.2em;width:35% }

.desc { font-size:10px; color:#434951 }
.edit { font-size: 9px }


.searchlite { font-weight:bold; color:#F00; background-color:#FF0 }

#QUOTE { white-space:normal; font-family: Verdana, Arial; font-size: 11px; color: #465584; background-color: #FAFCFE; border: 1px solid #000; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px }
#CODE  { white-space:normal; font-family: Courier, Courier New, Verdana, Arial;  font-size: 11px; color: #465584; background-color: #FAFCFE; border: 1px solid #000; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px }

.copyright { font-family: Verdana, Tahoma, Arial, Sans-Serif; font-size: 9px; line-height: 12px }

.codebuttons  { font-size: 10px; font-family: verdana, helvetica, sans-serif; vertical-align: middle }
.forminput, .textinput, .radiobutton, .checkbox  { font-size: 11px; font-family: verdana, helvetica, sans-serif; vertical-align: middle }

.thin { padding:6px 0px 6px 0px;line-height:140%;margin:2px 0px 2px 0px;border-top:1px solid #FFF;border-bottom:1px solid #FFF }

.purple { color:purple;font-weight:bold }
.red    { color:red;font-weight:bold }
.green  { color:green;font-weight:bold }
.blue   { color:blue;font-weight:bold }
.orange { color:#F90;font-weight:bold }";
}

function get_main_wrapper()
{
return '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="zh-TW" lang="zh-TW" xmlns="http://www.w3.org/1999/xhtml">
<head> 
<title><% TITLE %></title> 
<meta http-equiv="content-type" content="text/html; charset=big5" />
<% GENERATOR %> 
<% CSS %> 
<% JAVASCRIPT %> 
</head> 
<body>
<div id="ipbwrapper">
<% BOARD HEADER %> 
<% NAVIGATION %> 
<% BOARD %> 
<% STATS %> 
<% COPYRIGHT %>
</div>
</body> 
</html>';
}


?>