} BB_RunPluginAction("account_valid"); // Load in a revision, if required. $bb_revision_num = -1; $bb_revision = false; $bb_revision_writeable = true; BB_RunPluginAction("pre_revision_load"); if (isset($_REQUEST["bb_revnum"]) && (int) $_REQUEST["bb_revnum"] > -1) { require_once $bb_dir . "/" . $bb_file . "_" . $bb_pref_lang . "_rev.php"; $bb_revision_num = (int) $_REQUEST["bb_revnum"]; if (!isset($bb_langpagerevisions["revisions"][$bb_revision_num])) { $bb_revision_num = -1; } else { $bb_revision = $bb_langpagerevisions["revisions"][$bb_revision_num]; $bb_langpage = unserialize($bb_revision[1]); $bb_revision_writeable = BB_IsRevisionWriteable($bb_revision_num); BB_RunPluginAction("revision_loaded"); } } BB_RunPluginAction("post_revision_load"); // Create a valid language-level security token (also known as a 'nonce'). function BB_CreateSecurityToken($bbaction, $wid = "", $extra = "") { global $bb_langpage, $bb_pref_lang, $bb_revision_num, $bb_session; $str = $bbaction . ":" . $bb_pref_lang . ":" . $wid . ":" . $bb_revision_num . ":"; if (is_string($extra) && $extra != "") { $extra = explode(",", $extra); foreach ($extra as $key) { $key = trim($key); if ($key != "" && isset($_REQUEST[$key])) { $str .= (string) $_REQUEST[$key] . ":";
function BB_SaveLangPage($revnum) { global $bb_dir, $bb_file, $bb_pref_lang, $bb_langpage, $bb_revision_num, $bb_revision, $bb_langpagerevisions, $bb_widget, $bb_widget_id; if (!BB_IsRevisionWriteable($revnum)) { return false; } if (isset($bb_widget) && isset($bb_widget_id) && $bb_widget_id != "") { $bb_widget->Save(); } if ($revnum < 0) { $data = "<" . "?php\n\t\$bb_langpage = " . BB_CreatePHPStorageData($bb_langpage) . ";\n?" . ">"; if (BB_WriteFile($bb_dir . "/" . $bb_file . "_" . $bb_pref_lang . "_page.php", $data) === false) { return false; } BB_DeletePageCache(); BB_RunPluginAction("post_bb_savelangpage"); } else { $bb_langpagerevisions["revisions"][$revnum][1] = serialize($bb_langpage); $bb_langpagerevisions["revisions"][$revnum][3] = time(); if ($revnum == $bb_revision_num) { $bb_revision = $bb_langpagerevisions["revisions"][$revnum]; } BB_RunPluginActionInfo("post_bb_savelangpage_revision", $revnum); return BB_SaveRevisions(); } return true; }