super-powers/src/79d765b3-7319-4988-9730-446c7f347020
2023-04-15 16:49:41 +02:00
..
code.php first commit 2023-03-22 00:47:00 +02:00
code.power update 2023-04-15 16:49:30 2023-04-15 16:49:41 +02:00
README.md first commit 2023-03-22 00:47:00 +02:00
settings.json update 2023-04-15 16:49:30 2023-04-15 16:49:41 +02:00

██████╗  ██████╗ ██╗    ██╗███████╗██████╗
██╔══██╗██╔═══██╗██║    ██║██╔════╝██╔══██╗
██████╔╝██║   ██║██║ █╗ ██║█████╗  ██████╔╝
██╔═══╝ ██║   ██║██║███╗██║██╔══╝  ██╔══██╗
██║     ╚██████╔╝╚███╔███╔╝███████╗██║  ██║
╚═╝      ╚═════╝  ╚══╝╚══╝ ╚══════╝╚═╝  ╚═╝

trait Utilities (Details)

namespace: VDM\Joomla

@startuml
class Utilities << (T,Orange) >> #Turquoise {
  + static $langTag
  + {static} checkString($string) : bool
  + {static} shorten($string, $length = 40, ...)
  + {static} safeString($string, $type = 'L', ...)
  + {static} safeClassFunctionName($name)
  + {static} safeFieldName($string, $allcap = false, ...)
  + {static} safeTypeName($string)
  + {static} safeNamespace($string)
  + {static} transliterate($string)
  + {static} htmlEscape($var, $charset = 'UTF-8', ...)
  + {static} replaceNumbers($string)
  + {static} numberToString($x)
  + {static} randomkey($size) : string
  + {static} checkJson($string) : bool
  + {static} jsonToString($value, $sperator = ", ...)
  + {static} checkArray($array, $removeEmptyString = false) : int
  + {static} mergeArrays($arrays)
  + {static} checkObject($object) : bool
  + {static} getVar(string $table, string $where = null, ...) : mix
  + {static} getVars(string $table, string $where = null, ...) : array
  + {static} getAllBetween(string $content, string $start, ...) : array
  + {static} getBetween(string $content, string $start, ...) : string
  + {static} bcmath(string $type, int $val1, ...) : float|int
  + {static} bcsum(array $array, int $scale = 4) : float|int
  + {static} createPluginClassName($group, $name) : string
  + {static} GUID(bool $trim = true) : string
  + {static} validGUID(string $guid, string $table = null, ...) : bool
  + {static} getGUID(string $guid, string $table, ...) : mix
  # {static} validateGUID(string $guid) : bool
  + {static} zip(string $workingDIR, string $filepath) : bool
  + {static} getFileContents(string $path, string/bool $none = '') : string
  + {static} writeFile(string $path, string $data) : bool
  + {static} getAllFilePaths(string $folder, array $fileTypes = array('\.php') : void
  + {static} getFilePath(string $type = 'path', string $target = 'filepath', ...) : string
  + {static} urlExists(string $path) : bool
  + {static} setComponentOption(String|null $option = null)
}

note right of Utilities::checkString
  Check if have a string with a length

  since: 3.0.9
  return: bool
end note

note left of Utilities::shorten
  Shorten a string

  since: 3.0.9
  
  arguments:
    $string
    $length = 40
    $addTip = true
end note

note right of Utilities::safeString
  Making strings safe (various ways)

  since: 3.0.9
  
  arguments:
    $string
    $type = 'L'
    $spacer = '_'
    $replaceNumbers = true
    $keepOnlyCharacters = true
end note

note left of Utilities::safeClassFunctionName
  Making class or function name safe

  since: 3.0.9
end note

note right of Utilities::safeFieldName
  Making field names safe

  since: 3.0.9
  
  arguments:
    $string
    $allcap = false
    $spacer = '_'
end note

note left of Utilities::safeTypeName
  Making field type name safe

  since: 3.0.9
end note

note right of Utilities::safeNamespace
  Making namespace safe

  since: 3.0.9
end note

note left of Utilities::transliterate
  

  since: 3.0.9
end note

note right of Utilities::htmlEscape
  

  since: 3.0.9
  
  arguments:
    $var
    $charset = 'UTF-8'
    $shorten = false
    $length = 40
end note

note left of Utilities::replaceNumbers
  

  since: 3.0.9
end note

note right of Utilities::numberToString
  Convert an integer into an English word string
Thanks to Tom Nicholson <http://php.net/manual/en/function.strval.php#41988>

  since: 3.0.9
end note

note left of Utilities::randomkey
  Random Key

  since: 3.0.9
  return: string
end note

note right of Utilities::checkJson
  Check if you have a json string

  since: 3.0.9
  return: bool
end note

note left of Utilities::jsonToString
  

  since: 3.0.9
  
  arguments:
    $value
    $sperator = "
    $table = null
    $id = 'id'
    $name = 'name'
end note

note right of Utilities::checkArray
  Check if you have an array with a length

  since: 3.0.9
  return: int
end note

note left of Utilities::mergeArrays
  Merge an array of array's

  since: 3.0.9
end note

note right of Utilities::checkObject
  Check if you have an object with a length

  since: 3.0.9
  return: bool
end note

note left of Utilities::getVar
  Get a Variable

  since: 3.0.9
  return: mix
  
  arguments:
    string $table
    string $where = null
    string $whereString = 'user'
    string $what = 'id'
    string $operator = '='
    string $main = null
end note

note right of Utilities::getVars
  Get array of variables

  since: 3.0.9
  return: array
  
  arguments:
    string $table
    string $where = null
    string $whereString = 'user'
    string $what = 'id'
    string $operator = 'IN'
    string $main = null
    bool $unique = true
end note

note left of Utilities::getAllBetween
  get all strings between two other strings

  since: 3.0.9
  return: array
  
  arguments:
    string $content
    string $start
    string $end
end note

note right of Utilities::getBetween
  get a string between two other strings

  since: 3.0.9
  return: string
  
  arguments:
    string $content
    string $start
    string $end
    string $default = ''
end note

note left of Utilities::bcmath
  bc math wrapper (very basic not for accounting)

  since: 3.0.9
  return: float|int
  
  arguments:
    string $type
    int $val1
    int $val2
    int $scale
end note

note right of Utilities::bcsum
  Basic sum of an array with more precision

  since: 3.0.9
  return: float|int
end note

note left of Utilities::createPluginClassName
  create plugin class name

  since: 3.0.9
  return: string
end note

note right of Utilities::GUID
  Returns a GUIDv4 string
Thanks to Dave Pearson (and other)
https://www.php.net/manual/en/function.com-create-guid.php#119168
Uses the best cryptographically secure method
for all supported platforms with fallback to an older,
less secure version.

  since: 3.0.9
  return: string
end note

note left of Utilities::validGUID
  Validate the Globally Unique Identifier ( and check if table already has this identifier)

  since: 3.0.9
  return: bool
  
  arguments:
    string $guid
    string $table = null
    int $id
    string|null $component = null
end note

note right of Utilities::getGUID
  get the ITEM of a GUID by table

  since: 3.0.9
  return: mix
  
  arguments:
    string $guid
    string $table
    string/array $what = 'a.id'
    string|null $component = null
end note

note left of Utilities::validateGUID
  Validate the Globally Unique Identifier
Thanks to Lewie
https://stackoverflow.com/a/1515456/1429677

  return: bool
end note

note right of Utilities::zip
  The zipper method

  since: 3.0.9
  return: bool
end note

note left of Utilities::getFileContents
  get the content of a file

  since: 3.0.9
  return: string
end note

note right of Utilities::writeFile
  Write a file to the server

  since: 3.0.9
  return: bool
end note

note left of Utilities::getAllFilePaths
  get all the file paths in folder and sub folders

  since: 3.0.9
  return: void
end note

note right of Utilities::getFilePath
  Get the file path or url

  since: 3.0.9
  return: string
  
  arguments:
    string $type = 'path'
    string $target = 'filepath'
    string $fileType = null
    string $key = ''
    string $default = ''
    bool $createIfNotSet = true
end note

note left of Utilities::urlExists
  Check if file exist

  since: 3.0.9
  return: bool
end note

note right of Utilities::setComponentOption
  Set the component option

  since: 3.0.11
end note
 
@enduml

     ██╗ ██████╗██████╗
     ██║██╔════╝██╔══██╗
     ██║██║     ██████╔╝
██   ██║██║     ██╔══██╗
╚█████╔╝╚██████╗██████╔╝
 ╚════╝  ╚═════╝╚═════╝

Build with Joomla Component Builder