<?php

$this->respond(['GET', 'POST'], '/create', function ($request, $response, $service, $app) {
    $data = json_decode($request->body(), true);
    $id = Notifications::createNotification($data);
    if ($id > 0) {
        $response->json(Result::success('Notification Created.', ['id' => $id]));
    } else {
        $response->json(Result::error('Notification Creation Failed.'));
    }
});
$this->respond(['GET', 'POST'], '/edit/[:id]', function ($request, $response, $service, $app) {
    $id = $request->param('id');
    $data = $request->param('notificationData');
    $recipients = $request->param('notificationRecipients');
    $result = Notifications::updateNotification($id, $data, $recipients);
    if ($result > 0) {
        $response->json(Result::success('Notification Updated.'));
    } elseif ($result === 0) {
        $response->json(Result::success('Notification not Updated.'));
    } else {
        $response->json(Result::error('Notification not found'));
    }
});
$this->respond(['GET', 'POST'], '/get/[i:id]', function ($request, $response, $service, $app) {
    $id = $request->param('id');
    $notificationData = Notifications::getNotification($id);
    $notificationRecipients = Agents::getNotificationRecipients($id);
    $result = array("notificationData" => $notificationData, "notificationRecipients" => $notificationRecipients);
    if ($result) {
        $response->json(Result::success('', $result));