diff --git a/bin/BrickEdit.js b/bin/BrickEdit.js index 6e616f234ca7e5ebcf0310057d06d9046644bd09..f5eaddf6c54f7658bcdefadeeab9db3df5f3f7b0 100644 --- a/bin/BrickEdit.js +++ b/bin/BrickEdit.js @@ -223,7 +223,7 @@ define('package/quiqqer/bricks/bin/BrickEdit', [ var data = this.getAttribute('data'); data.customfields = this.$customfields; -console.log(data); + QUIAjax.post('package_quiqqer_bricks_ajax_brick_save', function () { if (typeof callback === 'function') { diff --git a/lib/QUI/Bricks/Manager.php b/lib/QUI/Bricks/Manager.php index a0aef568c5e20ad55052f098ab1689ac47c8c64a..a5455fc99d2715e762f82964b3978afaaa7bc3f9 100644 --- a/lib/QUI/Bricks/Manager.php +++ b/lib/QUI/Bricks/Manager.php @@ -59,7 +59,7 @@ static function init() * * @param bool $init */ - public function __construct($init=false) + public function __construct($init = false) { if ($init === false) { QUI\System\Log::addWarning('Please use \QUI\Bricks\Manager::init()'); @@ -450,6 +450,13 @@ public function saveBrick($brickId, array $brickData) return ''; }, $this->getAreasByProject($Project)); + if (isset($brickData['attributes']) + && isset($brickData['attributes']['areas']) + ) { + $brickData['areas'] = $brickData['attributes']['areas']; + } + + if (isset($brickData['areas'])) { $parts = explode(',', $brickData['areas']); @@ -466,17 +473,24 @@ public function saveBrick($brickId, array $brickData) $Brick->setAttributes($brickData); + // fields + if (isset($brickData['attributes'])) { + + foreach ($brickData['attributes'] as $key => $value) { + + if ($key == 'areas') { + continue; + } + + $Brick->setAttribute($key, $value); + } + } // brick settings if (isset($brickData['settings'])) { $Brick->setSettings($brickData['settings']); } - // fields - if (isset($brickData['attributes'])) { - $Brick->setAttributes($brickData['attributes']); - } - // custom fields $customfields = array();