Current File : /home/pacjaorg/public_html/km/administrator/components/com_djclassifieds/models/coupon.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 DJClassifiedsModelCoupon extends DJClassifiedsAdminModel
{
public function __construct($config = array())
{
$config['event_after_save'] = 'onDJClassifiedsModelAdminAfterSave';
$config['event_after_delete'] = 'onDJClassifiedsModelAdminAfterDelete';
parent::__construct($config);
}
public function getTable($type = 'Coupons', $prefix = 'DJClassifiedsTable', $config = array())
{
return JTable::getInstance($type, $prefix, $config);
}
public function getForm($data = array(), $loadData = true)
{
// Get the form.
$form = $this->loadForm('com_djclassifieds.coupon', 'coupon', array('control' => 'jform', 'load_data' => $loadData));
if (empty($form)) {
return false;
}
return $form;
}
protected function loadFormData()
{
$app = JFactory::getApplication();
$data = JFactory::getApplication()->getUserState('com_djclassifieds.edit.coupon.data', array());
if (empty($data)) {
$data = $this->getItem();
if($data->id){
$data->usergroup_access = $this->getUgAccess($data->id);
}
}
if(!$data->id && $app->input->getInt('multiple',0)==0){
$characters = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
for ($p = 0; $p < 6; $p++) {
$data->coupon_code .= $characters[mt_rand(0, strlen($characters)-1)];
}
}else if($app->input->getInt('multiple')>0){
$data->coupon_code = 1;
}
return $data;
}
private function getUgAccess($coupon_id)
{
$db = JFactory::getDBO();
$query = "SELECT group_id FROM #__djcf_coupons_groups WHERE coupon_id=".$coupon_id;
$db->setQuery($query);
$ug_arr = $db->loadColumn();
return $ug_arr;
}
protected function prepareTable($table)
{
$table->name = htmlspecialchars_decode($table->name, ENT_QUOTES);
$table->groups_restriction = $table->groups_restriction ? $table->groups_restriction : '';
}
protected function getReorderConditions($table = null)
{
$condition = array();
return $condition;
}
}