Skip to content

Switch between list and card view function

Moved Let's Build It
107 4 56.6k 1
  • I will probably have small modifications to make to adapt to my CSS and my Material View function but I will test this on my test environment very very quickly.

    Thanks Mark. In any case, I think this idea is great.

    wrote on last edited by
    #13

    @DownPW said in Switch between list and card view function:

    test this on my test environment very very quickly

    Let me know how you get on 🙂

  • wrote on last edited by
    #14

    Found a small bug already which is CSS related

    image.png

    I’ll fix this tomorrow and provide an update 🙂

  • wrote on last edited by DownPW
    #15

    So I tested and here are my remarks:

    • Pay attention to the name of the JSS file in the Javascript code. I put underscores and the CSS was not taken into account.

    • The topic selection check box is difficult to check: most of the time I enter the topic rather than checking the box :

    check.gif

    • I still have the problem displaying tags :

    aaaaa682-c849-46fe-9156-9841af9a6c3b-image.png

    • For my part, in French, the boxes are a little tight here, I’ll see what I can do :

    981fc293-ef24-4f5d-9585-e3d357647889-image.png

    • If you have a pinned topic with the pinned label, the line is visible behind the label

    35bc08d5-990a-4628-9466-b732ae49ecd4-image.png

    –> For this, maybe add a background color to this loke this ? :

    [component="topic/pinned"].border-gray-300 {
        background: var(--bs-body-navbar) !important;
    }
    
    • Why not take the same width as the toolbar here ? :

    dc851c4c-ab54-47bd-ae50-0cc3f5383b3b-image.png

    Many thanks again Mark

  • So I tested and here are my remarks:

    • Pay attention to the name of the JSS file in the Javascript code. I put underscores and the CSS was not taken into account.

    • The topic selection check box is difficult to check: most of the time I enter the topic rather than checking the box :

    check.gif

    • I still have the problem displaying tags :

    aaaaa682-c849-46fe-9156-9841af9a6c3b-image.png

    • For my part, in French, the boxes are a little tight here, I’ll see what I can do :

    981fc293-ef24-4f5d-9585-e3d357647889-image.png

    • If you have a pinned topic with the pinned label, the line is visible behind the label

    35bc08d5-990a-4628-9466-b732ae49ecd4-image.png

    –> For this, maybe add a background color to this loke this ? :

    [component="topic/pinned"].border-gray-300 {
        background: var(--bs-body-navbar) !important;
    }
    
    • Why not take the same width as the toolbar here ? :

    dc851c4c-ab54-47bd-ae50-0cc3f5383b3b-image.png

    Many thanks again Mark

    wrote on last edited by
    #16

    @DownPW All good comments, thanks. Don’t forget that your CSS is also very customized over the stock that comes with NodeBB, but I’m quite surprised by this

    @DownPW said in Switch between list and card view function:

    The topic selection check box is difficult to check: most of the time I enter the topic rather than checking the box

    Perhaps I missed some final modifications here, but I cannot reproduce that - will need to check

    @DownPW said in Switch between list and card view function:

    I still have the problem displaying tags :

    Again, surprised by that as it was addressed in the final code. Will need to check

    @DownPW said in Switch between list and card view function:

    If you have a pinned topic with the pinned label, the line is visible behind the label

    Yes, I’m aware of that one - the CSS you propose would work, but not for those without custom CSS

    @DownPW said in Switch between list and card view function:

    Why not take the same width as the toolbar here ?

    Because you cannot fit 32% into 100% even with simple math 🙂 It needs either padding or margin - both of which will be negative, but I’ve done it here

    fb23ef77-84e2-4fc0-af92-5011eaf10e06-image.png

    I’m going to release a vanilla harmony CSS file (working on it now) shortly. This will be the starting point that will fit most users, but obvously, the more customized CSS you have, the more work it needs.

  • wrote on last edited by DownPW
    #17

    no problem,

    I noticed that as soon as I make changes to the CSS file, I have to empty the cache and close the browser so that the changes are taken into account even in incognito mode.

  • no problem,

    I noticed that as soon as I make changes to the CSS file, I have to empty the cache and close the browser so that the changes are taken into account even in incognito mode.

    wrote on last edited by
    #18

    @DownPW Yes, I have a fix for that also going forward. Will supply that once I’m done with testing.

  • @DownPW Yes, I have a fix for that also going forward. Will supply that once I’m done with testing.

    wrote on last edited by DownPW
    #19

    @phenomlab said in Switch between list and card view function:

    @DownPW Yes, I have a fix for that also going forward. Will supply that once I’m done with testing.

    No worries my friend :), I’m just making the comments to make this code concrete because I find it excellent.

    Now that I have seen that I have to close the browser each time I make a change, this seems OK to me except for the last 2 points mentioned which you are currently working on.

    @phenomlab said in Switch between list and card view function:

    Because you cannot fit 32% into 100% even with simple math It needs either padding or margin - both of which will be negative, but I’ve done it here

  • @phenomlab said in Switch between list and card view function:

    @DownPW Yes, I have a fix for that also going forward. Will supply that once I’m done with testing.

    No worries my friend :), I’m just making the comments to make this code concrete because I find it excellent.

    Now that I have seen that I have to close the browser each time I make a change, this seems OK to me except for the last 2 points mentioned which you are currently working on.

    @phenomlab said in Switch between list and card view function:

    Because you cannot fit 32% into 100% even with simple math It needs either padding or margin - both of which will be negative, but I’ve done it here

    wrote on last edited by
    #20

    @DownPW thanks. I have an almost stable vanilla harmony version I’ll be posting this weekend.

  • wrote on last edited by phenomlab
    #21

    Here’s a stable version based on stock Harmony

    image.png

    Note that there are a lot of changes here, so if you have previously deployed this code, you need to update it. Also note that the CSS is based on stock harmony - if you have any customised theme, you’ll need to add this yourself (obviously, I cannot possibly factor in custom styles).

    https://github.com/phenomlab/harmony-card-view

  • @DownPW All good comments, thanks. Don’t forget that your CSS is also very customized over the stock that comes with NodeBB, but I’m quite surprised by this

    @DownPW said in Switch between list and card view function:

    The topic selection check box is difficult to check: most of the time I enter the topic rather than checking the box

    Perhaps I missed some final modifications here, but I cannot reproduce that - will need to check

    @DownPW said in Switch between list and card view function:

    I still have the problem displaying tags :

    Again, surprised by that as it was addressed in the final code. Will need to check

    @DownPW said in Switch between list and card view function:

    If you have a pinned topic with the pinned label, the line is visible behind the label

    Yes, I’m aware of that one - the CSS you propose would work, but not for those without custom CSS

    @DownPW said in Switch between list and card view function:

    Why not take the same width as the toolbar here ?

    Because you cannot fit 32% into 100% even with simple math 🙂 It needs either padding or margin - both of which will be negative, but I’ve done it here

    fb23ef77-84e2-4fc0-af92-5011eaf10e06-image.png

    I’m going to release a vanilla harmony CSS file (working on it now) shortly. This will be the starting point that will fit most users, but obvously, the more customized CSS you have, the more work it needs.

    wrote on last edited by
    #22

    @phenomlab said in Switch between list and card view function:

    If you have a pinned topic with the pinned label, the line is visible behind the label

    I decided to leave this as is. It’s transparent in the stock harmony CSS, so if you want to change it to suit your needs, then feel free. The categories and tags have been moved to the right anyway in this modified version of code, therefore, the “bug” (it’s not really, but…) is no longer present.

  • wrote on last edited by DownPW
    #23

    Great

    I put the code on prod.
    I see this bug on a few topics but impossible to know why

    image.png

    ab51fee1-a0d9-4b5a-a761-4c7dae743a31-image.png

    abe1b94e-670c-42bf-ac9d-03664253a3e5-image.png

  • Great

    I put the code on prod.
    I see this bug on a few topics but impossible to know why

    image.png

    ab51fee1-a0d9-4b5a-a761-4c7dae743a31-image.png

    abe1b94e-670c-42bf-ac9d-03664253a3e5-image.png

    wrote on last edited by
    #24

    @DownPW does it resolve itself if you click the home button again? I’ve seen this in dev but can’t reproduce it in prod.

  • @DownPW does it resolve itself if you click the home button again? I’ve seen this in dev but can’t reproduce it in prod.

    wrote on last edited by DownPW
    #25

    @phenomlab said in Switch between list and card view function:

    @DownPW does it resolve itself if you click the home button again? I’ve seen this in dev but can’t reproduce it in prod.

    nope, the bug persist.

    it seem problem with .category-card .lastpost a img but what’s strange is that it doesn’t do it for all topics

  • @phenomlab said in Switch between list and card view function:

    @DownPW does it resolve itself if you click the home button again? I’ve seen this in dev but can’t reproduce it in prod.

    nope, the bug persist.

    it seem problem with .category-card .lastpost a img but what’s strange is that it doesn’t do it for all topics

    wrote on last edited by
    #26

    @DownPW yes, it seems to be an issue with the ajax callback but not sure where currently it originates from.

    Does it happen on page load also?

  • @DownPW yes, it seems to be an issue with the ajax callback but not sure where currently it originates from.

    Does it happen on page load also?

    wrote on last edited by DownPW
    #27

    @phenomlab said in Switch between list and card view function:

    @DownPW yes, it seems to be an issue with the ajax callback but not sure where currently it originates from.

    Does it happen on page load also?

    can you be more specific?

    If I refresh the page while keeping Card View activated it’s the same.
    Same if I deactivate/reactivate Card View

    Here, we see, we have not .category-card .lastpost a img add to class

    image.png

  • @phenomlab said in Switch between list and card view function:

    @DownPW yes, it seems to be an issue with the ajax callback but not sure where currently it originates from.

    Does it happen on page load also?

    can you be more specific?

    If I refresh the page while keeping Card View activated it’s the same.
    Same if I deactivate/reactivate Card View

    Here, we see, we have not .category-card .lastpost a img add to class

    image.png

    wrote on last edited by
    #28

    @DownPW the class you’re referring to in the screenshot isn’t supposed to be applied to that specific element, as there is no img to be applied against.

    What I meant about the ajax callback is that not all of the styles seem to be applied. It’s almost as though they are being added to the DOM when they aren’t loaded yet.

  • wrote on last edited by DownPW
    #29

    Arf Ok sorry.
    For information, I have the same things on my test server (actually, it’s a clone of prod) if you want to see in details or play

  • Arf Ok sorry.
    For information, I have the same things on my test server (actually, it’s a clone of prod) if you want to see in details or play

    wrote on last edited by phenomlab
    #30

    @DownPW thanks. The really odd thing here is that I can’t reproduce this issue at all in prod - where I developed it originally in fact.

    I think I’m missing something somewhere, but unsure as to where it is currently.

  • wrote on last edited by
    #31

    no problem dude. I’m not sure I’ll be much help on this one.

  • no problem dude. I’m not sure I’ll be much help on this one.

    wrote on last edited by
    #32

    @DownPW no problems. Your review and findings are a great help already.


