1
0
Fork 0
mirror of https://github.com/Oreolek/ifhub.club.git synced 2024-06-17 07:10:48 +03:00

Шаблон Synio

Дефолтный шаблон изменен на synio
This commit is contained in:
Denis Shakhov 2016-10-10 22:51:04 +07:00
parent b2e14e3efc
commit dd202f682f
22 changed files with 647 additions and 63 deletions

View file

@ -38,7 +38,7 @@ $config['path']['offset_request_url'] = 0;
/**
* Настройки HTML вида
*/
$config['view']['skin'] = 'developer'; // Название текущего шаблона
$config['view']['skin'] = 'synio'; // Название текущего шаблона
$config['view']['theme'] = 'default'; // тема оформления шаблона (шаблон должен поддерживать темы)
$config['view']['rtl'] = false;
$config['view']['name'] = 'Мой сайт'; // название сайта

View file

@ -27,7 +27,7 @@
*}
{block 'topic_header'}
<header class="{$component}-header">
{$_headingTag = Config::Get('view.seo.topic_heading')}
{$_headingTag = ($isList) ? Config::Get('view.seo.topic_heading_list') : Config::Get('view.seo.topic_heading')}
{* Заголовок *}
<{$_headingTag} class="{$component}-title ls-word-wrap">

View file

@ -60,7 +60,7 @@
* Подписаться
*/
follow: function() {
this._load( 'follow', { users: [ this.element.data('login') ] }, 'onFollow' );
this._load( 'follow', { users: [ this.element.data('id') ] }, 'onFollow' );
},
/**

View file

@ -36,6 +36,7 @@ $config['head']['template']['css'] = array(
*/
// Тег используемый для заголовков топиков
$config['view']['seo']['topic_heading'] = 'h2';
$config['view']['seo']['topic_heading'] = 'h1';
$config['view']['seo']['topic_heading_list'] = 'h2';
return $config;

View file

@ -458,6 +458,10 @@ jQuery(document).ready(function($){
/**
* Editor
*/
// Стили контента TinyMCE
$.livestreet.lsEditorVisual.prototype.options.sets.common.content_css = PATH_SKIN + '/components/editor/css/tinymce-content.css';
$( '.js-editor-default' ).lsEditor();

View file

@ -0,0 +1,145 @@
/**
* Helpers
*
* @license GNU General Public License, version 2
* @copyright 2013 OOO "ЛС-СОФТ" {@link http://livestreetcms.com}
* @author Denis Shakhov <denis.shakhov@gmail.com>
*/
/* Margins */
.ls-mt-10 { margin-top: 10px !important; }
.ls-mt-15 { margin-top: 15px !important; }
.ls-mt-20 { margin-top: 20px !important; }
.ls-mt-30 { margin-top: 30px !important; }
.ls-mb-10 { margin-bottom: 10px !important; }
.ls-mb-15 { margin-bottom: 15px !important; }
.ls-mb-20 { margin-bottom: 20px !important; }
.ls-mb-30 { margin-bottom: 30px !important; }
.ls-m-0 { margin: 0 !important; }
/* Paddings */
.ls-pt-10 { padding-top: 10px !important; }
.ls-pt-15 { padding-top: 15px !important; }
.ls-pt-20 { padding-top: 20px !important; }
.ls-pt-30 { padding-top: 30px !important; }
.ls-pb-10 { padding-bottom: 10px !important; }
.ls-pb-15 { padding-bottom: 15px !important; }
.ls-pb-20 { padding-bottom: 20px !important; }
.ls-pb-30 { padding-bottom: 30px !important; }
.ls-p-0 { padding: 0 !important; }
/* Text Align */
.ls-ta-c { text-align: center !important; }
.ls-ta-r { text-align: right !important; }
/* Floats */
.ls-fl-r, .ls-float-right, .ls-pull-right { float: right !important; }
.ls-fl-l, .ls-float-left, .ls-pull-left { float: left !important; }
/* Misc */
.ls-va-m { vertical-align: middle !important; }
/* Clearfix */
.ls-clearfix:after {
content: "";
display: block;
clear: both;
}
/* Word Wrap */
.ls-word-wrap {
white-space: -moz-pre-wrap !important;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
white-space: pre-wrap;
word-wrap: break-word;
white-space: normal;
}
/* Width */
[class^="ls-width-"],
[class*=" ls-width-"] { box-sizing: border-box; }
.ls-width-full { width: 100% !important; }
.ls-width-50 { width: 50px !important; }
.ls-width-100 { width: 100px !important; }
.ls-width-150 { width: 150px !important; }
.ls-width-200 { width: 200px !important; }
.ls-width-250 { width: 250px !important; }
.ls-width-300 { width: 300px !important; }
.ls-width-350 { width: 350px !important; }
.ls-width-400 { width: 400px !important; }
.ls-width-450 { width: 450px !important; }
.ls-width-500 { width: 500px !important; }
.ls-width-550 { width: 550px !important; }
.ls-width-600 { width: 600px !important; }
.ls-width-650 { width: 650px !important; }
/* Loader */
/* TODO: Change gif */
.ls-loading {
background-image: url(../images/loader.gif) !important;
background-position: 50% 50%;
background-repeat: no-repeat;
}
.ls-link-dashed { text-decoration: none; border-bottom: 1px dashed; }
.ls-link-dotted { text-decoration: none; border-bottom: 1px dotted; }
/* Images */
.ls-img-responsive {
min-width: 100%;
height: auto;
}
.ls-img-rounded { border-radius: 5px; }
.ls-img-circle { border-radius: 50%; }
.ls-img-thumbnail {
display: inline-block;
max-width: 100%;
height: auto;
padding: 4px;
line-height: 1.4;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 4px;
-webkit-transition: all .2s ease-in-out;
transition: all .2s ease-in-out;
}
/* Visibility */
.ls-show {
display: block !important;
}
.ls-hidden {
display: none !important;
visibility: hidden !important;
}
.ls-invisible {
visibility: hidden;
}
/* Caret */
.ls-caret {
display: inline-block;
height: 0;
width: 0;
border: 4px solid transparent;
border-top-color: #333;
}
.ls-caret.ls-caret--right {
border-top-color: transparent !important;
border-left-color: #333;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 554 B

View file

@ -0,0 +1,94 @@
/**
* Dropdowns
*
* @module ls/dropdown
*
* @license GNU General Public License, version 2
* @copyright 2013 OOO "ЛС-СОФТ" {@link http://livestreetcms.com}
* @author Denis Shakhov <denis.shakhov@gmail.com>
*/
.ls-dropdown {
display: inline-block;
}
.ls-dropdown > .ls-button-group {
display: block;
}
/* Dropdown toggle */
.ls-dropdown-toggle {
position: relative;
cursor: pointer;
padding-right: 26px !important;
}
.ls-dropdown-toggle:after {
content: "";
position: absolute;
top: 50%;
right: 9px;
height: 0;
width: 0;
margin-top: -1px;
border: 4px solid transparent;
border-top-color: #333;
}
.ls-button--success.ls-dropdown-toggle:after,
.ls-button--info.ls-dropdown-toggle:after,
.ls-button--warning.ls-dropdown-toggle:after,
.ls-button--danger.ls-dropdown-toggle:after,
.ls-button--primary.ls-dropdown-toggle:after { border-top-color: #fff; opacity: .9; }
.ls-button--no-text.ls-dropdown-toggle {
padding: 0;
min-height: 32px;
}
.ls-button--no-text.ls-button--icon.ls-dropdown-toggle {
padding-left: 8px;
}
/**
* Выпадающее меню
*/
.ls-nav--dropdown .ls-nav--sub {
min-width: 150px;
display: none;
position: absolute;
z-index: 900;
padding: 15px 0;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0,0,0,.3);
background: #fff;
border: 3px solid #edf8fd;
font-size: 13px;
}
.ls-nav--dropdown .ls-nav--sub .ls-nav--sub {
left: 100%;
top: -18px;
}
.ls-nav--dropdown .ls-nav--sub > .ls-nav-item:not(:last-child) {
margin-bottom: 7px;
}
.ls-nav--dropdown .ls-nav--sub .ls-nav-item-link {
padding: 0 15px;
}
.ls-nav--dropdown .ls-nav--sub .ls-nav-item-text {
text-decoration: underline;
}
.ls-nav--dropdown .ls-nav--sub > .ls-nav-item.active,
.ls-nav--dropdown .ls-nav--sub > .ls-nav-item.active > .ls-nav-item-link {
color: #aaa;
}
.ls-nav--dropdown > .ls-nav-item--has-children {
position: relative;
}
.ls-nav--dropdown:not(.ls-nav--sub) > .ls-nav-item > .ls-nav--sub {
top: 100%;
left: 0;
}
.ls-nav--dropdown .ls-nav--sub > .ls-nav-item:hover > .ls-nav--sub {
display: block;
}

View file

@ -0,0 +1,23 @@
{**
* Выпадающее меню
*
* @param string name
* @param string text
* @param string activeItem
* @param array items
*}
{component_define_params params=[ 'items', 'name', 'text', 'activeItem', 'mods', 'classes', 'attributes' ]}
{component 'nav'
name = ( $name ) ? "{$name}_menu" : ''
activeItem = $activeItem
mods = 'stacked'
isSubnav = true
showSingle = true
classes = "ls-dropdown-menu js-ls-dropdown-menu {$classes}"
attributes = array_merge( $attributes|default:[], [
'role' => 'menu',
'aria-hidden' => 'true'
])
items = $items}

View file

@ -0,0 +1,49 @@
{**
* Выпадающее меню
*
* @param string text
* @param string activeItem
* @param boolean isSplit
* @param array menu
*}
{* Название компонента *}
{$component = 'ls-dropdown'}
{component_define_params params=[ 'text', 'icon', 'activeItem', 'isSplit', 'menu', 'mods', 'classes', 'attributes' ]}
{if ! $text}
{$mods = "$mods no-text"}
{/if}
{block 'dropdown_options'}{/block}
<div class="{$component} {cmods name=$component mods=$mods} {$classes} ls-nav--dropdown" {cattr list=$attributes}>
{* Кнопка *}
{if $isSplit}
{component 'button' template='group' buttons=[
[ 'text' => $text, 'mods' => $mods, 'attributes' => [ 'tabindex' => -1 ] ],
{component 'button'
type = 'button'
classes = "{$component}-toggle js-{$component}-toggle"
mods = "{$mods} no-text"
attributes = array_merge( $attributes|default:[], [
'aria-haspopup' => 'true',
'aria-expanded' => 'false'
])}
]}
{else}
{component 'button'
type = 'button'
classes = "{$component}-toggle js-{$component}-toggle"
mods = $mods
text = $text
icon = $icon
attributes = array_merge( $attributes|default:[], [
'aria-haspopup' => 'true',
'aria-expanded' => 'false'
])}
{/if}
{* Меню *}
{component 'dropdown' template='menu' activeItem=$activeItem items=$menu}
</div>

View file

@ -0,0 +1,238 @@
@import url(//fonts.googleapis.com/css?family=PT+Sans:400,700&amp;subset=latin,cyrillic);
/**
* Основные стили
*/
body {
font-size: 13px;
line-height: 1.6em;
font-family: Verdana, "Helvetica Neue", Helvetica, Arial, sans-serif;
color: #000;
background-color: #fbfcfc;
}
/**
* Ссылки
*/
a {
color: #3f8ad7;
text-decoration: none;
}
a:hover {
color: #f00;
}
/**
* Параграф
*/
p {
margin: 0 0 15px;
}
p:last-child {
margin-bottom: 0;
}
/**
* Заголовки
*/
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.ls-heading {
margin: 0 0 15px;
font-family: "PT Sans", sans-serif;
font-weight: 300;
line-height: 1.2em;
}
h1, .h1 { font-size: 36px; }
h2, .h2 { font-size: 30px; }
h3, .h3 { font-size: 24px; }
h4, .h4 { font-size: 18px; }
h5, .h5 { font-size: 14px; }
h6, .h6 { font-size: 12px; }
/* Мелкий текст */
h1 small, .h1 small,
h2 small, .h2 small,
h3 small, .h3 small,
h4 small, .h4 small,
h5 small, .h5 small,
h6 small, .h6 small { font-size: 65%; color: #aaa; }
/**
* Выделенный текст
*/
mark {
padding: 2px 3px;
background: #fcf8e3;
}
/**
*
*/
blockquote {
margin: 0 0 15px;
padding: 10px 15px;
background: #fbfbfc;
color: #555;
border-left: 5px solid #EDEDF2;
}
.blockquote--reverse,
blockquote.pull-right {
border-left: 5px solid #EDEDF2;
border-left: 0;
text-align: right;
}
blockquote footer,
blockquote cite {
color: #aaa;
}
/**
*
*/
address {
margin-bottom: 15px;
font-style: normal;
}
/**
*
*/
abbr {
border-bottom: 1px dotted;
cursor: help;
}
/**
* Списки
*/
ul, ol {
margin: 0;
list-style: none;
padding: 0;
}
ul ol, ol ul, ul ul, ol ol {
margin-bottom: 0;
}
/**
* Код
*/
code,
kbd,
pre,
samp {
font-family: Menlo, Monaco, Consolas, monospace;
}
/* Строчный код */
code {
padding: 2px 5px;
border-radius: 3px;
background: #f1f1f1;
color: #555;
word-break: break-all;
word-wrap: break-word;
}
/* Блок кода */
pre {
display: block;
padding: 15px;
font: normal 13px/1.5em;
margin: 0 0 15px;
word-break: break-all;
word-wrap: break-word;
color: #333;
background-color: #f8f8f8;
border: 1px solid #eee;
border-radius: 3px;
direction: ltr !important;
}
pre code {
padding: 0;
font-size: inherit;
color: inherit;
white-space: pre-wrap;
background-color: transparent;
border-radius: 0;
}
.pre-scrollable {
max-height: 150px;
overflow-y: scroll;
}
/* Тег kbd */
kbd {
padding: 2px 4px;
font-size: 90%;
color: #eee;
background-color: #333;
border-radius: 3px;
}
kbd kbd {
padding: 0;
font-size: 100%;
font-weight: bold;
box-shadow: none;
}
/* Links */
a { text-decoration: underline; }
/* Code */
pre {
font-size: 12px;
line-height: 18px;
}
/* Headers */
h4 { font-size: 24px; margin-bottom: 7px; font-weight: bold; }
h5 { font-size: 20px; margin-bottom: 7px; font-weight: bold; }
h6 { font-size: 18px; margin-bottom: 7px; font-weight: bold; }
/* Images */
img[align="right"] { margin: 4px 0 5px 25px; }
img[align="left"] { margin: 4px 25px 10px 0; }
img.image-center { display: block; margin: 0 auto; }
/* Responsive */
object,
iframe,
img {
max-width: 100%;
border: none;
}
/* Lists */
ul,
ol { padding: 0 0 0 40px; }
ul { list-style-type: disc; }
ol { list-style-type: decimal; }
dd { margin: 0 0 0 40px; }
/* Tables */
table { border: 1px solid #e1e1e1; clear: both; }
table td,
table th { padding: 5px 10px; border: 1px solid #e1e1e1; }
/* User */
.ls-user {
font-weight: bold;
display: inline-block;
}
a.ls-user {
text-decoration: none;
}

View file

@ -28,7 +28,7 @@
/**
* Stacked
*/
.ls-nav--stacked > .ls-nav-item {
.ls-nav--stacked .ls-nav-item {
float: none;
margin: 0;
}
@ -103,7 +103,7 @@
color: #628fa5;
border-color: #ebf0f4;
}
.ls-nav--pills > .ls-nav-item.active .ls-nav-item-text {
.ls-nav--pills > .ls-nav-item.active > .ls-nav-item-link > .ls-nav-item-text {
text-decoration: none;
}
.ls-nav--pills > .ls-nav-item.active > .ls-nav-item-link:hover {
@ -118,7 +118,6 @@
margin-bottom: 0;
}
.ls-nav.ls-nav--pills.ls-nav--stacked > .ls-nav-item {
float: none;
margin-bottom: 3px;
margin-right: 0;
}
@ -136,61 +135,69 @@
line-height: inherit;
}
/**
* Вложенная навигация (уровень вложенности > 1)
*/
.ls-nav--sub {
/* Caret */
.ls-nav--pills .ls-nav-item-link > .ls-nav-item-caret {
position: absolute;
display: none;
min-width: 150px;
z-index: 100;
background: #fff;
box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
width: 5px;
height: 9px;
background: url(../images/caret.png) no-repeat;
top: 50%;
right: 9px;
margin-top: -4px;
border: none;
}
.ls-nav.ls-nav--sub > .ls-nav-item > .ls-nav-item-link {
padding: 5px 12px;
line-height: 20px;
}
.ls-nav--sub > .ls-nav-item:hover {
background: #2196F3;
color: #fff;
}
.ls-nav--sub > .ls-nav-item:hover > .ls-nav-item-link {
color: #fff;
}
.ls-nav--sub > .ls-nav-item.active {
background: #2196F3;
color: #fff;
}
.ls-nav--sub > .ls-nav-item.active > .ls-nav-item-link {
color: #fff;
}
.ls-nav-separator {
height: 0;
border-top: 1px solid #eee;
margin: 5px 0;
}
/**
* Sub
* Вложенная навигация
*/
.ls-nav--sub .ls-nav--sub {
left: 100%;
top: 0;
.ls-nav--pills .ls-nav--sub {
min-width: 150px;
display: none;
position: absolute;
z-index: 900;
padding: 15px 0;
border-radius: 10px;
box-shadow: 0 0 10px rgba(0,0,0,.3);
background: #fff;
border: 3px solid #edf8fd;
font-size: 13px;
}
.ls-nav > .ls-nav-item--has-children {
.ls-nav--pills .ls-nav--sub .ls-nav--sub {
left: 100%;
top: -18px;
}
.ls-nav--pills .ls-nav--sub > .ls-nav-item:not(:last-child) {
margin-bottom: 7px;
}
.ls-nav--pills .ls-nav--sub .ls-nav-item-link {
padding: 0 15px;
}
.ls-nav--pills .ls-nav--sub .ls-nav-item-text {
text-decoration: underline;
}
.ls-nav--pills .ls-nav--sub > .ls-nav-item.active,
.ls-nav--pills .ls-nav--sub > .ls-nav-item.active > .ls-nav-item-link {
color: #aaa;
}
.ls-nav--pills > .ls-nav-item--has-children {
position: relative;
}
.ls-nav:not(.ls-nav--sub) > .ls-nav-item > .ls-nav--sub {
.ls-nav--pills:not(.ls-nav--sub) > .ls-nav-item > .ls-nav--sub {
top: 100%;
left: 0;
}
.ls-nav .ls-nav-item:hover > .ls-nav--sub {
.ls-nav--pills .ls-nav--sub > .ls-nav-item:hover > .ls-nav--sub {
display: block;
}
.ls-nav-separator {
height: 0;
border-top: 1px solid #eee;
margin: 15px 0;
}
/**
* Group

Binary file not shown.

After

Width:  |  Height:  |  Size: 984 B

View file

@ -14,7 +14,8 @@
options: {
// Селекторы
selectors: {
toggle: '.js-search-hideable-toggle'
toggle: '.js-search-hideable-toggle',
input: 'input[type=text]'
},
// Классы
@ -61,6 +62,7 @@
*/
show: function () {
this._addClass('open');
this.elements.input.focus();
},
/**

View file

@ -26,7 +26,7 @@
* Хидер
*}
<header class="{$component}-header">
{$_headingTag = Config::Get('view.seo.topic_heading')}
{$_headingTag = ($isList) ? Config::Get('view.seo.topic_heading_list') : Config::Get('view.seo.topic_heading')}
{* Заголовок *}
<{$_headingTag} class="{$component}-title ls-word-wrap">

View file

@ -130,15 +130,15 @@ mark {
*/
blockquote {
margin: 0 0 15px;
padding: 10px 15px;
background: #fbfbfc;
color: #555;
padding: 10px 15px;
border-left: 5px solid #EDEDF2;
}
.blockquote--reverse,
blockquote.pull-right {
border-right: 5px solid #EDEDF2;
border-left: 5px solid #EDEDF2;
border-left: 0;
text-align: right;
}

View file

@ -39,4 +39,24 @@
cursor: pointer;
}
.user-list-small-item-actions li:hover {
}
.user-list-small-item .ls-avatar {
width: 100%;
padding-left: 35px;
position: relative;
min-height: 24px;
box-sizing: border-box;
}
.user-list-small-item .ls-avatar-image-link {
position: absolute;
top: 0;
left: 0;
box-sizing: border-box;
}
.user-list-small-item .ls-avatar--inline .ls-avatar-name {
padding-top: 2px;
display: block;
text-overflow: ellipsis;
text-align: left;
}

View file

@ -18,8 +18,8 @@
/* Лого */
.ls-userbar-logo {
float: left;
font-size: 28px;
line-height: 50px;
font-size: 25px;
line-height: 49px;
margin: 0 30px 0 18px;
font-family: 'PT Sans';
}

View file

@ -46,13 +46,6 @@
collision: "flipfit flip"
},
});
},
/**
* Method
*/
method: function () {
return;
}
});
})(jQuery);

View file

@ -108,6 +108,11 @@
display: none;
}
/* Zero */
.ls-vote--default.ls-vote--locked,
.ls-vote--default.ls-vote--voted { background: #edf8fd; }
.ls-vote--default .ls-vote-rating { color: #628fa5; }
/* Positive */
.ls-vote--default.ls-vote--locked.ls-vote--count-positive,
.ls-vote--default.ls-vote--voted.ls-vote--count-positive { background: #def7dc; }

View file

@ -1,5 +1,6 @@
<table class="ls-table">
<tbody>
{foreach [ true, false ] as $showRating}
{foreach [ true, false ] as $locked}
{foreach [ true, false ] as $isVoted}
{foreach [ 0, 1, -1 ] as $direction}
@ -29,12 +30,13 @@
</td>
<td>
{component 'vote' targetId=1 useAbstain=true isVoted=$isVoted rating=$rating direction=$direction isLocked=$locked}
{component 'vote' targetId=1 showRating=$showRating useAbstain=true isVoted=$isVoted rating=$rating direction=$direction isLocked=$locked}
</td>
</tr>
{/foreach}
{/foreach}
{/foreach}
{/foreach}
{/foreach}
</tbody>
</table>

View file

@ -81,6 +81,7 @@ $config['head']['template']['css'] = array(
*/
// Тег используемый для заголовков топиков
$config['view']['seo']['topic_heading'] = 'h2';
$config['view']['seo']['topic_heading'] = 'h1';
$config['view']['seo']['topic_heading_list'] = 'h2';
return $config;