SSViewer_BasicIteratorSupport
class SSViewer_BasicIteratorSupport implements TemplateIteratorProvider
Defines an extra set of basic methods that can be used in templates that are not defined on sub-classes of {@link ViewableData}.
Methods
Called by SSViewer to get a list of iterator variables to expose to the template, the instance method to call on an instance of this class to get the value for those variables, and the class to use for casting the returned value for use in a template
Set the current iterator properties - where we are on the iterator.
Returns true if this object is the first in a set.
Returns true if this object is the last in a set.
Returns 'first' or 'last' if this is the first or last object in the set.
Return true if this object is between the first & last objects.
Return 'middle' if this object is between the first & last objects.
Return true if this object is an even item in the set.
Return true if this is an odd item in the set.
Return 'even' or 'odd' if this object is in an even or odd position in the set respectively.
Return the numerical position of this object in the container set. The count starts at $startIndex.
Return the position of this item from the last item in the list. The position of the final item is $endIndex, which defaults to 1.
Return the total number of "sibling" items in the dataset.
Returns the modulus of the numerical position of the item in the data set.
Returns true or false depending on if the pos of the iterator is a multiple of a specific number.
Details
at line 227
static array
get_template_iterator_variables()
Called by SSViewer to get a list of iterator variables to expose to the template, the instance method to call on an instance of this class to get the value for those variables, and the class to use for casting the returned value for use in a template
If the method to call is not included for a particular template variable, a method named the same as the template variable will be called
If the casting class is not specified for a particular template variable, ViewableData::$default_cast is used
The first letter of the template variable is case-insensitive. However the method name is always case sensitive.
at line 251
iteratorProperties(int $pos, int $totalItems)
Set the current iterator properties - where we are on the iterator.
at line 261
bool
First()
Returns true if this object is the first in a set.
at line 270
bool
Last()
Returns true if this object is the last in a set.
at line 279
string|null
FirstLast()
Returns 'first' or 'last' if this is the first or last object in the set.
at line 290
bool
Middle()
Return true if this object is between the first & last objects.
at line 299
string|null
MiddleString()
Return 'middle' if this object is between the first & last objects.
at line 310
bool
Even(int $startIndex = 1)
Return true if this object is an even item in the set.
The count starts from $startIndex, which defaults to 1.
at line 320
bool
Odd(int $startIndex = 1)
Return true if this is an odd item in the set.
at line 330
string
EvenOdd(int $startIndex = 1)
Return 'even' or 'odd' if this object is in an even or odd position in the set respectively.
at line 341
int
Pos(int $startIndex = 1)
Return the numerical position of this object in the container set. The count starts at $startIndex.
The default is the give the position using a 1-based index.
at line 352
int
FromEnd(integer $endIndex = 1)
Return the position of this item from the last item in the list. The position of the final item is $endIndex, which defaults to 1.
at line 361
int
TotalItems()
Return the total number of "sibling" items in the dataset.
at line 372
int
Modulus($mod, $startIndex = 1)
Returns the modulus of the numerical position of the item in the data set.
The count starts from $startIndex, which defaults to 1.
at line 384
bool
MultipleOf(int $factor, int $offset = 1)
Returns true or false depending on if the pos of the iterator is a multiple of a specific number.
So, <% if MultipleOf(3) %> would return true on indexes: 3,6,9,12,15, etc. The count starts from $offset, which defaults to 1.