@@ -97,6 +97,7 @@ public function getPublicFunctions()
97
97
'publicConfirmToken ' ,
98
98
'listInputs ' ,
99
99
'editInput ' ,
100
+ 'thanks ' ,
100
101
];
101
102
$ functions ['post ' ] = [
102
103
'index ' ,
@@ -898,24 +899,20 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
898
899
899
900
// 表示期間外か
900
901
if ($ this ->isOutOfTermDisplay ($ form )) {
901
- // 表示しない
902
- return false ;
902
+ // 初期表示にリダイレクトして、初期表示処理にまかせる( 表示しない)
903
+ return collect ([ ' redirect_path ' => url ( $ this -> page -> permanent_link )]) ;
903
904
}
904
905
905
906
// 登録期間外か
906
907
if ($ this ->isOutOfTermRegist ($ form )) {
907
- // エラー画面へ
908
- return $ this ->commonView ('error_messages ' , [
909
- 'error_messages ' => ['登録期間外のため、登録出来ません。 ' ],
910
- ]);
908
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
909
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
911
910
}
912
911
913
912
// 登録制限数オーバーか
914
913
if ($ this ->isOverEntryLimit ($ form ->id , $ form ->entry_limit )) {
915
- // エラー画面へ
916
- return $ this ->commonView ('error_messages ' , [
917
- 'error_messages ' => [$ form ->entry_limit_over_message ],
918
- ]);
914
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
915
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
919
916
}
920
917
921
918
// forms_inputs 登録
@@ -1027,10 +1024,11 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
1027
1024
$ contents_text = trim ($ contents_text );
1028
1025
1029
1026
if ($ form ->use_temporary_regist_mail_flag ) {
1030
- // 仮登録
1027
+ // *** 仮登録
1031
1028
// ユーザ側のみメール送信する
1032
1029
1033
1030
$ after_message = $ form ->temporary_regist_after_message ;
1031
+ session ()->flash ("after_message {$ frame_id }" , $ after_message );
1034
1032
1035
1033
// メール送信
1036
1034
// メール件名の組み立て
@@ -1066,16 +1064,15 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
1066
1064
// メール送信(ユーザー側)
1067
1065
foreach ($ user_mailaddresses as $ user_mailaddress ) {
1068
1066
if (!empty ($ user_mailaddress )) {
1069
- // Mail::to(trim($user_mailaddress))->send(new ConnectMail($mail_options, ['content' => $mail_text]));
1070
1067
// メール送信はログ出力の追加に伴いTrait のメソッドに移行
1071
1068
$ this ->sendMail ($ user_mailaddress , $ mail_options , ['content ' => $ mail_text ], $ this ->getPluginName ());
1072
1069
}
1073
1070
}
1074
1071
} else {
1075
- // 本登録
1076
-
1072
+ // *** 本登録
1077
1073
// 登録後メッセージ内の採番文字列を置換
1078
1074
$ after_message = str_replace ('[[number]] ' , $ number , $ form ->after_message );
1075
+ session ()->flash ("after_message {$ frame_id }" , $ after_message );
1079
1076
1080
1077
// メール送信
1081
1078
if ($ form ->mail_send_flag || $ form ->user_mail_send_flag ) {
@@ -1114,7 +1111,6 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
1114
1111
if ($ form ->mail_send_flag ) {
1115
1112
$ mail_addresses = explode (', ' , $ form ->mail_send_address );
1116
1113
foreach ($ mail_addresses as $ mail_address ) {
1117
- // Mail::to(trim($mail_address))->send(new ConnectMail($mail_options, ['content' => $mail_text]));
1118
1114
// メール送信はログ出力の追加に伴いTrait のメソッドに移行
1119
1115
$ this ->sendMail ($ mail_address , $ mail_options , ['content ' => $ mail_text ], $ this ->getPluginName ());
1120
1116
}
@@ -1124,7 +1120,6 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
1124
1120
if ($ form ->user_mail_send_flag ) {
1125
1121
foreach ($ user_mailaddresses as $ user_mailaddress ) {
1126
1122
if (!empty ($ user_mailaddress )) {
1127
- // Mail::to(trim($user_mailaddress))->send(new ConnectMail($mail_options, ['content' => $mail_text]));
1128
1123
// メール送信はログ出力の追加に伴いTrait のメソッドに移行
1129
1124
$ this ->sendMail ($ user_mailaddress , $ mail_options , ['content ' => $ mail_text ], $ this ->getPluginName ());
1130
1125
}
@@ -1151,9 +1146,17 @@ public function publicStore($request, $page_id, $frame_id, $id = null)
1151
1146
}
1152
1147
}
1153
1148
1154
- // 表示テンプレートを呼び出す。
1149
+ // 登録後のリダイレクト表示
1150
+ return collect (['redirect_path ' => url ('/ ' ) . "/plugin/forms/thanks/ {$ page_id }/ {$ frame_id }#frame- {$ frame_id }" ]);
1151
+ }
1152
+
1153
+ /**
1154
+ * 登録後画面
1155
+ */
1156
+ public function thanks ($ request , $ page_id , $ frame_id , $ id = null )
1157
+ {
1155
1158
return $ this ->view ('forms_thanks ' , [
1156
- 'after_message ' => $ after_message
1159
+ 'after_message ' => session ( " after_message { $ frame_id }" )
1157
1160
]);
1158
1161
}
1159
1162
@@ -1257,33 +1260,30 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1257
1260
1258
1261
// 表示期間外か
1259
1262
if ($ this ->isOutOfTermDisplay ($ form )) {
1260
- // 表示しない
1261
- return false ;
1263
+ // 初期表示にリダイレクトして、初期表示処理にまかせる( 表示しない)
1264
+ return collect ([ ' redirect_path ' => url ( $ this -> page -> permanent_link )]) ;
1262
1265
}
1263
1266
1264
1267
// 登録期間外か
1265
1268
if ($ this ->isOutOfTermRegist ($ form )) {
1266
- // エラー画面へ
1267
- return $ this ->commonView ('error_messages ' , [
1268
- 'error_messages ' => ['登録期間外のため、登録出来ません。 ' ],
1269
- ]);
1269
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
1270
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
1270
1271
}
1271
1272
1272
1273
// 登録制限数オーバーか
1273
1274
if ($ this ->isOverEntryLimit ($ form ->id , $ form ->entry_limit )) {
1274
- // エラー画面へ
1275
- return $ this ->commonView ('error_messages ' , [
1276
- 'error_messages ' => [$ form ->entry_limit_over_message ],
1277
- ]);
1275
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
1276
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
1278
1277
}
1279
1278
1280
1279
// $id がなかったら、エラー画面へ
1281
1280
// $forms_inputs がなかったら、エラー画面へ
1282
1281
$ forms_inputs = FormsInputs::find ($ id );
1283
1282
if (empty ($ forms_inputs )) {
1284
- return $ this ->commonView ('error_messages ' , [
1285
- 'error_messages ' => ['有効期限切れのため、そのURLはご利用できません。 ' ],
1286
- ]);
1283
+ session ()->flash ("error_messages {$ frame_id }" , '有効期限切れのため、そのURLはご利用できません。 ' );
1284
+
1285
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
1286
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
1287
1287
}
1288
1288
1289
1289
// 項目のエラーチェック
@@ -1293,9 +1293,11 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1293
1293
1294
1294
// getで日付形式エラーは表示しない(通常URLをコピペミス等でいじらなければエラーにならない想定)
1295
1295
if ($ validator ->fails ()) {
1296
- return $ this ->commonView ('error_messages ' , [
1297
- 'error_messages ' => $ validator ->errors ()->all (),
1298
- ]);
1296
+ $ error_messages = $ validator ->errors ()->all ();
1297
+ session ()->flash ("error_messages {$ frame_id }" , $ error_messages [0 ]);
1298
+
1299
+ // 初期表示にリダイレクトして、初期表示処理にまかせる(エラー表示)
1300
+ return collect (['redirect_path ' => url ($ this ->page ->permanent_link )]);
1299
1301
}
1300
1302
1301
1303
// forms_inputs 更新
@@ -1314,22 +1316,17 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1314
1316
1315
1317
// フォームの登録データ
1316
1318
$ forms_input_cols = FormsInputCols::where ('forms_inputs_id ' , $ id )
1317
- ->get ()
1318
- // keyをforms_columns_idにした結果をセット
1319
- ->mapWithKeys (function ($ item ) {
1320
- return [$ item ['forms_columns_id ' ] => $ item ];
1321
- });
1319
+ ->get ()
1320
+ // keyをforms_columns_idにした結果をセット
1321
+ ->mapWithKeys (function ($ item ) {
1322
+ return [$ item ['forms_columns_id ' ] => $ item ];
1323
+ });
1322
1324
1323
1325
// メールの送信文字列
1324
1326
$ contents_text = '' ;
1325
1327
1326
1328
// 登録者のメールアドレス
1327
1329
$ user_mailaddresses = array ();
1328
- // dd($id, $forms_input_cols->first()->forms_columns_id);
1329
- // foreach ($forms_input_cols as $forms_input_col) {
1330
- // var_dump($forms_input_col->forms_columns_id);
1331
- // }
1332
- // dd($forms_input_cols->count());
1333
1330
1334
1331
// 添付ファイルID
1335
1332
$ attach_uploads_ids = [];
@@ -1367,12 +1364,11 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1367
1364
}
1368
1365
// 最後の改行を除去
1369
1366
$ contents_text = trim ($ contents_text );
1370
- // dd($user_mailaddresses);
1371
-
1372
- // 本登録
1373
1367
1368
+ // *** 本登録
1374
1369
// 登録後メッセージ内の採番文字列を置換
1375
1370
$ after_message = str_replace ('[[number]] ' , $ number , $ form ->after_message );
1371
+ session ()->flash ("after_message {$ frame_id }" , $ after_message );
1376
1372
1377
1373
// メール送信
1378
1374
if ($ form ->mail_send_flag || $ form ->user_mail_send_flag ) {
@@ -1411,7 +1407,6 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1411
1407
if ($ form ->mail_send_flag ) {
1412
1408
$ mail_addresses = explode (', ' , $ form ->mail_send_address );
1413
1409
foreach ($ mail_addresses as $ mail_address ) {
1414
- // Mail::to(trim($mail_address))->send(new ConnectMail($mail_options, ['content' => $mail_text]));
1415
1410
// メール送信はログ出力の追加に伴いTrait のメソッドに移行
1416
1411
$ this ->sendMail ($ mail_address , $ mail_options , ['content ' => $ mail_text ], $ this ->getPluginName ());
1417
1412
}
@@ -1421,18 +1416,15 @@ public function publicStoreToken($request, $page_id, $frame_id, $id)
1421
1416
if ($ form ->user_mail_send_flag ) {
1422
1417
foreach ($ user_mailaddresses as $ user_mailaddress ) {
1423
1418
if (!empty ($ user_mailaddress )) {
1424
- // Mail::to(trim($user_mailaddress))->send(new ConnectMail($mail_options, ['content' => $mail_text]));
1425
1419
// メール送信はログ出力の追加に伴いTrait のメソッドに移行
1426
1420
$ this ->sendMail ($ user_mailaddress , $ mail_options , ['content ' => $ mail_text ], $ this ->getPluginName ());
1427
1421
}
1428
1422
}
1429
1423
}
1430
1424
}
1431
1425
1432
- // 表示テンプレートを呼び出す。
1433
- return $ this ->view ('forms_thanks ' , [
1434
- 'after_message ' => $ after_message
1435
- ]);
1426
+ // 登録後のリダイレクト表示
1427
+ return collect (['redirect_path ' => url ('/ ' ) . "/plugin/forms/thanks/ {$ page_id }/ {$ frame_id }#frame- {$ frame_id }" ]);
1436
1428
}
1437
1429
1438
1430
/**
0 commit comments