Question

J'ai récemment édité le site intranet de mon organisation en créant un fichier JavaScript qui utilise JQuery V.8 et JQuery UI. My Custom JS crée une liste non ordonnée avec la navigation sur le site qui dépose des déposer aux sullinks avec des animations JQuery. La raison de cela au lieu de la balise de navigation SharePoints est que notre intranet a des tonnes de maîtrisages, au lieu de devoir changer chacun et chaque maître-chef lorsqu'un nouveau lien est ajouté, vous ne l'ajoutez que à la JS et que chaque Masterpage fait référence à ma coutume. Fichier JS, la navigation sera créée.

Mon problème est, après la mise en œuvre, certains utilisateurs qui ont l'habitude d'avoir accès à un sous-titre réservé aux gestionnaires n'ont plus accès direct. Étrangement, lorsque l'accès refusé.Aaspx est affiché, il existe un lien pour revenir sur le site et, lorsque vous avez cliqué, apportera l'utilisateur à la bonne place dans le sous-site. Les utilisateurs ayant un contrôle total n'ont aucun problème à accéder au site via le menu. La plupart des utilisateurs de ce sous-site sont stockés dans des groupes Active Directory et ces groupes AD sont attribués des autorisations. Les groupes d'annonces attribués ont reçu un accès limité.

Dans mon modèle MasterPage personnalisé, j'ai supprimé l'ancienne étiquette SharePoint pour la navigation et inséré une balise divanée avec laquelle mon JS utilise pour créer la navigation. Cette balise div ne se situe pas au même endroit que l'ancienne étiquette SharePoint, mais un peu plus haut, juste avant de div avec la classe de «S4-LP S4-Toplinks».

Vous vous demandez simplement si quelqu'un avait des idées en ce qui concerne les autorisations et les menus de navigation personnalisés. Pour des raisons légales, je ne peux pas afficher le code, mais je peux expliquer le mieux que je puisse si quelqu'un devrait demander.

merci

Était-ce utile?

La solution 2

J'ai répondu à ma question dans la plus stupide des modes.J'ai commencé à développer une solution de repos comme Andrew.Petersen15 suggéré, mais comme une dernière tentative désespérée, je suis entré dans mon dossier de mise en page où le JS est stocké et que je l'a enregistré (n'a mis à jour aucun code, n'a rien retiré,n'a rien ajouté) - rien!J'ai ensuite effacé la cache de l'Internet de l'utilisateur et que savez-vous, cela a fonctionné.Wtf ?!

Autant que je sache que cela n'avait rien à voir avec les autorisations (elles ont toutes été configurées correctement au début), c'était le cache de l'individu et réaffûtez le fichier JS.

Autres conseils

Si j'étais vous, je garderais tout le code de menu JQuery que vous avez.Mais échangez les liens codés pour les liens à la liste entraînés.Cela ne devrait pas être trop mauvais ... Je suppose que vous stockez vos liens dans une matrice JavaScript ou quelque chose.Donc, à la place, utilisez l'API de repos pour obtenir vos liens d'une liste SharePoint.

Ensuite, vous pouvez ajouter des autorisations de niveau d'élément à chaque lien, et l'API de repos est coupé de sécurité afin que les utilisateurs ne verront que des éléments de liaison qu'ils ont également accès.

Idéalement, vous remplaceriez le contrôle des délégués TOPNAVIGATION ou créeriez votre propre contrôle utilisateur qui interroge une liste, mais que vous avez déjà fait tout ce code côté client, il serait probablement le plus facile de simplement utiliser l'API de repos.

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top