Merge pull request #9 from misol/enhance/mobileSearch

모바일에서 통합 검색 기능 지원
This commit is contained in:
MinSoo Kim 2015-12-19 20:54:32 +09:00
commit 07aa588375
18 changed files with 924 additions and 1 deletions

View file

@ -0,0 +1,20 @@
<?php
/* Copyright (C) XETOWN CMS <https://www.xetown.com> */
/**
* The view class of the integration_search module
*
* @author MinSoo Kim <misol.kr@gmail.com>
*/
class integration_searchMobile extends integration_searchView
{
/**
* Search Result
*
* @return Object
*/
function IS()
{
parent::IS();
}
}

View file

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2015 MinSoo Kim
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View file

@ -0,0 +1,38 @@
<!--// 페이지 버튼 영역 -->
<div class="misolTab misolTabCenter" cond="$where == $misolSection && $output->page_navigation && count($output->data)">
<!--@if(!$page)-->
{@$page = 1}
<!--@end-->
<ol class="misolSearchTabA misolPC">
<li cond="$page != 1"><a href="{getAutoEncodedUrl('page','')}" class="prevEnd"><span>{$lang->first_page}</span></a></li>
<!--@while($page_no = $output->page_navigation->getNextPage())-->
<li class="active"|cond="$page == $page_no">
<span>
<a href="{getAutoEncodedUrl('page',$page_no)}"><span>{$page_no}</span></a>
</span>
</li>
<!--@end-->
<li cond="$page != $output->page_navigation->last_page"><a href="{getAutoEncodedUrl('page',$output->page_navigation->last_page)}" <!--@if(!$last_division)-->class="nextEnd"<!--@end-->><span>{$lang->last_page}</span></a></li>
<!--@if($last_division)-->
<li><a href="{getAutoEncodedUrl('page',1,'document_srl','','search_target',$search_target,'is_keyword',$is_keyword,'division',$last_division,'last_division','')}" class="nextEnd"><span>{$lang->cmd_search_next}</span></a></li>
<!--@end-->
</ol>
<!--// 좁은 화면의 페이지 버튼-->
<ol class="misolSearchTabA misolMobile">
<!--@if($page != 1)-->
<li><a href="{getAutoEncodedUrl('page',$page-1)}" class="prevEnd"><span>{$lang->cmd_prev}</span></a></li>
<!--@endif-->
<li class="active"><a href="{getAutoEncodedUrl('page',$page)}"><span><strong>{$page} / {$output->page_navigation->last_page}</strong></span></a></li>
<!--@if($page != $output->page_navigation->last_page)-->
<li><a href="{getAutoEncodedUrl('page',$page+1)}" <!--@if(!$last_division)-->class="nextEnd"<!--@end-->><span>{$lang->cmd_next}</span></a></li>
<!--@endif-->
<!--@if($last_division)-->
<li><a href="{getAutoEncodedUrl('page',1,'document_srl','','search_target',$search_target,'is_keyword',$is_keyword,'division',$last_division,'last_division','')}" class="nextEnd"><span>{$lang->cmd_search_next}</span></a></li>
<!--@end-->
</ol>
</div>

View file

@ -0,0 +1,40 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<div class="misolTop" cond="$where != 'comment'">
<a href="{getAutoEncodedUrl('where','comment','page',1)}" class="misol_top_a"><h1 class="subTitle"><span><i class="xi-comments" title="{$lang->comment}"></i> {$lang->comment} <span>({number_format($output->total_count)})</span></span></h1><span class="misol_more"><i class="xi-angle-right" title="{$lang->more}"></i></span></a>
</div>
<div class="misolTop" cond="$where == 'comment'">
<h1 class="subTitle"><span><i class="xi-comments" title="{$lang->comment}"></i> {$lang->comment} <span>({number_format($output->total_count)})</span></span></h1>
</div>
<!--@if(!count($output->data))-->
<span class="noResult">{$lang->msg_no_result}</span>
<!--@else-->
<ul class="misolSearch_list">
<!--@foreach($output->data as $no => $comment)-->
<li>
<a href="{$comment->getPermanentUrl()}" class="cont_a" onclick="window.open(this.href);return false;">
<div class="content_basic<!--@if($comment->thumbnailExists(240))--> left_img<!--@end-->">
<section class="item">
<span cond="$comment->thumbnailExists(240)" class="content_image">
<img src="{$comment->getThumbnail(240)}" width="80" height="80" alt="{str_replace(array('&amp;amp;','&amp;lt;','&amp;gt;','&amp;quot;','&amp;apos;'),array('&amp;','&lt;','&gt;','&quot;','&apos;'),$comment->getSummary(100))}" />
</span>
<h1 class="left_img"|cond="$comment->thumbnailExists(240)">{$lang->comment}</h1>
<p class="left_img"|cond="$comment->thumbnailExists(240)">{$comment->getSummary(400)}</p>
<address class="left_img"|cond="$comment->thumbnailExists(240)"><strong><i class="xi-user"></i>{$comment->getNickName()}</strong> | <time><i class="xi-time"></i><span class="time">{$comment->getRegdate("Y-m-d H:i")}</span></time></address>
</section>
</div>
</a>
</li>
<!--@end-->
</ul>
<!--@end-->
</section>
<!--// 페이지 버튼 영역 -->
{@$misolSection = 'comment'}
<!--#include("_page.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,259 @@
@charset "UTF-8";
/* 파란색 #153888 */
/* 전체 스타일 */
.misolSearch
{
background-color:#ffffff;
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',"돋움",Dotum,"굴림",Gulim,Helvetica,sans-serif;
font-size: 14px;
background-color: #fff;
margin: 5px 0px;
padding: 0px;
}
.misolSearch section.misolSearchSection
{
background-color:#ffffff;
font-size: 14px;
background-color: #fff;
box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
margin: 10px;
padding: 0 5px;
}
/* 검색 상자 스타일 */
.misolSearch .searchBox {
padding:15px 0px;
text-align: center;
}
#misolSearchForm{
display:inline-block;
}
.misolSearch .searchBox input[type="submit"]{vertical-align:top;background:#616161;border:1px solid #e0e0e0;color:#fff;height:32px;padding:0 15px;margin:0;}
.misolSearch .searchBox input[type="submit"]:hover, .misolSearch .searchBox input[type='submit']:focus {background:#153888;}
.misolSearch .searchBox input.keyword[type='text'] {
width: 450px;
line-height: 18px;
font-size: 14px;
margin: 0;
padding: 8px 8px 6px 8px;
position: relative;
display: inline-block;
outline: none;
border: none;
border-bottom:1px solid #e0e0e0;
}
.misolSearch .searchBox input.keyword[type='text']:hover, .misolSearch .searchBox input.keyword[type='text']:focus {
border-bottom:1px solid #153888;
}
/* 글 목록 스타일 */
.misolSearch address {
font-style:normal;
}
.misolSearch .misolSearch_list .cont_a {
color: #222;
display: block;
letter-spacing: -1px;
line-height: 18px;
margin: 0 -5px;
overflow: hidden;
padding: 0.667em 10px 0.733em;
text-overflow: ellipsis;
white-space: nowrap;
text-decoration: none;
}
.misolSearch .misolSearch_list .cont_a:hover {
color: #153888;
}
.misolSearch .cont_a {
color: #222;
display: block;
letter-spacing: -1px;
overflow: hidden;
padding: 0.467em 0;
text-overflow: ellipsis;
white-space: nowrap;
text-decoration: none;
}
.misolSearch .cont_a dt {
font-weight: bold;
}
.misolSearch .content_basic{
position:relative;
display:block;
width:100%;
vertical-align: middle;
overflow:hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.misolSearch .content_basic section.item{
width:100%;
}
.misolSearch .content_basic section.item h1, .misolSearch .content_basic section.item p, .misolSearch .content_basic section.item address{
padding:0px;
margin:3px 0px;
color: #212121;
font-size: 14px;
position:relative;
box-sizing: border-box;
width:auto;
overflow:hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.misolSearch .content_image {
display:block;
position:absolute;
left:0px;
width: 80px;
}
.misolSearch .content_image img{
width:80px;
height:80px;
}
.misolSearch span.left_img{
height:80px;
}
.misolSearch .content_basic section.item .left_img{
margin-left:85px;
}
.misolSearch ul.misolSearch_list, .misolSearch ul.misolSearchTabA, .misolSearch ol.misolSearchTabA {
list-style: outside none none;
padding: 0px 0px 6px;
margin: 0;
}
.misolSearch .misolSearch_list li {
position:relative;
border-top: 1px solid #e0e0e0;
overflow: hidden;
padding:0;
}
.misolSearch .misolSearch_list li:first-child, .misolSearch.misolSearch_list li.first-child{
border-top: 0 none;
}
.misolSearch .misolSearch_list li i{ /* 아이콘 */
margin-right:3px;
font-size:0.9em;
}
.misolSearch .misolSearchSection .noResult{
display:inline-block;
margin: 10px;
}
/* 상단 제목 스타일 */
.misolSearch .misolTop {
border-bottom: 1px solid #e0e0e0;
height: 45px;
line-height: 20px;
margin: 0px 5px;
position: relative;
}
.misolSearch div.misolTop h1
{
color: #000;
font-weight: 400;
letter-spacing: -1px;
line-height: 45px;
font-size: 16.3833px;
}
.misolSearch div.misolTop .misol_top_a {
color: #000;
font-weight: 400;
display: block;
margin: 0 -10px;
padding: 0 10px;
text-decoration: none;
}
.misolSearch div.misolTop .misol_more {
position: absolute;
right: 5px;
top: 15px;
height: 12.5px;
width: 9px;
}
/* 상단 탭 스타일 */
.misolSearch div.misolTab{
overflow: hidden;
width:100%;
height: 52px;
white-space: nowrap;
border-bottom: 1px solid #e0e0e0;
box-sizing: border-box;
}
.misolSearch ul.misolSearchTabA, .misolSearch ol.misolSearchTabA{
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
padding: 6px 0px 100px;
text-decoration: none;
}
.misolSearch div.misolTabCenter{
text-align: center;
border-bottom: none;
}
.misolSearch ol.misolSearchTabA{
display: inline-block;
}
.misolSearch ul.misolSearchTabA>li, .misolSearch ol.misolSearchTabA>li {
display:inline-block;
height: 40px;
line-height: 18px;
position: relative;
}
.misolSearch ul.misolSearchTabA>li a, .misolSearch ol.misolSearchTabA>li a{
display:inline-block;
color: #000;
font-weight: 400;
letter-spacing: -1px;
line-height: 40px;
text-decoration: none;
}
.misolSearch ul.misolSearchTabA>li a:hover, .misolSearch ul.misolSearchTabA>li.active a, .misolSearch ol.misolSearchTabA>li a:hover, .misolSearch ol.misolSearchTabA>li.active a {
color: #153888;
font-weight: 700;
}
.misolSearch ul.misolSearchTabA>li a span, .misolSearch ol.misolSearchTabA>li a span {
border-left: 1px solid #e0e0e0;
padding: 0 15px;
}
.misolSearch ul.misolSearchTabA>li:first-child a span, .misolSearch ol.misolSearchTabA>li:first-child a span {
border-left: 0 none;
}
.misolSearch section ul.misolSearchTabA>li:first-child a span, .misolSearch section ol.misolSearchTabA>li:first-child a span {
padding-left: 10px;
}
/* 페이지 */
.misolSearch .pagination{
font-size:16px;
line-height:16px;
}
.misolSearch .prevEnd:before{
font-family:xeicon;
content:"\e60b"
}
.misolSearch .nextEnd:after{
font-family:xeicon;
content:"\e60d"
}
/* PC / Mobile */
.misolSearch ol.misolMobile{
display:none;
}
@media screen and (max-width: 750px) {
.misolSearch ol.misolMobile{
display: inline-block;
}
.misolSearch ol.misolPC{
display: none;
}
.misolSearch .searchBox input.keyword[type='text'] {
width: 200px;
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,259 @@
@charset "UTF-8";
/* 크림슨 #872434 */
/* 전체 스타일 */
.misolSearch
{
background-color:#ffffff;
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',"돋움",Dotum,"굴림",Gulim,Helvetica,sans-serif;
font-size: 14px;
background-color: #fff;
margin: 5px 0px;
padding: 0px;
}
.misolSearch section.misolSearchSection
{
background-color:#ffffff;
font-size: 14px;
background-color: #fff;
box-shadow: 0 0 2px rgba(0, 0, 0, 0.25);
margin: 10px;
padding: 0 5px;
}
/* 검색 상자 스타일 */
.misolSearch .searchBox {
padding:15px 0px;
text-align: center;
}
#misolSearchForm{
display:inline-block;
}
.misolSearch .searchBox input[type="submit"]{vertical-align:top;background:#616161;border:1px solid #e0e0e0;color:#fff;height:32px;padding:0 15px;margin:0;}
.misolSearch .searchBox input[type="submit"]:hover, .misolSearch .searchBox input[type='submit']:focus {background:#872434;}
.misolSearch .searchBox input.keyword[type='text'] {
width: 450px;
line-height: 18px;
font-size: 14px;
margin: 0;
padding: 8px 8px 6px 8px;
position: relative;
display: inline-block;
outline: none;
border: none;
border-bottom:1px solid #e0e0e0;
}
.misolSearch .searchBox input.keyword[type='text']:hover, .misolSearch .searchBox input.keyword[type='text']:focus {
border-bottom:1px solid #872434;
}
/* 글 목록 스타일 */
.misolSearch address {
font-style:normal;
}
.misolSearch .misolSearch_list .cont_a {
color: #222;
display: block;
letter-spacing: -1px;
line-height: 18px;
margin: 0 -5px;
overflow: hidden;
padding: 0.667em 10px 0.733em;
text-overflow: ellipsis;
white-space: nowrap;
text-decoration: none;
}
.misolSearch .misolSearch_list .cont_a:hover {
color: #872434;
}
.misolSearch .cont_a {
color: #222;
display: block;
letter-spacing: -1px;
overflow: hidden;
padding: 0.467em 0;
text-overflow: ellipsis;
white-space: nowrap;
text-decoration: none;
}
.misolSearch .cont_a dt {
font-weight: bold;
}
.misolSearch .content_basic{
position:relative;
display:block;
width:100%;
vertical-align: middle;
overflow:hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.misolSearch .content_basic section.item{
width:100%;
}
.misolSearch .content_basic section.item h1, .misolSearch .content_basic section.item p, .misolSearch .content_basic section.item address{
padding:0px;
margin:3px 0px;
color: #212121;
font-size: 14px;
position:relative;
box-sizing: border-box;
width:auto;
overflow:hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.misolSearch .content_image {
display:block;
position:absolute;
left:0px;
width: 80px;
}
.misolSearch .content_image img{
width:80px;
height:80px;
}
.misolSearch span.left_img{
height:80px;
}
.misolSearch .content_basic section.item .left_img{
margin-left:85px;
}
.misolSearch ul.misolSearch_list, .misolSearch ul.misolSearchTabA, .misolSearch ol.misolSearchTabA {
list-style: outside none none;
padding: 0px 0px 6px;
margin: 0;
}
.misolSearch .misolSearch_list li {
position:relative;
border-top: 1px solid #e0e0e0;
overflow: hidden;
padding:0;
}
.misolSearch .misolSearch_list li:first-child, .misolSearch.misolSearch_list li.first-child{
border-top: 0 none;
}
.misolSearch .misolSearch_list li i{ /* 아이콘 */
margin-right:3px;
font-size:0.9em;
}
.misolSearch .misolSearchSection .noResult{
display:inline-block;
margin: 10px;
}
/* 상단 제목 스타일 */
.misolSearch .misolTop {
border-bottom: 1px solid #e0e0e0;
height: 45px;
line-height: 20px;
margin: 0px 5px;
position: relative;
}
.misolSearch div.misolTop h1
{
color: #000;
font-weight: 400;
letter-spacing: -1px;
line-height: 45px;
font-size: 16.3833px;
}
.misolSearch div.misolTop .misol_top_a {
color: #000;
font-weight: 400;
display: block;
margin: 0 -10px;
padding: 0 10px;
text-decoration: none;
}
.misolSearch div.misolTop .misol_more {
position: absolute;
right: 5px;
top: 15px;
height: 12.5px;
width: 9px;
}
/* 상단 탭 스타일 */
.misolSearch div.misolTab{
overflow: hidden;
width:100%;
height: 52px;
white-space: nowrap;
border-bottom: 1px solid #e0e0e0;
box-sizing: border-box;
}
.misolSearch ul.misolSearchTabA, .misolSearch ol.misolSearchTabA{
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
padding: 6px 0px 100px;
text-decoration: none;
}
.misolSearch div.misolTabCenter{
text-align: center;
border-bottom: none;
}
.misolSearch ol.misolSearchTabA{
display: inline-block;
}
.misolSearch ul.misolSearchTabA>li, .misolSearch ol.misolSearchTabA>li {
display:inline-block;
height: 40px;
line-height: 18px;
position: relative;
}
.misolSearch ul.misolSearchTabA>li a, .misolSearch ol.misolSearchTabA>li a{
display:inline-block;
color: #000;
font-weight: 400;
letter-spacing: -1px;
line-height: 40px;
text-decoration: none;
}
.misolSearch ul.misolSearchTabA>li a:hover, .misolSearch ul.misolSearchTabA>li.active a, .misolSearch ol.misolSearchTabA>li a:hover, .misolSearch ol.misolSearchTabA>li.active a {
color: #872434;
font-weight: 700;
}
.misolSearch ul.misolSearchTabA>li a span, .misolSearch ol.misolSearchTabA>li a span {
border-left: 1px solid #e0e0e0;
padding: 0 15px;
}
.misolSearch ul.misolSearchTabA>li:first-child a span, .misolSearch ol.misolSearchTabA>li:first-child a span {
border-left: 0 none;
}
.misolSearch section ul.misolSearchTabA>li:first-child a span, .misolSearch section ol.misolSearchTabA>li:first-child a span {
padding-left: 10px;
}
/* 페이지 */
.misolSearch .pagination{
font-size:16px;
line-height:16px;
}
.misolSearch .prevEnd:before{
font-family:xeicon;
content:"\e60b"
}
.misolSearch .nextEnd:after{
font-family:xeicon;
content:"\e60d"
}
/* PC / Mobile */
.misolSearch ol.misolMobile{
display:none;
}
@media screen and (max-width: 750px) {
.misolSearch ol.misolMobile{
display: inline-block;
}
.misolSearch ol.misolPC{
display: none;
}
.misolSearch .searchBox input.keyword[type='text'] {
width: 200px;
}
}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,55 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<!--// 제목 또는 탭 영역 -->
<div class="misolTop" cond="$where != 'document'">
<a href="{getAutoEncodedUrl('where','document','page',1)}" class="misol_top_a"><h1 class="subTitle"><span><i class="xi-file-text" title="{$lang->document}"></i> {$lang->document} <span>({number_format($output->total_count)})</span></span></h1><span class="misol_more"><i class="xi-angle-right" title="{$lang->more}"></i></span></a>
</div>
<div class="misolTop" cond="$where == 'document'">
<h1 class="subTitle"><span><i class="xi-file-text" title="{$lang->document}"></i> {$lang->document} <span>({number_format($output->total_count)})</span></span></h1>
</div>
<div class="misolTab">
<ul class="misolSearchTabA">
<!--@foreach($lang->is_search_option['document'] as $key => $val)-->
<li class="<!--@if($search_target == $key)-->active<!--@end--><!--@if($key=="tag")--> last<!--@end-->"><a href="{getUrl('where','document','search_target',$key,'page',1,'division','')}"><span>{$val}</span></a></li>
<!--@end-->
</ul>
</div>
<!--// 리스트 영역 -->
<!--@if(!count($output->data))-->
<span class="noResult">
{$lang->msg_no_result}
<!--@if($last_division)-->
<br>{$lang->msg_document_more_search}
<br><a class="btn" href="{getUrl('where','document','page',1,'document_srl','','search_target',$search_target,'is_keyword',$is_keyword,'division',$last_division,'last_division','')}">{$lang->cmd_search_next}</a>
<!--@end-->
</span>
<!--@else-->
<ul class="misolSearch_list">
<!--@foreach($output->data as $no => $document)-->
<li>
<a href="{getUrl('','document_srl',$document->document_srl)}" class="cont_a" onclick="window.open(this.href);return false;">
<div class="content_basic<!--@if($document->thumbnailExists(240))--> left_img<!--@end-->">
<section class="item">
<span cond="$document->thumbnailExists(240)" class="content_image">
<img src="{$document->getThumbnail(240)}" width="80" height="80" alt="{str_replace(array('&amp;amp;','&amp;lt;','&amp;gt;','&amp;quot;','&amp;apos;'),array('&amp;','&lt;','&gt;','&quot;','&apos;'),$document->getTitle())}" />
</span>
<h1 class="left_img"|cond="$document->thumbnailExists(240)">{$document->getTitle()}</h1>
<p class="left_img"|cond="$document->thumbnailExists(240)">{$document->getSummary(200)}</p>
<address class="left_img"|cond="$document->thumbnailExists(240)"><strong><i class="xi-user"></i>{$document->getNickName()}</strong> | <time><i class="xi-time"></i><span class="time">{$document->getRegdate("Y-m-d H:i")}</span></time> | <i class="xi-eye" title="{$lang->readed_count}"></i><span class="readNum">{$document->get('readed_count')}</span> | <i class="xi-message"></i>{$document->getCommentCount()}<!--@if($document->get('voted_count'))--> | <i class="xi-thumbs-up" title="{$lang->voted_count}"></i><span class="recomNum">{$document->get('voted_count')}</span><!--@end--></address>
</section>
</div>
</a>
</li>
<!--@end-->
</ul>
<!--@end-->
</section>
<!--// 페이지 버튼 영역 -->
{@$misolSection = 'document'}
<!--#include("_page.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,40 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<!--// 제목 또는 탭 영역 -->
<div class="misolTop" cond="$where != 'file'">
<a href="{getAutoEncodedUrl('where','file','page',1)}" class="misol_top_a"><h1 class="subTitle"><span><i class="xi-clip" title="{$lang->file}"></i> {$lang->file} <span>({number_format($output->total_count)})</span></span></h1><span class="misol_more"><i class="xi-angle-right" title="{$lang->more}"></i></span></a>
</div>
<div class="misolTop" cond="$where == 'file'">
<h1 class="subTitle"><span><i class="xi-clip" title="{$lang->file}"></i> {$lang->file} <span>({number_format($output->total_count)})</span></span></h1>
</div>
<!--// 리스트 영역 -->
<!--@if(!count($output->data))-->
<span class="noResult">
{$lang->msg_no_result}
</span>
<!--@else-->
<ul class="misolSearch_list">
<!--@foreach($output->data as $no => $file)-->
<li>
<a href="{$file->url}" class="cont_a" onclick="window.open(this.href);return false;">
<div class="content_basic">
<section class="item">
<h1>{$file->filename} ({FileHandler::filesize($file->file_size)})</h1>
<address><strong><i class="xi-user"></i>{$file->nick_name}</strong> | <i class="xi-time"></i><span class="time"><time>{$file->regdate}</time></span> | {number_format($file->download_count)}</address>
</section>
</div>
</a>
</li>
<!--@end-->
</ul>
<!--@end-->
</section>
<!--// 페이지 버튼 영역 -->
{@$misolSection = 'file'}
<!--#include("_page.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,3 @@
<!--@if($_misolSearch == 1905)-->
</main>
<!--@end-->

View file

@ -0,0 +1,37 @@
<!--// 헤더는 한번만 작성-->
<!--@if(!$_misolSearch)-->
<!--// 스타일 불러오기 -->
<!--@if($module_info->colorset != "crimson")-->
<load target="./css/blue.css" />
<!--@else-->
<load target="./css/crimson.css" />
<!--@end-->
<load target="./../../../../common/xeicon/xeicon.min.css" />
<main class="misolSearch">
{@ $_misolSearch = 1905; }
<div class="searchBox">
<form action="{getUrl()}" method="post" class="search" id="misolSearchForm" no-error-return-url="true" >
<input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="act" value="IS" />
<input type="hidden" name="where" value="{$where}" />
<input type="hidden" name="search_target" value="title_content" />
<input name="is_keyword" class="keyword" type="text" required="required" value="{$is_keyword}"/>
<input type="submit" value="{$lang->cmd_search}" />
</form>
</div>
<div class="misolTab">
<ul class="misolSearchTabA">
<li <!--@if(!$where)-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','','page','','division','')}"><span>{$lang->integration_search}</span></a></li>
<li <!--@if($where=='document')-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','document','page',1,'division','')}"><span>{$lang->document}</span></a></li>
<li <!--@if($where=='comment')-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','comment','page',1,'division','')}"><span>{$lang->comment}</span></a></li>
<li <!--@if($where=='trackback')-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','trackback','page',1,'division','')}"><span>{$lang->trackback}</span></a></li>
<li <!--@if($where=='multimedia')-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','multimedia','page',1,'division','')}"><span>{$lang->multimedia}</span></a></li>
<li <!--@if($where=='file')-->class="active"<!--@end-->><a href="{getAutoEncodedUrl('where','file','page',1,'division','')}"><span>{$lang->file}</span></a></li>
</ul>
</div>
<!--@end-->
{@ $_misolSearch++; }

View file

@ -0,0 +1,20 @@
<!--#include("header.html")-->
{@ $output = $search_result['document'] }
<!--#include("document.html")-->
{@ $output = $search_result['comment'] }
<!--#include("comment.html")-->
{@ $output = $search_result['trackback'] }
{@ $search_target = 'title'; }
<!--#include("trackback.html")-->
{@ $output = $search_result['multimedia'] }
<!--#include("multimedia.html")-->
{@ $output = $search_result['file'] }
<!--#include("file.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,43 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<!--// 제목 또는 탭 영역 -->
<div class="misolTop" cond="$where != 'multimedia'">
<a href="{getAutoEncodedUrl('where','multimedia','page',1)}" class="misol_top_a"><h1 class="subTitle"><span><i class="xi-images" title="{$lang->multimedia}"></i> {$lang->multimedia} <span>({number_format($output->total_count)})</span></span></h1><span class="misol_more"><i class="xi-angle-right" title="{$lang->more}"></i></span></a>
</div>
<div class="misolTop" cond="$where == 'multimedia'">
<h1 class="subTitle"><span><i class="xi-images" title="{$lang->multimedia}"></i> {$lang->multimedia} <span>({number_format($output->total_count)})</span></span></h1>
</div>
<!--// 리스트 영역 -->
<!--@if(!count($output->data))-->
<span class="noResult">
{$lang->msg_no_result}
</span>
<!--@else-->
<ul class="misolSearch_list">
<!--@foreach($output->data as $no => $image)-->
<li>
<a href="{$image->url}" class="cont_a" onclick="window.open(this.href);return false;">
<div class="content_basic left_img">
<section class="item">
<span class="content_image">
{$image->src}
</span>
<h1 class="left_img">{$image->filename}</h1>
<address class="left_img"><strong><i class="xi-user"></i>{$image->nick_name}</strong> | <time><i class="xi-time"></i><span class="time">{$image->regdate}</span></time></address>
</section>
</div>
</a>
</li>
<!--@end-->
</ul>
<!--@end-->
</section>
<!--// 페이지 버튼 영역 -->
{@$misolSection = 'multimedia'}
<!--#include("_page.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,14 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<!--// 제목 또는 탭 영역 -->
<div class="misolTop">
<h1 class="subTitle"><span><i class="xi-info-triangle" title="{$lang->notify}"></i> {$lang->notify}</span></h1>
</div>
<span class="noResult">
{$lang->msg_no_keyword}
</span>
</section>
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<skin version="0.2">
<title xml:lang="ko">미솔 스킨</title>
<title xml:lang="en">misol skin</title>
<description xml:lang="ko">통합검색 모바일에 검색에 대응하는 미솔 스킨입니다.</description>
<description xml:lang="en">The skin for mobile and PC environment of Integrated Search Module</description>
<version>1.0</version>
<date>2015-12-18</date>
<author email_address="misol.kr@gmail.com" link="https://github.com/misol">
<name xml:lang="ko">김민수</name>
<name xml:lang="en">MinSoo Kim</name>
</author>
<license>MIT License</license>
<colorset>
<color name="blue">
<title xml:lang="ko">파랑</title>
<title xml:lang="en">Blue</title>
</color>
<color name="crimson">
<title xml:lang="ko">크림슨</title>
<title xml:lang="en">Crimson</title>
</color>
</colorset>
</skin>

View file

@ -0,0 +1,47 @@
<!--#include("header.html")-->
<section class="misolSearchSection">
<!--// 제목 또는 탭 영역 -->
<div class="misolTop" cond="$where != 'trackback'">
<a href="{getAutoEncodedUrl('where','trackback','page',1)}" class="misol_top_a"><h1 class="subTitle"><span><i class="xi-note" title="{$lang->trackback}"></i> {$lang->trackback} <span>({number_format($output->total_count)})</span></span></h1><span class="misol_more"><i class="xi-angle-right" title="{$lang->more}"></i></span></a>
</div>
<div class="misolTop" cond="$where == 'trackback'">
<h1 class="subTitle"><span><i class="xi-note" title="{$lang->trackback}"></i> {$lang->trackback} <span>({number_format($output->total_count)})</span></span></h1>
</div>
<div class="misolTab">
<ul class="misolSearchTabA">
<!--@foreach($lang->is_search_option['trackback'] as $key => $val)-->
<li class="<!--@if($search_target == $key)-->active<!--@end--><!--@if($key=="tag")--> last<!--@end-->"><a href="{getUrl('where','trackback','search_target',$key,'page',1)}"><span>{$val}</span></a></li>
<!--@end-->
</ul>
</div>
<!--// 리스트 영역 -->
<!--@if(!count($output->data))-->
<span class="noResult">
{$lang->msg_no_result}
</span>
<!--@else-->
<ul class="misolSearch_list">
<!--@foreach($output->data as $no => $trackback)-->
<li>
<a href="{getUrl('','document_srl',$trackback->document_srl)}" class="cont_a" onclick="window.open(this.href);return false;">
<div class="content_basic">
<section class="item">
<h1>{htmlspecialchars($trackback->title, ENT_COMPAT | ENT_HTML401, 'UTF-8', false)}</h1>
<p>{cut_str(htmlspecialchars($trackback->excerpt, ENT_COMPAT | ENT_HTML401, 'UTF-8', false))}</p>
<address><strong><i class="xi-user"></i><a href="{$trackback->url}">{htmlspecialchars($trackback->blog_name, ENT_COMPAT | ENT_HTML401, 'UTF-8', false)}</a></strong> | <time><i class="xi-time"></i><span class="time">{zdate($trackback->regdate, "Y-m-d H:i")}</span></time></address>
</section>
</div>
</a>
</li>
<!--@end-->
</ul>
<!--@end-->
</section>
<!--// 페이지 버튼 영역 -->
{@$misolSection = 'trackback'}
<!--#include("_page.html")-->
{@ $_misolSearch--; }
<!--#include("footer.html")-->

View file

@ -85,7 +85,7 @@
</block>
</div>
</div>
<block loop="$skin_info->extra_vars => $key, $val">
<block loop="$skin_info->extra_vars => $key, $val" cond="$skin_info->extra_vars">
<block cond="$val->group && ((!$group) || $group != $val->group)">
{@$group = $val->group}
</section>