Elgg  Version 2.3
Namespaces | Functions | Variables
views.php File Reference

Go to the source code of this file.

Namespaces

 Elgg\Core
 Activate a plugin or plugins.
 

Functions

 elgg_set_viewtype ($viewtype="")
 Manually set the viewtype. More...
 
 elgg_get_viewtype ()
 Return the current view type. More...
 
 _elgg_get_initial_viewtype ()
 Get the initial viewtype. More...
 
 elgg_register_viewtype ($viewtype)
 Register a viewtype. More...
 
 elgg_is_registered_viewtype ($viewtype)
 Checks if $viewtype is registered. More...
 
 _elgg_is_valid_viewtype ($viewtype)
 Checks if $viewtype is a string suitable for use as a viewtype name. More...
 
 elgg_register_viewtype_fallback ($viewtype)
 Register a viewtype to fall back to a default view if a view isn't found for that viewtype. More...
 
 elgg_does_viewtype_fallback ($viewtype)
 Checks if a viewtype falls back to default. More...
 
 elgg_register_ajax_view ($view)
 Register a view to be available for ajax calls. More...
 
 elgg_unregister_ajax_view ($view)
 Unregister a view for ajax calls. More...
 
 elgg_register_external_view ($view, $cacheable=false)
 Registers a view as being available externally (i.e. More...
 
 elgg_unregister_external_view ($view)
 Unregister a view for ajax calls. More...
 
 elgg_set_view_location ($view, $location, $viewtype= '')
 Set an alternative base location for a view. More...
 
 elgg_view_exists ($view, $viewtype= '', $recurse=true)
 Returns whether the specified view exists. More...
 
 elgg_list_views ($viewtype= 'default')
 List all views in a viewtype. More...
 
 elgg_view ($view, $vars=array(), $ignore1=false, $ignore2=false, $viewtype= '')
 Return a parsed view. More...
 
 elgg_view_deprecated ($view, array $vars, $suggestion, $version)
 Display a view with a deprecation notice. More...
 
 elgg_extend_view ($view, $view_extension, $priority=501)
 Extends a view with another view. More...
 
 elgg_unextend_view ($view, $view_extension)
 Unextends a view. More...
 
 elgg_get_view_extensions ($view)
 Get the views (and priorities) that extend a view. More...
 
 elgg_prepend_css_urls ($css, $path)
 In CSS content, prepend a path to relative URLs. More...
 
 elgg_view_page ($title, $body, $page_shell= 'default', $vars=array())
 Assembles and outputs a full page. More...
 
 elgg_view_resource ($name, array $vars=[])
 Render a resource view. More...
 
 _elgg_views_prepare_head ($title)
 Prepare the variables for the html head. More...
 
 _elgg_views_prepare_favicon_links ($hook, $type, $head_params, $params)
 Add favicon link tags to HTML head. More...
 
 elgg_view_layout ($layout_name, $vars=array())
 Displays a layout with optional parameters. More...
 
 elgg_view_menu ($menu, array $vars=array())
 Render a menu. More...
 
 elgg_view_menu_item (\ElggMenuItem $item, array $vars=array())
 Render a menu item (usually as a link) More...
 
 elgg_view_entity (\ElggEntity $entity, array $vars=array(), $bypass=false, $debug=false)
 Returns a string of a rendered entity. More...
 
 elgg_view_entity_icon (\ElggEntity $entity, $size= 'medium', $vars=array())
 View the icon of an entity. More...
 
 elgg_view_annotation (\ElggAnnotation $annotation, array $vars=array(), $bypass=false, $debug=false)
 Returns a string of a rendered annotation. More...
 
 elgg_view_entity_list ($entities, array $vars=array())
 Returns a rendered list of entities with pagination. More...
 
 elgg_view_annotation_list ($annotations, array $vars=array())
 Returns a rendered list of annotations, plus pagination. More...
 
 elgg_view_entity_annotations (\ElggEntity $entity, $full_view=true)
 Display a plugin-specified rendered list of annotations for an entity. More...
 
 elgg_view_title ($title, array $vars=array())
 Renders a title. More...
 
 elgg_view_friendly_time ($time)
 Displays a UNIX timestamp in a friendly way. More...
 
 elgg_view_comments ($entity, $add_comment=true, array $vars=array())
 Returns rendered comments and a comment form for an entity. More...
 
 elgg_view_image_block ($image, $body, $vars=array())
 Wrapper function for the image block display pattern. More...
 
 elgg_view_module ($type, $title, $body, array $vars=array())
 Wrapper function for the module display pattern. More...
 
 elgg_view_river_item ($item, array $vars=array())
 Renders a human-readable representation of a river item. More...
 
 elgg_view_form ($action, $form_vars=array(), $body_vars=array())
 
 elgg_set_form_footer ($footer= '')
 Sets form footer and defers its rendering until the form view and extensions have been rendered. More...
 
 elgg_get_form_footer ()
 Returns currently set footer, or false if not in the form rendering stack. More...
 
 elgg_view_input ($input_type, array $vars=array())
 Renders a form field. More...
 
 elgg_view_field (array $params=[])
 Renders a form field, usually with a wrapper element, a label, help text, etc. More...
 
 elgg_view_tagcloud (array $options=array())
 Create a tagcloud for viewing. More...
 
 elgg_view_list_item ($item, array $vars=array())
 View an item in a list. More...
 
 elgg_view_icon ($name, $vars=array())
 View one of the icons. More...
 
 elgg_register_rss_link ()
 Include the RSS icon link and link element in the head. More...
 
 elgg_unregister_rss_link ()
 Remove the RSS icon link and link element from the head. More...
 
 _elgg_has_rss_link ()
 Should the RSS view of this URL be linked to? More...
 
 elgg_view_access_collections ($owner_guid)
 Displays a user's access collections, using the core/friends/collections view. More...
 
 autoregister_views ($view_base, $folder, $ignored, $viewtype)
 Auto-registers views from a location. More...
 
 _elgg_views_minify ($hook, $type, $content, $params)
 Minifies simplecache CSS and JS views by handling the "simplecache:generate" hook. More...
 
 _elgg_views_amd ($hook, $type, $content, $params)
 Inserts module names into anonymous modules by handling the "simplecache:generate" hook. More...
 
 elgg_views_add_rss_link ()
 Add the RSS link to the extras when if needed. More...
 
 _elgg_views_send_header_x_frame_options ()
 Sends X-Frame-Options header on page requests. More...
 
 _elgg_view_may_be_altered ($view, $path)
 Is there a chance a plugin is altering this view? More...
 
 elgg_views_boot ()
 Initialize viewtypes on system boot event This ensures simplecache is cleared during upgrades. More...
 
 _elgg_manage_pagesetup ($hook, $view, $value, $params)
 Handle triggering the pagesetup event at the right time. More...
 
 _elgg_get_js_site_data ()
 Get the site data to be merged into "elgg" in elgg.js. More...
 
 _elgg_get_js_page_data ()
 Get the initial contents of "elgg" client side. More...
 
 _elgg_view_under_viewtype ($view, $vars, $viewtype)
 Render a view while the global viewtype is temporarily changed. More...
 

Variables

global $CURRENT_SYSTEM_VIEWTYPE = ""
 The viewtype override. More...
 
return function (\Elgg\EventsService $events,\Elgg\HooksRegistrationService $hooks)
 

Function Documentation

_elgg_get_initial_viewtype ( )

Get the initial viewtype.

Returns
string private
Since
2.0.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 112 of file views.php.

_elgg_get_js_page_data ( )

Get the initial contents of "elgg" client side.

Will be extended by elgg.js.

Returns
array private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 2014 of file views.php.

_elgg_get_js_site_data ( )

Get the site data to be merged into "elgg" in elgg.js.

Unlike _elgg_get_js_page_data(), the keys returned are literal expressions.

Returns
array private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1990 of file views.php.

_elgg_has_rss_link ( )

Should the RSS view of this URL be linked to?

Returns
bool private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1637 of file views.php.

_elgg_is_valid_viewtype (   $viewtype)

Checks if $viewtype is a string suitable for use as a viewtype name.

Parameters
string$viewtypePotential viewtype name. Alphanumeric chars plus _ allowed.
Returns
bool private
Since
1.9
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 171 of file views.php.

_elgg_manage_pagesetup (   $hook,
  $view,
  $value,
  $params 
)

Handle triggering the pagesetup event at the right time.

Trigger the system "pagesetup" event just before the 1st view rendering, or the 2nd if the 1st view starts with "resources/".

We delay the pagesetup event if the first view is a resource view in order to allow plugins to move all page-specific logic like context setting into a resource view with more confidence that that state will be available in their pagesetup event handlers. See the commit message for more BG info.

Parameters
string$hook"view_vars"
string$viewView name
array$valueView arguments
array$paramsHook params
Returns
void
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1957 of file views.php.

_elgg_view_may_be_altered (   $view,
  $path 
)

Is there a chance a plugin is altering this view?

Note
Must be called after the [init, system] event, ideally as late as possible.
Always returns true if the view's location is set in /engine/views.php. Elgg does not keep track of the defaults for those locations.

// check a view in core if (_elgg_view_may_be_altered('foo/bar', 'foo/bar.php')) { // use the view for BC }

// check a view in a bundled plugin $dir = DIR . "/views/" . elgg_get_viewtype(); if (_elgg_view_may_be_altered('foo.css', "$dir/foo.css.php")) { // use the view for BC }

Parameters
string$viewView name. E.g. "elgg/init.js"
string$pathAbsolute file path, or path relative to the viewtype directory. E.g. "elgg/init.js.php"
Returns
bool private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1800 of file views.php.

_elgg_view_under_viewtype (   $view,
  $vars,
  $viewtype 
)

Render a view while the global viewtype is temporarily changed.

This makes sure that nested views use the same viewtype.

Parameters
string$viewView name
array$varsView vars
string$viewtypeTemporary viewtype ('' to leave current)
Returns
mixed private
Examples:
/root/Elgg/engine/lib/output.php, and /root/Elgg/engine/lib/views.php.

Definition at line 2070 of file views.php.

_elgg_views_amd (   $hook,
  $type,
  $content,
  $params 
)

Inserts module names into anonymous modules by handling the "simplecache:generate" hook.

Parameters
string$hookThe name of the hook
string$typeView type (css, js, or unknown)
string$contentContent of the view
array$paramsArray of parameters
Returns
string|null View content minified (if css/js type) private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1734 of file views.php.

_elgg_views_minify (   $hook,
  $type,
  $content,
  $params 
)

Minifies simplecache CSS and JS views by handling the "simplecache:generate" hook.

Parameters
string$hookThe name of the hook
string$typeView type (css, js, or unknown)
string$contentContent of the view
array$paramsArray of parameters
Returns
string|null View content minified (if css/js type) private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1704 of file views.php.

_elgg_views_prepare_favicon_links (   $hook,
  $type,
  $head_params,
  $params 
)

Add favicon link tags to HTML head.

Parameters
string$hook"head"
string$type"page"
array$head_paramsHead params [ 'title' => '', 'metas' => [], 'links' => [], ]
array$paramsHook params
Returns
array
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 611 of file views.php.

_elgg_views_prepare_head (   $title)

Prepare the variables for the html head.

Parameters
string$titlePage title for <head>
Returns
array private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 539 of file views.php.

_elgg_views_send_header_x_frame_options ( )

Sends X-Frame-Options header on page requests.

private

Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1769 of file views.php.

autoregister_views (   $view_base,
  $folder,
  $ignored,
  $viewtype 
)

Auto-registers views from a location.

Note
Views in plugin/views/ are automatically registered for active plugins. Plugin authors would only need to call this if optionally including an entire views structure.
Parameters
string$view_baseOptional The base of the view name without the view type.
string$folderRequired The folder to begin looking in
string$ignoredThis argument is ignored
string$viewtypeThe type of view we're looking at (default, rss, etc)
Returns
bool returns false if folder can't be read
Since
1.7.0
See also
elgg_set_view_location() private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1689 of file views.php.

elgg_does_viewtype_fallback (   $viewtype)

Checks if a viewtype falls back to default.

Parameters
string$viewtypeViewtype
Returns
boolean
Since
1.7.2
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 206 of file views.php.

elgg_extend_view (   $view,
  $view_extension,
  $priority = 501 
)

Extends a view with another view.

The output of any view can be prepended or appended to any other view.

The default action is to append a view. If the priority is less than 500, the output of the extended view will be appended to the original view.

Views can be extended multiple times, and extensions are not checked for uniqueness. Use elgg_unextend_view() to help manage duplicates.

Priority can be specified and affects the order in which extensions are appended or prepended.

See also
elgg_prepend_css_urls() If the extension is CSS, you may need to use this to fix relative URLs.
Parameters
string$viewThe view to extend.
string$view_extensionThis view is added to $view
int$priorityThe priority, from 0 to 1000, to add at (lowest numbers displayed first)
Returns
void
Since
1.7.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 380 of file views.php.

elgg_get_form_footer ( )

Returns currently set footer, or false if not in the form rendering stack.

Returns
string|false
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1366 of file views.php.

elgg_get_view_extensions (   $view)

Get the views (and priorities) that extend a view.

Note
extensions may change anytime, especially during the [init, system] event
Parameters
string$viewView name
Returns
string[] Keys returned are view priorities.
Since
2.3
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 407 of file views.php.

elgg_get_viewtype ( )

Return the current view type.

Viewtypes are automatically detected and can be set with $_REQUEST['view'] or elgg_set_viewtype().

Note
Internal: Viewtype is determined in this order:
  • $CURRENT_SYSTEM_VIEWTYPE Any overrides by elgg_set_viewtype()
  • $CONFIG->view The default view as saved in the DB.
Returns
string The view.
See also
elgg_set_viewtype()
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 95 of file views.php.

elgg_is_registered_viewtype (   $viewtype)

Checks if $viewtype is registered.

Parameters
string$viewtypeThe viewtype name
Returns
bool
Since
1.9.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 153 of file views.php.

elgg_list_views (   $viewtype = 'default')

List all views in a viewtype.

Parameters
string$viewtypeViewtype
Returns
string[]
Since
2.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 306 of file views.php.

elgg_prepend_css_urls (   $css,
  $path 
)

In CSS content, prepend a path to relative URLs.

This is useful to process a CSS view being used as an extension.

Parameters
string$cssCSS
string$pathPath to prepend. E.g. "foo/bar/" or "../"
Returns
string
Since
2.2
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 424 of file views.php.

elgg_register_ajax_view (   $view)

Register a view to be available for ajax calls.

Warning
Only views that begin with 'js/' and 'css/' have their content type set to 'text/javascript' and 'text/css'. Other views are served as 'text/html'.
Parameters
string$viewThe view name
Returns
void
Since
1.8.3
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 221 of file views.php.

elgg_register_external_view (   $view,
  $cacheable = false 
)

Registers a view as being available externally (i.e.

via URL).

Parameters
string$viewThe name of the view.
boolean$cacheableWhether this view can be cached.
Returns
void
Since
1.9.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 244 of file views.php.

elgg_register_rss_link ( )

Include the RSS icon link and link element in the head.

Returns
void
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1618 of file views.php.

elgg_register_viewtype (   $viewtype)

Register a viewtype.

Parameters
string$viewtypeThe view type to register
Returns
bool
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 133 of file views.php.

elgg_register_viewtype_fallback (   $viewtype)

Register a viewtype to fall back to a default view if a view isn't found for that viewtype.

This is useful for alternate html viewtypes (such as for mobile devices).

Parameters
string$viewtypeThe viewtype to register
Returns
void
Since
1.7.2
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 194 of file views.php.

elgg_set_form_footer (   $footer = '')

Sets form footer and defers its rendering until the form view and extensions have been rendered.

Deferring footer rendering allows plugins to extend the form view while maintaining logical DOM structure. Footer will be rendered using 'elements/forms/footer' view after form body has finished rendering

Parameters
string$footerFooter
Returns
bool
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1358 of file views.php.

elgg_set_view_location (   $view,
  $location,
  $viewtype = '' 
)

Set an alternative base location for a view.

Views are expected to be in plugin_name/views/. This function can be used to change that location.

This is useful to optionally register views in a plugin.

Parameters
string$viewThe name of the view
string$locationThe full path to the view
string$viewtypeThe view type
Returns
void
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 278 of file views.php.

elgg_set_viewtype (   $viewtype = "")

Manually set the viewtype.

View types are detected automatically. This function allows you to force subsequent views to use a different viewtype.

Call elgg_set_viewtype() with no parameter to reset.

Parameters
string$viewtypeThe view type, e.g. 'rss', or 'default'.
Returns
bool
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 74 of file views.php.

elgg_unextend_view (   $view,
  $view_extension 
)

Unextends a view.

Parameters
string$viewThe view that was extended.
string$view_extensionThis view that was added to $view
Returns
bool
Since
1.7.2
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 393 of file views.php.

elgg_unregister_ajax_view (   $view)

Unregister a view for ajax calls.

Parameters
string$viewThe view name
Returns
void
Since
1.8.3
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 232 of file views.php.

elgg_unregister_external_view (   $view)

Unregister a view for ajax calls.

Parameters
string$viewThe view name
Returns
void
Since
1.9.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 260 of file views.php.

elgg_unregister_rss_link ( )

Remove the RSS icon link and link element from the head.

Returns
void
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1627 of file views.php.

elgg_view (   $view,
  $vars = array(),
  $ignore1 = false,
  $ignore2 = false,
  $viewtype = '' 
)

Return a parsed view.

Views are rendered by a template handler and returned as strings.

Views are called with a special $vars variable set, which includes any variables passed as the second parameter.

The input of views can be intercepted by registering for the view_vars, $view_name plugin hook.

If the input contains the key "__view_output", the view will output this value as a string. No extensions are used, and the "view" hook is not triggered).

