$vals = []; function sortbyusername($a, $b) { return strtolower($a) < strtolower($b) ? -1 : 1; } $vals['photo_n'] = $info->photo; $vals['website_n'] = $info->website; $vals['name_n'] = $info->name; $mem = $project->getMembers($info->counter); $vals['members_n'] = count($mem); $vals['members_a'] = []; foreach ($mem as &$uid) { $uid = User::getUsername($uid); } $vals['members_a'] = $mem; usort($vals['members_a'], 'sortbyusername'); $vals['tok_n'] = NERDZ\Core\Security::getCsrfToken('edit'); $vals['id_n'] = $info->counter; $vals['description_a'] = explode("\n", $info->description); foreach ($vals['description_a'] as &$val) { $val = trim($val); } $vals['goal_a'] = explode("\n", $info->goal); foreach ($vals['goal_a'] as &$val) { $val = trim($val); } $vals['openproject_b'] = $project->isOpen($info->counter); $vals['visibleproject_b'] = $info->visible; $vals['privateproject_b'] = $info->private; $user->getTPL()->assign($vals); $user->getTPL()->draw('preferences/projects/manage');
$i = 0; foreach ($fol as $uid) { if (!($uname = User::getUsername($uid))) { continue; } $vals['users_a'][$i]['username_n'] = $uname; $vals['users_a'][$i]['username4link_n'] = \NERDZ\Core\Utils::userLink($uname); ++$i; } usort($vals['users_a'], 'NERDZ\\Core\\Utils::sortByUsername'); $vals['owner_n'] = User::getUsername($project->getOwner()); $vals['owner4link_n'] = \NERDZ\Core\Utils::userLink($vals['owner_n']); $vals['description_n'] = $messages->bbcode($info->description); $vals['goal_n'] = $messages->bbcode($info->goal); $vals['website_n'] = $vals['website4link_n'] = empty($info->website) ? 'http://' . Config\SITE_HOST . '/' : $info->website; $vals['openproject_b'] = $project->isOpen($info->counter); $vals['canifollow_b'] = $vals['logged_b'] && !in_array($_SESSION['id'], array_merge($mem, $fol)); $vals['canshowmenu_b'] = $vals['logged_b'] && $_SESSION['id'] != $project->getOwner(); if (!$vals['singlepost_b'] && !$vals['followers_b'] && !$vals['interactions_b'] && !$vals['members_b']) { $vals['canwrite_b'] = $vals['logged_b'] && ($project->isOpen($gid) || in_array($_SESSION['id'], $mem) || $_SESSION['id'] == $project->getOwner()); $vals['canwriteissue_b'] = $vals['logged_b'] && $info->counter == Config\ISSUE_BOARD; $vals['canwritenews_b'] = !$vals['canwriteissue_b'] && $vals['logged_b'] && (in_array($_SESSION['id'], $mem) || $_SESSION['id'] == $project->getOwner()); } else { // don't show textarea when in a singlepost $vals['canwritenews_b'] = $vals['canwrite_b'] = $vals['canwriteissue_b'] = false; } // single post handling $found = false; if ($vals['singlepost_b']) { if (!($post = Db::query(['SELECT "hpid","from" FROM "groups_posts" WHERE "pid" = :pid AND "to" = :gid', [':pid' => $pid, ':gid' => $gid]], Db::FETCH_OBJ)) || $user->hasInBlacklist($post->from)) { require_once $_SERVER['DOCUMENT_ROOT'] . '/pages/common/vars.php';