Mod Purge css cache from users browser

Image Forum réservé aux Mod's en développement.
Verrouillé
     
Avatar du membre

Auteur du sujet
zach
Support phpBB Assistance
Support phpBB Assistance
Messages : 1313
Enregistré le : décembre 2010

Mod Purge css cache from users browser

Message par zach » mar. 1 mai 2012 09:08

Salut,

Ce mod permet de réactualiser le cache CSS navigateur de vos visiteurs (style.php qui génère l'ensemble des css) automatiquement à leur prochaine visite, sans quoi vos habitués conserverons l'ancienne version CSS en cache durant 7 jours, pendant lequel le style de votre site pourra être brisé ... (puisque aucun ne vas vider manuellement son cache navigateur)

L'option dans l'acp se présente ainsi :
Image

Ce mod viens en complément de l'option acp > Paramètres serveur > Paramètres de charge :
Recompiler les différents éléments du style:
Cherche les nouvelles mises à jour du style dans le système de fichiers et les recompile.
Qui va permettre d'éviter la mise en cache (mais uniquement sur les templates et généralement pas durablement sur le css ... donc efficacité qui peut mener a avoir des templates récent avec un style css ancien, donc résultat potentiellement catastr... phique si personne ne vide son cache)

SQL :

Code : Tout sélectionner

INSERT INTO phpbb_config VALUES ('purge_css_cache', '0', 0);
INSERT INTO phpbb_config VALUES ('purge_css_lastdate', '0', 0);
Ouvrir : adm/style/acp_main.html

Chercher :

Code : Tout sélectionner

			<form id="action_purge_cache_form" method="post" action="{U_ACTION}">
				<dl>
					<dt><label for="action_purge_cache">{L_PURGE_CACHE}</label><br /><span>{L_PURGE_CACHE_EXPLAIN}</span></dt>
					<dd><input type="hidden" name="action" value="purge_cache" /><input class="button2" type="submit" id="action_purge_cache" name="action_purge_cache" value="{L_RUN}" /></dd>
				</dl>
			</form>
Ajouter après :

Code : Tout sélectionner

			<form id="action_purge_css_cache_form" method="post" action="{U_ACTION}">
				<dl>
					<dt><label for="action_purge_css_cache">{L_PURGE_CSS_CACHE}</label><br /><span>{L_PURGE_CSS_CACHE_EXPLAIN} {L_LAST_PURGE_CSS_CACHE} {PURGE_CSS_LASTDATE} (v{PURGE_CSS_VERSION})</span></dt>
					<dd><input type="hidden" name="action" value="purge_css_cache" /><input class="button2" type="submit" id="action_purge_css_cache" name="action_purge_css_cache" value="{L_RUN}" /></dd>
				</dl>
			</form>
Ouvrir : includes/acp/acp_main.php

Chercher :

Code : Tout sélectionner

					case 'purge_sessions':
						$confirm = true;
						$confirm_lang = 'PURGE_SESSIONS_CONFIRM';
					break;

Ajouter après :

Code : Tout sélectionner

					// Mod purge css cache
					case 'purge_css_cache':
						$confirm = true;
						$confirm_lang = 'PURGE_CSS_CACHE_CONFIRM';
					break;
					// Mod purge css cache

Chercher :

Code : Tout sélectionner

					case 'date':
						if (!$auth->acl_get('a_board'))
						{
							trigger_error($user->lang['NO_AUTH_OPERATION'] . adm_back_link($this->u_action), E_USER_WARNING);
						}

						set_config('board_startdate', time() - 1);
						add_log('admin', 'LOG_RESET_DATE');
					break;

Ajouter après :

Code : Tout sélectionner

				// Mod purge css cache
					case 'purge_css_cache':
						if ((int) $user->data['user_type'] !== USER_FOUNDER)
						{
							trigger_error($user->lang['NO_AUTH_OPERATION'] . adm_back_link($this->u_action), E_USER_WARNING);
						}
						set_config('purge_css_cache', $config['purge_css_cache'] + 1);
						set_config('purge_css_lastdate', time() );
					break;
                    // Mod purge css cache
Chercher :

Code : Tout sélectionner

'BOARD_VERSION'		=> $config['version'],
Ajouter après :

Code : Tout sélectionner

			// Mod purge css cache
			'PURGE_CSS_LASTDATE'	=> $user->format_date($config['purge_css_lastdate']),
			'PURGE_CSS_VERSION'	=> $config['purge_css_cache'],
			// Mod purge css cache

Ouvrir : language/fr/acp/common.php

Chercher :

Code : Tout sélectionner

	'PURGE_SESSIONS'			=> 'Vider toutes les sessions',
	'PURGE_SESSIONS_CONFIRM'	=> 'Êtes-vous sûr de vouloir vider toutes les sessions? Cela aura pour effet de déconnecter tous les utilisateurs.',
	'PURGE_SESSIONS_EXPLAIN'	=> 'Vider toutes les sessions. Cela aura pour effet de déconnecter tous les utilisateurs en vidant la table des sessions.',
Ajouter après :

Code : Tout sélectionner

	// Mod purge css cache
	'PURGE_CSS_CACHE'			=> 'Réactualiser le cache css',
	'PURGE_CSS_CACHE_CONFIRM'	=> 'Êtes-vous sûr de vouloir réactualiser le cache css ? Cela aura pour effet d’actualiser la mise en cache navigateur de la version actuelle.',
	'PURGE_CSS_CACHE_EXPLAIN'	=> 'Réactualise le cache navigateur pour les fichiers css (évite à vos visiteur de vider manuellement leur cache navigateur)',
	'LAST_PURGE_CSS_CACHE'			=> 'Dernière réactualisation :',
	// Mod purge css cache
Ouvrir includes/functions.php

Chercher :

Code : Tout sélectionner

		'T_STYLESHEET_LINK'		=> (!$user->theme['theme_storedb']) ? "{$web_path}styles/" . $user->theme['theme_path'] . '/theme/stylesheet.css' : append_sid("{$phpbb_root_path}style.$phpEx", 'id=' . $user->theme['style_id'] . '&lang=' . $user->data['user_lang']),
Remplacer par :

Code : Tout sélectionner

		// Mod purge css cache modif
		'T_STYLESHEET_LINK'		=> (!$user->theme['theme_storedb']) ? "{$web_path}styles/" . $user->theme['theme_path'] . '/theme/stylesheet.css' : append_sid("{$web_path}style.$phpEx", 'id=' . $user->theme['style_id'] . '&lang=' . $user->data['user_lang'] . '&v=' .$config['purge_css_cache']), 
		// Mod purge css cache
Exclusivité phpbb assistance, ça sent le sujet à backlink

:vivepa:

Verrouillé

Retourner vers « [Archives] Mod's en Développement »