PHP Класс Wallabag\CoreBundle\Repository\EntryRepository

Наследование: extends Doctrine\ORM\EntityRepository
Показать файл Открыть проект

Открытые методы

Метод Описание
countAllEntriesByUserIdAndTagId ( integer $userId, integer $tagId ) : integer Count all entries for a tag and a user.
countAllEntriesByUsername ( integer $userId ) : integer Count all entries for a user.
findAllByTagId ( integer $userId, integer $tagId ) : array Find all entries that are attached to a give tag id.
findByUrlAndUserId ( $url, $userId ) : Entry | boolean Find an entry by its url and its owner.
findDistinctLanguageByUser ( integer $userId ) : array Find distinct language for a given user.
findEntries ( integer $userId, boolean $isArchived = null, boolean $isStarred = null, string $sort = 'created', string $order = 'ASC', integer $since, string $tags = '' ) : array Find Entries.
findOneByUsernameAndNotArchived ( string $username ) : Entry Used only in test case to get the right entry associated to the right user.
findOneWithTags ( integer $userId ) : Entry Fetch an entry with a tag. Only used for tests.
getBuilderForAllByUser ( integer $userId ) : QueryBuilder Retrieves all entries for a user.
getBuilderForArchiveByUser ( integer $userId ) : QueryBuilder Retrieves read entries for a user.
getBuilderForStarredByUser ( integer $userId ) : QueryBuilder Retrieves starred entries for a user.
getBuilderForUnreadByUser ( integer $userId ) : QueryBuilder Retrieves unread entries for a user.
getBuilderForUntaggedByUser ( integer $userId ) : QueryBuilder Retrieves untagged entries for a user.
removeTag ( integer $userId, Wallabag\CoreBundle\Entity\Tag $tag ) Remove a tag from all user entries.
removeTags ( integer $userId, Array $tags ) Remove tags from all user entries.

Приватные методы

Метод Описание
getBuilderByUser ( integer $userId ) : QueryBuilder Return a query builder to used by other getBuilderFor* method.

Описание методов

countAllEntriesByUserIdAndTagId() публичный Метод

Count all entries for a tag and a user.
public countAllEntriesByUserIdAndTagId ( integer $userId, integer $tagId ) : integer
$userId integer
$tagId integer
Результат integer

countAllEntriesByUsername() публичный Метод

Count all entries for a user.
public countAllEntriesByUsername ( integer $userId ) : integer
$userId integer
Результат integer

findAllByTagId() публичный Метод

Find all entries that are attached to a give tag id.
public findAllByTagId ( integer $userId, integer $tagId ) : array
$userId integer
$tagId integer
Результат array

findByUrlAndUserId() публичный Метод

If it exists, return the entry otherwise return false.
public findByUrlAndUserId ( $url, $userId ) : Entry | boolean
$url
$userId
Результат Entry | boolean

findDistinctLanguageByUser() публичный Метод

Used to build the filter language list.
public findDistinctLanguageByUser ( integer $userId ) : array
$userId integer User id
Результат array

findEntries() публичный Метод

Find Entries.
public findEntries ( integer $userId, boolean $isArchived = null, boolean $isStarred = null, string $sort = 'created', string $order = 'ASC', integer $since, string $tags = '' ) : array
$userId integer
$isArchived boolean
$isStarred boolean
$sort string
$order string
$since integer
$tags string
Результат array

findOneByUsernameAndNotArchived() публичный Метод

Used only in test case to get the right entry associated to the right user.
public findOneByUsernameAndNotArchived ( string $username ) : Entry
$username string
Результат Entry

findOneWithTags() публичный Метод

Fetch an entry with a tag. Only used for tests.
public findOneWithTags ( integer $userId ) : Entry
$userId integer
Результат Entry

getBuilderForAllByUser() публичный Метод

Retrieves all entries for a user.
public getBuilderForAllByUser ( integer $userId ) : QueryBuilder
$userId integer
Результат QueryBuilder

getBuilderForArchiveByUser() публичный Метод

Retrieves read entries for a user.
public getBuilderForArchiveByUser ( integer $userId ) : QueryBuilder
$userId integer
Результат QueryBuilder

getBuilderForStarredByUser() публичный Метод

Retrieves starred entries for a user.
public getBuilderForStarredByUser ( integer $userId ) : QueryBuilder
$userId integer
Результат QueryBuilder

getBuilderForUnreadByUser() публичный Метод

Retrieves unread entries for a user.
public getBuilderForUnreadByUser ( integer $userId ) : QueryBuilder
$userId integer
Результат QueryBuilder

getBuilderForUntaggedByUser() публичный Метод

Retrieves untagged entries for a user.
public getBuilderForUntaggedByUser ( integer $userId ) : QueryBuilder
$userId integer
Результат QueryBuilder

removeTag() публичный Метод

We need to loop on each entry attached to the given tag to remove it, since Doctrine doesn't know EntryTag entity because it's a ManyToMany relation. It could be faster with one query but I don't know how to retrieve the table name entry_tag which can have a prefix: DELETE et FROM entry_tag et WHERE et.entry_id IN ( SELECT e.id FROM entry e WHERE e.user_id = :userId ) AND et.tag_id = :tagId
public removeTag ( integer $userId, Wallabag\CoreBundle\Entity\Tag $tag )
$userId integer
$tag Wallabag\CoreBundle\Entity\Tag

removeTags() публичный Метод

Remove tags from all user entries.
public removeTags ( integer $userId, Array $tags )
$userId integer
$tags Array