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