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;
 }