Skip to content
Extraits de code Groupes Projets
Valider 9999a3ec rédigé par Fil's avatar Fil
Parcourir les fichiers

problème d'invalidation sur #FORUMLARE_FORUM (effacer les cahces des pages...

problème d'invalidation sur #FORUMLARE_FORUM (effacer les cahces des pages quand on modifie les réglages du forum...)
parent 17dcbca2
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -453,14 +453,19 @@ if ($options == "avancees" && $connect_statut=='0minirezo' && $flag_editable) {
$forums_publics = get_forums_publics($id_article);
if ($change_accepter_forum) {
$query_forum = "UPDATE spip_articles SET accepter_forum='$change_accepter_forum' WHERE id_article='$id_article'";
if (isset($change_accepter_forum)
AND $change_accepter_forum <> $forums_publics) {
$query_forum = "UPDATE spip_articles
SET accepter_forum='$change_accepter_forum'
WHERE id_article='$id_article'";
$result_forum = spip_query($query_forum);
$forums_publics = $change_accepter_forum;
if ($change_accepter_forum == 'abo') {
ecrire_meta('accepter_visiteurs', 'oui');
ecrire_metas();
}
include_ecrire('inc_invalideur.php3');
suivre_invalideur("id='id_forum/a$id_article'");
}
echo "\n<form action='articles.php3' method='get'>";
......
......@@ -75,7 +75,7 @@ function generer_nom_fichier_cache($contexte='', $fond='') {
// Securite : est sur que c'est un cache
function retire_cache($cache) {
if ($GLOBALS['flag_ecrire']) return;
if (!_DIR_RESTREINT) return;
if (preg_match('|^' . _DIR_CACHE .
"([0-9a-f]/)?([0-9]+/)?[^.][\-_\%0-9a-z]+\.[0-9a-f]+(\.gz)?$|i",
$cache)) {
......@@ -87,7 +87,7 @@ function retire_cache($cache) {
// Supprimer les caches marques "x"
function retire_caches() {
if ($GLOBALS['flag_ecrire']) return;
if (!_DIR_RESTREINT) return;
// signaler
effacer_meta('invalider');
......@@ -104,7 +104,7 @@ function retire_caches() {
foreach ($suppr as $cache => $ignore)
retire_cache($cache);
spip_query("DELETE FROM spip_caches WHERE "
.calcul_mysql_in('fichier', "'".join("','",$suppr)."'") );
.calcul_mysql_in('fichier', "'".join("','",array_keys($suppr))."'") );
}
}
......
......@@ -174,7 +174,7 @@ function calculer_balise($nom, $p) {
// Ca donne les arguments a chercher dans la pile,on compile leur localisation
// Ensuite on delegue a une fonction generale definie dans inc-calcul-outils
// qui recevra a l'execution la valeurs des arguments,
// ainsi que les filtres (qui ne sont donc pas traites à la compil)
// ainsi que les filtres (qui ne sont donc pas traites a la compil)
function calculer_balise_dynamique($p, $nom, $l) {
balise_distante_interdite($p);
......@@ -187,11 +187,15 @@ function calculer_balise_dynamique($p, $nom, $l) {
. "), \$GLOBALS['spip_lang'])";
$p->statut = 'php';
$p->fonctions = '';
// Cas particulier de #FORMULAIRE_FORUM : inserer l'invalideur
if ($nom == 'FORMULAIRE_FORUM')
$p->code = code_invalideur_forums($p, $p->code);
return $p;
}
function param_balise(&$p)
{
function param_balise(&$p) {
$a = $p->fonctions;
if ($a) list(,$nom) = each($a) ; else $nom = '';
if (!ereg(' *\{ *([^}]+) *\} *',$nom, $m))
......
......@@ -69,7 +69,7 @@ function controler_forum($id_article, $retour) {
ask_php_auth(_T('forum_acces_refuse'),
_T('forum_cliquer_retour',
array('retour_forum' => $retour)));
exit;
exit;
}
} else {
ask_php_auth(_T('forum_non_inscrit'),
......@@ -90,8 +90,7 @@ function mots_du_forum($ajouter_mot, $id_message)
VALUES ($id_mot, $id_message)");
}
function enregistre_forum()
{
function enregistre_forum() {
global $REMOTE_ADDR, $auteur_session,
$afficher_texte, $ajouter_mot, $alea, $hash,
$auteur, $confirmer_forum, $email_auteur,
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter