Awaiting an answer SP Page Builder

SP Page Builder isn't working

Asked by Michael Ahrens 1 year ago Last activity 1 year ago

Hi @ALl,

i installed joomla 6 and SP Page Builder 6.
After that i tried to use Page Builder. No rendering and i get an error.

https://familie-ahrens.eu/administrator

I created a joomshaper User:

login: joomshaper
pw: Welcome1_Welcome1

An error has occurred.
42883 42883, 7, ERROR: operator does not exist: character varying = integer LINE 3: WHERE "client_id" = 0 AND "home" = 1 ^ HINT: No operator matches the given name and argument types. You might need to add explicit type casts.

2 replies

Atick Eashrak Shuvo Staff

Hello Michael,

Sorry for the inconvenience you're experiencing. To investigate this further, would you be willing to allow me to take a full site backup to check the issue on my local machine?

Looking forward to your response.

Best regards

Michael Ahrens Asked this

Hi Atick, it seems is solved the Problem, but for shure it would be nice if you can chek it. Yes you can take a backup. What i had done, i changed some tables in postscript.

-- ================================================
-- FIX TYPE MISMATCH: client_id / home → smallint
-- Für Joomla (Helix Ultimate / PageBuilder)
-- Schema: public
-- Tabellen: ndgfa_menu, ndgfa_template_styles
-- ================================================

DO $$
BEGIN

-- TEMPLATE_STYLES: client_id

IF EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema='public' AND table_name='ndgfa_template_styles'
AND column_name='client_id' AND data_type <> 'smallint'
) THEN
EXECUTE $q$
ALTER TABLE public.ndgfa_template_styles
ALTER COLUMN client_id DROP DEFAULT,
ALTER COLUMN client_id TYPE smallint
USING CASE
WHEN client_id ~ '^[0-9]+$' THEN client_id::int
WHEN client_id IN ('t','true','TRUE') THEN 1
WHEN client_id IN ('f','false','FALSE') THEN 0
ELSE 0
END,
ALTER COLUMN client_id SET DEFAULT 0
$q$;
END IF;


-- TEMPLATE_STYLES: home

IF EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema='public' AND table_name='ndgfa_template_styles'
AND column_name='home' AND data_type <> 'smallint'
) THEN
EXECUTE $q$
ALTER TABLE public.ndgfa_template_styles
ALTER COLUMN home DROP DEFAULT,
ALTER COLUMN home TYPE smallint
USING CASE
WHEN home ~ '^[0-9]+$' THEN home::int
WHEN home IN ('t','true','TRUE') THEN 1
WHEN home IN ('f','false','FALSE') THEN 0
ELSE 0
END,
ALTER COLUMN home SET DEFAULT 0
$q$;
END IF;


-- MENU: client_id

IF EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema='public' AND table_name='ndgfa_menu'
AND column_name='client_id' AND data_type <> 'smallint'
) THEN
EXECUTE $q$
ALTER TABLE public.ndgfa_menu
ALTER COLUMN client_id DROP DEFAULT,
ALTER COLUMN client_id TYPE smallint
USING CASE
WHEN client_id ~ '^[0-9]+$' THEN client_id::int
WHEN client_id IN ('t','true','TRUE') THEN 1
WHEN client_id IN ('f','false','FALSE') THEN 0
ELSE 0
END,
ALTER COLUMN client_id SET DEFAULT 0
$q$;
END IF;


-- MENU: home

IF EXISTS (
SELECT 1 FROM information_schema.columns
WHERE table_schema='public' AND table_name='ndgfa_menu'
AND column_name='home' AND data_type <> 'smallint'
) THEN
EXECUTE $q$
ALTER TABLE public.ndgfa_menu
ALTER COLUMN home DROP DEFAULT,
ALTER COLUMN home TYPE smallint
USING CASE
WHEN home ~ '^[0-9]+$' THEN home::int
WHEN home IN ('t','true','TRUE') THEN 1
WHEN home IN ('f','false','FALSE') THEN 0
ELSE 0
END,
ALTER COLUMN home SET DEFAULT 0
$q$;
END IF;
END$$;

Log in to reply.