Skip to content

Fixed background to nodebb forum

Solved Configure
25 2 9.0k 1
  • @phenomlab ah ok
    So how do I change one color in a skin?

    @Panda first, define “skin”

  • @Panda first, define “skin”

    @phenomlab I go to admin menu and select skins
    Current one is Quartz

  • @phenomlab I go to admin menu and select skins
    Current one is Quartz

    @Panda ok, but which code runs this? Is it mine, or someone else’s work (it does make a difference.

    Edit - ok, unless I login, I cannot change the skin if it’s under admin. I’m being forced to wear sunglasses currently.

  • @Panda ok, but which code runs this? Is it mine, or someone else’s work (it does make a difference.

    Edit - ok, unless I login, I cannot change the skin if it’s under admin. I’m being forced to wear sunglasses currently.

    @phenomlab
    on aignite.nodebb.com I want to pick skin with colors that look ok over back image.
    But all the skins I try have at least one text color that is light and hard to see over image

  • @phenomlab
    on aignite.nodebb.com I want to pick skin with colors that look ok over back image.
    But all the skins I try have at least one text color that is light and hard to see over image

    @Panda it seems you are using the NodeBB skins which frankly, are terrible. They are all based on bootswatch and all have issues.

    You really need to custom develop a skin if your want it to look right.

  • @Panda it seems you are using the NodeBB skins which frankly, are terrible. They are all based on bootswatch and all have issues.

    You really need to custom develop a skin if your want it to look right.

    @phenomlab yea, this is what Im asking,
    Using a skin but maybe modifying one of the color choices

  • @phenomlab yea, this is what Im asking,
    Using a skin but maybe modifying one of the color choices

    @Panda the really depends on what you want to do. Are you offering the same skin to everyone, or do you want to have light and dark modes etc?

    If the one skin, then this is simple enough, but you’d need a lot of custom css to make this work.

  • @Panda the really depends on what you want to do. Are you offering the same skin to everyone, or do you want to have light and dark modes etc?

    If the one skin, then this is simple enough, but you’d need a lot of custom css to make this work.

    @phenomlab the background is supposed to be different for every user everytime they reload page
    but its always covered in light yellow color (alpha .86) so background will always be light

    Its just in each skin theres always one text color that is also light

  • Not sure why you are using a before pseudonym element to set the overlay. It’s much more efficient to do it this way (for example)

    body {
        position: relative;
        background-image: linear-gradient(to bottom, rgba(245, 246, 252, 0.52), rgba(117, 19, 93, 0.73)), url(https://loremflickr.com/500/500/flame);
        min-height: 90%;
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-position: center;
        background-size: cover;
    }
    

    image.png

    The below CSS block should be removed

    body::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 240, 220, 0.85);
        z-index: -100;
    }
    

    z-index: -100; is also overkill - -1 is usually always enough as this places the target element behind everything else.

  • Not sure why you are using a before pseudonym element to set the overlay. It’s much more efficient to do it this way (for example)

    body {
        position: relative;
        background-image: linear-gradient(to bottom, rgba(245, 246, 252, 0.52), rgba(117, 19, 93, 0.73)), url(https://loremflickr.com/500/500/flame);
        min-height: 90%;
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-position: center;
        background-size: cover;
    }
    

    image.png

    The below CSS block should be removed

    body::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 240, 220, 0.85);
        z-index: -100;
    }
    

    z-index: -100; is also overkill - -1 is usually always enough as this places the target element behind everything else.

    @phenomlab ah…
    Chatgpt told me the ::before method.
    Thanks for the human input 🙂

  • @phenomlab ah…
    Chatgpt told me the ::before method.
    Thanks for the human input 🙂

    @Panda said in Fixed background to nodebb forum:

    Chatgpt told me the ::before method.

    Go figure 😛


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
  • 2 Votes
    1 Posts
    502 Views
    No one has replied
  • Custom html in nodebb to prevent cache

    Unsolved Configure nodebb
    18
    2 Votes
    18 Posts
    5k Views
    @Panda You’ll need to do that with js. With some quick CSS changes, it looks like this [image: 1690796279348-d619844f-fbfe-4cf1-a283-6b7364f6bf18-image.png] The colour choice is still really hard on the eye, but at least you can now read the text
  • Want to use Sudonix themes ?

    Chitchat themes nodebb
    80
    1
    34 Votes
    80 Posts
    27k Views
    omg thank you Mark.
  • NodeBB: Creating pages

    Solved Configure nodebb create page
    9
    0 Votes
    9 Posts
    3k Views
    OK, I think I have figured out how to place a link in the footer which will click to a new page.
  • 5 Votes
    13 Posts
    3k Views
    'use strict'; const winston = require('winston'); const user = require('../user'); const notifications = require('../notifications'); const sockets = require('../socket.io'); const plugins = require('../plugins'); const meta = require('../meta'); module.exports = function (Messaging) { Messaging.notifyQueue = {}; // Only used to notify a user of a new chat message, see Messaging.notifyUser Messaging.notifyUsersInRoom = async (fromUid, roomId, messageObj) => { let uids = await Messaging.getUidsInRoom(roomId, 0, -1); uids = await user.blocks.filterUids(fromUid, uids); let data = { roomId: roomId, fromUid: fromUid, message: messageObj, uids: uids, }; data = await plugins.hooks.fire('filter:messaging.notify', data); if (!data || !data.uids || !data.uids.length) { return; } uids = data.uids; uids.forEach((uid) => { data.self = parseInt(uid, 10) === parseInt(fromUid, 10) ? 1 : 0; Messaging.pushUnreadCount(uid); sockets.in(`uid_${uid}`).emit('event:chats.receive', data); }); if (messageObj.system) { return; } // Delayed notifications let queueObj = Messaging.notifyQueue[`${fromUid}:${roomId}`]; if (queueObj) { queueObj.message.content += `\n${messageObj.content}`; clearTimeout(queueObj.timeout); } else { queueObj = { message: messageObj, }; Messaging.notifyQueue[`${fromUid}:${roomId}`] = queueObj; } queueObj.timeout = setTimeout(async () => { try { await sendNotifications(fromUid, uids, roomId, queueObj.message); } catch (err) { winston.error(`[messaging/notifications] Unabled to send notification\n${err.stack}`); } }, meta.config.notificationSendDelay * 1000); }; async function sendNotifications(fromuid, uids, roomId, messageObj) { const isOnline = await user.isOnline(uids); uids = uids.filter((uid, index) => !isOnline[index] && parseInt(fromuid, 10) !== parseInt(uid, 10)); if (!uids.length) { return; } if (roomId != 11) { // 5 Is the ID of the ID of the global chat room. Messaging.getUidsInRoom(roomId, 0, -1); // Proceed as normal. } else { user.getUidsFromSet('users:online', 0, -1); // Only notify online users. } const { displayname } = messageObj.fromUser; const isGroupChat = await Messaging.isGroupChat(roomId); const notification = await notifications.create({ type: isGroupChat ? 'new-group-chat' : 'new-chat', subject: `email:notif.chat.subject, ${displayname}`, bodyShort: `notifications:new_message_from, ${displayname}`, bodyLong: messageObj.content, nid: `chat_${fromuid}_${roomId}`, from: fromuid, path: `/chats/${messageObj.roomId}`, }); delete Messaging.notifyQueue[`${fromuid}:${roomId}`]; notifications.push(notification, uids); } };
  • restarting nodebb on boot

    Unsolved Configure nodebb
    3
    1 Votes
    3 Posts
    2k Views
    @eeeee said in restarting nodebb on boot: can I just run nodebb under nodemon for auto restarts? It’s a better method. Nodemon just looks for file system changes and would effectively die if the server was rebooted meaning you’d have to start it again anyway. Systemd is the defacto standard which is how the operating system interacts in terms of services, scheduled tasks etc.
  • Gettin Erors NodeBB

    Solved Configure nodebb eror
    7
    0 Votes
    7 Posts
    2k Views
    @phenomlab no forum is working goods. there is no eror message since yestarday.
  • Forum not loading

    Solved Configure
    27
    0 Votes
    27 Posts
    10k Views
    @phenomlab Brilliant!! Thanks ever so much!! Now I need to try pull in new members