Exemple #1
0
}
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;
}