コード例 #1
0
ファイル: gallerylist.php プロジェクト: smboy86/zzing
        ?>
                <span class="label label-default"><?php 
        echo element('num', $result);
        ?>
</span>
                <?php 
        if (element('is_mobile', $result)) {
            ?>
<span class="fa fa-wifi"></span><?php 
        }
        ?>
                <?php 
        if (element('category', $result)) {
            ?>
<a href="<?php 
            echo board_url(element('brd_key', element('board', element('list', $view))));
            ?>
?category_id=<?php 
            echo html_escape(element('bca_key', element('category', $result)));
            ?>
"><span class="label label-default"><?php 
            echo html_escape(element('bca_value', element('category', $result)));
            ?>
</span></a><?php 
        }
        ?>
                <div>
                    <a href="<?php 
        echo element('post_url', $result);
        ?>
" title="<?php 
コード例 #2
0
ファイル: write_extravars.php プロジェクト: smboy86/zzing
<div class="box">
    <div class="box-header">
        <h4 class="pb10"><?php 
echo html_escape($this->board->item_id('brd_name', element('brd_id', element('data', $view))));
?>
 <a href="<?php 
echo goto_url(board_url(html_escape($this->board->item_id('brd_key', element('brd_id', element('data', $view))))));
?>
" class="btn-xs" target="_blank"><span class="glyphicon glyphicon-new-window"></span></a></h4>
        <ul class="nav nav-tabs">
            <li role="presentation"><a href="<?php 
echo admin_url($this->pagedir . '/write/' . element('brd_id', element('data', $view)));
?>
" onclick="return check_form_changed();">기본정보</a></li>
            <li role="presentation"><a href="<?php 
echo admin_url($this->pagedir . '/write_list/' . element('brd_id', element('data', $view)));
?>
" onclick="return check_form_changed();">목록페이지</a></li>
            <li role="presentation"><a href="<?php 
echo admin_url($this->pagedir . '/write_post/' . element('brd_id', element('data', $view)));
?>
" onclick="return check_form_changed();">게시물열람</a></li>
            <li role="presentation"><a href="<?php 
echo admin_url($this->pagedir . '/write_write/' . element('brd_id', element('data', $view)));
?>
" onclick="return check_form_changed();">게시물작성</a></li>
            <li role="presentation"><a href="<?php 
echo admin_url($this->pagedir . '/write_category/' . element('brd_id', element('data', $view)));
?>
" onclick="return check_form_changed();">카테고리</a></li>
            <li role="presentation"><a href="<?php 
コード例 #3
0
ファイル: Fileupload.php プロジェクト: smboy86/zzing
 /**
  * 목록을 가져오는 메소드입니다
  */
 public function index()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_board_fileupload_index';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * 페이지에 숫자가 아닌 문자가 입력되거나 1보다 작은 숫자가 입력되면 에러 페이지를 보여줍니다.
      */
     $param =& $this->querystring;
     $page = (int) $this->input->get('page') > 0 ? (int) $this->input->get('page') : 1;
     $view['view']['sort'] = array('pfi_id' => $param->sort('pfi_id', 'asc'), 'pfi_filesize' => $param->sort('pfi_filesize', 'asc'), 'pfi_download' => $param->sort('pfi_download', 'asc'), 'pfi_datetime' => $param->sort('pfi_datetime', 'asc'));
     $findex = $this->input->get('findex') ? $this->input->get('findex') : $this->{$this->modelname}->primary_key;
     $forder = $this->input->get('forder', null, 'desc');
     $sfield = $this->input->get('sfield', null, '');
     $skeyword = $this->input->get('skeyword', null, '');
     $per_page = admin_listnum();
     $offset = ($page - 1) * $per_page;
     /**
      * 게시판 목록에 필요한 정보를 가져옵니다.
      */
     $this->{$this->modelname}->allow_search_field = array('pfi_id', 'post.post_id', 'post.mem_id', 'pfi_originname', 'pfi_filename', 'pfi_datetime', 'pfi_ip');
     // 검색이 가능한 필드
     $this->{$this->modelname}->search_field_equal = array('pfi_id', 'post.post_id', 'post.mem_id');
     // 검색중 like 가 아닌 = 검색을 하는 필드
     $this->{$this->modelname}->allow_order_field = array('pfi_id', 'pfi_filesize', 'pfi_download', 'pfi_datetime');
     // 정렬이 가능한 필드
     $where = array();
     if ($brdid = (int) $this->input->get('brd_id')) {
         $where['post.brd_id'] = $brdid;
     }
     $result = $this->{$this->modelname}->get_admin_list($per_page, $offset, $where, '', $findex, $forder, $sfield, $skeyword);
     $list_num = $result['total_rows'] - ($page - 1) * $per_page;
     if (element('list', $result)) {
         foreach (element('list', $result) as $key => $val) {
             $result['list'][$key]['post_display_name'] = display_username(element('post_userid', $val), element('post_nickname', $val));
             $brd_key = $this->board->item_id('brd_key', element('brd_id', $val));
             $result['list'][$key]['posturl'] = post_url($brd_key, element('post_id', $val));
             $result['list'][$key]['download_link'] = admin_url($this->pagedir . '/download/' . element('pfi_id', $val));
             if (element('pfi_is_image', $val)) {
                 $result['list'][$key]['origin_image_url'] = thumb_url('post', element('pfi_filename', $val));
                 $result['list'][$key]['thumb_url'] = thumb_url('post', element('pfi_filename', $val), '80');
             }
             $result['list'][$key]['board'] = $board = $this->board->item_all(element('brd_id', $val));
             if ($board) {
                 $result['list'][$key]['baordurl'] = board_url(element('brd_key', $board));
             }
             $result['list'][$key]['num'] = $list_num--;
         }
     }
     $view['view']['data'] = $result;
     $view['view']['boardlist'] = $this->Board_model->get_board_list();
     /**
      * primary key 정보를 저장합니다
      */
     $view['view']['primary_key'] = $this->{$this->modelname}->primary_key;
     /**
      * 페이지네이션을 생성합니다
      */
     $config['base_url'] = admin_url($this->pagedir) . '?' . $param->replace('page');
     $config['total_rows'] = $result['total_rows'];
     $config['per_page'] = $per_page;
     $this->pagination->initialize($config);
     $view['view']['paging'] = $this->pagination->create_links();
     $view['view']['page'] = $page;
     /**
      * 쓰기 주소, 삭제 주소등 필요한 주소를 구합니다
      */
     $search_option = array('pfi_originname' => '파일명', 'pfi_datetime' => '올린날짜', 'pfi_ip' => 'IP');
     $view['view']['skeyword'] = $sfield && array_key_exists($sfield, $search_option) ? $skeyword : '';
     $view['view']['search_option'] = search_option($search_option, $sfield);
     $view['view']['listall_url'] = admin_url($this->pagedir);
     $view['view']['list_delete_url'] = admin_url($this->pagedir . '/listdelete/?' . $param->output());
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'index');
     $view['layout'] = $this->managelayout->admin($layoutconfig, $this->cbconfig->get_device_view_type());
     $this->data = $view;
     $this->layout = element('layout_skin_file', element('layout', $view));
     $this->view = element('view_skin_file', element('layout', $view));
 }
コード例 #4
0
ファイル: Trash_comment.php プロジェクト: smboy86/zzing
 /**
  * 상세 페이지입니다
  */
 public function view($cmt_id = 0)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_board_trash_comment_view';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     $cmt_id = (int) $cmt_id;
     if (empty($cmt_id) or $cmt_id < 1) {
         show_404();
     }
     $param =& $this->querystring;
     $result = $this->{$this->modelname}->get_one($cmt_id);
     $result['meta'] = $this->Comment_meta_model->get_all_meta($cmt_id);
     if (!element('cmt_id', $result)) {
         show_404();
     }
     if (element('cmt_del', $result) !== '2') {
         show_404();
     }
     $result['cmt_display_name'] = display_username(element('cmt_userid', $result), element('cmt_nickname', $result));
     $select = 'mem_id, mem_userid, mem_nickname, mem_icon';
     $result['member'] = $dbmember = $this->Member_model->get_by_memid($result['meta']['trash_mem_id'], $select);
     $result['display_name'] = display_username(element('mem_userid', $dbmember), element('mem_nickname', $dbmember), element('mem_icon', $dbmember));
     $result['post'] = $post = $this->Post_model->get_one(element('post_id', $result));
     $result['board'] = $board = $this->board->item_all($post['brd_id']);
     if ($board) {
         $result['boardurl'] = board_url(element('brd_key', $board));
         $result['posturl'] = post_url(element('brd_key', $board), element('post_id', $result) . '#comment_id=' . element('cmt_id', $result));
     }
     $result['content'] = display_html_content($result['cmt_content'], $result['cmt_html'], element('post_image_width', $board));
     $view['view']['data'] = $result;
     $view['view']['delete_url'] = admin_url($this->pagedir . '/delete/' . $cmt_id . '?' . $param->output());
     $view['view']['recover_url'] = admin_url($this->pagedir . '/recover/' . $cmt_id . '?' . $param->output());
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'view');
     $view['layout'] = $this->managelayout->admin($layoutconfig, $this->cbconfig->get_device_view_type());
     $this->data = $view;
     $this->layout = element('layout_skin_file', element('layout', $view));
     $this->view = element('view_skin_file', element('layout', $view));
 }
