home page and attempt at making log in persistent

This commit is contained in:
Sendou
2019-06-10 10:33:15 +03:00
parent c361b17a3b
commit ff0e9c158e
16 changed files with 66 additions and 26 deletions

View File

@@ -1,13 +1,13 @@
{
"files": {
"main.js": "/static/js/main.fa449adc.chunk.js",
"main.js.map": "/static/js/main.fa449adc.chunk.js.map",
"main.js": "/static/js/main.b0f41a39.chunk.js",
"main.js.map": "/static/js/main.b0f41a39.chunk.js.map",
"runtime~main.js": "/static/js/runtime~main.a8a9905a.js",
"runtime~main.js.map": "/static/js/runtime~main.a8a9905a.js.map",
"static/js/2.15aafc23.chunk.js": "/static/js/2.15aafc23.chunk.js",
"static/js/2.15aafc23.chunk.js.map": "/static/js/2.15aafc23.chunk.js.map",
"static/js/2.e89314dc.chunk.js": "/static/js/2.e89314dc.chunk.js",
"static/js/2.e89314dc.chunk.js.map": "/static/js/2.e89314dc.chunk.js.map",
"index.html": "/index.html",
"precache-manifest.2bd163381345b6abfe6d6e83f0e4dc4d.js": "/precache-manifest.2bd163381345b6abfe6d6e83f0e4dc4d.js",
"precache-manifest.634d8599f1cb08d60e60a9e453e6842d.js": "/precache-manifest.634d8599f1cb08d60e60a9e453e6842d.js",
"service-worker.js": "/service-worker.js",
"static/media/ancho-v_games.png": "/static/media/ancho-v_games.07d5d0f6.png",
"static/media/arowana_mall.png": "/static/media/arowana_mall.26cf0823.png",
@@ -33,6 +33,7 @@
"static/media/ranked.png": "/static/media/ranked.415f6ad8.png",
"static/media/regular.png": "/static/media/regular.4848edcb.png",
"static/media/rig.png": "/static/media/rig.87b5e71c.png",
"static/media/rigBanner.png": "/static/media/rigBanner.60e0f75c.png",
"static/media/rm.png": "/static/media/rm.ee623ae2.png",
"static/media/shellendorf_institute.png": "/static/media/shellendorf_institute.d6669767.png",
"static/media/skipper_pavilion.png": "/static/media/skipper_pavilion.1b3dbb2a.png",

View File

@@ -1 +1 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="stylesheet" href="//cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>sendou.ink</title></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(l){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],f=0,i=[];f<n.length;f++)t=n[f],p[t]&&i.push(p[t][0]),p[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(l[r]=o[r]);for(s&&s(e);i.length;)i.shift()();return c.push.apply(c,u||[]),a()}function a(){for(var e,r=0;r<c.length;r++){for(var t=c[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==p[u]&&(n=!1)}n&&(c.splice(r--,1),e=f(f.s=t[0]))}return e}var t={},p={1:0},c=[];function f(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return l[e].call(r.exports,r,r.exports,f),r.l=!0,r.exports}f.m=l,f.c=t,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(r,e){if(1&e&&(r=f(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)f.d(t,n,function(e){return r[e]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/";var r=window.webpackJsonp=window.webpackJsonp||[],n=r.push.bind(r);r.push=e,r=r.slice();for(var o=0;o<r.length;o++)e(r[o]);var s=n;a()}([])</script><script src="/static/js/2.15aafc23.chunk.js"></script><script src="/static/js/main.fa449adc.chunk.js"></script></body></html>
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="shortcut icon" href="/favicon.ico"/><link rel="stylesheet" href="//cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><link rel="manifest" href="/manifest.json"/><title>sendou.ink</title></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script>!function(l){function e(e){for(var r,t,n=e[0],o=e[1],u=e[2],f=0,i=[];f<n.length;f++)t=n[f],p[t]&&i.push(p[t][0]),p[t]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(l[r]=o[r]);for(s&&s(e);i.length;)i.shift()();return c.push.apply(c,u||[]),a()}function a(){for(var e,r=0;r<c.length;r++){for(var t=c[r],n=!0,o=1;o<t.length;o++){var u=t[o];0!==p[u]&&(n=!1)}n&&(c.splice(r--,1),e=f(f.s=t[0]))}return e}var t={},p={1:0},c=[];function f(e){if(t[e])return t[e].exports;var r=t[e]={i:e,l:!1,exports:{}};return l[e].call(r.exports,r,r.exports,f),r.l=!0,r.exports}f.m=l,f.c=t,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(r,e){if(1&e&&(r=f(r)),8&e)return r;if(4&e&&"object"==typeof r&&r&&r.__esModule)return r;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:r}),2&e&&"string"!=typeof r)for(var n in r)f.d(t,n,function(e){return r[e]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},f.p="/";var r=window.webpackJsonp=window.webpackJsonp||[],n=r.push.bind(r);r.push=e,r=r.slice();for(var o=0;o<r.length;o++)e(r[o]);var s=n;a()}([])</script><script src="/static/js/2.e89314dc.chunk.js"></script><script src="/static/js/main.b0f41a39.chunk.js"></script></body></html>

View File

@@ -1,15 +1,15 @@
self.__precacheManifest = (self.__precacheManifest || []).concat([
{
"revision": "1b7486806db215bf1327baaa31e7024d",
"revision": "35b5aaa9722c8b2fcd00aa3be2a13845",
"url": "/index.html"
},
{
"revision": "88368028096f05972b1b",
"url": "/static/js/2.15aafc23.chunk.js"
"revision": "c9a46f4ed5a7a59a324b",
"url": "/static/js/2.e89314dc.chunk.js"
},
{
"revision": "c5bf27f86d3b51d6ef1f",
"url": "/static/js/main.fa449adc.chunk.js"
"revision": "bb74ec896158185f0dc5",
"url": "/static/js/main.b0f41a39.chunk.js"
},
{
"revision": "42ac5946195a7306e2a5",
@@ -111,6 +111,10 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([
"revision": "87b5e71c29a70bc15a501002b4192517",
"url": "/static/media/rig.87b5e71c.png"
},
{
"revision": "60e0f75c3cf5b2d1eb076b080b4f7f16",
"url": "/static/media/rigBanner.60e0f75c.png"
},
{
"revision": "ee623ae225822d4a257120c58516eb86",
"url": "/static/media/rm.ee623ae2.png"

View File

@@ -14,7 +14,7 @@
importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.0/workbox-sw.js");
importScripts(
"/precache-manifest.2bd163381345b6abfe6d6e83f0e4dc4d.js"
"/precache-manifest.634d8599f1cb08d60e60a9e453e6842d.js"
);
self.addEventListener('message', (event) => {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@@ -40,9 +40,9 @@ function(accessToken, refreshToken, profile, cb) {
const connection = profile.connections[i]
if (connection.visibility === 1 && connection.verified) {
if (connection.type === 'twitch') {
userToSave.twitch_name = connection.name
userToSave.twitch_name = connection.name.toLowerCase()
} else if (connection.type === 'twitter') {
userToSave.twitter_name = connection.name
userToSave.twitter_name = connection.name.toLowerCase()
}
}
}
@@ -219,7 +219,7 @@ const typeDefs = gql`
rotationData: String
links: [Link!]!
user: User
searchForUser(discord_id: String!): User
searchForUser(discord_id: String twitter: String): User
searchForBuilds(discord_id: String!): [Build]!
deleteBuild(id: ID!): Boolean
}
@@ -545,8 +545,14 @@ const resolvers = {
return ctx.user
},
searchForUser: (root, args) => {
let searchCriteria = {}
if (args.twitter) searchCriteria = {twitter_name: args.twitter}
else if (args.discord_id) searchCriteria = {discord_id: args.discord_id}
else throw new UserInputError('no twitter or discord id provided', {
invalidArgs: args,
})
return User
.findOne({discord_id: args.discord_id})
.findOne(searchCriteria)
.catch(e => {
throw new UserInputError(e.message, {
invalidArgs: args,
@@ -638,11 +644,21 @@ function requireHTTPS(req, res, next) {
app.use(requireHTTPS)
app.use(session({
//https://www.npmjs.com/package/express-session
let sess = {
secret: process.env.SESSION_SECRET,
resave: false,
saveUninitialized: false
}))
saveUninitialized: false,
cookie: {}
}
if (process.env.NODE_ENV === 'production') {
app.set('trust proxy', 1)
sess.cookie.secure = true
}
app.use(session(sess))
app.use(passport.initialize())
app.use(passport.session())

3
react-ui/src/App.js vendored
View File

@@ -14,6 +14,7 @@ import MapListGenerator from './components/Tools/MapListGenerator'
import Rotations from './components/Tools/Rotations'
import Links from './components/Misc/Links'
import UserPage from './components/SoloLadder/UserPage'
import HomePage from './components/Misc/HomePage'
const App = () => {
const [menuSelection, setMenuSelection] = useState('home')
@@ -25,7 +26,7 @@ const App = () => {
<div>
<ScrollToTop />
<Switch>
<Route exact path="/" render={() => <Redirect to="/xsearch"/>} />
<Route exact path="/" render={() => <HomePage />} />
<Route path="/xleaderboard" render={() => <WeaponLeaderboardSelector setMenuSelection={setMenuSelection} />} />
<Route exact path="/xsearch" render={() => <XSearch setMenuSelection={setMenuSelection} />} />
<Route exact path="/xsearch/w/:wpn" render={({ match }) =>

View File

@@ -0,0 +1,18 @@
import React from 'react'
import { Header, Image } from 'semantic-ui-react'
import rigBanner from '../img/misc/rigBanner.png'
const HomePage = () => {
return (
<div style={{'textAlign': 'center'}}>
<div>
<Header as='h2'>Welcome to sendou.ink!<Header sub>Competitive Splatoon Hub</Header></Header>
</div>
<div style={{'paddingTop': '10px'}}>
<Image rounded src={rigBanner} size='huge' centered/>
</div>
</div>
)
}
export default HomePage

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB