class System extends Controller

System "Fake" Module

Traits

Trait CoreLinkMethods

Static Cache Trait Adds a static (per request) cache to the object which can hold data for the time of the request (in the frontend) or a certain duration during long running processes. It works together with the global caching system and enforces a static cache clearing in case of global cache clearings as well.

Trait ObjectManager XELOS Framework

Constants

EVENT_MODEL_CREATED

Global modules events.

EVENT_MODEL_UPDATED

EVENT_MODEL_DELETED

Properties

protected array $object_cache

Each object created by a success call of __call or __get will be saved into this property to avoid a multiple creation of same objects and minimize performance loss. If the multiple creation of objects is desirable e.g. in factory classes, the caching can be disabled by setting xf_trait::factory_mode to true.

from  ObjectManager
protected array[] $registry

The instantiation of a requested object can be processed only if the class of the object is registered with the class name as key and its information as array in this property. The element should have at least the class name or the relative path to "class" folder.

from  ObjectManager
protected string $lib_class_dir

This property contains the path to the folder served as root for all requested classes. This folder can contains other folder or classes. All requested and registered classes will be searched in this folder by concating this path with the relative path defined in the registration of the requested class. If the class is not included it will be done on the fly.

from  ObjectManager
protected string $lib_class_prefix

An optional possibility to pretend a prefix for all registered classes.

from  ObjectManager
protected string $ns_class_prefix

An optional possibility to pretend a namespace prefix for classes have no namespace yet.

from  ObjectManager
protected bool $factory_mode

This property effects the object cache. By default it is set to false to enable the object cache for all requested objects. If this property is set true, the object cache will be disabled.

from  ObjectManager
protected array $injection_objects

This is an assoc array and contains objects that will be injected into each requested object. Each containing object will be injected by the name of the key. E.g. ['mod' => $object] this would inject the property named mod with the value of $object.

from  ObjectManager
protected bool $auto_init

This property controls if the init method of requested objects is called by this trait or not.

from  ObjectManager
bool $full_module_namespace_support from  Controller
Config $config from  Core
bool $instance_copy_id from  Core
mixed $template from  Core
string $context from  Core
Core $parent_context from  Core
int $group_context from  Core
string $group_name from  Core
string $storage_path from  Core
protected int $security_level from  Core
protected string $security_level_mode from  Core
$xf_link from  Core
array $GPvars from  Core
MagicMethodHelper $action from  Controller
Model read-only $model
MagicMethodHelper $page from  Controller
MagicMethodHelper $ui from  Controller
MagicMethodHelper $collection from  Controller
MagicMethodHelper $cf from  Controller
Controller $mod from  Controller
array $meta_info from  Controller

Methods

string
_(string $token, sring[] $placeholder = [])

Gettext Wrapper using current module context for module specific translations

from  Core
mixed
__call($class, $args)

Magic method.

__construct()

System constructor.

mixed
__get($class)

Magic method.

bool
__isset($property)

Magic method.

__set($name, $value)

Magic method.

__toString()

No description

from  Core
addActionLog(DocumentIndex $documentIndex, int $action_key, int $user_id = null, string $subject = null, int $target_user_id = null, array $link_params = [])

No description

from  Core
add_actionlog(int $action_id, int|bool $user_id = false, string|bool $what = false, int|bool $target_user_id = false, array|bool $link_params = false, int|bool $post_id = false, int|bool $post_type = 0, int|bool $group_id = false) deprecated

No description

from  Core
add_class_to_registry($registry)

No description

from  Core
add_config_array(mixed $configArray, mixed $context = false)

No description

from  Core
add_css_file(string $filename_in_css_dir, string $position = 'bottom', bool $media = false, bool $if_condition = false)

Add CSS file from the wwwres/css folder to the page

add_js_file(string $filename_in_js_dir, string $position = 'bottom')

Add JS file from the wwwres/js folder to the page

bool|string|xelos_global_template
ajax_response(array|bool $json_response = false, bool|int $error_code = false, bool|xelos_global_template $template = false, bool|string $render_mode = false)

Returns the passed JSON and returns the module template directly to the view class for rendering

from  Core
attach_link(ModelCollection|Model $model_collection, string $property_name, array $link_params, bool $current_link = true)

Attach a Link to each model in the collection

check_download_file(mixed $path_to_file, mixed $download_params)

No description

from  Core
clear_template()

No description

from  Core
dblquery($sql, $mode = 'fetch_assoc', $file = __FILE__, $line = __LINE__, $cache_ttl = false, $cache_group = false, $query_type = false)

Calls dbquery() after given SQL has been converted by $XF->lib->i18n->convert_i18n_sql()

from  Core
mixed
dbquery(string $sql, string $mode = 'fetch_assoc', string $file = __FILE__, int $line = __LINE__, int|bool $cache_ttl = false, int|bool $cache_group = false, string|bool $query_type = false)

No description

from  Core
array|int|false
dbquery_with_params(string $sql, array $params, string $mode = 'fetch_assoc', string $file = __FILE__, int $line = __LINE__, int|bool $cache_ttl = false, int|bool $cache_group = false, string|bool $query_type = false)

No description

from  Core
bool
delete_file(int $id)

Deletes the file stored in the storage DMS.

from  Core
document($document_index)

No description

array
dynTreeAutocompletion(array $acceptedDyntreeParams)

Generates and returns the completed sentences for the dyn tree params field.

xelos_global_template|string
error_response(string $err_msg = 'access_denied', string $err_type = 'denied', string $render_mode = 'full')

No description

from  Core
array
getCommandsForPage(string $searchString, string $refPage = '')

Used to fetch the methods from the page passed.

string
getCurrentVersion()

Returns the current version of XELOS by selecting the higher version of XELOS Core and XELOS Tools.

Core|null
getDependencyInGuessGroupContext(string $dependency, string $page_id, array $cmd)

Get dependency without unknown group context

from  Core
array
getDynTreeParams()

Placeholder method, that simply returns an empty array, in case the user chose a module, which isn't able to provide dynamic tree parameters.

int
getGroupSecurityId(int $group_context = 0)

Get the group_security_id for this instance (optional: based on a local group_context)

