创建新登录屏幕

您可以修改使用AEM Forms登录屏幕的所有AEM Forms模块的登录屏幕。 例如,修改会影响Forms Manager和AEM Forms工作区的登录屏幕。

先决条件

  1. 使用管理员权限登录/lc/crx/de

  2. 执行以下操作:

    1. 复制分层结构:/libs/livecycle/core/content/apps/livecycle/core/content。 维护相同(节点/文件夹)属性和访问控制。
    2. 复制内容文件夹:从/libs/livecycle/core/apps/livecycle/core
    3. 删除/apps/livecycle/core文件夹的内容。
  3. 执行以下操作:

    1. 复制分层结构:/libs/livecycle/core/components/login/apps/livecycle/core/components/login。 维护相同(节点/文件夹)属性和访问控制。
    2. 复制组件文件夹:从/libs/livecycle/core/apps/livecycle/core
    3. 删除文件夹的内容:/apps/livecycle/core/components/login

添加新区域设置

  1. 复制i18n文件夹:

    • /libs/livecycle/core/components/login
    • /apps/livecycle/core/components/login
  2. 删除i18n中除一个文件夹外的所有文件夹,例如en

  3. 在文件夹en上,执行以下操作:

    1. 将文件夹重命名为要支持的区域设置名称。 例如,ar
    2. 将属性jcr:language值更改为ar(对于ar文件夹)。
    注意

    如果区域设置是语言 — 国家/地区代码组合,例如ar-DZ,则将文件夹名称和属性值更改为ar-DZ

  4. 复制 login.jsp:

    • /libs/livecycle/core/components/login
    • /apps/livecycle/core/components/login
  5. 修改/apps/livecycle/core/components/login/login.jsp的以下代码片段:

    区域设置是语言代码

    String browserLocale = "en";
        for(int i=0; i<locales.length; i++)
        {
            String prioperty = locales[i];
            if(prioperty.trim().startsWith("en")) {
                browserLocale = "en";
                break;
            }
            if(prioperty.trim().startsWith("de")){
                browserLocale = "de";
                break;
            }
            if(prioperty.trim().startsWith("ja")){
                browserLocale = "ja";
                break;
            }
            if(prioperty.trim().startsWith("fr")){
                browserLocale = "fr";
                break;
            }
        }
    
    To
    
    String browserLocale = "en";
        for(int i=0; i<locales.length; i++)
        {
            String prioperty = locales[i];
            if(prioperty.trim().startsWith("ar")) {
                browserLocale = "ar";
                break;
            }
            if(prioperty.trim().startsWith("en")) {
                browserLocale = "en";
                break;
            }
            if(prioperty.trim().startsWith("de")){
                browserLocale = "de";
                break;
            }
            if(prioperty.trim().startsWith("ja")){
                browserLocale = "ja";
                break;
            }
            if(prioperty.trim().startsWith("fr")){
                browserLocale = "fr";
                break;
            }
        }
    

    区域设置是语言国家/地区代码

    String browserLocale = "en";
        for(int i=0; i<locales.length; i++)
        {
            String prioperty = locales[i];
            if(prioperty.trim().startsWith("en")) {
                browserLocale = "en";
                break;
            }
            if(prioperty.trim().startsWith("de")){
                browserLocale = "de";
                break;
            }
            if(prioperty.trim().startsWith("ja")){
                browserLocale = "ja";
                break;
            }
            if(prioperty.trim().startsWith("fr")){
                browserLocale = "fr";
                break;
            }
        }
    
    To
    
    String browserLocale = "en";
        for(int i=0; i<locales.length; i++)
        {
            String prioperty = locales[i];
            if(prioperty.trim().equalsIgnoreCase("ar-DZ")) {
                browserLocale = "ar-DZ";
                break;
            }
            if(prioperty.trim().startsWith("en")) {
                browserLocale = "en";
                break;
            }
            if(prioperty.trim().startsWith("de")){
                browserLocale = "de";
                break;
            }
            if(prioperty.trim().startsWith("ja")){
                browserLocale = "ja";
                break;
            }
            if(prioperty.trim().startsWith("fr")){
                browserLocale = "fr";
                break;
            }
        }
    

    更改默认区域设置

    String browserLocale = "en";
    for(int i=0; i<locales.length; i++)
    
    To
    
    String browserLocale = "ar";
    for(int i=0; i<locales.length; i++)
    

添加新文本,或修改现有文本

  1. 复制i18n文件夹:

    • /libs/livecycle/core/components/login
    • /apps/livecycle/core/components/login
  2. 现在,修改要更改其文本的节点的属性sling:message值(位于所需的区域设置代码文件夹下)。 转换通过节点sling:key属性值中提及的键完成。

  3. 要添加新的键值对,请执行以下操作。 请查看屏幕截图中的示例,该示例如下所示。

    1. 创建类型为sling:MessageEntry的节点,或复制现有节点并重命名所有区域设置文件夹下的节点。

    2. 复制 login.jsp :

      • /libs/livecycle/core/components/login
      • /apps/livecycle/core/components/login
    3. 修改/apps/livecycle/core/components/login/login.jsp以合并新添加的文本。

    捕获

    div class="loginContent">
                        <span class="loginFlow"></span>
                        <span class="loginVersion"><%= i18n.get("Version: 11.0.0") %></span>
                        <span class="loginTitle"><%= i18n.get("Login") %></span>
                        <% if (loginFailed) {%>
    
    To
    
    div class="loginContent">
                        <span class="loginFlow"></span>
                        <span class="loginVersion"><%= i18n.get("My Welcome Message") %></span>
                        <span class="loginVersion"><%= i18n.get("Version: 11.0.0") %></span>
                        <span class="loginTitle"><%= i18n.get("Login") %></span>
                        <% if (loginFailed) {%>
    

添加新样式或修改现有样式

  1. 复制login节点:

    • /libs/livecycle/core/content
    • /apps/livecycle/core/content
  2. 从节点/apps/livecycle/core/content/login.中删除文件login.jsjquery-1.8.0.min.js

  3. 修改CSS文件中的样式。

  4. 要添加新样式,请执行以下操作:

    1. /apps/livecycle/core/content/login/login.css添加新样式

    2. 复制 login.jsp

      • /libs/livecycle/core/components/login
      • /apps/livecycle/core/components/login
    3. 修改/apps/livecycle/core/components/login/login.jsp以合并新添加的样式。

  5. 例如:

    • 将以下内容添加到/apps/livecycle/core/content/login/login.css
    .newLoginContentArea {
     width: 700px;
     padding: 100px 0px 0px 100px;
    }
    
    • 在/apps/livecycle/core/components/login.jsp中修改以下内容。
    <div class="loginContentArea">
    
    To
    
    <div class="newLoginContentArea">
    
注意

如果删除了/apps/livecycle/core/content/login(从/libs/livecycle/core/content/login复制)中的现有图像,则删除CSS中的相应引用。

添加新映像

  1. 按照添加新样式或修改现有样式的步骤操作(见上文)。

  2. /apps/livecycle/core/content/login中添加新图像。 要添加图像,请执行以下操作:

    1. 安装WebDAV客户端。
    2. 使用webDAV客户端导航到/apps/livecycle/core/content/login文件夹。 有关更多信息,请参阅:https://dev.day.com/docs/en/crx/current/how_to/webdav_access.html
    3. 添加新图像。
  3. /apps/livecycle/core/content/login/login.css,中添加与在/apps/livecycle/core/content/login中添加的新图像对应的新样式。

  4. /apps/livecycle/core/componentslogin.jsp中使用新样式。

  5. 例如:

    • 将以下内容添加到/apps/livecycle/core/content/login/login.css
    .newLoginContainerBkg {
     background-image: url(my_Bg.gif);
     background-repeat: no-repeat;
     background-position: left top;
     width: 727px;
    }
    
    • 在/apps/livecycle/core/components/login.jsp中修改以下内容。
    <div class="loginContainerBkg">
    
    To
    
    <div class="newLginContainerBkg">
    

在此页面上