Skip to content

Q&A Plugin Changes NodeBB

Solved Customisation
25 3 11.0k 1
  • @phenomlab so i do not touch any css code 🙂 waiting customized codes the odd positioning 🙂

    wrote on last edited by
    #10

    @cagatay yes. Don’t touch any existing code. I’ll have a look at this tomorrow. Any specific style you are looking for ?

  • Hi again.
    How can i change Solution word to Turkish language on post? Also my style of solution box not good how can i fix like good position and box type?

    104f0aa2-f126-43bd-9c92-8e81e8296160-image.png

    wrote on last edited by
    #11
  • @cagatay yes. Don’t touch any existing code. I’ll have a look at this tomorrow. Any specific style you are looking for ?

    wrote on last edited by
    #12

    @phenomlab said in Q&A Plugin Changes NodeBB:

    @cagatay yes. Don’t touch any existing code. I’ll have a look at this tomorrow. Any specific style you are looking for ?

    ok, no i m not looking any specific style, just it should be look like well 🙂

    @crazycells the plugin translation is good just when you chose correct answer for question become to flag as Solution that is in english not turkish, rest of in turkish.

  • @phenomlab said in Q&A Plugin Changes NodeBB:

    @cagatay yes. Don’t touch any existing code. I’ll have a look at this tomorrow. Any specific style you are looking for ?

    ok, no i m not looking any specific style, just it should be look like well 🙂

    @crazycells the plugin translation is good just when you chose correct answer for question become to flag as Solution that is in english not turkish, rest of in turkish.

    wrote on last edited by
    #13

    @cagatay then it is a bug. I will report it to GitHub.

  • @cagatay then it is a bug. I will report it to GitHub.

    wrote on last edited by
    #14

    @crazycells pls check it;

    96b2c8fd-8aa6-4bfa-a40d-8cb16c0839a5-image.png

    f4631859-b62f-4866-a798-1dc5aa7f4ea6-image.png

  • @crazycells pls check it;

    96b2c8fd-8aa6-4bfa-a40d-8cb16c0839a5-image.png

    f4631859-b62f-4866-a798-1dc5aa7f4ea6-image.png

    wrote on last edited by
    #15
  • @cagatay did you take the CSS from here for that ? It’s missing some positioning, but if you search the CSS you have and look for content: "solution" you should be able to change it to the Turkish equivalent.

    wrote on last edited by
    #16

    @phenomlab is “solution” label native to the plugin? or it is a label that you added?

  • @phenomlab is “solution” label native to the plugin? or it is a label that you added?

    wrote on last edited by
    #17

    @crazycells it’s native from recollection. Let me have a look and see what I can do with this tomorrow.

  • @crazycells pls check it;

    96b2c8fd-8aa6-4bfa-a40d-8cb16c0839a5-image.png

    f4631859-b62f-4866-a798-1dc5aa7f4ea6-image.png

    wrote on last edited by
    #18

    @cagatay upgrade the plugin to 1.0.4 , the translation issue is fixed.

  • @cagatay upgrade the plugin to 1.0.4 , the translation issue is fixed.

    wrote on last edited by
    #19

    @crazycells upgraded, problem is fixed.

  • @crazycells upgraded, problem is fixed.

    wrote on last edited by phenomlab
    #20

    @cagatay The CSS should look a bit better now

    eb0cd06b-5419-4986-9663-ceff3eac3cdd-image.png

    Added new block below on your site

    .posts [component=post][data-index="-1"].isSolved:before {
        border: none !important;
        border-radius: 6px;
    }
    

    Feel free to change positions etc., as you see fit.

  • @cagatay The CSS should look a bit better now

    eb0cd06b-5419-4986-9663-ceff3eac3cdd-image.png

    Added new block below on your site

    .posts [component=post][data-index="-1"].isSolved:before {
        border: none !important;
        border-radius: 6px;
    }
    

    Feel free to change positions etc., as you see fit.

    wrote on last edited by
    #21

    @phenomlab i think we changed same time CSS codes so i cant see yours code which added. I should add this code CSS side?

  • @phenomlab i think we changed same time CSS codes so i cant see yours code which added. I should add this code CSS side?

    wrote on last edited by
    #22

    @cagatay No, I’ve already added it for you. The code I provided is just to tell you what I added

    This is it here on your site

    47633cfd-f754-4f19-b13b-eeba2970b90e-image.png

    Ignore the numbering - this is Edge trying to convert numbers into English from Turkish, which is an epic failure 🙂

  • @cagatay No, I’ve already added it for you. The code I provided is just to tell you what I added

    This is it here on your site

    47633cfd-f754-4f19-b13b-eeba2970b90e-image.png

    Ignore the numbering - this is Edge trying to convert numbers into English from Turkish, which is an epic failure 🙂

    wrote on last edited by
    #23

    @phenomlab thank you.

    how can i fixed right corner side?

    ee1255af-28e3-4457-bb92-b4fa141816a3-image.png

  • @phenomlab thank you.

    how can i fixed right corner side?

    ee1255af-28e3-4457-bb92-b4fa141816a3-image.png

    wrote on last edited by phenomlab
    #24

    @cagatay you’d need to either use float: right; or position: absolute; and then make use of left, right variables. If you use absolute then you’d also need to set a top value (which I think is already there).

    This will take experimentation - the CSS I added also only triggers at screen estates of a minimum of 1200px to prevent it looking strange on mobile breakpoints.

    EDIT: Actually, this will work

    .posts [component=post][data-index="-1"].isSolved:before {
        border: none !important;
        border-radius: 6px;
        float: right;
        left: 10px;
    }
    

    Look for the block .posts [component=post][data-index="-1"].isSolved:before and add the float and left values to it, then save

    4a312425-f58b-4bcb-a865-43eb307fcfdd-image.png

  • @cagatay you’d need to either use float: right; or position: absolute; and then make use of left, right variables. If you use absolute then you’d also need to set a top value (which I think is already there).

    This will take experimentation - the CSS I added also only triggers at screen estates of a minimum of 1200px to prevent it looking strange on mobile breakpoints.

    EDIT: Actually, this will work

    .posts [component=post][data-index="-1"].isSolved:before {
        border: none !important;
        border-radius: 6px;
        float: right;
        left: 10px;
    }
    

    Look for the block .posts [component=post][data-index="-1"].isSolved:before and add the float and left values to it, then save

    4a312425-f58b-4bcb-a865-43eb307fcfdd-image.png

    wrote on last edited by
    #25

    @phenomlab said in Q&A Plugin Changes NodeBB:

    float: right;
    left: 10px;
    }

    worked thank you 🙂

  • cagatay cagatay has marked this topic as solved on

