Overview

Namespaces

  • Charcoal
    • Loader
    • Model
      • Service
      • ServiceProvider
    • Source
      • Database
    • Validator

Classes

  • AbstractSource
  • DatabaseSource
  • DatabaseSourceConfig
  • Filter
  • Order
  • Pagination
  • SourceConfig

Interfaces

  • DatabaseSourceInterface
  • FilterInterface
  • OrderInterface
  • PaginationInterface
  • SourceInterface
  • StorableInterface

Traits

  • StorableTrait
  • Overview
  • Namespace
  • Class

Interface SourceInterface

Direct known implementers

Charcoal\Source\AbstractSource

Indirect known implementers

Charcoal\Source\DatabaseSource
Namespace: Charcoal\Source
Located at Charcoal/Source/SourceInterface.php
Methods summary
public Charcoal\Source\AbstractSource
# setModel( Charcoal\Model\ModelInterface $model )

Parameters

$model
The source's model.

Returns

Charcoal\Source\AbstractSource
Chainable
public Charcoal\Model\ModelInterface
# model( )

Returns

Charcoal\Model\ModelInterface
public Charcoal\Source\StorableInterface
# loadItem( mixed $ident, Charcoal\Source\StorableInterface $item = null )

Parameters

$ident
The ID of the item to load.
$item
Optional item to load into.

Returns

Charcoal\Source\StorableInterface
public array
# loadItems( Charcoal\Source\StorableInterface $item = null )

Parameters

$item
The item type to load.

Returns

array
public mixed
# saveItem( Charcoal\Source\StorableInterface $item )

Save an item (create a new row) in storage.

Save an item (create a new row) in storage.

Parameters

$item
The object to save.

Returns

mixed
The created item ID, or false in case of an error.
public boolean
# updateItem( Charcoal\Source\StorableInterface $item, array $properties = null )

Update an item in storage.

Update an item in storage.

Parameters

$item
The object to update.
$properties
The list of properties to update, if not all.

Returns

boolean
Success / Failure
public boolean
# deleteItem( Charcoal\Source\StorableInterface $item = null )

Delete an item from storage

Delete an item from storage

Parameters

$item
Optional item to delete. If none, the current model object will be used.

Returns

boolean
Success / Failure
public ColelectionLoader
# setProperties( array $properties )

Parameters

$properties
The properties.

Returns

ColelectionLoader
Chainable
public array
# properties( )

Returns

array
public CollectionLoader
# addProperty( string $property )

Parameters

$property
Property ident.

Returns

CollectionLoader
Chainable
public Collection
# setFilters( array $filters )

Parameters

$filters
The filters.

Returns

Collection
Chainable
public array
# filters( )

Returns

array
public CollectionLoader
# addFilter( string|array|Charcoal\Source\Filter $param, mixed $val = null, array $options = null )

Add a collection filter to the loader.

Add a collection filter to the loader.

Parameters

$param
The filter parameter. May the "filter property" or an array / object.
$val
Optional. Val, only used if the first argument is a string.
$options
Optional. Options, only used if the first argument is a string.

Returns

CollectionLoader
(Chainable)
public CollectionLoader
# setOrders( array $orders )

Parameters

$orders
The orders.

Returns

CollectionLoader
Chainable
public array
# orders( )

Returns

array
public CollectionLoader
# addOrder( string|array|Charcoal\Source\Order $param, string $mode = 'asc', array $options = null )

Parameters

$param
The order parameter. May the "order property" or an array / object.
$mode
Optional. Mode, only used if the first argument is a string.
$options
Optional. Options, only user if the first argument is a string.

Returns

CollectionLoader
Chainable
public CollectionLoader
# setPagination( mixed $param )

Parameters

$param
The pagination information.

Returns

CollectionLoader
Chainable
public Charcoal\Source\Pagination
# pagination( )

Returns

Charcoal\Source\Pagination
public CollectionLoader
# setPage( integer $page )

Parameters

$page
The page number. Starts with 0.

Returns

CollectionLoader
Chainable
public integer
# page( )

Returns

integer
public CollectionLoader
# setNumPerPage( integer $num )

Parameters

$num
The number of item to retrieve per page.

Returns

CollectionLoader
Chainable
public integer
# numPerPage( )

Returns

integer
API documentation generated by ApiGen