Documentation

GRIS_COMPETENCE extends GRIS_CLASS_TEMPLATE
in package

Class for assigning competencies to persons

With this class the competence table can be managed.

PHP version 8

Copyright (c) 2023, Holger Heuser

Tags
copyright

Copyright (c) 2023, Holger Heuser

link
http://git.gesis.org/gris
since
4.3

File available since Release 4.3

version
4.3
author

Holger Heuser holger.heuser@gesis.org

Table of Contents

dbtable  = 'gris_competence'
The constant for the database table
settings_group  = "competence"
The constant for the settings group
$classname  : object
The name of the class
$dbconnection  : object
The database object for managing the connection
$full_data  : array<string|int, mixed>
The dataset of the resource information
$i18n  : object
The object for translations
$id  : object
The current object ID
$language  : string
The current language
$settings  : object
The object for settings
$state  : object
The object for state
$xml_data  : string
The data as xml string
__construct()  : mixed
The class constructor
debug()  : bool
Output the full dataset without object data (all subobjects are parsed recursively)
delete_all()  : bool
Deletes all entries for a given person id
delete_competence_relation()  : bool
Deletes a competence relation
get()  : array<string|int, mixed>|object|string
Returns an array of the full data or (if given) only certain attributes (separated by "|" for a subattribute)
get_competencies()  : mixed
get_flat_data()  : array<string|int, mixed>
Get the data in a flat format. From subarrays only the first entry is merged
get_flat_data_old()  : array<string|int, mixed>
Get the data in a flat format. From subarrays only the first entry is merged
get_related_competencies()  : array<string|int, mixed>
Returns all competencies for a given person
get_related_persons()  : mixed
Returns all related objects for a categorie and an object table
id()  : int
Set a new ID or return the current ID if $id is NULL. The numeric value 0 is also set to NULL.
pull_json()  : string
Returns the object data as JSON
pull_xml()  : string
Returns the object data as XML
push_xml()  : bool
Push an xml into the object (experimental, not finished yet)
reset()  : bool
Reset the whole object (ID = NULL, full_data is empty)
search_persons()  : mixed
Search all persons with the given competencies
set_relation()  : bool
Sets a relation between a competence as subject and a person
unset_attribute()  : bool
Unsets an attribute
update()  : bool
Read or update all data from the competence table of the db into an array
initialize()  : bool
Initializes the object by filling the array with data
array_to_xml()  : bool
Convert an array into an xml representation
get_competence_childs()  : array<string|int, mixed>
Get all childs for a given parent ID
get_competence_data()  : bool
Get the whole competence tree for a given start point
out()  : bool
Preformatted output of the variable (for development)

Constants

dbtable

The constant for the database table

public mixed dbtable = 'gris_competence'

settings_group

The constant for the settings group

public mixed settings_group = "competence"

Properties

$classname

The name of the class

protected object $classname = NULL
Tags
access

private

$dbconnection

The database object for managing the connection

protected object $dbconnection = NULL
Tags
access

private

$full_data

The dataset of the resource information

protected array<string|int, mixed> $full_data = array()
Tags
access

private

$language

The current language

protected string $language = NULL
Tags
access

private

$settings

The object for settings

protected object $settings = null
Tags
access

private

$xml_data

The data as xml string

protected string $xml_data = NULL
Tags
access

private

Methods

__construct()

The class constructor

public __construct([mixed $language = NULL ]) : mixed
Parameters
$language : mixed = NULL
Return values
mixed

debug()

Output the full dataset without object data (all subobjects are parsed recursively)

public debug() : bool
Return values
bool

true

delete_all()

Deletes all entries for a given person id

public delete_all(int $person_id) : bool
Parameters
$person_id : int

The person id

Return values
bool

Returns true for success and false if no id is given

delete_competence_relation()

Deletes a competence relation

public delete_competence_relation(int $person_id, int $competence_id) : bool
Parameters
$person_id : int

The person ID

$competence_id : int

The ID of the competence

Return values
bool

Returns true on success and falso on errors

get()

Returns an array of the full data or (if given) only certain attributes (separated by "|" for a subattribute)

public get([string $attribute = NULL ]) : array<string|int, mixed>|object|string
Parameters
$attribute : string = NULL

The attributes separated by [parent|child]

Return values
array<string|int, mixed>|object|string

The dataset or NULL

get_competencies()

public get_competencies() : mixed
Return values
mixed

