PolarisUI - Incluse dans le périmètre
L’API PolarisUI fournit des méthodes d’activation Next Experience sur les pages directes de l’interface utilisateur.
Une page de l’interface utilisateur [sys_ui_page] est directe si le champ Direct est sélectionné. Une page d’interface utilisateur directe n’inclut pas le modèle de page HTML commun et doit inclure tous les formats CSS et JavaScript que vous souhaitez utiliser dans la page.
Toutes les pages de l’interface utilisateur non directes sont utilisées Next Experience par défaut.
Pour en savoir plus sur Next Experience, consultez l’interface utilisateur Next Experience.
L’API PolarisUI est fournie dans l’espace de noms sn_ui .
PolarisUI : canUsePolarisCSS()
Vérifie si la page actuelle peut utiliser l’interface Next Experience utilisateur.
la valeur true si toutes les conditions suivantes sont remplies.- sn_ui. PolarisUI.isEnabled() est
vrai. - Le paramètre sysparm_use_polaris d’URL de la demande n’est pas défini sur
faux. - L’en-tête de la requête HTTP de référence ne contient pas
sysparm_use_polaris=faux. - L’utilisation de la page ou de son module d’extension parent n’est pas refusée par un enregistrement de la table Prise en charge du thème de Next Experience page [sys_page_theme].
Utilisez cette méthode pour modifier conditionnellement le comportement ou la sortie de Jelly si Next Experience elle est activée.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Marqueur indiquant si la page actuelle peut utiliser l’interface Next Experience utilisateur. Valeurs valides :
|
Cette action d’interface utilisateur redirige vers une autre page si Next Experience elle est en cours d’exécution sur le formulaire actuel.
var id = current.getUniqueValue();
if (sn_ui.PolarisUI.canUsePolarisCSS())
action.setRedirectUrl("/now/custom/application/record/" + id);
return "/record.do?sys_id=" + id;
Ce script Jelly définit une feuille de style différente pour les pages à l’aide de Next Experience.
<g:evaluate var="jvar_css_path">
// Core UI content css record
var id = "5e8fde63d713310074304187ed61030d";
if (sn_ui.PolarisUI.canUsePolarisCSS())
id = "84f03cc87120a00cfab6dd207cb0b72";
"/" + id + ".cssdbx";
</g:evaluate>
<link href="${jvar_css_path}" rel="stylesheet" type="text/css" />
PolarisUI : getBodyClassNames()
Renvoie une liste de noms de classes CSS utilisés par l’interface Next Experience utilisateur.
<body> d’une page d’interface utilisateur pour définir les classes CSS requises pour Next Experience un rendu correct.<body class="$[sn_ui.PolarisUI.getBodyClassNames()]">Les noms de classe renvoyés changent en fonction des propriétés système et de l’existence d’une sortie de débogage de session.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Liste des noms de classes CSS utilisés par l’interface Next Experience utilisateur. |
Ce script Jelly s’ajoute Next Experience à une page d’interface utilisateur personnalisée.
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="true" xmlns:j="jelly:core" xmlns:g="glide" xmlns:g2="null">
<g2:doctype name="html" />
<g:inline template="dir_checker.xml"/>
<html class="${jvar_text_direction}" lang="$[gs.getSession().getLanguage()]">
<head>
<g:inline template="set_theme_vars.xml" /> <!-- sets jvar_theme and jvar_css_cache_key -->
<g:requires name="styles/css_includes_my_app.css" includes="true" params="$[jvar_css_cache_key]" />
<g:if_polaris>
<g:then><g:inline template="polarisberg_output.xml"/></g:when>
<g:else><g:inline template="heisenberg_output.xml" type="css"/></g:else>
</g:if_polaris>
</head>
<body class="$[sn_ui.PolarisUI.getBodyClassNames()]">
Your UI page content here
</body>
</html>
</j:jelly>
PolarisUI : isEnabled()
Vérifie si l’interface Next Experience utilisateur est activée pour l’utilisateur actuel.
- glide.ui.polaris.experience activé Next Experience sur l’instance.
- glide.ui.polaris.use Se désactive Next Experience pour les utilisateurs spécifiés si la valeur est faux.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Marqueur qui indique si l’interface Next Experience utilisateur est activée pour l’utilisateur actuel. Valeurs valides :
|
Cette page d’interface utilisateur affiche un message conditionnel à l’utilisateur si Next Experience cette option est activée pour l’utilisateur actuel.
<j:if test="${sn_ui.PolarisUI.isEnabled()}">
<a href="...">Click here to learn more about the new UI changes</a>
</j:if>
Cette règle métier affiche un message d’information sur l’affichage de l’enregistrement sur lequel un utilisateur peut cliquer pour afficher l’enregistrement au Interface utilisateur principale lieu de Next Experience. Le champ Condition de règle métier est défini sur !current.isNewRecord() &&sn_ui. PolarisUI.isEnabled() & sn_ui. PolarisUI.canUsePolarisCSS().
// business rule script field
(function executeRule(current, previous /*null when async*/) {
var sysId = current.getUniqueValue();
gs.addInfoMessage("<a href='/incident.do?sys_id="+ sysId +"&sysparm_use_polaris=false'>Click here to load this page in Core UI</a>");
})(current, previous);