Skip to content

v3 & Harmony diary / thoughts / code snippets

Announcements
55 4 30.4k 1
  • @phenomlab said in v3 / Harmony diary:

    Today’s playground 🙂

    c67e0b6c-b534-4306-8e58-dbe77e30c6a0-image.png

    Here’s a video… still needs a bit more work, but… 🙂 Notice the newer scroll and progress bar I was talking about earlier…

    https://sudonix.com/assets/uploads/files/footer-added.webm

    Hello Mark,

    I just tested the functioning of the scroll bar and I saw this bug:

    https://i.imgur.com/VQw5zw5.mp4

    It should be moved to the left so as not to encroach on the collapse button of the custom footer navbar.

    Then, when we play with the collapse button of the custom footer navbar we should:

    • When the custom footer navbar is deactivated: it sticks to the bottom right while not encroaching on the right sidebar. All this taking into account the collapse of the right sidebar (not obvious, I don’t know if I’m clear 🙂 )

    • When the custom footer navbar is activated: it moves just to the left of the floatright block or can be above the floatright block?

    The solution may be less difficult to code would be to make a vertical scrollbar inside the right sidebar like in topics. There might be less to manage

    Keep the good work my friend 😉

    wrote on last edited by
    #21
  • @phenomlab said in v3 / Harmony diary:

    Today’s playground 🙂

    c67e0b6c-b534-4306-8e58-dbe77e30c6a0-image.png

    Here’s a video… still needs a bit more work, but… 🙂 Notice the newer scroll and progress bar I was talking about earlier…

    https://sudonix.com/assets/uploads/files/footer-added.webm

    Hello Mark,

    I just tested the functioning of the scroll bar and I saw this bug:

    https://i.imgur.com/VQw5zw5.mp4

    It should be moved to the left so as not to encroach on the collapse button of the custom footer navbar.

    Then, when we play with the collapse button of the custom footer navbar we should:

    • When the custom footer navbar is deactivated: it sticks to the bottom right while not encroaching on the right sidebar. All this taking into account the collapse of the right sidebar (not obvious, I don’t know if I’m clear 🙂 )

    • When the custom footer navbar is activated: it moves just to the left of the floatright block or can be above the floatright block?

    The solution may be less difficult to code would be to make a vertical scrollbar inside the right sidebar like in topics. There might be less to manage

    Keep the good work my friend 😉

    wrote on last edited by
    #22

    @DownPW fixed in Dev. Have a look. Many improvements and I think you’ll like it. Try it on both desktop and mobile.

  • @phenomlab said in v3 / Harmony diary:

    Today’s playground 🙂

    c67e0b6c-b534-4306-8e58-dbe77e30c6a0-image.png

    Here’s a video… still needs a bit more work, but… 🙂 Notice the newer scroll and progress bar I was talking about earlier…

    https://sudonix.com/assets/uploads/files/footer-added.webm

    Hello Mark,

    I just tested the functioning of the scroll bar and I saw this bug:

    https://i.imgur.com/VQw5zw5.mp4

    It should be moved to the left so as not to encroach on the collapse button of the custom footer navbar.

    Then, when we play with the collapse button of the custom footer navbar we should:

    • When the custom footer navbar is deactivated: it sticks to the bottom right while not encroaching on the right sidebar. All this taking into account the collapse of the right sidebar (not obvious, I don’t know if I’m clear 🙂 )

    • When the custom footer navbar is activated: it moves just to the left of the floatright block or can be above the floatright block?

    The solution may be less difficult to code would be to make a vertical scrollbar inside the right sidebar like in topics. There might be less to manage

    Keep the good work my friend 😉

    wrote on last edited by
    #23

    @DownPW said in v3 / Harmony diary:

    The solution may be less difficult to code would be to make a vertical scrollbar inside the right sidebar like in topics. There might be less to manage

    Nope. The newest version of Harmony appears to have the same pagination as Flarum and Discourse, so it’s been moved into the content area 😁

  • @DownPW said in v3 / Harmony diary:

    The solution may be less difficult to code would be to make a vertical scrollbar inside the right sidebar like in topics. There might be less to manage

    Nope. The newest version of Harmony appears to have the same pagination as Flarum and Discourse, so it’s been moved into the content area 😁

    wrote on last edited by
    #24

    @phenomlab

    yessss fixed. Love it 😁 😍

  • @phenomlab

    yessss fixed. Love it 😁 😍

    wrote on last edited by DownPW
    #25

    @phenomlab

    No javascript ?

    I wanted to inspect the code but I can’t find any JS

  • @phenomlab

    No javascript ?

    I wanted to inspect the code but I can’t find any JS

    wrote on last edited by
    #26

    @DownPW it’s definitely there. Won’t work without it 😉

  • @DownPW it’s definitely there. Won’t work without it 😉

    wrote on last edited by
    #27

    @phenomlab

    I guess, I don’t find it in inspector lol .I will search 🙂

  • @phenomlab

    I guess, I don’t find it in inspector lol .I will search 🙂

    wrote on last edited by DownPW
    #28

    @phenomlab

    Can I test it on my dev env ?

    EDIT: I test it. If you don’t want tell me Mark

    If I have problem, can I ask you @phenomlab ?

  • @phenomlab

    Can I test it on my dev env ?

    EDIT: I test it. If you don’t want tell me Mark

    If I have problem, can I ask you @phenomlab ?

    wrote on last edited by
    #29

    @DownPW no problems.

  • wrote on last edited by DownPW
    #30

    @phenomlab said in v3 / Harmony diary:

    @DownPW no problems.

    Seems I miss something 😑 @phenomlab but good start 😉

    [- https://i.imgur.com/cN0YeN0.mp4 -]

    EDIT: Maybe find

    EDIT 2: @phenomlab

    Find --> I have forget toAbove and toBottom css directives
    It’s better now, just seems toBottom doesn’t work :

    b64bdc12-435e-468d-9818-c966b4cbc148-image.png

    .toBottom {
      bottom: 0px !important;
      right: 0px!important;
    }
    
    .toAbove {
      bottom: -5px !important;
      right: 400px !important;
    }
    
  • @phenomlab said in v3 / Harmony diary:

    @DownPW no problems.

    Seems I miss something 😑 @phenomlab but good start 😉

    [- https://i.imgur.com/cN0YeN0.mp4 -]

    EDIT: Maybe find

    EDIT 2: @phenomlab

    Find --> I have forget toAbove and toBottom css directives
    It’s better now, just seems toBottom doesn’t work :

    b64bdc12-435e-468d-9818-c966b4cbc148-image.png

    .toBottom {
      bottom: 0px !important;
      right: 0px!important;
    }
    
    .toAbove {
      bottom: -5px !important;
      right: 400px !important;
    }
    
    wrote on last edited by
    #31

    @DownPW likely you are missing z-index on that class. As you are using position: absolute the index is needed to bring that specific element forward. By default, it’ll sit behind the progress bar meaning it cannot be clicked, but can be seen.

  • @DownPW likely you are missing z-index on that class. As you are using position: absolute the index is needed to bring that specific element forward. By default, it’ll sit behind the progress bar meaning it cannot be clicked, but can be seen.

    wrote on last edited by
    #32

    @phenomlab

    Thanks for your reply my friend 😉

    I will test tomorrow and again, it’s a very great job, I like it a lot.

  • @phenomlab

    Thanks for your reply my friend 😉

    I will test tomorrow and again, it’s a very great job, I like it a lot.

    wrote on last edited by phenomlab
    #33

    @DownPW no problems. Let me know if you have issues and I can take a look. Can’t release the code formally yet as it’s still beta (and does have very minor bugs).

  • @DownPW no problems. Let me know if you have issues and I can take a look. Can’t release the code formally yet as it’s still beta (and does have very minor bugs).

    wrote on last edited by phenomlab
    #34

    Not sure why, but for a while I’ve been looking at the size of the CSS file that runs the dev site, and I couldn’t understand why it was almost twice the size of what it should be in terms of overall lines.

    This eventually got the better of me and I landed up going through the file and removing what appears to be a large amount of duplicated CSS. I primarily work offline using VSCode (my go-to editor), but periodically “fix” things on the fly. The problem with this is that if you make changes online then copy these from the CSS editor in the ACP back to VSCode, they seem to be copied twice - in other words, appended to the existing file despite all text being selected, which should in fact overwrite, but it doesn’t 😱

    Just something for everyone else to watch out for. I spent a fair amount of time this afternoon purging duplicate classes, and the end result is a much leaner file.

  • Not sure why, but for a while I’ve been looking at the size of the CSS file that runs the dev site, and I couldn’t understand why it was almost twice the size of what it should be in terms of overall lines.

    This eventually got the better of me and I landed up going through the file and removing what appears to be a large amount of duplicated CSS. I primarily work offline using VSCode (my go-to editor), but periodically “fix” things on the fly. The problem with this is that if you make changes online then copy these from the CSS editor in the ACP back to VSCode, they seem to be copied twice - in other words, appended to the existing file despite all text being selected, which should in fact overwrite, but it doesn’t 😱

    Just something for everyone else to watch out for. I spent a fair amount of time this afternoon purging duplicate classes, and the end result is a much leaner file.

    wrote on last edited by phenomlab
    #35

    Thanks to @cagatay for finding a bug with the CSS in relation to tags in DEV. This has been fixed. I also found another bug whilst addressing this one in the sense that the progress bar on mobile (and desktop, but limited intrusion) shows over the tag div when the composer is active.

    Changed the scrollbar function so that it does not fire if the composer is visible. Here’s the block of code that detects if it’s active or not

                if ($(window).scrollTop() > 0 && (!$('[component="composer"]').is(":visible"))) {
                    bar.addClass('show');
                } else {
                    bar.removeClass('show');
                }
    

    Above, we now have 2 conditions. The first is to fire only if the top marker is higher than 0 - for example, hide if we are at the top of the screen. The second condition is that we also only fire if the composer isn’t active - detected by is(":visible")

    Keep 'em coming in terms of identified bugs - reporting them is much appreciated.

  • Thanks to @cagatay for finding a bug with the CSS in relation to tags in DEV. This has been fixed. I also found another bug whilst addressing this one in the sense that the progress bar on mobile (and desktop, but limited intrusion) shows over the tag div when the composer is active.

    Changed the scrollbar function so that it does not fire if the composer is visible. Here’s the block of code that detects if it’s active or not

                if ($(window).scrollTop() > 0 && (!$('[component="composer"]').is(":visible"))) {
                    bar.addClass('show');
                } else {
                    bar.removeClass('show');
                }
    

    Above, we now have 2 conditions. The first is to fire only if the top marker is higher than 0 - for example, hide if we are at the top of the screen. The second condition is that we also only fire if the composer isn’t active - detected by is(":visible")

    Keep 'em coming in terms of identified bugs - reporting them is much appreciated.

    wrote on last edited by
    #36

    Hello @phenomlab

    I keep working on my CSS
    On v2, I displayed user groups in topics like this :

    923b452b-29cc-4ca1-82ac-a4348d3f5312-image.png

    but I can’t seem to get any result. I can’t target the right element

    Ideas ?

    Many thanks

  • Hello @phenomlab

    I keep working on my CSS
    On v2, I displayed user groups in topics like this :

    923b452b-29cc-4ca1-82ac-a4348d3f5312-image.png

    but I can’t seem to get any result. I can’t target the right element

    Ideas ?

    Many thanks

    wrote on last edited by
    #37

    @DownPW hmm. Haven’t tried this myself (yet) but will have a look later this afternoon.

  • Hello @phenomlab

    I keep working on my CSS
    On v2, I displayed user groups in topics like this :

    923b452b-29cc-4ca1-82ac-a4348d3f5312-image.png

    but I can’t seem to get any result. I can’t target the right element

    Ideas ?

    Many thanks

    wrote on last edited by
    #38

    @DownPW This should work under v3

    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        border-radius: 999px !important;
        margin-left: -10px;
        width: 22px;
        max-width: 22px;
    }
    
  • @DownPW This should work under v3

    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        border-radius: 999px !important;
        margin-left: -10px;
        width: 22px;
        max-width: 22px;
    }
    
    wrote on last edited by DownPW
    #39

    Hi @phenomlab

    Thanks my friend. 👍
    I have this result with code you provided :

    46aa98c7-962e-4301-b90a-6b8add5b1665-image.png

    It’s better but not perfect.
    But it allowed me to target the right element

    –> Here is a code improvement for those who are interested :

    /* Desktop */
    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        border-radius: 999px !important;
        margin-right: -10px;
        padding-left: 6px;
        padding-top: 5px;
        width: 20px;
        max-width: 20px !important; 
    }
    
    .d-flex.gap-1.hidden-xs.align-items-center {
        margin-left: 15px;
    } 
    
    i.fa.fa-edit.text-muted.pointer.edit-icon {
        margin-left: 8px;
    }
    
    /* Smartphone */
    @media (max-width: 767px) {
    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        padding-left: 4px;
    }
    }
    
    

    Better result :

    5045c227-f295-49b5-b5e4-fa4367878520-image.png

    cya 🙂

  • Hi @phenomlab

    Thanks my friend. 👍
    I have this result with code you provided :

    46aa98c7-962e-4301-b90a-6b8add5b1665-image.png

    It’s better but not perfect.
    But it allowed me to target the right element

    –> Here is a code improvement for those who are interested :

    /* Desktop */
    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        border-radius: 999px !important;
        margin-right: -10px;
        padding-left: 6px;
        padding-top: 5px;
        width: 20px;
        max-width: 20px !important; 
    }
    
    .d-flex.gap-1.hidden-xs.align-items-center {
        margin-left: 15px;
    } 
    
    i.fa.fa-edit.text-muted.pointer.edit-icon {
        margin-left: 8px;
    }
    
    /* Smartphone */
    @media (max-width: 767px) {
    a.badge.rounded-1.text-uppercase.text-truncate.text-decoration-none {
        padding-left: 4px;
    }
    }
    
    

    Better result :

    5045c227-f295-49b5-b5e4-fa4367878520-image.png

    cya 🙂

    wrote on last edited by
    #40

    @DownPW yeah, the CSS I provided was based on my forum, so a little tweaking is necessary. Looks great !


