From 04ab01a00e59a729a0770c3290724d3ee5681675 Mon Sep 17 00:00:00 2001 From: ttpl-rt-232 Date: Wed, 31 Dec 2025 11:09:20 +0530 Subject: [PATCH 1/2] Task #000000 chore : Bulk Course Assignment Failing Due to Database Connection Limit --- .../administrator/controllers/bulktrainingrecord.json.php | 5 +++-- .../administrator/models/bulktrainingrecord.php | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php b/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php index 492ac0db..34573a22 100644 --- a/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php +++ b/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php @@ -91,7 +91,8 @@ public function save($key = null, $urlVar = null) $data['is_external'] = 1; unset($data['assigned_user_id']); - + $queueProducer = new TJQueueProduce; + foreach ($userIds as $userId) { if (ComponentHelper::isEnabled($this->comMultiAgency) && $params->get('enable_multiagency')) @@ -132,7 +133,7 @@ public function save($key = null, $urlVar = null) if (ComponentHelper::isEnabled('com_tjqueue') && $params->get('tjqueue_records')) { $recordsModel = TJCERT::model('BulkTrainingRecord', array('ignore_request' => true)); - $response = $recordsModel->addToQueue($data); + $response = $recordsModel->addToQueue($data, $queueProducer); $msg = $response ? Text::_("COM_TJCERTIFICATE_RECORDS_ADDED_TO_QUEUE_SUCCESSFULLY") : Text::_("COM_TJCERTIFICATE_RECORDS_FAILED"); $returnData['msg'] = $msg; } diff --git a/src/components/com_tjcertificate/administrator/models/bulktrainingrecord.php b/src/components/com_tjcertificate/administrator/models/bulktrainingrecord.php index d7d2c36c..56b9a294 100644 --- a/src/components/com_tjcertificate/administrator/models/bulktrainingrecord.php +++ b/src/components/com_tjcertificate/administrator/models/bulktrainingrecord.php @@ -107,14 +107,14 @@ public function validate($form, $data, $group = null) * * @since __DEPLOY_VERSION__ */ - public function addToQueue($data) + public function addToQueue($data, $queueProducer = null) { $return = array(); $messageBody = (object) $data; + $TJQueueProduce = $queueProducer ?: new TJQueueProduce; try { - $TJQueueProduce = new TJQueueProduce; // Set message body $TJQueueProduce->message->setBody(json_encode($messageBody)); From fbe5874a29b78315928f3475f007c7dab994f595 Mon Sep 17 00:00:00 2001 From: ttpl-rt-232 Date: Wed, 31 Dec 2025 12:03:13 +0530 Subject: [PATCH 2/2] Task #000000 chore : Bulk Course Assignment Failing Due to Database Connection Limit --- .../administrator/controllers/bulktrainingrecord.json.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php b/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php index 34573a22..5fe32019 100644 --- a/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php +++ b/src/components/com_tjcertificate/administrator/controllers/bulktrainingrecord.json.php @@ -17,6 +17,7 @@ use Joomla\CMS\Session\Session; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\Component\ComponentHelper; +use TJQueue\Admin\TJQueueProduce; /** * The Tj Certificate Training Records controller