Last active

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist
View base_model.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
<?php if(!defined('EXT')) exit("Invalid file request");
 
/**
* Base Model Class
*
* @package ci_example
* @author Patrick Pohler ppohler@anecka.com
* @copyright Copyright (c) 2014, Patrick Pohler
* @link http://www.anecka.com/rets_press
* @license MIT
*/
 
abstract class Base_model extends CI_Model {
var $id;
var $site_id;
 
abstract protected function _set_model_for_save($data);
abstract protected function _set_model_for_return($row);
abstract protected function _get_table();
 
function __construct() {
parent::__construct();
}
 
public function get($id) {
$query = ee()->db->get_where($this->_get_table(), array('id' => $id));
if($query->num_rows() == 1) $this->_set_model_for_return($query->row());
}
 
public function get_by_site_id($site_id) {
$query = ee()->db->get_where($this->_get_table(), array('site_id' => $site_id));
if($query->num_rows() == 1) $this->_set_model_for_return($query->row());
}
 
public function insert($data) {
$this->_set_model_for_save($data);
 
ee()->db->insert($this->_get_table(), $this);
$this->id = ee()->db->insert_id();
}
 
public function update($data, $id) {
$this->_set_model_for_save($data);
$this->id = $id;
ee()->db->update($this->_get_table(), $this, array('id' => $id));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.