Аня про Геткурс. Верстка, скрипты и решения
Open in Telegram
Нужна интеграция, скрипты или верстка на Геткурсе? Пишите — @araviw В этом канале публикую советы по верстке на Геткурсе, обзоры собственных решений и скриптов, решение "логических" задачек на платформе 🔥Разработчик года🔥 GetTechAwards'2022-2023
Show more2 113
Subscribers
No data24 hours
+97 days
+2330 days
Posts Archive
","datePublished":"2023-06-28T10:47:57Z","dateModified":"2023-06-28T10:47:57Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":9,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/118","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/118","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/118","headline":"Выбор варианта рассрочки прямо на ленде ⚙️ Как работает Пользователь может или натыкать (гифка) вариант расср…","articleBody":"Выбор варианта рассрочки прямо на ленде\n\n⚙️ Как работает\n\nПользователь может или натыкать (гифка) вариант рассрочки, чтобы увидеть какой у него будет платеж или сразу выбрать из предложенных вариантов, где скрипт считает сумму сам.\n\nЗатем он выбирает период и заполняет поля. Далее жмет на кнопку \"Оформить\" и сразу следует проброс на Тинькоф с нужным вариантом оплаты\n\n⚡️Плюсы\nПользователь сразу видит какие предложения по рассрочке ему доступны и какой первый взнос\n\nПереход к рассрочке идет без лишнего клика на странице оплаты (удобство пользователя превыше всего!)\n\nСразу после отправки заявки и ее одобрения, статус заказа меняется в ГК\n\nСобрано без лишних интеграций, поэтому работает \"из коробки\" самого ГК\n\nНа скринах два варианта оформления - \"лендовский\" и лаконичный белый вертикальный\n\nУдобство для админа - нужно только указать стартовое предложение, скрипт сам дальше все считает сам.","datePublished":"2023-06-14T19:00:24Z","dateModified":"2023-06-14T19:00:24Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":10,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/117","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/117","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/117","headline":"мне тут уже сказали, что без пол-литра не разобраться 🍺 😄 как и все новое, требует узнавания: 1. если нужно п…","articleBody":"мне тут уже сказали, что без пол-литра не разобраться 🍺 😄\n\nкак и все новое, требует узнавания:\n\n1. если нужно получить русское название с пробелом - пишите, сделаю под вас\n\n2. если нужно получить без пробела, то замените ABCDE на русский текст\n\n3. если нужно просто получить максимальное значение, то оставляйте ABCDE","datePublished":"2023-06-08T18:34:51Z","dateModified":"2023-06-08T18:34:51Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":11,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/116","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/116","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/116","headline":"🥸 Проблемы 1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли) 2. если пришли - то можно…","articleBody":"🥸 Проблемы\n1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли)\n2. если пришли - то можно работать дальше\n3. если не пришли, то нужно поставить задержку в пару минут, и снова отправить данные. Зацикливать не нужно, обычно за 2 захода все уходит и приходит обратно.\n\nИ самое важное - как работать с этим, если допполя содержат русский и нужно тоже получить русский в ответ? 🤬 \n\n❓ Если нужно получить в ответ русское название с пробелом - лучше позвать меня, и я сделаю под вас новый вариант скрипта, тк с пробелом не уйдет запрос\n\n✖️самочувствие вчера={object.peremennay5}\nа вот без пробела можно\n☑️ самочувствие={object.peremennay5}\n\n❓ Если сами переменные с пробелами (точнее, заголовки полей) - то их нужно переименовать в латиницу, тк не уйдет запрос.\n\n👀Ань, а что делать в итоге-то?\n\n1. Создать процесс по пользователям\n2. Создать текстовое поле, в которое придет результат\n3. Поправить поля по названиям\n4. Создать блок \"Вызов url\"\n5. В url вставить урл с вашими переменными\n6. Указать в какое поле записать результат\n7. Сделать проверку на то, пришло ли значение\n\nВсе! Дальше вы уже работаете, исходя из конечной задачи. Само сравнение вы произвели\n\n💪 В скрипте меняете только переменные, сам домен остается такой, какой он есть\n\nПриятной работы!","datePublished":"2023-06-08T18:16:15Z","dateModified":"2023-06-08T18:16:15Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":12,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/114","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/114","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/114","headline":"🤩 ПОМЕРИМСЯ... полями? На ГК нет варианта, чтобы сравнить допполя, поэтому для геймификации приходится исполь…","articleBody":"🤩 ПОМЕРИМСЯ... полями? \n\nНа ГК нет варианта, чтобы сравнить допполя, поэтому для геймификации приходится использовать серверный скрипт, который получит значения и вернет в ГК искомый максимум. \n\nНо бывают разные случаи. Например, нам ведь не интересно, какое значение было максимальным - нам важно узнать какое именно поле им являлось (по названию). Или, получить перечисление полей с их значениями.\n\n🌀 Данное решение будет особенно актуально, если вы используете опросники в телеграме или геймификацию, в результате которой появляются значения полей пользователя.\n\nИтак, скрипт поддерживает несколько форматов работы\n\n1️⃣ Обычный\nhttps://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&E=25\nВернет значение как\nЕ=25, D=14, C=10, B=6, A=5\n\n2️⃣ С указанием максимального количества \nhttps://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&E=25&max_fields=1\nВернет значение как\nЕ=25\nесли &max_fields=3\nЕ=25, D=14, C=10\n(те п1 это по умолчанию max_fields равное количеству переменных в запросе)\n\n3️⃣ Вывод имени поля\nhttps://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&%D0%95=25&name_fields\nВернет значение как \nE\n\n\n🥵 Как с этим работать \nСам урл такой\nhttps://lumpopo.ru/araviw/maxfields.php?A={object.peremennay1}&B= {object.peremennay2}&C={object.peremennay3}&D={object.peremennay4}&E={object.peremennay5} (к нему еще можно добавить хвостик name_fields или значение max_fields)\n\nгде ABCDE - текстовые значения, а {object.peremennay1} названия ваших переменных, те\n\nесли поле называется homework, то в урле оно примет вид {object.homework} и именно это отдаст в запросе значение поля","datePublished":"2023-06-08T18:15:53Z","dateModified":"2023-06-08T18:15:53Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":13,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/113","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/113","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/113","headline":"🥸 Проблемы 1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли) 2. если пришли - то можно…","articleBody":"🥸 Проблемы\n1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли)\n2. если пришли - то можно работать дальше\n3. если не пришли, то нужно поставить задержку в пару минут, и снова отправить данные. Зацикливать не нужно, обычно за 2 захода все уходит и приходит обратно.\n\nИ самое важное - как работать с этим, если допполя содержат русский и нужно тоже получить русский в ответ? 🤬 \n\n❓ Если нужно получить в ответ русское название с пробелом - лучше позвать меня, и я сделаю под вас новый вариант скрипта, тк с пробелом не уйдет запрос\n\n✖️самочувствие вчера={object.peremennay5}\nа вот без пробела можно\n☑️ самочувствие={object.peremennay5}\n\n❓ Если сами переменные с пробелами (точнее, заголовки полей) - то их нужно переименовать в латиницу, тк не уйдет запрос.\n\n👀Ань, а что делать в итоге-то?\n\n1. Создать процесс по пользователям\n2. Создать текстовое поле, в которое придет результат\n3. Поправить поля по названиям\n4. Создать блок \"Вызов url\"\n5. В url вставить урл с вашими переменными\n6. Указать в какое поле записать результат\n7. Сделать проверку на то, пришло ли значение\n\nВсе! Дальше вы уже работаете, исходя из конечной задачи. Само сравнение вы произвели\n\n💪 В скрипте меняете только переменные, сам домен остается такой, какой он есть\n\nПриятной работы!","datePublished":"2023-06-08T18:15:52Z","dateModified":"2023-06-08T18:15:52Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":14,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/112","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/112","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/112","headline":"🎴Гадание, или выбор карточки с подарком Один из вариантов геймификации, когда от судьбы не уйти 😄 Отличный ва…","articleBody":"🎴Гадание, или выбор карточки с подарком\n\nОдин из вариантов геймификации, когда от судьбы не уйти 😄\nОтличный вариант для розыгрыша призов, прогревов и прочих активностей.\n\nКак работает:\n1. Пользователь выбирает карту\n2. Ему показывается подарок\n3. Пользователь заполняет форму, делая основной заказ \n4. После оплаты ему выдается выпавший бонус\n(пункт 3 может отсутствовать или идти после пункта 4)\n\n\nОсобенности\n1. Работает для всех (авторизованный или неавторизованный пользователь)\n2. Значение карты сохраняется, те перевыбрать ее нельзя\n3. В коде сами подарки не видны, те подглядеть нельзя (самым прошаренным) \n4. Какие-то подарки могут быть, но выпадать редко (настраивается процент показа)\n5. Можно настроить так, чтобы количество карт к переворачиваю было больше 1 и зависело от внешних условий\n6. С точки зрения ГК выдачу подарка можно организовать по схеме, удобной админу\n7. Выдавать можно что угодно - продукты, скидки, бонусы, бонусные рубли и тд и тп.\n\nСам конечный интерфейс зависит от страницы и стилизуется под нее 🧑💻","datePublished":"2023-06-06T12:33:10Z","dateModified":"2023-06-06T12:33:10Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":15,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/111","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/111","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/111","headline":"Аня про Геткурс. Верстка, скрипты и решения","datePublished":"2023-06-06T12:32:47Z","dateModified":"2023-06-06T12:32:47Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":16,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/110","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/110","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/110","headline":"Ну вот и оно!! 🎂🎈 Днюшка наступила⚡️ Поздравления конечно принимаются 🥰 Но и к вам с непустыми руками. Тортик…","articleBody":"Ну вот и оно!! 🎂🎈\n\nДнюшка наступила⚡️\n\nПоздравления конечно принимаются 🥰\n\nНо и к вам с непустыми руками. Тортика нетути, зато есть небольшой подарок 🙃\n\nНамбер ван!\nМногие писали, что забыли, пропустили, не знали, не успели и прочие \"не\" - суть которых одна. Забыли забрать бонусы с Гетс6.\n\nНу что же. Напишите Декану кодовое слово (оно прежнее, с конфы) до конца воскресенья (4 июня 23:59) - он откроет все, что нужно\n\nНамбер ван и половина!\n\nУ тех, кто знает что ему это полагается - урок про бонусные рубли с таймером там же ☺️ И скрипты для него. Честно, я пыталась коротко, но там часик (но видео - две штук) 🧑💻\n\n——————-\n\nИ еще... и еще... Хотела пообещать вам в скором времени обзорные посты по технологии решения очень частых вопросов по ГК, но пока это секрет 😇\n\n——————-\n🥳 А вообще это был очень крутой год\n\n——————-\n\nИ звезда во лбу горит! (куда же без классики)","datePublished":"2023-06-01T11:40:47Z","dateModified":"2023-06-01T11:40:47Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":17,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/109","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/109","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/109","headline":"УПРАВЛЕНИЕ КОНТЕНТОМ ЧЕРЕЗ РОЛЬ У ГК есть два \"места\", через которые вы можете использовать получение информа…","articleBody":"УПРАВЛЕНИЕ КОНТЕНТОМ ЧЕРЕЗ РОЛЬ\n\nУ ГК есть два \"места\", через которые вы можете использовать получение информации о роли пользователя в текущий момент.\n\n1️⃣Первое - через данные страницы и конкретно window.userInfo\n\nЯ люблю использовать этот вариант, особенно когда речь идет про большие скрипты и вариативность настройки аккаунта под разные роли, тк скриптоv можно повесить класс куда угодно (а лучше прям на body), а значит мы обеспечиваем себе легкое управление контентом через стили.\n\n⚙️ Например\n\nif(window.userInfo.isAdmin) {\n $('body').addClass('role-admin')\n}\n\n.role-admin {\nстили любой вложенности\n}\n\n2️⃣ Второй вариант - использовать уже текущий класс, который \"стоит рядом\" с gc-main-content \n\nТам будет gc-user-admin или gc-user-user\n\nМинус - не сможем влиять на меню, тк оно не входит в этот див. Можно \"перевестить\" скриптом, но тут в дело вступает пункт 1 :)) \n\nНапример наша задача, скрыть от учеников тренинг, оставить для админа\n\n.gc-user-user .stream-table tr[data-training-id=\"00000\"] {\n display:none;\n}\n\nНапример, только для админа добавить новое название тренинга к текущему\n\n.gc-user-admin .stream-table tr[data-training-id=\"0000\"] .stream-title:before {\n content: \"Новое название\";\n display: block;\n color: #b320a1;\n font-style: italic;\n font-size: 15px;\n}\n\nВ этом случае мы добавляем значение через создание псевдоэлемента. Поэтому, если элемент занят, учитывайте это :))","datePublished":"2023-05-12T10:10:24Z","dateModified":"2023-05-12T10:10:24Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":18,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/108","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/108","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/108","headline":"ПАРСЕР ПО ВЫГРУЗКЕ ДАННЫХ С ГК ❓Особенности 1️⃣⚡️ Ключевая - работает, имитируя пользователя и пользовательск…","articleBody":"ПАРСЕР ПО ВЫГРУЗКЕ ДАННЫХ С ГК\n\n❓Особенности\n\n1️⃣⚡️ Ключевая - работает, имитируя пользователя и пользовательские операции. поэтому не рассматривается самим ГК как что-то вредоносное и скрипт ГК не банит\n\n2️⃣ Можно делать любые операции с доступными данными на странице\n\n3️⃣ На видео вы видите лишь частичную работу скрипта, когда он выгружает ответы пользователей\n\n👑 Еще скрипт умеет\n\n🔤выгружать ответы кураторов (попадают в блоки рядом с дз конкретного ученика)\n\n🔤 выгружать время ответов, рассчитывая дедлайны, что удобно для контроля за работой кураторов и качеству обратной связи\n\n🔤 возвращать какие-то данные из таблицы в ГК в карточку пользователя\n\n🫥 удалять домашние задания ученика, готовя тренинг к повторному прохождению\n\n❓Формат работы\n\nПоскольку апи самих Гугл таблиц не \"резиновое\", то учитываются лимиты на вставку данных внутри них. Это означает, что при первой загрузке данных придется немного подождать :))\n\nПарсер можно настроить на любое время обхода (раз в час, раз в сутки, одноразовое прохождение и тд)\n\nПарсером можно управлять самому админу - это осуществляется засчет того, что есть перечень урлов для обхода и их активность можно менять. Данные с новых урлов попадают на новые листы в таблице","datePublished":"2023-05-08T12:24:28Z","dateModified":"2023-05-08T12:24:28Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":19,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/107","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/107","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/107","headline":"Написала решение для последовательной анкеты Что оно делает 1. Если пользователь неавторизован, а согласие ид…","articleBody":"Написала решение для последовательной анкеты\n\nЧто оно делает\n\n1. Если пользователь неавторизован, а согласие идет из настроек аккаунта, то чекбокс виден только на последнем шаге, а не на протяжении всех ответов\n2. Переход к следующему шагу осуществляется автоматически после ответа в текущем вопросе, если сам вопрос не предусматривает множественный вариант ответа\n3. Если текстовой вопрос не обязательный, то его можно пропустить\n\nОдним словом, чиним баги от ГК :)\n\nЭтот вариант анкеты позволяет проходить опросник намного быстрее привычного варианта за счет как раз того, что ответы перелистываются сами","datePublished":"2023-05-01T18:57:01Z","dateModified":"2023-05-01T18:57:01Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}},{"@type":"ListItem","position":20,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/en/channels/1453630334-get_useful/posts/106","url":"https://telemetr.io/en/channels/1453630334-get_useful/posts/106","mainEntityOfPage":"https://telemetr.io/en/channels/1453630334-get_useful/posts/106","headline":"Автозаполнение или \"цвет настроения синий\" (голубой, желтый) Что это? Это автозаполнение. Из-за чего? Когда в…","articleBody":"Автозаполнение\n\nили \"цвет настроения синий\" (голубой, желтый)\n\nЧто это?\nЭто автозаполнение.\n\nИз-за чего?\nКогда вы выбираете сохраненный в браузере вариант\n\nЧем мешает?\nДа особо ничем, но иногда выбивается из стилистики оформления сайта, а конкретнее - формы\n\nКак победить?\n\ninput:-webkit-autofill,\ninput:-webkit-autofill:hover, \ninput:-webkit-autofill:focus { -webkit-box-shadow: inset 0 0 0 100px #fff !important; /* убрать цвет предзаполненного поля */}","datePublished":"2023-04-21T11:23:54Z","dateModified":"2023-04-21T11:23:54Z","author":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"publisher":{"@type":"Organization","name":"Аня про Геткурс. Верстка, скрипты и решения","url":"https://telemetr.io/en/channels/1453630334-get_useful","image":"https://img.tlmtr.io/c/1AnhEy/5224471044776115734?ty=x"},"commentCount":0}}]}

