diff --git a/imports/ui/pages/Index/new-age.js b/imports/ui/pages/Index/new-age.js
new file mode 100644
index 0000000..797e9a8
--- /dev/null
+++ b/imports/ui/pages/Index/new-age.js
@@ -0,0 +1,42 @@
+(function($) {
+ "use strict"; // Start of use strict
+
+ // Smooth scrolling using jQuery easing
+ $('a.js-scroll-trigger[href*="#"]:not([href="#"])').click(function() {
+ if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
+ var target = $(this.hash);
+ target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
+ if (target.length) {
+ $('html, body').animate({
+ scrollTop: (target.offset().top - 48)
+ }, 1000, "easeInOutExpo");
+ return false;
+ }
+ }
+ });
+
+ // Closes responsive menu when a scroll trigger link is clicked
+ $('.js-scroll-trigger').click(function() {
+ $('.navbar-collapse').collapse('hide');
+ });
+
+ // Activate scrollspy to add active class to navbar items on scroll
+ $('body').scrollspy({
+ target: '#mainNav',
+ offset: 54
+ });
+
+ // Collapse Navbar
+ /* var navbarCollapse = function() {
+ * if ($("#mainNav").offset().top > 100) {
+ * $("#mainNav").addClass("navbar-shrink");
+ * } else {
+ * $("#mainNav").removeClass("navbar-shrink");
+ * }
+ * };
+ * // Collapse now if page is not at top
+ * navbarCollapse();
+ * // Collapse the navbar when page is scrolled
+ * $(window).scroll(navbarCollapse); */
+
+})(jQuery); // End of use strict
diff --git a/imports/ui/pages/Login/Login.js b/imports/ui/pages/Login/Login.js
index f0fb7ad..1e41299 100644
--- a/imports/ui/pages/Login/Login.js
+++ b/imports/ui/pages/Login/Login.js
@@ -1,21 +1,22 @@
import React from 'react';
-import { Row, FormGroup, ControlLabel, Button } from 'react-bootstrap';
-import Col from '../../components/Col/Col';
import PropTypes from 'prop-types';
+import { Row, FormGroup, ControlLabel, Button } from 'react-bootstrap';
import { Link } from 'react-router-dom';
import { Meteor } from 'meteor/meteor';
import { Bert } from 'meteor/themeteorchef:bert';
+import { translate } from 'react-i18next';
+import { T9n } from 'meteor-accounts-t9n';
+import Col from '../../components/Col/Col';
import OAuthLoginButtons from '../../components/OAuthLoginButtons/OAuthLoginButtons';
import AccountPageFooter from '../../components/AccountPageFooter/AccountPageFooter';
import validate from '../../../modules/validate';
-import { translate } from 'react-i18next';
-import { T9n } from 'meteor-accounts-t9n';
class Login extends React.Component {
constructor(props) {
super(props);
this.t = props.t;
this.handleSubmit = this.handleSubmit.bind(this);
+ console.log(this.props.location.state);
}
componentDidMount() {
@@ -25,26 +26,26 @@ class Login extends React.Component {
rules: {
emailAddress: {
required: true,
- email: true,
+ email: true
},
password: {
- required: true,
- },
+ required: true
+ }
},
messages: {
emailAddress: {
- required: this.t("Necesitamos un correo aquí."),
- email: this.t("¿Es este correo correcto?"),
+ required: this.t('Necesitamos un correo aquí.'),
+ email: this.t('¿Es este correo correcto?')
},
password: {
- required: this.t("Necesitamos una contraseña aquí."),
- },
+ required: this.t('Necesitamos una contraseña aquí.')
+ }
},
- submitHandler() { component.handleSubmit(); },
+ submitHandler() { component.handleSubmit(); }
});
}
- handleSubmit() {
+ handleSubmit = () => {
const { history } = this.props;
Meteor.loginWithPassword(this.emailAddress.value, this.password.value, (error) => {
@@ -52,61 +53,69 @@ class Login extends React.Component {
Bert.alert(T9n.get(`error.accounts.${error.reason}`), 'danger');
} else {
Bert.alert(this.t('Bienvenid@ de nuevo'), 'success');
+ console.log(this.props.location.state);
+ if (this.props.location.state &&
+ this.props.location.state.center &&
+ this.props.location.state.distance) {
+ this.props.history.push('/subscriptions', this.props.location.state);
+ }
}
});
}
render() {
- return (
-
-
- {this.t("Iniciar sesión")}
-
-
-
-
-
-
-
-
-
);
+ return (
+
+
+
+ {this.t('Iniciar sesión')}
+
+
+
+
+
+
+
+
+
);
}
}
Login.propTypes = {
history: PropTypes.object.isRequired,
+ t: PropTypes.func.isRequired,
};
export default translate([], { wait: true })(Login);
diff --git a/imports/ui/pages/Sandbox/Sandbox.js b/imports/ui/pages/Sandbox/Sandbox.js
index 535bb86..8837c6a 100644
--- a/imports/ui/pages/Sandbox/Sandbox.js
+++ b/imports/ui/pages/Sandbox/Sandbox.js
@@ -1,33 +1,28 @@
import React from 'react';
-import { Trans, translate } from 'react-i18next';
-import DistanceSlider from '/imports/ui/components/DistanceSlider/DistanceSlider';
-import SelectionMap from '/imports/ui/components/SelectionMap/SelectionMap';
-import update from 'immutability-helper';
-import { Gkeys } from '/imports/startup/client/Gkeys';
-import FireSubscription from '/imports/ui/pages/FireSubscription/FireSubscription';
+// import PropTypes from 'prop-types';
+import { translate } from 'react-i18next';
class Sandbox extends React.Component {
constructor(props) {
super(props);
- this.state = {
- init: false
- };
+ /* this.state = {
+ * init: false
+ * }; */
}
- componentDidMount = () => {
- this.setState({init: true});
- Gkeys.load(function(err, key) {
- console.log(key);
- }.bind(this));
+ componentDidMount() {
+ // this.setState({init: true});
}
render() {
return (
-
-
-
+
);
}
}
+Sandbox.propTypes = {
+ // history: PropTypes.object.isRequired
+};
+
export default translate([], { wait: true }) (Sandbox);
diff --git a/imports/ui/pages/Signup/Signup.js b/imports/ui/pages/Signup/Signup.js
index 8f9e99f..33a8e54 100644
--- a/imports/ui/pages/Signup/Signup.js
+++ b/imports/ui/pages/Signup/Signup.js
@@ -10,7 +10,6 @@ import OAuthLoginButtons from '../../components/OAuthLoginButtons/OAuthLoginButt
import InputHint from '../../components/InputHint/InputHint';
import AccountPageFooter from '../../components/AccountPageFooter/AccountPageFooter';
import validate from '../../../modules/validate';
-import Icon from '../../components/Icon/Icon';
import './Signup.scss';
import { translate } from 'react-i18next';
import { T9n } from 'meteor-accounts-t9n';
@@ -164,7 +163,7 @@ class Signup extends React.Component {
}
Signup.propTypes = {
- history: PropTypes.object.isRequired,
+ history: PropTypes.object.isRequired
};
-export default translate([], { wait: true })(Signup)
+export default translate([], { wait: true })(Signup);
diff --git a/imports/ui/stylesheets/app.scss b/imports/ui/stylesheets/app.scss
index e651d62..409c749 100644
--- a/imports/ui/stylesheets/app.scss
+++ b/imports/ui/stylesheets/app.scss
@@ -3,3 +3,4 @@
@import './bootstrap-overrides';
@import './custom';
@import './cookies-eu';
+@import './new-age';
diff --git a/imports/ui/stylesheets/new-age.scss b/imports/ui/stylesheets/new-age.scss
new file mode 100644
index 0000000..cef5356
--- /dev/null
+++ b/imports/ui/stylesheets/new-age.scss
@@ -0,0 +1,311 @@
+/*!
+ * Start Bootstrap - New Age v4.0.0-beta.2 (https://startbootstrap.com/template-overviews/new-age)
+ * Copyright 2013-2017 Start Bootstrap
+ * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-new-age/blob/master/LICENSE)
+ */
+
+/* html,
+ body {
+ width: 100%;
+ height: 100%; } */
+
+body {
+ font-family: 'Muli', 'Helvetica', 'Arial', 'sans-serif';
+}
+
+a {
+ color: #fdcc52;
+ -webkit-transition: all .35s;
+ -moz-transition: all .35s;
+ transition: all .35s; }
+
+a:hover, a:focus {
+ color: #fcbd20; }
+
+hr {
+ max-width: 100px;
+ margin: 25px auto 0;
+ border-width: 1px;
+ border-color: rgba(34, 34, 34, 0.1); }
+
+hr.light {
+ border-color: white; }
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ font-family: 'Catamaran', 'Helvetica', 'Arial', 'sans-serif';
+ font-weight: 200;
+ letter-spacing: 1px; }
+
+p {
+ font-size: 18px;
+ line-height: 1.5;
+ margin-bottom: 20px; }
+
+section {
+ padding: 100px 0; }
+section h2 {
+ font-size: 50px; }
+
+#mainNav {
+ border-color: rgba(34, 34, 34, 0.05);
+ background-color: white;
+ -webkit-transition: all .35s;
+ -moz-transition: all .35s;
+ transition: all .35s;
+ font-family: 'Catamaran', 'Helvetica', 'Arial', 'sans-serif';
+ font-weight: 200;
+ letter-spacing: 1px; }
+#mainNav .navbar-brand {
+ color: #fdcc52;
+ font-family: 'Catamaran', 'Helvetica', 'Arial', 'sans-serif';
+ font-weight: 200;
+ letter-spacing: 1px; }
+#mainNav .navbar-brand:hover, #mainNav .navbar-brand:focus {
+ color: #fcbd20; }
+#mainNav .navbar-toggler {
+ font-size: 12px;
+ padding: 8px 10px;
+ color: #222222; }
+#mainNav .navbar-nav > li > a {
+ font-size: 11px;
+ font-family: 'Lato', 'Helvetica', 'Arial', 'sans-serif';
+ letter-spacing: 2px;
+ text-transform: uppercase; }
+#mainNav .navbar-nav > li > a.active {
+ color: #fdcc52 !important;
+ background-color: transparent; }
+#mainNav .navbar-nav > li > a.active:hover {
+ background-color: transparent; }
+#mainNav .navbar-nav > li > a,
+#mainNav .navbar-nav > li > a:focus {
+ color: #222222; }
+#mainNav .navbar-nav > li > a:hover,
+#mainNav .navbar-nav > li > a:focus:hover {
+ color: #fdcc52; }
+@media (min-width: 992px) {
+ #mainNav {
+ border-color: transparent;
+ background-color: transparent; }
+ #mainNav .navbar-brand {
+ color: fade(white, 70%); }
+ #mainNav .navbar-brand:hover, #mainNav .navbar-brand:focus {
+ color: white; }
+ #mainNav .navbar-nav > li > a,
+ #mainNav .navbar-nav > li > a:focus {
+ color: rgba(255, 255, 255, 0.7); }
+ #mainNav .navbar-nav > li > a:hover,
+ #mainNav .navbar-nav > li > a:focus:hover {
+ color: white; }
+ #mainNav.navbar-shrink {
+ border-color: rgba(34, 34, 34, 0.1);
+ background-color: white; }
+ #mainNav.navbar-shrink .navbar-brand {
+ color: #222222; }
+ #mainNav.navbar-shrink .navbar-brand:hover, #mainNav.navbar-shrink .navbar-brand:focus {
+ color: #fdcc52; }
+ #mainNav.navbar-shrink .navbar-nav > li > a,
+ #mainNav.navbar-shrink .navbar-nav > li > a:focus {
+ color: #222222; }
+ #mainNav.navbar-shrink .navbar-nav > li > a:hover,
+ #mainNav.navbar-shrink .navbar-nav > li > a:focus:hover {
+ color: #fdcc52; } }
+
+header.masthead {
+ position: relative;
+ width: 100%;
+ padding-top: 150px;
+ padding-bottom: 100px;
+ color: white;
+ background: url("../img/bg-pattern.png"), #7b4397;
+ background: url("../img/bg-pattern.png"), -webkit-linear-gradient(to left, #7b4397, #dc2430);
+ background: url("../img/bg-pattern.png"), linear-gradient(to left, #7b4397, #dc2430); }
+header.masthead .header-content {
+ max-width: 500px;
+ margin-bottom: 100px;
+ text-align: center; }
+header.masthead .header-content h1 {
+ font-size: 30px; }
+header.masthead .device-container {
+ max-width: 325px;
+ margin-right: auto;
+ margin-left: auto; }
+header.masthead .device-container .screen img {
+ border-radius: 3px; }
+@media (min-width: 992px) {
+ header.masthead {
+ height: 100vh;
+ min-height: 775px;
+ padding-top: 0;
+ padding-bottom: 0; }
+ header.masthead .header-content {
+ margin-bottom: 0;
+ text-align: left; }
+ header.masthead .header-content h1 {
+ font-size: 50px; }
+ header.masthead .device-container {
+ max-width: 325px; } }
+
+section.download {
+ position: relative;
+ padding: 150px 0; }
+section.download h2 {
+ font-size: 50px;
+ margin-top: 0; }
+section.download .badges .badge-link {
+ display: block;
+ margin-bottom: 25px; }
+section.download .badges .badge-link:last-child {
+ margin-bottom: 0; }
+section.download .badges .badge-link img {
+ height: 60px; }
+@media (min-width: 768px) {
+ section.download .badges .badge-link {
+ display: inline-block;
+ margin-bottom: 0; } }
+@media (min-width: 768px) {
+ section.download h2 {
+ font-size: 70px; } }
+
+section.features .section-heading {
+ margin-bottom: 100px; }
+section.features .section-heading h2 {
+ margin-top: 0; }
+section.features .section-heading p {
+ margin-bottom: 0; }
+
+section.features .device-container,
+section.features .feature-item {
+ max-width: 325px;
+ margin: 0 auto; }
+
+section.features .device-container {
+ margin-bottom: 100px; }
+@media (min-width: 992px) {
+ section.features .device-container {
+ margin-bottom: 0; } }
+
+section.features .feature-item {
+ padding-top: 50px;
+ padding-bottom: 50px;
+ text-align: center; }
+section.features .feature-item h3 {
+ font-size: 30px; }
+section.features .feature-item i {
+ font-size: 80px;
+ display: block;
+ margin-bottom: 15px;
+ background: -webkit-linear-gradient(to left, #7b4397, #dc2430);
+ background: linear-gradient(to left, #7b4397, #dc2430);
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent; }
+
+section.cta {
+ position: relative;
+ padding: 250px 0;
+ background-image: url("../img/bg-cta.jpg");
+ background-position: center;
+ -webkit-background-size: cover;
+ -moz-background-size: cover;
+ -o-background-size: cover;
+ background-size: cover; }
+section.cta .cta-content {
+ position: relative;
+ z-index: 1; }
+section.cta .cta-content h2 {
+ font-size: 50px;
+ max-width: 450px;
+ margin-top: 0;
+ margin-bottom: 25px;
+ color: white; }
+@media (min-width: 768px) {
+ section.cta .cta-content h2 {
+ font-size: 80px; } }
+section.cta .overlay {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background-color: rgba(0, 0, 0, 0.5); }
+
+section.contact {
+ text-align: center; }
+section.contact h2 {
+ margin-top: 0;
+ margin-bottom: 25px; }
+section.contact h2 i {
+ color: #dd4b39; }
+section.contact ul.list-social {
+ margin-bottom: 0; }
+section.contact ul.list-social li a {
+ font-size: 40px;
+ line-height: 80px;
+ display: block;
+ width: 80px;
+ height: 80px;
+ color: white;
+ border-radius: 100%; }
+section.contact ul.list-social li.social-twitter a {
+ background-color: #1da1f2; }
+section.contact ul.list-social li.social-twitter a:hover {
+ background-color: #0d95e8; }
+section.contact ul.list-social li.social-facebook a {
+ background-color: #3b5998; }
+section.contact ul.list-social li.social-facebook a:hover {
+ background-color: #344e86; }
+section.contact ul.list-social li.social-google-plus a {
+ background-color: #dd4b39; }
+section.contact ul.list-social li.social-google-plus a:hover {
+ background-color: #d73925; }
+
+footer {
+ padding: 25px 0;
+ text-align: center;
+ color: rgba(255, 255, 255, 0.3);
+ background-color: #222222; }
+footer p {
+ font-size: 12px;
+ margin: 0; }
+footer ul {
+ margin-bottom: 0; }
+footer ul li a {
+ font-size: 12px;
+ color: rgba(255, 255, 255, 0.3); }
+footer ul li a:hover, footer ul li a:focus, footer ul li a:active, footer ul li a.active {
+ text-decoration: none; }
+
+.bg-primary {
+ background: #fdcc52;
+ background: -webkit-linear-gradient(#fdcc52, #fdc539);
+ background: linear-gradient(#fdcc52, #fdc539); }
+
+.text-primary {
+ color: #fdcc52; }
+
+.no-gutter > [class*='col-'] {
+ padding-right: 0;
+ padding-left: 0; }
+
+.btn-outline {
+ color: white;
+ border: 1px solid;
+ border-color: white; }
+.btn-outline:hover, .btn-outline:focus, .btn-outline:active, .btn-outline.active {
+ color: white;
+ border-color: #fdcc52;
+ background-color: #fdcc52; }
+
+.btn {
+ border-radius: 300px;
+ font-family: 'Lato', 'Helvetica', 'Arial', 'sans-serif';
+ letter-spacing: 2px;
+ text-transform: uppercase; }
+
+.btn-xl {
+ font-size: 11px;
+ padding: 15px 45px; }
diff --git a/public/locales/es/common.json b/public/locales/es/common.json
index 93f06cf..ef9cad3 100644
--- a/public/locales/es/common.json
+++ b/public/locales/es/common.json
@@ -128,5 +128,4 @@
"<0>Para preservar la privacidad de nuestros usuarios/as, los datos reflejados están aleatoriamente alterados y son solo orientativos.0> <0>Para preservar la privacidad de nuestros usuarios/as, los datos reflejados están aleatoriamente alterados y son solo orientativos.0>",
"Nuevas notificaciones de {{app}}":
"Nuevas notificaciones de {{app}}"
-
}