Aller au contenu
Invision Board France
  • 0

[Tutoriel] Cocher la case de notification par défaut pour les nouveaux sujets


Erwin

Question

  • Administration

Si vous souhaitez que la case de notification soit cochée par défaut pour tous les nouveaux sujets, voici une petite modification simple à faire dans les templates.

 

Rendez-vous dans votre PCA -> Look & Feel et éditer les templates HTML de votre ou vos skins. Rendez-vous dans Post Screen > get_box_enabletrack.

Faites une sauvegarde de son contenu dans un fichier.

Une fois ceci fait, remplacer son contenu par ceci :

<br />
<if="$this->ipsclass->input['do'] == 'new_post'">
<input type="checkbox" name="enabletrack" class="checkbox" value="1" checked="checked" /> {$this->ipsclass->lang['enable_track']}
<else />
<input type="checkbox" name="enabletrack" class="checkbox" value="1" $checked /> {$this->ipsclass->lang['enable_track']}
</if>

Puis sauvegardez.

 

Dès lors la case de notification sera cochée par défaut pour tout nouveau sujet.

Lien vers le commentaire
Partager sur d’autres sites

19 réponses à cette question

Messages recommandés

  • 0

Je viens de faire les modifs et la case est bien cochée par défaut.

Cependant en testant je ne reçois pas de mail pour m'indiquer des nouvelles réponses, esqu'il y a un délai ?

Merci encore.

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Administration

Comme le précise TiChou, c'est dépendant du choix de notification de l'utilisateur. Mais quelque part aussi du serveur, il arrive qu'un serveur sature parfois.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Oui je sais que l'utilisateur peut modifier le mode par la suite, mais je trouve que si il y a possibilité d'avoir le mode "notification immédiate" dès le départ ça peut être mieux. Si vous avez la solution je vous en remercie.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Direction "PCA > Look & Feel > Ton Skin > User Control Panel > email"

 

Recherches :

	<td align="right" valign="top"><input class='checkbox' type="checkbox" name="auto_track" value="1" {$Profile['auto_track']} /></td>
	<td  width="100%">

Remplaces par :

	<td align="right" valign="top">
<if="$Profile['auto_track'] == ''">
<input class='checkbox' type="checkbox" name="auto_track" value="1" checked="checked" /></td>
<else />
<input class='checkbox' type="checkbox" name="auto_track" value="1" {$Profile['auto_track']} /></td>
</if>
	<td  width="100%">

 

Puis, remplaces :

			<select name="trackchoice">
				<option value="none">{$this->ipsclass->lang['subs_none_title']}</option>
				<option value="immediate">{$this->ipsclass->lang['subs_immediate']}</option>
				<option value="delayed">{$this->ipsclass->lang['subs_delayed']}</option>
				<option value="daily">{$this->ipsclass->lang['subs_daily']}</option>
				<option value="weekly">{$this->ipsclass->lang['subs_weekly']}</option>
			</select>

Par :

			<select name="trackchoice">
				<option value="none">{$this->ipsclass->lang['subs_none_title']}</option>
				<option value="immediate" selected="selected">{$this->ipsclass->lang['subs_immediate']}</option>
				<option value="delayed">{$this->ipsclass->lang['subs_delayed']}</option>
				<option value="daily">{$this->ipsclass->lang['subs_daily']}</option>
				<option value="weekly">{$this->ipsclass->lang['subs_weekly']}</option>
			</select>

Voili, voilou :drop:

 

Pour forcer ces réglages à tes membres déja existants, utilises cette requête SQL :

UPDATE `ibf_members` SET `auto_track` = 'immediate';

o:)

Lien vers le commentaire
Partager sur d’autres sites

  • 0

Ca fait un long moment que j'essaye de comprendre pourquoi ça marche pas... et pourquoi les notifications emails ne fonctionnent plus depuis que j'ai ajouté ça

 

Si on ajoute selected à <option value="immediate" selected="selected">{$this->ipsclass->lang['subs_immediate']}</option>

 

On se retrouve avec ce code html dans la page

 

<select name="trackchoice">

<option value="none">Pas de notification par courriel</option>

<option value="immediate" selected="selected">Notification par courriel immédiate</option>

<option value="delayed" selected="selected">Notification par courriel retardée</option>

<option value="daily">Sommaire quotidien par courriel</option>

<option value="weekly">Sommaire hebdomadaire par courriel</option>

</select>

 

Comme <option value="delayed" selected="selected">Notification par courriel retardée</option> est l'option par défault ajouter selected="selected" dans la ligne <option value="immediate" selected="selected">{$this->ipsclass->lang['subs_immediate']}</option> n'a malheureusement aucun effet :huh: et meme pire cette option par default (value="delayed) s'applique sur mes comptes qui avaient l'option "immediate" ajoutée avant manuellement. B)

 

J'ai cherché comment on peut supprimer selected="selected" validé par défault dans <option value="delayed" selected="selected"> mais j'ai pas trouvé.

 

Quelqu'un a une idée ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0

J'ai fini par trouvé :huh:

 

J'ai annulé toutes les modifications que j'avais appliquées ci dessus et j'ai utilisé ça :

 

Dans le fichier /sources/classes/post/class_post.php

trouver le code

'topic_track_type' => $this->ipsclass->member['auto_track'] ? $this->ipsclass->member['auto_track'] : 'delayed' ,

 

et remplacer par celui la

'topic_track_type' => $this->ipsclass->member['auto_track'] ? $this->ipsclass->member['auto_track'] : 'immediate' ,

 

Ensuite il faut changer une option directement dans la base Msql avec PhpMyAdmin

 

Il y a une table qui s'appelle : ibf_members avec dedans une sous table qui s'appelle auto_track et qui a un champ "défault = 0"

il faut changer la valeur 0 par "immediate"

 

Ce qui va activer automatiquement par défaut et cocher la case pour les nouveaux inscrits l'option dans :

Mes contrôles > Menu > Options > Paramètres de courriel > Notification par courriel immédiate

 

Pour les membres déja insccrit il faut ajouter cette manipulation :

Pour forcer ces réglages à tes membres déja existants, utilises cette requête SQL :

UPDATE `ibf_members` SET `auto_track` = 'immediate';

 

Suite à la discution avec Erwin dans un autre sujet, je pense qu'il a raison, forcer cette option par défaut "oblige" l'utilisateur du forum par défaut à recevoir des emails.

Pour modérer cette solution il faut ajouter dans l'email qu'il reçoit automatiquement, le processus pour désactiver cette option pour lui laisser le choix de ne plus recevoir d'email automatiquement.

Lien vers le commentaire
Partager sur d’autres sites

  • 0

tout a fait exact, je suis 100% d'accord, mais ce qui reste flou pour moi, c'est que si un nouvel inscrit n'active pas lui même: Mes contrôles > Menu > Options > Paramètres de courriel > Notification par courriel immédiate, il ne reçoit aucune notification meme ayant coché la case "Activer la notification par courriel des réponses " lorsqu'il répond a un sujet parce que lors de l'inscription Mes contrôles > Menu > Options > Paramètres de courriel > pas de notification email (est activé par defaut !)

 

Si je fais ça :

Ensuite il faut changer une option directement dans la base Msql avec PhpMyAdmin

 

Il y a une table qui s'appelle : ibf_members avec dedans une sous table qui s'appelle auto_track et qui a un champ "défault = 0"

il faut changer la valeur 0 par "immediate"

 

et que dans le fichier /sources/classes/post/class_post.php je laisse 'delayed'

'topic_track_type' => $this->ipsclass->member['auto_track'] ? $this->ipsclass->member['auto_track'] : 'delayed' ,

 

Lorsqu'il s'inscrit, l'option par défaut sera : Mes contrôles > Menu > Options > Paramètres de courriel > Notification par courriel immédiate il va donc recevoir les notifications puisque l'option est activé et en ayant conservé "delayed" dans /sources/classes/post/class_post.php meme avec plusieurs réponses dans le sujet il ne recevra qu'un seule notification ce qui va limiter le nombre de courriel envoyé.

 

Ca peut marcher comme ça ? ou alors je dois aussi changer l'option "immediate" que j'ai changé dans la base de donnée qui était à "0" par defaut et mettre "delayed" et non pas "immédiate" ?

Lien vers le commentaire
Partager sur d’autres sites

  • 0
  • Administration

Oui oui ça va ;) J'avais oublié qu'IPB n'envoie qu'un mail/connexion pour chaque sujet. Après chacun voit comme il veut. Moi je mettrais "daily", ça envoit un résumé quotidien, ça me semble un bon compromis. Mais chacun fait comme il veut. Le but étant bien que les membres reçoivent des notifications mais sans aller dans l'excès, autrement ça peut être très énervant et c'est donc contre-productif. Ca dépend donc de votre fréquentation aussi. Avec un forum où il y a 100 posts/jour, "immediate" n'est pas gênant. Après quand on commence a en avoir beaucoup genre 1000 ou plus, ça l'est plus. A chacun d'essayer de trouver un juste milieu en fait.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à cette question…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...

Information importante

En utilisant ce site, vous êtes d’accords avec nos Conditions d’utilisation. Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookies, sinon nous supposerons que vous êtes d’accord pour continuer.