Did this solution help you?
Did you find the suggested solution useful? Support 💗 Sudonix with a coffee ☕
If your organisation needs deeper expertise around infrastructure, security, or technology leadership, learn more about Phenomlab Ltd. Many of the deeper technical guides behind Sudonix are published there.

Related Topics
  • 3 Votes
    1 Posts
    1k Views
    No one has replied
  • NodeBB v4.0.0

    General nodebb sudonix version 4
    28
    4 Votes
    28 Posts
    8k Views
    phenomlab
    @Panda said in NodeBB v4.0.0: the workings of World aren’t intuitive Its not easy to get World populating when a forum is new to it This is a good point and one I’ve considered also. It’s a little confusing to be honest.
  • Smart Widgets

    Solved Configure nodebb
    9
    3 Votes
    9 Posts
    3k Views
    phenomlab
    @Panda said in Smart Widgets: So why is that, or conversely why would the function to expose username ever be required, as it seems app.user is already an available global object? It is, yes, but not if you are using it outside of a widget. The function I wrote is also historical and comes from the 2.x train
  • Collapsing blockquotes on Harmony

    General nodebb harmony collapsible quotes
    2
    1
    2 Votes
    2 Posts
    980 Views
    phenomlab
    @dave1904 that’s a really good point actually. I know it was there previously on Persona, but you’re right - no such function exists on harmony. However, putting something in place to mimick the behaviour of Persona won’t be hard from the js standpoint, although I wonder if perhaps we should ask the NodeBB developers is this feature was overlooked?
  • Plugin reaction Bug

    Solved Customisation plugin nodebb reaction
    15
    1
    0 Votes
    15 Posts
    6k Views
    phenomlab
    @DownPW That was going to be my next suggestion
  • 5 Votes
    9 Posts
    6k Views
    DownPW
    @phenomlab Very very great Mark Thanks again, It’s perfect now ! –> I share my code that I modified. I’ve added French and English comments. If you see things to change Mark, don’t hesitate. As usual, all the access paths (FA icons, logo) will have to be modified according to your architecture. You can also very well add/remove time slots and change welcome messages to suit your needs. Widgets ACP/HTML Widget Footer Logo <center> <br><br> <img id="thislogo" src="path/to/my/image"> </center> Widget Welcome Message <!-- IF loggedIn --> <div class="getUsername">, <a href="/me"><span class="username"></span></a></div> <!-- ENDIF loggedIn --> CSS – I added the size font-weight: 900; in the CSS because otherwise some FA icon wasn’t displayed correctly and reduce margin : i#thisicon { font-family: "Font Awesome 5 Free"; font-style: normal; margin-right: 8px; font-weight: 900; } .getUsername { padding-top: 20px; text-align: right; } /*Smartphone*/ /*On désactive le message de bienvenue"*/ /*We disable the welcome message"*/ @media all and (max-width: 1024px) { .getUsername { display: none; } } JAVASCRIPT // ------------------------------------------ // Welcome Message avec icône et Footer logo // Welcome Message with icon and Footer logo // ------------------------------------------ $(window).on('action:ajaxify.end', function (data) { //On récupère le username dans le DOM et on l'affiche //We retrieve the username from the DOM and display it function updateUsername() { $('.getUsername .username').text(app.user.username); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', updateUsername); } else { updateUsername(); } //On déclare les variables principales (themessage & thehours) ainsi que les variables secondaires correspondants aux plages horaires //We declare the main variables (themessage & thehours) as well as the secondary variables corresponding to the time slots var thehours = new Date().getHours(); var themessage; var wakeup = ('Good day'); var morning = ('Good morning'); var lunch = ('Bon appétit'); var afternoon = ('Good afternoon'); var drink = ('Cheers'); var evening = ('Good evening'); var night = ('Good night'); var welcome = ('Welcome'); var matched = false; //On peux ici tester le résultat du code en spécifiant une heure (!!!IMPORTANT: Commenter une fois le script testé!!!) //Here we can test the result of the code by specifying a time (!!!IMPORTANT: Comment once the script has been tested!!!) //thehours = 20 //On déclare les plages horaires avec les icones FA et les logos //We declare the time slots with FA icons and logos path if (thehours >= 0 && thehours < 6) { themessage = night; theicon = "fa-solid fa-moon"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 6 && thehours < 8) { themessage = wakeup; theicon = "fa-solid fa-mug-hot"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 8 && thehours < 12) { themessage = morning; theicon = "fa-solid fa-sun"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 12 && thehours < 13) { themessage = lunch; theicon = "fas fa-hamburger"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 13 && thehours < 16) { themessage = afternoon; theicon = "fa-solid fa-sun"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 16 && thehours < 18) { themessage = welcome; theicon = "fa-solid fa-rocket"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 18 && thehours < 19) { themessage = drink; theicon = "fa-solid fa-wine-glass"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 19 && thehours < 20) { themessage = lunch; theicon = "fas fa-pizza-slice"; thelogo = "/assets/customlogo/XXX.png"; } else if (thehours >= 20 && thehours < 24) { themessage = evening; theicon = "fa-solid fa-tv"; thelogo = "/assets/customlogo/XXX.png"; } // Si la page active est un topic, on désactive/cache le message de bienvenue // If the active page is a topic, we deactivate/hide the welcome message if (window.location.href.indexOf("topic") > -1) { console.log("This is a topic, so hide the user welcome message"); $('#thisuser').hide(); } // Sinon, on affiche le message en fonction, l'icone FA et son emplacement (prepend) // Otherwise, we display the message in function, the FA icon and its location (prepend) else { $('.getUsername').prepend("<i id='thisicon' class='" + theicon + "'></i>" + themessage); $("#thislogo").attr("src", thelogo); //$('.getUsername').prepend("<img id='thisicon' src='" + thelogo + "'></>" + themessage); } });
  • 3 Votes
    6 Posts
    4k Views
    DownPW
    @phenomlab haha!! You are crazy. In a good way, of course It’s a way of saying you’re awesome !
  • NodeBB customisation

    Locked Customisation
    332
    27 Votes
    332 Posts
    274k Views
    phenomlab
    @jac Given your departure away from your previous project, I’m going to close this thread…