diff --git a/.project/data/dumps/foreign/_preamble.sql b/.project/data/dumps/foreign/_preamble.sql index cac949948..8f9d137f0 100644 --- a/.project/data/dumps/foreign/_preamble.sql +++ b/.project/data/dumps/foreign/_preamble.sql @@ -1,5 +1,7 @@ DROP TABLE IF EXISTS be_users; DROP TABLE IF EXISTS pages; +DROP TABLE IF EXISTS sys_category; +DROP TABLE IF EXISTS sys_category_record_mm; DROP TABLE IF EXISTS sys_file; DROP TABLE IF EXISTS sys_file_metadata; DROP TABLE IF EXISTS sys_file_reference; @@ -11,6 +13,8 @@ DROP TABLE IF EXISTS tt_content; DROP TABLE IF EXISTS tx_news_domain_model_news; CREATE TABLE be_users (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, crdate INT UNSIGNED DEFAULT 0 NOT NULL, deleted SMALLINT UNSIGNED DEFAULT 0 NOT NULL, disable SMALLINT UNSIGNED DEFAULT 0 NOT NULL, starttime INT UNSIGNED DEFAULT 0 NOT NULL, endtime INT UNSIGNED DEFAULT 0 NOT NULL, description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, username VARCHAR(50) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, avatar INT UNSIGNED DEFAULT 0 NOT NULL, password VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, `admin` SMALLINT UNSIGNED DEFAULT 0 NOT NULL, usergroup TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, lang VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT 'default' NOT NULL COLLATE `utf8mb4_unicode_ci`, email VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, db_mountpoints TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, options SMALLINT UNSIGNED DEFAULT 0 NOT NULL, realName VARCHAR(80) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, userMods TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, allowed_languages VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, uc MEDIUMBLOB DEFAULT NULL, file_mountpoints TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, file_permissions TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, workspace_perms SMALLINT DEFAULT 0 NOT NULL, TSconfig TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, lastlogin INT DEFAULT 0 NOT NULL, workspace_id INT DEFAULT 0 NOT NULL, mfa MEDIUMBLOB DEFAULT NULL, category_perms LONGTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, password_reset_token VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, tx_styleguide_isdemorecord SMALLINT UNSIGNED DEFAULT 0 NOT NULL, INDEX parent (pid, deleted, disable), INDEX username (username), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; CREATE TABLE pages (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, crdate INT UNSIGNED DEFAULT 0 NOT NULL, deleted SMALLINT UNSIGNED DEFAULT 0 NOT NULL, hidden SMALLINT UNSIGNED DEFAULT 0 NOT NULL, starttime INT UNSIGNED DEFAULT 0 NOT NULL, endtime INT UNSIGNED DEFAULT 0 NOT NULL, fe_group VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '0' NOT NULL COLLATE `utf8mb4_unicode_ci`, sorting INT DEFAULT 0 NOT NULL, rowDescription TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, editlock SMALLINT UNSIGNED DEFAULT 0 NOT NULL, sys_language_uid INT DEFAULT 0 NOT NULL, l10n_parent INT UNSIGNED DEFAULT 0 NOT NULL, l10n_source INT UNSIGNED DEFAULT 0 NOT NULL, l10n_state TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, t3_origuid INT UNSIGNED DEFAULT 0 NOT NULL, l10n_diffsource MEDIUMBLOB DEFAULT NULL, t3ver_oid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_wsid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_state SMALLINT DEFAULT 0 NOT NULL, t3ver_stage INT DEFAULT 0 NOT NULL, perms_userid INT UNSIGNED DEFAULT 0 NOT NULL, perms_groupid INT UNSIGNED DEFAULT 0 NOT NULL, perms_user SMALLINT UNSIGNED DEFAULT 0 NOT NULL, perms_group SMALLINT UNSIGNED DEFAULT 0 NOT NULL, perms_everybody SMALLINT UNSIGNED DEFAULT 0 NOT NULL, title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, slug VARCHAR(2048) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, doktype INT UNSIGNED DEFAULT 0 NOT NULL, TSconfig TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, is_siteroot SMALLINT DEFAULT 0 NOT NULL, php_tree_stop SMALLINT DEFAULT 0 NOT NULL, url VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, shortcut INT UNSIGNED DEFAULT 0 NOT NULL, shortcut_mode INT UNSIGNED DEFAULT 0 NOT NULL, subtitle VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, layout INT UNSIGNED DEFAULT 0 NOT NULL, target VARCHAR(80) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, media INT UNSIGNED DEFAULT 0 NOT NULL, lastUpdated INT DEFAULT 0 NOT NULL, keywords TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, cache_timeout INT UNSIGNED DEFAULT 0 NOT NULL, cache_tags VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, newUntil INT DEFAULT 0 NOT NULL, description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, no_search SMALLINT UNSIGNED DEFAULT 0 NOT NULL, SYS_LASTCHANGED INT UNSIGNED DEFAULT 0 NOT NULL, abstract TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, module VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, extendToSubpages SMALLINT UNSIGNED DEFAULT 0 NOT NULL, author VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, author_email VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, nav_title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, nav_hide SMALLINT DEFAULT 0 NOT NULL, content_from_pid INT UNSIGNED DEFAULT 0 NOT NULL, mount_pid INT UNSIGNED DEFAULT 0 NOT NULL, mount_pid_ol SMALLINT DEFAULT 0 NOT NULL, l18n_cfg SMALLINT DEFAULT 0 NOT NULL, backend_layout VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, backend_layout_next_level VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, tsconfig_includes TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, categories INT UNSIGNED DEFAULT 0 NOT NULL, tx_impexp_origuid INT DEFAULT 0 NOT NULL, seo_title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, no_index SMALLINT DEFAULT 0 NOT NULL, no_follow SMALLINT DEFAULT 0 NOT NULL, og_title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, og_description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, og_image INT UNSIGNED DEFAULT 0 NOT NULL, twitter_title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, twitter_description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, twitter_image INT UNSIGNED DEFAULT 0 NOT NULL, twitter_card VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, canonical_link VARCHAR(2048) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, sitemap_priority NUMERIC(2, 1) DEFAULT '0.5' NOT NULL, sitemap_changefreq VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, tx_styleguide_containsdemo VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, INDEX determineSiteRoot (is_siteroot), INDEX language_identifier (l10n_parent, sys_language_uid), INDEX parent (pid, deleted, hidden), INDEX slug (slug(127)), INDEX t3ver_oid (t3ver_oid, t3ver_wsid), INDEX translation_source (l10n_source), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; +CREATE TABLE sys_category (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, crdate INT UNSIGNED DEFAULT 0 NOT NULL, deleted SMALLINT UNSIGNED DEFAULT 0 NOT NULL, hidden SMALLINT UNSIGNED DEFAULT 0 NOT NULL, starttime INT UNSIGNED DEFAULT 0 NOT NULL, endtime INT UNSIGNED DEFAULT 0 NOT NULL, sorting INT DEFAULT 0 NOT NULL, description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, sys_language_uid INT DEFAULT 0 NOT NULL, l10n_parent INT UNSIGNED DEFAULT 0 NOT NULL, l10n_state TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, t3_origuid INT UNSIGNED DEFAULT 0 NOT NULL, l10n_diffsource MEDIUMBLOB DEFAULT NULL, t3ver_oid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_wsid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_state SMALLINT DEFAULT 0 NOT NULL, t3ver_stage INT DEFAULT 0 NOT NULL, title TINYTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_unicode_ci`, items INT DEFAULT 0 NOT NULL, parent INT UNSIGNED DEFAULT 0 NOT NULL, fe_group VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT '0' NOT NULL COLLATE `utf8mb4_unicode_ci`, images INT UNSIGNED DEFAULT 0, single_pid INT UNSIGNED DEFAULT 0 NOT NULL, shortcut INT DEFAULT 0 NOT NULL, import_id VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, import_source VARCHAR(100) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, seo_title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, seo_description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, seo_headline VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, seo_text TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, slug VARCHAR(2048) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, INDEX category_parent (parent), INDEX category_list (pid, deleted, sys_language_uid), INDEX parent (pid, deleted, hidden), INDEX t3ver_oid (t3ver_oid, t3ver_wsid), INDEX import (import_id, import_source), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; +CREATE TABLE sys_category_record_mm (uid_local int unsigned NOT NULL DEFAULT '0', uid_foreign int unsigned NOT NULL DEFAULT '0', tablenames varchar(64) COLLATE `utf8mb4_unicode_ci` NOT NULL DEFAULT '', fieldname varchar(64) COLLATE `utf8mb4_unicode_ci` NOT NULL DEFAULT '', sorting int unsigned NOT NULL DEFAULT '0', sorting_foreign int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (uid_local, uid_foreign, tablenames, fieldname), KEY uid_local (uid_local), KEY uid_foreign (uid_foreign)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=`utf8mb4_unicode_ci`; CREATE TABLE sys_file (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, last_indexed INT DEFAULT 0 NOT NULL, missing SMALLINT DEFAULT 0 NOT NULL, storage INT DEFAULT 0 NOT NULL, type VARCHAR(10) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, metadata INT DEFAULT 0 NOT NULL, identifier TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, identifier_hash VARCHAR(40) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, folder_hash VARCHAR(40) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, extension VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, mime_type VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, name TINYTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, sha1 VARCHAR(40) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, size BIGINT UNSIGNED DEFAULT 0 NOT NULL, creation_date INT DEFAULT 0 NOT NULL, modification_date INT DEFAULT 0 NOT NULL, INDEX folder (storage, folder_hash), INDEX lastindex (last_indexed), INDEX parent (pid), INDEX sel01 (storage, identifier_hash), INDEX sha1 (sha1), INDEX tstamp (tstamp), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; CREATE TABLE sys_file_metadata (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, crdate INT UNSIGNED DEFAULT 0 NOT NULL, sys_language_uid INT DEFAULT 0 NOT NULL, l10n_parent INT UNSIGNED DEFAULT 0 NOT NULL, l10n_state TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, t3_origuid INT UNSIGNED DEFAULT 0 NOT NULL, l10n_diffsource MEDIUMBLOB DEFAULT NULL, t3ver_oid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_wsid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_state SMALLINT DEFAULT 0 NOT NULL, t3ver_stage INT DEFAULT 0 NOT NULL, file INT DEFAULT 0 NOT NULL, title TINYTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, width INT DEFAULT 0 NOT NULL, height INT DEFAULT 0 NOT NULL, description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, alternative TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, categories INT UNSIGNED DEFAULT 0 NOT NULL, INDEX fal_filelist (l10n_parent, sys_language_uid), INDEX file (file), INDEX parent (pid), INDEX t3ver_oid (t3ver_oid, t3ver_wsid), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; CREATE TABLE sys_file_reference (uid INT UNSIGNED AUTO_INCREMENT NOT NULL, pid INT UNSIGNED DEFAULT 0 NOT NULL, tstamp INT UNSIGNED DEFAULT 0 NOT NULL, crdate INT UNSIGNED DEFAULT 0 NOT NULL, deleted SMALLINT UNSIGNED DEFAULT 0 NOT NULL, hidden SMALLINT UNSIGNED DEFAULT 0 NOT NULL, sys_language_uid INT DEFAULT 0 NOT NULL, l10n_parent INT UNSIGNED DEFAULT 0 NOT NULL, l10n_state TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, l10n_diffsource MEDIUMBLOB DEFAULT NULL, t3ver_oid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_wsid INT UNSIGNED DEFAULT 0 NOT NULL, t3ver_state SMALLINT DEFAULT 0 NOT NULL, t3ver_stage INT DEFAULT 0 NOT NULL, uid_local INT DEFAULT 0 NOT NULL, uid_foreign INT DEFAULT 0 NOT NULL, tablenames VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, fieldname VARCHAR(64) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, sorting_foreign INT DEFAULT 0 NOT NULL, title TINYTEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, description TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, alternative TEXT CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, link VARCHAR(1024) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, crop VARCHAR(4000) CHARACTER SET utf8mb4 DEFAULT '' NOT NULL COLLATE `utf8mb4_unicode_ci`, autoplay SMALLINT DEFAULT 0 NOT NULL, showinpreview SMALLINT DEFAULT 0 NOT NULL, INDEX combined_1 (l10n_parent, t3ver_oid, t3ver_wsid, t3ver_state, deleted), INDEX deleted (deleted), INDEX parent (pid, deleted, hidden), INDEX t3ver_oid (t3ver_oid, t3ver_wsid), INDEX tablenames_fieldname (tablenames(32), fieldname(12)), INDEX uid_foreign (uid_foreign), INDEX uid_local (uid_local), PRIMARY KEY(uid)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = '' ; diff --git a/.project/data/dumps/local/pages.csv b/.project/data/dumps/local/pages.csv index b9c12d740..d3ecc476b 100644 --- a/.project/data/dumps/local/pages.csv +++ b/.project/data/dumps/local/pages.csv @@ -1,6 +1,6 @@ 1 0 1696487800 1660115842 0 0 0 0 512 \N 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","fe_login_mode":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 1 31 31 1 Home / 1 \N 1 0 0 0 0 0 0 \N 0 0 \N 0 1696487800 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 2 3 1698046782 1695897937 0 0 0 0 64 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","fe_login_mode":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 6 31 31 1 5a Workflows - Page properties - changed /5a-page-workflows-page-properties 1 0 0 0 0 Page properties (title) has changed 0 0 0 0 0 0 1698046461 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 -3 1 1698046742 1695901523 0 0 0 0 32 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 6 31 31 1 EXT:in2publish /extin2publish-core 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 +3 1 1698046742 1695901523 0 0 0 0 544 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 6 31 31 1 EXT:in2publish /extin2publish-core 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 4 1 1698046773 1695901537 0 0 0 0 16 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 9 31 27 1 EXT:in2publish_core /extin2publish 1 0 0 0 0 0 0 0 0 0 0 1698046773 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 5 4 1700506518 1695901581 0 0 0 0 112 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","fe_login_mode":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 9 31 27 1 1a Page properties - changed /extin2publish/1-publish-page 1 0 0 0 0 0 0 0 0 0 0 1695901581 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 6 4 1698046773 1695901957 0 0 0 0 128 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 9 31 27 1 1b Page content /extin2publish/1b-page-content 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 @@ -30,7 +30,7 @@ 30 29 1698046773 1696836661 0 0 0 0 256 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","fe_login_mode":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 9 31 27 1 4.1.1.1 Subpage - Level 4 /extin2publish/4-pagetree-depth/41-subpage/411-subpage/4111-subpage-level-4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 31 30 1698046773 1696836689 0 0 0 0 256 0 0 0 0 \N 0 {"slug":""} 0 0 0 0 1 9 31 27 1 4.1.1.1.1 Subpage - Level 5 /extin2publish/4-pagetree-depth/41-subpage/411-subpage/4111-subpage-level-4/41111-subpage 1 0 0 0 0 0 0 0 0 0 0 1696836795 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 32 31 1698046773 1696836780 0 0 0 0 256 0 0 0 0 \N 0 {"slug":""} 0 0 0 0 1 9 31 27 1 Subpage - Level 5 /extin2publish/4-pagetree-depth/41-subpage/411-subpage/4111-subpage-level-4/41111-subpage/subpage-level-5 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 -33 1 1697024852 1697023506 0 0 0 0 24 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 0 31 27 0 News Folder /extin2publish/default-d644ce19a7fcaff4a29e6944d0a1e4ef 254 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 +33 1 1697024852 1697023506 0 0 0 0 536 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 0 31 27 0 News Folder /extin2publish/default-d644ce19a7fcaff4a29e6944d0a1e4ef 254 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 summary 0.5 34 3 1698046782 1697114203 0 0 0 0 0 256 \N 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 6 31 31 1 5c Workflows - Unfulfilled Dependencies /extin2publish-core/5c-workflows-unfulfilled-dependencies 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 35 34 1698046782 1697114556 0 0 0 0 0 256 \N 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 6 31 31 1 5c.1 Parent not published /extin2publish-core/5c-workflows-unfulfilled-dependencies/5c1-parent-not-published 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 1698046461 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 36 35 1698142763 1697114581 0 0 0 0 0 64 \N 0 0 0 0 \N 0 {"hidden":""} 0 0 0 0 1 6 31 31 1 5c.1.1 Child Ready to Publish /extin2publish-core/5c-workflows-unfulfilled-dependencies/5c1-parent-not-published/5c11-child-ready-to-publish 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 1698046461 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 @@ -71,3 +71,6 @@ 73 4 1700554904 1700506882 0 0 0 0 160 \N 0 0 0 0 \N 0 {"title":""} 0 0 0 0 1 0 31 27 0 1d Translated Content /extin2publish/1c-codeception-tests 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 74 73 1700554910 1700506952 0 0 0 0 0 128 \N 0 0 0 0 \N 0 {"title":""} 0 0 0 0 1 0 31 27 0 1d.2 Connected Mode /extin2publish/1c-codeception-tests/1c2-connected-mode 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 \N 0 0 0 0 \N 0 \N 0 summary 0.5 75 73 1700554978 1700507009 0 0 0 0 128 \N 0 1 74 74 {"starttime":"parent","endtime":"parent","nav_hide":"parent","url":"parent","lastUpdated":"parent","newUntil":"parent","no_search":"parent","shortcut":"parent","shortcut_mode":"parent","content_from_pid":"parent","author":"parent","author_email":"parent","media":"parent","og_image":"parent","twitter_image":"parent","no_search_sub_entries":"parent"} 0 {"doktype":"1","slug":"\\/extin2publish\\/1c-codeception-tests\\/1c2-connected-mode","hidden":"0","starttime":"0","endtime":"0","l10n_parent":"0","categories":"0","l10n_diffsource":"{\\"hidden\\":\\"\\"}","layout":"0","lastUpdated":"0","newUntil":"0","cache_timeout":"0","shortcut":"0","shortcut_mode":"0","content_from_pid":"0","mount_pid":"0","module":"","sitemap_priority":"0.5","twitter_card":"summary","t3_origuid":"0","sys_language_uid":"0","l10n_source":"0","title":"1d.2 Connected Mode","nav_hide":"0","url":"","no_search":"0","author":"","author_email":"","media":"0","og_image":"0","twitter_image":"0","no_search_sub_entries":"0","TSconfig":"","php_tree_stop":"0","editlock":"0","fe_group":"0","extendToSubpages":"0","target":"","cache_tags":"","is_siteroot":"0","mount_pid_ol":"0","l18n_cfg":"0","backend_layout":"","backend_layout_next_level":"","tsconfig_includes":"","no_index":"0","no_follow":"0","nav_title":"","subtitle":"","seo_title":"","description":"","canonical_link":"","sitemap_changefreq":"","og_title":"","og_description":"","twitter_title":"","twitter_description":"","abstract":"","keywords":"","rowDescription":""} 0 0 0 0 1 0 31 27 0 1d.2 Connected Mode - DE /extin2publish/1c-codeception-tests/translate-to-german-1c2-connected-mode 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 0 0 0 0 \N 0 \N 0 summary 0.5 +76 1 1730361316 1730131569 0 0 0 0 22 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","no_search_sub_entries":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 0 31 27 0 24 Page with Category 1 and Category 2 /24-page-with-category-1-and-category-2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 summary 0.5 +77 1 1733991249 1733991219 0 0 0 0 23 \N 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 0 31 27 0 Page with Category 1 /page-with-category-1 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 \N 1 0 0 0 \N 0 \N 0 summary 0.5 +78 1 1733991257 1733991229 0 0 0 0 279 \N 0 0 0 0 \N 0 {"doktype":"","title":"","slug":"","nav_title":"","subtitle":"","seo_title":"","description":"","no_index":"","no_follow":"","canonical_link":"","sitemap_changefreq":"","sitemap_priority":"","og_title":"","og_description":"","og_image":"","twitter_title":"","twitter_description":"","twitter_image":"","twitter_card":"","abstract":"","keywords":"","author":"","author_email":"","lastUpdated":"","layout":"","newUntil":"","backend_layout":"","backend_layout_next_level":"","content_from_pid":"","target":"","cache_timeout":"","cache_tags":"","is_siteroot":"","no_search":"","php_tree_stop":"","module":"","media":"","tsconfig_includes":"","TSconfig":"","l18n_cfg":"","hidden":"","nav_hide":"","starttime":"","endtime":"","extendToSubpages":"","fe_group":"","editlock":"","categories":"","rowDescription":""} 0 0 0 0 1 0 31 27 0 Page with Category 2 /page-with-category-2 1 \N 0 0 0 0 0 0 0 \N 0 0 \N 0 0 \N 0 0 0 0 0 0 \N 1 0 0 0 \N 0 \N 0 summary 0.5 diff --git a/.project/data/dumps/local/sys_category.csv b/.project/data/dumps/local/sys_category.csv index dc0976b53..2a2fcbb03 100644 --- a/.project/data/dumps/local/sys_category.csv +++ b/.project/data/dumps/local/sys_category.csv @@ -1 +1,2 @@ -1 168 1660120355 1660120355 0 0 0 0 256 0 0 \N 0 0 0 0 0 Styleguide Demo Category 0 0 0 0 0 0 \N \N styleguide-demo-category +1 1 1730129770 1730129770 0 0 0 0 256 0 0 "NULL" 0 0 0 0 0 "Category 1" 0 0 0 0 0 0 "category-1" +2 1 1730129781 1730129781 0 0 0 0 512 0 0 "NULL" 0 0 0 0 0 "Category 2" 0 0 0 0 0 0 "category-2" diff --git a/.project/data/dumps/local/sys_category_record_mm.csv b/.project/data/dumps/local/sys_category_record_mm.csv index 3b83341e1..30865c42a 100644 --- a/.project/data/dumps/local/sys_category_record_mm.csv +++ b/.project/data/dumps/local/sys_category_record_mm.csv @@ -1,25 +1,5 @@ -1 170 0 1 pages categories -1 171 0 1 pages categories -1 172 0 1 pages categories -1 173 0 1 pages categories -1 174 0 1 pages categories -1 175 0 1 pages categories -1 176 0 1 pages categories -1 177 0 1 pages categories -1 178 0 1 pages categories -1 179 0 1 pages categories -1 180 0 1 pages categories -1 181 0 1 pages categories -1 182 0 1 pages categories -1 183 0 1 pages categories -1 184 0 1 pages categories -1 185 0 1 pages categories -1 186 0 1 pages categories -1 187 0 1 pages categories -1 188 0 1 pages categories -1 189 0 1 pages categories -1 190 0 1 pages categories -1 191 0 1 pages categories -1 192 0 1 pages categories -1 193 0 1 pages categories -1 194 0 1 pages categories +1 76 0 1 pages categories +1 76 0 1 tx_news_domain_model_news categories +1 77 0 1 pages categories +2 76 0 2 pages categories +2 78 0 1 pages categories diff --git a/.project/data/dumps/local/tx_news_domain_model_news.csv b/.project/data/dumps/local/tx_news_domain_model_news.csv index f5cfa78fd..3aa70c0f7 100644 --- a/.project/data/dumps/local/tx_news_domain_model_news.csv +++ b/.project/data/dumps/local/tx_news_domain_model_news.csv @@ -4,3 +4,4 @@ 4 26 1697027409 1696488613 1 0 0 0 0 0 0 0 0 {"type":"","istopnews":"","title":"","path_segment":"","teaser":"","datetime":"","archive":"","bodytext":"","content_elements":"","fal_media":"","fal_related_files":"","categories":"","related":"","related_links":"","tags":"","author":"","author_email":"","keywords":"","description":"","alternative_title":"","sitemap_changefreq":"","sitemap_priority":"","sys_language_uid":"","hidden":"","starttime":"","endtime":"","fe_group":"","editlock":"","notes":""} 0 0 0 0 0 \N 0 9a new news Fantastic new news teaser

Fantastic new news text

1696488589 0 0 0 0 \N 0 0 0 0 \N 0 \N \N 0 1 13b-new-news 0.5 5 33 1697025655 1697023553 1 0 0 0 0 0 0 0 0 {"type":"","istopnews":"","title":"","path_segment":"","teaser":"","datetime":"","archive":"","bodytext":"","content_elements":"","fal_media":"","fal_related_files":"","categories":"","related":"","related_links":"","tags":"","author":"","author_email":"","keywords":"","description":"","alternative_title":"","sitemap_changefreq":"","sitemap_priority":"","sys_language_uid":"","hidden":"","starttime":"","endtime":"","fe_group":"","editlock":"","notes":""} 0 0 0 0 0 \N 0 1c news with changed content 1697023537 0 0 0 0 \N 0 0 0 0 \N 0 \N \N 0 1 11c-news-with-changed-content 0.5 6 26 1697100358 1697100283 1 0 0 0 0 0 0 0 0 {"type":"","istopnews":"","title":"","path_segment":"","teaser":"","datetime":"","archive":"","bodytext":"","content_elements":"","fal_media":"","fal_related_files":"","categories":"","related":"","related_links":"","tags":"","author":"","author_email":"","keywords":"","description":"","alternative_title":"","sitemap_changefreq":"","sitemap_priority":"","sys_language_uid":"","hidden":"","starttime":"","endtime":"","fe_group":"","editlock":"","notes":""} 0 0 0 0 0 \N 0 13b new news indexed by solr 1697100255 0 0 0 0 \N 0 0 0 0 \N 0 \N \N 0 1 13a-new-solr-news 0.5 +76 33 1730361273 1730297374 0 0 0 0 0 0 0 0 0 {"type":"","istopnews":"","title":"","path_segment":"","teaser":"","datetime":"","archive":"","bodytext":"","content_elements":"","fal_media":"","fal_related_files":"","categories":"","related":"","related_links":"","tags":"","author":"","author_email":"","keywords":"","description":"","alternative_title":"","sitemap_changefreq":"","sitemap_priority":"","sys_language_uid":"","hidden":"","starttime":"","endtime":"","fe_group":"","editlock":"","notes":""} 0 0 0 0 0 \N 0 24 news with Category 1 1730297361 0 1 0 0 \N 0 0 0 0 \N 0 \N \N 0 0 24-news-with-categories 0.5 diff --git a/Tests/Browser/UidClashTest.php b/Tests/Browser/UidClashTest.php new file mode 100644 index 000000000..bcacf54e2 --- /dev/null +++ b/Tests/Browser/UidClashTest.php @@ -0,0 +1,195 @@ +publishPage76($localDriver); + + $localDriver->close(); + unset($localDriver); + + $foreignDriver = WebDriverFactory::createChromeDriver(); + $this->assertPage76HasBeenPublished($foreignDriver); + $this->assertBothCategoriesHaveBeenPublished($foreignDriver); + + $foreignDriver->close(); + unset($foreignDriver); + } + + /** + * Use Case 2 + * + * News folder with News 24 is published in Overview Module + * Result as expected: News 24 is published, Page 24 is not published, only Category 1 is published, only the news mm-Records is published + */ + public function testUseCase2(): void + { + $localDriver = WebDriverFactory::createChromeDriver(); + $this->publishNews76($localDriver); + + $localDriver->close(); + unset($localDriver); + + $foreignDriver = WebDriverFactory::createChromeDriver(); + $this->assertNews76HasBeenPublished($foreignDriver); + $this->assertOnlyCategory1HasBeenPublished($foreignDriver); + + $foreignDriver->close(); + unset($foreignDriver); + + } + + /** + * Use Case 3 + * + * Page 24 is published first, then News 24 + * Result as expected: first only the page, categories and 2 page mm-records are published, then the news and the news mm-record + */ + public function testUseCase3(): void + { + $localDriver = WebDriverFactory::createChromeDriver(); + + $this->publishPage76($localDriver); + $this->publishNews76($localDriver); + + $localDriver->close(); + unset($localDriver); + + $foreignDriver = WebDriverFactory::createChromeDriver(); + + $this->assertPage76HasBeenPublished($foreignDriver); + $this->assertNews76HasBeenPublished($foreignDriver); + $this->assertBothCategoriesHaveBeenPublished($foreignDriver); + + + $foreignDriver->close(); + unset($foreignDriver); + } + + + protected function publishPage76(WebDriver $localDriver): WebDriver + { + TYPO3Helper::backendLogin($localDriver, 'https://local.v12.in2publish-core.de/typo3', 'admin', 'password'); + + TYPO3Helper::selectModuleByText($localDriver, 'Page'); + TYPO3Helper::selectInPageTree( + $localDriver, + ['Home', 'EXT:in2publish_core', '24 Page with Category 1 and Category 2'], + ); + + TYPO3Helper::selectModuleByText($localDriver, 'Publish Overview'); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($localDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, 'TYPO3 Content Publisher - publish pages and records overview'); + self::assertElementIsVisible($driver, WebDriverBy::cssSelector('[data-record-identifier="pages-76"]')); + + $driver->click(WebDriverBy::cssSelector('.in2publish-icon-publish')); + }); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($localDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, 'The selected record has been published successfully'); + }); + return $localDriver; + } + + protected function publishNews76(WebDriver $localDriver): void + { + TYPO3Helper::backendLogin($localDriver, 'https://local.v12.in2publish-core.de/typo3', 'admin', 'password'); + TYPO3Helper::selectModuleByText($localDriver, 'List'); + TYPO3Helper::selectInPageTree($localDriver, ['Home', 'News Folder']); + TYPO3Helper::selectModuleByText($localDriver, 'Publish Overview'); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($localDriver, static function (WebDriver $driver): void { + $driver->click(WebDriverBy::cssSelector('.in2publish-icon-publish')); + }); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($localDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, 'The selected record has been published successfully'); + }); + } + + protected function assertPage76HasBeenPublished(WebDriver $foreignDriver): void + { + TYPO3Helper::backendLogin($foreignDriver, 'https://foreign.v12.in2publish-core.de/typo3', 'admin', 'password'); + TYPO3Helper::selectModuleByText($foreignDriver, 'Page'); + TYPO3Helper::selectInPageTree( + $foreignDriver, + ['Home', 'EXT:in2publish_core', '24 Page with Category 1 and Category 2'] + ); + } + + protected function assertNews76HasBeenPublished(WebDriver $foreignDriver): void + { + TYPO3Helper::backendLogin($foreignDriver, 'https://foreign.v12.in2publish-core.de/typo3', 'admin', 'password'); + TYPO3Helper::selectModuleByText($foreignDriver, 'List'); + TYPO3Helper::selectInPageTree($foreignDriver, ['Home', 'News Folder']); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($foreignDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, '24 news with Category 1'); + }); + } + + private function assertOnlyCategory1HasBeenPublished(WebDriver $foreignDriver) + { + TYPO3Helper::backendLogin($foreignDriver, 'https://foreign.v12.in2publish-core.de/typo3', 'admin', 'password'); + TYPO3Helper::selectModuleByText($foreignDriver, 'List'); + TYPO3Helper::selectInPageTree($foreignDriver, ['Home']); + + TYPO3Helper::inContentIFrameContext($foreignDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, 'Category 1'); + // Fix: Category 2 should not be published + self::assertPageNotContains($driver, 'Category 2'); + }); + + } + + private function assertBothCategoriesHaveBeenPublished(WebDriver $foreignDriver) + { + TYPO3Helper::backendLogin($foreignDriver, 'https://foreign.v12.in2publish-core.de/typo3', 'admin', 'password'); + TYPO3Helper::selectModuleByText($foreignDriver, 'List'); + TYPO3Helper::selectInPageTree($foreignDriver, ['Home']); + + // Workaround + sleep($this->sleepTime); + + TYPO3Helper::inContentIFrameContext($foreignDriver, static function (WebDriver $driver): void { + self::assertPageContains($driver, 'Category 1'); + self::assertPageContains($driver, 'Category 2'); + }); + } +} \ No newline at end of file diff --git a/Tests/Functional/Component/Core/DemandResolver/Join/JoinDemandResolverTest.php b/Tests/Functional/Component/Core/DemandResolver/Join/JoinDemandResolverTest.php index 18aa72162..ebdc8e1db 100644 --- a/Tests/Functional/Component/Core/DemandResolver/Join/JoinDemandResolverTest.php +++ b/Tests/Functional/Component/Core/DemandResolver/Join/JoinDemandResolverTest.php @@ -21,11 +21,11 @@ class JoinDemandResolverTest extends FunctionalTestCase public function testJoinDemandResolverResolvesMmRelation(): void { - $pageRecord = new DatabaseRecord('pages', 170, ['uid' => 170], ['uid' => 170], []); + $pageRecord = new DatabaseRecord('pages', 77, ['uid' => 77], ['uid' => 77], []); $demands = new DemandsCollection(); $demands->addDemand( - new JoinDemand('sys_category_record_mm', 'sys_category', '', 'uid_foreign', 170, $pageRecord), + new JoinDemand('sys_category_record_mm', 'sys_category', '', 'uid_foreign', 77, $pageRecord), ); $recordCollection = new RecordCollection(); @@ -37,7 +37,7 @@ public function testJoinDemandResolverResolvesMmRelation(): void $sysCategoryParents = $sysCategoryRecord->getParents(); self::assertCount(1, $sysCategoryParents); $sysCategoryMmRecord = reset($sysCategoryParents); - self::assertSame('1e829e4ee2bd6fa3a73ee64c6461313b08939ee7', $sysCategoryMmRecord->getId()); + self::assertSame('6ed754e2fa2e937739af04a069a6f6d9e96db685', $sysCategoryMmRecord->getId()); $mmParents = $sysCategoryMmRecord->getParents(); self::assertCount(1, $mmParents); $mmParent = reset($mmParents); diff --git a/Tests/Functional/Component/Core/Repository/SingleDatabaseRepositoryTest.php b/Tests/Functional/Component/Core/Repository/SingleDatabaseRepositoryTest.php index 1488c294a..adce68b38 100644 --- a/Tests/Functional/Component/Core/Repository/SingleDatabaseRepositoryTest.php +++ b/Tests/Functional/Component/Core/Repository/SingleDatabaseRepositoryTest.php @@ -28,7 +28,7 @@ public function testFindByPropertyReturnsRowsSortedByTcaCtrl(): void $rows = $singleDataRepository->findByProperty('pages', 'uid', [1, 3, 6]); $sortings = array_column($rows, 'sorting'); - self::assertSame([32, 128, 512], $sortings); + self::assertSame([128, 512, 544], $sortings); } public function testFindByPropertyWithJoinReturnsJoinedRows(): void @@ -43,13 +43,13 @@ public function testFindByPropertyWithJoinReturnsJoinedRows(): void 'sys_category_record_mm', 'sys_category', 'uid_foreign', - [170, 180], + [77, 78], ); self::assertSame([ - '1e829e4ee2bd6fa3a73ee64c6461313b08939ee7' => [ + '6ed754e2fa2e937739af04a069a6f6d9e96db685' => [ 'mmtbl' => [ 'uid_local' => 1, - 'uid_foreign' => 170, + 'uid_foreign' => 77, 'sorting' => 0, 'sorting_foreign' => 1, 'tablenames' => "pages", @@ -57,9 +57,9 @@ public function testFindByPropertyWithJoinReturnsJoinedRows(): void ], 'table' => [ 'uid' => 1, - 'pid' => 168, - 'tstamp' => 1660120355, - 'crdate' => 1660120355, + 'pid' => 1, + 'tstamp' => 1730129770, + 'crdate' => 1730129770, 'deleted' => 0, 'hidden' => 0, 'starttime' => 0, @@ -68,14 +68,14 @@ public function testFindByPropertyWithJoinReturnsJoinedRows(): void 'description' => "", 'sys_language_uid' => 0, 'l10n_parent' => 0, - 'l10n_state' => null, + 'l10n_state' => '"NULL"', 't3_origuid' => 0, 'l10n_diffsource' => "", 't3ver_oid' => 0, 't3ver_wsid' => 0, 't3ver_state' => 0, 't3ver_stage' => 0, - 'title' => "Styleguide Demo Category", + 'title' => '"Category 1"', 'items' => 0, 'parent' => 0, 'fe_group' => "0", @@ -85,42 +85,42 @@ public function testFindByPropertyWithJoinReturnsJoinedRows(): void 'import_id' => "", 'import_source' => "", 'seo_title' => "", - 'seo_description' => null, + 'seo_description' => '', 'seo_headline' => "", - 'seo_text' => null, - 'slug' => "styleguide-demo-category", + 'seo_text' => '', + 'slug' => '"category-1"', ], ], - '427137b54c066f401f490c1af0aea53e5ed70536' => [ + 'a991a8cbb167889a955eecbdba10bb99a9d8ec4d' => [ 'mmtbl' => [ - 'uid_local' => 1, - 'uid_foreign' => 180, + 'uid_local' => 2, + 'uid_foreign' => 78, 'sorting' => 0, 'sorting_foreign' => 1, 'tablenames' => "pages", 'fieldname' => "categories", ], 'table' => [ - 'uid' => 1, - 'pid' => 168, - 'tstamp' => 1660120355, - 'crdate' => 1660120355, + 'uid' => 2, + 'pid' => 1, + 'tstamp' => 1730129781, + 'crdate' => 1730129781, 'deleted' => 0, 'hidden' => 0, 'starttime' => 0, 'endtime' => 0, - 'sorting' => 256, + 'sorting' => 512, 'description' => "", 'sys_language_uid' => 0, 'l10n_parent' => 0, - 'l10n_state' => null, + 'l10n_state' => '"NULL"', 't3_origuid' => 0, 'l10n_diffsource' => "", 't3ver_oid' => 0, 't3ver_wsid' => 0, 't3ver_state' => 0, 't3ver_stage' => 0, - 'title' => "Styleguide Demo Category", + 'title' => '"Category 2"', 'items' => 0, 'parent' => 0, 'fe_group' => "0", @@ -130,10 +130,10 @@ public function testFindByPropertyWithJoinReturnsJoinedRows(): void 'import_id' => "", 'import_source' => "", 'seo_title' => "", - 'seo_description' => null, + 'seo_description' => '', 'seo_headline' => "", - 'seo_text' => null, - 'slug' => "styleguide-demo-category", + 'seo_text' => '', + 'slug' => '"category-2"', ], ], ], $rows);