コード例 #5
0
ファイル: Board_post.php プロジェクト: smboy86/zzing
 /**
  * 게시판 목록페이지입니다.
  */
 public function _get_list($brd_key, $from_view = '')
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_board_post_get_list';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     $return = array();
     $board = $this->_get_board($brd_key);
     $mem_id = (int) $this->member->item('mem_id');
     $alertmessage = $this->member->is_member() ? '회원님은 이 게시판 목록을 볼 수 있는 권한이 없습니다' : '비회원은 이 게시판에 접근할 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오';
     $check = array('group_id' => element('bgr_id', $board), 'board_id' => element('brd_id', $board));
     $this->accesslevel->check(element('access_list', $board), element('access_list_level', $board), element('access_list_group', $board), $alertmessage, $check);
     if (element('use_personal', $board) && $this->member->is_member() === false) {
         alert('이 게시판은 1:1 게시판입니다. 비회원은 접근할 수 없습니다');
         return false;
     }
     $skindir = $this->cbconfig->get_device_view_type() === 'mobile' ? element('board_mobile_skin', $board) ? element('board_mobile_skin', $board) : element('board_skin', $board) : element('board_skin', $board);
     $skinurl = base_url(VIEW_DIR . 'board/' . $skindir);
     $view['view']['is_admin'] = $is_admin = $this->member->is_admin(array('board_id' => element('brd_id', $board), 'group_id' => element('bgr_id', $board)));
     /**
      * 페이지에 숫자가 아닌 문자가 입력되거나 1보다 작은 숫자가 입력되면 에러 페이지를 보여줍니다.
      */
     $param =& $this->querystring;
     $page = (int) $this->input->get('page') > 0 ? (int) $this->input->get('page') : 1;
     $order_by_field = element('order_by_field', $board) ? element('order_by_field', $board) : 'post_num, post_reply';
     $findex = $this->input->get('findex', null, $order_by_field);
     $sfield = $sfieldchk = $this->input->get('sfield', null, '');
     if ($sfield === 'post_both') {
         $sfield = array('post_title', 'post_content');
     }
     $skeyword = $this->input->get('skeyword', null, '');
     if ($this->cbconfig->get_device_view_type() === 'mobile') {
         $per_page = element('mobile_list_count', $board) ? (int) element('mobile_list_count', $board) : 10;
     } else {
         $per_page = element('list_count', $board) ? (int) element('list_count', $board) : 20;
     }
     $offset = ($page - 1) * $per_page;
     $this->Post_model->allow_search_field = array('post_id', 'post_title', 'post_content', 'post_both', 'post_category', 'post_userid', 'post_nickname');
     // 검색이 가능한 필드
     $this->Post_model->search_field_equal = array('post_id', 'post_userid', 'post_nickname');
     // 검색중 like 가 아닌 = 검색을 하는 필드
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['step1'] = Events::trigger('step1', $eventname);
     /**
      * 상단에 공지사항 부분에 필요한 정보를 가져옵니다.
      */
     $except_all_notice = false;
     if (element('except_all_notice', $board) && $this->cbconfig->get_device_view_type() !== 'mobile') {
         $except_all_notice = true;
     }
     if (element('mobile_except_all_notice', $board) && $this->cbconfig->get_device_view_type() === 'mobile') {
         $except_all_notice = true;
     }
     $use_sideview = $this->cbconfig->get_device_view_type() === 'mobile' ? element('use_mobile_sideview', $board) : element('use_sideview', $board);
     $list_date_style = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_list_date_style', $board) : element('list_date_style', $board);
     $list_date_style_manual = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_list_date_style_manual', $board) : element('list_date_style_manual', $board);
     if (element('use_gallery_list', $board)) {
         $this->load->model('Post_file_model');
         $board['gallery_cols'] = $gallery_cols = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_gallery_cols', $board) : element('gallery_cols', $board);
         $board['gallery_image_width'] = $gallery_image_width = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_gallery_image_width', $board) : element('gallery_image_width', $board);
         $board['gallery_image_height'] = $gallery_image_height = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_gallery_image_height', $board) : element('gallery_image_height', $board);
         $board['gallery_percent'] = floor(102 / $board['gallery_cols']) - 2;
     }
     if (element('use_category', $board)) {
         $this->load->model('Board_category_model');
         $board['category'] = $this->Board_category_model->get_all_category(element('brd_id', $board));
     }
     $noticeresult = $this->Post_model->get_notice_list(element('brd_id', $board), $except_all_notice, $sfield, $skeyword);
     if ($noticeresult) {
         foreach ($noticeresult as $key => $val) {
             $notice_brd_key = $this->board->item_id('brd_key', element('brd_id', $val));
             $noticeresult[$key]['post_url'] = post_url($notice_brd_key, element('post_id', $val));
             $noticeresult[$key]['meta'] = $meta = $this->Post_meta_model->get_all_meta(element('post_id', $val));
             if ($this->cbconfig->get_device_view_type() === 'mobile') {
                 $noticeresult[$key]['title'] = element('mobile_subject_length', $board) ? cut_str(element('post_title', $val), element('mobile_subject_length', $board)) : element('post_title', $val);
             } else {
                 $noticeresult[$key]['title'] = element('subject_length', $board) ? cut_str(element('post_title', $val), element('subject_length', $board)) : element('post_title', $val);
             }
             if (element('post_del', $val)) {
                 $noticeresult[$key]['title'] = '게시물이 삭제 되었습니다';
             }
             $noticeresult[$key]['display_name'] = display_username(element('post_userid', $val), element('post_nickname', $val), element('mem_icon', $val), $use_sideview ? 'Y' : 'N');
             $noticeresult[$key]['display_datetime'] = display_datetime(element('post_datetime', $val), $list_date_style, $list_date_style_manual);
             $noticeresult[$key]['category'] = '';
             if (element('use_category', $board) && element('post_category', $val)) {
                 $noticeresult[$key]['category'] = $this->Board_category_model->get_category_info(element('brd_id', $val), element('post_category', $val));
             }
             if ($param->output()) {
                 $noticeresult[$key]['post_url'] .= '?' . $param->output();
             }
             $noticeresult[$key]['is_mobile'] = element('post_device', $val) === 'mobile' ? true : false;
         }
     }
     /**
      * 게시판 목록에 필요한 정보를 가져옵니다.
      */
     $where = array('brd_id' => $this->board->item_key('brd_id', $brd_key));
     $where['post_del <>'] = 2;
     if (element('except_notice', $board) && $this->cbconfig->get_device_view_type() !== 'mobile') {
         $where['post_notice'] = 0;
     }
     if (element('mobile_except_notice', $board) && $this->cbconfig->get_device_view_type() === 'mobile') {
         $where['post_notice'] = 0;
     }
     if (element('use_personal', $board) && $is_admin === false) {
         $where['post.mem_id'] = $mem_id;
     }
     $category_id = (int) $this->input->get('category_id');
     if (empty($category_id) or $category < 1) {
         $category_id = '';
     }
     $result = $this->Post_model->get_post_list($per_page, $offset, $where, $category_id, $findex, $sfield, $skeyword);
     $list_num = $result['total_rows'] - ($page - 1) * $per_page;
     if (element('list', $result)) {
         foreach (element('list', $result) as $key => $val) {
             $result['list'][$key]['post_url'] = post_url(element('brd_key', $board), element('post_id', $val));
             $result['list'][$key]['meta'] = $meta = $this->Post_meta_model->get_all_meta(element('post_id', $val));
             if ($this->cbconfig->get_device_view_type() === 'mobile') {
                 $result['list'][$key]['title'] = element('mobile_subject_length', $board) ? cut_str(element('post_title', $val), element('mobile_subject_length', $board)) : element('post_title', $val);
             } else {
                 $result['list'][$key]['title'] = element('subject_length', $board) ? cut_str(element('post_title', $val), element('subject_length', $board)) : element('post_title', $val);
             }
             if (element('post_del', $val)) {
                 $result['list'][$key]['title'] = '게시물이 삭제 되었습니다';
             }
             $is_blind = element('blame_blind_count', $board) > 0 && element('post_blame', $val) >= element('blame_blind_count', $board) ? true : false;
             if ($is_blind) {
                 $result['list'][$key]['title'] = '신고가 접수된 게시글입니다.';
             }
             $result['list'][$key]['display_name'] = display_username(element('post_userid', $val), element('post_nickname', $val), element('mem_icon', $val), $use_sideview ? 'Y' : 'N');
             $result['list'][$key]['display_datetime'] = display_datetime(element('post_datetime', $val), $list_date_style, $list_date_style_manual);
             $result['list'][$key]['category'] = '';
             if (element('use_category', $board) && element('post_category', $val)) {
                 $result['list'][$key]['category'] = $this->Board_category_model->get_category_info(element('brd_id', $val), element('post_category', $val));
             }
             if ($param->output()) {
                 $result['list'][$key]['post_url'] .= '?' . $param->output();
             }
             $result['list'][$key]['num'] = $list_num--;
             $result['list'][$key]['is_hot'] = false;
             $hot_icon_day = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_hot_icon_day', $board) : element('hot_icon_day', $board);
             $hot_icon_hit = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_hot_icon_hit', $board) : element('hot_icon_hit', $board);
             if ($hot_icon_day && ctimestamp() - strtotime(element('post_datetime', $val)) <= $hot_icon_day * 86400) {
                 if ($hot_icon_hit && $hot_icon_hit <= element('post_hit', $val)) {
                     $result['list'][$key]['is_hot'] = true;
                 }
             }
             $result['list'][$key]['is_new'] = false;
             $new_icon_hour = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_new_icon_hour', $board) : element('new_icon_hour', $board);
             if ($new_icon_hour && ctimestamp() - strtotime(element('post_datetime', $val)) <= $new_icon_hour * 3600) {
                 $result['list'][$key]['is_new'] = true;
             }
             $result['list'][$key]['is_mobile'] = element('post_device', $val) === 'mobile' ? true : false;
             $result['list'][$key]['thumb_url'] = '';
             $result['list'][$key]['origin_image_url'] = '';
             if (element('use_gallery_list', $board)) {
                 if (element('post_image', $val)) {
                     $filewhere = array('post_id' => element('post_id', $val), 'pfi_is_image' => 1);
                     $file = $this->Post_file_model->get_one('', '', $filewhere, '', '', 'pfi_id', 'ASC');
                     $result['list'][$key]['thumb_url'] = thumb_url('post', element('pfi_filename', $file), $gallery_image_width, $gallery_image_height);
                     $result['list'][$key]['origin_image_url'] = thumb_url('post', element('pfi_filename', $file));
                 } else {
                     $thumb_url = get_post_image_url(element('post_content', $val), $gallery_image_width, $gallery_image_height);
                     $result['list'][$key]['thumb_url'] = $thumb_url ? $thumb_url : thumb_url('', '', $gallery_image_width, $gallery_image_height);
                     $result['list'][$key]['origin_image_url'] = $thumb_url;
                 }
             }
         }
     }
     $return['data'] = $result;
     $return['notice_list'] = $noticeresult;
     if (empty($from_view)) {
         $board['headercontent'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_header_content', $board) : element('header_content', $board);
     }
     $board['footercontent'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_footer_content', $board) : element('footer_content', $board);
     $board['cat_display_style'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_category_display_style', $board) : element('category_display_style', $board);
     $return['board'] = $board;
     $return['point_info'] = '';
     if ($this->cbconfig->item('use_point') && element('use_point', $board) && element('use_point_info', $board)) {
         $point_info = '';
         if (element('point_write', $board)) {
             $point_info .= '원글작성 : ' . element('point_write', $board) . '<br />';
         }
         if (element('point_comment', $board)) {
             $point_info .= '댓글작성 : ' . element('point_comment', $board) . '<br />';
         }
         if (element('point_fileupload', $board)) {
             $point_info .= '파일업로드 : ' . element('point_fileupload', $board) . '<br />';
         }
         if (element('point_filedownload', $board)) {
             $point_info .= '파일다운로드 : ' . element('point_filedownload', $board) . '<br />';
         }
         if (element('point_filedownload_uploader', $board)) {
             $point_info .= '파일다운로드시업로더에게 : ' . element('point_filedownload_uploader', $board) . '<br />';
         }
         if (element('point_read', $board)) {
             $point_info .= '게시글조회 : ' . element('point_read', $board) . '<br />';
         }
         if (element('point_post_like', $board)) {
             $point_info .= '원글추천함 : ' . element('point_post_like', $board) . '<br />';
         }
         if (element('point_post_dislike', $board)) {
             $point_info .= '원글비추천함 : ' . element('point_post_dislike', $board) . '<br />';
         }
         if (element('point_post_liked', $board)) {
             $point_info .= '원글추천받음 : ' . element('point_post_liked', $board) . '<br />';
         }
         if (element('point_post_disliked', $board)) {
             $point_info .= '원글비추천받음 : ' . element('point_post_disliked', $board) . '<br />';
         }
         if (element('point_comment_like', $board)) {
             $point_info .= '댓글추천함 : ' . element('point_comment_like', $board) . '<br />';
         }
         if (element('point_comment_dislike', $board)) {
             $point_info .= '댓글비추천함 : ' . element('point_comment_dislike', $board) . '<br />';
         }
         if (element('point_comment_liked', $board)) {
             $point_info .= '댓글추천받음 : ' . element('point_comment_liked', $board) . '<br />';
         }
         if (element('point_comment_disliked', $board)) {
             $point_info .= '댓글비추천받음 : ' . element('point_comment_disliked', $board) . '<br />';
         }
         $return['point_info'] = $point_info;
     }
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['step2'] = Events::trigger('step2', $eventname);
     /**
      * primary key 정보를 저장합니다
      */
     $return['primary_key'] = $this->Post_model->primary_key;
     $highlight_keyword = '';
     if ($skeyword) {
         if (!$this->session->userdata('skeyword_' . $skeyword)) {
             $sfieldarray = array('post_title', 'post_content', 'post_both');
             if (in_array($sfieldchk, $sfieldarray)) {
                 $this->load->model('Search_keyword_model');
                 $searchinsert = array('sek_keyword' => $skeyword, 'sek_datetime' => cdate('Y-m-d H:i:s'), 'sek_ip' => $this->input->ip_address(), 'mem_id' => $mem_id);
                 $this->Search_keyword_model->insert($searchinsert);
                 $this->session->set_userdata('skeyword_' . $skeyword, 1);
             }
         }
         $key_explode = explode(' ', $skeyword);
         if ($key_explode) {
             foreach ($key_explode as $seval) {
                 if ($highlight_keyword) {
                     $highlight_keyword .= ',';
                 }
                 $highlight_keyword .= '\'' . html_escape($seval) . '\'';
             }
         }
     }
     $return['highlight_keyword'] = $highlight_keyword;
     /**
      * 페이지네이션을 생성합니다
      */
     $config['base_url'] = board_url($brd_key) . '?' . $param->replace('page');
     $config['total_rows'] = $result['total_rows'];
     $config['per_page'] = $per_page;
     if ($this->cbconfig->get_device_view_type() === 'mobile') {
         $config['num_links'] = element('mobile_page_count', $board) ? element('mobile_page_count', $board) : 3;
     } else {
         $config['num_links'] = element('page_count', $board) ? element('page_count', $board) : 5;
     }
     $this->pagination->initialize($config);
     $return['paging'] = $this->pagination->create_links();
     $return['page'] = $page;
     /**
      * 쓰기 주소, 삭제 주소등 필요한 주소를 구합니다
      */
     $search_option = array('post_title' => '제목', 'post_content' => '내용');
     $return['search_option'] = search_option($search_option, $sfield);
     if ($skeyword) {
         $return['list_url'] = board_url(element('brd_key', $board));
         $return['search_list_url'] = board_url(element('brd_key', $board) . '?' . $param->output());
     } else {
         $return['list_url'] = board_url(element('brd_key', $board) . '?' . $param->output());
         $return['search_list_url'] = '';
     }
     $check = array('group_id' => element('bgr_id', $board), 'board_id' => element('brd_id', $board));
     $can_write = $this->accesslevel->is_accessable(element('access_write', $board), element('access_write_level', $board), element('access_write_group', $board), $check);
     $return['write_url'] = '';
     if ($can_write === true) {
         $return['write_url'] = write_url($brd_key);
     } elseif ($this->cbconfig->get_device_view_type() !== 'mobile' && element('always_show_write_button', $board)) {
         $return['write_url'] = 'javascript:alert(\'비회원은 글쓰기 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.\');';
     } elseif ($this->cbconfig->get_device_view_type() === 'mobile' && element('mobile_always_show_write_button', $board)) {
         $return['write_url'] = 'javascript:alert(\'비회원은 글쓰기 권한이 없습니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.\');';
     }
     $return['list_delete_url'] = site_url('postact/listdelete/' . $brd_key . '?' . $param->output());
     return $return;
 }
コード例 #6
0
ファイル: Mypage.php プロジェクト: smboy86/zzing
 /**
  * 마이페이지>스크랩 입니다
  */
 public function scrap()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_mypage_scrap';
     $this->load->event($eventname);
     /**
      * 로그인이 필요한 페이지입니다
      */
     required_user_login();
     $mem_id = (int) $this->member->item('mem_id');
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     $this->load->model('Scrap_model');
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'scr_id', 'label' => 'SCRAP ID', 'rules' => 'trim|required|numeric'), array('field' => 'scr_title', 'label' => '제목', 'rules' => 'trim'));
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     $alert_message = '';
     if ($this->form_validation->run() === false) {
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formrunfalse'] = Events::trigger('formrunfalse', $eventname);
     } else {
         /**
          * 유효성 검사를 통과한 경우입니다.
          * 즉 데이터의 insert 나 update 의 process 처리가 필요한 상황입니다
          */
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formruntrue'] = Events::trigger('formruntrue', $eventname);
         $scr_title = $this->input->post('scr_title', null, '');
         $updatedata = array('scr_title' => $scr_title);
         $this->Scrap_model->update($this->input->post('scr_id'), $updatedata);
         $alert_message = '제목이 저장되었습니다';
     }
     /**
      * 페이지에 숫자가 아닌 문자가 입력되거나 1보다 작은 숫자가 입력되면 에러 페이지를 보여줍니다.
      */
     $param =& $this->querystring;
     $page = (int) $this->input->get('page') > 0 ? (int) $this->input->get('page') : 1;
     $findex = $this->Scrap_model->primary_key;
     $forder = 'desc';
     $per_page = $this->cbconfig->item('list_count') ? (int) $this->cbconfig->item('list_count') : 20;
     $offset = ($page - 1) * $per_page;
     /**
      * 게시판 목록에 필요한 정보를 가져옵니다.
      */
     $where = array('scrap.mem_id' => $mem_id, 'post.post_del' => 0);
     $result = $this->Scrap_model->get_list($per_page, $offset, $where, '', $findex, $forder);
     $list_num = $result['total_rows'] - ($page - 1) * $per_page;
     if (element('list', $result)) {
         foreach (element('list', $result) as $key => $val) {
             $result['list'][$key]['board'] = $board = $this->board->item_all(element('brd_id', $val));
             $result['list'][$key]['post_url'] = post_url(element('brd_key', $board), element('post_id', $val));
             $result['list'][$key]['board_url'] = board_url(element('brd_key', $board));
             $result['list'][$key]['delete_url'] = site_url('mypage/scrap_delete/' . element('scr_id', $val) . '?' . $param->output());
             $result['list'][$key]['num'] = $list_num--;
         }
     }
     $view['view']['data'] = $result;
     $view['view']['alert_message'] = $alert_message;
     /**
      * 페이지네이션을 생성합니다
      */
     $config['base_url'] = site_url('mypage/scrap') . '?' . $param->replace('page');
     $config['total_rows'] = $result['total_rows'];
     $config['per_page'] = $per_page;
     $this->pagination->initialize($config);
     $view['view']['paging'] = $this->pagination->create_links();
     $view['view']['page'] = $page;
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 레이아웃을 정의합니다
      */
     $page_title = $this->cbconfig->item('site_meta_title_mypage_scrap');
     $meta_description = $this->cbconfig->item('site_meta_description_mypage_scrap');
     $meta_keywords = $this->cbconfig->item('site_meta_keywords_mypage_scrap');
     $meta_author = $this->cbconfig->item('site_meta_author_mypage_scrap');
     $page_name = $this->cbconfig->item('site_page_name_mypage_scrap');
     $layoutconfig = array('path' => 'mypage', 'layout' => 'layout', 'skin' => 'scrap', 'layout_dir' => $this->cbconfig->item('layout_mypage'), 'mobile_layout_dir' => $this->cbconfig->item('mobile_layout_mypage'), 'use_sidebar' => $this->cbconfig->item('sidebar_mypage'), 'use_mobile_sidebar' => $this->cbconfig->item('mobile_sidebar_mypage'), 'skin_dir' => $this->cbconfig->item('skin_mypage'), 'mobile_skin_dir' => $this->cbconfig->item('mobile_skin_mypage'), 'page_title' => $page_title, 'meta_description' => $meta_description, 'meta_keywords' => $meta_keywords, 'meta_author' => $meta_author, 'page_name' => $page_name);
     $view['layout'] = $this->managelayout->front($layoutconfig, $this->cbconfig->get_device_view_type());
     $this->data = $view;
     $this->layout = element('layout_skin_file', element('layout', $view));
     $this->view = element('view_skin_file', element('layout', $view));
 }
コード例 #7
0
ファイル: index.php プロジェクト: smboy86/zzing
                    <tbody>
                    <?php 
if (element('list', element('data', $view))) {
    foreach (element('list', element('data', $view)) as $result) {
        ?>
                        <tr>
                            <td><?php 
        echo number_format(element('num', $result));
        ?>
</td>
                            <td><?php 
        echo element('target_name', $result);
        ?>
</td>
                            <td><a href="<?php 
        echo goto_url(board_url(html_escape(element('brd_key', element('board', $result)))));
        ?>
" target="_blank"><?php 
        echo html_escape(element('brd_name', element('board', $result)));
        ?>
</a></td>
                            <td><a href="<?php 
        echo goto_url(element('posturl', $result));
        ?>
" target="_blank"><?php 
        echo html_escape(element('origin_content', $result));
        ?>
</a></td>
                            <td><?php 
        echo element('target_display_name', $result);
        ?>
コード例 #8
0
ファイル: Post.php プロジェクト: smboy86/zzing
 /**
  * 목록을 가져오는 메소드입니다
  */
 public function index()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_board_post_index';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * 페이지에 숫자가 아닌 문자가 입력되거나 1보다 작은 숫자가 입력되면 에러 페이지를 보여줍니다.
      */
     $param =& $this->querystring;
     $page = (int) $this->input->get('page') > 0 ? (int) $this->input->get('page') : 1;
     $findex = 'post_id';
     $forder = 'desc';
     $sfield = $this->input->get('sfield', null, '');
     $skeyword = $this->input->get('skeyword', null, '');
     $per_page = admin_listnum();
     $offset = ($page - 1) * $per_page;
     /**
      * 게시판 목록에 필요한 정보를 가져옵니다.
      */
     $this->{$this->modelname}->allow_search_field = array('post_id', 'post_title', 'post_content', 'mem_id', 'post_username', 'post_nickname', 'post_email', 'post_homepage', 'post_datetime', 'post_ip', 'post_device');
     // 검색이 가능한 필드
     $this->{$this->modelname}->search_field_equal = array('post_id', 'mem_id');
     // 검색중 like 가 아닌 = 검색을 하는 필드
     $this->{$this->modelname}->allow_order_field = array('post_id');
     // 정렬이 가능한 필드
     $where = array('post_del <>' => 2);
     if ($brdid = (int) $this->input->get('brd_id')) {
         $where['brd_id'] = $brdid;
     }
     $result = $this->{$this->modelname}->get_admin_list($per_page, $offset, $where, '', $findex, $forder, $sfield, $skeyword);
     $list_num = $result['total_rows'] - ($page - 1) * $per_page;
     if (element('list', $result)) {
         foreach (element('list', $result) as $key => $val) {
             $result['list'][$key]['post_display_name'] = display_username(element('post_userid', $val), element('post_nickname', $val));
             $result['list'][$key]['board'] = $board = $this->board->item_all(element('brd_id', $val));
             $result['list'][$key]['num'] = $list_num--;
             if ($board) {
                 $result['list'][$key]['baordurl'] = board_url(element('brd_key', $board));
                 $result['list'][$key]['posturl'] = post_url(element('brd_key', $board), element('post_id', $val));
             }
             $result['list'][$key]['category'] = '';
             if (element('post_category', $val)) {
                 $result['list'][$key]['category'] = $this->Board_category_model->get_category_info(element('brd_id', $val), element('post_category', $val));
             }
             if (element('post_image', $val)) {
                 $imagewhere = array('post_id' => element('post_id', $val), 'pfi_is_image' => 1);
                 $file = $this->Post_file_model->get_one('', '', $imagewhere, '', '', 'pfi_id', 'ASC');
                 $result['list'][$key]['thumb_url'] = thumb_url('post', element('pfi_filename', $file), 80);
             } else {
                 $result['list'][$key]['thumb_url'] = get_post_image_url(element('post_content', $val), 80);
             }
         }
     }
     $view['view']['data'] = $result;
     $select = 'brd_id, brd_name';
     $view['view']['boardlist'] = $this->Board_model->get_board_list();
     /**
      * primary key 정보를 저장합니다
      */
     $view['view']['primary_key'] = $this->{$this->modelname}->primary_key;
     /**
      * 페이지네이션을 생성합니다
      */
     $config['base_url'] = admin_url($this->pagedir) . '?' . $param->replace('page');
     $config['total_rows'] = $result['total_rows'];
     $config['per_page'] = $per_page;
     $this->pagination->initialize($config);
     $view['view']['paging'] = $this->pagination->create_links();
     $view['view']['page'] = $page;
     /**
      * 쓰기 주소, 삭제 주소등 필요한 주소를 구합니다
      */
     $search_option = array('post_title' => '제목', 'post_content' => '내용', 'post_username' => '실명', 'post_nickname' => '닉네임', 'post_email' => '이메일', 'post_homepage' => '홈페이지', 'post_datetime' => '작성일', 'post_ip' => 'IP');
     $view['view']['skeyword'] = $sfield && array_key_exists($sfield, $search_option) ? $skeyword : '';
     $view['view']['search_option'] = search_option($search_option, $sfield);
     $view['view']['listall_url'] = admin_url($this->pagedir);
     $view['view']['list_delete_url'] = admin_url($this->pagedir . '/listdelete/?' . $param->output());
     $view['view']['list_trash_url'] = admin_url($this->pagedir . '/listtrash/?' . $param->output());
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'index');
     $view['layout'] = $this->managelayout->admin($layoutconfig, $this->cbconfig->get_device_view_type());
     $this->data = $view;
     $this->layout = element('layout_skin_file', element('layout', $view));
     $this->view = element('view_skin_file', element('layout', $view));
 }
コード例 #9
0
ファイル: write.php プロジェクト: smboy86/zzing
            <div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">게시판주소(KEY)</label>
                    <div class="col-sm-8 form-inline">
                        <?php 
echo board_url();
?>
/ <input type="text" class="form-control" name="brd_key" value="<?php 
echo set_value('brd_key', element('brd_key', element('data', $view)));
?>
" /> <span class="help-inline">페이지주소를 입력해주세요</span>
                        <?php 
if (element('brd_key', element('data', $view))) {
    ?>
                            <a href="<?php 
    echo goto_url(board_url(html_escape(element('brd_key', element('data', $view)))));
    ?>
" target="_blank"><span class="glyphicon glyphicon-new-window"></span></a>
                        <?php 
}
?>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">게시판 이름</label>
                    <div class="col-sm-8">
                        PC - <input type="text" class="form-control per30" name="brd_name" value="<?php 
echo set_value('brd_name', element('brd_name', element('data', $view)));
?>
" />,
                        모바일 - <input type="text" class="form-control per30" name="brd_mobile_name" value="<?php 
コード例 #10
0
ファイル: index.php プロジェクト: smboy86/zzing
                        <a href="<?php 
echo rss_url();
?>
" target="_blank"><?php 
echo rss_url();
?>
</a></label>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">포함된 게시판 목록</label>
                    <div class="col-sm-10" style="padding-top:7px;">
                        <?php 
if (element('rssboard', $view)) {
    foreach (element('rssboard', $view) as $rval) {
        echo '<a href="' . board_url(element('brd_key', $rval)) . '" target="_blank">';
        echo html_escape(element('brd_name', $rval));
        echo '</a>, ';
    }
}
?>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">통합 RSS 피드 사용</label>
                    <div class="col-sm-10">
                        <label for="use_total_rss_feed" class="checkbox-inline">
                        <input type="checkbox" name="use_total_rss_feed" id="use_total_rss_feed" value="1" <?php 
echo set_checkbox('use_total_rss_feed', '1', element('use_total_rss_feed', element('data', $view)) ? true : false);
?>
 /> 사용합니다
コード例 #11
0
ファイル: Rss.php プロジェクト: smboy86/zzing
 /**
  * RSS 페이지 함수입니다
  */
 public function index($brd_key = '')
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_rss_index';
     $this->load->event($eventname);
     $rsstype = $brd_key ? 'board' : 'all';
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     if ($rsstype === 'board') {
         $board_id = $this->board->item_key('brd_id', $brd_key);
         if (empty($board_id)) {
             show_404();
         }
         $board = $this->board->item_all($board_id);
         if (element('access_view', $board) > 0 or element('access_list', $board) > 0) {
             alert('비회원이 볼 수 없는 게시판은 RSS 접근이 금지되어 있습니다');
             return false;
         }
         if (!element('use_rss_feed', $board)) {
             alert('이 게시판은 RSS 보기가 금지되어 있습니다');
             return false;
         }
     } else {
         if (!$this->cbconfig->item('use_total_rss_feed')) {
             alert('통합게시판의 사용이 금지되어 있습니다');
             return false;
         }
     }
     header('content-type: text/xml');
     header('cache-control: no-cache, must-revalidate');
     header('pragma: no-cache');
     /**
      * 페이지에 숫자가 아닌 문자가 입력되거나 1보다 작은 숫자가 입력되면 에러 페이지를 보여줍니다.
      */
     if ($rsstype === 'board') {
         $limit = element('rss_feed_post_count', $board) ? element('rss_feed_post_count', $board) : 50;
     } else {
         $limit = $this->cbconfig->item('total_rss_feed_count') ? $this->cbconfig->item('total_rss_feed_count') : 50;
     }
     /**
      * 게시판 목록에 필요한 정보를 가져옵니다.
      */
     $boardarray = array();
     if ($rsstype === 'board') {
         $where = array('brd_id' => element('brd_id', $board), 'post_secret' => 0, 'post_del' => 0);
     } else {
         $whereboard = array('bmt_key' => 'use_rss_total_feed', 'bmt_value' => '1');
         $boardlist = $this->Board_meta_model->get('', '', $whereboard);
         if ($boardlist && is_array($boardlist)) {
             foreach ($boardlist as $key => $value) {
                 $boardarray[] = element('brd_id', $value);
             }
         }
         $where = array('post_secret' => 0, 'post_del' => 0);
     }
     $result = $this->Post_model->get_rss_list($where, $boardarray, $limit);
     if (element('list', $result)) {
         foreach (element('list', $result) as $key => $val) {
             $result['list'][$key]['title'] = element('post_title', $val);
             $result['list'][$key]['pubdate'] = cdate('c', strtotime(element('post_datetime', $val)));
             $result['list'][$key]['author'] = element('post_nickname', $val);
             $result['list'][$key]['content'] = '';
             $result['list'][$key]['category'] = '';
             if ($rsstype === 'board') {
                 if (element('rss_feed_content', $board) === '1') {
                     $result['list'][$key]['content'] = strip_tags(element('post_content', $val));
                 } elseif (element('rss_feed_content', $board) === '2') {
                     $result['list'][$key]['content'] = display_html_content(element('post_content', $val), element('post_html', $val), 700);
                 }
             } else {
                 if ($this->cbconfig->item('total_rss_feed_content') === '1') {
                     $result['list'][$key]['content'] = strip_tags(element('post_content', $val));
                 } elseif ($this->cbconfig->item('total_rss_feed_content') === '2') {
                     $result['list'][$key]['content'] = display_html_content(element('post_content', $val), element('post_html', $val), 700);
                 }
                 $board = $this->board->item_all(element('brd_id', $val));
             }
             if (element('use_category', $board) && element('post_category', $val)) {
                 $category = $this->Board_category_model->get_category_info(element('brd_id', $val), element('post_category', $val));
                 $result['list'][$key]['category'] = element('bca_value', $category);
             }
             $result['list'][$key]['link'] = post_url(element('brd_key', $board), element('post_id', $val));
         }
     }
     $view['view']['data'] = $result;
     if ($rsstype === 'board') {
         $view['view']['title'] = element('brd_name', $board);
         $view['view']['url'] = board_url(element('brd_key', $board));
         $view['view']['copyright'] = element('rss_feed_copyright', $board) ? element('rss_feed_copyright', $board) : $this->cbconfig->item('total_rss_feed_copyright');
         $view['view']['description'] = element('rss_feed_description', $board) ? element('rss_feed_description', $board) : $this->cbconfig->item('total_rss_feed_description');
     } else {
         $view['view']['title'] = $this->cbconfig->item('total_rss_feed_title') ? $this->cbconfig->item('total_rss_feed_title') : $this->cbconfig->item('site_title');
         $view['view']['url'] = site_url();
         $view['view']['copyright'] = $this->cbconfig->item('total_rss_feed_copyright');
         $view['view']['description'] = $this->cbconfig->item('total_rss_feed_description');
     }
     $view['view']['board'] = isset($board) ? $board : '';
     /**
      * primary key 정보를 저장합니다
      */
     $view['view']['primary_key'] = $this->Post_model->primary_key;
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 레이아웃을 정의합니다
      */
     $this->data = $view;
     $skin = $this->cbconfig->item('skin_helptool') ? $this->cbconfig->item('skin_helptool') : $this->cbconfig->item('skin_default');
     $this->view = 'helptool/' . $skin . '/rss';
 }
コード例 #12
0
ファイル: index.php プロジェクト: smboy86/zzing
        ?>
" />
                                <br />
                                <input type="text" name="brd_mobile_name[<?php 
        echo element(element('primary_key', $view), $result);
        ?>
]" class="form-control" value="<?php 
        echo html_escape(element('brd_mobile_name', $result));
        ?>
" />
                                <br />
                                <a href="<?php 
        echo goto_url(board_url(element('brd_key', $result)));
        ?>
" target="_blank"><?php 
        echo board_url(element('brd_key', $result));
        ?>
</a>
                            </td>
                            <td>
                                <select class="form-control" name="bgr_id[<?php 
        echo element(element('primary_key', $view), $result);
        ?>
]" >
                                    <?php 
        echo element('group_option', $result);
        ?>
                                </select>
                            </td>
                            <td class=" form-group-sm">
                                <select class="form-control" name="board_layout[<?php 
