timetable-app

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 2088de1da9507981d14decdc1c4df4d21475348a
parent 7ea91c370429b0817e863fadedf2e7b301ed73df
Author: Yuukin256 <52195426+Yuukin256@users.noreply.github.com>
Date:   Wed, 12 Apr 2023 09:28:02 +0900

Merge pull request #5 from Yuukin256/dev

20230411 プレリリース
Diffstat:
Msrc/client/components/SlideFooter/index.tsx | 16++++++++--------
Msrc/client/features/daily/components/SetDefaultClassFab.tsx | 8+++++++-
Msrc/client/features/daily/index.tsx | 8+-------
Msrc/pages/[class].tsx | 16+++++++++-------
Msrc/pages/about.tsx | 2+-
Msrc/pages/how-to-use.tsx | 43+++++++++++++++++++++++++++++++++++++++++--
Msrc/pages/index.tsx | 2+-
Msrc/pages/setting.tsx | 2+-
8 files changed, 69 insertions(+), 28 deletions(-)

diff --git a/src/client/components/SlideFooter/index.tsx b/src/client/components/SlideFooter/index.tsx @@ -117,14 +117,14 @@ const extraSlideData: SlideData[] = [ ), } : [], - { - id: 105, - content: ( - <> - 広告募集中!ここに文字広告を載せられます。木・金曜日にLAN教室にお越しになるか、お近くのIT部員にお声がけください。 - </> - ), - }, + // { + // id: 105, + // content: ( + // <> + // 広告募集中!ここに文字広告を載せられます。木・金曜日にLAN教室にお越しになるか、お近くのIT部員にお声がけください。 + // </> + // ), + // }, ].flat(); export default function SlideFooter() { diff --git a/src/client/features/daily/components/SetDefaultClassFab.tsx b/src/client/features/daily/components/SetDefaultClassFab.tsx @@ -37,7 +37,13 @@ export default function SetDefaultClassFab() { color='primary' variant='extended' size='medium' - sx={{ position: 'absolute', bottom: 16, right: 16 }} + sx={{ + position: 'sticky', + bottom: 16, + marginLeft: 'auto', + marginRight: '16px', + width: 'fit-content', + }} > <SchoolIcon sx={{ mr: 1 }} /> 所属クラスに設定 diff --git a/src/client/features/daily/index.tsx b/src/client/features/daily/index.tsx @@ -49,13 +49,7 @@ export default function DailyView(props: Props) { return ( <Provider store={store}> - <Stack - direction='column' - width={1} - spacing={1} - py={2} - position='relative' - > + <Stack direction='column' width={1} minHeight={1} spacing={1} py={2}> <DatePicker dates={dates} index={index} diff --git a/src/pages/[class].tsx b/src/pages/[class].tsx @@ -189,13 +189,15 @@ const Page: NextPage<PageProps> = (props) => { <> <Head title={className} /> <Layout title={className} footer={<SlideFooter />}> - {props.calendar.length ? ( - <DailyView {...props} /> - ) : ( - <Box px={2}> - <p>データがありません</p> - </Box> - )} + <Box width={1}> + {props.calendar.length ? ( + <DailyView {...props} /> + ) : ( + <Box px={2}> + <p>データがありません</p> + </Box> + )} + </Box> </Layout> </> ); diff --git a/src/pages/about.tsx b/src/pages/about.tsx @@ -16,7 +16,7 @@ const AboutPage: NextPage = () => { <> <Head title='このアプリについて' /> <Layout title='このアプリについて'> - <Box px={2} pb={2}> + <Box px={2} pb={2} height='fit-content'> <p> 大阪府立岸和田高等学校 IT部制作「岸高時間割アプリ」です。元は76期情報ゼミの研究活動で制作していたものを、IT部に引き継ぎました。 diff --git a/src/pages/how-to-use.tsx b/src/pages/how-to-use.tsx @@ -1,17 +1,56 @@ +import EventIcon from '@mui/icons-material/Event'; +import IosShareIcon from '@mui/icons-material/IosShare'; +import MoreVertIcon from '@mui/icons-material/MoreVert'; +import NoteAddIcon from '@mui/icons-material/NoteAdd'; import { Box } from '@mui/material'; +import { styled } from '@mui/material/styles'; import Head from 'client/components/Head'; import Layout from 'client/components/Layout'; +import Link from 'client/components/Link'; import type { NextPage } from 'next'; +const Dd = styled('dd')` + margin-bottom: 1em; +`; + const HouToUsePage: NextPage = () => { return ( <> <Head title='使い方' /> <Layout title='使い方'> - <Box px={2} pb={2}> - <p>現在準備中です。完成までお待ちください。</p> + <Box px={2} pb={2} height='fit-content'> + <p>現在準備中です。以下に暫定の内容を載せておきます。</p> + <dl> + <dt>時間割表示</dt> + <Dd> + 授業一覧の部分(色が変わっているところ)を左右にフリックすると前後の日付に変わります。上の + <EventIcon fontSize='inherit' /> + でカレンダーを開いて日付を選択できます。 + </Dd> + <dt>メモ機能</dt> + <Dd> + <NoteAddIcon fontSize='inherit' /> + を押すと授業ごとにメモを入力できます。ブラウザに保存されます。ご自由にお使いください。 + </Dd> + <dt>インストール機能 (PWA)</dt> + <Dd> + iOSのSafariなら多分共有 + <IosShareIcon fontSize='inherit' /> + の「ホーム画面に追加」から、AndroidのChromeなら多分右上のメニュー + <MoreVertIcon fontSize='inherit' /> + の「アプリをインストール」から、インストールできます。それ以外の環境は知りません。インストールすると、「所属クラス機能」が使えるようになります。Androidの場合はホーム画面じゃなくてアプリドロワーに追加されることもあるようです(未検証)。 + </Dd> + <dt>所属クラス機能</dt> + <Dd> + 時間割ページを開いて数秒すると「所属クラスに設定」ボタンが表示されます。インストールした状態でホーム画面のアイコンから起動すると、設定したクラスの時間割ページを開きます。所属クラスがCookieに保存されてサーバーに送信されますが、個人を特定することはできません。 + </Dd> + <dt>ライト/ダークモード</dt> + <Dd> + <Link href='/setting'>設定ページ</Link>で変更できます。 + </Dd> + </dl> </Box> </Layout> </> diff --git a/src/pages/index.tsx b/src/pages/index.tsx @@ -13,7 +13,7 @@ const Page: NextPage = () => { <> <Head title='トップ' /> <Layout title='トップ'> - <Box px={2} pb={2}> + <Box px={2} pb={2} height='fit-content'> <p> 岸和田高校IT部制作「岸高時間割アプリ」です。詳細は「 <Link href='/about'>このアプリについて</Link> diff --git a/src/pages/setting.tsx b/src/pages/setting.tsx @@ -22,7 +22,7 @@ const SettingPage: NextPage = () => { <> <Head title='設定' /> <Layout title='設定'> - <Box p={2} width={1}> + <Box p={2} pb={2} width={1} height='fit-content'> <SettingView /> </Box> </Layout>