* @package Gedmo\Sluggable\Mapping\Event\Adapter * @subpackage ODM * @link http://www.gediminasm.org * @license MIT License (http://www.opensource.org/licenses/mit-license.php) */ final class ODM extends BaseAdapterODM { /** * Loads the similar slugs * * @param DocumentManager $dm * @param object $object * @param ClassMetadataInfo $meta * @param array $config * @param string $slug * @return array */ public function getSimilarSlugs(DocumentManager $dm, $object, ClassMetadataInfo $meta, array $config, $slug) { $qb = $dm->createQueryBuilder($meta->name); $identifier = $this->extractIdentifier($dm, $object); if ($identifier) { $qb->field($meta->identifier)->notEqual($identifier); } $qb->where("function() { return this.{$config['slug']}.indexOf('{$slug}') === 0; }"); $q = $qb->getQuery(); $q->setHydrate(false); $result = $q->execute(); if ($result instanceof Cursor) { $result = $result->toArray(); } return $result; } }