• XSS.stack #1 – первый литературный журнал от юзеров форума

хочу расширение для браузера

m00r

CPU register
Пользователь
Регистрация
16.01.2019
Сообщения
1 091
Реакции
334
Гарант сделки
2
чтобы я(и вы) себе разноцветными булавками(или эмодзиками) могли помечать людей на данном и не только форуме.
навеяли трекеры из покерных рум

возможно хороший межфорумный кейс, можно так же какой то уже паблик рейтинг для селлеров и мб для юзеров тоже сообразить


admin вы такое пропустите?
 
Последнее редактирование:
🤔 интересная идея. обязательно нужна возможность ручного редактирования базы, т.к. на разных форумах у одного человека могут быть разные ники и разные чексуммы аватарок.
 
🤔 интересная идея. обязательно нужна возможность ручного редактирования базы, т.к. на разных форумах у одного человека могут быть разные ники и разные чексуммы аватарок.
пока на хсс более чем достаточно было бы такого рабочего функционала. для персонального использования
для соседнего например тоже потом но и тоже начать пока без пересечений

но да функционал виднеется
 
Интересно. А как в случае с рейтингом спасаться от накрутки?
Я еще думаю, что можно в теории мониторить блеки или просто открытые арбитражи на пользователя по ID на форуме/связанными с ним контактам.
Но для этого кравлер нужен, а тут такое не любят. Тогда можно ввести подобие децентрализованного решения обозначить пользователя как скамера (что-то вроде DAO в блокчейне) или просто на основе рейтинга. Интересная идея, может, на досуге и возьмусь
 
Но для этого кравлер нужен, а тут такое не любят.
да что то типо поэтому и хотел привлечь админа к вопросу. чтобы он кому то одному разрешил сделать или сам мб даже занялся и мы могли бы все одним расширением пользоваться

про публичность я пока лишканул братва. от накрутки никуда не деться
пока для себя чтоб братюнь, умных и явных клубней обозначать, потенциальных скамеров и тд и тп (список у каждого наверно свой)

просто ники-авы меняются и забываются а нет нет золото проскакивает в чьих то смс
 
пока для себя чтоб братюнь, умных и явных клубней обозначать, потенциальных скамеров и тд и тп (список у каждого наверно свой)
вряд-ли "клубни" тебе нужны , а в остальном есть решение :

dd.jpg
 
Пожалуйста, обратите внимание, что пользователь заблокирован
чтобы я(и вы) себе разноцветными булавками(или эмодзиками) могли помечать людей на данном и не только форуме.
навеяли трекеры из покерных рум

возможно хороший межфорумный кейс, можно так же какой то уже паблик рейтинг для селлеров и мб для юзеров тоже сообразить


admin вы такое пропустите?
🤔 интересная идея. обязательно нужна возможность ручного редактирования базы, т.к. на разных форумах у одного человека могут быть разные ники и разные чексуммы аватарок.
1732922077597.png
занимаюсь потихоньку в свободное от основной работы время)
 
вряд-ли "клубни" тебе нужны , а в остальном есть решение :

Посмотреть вложение 99181
Достаточно скудный функционал. можно не понять по новому нику кто это вообще и почему я был подписан.
(Иной раз деталей сделки то буквально не помнишь)+ привязка к уведомлениям а хочется самому гулять по форуму.
А так заходя в обсуждение ты уже увидишь как оказалось знакомых фруктов. И в общем то чуть проще все становится

С возрастом много где начал так самому себе подсказки оставлять. Это хорошо мозг разгружает
Да и как показывает практика люди не такие уж и разные ))

IMG_0231.jpeg


admin технологичным мусорам для парсинга дали ход
Дайте и пацанам тоже ходу.
Возможно и зря пингую но может и нет. Если блоки пойдут на такое расширение и он перестанет работать без согласования.

Мусора следят за нами мы следим за пацанами
 
Последнее редактирование:
m00r, у тебя интересные идеи, они иногда опережают время. Но ты их формулируешь так, что тебе нужен переводчик m00r-простолюдинский =) Идея хорошая и технически можно сделать. Но что это из себя будет организационно представлять? Push'ы при выставлении статуса? Или таки чистый браузерный аддон? Кто будет иметь доступ к общей базе? Как добавить все форумы сразу? Рейтинг добавлять нельзя, потому что нет системы противовесов, т.к. набьют тебе 100 негативных эмодзи, а хотя негативным юзером ты не являешься. Короче, я за, но пока не понимаю, как это должно выглядеть. Так, чтобы было полезно, а не умерло от набива за пару недель.
 
m00r, у тебя интересные идеи, они иногда опережают время. Но ты их формулируешь так, что тебе нужен переводчик m00r-простолюдинский =) Идея хорошая и технически можно сделать. Но что это из себя будет организационно представлять? Push'ы при выставлении статуса? Или таки чистый браузерный аддон? Кто будет иметь доступ к общей базе? Как добавить все форумы сразу? Рейтинг добавлять нельзя, потому что нет системы противовесов, т.к. набьют тебе 100 негативных эмодзи, а хотя негативным юзером ты не являешься. Короче, я за, но пока не понимаю, как это должно выглядеть. Так, чтобы было полезно, а не умерло от набива за пару недель.
сперва аутично, для себя(может кому то еще нужно) хотел бы просто помечать некоторые аккаунты