from  Core
array
getHooksAsObject($hookName)

No description

from  Core
array
getModulePages()

Defines an array containing pages, which will then be returned to the group navigation form in order to display them as entries in the select field 'ref_page'.

object|null
getObjectIfAvailable(string $class)

This method will return an object without killing the whole process by triggering a fatal error You can use this method if its possible that the object is not available, e.g. due to user configurations

get_accessible_page($page_id, $args = array())

No description

from  Core
mixed
get_action(string $helper)

No description

xm_system_actionlog
get_actionlog()

Return the actionlog instance

from  Core
array
get_available_languages()

Get the configured languages for this instance

from  Core
mixed
get_config(string $var, mixed $context = false)

No description

from  Core
int
get_context_id()

gets the numerical Context-ID (PrimaryKey in Instance_Registry)

from  Core
array|false
get_current_link(array $params = array())

No description

get_current_url()

No description

string
get_default_i18n()

Get the default language set for this instance

from  Core
Core|bool
get_dep(string $dep_id, int|bool $group_context = 0)

No description

from  Core
get_dep_page(bool|string $default = false, bool|string $cmd = false, bool $preserve_render_mode = false)

No description

from  Core
array
get_deps($group_context = false)

No description

from  Core
get_document_index(int $local_document_id, int $document_type = 0)

returns the global document index fron document_index

from  Core
int|false
get_document_index_id(int $local_document_id, int $document_type = 0)

returns the global document id fron document_index

from  Core
bool|mixed
get_dyn_config($var, bool $order_set_name = false, bool $context = false) deprecated

No description

from  Core
string|bool
get_file_link(string $path_to_file, array $params = array())

Get File Link

from  Core
mixed
get_file_url(string $path_to_file, bool $inline_disposition = true, string|bool $name = false, bool $zipOnTheFly = false, int|bool $width = false, int|bool $height = false, string|bool $resize_mode = false, bool $public_file_link = false)

Constructs and returns a download link for file

from  Core
array
get_file_url_args(string $path_to_file, mixed $inline_disposition = true, mixed $name = false, mixed $zipOnTheFly = false)

No description

from  Core
int
get_group()

No description

from  Core
mixed
get_hook(string $original_hook_name, string $provider_instance = 'self', bool $force_new = false, bool $skip_access_check = false)

No description

from  Core
array
get_hooks(string $local_hook_name, array|bool $limit_to_instances = false, bool $instantiate = true, mixed $parentContext = false, string $hook_class = null)

No description

from  Core
string
get_lib_class_dir()

Returns the path to class directory.

string
get_lib_class_prefix()

Returns the defined prefix for all classes.

array|bool
get_link()

No description

mixed
get_model(string $model, bool $new_instance = false)

No description

mixed
get_object(string $class, null|array $args = null, bool $call_init = true)

Call specific object - allows to use constructor-params (overload function) This function is primarily called from the magic GET and CALL Methods

from  Core
array
get_object_cache()

Returns an array containing all objects were requested.

xelos_global_template
get_page(string $page_id, array $args = array())

Internally we provide a fake page for users to gain access to system models, but we are not returning any content here

Core|bool
get_parent_context()

Get Parent Context

from  Core
string
get_parsed_message(string $template_name, string $section)

No description

mixed
get_plugin(string $name)

No description

from  Core
array
get_plugins_by_prefix(string $prefix)

No description

from  Core
get_preview_url($path_to_file, $name = false)

No description

from  Core
static 
get_resize_hash(int $w, int $h)

Calculate Resize Hash !Is also called static

from  Core
int
get_security_level()

No description

from  Core
get_system_dms()

Returns the default dms to store application files.

from  Core
get_template(bool $force_new = false)

No description

from  Core
get_thumb_url($path_to_file, $name = false)

No description

from  Core
string
get_url()

No description

get_vars(string $file, string $block = null)

Get Vars Model

get_vars_from_text(string $text)

Create a Vars model from text

xelos_global_template|Template
get_view(string $view, bool|string $section = false, bool $template_auto_setup = true, bool $force_new = false)

No description

get_xf_link()

No description

from  Core
init()

Declare this method in a XELOS module if you require standard code to be executed after __construct with all members and references available

bool
isXlabsFeaturePreview()

No description

from  Core
mixed
lpquery(string $query, array $params = array(), string $file = __FILE__, int $line = __LINE__, int $cache_ttl = 0, null $cache_group = null)

No description

from  Core
notification_info(mixed $user_id, mixed $token)

Get single notification by token to retrieve information before notify

from  Core
notification_mark_read(mixed $user_id, string $token) deprecated

Mark a Notification as Read

from  Core
notify(mixed $user_id, string $token, string $subject, string $plaintext = null, mixed $html = false, mixed $url = null, string $icon = null, string $type = 'activity')

Notification

from  Core
notify_vars(mixed $user_id, string $token, VarsTemplate $vars, mixed $url = null, string $icon = null, string $type = 'activity')

Notification with Vars

from  Core
string|void|xelos_global_template
page__deeplink(array $dependency_id)

