h3ro / Хуярвин

// ==UserScript==
// @name        Хуярвин
// @namespace   HuyarvinScript
// @match       *://10.*.54.*/
// @grant       none
// @version     1.6
// @author      Alexey <hello@h3ro.ru>
// @description Добавляет меню выбора скила в поле комментарий.
// @license     MIT
// ==/UserScript==

/**
 * Автоматически размечать чекбоксы в блоке "Дополнительная информация".
 * Роль говорящего, Эмоциональный настрой, Акцент, Дефекты речи.
 * ДА или НЕТ
 */
var EXTRA = 'ДА';

/**
 * Выпадающий список в поле "Комментарий"
 * Можно упорядочить в удобном порядке.
 */
var SKILL_LIST = [
  'Скил: Аудиокниги.',
  'Скил: Болталка.',
  'Скил: Время и дата.',
  'Скил: Гороскопы.',
  'Скил: День в истории.',
  'Скил: Игры.',
  'Скил: Интернет-радио.',
  'Скил: Интересные факты.',
  'Скил: Курсы валют.',
  'Скил: Команды настройки и управления.',
  'Скил: Мой Мтс.',
  'Скил: Музыка.',
  'Скил: Новости.',
  'Скил: О боте.',
  'Скил: Органайзер.',
  'Скил: Погода.',
  'Скил: Разное.',
  'Скил: Слово дня.',
  'Скил: Статус колонки.',
  'Скил: Тосты.',
  'Скил: Умный дом.',
  'Скил: Фактология.',
  'Скил: Шутки.',
  'Скил: FAQ.',
];




















$(".container").append('\
        <style type="text/css">\
            .custom-context-menu-comment {\
                position: absolute;\
                display: none;\
                width: 320px;\
                background-color: #fff;\
                border: 1px solid #d6d6d6;\
                border-radius: 6px;\
            }\
            .custom-context-menu-comment ul {\
                padding: 0;\
                margin: 0;\
            }\
            .custom-context-menu-comment li {\
                display: block;\
                font-size: 12px;\
                list-style: none;\
                cursor: pointer;\
                padding: 7px 4px 7px 10px;\
            }\
            .custom-context-menu-comment li:hover {\
                background-color: #a8daff;\
            }\
        </style>\
');

$(".container").append('<div class="custom-context-menu-comment"><ul>');

SKILL_LIST.forEach(function(l){
  $(".custom-context-menu-comment").append('<li><a>' + l + '</a></li>');
});

$(".container").append('</ul></div>');
          







$(document).ready(function(){
    $('.container').on('contextmenu', '#comment', function(e){
        $('.custom-context-menu-comment').show().css('top', e.pageY - 200).css('left', e.pageX);
        return false;
    });             

    $(document).on('mousedown', '.custom-context-menu-comment li', function(e){
        var ta      = $('#comment')[0],
            text    = $('#comment').val(),
            wrapper = $(this).text().split('...');

        var left  = typeof wrapper[1] !== 'undefined' ? wrapper[0] + ' ' : wrapper[0],
            right = typeof wrapper[1] !== 'undefined' ? wrapper[1] : '';

        $('#comment').val(
            text.substring(0, ta.selectionStart) + left + text.substring(ta.selectionStart, ta.selectionEnd) + right + text.substring(ta.selectionEnd)
        );

        $('div.custom-context-menu-comment').hide();
    });

    $(document).on('mouseup', function(e){
        var div = $('div.custom-context-menu-comment');

        if (!div.is(e.target) && div.has(e.target).length === 0) {
            div.hide();
        }
    });
});









if (EXTRA.toLowerCase() == 'да') {
  // $("#sex1").attr('checked', true);
  $("#role1").attr('checked', true);
  $("#emo2").attr('checked', true);
  $("#accent2").attr('checked', true);
  $("#defect2").attr('checked', true);
}