браузерный аддон откуда я возьму эмодзи и налеплю на аккаунт или ник\id(???) возможно добавлю какой ни будь коммент.
без пушей без ничего. чтобы только я видел эти смайлики.
+- ux

это может улучшить сам экспириенс.
для себя можно пометить людей которые заслужили какого то экспертного\делового\людского доверия
или наоборот не вникать в мусор не ругаться с какими то рандомами пытаясь понять как и почему

межфорумная история врядли жизнеспособна по озвученным причинам
отдельно для каждого форума я думаю тоже может будет актуально кому то в дальнейшем

момент когда я начну почти нормально разговаривать будет означать что я начал осваивать кодинг (или в моем случае окодинг).
кстати я почти начал.
 
Последнее редактирование:
сперва аутично, для себя(может кому то еще нужно) хотел бы просто помечать некоторые аккаунты

браузерный аддон откуда я возьму эмодзи и налеплю на аккаунт или ник\id(???) возможно добавлю какой ни будь коммент.
без пушей без ничего. чтобы только я видел эти смайлики.
+- ux

это может улучшить сам экспириенс.
для себя можно пометить людей которые заслужили какого то экспертного\делового\людского доверия
или наоборот не вникать в мусор не ругаться с какими то рандомами пытаясь понять как и почему

межфорумная история врядли жизнеспособна по озвученным причинам
отдельно для каждого форума я думаю тоже может будет актуально кому то в дальнейшем

момент когда я начну почти нормально разговаривать будет означать что я начал осваивать кодинг (или в моем случае окодинг).
кстати я почти начал.
Рядом с ником добавляем иконку "+"
При нажатии вываливается окошко с эмодзи и поле note

Сохранение в localstorage
Бэкап в json
Восстановление из json в localstorage браузера

Такого функционала хватит?
 
Рядом с ником добавляем иконку "+"
При нажатии вываливается окошко с эмодзи и поле note

Сохранение в localstorage
Бэкап в json
Восстановление из json в localstorage браузера

Такого функционала хватит?
Эмодзи потом должно остаться возле ника в любой момент времени
В этом случае придется обращаться к базе?
Пока в общем первично если можно не дергать админа то лучше не дергать.

Если без базы не удастся это только админ сможет такой аддон сделать
А сначала тесты и голосования
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Если без базы не удастся
Никакая база не нужна, расширение будет менять HTML код на странице, а данные хранится в localstorage твоего браузера = эмодзи и заметка останется и будет оставаться всегда

Если делать всефорумное расширение с функционалом рейтинга и тд, то это не очень затея, тк с накруткой будет бороться невозможно..
 
Эмодзи потом должно остаться возле ника в любой момент времени
В этом случае придется обращаться к базе?
Пока в общем первично если можно не дергать админа то лучше не дергать.

Если без базы не удастся это только админ сможет такой аддон сделать
А сначала тесты и голосования
База у тебя локальная прям в браузере, называется localstorage
Если хочется подтягивать обновления от других пользователей аддона с которыми ты обменяешься id, то можно по webrtc обменяться (если у тебя команда и вы тут сидите гурьбой)
 
База у тебя локальная прям в браузере, называется localstorage
Если хочется подтягивать обновления от других пользователей аддона с которыми ты обменяешься id, то можно по webrtc обменяться (если у тебя команда и вы тут сидите гурьбой)
То есть я могу такое сам себе собрать ?
 
короче ебал я этот кодинг
ничего не работает.

// Проверяем, есть ли LocalStorage
if (!window.localStorage) {
console.error("LocalStorage не поддерживается вашим браузером.");
}

// Функция для добавления эмодзи и заметок к никам
function addEmojiFeature() {
// Найдите все ники на странице (замените селектор на подходящий для вашего форума)
const users = document.querySelectorAll(".user-nick");

users.forEach(user => {
const userId = user.textContent.trim();

// Создаем кнопку "+"
const emojiButton = document.createElement("button");
emojiButton.textContent = "+";
emojiButton.style.marginLeft = "10px";
emojiButton.style.cursor = "pointer";

// При клике показываем выбор эмодзи и поле для заметки
emojiButton.addEventListener("click", () => {
const emojiPopup = document.createElement("div");
emojiPopup.style.position = "absolute";
emojiPopup.style.background = "#fff";
emojiPopup.style.border = "1px solid #ccc";
emojiPopup.style.padding = "10px";
emojiPopup.style.zIndex = "1000";

const emojiInput = document.createElement("input");
emojiInput.placeholder = "Добавить эмодзи (😊)";
const noteInput = document.createElement("textarea");
noteInput.placeholder = "Заметка";

const saveButton = document.createElement("button");
saveButton.textContent = "Сохранить";

saveButton.addEventListener("click", () => {
const emoji = emojiInput.value;
const note = noteInput.value;

// Сохраняем данные в LocalStorage
const userData = JSON.parse(localStorage.getItem("userNotes")) || {};
userData[userId] = { emoji, note };
localStorage.setItem("userNotes", JSON.stringify(userData));

emojiPopup.remove();
updateUI(user, userId);
});

emojiPopup.appendChild(emojiInput);
emojiPopup.appendChild(noteInput);
emojiPopup.appendChild(saveButton);

document.body.appendChild(emojiPopup);
});

// Добавляем кнопку к нику
user.appendChild(emojiButton);

// Обновляем UI
updateUI(user, userId);
});
}

