mirror of
https://github.com/google/nomulus.git
synced 2025-07-01 00:33:34 +02:00
Genericize "Contact Us" page
Parameterize integration, support and announcement email addresses and contact phone number, make static parameters flow through the system in a consistent manner. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=136183813
This commit is contained in:
parent
6a4088a8b6
commit
84bbb9a7c0
16 changed files with 177 additions and 65 deletions
|
@ -38,17 +38,19 @@ goog.forwardDeclare('registry.Component');
|
|||
|
||||
/**
|
||||
* The Registrar Console.
|
||||
* @param {string} xsrfToken Populated by server-side soy template.
|
||||
* @param {string} clientId The logged in GAE user.
|
||||
* @param {string} productName The software name displayed on the UI.
|
||||
* @param {!Object} params Parameters to be passed into templates. These are
|
||||
* a combination of configurable parameters (e.g. phone number) and
|
||||
* user/session/registrar specific parameters. See
|
||||
* registrar/Console.soy#.main for expected contents.
|
||||
* @constructor
|
||||
* @extends {registry.Console}
|
||||
* @final
|
||||
*/
|
||||
registry.registrar.Console = function(xsrfToken, clientId, productName) {
|
||||
registry.registrar.Console = function(params) {
|
||||
registry.registrar.Console.base(
|
||||
this, 'constructor',
|
||||
new registry.registrar.EppSession(this, xsrfToken, clientId));
|
||||
new registry.registrar.EppSession(this, params.xsrfToken,
|
||||
params.clientId));
|
||||
|
||||
/**
|
||||
* Component that's currently embedded in the page.
|
||||
|
@ -62,15 +64,9 @@ registry.registrar.Console = function(xsrfToken, clientId, productName) {
|
|||
this.history.setEnabled(true);
|
||||
|
||||
/**
|
||||
* @type {!string}
|
||||
* @private
|
||||
* @type {!Object}
|
||||
*/
|
||||
this.xsrfToken_ = xsrfToken;
|
||||
|
||||
/**
|
||||
* @type {string}
|
||||
*/
|
||||
this.productName = productName;
|
||||
this.params = params;
|
||||
|
||||
/**
|
||||
* Last active nav element.
|
||||
|
@ -142,7 +138,7 @@ registry.registrar.Console.prototype.handleHashChange = function() {
|
|||
componentCtor = this.pageMap[''];
|
||||
}
|
||||
var oldComponent = this.component_;
|
||||
this.component_ = new componentCtor(this, this.xsrfToken_);
|
||||
this.component_ = new componentCtor(this, this.params.xsrfToken);
|
||||
this.registerDisposable(this.component_);
|
||||
this.component_.basePath = type;
|
||||
this.component_.bindToDom(id);
|
||||
|
|
|
@ -16,6 +16,7 @@ goog.provide('registry.registrar.ContactUs');
|
|||
|
||||
goog.require('goog.Uri');
|
||||
goog.require('goog.dom');
|
||||
goog.require('goog.object');
|
||||
goog.require('registry.Resource');
|
||||
goog.require('registry.ResourceComponent');
|
||||
goog.require('registry.soy.registrar.console');
|
||||
|
@ -44,6 +45,15 @@ registry.registrar.ContactUs = function(console, xsrfToken) {
|
|||
goog.inherits(registry.registrar.ContactUs, registry.ResourceComponent);
|
||||
|
||||
|
||||
/** @override */
|
||||
registry.registrar.ContactUs.prototype.renderItem = function(rspObj) {
|
||||
// Augment the static parameters with the response object, we'll need both.
|
||||
var params = goog.object.clone(this.console.params);
|
||||
goog.object.extend(params, rspObj);
|
||||
registry.registrar.ContactUs.base(this, 'renderItem', params);
|
||||
};
|
||||
|
||||
|
||||
/** @override */
|
||||
registry.registrar.ContactUs.prototype.bindToDom = function(id) {
|
||||
registry.registrar.ContactUs.base(this, 'bindToDom', '');
|
||||
|
|
|
@ -55,9 +55,7 @@ registry.registrar.Dashboard.prototype.bindToDom = function(id) {
|
|||
goog.dom.removeChildren(goog.dom.getRequiredElement('reg-appbar'));
|
||||
goog.soy.renderElement(goog.dom.getElement('reg-content'),
|
||||
registry.soy.registrar.console.dashboard,
|
||||
{
|
||||
productName: this.console.productName
|
||||
});
|
||||
this.console.params);
|
||||
goog.events.listen(goog.dom.getElement('rotate'),
|
||||
goog.events.EventType.CLICK,
|
||||
goog.bind(this.rotate_, this));
|
||||
|
|
|
@ -29,8 +29,22 @@ goog.require('registry.registrar.Console');
|
|||
* @param {string} xsrfToken populated by server-side soy template.
|
||||
* @param {string} clientId The registrar clientId.
|
||||
* @param {string} productName the product name displayed by the UI.
|
||||
* @param {string} integrationEmail
|
||||
* @param {string} supportEmail
|
||||
* @param {string} announcementsEmail
|
||||
* @param {string} supportPhoneNumber
|
||||
* @export
|
||||
*/
|
||||
registry.registrar.main = function(xsrfToken, clientId, productName) {
|
||||
new registry.registrar.Console(xsrfToken, clientId, productName);
|
||||
registry.registrar.main = function(xsrfToken, clientId, productName,
|
||||
integrationEmail, supportEmail,
|
||||
announcementsEmail, supportPhoneNumber) {
|
||||
new registry.registrar.Console({
|
||||
xsrfToken: xsrfToken,
|
||||
clientId: clientId,
|
||||
productName: productName,
|
||||
integrationEmail: integrationEmail,
|
||||
supportEmail: supportEmail,
|
||||
announcementsEmail: announcementsEmail,
|
||||
supportPhoneNumber: supportPhoneNumber
|
||||
});
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue