google-nomulus/java/google/registry/ui/soy/registrar/Console.soy
jakubvrana 6740e9270f Remove autoescape="strict" attributes from Soy templates.
Strict autoescaping is the default so they serve no purpose.

Design doc: []

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=170725633
2017-10-04 16:16:45 -04:00

300 lines
10 KiB
Text

// Copyright 2017 The Nomulus Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
{namespace registry.soy.registrar.console}
/**
* Main registrar page. We use a single page architecture (SPA) so content is
* filled in dynamically into reg-app element via JS rendering of Component.soy
* and other templates within it.
*/
{template .main}
{@param xsrfToken: string} /** Security token. */
{@param clientId: string} /** Registrar client identifier. */
{@param username: string} /** Arbitrary username to display. */
{@param logoutUrl: string} /** Generated URL for logging out of Google. */
{@param showPaymentLink: bool}
{@param productName: string} /** Name to display for this software product. */
{@param integrationEmail: string}
{@param supportEmail: string}
{@param announcementsEmail: string}
{@param supportPhoneNumber: string}
{@param technicalDocsUrl: string}
{call registry.soy.console.header}
{param app: 'registrar' /}
{param subtitle: 'Registrar Console' /}
{/call}
{call registry.soy.console.googlebar data="all" /}
<div id="reg-app">
<div id="reg-appbar" class="{css('kd-appbar')}"></div>
{call .navbar_ data="all" /}
<div id="reg-content-and-footer">
<div id="reg-content">
// Dynamic content goes here.
</div>
{call registry.soy.console.footer /}
</div>
</div>
{switch DEBUG}
{case google.registry.ui.ConsoleDebug.PRODUCTION}
<script src="/assets/js/registrar_bin.js"></script>
{case google.registry.ui.ConsoleDebug.DEBUG}
<script src="/assets/js/registrar_dbg.js"></script>
{case google.registry.ui.ConsoleDebug.RAW}
<script>var CLOSURE_NO_DEPS = true;</script>
<script src="/assets/sources/closure_library/closure/goog/base.js"></script>
<script src="/assets/sources/domain_registry/java/google/registry/ui/deps.js"></script>
<script>goog.require('registry.registrar.main');</script>
{/switch}
{if isNonnull(DEBUG)}
<script>
registry.registrar.main({$xsrfToken},
{$clientId},
{$productName},
{$integrationEmail},
{$supportEmail},
{$announcementsEmail},
{$supportPhoneNumber},
{$technicalDocsUrl});
</script>
{/if}
{/template}
/** Sidebar nav. Ids on each elt for testing only. */
{template .navbar_ visibility="private"}
{@param showPaymentLink: bool}
<div id="reg-nav" class="{css('kd-content-sidebar')}">
<ul id="reg-navlist">
<li>
<a href="/registrar#">Home</a>
<li>
<a href="/registrar#resources">Resources &amp; billing</a>
{if $showPaymentLink}
<li>
<a href="/registrar#payment">Pay invoice</a>
{/if}
<li>
<ul>
<span class="{css('reg-navlist-sub')}">Settings</span>
<li>
<a href="/registrar#whois-settings">WHOIS</a>
<li>
<a href="/registrar#security-settings">Security</a>
<li>
<a href="/registrar#contact-settings">Contact</a>
</ul>
<li>
<a href="/registrar#contact-us">Contact us</a>
</ul>
</div>
{/template}
/**
* Feature disabled
*/
{template .disabled}
{@param logoFilename: string}
{@param productName: string}
{call registry.soy.console.header}
{param app: 'registrar' /}
{param subtitle: 'Console Disabled' /}
{/call}
<div class="{css('whoAreYou-disabled')}">
<a class="{css('logo')}" href="/registrar">
<img src="/assets/images/{$logoFilename}" alt="{$productName}">
</a>
<h1>Console is disabled</h1>
<p>
The {$productName} registrar console is temporarily disabled. Please
contact your customer service representative for more information.
<p>
<img src="/assets/images/android_sad.png">
</div>
{/template}
/**
* Who goes thar?!
*/
{template .whoareyou}
{@param username: string} /** Arbitrary username to display. */
{@param logoutUrl: string} /** Generated URL for logging out of Google. */
{@param logoFilename: string}
{@param productName: string}
{call registry.soy.console.header}
{param app: 'registrar' /}
{param subtitle: 'Please Login' /}
{/call}
<div class="{css('whoAreYou')}">
<a class="{css('logo')}" href="/registrar">
<img src="/assets/images/{$logoFilename}" alt="{$productName}">
</a>
<h1>You need permission</h1>
<p>
The account you are logged in as is not associated with {$productName}.
Please contact your customer service representative or
switch to an account associated with {$productName}.
<p>
You are signed in as <strong>{$username}</strong>.
<div>
<a href="{$logoutUrl}"
class="{css('kd-button')} {css('kd-button-submit')}"
tabindex="-1">Logout and switch to another account</a>
</div>
</div>
{/template}
/** Welcome text and nav. */
{template .dashboard}
{@param productName: string}
<div id="domain-registrar-dashboard">
<h1>Welcome to the {$productName} Registrar Console<super>BETA</super></h1>
<p>This console can help you manage your relationship with {$productName} and
allow self-service for key operations.</p>
<table>
<tr>
<td>
<div class="{css('dashbox')}">
<img src="/assets/images/homeResources.png">
<h2>Access Resources</h2>
Use Google Drive to view<br>
onboarding FAQs, technical<br>
documentation &amp; billing reports.
</div>
<td>
<div class="{css('dashbox')}">
<img id="gear" src="/assets/images/homeSettings.png">
<h2>Manage Settings</h2>
Security, WHOIS &amp; contact<br>
settings are easy to view and edit.
</div>
<td>
<div class="{css('dashbox')}">
<img src="/assets/images/homeContact.png">
<h2>Contact Us</h2>
View important phone &amp; email<br>
contact information for<br>
{$productName}.
</div>
</tr>
</table>
<p><img id="rotate" src="/assets/images/explore_24.png">We're
hard at work creating new features for the console. Stay tuned
for updates!
</div>
{/template}
/** Contact us. */
{template .contactUs}
{@param? phonePasscode: string}
{@param integrationEmail: string}
{@param supportEmail: string}
{@param announcementsEmail: string}
{@param supportPhoneNumber: string}
<div id="domain-registrar-contact-us" class="{css('item')}">
<h1>Contact us</h1>
<p>Our support team can assist you with any technical or operational
questions you may have regarding our registry services.
<table>
<tr class="{css('kd-settings-pane-section')}">
<td>
<label class="{css('setting-label')}">Email</label>
</td>
<td class="{css('setting')}">
<p>
<a href="mailto:{$integrationEmail}">{$integrationEmail}</a><br>
For help with OT&amp;E sandbox and certification, or new
technical requirements for any of our new TLD launches.
<p>
<a href="mailto:{$supportEmail}">{$supportEmail}</a><br>
For general purpose questions once you are integrated
with our registry system. If the issue is urgent, please put
&quot;Urgent&quot; in the email title.
<p class="{css('description')}">Note: You may receive occasional service
announcements
via <strong>{$announcementsEmail}</strong>. You
will not be able to reply to those messages.
<tr><td colspan="2"><hr>
<tr class="{css('kd-settings-pane-section')}">
<td>
<label class="{css('setting-label')}">Phone</label>
<span class="{css('description')}">For general support inquiries 24x7</span>
</td>
<td class="{css('setting')}">
<p>Please be ready with your account name and telephone passcode
when contacting us by phone.
<p>Your telephone passcode
is: <span id="domain-registrar-phone-passcode">
{if (isNonnull($phonePasscode))}
{$phonePasscode}
{else}
<em>pending allocation</em>
{/if}
</span>
<p>Call us at:
<p id="registry-phone"><a href="tel:{$supportPhoneNumber}">{$supportPhoneNumber}</a>
</td>
</table>
</div>
{/template}
/** Resources and billing links. */
{template .resources}
{@param? driveFolderId: string}
{@param technicalDocsUrl: string}
<div id="domain-registrar-resources">
<h1>Resources &amp; billing</h1>
<p>
The registry system uses <strong>Google Drive</strong> to share
important documentation.
<h2><img src="/assets/images/folder.png">TLD information</h2>
<p>
Find onboarding FAQs &amp; technical documentation here:
<br><br>
<a class="{css('kd-button')} {css('kd-button-submit')}"
href="{$technicalDocsUrl}"
target="_blank" rel="noopener">View TLD information on Google Drive</a>
<h2><img src="/assets/images/folder.png">Billing details</h2>
<p>
Find information on all transaction activity behind your monthly invoices in this folder.
<p>
{if (isNonnull($driveFolderId))}
<a id="reg-resources-driveLink"
class="{css('kd-button')} {css('kd-button-submit')}"
href="https://drive.google.com/drive/folders/{$driveFolderId}"
target="_blank" rel="noopener">View billing details on Google Drive</a>
{else}
<em>Your billing folder is pending allocation.</em>
{/if}
</div>
{/template}
/** Loading page. */
{template .loading}
<img alt="[Loading...]" src="/assets/images/loader4x.gif" width="87" height="87">
{/template}