Heratio Framework API Reference

Heratio

Table of Contents

Interfaces

BackupServiceContract
IiifProviderInterface
Interface for IIIF manifest providers.
MetadataTemplateProviderInterface
Interface for plugins that provide metadata template support.
Model3DProviderInterface
Interface for 3D model viewer providers.
PiiRedactionProviderInterface
Interface for PII redaction providers.
PluginManagerContract
QueueJobInterface
Interface for queue job handlers.
RicSyncContract
SavedSearchContract
SearchHistoryContract
SearchTemplateContract
SectorProviderInterface
Interface for plugins that provide GLAM sector support.
ExtensionManagerContract
AccessionWriteServiceInterface
Contract for accession write operations.
AclWriteServiceInterface
Contract for ACL / permission-related persistence.
ActorWriteServiceInterface
Contract for actor write operations.
DigitalObjectWriteServiceInterface
Contract for digital object write operations.
DonorWriteServiceInterface
Contract for donor write operations.
FeedbackWriteServiceInterface
Contract for feedback write operations.
ImportWriteServiceInterface
Contract for import write operations.
InformationObjectWriteServiceInterface
Contract for information object write operations.
JobWriteServiceInterface
Contract for job write operations.
PhysicalObjectWriteServiceInterface
Contract for PhysicalObject write operations.
RequestToPublishWriteServiceInterface
Contract for request-to-publish write operations.
RightsHolderWriteServiceInterface
Contract for rights holder write operations.
SettingsWriteServiceInterface
Contract for settings persistence.
TermWriteServiceInterface
Contract for term/taxonomy write operations.
UserWriteServiceInterface
Contract for user write operations.

Classes

