Table_Item
Package: Db\Table
- class Table_Item
extends Omeka_Db_Table
- Table_Item::filterBySearch($select, $params)
Run the search filter on the SELECT statement
- Parameters:
$select –
$params –
- Table_Item::_simpleSearch($select, $terms)
Build the simple search.
The search query consists of a derived table that is INNER JOINed to the main SQL query. That derived table is a union of two SELECT queries. The first query searches the FULLTEXT index on the items_elements table, and the second query searches the tags table for every word in the search terms and assigns each found result a rank of ‘1’. That should make tagged items show up higher on the found results list for a given search.
- Parameters:
$select (
Zend_Db_Select
) –$terms –
- Table_Item::_advancedSearch($select, $terms)
Build the advanced search.
- Parameters:
$select (
Zend_Db_Select
) –$terms –
- Table_Item::filterByCollection($select, $collections)
Filter the SELECT statement based on an item’s collection
- Parameters:
$select (
Zend_Db_Select
) –$collections (
Collection|int|array
) – Either a Collection object, or the collection id or an array of collection object or id.
- Table_Item::filterByItemType($select, $types)
Filter the SELECT statement based on the item Type
- Parameters:
$select (
Zend_Db_Select
) –$types (
Type|int|string|array
) – One or multiple Item Type object, Item Type ID or Item Type name.
- Table_Item::filterByTags($select, $tags)
Query must look like the following in order to correctly retrieve items that have all the tags provided (in this example, all items that are tagged both ‘foo’ and ‘bar’):
SELECT i.id FROM omeka_items i WHERE ( i.id IN (SELECT tg.record_id as id FROM omeka_records_tags tg INNER JOIN omeka_tags t ON t.id = tg.tag_id WHERE t.name = ‘foo’ AND tg.record_type = ‘Item’) AND i.id IN (SELECT tg.record_id as id FROM omeka_records_tags tg INNER JOIN omeka_tags t ON t.id = tg.tag_id WHERE t.name = ‘bar’ AND tg.record_type = ‘Item’) ) …
- Parameters:
$select –
$tags –
- Table_Item::filterByExcludedTags($select, $tags)
Filter SELECT statement based on items that are not tagged with a specific set of tags
- Parameters:
$select –
$tags –
- Table_Item::filterByHasDerivativeImage($select, $hasDerivativeImage = true)
Filter SELECT statement based on whether items have a derivative image file.
- Parameters:
$select –
$hasDerivativeImage (
bool
) – Whether items should have a derivative image file.
- Table_Item::applySearchFilters($select, $params)
- Parameters:
$select –
$params –
- Table_Item::applySorting($select, $sortField, $sortDir)
Enables sorting based on ElementSet,Element field strings.
- Parameters:
$select (
Omeka_Db_Select
) –$sortField (
string
) – Field to sort on$sortDir (
string
) – Sorting direction (ASC or DESC)
- Table_Item::getSelect()
This is a kind of simple factory that spits out proper beginnings of SQL statements when retrieving items
- Returns:
Omeka_Db_Select
- Table_Item::findFirst()
Return the first item accessible to the current user.
- Returns:
Item|null
- Table_Item::findLast()
Return the last item accessible to the current user.
- Returns:
Item|null
- Table_Item::findPrevious($item)
- Parameters:
$item –
- Table_Item::findNext($item)
- Parameters:
$item –
- Table_Item::findNearby($item, $position = 'next')
- Parameters:
$item –
$position –