3.7.0-2017-03-09.sql
763 Bytes
UPDATE `#__categories` SET `published` = 1 WHERE `alias` = 'root';
UPDATE `#__categories` AS `c` INNER JOIN (
SELECT c2.id, CASE WHEN MIN(p.published) > 0 THEN MAX(p.published) ELSE MIN(p.published) END AS newPublished
FROM `#__categories` AS `c2`
INNER JOIN `#__categories` AS `p` ON p.lft <= c2.lft AND c2.rgt <= p.rgt
GROUP BY c2.id) c2
ON c.id = c2.id
SET published = c2.newPublished;
UPDATE `#__menu` SET `published` = 1 WHERE `alias` = 'root';
UPDATE `#__menu` AS `c` INNER JOIN (
SELECT c2.id, CASE WHEN MIN(p.published) > 0 THEN MAX(p.published) ELSE MIN(p.published) END AS newPublished
FROM `#__menu` AS `c2`
INNER JOIN `#__menu` AS `p` ON p.lft <= c2.lft AND c2.rgt <= p.rgt
GROUP BY c2.id) c2
ON c.id = c2.id
SET published = c2.newPublished;