_menu($selectedMonth); SE_Layout::dol(); } private function _menu($selectedMonth) { $selectedMonth = ($selectedMonth)? $selectedMonth : date("Y-m"); ?>
_menu($selectedMonth); if (strlen($selectedMonth) != 7) { echo '
Wrong month
'; } else { try { $this->_updateMonth($selectedMonth); } catch (Exception $e) { echo '
' . $e->getMessage(). '
'; SE_Layout::dol(); exit; } echo '
' . "Gotowe" . '
'; } // TODO: TableAjax for `STATS_ACTIVE_SERVICES_STATUS` SE_Layout::dol(); } public function _updateMonth($selectedMonth) { //echo '

TODO: update month '.$selectedMonth.'

'; $parts = explode('-', $selectedMonth); if (count($parts) != 2 || strlen($parts[0]) != 4 || strlen($parts[1]) != 2) { throw new Exception("Wrong month format"); } $sqlYear = $parts[0]; $sqlMonth = $parts[1]; $sqlMonthFirstDay = "{$sqlYear}-{$sqlMonth}-01"; $sqlUpdateMonth = << CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_SUB('{$sqlMonthFirstDay}', INTERVAL 2 DAY)) ) as OPEN_DAY_MINUS_2 , IF(DATE_SUB('{$sqlMonthFirstDay}', INTERVAL 1 DAY) > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_SUB('{$sqlMonthFirstDay}', INTERVAL 1 DAY)) ) as OPEN_DAY_MINUS_1 , IF('{$sqlMonthFirstDay}' > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, '{$sqlMonthFirstDay}') ) as OPEN_DAY , IF(DATE_ADD('{$sqlMonthFirstDay}', INTERVAL 1 DAY) > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_ADD('{$sqlMonthFirstDay}', INTERVAL 1 DAY)) ) as OPEN_DAY_PLUS_1 , IF(DATE_SUB(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 1 DAY) > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_SUB(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 1 DAY)) ) as CLOSE_DAY_MINUS_1 , IF(LAST_DAY('{$sqlMonthFirstDay}') > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, LAST_DAY('{$sqlMonthFirstDay}')) ) as CLOSE_DAY , IF(DATE_ADD(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 1 DAY) > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_ADD(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 1 DAY)) ) as CLOSE_DAY_PLUS_1 , IF(DATE_ADD(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 2 DAY) > CURDATE() , '???' , A_STATUS_L2_SQL_DATE(srv.`ID`, DATE_ADD(LAST_DAY('{$sqlMonthFirstDay}'), INTERVAL 2 DAY)) ) as CLOSE_DAY_PLUS_2 , 0 as `_TO_REMOVE` from `COMPANIES` c join `SERVICES` srv on(srv.`ID_BILLING_USERS`=c.`ID`) -- where c.`A_ADM_COMPANY`='19994_PODMIOT_Vectra_wlasciciel' DB_SQL; //echo '
';echo "{$sqlUpdateMonth}";echo'
'; $sqlUpdateMonth = <<';echo "{$sqlUpdateMonth}";echo''; $sqlList = array(); $sqlList['drop month data'] = "delete from `STATS_ACTIVE_SERVICES_STATUS` where `YEAR`='{$sqlYear}' and `MONTH`='{$sqlMonth}' "; //$sqlList['set _TO_REMOVE=1'] = "update `STATS_ACTIVE_SERVICES_STATUS` set `_TO_REMOVE`=1 where `YEAR`='{$sqlYear}' and `MONTH`='{$sqlMonth}' "; $sqlList['update month data'] = $sqlUpdateMonth; //$sqlList['delete _TO_REMOVE=1'] = "delete from `STATS_ACTIVE_SERVICES_STATUS` where `_TO_REMOVE`=1 "; $db = DB::getDB(); if ($db->has_errors()) { throw new Exception("DB Errors: " . implode("\n
", $db->get_errors())); } foreach ($sqlList as $sqlName => $sql) { $res = $db->query($sql); if ($db->has_errors()) { throw new Exception("DB Errors at sql '{$sqlName}': " . implode("\n
", $db->get_errors())); } } } public function reinstallAction() { SE_Layout::gora(); $this->reinstall(); echo 'OK'; SE_Layout::dol(); } public function reinstall() { $sqlList = array(); $sqlList['RemoveTable_STATS_ACTIVE_SERVICES_STATUS'] = "DROP TABLE IF EXISTS `STATS_ACTIVE_SERVICES_STATUS`"; $sqlList['InstallTable_STATS_ACTIVE_SERVICES_STATUS'] = <<has_errors()) { throw new Exception("DB Errors: " . implode("\n
", $db->get_errors())); } foreach ($sqlList as $sqlName => $sql) { $res = $db->query($sql); if ($db->has_errors()) { throw new Exception("DB Errors at sql '{$sqlName}': " . implode("\n
", $db->get_errors())); } } } }