✒️📃 Обновление неофициального-резервного редактора для голоса chain.cf: 10 тегов, транслитерация, встроенный хостинг фото.
Этот редактор я создал несколько месяцев назад в период частых ошибок во фронтенде голоса, что влекло за собой невозможность публиковать посты через golos.io
Поскольку сейчас, во время обновления интерфейса golos.io наблюдаются "потери" постов, я решил вернуть редактор из забвения :)
С помощью данного редактора можно размещать посты в блокчейн голоса минуя сайт golos.io, таким образом даже если сайт golos.io не доступен - возможность опубликовать пост доступна любому желающему. А в сочетании с ботами для голосования - за ваш пост могут и голосовать, минуя основной домен.
✒️ 9+1 тег в обновленной версии :)
Редактор доступен по ссылке https://chain.cf/post.html
В него по-прежнему встроен фотохостинг, загрузить и вставить фото в пост можно обычной кнопкой.
Вы так же можете сформировать ссылку на свой пост более лаконично
- Топик - он же первый тег.
- Окончание ссылки.
- Добавлена транслитерация русских тегов (для тех, кто интересуется разработкой - ниже будет простая JS функция для перевода тегов по стандарту голоса)
- Добавлена возможность указать до 10 тегов.
- Добавлен чат внизу страницы редактора, в котором можно попросить помощи или оставить свои предложения. Чат синхронизирован с телеграм чатом - https://t.me/chain_cf
В планах добавить markdown версию и переключатель режима выплат.
По умолчанию выплата: 50% GOLOS / 50% GBG
что по моему мнению самый выгодный для авторов формат, особенно на долгосрочную перспективу.
JavaScript функция транслитерации тегов (работает и в браузере):
Создаем массив с шаблоном транслитерации принятым на голосе
var assoc = {
"а": "a",
"б": "b",
"в": "v",
"ґ": "g",
"г": "g",
"д": "d",
"е": "e",
"ё": "yo",
"є": "ye",
"ж": "zh",
"з": "z",
"и": "i",
"і": "i",
"ї": "yi",
"й": "ij",
"к": "k",
"л": "l",
"м": "m",
"н": "n",
"о": "o",
"п": "p",
"р": "r",
"с": "s",
"т": "t",
"у": "u",
"ф": "f",
"x": "kh",
"ц": "cz",
"ч": "ch",
"ш": "sh",
"щ": "shch",
"ъ": "xx",
"ы": "y",
"ь": "x",
"э": "ye",
"ю": "yu",
"я": "ya"
}
Что бы добавить в пост тег голос
сперва его нужно будет перевести в транслит и добавить префикс ru--
что бы получился тег ru--golos
Для этого создаем функцию transform в которой будем находить кириллические символы, в случае наличия таковых будем трансформировать их в латинницу и добавлять к строке приставку ru--
:
function transform(str, spaceReplacement) {
if (!str) {
return "";
}
var new_str = '';
var ru = '';
for (var i = 0; i < str.length; i++) {
var strLowerCase = str[i].toLowerCase();
if (strLowerCase === " " && spaceReplacement) {
new_str += spaceReplacement;
continue;
}
if (!assoc[strLowerCase]) {
new_str += strLowerCase;
} else {
new_str += assoc[strLowerCase];
ru = 'ru--';
}
}
return ru + new_str;
}
Похожий принцип я использую в приложении для импорта WordPress записей в голос
https://github.com/vikxx/wordpress-golos-chain , но в данном посте он адаптирован под работу в браузере.
Исходный код страницы доступен здесь:
https://github.com/vikxx/vikxx.github.io/blob/master/post.html
Постинг ключ сохраняется в local storage вашего браузера в зашифрованном виде.