<?php $page = 'storagedetails_edit'; $title = "Storage details"; require '../header.php'; ensureMember(); $project = new Project(filter_var($_GET['id'], FILTER_SANITIZE_STRING)); $projectslogs = fRecordSet::build('ProjectsLog', array('project_id=' => $project->getId()), array('id' => 'asc')); $states = fRecordSet::build('ProjectState', array(), array('id' => 'asc')); $projectUser = new User($project->getUserId()); // has the project owner set the status to removed or extended? if (isset($_POST['remove']) || isset($_POST['extend']) && $user->getId() == $project->getUserId()) { try { fRequest::validateCSRFToken($_POST['token']); if (isset($_POST['remove']) && $project->canTransitionStates($project->getState(), 'Removed')) { $project->setState('Removed'); } else { if (isset($_POST['extend']) && $project->canTransitionStates($project->getState(), 'Extended')) { $project->setState('Extended'); } } $project->store(); $project->submitLog('Status changed to ' . $project->getState(), $user->getId()); fURL::redirect("/storage/{$project->getId()}"); } catch (fValidationException $e) { echo $e->printMessage(); } catch (fSQLException $e) { echo '<div class="alert alert-danger">An unexpected error occurred, please try again later</div>'; } } // has another member updated the status?