1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 cr
.define('print_preview', function() {
9 * Widget that renders a terms-of-service agreement for using the FedEx Office
12 * @extends {print_preview.Component}
15 print_preview
.Component
.call(this);
19 * Enumeration of event types dispatched by the widget.
22 FedexTos
.EventType
= {
23 // Dispatched when the user agrees to the terms-of-service.
24 AGREE
: 'print_preview.FedexTos.AGREE'
27 FedexTos
.prototype = {
28 __proto__
: print_preview
.Component
.prototype,
30 /** @param {boolean} isVisible Whether the widget is visible. */
31 setIsVisible: function(isVisible
) {
33 var heightHelperEl
= this.getElement().querySelector('.height-helper');
34 this.getElement().style
.height
= heightHelperEl
.offsetHeight
+ 'px';
36 this.getElement().style
.height
= 0;
41 createDom: function() {
42 this.setElementInternal(this.cloneTemplateInternal('fedex-tos-template'));
43 var tosTextEl
= this.getElement().querySelector('.tos-text');
44 tosTextEl
.innerHTML
= loadTimeData
.getStringF(
46 '<a href="http://www.fedex.com/us/office/copyprint/online/' +
47 'googlecloudprint/termsandconditions">',
52 enterDocument: function() {
53 var agreeCheckbox
= this.getElement().querySelector('.agree-checkbox');
55 agreeCheckbox
, 'click', this.onAgreeCheckboxClick_
.bind(this));
59 * Called when the agree checkbox is clicked. Dispatches a AGREE event.
62 onAgreeCheckboxClick_: function() {
63 cr
.dispatchSimpleEvent(this, FedexTos
.EventType
.AGREE
);