/** * Creating a space override. * * type: POST * values: { * vsite: 2, * object_id: os_pages-page-581, * boxes: [ * boxes-1419335380: [ * module: "boxes", * delta: "1419335380", * region: "sidebar_second", * weight: 2, * status: 0 * ] * ] * } */ public function createSpace() { // Check group access. $this->checkGroupAccess(); // Validate the object from the request. $this->validate(); if (!isset($this->object->blocks['os_pages-main_content'])) { // When creating the layout override we need the page content. $this->object->blocks['os_pages-main_content'] = array('module' => "os_pages", 'delta' => "main_content", 'region' => "content_top"); } // Set up the blocks layout. ctools_include('layout', 'os'); os_layout_set($this->object->object_id, $this->object->blocks, $this->space); return $this->object->blocks; }
/** * Delete a specific box. * * type: DELETE * values: { * vsite: 2, * delta: 1419335380, * context: blogs_blogs * } */ public function deleteSpace() { // Check group access. $this->checkGroupAccess(); ctools_include('layout', 'os'); $delta = $this->object->delta; $blocks = os_layout_get($this->object->context, FALSE, FALSE, $this->space); $this->space->controllers->boxes->del($delta); unset($blocks['boxes-' . $delta]); os_layout_set($this->object->context, $blocks, $this->space); }