protected function getSectionFilterQuery( $sectionIdent )
    {
        if ( empty( $sectionIdent ) )
        {
            return null;
        }

        if ( is_array( $sectionIdent ) )
        {
            $sectionQueryParts = array();
            foreach ( $sectionIdent as $sectionID )
            {
                $sectionID = trim( $sectionID );
                if ( ctype_digit( $sectionID ) )
                {
                    $sectionQueryParts[] = eZSolr::getMetaFieldName( 'section_id' ) . ':' . $sectionID;
                }
                else
                {
                    eZDebug::writeError( "Unknown section_id filtering parameter: $sectionID", __METHOD__ );
                }
            }

            return implode( ' OR ', $sectionQueryParts );
        }

        $sectionIdent = trim( $sectionIdent );
        if ( ctype_digit( $sectionIdent ) )
        {
            return eZSolr::getMetaFieldName( 'section_id' ) . ':' . $sectionIdent;
        }

        eZDebug::writeError( 'No valid section id', __METHOD__ );

        return null;
    }