AhgActions
Base action class for AHG plugins.
AhgComponents
Base component class for AHG plugins.
AhgTask
Base task class for AHG CLI commands.
AtomPluginBridge
PropelBridge
Propel Autoloader Bridge — boot Propel WITHOUT Symfony.
ExtensionDisableCommand
CLI command to disable an extension.
MigrateCommand
sfAction
sfActions
sfComponent
sfComponents
sfError404Exception
sfException
sfInitializationException
sfConfigurationException
sfParseException
sfParameterHolder
sfStopException
BasePeer
Criteria
CriterionStub
Stub for Propel's Criterion object, used in OR grouping.
arB5WidgetFormSchemaFormatter
arWidgetFormInputFileEditable
arB5WidgetFormInputFileEditable
arWidgetFormSelectRadio
arWidgetFormUploadQuota
sfValidatedFile
QubitValidatorPassword
QubitValidatorAccessionIdentifier
QubitValidatorActorDescriptionIdentifier
QubitValidatorUrl
QubitValidatorForbiddenValues
QubitValidatorCountable
QubitWidgetFormInputMany
QubitWidgetFormSchemaFormatterList
sfForm
sfFormField
sfValidatorBase
sfValidator
sfValidatorString
sfValidatorInteger
sfValidatorNumber
sfValidatorPass
sfValidatorBoolean
sfValidatorChoice
sfValidatorDate
sfValidatorUrl
sfValidatorEmail
sfValidatorRegex
sfValidatorCallback
sfValidatorFile
sfValidatorAnd
sfValidatorOr
sfValidatorI18nChoiceLanguage
QubitValidatorCountable
QubitValidatorDates
QubitValidatorForbiddenValues
QubitValidatorMenuName
QubitValidatorMimeType
QubitValidatorPassword
QubitValidatorUrl
sfValidatorError
sfValidatorErrorSchema
sfValidatorSchema
sfValidatorSchemaCompare
sfWidget
sfWidgetForm
sfWidgetFormInput
sfWidgetFormInputText
sfWidgetFormInputHidden
sfWidgetFormInputPassword
sfWidgetFormInputCheckbox
sfWidgetFormInputFile
sfWidgetFormSelect
sfWidgetFormTextarea
sfWidgetFormChoice
sfWidgetFormSelectRadio
sfWidgetFormI18nChoiceLanguage
QubitWidgetFormInputMany
sfWidgetFormSchema
sfWidgetFormSchemaFormatter
sfWidgetFormSchemaFormatterTable
sfWidgetFormSchemaFormatterList
Propel
Propel ORM Shim — Standalone replacement for Propel 1.4.
QubitActorI18n
QubitPhysicalObjectI18n
QubitInformationObjectI18n
QubitRepositoryI18n
QubitTermI18n
QubitEventI18n
QubitAccessionI18n
QubitNoteI18n
QubitContactInformationI18n
QubitSlugPeer
Qubit
QubitAccession
QubitAcl
QubitAclGroup
QubitAclPermission
QubitActor
QubitApi404Exception
API 404 Not Found Exception - Replaces QubitApi404Exception.
QubitApiBadRequestException
API Bad Request Exception - Replaces QubitApiBadRequestException.
QubitApiNotAuthorizedException
API Not Authorized Exception - Replaces QubitApiNotAuthorizedException.
QubitApiForbiddenException
API Forbidden Exception - Replaces QubitApiForbiddenException.
QubitAuditLog
QubitAuditObject
QubitBookoutObject
QubitBookoutObjectI18n
QubitCache
QubitClipboardSave
QubitClipboardSaveItem
QubitContactInformation
QubitCultureFallback
QubitDeaccession
QubitDescription
QubitDigitalObject
QubitDonor
QubitEvent
QubitFeedback
QubitFindingAid
QubitFindingAidGenerator
QubitFlatfileExport
QubitFunctionObject
QubitGrantedRight
QubitHtmlPurifier
QubitInformationObject
QubitJob
QubitLftSyncer
QubitMenu
QubitNote
QubitOai
QubitObject
QubitObjectTermRelation
QubitOtherName
QubitPager
QubitPdo
QubitPdo — Standalone PDO wrapper (Symfony-free).
QubitPhysicalObject
QubitProperty
QubitRelation
QubitRepository
QubitRequestToPublish
QubitRequestToPublishI18n
QubitRights
QubitRightsHolder
QubitSearch
QubitSearchPager
QubitSetting
QubitSlug
QubitStaticPage
QubitStatus
QubitTaxonomy
QubitTerm
QubitUser
sfEvent
sfEvent stub for standalone Heratio mode.
sfPluginConfiguration
sfPluginConfiguration stub for standalone Heratio mode.
sfSimpleAutoload
sfSimpleAutoload stub for standalone Heratio mode.
sfWebRequest
Minimal sfWebRequest shim for standalone Heratio mode.
arBaseTask
sfBaseTask
sfCommandOption
sfCommandArgument
sfFormatter
sfEventDispatcher
sfEvent
sfDatabaseManager
ProjectConfiguration
sfContext
sfCommandManager
TaskRunner
sfCultureInfo
sfDateFormat
sfFilter
sfFilterChain
sfInflector
sfRoute
sfRequestRoute
sfObjectRoute
sfToolkit
BaseCommand
Base class for all AtoM Heratio CLI commands.
CommandRegistry
Auto-discovers and registers CLI commands from framework and plugin directories.
MoveDescriptionRelationsCommand
Move actor-description relations.
DigitalObjectDeleteCommand
Delete digital objects given an archival description slug.
DigitalObjectExtractTextCommand
Extract text from PDFs for search indexing.
DigitalObjectLoadCommand
Load a CSV list of digital objects.
DigitalObjectRegenDerivativesCommand
Regenerate digital object derivatives from master copy.
BulkCsvExportCommand
Bulk export multiple CSV files at once.
BulkExportCommand
Bulk export multiple XML files at once.
CsvAccessionExportCommand
Export accession record data to a CSV file.
CsvAuthorityExportCommand
Export authority record data as CSV file(s).
CsvExportCommand
Export descriptions as CSV file(s).
CsvExportTermUsageCommand
Export terms associated with information objects as CSV file(s).
CsvPhysicalStorageHoldingsCommand
Export physical storage holdings report as CSV data.
CsvRepositoryExportCommand
Export repository information to a CSV.
EacExportCommand
Bulk export multiple EAC XML files at once for authority records.
FindingAidGenerateCommand
Generate a Finding Aid document.
ConsolidateCommand
Consolidate i18n strings from plugin-specific XLIFF directories.
CustomLinkToMarkdownCommand
Convert custom link format to Markdown syntax in various i18n table fields.
DiffCommand
Output a diff of removed and added i18n messages.
RectifyCommand
Rectify existing i18n strings for the application.
RemoveDuplicatesCommand
Remove duplicate i18n source strings across plugins.
RemoveHtmlTagsCommand
Remove HTML tags from i18n table fields and convert HTML entities.
UpdateFixturesCommand
Update i18n fixtures from XLIFF translation files.
BulkImportCommand
Bulk import multiple XML/CSV files at once.
CsvAccessionImportCommand
Import accessions from CSV.
CsvAuditImportCommand
Audit CSV import data.
CsvAuthorityRecordImportCommand
Import authority records from CSV.
CsvAuthorityRecordRelationImportCommand
Import authority record relations from CSV.
CsvCheckImportCommand
Check CSV import file, providing diagnostic info.
CsvCustomImportCommand
Custom CSV import using user-defined criteria.
CsvDeaccessionImportCommand
Import deaccessions from CSV.
CsvDigitalObjectPathsCheckCommand
Check digital object paths in CSV data.
CsvEventImportCommand
Import CSV event record data.
CsvImportCommand
Import CSV information object data.
CsvPhysicalObjectImportCommand
Import physical objects from CSV.
CsvRepositoryImportCommand
Import repositories from CSV.
DeleteImportCommand
Delete data created by an import.
DipObjectsImportCommand
Import digital objects from Archivematica DIP using CSV file.
ClearJobsCommand
Clear AtoM jobs.
JobWorkerCommand
Gearman worker daemon.
ListJobsCommand
List AtoM jobs.
QueueCleanupCommand
Clean up old completed queue jobs and logs.
QueueFailedCommand
List or flush failed queue jobs.
QueueRetryCommand
Retry failed queue jobs.
QueueStatusCommand
Show queue status and statistics.
QueueWorkCommand
Persistent queue worker daemon.
PhysicalObjectDeleteUnlinkedCommand
Delete physical objects that are not linked to descriptions.
PhysicalObjectNormalizeCommand
Normalize physical object data.
BuildNestedSetCommand
Build all nested set values.
GenerateSlugsCommand
Generate slugs for all slug-less objects.
DocumentCommand
Print indexing configuration / document data.
PopulateCommand
Populate the search index.
StatusCommand
Display search index status.
EncryptFieldsCommand
CLI command to encrypt or decrypt database field categories.
EncryptFilesCommand
CLI command to batch-encrypt existing digital objects on disk.
EncryptionKeyCommand
CLI command to generate and validate the encryption master key.
EncryptionStatusCommand
CLI command to display encryption status dashboard.
TaxonomyNormalizeCommand
Normalize taxonomy terms.
ThreeDDerivativesCommand
Generate thumbnail derivatives for 3D model digital objects.
ThreeDMultiangleCommand
Generate multi-angle renders of 3D models for AI description and gallery display.
AddSuperuserCommand
Add a new superuser (administrator) to AtoM.
CacheXmlRepresentationsCommand
Render all descriptions as XML and cache the results as files.
DataIntegrityRepairCommand
Check and repair data integrity issues.
DeleteDescriptionCommand
Delete a description and its descendants.
DeleteDraftsCommand
Delete all draft descriptions.
DeleteUserCommand
Delete a user from AtoM.
ExpireDataCommand
Expire and remove data past retention dates.
FindRepositoryLatLngCommand
Find and set latitude/longitude for repositories via geocoding.
GetVersionCommand
Display AtoM and framework version information.
HeratioVerifyCommand
Verify the standalone Heratio boot chain.
InstallCommand
Run the AtoM installation process.
PluginsCommand
Manage AtoM plugins stored in the database.
PromoteUserCommand
Promote a user to administrator.
PurgeCommand
Purge all data from AtoM and reinitialize.
RenameSlugCommand
Rename a slug in the slug table.
ResetPasswordCommand
Reset a user's password.
RunCustomLogicCommand
Run ad-hoc PHP logic contained in a file.
SettingsCommand
Show or set AtoM settings.
SitemapCommand
Generate an XML sitemap.
UnlinkCreatorCommand
Unlink creators from descriptions so creator inheritance can be used.
UpdatePublicationStatusCommand
Update publication status of archival descriptions.
ExtensionCommand
MigrateCommand
SymfonyBridgeCommand
Base command for tasks that still need Symfony/Propel under the hood.
UpdateCommand
AclConstants
ACL Constants - Replaces QubitAcl and QubitAclGroup constants
LevelConstants
Level of Description Constants.
TaxonomyConstants
Taxonomy Constants - Replaces QubitTaxonomy constants
TermConstants
Term Constants - Replaces QubitTerm constants
DatabaseManager
Database Manager for Framework v2.
EncryptableFieldService
Layer 2: Transparent database field encryption.
EncryptionService
Core encryption service with dual V1/V2 algorithm support.
FileEncryptionService
Layer 1: Digital object file encryption.
KeyManager
Manages the master encryption key with key-ID tracking and purpose-specific subkey derivation.
LoginSecurityService
Login security service — brute force protection.
PasswordPolicyService
Password Policy Service — expiry and history enforcement.
TotpService
TOTP (Time-based One-Time Password) Service.
DatabaseBootstrap
Database bootstrap for Laravel Query Builder.
MigrationRunner
CreatePluginConfigurationTable
Repository
Base Repository providing Laravel Query Builder interface.
PluginSeeder
Api404Exception
API 404 Not Found Exception - Replaces QubitApi404Exception.
ApiBadRequestException
API Bad Request Exception - Replaces QubitApiBadRequestException.
ApiException
Base API Exception - Replaces QubitApiException.
ApiForbiddenException
API Forbidden Exception - Replaces QubitApiForbiddenException.
ApiNotAuthorizedException
API Not Authorized Exception - Replaces QubitApiNotAuthorizedException.
PluginDependencyException
PluginException
PluginNotFoundException
PluginStateException
ServiceException
Service Layer Exception for business logic errors.
ExtensionManager
ExtensionProtection
Extension Protection Service
ExtensionDataHandler
MigrationHandler
PluginFetcher
FormFieldFactory
Form Field Factory.
CommonHelper
Common utility functions used across AHG plugins.
CultureHelper
Culture Helper - Provides current user culture for i18n queries.
DateHelper
Date Helper - Provides date formatting helper functions
DigitalObjectViewerHelper
Digital Object Viewer Helper - IIIF and media viewer rendering
DisplayStandardHelper
EmbeddedMetadataParser
Embedded Metadata Parser - Extract EXIF, IPTC, and XMP from files
ErrorHandler
Standardized error handling utilities.
ExternalServiceHelper
Helper for accessing external service configuration.
IconHelper
InformationObjectHelper
Information Object Helper - Renders viewers for digital objects
MediaHelper
Media Helper - Enhanced media player with transcription support
PathResolver
Centralized path resolution for AtoM framework.
ResponseHelper
Helper for standardized API/AJAX responses.
TermHelper
Lightweight term lookup helper — replaces QubitTerm::getById() for read-only access.
ThemeHelper
AccessDecisionService
Access Decision Service.
AccessRequestService
Access Request Service.
EmbargoService
Embargo Service.
POPIAService
POPIA Service.
TrustLevelService
Trust Level Service.
BrandingService
Branding Service.
FeatureToggleService
Feature Toggle Service.
UserManagementService
User Management Service.
AlertService
Alert Service.
AnalyticsService
Analytics Service.
SearchIntelligenceService
Search Intelligence Service.
LandingConfigService
Landing Config Service.
ContributionService
Contribution Service.
ContributorService
Contributor Service.
AccessController
Access Controller.
ConfigController
Admin Config Controller.
AnalyticsController
Analytics Controller.
CustodianController
Custodian Controller.
DiscoverController
Discover Controller.
LandingController
Landing Controller.
AuditService
Audit Service.
BatchOperationsService
Batch Operations Service.
DiscoveryService
Discovery Service.
LearningService
Learning Service.
QueryUnderstandingService
Query Understanding Service.
ResultFusionService
Result Fusion Service.
ResultPresenter
Result Presenter.
SearchOrchestrator
Search Orchestrator.
FilterService
Filter Service.
FilterTypeRegistry
Filter Type Registry.
FilterValueResolver
Filter Value Resolver.
DiscoveryLogRepository
Discovery Log Repository.
FilterRepository
Filter Repository.
HeroImageRepository
Hero Image Repository.
LandingConfigRepository
Landing Config Repository.
StoryRepository
Story Repository.
EntityCacheSyncService
Entity Cache Sync Service.
KnowledgeGraphService
Knowledge Graph Service.
EscaperShim
Standalone sfOutputEscaper implementation for when Symfony is not loaded.
EscaperObjectDecoratorShim
Standalone sfOutputEscaperObjectDecorator — thin wrapper around an object.
EscaperArrayDecoratorShim
Standalone sfOutputEscaperArrayDecorator.
SfConfigShim
Standalone sfConfig implementation for when Symfony is not loaded.
SfContextAdapter
Standalone sfContext implementation backed by Laravel services.
SfConfigurationAdapter
Minimal configuration adapter for standalone mode.
SfRoutingAdapter
Minimal routing adapter for standalone URL generation.
SfLoggerAdapter
Minimal logger adapter for standalone mode.
SfEventDispatcherAdapter
Minimal event dispatcher adapter for standalone mode.
SfControllerAdapter
Minimal sfController adapter for standalone mode.
SfActionStackAdapter
Minimal action stack adapter.
SfConfigCacheAdapter
Minimal config cache adapter for standalone mode.
SfI18nAdapter
Minimal i18n adapter for standalone mode.
SfProjectConfigurationShim
Standalone sfProjectConfiguration shim.
SfResponseAdapter
Standalone sfWebResponse adapter for when Symfony is not loaded.
SfUserAdapter
Wraps $_SESSION data with the sfUser/myUser API.
SfWebRequestAdapterBase
SfWebRequestAdapter
Wraps Illuminate\Http\Request with the sfWebRequest API.
ActionBridge
Bridge that dispatches to existing plugin action classes from Laravel routes.
AhgActorEditController
AHG equivalent of DefaultEditAction.
AhgApiController
API-specific base controller for AHG plugins.
AhgControllerBase
AhgController
Standalone base controller for AHG plugins.
AhgEditController
AHG equivalent of DefaultEditAction.
AhgRepositoryEditController
AHG equivalent of DefaultEditAction.
AuthController
Standalone authentication controller for Heratio.
ComponentRenderer
Standalone component renderer for when Symfony is not loaded.
StandaloneViewerController
Universal entity viewer for standalone mode.
Kernel
Heratio Application Kernel — standalone Laravel HTTP kernel.
AuthMiddleware
Per-request authentication validation.
CspMiddleware
Content Security Policy middleware.
CsrfMiddleware
CSRF Middleware for standalone (Heratio) mode.
ForceHttpsMiddleware
Force HTTPS for authenticated and login routes.
IpWhitelistMiddleware
IP whitelist middleware for admin access.
LimitResultsMiddleware
Limit browse/search results per page.
LoadSettingsMiddleware
Load application settings from the database.
MetaMiddleware
Set site meta information (title, description).
RequestIdMiddleware
Request ID middleware.
SecurityHeadersMiddleware
Security headers middleware.
SessionMiddleware
Start the PHP native session using Symfony's cookie name.
TransactionMiddleware
Database transaction middleware with deadlock retry.
RouteCollector
Discover and register routes from enabled AHG plugins.
RouteRegistry
Static reverse route registry for standalone mode.
ServiceProvider
Base class for plugin service providers.
ExtendedLevelsOfDescription
Extended Levels of Description Migration.
Providers
Service provider registry for plugin capabilities.
ReportFilter
Report Filter - encapsulates report query parameters.
AuthorityRecordReportResult
Authority Record Report Result.
AccessionReportService
Accession Report Service - Standard AtoM accession fields.
AuthorityRecordReportService
Authority Record Report Service - Migrated to Laravel Query Builder.
DonorReportService
Donor Report Service - Standard AtoM fields only.
InformationObjectReportService
Information Object Report Service.
PhysicalObjectReportService
Physical Object Report Service - Standard AtoM fields only.
RepositoryReportService
Repository Report Service.
UpdatesReportService
Updates Report Service.
AccessionRepository
Accession Repository.
ActorRepository
Repository for actor (authority record) table.
DigitalObjectRepository
Digital Object Repository
DisplayPreferenceRepository
Repository for managing user display preferences.
ExtensionRepository
GlobalDisplaySettingsRepository
Repository for managing global display mode settings.
InformationObjectRepository
Information Object Repository.
ItemPhysicalLocationRepository
Repository for Item-level Physical Location data
LandingPageRepository
Landing Page Repository
LibraryItemRepository
Repository for Library Item related data (subjects, creators).
PhysicalObjectExtendedRepository
Repository for Extended Physical Object data
PhysicalObjectRepository
Physical Object Repository.
PluginRepository
Plugin Repository
RepositoryRepository
Repository Repository.
SearchHistoryRepository
SearchTemplateRepository
TiffPdfMergeRepository
Repository for TIFF to PDF merge operations Uses Laravel Query Builder
VendorRepository
WatermarkRepository
AddActionRoute
Route class for "add" actions (/term/add, /accession/add, etc.)
AhgMetadataRoute
Extended MetadataRoute that adds GLAM sector plugins.
QubitMetadataRoute
Metadata route handler for AtoM.
RouteLoader
Fluent route definition for AHG plugins.
AccessRequestService
Access Request Service
AclGroupService
ACL Group Service - Replaces QubitAclGroup
AclService
ACL Service - Replaces QubitAcl (362 uses)
AdvancedSearchService
AhgSettingsService
AHG Settings Service
AuthService
Standalone authentication service for Heratio.
BackupService
BackupSettingsService
CacheService
Cache Service - Replaces QubitCache (38 uses)
ConfigReader
ConfigService
Configuration service — wraps sfConfig for forward compatibility.
CsrfService
CSRF Protection Service.
EntityDeleteService
Unified entity delete service for standalone Heratio mode.
DerivativeWatermarkService
DigitalObjectService
Digital Object Service
DisplayModeService
Service for managing display modes across the application.
DropdownService
Dropdown Service — column-aware validation and resolution.
EntityQueryService
Standalone entity query service -- replaces QubitObject::getBySlug(), QubitQuery, and MPTT hierarchy traversal for standalone Heratio mode.
ExtendedRightsService
Extended Rights Service Handles RightsStatements.org, Creative Commons, TK Labels, and Embargoes
FileValidationService
File Validation Service.
GlamIdentifierService
GLAM Identifier Service
HtmlPurifierService
HTML Purifier Service - Replaces QubitHtmlPurifier.
HttpClientService
HTTP Client Service — safe outbound HTTP with SSRF protection.
IdentifierSchemeService
IdentifierSchemeService
IiifCollectionService
Service for managing IIIF Collections (manifest groupings).
IiifViewerService
Service for managing IIIF Viewer settings and rendering.
IsbnLookupService
ISBN Lookup Service
LandingPageService
Landing Page Service
LanguageService
Language Service.
LevelOfDescriptionService
Level of Description Service.
LibraryCoverService
Service to download and store library book covers as AtoM digital objects
LightweightDigitalObject
Lightweight digital object wrapper for template compatibility.
LightweightObject
Generic lightweight object wrapper for template compatibility.
LightweightResource
Lightweight resource wrapper for template compatibility.
MenuService
Menu service for standalone (Heratio) layout.
MetadataTemplateRegistry
Registry for metadata template providers.
ModuleDiscoveryService
Auto-discovers and registers modules from enabled plugins.
NumberingService
Numbering Service for GLAM/DAM Sectors
OaiService
OAI Service - Replaces QubitOai.
OllamaPageIndexClient
Ollama PageIndex Client
PageIndexService
PageIndex Service
PaginationService
Standalone pagination service - replaces QubitPager + Propel Criteria.
SimplePager
Framework-level SimplePager - replaces per-plugin SimplePager implementations.
PdoService
PDO Service - Replaces QubitPdo Uses Laravel Query Builder but provides PDO-style interface
PluginManagerService
QueueCliTaskHandler
Bridge handler that wraps existing Symfony CLI tasks.
QueueJobContext
Context object passed to job handlers for progress reporting and logging.
QueueJobRegistry
Static registry mapping job_type strings to handler classes.
QueueService
Durable Queue Service for AtoM Heratio.
RicSyncService
RightsService
ScheduleService
BrowseSearchEnhancer
Browse Search Enhancer
EnhancedSearchFilter
Enhanced Search Filter Applies synonym expansion to Elastica queries
SearchAccessFilterService
SearchIntegrationService
Search Integration Service Bridges semantic search with standard AtoM browse
SearchService
Standalone Elasticsearch search service for Heratio.
SectorRegistry
Registry for GLAM sector providers.
SecurityAuditService
Service for Security Audit Reports
SecurityClearanceService
SettingService
Setting Service - Replaces QubitSetting (316 uses)
SettingWrapper
Wrapper for setting objects to provide QubitSetting-compatible interface
ShellCommandService
Shell Command Service — safe shell execution utilities.
SlugService
Slug Service - Replaces QubitSlug.
TaxonomyService
Taxonomy Service - Replaces QubitTaxonomy (235 uses)
TermService
Term Service - Replaces QubitTerm (658 uses)
ThreeDAutoConfigService
ThreeDThumbnailService
Service for generating thumbnails from 3D model files (GLB, GLTF, OBJ, etc.)
TiffPdfMergeService
Service for merging TIFF/image files into PDF documents
UserService
User Service - Replaces QubitUser.
WatermarkService
WatermarkService - Handles watermark application to images.
WatermarkSettingsService
WatermarkSettingsService - Manages watermark configuration.
StandaloneAccessionWriteService
Standalone accession write service using Laravel Query Builder only.
StandaloneAclWriteService
Standalone ACL write service.
StandaloneActorWriteService
Standalone actor write service using Laravel Query Builder only.
StandaloneDigitalObjectWriteService
Standalone digital object write service using Laravel Query Builder only.
StandaloneDonorWriteService
Standalone donor write service using Laravel Query Builder only.
StandaloneFeedbackWriteService
Standalone feedback write service using Laravel Query Builder only.
StandaloneImportWriteService
Standalone import write service using Laravel Query Builder only.
StandaloneInformationObjectWriteService
Standalone information object write service using Laravel Query Builder only.
StandaloneJobWriteService
Standalone job write service using Laravel Query Builder only.
StandalonePhysicalObjectWriteService
Standalone physical object write service using Laravel Query Builder only.
StandaloneRequestToPublishWriteService
Standalone request-to-publish write service using Laravel Query Builder only.
StandaloneRightsHolderWriteService
Standalone rights holder write service using Laravel Query Builder only.
StandaloneSettingsWriteService
Standalone settings write service using Laravel Query Builder only.
StandaloneTermWriteService
Standalone term/taxonomy write service using Laravel Query Builder only.
StandaloneUserWriteService
Standalone user write service using Laravel Query Builder only.
WriteServiceFactory
Factory for resolving WriteService interfaces to implementations.
XmlParserService
XML Parser Service — safe XML parsing with XXE protection.
sfForm
Minimal sfForm stub for standalone mode.
BladeRenderer
Singleton Blade template renderer for the AtoM AHG Framework.

