Passed
Branch master (3ea7c5)
by Vinicius Lourenço
06:59
created
src/config/config.php 1 patch
Indentation   +37 added lines, -37 removed lines patch added patch discarded remove patch
@@ -10,41 +10,41 @@
 block discarded – undo
10 10
 
11 11
 return [
12 12
 
13
-	/**
14
-	 * Horário de abertura que será usado de referencia para fazer as consultas de horários disponiveis.
15
-	 */
16
-	'opening_time' => '06:00:00',
17
-
18
-	/**
19
-	 * Horário de fechamento que será usado de referencia para fazer as consultas de horários disponiveis.
20
-	 */
21
-	'closing_time' => '20:00:00',
22
-
23
-	/**
24
-	 * Define o nome da tabela que será gerada para os horários agendados.
25
-	 */
26
-	'schedules_table' => 'schedules',
27
-
28
-	/**
29
-	 * Define o nome da tabela que será gerada para os status do horários agendados.
30
-	 */
31
-	'schedule_status_table' => 'schedule_status',
32
-
33
-	/**
34
-	 * Configuração que habilita ou desabilita mensagens de erro ao tentar agendar
35
-	 * um horário que já foi agendado.
36
-	 *
37
-	 * Ex: Duas pessoas tentam agendar no mesmo horário, a primeira consegue e a segunda
38
-	 *  obtém uma mensagem de erro.
39
-	 *
40
-	 * Caso seja desabilitada, não será exibido mensagem de erro no caso acima e será
41
-	 * registrado normalmente.
42
-	 */
43
-	'enable_schedule_conflict' => true,
44
-
45
-	/**
46
-	 * Configuração que habilita ou desabilita mensagens de erro ao tentar agendar
47
-	 * um horário sem informar quando acaba (uma data final).
48
-	 */
49
-	'enable_schedule_without_end' => false,
13
+    /**
14
+     * Horário de abertura que será usado de referencia para fazer as consultas de horários disponiveis.
15
+     */
16
+    'opening_time' => '06:00:00',
17
+
18
+    /**
19
+     * Horário de fechamento que será usado de referencia para fazer as consultas de horários disponiveis.
20
+     */
21
+    'closing_time' => '20:00:00',
22
+
23
+    /**
24
+     * Define o nome da tabela que será gerada para os horários agendados.
25
+     */
26
+    'schedules_table' => 'schedules',
27
+
28
+    /**
29
+     * Define o nome da tabela que será gerada para os status do horários agendados.
30
+     */
31
+    'schedule_status_table' => 'schedule_status',
32
+
33
+    /**
34
+     * Configuração que habilita ou desabilita mensagens de erro ao tentar agendar
35
+     * um horário que já foi agendado.
36
+     *
37
+     * Ex: Duas pessoas tentam agendar no mesmo horário, a primeira consegue e a segunda
38
+     *  obtém uma mensagem de erro.
39
+     *
40
+     * Caso seja desabilitada, não será exibido mensagem de erro no caso acima e será
41
+     * registrado normalmente.
42
+     */
43
+    'enable_schedule_conflict' => true,
44
+
45
+    /**
46
+     * Configuração que habilita ou desabilita mensagens de erro ao tentar agendar
47
+     * um horário sem informar quando acaba (uma data final).
48
+     */
49
+    'enable_schedule_without_end' => false,
50 50
 ];
51 51
\ No newline at end of file
Please login to merge, or discard this patch.
src/Scheduler/SchedulerServiceProvider.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -38,7 +38,7 @@
 block discarded – undo
38 38
      */
39 39
     public function register()
