<?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 Version20210212115400 extends AbstractMigration
{
public function getDescription() : string
{
return '';
}
public function up(Schema $schema) : void
{
$this->addSql("SET @id_content_type = (SELECT id FROM `std_content_types` WHERE `machine_name` = 'private_area');");
$this->addSql("SET @id_default_web_role = (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` = @id_content_type 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, @id_content_type, 1, NOW(), NOW(), NULL, NOW(), NULL, 'Dados pessoais');");
$this->addSql("SET @id_personal_data_page = (SELECT id FROM `std_pages` WHERE `content_type` = @id_content_type AND `name`='Dados pessoais');");
$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 (@id_personal_data_page, 'pt', 1, 1, 1, NOW(), NOW(), 'Dados pessoais', 'os-meus-dados', '/pt/area-reservada/os-meus-dados', '', '', '', '', '', '', '', '', '', '', '{\"fields\": {\"1\": {\"skin\": \"\", \"block\": \"web_users_detail\", \"isMaster\": 0, \"settings\": {\"expire_date\": \"\", \"publish_date\": \"\"}, \"blockname\": \"\", \"components\": {\"title\": \"Os meus dados\"}, \"repeatable\": [], \"templatesBlocksId\": 0}}}');");
$this->addSql("INSERT INTO `std_pages_pages` (`page_id`, `relation_id`, `order_value`, `content_type`) VALUES (@id_personal_data_page, @id_home_page_relation, 1, @id_content_type);");
$this->addSql("SET @id_personal_data_relation = (SELECT id FROM `std_pages_pages` WHERE `page_id` = @id_personal_data_page);");
$this->addSql("INSERT INTO `std_friendly_url` (`page_id`, `url`, `relation_tree`, `relation_id`, `language_code`, `is_canonical`) VALUES (@id_personal_data_page, '/pt/os-meus-dados', '[]', NULL, 'pt', 0);");
$this->addSql("INSERT INTO `std_friendly_url` (`page_id`, `url`, `relation_tree`, `relation_id`, `language_code`, `is_canonical`) VALUES (@id_personal_data_page, '/pt/area-reservada/os-meus-dados', CONCAT('{\"url\": \"/os-meus-dados\", \"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(@id_personal_data_page,@id_default_web_role);");
}
public function down(Schema $schema) : void
{
$this->addSql("SET @id_content_type = (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`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_pages_pages` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_page_web_role` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_pages_content` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_favorite_pages_users` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_menus_friendly_url` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_page_web_role` WHERE page_id IN(SELECT id FROM std_pages WHERE `content_type`=@id_content_type AND `name`='Dados pessoais');");
$this->addSql("DELETE FROM `std_pages` WHERE `content_type`=@id_content_type AND `name`='Dados pessoais';");
}
}