Traits

QubitModelTrait
Shared trait for Qubit model compatibility stubs.
ExtensionManagerProtected
Extension Manager with protection level enforcement
EntityWriteTrait
Shared trait for standalone WriteService implementations.

Functions

url_for()  : string
Generate a URL for a route or resource.
_resolve_named_route()  : string
Resolve a named route (@name?params) to a URL.
link_to()  : string
Generate an HTML anchor tag.
include_partial()  : void
Render and output a partial template.
get_partial()  : string
Render a partial template and return as string.
include_component()  : void
Render and output a component (action + template).
get_component()  : string
Render a component and return as string.
slot()  : void
Start capturing content for a named slot.
end_slot()  : void
End the current slot capture.
has_slot()  : bool
Check if a named slot has content.
get_slot()  : string
Get the content of a named slot.
include_slot()  : bool
Output a named slot.
content_tag()  : string
Generate an HTML content tag.
tag()  : string
Generate a self-closing HTML tag.
image_tag()  : string
Generate an <img> tag.
_tag_options()  : string
Convert options array to HTML attribute string.
use_helper()  : void
Load a helper group. No-op in standalone mode.
use_stylesheet()  : void
Add a stylesheet to the response. No-op in standalone (assets handled by layout).
use_javascript()  : void
Add a JavaScript to the response. No-op in standalone.
format_date()  : string
Format a date value.
format_number()  : string
Format a number.
_compute_public_path()  : string
Compute a public path for an asset.
esc_entities()  : string
Escape HTML entities.
esc_raw()  : mixed
Return value without escaping (identity function).
csrf_field()  : string
Render a hidden input field containing the CSRF token.
csrf_token()  : string
Get the current CSRF token string.
csrf_meta()  : string
Render a meta tag containing the CSRF token for JS access.
__()  : string
atom_url()  : string
Generate a URL from a named Symfony route.
csp_nonce_attr()  : string
Return the CSP nonce as an HTML attribute string.
ahg_config()  : mixed
Get an AtoM configuration value via ConfigService.
atom_flash()  : string|null
Get a flash message from the Symfony user session.
slot()  : mixed
end_slot()  : mixed
get_slot()  : mixed
has_slot()  : mixed
include_slot()  : mixed
decorate_with()  : mixed
url_for()  : mixed
link_to()  : mixed
esc_specialchars()  : mixed
esc_entities()  : mixed
esc_raw()  : mixed
format_number()  : mixed
format_date()  : mixed
use_helper()  : mixed
use_stylesheet()  : mixed
use_javascript()  : mixed
javascript_tag()  : mixed
image_tag()  : mixed
public_path()  : mixed
get_partial()  : mixed
include_partial()  : mixed
get_component()  : mixed
include_component()  : mixed
get_component_slot()  : mixed
include_component_slot()  : mixed
include_title()  : mixed
__()  : mixed
render_field()  : mixed
Minimal standalone shim for render_field().
render_show()  : mixed
Minimal standalone shim for render_show().
render_show_repository()  : mixed
render_value()  : mixed
render_value_inline()  : mixed
render_value_html()  : mixed
get_search_i18n()  : mixed
Extract an i18n field from a search result document (ES or DB row).
check_field_visibility()  : mixed
format_script()  : mixed
strip_markdown()  : mixed
render_title()  : mixed
Minimal standalone shim for render_title().
format_language()  : mixed
Format an ISO 639 language code as a human-readable name.
format_country()  : mixed
csrf_field()  : string
Render a hidden input field containing the CSRF token.
csrf_token()  : string
Get the current CSRF token string.
csrf_meta()  : string
Render a meta tag containing the CSRF token for JS access.
render_b5_field()  : mixed
render_b5_show_field_css_classes()  : mixed
render_b5_show_subfield_css_classes()  : mixed
render_b5_show()  : mixed
render_b5_show_container()  : mixed
render_b5_show_label_css_classes()  : mixed
render_b5_show_label()  : mixed
render_b5_show_value_css_classes()  : mixed
render_b5_show_value()  : mixed
render_b5_section_heading()  : mixed
render_b5_show_list_css_classes()  : mixed
add_paragraphs_and_linebreaks()  : mixed
hr_filesize()  : mixed
render_treeview_node()  : mixed
render_b5_treeview_node()  : mixed
is_using_cli()  : mixed
get_search_creation_details()  : mixed
render_autocomplete_string()  : mixed
escape_dc()  : mixed
render_search_result_date()  : mixed

