This commit is contained in:
ivan 2021-07-13 23:13:31 +03:00
parent 6de3581699
commit b85a62d01b
48 changed files with 1702 additions and 1160 deletions

File diff suppressed because it is too large Load Diff

View File

@ -11,44 +11,21 @@ $(document).ready(function() {
if($(window).width() < 992) { if($(window).width() < 992) {
$('main').css('width', $(window).width() + $('aside').outerWidth() ); $('main').css('width', $(window).width() + $('aside').outerWidth() );
} else { } else {
$('main').css('width', '100%' ); $('main').css('width', '100%');
} }
}); });
} }
$('#css3-calc').remove(); // Remove the test element $('#css3-calc').remove(); // Remove the test element
if($(window).width() >= 992) { stickyScroll('.aside_spacer_left', '.aside_spacer_top_left', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_1')).getPropertyValue('padding-top')), 0);
$('#left_aside_wrapper, #right_aside_wrapper').stick_in_parent({ stickyScroll('.aside_spacer_right', '.aside_spacer_top_right', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_3')).getPropertyValue('padding-top')), 20);
offset_top: parseInt($('aside').css('padding-top')),
parent: 'main',
spacer: '.aside_spacer'
});
}
$('#expand-aside').on('click', toggleAside); $('#expand-aside').on('click', function() {
$('section').on('click', function() {
if($('main').hasClass('region_1-on')){ if($('main').hasClass('region_1-on')){
toggleAside(); toggleAside('left');
} }
}); else {
toggleAside('right');
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();
} }
}); });
@ -84,7 +61,7 @@ $(document).ready(function() {
var doctitle = document.title; var doctitle = document.title;
function checkNotify() { function checkNotify() {
var notifyUpdateElem = document.getElementById('notify-update'); var notifyUpdateElem = document.getElementById('notify-update');
if(notifyUpdateElem !== null) { if(notifyUpdateElem !== null) {
if(notifyUpdateElem.innerHTML !== "") if(notifyUpdateElem.innerHTML !== "")
document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle; document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle;
else else
@ -92,8 +69,103 @@ $(document).ready(function() {
} }
} }
setInterval(function () {checkNotify();}, 10 * 1000); setInterval(function () {checkNotify();}, 10 * 1000);
var touch_start = null;
var touch_max = window.innerWidth / 10;
window.addEventListener('touchstart', function(e) {
if (e.touches.length === 1){
//just one finger touched
touch_start = e.touches.item(0).clientX;
if (touch_start < touch_max) {
$('html, body').css('overflow-y', 'hidden');
}
}
else {
//a second finger hit the screen, abort the touch
touch_start = null;
}
});
window.addEventListener('touchend', function(e) {
$('html, body').css('overflow-y', '');
let touch_offset = 30; //at least 30px are a swipe
if (touch_start) {
//the only finger that hit the screen left it
let touch_end = e.changedTouches.item(0).clientX;
if (touch_end > (touch_start + touch_offset)) {
//a left -> right swipe
if (touch_start < touch_max) {
toggleAside('right');
}
}
if (touch_end < (touch_start - touch_offset)) {
//a right -> left swipe
//toggleAside('left');
}
}
});
$(document).on('hz:hqControlsClickAction', function(e) {
toggleAside('left');
});
}); });
function setStyle(element, cssProperty) {
for (var property in cssProperty){
element.style[property] = cssProperty[property];
}
}
function stickyScroll(sticky, stickyTop, container, topOffset, bottomOffset) {
var lastScrollTop = 0;
var sticky = document.querySelector(sticky);
var stickyHeight = sticky.getBoundingClientRect().height;
var stickyTop = document.querySelector(stickyTop);
var content = document.querySelector(container);
var diff = window.innerHeight - stickyHeight;
var h = 0;
var lasth = 0;
var st = window.pageYOffset || document.documentElement.scrollTop;
var resizeObserver = new ResizeObserver(function(entries) {
stickyHeight = sticky.getBoundingClientRect().height;
st = window.pageYOffset || document.documentElement.scrollTop;
diff = window.innerHeight - stickyHeight;
});
resizeObserver.observe(sticky);
resizeObserver.observe(content);
window.addEventListener('scroll', function() {
if(window.innerHeight > stickyHeight + topOffset) {
setStyle(stickyTop, { height: 0 + 'px' });
setStyle(sticky, { position: 'sticky', top: topOffset + 'px'});
}
else {
st = window.pageYOffset || document.documentElement.scrollTop; // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
if (st > lastScrollTop){
// downscroll code
setStyle(stickyTop, { height: lasth + 'px' });
setStyle(sticky, { position: 'sticky', top: Math.round(diff) - bottomOffset + 'px', bottom: '' });
} else {
// upscroll code
h = sticky.getBoundingClientRect().top - content.getBoundingClientRect().top - topOffset;
if(Math.round(stickyTop.getBoundingClientRect().height) === lasth) {
setStyle(stickyTop, { height: Math.round(h) + 'px' });
}
lasth = Math.round(h);
setStyle(sticky, { position: 'sticky', top: '', bottom: Math.round(diff - topOffset) + 'px' });
}
lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling
}
}, false);
}
function makeFullScreen(full) { function makeFullScreen(full) {
if(typeof full=='undefined' || full == true) { if(typeof full=='undefined' || full == true) {
$('main').addClass('fullscreen'); $('main').addClass('fullscreen');
@ -104,26 +176,21 @@ function makeFullScreen(full) {
$('main').removeClass('fullscreen'); $('main').removeClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').show(); $('header, nav, aside, #fullscreen-btn').show();
$('#inline-btn').hide(); $('#inline-btn').hide();
$(document.body).trigger("sticky_kit:recalc");
} }
} }
function toggleAside() { function toggleAside(swipe) {
$('#expand-aside-icon').toggleClass('fa-arrow-circle-right').toggleClass('fa-arrow-circle-left');
if($('main').hasClass('region_1-on')){ if ($('main').hasClass('region_1-on') && swipe === 'left') {
$('html, body').css('overflow-x', ''); $('#expand-aside-icon').addClass('fa-arrow-circle-right').removeClass('fa-arrow-circle-left');
$('main').removeClass('region_1-on') $('html, body').css({ 'position': '', left: '' });
$('main').removeClass('region_1-on');
$('#overlay').remove(); $('#overlay').remove();
$('#left_aside_wrapper').trigger("sticky_kit:detach");
} }
else { if (!$('main').hasClass('region_1-on') && swipe === 'right') {
$('html, body').css('overflow-x', 'hidden'); $('#expand-aside-icon').removeClass('fa-arrow-circle-right').addClass('fa-arrow-circle-left');
$('main').addClass('region_1-on') $('html, body').css({ 'position': 'sticky', 'left': '0px'});
$('<div id="overlay"></div>').appendTo('section'); $('main').addClass('region_1-on');
$('#left_aside_wrapper').stick_in_parent({ $('<div id="overlay"></div>').appendTo('body').one('click', function() { toggleAside('left'); });
offset_top: $('nav').outerHeight(true) + 10,
parent: '#region_1',
spacer: '#left_aside_spacer'
});
} }
} }

View File

@ -120,10 +120,10 @@ if(file_exists('view/theme/ussrbasic/css/style.css')) {
$x .= $schemecss; $x .= $schemecss;
} }
$aside_width = 288; $left_aside_width = 288;
$right_aside_width = 288;
// left aside and right aside are 285px + converse width $main_width = $left_aside_width + $right_aside_width + intval($converse_width);
$main_width = (($aside_width * 2) + intval($converse_width));
// prevent main_width smaller than 768px // prevent main_width smaller than 768px
$main_width = (($main_width < 768) ? 768 : $main_width); $main_width = (($main_width < 768) ? 768 : $main_width);
@ -150,7 +150,8 @@ if(file_exists('view/theme/ussrbasic/css/style.css')) {
'$pmenu_top' => $pmenu_top, '$pmenu_top' => $pmenu_top,
'$pmenu_reply' => $pmenu_reply, '$pmenu_reply' => $pmenu_reply,
'$main_width' => $main_width, '$main_width' => $main_width,
'$aside_width' => $aside_width '$left_aside_width' => $left_aside_width,
'$right_aside_width' => $right_aside_width
); );
echo str_replace(array_keys($options), array_values($options), $x); echo str_replace(array_keys($options), array_values($options), $x);
@ -159,5 +160,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'] != 'ussrbasic') if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'ussrbasic')
// set_pconfig(local_channel(), 'ussrbasic', 'schema', '---'); set_pconfig(local_channel(), 'ussrbasic', 'schema', '---');

View File

@ -2,15 +2,13 @@
/** /**
* * Name: Ussrbasic * * Name: Ussrbasic
* * Description: ussr.win default 3 column theme * * Description: ussr.win 3 column based on Hubzilla standard theme
* * Version: 4.4.2 * * Version: 2.1
* * MinVersion: 3.8 * * MinVersion: 5.9
* * MaxVersion: 6.0 * * MaxVersion: 7.0
* * Author: Fabrixxm * * Author: Fabrixxm
*/ */
function ussrbasic_init(&$a) { function ussrbasic_init(&$a) {
App::$theme_info['extends'] = 'redbasic';
} }

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

