Так они и так передаются. Передаётся ВСЯ запись, в том числе и эти 3 поля
$params['TITLE'], $params['USER_ID'] и $params['DONE_WHEN']
Модератор: immortal
Так они и так передаются. Передаётся ВСЯ запись, в том числе и эти 3 поля
Так ведь эта конструкция через ... у тебя в шаблоне жёстко забита. Так-то конечно можно подставить вместо через 1 день - завтра, а вместо через 2 дня - послезавтра
На выходных сделаю. Наверное...
Код: Выделить всё
include_once('./modules/app_calendar/app_calendar.class.php');
$calendar = new app_calendar();
$calendar->calendar_getholidays();
Код: Выделить всё
$year=date('Y');
$rec=SQLSelectOne('select ID from calendar_categories where holidays=1');
if ($rec) {
$hl_ID=$rec['ID'];
//Удаляем все записи за текущий год из календаря
//с категорией у которой стоит галочка Праздники
SQLExec('delete from calendar_events where CALENDAR_CATEGORY_ID=' . $hl_ID . ' and Year(DUE)=' . $year);
$rec=SQLSelectOne('select ID from calendar_categories where workdays=1');
$workdays_ID=$rec['ID'];
//Удаляем все записи за текущий год из календаря
//с категорией у которой стоит галочка Праздники
SQLExec('delete from calendar_events where CALENDAR_CATEGORY_ID=' . $workdays_ID . ' and Year(DUE)=' . $year);
$url='https://www.lrpv.gov.lv/lv/patentu-valde/par-iestadi/kontakti/2015gada-pirmssvetku-dienas-un-brivdienas';
$doc = new DOMDocument;
$internalErrors = libxml_use_internal_errors(true);
$doc->loadHTMLFile($url);
$tabl_temp=$doc->getElementsByTagName('table');
$tabl_tr=$tabl_temp[0]->getElementsByTagName('tr');
$i=1;
foreach($tabl_tr as $nodename) {
if ($i>1) {
$tabl_td=$nodename->getElementsByTagName('td');
if (mb_strlen($tabl_td[1]->textContent)>9) {
$date=$tabl_td[1]->textContent;
$date=mb_substr($date,6,4) . '-' . mb_substr($date,3,2) .'-' . mb_substr($date,0,2);
$Record = Array();
$Record['DUE'] = $date ;
$Record['CALENDAR_CATEGORY_ID'] = $workdays_ID;
$Record['TITLE'] = $tabl_td[4]->textContent;
$Record['ID']=SQLInsert('calendar_events', $Record);
$date=$tabl_td[2]->textContent;
$date=mb_substr($date,6,4) . '-' . mb_substr($date,3,2) .'-' . mb_substr($date,0,2);
$Record = Array();
$Record['DUE'] = $date ;
$Record['CALENDAR_CATEGORY_ID'] = $hl_ID;
$Record['TITLE'] = $tabl_td[4]->textContent;
$Record['ID']=SQLInsert('calendar_events', $Record);
}
elseif (mb_strlen($tabl_td[2]->textContent)>9) {
$tabl_p= $tabl_td[2]->getElementsByTagName('p');
$dd=$tabl_p[0]->textContent;
if ($dd=='')
$date=$tabl_td[2]->textContent;
else
$date=$dd;
$date=mb_substr($date,6,4) . '-' . mb_substr($date,3,2) .'-' . mb_substr($date,0,2);
$Record = Array();
$Record['DUE'] = $date ;
$Record['CALENDAR_CATEGORY_ID'] = $hl_ID;
$Record['TITLE'] = $tabl_td[4]->textContent;
$Record['ID']=SQLInsert('calendar_events', $Record);
if (mb_strlen($tabl_td[3]->textContent)>9) {
$tabl_p= $tabl_td[3]->getElementsByTagName('p');
$dd=$tabl_p[0]->textContent;
if ($dd=='')
$date=$tabl_td[3]->textContent;
else
$date=$dd;
$date=mb_substr($date,6,4) . '-' . mb_substr($date,3,2) .'-' . mb_substr($date,0,2);
$Record = Array();
$Record['DUE'] = $date ;
$Record['CALENDAR_CATEGORY_ID'] = $hl_ID;
$Record['TITLE'] = 'Выходной';
$Record['ID']=SQLInsert('calendar_events', $Record);
}
}
elseif (mb_strlen($tabl_td[3]->textContent)>9) {
// $date=$tabl_td[3]->textContent;
$tabl_p= $tabl_td[3]->getElementsByTagName('p');
$dd=$tabl_p[0]->textContent;
if ($dd=='')
$date=$tabl_td[3]->textContent;
else
$date=$dd;
$date=mb_substr($date,6,4) . '-' . mb_substr($date,3,2) .'-' . mb_substr($date,0,2);
$Record = Array();
$Record['DUE'] = $date ;
$Record['CALENDAR_CATEGORY_ID'] = $hl_ID;
$Record['TITLE'] = $tabl_td[4]->textContent;
$Record['ID']=SQLInsert('calendar_events', $Record);
}
}
$i++;
}
}
кто-нибудь проверял, работает?fandaymon писал(а): ↑Сб янв 05, 2019 7:55 pmКстати - для заполнения календаря праздниками России в модуле есть встроенная функция
Код: Выделить всё
include_once('./modules/app_calendar/app_calendar.class.php'); $calendar = new app_calendar(); $calendar->calendar_getholidays();
Если категории назначены для праздников и перенесённых дней, то должна работатьLogrus писал(а): ↑Сб янв 05, 2019 9:30 pmкто-нибудь проверял, работает?fandaymon писал(а): ↑Сб янв 05, 2019 7:55 pmКстати - для заполнения календаря праздниками России в модуле есть встроенная функция
Код: Выделить всё
include_once('./modules/app_calendar/app_calendar.class.php'); $calendar = new app_calendar(); $calendar->calendar_getholidays();