-- Pesyje - Review Reactions
-- Krijon tabelen e reagimeve dhe perkthimet SQ/EN.
-- Bej backup para importimit.

SET NAMES utf8mb4;
START TRANSACTION;

CREATE TABLE IF NOT EXISTS `business_review_reactions` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `business_review_id` bigint unsigned NOT NULL,
  `user_id` bigint unsigned DEFAULT NULL,
  `actor_key` varchar(100) NOT NULL,
  `reaction` enum('helpful','thanks','love','oh_no') NOT NULL,
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `review_actor_unique` (`business_review_id`,`actor_key`),
  KEY `review_reaction_index` (`business_review_id`,`reaction`),
  KEY `reaction_user_index` (`user_id`),
  CONSTRAINT `review_reactions_review_fk` FOREIGN KEY (`business_review_id`)
    REFERENCES `business_reviews` (`id`) ON DELETE CASCADE,
  CONSTRAINT `review_reactions_user_fk` FOREIGN KEY (`user_id`)
    REFERENCES `users` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

UPDATE `translates` SET `value`='Helpful' WHERE `key`='Helpful' AND `lang`='en';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Helpful', 'Helpful', 'dynamic', 'en' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Helpful' AND `lang`='en');
UPDATE `translates` SET `value`='E dobishme' WHERE `key`='Helpful' AND `lang`='sq';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Helpful', 'E dobishme', 'dynamic', 'sq' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Helpful' AND `lang`='sq');
UPDATE `translates` SET `value`='Thanks' WHERE `key`='Thanks' AND `lang`='en';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Thanks', 'Thanks', 'dynamic', 'en' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Thanks' AND `lang`='en');
UPDATE `translates` SET `value`='Faleminderit' WHERE `key`='Thanks' AND `lang`='sq';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Thanks', 'Faleminderit', 'dynamic', 'sq' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Thanks' AND `lang`='sq');
UPDATE `translates` SET `value`='Love this' WHERE `key`='Love this' AND `lang`='en';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Love this', 'Love this', 'dynamic', 'en' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Love this' AND `lang`='en');
UPDATE `translates` SET `value`='Me pelqen shume' WHERE `key`='Love this' AND `lang`='sq';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Love this', 'Me pelqen shume', 'dynamic', 'sq' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Love this' AND `lang`='sq');
UPDATE `translates` SET `value`='Oh no' WHERE `key`='Oh no' AND `lang`='en';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Oh no', 'Oh no', 'dynamic', 'en' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Oh no' AND `lang`='en');
UPDATE `translates` SET `value`='Oh jo' WHERE `key`='Oh no' AND `lang`='sq';
INSERT INTO `translates` (`key`, `value`, `type`, `lang`) SELECT 'Oh no', 'Oh jo', 'dynamic', 'sq' WHERE NOT EXISTS (SELECT 1 FROM `translates` WHERE `key`='Oh no' AND `lang`='sq');

COMMIT;