Controller
class Controller extends BlockController (View source)
Traits
Trait ApplicationAwareTrait A trait used with ApplicationAwareInterface
Properties
protected Application | $app | from ApplicationAwareTrait | |
protected | $helpers | from BlockController | |
protected | $sets | from AbstractController | |
protected | $action | from AbstractController | |
protected | $request | from AbstractController | |
protected | $parameters | from AbstractController | |
$headerItems | from BlockController | ||
$blockViewRenderOverride | from BlockController | ||
protected | $record | from BlockController | |
protected | $block | from BlockController | |
protected | $bID | from BlockController | |
protected | $btDescription | from BlockController | |
protected | $btName | from BlockController | |
protected | $btHandle | from BlockController | |
protected | $btIsInternal | from BlockController | |
protected | $btSupportsInlineAdd | from BlockController | |
protected | $btIgnorePageThemeGridFrameworkContainer | from BlockController | |
protected | $btSupportsInlineEdit | from BlockController | |
protected | $btCopyWhenPropagate | ||
protected | $btIncludeAll | from BlockController | |
$btInterfaceWidth | |||
$btInterfaceHeight | |||
protected | $btHasRendered | from BlockController | |
protected | $btCacheBlockRecord | ||
protected | $btCacheBlockOutput | from BlockController | |
protected | $btCacheBlockOutputLifetime | from BlockController | |
protected | $btCacheBlockOutputOnPost | from BlockController | |
protected | $btCacheBlockOutputForRegisteredUsers | from BlockController | |
protected | $bActionCID | from BlockController | |
protected | $btExportPageColumns | ||
protected | $btExportFileColumns | from BlockController | |
protected | $btExportPageTypeColumns | from BlockController | |
protected | $btExportPageFeedColumns | from BlockController | |
protected | $btWrapperClass | from BlockController | |
protected | $btDefaultSet | from BlockController | |
protected | $btFeatures | from BlockController | |
protected | $btFeatureObjects | from BlockController | |
protected | $identifier | from BlockController | |
$btTable | |||
protected bool | $supportSavingNullValues | Set this to true if the data sent to the save/performSave methods can contain NULL values that should be persisted. |
from BlockController |
$btQuestionsTablename | |||
$btAnswerSetTablename | |||
$btAnswersTablename | |||
$thankyouMsg | |||
$submitText | |||
$noSubmitFormRedirect | |||
protected | $btExportTables | ||
protected | $lastAnswerSetId |
Methods
No description
Adds an item to the view's header. This item will then be automatically printed out before the
section of the page.Adds an item to the view's footer. This item will then be automatically printed out before the section of the page.
Installs the current block's DB xml file. If a block needs to do more than this, this should be overridden.
Persist the block options.
Form add or edit submit (run after the duplicate method on first block edit of new page version).
Duplicate will run when copying a page with a block, or editing a block for the first time within a page version (before the save).
No description
Gets the generic Block object attached to this controller's instance.
Automatically run when a block is deleted. This removes the special data from the block's specific database table. If a block needs to do more than this this method should be overridden.
Gets the Area object attached to this controller's instance.
Returns the name of the block type.
Returns the width of the block type's interface when presented in page.
Returns the height of the block type's interface when presented in page.
Used for localization. If we want to localize the name/description we have to include this.
Returns HTML that will be shown when a user wants help for a given block type.
Returns whether this block type is included in all versions. Default is false - block types are typically versioned but sometimes it makes sense not to do so.
Returns whether this block type is internal to Concrete. If it's internal it's not displayed in the front end interface. Examples include the LibraryFile block.
if a the current BlockType supports inline edit or not.
if a the current BlockType supports inline add or not.
If true, container classes will not be wrapped around this block type in edit mode (if the theme in question supports a grid framework.
Returns a key/value array of strings that is used to translate items when used in javascript.
Internal helper function.
No description
No description
No description
Ties the new or edited questions to the new block number.
Users submits the completed survey.
Details
setApplication(Application $app)
Setter method for the application
__construct($b = null)
No description
mixed
getRequest()
No description
setRequest(mixed $request)
No description
requireAsset()
No description
addHeaderItem(string $item)
Adds an item to the view's header. This item will then be automatically printed out before the
section of the page.
addFooterItem(string $item)
Adds an item to the view's footer. This item will then be automatically printed out before the section of the page.
set($key, $val)
No description
getSets()
No description
shouldRunControllerTask()
No description
getHelperObjects()
No description
get($key = null, $defaultValue = null)
No description
getTask()
No description
getAction()
No description
getParameters()
No description
on_start()
No description
on_before_render()
No description
isPost()
deprecated
deprecated
No description
post($field = false, $defaultValue = null)
No description
redirect()
No description
runTask($action, $parameters)
No description
runAction($action, $parameters = array())
No description
request($key = null)
No description
getBlockTypeInSetName()
No description
getBlockTypeExportPageColumns()
No description
getIdentifier()
No description
getBlockTypeWrapperClass()
No description
mixed
install(string $path)
Installs the current block's DB xml file. If a block needs to do more than this, this should be overridden.
public function install($path) {
$this->doMySpecialInstallMethod();
$this->doSecondSpecialInstallMethod();
parent::install($path);
}
```.
There are several different possible return values:
Returns FALSE if $btTable is set but no db.xml file exists.
Otherwise returns object with two properties: ->result (a boolean), and ->message (a string).
If ->result is true, the installation was successful
(although the db.xml file might only have one field declared which will cause C5 to have problems later on, so you you will want to check for that separately).
If ->result is false, the installation failed and you can check ->message for the explanation
(usually -- sometimes ->message will be blank, in which case there's either a malformed db.xml file or an "unknown database error").
See concrete/models/block_types.php::doInstallBlockType() for usage example.
render(string $view)
Renders a view in the block's folder.
public function view() { // The view() method is automatically run when a block is viewed
$this->render("other_special_view"); // don't use .php
}
```.
validate($args)
No description
getBlockControllerData()
No description
protected
performSave(array $args, bool $loadExisting = false)
Persist the block options.
save($data = [])
Form add or edit submit (run after the duplicate method on first block edit of new page version).
cacheBlockRecord()
No description
getPermissionsObject()
deprecated
deprecated
No description
getBlockTypeDefaultSet()
No description
getPermissionObject()
Gets the permissions object for this controller's block.
BlockRecord
duplicate($newBID)
Duplicate will run when copying a page with a block, or editing a block for the first time within a page version (before the save).
__wakeup()
No description
setBlockObject($b)
Sets the block object for this controller.
protected
load()
Loads the BlockRecord class based on its attribute names.
getBlockTypeFeatureObjects()
No description
export(SimpleXMLElement $blockNode)
No description
getBlockTypeDatabaseTable()
No description
import($page, $arHandle, SimpleXMLElement $blockNode)
No description
protected
getImportData($blockNode, $page)
No description
protected
importAdditionalData($b, $blockNode)
No description
setPassThruBlockController(PageController $controller)
No description
validateEditBlockPassThruAction(Block $b)
No description
validateComposerAddBlockPassThruAction(Type $type)
No description
validateComposerEditBlockPassThruAction(Block $b)
No description
getPassThruActionAndParameters($parameters)
No description
isValidControllerTask($method, $parameters = [])
No description
cacheBlockOutput()
No description
cacheBlockOutputForRegisteredUsers()
No description
cacheBlockOutputOnPost()
No description
getBlockTypeCacheOutputLifetime()
No description
getCollectionObject()
No description
field($fieldName)
No description
Block
getBlockObject()
Gets the generic Block object attached to this controller's instance.
delete()
Automatically run when a block is deleted. This removes the special data from the block's specific database table. If a block needs to do more than this this method should be overridden.
outputAutoHeaderItems()
No description
registerViewAssets($outputContent = '')
No description
setupAndRun($method)
No description
Area
getAreaObject()
Gets the Area object attached to this controller's instance.
setAreaObject($a)
No description
uninstall()
No description
string
getBlockTypeName()
Returns the name of the block type.
int
getInterfaceWidth()
Returns the width of the block type's interface when presented in page.
int
getInterfaceHeight()
Returns the height of the block type's interface when presented in page.
string
getBlockTypeDescription()
Used for localization. If we want to localize the name/description we have to include this.
getBlockTypeHelp()
Returns HTML that will be shown when a user wants help for a given block type.
isCopiedWhenPropagated()
No description
bool
includeAll()
Returns whether this block type is included in all versions. Default is false - block types are typically versioned but sometimes it makes sense not to do so.
bool
isBlockTypeInternal()
Returns whether this block type is internal to Concrete. If it's internal it's not displayed in the front end interface. Examples include the LibraryFile block.
bool
supportsInlineEdit()
if a the current BlockType supports inline edit or not.
bool
supportsInlineAdd()
if a the current BlockType supports inline add or not.
bool
ignorePageThemeGridFrameworkContainer()
If true, container classes will not be wrapped around this block type in edit mode (if the theme in question supports a grid framework.
getJavaScriptStrings()
Returns a key/value array of strings that is used to translate items when used in javascript.
private
viewRequiresJqueryUI()
Internal helper function.
view()
No description
getDefaultThankYouMsg()
No description
getDefaultSubmitText()
No description
protected
questionVersioning(array $data = [])
Ties the new or edited questions to the new block number.
New and edited questions are temporarily given bID=0, until the block is saved... painfully complicated.
action_submit_form(int $bID = false)
Users submits the completed survey.