+2
+1
+1
+1

"Фиксики" для системной корзины
Если в скрине выше вас ничего не удивляет - вы счастливчик 😉
По умолчанию корзина в ГК умеет только добавлять позиции. Бедные пользователи порой кладут десятки товаров, потому что информационное сообщение не очень заметно, а кнопка не меняет свой статус 🤬
Удалить товар можно было только из просмотра корзины, теперь же удаление доступно сразу же со страницы :)
Обновление функционала для корзины можно взять в клубе.
Да-да, при загрузке страницы, если в корзине что-то есть, то кнопки тоже поменяют свой статус.
Что лечим дальше?
Типичная ситуация у спеца ГК
Пятница, хорошее настроение, а тут ГК упал 😅 (не, все в порядке с ним сейчас, это просто к слову пришлось)
Если вы еще не побаловались новыми эмодзи, то Emoji Kitchen ждет вас 😄
К ГК отношения не имеет, но настроение вам поднимет :))
Какие у вас необычные смайлы вышли?
Мульти-форматные блоки
У ГК по умолчанию есть колонка (она же обложка) с произвольным контентом, а есть "Блок: Две колонки с произвольным контентом". Так и получается, что все остальное - это уже плитки или сильная переделка макета.
Метод, описанный ниже, позволит вам комбинировать разные блоки на один экран.
Делаем экран где у нас должно быть три блока. Каждый блок - это две колонки с произвольным контентом. И все формы, обработчики - будет работать в рамках "родного" блока.
Берём:
1️⃣ css-код (вставляйте отдельным блоком)
/* поведение общего контейнера, в котором соберутся нужные блоки*/
.variable-column-all {
gap: 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
/* стили одного блока */
.variable-column-all .variable-column {
-webkit-box-flex: 1;
-ms-flex: 1 1 32%;
flex: 1 1 32%;
border: 2px solid #000;
border-radius: 25px;
}
/* если хотим изменить фон конкретного блока */
.variable-column-all .variable-column:nth-child(1) {
background-color: #deb1de;
}
.variable-column-all .variable-column:nth-child(3) {
background-color: #c5e8d5;
}
2️⃣ js-код
$(function() {
//Клонируем блоки
var clonedElements = $('.variable-column').clone(true);
// Скрываем исходные элементы
$('.variable-column').css('display', 'none');
// Добавляем скопированные элементы в .variable-column-all
clonedElements.appendTo('.variable-column-all');
});
3️⃣ пустой html-блок
В который вставляем
<div class="text-center variable-column-all"></div>
4️⃣ И сами блоки с классом variable-column
.
У меня это три двухколоночных. У каждого указан нужный класс.
Собираем, ставим, сохраняем! 🔥
🔥🔥🔥 Забыла!
Допишу отдельным постом :)
⚡️⚡️⚡️Это решение позволяет не только в рамках одного аккаунта работать, но и передавать данные между аккаунтами.
Например, если у вас идет регистрация на вебинар в аккаунте №1, а вот виджет и оплаты вы принимаете на аккаунт №2. Как сделать дожим тех, кто не оплатил? Ручками сопоставить. Или воспользоваться скриптом, который обновит данные в аккаунте №1, взяв их из аккаунта №2 ✈️
РАБОТА С ДАННЫМИ РАЗНЫХ ОБЪЕКТОВ
🥳 Создала решение, которое позволяет свободно поддерживать работу с данными, которые принадлежат разным типам объектов.
🏝 Когда вам пригодится это решение:
🟢 нужно переместить данные из системных значений в допполя
🟢 нужно переместить данные из одного допполе в другое допполе внутри одного типа объекта
🟢 нужно переместить данные из допполя одного объекта в допполе другого объекта
🟢 нужно использовать данные, которых у ГК вообще нет в доступе, они появляются только в процессах
Например, вам нужно "перекинуть" для работы данные пользователя из его карточки во все его заказы. Но сделать это нельзя, тк значение допполя пользователя никак не вписать в допполе заказа. С такой же проблемой вы столкнетесь, если вам нужно перекинуть системные метки в значения допполей самого пользователя.
⏳ Или например, вы хотите сделать точный обратный таймер окончания доступа в тренинге, для чего нужно вытащить данные из покупки (точнее, из переменной, которая есть только в процессе) и каким-то образом переместить в допполе пользователя.
Решение можно использовать не только для перемещения данных между разными типами объектов, но и для перемещения данных внутри одного типа (например, приравнять одно поле пользователя к другому, автоматически заполнить).
🫥Или даже для решения задач напрямую не связанных с полями, а именно с кастомизацией оформления. Например, вы делаете оформление, где у каждого ученика должна быть выведена фотография его учителя. Можно сделать костыль или поработать руками, а можно - взять значение пути к файлу аватарки преподавателя из переменной по покупкам и через это решение записать данные в карточку пользователя. В случае смены преподавателя - скрипт сам обновит данные.
Цена 10тр. Покупаете один раз, можете использовать в неограниченном количестве проектов. Техподдержка по запросу присутствует :) пишите @araviw
❤️ у участников ДиВ (тариф Профи) будет это в бонусах
Коллеги, насчет лимитов.
Стоит начать с того, что лимиты всегда были. Часть из вас как минимум сталкивалась с лимитами на загрузку пользователей в своих аккаунтах внутри админки. Этот лимит можно было отключить через техподдержку, и никому не отзывали, те ограничения были, хоть и не очень явные.
Теперь о размерах лимита по API.
1) Добавление пользователей в аккаунт это целевое действие по добавлению конкретно новых юзеров. Как таковые апдейты карточек пользователей через API не входят в значение лимита.
По сути дела мы говорим тут о том, что объем добавления пользователей превышает разрешенный объем самого аккаунта, что ведет к изменению тарифа. Если клиент увеличивает тариф, то для него уже новый лимит вступает в силу. Если не увеличивает, то он должен почистить базу. Тут выбор клиента - менять тариф или почистить базу. Просто принять решение о изменении тарифа нужно будет быстрее, чем обычно :)
Поэтому лимита по пользователям вполне хватит. Он с запасом
2) Добавление заказов
Количество заказов, добавленных через апи равно количеству пользователей. Целиком ли вся база покупает где-то "на стороне", отчего приходится делать импорт 100% количества заказов? Нет. Даже если предположить, что вы используете полностью прием платежей не в ГК, то все пользователи базы одномоментно не покупают.
Здесь может возникнуть вопрос в различного рода интеграциях, которые создают нулевые заказы внутри аккаунта. Но чаще всего такие заказы не создаются на всю базу. Создаются именно заказы по целевым действиям клиента. Даже если вы отслеживаете много целевых действий, то они опять же не идут по всей базе сразу. Поскольку лимит на месяц, то его вполне хватит.
И тут тоже - обновление заказа не учитывается в лимите
3) Платежи. Вероятно самое "тревожное" место в данной таблице.
Здесь есть два момента - текущие/будущие интеграции и то, как вы именно их проводите.
Начнем со второго. При анализе того, каким образом закрываются оплаты по заказам через API, было выявлено - что вы грузите или просто изменение статуса без платежа или полностью платеж единой суммой, те внутри одного заказа не используется частичная оплата, передаваемая через API, те тут один заказ = один платеж, не будет такого, что один заказ дает несколько платежей через API, что пропорционально увеличивает количество запросов.
Рассмотрим случай, что у вас школа на ГК, но все варианты оплат вы принимаете через стороннюю интеграцию платежной системы (или несколько систем), и затем догружаете платежи. Сколько реально у вас таких операций? Продают ли школы на такое количество сделок?
Да, такие проекты есть, но они являются скорее исключением, чем общей тенденцией (где по апи приходят платежи от "резервных" платежек). Цифры в лимитах появились как следствие анализа операций по данным. Сейчас в работе находится задача по тому, чтобы оцифровать данные внутри аккаунта - какие лимиты как использованы. Скоро появится.
И наверное самое важное.
Лимиты на все - календарные. Каждый месяц лимит начинается с начала.
Действует только на добавление новых данных, не касается операций по обновлению информации, которая уже есть внутри аккаунта.
Для всех старых интеграций, которые уже работают (те на все созданные и задействованные API ключи), лимиты индивидуально расширены. Сформированы на основании данных по прошлой работе API для аккаунта и еще небольшой плюс. Когда будет выведена информация по использованию лимитов внутри аккаунта, то вы сможете увидеть "свои" цифры. Но и тут ГК готов по запросу увеличить цифру, если она будет меньше, чем ваши текущие потребности, но тоже в индивидуальном порядке.
И еще про деньги.
Коснется новых интеграций.
Если взять средние цифры - 10тр средний чек и 750 платежей (Полководец). Может ли школа, получившая 7,5 млн позволить тебе доплату до следующего тарифа? Вполне может. Доплата составит мизерную часть этого дохода.
Поговорим про страшную картинку из этого поста?
Сначала - жуть какая. Ааа!
А потом - а не, все ок.
Если кратко - лимиты для новых интеграций.
Полная версия ниже
Покажу мини-лайфхак, который упростит жизнь вашим эксператам.
Почти все ссылки в ленте ответов открывают свое содержимое в текущем окне (особенно те, которые в допполях ответа). А это значит, что если вы забыли открыть подобное вложение в новом окне - то вы обречены на муки возвращения к изначальному ответу ученика и брожение туда-сюда...
Казалось бы, мелочь, но неприятно. А вот если бы все ссылки сразу открывались в новой вкладке, то это было невероятно удобно!
Потому что она сильно влияет на работу кураторов и скорость проверки дз.
Выбор варианта рассрочки прямо на ленде
⚙️ Как работает
Пользователь может или натыкать (гифка) вариант рассрочки, чтобы увидеть какой у него будет платеж или сразу выбрать из предложенных вариантов, где скрипт считает сумму сам.
Затем он выбирает период и заполняет поля. Далее жмет на кнопку "Оформить" и сразу следует проброс на Тинькоф с нужным вариантом оплаты
⚡️Плюсы
Пользователь сразу видит какие предложения по рассрочке ему доступны и какой первый взнос
Переход к рассрочке идет без лишнего клика на странице оплаты (удобство пользователя превыше всего!)
Сразу после отправки заявки и ее одобрения, статус заказа меняется в ГК
Собрано без лишних интеграций, поэтому работает "из коробки" самого ГК
На скринах два варианта оформления - "лендовский" и лаконичный белый вертикальный
Удобство для админа - нужно только указать стартовое предложение, скрипт сам дальше все считает сам.
мне тут уже сказали, что без пол-литра не разобраться 🍺 😄
как и все новое, требует узнавания:
1. если нужно получить русское название с пробелом - пишите, сделаю под вас
2. если нужно получить без пробела, то замените ABCDE на русский текст
3. если нужно просто получить максимальное значение, то оставляйте ABCDE
🥸 Проблемы
1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли)
2. если пришли - то можно работать дальше
3. если не пришли, то нужно поставить задержку в пару минут, и снова отправить данные. Зацикливать не нужно, обычно за 2 захода все уходит и приходит обратно.
И самое важное - как работать с этим, если допполя содержат русский и нужно тоже получить русский в ответ? 🤬
❓ Если нужно получить в ответ русское название с пробелом - лучше позвать меня, и я сделаю под вас новый вариант скрипта, тк с пробелом не уйдет запрос
✖️самочувствие вчера={object.peremennay5}
а вот без пробела можно
☑️ самочувствие={object.peremennay5}
❓ Если сами переменные с пробелами (точнее, заголовки полей) - то их нужно переименовать в латиницу, тк не уйдет запрос.
👀Ань, а что делать в итоге-то?
1. Создать процесс по пользователям
2. Создать текстовое поле, в которое придет результат
3. Поправить поля по названиям
4. Создать блок "Вызов url"
5. В url вставить урл с вашими переменными
6. Указать в какое поле записать результат
7. Сделать проверку на то, пришло ли значение
Все! Дальше вы уже работаете, исходя из конечной задачи. Само сравнение вы произвели
💪 В скрипте меняете только переменные, сам домен остается такой, какой он есть
Приятной работы!
🤩 ПОМЕРИМСЯ... полями?
На ГК нет варианта, чтобы сравнить допполя, поэтому для геймификации приходится использовать серверный скрипт, который получит значения и вернет в ГК искомый максимум.
Но бывают разные случаи. Например, нам ведь не интересно, какое значение было максимальным - нам важно узнать какое именно поле им являлось (по названию). Или, получить перечисление полей с их значениями.
🌀 Данное решение будет особенно актуально, если вы используете опросники в телеграме или геймификацию, в результате которой появляются значения полей пользователя.
Итак, скрипт поддерживает несколько форматов работы
1️⃣ Обычный
https://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&E=25
Вернет значение как
Е=25, D=14, C=10, B=6, A=5
2️⃣ С указанием максимального количества
https://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&E=25&max_fields=1
Вернет значение как
Е=25
если &max_fields=3
Е=25, D=14, C=10
(те п1 это по умолчанию max_fields равное количеству переменных в запросе)
3️⃣ Вывод имени поля
https://lumpopo.ru/araviw/maxfields.php?A=5&B=6&C=10&D=14&%D0%95=25&name_fields
Вернет значение как
E
🥵 Как с этим работать
Сам урл такой
https://lumpopo.ru/araviw/maxfields.php?A={object.peremennay1}&B= {object.peremennay2}&C={object.peremennay3}&D={object.peremennay4}&E={object.peremennay5} (к нему еще можно добавить хвостик name_fields или значение max_fields)
где ABCDE - текстовые значения, а {object.peremennay1} названия ваших переменных, те
если поле называется homework, то в урле оно примет вид {object.homework} и именно это отдаст в запросе значение поля🥸 Проблемы
1. после выполнения запроса, проверьте, пришли ли данные (а то мало ли)
2. если пришли - то можно работать дальше
3. если не пришли, то нужно поставить задержку в пару минут, и снова отправить данные. Зацикливать не нужно, обычно за 2 захода все уходит и приходит обратно.
И самое важное - как работать с этим, если допполя содержат русский и нужно тоже получить русский в ответ? 🤬
❓ Если нужно получить в ответ русское название с пробелом - лучше позвать меня, и я сделаю под вас новый вариант скрипта, тк с пробелом не уйдет запрос
✖️самочувствие вчера={object.peremennay5}
а вот без пробела можно
☑️ самочувствие={object.peremennay5}
❓ Если сами переменные с пробелами (точнее, заголовки полей) - то их нужно переименовать в латиницу, тк не уйдет запрос.
👀Ань, а что делать в итоге-то?
1. Создать процесс по пользователям
2. Создать текстовое поле, в которое придет результат
3. Поправить поля по названиям
4. Создать блок "Вызов url"
5. В url вставить урл с вашими переменными
6. Указать в какое поле записать результат
7. Сделать проверку на то, пришло ли значение
Все! Дальше вы уже работаете, исходя из конечной задачи. Само сравнение вы произвели
💪 В скрипте меняете только переменные, сам домен остается такой, какой он есть
Приятной работы!
🎴Гадание, или выбор карточки с подарком
Один из вариантов геймификации, когда от судьбы не уйти 😄
Отличный вариант для розыгрыша призов, прогревов и прочих активностей.
Как работает:
1. Пользователь выбирает карту
2. Ему показывается подарок
3. Пользователь заполняет форму, делая основной заказ
4. После оплаты ему выдается выпавший бонус
(пункт 3 может отсутствовать или идти после пункта 4)
Особенности
1. Работает для всех (авторизованный или неавторизованный пользователь)
2. Значение карты сохраняется, те перевыбрать ее нельзя
3. В коде сами подарки не видны, те подглядеть нельзя (самым прошаренным)
4. Какие-то подарки могут быть, но выпадать редко (настраивается процент показа)
5. Можно настроить так, чтобы количество карт к переворачиваю было больше 1 и зависело от внешних условий
6. С точки зрения ГК выдачу подарка можно организовать по схеме, удобной админу
7. Выдавать можно что угодно - продукты, скидки, бонусы, бонусные рубли и тд и тп.
Сам конечный интерфейс зависит от страницы и стилизуется под нее 🧑💻
Ну вот и оно!! 🎂🎈
Днюшка наступила⚡️
Поздравления конечно принимаются 🥰
Но и к вам с непустыми руками. Тортика нетути, зато есть небольшой подарок 🙃
Намбер ван!
Многие писали, что забыли, пропустили, не знали, не успели и прочие "не" - суть которых одна. Забыли забрать бонусы с Гетс6.
Ну что же. Напишите Декану кодовое слово (оно прежнее, с конфы) до конца воскресенья (4 июня 23:59) - он откроет все, что нужно
Намбер ван и половина!
У тех, кто знает что ему это полагается - урок про бонусные рубли с таймером там же ☺️ И скрипты для него. Честно, я пыталась коротко, но там часик (но видео - две штук) 🧑💻
——————-
И еще... и еще... Хотела пообещать вам в скором времени обзорные посты по технологии решения очень частых вопросов по ГК, но пока это секрет 😇
——————-
🥳 А вообще это был очень крутой год
——————-
И звезда во лбу горит! (куда же без классики)
УПРАВЛЕНИЕ КОНТЕНТОМ ЧЕРЕЗ РОЛЬ
У ГК есть два "места", через которые вы можете использовать получение информации о роли пользователя в текущий момент.
1️⃣Первое - через данные страницы и конкретно window.userInfo
Я люблю использовать этот вариант, особенно когда речь идет про большие скрипты и вариативность настройки аккаунта под разные роли, тк скриптоv можно повесить класс куда угодно (а лучше прям на body), а значит мы обеспечиваем себе легкое управление контентом через стили.
⚙️ Например
if(window.userInfo.isAdmin) {
$('body').addClass('role-admin')
}
.role-admin {
стили любой вложенности
}
2️⃣ Второй вариант - использовать уже текущий класс, который "стоит рядом" с gc-main-content
Там будет gc-user-admin или gc-user-user
Минус - не сможем влиять на меню, тк оно не входит в этот див. Можно "перевестить" скриптом, но тут в дело вступает пункт 1 :))
Например наша задача, скрыть от учеников тренинг, оставить для админа
.gc-user-user .stream-table tr[data-training-id="00000"] {
display:none;
}
Например, только для админа добавить новое название тренинга к текущему
.gc-user-admin .stream-table tr[data-training-id="0000"] .stream-title:before {
content: "Новое название";
display: block;
color: #b320a1;
font-style: italic;
font-size: 15px;
}
В этом случае мы добавляем значение через создание псевдоэлемента. Поэтому, если элемент занят, учитывайте это :))ПАРСЕР ПО ВЫГРУЗКЕ ДАННЫХ С ГК
❓Особенности
1️⃣⚡️ Ключевая - работает, имитируя пользователя и пользовательские операции. поэтому не рассматривается самим ГК как что-то вредоносное и скрипт ГК не банит
2️⃣ Можно делать любые операции с доступными данными на странице
3️⃣ На видео вы видите лишь частичную работу скрипта, когда он выгружает ответы пользователей
👑 Еще скрипт умеет
🔤выгружать ответы кураторов (попадают в блоки рядом с дз конкретного ученика)
🔤 выгружать время ответов, рассчитывая дедлайны, что удобно для контроля за работой кураторов и качеству обратной связи
🔤 возвращать какие-то данные из таблицы в ГК в карточку пользователя
🫥 удалять домашние задания ученика, готовя тренинг к повторному прохождению
❓Формат работы
Поскольку апи самих Гугл таблиц не "резиновое", то учитываются лимиты на вставку данных внутри них. Это означает, что при первой загрузке данных придется немного подождать :))
Парсер можно настроить на любое время обхода (раз в час, раз в сутки, одноразовое прохождение и тд)
Парсером можно управлять самому админу - это осуществляется засчет того, что есть перечень урлов для обхода и их активность можно менять. Данные с новых урлов попадают на новые листы в таблице
Написала решение для последовательной анкеты
Что оно делает
1. Если пользователь неавторизован, а согласие идет из настроек аккаунта, то чекбокс виден только на последнем шаге, а не на протяжении всех ответов
2. Переход к следующему шагу осуществляется автоматически после ответа в текущем вопросе, если сам вопрос не предусматривает множественный вариант ответа
3. Если текстовой вопрос не обязательный, то его можно пропустить
Одним словом, чиним баги от ГК :)
Этот вариант анкеты позволяет проходить опросник намного быстрее привычного варианта за счет как раз того, что ответы перелистываются сами
Автозаполнение
или "цвет настроения синий" (голубой, желтый)
Что это?
Это автозаполнение.
Из-за чего?
Когда вы выбираете сохраненный в браузере вариант
Чем мешает?
Да особо ничем, но иногда выбивается из стилистики оформления сайта, а конкретнее - формы
Как победить?
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus { -webkit-box-shadow: inset 0 0 0 100px #fff !important; /* убрать цвет предзаполненного поля */}
