PolarisUI : dans le champ d’application
L’API PolarisUI fournit des méthodes d’activation Next Experience sur les pages d’interface utilisateur directes.
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 CSS et JavaScript que vous souhaitez utiliser dans la page.
Toutes les pages de l’interface utilisateur non directe sont utilisées Next Experience par défaut.
Pour plus d’informations 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 vrai si toutes les conditions suivantes sont remplies.- sn_ui. PolarisUI.isEnabled() est
vrai. - Le paramètre sysparm_use_polaris URL de la demande n’est pas défini sur
faux. - L’en-tête de demande HTTP référent ne contient pas
sysparm_use_polaris=false. - L’utilisation de la page ou de son module d’extension parent n’est pas refusée par un enregistrement dans 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 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 elle Next Experience 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 utilisant 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 s’active Next Experience sur l’instance.
- glide.ui.polaris.use Désactive Next Experience pour les utilisateurs spécifiés si elle est définie sur faux.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Marqueur indiquant 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 la 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);