<?
$sub_menu = "200200";
include_once('./_common.php');

check_demo();

if (!$ok)
    alert();

if ($is_admin != 'super')
    alert('포인트 정리는 최고관리자만 가능합니다.');

$g4['title'] = '포인트 정리';
include_once('./admin.head.php');
echo '<span id="ct"></span>';
include_once('./admin.tail.php');
flush();

echo '<script>document.getElementById(\'ct\').innerHTML += \'<p>포인트 정리중...</p>\';</script>'.PHP_EOL;
flush();

$max_count = 50;

// 테이블 락을 걸고
$sql = " LOCK TABLES {$g4['member_table']} WRITE, {$g4['point_table']} WRITE ";
sql_query($sql);

$sql = " select mb_id, count(po_point) as cnt
            from {$g4['point_table']}
            group by mb_id
            having cnt > {$max_count}+1
            order by cnt ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
    $count = 0;
    $total = 0;
    $sql2 = " select po_id, po_point
                  from {$g4['point_table']}
                  where mb_id = '{$row['mb_id']}'
                  order by po_id desc
                  limit {$max_count}, {$row['cnt']} ";
    $result2 = sql_query($sql2);
    for ($k=0; $row2=sql_fetch_array($result2); $k++)
    {
        $count++;
        $total += $row2['po_point'];

        sql_query(" delete from {$g4['point_table']} where po_id = '{$row2['po_id']}' ");
    }

    insert_point($row['mb_id'], $total, '포인트 {$count}건 정리', '@clear', $row['mb_id'], $g4['time_ymd']."-".uniqid(""));

    $str = $row['mb_id']."님 포인트 내역 ".number_format($count)."건 ".number_format($total)."점 정리<br>";
    echo '<script>document.getElementById(\'ct\').innerHTML += \''.$str.'\';</script>'.PHP_EOL;
    flush();
}

// 테이블 락을 풀고
$sql = " UNLOCK TABLES ";
sql_query($sql);

echo '<script>document.getElementById(\'ct\').innerHTML += \'<p>총 '.$i.'건의 회원포인트 내역이 정리 되었습니다.</p>\';</script>'.PHP_EOL;
?>
