166 lines
3.9 KiB
Markdown
166 lines
3.9 KiB
Markdown
```
|
|
██████╗ ██████╗ ██╗ ██╗███████╗██████╗
|
|
██╔══██╗██╔═══██╗██║ ██║██╔════╝██╔══██╗
|
|
██████╔╝██║ ██║██║ █╗ ██║█████╗ ██████╔╝
|
|
██╔═══╝ ██║ ██║██║███╗██║██╔══╝ ██╔══██╗
|
|
██║ ╚██████╔╝╚███╔███╔╝███████╗██║ ██║
|
|
╚═╝ ╚═════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝
|
|
```
|
|
# final class Verse (Details)
|
|
> namespace: **TrueChristianChurch\Joomla\GetBible\Data**
|
|
```uml
|
|
@startuml
|
|
class Verse << (F,LightGreen) >> #RoyalBlue {
|
|
# Chapter $chapter
|
|
# Config $config
|
|
# Prompt $prompt
|
|
# StringHelper $stringHelper
|
|
# array $verses
|
|
+ __construct(Chapter $chapter, Config $config, ...)
|
|
+ getNumber() : string
|
|
+ getName() : string
|
|
+ getText() : string
|
|
+ getVerse() : ?array
|
|
+ getValid() : ?array
|
|
- get() : ?object
|
|
- loadVerseData(string $cacheKey, string $verses) : ?object
|
|
- selectedVersesRange(string $verses) : array
|
|
- splitAndTrim(string $str) : array
|
|
- validateSelectedVersesNumbers(array $verses, array $chapter) : ?string
|
|
- getVersesString(array $verses, array $chapter) : ?string
|
|
- getVersesArray(array $verses, array $chapter) : ?array
|
|
- validVerseNumbers(array $range) : ?array
|
|
- generateCacheKey(string $abbreviation, int $book, ...) : string
|
|
}
|
|
|
|
note right of Verse::__construct
|
|
Constructor
|
|
|
|
since: 2.0.1
|
|
|
|
arguments:
|
|
Chapter $chapter
|
|
Config $config
|
|
Prompt $prompt
|
|
StringHelper $stringHelper
|
|
end note
|
|
|
|
note left of Verse::getNumber
|
|
Get the verse number/s
|
|
|
|
since: 2.0.1
|
|
return: string
|
|
end note
|
|
|
|
note right of Verse::getName
|
|
Get the verse name
|
|
|
|
since: 2.0.1
|
|
return: string
|
|
end note
|
|
|
|
note left of Verse::getText
|
|
Get the verse text
|
|
|
|
since: 2.0.1
|
|
return: string
|
|
end note
|
|
|
|
note right of Verse::getVerse
|
|
Get the verse array
|
|
|
|
since: 2.0.1
|
|
return: ?array
|
|
end note
|
|
|
|
note left of Verse::getValid
|
|
Get the valid verse numbers
|
|
|
|
since: 2.0.1
|
|
return: ?array
|
|
end note
|
|
|
|
note right of Verse::get
|
|
Get the verse
|
|
|
|
since: 2.0.1
|
|
return: ?object
|
|
end note
|
|
|
|
note left of Verse::loadVerseData
|
|
Loads the verse data
|
|
|
|
since: 2.0.1
|
|
return: ?object
|
|
end note
|
|
|
|
note right of Verse::selectedVersesRange
|
|
Get the range of verses selected
|
|
|
|
since: 2.0.1
|
|
return: array
|
|
end note
|
|
|
|
note left of Verse::splitAndTrim
|
|
Split string by '-' and trim each element.
|
|
|
|
since: 2.0.1
|
|
return: array
|
|
end note
|
|
|
|
note right of Verse::validateSelectedVersesNumbers
|
|
Validate that these verse numbers exist in chapter
|
|
|
|
since: 2.0.1
|
|
return: ?string
|
|
end note
|
|
|
|
note left of Verse::getVersesString
|
|
Get the verses selected as text string
|
|
|
|
since: 2.0.1
|
|
return: ?string
|
|
end note
|
|
|
|
note right of Verse::getVersesArray
|
|
Get the verses selected as multidimensional array
|
|
|
|
since: 2.0.1
|
|
return: ?array
|
|
end note
|
|
|
|
note left of Verse::validVerseNumbers
|
|
Get all valid verse numbers
|
|
|
|
since: 2.0.1
|
|
return: ?array
|
|
end note
|
|
|
|
note right of Verse::generateCacheKey
|
|
Generates a cache key based on the abbreviation, book, chapter, and verses
|
|
|
|
since: 2.0.1
|
|
return: string
|
|
|
|
arguments:
|
|
string $abbreviation
|
|
int $book
|
|
int $chapter
|
|
string $verses
|
|
end note
|
|
|
|
@enduml
|
|
```
|
|
|
|
---
|
|
```
|
|
██╗ ██████╗██████╗
|
|
██║██╔════╝██╔══██╗
|
|
██║██║ ██████╔╝
|
|
██ ██║██║ ██╔══██╗
|
|
╚█████╔╝╚██████╗██████╔╝
|
|
╚════╝ ╚═════╝╚═════╝
|
|
```
|
|
> Build with [Joomla Component Builder](https://git.vdm.dev/joomla/Component-Builder)
|
|
|