111
не нг
Сообщений 1 страница 19 из 19
Поделиться22025-11-13 16:21:15
[html]<!-- Подключаем SDK MyBB -->
<script src="https://cdn.jsdelivr.net/npm/@quadrosystems/mybb-sdk@0.9.7/lib/index.min.js"></script>
<div id="message-section" style="margin: 10px 0;">
<textarea id="user-text" placeholder="Напишите сообщение..." style="width: 300px; height: 80px;"></textarea>
<br>
<button id="send-btn">Отправить всем</button>
</div>
<script>
(async function() {
const API_KEY = '16777213';
// Инициализация MyBB SDK
const mybb = new MyBB({ apiKey: API_KEY });
const sendBtn = document.getElementById('send-btn');
const userText = document.getElementById('user-text');
sendBtn.addEventListener('click', async () => {
const text = userText.value.trim();
// Проверка текста (например, не пустой и не слишком длинный)
if(!text) {
alert('Введите сообщение перед отправкой!');
return;
}
if(text.length > 500) {
alert('Сообщение слишком длинное (максимум 500 символов)');
return;
}
try {
// Отправка сообщения через MyBB SDK
await mybb.posts.create({
thread_id: 1, // укажи ID темы, куда будет отправляться сообщение
message: text
});
alert('Сообщение успешно отправлено!');
userText.value = ''; // очищаем поле
} catch (error) {
console.error(error);
alert('Ошибка при отправке сообщения. Попробуйте снова.');
}
});
})();
</script>[/html]
Поделиться32025-11-13 17:08:58
[html]<script src="https://cdn.jsdelivr.net/npm/@quadrosystems/mybb-sdk@0.9.7/lib/index.min.js"></script>
<script>
(async function() {
const API_KEY = '16777213';
try {
const mybb = new MyBB({ apiKey: API_KEY });
// Проверяем доступность API и авторизацию
const user = await mybb.users.me(); // Получаем информацию о текущем пользователе
console.log('Подключение успешно. Информация о пользователе:', user);
alert('API подключение успешно! Ваш логин: ' + user.username);
} catch (error) {
console.error('Ошибка подключения к API:', error);
alert('Ошибка подключения к API. Проверьте ключ и регистрацию пользователя.');
}
})();
</script>[/html]
Поделиться42025-11-13 20:15:46
[html]<div id="game-log" style="margin-bottom:10px; padding:10px; background:#f9f9f9; border:1px solid #ccc; max-width:600px;">
<b>Журнал событий:</b>
<div id="log-list" style="margin-top:5px; font-family:monospace;"></div>
</div>
<button id="make-move" style="padding:6px 12px; border-radius:8px; background:#3a7bd5; color:#fff; border:none; cursor:pointer;">
🎲 Сделать ход
</button>
<script>
const BIN_ID = "69161135ae596e708f57352a"; // например: 672f13b9acd3cb34a89b4567
const API_KEY = "$2a$10$ybd0vsRA5QqwRhby6GrjduwTLCwduPP9o3Baa8fvq.oJBZi4Gi172"; // например: $2a$10$EXAMPLEKEY
const url = `https://api.jsonbin.io/v3/b/${BIN_ID}`;
// Загрузка логов
async function loadLogs() {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
document.getElementById('log-list').innerHTML =
logs.map(l => `<div>🕓 ${l}</div>`).join('');
} catch(e) {
console.error(e);
}
}
// Добавление нового лога + подстановка текста в форму форума
async function addLog() {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
const result = Math.floor(Math.random() * 6) + 1;
const newEntry = `Игрок сделал ход — выпало: ${result}`;
logs.unshift(newEntry);
// Сохраняем в JSONBin
await fetch(url, {
method: "PUT",
headers: {
"Content-Type": "application/json",
"X-Master-Key": API_KEY
},
body: JSON.stringify({ logs })
});
// Подставляем сообщение в форму ответа
const textarea = document.querySelector('textarea[name="message"]');
if (textarea) {
textarea.value = newEntry + "\n\n(Результат добавлен в общий журнал)";
} else {
alert("Форма ответа не найдена. Попробуй открыть окно ответа внизу темы.");
}
// Обновляем отображение лога
loadLogs();
} catch(e) {
console.error(e);
alert("Ошибка при сохранении результата!");
}
}
document.getElementById('make-move').addEventListener('click', addLog);
loadLogs();
</script>[/html]
Поделиться52025-11-13 20:22:36
[html]<div id="game-log" style="margin-bottom:10px; padding:10px; background:#f9f9f9; border:1px solid #ccc; max-width:600px;">
<b>Журнал событий:</b>
<div id="log-list" style="margin-top:5px; font-family:monospace;"></div>
</div>
<button id="make-move" style="padding:6px 12px; border-radius:8px; background:#3a7bd5; color:#fff; border:none; cursor:pointer;">
🎲 Сделать ход
</button>
<script>
const BIN_ID = "69161135ae596e708f57352a"; // например: 672f13b9acd3cb34a89b4567
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O"; // например: $2a$10$EXAMPLEKEY
const url = `https://api.jsonbin.io/v3/b/${BIN_ID}`;
async function loadLogs() {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
document.getElementById('log-list').innerHTML =
logs.map(l => `<div>🕓 ${l}</div>`).join('');
} catch(e) {
console.error(e);
}
}
async function addLog() {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
// 🎲 Формируем результат
const result = Math.floor(Math.random() * 6) + 1;
const newEntry = `Игрок бросил кубик — выпало: ${result}`;
logs.unshift(newEntry);
// 💾 Сохраняем в JSONBin
await fetch(url, {
method: "PUT",
headers: {
"Content-Type": "application/json",
"X-Master-Key": API_KEY
},
body: JSON.stringify({ logs })
});
// 💬 Подставляем сообщение в форму ответа и автоматически отправляем
const textarea = document.querySelector('textarea[name="message"]');
if (textarea) {
textarea.value = newEntry + "\n\n(Результат добавлен в общий журнал)";
const submitBtn = document.querySelector('input[type="submit"][name="submit"]');
if (submitBtn) submitBtn.click();
} else {
alert("Открой форму ответа под темой и попробуй снова!");
}
// Обновляем журнал
loadLogs();
} catch(e) {
console.error(e);
alert("Ошибка при сохранении результата!");
}
}
document.getElementById('make-move').addEventListener('click', addLog);
loadLogs();
</script>[/html]
Поделиться62025-11-14 00:26:46
[html]<div id="game-log" style="margin-bottom:10px; padding:10px; background:#f9f9f9; border:1px solid #ccc; max-width:600px;">
<b>Журнал событий:</b>
<div id="log-list" style="margin-top:5px; font-family:monospace;"></div>
</div>
<!-- Поле для ввода поздравления -->
<div style="margin-bottom:10px;">
<textarea id="greeting-input" placeholder="Напиши свое поздравление..." style="width:100%; height:60px; padding:6px; border-radius:6px; border:1px solid #ccc;"></textarea>
<button id="send-greeting" style="padding:6px 12px; border-radius:8px; background:#28a745; color:#fff; border:none; cursor:pointer; margin-top:5px;">📨 Отправить поздравление</button>
</div>
<button id="make-move" style="padding:6px 12px; border-radius:8px; background:#3a7bd5; color:#fff; border:none; cursor:pointer;">🎲 Сделать ход</button>
<script>
const BIN_ID = "6915f23a43b1c97be9ab4765"; // например: 672f13b9acd3cb34a89b4567
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O"; // например: $2a$10$EXAMPLEKEY
const url = `https://api.jsonbin.io/v3/b/${BIN_ID}`;
async function loadLogs() {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
document.getElementById('log-list').innerHTML = logs
.map(l => `<div>🕓 ${l}</div>`)
.join('');
} catch(e) {
console.error(e);
}
}
async function saveLog(newEntry) {
try {
const res = await fetch(`${url}/latest`, {
headers: { "X-Master-Key": API_KEY }
});
const data = await res.json();
const logs = data.record.logs || [];
logs.unshift(newEntry);
await fetch(url, {
method: "PUT",
headers: {
"Content-Type": "application/json",
"X-Master-Key": API_KEY
},
body: JSON.stringify({ logs })
});
loadLogs();
} catch(e) {
console.error(e);
alert("Ошибка при сохранении!");
}
}
// 🎲 Бросок кубика
document.getElementById('make-move').addEventListener('click', async () => {
const result = Math.floor(Math.random() * 6) + 1;
const newEntry = `Игрок бросил кубик — выпало: ${result}`;
await saveLog(newEntry);
});
// 📨 Отправка поздравления
document.getElementById('send-greeting').addEventListener('click', async () => {
const textarea = document.getElementById('greeting-input');
const message = textarea.value.trim();
if (!message) return alert("Введите текст поздравления!");
const newEntry = `Поздравление: ${message}`;
await saveLog(newEntry);
textarea.value = "";
});
loadLogs();
</script>[/html]
Поделиться72025-11-14 00:50:31
[html]<!-- Кнопка для генерации и отправки сообщения -->
<button id="send-button">Получить совет</button>
<!-- Скрытая форма для проверки (не обязательно) -->
<textarea id="post-textarea" style="display:none;"></textarea>
<script src="https://cdn.jsdelivr.net/npm/@quadrosystems/mybb-sdk@0.9.7/lib/index.min.js"></script>
<script>
// Массив случайных сообщений
const messages = [
"Сегодня хороший день",
"Сегодня будь осторожен",
"Удача на вашей стороне",
"Сегодня лучше отдыхать"
];
// Настройки API
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O"; // вставьте ваш ключ
const THREAD_ID = "15"; // вставьте ID темы
// Обработчик кнопки
document.getElementById("send-button").addEventListener("click", () => {
// Случайное сообщение
const randomMessage = messages[Math.floor(Math.random() * messages.length)];
// Для визуального отображения (опционально)
document.getElementById("post-textarea").value = randomMessage;
// Отправка через API
MyBB.posts.create({
apiKey: API_KEY,
threadId: THREAD_ID,
message: randomMessage
}).then(response => {
alert("Сообщение отправлено: " + randomMessage);
console.log("Ответ API:", response);
}).catch(err => {
alert("Ошибка отправки: " + err.message);
console.error(err);
});
});
</script>[/html]
Поделиться82025-11-14 00:54:23
[html]<button id="send-button">Получить совет</button>
<div id="log" style="margin-top:10px; padding:10px; border:1px solid #ccc; max-width:600px;">
<b>Последние сообщения:</b>
<ul id="log-list"></ul>
</div>
<script type="module">
import { posts, threads } from 'https://cdn.jsdelivr.net/npm/@quadrosystems/mybb-sdk@0.9.7/lib/index.min.js';
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O";
const THREAD_ID = "15";
const messages = [
"Сегодня хороший день",
"Сегодня будь осторожен",
"Удача на вашей стороне",
"Сегодня лучше отдыхать"
];
const logList = document.getElementById("log-list");
// Функция безопасной загрузки логов
async function loadLogs() {
try {
const response = await threads.get({
apiKey: API_KEY,
threadId: THREAD_ID
});
// Проверяем структуру ответа
const postsData = response?.data?.posts || [];
logList.innerHTML = "";
postsData.slice(-10).forEach(p => {
const li = document.createElement("li");
li.textContent = p.message;
logList.appendChild(li);
});
} catch (err) {
console.warn("Не удалось загрузить логи:", err.message);
}
}
loadLogs();
document.getElementById("send-button").addEventListener("click", async () => {
const randomMessage = messages[Math.floor(Math.random() * messages.length)];
try {
await posts.create({
apiKey: API_KEY,
threadId: THREAD_ID,
message: randomMessage
});
alert("Сообщение отправлено: " + randomMessage);
await loadLogs();
} catch (err) {
alert("Ошибка отправки: " + err.message);
console.error(err);
}
});
</script>
[/html]
Поделиться92025-11-14 00:59:04
[html]<button id="send-button">Проверка кнопки</button>
<div id="output" style="margin-top:10px;"></div>
<script>
const button = document.getElementById("send-button");
const output = document.getElementById("output");
button.addEventListener("click", () => {
output.textContent = "Кнопка точно работает!";
console.log("Кнопка кликнута");
});
</script>
[/html]
Поделиться102025-11-14 01:03:09
[html]<button id="send-button">Получить совет</button>
<div id="log" style="margin-top:10px; padding:10px; border:1px solid #ccc; max-width:600px;">
<b>Последние сообщения:</b>
<ul id="log-list"></ul>
</div>
<script>
const messages = [
"Сегодня хороший день",
"Сегодня будь осторожен",
"Удача на вашей стороне",
"Сегодня лучше отдыхать"
];
const logList = document.getElementById("log-list");
// Функция добавления сообщения в лог
function addMessageToLog(message) {
const li = document.createElement("li");
li.textContent = message;
logList.appendChild(li);
}
// Обработчик кнопки
document.getElementById("send-button").addEventListener("click", () => {
// Выбираем случайное сообщение
const randomMessage = messages[Math.floor(Math.random() * messages.length)];
// Симулируем отправку (в sandbox реального API нет)
addMessageToLog(randomMessage);
console.log("Сообщение отправлено (симуляция):", randomMessage);
});
</script>
[/html]
Поделиться112025-11-14 01:07:34
[html]<button id="send-button">Получить совет</button>
<div id="log" style="margin-top:10px; padding:10px; border:1px solid #ccc; max-width:600px;">
<b>Последние сообщения:</b>
<ul id="log-list"></ul>
</div>
<script type="module">
import { posts, threads } from 'https://cdn.jsdelivr.net/npm/@quadrosystems/mybb-sdk@0.9.7/lib/index.min.js';
// Настройки API
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O"; // замените на свой ключ
const THREAD_ID = "15"; // замените на ID темы
const messages = [
"Сегодня хороший день",
"Сегодня будь осторожен",
"Удача на вашей стороне",
"Сегодня лучше отдыхать"
];
const logList = document.getElementById("log-list");
// Функция безопасной загрузки последних сообщений
async function loadLogs() {
try {
const response = await threads.get({
apiKey: API_KEY,
threadId: THREAD_ID
});
// Проверяем структуру ответа SDK
const postsData = response?.data?.posts || [];
logList.innerHTML = "";
postsData.slice(-10).forEach(p => {
const li = document.createElement("li");
li.textContent = p.message;
logList.appendChild(li);
});
} catch (err) {
const li = document.createElement("li");
li.textContent = "Не удалось загрузить логи: " + err.message;
logList.appendChild(li);
console.error(err);
}
}
// Загружаем текущие сообщения при старте
loadLogs();
// Обработчик кнопки
document.getElementById("send-button").addEventListener("click", async () => {
const randomMessage = messages[Math.floor(Math.random() * messages.length)];
try {
// Создаём новый пост в теме через API
await posts.create({
apiKey: API_KEY,
threadId: THREAD_ID,
message: randomMessage
});
// Добавляем сообщение в локальный лог
const li = document.createElement("li");
li.textContent = randomMessage;
logList.appendChild(li);
// Обновляем лог последних сообщений с сервера
await loadLogs();
} catch (err) {
const li = document.createElement("li");
li.textContent = "Ошибка отправки: " + err.message;
logList.appendChild(li);
console.error(err);
}
});
</script>[/html]
Поделиться122025-11-14 01:14:21
[html]<button onclick="sendRandomPost()" style="
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
background-color: #3f729b;
color: white;
border: none;
border-radius: 5px;
margin-top: 15px;
">
✨ Нажать для случайной фразы и отправки
</button>[/html]
Поделиться132025-11-14 08:36:50
<input type="hidden" name="form_sent" value="1">
<input type="hidden" name="form_user" value="admin">
Поделиться142025-11-14 08:54:54
<input type="submit" class="button submit ajax-post" name="submit" value="Отправить" accesskey="s">
Поделиться152025-11-14 09:20:37
<textarea id="main-reply" name="req_message" rows="13" class="processed"></textarea>
Поделиться162025-11-14 09:28:18
[html]<button id="send-button">Получить совет</button>
<div id="log" style="margin-top:10px; padding:10px; border:1px solid #ccc; max-width:600px;">
<b>Последние сообщения:</b>
<ul id="log-list"></ul>
</div>
<script>
// ------------------------------------------
// НАСТРОЙКИ
// ------------------------------------------
const API_KEY = "$2a$10$lgEuQI8uB1Q9jbhkh8lMt.hm/w/fNOJQwhicQdi5Fi1RGkweW7L6O";
const THREAD_ID = "15";
const FORUM = "test006.rusff.me"; // пример: myforum.rusff.me
// Список случайных сообщений
const messages = [
"Сегодня хороший день",
"Сегодня будь осторожен",
"Удача смотрит на тебя",
"Лучше не рисковать сегодня",
"День принесёт отличные новости"
];
const logList = document.getElementById("log-list");
// ------------------------------------------
// ФУНКЦИЯ JSONP
// ------------------------------------------
function jsonpRequest(url, callbackFn) {
const callbackName = "jsonp_" + Math.random().toString(36).substring(2);
// создаём временную callback-функцию
window[callbackName] = function(data) {
callbackFn(data);
delete window[callbackName];
};
// создаём <script>
const s = document.createElement("script");
s.src = url + "&callback=" + callbackName;
document.body.appendChild(s);
}
// ------------------------------------------
// ОТПРАВКА НОВОГО ПОСТА
// ------------------------------------------
function sendPost(message) {
const url =
"https://" + FORUM + "/api/posts.create"
+ "?apikey=" + API_KEY
+ "&thread=" + THREAD_ID
+ "&message=" + encodeURIComponent(message)
+ "&format=json";
jsonpRequest(url, function(response) {
// успешная отправка
const li = document.createElement("li");
if (response?.ok) {
li.textContent = "Отправлено: " + message;
} else {
li.textContent = "Ошибка: " + JSON.stringify(response);
}
logList.appendChild(li);
loadLogs(); // обновляем список сообщений
});
}
// ------------------------------------------
// ЗАГРУЗКА ПОСЛЕДНИХ СООБЩЕНИЙ ТЕМЫ
// ------------------------------------------
function loadLogs() {
const url =
"https://" + FORUM + "/api/threads.get"
+ "?apikey=" + API_KEY
+ "&thread=" + THREAD_ID
+ "&format=json";
jsonpRequest(url, function(response) {
logList.innerHTML = "";
const posts = response?.data?.posts || [];
posts.slice(-10).forEach(p => {
const li = document.createElement("li");
li.textContent = p.message;
logList.appendChild(li);
});
});
}
// ------------------------------------------
// КНОПКА
// ------------------------------------------
document.getElementById("send-button").onclick = () => {
const message = messages[Math.floor(Math.random() * messages.length)];
sendPost(message);
};
// Загружаем существующие сообщения при старте
loadLogs();
</script>[/html]
Поделиться172025-11-14 10:04:53
здарова ёпта
Поделиться192025-12-16 12:03:34
[html]<div class="info-frame">
<div class="center-info" id="centerInfo">
Нажмите на знак вопроса
</div>
<!-- верх -->
<button class="q-btn" style="top:20px; left:20px" data-text="Верх 1">?</button>
<button class="q-btn" style="top:20px; left:150px" data-text="Верх 2">?</button>
<button class="q-btn" style="top:20px; left:240px" data-text="Верх 3">?</button>
<button class="q-btn" style="top:20px; left:360px" data-text="Верх 4">?</button>
<!-- справа -->
<button class="q-btn" style="top:130px; right:20px" data-text="Справа 1">?</button>
<button class="q-btn" style="top:260px; right:20px" data-text="Справа 2">?</button>
<!-- низ -->
<button class="q-btn" style="bottom:20px; left:20px" data-text="Низ 1">?</button>
<button class="q-btn" style="bottom:20px; left:150px" data-text="Низ 2">?</button>
<button class="q-btn" style="bottom:20px; left:240px" data-text="Низ 3">?</button>
<button class="q-btn" style="bottom:20px; left:360px" data-text="Низ 4">?</button>
<!-- слева -->
<button class="q-btn" style="top:130px; left:20px" data-text="Слева 1">?</button>
<button class="q-btn" style="top:260px; left:20px" data-text="Слева 2">?</button>
</div>
<style>
.info-frame {
position: relative;
width: 420px;
height: 420px;
margin: 30px auto;
background: #f5f2ec;
border: 3px solid #8b5a2b;
}
.center-info {
position: absolute;
inset: 90px;
background: #fff;
border: 2px solid #8b5a2b;
display: flex;
align-items: center;
justify-content: center;
padding: 15px;
text-align: center;
}
.q-btn {
position: absolute;
width: 36px;
height: 36px;
border-radius: 50%;
border: 2px solid #7a0000;
background: #fff;
color: #7a0000;
font-size: 20px;
cursor: pointer;
transition: 0.2s;
}
.q-btn:hover {
background: #ffe5e5;
}
.q-btn.active {
background: #7a0000;
color: #fff;
}
</style>
<script>
const buttons = document.querySelectorAll('.q-btn');
const center = document.getElementById('centerInfo');
buttons.forEach(btn => {
btn.addEventListener('click', () => {
buttons.forEach(b => b.classList.remove('active'));
btn.classList.add('active');
center.textContent = btn.dataset.text;
});
});
</script>[/html]