Статус уроков «Задание не принято» в списке уроков на геткурс
Как это сделать?
1. Добавить класс для уроков с отклоненным ответом на задание.
Это можно сделать с помощью js-кода, который сделает запрос в уроки, определит те из них, в которых задание не принято и добавит таким урокам класс, например
В стилях прописать обращение к нашему новому добавленному классу для непринятых уроков
Коды на странице со списком уроков
JS-код в блок "Javascript"
Простой пример CSS:
Для того чтобы выполнить коды для всех уроков в аккаунте можно прописать в поле Счетчики и прочие скрипты для BODY
* Коды для аккаунта более удобнее хранить и подключать с помощью тем
Как это сделать?
1. Добавить класс для уроков с отклоненным ответом на задание.
Это можно сделать с помощью js-кода, который сделает запрос в уроки, определит те из них, в которых задание не принято и добавит таким урокам класс, например
mission_rejected
2. Оформить уроки с помощью css-стилейВ стилях прописать обращение к нашему новому добавленному классу для непринятых уроков
Коды на странице со списком уроков
JS-код в блок "Javascript"
// СКРИПТ ДЛЯ СТАТУСА УРОКА "ОТКЛОНЕН"
$(function () {
if (window.location.href.indexOf("/teach/control/stream/view/id") == -1) return;
// Название класса, который будет добавлен к урокам с отклоненным заданием
const missionRejectedClass = "mission_rejected";
const lessons = $(".lesson-list li.user-state-has_mission, .lesson-list li.user-state-need_accomplish").not(`.${missionRejectedClass}`);
if (!lessons.length) return;
lessons.each((_, lesson) => {
const lessonId = $(lesson).attr("data-lesson-id");
const lessonUrl = `/pl/teach/control/lesson/webview?id=${lessonId}&mode=mission`;
$.getJSON(lessonUrl, data => {
const pageHtml = $("<div/>").html(data.data.html);
if (pageHtml.find(".lt-lesson-mission-block .answer-status-label span").hasClass("glyphicon-ban-circle")) {
$(lesson).addClass(missionRejectedClass);
}
});
});
});
*Этот js-код добавит класс mission_rejected
для непринятых уроков.Простой пример CSS:
/* СТИЛИ ДЛЯ СТАТУСА УРОКА "ОТКЛОНЕН" */
li.mission_rejected .item-a {
position: relative;
}
li.mission_rejected .item-a::before {
content: "\f071 \00a0 Задание не принято";
display: block;
position: absolute;
top: 10px;
right: 10px;
font-family: "FontAwesome", "proxima-nova", sans-serif;
color: #e74c3c;
z-index: 5;
}
@media (max-width: 767px) {
li.mission_rejected .item-a::before {
top: 2px;
font-size: 12px;
}
}
*Можно прописать свои стили, главное уточнять обращение прописывая добавленный скриптом классДля того чтобы выполнить коды для всех уроков в аккаунте можно прописать в поле Счетчики и прочие скрипты для BODY
<style>* Прежде чем перенести на аккаунт рекомендую сначала протестировать на одном списке уроков
/* СТИЛИ ДЛЯ СТАТУСА УРОКА "ОТКЛОНЕН" */
.lesson-list li.mission_rejected .item-a {
position: relative;
}
.lesson-list li.mission_rejected .item-a::before {
content: "\f071 \00a0 Задание не принято";
display: block;
position: absolute;
top: 10px;
right: 10px;
font-family: "FontAwesome", "proxima-nova", sans-serif;
color: #e74c3c;
z-index: 5;
}
@media (max-width: 767px) {
.lesson-list li.mission_rejected .item-a::before {
top: 2px;
font-size: 12px;
}
}
</style>
<script>
// СКРИПТ ДЛЯ СТАТУСА УРОКА "ОТКЛОНЕН"
$(function () {
if (window.location.href.indexOf("/teach/control/stream/view/id") == -1) return;
// Название класса, который будет добавлен к урокам с отклоненным заданием
const missionRejectedClass = "mission_rejected";
const lessons = $(".lesson-list li.user-state-has_mission, .lesson-list li.user-state-need_accomplish").not(`.${missionRejectedClass}`);
if (!lessons.length) return;
lessons.each((_, lesson) => {
const lessonId = $(lesson).attr("data-lesson-id");
const lessonUrl = `/pl/teach/control/lesson/webview?id=${lessonId}&mode=mission`;
$.getJSON(lessonUrl, data => {
const pageHtml = $("<div/>").html(data.data.html);
if (pageHtml.find(".lt-lesson-mission-block .answer-status-label span").hasClass("glyphicon-ban-circle")) {
$(lesson).addClass(missionRejectedClass);
}
});
});
});
</script>
* Коды для аккаунта более удобнее хранить и подключать с помощью тем
🔥21
😇 JS скрипт для файлового хранилища Getcourse
Написал скриптец чтобы работать с файловым хранилищем геткурса было не так больно
Постоянно им пользуюсь, либо устанавливаю в настройки аккаунта либо локально в браузере выполняю(с помощью расширения хрома), мне так гораздо комфортнее и быстрее работать с файлами
Написал инструкцию и выложил код тут:
https://teletype.in/@aston_max/getcourse-file-storadge-script
Написал скриптец чтобы работать с файловым хранилищем геткурса было не так больно
Постоянно им пользуюсь, либо устанавливаю в настройки аккаунта либо локально в браузере выполняю(с помощью расширения хрома), мне так гораздо комфортнее и быстрее работать с файлами
Написал инструкцию и выложил код тут:
https://teletype.in/@aston_max/getcourse-file-storadge-script
❤🔥20🔥11❤5💯2
Как заменить текст в блоке продления покупки
Блок продления покупки выводит информацию для ученика сколько ещё дней доступен тренинг. Иногда нужно показать что эти дни доступа относятся к другому (поддержка, база знаний и др.)
Можно немного поменять текст в блоке с помощью скрипта, который заменит стандартную строку "Тренинг доступен" на нужную нам формулировку.
Написал для этого js-код, а самому блоку добавил стилизации.
Коды выложил тут:
https://teletype.in/@aston_max/edit-product-block-on-getcourse
Блок продления покупки выводит информацию для ученика сколько ещё дней доступен тренинг. Иногда нужно показать что эти дни доступа относятся к другому (поддержка, база знаний и др.)
Можно немного поменять текст в блоке с помощью скрипта, который заменит стандартную строку "Тренинг доступен" на нужную нам формулировку.
Написал для этого js-код, а самому блоку добавил стилизации.
Коды выложил тут:
https://teletype.in/@aston_max/edit-product-block-on-getcourse
🔥32⚡3🙏2
Блок "Аккордеон" на Getcourse
Аккордеон-блок на геткурсе можно применить для описания популярных вопросов и ответов, мини-инструкций и т.п.
Часто подобный блок можно встретить на продающих страницах, в нем описывают популярные возражения, вопросы, сомнения и закрывают их в раскрывающейся при клике панели.
Получился довольно простой и универсальный блок в использовании
Инструкция тут:
https://teletype.in/@aston_max/getcourse-accordeon-block
В комментариях к посту скину готовые экспорты чтобы можно было быстро скопировать-вставить😊
Аккордеон-блок на геткурсе можно применить для описания популярных вопросов и ответов, мини-инструкций и т.п.
Часто подобный блок можно встретить на продающих страницах, в нем описывают популярные возражения, вопросы, сомнения и закрывают их в раскрывающейся при клике панели.
Получился довольно простой и универсальный блок в использовании
Инструкция тут:
https://teletype.in/@aston_max/getcourse-accordeon-block
В комментариях к посту скину готовые экспорты чтобы можно было быстро скопировать-вставить😊
Teletype
Блок "Аккордеон" на Getcourse
Аккордеон-блок на геткурсе можно применить для описания популярных вопросов и ответов, мини-инструкций и т.п.
🔥39⚡1
🛠 Фиксим баг с кнопкой просмотра в редакторе "Настроить вид"
В режиме "Настроить вид" на геткурсе есть кнопка просмотра страницы. По умолчанию она у меня работает некорректно, просто обновляет страницу и оставляет в этом же режиме редактирования
Проблемку решает скрипт, который преобразует элемент кнопки в элемент ссылки(визуально все остается без изменений), чтобы при нажатии открывался просмотр страницы. Это исправляет баг + для меня удобно нажимать на колесико мыши для открытия страницы в новой вкладке
JS-код:
Рекомендую вставлять код в тему во вкладку JS, а саму тему подключать в поле BODY
Если вставлять не через тему, то этот код нужно просто обернуть в тег script, после вставки сохранить
В режиме "Настроить вид" на геткурсе есть кнопка просмотра страницы. По умолчанию она у меня работает некорректно, просто обновляет страницу и оставляет в этом же режиме редактирования
Проблемку решает скрипт, который преобразует элемент кнопки в элемент ссылки(визуально все остается без изменений), чтобы при нажатии открывался просмотр страницы. Это исправляет баг + для меня удобно нажимать на колесико мыши для открытия страницы в новой вкладке
JS-код:
// Скрипт для кнопки просмотра в редакторе "Настроить вид"Для применения кода на всем аккаунте его нужно вставлять в настройки аккаунта в поле "Счетчики и прочие скрипты для BODY"
if (window.userInfo.isAdmin &&
(window.location.pathname.includes("editMode/1") || window.location.search.includes("editMode=1"))) {
$(function () {
const btnView = $('.panel-body .btn-preview');
if (btnView.length == 0) return;
const url = window.location.href.replace("/editMode/1", "").replace("editMode=1", "editMode=0");
const linkElem = `<a href="${url}" class='btn btn-preview btn-xs btn-default'>${btnView.html()}</a>`;
btnView.replaceWith(linkElem);
});
}
Рекомендую вставлять код в тему во вкладку JS, а саму тему подключать в поле BODY
Если вставлять не через тему, то этот код нужно просто обернуть в тег script, после вставки сохранить
<script>
ТУТ_JS_КОД
</script>
Если нет доступа к настройкам аккаунта для вставки кода, скрипт можно выполнять локально в своем браузере с помощью расширения. Например для хрома - User JavaScript and CSS🔥25⚡3👍2❤🔥1🐳1
Макс и компоненты | Getcourse components
Video
Кнопка навигации «Прокрутить наверх». Код для getcourse
Показываем кнопку при определенном значении прокрутки страницы. При нажатии на эту кнопку происходит плавный скролл до начала страницы.
https://teletype.in/@aston_max/button-scroll-top
Показываем кнопку при определенном значении прокрутки страницы. При нажатии на эту кнопку происходит плавный скролл до начала страницы.
https://teletype.in/@aston_max/button-scroll-top
Teletype
Кнопка навигации «Прокрутить наверх». Код для getcourse
Что делает код:
🔥28👍2
Forwarded from Максим Калмыков
This media is not supported in your browser
VIEW IN TELEGRAM
типо такого?
🔥7
Forwarded from Максим Калмыков
В настройки акка
<script>
if (window.location.pathname.indexOf("/pl/tasks/mission/process") !== -1) {
$(document).ready(function () {
$('#testing > div').before(`
<style>
#testing {
height: auto !important;
}
.testing_header {
position: relative;
margin: -20px -20px 20px -20px;
border-radius: 3px 3px 0 0;
display: block;
height: 40px;
background-color: #428bca;
cursor:move;
}
.testing_header > a.close-btn {
position: absolute;
right: 5px;
top: 5px;
}
</style>
<div class='testing_header'>
<a href="javascript:void(0)" class="btn btn-sm btn-default close-btn">Закрыть</a>
</div>
`);
setTimeout(() => {
$('#testing')
.draggable({ handle: '.testing_header', cancel: '.btn' });
$('.testing_header > a.close-btn').on('click', () => {
$('.standard-page-actions > .btn-testing').click();
})
}, 600);
});
}
</script>
🔥9👍1
Максим Калмыков
типо такого?
Делился когда то прикольной штукой для процессов в геткурсе, пусть тут тоже будет )
Код вставлять в настройки аккаунта в BODY
Код вставлять в настройки аккаунта в BODY
❤12🔥1
🛠 Как убрать лишний отступ допполя в геткурс форме
Есть такая особенность верстки в допполях формы, при отсутствии заголовка поля остается лишний отступ
Как вариант, это можно поправить так:
1. В настройках допполя задать ему класс
Есть такая особенность верстки в допполях формы, при отсутствии заголовка поля остается лишний отступ
Как вариант, это можно поправить так:
1. В настройках допполя задать ему класс
hide_label
2. Прописать css код в стилях блока формы или в отдельном css блоке.hide_label label.field-label {Готово 😊
display: none;
}
🔥31👍1
Как выровнять кнопки в блоке тарифов на геткурс ?
Ответ: с помощью css-кода ✨
Речь идет о блоках в конструкторе гк, их обычно используют для тарифов:
- Блок: Картинка - подзаголовок - заголовок - текст - кнопка
- Блок: Несколько предложений
Чтобы сделать магию выравнивания кнопок на одном уровне можно добавить такой css-код:
*в мобильной версии все будет хорошо с отступом кнопки
Готово 🤝
Ответ: с помощью css-кода ✨
Речь идет о блоках в конструкторе гк, их обычно используют для тарифов:
- Блок: Картинка - подзаголовок - заголовок - текст - кнопка
- Блок: Несколько предложений
Чтобы сделать магию выравнивания кнопок на одном уровне можно добавить такой css-код:
.lt-tsr-content {*код можно добавить в стили блока или в отдельный css-блок
display: flex;
flex-direction: column;
height: 100%;
}
.lt-tsr-content .button {
margin: auto 0 0 0;
}
*в мобильной версии все будет хорошо с отступом кнопки
Готово 🤝
🔥30👍3❤🔥2🎉1
🛠 Длинные ссылки, которые ломают страницу на маленьких экранах
Такое иногда можно встретить в уроках на геткурсе, когда слишком длинные ссылки встроены в контент и если на десктопе все ок, то на мобильных устройствах они не помещаются и создают ненужную горизонтальную прокрутку страницы.
Варианты как это исправить:
1. Помещать ссылки в кнопки
2. Встраивать ссылки в часть текста
3. С помощью CSS-кода включить перенос неразрывного текста для ссылок
Такое иногда можно встретить в уроках на геткурсе, когда слишком длинные ссылки встроены в контент и если на десктопе все ок, то на мобильных устройствах они не помещаются и создают ненужную горизонтальную прокрутку страницы.
Варианты как это исправить:
1. Помещать ссылки в кнопки
2. Встраивать ссылки в часть текста
3. С помощью CSS-кода включить перенос неразрывного текста для ссылок
body a {Починили 😊
word-wrap: break-word;
white-space: normal;
overflow-wrap: anywhere;
}
🔥30❤5
⭐️ Оформить модуль, в котором уроки недоступны + вывести дату выхода первого урока. JS код для списка тренингов в getcourse
Суть в том, чтобы присвоить класс модулю, в котором нет доступных уроков и по этому классу стилизовать его можно как угодно. В данном варианте стилизация сделана для примера
Коды:
https://teletype.in/@aston_max/getcourse-modules-1
Суть в том, чтобы присвоить класс модулю, в котором нет доступных уроков и по этому классу стилизовать его можно как угодно. В данном варианте стилизация сделана для примера
Коды:
https://teletype.in/@aston_max/getcourse-modules-1
🔥22❤3
📍Как скрыть метод оплаты на странице оплаты заказа в геткурс по условию минимальной стоимости заказа. На примере Тинькофф Кредит
Для этого понадобится js код, который нужно будет прописать в блоке javascript в редакторе страницы оплаты
Что делаем в коде:
1. Устанавливаем числовое значение минимальной суммы для выполнения кода
2. Получаем числовое значение цены из блока "Итого к оплате"
3. Прописываем условие: если установленная сумма больше чем "Итого к оплате" - выполнить код
т.е. на странице будет выполнен скрипт (например скрытие определенного метода оплаты), если сумма к оплате меньше чем мы установили в коде
Пример js-кода для скрытия Тинькофф Кредит если сумма меньше чем 10000 (можно поменять в коде):
Для этого понадобится js код, который нужно будет прописать в блоке javascript в редакторе страницы оплаты
Что делаем в коде:
1. Устанавливаем числовое значение минимальной суммы для выполнения кода
2. Получаем числовое значение цены из блока "Итого к оплате"
3. Прописываем условие: если установленная сумма больше чем "Итого к оплате" - выполнить код
т.е. на странице будет выполнен скрипт (например скрытие определенного метода оплаты), если сумма к оплате меньше чем мы установили в коде
Пример js-кода для скрытия Тинькофф Кредит если сумма меньше чем 10000 (можно поменять в коде):
$(function() {
// Минимальная стоимость заказа для выполнения скрипта
const minPrice = 10000;
// Получаем стоимость заказа
const offerPrice = Number.parseInt($('.deal-finish-price-title > b').eq(0).text().replaceAll(' ', '').replace('руб.', ''));
// Если стоимость заказа меньше чем minPrice
if (offerPrice < minPrice) {
// Скрываем тинькофф-кредит
$('#tinkoffcredit').hide();
// Скрыть заголовок "Кредит/рассрочка:"
$('.credit-title').hide();
// ...
}
})
✨🔥25❤5⚡2❤🔥1
📍Как автоматически записать данные в поле анкеты на геткурс. На примере записи даты заполнения анкеты
Написал инструкцию о том, как записать автоматически дату заполнения анкеты в скрытое поле анкеты с помощью js кода.
т.е. в момент захода пользователя на страницу с анкетой, за него заполнится скрытое, заранее созданное и добавленное поле "Дата заполнения анкеты"
Это позволит фильтровать анкеты по датам заполнения.
Записать дату заполнения анкеты в поле с типом "Дата" - самое очевидное применение функции, но скрипт можно адаптировать и для других каких-нибудь записей данных в поля анкеты.
Расписал последовательность тут
https://teletype.in/@aston_max/getcourse-put-data-to-survey-input
протестируйте 😊
Написал инструкцию о том, как записать автоматически дату заполнения анкеты в скрытое поле анкеты с помощью js кода.
т.е. в момент захода пользователя на страницу с анкетой, за него заполнится скрытое, заранее созданное и добавленное поле "Дата заполнения анкеты"
Это позволит фильтровать анкеты по датам заполнения.
Записать дату заполнения анкеты в поле с типом "Дата" - самое очевидное применение функции, но скрипт можно адаптировать и для других каких-нибудь записей данных в поля анкеты.
Расписал последовательность тут
https://teletype.in/@aston_max/getcourse-put-data-to-survey-input
протестируйте 😊
Teletype
Автоматически записать данные в поле анкеты геткурс. На примере записи даты заполнения анкеты
Переходим в раздел Анкеты. В созданной анкете создаем поле даты. Поле можно назвать "Дата заполнения анкеты". Сохраняем
🔥21👍5