@ -3,10 +3,11 @@
if (! $nav_bg) if (! $nav_bg)
$nav_bg = "#f8f9fa"; $nav_bg = "#f8f9fa";
if (! $nav_icon_colour) if (! $nav_icon_colour)
$nav_icon_colour = "rgba(0, 0, 0, 0.5);"; $nav_icon_colour = "rgba(0, 0, 0, 0.5)";
if (! $nav_active_icon_colour) if (! $nav_active_icon_colour)
$nav_active_icon_colour = "rgba(0, 0, 0, 0.7)"; $nav_active_icon_colour = "rgba(0, 0, 0, 0.7)";
if (! $radius) if (! $radius)
$radius = "4px"; $radius = "4px";
if (! $banner_colour) if (! $banner_colour)
$banner_colour = "rgba(0, 0, 0, 0.7)"; $banner_colour = "rgba(0, 0, 0, 0.7)";

View File

@ -324,4 +324,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -333,4 +333,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -325,4 +325,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -319,4 +319,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -322,9 +322,6 @@ a, a:visited, a:link, .fakelink, .fakelink:visited, .fakelink:link {
.text-dark { .text-dark {
color: #aaa !important; color: #aaa !important;
} }
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.group-selected, .fileas-selected, .categories-selected, .search-selected, a.active { .group-selected, .fileas-selected, .categories-selected, .search-selected, a.active {
color: #fff !important; color: #fff !important;
@ -480,3 +477,26 @@ pre {
.widget-nav-pills-checkbox:hover + a { .widget-nav-pills-checkbox:hover + a {
background-color: #222; background-color: #222;
} }
/* category badge fix: */
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.badge-warning {
/* background-color: #ffc927; */
}
.badge-warning a.text-dark {
color: #333 !important;
}
.badge-warning a.text-dark:focus, .badge-warning a.text-dark:hover {
color: red !important;
text-decoration: none;
}
/* fix color for highlithed text */
span.default-highlight {
color: #333;
border-radius: 4px;
}

View File

@ -345,4 +345,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -22,18 +22,21 @@ body {
margin: 0px; margin: 0px;
} }
aside { aside#region_1 {
width: $aside_widthpx;
min-width: $aside_widthpx;
max-width: $aside_widthpx;
}
aside #region_1 {
border-right: 1px solid transparent; border-right: 1px solid transparent;
width: $left_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $left_aside_widthpx;
} }
aside #left_aside_wrapper, aside#region_3 {
aside #right_aside_wrapper { width: $right_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $right_aside_widthpx;
}
aside#left_aside_wrapper,
aside#right_aside_wrapper {
margin-bottom: 10px; margin-bottom: 10px;
} }
@ -44,14 +47,13 @@ main {
} }
#overlay { #overlay {
position: absolute; position: fixed;
top: 0; top: 0;
left: 0; left: $left_aside_widthpx;
width: 100%; width: 100vw;
height: 100%; height: 100vh;
background: rgba(0, 0, 0, .5); background: rgba(0, 0, 0, .3);
cursor: pointer; cursor: pointer;
z-index: 1028;
} }
h1, .h1 { h1, .h1 {
@ -362,7 +364,7 @@ footer {
bottom:1px; bottom:1px;
text-align: right; text-align: right;
padding-bottom: 1em; padding-bottom: 1em;
padding-right: 3em; padding-right: 3em;
} }
.birthday-today, .birthday-today,
@ -481,7 +483,7 @@ footer {
.pager_next, .pager_next,
.pager-prev, .pager-prev,
.pager-next, .pager-next,
.pager_n { .pager_n {
border: 1px solid #ccc; border: 1px solid #ccc;
background: transparent; background: transparent;
padding: 4px; padding: 4px;
@ -663,7 +665,7 @@ nav .acpopup {
} }
.profile-match-name { .profile-match-name {
width: 116px; width: 120px;
height: 1.5em; height: 1.5em;
overflow: hidden !important; overflow: hidden !important;
} }
@ -679,8 +681,8 @@ nav .acpopup {
.profile-match-wrapper { .profile-match-wrapper {
float: left; float: left;
width: 118px; width: 120px;
height: 118px; height: 150px;
padding: 10px; padding: 10px;
margin: 8px 10px 0 0; margin: 8px 10px 0 0;
border-top: 1px solid #eee; border-top: 1px solid #eee;
@ -735,7 +737,7 @@ nav .acpopup {
height: auto; overflow: auto; height: auto; overflow: auto;
border-bottom: 2px solid #cccccc; border-bottom: 2px solid #cccccc;
padding-bottom: 1em; padding-bottom: 1em;
margin-bottom: 1em; margin-bottom: 1em;
} }
.oauthapp img { .oauthapp img {
float: left; float: left;
@ -777,7 +779,7 @@ div.jGrowl div.info {
} }
#jGrowl.top-right { #jGrowl.top-right {
top: 4.5rem; top: 4.5rem;
right: 15px; right: .25rem;
} }
div.jGrowl div.jGrowl-notification { div.jGrowl div.jGrowl-notification {
@ -796,8 +798,6 @@ div.jGrowl div.jGrowl-notification {
} }
.contactname { .contactname {
font-weight: bold;
color: $font_colour;
display: block; display: block;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -872,10 +872,6 @@ div.jGrowl div.jGrowl-notification {
margin-left: 20px; margin-left: 20px;
} }
.reshared-content img {
width: 100%;
}
.shared_header img { .shared_header img {
border-radius: $radius; border-radius: $radius;
margin-right: 10px; margin-right: 10px;
@ -884,21 +880,19 @@ div.jGrowl div.jGrowl-notification {
.tag1 { .tag1 {
font-size : 0.9em !important; font-size : 0.9em !important;
} }
.tag2 { .tag2 {
font-size : 1.0em !important; font-size : 1.0em !important;
} }
.tag3 { .tag3 {
font-size : 1.1em !important; font-size : 1.1em !important;
} }
.tag4 { .tag4 {
font-size : 1.2em !important; font-size : 1.2em !important;
} }
.tag5 { .tag5 {
font-size : 1.3em !important; font-size : 1.3em !important;
} }
@ -918,12 +912,10 @@ div.jGrowl div.jGrowl-notification {
font-size : 1.6em !important; font-size : 1.6em !important;
} }
.tag9 { .tag9 {
font-size : 1.7em !important; font-size : 1.7em !important;
} }
.tag10 { .tag10 {
font-size : 1.8em !important; font-size : 1.8em !important;
} }
@ -1023,7 +1015,7 @@ th,td {
max-width: 19.4em; max-width: 19.4em;
overflow: hidden; overflow: hidden;
} }
/* mail */ /* mail */
img.mail-conv-sender-photo { img.mail-conv-sender-photo {
@ -1335,6 +1327,14 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
} }
.section-content-success-wrapper {
padding: 21px 10px;
color: #155724;
background-color: #d4edda;
border-bottom: 3px solid $comment_item_colour;
text-align: center;
}
.section-content-info-wrapper { .section-content-info-wrapper {
padding: 21px 10px; padding: 21px 10px;
color: #0c5460; color: #0c5460;
@ -1358,7 +1358,8 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
text-align: center; text-align: center;
} }
.section-content-tools-wrapper .section-content-success-wrapper,
.section-content-wrapper .section-content-success-wrapper,
.section-content-tools-wrapper .section-content-info-wrapper, .section-content-tools-wrapper .section-content-info-wrapper,
.section-content-wrapper .section-content-info-wrapper, .section-content-wrapper .section-content-info-wrapper,
.section-content-tools-wrapper .section-content-warning-wrapper, .section-content-tools-wrapper .section-content-warning-wrapper,
@ -1524,10 +1525,8 @@ blockquote {
} }
main { main {
left: -$left_aside_widthpx;
left: -$aside_widthpx; width: calc( 100% + $left_aside_widthpx );
width: calc( 100% + $aside_widthpx );
} }
main.region_1-on { main.region_1-on {
@ -1569,12 +1568,12 @@ blockquote {
margin-top:-3px; margin-top:-3px;
} }
dl.bb-dl > dt { dl.bb-dl > dt {
/* overriding the default dl style from bootstrap, as bootstrap's /* overriding the default dl style from bootstrap, as bootstrap's
style of a bold unindented line followed by a plain unindented style of a bold unindented line followed by a plain unindented
line is already acheivable in bbcode without dl */ line is already acheivable in bbcode without dl */
font-weight: normal; font-weight: normal;
} }
dl.dl-terms-monospace > dt { font-family: monospace; } dl.dl-terms-monospace > dt { font-family: monospace; }
dl.dl-terms-bold > dt { font-weight: bold; } dl.dl-terms-bold > dt { font-weight: bold; }
dl.dl-terms-italic > dt { font-style: italic; } dl.dl-terms-italic > dt { font-style: italic; }
@ -1585,7 +1584,7 @@ dl.bb-dl:not(.dl-horizontal) > dd {
margin-left: 2em; margin-left: 2em;
} }
dl.bb-dl > dd > li { dl.bb-dl > dd > li {
/* adding some indent so bullet-list items will line up better with /* adding some indent so bullet-list items will line up better with
dl descriptions if someone wants to be impure and combine them */ dl descriptions if someone wants to be impure and combine them */
margin-left: 1em; margin-left: 1em;
} }
@ -1599,6 +1598,7 @@ dl.bb-dl > dd > li {
content:"\f069 "; content:"\f069 ";
} }
/* Modified original CSS to match input in Redbasic */
.jothidden .bootstrap-tagsinput { .jothidden .bootstrap-tagsinput {
border: 0px solid transparent; border: 0px solid transparent;
margin-bottom: 0px; margin-bottom: 0px;
@ -1614,6 +1614,10 @@ dl.bb-dl > dd > li {
font-size: 100%; font-size: 100%;
} }
.bootstrap-tagsinput input {
height: 2.5rem;
}
/* Abusing theme-green is less work than makeing a new new one */ /* Abusing theme-green is less work than makeing a new new one */
.theme-green .back-bar .selected-bar { .theme-green .back-bar .selected-bar {
background-color: #000000; background-color: #000000;
@ -1633,13 +1637,14 @@ dl.bb-dl > dd > li {
} }
.form-group.checkbox > div label { .form-group.checkbox > div label {
display: block; overflow: hidden; cursor: pointer; display: block; overflow: hidden; cursor: pointer;
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 12px; border-radius: 12px;
margin:0px; margin:0px;
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
font-weight: normal;
} }
.form-group.checkbox:hover label { .form-group.checkbox:hover label {
@ -1803,25 +1808,26 @@ dl.bb-dl > dd > li {
} }
.cover-photo-review { .cover-photo-review {
margin-bottom: 10px; margin-bottom: 10px;
} }
.hover-fx-hide { .hover-fx-hide {
opacity: 0; opacity: 0;
} }
.hover-fx-show:hover .hover-fx-hide { .hover-fx-show:hover .hover-fx-hide {
opacity: 1; opacity: 1;
} }
.bg-primary { /* default highlighted text if not specified by schema: */
background-color: #505050 !important; span.default-highlight {
background-color: yellow;
} }
.nav-link.active { .bootstrap-tagsinput {
background-color: #505050 !important; width: 100%;
} }
#region_3 { #region_3 {
display: none !important; display: none !important;
} }

View File

@ -11,44 +11,21 @@ $(document).ready(function() {
if($(window).width() < 992) { if($(window).width() < 992) {
$('main').css('width', $(window).width() + $('aside').outerWidth() ); $('main').css('width', $(window).width() + $('aside').outerWidth() );
} else { } else {
$('main').css('width', '100%' ); $('main').css('width', '100%');
} }
}); });
} }
$('#css3-calc').remove(); // Remove the test element $('#css3-calc').remove(); // Remove the test element
if($(window).width() >= 992) { stickyScroll('.aside_spacer_left', '.aside_spacer_top_left', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_1')).getPropertyValue('padding-top')), 0);
$('#left_aside_wrapper, #right_aside_wrapper').stick_in_parent({ stickyScroll('.aside_spacer_right', '.aside_spacer_top_right', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_3')).getPropertyValue('padding-top')), 20);
offset_top: parseInt($('aside').css('padding-top')),
parent: 'main',
spacer: '.aside_spacer'
});
}
$('#expand-aside').on('click', toggleAside); $('#expand-aside').on('click', function() {
$('section').on('click', function() {
if($('main').hasClass('region_1-on')){ if($('main').hasClass('region_1-on')){
toggleAside(); toggleAside('left');
} }
}); else {
toggleAside('right');
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();
} }
}); });
@ -84,7 +61,7 @@ $(document).ready(function() {
var doctitle = document.title; var doctitle = document.title;
function checkNotify() { function checkNotify() {
var notifyUpdateElem = document.getElementById('notify-update'); var notifyUpdateElem = document.getElementById('notify-update');
if(notifyUpdateElem !== null) { if(notifyUpdateElem !== null) {
if(notifyUpdateElem.innerHTML !== "") if(notifyUpdateElem.innerHTML !== "")
document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle; document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle;
else else
@ -92,8 +69,103 @@ $(document).ready(function() {
} }
} }
setInterval(function () {checkNotify();}, 10 * 1000); setInterval(function () {checkNotify();}, 10 * 1000);
var touch_start = null;
var touch_max = window.innerWidth / 10;
window.addEventListener('touchstart', function(e) {
if (e.touches.length === 1){
//just one finger touched
touch_start = e.touches.item(0).clientX;
if (touch_start < touch_max) {
$('html, body').css('overflow-y', 'hidden');
}
}
else {
//a second finger hit the screen, abort the touch
touch_start = null;
}
});
window.addEventListener('touchend', function(e) {
$('html, body').css('overflow-y', '');
let touch_offset = 30; //at least 30px are a swipe
if (touch_start) {
//the only finger that hit the screen left it
let touch_end = e.changedTouches.item(0).clientX;
if (touch_end > (touch_start + touch_offset)) {
//a left -> right swipe
if (touch_start < touch_max) {
toggleAside('right');
}
}
if (touch_end < (touch_start - touch_offset)) {
//a right -> left swipe
//toggleAside('left');
}
}
});
$(document).on('hz:hqControlsClickAction', function(e) {
toggleAside('left');
});
}); });
function setStyle(element, cssProperty) {
for (var property in cssProperty){
element.style[property] = cssProperty[property];
}
}
function stickyScroll(sticky, stickyTop, container, topOffset, bottomOffset) {
var lastScrollTop = 0;
var sticky = document.querySelector(sticky);
var stickyHeight = sticky.getBoundingClientRect().height;
var stickyTop = document.querySelector(stickyTop);
var content = document.querySelector(container);
var diff = window.innerHeight - stickyHeight;
var h = 0;
var lasth = 0;
var st = window.pageYOffset || document.documentElement.scrollTop;
var resizeObserver = new ResizeObserver(function(entries) {
stickyHeight = sticky.getBoundingClientRect().height;
st = window.pageYOffset || document.documentElement.scrollTop;
diff = window.innerHeight - stickyHeight;
});
resizeObserver.observe(sticky);
resizeObserver.observe(content);
window.addEventListener('scroll', function() {
if(window.innerHeight > stickyHeight + topOffset) {
setStyle(stickyTop, { height: 0 + 'px' });
setStyle(sticky, { position: 'sticky', top: topOffset + 'px'});
}
else {
st = window.pageYOffset || document.documentElement.scrollTop; // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
if (st > lastScrollTop){
// downscroll code
setStyle(stickyTop, { height: lasth + 'px' });
setStyle(sticky, { position: 'sticky', top: Math.round(diff) - bottomOffset + 'px', bottom: '' });
} else {
// upscroll code
h = sticky.getBoundingClientRect().top - content.getBoundingClientRect().top - topOffset;
if(Math.round(stickyTop.getBoundingClientRect().height) === lasth) {
setStyle(stickyTop, { height: Math.round(h) + 'px' });
}
lasth = Math.round(h);
setStyle(sticky, { position: 'sticky', top: '', bottom: Math.round(diff - topOffset) + 'px' });
}
lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling
}
}, false);
}
function makeFullScreen(full) { function makeFullScreen(full) {
if(typeof full=='undefined' || full == true) { if(typeof full=='undefined' || full == true) {
$('main').addClass('fullscreen'); $('main').addClass('fullscreen');
@ -104,26 +176,21 @@ function makeFullScreen(full) {
$('main').removeClass('fullscreen'); $('main').removeClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').show(); $('header, nav, aside, #fullscreen-btn').show();
$('#inline-btn').hide(); $('#inline-btn').hide();
$(document.body).trigger("sticky_kit:recalc");
} }
} }
function toggleAside() { function toggleAside(swipe) {
$('#expand-aside-icon').toggleClass('fa-arrow-circle-right').toggleClass('fa-arrow-circle-left');
if($('main').hasClass('region_1-on')){ if ($('main').hasClass('region_1-on') && swipe === 'left') {
$('html, body').css('overflow-x', ''); $('#expand-aside-icon').addClass('fa-arrow-circle-right').removeClass('fa-arrow-circle-left');
$('main').removeClass('region_1-on') $('html, body').css({ 'position': '', left: '' });
$('main').removeClass('region_1-on');
$('#overlay').remove(); $('#overlay').remove();
$('#left_aside_wrapper').trigger("sticky_kit:detach");
} }
else { if (!$('main').hasClass('region_1-on') && swipe === 'right') {
$('html, body').css('overflow-x', 'hidden'); $('#expand-aside-icon').removeClass('fa-arrow-circle-right').addClass('fa-arrow-circle-left');
$('main').addClass('region_1-on') $('html, body').css({ 'position': 'sticky', 'left': '0px'});
$('<div id="overlay"></div>').appendTo('section'); $('main').addClass('region_1-on');
$('#left_aside_wrapper').stick_in_parent({ $('<div id="overlay"></div>').appendTo('body').one('click', function() { toggleAside('left'); });
offset_top: $('nav').outerHeight(true) + 10,
parent: '#region_1',
spacer: '#left_aside_spacer'
});
} }
} }

View File

@ -120,10 +120,10 @@ if(file_exists('view/theme/ussrbasicleft/css/style.css')) {
$x .= $schemecss; $x .= $schemecss;
} }
$aside_width = 288; $left_aside_width = 288;
$right_aside_width = 288;
// left aside and right aside are 285px + converse width $main_width = $left_aside_width + $right_aside_width + intval($converse_width);
$main_width = (($aside_width * 2) + intval($converse_width));
// prevent main_width smaller than 768px // prevent main_width smaller than 768px
$main_width = (($main_width < 768) ? 768 : $main_width); $main_width = (($main_width < 768) ? 768 : $main_width);
@ -150,7 +150,8 @@ if(file_exists('view/theme/ussrbasicleft/css/style.css')) {
'$pmenu_top' => $pmenu_top, '$pmenu_top' => $pmenu_top,
'$pmenu_reply' => $pmenu_reply, '$pmenu_reply' => $pmenu_reply,
'$main_width' => $main_width, '$main_width' => $main_width,
'$aside_width' => $aside_width '$left_aside_width' => $left_aside_width,
'$right_aside_width' => $right_aside_width
); );
echo str_replace(array_keys($options), array_values($options), $x); echo str_replace(array_keys($options), array_values($options), $x);
@ -159,5 +160,5 @@ if(file_exists('view/theme/ussrbasicleft/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'] != 'ussrbasicleft') if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'ussrbasicleft')
// set_pconfig(local_channel(), 'ussrbasicleft', 'schema', '---'); set_pconfig(local_channel(), 'ussrbasicleft', 'schema', '---');