The output of views can be intercepted by registering for the view, $view_name plugin hook.

Parameters
string$viewThe name and location of the view to use
array$varsVariables to pass to the view.
boolean$ignore1This argument is ignored and will be removed eventually
boolean$ignore2This argument is ignored and will be removed eventually
string$viewtypeIf set, forces the viewtype for the elgg_view call to be this value (default: standard detection)
Returns
string The parsed view
Examples:
/root/Elgg/engine/classes/Elgg/FormsService.php, and /root/Elgg/engine/lib/views.php.

Definition at line 336 of file views.php.

elgg_view_access_collections (   $owner_guid)

Displays a user's access collections, using the core/friends/collections view.

Parameters
int$owner_guidThe GUID of the owning user
Returns
string A formatted rendition of the collections
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1654 of file views.php.

elgg_view_annotation ( \ElggAnnotation  $annotation,
array  $vars = array(),
  $bypass = false,
  $debug = false 
)

Returns a string of a rendered annotation.

Annotation views are expected to be in annotation/$annotation_name. If a view is not found for $annotation_name, the default annotation/default will be used.

Warning
annotation/default is not currently defined in core.

The annotation view is called with the following in $vars:

  • 'annotation' The annotation being viewed.
Parameters
\ElggAnnotation$annotationThe annotation to display
array$varsVariable array for view. 'item_view' Alternative view used to render an annotation
bool$bypassIgnored and will be removed eventually
bool$debugComplain if views are missing
Returns
string/false Rendered annotation
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 987 of file views.php.

