PolarisUI - Dans le champ d’application
L’API PolarisUI fournit des méthodes d’activation Next Experience sur les pages directes de l’interface utilisateur.
Une page d’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 mais doit inclure tous les 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 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 d’URL de la demande n’est pas défini sur
false. - L’en-tête de demande HTTP référent 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 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 des noms de classe 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 classes renvoyés changent en fonction des propriétés système et de l’existence ou non d’une sortie de débogage de session.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Liste des noms de classe 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 Se désactive Next Experience pour les utilisateurs spécifiés si la valeur 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 elle 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 dans 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);