Skip to content

Switch between list and card view function

Moved Let's Build It
107 4 56.6k 1
  • @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.

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

    wrote on last edited by phenomlab
    #33

    @DownPW I found the bug. It’s CloudFlare 😞

    91f23522-0434-4cae-9e33-d531104ec0be-image.png

    Setting the cache to bypass resolves the issue. This explains why I cannot replicate it in PROD (for me) as I only use CF for DNS resolution.

    I have modified the CSS file slightly also, so you’ll need to pick up the latest code.

    https://github.com/phenomlab/harmony-card-view/blob/main/card.css

    Not entirely sure why CF seems to think this file never changes - it’s different on each page load and suffixed with a random string! The setting in CF should also respect that - but doesn’t. So much for that

    a993abeb-2722-414a-81ee-8260994c4e87-image.png

  • wrote on last edited by
    #34

    Ok @phenomlab Thanks to you for find the solution for this problem

    so what is the good parameters in CF for this script ?
    Maybe include this on your github ?

  • Ok @phenomlab Thanks to you for find the solution for this problem

    so what is the good parameters in CF for this script ?
    Maybe include this on your github ?

    wrote on last edited by
    #35

    @DownPW yes, absolutely, although I’m not entirely sure why CF behaves in this manner as in most cases, a present query string that changes frequently (on each page load) should not present itself as an issue.

    Still checking.

  • wrote on last edited by
    #36

    It’s a shame to do without the CF cache in my opinion.

    Do you just have to activate development mode in CF?

  • It’s a shame to do without the CF cache in my opinion.

    Do you just have to activate development mode in CF?

    wrote on last edited by
    #37

    @DownPW yes, in my testing, just enable development mode and then reload the site a few times and you’ll notice it works as intended.

  • wrote on last edited by DownPW
    #38

    hmm I think they was other thing.

    I have not update the css file, I have just :

    • activated development mode in CF,
    • purge everything cache in CF,
    • and test in new incognito windows on firefox

    and I have the bug.


    Edit : Same with the CSS updated

  • hmm I think they was other thing.

    I have not update the css file, I have just :

    • activated development mode in CF,
    • purge everything cache in CF,
    • and test in new incognito windows on firefox

    and I have the bug.


    Edit : Same with the CSS updated

    wrote on last edited by
    #39

    @DownPW is this in your dev environment? I checked that earlier and the bug wasn’t present.

  • wrote on last edited by DownPW
    #40

    yes the bug is in my dev environment

  • yes the bug is in my dev environment

    wrote on last edited by
    #41

    @DownPW yes, correct.

  • wrote on last edited by DownPW
    #42

    yes the bug is in my dev environment. tested now

  • yes the bug is in my dev environment. tested now

    wrote on last edited by
    #43

    @DownPW it wasn’t there when I tested incognito.

  • wrote on last edited by DownPW
    #44

    I do all my tets in incognito too
    I will test with another account

    You must scroll down a little to see

  • I do all my tets in incognito too
    I will test with another account

    You must scroll down a little to see

    wrote on last edited by
    #45

    @DownPW I scrolled through but found no issues


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.
  • Material View Support for Stock NodeBB

    Unsolved Let's Build It material view javascript css
    51
    4
    15 Votes
    51 Posts
    27k Views
    DownPW
    Oh yes, that’s what’s super cool, I learn something every day. Afterwards I start from so low in JS
  • Create a dynamic category list

    Moved Let's Build It dynamic categories api
    16
    3
    14 Votes
    16 Posts
    7k Views
    phenomlab
    Hmm - seems I never committed this code. I’ll do that now… EDIT - here it is https://github.com/phenomlab/category-list/tree/main
  • The best css to customize our logo?

    Solved Customisation css
    2
    1 Votes
    2 Posts
    3k Views
    phenomlab
    @Sala This should look better .sidenav .navbar-brand { padding-top: 0.5rem; padding-bottom: 0.5rem; } [image: e5cec20e-be36-4ee8-9129-fd11ad4656ac-image.png] You can increase the top and bottom padding by increasing the values above.
  • 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.
  • answers appearance css code request

    Solved Customisation css answers
    11
    1
    1 Votes
    11 Posts
    4k Views
    phenomlab
    @DownPW yes, because of the modifications that Sudonix uses, you’ll need to tailor to fit your needs.
  • Discourse Design Change

    Customisation design change css html
    25
    7 Votes
    25 Posts
    10k Views
    RiekMedia
    @phenomlab okay
  • Minor cosmetic layout chages

    Announcements layout
    4
    2
    0 Votes
    4 Posts
    2k Views
    JAC
    @phenomlab said in Minor cosmetic layout chages: @jac I like a challenge