Пример #1
0
 function resume(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     // Setup some working variables
     $displayobject->update_basic('displaymodules', 'FALSE');
     $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
     $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
     $source_db_type = $sessionobject->get_session_var('sourcedatabasetype');
     $source_table_prefix = $sessionobject->get_session_var('sourcetableprefix');
     $class_num = substr(get_class($this), -3);
     $databasedone = true;
     if (!$sessionobject->get_session_var($class_num . '_start')) {
         $sessionobject->timing($class_num, 'start', $sessionobject->get_session_var('autosubmit'));
     }
     $displayobject->update_basic('title', 'Modifying database');
     $displayobject->display_now("<h4>Altering tables</h4>");
     $displayobject->display_now("<p>ImpEx will now Alter the tables in the vB database to include <i>import id numbers</i>.</p>");
     $displayobject->display_now("This is needed during the import process for maintaining refrences between the tables during an import.");
     $displayobject->display_now("If you have large tables (i.e. lots of posts) this can take some time.</p>");
     $displayobject->display_now("<p> They will also be left after the import if you need to link back to the origional vB userid.</p>");
     // Add an importids now
     foreach ($this->_import_ids as $id => $table_array) {
         foreach ($table_array as $tablename => $column) {
             if ($this->add_import_id($Db_target, $target_db_type, $target_table_prefix, $tablename, $column)) {
                 $displayobject->display_now("\n<br /><b>{$tablename}</b> - {$column} <i>OK</i>");
             } else {
                 $sessionobject->add_error('fatal', $this->_modulestring, get_class($this) . "::resume failed trying to modify table {$tablename} to add {$column}", 'Check database permissions');
             }
         }
     }
     // Add the importpostid for the attachment imports and the users for good measure
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'post');
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'user');
     if ($sessionobject->get_session_var('added_default_unknown_group') != 'yup') {
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', 'Imported Users');
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         $sessionobject->add_session_var('added_default_unknown_group', 'yup');
         unset($try);
     }
     // Check the database connection
     $result = $this->check_database($Db_source, $source_db_type, $source_table_prefix, $sessionobject->get_session_var('sourceexists'));
     $displayobject->display_now($result['text']);
     if ($result['code']) {
         $sessionobject->timing($class_num, 'stop', $sessionobject->get_session_var('autosubmit'));
         $sessionobject->remove_session_var($class_num . '_start');
         $displayobject->update_html($displayobject->module_finished($this->_modulestring, $sessionobject->return_stats($class_num, '_time_taken'), $sessionobject->return_stats($class_num, '_objects_done'), $sessionobject->return_stats($class_num, '_objects_failed')));
         $sessionobject->add_session_var($class_num . '_objects_done', intval($sessionobject->get_session_var($class_num . '_objects_done')) + 1);
         $sessionobject->set_session_var(substr(get_class($this), -3), 'FINISHED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_basic('displaymodules', 'FALSE');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     } else {
         $sessionobject->add_session_var($class_num . '_objects_failed', intval($sessionobject->get_session_var($class_num . '_objects_failed')) + 1);
         $displayobject->update_html($displayobject->make_description("{$displayobject->phrases['failed']} {$displayobject->phrases['check_db_permissions']}"));
         $sessionobject->set_session_var('001', 'FAILED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     }
 }
Пример #2
0
 function resume(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     // Setup some working variables
     $displayobject->update_basic('displaymodules', 'FALSE');
     $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
     $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
     $source_db_type = $sessionobject->get_session_var('sourcedatabasetype');
     $source_table_prefix = $sessionobject->get_session_var('sourcetableprefix');
     $class_num = substr(get_class($this), -3);
     $databasedone = true;
     if (!$sessionobject->get_session_var($class_num . '_start')) {
         $sessionobject->timing($class_num, 'start', $sessionobject->get_session_var('autosubmit'));
     }
     $displayobject->update_basic('title', $displayobject->phrases['altering_tables']);
     $displayobject->display_now("<h4>{$displayobject->phrases['altering_tables']}</h4>");
     $displayobject->display_now($displayobject->phrases['alter_desc_1']);
     $displayobject->display_now($displayobject->phrases['alter_desc_2']);
     $displayobject->display_now($displayobject->phrases['alter_desc_3']);
     $displayobject->display_now($displayobject->phrases['alter_desc_4']);
     // Add an importids now
     foreach ($this->_import_ids as $id => $table_array) {
         foreach ($table_array as $tablename => $column) {
             if ($this->add_import_id($Db_target, $target_db_type, $target_table_prefix, $tablename, $column)) {
                 $displayobject->display_now("\n<br /><b>{$tablename}</b> - {$column} <i>{$displayobject->phrases['completed']}</i>");
             } else {
                 $sessionobject->add_error(substr(get_class($this), -3), $displayobject->phrases['table_alter_fail'], $displayobject->phrases['table_alter_fail_rem']);
             }
         }
     }
     // Add the importpostid for the attachment imports and the users for good measure
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'post');
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'user');
     if ($sessionobject->get_session_var('added_default_unknown_group') != 'yup') {
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', "{$displayobject->phrases['imported']} {$displayobject->phrases['users']}");
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         $sessionobject->add_session_var('added_default_unknown_group', 'yup');
         unset($try);
     }
     // Check the database connection
     $result = $this->check_database($Db_source, $source_db_type, $source_table_prefix, $sessionobject->get_session_var('sourceexists'));
     $displayobject->display_now($result['text']);
     if ($result['code']) {
         $sessionobject->timing($class_num, 'stop', $sessionobject->get_session_var('autosubmit'));
         $sessionobject->remove_session_var($class_num . '_start');
         $displayobject->update_html($displayobject->module_finished($this->_modulestring, $sessionobject->return_stats($class_num, '_time_taken'), $sessionobject->return_stats($class_num, '_objects_done'), $sessionobject->return_stats($class_num, '_objects_failed')));
         $sessionobject->add_session_var($class_num . '_objects_done', intval($sessionobject->get_session_var($class_num . '_objects_done')) + 1);
         $sessionobject->set_session_var(substr(get_class($this), -3), 'FINISHED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_basic('displaymodules', 'FALSE');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     } else {
         $displayobject->update_html($displayobject->make_description("{$displayobject->phrases['failed']} {$displayobject->phrases['check_db_permissions']}"));
         $displayobject->update_html($displayobject->make_hidden_code('pathdata', 'done'));
         $sessionobject->set_session_var('001', 'FAILED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     }
 }
Пример #3
0
 function init(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     if ($this->check_order($sessionobject, $this->_dependent)) {
         if ($this->_restart) {
             if ($this->restart($sessionobject, $displayobject, $Db_target, $Db_source, 'clear_imported_usergroups')) {
                 $displayobject->display_now("<h4>{$displayobject->phrases['usergroups_cleared']}</h4>");
                 $this->_restart = true;
             } else {
                 $sessionobject->add_error(substr(get_class($this), -3), $displayobject->phrases['usergroup_restart_failed'], $displayobject->phrases['check_db_permissions']);
             }
         }
         // Start up the table
         $displayobject->update_basic('title', $displayobject->phrases['import_usergroup']);
         $displayobject->update_html($displayobject->do_form_header('index', substr(get_class($this), -3)));
         $displayobject->update_html($displayobject->make_hidden_code(substr(get_class($this), -3), 'WORKING'));
         $displayobject->update_html($displayobject->make_table_header($this->_modulestring));
         // Ask some questions
         $displayobject->update_html($displayobject->make_input_code($displayobject->phrases['usergroups_per_page'], 'usergroupperpage', 50));
         // End the table
         $displayobject->update_html($displayobject->do_form_footer($displayobject->phrases['continue'], $displayobject->phrases['reset']));
         // Incative usergroup
         $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
         $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
         $usergroup_object = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try = phpversion() < '5' ? $usergroup_object : clone $usergroup_object;
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', "Active {$displayobject->phrases['imported']} {$displayobject->phrases['users']}");
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         unset($try);
         $try = phpversion() < '5' ? $usergroup_object : clone $usergroup_object;
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '70');
         $try->set_value('nonmandatory', 'title', "Inactive {$displayobject->phrases['imported']} {$displayobject->phrases['users']}");
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         $sessionobject->add_session_var('added_default_unknown_group', 'yup');
         unset($try);
         // Reset/Setup counters for this
         $sessionobject->add_session_var(substr(get_class($this), -3) . '_objects_done', '0');
         $sessionobject->add_session_var(substr(get_class($this), -3) . '_objects_failed', '0');
         $sessionobject->add_session_var('usergroupstartat', '0');
     } else {
         // Dependant has not been run
         $displayobject->update_html($displayobject->do_form_header('index', ''));
         $displayobject->update_html($displayobject->make_description("<p>{$displayobject->phrases['dependant_on']}<i><b> " . $sessionobject->get_module_title($this->_dependent) . "</b> {$displayobject->phrases['cant_run']}</i> ."));
         $displayobject->update_html($displayobject->do_form_footer($displayobject->phrases['continue'], ''));
         $sessionobject->set_session_var(substr(get_class($this), -3), 'FALSE');
         $sessionobject->set_session_var('module', '000');
     }
 }
Пример #4
0
 function resume(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     // Setup some working variables
     $displayobject->update_basic('displaymodules', 'FALSE');
     $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
     $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
     $source_db_type = $sessionobject->get_session_var('sourcedatabasetype');
     $source_table_prefix = $sessionobject->get_session_var('sourcetableprefix');
     $class_num = substr(get_class($this), -3);
     $databasedone = true;
     if (!$sessionobject->get_session_var($class_num . '_start')) {
         $sessionobject->timing($class_num, 'start', $sessionobject->get_session_var('autosubmit'));
     }
     $displayobject->update_basic('title', 'Modifying database');
     $displayobject->display_now("<h4>Altering tables</h4>");
     $displayobject->display_now("<p>ImpEx will now Alter the tables in the vB database to include <i>import id numbers</i>.</p>");
     $displayobject->display_now("If you have large tables (i.e. lots of posts) this can take some time.</p>");
     $displayobject->display_now("<p> They will also be left after the import if you need to link back to the origional vB userid.</p>");
     // Add an importids now
     foreach ($this->_import_ids as $id => $table_array) {
         foreach ($table_array as $tablename => $column) {
             if ($this->add_import_id($Db_target, $target_db_type, $target_table_prefix, $tablename, $column)) {
                 $displayobject->display_now("\n<br /><b>{$tablename}</b> - {$column} <i>OK</i>");
             } else {
                 $sessionobject->add_error('fatal', $this->_modulestring, get_class($this) . "::resume failed trying to modify table {$tablename} to add {$column}", 'Check database permissions');
             }
         }
     }
     // Set up a default group to put all the users into so the admin can do something
     // with them all later
     if ($sessionobject->get_session_var('added_default_group') != 'yup') {
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', 'Imported Users');
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         $sessionobject->add_session_var('added_default_group', 'yup');
         unset($try);
     }
     $databasedone = $this->check_file($displayobject, $sessionobject, $sessionobject->get_session_var('filepath'));
     $sessionobject->timing($class_num, 'stop', $sessionobject->get_session_var('autosubmit'));
     $sessionobject->remove_session_var($class_num . '_start');
     $displayobject->update_html($displayobject->module_finished($this->_modulestring, $sessionobject->return_stats($class_num, '_time_taken'), $sessionobject->return_stats($class_num, '_objects_done'), $sessionobject->return_stats($class_num, '_objects_failed')));
     $sessionobject->set_session_var(substr(get_class($this), -3), 'FINISHED');
     $sessionobject->set_session_var('database', 'done');
     $sessionobject->set_session_var('module', '000');
     $displayobject->update_basic('displaymodules', 'FALSE');
     $displayobject->update_html($displayobject->print_redirect_001('index.php', '5'));
 }
Пример #5
0
 function init(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     if ($this->check_order($sessionobject, $this->_dependent)) {
         if ($this->_restart) {
             if ($this->restart($sessionobject, $displayobject, $Db_target, $Db_source, 'clear_imported_usergroups')) {
                 $displayobject->display_now('<h4>Imported usergroups have been cleared</h4>');
                 $this->_restart = true;
             } else {
                 $sessionobject->add_error('fatal', $this->_modulestring, get_class($this) . '::restart failed , clear_imported_usergroups', 'Check database permissions');
             }
         }
         // Start up the table
         $displayobject->update_basic('title', 'Import Usergroup');
         $displayobject->update_html($displayobject->do_form_header('index', substr(get_class($this), -3)));
         $displayobject->update_html($displayobject->make_hidden_code(substr(get_class($this), -3), 'WORKING'));
         $displayobject->update_html($displayobject->make_hidden_code('import_usergroup', 'working'));
         $displayobject->update_html($displayobject->make_table_header($this->_modulestring));
         // Ask some questions
         $displayobject->update_html($displayobject->make_input_code('Usergroups to import per cycle (must be greater than 1)', 'usergroupperpage', 50));
         // End the table
         $displayobject->update_html($displayobject->do_form_footer('Continue', 'Reset'));
         // Reset/Setup counters for this
         $sessionobject->add_session_var(substr(get_class($this), -3) . '_objects_done', '0');
         $sessionobject->add_session_var(substr(get_class($this), -3) . '_objects_failed', '0');
         $sessionobject->add_session_var('usergroupstartat', '0');
         $sessionobject->add_session_var('usergroupdone', '0');
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
         $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', 'Imported Users');
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         unset($try);
     } else {
         // Dependant has not been run
         $displayobject->update_html($displayobject->do_form_header('index', ''));
         $displayobject->update_html($displayobject->make_description('<p>This module is dependent on <i><b>' . $sessionobject->get_module_title($this->_dependent) . '</b></i> cannot run until that is complete.'));
         $displayobject->update_html($displayobject->do_form_footer('Continue', ''));
         $sessionobject->set_session_var(substr(get_class($this), -3), 'FALSE');
         $sessionobject->set_session_var('module', '000');
     }
 }
Пример #6
0
 function resume(&$sessionobject, &$displayobject, &$Db_target, &$Db_source)
 {
     if (!$sessionobject->get_session_var('sourceexists')) {
         $displayobject->display_error($displayobject->phrases['sourceexists_is_false']);
         exit;
     }
     // Setup some working variables
     $displayobject->update_basic('displaymodules', 'FALSE');
     $target_db_type = $sessionobject->get_session_var('targetdatabasetype');
     $target_table_prefix = $sessionobject->get_session_var('targettableprefix');
     $source_db_type = $sessionobject->get_session_var('sourcedatabasetype');
     $source_table_prefix = $sessionobject->get_session_var('sourcetableprefix');
     $class_num = substr(get_class($this), -3);
     if (!$sessionobject->get_session_var($class_num . '_start')) {
         $sessionobject->timing($class_num, 'start', $sessionobject->get_session_var('autosubmit'));
     }
     $displayobject->update_basic('title', $displayobject->phrases['altering_tables']);
     $displayobject->display_now("<h4>{$displayobject->phrases['altering_tables']}</h4>");
     $displayobject->display_now($displayobject->phrases['alter_desc_1']);
     $displayobject->display_now($displayobject->phrases['alter_desc_2']);
     $displayobject->display_now($displayobject->phrases['alter_desc_3']);
     $displayobject->display_now($displayobject->phrases['alter_desc_4']);
     /*	
     		// Jig the tables we want, then do it every time in the function ....... ugh .....
     		$jiggy = array('board', 'board_hidden_to_user', 'board_last_post', 'board_moderator', 'board_structure', 'board_subscription',
     		'board_to_group', 'board_to_user', 'board_visit', 'post', 'post_cache', 'post_hash', 'post_report', 'thread',
     		'thread_announcement', 'thread_rating', 'thread_similar', 'thread_subscription', 'thread_visit', 'user');
     		
     		foreach ($jiggy AS $tablename)
     		{
     			$this->_valid_tables[] = $forum_prefix.$tablename;
     			unset($this->_valid_tables[$source_table_prefix.$tablename]);	
     		}
     */
     // Add an importids now
     foreach ($this->_import_ids as $id => $table_array) {
         foreach ($table_array as $tablename => $column) {
             if ($this->add_import_id($Db_target, $target_db_type, $target_table_prefix, $tablename, $column)) {
                 $displayobject->display_now("\n<br /><b>{$tablename}</b> - {$column} <i>{$displayobject->phrases['completed']}</i>");
             } else {
                 $sessionobject->add_error($Db_target, 'fatal', $class_num, 0, $displayobject->phrases['table_alter_fail'], $displayobject->phrases['table_alter_fail_rem']);
                 exit;
             }
         }
     }
     // Add the importpostid indexs
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'user');
     $this->add_index($Db_target, $target_db_type, $target_table_prefix, 'post');
     #$this->add_index($Db_target, $target_db_type, $target_table_prefix, 'thread');
     if ($sessionobject->get_session_var('added_default_unknown_group') != 'yup') {
         $try = new ImpExData($Db_target, $sessionobject, 'usergroup');
         $try->set_value('mandatory', 'importusergroupid', '69');
         $try->set_value('nonmandatory', 'title', "Active {$displayobject->phrases['imported']} {$displayobject->phrases['users']}");
         $try->import_usergroup($Db_target, $target_db_type, $target_table_prefix);
         $sessionobject->add_session_var('added_default_unknown_group', 'yup');
         unset($try);
         $sessionobject->add_session_var('added_default_unknown_group', 'yup');
         unset($try);
     }
     // Check the database connection
     $result = $this->check_database($Db_source, $source_db_type, $source_table_prefix, $sessionobject->get_session_var('sourceexists'));
     $displayobject->display_now($result['text']);
     if ($result['code']) {
         $sessionobject->timing($class_num, 'stop', $sessionobject->get_session_var('autosubmit'));
         $sessionobject->remove_session_var($class_num . '_start');
         $displayobject->update_html($displayobject->module_finished($this->_modulestring, $sessionobject->return_stats($class_num, '_time_taken'), $sessionobject->return_stats($class_num, '_objects_done'), $sessionobject->return_stats($class_num, '_objects_failed')));
         $sessionobject->add_session_var($class_num . '_objects_done', intval($sessionobject->get_session_var($class_num . '_objects_done')) + 1);
         $sessionobject->set_session_var(substr(get_class($this), -3), 'FINISHED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_basic('displaymodules', 'FALSE');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     } else {
         $sessionobject->add_session_var($class_num . '_objects_failed', intval($sessionobject->get_session_var($class_num . '_objects_failed')) + 1);
         $sessionobject->add_error($Db_target, 'fatal', $class_num, 0, $displayobject->phrases['table_check_error'], $displayobject->phrases['check_db_permissions']);
         $displayobject->update_html($displayobject->make_description("{$displayobject->phrases['failed']} {$displayobject->phrases['check_db_permissions']}"));
         $sessionobject->set_session_var('001', 'FAILED');
         $sessionobject->set_session_var('module', '000');
         $displayobject->update_html($displayobject->print_redirect_001('index.php', $sessionobject->get_session_var('pagespeed')));
     }
 }