die;
        }
        // extend/upgrade user
        $user = UserPeer::loadUserById($userId);
        $newExpiryDate = strtotime('+' . $order->days . ' days');
        if ($user->level == 'paid user' || $user->level == 'admin') {
            // add onto existing period
            $existingExpiryDate = strtotime($user->paidExpiryDate);
            // if less than today just revert to now
            if ($existingExpiryDate < time()) {
                $existingExpiryDate = time();
            }
            $newExpiryDate = (int) $existingExpiryDate + (int) ($order->days * (60 * 60 * 24));
        }
        $newUserType = 'paid user';
        if ($user->level == 'admin') {
            $newUserType = 'admin';
        }
        // update order status to paid
        $dbUpdate = new DBObject("users", array("level", "lastPayment", "paidExpiryDate"), 'id');
        $dbUpdate->level = $newUserType;
        $dbUpdate->lastPayment = date("Y-m-d H:i:s", time());
        $dbUpdate->paidExpiryDate = date("Y-m-d H:i:s", $newExpiryDate);
        $dbUpdate->id = $userId;
        $effectedRows = $dbUpdate->update();
        if ($effectedRows === false) {
            // failed to update user
            die;
        }
    }
}