Страница 1 из 2

[Модуль] Мои блоки (myblocks)

Добавлено: Пт авг 30, 2019 3:26 pm
Divan
Модуль "Мои блоки" это визуальный код для начинающих, этот модуль очень сильно помогает собрать нужный нам код. Во вложении есть инструкция, можете разобраться как это все работает.

При использовании данного модуля я обнаружил одну не удобность, это отсутствие самой темы про данный модуль "Мои блоки" и отсутствие в самом модуле отображение категории в виде дерева, сейчас категории отображаются в виде списка, было бы здорово, если это бы исправили.

Re: [Модуль] Мои блоки

Добавлено: Пт авг 30, 2019 3:48 pm
directman66
Можете тут расписать содержимое pdf файла?

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Пт авг 30, 2019 6:57 pm
Divan
Что такое мои блоки/myblocks и как ими пользоваться?

myblocks - это визуальный код в виде блоков. Зачем он нужен? Он нужен, чтобы облегчить людям в написании кода, которые не знают как писать код, также это позволяет не засорять сценарии сценариями, лучше создавать множество блоков, чем создавать множество сценарии.

Мои блоки находятся в разделе “Настройки”

1) Создаем метод для устройства
2) В “Мои блоки” создаем категорию, эта категория будет отражаться в списке Blockly
3) Создаем блок, указываем имя блока, указываем в какой категории будет находиться блок, выбираем тип блока: сценарии, метод, метод + параметры, свойство. Я выбрал метод, он работает. Свойство не работает.
4) При создании сценария, выбираем код "Blockly"
5) В списке "Blockly" появится созданная вами категория и блок
6) На этом все, дальше вы можете собирать блоки по своему усмотрению

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Сб авг 31, 2019 3:27 pm
Divan
Как правиильно в объектах создать свойства дней недели, понедельник, вторник, среда, четверг, пятница, суббота, воскресенье? В blockly я это добавил, но как заставить эти свойства работать? На скриншоте я показал пример, как хотелось бы.

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Сб авг 31, 2019 5:23 pm
Chainik
del

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Сб авг 31, 2019 5:28 pm
Divan
Chainik писал(а):
Сб авг 31, 2019 5:23 pm
Да просто взять и написать кодом (не мучаясь с блокли):

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

$day_num=(int)date('w');
if ($day_num != "4" && timeBetween('22:00', '00:00')) {
//ВЫПОЛНЯЕМ ДЕЙСТВИЕ
}
Что означают эти коды?
1) date('w')
2) "4"

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Сб авг 31, 2019 9:30 pm
Divan
Разобрался, у меня получилось то, что я хотел. Выкладываю пошаговую инструкцию. Таким образом через блоки можно будет закрепить любой сценарий за конкретный день недели. Настройки в "CRON" и "Мои блоки" создаются 1 раз, потом больше это делать не нужно, дальше можно просто собирать сценарии с помощью готовых блоков "Дни недели".

1) Создаем под объект Day в главном объекте Timer
2) Создаем в объекте Day свойства: Понедельник, Вторник, Среда, Четверг, Пятница, Суббота, Воскресенье
3) Если нет модуля CRON, то устанавливаем его и создаем там записи с днями неделями: Понедельник, Вторник, Среда, Четверг, Пятница, Суббота, Воскресенье. В записях дней недели мы прописываем код, который при запуске CRON в заданное время, меняется значение в свойствах Day. Если стоит значение 0, значит сценарии не сработает, а если стоит 1, то сценарии сработает.
Пояснение по Crontab
0 0 * * 1 - это означает, что цикл запустится в Понедельник в 00:00 (цикл запустится в 00:00, поменяется значение в свойстве Воскресенье с 1 на 0 и установит значение в Понедельник с 0 на 1)
0 0 * * 2 - это означает, что цикл запустится во Вторник в 00:00
0 0 * * 3 - это означает, что цикл запустится в Среду в 00:00
0 0 * * 4 - это означает, что цикл запустится в Четверг в 00:00
0 0 * * 5 - это означает, что цикл запустится в Пятницу в 00:00
0 0 * * 6 - это означает, что цикл запустится в Субботу в 00:00
0 0 * * 0 - это означает, что цикл запустится в Воскресенье в 00:00

4) В "Мои блоки" создаем блоки с днями недели и категорию "Календарь"
5) В настройках блока выбираем "Свойство", выбираем связанный объект "Day" и свойство день недели

Готово, теперь можно в моих блоках собирать код в блоках, который позволит собрать, нужный вам сценарии.

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Вс сен 01, 2019 10:21 pm
xor
Divan писал(а):
Сб авг 31, 2019 5:28 pm
Chainik писал(а):
Сб авг 31, 2019 5:23 pm
Да просто взять и написать кодом (не мучаясь с блокли):

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

$day_num=(int)date('w');
if ($day_num != "4" && timeBetween('22:00', '00:00')) {
//ВЫПОЛНЯЕМ ДЕЙСТВИЕ
}
Что означают эти коды?
1) date('w')
2) "4"
если вы не узнаете, что такое date('w'), боюсь, вам придется для дней месяцев, месяцев, сезонов и тд то же самое делать(

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Вс сен 01, 2019 11:26 pm
Divan
Если вы хорошо разбираетесь в коде и не поленитесь выложить несколько вариантов рабочих кодов (по дням, неделям, месяцам) в ветке [Модуль] Simple Calendar (app_calendar) и здесь, в виде блоков, например создать блоки в виде дней, месяцев, сезонов, то вам будут благодарны. Участник "Chainik" реально помог (за это ему огромное спасибо), он выложил рабочий код. Модуль "Мои блоки" пусть ограничен в коде, но он очень удобный и он реально помогает новичкам, и для тех, кто не знает код php, программистам и людям хорошо знающим код PHP, это конечно не интересно.

Re: [Модуль] Мои блоки (myblocks)

Добавлено: Пн сен 02, 2019 12:41 am
xor
Divan писал(а):
Вс сен 01, 2019 11:26 pm
Если вы хорошо разбираетесь в коде и не поленитесь выложить несколько вариантов рабочих кодов (по дням, неделям, месяцам) в ветке [Модуль] Simple Calendar (app_calendar) и здесь, в виде блоков, например создать блоки в виде дней, месяцев, сезонов, то вам будут благодарны. Участник "Chainik" реально помог (за это ему огромное спасибо), он выложил рабочий код. Модуль "Мои блоки" пусть ограничен в коде, но он очень удобный и он реально помогает новичкам, и для тех, кто не знает код php, программистам и людям хорошо знающим код PHP, это конечно не интересно.
модуль календарь сам позволяет без блокли и без кода создавать повторяющиеся события, какие примеры? Для тех периодов, которых нет в модуле я пользуюсь кроном.