} if ($mode == 'import_layout') { $data = fn_filter_uploaded_data('filename'); if (!empty($data[0]['path'])) { $result = Exim::instance()->importFromFile($data[0]['path'], $_REQUEST); if ($result) { fn_set_notification('N', __('notice'), __('text_exim_data_imported_clear')); } } } if ($mode == 'update_status') { $type = empty($_REQUEST['type']) ? 'block' : $_REQUEST['type']; if ($type == 'block') { Block::instance()->updateStatus($_REQUEST); } elseif ($type == 'grid') { Grid::update($_REQUEST); } elseif ($type == 'container') { Container::update($_REQUEST); } fn_set_notification('N', __('notice'), __('text_changes_saved')); exit; } if ($mode == 'delete_location' && !empty($_REQUEST['location_id'])) { Location::instance()->remove($_REQUEST['location_id']); } if ($mode == 'delete_layout') { Layout::instance()->delete($_REQUEST['layout_id']); } if ($mode == 'set_default_layout') { if (!empty($_REQUEST['layout_id'])) { Layout::instance()->setDefault($_REQUEST['layout_id']);
private function _parseGridStructure(&$xml_node, $container_id, $parent_id = 0) { foreach ($xml_node->grid as $grid) { if (!empty($grid)) { $grid_attrs = $this->_getNodeAttrs($grid); $grid_attrs['container_id'] = $container_id; $grid_attrs['parent_id'] = $parent_id; $grid_id = Grid::update($grid_attrs); if (isset($grid->grid)) { $this->_parseGridStructure($grid, $container_id, $grid_id); } if (!empty($grid->blocks)) { $this->_parseBlockStructure($grid_id, $grid->blocks); } } } }