diff --git a/Jenkinsfile b/Jenkinsfile index 6bde369..7dc2df4 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -22,6 +22,10 @@ def ENV_LAYOUT = [ pipeline { agent { label 'jagent06' } + options { + disableConcurrentBuilds() + } + triggers { GenericTrigger( causeString: 'Triggered by Gitea webhook', @@ -149,7 +153,7 @@ pipeline { success { script { emailext( - subject: "[Jenkins] ${env.JOB_NAME} #${env.BUILD_NUMBER} succeeded", + subject: "[DEV] ${env.JOB_NAME} #${env.BUILD_NUMBER} succeeded", body: renderEmail('Build succeeded', '#16a34a', buildInfo()), mimeType: 'text/html', to: 'admin@msigmagokulam.com, ashir@mgsigma.net, kailasdevdas@msigmagokulam.com' @@ -159,7 +163,7 @@ pipeline { failure { script { emailext( - subject: "[Jenkins] ${env.JOB_NAME} #${env.BUILD_NUMBER} failed", + subject: "[DEV] ${env.JOB_NAME} #${env.BUILD_NUMBER} failed", body: renderEmail('Build failed', '#dc2626', buildInfo()), mimeType: 'text/html', to: 'admin@msigmagokulam.com, ashir@mgsigma.net, kailasdevdas@msigmagokulam.com' @@ -189,7 +193,7 @@ def renderEmail(String label, String accent, Map info) {
-
${label}
+
${label} ยท development
${env.JOB_NAME} · #${env.BUILD_NUMBER}
diff --git a/Jenkinsfile.prod b/Jenkinsfile.prod index ccab6a6..039ca40 100644 --- a/Jenkinsfile.prod +++ b/Jenkinsfile.prod @@ -24,6 +24,10 @@ pipeline { label 'jagent06' } + options { + disableConcurrentBuilds() + } + environment { REMOTE_HOST = "root@170.187.237.83" REMOTE_DEPLOY_DIR = "/root/gg-backend" @@ -152,7 +156,7 @@ pipeline { success { script { emailext( - subject: "[PRODUCTION] ${env.JOB_NAME} #${env.BUILD_NUMBER} succeeded", + subject: "[PROD] ${env.JOB_NAME} #${env.BUILD_NUMBER} succeeded", body: renderEmail('Build succeeded', '#16a34a', buildInfo()), mimeType: 'text/html', to: 'admin@msigmagokulam.com, ashir@mgsigma.net, kailasdevdas@msigmagokulam.com' @@ -162,7 +166,7 @@ pipeline { failure { script { emailext( - subject: "[PRODUCTION] ${env.JOB_NAME} #${env.BUILD_NUMBER} failed", + subject: "[PROD] ${env.JOB_NAME} #${env.BUILD_NUMBER} failed", body: renderEmail('Build failed', '#dc2626', buildInfo()), mimeType: 'text/html', to: 'admin@msigmagokulam.com, ashir@mgsigma.net, kailasdevdas@msigmagokulam.com' diff --git a/backend/src/controllers/newsMedia.controller.js b/backend/src/controllers/newsMedia.controller.js index 4bf935f..052e181 100644 --- a/backend/src/controllers/newsMedia.controller.js +++ b/backend/src/controllers/newsMedia.controller.js @@ -4,8 +4,8 @@ import prisma from "../prisma/client.js"; export const getAllNews = async (req, res) => { try { - const page = parseInt(req.query.page) || 1; - const limit = parseInt(req.query.limit) || 10; + const page = req.query.page ? parseInt(req.query.page) : null; + const limit = req.query.limit ? parseInt(req.query.limit) : null; const search = req.query.search?.trim() || ""; const includeImages = { @@ -25,7 +25,8 @@ export const getAllNews = async (req, res) => { ...searchFilter, }; - const skip = (page - 1) * limit; + const skip = page && limit ? (page - 1) * limit : undefined; + const take = limit ? limit : undefined; const [news, total] = await Promise.all([ prisma.newsMedia.findMany({ @@ -33,7 +34,7 @@ export const getAllNews = async (req, res) => { include: includeImages, orderBy: { createdAt: "desc" }, skip, - take: limit, + take, }), prisma.newsMedia.count({ where: whereCondition, @@ -59,9 +60,9 @@ export const getAllNews = async (req, res) => { data: response, meta: { total, - page, - limit, - totalPages: Math.ceil(total / limit), + page: page || 1, + limit: limit || total, + totalPages: limit ? Math.ceil(total / limit) : 1, }, }); } catch (error) { diff --git a/frontend/src/pages/newsMedia.tsx b/frontend/src/pages/newsMedia.tsx index 3e10021..e9427bc 100644 --- a/frontend/src/pages/newsMedia.tsx +++ b/frontend/src/pages/newsMedia.tsx @@ -136,10 +136,19 @@ export default function NewsPage() { async function handleSubmit() { try { + const submissionData = { + ...form, + firstPara: form.headline, + content: + form.secondPara.length > 100 + ? form.secondPara.substring(0, 100) + "..." + : form.secondPara, + }; + if (editing) { - await updateNewsApi(editing.Id, form); + await updateNewsApi(editing.Id, submissionData); } else { - await createNewsApi(form); + await createNewsApi(submissionData); } setOpenModal(false); fetchAll(); @@ -411,21 +420,10 @@ export default function NewsPage() {
- +