Services

VerseService

Location: lib/Service/VerseService.php

Responsibilities:

  • Determine language and Bible version (admin → user → default fallback)

  • Build the external API URL

  • Perform the HTTP request

  • Normalise the API response

  • Provide a clean data structure to the controller

LanguageOptions and LanguageLabels

Locations:

  • lib/Service/LanguageOptions.php

  • lib/Service/LanguageLabels.php

Responsibilities:

  • Provide a list of supported language codes

  • Map language codes to human-readable labels

  • Allow easy extension by adding new languages

VersionLabels

Location: lib/Service/VersionLabels.php

Responsibilities:

  • Provide labels for Bible versions

  • Used in both settings UI and widget rendering