$erMsg = array();
    $arFields = array();
    $APPLICATION->ResetException();
    $arFields = array("TITLE" => $_REQUEST["TITLE"]);
    if ($_REQUEST["DICTIONARY_ID"] > 0) {
        if (!CFilterDictionary::Update($_REQUEST["DICTIONARY_ID"], $arFields)) {
            $erMsg[] = GetMessage("FLTR_IS_NOT_UPDATE");
        } else {
            $db_res = CFilterDictionary::GetList(array(), array("ID" => $_REQUEST["DICTIONARY_ID"]));
            if ($db_res && ($res = $db_res->Fetch())) {
                $arFields["TYPE"] = $res["TYPE"];
            }
        }
    } else {
        $arFields["TYPE"] = $_REQUEST["TYPE"] == "T" ? "T" : "W";
        if (!CFilterDictionary::Add($arFields)) {
            $erMsg[] = GetMessage("FLTR_IS_NOT_ADD");
        }
    }
    $err = $APPLICATION->GetException();
    if (!$err && !empty($_REQUEST['save'])) {
        LocalRedirect("forum_dictionary.php?TYPE=" . $arFields["TYPE"] . "&lang=" . LANG);
    } elseif ($err) {
        $bVarsFromForm = true;
        if ($err = $APPLICATION->GetException()) {
            $sError = $err->GetString();
        }
    }
}
$arFields = array();
$bAdd = true;