mirror of
https://github.com/byulmaru/quesdon
synced 2024-11-30 15:58:01 +09:00
Merge pull request #2 from liberaldev/master
og graph 추가와 마스토돈 프로필 주소를 포함한 link rel="me" 주소 추가 + @
This commit is contained in:
commit
2314c73e88
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,3 +1,5 @@
|
||||
dist/
|
||||
node_modules/
|
||||
.env
|
||||
.env
|
||||
yarn-error.log
|
||||
npm-debug.log
|
@ -3,7 +3,7 @@ import { Link } from 'react-router-dom';
|
||||
import { Button } from 'reactstrap';
|
||||
import { APIQuestion, APIUser } from '../../../../api-interfaces';
|
||||
import { apiFetch } from '../../../api-fetch';
|
||||
import josa from '../../../josa';
|
||||
import josa from '../../../../common/josa';
|
||||
import { Title } from '../../common/title';
|
||||
import { Loading } from '../../loading';
|
||||
import { Question } from '../../question';
|
||||
|
@ -10,6 +10,7 @@ import rndstr from 'rndstr';
|
||||
import apiRouter from './api';
|
||||
import { GIT_COMMIT, PORT, SECRET_KEY } from './config';
|
||||
import { User } from './db/index';
|
||||
import josa from '../common/josa';
|
||||
|
||||
const app = new Koa();
|
||||
|
||||
@ -26,7 +27,8 @@ router.use('/api', apiRouter.routes());
|
||||
|
||||
router.get('/*', async (ctx: Koa.ParameterizedContext) =>
|
||||
{
|
||||
let user;
|
||||
let user, profile;
|
||||
const path = ctx.request.path.toString();
|
||||
if (ctx.session.user)
|
||||
{
|
||||
user = await User.findById(ctx.session.user);
|
||||
@ -34,11 +36,19 @@ router.get('/*', async (ctx: Koa.ParameterizedContext) =>
|
||||
user = new Buffer(user, 'binary').toString('base64');
|
||||
}
|
||||
if (!ctx.session.csrfToken)
|
||||
{
|
||||
ctx.session.csrfToken = rndstr();
|
||||
}
|
||||
if (path.match(/@/g)?.length as number === 2)
|
||||
{
|
||||
profile = await User.findOne({acctLower: path.substring(2).toLowerCase()});
|
||||
}
|
||||
return ctx.render('index',
|
||||
{
|
||||
GIT_COMMIT,
|
||||
user,
|
||||
profile,
|
||||
josa,
|
||||
csrfToken: ctx.session.csrfToken
|
||||
});
|
||||
});
|
||||
|
@ -8,12 +8,30 @@ html
|
||||
script window.USER=undefined
|
||||
script window.CSRF_TOKEN="#{csrfToken}"
|
||||
script window.GIT_VERSION="#{GIT_COMMIT}"
|
||||
- const siteName = "Quesdon@Planet"
|
||||
if profile
|
||||
- const title = `${profile.name}님의 ${profile.questionBoxName || '질문함'}`
|
||||
- const description = profile.description || `${josa(title, '이에요', '예요')}`
|
||||
meta(name="twitter:card", content="summary")
|
||||
meta(property="og:site_name", content=siteName)
|
||||
meta(property="og:title", content=title)
|
||||
meta(name="description", content=description)
|
||||
meta(property="og:description", content=description)
|
||||
meta(property="og:image" content=profile.avatarUrl)
|
||||
link(rel="me",href=profile.url)
|
||||
else
|
||||
- const description = "Mastodon에서 사용할 수 있는 askfm스러운 무언가"
|
||||
meta(property="og:site_name", content=siteName)
|
||||
meta(property="og:title", content=siteName)
|
||||
meta(name="description", content=description)
|
||||
meta(property="og:description", content=description)
|
||||
|
||||
script(src="https://cdn.polyfill.io/v2/polyfill.js?features=fetch")
|
||||
script(src="/assets/bundle.js?version="+GIT_COMMIT)
|
||||
body
|
||||
#root
|
||||
p ...어? 혹시 페이지가 나오지 않나요??
|
||||
p 불편을 끼쳐 드려 죄송해요. 새로고침을 해 보시고, 만약 그래도 이 화면만 계속 뜬다면 아래 동작 환경을 충족하는지 확인 후 Mastodon @planet@planet.moe 에 문의해 주세요.
|
||||
p 불편을 끼쳐 드려 죄송해요. <noscript>현재 사용하시는 브라우저는 자바스크립트 기능이 비활성화 되어 있거나 자바스크립트를 지원하지 않는 브라우저에요.</p><p>자바스크립트를 지원하지 않는 브라우저를 사용하시는 경우 자바스크립트를 지원하는 브라우저로 전환하시고, 현재 사용하시는 브라우저가 자바스크립트를 지원한다면 자바스크립트 기능을 활성화 하신 다음 </noscript>새로고침을 해 보시고, 만약 그래도 이 화면만 계속 뜬다면 아래 동작 환경을 충족하는지 확인 후 Mastodon @planet@planet.moe 에 문의해 주세요.
|
||||
h2 동작 환경
|
||||
ul
|
||||
li iOS
|
||||
@ -21,4 +39,5 @@ html
|
||||
| 10 이상 (추천: iOS 11.2.2 이상)
|
||||
li Chrome 63 이상
|
||||
li Firefox 57 이상
|
||||
p Edge, Internet Explorer는 지원 대상이 아니라서 오류가 발생할 수 있어요. Firefox나 Google Chrome을 추천드려요.
|
||||
p Edge, Internet Explorer는 지원 대상이 아니라서 오류가 발생할 수 있어요. Firefox나 Google Chrome을 추천드려요.
|
||||
p Quesdon은 클라이언트 단에서 렌더링을 하기에 자바스크립트를 지원하지 않는 브라우저에서는 사용할 수 없어요.
|
7587
yarn-error.log
7587
yarn-error.log
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user