DeepLink Page (will be called for unresolvable deeplinks, e.g. from hooks search or others

from  Core
page__feed(UniversalFeedCreator $feed)

No description

from  Core
page__file()

No description

from  Core
mixed
pquery(string $query, array $params = array(), string $file = __FILE__, int $line = __LINE__, int $cache_ttl = 0, null $cache_group = null)

No description

from  Core
string|string[]|null
prepareQueryWithParams(string $sql, array $params)

No description

from  Core
string
prepare_lquery($sql)

No description

from  Core
string
prepare_query(string $sql)

No description

from  Core
string
print_context_menu($params, array $context_links, bool $current_link = false, bool $no_js_fallback = true, $onMouseOver = false)

No description

from  Core
string
print_context_menu_with_submenu(array $entries, array $params = array())

No description

from  Core
print_current_link()

No description

string
print_file_link(string $path_to_file, array $params = array())

Print File Link (Alias Function)

from  Core
string
print_link(array $params = array())

Wrapper for XF->lib->link substituting modules with instance names etc.

print_preview_link($path_to_file, $params = array())

No description

from  Core
string
render()

Render Module Output, this will get the template of the default page and render the template

from  Core
string|false
resolve_dep_link(string $dependency, string $page_id, array $cmd)

Resolve a Link for a local dependency (a - by returning a valid template or b - by sending a http-redirect)

from  Core
array
resolve_doc_link(int $post_id, int $post_type = null)

No description

false|XfsDocument
retrieve_document(int $document_index_id, bool $main_document_index_id = false)

Returns the xfs_document in the storage DMS to a ID.

from  Core
bool
send_file(array $args, bool $binary = false, bool $is_full_path = false)

Get the data... $args = array('download','myfile.txt')

from  Core
setDepLinkContext(string $localPage, string $localCmd)

Enforce Link Context based on Current Parent Instance for the local Page and CMD

from  Core
void
set_config(string $var, mixed $value, string|bool $context = false, string|bool $subcontext = false)

No description

from  Core
void
set_config_for_session(string $var, string $value, string $context = false, string $subcontext = false)

No description

from  Core
set_context_id(int $context_id)

sets the numerical Context-ID (PrimaryKey in Instance_Registry)

from  Core
set_dep_link_context(Core $parent, string $view, string $page, string $cmd)

Set Dep Link Context - generated URLs will be considered relative to the given parent instance

from  Core
void
set_group(int $group_id, string|bool $short_name = false)

No description

from  Core
set_injection_objects(array $objects)

Add given objects to injection object list that will be inject into object by magic call. The array should consists of property name as key and object as value.

set_lib_class_dir($lib_class_dir)

Sets the directory where classes are stored.

set_lib_class_prefix($lib_class_prefix)

Sets the class name prefix.

bool
set_message_vars($values, bool $reset = false)

No description

set_parent_context(Core $obj, $clone_link_helper = true)

No description

from  Core
void
set_security_level(int $security_level)

No description

from  Core
void
set_xf_link($xf_link)

No description

from  Core
xelos_global_template|bool
setup_check($args = array())

Check/Get Setup Page

from  Core
static void
static void
staticCacheClearCachePool($cache_pool = 'default')

Clears the specified cache pool from the static cache

static array|string|int|bool|null
staticCacheGet($key, string $cache_pool = 'default')

Retrieves a value from the static cache

static array
staticCacheGetKeys(string $cache_pool = 'default')

Returns an array of all cache keys which have been set

static array
staticCacheGetPool($cache_pool)

Returns an key/value array with all cached values from the passed pool

static bool
staticCacheIsEnabled()

No description

static bool
staticCacheIsSet($key, string $cache_pool = 'default')

Checks if the passed is key has a value set

static 
staticCacheRemove($key, string $cache_pool = 'default')

Removes the passed key

static void
staticCacheSet(string|int $key, mixed $value, string $cache_pool = 'default')

Store a value in the static cache

Document|false
store_file(string $path, string $storage_folder, string|bool $file_name = false, DocumentModel|bool $owner = false, DocumentModel|null $owner_document = null)

Stores the file in the system DMS

from  Core
bool|string|Template|xelos_global_template
templateResponse(mixed $content, string $title)

No description

bool
user_has_access(string|bool $page = false, string|bool $instance_id = false, int $group_security_id = 0)

Userrights Check

from  Core
array
user_has_access_in_groups(string $page)

Return the group_security ids the user has access to

from  Core
bool
user_has_policy(string $policy, mixed $policy_value = '*', int|bool $target_user = false, int|bool $group_id = false, string $default_policy = 'deny')

No description

from  Core
array
user_has_policy_in_groups(string $policy, string $policy_value = false)

Return the group_security ids the user has the policy in

from  Core
array
user_has_policy_values(string $policy, string $treeTable = null)

User has policy values

from  Core
xelos_object_manager_init(bool $lib_class_dir, string $lib_class_prefix = '', string $ns_prefix = '')

trait constructor This method have to be called from constructor of each class that uses this trait.

Details

in Core at line 164
string _(string $token, sring[] $placeholder = [])

Gettext Wrapper using current module context for module specific translations

Parameters

string $token
sring[] $placeholder

Array of named placeholders e.g. ['title'=>'My Title'] -> replaces {title} in token with 'My Title'

Return Value

string

Translated Token

in ObjectManager at line 249
mixed __call($class, $args)

Magic method.

Returns the requested object. If the object is not cached, it will be instantiated with given arguments. This method calls xf_trait::get_object.

Parameters

$class
$args

Return Value

mixed

at line 24
__construct()

System constructor.

in ObjectManager at line 231
mixed __get($class)

Magic method.

First it checks if the requested property is defined and returns it if null. If not defined of null, it calls xf_trait::get_object and returns its return value.

Parameters

$class

Return Value

mixed

in ObjectManager at line 199
bool __isset($property)

Magic method.

This method checks whether the property is defined or injected by __set. If not injected or defined, it will check the registry for an entry of requested property.

Parameters

$property

Return Value

bool

in ObjectManager at line 219
__set($name, $value)

Magic method.

Sets the given value by $name

Parameters

$name
$value

in Core at line 2405
__toString()

No description

in Core at line 2355
addActionLog(DocumentIndex $documentIndex, int $action_key, int $user_id = null, string $subject = null, int $target_user_id = null, array $link_params = [])

No description

Parameters

DocumentIndex $documentIndex
int $action_key
int $user_id

ID of the user causing the action, null will automatically be set if a user is currently logged in

string $subject

Specifying what has been done (e.g. WHAT has been added) this is default text if displaying user has no access to the linked page, will be set to document_index->title if not specified

int $target_user_id

User targeted with the action

array $link_params

= ['view' => $this->mod->context, 'page'=>'view', 'cmd'=>''] If no link is given, the doclink to the document index will be used automatically

Exceptions

Exception

in Core at line 2323
add_actionlog(int $action_id, int|bool $user_id = false, string|bool $what = false, int|bool $target_user_id = false, array|bool $link_params = false, int|bool $post_id = false, int|bool $post_type = 0, int|bool $group_id = false) deprecated

deprecated Please use addActionLog()

No description

Parameters

int $action_id

Action ID specifies which kind of action has beed conducted Possible types: ACTIONLOG_ADD, ACTIONLOG_REMOVE, ACTIONLOG_COMMENT,.... (see class for more)

int|bool $user_id

User ID mostly $XF->user->get_user_id()

string|bool $what

Specifying what has been done (e.g. WHAT has been added) this is default text if displaying user has no access to the linked page

int|bool $target_user_id

target User ID (e.g. user has visited profiel from target_user)

array|bool $link_params

Link param array for generating a link to the action on the 'what' string

int|bool $post_id

Post ID - Normally our primary ID

int|bool $post_type

Post Type - If you have different types of Posts

int|bool $group_id

Group ID

Exceptions

Exception

in Core at line 647
final add_class_to_registry($registry)

No description

Parameters

$registry

in Core at line 850
add_config_array(mixed $configArray, mixed $context = false)

No description

put your comment there...

Parameters

mixed $configArray
mixed $context

in Controller at line 169
add_css_file(string $filename_in_css_dir, string $position = 'bottom', bool $media = false, bool $if_condition = false)

Add CSS file from the wwwres/css folder to the page

Parameters

string $filename_in_css_dir
string $position
bool $media
bool $if_condition

in Controller at line 180
add_js_file(string $filename_in_js_dir, string $position = 'bottom')

Add JS file from the wwwres/js folder to the page

Parameters

string $filename_in_js_dir
string $position

in Core at line 453
bool|string|xelos_global_template ajax_response(array|bool $json_response = false, bool|int $error_code = false, bool|xelos_global_template $template = false, bool|string $render_mode = false)

Returns the passed JSON and returns the module template directly to the view class for rendering

Parameters

array|bool $json_response

JSON Response

bool|int $error_code

Error-Code

bool|xelos_global_template $template

Template Object (if no template is provided the default template of the current module will be used)

bool|string $render_mode

RenderModeAjax (by Default the mode is untouched, if set it will only be applied if the call is an ajax call)

Return Value

bool|string|xelos_global_template

Exceptions

ContentException

Attach a Link to each model in the collection

Parameters

ModelCollection|Model $model_collection
string $property_name

Name of the Property to which the link should be saved (+_link and +_url !!)

array $link_params

XF Link Array with placeholders {id} for the coresponding model properties

bool $current_link

Use current_link function?

Return Value

ModelCollection

in Core at line 1835
check_download_file(mixed $path_to_file, mixed $download_params)

No description

put your comment there...

Parameters

mixed $path_to_file
mixed $download_params

in Core at line 1476
clear_template()

No description

in Core at line 713
dblquery($sql, $mode = 'fetch_assoc', $file = __FILE__, $line = __LINE__, $cache_ttl = false, $cache_group = false, $query_type = false)

Calls dbquery() after given SQL has been converted by $XF->lib->i18n->convert_i18n_sql()

Parameters

$sql
$mode
$file
$line
$cache_ttl
$cache_group
$query_type

See also

dbquery()

in Core at line 664
mixed dbquery(string $sql, string $mode = 'fetch_assoc', string $file = __FILE__, int $line = __LINE__, int|bool $cache_ttl = false, int|bool $cache_group = false, string|bool $query_type = false)

No description

Parameters

string $sql

SQL Query

string $mode

Mode (fetch_assoc, fetch_array)

string $file

Filename (for logging and debugging)

int $line

Line No

int|bool $cache_ttl

Cache TTL in s (Results of this query are case)

int|bool $cache_group

Cache Group (can be used to remove all caches from the same group, e.g. template, user_details etc.)

string|bool $query_type

reference to string indicates if query was an update/delete or an insert

Return Value

mixed

Array with Result OR Insert ID OR Affected Rows OR False for "no rows found"

in Core at line 689
array|int|false dbquery_with_params(string $sql, array $params, string $mode = 'fetch_assoc', string $file = __FILE__, int $line = __LINE__, int|bool $cache_ttl = false, int|bool $cache_group = false, string|bool $query_type = false)

No description

Parameters

string $sql

SQL Query (can contain named markers, e.g. :name)

array $params

['param_name'=>'param_value'] Assoc-Array with SQL Parameters. Will be escaped and inserted into the passed SQL

string $mode

Mode (fetch_assoc, fetch_array)

string $file

Filename (for logging and debugging)

int $line

Line No

int|bool $cache_ttl

Cache TTL in s (Results of this query are case)

int|bool $cache_group

Cache Group (can be used to remove all caches from the same group, e.g. template, user_details etc.)

string|bool $query_type

reference to string indicates if query was an update/delete or an insert

Return Value

array|int|false

Array with Result OR Insert ID OR Affected Rows OR False for "no rows found"

Exceptions

DatabaseException

in Core at line 2626
bool delete_file(int $id)

Deletes the file stored in the storage DMS.

If the file does not exist in the DMS, it checks the mod_storage_path if the file exists there and deletes it there.

Parameters

int $id

xfs document ID

Return Value

bool

in Controller at line 136
MagicDocumentHelper|bool document($document_index)

No description

Parameters

$document_index

Return Value

MagicDocumentHelper|bool

array dynTreeAutocompletion(array $acceptedDyntreeParams)

Generates and returns the completed sentences for the dyn tree params field.

Parameters

array $acceptedDyntreeParams

Return Value

array

in Core at line 531
xelos_global_template|string error_response(string $err_msg = 'access_denied', string $err_type = 'denied', string $render_mode = 'full')

No description

Parameters

string $err_msg

Error Message

string $err_type

Error Type

string $render_mode

Render mode

Return Value

xelos_global_template|string

(Throws Exception)

Exceptions

ContentException

array getCommandsForPage(string $searchString, string $refPage = '')

Used to fetch the methods from the page passed.

Per default, if this method won't be overridden, this will return the methods of a page class.

Parameters

string $searchString
string $refPage

The page passed to this function: Example "show" for "page_show".

Return Value

array

Should return an array, containing at least a label to display and a description, displayed at the right side of the row as explanation for that command. ['label' => 'Label', 'example' => 'Example']

Exceptions

ReflectionException

at line 74
string getCurrentVersion()

Returns the current version of XELOS by selecting the higher version of XELOS Core and XELOS Tools.

Return Value

string

in Core at line 1378
Core|null getDependencyInGuessGroupContext(string $dependency, string $page_id, array $cmd)

Get dependency without unknown group context

Parameters

string $dependency
string $page_id
array $cmd

Return Value

Core|null

array getDynTreeParams()

Placeholder method, that simply returns an empty array, in case the user chose a module, which isn't able to provide dynamic tree parameters.

Return Value

array

in Core at line 1321
int getGroupSecurityId(int $group_context = 0)

Get the group_security_id for this instance (optional: based on a local group_context)

Parameters

int $group_context

Return Value

int

in Core at line 1266
array getHooksAsObject($hookName)

No description

Parameters

$hookName

Return Value

array

array getModulePages()

Defines an array containing pages, which will then be returned to the group navigation form in order to display them as entries in the select field 'ref_page'.

The user then is able to select one of these pages (of the selected instance).

Return Value

array

in ObjectManager at line 266
object|null getObjectIfAvailable(string $class)

This method will return an object without killing the whole process by triggering a fatal error You can use this method if its possible that the object is not available, e.g. due to user configurations

Parameters

string $class

Return Value

object|null

in Core at line 857
get_accessible_page($page_id, $args = array())

No description

Parameters

$page_id
$args

in Controller at line 157
mixed get_action(string $helper)

No description

Parameters

string $helper

Return Value

mixed

Object

in Core at line 2370
protected xm_system_actionlog get_actionlog()

Return the actionlog instance

Return Value

xm_system_actionlog

Exceptions

Exception

in Core at line 2439
array get_available_languages()

Get the configured languages for this instance

Return Value

array

Empty array if i18n_mode is not available

in Core at line 601
mixed get_config(string $var, mixed $context = false)

No description

Parameters

string $var

Parameter (Typical: mod_wwwres_relative, web_path_root, mod_template_path, mod_storage_path)

mixed $context

Instance ID

Return Value

mixed

Value of Parameter

in Core at line 2414
int get_context_id()

gets the numerical Context-ID (PrimaryKey in Instance_Registry)

Return Value

int

$context_id

No description

Parameters

array $params

LinkHelper Params in Array Format

Return Value

array|false

['label'=>'', 'target'=>'', 'class'=>'', 'title'=>'', 'href'=>'', 'full'=>''] Link Resource Array

See also

\XELOS\Framework\Core\Traits\Link::get_current_link()

in CoreLinkMethods at line 190
get_current_url()

No description

in Core at line 2431
string get_default_i18n()

Get the default language set for this instance

Return Value

string

Language/Culture (DE_DE)

in Core at line 1344
Core|bool get_dep(string $dep_id, int|bool $group_context = 0)

No description

Parameters

string $dep_id

internal dependency key

int|bool $group_context

Group ID

Return Value

Core|bool

in Core at line 346
Template get_dep_page(bool|string $default = false, bool|string $cmd = false, bool $preserve_render_mode = false)

No description

Parameters

bool|string $default

Default Page

bool|string $cmd

Default CMD

bool $preserve_render_mode

Return Value

Template

in Core at line 1402
array get_deps($group_context = false)

No description

Parameters

$group_context

Return Value

array

Returns an array with all available dependencies

in Core at line 2470
DocumentIndex get_document_index(int $local_document_id, int $document_type = 0)

returns the global document index fron document_index

requires the model is registered in document_registry for being index by document_index!

Parameters

int $local_document_id
int $document_type

Return Value

DocumentIndex

in Core at line 2452
int|false get_document_index_id(int $local_document_id, int $document_type = 0)

returns the global document id fron document_index

requires the model is registered in document_registry for being index by document_index!

Parameters

int $local_document_id
int $document_type

Return Value

int|false

in Core at line 2388
bool|mixed get_dyn_config($var, bool $order_set_name = false, bool $context = false) deprecated

deprecated

No description

Parameters

$var
bool $order_set_name
bool $context

Return Value

bool|mixed

Get File Link

Parameters

string $path_to_file

Path to File

array $params

Return Value

string|bool

in Core at line 1639
mixed get_file_url(string $path_to_file, bool $inline_disposition = true, string|bool $name = false, bool $zipOnTheFly = false, int|bool $width = false, int|bool $height = false, string|bool $resize_mode = false, bool $public_file_link = false)

Constructs and returns a download link for file

Parameters

string $path_to_file

path to your file within your mod_storage_path

bool $inline_disposition

Show Inline? (Default:True)

string|bool $name

Force a specific filename within the headers sent

bool $zipOnTheFly

Want the content zipped? (Default: False)

int|bool $width
int|bool $height
string|bool $resize_mode

Resize Mode ['resize', 'crop', false] (Default: False)

bool $public_file_link

Generate Public File Link? (not compatible with zipOnTheFly!) This will always resize all images during this call and make them available via public URL /_cache/..

Return Value

mixed

in Core at line 1810
array get_file_url_args(string $path_to_file, mixed $inline_disposition = true, mixed $name = false, mixed $zipOnTheFly = false)

No description

put your comment there...

Parameters

string $path_to_file
mixed $inline_disposition
mixed $name
mixed $zipOnTheFly

Return Value

array

in Core at line 412
int get_group()

No description

Return Value

int

Group ID

in Core at line 962
mixed get_hook(string $original_hook_name, string $provider_instance = 'self', bool $force_new = false, bool $skip_access_check = false)

No description

Parameters

string $original_hook_name

Hook/Callback Key As declared by the provider (e.g. recent_threads)

string $provider_instance

Provider Instance Name

bool $force_new

Force a new object

bool $skip_access_check

Return Value

mixed

Callback Object (Array for Callback or Object for Usage)

in Core at line 1105
array get_hooks(string $local_hook_name, array|bool $limit_to_instances = false, bool $instantiate = true, mixed $parentContext = false, string $hook_class = null)

No description

Parameters

string $local_hook_name

Hook/Callback Key as declared in your Instance Config

array|bool $limit_to_instances

Limit to hooks from a certain instance?

bool $instantiate

Instantiate Hook Objects?

mixed $parentContext

Return hooks which are depending on this parent context, true will use the current parent_context if available, '*' will remove parent context limitation

string $hook_class

Explicitely set the expected hook classification, e.g. cms.contentPortlet

Return Value

array

[[ 'instance_id' => (string) $instanceID 'parent_context' => (string) $parentContext 'caller_id' => (string) $callerID 'name' => (string) $name 'module_name' => (string) $module_name 'title' => (string) $title 'title_i18n' => (string) $title 'description' => (string) $description 'description_i18n' => (string) $description 'options' => (array) $options ]]

in ObjectManager at line 167
string get_lib_class_dir()

Returns the path to class directory.

Return Value

string

See also

xf_trait::lib_class_dir
xf_trait::get_lib_class_dir

in ObjectManager at line 177
string get_lib_class_prefix()

Returns the defined prefix for all classes.

Return Value

string

See also

xf_trait::lib_class_prefix

No description

Return Value

array|bool

Contains array with url, full etc.

in Controller at line 124
mixed get_model(string $model, bool $new_instance = false)

No description

Parameters

string $model
bool $new_instance

Return Value

mixed

in Core at line 622
final mixed get_object(string $class, null|array $args = null, bool $call_init = true)

Call specific object - allows to use constructor-params (overload function) This function is primarily called from the magic GET and CALL Methods

Parameters

string $class
null|array $args
bool $call_init

Return Value

mixed

new or existing instance of name

in ObjectManager at line 187
array get_object_cache()

Returns an array containing all objects were requested.

Return Value

array

See also

xf_trait::object_cache

at line 41
xelos_global_template get_page(string $page_id, array $args = array())

Internally we provide a fake page for users to gain access to system models, but we are not returning any content here

Parameters

string $page_id

Page ID

array $args

Cmd Params

Return Value

xelos_global_template

Template Object

in Core at line 1420
Core|bool get_parent_context()

Get Parent Context

Return Value

Core|bool

Parent Instance

in Controller at line 394
string get_parsed_message(string $template_name, string $section)

No description

Parameters

string $template_name

name of the vars file

string $section

section to return

Return Value

string

parsed section

in Core at line 191
mixed get_plugin(string $name)

No description

Parameters

string $name

Plugin Name

Return Value

mixed

Plugin

in Core at line 210
array get_plugins_by_prefix(string $prefix)

No description

Parameters

string $prefix

Plugin Prefix

Return Value

array

with objects ('pluginName'=>Obj)

in Core at line 1708
get_preview_url($path_to_file, $name = false)

No description

Parameters

$path_to_file
$name

in Core at line 1695
static get_resize_hash(int $w, int $h)

Calculate Resize Hash !Is also called static

Parameters

int $w
int $h

in Core at line 437
int get_security_level()

No description

Return Value

int

XF_SEC_LEVEL_NONE, XF_SEC_LEVEL_READ, XF_SEC_LEVEL_WRITE, XF_SEC_LEVEL_DELETE or XF_SEC_LEVEL_ADMIN

in Core at line 2562
SystemDMSController get_system_dms()

Returns the default dms to store application files.

It uses the DMS configured in Expert Configuration -> GUI -> Filebrowser DMS: system config key filebrowser_dms

Return Value

SystemDMSController

or false

in Core at line 1432
Template get_template(bool $force_new = false)

No description

Parameters

bool $force_new

Resets all Variables and returns clean/new template

Return Value

Template

Template Object

Exceptions

Exception

in Core at line 1699
get_thumb_url($path_to_file, $name = false)

No description

Parameters

$path_to_file
$name

in CoreLinkMethods at line 117
string get_url()

No description

Return Value

string

URL

See also

Link::get_url

in Controller at line 281
VarsTemplate|bool get_vars(string $file, string $block = null)

Get Vars Model

Parameters

string $file

id

string $block

id

Return Value

VarsTemplate|bool

in Controller at line 310
VarsTemplate get_vars_from_text(string $text)

Create a Vars model from text

Parameters

string $text

Return Value

VarsTemplate

in Controller at line 193
xelos_global_template|Template get_view(string $view, bool|string $section = false, bool $template_auto_setup = true, bool $force_new = false)

No description

Parameters

string $view

Name of View [Template filename w/o extension]

bool|string $section

Name of Section in Template or false

bool $template_auto_setup

Automatically load template and add renderer?

bool $force_new

New Template Object?

Return Value

xelos_global_template|Template

Template Object

No description

Return Value

Link

at line 28
init()

Declare this method in a XELOS module if you require standard code to be executed after __construct with all members and references available

in Core at line 2647
bool isXlabsFeaturePreview()

No description

Return Value

bool

in Core at line 790
mixed lpquery(string $query, array $params = array(), string $file = __FILE__, int $line = __LINE__, int $cache_ttl = 0, null $cache_group = null)

No description

Parameters

string $query

SQL Query with ? Marker

array $params

(1D - array for multiple params)

string $file

DEBUG Filename (FILE)

int $line

DEBUG Line (LINE)

int $cache_ttl
null $cache_group

Return Value

mixed

Exceptions

Exception

Examples

UPDATE ###tbl|contact### set displayname = ?, status = ? WHERE id = ?;

$params = array($displayname,$status,$id)

in Core at line 2546
Notification notification_info(mixed $user_id, mixed $token)

Get single notification by token to retrieve information before notify

Parameters

mixed $user_id
mixed $token

Return Value

Notification

in Core at line 2532
notification_mark_read(mixed $user_id, string $token) deprecated

deprecated Use NotificationBuilder::buildAndMarkRead instead

Mark a Notification as Read

Parameters

mixed $user_id

User-ID or Array of Users

string $token

Token

Exceptions

Exception

in Core at line 2512
notify(mixed $user_id, string $token, string $subject, string $plaintext = null, mixed $html = false, mixed $url = null, string $icon = null, string $type = 'activity')

Notification

Parameters

mixed $user_id

User-ID or Array of Users

string $token

Token for updates for this Notification

string $subject

Subject

string $plaintext

Plaintext/Shortmessage without HTML

mixed $html

HTML-Message

mixed $url

Link as URL or as Array (get_current_url)

string $icon

FontAwesome-Icon Class

string $type

Type of Notification ('activity','todo','message')

in Core at line 2490
notify_vars(mixed $user_id, string $token, VarsTemplate $vars, mixed $url = null, string $icon = null, string $type = 'activity')

Notification with Vars

Parameters

mixed $user_id

User-ID or Array of Users

string $token

Token for updates for this Notification

VarsTemplate $vars

Notification-Vars (subject, plaintext & body)

mixed $url

Link as URL or as Array (get_current_url)

string $icon

FontAwesome-Icon

string $type

Type of notification

DeepLink Page (will be called for unresolvable deeplinks, e.g. from hooks search or others

Parameters

array $dependency_id

Arguments

Return Value

string|void|xelos_global_template

in Core at line 1843
page__feed(UniversalFeedCreator $feed)

No description

Parameters

UniversalFeedCreator $feed

in Core at line 1854
page__file()

No description

in Core at line 764
mixed pquery(string $query, array $params = array(), string $file = __FILE__, int $line = __LINE__, int $cache_ttl = 0, null $cache_group = null)

No description

Parameters

string $query

SQL Query with ? Marker

array $params

(1D - array for multiple params)

string $file

DEBUG Filename (FILE)

int $line

DEBUG Line (LINE)

int $cache_ttl
null $cache_group

Return Value

mixed

Exceptions

DatabaseException

Examples

UPDATE ###tbl|contact### set displayname = ?, status = ? WHERE id = ?;

$params = array($displayname,$status,$id)

in Core at line 704
string|string[]|null prepareQueryWithParams(string $sql, array $params)

No description

Parameters

string $sql
array $params

Return Value

string|string[]|null

in Core at line 741
string prepare_lquery($sql)

No description

Parameters

$sql

Return Value

string

Parsed Query

in Core at line 731
string prepare_query(string $sql)

No description

Parameters

string $sql

Query

Return Value

string

Parsed Query

in Core at line 1596
string print_context_menu($params, array $context_links, bool $current_link = false, bool $no_js_fallback = true, $onMouseOver = false)

No description

Parameters

$params
array $context_links

multi-dimensional context_links (use '-' for separator)

bool $current_link

Set to true if all links are current_links

bool $no_js_fallback

If set to FALSE these links will not be shown if JS is NOT present

$onMouseOver

Return Value

string

HTML return link resource array

in Core at line 1623
string print_context_menu_with_submenu(array $entries, array $params = array())

No description

Parameters

array $entries

of links with Menu labels array(mainmenu_label => array(link1, link2, link3)) for a normal context menu, like print_context_menu array(mainmenu_label => array(link1, link2, submenu_label => array(link3, link4), link5))

array $params

of additional params for the first dropdown: class, icon_class

Return Value

string

return link resource array

No description

Print File Link (Alias Function)

Parameters

string $path_to_file

(Absolute on Disk)

array $params

OPTIONAL (defaults: inline_disposition=true, label=basename of file,icon=false,limit_string=false

Return Value

string

HTML a tag

Wrapper for XF->lib->link substituting modules with instance names etc.

Example:

$this->mod->print_link(array('label'=>$label, 'page'=>$page, 'ajax_modal'=>array('form' => 'noajax')));
$this->mod->print_link(array('label'=>$label, 'page'=>$page, 'JS-FSLoader'=>array('message' => 'loading..','autohide'=>'5000')));

Parameters

array $params

= [ 'label'=>$label, 'page'=>$page, 'cmd'=>$cmd, 'class'=>'btn', 'target'=>'_new', 'title'=>$title, 'confirmtext'=>("Are you sure?"), 'JS-FSLoader'=>['message' => 'loading..', 'autohide'=>'5000'], 'ajax_modal'=>['form' => ['reload'=>true,'reloadTable'=>'table_dom_id','reloadXUI'=>'xui_dom_id'], 'width'=> 800, 'height' => '80%', 'fullscreen' => true], 'ajax_update'=>$domId, 'ajax_replace'=>$domId, 'xdi' => DocumentIndex, 'xui_target' => UIAjaxComponent ]

Return Value

string

Full HTML A Tag

No description

Parameters

$path_to_file
$params

in Core at line 389
string render()

Render Module Output, this will get the template of the default page and render the template

Return Value

string

Output (eg. html)

Resolve a Link for a local dependency (a - by returning a valid template or b - by sending a http-redirect)

Parameters

string $dependency

Name (Refers to YOUR entry in the config.yml)

string $page_id

PageID

array $cmd

CMD Params

Return Value

string|false

string URL or false if not resolvable

No description

Parameters

int $post_id
int $post_type

Return Value

array

xf_link LinkHelper

in Core at line 2580
false|XfsDocument retrieve_document(int $document_index_id, bool $main_document_index_id = false)

Returns the xfs_document in the storage DMS to a ID.

Parameters

int $document_index_id

document index ID

bool $main_document_index_id

Return Value

false|XfsDocument

The system_dms_document

in Core at line 1879
bool send_file(array $args, bool $binary = false, bool $is_full_path = false)

Get the data... $args = array('download','myfile.txt')

Redeclare for binary downloads: function send_file($args, $binary = false) { switch($args[1]) { case 'mybinard.txt': parent::send_file($args,'mybinarycontent'); } }

Parameters

array $args

Array of arguments passed via CMD parameter

bool $binary

True if data as passed as binary stream instead of filename

bool $is_full_path

Set to true if args[1] contains a fill hdd path (not within mod_storage of current module). Caution!

Return Value

bool

in Core at line 310
setDepLinkContext(string $localPage, string $localCmd)

Enforce Link Context based on Current Parent Instance for the local Page and CMD

Parameters

string $localPage
string $localCmd

in Core at line 567
void set_config(string $var, mixed $value, string|bool $context = false, string|bool $subcontext = false)

No description

Parameters

string $var

var

mixed $value

value

string|bool $context

context

string|bool $subcontext

subcontext

Return Value

void

in Core at line 585
void set_config_for_session(string $var, string $value, string $context = false, string $subcontext = false)

No description

Parameters

string $var

var

string $value

value

string $context

context

string $subcontext

subcontext

Return Value

void

in Core at line 2423
set_context_id(int $context_id)

sets the numerical Context-ID (PrimaryKey in Instance_Registry)

Parameters

int $context_id

Set Dep Link Context - generated URLs will be considered relative to the given parent instance

Parameters

Core $parent
string $view
string $page
string $cmd

in Core at line 403
void set_group(int $group_id, string|bool $short_name = false)

No description

Parameters

int $group_id

group id

string|bool $short_name

short name

Return Value

void

in ObjectManager at line 125
set_injection_objects(array $objects)

Add given objects to injection object list that will be inject into object by magic call. The array should consists of property name as key and object as value.

Parameters

array $objects

in ObjectManager at line 141
set_lib_class_dir($lib_class_dir)

Sets the directory where classes are stored.

This folder can contains other folder or classes. All requested and registered classes will be searched in this folder by concating this path with the relative path defined in the registration of the requested class. If the class is not included it will be done on the fly.

Parameters

$lib_class_dir

in ObjectManager at line 156
set_lib_class_prefix($lib_class_prefix)

Sets the class name prefix.

An optional possibility to pretend a prefix for all registered classes. This prefix is only required in the class name of the requested object. The registered class name should not contains this prefix. E.g. a class called xf_foobar should be registered as foobar.

Parameters

$lib_class_prefix

in Controller at line 379
bool set_message_vars($values, bool $reset = false)

No description

Parameters

$values
bool $reset

Reset Vars before setting?

Return Value

bool

success

in Core at line 232
set_parent_context(Core $obj, $clone_link_helper = true)

No description

Parameters

Core $obj

Module Instance

$clone_link_helper

in Core at line 421
void set_security_level(int $security_level)

No description

Parameters

int $security_level

Please use XF_SEC_LEVEL_NONE, XF_SEC_LEVEL_READ, XF_SEC_LEVEL_WRITE, XF_SEC_LEVEL_DELETE or XF_SEC_LEVEL_ADMIN

Return Value

void

No description

Parameters

$xf_link

Return Value

void

in Core at line 936
xelos_global_template|bool setup_check($args = array())

Check/Get Setup Page

Parameters

$args

Return Value

xelos_global_template|bool

in StaticCacheTrait at line 121
static void staticCacheClearAllCachePools()

No description

Return Value

void

in StaticCacheTrait at line 114
static void staticCacheClearCachePool($cache_pool = 'default')

Clears the specified cache pool from the static cache

Parameters

$cache_pool

Return Value

void

in StaticCacheTrait at line 61
static array|string|int|bool|null staticCacheGet($key, string $cache_pool = 'default')

Retrieves a value from the static cache

Parameters

$key
string $cache_pool

Return Value

array|string|int|bool|null

Returns the cached result or null if no value has been stored

in StaticCacheTrait at line 98
static array staticCacheGetKeys(string $cache_pool = 'default')

Returns an array of all cache keys which have been set

Parameters

string $cache_pool

Return Value

array

in StaticCacheTrait at line 107
static array staticCacheGetPool($cache_pool)

Returns an key/value array with all cached values from the passed pool

Parameters

$cache_pool

Return Value

array

in StaticCacheTrait at line 34
static bool staticCacheIsEnabled()

No description

Return Value

bool

in StaticCacheTrait at line 85
static bool staticCacheIsSet($key, string $cache_pool = 'default')

Checks if the passed is key has a value set

Parameters

$key
string $cache_pool

Return Value

bool

in StaticCacheTrait at line 73
static staticCacheRemove($key, string $cache_pool = 'default')

Removes the passed key

Parameters

$key
string $cache_pool

in StaticCacheTrait at line 46
static void staticCacheSet(string|int $key, mixed $value, string $cache_pool = 'default')

Store a value in the static cache

Parameters

string|int $key
mixed $value
string $cache_pool

ID for the cache pool which should be used

Return Value

void

in Core at line 2599
Document|false store_file(string $path, string $storage_folder, string|bool $file_name = false, DocumentModel|bool $owner = false, DocumentModel|null $owner_document = null)

Stores the file in the system DMS

Parameters

string $path

path to the new file

string $storage_folder

virtual folder in the System DMS where the document is stored

string|bool $file_name

filename in the System DMS

DocumentModel|bool $owner

Owning Document Model: Creates an owner reference for the new document

DocumentModel|null $owner_document

Document that owns all stored files by reference and subcategory of system dms

Return Value

Document|false

The new xfs_document in the system DMS

in Controller at line 326
bool|string|Template|xelos_global_template templateResponse(mixed $content, string $title)

No description

Parameters

mixed $content
string $title

Return Value

bool|string|Template|xelos_global_template

Exceptions

ContentException

in Core at line 1556
bool user_has_access(string|bool $page = false, string|bool $instance_id = false, int $group_security_id = 0)

Userrights Check

Parameters

string|bool $page

page

string|bool $instance_id

instance

int $group_security_id

Group Security ID

Return Value

bool

success

in Core at line 1578
array user_has_access_in_groups(string $page)

Return the group_security ids the user has access to

Parameters

string $page

Return Value

array

in Core at line 1512
bool user_has_policy(string $policy, mixed $policy_value = '*', int|bool $target_user = false, int|bool $group_id = false, string $default_policy = 'deny')

No description

Parameters

string $policy

Policy (e.g. read, write, delete)

mixed $policy_value

Dynamic Value to check (e.g. category_id, thread_id, item_id) or * for static

int|bool $target_user

of targetuser for privacy

int|bool $group_id

local group_id if known

string $default_policy

policy 'allow' or 'deny'

Return Value

bool

success

in Core at line 1525
array user_has_policy_in_groups(string $policy, string $policy_value = false)

Return the group_security ids the user has the policy in

Parameters

string $policy
string $policy_value

Return Value

array

in Core at line 1538
array user_has_policy_values(string $policy, string $treeTable = null)

User has policy values

Parameters

string $policy
string $treeTable

Tablename for Tree Policies

Return Value

array

in ObjectManager at line 103
xelos_object_manager_init(bool $lib_class_dir, string $lib_class_prefix = '', string $ns_prefix = '')

trait constructor This method have to be called from constructor of each class that uses this trait.

It sets the defaults and all necessary properties.

Parameters

bool $lib_class_dir
string $lib_class_prefix

e.g. 'xf_'

string $ns_prefix

e.g. "XELOS\Framework\Lib\"