mirror of
https://github.com/danbulant/ester_os
synced 2026-07-05 11:00:56 +00:00
Working change between time and password prompt
This commit is contained in:
parent
b45efdbbbb
commit
fd5d6291a6
2 changed files with 95 additions and 6 deletions
|
|
@ -1,3 +1,8 @@
|
||||||
|
html, body, #root {
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.navbar {
|
.navbar {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
|
@ -17,7 +22,33 @@
|
||||||
|
|
||||||
.login {
|
.login {
|
||||||
transition: backdrop-filter;
|
transition: backdrop-filter;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login.active {
|
.login.active {
|
||||||
backdrop-filter: blur(15px);
|
backdrop-filter: blur(15px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.login .time {
|
||||||
|
transition: bottom, height, opacity;
|
||||||
|
height: 100%;
|
||||||
|
opacity: 1;
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
.login .time.active {
|
||||||
|
bottom: 100%;
|
||||||
|
height: 0;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.login .user {
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity, height;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.login .user.active {
|
||||||
|
opacity: 1;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
@ -1,12 +1,70 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import "../../App.css";
|
import "../../App.css";
|
||||||
|
//import MT from 'mousetrap';
|
||||||
|
|
||||||
function Login(props){
|
class Login extends React.Component{
|
||||||
return (
|
constructor(p){
|
||||||
<div className="login">
|
super(p)
|
||||||
Press ENTER to open login
|
this.state = {
|
||||||
</div>
|
login: false
|
||||||
)
|
};
|
||||||
|
}
|
||||||
|
componentDidMount(){
|
||||||
|
let loginPage = document.getElementById("loginPage");
|
||||||
|
|
||||||
|
let time = loginPage.getElementsByClassName("time")[0];
|
||||||
|
let user = loginPage.getElementsByClassName("user")[0];
|
||||||
|
|
||||||
|
let cl = this;
|
||||||
|
function showLogin(e) {
|
||||||
|
document.removeEventListener("keydown", showLogin);
|
||||||
|
console.log("Showing login");
|
||||||
|
cl.setState({login: true});
|
||||||
|
|
||||||
|
setTimeout(()=>{
|
||||||
|
console.log("Hiding login");
|
||||||
|
cl.setState({login: false});
|
||||||
|
document.addEventListener("keydown", showLogin);
|
||||||
|
}, 30000)
|
||||||
|
}
|
||||||
|
|
||||||
|
document.addEventListener("keydown", showLogin);
|
||||||
|
}
|
||||||
|
render(props){
|
||||||
|
if (this.state.login) {
|
||||||
|
return (
|
||||||
|
<div id="loginPage" className="login active">
|
||||||
|
<div className="time active">
|
||||||
|
00:00
|
||||||
|
</div>
|
||||||
|
<div className="user active">
|
||||||
|
<div className="avatar-holder">
|
||||||
|
<img className="avatar" alt="avatar" />
|
||||||
|
</div>
|
||||||
|
<div className="password-holder">
|
||||||
|
<input type="password" className="password" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<div id="loginPage" className="login">
|
||||||
|
<div className="time">
|
||||||
|
20:48
|
||||||
|
Press ENTER to open login
|
||||||
|
</div>
|
||||||
|
<div className="user">
|
||||||
|
<div className="avatar-holder">
|
||||||
|
<img className="avatar" alt="avatar" />
|
||||||
|
</div>
|
||||||
|
<div className="password-holder">
|
||||||
|
<input type="password" className="password" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default Login;
|
export default Login;
|
||||||
Loading…
Reference in a new issue