| Server IP : 54.36.91.62 / Your IP : 216.73.217.117 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/amisdesseniors-fr/vesoul/components/com_djclassifieds/ |
Upload File : |
<?php
/**
* @package DJ-Classifieds
* @copyright Copyright (C) DJ-Extensions.com, All rights reserved.
* @license http://www.gnu.org/licenses GNU/GPL
* @author url: http://dj-extensions.com
* @author email contact@dj-extensions.com
*/
defined ('_JEXEC') or die('Restricted access');
use Joomla\CMS\MVC\Controller\BaseController;
use Joomla\CMS\Plugin\PluginHelper;
use Joomla\CMS\Factory;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Component\ComponentHelper;
class DJClassifiedsController extends BaseController
{
function processPayment()
{
$app = Factory::getApplication();
$app->input->set('view', 'payment');
$app->input->set('layout', 'process');
parent::display();
}
function paymentReturn()
{
$app = Factory::getApplication();
$djmodel = new DJClassifiedsModel();
$r = $app->input->get('r');
$payment_id = $app->input->getInt('id');
$redirect = DJClassifiedsSEO::getCategoryRoute('0:all');
PluginHelper::importPlugin('djclassifiedspayment');
$app->triggerEvent('onDJClassifiedsPaymentReturnRedirect', array(&$redirect));
if($payment_id){
$payment = $djmodel->getPayment($payment_id);
if($payment){
if($r == 'ok'){
DJClassifiedsPayment::changePaymentReturnStatus($payment_id, 'Pending');
$redirect = DJClassifiedsPayment::getRedirectPage($payment->type, $payment->item_id);
}else{
DJClassifiedsPayment::changePaymentReturnStatus($payment_id, 'Cancelled');
$redirect = DJClassifiedsPayment::getRedirectPage($payment->type, $payment->item_id, false);
}
}
}
if($r == 'ok'){
$app->enqueueMessage(Text::_('COM_DJCLASSIFIEDS_THANKS_FOR_PAYMENT_WAIT_FOR_CONFIRMATION'), 'success');
}else{
$app->enqueueMessage(Text::_('COM_DJCLASSIFIEDS_PAYMENT_CANCELED'), 'warning');
}
$app->redirect(Route::_($redirect, false));
}
function cronNotifications()
{
$app = Factory::getApplication();
$par = ComponentHelper::getParams('com_djclassifieds');
if($par->get('notify_days_trigger','0')==3){
DJClassifiedsNotify::notifyExpired(0);
if($par->get('notify_prom_exp','0')){
DJClassifiedsNotify::notifyPromotionsExpired(0);
}
}
if($par->get('auto_delete_expired_enabled','0') || $par->get('auto_archive_expired_enabled','0')){
JLoader::register('DJClassifiedsControllerItems', JPATH_ROOT.'/administrator/components/com_djclassifieds/controllers/items.php');
$controller = new DJClassifiedsControllerItems();
if($par->get('auto_delete_expired_enabled','0')){
echo $controller->deleteExpired($par->get('auto_delete_expired','0')).'<br>';
}
if($par->get('auto_archive_expired_enabled','0')){
echo $controller->archiveExpired($par->get('auto_archive_expired','0')).'<br>';
}
}
if($par->get('auctions','0') || PluginHelper::isEnabled('djclassifieds', 'plans')){ // auctions might be enabled in plans
DJClassifiedsNotify::notifyAuctions();
}
$app->triggerEvent('onAfterDJClassifiedsCronNotifications', array());
echo 'done';
$app->close();
}
function cronOptimize()
{
$app = Factory::getApplication();
$db = Factory::getDBO();
$query = "SELECT * FROM #__djcf_images WHERE optimized=0 LIMIT 1";
$db->setQuery($query);
$image = $db->loadObject();
if($image){
$path = JPATH_SITE.$image->path.$image->name;
if (file_exists($path.'.'.$image->ext)){
if (file_exists($path.'_thb.'.$image->ext)){
DJClassifiedsImage::resmushitThumbnails($path.'_thb.'.$image->ext);
}
if (file_exists($path.'_th.'.$image->ext)){
DJClassifiedsImage::resmushitThumbnails($path.'_th.'.$image->ext);
}
if (file_exists($path.'_thm.'.$image->ext)){
DJClassifiedsImage::resmushitThumbnails($path.'_thm.'.$image->ext);
}
if (file_exists($path.'_ths.'.$image->ext)){
DJClassifiedsImage::resmushitThumbnails($path.'_ths.'.$image->ext);
}
}
$query = "UPDATE #__djcf_images SET optimized=1 WHERE id = ".$image->id;
$db->setQuery($query);
$db->execute();
echo 'Optimizing '.$image->id;
header("refresh: 0; url=".Uri::base().'index.php?option=com_djclassifieds&task=cronOptimize');
}else{
echo 'done';
}
$app->close();
}
function cronSearchNotifications()
{
$app = Factory::getApplication();
if($app->triggerEvent('onUpdateSearchAlerts', array())
|| $app->triggerEvent('updateSearchAlerts', array())){ // backward compatibility
DJClassifiedsNotify::notifySearchAlerts();
}
echo 'done';
$app->close();
}
function cronPayments()
{
PluginHelper::importPlugin('djclassifiedspayment');
$app = Factory::getApplication();
$app->triggerEvent('onDJClassifiedsCronPayments', array());
echo 'done';
$app->close();
}
public function imageupload()
{
DJClasssifiedsUpload::upload();
return true;
}
public function upload() // backward compatibility
{
return self::imageupload();
}
public function fileupload()
{
DJFilesUploadHelper::upload();
return true;
}
function download()
{
require_once(JPATH_ROOT.'/plugins/djclassifieds/files/helper.php');
$app = Factory::getApplication();
$file_id = $app->input->getInt('fid',0);
if (!DJClassifiedsFileHelper::getFile($file_id)){
throw new Exception('file not found', 404);
return false;
}
$app->close();
}
}