install/schemas/upgrade/1.1.6-1.1.7.php
author Dan
Sun, 28 Mar 2010 23:10:46 -0400
changeset 1227 bdac73ed481e
parent 1181 91911e183685
permissions -rw-r--r--
Going ahead with the switch to tabs. This is a major coding standards change! If any unusual parser bugs show up, check this changeset. Converted all .php, .js, .tpl, .css, and .json files and did basic testing.

<?php

// Migrate usernames in the logs table

global $db, $session, $paths, $template, $plugins; // Common objects

$q = $db->sql_query('SELECT user_id, username FROM ' . table_prefix . 'users;');
if ( !$q )
	$db->_die();

$map = array();
while($row = $db->fetchrow())
{
	$map[ $row['username'] ] = $row['user_id'];
}
$db->free_result();

$q = $db->sql_query('SELECT author FROM ' . table_prefix . 'logs WHERE author_uid = 1;');
if ( !$q )
	$db->_die();

$updated = array();

while ( $row = $db->fetchrow($q) )
{
	if ( isset($map[ $row['author'] ]) && !is_valid_ip($row['author']) && !in_array($row['author'], $updated) )
	{
		$author = $db->escape($row['author']);
		$sql = "UPDATE " . table_prefix . "logs SET author_uid = {$map[ $row['author'] ]} WHERE author = '$author';";
		if ( !$db->sql_query($sql) )
			$db->_die();
		$updated[] = $row['author'];
	}
}