Add Switzerland (#281)
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
-- Add Switzerland sites
|
||||
|
||||
-- Add currency
|
||||
INSERT INTO "i18n-currencies" (iso3char, symbol, fractional_parts, exchange_rate, locale)
|
||||
VALUES ('CHF', 'fr.', 0, 0.0985, 'de_CH.UTF-8');
|
||||
INSERT INTO "product-currencies" (iso3char, exchange_rate) VALUES ('CHF', 0.0985);
|
||||
|
||||
-- Add locales, market, market locales
|
||||
INSERT INTO locales (value, name, fallback_id) VALUES
|
||||
('de_CH', 'German (Switzerland)', (select id from locales where value = 'de_DE')),
|
||||
('fr_CH', 'French (Switzerland)', (select id from locales where value = 'fr_FR')),
|
||||
('it_CH', 'Italian (Switzerland)', (select id from locales where value = 'it_IT'));
|
||||
|
||||
INSERT INTO markets (name, vat, currency, price_adjustment) VALUES ('CH', 1.077, 'CHF', 1.1);
|
||||
|
||||
INSERT INTO market_locales (market_id, locale_id, name) VALUES
|
||||
((SELECT id FROM markets WHERE name = 'CH'), (SELECT id FROM locales WHERE value = 'de_CH'), 'Switzerland (German)'),
|
||||
((SELECT id FROM markets WHERE name = 'CH'), (SELECT id FROM locales WHERE value = 'fr_CH'), 'Switzerland (French)'),
|
||||
((SELECT id FROM markets WHERE name = 'CH'), (SELECT id FROM locales WHERE value = 'it_CH'), 'Switzerland (Italian)');
|
||||
|
||||
|
||||
-- Copy collections
|
||||
INSERT INTO collections_texts (collection_id, meta_title, meta_description, title, description, slug, locale_id)
|
||||
SELECT collection_id, meta_title, meta_description, title, description, slug, (SELECT id FROM locales WHERE value = 'de_CH')
|
||||
FROM collections_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'de_DE');
|
||||
|
||||
INSERT INTO collections_texts (collection_id, meta_title, meta_description, title, description, slug, locale_id)
|
||||
SELECT collection_id, meta_title, meta_description, title, description, slug, (SELECT id FROM locales WHERE value = 'fr_CH')
|
||||
FROM collections_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'fr_FR');
|
||||
|
||||
INSERT INTO collections_texts (collection_id, meta_title, meta_description, title, description, slug, locale_id)
|
||||
SELECT collection_id, meta_title, meta_description, title, description, slug, (SELECT id FROM locales WHERE value = 'it_CH')
|
||||
FROM collections_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'it_IT');
|
||||
|
||||
|
||||
-- Copy designer texts
|
||||
INSERT INTO designer_texts (designerid, header, description, locale_id)
|
||||
SELECT designerid, header, description, (SELECT id FROM locales WHERE value = 'de_CH')
|
||||
FROM designer_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'de_DE');
|
||||
|
||||
INSERT INTO designer_texts (designerid, header, description, locale_id)
|
||||
SELECT designerid, header, description, (SELECT id FROM locales WHERE value = 'fr_CH')
|
||||
FROM designer_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'fr_FR');
|
||||
|
||||
INSERT INTO designer_texts (designerid, header, description, locale_id)
|
||||
SELECT designerid, header, description, (SELECT id FROM locales WHERE value = 'it_CH')
|
||||
FROM designer_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'it_IT');
|
||||
|
||||
|
||||
-- Copy category data (page titles, meta descriptions), and category texts
|
||||
INSERT INTO categorydata (category_id, datakey_id, text, locale_id)
|
||||
SELECT category_id, datakey_id, text, (SELECT id FROM locales WHERE value = 'de_CH')
|
||||
FROM categorydata WHERE locale_id = (SELECT id FROM locales WHERE value = 'de_DE');
|
||||
|
||||
INSERT INTO categorydata (category_id, datakey_id, text, locale_id)
|
||||
SELECT category_id, datakey_id, text, (SELECT id FROM locales WHERE value = 'fr_CH')
|
||||
FROM categorydata WHERE locale_id = (SELECT id FROM locales WHERE value = 'fr_FR');
|
||||
|
||||
INSERT INTO categorydata (category_id, datakey_id, text, locale_id)
|
||||
SELECT category_id, datakey_id, text, (SELECT id FROM locales WHERE value = 'it_CH')
|
||||
FROM categorydata WHERE locale_id = (SELECT id FROM locales WHERE value = 'it_IT');
|
||||
|
||||
INSERT INTO category_texts (locale_id, category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description)
|
||||
SELECT (SELECT id FROM locales WHERE value = 'de_CH'), category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description
|
||||
FROM category_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'de_DE');
|
||||
|
||||
INSERT INTO category_texts (locale_id, category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description)
|
||||
SELECT (SELECT id FROM locales WHERE value = 'fr_CH'), category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description
|
||||
FROM category_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'fr_FR');
|
||||
|
||||
INSERT INTO category_texts (locale_id, category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description)
|
||||
SELECT (SELECT id FROM locales WHERE value = 'it_CH'), category_id, wallpaper_name, wallpaper_h1, wallpaper_description, canvas_name, canvas_h1, canvas_description, name, design_wallpaper_h1, design_wallpaper_description, poster_name, poster_h1, poster_description, framed_print_name, framed_print_h1, framed_print_description
|
||||
FROM category_texts WHERE locale_id = (SELECT id FROM locales WHERE value = 'it_IT');
|
||||
|
||||
|
||||
-- Copy blacklisted products
|
||||
INSERT INTO product_blacklist (product_id, group_id, market_id)
|
||||
SELECT product_id, group_id, (select id from markets where name = 'CH')
|
||||
FROM product_blacklist WHERE market_id = (select id from markets where name = 'GLOBAL');
|
||||
|
||||
|
||||
-- Add delivery methods
|
||||
INSERT INTO "delivery-methods_prices" (territory, currency, option, option_value, price, method) VALUES
|
||||
('CH', 'CHF', '', '', 0, (select id from "delivery-methods" where name = 'samplesDelivery')),
|
||||
('CH', 'CHF', '', '', 0, (select id from "delivery-methods" where name = 'dhlEconomyWorld')),
|
||||
('CH', 'CHF', '', '', (SELECT 35 / vat FROM markets WHERE name = 'CH'), (select id from "delivery-methods" where name = 'dhl'));
|
||||
|
||||
|
||||
-- Add invoice sequence
|
||||
CREATE SEQUENCE "order-invoiceIdCH" start 1000;
|
||||
|
||||
|
||||
-- Copy popular links text tags to override the fallback values (because the prefix will be wrong)
|
||||
INSERT INTO "i18n-texts_data" (textid, text, locale_id)
|
||||
SELECT textid, replace(text, 'href="/', 'href="/ch-de/'), (select id from locales where value = 'de_CH')
|
||||
FROM "i18n-texts" join "i18n-texts_data" using (textid)
|
||||
where name ilike 'popular-links-%' and locale_id = (select id from locales where value = 'de_DE');
|
||||
|
||||
INSERT INTO "i18n-texts_data" (textid, text, locale_id)
|
||||
SELECT textid, replace(text, 'href="/', 'href="/ch-fr/'), (select id from locales where value = 'fr_CH')
|
||||
FROM "i18n-texts" join "i18n-texts_data" using (textid)
|
||||
where name ilike 'popular-links-%' and locale_id = (select id from locales where value = 'fr_FR');
|
||||
|
||||
INSERT INTO "i18n-texts_data" (textid, text, locale_id)
|
||||
SELECT textid, replace(text, '/it/', '/ch-it/'), (select id from locales where value = 'it_CH')
|
||||
FROM "i18n-texts" join "i18n-texts_data" using (textid)
|
||||
where name ilike 'popular-links-%' and locale_id = (select id from locales where value = 'it_IT');
|
||||
|
||||
Reference in New Issue
Block a user