# cp.plugins.env

Provides access to resources in the plugin environment. In generally, this will be files stored in a Complex Plugin's folder.


# API Overview

Constructors - API calls which return an object, typically one that offers API methods

  • new

Methods - API calls which can only be made on an object returned by a constructor

  • compileTemplate
  • pathToAbsolute
  • pathToURL
  • readResource
  • renderTemplate

# API Documentation

# Constructors

# new

Signature cp.plugins.env.new(rootPath) -> cp.plugins.env
Type Constructor
Description Creates a new env pointing at the specified root folder path.
Parameters
  • rootPath the path to the plugin's root folder.
Returns
  • The new env instance.
Notes None
Examples None
Source src/extensions/cp/plugins/env.lua line 21

# Methods

# compileTemplate

Signature cp.plugins.env:compileTemplate(view[, layout]) -> function
Type Method
Description Compiles a Resty Template within the context of the plugin. The view may be a resource path pointing at a template file in the plugin, or may be raw template markup. The layout is an optional path/template for a layout template. See the Resty Template documentation for details.
Parameters
  • view - The local path inside the plugin to the template file, or raw template markup.
  • layout - The local path inside the plugin to the layout file.
Returns
  • A function which will render the template.
Notes
  • It returns a function which can have a model table passed in which will provide variables/functions/etc that the template can access while rendering. The function can be reused multiple times with different context values.
Examples None
Source src/extensions/cp/plugins/env.lua line 102

# pathToAbsolute

Signature cp.plugins.env:pathToAbsolute(resourcePath) -> string
Type Method
Description Returns the absolute path to the file referred to by the relative resource path. If an image is stored as images/my.jpg in the plugin, the resource path will be "images/my.jpg". The result will be the full path to that file. If the file cannot be found in the plugin, it will look in the cp/resources/assets folder for globally-shared resources.
Parameters
  • resourcePath - The local path to the resource inside the plugin.
Returns
  • The absolute path to the resource, or nil if it does not exist.
Notes None
Examples None
Source src/extensions/cp/plugins/env.lua line 37

# pathToURL

Signature cp.plugins.env:pathToURL(resourcePath) -> string
Type Method
Description Returns an absolute file:// URL to the file referred to by the relative resource path. If an image is stored as images/my.jpg in the plugin, the resource path will be "images/my.jpg". The result will be a URL to that file. If the file cannot be found in the plugin, it will look in the cp/resources/assets folder for globally-shared resources.
Parameters
  • resourcePath - The local path to the resource inside the plugin.
Returns
  • The absolute URL to the resource, or nil if it does not exist.
Notes None
Examples None
Source src/extensions/cp/plugins/env.lua line 60

# readResource

Signature cp.plugins.env:readResource(resourcePath) -> string
Type Method
Description Reads the contents of the resource at the specified resource path. This is returned as a string of data (which may or may not be an actual readable string, depending on the source content).
Parameters
  • resourcePath - The local path to the resource inside the plugin.
Returns
  • The contents of the resouce, or nil if the file does not exist.
Notes None
Examples None
Source src/extensions/cp/plugins/env.lua line 78

# renderTemplate

Signature cp.plugins.env:renderTemplate(view[, model[, layout]]) -> string
Type Method
Description Renders a Resty Template within the context of the plugin. The view may be a resource path pointing at a template file in the plugin, or may be raw template markup. The layout is an optional path/template for a layout template. See the Resty Template documentation for details.
Parameters
  • view - The local path inside the plugin to the template file, or raw template markup.
  • model - The model which provides variables/functions/etc to the template.
  • layout - The local path inside the plugin to the layout file.
Returns
  • A function which will render the template.
Notes
  • The model is a table which will provide variables/functions/etc that the template can access while rendering.
Examples None
Source src/extensions/cp/plugins/env.lua line 146