Oroboros Core
  • Namespace
  • Class
  • Tree
  • Deprecated
  • Todo

Namespaces

  • None
  • oroboros
    • core
      • abstracts
        • adapters
        • bootstrap
        • controllers
        • libraries
          • auth
          • bootstrap
          • cache
          • codex
          • config
          • container
          • data
          • database
          • dns
          • entity
          • enum
          • error
          • event
          • extension
          • file
          • flags
          • hooks
          • job
          • logger
          • manager
          • message
          • prototype
          • request
          • response
          • routine
          • shell
          • startup
          • stream
          • template
          • uri
          • utility
          • validation
            • workers
          • worker
        • models
        • patterns
          • behavioral
          • creational
        • utilities
          • exception
            • cache
            • container
          • http
        • views
      • interfaces
        • adapters
          • interpreters
          • sdk
        • api
          • adapters
          • bootstrap
          • controllers
          • psr
        • contract
          • adapters
          • bootstrap
          • codex
          • components
          • controllers
          • data
          • entities
          • errors
          • events
          • extensions
          • jobs
          • libraries
            • auth
            • cache
            • config
            • container
            • enum
            • file
            • flags
            • hooks
            • module
            • promise
            • record
            • request
            • response
            • server
            • shutdown
            • site
            • stream
            • template
            • theme
            • uri
          • models
          • patterns
            • behavioral
            • concurrency
            • creational
            • structural
          • routes
          • routines
            • bootload
            • declarative
            • procedural
            • subsystem
          • services
            • consumer
              • cgi
              • rest
                • local
                • remote
                  • authenticated
                  • unauthenticated
            • provider
              • cgi
              • rest
                • local
                • remote
                  • authenticated
                  • unauthenticated
          • utilities
            • datetime
            • exception
              • cache
              • container
            • filebase
            • http
            • math
            • parser
            • regex
            • session
          • views
        • enumerated
          • environment
          • flags
          • http
          • views
        • libraries
          • manager
          • worker
      • libraries
        • api
        • codex
        • container
        • enum
          • http
        • file
        • hooks
        • logger
        • math
        • psr4
        • request
        • response
        • stream
        • uri
      • patterns
        • creational
      • traits
        • adapters
        • bootstrap
        • codex
        • components
        • controllers
        • data
        • entities
        • events
        • extensions
        • jobs
        • libraries
          • container
          • file
          • request
          • response
          • stream
          • uri
        • models
        • modules
        • patterns
          • behavioral
          • concurrency
          • creational
          • structural
        • routes
        • services
        • utilities
          • core
            • api
            • config
            • contract
              • contract
            • enum
            • environment
            • routines
          • datetime
          • error
          • exception
          • filebase
          • hooks
          • html
          • http
          • logic
          • math
          • parsers
          • regex
          • session
        • views
      • utilities
        • exception
          • cache
          • container
        • http
      • views
    • tests
      • patterns
        • creational
      • psr
        • psr7
      • utilities
        • exception
  • PasswordCompat
    • binary
  • PHP

Classes

  • Bootstrap
  • Directory
  • ExceptionTest
  • InitTest
  • oroboros\Common
  • oroboros\core\abstracts\adapters\AbstractAdapter
  • oroboros\core\abstracts\adapters\AbstractBrowserAdapter
  • oroboros\core\abstracts\adapters\AbstractDatabaseAdapter
  • oroboros\core\abstracts\adapters\AbstractLibraryAdapter
  • oroboros\core\abstracts\adapters\AbstractProxyAdapter
  • oroboros\core\abstracts\adapters\AbstractSdkAdapter
  • oroboros\core\abstracts\adapters\AbstractServiceAdapter
  • oroboros\core\abstracts\adapters\AbstractShellAdapter
  • oroboros\core\abstracts\adapters\AbstractSocketAdapter
  • oroboros\core\abstracts\bootstrap\AbstractBootstrap
  • oroboros\core\abstracts\controllers\AbstractAjaxController
  • oroboros\core\abstracts\controllers\AbstractCgiController
  • oroboros\core\abstracts\controllers\AbstractController
  • oroboros\core\abstracts\controllers\AbstractFrontController
  • oroboros\core\abstracts\controllers\AbstractHttpController
  • oroboros\core\abstracts\controllers\AbstractRoutineController
  • oroboros\core\abstracts\libraries\AbstractLibrary
  • oroboros\core\abstracts\libraries\auth\AbstractAuth
  • oroboros\core\abstracts\libraries\bootstrap\AbstractBootstrap
  • oroboros\core\abstracts\libraries\cache\AbstractCache
  • oroboros\core\abstracts\libraries\codex\AbstractCodex
  • oroboros\core\abstracts\libraries\config\AbstractConfig
  • oroboros\core\abstracts\libraries\container\AbstractCollection
  • oroboros\core\abstracts\libraries\container\AbstractContainer
  • oroboros\core\abstracts\libraries\data\AbstractDataObject
  • oroboros\core\abstracts\libraries\data\AbstractDataObjectCollection
  • oroboros\core\abstracts\libraries\database\AbstractDatabaseManager
  • oroboros\core\abstracts\libraries\database\AbstractDatabaseWorker
  • oroboros\core\abstracts\libraries\dns\AbstractRoute
  • oroboros\core\abstracts\libraries\dns\AbstractRouter
  • oroboros\core\abstracts\libraries\entity\AbstractEntity
  • oroboros\core\abstracts\libraries\entity\AbstractEntityCollection
  • oroboros\core\abstracts\libraries\entity\AbstractEntityManager
  • oroboros\core\abstracts\libraries\enum\AbstractEnum
  • oroboros\core\abstracts\libraries\error\AbstractErrorEvent
  • oroboros\core\abstracts\libraries\error\AbstractErrorHandler
  • oroboros\core\abstracts\libraries\event\AbstractEvent
  • oroboros\core\abstracts\libraries\event\AbstractEventCollection
  • oroboros\core\abstracts\libraries\event\AbstractEventManager
  • oroboros\core\abstracts\libraries\event\AbstractServerEvent
  • oroboros\core\abstracts\libraries\extension\AbstractExtension
  • oroboros\core\abstracts\libraries\extension\AbstractExtensionConfig
  • oroboros\core\abstracts\libraries\extension\AbstractExtensionManager
  • oroboros\core\abstracts\libraries\file\AbstractDirectory
  • oroboros\core\abstracts\libraries\file\AbstractFile
  • oroboros\core\abstracts\libraries\file\AbstractFileCollection
  • oroboros\core\abstracts\libraries\file\AbstractFileManager
  • oroboros\core\abstracts\libraries\file\AbstractFileUpload
  • oroboros\core\abstracts\libraries\flags\AbstractFlag
  • oroboros\core\abstracts\libraries\hooks\AbstractHook
  • oroboros\core\abstracts\libraries\hooks\AbstractHookParser
  • oroboros\core\abstracts\libraries\job\AbstractJob
  • oroboros\core\abstracts\libraries\job\AbstractJobCollection
  • oroboros\core\abstracts\libraries\logger\AbstractLogger
  • oroboros\core\abstracts\libraries\manager\AbstractManager
  • oroboros\core\abstracts\libraries\message\AbstractCgiMessage
  • oroboros\core\abstracts\libraries\message\AbstractHttpMessage
  • oroboros\core\abstracts\libraries\prototype\AbstractPrototyper
  • oroboros\core\abstracts\libraries\request\AbstractRequest
  • oroboros\core\abstracts\libraries\request\AbstractServerRequest
  • oroboros\core\abstracts\libraries\response\AbstractResponse
  • oroboros\core\abstracts\libraries\routine\AbstractRoutine
  • oroboros\core\abstracts\libraries\shell\AbstractShell
  • oroboros\core\abstracts\libraries\startup\AbstractBootstrap
  • oroboros\core\abstracts\libraries\stream\AbstractMessage
  • oroboros\core\abstracts\libraries\stream\AbstractStream
  • oroboros\core\abstracts\libraries\template\AbstractTemplate
  • oroboros\core\abstracts\libraries\uri\AbstractUri
  • oroboros\core\abstracts\libraries\utility\AbstractUtility
  • oroboros\core\abstracts\libraries\validation\AbstractValidationWorker
  • oroboros\core\abstracts\libraries\validation\AbstractValidator
  • oroboros\core\abstracts\libraries\validation\workers\AbstractFormValidationWorker
  • oroboros\core\abstracts\libraries\worker\AbstractWorker
  • oroboros\core\abstracts\models\AbstractAdapterModel
  • oroboros\core\abstracts\models\AbstractDataModel
  • oroboros\core\abstracts\models\AbstractEntityModel
  • oroboros\core\abstracts\models\AbstractEventModel
  • oroboros\core\abstracts\models\AbstractFileModel
  • oroboros\core\abstracts\models\AbstractJobModel
  • oroboros\core\abstracts\models\AbstractModel
  • oroboros\core\abstracts\models\AbstractServiceModel
  • oroboros\core\abstracts\models\AbstractWorkerModel
  • oroboros\core\abstracts\OroborosBaseAbstract
  • oroboros\core\abstracts\patterns\behavioral\AbstractDirector
  • oroboros\core\abstracts\patterns\creational\AbstractFactory
  • oroboros\core\abstracts\patterns\creational\AbstractPrototyper
  • oroboros\core\abstracts\patterns\creational\AbstractPrototypical
  • oroboros\core\abstracts\utilities\http\AbstractCookie
  • oroboros\core\abstracts\utilities\http\AbstractHeader
  • oroboros\core\abstracts\utilities\http\AbstractProtocol
  • oroboros\core\abstracts\utilities\http\AbstractRequestHeader
  • oroboros\core\abstracts\utilities\http\AbstractRequestMethod
  • oroboros\core\abstracts\utilities\http\AbstractResponseHeader
  • oroboros\core\abstracts\utilities\http\AbstractStatusCode
  • oroboros\core\abstracts\views\AbstractCssView
  • oroboros\core\abstracts\views\AbstractHtmlView
  • oroboros\core\abstracts\views\AbstractJavascriptView
  • oroboros\core\abstracts\views\AbstractPlaintextView
  • oroboros\core\abstracts\views\AbstractRssView
  • oroboros\core\abstracts\views\AbstractView
  • oroboros\core\libraries\api\ClassScopes
  • oroboros\core\libraries\api\ClassTypes
  • oroboros\core\libraries\api\ExceptionCodes
  • oroboros\core\libraries\api\ExceptionMessages
  • oroboros\core\libraries\api\FlagTypes
  • oroboros\core\libraries\api\HttpCodes
  • oroboros\core\libraries\api\Regex
  • oroboros\core\libraries\codex\Codex
  • oroboros\core\libraries\container\Collection
  • oroboros\core\libraries\enum\http\RequestHeaders
  • oroboros\core\libraries\enum\http\ResponseHeaders
  • oroboros\core\libraries\enum\http\StatusCodes
  • oroboros\core\libraries\file\File
  • oroboros\core\libraries\file\FileUpload
  • oroboros\core\libraries\hooks\SimpleHook
  • oroboros\core\libraries\logger\FileLogger
  • oroboros\core\libraries\logger\NullLogger
  • oroboros\core\libraries\math\Math
  • oroboros\core\libraries\psr4\Autoloader
  • oroboros\core\libraries\request\Request
  • oroboros\core\libraries\request\ServerRequest
  • oroboros\core\libraries\response\Response
  • oroboros\core\libraries\stream\Message
  • oroboros\core\libraries\stream\Stream
  • oroboros\core\libraries\uri\Uri
  • oroboros\core\patterns\creational\AdapterFactory
  • oroboros\core\patterns\creational\AppFactory
  • oroboros\core\patterns\creational\ControllerFactory
  • oroboros\core\patterns\creational\FactoryFactory
  • oroboros\core\patterns\creational\LibraryFactory
  • oroboros\core\patterns\creational\ModelFactory
  • oroboros\core\patterns\creational\ModuleFactory
  • oroboros\core\patterns\creational\Prototyper
  • oroboros\core\patterns\creational\TemplateFactory
  • oroboros\core\patterns\creational\ViewFactory
  • oroboros\core\utilities\http\Cookie
  • oroboros\core\utilities\http\Header
  • oroboros\core\utilities\http\Protocol
  • oroboros\core\utilities\http\RequestHeader
  • oroboros\core\utilities\http\RequestMethod
  • oroboros\core\utilities\http\ResponseHeader
  • oroboros\core\utilities\http\StatusCode
  • oroboros\core\views\AjaxView
  • oroboros\Oroboros
  • oroboros\tests\patterns\creational\PrototyperTest
  • oroboros\tests\psr\psr7\MessageTest
  • oroboros\tests\psr\psr7\RequestTest
  • oroboros\tests\psr\psr7\ResponseTest
  • oroboros\tests\psr\psr7\ServerRequestTest
  • oroboros\tests\psr\psr7\StreamTest
  • oroboros\tests\psr\psr7\UploadedFileTest
  • oroboros\tests\psr\psr7\UriTest
  • oroboros\tests\utilities\exception\ExceptionTest
  • ReflectionFunctionAbstract
  • stdClass

Interfaces

  • ArrayAccess
  • Countable
  • Iterator
  • JsonSerializable
  • oroboros\core\interfaces\adapters\interpreters\OroborosInterpreterInterface
  • oroboros\core\interfaces\adapters\OroborosAdapterInterface
  • oroboros\core\interfaces\adapters\sdk\OroborosSdkAdapterInterface
  • oroboros\core\interfaces\api\AdapterApi
  • oroboros\core\interfaces\api\adapters\AdapterApi
  • oroboros\core\interfaces\api\adapters\CodexApi
  • oroboros\core\interfaces\api\AuthApi
  • oroboros\core\interfaces\api\BaseApi
  • oroboros\core\interfaces\api\BehavioralPatternApi
  • oroboros\core\interfaces\api\bootstrap\BootstrapApi
  • oroboros\core\interfaces\api\BootstrapApi
  • oroboros\core\interfaces\api\CacheApi
  • oroboros\core\interfaces\api\ClassScopeApi
  • oroboros\core\interfaces\api\ClassTypeApi
  • oroboros\core\interfaces\api\CodexApi
  • oroboros\core\interfaces\api\CollectionApi
  • oroboros\core\interfaces\api\ConcurrencyPatternApi
  • oroboros\core\interfaces\api\ContainerApi
  • oroboros\core\interfaces\api\ControllerApi
  • oroboros\core\interfaces\api\controllers\ControllerApi
  • oroboros\core\interfaces\api\CoreApi
  • oroboros\core\interfaces\api\CreationalPatternApi
  • oroboros\core\interfaces\api\DatabaseApi
  • oroboros\core\interfaces\api\DataObjectApi
  • oroboros\core\interfaces\api\DataObjectCollectionApi
  • oroboros\core\interfaces\api\DefaultApi
  • oroboros\core\interfaces\api\EntityApi
  • oroboros\core\interfaces\api\EntityCollectionApi
  • oroboros\core\interfaces\api\EnumApi
  • oroboros\core\interfaces\api\EnvironmentApi
  • oroboros\core\interfaces\api\EventApi
  • oroboros\core\interfaces\api\ExceptionApi
  • oroboros\core\interfaces\api\ExceptionCodeApi
  • oroboros\core\interfaces\api\ExceptionMessageApi
  • oroboros\core\interfaces\api\ExtensionrApi
  • oroboros\core\interfaces\api\FlagApi
  • oroboros\core\interfaces\api\HtmlTemplateApi
  • oroboros\core\interfaces\api\JobApi
  • oroboros\core\interfaces\api\JobCollectionApi
  • oroboros\core\interfaces\api\LibraryApi
  • oroboros\core\interfaces\api\LoggerApi
  • oroboros\core\interfaces\api\LogLevelApi
  • oroboros\core\interfaces\api\MathApi
  • oroboros\core\interfaces\api\ModelApi
  • oroboros\core\interfaces\api\ModuleApi
  • oroboros\core\interfaces\api\OroborosApi
  • oroboros\core\interfaces\api\ParserApi
  • oroboros\core\interfaces\api\PatternApi
  • oroboros\core\interfaces\api\psr\Psr7Api
  • oroboros\core\interfaces\api\RecordApi
  • oroboros\core\interfaces\api\RecordCollectionApi
  • oroboros\core\interfaces\api\RegexApi
  • oroboros\core\interfaces\api\RequestApi
  • oroboros\core\interfaces\api\ResponseApi
  • oroboros\core\interfaces\api\RouteApi
  • oroboros\core\interfaces\api\RouterApi
  • oroboros\core\interfaces\api\RoutineApi
  • oroboros\core\interfaces\api\ServerApi
  • oroboros\core\interfaces\api\ServiceApi
  • oroboros\core\interfaces\api\ServiceCollectionApi
  • oroboros\core\interfaces\api\ShellApi
  • oroboros\core\interfaces\api\StreamApi
  • oroboros\core\interfaces\api\StructuralPatternApi
  • oroboros\core\interfaces\api\TemplateApi
  • oroboros\core\interfaces\api\UtilityApi
  • oroboros\core\interfaces\api\ViewApi
  • oroboros\core\interfaces\BaseAbstractInterface
  • oroboros\core\interfaces\contract\adapters\AdapterContract
  • oroboros\core\interfaces\contract\BaseContract
  • oroboros\core\interfaces\contract\bootstrap\BootstrapContract
  • oroboros\core\interfaces\contract\codex\CodexContract
  • oroboros\core\interfaces\contract\components\ComponentContract
  • oroboros\core\interfaces\contract\controllers\ControllerContract
  • oroboros\core\interfaces\contract\CoreContract
  • oroboros\core\interfaces\contract\data\DataObjectContract
  • oroboros\core\interfaces\contract\entities\EntityContract
  • oroboros\core\interfaces\contract\errors\ErrorContract
  • oroboros\core\interfaces\contract\events\EventContract
  • oroboros\core\interfaces\contract\extensions\ExtensionContract
  • oroboros\core\interfaces\contract\jobs\JobContract
  • oroboros\core\interfaces\contract\libraries\auth\AuthContract
  • oroboros\core\interfaces\contract\libraries\cache\CacheItemContract
  • oroboros\core\interfaces\contract\libraries\cache\CachePoolContract
  • oroboros\core\interfaces\contract\libraries\config\ConfigContract
  • oroboros\core\interfaces\contract\libraries\container\CollectionContract
  • oroboros\core\interfaces\contract\libraries\container\ContainerContract
  • oroboros\core\interfaces\contract\libraries\enum\EnumContract
  • oroboros\core\interfaces\contract\libraries\file\FileContract
  • oroboros\core\interfaces\contract\libraries\file\UploadedFileContract
  • oroboros\core\interfaces\contract\libraries\flags\FlagContract
  • oroboros\core\interfaces\contract\libraries\hooks\HookContract
  • oroboros\core\interfaces\contract\libraries\LibraryContract
  • oroboros\core\interfaces\contract\libraries\module\ModuleContract
  • oroboros\core\interfaces\contract\libraries\promise\PromiseContract
  • oroboros\core\interfaces\contract\libraries\record\RecordContract
  • oroboros\core\interfaces\contract\libraries\request\RequestContract
  • oroboros\core\interfaces\contract\libraries\request\ServerRequestContract
  • oroboros\core\interfaces\contract\libraries\response\ResponseContract
  • oroboros\core\interfaces\contract\libraries\response\ServerResponseContract
  • oroboros\core\interfaces\contract\libraries\server\ServerContract
  • oroboros\core\interfaces\contract\libraries\shutdown\ShutdownContract
  • oroboros\core\interfaces\contract\libraries\site\SiteContract
  • oroboros\core\interfaces\contract\libraries\stream\MessageContract
  • oroboros\core\interfaces\contract\libraries\stream\StreamContract
  • oroboros\core\interfaces\contract\libraries\template\TemplateContract
  • oroboros\core\interfaces\contract\libraries\theme\ThemeContract
  • oroboros\core\interfaces\contract\libraries\uri\UriContract
  • oroboros\core\interfaces\contract\models\ModelContract
  • oroboros\core\interfaces\contract\patterns\behavioral\BehavioralContract
  • oroboros\core\interfaces\contract\patterns\concurrency\ConcurrencyContract
  • oroboros\core\interfaces\contract\patterns\creational\CreationalContract
  • oroboros\core\interfaces\contract\patterns\creational\PrototypeContract
  • oroboros\core\interfaces\contract\patterns\creational\PrototypicalContract
  • oroboros\core\interfaces\contract\patterns\PatternContract
  • oroboros\core\interfaces\contract\patterns\structural\StructuralContract
  • oroboros\core\interfaces\contract\routes\RouteContract
  • oroboros\core\interfaces\contract\routes\RouterContract
  • oroboros\core\interfaces\contract\routines\bootload\BootloadRoutineContract
  • oroboros\core\interfaces\contract\routines\declarative\DeclarativeRoutineContract
  • oroboros\core\interfaces\contract\routines\procedural\ProceduralRoutineContract
  • oroboros\core\interfaces\contract\routines\RoutineContract
  • oroboros\core\interfaces\contract\routines\subsystem\SubsystemRoutineContract
  • oroboros\core\interfaces\contract\services\consumer\cgi\CgiServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\rest\local\LocalRestServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\rest\remote\authenticated\AuthenticatedRemoteRestServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\rest\remote\RemoteRestServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\rest\remote\unauthenticated\UnauthenticatedRemoteRestServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\rest\RestServiceConsumerContract
  • oroboros\core\interfaces\contract\services\consumer\ServiceConsumerContract
  • oroboros\core\interfaces\contract\services\provider\cgi\CgiServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\rest\local\LocalRestServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\rest\remote\authenticated\AuthenticatedRemoteRestServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\rest\remote\RemoteRestServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\rest\remote\unauthenticated\UnauthenticatedRemoteRestServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\rest\RestServiceProviderContract
  • oroboros\core\interfaces\contract\services\provider\ServiceProviderContract
  • oroboros\core\interfaces\contract\services\ServiceContract
  • oroboros\core\interfaces\contract\utilities\datetime\DateContract
  • oroboros\core\interfaces\contract\utilities\datetime\TimeContract
  • oroboros\core\interfaces\contract\utilities\exception\cache\CacheExceptionContract
  • oroboros\core\interfaces\contract\utilities\exception\cache\InvalidArgumentExceptionContract
  • oroboros\core\interfaces\contract\utilities\exception\container\ContainerExceptionContract
  • oroboros\core\interfaces\contract\utilities\exception\container\NotFoundExceptionContract
  • oroboros\core\interfaces\contract\utilities\exception\ExceptionContract
  • oroboros\core\interfaces\contract\utilities\filebase\DirectoryContract
  • oroboros\core\interfaces\contract\utilities\filebase\DirectoryIndexContract
  • oroboros\core\interfaces\contract\utilities\filebase\FileContract
  • oroboros\core\interfaces\contract\utilities\http\CookieContract
  • oroboros\core\interfaces\contract\utilities\http\HeaderContract
  • oroboros\core\interfaces\contract\utilities\http\ProtocolContract
  • oroboros\core\interfaces\contract\utilities\http\RequestMethodContract
  • oroboros\core\interfaces\contract\utilities\http\StatusCodeContract
  • oroboros\core\interfaces\contract\utilities\math\MathContract
  • oroboros\core\interfaces\contract\utilities\parser\ParserContract
  • oroboros\core\interfaces\contract\utilities\regex\RegexContract
  • oroboros\core\interfaces\contract\utilities\session\SessionContract
  • oroboros\core\interfaces\contract\utilities\UtilityContract
  • oroboros\core\interfaces\contract\views\ViewContract
  • oroboros\core\interfaces\enumerated\BaseEnumerated
  • oroboros\core\interfaces\enumerated\environment\BaseEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\BuildEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\CgiEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\ClientEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\CoreEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\EnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\HttpEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\ProjectEnvironmentApi
  • oroboros\core\interfaces\enumerated\environment\ServerEnvironmentApi
  • oroboros\core\interfaces\enumerated\flags\FlagApi
  • oroboros\core\interfaces\enumerated\flags\OutputFlagApi
  • oroboros\core\interfaces\enumerated\http\RequestHeaders
  • oroboros\core\interfaces\enumerated\http\ResponseHeaders
  • oroboros\core\interfaces\enumerated\http\StatusCodes
  • oroboros\core\interfaces\enumerated\views\ViewOutputApi
  • oroboros\core\interfaces\libraries\manager\ManagerContract
  • oroboros\core\interfaces\libraries\worker\WorkerContract
  • oroboros\OroborosInterface
  • Reflector
  • Throwable
  • Traversable

Traits

  • oroboros\core\traits\adapters\AdapterTrait
  • oroboros\core\traits\BaseTrait
  • oroboros\core\traits\bootstrap\BootstrapTrait
  • oroboros\core\traits\codex\CodexTrait
  • oroboros\core\traits\components\ComponentTrait
  • oroboros\core\traits\controllers\ControllerTrait
  • oroboros\core\traits\CoreTrait
  • oroboros\core\traits\data\DataObjectTrait
  • oroboros\core\traits\entities\EntityTrait
  • oroboros\core\traits\events\EventTrait
  • oroboros\core\traits\extensions\ExtensionTrait
  • oroboros\core\traits\jobs\JobTrait
  • oroboros\core\traits\libraries\container\CollectionTrait
  • oroboros\core\traits\libraries\container\ContainerTrait
  • oroboros\core\traits\libraries\file\DirectoryTrait
  • oroboros\core\traits\libraries\file\FileCollectionTrait
  • oroboros\core\traits\libraries\file\FileTrait
  • oroboros\core\traits\libraries\file\UploadedFileTrait
  • oroboros\core\traits\libraries\LibraryTrait
  • oroboros\core\traits\libraries\request\RequestTrait
  • oroboros\core\traits\libraries\request\ServerRequestTrait
  • oroboros\core\traits\libraries\response\ResponseTrait
  • oroboros\core\traits\libraries\stream\MessageTrait
  • oroboros\core\traits\libraries\stream\StreamTrait
  • oroboros\core\traits\libraries\uri\UriTrait
  • oroboros\core\traits\models\ModelTrait
  • oroboros\core\traits\modules\ModuleTrait
  • oroboros\core\traits\patterns\behavioral\ChainOfResponsibility
  • oroboros\core\traits\patterns\behavioral\RegistryTrait
  • oroboros\core\traits\patterns\behavioral\State
  • oroboros\core\traits\patterns\behavioral\StaticRegistry
  • oroboros\core\traits\patterns\concurrency\ObjectPoolTrait
  • oroboros\core\traits\patterns\creational\FactoryTrait
  • oroboros\core\traits\patterns\creational\PrototyperTrait
  • oroboros\core\traits\patterns\creational\PrototypicalTrait
  • oroboros\core\traits\patterns\structural\ControlApi
  • oroboros\core\traits\patterns\structural\Lockable
  • oroboros\core\traits\routes\RouterTrait
  • oroboros\core\traits\routes\RouteTrait
  • oroboros\core\traits\services\ServiceTrait
  • oroboros\core\traits\utilities\core\api\ApiTrait
  • oroboros\core\traits\utilities\core\config\ConfigTrait
  • oroboros\core\traits\utilities\core\contract\contract\ContractTrait
  • oroboros\core\traits\utilities\core\enum\EnumTrait
  • oroboros\core\traits\utilities\core\environment\EnvironmentTrait
  • oroboros\core\traits\utilities\core\routines\RoutineTrait
  • oroboros\core\traits\utilities\datetime\DateTrait
  • oroboros\core\traits\utilities\datetime\TimeTrait
  • oroboros\core\traits\utilities\DefaultLoggerTrait
  • oroboros\core\traits\utilities\error\ErrorHandlerTrait
  • oroboros\core\traits\utilities\error\ErrorTrait
  • oroboros\core\traits\utilities\exception\ExceptionCodeTrait
  • oroboros\core\traits\utilities\exception\ExceptionMessageTrait
  • oroboros\core\traits\utilities\exception\ExceptionTrait
  • oroboros\core\traits\utilities\ExceptionHelperTrait
  • oroboros\core\traits\utilities\filebase\DirectoryIndexTrait
  • oroboros\core\traits\utilities\filebase\DirectoryTrait
  • oroboros\core\traits\utilities\filebase\FileTrait
  • oroboros\core\traits\utilities\hooks\HooksTrait
  • oroboros\core\traits\utilities\html\HtmlBuilderTrait
  • oroboros\core\traits\utilities\html\HtmlGeneratorTrait
  • oroboros\core\traits\utilities\http\CookieTrait
  • oroboros\core\traits\utilities\http\HeaderTrait
  • oroboros\core\traits\utilities\http\ProtocolTrait
  • oroboros\core\traits\utilities\http\RequestHeaderTrait
  • oroboros\core\traits\utilities\http\RequestMethodTrait
  • oroboros\core\traits\utilities\http\ResponseHeaderTrait
  • oroboros\core\traits\utilities\http\StatusCodeTrait
  • oroboros\core\traits\utilities\LoaderTrait
  • oroboros\core\traits\utilities\logic\BackreferenceTrait
  • oroboros\core\traits\utilities\math\MathTrait
  • oroboros\core\traits\utilities\parsers\ParserTrait
  • oroboros\core\traits\utilities\regex\RegexTrait
  • oroboros\core\traits\utilities\session\SessionTrait
  • oroboros\core\traits\utilities\UtilityTrait
  • oroboros\core\traits\views\ViewTrait

Exceptions

  • BadFunctionCallException
  • BadMethodCallException
  • DomainException
  • ErrorException
  • Exception
  • InvalidArgumentException
  • LengthException
  • LogicException
  • oroboros\core\abstracts\utilities\exception\AbstractBadFunctionCallException
  • oroboros\core\abstracts\utilities\exception\AbstractBadMethodCallException
  • oroboros\core\abstracts\utilities\exception\AbstractDomainException
  • oroboros\core\abstracts\utilities\exception\AbstractException
  • oroboros\core\abstracts\utilities\exception\AbstractInvalidArgumentException
  • oroboros\core\abstracts\utilities\exception\AbstractLengthException
  • oroboros\core\abstracts\utilities\exception\AbstractLogicException
  • oroboros\core\abstracts\utilities\exception\AbstractOutOfBoundsException
  • oroboros\core\abstracts\utilities\exception\AbstractOutOfRangeException
  • oroboros\core\abstracts\utilities\exception\AbstractOverflowException
  • oroboros\core\abstracts\utilities\exception\AbstractRangeException
  • oroboros\core\abstracts\utilities\exception\AbstractRuntimeException
  • oroboros\core\abstracts\utilities\exception\AbstractUnderflowException
  • oroboros\core\abstracts\utilities\exception\AbstractUnexpectedValueException
  • oroboros\core\abstracts\utilities\exception\cache\AbstractCacheException
  • oroboros\core\abstracts\utilities\exception\cache\AbstractInvalidArgumentException
  • oroboros\core\abstracts\utilities\exception\container\AbstractContainerException
  • oroboros\core\abstracts\utilities\exception\container\AbstractNotFoundException
  • oroboros\core\utilities\exception\BadFunctionCallException
  • oroboros\core\utilities\exception\BadMethodCallException
  • oroboros\core\utilities\exception\cache\CacheException
  • oroboros\core\utilities\exception\cache\InvalidArgumentException
  • oroboros\core\utilities\exception\container\ContainerException
  • oroboros\core\utilities\exception\container\NotFoundException
  • oroboros\core\utilities\exception\DomainException
  • oroboros\core\utilities\exception\Exception
  • oroboros\core\utilities\exception\InvalidArgumentException
  • oroboros\core\utilities\exception\LengthException
  • oroboros\core\utilities\exception\LogicException
  • oroboros\core\utilities\exception\OutOfBoundsException
  • oroboros\core\utilities\exception\OutOfRangeException
  • oroboros\core\utilities\exception\OverflowException
  • oroboros\core\utilities\exception\RangeException
  • oroboros\core\utilities\exception\RuntimeException
  • oroboros\core\utilities\exception\UnderflowException
  • oroboros\core\utilities\exception\UnexpectedValueException
  • OutOfBoundsException
  • OutOfRangeException
  • OverflowException
  • RangeException
  • RuntimeException
  • UnderflowException
  • UnexpectedValueException

Functions

  • array_column
  • getallheaders
  • oroboros\core\is_ajax
  • oroboros\core\is_cli
  • oroboros\core\localize_url
  • oroboros\core\oroboros_classfile_to_classname
  • oroboros\core\oroboros_run_routine
  • oroboros\core\request_headers
  • oroboros\core\require_safely
  • password_get_info
  • password_hash
  • password_needs_rehash
  • password_verify
  • PasswordCompat\binary\check
  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 
<?php

namespace oroboros\core\traits\utilities\html;

trait HtmlGeneratorTrait {

    /**
     * @var array $_content_methods Provides a list of valid output format generation methods. These methods can be referenced to build structured output quickly.
     */
    protected $_content_methods = array(
        'row',
        'column',
        'form',
        'table',
        'formtable',
        'widget',
        'navigation',
    );
    private static $_tabsets = 0;
    private static $_datatables = 0;

    /* -------- Inernal Operations -------- */

    final private function _checkRequestMethod($method, $checkall = FALSE) {
        if (!is_string($method) && ($checkall && !(is_array($method) || is_object($method))))
            throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
        if (!$checkall) {
            if (is_int($method))
                return FALSE;
            else
                return in_array($method, $this->_content_methods);
        } elseif ($checkall && is_array($method)) {
            //check all keys
            $check = TRUE;
            foreach ($method as $key => $value) {
                if (!$this->_checkRequestMethod($key, 0))
                    $check = FALSE;
            }
            return $check;
        } elseif ($checkall && is_object($method)) {
            //get object vars and check all keys
            return $this->_checkRequestMethod(get_object_vars($method), 1);
        }
        return FALSE;
    }

