}
// Get client session
if (is_object($session) && !empty($moderator_user_id) && !empty($current_user->id) && $current_user->is_admin === 'y') {
    if ($current_user->_db_getList('id = ' . $moderator_user_id, 1)) {
        $xmlwriter->setHeaderMessage('OK');
        $xmlwriter->setHeaderStatus(0);
        $current_user->_db_freeList();
        // Check categories
        $categories_new = array();
        $categories_array = explode(',', $categories);
        foreach ($categories_array as $category_id) {
            $category_id = trim($category_id);
            if (pcpin_ctype_digit($category_id) && $category->_db_getList('id', 'id = ' . $category_id, 1)) {
                // Category exists
                $categories_new[] = $category_id;
                $category->_db_freeList();
            }
        }
        $categories_new = array_unique($categories_new);
        sort($categories_new);
        // Check rooms
        $rooms_new = array();
        $rooms_array = explode(',', $rooms);
        foreach ($rooms_array as $room_id) {
            $room_id = trim($room_id);
            if (pcpin_ctype_digit($room_id) && $room->_db_getList('id', 'id = ' . $room_id, 1)) {
                // Room exists
                $rooms_new[] = $room_id;
                $room->_db_freeList();
            }
        }