function insert_data_060($action, $version)
{
    global $db, $table_prefix, $umil, $config, $version_config_name, $transfer_invitation_data;
    switch ($action) {
        case 'install':
        case 'update':
            // Run this when installing the first time
            if ($umil->table_exists($table_prefix . 'invite_config')) {
                // Before we fill anything in this table, we truncate it. Maybe someone missed an old installation.
                $db->sql_query('TRUNCATE TABLE ' . $table_prefix . 'invite_config');
                // Now that's a lot of config...
                $sql_ary = array();
                $sql_ary[] = array('config_name' => 'tracking_time', 'config_value' => time());
                $sql_ary[] = array('config_name' => 'num_invitations', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'num_registrations', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'enable', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'enable_key', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'key_group', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'key_group_default', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'remove_newly_registered', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'invite_require_activation', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'invite_multiple', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'prevent_abuse', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'invite_confirm_code', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'set_cookie', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'enable_email_identification', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'invite_search_allowed', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'queue_time', 'config_value' => 300);
                $sql_ary[] = array('config_name' => 'message_min_chars', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'message_max_chars', 'config_value' => 1000);
                $sql_ary[] = array('config_name' => 'subject_min_chars', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'subject_max_chars', 'config_value' => 50);
                $sql_ary[] = array('config_name' => 'confirm', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'confirm_method', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'zebra', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'invite_language_select', 'config_value' => 'opt');
                $sql_ary[] = array('config_name' => 'invite_priority_flag', 'config_value' => MAIL_NORMAL_PRIORITY);
                $sql_ary[] = array('config_name' => 'display_navigation', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_registration', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'autohide_valid_key', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'advanced_statistics', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_t_inviter', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'display_t_invite', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_t_register', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_p_inviter', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_p_invite', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_p_register', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_m_inviter', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_m_invite', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'display_m_register', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'enable_limit_daily', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'limit_daily_basic', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'limit_daily_registrations', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'limit_daily_registrations_invitations', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'limit_daily_posts', 'config_value' => 200);
                $sql_ary[] = array('config_name' => 'limit_daily_posts_invitations', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'limit_daily_topics', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'limit_daily_topics_invitations', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'limit_daily_memberdays', 'config_value' => 100);
                $sql_ary[] = array('config_name' => 'limit_daily_memberdays_invitations', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'enable_limit_total', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'limit_total_basic', 'config_value' => 100);
                $sql_ary[] = array('config_name' => 'limit_total_registrations', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'limit_total_registrations_invitations', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'limit_total_posts', 'config_value' => 200);
                $sql_ary[] = array('config_name' => 'limit_total_posts_invitations', 'config_value' => 5);
                $sql_ary[] = array('config_name' => 'limit_total_topics', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'limit_total_topics_invitations', 'config_value' => 2);
                $sql_ary[] = array('config_name' => 'limit_total_memberdays', 'config_value' => 100);
                $sql_ary[] = array('config_name' => 'limit_total_memberdays_invitations', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'enable_cash', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'cash_invite', 'config_value' => 10);
                $sql_ary[] = array('config_name' => 'cash_id_invite', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'cash_register', 'config_value' => 20);
                $sql_ary[] = array('config_name' => 'cash_id_register', 'config_value' => 1);
                $sql_ary[] = array('config_name' => 'enable_ultimate_points', 'config_value' => 0);
                $sql_ary[] = array('config_name' => 'ultimate_points_invite', 'config_value' => 5);
                $sql_ary[] = array('config_name' => 'ultimate_points_register', 'config_value' => 20);
                $db->sql_multi_insert($table_prefix . 'invite_config ', $sql_ary);
            }
            // As version 0.5.4 doesn't support UMIL we have to make updating work correctly...
            if (isset($config[$version_config_name])) {
                if (version_compare($config[$version_config_name], '0.5.4', '==')) {
                    if (!class_exists('umil')) {
                        include $phpbb_root_path . 'umil/umil.' . $phpEx;
                        if (!isset($umil) || !is_object($umil)) {
                            $umil = new umil();
                        }
                    }
                    // Remove old modules with categories first to not cause any error
                    $umil->module_remove(array(array('acp', 'ACP_INVITE', 'ACP_INVITE'), array('acp', false, 'ACP_INVITE_LOG'), array('acp', false, 'ACP_INVITE'), array('ucp', false, 'UCP_INVITE_INVITE'), array('ucp', false, 'UCP_INVITE')));
                    // Add the new modules
                    $umil->module_add(array(array('acp', 'ACP_CAT_DOT_MODS', 'ACP_INVITE'), array('acp', 'ACP_INVITE', array('module_basename' => 'invite', 'module_langname' => 'ACP_INVITE_SETTINGS', 'module_mode' => 'settings', 'module_auth' => 'acl_a_invite_settings')), array('acp', 'ACP_INVITE', array('module_basename' => 'invite', 'module_langname' => 'ACP_INVITE_TEMPLATES', 'module_mode' => 'templates', 'module_auth' => 'acl_a_invite_settings')), array('acp', 'ACP_INVITE', array('module_basename' => 'invite', 'module_langname' => 'ACP_INVITE_LOG', 'module_mode' => 'log', 'module_auth' => 'acl_a_invite_log')), array('ucp', '', 'UCP_INVITE'), array('ucp', 'UCP_INVITE', array('module_basename' => 'invite', 'module_langname' => 'UCP_INVITE_INVITE', 'module_mode' => 'invite', 'module_auth' => 'acl_u_send_invite'))));
                }
            }
            // Transfer existing invitation data if wished
            if ($transfer_invitation_data) {
                transfer_invitation_data();
                // Send a message that the command was successful
                return 'Transferring invitation data';
            }
            // Send a message that the command was successful
            return 'Populating database tables';
            break;
        case 'uninstall':
            break;
    }
}