get_flat_data()

Get the data in a flat format. From subarrays only the first entry is merged

public get_flat_data([bool $hierarchy = false ][, mixed $data = NULL ]) : array<string|int, mixed>
Parameters
$hierarchy : bool = false

Return full flat (standard) or array hierarchy (if true)

$data : mixed = NULL

Use other data than $this->full_data

Return values
array<string|int, mixed>

The flat data

get_flat_data_old()

Get the data in a flat format. From subarrays only the first entry is merged

public get_flat_data_old([bool $hierarchy = false ][, mixed $data = NULL ]) : array<string|int, mixed>
Parameters
$hierarchy : bool = false

Return full flat (standard) or array hierarchy (if true)

$data : mixed = NULL

Use other data than $this->full_data

Return values
array<string|int, mixed>

The flat data

Returns all competencies for a given person

public get_related_competencies(string $person_id) : array<string|int, mixed>
Parameters
$person_id : string

The ID of the person

Return values
array<string|int, mixed>

Returns an array of competencies or NULL

Returns all related objects for a categorie and an object table

public get_related_persons(string $competence_ids) : mixed
Parameters
$competence_ids : string

The IDs of the object (string or optional as array)

Returns an array of perosn IDs (int > 0) or NULL if no matches. Returns -1 on error

Return values
mixed

id()

Set a new ID or return the current ID if $id is NULL. The numeric value 0 is also set to NULL.

public id([string $id = NULL ]) : int
Parameters
$id : string = NULL

The current ID

Return values
int

The ID

pull_json()

Returns the object data as JSON

public pull_json() : string
Return values
string

The json string

pull_xml()

Returns the object data as XML

public pull_xml([bool $head = false ]) : string
Parameters
$head : bool = false

Return XML with head (as default, just a node is returned)

Return values
string

The xml string

push_xml()

Push an xml into the object (experimental, not finished yet)

public push_xml(string $xml) : bool
Parameters
$xml : string

The xml with the object data

Return values
bool

true (or false on error)

reset()

Reset the whole object (ID = NULL, full_data is empty)

public reset() : bool
Return values
bool

Returns true

search_persons()

Search all persons with the given competencies

public search_persons(array<string|int, mixed> $competencies) : mixed
Parameters
$competencies : array<string|int, mixed>

The array with competency IDs

Returns an array of perosn IDs (int > 0) or NULL if no matches. Returns -1 on error

Return values
mixed

set_relation()

Sets a relation between a competence as subject and a person

public set_relation(string $person_id, array<string|int, mixed> $competence_id, string $level) : bool
Parameters
$person_id : string

The ID of the person

$competence_id : array<string|int, mixed>

The ID of the competence

$level : string

The $level of the competence

Return values
bool

Returns true on succes or false on error

unset_attribute()

Unsets an attribute

public unset_attribute(string $attribute) : bool
Parameters
$attribute : string

The attributes

Return values
bool

Returns true

update()

Read or update all data from the competence table of the db into an array

public update([string $id = NULL ]) : bool
Parameters
$id : string = NULL

The ID is always NULL (only for compatibility to class template)

Return values
bool

Returns true for success and false for errors

initialize()

Initializes the object by filling the array with data

protected initialize() : bool
Return values
bool

true (or false on error)

array_to_xml()

Convert an array into an xml representation

private array_to_xml(array<string|int, mixed> $data, Pointer &$xml) : bool
Parameters
$data : array<string|int, mixed>

The array with the data

$xml : Pointer

A pointer to the xml

Return values
bool

true (or NULL if empty)

get_competence_childs()

Get all childs for a given parent ID

private get_competence_childs(string $id) : array<string|int, mixed>
Parameters
$id : string

The ID of the parent ID (should also work with an int param)

Return values
array<string|int, mixed>

The array with the competencies (returns NULL if no units were found)

get_competence_data()

Get the whole competence tree for a given start point

private get_competence_data([string $start = NULL ][, array<string|int, mixed> $competence_tree = NULL ]) : bool
Parameters
$start : string = NULL

The start ID

$competence_tree : array<string|int, mixed> = NULL

The current tree (for recursions)

Return values
bool

Returns the competence tree from a starting level (recursive)

out()

Preformatted output of the variable (for development)

private out([mixed $mixed = NULL ]) : bool
Parameters
$mixed : mixed = NULL

The variable

Return values
bool

true

Search results