diff --git a/website/client/assets/images/home/battle-monsters.png b/website/client/assets/images/home/battle-monsters.png new file mode 100755 index 0000000000..8f57061dcd Binary files /dev/null and b/website/client/assets/images/home/battle-monsters.png differ diff --git a/website/client/assets/images/home/battle-monsters@2x.png b/website/client/assets/images/home/battle-monsters@2x.png new file mode 100755 index 0000000000..84656a7ae6 Binary files /dev/null and b/website/client/assets/images/home/battle-monsters@2x.png differ diff --git a/website/client/assets/images/home/battle-monsters@3x.png b/website/client/assets/images/home/battle-monsters@3x.png new file mode 100755 index 0000000000..d56a85abef Binary files /dev/null and b/website/client/assets/images/home/battle-monsters@3x.png differ diff --git a/website/client/assets/images/home/earn-rewards.png b/website/client/assets/images/home/earn-rewards.png new file mode 100755 index 0000000000..849a275445 Binary files /dev/null and b/website/client/assets/images/home/earn-rewards.png differ diff --git a/website/client/assets/images/home/earn-rewards@2x.png b/website/client/assets/images/home/earn-rewards@2x.png new file mode 100755 index 0000000000..e67c7d821a Binary files /dev/null and b/website/client/assets/images/home/earn-rewards@2x.png differ diff --git a/website/client/assets/images/home/earn-rewards@3x.png b/website/client/assets/images/home/earn-rewards@3x.png new file mode 100755 index 0000000000..d2c07d504e Binary files /dev/null and b/website/client/assets/images/home/earn-rewards@3x.png differ diff --git a/website/client/assets/images/home/google-play-badge.svg b/website/client/assets/images/home/google-play-badge.svg new file mode 100644 index 0000000000..9b44de53af --- /dev/null +++ b/website/client/assets/images/home/google-play-badge.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/website/client/assets/images/home/health-fitness.png b/website/client/assets/images/home/health-fitness.png new file mode 100755 index 0000000000..0ad5f7c720 Binary files /dev/null and b/website/client/assets/images/home/health-fitness.png differ diff --git a/website/client/assets/images/home/health-fitness@2x.png b/website/client/assets/images/home/health-fitness@2x.png new file mode 100755 index 0000000000..d27db69210 Binary files /dev/null and b/website/client/assets/images/home/health-fitness@2x.png differ diff --git a/website/client/assets/images/home/health-fitness@3x.png b/website/client/assets/images/home/health-fitness@3x.png new file mode 100755 index 0000000000..81bbd97daa Binary files /dev/null and b/website/client/assets/images/home/health-fitness@3x.png differ diff --git a/website/client/assets/images/home/home-main.png b/website/client/assets/images/home/home-main.png new file mode 100755 index 0000000000..f28102ccef Binary files /dev/null and b/website/client/assets/images/home/home-main.png differ diff --git a/website/client/assets/images/home/home-main@2x.png b/website/client/assets/images/home/home-main@2x.png new file mode 100755 index 0000000000..23a022cb90 Binary files /dev/null and b/website/client/assets/images/home/home-main@2x.png differ diff --git a/website/client/assets/images/home/home-main@3x.png b/website/client/assets/images/home/home-main@3x.png new file mode 100755 index 0000000000..8b5163a935 Binary files /dev/null and b/website/client/assets/images/home/home-main@3x.png differ diff --git a/website/client/assets/images/home/ios-app-store.svg b/website/client/assets/images/home/ios-app-store.svg new file mode 100644 index 0000000000..7c3f49e39a --- /dev/null +++ b/website/client/assets/images/home/ios-app-store.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/website/client/assets/images/home/iphones.svg b/website/client/assets/images/home/iphones.svg new file mode 100644 index 0000000000..da70a7804f --- /dev/null +++ b/website/client/assets/images/home/iphones.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/website/client/assets/images/home/much-more.png b/website/client/assets/images/home/much-more.png new file mode 100755 index 0000000000..0aa1f0f838 Binary files /dev/null and b/website/client/assets/images/home/much-more.png differ diff --git a/website/client/assets/images/home/much-more@2x.png b/website/client/assets/images/home/much-more@2x.png new file mode 100755 index 0000000000..c4d382b3a7 Binary files /dev/null and b/website/client/assets/images/home/much-more@2x.png differ diff --git a/website/client/assets/images/home/much-more@3x.png b/website/client/assets/images/home/much-more@3x.png new file mode 100755 index 0000000000..c0d2f78292 Binary files /dev/null and b/website/client/assets/images/home/much-more@3x.png differ diff --git a/website/client/assets/images/home/pixel-horizontal-2.svg b/website/client/assets/images/home/pixel-horizontal-2.svg new file mode 100644 index 0000000000..31c1a35fde --- /dev/null +++ b/website/client/assets/images/home/pixel-horizontal-2.svg @@ -0,0 +1,3 @@ + + + diff --git a/website/client/assets/images/home/pixel-horizontal-3.svg b/website/client/assets/images/home/pixel-horizontal-3.svg new file mode 100644 index 0000000000..857f146055 --- /dev/null +++ b/website/client/assets/images/home/pixel-horizontal-3.svg @@ -0,0 +1,3 @@ + + + diff --git a/website/client/assets/images/home/pixel-horizontal.svg b/website/client/assets/images/home/pixel-horizontal.svg new file mode 100644 index 0000000000..301e0bb0d1 --- /dev/null +++ b/website/client/assets/images/home/pixel-horizontal.svg @@ -0,0 +1,3 @@ + + + diff --git a/website/client/assets/images/home/school-work.png b/website/client/assets/images/home/school-work.png new file mode 100755 index 0000000000..9fe1c2e308 Binary files /dev/null and b/website/client/assets/images/home/school-work.png differ diff --git a/website/client/assets/images/home/school-work@2x.png b/website/client/assets/images/home/school-work@2x.png new file mode 100755 index 0000000000..43b64b5c78 Binary files /dev/null and b/website/client/assets/images/home/school-work@2x.png differ diff --git a/website/client/assets/images/home/school-work@3x.png b/website/client/assets/images/home/school-work@3x.png new file mode 100755 index 0000000000..1c330bedf5 Binary files /dev/null and b/website/client/assets/images/home/school-work@3x.png differ diff --git a/website/client/assets/images/home/spacer.svg b/website/client/assets/images/home/spacer.svg new file mode 100644 index 0000000000..0c240f574c --- /dev/null +++ b/website/client/assets/images/home/spacer.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/website/client/assets/images/home/track-habits.png b/website/client/assets/images/home/track-habits.png new file mode 100755 index 0000000000..d84a6b5563 Binary files /dev/null and b/website/client/assets/images/home/track-habits.png differ diff --git a/website/client/assets/images/home/track-habits@2x.png b/website/client/assets/images/home/track-habits@2x.png new file mode 100755 index 0000000000..ae021b5cd4 Binary files /dev/null and b/website/client/assets/images/home/track-habits@2x.png differ diff --git a/website/client/assets/images/home/track-habits@3x.png b/website/client/assets/images/home/track-habits@3x.png new file mode 100755 index 0000000000..bfaa4f3b65 Binary files /dev/null and b/website/client/assets/images/home/track-habits@3x.png differ diff --git a/website/client/assets/svg/amazonpay.svg b/website/client/assets/svg/amazonpay.svg new file mode 100644 index 0000000000..76bd1f66c4 --- /dev/null +++ b/website/client/assets/svg/amazonpay.svg @@ -0,0 +1,73 @@ + + + + +Zeichenfläche 1 + + + + + + + + + + + + + + diff --git a/website/client/assets/svg/group.svg b/website/client/assets/svg/group.svg new file mode 100644 index 0000000000..4bfabce2e3 --- /dev/null +++ b/website/client/assets/svg/group.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/website/client/components/appMenu.vue b/website/client/components/appMenu.vue index ff5f15c83c..41d7052758 100644 --- a/website/client/components/appMenu.vue +++ b/website/client/components/appMenu.vue @@ -3,10 +3,10 @@ div inbox-modal creator-intro profile - nav.navbar.navbar-inverse.fixed-top.navbar-toggleable-sm + nav.navbar.navbar-inverse.fixed-top.navbar-toggleable-lg .navbar-header .logo.svg-icon(v-html="icons.logo") - .collapse.navbar-collapse + b-collapse#nav_collapse.collapse.navbar-collapse(is-nav) ul.navbar-nav.mr-auto router-link.nav-item(tag="li", :to="{name: 'tasks'}", exact) a.nav-link(v-once) {{ $t('tasks') }} @@ -75,12 +75,27 @@ div a.dropdown-item(@click='showProfile("profile")') {{ $t('profile') }} router-link.dropdown-item(:to="{name: 'site'}") {{ $t('settings') }} a.nav-link.dropdown-item(to="/", @click.prevent='logout()') {{ $t('logout') }} + b-nav-toggle(target='nav_collapse') diff --git a/website/client/components/static/home.vue b/website/client/components/static/home.vue index ddafea71f9..5ca770f4ae 100644 --- a/website/client/components/static/home.vue +++ b/website/client/components/static/home.vue @@ -1,607 +1,458 @@ + + diff --git a/website/client/mixins/payments.js b/website/client/mixins/payments.js index 67f4618f2d..255936f3f3 100644 --- a/website/client/mixins/payments.js +++ b/website/client/mixins/payments.js @@ -1,9 +1,23 @@ import axios from 'axios'; +let AUTH_SETTINGS = localStorage.getItem('habit-mobile-settings'); +let API_TOKEN = ''; +if (AUTH_SETTINGS) { + AUTH_SETTINGS = JSON.parse(AUTH_SETTINGS); + API_TOKEN = AUTH_SETTINGS.auth.apiToken; +} + const STRIPE_PUB_KEY = process.env.STRIPE_PUB_KEY; // eslint-disable-line import subscriptionBlocks from '../../common/script/content/subscriptionBlocks'; +let StripeCheckout = window.StripeCheckout; + export default { + computed: { + paypalCheckoutLink () { + return `/paypal/checkout?_id=${this.user._id}&apiToken=${API_TOKEN}`; + }, + }, methods: { showStripe (data) { if (!this.checkGemAmount(data)) return; @@ -23,7 +37,7 @@ export default { if (data.gift && data.gift.type === 'gems') amount = data.gift.gems.amount / 4 * 100; if (data.group) amount = (sub.price + 3 * (data.group.memberCount - 1)) * 100; - this.StripeCheckout.open({ + StripeCheckout.open({ key: STRIPE_PUB_KEY, address: false, amount, @@ -65,6 +79,30 @@ export default { }, }); }, + showStripeEdit (config) { + let groupId; + if (config && config.groupId) { + groupId = config.groupId; + } + + StripeCheckout.open({ + key: STRIPE_PUB_KEY, + address: false, + name: this.$t('subUpdateTitle'), + description: this.$t('subUpdateDescription'), + panelLabel: this.$t('subUpdateCard'), + token: async (data) => { + data.groupId = groupId; + let url = '/stripe/subscribe/edit'; + let response = await axios.post(url, data); + + // Succss + window.location.reload(true); + // error + alert(response.message); + }, + }); + }, checkGemAmount (data) { let isGem = data && data.gift && data.gift.type === 'gems'; let notEnoughGem = isGem && (!data.gift.gems.amount || data.gift.gems.amount === 0); diff --git a/website/client/store/index.js b/website/client/store/index.js index f5b95045de..8c8cf9358e 100644 --- a/website/client/store/index.js +++ b/website/client/store/index.js @@ -114,6 +114,7 @@ export default function () { upgradingGroup: {}, notificationStore: [], modalStack: [], + afterLoginRedirect: '', }, }); diff --git a/website/common/script/ops/unlock.js b/website/common/script/ops/unlock.js index dbbb01352e..036fa9bbd7 100644 --- a/website/common/script/ops/unlock.js +++ b/website/common/script/ops/unlock.js @@ -94,9 +94,12 @@ module.exports = function unlock (user, req = {}, analytics) { // Using Object so path[1] won't create an array but an object {path: {1: value}} setWith(user, `purchased.${path}`, true, Object); - let backgroundContent = content.backgroundsFlat[value]; - let itemInfo = getItemInfo(user, 'background', backgroundContent); - removeItemByPath(user, itemInfo.path); + // @TODO: Test and check test coverage + if (isBackground) { + let backgroundContent = content.backgroundsFlat[value]; + let itemInfo = getItemInfo(user, 'background', backgroundContent); + removeItemByPath(user, itemInfo.path); + } } }