Question
Comment masquer les formulaires de ticket en fonction de l’organisation d’un utilisateur ?
Réponse
Dégagement de responsabilité : cet article est fourni à titre informatif uniquement. Zendesk ne fournit pas l’assistance pour le code et ne le garantit pas. Zendesk ne fournit pas non plus l’assistance pour les technologies tierces comme JavaScript, jQuery ou CSS. Si vous rencontrez des problèmes, publiez-en la description dans la section des commentaires ou essayez de trouver une solution en ligne.
Pour masquer des formulaires de ticket spécifiques en fonction du nom de l’organisation de l’utilisateur, procédez comme suit :
Étape 1 : cherchez l’ID du formulaire de ticket
- Cliquez sur Admin (
) > Gérer > Formulaires de ticket et sélectionnez le formulaire de ticket approprié.
- Vous trouverez l’ID du formulaire dans l’URL, après la dernière barre oblique.
Étape 2 : cherchez le nom de l’organisation
- Cliquez sur Admin (
) > Gérer > Utilisateurs.
- Parcourez les organisations ou recherchez l’organisation par son nom.
Étape 3 : modifiez le code JavaScript
- Dans Guide, cliquez sur l’icône du Panneau de personnalisation (
) dans la barre latérale. La page Thèmes s’ouvre.
- Cliquez sur le thème à modifier pour l’ouvrir.
- Cliquez sur le menu des options et sélectionnez Modifier le code et sélectionnez script.js.
- Copiez le bloc de code ci-dessous.
$(window).load(function() {
var i = 0;
var checkExist = setInterval(function() {
i++;
if ($("a.nesty-input").length){
clearInterval(checkExist);
$("a.nesty-input").each(function() {
$(this).bind( "click", function() {
for (var c in HelpCenter.user.organizations) {
if (HelpCenter.user.organizations[c].name !== "ZENDESK"){
$("#TICKET_FORM_ID").remove();
}
//reserve space for additional organizations
}
});
});
}
if (i > 10){
clearInterval(checkExist);
}
}, 100);
}); - Remplacez « TICKET_FORM_ID » par l’ID du formulaire de ticket.
- Remplacez « ZENDESK » par l’organisation concernée par le formulaire de ticket.
- Collez le code dans le modèle JavaScript du code de votre Centre d’aide.
- Enregistrez votre modèle et publiez les modifications.
Le code fourni réserve l’espace nécessaire pour d’autres organisations. Pour ajouter des formulaires et des organisations supplémentaires, copiez la déclaration if ci-dessus et placez-la sous la déclaration if comme ci-dessous en vous assurant d’insérer l’ID du formulaire de ticket et l’organisation pour vérifier l’existence de l’utilisateur. Répétez cette procédure pour le nombre de formulaires de ticket et d’organisations souhaité.
for (var c in HelpCenter.user.organizations) {
if (HelpCenter.user.organizations[c].name !== "ZENDESK"){
$("#TICKT_FORM_ID").remove();
}if (HelpCenter.user.organizations[c].name !== "MYORG"){
$("#TICKET_FORM_ID2").remove();
}
Remarque : ce workflow ne fonctionne pas pour les utilisateurs non authentifiés ou les utilisateurs sans organisation. Pour ces utilisateurs, tous les formulaires s’affichent.
1 Commentaires
Hello,
Does anyone have updated this code in VanillaJs and not jquery ?
Thanks a lot
Ruddy
Vous devez vous connecter pour laisser un commentaire.