Functions

url_for()

Generate a URL for a route or resource.

url_for(mixed $routeOrResource[, mixed $options = [] ]) : string

In Symfony mode this is provided by the Url helper. In standalone mode we handle the most common patterns:

  • String URL: returned as-is
  • Named route "@name?params": resolved via sfContext routing (if available)
  • Array with 'module'+'action': generates /module/action
  • Array with object + 'module': generates /module/slug
Parameters
$routeOrResource : mixed
$options : mixed = []
Return values
string

_resolve_named_route()

Resolve a named route (@name?params) to a URL.

_resolve_named_route(string $route) : string
Parameters
$route : string
Return values
string

Generate an HTML anchor tag.

link_to(string $text[, string|array<string|int, mixed> $url = '' ][, array<string|int, mixed> $options = [] ]) : string
Parameters
$text : string

Link text

$url : string|array<string|int, mixed> = ''

URL or route array

$options : array<string|int, mixed> = []

HTML attributes

Return values
string

include_partial()

Render and output a partial template.

include_partial(string $templateName[, array<string|int, mixed> $vars = [] ]) : void
Parameters
$templateName : string

"module/partial" or just "_partial"

$vars : array<string|int, mixed> = []

Variables to pass

get_partial()

Render a partial template and return as string.

get_partial(string $templateName[, array<string|int, mixed> $vars = [] ]) : string
Parameters
$templateName : string

