first commit
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
<?php if (!defined('BASEPATH')) {
|
||||
exit('No direct script access allowed');
|
||||
}
|
||||
|
||||
class screen_cards_model extends CI_Model
|
||||
{
|
||||
private $read_replica;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->read_replica = $this->load->database('savvy_replica', TRUE);
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
public function getQueryAll()
|
||||
{
|
||||
$query = "SELECT id, screen_name, trigger_id,
|
||||
'<div class=\"onoffswitch\">
|
||||
<input type=\"checkbox\" name=\"onoffswitch_'||id||'\" class=\"onoffswitch-checkbox\"
|
||||
onchange=\"fnToggle('||id||', '||status||');\"
|
||||
id=\"myonoffswitch_'||id||'\"'|| CASE WHEN status = 1 THEN 'checked' ELSE '' END || '>
|
||||
<label class=\"onoffswitch-label\" for=\"myonoffswitch_'||id||'\">
|
||||
<span class=\"onoffswitch-inner\"></span>
|
||||
<span class=\"onoffswitch-switch\"></span>
|
||||
</label>
|
||||
</div>'
|
||||
as status,
|
||||
'<a class=\"btn btn-primary\" href=\"javascript:void(0);\" onclick=\"fnShowEdit('||id||')\">Edit</a>' ||
|
||||
'<a class=\"btn btn-danger\" href=\"javascript:void(0);\" onclick=\"fnDelete('||id||')\">Delete</a>'
|
||||
as action
|
||||
FROM screen_cards ORDER By id asc";
|
||||
|
||||
return $query;
|
||||
}
|
||||
|
||||
public function getById($id)
|
||||
{
|
||||
$this->read_replica->select('id, screen_name, trigger_id, status');
|
||||
$this->read_replica->from('screen_cards');
|
||||
$this->read_replica->where('id', $id);
|
||||
$this->read_replica->order_by('id', 'asc');
|
||||
return $this->read_replica->get()->row();
|
||||
}
|
||||
|
||||
public function toggle($id, $cur_status)
|
||||
{
|
||||
//1. check
|
||||
$this->read_replica->select('status');
|
||||
$this->read_replica->from('screen_cards');
|
||||
$this->read_replica->where('id', $id);
|
||||
$db_status = $this->read_replica->get()->row('status');
|
||||
$this->read_replica->reset_query();
|
||||
//2. update
|
||||
$new_status = $db_status == 1 ? 0 : 1;
|
||||
$data = array(
|
||||
'status' => $new_status,
|
||||
);
|
||||
$this->db->where('id', $id);
|
||||
$rs = $this->db->update('screen_cards', $data);
|
||||
return $rs;
|
||||
}
|
||||
|
||||
public function create_or_update($data)
|
||||
{
|
||||
$is_exists = $this->is_exists($data['id'], $data['screen_name'], $data['trigger_id']);
|
||||
if($is_exists){
|
||||
return false;
|
||||
}
|
||||
if (empty($data['id'])) {
|
||||
$data = array(
|
||||
'screen_name' => $data['screen_name'],
|
||||
'trigger_id' => $data['trigger_id'],
|
||||
'status' => isset($data['status']) && $data['status'] == 1 ? 1 : 0,
|
||||
);
|
||||
$rs = $this->db->insert('screen_cards', $data);
|
||||
} else {
|
||||
$this->db->set('screen_name', $data['screen_name']);
|
||||
$this->db->set('trigger_id', $data['trigger_id']);
|
||||
$this->db->set('status', isset($data['status']) && $data['status'] == 1 ? 1 : 0);
|
||||
$this->db->where('id', $data['id']);
|
||||
$rs = $this->db->update('screen_cards');
|
||||
}
|
||||
return $rs;
|
||||
}
|
||||
|
||||
public function delete($id)
|
||||
{
|
||||
$rs = $this->db->delete('screen_cards', array('id' => $id));
|
||||
return $rs;
|
||||
}
|
||||
public function is_exists($id, $screen_name, $trigger_id){
|
||||
if(!empty($id)){
|
||||
$query = $this->read_replica->query('SELECT EXISTS(SELECT * FROM screen_cards WHERE id != ? AND screen_name = ? AND trigger_id = ?) AS check;', [$id, $screen_name, $trigger_id]);
|
||||
}else{
|
||||
$query = $this->read_replica->query('SELECT EXISTS(SELECT * FROM screen_cards WHERE screen_name = ? AND trigger_id = ?) AS check;', [$screen_name, $trigger_id]);
|
||||
}
|
||||
$rs = (array)$query->row();
|
||||
return $rs['check'] == 't';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user