\CustomFields
Custom profile fields implementation
Synopsis
class CustomFields
{
- // constants
- const TABLE_TYPES = 'cftypes';
- const TABLE_ITEMS = 'cfitems';
- const PROUTE_NEWTYPE = 'newtype';
- const PROUTE_NEWNAME = 'newname';
- const PROUTE_EDID = 'editid';
- const PROUTE_EDTYPE = 'edittype';
- const PROUTE_EDNAME = 'editname';
- const ROUTE_DELETE = 'deletetypeid';
- const ROUTE_EDIT = 'edittypeid';
- const PROUTE_MODTYPE = 'modcftypeid';
- const PROUTE_MODLOGIN = 'modcflogin';
- const PROUTE_MODCONTENT = 'modcfcontent';
- const PROUTE_SEARCHTYPEID = 'cftypeid';
- const PROUTE_SEARCHQUERY = 'cfquery';
- const PHOTOSTORAGE_SCOPE = 'CFITEMS';
- const PHOTOSTORAGE_ITEMID_DELIMITER = '|';
- const FILESTORAGE_SCOPE = 'CFITEMS';
- const FILESTORAGE_ITEMID_DELIMITER = '|';
- const URL_ME = '?module=cftypes';
- const URL_EDIT_BACK = '?module=useredit&username=';
- const URL_PHOTOUPL = '?module=photostorage&scope=CFITEMS&mode=list&itemid=';
- const URL_FILEUPL = '?module=filestorage&scope=CFITEMS&mode=list&itemid=';
- // members
- protected array $altCfg = ;
- protected array $typesAvailable = ;
- protected string $login = '';
- protected $typesDb = '';
- protected $itemsDb = '';
- protected $messages = '';
- protected array $allTypes = ;
- protected array $userFieldsData = ;
- // methods
- public void __construct()
- protected void initDb()
- protected void loadAltCfg()
- protected void initMessages()
- protected void loadTypes()
- protected void setAvailableTypes()
- protected void setLogin()
- public array getTypesAll()
- public array getAllFieldsData()
- protected array getTypeData()
- protected void loadUserItems()
- protected void flushType()
- public void deleteType()
- public void flushAllUserFieldsData()
- public void createType()
- public string renderTypeCreationForm()
- public string renderTypeEditForm()
- public void saveType()
- protected string getTypeNameDesc()
- public string renderTypesList()
- protected string renderField()
- public string|void getUserFieldContent()
- public void renderUserFields()
- protected void setFieldContent()
- public string renderTypeName()
- public void renderUserFieldEditor()
- protected string renderTypeController()
- public string getTypeSearchControl()
Constants
Name | Value |
---|---|
TABLE_TYPES | 'cftypes' |
TABLE_ITEMS | 'cfitems' |
PROUTE_NEWTYPE | 'newtype' |
PROUTE_NEWNAME | 'newname' |
PROUTE_EDID | 'editid' |
PROUTE_EDTYPE | 'edittype' |
PROUTE_EDNAME | 'editname' |
ROUTE_DELETE | 'deletetypeid' |
ROUTE_EDIT | 'edittypeid' |
PROUTE_MODTYPE | 'modcftypeid' |
PROUTE_MODLOGIN | 'modcflogin' |
PROUTE_MODCONTENT | 'modcfcontent' |
PROUTE_SEARCHTYPEID | 'cftypeid' |
PROUTE_SEARCHQUERY | 'cfquery' |
PHOTOSTORAGE_SCOPE | 'CFITEMS' |
PHOTOSTORAGE_ITEMID_DELIMITER | '|' |
FILESTORAGE_SCOPE | 'CFITEMS' |
FILESTORAGE_ITEMID_DELIMITER | '|' |
URL_ME | '?module=cftypes' |
URL_EDIT_BACK | '?module=useredit&username=' |
URL_PHOTOUPL | '?module=photostorage&scope=CFITEMS&mode=list&itemid=' |
URL_FILEUPL | '?module=filestorage&scope=CFITEMS&mode=list&itemid=' |
Members
protected
- $allTypes
—
array
Contains all available custom profile fileds types as id=>typeData - $altCfg
—
array
Contains system alter config as key=>value - $itemsDb
—
Custom Fileds item records database abstraction layer - $login
—
string
Current instance user login - $messages
—
System message helper instance placeholder - $typesAvailable
—
array
Contains available custom fileds types as TYPE=>description - $typesDb
—
Custom Fileds types database abstraction layer - $userFieldsData
—
array
Contains all current instance user custom fields data as typeId=>cfData
Methods
protected
- flushType() — Flushes all of assigned to users CFs data from database
- getTypeData() — Returns existing CF type data by its typeId
- getTypeNameDesc() — Returns human-readable type description
- initDb() — Inits database absctraction layer for further usage
- initMessages() — Inits system messages helper protected instance
- loadAltCfg() — Loads system alter config to protected property
- loadTypes() — Loads existing CF types from database
- loadUserItems() — Loads current instance users items data into protected property
- renderField() — Returns preformatted view of CF content preprocessed depends by its type
- renderTypeController() — Returns editing controller for CF assigned to user
- setAvailableTypes() — Sets available custom fields types
- setFieldContent() — Sets content of custom field for current instance user
- setLogin() — Sets current instance user login
public
- __construct() — Creates new CF instance
- createType() — Creates new CF type in database
- deleteType() — Deletes CF type from database by its ID and flushes assigned
- flushAllUserFieldsData() — Deletes all of CF items from database associated with some user
- getAllFieldsData() — Returns all available fields data for all users
- getTypeSearchControl() — Returns search controller for CFs assigned to user
- getTypesAll() — Returns all available CF types as id=>typeData
- getUserFieldContent() — Returns user custom field content depends on its type
- renderTypeCreationForm() — Returns Custom Field Type creation form
- renderTypeEditForm() — Returns CF type editing form
- renderTypeName() — Returns existing type name, may be cleaned from technical data
- renderTypesList() — Renders list of available CF types
- renderUserFieldEditor() — Renders CF editor controller
- renderUserFields() — Returns available user custom fields for user profile
- saveType() — Saves CF type editing form into database