Skip to content

Latest commit

 

History

History
39 lines (30 loc) · 2.01 KB

XoopsObject.md

File metadata and controls

39 lines (30 loc) · 2.01 KB

XoopsObject

Definition

XoopsObject is an Abstract class, a base class for all objects in the Xoops kernel (and beyond)

Usage

XoopsObject should be handled as an abstract class and has the following useful functions:

  • initVar($key,$data_type,$value,$required,$maxlength,$options) : initialize a variable. Use this, when extending XoopsObject instead of declaring variables the normal way. for $data_type, see below. $options is string for select options
  • getVar($key,$format) - retrieves an object variable ($format is 's' for display on page, 'f' for form info, or 'n' for no cleaning.
  • getVars() - retrieves array of key=>value pairs
  • cleanVars() - "cleans" the object variables, which have changed, according to their type set in initVar()
  • clone() - create a clone(copy) of the current object
  • setVar($key,$value,$not_gpc) - assign a value $value to a variable $key; sets object dirty
  • setVars($var_array) - assign values to variables from a key=>value pair array; sets object dirty
  • assignVar($key,$value) - assign a value to a variable
  • assignVars($var_array) - assign values to variables from a key => value pair array

The last two functions are for new(-ly instantiated) objects. For existing objects, which are subsequently modified, you should use setVar() and setVars() - this will set the object status to "dirty" i.e. that it has been modified and variable values not sanitized.

Data Types (for initVar function above):

  • XOBJ_DTYPE_TXTBOX - Text Box
  • XOBJ_DTYPE_TXTAREA - Text Area
  • XOBJ_DTYPE_INT - Integer
  • XOBJ_DTYPE_URL - URLs
  • XOBJ_DTYPE_EMAIL - E-mails
  • XOBJ_DTYPE_ARRAY - Arrays
  • XOBJ_DTYPE_OTHER - Others (won't be cleaned)
  • XOBJ_DTYPE_SOURCE -
  • XOBJ_DTYPE_STIME - Short Time
  • XOBJ_DTYPE_MTIME - Medium Time
  • XOBJ_DTYPE_LTIME - Long Time**

Note Don't give, to a field's name of your table, the table's name or you will have a problem in the XoopsObject class while saving the datas