Documentation

Application

Interfaces, Classes and Traits

AudioAdapter
Base audio adapter
BaseAdapter
Base adapter class
FlashAdapter
Base flv adapter
GalleryAdapter
Base gallery adapter
ImageAdapter
Base image adapter
PdfAdapter
Base pdf adapter
QuicktimeAdapter
Base quicktime adapter
VimeoAdapter
Base Vimeo video adapter. The adapter is a placeholder and provides links back to the parent vimeo video
YoutubeAdapter
Base YouTube video adapter. The adapter is a placeholder and provides links back to the parent youtube video
AudioAdapter
Base audio adapter
ImageAdapter
Base image adapter
PdfAdapter
Base pdf adapter
YoutubeAdapter
Base YouTube video adapter. The adapter is a placeholder and provides links back to the parent youtube video
FauxLock
FauxLock doesn't actually lock anything.
MediaPlaceholder
Placeholder us used for media objects that are embedded via URL
Collection
FauxLock
FauxLock doesn't actually lock anything.
MediaPlaceholder
Placeholder us used for media objects that are embedded via URL
BaseEntryField
FileEntryField
RelatedcontentEntryField
RelatedentriesEntryField
SecuretextEntryField
SelectentryEntryField
TextEntryField
HaltException
LicenseException
RenderException
RenderException
Paginator
Builds off pagination returned by builder to create a simple pagination object that can be looped over.
Html
Html processing static class Mostly just helpers
Paginator
Builds off pagination returned by builder to create a simple pagination object that can be looped over.
Text
Text processing static class Mostly just helpers
Time
Time helper class
Url
URL processing static class Mostly just helpers
Response
Response handler, makes building responses easier
Request
Extend the base request class to add some helper methods.
Response
Response handler, makes building responses easier
AllInterceptor
AllInterceptor runs for ALL requests. Basically just checks cache status and sets a few headers.
License
Message
Lint message
CheckInheritMacro
Special check, looks at macro inheritance This is a error level
CheckAbstract
Lint check abstract class. All checks must inherit from this abstract
CheckBaseMeta
Check to see if the template is using the builtin meta This is a warning level
CheckBrowserSniffer
Check for browser sniffing This is a error level
CheckHttpCdn
Look for plain Http CDN calls This is a error level
CheckMetaVars
Check to see if the template is using the builtin meta This is a warning level
CheckRandomFilter
Check for random filter This is a error level
CheckRawFilterWithFilters
Look for raw filter on items that already have filters This is a error level
CheckSearchResults
Check to see if the advanced search results template is using the proper result handler This is a warning level
CheckSplitFilter
Check the split fliter, it requires a delimiter now This is a error level
CheckTabs
Check for the existence of tabs, instead of spaces.
CheckToTimeFilter
Check for toTime filter This is a error level
CheckUidNamespace
Check for namespace on UID This is a error level
CheckVideoJs
Look for VideoJS This is a error level
CheckWhereUpperUid
Check case on UID in where statements This is a error level
Twig
Twig linter base. Loads checks and collates messages.
Message
Lint message
CheckAbstract
Lint check abstract class. All checks must inherit from this abstract
CheckBaseMeta
Check to see if the template is using the builtin meta This is a warning level
CheckMetaVars
Check to see if the template is using the builtin meta This is a warning level
CheckSearchResults
Check to see if the advanced search results template is using the proper result handler This is a warning level
CheckSplitFilter
Check the split fliter, it requires a delimiter now This is a error level
CheckTabs
Check for the existence of tabs, instead of spaces.
CheckUidNamespace
Check for namespace on UID This is a error level
CheckWhereUpperUid
Check case on UID in where statements This is a error level
BaseListener
Provides base Listener class
BaseListener
Provides base Listener class
ContentTypeListener
ContentTypeListener watches for json requests and forwards the information to the appropriate handler
GenericViewListener
GenericView watches dispatcher actions.
RenderListener
RenderListener watches for the pre render call.
StaticViewListener
StaticViewListener watches dispatcher actions.
Builder
Builder
EmptyResultSet
Defines a fully empty result set that can still be iterated over and provide the same callbacks as a standard result set, though they don't return anything.
QueryDebugger
Query debugger, prints executed queries to the debug log.
Resultset
QueryDebugger
Query debugger, prints executed queries to the debug log.
Pagination
Pagination accepts a pagination object generated by the Builder system to create a loopable set of objects you can include in a template.
Url
Pagination URL
Result
Basic result class. This object is substituted for a CEO model if the content object isn't found. This can happen if the content hasn't been synced in some time.
BaseService
Base Service class
BaseTransform
Default transformer, used when no transformer is defined for a pipeline. Simply returns what is passed.
TransformService
Transform pipeline master service.
ApiService
Base Service class
BaseService
Base Service class
BaseTransform
Default transformer, used when no transformer is defined for a pipeline. Simply returns what is passed.
ConnectorService
Connector service Handles incoming data from CEO, parses and runs pipeline.
InterceptorService
The Interceptor Service allows you to extend and add interceptors at runtime, when normally they wouldn't be able to be modified.
MinifierService
Base Service class
RegistryService
Store and retrieve arbitrary data. With the registry service you don't need to encode/decode your data. It's smart enough to know what you've provided and handle it appropriately.
StaticViewService
The StaticViewService is responsible for managing the storage and invalidation of static views. It is the core of CEO's dynamically-static (statically-dynamic?) caching system.
TransformService
Transform pipeline master service.
TransformPipeline
Transform pipline Please use the Transform service to build pipelines
StaticBase
Helpers for static classes loaded via services
Timer
Execution timer class.
StaticBase
Helpers for static classes loaded via services
Timer
Execution timer class.
BaseEscaper
EmbedsEscaper
Parse embedded media in a string, return raw string {{ article.content|e('embeds') }}
RssEscaper
Clear out characters that bork RSS feeds ``` {{ article.content|e('rss') }} ```
StripEscaper
Strip embedded media in a string, return raw string {{ article.content|e('strip') }}
Asset
Asset replicates Gryphon's original Asset filter, providing asset urls depending on application location.
BaseFilter
All custom Twig filters inherit from the base filter which ensures they are properly enabled
Clip
Clip provides the 'clip' twig filter.
Coerce
Typeless languages are kind of a pain. This filter allows you to coerce a twig variable into a fixed primitive type.
Date
Date overrides the Twig 'date' filter. As all dates are stored and handled in UTC, this converts them to the local timezone before display.
Extract
Extract is a dropin replacement for Gryphon's extract filter, using the new paragraph extraction functionality.
Int2Noun
Provides Gryphon compatible int2noun filter.
JsonDecode
Twig doesn't provide a JSON Decode method, which seems odd.
LocalDate
LocalDate provides the 'localDate' twig filter.
Push
Push provides the 'push' twig filter.
QualifiedUrl
Provides Gryphon compatible qualifiedUrl filter.
StripTags
StripTags overrides Twig's striptags filter. We override because the striptags filter isn't HTML safe, and while we're stripping tags, we're not stripping non-escaped characters, like  .
TimeSince
TimeSince provides the 'timeSince' twig filter.
Transform
Creates an easier to use filter for imgix calls.
Url
Url replicates Gryphon's original URL filter, providing absolute urls regardless of leading slash.
BaseFunction
CeoFunction
Provides whitelisted access to injected services
CsrfTokenFunction
Provides CSRF Form token in a simple function
DecryptFunction
Decrypt cypher text from CEO. Relies on the existing PSK.
DelayRenderFunction
DelayRender allows you to force rendered Twig code to the footer of the site. Helpful for javascript.
EmbedDisableFunction
Allows the view to directly disable embed middleware.
ArticleFluentFetch
Provides extra sugar for article fetches
BaseFluentFetch
Base fluent fetch interface provides the inheriting class for custom fetch interfaces and the fallback if one isn't provided.
DefaultFluentFetch
Provides extra sugar for fluent fetches
EntryFluentFetch
Provides extra sugar for entry fetches
MediaFluentFetch
Provides extra sugar for media fetches
PageFluentFetch
Provides extra sugar for page fetches
PostFluentFetch
Provides extra sugar for post fetches
FetchFunction
The fetch function sort of replicates Gryphon's original fetch tag with a number of supercharged changes.
ManagerFunction
Fetch a single manager handler allowing you to interact with it.
MergeFunction
Merge two or more result sets.
PackStylesFunction
Pack a hash of CSS styles into a single attribute.
StaticViewFunction
Allows the view to directly disable static view cache.
UnpackStylesFunction
Unpack a CSS style string into a hash.
AssetPipelineMiddleware
Load asset pipeline
BaseInterceptor
BaseInterceptor provides base functionality for individual interceptors.
BaseViewMiddleware
All view middleware, with the exception of the CacheMiddleware, must derive from the BaseViewMiddleware. The BaseViewMiddleware's register function ensures that the middleware priorities are maintained.
BeaconMiddleware
Inserts the beacon tracking js used to track views within CEO.
CacheMiddleware
CacheMiddleware does the actual static template cache call for a given URI. It does not check to see if an item can be cached, but leaves that up to the caching service.
CompatMiddleware
Manage compatibility layer specific translations
DebugMiddleware
Checks the debug level to see if you're in debug mode.
EmbedMiddleware
Embed middleware handle the replacement of the embed placeholders. Replacement templates are searched in the following order:
FilterContentMiddleware
Scans content as it is being processed and runs user defined content filters on the resulting data.
InterceptorMiddleware
InterceptorMiddleware allows the client template to provide a callback for a route.
MediaRewriteMiddleware
Scans content as it is being processed and automatically rewrites older Gryphon-style media URLs and turns them into CEO-style media URLs assuming that it can find the media file.
PreviewMiddleware
Checks to see if you have preview abilities;
SeoMiddleware
Manage automatic SEO translations and injections for articles and pages.
TimerMiddleware
The most basic of example middleware. Injects the timer value into the generated source.
FetchHandler
FetchNode
FetchNode for FetchTag
FetchTag
Defines the 'fetch' template tag that provides backward compatibility with Gryphon-based templates. Objects returned will be wrapped in object compatibility wrappers.
HelperHandler
HelperNode
HelperNode for HelperTag
Day
Week
Calendar
Config
Provides a Gryphon compatible config helper to access the original site Gryphon config, accepts the colon notation.
Registry
Provides a Gryphon compatible registry helper
Request
HelperTag
Defines the 'helper' template tag that provides backward compatibility with Gryphon-based templates. Most items will simply return compatible service objects
BaseFilter
All custom Twig filters inherit from the base filter which ensures they are properly enabled
Clip
Clip provides the 'clip' twig filter.
Date
Date overrides the Twig 'date' filter. As all dates are stored and handled in UTC, this converts them to the local timezone before display.
Extract
Extract is a dropin replacement for Gryphon's extract filter, using the new paragraph extraction functionality.
Int2Noun
Provides Gryphon compatible int2noun filter.
JsonDecode
Twig doesn't provide a JSON Decode method, which seems odd.
Push
Push provides the 'push' twig filter.
StripTags
StripTags overrides Twig's striptags filter. We override because the striptags filter isn't HTML safe, and while we're stripping tags, we're not stripping non-escaped characters, like  .
TimeSince
TimeSince provides the 'timeSince' twig filter.
BaseFunction
PageFluentFetch
Provides extra sugar for page fetches
FetchFunction
The fetch function sort of replicates Gryphon's original fetch tag with a number of supercharged changes.
ManagerFunction
Fetch a single manager handler allowing you to interact with it.
StaticViewFunction
Allows the view to directly disable static view cache.
CacheMiddleware
CacheMiddleware does the actual static template cache call for a given URI. It does not check to see if an item can be cached, but leaves that up to the caching service.
PreviewMiddleware
Checks to see if you have preview abilities;
FetchNode
FetchNode for FetchTag
FetchTag
Defines the 'fetch' template tag that provides backward compatibility with Gryphon-based templates. Objects returned will be wrapped in object compatibility wrappers.
HelperHandler
HelperNode
HelperNode for HelperTag
Registry
Provides a Gryphon compatible registry helper
HelperTag
Defines the 'helper' template tag that provides backward compatibility with Gryphon-based templates. Most items will simply return compatible service objects
ArticleManager
Base manager class
AuthorManager
Base manager class
BaseManager
Base manager class
ChannelManager
Base manager class
ContainerManager
Base manager class
EntryManager
Base manager class
MediaManager
Base manager class
PageManager
Base manager class
PostbackManager
Base manager class
PostManager
Base manager class
TagManager
Base manager class
Article
Base model methods
ArticleAuthor
Base model methods
ArticleTag
Base model methods
Author
Base model methods
BaseModel
Base model methods
Channel
Base model methods
Container
Base model methods
ContainerArticle
Base model methods
ContainerMedia
Base model methods
ContainerPage
Base model methods
ContainerTag
Base model methods
Entry
Base model methods
EntryMeta
Base model methods
Media
Base model methods
MediaAuthor
Base model methods
MediaGallery
Base model methods
MediaTag
Base model methods
Page
Base model methods
PageTag
Base model methods
PendingRequest
Base model methods
Post
Base model methods
PostAuthor
Base model methods
Postback
Base model methods
PostTag
Base model methods
RegistryItem
Base model methods
Route
Base model methods
Tag
Base model methods
Url
Base model methods
Visit
Base model methods
Webcron
Webcron Task Model We use cron-expression for parsing: <pre> * * * * * * - - - - - - | | | | | | | | | | | + year [optional] | | | | +----- day of week (0 - 7) (Sunday=0 or 7) | | | +---------- month (1 - 12) | | +--------------- day of month (1 - 31) | +-------------------- hour (0 - 23) +------------------------- min (0 - 59) </pre>
ArticleAuthor
Base model methods
ArticleTag
Base model methods
ContainerArticle
Base model methods
ContainerTag
Base model methods
MediaAuthor
Base model methods
MediaGallery
Base model methods
MediaTag
Base model methods
PageTag
Base model methods
PendingRequest
Base model methods
PostAuthor
Base model methods
PostTag
Base model methods
RegistryItem
Base model methods
Tag
Base model methods
Url
Base model methods
Visit
Base model methods
IndexController
Base controller
Plugin
Ad Maanger Plugin
BasePlugin
ClassifiedInterceptor
Classified interceptor overrides the '/classified[/category] route to allow for backward-compatible loading of Gryphon templates with compatible Category and Ad models.
Ad
snworks:ad Compat Model. Wraps Ceo\Models\Entry.
Category
Wrapper for snworks:category, wraps Ceo\Models\Entry.
Plugin
Classifieds Plugin
AdFluentFetch
Fluent Fetcher for snworks:ad
Document
Document compat wrapper
Docsync
DocSync Twig Helper
Issuu
Issuu fluid fetcher. Helps with Gryphon compatibility.
Plugin
DocSync Plugin
FeedsController
Base controller
Calendar
Wrapper for google:calendar, wraps Ceo\Models\Entry.
CalendarEvent
Wrapper for google:calendarEvent, wraps Ceo\Models\Entry.
CalendarController
Base controller
GcalendarInterceptor
BaseInterceptor provides base functionality for individual interceptors.
Plugin
Calendar Plugin
CalendarEventFluentFetch
Fluent Fetcher for google:calendarEvent
CalendarFluentFetch
Fluent Fetcher for google:calendar
Image
Image Hydrator
User
User Hydrator
InstagramController
Base controller
Plugin
Instagram plugin
JsonTransport
Load public Instagram data via JSON
Poll
Wrapper for polls:poll, wraps Ceo\Models\Entry.
Response
Wrapper for polls:response, wraps Ceo\Models\Entry.
ResponseCollection
PollController
Base controller
Plugin
Poll Plugin
PollInterceptor
BaseInterceptor provides base functionality for individual interceptors.
PollFluentFetch
Fluent Fetcher for polls:poll
Weather
Weather helper. Helps with Gryphon compatibility.
Plugin
Weather plugin
CurrentWeather
Provides simple interface for reading and generating information on current weather conditions.
Ndfd
NdfdResponse
Provides the response interface and data processing for the NDFD REST service
SearchInterceptor
Wrap search results and returned parameters to provide a Gryphon template compatible collection of variables.
MockShared
MockShared acts as a placeholder for the SNworksShared library file for when it is either not available, or for an older library.
Blog
Blog Wrapper
Page
Page Wrapper
Tag
Tag Wrapper
Collection
ArticleInterceptor
Wrap returned articles in Ceo\Compat\Model\Article
AuthorInterceptor
Wrap returned articles in Ceo\Compat\Model\Author
BlogInterceptor
Wrap returned posts in Ceo\Compat\Model\Post and blogs in Ceo\Compat\Model\Blog
IndexInterceptor
BaseInterceptor provides base functionality for individual interceptors.
MediaInterceptor
Wrap returned media in Ceo\Compat\Model\Media
PageInterceptor
Wrap returned pages in Ceo\Compat\Model\Page
SearchInterceptor
Wrap search results and returned parameters to provide a Gryphon template compatible collection of variables.
SectionInterceptor
Wrap returned articles in Ceo\Compat\Model\Article and sections in Ceo\Compat\Model\Section
MockShared
MockShared acts as a placeholder for the SNworksShared library file for when it is either not available, or for an older library.
Article
Article Wrapper
Author
Author Wrapper
BaseModel
Base compatibility layer model.
Blog
Blog Wrapper
Media
Media Wrapper
Page
Page Wrapper
Post
Post Wrapper
Section
Section Wrapper
Tag
Tag Wrapper
Point
Opti
Bitmap
Path
Curve
Quad
Sum
Potracio
Truncate
A Tiwg extension that truncates text while preservice HTML tags.
App
BaseCommand
ClientRunCommand
CompatRoutesCommand
ConfigureNginxCommand
ConfigureSslCommand
ConvertRewritesCommand
DbConvertCommand
DbConvertTableCommand
DbDumpCommand
DbFlushmetadataCommand
DbNukeCommand
FlushCommand
GarbageCollectCommand
HitFlushCommand
HitTabulateCommand
MainCommand
MigrateCommand
MigrateCreateCommand
PostbackFlushCommand
ServerCommand
ShellCommand
SyncImportCommand
TwigDetabCommand
TwigEscapeCommand
TwigLintCommand
VersionCommand
WebcronCommand
WebcronRunCommand
Module
BaseTask
Clientcommands
Postback
Tabulate
App
BaseCommand
CompatRoutesCommand
DbConvertCommand
HitFlushCommand
HitTabulateCommand
MainCommand
MigrateCreateCommand
ServerCommand
VersionCommand
Module
ApiController
Api Connector controller
ArticleController
Article controller
AuthorController
Author controller
BlogController
Blog controller
CeoController
Ceo Connector conbtroller
ChannelController
Channel controller
ControllerBase
Base controller
DefaultrouteController
DefaultRouteController handles custom routing
ErrorController
Error controller
FetchController
Fetch controller pulls data from the CEO API
IndexController
Default index controller
MediaController
Media controller is a polymorphic controller that responds differently in different situations depending on the URL.
PageController
Page controller
PluginController
Plugin controller
SearchController
Search controller
SectionController
Section controller.
ShorturlController
Handle redirects via short URLs
SitemapController
Default sitemap controller
SrnController
SRN controller
StaticviewController
StaticViewController handles loading of statically cached views.
Module
Searchable
Searchable trait simplifies the handling of the display of search results on a model
Seoable
SEO-able trait simplifies the fetching of SEO properties.
Searchable
Searchable trait simplifies the handling of the display of search results on a model

