• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mozilla / blurts-server / 60e57f6c-c1fc-4266-895b-3944367d556f

pending completion
60e57f6c-c1fc-4266-895b-3944367d556f

Pull #2983

circleci

Florian Zia
chore: Fallback for when JS is not allowed
Pull Request #2983: MNTOR-971: Landing page section transitions

282 of 1677 branches covered (16.82%)

Branch coverage included in aggregate %.

36 of 36 new or added lines in 2 files covered. (100.0%)

959 of 4545 relevant lines covered (21.1%)

3.52 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/views/partials/landing.js
1
/* This Source Code Form is subject to the terms of the Mozilla Public
2
 * License, v. 2.0. If a copy of the MPL was not distributed with this
3
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4

5
import { getMessage } from '../../utils/fluent.js'
6

7
export const landing = () => `
×
8
<noscript>
9
  <style>
10
    .section-transition {
11
      opacity: 1;
12
    }
13
  </style>
14
</noscript>
15
<section class='hero section-transition'>
16
  <div>
17
    <h1>${getMessage('exposure-landing-hero-heading')}</h1>
18
    <p>${getMessage('exposure-landing-hero-lead')}</p>
19
    <form hidden class="exposure-scan">
20
      <label for="scan-email-adddress" class="visually-hidden">
21
        ${getMessage('exposure-landing-hero-email-label')}
22
      </label>
23
      <input
24
        id="scan-email-address"
25
        name="email"
26
        type="email"
27
        placeholder="${getMessage('exposure-landing-hero-email-placeholder')}"
28
        required
29
      />
30
      <button
31
        type="submit"
32
        class='button primary'
33
        data-cta-id='exposure-landing-1'
34
      >
35
        ${getMessage('exposure-landing-hero-cta-label')}
36
      </button>
37
    </form>
38
  </div>
39
  <figure>
40
    <img srcset='images/landing-hero.webp 530w, images/landing-hero@2x.webp 1059w' width='530' height='406' alt=''>
41
  </figure>
42
</section>
43
<section class='why-use-monitor section-transition'>
44
  <h2>${getMessage('why-use-monitor')}</h2>
45
  <p>${getMessage('identifying-breaches')}</p>
46
  <ul>
47
    <li>
48
      <h3>${getMessage('protect-account')}</h3>
49
      <p>${getMessage('protect-account-prevent-hackers')}</p>
50
    </li>
51
    <li>
52
      <h3>${getMessage('prevent-fraud')}</h3>
53
      <p>${getMessage('prevent-fraud-keep-info')}</p>
54
    </li>
55
    <li>
56
      <h3>${getMessage('get-alerts')}</h3>
57
      <p>${getMessage('get-alerts-find-out')}</p>
58
    </li>
59
  </ul>
60
</section>
61
<section class='how-it-works section-transition'>
62
  <h2>${getMessage('how-it-works')}</h2>
63
  <ol>
64
    <li>
65
      <img srcset='images/landing-laptop.webp 250w, images/landing-laptop@2x.webp 500w' width='250' height='139' loading='lazy' alt=''>
66
      <h3>${getMessage('check-for-breaches')}</h3>
67
      <p>${getMessage('check-for-breaches-we-search')}</p>
68
    </li>
69
    <li>
70
      <img srcset='images/landing-lock.webp 204w, images/landing-lock@2x.webp 408w' width='204' height='148' loading='lazy' alt=''>
71
      <h3>${getMessage('protect-accounts')}</h3>
72
      <p>${getMessage('protect-accounts-clear-steps')}</p>
73
    </li>
74
    <li>
75
      <img srcset='images/landing-mail.webp 170w, images/landing-mail@2x.webp 340w' width='170' height='148' loading='lazy' alt=''>
76
      <h3>${getMessage('alerts-for-breaches')}</h3>
77
      <p>${getMessage('alerts-for-breaches-monitor-new')}</p>
78
    </li>
79
  </ol>
80
</section>
81
<section class='safe-with-us section-transition'>
82
  <div>
83
    <h2>${getMessage('safe-with-us')}</h2>
84
    <p>${getMessage('parent-company')}</p>
85
    <p>${getMessage('our-mission')}</p>
86
    <p><a href='https://www.mozilla.org/mission/' target='_blank'>${getMessage('learn-more-mission')}</a></p>
87
  </div>
88
  <figure>
89
    <img srcset='images/landing-nature-phone.webp 539w, images/landing-nature-phone@2x.webp 1078w' width='539' height='503' loading='lazy' alt=''>
90
  </figure>
91
</section>
92
<section class='top-questions-about-monitor section-transition'>
93
  <div>
94
    <h2>${getMessage('top-questions-about-monitor')}</h2>
95
    <a href='https://support.mozilla.org/kb/firefox-monitor-faq' target='_blank'>${getMessage('see-all-faq')}</a>
96
  </div>
97
  <div>
98
    <details>
99
      <summary>${getMessage('what-is-breach')}</summary>
100
      <p>${getMessage('when-info-exposed')}</p>
101
    </details>
102
    <details>
103
      <summary>${getMessage('what-do-i-do')}</summary>
104
      <p>${getMessage('visit-monitor-to-learn')}</p>
105
    </details>
106
    <details>
107
      <summary>${getMessage('what-gets-exposed')}</summary>
108
      <p>${getMessage('depends-on-hackers')}</p>
109
    </details>
110
  </div>
111
</section>
112
<section class='see-if-data-breach section-transition'>
113
  <h2>${getMessage('see-if-data-breach')}</h2>
114
  <a class='button primary' data-cta-id='landing-2' href='/user/breaches'>${getMessage('get-started')}</a>
115
</section>
116
`
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc