Example #1
0
 /**
  * 기본환경설정>쪽지설정 페이지입니다
  */
 public function note()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_config_cbconfigs_note';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'is_submit', 'label' => '전송', 'rules' => 'trim|required'), array('field' => 'use_note', 'label' => '쪽지기능', 'rules' => 'trim|numeric'), array('field' => 'note_list_page', 'label' => '한페이지에보이는쪽지수', 'rules' => 'trim|required|numeric'), array('field' => 'note_mobile_list_page', 'label' => '한페이지에보이는쪽지수 - 모바일', 'rules' => 'trim|required|numeric'), array('field' => 'use_note_dhtml', 'label' => '쪽지 DHTML 사용', 'rules' => 'trim|numeric'), array('field' => 'use_note_mobile_dhtml', 'label' => '쪽지 DHTML 사용 - 모바일', 'rules' => 'trim|numeric'), array('field' => 'note_editor_type', 'label' => '쪽지 에디터 종류', 'rules' => 'trim|required'), array('field' => 'point_note', 'label' => '쪽지발송시 차감포인트', 'rules' => 'trim|required|numeric'));
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     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);
         $array = array('use_note', 'note_list_page', 'note_mobile_list_page', 'use_note_dhtml', 'use_note_mobile_dhtml', 'note_editor_type', 'point_note');
         foreach ($array as $value) {
             $savedata[$value] = $this->input->post($value, null, '');
         }
         $this->Config_model->save($savedata);
         $view['view']['alert_message'] = '쪽지기능 설정이 저장되었습니다';
     }
     $getdata = $this->Config_model->get_all_meta();
     $view['view']['data'] = $getdata;
     $view['view']['data']['note_editor_type_option'] = get_skin_name('editor', set_value('note_editor_type', element('note_editor_type', $getdata)), '', $path = 'plugin');
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'note');
     $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));
 }
Example #2
0
 /**
  * Preview 페이지입니다
  */
 public function preview($pagetype)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_config_preview_preview';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     $pagename = array('main' => '메인페이지', 'board' => '게시판', 'group' => '게시판그룹', 'document' => '일반문서페이지', 'faq' => 'FAQ', 'register' => '회원가입', 'findaccount' => '아이디패스워드찾기', 'login' => '로그인', 'mypage' => '마이페이지', 'currentvisitor' => '현재접속자', 'search' => '검색페이지', 'note' => '쪽지', 'profile' => '프로필', 'formmail' => '폼메일', 'notification' => '알림페이지', 'helptool' => '헬프툴');
     if (!element($pagetype, $pagename)) {
         alert('잘못된 접근입니다');
     }
     $previewurl = '';
     $pageurl = '';
     $use_sidebar_option = true;
     if ($pagetype === 'main' or $pagetype === 'mypage' or $pagetype === 'currentvisitor' or $pagetype === 'notification' or $pagetype === 'login' or $pagetype === 'findaccount') {
         $pageurl = $pagetype;
     }
     if ($pagetype === 'board') {
         $this->load->model('Post_model');
         $where = array('post_del' => 0);
         $latest = $this->Post_model->get('', '', $where, 1, '', 'post_id', 'desc');
         $val = element(0, $latest);
         if (empty($val)) {
             alert_close('최소 1개 이상의 게시물이 작성된 후에 미리보기가 가능합니다');
         }
         $pageurl = 'board_post/post/' . element('post_id', $val);
     }
     if ($pagetype === 'group') {
         $this->load->model('Board_group_model');
         $val = $this->Board_group_model->get_one();
         if (empty($val)) {
             alert_close('최소 1개 이상의 그룹이 생성된 후에 미리보기가 가능합니다');
         }
         $pageurl = 'group/index/' . element('bgr_key', $val);
     }
     if ($pagetype === 'document') {
         $this->load->model('Document_model');
         $latest = $this->Document_model->get('', '', '', 1, '', 'doc_id', 'desc');
         $val = element(0, $latest);
         if (empty($val)) {
             alert_close('최소 1개 이상의 일반문서가 작성된 후에 미리보기가 가능합니다');
         }
         $pageurl = 'document/index/' . element('doc_key', $val);
     }
     if ($pagetype === 'faq') {
         $this->load->model('Faq_group_model');
         $latest = $this->Faq_group_model->get('', '', '', 1, '', 'fgr_id', 'desc');
         $val = element(0, $latest);
         if (empty($val)) {
             alert_close('최소 1개 이상의 FAQ가 작성된 후에 미리보기가 가능합니다');
         }
         $pageurl = 'faq/index/' . element('fgr_key', $val);
     }
     if ($pagetype === 'search') {
         $pageurl = 'search/?skeyword=검색&';
     }
     if ($pagetype === 'note') {
         $use_sidebar_option = false;
         $this->load->model('Note_model');
         $where = array('recv_mem_id' => $this->member->item('mem_id'), 'nte_type' => 1);
         $latest = $this->Note_model->get('', '', $where, 1, '', 'nte_id', 'desc');
         $val = element(0, $latest);
         if (empty($val)) {
             alert_close('최소 1개 이상의 쪽지를 수신한 후에 미리보기가 가능합니다');
         }
         $pageurl = 'note/view/recv/' . element('nte_id', $val);
     }
     if ($pagetype === 'profile') {
         $use_sidebar_option = false;
         $pageurl = 'profile/index/' . $this->member->item('mem_userid');
     }
     if ($pagetype === 'formmail') {
         $use_sidebar_option = false;
         $pageurl = 'formmail/write/' . $this->member->item('mem_userid');
     }
     if ($pagetype === 'helptool') {
         $use_sidebar_option = false;
         $pageurl = 'helptool/emoticon';
     }
     if ($pagetype === 'register') {
         $pageurl = 'register/form';
     }
     $previewurl = admin_url('preview/adminshow/' . $pageurl);
     $previewurl .= '?layout=' . $this->input->get('layout', null, '') . '&sidebar=' . $this->input->get('sidebar', null, '') . '&skin=' . $this->input->get('skin', null, '') . '&is_mobile=' . $this->input->get('is_mobile', null, '');
     $view['view']['pagetype'] = $pagetype;
     $view['view']['previewurl'] = $previewurl;
     $view['view']['use_sidebar_option'] = $use_sidebar_option;
     $view['view']['pagename'] = element($pagetype, $pagename);
     $view['view']['layout_option'] = get_skin_name('_layout', $this->input->get('layout', null, ''), '기본설정따름');
     $view['view']['skin_option'] = get_skin_name($pagetype, $this->input->get('skin', null, ''), '기본설정따름');
     $view['view']['mobile_layout_option'] = get_skin_name('_layout', $this->input->get('mobile_layout', null, ''), '기본설정따름');
     $view['view']['mobile_skin_option'] = get_skin_name($pagetype, $this->input->get('mobile_skin', null, ''), '기본설정따름');
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout_popup', '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));
 }
Example #3
0
 /**
  * 게시판 글쓰기 또는 수정 페이지를 가져오는 메소드입니다
  */
 public function write($pid = 0)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_page_document_write';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * 프라이머리키에 숫자형이 입력되지 않으면 에러처리합니다
      */
     if ($pid) {
         $pid = (int) $pid;
         if (empty($pid) or $pid < 1) {
             show_404();
         }
     }
     $primary_key = $this->{$this->modelname}->primary_key;
     /**
      * 수정 페이지일 경우 기존 데이터를 가져옵니다
      */
     $getdata = array();
     if ($pid) {
         $getdata = $this->{$this->modelname}->get_one($pid);
     }
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'doc_title', 'label' => '제목', 'rules' => 'trim|required'), array('field' => 'doc_content', 'label' => '내용', 'rules' => 'trim|required'), array('field' => 'doc_mobile_content', 'label' => '모바일내용', 'rules' => 'trim'), array('field' => 'doc_layout', 'label' => '레이아웃', 'rules' => 'trim'), array('field' => 'doc_sidebar', 'label' => '사이드바', 'rules' => 'trim'), array('field' => 'doc_skin', 'label' => '스킨', 'rules' => 'trim'), array('field' => 'doc_mobile_layout', 'label' => '모바일레이아웃', 'rules' => 'trim'), array('field' => 'doc_mobile_sidebar', 'label' => '모바일사이드바', 'rules' => 'trim'), array('field' => 'doc_mobile_skin', 'label' => '모바일스킨', 'rules' => 'trim'));
     if ($this->input->post($primary_key)) {
         $config[] = array('field' => 'doc_key', 'label' => '페이지주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[document.doc_key.doc_id.' . $getdata['doc_id'] . ']');
     } else {
         $config[] = array('field' => 'doc_key', 'label' => '페이지주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[document.doc_key]');
     }
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     if ($this->form_validation->run() === false) {
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formrunfalse'] = Events::trigger('formrunfalse', $eventname);
         $view['view']['data'] = $getdata;
         $view['view']['data']['doc_layout_option'] = get_skin_name('_layout', set_value('doc_layout', element('doc_layout', $getdata)), '기본설정따름');
         $view['view']['data']['doc_mobile_layout_option'] = get_skin_name('_layout', set_value('doc_mobile_layout', element('doc_mobile_layout', $getdata)), '기본설정따름');
         $view['view']['data']['doc_skin_option'] = get_skin_name('document', set_value('doc_skin', element('doc_skin', $getdata)), '기본설정따름');
         $view['view']['data']['doc_mobile_skin_option'] = get_skin_name('document', set_value('doc_mobile_skin', element('doc_mobile_skin', $getdata)), '기본설정따름');
         /**
          * primary key 정보를 저장합니다
          */
         $view['view']['primary_key'] = $primary_key;
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
         /**
          * 어드민 레이아웃을 정의합니다
          */
         $layoutconfig = array('layout' => 'layout', 'skin' => 'write');
         $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));
     } else {
         /**
          * 유효성 검사를 통과한 경우입니다.
          * 즉 데이터의 insert 나 update 의 process 처리가 필요한 상황입니다
          */
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formruntrue'] = Events::trigger('formruntrue', $eventname);
         $content_type = $this->cbconfig->item('use_document_dhtml') ? 1 : 0;
         $doc_sidebar = $this->input->post('doc_sidebar') ? $this->input->post('doc_sidebar') : 0;
         $doc_mobile_sidebar = $this->input->post('doc_mobile_sidebar') ? $this->input->post('doc_mobile_sidebar') : 0;
         $updatedata = array('doc_key' => $this->input->post('doc_key', null, ''), 'doc_title' => $this->input->post('doc_title', null, ''), 'doc_content' => $this->input->post('doc_content', null, ''), 'doc_mobile_content' => $this->input->post('doc_mobile_content', null, ''), 'doc_content_html_type' => $content_type, 'doc_layout' => $this->input->post('doc_layout', null, ''), 'doc_mobile_layout' => $this->input->post('doc_mobile_layout', null, ''), 'doc_sidebar' => $doc_sidebar, 'doc_mobile_sidebar' => $doc_mobile_sidebar, 'doc_skin' => $this->input->post('doc_skin', null, ''), 'doc_mobile_skin' => $this->input->post('doc_mobile_skin', null, ''), 'doc_updated_mem_id' => $this->member->item('mem_id'), 'doc_updated_datetime' => cdate('Y-m-d H:i:s'));
         /**
          * 게시물을 수정하는 경우입니다
          */
         if ($this->input->post($primary_key)) {
             $this->{$this->modelname}->update($this->input->post($primary_key), $updatedata);
             $this->session->set_flashdata('message', '정상적으로 수정되었습니다');
         } else {
             /**
              * 게시물을 새로 입력하는 경우입니다
              */
             $updatedata['doc_datetime'] = cdate('Y-m-d H:i:s');
             $updatedata['mem_id'] = $this->member->item('mem_id');
             $this->{$this->modelname}->insert($updatedata);
             $this->session->set_flashdata('message', '정상적으로 입력되었습니다');
         }
         $list = $this->{$this->modelname}->get('', 'doc_id, doc_key');
         $cachedata = '';
         if ($list && is_array($list)) {
             foreach ($list as $key => $val) {
                 $cachedata[$val['doc_key']] = element('doc_id', $val);
             }
         }
         $this->cache->save('document-key-id-info', $cachedata, 86400 * 365);
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['after'] = Events::trigger('after', $eventname);
         /**
          * 게시물의 신규입력 또는 수정작업이 끝난 후 목록 페이지로 이동합니다
          */
         $param =& $this->querystring;
         $redirecturl = admin_url($this->pagedir . '?' . $param->output());
         redirect($redirecturl);
     }
 }
Example #4
0
 /**
  * 게시판 글쓰기 또는 수정 페이지를 가져오는 메소드입니다
  */
 public function write($pid = 0)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_board_boardgroup_write';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * 프라이머리키에 숫자형이 입력되지 않으면 에러처리합니다
      */
     if ($pid) {
         $pid = (int) $pid;
         if (empty($pid) or $pid < 1) {
             show_404();
         }
     }
     $primary_key = $this->{$this->modelname}->primary_key;
     /**
      * 수정 페이지일 경우 기존 데이터를 가져옵니다
      */
     if ($pid) {
         $getdata = $this->{$this->modelname}->get_one($pid);
         $board_group_meta = $this->Board_group_meta_model->get_all_meta($getdata['bgr_id']);
         if (is_array($board_group_meta)) {
             $getdata = array_merge($getdata, $board_group_meta);
         }
     }
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'bgr_name', 'label' => '그룹명', 'rules' => 'trim|required'), array('field' => 'bgr_order', 'label' => '그룹정렬순서', 'rules' => 'trim|required|numeric|is_natural'), array('field' => 'group_layout', 'label' => '레이아웃', 'rules' => 'trim'), array('field' => 'group_mobile_layout', 'label' => '모바일레이아웃', 'rules' => 'trim'), array('field' => 'group_sidebar', 'label' => '사이드바', 'rules' => 'trim'), array('field' => 'group_mobile_sidebar', 'label' => '모바일사이드바', 'rules' => 'trim'), array('field' => 'group_skin', 'label' => '스킨', 'rules' => 'trim'), array('field' => 'group_mobile_skin', 'label' => '모바일스킨', 'rules' => 'trim'), array('field' => 'header_content', 'label' => '상단내용', 'rules' => 'trim'), array('field' => 'footer_content', 'label' => '하단내용', 'rules' => 'trim'), array('field' => 'mobile_header_content', 'label' => '모바일상단내용', 'rules' => 'trim'), array('field' => 'mobile_footer_content', 'label' => '모바일하단내용', 'rules' => 'trim'));
     if ($this->input->post($primary_key)) {
         $config[] = array('field' => 'bgr_key', 'label' => '페이지주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[board_group.bgr_key.bgr_id.' . $getdata['bgr_id'] . ']');
     } else {
         $config[] = array('field' => 'bgr_key', 'label' => '페이지주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[board_group.bgr_key]');
     }
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     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);
         $bgr_order = $this->input->post('bgr_order') ? $this->input->post('bgr_order') : 0;
         $updatedata = array('bgr_key' => $this->input->post('bgr_key', null, ''), 'bgr_name' => $this->input->post('bgr_name', null, ''), 'bgr_order' => $bgr_order);
         $array = array('group_layout', 'group_mobile_layout', 'group_sidebar', 'group_mobile_sidebar', 'group_skin', 'group_mobile_skin', 'header_content', 'footer_content', 'mobile_header_content', 'mobile_footer_content');
         $metadata = array();
         if ($array) {
             foreach ($array as $value) {
                 $metadata[$value] = $this->input->post($value, null, '');
             }
         }
         /**
          * 게시물을 수정하는 경우입니다
          */
         if ($this->input->post($primary_key)) {
             $this->{$this->modelname}->update($this->input->post($primary_key), $updatedata);
             $this->Board_group_meta_model->save($pid, $metadata);
             $view['view']['alert_message'] = '기본정보 설정이 저장되었습니다';
         } else {
             /**
              * 게시물을 새로 입력하는 경우입니다
              */
             $pid = $this->{$this->modelname}->insert($updatedata);
             $this->Board_group_meta_model->save($pid, $metadata);
             $this->session->set_flashdata('message', '기본정보 설정이 저장되었습니다');
             $redirecturl = admin_url($this->pagedir . '/write/' . $pid);
             redirect($redirecturl);
         }
     }
     $getdata = array();
     if ($pid) {
         $getdata = $this->{$this->modelname}->get_one($pid);
         $board_group_meta = $this->Board_group_meta_model->get_all_meta($getdata['bgr_id']);
         if (is_array($board_group_meta)) {
             $getdata = array_merge($getdata, $board_group_meta);
         }
     }
     $view['view']['data'] = $getdata;
     $view['view']['data']['group_layout_option'] = get_skin_name('_layout', set_value('group_layout', element('group_layout', $getdata)), '기본설정따름');
     $view['view']['data']['group_mobile_layout_option'] = get_skin_name('_layout', set_value('group_mobile_layout', element('group_mobile_layout', $getdata)), '기본설정따름');
     $view['view']['data']['group_skin_option'] = get_skin_name('group', set_value('group_skin', element('group_skin', $getdata)), '기본설정따름');
     $view['view']['data']['group_mobile_skin_option'] = get_skin_name('group', set_value('group_mobile_skin', element('group_mobile_skin', $getdata)), '기본설정따름');
     /**
      * primary key 정보를 저장합니다
      */
     $view['view']['primary_key'] = $primary_key;
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'write');
     $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));
 }
Example #5
0
 /**
  * 게시판 글쓰기 또는 수정 페이지를 가져오는 메소드입니다
  */
 public function write($pid = 0)
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_board_boards_write';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * 프라이머리키에 숫자형이 입력되지 않으면 에러처리합니다
      */
     if ($pid) {
         $pid = (int) $pid;
         if (empty($pid) or $pid < 1) {
             show_404();
         }
     }
     $primary_key = $this->{$this->modelname}->primary_key;
     /**
      * 수정 페이지일 경우 기존 데이터를 가져옵니다
      */
     $getdata = array();
     if ($pid) {
         $getdata = $this->{$this->modelname}->get_one($pid);
         $board_meta = $this->Board_meta_model->get_all_meta(element('brd_id', $getdata));
         if (is_array($board_meta)) {
             $getdata = array_merge($getdata, $board_meta);
         }
     } else {
         // 기본값 설정
         $getdata['brd_search'] = 1;
     }
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'is_submit', 'label' => '전송', 'rules' => 'trim|numeric'), array('field' => 'brd_name', 'label' => '게시판이름', 'rules' => 'trim|required'), array('field' => 'brd_mobile_name', 'label' => '게시판모바일이름', 'rules' => 'trim'), array('field' => 'bgr_id', 'label' => '그룹명', 'rules' => 'trim|required|numeric'), array('field' => 'board_layout', 'label' => '레이아웃', 'rules' => 'trim'), array('field' => 'board_mobile_layout', 'label' => '모바일레이아웃', 'rules' => 'trim'), array('field' => 'board_sidebar', 'label' => '사이드바', 'rules' => 'trim'), array('field' => 'board_mobile_sidebar', 'label' => '모바일사이드바', 'rules' => 'trim'), array('field' => 'board_skin', 'label' => '스킨', 'rules' => 'trim'), array('field' => 'board_mobile_skin', 'label' => '모바일스킨', 'rules' => 'trim'), array('field' => 'header_content', 'label' => '상단내용', 'rules' => 'trim'), array('field' => 'footer_content', 'label' => '하단내용', 'rules' => 'trim'), array('field' => 'mobile_header_content', 'label' => '모바일상단내용', 'rules' => 'trim'), array('field' => 'mobile_footer_content', 'label' => '모바일하단내용', 'rules' => 'trim'), array('field' => 'brd_order', 'label' => '정렬순서', 'rules' => 'trim|required|numeric|is_natural|less_than_equal_to[10000]'), array('field' => 'brd_search', 'label' => '검색여부', 'rules' => 'trim|numeric'));
     if ($this->input->post($primary_key)) {
         $config[] = array('field' => 'brd_key', 'label' => '게시판주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[board.brd_key.brd_id.' . element('brd_id', $getdata) . ']');
     } else {
         $config[] = array('field' => 'brd_key', 'label' => '게시판주소', 'rules' => 'trim|required|alpha_dash|min_length[3]|max_length[50]|is_unique[board.brd_key]');
     }
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     if ($this->form_validation->run() === false) {
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formrunfalse'] = Events::trigger('formrunfalse', $eventname);
         $group_cnt = $this->Board_group_model->count_by();
         if ($group_cnt === 0) {
             alert('최소 1개 그룹이 생성되어야 합니다. 그룹관리 페이지로 이동합니다', admin_url('board/boardgroup'));
         }
     } else {
         /**
          * 유효성 검사를 통과한 경우입니다.
          * 즉 데이터의 insert 나 update 의 process 처리가 필요한 상황입니다
          */
         // 이벤트가 존재하면 실행합니다
         $view['view']['event']['formruntrue'] = Events::trigger('formruntrue', $eventname);
         $brd_order = $this->input->post('brd_order') ? $this->input->post('brd_order') : 0;
         $brd_search = $this->input->post('brd_search') ? $this->input->post('brd_search') : 0;
         $updatedata = array('bgr_id' => $this->input->post('bgr_id', null, ''), 'brd_key' => $this->input->post('brd_key', null, ''), 'brd_name' => $this->input->post('brd_name', null, ''), 'brd_mobile_name' => $this->input->post('brd_mobile_name', null, ''), 'brd_order' => $brd_order, 'brd_search' => $brd_search);
         $array = array('board_layout', 'board_mobile_layout', 'board_sidebar', 'board_mobile_sidebar', 'board_skin', 'board_mobile_skin', 'header_content', 'footer_content', 'mobile_header_content', 'mobile_footer_content');
         $metadata = array();
         $groupdata = array();
         $alldata = array();
         $grp = $this->input->post('grp');
         $all = $this->input->post('all');
         foreach ($array as $value) {
             $metadata[$value] = $this->input->post($value, null, '');
             if (element($value, $grp)) {
                 $groupdata[$value] = $this->input->post($value, null, '');
             }
             if (element($value, $all)) {
                 $alldata[$value] = $this->input->post($value, null, '');
             }
         }
         /**
          * 게시물을 수정하는 경우입니다
          */
         if ($this->input->post($primary_key)) {
             $this->{$this->modelname}->update($this->input->post($primary_key), $updatedata);
             $this->Board_meta_model->save($pid, $metadata);
             $getdata = $this->{$this->modelname}->get_one($pid);
             if ($groupdata) {
                 $where = array('bgr_id' => $getdata['bgr_id']);
                 $res = $this->Board_model->get_board_list($where);
                 foreach ($res as $bkey => $bval) {
                     if ($bval['brd_id'] === $getdata['brd_id']) {
                         continue;
                     }
                     $this->Board_meta_model->save($bval['brd_id'], $groupdata);
                 }
             }
             if ($alldata) {
                 $res = $this->Board_model->get_board_list();
                 foreach ($res as $bkey => $bval) {
                     if ($bval['brd_id'] === $getdata['brd_id']) {
                         continue;
                     }
                     $this->Board_meta_model->save($bval['brd_id'], $alldata);
                 }
             }
             $view['view']['alert_message'] = '기본정보 설정이 저장되었습니다';
         } else {
             /**
              * 게시물을 새로 입력하는 경우입니다
              * 기본값 설정입니다
              */
             $upload_max_filesize = ini_get('upload_max_filesize');
             if (!preg_match("/([m|M])\$/", $upload_max_filesize)) {
                 $upload_max_filesize = (int) ($upload_max_filesize / 1048576);
             } else {
                 $array = array('m', 'M');
                 $upload_max_filesize = str_replace($array, '', $upload_max_filesize);
             }
             $metadata['order_by_field'] = 'post_num, post_reply';
             $metadata['list_count'] = 20;
             $metadata['mobile_list_count'] = 10;
             $metadata['page_count'] = 5;
             $metadata['mobile_page_count'] = 3;
             $metadata['show_list_from_view'] = 1;
             $metadata['new_icon_hour'] = 24;
             $metadata['hot_icon_hit'] = 100;
             $metadata['hot_icon_day'] = 30;
             $metadata['subject_length'] = 60;
             $metadata['mobile_subject_length'] = 40;
             $metadata['reply_order'] = 'asc';
             $metadata['gallery_cols'] = 4;
             $metadata['gallery_image_width'] = 120;
             $metadata['gallery_image_height'] = 80;
             $metadata['mobile_gallery_cols'] = 2;
             $metadata['mobile_gallery_image_width'] = 120;
             $metadata['mobile_gallery_image_height'] = 80;
             $metadata['use_scrap'] = 1;
             $metadata['use_post_like'] = 1;
             $metadata['use_post_dislike'] = 1;
             $metadata['use_print'] = 1;
             $metadata['use_sns'] = 1;
             $metadata['use_prev_next_post'] = 1;
             $metadata['use_mobile_prev_next_post'] = 1;
             $metadata['use_blame'] = 1;
             $metadata['blame_blind_count'] = 3;
             $metadata['syntax_highlighter'] = 1;
             $metadata['comment_syntax_highlighter'] = 1;
             $metadata['use_autoplay'] = 1;
             $metadata['post_image_width'] = 600;
             $metadata['post_mobile_image_width'] = 400;
             $metadata['content_target_blank'] = 1;
             $metadata['use_auto_url'] = 1;
             $metadata['use_mobile_auto_url'] = 1;
             $metadata['use_post_dhtml'] = 1;
             $metadata['link_num'] = 2;
             $metadata['use_upload_file'] = 1;
             $metadata['upload_file_num'] = 2;
             $metadata['mobile_upload_file_num'] = 2;
             $metadata['upload_file_max_size'] = $upload_max_filesize;
             $metadata['comment_count'] = 20;
             $metadata['mobile_comment_count'] = 20;
             $metadata['comment_page_count'] = 5;
             $metadata['mobile_comment_page_count'] = 3;
             $metadata['use_comment_like'] = 1;
             $metadata['use_comment_dislike'] = 1;
             $metadata['use_comment_secret'] = 1;
             $metadata['comment_order'] = 'asc';
             $metadata['use_comment_blame'] = 1;
             $metadata['comment_blame_blind_count'] = 3;
             $metadata['protect_comment_num'] = 5;
             $metadata['use_sideview'] = 1;
             $metadata['use_tempsave'] = 1;
             $pid = $this->{$this->modelname}->insert($updatedata);
             $this->Board_meta_model->save($pid, $metadata);
             $getdata = $this->{$this->modelname}->get_one($pid);
             if ($groupdata) {
                 $where = array('bgr_id' => $getdata['bgr_id']);
                 $res = $this->Board_model->get_board_list($where);
                 foreach ($res as $bkey => $bval) {
                     if ($bval['brd_id'] === $getdata['brd_id']) {
                         continue;
                     }
                     $this->Board_meta_model->save($bval['brd_id'], $groupdata);
                 }
             }
             if ($alldata) {
                 $res = $this->Board_model->get_board_list();
                 foreach ($res as $bkey => $bval) {
                     if ($bval['brd_id'] === $getdata['brd_id']) {
                         continue;
                     }
                     $this->Board_meta_model->save($bval['brd_id'], $alldata);
                 }
             }
             $this->session->set_flashdata('message', '기본정보 설정이 저장되었습니다');
             $redirecturl = admin_url($this->pagedir . '/write/' . $pid);
             redirect($redirecturl);
         }
     }
     $getdata = array();
     if ($pid) {
         $getdata = $this->{$this->modelname}->get_one($pid);
         $board_meta = $this->Board_meta_model->get_all_meta(element('brd_id', $getdata));
         if (is_array($board_meta)) {
             $getdata = array_merge($getdata, $board_meta);
         }
     } else {
         // 기본값 설정
         $getdata['brd_search'] = 1;
     }
     $view['view']['data'] = $getdata;
     $view['view']['data']['group_option'] = $this->{$this->modelname}->get_group_select(set_value('bgr_id', element('bgr_id', $getdata)));
     $view['view']['data']['board_layout_option'] = get_skin_name('_layout', set_value('board_layout', element('board_layout', $getdata)), '기본설정따름');
     $view['view']['data']['board_mobile_layout_option'] = get_skin_name('_layout', set_value('board_mobile_layout', element('board_mobile_layout', $getdata)), '기본설정따름');
     $view['view']['data']['board_skin_option'] = get_skin_name('board', set_value('board_skin', element('board_skin', $getdata)), '기본설정따름');
     $view['view']['data']['board_mobile_skin_option'] = get_skin_name('board', set_value('board_mobile_skin', element('board_mobile_skin', $getdata)), '기본설정따름');
     /**
      * primary key 정보를 저장합니다
      */
     $view['view']['primary_key'] = $primary_key;
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before_layout'] = Events::trigger('before_layout', $eventname);
     /**
      * 어드민 레이아웃을 정의합니다
      */
     $layoutconfig = array('layout' => 'layout', 'skin' => 'write');
     $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));
 }
