| Server IP : 54.36.91.62 / Your IP : 216.73.217.112 Web Server : Apache System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : coopiak ( 151928) PHP Version : 8.3.23 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/coopiak/dansnotreville-fr/nice/components/com_rsfeedback/models/ |
Upload File : |
<?php
/**
* @package RSFeedback!
* @copyright (C) 2010-2018 www.rsjoomla.com
* @license GPL, http://www.gnu.org/copyleft/gpl.html
*/
defined('_JEXEC') or die('Restricted access');
use Joomla\CMS\MVC\Model\BaseDatabaseModel;
use Joomla\CMS\MVC\Model\AdminModel;
use Joomla\CMS\Mail\MailHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Table\Table;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Factory;
class RSFeedbackModelComment extends AdminModel
{
protected $_context = 'com_rsfeedback.comment';
public function getTable($type = 'Comment', $prefix = 'RSFeedbackTable', $config = array()) {
return Table::getInstance($type, $prefix, $config);
}
public function getForm($data = array(), $loadData = true) {
$form = $this->loadForm('com_rsfeedback.comment', 'comment', array('control' => 'jform', 'load_data' => $loadData));
if (empty($form))
return false;
return $form;
}
protected function loadFormData() {
$app = Factory::getApplication();
$user = Factory::getUser();
$data = array();
if (!$user->guest) {
$data['name'] = $user->name;
$data['email'] = $user->email;
}
$data = $app->getUserState('com_rsfeedback.edit.comment.data', $data);
return $data;
}
public function save($data) {
$db = Factory::getDbo();
$query = $db->getQuery(true);
$app = Factory::getApplication();
$input = $app->input;
$feedback_model = BaseDatabaseModel::getInstance('Feedback', 'RSFeedbackModel');
$feedback = $feedback_model->getItem($input->get('feedback_id'));
$config = Factory::getConfig();
if (parent::save($data)) {
$query->select($db->qn('name'))
->select($db->qn('email'))
->from($db->qn('#__rsfeedback_subscriptions'))
->where($db->qn('feedback_id') .' = '. $db->q($input->get('feedback_id', 0, 'int')));
$db->setQuery($query);
$subscribers = $db->loadObjectList();
$feedback_url = Uri::getInstance()->toString(array('scheme', 'host', 'port')).Route::_(RSFeedbackRoute::Feedback($input->get('feedback_id', 0, 'int')));
foreach ($subscribers as $subscriber) {
$subject = Text::sprintf('COM_RSFEEDBACK_A_NEW_COMMENT_WAS_POSTED_ON', $subscriber->name, $feedback->title);
$body = Text::sprintf('COM_RSFEEDBACK_A_NEW_COMMENT_WAS_POSTED_ON', $subscriber->name, $feedback->title).
Text::sprintf('COM_RSFEEDBACK_MAIL_COMMENT', $data['text']).'
<a href="'.$feedback_url.'" >'.Text::_('COM_RSFEEDBACK_CLICK_HERE').'</a> '.Text::_('COM_RSFEEDBACK_TO_VIEW_THE_COMMENT');
if (MailHelper::isEmailAddress(trim($subscriber->email))) {
try {
Factory::getMailer()->sendMail($config->get('mailfrom'), $config->get('fromname'), $subscriber->email, $subject, nl2br($body) , 1);
} catch (Exception $e) {}
}
}
return true;
}
}
}