Returns a reference to the global JApplicationWeb object, only creating it if it doesn't already exist.
This method must be invoked as: $web = JApplicationWeb::getInstance();
-
string
$name: The name (optional) of the JApplicationWeb class to instantiate.
Redefined in descendants as:
Class constructor.
-
mixed
$input: An optional argument to provide dependency injection for the application's input object. If the argument is a JInput object that object will become the application's input object, otherwise a default input object is created.
-
mixed
$config: An optional argument to provide dependency injection for the application's config object. If the argument is a JRegistry object that object will become the application's config object, otherwise a default config object is created.
-
mixed
$client: An optional argument to provide dependency injection for the application's client object. If the argument is a JApplicationWebClient object that object will become the application's client object, otherwise a default client object is created.
Redefined in descendants as:
After the session has been started we need to populate it with some default values.
void
afterSessionStart
()
Redefined in descendants as:
Set/get cachable state for the response. If $allow is set, sets the cachable state of the response. Always returns the current state.
boolean
allowCache
([boolean $allow = null])
-
boolean
$allow: True to allow browser caching.
Append content to the body content
-
string
$content: The content to append to the response body.
Method to check the current client connnection status to ensure that it is alive. We are wrapping this to isolate the connection_status() function from our code base for testing reasons.
boolean
checkConnectionAlive
()
Method to check to see if headers have already been sent. We are wrapping this to isolate the headers_sent() function from our code base for testing reasons.
boolean
checkHeadersSent
()
Method to clear any set response headers.
Checks the accept encoding of the browser and compresses the data before sending it to the client if possible.
void
compress
()
Method to detect the requested URI from server environment variables.
string
detectRequestUri
()
Method to run the Web application routines. Most likely you will want to instantiate a controller and execute it, or perform some sort of action that populates a JDocument object so that output can be rendered to the client.
void
doExecute
()
Redefined in descendants as:
Execute the application.
void
execute
()
Redefined in descendants as:
Method to load a PHP configuration class file based on convention and return the instantiated data object. You will extend this method in child classes to provide configuration data from whatever data source is relevant for your specific application.
mixed
fetchConfigurationData
([string $file = ''], [string $class = 'JConfig'])
-
string
$file: The path and filename of the configuration file. If not provided, configuration.php in JPATH_BASE will be used.
-
string
$class: The class name to instantiate.
Redefined in descendants as:
-
InstallationApplicationWeb::fetchConfigurationData()
: Method to load a PHP configuration class file based on convention and return the instantiated data object. You will extend this method in child classes to provide configuration data from whatever data source is relevant for your specific application.
Flush the media version to refresh versionable assets
void
flushAssets
()
Returns a property of the object or the default value if the property is not set.
mixed
get
(string $key, [mixed $default = null])
-
string
$key: The name of the property.
-
mixed
$default: The default value (optional) if none is set.
Return the body content
mixed
getBody
([boolean $asArray = false])
-
boolean
$asArray: True to return the body as an array of strings.
Method to get the application document object.
Method to get the array of response headers to be sent when the response is sent to the client.
array
getHeaders
()
Method to get the application language object.
Method to get the application session object.
Method to send a header to the client. We are wrapping this to isolate the header() function from our code base for testing reasons.
void
header
(string $string, [boolean $replace = true], [integer $code = null])
-
string
$string: The header string.
-
boolean
$replace: The optional replace parameter indicates whether the header should replace a previous similar header, or add a second header of the same type.
-
integer
$code: Forces the HTTP response code to the specified value. Note that this parameter only has an effect if the string is not empty.
Initialise the application.
JApplicationWeb
initialise
([
mixed $session =
null], [
mixed $document =
null], [
mixed $language =
null], [
mixed $dispatcher =
null])
-
mixed
$session: An optional argument to provide dependency injection for the application's session object. If the argument is a JSession object that object will become the application's session object, if it is false then there will be no session object, and if it is null then the default session object will be created based on the application's loadSession() method.
-
mixed
$document: An optional argument to provide dependency injection for the application's document object. If the argument is a JDocument object that object will become the application's document object, if it is false then there will be no document object, and if it is null then the default document object will be created based on the application's loadDocument() method.
-
mixed
$language: An optional argument to provide dependency injection for the application's language object. If the argument is a JLanguage object that object will become the application's language object, if it is false then there will be no language object, and if it is null then the default language object will be created based on the application's loadLanguage() method.
-
mixed
$dispatcher: An optional argument to provide dependency injection for the application's event dispatcher. If the argument is a JEventDispatcher object that object will become the application's event dispatcher, if it is null then the default event dispatcher will be created based on the application's loadDispatcher() method.
Determine if we are using a secure (SSL) connection.
boolean
isSSLConnection
()
Load an object or array into the application configuration object.
-
mixed
$data: Either an array or object to be loaded into the configuration object.
Allows the application to load a custom or default document.
The logic and options for creating this object are adequately generic for default cases but for many applications it will make sense to override this method and create a document, if required, based on more specific needs.
-
JDocument
$document: An optional document object. If omitted, the factory document is created.
Redefined in descendants as:
Allows the application to load a custom or default language.
The logic and options for creating this object are adequately generic for default cases but for many applications it will make sense to override this method and create a language, if required, based on more specific needs.
-
JLanguage
$language: An optional language object. If omitted, the factory language is created.
Allows the application to load a custom or default session.
The logic and options for creating this object are adequately generic for default cases but for many applications it will make sense to override this method and create a session, if required, based on more specific needs.
-
JSession
$session: An optional session object. If omitted, the session is created.
Redefined in descendants as:
Method to load the system URI strings for the application.
void
loadSystemUris
([string $requestUri = null])
-
string
$requestUri: An optional request URI to use instead of detecting one from the server environment variables.
Prepend content to the body content
-
string
$content: The content to prepend to the response body.
Redirect to another URL.
If the headers have not been sent the redirect will be accomplished using a "301 Moved Permanently" or "303 See Other" code in the header pointing to the new location. If the headers have already been sent this will be accomplished using a JavaScript statement.
void
redirect
(string $url, [boolean $moved = false])
-
string
$url: The URL to redirect to. Can only be http/https URL
-
boolean
$moved: True if the page is 301 Permanently Moved, otherwise 303 See Other is assumed.
Rendering is the process of pushing the document buffers into the template placeholders, retrieving data from the document and pushing it into the application response buffer.
void
render
()
Redefined in descendants as:
-
InstallationApplicationWeb::render()
: Rendering is the process of pushing the document buffers into the template placeholders, retrieving data from the document and pushing it into the application response buffer.
-
JApplicationAdministrator::render()
: Rendering is the process of pushing the document buffers into the template placeholders, retrieving data from the document and pushing it into the application response buffer.
-
JApplicationSite::render()
: Rendering is the process of pushing the document buffers into the template placeholders, retrieving data from the document and pushing it into the application response buffer.
Method to send the application response to the client. All headers will be sent prior to the main application output data.
void
respond
()
Send the response headers.
Modifies a property of the object, creating it if it does not already exist.
mixed
set
(string $key, [mixed $value = null])
-
string
$key: The name of the property.
-
mixed
$value: The value of the property to set (optional).
Set body content. If body content already defined, this will replace it.
-
string
$content: The content to set as the response body.
Method to set a response header. If the replace flag is set then all headers with the given name will be replaced by the new one. The headers are stored in an internal array to be sent when the site is sent to the browser.
JApplicationWeb
setHeader
(
string $name,
string $value, [
boolean $replace =
false])
-
string
$name: The name of the header to set.
-
string
$value: The value of the header to set.
-
boolean
$replace: True to replace any headers with the same name.
Inherited Methods
Inherited From JApplicationBase
JApplicationBase::close()
JApplicationBase::getIdentity()
JApplicationBase::loadDispatcher()
JApplicationBase::loadIdentity()
JApplicationBase::registerEvent()
JApplicationBase::triggerEvent()