first commit

This commit is contained in:
pakerpale
2020-06-10 06:19:03 +09:00
commit cd6b5b7832
6081 changed files with 624389 additions and 0 deletions

View File

@@ -0,0 +1,206 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class board extends cm_Controller
{
function fn_notice(){
$this->load->model('/web/m_bbs_notice');
$current_page= (isset($_GET['page'])? $_GET['page'] : 1);
$limit=10;
$req_data['offset'] = ( ($current_page-1) * $limit);
$req_data['limit'] = $limit;
if($this->input->get('search_keyword')){
$req_data['search_type'] = 'total';
$req_data['search_keyword'] = $this->input->get('search_keyword');
}
else{
$req_data['search_type'] = null;
$req_data['search_keyword'] = null;
}
$board_data = $this->m_bbs_notice->bbs_notice_list($req_data);
$board_count = $this->m_bbs_notice->bbs_notice_list_total_count($req_data);
$data = array(
"board_data" => $board_data,
"board_count" => $board_count,
"current_page"=> $current_page,
"search_keyword"=> $req_data['search_keyword'],
"total_count"=> $board_count,
"limit" => $limit
);
return $this->load->view('/m/board/notice',$data,true);
}
#---------------------------------------------------------------------------
# PURPOSE : faq
# CREATE : 2018-05-04
#---------------------------------------------------------------------------
function fn_faq() {
# Request
$page = trim($this->input->get_post('page', TRUE));
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_category1 = trim($this->input->get_post('search_category1', TRUE));
$search_category2 = trim($this->input->get_post('search_category2', TRUE));
# default setting
if($page=='') $page = '1';
# 카테고리 가져오기
$this->load->model('web/m_bbs_faq_category');
$arr_category = $this->m_bbs_faq_category->bbs_faq_category_all_list();
$arr_category1 = array(); $arr_category2 = array();
foreach ($arr_category as $val) {
if($val['depth']=='1') $arr_category1[] = array('category_code'=>$val['category_code'], 'category_name'=>$val['category_name'], 'idx'=> $val['idx']);
if($val['depth']=='2') $arr_category2[$val['p_category_code']][$val['category_code']] = array('category_code'=>$val['category_code'], 'category_name'=>$val['category_name'], 'idx'=> $val['idx'] , 'list'=>array());
}
if($search_category1 == '') $search_category1 = $arr_category1[0]['category_code'];
# paging 설정
$limit = 20;
$offset = ($page-1) * $limit;
# faq
$req_data = array();
$req_data['search_type'] = 'title';
$req_data['search_keyword'] = $search_keyword;
$req_data['faq_category_code1'] = $search_category1;
$req_data['faq_category_code2'] = $search_category2;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
# model - list
$this->load->model('web/m_bbs_faq');
$result = $this->m_bbs_faq->bbs_faq_list($req_data);
$total_count = $this->m_bbs_faq->bbs_faq_list_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/web/cs/faq?search_keyword='.$search_keyword.'&search_category1='.$search_category1.'&search_category2='.$search_category2.'&page=');
$data_num = ($total_count + $limit)-($page*$limit);
foreach($result as $data){
$arr_category2[$data['faq_category_code1']][$data['faq_category_code2']]['list'][] = $data;
}
# view data
$return_data = array();
$return_data['total_count'] = $total_count;
$return_data['search_keyword'] = $search_keyword;
$return_data['search_category1'] = $search_category1;
$return_data['search_category2'] = $search_category2;
$return_data['list'] = $result;
$return_data['arr_category1'] = $arr_category1;
$return_data['arr_category2'] = $arr_category2;
$return_data['pagination'] = $pagination;
$return_data['data_num'] = $data_num;
// var_dump($arr_category2);
# view
return $this->load->view('/m/board/faq', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : faq 뷰
# CREATE : 2018-04-16
#---------------------------------------------------------------------------
function fn_faq_view() {
# Request
$idx = $this->uri->segment(4);
$_SESSION['read'][$idx] = true;
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_category1 = trim($this->input->get_post('search_category1', TRUE));
$search_category2 = trim($this->input->get_post('search_category2', TRUE));
$data_num = trim($this->input->get_post('data_num', TRUE));
# 카테고리 가져오기
$this->load->model('web/m_bbs_faq_category');
$arr_category = $this->m_bbs_faq_category->bbs_faq_category_all_list();
$arr_category1 = array(); $arr_category2 = array();
foreach ($arr_category as $val) {
if($val['depth']=='1') $arr_category1[] = array('category_code'=>$val['category_code'], 'category_name'=>$val['category_name'], 'idx'=> $val['idx']);
if($val['depth']=='2') $arr_category2[$val['p_category_code']][] = array('category_code'=>$val['category_code'], 'category_name'=>$val['category_name'], 'idx'=> $val['idx']);
}
if($search_category1 == '') $search_category1 = $arr_category1[0]['category_code'];
# model - list
$this->load->model('web/m_bbs_faq');
$result = $this->m_bbs_faq->bbs_faq_select($idx);
# faq
$req_data = array();
$req_data['search_type'] = 'title';
$req_data['search_keyword'] = $search_keyword;
$req_data['faq_category_code1'] = $search_category1;
$req_data['faq_category_code2'] = $search_category2;
$req_data['offset'] = 0;
$req_data['limit'] = 4;
$req_data['idx'] = $idx;
$next_list = $this->m_bbs_faq->bbs_faq_other_list($req_data);
$total_count = $this->m_bbs_faq->bbs_faq_list_total_count($req_data);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['result'] = $result;
$return_data['next_list'] = $next_list;
$return_data['search_keyword'] = $search_keyword;
$return_data['search_category1'] = $search_category1;
$return_data['search_category2'] = $search_category2;
$return_data['arr_category1'] = $arr_category1;
$return_data['arr_category2'] = $arr_category2;
$return_data['total_count'] = $total_count;
$return_data['data_num'] = $data_num;
# view
return $this->load->view('/m/board/faq_view', $return_data, true);
}
function fn_ajax_new_notice() {
# Request
$this->load->model('/web/m_bbs_notice');
echo ($this->m_bbs_notice->bbs_notice_new() > 0 ) ? true : false;
exit();
}
}

View File

@@ -0,0 +1,71 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class cmtv extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 메인
# CREATE : 2019-04-17
#---------------------------------------------------------------------------
function fn_index() {
// 말씀과 묵상
$req_data = array();
$req_data['search_type'] = '';
$req_data['search_keyword'] = '';
$req_data['search_life_type'] = '';
$req_data['search_category_code1'] = 22;
$req_data['search_category_code2'] = '';
$req_data['search_click1'] = '';
$req_data['search_click2'] = '1';
$req_data['sort_column'] = 'a.reg_date';
$req_data['search_write_id'] = '';
$req_data['offset'] = 0;
$req_data['limit'] = 2;
$this->load->model('admin/life/m_life');
$this->load->model('web/m_channel');
// 말씀영상
$req_data['search_category_code2'] = '42';
$arr_words = $this->m_channel->channel_join_category_select(42);
$arr_words['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_words['data'] = $this->m_life->life_list($req_data);
//찬양영상
$req_data['search_category_code2'] = '43';
$arr_praise = $this->m_channel->channel_join_category_select(43);
$arr_praise['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_praise['data'] = $this->m_life->life_list($req_data);
// 간증
$req_data['search_category_code2'] = '44';
$arr_testimony = $this->m_channel->channel_join_category_select(44);
$arr_testimony['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_testimony['data'] = $this->m_life->life_list($req_data);
//토크쇼
$req_data['search_category_code2'] = '45';
$arr_talkshow = $this->m_channel->channel_join_category_select(45);
$arr_talkshow['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_talkshow['data'] = $this->m_life->life_list($req_data);
# view data
$return_data['channel'] = array();
$return_data['page_title_1'] = "크맵TV";
array_push($return_data['channel'], $arr_words, $arr_praise, $arr_testimony, $arr_talkshow);
// $return_data['arr_praise'] = ;
// $return_data['arr_testimony'] = ;
// $return_data['arr_talkshow'] = ;
# view
return $this->load->view('/m/cmtv/channel_recommend', $return_data, true);
}
}
?>

View File

@@ -0,0 +1,230 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class common extends cm_Controller
{
#---------------------------------------------------------------------------
# PURPOSE : 리뷰쓰기
# CREATE : 2018-04-16
#---------------------------------------------------------------------------
function fn_kmc_mobile_auth()
{
$this->load->view("/m/common/kmc_mobile_auth");
}
function fn_kmc_mobile_callback(){
$rec_cert = trim($this->input->get_post('rec_cert', TRUE));
$certNum = trim($this->input->get_post('certNum', TRUE));
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
if(strlen($rec_cert) == 0 || strlen($certNum) == 0){
gf_alert('본인인증에 실패했습니다.', 'self_close');
exit;
}
$iv = $certNum;
//암호화모듈 호출
if (extension_loaded('ICERTSecu')) {
//01.인증결과 1차 복호화
$rec_cert = ICertSeed(2,0,$iv,$rec_cert);
//02.복호화 데이터 Split (rec_cert 1차암호화데이터 / 위변조 검증값 / 암복화확장변수)
$decStr_Split = explode("/", $rec_cert);
$encPara = $decStr_Split[0]; //rec_cert 1차 암호화데이터
$encMsg = $decStr_Split[1]; //위변조 검증값
//03.인증결과 2차 복호화
$rec_cert = ICertSeed(2,0,$iv,$encPara);
//04. 복호화 된 결과자료 "/"로 Split 하기
$decStr_Split = explode("/", $rec_cert);
@$certNum = $decStr_Split[0];
@$date = $decStr_Split[1];
@$CI = $decStr_Split[2];
@$phoneNo = $decStr_Split[3];
@$phoneCorp = $decStr_Split[4];
@$birthDay = $decStr_Split[5];
@$gender = $decStr_Split[6];
@$nation = $decStr_Split[7];
@$name = $decStr_Split[8];
@$result = $decStr_Split[9];
@$certMet = $decStr_Split[10];
@$ip = $decStr_Split[11];
@$M_name = $decStr_Split[12];
@$M_birthDay = $decStr_Split[13];
@$M_Gender = $decStr_Split[14];
@$M_nation = $decStr_Split[15];
@$plusInfo = $decStr_Split[16];
@$DI = $decStr_Split[17];
//05. CI,DI 복호화
if(strlen($CI) > 0) $CI = ICertSeed(2,0,$iv,$CI);
if(strlen($DI) > 0) $DI = ICertSeed(2,0,$iv,$DI);
function paramChk($pattern, $param){
$result = preg_match($pattern, $param);
return $result;
}
// 요청번호 (최대 40byte까지 유효)
if(strlen($certNum) > 40 || strlen($certNum) == 0){
gf_alert('요청번호 비정상', 'self_close');
exit;
}
// 요청일시 (숫자 14자리만 유효)
$patn = "/^[0-9]*$/";
if(strlen($date) != 14 || paramchk($patn, $date) == 0){
gf_alert('휴대폰번호 비정상', 'self_close');
exit;
}
// 휴대폰번호 (값이 있는 경우에는 숫자 10 또는 11자리까지만 유효)
$patn = "/^[0-9]*$/";
if((strlen($phoneNo) != 10 && strlen($phoneNo) != 11) || paramChk($patn, $phoneNo) == 0){
gf_alert('휴대폰번호 비정상', 'self_close');
exit;
}
}else{
gf_alert('본인인증에 실패했습니다.', 'self_close');
exit;
}
$this->load->model('web/m_member');
if($plusInfo=='member_join1') {
$result = $this->m_member->member_where_mobile_CI_select($CI);
if(count($result) > 0) {
gf_alert('이미 가입되어있는 번호입니다.', 'self_close');
exit;
}
} else if($plusInfo=='member_join2') { // 14세 미만
$result = $this->m_member->member_where_parent_CI_select($CI);
if(count($result) > 0) {
gf_alert('이미 가입되어있는 부모님 번호입니다.', 'self_close');
exit;
}
} else if($plusInfo=='email_check') {
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['CI'] = $CI;
$count = $this->m_member->member_where_mobile_CI_member_id_count($req_data);
if($count == 0){
gf_alert('본인명의의 휴대폰 번호가 아닙니다.', 'self_close');
exit;
}
} else if($plusInfo=='member_edit') {
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['CI'] = $CI;
$count = $this->m_member->member_where_mobile_CI_member_id_count($req_data);
if($count == 0){
gf_alert('본인명의의 휴대폰 번호로만 변경가능합니다.', 'self_close');
exit;
}
}
$name = iconv("EUC-KR","UTF-8", $name);
$return_data = array();
$return_data['CI'] = $CI;
$return_data['type'] = $plusInfo;
$return_data['name'] = $name;
$return_data['phone'] = $phoneNo;
# view
return $this->load->view('/m/common/kmc_mobile_auth_fin', $return_data,true);
}
function fn_ajax_kmc_encode_proc() {
# request
$mobile = trim($this->input->get_post('mobile', TRUE));
$type = trim($this->input->get_post('type', TRUE));
$mobile = str_replace('-', '', $mobile);
$cur_time = date('YmdHis');
$rand_no = rand(100000, 999999);
//요청 번호 생성
$cert_num = $cur_time.$rand_no;
$cpId = 'CRMM1001'; // 회원사ID
$urlCode = '003003'; // URL 코드
$certNum = $cert_num; // 요청번호
$date = $cur_time; // 요청일시
$certMet = 'M'; // 본인인증방법
$birthDay = ''; // 생년월일
$gender = ''; // 성별
$name = ''; // 성명
$phoneNo = $mobile; // 휴대폰번호
$phoneCorp = ''; // 이동통신사
$nation = ''; // 내외국인 구분
$plusInfo = $type; // 추가DATA정보
$extendVar = "0000000000000000"; // 확장변수
$name = str_replace(" ", "+", $name) ; //성명에 space가 들어가는 경우 "+"로 치환하여 암호화 처리
// 02. tr_cert 데이터변수 조합 (서버로 전송할 데이터 "/"로 조합)
$tr_cert = $cpId . "/" . $urlCode . "/" . $certNum . "/" . $date . "/" . $certMet . "/" . $birthDay . "/" . $gender . "/" . $name . "/" . $phoneNo . "/" . $phoneCorp . "/" . $nation . "/" . $plusInfo . "/" . $extendVar;
//암호화모듈 호출
$enc_tr_cert = '';
if (extension_loaded('ICERTSecu')) {
//03. 1차암호화
$enc_tr_cert = ICertSeed(1,0,'',$tr_cert);
//04. 변조검증값 생성
$enc_tr_cert_hash = ICertHMac($enc_tr_cert);
//05. 2차암호화
$enc_tr_cert = $enc_tr_cert . "/" . $enc_tr_cert_hash . "/" . "0000000000000000";
$enc_tr_cert = ICertSeed(1,0,'',$enc_tr_cert);
}
if($enc_tr_cert == '') {
$return_data['result'] = array('code' => '9999');
} else {
$return_data['result'] = array('code' => '0000', 'data' => $enc_tr_cert);
}
# view
return $this->load->view('/web/comm/result_json', $return_data);
}
}

View File

@@ -0,0 +1,955 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class life extends cm_Controller {
function fn_index() {
$this->load->model('web/m_theme');
# theme_type = 1 (헤드라인뉴스), theme_type = 8 (오늘의칼럼), theme_type = 11 (라이프홈), theme_type = 12 (데일리큐티)
# 16 = 상단(2) , 17 = 라이프(3) , 18 = 은혜의샘(6), 19(3) = 하늘양식, 20=상단_빅원(1), 21=중상단(6)
$this->load->model('web/m_theme');
$req_data = array();
$req_data['theme_types'] = array('21', '11','12','26');
$arr_theme = $this->m_theme->theme_join_vw_content_where_in_theme_type_list($req_data);
$arr_life_home = array();
$arr_daily_cutie = array();
foreach ($arr_theme as $val) {
if($val['theme_type'] == 11) $arr_life_home[$val['rank']] = array('title' => $val['title'], 'sub_title'=> $val['sub_title'], 'sub_content' => $val['sub_content'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx']);
if($val['theme_type'] == 12) $arr_daily_cutie[$val['rank']] = array('title' => $val['title'], 'sub_content' => $val['sub_content'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx']);
if($val['theme_type'] == 21) $arr_grace_middle[$val['rank']] = $val;
}
$req_data = array();
$req_data['search_type'] = '';
$req_data['search_keyword'] = '';
$req_data['search_life_type'] = '';
$req_data['search_category_code1'] = 17;
$req_data['search_category_code2'] = '';
$req_data['search_click1'] = '';
$req_data['search_click2'] = '1';
$req_data['sort_column'] = 'a.reg_date';
$req_data['search_write_id'] = '';
$req_data['offset'] = 0;
$req_data['limit'] = 6;
$this->load->model('admin/life/m_life');
$this->load->model('web/m_channel');
// 책
$req_data['search_category_code2'] = 26;
$arr_book = $this->m_channel->channel_join_category_select(26);
$arr_book['data'] = $this->m_life->life_list($req_data);
// 카드뉴스형식 깨알은혜
$req_data['search_category_code1'] = 5;
$req_data['search_category_code2'] = 28;
$req_data['limit'] = 4;
$arr_card = $this->m_channel->channel_join_category_select(28);
$arr_card['data'] = $this->m_life->life_list($req_data);
// 영어 한구절
$req_data['search_category_code1'] = 10;
$req_data['search_category_code2'] = 7;
$req_data['limit'] = 2;
$arr_en = $this->m_channel->channel_join_category_select(7);
$arr_en['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_en['data'] = $this->m_life->life_list($req_data);
// 영어 한구절
$req_data['search_category_code1'] = 10;
$req_data['search_category_code2'] = 8;
$arr_knowledge = $this->m_channel->channel_join_category_select(8);
$arr_knowledge['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_knowledge['data'] = $this->m_life->life_list($req_data);
// 말씀엽서
$req_data['search_category_code1'] = 5;
$req_data['search_category_code2'] = 3;
$arr_post = $this->m_channel->channel_join_category_select(3);
// 운율있는 묵상
$req_data['search_category_code1'] = 8;
$req_data['search_category_code2'] = 6;
$req_data['limit'] = 4;
$arr_poem = $this->m_channel->channel_join_category_select(8);
$arr_poem['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_poem['data'] = $this->m_life->life_list($req_data);
$arr_channel =array($arr_poem, $arr_post, $arr_en, $arr_card, $arr_book);
$return_data['page_title_1'] = "은혜";
$return_data['arr_life_home'] = $arr_life_home;
$return_data['arr_daily_cutie'] = $arr_daily_cutie;
$return_data['arr_grace_middle'] = $arr_grace_middle;
$return_data['arr_book'] = $arr_book;
$return_data['arr_card'] = $arr_card;
$return_data['arr_en'] = $arr_en;
$return_data['arr_knowledge'] = $arr_knowledge;
$return_data['arr_post'] = $arr_post;
$return_data['arr_poem'] = $arr_poem;
$return_data['arr_channel'] = $arr_channel;
return $this->load->view('/m/life/main3', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 메인
# CREATE : 2018-04-10
#---------------------------------------------------------------------------
function fn_index_back() {
# Request
$search_date = trim($this->input->get_post('search_date', TRUE));
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$popular_page = trim($this->input->get_post('popular_page', TRUE));
$search_popular = trim($this->input->get_post('search_popular', TRUE));
# default setting
if($search_sort == '') $search_sort = '1';
if($search_date=='') $search_date = date('Y-m');
if($search_popular=='') $search_popular = '1';
# 해당월의 마지막 날짜
$end_day = date("t", strtotime($search_date));
$start_date = $search_date.'-01';
$end_date = $search_date.'-'.$end_day;
# 년월 구하기
$month = date('m', strtotime($start_date));
$month_txt = date("Y", strtotime($start_date)).'년 '.(int)$month.'월';
# 이전달
$prev_date = date('Y-m', strtotime($start_date." -1 month"));
# 다음달
$next_date = date('Y-m', strtotime($start_date." +1 month"));
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
# paging 설정
$limit = 15;
$offset = 0;
# 라이프
$req_data = array();
$req_data['start_date'] = $start_date;
$req_data['end_date'] = $end_date;
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
# model - list
$this->load->model('web/m_life');
$result = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
# 인기채널
# paging 설정
if($popular_page=='') $popular_page = '1';
$popular_limit = 8;
$popular_offset = ($popular_page-1) * $popular_limit;
$req_data = array();
$req_data['offset'] = $popular_offset;
$req_data['limit'] = $popular_limit;
$req_data['sort_column'] = 'popular_count';
if($search_popular == 1) {
# model - channel
$this->load->model('web/m_channel');
$arr_popular = $this->m_channel->channel_list($req_data);
$popular_total_count = $this->m_channel->channel_list_total_count();
} if($search_popular == 2) {
$req_data['member_group_idx'] = 6;
# model - editor
$this->load->model('web/m_partner');
$arr_popular = $this->m_partner->partner_list($req_data);
$popular_total_count = $this->m_partner->partner_list_total_count($req_data);
}
$popular_max_page = ceil($popular_total_count / $popular_limit);
# channel_page
$this->load->helper('crossmap/tool_helper');
$pagination = gf_paging($popular_limit, $popular_page, $popular_max_page, '/web/life/?search_date='.$search_date.'&search_sort='.$search_sort.'&search_popular='.$search_popular.'&popular_page=');
# view data
$return_data = array();
$return_data['limit'] = $limit;
$return_data['total_count'] = $total_count;
$return_data['start_date'] = $start_date;
$return_data['end_date'] = $end_date;
$return_data['search_date'] = $search_date;
$return_data['search_sort'] = $search_sort;
$return_data['search_popular'] = $search_popular;
$return_data['month_txt'] = $month_txt;
$return_data['prev_date'] = $prev_date;
$return_data['next_date'] = $next_date;
$return_data['list'] = $result;
$return_data['arr_popular'] = $arr_popular;
$return_data['popular_total_count'] = $popular_total_count;
$return_data['pagination'] = $pagination;
# view
return $this->load->view('/web/life/index', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 뷰
# CREATE : 2018-04-11
#---------------------------------------------------------------------------
function fn_life_view() {
setcookie("pre_page",3,0,'/');
# Request
$idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '3';
# model - list
$this->load->model('web/m_life');
$result = $this->m_life->life_join_editor_category_channel_select($idx);
if(count($result)==0) {
gf_alert("잘못된 접근입니다.", '/web/life');
exit;
}
$bookmark_count = 0;
if($SES_MEMBER_ID !='') {
# 게시물 열람 불가 체크
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['limit_type'] = '2';
# model
$this->load->model('web/m_blind_limit');
$arr_blind = $this->m_blind_limit->blind_limit_where_member_id_limit_type_select($req_data);
if(count($arr_blind) > 0) {
$return_data['arr_blind'] = $arr_blind;
$return_data['url'] = '/web/life/';
# view
return $this->load->view('/web/comm/blind_view_alert', $return_data, true);
}
# model - bookmark
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_bookmark');
$bookmark_count = $this->m_bookmark->bookmark_member_id_content_idx_count($req_data);
}
# hit count update
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$req_data['member_id'] = $SES_MEMBER_ID;
$this->load->library('comm');
$this->comm->fn_hit_count_update($req_data);
# 이전글
$arr_prev = $this->m_life->life_prev_select($idx);
# 이후글
$arr_next = $this->m_life->life_next_select($idx);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['arr_prev'] = $arr_prev;
$return_data['arr_next'] = $arr_next;
$return_data['bookmark_count'] = $bookmark_count;
$return_data['result'] = $result;
# view
return $this->load->view('/m/life/life_view', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 댓글
# CREATE : 2018-04-29
#---------------------------------------------------------------------------
function fn_life_comment() {
# Request
$idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '3';
# model - list
$this->load->model('web/m_life');
$result = $this->m_life->life_join_editor_category_channel_select($idx);
if(count($result)==0) {
gf_alert("잘못된 접근입니다.", '/web/life');
exit;
}
# 북마크
$bookmark_count = 0;
if($SES_MEMBER_ID !='') {
# model - bookmark
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_bookmark');
$bookmark_count = $this->m_bookmark->bookmark_member_id_content_idx_count($req_data);
}
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['bookmark_count'] = $bookmark_count;
$return_data['result'] = $result;
# view
return $this->load->view('/m/life/life_comment', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 랭킹
# CREATE : 2018-04-29
#---------------------------------------------------------------------------
function fn_ranking() {
# Request
$page = trim($this->input->get_post('page', TRUE));
$ranking_type = trim($this->input->get_post('ranking_type', TRUE));
$content_type = 3;
# default setting
if($ranking_type == '') $ranking_type = '1';
if($page=='') $page = '1';
# paging 설정
$limit = 10;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['ranking_type'] = $ranking_type;
$req_data['content_type'] = $content_type;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$this->load->model('web/m_ranking');
$result = $this->m_ranking->ranking_join_life_list($req_data);
$total_count = $this->m_ranking->ranking_join_life_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/web/life/ranking?ranking_type='.$ranking_type.'&page=');
# right
$theme_types = array('13', '14');
$this->load->library('comm');
$arr_life_right_comm = $this->comm->fn_life_right_comm($theme_types);
$arr_life_style = $arr_life_right_comm['arr_life_style'];
$arr_boomup_life = $arr_life_right_comm['arr_boomup_life'];
$arr_life_ranking = $arr_life_right_comm['arr_life_ranking'];
if(count($arr_life_style) > 0) {
array_splice($arr_life_style, 2, count($arr_life_style));
}
# view data
$return_data = array();
$return_data['total_count'] = $total_count;
$return_data['list'] = $result;
$return_data['arr_life_style'] = $arr_life_style;
$return_data['arr_boomup_life'] = $arr_boomup_life;
$return_data['arr_life_ranking'] = $arr_life_ranking;
$return_data['pagination'] = $pagination;
$return_data['ranking_type'] = $ranking_type;
# view
return $this->load->view('/web/life/ranking', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 채널 홈
# CREATE : 2018-04-30
#---------------------------------------------------------------------------
function fn_channel() {
# Request
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '3';
# channel 정보
$this->load->model('web/m_channel');
$result = $this->m_channel->channel_join_category_select($idx);
if(count($result)==0) {
gf_alert("잘못된 접근입니다.", '/web/life');
exit;
}
if($search_sort == '') $search_sort = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
# 배달여부
$this->load->model('web/m_delivery');
$channel_delivery_count = 0;
if($SES_MEMBER_ID != '') {
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['main_idx'] = $idx;
$req_data['member_id'] = $SES_MEMBER_ID;
$arr_column_delivery = $this->m_delivery->delivery_where_member_id_main_idx_select($req_data);
$channel_delivery_count = count($arr_column_delivery);
}
# 채널글
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = 0;
$req_data['limit'] = 15;
$req_data['search_type'] = 'channel_idx';
$req_data['search_key'] = $idx;
# model - list
$this->load->model('web/m_life');
$list = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
# 배달수
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['main_idx'] = $idx;
$channel_delivery_total_count = $this->m_delivery->delivery_where_main_idx_count($req_data);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['search_sort'] = $search_sort;
$return_data['channel_delivery_count'] = $channel_delivery_count;
$return_data['result'] = $result;
$return_data['list'] = $list;
$return_data['total_count'] = $total_count;
$return_data['channel_delivery_total_count'] = $channel_delivery_total_count;
# view
return $this->load->view('/m/life/channel', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : life_list_more
# CREATE : 2018-04-30
#---------------------------------------------------------------------------
function fn_ajax_life_list_more() {
# request
$sort = trim($this->input->get_post('sort', TRUE));
$page = trim($this->input->get_post('page', TRUE));
$channel_idx = trim($this->input->get_post('channel_idx', TRUE));
$partner_idx = trim($this->input->get_post('partner_idx', TRUE));
$type = trim($this->input->get_post('type', TRUE));
$start_date = trim($this->input->get_post('start_date', TRUE));
$end_date = trim($this->input->get_post('end_date', TRUE));
switch ($sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
if($type == 'main') {
$limit = 15;
$offset = ($page-1) * $limit;
# 라이프
$req_data = array();
$req_data['start_date'] = $start_date;
$req_data['end_date'] = $end_date;
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$view_url = '/m/life/life_main_list_more';
} else {
if($partner_idx!='') {
$search_type = 'partner_idx';
$search_key = $partner_idx;
$limit = 8;
$offset = ($page-1) * $limit;
$view_url = '/m/life/editor_life_list_more';
} else {
$search_type = 'channel_idx';
$search_key = $channel_idx;
$limit = 15;
$offset = ($page-1) * $limit;
$view_url = '/m/life/life_list_more';
}
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['search_type'] = $search_type;
$req_data['search_key'] = $search_key;
}
# model - list
$this->load->model('web/m_life');
$list = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
if(count($list) > 0) {
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
$return_data['page'] = $page;
} else {
$return_data['result_code'] = '9999';
}
# view
return $this->load->view($view_url, $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 에디터 홈
# CREATE : 2018-04-30
#---------------------------------------------------------------------------
function fn_editor() {
# Request
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$idx = $this->uri->segment(4);
# editor 정보
$this->load->model('web/m_partner');
$result = $this->m_partner->partner_join_category_channel_select($idx);
if(count($result)==0) {
gf_alert("잘못된 접근입니다.", '/m/life');
exit;
}
if($search_sort == '') $search_sort = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
# 에디터글
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = 0;
$req_data['limit'] = 8;
$req_data['search_type'] = 'partner_idx';
$req_data['search_key'] = $idx;
# model - list
$this->load->model('web/m_life');
$list = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['search_sort'] = $search_sort;
$return_data['result'] = $result;
$return_data['list'] = $list;
$return_data['total_count'] = $total_count;
# view
return $this->load->view('/m/life/editor', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 추천채널
# CREATE : 2018-04-30
#---------------------------------------------------------------------------
function fn_channel_recommend() {
# 추천채널
$etc_section_type = 1;
$this->load->model('web/m_life_etc_section');
$arr_etc_section = $this->m_life_etc_section->life_etc_section_join_channel_list($etc_section_type);
$result = $this->m_life_etc_section->life_etc_section_detail_join_life_list($etc_section_type);
$arr_etc_section_detail = array();
foreach ($result as $val) {
$arr_etc_section_detail[$val['life_etc_section_idx']][$val['rank']] = array('head_title'=>$val['head_title'], 'title'=>$val['title'], 'partner_idx' => $val['partner_idx'], 'editor_name' => $val['editor_name'], 'main_img' => $val['main_img'], 'content_idx' => $val['content_idx']);
}
# view data
$return_data = array();
$return_data['arr_etc_section'] = $arr_etc_section;
$return_data['arr_etc_section_detail'] = $arr_etc_section_detail;
# view
return $this->load->view('/m/life/channel_recommend', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프 카테고리
# CREATE : 2018-04-30
#---------------------------------------------------------------------------
function fn_category() {
# Request
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$category_idx = $this->uri->segment(4);
if($search_sort == '') $search_sort = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'reg_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'reg_date'; break;
}
# 카테고리
$this->load->model('web/m_category');
$arr_category = $this->m_category->category_all_list();
if(count($arr_category)==0) {
gf_alert("등록된 카테고리가 없습니다.", '/web/life');
exit;
}
if($category_idx == '') {
$category_idx = $arr_category[0]['idx'];
$category_name = $arr_category[0]['category_name'];
$swiper_page = 0;
} else {
foreach($arr_category as $key => $val) {
if($val['idx'] == $category_idx) {
$swiper_page = $key;
$category_name = $val['category_name'];
break;
}
}
}
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = 0;
$req_data['limit'] = 8;
$req_data['search_type'] = 'category_idx';
$req_data['search_key'] = $category_idx;
$req_data['member_group_idx'] = '6';
# editor list
$this->load->model('web/m_partner');
$result = $this->m_partner->partner_life_aritcle_count_list($req_data);
$total_count = $this->m_partner->partner_list_total_count($req_data);
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['total_count'] = $total_count;
$return_data['search_sort'] = $search_sort;
$return_data['arr_category'] = $arr_category;
$return_data['category_idx'] = $category_idx;
$return_data['category_name'] = $category_name;
$return_data['swiper_page'] = $swiper_page;
# view
return $this->load->view('/m/life/category', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : editor_list_more
# CREATE : 2018-05-01
#---------------------------------------------------------------------------
function fn_ajax_editor_list_more() {
# request
$sort = trim($this->input->get_post('sort', TRUE));
$page = trim($this->input->get_post('page', TRUE));
$category_idx = trim($this->input->get_post('category_idx', TRUE));
switch ($sort) {
case '2': $sort_column = 'popular_count'; break;
case '1': $sort_column = 'reg_date'; break;
default : $sort_column = 'reg_date'; break;
}
$limit = 8;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['search_type'] = 'category_idx';
$req_data['search_key'] = $category_idx;
$req_data['member_group_idx'] = '6';
# editor list
$this->load->model('web/m_partner');
$list = $this->m_partner->partner_life_aritcle_count_list($req_data);
$total_count = $this->m_partner->partner_list_total_count($req_data);
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
if(count($list) > 0) {
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
} else {
$return_data['result_code'] = '9999';
}
# view
return $this->load->view("/web/life/editor_list_more", $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : tag
# CREATE : 2018-05-01
#---------------------------------------------------------------------------
function fn_tag() {
# Request
$tag = $this->uri->segment(4);
$content_type = '3';
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$tag = urldecode($tag);
# tag
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['tag'] = $tag;
$this->load->model('web/m_tag');
$total_count = $this->m_tag->tag_join_life_list_total_count($req_data);
if($total_count == 0) {
gf_alert("등록된 태그가 없습니다.", '/web/life');
exit;
}
# 배달여부
$this->load->model('web/m_delivery');
$tag_delivery_count = 0;
if($SES_MEMBER_ID != '') {
$req_data = array();
$req_data['content_type'] = '9';
$req_data['main_idx'] = $tag;
$req_data['member_id'] = $SES_MEMBER_ID;
$arr_column_delivery = $this->m_delivery->delivery_where_member_id_main_idx_select($req_data);
$tag_delivery_count = count($arr_column_delivery);
}
$this->load->model('web/m_tag');
# 연관태그
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['tag'] = $tag;
$arr_relation_tag = $this->m_tag->tag_join_tag_list($req_data);
# 태그글
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['tag'] = $tag;
$req_data['offset'] = 0;
$req_data['limit'] = 9;
$result = $this->m_tag->tag_join_life_list($req_data);
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['total_count'] = $total_count;
$return_data['tag_delivery_count'] = $tag_delivery_count;
$return_data['tag'] = $tag;
$return_data['arr_relation_tag'] = $arr_relation_tag;
# view
return $this->load->view('/m/life/tag', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : tag_list_more
# CREATE : 2018-05-01
#---------------------------------------------------------------------------
function fn_ajax_tag_list_more() {
# request
$page = trim($this->input->get_post('page', TRUE));
$tag = trim($this->input->get_post('tag', TRUE));
$content_type = '3';
$limit = 9;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['tag'] = $tag;
$req_data['content_type'] = $content_type;
$this->load->model('web/m_tag');
$list = $this->m_tag->tag_join_life_list($req_data);
$total_count = $this->m_tag->tag_join_life_list_total_count($req_data);
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
if(count($list) > 0) {
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
} else {
$return_data['result_code'] = '9999';
}
# view
return $this->load->view("/m/life/tag_list_more", $return_data);
}
}
?>

View File

@@ -0,0 +1,274 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class main extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 모바일 메인
# CREATE :
#---------------------------------------------------------------------------
function fn_index() {
$now_date = date("Y-m-d");
# 오늘의 말씀
$this->load->model('web/m_today_word');
$arr_today_word = $this->m_today_word->today_word_where_display_date_select($now_date);
# 테마
# theme_type = 1 (헤드라인뉴스), theme_type = 8 (오늘의칼럼), theme_type = 11 (라이프홈), theme_type = 12 (데일리큐티)
# 16 = 상단(2) , 17 = 라이프(3) , 18 = 은혜의샘(6), 19(3) = 하늘양식, 20=상단_빅원(1), 21=중상단(6)
$this->load->model('web/m_theme');
$req_data = array();
$req_data['theme_types'] = array('1','16', '17', '18','19','20','21','8', '3','6');
$arr_theme = $this->m_theme->theme_join_vw_content_where_in_theme_type_list($req_data);
// echo $this->db->last_query();
$arr_headline_news = array();
$arr_life_home = array();
$arr_daily_cutie = array();
$arr_grace_top = array();
$arr_grace_life = array();
$arr_grace_well = array();
$arr_grace_sky = array();
$arr_grace_bigone = array();
$arr_grace_middle = array();
$arr_headline_column = array();
$arr_p_video = array();
$a = array();
$i = 0;
foreach ($arr_theme as $val) {
if($val['theme_type'] == 1) $arr_headline_news[$val['rank']] = $val;
if($val['theme_type'] == 16) $arr_grace_top[$val['rank']] = $val;
if($val['theme_type'] == 17) $arr_grace_life[$val['rank']] = $val;
if($val['theme_type'] == 18) $arr_grace_well[$val['rank']] = $val;
if($val['theme_type'] == 19) $arr_grace_sky[$val['rank']] = $val;
if($val['theme_type'] == 20) $arr_grace_bigone[$val['rank']] = $val;
if($val['theme_type'] == 21) $arr_grace_middle[$val['rank']] = $val;
if($val['theme_type'] == 8) $arr_headline_column[$val['rank']] = $val;
}
# 기타섹션 - 인기영상 1 / 인기포토 2
$this->load->model('web/m_etc_section');
$req_data = array();
$req_data['etc_section_types'] = array('3');
$arr_etc_section = $this->m_etc_section->etc_section_where_in_etc_section_type_list($req_data);
$arr_p_photo = array();
$arr_p_video = array();
foreach ($arr_etc_section as $val) {
if($val['etc_section_type'] == 3) $arr_etc_video[$val['rank']] = $val;
}
# 카드뉴스 - 기타섹션 테마
$this->load->model('web/m_etc_section');
$etc_section_type = 4;
$arr_card_news = $this->m_etc_section->etc_section_where_theme_type_list($etc_section_type);
# 언론
$this->load->model('web/m_press');
$arr_press = $this->m_press->press_all_list();
# 카테고리별
$this->load->model('web/m_main_category_company');
$arr_company = $this->m_main_category_company->main_category_company_all_list();
#상단채널
$this->load->model('web/m_life_etc_section');
$arr_chanel = $this->m_life_etc_section->life_etc_section_join_channel_list(array(3,4,5,6));
#임의 체널
$arr_random_chanel = $this->m_life_etc_section->life_etc_section_detail_list(34);
foreach ($arr_chanel as $val) {
switch ($val['etc_section_type']){
#하단인기베스트
case 3:
$arr_p_best = $val;
break;
#추천에디터
case 6:
$arr_recom_editor = $val;
break;
}
}
$return_data = array();
/*
메인 화면 출력용 데이터
*/
$this->load->model('admin/etc_section/m_life_etc_section');
// $total_count = $this->m_life_etc_section->life_editor_etc_section_list_total_count($req_data);
$rd = array(
"search_type" => "","search_keyword"=>"","search_category"=>"",
"search_etc_section_type"=>5,
"sort_column"=>"reg_date",
"offset"=>"0",
"limit"=>"1");
$aa = $this->m_life_etc_section->life_editor_etc_section_list($rd);
$arr_mid_bigone = $this->m_life_etc_section->life_etc_section_detail_list($aa[0]['idx']);
// echo $this->db->last_query();
$return_data['bigone_main'] = $aa[0];
$return_data['arr_today_word'] = $arr_today_word;
#뉴스
$return_data['arr_headline_news'] = $arr_headline_news;
#라이프
$return_data['arr_life_home'] = $arr_life_home;
$return_data['arr_daily_cutie'] = $arr_daily_cutie;
#카드뉴스
$return_data['arr_card_news'] = $arr_card_news;
$return_data['arr_press'] = $arr_press;
$return_data['arr_company'] = $arr_company;
#탑6
$return_data['arr_grace_top'] = $arr_grace_top;
#라이프 테마
$return_data['arr_grace_life'] = $arr_grace_life;
#은혜의 샘
$return_data['arr_grace_well'] = $arr_grace_well;
#하늘양식
$return_data['arr_grace_sky'] = $arr_grace_sky;
#빅원
$return_data['arr_grace_bigone'] = $arr_grace_bigone;
#중상단
$return_data['arr_grace_middle'] = $arr_grace_middle;
#컬럼
$return_data['arr_headline_column'] = $arr_headline_column;
#은혜로운 영상
$return_data['arr_etc_video'] = $arr_etc_video;
#임의 채널
$return_data['arr_random_chanel'] = $arr_random_chanel;
#임의 채널
$return_data['arr_p_best'] = $arr_p_best;
#임의 채널
$return_data['arr_mid_bigone'] = $arr_mid_bigone;
#임의 채널
$return_data['arr_recom_editor'] = $arr_recom_editor;
# Request
$search_date = trim($this->input->get_post('search_date', TRUE));
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$popular_page = trim($this->input->get_post('popular_page', TRUE));
$search_popular = trim($this->input->get_post('search_popular', TRUE));
# default setting
if($search_sort == '') $search_sort = '1';
if($search_date=='') $search_date = date('Y-m');
if($search_popular=='') $search_popular = '1';
# 해당월의 마지막 날짜
$end_day = date("t", strtotime($search_date));
$start_date = $search_date.'-01';
$end_date = $search_date.'-'.$end_day;
# 년월 구하기
$month = date('m', strtotime($start_date));
$month_txt = date("Y", strtotime($start_date)).'년 '.(int)$month.'월';
# 이전달
$prev_date = date('Y-m', strtotime($start_date." -1 month"));
# 다음달
$next_date = date('Y-m', strtotime($start_date." +1 month"));
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
# paging 설정
$limit = 15;
$offset = 0;
# 라이프
$req_data = array();
$req_data['start_date'] = $start_date;
$req_data['end_date'] = $end_date;
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
# model - list
$this->load->model('web/m_life');
$result = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
// $this->load->model('admin/etc_section/m_life_etc_section');
$req_data = array("etc_section_type"=>4);
$return_data['arr_etc_section'] = $this->m_life_etc_section->life_etc_section_type_list($req_data);
$arr_life_etc_section_detail_rank = array();
$arr_etc_section_detail = $this->m_life_etc_section->life_etc_section_detail_type_list($req_data);
// var_dump($arr_etc_section_detail);
foreach ($arr_etc_section_detail as $val) {
$arr_life_etc_section_detail_rank[$val['life_etc_section_idx']][$val['rank']] = array('main_img'=> $val['main_img'], 'head_title'=> $val['head_title'], 'title'=> $val['title'], 'content_idx'=> $val['content_idx'], 'hit_count'=>$val['hit_count'], 'editor_name'=>$val['editor_name']);
// print_r($val);
}
// $result2 = $this->m_life_etc_section->life_etc_section_detail_list($idx);
$return_data['arr_etc_section_detail'] = $arr_life_etc_section_detail_rank;
$return_data['life'] = $result;
$this->load->helper('crossmap/tool_helper');
$this->load->model('web/m_contents_setting');
$return_data['arr_news_setting'] = $this->m_contents_setting->contents_setting_select(1);
return $this->load->view('/m/m_index', $return_data, true);
// return $this->load->view('/m/common/footer');
}
}
?>

View File

@@ -0,0 +1,104 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class main2 extends cm_Controller {
function fn_index() {
$this->load->model('web/m_theme');
# theme_type = 1 (헤드라인뉴스), theme_type = 8 (오늘의칼럼), theme_type = 11 (라이프홈), theme_type = 12 (데일리큐티)
# 16 = 상단(2) , 17 = 라이프(3) , 18 = 은혜의샘(6), 19(3) = 하늘양식, 20=상단_빅원(1), 21=중상단(6)
$this->load->model('web/m_theme');
$req_data = array();
$req_data['theme_types'] = array('21', '11','12','26');
$arr_theme = $this->m_theme->theme_join_vw_content_where_in_theme_type_list($req_data);
$arr_life_home = array();
$arr_daily_cutie = array();
foreach ($arr_theme as $val) {
if($val['theme_type'] == 11) $arr_life_home[$val['rank']] = array('title' => $val['title'], 'sub_title'=> $val['sub_title'], 'sub_content' => $val['sub_content'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx']);
if($val['theme_type'] == 12) $arr_daily_cutie[$val['rank']] = array('title' => $val['title'], 'sub_content' => $val['sub_content'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx']);
if($val['theme_type'] == 21) $arr_grace_middle[$val['rank']] = $val;
}
$req_data = array();
$req_data['search_type'] = '';
$req_data['search_keyword'] = '';
$req_data['search_life_type'] = '';
$req_data['search_category_code1'] = 17;
$req_data['search_category_code2'] = '';
$req_data['search_click1'] = '';
$req_data['search_click2'] = '1';
$req_data['sort_column'] = 'a.reg_date';
$req_data['search_write_id'] = '';
$req_data['offset'] = 0;
$req_data['limit'] = 6;
$this->load->model('admin/life/m_life');
$this->load->model('web/m_channel');
// 책
$req_data['search_category_code2'] = 26;
$arr_book = $this->m_channel->channel_join_category_select(26);
$arr_book['data'] = $this->m_life->life_list($req_data);
// 카드뉴스형식 깨알은혜
$req_data['search_category_code1'] = 5;
$req_data['search_category_code2'] = 28;
$req_data['limit'] = 4;
$arr_card = $this->m_channel->channel_join_category_select(28);
$arr_card['data'] = $this->m_life->life_list($req_data);
// 영어 한구절
$req_data['search_category_code1'] = 10;
$req_data['search_category_code2'] = 7;
$req_data['limit'] = 2;
$arr_en = $this->m_channel->channel_join_category_select(7);
$arr_en['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_en['data'] = $this->m_life->life_list($req_data);
// 영어 한구절
$req_data['search_category_code1'] = 10;
$req_data['search_category_code2'] = 8;
$arr_knowledge = $this->m_channel->channel_join_category_select(8);
$arr_knowledge['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_knowledge['data'] = $this->m_life->life_list($req_data);
// 말씀엽서
$req_data['search_category_code1'] = 5;
$req_data['search_category_code2'] = 3;
$arr_post = $this->m_channel->channel_join_category_select(3);
// 운율있는 묵상
$req_data['search_category_code1'] = 8;
$req_data['search_category_code2'] = 6;
$req_data['limit'] = 4;
$arr_poem = $this->m_channel->channel_join_category_select(8);
$arr_poem['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$arr_poem['data'] = $this->m_life->life_list($req_data);
$arr_channel =array($arr_poem, $arr_post, $arr_en, $arr_card, $arr_book);
$return_data['page_title_1'] = "은혜";
$return_data['arr_life_home'] = $arr_life_home;
$return_data['arr_daily_cutie'] = $arr_daily_cutie;
$return_data['arr_grace_middle'] = $arr_grace_middle;
$return_data['arr_book'] = $arr_book;
$return_data['arr_card'] = $arr_card;
$return_data['arr_en'] = $arr_en;
$return_data['arr_knowledge'] = $arr_knowledge;
$return_data['arr_post'] = $arr_post;
$return_data['arr_poem'] = $arr_poem;
$return_data['arr_channel'] = $arr_channel;
return $this->load->view('/m/life/main3', $return_data, true);
}
}
?>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,677 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class mypage extends cm_Controller
{
function fn_qna(){
# Request
$page = trim($this->input->get_post('page', TRUE));
$search_type = trim($this->input->get_post('search_type', TRUE));
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
$search_type = isset($search_keyword) ? "total" : "";
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# default setting
if($page=='') $page = '1';
# paging 설정
$limit = 10;
$offset = ($page-1) * $limit;
# 1:1문의
$req_data = array();
$req_data['search_type'] = $search_type;
$req_data['search_keyword'] = $search_keyword;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['member_id'] = $SES_MEMBER_ID;
# model - list
$this->load->model('web/m_bbs_question');
$result = $this->m_bbs_question->bbs_question_where_member_id_list($req_data);
$total_count = $this->m_bbs_question->bbs_question_where_member_id_list_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/m/mypage/qna?search_type='.$search_type.'&search_keyword='.$search_keyword.'&page=');
// var_dump($pagination);
$data_num = ($total_count + $limit)-($page*$limit);
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['total_count'] = $total_count;
$return_data['data_num'] = $data_num;
$return_data['pagination'] = $pagination;
$return_data['search_type'] = $search_type;
$return_data['search_keyword'] = $search_keyword;
return $this->load->view("/m/mypage/qna",$return_data,true);
}
function fn_qna_arr_del_proc() {
# request
$arr_idx = $this->input->get_post('is_del', TRUE); // 삭제할 idx
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
if($SES_MEMBER_ID == '') {
gf_alert("회원로그인 후에 가능합니다.", '/m/mypage/qna');
exit;
}
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# model
$this->load->model('web/m_bbs_question');
$now_date = date("Y-m-d H:i:s");
foreach ($arr_idx as $key=>$val) {
$req_data = array();
$req_data['idx'] = $val;
$req_data['write_id'] = $SES_MEMBER_ID;
$count = $this->m_bbs_question->bbs_question_write_id_idx_count($req_data);
if($count > 0) {
$arr_update_data1 = array();
$arr_update_data1[$key]['idx'] = $val;
$arr_update_data1[$key]['is_del'] = 'Y';
$arr_update_data1[$key]['update_id'] = $SES_MEMBER_ID;
$arr_update_data1[$key]['update_date'] = $now_date;
$this->m_bbs_question->bbs_question_is_del_update_batch($arr_update_data1);
$arr_update_data2 = array();
$arr_update_data2[$key]['p_idx'] = $val;
$arr_update_data2[$key]['is_del'] = 'Y';
$arr_update_data2[$key]['update_id'] = $SES_MEMBER_ID;
$arr_update_data2[$key]['update_date'] = $now_date;
$this->m_bbs_question->bbs_question_p_idx_is_del_update_batch($arr_update_data2);
}
}
gf_alert("삭제되었습니다.", '/m/mypage/qna');
}
function fn_qna_add() {
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# view
return $this->load->view('/m/mypage/qna_add', '', true);
}
function fn_qna_add_proc() {
# Request
$title = trim($this->input->get_post('title', TRUE));
$content = trim($this->input->get_post('content', TRUE));
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_NICNAME = $this->session->userdata('C_Member_Nicname');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# model
$this->load->model('web/m_bbs_question');
# max idx 가져오기
$result = $this->m_bbs_question->bbs_question_max_idx_select();
$max_idx = $result['max_idx']+1;
$now_date = date("Y-m-d H:i:s");
$req_data = array();
$req_data['title'] = $title;
$req_data['content'] = $content;
$req_data['idx'] = $max_idx;
$req_data['p_idx'] = $max_idx;
$req_data['s_idx'] = '1';
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['write_id'] = $SES_MEMBER_ID;
$req_data['write_name'] = $SES_MEMBER_NICNAME;
$req_data['reg_date'] = $now_date;
$req_data['update_id'] = $SES_MEMBER_ID;
$req_data['update_date']= $now_date;
# insert
$this->m_bbs_question->bbs_question_insert($req_data);
gf_alert("등록되었습니다.", '/m/mypage/qna');
}
function fn_bookmark() {
# Request
$search_keyword_txt = trim($this->input->get('search_keyword', TRUE));
$page = trim($this->input->get('page', TRUE));
if($page=='') $page = '1';
$limit = 20;
$offset = ($page-1) * $limit;
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# 북마크
$req_data = array();
$req_data['search_type'] = 'total';
$req_data['search_keyword'] = isset($search_keyword_txt) ?$search_keyword_txt :"";
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['member_id'] = $SES_MEMBER_ID;
# model - list
$this->load->model('web/m_bookmark');
$total_count = $this->m_bookmark->bookmark_join_vw_content_list_total_count($req_data);
# paging 설정
$offset = ($page-1) * $limit;
$max_page = ceil($total_count / $limit);
$result = $this->m_bookmark->bookmark_join_vw_content_list($req_data);
$pagination = gf_paging($limit, $page, $max_page, '/m/mypage/bookmark?search_keyword='.$search_keyword_txt.'&page=');
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['limit'] = $limit;
$return_data['total_count'] = $total_count;
$return_data['search_keyword'] = $search_keyword_txt;
$return_data['pagination'] = $pagination;
# view
return $this->load->view('/m/mypage/bookmark', $return_data, true);
}
function fn_delivery(){
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
return $this->load->view('/m/mypage/delivery',null,true);
}
#---------------------------------------------------------------------------
# PURPOSE : delivery list
# CREATE : 2018-05-07
#---------------------------------------------------------------------------
function fn_ajax_delivery_list() {
# request
$page = trim($this->input->get_post('page', TRUE));
$content_type = trim($this->input->get_post('content_type', TRUE));
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$limit = 15;
$offset = ($page-1) * $limit;
$this->load->model('web/m_delivery');
# 채널
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['offset'] = $offset < 0 ? 0 : $offset;
$req_data['limit'] = $limit;
$req_data['member_id'] = $SES_MEMBER_ID;
if($content_type == '2') {
# model
$list = $this->m_delivery->delivery_join_partner_list($req_data);
$total_count = $this->m_delivery->delivery_join_partner_list_total_count($req_data);
} else if($content_type == '3') {
# model
$list = $this->m_delivery->delivery_join_channel_list($req_data);
$total_count = $this->m_delivery->delivery_join_channel_list_total_count($req_data);
} else if($content_type == '9') {
# model
$list = $this->m_delivery->delivery_join_tag_list($req_data);
$total_count = $this->m_delivery->delivery_join_tag_list_total_count($req_data);
}
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
$this->load->view("/m/mypage/delivery_list", $return_data);
}
function fn_req_password() {
return $this->load->view("/m/mypage/req_password",null,true);
}
function fn_member_edit() {
$this->load->helper('cookie');
$crossmap_passwd_check = get_cookie('crossmap_passwd_check');
if($crossmap_passwd_check != 'Y') {
gf_alert("잘못된 접근입니다.", '/m/mypage/req_password');
exit;
}
// set_cookie('crossmap_passwd_check', 'N', 0);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
# model - list
$this->load->model('web/m_member');
$result = $this->m_member->member_where_member_id_select($SES_MEMBER_ID);
if(count($result) == 0){
gf_alert("잘못된 접근입니다.2", '/m');
exit;
}
# view data
$return_data = array();
$return_data['result'] = $result;
# view
return $this->load->view('/m/mypage/member_edit', $return_data, true);
}
function fn_user_comment(){
if(!isset($_GET['id'])){
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$SES_MEMBER_GROUP_IDX = $this->session->userdata('C_Member_Group');
$SES_MEMBER_GROUP_Name = $this->session->userdata('C_Member_Group_Name');
if($SES_MEMBER_GROUP_IDX == '') {
$SES_MEMBER_GROUP_IDX ='8';
$SES_MEMBER_GROUP_Name = '비회원';
}
# 해당회원이 사용가능한지 확인
$req_data = array();
$req_data['member_group_idx'] = $SES_MEMBER_GROUP_IDX;
$req_data['menu_code'] = '3';
# model
$this->load->model('web/m_member_group_menu_auth');
$count = $this->m_member_group_menu_auth->member_group_menu_auth_count($req_data);
if($count > 0) {
gf_alert($SES_MEMBER_GROUP_Name."은 해당 메뉴를 사용하실수 없습니다.", 'back');
exit;
}
}
return $this->load->view('/m/mypage/user_comment_inc',null, true);
}
#---------------------------------------------------------------------------
# PURPOSE : user_comment list
# CREATE : 2018-05-08
#---------------------------------------------------------------------------
function fn_ajax_user_comment_list() {
# request
$page = trim($this->input->get_post('page', TRUE));
$content_type = trim($this->input->get_post('content_type', TRUE));
$write_id = trim($this->input->get_post('write_id', TRUE));
$sort = trim($this->input->get_post('sort', TRUE));
switch ($sort) {
case '4': $sort_column = 'reply_count'; $sort_type = 'desc'; break;
case '3': $sort_column = 'reg_date'; $sort_type = 'asc'; break;
case '2': $sort_column = 'reg_date'; $sort_type = 'desc'; break;
case '1': $sort_column = 'like_count'; $sort_type = 'desc'; break;
default : $sort_column = 'reg_date'; $sort_type = 'desc'; break;
}
$this->load->helper('cookie');
$comment_sns_id = get_cookie('crossmap_comment_sns_id');
$limit = 15;
$offset = ($page-1) * $limit;
$is_comment_view = 'N';
if($comment_sns_id != '') {
if($content_type =='3') {
if($write_id==$comment_sns_id) $is_comment_view = 'Y';
} else {
$is_comment_view = 'Y';
}
}
$total_count = 0;
$list = array();
if($is_comment_view == 'Y') {
# 댓글
$this->load->model('web/m_comment');
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['write_id'] = $write_id;
# 총댓글수 + 답글
$total_count = $this->m_comment->comment_join_vw_content_where_write_id_list_count($req_data);
# 댓글 리스트
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['sort_column'] = $sort_column;
$req_data['sort_type'] = $sort_type;
$req_data['write_id'] = $write_id;
# list
$list = $this->m_comment->comment_join_vw_content_where_write_id_list($req_data);
}
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
$return_data = array();
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
# view
return $this->load->view("/m/mypage/user_comment_list", $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 댓글 삭제
# CREATE : 2018-05-07
#---------------------------------------------------------------------------
function fn_ajax_user_comment_del_proc() {
# request
$idx = trim($this->input->get_post('idx', TRUE));
$this->load->helper('cookie');
$comment_sns_id = get_cookie('crossmap_comment_sns_id');
if($comment_sns_id == '') throw new Cm_Exception('json', '9999', '회원로그인 후에 가능합니다.');
# model
$this->load->model('web/m_comment');
$this->load->model('web/m_comment_setting');
$req_data = array();
$req_data['idx'] = $idx;
$req_data['write_id'] = $comment_sns_id;
$arr_comment = $this->m_comment->comment_member_id_idx_select($req_data);
if(count($arr_comment) == 0) {
throw new Cm_Exception('json', '9999', '삭제할수 없는 댓글입니다.');
} else {
$content_type = $arr_comment['content_type'];
$comment_org = $arr_comment['comment'];
$arr_setting = $this->m_comment_setting->comment_setting_where_content_idx_select($content_type);
$comment = '작성자에 의해 삭제된 댓글입니다.';
if(isset($arr_setting['self_del_contnet'])==true) {
$comment = $arr_setting['self_del_contnet'];
}
$req_data = array();
$req_data['idx'] = $idx;
$req_data['comment'] = $comment;
$req_data['comment_org'] = $comment_org;
$req_data['del_date'] = date("Y-m-d H:i:s");
$req_data['is_del'] = 'Y';
$req_data['comment_status'] = '4';
$result = $this->m_comment->comment_is_del_update($req_data);
}
if($result) {
$return_data['result'] = array('code' => '0000');
} else {
$return_data['result'] = array('code' => '9999');
}
# view
return $this->load->view('/web/comm/result_json', $return_data);
}
function fn_ajax_comment_reply_list() {
# request
$p_idx = trim($this->input->get_post('comment_idx', TRUE));
$page = trim($this->input->get_post('page', TRUE));
$sort = trim($this->input->get_post('sort', TRUE));
$type = trim($this->input->get_post('type', TRUE));
switch ($sort) {
case '4': $sort_column = 'like_count'; $sort_type = 'desc'; break;
case '3': $sort_column = 'reg_date'; $sort_type = 'asc'; break;
case '2': $sort_column = 'reg_date'; $sort_type = 'desc'; break;
case '1': $sort_column = 'like_count'; $sort_type = 'desc'; break;
default : $sort_column = 'reg_date'; $sort_type = 'desc'; break;
}
# paging 설정
if($page == '') $page = 1;
$limit = 10;
if($type == 'user_comment') $limit = 50;
$offset = ($page-1) * $limit;
# 검색
$req_data = array();
$req_data['p_idx'] = $p_idx;
$req_data['sort_column'] = $sort_column;
$req_data['sort_type'] = $sort_type;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
# model - list
$this->load->model('web/m_comment');
# 총댓글수
$total_count = $this->m_comment->comment_where_p_idx_count($p_idx);
$arr_comment = $this->m_comment->comment_child_list($req_data);
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
# view data
$return_data = array();
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['arr_comment'] = $arr_comment;
$return_data['more_list'] = $more_list;
# view
if($type == 'user_comment') {
return $this->load->view('/m/mypage/user_comment_reply_list', $return_data);
} else {
return $this->load->view('/m/mypage/comment_reply_list', $return_data);
}
}
}

View File

@@ -0,0 +1,660 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class news extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 뷰
# CREATE : 2018-04-16
#---------------------------------------------------------------------------
function fn_news_view() {
# Request
$idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '1';
$bookmark_count = 0;
$arr_review = array();
if($SES_MEMBER_ID !='') {
# 게시물 열람 불가 체크
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['limit_type'] = '2';
# model
$this->load->model('web/m_blind_limit');
$arr_blind = $this->m_blind_limit->blind_limit_where_member_id_limit_type_select($req_data);
if(count($arr_blind) > 0) {
$return_data['arr_blind'] = $arr_blind;
$return_data['url'] = '/web/news/';
# view
return $this->load->view('/web/comm/blind_view_alert', $return_data, true);
}
# model - bookmark
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_bookmark');
$bookmark_count = $this->m_bookmark->bookmark_member_id_content_idx_count($req_data);
# model - review
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_review_log');
$arr_review = $this->m_review_log->review_log_where_member_id_content_idx_select($req_data);
}
# hit count update
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$req_data['member_id'] = $SES_MEMBER_ID;
$this->load->library('comm');
$this->comm->fn_hit_count_update($req_data);
# model - news view
$this->load->model('web/m_news');
$result = $this->m_news->news_join_news_section_press_select($idx);
# 연관글
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_relation_article');
$arr_relation_news = $this->m_relation_article->relation_article_join_news_list($req_data);
# 영적기상도
$this->load->model('web/m_weather');
$arr_weather = $this->m_weather->weather_join_relation_article_join_news_where_news_idx_select($idx);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['arr_relation_news'] = $arr_relation_news;
$return_data['arr_weather'] = $arr_weather;
$return_data['arr_review'] = $arr_review;
$return_data['bookmark_count'] = $bookmark_count;
$return_data['result'] = $result;
# view
return $this->load->view('/m/news/news_view', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 컬럼 메인
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_column() {
# 칼럼
$req_data = array();
$req_data['sort_column'] = 'reg_date';
$req_data['offset'] = 0;
$req_data['limit'] = 6;
# model - list
$this->load->model('web/m_column');
$result = $this->m_column->column_list($req_data);
$total_count = $this->m_column->column_total_count();
# 칼럼리스트
$req_data = array();
$req_data['member_group_idx'] = 7;
$req_data['sort_column'] = 'display_sort';
$this->load->model('web/m_partner');
$arr_columnist = $this->m_partner->partner_all_list($req_data);
# 테마
# 7: 헤드라인칼럼
$theme_types = array('7', '15');
$this->load->model('web/m_theme');
$req_data = array();
$req_data['theme_types'] = $theme_types;
$arr_theme = $this->m_theme->theme_join_vw_content_where_in_theme_type_list($req_data);
$arr_recomm_life = array();
$arr_headline_column = array();
foreach ($arr_theme as $val) {
if($val['theme_type'] == 7) $arr_headline_column[$val['rank']] = array('rank'=>$val['rank'], 'title' => $val['title'], 'column_name'=> $val['column_name'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx'], 'partner_idx' => $val['partner_idx'], 'content' => $val['content']);
if($val['theme_type'] == 15) $arr_recomm_life[$val['rank']] = array('rank'=>$val['rank'], 'title' => $val['title'], 'sub_content' => $val['sub_content'], 'theme_img' => $val['theme_img'], 'content_idx' => $val['content_idx']);
}
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['total_count'] = $total_count;
$return_data['arr_columnist'] = $arr_columnist;
$return_data['arr_headline_column'] = $arr_headline_column;
$return_data['arr_recomm_life'] = $arr_recomm_life;
# view
return $this->load->view('/m/news/column', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : column list more
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_ajax_column_list_more() {
# request
$page = trim($this->input->get_post('page', TRUE));
# paging 설정 -- 2page 부터 시작이고 1페이지는 6개였음.
$limit = 10;
$offset = ($page-2) * $limit;
$offset = $offset + 6;
# 검색
$req_data = array();
$req_data['sort_column'] = 'reg_date';
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
# model - list
$this->load->model('web/m_column');
$arr_column = $this->m_column->column_list($req_data);
$total_count = $this->m_column->column_total_count();
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
# view data
$return_data = array();
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $arr_column;
$return_data['more_list'] = $more_list;
# view
return $this->load->view('/m/news/column_list_more', $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 컬럼 뷰
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_column_view() {
# Request
$idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '2';
$bookmark_count = 0;
if($SES_MEMBER_ID !='') {
# 게시물 열람 불가 체크
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['limit_type'] = '2';
# model
$this->load->model('web/m_blind_limit');
$arr_blind = $this->m_blind_limit->blind_limit_where_member_id_limit_type_select($req_data);
if(count($arr_blind) > 0) {
$return_data['arr_blind'] = $arr_blind;
$return_data['url'] = '/web/news/column';
# view
return $this->load->view('/web/comm/blind_view_alert', $return_data, true);
}
# bookmark
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_bookmark');
$bookmark_count = $this->m_bookmark->bookmark_member_id_content_idx_count($req_data);
}
# hit count update
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$req_data['member_id'] = $SES_MEMBER_ID;
$this->load->library('comm');
$this->comm->fn_hit_count_update($req_data);
# model - column view
$this->load->model('web/m_column');
$result = $this->m_column->column_select($idx);
# 연관글
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $idx;
$this->load->model('web/m_relation_article');
$arr_relation_column = $this->m_relation_article->relation_article_join_column_list($req_data);
# 영적기상도
$this->load->model('web/m_weather');
$arr_weather = $this->m_weather->weather_join_relation_article_join_news_where_news_idx_select($idx);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['arr_relation_column'] = $arr_relation_column;
$return_data['arr_weather'] = $arr_weather;
$return_data['bookmark_count'] = $bookmark_count;
$return_data['result'] = $result;
# view
return $this->load->view('/m/news/column_view', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 프린트
# CREATE : 2018-04-16
#---------------------------------------------------------------------------
function fn_nonskin_news_print() {
# view
return $this->load->view('/m/news/news_print', '');
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 칼럼니스트 메인
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_columnist() {
# Request
$page = trim($this->input->get_post('page', TRUE));
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$partner_idx = $this->uri->segment(4);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$content_type = '2';
# default setting
if($search_sort == '') $search_sort = '1';
if($page=='') $page = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
$column_delivery_count = 0;
if($SES_MEMBER_ID != '') {
# 배달여부
$req_data = array();
$req_data['content_type'] = $content_type;
$req_data['main_idx'] = $partner_idx;
$req_data['member_id'] = $SES_MEMBER_ID;
$this->load->model('web/m_delivery');
$arr_column_delivery = $this->m_delivery->delivery_where_member_id_main_idx_select($req_data);
$column_delivery_count = count($arr_column_delivery);
}
# 칼럼정보
# model - list
$this->load->model('web/m_partner');
$arr_columnist = $this->m_partner->partner_select($partner_idx);
if(count($arr_columnist)==0) {
gf_alert("잘못된 접근입니다.", '/');
exit;
}
# paging 설정
$limit = 10;
$offset = ($page-1) * $limit;
# 칼럼 리스트
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['search_type'] = 'partner_idx';
$req_data['search_key'] = $partner_idx;
# model - list
$this->load->model('web/m_column');
$result = $this->m_column->column_list($req_data);
$total_count = $this->m_column->column_list_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/web/news/columnist/'.$partner_idx.'?search_sort='.$search_sort.'&page=');
# view data
$return_data = array();
$return_data['list'] = $result;
$return_data['total_count'] = $total_count;
$return_data['search_sort'] = $search_sort;
$return_data['pagination'] = $pagination;
$return_data['arr_columnist'] = $arr_columnist;
$return_data['column_delivery_count'] = $column_delivery_count;
# view
return $this->load->view('/m/news/columnist', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 랭킹
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_ranking() {
# Request
$page = trim($this->input->get_post('page', TRUE));
$ranking_type = trim($this->input->get_post('ranking_type', TRUE));
$content_type = 1;
# default setting
if($ranking_type == '') $ranking_type = '1';
if($page=='') $page = '1';
# paging 설정
$limit = 10;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['ranking_type'] = $ranking_type;
$req_data['content_type'] = $content_type;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$this->load->model('web/m_ranking');
$result = $this->m_ranking->ranking_join_news_list($req_data);
$total_count = $this->m_ranking->ranking_join_news_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/web/news/ranking?ranking_type='.$ranking_type.'&page=');
# news setting
$this->load->model('web/m_contents_setting');
$arr_news_setting = $this->m_contents_setting->contents_setting_select(1);
# view data
$return_data = array();
$return_data['total_count'] = $total_count;
$return_data['list'] = $result;
$return_data['pagination'] = $pagination;
$return_data['ranking_type'] = $ranking_type;
$return_data['arr_news_setting'] = $arr_news_setting;
# view
return $this->load->view('/m/news/ranking', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 카테고리
# CREATE : 2018-04-28
#---------------------------------------------------------------------------
function fn_category() {
# Request
$page = trim($this->input->get_post('page', TRUE));
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$category_code = $this->uri->segment(4);
$this->load->helper('url');
if($category_code=='') {
redirect(WWW_CROSSMAP.'/web/news/');
exit;
}
# default setting
if($search_sort == '') $search_sort = '1';
if($page=='') $page = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; break;
case '2': $sort_column = 'popular_count'; break;
default : $sort_column = 'display_date'; break;
}
# paging 설정
$limit = 10;
$offset = ($page-1) * $limit;
# 뉴스
$req_data = array();
$req_data['sort_column'] = $sort_column;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['search_type'] = 'category_code';
$req_data['search_keyword'] = $category_code;
# model - list
$this->load->model('web/m_news');
$result = $this->m_news->news_list($req_data);
$total_count = $this->m_news->news_list_total_count($req_data);
$category_count = strlen($category_code);
$category_code1 = substr($category_code, 0, 2);
$category_code2 = ''; $category_code3 = '';
if($category_count == 6) $category_code3 = substr($category_code, 0, 6);
if($category_count == 4 || $category_count == 6) $category_code2 = substr($category_code, 0, 4);
# 카테고리
$this->load->model('web/m_news_section');
$arr_category = $this->m_news_section->news_section_select($category_code);
$arr_category1 = $this->m_news_section->news_section_select($category_code1);
$arr_category2 = array();
if($category_code2 != '') $arr_category2 = $this->m_news_section->news_section_select($category_code2);
$arr_category3 = array();
if($category_code3 != '') $arr_category3 = $this->m_news_section->news_section_select($category_code3);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/m/news/category/'.$category_code.'?search_sort='.$search_sort.'&page=');
# view data
$return_data = array();
$return_data['total_count'] = $total_count;
$return_data['list'] = $result;
$return_data['pagination'] = $pagination;
$return_data['search_sort'] = $search_sort;
$return_data['category_code'] = $category_code;
$return_data['arr_category'] = $arr_category;
$return_data['arr_category1'] = $arr_category1;
$return_data['arr_category2'] = $arr_category2;
$return_data['arr_category3'] = $arr_category3;
# view
return $this->load->view('/m/news/category', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스 댓글
# CREATE : 2018-04-29
#---------------------------------------------------------------------------
function fn_news_comment() {
# Request
$idx = $this->uri->segment(4);
# model - news view
$this->load->model('web/m_news');
$result = $this->m_news->news_join_news_section_press_select($idx);
# 영적기상도
$this->load->model('web/m_weather');
$arr_weather = $this->m_weather->weather_join_relation_article_join_news_where_news_idx_select($idx);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['arr_weather'] = $arr_weather;
$return_data['result'] = $result;
# view
return $this->load->view('/m/news/news_comment', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 칼럼 댓글
# CREATE : 2018-05-14
#---------------------------------------------------------------------------
function fn_column_comment() {
# Request
$idx = $this->uri->segment(4);
# model - column view
$this->load->model('web/m_column');
$result = $this->m_column->column_select($idx);
# 영적기상도
$this->load->model('web/m_weather');
$arr_weather = $this->m_weather->weather_join_relation_article_join_news_where_news_idx_select($idx);
# view data
$return_data = array();
$return_data['idx'] = $idx;
$return_data['arr_weather'] = $arr_weather;
$return_data['result'] = $result;
# view
return $this->load->view('/m/news/column_comment', $return_data, true);
}
function fn_ajax_news_more(){
$ci = $this;
$ci->db->from("news");
$ci->db->select("*, `news`.idx as content_idx");
$ci->db->join('press', 'press.idx = news.press_idx');
$ci->db->where("news.is_del","N");
$ci->db->where("news.is_display","Y");
$ci->db->order_by("news.reg_date","desc");
$offset = $_GET['page'] * 6;
$ci->db->limit(6,$offset);
$res = $ci->db->get();
$result = $res->result_array();
// echo $ci->db->last_query();
// exit();
# news setting
$this->load->model('web/m_contents_setting');
$arr_news_setting = $this->m_contents_setting->contents_setting_select(1);
foreach($result as $data):
?>
<div class="news_list_cont">
<div class="art-img2<?=($data['video_url']) ? " plays_b" : ""; ?>"><a href="/m/news/news_view/<?=$data['idx']?>"><img src="<?=$data['main_img']?>" width="160"></a></div>
<div class="art-info2">
<h2 class="art-title">
<a href="/m/news/news_view/<?=$data['idx']?>"><?=$data['title']?></a>
</h2>
<p class="art-info"><?
$a = time();
$b = strtotime($result[0]['update_date']);
echo floor(($a-$b)/3600);
?>시간 전
<? if($arr_news_setting['etc_char1']=='Y') {?>
|
<a href="<?=$data['homepage']?>"><?=$data['press_name']?></a>
<?}?>
<span class="feedback fr">
<img src="/img/mobile/img_comments.gif"> <?=$data['comment_count']?>+</span>
</p>
</div>
</div>
<?endforeach;
exit();
}
}
?>

View File

@@ -0,0 +1,77 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class prayer extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 메인
# CREATE : 2019-04-17
#---------------------------------------------------------------------------
function fn_index() {
// 말씀과 묵상
$req_data = array();
$req_data['search_type'] = '';
$req_data['search_keyword'] = '';
$req_data['search_life_type'] = '';
$req_data['search_category_code1'] = 26;
$req_data['search_category_code2'] = '';
$req_data['search_click1'] = '';
$req_data['search_click2'] = '1';
$req_data['sort_column'] = 'a.reg_date';
$req_data['search_write_id'] = '';
$req_data['offset'] = 0;
$req_data['limit'] = 2;
$this->load->model('admin/life/m_life');
$this->load->model('web/m_channel');
// 열방을 위한 기도
$req_data['search_category_code2'] = '49';
$world = $this->m_channel->channel_join_category_select(49);
$world['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$world['data'] = $this->m_life->life_list($req_data);
//아침을 여는 기도
$req_data['search_category_code2'] = '18';
$moning = $this->m_channel->channel_join_category_select(18);
$moning['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$moning['data'] = $this->m_life->life_list($req_data);
// 순교자의 소리
$req_data['search_category_code2'] = '46';
$sound = $this->m_channel->channel_join_category_select(46);
$sound['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$sound['data'] = $this->m_life->life_list($req_data);
//Open door
$req_data['search_category_code2'] = '47';
$open_door = $this->m_channel->channel_join_category_select(47);
$open_door['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$open_door['data'] = $this->m_life->life_list($req_data);
//Open door
$req_data['search_category_code2'] = '47';
$corner_stone = $this->m_channel->channel_join_category_select(47);
$corner_stone['channel_article_count'] = $this->m_life->life_list_total_count($req_data);
$corner_stone['data'] = $this->m_life->life_list($req_data);
# view data
$return_data['channel'] = array();
$return_data['page_title_1'] = "기도공감";
array_push($return_data['channel'], $world, $moning, $sound, $open_door, $corner_stone);
// $return_data['arr_praise'] = ;
// $return_data['arr_testimony'] = ;
// $return_data['arr_talkshow'] = ;
# view
return $this->load->view('/m/cmtv/channel_recommend', $return_data, true);
}
}
?>

View File

@@ -0,0 +1,72 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class rules extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 서비스이용약관
# CREATE : 2018-04-04
#---------------------------------------------------------------------------
function fn_service() {
# model - 사이트 정보
$this->load->model('web/m_site_info');
$site_info = $this->m_site_info->site_info_select(1);
$return_data = array();
$return_data['site_info'] = $site_info;
# view
return $this->load->view('/m/rules/service', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 개인정보 취급방침
# CREATE : 2018-05-07
#---------------------------------------------------------------------------
function fn_privacy() {
# model - 사이트 정보
$this->load->model('web/m_site_info');
$site_info = $this->m_site_info->site_info_select(1);
$return_data = array();
$return_data['site_info'] = $site_info;
# view
return $this->load->view('/m/rules/privacy', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 개인정보 수집 및 이용
# CREATE : 2018-05-07
#---------------------------------------------------------------------------
function fn_privacy_agreement() {
# model - 사이트 정보
$this->load->model('web/m_site_info');
$site_info = $this->m_site_info->site_info_select(1);
$return_data = array();
$return_data['site_info'] = $site_info;
# view
return $this->load->view('/m/rules/privacy_agreement', $return_data, true);
}
}
?>

View File

@@ -0,0 +1,690 @@
<?php defined('BASEPATH') OR exit('No direct script access allowed');
header("Content-Type: text/html; charset=UTF-8");
/**
* 인클루드 class
*
* cm_controller: 부모 Class(CI_Controller 확장한 custome class)
*/
include_once(APPPATH.'core/m/cm_controller.php');
class search extends cm_Controller {
#---------------------------------------------------------------------------
# PURPOSE : 검색메인
# CREATE : 2018-04-04
#---------------------------------------------------------------------------
function cookies($key){
$key = $key."|".date("m.d",time());
$check = get_cookie("pre_keyword");
if(isset($check)){
$keywords = json_decode($check);
if(count($keywords) >=5 ){
array_splice($keywords,0,1);
}
// $i = array_search($key,$keywords);
// var_dump($i);
// exit();
@$i = (string) array_search($key,$keywords);
@array_splice($keywords,$i,1);
array_unshift($keywords,$key);
}
else{
$keywords = array($key);
}
setcookie("pre_keyword",json_encode($keywords),0,'/');
//
// var_dump(get_cookie("pre_keyword"));
// exit();
}
function fn_index() {
# Request
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
# 연관검색어
$req_data = array();
$req_data['keyword'] = $search_keyword_tmp;
$req_data['offset'] = 0;
$req_data['limit'] = 10;
$this->load->model('web/m_search_keyword_relation');
$arr_search_keyword_relation = $this->m_search_keyword_relation->search_keyword_relation_list($req_data);
$search_keyword_txt = gf_search_keyword_fulltext_string($search_keyword_tmp);
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_txt;
$req_data['offset'] = 0;
$req_data['limit'] = 3;
$req_data['sort_column'] = 'display_date';
# 라이프
$this->load->model('web/m_life');
$arr_life = $this->m_life->life_list($req_data);
# 뉴스
$this->load->model('web/m_news');
$arr_news = $this->m_news->news_list($req_data);
# 칼럼
$this->load->model('web/m_column');
$arr_column = $this->m_column->column_list($req_data);
# 뉴스 - 관련 뉴스
$this->load->model('web/m_relation_article');
$arr_news_relation_article = array();
foreach($arr_news as $val) {
$req_data = array();
$req_data['content_type'] = '1';
$req_data['content_idx'] = $val['idx'];
$arr_news_relation_article[$val['idx']] = $this->m_relation_article->relation_article_join_news_list($req_data);
}
$search_keyword_txt = addslashes($search_keyword);
# 동영상
$req_data = array();
$req_data['search_type'] = 'main_search_and_video_url';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = 0;
$req_data['limit'] = 15;
$req_data['sort_column'] = 'display_date';
// $arr_life_video = $this->m_life->life_list($req_data);
// $arr_news_video = $this->m_news->news_list($req_data);
// $arr_column_video = $this->m_column->column_list($req_data);
// $arr_video = array_merge($arr_life_video, $arr_news_video, $arr_column_video);
$req_data['search_type'] = 'main_search_and_video_url';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = 0;
$req_data['limit'] = 15;
$this->load->model('web/m_vw_content');
$arr_video = $this->m_vw_content->vw_content_list($req_data);
$arr_display_date = array();
foreach ($arr_video as $key=>$val) {
$arr_display_date[$key] = $val['display_date'];
}
array_multisort($arr_display_date, SORT_DESC, $arr_video);
# 이미지
$arr_img = array_merge($arr_life, $arr_news, $arr_column);
$arr_display_date = array();
foreach ($arr_img as $key=>$val) {
$arr_display_date[$key] = $val['display_date'];
}
array_multisort($arr_display_date, SORT_DESC, $arr_img);
$total_count = count($arr_img);
$return_data = array();
$return_data['arr_life'] = $arr_life;
$return_data['arr_news'] = $arr_news;
$return_data['arr_column'] = $arr_column;
$return_data['search_keyword'] = $search_keyword;
$return_data['arr_search_keyword_relation'] = $arr_search_keyword_relation;
$return_data['arr_img'] = $arr_img;
$return_data['arr_video'] = $arr_video;
$return_data['total_count'] = $total_count;
$return_data['arr_news_relation_article'] = $arr_news_relation_article;
if($search_keyword != '')$this->cookies($search_keyword);
# view
return $this->load->view('/m/search/index', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 검색어 찾기
# CREATE : 2018-05-02
#---------------------------------------------------------------------------
function fn_ajax_search_keyword() {
# request
$keyword = trim($this->input->get_post('keyword', TRUE));
# select
$req_data = array();
$req_data['search_type'] = 'keyword';
$req_data['search_keyword'] = $keyword;
$req_data['offset'] = 0;
$req_data['limit'] = 15;
$this->load->model('web/m_search_keyword');
$result_tmp = $this->m_search_keyword->search_keyword_list($req_data);
$result = array();
foreach ($result_tmp as $key=>$val) {
$result[$key]['keyword'] = str_replace("'", "\\'", $val['keyword']);
}
if(count($result) > 0) {
$return_data['result'] = array('code' => '0000', 'data' => $result);
} else {
$return_data['result'] = array('code' => '9999');
}
# view
return $this->load->view('/web/comm/result_json', $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 검색어 찾기
# CREATE : 2018-05-02
#---------------------------------------------------------------------------
function fn_ajax_search_keyword_reg() {
# request
$keyword = trim($this->input->get_post('keyword', TRUE));
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
$this->load->library('comm');
$this->load->model('web/m_search_keyword');
$this->load->model('web/m_search_keyword_relation');
$arr_keyword = explode(" ", $keyword);
if(count($arr_keyword) > 0) {
array_unshift($arr_keyword, $keyword);
foreach ($arr_keyword as $key =>$val) {
# 금칙어
$forbidden_word_count = $this->comm->fn_forbidden_word($val);
if($forbidden_word_count > 0) {
throw new Cm_Exception('json', '9999', '검색할수 없는 단어가 있습니다.');
exit;
}
# 검색키워드 넣기
$req_data = array();
$req_data['keyword'] = $val;
$result = $this->m_search_keyword->search_keyword_where_keyword_select($req_data);
if($result > 0) {
$this->m_search_keyword->search_keyword_search_count_update($result['idx']);
} else {
$req_data = array();
$req_data['keyword'] = $val;
$this->m_search_keyword->search_keyword_insert($req_data);
}
# 연관검색어
if($key > 1) {
$req_data = array();
$req_data['keyword'] = $arr_keyword[1];
$req_data['relation_keyword'] = $val;
$result1 = $this->m_search_keyword_relation->search_keyword_relation_where_keyword_relation_keyword_select($req_data);
if($result1 > 0) {
$this->m_search_keyword_relation->search_keyword_relation_search_count_update($result1['idx']);
} else {
$req_data = array();
$req_data['keyword'] = $arr_keyword[1];
$req_data['relation_keyword'] = $val;
$this->m_search_keyword_relation->search_keyword_relation_keyword_insert($req_data);
}
}
}
}
# log insert
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['keyword'] = $keyword;
$this->load->model('web/m_search_keyword_log');
$this->m_search_keyword_log->search_keyword_log_insert($req_data);
$return_data['result'] = array('code' => '0000');
# view
return $this->load->view('/web/comm/result_json', $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 이미지
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_image() {
# Request
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = 0;
$req_data['limit'] = 100;
$this->load->model('web/m_vw_content');
$total_count = $this->m_vw_content->vw_content_list_total_count($req_data);
$return_data = array();
$return_data['search_keyword'] = $search_keyword;
$return_data['total_count'] = $total_count;
$return_data['limit'] = 100;
# view
return $this->load->view('/m/search/image', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 이미지 더가져오기
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_ajax_image_list_more() {
# request
$page = trim($this->input->get_post('page', TRUE));
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
# paging 설정
$limit = 100;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$this->load->model('web/m_vw_content');
$list = $this->m_vw_content->vw_content_list($req_data);
$total_count = $this->m_vw_content->vw_content_list_total_count($req_data);
$more_list = 'N';
if(($total_count-($page*$limit)) > 0){
$more_list = 'Y';
}
# view data
$return_data = array();
$return_data['result_code'] = '0000';
$return_data['total_count'] = $total_count;
$return_data['list'] = $list;
$return_data['more_list'] = $more_list;
$return_data['limit'] = $limit;
$return_data['page'] = $page;
$return_data['view_count'] = $offset;
$return_data['search_keyword_tmp'] = $search_keyword_tmp;
return $this->load->view('/m/search/image_list_more', $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 이미지, 동영상 신고
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_ajax_spam_proc() {
$spam_type = trim($this->input->get_post('spam_type', TRUE));
$spam_list = $this->input->get_post('spam_list', TRUE);
$SES_MEMBER_ID = $this->session->userdata('C_Member_Id');
if($spam_type=='') throw new Cm_Exception('json', '9999', '신고할 내용이 없습니다.');
if(count($spam_list)==0) throw new Cm_Exception('json', '9999', '신고할 내용이 없습니다.');
if($SES_MEMBER_ID == '') throw new Cm_Exception('json', '9999', '로그인을 하셔야 가능합니다.');
$this->load->model('web/m_spam_media_log');
foreach ($spam_list as $val) {
$arr_content = explode("_", $val);
$content_type = $arr_content[0];
$content_idx = $arr_content[1];
if($content_type=='') throw new Cm_Exception('json', '9999', '신고할 내용이 없습니다.');
if($content_idx=='') throw new Cm_Exception('json', '9999', '신고할 내용이 없습니다.');
# insert
$req_data = array();
$req_data['member_id'] = $SES_MEMBER_ID;
$req_data['spam_type'] = $spam_type;
$req_data['content_type'] = $content_type;
$req_data['content_idx'] = $content_idx;
$this->m_spam_media_log->spam_media_log_insert($req_data);
}
$return_data['result'] = array('code' => '0000');
# view
return $this->load->view('/web/comm/result_json', $return_data);
}
#---------------------------------------------------------------------------
# PURPOSE : 라이프, 칼럼
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_list() {
# Request
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$content_type = trim($this->input->get_post('content_type', TRUE));
$page = trim($this->input->get_post('page', TRUE));
$content_type = $content_type ? $content_type : 3;
# default setting
if($page=='') $page = '1';
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
$search_keyword_txt = gf_search_keyword_fulltext_string($search_keyword_tmp);
# paging 설정
$limit = 20;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_txt;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['sort_column'] = 'display_date';
if($content_type == '3') {
# 라이프
$this->load->model('web/m_life');
$list = $this->m_life->life_list($req_data);
$total_count = $this->m_life->life_list_total_count($req_data);
$page_title = '라이프';
} else if($content_type == '2') {
# 칼럼
$this->load->model('web/m_column');
$list = $this->m_column->column_list($req_data);
$total_count = $this->m_column->column_list_total_count($req_data);
$page_title = '칼럼';
}
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/m/search/list?search_keyword='.urlencode($search_keyword).'&content_type='.$content_type.'&page=');
$start_row = $offset+1;
$end_row = $limit*$page;
if($end_row >= $total_count) $end_row = $total_count;
$return_data = array();
$return_data['search_keyword'] = $search_keyword;
$return_data['list'] = $list;
$return_data['total_count'] = $total_count;
$return_data['page'] = $page;
$return_data['start_row'] = $start_row;
$return_data['end_row'] = $end_row;
$return_data['pagination'] = $pagination;
$return_data['page_title'] = $page_title;
$return_data['content_type'] = $content_type;
$this->cookies($search_keyword);
# view
return $this->load->view('/m/search/list', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 영상
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_video() {
# Request
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$page = trim($this->input->get_post('page', TRUE));
# default setting
if($page=='') $page = '1';
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
# paging 설정
$limit = 20;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['search_type'] = 'main_search_and_video_url';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$this->load->model('web/m_vw_content');
$list = $this->m_vw_content->vw_content_list($req_data);
$total_count = $this->m_vw_content->vw_content_list_total_count($req_data);
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/m/search/video?search_keyword='.urlencode($search_keyword).'&page=');
$start_row = $offset+1;
$end_row = $limit*$page;
if($end_row >= $total_count) $end_row = $total_count;
$return_data = array();
$return_data['search_keyword'] = $search_keyword;
$return_data['list'] = $list;
$return_data['total_count'] = $total_count;
$return_data['page'] = $page;
$return_data['start_row'] = $start_row;
$return_data['end_row'] = $end_row;
$return_data['pagination'] = $pagination;
$this->cookies($search_keyword);
# view
return $this->load->view('/m/search/video', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 뉴스
# CREATE : 2018-05-03
#---------------------------------------------------------------------------
function fn_news() {
# Request
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$page = trim($this->input->get_post('page', TRUE));
$search_sort = trim($this->input->get_post('search_sort', TRUE));
$content_idx = trim($this->input->get_post('content_idx', TRUE));
# default setting
if($search_sort == '') $search_sort = '1';
if($page=='') $page = '1';
# sort
switch ($search_sort) {
case '1': $sort_column = 'display_date'; $sort_type = 'desc'; $sorting = SORT_DESC; break;
case '2': $sort_column = 'display_date'; $sort_type = 'asc'; $sorting = SORT_ASC; break;
default : $sort_column = 'display_date'; $sort_type = 'desc'; $sorting = SORT_DESC; break;
}
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
$search_keyword_txt = gf_search_keyword_fulltext_string($search_keyword_tmp);
# paging 설정
$limit = 20;
$offset = ($page-1) * $limit;
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_txt;
$req_data['offset'] = $offset;
$req_data['limit'] = $limit;
$req_data['sort_column'] = $sort_column;
$req_data['sort_type'] = $sort_type;
$news_type = '';
$arr_news_relation_article = array();
if($content_idx == '') {
# 뉴스
$this->load->model('web/m_news');
$list = $this->m_news->news_list($req_data);
$total_count = $this->m_news->news_list_total_count($req_data);
} else {
# 뉴스
$this->load->model('web/m_news');
$list[] = $this->m_news->news_select($content_idx);
}
# 뉴스 - 관련 뉴스
$this->load->model('web/m_relation_article');
foreach($list as $val) {
$req_data = array();
$req_data['content_type'] = '1';
$req_data['content_idx'] = $val['idx'];
$arr_news_relation_article[$val['idx']] = $this->m_relation_article->relation_article_join_news_list($req_data);
}
if($content_idx != '') {
$list = array_merge($list, $arr_news_relation_article[$content_idx]);
$total_count = count($list);
$news_type='relation';
$arr_news_relation_article = array();
$arr_display_date = array();
foreach ($list as $key=>$val) {
$arr_display_date[$key] = $val['display_date'];
}
array_multisort($arr_display_date, $sorting, $list);
}
# page
$max_page = ceil($total_count / $limit);
$pagination = gf_paging($limit, $page, $max_page, '/m/search/news?search_keyword='.urlencode($search_keyword).'&content_idx='.$content_idx.'&search_sort='.$search_sort.'&page=');
$start_row = $offset+1;
$end_row = $limit*$page;
if($end_row >= $total_count) $end_row = $total_count;
$return_data = array();
$return_data['search_keyword'] = $search_keyword;
$return_data['list'] = $list;
$return_data['total_count'] = $total_count;
$return_data['page'] = $page;
$return_data['start_row'] = $start_row;
$return_data['end_row'] = $end_row;
$return_data['pagination'] = $pagination;
$return_data['search_sort'] = $search_sort;
$return_data['arr_news_relation_article'] = $arr_news_relation_article;
$return_data['news_type'] = $news_type;
$return_data['content_idx'] = $content_idx;
$this->cookies($search_keyword);
# view
return $this->load->view('/m/search/news', $return_data, true);
}
#---------------------------------------------------------------------------
# PURPOSE : 이미지 뷰
# CREATE : 2018-05-04
#---------------------------------------------------------------------------
function fn_image_view() {
$search_keyword = trim($this->input->get_post('search_keyword', TRUE));
$search_keyword_tmp = urldecode($search_keyword);
$search_keyword_tmp = addslashes($search_keyword_tmp);
$req_data = array();
$req_data['search_type'] = 'main_search';
$req_data['search_keyword'] = $search_keyword_tmp;
$req_data['offset'] = 0;
$req_data['limit'] = 100;
$this->load->model('web/m_vw_content');
$total_count = $this->m_vw_content->vw_content_list_total_count($req_data);
$return_data = array();
$return_data['search_keyword'] = $search_keyword;
$return_data['total_count'] = $total_count;
$return_data['limit'] = 100;
return $this->load->view('/m/search/image_view', $return_data,true);
}
}
?>