// Функция для обновления интерфейса
function updateUI(user, userId) {
const userData = JSON.parse(localStorage.getItem("userNotes")) || {};
if (userData[userId]) {
const { emoji, note } = userData[userId];

const existingEmoji = user.querySelector(".emoji");
if (!existingEmoji) {
const emojiSpan = document.createElement("span");
emojiSpan.className = "emoji";
emojiSpan.textContent = emoji;
emojiSpan.title = note;
user.appendChild(emojiSpan);
}
}
}

// Запуск
addEmojiFeature();

{
"manifest_version": 3,
"name": "Forum Emoji Adder",
"version": "1.0",
"description": "Добавляет эмодзи и заметки к пользователям на форуме.",
"permissions": ["storage"],
"host_permissions": ["https://xss.pro"],
"content_scripts": [
{
"matches": ["https://xss.pro/"], // Замените на URL вашего форума
"js": ["content.js"],
"css": ["style.css"]
}
]
}

.emoji {
margin-left: 5px;
font-size: 1.2em;
cursor: help;
}

еще жпт предложить создать файлик popup.html
я вангавал что хсс не подастся чатужпт
Рядом с ником добавляем иконку "+"
При нажатии вываливается окошко с эмодзи и поле note

Сохранение в localstorage
Бэкап в json
Восстановление из json в localstorage браузера

Такого функционала хватит?
скормил это тех задание
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
короче ебал я этот кодинг
ничего не работает.

// Проверяем, есть ли LocalStorage
if (!window.localStorage) {
console.error("LocalStorage не поддерживается вашим браузером.");
}

// Функция для добавления эмодзи и заметок к никам
function addEmojiFeature() {
// Найдите все ники на странице (замените селектор на подходящий для вашего форума)
const users = document.querySelectorAll(".user-nick");

users.forEach(user => {
const userId = user.textContent.trim();

// Создаем кнопку "+"
const emojiButton = document.createElement("button");
emojiButton.textContent = "+";
emojiButton.style.marginLeft = "10px";
emojiButton.style.cursor = "pointer";

// При клике показываем выбор эмодзи и поле для заметки
emojiButton.addEventListener("click", () => {
const emojiPopup = document.createElement("div");
emojiPopup.style.position = "absolute";
emojiPopup.style.background = "#fff";
emojiPopup.style.border = "1px solid #ccc";
emojiPopup.style.padding = "10px";
emojiPopup.style.zIndex = "1000";

const emojiInput = document.createElement("input");
emojiInput.placeholder = "Добавить эмодзи (😊)";
const noteInput = document.createElement("textarea");
noteInput.placeholder = "Заметка";

const saveButton = document.createElement("button");
saveButton.textContent = "Сохранить";

saveButton.addEventListener("click", () => {
const emoji = emojiInput.value;
const note = noteInput.value;

// Сохраняем данные в LocalStorage
const userData = JSON.parse(localStorage.getItem("userNotes")) || {};
userData[userId] = { emoji, note };
localStorage.setItem("userNotes", JSON.stringify(userData));

emojiPopup.remove();
updateUI(user, userId);
});

emojiPopup.appendChild(emojiInput);
emojiPopup.appendChild(noteInput);
emojiPopup.appendChild(saveButton);

document.body.appendChild(emojiPopup);
});

// Добавляем кнопку к нику
user.appendChild(emojiButton);

// Обновляем UI
updateUI(user, userId);
});
}

// Функция для обновления интерфейса
function updateUI(user, userId) {
const userData = JSON.parse(localStorage.getItem("userNotes")) || {};
if (userData[userId]) {
const { emoji, note } = userData[userId];

const existingEmoji = user.querySelector(".emoji");
if (!existingEmoji) {
const emojiSpan = document.createElement("span");
emojiSpan.className = "emoji";
emojiSpan.textContent = emoji;
emojiSpan.title = note;
user.appendChild(emojiSpan);
}
}
}

// Запуск
addEmojiFeature();

{
"manifest_version": 3,
"name": "Forum Emoji Adder",
"version": "1.0",
"description": "Добавляет эмодзи и заметки к пользователям на форуме.",
"permissions": ["storage"],
"host_permissions": ["https://xss.pro"],
"content_scripts": [
{
"matches": ["https://xss.pro/"], // Замените на URL вашего форума
"js": ["content.js"],
"css": ["style.css"]
}
]
}
Ну такой код конечно не будет работать, нужно делать под селекторы нашего форума) Я сейчас не могу тебе их сказать, ибо не за рабочим ПК, но ты можешь вставить весь код из F12 в чат ГПТ и он найдет сам нужный тебе селектор :)
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх