From a76ae4606e89c4c30ae358b60780450b7e146235 Mon Sep 17 00:00:00 2001 From: joker Date: Thu, 4 Jan 2024 22:24:29 +0300 Subject: [PATCH] new file: src/pages/api/podcasts/rss/index.ts --- src/pages/api/podcasts/rss/index.ts | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/pages/api/podcasts/rss/index.ts diff --git a/src/pages/api/podcasts/rss/index.ts b/src/pages/api/podcasts/rss/index.ts new file mode 100644 index 0000000..a942372 --- /dev/null +++ b/src/pages/api/podcasts/rss/index.ts @@ -0,0 +1,29 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next' +import Select from "../../../../server/db/select"; +import Insert from "../../../../server/db/insert"; +import { getRssXml, Items } from '../../../../сomponents/podcasts'; + +const id = 4; + +const sql_company = "SELECT * FROM podcasts, company WHERE podcasts.id="+id; +const sql_items = "SELECT * FROM `podcasts`, items, company WHERE podcasts.id=items.id_podcasts ORDER BY items.pubDate DESC"; + +const sql_userAgent = "INSERT INTO views (id_podcasts, userAgent,ip) VALUES (?,?,?)"; + +export default function handler( + req: NextApiRequest, + res: NextApiResponse +) { + const views = [id, req.headers['user-agent'], req.socket.remoteAddress] + Select(sql_company, function(data_company : any){ + Select(sql_items, function(data_items : any){ + res.setHeader('Content-Type', 'text/xml'); + res.status(200).send(getRssXml(data_company[0])+data_items.map((rows : any) => Items(rows))+' '); + }) + + }) + Insert(sql_userAgent, views as string[], function(message){ + console.log(message); + }) +}