public function delete_event() { $this->is_admin_or_team_lead(); if (isset($_POST['event_id'])) { $this->load->model('event_model', 'event'); $event = $this->event->get_with_client_details($this->input->post('event_id'))[0]; if ($event) { $events = $this->event->get_by_project_id($event->project_id); $duplicate_count = 0; $rank = 0; foreach ($events as $e) { if ($e->id === $event->id) { $rank = $duplicate_count + 1; } else { if ($e->event_type === $event->event_type) { $duplicate_count++; } } } $this->event->delete($this->input->post('event_id')); $dbxClient = new \Dropbox\Client(getenv('DROPBOX_ACCESS_TOKEN'), "chaar-bhai/1.0"); if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name) !== null) { if ($duplicate_count === 0) { if (!empty($event->event_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type); } if (!empty($event->photoshoot_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' Photoshoot'); } } elseif ($duplicate_count === 1) { if (!empty($event->event_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $rank); } if (!empty($event->photoshoot_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $rank . ' Photoshoot'); } if ($rank === 1) { if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 2') !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 2', '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type); } if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 2 Photoshoot') !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 2 Photoshoot', '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' Photoshoot'); } } else { if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 1') !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 1', '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type); } if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 1 Photoshoot') !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' 1 Photoshoot', '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' Photoshoot'); } } } else { if (!empty($event->event_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $rank); } if (!empty($event->photoshoot_status)) { $dbxClient->delete('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $rank . ' Photoshoot'); } if ($rank !== $duplicate_count + 1) { for ($i = $rank; $i < $duplicate_count + 1; $i++) { if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . ($i + 1)) !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . ($i + 1), '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $i); } if ($dbxClient->getMetadata('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . ($i + 1) . ' Photoshoot') !== null) { $dbxClient->move('/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . ($i + 1) . ' Photoshoot', '/' . $event->client_username . '/' . $event->project_name . '/' . $event->event_type . ' ' . $i . ' Photoshoot'); } } } } } $this->response(array('success' => 'Event deleted'), 200); } else { $this->response(array('error' => 'Event could not be deleted'), 200); } } else { $this->response(array('error' => 'Bad request'), 400); } }