Current File : /home/pacjaorg/public_html/km/administrator/components/com_djclassifieds/controllers/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 DJClassifiedsControllerCoupon extends JControllerForm
{
public function save($key = null, $urlVar = null)
{
return parent::save($key, $urlVar);
}
protected function postSaveHook(JModelLegacy $model, $validData = array())
{
$app = JFactory::getApplication();
$item = $model->getItem();
$new_coupon_id = $item->get('id');
$this->setUGAccess($new_coupon_id, $validData['usergroup_access']);
$coupon_limit = intval($validData['coupons_amount']);
$coupon_name = $validData['name'];
$coupon_name_i = 1;
$multiple = $app->input->getInt('multiple',0);
if($coupon_limit>1 && $multiple==1){
$table = $model->getTable();
$table->load($new_coupon_id);
$table->coupon_code = self::generateCouponCode(6);
$table->name = $table->name.' 1';
$table->store();
$coupon_limit--;
for($ci=0;$ci<$coupon_limit;$ci++){
$coupon_name_i++;
$table->id = 0;
$table->name = $coupon_name.' '.$coupon_name_i;
$table->coupon_code = self::generateCouponCode(6);
$table->store();
$this->setUGAccess($table->id, $validData['usergroup_access']);
}
}
}
function setUGAccess($coupon_id, $ug_arr)
{
$db = JFactory::getDBO();
$query = "DELETE FROM #__djcf_coupons_groups WHERE coupon_id=".$coupon_id;
$db->setQuery($query);
$db->execute();
if(!empty($ug_arr)){
$ins_arr = array();
foreach($ug_arr as $ug_id){
$ins_arr[] = "(".$coupon_id.", ".$ug_id.")";
}
if($ins_arr){
$query = "INSERT INTO #__djcf_coupons_groups(`coupon_id`,`group_id`) VALUES "
.implode(', ', $ins_arr);
$db->setQuery($query);
$db->execute();
}
}
}
public function addmultiple()
{
$app = JFactory::getApplication();
$app->redirect('index.php?option=com_djclassifieds&view=coupon&layout=edit&multiple=1');
}
static public function generateCouponCode($limit)
{
$characters = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
$coupon_code = '';
for ($p = 0; $p < $limit; $p++) {
$coupon_code .= $characters[mt_rand(0, strlen($characters)-1)];
}
return $coupon_code;
}
}
?>