"module/partial" or just "_partial"

$vars : array<string|int, mixed> = []

Variables to pass

Return values
string

include_component()

Render and output a component (action + template).

include_component(string $module, string $component[, array<string|int, mixed> $vars = [] ]) : void
Parameters
$module : string

Module name

$component : string

Component name

$vars : array<string|int, mixed> = []

Variables to pass

get_component()

Render a component and return as string.

get_component(string $module, string $component[, array<string|int, mixed> $vars = [] ]) : string
Parameters
$module : string

Module name

$component : string

Component name

$vars : array<string|int, mixed> = []

Variables to pass

Return values
string

slot()

Start capturing content for a named slot.

slot(mixed $name) : void
Parameters
$name : mixed

has_slot()

Check if a named slot has content.

has_slot(mixed $name) : bool
Parameters
$name : mixed
Return values
bool

get_slot()

Get the content of a named slot.

get_slot(mixed $name[, mixed $default = '' ]) : string
Parameters
$name : mixed
$default : mixed = ''
Return values
string

include_slot()

Output a named slot.

include_slot(mixed $name) : bool
Parameters
$name : mixed
Return values
bool

content_tag()

Generate an HTML content tag.

content_tag(string $tag[, string $content = '' ][, array<string|int, mixed>|string $options = [] ]) : string
Parameters
$tag : string

Tag name (e.g., 'div', 'span')

$content : string = ''

Tag content

$options : array<string|int, mixed>|string = []

HTML attributes

Return values
string

tag()

Generate a self-closing HTML tag.

tag(string $tag[, array<string|int, mixed>|string $options = [] ]) : string
Parameters
$tag : string

Tag name (e.g., 'br', 'hr', 'img')

$options : array<string|int, mixed>|string = []

HTML attributes

Return values
string

image_tag()

Generate an <img> tag.

image_tag(mixed $source[, mixed $options = [] ]) : string
Parameters
$source : mixed
$options : mixed = []
Return values
string

_tag_options()

Convert options array to HTML attribute string.

_tag_options(mixed $options) : string
Parameters
$options : mixed
Return values
string

use_helper()

Load a helper group. No-op in standalone mode.

use_helper(mixed ...$helpers) : void
Parameters
$helpers : mixed

use_stylesheet()

Add a stylesheet to the response. No-op in standalone (assets handled by layout).

use_stylesheet(mixed $css[, mixed $position = '' ][, mixed $options = [] ]) : void
Parameters
$css : mixed
$position : mixed = ''
$options : mixed = []

use_javascript()

Add a JavaScript to the response. No-op in standalone.

use_javascript(mixed $js[, mixed $position = '' ][, mixed $options = [] ]) : void
Parameters
$js : mixed
$position : mixed = ''
$options : mixed = []

