} } LocalRedirect(strlen($save) > 0 ? "forum_smile.php?lang=" . LANG . "&" . GetFilterParams("filter_", false) : "forum_smile_edit.php?lang=" . LANG . "&ID=" . $ID . "&" . GetFilterParams("filter_", false)); } } $e = new CAdminException($arError); $message = new CAdminMessage($ID > 0 ? GetMessage("ERROR_EDIT_SMILE") : GetMessage("ERROR_ADD_SMILE"), $e); $bInitVars = true; } /******************************************************************** /Action ********************************************************************/ if ($bInitVars && !empty($arFields)) { $arSmile = $arFields; } elseif ($ID > 0) { $db_res = CForumSmile::GetList(array(), array("ID" => $ID)); if ($db_res && ($arSmile = $db_res->Fetch())) { $arSmile["LANG"] = array(); foreach ($arLang as $key => $val) { $name = CForumSmile::GetLangByID($ID, $key); $arSmile["LANG"][$key] = array("LID" => $key, "NAME" => $name["NAME"]); } } } else { $arSmile = array("SORT" => 150, "TYPE" => "S", "TYPING" => "", "IMAGE" => "", "DESCRIPTION" => "", "LANG" => array()); } foreach ($arSmile as $key => $val) { if ($key == "LANG") { continue; } $arSmile[$key] = htmlspecialcharsbx($val);
} else { $strDirNameOld .= "smile"; } $strDirNameOld .= "/" . $arOldSmile["IMAGE"]; @unlink($strDirNameOld); } } BXClearCache(true, "/" . LANG . "/forum/smilesList/"); BXClearCache(true, "/" . LANG . "/forum/iconsList/"); BXClearCache(true, "/" . LANG . "/forum/smiles/"); $DB->Commit(); break; } } } $dbResultList = CForumSmile::GetList(array($by => $order), $arFilter); $dbResultList = new CAdminResult($dbResultList, $sTableID); $dbResultList->NavStart(); $lAdmin->NavText($dbResultList->GetNavPrint(GetMessage("SMILE_NAV"))); $lAdmin->AddHeaders(array(array("id" => "ID", "content" => GetMessage("SMILE_ID"), "sort" => "ID", "default" => true), array("id" => "NAME", "content" => GetMessage("FORUM_NAME"), "sort" => "", "default" => true), array("id" => "SORT", "content" => GetMessage("SMILE_SORT"), "sort" => "SORT", "default" => true, "align" => "right"), array("id" => "TYPE", "content" => GetMessage('SMILE_TYPE'), "sort" => "TYPE", "default" => true), array("id" => "TYPING", "content" => GetMessage("FORUM_TYPING"), "sort" => "", "default" => true), array("id" => "ICON", "content" => GetMessage("FORUM_SMILE_ICON"), "sort" => "", "default" => true), array("id" => "IMAGE", "content" => GetMessage("FORUM_IMAGE_FILE"), "sort" => "", "default" => false))); $arVisibleColumns = $lAdmin->GetVisibleHeaderColumns(); while ($arForum = $dbResultList->NavNext(true, "f_")) { $row =& $lAdmin->AddRow($f_ID, $arForum); $row->AddField("ID", $f_ID); $row->AddField("SORT", $f_SORT); $row->AddField("TYPE", $f_TYPE == "I" ? GetMessage("SMILE_TYPE_ICON") : GetMessage("SMILE_TYPE_SMILE")); if (in_array("NAME", $arVisibleColumns)) { $arSmileLang = CForumSmile::GetLangByID($f_ID, LANG); $fieldShow = htmlspecialcharsbx($arSmileLang["NAME"]); $row->AddViewField("NAME", '<a title="' . GetMessage("FORUM_EDIT_DESCR") . '" href="' . "forum_smile_edit.php?ID=" . $f_ID . "&lang=" . LANG . "&" . GetFilterParams("filter_") . '">' . $fieldShow . '</a>'); }