This commit is contained in:
ussr.win 2018-11-05 14:31:34 +01:00
parent dcf5493266
commit 2ba9d19413
12 changed files with 697 additions and 127 deletions

View File

@ -1,5 +1,5 @@
/** /**
* Redbasic * Ussrbasic
* *
* Based on duepuntozero Friendica style * Based on duepuntozero Friendica style
* Originally by Fabio Comuni <fabrix.xm@gmail.com> * Originally by Fabio Comuni <fabrix.xm@gmail.com>
@ -663,7 +663,7 @@ nav .acpopup {
} }
.profile-match-name { .profile-match-name {
width: 120px; width: 116px;
height: 1.5em; height: 1.5em;
overflow: hidden !important; overflow: hidden !important;
} }
@ -679,8 +679,8 @@ nav .acpopup {
.profile-match-wrapper { .profile-match-wrapper {
float: left; float: left;
width: 120px; width: 118px;
height: 150px; height: 118px;
padding: 10px; padding: 10px;
margin: 8px 10px 0 0; margin: 8px 10px 0 0;
border-top: 1px solid #eee; border-top: 1px solid #eee;
@ -856,15 +856,26 @@ div.jGrowl div.jGrowl-notification {
.contact-block-content { .contact-block-content {
margin-top: 10px; margin-top: 10px;
} }
.contact-block-img.archived, .app-deleted, .dim { .contact-block-img.archived,
.app-deleted,
.dim {
opacity: 0.3; opacity: 0.3;
filter:alpha(opacity=30); filter:alpha(opacity=30);
} }
.profile-match-connect { margin-top: 5px; } .profile-match-connect {
margin-top: 5px;
}
.reshared-content {
margin-left: 20px;
}
.reshared-content img {
width: 100%;
}
.reshared-content { margin-left: 20px; }
.shared_header img { .shared_header img {
border-radius: $radius; border-radius: $radius;
margin-right: 10px; margin-right: 10px;
@ -1585,7 +1596,7 @@ dl.bb-dl > dd > li {
content:"\f069 "; content:"\f069 ";
} }
/* Modified original CSS to match input in Redbasic */ /* Modified original CSS to match input in Ussrbasic */
.jothidden .bootstrap-tagsinput { .jothidden .bootstrap-tagsinput {
border: 0px solid transparent; border: 0px solid transparent;
margin-bottom: 0px; margin-bottom: 0px;

View File

@ -1,5 +1,5 @@
/** /**
* redbasic theme specific JavaScript * ussrbasic theme specific JavaScript
*/ */
$(document).ready(function() { $(document).ready(function() {

129
ussrbasic/js/ussrbasic.js Normal file
View File

@ -0,0 +1,129 @@
/**
* ussrbasic theme specific JavaScript
*/
$(document).ready(function() {
// CSS3 calc() fallback (for unsupported browsers)
$('body').append('<div id="css3-calc" style="width: 10px; width: calc(10px + 10px); display: none;"></div>');
if( $('#css3-calc').width() == 10) {
$(window).resize(function() {
if($(window).width() < 992) {
$('main').css('width', $(window).width() + $('aside').outerWidth() );
} else {
$('main').css('width', '100%' );
}
});
}
$('#css3-calc').remove(); // Remove the test element
if($(window).width() >= 992) {
$('#left_aside_wrapper, #right_aside_wrapper').stick_in_parent({
offset_top: parseInt($('aside').css('padding-top')),
parent: 'main',
spacer: '.aside_spacer'
});
}
$('#expand-aside').on('click', toggleAside);
$('section').on('click', function() {
if($('main').hasClass('region_1-on')){
toggleAside();
}
});
var left_aside_height = $('#left_aside_wrapper').height();
$('#left_aside_wrapper').on('click', function() {
if(left_aside_height != $('#left_aside_wrapper').height()) {
$(document.body).trigger("sticky_kit:recalc");
left_aside_height = $('#left_aside_wrapper').height();
}
});
var right_aside_height = $('#right_aside_wrapper').height();
$('#right_aside_wrapper').on('click', function() {
if(right_aside_height != $('#right_aside_wrapper').height()) {
$(document.body).trigger("sticky_kit:recalc");
right_aside_height = $('#right_aside_wrapper').height();
}
});
$('.usermenu').click(function() {
if($('#navbar-collapse-1, #navbar-collapse-2').hasClass('show')){
$('#navbar-collapse-1, #navbar-collapse-2').removeClass('show');
}
});
$('#menu-btn').click(function() {
if($('#navbar-collapse-1').hasClass('show')){
$('#navbar-collapse-1').removeClass('show');
}
});
$('.notifications-btn').click(function(e) {
e.preventDefault();
e.stopPropagation();
if($('#navbar-collapse-2').hasClass('show')){
$('#navbar-collapse-2').removeClass('show');
}
});
$("input[data-role=cat-tagsinput]").tagsinput({
tagClass: 'badge badge-pill badge-warning text-dark'
});
$('a.disabled').click(function(e) {
e.preventDefault();
e.stopPropagation();
});
var doctitle = document.title;
function checkNotify() {
var notifyUpdateElem = document.getElementById('notify-update');
if(notifyUpdateElem !== null) {
if(notifyUpdateElem.innerHTML !== "")
document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle;
else
document.title = doctitle;
}
}
setInterval(function () {checkNotify();}, 10 * 1000);
});
function makeFullScreen(full) {
if(typeof full=='undefined' || full == true) {
$('main').addClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').attr('style','display:none !important');
$('#inline-btn').show();
}
else {
$('main').removeClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').show();
$('#inline-btn').hide();
$(document.body).trigger("sticky_kit:recalc");
}
}
function toggleAside() {
$('#expand-aside-icon').toggleClass('fa-arrow-circle-right').toggleClass('fa-arrow-circle-left');
if($('main').hasClass('region_1-on')){
$('html, body').css('overflow-x', '');
$('main').removeClass('region_1-on')
$('#overlay').remove();
$('#left_aside_wrapper').trigger("sticky_kit:detach");
}
else {
$('html, body').css('overflow-x', 'hidden');
$('main').addClass('region_1-on')
$('<div id="overlay"></div>').appendTo('section');
$('#left_aside_wrapper').stick_in_parent({
offset_top: $('nav').outerHeight(true) + 10,
parent: '#region_1',
spacer: '#left_aside_spacer'
});
}
}

View File

@ -2,7 +2,7 @@
namespace Zotlabs\Theme; namespace Zotlabs\Theme;
class RedbasicConfig { class UssrbasicConfig {
function get_schemas() { function get_schemas() {
$files = glob('view/theme/ussrbasic/schema/*.php'); $files = glob('view/theme/ussrbasic/schema/*.php');
@ -37,24 +37,24 @@ class RedbasicConfig {
} }
$arr = array(); $arr = array();
$arr['narrow_navbar'] = get_pconfig(local_channel(),'redbasic', 'narrow_navbar' ); $arr['narrow_navbar'] = get_pconfig(local_channel(),'ussrbasic', 'narrow_navbar' );
$arr['nav_bg'] = get_pconfig(local_channel(),'redbasic', 'nav_bg' ); $arr['nav_bg'] = get_pconfig(local_channel(),'ussrbasic', 'nav_bg' );
$arr['nav_icon_colour'] = get_pconfig(local_channel(),'redbasic', 'nav_icon_colour' ); $arr['nav_icon_colour'] = get_pconfig(local_channel(),'ussrbasic', 'nav_icon_colour' );
$arr['nav_active_icon_colour'] = get_pconfig(local_channel(),'redbasic', 'nav_active_icon_colour' ); $arr['nav_active_icon_colour'] = get_pconfig(local_channel(),'ussrbasic', 'nav_active_icon_colour' );
$arr['link_colour'] = get_pconfig(local_channel(),'redbasic', 'link_colour' ); $arr['link_colour'] = get_pconfig(local_channel(),'ussrbasic', 'link_colour' );
$arr['banner_colour'] = get_pconfig(local_channel(),'redbasic', 'banner_colour' ); $arr['banner_colour'] = get_pconfig(local_channel(),'ussrbasic', 'banner_colour' );
$arr['bgcolour'] = get_pconfig(local_channel(),'redbasic', 'background_colour' ); $arr['bgcolour'] = get_pconfig(local_channel(),'ussrbasic', 'background_colour' );
$arr['background_image'] = get_pconfig(local_channel(),'redbasic', 'background_image' ); $arr['background_image'] = get_pconfig(local_channel(),'ussrbasic', 'background_image' );
$arr['item_colour'] = get_pconfig(local_channel(),'redbasic', 'item_colour' ); $arr['item_colour'] = get_pconfig(local_channel(),'ussrbasic', 'item_colour' );
$arr['comment_item_colour'] = get_pconfig(local_channel(),'redbasic', 'comment_item_colour' ); $arr['comment_item_colour'] = get_pconfig(local_channel(),'ussrbasic', 'comment_item_colour' );
$arr['font_size'] = get_pconfig(local_channel(),'redbasic', 'font_size' ); $arr['font_size'] = get_pconfig(local_channel(),'ussrbasic', 'font_size' );
$arr['font_colour'] = get_pconfig(local_channel(),'redbasic', 'font_colour' ); $arr['font_colour'] = get_pconfig(local_channel(),'ussrbasic', 'font_colour' );
$arr['radius'] = get_pconfig(local_channel(),'redbasic', 'radius' ); $arr['radius'] = get_pconfig(local_channel(),'ussrbasic', 'radius' );
$arr['shadow'] = get_pconfig(local_channel(),'redbasic', 'photo_shadow' ); $arr['shadow'] = get_pconfig(local_channel(),'ussrbasic', 'photo_shadow' );
$arr['converse_width']=get_pconfig(local_channel(),"redbasic","converse_width"); $arr['converse_width']=get_pconfig(local_channel(),"ussrbasic","converse_width");
$arr['top_photo']=get_pconfig(local_channel(),"redbasic","top_photo"); $arr['top_photo']=get_pconfig(local_channel(),"ussrbasic","top_photo");
$arr['reply_photo']=get_pconfig(local_channel(),"redbasic","reply_photo"); $arr['reply_photo']=get_pconfig(local_channel(),"ussrbasic","reply_photo");
$arr['advanced_theming'] = get_pconfig(local_channel(), 'redbasic', 'advanced_theming'); $arr['advanced_theming'] = get_pconfig(local_channel(), 'ussrbasic', 'advanced_theming');
return $this->form($arr); return $this->form($arr);
} }
@ -63,31 +63,31 @@ class RedbasicConfig {
return; return;
} }
if (isset($_POST['redbasic-settings-submit'])) { if (isset($_POST['ussrbasic-settings-submit'])) {
set_pconfig(local_channel(), 'redbasic', 'narrow_navbar', $_POST['redbasic_narrow_navbar']); set_pconfig(local_channel(), 'ussrbasic', 'narrow_navbar', $_POST['ussrbasic_narrow_navbar']);
set_pconfig(local_channel(), 'redbasic', 'nav_bg', $_POST['redbasic_nav_bg']); set_pconfig(local_channel(), 'ussrbasic', 'nav_bg', $_POST['ussrbasic_nav_bg']);
set_pconfig(local_channel(), 'redbasic', 'nav_icon_colour', $_POST['redbasic_nav_icon_colour']); set_pconfig(local_channel(), 'ussrbasic', 'nav_icon_colour', $_POST['ussrbasic_nav_icon_colour']);
set_pconfig(local_channel(), 'redbasic', 'nav_active_icon_colour', $_POST['redbasic_nav_active_icon_colour']); set_pconfig(local_channel(), 'ussrbasic', 'nav_active_icon_colour', $_POST['ussrbasic_nav_active_icon_colour']);
set_pconfig(local_channel(), 'redbasic', 'link_colour', $_POST['redbasic_link_colour']); set_pconfig(local_channel(), 'ussrbasic', 'link_colour', $_POST['ussrbasic_link_colour']);
set_pconfig(local_channel(), 'redbasic', 'background_colour', $_POST['redbasic_background_colour']); set_pconfig(local_channel(), 'ussrbasic', 'background_colour', $_POST['ussrbasic_background_colour']);
set_pconfig(local_channel(), 'redbasic', 'banner_colour', $_POST['redbasic_banner_colour']); set_pconfig(local_channel(), 'ussrbasic', 'banner_colour', $_POST['ussrbasic_banner_colour']);
set_pconfig(local_channel(), 'redbasic', 'background_image', $_POST['redbasic_background_image']); set_pconfig(local_channel(), 'ussrbasic', 'background_image', $_POST['ussrbasic_background_image']);
set_pconfig(local_channel(), 'redbasic', 'item_colour', $_POST['redbasic_item_colour']); set_pconfig(local_channel(), 'ussrbasic', 'item_colour', $_POST['ussrbasic_item_colour']);
set_pconfig(local_channel(), 'redbasic', 'comment_item_colour', $_POST['redbasic_comment_item_colour']); set_pconfig(local_channel(), 'ussrbasic', 'comment_item_colour', $_POST['ussrbasic_comment_item_colour']);
set_pconfig(local_channel(), 'redbasic', 'font_size', $_POST['redbasic_font_size']); set_pconfig(local_channel(), 'ussrbasic', 'font_size', $_POST['ussrbasic_font_size']);
set_pconfig(local_channel(), 'redbasic', 'font_colour', $_POST['redbasic_font_colour']); set_pconfig(local_channel(), 'ussrbasic', 'font_colour', $_POST['ussrbasic_font_colour']);
set_pconfig(local_channel(), 'redbasic', 'radius', $_POST['redbasic_radius']); set_pconfig(local_channel(), 'ussrbasic', 'radius', $_POST['ussrbasic_radius']);
set_pconfig(local_channel(), 'redbasic', 'photo_shadow', $_POST['redbasic_shadow']); set_pconfig(local_channel(), 'ussrbasic', 'photo_shadow', $_POST['ussrbasic_shadow']);
set_pconfig(local_channel(), 'redbasic', 'converse_width', $_POST['redbasic_converse_width']); set_pconfig(local_channel(), 'ussrbasic', 'converse_width', $_POST['ussrbasic_converse_width']);
set_pconfig(local_channel(), 'redbasic', 'top_photo', $_POST['redbasic_top_photo']); set_pconfig(local_channel(), 'ussrbasic', 'top_photo', $_POST['ussrbasic_top_photo']);
set_pconfig(local_channel(), 'redbasic', 'reply_photo', $_POST['redbasic_reply_photo']); set_pconfig(local_channel(), 'ussrbasic', 'reply_photo', $_POST['ussrbasic_reply_photo']);
set_pconfig(local_channel(), 'redbasic', 'advanced_theming', $_POST['redbasic_advanced_theming']); set_pconfig(local_channel(), 'ussrbasic', 'advanced_theming', $_POST['ussrbasic_advanced_theming']);
} }
} }
function form($arr) { function form($arr) {
if(get_pconfig(local_channel(), 'redbasic', 'advanced_theming')) if(get_pconfig(local_channel(), 'ussrbasic', 'advanced_theming'))
$expert = 1; $expert = 1;
$o .= replace_macros(get_markup_template('theme_settings.tpl'), array( $o .= replace_macros(get_markup_template('theme_settings.tpl'), array(
@ -96,24 +96,24 @@ class RedbasicConfig {
'$theme' => \App::$channel['channel_theme'], '$theme' => \App::$channel['channel_theme'],
'$expert' => $expert, '$expert' => $expert,
'$title' => t("Theme settings"), '$title' => t("Theme settings"),
'$narrow_navbar' => array('redbasic_narrow_navbar',t('Narrow navbar'),$arr['narrow_navbar'], '', array(t('No'),t('Yes'))), '$narrow_navbar' => array('ussrbasic_narrow_navbar',t('Narrow navbar'),$arr['narrow_navbar'], '', array(t('No'),t('Yes'))),
'$nav_bg' => array('redbasic_nav_bg', t('Navigation bar background color'), $arr['nav_bg']), '$nav_bg' => array('ussrbasic_nav_bg', t('Navigation bar background color'), $arr['nav_bg']),
'$nav_icon_colour' => array('redbasic_nav_icon_colour', t('Navigation bar icon color '), $arr['nav_icon_colour']), '$nav_icon_colour' => array('ussrbasic_nav_icon_colour', t('Navigation bar icon color '), $arr['nav_icon_colour']),
'$nav_active_icon_colour' => array('redbasic_nav_active_icon_colour', t('Navigation bar active icon color '), $arr['nav_active_icon_colour']), '$nav_active_icon_colour' => array('ussrbasic_nav_active_icon_colour', t('Navigation bar active icon color '), $arr['nav_active_icon_colour']),
'$link_colour' => array('redbasic_link_colour', t('Link color'), $arr['link_colour'], '', $link_colours), '$link_colour' => array('ussrbasic_link_colour', t('Link color'), $arr['link_colour'], '', $link_colours),
'$banner_colour' => array('redbasic_banner_colour', t('Set font-color for banner'), $arr['banner_colour']), '$banner_colour' => array('ussrbasic_banner_colour', t('Set font-color for banner'), $arr['banner_colour']),
'$bgcolour' => array('redbasic_background_colour', t('Set the background color'), $arr['bgcolour']), '$bgcolour' => array('ussrbasic_background_colour', t('Set the background color'), $arr['bgcolour']),
'$background_image' => array('redbasic_background_image', t('Set the background image'), $arr['background_image']), '$background_image' => array('ussrbasic_background_image', t('Set the background image'), $arr['background_image']),
'$item_colour' => array('redbasic_item_colour', t('Set the background color of items'), $arr['item_colour']), '$item_colour' => array('ussrbasic_item_colour', t('Set the background color of items'), $arr['item_colour']),
'$comment_item_colour' => array('redbasic_comment_item_colour', t('Set the background color of comments'), $arr['comment_item_colour']), '$comment_item_colour' => array('ussrbasic_comment_item_colour', t('Set the background color of comments'), $arr['comment_item_colour']),
'$font_size' => array('redbasic_font_size', t('Set font-size for the entire application'), $arr['font_size'], t('Examples: 1rem, 100%, 16px')), '$font_size' => array('ussrbasic_font_size', t('Set font-size for the entire application'), $arr['font_size'], t('Examples: 1rem, 100%, 16px')),
'$font_colour' => array('redbasic_font_colour', t('Set font-color for posts and comments'), $arr['font_colour']), '$font_colour' => array('ussrbasic_font_colour', t('Set font-color for posts and comments'), $arr['font_colour']),
'$radius' => array('redbasic_radius', t('Set radius of corners'), $arr['radius'], t('Example: 4px')), '$radius' => array('ussrbasic_radius', t('Set radius of corners'), $arr['radius'], t('Example: 4px')),
'$shadow' => array('redbasic_shadow', t('Set shadow depth of photos'), $arr['shadow']), '$shadow' => array('ussrbasic_shadow', t('Set shadow depth of photos'), $arr['shadow']),
'$converse_width' => array('redbasic_converse_width',t('Set maximum width of content region in pixel'),$arr['converse_width'], t('Leave empty for default width')), '$converse_width' => array('ussrbasic_converse_width',t('Set maximum width of content region in pixel'),$arr['converse_width'], t('Leave empty for default width')),
'$top_photo' => array('redbasic_top_photo', t('Set size of conversation author photo'), $arr['top_photo']), '$top_photo' => array('ussrbasic_top_photo', t('Set size of conversation author photo'), $arr['top_photo']),
'$reply_photo' => array('redbasic_reply_photo', t('Set size of followup author photos'), $arr['reply_photo']), '$reply_photo' => array('ussrbasic_reply_photo', t('Set size of followup author photos'), $arr['reply_photo']),
'$advanced_theming' => ['redbasic_advanced_theming', t('Show advanced settings'), $arr['advanced_theming'], '', [t('No'), t('Yes')]] '$advanced_theming' => ['ussrbasic_advanced_theming', t('Show advanced settings'), $arr['advanced_theming'], '', [t('No'), t('Yes')]]
)); ));
return $o; return $o;

View File

@ -6,28 +6,28 @@ if(! App::$install) {
$uid = get_theme_uid(); $uid = get_theme_uid();
if($uid) { if($uid) {
load_pconfig($uid,'redbasic'); load_pconfig($uid,'ussrbasic');
} }
// Load the owners pconfig // Load the owners pconfig
$nav_bg = get_pconfig($uid, 'redbasic', 'nav_bg'); $nav_bg = get_pconfig($uid, 'ussrbasic', 'nav_bg');
$nav_icon_colour = get_pconfig($uid, 'redbasic', 'nav_icon_colour'); $nav_icon_colour = get_pconfig($uid, 'ussrbasic', 'nav_icon_colour');
$nav_active_icon_colour = get_pconfig($uid, 'redbasic', 'nav_active_icon_colour'); $nav_active_icon_colour = get_pconfig($uid, 'ussrbasic', 'nav_active_icon_colour');
$banner_colour = get_pconfig($uid,'redbasic','banner_colour'); $banner_colour = get_pconfig($uid,'ussrbasic','banner_colour');
$narrow_navbar = get_pconfig($uid,'redbasic','narrow_navbar'); $narrow_navbar = get_pconfig($uid,'ussrbasic','narrow_navbar');
$link_colour = get_pconfig($uid, 'redbasic', 'link_colour'); $link_colour = get_pconfig($uid, 'ussrbasic', 'link_colour');
$schema = get_pconfig($uid,'redbasic','schema'); $schema = get_pconfig($uid,'ussrbasic','schema');
$bgcolour = get_pconfig($uid, 'redbasic', 'background_colour'); $bgcolour = get_pconfig($uid, 'ussrbasic', 'background_colour');
$background_image = get_pconfig($uid, 'redbasic', 'background_image'); $background_image = get_pconfig($uid, 'ussrbasic', 'background_image');
$item_colour = get_pconfig($uid, 'redbasic', 'item_colour'); $item_colour = get_pconfig($uid, 'ussrbasic', 'item_colour');
$comment_item_colour = get_pconfig($uid, 'redbasic', 'comment_item_colour'); $comment_item_colour = get_pconfig($uid, 'ussrbasic', 'comment_item_colour');
$font_size = get_pconfig($uid, 'redbasic', 'font_size'); $font_size = get_pconfig($uid, 'ussrbasic', 'font_size');
$font_colour = get_pconfig($uid, 'redbasic', 'font_colour'); $font_colour = get_pconfig($uid, 'ussrbasic', 'font_colour');
$radius = get_pconfig($uid, 'redbasic', 'radius'); $radius = get_pconfig($uid, 'ussrbasic', 'radius');
$shadow = get_pconfig($uid,'redbasic','photo_shadow'); $shadow = get_pconfig($uid,'ussrbasic','photo_shadow');
$converse_width=get_pconfig($uid,'redbasic','converse_width'); $converse_width=get_pconfig($uid,'ussrbasic','converse_width');
$top_photo=get_pconfig($uid,'redbasic','top_photo'); $top_photo=get_pconfig($uid,'ussrbasic','top_photo');
$reply_photo=get_pconfig($uid,'redbasic','reply_photo'); $reply_photo=get_pconfig($uid,'ussrbasic','reply_photo');
} }
// Now load the scheme. If a value is changed above, we'll keep the settings // Now load the scheme. If a value is changed above, we'll keep the settings
@ -56,7 +56,7 @@ if (($schema) && ($schema != '---')) {
} }
// Allow admins to set a default schema for the hub. // Allow admins to set a default schema for the hub.
// default.php and default.css MUST be symlinks to existing schema files in view/theme/redbasic/schema // default.php and default.css MUST be symlinks to existing schema files in view/theme/ussrbasic/schema
if ((!$schema) || ($schema == '---')) { if ((!$schema) || ($schema == '---')) {
if(file_exists('view/theme/ussrbasic/schema/default.php')) { if(file_exists('view/theme/ussrbasic/schema/default.php')) {
@ -159,5 +159,5 @@ if(file_exists('view/theme/ussrbasic/css/style.css')) {
// Set the schema to the default schema in derived themes. See the documentation for creating derived themes how to override this. // Set the schema to the default schema in derived themes. See the documentation for creating derived themes how to override this.
if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'redbasic') if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'ussrbasic')
set_pconfig(local_channel(), 'redbasic', 'schema', '---'); set_pconfig(local_channel(), 'ussrbasic', 'schema', '---');

View File

@ -2,7 +2,7 @@
/** /**
* * Name: Ussrbasic * * Name: Ussrbasic
* * Description: Ussr.win Hubzilla standard theme * * Description: ussr.win hubzilla standard theme
* * Version: 2.1 * * Version: 2.1
* * MinVersion: 2.3.1 * * MinVersion: 2.3.1
* * MaxVersion: 6.0 * * MaxVersion: 6.0
@ -11,6 +11,6 @@
* * Maintainer: Mario Vavti * * Maintainer: Mario Vavti
*/ */
function redbasic_init(&$a) { function ussrbasic_init(&$a) {
} }

View File

@ -0,0 +1,235 @@
{{if $nav.login && !$userinfo}}
<div class="d-lg-none pt-1 pb-1">
{{if $nav.loginmenu.1.4}}
<a class="btn btn-primary btn-sm text-white" href="#" title="{{$nav.loginmenu.1.3}}" id="{{$nav.loginmenu.1.4}}_collapse" data-toggle="modal" data-target="#nav-login">
{{$nav.loginmenu.1.1}}
</a>
{{else}}
<a class="btn btn-primary btn-sm text-white" href="login" title="{{$nav.loginmenu.1.3}}">
{{$nav.loginmenu.1.1}}
</a>
{{/if}}
{{if $nav.register}}
<a class="btn btn-warning btn-sm text-dark" href="{{$nav.register.0}}" title="{{$nav.register.3}}" id="{{$nav.register.4}}" >
{{$nav.register.1}}
</a>
{{/if}}
</div>
{{/if}}
{{if $userinfo}}
<div class="dropdown">
<div class="fakelink usermenu" data-toggle="dropdown">
<img id="avatar" src="{{$userinfo.icon}}" alt="{{$userinfo.name}}">
<i class="fa fa-caret-down"></i>
</div>
{{if $is_owner}}
<div class="dropdown-menu">
{{foreach $nav.usermenu as $usermenu}}
<a class="dropdown-item{{if $usermenu.2}} active{{/if}}" href="{{$usermenu.0}}" title="{{$usermenu.3}}" role="menuitem" id="{{$usermenu.4}}">{{$usermenu.1}}</a>
{{/foreach}}
{{if $nav.group}}
<a class="dropdown-item" href="{{$nav.group.0}}" title="{{$nav.group.3}}" role="menuitem" id="{{$nav.group.4}}">{{$nav.group.1}}</a>
{{/if}}
{{if $nav.manage}}
<a class="dropdown-item{{if $sel.name == Manage}} active{{/if}}" href="{{$nav.manage.0}}" title="{{$nav.manage.3}}" role="menuitem" id="{{$nav.manage.4}}">{{$nav.manage.1}}</a>
{{/if}}
{{if $nav.channels}}
{{foreach $nav.channels as $chan}}
<a class="dropdown-item" href="manage/{{$chan.channel_id}}" title="{{$chan.channel_name}}" role="menuitem"><i class="fa fa-circle{{if $localuser == $chan.channel_id}} text-success{{else}} invisible{{/if}}"></i> {{$chan.channel_name}}</a>
{{/foreach}}
{{/if}}
{{if $nav.profiles}}
<a class="dropdown-item" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}" role="menuitem" id="{{$nav.profiles.4}}">{{$nav.profiles.1}}</a>
{{/if}}
{{if $nav.settings}}
<div class="dropdown-divider"></div>
<a class="dropdown-item{{if $sel.name == Settings}} active{{/if}}" href="{{$nav.settings.0}}" title="{{$nav.settings.3}}" role="menuitem" id="{{$nav.settings.4}}">{{$nav.settings.1}}</a>
{{/if}}
{{if $nav.admin}}
<div class="dropdown-divider"></div>
<a class="dropdown-item{{if $sel.name == Admin}} active{{/if}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}" role="menuitem" id="{{$nav.admin.4}}">{{$nav.admin.1}}</a>
{{/if}}
{{if $nav.logout}}
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}" role="menuitem" id="{{$nav.logout.4}}">{{$nav.logout.1}}</a>
{{/if}}
</div>
{{/if}}
{{if ! $is_owner}}
<div class="dropdown-menu" role="menu" aria-labelledby="avatar">
<a class="dropdown-item" href="{{$nav.rusermenu.0}}" role="menuitem">{{$nav.rusermenu.1}}</a>
<a class="dropdown-item" href="{{$nav.rusermenu.2}}" role="menuitem">{{$nav.rusermenu.3}}</a>
</div>
{{/if}}
</div>
{{if $sel.name}}
<div id="nav-app-link-wrapper" class="navbar-nav{{if $sitelocation || ! $settings_url}} has_location mr-auto{{/if}}">
<a id="nav-app-link" href="{{$url}}" class="nav-link text-truncate">
{{$sel.name}}
{{if $sitelocation}}
<br><small>{{$sitelocation}}</small>
{{/if}}
</a>
</div>
{{if $settings_url}}
<div id="nav-app-settings-link-wrapper" class="navbar-nav mr-auto">
<a id="nav-app-settings-link" href="{{$settings_url}}/?f=&rpath={{$url}}" class="nav-link">
<i class="fa fa-fw fa-cog"></i>
</a>
</div>
{{/if}}
{{/if}}
{{/if}}
<div class="navbar-toggler-right">
{{if $nav.help.6}}
<button id="context-help-btn" class="navbar-toggler border-0" type="button" onclick="contextualHelp(); return false;">
<i class="fa fa-question-circle"></i>
</button>
{{/if}}
<button id="expand-aside" type="button" class="d-lg-none navbar-toggler border-0" data-toggle="offcanvas" data-target="#region_1">
<i class="fa fa-arrow-circle-right" id="expand-aside-icon"></i>
</button>
{{if $localuser || $nav.pubs}}
<button id="notifications-btn-1" type="button" class="navbar-toggler border-0 notifications-btn">
<i id="notifications-btn-icon-1" class="fa fa-exclamation-circle notifications-btn-icon"></i>
</button>
{{/if}}
<button id="menu-btn" class="navbar-toggler border-0" type="button" data-toggle="collapse" data-target="#navbar-collapse-2">
<i class="fa fa-bars"></i>
</button>
</div>
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="navbar-nav mr-auto">
{{if $nav.login && !$userinfo}}
<li class="nav-item d-lg-flex">
{{if $nav.loginmenu.1.4}}
<a class="nav-link" href="#" title="{{$nav.loginmenu.1.3}}" id="{{$nav.loginmenu.1.4}}" data-toggle="modal" data-target="#nav-login">
{{$nav.loginmenu.1.1}}
</a>
{{else}}
<a class="nav-link" href="login" title="{{$nav.loginmenu.1.3}}">
{{$nav.loginmenu.1.1}}
</a>
{{/if}}
</li>
{{/if}}
{{if $nav.register}}
<li class="nav-item {{$nav.register.2}} d-lg-flex">
<a class="nav-link" href="{{$nav.register.0}}" title="{{$nav.register.3}}" id="{{$nav.register.4}}">{{$nav.register.1}}</a>
</li>
{{/if}}
{{if $nav.alogout}}
<li class="nav-item {{$nav.alogout.2}} d-lg-flex">
<a class="nav-link" href="{{$nav.alogout.0}}" title="{{$nav.alogout.3}}" id="{{$nav.alogout.4}}">{{$nav.alogout.1}}</a>
</li>
{{/if}}
</ul>
<div id="banner" class="navbar-text">{{$banner}}</div>
<ul id="nav-right" class="navbar-nav ml-auto">
<li class="nav-item collapse clearfix" id="nav-search">
<form class="form-inline" method="get" action="{{$nav.search.4}}" role="search">
<input class="form-control form-control-sm mt-1 mr-2" id="nav-search-text" type="text" value="" placeholder="{{$help}}" name="search" title="{{$nav.search.3}}" onclick="this.submit();" onblur="closeMenu('nav-search'); openMenu('nav-search-btn');"/>
</form>
<div id="nav-search-spinner" class="spinner-wrapper">
<div class="spinner s"></div>
</div>
</li>
<li class="nav-item" id="nav-search-btn">
<a class="nav-link" href="#nav-search" title="{{$nav.search.3}}" onclick="openMenu('nav-search'); closeMenu('nav-search-btn'); $('#nav-search-text').focus(); return false;"><i class="fa fa-fw fa-search"></i></a>
</li>
{{if $nav.help.6}}
<li class="nav-item dropdown {{$sel.help}}">
<a class="nav-link {{$nav.help.2}}" target="hubzilla-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}" id="{{$nav.help.4}}" onclick="contextualHelp(); return false;"><i class="fa fa-fw fa-question-circle"></i></a>
</li>
{{/if}}
{{if $localuser || $nav.pubs}}
<li id="notifications-btn" class="nav-item d-xl-none">
<a class="nav-link text-white notifications-btn" href="#"><i id="notifications-btn-icon" class="fa fa-exclamation-circle notifications-btn-icon"></i></a>
</li>
{{/if}}
{{if $channel_menu && $channel_apps.0}}
<li class="nav-item dropdown" id="channel-menu">
<a class="nav-link" href="#" data-toggle="dropdown"><img src="{{$channel_thumb}}" style="height:14px; width:14px;position:relative; top:-2px;" /></a>
<div id="dropdown-menu" class="dropdown-menu dropdown-menu-right">
{{foreach $channel_apps as $channel_app}}
{{$channel_app}}
{{/foreach}}
</div>
</li>
{{/if}}
{{if $navbar_apps}}
{{foreach $navbar_apps as $navbar_app}}
<li>
{{$navbar_app}}
</li>
{{/foreach}}
{{/if}}
{{if !$nav.login}}
<li class="nav-item dropdown" id="app-menu">
<a class="nav-link" href="#" data-toggle="dropdown"><i class="fa fa-fw fa-bars"></i></a>
<div id="dropdown-menu" class="dropdown-menu dropdown-menu-right">
{{if $channel_apps.0 && ! $channel_menu}}
{{foreach $channel_apps as $channel_app}}
{{$channel_app}}
{{/foreach}}
<div class="dropdown-divider"></div>
<div class="dropdown-header text-black-50 sys-apps-toggle" onclick="$('#dropdown-menu').click(function(e) { e.stopPropagation(); }); openClose('sys_apps');">
{{$sysapps_toggle}}
</div>
<div id="sys_apps" style="display:none;">
{{/if}}
{{foreach $nav_apps as $nav_app}}
{{$nav_app}}
{{/foreach}}
{{if $channel_apps.0 && ! $channel_menu}}
</div>
{{/if}}
{{if $is_owner}}
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="/apps"><i class="generic-icons-nav fa fa-fw fa-plus-circle"></i>{{$addapps}}</a>
<a class="dropdown-item" href="/apporder"><i class="generic-icons-nav fa fa-fw fa-sort"></i>{{$orderapps}}</a>
{{/if}}
</div>
{{/if}}
</li>
</ul>
</div>
<div class="collapse d-lg-none" id="navbar-collapse-2">
<div class="navbar-nav mr-auto">
{{if $channel_apps.0}}
{{foreach $channel_apps as $channel_app}}
{{$channel_app|replace:'dropdown-item':'nav-link'}}
{{/foreach}}
<div class="dropdown-header text-white-50 sys-apps-toggle" onclick="openClose('sys-apps-collapsed');">
{{$sysapps_toggle}}
</div>
<div id="sys-apps-collapsed" style="display:none;">
{{/if}}
{{foreach $navbar_apps as $navbar_app}}
{{$navbar_app}}
{{/foreach}}
{{foreach $nav_apps as $nav_app}}
{{$nav_app|replace:'dropdown-item':'nav-link'}}
{{/foreach}}
{{if $channel_apps.0}}
</div>
{{/if}}
{{if $is_owner}}
<div class="dropdown-divider"></div>
<a class="nav-link" href="/apps"><i class="generic-icons-nav fa fa-fw fa-plus-circle"></i>{{$addapps}}</a>
<a class="nav-link" href="/apporder"><i class="generic-icons-nav fa fa-fw fa-sort"></i>{{$orderapps}}</a>
{{/if}}
</div>
</div>
{{if $nav.help.6}}
<div id="contextual-help-content" class="contextual-help-content">
{{$nav.help.5}}
<div class="float-right">
<a class="btn btn-primary btn-sm" target="hubzilla-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}"><i class="fa fa-question"></i>&nbsp;{{$fulldocs}}</a>
<a class="contextual-help-tool" href="#" onclick="contextualHelp(); return false;"><i class="fa fa-times"></i></a>
</div>
</div>
{{/if}}

View File

@ -0,0 +1,10 @@
<div class="widget suggestions-widget">
<h3>{{$title}}</h3>
{{if $entries}}
{{foreach $entries as $child}}
{{include file="suggest_friends.tpl" entry=$child}}
{{/foreach}}
{{/if}}
<div class="clear"></div>
<div class="suggest-widget-more"><a href="suggest">{{$more}}</a></div>
</div>

View File

@ -1,34 +0,0 @@
{{include file="field_checkbox.tpl" field=$narrow_navbar}}
{{include file="field_input.tpl" field=$converse_width}}
{{include file="field_input.tpl" field=$font_size}}
{{include file="field_checkbox.tpl" field=$advanced_theming}}
{{if $expert}}
{{include file="field_colorinput.tpl" field=$nav_bg}}
{{include file="field_colorinput.tpl" field=$nav_icon_colour}}
{{include file="field_colorinput.tpl" field=$nav_active_icon_colour}}
{{include file="field_colorinput.tpl" field=$banner_colour}}
{{include file="field_colorinput.tpl" field=$bgcolour}}
{{include file="field_colorinput.tpl" field=$background_image}}
{{include file="field_colorinput.tpl" field=$item_colour}}
{{include file="field_colorinput.tpl" field=$comment_item_colour}}
{{*include file="field_colorinput.tpl" field=$comment_border_colour*}}
{{*include file="field_input.tpl" field=$comment_indent*}}
{{include file="field_colorinput.tpl" field=$font_colour}}
{{include file="field_colorinput.tpl" field=$link_colour}}
{{include file="field_input.tpl" field=$radius}}
{{include file="field_input.tpl" field=$shadow}}
{{include file="field_input.tpl" field=$top_photo}}
{{include file="field_input.tpl" field=$reply_photo}}
<script>
$(function(){
$('#id_redbasic_nav_bg, #id_redbasic_nav_icon_colour, #id_redbasic_nav_active_icon_colour, #id_redbasic_banner_colour').colorpicker({format: 'rgba'});
$('#id_redbasic_link_colour,#id_redbasic_background_colour').colorpicker();
$('#id_redbasic_toolicon_colour,#id_redbasic_toolicon_activecolour,#id_redbasic_font_colour').colorpicker();
$('#id_redbasic_item_colour,#id_redbasic_comment_item_colour,#id_redbasic_comment_border_colour').colorpicker({format: 'rgba'});
});
</script>
{{/if}}
<div class="settings-submit-wrapper" >
<button type="submit" name="redbasic-settings-submit" class="btn btn-primary">{{$submit}}</button>
</div>

View File

@ -2,7 +2,7 @@
/** /**
* * Name: Ussrbasicpub * * Name: Ussrbasicpub
* * Description: Hubzilla standard theme * * Description: Ussr.win Hubzilla public theme
* * Version: 2.1 * * Version: 2.1
* * MinVersion: 2.3.1 * * MinVersion: 2.3.1
* * MaxVersion: 6.0 * * MaxVersion: 6.0

View File

@ -13,5 +13,3 @@ head_add_js('/library/bootbox/bootbox.min.js');
head_add_js('/library/bootstrap-tagsinput/bootstrap-tagsinput.js'); head_add_js('/library/bootstrap-tagsinput/bootstrap-tagsinput.js');
head_add_js('/library/datetimepicker/jquery.datetimepicker.js'); head_add_js('/library/datetimepicker/jquery.datetimepicker.js');
head_add_js('/library/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.js'); head_add_js('/library/bootstrap-colorpicker/dist/js/bootstrap-colorpicker.js');

View File

@ -0,0 +1,221 @@
{{if $nav.login && !$userinfo}}
<div class="d-lg-none pt-1 pb-1">
{{if $nav.loginmenu.1.4}}
<a class="btn btn-primary btn-sm text-white" href="#" title="{{$nav.loginmenu.1.3}}" id="{{$nav.loginmenu.1.4}}_collapse" data-toggle="modal" data-target="#nav-login">
{{$nav.loginmenu.1.1}}
</a>
{{else}}
<a class="btn btn-primary btn-sm text-white" href="login" title="{{$nav.loginmenu.1.3}}">
{{$nav.loginmenu.1.1}}
</a>
{{/if}}
{{if $nav.register}}
<a class="btn btn-warning btn-sm text-dark" href="{{$nav.register.0}}" title="{{$nav.register.3}}" id="{{$nav.register.4}}" >
{{$nav.register.1}}
</a>
{{/if}}
</div>
{{/if}}
{{if $userinfo}}
<div class="dropdown">
<div class="fakelink usermenu" data-toggle="dropdown">
<img id="avatar" src="{{$userinfo.icon}}" alt="{{$userinfo.name}}">
<i class="fa fa-caret-down"></i>
</div>
{{if $is_owner}}
<div class="dropdown-menu">
{{foreach $nav.usermenu as $usermenu}}
<a class="dropdown-item{{if $usermenu.2}} active{{/if}}" href="{{$usermenu.0}}" title="{{$usermenu.3}}" role="menuitem" id="{{$usermenu.4}}">{{$usermenu.1}}</a>
{{/foreach}}
{{if $nav.manage}}
<a class="dropdown-item{{if $sel.name == Manage}} active{{/if}}" href="{{$nav.manage.0}}" title="{{$nav.manage.3}}" role="menuitem" id="{{$nav.manage.4}}">{{$nav.manage.1}}</a>
{{/if}}
{{if $nav.channels}}
{{foreach $nav.channels as $chan}}
<a class="dropdown-item" href="manage/{{$chan.channel_id}}" title="{{$chan.channel_name}}" role="menuitem"><i class="fa fa-circle{{if $localuser == $chan.channel_id}} text-success{{else}} invisible{{/if}}"></i> {{$chan.channel_name}}</a>
{{/foreach}}
{{/if}}
{{if $nav.profiles}}
<a class="dropdown-item" href="{{$nav.profiles.0}}" title="{{$nav.profiles.3}}" role="menuitem" id="{{$nav.profiles.4}}">{{$nav.profiles.1}}</a>
{{/if}}
{{if $nav.settings}}
<div class="dropdown-divider"></div>
<a class="dropdown-item{{if $sel.name == Settings}} active{{/if}}" href="{{$nav.settings.0}}" title="{{$nav.settings.3}}" role="menuitem" id="{{$nav.settings.4}}">{{$nav.settings.1}}</a>
{{/if}}
{{if $nav.admin}}
<div class="dropdown-divider"></div>
<a class="dropdown-item{{if $sel.name == Admin}} active{{/if}}" href="{{$nav.admin.0}}" title="{{$nav.admin.3}}" role="menuitem" id="{{$nav.admin.4}}">{{$nav.admin.1}}</a>
{{/if}}
{{if $nav.logout}}
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="{{$nav.logout.0}}" title="{{$nav.logout.3}}" role="menuitem" id="{{$nav.logout.4}}">{{$nav.logout.1}}</a>
{{/if}}
</div>
{{/if}}
{{if ! $is_owner}}
<div class="dropdown-menu" role="menu" aria-labelledby="avatar">
<a class="dropdown-item" href="{{$nav.rusermenu.0}}" role="menuitem">{{$nav.rusermenu.1}}</a>
<a class="dropdown-item" href="{{$nav.rusermenu.2}}" role="menuitem">{{$nav.rusermenu.3}}</a>
</div>
{{/if}}
</div>
<div class="navbuttons navbar-nav mr-auto">
<li class="nav-item dropdown">
<a href="channel" class="nav-link" title="Channel"><i class="fa fa-lg fa-fw fa-home"></i></a>
</li>
<li class="nav-item dropdown">
<a href="network" class="nav-link" title="Network"><i class="fa fa-lg fa-fw fa-th"></i></a>
</li>
</div>
{{if $sel.name}}
<div id="nav-app-link-wrapper" class="navbar-nav mr-auto">
<a id="nav-app-link" href="{{$url}}" class="nav-link text-truncate">
{{if $sitelocation}}
<br><small>{{$sitelocation}}</small>
{{/if}}
</a>
</div>
{{/if}}
{{/if}}
<div class="navbar-toggler-right">
{{if $nav.help.6}}
<button id="context-help-btn" class="navbar-toggler border-0" type="button" onclick="contextualHelp(); return false;">
<i class="fa fa-question-circle"></i>
</button>
{{/if}}
<button id="expand-aside" type="button" class="d-lg-none navbar-toggler border-0" data-toggle="offcanvas" data-target="#region_1">
<i class="fa fa-arrow-circle-right" id="expand-aside-icon"></i>
</button>
{{if $localuser || $nav.pubs}}
<button id="notifications-btn-1" type="button" class="navbar-toggler border-0 notifications-btn">
<i id="notifications-btn-icon-1" class="fa fa-exclamation-circle notifications-btn-icon"></i>
</button>
{{/if}}
<button id="menu-btn" class="navbar-toggler border-0" type="button" data-toggle="collapse" data-target="#navbar-collapse-2">
<i class="fa fa-bars"></i>
</button>
</div>
<div class="collapse navbar-collapse" id="navbar-collapse-1">
<ul class="navbar-nav mr-auto">
{{if $nav.login && !$userinfo}}
<li class="nav-item">
<a href="help" class="nav-link {{if (substr($url,17,4)=="help")}} active{{/if}}" title="{{$nav.help.3}}"><i class="fa fa-fw fa-question-circle"></i></a>
</li>
<li class="nav-item">
<a href="siteinfo" class="nav-link{{if (substr($url,17,8)=="siteinfo")}} active{{/if}}" title="{{t('About this site')}}"><i class="fa fa-fw fa-info"></i></a>
</li>
<li class="nav-item d-lg-flex">
{{if $nav.loginmenu.1.4}}
<a class="nav-link{{if (substr($url,17,5)=="login")}} active{{/if}}" href="#" title="{{$nav.loginmenu.1.3}}" id="{{$nav.loginmenu.1.4}}" data-toggle="modal" data-target="#nav-login">
{{$nav.loginmenu.1.1}}
</a>
{{else}}
<a class="nav-link{{if (substr($url,17,5)=="login")}} active{{/if}}" href="login" title="{{$nav.loginmenu.1.3}}">
{{$nav.loginmenu.1.1}}
</a>
{{/if}}
</li>
{{/if}}
{{if $nav.register}}
<li class="nav-item {{$nav.register.2}} d-lg-flex">
<a class="nav-link{{if (substr($url,17,8)=="register")}} active{{/if}}" href="{{$nav.register.0}}" title="{{$nav.register.3}}" id="{{$nav.register.4}}">{{$nav.register.1}}</a>
</li>
{{/if}}
{{if $nav.alogout}}
<li class="nav-item {{$nav.alogout.2}} d-lg-flex">
<a class="nav-link" href="{{$nav.alogout.0}}" title="{{$nav.alogout.3}}" id="{{$nav.alogout.4}}">{{$nav.alogout.1}}</a>
</li>
{{/if}}
</ul>
<div id="banner" class="navbar-text">{{$banner}}</div>
<ul id="nav-right" class="navbar-nav ml-auto">
<li class="nav-item collapse clearfix" id="nav-search">
<form class="form-inline" method="get" action="search" role="search">
<input class="form-control form-control-sm mt-1 mr-2" id="nav-search-text" type="text" value="" placeholder="{{$help}}" name="search" title="{{$nav.search.3}}" onclick="this.submit();" onblur="closeMenu('nav-search'); openMenu('nav-search-btn');"/>
</form>
<div id="nav-search-spinner" class="spinner-wrapper">
<div class="spinner s"></div>
</div>
</li>
<li class="nav-item" id="nav-search-btn">
<a class="nav-link" href="#nav-search" title="{{$nav.search.3}}" onclick="openMenu('nav-search'); closeMenu('nav-search-btn'); $('#nav-search-text').focus(); return false;"><i class="fa fa-fw fa-search"></i></a>
</li>
<li class="nav-item">
<a href="directory" class="navbar-app nav-link {{if (substr($url,17,9)=="directory")}} active{{/if}}" title="{{t('Directory')}}"><i class="fa fa-fw fa-sitemap"></i></a>
</li>
<li class="nav-item">
<a href="pubstream" class="navbar-app nav-link {{if (substr($url,17,9)=="pubstream")}} active{{/if}}" title="{{t('Public Stream')}}"><i class="fa fa-fw fa-globe"></i></a>
</li>
<li class="nav-item">
<a href="randprof" class="navbar-app nav-link {{if (substr($url,17,8)=="randprof")}} active{{/if}}" title="{{t('Random Channel')}}"><i class="fa fa-fw fa-random"></i></a>
</li>
<li class="nav-item">
<a href="lang" class="navbar-app nav-link {{if (substr($url,17,4)=="lang")}} active{{/if}}" title="{{t('Language')}}"><i class="fa fa-fw fa-language"></i></a>
</li>
{{if $nav.help.6}}
<li class="nav-item dropdown {{$sel.help}}">
<a class="nav-link {{$nav.help.2}}" target="hubzilla-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}" id="{{$nav.help.4}}" onclick="contextualHelp(); return false;"><i class="fa fa-fw fa-question-circle"></i></a>
</li>
{{/if}}
{{if $localuser || $nav.pubs}}
<li id="notifications-btn" class="nav-item d-xl-none">
<a class="nav-link text-white notifications-btn" href="#"><i id="notifications-btn-icon" class="fa fa-exclamation-circle notifications-btn-icon"></i></a>
</li>
{{/if}}
{{if $channel_menu && $channel_apps.0}}
<li class="nav-item dropdown" id="channel-menu">
<a class="nav-link" href="#" data-toggle="dropdown"><img src="{{$channel_thumb}}" style="height:14px; width:14px;position:relative; top:-2px;" /></a>
<div id="dropdown-menu" class="dropdown-menu dropdown-menu-right">
{{foreach $channel_apps as $channel_app}}
{{$channel_app}}
{{/foreach}}
</div>
</li>
{{/if}}
{{if $navbar_apps}}
{{foreach $navbar_apps as $navbar_app}}
<li>
{{$navbar_app}}
</li>
{{/foreach}}
{{/if}}
</ul>
</div>
<div class="collapse d-lg-none" id="navbar-collapse-2">
<div class="navbar-nav mr-auto">
{{if $channel_apps.0}}
{{foreach $channel_apps as $channel_app}}
{{$channel_app|replace:'dropdown-item':'nav-link'}}
{{/foreach}}
<div class="dropdown-header text-white-50 sys-apps-toggle" onclick="openClose('sys-apps-collapsed');">
{{$sysapps_toggle}}
</div>
<div id="sys-apps-collapsed" style="display:none;">
{{/if}}
{{foreach $navbar_apps as $navbar_app}}
{{$navbar_app}}
{{/foreach}}
{{foreach $nav_apps as $nav_app}}
{{$nav_app|replace:'dropdown-item':'nav-link'}}
{{/foreach}}
{{if $channel_apps.0}}
</div>
{{/if}}
{{if $is_owner}}
<div class="dropdown-divider"></div>
<a class="nav-link" href="/apps"><i class="generic-icons-nav fa fa-fw fa-plus-circle"></i>{{$addapps}}</a>
<a class="nav-link" href="/apporder"><i class="generic-icons-nav fa fa-fw fa-sort"></i>{{$orderapps}}</a>
{{/if}}
</div>
</div>
{{if $nav.help.6}}
<div id="contextual-help-content" class="contextual-help-content">
{{$nav.help.5}}
<div class="float-right">
<a class="btn btn-primary btn-sm" target="hubzilla-help" href="{{$nav.help.0}}" title="{{$nav.help.3}}"><i class="fa fa-question"></i>&nbsp;{{$fulldocs}}</a>
<a class="contextual-help-tool" href="#" onclick="contextualHelp(); return false;"><i class="fa fa-times"></i></a>
</div>
</div>
{{/if}}