NotifyController.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. namespace App\Http\Controllers\Admin\Config\Register;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Controller;
  5. use App\Models\Config;
  6. class NotifyController extends Controller
  7. {
  8. private Config $configModel;
  9. public function __construct(Config $config)
  10. {
  11. $this->configModel = $config;
  12. }
  13. /**
  14. * 알림
  15. * @method GET
  16. * @see /admin/config/register/notify
  17. */
  18. public function index()
  19. {
  20. return view('admin.config.register.notify', []);
  21. }
  22. /**
  23. * 알림 저장
  24. * @method POST
  25. * @see /admin/config/register/notify
  26. */
  27. public function store(Request $request)
  28. {
  29. $rules = [
  30. 'send_email_register_admin' => 'numeric|nullable',
  31. 'send_email_register_user' => 'numeric|nullable',
  32. 'send_telegram_register_admin' => 'numeric|nullable',
  33. 'send_telegram_register_user' => 'numeric|nullable',
  34. 'send_email_changepw_admin' => 'numeric|nullable',
  35. 'send_email_changepw_user' => 'numeric|nullable',
  36. 'send_telegram_changepw_admin' => 'numeric|nullable',
  37. 'send_telegram_changepw_user' => 'numeric|nullable',
  38. 'send_email_withdraw_admin' => 'numeric|nullable',
  39. 'send_email_withdraw_user' => 'numeric|nullable',
  40. 'send_telegram_withdraw_admin' => 'numeric|nullable',
  41. 'send_telegram_withdraw_user' => 'numeric|nullable'
  42. ];
  43. $attributes = [
  44. 'send_email_register_admin' => '회원가입 시 - 최고관리자에게 이메일을 발송합니다.',
  45. 'send_email_register_user' => '회원가입 시 - 회원에게 이메일을 발송합니다.',
  46. 'send_telegram_register_admin' => '회원가입 시 - 최고관리자에게 텔레그램를 발송합니다.',
  47. 'send_telegram_register_user' => '회원가입 시 - 회원에게 텔레그램를 발송합니다.',
  48. 'send_email_changepw_admin' => '비밀번호 변경 시 - 최고관리자에게 이메일을 발송합니다.',
  49. 'send_email_changepw_user' => '비밀번호 변경 시 - 회원에게 이메일을 발송합니다.',
  50. 'send_telegram_changepw_admin' => '비밀번호 변경 시 - 최고관리자에게 텔레그램를 발송합니다.',
  51. 'send_telegram_changepw_user' => '비밀번호 변경 시 - 회원에게 텔레그램를 발송합니다.',
  52. 'send_email_withdraw_admin' => '회원탈퇴 시 - 최고관리자에게 이메일을 발송합니다.',
  53. 'send_email_withdraw_user' => '회원탈퇴 시 - 회원에게 이메일을 발송합니다.',
  54. 'send_telegram_withdraw_admin' => '회원탈퇴 시 - 최고관리자에게 텔레그램를 발송합니다.',
  55. 'send_telegram_withdraw_user' => '회원탈퇴 시 - 회원에게 텔레그램를 발송합니다.'
  56. ];
  57. $posts = $this->validate($request, $rules, [], $attributes);
  58. $posts['send_email_register_admin'] ??= '0';
  59. $posts['send_email_register_user'] ??= '0';
  60. $posts['send_telegram_register_admin'] ??= '0';
  61. $posts['send_telegram_register_user'] ??= '0';
  62. $posts['send_email_changepw_admin'] ??= '0';
  63. $posts['send_email_changepw_user'] ??= '0';
  64. $posts['send_telegram_changepw_admin'] ??= '0';
  65. $posts['send_telegram_changepw_user'] ??= '0';
  66. $posts['send_email_withdraw_admin'] ??= '0';
  67. $posts['send_email_withdraw_user'] ??= '0';
  68. $posts['send_telegram_withdraw_admin'] ??= '0';
  69. $posts['send_telegram_withdraw_user'] ??= '0';
  70. $this->configModel->save($posts, $attributes);
  71. $message = '알림 정보가 저장되었습니다.';
  72. return redirect()->route('admin.config.register.notify.index')->with('message', $message);
  73. }
  74. }