40 40
     {
41
-        $this->app->singleton(Scheduler::class, function ($app) {
41
+        $this->app->singleton(Scheduler::class, function($app) {
42 42
             return new Scheduler($app);
43 43
         });
44 44
 
Please login to merge, or discard this patch.
src/Scheduler/Translations/pt/exceptions.php 1 patch
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -1,10 +1,10 @@
 block discarded – undo
1 1
 <?php
2 2
 
3 3
 return [
4
-	'does_not_belong' => 'Não é possível remover registro que não possui o mesmo tipo de model.',
5
-	'cant_remove_by_date' => 'Não é possível remover um registro pelo horário marcado quando a configuração [enable_schedule_conflict] está desabilitada.',
6
-	'cant_add_without_end' => 'Não é possível adicionar um registro sem o parâmetro [end_at] quando a configuração [enable_schedule_without_end] está desabilitada.',
7
-	'cant_add_with_same_start_at' => 'Não é possível adicionar um registro com uma data de ínicio [start_at] que já existe enquanto a configuração [enable_schedule_conflict] estiver habilitada.',
8
-	'end_cant_before_start' => 'A data que indica o final [end_at] não pode ser anterior a data de início [start_at].',
9
-	'model_not_found' => 'Não foi encontrado resultados para [:model]'
4
+    'does_not_belong' => 'Não é possível remover registro que não possui o mesmo tipo de model.',
5
+    'cant_remove_by_date' => 'Não é possível remover um registro pelo horário marcado quando a configuração [enable_schedule_conflict] está desabilitada.',
6
+    'cant_add_without_end' => 'Não é possível adicionar um registro sem o parâmetro [end_at] quando a configuração [enable_schedule_without_end] está desabilitada.',
7
+    'cant_add_with_same_start_at' => 'Não é possível adicionar um registro com uma data de ínicio [start_at] que já existe enquanto a configuração [enable_schedule_conflict] estiver habilitada.',
8
+    'end_cant_before_start' => 'A data que indica o final [end_at] não pode ser anterior a data de início [start_at].',
9
+    'model_not_found' => 'Não foi encontrado resultados para [:model]'
10 10
 ];
11 11
\ No newline at end of file
Please login to merge, or discard this patch.
src/Scheduler/Contracts/SchedulerModelTrait.php 1 patch
Indentation   +46 added lines, -46 removed lines patch added patch discarded remove patch
@@ -10,58 +10,58 @@
 block discarded – undo
10 10
 
11 11
 interface SchedulerModelInterface
12 12
 {
13
-	/**
13
+    /**
14 14
      * Retorna apenas os horários que possuem o mesmo [model_type] do [parent] dessa [trait].
15 15
      *
16 16
      * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
17 17
      */
18
-	public function schedules();
18
+    public function schedules();
19 19
 
20
-	/**
21
-	 * Agenda um horário para esta model.
22
-	 *
23
-	 * @param string|Carbon\Carbon $start_at	Data em que será agendado, pode ser em string ou em numa classe Carbon.
24
-	 * @param string|Carbon\Carbon|int $end_at   Data em que acabada esse agendamento, pode ser em string, ou numa classe Carbon
25
-	 *                                    ou em int(sendo considerado os minutos de duração).
26
-	 * @param int $status	Status desse horário ao ser agendado.
27
-	 * @return \H4ad\Scheduler\Models\Schedule
28
-	 *
29
-	 * @throws \H4ad\Scheduler\Exceptions\CantAddWithoutEnd
30
-	 * @throws \H4ad\Scheduler\Exceptions\CantAddWithSameStartAt
31
-	 * @throws \H4ad\Scheduler\Exceptions\EndCantBeforeStart
32
-	 */
33
-	public function addSchedule($start_at, $end_at = null, $status = null);
20
+    /**
21
+     * Agenda um horário para esta model.
22
+     *
23
+     * @param string|Carbon\Carbon $start_at	Data em que será agendado, pode ser em string ou em numa classe Carbon.
24
+     * @param string|Carbon\Carbon|int $end_at   Data em que acabada esse agendamento, pode ser em string, ou numa classe Carbon
25
+     *                                    ou em int(sendo considerado os minutos de duração).
26
+     * @param int $status	Status desse horário ao ser agendado.
27
+     * @return \H4ad\Scheduler\Models\Schedule
28
+     *
29
+     * @throws \H4ad\Scheduler\Exceptions\CantAddWithoutEnd
30
+     * @throws \H4ad\Scheduler\Exceptions\CantAddWithSameStartAt
31
+     * @throws \H4ad\Scheduler\Exceptions\EndCantBeforeStart
32
+     */
33
+    public function addSchedule($start_at, $end_at = null, $status = null);
34 34
 
35
-	/**
36
-	 * Exibe uma lista dos horários do dia de hoje.
37
-	 *
38
-	 * @param  int    $duration Serve para facilitar na hora de buscar horários livres
39
-	 *                          que precisem ter uma certa duração.
40
-	 * @return array
41
-	 */
42
-	public function availableToday($duration = 0);
35
+    /**
36
+     * Exibe uma lista dos horários do dia de hoje.
37
+     *
38
+     * @param  int    $duration Serve para facilitar na hora de buscar horários livres
39
+     *                          que precisem ter uma certa duração.
40
+     * @return array
41
+     */
42
+    public function availableToday($duration = 0);
43 43
 
44
-	/**
45
-	 * Lista os horários livres em um determinado dia.
46
-	 *
47
-	 * @param  string|Carbon\Carbon $date Data para o qual ele irá fazer a busca.
48
-	 * @param  int    $duration Serve para facilitar na hora de buscar horários livres
49
-	 *                          que precisem ter uma certa duração.
50
-	 * @return array
51
-	 */
52
-	public function availableOn($date, $duration = 0);
44
+    /**
45
+     * Lista os horários livres em um determinado dia.
46
+     *
47
+     * @param  string|Carbon\Carbon $date Data para o qual ele irá fazer a busca.
48
+     * @param  int    $duration Serve para facilitar na hora de buscar horários livres
49
+     *                          que precisem ter uma certa duração.
50
+     * @return array
51
+     */
52
+    public function availableOn($date, $duration = 0);
53 53
 
54
-	/**
55
-	 * Remove um horário agendado pelo seu ID ou pelo horário em que foi marcado.
56
-	 * Caso a configuração "enable_schedule_conflict" estiver desabilitada, será lançado uma exceção
57
-	 * se for tentado remover um horário agendado pela data de quando foi marcado.
58
-	 *
59
-	 * @param  int|string|Carbon\Carbon $schedule    Horário agendado.
60
-	 * @return bool|null
61
-	 *
62
-	 * @throws \H4ad\Scheduler\Exceptions\DoesNotBelong
63
-	 * @throws \H4ad\Scheduler\Exceptions\CantRemoveByDate
64
-	 * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
65
-	 */
66
-	public function removeSchedule($schedule);
54
+    /**
55
+     * Remove um horário agendado pelo seu ID ou pelo horário em que foi marcado.
56
+     * Caso a configuração "enable_schedule_conflict" estiver desabilitada, será lançado uma exceção
57
+     * se for tentado remover um horário agendado pela data de quando foi marcado.
58
+     *
59
+     * @param  int|string|Carbon\Carbon $schedule    Horário agendado.
60
+     * @return bool|null
61
+     *
62
+     * @throws \H4ad\Scheduler\Exceptions\DoesNotBelong
63
+     * @throws \H4ad\Scheduler\Exceptions\CantRemoveByDate
64
+     * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
65
+     */
66
+    public function removeSchedule($schedule);
67 67
 }
68 68
\ No newline at end of file
Please login to merge, or discard this patch.
src/Scheduler/Scheduler.php 2 patches
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -77,9 +77,9 @@  discard block
 block discarded – undo
77 77
         $openingTime = Carbon::parse(Config::get('scheduler.opening_time'))->setDateFrom($today);
78 78
         $closingTime = Carbon::parse(Config::get('scheduler.closing_time'))->setDateFrom($today);
79 79
 
80
-        $livres = [];
80
+        $livres = [ ];
81 81
         $today = Carbon::parse($today->toDateString());
82
-        while($openingTime <= $closingTime)
82
+        while ($openingTime <= $closingTime)
83 83
         {
84 84
             $add = true;
85 85
 
@@ -87,20 +87,20 @@  discard block
 block discarded – undo
87 87
                 $start = Carbon::parse($schedule->start_at);
88 88
                 $begin = Carbon::parse($start->toDateString());
89 89
 
90
-                if($begin->greaterThan($today))
90
+                if ($begin->greaterThan($today))
91 91
                     break;
92 92
 
93
-                if($begin->notEqualTo($today))
93
+                if ($begin->notEqualTo($today))
94 94
                     continue;
95 95
 
96 96
                 $end = Carbon::parse($schedule->end_at);
97
-                if($start <= Carbon::parse($openingTime->toDateTimeString())
97
+                if ($start <= Carbon::parse($openingTime->toDateTimeString())
98 98
                 && $end >= Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes))
99 99
                     $add = false;
100 100
             }
101 101
 
102
-            if($add)
103
-                $livres[] = [
102
+            if ($add)
103
+                $livres[ ] = [
104 104
                     'start_at' => Carbon::parse($openingTime->toDateTimeString()),
105 105
                     'end_at' => Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes)
106 106
                 ];
Please login to merge, or discard this patch.
Braces   +12 added lines, -8 removed lines patch added patch discarded remove patch
@@ -87,23 +87,27 @@
 block discarded – undo
87 87
                 $start = Carbon::parse($schedule->start_at);
88 88
                 $begin = Carbon::parse($start->toDateString());
89 89
 
90
-                if($begin->greaterThan($today))
91
-                    break;
90
+                if($begin->greaterThan($today)) {
91
+                                    break;
92
+                }
92 93
 
93
-                if($begin->notEqualTo($today))
94
-                    continue;
94
+                if($begin->notEqualTo($today)) {
95
+                                    continue;
96
+                }
95 97
 
96 98
                 $end = Carbon::parse($schedule->end_at);
97 99
                 if($start <= Carbon::parse($openingTime->toDateTimeString())
98
-                && $end >= Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes))
99
-                    $add = false;
100
+                && $end >= Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes)) {
101
+                                    $add = false;
102
+                }
100 103
             }
101 104
 
102
-            if($add)
103
-                $livres[] = [
105
+            if($add) {
106
+                            $livres[] = [
104 107
                     'start_at' => Carbon::parse($openingTime->toDateTimeString()),
105 108
                     'end_at' => Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes)
106 109
                 ];
110
+            }
107 111
 
108 112
             $openingTime->addMinutes($durationMinutes);
109 113
         }
Please login to merge, or discard this patch.
Scheduler/Migrations/2018_08_12_000000_create_schedule_status_table.php.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@
 block discarded – undo
22 22
      */
23 23
     public function up()
24 24
     {
25
-        Schema::create(Config::get('scheduler.schedule_status_table'), function (Blueprint $table) {
25
+        Schema::create(Config::get('scheduler.schedule_status_table'), function(Blueprint $table) {
26 26
             $table->increments('id');
27 27
             $table->string('name')->unique();
28 28
             $table->text('description')->nullable();
Please login to merge, or discard this patch.
src/Scheduler/Migrations/2018_08_12_000000_create_schedules_table.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@
 block discarded – undo
22 22
      */
23 23
     public function up()
24 24
     {
25
-        Schema::create(Config::get('scheduler.schedules_table'), function (Blueprint $table) {
25
+        Schema::create(Config::get('scheduler.schedules_table'), function(Blueprint $table) {
26 26
             $table->increments('id');
27 27
             $table->string('model_type');
28 28
             $table->integer('model_id');
Please login to merge, or discard this patch.
src/Scheduler/Exceptions/ModelNotFound.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -13,13 +13,13 @@
 block discarded – undo
13 13
 class ModelNotFound extends CustomException
14 14
 {
15 15
 
16
-	/**
17
-	 * {@inheritDoc}
18
-	 */
19
-	protected $trans = 'model_not_found';
16
+    /**
17
+     * {@inheritDoc}
18
+     */
19
+    protected $trans = 'model_not_found';
20 20
 
21
-	/**
22
-	 * {@inheritDoc}
23
-	 */
24
-	protected $statusCode = Response::HTTP_NOT_FOUND;
21
+    /**
22
+     * {@inheritDoc}
23
+     */
24
+    protected $statusCode = Response::HTTP_NOT_FOUND;
25 25
 }
26 26
\ No newline at end of file
Please login to merge, or discard this patch.
src/Scheduler/Exceptions/EndCantBeforeStart.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -13,13 +13,13 @@
 block discarded – undo
13 13
 class EndCantBeforeStart extends CustomException
14 14
 {
15 15
 
16
-	/**
17
-	 * {@inheritDoc}
18
-	 */
19
-	protected $trans = 'end_cant_before_start';
16
+    /**
17
+     * {@inheritDoc}
18
+     */
19
+    protected $trans = 'end_cant_before_start';
20 20
 
21
-	/**
22
-	 * {@inheritDoc}
23
-	 */
24
-	protected $statusCode = Response::HTTP_BAD_REQUEST;
21
+    /**
22
+     * {@inheritDoc}
23
+     */
24
+    protected $statusCode = Response::HTTP_BAD_REQUEST;
25 25
 }
26 26
\ No newline at end of file
Please login to merge, or discard this patch.