/** * Return the text of this user's plan. * @param ts Timestamp of the requested plan * @public * @returns Plan */ function getPlan(&$user, $ts = null) { if (!isset($ts)) { if ($user->getUserID() != $this->userID) { $this->addView(); Archive::addView($this->userID, $this->lastUpdate); /* check for mutual snitch registration */ if ($user->getSnitch() && $this->snitch) { $this->addSnitchView($user); } } if (!isset($this->plan)) { $query = "SELECT content FROM plans WHERE uid=" . $this->userID; /* execute the query */ $result = $this->dbh->query($query); if (isset($result) && !DB::isError($result)) { $row = $result->fetchRow(); $this->plan = $row['content']; } else { return PLANWORLD_ERROR; } } return $this->plan; } else { /* fetch it from the archives */ if (Archive::isPublic($this->userID, $ts) || $user->getUserID() == $this->userID) { if ($user->getUserID() != $this->userID) { Archive::addView($this->userID, $ts); } return Archive::getEntry($this->userID, $ts); } else { return "<strong>Error:</strong> You are not authorized to view this entry."; } } }