function get_subscription_detail($SubscriptionTypeId, $CurrencyId) { $active_status = ActiveRowStatus(); $this->db->where('SubscriptionTypeRowStatusId', $active_status); $this->db->where('CurrencyId', $CurrencyId); $this->db->where('SubscriptionTypeId', $SubscriptionTypeId); $data = $this->db->get($this->subscription_type_price_View)->row(); if (!empty($data)) { return $data; } else { return false; } }
function update_database($data) { //printr($_SESSION,true); $TransactionId = $data['TransactionId']; $TransactionAmount = $data['TransactionAmount']; $subcription_type_id = $_SESSION['SubscriptionTypeId']; $PayPalCurrencyCode = $_SESSION['PayPalCurrencyCode']; $userId = $_SESSION['userId']; $currency_id = $this->service->get_currency_id($PayPalCurrencyCode); $details = $this->service->get_subscription_detail($subcription_type_id, $currency_id); $ip = get_client_ip(); $ip_detail = get_ip_detail($ip); //$ip_detail =get_ip_detail("110.44.115.210"); $country = ''; $error = ''; $success = false; $user_sub_id = ''; if (!empty($ip_detail)) { $country = $this->global_model->get_country_id($ip_detail->country_code); } else { //$error .="Invalid IP address."; } if (empty($country)) { //$error .='Country Could not track. '; } if ($details && !empty($details)) { $this->db->trans_start(); $active_status = ActiveRowStatus(); $payment_method = $this->service->get_payment_method('Paypal'); $insert_user_sub['UserId'] = $userId; $insert_user_sub['SubscriptionTypeId'] = $details->SubscriptionTypeId; $insert_user_sub['SubscriptionPriceId'] = $details->SubscriptionPriceId; $insert_user_sub['ValidTillDate'] = get_validity_date(get_now(), $details->ValidityPeriod); $insert_user_sub['MoviesCount'] = 0; $insert_user_sub['IsPaid'] = 1; $insert_user_sub['IPAddress'] = $ip; $insert_user_sub['CountryId'] = $country; $insert_user_sub['RowStatusId'] = $active_status; $insert_user_sub['LastUpdatedDate'] = get_now(); $user_sub_id = $this->global_model->insert_data($this->TblUserSubscriptions, $insert_user_sub); if ($user_sub_id) { $insert_sub_payment['UserId'] = $userId; $insert_sub_payment['UserSubscriptionId'] = $user_sub_id; $insert_sub_payment['PaymentMethodId'] = $payment_method; $insert_sub_payment['CurrencyId'] = $currency_id; $insert_sub_payment['TransactionId'] = $TransactionId; $insert_sub_payment['TransactionAmount'] = $TransactionAmount; $insert_sub_payment['TransactionDate'] = get_now(); $insert_sub_payment['RowStatusId'] = $active_status; $sud_payment_id = $this->global_model->insert_data($this->TblSubscriptionPayment, $insert_sub_payment); } $this->db->trans_complete(); if ($this->db->trans_status() === FALSE) { $success = false; $error .= 'Error In Subscription.Try again later'; } else { $success = true; $error .= ''; } } else { $success = false; $error .= 'Subscription is not available'; } $action['success'] = $success; $action['msg'] = $error; $action['user_subcription_id'] = $user_sub_id; return $action; }