welkin.test

мультивселенная   html   безумия / путешествия по кодам

「 она была как луна — никому не принадлежала, но все смотрели на нее с восхищением 」                   は「彼女は月のように、誰のものでもなかったが、皆が彼女を賞賛の眼差しで見ていた」という意味です。
112%
кодыеще кодыпомощь с установкой
( будет красиво, но это не точно )

welkin moon

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » welkin moon » испытательная » автоматический банк


автоматический банк

Сообщений 1 страница 2 из 2

1

Блаблабла здесь может быть полный список позиций
Бла-бла


пример пример

транзакции:

Код:
1. какой профиль используется
2. получаю/трачу: строчка из банка + пруф
3. подсчеты _суммы начисления, не финальную_

[html]<div id="bank-container"></div>[/html]
[hideprofile]

2

ИНСТРУКЦИЯ ПО УСТАНОВКЕ


Код вставляем в ХТМЛ-низ
Меняем адрес в строчке if(location.href.indexOf('viewtopic.php?id=2') на свой (адрес странички темы банка, первое сообщение)

Можно добавить позиции, настроить цвета, поменять цены и тд

Код:
<!-- //автоматический банк welkin -->
<script>
(function(){
  if(location.href.indexOf('viewtopic.php?id=2')===-1) return;

  // === CSS ===
  var style=document.createElement('style');
  style.textContent=`
    .autobank * { box-sizing: border-box; }
  .autobank {font-family: Arial, Helvetica, sans-serif; width: 100% !important;max-width: 100% !important; margin: 0 !important; padding: 0; box-sizing: border-box;}
.post-content .autobank { width: 100% !important;max-width: 100% !important;display: block;}
    .autobank .autobank-columns { display: flex; gap: 10px; flex-wrap: wrap; }
    .autobank .autobank-column { flex: 1; background: #fff; padding: 12px; border-radius: 8px; box-shadow: 0 0 0 1px rgba(0,0,0,0.1); }
    .autobank .autobank-position { display: flex; align-items: center; padding: 4px; margin: 2px 0; background: #f5f6f5; border-radius: 4px; flex-wrap: wrap; }
    .autobank .autobank-position span { flex: 1; font-size: 13px; }
    .autobank .autobank-position input[type=text] { width: 80px; margin-left: 5px; padding: 2px; border: 1px solid #ccc; border-radius: 4px; font-size: 12px; }
    .autobank .autobank-btn { border: 0; padding: 4px 6px; border-radius: 4px; cursor: pointer; font-size: 12px; margin-left: 4px; }
    .autobank .autobank-btn-add { background: #852b2b; color: #fff; }
    .autobank .autobank-btn-remove { background: #d9534f; color: #fff; margin-left: 3px; font-size: 12px; }
    .autobank #autobank-selection-box { margin-top: 10px; background: #454545; color: #fff; padding: 10px; border-radius: 6px; font-size: 13px; }
    .autobank #autobank-selected-list li { margin-bottom: 4px; }
    .autobank label { font-weight: 600; font-size: 13px; }
  `;
  document.head.appendChild(style);

  // === HTML банка ===
  var html=`
    <div class="autobank">
      <div style="margin-bottom:8px;">
        <label>Какой профиль используете:</label>
        <input type="text" id="autobank-profile" placeholder="Введите профиль">
      </div>

      <div class="autobank-columns">
        <div class="autobank-column" id="autobank-earn">
          <h4>Заработать</h4>

          <div class="autobank-position" data-code="Пришел по заявке" data-amount="50" data-type="earn">
            <span>Пришел по заявке — 50</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Привел друга" data-amount="20" data-type="earn">
            <span>Привел друга — 20</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Написал нужного" data-amount="25" data-type="earn">
            <span>Написал «нужного» — 25</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Написал хочу видеть" data-amount="10" data-type="earn">
            <span>«Хочу видеть // возьми твинка» — 10</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Пост до 2к" data-amount="5" data-type="earn">
            <span>Пост до 2к символов — 5</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Пост до 6к" data-amount="10" data-type="earn">
            <span>Пост до 6к — 10</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Пост до 10к" data-amount="15" data-type="earn">
            <span>Пост до 10к — 15</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Пост больше 10к" data-amount="35" data-type="earn">
            <span>Пост больше 10к — 35</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Пост больше 20к" data-amount="90" data-type="earn">
            <span>Пост больше 20к — 90</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Доигранный эпизод" data-amount="100" data-type="earn">
            <span>Доигранный эпизод — 100</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Баннер в подписи" data-amount="50" data-type="earn">
            <span>Баннер в подписи на каталогах — 50</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Отзыв на РПГ-топе" data-amount="50" data-type="earn">
            <span>Отзыв на РПГ-топе — 50</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>
        </div>

        <div class="autobank-column" id="autobank-spend">
          <h4>Потратить</h4>

          <div class="autobank-position" data-code="Выкупить роль" data-amount="100" data-type="spend">
            <span>Выкупить роль — 100*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="11й и последующие твинки" data-amount="500" data-type="spend">
            <span>11й и последующие твинки — 500+</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Реклама по партнерам" data-amount="70" data-type="spend">
            <span>Реклама по партнерам — 70</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Реклама 100 листовок" data-amount="300" data-type="spend">
            <span>Реклама: 100 реклам листовкой — 300*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Реклама 500 листовок" data-amount="2000" data-type="spend">
            <span>Реклама: 500 реклам листовкой — 2000*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Заказать листовку" data-amount="100" data-type="spend">
            <span>Заказать листовку — 100</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Нужный в шапке" data-amount="100" data-type="spend">
            <span>Нужный в шапке — 100*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Нужный в подписи" data-amount="80" data-type="spend">
            <span>Нужный в подписи — 80*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Нужный в шапке гостевой" data-amount="80" data-type="spend">
            <span>Нужный в шапке гостевой — 80*</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Заказать стикер-пак" data-amount="500" data-type="spend">
            <span>Заказать стикер-пак — 500</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Эпизод в шапке" data-amount="300" data-type="spend">
            <span>Эпизод в шапке — 300</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>

          <div class="autobank-position" data-code="Твой каст в акционных" data-amount="1000" data-type="spend">
            <span>Твой каст в акционных — 1000</span><input type="text" placeholder="пруф"><button class="autobank-btn autobank-btn-add">+</button>
          </div>
        </div>
      </div>

      <div id="autobank-selection-box">
        <div style="margin-bottom:6px;">
          <label>Было на счету:</label>
          <input type="number" id="autobank-start" value="0" min="0" style="width:80px;padding:2px;">
        </div>
        <ol id="autobank-selected-list"></ol>
        <div id="autobank-calc"></div>
        <div style="margin-top:6px;">
          <button id="autobank-copy" class="autobank-btn autobank-btn-add">Скопировать результат</button>
        </div>
      </div>
    </div>
  `;

  var firstPost=document.querySelector('.post-content');
  if(firstPost) firstPost.insertAdjacentHTML('beforeend',html);

  // === JS логика ===
  var selected=[];
  function renderSelected(){
    var ol=document.getElementById('autobank-selected-list');
    ol.innerHTML='';
    var start=parseInt(document.getElementById('autobank-start').value)||0;
    var total=start;
    var steps=[];
    selected.forEach(function(it,idx){
      var li=document.createElement('li');
      li.innerHTML='<strong>'+(it.type==='earn'?'начислить':'потратить')+'</strong>: '+it.code+(it.comment?' — '+it.comment:'')+
                   ' <button data-idx="'+idx+'" class="autobank-btn autobank-btn-remove">×</button>';
      ol.appendChild(li);
      var val=it.type==='earn'?it.amount:-it.amount;
      steps.push((val>0?'+':'')+val);
      total+=val;
    });
    var calc=document.getElementById('autobank-calc');
    calc.innerHTML='Начислено: '+steps.join(' ');
    calc.style.color='#fff';
    calc.style.background='#2b2b2b';
    calc.style.padding='6px';
    calc.style.borderRadius='4px';
    ol.querySelectorAll('.autobank-btn-remove').forEach(function(b){
      b.addEventListener('click',function(){
        selected.splice(parseInt(this.getAttribute('data-idx')),1);
        renderSelected();
      });
    });
    window.autobankTotal=total;
    window.autobankSteps=steps.join(' ');
  }

  document.addEventListener('click', function(e){
    if(e.target.classList.contains('autobank-btn-add')){
      var parent=e.target.closest('.autobank-position');
      var code=parent.getAttribute('data-code');
      var type=parent.getAttribute('data-type');
      var amount=parseInt(parent.getAttribute('data-amount'))||0;
      var comment=parent.querySelector('input[type=text]').value;
      selected.push({code, type, amount, comment});
      renderSelected();
      parent.querySelector('input[type=text]').value='';
    }
  });

  document.getElementById('autobank-start').addEventListener('input',renderSelected);

  document.getElementById('autobank-copy').addEventListener('click',function(){
    var profile=document.getElementById('autobank-profile').value||'[не указан]';
    var text='Профиль: '+profile+'\n\n';
    text+='Получаю/трачу:\n';
    selected.forEach(function(it){
      text+=(it.type==='earn'?'начислить':'потратить')+': '+it.code+(it.comment?' — '+it.comment:'')+'\n';
    });
    text+='\nБыло на счету: '+(parseInt(document.getElementById('autobank-start').value)||0);
    text+='\nНачислено: '+window.autobankSteps;
    text+='\nФинальная сумма: '+window.autobankTotal;
    navigator.clipboard.writeText(text).then(()=>alert('Скопировано в буфер обмена'));
  });
})();
</script>

В само сообщение темы банка вставляем (до либо после требуемого доп контента):

Код:
[html]<div id="bank-container"></div>[/html]

Желательно использовать hideprofile, чтобы встало на всю ширину окна.

[hideprofile]


Вы здесь » welkin moon » испытательная » автоматический банк