📝 Коллекция полезных мини-скриптов

Делитесь своими плагинами и темами оформления.
Ответить
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

📝 Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

Всякие полезняшки, которые рука не поднимается запихнуть в "плагины", но в качестве "местного применения" вполне годные))

1. Прозрачность формы при клике /перетаскивании.
2. Автоматическое скрытие ajax-запроса
3. Автоматический ввод логина и пароля
4. Скрытие вкладки формы
5. Выполнить на странице
6. Тюнинг страницы настроек "Пользовательский HTML"
7. ...
...

🤙
Изображение
Последний раз редактировалось Develop-Soft 12 сен 2023, 11:10, всего редактировалось 20 раз.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

1. Прозрачность формы при клике/перетаскивании.

Может быть полезным, когда надо подсмотреть "за спину" модальной формы.

Изображение

Код для вставки ("Настройка формы" -> "JavaScript"):

Код: Выделить всё

var transparency = 0.5 /* полностью прозрачный - 0, непрозрачный - 1 */

$(".modal-header, .modal-footer").on("mousedown",function(e){
  if (e.target.nodeName !== 'BUTTON') {
  $("#ajax-modal[aria-hidden=false]").fadeTo(0, transparency);
  }
});

$("body").on("mouseup",function(e){
  if (e.target.nodeName !== 'BUTTON') {
  $("#ajax-modal[aria-hidden=false]").fadeTo(0, 1);
  }
});
🤙
Изображение
Последний раз редактировалось Develop-Soft 28 сен 2023, 11:09, всего редактировалось 1 раз.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

⬆️ другие плюшки

2. Автоматическое скрытие ajax-запроса.

Может быть полезным, когда поле ajax-запроса не отображает вычисления и становится "лишним" в форме.

Изображение

Код для вставки ("непосредственно в ajax-запрос"):

Код: Выделить всё

echo '<i class="autohide" hidden="true"></i><script>$(".autohide").closest(".form-group").hide();</script>';
Примечание: рекомендуется использовать в первой строке вашего кода

⬆️ другие плюшки

🤙
Изображение
Последний раз редактировалось Develop-Soft 28 сен 2023, 11:09, всего редактировалось 2 раза.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

⬆️ другие плюшки

3. Автоматический ввод логина и пароля.

Скрипт для вставки в "Настройках страницы входа" -> "Источник" html-редактора описания.
Упрощает вход на конкретную страницу, автоматически заполняя окно авторизации. Для ссылки достаточно дописать в конце url - логин и пароль в параметрах username и password:
Примерно так:
[..ваш url..]&username=guest&password=guest
Рекомендуется использовать крайне осторожно и желательно только для учеток, имеющих ограниченный набор прав!

Изображение

Код: Выделить всё

<script>
document.body.onload = function(){
let params = new URLSearchParams(decodeURIComponent(getCookie("app_login_redirect_to"))); 
   if ( (params.get("username") !== null) && (params.get("password") !== null)) 
   {
   document.getElementsByName("username")[0].value = params.get("username");
   document.getElementsByName("password")[0].value = params.get("password");
   params.delete("username");
   params.delete("password");
   setCookie("app_login_redirect_to",params.toString());  // , n days
   document.getElementById("login_form").submit();
   }
};
</script>
⬆️ другие плюшки

🤙
Изображение
Последний раз редактировалось Develop-Soft 28 сен 2023, 11:09, всего редактировалось 2 раза.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: 📝 Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

⬆️ другие плюшки

4. Скрытие вкладки формы.

Скрипт скрытия текущей вкладки формы. Код вставяется в "описание" вкладки в режиме "источник".

Код: Выделить всё

[<span class="hidden-tab"> Скрипт скрытия содержимого</span>
<script>$("."+$(".hidden-tab").parents('div[id^="form_tab_"]').prop("id")).hide();</script>]
Изображение

Изображение

⬆️ другие плюшки

🤙
Изображение
Последний раз редактировалось Develop-Soft 28 сен 2023, 11:08, всего редактировалось 1 раз.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: 📝 Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

⬆️ другие плюшки

5. Выполнить на странице

Код вставлять в "Настройки" -> "Пользовательский HTML" -> блок: "перед тегом </body>"
Для вызова необходимо в URL добавить: &action_on_page={действие}

Действия:
  • add - добавить запись в сущность (эмуляция клика на кнопке "Добавить" при входе на страницу списка записей).
    Пример: httрs://rukovoditel.my/?module=items/items&path=30&action_on_page=add
    Примечание: скрипт также срабатывает после "утыкания" в авторизацию после успешного входа в систему

Код: Выделить всё

<script>
var sp = new URLSearchParams(window.location.search)
action = sp.get("action_on_page");
if (action) {
  if (action == "add") {
   bn_add =  $("[onclick*='=items/form&path=']")
   if (bn_add) {bn_add.click();} 
  }
}
</script>
Результат (новая запись):

Изображение

⬆️ другие плюшки

🤙
Изображение
Последний раз редактировалось Develop-Soft 28 сен 2023, 11:08, всего редактировалось 2 раза.
Аватара пользователя
Develop-Soft
Сообщения: 690
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: 📝 Коллекция полезных мини-скриптов

Сообщение Develop-Soft »

⬆️ другие плюшки

6. Тюнинг страницы "пользовательский HTML"

Изображение

Код вставлять в "Настройки" -> "Пользовательский HTML" -> блок: "перед тегом </body>"

Код: Выделить всё

<script> /* "Пользовательский HTML" -> "Кастомизация вида страницы" */
if (location.search == '?module=configuration/custom_html') {

$('.form-body:first').prepend('<div class="tabbable tabbable-custom"><ul class="nav nav-tabs"><li class="active"><a href="#tab_1" data-toggle="tab" aria-expanded="true">&lt;/head&gt;</a></li><li class=""><a href="#tab_2" data-toggle="tab" aria-expanded="false">&lt;/body&gt;</a></li></ul><div class="tab-content"><div class="tab-pane active" id="tab_1"></div><div class="tab-pane" id="tab_2"></div></div></div>');

var at1 = $("a[href='#tab_1'");
var fg1 = $($('.form-group')[0]);
var at2 = $("a[href='#tab_2'");  
var fg2 = $($('.form-group')[1]);
  
at1.focus().click();
fg1.appendTo($('#tab_1'));
  
setTimeout(() => { // Пришлось немного подождать))
  at2.focus().click();
  fg2.appendTo($('#tab_2'));
}, 200); // увеличить таймаут, если ломает вид

labels = $('.control-label');
labels.removeClass('control-label').addClass('text-muted');
fields = $('.form-control.code-mirror').closest('div');
fields.removeClass('col-md-9').addClass('col-md-12');
}

</script>


⬆️ другие плюшки

🤙
Изображение
Ответить