Related Topics
  • Ch..ch..ch..ch..changes!

    Announcements themes layout
    16
    2
    15 Votes
    16 Posts
    5k Views
    JAC
    @phenomlab of course, to be recognised is fantastic. @phenomlab said in Ch..ch..ch..ch..changes!: Sadly, no. Web crawlers and scrapers are often JS based and read text only, so styles don’t have any bearing. I’ve read mixed things about this, but no that does make sense, it was something I read a many years back when using Wordpress.
  • Extended functions for Q&A NodeBB plugin

    Let's Build It q&a panels cards
    3
    4
    5 Votes
    3 Posts
    3k Views
    DownPW
    Very good like always
  • 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.
  • hover link effect

    Solved Customisation css link hover
    18
    1
    6 Votes
    18 Posts
    7k Views
    phenomlab
    @DownPW Looking at the underlying code, class start is being added on hover by jQuery in this function document.querySelectorAll(".button-gradient, .button-transparent").forEach((button) => { const style = getComputedStyle(button); const lines = document.createElement("div"); lines.classList.add("lines"); const groupTop = document.createElement("div"); const groupBottom = document.createElement("div"); const svg = createSVG( button.offsetWidth, button.offsetHeight, parseInt(style.borderRadius, 10) ); groupTop.appendChild(svg); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); lines.appendChild(groupTop); lines.appendChild(groupBottom); button.appendChild(lines); button.addEventListener("pointerenter", () => { button.classList.add("start"); }); svg.addEventListener("animationend", () => { button.classList.remove("start"); }); }); }) The CSS for start is below .button-gradient.start .lines svg, .button-transparent.start .lines svg { animation: stroke 0.3s linear; } And this is the corresponding keyframe @keyframes stroke { 30%, 55% { opacity: 1; } 100% { stroke-dashoffset: 5; opacity: 0; } } It’s using both CSS and SVG, so might not be a simple affair to replicate without the SVG files.
  • Bottom footer navbar button extend

    Solved Customisation css javascript customisation footer navbar
    32
    9 Votes
    32 Posts
    15k Views
    phenomlab
    @DownPW said in Bottom footer navbar button extend: Oh my god, it’s beautiful mark I liked this design so much, I’ve implemented it here. I intend to do a lot more with the footer in due course, so hiding it makes a lot of sense. Thanks @DownPW for the idea and initial concept
  • 4 Votes
    8 Posts
    5k Views
    phenomlab
    @DownPW done
  • [NODEBB] Welcome Message

    Solved Customisation css html nodebb
    20
    2
    13 Votes
    20 Posts
    9k Views
    phenomlab
    @DownPW the ‘js’ code for the banner takes the time from the client, so what it displays really depends on the regional settings for the operating system. I’ve not seen this issue myself but would like to see some examples of screenshots if possible.
  • Reading Meter Progress bar

    Locked Solved Customisation css
    15
    1
    9 Votes
    15 Posts
    6k Views
    phenomlab
    For anyone else following this thread, please see https://sudonix.com/topic/467/issues-with-progress-bar-on-v3