    final private function _evaluateContentArray($array) {
        if (!is_array($array)) {
            throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
        }
        if (!array_numeric($array) && !empty($array) && !$this->_checkRequestMethod($array, 1)) {
            //handle as a standard content array
            return $this->_outputCallback($array);
        } elseif (array_key_exists('template', $array)) {
            //run the template queue method
            //@todo request template from template handler if template handler object exists in this object instance
            throw new \oroboros\lib\exception\LibraryException('Unimplemented request methodology at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_SYSTEM_UNIMPLEMENTED);
        } elseif (!empty($array) && $this->_checkRequestMethod($array, 1)) {
            //content array is requesting a unique content output generation method
            $output = array();
            foreach ($array as $key => $value) {
                if (!is_int($key) && method_exists($this, '_' . $key))
                    $output[] = array($this->${'_' . $key}($value));
            }
            return $output;
        } else {
            //array is a content output sequence
            $output = array();
            foreach ($array as $key => $value) {
                $output[] = $this->_evaluateData($value);
            }
            return $output;
        }
    }

    final private function _evaluateContentObject($object) {
        if (!is_object($object))
            throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
    }

    final private function _evaluateData($data) {
        return ((is_string($data)) ? $data : ((!isset($data)) ? NULL : ((is_object($data)) ? $this->_evaluateContentObject($data) : $this->_evaluateContentArray($data)) ) );
    }

    final private function _evaluateObjectMeta($meta, &$data) {
        if (!((is_array($meta) && !array_numeric($meta)) || (is_object($meta && !array_numeric(get_object_vars($meta))))))
            throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
        foreach (((is_object($meta)) ? get_object_vars($meta) : $meta) as $key => $value) {
            switch ($key) {
                case 'template':
                    //handle template directives
                    if (isset($this->_template) && is_object($this->_template) && method_exists($this->_template, 'objectMetaParameters')) {
                        foreach (((is_object($value)) ? get_object_vars($value) : $value) as $name => $args) {
                            $this->_template->objectMetaParameters($name, $data, $args);
                        }
                    } else {
                        throw new \oroboros\lib\exception\LibraryException('Missing instance of template handler at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_NOT_INITIALIZED);
                        foreach (((is_object($value)) ? get_object_vars($value) : $value) as $name => $args) {

                        }
                    }
                    break;
                case 'theme':
                    //handle theme directives
                    if (isset($this->_theme) && is_object($this->_theme) && method_exists($this->_theme, 'objectMetaParameters')) {

                    } else {
                        throw new \oroboros\lib\exception\LibraryException('Missing instance of theme handler at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_NOT_INITIALIZED);
                    }
                    break;
                case 'module':
                    //handle module directives
                    throw new \oroboros\lib\exception\LibraryException('Module meta parameters are unimplemented at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_SYSTEM_UNIMPLEMENTED);
                    break;
                case 'component':
                    //handle component directives
                    throw new \oroboros\lib\exception\LibraryException('Component meta parameters are unimplemented at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_SYSTEM_UNIMPLEMENTED);
                    break;
                default:
                    throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
                    break;
            }
        }
    }

    /* -------- Output Generation -------- */

    protected function _tag($content = NULL, $tag = 'p', $params = NULL, $short = FALSE, $inline = TRUE) {
        if (!isset($content)) {
            return;
        }
        return $this->_generateOutput($content, $tag, $params, $short);
    }

    protected function _generateOutput($content, $tag = 'p', $params = NULL, $short = FALSE, $inline = TRUE) {
        $output = array(
            'tag' => $tag,
            'params' => $params,
            'short' => $short,
            'inline' => $inline
        );
        if (is_array($content)) {
            if (!array_numeric($content) && !empty($content)) {
                //output is a standard content array
                $output['content'] = array($this->_generateOutput(((isset($content['content']) ? $content['content'] : NULL)), $content['tag'], ((isset($content['params'])) ? $content['params'] : NULL)));
            } elseif (!array_numeric($content) && (!isset($content['content']) || (!array_numeric($content) && isset($content['content']) && empty($content['content'])))) {
                //no content set, generate an empty result
                $output['content'] = NULL;
            } elseif (array_numeric($content)) {
                $output['content'] = $content;
            } else {
                //output is a sequence of content
                $output['content'] = array_map(array($this, '_generateOutput'), $content);
            }
        } elseif (is_string($content)) {
            //set the string as the content directly
            $output['content'] = $content;
        } elseif (is_object($content)) {
            //parse the data object, and set the resulting data as content
            $data_obj = self::_OROBOROS_SYSTEM_DATA_OBJECT;
            if (!($content instanceof \stdClass || $content instanceof $data_obj)) {
                throw new \OroborosModelException('Invalid object passed at ' . __LINE__ . ' of ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_INVALID_OBJECT);
            }
            $output['content'] = $this->_outputCallback(get_object_vars($content));
        }
        return $this->_generateHtmlTag($output['tag'], $output['content'], $output['params'], $output['short'], $output['inline']);
    }

    /**
     * Provides an array_map() method for output generation
     * @see \oroboros\site\traits\utilities\OutputGenerator::_generateOutput()
     * @param array $params an associative array of parameters, may contain the keys tag (string), content (mixed), params (array), and short (bool)
     * @return array The formatted content array
     */
    final private function _outputCallback($params) {
        $output = array(
            'tag' => ((isset($params['tag'])) ? $params['tag'] : 'p'),
            'content' => ((isset($params['content'])) ? (is_array($params['content']) && !array_numeric($params['content']) ? array($params['content']) : $params['content']) : NULL),
            'params' => ((isset($params['params'])) ? $params['params'] : NULL),
            'short' => ((isset($params['short'])) ? $params['short'] : FALSE),
            'meta' => ((isset($params['meta'])) ? $params['meta'] : NULL)
        );
        return $this->_generateOutput($output['content'], $output['tag'], $output['params'], $output['short']);
    }

    /**
     *
     */
    final private function _filterMetaParameters($meta, &$content) {
        if (isset($meta)) {
            if (is_string($meta) || is_int($meta) || (is_array($meta) && array_numeric($meta)))
                throw new \oroboros\lib\exception\LibraryException('Invalid parameters passed at ' . __LINE__ . ' of ' . __METHOD__, self::EXCEPTION_CODE_BAD_PARAMETERS);
            $meta = ((is_object($meta)) ? get_object_vars($meta) : $meta);
            foreach ($meta as $key => $value) {
                switch ($key) {
                    case 'css':
                        //handle template output directives
                        foreach ($args['css'] as $directive => $params) {
                            if (method_exists($this, '_queueStylesheet')) {
                                $this->_queueStylesheet($directive, $params['source'], ((isset($params['inline'])) ? $params['inline'] : FALSE), ( (isset($params['local']) ) ? $params['local'] : FALSE));
                            }
                        }
                        break;
                    case 'scripts':
                        //handle template output directives
                        foreach ($args['scripts'] as $directive => $params) {
                            if (method_exists($this, '_queueStylesheet')) {
                                $this->_queueScript($directive, $params['source'], ((isset($params['inline'])) ? $params['inline'] : FALSE), ( (isset($params['local']) ) ? $params['local'] : FALSE));
                            }
                        }
                        break;
                }
            }
        }
    }

    protected function _generateHtmlTag($tag = NULL, $content = NULL, $params = NULL, $short = FALSE, $inline = FALSE) {
        if (!is_string($tag))
            throw new \oroboros\lib\exception\LibraryException('Invalid tag parameter at ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_BAD_PARAMETERS);
        if (isset($content) && (!is_string($content) && !is_array($content)))
            throw new \oroboros\lib\exception\LibraryException('Invalid content parameter at ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_BAD_PARAMETERS);
        if (isset($params) && !is_array($params))
            throw new \oroboros\lib\exception\LibraryException('Invalid tag arguments params at ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_BAD_PARAMETERS);
        if ($short && $short != TRUE)
            throw new \oroboros\lib\exception\LibraryException('Invalid short tag boolean parameter at ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_BAD_PARAMETERS);
        $output = '<' . rtrim(strtolower($tag) . (isset($params) ? ' ' . $this->_packageTagParams($params) . ' ' : NULL), ' ') . (($short) ? ((in_array(strtolower($tag), array('br', 'hr', 'meta', 'link', 'img'))) ? '>' : ' />') : '>') . (($inline) ? NULL : PHP_EOL);
        if (!isset($content) && $short)
            return $output . (($inline) ? NULL : PHP_EOL);
        $output .= ((is_string($content) ? $content : NULL )) . (($inline) ? NULL : PHP_EOL);
        if (is_array($content)) {
            if (isset($content['meta'])) {
                $meta = $this->_handleElementMeta($content['meta']);
            } else
                $meta = NULL;
            foreach ($content as $item) {
                if (is_string($item)) {
                    //preformatted content
                    $output .= $item . (($inline) ? NULL : PHP_EOL);
                } else {
                    //unformatted content
                    if (!isset($item['tag']))
                        throw new \oroboros\lib\exception\LibraryException('Registered html content does not have a tag value at ' . __METHOD__, self::_EXCEPTION_CODE_GENERAL_MISSING_PARAMETER);
                    $output .= $this->_generateHtmlTag($item['tag'], (isset($item['content']) ? $item['content'] : NULL), (isset($item['params']) ? $item['params'] : NULL), (isset($item['short']) ? $item['short'] : FALSE), ((isset($item['inline'])) ? $item['inline'] : FALSE)) . (($inline) ? NULL : PHP_EOL);
                }
            }
        }
        return $output . (($short) ? null : '</' . strtolower($tag) . '>' . (($inline) ? NULL : PHP_EOL));
    }

    private function _packageTagParams($params) {
        if (!is_array($params))
            throw new \OroborosLibraryException('HTML tag params must be an associative array', self::_EXCEPTION_CODE_GENERAL_BAD_PARAMETERS);
        $output = null;
        foreach ($params as $key => $value) {
            $output .= $key . '="' . $value . '" ';
        }
        return rtrim($output, ' ');
    }
}
Oroboros Core API documentation generated by ApiGen