Current File : /home/pacjaorg/public_html/km/administrator/components/com_djclassifieds/controllers/offers.php
<?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;

class DJClassifiedsControllerOffers extends JControllerAdmin
{
	public function getModel($name = 'Offer', $prefix = 'DJClassifiedsModel', $config = array('ignore_request' => true))
	{
		$model = parent::getModel($name, $prefix, $config);

		return $model;
	}
	
	function changeStatus()
	{
		$app = JFactory::getApplication();
		$db = JFactory::getDBO();

		$ids = $app->input->get('cid', array());
				
		if(isset($ids[0])){
			$id = $ids[0];
			$status = $app->input->get('change_status_'.$id,'');
		}else{
			$redirect = 'index.php?option=com_djclassifieds&view=offers';
			$app->enqueueMessage(JText::_('COM_DJCLASSIFIEDS_WRONG_OFFER'), 'error');
	    	$app->redirect($redirect);
		}

		$query = "SELECT o.* FROM #__djcf_offers o WHERE o.id=".$id." LIMIT 1";		
		$db->setQuery($query);
		$offer = $db->loadObject();
		
		$query = "SELECT i.*, c.name as c_name,c.alias as c_alias, u.name as u_name, u.email as u_email FROM #__djcf_items i, #__djcf_categories c, #__users u  "
				."WHERE c.id=i.cat_id AND u.id=i.user_id AND i.id= ".$offer->item_id." LIMIT 1 ";
		$db->setQuery($query);
		$item = $db->loadObject();

		if($status==6){																			
			$query="UPDATE #__djcf_offers SET status=1, paid=1, confirmed=1,request=1,admin_paid=1 "
					." WHERE id=".$id;								
		}else if($status==5){																			
			$query="UPDATE #__djcf_offers SET status=1, paid=1, confirmed=1,request=1,admin_paid=0 "
					." WHERE id=".$id;								
		}else if($status==4){																			
			$query="UPDATE #__djcf_offers SET status=1, paid=1, confirmed=1,request=0,admin_paid=0 "
					." WHERE id=".$id;	
			$bidder = JFactory::getUser($offer->user_id);									
			DJClassifiedsNotify::notifyConfirmOfferAuthor($offer->item_id,$bidder,$offer->price,$offer->quantity);				
		}else if($status==3){																			
			$query="UPDATE #__djcf_offers SET status=1, paid=1, confirmed=0,request=0,admin_paid=0 "
				." WHERE id=".$id;								
		}else if($status==2){																			
			$query="UPDATE #__djcf_offers SET status=2, paid=0, confirmed=0,request=0,admin_paid=0 "
				." WHERE id=".$id;		
				
				$bidder = JFactory::getUser($offer->user_id);
					
				$offer_info = array();
				$offer_info['price'] = $offer->price;
				$offer_info['quantity'] = $offer->quantity;
				$offer_info['msg'] = $offer->message;
				$offer_info['offerer_name'] = $bidder->name;
				$offer_info['offerer_email'] = $bidder->email;
				$offer_info['status'] = 2;
				$offer_info['response'] = $offer->response;
					
				DJClassifiedsNotify::messageOfferAuthorToOfferer($id,$bidder,$item,$offer_info);					
										
		}else if($status==1){																			
			$query="UPDATE #__djcf_offers SET status=1, paid=0, confirmed=0,request=0,admin_paid=0 "
				." WHERE id=".$id;								
								
				$bidder = JFactory::getUser($offer->user_id);
					
				$offer_info = array();
				$offer_info['price'] = $offer->price;
				$offer_info['quantity'] = $offer->quantity;
				$offer_info['msg'] = $offer->message;
				$offer_info['offerer_name'] = $bidder->name;
				$offer_info['offerer_email'] = $bidder->email;
				$offer_info['status'] = 1;
				$offer_info['response'] = $offer->response;
					
				DJClassifiedsNotify::messageOfferAuthorToOfferer($id,$bidder,$item,$offer_info);
				
		}else{																			
			$query="UPDATE #__djcf_offers SET status=0, paid=0, confirmed=0,request=0,admin_paid=0 "
				." WHERE id=".$id;								
		}      
		$db->setQuery($query);
		$db->execute();
		
		$app->enqueueMessage(JText::_('COM_DJCLASSIFIEDS_STATUS_CHANGED'), 'success');
	    $app->redirect('index.php?option=com_djclassifieds&view=offers');
	}

	function sendMessage()
	{		
		$app = JFactory::getApplication();
		$config = JFactory::getConfig();
		
		$mailto = $app->input->getVar('djmsg_email', '');
		$subject = $app->input->getVar('djmsg_title', '');
		$message = $app->input->get('djmsg_description', '', 'RAW');
		
		$mailfrom = $app->getCfg('mailfrom');
		$fromname = $config->get('sitename');
			
		$mailer = JFactory::getMailer();
		$mailer->sendMail($mailfrom, $fromname, $mailto, $subject, $message, $mode=1);
		
		$app->enqueueMessage(JText::_('COM_DJCLASSIFIEDS_MESSAGE_SENT'), 'success');
		$app->redirect('index.php?option=com_djclassifieds&view=offers');
	}

	public function exportCSV()
	{
		$app = JFactory::getApplication();
		$db = JFactory::getDBO();
		$ids = implode(',', $app->input->get('cid'));

		$db= JFactory::getDBO();				
			
		$query = "SELECT o.*, i.name as i_name, u.name as u_name, u.email as u_email, i.ui_name, i.ui_email,ui_id, p.date as p_date, p.id as p_id FROM #__djcf_offers o "
				."LEFT JOIN (SELECT i.*, u.name as ui_name, u.email as ui_email, u.id as ui_id FROM #__djcf_items i, #__users u 
							WHERE u.id=i.user_id ) i ON i.id=o.item_id "
				."LEFT JOIN (SELECT p.* FROM #__djcf_payments p
							WHERE p.type=5 AND p.status='Completed' ) p ON p.item_id=o.id "			
				."LEFT JOIN #__users u ON u.id=o.user_id "
				."WHERE o.id IN (".$ids.") ORDER BY o.id DESC";
		
		$db->setQuery($query);
		$offers = $db->loadObjectList();
			
		$fh = fopen('php://output', 'w');						
		ob_start();					
		foreach ($offers as $offer) {
			$line = array('','paypal',$offer->u_name,$offer->p_date,$offer->item_id,$offer->p_id,$offer->price,$offer->currency,$offer->date,'response_code','vendor_name','vendor_bank_info');
			fputcsv($fh, $line);
		}
		
		$csv_content = ob_get_clean();
		
		$filename = 'DJ-Classifieds_offers_' . date('Y-m-d_His');
		
		header('Pragma: public');
		header('Expires: 0');
		header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
		header('Cache-Control: private', false);
		header('Content-Type: application/octet-stream');
		header('Content-Disposition: attachment; filename="' . $filename . '.csv";');
		header('Content-Transfer-Encoding: binary');

		exit($csv_content);	
	}

}
Site is undergoing maintenance

PACJA Events

Maintenance mode is on

Site will be available soon. Thank you for your patience!