elgg_view_annotation_list (   $annotations,
array  $vars = array() 
)

Returns a rendered list of annotations, plus pagination.

This function should be called by wrapper functions.

Parameters
array$annotationsArray of annotations
array$varsDisplay variables 'count' The total number of annotations across all pages 'offset' The current indexing offset 'limit' The number of annotations to display per page 'full_view' Display the full view of the annotation? 'list_class' CSS Class applied to the list 'item_view' Alternative view to render list items 'offset_key' The url parameter key used for offset 'no_results' Message to display if no results (string|Closure)
Returns
string The list of annotations private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1099 of file views.php.

elgg_view_comments (   $entity,
  $add_comment = true,
array  $vars = array() 
)

Returns rendered comments and a comment form for an entity.

Plugins can override the output by registering a handler for the comments, $entity_type hook. The handler is responsible for formatting the comments and the add comment form.

Parameters
\ElggEntity$entityThe entity to view comments of
bool$add_commentInclude a form to add comments?
array$varsVariables to pass to comment view
Returns
string|false Rendered comments or false on failure
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1197 of file views.php.

elgg_view_deprecated (   $view,
array  $vars,
  $suggestion,
  $version 
)

Display a view with a deprecation notice.

No missing view NOTICE is logged

See also
elgg_view()
Parameters
string$viewThe name and location of the view to use
array$varsVariables to pass to the view
string$suggestionSuggestion with the deprecation message
string$versionHuman-readable release version: 1.7, 1.8, ...
Returns
string The parsed view private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 353 of file views.php.

elgg_view_entity ( \ElggEntity  $entity,
array  $vars = array(),
  $bypass = false,
  $debug = false 
)

Returns a string of a rendered entity.

Entity views are either determined by setting the view property on the entity or by having a view named after the entity $type/$subtype. Entities that have neither a view property nor a defined $type/$subtype view will fall back to using the $type/default view.

The entity view is called with the following in $vars:

  • 'entity' The entity being viewed

This function can automatically appends annotations to entities if in full view and a handler is registered for the entity:annotate. See https://github.com/Elgg/Elgg/issues/964 and elgg_view_entity_annotations().

Parameters
\ElggEntity$entityThe entity to display
array$varsArray of variables to pass to the entity view. 'full_view' Whether to show a full or condensed view. (Default: true) 'item_view' Alternative view used to render this entity
boolean$bypassIgnored and will be removed eventually
boolean$debugComplain if views are missing
Returns
string HTML to display or false
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 873 of file views.php.

elgg_view_entity_annotations ( \ElggEntity  $entity,
  $full_view = true 
)

Display a plugin-specified rendered list of annotations for an entity.

This displays the output of functions registered to the entity:annotation, $entity_type plugin hook.

This is called automatically by the framework from elgg_view_entity()

Parameters
\ElggEntity$entityEntity
bool$full_viewDisplay full view?
Returns
mixed string or false on failure
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1133 of file views.php.

elgg_view_entity_icon ( \ElggEntity  $entity,
  $size = 'medium',
  $vars = array() 
)

View the icon of an entity.

Entity views are determined by having a view named after the entity $type/$subtype. Entities that do not have a defined icon/$type/$subtype view will fall back to using the icon/$type/default view.

Parameters
\ElggEntity$entityThe entity to display
string$sizeThe size: tiny, small, medium, large
array$varsAn array of variables to pass to the view. Some possible variables are img_class and link_class. See the specific icon view for more parameters.
Returns
string HTML to display or false
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 936 of file views.php.

elgg_view_entity_list (   $entities,
array  $vars = array() 
)

Returns a rendered list of entities with pagination.

This function should be called by wrapper functions.

See also
elgg_list_entities()
list_user_friends_objects()
elgg_list_entities_from_metadata()
elgg_list_entities_from_relationships()
elgg_list_entities_from_annotations()
Parameters
array$entitiesArray of entities
array$varsDisplay variables 'count' The total number of entities across all pages 'offset' The current indexing offset 'limit' The number of entities to display per page (default from settings) 'full_view' Display the full view of the entities? 'list_class' CSS class applied to the list 'item_class' CSS class applied to the list items 'item_view' Alternative view to render list items 'pagination' Display pagination? 'base_url' Base URL of list (optional) 'url_fragment' URL fragment to add to links if not present in base_url (optional) 'position' Position of the pagination: before, after, or both 'list_type' List type: 'list' (default), 'gallery' 'list_type_toggle' Display the list type toggle? 'no_results' Message to display if no results (string|Closure)
Returns
string The rendered list of entities
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1048 of file views.php.

