/** * Regsiter a new user * * @author Kuldeep Dangi <*****@*****.**> */ public function actionCreate() { $model = new Users(); $ncashCredit = self::REWARD_ON_REGSITER; $promoCodeValidate = true; if (!empty($_GET['promo_code'])) { $promoCodeModel = new CouponCode(); $promoData = $promoCodeModel->findByCouponCodeValue($_GET['promo_code']); $currentDate = $this->getCurrentDateTime(); if ($promoData && $currentDate > $promoData->valid_from && $currentDate < $promoData->valid_to && $promoData->is_active) { $ncashCredit = $promoData->ncash_credit; } else { $this->result['message'] = 'Invalid Promo code.'; $promoCodeValidate = false; } } if ($promoCodeValidate) { if (!empty($_GET['username']) && !empty($_GET['password'])) { if ($model->findByUsername($_GET['username'])) { $this->result['message'] = 'Username already exist. Choose different one.'; } else { if (!empty($_GET['facebookAccount'])) { $_GET['password'] = md5($_GET['facebookAccount']); } else { $_GET['password'] = isset($_GET['password']) ? md5($_GET['password']) : ''; } $model->attributes = $_GET; $model->slugname = $_GET['username']; $model->active = 1; if (!empty($promoData->id_coupon_code)) { $model->fk_coupon_code = $promoData->id_coupon_code; } // $model->rewardpoints = self::REWARD_ON_REGSITER; if ($model->validate() && $model->save()) { $notficationModel = new Notifications(); $notficationModel->sendPushNotification(array('deviceToken' => $model->deviceToken, 'deviceType' => $model->deviceType, 'message' => 1)); $userObj = $model->findByUsername($_GET['username']); $nCash = new Ncash(); $nCash->addAmount($userObj->user_id, $ncashCredit, 4); $this->result['data'] = $userObj; $this->result['success'] = true; $this->result['message'] = 'User regsitered successfully.'; } else { $this->result['message'] = 'Invalid Data.'; } } } else { $this->result['message'] = 'No data to save.'; } } $this->sendResponse($this->result); }