Class: I2CE Page: Difference between revisions

From IHRIS Wiki
No edit summary
No edit summary
Line 83: Line 83:
==Methods==
==Methods==
===__construct()===
===__construct()===
Create a new instance of a page. The default constructor should be called by any pages extending this object.  It creates the [[Class: I2CE_Template | I2CE_Template]] and [[Class: I2CE_User | I2CE_User]] objects and sets up the basic member variables.
Create a new instance of a page. The default constructor should be called by any pages extending this object.  It creates the [[Class: I2CE_Template | ]] and [[Class: I2CE_User | ]] objects and sets up the basic member variables.
*Signature: public function __construct($args,$request_remainder,$get,$post)
*Signature: public function __construct($args,$request_remainder,$get,$post)
*Parameters:
*Parameters:
Line 114: Line 114:
** [http://www.php.net/manual/en/language.types.array.php array ] $request_remainder <br/>the remainder of the request after the page specfication.
** [http://www.php.net/manual/en/language.types.array.php array ] $request_remainder <br/>the remainder of the request after the page specfication.
===display()===
===display()===
Calls the appropriate action for the page.  Then it Displays or redirects the page as appropriate. This will check to make sure the page can be seen by this user and if not redirect them to an error page.  If the redirect variable has been set then the page will be redirected to the new page.  Otherwise the {@link I2CE_Template::display() template display} method will be called to output the combined template files to the browser.
Calls the appropriate action for the page.  Then it Displays or redirects the page as appropriate. This will check to make sure the page can be seen by this user and if not redirect them to an error page.  If the redirect variable has been set then the page will be redirected to the new page.  Otherwise the [[Class: I2CE_Template | ::display() template display]] method will be called to output the combined template files to the browser.
*Signature: public function display($supress_output)
*Signature: public function display($supress_output)
*Parameters:
*Parameters:
Line 130: Line 130:
*$vars  
*$vars  
===get()===
===get()===
Gets/sets the {@link $get} value for the given key.
Gets/sets the [[#$get | $get]] value for the given key.
*Signature: public function get($key,$val)
*Signature: public function get($key,$val)
*Parameters:
*Parameters:
Line 139: Line 139:
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
===getAccess()===
===getAccess()===
Get the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the {@link $access} variable.
Get the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the [[#$access | $access]] variable.
*Signature: protected function getAccess()
*Signature: protected function getAccess()
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>of string
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>of string
Line 158: Line 158:
*Returns: [[Class: I2CE_User | I2CE_User]]
*Returns: [[Class: I2CE_User | I2CE_User]]
===get_exists()===
===get_exists()===
Check to see if a key exists in the {@link $get} array.
Check to see if a key exists in the [[#$get | $get]] array.
*Signature: public function get_exists($key)
*Signature: public function get_exists($key)
*Parameters:
*Parameters:
Line 215: Line 215:
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]<br/>if $page_root was null(default)
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]<br/>if $page_root was null(default)
===post()===
===post()===
Get/set  the {@link $post} value for the given key.
Get/set  the [[#$post | $post]] value for the given key.
*Signature: public function post($key,$val)
*Signature: public function post($key,$val)
*Parameters:
*Parameters:
Line 224: Line 224:
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
===post_exists()===
===post_exists()===
Check to see if a key exists in the {@link $post} array.
Check to see if a key exists in the [[#$post | $post]] array.
*Signature: public function post_exists($key)
*Signature: public function post_exists($key)
*Parameters:
*Parameters:
Line 251: Line 251:
*Signature: static public function rewrittenURLs()
*Signature: static public function rewrittenURLs()
===session_req()===
===session_req()===
Gets/sets the {@link $session_req} value for the given key.
Gets/sets the [[#$session_req | $session_req]] value for the given key.
*Signature: public function session_req($key,$val)
*Signature: public function session_req($key,$val)
*Parameters:
*Parameters:
Line 260: Line 260:
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>if no val is set: string if a key is given and found. null if key is given nut not found.  array otherwise
===session_req_exists()===
===session_req_exists()===
Check to see if a key exists in the {@link $session_req} array.
Check to see if a key exists in the [[#$session_req | $session_req]] array.
*Signature: public function session_req_exists($key)
*Signature: public function session_req_exists($key)
*Parameters:
*Parameters:
Line 266: Line 266:
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
===setAccess()===
===setAccess()===
Change the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the {@link $access} variable. @param array of string
Change the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the [[#$access | $access]] variable. @param array of string
*Signature: public function setAccess($access)
*Signature: public function setAccess($access)
*Parameters:
*Parameters:

Revision as of 23:11, 16 October 2009

This article desrcibes the class I2CE_Page.

Variables

$template

The template object for handling the HTML templates and data to be displayed.

$defaultHTMLFile

The default HTML/XML files to be displayed by the template. of string

  • Type: protected y $defaultHTMLFile

$role

The role that can view this page.

$user

The user viewing this page.

$access

The access level required for this page.

  • Type: private nteger $access

$redirect

A url to redirect to instead of displaying the page.

  • Type: private ng $redirect

$post

Holds a reference to the $_POST array which is a list of all data sent from a form.

  • Type: protected y $post

$get

Holds a reference to the $_GET array which is a list of all variables sent in the URL or from a form with an action of "GET."

  • Type: protected y $get

$page_root

the page root -- this is the URL relative to the site base that is used to get to this page.

  • Type: protected ng $page_root

$page_remainder

the page remainder -- this is the remainder of the URL relative to the site base that is used to get to this page.

  • Type: protected ng $page_remainder

$args

The arguments passed in the constructor. @param protected array $args

  • Type: protected $args

$request_remainder

The remainder of the page request -- everything after (option_module_name/)page_name(/reminder/of/the/request) @param protected array $request_remainder

  • Type: protected $request_remainder

$permissionParser

The permission parser for the user of this page. @param I2CE_PermissionParser $permissionParser

  • Type: protected $permissionParser

$page

. The requested page

  • Type: protected ng $page

$module

. The module that contains this page.

  • Type: protected ng $module

$is_post

-- true if this page is a post.

  • Type: protected n $is_post

$session_req

Holds a reference to a session request array if one has been requested and exists in the session.

  • Type: protected y $session_req

$request_vars

  • Type: private $request_vars

Methods

__construct()

Create a new instance of a page. The default constructor should be called by any pages extending this object. It creates the and objects and sets up the basic member variables.

  • Signature: public function __construct($args,$request_remainder,$get,$post)
  • Parameters:
    • array $args
    • array $request_remainder
      The remainder of the request path
  • $get
      • Default Value: null
  • $post
      • Default Value: null

_display()

Display the template as HTML/XML. Sets the header and displays any buffered warnings/echoed text.

  • Signature: protected function _display($supress_output)
  • Parameters:
  • $supress_output

_flattenRequestVars()

  • Signature: static public function _flattenRequestVars($vars,$req,$prefix)
  • Parameters:
  • $vars
    • &$req
  • $prefix

action()

Perform any actions to load the HTML templates. The default action simply loads all the HTML template files.

  • Signature: protected function action()
  • Returns: boolean.
    true on sucess

actionCommandLine()

The business method if this page is called from the commmand line

  • Signature: protected function actionCommandLine($args,$request_remainder)
  • Parameters:
    • array $args
      the array of unix style command line arguments Arguements are link that in: http://us3.php.net/manual/en/features.commandline.php#78651 If we were called as: index.php --page=/module/page/some/thing/else --long -AB 2 -C -D 'ostrich' --eggs==good Then $request_remainder = array('some','thing','else') and $args = array('long'=>true, 'A'=>true, 'B'=>2, 'C'=>true, 'D'=>'ostrich', 'eggs'=>'good')
    • array $request_remainder
      the remainder of the request after the page specfication.

display()

Calls the appropriate action for the page. Then it Displays or redirects the page as appropriate. This will check to make sure the page can be seen by this user and if not redirect them to an error page. If the redirect variable has been set then the page will be redirected to the new page. Otherwise the  ::display() template display method will be called to output the combined template files to the browser.

  • Signature: public function display($supress_output)
  • Parameters:
    • boolean $supress_output
      defaults to false. set to true to supress the output of a webpage
      • Default Value: false

fixupRequestVariables()

Applies any transformations (make sure magic quotes is off, nesting, and json decoding) to an array variables @param boolean $transform. Defaults to true

  • Signature: static public function fixupRequestVariables($vars)
  • Parameters:
  • Returns: $vars;

flattenRequestVars()

  • Signature: static public function flattenRequestVars($vars)
  • Parameters:
  • $vars

get()

Gets/sets the $get value for the given key.

  • Signature: public function get($key,$val)
  • Parameters:
    • string $key
      Defaults to null meaning we return all of the post variables (it is not slash escaped).
      • Default Value: null
    • mixed $val
      Defaults to null. If non-null we set the post value for $key to $val
      • Default Value: null
  • Returns: mixed
    if no val is set: string if a key is given and found. null if key is given nut not found. array otherwise

getAccess()

Get the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the $access variable.

  • Signature: protected function getAccess()
  • Returns: array
    of string

getAccessedBaseURL()

Returns the base url from which the site was accessed. If no .htaccess is used, ths will include the index.php. If rewrites are used (via .htacces) this will no include the index.php. Point is... this is the base url from which the site was accessed, no questions asked. This of course assumes that you are now accessing the site via the command line

  • Signature: static public function getAccessedBaseURL()
  • Returns: string

getTemplate()

Get the template associated to this page

  • Signature: public function getTemplate()

getTitle()

Return the title for this page.

  • Signature: protected function getTitle()
  • Returns: string

getUser()

Get the user of this page

  • Signature: public function getUser()
  • Returns: I2CE_User

get_exists()

Check to see if a key exists in the $get array.

  • Signature: public function get_exists($key)
  • Parameters:
  • $key
  • Returns: boolean

hasPermission()

Parse a permission string to see if we have permission.

  • Signature: public function hasPermission($permission,$node)
  • Parameters:
    • string $permission
    • DOMNode $node
      Defaults to null. If set, it is the node in the page's template that we get the data for.
      • Default Value: null
  • Returns: boolean.
    Null on failure.

initializeTemplate()

Handles creating hte I2CE_TemplateMeister templates and loading any default templates

  • Signature: protected function initializeTemplate()
  • Returns: boolean
    true on success

isGet()

Check to see if the current page is a GET request or not

  • Signature: public function isGet()
  • Returns: boolean

isPost()

Check to see if the current page is a POST form submission or not.

  • Signature: public function isPost()
  • Returns: boolean

loadHTMLTemplates()

Load the template (HTML or XML) files to the template object.

  • Signature: protected function loadHTMLTemplates()

module()

Sets/Gets the module.

  • Signature: public function module($module)
  • Parameters:
    • string $module
      If non-null sets the module's name to $module.
      • Default Value: null
  • Returns: string
    if $module was non-null

page()

Sets/Gets the page.

  • Signature: public function page($page)
  • Parameters:
    • string $page
      If non-null sets the page's name to $page.
      • Default Value: null
  • Returns: string
    if $page was non-null

pageRemainder()

Get/set the page remainder -- this is the remainder of the URL relative to the site base that is used to get to this page. @param $page_remainder Defaults to null. If non-null we set the page remainder. If null we get the page remainder.

  • Signature: public function pageRemainder($page_remainder)
  • Parameters:
  • $page_remainder
      • Default Value: null
  • Returns: string
    if $page_remainder was null(default)

pageRoot()

Get/set the page root -- this is the URL relative to the site base that is used to get to this page. @param $page_root Defaults to null. If non-null we set the page root. If null we get the page root.

  • Signature: public function pageRoot($page_root)
  • Parameters:
  • $page_root
      • Default Value: null
  • Returns: string
    if $page_root was null(default)

post()

Get/set the $post value for the given key.

  • Signature: public function post($key,$val)
  • Parameters:
    • string $key
      Defaults to null meaning we return all of the post variables (it is not slash escaped).
      • Default Value: null
    • mixed $val
      Defaults to null. If non-null we set the post value for $key to $val
      • Default Value: null
  • Returns: mixed
    if no val is set: string if a key is given and found. null if key is given nut not found. array otherwise

post_exists()

Check to see if a key exists in the $post array.

  • Signature: public function post_exists($key)
  • Parameters:
  • $key
  • Returns: boolean

redirect()

Send the redirect header with the given URL.

  • Signature: public function redirect($url)
  • Parameters:

request()

Return the given value for the key in one of the request arrays.

  • Signature: public function request($key)
  • Parameters:
    • mixed $key
      • Default Value: null
  • Returns: mixed

request_exists()

Checks all the request arrays for the given key and returns true if it exists.

  • Signature: public function request_exists($key)
  • Parameters:
  • Returns: boolean

rewrittenURLs()

returns true if the url's have been written. false if not

  • Signature: static public function rewrittenURLs()

session_req()

Gets/sets the $session_req value for the given key.

  • Signature: public function session_req($key,$val)
  • Parameters:
    • string $key
      Defaults to null meaning we return all of the post variables (it is not slash escaped).
      • Default Value: null
    • mixed $val
      Defaults to null. If non-null we set the post value for $key to $val
      • Default Value: null
  • Returns: mixed
    if no val is set: string if a key is given and found. null if key is given nut not found. array otherwise

session_req_exists()

Check to see if a key exists in the $session_req array.

  • Signature: public function session_req_exists($key)
  • Parameters:
  • $key
  • Returns: boolean

setAccess()

Change the access level required to view this page. If the access level requirements change after the page object has been instantiated this method is used to set a new access level for the $access variable. @param array of string

  • Signature: public function setAccess($access)
  • Parameters:
  • $access

setIsPost()

Sets if this pages is a post or not

  • Signature: public function setIsPost($post)
  • Parameters:
  • $post

setRedirect()

Set the URL to be redirected to instead of displaying this page.

  • Signature: public function setRedirect($url)
  • Parameters:

setupGetPost()

setup of the get and post variables. @param array $psot. If null (default) it will be $_POST if it is a HTTP array request. otherwise it is the empty array

  • Signature: protected function setupGetPost($get,$post,$strip)
  • Parameters:
    • array $get
      If null (default) it will be $_GET if it is a HTTP request. otherwise it is the empty array
      • Default Value: null
  • $post
      • Default Value: null
    • boolean $strip
      Defauls to true. If true it will try to strip off magic quotes if they exist for a HTTP request.
      • Default Value: true

Inherited Fuzzy Methods

userMessage()

This method is inherited from I2CE_Fuzzy->userMessage()

Fuzzy Methods

launchBackgroundProcess()

This method is implemented by I2CE_BackgroundProcess->launchBackgroundProcess()

launchBackgroundPHPScript()

This method is implemented by I2CE_BackgroundProcess->launchBackgroundPHPScript()

launchBackgroundPage()

This method is implemented by I2CE_BackgroundProcess->launchBackgroundPage()

addColorPickerTriple()

This method is implemented by I2CE_Module_ColorPicker->addColorPickerTriple()

selectOptionsImmediate()

This method is implemented by I2CE_DisplayData->selectOptionsImmediate()

setDisplayData()

This method is implemented by I2CE_DisplayData->setDisplayData()

setDisplayDataImmediate()

This method is implemented by I2CE_DisplayData->setDisplayDataImmediate()

addFormWorm()

This method is implemented by I2CE_Module_FormWorm->addFormWorm()

getClassValue()

This method is implemented by I2CE_MootoolsCore->getClassValue()

loadClassValues()

This method is implemented by I2CE_MootoolsCore->loadClassValues()

setClassValue()

This method is implemented by I2CE_MootoolsCore->setClassValue()

setClassValues()

This method is implemented by I2CE_MootoolsCore->setClassValues()

addOption()

This method is implemented by I2CE_Template_Options->addOption()

addOptions()

This method is implemented by I2CE_Template_Options->addOptions()

addAutoCompleteInputTreeById()

This method is implemented by I2CE_Module_TreeSelect->addAutoCompleteInputTreeById()

addAutoCompleteInputTree()

This method is implemented by I2CE_Module_TreeSelect->addAutoCompleteInputTree()

setForm()

This method is implemented by I2CE_Module_Forms->setForm()

getField()

This method is implemented by I2CE_Module_Forms->getField()

setReview()

This method is implemented by I2CE_Module_Forms->setReview()

isReview()

This method is implemented by I2CE_Module_Forms->isReview()

setShowForm()

This method is implemented by I2CE_Module_Forms->setShowForm()

showForm()

This method is implemented by I2CE_Module_Forms->showForm()

makeJumper()

This method is implemented by I2CE_Module_Jumper->makeJumper()

menuSelect()

This method is implemented by I2CE_Module_MenuSelect->menuSelect()

addUpdateSelect()

This method is implemented by I2CE_Module_MenuSelect->addUpdateSelect()

addAjaxUpdate()

This method is implemented by I2CE_Stub->addAjaxUpdate()

addAjaxToggle()

This method is implemented by I2CE_Stub->addAjaxToggle()

addAjaxRequestFunction()

This method is implemented by I2CE_Stub->addAjaxRequestFunction()

addAjaxCompleteFunction()

This method is implemented by I2CE_Stub->addAjaxCompleteFunction()

addAjaxToggleOnFunction()

This method is implemented by I2CE_Stub->addAjaxToggleOnFunction()

addAjaxToggleOffFunction()

This method is implemented by I2CE_Stub->addAjaxToggleOffFunction()

hasAjax()

This method is implemented by I2CE_Stub->hasAjaxFuzzy()

setDataTypePriority()

This method is implemented by I2CE_Module_TemplateData->setDataTypePriority()

setData()

This method is implemented by I2CE_Module_TemplateData->setData()

getData()

This method is implemented by I2CE_Module_TemplateData->getData()

getDefaultData()

This method is implemented by I2CE_Module_TemplateData->getDefaultData()

removeData()

This method is implemented by I2CE_Module_TemplateData->removeData()

getDataNames()

This method is implemented by I2CE_Module_TemplateData->getDataNames()

ensureNode()

This method is implemented by I2CE_Module_TemplateData->ensureNode()