Index: trunk/xpressme_integration_kit/include/onupdate.php
===================================================================
--- trunk/xpressme_integration_kit/include/onupdate.php	(revision 276)
+++ trunk/xpressme_integration_kit/include/onupdate.php	(revision 277)
@@ -23,86 +23,159 @@
 	$mid = $module->getVar('mid') ;
 
-
-
 //XPressME Update
 	global $wpdb,$wp_rewrite, $wp_queries, $table_prefix, $wp_db_version, $wp_roles,$wp_query;
 	global $xoops_db;
-	define('WP_INSTALLING', true);
 	$mydirpath = XOOPS_ROOT_PATH . '/modules/' . $mydirname;
 	$path = $mydirpath . '/';
 	
-/* 
- * xpress_put_siteurl($mydirname,''); 
- * Call to a member function register() The on a non-object error is evaded.
- * It happens by register_widget() that exists in wp-includes/widgets.php. 
- * The blog is not installed. It is cheating to function wp_maybe_load_widgets(). 
- * As a result, default-widgets.php is not loaded.
- */
-	xpress_put_siteurl($mydirname,''); 				// Site_url is temporarily deleted. 
-	
-	if (file_exists($path . 'wp-load.php')) {
-		require_once $path . 'wp-load.php';
-	} else {
-		require_once $path . 'wp-config.php';
-	}
-// upgrade WordPress
-	
-	$site_url= XOOPS_URL."/modules/".$mydirname;		
-	xpress_put_siteurl($mydirname,$site_url);				// Site_url is set again. 
-	update_option("home", $site_url);
-
-	require_once($mydirpath . '/wp-admin/upgrade-functions.php');
-
-	if ( get_db_version($mydirname) != $wp_db_version ){
-		if( function_exists( 'wp_upgrade' ) )	{	
-			wp_upgrade();			
+//Site_url and home of an optional table are repaired. 
+	$site_url= XOOPS_URL."/modules/".$mydirname;
+	xpress_put_siteurl($mydirname,$site_url);
+	xpress_put_home($mydirname,$site_url);
+
+// XPressME orignal table update
+	$t_mess = xpress_table_make($module , $mydirname);
+	$msgs = array_merge($msgs,$t_mess);
+
+// make templates
+	include_once XOOPS_ROOT_PATH . '/modules/' . $mydirname . '/include/xpress_templates_make.php' ;
+	$t_mess = xpress_templates_make($mid,$mydirname);
+	
+	$msgs = array_merge($msgs,$t_mess);
+
+// The activation processing of the XPressME plugin is omitted. 
+// Because the XPressME plugin is done with wp-config in activation
+
+	/* activate the xpressme plugin */
+//	require_once dirname( __FILE__ ).'/xpress_active_plugin.php';
+//	if (xpress_pulugin_activation('xpressme/xpressme.php')){
+//		$msgs[] = 'The xpressme plug-in was activated.';
+//	}
+	
+//	update_option("blog_charset", wp_blog_charset());
+	return true ;
+}
+endif;
+
+if( ! function_exists( 'xpress_put_siteurl' ) ) :
+function xpress_put_siteurl($mydirname,$url){
+		global $xoopsModule;
+		$wp_prefix = $mydirname;
+		if ($wp_prefix == 'wordpress'){
+			$wp_prefix = 'wp';
+		}
+		$xoopsDB =& Database::getInstance();
+		$db_xpress_option = $xoopsDB->prefix($wp_prefix . '_options');
+
+		$sql = "UPDATE $db_xpress_option SET option_value = '$url' WHERE option_name = 'siteurl'";
+		$res = $xoopsDB->queryF($sql, 0, 0);
+}
+endif;
+
+if( ! function_exists( 'xpress_put_home' ) ) :
+function xpress_put_home($mydirname,$url){
+		global $xoopsModule;
+		$wp_prefix = $mydirname;
+		if ($wp_prefix == 'wordpress'){
+			$wp_prefix = 'wp';
+		}
+		$xoopsDB =& Database::getInstance();
+		$db_xpress_option = $xoopsDB->prefix($wp_prefix . '_options');
+
+		$sql = "UPDATE $db_xpress_option SET option_value = '$url' WHERE option_name = 'home'";
+		$res = $xoopsDB->queryF($sql, 0, 0);
+}
+endif;
+
+
+if( ! function_exists( 'xpress_message_append_onupdate' ) ) :
+function xpress_message_append_onupdate( &$module_obj , &$log )
+{
+	if( is_array( @$GLOBALS['msgs'] ) ) {
+		foreach( $GLOBALS['msgs'] as $message ) {
+			$log->add( strip_tags( $message ) ) ;
+		}
+	}
+
+	// use mLog->addWarning() or mLog->addError() if necessary
+}
+endif;
+
+if( ! function_exists( 'get_db_version' ) ) :
+function get_db_version($mydirname){
+		global $xoopsModule;
+		$wp_prefix = $mydirname;
+		if ($wp_prefix == 'wordpress'){
+			$wp_prefix = 'wp';
+		}
+		$xoopsDB =& Database::getInstance();
+		$db_xpress_option = $xoopsDB->prefix($wp_prefix . '_options');
+
+		$sql = "SELECT option_value FROM $db_xpress_option WHERE option_name = 'db_version'";
+		$res = $xoopsDB->query($sql, 0, 0);
+		if ($res === false){
+			return false;
 		} else {
-			wp_cache_flush();
-			make_db_current_silent();
-			upgrade_all();
-			wp_cache_flush();
-		}				
-			$msgs[] = 'Upgrade Wordpress Database Ver.' . get_db_version($mydirname) .' to' . $wp_db_version;
-	}
+			$row = $xoopsDB->fetchArray($res);
+			return $row['option_value'];
+		}
+}
+endif;
+
+if( ! function_exists( 'xpress_block_check' ) ) :
+function xpress_block_check($mydirname){
+	include_once(dirname(dirname(__FILE__)) . '/class/check_blocks_class.php');
+
+	$xoops_block_check =& xoops_block_check::getInstance();
+
+	if ( !$xoops_block_check->is_admin() )
+	{
+		$cont = 'Block Check Pass';
+		return cont;
+	}
+
+	switch ( $xoops_block_check->get_op() ) 
+	{
+		case "remove_block":
+			$cont = $xoops_block_check->remove_block();
+			break;
+
+		default:
+			$cont = $xoops_block_check->check_blocks($mydirname);
+			break;
+	}
+	return $cont;
+}
+endif;
+
+if( ! function_exists( 'xpress_table_make' ) ) :
+function xpress_table_make($module, $mydirname)
+{
+	$xp_prefix = $mydirname;
+	if ($xp_prefix == 'wordpress'){
+	 	$xp_prefix = 'wp';
+	}
+	$db =& Database::getInstance() ;
+	$mid = $module->getVar('mid') ;
 
 // XPressME orignal table update
+	$xp_prefix = $mydirname;
+	if ($xp_prefix == 'wordpress'){
+	 	$xp_prefix = 'wp';
+	}
+	$msgs = array();
+
 	if (! enhanced_table_check($mydirname,'views')){
-		$xp_prefix = $mydirname;
-		if ($xp_prefix == 'wordpress'){
-	 		$xp_prefix = 'wp';
-		}
-		
-		$charset_collate = '';
-		if ( version_compare(mysql_get_server_info(), '4.1.0', '>=') ) {
-			if ( ! empty($wpdb->charset) )
-			$charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
-			if ( ! empty($wpdb->collate) )
-			$charset_collate .= " COLLATE $wpdb->collate";
-		}
 		$views_table = XOOPS_DB_PREFIX . '_' . $xp_prefix .'_views' ;
-		$views_queries ="CREATE TABLE $views_table (
+		$queries ="CREATE TABLE $views_table (
   		post_id bigint(20) unsigned NOT NULL default '0',
   		post_views bigint(20) unsigned NOT NULL default '0',
   		KEY post_id (post_id)
-		)$charset_collate;";
-
-		dbDelta($views_queries);
+		) TYPE=MyISAM";
+		$db->queryF( $queries ) ;
 		$msgs[] = "$views_table table of XPressME was made.";
 	}
 	
 	if (! enhanced_table_check($mydirname,'d3forum_link')){
-		$xp_prefix = $mydirname;
-		if ($xp_prefix == 'wordpress'){
-	 		$xp_prefix = 'wp';
-		}
-		
-		$charset_collate = '';
-		if ( version_compare(mysql_get_server_info(), '4.1.0', '>=') ) {
-			if ( ! empty($wpdb->charset) )
-			$charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
-			if ( ! empty($wpdb->collate) )
-			$charset_collate .= " COLLATE $wpdb->collate";
-		}
-	
 		$d3forum_link = XOOPS_DB_PREFIX . '_' . $xp_prefix .'_d3forum_link' ;
 		$queries ="CREATE TABLE $d3forum_link (
@@ -111,25 +184,12 @@
 	  		wp_post_ID bigint(20) unsigned NOT NULL default '0',
 	  		KEY post_id (post_id)
-			)$charset_collate;";
-		dbDelta($queries);
+			)TYPE=MyISAM";
+		$db->queryF( $queries ) ;
 		$msgs[] = "$d3forum_link table of XPressME was made.";
 	}
 
 	if (! enhanced_table_check($mydirname,'group_role')){
-		$xp_prefix = $mydirname;
-		if ($xp_prefix == 'wordpress'){
-	 		$xp_prefix = 'wp';
-		}
-		
-		$charset_collate = '';
-		if ( version_compare(mysql_get_server_info(), '4.1.0', '>=') ) {
-			if ( ! empty($wpdb->charset) )
-			$charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
-			if ( ! empty($wpdb->collate) )
-			$charset_collate .= " COLLATE $wpdb->collate";
-		}
-	
 		$group_role = XOOPS_DB_PREFIX . '_' . $xp_prefix .'_group_role' ;
-		$views_queries ="CREATE TABLE $group_role (
+		$queries ="CREATE TABLE $group_role (
 	  		groupid smallint(5) unsigned NOT NULL default '0',
 	  		name varchar(50)  NOT NULL default '' ,
@@ -139,87 +199,14 @@
 			login_all smallint(5) unsigned NOT NULL default '0' ,
 	  		KEY groupid (groupid)
-			)$charset_collate;";
-		dbDelta($views_queries);
+			)TYPE=MyISAM";
+		$db->queryF( $queries ) ;
 		$sql = "INSERT INTO $group_role (groupid, role) VALUES (1, 'administrator')";
-		$wpdb->query($sql);
+		$db->queryF( $sql ) ;
 		$msgs[] = "$group_role table of XPressME was made.";
 	}
-	if ( xpress_block_check($mydirname)) {
-		$msgs[] = '<span style="color:#ff0000;">Block Check OK</span>';
-	} else {
-		$msgs[] = "Block Check NG.  You need Repar Block on This Mobule 'Block Check' Menu";
-	}
-
-// make templates
-	include_once XOOPS_ROOT_PATH . '/modules/' . $mydirname . '/include/xpress_templates_make.php' ;
-	$t_mess = xpress_templates_make($mid,$mydirname);
-	
-	$msgs = array_merge($msgs,$t_mess);
-
-
-	/* activate the xpressme plugin */
-	require_once dirname( __FILE__ ).'/xpress_active_plugin.php';
-	if (xpress_pulugin_activation('xpressme/xpressme.php')){
-		$msgs[] = 'The xpressme plug-in was activated.';
-	}
-	
-//	update_option("blog_charset", wp_blog_charset());
-	$xpress_version = $module->modinfo['version'];
-	
-
-	
-	return true ;
-}
-endif;
-
-if( ! function_exists( 'xpress_put_siteurl' ) ) :
-function xpress_put_siteurl($mydirname,$url){
-		global $xoopsModule;
-		$wp_prefix = $mydirname;
-		if ($wp_prefix == 'wordpress'){
-			$wp_prefix = 'wp';
-		}
-		$xoopsDB =& Database::getInstance();
-		$db_xpress_option = $xoopsDB->prefix($wp_prefix . '_options');
-
-		$sql = "UPDATE $db_xpress_option SET option_value = '$url' WHERE option_name = 'siteurl'";
-		$res = $xoopsDB->queryF($sql, 0, 0);
-}
-endif;
-
-if( ! function_exists( 'xpress_message_append_onupdate' ) ) :
-function xpress_message_append_onupdate( &$module_obj , &$log )
-{
-	if( is_array( @$GLOBALS['msgs'] ) ) {
-		foreach( $GLOBALS['msgs'] as $message ) {
-			$log->add( strip_tags( $message ) ) ;
-		}
-	}
-
-	// use mLog->addWarning() or mLog->addError() if necessary
-}
-endif;
-
-if( ! function_exists( 'get_db_version' ) ) :
-function get_db_version($mydirname){
-		global $xoopsModule;
-		$wp_prefix = $mydirname;
-		if ($wp_prefix == 'wordpress'){
-			$wp_prefix = 'wp';
-		}
-		$xoopsDB =& Database::getInstance();
-		$db_xpress_option = $xoopsDB->prefix($wp_prefix . '_options');
-
-		$sql = "SELECT option_value FROM $db_xpress_option WHERE option_name = 'db_version'";
-		$res = $xoopsDB->query($sql, 0, 0);
-		if ($res === false){
-			return false;
-		} else {
-			$row = $xoopsDB->fetchArray($res);
-			return $row['option_value'];
-		}
-}
-endif;
-
+	
+	return $msgs;
+}
+endif;
 
 if( ! function_exists( 'enhanced_table_check' ) ) :
@@ -248,29 +235,4 @@
 endif;
 
-if( ! function_exists( 'xpress_block_check' ) ) :
-function xpress_block_check($mydirname){
-	include_once(dirname(dirname(__FILE__)) . '/class/check_blocks_class.php');
-
-	$xoops_block_check =& xoops_block_check::getInstance();
-
-	if ( !$xoops_block_check->is_admin() )
-	{
-		$cont = 'Block Check Pass';
-		return cont;
-	}
-
-	switch ( $xoops_block_check->get_op() ) 
-	{
-		case "remove_block":
-			$cont = $xoops_block_check->remove_block();
-			break;
-
-		default:
-			$cont = $xoops_block_check->check_blocks($mydirname);
-			break;
-	}
-	return $cont;
-}
-endif;
 
 
