mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-04 01:01:41 +09:00
Separate simple_world layout and skin into its own repository
https://github.com/rhymix/rhymix-simple-world
This commit is contained in:
parent
5c007272a2
commit
570944df1a
61 changed files with 0 additions and 4302 deletions
|
|
@ -1,199 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<layout version="0.2">
|
|
||||||
<title xml:lang="ko">네모의 꿈</title>
|
|
||||||
<title xml:lang="en">Rectangular World</title>
|
|
||||||
<description xml:lang="ko">깔끔한 면과 그림자 레이아웃</description>
|
|
||||||
<description xml:lang="en">Simple rectangular planes and shadows</description>
|
|
||||||
<version>1.1.0</version>
|
|
||||||
<date>2017-03-10</date>
|
|
||||||
<author email_address="misol.kr@gmail.com" link="https://github.com/misol">
|
|
||||||
<name xml:lang="ko">misol</name>
|
|
||||||
<name xml:lang="en">misol</name>
|
|
||||||
</author>
|
|
||||||
<menus>
|
|
||||||
<menu name="GNB" maxdepth="2" default="true">
|
|
||||||
<title xml:lang="ko">상단 메뉴</title>
|
|
||||||
<title xml:lang="en">Global Navigation Menu</title>
|
|
||||||
</menu>
|
|
||||||
<menu name="FNB" maxdepth="1">
|
|
||||||
<title xml:lang="ko">하단 메뉴</title>
|
|
||||||
<title xml:lang="en">Footer Navigation Menu</title>
|
|
||||||
</menu>
|
|
||||||
</menus>
|
|
||||||
<extra_vars>
|
|
||||||
<var name="menu_position" type="select">
|
|
||||||
<title xml:lang="ko">모바일 메뉴 버튼 위치</title>
|
|
||||||
<title xml:lang="en">Mobile hamburger menu button position</title>
|
|
||||||
<description xml:lang="ko">작은 화면에서 나타나는 메뉴 버튼의 위치를 선택할 수 있습니다.</description>
|
|
||||||
<description xml:lang="en">The hamburger menu button, displayed on small screens, will be displayed at the selected position.</description>
|
|
||||||
<options value="top_right">
|
|
||||||
<title xml:lang="ko">오른쪽 위</title>
|
|
||||||
<title xml:lang="en">Top right</title>
|
|
||||||
</options>
|
|
||||||
<options value="left_right">
|
|
||||||
<title xml:lang="ko">왼쪽 위</title>
|
|
||||||
<title xml:lang="en">Top left</title>
|
|
||||||
</options>
|
|
||||||
</var>
|
|
||||||
<var name="left_space" type="select">
|
|
||||||
<title xml:lang="ko">죄측 공간 만들기</title>
|
|
||||||
<title xml:lang="en">Make a space on the left</title>
|
|
||||||
<description xml:lang="ko">본문 좌측에 공간을 만듭니다. 모바일 화면에서는 나타나지 않습니다.</description>
|
|
||||||
<description xml:lang="en">Make a space on the left of contents area.</description>
|
|
||||||
<options value="N">
|
|
||||||
<title xml:lang="ko">만들지 않습니다.</title>
|
|
||||||
<title xml:lang="en">I don't need it.</title>
|
|
||||||
</options>
|
|
||||||
<options value="Y">
|
|
||||||
<title xml:lang="ko">공간을 만듭니다.</title>
|
|
||||||
<title xml:lang="en">I need it.</title>
|
|
||||||
</options>
|
|
||||||
<options value="YM">
|
|
||||||
<title xml:lang="ko">공간을 만들고, 서브 메뉴를 나타냅니다.</title>
|
|
||||||
<title xml:lang="en">I need it, and place there submenus.</title>
|
|
||||||
</options>
|
|
||||||
</var>
|
|
||||||
<var name="LOGO_IMG" type="image">
|
|
||||||
<title xml:lang="ko">사이트 로고 이미지</title>
|
|
||||||
<title xml:lang="en">Site logo image</title>
|
|
||||||
</var>
|
|
||||||
<var name="LOGO_TEXT" type="text">
|
|
||||||
<title xml:lang="ko">사이트 로고 문자</title>
|
|
||||||
<title xml:lang="en">Site logo text</title>
|
|
||||||
</var>
|
|
||||||
<var name="logo_url" type="text">
|
|
||||||
<title xml:lang="ko">사이트 로고 링크 주소</title>
|
|
||||||
<title xml:lang="en">Site logo link URL</title>
|
|
||||||
</var>
|
|
||||||
<var name="before_content" type="textarea">
|
|
||||||
<title xml:lang="ko">사이트 본문 상단 내용</title>
|
|
||||||
<title xml:lang="en">Before the content area content</title>
|
|
||||||
<description xml:lang="ko">사이트 본문 영역 상단에 내용을 입력할 수 있습니다.</description>
|
|
||||||
</var>
|
|
||||||
<var name="left_content" type="textarea">
|
|
||||||
<title xml:lang="ko">사이트 본문 좌측 내용</title>
|
|
||||||
<title xml:lang="en">The contents of the left of contents area</title>
|
|
||||||
<description xml:lang="ko">사이트 본문 영역 좌측 영역이 나타나게 선택되었을 경우 추가될 내용을 입력할 수 있습니다. 모바일 화면에서는 나타나지 않습니다. 상단 옵션 중 '죄측 공간 만들기'를 먼저 설정해주십시오.</description>
|
|
||||||
</var>
|
|
||||||
<var name="right_content" type="textarea">
|
|
||||||
<title xml:lang="ko">레이아웃 틀 오른쪽 내용 (width: 160px)</title>
|
|
||||||
<title xml:lang="en">The right area of the layout frame (width: 160px)</title>
|
|
||||||
<description xml:lang="ko">레이아웃 상-하단이 만들어내는 직사각형 영역 바깥 오른편에 나타낼 내용을 입력합니다. 공간 폭은 160px 입니다. 작은 화면에서는 나타나지 않습니다.</description>
|
|
||||||
</var>
|
|
||||||
<var name="after_content" type="textarea">
|
|
||||||
<title xml:lang="ko">사이트 본문 하단 내용</title>
|
|
||||||
<title xml:lang="en">After the content area content</title>
|
|
||||||
<description xml:lang="ko">사이트 본문 영역 하단에 내용을 입력할 수 있습니다.</description>
|
|
||||||
</var>
|
|
||||||
<var name="FOOTER" type="text">
|
|
||||||
<title xml:lang="ko">사이트 하단 문자</title>
|
|
||||||
<title xml:lang="en">Site footer text</title>
|
|
||||||
</var>
|
|
||||||
<var name="primary_color" type="select">
|
|
||||||
<title xml:lang="ko">중심 색상</title>
|
|
||||||
<title xml:lang="en">Primary color</title>
|
|
||||||
<description xml:lang="ko">분위기를 형성하는데 사용되는 중심 색상입니다.</description>
|
|
||||||
<description xml:lang="en">Please select the mood color you want.</description>
|
|
||||||
<options value="red">
|
|
||||||
<title xml:lang="ko">붉은 색</title>
|
|
||||||
<title xml:lang="en">Red</title>
|
|
||||||
</options>
|
|
||||||
<options value="crimson">
|
|
||||||
<title xml:lang="ko">크림슨</title>
|
|
||||||
<title xml:lang="en">Crimson</title>
|
|
||||||
</options>
|
|
||||||
<options value="pink">
|
|
||||||
<title xml:lang="ko">분홍</title>
|
|
||||||
<title xml:lang="en">Pink</title>
|
|
||||||
</options>
|
|
||||||
<options value="purple">
|
|
||||||
<title xml:lang="ko">보라</title>
|
|
||||||
<title xml:lang="en">Purple</title>
|
|
||||||
</options>
|
|
||||||
<options value="deep-purple">
|
|
||||||
<title xml:lang="ko">진보라</title>
|
|
||||||
<title xml:lang="en">Deep Purple</title>
|
|
||||||
</options>
|
|
||||||
<options value="indigo">
|
|
||||||
<title xml:lang="ko">인디고</title>
|
|
||||||
<title xml:lang="en">Indigo</title>
|
|
||||||
</options>
|
|
||||||
<options value="deep-blue">
|
|
||||||
<title xml:lang="ko">짙은 파랑</title>
|
|
||||||
<title xml:lang="en">Deep Blue</title>
|
|
||||||
</options>
|
|
||||||
<options value="blue">
|
|
||||||
<title xml:lang="ko">파랑</title>
|
|
||||||
<title xml:lang="en">Blue</title>
|
|
||||||
</options>
|
|
||||||
<options value="light-blue">
|
|
||||||
<title xml:lang="ko">밝은 파랑</title>
|
|
||||||
<title xml:lang="en">Light Blue</title>
|
|
||||||
</options>
|
|
||||||
<options value="cyan">
|
|
||||||
<title xml:lang="ko">시안</title>
|
|
||||||
<title xml:lang="en">Cyan</title>
|
|
||||||
</options>
|
|
||||||
<options value="teal">
|
|
||||||
<title xml:lang="ko">틸</title>
|
|
||||||
<title xml:lang="en">Teal</title>
|
|
||||||
</options>
|
|
||||||
<options value="green">
|
|
||||||
<title xml:lang="ko">초록</title>
|
|
||||||
<title xml:lang="en">Green</title>
|
|
||||||
</options>
|
|
||||||
<options value="light-green">
|
|
||||||
<title xml:lang="ko">연한 초록</title>
|
|
||||||
<title xml:lang="en">Light Green</title>
|
|
||||||
</options>
|
|
||||||
<options value="lime">
|
|
||||||
<title xml:lang="ko">라임</title>
|
|
||||||
<title xml:lang="en">Lime</title>
|
|
||||||
</options>
|
|
||||||
<options value="yellow">
|
|
||||||
<title xml:lang="ko">노랑</title>
|
|
||||||
<title xml:lang="en">Yellow</title>
|
|
||||||
</options>
|
|
||||||
<options value="amber">
|
|
||||||
<title xml:lang="ko">앰버</title>
|
|
||||||
<title xml:lang="en">Amber</title>
|
|
||||||
</options>
|
|
||||||
<options value="orange">
|
|
||||||
<title xml:lang="ko">주황</title>
|
|
||||||
<title xml:lang="en">Orange</title>
|
|
||||||
</options>
|
|
||||||
<options value="deep-orange">
|
|
||||||
<title xml:lang="ko">진한 주황</title>
|
|
||||||
<title xml:lang="en">Deep Orange</title>
|
|
||||||
</options>
|
|
||||||
<options value="brown">
|
|
||||||
<title xml:lang="ko">갈색</title>
|
|
||||||
<title xml:lang="en">Brown</title>
|
|
||||||
</options>
|
|
||||||
<options value="grey">
|
|
||||||
<title xml:lang="ko">회색</title>
|
|
||||||
<title xml:lang="en">Grey</title>
|
|
||||||
</options>
|
|
||||||
<options value="blue-grey">
|
|
||||||
<title xml:lang="ko">푸른 회색</title>
|
|
||||||
<title xml:lang="en">Blue Grey</title>
|
|
||||||
</options>
|
|
||||||
<options value="customized">
|
|
||||||
<title xml:lang="ko">커스텀</title>
|
|
||||||
<title xml:lang="en">Customized</title>
|
|
||||||
</options>
|
|
||||||
</var>
|
|
||||||
<var name="customized_primary_color" type="colorpicker">
|
|
||||||
<title xml:lang="ko">커스텀 중심 색상</title>
|
|
||||||
<title xml:lang="en">Customized primary color</title>
|
|
||||||
<description xml:lang="ko">분위기를 형성하는데 사용되는 중심 색상을 위에서 선택하지 않고 Hex 코드로 직접 입력 합니다. (기본 값: #f44336) 위 항목에서 '커스텀' 항목을 선택해야 적용됩니다.</description>
|
|
||||||
<description xml:lang="en">Please type the mood color you want, if there is no choice before. Insert your color in hex code. (dafault value: #f44336) To use this option, you have to select 'Customized' for the options before.</description>
|
|
||||||
</var>
|
|
||||||
<var name="content_color" type="colorpicker">
|
|
||||||
<title xml:lang="ko">본문 영역 색상</title>
|
|
||||||
<title xml:lang="en">Content area color</title>
|
|
||||||
<description xml:lang="ko">레이아웃 본문 영역 색상을 지정합니다. 기본 색상은 흰색입니다.</description>
|
|
||||||
<description xml:lang="en">Set content area color. The default color is white.</description>
|
|
||||||
</var>
|
|
||||||
</extra_vars>
|
|
||||||
</layout>
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
<?xml version='1.0' encoding='UTF-8'?>
|
|
||||||
<lang>
|
|
||||||
<item name="simple_guest">
|
|
||||||
<value xml:lang="ko"><![CDATA[방문자]]></value>
|
|
||||||
<value xml:lang="en"><![CDATA[guest]]></value>
|
|
||||||
<value xml:lang="jp"><![CDATA[訪問者]]></value>
|
|
||||||
<value xml:lang="zh-CN"><![CDATA[游客]]></value>
|
|
||||||
</item>
|
|
||||||
<item name="simple_hello">
|
|
||||||
<value xml:lang="ko"><![CDATA[%s님 안녕하세요!]]></value>
|
|
||||||
<value xml:lang="en"><![CDATA[Hello %s!]]></value>
|
|
||||||
<value xml:lang="jp"><![CDATA[%s様、こんにちは!]]></value>
|
|
||||||
<value xml:lang="zh-CN"><![CDATA[%s, 你好!]]></value>
|
|
||||||
</item>
|
|
||||||
</lang>
|
|
||||||
|
|
@ -1,172 +0,0 @@
|
||||||
<!--// responsible layout -->
|
|
||||||
{Context::addMetaTag("viewport", "width=device-width, user-scalable=yes")}
|
|
||||||
|
|
||||||
<load target="./lang" />
|
|
||||||
|
|
||||||
{@
|
|
||||||
if(!$layout_info->primary_color)
|
|
||||||
$layout_info->primary_color = 'red';
|
|
||||||
if(!$layout_info->customized_primary_color)
|
|
||||||
$layout_info->customized_primary_color = '#f44336';
|
|
||||||
if(!$layout_info->content_color)
|
|
||||||
$layout_info->content_color = '#ffffff';
|
|
||||||
|
|
||||||
$material_colors = array(
|
|
||||||
'red' => '#f44336',
|
|
||||||
'crimson' => '#aa0000',
|
|
||||||
'pink' => '#e91e63',
|
|
||||||
'purple' => '#9c27b0',
|
|
||||||
'deep-purple' => '#673ab7',
|
|
||||||
'indigo' => '#3f51b5',
|
|
||||||
'deep-blue' => '#00397f',
|
|
||||||
'blue' => '#2196f3',
|
|
||||||
'light-blue' => '#03a9f4',
|
|
||||||
'cyan' => '#00bcd4',
|
|
||||||
'teal' => '#009688',
|
|
||||||
'green' => '#4caf50',
|
|
||||||
'light-green' => '#8bc34a',
|
|
||||||
'lime' => '#cddc39',
|
|
||||||
'yellow' => '#ffeb3b',
|
|
||||||
'amber' => '#ffc107',
|
|
||||||
'orange' => '#ff9800',
|
|
||||||
'deep-orange' => '#ff5722',
|
|
||||||
'brown' => '#795548',
|
|
||||||
'grey' => '#9e9e9e',
|
|
||||||
'blue-grey' => '#607d8b',
|
|
||||||
'black' => '#000000',
|
|
||||||
'white' => '#ffffff',
|
|
||||||
'customized' => $layout_info->customized_primary_color,
|
|
||||||
);
|
|
||||||
|
|
||||||
$oMemberModel = getModel('member');
|
|
||||||
$member_config = $oMemberModel->getMemberConfig();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
<!--// theme-color for mobile chrome browser -->
|
|
||||||
{Context::addMetaTag("theme-color", $material_colors[$layout_info->primary_color])}
|
|
||||||
|
|
||||||
<!--// Load styles -->
|
|
||||||
{@Context::set('layout_scss_value', array('grey' => $material_colors['grey'], 'primary_color' => $material_colors[$layout_info->primary_color], 'menu_position' => $layout_info->menu_position, 'content_color' => $layout_info->content_color))}
|
|
||||||
<load target="layout.scss" vars="$layout_scss_value" />
|
|
||||||
<load target="layout.js" />
|
|
||||||
|
|
||||||
<div class="skip"><a href="#content">{lang('skip_to_content')}</a></div>
|
|
||||||
<header class="layout_frame">
|
|
||||||
<div class="layout_header layout_canvas">
|
|
||||||
<h1>
|
|
||||||
<a href="<!--@if($layout_info->logo_url)-->{$layout_info->logo_url}<!--@elseif(Context::getDefaultUrl())-->{Context::getDefaultUrl()}<!--@else-->{getUrl('')}<!--@end-->" id="siteTitle">
|
|
||||||
<block cond="!Context::getSiteTitle() && !$layout_info->LOGO_IMG && !$layout_info->LOGO_TEXT">Rhymix</block>
|
|
||||||
<block cond="Context::getSiteTitle() && !$layout_info->LOGO_IMG && !$layout_info->LOGO_TEXT">{Context::getSiteTitle()}</block>
|
|
||||||
<img src="{$layout_info->LOGO_IMG}" alt="{$layout_info->LOGO_TEXT}" cond="$layout_info->LOGO_IMG">
|
|
||||||
<block cond="!$layout_info->LOGO_IMG && $layout_info->LOGO_TEXT">{$layout_info->LOGO_TEXT}</block>
|
|
||||||
</a>
|
|
||||||
</h1>
|
|
||||||
<div id="layout_menu_toggle">
|
|
||||||
<button class="layout_mobile_menu layout_mobile_menu--htx" data-target="layout_gnb">
|
|
||||||
<span>{lang('common.menu')}</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="hside layout_pc">
|
|
||||||
<div class="side">
|
|
||||||
<!--// Search -->
|
|
||||||
<form action="{getUrl()}" method="get" class="layout_search" no-error-return-url="true">
|
|
||||||
<input type="hidden" name="vid" value="{$vid}" />
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<input type="hidden" name="act" value="IS" />
|
|
||||||
<input type="text" name="is_keyword" value="{$is_keyword}" required placeholder="{lang('common.cmd_search')}" title="{lang('common.cmd_search')}" />
|
|
||||||
<input type="submit" value="{lang('common.cmd_search')}" />
|
|
||||||
</form>
|
|
||||||
<!--// Search -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!--// Menu -->
|
|
||||||
<nav class="layout_frame layout_menu" id="layout_gnb">
|
|
||||||
<ul>
|
|
||||||
<li class="layout_dropdown">
|
|
||||||
<a href="{getUrl('act', 'dispMemberLoginForm')}" cond="!$is_logged">{sprintf(lang('simple_hello'), lang('simple_guest'))}</a>
|
|
||||||
<ul class="layout_dropdown-content" cond="!$is_logged">
|
|
||||||
<li><a href="{getUrl('act', 'dispMemberLoginForm')}">{lang('member.cmd_login')}...</a></li>
|
|
||||||
<li><a href="{getUrl('act', 'dispMemberSignUpForm')}" cond="$member_config->enable_join === 'Y'">{lang('member.cmd_signup')}...</a></li>
|
|
||||||
</ul>
|
|
||||||
<a href="{getUrl('act', 'dispMemberInfo', 'member_srl', '')}" cond="$is_logged">{sprintf(lang('simple_hello'), $logged_info->nick_name)}</a>
|
|
||||||
<ul class="layout_dropdown-content" cond="$is_logged">
|
|
||||||
<li><a href="{getUrl('act', 'dispMemberInfo', 'member_srl', '')}">{lang('member.cmd_view_member_info')}</a></li>
|
|
||||||
<li cond="$logged_info->is_admin == 'Y'">
|
|
||||||
<a href="{getUrl('', 'module','admin')}">{lang('common.cmd_management')}</a>
|
|
||||||
</li>
|
|
||||||
<li><a href="{getUrl('act', 'dispMemberLogout')}">{lang('member.cmd_logout')}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li loop="$GNB->list=>$key1,$val1" class="<!--@if($val1['selected'])-->active <!--@endif--><!--@if($val1['list'])-->layout_dropdown<!--@endif-->">
|
|
||||||
<a href="{$val1['href']}" target="_blank"|cond="$val1['open_window']=='Y'"><span>{$val1['link']}</span></a>
|
|
||||||
<ul cond="$val1['list']" class="layout_dropdown-content">
|
|
||||||
<li loop="$val1['list']=>$key2,$val2" class="active"|cond="$val2['selected']">
|
|
||||||
<a href="{$val2['href']}" target="_blank"|cond="$val2['open_window']=='Y'">{$val2['link']}</a>
|
|
||||||
<ul cond="$val2['list']">
|
|
||||||
<li loop="$val2['list']=>$key3,$val3" class="active"|cond="$val3['selected']"><a href="{$val3['href']}" target="_blank"|cond="$val3['open_window']=='Y'">{$val3['link']}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li id="layout_search_link">
|
|
||||||
<a href="{getUrl('vid', $vid, 'mid', $mid, 'act', 'IS')}"><span>{lang('common.cmd_search')}</span></a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
<!--// Menu -->
|
|
||||||
</header>
|
|
||||||
<div class="layout_frame layout_body<!--@if(in_array($layout_info->left_space, array('Y', 'YM')))--> layout_left_content<!--@end-->">
|
|
||||||
<!--// VISUAL -->
|
|
||||||
<div class="layout_body layout_canvas">
|
|
||||||
<!--// CONTENT -->
|
|
||||||
<div class="layout_content layout_left_content" cond="in_array($layout_info->left_space, array('Y', 'YM'))">
|
|
||||||
<section class="layout_left layout_dropdown" loop="$GNB->list=>$key1,$val1" cond="$layout_info->left_space == 'YM' && $val1['selected']">
|
|
||||||
<h1><a href="{$val1['href']}" target="_blank"|cond="$val1['open_window']=='Y'">{$val1['link']}</a></h1>
|
|
||||||
<ul class="layout_dropdown-content" cond="$val1['list']">
|
|
||||||
<li loop="$val1['list']=>$key2,$val2"><a href="{$val2['href']}" class="active"|cond="$val2['selected']" target="_blank"|cond="$val2['open_window']=='Y'">{$val2['link']}</a>
|
|
||||||
<ul cond="$val2['list']">
|
|
||||||
<li loop="$val2['list']=>$key3,$val3" class="active"|cond="$val3['selected']"><a href="{$val3['href']}" target="_blank"|cond="$val3['open_window']=='Y'">{$val3['link']}</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</section>
|
|
||||||
<section class="layout_left" cond="trim($layout_info->left_content)">
|
|
||||||
{$layout_info->left_content}
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
<div class="layout_content" id="content">
|
|
||||||
{$layout_info->before_content|noescape}
|
|
||||||
{$content|noescape}
|
|
||||||
{$layout_info->after_content|noescape}
|
|
||||||
</div>
|
|
||||||
<!--// CONTENT -->
|
|
||||||
<div class="layout_outright" cond="trim($layout_info->right_content)">
|
|
||||||
{$layout_info->right_content}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<footer class="layout_frame layout_footer">
|
|
||||||
<div class="layout_footer layout_canvas">
|
|
||||||
<!--// Footer Menu -->
|
|
||||||
<nav class="layout_menu" id="layout_fnb" cond="is_countable($FNB->list) && count($FNB->list)">
|
|
||||||
<ul>
|
|
||||||
<li loop="$FNB->list=>$key1,$val1" class="footer_menu">
|
|
||||||
<a href="{$val1['href']}" target="_blank"|cond="$val1['open_window']=='Y'"><span>{$val1['link']}</span></a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
<!--// Footer Menu -->
|
|
||||||
<!--// Language -->
|
|
||||||
<div class="layout_language" cond="is_countable($lang_supported) && count($lang_supported) > 1">
|
|
||||||
<button type="button" class="toggle">Language: {$lang_supported[$lang_type]}</button>
|
|
||||||
<ul class="selectLang">
|
|
||||||
<li loop="$lang_supported=>$key,$val" cond="$key!= $lang_type"><button type="button" onclick="doChangeLangType('{$key}');return false;">{$val}</button></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<p cond="!$layout_info->FOOTER">Powered by <a href="https://rhymix.org" target="_blank" rel="noopener">Rhymix</a></p>
|
|
||||||
<p cond="$layout_info->FOOTER">{$layout_info->FOOTER}</p>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
|
|
@ -1,129 +0,0 @@
|
||||||
jQuery(function($)
|
|
||||||
{
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
/* adjust the width of the right member menu */
|
|
||||||
var menu_width = function()
|
|
||||||
{
|
|
||||||
if($('#layout_gnb>ul>li:first-child').width() > 50)
|
|
||||||
{
|
|
||||||
$('#layout_gnb>ul>li:first-child .layout_dropdown-content, #layout_gnb>ul>li:first-child .layout_dropdown-content a').css('width', $('#layout_gnb>ul>li:first-child').width()).css('min-width', $('#layout_gnb>ul>li:first-child').width());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$( window ).resize(function()
|
|
||||||
{
|
|
||||||
if($('#layout_gnb>ul>li:first-child').width() > 50)
|
|
||||||
{
|
|
||||||
menu_width();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
menu_width();
|
|
||||||
|
|
||||||
/* mobile hamburger menu toggle */
|
|
||||||
$(".layout_mobile_menu").each(function()
|
|
||||||
{
|
|
||||||
$( this ).click(function( event )
|
|
||||||
{
|
|
||||||
event.preventDefault();
|
|
||||||
layout_toggleMenuOpener( $( this ).get(0) );
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
/* detect scrolling up or down to hide or show the hamburger menu */
|
|
||||||
var previousScroll = 0;
|
|
||||||
var simpleScrolled = false;
|
|
||||||
var scrollThreshold = 5;
|
|
||||||
|
|
||||||
/* detect window scrolling */
|
|
||||||
$( window ).scroll(function()
|
|
||||||
{
|
|
||||||
simpleScrolled = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
/* refresh window scrolling per 250 ms, and show/hide the menu */
|
|
||||||
setInterval(function()
|
|
||||||
{
|
|
||||||
if (simpleScrolled) {
|
|
||||||
display_menu();
|
|
||||||
simpleScrolled = false;
|
|
||||||
}
|
|
||||||
}, 250);
|
|
||||||
|
|
||||||
/* function to show/hide the menu */
|
|
||||||
var display_menu = function()
|
|
||||||
{
|
|
||||||
var currentScroll = $(window).scrollTop();
|
|
||||||
|
|
||||||
if (currentScroll > previousScroll)
|
|
||||||
{
|
|
||||||
if($("#layout_menu_toggle").css( 'position' ) === 'fixed')
|
|
||||||
{
|
|
||||||
$("#layout_menu_toggle").fadeOut();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if($("#layout_menu_toggle").css( 'position' ) === 'fixed')
|
|
||||||
{
|
|
||||||
$("#layout_menu_toggle").fadeIn(400, function() {
|
|
||||||
$("#layout_menu_toggle").css('display', '')
|
|
||||||
});
|
|
||||||
;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
previousScroll = currentScroll;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* keyboard accessibility for dropdown menu */
|
|
||||||
$(".layout_dropdown").each(function()
|
|
||||||
{
|
|
||||||
$( this ).focusin( function( event )
|
|
||||||
{
|
|
||||||
$('*[data-dropdown="active"]').css('display', '').attr('data-dropdown', '').parents('li.layout_dropdown').removeClass('layout_focus');
|
|
||||||
$( this ).addClass('layout_focus');
|
|
||||||
$( this ).find("ul.layout_dropdown-content").css('display', 'block').attr('data-dropdown', 'active');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$('body').focusin(function( event )
|
|
||||||
{
|
|
||||||
if (!$(event.target).parents('.layout_dropdown').is('.layout_dropdown'))
|
|
||||||
{
|
|
||||||
$('*[data-dropdown="active"]').css('display', '').attr('data-dropdown', '').parents('li.layout_dropdown').removeClass('layout_focus');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
/* keyboard accessibility for dropdown menu END */
|
|
||||||
|
|
||||||
function layout_toggleMenuOpener(obj)
|
|
||||||
{
|
|
||||||
if(obj.classList.contains("is-active") === true)
|
|
||||||
{
|
|
||||||
var targetMenu = $(obj).attr('data-target');
|
|
||||||
$('#' + targetMenu).slideUp('300', function()
|
|
||||||
{
|
|
||||||
$(this).css('display', '');
|
|
||||||
});
|
|
||||||
|
|
||||||
obj.classList.remove("is-active");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
var targetMenu = $(obj).attr('data-target');
|
|
||||||
if(targetMenu == 'layout_gnb')
|
|
||||||
{
|
|
||||||
$('#layout_gnb>ul>li:first-child .layout_dropdown-content, #layout_gnb>ul>li:first-child .layout_dropdown-content a').css('width', '').css('min-width', '');
|
|
||||||
$('html,body').animate({scrollTop:0}, 200);
|
|
||||||
}
|
|
||||||
$('#' + targetMenu).slideDown('300');
|
|
||||||
|
|
||||||
obj.classList.add("is-active");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Language Select
|
|
||||||
$('.layout_language>.toggle').click(function()
|
|
||||||
{
|
|
||||||
$('.selectLang').toggle();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
@ -1,673 +0,0 @@
|
||||||
@charset "UTF-8";
|
|
||||||
@function layoutGrayContrast($color, $ratio) {
|
|
||||||
$grayColor: grayscale($color);
|
|
||||||
$grayValue: red($grayColor);
|
|
||||||
|
|
||||||
@if $grayValue > ($ratio * 255) {
|
|
||||||
$return: 0;
|
|
||||||
} @else {
|
|
||||||
$return: 255;
|
|
||||||
}
|
|
||||||
|
|
||||||
@return rgb($return, $return, $return);
|
|
||||||
}
|
|
||||||
|
|
||||||
@mixin layout_box($shadow){
|
|
||||||
background: #fff;
|
|
||||||
box-shadow: 0 $shadow/2 $shadow rgba(0,0,0,0.16), 0 $shadow/2 $shadow rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
margin:0;
|
|
||||||
padding:0;
|
|
||||||
background-color: darken($grey, 35%);
|
|
||||||
}
|
|
||||||
/* Skin to content */
|
|
||||||
.skip {
|
|
||||||
background-color: lighten($grey, 35%);
|
|
||||||
position: relative;
|
|
||||||
margin:0
|
|
||||||
}
|
|
||||||
|
|
||||||
.skip>a {
|
|
||||||
display: block;
|
|
||||||
text-align: center;
|
|
||||||
line-height:28px;
|
|
||||||
height:0px;
|
|
||||||
overflow: hidden
|
|
||||||
}
|
|
||||||
|
|
||||||
.skip>a:focus {
|
|
||||||
height: auto
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Layout */
|
|
||||||
.layout_canvas {
|
|
||||||
position: relative;
|
|
||||||
max-width:1050px;
|
|
||||||
width:100%;
|
|
||||||
margin:0 auto;
|
|
||||||
}
|
|
||||||
header.layout_frame, footer.layout_frame, .layout_frame.layout_left_content .layout_left_content{
|
|
||||||
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',Arial,Helvetica,sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
.layout_header {
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_header>.hside {
|
|
||||||
position: absolute;
|
|
||||||
right:5px;
|
|
||||||
top: 25px
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_body.layout_frame {
|
|
||||||
background-color: $content_color;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.layout_body {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.layout_outright{
|
|
||||||
position: absolute;
|
|
||||||
top: 15px;
|
|
||||||
right: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 160px;
|
|
||||||
@include layout_box(2px);
|
|
||||||
margin-right:-170px;
|
|
||||||
}
|
|
||||||
.layout_left_content.layout_frame>.layout_canvas {
|
|
||||||
div.layout_content {
|
|
||||||
float:left;
|
|
||||||
width: 20%;
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding-right:5px;
|
|
||||||
section.layout_left{
|
|
||||||
margin: 2px 2px 10px;
|
|
||||||
@include layout_box(2px);
|
|
||||||
h1 {
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
font-weight: 400;
|
|
||||||
margin: 0;
|
|
||||||
position: relative;
|
|
||||||
a {
|
|
||||||
display: block;
|
|
||||||
margin: 0;
|
|
||||||
padding: 14px 16px;
|
|
||||||
font-size: 14px;
|
|
||||||
color: $primary-color;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ul{
|
|
||||||
list-style: none;
|
|
||||||
&.layout_dropdown-content {
|
|
||||||
display: block;
|
|
||||||
position: relative;
|
|
||||||
z-index: none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
a {
|
|
||||||
display: block;
|
|
||||||
padding: 14px 16px;
|
|
||||||
text-decoration: none;
|
|
||||||
color: #000;
|
|
||||||
&.active {
|
|
||||||
background: #e0e0e0;
|
|
||||||
}
|
|
||||||
&:hover, &:active, &:focus {
|
|
||||||
background: #eeeeee;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ul {
|
|
||||||
padding-left: 10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#content {
|
|
||||||
width: 80%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_header:after,
|
|
||||||
.layout_body:after {
|
|
||||||
content:"";
|
|
||||||
display: block;
|
|
||||||
clear: both
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_content {
|
|
||||||
overflow: auto;
|
|
||||||
padding:10px 0px;
|
|
||||||
|
|
||||||
img {
|
|
||||||
max-width:100%;
|
|
||||||
height: auto
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_content>*:first-child {
|
|
||||||
margin-top:0
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Header */
|
|
||||||
header.layout_frame {
|
|
||||||
position:relative;
|
|
||||||
background-color: lighten($primary-color, 10%);
|
|
||||||
z-index: 1;
|
|
||||||
box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
|
|
||||||
.layout_header>h1 {
|
|
||||||
margin:0 auto;
|
|
||||||
padding:20px 5px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 10%), 0.710);
|
|
||||||
a {
|
|
||||||
font-size:32px;
|
|
||||||
text-decoration: none;
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 10%), 0.710);
|
|
||||||
padding:0 5px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#layout_menu_toggle {
|
|
||||||
width:90px;
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* .layout_footer */
|
|
||||||
.layout_footer {
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding: 13px 7px;
|
|
||||||
background-color: darken($grey, 35%);
|
|
||||||
color: lighten($grey, 30%);
|
|
||||||
p {
|
|
||||||
font-size:12px
|
|
||||||
}
|
|
||||||
a {
|
|
||||||
font-weight: bold;
|
|
||||||
text-decoration: none;
|
|
||||||
color: lighten($primary_color, 31%);
|
|
||||||
&:hover, &:active, &:focus {
|
|
||||||
text-decoration: underline
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Search */
|
|
||||||
.layout_header{
|
|
||||||
.layout_search {
|
|
||||||
display: inline-block;
|
|
||||||
vertical-align: bottom;
|
|
||||||
margin:0
|
|
||||||
}
|
|
||||||
input {
|
|
||||||
font-size:12px;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
border-radius: 0;
|
|
||||||
}
|
|
||||||
input[type="text"] {
|
|
||||||
width: 126px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin: 0;
|
|
||||||
padding: 8px 8px 6px 8px;
|
|
||||||
position: relative;
|
|
||||||
display: inline-block;
|
|
||||||
outline: none;
|
|
||||||
border-radius: 0;
|
|
||||||
border: none;
|
|
||||||
background: lighten($primary-color, 20%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 20%), 0.710);
|
|
||||||
&:hover, &:active, &:focus {
|
|
||||||
background: lighten($primary-color, 50%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 50%), 0.710);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
input[type="submit"] {
|
|
||||||
vertical-align: bottom;
|
|
||||||
background: lighten($primary-color,15%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 15%), 0.710);
|
|
||||||
border: none;
|
|
||||||
height:32px;
|
|
||||||
padding:0 15px;
|
|
||||||
margin:0;
|
|
||||||
&:hover, &:active, &:focus {
|
|
||||||
background:$primary-color;
|
|
||||||
color: layoutGrayContrast($primary-color, 0.710);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* GNB */
|
|
||||||
.layout_menu {
|
|
||||||
background-color: lighten($grey, 31%);
|
|
||||||
ul {
|
|
||||||
list-style-type: none;
|
|
||||||
overflow: hidden;
|
|
||||||
max-width:1050px;
|
|
||||||
margin:0 auto;
|
|
||||||
padding: 0;
|
|
||||||
&.layout_dropdown-content ul{
|
|
||||||
padding-left:10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
li a, .dropbtn {
|
|
||||||
display: inline-block;
|
|
||||||
color: black;
|
|
||||||
text-align: center;
|
|
||||||
padding: 14px 16px;
|
|
||||||
text-decoration: none;
|
|
||||||
line-height: 1;
|
|
||||||
}
|
|
||||||
li.active>a {
|
|
||||||
background-color: lighten($primary-color, 15%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 15%), 0.710);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.layout_menu>ul{
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
.layout_menu>ul>li {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
#layout_gnb>ul>li:first-child {
|
|
||||||
float: right;
|
|
||||||
|
|
||||||
}
|
|
||||||
header.layout_frame .layout_menu{
|
|
||||||
li:hover,
|
|
||||||
li:focus,
|
|
||||||
li:active,
|
|
||||||
.layout_focus {
|
|
||||||
background-color: lighten($grey, 40%);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.layout_menu li a:hover,
|
|
||||||
.layout_menu li a:focus,
|
|
||||||
.layout_menu li a:active,
|
|
||||||
.layout_dropdown:hover .dropbtn,
|
|
||||||
.layout_dropdown:focus .dropbtn,
|
|
||||||
.layout_dropdown:active .dropbtn,
|
|
||||||
.layout_language li:hover button,
|
|
||||||
.layout_language li:focus button,
|
|
||||||
.layout_language li:active button {
|
|
||||||
background-color: $primary-color;
|
|
||||||
color: layoutGrayContrast($primary-color, 0.710);
|
|
||||||
}
|
|
||||||
.layout_menu {
|
|
||||||
li.layout_dropdown {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_dropdown-content {
|
|
||||||
display: none;
|
|
||||||
position: absolute;
|
|
||||||
background-color: lighten($grey, 40%);
|
|
||||||
z-index: 1000;
|
|
||||||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_dropdown-content a {
|
|
||||||
color: black;
|
|
||||||
padding: 12px 16px;
|
|
||||||
text-decoration: none;
|
|
||||||
min-width: 160px;
|
|
||||||
display: block;
|
|
||||||
text-align: left;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
.
|
|
||||||
.layout_dropdown-content a:hover,
|
|
||||||
.layout_dropdown-content a:active,
|
|
||||||
.layout_dropdown-content a:focus {
|
|
||||||
display: block;
|
|
||||||
background-color: lighten($primary-color, 10%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 10%), 0.710);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_dropdown:hover .layout_dropdown-content,
|
|
||||||
.layout_dropdown:active .layout_dropdown-content,
|
|
||||||
.layout_dropdown:focus .layout_dropdown-content,
|
|
||||||
.layout_dropdown a:hover ~ .layout_dropdown-content,
|
|
||||||
.layout_dropdown a:active ~ .layout_dropdown-content,
|
|
||||||
.layout_dropdown a:focus ~ .layout_dropdown-content,
|
|
||||||
.layout_dropdown layout_dropdown-content:hover,
|
|
||||||
.layout_dropdown layout_dropdown-content:active,
|
|
||||||
.layout_dropdown layout_dropdown-content:focus {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#layout_fnb{
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_footer {
|
|
||||||
.layout_menu li a, .dropbtn {
|
|
||||||
color: lighten($grey, 10%);
|
|
||||||
font-weight: normal;
|
|
||||||
text-decoration: none;
|
|
||||||
padding: 14px 0px;
|
|
||||||
}
|
|
||||||
.layout_menu li a>span {
|
|
||||||
padding: 0px 16px;
|
|
||||||
border-right: 1px solid lighten($grey, 10%);
|
|
||||||
}
|
|
||||||
.layout_menu li:first-child{
|
|
||||||
margin-left:-16px;
|
|
||||||
}
|
|
||||||
.layout_menu li:last-child a>span {
|
|
||||||
border-right: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu li a:hover,
|
|
||||||
.layout_menu li a:focus,
|
|
||||||
.layout_menu li a:active{
|
|
||||||
background-color: transparent;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Language */
|
|
||||||
.layout_language{
|
|
||||||
display: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 15px;
|
|
||||||
}
|
|
||||||
.layout_language button {
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
.layout_language ul::before {
|
|
||||||
content: "";
|
|
||||||
display: block;
|
|
||||||
clear: both;
|
|
||||||
}
|
|
||||||
.layout_language ul {
|
|
||||||
display: none;
|
|
||||||
float:right;
|
|
||||||
width:120px;
|
|
||||||
clear:both;
|
|
||||||
margin: 0px 0px 10px;
|
|
||||||
padding: 0;
|
|
||||||
z-index: 1000;
|
|
||||||
box-shadow: 0px 8px 16px 0px rgba(255,255,255,0.2);
|
|
||||||
}
|
|
||||||
.layout_language .toggle{
|
|
||||||
background:none;
|
|
||||||
display: block;
|
|
||||||
float: right;
|
|
||||||
width:120px;
|
|
||||||
border:0;
|
|
||||||
color:#fff;
|
|
||||||
cursor:pointer;
|
|
||||||
vertical-align:top;
|
|
||||||
text-align:right;
|
|
||||||
padding:0;
|
|
||||||
height:45px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_language li{
|
|
||||||
list-style:none;
|
|
||||||
background: lighten($grey, 40%);
|
|
||||||
button {
|
|
||||||
display:block;
|
|
||||||
color: black;
|
|
||||||
background: lighten($grey, 40%);
|
|
||||||
padding: 12px 16px;
|
|
||||||
text-decoration: none;
|
|
||||||
width: 100%;
|
|
||||||
display: block;
|
|
||||||
text-align: left;
|
|
||||||
box-sizing: border-box;
|
|
||||||
border:0;
|
|
||||||
cursor:pointer;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Hamberger menu http://callmenick.com/post/animating-css-only-hamburger-menu-icons Licensed under the MIT license, http://www.opensource.org/licenses/mit-license.php Copyright 2014, Call Me Nick http://callmenick.com */
|
|
||||||
.layout_mobile_menu {
|
|
||||||
display: block;
|
|
||||||
position: relative;
|
|
||||||
overflow: hidden;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
width: 90px;
|
|
||||||
height: 90px;
|
|
||||||
font-size: 0;
|
|
||||||
text-indent: -9999px;
|
|
||||||
appearance: none;
|
|
||||||
box-shadow: none;
|
|
||||||
border-radius: none;
|
|
||||||
border: none;
|
|
||||||
cursor: pointer;
|
|
||||||
transition: background 0.3s;
|
|
||||||
span {
|
|
||||||
display: block;
|
|
||||||
position: absolute;
|
|
||||||
top: 41px;
|
|
||||||
left: 17px;
|
|
||||||
right: 17px;
|
|
||||||
height: 8px;
|
|
||||||
background: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
span::before,
|
|
||||||
span::after {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
left: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 8px;
|
|
||||||
background-color: #fff;
|
|
||||||
content: "";
|
|
||||||
}
|
|
||||||
|
|
||||||
span::before {
|
|
||||||
top: -19px;
|
|
||||||
}
|
|
||||||
|
|
||||||
span::after {
|
|
||||||
bottom: -19px;
|
|
||||||
}
|
|
||||||
&:focus {
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.layout_mobile_menu--htx {
|
|
||||||
background-color: $primary-color;
|
|
||||||
span {
|
|
||||||
transition: background 0s 0.3s;
|
|
||||||
}
|
|
||||||
span::before,
|
|
||||||
span::after {
|
|
||||||
transition-duration: 0.3s, 0.3s;
|
|
||||||
transition-delay: 0.3s, 0s;
|
|
||||||
}
|
|
||||||
|
|
||||||
span::before {
|
|
||||||
transition-property: top, transform;
|
|
||||||
}
|
|
||||||
|
|
||||||
span::after {
|
|
||||||
transition-property: bottom, transform;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* active state, i.e. menu open */
|
|
||||||
.layout_mobile_menu--htx.is-active {
|
|
||||||
background-color: darken( $primary-color, 10% );
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_mobile_menu--htx.is-active span {
|
|
||||||
background: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_mobile_menu--htx.is-active span::before {
|
|
||||||
top: 0;
|
|
||||||
transform: rotate(45deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_mobile_menu--htx.is-active span::after {
|
|
||||||
bottom: 0;
|
|
||||||
transform: rotate(-45deg);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_mobile_menu--htx.is-active span::before,
|
|
||||||
.layout_mobile_menu--htx.is-active span::after {
|
|
||||||
transition-delay: 0s, 0.3s;
|
|
||||||
}
|
|
||||||
#layout_search_link {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 750px) {
|
|
||||||
#layout_menu_toggle, #layout_search_link {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_header>h1 {
|
|
||||||
/* Menu position option */
|
|
||||||
@if $menu_position == 'left_right' {
|
|
||||||
padding:20px 5px 20px 95px;
|
|
||||||
} @else {
|
|
||||||
padding:20px 95px 20px 5px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_header>h1>a {
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 10%), 0.710);
|
|
||||||
}
|
|
||||||
|
|
||||||
#layout_menu_toggle {
|
|
||||||
position: fixed;
|
|
||||||
top:0;
|
|
||||||
|
|
||||||
/* Menu position option */
|
|
||||||
@if $menu_position == 'left_right' {
|
|
||||||
left:0;
|
|
||||||
} @else {
|
|
||||||
right:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
z-index:1001;
|
|
||||||
opacity: 0.9;
|
|
||||||
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
|
|
||||||
}
|
|
||||||
.layout_left_content.layout_frame>.layout_canvas {
|
|
||||||
div.layout_left_content {
|
|
||||||
display:none;
|
|
||||||
}
|
|
||||||
#content{
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* GNB */
|
|
||||||
.layout_menu {
|
|
||||||
display: none;
|
|
||||||
font-size:15px;
|
|
||||||
width:100%;
|
|
||||||
height: auto;
|
|
||||||
clear: both;
|
|
||||||
ul {
|
|
||||||
list-style-type: none;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu>ul>li, #layout_gnb>ul>li:first-child {
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu li a, .dropbtn {
|
|
||||||
display: block;
|
|
||||||
color: #000;
|
|
||||||
text-align: left;
|
|
||||||
padding: 15px;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu li.active>a {
|
|
||||||
background-color: lighten($primary-color, 15%);
|
|
||||||
color: layoutGrayContrast(lighten($primary-color, 15%), 0.710);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu li a:hover, .layout_dropdown:hover .dropbtn,
|
|
||||||
.layout_menu li a:focus, .layout_dropdown:focus .dropbtn {
|
|
||||||
background-color: $primary-color;
|
|
||||||
color: layoutGrayContrast($primary-color, 10%, 0.710);
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu li.layout_dropdown {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_menu .layout_dropdown-content {
|
|
||||||
display: block;
|
|
||||||
position: relative;
|
|
||||||
background-color: lighten($grey, 35%);
|
|
||||||
color: layoutGrayContrast(lighten($grey, 35%), 0.710);
|
|
||||||
width: 100%;
|
|
||||||
min-width: 100%;
|
|
||||||
box-shadow: none;
|
|
||||||
z-index:1;
|
|
||||||
a {
|
|
||||||
background-color: lighten($grey, 35%);
|
|
||||||
color: layoutGrayContrast(lighten($grey, 35%), 0.710);
|
|
||||||
padding: 15px 30px;
|
|
||||||
text-decoration: none;
|
|
||||||
display: block;
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_footer .layout_menu {
|
|
||||||
display: block;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_footer .layout_menu li a>span {
|
|
||||||
border-right: none;
|
|
||||||
}
|
|
||||||
.layout_footer .layout_menu li:first-child{
|
|
||||||
margin-left:0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_footer .layout_menu ul {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout_language {
|
|
||||||
margin-top: 15px;
|
|
||||||
ul {
|
|
||||||
display: none;
|
|
||||||
float:none;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
.toggle{
|
|
||||||
display: block;
|
|
||||||
float: none;
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* PC only */
|
|
||||||
.layout_pc {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 8.5 KiB |
|
|
@ -1,28 +0,0 @@
|
||||||
{@ $communication_popup = TRUE;}
|
|
||||||
<load target="filter/add_friend.xml" />
|
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->cmd_add_friend}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/simple_world/add_friend/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="addFriend" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationAddFriend" />
|
|
||||||
<input type="hidden" name="target_srl" value="{$target_info->member_srl}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/simple_world/add_friend/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="n_name">{$lang->nick_name}</label>
|
|
||||||
<input type="text" disabled="disabled" name="nick_name" id="n_name" value="{$target_info->nick_name}" title="{lang('common.user_id')}" />
|
|
||||||
<label for="friend_group_srl">{$lang->friend_group}<a class="pos-right" href="{getUrl('act','dispCommunicationAddFriendGroup')}" onclick="popopen(this.href);return false;">{$lang->cmd_add_friend_group}</a></label>
|
|
||||||
<select name="friend_group_srl" id="friend_group_srl">
|
|
||||||
<option value="">{$lang->default_friend_group}</option>
|
|
||||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}">{$val->title}</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<div class="control-group">
|
|
||||||
<input type="submit" value="{lang('communication.cmd_add_friend')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
{@ $communication_popup = TRUE;}
|
|
||||||
<include target="./common_header.html" />
|
|
||||||
<load target="js/communication.js" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>
|
|
||||||
<!--@if($friend_group->friend_group_srl)-->
|
|
||||||
{$lang->cmd_rename_friend_group}
|
|
||||||
<!--@else-->
|
|
||||||
{$lang->cmd_add_friend_group}
|
|
||||||
<!--@end-->
|
|
||||||
</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/simple_world/add_friend_group/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="addFriendGroup" action="./" method="post" class="form-horizontal">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationAddFriendGroup" />
|
|
||||||
<input type="hidden" name="friend_group_srl" value="{$friend_group->friend_group_srl}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/simple_world/add_friend_group/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="title">{$lang->msg_insert_group_name}</label>
|
|
||||||
<input name="title" id="title" type="text" value="{htmlspecialchars($friend_group->title, ENT_COMPAT | ENT_HTML401, 'UTF-8', false)}"/>
|
|
||||||
</div>
|
|
||||||
<div class="control-group">
|
|
||||||
<input cond="$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_modify}" />
|
|
||||||
<input cond="!$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_insert}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
</section>
|
|
||||||
|
|
@ -1,81 +0,0 @@
|
||||||
<!--// responsible layout -->
|
|
||||||
<!--@if($communication_popup === TRUE)-->
|
|
||||||
{@Context::addMetaTag("viewport", "width=device-width, user-scalable=yes")}
|
|
||||||
<!--@endif-->
|
|
||||||
|
|
||||||
<load target="js/communication.js" />
|
|
||||||
<!--// Check layout. If it is Simple World, select layout primary colors as a primary color of this skin -->
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type === 'select' || $layout_info->extra_var->customized_primary_color->type === 'colorpicker'">
|
|
||||||
{@
|
|
||||||
if(!$layout_info->primary_color)
|
|
||||||
$layout_info->primary_color = 'red';
|
|
||||||
if(!$layout_info->primary_color && $layout_info->customized_primary_color)
|
|
||||||
$layout_info->primary_color = 'customized';
|
|
||||||
if(!$layout_info->customized_primary_color)
|
|
||||||
$layout_info->customized_primary_color = '#f44336';
|
|
||||||
}
|
|
||||||
</block>
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type !== 'select' && $layout_info->extra_var->customized_primary_color->type !== 'colorpicker'">
|
|
||||||
{@$layout_info->primary_color = 'red';}
|
|
||||||
</block>
|
|
||||||
{@
|
|
||||||
$material_colors = array(
|
|
||||||
'red' => '#f44336',
|
|
||||||
'crimson' => '#aa0000',
|
|
||||||
'pink' => '#e91e63',
|
|
||||||
'purple' => '#9c27b0',
|
|
||||||
'deep-purple' => '#673ab7',
|
|
||||||
'indigo' => '#3f51b5',
|
|
||||||
'deep-blue' => '#00397f',
|
|
||||||
'blue' => '#2196f3',
|
|
||||||
'light-blue' => '#03a9f4',
|
|
||||||
'cyan' => '#00bcd4',
|
|
||||||
'teal' => '#009688',
|
|
||||||
'green' => '#4caf50',
|
|
||||||
'light-green' => '#8bc34a',
|
|
||||||
'lime' => '#cddc39',
|
|
||||||
'yellow' => '#ffeb3b',
|
|
||||||
'amber' => '#ffc107',
|
|
||||||
'orange' => '#ff9800',
|
|
||||||
'deep-orange' => '#ff5722',
|
|
||||||
'brown' => '#795548',
|
|
||||||
'grey' => '#9e9e9e',
|
|
||||||
'blue-grey' => '#607d8b',
|
|
||||||
'black' => '#000000',
|
|
||||||
'white' => '#ffffff',
|
|
||||||
'customized' => $layout_info->customized_primary_color,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
<!--// Load styles -->
|
|
||||||
{@$colorset = $material_colors[$member_config->colorset];}
|
|
||||||
{@$skin_color = $material_colors[$layout_info->primary_color];}
|
|
||||||
<block cond="$colorset">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", trim($colorset)) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = trim($colorset)}
|
|
||||||
<!--@if(strlen(trim($colorset)) === 4)-->
|
|
||||||
{@$skin_color = trim($colorset)[1].trim($colorset)[1].trim($colorset)[2].trim($colorset)[2].trim($colorset)[3].trim($colorset)[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
<block cond="!$skin_color">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", $layout_info->primary_color) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = $layout_info->primary_color}
|
|
||||||
<!--@if(strlen($layout_info->primary_color) === 4)-->
|
|
||||||
{@$skin_color = $layout_info->primary_color[1].$layout_info->primary_color[1].$layout_info->primary_color[2].$layout_info->primary_color[2].$layout_info->primary_color[3].$layout_info->primary_color[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
{@Context::set('simple_less_value', array('red' => hexdec(substr($skin_color, 1, 2)), 'green' => hexdec(substr($skin_color, 3, 2)), 'blue' => hexdec(substr($skin_color, 5, 2)) ))}
|
|
||||||
<load target="css/css.less" vars="$simple_less_value" />
|
|
||||||
<section class="rx_simple_communication">
|
|
||||||
<div class="rx_simple_tab" cond="$communication_popup !== TRUE && $is_logged && $logged_info->menu_list && (!$member_srl || $member_srl == $logged_info->member_srl)">
|
|
||||||
<ul class="rx_simple_tab">
|
|
||||||
<li loop="$logged_info->menu_list=>$key,$val" class="active"|cond="$key==$act">
|
|
||||||
<a href="{getUrl('', 'act',$key, 'mid', $mid, 'vid', $vid)}"><span>{lang($val)}</span></a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
@ -1,381 +0,0 @@
|
||||||
@charset "UTF-8";
|
|
||||||
/*
|
|
||||||
@method .text-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a text color according to WCAG 2.0 contrast guideline. The calcualtion of contrast follows the formula on the guideline.
|
|
||||||
*/
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; lighten(@bright_color, 5%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; @bright_color; darken(@dark_color, 5%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@method .bg-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a background color, which has less contrast background color than WCAG 2.0 contrast guideline. On the WCAG 2.0 guideline, bigger string can have less contrast as 3.0.
|
|
||||||
*/
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; lighten(@bright_color,3%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; @bright_color; darken(@dark_color, 3%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* As LESS library in Rhymix substitude variables as an strings, convert colors as the color objects of LESS. */
|
|
||||||
@color: rgb(@red, @green, @blue);
|
|
||||||
|
|
||||||
|
|
||||||
/* Member skin container, default settings */
|
|
||||||
section.rx_simple_communication {
|
|
||||||
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',Arial,Helvetica,sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
text-align: justify;
|
|
||||||
margin: 8px 0px;
|
|
||||||
padding: 0 5px;
|
|
||||||
color: #000;
|
|
||||||
|
|
||||||
/* As this file handle some wild-selectors to control display settings, hide inline script and style codes. */
|
|
||||||
script, style
|
|
||||||
{
|
|
||||||
display:none!important;
|
|
||||||
}
|
|
||||||
a, button, input, button, select, textarea, span, div, p {
|
|
||||||
font-size: 1em;
|
|
||||||
}
|
|
||||||
a
|
|
||||||
{
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
/* Horizontal align */
|
|
||||||
.pos-left
|
|
||||||
{
|
|
||||||
position:absolute;
|
|
||||||
left:0;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
.pos-right
|
|
||||||
{
|
|
||||||
position:absolute;
|
|
||||||
right:0;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
/* message; error, info, update */
|
|
||||||
.rx_member-notice, .rx_member-notice.info
|
|
||||||
{
|
|
||||||
.bg-contrast(#000; lighten(@color, 5%); darken(@color, 5%); 5.0);
|
|
||||||
color: #000;
|
|
||||||
padding: 15px;
|
|
||||||
margin:0;
|
|
||||||
margin-top:0;
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
.rx_member-notice.error
|
|
||||||
{
|
|
||||||
background: #fff3e0;
|
|
||||||
.text-contrast(#fff3e0);
|
|
||||||
}
|
|
||||||
.rx_member-notice.update
|
|
||||||
{
|
|
||||||
background: #e8f5e9;
|
|
||||||
.text-contrast(#e8f5e9);
|
|
||||||
}
|
|
||||||
.rx_member-notice>*
|
|
||||||
{
|
|
||||||
padding: 0;
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
/* member forms */
|
|
||||||
.signin
|
|
||||||
{
|
|
||||||
max-width:400px;
|
|
||||||
margin:30px auto;
|
|
||||||
box-sizing:border-box
|
|
||||||
}
|
|
||||||
.sw-body
|
|
||||||
{
|
|
||||||
box-sizing:border-box;
|
|
||||||
background:#ffffff;
|
|
||||||
margin: 0 0 20px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
&>*
|
|
||||||
{
|
|
||||||
padding: 20px;
|
|
||||||
margin:0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1
|
|
||||||
{
|
|
||||||
margin:0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
color: #000;
|
|
||||||
font-size: 1.5em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.pagination {
|
|
||||||
ul, ul li {
|
|
||||||
display:inline-block;
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border:0;
|
|
||||||
}
|
|
||||||
ul
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
text-align:center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.pagination ul li>a, .sw-footer>a
|
|
||||||
{
|
|
||||||
display: inline-block;
|
|
||||||
background: #fff;
|
|
||||||
font-size: 1em;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
margin-top: 1px;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
color: #000;
|
|
||||||
padding: 8px;
|
|
||||||
min-width:25px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.pagination ul li.active>a
|
|
||||||
{
|
|
||||||
.bg-contrast(#000; lighten(@color, 5%); darken(@color, 5%), 2.0);
|
|
||||||
font-weight:bold;
|
|
||||||
color:#000;
|
|
||||||
}
|
|
||||||
form div.control-group>*, .sw-body dl>*
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
position:relative;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width:100%;
|
|
||||||
min-height:25px;
|
|
||||||
margin:0px;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
form
|
|
||||||
{
|
|
||||||
div.control-group>*:first-child
|
|
||||||
{
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
div.control-group>input, div.control-group>select, div.control-group>a, div.control-group>button{
|
|
||||||
border: 1px solid #bdbdbd;
|
|
||||||
border-radius: 0;
|
|
||||||
font-size:1em;
|
|
||||||
line-height: 18px;
|
|
||||||
margin-top: 0;
|
|
||||||
padding:8px 8px 6px;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
min-height: 32px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.sw-body
|
|
||||||
{
|
|
||||||
dl>* {
|
|
||||||
list-style:none;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
dl dt, form>div.control-group>label, form>div.control-group>div.control-label
|
|
||||||
{
|
|
||||||
font-weight: bold;
|
|
||||||
border:0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
form
|
|
||||||
{
|
|
||||||
overflow: hidden;
|
|
||||||
width:100%;
|
|
||||||
white-space: normal;
|
|
||||||
box-sizing: border-box;
|
|
||||||
div.control-group, .sw-footer, .sw-anchor-buttons {
|
|
||||||
&>input[type="submit"], &>input.btn.dateRemover, &>a, &>button, &>select {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 8px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
text-shadow: none;
|
|
||||||
border:0;
|
|
||||||
background-color: #fff;
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
margin-top: 1px;
|
|
||||||
margin-bottom: 2px;
|
|
||||||
}
|
|
||||||
&>input[type="submit"], &>input.btn.dateRemover {
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 3.0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
form div.control-group>input[type="submit"], .sw-footer{
|
|
||||||
margin: 15px 0 0;
|
|
||||||
}
|
|
||||||
.sw-footer.sw-headers{
|
|
||||||
position:relative;
|
|
||||||
margin: 0 20px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
form.pos-left>div.control-group, form.pos-right>div.control-group {
|
|
||||||
input, select, a
|
|
||||||
{
|
|
||||||
display:inline-block;
|
|
||||||
float: left;
|
|
||||||
margin-top: 0;
|
|
||||||
margin-left: 5px;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Tab over the main content. */
|
|
||||||
div.rx_simple_tab{
|
|
||||||
background: #ffffff;
|
|
||||||
margin: 5px 0;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
ul.rx_simple_tab{
|
|
||||||
list-style: outside none none;
|
|
||||||
margin: 0;
|
|
||||||
display: block;
|
|
||||||
padding: 6px 0;
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
}
|
|
||||||
ul.rx_simple_tab>li {
|
|
||||||
display:inline-block;
|
|
||||||
height: 40px;
|
|
||||||
line-height: 18px;
|
|
||||||
position: relative;
|
|
||||||
a {
|
|
||||||
display:inline-block;
|
|
||||||
color: #000;
|
|
||||||
font-weight: 400;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 40px;
|
|
||||||
text-decoration: none;
|
|
||||||
&:hover, &:focus {
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
span {
|
|
||||||
border-left: 1px solid #e0e0e0;
|
|
||||||
padding: 0 15px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
&:first-child a span {
|
|
||||||
border-left: 0 none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ul.rx_simple_tab>li.active a, .sw-anchor-buttons a.active{
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.sw-footer.sw-anchor-buttons {
|
|
||||||
text-align:right;
|
|
||||||
a, button, input, select{
|
|
||||||
display:inline-block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* The list of document style */
|
|
||||||
.rx_sw_list .cont_a {
|
|
||||||
color: #222;
|
|
||||||
display: block;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 0.667em 70px 0.733em 15px;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-decoration: none;
|
|
||||||
&.no_delete {
|
|
||||||
padding-right: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover, &:focus {
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.content_basic{
|
|
||||||
position:relative;
|
|
||||||
display:inline-block;
|
|
||||||
max-width:100%;
|
|
||||||
vertical-align: middle;
|
|
||||||
overflow:hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
.content_subinfo
|
|
||||||
{
|
|
||||||
color: #9e9e9e;
|
|
||||||
font-size: 0.94em;
|
|
||||||
margin: 0 3px 0 7px;
|
|
||||||
overflow:hidden;
|
|
||||||
}
|
|
||||||
ul.rx_sw_list {
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
li {
|
|
||||||
position:relative;
|
|
||||||
border-top: 1px solid #e0e0e0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
.content_delete {
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
right:0;
|
|
||||||
&>input {
|
|
||||||
margin: 10px;
|
|
||||||
width:20px;
|
|
||||||
height:20px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* button hover */
|
|
||||||
form div.control-group>input[type="submit"], .sw-footer>a, .sw-anchor-buttons input[type="submit"], .sw-anchor-buttons a, .sw-anchor-buttons button, .pagination ul li>a{
|
|
||||||
&:hover, &:focus{
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 4.0);
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 2px 4px rgba(0,0,0,0.16), 0 2px 4px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
<filter name="add_friend" module="communication" act="procCommunicationAddFriend" confirm_msg_code="confirm_submit">
|
|
||||||
<form />
|
|
||||||
<parameter />
|
|
||||||
<response callback_func="completeAddFriend">
|
|
||||||
<tag name="error" />
|
|
||||||
<tag name="message" />
|
|
||||||
<tag name="member_srl" />
|
|
||||||
</response>
|
|
||||||
</filter>
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
<filter name="add_friend_group" module="communication" act="procCommunicationAddFriendGroup" confirm_msg_code="confirm_submit">
|
|
||||||
<form>
|
|
||||||
<node target="title" required="true" minlength="1" maxlength="240" />
|
|
||||||
</form>
|
|
||||||
<parameter />
|
|
||||||
<response callback_func="completeAddFriendGroup">
|
|
||||||
<tag name="error" />
|
|
||||||
<tag name="message" />
|
|
||||||
</response>
|
|
||||||
</filter>
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
<filter name="delete_checked_friend" module="communication" act="procCommunicationDeleteFriend" confirm_msg_code="confirm_delete" />
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
<filter name="delete_checked_message" module="communication" act="procCommunicationDeleteMessages" confirm_msg_code="confirm_delete" />
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
<filter name="delete_friend_group" module="communication" act="procCommunicationDeleteFriendGroup" confirm_msg_code="confirm_delete" />
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
<filter name="move_friend" module="communication" act="procCommunicationMoveFriend" confirm_msg_code="confirm_move" />
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
<filter name="send_message" module="communication" act="procCommunicationSendMessage" confirm_msg_code="confirm_submit">
|
|
||||||
<form>
|
|
||||||
<node target="title" required="true" minlength="1" maxlength="240" />
|
|
||||||
<node target="content" required="true" minlength="1" />
|
|
||||||
</form>
|
|
||||||
<parameter />
|
|
||||||
<response callback_func="completeSendMessage">
|
|
||||||
<tag name="error" />
|
|
||||||
<tag name="message" />
|
|
||||||
<tag name="redirect_url" />
|
|
||||||
</response>
|
|
||||||
</filter>
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
<filter name="update_allow_message" module="communication" act="procCommunicationUpdateAllowMessage">
|
|
||||||
<form />
|
|
||||||
<parameter />
|
|
||||||
<response />
|
|
||||||
</filter>
|
|
||||||
|
|
@ -1,72 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<load target="filter/delete_friend_group.xml" />
|
|
||||||
<load target="filter/move_friend.xml" />
|
|
||||||
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = $lang->cmd_view_friend}</h1>
|
|
||||||
<div class="rx_member-notice">{lang('common.total')}: {number_format($total_count)}</div>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/simple_world/frineds/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<div class="sw-footer sw-anchor-buttons sw-headers">
|
|
||||||
<form action="./" method="get" class="pos-left">
|
|
||||||
<input type="hidden" name="act" value="dispCommunicationFriend" />
|
|
||||||
<input type="hidden" name="message_type" value="{$message_type}" />
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<div class="control-group">
|
|
||||||
<select name="friend_group_srl" id="jumpMenu">
|
|
||||||
<option value="">{$lang->default_friend_group}</option>
|
|
||||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}" selected="selected"|cond="$val->friend_group_srl == $friend_group_srl">{$val->title}</option>
|
|
||||||
</select>
|
|
||||||
<input type="submit" value="{$lang->cmd_view_selected_frend_group}">
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<form ruleset="deleteCheckedFriend" id="fo_friend_list" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationDeleteFriend" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/simple_world/frineds/1" />
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$friend_list => $no,$val">
|
|
||||||
<a href="#popup_menu_area" class="cont_a member_{$val->target_srl}">
|
|
||||||
<span class="content_basic member_{$val->target_srl}">
|
|
||||||
<span class="content_title member_{$val->target_srl}">
|
|
||||||
{escape($val->nick_name)}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo member_{$val->target_srl}">
|
|
||||||
{escape($val->group_title?$val->group_title:$lang->default_friend_group)} / {zdate($val->regdate,"Y-m-d H:i")}
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
<span class="content_delete">
|
|
||||||
<input name="friend_srl_list[]" type="checkbox" value="{$val->friend_srl}" />
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<select name="target_friend_group_srl" id="target_friend_group_srl" cond="count($friend_group_list)" style="margin:0">
|
|
||||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}">{$val->title}</option>
|
|
||||||
</select>
|
|
||||||
<button type="submit" name="act" cond="count($friend_group_list)" value="procCommunicationMoveFriend">{$lang->cmd_move}</button>
|
|
||||||
<button type="submit" name="act" value="procCommunicationDeleteFriend">{$lang->cmd_delete}</button>
|
|
||||||
<button type="button" value="{getUrl('','module','communication','act','dispCommunicationAddFriendGroup')}" onclick="popopen(this.value);return false;">{$lang->cmd_add_friend_group}</button>
|
|
||||||
<button type="button" cond="count($friend_group_list)" onclick="doRenameFriendGroup();return false;">{$lang->cmd_rename_friend_group}</button>
|
|
||||||
<button type="button" cond="count($friend_group_list)" onclick="doDeleteFriendGroup();return false;">{$lang->cmd_delete_friend_group}</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','document_srl','')}" class="direction">« {$lang->first_page}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'document_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'document_srl','')}" class="direction">{$lang->last_page} »</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<form action="./" method="get" id="for_delete_group">
|
|
||||||
<input type="hidden" name="friend_group_srl" value="" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/simple_world/frineds/1" />
|
|
||||||
</form>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,103 +0,0 @@
|
||||||
/* 쪽지 발송 */
|
|
||||||
function completeSendMessage(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
window.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
function doSendMessage(member_srl, message_srl) {
|
|
||||||
if(typeof(message_srl)=='undefined') message_srl = 0;
|
|
||||||
var url = request_uri.setQuery('module','communication').setQuery('act','dispCommunicationSendMessage').setQuery('receiver_srl',member_srl).setQuery('message_srl',message_srl);
|
|
||||||
popopen(url, 'sendMessage');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 개별 쪽지 삭제 */
|
|
||||||
function doDeleteMessage(message_srl) {
|
|
||||||
if(!message_srl) return;
|
|
||||||
|
|
||||||
var params = new Array();
|
|
||||||
params['message_srl'] = message_srl;
|
|
||||||
exec_xml('communication', 'procCommunicationDeleteMessage', params, completeDeleteMessage);
|
|
||||||
}
|
|
||||||
|
|
||||||
function completeDeleteMessage(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
location.href = current_url.setQuery('message_srl','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 개별 쪽지 보관 */
|
|
||||||
function doStoreMessage(message_srl) {
|
|
||||||
if(!message_srl) return;
|
|
||||||
|
|
||||||
var params = new Array();
|
|
||||||
params['message_srl'] = message_srl;
|
|
||||||
exec_xml('communication', 'procCommunicationStoreMessage', params, completeStoreMessage);
|
|
||||||
}
|
|
||||||
|
|
||||||
function completeStoreMessage(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
location.href = current_url.setQuery('message_srl','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 추가 후 */
|
|
||||||
function completeAddFriend(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
var member_srl = ret_obj['member_srl'];
|
|
||||||
if(opener && opener.loaded_member_menu_list) {
|
|
||||||
opener.loaded_member_menu_list[ret_obj['member_srl']] = '';
|
|
||||||
}
|
|
||||||
window.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 그룹 추가 후 */
|
|
||||||
function completeAddFriendGroup(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
if(opener) opener.location.href = opener.location.href;
|
|
||||||
window.close();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 그룹 삭제 */
|
|
||||||
function doDeleteFriendGroup() {
|
|
||||||
var friend_group_srl = jQuery('#target_friend_group_srl option:selected').val();
|
|
||||||
if(!friend_group_srl) return;
|
|
||||||
|
|
||||||
var fo_obj = jQuery('#for_delete_group').get(0);
|
|
||||||
fo_obj.friend_group_srl.value = friend_group_srl;
|
|
||||||
|
|
||||||
procFilter(fo_obj, delete_friend_group);
|
|
||||||
}
|
|
||||||
|
|
||||||
function completeDeleteFriendGroup(ret_obj) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
location.href = current_url.setQuery('friend_group_srl','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 그룹의 이름 변경 */
|
|
||||||
function doRenameFriendGroup() {
|
|
||||||
var friend_group_srl = jQuery('#target_friend_group_srl option:selected').val();
|
|
||||||
if(!friend_group_srl) return;
|
|
||||||
|
|
||||||
popopen("./?module=communication&act=dispCommunicationAddFriendGroup&friend_group_srl="+friend_group_srl);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 그룹 이동 */
|
|
||||||
function doMoveFriend() {
|
|
||||||
var fo_obj = jQuery('#fo_friend_list').get(0);
|
|
||||||
procFilter(fo_obj, move_friend);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 친구 그룹 선택 */
|
|
||||||
function doJumpFriendGroup() {
|
|
||||||
var sel_val = jQuery('#jumpMenu option:selected').val();
|
|
||||||
location.href = current_url.setQuery('friend_group_srl', sel_val);
|
|
||||||
}
|
|
||||||
|
|
||||||
jQuery(function($){
|
|
||||||
$('.__submit_group button[type=submit]').click(function(e){
|
|
||||||
var sel_val = $('input[name="friend_srl_list[]"]:checked').length;
|
|
||||||
if(sel_val == 0)
|
|
||||||
{
|
|
||||||
e.preventDefault();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
@ -1,85 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<load target="filter/delete_checked_message.xml" />
|
|
||||||
<load target="filter/update_allow_message.xml" />
|
|
||||||
<section class="sw-body" cond="$message">
|
|
||||||
<h1>{escape($message->title)}</h1>
|
|
||||||
<div>
|
|
||||||
<a href="popup_menu_area" class="member_{$message->member_srl}">{$message->nick_name}</a> / {zdate($message->regdate, "Y-m-d H:i")}
|
|
||||||
</div>
|
|
||||||
<div class="rhymix_content xe_content">
|
|
||||||
{$message->content}
|
|
||||||
<!--@if(count($message_files))-->
|
|
||||||
<ul class="attachments">
|
|
||||||
<!--@foreach($message_files as $file)-->
|
|
||||||
<li><a href="{getUrl('')}{$file->download_url}">{$file->source_filename}</a> <span class="file_size">({FileHandler::filesize($file->file_size)})</li>
|
|
||||||
<!--@endforeach-->
|
|
||||||
</ul>
|
|
||||||
<!--@endif-->
|
|
||||||
</div>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<a cond="$message->message_type != 'S' && $message->member_srl != $logged_info->member_srl" href="#" onclick="doSendMessage('{$message->sender_srl}','{$message->message_srl}');">{$lang->cmd_reply_message}</a>
|
|
||||||
<a cond="$message->message_type == 'R'" href="#" onclick="doStoreMessage('{$message->message_srl}');">{$lang->cmd_store}</a>
|
|
||||||
<a href="#" onclick="doDeleteMessage('{$message->message_srl}');">{$lang->cmd_delete}</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1 loop="$lang->message_box => $key,$val" cond="$message_type == $key">{$val}</h1>
|
|
||||||
|
|
||||||
<div class="sw-footer sw-anchor-buttons sw-headers" cond="$message_type == 'R'">
|
|
||||||
<form action="./" method="POST" class="pos-left">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationUpdateAllowMessage" />
|
|
||||||
<input type="hidden" name="message_type" value="{$message_type}" />
|
|
||||||
|
|
||||||
<div class="control-group">
|
|
||||||
<select name="allow_message">
|
|
||||||
<option loop="$lang->allow_message_type => $key,$val" value="{$key}" selected="selected"|cond="$logged_info->allow_message==$key">{$val}</option>
|
|
||||||
</select>
|
|
||||||
<input type="submit" value="{$lang->cmd_save}">
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
<div style="clear:both"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<form action="./" method="post" id="fo_message_list">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationDeleteMessages" />
|
|
||||||
<input type="hidden" name="message_type" value="{$message_type}" />
|
|
||||||
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$message_list => $key, $val">
|
|
||||||
<a href="{getUrl('message_srl',$val->message_srl)}" class="cont_a">
|
|
||||||
<span class="content_basic">
|
|
||||||
<span class="content_title">
|
|
||||||
{escape($val->title)}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{escape($val->nick_name)} / {zdate($val->regdate,"Y-m-d H:i")}<block cond="$val->readed=='Y'"> / {zdate($val->readed_date,"Y-m-d H:i")}</block>
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
<span class="content_delete">
|
|
||||||
<input name="message_srl_list[]" type="checkbox" value="{$val->message_srl}" />
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<label for="check_all">{$lang->cmd_select_all}</label>
|
|
||||||
<input name="check_all" id="check_all" type="checkbox" onclick="XE.checkboxToggleAll('message_srl_list[]', {wrap:'fo_message_list'})"/>
|
|
||||||
<input type="submit" value="{$lang->cmd_delete}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<a loop="$lang->message_box => $key,$val" href="{getUrl('message_type', $key, 'message_srl', '')}" class="active"|cond="$message_type == $key">{$val}</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','document_srl','')}" class="direction">« {$lang->first_page}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'document_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'document_srl','')}" class="direction">{$lang->last_page} »</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
{@ $communication_popup = TRUE}
|
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body" cond="$message">
|
|
||||||
<h1>{escape($message->title)}</h1>
|
|
||||||
<div>
|
|
||||||
<a href="popup_menu_area" class="member_{$message->member_srl}">{$message->nick_name}</a> / {zdate($message->regdate, "Y-m-d H:i")}
|
|
||||||
</div>
|
|
||||||
<div class="rhymix_content xe_content">
|
|
||||||
{$message->content|noescape}
|
|
||||||
</div>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<a cond="$message->message_type != 'S' && $message->member_srl != $logged_info->member_srl" href="#" onclick="doSendMessage('{$message->sender_srl}','{$message->message_srl}');">{$lang->cmd_reply_message}</a>
|
|
||||||
<a cond="$message->message_type == 'R'" href="#" onclick="doStoreMessage('{$message->message_srl}');">{$lang->cmd_store}</a>
|
|
||||||
<a href="#" onclick="doDeleteMessage('{$message->message_srl}');">{$lang->cmd_delete}</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,36 +0,0 @@
|
||||||
{@ $communication_popup = TRUE}
|
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->cmd_send_message}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/simple_world/send_message/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="sendMessage" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="communication" />
|
|
||||||
<input type="hidden" name="act" value="procCommunicationSendMessage" />
|
|
||||||
<input type="hidden" name="content" value="{htmlspecialchars($source_message->content)}" />
|
|
||||||
<input type="hidden" name="receiver_srl" value="{$receiver_info->member_srl}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/simple_world/send_message/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="message_receiver">{$lang->receiver}</label>
|
|
||||||
<a id="message_receiver" href="#popup_menu_area" class="member_{$receiver_info->member_srl}">{$receiver_info->nick_name}</a>
|
|
||||||
<label for="message_title">{$lang->title}</label>
|
|
||||||
<input type="text" name="title" id="message_title" value="{$source_message->title}" />
|
|
||||||
<div class="rx_member-notice info" cond="$logged_info->allow_message !== 'Y'">
|
|
||||||
{$lang->warning}
|
|
||||||
<br>
|
|
||||||
<!--@if($logged_info->allow_message == 'F')-->
|
|
||||||
{$lang->msg_allow_message_friend}
|
|
||||||
<!--@elseif($logged_info->allow_message == 'N')-->
|
|
||||||
{$lang->msg_allow_meesage_Block}
|
|
||||||
<!--@end-->
|
|
||||||
<br>{$lang->msg_allow_message_please}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{$editor|noescape}
|
|
||||||
<div class="control-group">
|
|
||||||
<input type="submit" value="{$lang->cmd_send_message}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<skin version="0.2">
|
|
||||||
<title xml:lang="ko">네모의 꿈</title>
|
|
||||||
<title xml:lang="en">Rectangular World</title>
|
|
||||||
<description xml:lang="ko">
|
|
||||||
면과 선으로 이루어진 단순한 모양의 깔끔한 스킨
|
|
||||||
</description>
|
|
||||||
<description xml:lang="en">
|
|
||||||
Simple rectangular planes and shadows
|
|
||||||
</description>
|
|
||||||
<version>0.1</version>
|
|
||||||
<date>2017-04-30</date>
|
|
||||||
|
|
||||||
<author email_address="misol.kr@gmail.com" link="https://github.com/misol">
|
|
||||||
<name xml:lang="ko">misol</name>
|
|
||||||
<name xml:lang="en">misol</name>
|
|
||||||
</author>
|
|
||||||
</skin>
|
|
||||||
|
|
@ -1,47 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = lang('member.cmd_view_active_logins')}</h1>
|
|
||||||
<div class="rx_member-notice">
|
|
||||||
{lang('common.total')}: {number_format($total_count)}
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$active_logins => $no, $autologin_info">
|
|
||||||
{@ $autologin_info->user_agent = @json_decode($autologin_info->user_agent) ?: new stdClass()}
|
|
||||||
<span class="content_basic cont_a">
|
|
||||||
<span class="content_title">
|
|
||||||
{escape($autologin_info->user_agent->browser)} {escape($autologin_info->user_agent->version)} ({escape($autologin_info->user_agent->os)})
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{zdate($autologin_info->regdate, 'Y-m-d H:i')} ({$autologin_info->ipaddress})
|
|
||||||
</span>
|
|
||||||
<a class="delete_autologin" data-autologin-id="{$autologin_info->id}" data-autologin-key="{$autologin_info->autologin_key}" href="#">{$lang->cmd_delete}</a>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">‹ {lang('common.first_page')}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{lang('common.last_page')} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<a href="{getUrl('','module','module','act','dispModuleSelectList','id','target_module','type','single')}" onclick="popopen(this.href,'ModuleSelect');return false;">{lang('module.cmd_find_module')}</a>
|
|
||||||
<a href="{getUrl('selected_module_srl','')}" cond="$selected_module_srl">{lang('common.cmd_cancel')}</a>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
jQuery(function($) {
|
|
||||||
$("a.delete_autologin").on("click", function(event) {
|
|
||||||
event.preventDefault();
|
|
||||||
exec_json('member.procMemberDeleteAutologin', { autologin_id: $(this).data("autologin-id"), autologin_key: $(this).data("autologin-key") }, function(data) {
|
|
||||||
window.location.reload();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = lang('member.cmd_view_own_comment')}</h1>
|
|
||||||
<div class="rx_member-notice">
|
|
||||||
{lang('common.total')}: {number_format($total_count)}
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$comment_list => $key, $item">
|
|
||||||
<a href="{getUrl('','document_srl',$item->document_srl)}#comment_{$item->comment_srl}" class="cont_a no_delete" target="_blank">
|
|
||||||
<span class="content_basic">
|
|
||||||
<span class="content_title">
|
|
||||||
{$item->getSummary() ?: lang('comment.msg_no_text_comment')}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{$item->getRegdate("Y-m-d")}
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">‹ {lang('common.first_page')}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{lang('common.last_page')} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
</section>
|
|
||||||
|
|
@ -1,76 +0,0 @@
|
||||||
<load target="js/member.js" />
|
|
||||||
<!--// Check layout. If it is Simple World, select layout primary colors as a primary color of this skin -->
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type === 'select' || $layout_info->extra_var->customized_primary_color->type === 'colorpicker'">
|
|
||||||
{@
|
|
||||||
if(!$layout_info->primary_color)
|
|
||||||
$layout_info->primary_color = 'red';
|
|
||||||
if(!$layout_info->primary_color && $layout_info->customized_primary_color)
|
|
||||||
$layout_info->primary_color = 'customized';
|
|
||||||
if(!$layout_info->customized_primary_color)
|
|
||||||
$layout_info->customized_primary_color = '#f44336';
|
|
||||||
}
|
|
||||||
</block>
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type !== 'select' && $layout_info->extra_var->customized_primary_color->type !== 'colorpicker'">
|
|
||||||
{@$layout_info->primary_color = 'red';}
|
|
||||||
</block>
|
|
||||||
{@
|
|
||||||
$material_colors = array(
|
|
||||||
'red' => '#f44336',
|
|
||||||
'crimson' => '#aa0000',
|
|
||||||
'pink' => '#e91e63',
|
|
||||||
'purple' => '#9c27b0',
|
|
||||||
'deep-purple' => '#673ab7',
|
|
||||||
'indigo' => '#3f51b5',
|
|
||||||
'deep-blue' => '#00397f',
|
|
||||||
'blue' => '#2196f3',
|
|
||||||
'light-blue' => '#03a9f4',
|
|
||||||
'cyan' => '#00bcd4',
|
|
||||||
'teal' => '#009688',
|
|
||||||
'green' => '#4caf50',
|
|
||||||
'light-green' => '#8bc34a',
|
|
||||||
'lime' => '#cddc39',
|
|
||||||
'yellow' => '#ffeb3b',
|
|
||||||
'amber' => '#ffc107',
|
|
||||||
'orange' => '#ff9800',
|
|
||||||
'deep-orange' => '#ff5722',
|
|
||||||
'brown' => '#795548',
|
|
||||||
'grey' => '#9e9e9e',
|
|
||||||
'blue-grey' => '#607d8b',
|
|
||||||
'black' => '#000000',
|
|
||||||
'white' => '#ffffff',
|
|
||||||
'customized' => $layout_info->customized_primary_color,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
<!--// Load styles -->
|
|
||||||
{@$colorset = $material_colors[$member_config->colorset];}
|
|
||||||
{@$skin_color = $material_colors[$layout_info->primary_color];}
|
|
||||||
<block cond="$colorset">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", trim($colorset)) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = trim($colorset)}
|
|
||||||
<!--@if(strlen(trim($colorset)) === 4)-->
|
|
||||||
{@$skin_color = trim($colorset)[1].trim($colorset)[1].trim($colorset)[2].trim($colorset)[2].trim($colorset)[3].trim($colorset)[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
<block cond="!$skin_color">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", $layout_info->primary_color) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = $layout_info->primary_color}
|
|
||||||
<!--@if(strlen($layout_info->primary_color) === 4)-->
|
|
||||||
{@$skin_color = $layout_info->primary_color[1].$layout_info->primary_color[1].$layout_info->primary_color[2].$layout_info->primary_color[2].$layout_info->primary_color[3].$layout_info->primary_color[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
{@Context::set('simple_less_value', array('red' => hexdec(substr($skin_color, 1, 2)), 'green' => hexdec(substr($skin_color, 3, 2)), 'blue' => hexdec(substr($skin_color, 5, 2)) ))}
|
|
||||||
<load target="css/css.less" vars="$simple_less_value" />
|
|
||||||
<section class="rx_simple_member">
|
|
||||||
<div class="rx_simple_tab" cond="$is_logged && $logged_info->menu_list && (!$member_srl || $member_srl == $logged_info->member_srl)">
|
|
||||||
<ul class="rx_simple_tab">
|
|
||||||
<li loop="$logged_info->menu_list=>$key,$val" class="active"|cond="$key==$act">
|
|
||||||
<a href="{getUrl('', 'act',$key, 'mid', $mid, 'vid', $vid)}"><span>{lang($val)}</span></a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
||||||
<section style="font-size: 14px;margin: 8px 0px;padding: 0 15px;">
|
|
||||||
<section style="box-sizing:border-box;background-color:#ffffff;margin: 0 0 20px;border: 1px solid #e0e0e0;">
|
|
||||||
<h1 style="border-bottom: 1px solid #e0e0e0;margin: 0;padding: 20px;">{lang('member.msg_confirm_account_info')}</h1>
|
|
||||||
<dl style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang('member.site')}</dt>
|
|
||||||
<dd style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">
|
|
||||||
<a href="{getUrl()}" target="_blank" style="color: #2196f3;text-decoration: none;">{getUrl()}</a>
|
|
||||||
</dd>
|
|
||||||
<block loop="$memberInfo=>$name,$value" cond="!is_object($value)&&!is_array($value)">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang($name)}</dt>
|
|
||||||
<dl style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{$value}</dl>
|
|
||||||
</block>
|
|
||||||
</dl>
|
|
||||||
<p style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
{lang('member.msg_confirm_account_comment')}<br />
|
|
||||||
<a href="{$auth_url}" target="_blank" style="color: #2196f3;text-decoration: none;">{$auth_url}</a>
|
|
||||||
</p>
|
|
||||||
</section>
|
|
||||||
</section>
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
||||||
<section style="font-size: 14px;margin: 8px 0px;padding: 0 15px;">
|
|
||||||
<section style="box-sizing:border-box;background-color:#ffffff;margin: 0 0 20px;border: 1px solid #e0e0e0;">
|
|
||||||
<h1 style="border-bottom: 1px solid #e0e0e0;margin: 0;padding: 20px;">{lang('member.msg_confirm_account_info')}</h1>
|
|
||||||
<dl style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang('member.site')}</dt>
|
|
||||||
<dd style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">
|
|
||||||
<a href="{getUrl()}" target="_blank" style="color: #2196f3;text-decoration: none;">{getUrl()}</a>
|
|
||||||
</dd>
|
|
||||||
<block loop="$memberInfo=>$name,$value" cond="!is_object($value)&&!is_array($value)">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang($name)}</dt>
|
|
||||||
<dl style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{$value}</dl>
|
|
||||||
</block>
|
|
||||||
</dl>
|
|
||||||
<p style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
{sprintf($lang->msg_confirm_email_address_change, $newEmail)}<br />
|
|
||||||
<a href="{$auth_url}" target="_blank" style="color: #2196f3;text-decoration: none;">{$auth_url}</a>
|
|
||||||
</p>
|
|
||||||
</section>
|
|
||||||
</section>
|
|
||||||
|
|
@ -1,279 +0,0 @@
|
||||||
@charset "UTF-8";
|
|
||||||
/* Automatically produced CSS file based on css.less by misol<misol.kr@gmail.com> with light blue (#03a9f4) as the primary color */
|
|
||||||
script, style {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
.rx_simple_member {
|
|
||||||
font-family: "맑은 고딕", "Apple SD Gothic Neo", "나눔고딕", NanumGothic, 'Nanum Gothic', Arial, Helvetica, sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
margin: 8px 0px;
|
|
||||||
padding: 0 5px;
|
|
||||||
}
|
|
||||||
.rx_simple_member a {
|
|
||||||
color: #03a9f4;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
.rx_simple_member .pos-right {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
.rx_member-notice,
|
|
||||||
.rx_member-notice.info {
|
|
||||||
background: #d4f1fe;
|
|
||||||
color: #000;
|
|
||||||
padding: 15px;
|
|
||||||
margin: 0;
|
|
||||||
margin-top: 0;
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
.rx_member-notice.error {
|
|
||||||
background: #fff3e0;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
.rx_member-notice.update {
|
|
||||||
background: #e8f5e9;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
.rx_member-notice>* {
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .signin {
|
|
||||||
max-width: 400px;
|
|
||||||
margin: 30px auto;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-body {
|
|
||||||
box-sizing: border-box;
|
|
||||||
background: #ffffff;
|
|
||||||
margin: 0 0 20px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-body>* {
|
|
||||||
padding: 20px;
|
|
||||||
margin: 0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-body h1 {
|
|
||||||
margin: 0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>*,
|
|
||||||
.rx_simple_member .sw-body dl>* {
|
|
||||||
display: block;
|
|
||||||
position: relative;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width: 100%;
|
|
||||||
min-height: 25px;
|
|
||||||
margin: 0px;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>*:first-child {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>input,
|
|
||||||
.rx_simple_member form div.control-group>select {
|
|
||||||
border: 1px solid #bdbdbd;
|
|
||||||
border-radius: 0;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin-top: 0;
|
|
||||||
padding: 8px 8px 6px;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-body dl>* {
|
|
||||||
list-style: none;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-body dl dt,
|
|
||||||
.rx_simple_member form>div.control-group>label,
|
|
||||||
.rx_simple_member form>div.control-group>div.control-label {
|
|
||||||
font-weight: bold;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member form {
|
|
||||||
overflow: hidden;
|
|
||||||
width: 100%;
|
|
||||||
white-space: normal;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>input[type="submit"],
|
|
||||||
.rx_simple_member form div.control-group>input.btn.dateRemover,
|
|
||||||
.rx_simple_member .sw-footer>a,
|
|
||||||
.rx_simple_member .sw-anchor-buttons a {
|
|
||||||
display: block;
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
darken: #000c11;
|
|
||||||
background: #2ebcfc;
|
|
||||||
font-weight: bold;
|
|
||||||
border: 0;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000c11;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>input[type="submit"],
|
|
||||||
.rx_simple_member .sw-footer {
|
|
||||||
margin: 20px 0 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member div.rx_simple_tab {
|
|
||||||
background: #ffffff;
|
|
||||||
margin: 5px 0;
|
|
||||||
height: 52px;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab {
|
|
||||||
list-style: outside none none;
|
|
||||||
margin: 0;
|
|
||||||
display: block;
|
|
||||||
overflow-x: auto;
|
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
padding: 6px 0px 100px;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li {
|
|
||||||
display: inline-block;
|
|
||||||
height: 40px;
|
|
||||||
line-height: 18px;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li a {
|
|
||||||
display: inline-block;
|
|
||||||
color: #000;
|
|
||||||
font-weight: 400;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 40px;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li a:hover,
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li a:focus,
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li.active a {
|
|
||||||
color: #14b4fc;
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li a span {
|
|
||||||
border-left: 1px solid #e0e0e0;
|
|
||||||
padding: 0 15px;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_simple_tab>li:first-child a span {
|
|
||||||
border-left: 0 none;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-footer.sw-anchor-buttons {
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-footer.sw-anchor-buttons>a {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list .cont_a {
|
|
||||||
color: #222;
|
|
||||||
display: block;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 0.667em 70px 0.733em 15px;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list .cont_a.no_delete {
|
|
||||||
padding-right: 15px;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list .cont_a:hover,
|
|
||||||
.rx_simple_member .rx_sw_list .cont_a:focus {
|
|
||||||
color: #14b4fc;
|
|
||||||
}
|
|
||||||
.rx_simple_member .content_basic {
|
|
||||||
position: relative;
|
|
||||||
display: inline-block;
|
|
||||||
max-width: 100%;
|
|
||||||
vertical-align: middle;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
.rx_simple_member .content_subinfo {
|
|
||||||
color: #9e9e9e;
|
|
||||||
font-size: 12px;
|
|
||||||
margin: 0 3px 0 7px;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.rx_simple_member ul.rx_sw_list {
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list li {
|
|
||||||
position: relative;
|
|
||||||
border-top: 1px solid #e0e0e0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list .content_delete {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
right: 2px;
|
|
||||||
}
|
|
||||||
.rx_simple_member .rx_sw_list .content_delete button {
|
|
||||||
background: #92dcfe;
|
|
||||||
font-size: 14px;
|
|
||||||
border: 0;
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
}
|
|
||||||
.rx_simple_member .pagination ul,
|
|
||||||
.rx_simple_member .pagination ul li {
|
|
||||||
display: inline-block;
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_member .pagination ul {
|
|
||||||
display: block;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.rx_simple_member .pagination ul li>a,
|
|
||||||
.rx_simple_member .sw-footer>a {
|
|
||||||
display: inline-block;
|
|
||||||
background: #fff;
|
|
||||||
font-size: 14px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000;
|
|
||||||
font-weight: bold;
|
|
||||||
padding: 10px;
|
|
||||||
min-width: 25px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.rx_simple_member .sw-footer>a {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
.rx_simple_member .pagination ul li.active>a {
|
|
||||||
background: #47c4fd;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
.rx_simple_member form div.control-group>input[type="submit"]:hover,
|
|
||||||
.rx_simple_member form div.control-group>input.btn.dateRemover:hover,
|
|
||||||
.rx_simple_member .sw-footer>a:hover,
|
|
||||||
.rx_simple_member .sw-anchor-buttons a:hover,
|
|
||||||
.rx_simple_member .pagination ul li>a:hover,
|
|
||||||
.rx_simple_member .rx_sw_list .content_delete button:hover,
|
|
||||||
.rx_simple_member form div.control-group>input[type="submit"]:focus,
|
|
||||||
.rx_simple_member form div.control-group>input.btn.dateRemover:focus,
|
|
||||||
.rx_simple_member .sw-footer>a:focus,
|
|
||||||
.rx_simple_member .sw-anchor-buttons a:focus,
|
|
||||||
.rx_simple_member .pagination ul li>a:focus,
|
|
||||||
.rx_simple_member .rx_sw_list .content_delete button:focus {
|
|
||||||
background: #027cb3;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #fff;
|
|
||||||
box-shadow: 0 2px 4px rgba(0,0,0,0.16), 0 2px 4px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,368 +0,0 @@
|
||||||
@charset "UTF-8";
|
|
||||||
/*
|
|
||||||
@method .text-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a text color according to WCAG 2.0 contrast guideline. The calcualtion of contrast follows the formula on the guideline.
|
|
||||||
*/
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; lighten(@bright_color, 5%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; @bright_color; darken(@dark_color, 5%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@method .bg-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a background color, which has less contrast background color than WCAG 2.0 contrast guideline. On the WCAG 2.0 guideline, bigger string can have less contrast as 3.0.
|
|
||||||
*/
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; lighten(@bright_color,3%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; @bright_color; darken(@dark_color, 3%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* As LESS library in Rhymix substitude variables as an strings, convert colors as the color objects of LESS. */
|
|
||||||
@color: rgb(@red, @green, @blue);
|
|
||||||
|
|
||||||
/* As this file handle some wild-selectors to control display settings, hide inline script and style codes. */
|
|
||||||
script, style
|
|
||||||
{
|
|
||||||
display:none!important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Member skin container, default settings */
|
|
||||||
.rx_simple_member
|
|
||||||
{
|
|
||||||
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',Arial,Helvetica,sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
text-align: justify;
|
|
||||||
margin: 8px 0px;
|
|
||||||
padding: 0 5px;
|
|
||||||
|
|
||||||
a
|
|
||||||
{
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
/* Horizontal align */
|
|
||||||
.pos-right
|
|
||||||
{
|
|
||||||
position:absolute;
|
|
||||||
right:0
|
|
||||||
}
|
|
||||||
|
|
||||||
/* message; error, info, update */
|
|
||||||
.rx_member-notice
|
|
||||||
{
|
|
||||||
&, &.info
|
|
||||||
{
|
|
||||||
.bg-contrast(#000; lighten(@color, 5%); darken(@color, 5%); 5.0);
|
|
||||||
color: #000;
|
|
||||||
padding: 15px;
|
|
||||||
margin:0;
|
|
||||||
margin-top:0;
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.error
|
|
||||||
{
|
|
||||||
background: #fff3e0;
|
|
||||||
.text-contrast(#fff3e0);
|
|
||||||
}
|
|
||||||
&.update
|
|
||||||
{
|
|
||||||
background: #e8f5e9;
|
|
||||||
.text-contrast(#e8f5e9);
|
|
||||||
}
|
|
||||||
&>*
|
|
||||||
{
|
|
||||||
padding: 0;
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* member forms */
|
|
||||||
.signin
|
|
||||||
{
|
|
||||||
max-width:400px;
|
|
||||||
margin:30px auto;
|
|
||||||
box-sizing:border-box
|
|
||||||
}
|
|
||||||
.sw-body
|
|
||||||
{
|
|
||||||
box-sizing:border-box;
|
|
||||||
background:#ffffff;
|
|
||||||
margin: 0 0 20px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
|
|
||||||
&>*
|
|
||||||
{
|
|
||||||
padding: 20px;
|
|
||||||
margin:0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
& h1
|
|
||||||
{
|
|
||||||
margin:0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
form div.control-group>*, .sw-body dl>*
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
position:relative;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width:100%;
|
|
||||||
min-height:25px;
|
|
||||||
margin:0px;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
form div.control-group>*:first-child
|
|
||||||
{
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
form div.control-group>input, form div.control-group>select, .agreement .text
|
|
||||||
{
|
|
||||||
border: 1px solid #bdbdbd;
|
|
||||||
border-radius: 0;
|
|
||||||
font-size:14px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin-top: 0;
|
|
||||||
padding:8px 8px 6px;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
}
|
|
||||||
.sw-body dl>*
|
|
||||||
{
|
|
||||||
list-style:none;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.sw-body dl dt, form>div.control-group>label, form>div.control-group>div.control-label, .title
|
|
||||||
{
|
|
||||||
font-weight: bold;
|
|
||||||
border:0;
|
|
||||||
}
|
|
||||||
form
|
|
||||||
{
|
|
||||||
overflow: hidden;
|
|
||||||
width:100%;
|
|
||||||
white-space: normal;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
form div.control-group>input[type="submit"], form div.control-group>input.btn.dateRemover, .sw-footer>a, .sw-anchor-buttons a
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 3.0);
|
|
||||||
font-weight: bold;
|
|
||||||
text-shadow: none;
|
|
||||||
border:0;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
form div.control-group>input[type="submit"], .sw-footer{
|
|
||||||
margin: 20px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Tab over the main content. */
|
|
||||||
div.rx_simple_tab
|
|
||||||
{
|
|
||||||
background: #ffffff;
|
|
||||||
margin: 5px 0;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
ul.rx_simple_tab
|
|
||||||
{
|
|
||||||
list-style: outside none none;
|
|
||||||
margin: 0;
|
|
||||||
display: block;
|
|
||||||
padding: 6px 0;
|
|
||||||
text-decoration: none;
|
|
||||||
|
|
||||||
&>li
|
|
||||||
{
|
|
||||||
display:inline-block;
|
|
||||||
height: 40px;
|
|
||||||
line-height: 18px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
a
|
|
||||||
{
|
|
||||||
display:inline-block;
|
|
||||||
color: #000;
|
|
||||||
font-weight: 400;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 40px;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover, a:focus, &.active a {
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
a span {
|
|
||||||
border-left: 1px solid #e0e0e0;
|
|
||||||
padding: 0 15px;
|
|
||||||
}
|
|
||||||
&:first-child a span {
|
|
||||||
border-left: 0 none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.sw-footer.sw-anchor-buttons {
|
|
||||||
text-align:right;
|
|
||||||
|
|
||||||
&>a {
|
|
||||||
display:inline-block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* The list of document style */
|
|
||||||
.rx_sw_list
|
|
||||||
{
|
|
||||||
.cont_a
|
|
||||||
{
|
|
||||||
color: #222;
|
|
||||||
display: block;
|
|
||||||
letter-spacing: -1px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 0.667em 70px 0.733em 15px;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-decoration: none;
|
|
||||||
&.no_delete {
|
|
||||||
padding-right: 15px;
|
|
||||||
}
|
|
||||||
&:hover, &:focus {
|
|
||||||
.text-contrast(#fff; darken(@color,5%); lighten(@color,5%));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content_basic{
|
|
||||||
position:relative;
|
|
||||||
display:inline-block;
|
|
||||||
max-width:100%;
|
|
||||||
vertical-align: middle;
|
|
||||||
overflow:hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
.content_subinfo
|
|
||||||
{
|
|
||||||
color: #9e9e9e;
|
|
||||||
font-size: 12px;
|
|
||||||
margin: 0 3px 0 7px;
|
|
||||||
overflow:hidden;
|
|
||||||
}
|
|
||||||
ul.rx_sw_list {
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
|
|
||||||
li {
|
|
||||||
position:relative;
|
|
||||||
border-top: 1px solid #e0e0e0;
|
|
||||||
overflow: hidden;
|
|
||||||
padding:0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.rx_sw_list .content_delete{
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
right:2px;
|
|
||||||
button{
|
|
||||||
background: lighten(@color, 5%);
|
|
||||||
font-size: 14px;
|
|
||||||
border:0;
|
|
||||||
.text-contrast(lighten(@color, 5%));
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.pagination ul
|
|
||||||
{
|
|
||||||
&, .pagination ul li
|
|
||||||
{
|
|
||||||
display:inline-block;
|
|
||||||
list-style: outside none none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
border:0;
|
|
||||||
}
|
|
||||||
display:block;
|
|
||||||
text-align:center;
|
|
||||||
}
|
|
||||||
.pagination ul li>a, .sw-footer>a
|
|
||||||
{
|
|
||||||
display: inline-block;
|
|
||||||
background: #fff;
|
|
||||||
font-size: 14px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000;
|
|
||||||
font-weight: bold;
|
|
||||||
padding: 10px;
|
|
||||||
min-width:25px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.sw-footer>a
|
|
||||||
{
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
.pagination ul li.active>a
|
|
||||||
{
|
|
||||||
.bg-contrast(#000; lighten(@color, 5%); darken(@color, 5%), 2.0);
|
|
||||||
font-weight:bold;
|
|
||||||
color:#000;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* button hover */
|
|
||||||
form div.control-group>input[type="submit"]:hover, form div.control-group>input.btn.dateRemover:hover, .sw-footer>a:hover, .sw-anchor-buttons a:hover, .pagination ul li>a:hover, .rx_sw_list .content_delete button:hover,
|
|
||||||
form div.control-group>input[type="submit"]:focus, form div.control-group>input.btn.dateRemover:focus, .sw-footer>a:focus, .sw-anchor-buttons a:focus, .pagination ul li>a:focus, .rx_sw_list .content_delete button:focus
|
|
||||||
{
|
|
||||||
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 4.0);
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 2px 4px rgba(0,0,0,0.16), 0 2px 4px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,39 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = lang('member.cmd_view_own_document')}</h1>
|
|
||||||
<div class="rx_member-notice">
|
|
||||||
{lang('common.total')}: {number_format($total_count)}
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$document_list => $key, $item">
|
|
||||||
<a href="{getUrl('','document_srl',$item->document_srl)}" class="cont_a no_delete" target="_blank">
|
|
||||||
<span class="content_basic">
|
|
||||||
<span class="content_title">
|
|
||||||
{escape($item->getTitle())}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{$item->getRegdate("Y-m-d")}
|
|
||||||
<!--@if($item->getCommentCount())-->
|
|
||||||
[{$item->getCommentCount()}]
|
|
||||||
<!--@end-->
|
|
||||||
<!--@if($item->get('voted_count'))-->
|
|
||||||
[{$item->get('voted_count')}]
|
|
||||||
<!--@end-->
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">‹ {lang('common.first_page')}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{lang('common.last_page')} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{lang('member.cmd_find_member_account_with_email')}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skin/simple_world/find_member_account/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<p cond="!$XE_VALIDATOR_MESSAGE || $XE_VALIDATOR_ID !== 'modules/member/skin/simple_world/find_member_account/1'" class="rx_member-notice">
|
|
||||||
{lang('member.about_find_member_account')}
|
|
||||||
</p>
|
|
||||||
<form action="{getUrl('', 'act', 'procMemberFindAccount')}" method="post" ruleset="findAccount">
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<input type="hidden" name="act" value="procMemberFindAccount" />
|
|
||||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
|
||||||
<input type="hidden" name="page" value="{$page}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skin/simple_world/find_member_account/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
{lang('common.email_address')}
|
|
||||||
</label>
|
|
||||||
<input type="email" name="email_address" id="uid" required title="{lang('common.email_address')}" />
|
|
||||||
<block cond="$captcha">{$captcha}<br /></block>
|
|
||||||
<input type="submit" value="{lang('member.cmd_find_member_account')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{lang('member.cmd_resend_auth_mail')}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skin/simple_world/find_member_account/3'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<p cond="!$XE_VALIDATOR_MESSAGE || $XE_VALIDATOR_ID !== 'modules/member/skin/simple_world/find_member_account/3'" class="rx_member-notice">
|
|
||||||
{lang('member.about_resend_auth_mail')}
|
|
||||||
</p>
|
|
||||||
<form ruleset="resendAuthMail" action="{getUrl('', 'act', 'procMemberResendAuthMail')}" method="post">
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberResendAuthMail" />
|
|
||||||
<input type="hidden" name="success_return_url" value="{getUrl(act, $act)}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skin/simple_world/find_member_account/3" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="email_address3">
|
|
||||||
{lang('common.email_address')}
|
|
||||||
</label>
|
|
||||||
<input type="email" id="email_address3" name="email_address" value="" required title="{lang('common.email_address')}" /><br />
|
|
||||||
<block cond="$captcha">{$captcha}<br /></block>
|
|
||||||
<input type="submit" value="{lang('member.cmd_resend_auth_mail')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
<section style="font-size: 14px;margin: 8px 0px;padding: 0 15px;">
|
|
||||||
<section style="box-sizing:border-box;background-color:#ffffff;margin: 0 0 20px;border: 1px solid #e0e0e0;">
|
|
||||||
<h1 style="border-bottom: 1px solid #e0e0e0;margin: 0;padding: 20px;">{lang('member.msg_find_account_info')}</h1>
|
|
||||||
<dl style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang('member.site')}</dt>
|
|
||||||
<dd style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">
|
|
||||||
<a href="{getUrl()}" target="_blank" style="color: #2196f3;text-decoration: none;">{getUrl()}</a>
|
|
||||||
</dd>
|
|
||||||
<block loop="$memberInfo=>$name,$value" cond="!is_object($value)&&!is_array($value)">
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang($name)}</dt>
|
|
||||||
<dl style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{$value}</dl>
|
|
||||||
</block>
|
|
||||||
<dt style="border: 0 none;font-weight: bold;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;">{lang('common.password')}</dt>
|
|
||||||
<dl style="border-bottom: 1px solid #e0e0e0;list-style: outside none none;box-sizing: border-box;display: block;margin: 10px 0 0;min-height: 25px;position: relative;width: 100%;color:red">{$auth_args->new_password}</dl>
|
|
||||||
</dl>
|
|
||||||
<p style="border: 0 none;margin: 0;padding: 20px;">
|
|
||||||
{lang('member.msg_find_account_comment')}<br />
|
|
||||||
<a href="{$find_url}" target="_blank" style="color: #2196f3;text-decoration: none;">{$find_url}</a>
|
|
||||||
</p>
|
|
||||||
</section>
|
|
||||||
</section>
|
|
||||||
|
|
@ -1,210 +0,0 @@
|
||||||
/* 사용자 추가 */
|
|
||||||
function completeInsert(ret_obj, response_tags, args, fo_obj) {
|
|
||||||
var error = ret_obj['error'];
|
|
||||||
var message = ret_obj['message'];
|
|
||||||
var redirect_url = ret_obj['redirect_url'];
|
|
||||||
|
|
||||||
alert(message);
|
|
||||||
|
|
||||||
if(current_url.getQuery('popup')==1) {
|
|
||||||
if(typeof(opener)!='undefined') opener.location.reload();
|
|
||||||
window.close();
|
|
||||||
} else {
|
|
||||||
if(redirect_url) location.href = redirect_url;
|
|
||||||
else location.href = current_url.setQuery('act','');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 정보 수정 */
|
|
||||||
function completeModify(ret_obj, response_tags, args, fo_obj) {
|
|
||||||
var error = ret_obj['error'];
|
|
||||||
var message = ret_obj['message'];
|
|
||||||
|
|
||||||
alert(message);
|
|
||||||
|
|
||||||
location.href = current_url.setQuery('act','dispMemberInfo');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 회원 탈퇴 */
|
|
||||||
function completeLeave(ret_obj, response_tags, args, fo_obj) {
|
|
||||||
var error = ret_obj['error'];
|
|
||||||
var message = ret_obj['message'];
|
|
||||||
|
|
||||||
alert(message);
|
|
||||||
|
|
||||||
location.href = current_url.setQuery('act','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 이미지 업로드 */
|
|
||||||
function _doUploadImage(fo_obj, act) {
|
|
||||||
fo_obj.act.value = act;
|
|
||||||
fo_obj.submit();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 프로필 이미지/ 이미지 이름/마크 등록 */
|
|
||||||
function doUploadProfileImage() {
|
|
||||||
var fo_obj = get_by_id("fo_insert_member");
|
|
||||||
if(!fo_obj.profile_image.value) return;
|
|
||||||
_doUploadImage(fo_obj, 'procMemberInsertProfileImage');
|
|
||||||
}
|
|
||||||
function doUploadImageName() {
|
|
||||||
var fo_obj = get_by_id("fo_insert_member");
|
|
||||||
if(!fo_obj.image_name.value) return;
|
|
||||||
_doUploadImage(fo_obj, 'procMemberInsertImageName');
|
|
||||||
}
|
|
||||||
|
|
||||||
function doUploadImageMark() {
|
|
||||||
var fo_obj = get_by_id("fo_insert_member");
|
|
||||||
if(!fo_obj.image_mark.value) return;
|
|
||||||
_doUploadImage(fo_obj, 'procMemberInsertImageMark');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* 로그인 후 */
|
|
||||||
function completeLogin(ret_obj, response_tags, params, fo_obj) {
|
|
||||||
if(fo_obj.remember_user_id && fo_obj.remember_user_id.checked) {
|
|
||||||
var expire = new Date();
|
|
||||||
expire.setTime(expire.getTime()+ (7000 * 24 * 3600000));
|
|
||||||
setCookie('user_id', fo_obj.user_id.value, expire);
|
|
||||||
}
|
|
||||||
|
|
||||||
var url = current_url.setQuery('act','');
|
|
||||||
location.href = current_url.setQuery('act','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 로그아웃 후 */
|
|
||||||
function completeLogout(ret_obj) {
|
|
||||||
location.href = current_url.setQuery('act','');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 인증 메일 재발송 후 */
|
|
||||||
function completeResendAuthMail(ret_obj, response_tags) {
|
|
||||||
var error = ret_obj['error'];
|
|
||||||
var message = ret_obj['message'];
|
|
||||||
|
|
||||||
if(message) alert(message);
|
|
||||||
if(error != 0) alert(error);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 프로필 이미지, 이미지 이름, 마크 삭제 */
|
|
||||||
function doDeleteProfileImage(member_srl) {
|
|
||||||
if (!member_srl) return;
|
|
||||||
|
|
||||||
if (!confirm(xe.lang.deleteProfileImage)) return false;
|
|
||||||
|
|
||||||
exec_xml(
|
|
||||||
'member',
|
|
||||||
'procMemberDeleteProfileImage',
|
|
||||||
{member_srl:member_srl},
|
|
||||||
function(){jQuery('#profile_imagetag').remove()},
|
|
||||||
['error','message']
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
function doDeleteImageName(member_srl) {
|
|
||||||
if (!member_srl) return;
|
|
||||||
|
|
||||||
if (!confirm(xe.lang.deleteImageName)) return false;
|
|
||||||
exec_xml(
|
|
||||||
'member',
|
|
||||||
'procMemberDeleteImageName',
|
|
||||||
{member_srl:member_srl},
|
|
||||||
function(){jQuery('#image_nametag').remove()},
|
|
||||||
['error','message']
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
function doDeleteImageMark(member_srl) {
|
|
||||||
if (!member_srl) return;
|
|
||||||
|
|
||||||
if (!confirm(xe.lang.deleteImageMark)) return false;
|
|
||||||
exec_xml(
|
|
||||||
'member',
|
|
||||||
'procMemberDeleteImageMark',
|
|
||||||
{member_srl:member_srl},
|
|
||||||
function(){jQuery('#image_marktag').remove()},
|
|
||||||
['error','message']
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 스크랩 삭제 */
|
|
||||||
function doDeleteScrap(document_srl) {
|
|
||||||
var params = new Array();
|
|
||||||
params['document_srl'] = document_srl;
|
|
||||||
exec_xml('member', 'procMemberDeleteScrap', params, function() { location.reload(); });
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 비밀번호 찾기 후 */
|
|
||||||
function completeFindMemberAccount(ret_obj, response_tags) {
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 임시 비밀번호 생성 */
|
|
||||||
function completeFindMemberAccountByQuestion(ret_obj, response_tags) {
|
|
||||||
if(ret_obj['error'] != 0){
|
|
||||||
alert(ret_obj['message']);
|
|
||||||
}else{
|
|
||||||
location.href = current_url.setQuery('act','dispMemberGetTempPassword').setQuery('user_id',ret_obj['user_id']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 저장글 삭제 */
|
|
||||||
function doDeleteSavedDocument(document_srl, confirm_message) {
|
|
||||||
if(!confirm(confirm_message)) return false;
|
|
||||||
|
|
||||||
var params = new Array();
|
|
||||||
params['document_srl'] = document_srl;
|
|
||||||
exec_xml('member', 'procMemberDeleteSavedDocument', params, function() { location.reload(); });
|
|
||||||
}
|
|
||||||
|
|
||||||
function insertSelectedModule(id, module_srl, mid, browser_title) {
|
|
||||||
location.href = current_url.setQuery('selected_module_srl',module_srl);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* 스크랩 폴더 이동 */
|
|
||||||
jQuery(function($) {
|
|
||||||
$("#scrap_folder_create").on("click", function() {
|
|
||||||
var input = $(this).siblings("input.folder_name").first();
|
|
||||||
if (!input.is(":visible")) {
|
|
||||||
input.show();
|
|
||||||
} else {
|
|
||||||
if (!input.val()) return;
|
|
||||||
var params = { name: input.val() };
|
|
||||||
exec_json('member.procMemberInsertScrapFolder', params, function(data) {
|
|
||||||
window.location.href = current_url.setQuery("folder_srl", data.folder_srl);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$("#scrap_folder_rename").on("click", function() {
|
|
||||||
var folder_srl = $(this).data("folder-srl");
|
|
||||||
var input = $(this).siblings("input.folder_name").first();
|
|
||||||
if (!input.is(":visible")) {
|
|
||||||
input.show();
|
|
||||||
} else {
|
|
||||||
if (!input.val()) return;
|
|
||||||
var params = { folder_srl: folder_srl, name: input.val() };
|
|
||||||
exec_json('member.procMemberRenameScrapFolder', params, function() {
|
|
||||||
window.location.reload();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$("#scrap_folder_delete").on("click", function() {
|
|
||||||
var folder_srl = $(this).data("folder-srl");
|
|
||||||
var params = { folder_srl: folder_srl };
|
|
||||||
exec_json('member.procMemberDeleteScrapFolder', params, function() {
|
|
||||||
window.location.href = current_url.setQuery("folder_srl", "");
|
|
||||||
});
|
|
||||||
});
|
|
||||||
$("#scrap_folder_list").on("change", function() {
|
|
||||||
window.location.href = current_url.setQuery("folder_srl", $(this).val());
|
|
||||||
});
|
|
||||||
$(".scrap_folder_move").on("change", function() {
|
|
||||||
var document_srl = $(this).data('document-srl');
|
|
||||||
var folder_srl = $(this).val();
|
|
||||||
if (!folder_srl) return;
|
|
||||||
var params = { document_srl: document_srl, folder_srl: folder_srl };
|
|
||||||
exec_json('member.procMemberMoveScrapFolder', params, function() {
|
|
||||||
window.location.reload();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
@ -1,38 +0,0 @@
|
||||||
/**
|
|
||||||
* @brief 회원 가입시나 정보 수정시 각 항목의 중복 검사하고 화면에 바로 나타냄
|
|
||||||
* @author misol <misol.kr@gmail.com>
|
|
||||||
* @author NAVER (developer@xpressengine.com)
|
|
||||||
**/
|
|
||||||
// body 에서 불러오면 가능
|
|
||||||
$('#rx_insert_member :input').filter('[name=user_id],[name=nick_name],[name=email_address]').blur(rxMemberCheckValue);
|
|
||||||
|
|
||||||
// 실제 서버에 특정 필드의 value check를 요청하고 이상이 있으면 메세지를 뿌려주는 함수
|
|
||||||
function rxMemberCheckValue(event) {
|
|
||||||
var field = event.target;
|
|
||||||
var _name = field.name;
|
|
||||||
var _value = field.value;
|
|
||||||
if(!_name || !_value) return;
|
|
||||||
|
|
||||||
var params = {name:_name, value:_value};
|
|
||||||
var response_tags = ['error','message','message_type'];
|
|
||||||
|
|
||||||
exec_xml('member','procMemberCheckValue', params, dispMemberValueCheck, response_tags, field);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 서버에서 응답이 올 경우 이상이 있으면 메세지를 출력
|
|
||||||
function dispMemberValueCheck(response, response_tags, field) {
|
|
||||||
var _id = 'rx_sw_dummy-'+field.name;
|
|
||||||
var dummy = $('#'+_id);
|
|
||||||
|
|
||||||
if(response['message']=='success') {
|
|
||||||
dummy.html('').hide();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!dummy.length) {
|
|
||||||
dummy = $('<p class="rx_member-notice error" />').attr('id', _id)
|
|
||||||
$(field).after(dummy);
|
|
||||||
}
|
|
||||||
|
|
||||||
dummy.html(response['message']).show();
|
|
||||||
}
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
<?php
|
|
||||||
$lang->member_simple_world_about_star = 'Items with an asterisk <sup>*</sup> are required.';
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
<?php
|
|
||||||
$lang->member_simple_world_about_star = 'アスタリスク<sup>*</sup>のある項目は必須項目です。';
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
<?php
|
|
||||||
$lang->member_simple_world_about_star = '별표<sup>*</sup>가 있는 항목은 필수 항목입니다.';
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<div class="signin">
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = $lang->msg_leave_member}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skin/simple_world/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<p class="rx_member-notice">{$lang->about_rechecked_password}</p>
|
|
||||||
<form ruleset="leaveMember" id="fo_insert_member" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberLeave" />
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
|
||||||
<input type="hidden" name="page" value="{$page}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skin/simple_world/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
{lang($identifier)}
|
|
||||||
</label>
|
|
||||||
<input type="text" id="uid" value="{$formValue}" readonly title="{lang($identifier)}" />
|
|
||||||
<label for="pw">
|
|
||||||
{lang('common.password')}
|
|
||||||
</label>
|
|
||||||
<input type="password" name="password" id="pw" required title="{$lang->password}" />
|
|
||||||
<input type="submit" value="{$lang->cmd_leave}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<div class="signin">
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{lang('member.cmd_login')}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="@login" action="./" method="post" id="fo_member_login">
|
|
||||||
<input type="hidden" name="success_return_url" value="{$referer_url}" />
|
|
||||||
<input type="hidden" name="act" value="procMemberLogin" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
<block cond="$identifier == 'user_id'">
|
|
||||||
{lang('common.user_id')}
|
|
||||||
</block>
|
|
||||||
<block cond="$identifier != 'user_id'">
|
|
||||||
{lang('common.email_address')}
|
|
||||||
</block>
|
|
||||||
</label>
|
|
||||||
<input type="text" cond="$identifier == 'user_id'" autocapitalize="off" autocorrect="off" autofocus="autofocus" name="user_id" id="uid" required="required" tabindex="1" title="{lang('common.user_id')}" />
|
|
||||||
<input type="email" cond="$identifier != 'user_id'" autocapitalize="off" autocorrect="off" autofocus="autofocus" name="user_id" id="uid" required="required" tabindex="1" title="{lang('common.email_address')}" />
|
|
||||||
<label for="upw">{lang('common.password')}<a class="pos-right" href="{getUrl('act','dispMemberFindAccount')}">{lang('member.cmd_find_member_account')}</a></label>
|
|
||||||
<input type="password" name="password" id="upw" required="required" tabindex="2" title="{lang('common.password')}" />
|
|
||||||
<label for="keepid_opt">
|
|
||||||
<input type="checkbox" name="keep_signed" id="keepid_opt" tabindex="3" value="Y" />
|
|
||||||
{lang('member.keep_signed')}
|
|
||||||
</label>
|
|
||||||
<div id="rx_member-warning" class="rx_member-notice">
|
|
||||||
{lang('member.about_keep_warning')}
|
|
||||||
</div>
|
|
||||||
<input type="submit" tabindex="4" value="{lang('member.cmd_login')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<div class="sw-footer">
|
|
||||||
<a cond="$member_config->enable_join !== 'N'" href="{getUrl('act','dispMemberSignUpForm')}">{lang('member.cmd_signup')}</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
jQuery(function($){
|
|
||||||
var keep_msg = $('#rx_member-warning');
|
|
||||||
keep_msg.hide();
|
|
||||||
$('#keepid_opt').change(function(){
|
|
||||||
if($(this).is(':checked')){
|
|
||||||
keep_msg.slideDown(200);
|
|
||||||
} else {
|
|
||||||
keep_msg.slideUp(200);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<div class="signin">
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{lang('member.cmd_logout')}</h1>
|
|
||||||
<p class="rx_member-notice">{lang('common.confirm_logout')}</p>
|
|
||||||
<form action="./" method="post">
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberLogout" />
|
|
||||||
<div class="control-group">
|
|
||||||
<input type="submit" value="{lang('member.cmd_logout')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->member_info}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins/simple_world/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<dl>
|
|
||||||
<block loop="$displayDatas => $item">
|
|
||||||
<dt>{$item->title}<sup cond="$item->required || $item->mustRequired">*</sup></dt>
|
|
||||||
<dd cond="$item->value">{$item->value}</dd>
|
|
||||||
<dd cond="!$item->value">…</dd>
|
|
||||||
</block>
|
|
||||||
<dt>{$lang->member_group}</dt>
|
|
||||||
<dd>{implode(', ', $memberInfo['group_list'])}</dd>
|
|
||||||
<dt>{$lang->signup_date}</dt>
|
|
||||||
<dd>{zdate($memberInfo[regdate],"Y-m-d")}</dd>
|
|
||||||
<block cond="$memberInfo[member_srl] == $logged_info->member_srl || $logged_info->is_admin == 'Y'">
|
|
||||||
<dt>{$lang->last_login}</dt>
|
|
||||||
<dd>{zdate($memberInfo[last_login],"Y-m-d")}</dd>
|
|
||||||
</block>
|
|
||||||
</dl>
|
|
||||||
</section>
|
|
||||||
<div class="sw-footer sw-anchor-buttons" cond="$memberInfo['member_srl'] == $logged_info->member_srl">
|
|
||||||
<a href="{getUrl('act', 'dispMemberModifyEmailAddress')}" cond="$member_config->identifier == 'email_address'">{$lang->cmd_modify_member_email_address}</a>
|
|
||||||
<a href="{getUrl('act','dispMemberModifyInfo','member_srl','')}">{$lang->cmd_modify_member_info}</a>
|
|
||||||
<a href="{getUrl('act','dispMemberModifyPassword','member_srl','')}">{$lang->cmd_modify_member_password}</a>
|
|
||||||
<a href="{getUrl('act','dispMemberLeave','member_srl','')}">{$lang->cmd_leave}</a>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = $lang->cmd_modify_nickname_log}</h1>
|
|
||||||
<table class="table table-striped table-hover">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>{$lang->date}</th>
|
|
||||||
<th>{$lang->nick_name_before_changing}</th>
|
|
||||||
<th class="title">{$lang->nick_name_after_changing}</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr loop="$nickname_list => $val">
|
|
||||||
<td>
|
|
||||||
{zdate($val->regdate,"Y-m-d H:i:s")}
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
{$val->before_nick_name}
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
{$val->after_nick_name}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">‹ {$lang->first_page}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{$lang->last_page} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<h1>{$lang->cmd_modify_member_email_address}</h1>
|
|
||||||
<p>{$lang->about_modify_member_email_address}</p>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins/simple_world/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="modifyEmailAddress" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberModifyEmailAddress" />
|
|
||||||
<input type="hidden" name="success_return_url" value="{getRequestUriByServerEnviroment()}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins/simple_world/1" />
|
|
||||||
<span class="input-append">
|
|
||||||
<input type="email" id="email_address" name="email_address" value="" required placeholder="{$lang->email_address}" title="{$lang->email_address}" />
|
|
||||||
<input type="submit" value="{$lang->cmd_send_auth_new_emaill_address}" class="btn btn-inverse" />
|
|
||||||
</span>
|
|
||||||
</form>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,87 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<load target="../../tpl/js/signup_check.js" />
|
|
||||||
<load target="./lang" />
|
|
||||||
<!--// datepicker javascript plugin load -->
|
|
||||||
<!--%load_js_plugin("ui")-->
|
|
||||||
<!--%load_js_plugin("ui.datepicker")-->
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->msg_update_member}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins/simple_world/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<div class="rx_member-notice info">
|
|
||||||
<p>{lang('member_simple_world_about_star')}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="@insertMember" id="fo_insert_member" action="./" method="post" enctype="multipart/form-data" class="form-horizontal">
|
|
||||||
<input type="hidden" name="act" value="procMemberModifyInfo" />
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="member_srl" value="{$member_info->member_srl}" />
|
|
||||||
<input type="hidden" name="signature" value="{escape($member_info->signature)}" />
|
|
||||||
<input type="hidden" name="page" value="{$page}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins/simple_world/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="{$identifierForm->name}">{$identifierForm->title}<sup style="color:red">*</sup></label>
|
|
||||||
<input type="text" name="{$identifierForm->name}" id="{$identifierForm->name}" value="{$identifierForm->value}" readonly />
|
|
||||||
<block loop="$formTags=>$formTag">
|
|
||||||
<label for="{$formTag->name}" class="control-label">{trim(str_replace('*','',strip_tags($formTag->title)))}<!--@if(strpos($formTag->title,'<em style="color:red">*</em>') !== false)--><sup style="color:red">*</sup><!--@endif--></label>
|
|
||||||
<block cond="$formTag->name != 'signature'">{$formTag->inputTag}</block>
|
|
||||||
<block cond="$formTag->name =='signature'">{$editor|noescape}</block>
|
|
||||||
</block>
|
|
||||||
<label class="control-label">{$lang->allow_mailing}</label>
|
|
||||||
<div class="controls">
|
|
||||||
<label for="mailingYes"><input type="radio" name="allow_mailing" id="mailingYes" value="Y" checked="checked"|cond="$member_info->allow_mailing == 'Y'"> {$lang->cmd_yes}</label>
|
|
||||||
<label for="mailingNo"><input type="radio" name="allow_mailing" id="mailingNo" value="N" checked="checked"|cond="$member_info->allow_mailing != 'Y'" > {$lang->cmd_no}</label>
|
|
||||||
</div>
|
|
||||||
<label class="control-label">{$lang->allow_message}</label>
|
|
||||||
<div class="controls">
|
|
||||||
<label for="allow_{$key}" loop="$lang->allow_message_type=>$key,$val"><input type="radio" name="allow_message" value="{$key}" checked="checked"|cond="$member_info->allow_message == $key" id="allow_{$key}" /> {$val}</label>
|
|
||||||
</div>
|
|
||||||
<input type="submit" value="{$lang->cmd_registration}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<script>
|
|
||||||
xe.lang.deleteProfileImage = '{$lang->msg_delete_extend_form}';
|
|
||||||
xe.lang.deleteImageMark = '{$lang->msg_delete_extend_form}';
|
|
||||||
xe.lang.deleteImageName = '{$lang->msg_delete_extend_form}';
|
|
||||||
|
|
||||||
jQuery(function($){
|
|
||||||
// label for setup
|
|
||||||
$('.control-label[for]').each(function(){
|
|
||||||
var $this = $(this);
|
|
||||||
if($this.attr('for') == ''){
|
|
||||||
$this.attr('for', $this.next().children(':visible:first').attr('id'));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
(function($){
|
|
||||||
$(function(){
|
|
||||||
// check if the browser support type date.
|
|
||||||
if ( $(".inputDate").prop('type') != 'date' ) {
|
|
||||||
var option = {
|
|
||||||
changeMonth: true,
|
|
||||||
changeYear: true,
|
|
||||||
gotoCurrent: false,
|
|
||||||
yearRange:'-200:+10',
|
|
||||||
dateFormat:'yy-mm-dd',
|
|
||||||
defaultDate: new Date("{date('Y-m-d',time())}"),
|
|
||||||
minDate: new Date("{date('Y-m-d',strtotime('-200 years'))}"),
|
|
||||||
|
|
||||||
onSelect:function(){
|
|
||||||
$(this).prev('input[type="hidden"]').val(this.value.replace(/-/g,""))
|
|
||||||
}
|
|
||||||
};
|
|
||||||
$.extend($.datepicker.regional['{$lang_type}'],option);
|
|
||||||
|
|
||||||
//if the browser does not support type date input, start datepicker. If it does, brower's UI will show their datepicker.
|
|
||||||
$(".inputDate").datepicker(option);
|
|
||||||
} else {
|
|
||||||
$(".inputDate").prop('readonly', false);
|
|
||||||
}
|
|
||||||
$(".dateRemover").click(function() {
|
|
||||||
$('#date_birthday,#birthday').val('');
|
|
||||||
return false;});
|
|
||||||
});
|
|
||||||
})(jQuery);
|
|
||||||
</script>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
|
|
||||||
<div class="sw-body">
|
|
||||||
<h1>{$member_title = $lang->cmd_modify_member_password}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="modifyPassword" id="fo_insert_member" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberModifyPassword" />
|
|
||||||
<input type="hidden" name="mid" value="{$mid}" />
|
|
||||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
|
||||||
<input type="hidden" name="page" value="{$page}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins/simple_world/1" />
|
|
||||||
<input type="hidden" name="success_return_url" value="{getUrl('act','dispMemberInfo')}" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
{lang($identifier)}
|
|
||||||
</label>
|
|
||||||
<input type="text" disabled="disabled" value="{$formValue}" id="uid" title="{lang($identifier)}" />
|
|
||||||
<label for="cpw">
|
|
||||||
{lang('member.current_password')}
|
|
||||||
</label>
|
|
||||||
<input type="password" name="current_password" id="cpw" required title="{$lang->current_password}" />
|
|
||||||
<label for="npw1">
|
|
||||||
{lang('common.password1')}
|
|
||||||
</label>
|
|
||||||
<input type="password" name="password1" id="npw1" required title="{$lang->password1}" /> <span class="rx_member-notice">{$lang->about_password_strength[$member_config->password_strength]}</span>
|
|
||||||
<label for="npw2">
|
|
||||||
{lang('common.password2')}
|
|
||||||
</label>
|
|
||||||
<input type="password" name="password2" id="npw2" required title="{$lang->password2}" />
|
|
||||||
<input type="submit" value="{$lang->cmd_registration}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<div class="signin">
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->msg_rechecked_password}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins/simple_world/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<p class="rx_member-notice">{$lang->about_rechecked_password}</p>
|
|
||||||
<form action="./index.php" method="post" ruleset="recheckedPassword">
|
|
||||||
<input type="hidden" name="act" value="procMemberModifyInfoBefore" />
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins/simple_world/1" />
|
|
||||||
<input cond="$success_return_url" type="hidden" name="success_return_url" value="{$success_return_url}" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
{$identifierTitle}
|
|
||||||
</label>
|
|
||||||
<input type="text" id="uid" value="{$identifierValue}" readonly title="{$identifierTitle}" />
|
|
||||||
<label for="pw">
|
|
||||||
{lang('common.password')}
|
|
||||||
</label>
|
|
||||||
<input type="password" name="password" id="pw" required title="{$lang->password}" />
|
|
||||||
<input type="submit" value="{$lang->cmd_confirm}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$lang->cmd_resend_auth_mail}</h1>
|
|
||||||
<div class="rx_member-notice">{lang('member.about_resend_auth_mail')}</div>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins/simple_world/resend_auth_mail/1'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="resendAuthMail" class="form" action="./" method="post">
|
|
||||||
<input type="hidden" name="module" value="member" />
|
|
||||||
<input type="hidden" name="act" value="procMemberResendAuthMail" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins/simple_world/resend_auth_mail/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="email_address">
|
|
||||||
{lang('common.email_address')}
|
|
||||||
</label>
|
|
||||||
<input type="email" id="email_address" name="email_address" value="" title="{lang('common.email_address')}" />
|
|
||||||
<input type="submit" id="resend_button" name="" value="{lang('member.cmd_resend_auth_mail')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = lang('member.cmd_view_saved_document')}</h1>
|
|
||||||
<div class="rx_member-notice">{lang('common.total')}: {number_format($total_count)}</div>
|
|
||||||
<div>
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$document_list => $key, $item">
|
|
||||||
<a href="{getUrl('','document_srl',$item->document_srl)}" class="cont_a" target="_blank">
|
|
||||||
<span class="content_basic">
|
|
||||||
<span class="content_title">
|
|
||||||
{escape($item->getTitle())}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{$item->getRegdate("Y-m-d")}
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
<span class="content_delete">
|
|
||||||
<button type="button" class="text" onclick="doDeleteSavedDocument({$item->document_srl},'{lang('common.confirm_delete')}');return false;">{$lang->cmd_delete}</button>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}" class="direction">‹ {$lang->first_page}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}" class="direction">{$lang->last_page} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$member_title = lang('member.cmd_view_scrapped_document')}</h1>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<select id="scrap_folder_list" style="margin:0">
|
|
||||||
<!--@foreach($scrap_folders as $folder)-->
|
|
||||||
<option value="{$folder->folder_srl}" selected="selected"|cond="$folder_srl == $folder->folder_srl">{$folder->name == '/DEFAULT/' ? $lang->default_folder : $folder->name}</option>
|
|
||||||
<!--@endforeach-->
|
|
||||||
</select>
|
|
||||||
<div class="btn-group" cond="$folder_info->name !== '/DEFAULT/'">
|
|
||||||
<input type="text" class="folder_name" style="margin:0;display:none" />
|
|
||||||
<button id="scrap_folder_rename" class="btn" data-folder-srl="{$folder_srl}">{$lang->scrap_folder_rename}</button>
|
|
||||||
<button id="scrap_folder_delete" class="btn" data-folder-srl="{$folder_srl}">{$lang->scrap_folder_delete}</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<ul class="rx_sw_list">
|
|
||||||
<li loop="$document_list => $key, $item">
|
|
||||||
<a href="{getUrl('','document_srl',$item->document_srl)}" class="cont_a" target="_blank">
|
|
||||||
<span class="content_basic">
|
|
||||||
<span class="content_title">
|
|
||||||
{escape($item->title)}
|
|
||||||
</span>
|
|
||||||
<span class="content_subinfo">
|
|
||||||
{escape($item->nick_name)}, {zdate($item->regdate, "Y-m-d")}
|
|
||||||
</span>
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
<span class="content_delete">
|
|
||||||
<button type="button" class="text" onclick="doDeleteScrap({$item->document_srl});return false;">{$lang->cmd_delete}</button>
|
|
||||||
</span>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<div class="pagination pagination-centered">
|
|
||||||
<ul>
|
|
||||||
<li><a href="{getUrl('page','','module_srl','')}">‹ {$lang->first_page}</a></li>
|
|
||||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
|
||||||
<li class="active"|cond="$page == $page_no"><a href="{getUrl('page',$page_no,'module_srl','')}">{$page_no}</a></li>
|
|
||||||
<!--@end-->
|
|
||||||
<li><a href="{getUrl('page',$page_navigation->last_page,'module_srl','')}">{$lang->last_page} ›</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="sw-footer sw-anchor-buttons">
|
|
||||||
<input type="text" class="folder_name" style="margin:0;display:none" />
|
|
||||||
<button id="scrap_folder_create">{$lang->scrap_folder_create}</button>
|
|
||||||
</div>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,116 +0,0 @@
|
||||||
<load target="./js/signup_check.js" type="body" />
|
|
||||||
<load target="./lang" />
|
|
||||||
<!--// datepicker javascript plugin load -->
|
|
||||||
<!--%load_js_plugin("ui")-->
|
|
||||||
<!--%load_js_plugin("ui.datepicker")-->
|
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{lang('member.cmd_signup')}</h1>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/member/skins'" class="rx_member-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<div class="rx_member-notice info">
|
|
||||||
<p>{lang('member_simple_world_about_star')}</p>
|
|
||||||
</div>
|
|
||||||
<form ruleset="@insertMember" id="rx_insert_member" action="./" method="post" enctype="multipart/form-data" class="form-horizontal">
|
|
||||||
<input type="hidden" name="act" value="procMemberInsert" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/member/skins" />
|
|
||||||
<input type="hidden" name="success_return_url" value="{getUrl('act','dispMemberInfo')}" />
|
|
||||||
<div class="agreement control-group" loop="$member_config->agreements => $i, $agreement" cond="$agreement->type !== 'disabled'">
|
|
||||||
<div class="title">
|
|
||||||
{$agreement->title}
|
|
||||||
<sup style="color:red" cond="$agreement->type === 'required'">*</sup>
|
|
||||||
<block cond="$agreement->type === 'optional'">({$lang->cmd_optional})</block>
|
|
||||||
</div>
|
|
||||||
<div class="text">
|
|
||||||
{$agreement->content}
|
|
||||||
</div>
|
|
||||||
<div class="confirm">
|
|
||||||
<label for="accept_agreement_{$i}">
|
|
||||||
<input type="checkbox" name="accept_agreement[{$i}]" value="Y" id="accept_agreement_{$i}" />
|
|
||||||
{$lang->about_accept_agreement}
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="{$identifierForm->name}">{$identifierForm->title}<sup style="color:red">*</sup></label>
|
|
||||||
<input type="text"|cond="$identifierForm->name!='email_address'" type="email"|cond="$identifierForm->name=='email_address'" name="{$identifierForm->name}" id="{$identifierForm->name}" value="" required />
|
|
||||||
<p class="rx_member-notice" cond="$identifierForm->name == 'email_address' && $email_confirmation_required == 'Y'">
|
|
||||||
{$lang->msg_email_confirmation_required}
|
|
||||||
</p>
|
|
||||||
<label for="password" class="control-label">{lang('common.password')}<sup style="color:red">*</sup></label>
|
|
||||||
<input type="password" name="password" id="password" value="" required />
|
|
||||||
<p class="rx_member-notice">{lang('member.about_password_strength')[$member_config->password_strength]}</p>
|
|
||||||
<label for="password2" class="control-label">{lang('common.password3')}<sup style="color:red">*</sup></label>
|
|
||||||
<input type="password" name="password2" id="password2" value="" required />
|
|
||||||
<block loop="$formTags=>$formTag">
|
|
||||||
<label for="{$formTag->name}" class="control-label">{trim(str_replace('*','',strip_tags($formTag->title)))}<!--@if(strpos($formTag->title,'<em style="color:red">*</em>') !== false)--><sup style="color:red">*</sup><!--@endif--></label>
|
|
||||||
<block cond="$formTag->name != 'signature'">
|
|
||||||
{$formTag->inputTag}
|
|
||||||
<p class="rx_member-notice" cond="$formTag->name == 'email_address' && $email_confirmation_required == 'Y'">
|
|
||||||
{$lang->msg_email_confirmation_required}
|
|
||||||
</p>
|
|
||||||
</block>
|
|
||||||
<block cond="$formTag->name == 'signature'">
|
|
||||||
<input type="hidden" name="signature" value="" />
|
|
||||||
{$editor|noescape}
|
|
||||||
</block>
|
|
||||||
</block>
|
|
||||||
<div class="control-label">{$lang->allow_mailing}</div>
|
|
||||||
<div class="controls" style="padding-top:5px">
|
|
||||||
<label for="mailingYes"><input type="radio" name="allow_mailing" id="mailingYes" value="Y" checked="checked"|cond="$member_info->allow_mailing == 'Y'" /> {$lang->cmd_yes}</label>
|
|
||||||
<label for="mailingNo"><input type="radio" name="allow_mailing" id="mailingNo" value="N" checked="checked"|cond="$member_info->allow_mailing != 'Y'" /> {$lang->cmd_no}</label>
|
|
||||||
</div>
|
|
||||||
<div class="control-label">{$lang->allow_message}</div>
|
|
||||||
<div class="controls" style="padding-top:5px">
|
|
||||||
<label for="allow_{$key}" loop="$lang->allow_message_type=>$key,$val"><input type="radio" name="allow_message" value="{$key}" checked="checked"|cond="$member_info->allow_message == $key || (!$member_info && $key == 'Y')" id="allow_{$key}" /> {$val}</label>
|
|
||||||
</div>
|
|
||||||
<block cond="$captcha">
|
|
||||||
<div class="control-label">{$lang->captcha}</div>
|
|
||||||
<div class="controls">{$captcha}</div>
|
|
||||||
</block>
|
|
||||||
<input type="submit" value="{$lang->cmd_registration}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<script>
|
|
||||||
(function($){
|
|
||||||
// label for setup
|
|
||||||
$('.control-label[for]').each(function(){
|
|
||||||
var $this = $(this);
|
|
||||||
if($this.attr('for') == ''){
|
|
||||||
$this.attr('for', $this.next().children(':visible:first').attr('id'));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$(function(){
|
|
||||||
// check if the browser support type date.
|
|
||||||
if ( $(".inputDate").prop('type') != 'date' ) {
|
|
||||||
var option = {
|
|
||||||
changeMonth: true,
|
|
||||||
changeYear: true,
|
|
||||||
gotoCurrent: false,
|
|
||||||
yearRange:'-200:+10',
|
|
||||||
dateFormat:'yy-mm-dd',
|
|
||||||
defaultDate: new Date("{date('Y-m-d',time())}"),
|
|
||||||
minDate: new Date("{date('Y-m-d',strtotime('-200 years'))}"),
|
|
||||||
|
|
||||||
onSelect:function(){
|
|
||||||
$(this).prev('input[type="hidden"]').val(this.value.replace(/-/g,""))
|
|
||||||
}
|
|
||||||
};
|
|
||||||
$.extend($.datepicker.regional['{$lang_type}'],option);
|
|
||||||
|
|
||||||
//if the browser does not support type date input, start datepicker. If it does, brower's UI will show their datepicker.
|
|
||||||
$(".inputDate").datepicker(option);
|
|
||||||
} else {
|
|
||||||
$(".inputDate").prop('readonly', false);
|
|
||||||
}
|
|
||||||
$(".dateRemover").click(function() {
|
|
||||||
$(this).prev('.inputDate').val('').prev('input[type=hidden]').val('');
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
})(jQuery);
|
|
||||||
</script>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,104 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<skin version="0.2">
|
|
||||||
<title xml:lang="ko">네모의 꿈</title>
|
|
||||||
<title xml:lang="en">Rectangular World</title>
|
|
||||||
<description xml:lang="ko">깔끔한 면과 그림자를 이용한 회원 스킨</description>
|
|
||||||
<description xml:lang="en">Simple rectangular planes and shadows</description>
|
|
||||||
<version>0.1</version>
|
|
||||||
<date>2017-01-09</date>
|
|
||||||
<author email_address="misol.kr@gmail.com" link="https://github.com/misol">
|
|
||||||
<name xml:lang="ko">misol</name>
|
|
||||||
<name xml:lang="en">misol</name>
|
|
||||||
</author>
|
|
||||||
|
|
||||||
<colorset>
|
|
||||||
<color name="theme">
|
|
||||||
<title xml:lang="ko">사이트 테마 색</title>
|
|
||||||
<title xml:lang="en">The site theme color</title>
|
|
||||||
</color>
|
|
||||||
<color name="red">
|
|
||||||
<title xml:lang="ko">붉은 색</title>
|
|
||||||
<title xml:lang="en">Red</title>
|
|
||||||
</color>
|
|
||||||
<color name="crimson">
|
|
||||||
<title xml:lang="ko">크림슨</title>
|
|
||||||
<title xml:lang="en">Crimson</title>
|
|
||||||
</color>
|
|
||||||
<color name="pink">
|
|
||||||
<title xml:lang="ko">분홍</title>
|
|
||||||
<title xml:lang="en">Pink</title>
|
|
||||||
</color>
|
|
||||||
<color name="purple">
|
|
||||||
<title xml:lang="ko">보라</title>
|
|
||||||
<title xml:lang="en">Purple</title>
|
|
||||||
</color>
|
|
||||||
<color name="deep-purple">
|
|
||||||
<title xml:lang="ko">진보라</title>
|
|
||||||
<title xml:lang="en">Deep Purple</title>
|
|
||||||
</color>
|
|
||||||
<color name="indigo">
|
|
||||||
<title xml:lang="ko">인디고</title>
|
|
||||||
<title xml:lang="en">Indigo</title>
|
|
||||||
</color>
|
|
||||||
<color name="deep-blue">
|
|
||||||
<title xml:lang="ko">짙은 파랑</title>
|
|
||||||
<title xml:lang="en">Deep Blue</title>
|
|
||||||
</color>
|
|
||||||
<color name="blue">
|
|
||||||
<title xml:lang="ko">파랑</title>
|
|
||||||
<title xml:lang="en">Blue</title>
|
|
||||||
</color>
|
|
||||||
<color name="light-blue">
|
|
||||||
<title xml:lang="ko">밝은 파랑</title>
|
|
||||||
<title xml:lang="en">Light Blue</title>
|
|
||||||
</color>
|
|
||||||
<color name="cyan">
|
|
||||||
<title xml:lang="ko">시안</title>
|
|
||||||
<title xml:lang="en">Cyan</title>
|
|
||||||
</color>
|
|
||||||
<color name="teal">
|
|
||||||
<title xml:lang="ko">틸</title>
|
|
||||||
<title xml:lang="en">Teal</title>
|
|
||||||
</color>
|
|
||||||
<color name="green">
|
|
||||||
<title xml:lang="ko">초록</title>
|
|
||||||
<title xml:lang="en">Green</title>
|
|
||||||
</color>
|
|
||||||
<color name="light-green">
|
|
||||||
<title xml:lang="ko">연한 초록</title>
|
|
||||||
<title xml:lang="en">Light Green</title>
|
|
||||||
</color>
|
|
||||||
<color name="lime">
|
|
||||||
<title xml:lang="ko">라임</title>
|
|
||||||
<title xml:lang="en">Lime</title>
|
|
||||||
</color>
|
|
||||||
<color name="yellow">
|
|
||||||
<title xml:lang="ko">노랑</title>
|
|
||||||
<title xml:lang="en">Yellow</title>
|
|
||||||
</color>
|
|
||||||
<color name="amber">
|
|
||||||
<title xml:lang="ko">앰버</title>
|
|
||||||
<title xml:lang="en">Amber</title>
|
|
||||||
</color>
|
|
||||||
<color name="orange">
|
|
||||||
<title xml:lang="ko">주황</title>
|
|
||||||
<title xml:lang="en">Orange</title>
|
|
||||||
</color>
|
|
||||||
<color name="deep-orange">
|
|
||||||
<title xml:lang="ko">진한 주황</title>
|
|
||||||
<title xml:lang="en">Deep Orange</title>
|
|
||||||
</color>
|
|
||||||
<color name="brown">
|
|
||||||
<title xml:lang="ko">갈색</title>
|
|
||||||
<title xml:lang="en">Brown</title>
|
|
||||||
</color>
|
|
||||||
<color name="grey">
|
|
||||||
<title xml:lang="ko">회색</title>
|
|
||||||
<title xml:lang="en">Grey</title>
|
|
||||||
</color>
|
|
||||||
<color name="blue-grey">
|
|
||||||
<title xml:lang="ko">푸른 회색</title>
|
|
||||||
<title xml:lang="en">Blue Grey</title>
|
|
||||||
</color>
|
|
||||||
</colorset>
|
|
||||||
</skin>
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
</section>
|
|
||||||
|
|
@ -1,70 +0,0 @@
|
||||||
<!--// responsible layout -->
|
|
||||||
{@Context::addMetaTag("viewport", "width=device-width, user-scalable=yes")}
|
|
||||||
<!--// Check layout. If it is Simple World, select layout primary colors as a primary color of this skin -->
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type === 'select' || $layout_info->extra_var->customized_primary_color->type === 'colorpicker'">
|
|
||||||
{@
|
|
||||||
if(!$layout_info->primary_color)
|
|
||||||
$layout_info->primary_color = 'red';
|
|
||||||
if(!$layout_info->primary_color && $layout_info->customized_primary_color)
|
|
||||||
$layout_info->primary_color = 'customized';
|
|
||||||
if(!$layout_info->customized_primary_color)
|
|
||||||
$layout_info->customized_primary_color = '#f44336';
|
|
||||||
}
|
|
||||||
</block>
|
|
||||||
<block cond="$layout_info->extra_var->primary_color->type !== 'select' && $layout_info->extra_var->customized_primary_color->type !== 'colorpicker'">
|
|
||||||
{@$layout_info->primary_color = 'red';}
|
|
||||||
</block>
|
|
||||||
{@
|
|
||||||
$material_colors = array(
|
|
||||||
'red' => '#f44336',
|
|
||||||
'crimson' => '#aa0000',
|
|
||||||
'pink' => '#e91e63',
|
|
||||||
'purple' => '#9c27b0',
|
|
||||||
'deep-purple' => '#673ab7',
|
|
||||||
'indigo' => '#3f51b5',
|
|
||||||
'deep-blue' => '#00397f',
|
|
||||||
'blue' => '#2196f3',
|
|
||||||
'light-blue' => '#03a9f4',
|
|
||||||
'cyan' => '#00bcd4',
|
|
||||||
'teal' => '#009688',
|
|
||||||
'green' => '#4caf50',
|
|
||||||
'light-green' => '#8bc34a',
|
|
||||||
'lime' => '#cddc39',
|
|
||||||
'yellow' => '#ffeb3b',
|
|
||||||
'amber' => '#ffc107',
|
|
||||||
'orange' => '#ff9800',
|
|
||||||
'deep-orange' => '#ff5722',
|
|
||||||
'brown' => '#795548',
|
|
||||||
'grey' => '#9e9e9e',
|
|
||||||
'blue-grey' => '#607d8b',
|
|
||||||
'black' => '#000000',
|
|
||||||
'white' => '#ffffff',
|
|
||||||
'customized' => $layout_info->customized_primary_color,
|
|
||||||
);
|
|
||||||
}
|
|
||||||
<!--// Load styles -->
|
|
||||||
{@$colorset = $material_colors[$member_config->colorset];}
|
|
||||||
{@$skin_color = $material_colors[$layout_info->primary_color];}
|
|
||||||
<block cond="$colorset">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", trim($colorset)) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = trim($colorset)}
|
|
||||||
<!--@if(strlen(trim($colorset)) === 4)-->
|
|
||||||
{@$skin_color = trim($colorset)[1].trim($colorset)[1].trim($colorset)[2].trim($colorset)[2].trim($colorset)[3].trim($colorset)[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
<block cond="!$skin_color">
|
|
||||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", $layout_info->primary_color) && in_array(strlen(trim($colorset)), array(4, 7)))-->
|
|
||||||
{@$skin_color = $layout_info->primary_color}
|
|
||||||
<!--@if(strlen($layout_info->primary_color) === 4)-->
|
|
||||||
{@$skin_color = $layout_info->primary_color[1].$layout_info->primary_color[1].$layout_info->primary_color[2].$layout_info->primary_color[2].$layout_info->primary_color[3].$layout_info->primary_color[3]}
|
|
||||||
<!--@endif-->
|
|
||||||
<!--@else-->
|
|
||||||
{@$skin_color = '#f44336'}
|
|
||||||
<!--@endif-->
|
|
||||||
</block>
|
|
||||||
{@Context::set('simple_less_value', array('red' => hexdec(substr($skin_color, 1, 2)), 'green' => hexdec(substr($skin_color, 3, 2)), 'blue' => hexdec(substr($skin_color, 5, 2)) ))}
|
|
||||||
<load target="css/message.less" vars="$simple_less_value" />
|
|
||||||
<section class="rx_simple_message">
|
|
||||||
|
|
@ -1,207 +0,0 @@
|
||||||
@charset "UTF-8";
|
|
||||||
/*
|
|
||||||
@method .text-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a text color according to WCAG 2.0 contrast guideline. The calcualtion of contrast follows the formula on the guideline.
|
|
||||||
*/
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @bright_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; lighten(@bright_color, 5%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 4.5 * @multi ) {
|
|
||||||
color: @dark_color;
|
|
||||||
}
|
|
||||||
.text-contrast(@bg_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@bg_color) + 0.05) )) and ( ( (luma(@bg_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 4.5 * @multi ) {
|
|
||||||
.text-contrast(@bg_color; @bright_color; darken(@dark_color, 5%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
@method .bg-contrast()
|
|
||||||
@author misol <misol.kr@gmail.com>
|
|
||||||
@brief Select a background color, which has less contrast background color than WCAG 2.0 contrast guideline. On the WCAG 2.0 guideline, bigger string can have less contrast as 3.0.
|
|
||||||
*/
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i >= 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @bright_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) ) and ( ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; lighten(@bright_color,3%); @dark_color; @multi; @i + 1);
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > 3 * @multi ) {
|
|
||||||
background: @dark_color;
|
|
||||||
}
|
|
||||||
.bg-contrast(@text_color; @bright_color:#fff; @dark_color:#000; @multi:1; @i:0) when (@i < 100) and (( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) > ( ( luma(@bright_color) + 0.05) / ( luma(@text_color) + 0.05) )) and ( ( (luma(@text_color) + 0.05) / (luma(@dark_color) + 0.05) ) =< 3 * @multi ) {
|
|
||||||
.bg-contrast(@text_color; @bright_color; darken(@dark_color, 3%); @multi; @i + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* As LESS library in Rhymix substitude variables as an strings, convert colors as the color objects of LESS. */
|
|
||||||
@color: rgb(@red, @green, @blue);
|
|
||||||
|
|
||||||
/* As this file handle some wild-selectors to control display settings, hide inline script and style codes. */
|
|
||||||
script, style
|
|
||||||
{
|
|
||||||
display:none!important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* skin container, default settings */
|
|
||||||
.rx_simple_message
|
|
||||||
{
|
|
||||||
max-width:400px;
|
|
||||||
margin:30px auto;
|
|
||||||
box-sizing:border-box;
|
|
||||||
font-family: "맑은 고딕", "Apple SD Gothic Neo","나눔고딕",NanumGothic,'Nanum Gothic',Arial,Helvetica,sans-serif;
|
|
||||||
font-size: 14px;
|
|
||||||
text-align: justify;
|
|
||||||
padding: 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rx_simple_message a
|
|
||||||
{
|
|
||||||
color: @color;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
/* Horizontal align */
|
|
||||||
.rx_simple_message .pos-right
|
|
||||||
{
|
|
||||||
position:absolute;
|
|
||||||
right:0
|
|
||||||
}
|
|
||||||
/* message; error, info, update */
|
|
||||||
.rx_message-notice, .rx_message-notice.info
|
|
||||||
{
|
|
||||||
.bg-contrast(#000; lighten(@color, 5%); darken(@color, 5%); 5.0);
|
|
||||||
color: #000;
|
|
||||||
padding: 15px;
|
|
||||||
margin:0;
|
|
||||||
margin-top:0;
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
.rx_message-notice.error
|
|
||||||
{
|
|
||||||
background: #fff3e0;
|
|
||||||
.text-contrast(#fff3e0);
|
|
||||||
}
|
|
||||||
.rx_message-notice.update
|
|
||||||
{
|
|
||||||
background: #e8f5e9;
|
|
||||||
.text-contrast(#e8f5e9);
|
|
||||||
}
|
|
||||||
.rx_message-notice>*
|
|
||||||
{
|
|
||||||
padding: 0;
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
/* message forms */
|
|
||||||
.rx_simple_message .sw-body
|
|
||||||
{
|
|
||||||
box-sizing:border-box;
|
|
||||||
background:#ffffff;
|
|
||||||
margin: 0 0 20px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
.rx_simple_message .sw-body>*
|
|
||||||
{
|
|
||||||
padding: 20px;
|
|
||||||
margin:0;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_message .sw-body h1
|
|
||||||
{
|
|
||||||
margin:0;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.rx_simple_message form div.control-group>*, .rx_simple_message .sw-body dl>*
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
position:relative;
|
|
||||||
box-sizing: border-box;
|
|
||||||
width:100%;
|
|
||||||
min-height:25px;
|
|
||||||
margin:0px;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
.rx_simple_message form div.control-group>*:first-child
|
|
||||||
{
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.rx_simple_message form div.control-group>input, .rx_simple_message form div.control-group>select
|
|
||||||
{
|
|
||||||
border: 1px solid #bdbdbd;
|
|
||||||
border-radius: 0;
|
|
||||||
font-size:14px;
|
|
||||||
line-height: 18px;
|
|
||||||
margin-top: 0;
|
|
||||||
padding:8px 8px 6px;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
}
|
|
||||||
.rx_simple_message .sw-body dl>*
|
|
||||||
{
|
|
||||||
list-style:none;
|
|
||||||
border-bottom: 1px solid #e0e0e0;
|
|
||||||
}
|
|
||||||
.rx_simple_message .sw-body dl dt, .rx_simple_message form>div.control-group>label, .rx_simple_message form>div.control-group>div.control-label
|
|
||||||
{
|
|
||||||
font-weight: bold;
|
|
||||||
border:0;
|
|
||||||
}
|
|
||||||
.rx_simple_message form
|
|
||||||
{
|
|
||||||
overflow: hidden;
|
|
||||||
width:100%;
|
|
||||||
white-space: normal;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
.rx_simple_message form div.control-group>input[type="submit"], .rx_simple_message form div.control-group>input.btn.dateRemover, .rx_simple_message .sw-footer>a, .rx_simple_message .sw-anchor-buttons a
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
padding: 10px;
|
|
||||||
vertical-align: bottom;
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 3.0);
|
|
||||||
font-weight: bold;
|
|
||||||
text-shadow: none;
|
|
||||||
border:0;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
.rx_simple_message form div.control-group>input[type="submit"], .rx_simple_message .sw-footer{
|
|
||||||
margin: 20px 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.rx_simple_message .sw-footer>a
|
|
||||||
{
|
|
||||||
display: block;
|
|
||||||
background: #fff;
|
|
||||||
font-size: 14px;
|
|
||||||
box-shadow: 0 1px 2px rgba(0,0,0,0.16), 0 1px 2px rgba(0,0,0,0.23);
|
|
||||||
color: #000;
|
|
||||||
font-weight: bold;
|
|
||||||
padding: 10px;
|
|
||||||
min-width:25px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* button hover */
|
|
||||||
.rx_simple_message form div.control-group>input[type="submit"]:hover, .rx_simple_message form div.control-group>input.btn.dateRemover:hover, .rx_simple_message .sw-footer>a:hover, .rx_simple_message .sw-anchor-buttons a:hover, .rx_simple_message .pagination ul li>a:hover, .rx_simple_message .rx_sw_list .content_delete button:hover,
|
|
||||||
.rx_simple_message form div.control-group>input[type="submit"]:focus, .rx_simple_message form div.control-group>input.btn.dateRemover:focus, .rx_simple_message .sw-footer>a:focus, .rx_simple_message .sw-anchor-buttons a:focus, .rx_simple_message .pagination ul li>a:focus, .rx_simple_message .rx_sw_list .content_delete button:focus
|
|
||||||
|
|
||||||
{
|
|
||||||
|
|
||||||
.bg-contrast(#000; lighten(@color,5%); darken(@color,5%); 4.0);
|
|
||||||
color: #000;
|
|
||||||
box-shadow: 0 2px 4px rgba(0,0,0,0.16), 0 2px 4px rgba(0,0,0,0.23);
|
|
||||||
}
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$http_status_code} {$http_status_message}</h1>
|
|
||||||
<div class="rx_member-notice error">{lang('common.msg_module_is_not_exists')}</div>
|
|
||||||
</section>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<skin version="0.2">
|
|
||||||
<title xml:lang="ko">네모의 꿈</title>
|
|
||||||
<title xml:lang="en">Rectangular World</title>
|
|
||||||
<description xml:lang="ko">깔끔한 면과 그림자를 이용한 메시지 스킨</description>
|
|
||||||
<description xml:lang="en">Simple rectangular planes and shadows</description>
|
|
||||||
<version>0.1</version>
|
|
||||||
<date>2017-02-07</date>
|
|
||||||
<author email_address="misol.kr@gmail.com" link="https://github.com/misol">
|
|
||||||
<name xml:lang="ko">misol</name>
|
|
||||||
<name xml:lang="en">misol</name>
|
|
||||||
</author>
|
|
||||||
<colorset type="colorpicker">
|
|
||||||
</colorset>
|
|
||||||
</skin>
|
|
||||||
|
|
@ -1,59 +0,0 @@
|
||||||
<include target="./common_header.html" />
|
|
||||||
<div class="signin">
|
|
||||||
<section class="sw-body">
|
|
||||||
<h1>{$system_message}</h1>
|
|
||||||
<div class="rx_message-notice error" cond="$system_message_detail">
|
|
||||||
{$system_message_detail}
|
|
||||||
</div>
|
|
||||||
<div class="rx_message-notice location" cond="$system_message_location">
|
|
||||||
{$system_message_location}
|
|
||||||
</div>
|
|
||||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/message/skins/simple_world/system_message/1'" class="rx_message-notice {$XE_VALIDATOR_MESSAGE_TYPE}">
|
|
||||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
|
||||||
</div>
|
|
||||||
<form cond="!$is_logged && $module == 'admin'" ruleset="@login" action="{getUrl('','act','procMemberLogin')}" method="post" id="fo_member_login">
|
|
||||||
<input type="hidden" name="act" value="procMemberLogin" />
|
|
||||||
<input type="hidden" name="success_return_url" value="{getRequestUriByServerEnviroment()}" />
|
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/message/skins/simple_world/system_message/1" />
|
|
||||||
<div class="control-group">
|
|
||||||
<label for="uid">
|
|
||||||
<block cond="$member_config->identifier == 'user_id'">
|
|
||||||
{lang('common.user_id')}
|
|
||||||
</block>
|
|
||||||
<block cond="$member_config->identifier != 'user_id'">
|
|
||||||
{lang('common.email_address')}
|
|
||||||
</block>
|
|
||||||
</label>
|
|
||||||
<input type="text" cond="$member_config->identifier == 'user_id'" autocapitalize="off" autocorrect="off" autofocus="autofocus" name="user_id" id="uid" required="required" tabindex="1" title="{lang('common.user_id')}" />
|
|
||||||
<input type="email" cond="$member_config->identifier != 'user_id'" autocapitalize="off" autocorrect="off" autofocus="autofocus" name="user_id" id="uid" required="required" tabindex="1" title="{lang('common.email_address')}" />
|
|
||||||
<label for="upw">{lang('common.password')}<a class="pos-right" href="{getUrl('act','dispMemberFindAccount')}">{lang('member.cmd_find_member_account')}</a></label>
|
|
||||||
<input type="password" name="password" id="upw" required="required" tabindex="2" title="{lang('common.password')}" />
|
|
||||||
<label for="keepid_opt">
|
|
||||||
<input type="checkbox" name="keep_signed" id="keepid_opt" tabindex="3" value="Y" />
|
|
||||||
{lang('member.keep_signed')}
|
|
||||||
</label>
|
|
||||||
<div id="rx_message-warning" class="rx_message-notice">
|
|
||||||
{lang('member.about_keep_warning')}
|
|
||||||
</div>
|
|
||||||
<input type="submit" tabindex="4" value="{lang('member.cmd_login')}" />
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</section>
|
|
||||||
<div class="sw-footer">
|
|
||||||
<a cond="$member_config->enable_join !== 'N'" href="{getUrl('module','','act','dispMemberSignUpForm')}">{lang('member.cmd_signup')}</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
$(function($){
|
|
||||||
var keep_msg = $('#rx_message-warning');
|
|
||||||
keep_msg.hide();
|
|
||||||
$('#keepid_opt').change(function(){
|
|
||||||
if($(this).is(':checked')){
|
|
||||||
keep_msg.slideDown(200);
|
|
||||||
} else {
|
|
||||||
keep_msg.slideUp(200);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
<include target="./common_footer.html" />
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue