function togglelegendary_get() { global $Security; if (id() && $Security->is_admin(session('id'))) { $Admin = new BoardAdmin(); $Admin->toggle_flag("legendary", id()); } return to_index(); }
function togglebanned_get() { global $Security, $DB; if (id() && $Security->is_admin(session('id')) && md5(session_id()) == cmd(3)) { $Admin = new BoardAdmin(); $Admin->toggle_flag("member", "banned", id()); $DB->update("member", "id", id(), array("cookie" => "")); } return to_index($_SERVER['HTTP_REFERER']); }
function login_post() { global $DB, $Security; if (!$Security->login(post('name'), post('pass'))) { $Base = new Base(); $Base->type(ERROR); $Base->title(ERROR_AUTH); $Base->header(); $Base->footer(); return; } else { $to = false; if (isset($_SERVER['HTTP_REFERER'])) { $to = $_SERVER['HTTP_REFERER']; } if (substr($to, -12) == "/main/login/") { $to = "/"; } return to_index($to); } }
<?php if (!session('id')) { return to_index(); } // prep data for form $DB->query("SELECT * FROM member m WHERE id=\$1", array(session('id'))); $member = $DB->load_array(); $DB->query("SELECT\r\n p.name as id,\r\n mp.value as name\r\n FROM\r\n member_pref mp\r\n LEFT JOIN\r\n pref p\r\n ON\r\n p.id = mp.pref_id\r\n WHERE\r\n mp.member_id=\$1", array(session('id'))); $prefs = $DB->load_all_key(); if (!isset($prefs['mincollapse'])) { $prefs['mincollapse'] = COLLAPSE_DEFAULT; } if (!is_numeric($prefs['mincollapse'])) { $prefs['mincollapse'] = COLLAPSE_DEFAULT; } if (!isset($prefs['collapseopen'])) { $prefs['collapseopen'] = COLLAPSE_DEFAULT; } if (!is_numeric($prefs['collapseopen'])) { $prefs['collapseopen'] = COLLAPSE_OPEN_DEFAULT; } if ($prefs['collapseopen'] < 1) { $prefs['collapseopen'] = 1; } $Base = new Base(); $Base->type(EDIT); $Base->title("Account Management: {$member['name']}"); $Base->header(); print "<div class=\"box clear\">\n"; $Form = new Form();
foreach ($tables as $table) { $table_data = array(); $table = current($table); $data = DB::execute_sql("DESCRIBE {$table}"); foreach ($data as $d) { $table_data[$d['Field']] = array('type' => $d['Type']); } $idxs = db::execute_sql("SHOW INDEX FROM {$table}"); $table_indexes = $pri = $uni = array(); if ($idxs) { foreach ($idxs as $idx) { if ($idx['Key_name'] == 'PRIMARY') { $pri[] = $idx['Column_name']; } elseif ($idx['Non_unique'] === '0') { $uni[] = $idx['Column_name']; } } } if ($pri) { $table_indexes['PRI'] = $pri; } elseif ($uni) { $table_indexes['UNI'] = $uni; } $contents = '<?php $columns = unserialize(stripslashes(\'' . addslashes(serialize($table_data)) . '\')); $indexes = unserialize(stripslashes(\'' . addslashes(serialize($table_indexes)) . '\')); ?>'; file_put_contents($db_tables_path . $table . '.php', $contents); } // Keys: null, UNI, MUL, PRI to_index('Database tables file updated');
function logout() { if (id() != MD5(session_id())) { return; } session_destroy(); setcookie("board", "", 0, "/", $_SERVER['SERVER_NAME']); unset($_COOKIE); if (get('login')) { return to_index("/main/login/"); } else { return to_index('/'); } }
function editcolors_post() { global $DB, $Core; $theme = array(); foreach ($_POST as $key => $val) { if (substr($key, 0, 1) == "_" || $key == "theme") { continue; } switch ($key) { case "font": case "fontsize": break; case "body": case "even": case "odd": case "me": case "readbar": $val = "#" . substr($val, 0, 6); break; case "hover": if ($val == "none") { $val = "transparent"; } else { $val = "#" . substr($val, 0, 6); } break; default: continue; break; } $theme[$key] = strip_tags($val); } $save = serialize($theme); if ($Core->member_pref(session('id'), "theme")) { $DB->query("UPDATE member_pref SET value=\$1 WHERE member_id=\$2 AND pref_id=15", array($save, session('id'))); } else { $insert = array(); $insert['member_id'] = session('id'); $insert['pref_id'] = 15; $insert['value'] = $save; $DB->insert("member_pref", $insert); } return to_index("/"); exit_clean(); }
function delete_get() { global $DB; if (!id() || !session('id') || cmd(3) != MD5(session_id())) { return to_index(); } if ($DB->query("UPDATE message_member SET deleted=true WHERE member_id=\$1 AND message_id=\$2", array(session('id'), id()))) { return to_index("/message/"); } }
<?php foreach (read_dir(ROOT . 'app/helpers/') as $helper) { $helpers[] = str_replace('_helper', '', $helper); } $contents = '<?php $helpers = ' . write_array($helpers) . ' ?>'; file_put_contents(SYSROOT . 'data/app_helpers.php', $contents); to_index('Helpers file updated');
<?php $ctrls = read_folders(ROOT . 'app/controllers/'); write_system_data_file('app_controllers', write_system_data_array($ctrls, 'controllers')); foreach (read_dir(ROOT . 'app/helpers/') as $helper) { $helpers[] = str_replace('_helper', '', $helper); } $contents = '<?php $helpers = ' . write_array($helpers) . ' ?>'; file_put_contents(SYSROOT . 'data/app_helpers.php', $contents); $mdls = read_dir(ROOT . 'app/models/'); $contents = '<?php $models = ' . write_array($mdls) . ' ?>'; file_put_contents(SYSROOT . 'data/app_models.php', $contents); to_index('All files updated');
function listen_get() { global $Security, $Core, $DB; if (cmd(3) != MD5(session_id())) { return to_index(); } if (!($listen = $Core->idfromname(id()))) { $Base = new Base(); $Base->type(ERROR); $Base->title(ERROR_MEMBER_NOTFOUND); $Base->header(); $Base->footer(); return; } if ($Security->is_admin($listen) || !session('id')) { return to_index(); } if ($DB->query("DELETE FROM member_ignore WHERE member_id=\$1 AND ignore_member_id=\$2", array(session('id'), $listen))) { return to_index(); } else { print "<h3>Something got f****d.</h3>\n"; } }
<?php $ctrls = read_folders(ROOT . 'app/controllers/'); write_system_data_file('app_controllers', write_system_data_array($ctrls, 'controllers')); to_index('Controllers file updated');
<?php $mdls = read_dir(ROOT . 'app/models/'); $contents = '<?php $models = ' . write_array($mdls) . ' ?>'; file_put_contents(SYSROOT . 'data/app_models.php', $contents); to_index('Models file updated');
function viewbymember_get() { global $DB, $Core; // get info $id = $Core->idfromname(id()); $name = $Core->namefromid($id); $page = cmd(3, true) + 1; if (!$id || !$name) { return to_index(); } $Query = new BoardQuery(); $View = new BoardView(); $View->type(VIEW_THREAD_HISTORY); $View->title("Posts Created: {$name}"); $View->subtitle("page {$page}"); $View->header(); $DB->query($Query->view_thread_bymember($id, cmd(3, true), cmd(4, true))); $View->data($DB->load_all()); $View->thread(); $View->footer(); }