ux: updated login page

This commit is contained in:
Torkel Ödegaard
2017-12-13 17:46:14 +01:00
parent 8ea94817f5
commit 1eeb421ddb
2 changed files with 44 additions and 76 deletions

View File

@@ -1,29 +1,27 @@
import React, { Component } from 'react';
const elementsInWidth = 22;
const elementRows = 50;
const xCount = 50;
const yCount = 50;
function Cell({ index, flipIndex }) {
const bgColor1 = getColor(index);
// const bgColor2 = getColor(index+2);
function Cell({ x, y, flipIndex }) {
const index = (y * xCount) + x;
const bgColor1 = getColor(x, y);
return (
<div className={`login-bg__item login-bg-${index} ${flipIndex === index ? 'login-bg-flip' : ''}`} key={index} style={{background: bgColor1}} />
<div className={`login-bg__item ${flipIndex === index ? 'login-bg-flip' : ''}`} key={index} style={{background: bgColor1}} />
);
}
const getRandomInt = (min, max) => {
function getRandomInt(min, max) {
min = Math.ceil(min);
max = Math.floor(max);
return Math.floor(Math.random() * (max - min)) + min; //The maximum is exclusive and the minimum is inclusive
};
}
export default class LoginBackground extends Component<any, any> {
nrOfElements: number;
cancelInterval: any;
constructor(props) {
super(props);
this.nrOfElements = elementsInWidth * elementRows;
this.state = {
flipIndex: null,
@@ -33,14 +31,13 @@ export default class LoginBackground extends Component<any, any> {
}
flipElements() {
const elementIndexToFlip = getRandomInt(0, this.nrOfElements - 1);
const elementIndexToFlip = getRandomInt(0, (xCount * yCount) - 1);
this.setState(prevState => {
return {
...prevState,
flipIndex: elementIndexToFlip,
};
});
console.log('elementIndexToFlip', elementIndexToFlip);
}
componentWillMount() {
@@ -56,9 +53,15 @@ export default class LoginBackground extends Component<any, any> {
return (
<div className="login-bg">
{Array.from(Array(elementsInWidth * elementRows)).map((el, index) => {
{Array.from(Array(yCount)).map((el, y) => {
return (
<Cell index={index} flipIndex={this.state.flipIndex} />
<div className="login-bg__row">
{Array.from(Array(xCount)).map((el2, x) => {
return (
<Cell y={y} x={x} flipIndex={this.state.flipIndex} />
);
})}
</div>
);
})}
</div>
@@ -66,7 +69,7 @@ export default class LoginBackground extends Component<any, any> {
}
}
const getColor = index => {
function getColor(x, y) {
const colors = [
'#14161A',
'#111920',
@@ -1228,5 +1231,10 @@ const getColor = index => {
'#101A27',
'#13171F',
];
return colors[index];
};
// let randX = getRandomInt(0, x);
// let randY = getRandomInt(0, y);
// let randIndex = randY * xCount + randX;
return colors[(y*xCount + x) % colors.length];
}