format_date()

Format a date value.

format_date(mixed $date[, string $format = 'f' ][, string $culture = null ]) : string
Parameters
$date : mixed

Date string, timestamp, or DateTime object

$format : string = 'f'

Format string ('f' = full, 'D' = medium, 'p' = pattern, or PHP date format)

$culture : string = null

Culture code (unused in standalone — uses PHP locale)

Return values
string

format_number()

Format a number.

format_number(mixed $number[, mixed $culture = null ]) : string
Parameters
$number : mixed
$culture : mixed = null
Return values
string

_compute_public_path()

Compute a public path for an asset.

_compute_public_path(mixed $source[, mixed $dir = '' ][, mixed $ext = '' ]) : string
Parameters
$source : mixed
$dir : mixed = ''
$ext : mixed = ''
Return values
string

esc_entities()

Escape HTML entities.

esc_entities(mixed $value) : string
Parameters
$value : mixed
Return values
string

esc_raw()

Return value without escaping (identity function).

esc_raw(mixed $value) : mixed
Parameters
$value : mixed

csrf_field()

Render a hidden input field containing the CSRF token.

csrf_field() : string
Return values
string

csrf_token()

Get the current CSRF token string.

csrf_token() : string
Return values
string

csrf_meta()

Render a meta tag containing the CSRF token for JS access.

csrf_meta() : string
Return values
string

__()

__(string $text[, array<string|int, mixed> $args = [] ][, string $catalogue = 'messages' ]) : string
Parameters
$text : string
$args : array<string|int, mixed> = []
$catalogue : string = 'messages'
Return values
string

atom_url()

Generate a URL from a named Symfony route.

atom_url(string $route[, array<string|int, mixed> $params = [] ]) : string
Parameters
$route : string

Named route (e.g., 'ahg_vend_list')

$params : array<string|int, mixed> = []

Route parameters

Return values
string

csp_nonce_attr()

Return the CSP nonce as an HTML attribute string.

csp_nonce_attr() : string

Returns e.g. nonce="abc123" or empty string if no nonce is set.

Return values
string

ahg_config()

Get an AtoM configuration value via ConfigService.

ahg_config(string $key[, mixed $default = '' ]) : mixed

Bridge function for Blade templates — replaces direct sfConfig::get() calls. ConfigService tries app_ prefixed key first, then raw key.

Parameters
$key : string

Config key (without app_ prefix, e.g. 'ui_label_repository')

$default : mixed = ''

Default value if key not found

atom_flash()

Get a flash message from the Symfony user session.

atom_flash(string $type) : string|null
Parameters
$type : string

Flash type (notice, error, success)

Return values
string|null

slot()

slot(mixed $name) : mixed
Parameters
$name : mixed

get_slot()

get_slot(mixed $name[, mixed $default = '' ]) : mixed
Parameters
$name : mixed
$default : mixed = ''

has_slot()

has_slot(mixed $name) : mixed
Parameters
$name : mixed

include_slot()

include_slot(mixed $name) : mixed
Parameters
$name : mixed

decorate_with()

decorate_with(mixed $layout) : mixed
Parameters
$layout : mixed

url_for()

url_for(mixed $params[, mixed $absolute = false ]) : mixed
Parameters
$params : mixed
$absolute : mixed = false
link_to(mixed $text, mixed $url[, mixed $options = [] ]) : mixed
Parameters
$text : mixed
$url : mixed
$options : mixed = []

esc_specialchars()

esc_specialchars(mixed $value) : mixed
Parameters
$value : mixed

esc_entities()

esc_entities(mixed $value) : mixed
Parameters
$value : mixed

esc_raw()

esc_raw(mixed $value) : mixed
Parameters
$value : mixed

format_number()

format_number(mixed $number[, mixed $decimals = 0 ]) : mixed
Parameters
$number : mixed
$decimals : mixed = 0

format_date()

format_date(mixed $date[, mixed $format = 'f' ]) : mixed
Parameters
$date : mixed
$format : mixed = 'f'

use_helper()

use_helper(mixed ...$helpers) : mixed
Parameters
$helpers : mixed

use_stylesheet()

use_stylesheet(mixed $stylesheet[, mixed $position = '' ][, mixed $options = [] ]) : mixed
Parameters
$stylesheet : mixed
$position : mixed = ''
$options : mixed = []

use_javascript()

use_javascript(mixed $javascript[, mixed $position = '' ][, mixed $options = [] ]) : mixed
Parameters
$javascript : mixed
$position : mixed = ''
$options : mixed = []

javascript_tag()

javascript_tag(mixed $content) : mixed
Parameters
$content : mixed

image_tag()

image_tag(mixed $src[, mixed $options = [] ]) : mixed
Parameters
$src : mixed
$options : mixed = []

public_path()

public_path(mixed $file) : mixed
Parameters
$file : mixed

get_partial()

get_partial(mixed $name[, mixed $vars = [] ]) : mixed
Parameters
$name : mixed
$vars : mixed = []

include_partial()

include_partial(mixed $name[, mixed $vars = [] ]) : mixed
Parameters
$name : mixed
$vars : mixed = []

get_component()

get_component(mixed $module, mixed $component[, mixed $vars = [] ]) : mixed
Parameters
$module : mixed
$component : mixed
$vars : mixed = []

include_component()

include_component(mixed $module, mixed $component[, mixed $vars = [] ]) : mixed
Parameters
$module : mixed
$component : mixed
$vars : mixed = []

get_component_slot()

get_component_slot(mixed $name) : mixed
Parameters
$name : mixed

include_component_slot()

include_component_slot(mixed $name) : mixed
Parameters
$name : mixed

__()

__(mixed $text[, mixed $args = [] ][, mixed $catalogue = 'messages' ]) : mixed
Parameters
$text : mixed
$args : mixed = []
$catalogue : mixed = 'messages'

render_field()

Minimal standalone shim for render_field().

