mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 03:01:43 +09:00
네모의 꿈/ 컨텐츠 위젯 스킨 (#712)
## 컨텐츠 모듈 스킨 - 사이트 테마를 따르지 않고 다른 색을 선택할 수 있도록 네모의 꿈 회원 스킨 컬러셋 추가. - 탭이 많을 때 터치 환경이 아니면 좌우로 넘기기 어려운 점을 고려하여서 메뉴를 펼침. - 작은 화면에서 화면을 최대한 활용하도록, 레이아웃 햄버거 메뉴를 부드럽게 나타내고 감춥니다. ## 위젯에서 LESS/SCSS 의 사용 - 변수를 위젯 캐시에도 전달할 수 있도록 해서 LESS 나 SCSS 에 값 전달이 가능하도록 함. - LESS 나 SCSS 를 사용한 경우에 위젯 코드 캐싱 코드가 적절하게 기록되도록 해서 LESS나 SCSS 를 사용 가능하도록 수정. ## 그 외 변화 - Reduce the number of regular expressions.
This commit is contained in:
parent
b1ba031117
commit
5140047b5f
26 changed files with 1286 additions and 27 deletions
|
|
@ -41,8 +41,8 @@
|
|||
<block cond="$layout_info->extra_var->primary_color->type !== 'select' && $layout_info->extra_var->customized_primary_color->type !== 'colorpicker'">
|
||||
{@$layout_info->primary_color = 'blue';}
|
||||
</block>
|
||||
|
||||
<!--// Load styles -->
|
||||
{@$colorset = $material_colors[$member_config->colorset];}
|
||||
{@$skin_color = $material_colors[$layout_info->primary_color];}
|
||||
<block cond="!$skin_color">
|
||||
<!--@if(preg_match("/#([a-f0-9]{3}){1,2}/i", $layout_info->primary_color))-->
|
||||
|
|
@ -54,7 +54,10 @@
|
|||
{@$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)) ))}
|
||||
<block cond="$colorset">
|
||||
{@$skin_color = $colorset}
|
||||
</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)">
|
||||
|
|
|
|||
|
|
@ -188,9 +188,6 @@ script, style
|
|||
.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;
|
||||
}
|
||||
|
|
@ -198,9 +195,7 @@ script, style
|
|||
list-style: outside none none;
|
||||
margin: 0;
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
-webkit-overflow-scrolling: touch;
|
||||
padding: 6px 0px 100px;
|
||||
padding: 6px 0;
|
||||
text-decoration: none;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,94 @@
|
|||
<name xml:lang="en">misol</name>
|
||||
</author>
|
||||
|
||||
<colorset type="colorpicker">
|
||||
<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,5 +1,5 @@
|
|||
<!--// responsible layout -->
|
||||
{Context::addMetaTag("viewport", "width=device-width, user-scalable=yes")}
|
||||
{@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 -->
|
||||
{@
|
||||
|
|
@ -57,6 +57,6 @@
|
|||
{@$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)) ))}
|
||||
{@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,5 +1,5 @@
|
|||
<!--// META -->
|
||||
{Context::addHtmlHeader('<meta name="viewport" content="width=1240">')}
|
||||
{@Context::addHtmlHeader('<meta name="viewport" content="width=1240">')}
|
||||
<!--// CSS -->
|
||||
<style>
|
||||
.xedition-error {
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ class pageMobile extends pageView
|
|||
if($mtime + $interval*60 > $_SERVER['REQUEST_TIME'])
|
||||
{
|
||||
$page_content = FileHandler::readFile($cache_file);
|
||||
$page_content = preg_replace('@<\!--#Meta:@', '<!--Meta:', $page_content);
|
||||
$page_content = str_replace('<!--#Meta:', '<!--Meta:', $page_content);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ class pageView extends page
|
|||
if($mtime + $this->interval*60 > $_SERVER['REQUEST_TIME'])
|
||||
{
|
||||
$page_content = FileHandler::readFile($this->cache_file);
|
||||
$page_content = preg_replace('@<\!--#Meta:@', '<!--Meta:', $page_content);
|
||||
$page_content = str_replace('<!--#Meta:', '<!--Meta:', $page_content);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -395,7 +395,16 @@ class widgetController extends widget
|
|||
$cache_data = Rhymix\Framework\Cache::get('widget_cache:' . $widget_sequence);
|
||||
if ($cache_data)
|
||||
{
|
||||
return preg_replace('@<\!--#Meta:@', '<!--Meta:', $cache_data);
|
||||
// Load the variables, need to load the LESS or SCSS files.
|
||||
if(is_object($cache_data))
|
||||
{
|
||||
foreach ($cache_data->variables as $key => $value)
|
||||
{
|
||||
Context::set($key, $value);
|
||||
}
|
||||
$cache_data = $cache_data->content;
|
||||
}
|
||||
return str_replace('<!--#Meta:', '<!--Meta:', $cache_data);
|
||||
}
|
||||
|
||||
$oWidget = $this->getWidgetObject($widget);
|
||||
|
|
@ -404,9 +413,26 @@ class widgetController extends widget
|
|||
$widget_content = $oWidget->proc($args);
|
||||
$oModuleController = getController('module');
|
||||
$oModuleController->replaceDefinedLangCode($widget_content);
|
||||
|
||||
|
||||
Rhymix\Framework\Cache::set('widget_cache:' . $widget_sequence, $widget_content, $widget_cache, true);
|
||||
|
||||
// Keep the variables, need to load the LESS or SCSS files.
|
||||
if(preg_match_all('/<!--#Meta:([a-z0-9\_\-\/\.\@\:]+)(\?\$\_\_Context\-\>[a-z0-9\_\-\/\.\@\:]+)?-->/is', $widget_content, $widget_var_matches, PREG_SET_ORDER))
|
||||
{
|
||||
$cache_content = new stdClass();
|
||||
$cache_content->content = $widget_content;
|
||||
$cache_content->variables = new stdClass();
|
||||
foreach($widget_var_matches as $matches)
|
||||
{
|
||||
if($matches[2])
|
||||
{
|
||||
$key = str_replace('?$__Context->', '', $matches[2]);
|
||||
$cache_content->variables->{$key} = Context::get($key);
|
||||
}
|
||||
}
|
||||
Rhymix\Framework\Cache::set('widget_cache:' . $widget_sequence, $cache_content, $widget_cache, true);
|
||||
}
|
||||
|
||||
return $widget_content;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue