Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2024-11-18 04:22:29 +0000 #8180

Open
wants to merge 208 commits into
base: production
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
208 commits
Select commit Hold shift + click to select a range
8438a1f
参考書籍一覧のフィルター以外の部分をHTMLに置き換えた
ham-cap Sep 2, 2024
56407ec
参考書籍一覧のフィルター部分を非Vue化
ham-cap Sep 3, 2024
9d388e7
参考書籍の絞り込み機能使用時、URLのパラメータにauthenticity_tokenが含まれてしまう不具合を修正
ham-cap Sep 6, 2024
5741156
不要になったVueコンポーネントを削除
ham-cap Sep 6, 2024
a51d9fd
if文の条件式の書き方を変更
ham-cap Oct 2, 2024
7584f78
不要なdivを削除した
ham-cap Oct 2, 2024
24dd050
aタグで記述されていた箇所をlink_toに置き換えた
ham-cap Oct 7, 2024
f3de490
他ユーザーでメール通知をOFFにできないようにした
Ryooo-k Oct 23, 2024
e5063bb
ログイン時と未ログイン時のテストを追加
Ryooo-k Oct 23, 2024
c874d7e
learning.vueをViewComponent化
Shrimprin Oct 12, 2024
0c4dbdb
不要になったVueファイルを削除
Shrimprin Oct 13, 2024
002563a
jsファイルに移植済みのため削除
Shrimprin Oct 13, 2024
543e6fc
learning_componentのテストを作成
Shrimprin Oct 13, 2024
d6ccc50
モデルメソッドと重複するメソッドを削除
Shrimprin Oct 27, 2024
cbc1dcc
テスト名をわかりやすく修正
Shrimprin Oct 27, 2024
e710ae3
メール通知OFF画面にアクセスする際はログインを必須とした
Ryooo-k Oct 29, 2024
99dce22
無効な操作のテストパターンを追加した
Ryooo-k Oct 30, 2024
7eff41c
日報が確認OKされていない場合、メンターがコメントした時にアラートが出るように実装
su-su-su-su Sep 10, 2024
280110e
日報が未確認の場合、ダイアログを表示するか確認するテストを追加
su-su-su-su Sep 23, 2024
fabeb51
rubocopに対する修正
su-su-su-su Sep 23, 2024
0b37e61
テストのアラートが出るタイミングをコメントした後になるように修正
su-su-su-su Sep 29, 2024
2075770
テストを元のコードに修正
su-su-su-su Oct 1, 2024
c9a5f15
confirmをcheckに統一、冗長な処理を簡潔化
su-su-su-su Oct 16, 2024
02d7e9d
不必要なブロックの入れ子を避ける為に修正
su-su-su-su Oct 30, 2024
fbd95fd
インデントを修正
ham-cap Oct 31, 2024
74b97b4
その他のコースのユーザーが表示されない不具合を修正
ham-cap Oct 31, 2024
f1f6a1f
if文の返り値を代入する部分のインデントを修正
ham-cap Nov 6, 2024
f9331f1
_company-products.html.slimを作成し企業所属ユーザーの提出物がなかった場合の表示を仮で実装
ham-cap Mar 23, 2024
3b7a42f
提出物の一覧表示部分を途中まで仮で実装
ham-cap Mar 25, 2024
b40af18
提出物の一覧表示部分にコメント数とコメントしたユーザーのアイコンが表示されるようにした
ham-cap Mar 26, 2024
0e28642
提出物のWIP表示を修正・提出日、更新日、コメントされた年月日の表示を追加
ham-cap Apr 2, 2024
9993f3d
提出物が降順(最新のものが上)で表示されるよう変更
ham-cap Apr 2, 2024
7e1d37c
担当するボタンの見た目を実装
ham-cap Apr 2, 2024
1e8d4ff
product-checker-button.jsを追加
ham-cap Apr 15, 2024
bdf5cbb
担当するボタンの機能を実装
ham-cap Apr 17, 2024
fd4d7f1
担当するボタンの機能の実装をやり直した
ham-cap Apr 19, 2024
57337f3
担当になるボタン押下時にトーストが表示されるようにした・不要な行を削除した
ham-cap Apr 19, 2024
db6676e
デバッグ用の記載を削除
ham-cap Apr 19, 2024
8c56c7a
_company-products.html.slim内の改行位置を調整
ham-cap Apr 22, 2024
89654da
不要な行を削除
ham-cap Apr 22, 2024
7679d93
パーシャルに不要な引数を渡していたため削除した
ham-cap Apr 22, 2024
63bc2b1
product-checker-buttonの名称と関数名を既存の実装に合わせて変更
ham-cap Apr 22, 2024
91182c9
company-productsに関連する不要なファイルを削除
ham-cap Apr 22, 2024
9334e38
_company_users.html.slimを作成・各ユーザーのヘッダーまで実装した
ham-cap Apr 26, 2024
66b5901
各ユーザーのディスクリプション、タグ、進捗バーを実装した
ham-cap Apr 27, 2024
a65d085
フォローボタンを実装
ham-cap May 13, 2024
6e7ba55
デバッグ用のコードを削除
ham-cap May 13, 2024
012eb7a
ページネーションを追加
ham-cap May 13, 2024
57d0ef8
_company_usersの中身をパーシャルに切り出した
ham-cap May 14, 2024
f44099b
_user.html.slim内の使用していないIDを削除
ham-cap May 14, 2024
cc5b553
inactivateButtons関数を定義・ドロップダウンリストの要素を取得する記述を修正
ham-cap May 14, 2024
dbc73d9
replaceSummary関数を定義・ドロップダウンリスト内でクリックされた要素の特定方法を変更
ham-cap May 14, 2024
02aed0f
_company-productsの中身をパーシャルに切り出した・確認済みスタンプの記述を失念していたため追加した
ham-cap May 16, 2024
510ba25
不要な行を削除
ham-cap May 16, 2024
d2df28d
ユーザー数の表示を修正
ham-cap May 16, 2024
8816f8d
フォローボタンのドロップダウンリストが他の要素の下に潜ってしまわないように修正した
ham-cap May 20, 2024
2b3bb08
フォローボタンのドロップダウンリストが開いているときにリスト外をクリックするとリストが閉じるように変更
ham-cap May 20, 2024
66e22e0
関数等の記載順を変更・replaceSummary関数の処理を修正
ham-cap May 20, 2024
7ee3e2d
不要なファイルを削除
ham-cap May 21, 2024
052191b
rubocopとslim-lintの指摘事項を修正
ham-cap May 21, 2024
e98492a
slim-lintの指摘事項を修正
ham-cap May 21, 2024
efc0da1
提出物一覧で1ページに表示する提出物の数を修正・提出物のタイトル表記を修正
ham-cap May 23, 2024
c940791
提出物のタイトル表記を再度修正
ham-cap May 23, 2024
4e5c0ff
企業所属のユーザーが存在しない場合に表示されるメッセージを修正
ham-cap Jun 7, 2024
3acee6b
パーシャル内で使用していたインスタンス変数をローカル変数に変更した
ham-cap Jun 11, 2024
52f5a52
ユーザーが退会or休会しているか否かを判定する部分を修正
ham-cap Jun 11, 2024
c329c8b
休会中ユーザーの日付表示が適切なフォーマットでなかったため修正
ham-cap Jun 11, 2024
3197078
企業に紐づいている全ユーザーの提出物を取得する際のコードを変更
ham-cap Jun 12, 2024
5554d90
提出物にコメントしたユーザーを取得する処理をViewからControllerへ移した
ham-cap Jun 13, 2024
45497d1
企業所属ユーザー一覧ページのタイトルを修正
ham-cap Jun 13, 2024
2e795f5
担当するorしないを切り替える際のcheckInChargeの呼び出し方法を修正
ham-cap Jul 5, 2024
b317b3b
ユーザーのフォローボタンをクリックした際にonclickでJSの関数を直接呼び出す方式からdatasetで値を受け渡す方式に変更
ham-cap Jul 24, 2024
59afd44
updateButtonAttributes関数
ham-cap Jul 25, 2024
8f3250f
inactivateButtonsを廃止しupdateButtonAttributesに処理を統合
ham-cap Jul 25, 2024
ff707f2
activateButtonを廃止しupdateButtonAttributesに処理を統合・可読性向上のためchangeButtonAp…
ham-cap Jul 25, 2024
19423a4
イベントリスナーのコールバック関数定義を無名関数からアロー関数へ変更
ham-cap Jul 25, 2024
5d3ef52
HTML内で式展開をしている箇所で{}の内側に不要な空白があり他の箇所と統一するため削除した
ham-cap Jul 25, 2024
4ad1ad9
_company-products.html.slimでの曜日の扱いを変更
ham-cap Jul 26, 2024
ac503ae
トーストの表示部分をモジュール化
ham-cap Jul 26, 2024
bcfdf4b
クラス等の指定されていないspanとstrong要素については|(パイプ)を使用せず、タグの横に直接テキストを記載するように変更
ham-cap Jul 29, 2024
bd086db
aタグをlink_toへ書き換えた
ham-cap Aug 10, 2024
11b788e
usersとproductsの一覧を表示する部分でeachを使っていたが、配列をそのまま渡すだけで表示してくれるため書き直した
ham-cap Aug 10, 2024
1018896
aタグをlink_toへ書き換えた(2)
ham-cap Aug 11, 2024
a8c095f
Companies::ProductsControllerのindexアクションにおけるDBからのデータ取得の仕方を修正
ham-cap Sep 1, 2024
766f5c1
Companies::ProductsControllerのindexアクションにおける@usersの作成方法を修正
ham-cap Sep 1, 2024
b001f40
@usersの名称を変更
ham-cap Sep 1, 2024
a33b154
@productsを取得する際の構文を変更
ham-cap Oct 2, 2024
c953f80
企業所属ユーザーをArrayではなくActiveRecord_Relationで取得するように変更した
ham-cap Oct 2, 2024
c05a690
ログイン不要とし、tokenとuser_idでアクセス制御するようにした
Ryooo-k Nov 7, 2024
46940d4
不適切なテスト名を修正
Ryooo-k Nov 7, 2024
cf95cfd
Merge pull request #8169 from fjordllc/bug/users-in-other-courses-are…
komagata Nov 7, 2024
73713d6
Merge pull request #8061 from fjordllc/feature/alert-for-unconfirmed-…
komagata Nov 7, 2024
e1532d8
休会したら参加している定期イベントはキャンセルされることをテストするテスト作成
MikotoMakizuru Oct 24, 2024
3062321
休会したら参加している定期イベントはキャンセルされるようにした
MikotoMakizuru Oct 24, 2024
a74b56e
退会したら参加している定期イベントはキャンセルされることをテストするテスト作成
MikotoMakizuru Oct 24, 2024
5e4f1e9
退会したら参加している定期イベントはキャンセルされるようにした
MikotoMakizuru Oct 24, 2024
064d894
定期イベントから参加を取り消すメソッドをモデルに移動
MikotoMakizuru Oct 26, 2024
bdcd7a7
cancel_participation_from_regular_events メソッドをテストするテスト追加
MikotoMakizuru Nov 2, 2024
666d1e7
テストに使用するユーザを2つの定期イベントに参加しているkimuraに修正
MikotoMakizuru Nov 9, 2024
ebd158e
Merge pull request #8131 from fjordllc/chore/learning-from-vue-to-html
komagata Nov 10, 2024
1233cfa
Merge pull request #8152 from fjordllc/feature/on-hibernation-remove-…
komagata Nov 10, 2024
898dd01
マジックナンバーを変数に格納
ham-cap Nov 11, 2024
0d87637
インデントを調整
ham-cap Nov 11, 2024
71589d6
Merge pull request #8149 from fjordllc/bug/prevent-disabling-other-us…
komagata Nov 15, 2024
229ad27
Merge pull request #7789 from fjordllc/feature/change-company-product…
komagata Nov 15, 2024
a34722a
Merge pull request #8055 from fjordllc/chore/change-books-list-from-v…
komagata Nov 15, 2024
a6e2b44
FAQモデルを作った
yuma-matsui Jul 12, 2023
9bd837d
FAQモデル用のlocalesを追加した
yuma-matsui Jul 13, 2023
ac816ca
管理者ページにFAQの一覧表示、新規作成機能を追加した
yuma-matsui Jul 13, 2023
c1c5ab7
FAQの編集、更新機能を追加した
yuma-matsui Jul 13, 2023
634ef8f
FAQの削除機能を追加した
yuma-matsui Jul 13, 2023
0041891
faqに関するseedデータを用意した
yuma-matsui Jul 13, 2023
372726f
FAQ一覧ページでFAQのデータを表示するようにした
yuma-matsui Jul 13, 2023
b5b7c50
FAQを作成した順で表示するようにした
yuma-matsui Jul 14, 2023
4555b22
FAQの作成をMarkdownで行えるようにした
yuma-matsui Jul 14, 2023
04a9757
FAQ一覧ページのシステムテストを書いた
yuma-matsui Jul 14, 2023
2e41701
FAQHelperのテストを書いた
yuma-matsui Jul 14, 2023
76e2b6b
管理ページのFAQに関するシステムテストを書いた
yuma-matsui Jul 14, 2023
1a7d034
FAQの追加に伴う既存テストの修正
yuma-matsui Jul 14, 2023
34bfb14
FAQ一覧ページのシステムテストを修正した
yuma-matsui Jul 14, 2023
0fd3584
circleCIのテストを通すためにクラス名を変更した
yuma-matsui Jul 14, 2023
f3dd78e
FAQの表示を作成時間が古い順に変更した
yuma-matsui Jul 14, 2023
04015a7
FAQHelperの実装を変更して常時?マークが1つだけ表示されるようにした
yuma-matsui Jul 16, 2023
15a568b
本番環境にFAQのデータを投入するためのスクリプトファイルを用意した
yuma-matsui Jul 16, 2023
d9e9f62
ページ上部の表示漏れを修正した
yuma-matsui Jul 16, 2023
067c205
FAQの詳細ページを用意した
yuma-matsui Jul 16, 2023
acf10f7
FAQ更新時のリダイレクト先を個別ページに変更した
yuma-matsui Jul 16, 2023
fd6d8e4
管理者ページでFAQタブをクリックしている状態でアクティブにならないバグを修正した
yuma-matsui Jul 16, 2023
9282de8
詳細ページにヘッダーを追加した
yuma-matsui Jul 16, 2023
772e3ee
FAQテーブルにpositionカラムを追加した
yuma-matsui Jul 21, 2023
18eb608
管理ページでFAQの並び替えを行えるようにした
yuma-matsui Jul 28, 2023
f2c2437
circleCIを通すためにテストのクラス名を変更した
yuma-matsui Jul 29, 2023
d339cda
テスト名のタイポを修正した
yuma-matsui Aug 2, 2023
c2db540
FAQテーブルのanswerカラムをtext型に変更した
yuma-matsui Aug 2, 2023
9763ca0
質問の入力フォームをtext_areaからinputに変更した
yuma-matsui Aug 3, 2023
ad6f76d
デザインの構造をざっと構築
machida Aug 30, 2023
c6e1cd1
Admin の FAQ詳細にデザイン入れた
machida Aug 31, 2023
d6a485c
新デザインを適用した
machida Oct 8, 2024
3b694b8
FAQモデル用のlocalesを追加した
yuma-matsui Jul 13, 2023
ac9ef5d
FAQの編集、更新機能を追加した
yuma-matsui Jul 13, 2023
fbe7ba8
FAQ一覧ページでFAQのデータを表示するようにした
yuma-matsui Jul 13, 2023
0fcf324
FAQの作成をMarkdownで行えるようにした
yuma-matsui Jul 14, 2023
46a4f27
FAQの追加に伴う既存テストの修正
yuma-matsui Jul 14, 2023
2057030
FAQHelperの実装を変更して常時?マークが1つだけ表示されるようにした
yuma-matsui Jul 16, 2023
031df9e
FAQの詳細ページを用意した
yuma-matsui Jul 16, 2023
712442f
デザインの構造をざっと構築
machida Aug 30, 2023
e77a8c2
ja.ymlにカテゴリを追加
sochi419 Feb 11, 2024
648dd45
クエリパラメータにカテゴリ情報を追加
sochi419 Feb 20, 2024
f5bba8b
adminページのfaqのradioボタンを実装(仮)
sochi419 Feb 27, 2024
23de8ca
formヘルパーを用いたradioボタンを実装
sochi419 Feb 27, 2024
9fafb73
編集画面、新規作成画面からカテゴリ選択できるようにした
sochi419 Feb 28, 2024
956bc03
ja.ymlに記載した文字を使った処理に修正
sochi419 Feb 28, 2024
3c02730
faqテーブルのcategoryにnot null制約を追加
sochi419 Feb 28, 2024
24a6530
category未選択時のエラー対応のため、Faqmodelにvalidateを追加
sochi419 Feb 28, 2024
0265936
seedのデータ修正、カテゴリタブをrenderを使って呼び出す処理に修正
sochi419 Mar 3, 2024
3a8ba09
rubocop対応
sochi419 Mar 5, 2024
334caab
コードの冗長部分を修正
sochi419 Mar 5, 2024
c61156c
rubocop違反を再修正
sochi419 Mar 5, 2024
aca203c
seedにtypoがあったので修正
sochi419 Mar 5, 2024
50e8044
test/fixtures/faqs.ymlのデータに、カテゴリ情報を追加
sochi419 Mar 5, 2024
2d43d82
既存のyumaさんが実装したfaq関連のtestが落ちてしまう問題を修正
sochi419 Mar 5, 2024
dbacd47
faqページでカテゴリ毎にfaqを表示する確認のtestを追加
sochi419 Mar 5, 2024
1577fa1
admin/faqの個別ページにカテゴリを追加
sochi419 Mar 5, 2024
db54741
faqs_categoryテーブルを作成, faqテーブルにあったcategoryのcalumnを削除
sochi419 Mar 25, 2024
a453364
DB構造の修正に伴い、model, controller, viewsを修正した
sochi419 Mar 26, 2024
891c0fb
test/fixtures/faqs.ymlの記述を修正
sochi419 Mar 26, 2024
20a5bf5
Zeitwork::NameErrorに対応
sochi419 Mar 26, 2024
6a7425a
ymlファイルに時間情報を追加、テストの一部を修正
sochi419 Mar 27, 2024
f282e6b
落ちるテストを修正
sochi419 Mar 27, 2024
81fe5b9
テーブルのカラムに、null制約を追加
sochi419 Mar 27, 2024
d485923
ymlファイルのデータの記述を修正、testを修正
sochi419 Apr 16, 2024
e0af99c
slim lintの指摘点を修正
sochi419 Apr 16, 2024
c46b643
nameのvalidateを追加
sochi419 Apr 26, 2024
2cb8d29
モデル名を変更
sochi419 May 5, 2024
c62bacf
モデル名の修正に合わせて、DBのカラム名を変更。
sochi419 May 6, 2024
69f5fb5
controller名とファイル名変更、nameカラムにunique制約追加
sochi419 May 6, 2024
e7b07a8
データの記載場所をviews → controllerに移動
sochi419 May 7, 2024
3a7b55b
enumを使った処理に変更 faqs_categoriesテーブルのデータを使った処理群とテーブルを削除
sochi419 May 7, 2024
e08d6e0
slimLint違反を修正
sochi419 May 7, 2024
4b4b09b
FAQのPCでの見た目を作成
machida May 1, 2024
ec58966
FAQにデザインを入れた
machida May 9, 2024
3b091a6
FAQに関する細かいデザイン調整
machida May 9, 2024
608a48c
radio input を隠した
machida May 9, 2024
ff3c38e
不要な記述を削除
sochi419 May 10, 2024
ac682c7
デザイン修正影響で通らなくなったテストを修正
sochi419 May 21, 2024
4b0858d
admin側のFAQのshowを削除
sochi419 May 21, 2024
855db3f
FAQページのカテゴリタブをeach文で簡略化
sochi419 May 22, 2024
c6c51c6
lintエラーを解消
sochi419 May 22, 2024
84b519b
モバイル表示されるselectタグの選択肢を日本語化、カテゴリを選択しても「全て」になったままだった不具合を修正
sochi419 May 23, 2024
8a509fb
セレクトタブでカテゴリ選択すると、即座にページが切り替わるよう修正
sochi419 May 29, 2024
fa010f8
enum削除、faq_categoryモデルを使った処理に変更
sochi419 Jul 20, 2024
ab1dc78
enum削除に合わせてtestを修正
sochi419 Jul 29, 2024
0264bbd
rubocop指摘点を修正
sochi419 Jul 29, 2024
f8821c8
モバイル表示の不具合修正、lintエラー修正
sochi419 Jul 29, 2024
84e72e7
データ取得時に並び順を指定する処理を追加
sochi419 Jul 31, 2024
670c85f
モデル、テーブル名の変更
sochi419 Sep 22, 2024
10a30b5
新デザインを適用し、とりあえず動くようにした
machida Oct 8, 2024
431f183
FAQデザイン更新
machida Oct 9, 2024
0e778c2
FAQカテゴリーの管理画面を追加
komagata Nov 4, 2024
9072ca4
不要になったテストの削除
komagata Nov 7, 2024
dd23a7e
FAQカテゴリーに関するテストを追加
komagata Nov 11, 2024
3717493
使っていないroutesを削除
komagata Nov 11, 2024
f61c0bd
FAQ関連の失敗しているテストを修正
komagata Nov 11, 2024
3481ba6
FAQにデザインを入れ、初期データのカテゴリを修正、管理画面のタブを整理した
machida Nov 14, 2024
de66a6e
UIの変更にテストを追従させた
komagata Nov 14, 2024
a4833bc
fixtureに不要な文字が混入していたのを修正
komagata Nov 15, 2024
4b55446
スマホ時のフォームの微調整
machida Nov 15, 2024
af2499a
Merge pull request #7093 from fjordllc/feature/add-category-for-faqs
komagata Nov 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions app/components/learnings/learning_component.html.slim
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
.card-main-actions
ul.card-main-actions__items
- if submission?
li.card-main-actions__item
= link_to product_link, class: 'a-button is-sm is-primary is-block test-product' do
i.fa-solid.fa-file
| #{product_label}
- if @practice.completed?(@current_user)
li.card-main-actions__item
button.a-button.is-sm.is-secondary.is-block.is-disabled.test-completed
i.fa-solid.fa-check
| 修了しています
- else
li.card-main-actions__item
= button_tag type: 'button', class: 'a-button is-sm is-warning is-block', id: 'js-complete', data: { practice_id: @practice.id } do
i.fa-solid.fa-check
| 修了
26 changes: 26 additions & 0 deletions app/components/learnings/learning_component.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# frozen_string_literal: true

class Learnings::LearningComponent < ViewComponent::Base
def initialize(practice:, current_user:)
@practice = practice
@current_user = current_user
@learning = Learning.find_or_initialize_by(
user_id: @current_user.id,
practice_id: @practice.id
)
@learning.status = :unstarted if @learning.new_record?
@product = @practice.product(@current_user)
end

def product_link
@product ? product_path(@product) : new_product_path(practice_id: @practice.id)
end

def product_label
@product ? '提出物へ' : '提出物を作る'
end

def submission?
@practice.submission
end
end
21 changes: 21 additions & 0 deletions app/controllers/admin/faq_categories/faqs_controller.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# frozen_string_literal: true

class Admin::FAQCategories::FaqsController < AdminController
before_action :set_faq_category, only: %i[index update]

def index
@faqs = @faq_category.faqs
end

def update
faq = @faq_category.faqs.find(params[:id])
faq.insert_at(params[:faq][:insert_at].to_i)
head :ok
end

private

def set_faq_category
@faq_category = FAQCategory.find(params[:faq_category_id])
end
end
53 changes: 53 additions & 0 deletions app/controllers/admin/faq_categories_controller.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# frozen_string_literal: true

class Admin::FAQCategoriesController < AdminController
before_action :set_faq_category, only: %i[edit update destroy]

def index
@faq_categories = FAQCategory.order(:created_at)
end

def new
@faq_category = FAQCategory.new
end

def create
@faq_category = FAQCategory.new(faq_category_params)

if @faq_category.save
redirect_to admin_faq_categories_path, notice: 'FAQカテゴリーを作成しました。'
else
render 'new'
end
end

def edit; end

def update
if params[:faq_category][:insert_at]
@faq_category.insert_at(params[:faq_category][:insert_at].to_i)
return head :ok
end

if @faq_category.update(faq_category_params)
redirect_to admin_faq_categories_path, notice: 'FAQカテゴリーを更新しました。'
else
render 'edit'
end
end

def destroy
@faq_category.destroy
redirect_to admin_faq_categories_path, notice: 'FAQカテゴリーを削除しました。'
end

private

def faq_category_params
params.require(:faq_category).permit(:name, :insert_at)
end

def set_faq_category
@faq_category = FAQCategory.find(params[:id])
end
end
52 changes: 52 additions & 0 deletions app/controllers/admin/faqs_controller.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# frozen_string_literal: true

class Admin::FaqsController < AdminController
before_action :set_faq, only: %i[show edit update destroy]
before_action :set_faq_category, only: %i[index edit new update create]

def index; end

def new
@faq = FAQ.new
end

def create
@faq = FAQ.new(faq_params)

if @faq.save
redirect_to admin_faqs_path, notice: 'FAQを作成しました。'
else
render 'new'
end
end

def show; end
def edit; end

def update
if @faq.update(faq_params)
redirect_to admin_faqs_path, notice: 'FAQを更新しました。'
else
render 'edit'
end
end

def destroy
@faq.destroy
redirect_to admin_faqs_path, notice: 'FAQを削除しました。'
end

private

def faq_params
params.require(:faq).permit(:answer, :question, :faq_category_id)
end

def set_faq
@faq = FAQ.find(params[:id])
end

def set_faq_category
@faq_categories = FAQCategory.all
end
end
9 changes: 8 additions & 1 deletion app/controllers/api/products/checker_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@

class API::Products::CheckerController < API::BaseController
before_action :require_mentor_login_for_api
before_action :set_product, only: %i[update destroy]
before_action :set_product, only: %i[show update destroy]

def show
render json: {
checker_id: @product.checker_id,
checker_name: @product.checker_name
}
end

def update
if @product.save_checker(params[:current_user_id])
Expand Down
8 changes: 7 additions & 1 deletion app/controllers/books_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,13 @@ class BooksController < ApplicationController
before_action :set_book, only: %i[edit update destroy]
before_action :require_admin_or_mentor_login, except: %i[index]

def index; end
def index
books = Book.all
books = params[:practice_id].present? ? books.joins(:practices).where(practices: { id: params[:practice_id] }) : books
@books = books.with_attached_cover
.includes(:practices)
.order(updated_at: :desc, id: :desc)
end

def new
@book = Book.new
Expand Down
7 changes: 7 additions & 0 deletions app/controllers/companies/products_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,12 @@
class Companies::ProductsController < ApplicationController
def index
@company = Company.find(params[:company_id])
@products = Product.joins(user: :company)
.includes(comments: :user)
.where({ users: { company_id: @company.id } })
.order(id: :asc)
.page(params[:page])
.per(50)
@commented_users = @products.map { |product| [product.id, product.comments.map(&:user)] }.to_h
end
end
9 changes: 7 additions & 2 deletions app/controllers/companies/users_controller.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# frozen_string_literal: true

class Companies::UsersController < ApplicationController
PAGER_NUMBER = 24

ALLOWED_TARGETS = %w[all student_and_trainee graduate adviser mentor admin].freeze

def index
Expand All @@ -9,7 +11,10 @@ def index
@company = Company.find(params[:company_id])

target_users = User.users_role(@target, allowed_targets: ALLOWED_TARGETS)

@users = target_users.with_attached_avatar.where(company: @company).order(updated_at: :desc)
@users = target_users.with_attached_avatar
.where(company: @company)
.order(updated_at: :desc)
.page(params[:page])
.per(PAGER_NUMBER)
end
end
1 change: 1 addition & 0 deletions app/controllers/hibernation_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ def create
destroy_subscription!
notify_to_chat
notify_to_mentors_and_admins
current_user.cancel_participation_from_regular_events
current_user.delete_and_assign_new_organizer
logout
redirect_to hibernation_path
Expand Down
1 change: 1 addition & 0 deletions app/controllers/retirement_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ def create
current_user.retired_on = Date.current
if current_user.save(context: :retirement)
user = current_user
current_user.cancel_participation_from_regular_events
current_user.delete_and_assign_new_organizer
Newspaper.publish(:retirement_create, { user: })

Expand Down
8 changes: 7 additions & 1 deletion app/controllers/users/courses_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@ class Users::CoursesController < ApplicationController

def index
@target = ALLOWED_TARGETS.include?(params[:target]) ? params[:target] : ALLOWED_TARGETS.first
course_names = Course.where(published: true).where(title: I18n.t("course_names.#{@target}")).pluck(:title)
course_names =
if @target == 'other_courses'
Course.where(published: false).pluck(:title)
else
Course.where(published: true).where(title: I18n.t("course_names.#{@target}")).pluck(:title)
end

target_users = User.by_course(course_names).students_and_trainees
@users = target_users
.page(params[:page]).per(PAGER_NUMBER)
Expand Down
25 changes: 18 additions & 7 deletions app/controllers/users/mail_notification_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,28 @@

class Users::MailNotificationController < ApplicationController
skip_before_action :require_active_user_login, raise: false
before_action :set_user, only: %i[edit update]
before_action :validate_user_access, only: %i[edit update]
layout 'not_logged_in'

def edit
def edit; end

def update
if @user.update(mail_notification: false)
redirect_to root_path, notice: 'メール配信を停止しました。'
else
render :edit
end
end

private

def set_user
@user = User.find_by(unsubscribe_email_token: params[:token])
redirect_to root_path, notice: 'メール配信停止にはTOKENが必要です。' unless @user
end

