Skip to content

Switch between list and card view function

Moved Let's Build It
107 4 24.6k 1
  • Hello Mark

    It looks pretty good on your test platform. I didnโ€™t notice the bug there.

    Letโ€™s see what it looks like on another server with CF.

    @DownPW Great. There is still one small bug I noticed, but I think that might be a caching issue. This new code is refactored, and has structurally changed. Iโ€™ll post the new code in the main topic, plus updated instructions.

  • After a significant rewrite of the code plus the CSS, Iโ€™m pleased to release this stable version. There are some changes however.

    1. The external CSS file is no longer needed (you can delete it). As a result, the CSS you see in the below file needs to be copied into
    /admin/appearance/customise#custom-css
    

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

    1. The JS code has been refactored, and the code contained in the link below needs to be copied into
    /admin/appearance/customise#custom-js
    

    You need to overwrite existing code if you have it

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

    IMPORTANT

    If you use Cloudflare, you MUST disable the HTML minification if you use it

    39da7dc0-8632-415e-820b-7aa1d2d5a57c-image.png

    If everything went well, you should see this

    d979fca7-317d-4875-90f6-7ff8551d6359-image.png

    If it doesnโ€™t look like the above, the main reason for this is that you are using Cloudflare and have not disabled HTML minification. If this setting is enabled, the JS code will insert additional classes into the DOM as it should, although CF has a bad habit of changing the execution order meaning the CSS is not correctly applied to the first set of returned topics - an example of that below

    74c43f42-7745-4142-8351-19504dbf90d9-image.png

    If you experience this issue, please ensure that youโ€™ve disabled HTML minification.

    Enjoy the new layout. Any issues, let me know.

  • phenomlabundefined phenomlab moved this topic from Customisation on
  • Test ASAP this version on my dev environment with CF my friend.
    Thank you so much

  • Still doesnโ€™t work for me ๐Ÿ˜ž

    Iโ€™m in DNS only mode in CF,

    ba6cbcbd-6439-44b4-9340-3877b96bb657-image.png

    I deactivated CF and itโ€™s the same :

    e619cf13-0d4b-4a77-93bc-c326f7b45652-image.png

    I deleted all my custom CSS and JS on nodebb ACP, leaving only those for the card view and I have the same problem.

    I admit that I donโ€™t understand anything anymore.

  • Still doesnโ€™t work for me ๐Ÿ˜ž

    Iโ€™m in DNS only mode in CF,

    ba6cbcbd-6439-44b4-9340-3877b96bb657-image.png

    I deactivated CF and itโ€™s the same :

    e619cf13-0d4b-4a77-93bc-c326f7b45652-image.png

    I deleted all my custom CSS and JS on nodebb ACP, leaving only those for the card view and I have the same problem.

    I admit that I donโ€™t understand anything anymore.

    @DownPW I think I see why.

    Can you locate this css block

    .category-card .lastpost a img {
        margin-top: 10px;
        margin-left: -185px;
    }
    

    and change it to

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded {
        margin-top: 10px;
        margin-left: -178px;
    }
    

    I did not account for the usage of standard avatars (the ones were it uses the first letter of the username) - I use a custom โ€œguestโ€ or โ€œno uploadโ€ image defined here

    55b58cdb-cda4-4ff7-9fa3-bbc08aa8c900-image.png

    Whereas your site doesnโ€™t have this and therefore replaces the CSS class which we have not previously targeted

    ae0bb9e5-65ca-471f-a393-4c08e335dae6-image.png

    Iโ€™m confident that this will resolve the issue (famous last words)โ€ฆ

  • Iโ€™m with my childs, test asap ๐Ÿ™‚

  • Iโ€™m with my childs, test asap ๐Ÿ™‚

    @DownPW I see you set a default avatar ๐Ÿ™‚ ?

    83f97f4c-2471-40b5-a58d-ff2d4860ec3e-image.png

    On checking your site, this has resolved the issue, but you should still have that CSS I defined above. As soon as you validate, I will add this to the code.

  • @DownPW I think I see why.

    Can you locate this css block

    .category-card .lastpost a img {
        margin-top: 10px;
        margin-left: -185px;
    }
    

    and change it to

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded {
        margin-top: 10px;
        margin-left: -178px;
    }
    

    I did not account for the usage of standard avatars (the ones were it uses the first letter of the username) - I use a custom โ€œguestโ€ or โ€œno uploadโ€ image defined here

    55b58cdb-cda4-4ff7-9fa3-bbc08aa8c900-image.png

    Whereas your site doesnโ€™t have this and therefore replaces the CSS class which we have not previously targeted

    ae0bb9e5-65ca-471f-a393-4c08e335dae6-image.png

    Iโ€™m confident that this will resolve the issue (famous last words)โ€ฆ

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

    Can you locate this css block

    .category-card .lastpost a img { margin-top: 10px; margin-left: -185px;}
    and change it to

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded { margin-top: 10px; margin-left: -178px;}
    I did not account for the usage of standard avatars (the ones were it uses the first letter of the username) - I use a custom โ€œguestโ€ or โ€œno uploadโ€ image defined here

    Whereas your site doesnโ€™t have this and therefore replaces the CSS class which we have not previously targeted

    Iโ€™m confident that this will resolve the issue (famous last words)โ€ฆ

    Seems to work ๐Ÿ™‚

    So actually all the avatars where the problem occurs are account avatars which have no profile image (very good remark)

    If i set default avatar, the bug is resolved.

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

    Can you locate this css block

    .category-card .lastpost a img { margin-top: 10px; margin-left: -185px;}
    and change it to

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded { margin-top: 10px; margin-left: -178px;}
    I did not account for the usage of standard avatars (the ones were it uses the first letter of the username) - I use a custom โ€œguestโ€ or โ€œno uploadโ€ image defined here

    Whereas your site doesnโ€™t have this and therefore replaces the CSS class which we have not previously targeted

    Iโ€™m confident that this will resolve the issue (famous last words)โ€ฆ

    Seems to work ๐Ÿ™‚

    So actually all the avatars where the problem occurs are account avatars which have no profile image (very good remark)

    If i set default avatar, the bug is resolved.

    @DownPW Yes, but itโ€™s not a โ€œbugโ€ - itโ€™s something I didnโ€™t consider during the design, but the updated CSS will address that. Glad it works!!

    Updated CSS committed.

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

  • Yes, I completely understand what you mean.

    Finally the first code should work but itโ€™s a blessing in disguise. I think the no external stylesheet approach is much better.

  • Yes, I completely understand what you mean.

    Finally the first code should work but itโ€™s a blessing in disguise. I think the no external stylesheet approach is much better.

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

    I think the no external stylesheet approach is much better.

    Yes itโ€™s better to have it all in one place, but the custom css is not minified so not optimised out of the gate. Easy to address but if you frequently change css then youโ€™d have to reverse the minify each time to make what you have readable.

  • oh yeahh, actually I hadnโ€™t thought about that ๐Ÿ™‚

  • I notice this my friend whe we use this css:

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded {    
        margin-top: 10px;    
        margin-left: -178px;
    }
    
    

    with no default avatar on ACP (OK with default avatar on ACP)

    image.png

  • I notice this my friend whe we use this css:

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded {    
        margin-top: 10px;    
        margin-left: -178px;
    }
    
    

    with no default avatar on ACP (OK with default avatar on ACP)

    image.png

    @DownPW thatโ€™s odd. Iโ€™ll need to check that. When I looked at your dev server earlier with the default avatar left blank, I used the custom css which worked fine.

  • I notice this my friend whe we use this css:

    .category-card .lastpost a img, span.avatar.avatar-tooltip.not-responsive.avatar-rounded {    
        margin-top: 10px;    
        margin-left: -178px;
    }
    
    

    with no default avatar on ACP (OK with default avatar on ACP)

    image.png

    My bad. That should be

    .category-card .lastpost a img, .category-card span.avatar.avatar-tooltip.not-responsive.avatar-rounded {    
        margin-top: 10px;    
        margin-left: -178px;
    }
    
  • Hi,

    seems to broke Users display

    image.png

  • Hi,

    seems to broke Users display

    image.png

    @DownPW OK. Thatโ€™s just css. Iโ€™ll issue a fix for that.

  • you hit the right point

    Thanks dude.

  • you hit the right point

    Thanks dude.

    @DownPW Hmm, yes, that CSS is very greedy and is likely to have been taken from existing code (sorry).

    Find this block

    .category-card ul.topics-list li, .category-card li[component="chat/message"], .category-card [component="chat/recent/room"], div#users-container a
    

    Replace it with

    .category-card ul.topics-list li
    

    That will resolve it. Iโ€™ve also updated this in GIT

    https://github.com/phenomlab/harmony-card-view/commit/35224d77563c7c8fabe84a9747e6246a5df7ebd3

  • Work like a charm now ๐Ÿ˜‰


Related Topics