Files
codecanyon-rest-api-for-per…/api/models/Payment_attempts_model.php
2025-10-29 11:09:43 +01:00

52 lines
1.7 KiB
PHP

<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Payment_attempts_model extends App_Model {
public function __construct() {
parent::__construct();
}
/**
* @param array $data
* @return object|null
*/
public function add(array $data, $playground = false) {
$data['created_at'] = date('c');
$this->db->insert(($playground ? 'playground_' : '') . 'payment_attempts', $data);
$insert_id = $this->db->insert_id();
if ($insert_id) {
return $this->get($insert_id, $data['payment_gateway'], $playground);
}
return null;
}
/**
* @param int $id
* @param string $gateway
* @return object|null
*/
public function get(int $id, string $gateway, $playground = false) {
$this->db->where('id', $id);
$this->db->where('payment_gateway', $gateway);
return $this->db->get(($playground ? 'playground_' : '') . 'payment_attempts')->row();
}
/**
* @param string $reference
* @param string $gateway
* @return object|null
*/
public function getByReference(string $reference, string $gateway, $playground = false) {
$this->db->where('reference', $reference);
$this->db->where('payment_gateway', $gateway);
return $this->db->get(($playground ? 'playground_' : '') . 'payment_attempts')->row();
}
/**
* @param int $id
* @return bool
*/
public function delete(int $id, $playground = false) {
$this->db->where('id', $id);
return (bool)$this->db->delete(($playground ? 'playground_' : '') . 'payment_attempts');
}
}