From 992851462d8cab2d7f903ac6c495e4f7fa6bbc18 Mon Sep 17 00:00:00 2001 From: "CHIEFSOFT\\ameye" Date: Sat, 5 Oct 2024 04:48:04 -0400 Subject: [PATCH] message added emails --- wrenchboard/src/shared_tool/contract.cc | 2 +- wrenchboard/src/shared_tool/cron_email.cc | 2 +- wrenchboard/src/shared_tool/email.cc | 117 ++++++++++++---------- 3 files changed, 66 insertions(+), 55 deletions(-) diff --git a/wrenchboard/src/shared_tool/contract.cc b/wrenchboard/src/shared_tool/contract.cc index 7b31018b..79e13b53 100644 --- a/wrenchboard/src/shared_tool/contract.cc +++ b/wrenchboard/src/shared_tool/contract.cc @@ -348,7 +348,7 @@ long WrenchContractMessage( CVars in, CVars &out ) if (message_id) { ret = PHP_CREATED_OK; - x["message_id"] = message_id; x["message_id"].set_valid( true ); + x["message_id"] = message_id; x["message_id"].set_valid( true ); job_email(JOBS_MESSAGE_ADDED,x,out); load_db_record( out, "SELECT *,id AS message_id FROM jobs_contract_message WHERE id = %lu ", message_id ); out["status"] = "Message Sent"; diff --git a/wrenchboard/src/shared_tool/cron_email.cc b/wrenchboard/src/shared_tool/cron_email.cc index b5427cb1..3cebf26b 100644 --- a/wrenchboard/src/shared_tool/cron_email.cc +++ b/wrenchboard/src/shared_tool/cron_email.cc @@ -101,7 +101,7 @@ CREATE TABLE email_message( out["total_record"] = "0"; const PGresult *res; res = pgsql_query("SELECT * FROM email_message " - " WHERE topic IN ('JOBS_INDIVIDUAL_OFFER_MAIL', 'JOBS_OFFER_INTEREST_MAIL') " + " WHERE topic IN ('JOBS_INDIVIDUAL_OFFER_MAIL', 'JOBS_OFFER_INTEREST_MAIL', 'JOBS_GROUP_OFFER_PUBLIC', 'JOBS_MESSAGE_ADDED') " " AND status = 1 ORDER BY id ASC LIMIT 20"); if (res != NULL && pgsql_num_rows(res) > 0) { diff --git a/wrenchboard/src/shared_tool/email.cc b/wrenchboard/src/shared_tool/email.cc index 2975c534..81626d09 100644 --- a/wrenchboard/src/shared_tool/email.cc +++ b/wrenchboard/src/shared_tool/email.cc @@ -839,6 +839,7 @@ long job_email(long mailtype, CVars in, CVars &out) { form.LetStr("subject", "Job Offer Canceled"); form.LetStr("email", x["email"].c_str()); form.Email("JOB/job_offer_cancel.mailfile"); + } break; @@ -895,9 +896,13 @@ long job_email(long mailtype, CVars in, CVars &out) { if (load_db_record(y, "SELECT email,balance,firstname FROM members WHERE id = %lu", x["member_id"].Long())) { vars2form(y, form); // vars2form( x, form ); - form.LetStr("subject", "Job Offer Posted to the Public"); - form.LetStr("email", y["email"].c_str()); - form.Email("JOB/job_offer_public.mailfile"); +// form.LetStr("subject", "Job Offer Posted to the Public"); +// form.LetStr("email", y["email"].c_str()); +// form.Email("JOB/job_offer_public.mailfile"); + ml["action"] = JOBS_GROUP_OFFER_PUBLIC; ml["action"].set_valid( true ); + ml["topic"] = "JOBS_GROUP_OFFER_PUBLIC"; ml["topic"].set_valid( true ); + ml["offer_id"] = in["offer_id"]; ml["offer_id"].set_valid( true ); + submit_cron_email(ml); } } break; @@ -905,58 +910,64 @@ long job_email(long mailtype, CVars in, CVars &out) { case JOBS_MESSAGE_ADDED: logfmt(logINFO, "JOBS_MESSAGE_ADDED"); - res = pgsql_query("SELECT m.firstname,mj.title,c.member_id,c.client_id,j.contract,j.msg_type,substring(j.message,0,550) AS message," - " to_char(j.created, 'Day Mon dd, yyyy HH:MI AM') AS added " - " FROM jobs_contract_message j " - " LEFT JOIN members_jobs_contract c ON c.contract = j.contract " - " LEFT JOIN members m ON m.id=j.member_id LEFT JOIN members_jobs mj ON mj.id = c.job_id " - " WHERE j.contract='%s' ORDER BY j.id desc LIMIT 4", in["contract"].c_str()); - CVars rec; - if (res != NULL && pgsql_num_rows(res) > 0) { - - out["total_record"] = pgsql_num_rows(res); - - for (int i = 0, n = pgsql_num_rows(res); i < n; i++) { - x["color"] = "FFFFFF"; - if (c > 0) { - in["color"] = "ebfaeb"; - } - - c++; - mapf = pgsql_fetch_assoc(res, i); - if (f.empty()) continue; - - map_to_cvars(f, rec); - - sprintf(listing_items, "%s
", in["color"].c_str(), rec["message"].c_str()); - inv_list->LetStr("pin", listing_items); - inv_list->CloseElement(); - //
- if (c > 1) { - c = 0; - } - } + ml["action"] = JOBS_MESSAGE_ADDED; ml["action"].set_valid( true ); + ml["topic"] = "JOBS_MESSAGE_ADDED"; ml["topic"].set_valid( true ); + ml["contract"] = in["contract"]; ml["contract"].set_valid( true ); + submit_cron_email(ml); - vars2form(rec, form); - if (load_db_record(y, "SELECT email FROM members WHERE id = %lu", rec["member_id"].Long())) { - vars2form(x, form); - form.LetStr("subject", "Activity Message Sent"); - form.LetStr("email", y["email"].c_str()); - form.Email("JOB/job_message_m.mailfile"); - } - - vars2form(x, form); // not sure if I have to rebind again - if (load_db_record(z, "SELECT email FROM members WHERE id = %lu", rec["client_id"].Long())) { - vars2form(x, form); - form.LetStr("subject", "Activity Message Received"); - form.LetStr("email", z["email"].c_str()); - form.Email("JOB/job_message.mailfile"); - } - - - - } +// res = pgsql_query("SELECT m.firstname,mj.title,c.member_id,c.client_id,j.contract,j.msg_type,substring(j.message,0,550) AS message," +// " to_char(j.created, 'Day Mon dd, yyyy HH:MI AM') AS added , c.id AS contract_id " +// " FROM jobs_contract_message j " +// " LEFT JOIN members_jobs_contract c ON c.contract = j.contract " +// " LEFT JOIN members m ON m.id=j.member_id LEFT JOIN members_jobs mj ON mj.id = c.job_id " +// " WHERE j.contract='%s' ORDER BY j.id desc LIMIT 4", in["contract"].c_str()); +// CVars rec; +// if (res != NULL && pgsql_num_rows(res) > 0) { +// +// out["total_record"] = pgsql_num_rows(res); +// +// for (int i = 0, n = pgsql_num_rows(res); i < n; i++) { +// in["color"] = "FFFFFF"; +// if (c > 0) { +// in["color"] = "ebfaeb"; +// } +// +// c++; +// mapf = pgsql_fetch_assoc(res, i); +// if (f.empty()) continue; +// +// map_to_cvars(f, rec); +// +// sprintf(listing_items, "%s
", in["color"].c_str(), rec["message"].c_str()); +// inv_list->LetStr("pin", listing_items); +// inv_list->CloseElement(); +// //
+// if (c > 1) { +// c = 0; +// } +// } +// +// +// vars2form(rec, form); +// if (load_db_record(y, "SELECT email FROM members WHERE id = %lu", rec["member_id"].Long())) { +// vars2form(x, form); +// form.LetStr("subject", "Activity Message Sent"); +// form.LetStr("email", y["email"].c_str()); +// form.Email("JOB/job_message_m.mailfile"); +// } +// +// vars2form(x, form); // not sure if I have to rebind again +// if (load_db_record(z, "SELECT email FROM members WHERE id = %lu", rec["client_id"].Long())) { +// vars2form(x, form); +// form.LetStr("subject", "Activity Message Received"); +// form.LetStr("email", z["email"].c_str()); +// form.Email("JOB/job_message.mailfile"); +// } +// +// +// +// } /* if (load_db_record(x, "SELECT m.firstname,mj.title,c.member_id,c.client_id,j.contract,j.msg_type,substring(j.message,0,550) AS message,"