Beispiel #1
0
function JulianDayToGregorian($Julian)
{
    #---------------------------------------------------------------------------
    $Julian = $Julian - 1721119;
    $Calc1 = 4 * $Julian - 1;
    #---------------------------------------------------------------------------
    $Year = Floor($Calc1 / 146097);
    $Julian = Floor($Calc1 - 146097 * $Year);
    $Day = Floor($Julian / 4);
    $Calc2 = 4 * $Day + 3;
    #---------------------------------------------------------------------------
    $Julian = Floor($Calc2 / 1461);
    $Day = $Calc2 - 1461 * $Julian;
    $Day = Floor(($Day + 4) / 4);
    $Calc3 = 5 * $Day - 3;
    #---------------------------------------------------------------------------
    $Month = Floor($Calc3 / 153);
    $Day = $Calc3 - 153 * $Month;
    $Day = Floor(($Day + 5) / 5);
    $Year = 100 * $Year + $Julian;
    #---------------------------------------------------------------------------
    if ($Month < 10) {
        $Month = $Month + 3;
    } else {
        #-------------------------------------------------------------------------
        $Month = $Month - 9;
        $Year = $Year + 1;
    }
    #---------------------------------------------------------------------------
    return MkTime(0, 0, 0, $Month, $Day, $Year);
}
Beispiel #2
0
function GetTime($Data)
{
    #-------------------------------------------------------------------------------
    if (Preg_Match('/^[0-9]+$/', $Data)) {
        return $Data;
    }
    #-------------------------------------------------------------------------------
    $Date = @Date_Parse($Data);
    #-------------------------------------------------------------------------------
    if (!Is_Array($Date)) {
        return ERROR | @Trigger_Error('[GetTime]: ошибка получения даты');
    }
    #-------------------------------------------------------------------------------
    return MkTime($Date['hour'], $Date['minute'], $Date['second'], $Date['month'], $Date['day'], $Date['year']);
    #-------------------------------------------------------------------------------
}
Beispiel #3
0
    $dbrs = CIBlockElement::GetList(array(), array("IBLOCK_ID" => $iblockID));
    $ars = $dbrs->Fetch();
    $date_from = MkTime(10, 0, 0, Date("n"), Date("j"), Date("Y"));
    $date_to = MkTime(14, 0, 0, Date("n"), Date("j"), Date("Y"));
    $iblockElementObject->Update($ars["ID"], array("ACTIVE_FROM" => ConvertTimeStamp($date_from, "FULL"), "ACTIVE_TO" => ConvertTimeStamp($date_to, "FULL")));
    $ars = $dbrs->Fetch();
    $date_from = MkTime(15, 0, 0, Date("n"), Date("j") + 1, Date("Y"));
    $date_to = MkTime(18, 0, 0, Date("n"), Date("j") + 1, Date("Y"));
    $iblockElementObject->Update($ars["ID"], array("ACTIVE_FROM" => ConvertTimeStamp($date_from, "FULL"), "ACTIVE_TO" => ConvertTimeStamp($date_to, "FULL")));
    $ars = $dbrs->Fetch();
    $date_from = MkTime(15, 0, 0, Date("n"), Date("j"), Date("Y"));
    $date_to = MkTime(17, 0, 0, Date("n"), Date("j"), Date("Y"));
    $iblockElementObject->Update($ars["ID"], array("ACTIVE_FROM" => ConvertTimeStamp($date_from, "FULL"), "ACTIVE_TO" => ConvertTimeStamp($date_to, "FULL")));
    $ars = $dbrs->Fetch();
    $date_from = MkTime(10, 0, 0, Date("n"), Date("j") + 1, Date("Y"));
    $date_to = MkTime(12, 0, 0, Date("n"), Date("j") + 1, Date("Y"));
    $iblockElementObject->Update($ars["ID"], array("ACTIVE_FROM" => ConvertTimeStamp($date_from, "FULL"), "ACTIVE_TO" => ConvertTimeStamp($date_to, "FULL")));
    //IBlock fields
    $iblock = new CIBlock();
    $arFields = array("CODE" => $iblockCode, "XML_ID" => $iblockCode);
    $iblock->Update($iblockID, $arFields);
    if (!COption::GetOptionString("calendar", "rm_iblock_type") && !COption::GetOptionString("calendar", "rm_iblock_id")) {
        COption::SetOptionString("calendar", "rm_iblock_type", $iblockType);
        COption::SetOptionString("calendar", "rm_iblock_id", $iblockID);
    }
} else {
    $arSites = array();
    $db_res = CIBlock::GetSite($iblockID);
    while ($res = $db_res->Fetch()) {
        $arSites[] = $res["LID"];
    }
Beispiel #4
0
$Date1 = (int) @$Args[SPrintF('%s1', $ColumnID)];
#-------------------------------------------------------------------------------
if (!$Date1) {
    $Date1 = MkTime(0, 0, 0, 1, 1, 2006);
}
#-------------------------------------------------------------------------------
$Where = SPrintF('%u < `%s`', MkTime(0, 0, 0, Date('n', $Date1), Date('j', $Date1), Date('Y', $Date1)), $ColumnID);
#-------------------------------------------------------------------------------
$Template['Source']['Adding']['Where'][] = $Where;
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Date2 = (int) @$Args[SPrintF('%s2', $ColumnID)];
#-------------------------------------------------------------------------------
if ($Date2) {
    #-------------------------------------------------------------------------------
    $Where = SPrintF('`%s` < %u', $ColumnID, MkTime(23, 59, 59, Date('n', $Date2), Date('j', $Date2), Date('Y', $Date2)));
    #-------------------------------------------------------------------------------
    $Template['Source']['Adding']['Where'][] = $Where;
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Tr = new Tag('TR', new Tag('TD', 'С даты'));
#-------------------------------------------------------------------------------
$Comp = Comp_Load('jQuery/DatePicker', SPrintF('%s1', $ColumnID), $Date1 ? $Date1 : Time() - 189216000);
if (Is_Error($Comp)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Tr->AddChild(new Tag('TD', $Comp));
#-------------------------------------------------------------------------------
                        return ERROR | @Trigger_Error(500);
                    }
                    #---------------------------------------------------------------------
                    if ($Count) {
                        continue;
                    }
                    #---------------------------------------------------------------------
                    $MotionDocument = Comp_Load('www/Administrator/API/MotionDocumentEdit', array('TypeID' => 'WorksCompliteReport', 'ContractID' => $ContractID, 'AjaxCall' => array('Url' => '/WorksCompliteReportDownload', 'Args' => array('ContractID' => $ContractID, 'Month' => $RegistrationMonth, 'IsStamp' => 'yes')), 'UniqID' => $UniqID));
                    #---------------------------------------------------------------------
                    switch (ValueOf($MotionDocument)) {
                        case 'error':
                            return ERROR | @Trigger_Error(500);
                        case 'exception':
                            return ERROR | @Trigger_Error(400);
                        case 'array':
                            continue;
                        default:
                            return ERROR | @Trigger_Error(101);
                    }
                    break;
                default:
                    return ERROR | @Trigger_Error(101);
            }
        }
        break;
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
return MkTime(4, 0, 0, Date('n') + 1, 1, Date('Y'));
#-------------------------------------------------------------------------------
 if (Is_Error($Comp)) {
     return ERROR | @Trigger_Error(500);
 }
 #---------------------------------------------------------------
 $Contract['CreateDate'] = $Comp;
 #---------------------------------------------------------------
 $Replace = array('Contract' => $Contract);
 #---------------------------------------------------------------
 $Year = (int) ($Month / 12);
 /* Date('t',MkTime(0,0,0,$Month - $Year*12,1,$Year + 1970)) */
 #---------------------------------------------------------------
 $Config = Config();
 $ReportDate = $Config['Executor']['WorksCompliteDate'];
 #---------------------------------------------------------------
 # $Comp = Comp_Load('Formats/Date/Standard',MkTime(0,0,0,($Month + 1) - $Year*12,1,$Year + 1970));
 $Comp = Comp_Load('Formats/Date/Standard', MkTime(0, 0, 0, $Month + 1 - $Year * 12, $ReportDate, $Year + 1970));
 if (Is_Error($Comp)) {
     return ERROR | @Trigger_Error(500);
 }
 #---------------------------------------------------------------
 $Replace['SignDate'] = $Comp;
 #---------------------------------------------------------------
 $ProfileID = (int) $Contract['ProfileID'];
 #---------------------------------------------------------------
 if ($ProfileID) {
     #-------------------------------------------------------------
     $Profile = Comp_Load('www/Administrator/API/ProfileCompile', array('ProfileID' => $ProfileID));
     #-------------------------------------------------------------
     switch (ValueOf($Profile)) {
         case 'error':
             return ERROR | @Trigger_Error(500);
     case 'exception':
         return new gException('CONTRACT_NOT_FOUND', 'Договора не найдены');
     case 'array':
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------------------------
 Debug(SPrintF('[comp/Tasks/GC/WithdrawalOldUsers]: юзер (%s), договор #%u, балланс %s', $User['Email'], $Contract['ID'], $Contract['Balance']));
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 $Settings['WithdrawSumm'] = Str_Replace(',', '.', $Settings['WithdrawSumm']);
 #-------------------------------------------------------------------------------
 $Summ = $Contract['Balance'] > $Settings['WithdrawSumm'] ? $Settings['WithdrawSumm'] : $Contract['Balance'];
 #-------------------------------------------------------------------------------
 $IsUpdate = Comp_Load('www/Administrator/API/PostingMake', array('ContractID' => $Contract['ID'], 'Summ' => -$Summ, 'ServiceID' => 2100, 'Comment' => SPrintF('Хранение клиентской информации за период %s', Date('Y/m', MkTime(4, 0, 0, Date('n') - 1, 5, Date('Y'))))));
 #-------------------------------------------------------------------------------
 switch (ValueOf($IsUpdate)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         return ERROR | @Trigger_Error(400);
     case 'array':
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 if (!$Settings['IsEvent']) {
     continue;
 }
 #-------------------------------------------------------------------------------
 #Debug(SPrintF('[comp/Tasks/ISPswCheckLicenses]: IP = %s; elid = %u; addon = %s',$License['ip'],$License['id'],$Comp));
 $addon = 1;
 #-------------------------------------------------------------------------------
 if ($Comp) {
     if (isset($License[$Comp])) {
         $addon = $License[$Comp];
     }
 }
 #-------------------------------------------------------------------------------
 #Debug(SPrintF('[comp/Tasks/ISPswCheckLicenses]: addon name = %s; addon value = %s',$Comp,$addon));
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 $ExpireDate = StrToTime($License['expiredate']);
 $ExpireDate = MkTime(23, 59, 59, date("m", $ExpireDate), date("d", $ExpireDate), date("Y", $ExpireDate));
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 $Statuses = $Config['Statuses']['ISPswLicenses'];
 #-------------------------------------------------------------------------------
 $StatusID = "UnSeted";
 #-------------------------------------------------------------------------------
 #Debug(SPrintF("[comp/Tasks/ISPswCheckLicenses]: Statuses = %s",print_r($Statuses, true)));
 foreach (Array_Keys($Statuses) as $Status) {
     if ($Statuses[$Status]['status'] == $License['status']) {
         $StatusID = $Status;
     }
 }
 #-------------------------------------------------------------------------------
 #----------------------------------TRANSACTION----------------------------------
 if (Is_Error(DB_Transaction($TransactionID = UniqID('comp/Tasks/GC/ISPswCheckLicenses')))) {
Beispiel #9
0
            #-------------------------------------------------------------------------------
            switch (ValueOf($Comp)) {
                case 'error':
                    return ERROR | @Trigger_Error(500);
                case 'exception':
                    return ERROR | @Trigger_Error(400);
                case 'array':
                    # No more...
                    break;
                default:
                    return ERROR | @Trigger_Error(101);
            }
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
        break;
        #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
$Config = Config();
#-------------------------------------------------------------------------------
$StartHour = $Config['Tasks']['Types']['DSForDelete']['StartHour'];
$StartMinutes = $Config['Tasks']['Types']['DSForDelete']['StartMinutes'];
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return MkTime($StartHour, $StartMinutes, 0, Date('n'), Date('j') + 1, Date('Y'));
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$ExecuteTime = Comp_Load('Formats/Task/ExecuteTime', array('ExecuteTime' => $Settings['ExecuteTime'], 'ExecuteDayOfMonth' => $Settings['ExecuteDayOfMonth'], 'ExecuteMonths' => $Settings['ExecuteMonths'], 'DefaultTime' => MkTime(4, 0, 0, Date('n') + 1, 5, Date('Y'))));
if (Is_Error($ExecuteTime)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
# если неактивна, то через день запуск
if (!$Settings['IsActive']) {
    return $ExecuteTime;
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# vars
$TotalSumm = 0;
$MessageToAdmins = "Начисления по реферальной программе за прошлый месяц:\n\n";
$MonthsNames = array('Декабрь', 'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь');
$PreviousTime = MkTime(4, 0, 0, Date('n') - 1, 5, Date('Y'));
$PreviousYear = date('Y', $PreviousTime);
$PreviousMonthName = $MonthsNames[date('n', $PreviousTime)];
$Theme = "Начисления по партнёрской программе за " . SPrintF("%s %u г.", $PreviousMonthName, $PreviousYear);
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# create temporary table
$Result = DB_Query("CREATE TEMPORARY TABLE `UsrOwners` SELECT DISTINCT `OwnerID` as `DistinctOwnerID`, (SELECT `Email` FROM `Users` WHERE `ID`=`DistinctOwnerID`) AS `Email`, COUNT(`ID`) AS `NumDependUsers` FROM `Users` WHERE `OwnerID`!=1 GROUP BY `OwnerID`");
#-------------------------------------------------------------------------------
if (Is_Error($Result)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Owners = DB_Select('UsrOwners', '*');
switch (ValueOf($Owners)) {
Beispiel #11
0
        # если задана периодичность в днях - добавляем период, дней
        $ExecuteDay = Date('j') + (isset($Params['ExecuteDays']) ? IntVal($Params['ExecuteDays']) : 0);
        #-------------------------------------------------------------------------------
        # если задан точный день месяца - устанавливаем его
        $ExecuteDay = isset($Params['ExecuteDayOfMonth']) ? IntVal($Params['ExecuteDayOfMonth']) : $ExecuteDay;
        #-------------------------------------------------------------------------------
        # если задана периодичнось в месяцах, добавляем период, месяцев
        $ExecuteMonth = Date('n') + (isset($Params['ExecuteMonths']) ? IntVal($Params['ExecuteMonths']) : 0);
        #-------------------------------------------------------------------------------
        # если задан точный месяц - устанавливаем его
        $ExecuteMonth = isset($Params['ExecuteMonth']) ? IntVal($Params['ExecuteMonth']) : $ExecuteMonth;
        #-------------------------------------------------------------------------------
        #-------------------------------------------------------------------------------
        if ((int) $Time[0] >= 0 && (int) $Time[0] <= 23 && (int) $Time[1] >= 0 && (int) $Time[1] <= 59) {
            #-------------------------------------------------------------------------------
            return MkTime((int) $Time[0], (int) $Time[1], 0, $ExecuteMonth, $ExecuteDay, Date('Y'));
            #-------------------------------------------------------------------------------
        } else {
            #-------------------------------------------------------------------------------
            return $Params['DefaultTime'];
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
    } else {
        #-------------------------------------------------------------------------------
        return $Params['DefaultTime'];
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
Beispiel #12
0
/******************************************************************************/
/******************************************************************************/
$__args_list = array('Stamp');
/******************************************************************************/
eval(COMP_INIT);
/******************************************************************************/
/******************************************************************************/
if ($Stamp < 1) {
    return '-';
}
#-------------------------------------------------------------------------------
$Day = Date('d', $Stamp);
$Month = Date('m', $Stamp);
$Year = Date('y', $Stamp);
#-------------------------------------------------------------------------------
$Time = Date('H:i', $Stamp);
#-------------------------------------------------------------------------------
if (MkTime(0, 0, 0, $Month, $Day, $Year) == MkTime(0, 0, 0, Date('n'), Date('j'), Date('y'))) {
    return SPrintF('Сегодня в %s', $Time);
}
#-------------------------------------------------------------------------------
if (MkTime(0, 0, 0, $Month, $Day, $Year) == MkTime(0, 0, 0, Date('n'), Date('j') - 1, Date('y'))) {
    return SPrintF('Вчера в %s', $Time);
}
#-------------------------------------------------------------------------------
if (MkTime(0, 0, 0, $Month, $Day, $Year) == MkTime(0, 0, 0, Date('n'), Date('j') + 1, Date('y'))) {
    return SPrintF('Завтра в %s', $Time);
}
#-------------------------------------------------------------------------------
return SPrintF('%02u.%02u.%02u в %s', $Day, $Month, $Year, $Time);
#-------------------------------------------------------------------------------
Beispiel #13
0
             $arFilter["!ID"] = $arItem["ID"];
         }
         $dbElements = CIBlockElement::GetList(array("DATE_ACTIVE_FROM" => "ASC"), $arFilter, false, false, array());
         while ($arElements = $dbElements->GetNext()) {
             $ft1 = MakeTimeStamp($arElements["DATE_ACTIVE_FROM"], FORMAT_DATETIME);
             $ft2 = MakeTimeStamp($arElements["DATE_ACTIVE_TO"], FORMAT_DATETIME);
             $errorMessage .= Str_Replace(array("#TIME1#", "#TIME2#", "#RES#"), array("<b>" . Date("H:i", $ft1) . "</b> " . Date("d.m", $ft1), "<b>" . Date("H:i", $ft2) . "</b> " . Date("d.m", $ft2), $arElements["NAME"]), GetMessage("INTASK_C29_CONFLICT") . ". ");
         }
         $arPeriodicElements = __IRM_SearchPeriodic($fromDateTime, $toDateTime, $arMeeting["IBLOCK_ID"], $arMeeting["ID"], $arItem ? $arItem["ID"] : 0);
         foreach ($arPeriodicElements as $pe) {
             $errorMessage .= Str_Replace(array("#TIME1#", "#TIME2#", "#RES#"), array("<b>" . Date("H:i", $pe["DATE_ACTIVE_FROM_TIME"]) . "</b> " . Date("d.m", $pe["DATE_ACTIVE_FROM_TIME"]), "<b>" . Date("H:i", $pe["DATE_ACTIVE_TO_TIME"]) . "</b> " . Date("d.m", $pe["DATE_ACTIVE_TO_TIME"]), $pe["NAME"]), GetMessage("INTASK_C29_CONFLICT") . ". ");
         }
     } else {
         $t = MakeTimeStamp($startDateV, FORMAT_DATE);
         $fromDateTime = MkTime($arStartTimeVTmp[0], $arStartTimeVTmp[1], 0, Date("m", $t), Date("d", $t), Date("Y", $t));
         $toDateTime = MkTime($arStartTimeVTmp[0] + $arTimeoutTimeVTmp[0], $arStartTimeVTmp[1] + ($arTimeoutTimeVTmp[1] == "5" ? 30 : 0), 0, Date("m", $t), Date("d", $t), Date("Y", $t));
         $regularityLength = $toDateTime - $fromDateTime;
         $toDateTime = MakeTimeStamp($regularityEndV, FORMAT_DATE);
     }
 }
 if (StrLen($errorMessage) <= 0) {
     $arFields = array("NAME" => $nameV, "DATE_ACTIVE_FROM" => Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATETIME), $fromDateTime), "DATE_ACTIVE_TO" => Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATETIME), $toDateTime), "CREATED_BY" => $GLOBALS["USER"]->GetID(), "DETAIL_TEXT" => $descriptionV, "PROPERTY_VALUES" => array($arResult["ALLOWED_ITEM_PROPERTIES"]["UF_PERSONS"]["ID"] => array($personsV), $arResult["ALLOWED_ITEM_PROPERTIES"]["UF_RES_TYPE"]["ID"] => array($resTypeV), $arResult["ALLOWED_ITEM_PROPERTIES"]["UF_PREPARE_ROOM"]["ID"] => array($prepareRoomV), $arResult["ALLOWED_ITEM_PROPERTIES"]["PERIOD_TYPE"]["ID"] => array($regularityV), $arResult["ALLOWED_ITEM_PROPERTIES"]["PERIOD_COUNT"]["ID"] => array($regularityCountV), $arResult["ALLOWED_ITEM_PROPERTIES"]["EVENT_LENGTH"]["ID"] => array($regularityLength), $arResult["ALLOWED_ITEM_PROPERTIES"]["PERIOD_ADDITIONAL"]["ID"] => array($regularityAdditionalVString)), "ACTIVE" => "Y");
     $iblockElementObject = new CIBlockElement();
     if ($arItem) {
         $res = $iblockElementObject->Update($arItem["ID"], $arFields);
     } else {
         $arFields["IBLOCK_ID"] = $arMeeting["IBLOCK_ID"];
         $arFields["IBLOCK_SECTION_ID"] = $arMeeting["ID"];
         $idTmp = $iblockElementObject->Add($arFields);
         $res = $idTmp > 0;
     }
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# перебираем группы серверов, ищщем те где автобалансировка не отключена
$ServersGroups = DB_Select('ServersGroups', array('*'), array('Where' => '`FunctionID` != "NotDefined"'));
switch (ValueOf($ServersGroups)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        #-------------------------------------------------------------------------------
        Debug('[comp/Tasks/ServersAutoBalance]: no groups with enabled autobalasing, go to next day');
        #-------------------------------------------------------------------------------
        $GLOBALS['TaskReturnInfo'] = 'No servers groups with enabled AutoBalance';
        #-------------------------------------------------------------------------------
        return MkTime(2, 50, 0, Date('n'), Date('j') + 1, Date('Y'));
        #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    case 'array':
        # All OK, servers found
        break;
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$GLOBALS['TaskReturnInfo'] = array();
#-------------------------------------------------------------------------------
foreach ($ServersGroups as $ServersGroup) {
    #-------------------------------------------------------------------------------
    Debug(SPrintF('[comp/Tasks/ServersAutoBalance]: processing group #%s, %s', $ServersGroup['ID'], $ServersGroup['Name']));
Beispiel #15
0
#-------------------------------------------------------------------------------
/** @author Великодный В.В. (Joonte Ltd.) */
/******************************************************************************/
/******************************************************************************/
$__args_list = array('ExpirationDate', 'YearsRemainded');
/******************************************************************************/
eval(COMP_INIT);
/******************************************************************************/
/******************************************************************************/
if (!($ExpirationDate || $YearsRemainded)) {
    return '-';
}
#-------------------------------------------------------------------------------
$ExpirationDate = Max($ExpirationDate, Time());
#-------------------------------------------------------------------------------
if ($YearsRemainded) {
    #-----------------------------------------------------------------------------
    $Date = array();
    #-----------------------------------------------------------------------------
    foreach (array('H', 'i', 's', 'm', 'd', 'Y') as $Element) {
        $Date[$Element] = Date($Element, $ExpirationDate);
    }
    #---------------------------------------------------------------------------
    $Date['Y'] += $YearsRemainded;
    #---------------------------------------------------------------------------
    $ExpirationDate = MkTime($Date['H'], $Date['i'], $Date['s'], $Date['m'], $Date['d'], $Date['Y']);
}
#-------------------------------------------------------------------------------
return new Tag('DIV', array('style' => SPrintF('color:#%s;text-decoration:underline;', $ExpirationDate - Time() < 2592000 ? 'FF0000' : '1E2E07')), new Tag('SPAN', Date('d.m.y', $ExpirationDate)), new Tag('SPAN', SPrintF('| %u дн.', Ceil(($ExpirationDate - Time()) / 86400))));
#-------------------------------------------------------------------------------
                        break;
                    default:
                        return ERROR | @Trigger_Error(101);
                }
            } else {
                #-------------------------------------------------------------------------
                $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'Orders', 'StatusID' => 'Suspended', 'RowsIDs' => $Order['ID'], 'Comment' => 'Заказ не был оплачен'));
                #-------------------------------------------------------------------------
                switch (ValueOf($Comp)) {
                    case 'error':
                        return ERROR | @Trigger_Error(500);
                    case 'exception':
                        return ERROR | @Trigger_Error(400);
                    case 'array':
                        # No more...
                        break;
                    default:
                        return ERROR | @Trigger_Error(101);
                }
                # end set staus
            }
            #-------------------------------------------------------------------------
        }
        # end foreach
        break;
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
return MkTime(5, 20, 0, Date('n'), Date('j') + 1, Date('Y'));
#-------------------------------------------------------------------------------
             $Table[] = $Tr;
             CacheManager::add($CacheID1, $Tr, 24 * 3600);
         }
         #-------------------------------------------------------------------------------
     }
     #-------------------------------------------------------------------------------
 }
 #-------------------------------------------------------------------------------
 # полная статистика за год
 $Tr = new Tag('TR');
 #-------------------------------------------------------------------------------
 # ячейка с датой
 $Tr->AddChild(new Tag('TD', array('align' => 'center', 'class' => 'Standard'), 'Итого:'));
 #-------------------------------------------------------------------------------
 $TimeBegin = MkTime(0, 0, 0, 1, 1, $Year);
 $TimeEnd = MkTime(23, 59, 59, 12, 31, $Year);
 #-------------------------------------------------------------------------------
 # ячейка с общей суммой за месяц
 $Columns = array('SUM(`Summ`) AS `Summ`');
 $Where = "`StatusID` = 'Payed' AND `StatusDate` BETWEEN {$TimeBegin} AND {$TimeEnd}";
 $Total = DB_Select('Invoices', $Columns, array('UNIQ', 'Where' => $Where));
 switch (ValueOf($Total)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         return ERROR | @Trigger_Error(400);
     case 'array':
         Debug("[comp/www/Administrator/PaymentsSystemsStatistics]: общая сумма за {$Year} = " . $Total['Summ']);
         break;
     default:
         return ERROR | @Trigger_Error(101);
                    return ERROR | @Trigger_Error(101);
            }
            #-------------------------------------------------------------------------------
            #-------------------------------------------------------------------------------
            $Comp = Comp_Load('www/API/StatusSet', array('ModeID' => 'DomainOrders', 'StatusID' => 'Deleted', 'RowsIDs' => $DomainOrder['ID'], 'Comment' => 'Срок блокировки заказа окончен'));
            #-------------------------------------------------------------------------------
            switch (ValueOf($Comp)) {
                case 'error':
                    return ERROR | @Trigger_Error(500);
                case 'exception':
                    return ERROR | @Trigger_Error(400);
                case 'array':
                    # No more...
                    break;
                default:
                    return ERROR | @Trigger_Error(101);
            }
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
        break;
        #-------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------
    default:
        return ERROR | @Trigger_Error(101);
}
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
return MkTime(4, 45, 0, Date('n'), Date('j') + 1, Date('Y'));
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
Beispiel #19
0
                    ?>
								</td><?php 
                }
            } else {
                ?>
<td class="intask-cell notreserved<?php 
                echo $currentDay ? ' current' : '';
                ?>
" title="<?php 
                echo GetMessage("INTASK_C25T_DBL_CLICK");
                ?>
" ondblclick="window.location='<?php 
                echo CUtil::addslashes($arResult["CellClickUri"]);
                ?>
start_date=<?php 
                echo Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATE), MkTime(0, 0, 0, $arResult["WEEK_START_ARRAY"]["m"], $arResult["WEEK_START_ARRAY"]["d"] + $j - 1, $arResult["WEEK_START_ARRAY"]["Y"]));
                ?>
&amp;start_time=<?php 
                $h1 = IntVal($i / 2);
                if ($h1 < 10) {
                    $h1 = "0" . $h1;
                }
                $i1 = $i % 2 != 0 ? "30" : "00";
                echo $h1 . ":" . $i1;
                ?>
'">&nbsp;</td><?php 
            }
        }
        ?>
				</tr>
			<?php 
 if (!$ExpirationDate) {
     $ExpirationDate = Time();
 }
 #-------------------------------------------------------------
 switch ($Service['ConsiderTypeID']) {
     case 'Upon':
         $ExpirationDate = 0;
         break;
     case 'Daily':
         $ExpirationDate = MkTime(0, 0, 0, Date('n', $ExpirationDate), Date('j', $ExpirationDate) + $AmountPay, Date('Y', $ExpirationDate));
         break;
     case 'Monthly':
         $ExpirationDate = MkTime(0, 0, 0, Date('n', $ExpirationDate) + $AmountPay, Date('j', $ExpirationDate), Date('Y', $ExpirationDate));
         break;
     case 'Yearly':
         $ExpirationDate = MkTime(0, 0, 0, Date('n', $ExpirationDate), Date('j', $ExpirationDate), Date('Y', $ExpirationDate) + $AmountPay);
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------
 $IsUpdate = DB_Update('Orders', array('IsPayed' => TRUE, 'ExpirationDate' => $ExpirationDate), array('ID' => $ServiceOrderID));
 if (Is_Error($IsUpdate)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------
 if (!$PayMessage) {
     $PayMessage = "Заказ оплачен";
 }
 #-------------------------------------------------------------
 #-------------------------------------------------------------
$NoBody->AddChild(new Tag('P', 'Данный вид аналитики позволяет произвести планирование будущих поступлений по заказам VPS, продление которых предполагается в будущем.'));
#-------------------------------------------------------------------------------
$Query = "CREATE TEMPORARY TABLE `%s`(\n  `ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,\n  `OrderID`        int(11),\n  `Customer`       text,\n  `Login`          char(20),\n  `Domain`         char(100),\n  `ExpirationDate` int(11),\n  `MinDaysPay`     int(6),\n  `CostDay`        float(6,2),\n  `ContractID`     int(11),\n  `Balance`        float(7,2)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8";
#-------------------------------------------------------------------------------
$UniqID = UniqID('ID');
#-------------------------------------------------------------------------------
$IsQuery = DB_Query(SPrintF($Query, $UniqID));
if (Is_Error($IsQuery)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Epoches = 3;
#-------------------------------------------------------------------------------
$Incomes = array();
#-------------------------------------------------------------------------------
$Orders = DB_Select(array('VPSOrders', 'Orders', 'Contracts'), array('ContractID', 'Balance', 'OrderID', 'Customer', 'Login', 'Domain', '(UNIX_TIMESTAMP() + `DaysRemainded`*86400) as `ExpirationDate`', '(SELECT `MinDaysPay` FROM `VPSSchemes` WHERE `VPSSchemes`.`ID` = `VPSOrders`.`SchemeID`) as `MinDaysPay`', '(SELECT `CostDay` FROM `VPSSchemes` WHERE `VPSSchemes`.`ID` = `VPSOrders`.`SchemeID`) as `CostDay`'), array('Where' => SPrintF('(UNIX_TIMESTAMP() + `DaysRemainded`*86400) < %u AND `Orders`.`ID` = `VPSOrders`.`OrderID` AND `Contracts`.`ID` = `Orders`.`ContractID`', MkTime(0, 0, 1, Date('n') + $Epoches)), 'SortOn' => 'ExpirationDate'));
#-------------------------------------------------------------------------------
switch (ValueOf($Orders)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        return $Result;
    case 'array':
        #---------------------------------------------------------------------------
        foreach ($Orders as $Order) {
            #-------------------------------------------------------------------------
            $IsInsert = DB_Insert($UniqID, $Order);
            if (Is_Error($IsInsert)) {
                return ERROR | @Trigger_Error(500);
            }
            #-------------------------------------------------------------------------
Beispiel #22
0
                } else {
                    #-------------------------------------------------------------------------------
                    # завтра пораньше
                    $TransferTime = MkTime($SMSBeginTime, 0, 0, Date('n'), Date('j') + 1, Date('Y'));
                    Debug(SPrintF('[comp/Tasks/SMS]: Перенос отправки сообщения (%u) на завтра, %s', $Mobile, Date('Y-m-d/H:i:s', $TransferTime)));
                    #-------------------------------------------------------------------------------
                }
            }
            #-------------------------------------------------------------------------------
        } else {
            #-------------------------------------------------------------------------------
            # период типа 21:00-8:00
            if (Date('G') < $SMSBeginTime && Date('G') >= $SMSEndTime) {
                #-------------------------------------------------------------------------------
                # время типа 12:00 - требуется перенос на SMSBeginTime, сегодня
                $TransferTime = MkTime($SMSBeginTime, 0, 0, Date('n'), Date('j'), Date('Y'));
                Debug(SPrintF('[comp/Tasks/SMS]: Перенос отправки сообщения (%u) на %s', $Mobile, Date('Y-m-d/H:i:s', $TransferTime)));
                #-------------------------------------------------------------------------------
            } else {
                # OK
            }
            #-------------------------------------------------------------------------------
        }
        #-------------------------------------------------------------------------------
    }
    #-------------------------------------------------------------------------------
}
#-------------------------------------------------------------------------------
if ($TransferTime) {
    #-------------------------------------------------------------------------------
    $GLOBALS['TaskReturnInfo'] = SPrintF("transfer send to %s", Date('Y-m-d/H:i:s', $TransferTime));
Beispiel #23
0
						<?php 
            $i = $minDate;
            while ($i <= $maxDate) {
                ?>
							<td class="bx-calendar-day<?php 
                echo Date("w", $i) == 0 || Date("w", $i) == 6 ? " bx-calendar-holiday" : "";
                echo Date("d.m.Y", $i) == Date("d.m.Y") ? " bx-calendar-today" : "";
                ?>
" title="<?php 
                echo $task["PRINT_PERIOD"] . GetMessage("INTASK_T078_RESP") . ": " . $task['FIELDS']['TASKASSIGNEDTO_PRINTABLE'] . "\n" . $task["FIELDS"]["NAME"];
                ?>
">
								&nbsp;
							</td>
							<?php 
                $i = MkTime(0, 0, 0, Date("m", $i), Date("d", $i) + 1, Date("Y", $i));
            }
            ?>
					</tr>
					<?php 
        }
    }
    ?>
		</tbody>
	</table>
	</div>

	<script language="JavaScript">
	<!--
	window.onload = function() 
	{
Beispiel #24
0
     #-------------------------------------------------------------
     $eDay = (int) Date('t', MkTime(0, 0, 0, $Month, 1, $Year));
     #-------------------------------------------------------------
     for ($Day = 1; $Day <= $eDay; $Day++) {
         #-----------------------------------------------------------
         $CurrentStamp = MkTime(0, 0, 0, $Month, $Day, $Year);
         #-----------------------------------------------------------
         if ($CurrentStamp >= $sTime && $CurrentStamp <= $eTime) {
             #---------------------------------------------------------
             $Script[] = SPrintF('Calendar[%u][%u] = {Start:%u,Stop:%u}', $Year, $Month - 1, $Day, MkTime(0, 0, 0, $Month, $eDay, $Year) > $eTime ? Date('j', $eTime) : $eDay);
             #---------------------------------------------------------
             break;
         }
     }
     #-------------------------------------------------------------
     $CurrentStamp = MkTime(0, 0, 0, $Month, Min(Date('j', $ExpirationDate), Date('t', MkTime(0, 0, 0, $Month, 1, $Year))), $Year);
     #-------------------------------------------------------------
     if ($CurrentStamp >= $sTime && $CurrentStamp <= $eTime) {
         #-----------------------------------------------------------
         $Period = Date('n', $CurrentStamp) + Date('Y', $CurrentStamp) * 12 - (Date('n', $ExpirationDate) + Date('Y', $ExpirationDate) * 12);
         #-----------------------------------------------------------
         if ($Period < 4 || $Period % 3 == 0 && $Period < 13 || $Period % 12 == 0) {
             #---------------------------------------------------------
             $Script[] = SPrintF('Periods[%u] = {Year:%u,Month:%u,Day:%u}', $Period, $Year, $Month - 1, Date('j', $ExpirationDate));
             #---------------------------------------------------------
             $Periods[$Period] = SPrintF('%u мес.', $Period);
         }
     }
 }
 #---------------------------------------------------------------
 $Years[] = $Year;
 $IsAdd = Comp_Load('www/Administrator/API/TaskEdit', array('UserID' => $HostingOrder['UserID'], 'TypeID' => 'HostingSuspend', 'ExecuteDate' => $ExecuteDate, 'Params' => array($HostingOrder['ID'])));
 #-------------------------------------------------------------------------------
 switch (ValueOf($IsAdd)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         return ERROR | @Trigger_Error(400);
     case 'array':
         break;
     default:
         return ERROR | @Trigger_Error(101);
 }
 #-------------------------------------------------------------------------------
 #-------------------------------------------------------------------------------
 # время срабатывания задачи на разблокировку
 $UnLockOverlimitsTime = Comp_Load('Formats/Task/ExecuteTime', array('ExecuteTime' => $Settings['UnLockOverlimitsTime'], 'DefaultTime' => MkTime(22, 0, 0, Date('n'), Date('j'), Date('Y'))));
 if (Is_Error($UnLockOverlimitsTime)) {
     return ERROR | @Trigger_Error(500);
 }
 #-------------------------------------------------------------------------------
 # создаём задачу на разблокировку аккаунта
 $IsAdd = Comp_Load('www/Administrator/API/TaskEdit', array('UserID' => $HostingOrder['UserID'], 'TypeID' => 'HostingActive', 'ExecuteDate' => $UnLockOverlimitsTime, 'Params' => array($HostingOrder['ID'])));
 #-------------------------------------------------------------------------------
 switch (ValueOf($IsAdd)) {
     case 'error':
         return ERROR | @Trigger_Error(500);
     case 'exception':
         return ERROR | @Trigger_Error(400);
     case 'array':
         # No more...
         break;
Beispiel #26
0
 #$NoBody->AddChild(new Tag('P',SPrintF('Месяц конца %s',$FinishMonth)));
 #----------------------------------------------------------------------------
 $Table = array(array(new Tag('TD', array('class' => 'Head'), 'Наименование юр. лица'), new Tag('TD', array('class' => 'Head'), 'ИНН'), new Tag('TD', array('class' => 'Head'), 'Дата создания акта'), new Tag('TD', array('class' => 'Head'), 'Сумма выполенных работ'), new Tag('TD', array('class' => 'Head'), 'Номер акта'), new Tag('TD', array('class' => 'Head'), 'Номер договора')));
 #----------------------------------------------------------------------------
 foreach ($Contracts as $Contract) {
     $Profile = Comp_Load('www/Administrator/API/ProfileCompile', array('ProfileID' => $Contract['ProfileID']));
     #--------------------------------------------------------------------------
     $Row = array(new Tag('TD', array('class' => 'Standard'), $Profile['Attribs']['CompanyName']));
     #--------------------------------------------------------------------------
     $Row[] = $Profile['Attribs']['Inn'];
     #--------------------------------------------------------------------------
     $Config = Config();
     $ReportDate = $Config['Executor']['WorksCompliteDate'];
     $Year = (int) Floor($Contract['Month'] / 12) + 1970;
     $Month = (int) Fmod($Contract['Month'], 12) + 1;
     $Comp = Comp_Load('Formats/Date/Standard', MkTime(0, 0, 0, $Month, $ReportDate, $Year));
     if (Is_Error($Comp)) {
         return ERROR | @Trigger_Error(500);
     }
     #--------------------------------------------------------------------------
     $Row[] = $Comp;
     #--------------------------------------------------------------------------
     $Comp = Comp_Load('Formats/Currency', $Contract['Summ']);
     if (Is_Error($Comp)) {
         return ERROR | @Trigger_Error(500);
     }
     #--------------------------------------------------------------------------
     $Row[] = $Comp;
     #--------------------------------------------------------------------------
     $Comp = Comp_Load('Formats/WorkComplite/Report/Number', $Contract['ContractID'], $Contract['Month']);
     if (Is_Error($Comp)) {
#-------------------------------------------------------------------------------
$Config = Config();
#------------------------------------------------------------------------------
$Settings = $Config['Tasks']['Types']['DomainOrdersWhoIsUpdate'];
#------------------------------------------------------------------------------
# если неактивна, то через день запуск
if (!$Settings['IsActive']) {
    return 24 * 3600;
}
#------------------------------------------------------------------------------
$ExecutePeriod = Comp_Load('Formats/Task/ExecuteTime', array('ExecutePeriod' => $Settings['ExecutePeriod'], 'DefaultTime' => 120));
if (Is_Error($ExecutePeriod)) {
    return ERROR | @Trigger_Error(500);
}
#------------------------------------------------------------------------------
$ExecuteTime = Comp_Load('Formats/Task/ExecuteTime', array('ExecuteTime' => $Settings['ExecuteTime'], 'DefaultTime' => MkTime(5, 0, 0, Date('n'), Date('j') + 1, Date('Y'))));
if (Is_Error($ExecuteTime)) {
    return ERROR | @Trigger_Error(500);
}
#------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Where = array("`StatusID` = 'Active' OR `StatusID` = 'ForTransfer' OR `StatusID` = 'OnTransfer'", SPrintF('UNIX_TIMESTAMP() - %u * 86400 > `UpdateDate`', $Settings['WhoIsUpdatePeriod']), SPrintF('UNIX_TIMESTAMP() - %u * 86400 > `StatusDate`', $Settings['WhoIsBeginUpdate']));
#-------------------------------------------------------------------------------
$Columns = array('ID', 'DomainName', '(SELECT `Name` FROM `DomainSchemes` WHERE `DomainSchemes`.`ID` = `SchemeID`) AS `DomainZone`', '(SELECT `Params` FROM `Servers` WHERE `Servers`.`ID` = `ServerID`) AS `Params`');
$DomainOrders = DB_Select('DomainOrdersOwners', $Columns, array('Where' => $Where, 'Limits' => array(0, $Settings['Limit']), 'SortOn' => array('UpdateDate', 'DomainName')));
#-------------------------------------------------------------------------------
switch (ValueOf($DomainOrders)) {
    case 'error':
        return ERROR | @Trigger_Error(500);
    case 'exception':
        # No more...
Beispiel #28
0
 function __RM_PrepateDate($time, $startTime, $endTime)
 {
     if ($time < $startTime) {
         $time = $startTime;
     }
     if ($time > $endTime) {
         $time = $endTime;
     }
     if ($time >= $endTime) {
         $timeDoW = 8;
     } else {
         $timeDoW = IntVal(Date("w", $time));
         if ($timeDoW == 0) {
             $timeDoW = 7;
         }
     }
     $timeHour = IntVal(Date("H", $time));
     $timeMinute = IntVal(Date("i", $time));
     if ($timeMinute < 15) {
         $timeMinute = 0;
     } elseif ($timeMinute >= 15 && $timeMinute < 45) {
         $timeMinute = 30;
     } else {
         $timeHour++;
         $timeMinute = 0;
     }
     $time = MkTime($timeHour, $timeMinute, 0, Date("m", $time), Date("d", $time), Date("Y", $time));
     if ($time >= $endTime) {
         $timeDoW = 8;
     } else {
         $timeDoW = IntVal(Date("w", $time));
         if ($timeDoW == 0) {
             $timeDoW = 7;
         }
     }
     $timeHour = IntVal(Date("H", $time));
     $timeMinute = IntVal(Date("i", $time));
     return array("Time" => $time, "DayOfWeek" => $timeDoW, "Hour" => $timeHour, "Minute" => $timeMinute);
 }
Beispiel #29
0
#-------------------------------------------------------------------------------
$NoBody = new Tag('NOBODY');
#-------------------------------------------------------------------------------
$Comp = Comp_Load('Tab', 'Administrator/Statistic', $NoBody);
if (Is_Error($Comp)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$DOM->AddChild('Into', $Comp);
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
$Table = array();
#-------------------------------------------------------------------------------
$Table[] = 'Период формирования';
#-------------------------------------------------------------------------------
$Comp = Comp_Load('jQuery/DatePicker', 'StartDate', MkTime(0, 0, 0, Date('n'), Date('j'), Date('Y') - 1));
if (Is_Error($Comp)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Table[] = array('Начальная дата', $Comp);
#-------------------------------------------------------------------------------
$Comp = Comp_Load('jQuery/DatePicker', 'FinishDate', Time());
if (Is_Error($Comp)) {
    return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Table[] = array('Конечная дата', $Comp);
#-------------------------------------------------------------------------------
$Table[] = 'Уровень детализации';
#-------------------------------------------------------------------------------
Beispiel #30
0
 }
 $arResult["ITEMS"] = array();
 foreach ($arResult["MEETINGS_LIST"] as $key => $value) {
     if (!Array_Key_Exists("TIME_ITEMS", $value)) {
         $iterator = $fltDateTimeFrom;
         while ($iterator < $fltDateTimeTo) {
             $resTimeFromTmp = MkTime($arFltTimeTo[0], $arFltTimeTo[1], 0, Date("m", $iterator), Date("d", $iterator), Date("Y", $iterator));
             if ($resTimeFromTmp > $fltDateTimeTo) {
                 $resTimeFromTmp = $fltDateTimeTo;
             }
             if ($iterator < $resTimeFromTmp && ($resTimeFromTmp - $iterator) / 3600.0 >= $fltDurationDbl) {
                 $uri = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_RESERVE_MEETING"], array("meeting_id" => $key, "item_id" => 0));
                 $uri .= HtmlSpecialCharsbx((StrPos($uri, "?") === false ? "?" : "&") . "start_date=" . Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATE), $iterator) . "&start_time=" . Date("H:i", $iterator) . "&timeout_time=" . $fltDuration);
                 $arResult["ITEMS"][] = array("MEETING_ID" => $key, "FREE_DATE" => Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATE), $iterator), "FREE_FROM" => Date("H:i", $iterator), "FREE_TO" => Date("H:i", $resTimeFromTmp), "FREE_FROM_TIME" => $iterator, "FREE_TO_TIME" => $resTimeFromTmp, "URI" => $uri);
             }
             $iterator = MkTime($arFltTimeFrom[0], $arFltTimeFrom[1], 0, Date("m", $iterator), Date("d", $iterator) + 1, Date("Y", $iterator));
         }
     } elseif (Count($value["TIME_ITEMS"]) > 0) {
         foreach ($value["TIME_ITEMS"] as $key1 => $value1) {
             $uri = CComponentEngine::MakePathFromTemplate($arParams["PATH_TO_RESERVE_MEETING"], array("meeting_id" => $key, "item_id" => 0));
             $uri .= HtmlSpecialCharsbx((StrPos($uri, "?") === false ? "?" : "&") . "start_date=" . Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATE), $value1["FROM"]) . "&start_time=" . Date("H:i", $value1["FROM"]) . "&timeout_time=" . $fltDuration);
             $arResult["ITEMS"][] = array("MEETING_ID" => $key, "FREE_DATE" => Date($GLOBALS["DB"]->DateFormatToPHP(FORMAT_DATE), $value1["FROM"]), "FREE_FROM" => Date("H:i", $value1["FROM"]), "FREE_TO" => Date("H:i", $value1["TO"]), "FREE_FROM_TIME" => $value1["FROM"], "FREE_TO_TIME" => $value1["TO"], "URI" => $uri);
         }
     }
 }
 for ($i = 0; $i < Count($arResult["ITEMS"]) - 1; $i++) {
     for ($j = $i + 1; $j < Count($arResult["ITEMS"]); $j++) {
         if ($arResult["ITEMS"][$i]["FREE_FROM_TIME"] > $arResult["ITEMS"][$j]["FREE_FROM_TIME"]) {
             $t = $arResult["ITEMS"][$i];
             $arResult["ITEMS"][$i] = $arResult["ITEMS"][$j];
             $arResult["ITEMS"][$j] = $t;