Example #6
0
 /**
  * 환경설정>레이아웃설정 페이지입니다
  */
 public function index()
 {
     // 이벤트 라이브러리를 로딩합니다
     $eventname = 'event_admin_config_layoutskin_index';
     $this->load->event($eventname);
     $view = array();
     $view['view'] = array();
     // 이벤트가 존재하면 실행합니다
     $view['view']['event']['before'] = Events::trigger('before', $eventname);
     /**
      * Validation 라이브러리를 가져옵니다
      */
     $this->load->library('form_validation');
     /**
      * 전송된 데이터의 유효성을 체크합니다
      */
     $config = array(array('field' => 'is_submit', 'label' => '전송', 'rules' => 'trim|numeric'), array('field' => 'layout_default', 'label' => '기본레이아웃', 'rules' => 'trim|required'), array('field' => 'sidebar_default', 'label' => '기본사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_default', 'label' => '기본모바일레이아웃', 'rules' => 'trim|required'), array('field' => 'mobile_sidebar_default', 'label' => '기본모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_default', 'label' => '기본일반스킨', 'rules' => 'trim|required'), array('field' => 'mobile_skin_default', 'label' => '기본모바일스킨', 'rules' => 'trim|required'), array('field' => 'layout_main', 'label' => '메인페이지레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_main', 'label' => '메인페이지사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_main', 'label' => '메인페이지모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_main', 'label' => '메인페이지모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_main', 'label' => '메인페이지일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_main', 'label' => '메인페이지모바일스킨', 'rules' => 'trim'), array('field' => 'layout_board', 'label' => '게시판레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_board', 'label' => '게시판사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_board', 'label' => '게시판모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_board', 'label' => '게시판모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_board', 'label' => '게시판일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_board', 'label' => '게시판모바일스킨', 'rules' => 'trim'), array('field' => 'layout_group', 'label' => '게시판그룹레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_group', 'label' => '게시판그룹사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_group', 'label' => '게시판그룹모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_group', 'label' => '게시판그룹모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_group', 'label' => '게시판그룹일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_group', 'label' => '게시판그룹모바일스킨', 'rules' => 'trim'), array('field' => 'layout_document', 'label' => '일반문서레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_document', 'label' => '일반문서사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_document', 'label' => '일반문서모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_document', 'label' => '일반문서모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_document', 'label' => '일반문서일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_document', 'label' => '일반문서모바일스킨', 'rules' => 'trim'), array('field' => 'layout_faq', 'label' => 'FAQ레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_faq', 'label' => 'FAQ사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_faq', 'label' => 'FAQ모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_faq', 'label' => 'FAQ모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_faq', 'label' => 'FAQ일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_faq', 'label' => 'FAQ모바일스킨', 'rules' => 'trim'), array('field' => 'layout_register', 'label' => '회원가입레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_register', 'label' => '회원가입사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_register', 'label' => '회원가입모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_register', 'label' => '회원가입모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_register', 'label' => '회원가입일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_register', 'label' => '회원가입모바일스킨', 'rules' => 'trim'), array('field' => 'layout_findaccount', 'label' => '아이디패스워드찾기레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_findaccount', 'label' => '아이디패스워드찾기사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_findaccount', 'label' => '아이디패스워드찾기모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_findaccount', 'label' => '아이디패스워드찾기모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_findaccount', 'label' => '아이디패스워드찾기일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_findaccount', 'label' => '아이디패스워드찾기모바일스킨', 'rules' => 'trim'), array('field' => 'layout_login', 'label' => '로그인레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_login', 'label' => '로그인사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_login', 'label' => '로그인모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_login', 'label' => '로그인모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_login', 'label' => '로그인일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_login', 'label' => '로그인모바일스킨', 'rules' => 'trim'), array('field' => 'layout_mypage', 'label' => '마이페이지레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_mypage', 'label' => '마이페이지사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_mypage', 'label' => '마이페이지모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_mypage', 'label' => '마이페이지모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_mypage', 'label' => '마이페이지일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_mypage', 'label' => '마이페이지모바일스킨', 'rules' => 'trim'), array('field' => 'layout_currentvisitor', 'label' => '현재접속자레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_currentvisitor', 'label' => '현재접속자사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_currentvisitor', 'label' => '현재접속자모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_currentvisitor', 'label' => '현재접속자모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_currentvisitor', 'label' => '현재접속자일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_currentvisitor', 'label' => '현재접속자모바일스킨', 'rules' => 'trim'), array('field' => 'layout_search', 'label' => '검색페이지레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_search', 'label' => '검색페이지사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_search', 'label' => '검색페이지모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_search', 'label' => '검색페이지모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_search', 'label' => '검색페이지일반스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_search', 'label' => '검색페이지모바일스킨', 'rules' => 'trim'), array('field' => 'layout_note', 'label' => '쪽지레이아웃', 'rules' => 'trim'), array('field' => 'mobile_layout_note', 'label' => '쪽지모바일레이아웃', 'rules' => 'trim'), array('field' => 'skin_note', 'label' => '쪽지스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_note', 'label' => '쪽지모바일스킨', 'rules' => 'trim'), array('field' => 'layout_profile', 'label' => '프로필레이아웃', 'rules' => 'trim'), array('field' => 'mobile_layout_profile', 'label' => '프로필모바일레이아웃', 'rules' => 'trim'), array('field' => 'skin_profile', 'label' => '프로필스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_profile', 'label' => '프로필모바일스킨', 'rules' => 'trim'), array('field' => 'layout_formmail', 'label' => '폼메일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_layout_formmail', 'label' => '폼메일모바일레이아웃', 'rules' => 'trim'), array('field' => 'skin_formmail', 'label' => '폼메일스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_formmail', 'label' => '폼메일모바일스킨', 'rules' => 'trim'), array('field' => 'layout_notification', 'label' => '알림레이아웃', 'rules' => 'trim'), array('field' => 'sidebar_notification', 'label' => '알림사이드바', 'rules' => 'trim'), array('field' => 'mobile_layout_notification', 'label' => '알림모바일레이아웃', 'rules' => 'trim'), array('field' => 'mobile_sidebar_notification', 'label' => '알림모바일사이드바', 'rules' => 'trim'), array('field' => 'skin_notification', 'label' => '알림스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_notification', 'label' => '알림모바일스킨', 'rules' => 'trim'), array('field' => 'layout_helptool', 'label' => '헬프툴레이아웃', 'rules' => 'trim'), array('field' => 'mobile_layout_helptool', 'label' => '헬프툴모바일레이아웃', 'rules' => 'trim'), array('field' => 'skin_helptool', 'label' => '헬프툴스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_helptool', 'label' => '헬프툴모바일스킨', 'rules' => 'trim'), array('field' => 'skin_popup', 'label' => '팝업스킨', 'rules' => 'trim'), array('field' => 'mobile_skin_popup', 'label' => '팝업모바일스킨', 'rules' => 'trim'));
     $this->form_validation->set_rules($config);
     /**
      * 유효성 검사를 하지 않는 경우, 또는 유효성 검사에 실패한 경우입니다.
      * 즉 글쓰기나 수정 페이지를 보고 있는 경우입니다
      */
     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);
         $array = array('layout_default', 'mobile_layout_default', 'sidebar_default', 'mobile_sidebar_default', 'skin_default', 'mobile_skin_default', 'layout_main', 'mobile_layout_main', 'sidebar_main', 'mobile_sidebar_main', 'skin_main', 'mobile_skin_main', 'layout_board', 'mobile_layout_board', 'sidebar_board', 'mobile_sidebar_board', 'skin_board', 'mobile_skin_board', 'layout_group', 'mobile_layout_group', 'sidebar_group', 'mobile_sidebar_group', 'skin_group', 'mobile_skin_group', 'layout_document', 'mobile_layout_document', 'sidebar_document', 'mobile_sidebar_document', 'skin_document', 'mobile_skin_document', 'layout_faq', 'mobile_layout_faq', 'sidebar_faq', 'mobile_sidebar_faq', 'skin_faq', 'mobile_skin_faq', 'layout_register', 'mobile_layout_register', 'sidebar_register', 'mobile_sidebar_register', 'skin_register', 'mobile_skin_register', 'layout_findaccount', 'mobile_layout_findaccount', 'sidebar_findaccount', 'mobile_sidebar_findaccount', 'skin_findaccount', 'mobile_skin_findaccount', 'layout_login', 'mobile_layout_login', 'sidebar_login', 'mobile_sidebar_login', 'skin_login', 'mobile_skin_login', 'layout_mypage', 'mobile_layout_mypage', 'sidebar_mypage', 'mobile_sidebar_mypage', 'skin_mypage', 'mobile_skin_mypage', 'layout_currentvisitor', 'mobile_layout_currentvisitor', 'sidebar_currentvisitor', 'mobile_sidebar_currentvisitor', 'skin_currentvisitor', 'mobile_skin_currentvisitor', 'layout_search', 'mobile_layout_search', 'sidebar_search', 'mobile_sidebar_search', 'skin_search', 'mobile_skin_search', 'layout_note', 'mobile_layout_note', 'skin_note', 'mobile_skin_note', 'layout_profile', 'mobile_layout_profile', 'skin_profile', 'mobile_skin_profile', 'layout_formmail', 'mobile_layout_formmail', 'skin_formmail', 'mobile_skin_formmail', 'layout_notification', 'mobile_layout_notification', 'sidebar_notification', 'mobile_sidebar_notification', 'skin_notification', 'mobile_skin_notification', 'layout_helptool', 'mobile_layout_helptool', 'skin_helptool', 'mobile_skin_helptool', 'skin_popup', 'mobile_skin_popup');
         foreach ($array as $value) {
             $savedata[$value] = $this->input->post($value, null, '');
         }
         $this->Config_model->save($savedata);
         $view['view']['alert_message'] = '디자인 설정이 저장되었습니다';
     }
     $getdata = $this->Config_model->get_all_meta();
     $view['view']['data'] = $getdata;
     $view['view']['data']['layout_default_option'] = get_skin_name('_layout', set_value('layout_default', element('layout_default', $getdata)));
     $view['view']['data']['mobile_layout_default_option'] = get_skin_name('_layout', set_value('mobile_layout_default', element('mobile_layout_default', $getdata)));
     $view['view']['data']['skin_default_option'] = get_skin_name('main', set_value('skin_default', element('skin_default', $getdata)));
     $view['view']['data']['mobile_skin_default_option'] = get_skin_name('main', set_value('mobile_skin_default', element('mobile_skin_default', $getdata)));
     $view['view']['data']['layout_main_option'] = get_skin_name('_layout', set_value('layout_main', element('layout_main', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_main_option'] = get_skin_name('_layout', set_value('mobile_layout_main', element('mobile_layout_main', $getdata)), '기본설정따름');
     $view['view']['data']['skin_main_option'] = get_skin_name('main', set_value('skin_main', element('skin_main', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_main_option'] = get_skin_name('main', set_value('mobile_skin_main', element('mobile_skin_main', $getdata)), '기본설정따름');
     $view['view']['data']['layout_board_option'] = get_skin_name('_layout', set_value('layout_board', element('layout_board', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_board_option'] = get_skin_name('_layout', set_value('mobile_layout_board', element('mobile_layout_board', $getdata)), '기본설정따름');
     $view['view']['data']['skin_board_option'] = get_skin_name('board', set_value('skin_board', element('skin_board', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_board_option'] = get_skin_name('board', set_value('mobile_skin_board', element('mobile_skin_board', $getdata)), '기본설정따름');
     $view['view']['data']['layout_group_option'] = get_skin_name('_layout', set_value('layout_group', element('layout_group', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_group_option'] = get_skin_name('_layout', set_value('mobile_layout_group', element('mobile_layout_group', $getdata)), '기본설정따름');
     $view['view']['data']['skin_group_option'] = get_skin_name('group', set_value('skin_group', element('skin_group', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_group_option'] = get_skin_name('group', set_value('mobile_skin_group', element('mobile_skin_group', $getdata)), '기본설정따름');
     $view['view']['data']['layout_document_option'] = get_skin_name('_layout', set_value('layout_document', element('layout_document', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_document_option'] = get_skin_name('_layout', set_value('mobile_layout_document', element('mobile_layout_document', $getdata)), '기본설정따름');
     $view['view']['data']['skin_document_option'] = get_skin_name('document', set_value('skin_document', element('skin_document', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_document_option'] = get_skin_name('document', set_value('mobile_skin_document', element('mobile_skin_document', $getdata)), '기본설정따름');
     $view['view']['data']['layout_faq_option'] = get_skin_name('_layout', set_value('layout_faq', element('layout_faq', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_faq_option'] = get_skin_name('_layout', set_value('mobile_layout_faq', element('mobile_layout_faq', $getdata)), '기본설정따름');
     $view['view']['data']['skin_faq_option'] = get_skin_name('faq', set_value('skin_faq', element('skin_faq', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_faq_option'] = get_skin_name('faq', set_value('mobile_skin_faq', element('mobile_skin_faq', $getdata)), '기본설정따름');
     $view['view']['data']['layout_register_option'] = get_skin_name('_layout', set_value('layout_register', element('layout_register', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_register_option'] = get_skin_name('_layout', set_value('mobile_layout_register', element('mobile_layout_register', $getdata)), '기본설정따름');
     $view['view']['data']['skin_register_option'] = get_skin_name('register', set_value('skin_register', element('skin_register', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_register_option'] = get_skin_name('register', set_value('mobile_skin_register', element('mobile_skin_register', $getdata)), '기본설정따름');
     $view['view']['data']['layout_findaccount_option'] = get_skin_name('_layout', set_value('layout_findaccount', element('layout_findaccount', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_findaccount_option'] = get_skin_name('_layout', set_value('mobile_layout_findaccount', element('mobile_layout_findaccount', $getdata)), '기본설정따름');
     $view['view']['data']['skin_findaccount_option'] = get_skin_name('findaccount', set_value('skin_findaccount', element('skin_findaccount', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_findaccount_option'] = get_skin_name('findaccount', set_value('mobile_skin_findaccount', element('mobile_skin_findaccount', $getdata)), '기본설정따름');
     $view['view']['data']['layout_login_option'] = get_skin_name('_layout', set_value('layout_login', element('layout_login', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_login_option'] = get_skin_name('_layout', set_value('mobile_layout_login', element('mobile_layout_login', $getdata)), '기본설정따름');
     $view['view']['data']['skin_login_option'] = get_skin_name('login', set_value('skin_login', element('skin_login', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_login_option'] = get_skin_name('login', set_value('mobile_skin_login', element('mobile_skin_login', $getdata)), '기본설정따름');
     $view['view']['data']['layout_mypage_option'] = get_skin_name('_layout', set_value('layout_mypage', element('layout_mypage', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_mypage_option'] = get_skin_name('_layout', set_value('mobile_layout_mypage', element('mobile_layout_mypage', $getdata)), '기본설정따름');
     $view['view']['data']['skin_mypage_option'] = get_skin_name('mypage', set_value('skin_mypage', element('skin_mypage', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_mypage_option'] = get_skin_name('mypage', set_value('mobile_skin_mypage', element('mobile_skin_mypage', $getdata)), '기본설정따름');
     $view['view']['data']['layout_currentvisitor_option'] = get_skin_name('_layout', set_value('layout_currentvisitor', element('layout_currentvisitor', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_currentvisitor_option'] = get_skin_name('_layout', set_value('mobile_layout_currentvisitor', element('mobile_layout_currentvisitor', $getdata)), '기본설정따름');
     $view['view']['data']['skin_currentvisitor_option'] = get_skin_name('currentvisitor', set_value('skin_currentvisitor', element('skin_currentvisitor', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_currentvisitor_option'] = get_skin_name('currentvisitor', set_value('mobile_skin_currentvisitor', element('mobile_skin_currentvisitor', $getdata)), '기본설정따름');
     $view['view']['data']['layout_search_option'] = get_skin_name('_layout', set_value('layout_search', element('layout_search', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_search_option'] = get_skin_name('_layout', set_value('mobile_layout_search', element('mobile_layout_search', $getdata)), '기본설정따름');
     $view['view']['data']['skin_search_option'] = get_skin_name('search', set_value('skin_search', element('skin_search', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_search_option'] = get_skin_name('search', set_value('mobile_skin_search', element('mobile_skin_search', $getdata)), '기본설정따름');
     $view['view']['data']['layout_note_option'] = get_skin_name('_layout', set_value('layout_note', element('layout_note', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_note_option'] = get_skin_name('_layout', set_value('mobile_layout_note', element('mobile_layout_note', $getdata)), '기본설정따름');
     $view['view']['data']['skin_note_option'] = get_skin_name('note', set_value('skin_note', element('skin_note', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_note_option'] = get_skin_name('note', set_value('mobile_skin_note', element('mobile_skin_note', $getdata)), '기본설정따름');
     $view['view']['data']['layout_profile_option'] = get_skin_name('_layout', set_value('layout_profile', element('layout_profile', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_profile_option'] = get_skin_name('_layout', set_value('mobile_layout_profile', element('mobile_layout_profile', $getdata)), '기본설정따름');
     $view['view']['data']['skin_profile_option'] = get_skin_name('profile', set_value('skin_profile', element('skin_profile', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_profile_option'] = get_skin_name('profile', set_value('mobile_skin_profile', element('mobile_skin_profile', $getdata)), '기본설정따름');
     $view['view']['data']['layout_formmail_option'] = get_skin_name('_layout', set_value('layout_formmail', element('layout_formmail', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_formmail_option'] = get_skin_name('_layout', set_value('mobile_layout_formmail', element('mobile_layout_formmail', $getdata)), '기본설정따름');
     $view['view']['data']['skin_formmail_option'] = get_skin_name('formmail', set_value('skin_formmail', element('skin_formmail', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_formmail_option'] = get_skin_name('formmail', set_value('mobile_skin_formmail', element('mobile_skin_formmail', $getdata)), '기본설정따름');
     $view['view']['data']['layout_notification_option'] = get_skin_name('_layout', set_value('layout_notification', element('layout_notification', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_notification_option'] = get_skin_name('_layout', set_value('mobile_layout_notification', element('mobile_layout_notification', $getdata)), '기본설정따름');
     $view['view']['data']['skin_notification_option'] = get_skin_name('notification', set_value('skin_notification', element('skin_notification', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_notification_option'] = get_skin_name('notification', set_value('mobile_skin_notification', element('mobile_skin_notification', $getdata)), '기본설정따름');
     $view['view']['data']['layout_helptool_option'] = get_skin_name('_layout', set_value('layout_helptool', element('layout_helptool', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_layout_helptool_option'] = get_skin_name('_layout', set_value('mobile_layout_helptool', element('mobile_layout_helptool', $getdata)), '기본설정따름');
     $view['view']['data']['skin_helptool_option'] = get_skin_name('helptool', set_value('skin_helptool', element('skin_helptool', $getdata)), '기본설정따름');
     $view['view']['data']['mobile_skin_helptool_option'] = get_skin_name('helptool', set_value('mobile_skin_helptool', element('mobile_skin_helptool', $getdata)), '기본설정따름');
     $view['view']['data']['skin_popup_option'] = get_skin_name('popup', set_value('skin_popup', element('skin_popup', $getdata)));
     $view['view']['data']['mobile_skin_popup_option'] = get_skin_name('popup', set_value('mobile_skin_popup', element('mobile_skin_popup', $getdata)));
     // 이벤트가 존재하면 실행합니다
     $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));
 }