public static function Create($projectId, $activities, $status, $location, $personell, $report, $charges) { try { $datetime = new DateTime(); $sql = 'INSERT IGNORE INTO work_reports (project_id, activities, location, personell, report, date, stamp, status) VALUES (' . $projectId . ', "' . implode(",", $activities) . '", "' . $location . '", "' . implode(",", $personell) . '", "' . $report . '", "' . $datetime->format('d/m/Y') . '", ' . $datetime->format('YmdHis') . ', 0)'; DatabaseHandler::Execute($sql); foreach ($activities as $actid) { ProjectActivity::UpdateActivityStatus($actid, $status); } $sql = 'SELECT * FROM work_reports WHERE stamp = ' . $datetime->format('YmdHis'); $res = DatabaseHandler::GetRow($sql); $report = self::initialize($res); $report->markActivities(); $voucher = ExpenseVoucher::Create($projectId, $report, $charges); $report->setExpensesVoucher($voucher); return $report; } catch (Exception $e) { return false; } }