Files
cm-web-legacy/application/models/web/m_vw_content.php
2020-06-10 06:19:03 +09:00

263 lines
9.1 KiB
PHP
Executable File

<?
defined('BASEPATH') OR exit('No direct script access allowed');
class m_vw_content extends CI_Model{
// 생성자, 해당 모델이 생성될때 항상 실행되는 초기화작업
function __construct(){
parent::__construct();
$this->load->database();
$this->load->library('session');
}
#---------------------------------------------------------------------------
# PURPOSE : select
# CREATE : 2018-04-09
#---------------------------------------------------------------------------
function vw_content_select($req_data){
# request
$content_type = $req_data['content_type'];
$idx = $req_data['idx'];
$sql="select * from vw_content where content_type= '".$content_type."' COLLATE utf8_general_ci and idx=".$idx;
$res = $this->db->query($sql);
$row = $res->row_array();
return $row;
}
#---------------------------------------------------------------------------
# PURPOSE : list
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function vw_content_list($req_data){
# request
$search_type = $req_data['search_type'];
$search_keyword = $req_data['search_keyword'];
$offset = $req_data['offset'];
$limit = $req_data['limit'];
if($search_keyword!='') $arr_search_keyword = explode(" ", $search_keyword);
$where_query = '';
if($search_type == 'main_search_and_video_url' && $search_keyword!='') {
$where_query1 = '';
$i=1;
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query.=" and video_url!='' and (".$where_query1.")";
}
if($search_type == 'main_search' && $search_keyword!='') {
$where_query1 = '';
$i=1;
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query.=" and (".$where_query1.")";
}
$sql="select vw_content.*, @num:=@num+1 as row_num
from vw_content, (select @num:=0) as a
where is_del= 'N'
and is_display = 'Y'".$where_query." order by display_date desc limit ".$offset.",".$limit;
$res = $this->db->query($sql);
$row = $res->result_array();
return $row;
}
#---------------------------------------------------------------------------
# PURPOSE : list - total count
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function vw_content_list_total_count($req_data){
$search_type = $req_data['search_type'];
$search_keyword = $req_data['search_keyword'];
if($search_keyword!='') $arr_search_keyword = explode(" ", $search_keyword);
if($search_type == 'main_search_and_video_url' && $search_keyword!='') {
$i=1;$where_query1 = '';
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query1="(".$where_query1.")";
$this->db->where($where_query1);
$this->db->where('video_url!=', '');
}
if($search_type == 'main_search' && $search_keyword!='') {
$i=1;$where_query1 = '';
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query1="(".$where_query1.")";
$this->db->where($where_query1);
}
$this->db->where('is_del', 'N');
$this->db->where('is_display', 'Y');
$this->db->from('vw_content');
$row = $this->db->count_all_results();
return $row;
}
#---------------------------------------------------------------------------
# PURPOSE : select
# CREATE : 2018-05-04
#---------------------------------------------------------------------------
function vw_content_next_select($req_data){
# request
$search_type = $req_data['search_type'];
$search_keyword = $req_data['search_keyword'];
$row_num = $req_data['row_num'];
$where_query = '';
if($search_type == 'main_search' && $search_keyword!='') {
if($search_keyword!='') $arr_search_keyword = explode(" ", $search_keyword);
$where_query1 = '';
$i=1;
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query.=" and (".$where_query1.")";
}
$sql="select * from (select vw_content.*, @num:=@num+1 as row_num
from vw_content,(select @num:=0) as a
where is_del= 'N'
and is_display = 'Y'".$where_query." order by display_date desc) as a
where a.row_num > '".$row_num."' order by a.row_num asc limit 1";
$res = $this->db->query($sql);
$row = $res->row_array();
return $row;
}
#---------------------------------------------------------------------------
# PURPOSE : select
# CREATE : 2018-05-04
#---------------------------------------------------------------------------
function vw_content_prev_select($req_data){
# request
$search_type = $req_data['search_type'];
$search_keyword = $req_data['search_keyword'];
$row_num = $req_data['row_num'];
$where_query = '';
if($search_type == 'main_search' && $search_keyword!='') {
if($search_keyword!='') $arr_search_keyword = explode(" ", $search_keyword);
$where_query1 = '';
$i=1;
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query.=" and (".$where_query1.")";
}
$sql="select * from (select vw_content.*, @num:=@num+1 as row_num
from vw_content,(select @num:=0) as a
where is_del= 'N'
and is_display = 'Y'".$where_query." order by display_date desc) as a
where a.row_num < '".$row_num."' order by a.row_num desc limit 1";
$res = $this->db->query($sql);
$row = $res->row_array();
return $row;
}
#---------------------------------------------------------------------------
# PURPOSE : list
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function vw_content_where_not_idx_list($req_data){
# request
$search_type = $req_data['search_type'];
$search_keyword = $req_data['search_keyword'];
$idx = $req_data['idx'];
$offset = $req_data['offset'];
$limit = $req_data['limit'];
$where_query = '';
if($search_type == 'main_search' && $search_keyword!='') {
if($search_keyword!='') $arr_search_keyword = explode(" ", $search_keyword);
$where_query1 = '';
$i=1;
foreach ($arr_search_keyword as $val) {
if($val == '') continue;
if($i!=1) $where_query1.=' or';
$where_query1.=' (title like "%'.$val.'%" or content like "%'.$val.'%" or tag like "%'.$val.'%")';
$i++;
}
$where_query.=" and (".$where_query1.")";
}
$sql="select vw_content.*, @num:=@num+1 as row_num
from vw_content, (select @num:=0) as a
where is_del= 'N' and idx!='".$idx."'
and is_display = 'Y'".$where_query." order by display_date desc limit ".$offset.",".$limit;
$res = $this->db->query($sql);
$row = $res->result_array();
return $row;
}
}
?>