pug to html

This commit is contained in:
Matteo Pagliazzi
2019-10-12 16:33:05 +02:00
parent 88243a32fa
commit 07349c70bc
236 changed files with 16708 additions and 9648 deletions
+18 -10
View File
@@ -1,11 +1,19 @@
<template lang="pug">
.container-fluid.text-center
.row
.col-md-6.offset-3
h1 {{ $t('checkOutMobileApps') }}
.promo_habitica(style='border-radius:25px;margin:auto;margin-bottom:30px')
a(href='https://play.google.com/store/apps/details?id=com.habitrpg.android.habitica&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1')
img(alt='Get it on Google Play', src='https://play.google.com/intl/en_us/badges/images/apps/en-play-badge.png', style='width:139px;height:45px;image-rendering:auto;vertical-align:top')
a(href='https://geo.itunes.apple.com/us/app/habitica/id994882113?mt=8', style='display:inline-block;overflow:hidden;background:url(http://linkmaker.itunes.apple.com/images/badges/en-us/badge_appstore-lrg.svg#svgView) no-repeat;background-size:100%;width:152px;height:45px;margin-left:20px;image-rendering:auto')
<template>
<div class="container-fluid text-center">
<div class="row">
<div class="col-md-6 offset-3">
<h1>{{ $t('checkOutMobileApps') }}</h1><div
class="promo_habitica"
style="border-radius:25px;margin:auto;margin-bottom:30px"
></div><a href="https://play.google.com/store/apps/details?id=com.habitrpg.android.habitica&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1&utm_source=global_co&utm_medium=prtnr&utm_content=Mar2515&utm_campaign=PartBadge&pcampaignid=MKT-AC-global-none-all-co-pr-py-PartBadges-Oct1515-1"><img
alt="Get it on Google Play"
src="https://play.google.com/intl/en_us/badges/images/apps/en-play-badge.png"
style="width:139px;height:45px;image-rendering:auto;vertical-align:top"
></a><a
href="https://geo.itunes.apple.com/us/app/habitica/id994882113?mt=8"
style="display:inline-block;overflow:hidden;background:url(http://linkmaker.itunes.apple.com/images/badges/en-us/badge_appstore-lrg.svg#svgView) no-repeat;background-size:100%;width:152px;height:45px;margin-left:20px;image-rendering:auto"
></a>
</div>
</div>
</div>
</template>
@@ -1,17 +1,20 @@
<template lang="pug">
.container-fluid.text-center
.row
.col-md-6.offset-3
h1 {{ $t('clearBrowserData') }}
p(v-html="$t('localStorageTryFirst', localStorageTryFirst) ")
br
p.text-center
button.btn.btn-lg.btn-danger(@click='clearLocalStorage()',
popover-trigger='mouseover', :popover="$t('localStorageClearExplanation')")
| {{ $t('localStorageClear') }}
br
p(v-html="$t('localStorageTryNext', localStorageTryNext) ")
<template>
<div class="container-fluid text-center">
<div class="row">
<div class="col-md-6 offset-3">
<h1>{{ $t('clearBrowserData') }}</h1><p v-html="$t('localStorageTryFirst', localStorageTryFirst) "></p><br><p class="text-center">
<button
class="btn btn-lg btn-danger"
popover-trigger="mouseover"
:popover="$t('localStorageClearExplanation')"
@click="clearLocalStorage()"
>
{{ $t('localStorageClear') }}
</button>
</p><br><p v-html="$t('localStorageTryNext', localStorageTryNext) "></p>
</div>
</div>
</div>
</template>
<script>
@@ -1,206 +1,71 @@
<template lang="pug">
.container-fluid
h1 {{ $t('communityGuidelines') }}
hr
p {{ $t('lastUpdated') }} March 29, 2018
h2#welcome {{ $t('commGuideHeadingWelcome') }}
.media.align-items-center
img(src='~@/assets/images/community-guidelines/intro.png')
.media-body
p(v-html="$t('commGuidePara001')")
p(v-html="$t('commGuidePara002')")
p(v-html="$t('commGuidePara003')")
p(v-html="$t('commGuidePara004')")
h2#interactions {{ $t('commGuideHeadingInteractions') }}
.media.align-items-center
.media-body
p(v-html="$t('commGuidePara015')")
p(v-html="$t('commGuidePara016')")
img(src='~@/assets/images/community-guidelines/publicSpaces.png')
ul
li(v-html="$t('commGuideList02A')")
li(v-html="$t('commGuideList02B')")
li(v-html="$t('commGuideList02C')")
li(v-html="$t('commGuideList02D')")
li(v-html="$t('commGuideList02E')")
li(v-html="$t('commGuideList02F')")
li(v-html="$t('commGuideList02G')")
li(v-html="$t('commGuideList02H')")
li(v-html="$t('commGuideList02I')")
li(v-html="$t('commGuideList02J')")
li(v-html="$t('commGuideList02K')")
li(v-html="$t('commGuideList02L')")
p(v-html="$t('commGuidePara019')")
p(v-html="$t('commGuidePara020')")
p(v-html="$t('commGuidePara020A')")
p(v-html="$t('commGuidePara021')")
h3#tavern {{ $t('commGuideHeadingTavern') }}
.media.align-items-center
img(src='~@/assets/images/community-guidelines/tavern.png')
.media-body
p(v-html="$t('commGuidePara022')")
p(v-html="$t('commGuidePara023')")
p(v-html="$t('commGuidePara024')")
.media.align-items-center
.media-body
p(v-html="$t('commGuidePara027')")
img(src='~@/assets/images/community-guidelines/backCorner.png')
h3#guilds {{ $t('commGuideHeadingPublicGuilds') }}
.media.align-items-center
.media-body
p(v-html="$t('commGuidePara029')")
p(v-html="$t('commGuidePara031')")
img(src='~@/assets/images/community-guidelines/publicGuilds.png')
p(v-html="$t('commGuidePara033')")
p(v-html="$t('commGuidePara035')")
p(v-html="$t('commGuidePara036')")
p(v-html="$t('commGuidePara037')")
p(v-html="$t('commGuidePara038')")
h2#infractions-consequences-restoration {{ $t('commGuideHeadingInfractionsEtc') }}
h3#infractions {{ $t('commGuideHeadingInfractions') }}
.media.align-items-center
img(src='~@/assets/images/community-guidelines/infractions.png')
.media-body
p(v-html="$t('commGuidePara050')")
p(v-html="$t('commGuidePara051')")
h4 {{ $t('commGuideHeadingSevereInfractions') }}
p(v-html="$t('commGuidePara052')")
p(v-html="$t('commGuidePara053')")
ul
li(v-html="$t('commGuideList05A')")
li(v-html="$t('commGuideList05B')")
li(v-html="$t('commGuideList05C')")
li(v-html="$t('commGuideList05D')")
li(v-html="$t('commGuideList05E')")
li(v-html="$t('commGuideList05F')")
li(v-html="$t('commGuideList05G')")
h4 {{ $t('commGuideHeadingModerateInfractions') }}
p(v-html="$t('commGuidePara054')")
p(v-html="$t('commGuidePara055')")
ul
li(v-html="$t('commGuideList06A')")
li(v-html="$t('commGuideList06B')")
li(v-html="$t('commGuideList06C')")
li(v-html="$t('commGuideList06D')")
li(v-html="$t('commGuideList06E')")
h4 {{ $t('commGuideHeadingMinorInfractions') }}
p(v-html="$t('commGuidePara056')")
p(v-html="$t('commGuidePara057')")
ul
li(v-html="$t('commGuideList07A')")
li(v-html="$t('commGuideList07B')")
p(v-html="$t('commGuidePara057A')")
h3#consequences {{ $t('commGuideHeadingConsequences') }}
.media.align-items-center
.media-body
p(v-html="$t('commGuidePara058')")
p(v-html="$t('commGuidePara059')")
img(src='~@/assets/images/community-guidelines/consequences.png')
p(v-html="$t('commGuidePara060')")
ul
li(v-html="$t('commGuideList08A')")
li(v-html="$t('commGuideList08B')")
li(v-html="$t('commGuideList08C')")
p(v-html="$t('commGuidePara060A')")
p(v-html="$t('commGuidePara060B')")
h4 {{ $t('commGuideHeadingSevereConsequences') }}
ul
li(v-html="$t('commGuideList09A')")
li(v-html="$t('commGuideList09C')")
h4 {{ $t('commGuideHeadingModerateConsequences') }}
ul
li {{ $t('commGuideList10A') }}
ul
li {{ $t('commGuideList10A1') }}
li(v-html="$t('commGuideList10C')")
li(v-html="$t('commGuideList10D')")
li(v-html="$t('commGuideList10E')")
li(v-html="$t('commGuideList10F')")
h4 {{ $t('commGuideHeadingMinorConsequences') }}
ul
li(v-html="$t('commGuideList11A')")
li(v-html="$t('commGuideList11B')")
li(v-html="$t('commGuideList11C')")
li(v-html="$t('commGuideList11D')")
li(v-html="$t('commGuideList11E')")
h3#restoration {{ $t('commGuideHeadingRestoration') }}
.media.align-items-center
img(src='~@/assets/images/community-guidelines/restoration.png')
.media-body
p(v-html="$t('commGuidePara061')")
p(v-html="$t('commGuidePara062')")
p(v-html="$t('commGuidePara063')")
h2#meet-the-mods {{ $t('commGuideHeadingMeet') }}
p(v-html="$t('commGuidePara006')")
p(v-html="$t('commGuidePara007')")
p(v-html="$t('commGuidePara008')")
p(v-html="$t('commGuidePara009')")
.media.align-items-center
img(src='~@/assets/images/community-guidelines/staff.png')
.media-body
ul
li {{ $t('commGuideAKA', {habitName: 'Beffymaroo', realName: 'Beth'}) }}
li {{ $t('commGuideAKA', {habitName: 'Viirus', realName: 'Phillip'}) }}
li {{ $t('commGuideAKA', {habitName: 'redphoenix', realName: 'Vicky'}) }} ({{ $t('commGuideOnTrello', {trelloName: 'caffeinatedvee'}) }}, {{ $t('commGuideOnGitHub', {gitHubName: 'veeeeeee'}) }})
li {{ $t('commGuideAKA', {habitName: 'Lemoness', realName: 'Leslie'}) }} ({{ $t('commGuideOnTrello', {trelloName: 'lemonesstree'}) }})
li {{ $t('commGuideAKA', {habitName: 'SabreCat', realName: 'Sabe'}) }}
li {{ $t('commGuideAKA', {habitName: 'paglias', realName: 'Matteo'}) }}
li {{ $t('commGuideAKA', {habitName: 'TheHollidayInn', realName: 'Keith'}) }}
p(v-html="$t('commGuidePara010')")
.media.align-items-center
img(src='~@/assets/images/community-guidelines/moderators.png')
.media-body
p(v-html="$t('commGuidePara011')")
ul
li Bailey (It's Bailey {{ $t('commGuidePara011a') }})
li Ryan (deilann {{ $t('commGuidePara011b') }})
li Cantras
li Alys (LadyAlys {{ $t('commGuidePara011c') }})
li Fox_town
li Blade ({{ $t('commGuideOnGitHub', {gitHubName: 'crookedneighbor'}) }})
li Daniel the Bard
li shanaqui
li Dewines
li Megan
li Breadstrings
p(v-html="$t('commGuidePara012')")
p(v-html="$t('commGuidePara013')")
p {{ $t('commGuidePara014') }}&nbsp;
em lefnire, Slappybag, litenull, Shaner, Bobbyroberts99, wc8
h2#final {{ $t('commGuideHeadingFinal') }}
p(v-html="$t('commGuidePara067')")
p(v-html="$t('commGuidePara068')")
h2#links {{ $t('commGuideHeadingLinks') }}
ul
li(v-html="$t('commGuideLink01')")
li(v-html="$t('commGuideLink02')")
li(v-html="$t('commGuideLink03')")
li(v-html="$t('commGuideLink04')")
li(v-html="$t('commGuideLink05')")
li(v-html="$t('commGuideLink06')")
li(v-html="$t('commGuideLink07')")
p(v-html="$t('commGuidePara069')")
ul.list-2col.list-unstyled
li Breadstrings
li Draayder
li Kiwibot
li Leephon
li Lemoness
li Luciferian
li Revcleo
li Shaner
li Starsystemic
li UncommonCriminal
<template>
<div class="container-fluid">
<h1>{{ $t('communityGuidelines') }}</h1><hr><p>{{ $t('lastUpdated') }} March 29, 2018</p><h2 id="welcome">
{{ $t('commGuideHeadingWelcome') }}
</h2><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/intro.png"><div class="media-body">
<p v-html="$t('commGuidePara001')"></p><p v-html="$t('commGuidePara002')"></p>
</div>
</div><p v-html="$t('commGuidePara003')"></p><p v-html="$t('commGuidePara004')"></p><h2 id="interactions">
{{ $t('commGuideHeadingInteractions') }}
</h2><div class="media align-items-center">
<div class="media-body">
<p v-html="$t('commGuidePara015')"></p><p v-html="$t('commGuidePara016')"></p>
</div><img src="~@/assets/images/community-guidelines/publicSpaces.png">
</div><ul><li v-html="$t('commGuideList02A')"></li><li v-html="$t('commGuideList02B')"></li><li v-html="$t('commGuideList02C')"></li><li v-html="$t('commGuideList02D')"></li><li v-html="$t('commGuideList02E')"></li><li v-html="$t('commGuideList02F')"></li><li v-html="$t('commGuideList02G')"></li><li v-html="$t('commGuideList02H')"></li><li v-html="$t('commGuideList02I')"></li><li v-html="$t('commGuideList02J')"></li><li v-html="$t('commGuideList02K')"></li><li v-html="$t('commGuideList02L')"></li></ul><p v-html="$t('commGuidePara019')"></p><p v-html="$t('commGuidePara020')"></p><p v-html="$t('commGuidePara020A')"></p><p v-html="$t('commGuidePara021')"></p><h3 id="tavern">
{{ $t('commGuideHeadingTavern') }}
</h3><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/tavern.png"><div class="media-body">
<p v-html="$t('commGuidePara022')"></p><p v-html="$t('commGuidePara023')"></p><p v-html="$t('commGuidePara024')"></p>
</div>
</div><div class="media align-items-center">
<div class="media-body">
<p v-html="$t('commGuidePara027')"></p>
</div><img src="~@/assets/images/community-guidelines/backCorner.png">
</div><h3 id="guilds">
{{ $t('commGuideHeadingPublicGuilds') }}
</h3><div class="media align-items-center">
<div class="media-body">
<p v-html="$t('commGuidePara029')"></p><p v-html="$t('commGuidePara031')"></p>
</div><img src="~@/assets/images/community-guidelines/publicGuilds.png">
</div><p v-html="$t('commGuidePara033')"></p><p v-html="$t('commGuidePara035')"></p><p v-html="$t('commGuidePara036')"></p><p v-html="$t('commGuidePara037')"></p><p v-html="$t('commGuidePara038')"></p><h2 id="infractions-consequences-restoration">
{{ $t('commGuideHeadingInfractionsEtc') }}
</h2><h3 id="infractions">
{{ $t('commGuideHeadingInfractions') }}
</h3><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/infractions.png"><div class="media-body">
<p v-html="$t('commGuidePara050')"></p><p v-html="$t('commGuidePara051')"></p>
</div>
</div><h4>{{ $t('commGuideHeadingSevereInfractions') }}</h4><p v-html="$t('commGuidePara052')"></p><p v-html="$t('commGuidePara053')"></p><ul><li v-html="$t('commGuideList05A')"></li><li v-html="$t('commGuideList05B')"></li><li v-html="$t('commGuideList05C')"></li><li v-html="$t('commGuideList05D')"></li><li v-html="$t('commGuideList05E')"></li><li v-html="$t('commGuideList05F')"></li><li v-html="$t('commGuideList05G')"></li></ul><h4>{{ $t('commGuideHeadingModerateInfractions') }}</h4><p v-html="$t('commGuidePara054')"></p><p v-html="$t('commGuidePara055')"></p><ul><li v-html="$t('commGuideList06A')"></li><li v-html="$t('commGuideList06B')"></li><li v-html="$t('commGuideList06C')"></li><li v-html="$t('commGuideList06D')"></li><li v-html="$t('commGuideList06E')"></li></ul><h4>{{ $t('commGuideHeadingMinorInfractions') }}</h4><p v-html="$t('commGuidePara056')"></p><p v-html="$t('commGuidePara057')"></p><ul><li v-html="$t('commGuideList07A')"></li><li v-html="$t('commGuideList07B')"></li></ul><p v-html="$t('commGuidePara057A')"></p><h3 id="consequences">
{{ $t('commGuideHeadingConsequences') }}
</h3><div class="media align-items-center">
<div class="media-body">
<p v-html="$t('commGuidePara058')"></p><p v-html="$t('commGuidePara059')"></p>
</div><img src="~@/assets/images/community-guidelines/consequences.png">
</div><p v-html="$t('commGuidePara060')"></p><ul><li v-html="$t('commGuideList08A')"></li><li v-html="$t('commGuideList08B')"></li><li v-html="$t('commGuideList08C')"></li></ul><p v-html="$t('commGuidePara060A')"></p><p v-html="$t('commGuidePara060B')"></p><h4>{{ $t('commGuideHeadingSevereConsequences') }}</h4><ul><li v-html="$t('commGuideList09A')"></li><li v-html="$t('commGuideList09C')"></li></ul><h4>{{ $t('commGuideHeadingModerateConsequences') }}</h4><ul><li>{{ $t('commGuideList10A') }}<ul><li>{{ $t('commGuideList10A1') }}</li></ul></li><li v-html="$t('commGuideList10C')"></li><li v-html="$t('commGuideList10D')"></li><li v-html="$t('commGuideList10E')"></li><li v-html="$t('commGuideList10F')"></li></ul><h4>{{ $t('commGuideHeadingMinorConsequences') }}</h4><ul><li v-html="$t('commGuideList11A')"></li><li v-html="$t('commGuideList11B')"></li><li v-html="$t('commGuideList11C')"></li><li v-html="$t('commGuideList11D')"></li><li v-html="$t('commGuideList11E')"></li></ul><h3 id="restoration">
{{ $t('commGuideHeadingRestoration') }}
</h3><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/restoration.png"><div class="media-body">
<p v-html="$t('commGuidePara061')"></p><p v-html="$t('commGuidePara062')"></p>
</div>
</div><p v-html="$t('commGuidePara063')"></p><h2 id="meet-the-mods">
{{ $t('commGuideHeadingMeet') }}
</h2><p v-html="$t('commGuidePara006')"></p><p v-html="$t('commGuidePara007')"></p><p v-html="$t('commGuidePara008')"></p><p v-html="$t('commGuidePara009')"></p><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/staff.png"><div class="media-body">
<ul><li>{{ $t('commGuideAKA', {habitName: 'Beffymaroo', realName: 'Beth'}) }}</li><li>{{ $t('commGuideAKA', {habitName: 'Viirus', realName: 'Phillip'}) }}</li><li>{{ $t('commGuideAKA', {habitName: 'redphoenix', realName: 'Vicky'}) }} ({{ $t('commGuideOnTrello', {trelloName: 'caffeinatedvee'}) }}, {{ $t('commGuideOnGitHub', {gitHubName: 'veeeeeee'}) }})</li><li>{{ $t('commGuideAKA', {habitName: 'Lemoness', realName: 'Leslie'}) }} ({{ $t('commGuideOnTrello', {trelloName: 'lemonesstree'}) }})</li><li>{{ $t('commGuideAKA', {habitName: 'SabreCat', realName: 'Sabe'}) }}</li><li>{{ $t('commGuideAKA', {habitName: 'paglias', realName: 'Matteo'}) }}</li><li>{{ $t('commGuideAKA', {habitName: 'TheHollidayInn', realName: 'Keith'}) }}</li></ul>
</div>
</div><p v-html="$t('commGuidePara010')"></p><div class="media align-items-center">
<img src="~@/assets/images/community-guidelines/moderators.png"><div class="media-body">
<p v-html="$t('commGuidePara011')"></p><ul><li>Bailey (It's Bailey {{ $t('commGuidePara011a') }})</li><li>Ryan (deilann {{ $t('commGuidePara011b') }})</li><li>Cantras</li><li>Alys (LadyAlys {{ $t('commGuidePara011c') }})</li><li>Fox_town</li><li>Blade ({{ $t('commGuideOnGitHub', {gitHubName: 'crookedneighbor'}) }})</li><li>Daniel the Bard</li><li>shanaqui</li><li>Dewines</li><li>Megan</li><li>Breadstrings</li></ul>
</div>
</div><p v-html="$t('commGuidePara012')"></p><p v-html="$t('commGuidePara013')"></p><p>{{ $t('commGuidePara014') }}&nbsp;<em>lefnire, Slappybag, litenull, Shaner, Bobbyroberts99, wc8</em></p><h2 id="final">
{{ $t('commGuideHeadingFinal') }}
</h2><p v-html="$t('commGuidePara067')"></p><p v-html="$t('commGuidePara068')"></p><h2 id="links">
{{ $t('commGuideHeadingLinks') }}
</h2><ul><li v-html="$t('commGuideLink01')"></li><li v-html="$t('commGuideLink02')"></li><li v-html="$t('commGuideLink03')"></li><li v-html="$t('commGuideLink04')"></li><li v-html="$t('commGuideLink05')"></li><li v-html="$t('commGuideLink06')"></li><li v-html="$t('commGuideLink07')"></li></ul><p v-html="$t('commGuidePara069')"></p><ul class="list-2col list-unstyled">
<li>Breadstrings</li><li>Draayder</li><li>Kiwibot</li><li>Leephon</li><li>Lemoness</li><li>Luciferian</li><li>Revcleo</li><li>Shaner</li><li>Starsystemic</li><li>UncommonCriminal</li>
</ul>
</div>
</template>
<style lang='scss' scoped>
@@ -1,40 +1,32 @@
<template lang="pug">
.container-fluid
.row
.col-md-6.offset-3
h1 {{ $t('contactUs') }}
p
| {{ $t('reportAccountProblems') }}
| &colon;&nbsp;
a(href='mailto:admin@habitica.com') admin&commat;habitica&period;com
br
| {{ $t('reportBug') }}
| &colon;&nbsp;
a(target='_blank', href='/groups/guild/a29da26b-37de-4a71-b0c6-48e72a900dac') Report a Bug guild
| &nbsp;or&nbsp;
a(target='_blank', href='https://github.com/HabitRPG/habitica/issues?q=is%3Aopen') GitHub
span(v-if='this.user')
br
| {{ $t('reportCommunityIssues') }}
| &colon;&nbsp;
a(@click.prevent='modForm()', href='') {{ $t('contactForm') }}
br
| {{ $t('subscriptionPaymentIssues') }}
| &colon;&nbsp;
a(href='mailto:admin@habitica.com') admin&commat;habitica&period;com
br
| {{ $t('generalQuestionsSite') }}
| &colon;&nbsp;
a(target='_blank', href='/groups/guild/5481ccf3-5d2d-48a9-a871-70a7380cee5a') Habitica Help guild
br
| {{ $t('businessInquiries') }}
| &colon;&nbsp;
a(href='mailto:admin@habitica.com') admin@habitica.com
br
| {{ $t('merchandiseInquiries') }}
| &colon;&nbsp;
a(href='mailto:admin@habitica.com') admin&commat;habitica&period;com
<template>
<div class="container-fluid">
<div class="row">
<div class="col-md-6 offset-3">
<h1>{{ $t('contactUs') }}</h1><p>
{{ $t('reportAccountProblems') }}
&colon;&nbsp;<a href="mailto:admin@habitica.com">admin&commat;habitica&period;com</a><br>{{ $t('reportBug') }}
&colon;&nbsp;<a
target="_blank"
href="/groups/guild/a29da26b-37de-4a71-b0c6-48e72a900dac"
>Report a Bug guild</a>&nbsp;or&nbsp;<a
target="_blank"
href="https://github.com/HabitRPG/habitica/issues?q=is%3Aopen"
>GitHub</a><span v-if="this.user"><br>{{ $t('reportCommunityIssues') }}
&colon;&nbsp;<a
href=""
@click.prevent="modForm()"
>{{ $t('contactForm') }}</a></span><br>{{ $t('subscriptionPaymentIssues') }}
&colon;&nbsp;<a href="mailto:admin@habitica.com">admin&commat;habitica&period;com</a><br>{{ $t('generalQuestionsSite') }}
&colon;&nbsp;<a
target="_blank"
href="/groups/guild/5481ccf3-5d2d-48a9-a871-70a7380cee5a"
>Habitica Help guild</a><br>{{ $t('businessInquiries') }}
&colon;&nbsp;<a href="mailto:admin@habitica.com">admin@habitica.com</a><br>{{ $t('merchandiseInquiries') }}
&colon;&nbsp;<a href="mailto:admin@habitica.com">admin&commat;habitica&period;com</a>
</p>
</div>
</div>
</div>
</template>
<script>
+36 -11
View File
@@ -1,14 +1,39 @@
<template lang="pug">
.container-fluid(role="tablist")
.row
.col-12.col-md-6.offset-md-3
h1#faq-heading {{ $t('frequentlyAskedQuestions') }}
.faq-question(v-for='(heading, index) in headings', :key="index")
h2(role="tab", v-b-toggle="heading", @click="handleClick($event)", variant="info") {{ $t(`faqQuestion${index}`) }}
b-collapse(:id="heading", :visible="isVisible(heading)", accordion="faq", role="tabpanel")
div.card-body(v-markdown="$t('webFaqAnswer' + index, replacements)")
hr
p(v-markdown="$t('webFaqStillNeedHelp')")
<template>
<div
class="container-fluid"
role="tablist"
>
<div class="row">
<div class="col-12 col-md-6 offset-md-3">
<h1 id="faq-heading">
{{ $t('frequentlyAskedQuestions') }}
</h1><div
v-for="(heading, index) in headings"
:key="index"
class="faq-question"
>
<h2
v-b-toggle="heading"
role="tab"
variant="info"
@click="handleClick($event)"
>
{{ $t(`faqQuestion${index}`) }}
</h2><b-collapse
:id="heading"
:visible="isVisible(heading)"
accordion="faq"
role="tabpanel"
>
<div
v-markdown="$t('webFaqAnswer' + index, replacements)"
class="card-body"
></div>
</b-collapse>
</div><hr><p v-markdown="$t('webFaqStillNeedHelp')"></p>
</div>
</div>
</div>
</template>
<style lang='scss' scoped>
@@ -1,76 +1,75 @@
<template lang="pug">
.container-fluid.text-center
.row
.col-md-12
h1 {{ $t('marketing1Header') }}
.row
.col-md-6
img(src='~@/assets/images/marketing/screenshot.png')
h2 {{ $t('marketing1Lead1Title') }}
p {{ $t('marketing1Lead1') }}
.col-md-6
img(src='~@/assets/images/marketing/gear.png')
h2 {{ $t('marketing1Lead2Title') }}
p {{ $t('marketing1Lead2') }}
img(src='~@/assets/images/marketing/drops.png', style='max-height: 200px;')
h2 {{ $t('marketing1Lead3Title') }}
p {{ $t('marketing1Lead3') }}
hr
.row
.col-md-12
h1 {{ $t('marketing2Header') }}
.row
.col-md-6
img(src='~@/assets/images/marketing/guild.png')
h2 {{ $t('marketing2Lead1Title') }}
p {{ $t('marketing2Lead1') }}
img(src='~@/assets/images/marketing/vice3.png')
h2 {{ $t('marketing2Lead2Title') }}
p(v-markdown='$t("marketing2Lead2")')
.col-md-6
img(src='~@/assets/images/marketing/challenge.png')
h2 {{ $t('marketing2Lead3Title') }}
p {{ $t('marketing2Lead3') }}
hr
.row
.col-md-12
h1 {{ $t('marketing3Header') }}
.row
.col-md-6
img(src='~@/assets/images/marketing/android_iphone.png')
h2 {{ $t('footerMobile') }}
p(v-markdown='$t("marketing3Lead1")')
.col-md-6
img(src='~@/assets/images/marketing/integration.png')
h2 {{ $t('marketing3Lead2Title') }}
p(v-markdown='$t("marketing3Lead2")')
hr
.row
.col-md-12
h1 {{ $t('marketing4Header') }}
.row
.col-md-6
.media
img(src='~@/assets/images/marketing/education.png')
.media-body
h2 {{ $t('marketing4Lead1Title') }}
p {{ $t('marketing4Lead1') }}
.col-md-6
.media
img(src='~@/assets/images/marketing/wellness.png')
.media-body
h2 {{ $t('marketing4Lead2Title') }}
p {{ $t('marketing4Lead2') }}
.row
.col-md-6.offset-md-3
h2 {{ $t('marketing4Lead3Title') }}
img(src='~@/assets/images/marketing/lefnire.png')
p.span
span {{ $t('marketing4Lead3-1') }}
button.btn.btn-primary(@click='playButtonClick()') {{ $t('playButton') }}
p.span
span {{ $t('marketing4Lead3-2') }}
a.btn.btn-primary(href='/static/plans',target='_blank') {{ $t('contactUs') }}
<template>
<div class="container-fluid text-center">
<div class="row">
<div class="col-md-12">
<h1>{{ $t('marketing1Header') }}</h1>
</div>
</div><div class="row">
<div class="col-md-6">
<img src="~@/assets/images/marketing/screenshot.png"><h2>{{ $t('marketing1Lead1Title') }}</h2><p>{{ $t('marketing1Lead1') }}</p>
</div><div class="col-md-6">
<img src="~@/assets/images/marketing/gear.png"><h2>{{ $t('marketing1Lead2Title') }}</h2><p>{{ $t('marketing1Lead2') }}</p><img
src="~@/assets/images/marketing/drops.png"
style="max-height: 200px;"
><h2>{{ $t('marketing1Lead3Title') }}</h2><p>{{ $t('marketing1Lead3') }}</p>
</div>
</div><hr><div class="row">
<div class="col-md-12">
<h1>{{ $t('marketing2Header') }}</h1>
</div>
</div><div class="row">
<div class="col-md-6">
<img src="~@/assets/images/marketing/guild.png"><h2>{{ $t('marketing2Lead1Title') }}</h2><p>{{ $t('marketing2Lead1') }}</p><img src="~@/assets/images/marketing/vice3.png"><h2>{{ $t('marketing2Lead2Title') }}</h2><p v-markdown="$t('marketing2Lead2')"></p>
</div><div class="col-md-6">
<img src="~@/assets/images/marketing/challenge.png"><h2>{{ $t('marketing2Lead3Title') }}</h2><p>{{ $t('marketing2Lead3') }}</p>
</div>
</div><hr><div class="row">
<div class="col-md-12">
<h1>{{ $t('marketing3Header') }}</h1>
</div>
</div><div class="row">
<div class="col-md-6">
<img src="~@/assets/images/marketing/android_iphone.png"><h2>{{ $t('footerMobile') }}</h2><p v-markdown="$t('marketing3Lead1')"></p>
</div><div class="col-md-6">
<img src="~@/assets/images/marketing/integration.png"><h2>{{ $t('marketing3Lead2Title') }}</h2><p v-markdown="$t('marketing3Lead2')"></p>
</div>
</div><hr><div class="row">
<div class="col-md-12">
<h1>{{ $t('marketing4Header') }}</h1>
</div>
</div><div class="row">
<div class="col-md-6">
<div class="media">
<img src="~@/assets/images/marketing/education.png"><div class="media-body">
<h2>{{ $t('marketing4Lead1Title') }}</h2><p>{{ $t('marketing4Lead1') }}</p>
</div>
</div>
</div><div class="col-md-6">
<div class="media">
<img src="~@/assets/images/marketing/wellness.png"><div class="media-body">
<h2>{{ $t('marketing4Lead2Title') }}</h2><p>{{ $t('marketing4Lead2') }}</p>
</div>
</div>
</div>
</div><div class="row">
<div class="col-md-6 offset-md-3">
<h2>{{ $t('marketing4Lead3Title') }}</h2><img src="~@/assets/images/marketing/lefnire.png"><p class="span">
<span>{{ $t('marketing4Lead3-1') }}</span><button
class="btn btn-primary"
@click="playButtonClick()"
>
{{ $t('playButton') }}
</button>
</p><p class="span">
<span>{{ $t('marketing4Lead3-2') }}</span><a
class="btn btn-primary"
href="/static/plans"
target="_blank"
>{{ $t('contactUs') }}</a>
</p>
</div>
</div>
</div>
</template>
<style lang='scss' scoped>
@@ -1,60 +1,77 @@
<template lang="pug">
.group-plan-static.text-center
amazon-payments-modal
.container
.row.top
.top-left
.col-6.offset-3
img.party(src='../../assets/images/group-plans-static/party@3x.png')
h1 {{ $t('groupPlanTitle') }}
p {{ $t('groupPlanDesc') }}
.pricing
span Just
span.number $9
span.bold per month +
span.number $3
span.bold per member*
.text-center
button.btn.btn-primary.cta-button(@click="goToNewGroupPage()") {{ $t('getStarted') }}
small {{ $t('billedMonthly') }}
.top-right
.row
.text-col.col-12.col-md-6.text-left
h2 {{ $t('teamBasedTasksList') }}
p {{ $t('teamBasedTasksListDesc') }}
.col-12.col-md-6
.team-based(v-html='svg.teamBased')
.row
.col-12.col-md-6
.group-management(v-html='svg.groupManagement')
.text-col.col-12.col-md-6.text-left
h2 {{ $t('groupManagementControls') }}
p {{ $t('groupManagementControlsDesc') }}
.row
.col-12.col-md-6.offset-md-3.text-center
img.big-gem(src='../../assets/images/group-plans-static/big-gem@3x.png')
h2 {{ $t('inGameBenefits') }}
p {{ $t('inGameBenefitsDesc') }}
.row
.bot-left
.col-6.offset-3
h2.purple {{ $t('inspireYourParty') }}
.pricing
span Just
span.number $9
span.bold per month +
span.number $3
span.bold per member*
.text-center
button.btn.btn-primary.cta-button(@click="goToNewGroupPage()") {{ $t('getStarted') }}
small {{ $t('billedMonthly') }}
.bot-right
b-modal#group-plan(title="", size='md', :hide-footer='true', :hide-header='true')
div(v-if='modalPage === "account"')
h2 {{ $t('letsMakeAccount') }}
auth-form(@authenticate='authenticate()')
div(v-if='modalPage === "purchaseGroup"')
create-group-modal-pages
<template>
<div class="group-plan-static text-center">
<amazon-payments-modal /><div class="container">
<div class="row top">
<div class="top-left"></div><div class="col-6 offset-3">
<img
class="party"
src="../../assets/images/group-plans-static/party@3x.png"
><h1>{{ $t('groupPlanTitle') }}</h1><p>{{ $t('groupPlanDesc') }}</p><div class="pricing">
<span>Just</span><span class="number">$9</span><span class="bold">per month +</span><span class="number">$3</span><span class="bold">per member*</span>
</div><div class="text-center">
<button
class="btn btn-primary cta-button"
@click="goToNewGroupPage()"
>
{{ $t('getStarted') }}
</button>
</div><small>{{ $t('billedMonthly') }}</small>
</div><div class="top-right"></div>
</div><div class="row">
<div class="text-col col-12 col-md-6 text-left">
<h2>{{ $t('teamBasedTasksList') }}</h2><p>{{ $t('teamBasedTasksListDesc') }}</p>
</div><div class="col-12 col-md-6">
<div
class="team-based"
v-html="svg.teamBased"
></div>
</div>
</div><div class="row">
<div class="col-12 col-md-6">
<div
class="group-management"
v-html="svg.groupManagement"
></div>
</div><div class="text-col col-12 col-md-6 text-left">
<h2>{{ $t('groupManagementControls') }}</h2><p>{{ $t('groupManagementControlsDesc') }}</p>
</div>
</div><div class="row">
<div class="col-12 col-md-6 offset-md-3 text-center">
<img
class="big-gem"
src="../../assets/images/group-plans-static/big-gem@3x.png"
><h2>{{ $t('inGameBenefits') }}</h2><p>{{ $t('inGameBenefitsDesc') }}</p>
</div>
</div><div class="row">
<div class="bot-left"></div><div class="col-6 offset-3">
<h2 class="purple">
{{ $t('inspireYourParty') }}
</h2><div class="pricing">
<span>Just</span><span class="number">$9</span><span class="bold">per month +</span><span class="number">$3</span><span class="bold">per member*</span>
</div><div class="text-center">
<button
class="btn btn-primary cta-button"
@click="goToNewGroupPage()"
>
{{ $t('getStarted') }}
</button>
</div><small>{{ $t('billedMonthly') }}</small>
</div><div class="bot-right"></div>
</div>
</div><b-modal
id="group-plan"
title=""
size="md"
:hide-footer="true"
:hide-header="true"
>
<div v-if="modalPage === 'account'">
<h2>{{ $t('letsMakeAccount') }}</h2><auth-form @authenticate="authenticate()" />
</div><div v-if="modalPage === 'purchaseGroup'">
<create-group-modal-pages />
</div>
</b-modal>
</div>
</template>
<style lang='scss' scoped>
+122 -32
View File
@@ -1,35 +1,125 @@
<template lang="pug">
nav.navbar.navbar-inverse.fixed-top.navbar-expand-sm
.navbar-header
router-link.nav-item(:to='!isUserLoggedIn ? "/static/home" : "/"')
.logo.svg-icon(v-html='icons.purpleLogo', v-if='this.$route.name === "plans"')
.logo.svg-icon(v-html='icons.logo', v-else)
.collapse.navbar-collapse
ul.navbar-nav.mr-auto(v-if='$route.name !== "home"')
router-link.nav-item(tag='li', to='/static/features')
a.nav-link(v-once) {{ $t('companyAbout') }}
router-link.nav-item(tag='li', to='/static/plans')
a.nav-link(v-once) {{ $t('groupPlans') }}
li.nav-item
a.nav-link(href='https://habitica.wordpress.com/', target='_blank') {{ $t('companyBlog') }}
li.nav-item
a.nav-link(href='http://blog.habitrpg.com/', target='_blank') {{ $t('tumblr') }}
router-link.nav-item(tag='li', to='/static/press-kit')
a.nav-link(v-once) {{ $t('presskit') }}
router-link.nav-item(tag='li', to='/static/contact')
a.nav-link(v-once) {{ $t('contactUs') }}
ul.navbar-nav.mr-auto(v-else)
router-link.nav-item(tag='li', to='/register')
a.nav-link(v-once) {{ $t('getStarted') }}
li.nav-item
a.nav-link(@click='scrollToMobileApp') {{ $t('mobileApps') }}
li.nav-item.dropdown
a.nav-link.dropdown-toggle(v-once) {{ $t('learnMore') }}
.dropdown-menu
router-link.dropdown-item(to='/static/faq') {{ $t('faq') }}
router-link.dropdown-item(to='/static/plans') {{ $t('groupPlans') }}
button.btn.btn-primary.pull-right(@click='playButtonClick()', v-if='$route.name !== "home"') {{ $t('playButtonFull') }}
router-link.btn.btn-primary.login-button.pull-right(to='/login', v-if='$route.name === "home"') {{ $t('login') }}
<template>
<nav class="navbar navbar-inverse fixed-top navbar-expand-sm">
<div class="navbar-header">
<router-link
class="nav-item"
:to="!isUserLoggedIn ? '/static/home' : '/'"
>
<div
v-if="this.$route.name === 'plans'"
class="logo svg-icon"
v-html="icons.purpleLogo"
></div><div
v-else
class="logo svg-icon"
v-html="icons.logo"
></div>
</router-link>
</div><div class="collapse navbar-collapse">
<ul
v-if="$route.name !== 'home'"
class="navbar-nav mr-auto"
>
<router-link
class="nav-item"
tag="li"
to="/static/features"
>
<a
v-once
class="nav-link"
>{{ $t('companyAbout') }}</a>
</router-link><router-link
class="nav-item"
tag="li"
to="/static/plans"
>
<a
v-once
class="nav-link"
>{{ $t('groupPlans') }}</a>
</router-link><li class="nav-item">
<a
class="nav-link"
href="https://habitica.wordpress.com/"
target="_blank"
>{{ $t('companyBlog') }}</a>
</li><li class="nav-item">
<a
class="nav-link"
href="http://blog.habitrpg.com/"
target="_blank"
>{{ $t('tumblr') }}</a>
</li><router-link
class="nav-item"
tag="li"
to="/static/press-kit"
>
<a
v-once
class="nav-link"
>{{ $t('presskit') }}</a>
</router-link><router-link
class="nav-item"
tag="li"
to="/static/contact"
>
<a
v-once
class="nav-link"
>{{ $t('contactUs') }}</a>
</router-link>
</ul><ul
v-else
class="navbar-nav mr-auto"
>
<router-link
class="nav-item"
tag="li"
to="/register"
>
<a
v-once
class="nav-link"
>{{ $t('getStarted') }}</a>
</router-link><li class="nav-item">
<a
class="nav-link"
@click="scrollToMobileApp"
>{{ $t('mobileApps') }}</a>
</li><li class="nav-item dropdown">
<a
v-once
class="nav-link dropdown-toggle"
>{{ $t('learnMore') }}</a><div class="dropdown-menu">
<router-link
class="dropdown-item"
to="/static/faq"
>
{{ $t('faq') }}
</router-link><router-link
class="dropdown-item"
to="/static/plans"
>
{{ $t('groupPlans') }}
</router-link>
</div>
</li>
</ul><button
v-if="$route.name !== 'home'"
class="btn btn-primary pull-right"
@click="playButtonClick()"
>
{{ $t('playButtonFull') }}
</button>
</div><router-link
v-if="$route.name === 'home'"
class="btn btn-primary login-button pull-right"
to="/login"
>
{{ $t('login') }}
</router-link>
</nav>
</template>
<style lang='scss' scoped>
+267 -119
View File
@@ -1,122 +1,270 @@
<template lang="pug">
#front.static-view
noscript.banner {{ $t('jsDisabledHeadingFull') }}
br
a(href='http://www.enable-javascript.com/', target='_blank') {{ $t('jsDisabledLink') }}
#intro-signup.purple-1
.container
.row
.col-12.col-md-6.col-lg-6
img(src='~@/assets/images/home/home-main@3x.png', width='357px')
h1 {{$t('motivateYourself')}}
p.section-main {{$t('timeToGetThingsDone', {userCountInMillions})}}
.col-12.col-md-6.col-lg-6
h3.text-center {{$t('singUpForFree')}}
div.text-center
button.social-button(@click='socialAuth("facebook")')
.svg-icon.social-icon(v-html="icons.facebookIcon")
span {{$t('signUpWithSocial', {social: 'Facebook'})}}
button.social-button(@click='socialAuth("google")')
.svg-icon.social-icon(v-html="icons.googleIcon")
span {{$t('signUpWithSocial', {social: 'Google'})}}
.strike
span {{$t('or')}}
.form(@keyup.enter="register()")
p.form-text {{$t('usernameLimitations')}}
input#usernameInput.form-control(type='text', :placeholder='$t("username")', v-model='username', :class='{"input-valid": usernameValid, "input-invalid": usernameInvalid}')
.input-error(v-for="issue in usernameIssues") {{ issue }}
input.form-control(type='email', :placeholder='$t("email")', v-model='email', :class='{"input-invalid": emailInvalid, "input-valid": emailValid}')
input.form-control(type='password', :placeholder='$t("password")', v-model='password', :class='{"input-valid": password.length > 3}')
input.form-control(type='password', :placeholder='$t("confirmPassword")', v-model='passwordConfirm', :class='{"input-invalid": passwordConfirmInvalid, "input-valid": passwordConfirmValid}')
p.form-text(v-once, v-html="$t('termsAndAgreement')")
button.sign-up(@click="register()") {{$t('signup')}}
.col-12
.spacer.svg-icon(v-html='icons.spacer')
#gamify-life.purple-2
.container-fluid
.pixel-horizontal.svg-icon(v-html='icons.pixelHorizontal')
.container
.row
.col-12.col-sm-6.col-md-6.col-lg-6.offset-sm-3.text-center
h2 {{$t('gamifyYourLife')}}
p.section-main {{$t('aboutHabitica')}}
.row
.col-12.col-md-4
img.track-habits(src='~@/assets/images/home/track-habits@3x.png', width='354px', height='228px')
strong {{$t('trackYourGoals')}}
p {{$t('trackYourGoalsDesc')}}
.col-12.col-md-4
img(src='~@/assets/images/home/earn-rewards@3x.png', width='316px', height='244px')
strong {{$t('earnRewards')}}
p {{$t('earnRewardsDesc')}}
.col-12.col-md-4
img(src='~@/assets/images/home/battle-monsters@3x.png', width='303px', height='244px')
strong {{$t('battleMonsters')}}
p {{$t('battleMonstersDesc')}}
.col-12
.spacer.svg-icon(v-html='icons.spacer')
#use-cases.purple-2
.container.text-center
.row
.col-12
h2 {{$t('playersUseToImprove')}}
.row
.col-12.col-sm-4
img(src='~@/assets/images/home/health-fitness@3x.png', width='300px', height='300px')
strong {{$t('healthAndFitness')}}
p {{$t('healthAndFitnessDesc')}}
.col-12.col-sm-4
img(src='~@/assets/images/home/school-work@3x.png', width='300px', height='300px')
strong {{$t('schoolAndWork')}}
p {{$t('schoolAndWorkDesc')}}
.col-12.col-sm-4
img(src='~@/assets/images/home/much-more@3x.png', width='300px', height='300px')
strong {{$t('muchmuchMore')}}
p {{$t('muchmuchMoreDesc')}}
.col-12
.spacer.svg-icon(v-html='icons.spacer')
.container-fluid
.pixel-horizontal-2.svg-icon(v-html='icons.pixelHorizontal2')
#level-up-anywhere.purple-3
.container
.row
.col-12.col-md-6.col-lg-6
.iphones
.col-12.col-md-6.col-lg-6.text-column
h2 {{ $t('levelUpAnywhere') }}
p {{ $t('levelUpAnywhereDesc') }}
a.app.svg-icon(v-html='icons.googlePlay', href='https://play.google.com/store/apps/details?id=com.habitrpg.android.habitica', target='_blank')
a.app.svg-icon(v-html='icons.iosAppStore', href='https://itunes.apple.com/us/app/habitica-gamified-task-manager/id994882113?mt=8', target='_blank')
.container-fluid
.pixel-horizontal-3.svg-icon(v-html='icons.pixelHorizontal3')
#call-to-action.purple-4
.container.featured
.row.text-center
h3.col-12 {{ $t('joinMany') }}
.row
.col-12.text-center
button.btn.btn-primary.join-button(@click='playButtonClick()') {{ $t('joinToday') }}
.row.featured
.col-12.text-center
strong {{ $t('featuredIn') }}
.container-fluid.featured
.row
.col-12.text-center
.lifehacker.svg-icon(v-html='icons.lifehacker')
.thenewyorktimes.svg-icon(v-html='icons.thenewyorktimes')
.makeuseof.svg-icon(v-html='icons.makeuseof')
.forbes.svg-icon(v-html='icons.forbes')
.cnet.svg-icon(v-html='icons.cnet')
.kickstarter.svg-icon(v-html='icons.kickstarter')
.fast-company.svg-icon(v-html='icons.fastCompany')
.discover.svg-icon(v-html='icons.discover')
.container-fluid
.row.seamless_stars_varied_opacity_repeat
<template>
<div
id="front"
class="static-view"
>
<noscript class="banner">{{ $t('jsDisabledHeadingFull') }}<br/><a href="http://www.enable-javascript.com/" target="_blank">{{ $t('jsDisabledLink') }}</a></noscript><div
id="intro-signup"
class="purple-1"
>
<div class="container">
<div class="row">
<div class="col-12 col-md-6 col-lg-6">
<img
src="~@/assets/images/home/home-main@3x.png"
width="357px"
><h1>{{ $t('motivateYourself') }}</h1><p class="section-main">
{{ $t('timeToGetThingsDone', {userCountInMillions}) }}
</p>
</div><div class="col-12 col-md-6 col-lg-6">
<h3 class="text-center">
{{ $t('singUpForFree') }}
</h3><div class="text-center">
<button
class="social-button"
@click="socialAuth('facebook')"
>
<div
class="svg-icon social-icon"
v-html="icons.facebookIcon"
></div><span>{{ $t('signUpWithSocial', {social: 'Facebook'}) }}</span>
</button><button
class="social-button"
@click="socialAuth('google')"
>
<div
class="svg-icon social-icon"
v-html="icons.googleIcon"
></div><span>{{ $t('signUpWithSocial', {social: 'Google'}) }}</span>
</button>
</div><div class="strike">
<span>{{ $t('or') }}</span>
</div><div
class="form"
@keyup.enter="register()"
>
<p class="form-text">
{{ $t('usernameLimitations') }}
</p><input
id="usernameInput"
v-model="username"
class="form-control"
type="text"
:placeholder="$t('username')"
:class="{'input-valid': usernameValid, 'input-invalid': usernameInvalid}"
><div
v-for="issue in usernameIssues"
class="input-error"
>
{{ issue }}
</div><input
v-model="email"
class="form-control"
type="email"
:placeholder="$t('email')"
:class="{'input-invalid': emailInvalid, 'input-valid': emailValid}"
><input
v-model="password"
class="form-control"
type="password"
:placeholder="$t('password')"
:class="{'input-valid': password.length > 3}"
><input
v-model="passwordConfirm"
class="form-control"
type="password"
:placeholder="$t('confirmPassword')"
:class="{'input-invalid': passwordConfirmInvalid, 'input-valid': passwordConfirmValid}"
><p
v-once
class="form-text"
v-html="$t('termsAndAgreement')"
></p><button
class="sign-up"
@click="register()"
>
{{ $t('signup') }}
</button>
</div>
</div><div class="col-12">
<div
class="spacer svg-icon"
v-html="icons.spacer"
></div>
</div>
</div>
</div>
</div><div
id="gamify-life"
class="purple-2"
>
<div class="container-fluid">
<div
class="pixel-horizontal svg-icon"
v-html="icons.pixelHorizontal"
></div>
</div><div class="container">
<div class="row">
<div class="col-12 col-sm-6 col-md-6 col-lg-6 offset-sm-3 text-center">
<h2>{{ $t('gamifyYourLife') }}</h2><p class="section-main">
{{ $t('aboutHabitica') }}
</p>
</div>
</div><div class="row">
<div class="col-12 col-md-4">
<img
class="track-habits"
src="~@/assets/images/home/track-habits@3x.png"
width="354px"
height="228px"
><strong>{{ $t('trackYourGoals') }}</strong><p>{{ $t('trackYourGoalsDesc') }}</p>
</div><div class="col-12 col-md-4">
<img
src="~@/assets/images/home/earn-rewards@3x.png"
width="316px"
height="244px"
><strong>{{ $t('earnRewards') }}</strong><p>{{ $t('earnRewardsDesc') }}</p>
</div><div class="col-12 col-md-4">
<img
src="~@/assets/images/home/battle-monsters@3x.png"
width="303px"
height="244px"
><strong>{{ $t('battleMonsters') }}</strong><p>{{ $t('battleMonstersDesc') }}</p>
</div>
</div>
</div><div class="col-12">
<div
class="spacer svg-icon"
v-html="icons.spacer"
></div>
</div>
</div><div
id="use-cases"
class="purple-2"
>
<div class="container text-center">
<div class="row">
<div class="col-12">
<h2>{{ $t('playersUseToImprove') }}</h2>
</div>
</div><div class="row">
<div class="col-12 col-sm-4">
<img
src="~@/assets/images/home/health-fitness@3x.png"
width="300px"
height="300px"
><strong>{{ $t('healthAndFitness') }}</strong><p>{{ $t('healthAndFitnessDesc') }}</p>
</div><div class="col-12 col-sm-4">
<img
src="~@/assets/images/home/school-work@3x.png"
width="300px"
height="300px"
><strong>{{ $t('schoolAndWork') }}</strong><p>{{ $t('schoolAndWorkDesc') }}</p>
</div><div class="col-12 col-sm-4">
<img
src="~@/assets/images/home/much-more@3x.png"
width="300px"
height="300px"
><strong>{{ $t('muchmuchMore') }}</strong><p>{{ $t('muchmuchMoreDesc') }}</p>
</div>
</div>
</div><div class="col-12">
<div
class="spacer svg-icon"
v-html="icons.spacer"
></div>
</div><div class="container-fluid">
<div
class="pixel-horizontal-2 svg-icon"
v-html="icons.pixelHorizontal2"
></div>
</div>
</div><div
id="level-up-anywhere"
class="purple-3"
>
<div class="container">
<div class="row">
<div class="col-12 col-md-6 col-lg-6">
<div class="iphones"></div>
</div><div class="col-12 col-md-6 col-lg-6 text-column">
<h2>{{ $t('levelUpAnywhere') }}</h2><p>{{ $t('levelUpAnywhereDesc') }}</p><a
class="app svg-icon"
href="https://play.google.com/store/apps/details?id=com.habitrpg.android.habitica"
target="_blank"
v-html="icons.googlePlay"
></a><a
class="app svg-icon"
href="https://itunes.apple.com/us/app/habitica-gamified-task-manager/id994882113?mt=8"
target="_blank"
v-html="icons.iosAppStore"
></a>
</div>
</div>
</div><div class="container-fluid">
<div
class="pixel-horizontal-3 svg-icon"
v-html="icons.pixelHorizontal3"
></div>
</div>
</div><div
id="call-to-action"
class="purple-4"
>
<div class="container featured">
<div class="row text-center">
<h3 class="col-12">
{{ $t('joinMany') }}
</h3>
</div><div class="row">
<div class="col-12 text-center">
<button
class="btn btn-primary join-button"
@click="playButtonClick()"
>
{{ $t('joinToday') }}
</button>
</div>
</div><div class="row featured">
<div class="col-12 text-center">
<strong>{{ $t('featuredIn') }}</strong>
</div>
</div>
</div><div class="container-fluid featured">
<div class="row">
<div class="col-12 text-center">
<div
class="lifehacker svg-icon"
v-html="icons.lifehacker"
></div><div
class="thenewyorktimes svg-icon"
v-html="icons.thenewyorktimes"
></div><div
class="makeuseof svg-icon"
v-html="icons.makeuseof"
></div><div
class="forbes svg-icon"
v-html="icons.forbes"
></div><div
class="cnet svg-icon"
v-html="icons.cnet"
></div><div
class="kickstarter svg-icon"
v-html="icons.kickstarter"
></div><div
class="fast-company svg-icon"
v-html="icons.fastCompany"
></div><div
class="discover svg-icon"
v-html="icons.discover"
></div>
</div>
</div>
</div><div class="container-fluid">
<div class="row seamless_stars_varied_opacity_repeat"></div>
</div>
</div>
</div>
</template>
<style lang='scss'>
+32 -16
View File
@@ -1,19 +1,35 @@
<template lang="pug">
.container-fluid
.row
.col-md-6.offset-3
h1 {{ $t('merch') }}
// @TODO: Visual experience: Separate each merch items with new line? Or to show items in a table?
.col-lg-6.col-md-6.col-sm-12(v-for="(merchant, index) in merchants")
.merch-block
img(v-if='merchant.logo' :src="`/static/merch/${merchant.key}-logo.png`")
h2(v-else) {{ merchant.name }}
div
a(:href="merchant.link" target='_blank')
img.img-rendering-auto(:src="`/static/merch/${merchant.key}.png`")
p {{ $t('merch-' + merchant.key + '-summary') }}
a.btn.btn-primary(:href="merchant.link" target='_blank') {{$t('merch-' + merchant.key + '-goto')}}
<template>
<div class="container-fluid">
<div class="row">
<div class="col-md-6 offset-3">
<h1>{{ $t('merch') }}</h1><!-- @TODO: Visual experience: Separate each merch items with new line? Or to show items in a table?--><div
v-for="(merchant, index) in merchants"
class="col-lg-6 col-md-6 col-sm-12"
>
<div class="merch-block">
<img
v-if="merchant.logo"
:src="`/static/merch/${merchant.key}-logo.png`"
><h2 v-else>
{{ merchant.name }}
</h2><div>
<a
:href="merchant.link"
target="_blank"
><img
class="img-rendering-auto"
:src="`/static/merch/${merchant.key}.png`"
></a>
</div><p>{{ $t('merch-' + merchant.key + '-summary') }}</p><a
class="btn btn-primary"
:href="merchant.link"
target="_blank"
>{{ $t('merch-' + merchant.key + '-goto') }}</a>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
@@ -1,5 +1,8 @@
<template lang='pug'>
.static-view(v-html="html")
<template>
<div
class="static-view"
v-html="html"
></div>
</template>
<style lang='scss'>
@@ -1,14 +1,13 @@
<template lang="pug">
.container-fluid.static-view
.row
.col-md-6.offset-3
h1 {{ $t('overview') }}
p {{ $t('needTips') }}
div(v-for='step in stepsNum')
h3 {{ $t('step'+step) }}
p(v-markdown="$t('webStep'+step+'Text', stepVars[step])")
hr
p(v-markdown="$t('overviewQuestions', {faqUrl: '/static/faq/', helpGuildUrl: '/groups/guild/5481ccf3-5d2d-48a9-a871-70a7380cee5a'})")
<template>
<div class="container-fluid static-view">
<div class="row">
<div class="col-md-6 offset-3">
<h1>{{ $t('overview') }}</h1><p>{{ $t('needTips') }}</p><div v-for="step in stepsNum">
<h3>{{ $t('step'+step) }}</h3><p v-markdown="$t('webStep'+step+'Text', stepVars[step])"></p><hr>
</div><p v-markdown="$t('overviewQuestions', {faqUrl: '/static/faq/', helpGuildUrl: '/groups/guild/5481ccf3-5d2d-48a9-a871-70a7380cee5a'})"></p>
</div>
</div>
</div>
</template>
<style lang='scss'>
@@ -1,28 +1,51 @@
<template lang="pug">
.container-fluid
h1 {{ $t('presskit') }}
p {{ $t('presskitText', { pressEnquiryEmail : PRESS_ENQUIRY_EMAIL }) }}
p
a.btn.btn-lg.btn-success(href='/static/presskit/presskit.zip') presskit.zip
div(v-for='(images, category) in imgs')
h2 {{ $t('pk' + category) }}
div(v-if='Array.isArray(images)')
div(v-for='img in images')
img.img-fluid.img-rendering-auto.press-img(:src="`/static/presskit/${category}/${img}`")
div(v-else)
div(v-for='(images, secondaryCategory) in images')
h3 {{ $t('pk' + secondaryCategory) }}
div(v-for='img in images')
img.img-fluid.img-rendering-auto.press-img(:src="`/static/presskit/${category}/${secondaryCategory}/${img}`")
h1 {{ $t('FAQ') }}
#faq(role='tablist')
.faq-question(v-for='(QA, index) in faq')
h2(v-b-toggle="QA.question", tabindex="0", role="button", v-html="$t(QA.question)")
b-collapse(:id="QA.question", accordion="pkAccordian", role="tabpanel")
p(v-html="$t(QA.answer)")
p {{ $t('pkMoreQuestions') }}
<template>
<div class="container-fluid">
<h1>{{ $t('presskit') }}</h1><p>{{ $t('presskitText', { pressEnquiryEmail : PRESS_ENQUIRY_EMAIL }) }}</p><p>
<a
class="btn btn-lg btn-success"
href="/static/presskit/presskit.zip"
>presskit.zip</a>
</p><div v-for="(images, category) in imgs">
<h2>{{ $t('pk' + category) }}</h2><div v-if="Array.isArray(images)">
<div v-for="img in images">
<img
class="img-fluid img-rendering-auto press-img"
:src="`/static/presskit/${category}/${img}`"
>
</div>
</div><div v-else>
<div v-for="(images, secondaryCategory) in images">
<h3>{{ $t('pk' + secondaryCategory) }}</h3><div v-for="img in images">
<img
class="img-fluid img-rendering-auto press-img"
:src="`/static/presskit/${category}/${secondaryCategory}/${img}`"
>
</div>
</div>
</div>
</div><h1>{{ $t('FAQ') }}</h1><div
id="faq"
role="tablist"
>
<div
v-for="(QA, index) in faq"
class="faq-question"
>
<h2
v-b-toggle="QA.question"
tabindex="0"
role="button"
v-html="$t(QA.question)"
></h2><b-collapse
:id="QA.question"
accordion="pkAccordian"
role="tabpanel"
>
<p v-html="$t(QA.answer)"></p>
</b-collapse>
</div>
</div><p>{{ $t('pkMoreQuestions') }}</p>
</div>
</template>
<style lang="scss" scoped>
+253 -298
View File
@@ -1,299 +1,254 @@
<template lang="pug">
.container-fluid
h1 Privacy Policy
p.pagemeta
| Last updated July 27, 2015
br
small (Corrected grammar errors and updated company name)
br
br
p
strong PLEASE READ THIS PRIVACY POLICY CAREFULLY&period;
br
| By accessing or otherwise using habitica&period;com or any sub domains thereto &lpar;&quot;the Sites&quot;&rpar;&comma;
| or using a habitica&period;com or Habitica application on a mobile device &lpar;&quot;the Applications&quot;&rpar;&comma;
| you agree to be bound contractually by this Privacy Policy&period; Individually
| or collectively&comma; the Applications and the Sites may be referred to as
| the &quot;Services&period;&quot;
p
| To review material modifications and their effective dates scroll
| to the bottom of the page&period;
p
strong
| 1&period; Privacy Statement&semi; Collection of Personal
| Information&period;
br
| 1&period;1 HabitRPG, Inc. owns and operates this business&period; All
| references to &quot;we&quot;&comma; &quot;us&quot;&comma; shall be construed to mean HabitRPG, Inc.&period;
p
| 1&period;2 We understand that visitors to this website are concerned
| about the privacy of information&period; The following describes our privacy
| policy regarding information&comma; including personal information&comma; that we
| collect through this website&period;
p
strong 2&period; Modification of Privacy Policy&period;
br
| We reserve the right to modify this Privacy Policy at any time&comma;
| and without prior notice&comma; by posting an amended Privacy Policy that is
| always accessible by clicking on the &quot;Privacy Policy&quot; link on this
| site&apos;s home page&period; Your continued use of this site indicates your
| acceptance of the amended Privacy Policy&period; You should check the Privacy
| Policy through this link periodically for modifications by clicking on
| the link provided near the top of the Privacy Policy for a listing of
| material modifications and their effective dates&period; Regarding personal
| information&comma; if any modifications are materially less restrictive on our
| use or disclosure of the personal information previously disclosed by
| you&comma; we will obtain your consent before implementing such revisions with
| respect to such information&period;
p
strong 3&period; Collection of Anonymous&comma; Passive Information&period;
br
| We reserve the right to monitor your use of the services&period; As you
| navigate through the services&comma; certain anonymous information may be
| passively collected &lpar;that is&comma; gathered without your actively providing
| the information&rpar; using various technologies&comma; such as cookies&comma; Internet
| tags or web beacons&comma; and navigational data collection &lpar;log files&comma; server
| logs&comma; clickstream&rpar;&period; The following is a listing and a brief explanation
| of passive information collection methodologies which we may use from
| time to time to better understand how the Services are being used&period;
p
| 3&period;1 A &quot;cookie&quot; is a text file that this site sends to your
| browser in the form of a text file The information generated by the
| cookie about your use of this site &lpar;including your IP address&rpar; will be
| transmitted to and stored&period; Most browsers automatically accept cookies&comma;
| but they usually can be modified to decline cookies if you prefer&semi;
| however&comma; certain features of this site might not work without cookies&period;
p
| 3&period;2 &quot;Session&quot; cookies are temporary bits of information that are
| used to improve navigation&comma; block visitors from providing information
| where inappropriate &lpar;the Services &quot;remembers&quot; previous entries of age or
| country of origin that were outside the specified parameters and blocks
| subsequent changes&rpar;&comma; and collect aggregate statistical information on
| the Services&period; They are erased once you exit your Web browser or
| otherwise turn off your computer&period;
p
| 3&period;3 &quot;Persistent&quot; cookies are more permanent bits of information
| that are placed on the hard drive of your computer and stay there unless
| you delete the cookie&period; Persistent cookies store information on your
| computer for a number of purposes&comma; such as retrieving certain
| information you have previously provided&comma; helping to determine what
| areas of the Services you may find most valuable&comma; and customizing the
| Services based on your preferences on an ongoing basis&period; Persistent
| cookies placed by this site in your computer do not hold personal
| information&period;
p
| 3&period;4 You can set your browser to accept all cookies&comma; to reject all
| cookies&comma; or to notify you whenever a cookie is offered so that you can
| decide each time whether to accept it&period; To learn more about cookies and
| how to specify your preferences&comma; please search for &quot;cookie&quot; in the
| &quot;Help&quot; portion of your browser&period;
p
| 3&period;5 An Internet Protocol &lpar;IP&rpar; address is a number assigned to
| your computer by your Internet service provider so you can access the
| Internet and is generally considered to be non-personally identifiable
| information&comma; because in most cases an IP address is dynamic &lpar;changing
| each time you connect to the Internet&rpar;&comma; rather than static &lpar;unique to a
| particular user&apos;s computer&rpar;&period; The IP address can be used to diagnose
| problems with a server&comma; report aggregate information&comma; determine the
| fastest route for your computer to use in connecting to a site&comma; and
| administer and improve the Services&period;
p
| 3&period;6 &quot;Internet tags&quot; &lpar;also known as Web Beacons&comma; single-pixel
| GIFs&comma; clear GIFs&comma; invisible GIFs&comma; and 1-by-1 GIFs&rpar; are smaller than
| cookies and tell the Web site server information such as the IP address
| and browser type related to the visitor&apos;s computer&period; Tags may be placed
| both on online advertisements that bring people to the Services and on
| different pages of the Services&period; Such tags indicate how many times a
| page is opened and which information is consulted&period;
p
| 3&period;7 &quot;Navigational data&quot; &lpar;log files&comma; server logs&comma; and clickstream
| data&rpar; are used for system management&comma; to improve the content of the
| Services&comma; market research purposes&comma; and to communicate information to
| visitors&period;
p
strong 4&period; Use and Sharing of Anonymous&comma; Passive Information&period;
br
| The Services may make full use of passively collected anonymous
| information&comma; including without limitation the right to use such
| information to provide better service to Service users&comma; customize the
| Services based on your preferences&comma; compile and analyze statistics and
| trends&comma; and otherwise administer and improve the Services for your use&period; We
| reserve the right to share this anonymous&comma; passive information in
| aggregated form&period;
p
strong 5&period; 3rd Party Behavioral Ads&semi; Google&apos;s AdSense Network&period;
br
| 5&period;1 We reserve the right to use anonymous&comma; passive information
| about your visits to this and other websites &lpar;not including your name&comma;
| address&comma; email address or telephone number&rpar; for purposes of serving our
| ads and third party ads that are targeted to your interests &lpar;&quot;3rd Party
| Behavioral Ads&quot;&rpar;&period; We reserve the right to share anonymous&comma; passive
| information collected on the services with third parties for purposes of
| serving 3rd Party Behavioral Ads&period; These 3rd Party Behavioral Ads do not
| identify you personally&period; Instead&comma; they associate your behavioral data on
| visited sites with your browser&comma; so that the ads your computer sees on
| this site are more likely to be relevant to your interests&period; 3rd Party
| Behavioral Ads require that that you be served with a cookie containing
| a tracking code&period; You may refuse the use of cookies by selecting the
| appropriate settings on your browser&semi; however&comma; please note that if you
| do this you may not be able to use the full functionality of this site&period;
p
| 5&period;2 We reserve the right to participate in Google&apos;s AdSense
| network for purposes of serving 3rd Party Behavioral Ads&period; Google uses
| DoubleClick&apos;s DART cookie for serving 3rd Party Behavioral Ads over the
| AdSense network&period; You may opt out of the use of the DART cookie&period; For
| information regarding how to opt out&comma; go to
| http&colon;&sol;&sol;www&period;google&period;com&sol;privacy&UnderBar;ads&period;html&period;
p
strong 6&period; Use of 3rd Party Analytics&period;
br
| We reserve the right to use analytics services provided by
| third parties&period; These services use 3rd party cookies to collect
| anonymous&comma; passive information about your use of this site &lpar;see
| explanation of cookies in Collection of Anonymous&comma; Passive Information
| above&rpar;&period; We use this information for the purpose of evaluating your use
| of the Services&comma; compiling reports on activity&comma; and providing other
| services&period; These web analytics services may also transfer this
| information to third parties where required to do so by law&comma; or where
| such third parties process the information on the service&apos;s behalf&period;
p
strong 7&period; Collection of Personal Information&semi; Categories&period;
br
| We will ask you for personal information when you sign up for any
| specific benefit or purpose that requires registration&period; Personal
| information that we collect may vary with each registration&comma; and it may
| include one or more of the following categories&colon; name&comma; physical
| address&comma; an email address&comma; phone number&comma; and credit card information
| including credit card number&comma; expiration date&comma; and billing address&comma;
| emergency contact information&comma; current medications&comma; allergies&comma; medical
| insurance information&period;
p
strong
| 8&period; Use And Sharing of Personal Information&colon; General
| Policy And Exceptions&period;
br
| Our general policy is that we will use your personal information&comma;
| including combining your personal information with passive information
| collected from this site&comma; only for&colon; the performance of the services or
| transaction for which it was given&comma; our private&comma; internal reporting for
| this site&comma; and security assessments for this site&comma; and we will not
| share&comma; sell&comma; or rent your personal information to others&period; The only
| exceptions to this general policy&colon; &lpar;i&rpar; are described in the subsections
| below&comma; and &lpar;ii&rpar; if you explicitly approve through our site&period;
p
| 8&period;1 Affiliates And Service Providers&period; We reserve the right to
| provide such information to our affiliates or subsidiaries&comma; or trusted
| service providers for the purpose of hosting our servers or processing
| or archiving personal information for us&period; We require that these parties
| agree to privacy and security safeguards for this information that are
| consistent with this Privacy Policy&period;
p
| 8&period;2 Acquisition&semi; Bankruptcy&period; In the event that we are acquired by
| or merged with a third party entity&comma; we reserve the right to transfer
| such information as part of such merger&comma; acquisition&comma; sale&comma; or other
| change of control&period; In the unlikely event of our bankruptcy&comma; insolvency&comma;
| reorganization&comma; receivership&comma; or assignment for the benefit of
| creditors&comma; or the application of laws or equitable principles affecting
| creditors&apos; rights generally&comma; we reserve the right to transfer such
| information to protect our rights or as required by law&period;
p
| 8&period;3 Enforcement&semi; Legal Process&period; We reserve the right to transfer
| such information if we have a good faith belief that access&comma; use&comma;
| preservation or disclosure of such information is reasonably necessary
| &lpar;i&rpar; to satisfy any applicable law&comma; regulation&comma; legal process or
| enforceable governmental request&comma; or &lpar;ii&rpar; to investigate or enforce
| violations of our rights or the security of this site&period;
p
| 8&period;4 Miscellaneous&period; We reserve the right to share personal
| information with the following additional parties&colon; online organizers
| using our tools and resellers of our products and services from whose
| site the sale originated &lpar;even though the sale originates at site of the
| reseller&comma; registration and collection of personal information occurs at
| this site&rpar;&period;
p
strong
| 9&period; Onward Transfer of Personal Information Outside Your
| Country of Residence&period;
br
| Any personal information which we may collect on this site will
| be stored and processed in our servers located only in the United
| States&period; By using this site&comma; if you reside outside the United States&comma; you
| consent to the transfer of personal information outside your country of
| residence to the United States&period;
p
strong 10&period; Security of Personal Information&period;
br
| We follow reasonable and appropriate industry standards to
| protect your personal information and data&period; Unfortunately&comma; no data
| transmission over the Internet or method of data storage can be
| guaranteed 100&percnt; secure&period; Therefore&comma; while we strive to protect your
| personal information by following generally accepted industry standards&comma;
| we cannot ensure or warrant the absolute security of any information you
| transmit to us or archive at this site&period;
p
strong 11&period; Changing And Updating Personal Information&period;
br
| Upon request&comma; we will permit you to request or make changes or
| updates to your personal information for legitimate purposes&period; We request
| identification prior to approving such requests&period; We reserve the right to
| decline any requests that are unreasonably repetitive or systematic&comma;
| require unreasonable time or effort of our technical or administrative
| personnel&comma; or undermine the privacy rights of others&period; We reserve the
| right to permit you to access your personal information in any account
| you establish with this site for purposes of making your own changes or
| updates&comma; and in such case&comma; instructions for making such changes or
| updates will be provided where necessary&period;
p
strong 12&period; Email From This Site&semi; Opt-Out Rights&period;
br
| If you supply us with your e-mail address you may receive
| periodic messages from us with information specific to the Services and
| required for the normal functioning of the Services as well as for new
| products or services or upcoming events&period; If you prefer not to receive
| periodic email messages&comma; you may opt-out by following the instructions
| on the email&period;
p
strong 13&period; Children&apos;s Online Policy&period;
br
| We are committed to preserving online privacy for all of our
| website visitors&comma; including children&period; This site is a general audience
| site&period; Consistent with the Children&apos;s Online Privacy Protection Act
| &lpar;COPPA&rpar;&comma; we will not knowingly collect any information from&comma; or sell to&comma;
| children under the age of 13&period; If you are a parent or guardian who has
| discovered that your child under the age of 13 has submitted his or her
| personally identifiable information without your permission or consent&comma;
| we will remove the information from our active list&comma; at your request&period; To
| request the removal of your child&apos;s information&comma; please email us at
| <a href='mailto:admin@habitica.com' target='_blank'>admin@habitica.com</a> and be sure to include in
| your message the same login information that your child submitted&period;
p
strong
| 14&period; Email And Other Messages Through This Site&semi; ECPA
| Notice&period;
br
| This site treats email messages and other electronic messages
| that are sent through this site and not viewable by others as
| confidential and private&comma; except as required by law&comma; including without
| limitation&comma; the Electronic Communications Privacy Act of 1986&comma; 18 U&period;S&period;C&period;
| Sections 2701-2711 &lpar;the &quot;ECPA&quot;&rpar;&period; The ECPA permits this site&apos;s limited
| ability to intercept and&sol;or disclose electronic messages&comma; for example
| &lpar;i&rpar; as necessary to operate our system or to protect our rights or
| property&comma; &lpar;ii&rpar; upon legal demand &lpar;court orders&comma; warrants&comma; subpoenas&rpar;&comma; or
| &lpar;iii&rpar; where we receive information inadvertently which appears to
| pertain to the commission of a crime&period; This site is not considered a
| &quot;secure communications medium&quot; under the ECPA&period;
p
strong 15&period; Contact Us&period;
br
| If you have any questions regarding this Privacy Policy&comma; please
| contact the owner and operator of this website business&colon;
address
strong HabitRPG, Inc.
br
| 11870 Santa Monica Blvd., Suite 106-577
br
| Los Angeles, CA 90025
br
| Email&colon;&nbsp;
a(href='mailto:admin@habitica.com') admin@habitica.com
<template>
<div class="container-fluid">
<h1>Privacy Policy</h1><p class="pagemeta">
Last updated July 27, 2015<br><small>(Corrected grammar errors and updated company name)</small><br><br>
</p><p>
<strong>PLEASE READ THIS PRIVACY POLICY CAREFULLY&period;</strong><br>By accessing or otherwise using habitica&period;com or any sub domains thereto &lpar;'the Sites'&rpar;&comma;
or using a habitica&period;com or Habitica application on a mobile device &lpar;'the Applications'&rpar;&comma;
you agree to be bound contractually by this Privacy Policy&period; Individually
or collectively&comma; the Applications and the Sites may be referred to as
the 'Services&period;'
</p><p>
To review material modifications and their effective dates scroll
to the bottom of the page&period;
</p><p>
<strong>1&period; Privacy Statement&semi; Collection of Personal
Information&period;</strong><br>1&period;1 HabitRPG, Inc. owns and operates this business&period; All
references to 'we'&comma; 'us'&comma; shall be construed to mean HabitRPG, Inc.&period;
</p><p>
1&period;2 We understand that visitors to this website are concerned
about the privacy of information&period; The following describes our privacy
policy regarding information&comma; including personal information&comma; that we
collect through this website&period;
</p><p>
<strong>2&period; Modification of Privacy Policy&period;</strong><br>We reserve the right to modify this Privacy Policy at any time&comma;
and without prior notice&comma; by posting an amended Privacy Policy that is
always accessible by clicking on the 'Privacy Policy' link on this
site&apos;s home page&period; Your continued use of this site indicates your
acceptance of the amended Privacy Policy&period; You should check the Privacy
Policy through this link periodically for modifications by clicking on
the link provided near the top of the Privacy Policy for a listing of
material modifications and their effective dates&period; Regarding personal
information&comma; if any modifications are materially less restrictive on our
use or disclosure of the personal information previously disclosed by
you&comma; we will obtain your consent before implementing such revisions with
respect to such information&period;
</p><p>
<strong>3&period; Collection of Anonymous&comma; Passive Information&period;</strong><br>We reserve the right to monitor your use of the services&period; As you
navigate through the services&comma; certain anonymous information may be
passively collected &lpar;that is&comma; gathered without your actively providing
the information&rpar; using various technologies&comma; such as cookies&comma; Internet
tags or web beacons&comma; and navigational data collection &lpar;log files&comma; server
logs&comma; clickstream&rpar;&period; The following is a listing and a brief explanation
of passive information collection methodologies which we may use from
time to time to better understand how the Services are being used&period;
</p><p>
3&period;1 A 'cookie' is a text file that this site sends to your
browser in the form of a text file The information generated by the
cookie about your use of this site &lpar;including your IP address&rpar; will be
transmitted to and stored&period; Most browsers automatically accept cookies&comma;
but they usually can be modified to decline cookies if you prefer&semi;
however&comma; certain features of this site might not work without cookies&period;
</p><p>
3&period;2 'Session' cookies are temporary bits of information that are
used to improve navigation&comma; block visitors from providing information
where inappropriate &lpar;the Services 'remembers' previous entries of age or
country of origin that were outside the specified parameters and blocks
subsequent changes&rpar;&comma; and collect aggregate statistical information on
the Services&period; They are erased once you exit your Web browser or
otherwise turn off your computer&period;
</p><p>
3&period;3 'Persistent' cookies are more permanent bits of information
that are placed on the hard drive of your computer and stay there unless
you delete the cookie&period; Persistent cookies store information on your
computer for a number of purposes&comma; such as retrieving certain
information you have previously provided&comma; helping to determine what
areas of the Services you may find most valuable&comma; and customizing the
Services based on your preferences on an ongoing basis&period; Persistent
cookies placed by this site in your computer do not hold personal
information&period;
</p><p>
3&period;4 You can set your browser to accept all cookies&comma; to reject all
cookies&comma; or to notify you whenever a cookie is offered so that you can
decide each time whether to accept it&period; To learn more about cookies and
how to specify your preferences&comma; please search for 'cookie' in the
'Help' portion of your browser&period;
</p><p>
3&period;5 An Internet Protocol &lpar;IP&rpar; address is a number assigned to
your computer by your Internet service provider so you can access the
Internet and is generally considered to be non-personally identifiable
information&comma; because in most cases an IP address is dynamic &lpar;changing
each time you connect to the Internet&rpar;&comma; rather than static &lpar;unique to a
particular user&apos;s computer&rpar;&period; The IP address can be used to diagnose
problems with a server&comma; report aggregate information&comma; determine the
fastest route for your computer to use in connecting to a site&comma; and
administer and improve the Services&period;
</p><p>
3&period;6 'Internet tags' &lpar;also known as Web Beacons&comma; single-pixel
GIFs&comma; clear GIFs&comma; invisible GIFs&comma; and 1-by-1 GIFs&rpar; are smaller than
cookies and tell the Web site server information such as the IP address
and browser type related to the visitor&apos;s computer&period; Tags may be placed
both on online advertisements that bring people to the Services and on
different pages of the Services&period; Such tags indicate how many times a
page is opened and which information is consulted&period;
</p><p>
3&period;7 'Navigational data' &lpar;log files&comma; server logs&comma; and clickstream
data&rpar; are used for system management&comma; to improve the content of the
Services&comma; market research purposes&comma; and to communicate information to
visitors&period;
</p><p>
<strong>4&period; Use and Sharing of Anonymous&comma; Passive Information&period;</strong><br>The Services may make full use of passively collected anonymous
information&comma; including without limitation the right to use such
information to provide better service to Service users&comma; customize the
Services based on your preferences&comma; compile and analyze statistics and
trends&comma; and otherwise administer and improve the Services for your use&period; We
reserve the right to share this anonymous&comma; passive information in
aggregated form&period;
</p><p>
<strong>5&period; 3rd Party Behavioral Ads&semi; Google&apos;s AdSense Network&period;</strong><br>5&period;1 We reserve the right to use anonymous&comma; passive information
about your visits to this and other websites &lpar;not including your name&comma;
address&comma; email address or telephone number&rpar; for purposes of serving our
ads and third party ads that are targeted to your interests &lpar;'3rd Party
Behavioral Ads'&rpar;&period; We reserve the right to share anonymous&comma; passive
information collected on the services with third parties for purposes of
serving 3rd Party Behavioral Ads&period; These 3rd Party Behavioral Ads do not
identify you personally&period; Instead&comma; they associate your behavioral data on
visited sites with your browser&comma; so that the ads your computer sees on
this site are more likely to be relevant to your interests&period; 3rd Party
Behavioral Ads require that that you be served with a cookie containing
a tracking code&period; You may refuse the use of cookies by selecting the
appropriate settings on your browser&semi; however&comma; please note that if you
do this you may not be able to use the full functionality of this site&period;
</p><p>
5&period;2 We reserve the right to participate in Google&apos;s AdSense
network for purposes of serving 3rd Party Behavioral Ads&period; Google uses
DoubleClick&apos;s DART cookie for serving 3rd Party Behavioral Ads over the
AdSense network&period; You may opt out of the use of the DART cookie&period; For
information regarding how to opt out&comma; go to
http&colon;&sol;&sol;www&period;google&period;com&sol;privacy&UnderBar;ads&period;html&period;
</p><p>
<strong>6&period; Use of 3rd Party Analytics&period;</strong><br>We reserve the right to use analytics services provided by
third parties&period; These services use 3rd party cookies to collect
anonymous&comma; passive information about your use of this site &lpar;see
explanation of cookies in Collection of Anonymous&comma; Passive Information
above&rpar;&period; We use this information for the purpose of evaluating your use
of the Services&comma; compiling reports on activity&comma; and providing other
services&period; These web analytics services may also transfer this
information to third parties where required to do so by law&comma; or where
such third parties process the information on the service&apos;s behalf&period;
</p><p>
<strong>7&period; Collection of Personal Information&semi; Categories&period;</strong><br>We will ask you for personal information when you sign up for any
specific benefit or purpose that requires registration&period; Personal
information that we collect may vary with each registration&comma; and it may
include one or more of the following categories&colon; name&comma; physical
address&comma; an email address&comma; phone number&comma; and credit card information
including credit card number&comma; expiration date&comma; and billing address&comma;
emergency contact information&comma; current medications&comma; allergies&comma; medical
insurance information&period;
</p><p>
<strong>8&period; Use And Sharing of Personal Information&colon; General
Policy And Exceptions&period;</strong><br>Our general policy is that we will use your personal information&comma;
including combining your personal information with passive information
collected from this site&comma; only for&colon; the performance of the services or
transaction for which it was given&comma; our private&comma; internal reporting for
this site&comma; and security assessments for this site&comma; and we will not
share&comma; sell&comma; or rent your personal information to others&period; The only
exceptions to this general policy&colon; &lpar;i&rpar; are described in the subsections
below&comma; and &lpar;ii&rpar; if you explicitly approve through our site&period;
</p><p>
8&period;1 Affiliates And Service Providers&period; We reserve the right to
provide such information to our affiliates or subsidiaries&comma; or trusted
service providers for the purpose of hosting our servers or processing
or archiving personal information for us&period; We require that these parties
agree to privacy and security safeguards for this information that are
consistent with this Privacy Policy&period;
</p><p>
8&period;2 Acquisition&semi; Bankruptcy&period; In the event that we are acquired by
or merged with a third party entity&comma; we reserve the right to transfer
such information as part of such merger&comma; acquisition&comma; sale&comma; or other
change of control&period; In the unlikely event of our bankruptcy&comma; insolvency&comma;
reorganization&comma; receivership&comma; or assignment for the benefit of
creditors&comma; or the application of laws or equitable principles affecting
creditors&apos; rights generally&comma; we reserve the right to transfer such
information to protect our rights or as required by law&period;
</p><p>
8&period;3 Enforcement&semi; Legal Process&period; We reserve the right to transfer
such information if we have a good faith belief that access&comma; use&comma;
preservation or disclosure of such information is reasonably necessary
&lpar;i&rpar; to satisfy any applicable law&comma; regulation&comma; legal process or
enforceable governmental request&comma; or &lpar;ii&rpar; to investigate or enforce
violations of our rights or the security of this site&period;
</p><p>
8&period;4 Miscellaneous&period; We reserve the right to share personal
information with the following additional parties&colon; online organizers
using our tools and resellers of our products and services from whose
site the sale originated &lpar;even though the sale originates at site of the
reseller&comma; registration and collection of personal information occurs at
this site&rpar;&period;
</p><p>
<strong>9&period; Onward Transfer of Personal Information Outside Your
Country of Residence&period;</strong><br>Any personal information which we may collect on this site will
be stored and processed in our servers located only in the United
States&period; By using this site&comma; if you reside outside the United States&comma; you
consent to the transfer of personal information outside your country of
residence to the United States&period;
</p><p>
<strong>10&period; Security of Personal Information&period;</strong><br>We follow reasonable and appropriate industry standards to
protect your personal information and data&period; Unfortunately&comma; no data
transmission over the Internet or method of data storage can be
guaranteed 100&percnt; secure&period; Therefore&comma; while we strive to protect your
personal information by following generally accepted industry standards&comma;
we cannot ensure or warrant the absolute security of any information you
transmit to us or archive at this site&period;
</p><p>
<strong>11&period; Changing And Updating Personal Information&period;</strong><br>Upon request&comma; we will permit you to request or make changes or
updates to your personal information for legitimate purposes&period; We request
identification prior to approving such requests&period; We reserve the right to
decline any requests that are unreasonably repetitive or systematic&comma;
require unreasonable time or effort of our technical or administrative
personnel&comma; or undermine the privacy rights of others&period; We reserve the
right to permit you to access your personal information in any account
you establish with this site for purposes of making your own changes or
updates&comma; and in such case&comma; instructions for making such changes or
updates will be provided where necessary&period;
</p><p>
<strong>12&period; Email From This Site&semi; Opt-Out Rights&period;</strong><br>If you supply us with your e-mail address you may receive
periodic messages from us with information specific to the Services and
required for the normal functioning of the Services as well as for new
products or services or upcoming events&period; If you prefer not to receive
periodic email messages&comma; you may opt-out by following the instructions
on the email&period;
</p><p>
<strong>13&period; Children&apos;s Online Policy&period;</strong><br>We are committed to preserving online privacy for all of our
website visitors&comma; including children&period; This site is a general audience
site&period; Consistent with the Children&apos;s Online Privacy Protection Act
&lpar;COPPA&rpar;&comma; we will not knowingly collect any information from&comma; or sell to&comma;
children under the age of 13&period; If you are a parent or guardian who has
discovered that your child under the age of 13 has submitted his or her
personally identifiable information without your permission or consent&comma;
we will remove the information from our active list&comma; at your request&period; To
request the removal of your child&apos;s information&comma; please email us at
<a
href="mailto:admin@habitica.com"
target="_blank"
>admin@habitica.com</a> and be sure to include in
your message the same login information that your child submitted&period;
</p><p>
<strong>14&period; Email And Other Messages Through This Site&semi; ECPA
Notice&period;</strong><br>This site treats email messages and other electronic messages
that are sent through this site and not viewable by others as
confidential and private&comma; except as required by law&comma; including without
limitation&comma; the Electronic Communications Privacy Act of 1986&comma; 18 U&period;S&period;C&period;
Sections 2701-2711 &lpar;the 'ECPA'&rpar;&period; The ECPA permits this site&apos;s limited
ability to intercept and&sol;or disclose electronic messages&comma; for example
&lpar;i&rpar; as necessary to operate our system or to protect our rights or
property&comma; &lpar;ii&rpar; upon legal demand &lpar;court orders&comma; warrants&comma; subpoenas&rpar;&comma; or
&lpar;iii&rpar; where we receive information inadvertently which appears to
pertain to the commission of a crime&period; This site is not considered a
'secure communications medium' under the ECPA&period;
</p><p>
<strong>15&period; Contact Us&period;</strong><br>If you have any questions regarding this Privacy Policy&comma; please
contact the owner and operator of this website business&colon;
</p><address><strong>HabitRPG, Inc.</strong><br>11870 Santa Monica Blvd., Suite 106-577<br>Los Angeles, CA 90025<br>Email&colon;&nbsp;<a href="mailto:admin@habitica.com">admin@habitica.com</a></address>
</div>
</template>
@@ -1,17 +1,25 @@
<template lang="pug">
div
static-header(v-if='showContentWrap', :class='{"home-header": ["home", "front"].indexOf($route.name) !== -1, "white-header": this.$route.name === "plans"}')
.static-wrapper
router-view
div(:id='footerId', v-if='showContentWrap')
app-footer
#bottom-wrap.purple-4(v-if='showContentWrap && footerId')
#bottom-background
.seamless_mountains_demo_repeat
.midground_foreground_extended2
<template>
<div>
<static-header
v-if="showContentWrap"
:class="{'home-header': ['home', 'front'].indexOf($route.name) !== -1, 'white-header': this.$route.name === 'plans'}"
/><div class="static-wrapper">
<router-view />
</div><div
v-if="showContentWrap"
:id="footerId"
>
<app-footer />
</div><div
v-if="showContentWrap && footerId"
id="bottom-wrap"
class="purple-4"
>
<div id="bottom-background">
<div class="seamless_mountains_demo_repeat"></div><div class="midground_foreground_extended2"></div>
</div>
</div>
</div>
</template>
<style lang="scss">
File diff suppressed because it is too large Load Diff