1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- <?php
- namespace App\Http\Controllers\Passport;
- use App\Http\Requests\Passport\CommSendEmailVerify;
- use Illuminate\Http\Request;
- use App\Http\Controllers\Controller;
- use Illuminate\Http\Exceptions\HttpResponseException;
- use Illuminate\Support\Facades\Mail;
- use App\Utils\Helper;
- use Illuminate\Support\Facades\Cache;
- class CommController extends Controller
- {
- public function config()
- {
- return response([
- 'data' => [
- 'isEmailVerify' => (int)config('v2board.email_verify', 0) ? 1 : 0,
- 'isInviteForce' => (int)config('v2board.invite_force', 0) ? 1 : 0
- ]
- ]);
- }
- private function isEmailVerify()
- {
- return response([
- 'data' => (int)config('v2board.email_verify', 0) ? 1 : 0
- ]);
- }
- public function sendEmailVerify(CommSendEmailVerify $request)
- {
- $email = $request->input('email');
- $cacheKey = 'sendEmailVerify:' . $email;
- if (Cache::get($cacheKey)) {
- abort(500, '验证码已发送,请过一会在请求');
- }
- $code = Helper::randomChar(6);
- $subject = config('v2board.app_name', 'V2Board') . '邮箱验证码';
- Mail::send(
- 'mail.sendEmailVerify',
- [
- 'code' => $code,
- 'name' => config('v2board.app_name', 'V2Board'),
- 'url' => config('v2board.app_url')
- ],
- function ($message) use ($email, $subject) {
- $message->to($email)->subject($subject);
- }
- );
- if (count(Mail::failures()) >= 1) {
- // 发送失败
- abort(500, '发送失败');
- }
- Cache::put($cacheKey, $code, 600);
- return response([
- 'data' => true
- ]);
- }
- }
|