<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20210218155927 extends AbstractMigration
{
public function getDescription() : string
{
return '';
}
public function up(Schema $schema) : void
{
$this->addSql("SET @privatearea_contenttype = (SELECT id FROM `std_content_types` WHERE `machine_name` = 'private_area');");
$this->addSql("SET @default_webrole = (SELECT id FROM `std_web_roles` WHERE `is_default` = 1 LIMIT 1);");
$this->addSql("SET @id_home_page = (SELECT id FROM `std_pages` WHERE `content_type` = @privatearea_contenttype AND `name`='Área reservada');");
$this->addSql("SET @id_home_page_relation = (SELECT id FROM `std_pages_pages` WHERE `page_id` = @id_home_page);");
// Create page "Personal data"
$this->addSql("INSERT INTO `std_pages` (`template_id`, `created_by`, `updated_by`, `content_type`, `is_active`, `created_date`, `updated_date`, `order_value`, `publish_date`, `expire_date`, `name`)
VALUES (NULL, 1, 1, @privatearea_contenttype, 1, NOW(), NOW(), NULL, NOW(), NULL, 'Dados acesso');");
$this->addSql("SET @childpage = (SELECT id FROM `std_pages` WHERE `content_type` = @privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("INSERT INTO `std_pages_content` (`page_id`, `language_code`, `created_by`, `updated_by`, `is_active`, `created_date`, `updated_date`, `title`, `url`, `canonical_url`, `meta_title`, `meta_keywords`, `meta_description`, `og_title`, `og_image`, `og_description`, `og_url`, `scripts_head`, `scripts_body`, `scripts_footer`, `content`)
VALUES (@childpage, 'pt', 1, 1, 1, NOW(), NOW(), 'Dados acesso', 'dados-acesso', '/pt/area-reservada/dados-acesso', '', '', '', '', '', '', '', '', '', '', '{\"fields\": {\"1\": {\"skin\": \"\", \"block\": \"web_users_password\", \"isMaster\": 0, \"settings\": {\"expire_date\": \"\", \"publish_date\": \"\"}, \"blockname\": \"\", \"components\": {\"title\": \"Alterar password\"}, \"repeatable\": [], \"templatesBlocksId\": 0}}}');");
$this->addSql("INSERT INTO `std_pages_pages` (`page_id`, `relation_id`, `order_value`, `content_type`) VALUES (@childpage, @id_home_page_relation, 1, @privatearea_contenttype);");
$this->addSql("SET @id_personal_data_relation = (SELECT id FROM `std_pages_pages` WHERE `page_id` = @childpage);");
$this->addSql("INSERT INTO `std_friendly_url` (`page_id`, `url`, `relation_tree`, `relation_id`, `language_code`, `is_canonical`) VALUES (@childpage, '/pt/dados-acesso', '[]', NULL, 'pt', 0);");
$this->addSql("INSERT INTO `std_friendly_url` (`page_id`, `url`, `relation_tree`, `relation_id`, `language_code`, `is_canonical`) VALUES (@childpage, '/pt/area-reservada/dados-acesso', CONCAT('{\"url\": \"/dados-acesso\", \"relation_id\": ',@id_home_page_relation,'}'), @id_personal_data_relation, 'pt', 1);");
$this->addSql("INSERT INTO std_page_web_role(page_id,webrole_id)VALUES(@childpage,@default_webrole);");
}
public function down(Schema $schema) : void
{
$this->addSql("SET @privatearea_contenttype = (SELECT id FROM `std_content_types` WHERE `machine_name` = 'private_area');");
$this->addSql("DELETE FROM `std_friendly_url` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_pages_pages` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_page_web_role` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_pages_content` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_favorite_pages_users` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_menus_friendly_url` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_page_web_role` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso');");
$this->addSql("DELETE FROM `std_pages` WHERE `content_type`=@privatearea_contenttype AND `name`='Dados acesso';");
}
}