import { Media } from "../lib/models.js";
import { knex } from "../lib/ormish.js";
import logging from '../lib/logging.js';
import assert from 'assert';
import { API } from '../lib/api.js';

const log = logging.create(import.meta.url);

export const get = async (req, res) => {
  const api = new API(req, res);
  try {
    const { media_id, really } = req.query;

    assert(media_id !== undefined, "media_id required");
    assert(really === "true" || really === "false", "really required");

    if(really === "true") {
      await knex(Media.table_name).increment('likes').where({id: media_id});
    } else {
      await knex(Media.table_name).increment('dislikes').where({id: media_id});
    }

    api.reply(200, {message: "OK" });
  } catch (error) {
    log.error(error);
    api.error(500, error.message || "Internal Server Error");
  }
}