if ($title == '') { $json = array('error' => 'You must provide a name for this task.'); exit(json_encode($json)); } elseif ($leaderName == '') { $json = array('error' => 'This task must have a leader.'); exit(json_encode($json)); } elseif ($description == '') { $json = array('error' => 'You must provide some instructions for this task.'); exit(json_encode($json)); } // leader must be real, and a creator or organizer $leader = User::loadByUsername($leaderName); if ($leader === null) { $json = array('error' => 'The user you specified to lead this task does not exist.'); exit(json_encode($json)); } elseif (!ProjectUser::isCreator($leader->getID(), $project->getID()) && !ProjectUser::isTrusted($leader->getID(), $project->getID())) { $json = array('error' => 'Only the project creator or a trusted member may lead tasks.'); exit(json_encode($json)); } // num needed must be numeric or empty if ($numNeeded != '' && !is_numeric($numNeeded)) { $json = array('error' => 'Number of people needed must be a valid number or empty (for unlimited).'); exit(json_encode($json)); } // check for valid date $formattedDeadline = strtotime($deadline); if ($formattedDeadline === false && $deadline != '') { $json = array('error' => 'Deadline must be a valid date or empty.'); exit(json_encode($json)); } }
function formatUserLink($userID = null, $projectID = null) { if ($userID == null) { return null; } $user = User::load($userID); $formatted = '<a href="' . Url::user($userID) . '">' . $user->getUsername() . '</a>'; // add star to trusted users if ($projectID != null) { if (ProjectUser::isTrusted($userID, $projectID) || ProjectUser::isCreator($userID, $projectID)) { $formatted .= '<a href="' . Url::help() . '#help-roles" title="trusted member">*</a>'; } } return $formatted; }
echo '</p>'; echo '</td>'; // status $status = formatProjectStatus($p->getStatus()); echo '<td class="status">' . $status . '</td>'; // deadline $deadline = $p->getDeadline(); $deadline = empty($deadline) ? '--' : formatTimeTag($deadline); echo '<td class="deadline">' . $deadline . '</td>'; // members $members = count($p->getAllMembers()) + 1; echo '<td class="members"><a href="' . Url::people($p->getID()) . '">' . $members . '</a></td>'; // role if (!is_null($user)) { $relationship = ''; if (ProjectUser::isCreator($user->getID(), $p->getID())) { $relationship = 'creator'; } elseif (ProjectUser::isTrusted($user->getID(), $p->getID())) { $relationship = 'trusted member'; } elseif (ProjectUser::isMember($user->getID(), $p->getID())) { $relationship = 'member'; } elseif (ProjectUser::isFollower($user->getID(), $p->getID())) { $relationship = 'follower'; } echo '<td class="role">' . $relationship . '</td>'; } echo '</tr>'; } ?> </table> <?php
public function isCreator($userID = null) { return ProjectUser::isCreator($userID, $this->id); }