def update
user = User.find(params[:user_id])
user.mail_notification = false
user.save!
redirect_to root_path, notice: 'メール配信を停止しました。'
def validate_user_access
is_unauthorized_user_access = !@user || @user.id != params[:user_id].to_i
redirect_to root_path, alert: 'ユーザーIDもしくはTOKENが違います。' if is_unauthorized_user_access
end
end
19 changes: 17 additions & 2 deletions app/controllers/welcome_controller.rb
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
# frozen_string_literal: true

require_dependency 'faq_category'
class WelcomeController < ApplicationController
skip_before_action :require_active_user_login, raise: false
layout 'lp'
DEFAULT_COURSE = 'Railsエンジニア'
FAQ_CATEGORY_NAME = '法人利用について'

def index
@mentors = current_user ? User.mentors_sorted_by_created_at : User.visible_sorted_mentors
Expand All @@ -15,9 +17,22 @@ def job_support; end

def pricing; end

def faq; end
def faq
@faq_categories = FAQCategory.order(:position).select do |faq_category|
faq_category.faqs.present?
end

if params[:category].present?
faq_category = FAQCategory.find_by(name: params[:category])
@faqs = faq_category.faqs
else
@faqs = FAQ.order(:position)
end
end

def training; end
def training
@faqs = FAQCategory.find_by(name: FAQ_CATEGORY_NAME).faqs
end

def practices; end

Expand Down
7 changes: 7 additions & 0 deletions app/helpers/faq_helper.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# frozen_string_literal: true

module FAQHelper
def format_question(question)
"#{question.delete('??')}?"
end
end
9 changes: 9 additions & 0 deletions app/javascript/comments.vue
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,15 @@ export default {
}
},
postComment() {
if (this.commentableType === 'Report' && this.isRole('mentor')) {
const notChecked = !this.checkId
if (
notChecked &&
!window.confirm('日報を確認済みにしていませんがよろしいですか?')
) {
return
}
}
this.createComment()
if (this.isUnassignedAndUnchekedProduct) {
this.checkProduct(
Expand Down
26 changes: 0 additions & 26 deletions app/javascript/company-products.js

This file was deleted.

Loading