render_field(mixed $field[, mixed $resource = null ][, array<string|int, mixed> $options = [] ]) : mixed

In full Symfony mode, this renders a form field with label/error/help. In standalone Heratio mode, we output a basic Bootstrap 5 form group.

Parameters
$field : mixed
$resource : mixed = null
$options : array<string|int, mixed> = []

render_show()

Minimal standalone shim for render_show().

render_show(mixed $label, mixed $value[, array<string|int, mixed> $options = [] ]) : mixed
Parameters
$label : mixed
$value : mixed
$options : array<string|int, mixed> = []

render_show_repository()

render_show_repository(mixed $label, mixed $resource) : mixed
Parameters
$label : mixed
$resource : mixed

render_value()

render_value(mixed $value) : mixed
Parameters
$value : mixed

render_value_inline()

render_value_inline(mixed $value) : mixed
Parameters
$value : mixed

render_value_html()

render_value_html(mixed $value) : mixed
Parameters
$value : mixed

get_search_i18n()

Extract an i18n field from a search result document (ES or DB row).

get_search_i18n(mixed $doc, mixed $field[, mixed $options = [] ]) : mixed

Tries culture-specific nested field, direct field, then any-language fallback.

Parameters
$doc : mixed
$field : mixed
$options : mixed = []

check_field_visibility()

check_field_visibility(mixed $fieldName[, mixed $options = [] ]) : mixed
Parameters
$fieldName : mixed
$options : mixed = []

format_script()

format_script(mixed $script_iso[, mixed $culture = null ]) : mixed
Parameters
$script_iso : mixed
$culture : mixed = null

strip_markdown()

strip_markdown(mixed $text) : mixed
Parameters
$text : mixed

render_title()

Minimal standalone shim for render_title().

render_title(mixed $resource[, mixed $showUntitled = true ]) : mixed

In full Symfony mode, this renders entity title with escaping/truncation. In standalone Heratio mode, we call __toString() with HTML escaping.

Parameters
$resource : mixed
$showUntitled : mixed = true

format_language()

Format an ISO 639 language code as a human-readable name.

format_language(mixed $language_iso[, mixed $culture = null ]) : mixed

In full Symfony mode, this delegates to sfCultureInfo. In standalone mode, we use a built-in lookup of common language codes.

Parameters
$language_iso : mixed
$culture : mixed = null

format_country()

format_country(mixed $country_iso[, mixed $culture = null ]) : mixed
Parameters
$country_iso : mixed
$culture : mixed = null

csrf_field()

Render a hidden input field containing the CSRF token.

csrf_field() : string
Return values
string

csrf_token()

Get the current CSRF token string.

csrf_token() : string
Return values
string

csrf_meta()

Render a meta tag containing the CSRF token for JS access.

csrf_meta() : string
Return values
string

render_b5_field()

render_b5_field(mixed $field[, mixed $translation = null ][, mixed $options = [] ]) : mixed
Parameters
$field : mixed
$translation : mixed = null
$options : mixed = []

render_b5_show_field_css_classes()

render_b5_show_field_css_classes([mixed $options = [] ]) : mixed
Parameters
$options : mixed = []

render_b5_show_subfield_css_classes()

render_b5_show_subfield_css_classes([mixed $options = [] ]) : mixed
Parameters
$options : mixed = []

render_b5_show()

render_b5_show(mixed $label, mixed $value[, mixed $options = [] ]) : mixed
Parameters
$label : mixed
$value : mixed
$options : mixed = []

render_b5_show_container()

render_b5_show_container(mixed $tag, mixed $content[, mixed $cssClasses = '' ][, mixed $options = [] ]) : mixed
Parameters
$tag : mixed
$content : mixed
$cssClasses : mixed = ''
$options : mixed = []

render_b5_show_label_css_classes()

render_b5_show_label_css_classes([mixed $options = [] ]) : mixed
Parameters
$options : mixed = []

render_b5_show_label()

render_b5_show_label(mixed $label[, mixed $options = [] ]) : mixed
Parameters
$label : mixed
$options : mixed = []

render_b5_show_value_css_classes()

render_b5_show_value_css_classes([mixed $options = [] ]) : mixed
Parameters
$options : mixed = []

render_b5_show_value()

render_b5_show_value(mixed $value[, mixed $options = [] ]) : mixed
Parameters
$value : mixed
$options : mixed = []

render_b5_section_heading()

render_b5_section_heading(mixed $text[, mixed $condition = false ][, mixed $url = null ][, mixed $linkOptions = [] ]) : mixed
Parameters
$text : mixed
$condition : mixed = false
$url : mixed = null
$linkOptions : mixed = []

render_b5_show_list_css_classes()

render_b5_show_list_css_classes([mixed $options = [] ]) : mixed
Parameters
$options : mixed = []

add_paragraphs_and_linebreaks()

add_paragraphs_and_linebreaks(mixed $value) : mixed
Parameters
$value : mixed

hr_filesize()

hr_filesize(mixed $val) : mixed
Parameters
$val : mixed

render_treeview_node()

render_treeview_node(mixed $item[, array<string|int, mixed> $classes = [] ][, array<string|int, mixed> $options = [] ]) : mixed
Parameters
$item : mixed
$classes : array<string|int, mixed> = []
$options : array<string|int, mixed> = []

render_b5_treeview_node()

render_b5_treeview_node(mixed $item[, array<string|int, mixed> $classes = [] ][, array<string|int, mixed> $options = [] ]) : mixed
Parameters
$item : mixed
$classes : array<string|int, mixed> = []
$options : array<string|int, mixed> = []

get_search_creation_details()

get_search_creation_details(mixed $hit[, mixed $culture = null ]) : mixed
Parameters
$hit : mixed
$culture : mixed = null

render_autocomplete_string()

render_autocomplete_string(mixed $hit) : mixed
Parameters
$hit : mixed

escape_dc()

escape_dc(mixed $text) : mixed
Parameters
$text : mixed

render_search_result_date()

render_search_result_date(mixed $date) : mixed
Parameters
$date : mixed

        
On this page

Search results