abstract class AjaxCommandBase in Forena Reports 8
Same name and namespace in other branches
- 7.4 AjaxCommand/AjaxCommandBase.php \Drupal\forena\FrxPlugin\AjaxCommand\AjaxCommandBase
Hierarchy
- class \Drupal\forena\FrxPlugin\AjaxCommand\AjaxCommandBase implements AjaxCommandInterface
Expanded class hierarchy of AjaxCommandBase
File
- src/
FrxPlugin/ AjaxCommand/ AjaxCommandBase.php, line 14
Namespace
Drupal\forena\FrxPlugin\AjaxCommandView source
abstract class AjaxCommandBase implements AjaxCommandInterface {
protected static $replacer;
/**
* @param $settings
* @param $key
* @return array
* The settings in the array
*/
public function getSetting(&$settings, $key) {
$value = NULL;
if (isset($settings[$key])) {
$value = $settings[$key];
unset($settings[$key]);
}
static::replacer()
->replaceNested($value);
return $value;
}
/**
* Get json text.
* @param array $settings
* @param string $default_key
* The key to look for if the text
* @return
*
*/
public function getJSONText(&$settings, $default_key = '') {
$data = [];
if ($default_key && isset($settings[$default_key])) {
$data = $settings[$default_key];
unset($settings[$default_key]);
}
if (!empty($settings['text'])) {
$data = $settings['text'];
unset($settings['text']);
}
if (!is_array($data) || !is_object($data)) {
$data = @json_decode($data);
if (!$data) {
$data = [];
}
}
static::replacer()
->replaceNested($data);
return $data;
}
/**
* Report Replacer.
* @return ReportReplacer
*/
public static function replacer() {
if (static::$replacer === NULL) {
static::$replacer = new ReportReplacer();
}
return static::$replacer;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AjaxCommandBase:: |
protected static | property | ||
AjaxCommandBase:: |
public | function | Get json text. | |
AjaxCommandBase:: |
public | function | ||
AjaxCommandBase:: |
public static | function | Report Replacer. | |
AjaxCommandInterface:: |
public | function | Settings are passed into this factory from either the skin or the report element. If there are complex structures when used in the arguments they will be passed in the 'text' setting. These should be decoded by any plugin intending to use… | 19 |