Craft\NeoService::saveBlock PHP Method

saveBlock() public method

Saves a block to the database.
public saveBlock ( Neo_BlockModel $block, boolean | true $validate = true ) : boolean
$block Neo_BlockModel
$validate boolean | true
return boolean
    public function saveBlock(Neo_BlockModel $block, $validate = true)
    {
        if ($block->modified && (!$validate || $this->validateBlock($block))) {
            $blockRecord = $this->_getBlockRecord($block);
            $isNewBlock = $blockRecord->isNewRecord();
            $blockRecord->fieldId = $block->fieldId;
            $blockRecord->ownerId = $block->ownerId;
            $blockRecord->ownerLocale = $block->ownerLocale;
            $blockRecord->typeId = $block->typeId;
            $blockRecord->collapsed = $block->collapsed;
            $transaction = $this->beginTransaction();
            try {
                if (craft()->elements->saveElement($block, false)) {
                    if ($isNewBlock) {
                        $blockRecord->id = $block->id;
                    }
                    $blockRecord->save(false);
                    $this->commitTransaction($transaction);
                    return true;
                }
            } catch (\Exception $e) {
                $this->rollbackTransaction($transaction);
                throw $e;
            }
        }
        return false;
    }