View File

@ -2,15 +2,13 @@
/** /**
* * Name: Ussrbasicleft * * Name: Ussrbasicleft
* * Description: 2 column, left navigation panel * * Description: ussr.win 2 column left based on Hubzilla standard theme
* * Version: 4.4.2 * * Version: 2.1
* * MinVersion: 3.8 * * MinVersion: 5.9
* * MaxVersion: 6.0 * * MaxVersion: 7.0
* * Author: Fabrixxm * * Author: Fabrixxm
*/ */
function ussrbasicleft_init(&$a) { function ussrbasicleft_init(&$a) {
App::$theme_info['extends'] = 'redbasic';
} }

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

@ -3,10 +3,11 @@
if (! $nav_bg) if (! $nav_bg)
$nav_bg = "#f8f9fa"; $nav_bg = "#f8f9fa";
if (! $nav_icon_colour) if (! $nav_icon_colour)
$nav_icon_colour = "rgba(0, 0, 0, 0.5);"; $nav_icon_colour = "rgba(0, 0, 0, 0.5)";
if (! $nav_active_icon_colour) if (! $nav_active_icon_colour)
$nav_active_icon_colour = "rgba(0, 0, 0, 0.7)"; $nav_active_icon_colour = "rgba(0, 0, 0, 0.7)";
if (! $radius) if (! $radius)
$radius = "4px"; $radius = "4px";
if (! $banner_colour) if (! $banner_colour)
$banner_colour = "rgba(0, 0, 0, 0.7)"; $banner_colour = "rgba(0, 0, 0, 0.7)";

View File

@ -324,4 +324,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -333,4 +333,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -325,4 +325,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -319,4 +319,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -322,9 +322,6 @@ a, a:visited, a:link, .fakelink, .fakelink:visited, .fakelink:link {
.text-dark { .text-dark {
color: #aaa !important; color: #aaa !important;
} }
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.group-selected, .fileas-selected, .categories-selected, .search-selected, a.active { .group-selected, .fileas-selected, .categories-selected, .search-selected, a.active {
color: #fff !important; color: #fff !important;
@ -480,3 +477,26 @@ pre {
.widget-nav-pills-checkbox:hover + a { .widget-nav-pills-checkbox:hover + a {
background-color: #222; background-color: #222;
} }
/* category badge fix: */
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.badge-warning {
/* background-color: #ffc927; */
}
.badge-warning a.text-dark {
color: #333 !important;
}
.badge-warning a.text-dark:focus, .badge-warning a.text-dark:hover {
color: red !important;
text-decoration: none;
}
/* fix color for highlithed text */
span.default-highlight {
color: #333;
border-radius: 4px;
}

View File

@ -345,4 +345,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -22,18 +22,21 @@ body {
margin: 0px; margin: 0px;
} }
aside { aside#region_1 {
width: $aside_widthpx;
min-width: $aside_widthpx;
max-width: $aside_widthpx;
}
aside #region_1 {
border-right: 1px solid transparent; border-right: 1px solid transparent;
width: $left_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $left_aside_widthpx;
} }
aside #left_aside_wrapper, aside#region_3 {
aside #right_aside_wrapper { width: $right_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $right_aside_widthpx;
}
aside#left_aside_wrapper,
aside#right_aside_wrapper {
margin-bottom: 10px; margin-bottom: 10px;
} }
@ -44,14 +47,13 @@ main {
} }
#overlay { #overlay {
position: absolute; position: fixed;
top: 0; top: 0;
left: 0; left: $left_aside_widthpx;
width: 100%; width: 100vw;
height: 100%; height: 100vh;
background: rgba(0, 0, 0, .5); background: rgba(0, 0, 0, .3);
cursor: pointer; cursor: pointer;
z-index: 1028;
} }
h1, .h1 { h1, .h1 {
@ -362,7 +364,7 @@ footer {
bottom:1px; bottom:1px;
text-align: right; text-align: right;
padding-bottom: 1em; padding-bottom: 1em;
padding-right: 3em; padding-right: 3em;
} }
.birthday-today, .birthday-today,
@ -481,7 +483,7 @@ footer {
.pager_next, .pager_next,
.pager-prev, .pager-prev,
.pager-next, .pager-next,
.pager_n { .pager_n {
border: 1px solid #ccc; border: 1px solid #ccc;
background: transparent; background: transparent;
padding: 4px; padding: 4px;
@ -663,7 +665,7 @@ nav .acpopup {
} }
.profile-match-name { .profile-match-name {
width: 116px; width: 120px;
height: 1.5em; height: 1.5em;
overflow: hidden !important; overflow: hidden !important;
} }
@ -679,8 +681,8 @@ nav .acpopup {
.profile-match-wrapper { .profile-match-wrapper {
float: left; float: left;
width: 118px; width: 120px;
height: 118px; height: 150px;
padding: 10px; padding: 10px;
margin: 8px 10px 0 0; margin: 8px 10px 0 0;
border-top: 1px solid #eee; border-top: 1px solid #eee;
@ -735,7 +737,7 @@ nav .acpopup {
height: auto; overflow: auto; height: auto; overflow: auto;
border-bottom: 2px solid #cccccc; border-bottom: 2px solid #cccccc;
padding-bottom: 1em; padding-bottom: 1em;
margin-bottom: 1em; margin-bottom: 1em;
} }
.oauthapp img { .oauthapp img {
float: left; float: left;
@ -777,7 +779,7 @@ div.jGrowl div.info {
} }
#jGrowl.top-right { #jGrowl.top-right {
top: 4.5rem; top: 4.5rem;
right: 15px; right: .25rem;
} }
div.jGrowl div.jGrowl-notification { div.jGrowl div.jGrowl-notification {
@ -796,8 +798,6 @@ div.jGrowl div.jGrowl-notification {
} }
.contactname { .contactname {
font-weight: bold;
color: $font_colour;
display: block; display: block;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -872,10 +872,6 @@ div.jGrowl div.jGrowl-notification {
margin-left: 20px; margin-left: 20px;
} }
.reshared-content img {
width: 100%;
}
.shared_header img { .shared_header img {
border-radius: $radius; border-radius: $radius;
margin-right: 10px; margin-right: 10px;
@ -884,21 +880,19 @@ div.jGrowl div.jGrowl-notification {
.tag1 { .tag1 {
font-size : 0.9em !important; font-size : 0.9em !important;
} }
.tag2 { .tag2 {
font-size : 1.0em !important; font-size : 1.0em !important;
} }
.tag3 { .tag3 {
font-size : 1.1em !important; font-size : 1.1em !important;
} }
.tag4 { .tag4 {
font-size : 1.2em !important; font-size : 1.2em !important;
} }
.tag5 { .tag5 {
font-size : 1.3em !important; font-size : 1.3em !important;
} }
@ -918,12 +912,10 @@ div.jGrowl div.jGrowl-notification {
font-size : 1.6em !important; font-size : 1.6em !important;
} }
.tag9 { .tag9 {
font-size : 1.7em !important; font-size : 1.7em !important;
} }
.tag10 { .tag10 {
font-size : 1.8em !important; font-size : 1.8em !important;
} }
@ -1023,7 +1015,7 @@ th,td {
max-width: 19.4em; max-width: 19.4em;
overflow: hidden; overflow: hidden;
} }
/* mail */ /* mail */
img.mail-conv-sender-photo { img.mail-conv-sender-photo {
@ -1335,6 +1327,14 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
} }
.section-content-success-wrapper {
padding: 21px 10px;
color: #155724;
background-color: #d4edda;
border-bottom: 3px solid $comment_item_colour;
text-align: center;
}
.section-content-info-wrapper { .section-content-info-wrapper {
padding: 21px 10px; padding: 21px 10px;
color: #0c5460; color: #0c5460;
@ -1358,7 +1358,8 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
text-align: center; text-align: center;
} }
.section-content-tools-wrapper .section-content-success-wrapper,
.section-content-wrapper .section-content-success-wrapper,
.section-content-tools-wrapper .section-content-info-wrapper, .section-content-tools-wrapper .section-content-info-wrapper,
.section-content-wrapper .section-content-info-wrapper, .section-content-wrapper .section-content-info-wrapper,
.section-content-tools-wrapper .section-content-warning-wrapper, .section-content-tools-wrapper .section-content-warning-wrapper,
@ -1524,10 +1525,8 @@ blockquote {
} }
main { main {
left: -$left_aside_widthpx;
left: -$aside_widthpx; width: calc( 100% + $left_aside_widthpx );
width: calc( 100% + $aside_widthpx );
} }
main.region_1-on { main.region_1-on {
@ -1569,12 +1568,12 @@ blockquote {
margin-top:-3px; margin-top:-3px;
} }
dl.bb-dl > dt { dl.bb-dl > dt {
/* overriding the default dl style from bootstrap, as bootstrap's /* overriding the default dl style from bootstrap, as bootstrap's
style of a bold unindented line followed by a plain unindented style of a bold unindented line followed by a plain unindented
line is already acheivable in bbcode without dl */ line is already acheivable in bbcode without dl */
font-weight: normal; font-weight: normal;
} }
dl.dl-terms-monospace > dt { font-family: monospace; } dl.dl-terms-monospace > dt { font-family: monospace; }
dl.dl-terms-bold > dt { font-weight: bold; } dl.dl-terms-bold > dt { font-weight: bold; }
dl.dl-terms-italic > dt { font-style: italic; } dl.dl-terms-italic > dt { font-style: italic; }
@ -1585,7 +1584,7 @@ dl.bb-dl:not(.dl-horizontal) > dd {
margin-left: 2em; margin-left: 2em;
} }
dl.bb-dl > dd > li { dl.bb-dl > dd > li {
/* adding some indent so bullet-list items will line up better with /* adding some indent so bullet-list items will line up better with
dl descriptions if someone wants to be impure and combine them */ dl descriptions if someone wants to be impure and combine them */
margin-left: 1em; margin-left: 1em;
} }
@ -1599,6 +1598,7 @@ dl.bb-dl > dd > li {
content:"\f069 "; content:"\f069 ";
} }
/* Modified original CSS to match input in Redbasic */
.jothidden .bootstrap-tagsinput { .jothidden .bootstrap-tagsinput {
border: 0px solid transparent; border: 0px solid transparent;
margin-bottom: 0px; margin-bottom: 0px;
@ -1614,6 +1614,10 @@ dl.bb-dl > dd > li {
font-size: 100%; font-size: 100%;
} }
.bootstrap-tagsinput input {
height: 2.5rem;
}
/* Abusing theme-green is less work than makeing a new new one */ /* Abusing theme-green is less work than makeing a new new one */
.theme-green .back-bar .selected-bar { .theme-green .back-bar .selected-bar {
background-color: #000000; background-color: #000000;
@ -1633,13 +1637,14 @@ dl.bb-dl > dd > li {
} }
.form-group.checkbox > div label { .form-group.checkbox > div label {
display: block; overflow: hidden; cursor: pointer; display: block; overflow: hidden; cursor: pointer;
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 12px; border-radius: 12px;
margin:0px; margin:0px;
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
font-weight: normal;
} }
.form-group.checkbox:hover label { .form-group.checkbox:hover label {
@ -1803,25 +1808,26 @@ dl.bb-dl > dd > li {
} }
.cover-photo-review { .cover-photo-review {
margin-bottom: 10px; margin-bottom: 10px;
} }
.hover-fx-hide { .hover-fx-hide {
opacity: 0; opacity: 0;
} }
.hover-fx-show:hover .hover-fx-hide { .hover-fx-show:hover .hover-fx-hide {
opacity: 1; opacity: 1;
} }
.bg-primary { /* default highlighted text if not specified by schema: */
background-color: #505050 !important; span.default-highlight {
background-color: yellow;
} }
.nav-link.active { .bootstrap-tagsinput {
background-color: #505050 !important; width: 100%;
} }
#region_3 { #region_3 {
display: none !important; display: none !important;
} }

View File

@ -11,44 +11,21 @@ $(document).ready(function() {
if($(window).width() < 992) { if($(window).width() < 992) {
$('main').css('width', $(window).width() + $('aside').outerWidth() ); $('main').css('width', $(window).width() + $('aside').outerWidth() );
} else { } else {
$('main').css('width', '100%' ); $('main').css('width', '100%');
} }
}); });
} }
$('#css3-calc').remove(); // Remove the test element $('#css3-calc').remove(); // Remove the test element
if($(window).width() >= 992) { stickyScroll('.aside_spacer_left', '.aside_spacer_top_left', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_1')).getPropertyValue('padding-top')), 0);
$('#left_aside_wrapper, #right_aside_wrapper').stick_in_parent({ stickyScroll('.aside_spacer_right', '.aside_spacer_top_right', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_3')).getPropertyValue('padding-top')), 20);
offset_top: parseInt($('aside').css('padding-top')),
parent: 'main',
spacer: '.aside_spacer'
});
}
$('#expand-aside').on('click', toggleAside); $('#expand-aside').on('click', function() {
$('section').on('click', function() {
if($('main').hasClass('region_1-on')){ if($('main').hasClass('region_1-on')){
toggleAside(); toggleAside('left');
} }
}); else {
toggleAside('right');
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();
} }
}); });
@ -84,7 +61,7 @@ $(document).ready(function() {
var doctitle = document.title; var doctitle = document.title;
function checkNotify() { function checkNotify() {
var notifyUpdateElem = document.getElementById('notify-update'); var notifyUpdateElem = document.getElementById('notify-update');
if(notifyUpdateElem !== null) { if(notifyUpdateElem !== null) {
if(notifyUpdateElem.innerHTML !== "") if(notifyUpdateElem.innerHTML !== "")
document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle; document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle;
else else
@ -92,8 +69,103 @@ $(document).ready(function() {
} }
} }
setInterval(function () {checkNotify();}, 10 * 1000); setInterval(function () {checkNotify();}, 10 * 1000);
var touch_start = null;
var touch_max = window.innerWidth / 10;
window.addEventListener('touchstart', function(e) {
if (e.touches.length === 1){
//just one finger touched
touch_start = e.touches.item(0).clientX;
if (touch_start < touch_max) {
$('html, body').css('overflow-y', 'hidden');
}
}
else {
//a second finger hit the screen, abort the touch
touch_start = null;
}
});
window.addEventListener('touchend', function(e) {
$('html, body').css('overflow-y', '');
let touch_offset = 30; //at least 30px are a swipe
if (touch_start) {
//the only finger that hit the screen left it
let touch_end = e.changedTouches.item(0).clientX;
if (touch_end > (touch_start + touch_offset)) {
//a left -> right swipe
if (touch_start < touch_max) {
toggleAside('right');
}
}
if (touch_end < (touch_start - touch_offset)) {
//a right -> left swipe
//toggleAside('left');
}
}
});
$(document).on('hz:hqControlsClickAction', function(e) {
toggleAside('left');
});
}); });
function setStyle(element, cssProperty) {
for (var property in cssProperty){
element.style[property] = cssProperty[property];
}
}
function stickyScroll(sticky, stickyTop, container, topOffset, bottomOffset) {
var lastScrollTop = 0;
var sticky = document.querySelector(sticky);
var stickyHeight = sticky.getBoundingClientRect().height;
var stickyTop = document.querySelector(stickyTop);
var content = document.querySelector(container);
var diff = window.innerHeight - stickyHeight;
var h = 0;
var lasth = 0;
var st = window.pageYOffset || document.documentElement.scrollTop;
var resizeObserver = new ResizeObserver(function(entries) {
stickyHeight = sticky.getBoundingClientRect().height;
st = window.pageYOffset || document.documentElement.scrollTop;
diff = window.innerHeight - stickyHeight;
});
resizeObserver.observe(sticky);
resizeObserver.observe(content);
window.addEventListener('scroll', function() {
if(window.innerHeight > stickyHeight + topOffset) {
setStyle(stickyTop, { height: 0 + 'px' });
setStyle(sticky, { position: 'sticky', top: topOffset + 'px'});
}
else {
st = window.pageYOffset || document.documentElement.scrollTop; // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
if (st > lastScrollTop){
// downscroll code
setStyle(stickyTop, { height: lasth + 'px' });
setStyle(sticky, { position: 'sticky', top: Math.round(diff) - bottomOffset + 'px', bottom: '' });
} else {
// upscroll code
h = sticky.getBoundingClientRect().top - content.getBoundingClientRect().top - topOffset;
if(Math.round(stickyTop.getBoundingClientRect().height) === lasth) {
setStyle(stickyTop, { height: Math.round(h) + 'px' });
}
lasth = Math.round(h);
setStyle(sticky, { position: 'sticky', top: '', bottom: Math.round(diff - topOffset) + 'px' });
}
lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling
}
}, false);
}
function makeFullScreen(full) { function makeFullScreen(full) {
if(typeof full=='undefined' || full == true) { if(typeof full=='undefined' || full == true) {
$('main').addClass('fullscreen'); $('main').addClass('fullscreen');
@ -104,26 +176,21 @@ function makeFullScreen(full) {
$('main').removeClass('fullscreen'); $('main').removeClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').show(); $('header, nav, aside, #fullscreen-btn').show();
$('#inline-btn').hide(); $('#inline-btn').hide();
$(document.body).trigger("sticky_kit:recalc");
} }
} }
function toggleAside() { function toggleAside(swipe) {
$('#expand-aside-icon').toggleClass('fa-arrow-circle-right').toggleClass('fa-arrow-circle-left');
if($('main').hasClass('region_1-on')){ if ($('main').hasClass('region_1-on') && swipe === 'left') {
$('html, body').css('overflow-x', ''); $('#expand-aside-icon').addClass('fa-arrow-circle-right').removeClass('fa-arrow-circle-left');
$('main').removeClass('region_1-on') $('html, body').css({ 'position': '', left: '' });
$('main').removeClass('region_1-on');
$('#overlay').remove(); $('#overlay').remove();
$('#left_aside_wrapper').trigger("sticky_kit:detach");
} }
else { if (!$('main').hasClass('region_1-on') && swipe === 'right') {
$('html, body').css('overflow-x', 'hidden'); $('#expand-aside-icon').removeClass('fa-arrow-circle-right').addClass('fa-arrow-circle-left');
$('main').addClass('region_1-on') $('html, body').css({ 'position': 'sticky', 'left': '0px'});
$('<div id="overlay"></div>').appendTo('section'); $('main').addClass('region_1-on');
$('#left_aside_wrapper').stick_in_parent({ $('<div id="overlay"></div>').appendTo('body').one('click', function() { toggleAside('left'); });
offset_top: $('nav').outerHeight(true) + 10,
parent: '#region_1',
spacer: '#left_aside_spacer'
});
} }
} }

View File

@ -120,10 +120,10 @@ if(file_exists('view/theme/ussrbasicpub/css/style.css')) {
$x .= $schemecss; $x .= $schemecss;
} }
$aside_width = 288; $left_aside_width = 288;
$right_aside_width = 288;
// left aside and right aside are 285px + converse width $main_width = $left_aside_width + $right_aside_width + intval($converse_width);
$main_width = (($aside_width * 2) + intval($converse_width));
// prevent main_width smaller than 768px // prevent main_width smaller than 768px
$main_width = (($main_width < 768) ? 768 : $main_width); $main_width = (($main_width < 768) ? 768 : $main_width);
@ -150,7 +150,8 @@ if(file_exists('view/theme/ussrbasicpub/css/style.css')) {
'$pmenu_top' => $pmenu_top, '$pmenu_top' => $pmenu_top,
'$pmenu_reply' => $pmenu_reply, '$pmenu_reply' => $pmenu_reply,
'$main_width' => $main_width, '$main_width' => $main_width,
'$aside_width' => $aside_width '$left_aside_width' => $left_aside_width,
'$right_aside_width' => $right_aside_width
); );
echo str_replace(array_keys($options), array_values($options), $x); echo str_replace(array_keys($options), array_values($options), $x);
@ -159,5 +160,5 @@ if(file_exists('view/theme/ussrbasicpub/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'] != 'ussrbasicpub') if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'ussrbasicpub')
// set_pconfig(local_channel(), 'ussrbasicpub', 'schema', '---'); set_pconfig(local_channel(), 'ussrbasicpub', 'schema', '---');

View File

@ -2,15 +2,13 @@
/** /**
* * Name: Ussrbasicpub * * Name: Ussrbasicpub
* * Description: 2 column theme with special informative navbar * * Description: ussr.win 2 column pub based on Hubzilla standard theme
* * Version: 4.4.2 * * Version: 2.1
* * MinVersion: 3.8 * * MinVersion: 5.9
* * MaxVersion: 6.0 * * MaxVersion: 7.0
* * Author: Fabrixxm * * Author: Fabrixxm
*/ */
function ussrbasicpub_init(&$a) { function ussrbasicpub_init(&$a) {
App::$theme_info['extends'] = 'redbasic';
} }

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

@ -3,10 +3,11 @@
if (! $nav_bg) if (! $nav_bg)
$nav_bg = "#f8f9fa"; $nav_bg = "#f8f9fa";
if (! $nav_icon_colour) if (! $nav_icon_colour)
$nav_icon_colour = "rgba(0, 0, 0, 0.5);"; $nav_icon_colour = "rgba(0, 0, 0, 0.5)";
if (! $nav_active_icon_colour) if (! $nav_active_icon_colour)
$nav_active_icon_colour = "rgba(0, 0, 0, 0.7)"; $nav_active_icon_colour = "rgba(0, 0, 0, 0.7)";
if (! $radius) if (! $radius)
$radius = "4px"; $radius = "4px";
if (! $banner_colour) if (! $banner_colour)
$banner_colour = "rgba(0, 0, 0, 0.7)"; $banner_colour = "rgba(0, 0, 0, 0.7)";

View File

@ -324,4 +324,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -333,4 +333,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -325,4 +325,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -319,4 +319,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -322,9 +322,6 @@ a, a:visited, a:link, .fakelink, .fakelink:visited, .fakelink:link {
.text-dark { .text-dark {
color: #aaa !important; color: #aaa !important;
} }
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.group-selected, .fileas-selected, .categories-selected, .search-selected, a.active { .group-selected, .fileas-selected, .categories-selected, .search-selected, a.active {
color: #fff !important; color: #fff !important;
@ -480,3 +477,26 @@ pre {
.widget-nav-pills-checkbox:hover + a { .widget-nav-pills-checkbox:hover + a {
background-color: #222; background-color: #222;
} }
/* category badge fix: */
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.badge-warning {
/* background-color: #ffc927; */
}
.badge-warning a.text-dark {
color: #333 !important;
}
.badge-warning a.text-dark:focus, .badge-warning a.text-dark:hover {
color: red !important;
text-decoration: none;
}
/* fix color for highlithed text */
span.default-highlight {
color: #333;
border-radius: 4px;
}

View File

@ -345,4 +345,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -22,18 +22,21 @@ body {
margin: 0px; margin: 0px;
} }
aside { aside#region_1 {
width: $aside_widthpx;
min-width: $aside_widthpx;
max-width: $aside_widthpx;
}
aside #region_1 {
border-right: 1px solid transparent; border-right: 1px solid transparent;
width: $left_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $left_aside_widthpx;
} }
aside #left_aside_wrapper, aside#region_3 {
aside #right_aside_wrapper { width: $right_aside_widthpx;
min-width: $left_aside_widthpx;
max-width: $right_aside_widthpx;
}
aside#left_aside_wrapper,
aside#right_aside_wrapper {
margin-bottom: 10px; margin-bottom: 10px;
} }
@ -44,14 +47,13 @@ main {
} }
#overlay { #overlay {
position: absolute; position: fixed;
top: 0; top: 0;
left: 0; left: $left_aside_widthpx;
width: 100%; width: 100vw;
height: 100%; height: 100vh;
background: rgba(0, 0, 0, .5); background: rgba(0, 0, 0, .3);
cursor: pointer; cursor: pointer;
z-index: 1028;
} }
h1, .h1 { h1, .h1 {
@ -362,7 +364,7 @@ footer {
bottom:1px; bottom:1px;
text-align: right; text-align: right;
padding-bottom: 1em; padding-bottom: 1em;
padding-right: 3em; padding-right: 3em;
} }
.birthday-today, .birthday-today,
@ -481,7 +483,7 @@ footer {
.pager_next, .pager_next,
.pager-prev, .pager-prev,
.pager-next, .pager-next,
.pager_n { .pager_n {
border: 1px solid #ccc; border: 1px solid #ccc;
background: transparent; background: transparent;
padding: 4px; padding: 4px;
@ -663,7 +665,7 @@ nav .acpopup {
} }
.profile-match-name { .profile-match-name {
width: 116px; width: 120px;
height: 1.5em; height: 1.5em;
overflow: hidden !important; overflow: hidden !important;
} }
@ -679,8 +681,8 @@ nav .acpopup {
.profile-match-wrapper { .profile-match-wrapper {
float: left; float: left;
width: 118px; width: 120px;
height: 118px; height: 150px;
padding: 10px; padding: 10px;
margin: 8px 10px 0 0; margin: 8px 10px 0 0;
border-top: 1px solid #eee; border-top: 1px solid #eee;
@ -735,7 +737,7 @@ nav .acpopup {
height: auto; overflow: auto; height: auto; overflow: auto;
border-bottom: 2px solid #cccccc; border-bottom: 2px solid #cccccc;
padding-bottom: 1em; padding-bottom: 1em;
margin-bottom: 1em; margin-bottom: 1em;
} }
.oauthapp img { .oauthapp img {
float: left; float: left;
@ -777,7 +779,7 @@ div.jGrowl div.info {
} }
#jGrowl.top-right { #jGrowl.top-right {
top: 4.5rem; top: 4.5rem;
right: 15px; right: .25rem;
} }
div.jGrowl div.jGrowl-notification { div.jGrowl div.jGrowl-notification {
@ -796,8 +798,6 @@ div.jGrowl div.jGrowl-notification {
} }
.contactname { .contactname {
font-weight: bold;
color: $font_colour;
display: block; display: block;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -872,10 +872,6 @@ div.jGrowl div.jGrowl-notification {
margin-left: 20px; margin-left: 20px;
} }
.reshared-content img {
width: 100%;
}
.shared_header img { .shared_header img {
border-radius: $radius; border-radius: $radius;
margin-right: 10px; margin-right: 10px;
@ -884,21 +880,19 @@ div.jGrowl div.jGrowl-notification {
.tag1 { .tag1 {
font-size : 0.9em !important; font-size : 0.9em !important;
} }
.tag2 { .tag2 {
font-size : 1.0em !important; font-size : 1.0em !important;
} }
.tag3 { .tag3 {
font-size : 1.1em !important; font-size : 1.1em !important;
} }
.tag4 { .tag4 {
font-size : 1.2em !important; font-size : 1.2em !important;
} }
.tag5 { .tag5 {
font-size : 1.3em !important; font-size : 1.3em !important;
} }
@ -918,12 +912,10 @@ div.jGrowl div.jGrowl-notification {
font-size : 1.6em !important; font-size : 1.6em !important;
} }
.tag9 { .tag9 {
font-size : 1.7em !important; font-size : 1.7em !important;
} }
.tag10 { .tag10 {
font-size : 1.8em !important; font-size : 1.8em !important;
} }
@ -1023,7 +1015,7 @@ th,td {
max-width: 19.4em; max-width: 19.4em;
overflow: hidden; overflow: hidden;
} }
/* mail */ /* mail */
img.mail-conv-sender-photo { img.mail-conv-sender-photo {
@ -1335,6 +1327,14 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
} }
.section-content-success-wrapper {
padding: 21px 10px;
color: #155724;
background-color: #d4edda;
border-bottom: 3px solid $comment_item_colour;
text-align: center;
}
.section-content-info-wrapper { .section-content-info-wrapper {
padding: 21px 10px; padding: 21px 10px;
color: #0c5460; color: #0c5460;
@ -1358,7 +1358,8 @@ img.mail-conv-sender-photo {
border-bottom: 3px solid $comment_item_colour; border-bottom: 3px solid $comment_item_colour;
text-align: center; text-align: center;
} }
.section-content-tools-wrapper .section-content-success-wrapper,
.section-content-wrapper .section-content-success-wrapper,
.section-content-tools-wrapper .section-content-info-wrapper, .section-content-tools-wrapper .section-content-info-wrapper,
.section-content-wrapper .section-content-info-wrapper, .section-content-wrapper .section-content-info-wrapper,
.section-content-tools-wrapper .section-content-warning-wrapper, .section-content-tools-wrapper .section-content-warning-wrapper,
@ -1524,10 +1525,8 @@ blockquote {
} }
main { main {
left: -$left_aside_widthpx;
left: 0px; width: calc( 100% + $left_aside_widthpx );
width: 100%;
} }
main.region_1-on { main.region_1-on {
@ -1569,12 +1568,12 @@ blockquote {
margin-top:-3px; margin-top:-3px;
} }
dl.bb-dl > dt { dl.bb-dl > dt {
/* overriding the default dl style from bootstrap, as bootstrap's /* overriding the default dl style from bootstrap, as bootstrap's
style of a bold unindented line followed by a plain unindented style of a bold unindented line followed by a plain unindented
line is already acheivable in bbcode without dl */ line is already acheivable in bbcode without dl */
font-weight: normal; font-weight: normal;
} }
dl.dl-terms-monospace > dt { font-family: monospace; } dl.dl-terms-monospace > dt { font-family: monospace; }
dl.dl-terms-bold > dt { font-weight: bold; } dl.dl-terms-bold > dt { font-weight: bold; }
dl.dl-terms-italic > dt { font-style: italic; } dl.dl-terms-italic > dt { font-style: italic; }
@ -1585,7 +1584,7 @@ dl.bb-dl:not(.dl-horizontal) > dd {
margin-left: 2em; margin-left: 2em;
} }
dl.bb-dl > dd > li { dl.bb-dl > dd > li {
/* adding some indent so bullet-list items will line up better with /* adding some indent so bullet-list items will line up better with
dl descriptions if someone wants to be impure and combine them */ dl descriptions if someone wants to be impure and combine them */
margin-left: 1em; margin-left: 1em;
} }
@ -1599,6 +1598,7 @@ dl.bb-dl > dd > li {
content:"\f069 "; content:"\f069 ";
} }
/* Modified original CSS to match input in Redbasic */
.jothidden .bootstrap-tagsinput { .jothidden .bootstrap-tagsinput {
border: 0px solid transparent; border: 0px solid transparent;
margin-bottom: 0px; margin-bottom: 0px;
@ -1614,6 +1614,10 @@ dl.bb-dl > dd > li {
font-size: 100%; font-size: 100%;
} }
.bootstrap-tagsinput input {
height: 2.5rem;
}
/* Abusing theme-green is less work than makeing a new new one */ /* Abusing theme-green is less work than makeing a new new one */
.theme-green .back-bar .selected-bar { .theme-green .back-bar .selected-bar {
background-color: #000000; background-color: #000000;
@ -1633,13 +1637,14 @@ dl.bb-dl > dd > li {
} }
.form-group.checkbox > div label { .form-group.checkbox > div label {
display: block; overflow: hidden; cursor: pointer; display: block; overflow: hidden; cursor: pointer;
border: 1px solid #ccc; border: 1px solid #ccc;
border-radius: 12px; border-radius: 12px;
margin:0px; margin:0px;
-webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
-o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
font-weight: normal;
} }
.form-group.checkbox:hover label { .form-group.checkbox:hover label {
@ -1803,25 +1808,26 @@ dl.bb-dl > dd > li {
} }
.cover-photo-review { .cover-photo-review {
margin-bottom: 10px; margin-bottom: 10px;
} }
.hover-fx-hide { .hover-fx-hide {
opacity: 0; opacity: 0;
} }
.hover-fx-show:hover .hover-fx-hide { .hover-fx-show:hover .hover-fx-hide {
opacity: 1; opacity: 1;
} }
.bg-primary { /* default highlighted text if not specified by schema: */
background-color: #505050 !important; span.default-highlight {
background-color: yellow;
} }
.nav-link.active { .bootstrap-tagsinput {
background-color: #505050 !important; width: 100%;
} }
#region_1 { #region_1 {
display: none; display: none !important;;
} }

View File

@ -11,44 +11,21 @@ $(document).ready(function() {
if($(window).width() < 992) { if($(window).width() < 992) {
$('main').css('width', $(window).width() + $('aside').outerWidth() ); $('main').css('width', $(window).width() + $('aside').outerWidth() );
} else { } else {
$('main').css('width', '100%' ); $('main').css('width', '100%');
} }
}); });
} }
$('#css3-calc').remove(); // Remove the test element $('#css3-calc').remove(); // Remove the test element
if($(window).width() >= 992) { stickyScroll('.aside_spacer_left', '.aside_spacer_top_left', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_1')).getPropertyValue('padding-top')), 0);
$('#left_aside_wrapper, #right_aside_wrapper').stick_in_parent({ stickyScroll('.aside_spacer_right', '.aside_spacer_top_right', '.content', parseFloat(window.getComputedStyle(document.querySelector('#region_3')).getPropertyValue('padding-top')), 20);
offset_top: parseInt($('aside').css('padding-top')),
parent: 'main',
spacer: '.aside_spacer'
});
}
$('#expand-aside').on('click', toggleAside); $('#expand-aside').on('click', function() {
$('section').on('click', function() {
if($('main').hasClass('region_1-on')){ if($('main').hasClass('region_1-on')){
toggleAside(); toggleAside('left');
} }
}); else {
toggleAside('right');
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();
} }
}); });
@ -84,7 +61,7 @@ $(document).ready(function() {
var doctitle = document.title; var doctitle = document.title;
function checkNotify() { function checkNotify() {
var notifyUpdateElem = document.getElementById('notify-update'); var notifyUpdateElem = document.getElementById('notify-update');
if(notifyUpdateElem !== null) { if(notifyUpdateElem !== null) {
if(notifyUpdateElem.innerHTML !== "") if(notifyUpdateElem.innerHTML !== "")
document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle; document.title = "(" + notifyUpdateElem.innerHTML + ") " + doctitle;
else else
@ -92,8 +69,103 @@ $(document).ready(function() {
} }
} }
setInterval(function () {checkNotify();}, 10 * 1000); setInterval(function () {checkNotify();}, 10 * 1000);
var touch_start = null;
var touch_max = window.innerWidth / 10;
window.addEventListener('touchstart', function(e) {
if (e.touches.length === 1){
//just one finger touched
touch_start = e.touches.item(0).clientX;
if (touch_start < touch_max) {
$('html, body').css('overflow-y', 'hidden');
}
}
else {
//a second finger hit the screen, abort the touch
touch_start = null;
}
});
window.addEventListener('touchend', function(e) {
$('html, body').css('overflow-y', '');
let touch_offset = 30; //at least 30px are a swipe
if (touch_start) {
//the only finger that hit the screen left it
let touch_end = e.changedTouches.item(0).clientX;
if (touch_end > (touch_start + touch_offset)) {
//a left -> right swipe
if (touch_start < touch_max) {
toggleAside('right');
}
}
if (touch_end < (touch_start - touch_offset)) {
//a right -> left swipe
//toggleAside('left');
}
}
});
$(document).on('hz:hqControlsClickAction', function(e) {
toggleAside('left');
});
}); });
function setStyle(element, cssProperty) {
for (var property in cssProperty){
element.style[property] = cssProperty[property];
}
}
function stickyScroll(sticky, stickyTop, container, topOffset, bottomOffset) {
var lastScrollTop = 0;
var sticky = document.querySelector(sticky);
var stickyHeight = sticky.getBoundingClientRect().height;
var stickyTop = document.querySelector(stickyTop);
var content = document.querySelector(container);
var diff = window.innerHeight - stickyHeight;
var h = 0;
var lasth = 0;
var st = window.pageYOffset || document.documentElement.scrollTop;
var resizeObserver = new ResizeObserver(function(entries) {
stickyHeight = sticky.getBoundingClientRect().height;
st = window.pageYOffset || document.documentElement.scrollTop;
diff = window.innerHeight - stickyHeight;
});
resizeObserver.observe(sticky);
resizeObserver.observe(content);
window.addEventListener('scroll', function() {
if(window.innerHeight > stickyHeight + topOffset) {
setStyle(stickyTop, { height: 0 + 'px' });
setStyle(sticky, { position: 'sticky', top: topOffset + 'px'});
}
else {
st = window.pageYOffset || document.documentElement.scrollTop; // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
if (st > lastScrollTop){
// downscroll code
setStyle(stickyTop, { height: lasth + 'px' });
setStyle(sticky, { position: 'sticky', top: Math.round(diff) - bottomOffset + 'px', bottom: '' });
} else {
// upscroll code
h = sticky.getBoundingClientRect().top - content.getBoundingClientRect().top - topOffset;
if(Math.round(stickyTop.getBoundingClientRect().height) === lasth) {
setStyle(stickyTop, { height: Math.round(h) + 'px' });
}
lasth = Math.round(h);
setStyle(sticky, { position: 'sticky', top: '', bottom: Math.round(diff - topOffset) + 'px' });
}
lastScrollTop = st <= 0 ? 0 : st; // For Mobile or negative scrolling
}
}, false);
}
function makeFullScreen(full) { function makeFullScreen(full) {
if(typeof full=='undefined' || full == true) { if(typeof full=='undefined' || full == true) {
$('main').addClass('fullscreen'); $('main').addClass('fullscreen');
@ -104,29 +176,21 @@ function makeFullScreen(full) {
$('main').removeClass('fullscreen'); $('main').removeClass('fullscreen');
$('header, nav, aside, #fullscreen-btn').show(); $('header, nav, aside, #fullscreen-btn').show();
$('#inline-btn').hide(); $('#inline-btn').hide();
$(document.body).trigger("sticky_kit:recalc");
} }
} }
function toggleAside() { function toggleAside(swipe) {
$('#expand-aside-icon').toggleClass('fa-arrow-circle-right').toggleClass('fa-arrow-circle-left');
if($('main').hasClass('region_1-on')){ if ($('main').hasClass('region_1-on') && swipe === 'left') {
$('html, body').css('overflow-x', ''); $('#expand-aside-icon').addClass('fa-arrow-circle-right').removeClass('fa-arrow-circle-left');
$('#region_1').css('display', 'none'); $('html, body').css({ 'position': '', left: '' });
$('main').removeClass('region_1-on') $('main').removeClass('region_1-on');
$('#overlay').remove(); $('#overlay').remove();
$('#right_aside_wrapper').trigger("sticky_kit:detach");
} }
else { if (!$('main').hasClass('region_1-on') && swipe === 'right') {
$('html, body').css('overflow-x', 'hidden'); $('#expand-aside-icon').removeClass('fa-arrow-circle-right').addClass('fa-arrow-circle-left');
$('#region_1').css('display', 'initial'); $('html, body').css({ 'position': 'sticky', 'left': '0px'});
$('#left_aside_wrapper').css('width', '274px'); $('main').addClass('region_1-on');
$('main').addClass('region_1-on') $('<div id="overlay"></div>').appendTo('body').one('click', function() { toggleAside('left'); });
$('<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

@ -120,10 +120,10 @@ if(file_exists('view/theme/ussrbasicright/css/style.css')) {
$x .= $schemecss; $x .= $schemecss;
} }
$aside_width = 288; $left_aside_width = 288;
$right_aside_width = 288;
// left aside and right aside are 285px + converse width $main_width = $left_aside_width + $right_aside_width + intval($converse_width);
$main_width = (($aside_width * 2) + intval($converse_width));
// prevent main_width smaller than 768px // prevent main_width smaller than 768px
$main_width = (($main_width < 768) ? 768 : $main_width); $main_width = (($main_width < 768) ? 768 : $main_width);
@ -150,7 +150,8 @@ if(file_exists('view/theme/ussrbasicright/css/style.css')) {
'$pmenu_top' => $pmenu_top, '$pmenu_top' => $pmenu_top,
'$pmenu_reply' => $pmenu_reply, '$pmenu_reply' => $pmenu_reply,
'$main_width' => $main_width, '$main_width' => $main_width,
'$aside_width' => $aside_width '$left_aside_width' => $left_aside_width,
'$right_aside_width' => $right_aside_width
); );
echo str_replace(array_keys($options), array_values($options), $x); echo str_replace(array_keys($options), array_values($options), $x);
@ -159,5 +160,5 @@ if(file_exists('view/theme/ussrbasicright/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'] != 'ussrbasicright') if(local_channel() && App::$channel && App::$channel['channel_theme'] != 'ussrbasicright')
// set_pconfig(local_channel(), 'ussrbasicright', 'schema', '---'); set_pconfig(local_channel(), 'ussrbasicright', 'schema', '---');

View File

@ -2,15 +2,13 @@
/** /**
* * Name: Ussrbasicright * * Name: Ussrbasicright
* * Description: 2 column, right navigation panel [BETA - some features could not work] * * Description: ussr.win 2 column left based on Hubzilla standard theme
* * Version: 4.4.2 * * Version: 2.1
* * MinVersion: 3.8 * * MinVersion: 5.9
* * MaxVersion: 6.0 * * MaxVersion: 7.0
* * Author: Fabrixxm * * Author: Fabrixxm
*/ */
function ussrbasicright_init(&$a) { function ussrbasicright_init(&$a) {
App::$theme_info['extends'] = 'redbasic';
} }

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

@ -3,10 +3,11 @@
if (! $nav_bg) if (! $nav_bg)
$nav_bg = "#f8f9fa"; $nav_bg = "#f8f9fa";
if (! $nav_icon_colour) if (! $nav_icon_colour)
$nav_icon_colour = "rgba(0, 0, 0, 0.5);"; $nav_icon_colour = "rgba(0, 0, 0, 0.5)";
if (! $nav_active_icon_colour) if (! $nav_active_icon_colour)
$nav_active_icon_colour = "rgba(0, 0, 0, 0.7)"; $nav_active_icon_colour = "rgba(0, 0, 0, 0.7)";
if (! $radius) if (! $radius)
$radius = "4px"; $radius = "4px";
if (! $banner_colour) if (! $banner_colour)
$banner_colour = "rgba(0, 0, 0, 0.7)"; $banner_colour = "rgba(0, 0, 0, 0.7)";

View File

@ -324,4 +324,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -333,4 +333,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -325,4 +325,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -319,4 +319,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}

View File

@ -322,9 +322,6 @@ a, a:visited, a:link, .fakelink, .fakelink:visited, .fakelink:link {
.text-dark { .text-dark {
color: #aaa !important; color: #aaa !important;
} }
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.group-selected, .fileas-selected, .categories-selected, .search-selected, a.active { .group-selected, .fileas-selected, .categories-selected, .search-selected, a.active {
color: #fff !important; color: #fff !important;
@ -480,3 +477,26 @@ pre {
.widget-nav-pills-checkbox:hover + a { .widget-nav-pills-checkbox:hover + a {
background-color: #222; background-color: #222;
} }
/* category badge fix: */
a.text-dark:focus, a.text-dark:hover {
color: #ddd !important;
}
.badge-warning {
/* background-color: #ffc927; */
}
.badge-warning a.text-dark {
color: #333 !important;
}
.badge-warning a.text-dark:focus, .badge-warning a.text-dark:hover {
color: red !important;
text-decoration: none;
}
/* fix color for highlithed text */
span.default-highlight {
color: #333;
border-radius: 4px;
}

View File

@ -345,4 +345,13 @@ blockquote {
.table { .table {
color: #dddccc; color: #dddccc;
} }
#notifications, #nav-notify-sub, #nav-network-sub, #nav-all_events-sub {
border: 1px solid #383c4a !important;
border-bottom-color: #383c4a !important;
}
#upgrade_info_aside {
border-color: #383c4a !important;
}