Related Topics
  • CSS code customization for the link preview plugin

    Solved Customisation css nodebb
    6
    2
    3 Votes
    6 Posts
    3k Views
    phenomlab
    @kadir-ay-0 marking as resolved based on https://community.nodebb.org/topic/17109/manual-build-a-night-mode-for-harmony/5 Please do not raise requests in two places - here and the NodeBB forums. All this does is create unnecessary load for both parties.
  • Page control arrows for PWA

    Solved Customisation nodebb
    27
    25 Votes
    27 Posts
    15k Views
    phenomlab
    @crazycells it is, yes - I think I’ll leave it as there is no specific PWA CSS classes I know of. Well, you could use something like the below, but this means multiple CSS files for different operating systems. /** * Determine the mobile operating system. * This function returns one of 'iOS', 'Android', 'Windows Phone', or 'unknown'. * * @returns {String} */ function getMobileOperatingSystem() { var userAgent = navigator.userAgent || navigator.vendor || window.opera; // Windows Phone must come first because its UA also contains "Android" if (/windows phone/i.test(userAgent)) { return "Windows Phone"; } if (/android/i.test(userAgent)) { return "Android"; } if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) { return "iOS"; } return "unknown"; // return “Android” - one should either handle the unknown or fallback to a specific platform, let’s say Android } Once you’re in that rabbit hole, it’s impossible to get out of it.
  • navigation menu panel on mobile

    Solved Customisation nodebb css
    8
    1
    7 Votes
    8 Posts
    3k Views
    phenomlab
    @crazycells hmm. That’s odd. I haven’t made any changes from recollection but I could be wrong. I’ll need to check. EDIT - very strange. I honestly don’t recall adding the below CSS block to alter the bottom bar, but you’re right… .bottombar-nav { padding: 0px !important; } I’ve removed this so it reflects stock Harmony.
  • New Code Repository

    Announcements code gist github
    2
    3 Votes
    2 Posts
    1k Views
    crazycells
    @phenomlab very nice and useful idea [image: Bravo Xd GIF]
  • Following the API docs but its not clear ...

    Solved Customisation api nodebb
    8
    2 Votes
    8 Posts
    3k Views
    phenomlab
    @Panda you’d be surprised. If you consider that you’d need to use the API to be able to populate a WordPress widget for example (which in turn would of course be PHP), taking this route is still immensely popular.
  • NodeBB v3

    Announcements nodebb v3 nodebb
    2
    3 Votes
    2 Posts
    1k Views
    phenomlab
    @cagatay JS will work fine - no changes there, and there are no plans to drop support for jQuery. More of an issue is the CSS - for which there are quite a few breaking changes. Keep an eye on sudonix.dev (my development site) where you can see progress in relation to how I am tackling the compatibility issues.
  • Link vs Refresh

    Solved Customisation nodebb blog customization
    20
    2
    8 Votes
    20 Posts
    7k Views
    phenomlab
    @pobojmoks Do you see any errors being reported in the console ? At first guess (without seeing the actual code or the site itself), I’d say that this is AJAX callback related
  • is "night mode" shifting the forum several pixels up?

    Solved Configure nodebb
    8
    4 Votes
    8 Posts
    3k Views
    phenomlab
    @crazycells hmm. Good point. I actually use my own version of the dark mode plugin, so not entirely sure. However, I think the CSS is probably the same. I’m not at my PC currently but can check and advise later.