TestController.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. namespace App\Http\Controllers\Admin\Config;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Http\Request;
  5. use App\Models\Config;
  6. use Illuminate\Support\Facades\Mail;
  7. class TestController extends Controller
  8. {
  9. private $configModel;
  10. public function __construct()
  11. {
  12. $this->configModel = new Config();
  13. }
  14. public function index() {
  15. return $this->email();
  16. }
  17. /*
  18. * 이메일 발송 확인
  19. */
  20. public function email()
  21. {
  22. $data = [];
  23. $data['subject'] = '이메일 발송 확인';
  24. $data['mailHost'] = env('MAIL_HOST');
  25. $data['mailName'] = env('MAIL_USERNAME');
  26. return view('admin.config.test.email', $data);
  27. }
  28. /*
  29. * 이메일 발송 확인 실행
  30. */
  31. public function emailSave(Request $request)
  32. {
  33. $rules = [
  34. 'receive_email' => 'string|email',
  35. 'receive_name' => 'string',
  36. ];
  37. $attributes = Config('attributes');
  38. $this->validate($request, $rules, [], $attributes);
  39. // 이메일 발송
  40. $data = [];
  41. $data['server'] = $_SERVER;
  42. $user = [
  43. 'email' => $request->post('receive_email'),
  44. 'name' => $request->post('receive_name'),
  45. ];
  46. Mail::send('admin.config.test.emailForm', $data, function ($message) use ($user) {
  47. $message->to($user['email'], $user['name'])->subject('Test Email');
  48. });
  49. $message = '이메일을 발송하였습니다.';
  50. return redirect('/admin/config/test/email')->with('message', $message);
  51. }
  52. /*
  53. * SMS 발송 확인
  54. */
  55. public function sms()
  56. {
  57. $data = [];
  58. $data['subject'] = '문자 발송 확인';
  59. $data['smsNumber'] = env('SMS_NUMBER');
  60. return view('admin.config.test.sms', $data);
  61. }
  62. /*
  63. * 문자 발송 확인 실행
  64. */
  65. public function smsSave(Request $request)
  66. {
  67. $rules = [
  68. 'receive_number' => 'string|numeric',
  69. ];
  70. $attributes = Config('attributes');
  71. $this->validate($request, $rules, [], $attributes);
  72. // 문자 발송
  73. $data = [
  74. 'content' => '테스트 문자 입니다.',
  75. ];
  76. $message = '문자를 발송하였습니다.';
  77. return redirect('/admin/config/test/email')->with('message', $message);
  78. }
  79. }