0
0
mirror of https://github.com/yude-jp/yude.jp synced 2024-12-22 12:10:11 +09:00

Compare commits

...

3 Commits

Author SHA1 Message Date
9ad748affa
Multilingual suport (hcunews/) 2021-05-27 10:31:55 +09:00
2e4456cb91
Preferable language switch on ToS page 2021-05-27 10:26:11 +09:00
12408fbc52
Add hcunews 2021-05-27 10:03:44 +09:00
11 changed files with 99 additions and 25 deletions

17
docs/hcunews/en.md Normal file
View File

@ -0,0 +1,17 @@
This is **unofficial** account and there's no guarantee of accuracy.
# Administrator
Run by [yude](https://yude.jp/profile), a student of Faculty of Information Science, Hiroshima City University, 2nd grade.
## Contact
* E-mail: [admin@yude.jp](mailto:admin@yude.jp)
* Twitter: [@yude_jp](https://twitter.com/yude_jp)
# How it works
Microsoft Power Automate get the RSS feed from Hiroshima City University Website and tweet when a new article is available. \
We are monitoring the following URLs:
* [お知らせ|広島市立大学](https://www.hiroshima-cu.ac.jp/news/)
* [お知らせ(在学生・保護者の方へ)|広島市立大学](https://www.hiroshima-cu.ac.jp/news_student/)
* [在学生・保護者の方へ|広島市立大学](https://www.hiroshima-cu.ac.jp/student/)
# Related links
* [広島市立大学](https://www.hiroshima-cu.ac.jp/)

17
docs/hcunews/ja.md Normal file
View File

@ -0,0 +1,17 @@
このアカウントは**非公式**アカウントです。また、内容を保証するものではありません。
# 管理者
広島市立大学 情報科学部 2年の [yude](https://yude.jp/profile) が管理しています。このアカウントについての連絡は下記までお願いします。
## 連絡先
* 電子メール: [admin@yude.jp](mailto:admin@yude.jp)
* Twitter: [@yude_jp](https://twitter.com/yude_jp)
# 稼働方法
Microsoft Power Automate によって広島市立大学WebページのRSSフィードを取得し、新しい記事が投稿されている場合にツイートします。\
次の URL を監視しています。
* [お知らせ|広島市立大学](https://www.hiroshima-cu.ac.jp/news/)
* [お知らせ(在学生・保護者の方へ)|広島市立大学](https://www.hiroshima-cu.ac.jp/news_student/)
* [在学生・保護者の方へ|広島市立大学](https://www.hiroshima-cu.ac.jp/student/)
# 関連リンク
* [広島市立大学](https://www.hiroshima-cu.ac.jp/)

19
docs/tos/en.md Normal file
View File

@ -0,0 +1,19 @@
# yude.jp Terms of Service
The following ToS apply to services running under the yude.jp domain.
## About service operation
Our services are run by yude for experimental purposes and there's no guarantee on them.\
Those may be suspended temporarily or permanently (e.g. for server maintenance) without any announcement.
## Prohibited actions
The actions listed below are prohibited on the service running under the yude.jp domain (especially on Mastodon instance).\
Our administrator or moderator may take some action against the violating user's account.
* Post images or movies for adults, or grotesque
* Violent language that deviates from common sense
* Chat spamming
* Cracking our server(s)
* Actions that the administrator or moderator deems inappropriate
In addition, the laws of Japan, where the server is running, apply.
## Misc
These ToS may be updated by the administrator without any announcement, but we will always notify you with in the Mastodon instance ([mstdn.yude.jp](https://mstdn.yude.jp)) or on our Twitter account ([@yudejp](https://twitter.com/yudejp) or [@yude_jp](https://twitter.com/yude_jp)).

View File

@ -16,23 +16,3 @@ yude が実験的に運用しており、完全に無保証で提供されるも
## その他
この利用規約は管理者が利用者に対して了承を得ず更新することができますが、その際には必ず通知を Mastodon インスタンス内、または Twitter 上 ([@yudejp](https://twitter.com/yudejp) または [@yude_jp](https://twitter.com/yude_jp)) において行うものとします。
# yude.jp Terms of Service
The following ToS apply to services running under the yude.jp domain.
## About service operation
Our services are run by yude for experimental purposes and there's no guarantee on them.\
Those may be suspended temporarily or permanently (e.g. for server maintenance) without any announcement.
## Prohibited actions
The actions listed below are prohibited on the service running under the yude.jp domain (especially on Mastodon instance).\
Our administrator or moderator may take some action against the violating user's account.
* Post images or movies for adults, or grotesque
* Violent language that deviates from common sense
* Chat spamming
* Cracking our server(s)
* Actions that the administrator or moderator deems inappropriate
In addition, the laws of Japan, where the server is running, apply.
## Misc
These ToS may be updated by the administrator without any announcement, but we will always notify you with in the Mastodon instance ([mstdn.yude.jp](https://mstdn.yude.jp)) or on our Twitter account ([@yudejp](https://twitter.com/yudejp) or [@yude_jp](https://twitter.com/yude_jp)).

View File

@ -7,6 +7,7 @@
"/profile": ["profile", "common"],
"/status": ["status", "common"],
"/house": ["house", "common"],
"/tos": ["tos", "common"]
"/tos": ["tos", "common"],
"/hcunews": ["hcunews", "common"]
}
}

3
locales/en/hcunews.json Normal file
View File

@ -0,0 +1,3 @@
{
"hcunews": "About @hcunews"
}

View File

@ -1,3 +1,4 @@
{
"tos": "yude.jp Terms of Service"
"tos": "yude.jp Terms of Service",
"input": "en"
}

3
locales/ja/hcunews.json Normal file
View File

@ -0,0 +1,3 @@
{
"hcunews": "@hcunews について"
}

View File

@ -1,3 +1,4 @@
{
"tos": "yude.jp サービス利用規約"
"tos": "yude.jp サービス利用規約",
"input": "ja"
}

27
pages/hcunews.js Normal file
View File

@ -0,0 +1,27 @@
import Layout from "./components/Layout"
import useTranslation from 'next-translate/useTranslation'
import { useRouter } from 'next/router'
import React from "react"
import ReactMarkdown from "react-markdown"
import gfm from 'remark-gfm';
import ja from '../docs/hcunews/ja.md'
import en from '../docs/hcunews/en.md'
export default function Tos(props) {
const router = useRouter()
const { locale, locales, defaultLocale, pathname } = router
const { t, lang } = useTranslation("hcunews")
const hcunews = t('hcunews')
return(
<Layout title={hcunews}>
<div>
<h1>{hcunews}</h1>
{lang === 'ja' ? (
<ReactMarkdown plugins={[gfm]} children={ja} />
) : (
<ReactMarkdown plugins={[gfm]} children={en} />
)}
</div>
</Layout>
)
}

View File

@ -4,7 +4,8 @@ import { useRouter } from 'next/router'
import React from "react"
import ReactMarkdown from "react-markdown"
import gfm from 'remark-gfm';
import input from '../docs/tos.md'
import ja from '../docs/tos/ja.md'
import en from '../docs/tos/en.md'
export default function Tos(props) {
const router = useRouter()
@ -14,7 +15,11 @@ export default function Tos(props) {
return(
<Layout title={tos}>
<div>
<ReactMarkdown plugins={[gfm]} children={input} />
{lang === 'ja' ? (
<ReactMarkdown plugins={[gfm]} children={ja} />
) : (
<ReactMarkdown plugins={[gfm]} children={en} />
)}
</div>
</Layout>
)