function delete($sure, $really_sure, $really_really_sure) { if (!$sure || !$really_sure || !$really_really_sure) { $this->setMissingParamsError(); return false; } if ($this->getID() == $GLOBALS['sys_news_group'] || $this->getID() == 1 || $this->getID() == $GLOBALS['sys_stats_group'] || $this->getID() == $GLOBALS['sys_peer_rating_group']) { $this->setError(_('Cannot Delete System Group')); return false; } $perm =& $this->getPermission(session_get_user()); if (!$perm || !is_object($perm)) { $this->setPermissionDeniedError(); return false; } elseif ($perm->isError()) { $this->setPermissionDeniedError(); return false; } elseif (!$perm->isSuperUser()) { $this->setPermissionDeniedError(); return false; } db_begin(); // // Remove all the members // $members =& $this->getMembers(); for ($i = 0; $i < count($members); $i++) { $this->removeUser($members[$i]->getID()); } // // Delete Trackers // $atf = new ArtifactTypeFactory($this); $at_arr =& $atf->getArtifactTypes(); for ($i = 0; $i < count($at_arr); $i++) { if (!is_object($at_arr[$i])) { printf(_("Not Object: ArtifactType: %d"), $i); continue; } $at_arr[$i]->delete(1, 1); } // // Delete Forums // $ff = new ForumFactory($this); $f_arr =& $ff->getForums(); for ($i = 0; $i < count($f_arr); $i++) { if (!is_object($f_arr[$i])) { printf(_("Not Object: Forum: %d"), $i); continue; } $f_arr[$i]->delete(1, 1); //echo 'ForumFactory'.db_error(); } // // Delete Subprojects // $pgf = new ProjectGroupFactory($this); $pg_arr =& $pgf->getProjectGroups(); for ($i = 0; $i < count($pg_arr); $i++) { if (!is_object($pg_arr[$i])) { printf(_("Not Object: ProjectGroup: %d"), $i); continue; } $pg_arr[$i]->delete(1, 1); //echo 'ProjectGroupFactory'.db_error(); } // // Delete FRS Packages // //$frspf = new FRSPackageFactory($this); $res = db_query("SELECT * FROM frs_package WHERE group_id='" . $this->getID() . "'"); //echo 'frs_package'.db_error(); //$frsp_arr =& $frspf->getPackages(); while ($arr = db_fetch_array($res)) { //if (!is_object($pg_arr[$i])) { // echo "Not Object: ProjectGroup: ".$i; // continue; //} $frsp = new FRSPackage($this, $arr['package_id'], $arr); $frsp->delete(1, 1); } // // Delete news // $news_group =& group_get_object($GLOBALS['sys_news_group']); $res = db_query("SELECT forum_id FROM news_bytes WHERE group_id='" . $this->getID() . "'"); for ($i = 0; $i < db_numrows($res); $i++) { $Forum = new Forum($news_group, db_result($res, $i, 'forum_id')); if (!$Forum->delete(1, 1)) { printf(_("Could Not Delete News Forum: %d"), $Forum->getID()); } } $res = db_query("DELETE FROM news_bytes WHERE group_id='" . $this->getID() . "'"); // // Delete docs // $res = db_query("DELETE FROM doc_data WHERE group_id='" . $this->getID() . "'"); //echo 'doc_data'.db_error(); $res = db_query("DELETE FROM doc_groups WHERE group_id='" . $this->getID() . "'"); //echo 'doc_groups'.db_error(); // // Delete group history // $res = db_query("DELETE FROM group_history WHERE group_id='" . $this->getID() . "'"); //echo 'group_history'.db_error(); // // Delete group plugins // $res = db_query("DELETE FROM group_plugin WHERE group_id='" . $this->getID() . "'"); //echo 'group_plugin'.db_error(); // // Delete group cvs stats // $res = db_query("DELETE FROM stats_cvs_group WHERE group_id='" . $this->getID() . "'"); //echo 'stats_cvs_group'.db_error(); // // Delete Surveys // $sf = new SurveyFactory($this); $s_arr =& $sf->getSurveys(); for ($i = 0; $i < count($s_arr); $i++) { if (!is_object($s_arr[$i])) { printf(_("Not Object: Survey: %d"), $i); continue; } $s_arr[$i]->delete(); //echo 'SurveyFactory'.db_error(); } // // Delete SurveyQuestions // $sqf = new SurveyQuestionFactory($this); $sq_arr =& $sqf->getSurveyQuestions(); for ($i = 0; $i < count($sq_arr); $i++) { if (!is_object($sq_arr[$i])) { printf(_("Not Object: SurveyQuestion: %d"), $i); continue; } $sq_arr[$i]->delete(); //echo 'SurveyQuestionFactory'.db_error(); } // // Delete Mailing List Factory // $mlf = new MailingListFactory($this); $ml_arr =& $mlf->getMailingLists(); for ($i = 0; $i < count($ml_arr); $i++) { if (!is_object($ml_arr[$i])) { printf(_("Not Object: MailingList: %d"), $i); continue; } if (!$ml_arr[$i]->delete(1, 1)) { $this->setError(_('Could not properly delete the mailing list')); } //echo 'MailingListFactory'.db_error(); } // // Delete trove // $res = db_query("DELETE FROM trove_group_link WHERE group_id='" . $this->getID() . "'"); $res = db_query("DELETE FROM trove_agg WHERE group_id='" . $this->getID() . "'"); // // Delete counters // $res = db_query("DELETE FROM project_sums_agg WHERE group_id='" . $this->getID() . "'"); //echo 'project_sums_agg'.db_error(); $res = db_query("INSERT INTO deleted_groups (\n\t\tunix_group_name,delete_date,isdeleted) VALUES \n\t\t('" . $this->getUnixName() . "','" . time() . "','0')"); //echo 'InsertIntoDeleteQueue'.db_error(); $res = db_query("DELETE FROM groups WHERE group_id='" . $this->getID() . "'"); //echo 'DeleteGroup'.db_error(); db_commit(); if (!$res) { return false; } $hook_params = array(); $hook_params['group'] = $this; $hook_params['group_id'] = $this->getID(); plugin_hook("group_delete", $hook_params); if (isset($GLOBALS['sys_upload_dir']) && $this->getUnixName()) { exec('/bin/rm -rf ' . $GLOBALS['sys_upload_dir'] . '/' . $this->getUnixName() . '/'); } if (isset($GLOBALS['sys_ftp_upload_dir']) && $this->getUnixName()) { exec('/bin/rm -rf ' . $GLOBALS['sys_ftp_upload_dir'] . '/' . $this->getUnixName() . '/'); } // // Delete reporting // $res = db_query("DELETE FROM rep_group_act_weekly WHERE group_id='" . $this->getID() . "'"); //echo 'rep_group_act_weekly'.db_error(); $res = db_query("DELETE FROM rep_group_act_monthly WHERE group_id='" . $this->getID() . "'"); //echo 'rep_group_act_monthly'.db_error(); $res = db_query("DELETE FROM rep_group_act_daily WHERE group_id='" . $this->getID() . "'"); //echo 'rep_group_act_daily'.db_error(); unset($this->data_array); return true; }
public function setForum(Forum $f) { $this->forumID = $f->getID(); $this->forum = $f; }
<?php session_start(); require_once '../includes/header.php'; $f = new Forum(); if ($user->isLoggedIn()) { $get = $f->getID($user->data()->id); if ($get == true) { echo 'Logging you in. Please wait.'; echo '<form id="form" action="../forum/login.php" method="post"> <input type="hidden" name="token" value="' . Token::generate() . '"> <input type="hidden" name="id" value="' . $get . '"> </form> <script type="text/javascript"> document.getElementById("form").submit(); </script>'; } else { echo '1'; //Redirect::to('../login/index.php?forum'); } } else { echo '2'; //Redirect::to('../login/index.php?forum'); }
/** * Update forum. * * @param Forum $f */ public static function updateForum(Forum $f) { global $db; $db->query("\n\t\t\t\tUPDATE forums\n\t\t\t\tSET category_id = :cid,\n\t\t\t\t\ttitle = :title,\n\t\t\t\t\tdescription = :desc,\n\t\t\t\t\t`order` = :order,\n\t\t\t\t\tclosed = :closed\n\t\t\t\tWHERE id = :fid\n\t\t\t", array($f->getCategoryID(), $f->getTitle(), $f->getDescription(), $f->getOrder(), $f->isClosed() ? 1 : 0, $f->getID())); }
if ($summary && $details) { /* Insert the row into the db if it's a generic message OR this person is an admin for the group involved */ /* create a new discussion forum without a default msg if one isn't already there */ db_begin(); $f = new Forum(group_get_object($sys_news_group)); if (!$f->create(ereg_replace('[^_\\.0-9a-z-]', '-', strtolower($summary)), $details, 1, '', 0, 0)) { db_rollback(); exit_error('Error', $f->getErrorMessage()); } $new_id = $f->getID(); $sanitizer = new TextSanitizer(); $details = $sanitizer->SanitizeHtml($details); $sql = "INSERT INTO news_bytes (group_id,submitted_by,is_approved,post_date,forum_id,summary,details) " . " VALUES ('{$group_id}','" . user_getid() . "','0','" . time() . "','{$new_id}','" . htmlspecialchars($summary) . "','" . $details . "')"; $result = db_query($sql); if (!$result) { db_rollback(); form_release_key(getStringFromRequest('form_key')); $feedback = ' ' . _('ERROR doing insert') . ' '; } else { db_commit(); $feedback = ' ' . _('News Added.') . ' '; } } else { form_release_key(getStringFromRequest('form_key')); $feedback = ' ' . _('ERROR - both subject and body are required') . ' ';
private static function getForumURL(Forum $f) { return './viewforum.php?id=' . $f->getID(); }
<br> <br> </span> <input type="hidden" name="data" value="<?php echo htmlspecialchars(serialize($user->user), ENT_QUOTES); ?> "> </form> <?php } } elseif (isset($_GET['forum'])) { //trying to log into the forum only $f = new Forum(); $username = $user->user->name_first . ' ' . $user->user->name_last . ' ' . $user->user->id; if (!($forum_id = $f->getID($user->user->id))) { echo 'Registering you. Please wait.'; $forum_data = ['username' => $username, 'email' => $user->user->email, 'vatsim_id' => $user->user->id]; echo '<form id="form" action="' . BASE_URL . 'forum/register.php" method="post"> <input type="hidden" name="token" value="' . Token::generate() . '"> <input type="hidden" name="data" value="' . htmlentities(serialize($forum_data)) . '"> </form> <script type="text/javascript"> document.getElementById("form").submit(); </script>'; } else { echo 'Logging you in. Please wait.'; try { $f->update(['username' => $username, 'username_clean' => strtolower($username), 'user_email' => $user->user->email], [['vatsim_id', '=', $user->user->id]]); } catch (Exception $e) { echo $e->getMessage();