QuestionPolicy.php 844 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <?php
  2. namespace App\Policies;
  3. use App\Models\Question;
  4. use App\Models\User;
  5. use App\Policies\Traits\AdminTrait;
  6. use Illuminate\Auth\Access\HandlesAuthorization;
  7. class QuestionPolicy
  8. {
  9. use AdminTrait;
  10. /**
  11. * Create a new policy instance.
  12. *
  13. * @return void
  14. */
  15. public function __construct()
  16. {
  17. //
  18. }
  19. public function show(User $user, Question $question){
  20. return $question->user_id == $user->id;
  21. }
  22. public function update(User $user,Question $question){
  23. return $question->user_id == $user->id;
  24. }
  25. public function updateInTime(User $user,Question $question){
  26. if( Setting()->get('edit_question_timeout') && $question->created_at->diffInMinutes() > Setting()->get('edit_question_timeout') ){
  27. return false;
  28. }
  29. return true;
  30. }
  31. }