-- CreateTable
CREATE TABLE "event_documentations" (
    "id" SERIAL NOT NULL,
    "image" TEXT NOT NULL,
    "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "updatedAt" TIMESTAMP(3) NOT NULL,

    CONSTRAINT "event_documentations_pkey" PRIMARY KEY ("id")
);

-- CreateTable
CREATE TABLE "event_documentation_assignments" (
    "eventId" INTEGER NOT NULL,
    "documentationId" INTEGER NOT NULL,

    CONSTRAINT "event_documentation_assignments_pkey" PRIMARY KEY ("eventId","documentationId")
);

-- CreateTable
CREATE TABLE "event_testimonials" (
    "id" SERIAL NOT NULL,
    "name" TEXT NOT NULL,
    "avatar" TEXT,
    "content" TEXT NOT NULL,
    "rating" INTEGER NOT NULL DEFAULT 5,
    "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "updatedAt" TIMESTAMP(3) NOT NULL,

    CONSTRAINT "event_testimonials_pkey" PRIMARY KEY ("id")
);

-- CreateTable
CREATE TABLE "event_testimonial_assignments" (
    "eventId" INTEGER NOT NULL,
    "testimonialId" INTEGER NOT NULL,

    CONSTRAINT "event_testimonial_assignments_pkey" PRIMARY KEY ("eventId","testimonialId")
);

-- AddForeignKey
ALTER TABLE "event_documentation_assignments" ADD CONSTRAINT "event_documentation_assignments_eventId_fkey" FOREIGN KEY ("eventId") REFERENCES "events"("id") ON DELETE CASCADE ON UPDATE CASCADE;

-- AddForeignKey
ALTER TABLE "event_documentation_assignments" ADD CONSTRAINT "event_documentation_assignments_documentationId_fkey" FOREIGN KEY ("documentationId") REFERENCES "event_documentations"("id") ON DELETE CASCADE ON UPDATE CASCADE;

-- AddForeignKey
ALTER TABLE "event_testimonial_assignments" ADD CONSTRAINT "event_testimonial_assignments_eventId_fkey" FOREIGN KEY ("eventId") REFERENCES "events"("id") ON DELETE CASCADE ON UPDATE CASCADE;

-- AddForeignKey
ALTER TABLE "event_testimonial_assignments" ADD CONSTRAINT "event_testimonial_assignments_testimonialId_fkey" FOREIGN KEY ("testimonialId") REFERENCES "event_testimonials"("id") ON DELETE CASCADE ON UPDATE CASCADE;