Table of Contents

_CEO_BUILDID  = '1.3.0'
_CEO_CONFIG_DIR  = __DIR__
APP_PATH  = BASE_PATH . '/app'
APP_PATH  = BASE_PATH . '/app'
BASE_PATH  = dirname(__DIR__)
BASE_PATH  = dirname(__DIR__)
array_pluck()  : mixed
Remove a value from array, return the value and reduce the array size by one.
array_kpluck()  : mixed
Remove a value from array, searching by key, return the value and reduce the array size by one.

Constants

_CEO_BUILDID

public mixed _CEO_BUILDID = '1.3.0'

_CEO_CONFIG_DIR

public mixed _CEO_CONFIG_DIR = __DIR__

Functions

array_pluck()

Remove a value from array, return the value and reduce the array size by one.

array_pluck(array<string|int, mixed> &$arr, string $search) : mixed
$arr = ['a', 'b', 'c'];
echo array_pluck($arr, 'b'); // 'b'
var_export($arr); // ['a', 'c']
Parameters
$arr : array<string|int, mixed>
$search : string

value

Return values
mixed

array_kpluck()

Remove a value from array, searching by key, return the value and reduce the array size by one.

array_kpluck(array<string|int, mixed> &$arr, string $search) : mixed
$arr = ['a' => 'foo', 'b' => 'bar', 'c' => 'baz'];
echo array_kpluck($arr, 'b'); // 'bar'
var_export($arr); // ['a' => 'foo', 'c' => 'baz']
Parameters
$arr : array<string|int, mixed>
$search : string

key value

Return values
mixed

Search results