elgg_view_exists (   $view,
  $viewtype = '',
  $recurse = true 
)

Returns whether the specified view exists.

Note
If $recurse is true, also checks if a view exists only as an extension.
Parameters
string$viewThe view name
string$viewtypeIf set, forces the viewtype
bool$recurseIf false, do not check extensions
Returns
bool
Examples:
/root/Elgg/engine/lib/output.php, and /root/Elgg/engine/lib/views.php.

Definition at line 293 of file views.php.

elgg_view_field ( array  $params = [])

Renders a form field, usually with a wrapper element, a label, help text, etc.

Parameters
array$paramsField parameters and variables for the input view. Keys not prefixed with hash (#) are passed to the input view as $vars. Keys prefixed with a hash specify the field wrapper (.elgg-view-field) output.
  • type: specifies input view. E.g. "text" uses the view "input/text".
  • label: field label HTML
  • help: field help HTML
  • class: field class name Note: Both label and help are printed unescaped within their wrapper element. Note: Some fields (like input/checkbox) need special attention because label and label serve different purposes "#label" will be used as a label in the field wrapper but "label" will be used in the input view
Returns
string
Since
2.3
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1424 of file views.php.

elgg_view_form (   $action,
  $form_vars = array(),
  $body_vars = array() 
)
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1345 of file views.php.

elgg_view_friendly_time (   $time)

Displays a UNIX timestamp in a friendly way.

See also
elgg_get_friendly_time()
Parameters
int$timeA UNIX epoch timestamp
Returns
string The friendly time HTML
Since
1.7.2
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1176 of file views.php.

elgg_view_icon (   $name,
  $vars = array() 
)

View one of the icons.

Shorthand for

Parameters
string$nameThe specific icon to display
mixed$varsThe additional classname as a string ('float', 'float-alt' or a custom class) or an array of variables (array('class' => 'float')) to pass to the icon view.
Returns
string The html for displaying an icon
Exceptions
InvalidArgumentException
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1582 of file views.php.

elgg_view_image_block (   $image,
  $body,
  $vars = array() 
)

Wrapper function for the image block display pattern.

Fixed width media on the side (image, icon, flash, etc.). Descriptive content filling the rest of the column.

This is a shortcut for { page/components/image_block}.

Parameters
string$imageThe icon and other information
string$bodyDescription content
array$varsAdditional parameters for the view
Returns
string
Since
1.8.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1229 of file views.php.

elgg_view_input (   $input_type,
array  $vars = array() 
)

Renders a form field.

Parameters
string$input_typeInput type, used to generate an input view ("input/$input_type")
array$varsFields and input vars. Field vars contain both field and input params. 'label', 'help', and 'field_class' params will not be passed on to the input view. Others, including 'required' and 'id', will be available to the input view. Both 'label' and 'help' params accept HTML, and will be printed unescaped within their wrapper element.
Returns
string
Since
2.1
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1385 of file views.php.

elgg_view_layout (   $layout_name,
  $vars = array() 
)

Displays a layout with optional parameters.

Layouts provide consistent organization of pages and other blocks of content. There are a few default layouts in core:

  • admin A special layout for the admin area.
  • one_column A single content column.
  • one_sidebar A content column with sidebar.
  • two_sidebar A content column with two sidebars.
  • widgets A widget canvas.

The layout views take the form page/layouts/$layout_name See the individual layouts for what options are supported. The three most common layouts have these parameters: one_column content => string one_sidebar content => string sidebar => string (optional) content content => string sidebar => string (optional) buttons => string (override the default add button) title => string (override the default title) filter_context => string (selected content filter) See the content layout view for more parameters

Parameters
string$layout_nameThe name of the view in page/layouts/.
array$varsAssociative array of parameters for the layout view
Returns
string The layout
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 689 of file views.php.

elgg_view_list_item (   $item,
array  $vars = array() 
)

View an item in a list.

Parameters
\ElggEntity | \ElggAnnotation$item
array$varsAdditional parameters for the rendering 'item_view' Alternative view used to render list items
Returns
string
Since
1.8.0 private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1557 of file views.php.

elgg_view_menu (   $menu,
array  $vars = array() 
)

Render a menu.

See also
elgg_register_menu_item() for documentation on adding menu items and navigation.php for information on the different menus available.

This function triggers a 'register', 'menu:<menu name>="">' plugin hook that enables plugins to add menu items just before a menu is rendered. This is used by dynamic menus (menus that change based on some input such as the user hover menu). Using elgg_register_menu_item() in response to the hook can cause incorrect links to show up. See the blog plugin's blog_owner_block_menu() for an example of using this plugin hook.

An additional hook is the 'prepare', 'menu:<menu name>="">' which enables plugins to modify the structure of the menu (sort it, remove items, set variables on the menu items).

Preset (unprepared) menu items passed to the this function with the $vars argument, will be merged with the registered items (registered with elgg_register_menu_item()). The combined set of menu items will be passed to 'register', 'menu:<menu_name>' hook.

Plugins that pass preset menu items to this function and do not wish to be affected by plugin hooks (e.g. if you are displaying multiple menus with the same name on the page) should instead choose a unqie menu name and define a menu_view argument to render menus consistently. For example, if you have multiple 'filter' menus on the page: elgg_view_menu("filter:$uid", [ 'items' => $items, 'menu_view' => 'navigation/menu/filter', ]);

elgg_view_menu() uses views in navigation/menu

Parameters
string | Menu | UnpreparedMenu$menuMenu name (or object)
array$varsAn associative array of display options for the menu.
                     Options include:
                         items => an array of unprepared menu items
                                  as ElggMenuItem or menu item factory options
                         sort_by => string or php callback
                             string options: 'name', 'priority', 'title' (default),
                             'register' (registration order) or a
                             php callback (a compare function for usort)
                         handler: string the page handler to build action URLs
                         entity: \ElggEntity to use to build action URLs
                         class: string the class for the entire menu.
                         menu_view: name of the view to be used to render the menu
                         show_section_headers: bool show headers before menu sections.
Returns
string
Since
1.8.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 775 of file views.php.

elgg_view_menu_item ( \ElggMenuItem  $item,
array  $vars = array() 
)

Render a menu item (usually as a link)

Parameters
\ElggMenuItem$itemThe menu item
array$varsOptions to pass to output/url if a link
Returns
string
Since
1.9.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 815 of file views.php.

elgg_view_module (   $type,
  $title,
  $body,
array  $vars = array() 
)

Wrapper function for the module display pattern.

Box with header, body, footer

This is a shortcut for { page/components/module}.

Parameters
string$typeThe type of module (main, info, popup, aside, etc.)
string$titleA title to put in the header
string$bodyContent of the module
array$varsAdditional parameters for the module
Returns
string
Since
1.8.0
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1250 of file views.php.

elgg_view_page (   $title,
  $body,
  $page_shell = 'default',
  $vars = array() 
)

Assembles and outputs a full page.

A "page" in Elgg is determined by the current view type and can be HTML for a browser, RSS for a feed reader, or Javascript, PHP and a number of other formats.

For HTML pages, use the 'head', 'page' plugin hook for setting meta elements and links.

Parameters
string$titleTitle
string$bodyBody
string$page_shellOptional page shell to use. See page/shells view directory
array$varsOptional vars array to pass to the page shell. Automatically adds title, body, head, and sysmessages
Returns
string The contents of the page
Since
1.8
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 447 of file views.php.

elgg_view_resource (   $name,
array  $vars = [] 
)

Render a resource view.

Use this in your page handler to hand off page rendering to a view in "resources/". If not found in the current viewtype, we try the "default" viewtype.

Parameters
string$nameThe view name without the leading "resources/"
array$varsArguments passed to the view
Returns
string
Exceptions
SecurityException
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 510 of file views.php.

elgg_view_river_item (   $item,
array  $vars = array() 
)

Renders a human-readable representation of a river item.

Parameters
\ElggRiverItem$itemA river item object
array$varsAn array of variables for the view 'item_view' Alternative view to render the item
Returns
string returns empty string if could not be rendered
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1265 of file views.php.

elgg_view_tagcloud ( array  $options = array())

Create a tagcloud for viewing.

See also
elgg_get_tags
Parameters
array$optionsAny elgg_get_tags() options except:
type => must be single entity type

subtype => must be single entity subtype
Returns
string
Since
1.7.1
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1529 of file views.php.

elgg_view_title (   $title,
array  $vars = array() 
)

Renders a title.

This is a shortcut for { page/elements/title}.

Parameters
string$titleThe page title
array$varsView variables (was submenu be displayed? (deprecated))
Returns
string The HTML (etc)
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1160 of file views.php.

elgg_views_add_rss_link ( )

Add the RSS link to the extras when if needed.

Returns
void private
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1745 of file views.php.

elgg_views_boot ( )

Initialize viewtypes on system boot event This ensures simplecache is cleared during upgrades.

See #2252

Returns
void private boot system
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 1832 of file views.php.

Variable Documentation

$CURRENT_SYSTEM_VIEWTYPE = ""

The viewtype override.

string $CURRENT_SYSTEM_VIEWTYPE

See also
elgg_set_viewtype()
Examples:
/root/Elgg/engine/lib/views.php.

Definition at line 59 of file views.php.

Definition at line 2085 of file views.php.