Shadow

joined 2 years ago
MODERATOR OF
[–] Shadow 5 points 1 week ago

As little as they pay game devs, they can pay the overseas contractors even less. Hence they don't really think of them as people.

[–] Shadow 1 points 1 week ago

The Eternaut.

I was curious and started it this afternoon with a friend. It's now 6 hours later, we've melted into my couch, and we're just finishing the season.

[–] Shadow 31 points 1 week ago

Not sure how I feel about this one. Performing assassinations in our country was unacceptable.

[–] Shadow 8 points 1 week ago

authentic community made to advocate the culling of a large amount of pets.

That's a pretty bold claim. Do you have any evidence of this? I've never seen anything calling for the culling of pitbulls, just not breeding so they die off.

[–] Shadow 19 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

Mind empowering my laziness and sharing that query?

I was also planning on bulk locking all their communities, to avoid any isolated islands of people that don't realize the community is gone.

[–] Shadow 3 points 2 weeks ago (1 children)
[–] Shadow 15 points 2 weeks ago

Lemmy.ca? 😁

[–] Shadow 23 points 2 weeks ago (3 children)

I may be biased, but lemmy.ca is pretty great

[–] Shadow 3 points 2 weeks ago* (last edited 2 weeks ago) (3 children)

Just a suggestion, but maybe stick to metric? Having a table format like this where multiple columns are showing the same thing in a mix of units, hurts my head.

At least make that 4th row 2nd column not have KM in the column that's otherwise all ft / miles. We don't need to know 10970.06 m vs 10.97km

[–] Shadow 7 points 2 weeks ago (1 children)

Plan ahead. Google STAR responses and come up with some scenarios to talk about in that style. Find who is interviewing you on linked in and see what they like, the drop a hint that you like that too in the interview.

[–] Shadow 13 points 3 weeks ago (2 children)

I've heard good things about https://moonlight-stream.org/ too.

[–] Shadow 11 points 3 weeks ago (2 children)

I love my steam deck, but it's underpowered and I don't use it for intensive games.

Personally I just have a long hdmi cable to my tv and USB cable to a hub on my couch. I plug my dongles in right next to me.

16
DIY X-ray Machine (www.youtube.com)
submitted 2 months ago by Shadow to c/[email protected]
104
submitted 2 months ago by Shadow to c/main
 

We're now running 0.19.11, changelog here - https://join-lemmy.org/news/2025-04-08_-_Lemmy_Release_v0.19.11

44
Bernd das Brot (en.wikipedia.org)
submitted 2 months ago by Shadow to c/[email protected]
 

If you want to watch the depressed bread yourself: https://tv.garden/de/0yjVBN9zD5VvoM

80
submitted 2 months ago* (last edited 2 months ago) by Shadow to c/main
 

For anyone that noticed the 30 seconds of downtime a few minutes ago, that was to upgrade us to lemmy 0.19.10.

Changes are listed here - https://join-lemmy.org/news/2025-03-19_-_Lemmy_Release_v0.19.10_and_Developer_AMA

This is not the version with breaking API changes, there should be no impact to any clients.

Enjoy!

37
RIP mcbarge (www.ctvnews.ca)
submitted 2 months ago by Shadow to c/vancouver
 

F

56
Magic smoke (en.wikipedia.org)
submitted 3 months ago by Shadow to c/[email protected]
13
submitted 3 months ago* (last edited 3 months ago) by Shadow to c/[email protected]
 

cross-posted from: https://lemmy.ca/post/40761824

Sorry everyone I know how much you love the attention she gives you, but I've implemented some quick and dirty filtering for private messaging.

We now have the ability to automatically mark PM's as deleted or read, depending on content inside of them. If we accidentally filter something you legitimately wanted (ie, not Nicole) please let me know.

If any other instances would like to implement this, here's the code. Note that you'll need to set your hostname at the top here for some reason I haven't exactly identified.

SET lemmy.protocol_and_hostname = 'https://lemmy.ca/';

CREATE TABLE private_message_filters (
    id SERIAL PRIMARY KEY,
    phrase TEXT NOT NULL,
    behavior VARCHAR(10) NOT NULL CHECK (behavior IN ('delete', 'mark_read'))
);

CREATE OR REPLACE FUNCTION filter_private_messages()
RETURNS trigger AS $$
DECLARE
    banned_phrase_record private_message_filters%ROWTYPE;
BEGIN
    FOR banned_phrase_record IN 
        SELECT * FROM private_message_filters
    LOOP
        IF LOWER(TRIM(NEW.content)) ILIKE '%' || LOWER(TRIM(banned_phrase_record.phrase)) || '%' THEN
            IF banned_phrase_record.behavior = 'delete' THEN
                NEW.deleted := true;
                RETURN NEW;
            ELSIF banned_phrase_record.behavior = 'mark_read' THEN
                NEW.read := true;
                RETURN NEW;
            END IF;
        END IF;
    END LOOP;
    RETURN NEW;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER trg_filter_private_messages
AFTER INSERT ON private_message
FOR EACH ROW
EXECUTE FUNCTION filter_private_messages();

To add filter words:

insert into private_message_filters (behavior, phrase) values ('delete', 'spamtestdelete');
insert into private_message_filters (behavior, phrase) values ('mark_read', 'spamtestread');

If you want to quickly disable / enable filtering while testing:

ALTER TABLE private_message DISABLE TRIGGER trg_filter_private_messages;
ALTER TABLE private_message ENABLE TRIGGER trg_filter_private_messages;

I'll leave it up to you to figure out what phrases to filter on. MAKE SURE YOU TEST. If there's an error, private messaging could break completely. You should not get an error message from the UI while sending a message with a banned word.

Edit: I like flamingos-cant's solution here better: https://lemmy.ca/post/40761824/15209462

167
submitted 3 months ago* (last edited 3 months ago) by Shadow to c/main
 

Sorry everyone I know how much you love the attention she gives you, but I've implemented some quick and dirty filtering for private messaging.

We now have the ability to automatically mark PM's as deleted or read, depending on content inside of them. If we accidentally filter something you legitimately wanted (ie, not Nicole) please let me know.

If any other instances would like to implement this, here's the code. Note that you'll need to set your hostname at the top here for some reason I haven't exactly identified.

SET lemmy.protocol_and_hostname = 'https://lemmy.ca/';

CREATE TABLE private_message_filters (
    id SERIAL PRIMARY KEY,
    phrase TEXT NOT NULL,
    behavior VARCHAR(10) NOT NULL CHECK (behavior IN ('delete', 'mark_read'))
);

CREATE OR REPLACE FUNCTION filter_private_messages()
RETURNS trigger AS $$
DECLARE
    banned_phrase_record private_message_filters%ROWTYPE;
BEGIN
    FOR banned_phrase_record IN 
        SELECT * FROM private_message_filters
    LOOP
        IF LOWER(TRIM(NEW.content)) ILIKE '%' || LOWER(TRIM(banned_phrase_record.phrase)) || '%' THEN
            IF banned_phrase_record.behavior = 'delete' THEN
                NEW.deleted := true;
                RETURN NEW;
            ELSIF banned_phrase_record.behavior = 'mark_read' THEN
                NEW.read := true;
                RETURN NEW;
            END IF;
        END IF;
    END LOOP;
    RETURN NEW;
END;
$$ LANGUAGE plpgsql;

CREATE TRIGGER trg_filter_private_messages
AFTER INSERT ON private_message
FOR EACH ROW
EXECUTE FUNCTION filter_private_messages();

To add filter words:

insert into private_message_filters (behavior, phrase) values ('delete', 'spamtestdelete');
insert into private_message_filters (behavior, phrase) values ('mark_read', 'spamtestread');

If you want to quickly disable / enable filtering while testing:

ALTER TABLE private_message DISABLE TRIGGER trg_filter_private_messages;
ALTER TABLE private_message ENABLE TRIGGER trg_filter_private_messages;

I'll leave it up to you to figure out what phrases to filter on. MAKE SURE YOU TEST. If there's an error, private messaging could break completely. You should not get an error message from the UI while sending a message with a banned word.

 

You just end up creating an desolate community full of noise, since the op will never see the replies.

It hurts lemmy users who don't realize this and wonder why there's no engagement.

For example: https://lemmy.ml/comment/17284093

Blindly copying posts from reddit is not the way to grow a healthy lemmy community.

view more: ‹ prev next ›