コード例 #13
0
ファイル: Install.php プロジェクト: smboy86/zzing
    public function _insert_init_data()
    {
        $this->load->library(array('user_agent', 'session'));
        $this->load->model(array('Member_model', 'Member_meta_model', 'Config_model', 'Member_nickname_model', 'Member_register_model', 'Document_model', 'Faq_model', 'Faq_group_model', 'Board_model', 'Board_meta_model', 'Board_group_model', 'Board_group_meta_model', 'Menu_model'));
        if (!function_exists('password_hash')) {
            $this->load->helper('password');
        }
        $this->load->driver('cache', config_item('cache_method'));
        $skin = $this->input->post('skin');
        $skin_mobile = $this->input->post('skin') === 'basic' ? 'mobile' : 'bootstrap';
        $configdata = array('site_title' => '홈페이지', 'site_logo' => '홈페이지', 'admin_logo' => 'Admin', 'spam_word' => '18아,18놈,18새끼,18년,18뇬,18노,18것,18넘,개년,개놈,개뇬,개새,개색끼,개세끼,개세이,개쉐이,개쉑,개쉽,개시키,개자식,개좆,게색기,게색끼,광뇬,뇬,눈깔,뉘미럴,니귀미,니기미,니미,도촬,되질래,뒈져라,뒈진다,디져라,디진다,디질래,병쉰,병신,뻐큐,뻑큐,뽁큐,삐리넷,새꺄,쉬발,쉬밸,쉬팔,쉽알,스패킹,스팽,시벌,시부랄,시부럴,시부리,시불,시브랄,시팍,시팔,시펄,실밸,십8,십쌔,십창,싶알,쌉년,썅놈,쌔끼,쌩쑈,썅,써벌,썩을년,쎄꺄,쎄엑,쓰바,쓰발,쓰벌,쓰팔,씨8,씨댕,씨바,씨발,씨뱅,씨봉알,씨부랄,씨부럴,씨부렁,씨부리,씨불,씨브랄,씨빠,씨빨,씨뽀랄,씨팍,씨팔,씨펄,씹,아가리,아갈이,엄창,접년,잡놈,재랄,저주글,조까,조빠,조쟁이,조지냐,조진다,조질래,존나,존니,좀물,좁년,좃,좆,좇,쥐랄,쥐롤,쥬디,지랄,지럴,지롤,지미랄,쫍빱,凸,퍽큐,뻑큐,빠큐,ㅅㅂㄹㅁ', 'white_iframe' => 'www.youtube.com
www.youtube-nocookie.com
maps.google.co.kr
maps.google.com
flvs.daum.net
player.vimeo.com
sbsplayer.sbs.co.kr
serviceapi.rmcnmv.naver.com
serviceapi.nmv.naver.com
www.mgoon.com
videofarm.daum.net
player.sbs.co.kr
sbsplayer.sbs.co.kr
www.tagstory.com
play.tagstory.com
flvr.pandora.tv', 'new_post_second' => '30', 'open_currentvisitor' => '1', 'currentvisitor_minute' => '10', 'use_copy_log' => '1', 'max_level' => '100', 'ip_display_style' => '1001', 'list_count' => '20', 'site_blacklist_title' => '사이트가 공사중에 있습니다', 'site_blacklist_content' => '<p>안녕하세요</p><p>블편을 드려 죄송합니다. 지금 이 사이트는 접근이 금지되어있습니다</p><p>감사합니다</p>', 'use_point' => '1', 'point_register' => '50', 'point_login' => '5', 'point_recommended' => '5', 'point_recommender' => '5', 'point_note' => '10', 'block_download_zeropoint' => '1', 'block_read_zeropoint' => '1', 'use_sideview' => '1', 'use_mobile_sideview' => '1', 'use_sideview_email' => '1', 'use_mobile_sideview_email' => '1', 'post_editor_type' => 'smarteditor', 'use_document_dhtml' => '1', 'document_editor_type' => 'smarteditor', 'document_thumb_width' => '700', 'document_mobile_thumb_width' => '400', 'document_content_target_blank' => '1', 'use_document_auto_url' => '1', 'use_faq_dhtml' => '1', 'faq_editor_type' => 'smarteditor', 'faq_thumb_width' => '700', 'faq_mobile_thumb_width' => '400', 'faq_content_target_blank' => '1', 'use_faq_auto_url' => '1', 'use_popup_dhtml' => '1', 'popup_editor_type' => 'smarteditor', 'popup_thumb_width' => '700', 'popup_mobile_thumb_width' => '400', 'popup_content_target_blank' => '1', 'use_popup_auto_url' => '1', 'use_formmail_dhtml' => '1', 'formmail_editor_type' => 'smarteditor', 'use_note' => '1', 'note_list_page' => '10', 'note_mobile_list_page' => '10', 'use_note_dhtml' => '1', 'use_note_mobile_dhtml' => '1', 'note_editor_type' => 'smarteditor', 'use_notification' => '1', 'notification_reply' => '1', 'notification_comment' => '1', 'notification_comment_comment' => '1', 'notification_note' => '1', 'layout_default' => $skin, 'sidebar_default' => '1', 'skin_default' => $skin, 'mobile_layout_default' => $skin_mobile, 'mobile_skin_default' => $skin_mobile, 'skin_popup' => 'basic', 'mobile_skin_popup' => 'basic', 'skin_emailform' => 'basic', 'use_login_account' => 'both', 'password_length' => '4', 'use_member_photo' => '1', 'member_photo_width' => '80', 'member_photo_height' => '80', 'use_member_icon' => '1', 'member_icon_width' => '20', 'member_icon_height' => '20', 'denied_nickname_list' => 'admin,administrator,관리자,운영자,어드민,주인장,webmaster,웹마스터,sysop,시삽,시샵,manager,매니저,메니저,root,루트,su,guest,방문객', 'denied_userid_list' => 'admin,administrator,webmaster,sysop,manager,root,su,guest,super', 'member_register_policy1' => '회원약관을 입력해주세요', 'member_register_policy2' => '개인정보취급방침을 입력해주세요', 'register_level' => '1', 'change_nickname_date' => '60', 'change_open_profile_date' => '60', 'change_use_note_date' => '60', 'change_password_date' => '180', 'max_login_try_count' => '5', 'max_login_try_limit_second' => '30', 'total_rss_feed_count' => '100', 'site_meta_title_default' => '{홈페이지제목}', 'site_meta_title_main' => '{홈페이지제목}', 'site_meta_title_board_list' => '{게시판명} - {홈페이지제목}', 'site_meta_title_board_post' => '{글제목} > {게시판명} - {홈페이지제목}', 'site_meta_title_board_write' => '{게시판명} 글쓰기 - {홈페이지제목}', 'site_meta_title_board_modify' => '{글제목} 글수정 - {홈페이지제목}', 'site_meta_title_group' => '{그룹명} - {홈페이지제목}', 'site_meta_title_document' => '{문서제목} - {홈페이지제목}', 'site_meta_title_faq' => '{FAQ제목} - {홈페이지제목}', 'site_meta_title_register' => '회원가입 - {홈페이지제목}', 'site_meta_title_register_form' => '회원가입 - {홈페이지제목}', 'site_meta_title_register_result' => '회원가입결과 - {홈페이지제목}', 'site_meta_title_findaccount' => '회원정보찾기 - {홈페이지제목}', 'site_meta_title_login' => '로그인 - {홈페이지제목}', 'site_meta_title_mypage' => '{회원닉네임}님의 마이페이지 - {홈페이지제목}', 'site_meta_title_mypage_post' => '{회원닉네임}님의 작성글 - {홈페이지제목}', 'site_meta_title_mypage_comment' => '{회원닉네임}님의 작성댓글 - {홈페이지제목}', 'site_meta_title_mypage_point' => '{회원닉네임}님의 포인트 - {홈페이지제목}', 'site_meta_title_mypage_followinglist' => '{회원닉네임}님의 팔로우 - {홈페이지제목}', 'site_meta_title_mypage_followedlist' => '{회원닉네임}님의 팔로우 - {홈페이지제목}', 'site_meta_title_mypage_like_post' => '{회원닉네임}님의 추천글 - {홈페이지제목}', 'site_meta_title_mypage_like_comment' => '{회원닉네임}님의 추천댓글 - {홈페이지제목}', 'site_meta_title_mypage_scrap' => '{회원닉네임}님의 스크랩 - {홈페이지제목}', 'site_meta_title_mypage_loginlog' => '{회원닉네임}님의 로그인기록 - {홈페이지제목}', 'site_meta_title_membermodify' => '회원정보수정 - {홈페이지제목}', 'site_meta_title_membermodify_memberleave' => '회원탈퇴 - {홈페이지제목}', 'site_meta_title_currentvisitor' => '현재접속자 - {홈페이지제목}', 'site_meta_title_search' => '{검색어} - {홈페이지제목}', 'site_meta_title_note_list' => '{회원닉네임}님의 쪽지함 - {홈페이지제목}', 'site_meta_title_note_view' => '{회원닉네임}님의 쪽지함 - {홈페이지제목}', 'site_meta_title_note_write' => '{회원닉네임}님의 쪽지함 - {홈페이지제목}', 'site_meta_title_profile' => '{회원닉네임}님의 프로필 - {홈페이지제목}', 'site_meta_title_formmail' => '메일발송 - {홈페이지제목}', 'site_meta_title_notification' => '{회원닉네임}님의 알림 - {홈페이지제목}', 'send_email_register_admin_title' => '[회원가입알림] {회원닉네임}님이 회원가입하셨습니다', 'send_email_register_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 회원가입 하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>가입한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_email_register_user_title' => '[{홈페이지명}] {회원닉네임}님의 회원가입을 축하드립니다', 'send_email_register_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원가입을 축하드립니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>회원가입을 축하드립니다.</p><p>{홈페이지명} 회원으로 가입해주셔서 감사합니다.</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_register_user_verifytitle' => '[{홈페이지명}] {회원닉네임}님의 회원가입을 축하드립니다', 'send_email_register_user_verifycontent' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원가입을 축하드립니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>회원가입을 축하드립니다.</p><p>{홈페이지명} 회원으로 가입해주셔서 감사합니다.</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>아래 링크를 클릭하시면 회원가입이 완료됩니다.</p><p><a href="{메일인증주소}" target="_blank" style="font-weight:bold;">메일인증 받기</a></p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_note_register_admin_title' => '[회원가입알림] {회원닉네임}님이 회원가입하셨습니다', 'send_note_register_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 회원가입 하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>가입한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_note_register_user_title' => '회원가입을 축하드립니다', 'send_note_register_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원가입을 축하드립니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>회원가입을 축하드립니다.</p><p>{홈페이지명} 회원으로 가입해주셔서 감사합니다.</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_changepw_admin_title' => '{회원닉네임}님이 패스워드를 변경하셨습니다', 'send_email_changepw_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 패스워드를 변경하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>변경한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_email_changepw_user_title' => '[{홈페이지명}] 패스워드가 변경되었습니다', 'send_email_changepw_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 패스워드가 변경되었습니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>회원님의 패스워드가 변경되었습니다.</p><p>변경한 곳 IP : {회원아이피}</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_note_changepw_admin_title' => '{회원닉네임}님이 패스워드를 변경하셨습니다', 'send_note_changepw_admin_content ' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 패스워드를 변경하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>변경한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_note_changepw_user_title' => '패스워드가 변경되었습니다', 'send_note_changepw_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 패스워드가 변경되었습니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>회원님의 패스워드가 변경되었습니다.</p><p>변경한 곳 IP : {회원아이피}</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_memberleave_admin_title' => '{회원닉네임}님이 회원탈퇴하셨습니다', 'send_email_memberleave_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 회원탈퇴하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>탈퇴한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_email_memberleave_user_title' => '[{홈페이지명}] 회원탈퇴가 완료되었습니다', 'send_email_memberleave_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 탈퇴가 처리되었습니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요 {회원닉네임} 회원님,</p><p>그 동안 {홈페이지명} 이용을 해주셔서 감사드립니다</p><p>요청하신대로 회원님의 탈퇴가 정상적으로 처리되었습니다.</p><p>더욱 편리한 서비스를 제공하기 위해 항상 최선을 다하겠습니다.</p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_note_memberleave_admin_title' => '{회원닉네임}님이 회원탈퇴하셨습니다', 'send_note_memberleave_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 관리자님,</span><br /></td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>{회원닉네임} 님이 회원탈퇴하셨습니다.</p><p>회원아이디 : {회원아이디}</p><p>닉네임 : {회원닉네임}</p><p>이메일 : {회원이메일}</p><p>탈퇴한 곳 IP : {회원아이피}</p><p>감사합니다.</p></td></tr></table>', 'send_email_changeemail_user_title' => '[{홈페이지명}] 회원님의 이메일정보가 변경되었습니다', 'send_email_changeemail_user_content' => '<table width="100%" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 이메일 주소가 변경되어 알려드립니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>회원님의 이메일 주소가 변경되었으므로 다시 인증을 받아주시기 바랍니다.</p><p>&nbsp;</p><p>아래 링크를 클릭하시면 주소변경 인증이 완료됩니다.</p><p><a href="{메일인증주소}" target="_blank" style="font-weight:bold;">메일인증 받기</a></p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_findaccount_user_title' => '{회원닉네임}님의 아이디와 패스워드를 보내드립니다', 'send_email_findaccount_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 아이디와 패스워드를 보내드립니다.</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>&nbsp;</p><p>회원님의 아이디는 <strong>{회원아이디}</strong> 입니다.</p><p>아래 링크를 클릭하시면 회원님의 패스워드 변경이 가능합니다.</p><p><a href="{패스워드변경주소}" target="_blank" style="font-weight:bold;">패스워드 변경하기</a></p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_resendverify_user_title' => '{회원닉네임}님의 인증메일이 재발송되었습니다', 'send_email_resendverify_user_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">안녕하세요 {회원닉네임}님,</span><br />회원님의 인증메일을 다시 보내드립니다..</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><p>안녕하세요,</p><p>&nbsp;</p><p>아래 링크를 클릭하시면 이메일 인증이 완료됩니다.</p><p><a href="{메일인증주소}" target="_blank" style="font-weight:bold;">메일인증 받기</a></p><p>&nbsp;</p><p>감사합니다.</p></td></tr></table>', 'send_email_post_admin_title' => '[{게시판명}] {게시글제목}', 'send_email_post_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_post_writer_title' => '[{게시판명}] {게시글제목}', 'send_email_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_post_admin_title' => '[{게시판명}] {게시글제목}', 'send_note_post_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_post_writer_title' => '[{게시판명}] {게시글제목}', 'send_note_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_admin_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_email_comment_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_post_writer_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_email_comment_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_comment_writer_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_email_comment_comment_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_admin_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_note_comment_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_post_writer_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_note_comment_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_comment_writer_title' => '[{게시판명}] {게시글제목} - 댓글이 등록되었습니다', 'send_note_comment_comment_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />작성자 : {게시글작성자닉네임}</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_blame_admin_title' => '[{게시판명}] {게시글제목} - 신고가접수되었습니다', 'send_email_blame_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />게시글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_blame_post_writer_title' => '[{게시판명}] {게시글제목} - 신고가접수되었습니다', 'send_email_blame_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />게시글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_blame_admin_title' => '[{게시판명}] {게시글제목} - 신고가접수되었습니다', 'send_note_blame_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />게시글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_blame_post_writer_title' => '[{게시판명}] {게시글제목} - 신고가접수되었습니다', 'send_note_blame_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />게시글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{게시글내용}</div><p><a href="{게시글주소}" target="_blank" style="font-weight:bold;">사이트에서 게시글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_blame_admin_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_email_comment_blame_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_blame_post_writer_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_email_comment_blame_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_email_comment_blame_comment_writer_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_email_comment_blame_comment_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_blame_admin_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_note_comment_blame_admin_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_blame_post_writer_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_note_comment_blame_post_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>', 'send_note_comment_blame_comment_writer_title' => '[{게시판명}] {게시글제목} - 댓글에신고가접수되었습니다', 'send_note_comment_blame_comment_writer_content' => '<table width="100%" border="0" cellpadding="0" cellspacing="0" style="border-left: 1px solid rgb(226,226,225);border-right: 1px solid rgb(226,226,225);background-color: rgb(255,255,255);border-top:10px solid #348fe2; border-bottom:5px solid #348fe2;border-collapse: collapse;"><tr><td width="200" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;">{홈페이지명}</td><td style="font-size:12px;padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><span style="font-size:14px;font-weight:bold;color:rgb(0,0,0)">{게시글제목}</span><br />댓글에 신고가 접수되었습니다</td></tr><tr style="border-top:1px solid #e2e2e2; border-bottom:1px solid #e2e2e2;"><td colspan="2" style="padding:20px 30px;font-family: Arial,sans-serif;color: rgb(0,0,0);font-size: 14px;line-height: 20px;"><div>{댓글내용}</div><p><a href="{댓글주소}" target="_blank" style="font-weight:bold;">사이트에서 댓글 확인하기</a></p><p>&nbsp;</p></td></tr></table>');
        $registerform = array('mem_userid' => array('field_name' => 'mem_userid', 'func' => 'basic', 'display_name' => '아이디', 'field_type' => 'text', 'use' => '1', 'open' => '1', 'required' => '1'), 'mem_email' => array('field_name' => 'mem_email', 'func' => 'basic', 'display_name' => '이메일주소', 'field_type' => 'email', 'use' => '1', 'open' => '', 'required' => '1'), 'mem_password' => array('field_name' => 'mem_password', 'func' => 'basic', 'display_name' => '비밀번호', 'field_type' => 'password', 'use' => '1', 'open' => '', 'required' => '1'), 'mem_username' => array('field_name' => 'mem_username', 'func' => 'basic', 'display_name' => '이름', 'field_type' => 'text', 'use' => '', 'open' => '', 'required' => ''), 'mem_nickname' => array('field_name' => 'mem_nickname', 'func' => 'basic', 'display_name' => '닉네임', 'field_type' => 'text', 'use' => '1', 'open' => '1', 'required' => '1'), 'mem_homepage' => array('field_name' => 'mem_homepage', 'func' => 'basic', 'display_name' => '홈페이지', 'field_type' => 'url', 'use' => '', 'open' => '1', 'required' => ''), 'mem_phone' => array('field_name' => 'mem_phone', 'func' => 'basic', 'display_name' => '전화번호', 'field_type' => 'phone', 'use' => '', 'open' => '', 'required' => ''), 'mem_birthday' => array('field_name' => 'mem_birthday', 'func' => 'basic', 'display_name' => '생년월일', 'field_type' => 'date', 'use' => '', 'open' => '', 'required' => ''), 'mem_sex' => array('field_name' => 'mem_sex', 'func' => 'basic', 'display_name' => '성별', 'field_type' => 'radio', 'use' => '', 'open' => '', 'required' => ''), 'mem_address' => array('field_name' => 'mem_address', 'func' => 'basic', 'display_name' => '주소', 'field_type' => 'address', 'use' => '', 'open' => '', 'required' => ''), 'mem_profile_content' => array('field_name' => 'mem_profile_content', 'func' => 'basic', 'display_name' => '자기소개', 'field_type' => 'textarea', 'use' => '', 'open' => '1', 'required' => ''), 'mem_recommend' => array('field_name' => 'mem_recommend', 'func' => 'basic', 'display_name' => '추천인', 'field_type' => 'text', 'use' => '', 'open' => '', 'required' => ''));
        $configdata['registerform'] = json_encode($registerform);
        $this->cache->delete('config-model-get');
        $this->cache->clean();
        $this->Config_model->save($configdata);
        $hash = password_hash($this->input->post('mem_password'), PASSWORD_BCRYPT);
        $insertdata = array('mem_userid' => $this->input->post('mem_userid'), 'mem_email' => $this->input->post('mem_email'), 'mem_password' => $hash, 'mem_username' => $this->input->post('mem_nickname'), 'mem_nickname' => $this->input->post('mem_nickname'), 'mem_level' => 100, 'mem_receive_email' => 1, 'mem_use_note' => 1, 'mem_receive_sms' => 1, 'mem_open_profile' => 1, 'mem_email_cert' => 1, 'mem_register_datetime' => cdate('Y-m-d H:i:s'), 'mem_register_ip' => $this->input->ip_address(), 'mem_lastlogin_datetime' => cdate('Y-m-d H:i:s'), 'mem_lastlogin_ip' => $this->input->ip_address(), 'mem_is_admin' => 1);
        $mem_id = $this->Member_model->insert($insertdata);
        $membermeta = array('meta_change_pw_datetime' => cdate('Y-m-d H:i:s'), 'meta_email_cert_datetime' => cdate('Y-m-d H:i:s'), 'meta_open_profile_datetime' => cdate('Y-m-d H:i:s'), 'meta_use_note_datetime' => cdate('Y-m-d H:i:s'), 'meta_nickname_datetime' => cdate('Y-m-d H:i:s'));
        $this->Member_meta_model->save($mem_id, $membermeta);
        $insertdata = array('mem_id' => $mem_id, 'mni_nickname' => $this->input->post('mem_nickname'), 'mni_start_datetime' => cdate('Y-m-d H:i:s'));
        $this->Member_nickname_model->insert($insertdata);
        $insertdata = array('mem_id' => $mem_id, 'mrg_ip' => $this->input->ip_address(), 'mrg_datetime' => cdate('Y-m-d H:i:s'), 'mrg_useragent' => $this->agent->agent_string());
        $this->Member_register_model->insert($insertdata);
        $insertdata = array('doc_key' => 'aboutus', 'doc_title' => '회사소개', 'doc_content' => '회사소개 내용을 입력해주세요', 'doc_content_html_type' => 1, 'mem_id' => $mem_id, 'doc_datetime' => cdate('Y-m-d H:i:s'), 'doc_updated_mem_id' => $mem_id, 'doc_updated_datetime' => cdate('Y-m-d H:i:s'));
        $this->Document_model->insert($insertdata);
        $insertdata = array('doc_key' => 'provision', 'doc_title' => '이용약관', 'doc_content' => '이용약관 내용을 입력해주세요', 'doc_content_html_type' => 1, 'mem_id' => $mem_id, 'doc_datetime' => cdate('Y-m-d H:i:s'), 'doc_updated_mem_id' => $mem_id, 'doc_updated_datetime' => cdate('Y-m-d H:i:s'));
        $this->Document_model->insert($insertdata);
        $insertdata = array('doc_key' => 'privacy', 'doc_title' => '개인정보 취급방침', 'doc_content' => '개인정보 취급방침 내용을 입력해주세요', 'doc_content_html_type' => 1, 'mem_id' => $mem_id, 'doc_datetime' => cdate('Y-m-d H:i:s'), 'doc_updated_mem_id' => $mem_id, 'doc_updated_datetime' => cdate('Y-m-d H:i:s'));
        $this->Document_model->insert($insertdata);
        if ($this->input->post('autocreate')) {
            $insertdata = array('fgr_title' => '자주하는 질문', 'fgr_key' => 'faq', 'fgr_datetime' => cdate('Y-m-d H:i:s'), 'fgr_ip' => $this->input->ip_address(), 'mem_id' => $mem_id);
            $fgr_id = $this->Faq_group_model->insert($insertdata);
            $insertdata = array('fgr_id' => $fgr_id, 'faq_title' => '자주하는 질문 제목1 입니다', 'faq_content' => '자주하는 질문 답변1 입니다', 'faq_content_html_type' => 1, 'faq_order' => 1, 'faq_datetime' => cdate('Y-m-d H:i:s'), 'faq_ip' => $this->input->ip_address(), 'mem_id' => $mem_id);
            $this->Faq_model->insert($insertdata);
            $insertdata = array('fgr_id' => $fgr_id, 'faq_title' => '자주하는 질문 제목2 입니다', 'faq_content' => '자주하는 질문 답변2 입니다', 'faq_content_html_type' => 1, 'faq_order' => 2, 'faq_datetime' => cdate('Y-m-d H:i:s'), 'faq_ip' => $this->input->ip_address(), 'mem_id' => $mem_id);
            $this->Faq_model->insert($insertdata);
            $insertdata = array('fgr_id' => $fgr_id, 'faq_title' => '자주하는 질문 제목3 입니다', 'faq_content' => '자주하는 질문 답변3 입니다', 'faq_content_html_type' => 1, 'faq_order' => 3, 'faq_datetime' => cdate('Y-m-d H:i:s'), 'faq_ip' => $this->input->ip_address(), 'mem_id' => $mem_id);
            $this->Faq_model->insert($insertdata);
            $metadata = array('header_content' => '', 'footer_content' => '', 'mobile_header_content' => '', 'mobile_footer_content' => '');
            $insertdata = array('bgr_key' => 'g-a', 'bgr_name' => '그룹 A', 'bgr_order' => 1);
            $bgr_id_1 = $bgr_id = $this->Board_group_model->insert($insertdata);
            $this->Board_group_meta_model->save($bgr_id, $metadata);
            $insertdata = array('bgr_key' => 'g-b', 'bgr_name' => '그룹 B', 'bgr_order' => 2);
            $bgr_id_2 = $bgr_id = $this->Board_group_model->insert($insertdata);
            $this->Board_group_meta_model->save($bgr_id, $metadata);
            $insertdata = array('bgr_key' => 'g-c', 'bgr_name' => '그룹 C', 'bgr_order' => 3);
            $bgr_id_3 = $bgr_id = $this->Board_group_model->insert($insertdata);
            $this->Board_group_meta_model->save($bgr_id, $metadata);
            $metadata = array('header_content' => '', 'footer_content' => '', 'mobile_header_content' => '', 'mobile_footer_content' => '', 'order_by_field' => 'post_num, post_reply', 'list_count' => '20', 'mobile_list_count' => '10', 'page_count' => '5', 'mobile_page_count' => '3', 'show_list_from_view' => '1', 'new_icon_hour' => '24', 'hot_icon_hit' => '100', 'hot_icon_day' => '30', 'subject_length' => '60', 'mobile_subject_length' => '40', 'reply_order' => 'asc', 'gallery_cols' => '4', 'gallery_image_width' => '120', 'gallery_image_height' => '90', 'mobile_gallery_cols' => '2', 'mobile_gallery_image_width' => '120', 'mobile_gallery_image_height' => '90', 'use_scrap' => '1', 'use_post_like' => '1', 'use_post_dislike' => '1', 'use_print' => '1', 'use_sns' => '1', 'use_prev_next_post' => '1', 'use_mobile_prev_next_post' => '1', 'use_blame' => '1', 'blame_blind_count' => '3', 'syntax_highlighter' => '1', 'comment_syntax_highlighter' => '1', 'use_autoplay' => '1', 'post_image_width' => '700', 'post_mobile_image_width' => '400', 'content_target_blank' => '1', 'use_auto_url' => '1', 'use_mobile_auto_url' => '1', 'use_post_dhtml' => '1', 'link_num' => '2', 'use_upload_file' => '1', 'upload_file_num' => '2', 'mobile_upload_file_num' => '2', 'upload_file_max_size' => '32', 'comment_count' => '20', 'mobile_comment_count' => '20', 'comment_page_count' => '5', 'mobile_comment_page_count' => '3', 'use_comment_like' => '1', 'use_comment_dislike' => '1', 'use_comment_secret' => '1', 'comment_order' => 'asc', 'use_comment_blame' => '1', 'comment_blame_blind_count' => '3', 'protect_comment_num' => '5', 'use_sideview' => '1', 'use_tempsave' => '1');
            $insertdata = array('bgr_id' => $bgr_id_1, 'brd_key' => 'b-a-1', 'brd_name' => '게시판 A-1', 'brd_order' => 1, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_1, 'brd_key' => 'b-a-2', 'brd_name' => '게시판 A-2', 'brd_order' => 2, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_1, 'brd_key' => 'b-a-3', 'brd_name' => '게시판 A-3', 'brd_order' => 3, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_2, 'brd_key' => 'b-b-1', 'brd_name' => '게시판 B-1', 'brd_order' => 11, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_2, 'brd_key' => 'b-b-2', 'brd_name' => '게시판 B-2', 'brd_order' => 12, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_2, 'brd_key' => 'b-b-3', 'brd_name' => '게시판 B-3', 'brd_order' => 13, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_3, 'brd_key' => 'b-c-1', 'brd_name' => '게시판 C-1', 'brd_order' => 21, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_3, 'brd_key' => 'b-c-2', 'brd_name' => '게시판 C-2', 'brd_order' => 22, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('bgr_id' => $bgr_id_3, 'brd_key' => 'b-c-3', 'brd_name' => '게시판 C-3', 'brd_order' => 23, 'brd_search' => 1);
            $brd_id = $this->Board_model->insert($insertdata);
            $this->Board_meta_model->save($brd_id, $metadata);
            $insertdata = array('men_parent' => 0, 'men_name' => '그룹A', 'men_link' => group_url('g-a'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 10);
            $men_id = $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 A-1', 'men_link' => board_url('b-a-1'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 11);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 A-2', 'men_link' => board_url('b-a-2'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 12);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 A-3', 'men_link' => board_url('b-a-3'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 13);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => 0, 'men_name' => '그룹B', 'men_link' => group_url('g-b'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 20);
            $men_id = $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 B-1', 'men_link' => board_url('b-b-1'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 21);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 B-2', 'men_link' => board_url('b-b-2'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 22);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 B-3', 'men_link' => board_url('b-b-3'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 23);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => 0, 'men_name' => '그룹C', 'men_link' => group_url('g-c'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 30);
            $men_id = $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 C-1', 'men_link' => board_url('b-c-1'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 31);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 C-2', 'men_link' => board_url('b-c-2'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 32);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => $men_id, 'men_name' => '게시판 C-3', 'men_link' => board_url('b-c-3'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 33);
            $this->Menu_model->insert($insertdata);
            $insertdata = array('men_parent' => 0, 'men_name' => '자주하는질문', 'men_link' => faq_url('faq'), 'men_desktop' => 1, 'men_mobile' => 1, 'men_order' => 40);
            $men_id = $this->Menu_model->insert($insertdata);
        }
        $this->session->set_userdata('mem_id', $mem_id);
    }
コード例 #14
0
ファイル: Postact.php プロジェクト: smboy86/zzing
 /**
  * 게시물을 네이버에 핑 보내는 페이지입니다
  */
 public function naversyndi($post_id = 0)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_postact_naversyndi';
     $this->load->event($eventname);
     // 이벤트가 존재하면 실행합니다
     Events::trigger('before', $eventname);
     if (!$this->cbconfig->item('naver_syndi_key')) {
         die('신디케이션 키가 입력되지 않았습니다');
     }
     $post_id = (int) $post_id;
     if (empty($post_id) or $post_id < 1) {
         show_404();
     }
     $post = $this->Post_model->get_one($post_id);
     if (!element('post_id', $post)) {
         show_404();
     }
     if (element('post_del', $post)) {
         show_404();
     }
     $board = $this->board->item_all(element('brd_id', $post));
     if (!element('brd_id', $board)) {
         show_404();
     }
     if (!element('use_naver_syndi', $board)) {
         die('이 게시판은 신디케이션 기능을 사용하지 않습니다');
     }
     if (element('access_view', $board)) {
         die('비회원이 읽기가 가능한 게시판만 신디케이션을 지원합니다');
     }
     if (element('post_secret', $post)) {
         die('비밀글은 신디케이션을 지원하지 않습니다');
     }
     if (element('use_personal', $board)) {
         die('1:1 게시판은 신디케이션을 지원하지 않습니다');
     }
     $site_url = trim(site_url(), '/');
     $post_content = display_html_content(element('post_content', $post), element('post_html', $post), element('post_image_width', $board), element('use_auto_url', $board), element('content_target_blank', $board));
     $content = str_replace(array('&amp;', '&nbsp;'), array('&', ' '), $post_content);
     $summary = str_replace(array('&amp;', '&nbsp;'), array('&', ' '), strip_tags($post_content));
     // 이벤트가 존재하면 실행합니다
     Events::trigger('after', $eventname);
     header('content-type: text/xml');
     header('cache-control: no-cache, must-revalidate');
     header('pragma: no-cache');
     $xml = "";
     $xml .= "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
     $xml .= "<feed xmlns=\"http://webmastertool.naver.com\">\n";
     $xml .= "<id>" . $site_url . "</id>\n";
     $xml .= "<title>naver syndication feed document</title>\n";
     $xml .= "<author>\n";
     $xml .= "<name>webmaster</name>\n";
     $xml .= "</author>\n";
     $xml .= "<updated>" . cdate('Y-m-d\\TH:i:s\\+09:00') . "</updated>\n";
     $xml .= "<link rel=\"site\" href=\"" . $site_url . "\" title=\"" . html_escape($this->cbconfig->item('site_title')) . "\" />\n";
     $xml .= "<entry>\n";
     $xml .= "<id>" . post_url(element('brd_key', $board), $post_id) . "</id>\n";
     $xml .= "<title><![CDATA[" . html_escape(element('post_title', $post)) . "]]></title>\n";
     $xml .= "<author>\n";
     $xml .= "<name>" . html_escape(element('post_nickname', $post)) . "</name>\n";
     $xml .= "</author>\n";
     $xml .= "<updated>" . date('Y-m-d\\TH:i:s\\+09:00', strtotime(element('post_datetime', $post))) . "</updated>\n";
     $xml .= "<published>" . date('Y-m-d\\TH:i:s\\+09:00', strtotime(element('post_datetime', $post))) . "</published>\n";
     $xml .= "<link rel=\"via\" href=\"" . board_url(element('brd_key', $board)) . "\" title=\"" . html_escape(element('brd_name', $board)) . "\" />\n";
     $xml .= "<link rel=\"mobile\" href=\"" . post_url(element('brd_key', $board), $post_id) . "\" />\n";
     $xml .= "<content type=\"html\"><![CDATA[{$content}]]></content>\n";
     $xml .= "<summary type=\"text\"><![CDATA[{$summary}]]></summary>\n";
     $xml .= "<category term=\"" . element('brd_key', $board) . "\" label=\"" . html_escape(element('brd_name', $board)) . "\" />\n";
     $xml .= "</entry>\n";
     $xml .= "</feed>";
     echo $xml;
 }
コード例 #15
0
ファイル: Comment_write.php プロジェクト: smboy86/zzing
 /**
  * 댓글 작성시 업데이트하는 함수입니다
  */
 public function update()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_comment_write_update';
     $this->load->event($eventname);
     // 이벤트가 존재하면 실행합니다
     Events::trigger('before', $eventname);
     $post_id = (int) $this->input->post('post_id');
     if (empty($post_id) or $post_id < 1) {
         $result = array('error' => '잘못된 접근입니다');
         exit(json_encode($result));
     }
     $post = $this->Post_model->get_one($post_id);
     if (!element('post_id', $post)) {
         $result = array('error' => '잘못된 접근입니다');
         exit(json_encode($result));
     }
     $board = $this->board->item_all(element('brd_id', $post));
     $mem_id = (int) $this->member->item('mem_id');
     $mode = $this->input->post('mode') === 'cu' ? 'cu' : 'c';
     if ($mode === 'cu') {
         $cmt_id = (int) $this->input->post('cmt_id');
         if (empty($cmt_id) or $cmt_id < 1) {
             $result = array('error' => '잘못된 접근입니다');
             exit(json_encode($result));
         }
         $comment = $this->Comment_model->get_one($cmt_id);
         if (!element('cmt_id', $comment)) {
             $result = array('error' => '잘못된 접근입니다');
             exit(json_encode($result));
         }
         if (element('cmt_del', $comment)) {
             $result = array('error' => '삭제된 글은 수정하실 수 없습니다');
             exit(json_encode($result));
         }
     }
     if (element('notice_comment_block', $board) && element('post_notice', $post)) {
         $result = array('error' => '공지사항 글에는 댓글을 입력하실 수 없습니다.');
         exit(json_encode($result));
     }
     $check = array('group_id' => element('bgr_id', $board), 'board_id' => element('brd_id', $board));
     $is_accessable = $this->accesslevel->is_accessable(element('access_comment', $board), element('access_comment_level', $board), element('access_comment_group', $board), $check);
     if ($is_accessable === false) {
         $alertmessage = $this->member->is_member() ? '회원님은 댓글을 작성할 수 있는 권한이 없습니다' : '비회원은 댓글을 작성할 수 있는 권한이 없습니다.<br>회원이시라면 로그인 후 이용해 보십시오';
         $result = array('error' => $alertmessage);
         exit(json_encode($result));
     }
     $is_admin = $this->member->is_admin(array('board_id' => element('brd_id', $board), 'group_id' => element('bgr_id', $board)));
     $origin = '';
     $reply = '';
     if ($this->input->post('cmt_id') && $mode === 'c') {
         $parent_id = (int) $this->input->post('cmt_id');
         if (empty($parent_id) or $parent_id < 1) {
             $result = array('error' => '잘못된 접근입니다');
             exit(json_encode($result));
         }
         $origin = $this->Comment_model->get_one($parent_id);
         if (!element('cmt_id', $origin)) {
             $result = array('error' => '잘못된 접근입니다');
             exit(json_encode($result));
         }
         if (element('cmt_del', $origin)) {
             $result = array('error' => '삭제된 글에는 답변을 입력하실 수 없습니다');
             exit(json_encode($result));
         }
         if (strlen(element('cmt_reply', $origin)) >= 5) {
             $result = array('error' => '더 이상 답변하실 수 없습니다.\\n답변은 5단계 까지만 가능합니다');
             exit(json_encode($result));
         }
         $reply_len = strlen(element('cmt_reply', $origin)) + 1;
         $begin_reply_char = 'A';
         $end_reply_char = 'Z';
         $reply_number = +1;
         $this->db->select('MAX(SUBSTRING(cmt_reply, ' . $reply_len . ', 1)) as reply', false);
         $this->db->where('cmt_num', element('cmt_num', $origin));
         $this->db->where('SUBSTRING(cmt_reply, ' . $reply_len . ', 1) <>', '');
         if (element('cmt_id', $origin)) {
             $this->db->like('cmt_reply', element('cmt_reply', $origin), 'after');
         }
         $result = $this->db->get('comment');
         $row = $result->row_array();
         if (!element('reply', $row)) {
             $reply_char = $begin_reply_char;
         } elseif (element('reply', $row) === $end_reply_char) {
             // A~Z은 26 입니다.
             $result = array('error' => '더 이상 답변하실 수 없습니다.\\n답변은 26개 까지만 가능합니다');
             exit(json_encode($result));
         } else {
             $reply_char = chr(ord(element('reply', $row)) + $reply_number);
         }
         $reply = element('cmt_reply', $origin) . $reply_char;
     }
     if ($mode === 'cu') {
         if (element('protect_comment_day', $board) > 0 && $is_admin === false) {
             if (ctimestamp() - strtotime(element('cmt_datetime', $comment)) >= element('protect_comment_day', $board) * 86400) {
                 $result = array('error' => '이 게시판은 ' . element('protect_comment_day', $board) . '일 이상된 댓글의 수정을 금지합니다');
                 exit(json_encode($result));
             }
         }
         if (!$mem_id) {
             $result = array('error' => '비회원은 수정 권한이 없습니다');
             exit(json_encode($result));
         }
         if (!element('mem_id', $comment) && $is_admin === false) {
             $result = array('error' => '비회원이 작성하신 글은 수정할 수 없습니다');
             exit(json_encode($result));
         }
         if (element('mem_id', $comment) && (int) element('mem_id', $comment) !== $mem_id && $is_admin === false) {
             $result = array('error' => '다른 회원님의 댓글은 수정할 수 없습니다');
             exit(json_encode($result));
         }
     }
     if ($mode === 'c' && $this->session->userdata('lastest_post_time') && $this->cbconfig->item('new_post_second')) {
         if ($this->session->userdata('lastest_post_time') >= ctimestamp() - $this->cbconfig->item('new_post_second') && $is_admin === false) {
             $result = array('error' => '너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.<br />' . ($this->cbconfig->item('new_post_second') - (ctimestamp() - $this->session->userdata('lastest_post_time'))) . '초 후 글쓰기가 가능합니다');
             exit(json_encode($result));
         }
     }
     $is_comment_name = $this->member->is_member() === false ? true : false;
     $can_comment_secret = element('use_comment_secret', $board) === '1' && $this->member->is_member() ? true : false;
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'cmt_content', 'label' => '내용', 'rules' => 'trim|required'));
     if ($is_comment_name) {
         $password_length = $this->cbconfig->item('password_length');
         $config[] = array('field' => 'cmt_nickname', 'label' => '닉네임', 'rules' => 'trim|required|min_length[2]|max_length[20]|callback__mem_nickname_check');
         $config[] = array('field' => 'cmt_password', 'label' => '패스워드', 'rules' => 'trim|required|min_length[' . $password_length . ']|callback__mem_password_check');
     }
     if ($this->member->is_member() === false) {
         if ($this->cbconfig->item('use_recaptcha')) {
             $config[] = array('field' => 'g-recaptcha-response', 'label' => '자동등록방지문자', 'rules' => 'trim|required|callback__check_recaptcha');
         } else {
             $config[] = array('field' => 'captcha_key', 'label' => '자동등록방지문자', 'rules' => 'trim|required|callback__check_captcha');
         }
     }
     $this->form_validation->set_rules($config);
     $form_validation = $this->form_validation->run();
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     if ($form_validation === false) {
         // 이벤트가 존재하면 실행합니다
         Events::trigger('formrunfalse', $eventname);
         $result = array('error' => validation_errors('<div class="alert alert-warning" role="alert">', '</div>'));
         exit(json_encode($result));
     } else {
         /**
          * 유효성 검사를 통과한 경우입니다.
          * 즉 데이터의 insert 나 update 의 process 처리가 필요한 상황입니다
          */
         // 이벤트가 존재하면 실행합니다
         Events::trigger('formruntrue', $eventname);
         $content_type = 0;
         $cmt_content = ($this->input->post('cmt_content') === '<p></p>' or $this->input->post('cmt_content') === '<p>&nbsp;</p>') ? '' : $this->input->post('cmt_content');
         if ($mode === 'c') {
             if ($origin) {
                 $cmt_num = element('cmt_num', $origin);
                 $cmt_reply = $reply;
             } else {
                 $cmt_num = $this->Comment_model->next_comment_num();
                 $cmt_reply = '';
             }
             $updatedata = array('cmt_num' => $cmt_num, 'cmt_reply' => $cmt_reply, 'cmt_content' => $cmt_content, 'cmt_html' => $content_type, 'cmt_datetime' => cdate('Y-m-d H:i:s'), 'cmt_updated_datetime' => cdate('Y-m-d H:i:s'), 'cmt_ip' => $this->input->ip_address(), 'post_id' => element('post_id', $post), 'brd_id' => element('brd_id', $post));
             if ($mem_id) {
                 $updatedata['mem_id'] = $mem_id;
                 $updatedata['cmt_userid'] = $this->member->item('mem_userid');
                 $updatedata['cmt_username'] = $this->member->item('mem_username');
                 $updatedata['cmt_nickname'] = $this->member->item('mem_nickname');
                 $updatedata['cmt_email'] = $this->member->item('mem_email');
                 $updatedata['cmt_homepage'] = $this->member->item('mem_homepage');
             }
             if ($is_comment_name) {
                 if (!function_exists('password_hash')) {
                     $this->load->helper('password');
                 }
                 $updatedata['cmt_nickname'] = $this->input->post('cmt_nickname', null, '');
                 $updatedata['cmt_password'] = password_hash($this->input->post('cmt_password', null, ''), PASSWORD_BCRYPT);
             }
             if ($can_comment_secret) {
                 $updatedata['cmt_secret'] = $this->input->post('cmt_secret') ? 1 : 0;
             }
             if ($this->member->is_member() && element('use_comment_secret', $board) === '2') {
                 $updatedata['cmt_secret'] = 1;
             }
             $updatedata['cmt_device'] = $this->cbconfig->get_device_type() === 'mobile' ? 'mobile' : 'desktop';
             $cmt_id = $this->Comment_model->insert($updatedata);
             $this->Post_model->comment_updated($post_id, cdate('Y-m-d H:i:s'));
             if ($this->cbconfig->item('use_notification') && $this->cbconfig->item('notification_comment')) {
                 $this->load->library('notificationlib');
                 $not_message = $updatedata['cmt_nickname'] . '님께서 [' . element('post_title', $post) . '] 에 댓글을 남기셨습니다';
                 $not_url = post_url(element('brd_key', $board), $post_id) . '#comment_' . $cmt_id;
                 $this->notificationlib->set_noti(element('mem_id', $post), $mem_id, 'comment', $cmt_id, $not_message, $not_url);
             }
             if ($origin && $cmt_reply && $this->cbconfig->item('use_notification') && $this->cbconfig->item('notification_comment_comment') && element('mem_id', $post) !== element('mem_id', $origin)) {
                 $this->load->library('notificationlib');
                 $not_message = $updatedata['cmt_nickname'] . '님께서 [' . element('post_title', $post) . '] 글의 회원님의 댓글에 답변댓글을 남기셨습니다';
                 $not_url = post_url(element('brd_key', $board), $post_id) . '#comment_' . $cmt_id;
                 $this->notificationlib->set_noti(element('mem_id', $origin), $mem_id, 'comment_comment', $cmt_id, $not_message, $not_url);
             }
             if (element('use_point', $board)) {
                 $point = $this->point->insert_point($mem_id, element('point_comment', $board), element('board_name', $board) . ' ' . $cmt_id . ' 댓글 작성', 'comment', $cmt_id, '댓글 작성');
             }
             $emailsendlistadmin = array();
             $notesendlistadmin = array();
             $emailsendlistpostwriter = array();
             $notesendlistpostwriter = array();
             $emailsendlistcmtwriter = array();
             $notesendlistcmtwriter = array();
             $post_writer = array();
             if (element('send_email_comment_super_admin', $board) or element('send_note_comment_super_admin', $board)) {
                 $mselect = 'mem_id, mem_email, mem_nickname, mem_phone';
                 $superadminlist = $this->Member_model->get_superadmin_list($mselect);
             }
             if (element('send_email_comment_group_admin', $board) or element('send_note_comment_group_admin', $board)) {
                 $this->load->model('Board_group_admin_model');
                 $groupadminlist = $this->Board_group_admin_model->get_board_group_admin_member(element('bgr_id', $board));
             }
             if (element('send_email_comment_board_admin', $board) or element('send_note_comment_board_admin', $board)) {
                 $this->load->model('Board_admin_model');
                 $boardadminlist = $this->Board_admin_model->get_board_admin_member(element('brd_id', $board));
             }
             if (element('send_email_comment_super_admin', $board) && $superadminlist) {
                 foreach ($superadminlist as $key => $value) {
                     $emailsendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_email_comment_group_admin', $board) && $groupadminlist) {
                 foreach ($groupadminlist as $key => $value) {
                     $emailsendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_email_comment_board_admin', $board) && $boardadminlist) {
                 foreach ($boardadminlist as $key => $value) {
                     $emailsendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_email_comment_post_writer', $board) or element('send_note_comment_post_writer', $board) or element('post_receive_email', $post)) {
                 $post_writer = $this->Member_model->get_one(element('mem_id', $post));
             }
             if (element('mem_email', $post_writer) && element('post_receive_email', $post) or element('send_email_comment_post_writer', $board) && element('mem_receive_email', $post_writer)) {
                 $emailsendlistpostwriter['mem_email'] = $post['post_email'];
             }
             if (element('send_email_comment_comment_writer', $board)) {
                 $emailsendlistcmtwriter['mem_email'] = $this->member->item('mem_email');
             }
             if (element('send_note_comment_super_admin', $board) && $superadminlist) {
                 foreach ($superadminlist as $key => $value) {
                     $notesendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_note_comment_group_admin', $board) && $groupadminlist) {
                 foreach ($groupadminlist as $key => $value) {
                     $notesendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_note_comment_board_admin', $board) && $boardadminlist) {
                 foreach ($boardadminlist as $key => $value) {
                     $notesendlistadmin[$value['mem_id']] = $value;
                 }
             }
             if (element('send_note_comment_post_writer', $board) && element('mem_use_note', $post_writer)) {
                 $notesendlistpostwriter['mem_id'] = element('mem_id', $post_writer);
             }
             if (element('send_note_comment_comment_writer', $board) && $this->member->item('mem_use_note')) {
                 $notesendlistcmtwriter['mem_id'] = $mem_id;
             }
             $searchconfig = array('{홈페이지명}', '{회사명}', '{홈페이지주소}', '{댓글내용}', '{댓글작성자닉네임}', '{댓글작성자아이디}', '{댓글작성시간}', '{댓글주소}', '{게시글제목}', '{게시글내용}', '{게시글작성자닉네임}', '{게시글작성자아이디}', '{게시글작성시간}', '{게시글주소}', '{게시판명}', '{게시판주소}');
             $autolink = element('use_auto_url', $board) ? true : false;
             $popup = element('content_target_blank', $board) ? true : false;
             $replaceconfig = array($this->cbconfig->item('site_title'), $this->cbconfig->item('company_name'), site_url(), display_html_content($cmt_content, 0), $updatedata['cmt_nickname'], $this->member->item('mem_userid'), cdate('Y-m-d H:i:s'), post_url(element('brd_key', $board), element('post_id', $post)) . '#comment_' . $cmt_id, element('post_title', $post), display_html_content(element('post_content', $post), element('post_html', $post), element('post_image_width', $board), $autolink, $popup), element('post_nickname', $post), element('post_userid', $post), element('post_datetime', $post), post_url(element('brd_key', $board), element('post_id', $post)), element('brd_name', $board), board_url(element('brd_key', $board)));
             $replaceconfig_escape = array(html_escape($this->cbconfig->item('site_title')), html_escape($this->cbconfig->item('company_name')), site_url(), display_html_content($cmt_content, 0), html_escape($updatedata['cmt_nickname']), $this->member->item('mem_userid'), cdate('Y-m-d H:i:s'), post_url(element('brd_key', $board), element('post_id', $post)) . '#comment_' . $cmt_id, html_escape(element('post_title', $post)), display_html_content(element('post_content', $post), element('post_html', $post), element('post_image_width', $board), $autolink, $popup), html_escape(element('post_nickname', $post)), element('post_userid', $post), element('post_datetime', $post), post_url(element('brd_key', $board), element('post_id', $post)), html_escape(element('brd_name', $board)), board_url(element('brd_key', $board)));
             if ($emailsendlistadmin) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_email_comment_admin_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_email_comment_admin_content'));
                 foreach ($emailsendlistadmin as $akey => $aval) {
                     $this->email->clear(true);
                     $this->email->from($this->cbconfig->item('webmaster_email'), $this->cbconfig->item('webmaster_name'));
                     $this->email->to(element('mem_email', $aval));
                     $this->email->subject($title);
                     $this->email->message($content);
                     $this->email->send();
                 }
             }
             if ($emailsendlistpostwriter) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_email_comment_post_writer_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_email_comment_post_writer_content'));
                 $this->email->clear(true);
                 $this->email->from($this->cbconfig->item('webmaster_email'), $this->cbconfig->item('webmaster_name'));
                 $this->email->to(element('mem_email', $emailsendlistpostwriter));
                 $this->email->subject($title);
                 $this->email->message($content);
                 $this->email->send();
             }
             if ($emailsendlistcmtwriter) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_email_comment_comment_writer_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_email_comment_comment_writer_content'));
                 $this->email->clear(true);
                 $this->email->from($this->cbconfig->item('webmaster_email'), $this->cbconfig->item('webmaster_name'));
                 $this->email->to(element('mem_email', $emailsendlistcmtwriter));
                 $this->email->subject($title);
                 $this->email->message($content);
                 $this->email->send();
             }
             if ($notesendlistadmin) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_note_comment_admin_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_note_comment_admin_content'));
                 foreach ($notesendlistadmin as $akey => $aval) {
                     $note_result = $this->notelib->send_note($sender = 0, $receiver = element('mem_id', $aval), $title, $content, 1);
                 }
             }
             if ($notesendlistpostwriter && element('mem_id', $notesendlistpostwriter)) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_note_comment_post_writer_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_note_comment_post_writer_content'));
                 $note_result = $this->notelib->send_note($sender = 0, $receiver = element('mem_id', $notesendlistpostwriter), $title, $content, 1);
             }
             if ($notesendlistcmtwriter && element('mem_id', $notesendlistcmtwriter)) {
                 $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_note_comment_comment_writer_title'));
                 $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_note_comment_comment_writer_content'));
                 $note_result = $this->notelib->send_note($sender = 0, $receiver = element('mem_id', $notesendlistcmtwriter), $title, $content, 1);
             }
             $this->session->set_userdata('lastest_post_time', ctimestamp());
             // 이벤트가 존재하면 실행합니다
             Events::trigger('after_insert', $eventname);
             $result = array('success' => '댓글이 등록되었습니다');
             exit(json_encode($result));
         } else {
             $updatedata = array('cmt_content' => $cmt_content, 'cmt_html' => $content_type, 'cmt_updated_datetime' => cdate('Y-m-d H:i:s'), 'cmt_ip' => $this->input->ip_address());
             if ($can_comment_secret) {
                 $updatedata['cmt_secret'] = $this->input->post('cmt_secret') ? 1 : 0;
             }
             if ($this->member->is_member() && element('use_comment_secret', $board) === '2') {
                 $updatedata['cmt_secret'] = 1;
             }
             $updatedata['cmt_device'] = $this->cbconfig->get_device_type() === 'mobile' ? 'mobile' : 'desktop';
             $this->Comment_model->update($cmt_id, $updatedata);
             // 이벤트가 존재하면 실행합니다
             Events::trigger('after_update', $eventname);
             $result = array('success' => '댓글이 수정되었습니다');
             exit(json_encode($result));
         }
     }
 }
コード例 #16
0
ファイル: Board_write.php プロジェクト: smboy86/zzing
 /**
  * 게시물 작성과 답변에 공통으로 쓰입니다
  */
 public function _write_common($board, $origin = '', $reply = '')
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_board_write_write_common';
     $this->load->event($eventname);
     $param =& $this->querystring;
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     $view['view']['post'] = array();
     $view['view']['board'] = $board;
     $view['view']['board_key'] = element('brd_key', $board);
     $mem_id = (int) $this->member->item('mem_id');
     $primary_key = $this->Post_model->primary_key;
     $view['view']['is_admin'] = $is_admin = $this->member->is_admin(array('board_id' => element('brd_id', $board), 'group_id' => element('bgr_id', $board)));
     // 글 한개만 작성 가능
     if (element('use_only_one_post', $board) && $is_admin === false) {
         if ($this->member->is_member() === false) {
             alert('비회원은 글을 작성할 수 있는 권한이 없습니다. 회원이사라면 로그인 후 이용해주세요');
         }
         $mywhere = array('brd_id' => element('brd_id', $board), 'mem_id' => $mem_id);
         $cnt = $this->Post_model->count_by($mywhere);
         if ($cnt) {
             alert('이 게시판은 한 사람이 하나의 글만 등록 가능합니다.');
         }
     }
     // 글쓰기 기간제한
     if (element('write_possible_days', $board) && $is_admin === false) {
         if ($this->member->is_member() === false) {
             alert('비회원은 글을 작성할 수 있는 권한이 없습니다. 회원이사라면 로그인 후 이용해주세요');
         }
         if (ctimestamp() - strtotime($this->member->item('mem_register_datetime')) < element('write_possible_days', $board) * 86400) {
             alert('이 게시판은 회원가입한지 ' . element('write_possible_days', $board) . '일이 지난 회원만 게시물 작성이 가능합니다');
         }
     }
     if ($this->session->userdata('lastest_post_time') && $this->cbconfig->item('new_post_second')) {
         if ($this->session->userdata('lastest_post_time') >= ctimestamp() - $this->cbconfig->item('new_post_second') && $is_admin === false) {
             alert('너무 빠른 시간내에 게시물을 연속해서 올릴 수 없습니다.\\n\\n' . ($this->cbconfig->item('new_post_second') - (ctimestamp() - $this->session->userdata('lastest_post_time'))) . '초 후 글쓰기가 가능합니다');
         }
     }
     if (element('use_point', $board) && $this->cbconfig->item('block_write_zeropoint') && element('point_write', $board) < 0 && $this->member->item('mem_point') + element('point_write', $board) < 0) {
         alert('회원님은 포인트가 부족하므로 글을 작성하실 수 없습니다. 글 작성시 ' . element('point_write', $board) * -1 . ' 포인트가 차감됩니다');
         return false;
     }
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['step1'] = Events::trigger('step1', $eventname);
     $view['view']['post']['is_post_name'] = $is_post_name = $this->member->is_member() === false ? true : false;
     $view['view']['post']['post_title'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_post_default_title', $board) : element('post_default_title', $board);
     $view['view']['post']['post_content'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_post_default_content', $board) : element('post_default_content', $board);
     $view['view']['post']['can_post_notice'] = $can_post_notice = $is_admin !== false ? true : false;
     $view['view']['post']['can_post_secret'] = $can_post_secret = element('use_post_secret', $board) === '1' ? true : false;
     $view['view']['post']['post_secret'] = element('use_post_secret_selected', $board) ? '1' : '';
     $view['view']['post']['can_post_receive_email'] = $can_post_receive_email = element('use_post_receive_email', $board) ? true : false;
     $extravars = element('extravars', $board);
     $form = json_decode($extravars, true);
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'post_title', 'label' => '제목', 'rules' => 'trim|required'), array('field' => 'post_content', 'label' => '내용', 'rules' => 'trim|required'));
     if ($form && is_array($form)) {
         foreach ($form as $key => $value) {
             if (!element('use', $value)) {
                 continue;
             }
             $required = element('required', $value) ? '|required' : '';
             if (element('field_type', $value) === 'checkbox') {
                 $config[] = array('field' => element('field_name', $value) . '[]', 'label' => element('display_name', $value), 'rules' => 'trim' . $required);
             } else {
                 $config[] = array('field' => element('field_name', $value), 'label' => element('display_name', $value), 'rules' => 'trim' . $required);
             }
         }
     }
     if ($is_post_name) {
         $config[] = array('field' => 'post_nickname', 'label' => '닉네임', 'rules' => 'trim|required|min_length[2]|max_length[20]|callback__mem_nickname_check');
         $config[] = array('field' => 'post_email', 'label' => '이메일', 'rules' => 'trim|required|valid_email|max_length[50]|callback__mem_email_check');
         $config[] = array('field' => 'post_homepage', 'label' => '홈페이지', 'rules' => 'prep_url|valid_url');
     }
     if ($this->member->is_member() === false) {
         $password_length = $this->cbconfig->item('password_length');
         $config[] = array('field' => 'post_password', 'label' => '패스워드', 'rules' => 'trim|required|min_length[' . $password_length . ']|callback__mem_password_check');
         if ($this->cbconfig->item('use_recaptcha')) {
             $config[] = array('field' => 'g-recaptcha-response', 'label' => '자동등록방지문자', 'rules' => 'trim|required|callback__check_recaptcha');
         } else {
             $config[] = array('field' => 'captcha_key', 'label' => '자동등록방지문자', 'rules' => 'trim|required|callback__check_captcha');
         }
     }
     if (element('use_category', $board) && $is_admin === false) {
         $config[] = array('field' => 'post_category', 'label' => '카테고리', 'rules' => 'trim|required');
     }
     $this->form_validation->set_rules($config);
     $form_validation = $this->form_validation->run();
     $file_error = '';
     $uploadfiledata = '';
     if (element('use_upload_file', $board)) {
         $check = array('group_id' => element('bgr_id', $board), 'board_id' => element('brd_id', $board));
         $use_upload = $this->accesslevel->is_accessable(element('access_upload', $board), element('access_upload_level', $board), element('access_upload_group', $board), $check);
     } else {
         $use_upload = false;
     }
     $view['view']['board']['use_upload'] = $use_upload;
     $view['view']['board']['upload_file_count'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_upload_file_num', $board) : element('upload_file_num', $board);
     $use_post_dhtml = $this->cbconfig->get_device_view_type() === 'mobile' ? element('use_mobile_post_dhtml', $board) : element('use_post_dhtml', $board);
     if ($use_post_dhtml) {
         $check = array('group_id' => element('bgr_id', $board), 'board_id' => element('brd_id', $board));
         $use_dhtml = $this->accesslevel->is_accessable(element('access_dhtml', $board), element('access_dhtml_level', $board), element('access_dhtml_group', $board), $check);
     } else {
         $use_dhtml = false;
     }
     $view['view']['board']['use_dhtml'] = $use_dhtml;
     $view['view']['board']['link_count'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_link_num', $board) : element('link_num', $board);
     $view['view']['board']['headercontent'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_header_content', $board) : element('header_content', $board);
     $view['view']['board']['footercontent'] = $this->cbconfig->get_device_view_type() === 'mobile' ? element('mobile_footer_content', $board) : element('footer_content', $board);
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['step2'] = Events::trigger('step2', $eventname);
     if ($use_upload === true && $form_validation && element('use_upload_file', $board)) {
         $this->load->library('upload');
         if (isset($_FILES) && isset($_FILES['post_file']) && isset($_FILES['post_file']['name']) && is_array($_FILES['post_file']['name'])) {
             $filecount = count($_FILES['post_file']['name']);
             $upload_path = './uploads/post/';
             if (is_dir($upload_path) === false) {
                 mkdir($upload_path, 0707);
                 $file = $upload_path . 'index.php';
                 $f = @fopen($file, 'w');
                 @fwrite($f, '');
                 @fclose($f);
                 @chmod($file, 0644);
             }
             $upload_path .= cdate('Y') . '/';
             if (is_dir($upload_path) === false) {
                 mkdir($upload_path, 0707);
                 $file = $upload_path . 'index.php';
                 $f = @fopen($file, 'w');
                 @fwrite($f, '');
                 @fclose($f);
                 @chmod($file, 0644);
             }
             $upload_path .= cdate('m') . '/';
             if (is_dir($upload_path) === false) {
                 mkdir($upload_path, 0707);
                 $file = $upload_path . 'index.php';
                 $f = @fopen($file, 'w');
                 @fwrite($f, '');
                 @fclose($f);
                 @chmod($file, 0644);
             }
             foreach ($_FILES['post_file']['name'] as $i => $value) {
                 if ($value) {
                     $uploadconfig = '';
                     $uploadconfig['upload_path'] = $upload_path;
                     $uploadconfig['allowed_types'] = element('upload_file_extension', $board) ? element('upload_file_extension', $board) : '*';
                     $uploadconfig['max_size'] = element('upload_file_max_size', $board) * 1024;
                     $uploadconfig['encrypt_name'] = true;
                     $this->upload->initialize($uploadconfig);
                     $_FILES['userfile']['name'] = $_FILES['post_file']['name'][$i];
                     $_FILES['userfile']['type'] = $_FILES['post_file']['type'][$i];
                     $_FILES['userfile']['tmp_name'] = $_FILES['post_file']['tmp_name'][$i];
                     $_FILES['userfile']['error'] = $_FILES['post_file']['error'][$i];
                     $_FILES['userfile']['size'] = $_FILES['post_file']['size'][$i];
                     if ($this->upload->do_upload()) {
                         $filedata = $this->upload->data();
                         $uploadfiledata[$i]['pfi_filename'] = cdate('Y') . '/' . cdate('m') . '/' . element('file_name', $filedata);
                         $uploadfiledata[$i]['pfi_originname'] = element('orig_name', $filedata);
                         $uploadfiledata[$i]['pfi_filesize'] = intval(element('file_size', $filedata) * 1024);
                         $uploadfiledata[$i]['pfi_width'] = element('image_width', $filedata) ? element('image_width', $filedata) : 0;
                         $uploadfiledata[$i]['pfi_height'] = element('image_height', $filedata) ? element('image_height', $filedata) : 0;
                         $uploadfiledata[$i]['pfi_type'] = str_replace('.', '', element('file_ext', $filedata));
                         $uploadfiledata[$i]['is_image'] = element('is_image', $filedata) ? 1 : 0;
                     } else {
                         $file_error = $this->upload->display_errors();
                         break;
                     }
                 }
             }
         }
     }
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     if ($form_validation === false or $file_error) {
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formrunfalse'] = Events::trigger('formrunfalse', $eventname);
         if ($file_error) {
             $view['view']['message'] = $file_error;
         }
         /**
          * primary key 정보를 저장합니다
          */
         $view['view']['primary_key'] = $primary_key;
         $extra_content = array();
         $k = 0;
         if ($form && is_array($form)) {
             foreach ($form as $key => $value) {
                 if (!element('use', $value)) {
                     continue;
                 }
                 $required = element('required', $value) ? 'required' : '';
                 $extra_content[$k]['field_name'] = element('field_name', $value);
                 $extra_content[$k]['display_name'] = element('display_name', $value);
                 $extra_content[$k]['input'] = '';
                 //field_type : text, url, email, phone, textarea, radio, select, checkbox, date
                 if (element('field_type', $value) === 'text' or element('field_type', $value) === 'url' or element('field_type', $value) === 'email' or element('field_type', $value) === 'phone' or element('field_type', $value) === 'date') {
                     if (element('field_type', $value) === 'date') {
                         $extra_content[$k]['input'] .= '<input type="text" id="' . element('field_name', $value) . '" name="' . element('field_name', $value) . '" class="form-control input datepicker" value="' . set_value(element('field_name', $value)) . '" readonly="readonly" ' . $required . ' />';
                     } elseif (element('field_type', $value) === 'phone') {
                         $extra_content[$k]['input'] .= '<input type="text" id="' . element('field_name', $value) . '" name="' . element('field_name', $value) . '" class="form-control input validphone" value="' . set_value(element('field_name', $value)) . '" ' . $required . ' />';
                     } else {
                         $extra_content[$k]['input'] .= '<input type="' . element('field_type', $value) . '" id="' . element('field_name', $value) . '" name="' . element('field_name', $value) . '" class="form-control input" value="' . set_value(element('field_name', $value)) . '" ' . $required . '/>';
                     }
                 } elseif (element('field_type', $value) === 'textarea') {
                     $extra_content[$k]['input'] .= '<textarea id="' . element('field_name', $value) . '" name="' . element('field_name', $value) . '" class="form-control input" ' . $required . '>' . set_value(element('field_name', $value)) . '</textarea>';
                 } elseif (element('field_type', $value) === 'radio') {
                     $extra_content[$k]['input'] .= '<div class="checkbox">';
                     $options = explode("\n", element('options', $value));
                     $i = 1;
                     if ($options) {
                         foreach ($options as $okey => $oval) {
                             $radiovalue = $oval;
                             $extra_content[$k]['input'] .= '<label for="' . element('field_name', $value) . '_' . $i . '"><input type="radio" name="' . element('field_name', $value) . '" id="' . element('field_name', $value) . '_' . $i . '" value="' . $radiovalue . '" ' . set_radio(element('field_name', $value), $radiovalue) . ' /> ' . $oval . ' </label> ';
                             $i++;
                         }
                     }
                     $extra_content[$k]['input'] .= '</div>';
                 } elseif (element('field_type', $value) === 'checkbox') {
                     $extra_content[$k]['input'] .= '<div class="checkbox">';
                     $options = explode("\n", element('options', $value));
                     $i = 1;
                     if ($options) {
                         foreach ($options as $okey => $oval) {
                             $extra_content[$k]['input'] .= '<label for="' . element('field_name', $value) . '_' . $i . '"><input type="checkbox" name="' . element('field_name', $value) . '[]" id="' . element('field_name', $value) . '_' . $i . '" value="' . $oval . '" ' . set_checkbox(element('field_name', $value), $oval) . ' /> ' . $oval . ' </label> ';
                             $i++;
                         }
                     }
                     $extra_content[$k]['input'] .= '</div>';
                 } elseif (element('field_type', $value) === 'select') {
                     $extra_content[$k]['input'] .= '<div class="input-group">';
                     $extra_content[$k]['input'] .= '<select name="' . element('field_name', $value) . '" class="form-control input" ' . $required . '>';
                     $extra_content[$k]['input'] .= '<option value="" >선택하세요</option> ';
                     $options = explode("\n", element('options', $value));
                     if ($options) {
                         foreach ($options as $okey => $oval) {
                             $extra_content[$k]['input'] .= '<option value="' . $oval . '" ' . set_select(element('field_name', $value), $oval) . ' >' . $oval . '</option> ';
                         }
                     }
                     $extra_content[$k]['input'] .= '</select>';
                     $extra_content[$k]['input'] .= '</div>';
                 }
                 $k++;
             }
         }
         $view['view']['extra_content'] = $extra_content;
         if (element('use_category', $board)) {
             $this->load->model('Board_category_model');
             $view['view']['category'] = $this->Board_category_model->get_all_category(element('brd_id', $board));
         }
         $view['view']['has_tempsave'] = false;
         if ($this->member->is_member() && element('use_tempsave', $board)) {
             $this->load->model('Tempsave_model');
             $twhere = array('brd_id' => element('brd_id', $board), 'mem_id' => $mem_id);
             $tempsave = $this->Tempsave_model->get_one('', '', $twhere);
             if (element('tmp_id', $tempsave)) {
                 $view['view']['has_tempsave'] = true;
             }
         }
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
         /**
          * 레이아웃을 정의합니다
          */
         $page_title = $this->cbconfig->item('site_meta_title_board_write');
         $meta_description = $this->cbconfig->item('site_meta_description_board_write');
         $meta_keywords = $this->cbconfig->item('site_meta_keywords_board_write');
         $meta_author = $this->cbconfig->item('site_meta_author_board_write');
         $page_name = $this->cbconfig->item('site_page_name_board_write');
         $searchconfig = array('{게시판명}', '{게시판아이디}');
         $replaceconfig = array(element('board_name', $board), element('brd_key', $board));
         $page_title = str_replace($searchconfig, $replaceconfig, $page_title);
         $meta_description = str_replace($searchconfig, $replaceconfig, $meta_description);
         $meta_keywords = str_replace($searchconfig, $replaceconfig, $meta_keywords);
         $meta_author = str_replace($searchconfig, $replaceconfig, $meta_author);
         $page_name = str_replace($searchconfig, $replaceconfig, $page_name);
         $layout_dir = element('board_layout', $board) ? element('board_layout', $board) : $this->cbconfig->item('layout_board');
         $mobile_layout_dir = element('board_mobile_layout', $board) ? element('board_mobile_layout', $board) : $this->cbconfig->item('mobile_layout_board');
         $use_sidebar = element('board_sidebar', $board) ? element('board_sidebar', $board) : $this->cbconfig->item('sidebar_board');
         $use_mobile_sidebar = element('board_mobile_sidebar', $board) ? element('board_mobile_sidebar', $board) : $this->cbconfig->item('mobile_sidebar_board');
         $skin_dir = element('board_skin', $board) ? element('board_skin', $board) : $this->cbconfig->item('skin_board');
         $mobile_skin_dir = element('board_mobile_skin', $board) ? element('board_mobile_skin', $board) : $this->cbconfig->item('mobile_skin_board');
         $layoutconfig = array('path' => 'board', 'layout' => 'layout', 'skin' => 'write', 'layout_dir' => $layout_dir, 'mobile_layout_dir' => $mobile_layout_dir, 'use_sidebar' => $use_sidebar, 'use_mobile_sidebar' => $use_mobile_sidebar, 'skin_dir' => $skin_dir, 'mobile_skin_dir' => $mobile_skin_dir, 'page_title' => $page_title, 'meta_description' => $meta_description, 'meta_keywords' => $meta_keywords, 'meta_author' => $meta_author, 'page_name' => $page_name);
         $view['layout'] = $this->managelayout->front($layoutconfig, $this->cbconfig->get_device_view_type());
         $this->data = $view;
         $this->layout = element('layout_skin_file', element('layout', $view));
         $this->view = element('view_skin_file', element('layout', $view));
     } else {
         /**
          * 유효성 검사를 통과한 경우입니다.
          * 즉 데이터의 insert 나 update 의 process 처리가 필요한 상황입니다
          */
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formruntrue'] = Events::trigger('formruntrue', $eventname);
         $content_type = $use_dhtml ? 1 : 0;
         if ($origin) {
             $post_num = element('post_num', $origin);
             $post_reply = $reply;
         } else {
             $post_num = $this->Post_model->next_post_num();
             $post_reply = '';
         }
         $metadata = array();
         $post_title = $this->input->post('post_title', null, '');
         $post_content = $this->input->post('post_content', null, '');
         if (element('save_external_image', $board)) {
             $post_content = $this->imagelib->replace_external_image($post_content);
         }
         $updatedata = array('post_num' => $post_num, 'post_reply' => $post_reply, 'post_title' => $post_title, 'post_content' => $post_content, 'post_html' => $content_type, 'post_datetime' => cdate('Y-m-d H:i:s'), 'post_updated_datetime' => cdate('Y-m-d H:i:s'), 'post_ip' => $this->input->ip_address(), 'brd_id' => element('brd_id', $board));
         if ($mem_id) {
             $updatedata['mem_id'] = $mem_id;
             $updatedata['post_userid'] = $this->member->item('mem_userid');
             $updatedata['post_username'] = $this->member->item('mem_username');
             $updatedata['post_nickname'] = $this->member->item('mem_nickname');
             $updatedata['post_email'] = $this->member->item('mem_email');
             $updatedata['post_homepage'] = $this->member->item('mem_homepage');
         }
         if ($is_post_name) {
             $updatedata['post_nickname'] = $this->input->post('post_nickname', null, '');
             $updatedata['post_email'] = $this->input->post('post_email', null, '');
             $updatedata['post_homepage'] = $this->input->post('post_homepage', null, '');
         }
         if ($this->member->is_member() === false && $this->input->post('post_password')) {
             if (!function_exists('password_hash')) {
                 $this->load->helper('password');
             }
             $updatedata['post_password'] = password_hash($this->input->post('post_password'), PASSWORD_BCRYPT);
         }
         if ($can_post_notice) {
             $updatedata['post_notice'] = $this->input->post('post_notice', null, 0);
         }
         if ($can_post_secret) {
             $updatedata['post_secret'] = $this->input->post('post_secret') ? 1 : 0;
         }
         if (element('use_post_secret', $board) === '2') {
             $updatedata['post_secret'] = 1;
         }
         if ($can_post_receive_email) {
             $updatedata['post_receive_email'] = $this->input->post('post_receive_email') ? 1 : 0;
         }
         if (element('use_category', $board)) {
             $updatedata['post_category'] = $this->input->post('post_category', null, '');
         }
         $updatedata['post_device'] = $this->cbconfig->get_device_type() === 'mobile' ? 'mobile' : 'desktop';
         $post_id = $this->Post_model->insert($updatedata);
         if ($can_post_secret && $this->input->post('post_secret')) {
             $this->session->set_userdata('view_secret_' . $post_id, '1');
         }
         if ($mem_id > 0 && element('use_point', $board)) {
             $point = $this->point->insert_point($mem_id, element('point_write', $board), element('board_name', $board) . ' ' . $post_id . ' 게시글 작성', 'post', $post_id, '게시글 작성');
         }
         $extradata = array();
         if ($form && is_array($form)) {
             foreach ($form as $key => $value) {
                 if (!element('use', $value)) {
                     continue;
                 }
                 if (element('func', $value) === 'basic') {
                     continue;
                 }
                 $extradata[element('field_name', $value)] = $this->input->post(element('field_name', $value), null, '');
             }
             $this->Post_extra_vars_model->save($post_id, element('brd_id', $board), $extradata);
         }
         if ($reply && $origin && $this->cbconfig->item('use_notification') && $this->cbconfig->item('notification_reply')) {
             $this->load->library('notificationlib');
             $not_message = $updatedata['post_nickname'] . '님께서 [' . element('post_title', $origin) . '] 에 답변을 남기셨습니다';
             $not_url = post_url(element('brd_key', $board), $post_id);
             $this->notificationlib->set_noti(element('mem_id', $origin), $mem_id, 'reply', $post_id, $not_message, $not_url);
         }
         if (isset($metadata) && $metadata) {
             $this->Post_meta_model->save($post_id, element('brd_id', $board), $metadata);
         }
         $post_link = $this->input->post('post_link');
         if ($post_link && is_array($post_link) && count($post_link) > 0) {
             foreach ($post_link as $pkey => $pval) {
                 if ($pval) {
                     $linkupdate = array('post_id' => $post_id, 'brd_id' => element('brd_id', $board), 'pln_url' => prep_url($pval));
                     $this->Post_link_model->insert($linkupdate);
                 }
             }
             $postupdate = array('post_link_count' => count($post_link));
             $this->Post_model->update($post_id, $postupdate);
         }
         if ($this->member->is_member() && element('use_tempsave', $board)) {
             $this->load->model('Tempsave_model');
             $tempwhere = array('brd_id' => element('brd_id', $board), 'mem_id' => $mem_id);
             $this->Tempsave_model->delete_where($tempwhere);
         }
         $file_updated = false;
         if ($use_upload && $uploadfiledata && is_array($uploadfiledata) && count($uploadfiledata) > 0) {
             foreach ($uploadfiledata as $pkey => $pval) {
                 if ($pval) {
                     $fileupdate = array('post_id' => $post_id, 'brd_id' => element('brd_id', $board), 'mem_id' => $mem_id, 'pfi_originname' => element('pfi_originname', $pval), 'pfi_filename' => element('pfi_filename', $pval), 'pfi_filesize' => element('pfi_filesize', $pval), 'pfi_width' => element('pfi_width', $pval), 'pfi_height' => element('pfi_height', $pval), 'pfi_type' => element('pfi_type', $pval), 'pfi_is_image' => element('is_image', $pval), 'pfi_datetime' => cdate('Y-m-d H:i:s'), 'pfi_ip' => $this->input->ip_address());
                     $file_id = $this->Post_file_model->insert($fileupdate);
                     if (!element('is_image', $pval)) {
                         if (element('use_point', $board)) {
                             $point = $this->point->insert_point($mem_id, element('point_fileupload', $board), element('board_name', $board) . ' ' . $post_id . ' 파일 업로드', 'fileupload', $file_id, '파일 업로드');
                         }
                     }
                     $file_updated = true;
                 }
             }
         }
         $result = $this->Post_file_model->get_post_file_count($post_id);
         $postupdatedata = array();
         if ($result && is_array($result)) {
             foreach ($result as $value) {
                 if (element('pfi_is_image', $value)) {
                     $postupdatedata['post_image'] = element('cnt', $value);
                 } else {
                     $postupdatedata['post_file'] = element('cnt', $value);
                 }
             }
             $this->Post_model->update($post_id, $postupdatedata);
         }
         $emailsendlistadmin = array();
         $notesendlistadmin = array();
         $emailsendlistpostwriter = array();
         $notesendlistpostwriter = array();
         if (element('send_email_post_super_admin', $board) or element('send_note_post_super_admin', $board)) {
             $mselect = 'mem_id, mem_email, mem_nickname, mem_phone';
             $superadminlist = $this->Member_model->get_superadmin_list($mselect);
         }
         if (element('send_email_post_group_admin', $board) or element('send_note_post_group_admin', $board)) {
             $this->load->model('Board_group_admin_model');
             $groupadminlist = $this->Board_group_admin_model->get_board_group_admin_member(element('bgr_id', $board));
         }
         if (element('send_email_post_board_admin', $board) or element('send_note_post_board_admin', $board)) {
             $this->load->model('Board_admin_model');
             $boardadminlist = $this->Board_admin_model->get_board_admin_member(element('brd_id', $board));
         }
         if (element('send_email_post_super_admin', $board) && $superadminlist) {
             foreach ($superadminlist as $key => $value) {
                 $emailsendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_email_post_group_admin', $board) && $groupadminlist) {
             foreach ($groupadminlist as $key => $value) {
                 $emailsendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_email_post_board_admin', $board) && $boardadminlist) {
             foreach ($boardadminlist as $key => $value) {
                 $emailsendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_email_post_writer', $board) && $this->member->item('mem_receive_email')) {
             $emailsendlistpostwriter['mem_email'] = $updatedata['post_email'];
         }
         if (element('send_note_post_super_admin', $board) && $superadminlist) {
             foreach ($superadminlist as $key => $value) {
                 $notesendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_note_post_group_admin', $board) && $groupadminlist) {
             foreach ($groupadminlist as $key => $value) {
                 $notesendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_note_post_board_admin', $board) && $boardadminlist) {
             foreach ($boardadminlist as $key => $value) {
                 $notesendlistadmin[$value['mem_id']] = $value;
             }
         }
         if (element('send_note_post_writer', $board) && $this->member->item('mem_use_note')) {
             $notesendlistpostwriter['mem_id'] = $mem_id;
         }
         $searchconfig = array('{홈페이지명}', '{회사명}', '{홈페이지주소}', '{게시글제목}', '{게시글내용}', '{게시글작성자닉네임}', '{게시글작성자아이디}', '{게시글작성시간}', '{게시글주소}', '{게시판명}', '{게시판주소}');
         $autolink = element('use_auto_url', $board) ? true : false;
         $popup = element('content_target_blank', $board) ? true : false;
         $replaceconfig = array($this->cbconfig->item('site_title'), $this->cbconfig->item('company_name'), site_url(), $post_title, display_html_content($post_content, $content_type, element('post_image_width', $board), $autolink, $popup), $updatedata['post_nickname'], $this->member->item('mem_userid'), cdate('Y-m-d H:i:s'), post_url(element('brd_key', $board), $post_id), element('brd_name', $board), board_url(element('brd_key', $board)));
         $replaceconfig_escape = array(html_escape($this->cbconfig->item('site_title')), html_escape($this->cbconfig->item('company_name')), site_url(), html_escape($post_title), display_html_content($post_content, $content_type, element('post_image_width', $board), $autolink, $popup), html_escape($updatedata['post_nickname']), $this->member->item('mem_userid'), cdate('Y-m-d H:i:s'), post_url(element('brd_key', $board), $post_id), html_escape(element('brd_name', $board)), board_url(element('brd_key', $board)));
         if ($emailsendlistadmin) {
             $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_email_post_admin_title'));
             $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_email_post_admin_content'));
             foreach ($emailsendlistadmin as $akey => $aval) {
                 $this->email->clear(true);
                 $this->email->from($this->cbconfig->item('webmaster_email'), $this->cbconfig->item('webmaster_name'));
                 $this->email->to(element('mem_email', $aval));
                 $this->email->subject($title);
                 $this->email->message($content);
                 $this->email->send();
             }
         }
         if ($emailsendlistpostwriter) {
             $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_email_post_writer_title'));
             $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_email_post_writer_content'));
             $this->email->clear(true);
             $this->email->from($this->cbconfig->item('webmaster_email'), $this->cbconfig->item('webmaster_name'));
             $this->email->to(element('mem_email', $emailsendlistpostwriter));
             $this->email->subject($title);
             $this->email->message($content);
             $this->email->send();
         }
         if ($notesendlistadmin) {
             $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_note_post_admin_title'));
             $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_note_post_admin_content'));
             foreach ($notesendlistadmin as $akey => $aval) {
                 $note_result = $this->notelib->send_note($sender = 0, $receiver = element('mem_id', $aval), $title, $content, 1);
             }
         }
         if ($notesendlistpostwriter && element('mem_id', $notesendlistpostwriter)) {
             $title = str_replace($searchconfig, $replaceconfig, $this->cbconfig->item('send_note_post_writer_title'));
             $content = str_replace($searchconfig, $replaceconfig_escape, $this->cbconfig->item('send_note_post_writer_content'));
             $note_result = $this->notelib->send_note($sender = 0, $receiver = element('mem_id', $notesendlistpostwriter), $title, $content, 1);
         }
         // 네이버 신디케이션 보내기
         if (!element('post_secret', $updatedata)) {
             $this->_naver_syndi($post_id, $board);
         }
         $this->session->set_flashdata('message', '게시물이 정상적으로 입력되었습니다');
         $this->session->set_userdata('lastest_post_time', ctimestamp());
         // 이벤트가 존재하면 실행합니다
         Events::trigger('after', $eventname);
         /**
          * 게시물의 신규입력 또는 수정작업이 끝난 후 뷰 페이지로 이동합니다
          */
         $redirecturl = post_url(element('brd_key', $board), $post_id);
         redirect($redirecturl);
     }
 }