public static function createPackageTables($strPackageName) { $strPackageName = strtolower($strPackageName); Loader::IncludePackage($strPackageName); $strBigPackageName = strtoupper($strPackageName); $strFirstBigPackageName = Tools::setFirstCharToBig($strPackageName); $strPackageRoot = Config::getConfig($strBigPackageName . "_ROOT"); //msDebug($strPackageRoot); $strPackageTablesNamespace = "MSergeev\\Packages\\" . $strFirstBigPackageName . "\\Tables\\"; $dir = $strPackageRoot . "tables/"; $arTables = array(); if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if ($file != "." && $file != ".." && $file != ".readme") { $arTables[] = str_replace(".php", "", $file); } } closedir($dh); } } foreach ($arTables as $fileTable) { if ($arClass = explode("_", $fileTable)) { $className = ""; foreach ($arClass as $strName) { $className .= Tools::setFirstCharToBig($strName); } } else { $className = Tools::setFirstCharToBig($arClass); } $className .= "Table"; //call_user_func(array($strPackageTablesNamespace.$className,"installTable()")); $runClass = $strPackageTablesNamespace . $className; $runClass::createTable(); $runClass::insertDefaultRows(); //forward_static_call(array($strPackageTablesNamespace.$className,"installTable()")); //msDebug($strPackageTablesNamespace.$className."::installTable()"); } }
protected static function getCalendar($month, $year) { //В коде может использоваться другой пакет if (CoreLib\Loader::issetPackage('dates')) { //Если пакет установлен, подключаем его CoreLib\Loader::IncludePackage('dates'); } //$month = 2; $year = 2017; //Для теста $arCalendar = array(); $dateHelper = new CoreLib\DateHelper(); $arCalendar["INFO"]["MONTH"] = $month; $arCalendar["INFO"]["YEAR"] = $year; //Получаем timestamp на первое число заданного месяца и года $arCalendar["INFO"]["START_DATE"] = "1." . $month . "." . $year; $arCalendar["INFO"]["START_TIMESTAMP"] = $dateHelper->getDateTimestamp($arCalendar["INFO"]["START_DATE"]); //Получаем количество дней в месяце $arCalendar["INFO"]["NUMBER_OF_DAYS"] = intval(date("t", $arCalendar["INFO"]["START_TIMESTAMP"])); //Получаем timestamp на последнее число заданного месяца и года $arCalendar["INFO"]["LAST_DATE"] = $arCalendar["INFO"]["NUMBER_OF_DAYS"] . "." . $month . "." . $year; $arCalendar["INFO"]["LAST_TIMESTAMP"] = $dateHelper->getDateTimestamp($arCalendar["INFO"]["LAST_DATE"]); //Получаем день недели для 1го числа месяца $arCalendar["INFO"]["START_DAY_OF_WEEK"] = intval(date("w", $arCalendar["INFO"]["START_TIMESTAMP"])); if ($arCalendar["INFO"]["START_DAY_OF_WEEK"] == 0) { $arCalendar["INFO"]["START_DAY_OF_WEEK"] = 7; } //Получаем день недели для последнего числа месяца $arCalendar["INFO"]["LAST_DAY_OF_WEEK"] = intval(date("w", $arCalendar["INFO"]["LAST_TIMESTAMP"])); if ($arCalendar["INFO"]["LAST_DAY_OF_WEEK"] == 0) { $arCalendar["INFO"]["LAST_DAY_OF_WEEK"] = 7; } //Если 1е число не понедельник - нужно получить несколько дней предыдущего месяца if ($arCalendar["INFO"]["START_DAY_OF_WEEK"] != 1) { $arCalendar["INFO"]["DAY_PREV_MONTH"] = $arCalendar["INFO"]["START_DAY_OF_WEEK"] - 1; $arCalendar["INFO"]["FIRST_DAY_PREV_MONTH"] = $dateHelper->strToTime($arCalendar["INFO"]["START_DATE"], "-" . $arCalendar["INFO"]["DAY_PREV_MONTH"] . " day"); list($arCalendar["INFO"]["PREV_MONTH_DAY"], $arCalendar["INFO"]["PREV_MONTH_MONTH"], $arCalendar["INFO"]["PREV_MONTH_YEAR"]) = explode(".", $arCalendar["INFO"]["FIRST_DAY_PREV_MONTH"]); for ($i = 0; $i < $arCalendar["INFO"]["DAY_PREV_MONTH"]; $i++) { if ($i == 0) { $dayOfWeek = date("w", $dateHelper->getDateTimestamp(intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"]))); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff(intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"])); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["PREV_MONTH"][intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"])] = array("TEXT" => intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) . " " . self::getMonthName(intval($arCalendar["INFO"]["PREV_MONTH_MONTH"])), "DAY_OF_WEEK" => $dayOfWeek); } else { $dayOfWeek = date("w", $dateHelper->getDateTimestamp(intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) + $i . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"]))); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff(intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) + $i . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"])); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["PREV_MONTH"][intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) + $i . "." . intval($arCalendar["INFO"]["PREV_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["PREV_MONTH_YEAR"])] = array("TEXT" => intval($arCalendar["INFO"]["PREV_MONTH_DAY"]) + $i, "DAY_OF_WEEK" => $dayOfWeek); } } } //Вносим информацию по заданному месяцу for ($i = 0; $i < $arCalendar["INFO"]["NUMBER_OF_DAYS"]; $i++) { if ($i == 0) { $dayOfWeek = date("w", $dateHelper->getDateTimestamp($i + 1 . "." . $month . "." . $year)); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff($i + 1 . "." . $month . "." . $year); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["NOW_MONTH"][$i + 1 . "." . $month . "." . $year] = array("TEXT" => $i + 1 . " " . self::getMonthName($month), "DAY_OF_WEEK" => $dayOfWeek); } else { $dayOfWeek = date("w", $dateHelper->getDateTimestamp($i + 1 . "." . $month . "." . $year)); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff($i + 1 . "." . $month . "." . $year); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["NOW_MONTH"][$i + 1 . "." . $month . "." . $year] = array("TEXT" => $i + 1, "DAY_OF_WEEK" => $dayOfWeek); } } //Если последний день заданного месяца не воскресение - нужно добавить несколько дней следующего месяца if ($arCalendar["INFO"]["LAST_DAY_OF_WEEK"] != 7) { $arCalendar["INFO"]["FIRST_DAY_NEXT_MONTH"] = $dateHelper->strToTime($arCalendar["INFO"]["LAST_DATE"], "+1 day"); list($arCalendar["INFO"]["NEXT_MONTH_DAY"], $arCalendar["INFO"]["NEXT_MONTH_MONTH"], $arCalendar["INFO"]["NEXT_MONTH_YEAR"]) = explode(".", $arCalendar["INFO"]["FIRST_DAY_NEXT_MONTH"]); $arCalendar["INFO"]["DAY_NEXT_MONTH"] = 7 - $arCalendar["INFO"]["LAST_DAY_OF_WEEK"]; for ($i = 0; $i < $arCalendar["INFO"]["DAY_NEXT_MONTH"]; $i++) { if ($i == 0) { $dayOfWeek = date("w", $dateHelper->getDateTimestamp($i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"]))); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff($i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"])); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["NEXT_MONTH"][$i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"])] = array("TEXT" => $i + 1 . " " . self::getMonthName(intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"])), "DAY_OF_WEEK" => $dayOfWeek); } else { $dayOfWeek = date("w", $dateHelper->getDateTimestamp($i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"]))); if ($dayOfWeek == 0) { $dayOfWeek = 7; } //Использование пакета "Даты" if (CoreLib\Loader::issetPackage('dates')) { $isDayOff = \MSergeev\Packages\Dates\Lib\WorkCalendar::isDayOff($i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"])); if ($isDayOff) { $dayOfWeek = 6; } else { $dayOfWeek = 1; } } $arCalendar["NEXT_MONTH"][$i + 1 . "." . intval($arCalendar["INFO"]["NEXT_MONTH_MONTH"]) . "." . intval($arCalendar["INFO"]["NEXT_MONTH_YEAR"])] = array("TEXT" => $i + 1, "DAY_OF_WEEK" => $dayOfWeek); } } } return $arCalendar; }
/** * getDateByForm * Получает дату из заполненной формы даты * * @param null|array $arParams * * @return array */ public static function getDateByForm($arParams = null) { /* $arParams["eyear"] $arParams['emonth'] $arParams['eday'] $arParams['eaddday'] $arParams['emin'] $arParams['ehour'] $arParams['eplusminus'] $arParams["enoday"] $arParams["emonday"] $arParams["etuesday"] $arParams["ewednesday"] $arParams["ethursday"] $arParams["efriday"] $arParams["esaturday"] $arParams["esunday"] $arParams["eworkday"] $arParams["eweekend"] */ if (!is_array($arParams)) { return false; } $arReturn = array(); if ($arParams["eyear"] > 0) { $arReturn['year'] = $arParams['eyear']; $arReturn['Y'] = $arParams['eyear']; } else { $arReturn['year'] = date('Y'); $arReturn['Y'] = date('Y'); } if ($arParams['emonth'] > 0) { $arReturn['month'] = $arParams['emonth']; $arReturn['n'] = $arParams['emonth']; } else { $arReturn['month'] = date("n"); $arReturn['n'] = date("n"); } if ($arParams['eday'] > 0) { $arReturn['day'] = $arParams['eday']; $arReturn['j'] = $arParams['eday']; } else { if ($arParams['eaddday'] > 0) { $arReturn['day'] = 1; $arReturn['j'] = 1; } else { $arReturn['day'] = date('j'); $arReturn['j'] = date('j'); } } if ($arParams['emin'] > -1) { $arReturn['minute'] = $arParams['emin']; $arReturn['i'] = $arParams['emin']; if ($arParams['ehour'] > -1) { $arReturn['hour'] = $arParams['ehour']; $arReturn['G'] = $arParams['ehour']; } else { $arReturn['hour'] = 0; $arReturn['G'] = 0; } } else { if ($arParams['ehour'] > -1) { $arReturn['hour'] = $arParams['ehour']; $arReturn['G'] = $arParams['ehour']; $arReturn['minute'] = 0; $arReturn['i'] = 0; } else { $arReturn['hour'] = date('G'); $arReturn['G'] = date('G'); $arReturn['minute'] = date('i'); $arReturn['i'] = date('i'); } } $arReturn["log"] = $arReturn; if ($arParams['eaddday'] > 0) { if ($arParams['eplusminus'] > 0) { self::setDayDifference($arReturn, intval($arParams['eaddday'])); } else { self::setDayDifference($arReturn, intval($arParams['eaddday']), '-'); } } self::addDateInfo($arReturn); if (!$arParams["enoday"]) { if ($arParams["emonday"]) { $dayofweek = 1; } elseif ($arParams["etuesday"]) { $dayofweek = 2; } elseif ($arParams["ewednesday"]) { $dayofweek = 3; } elseif ($arParams["ethursday"]) { $dayofweek = 4; } elseif ($arParams["efriday"]) { $dayofweek = 5; } elseif ($arParams["esaturday"]) { $dayofweek = 6; } elseif ($arParams["esunday"]) { $dayofweek = 7; } else { $dayofweek = 0; } if ($dayofweek > 0) { $dayDifference = $dayofweek - $arReturn['dayofweek']; if ($dayDifference > 0) { self::setDayDifference($arReturn, $dayDifference); } elseif ($dayDifference < 0) { self::setDayDifference($arReturn, 7 + $dayDifference); } } else { if ($arParams["eworkday"]) { $dayofweek = 8; } elseif ($arParams["eweekend"]) { $dayofweek = 9; } else { $dayofweek = 0; } if (Loader::IncludePackage("dates")) { $bLoadDates = true; } else { $bLoadDates = false; } if ($dayofweek == 8) { if (!$bLoadDates) { if ($arReturn['dayofweek'] >= 1 && $arReturn['dayofweek'] <= 5) { $dayDifference = 0; } elseif ($arReturn['dayofweek'] == 6) { $dayDifference = 2; } elseif ($arReturn['dayofweek'] == 7) { $dayDifference = 1; } if ($dayDifference > 0) { self::setDayDifference($arReturn, $dayDifference); } } else { $arDates = \MSergeev\Packages\Dates\Lib\WorkCalendar::getNearestDates($arReturn); $arReturn['dates'] = $arDates; for ($i = 0; $i < count($arDates); $i++) { $date = $arReturn['day'] . '.' . $arReturn['month'] . '.' . $arReturn['year']; if ($arDates[$date] == "X") { $mktime = mktime(0, 0, 0, $arReturn['month'], $arReturn['day'], $arReturn['year']); $dayofw = date('w', $mktime); if ($dayofw == 0) { $dayofw = 7; } if ($dayofw >= 1 && $dayofw <= 5) { $bWorkDay = true; } else { $bWorkDay = false; } if ($bWorkDay) { break; } } elseif ($arDates[$date] == "N") { break; } self::setDayDifference($arReturn, 1); } } } elseif ($dayofweek == 9) { if (!$bLoadDates) { if ($arReturn['dayofweek'] >= 1 && $arReturn['dayofweek'] <= 5) { $dayDifference = 6 - $arReturn['dayofweek']; } else { $dayDifference = 0; } if ($dayDifference > 0) { self::setDayDifference($arReturn, $dayDifference); } } else { $arDates = \MSergeev\Packages\Dates\Lib\WorkCalendar::getNearestDates($arReturn); for ($i = 0; $i < count($arDates); $i++) { $date = $arReturn['day'] . '.' . $arReturn['month'] . '.' . $arReturn['year']; if ($arDates[$date] == "X") { $mktime = mktime(0, 0, 0, $arReturn['month'], $arReturn['day'], $arReturn['year']); $dayofw = date('w', $mktime); if ($dayofw == 0) { $dayofw = 7; } if ($dayofw >= 1 && $dayofw <= 5) { $bWorkDay = true; } else { $bWorkDay = false; } if (!$bWorkDay) { break; } } elseif ($arDates[$date] == "Y") { break; } self::setDayDifference($arReturn, 1); } } } } } return $arReturn; }
public static function getAccountsList() { $arAccounts = array(); $arRes = static::getAccountsArray(); //msDebug($arRes); if ($arRes) { foreach ($arRes as $ar_res) { $ar_res['BALANCE'] = static::getAccountBalance($ar_res['ID']); if ($ar_res['STATUS'] == 0) { //Скрытый $accountCode = 'HIDDEN'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_cash && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_bank) { //Деньги $accountCode = 'MONEY'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_mne) { //Мне должны $accountCode = 'ME'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_i && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_credit) { //Я должел $accountCode = 'I_AM'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_broker && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_pamm) { //Инвестиции $accountCode = 'INVEST'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_estate && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_air) { //Имущество $accountCode = 'ESTATE'; } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_bonus) { //Карты лояльности $accountCode = 'BONUS'; } else { //Если что-то пошло не так, делаем счет скрытым $accountCode = 'HIDDEN'; } $arData = $ar_res; $arData['BALANCE_SHOW'] = static::numberFormat($ar_res['BALANCE'] > 0 ? floor($ar_res['BALANCE']) : ceil($ar_res['BALANCE']), 0); //Далее идет запрос дополнительных параметров баланса для вывода, в зависимости от типа счета if ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_cash) { //Наличные $arData['ADDITIONAL'] = static::getAdditionalInfoCash($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_debet_card) { //Дебетовая карта $arData['ADDITIONAL'] = static::getAdditionalInfoDebetCard($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_deposit) { //Дебетовая карта $arData['ADDITIONAL'] = static::getAdditionalInfoDeposit($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_emoney) { //Электронный кошелек $arData['ADDITIONAL'] = static::getAdditionalInfoEMoney($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_bank) { //Банковский счет $arData['ADDITIONAL'] = static::getAdditionalInfoBank($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_mne) { //Мне должны $arData['ADDITIONAL'] = static::getAdditionalInfoMe($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_i) { //Я должен $arData['ADDITIONAL'] = static::getAdditionalInfoIam($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_credit_card) { //Кредитная карта $arData['ADDITIONAL'] = static::getAdditionalInfoCreditCard($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_credit) { //Кредит $arData['ADDITIONAL'] = static::getAdditionalInfoCredit($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_broker && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_pamm) { //Брокерский счет //Металлический счет (ОМС) //Акции //Облигации //Другие ценные бумаги //ПИФ //ОБФУ //Фонд //Накопительное страхование жизни //Накопительный план //Негосударственный пенсионный фонд //Пенсионный счет //ПАММ-счет $arData['ADDITIONAL'] = static::getAdditionalInfoInvest($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_estate) { //Недвижимость $arData['ADDITIONAL'] = static::getAdditionalInfoRealEstate($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_car) { //Автомобиль $arData['ADDITIONAL'] = static::getAdditionalInfoCar($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] >= static::$a_water && $ar_res['ACCOUNT_TYPE_ID'] <= static::$a_air) { //Водный транспорт //Произведение искусства //Бизнес //Прочее имущество //Мототехника //Воздушный транспорт $arData['ADDITIONAL'] = static::getAdditionalInfoEstate($ar_res); } elseif ($ar_res['ACCOUNT_TYPE_ID'] == static::$a_bonus) { //Бонусная карта $arData['ADDITIONAL'] = static::getAdditionalInfoBonus($ar_res); } $arAccounts[$accountCode]['DATA'][$ar_res['ID']] = $arData; if (!isset($arAccounts[$accountCode]['SUM'])) { $arAccounts[$accountCode]['SUM'] = 0; } $arAccounts[$accountCode]['SUM'] += $ar_res['BALANCE']; if ($ar_res['STATUS'] == 2) { $arAccounts['LIKE']['DATA'][$ar_res['ID']] = $arData; if (!isset($arAccounts['LIKE']['SUM'])) { $arAccounts['LIKE']['SUM'] = 0; } $arAccounts['LIKE']['SUM'] += $ar_res['BALANCE']; } if (!isset($arAccounts['CAPITAL']['CURRENCY'][$ar_res['CURRENCY']]['SUM'])) { $arAccounts['CAPITAL']['CURRENCY'][$ar_res['CURRENCY']]['SUM'] = 0; } $arAccounts['CAPITAL']['CURRENCY'][$ar_res['CURRENCY']]['SUM'] += $ar_res['BALANCE']; } } $defaultCurrency = Currency::getDefaultCurrency(); foreach ($arAccounts['CAPITAL']['CURRENCY'] as $currency => &$arValue) { $arValue['SUM_SHOW'] = static::numberFormat($arValue['SUM'] > 0 ? floor($arValue['SUM']) : ceil($arValue['SUM']), 0); if (CoreLib\Loader::IncludePackage("currency")) { $arValue['RATE'] = Curr::getCurrencyRate($defaultCurrency, $currency); } $arValue['SIGN'] = Currency::getCurrencySign($currency); $arValue[$defaultCurrency] = $arValue['SUM'] * $arValue['RATE']; $arValue[$defaultCurrency . '_SHOW'] = static::numberFormat($arValue[$defaultCurrency] > 0 ? floor($arValue[$defaultCurrency]) : ceil($arValue[$defaultCurrency]), 0); if (!isset($arAccounts['CAPITAL']['SUM'])) { $arAccounts['CAPITAL']['SUM'] = 0; } $arAccounts['CAPITAL']['SUM'] += $arValue[$defaultCurrency]; } $arAccounts['CAPITAL']['SUM_SHOW'] = static::numberFormat($arAccounts['CAPITAL']['SUM'] > 0 ? floor($arAccounts['CAPITAL']['SUM']) : ceil($arAccounts['CAPITAL']['SUM']), 0); //msDebug($arAccounts); $section = 'LIKE'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'HIDDEN'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'MONEY'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'ME'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'I_AM'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'INVEST'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'ESTATE'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } $section = 'BONUS'; if (isset($arAccounts[$section]['SUM'])) { $arAccounts[$section]['SUM_SHOW'] = static::numberFormat($arAccounts[$section]['SUM'] > 0 ? floor($arAccounts[$section]['SUM']) : ceil($arAccounts[$section]['SUM']), 0); } if (empty($arAccounts)) { return false; } else { return $arAccounts; } }