Passed
Push — master ( 1402e3...740cbb )
by Vinicius Lourenço
03:23
created
src/Scheduler/Exceptions/CustomException.php 3 patches
Braces   +6 added lines, -4 removed lines patch added patch discarded remove patch
@@ -88,8 +88,9 @@  discard block
 block discarded – undo
88 88
      */
89 89
     protected function parseValues()
90 90
     {
91
-        if(is_array($this->attributes) && is_array($this->values))
92
-            return collect($this->attributes)->combine($this->values)->all();
91
+        if(is_array($this->attributes) && is_array($this->values)) {
92
+                    return collect($this->attributes)->combine($this->values)->all();
93
+        }
93 94
 
94 95
         return [ $this->attributes => $this->values ?? $this->isLower() ];
95 96
     }
@@ -111,8 +112,9 @@  discard block
 block discarded – undo
111 112
      */
112 113
     protected function getAlias()
113 114
     {
114
-        if(is_object($this->model))
115
-            $this->model = get_class($this->model);
115
+        if(is_object($this->model)) {
116
+                    $this->model = get_class($this->model);
117
+        }
116 118
 
117 119
         return collect(trans('scheduler::exceptions.aliases.'. $this->aliastype))->search($this->model) ?: 'Recurso';
118 120
     }
Please login to merge, or discard this patch.
Indentation   +120 added lines, -120 removed lines patch added patch discarded remove patch
@@ -10,124 +10,124 @@
 block discarded – undo
10 10
 
11 11
 class CustomException extends \Exception
12 12
 {
13
-    /**
14
-     * Model que não pertence ao usuário
15
-     *
16
-     * @var mixed
17
-     */
18
-    protected $model;
19
-
20
-    /**
21
-     * Key para o arquivo de tradução de exceções.
22
-     *
23
-     * @var string
24
-     */
25
-    protected $trans;
26
-
27
-    /**
28
-     * HTTP Status Code
29
-     *
30
-     * @var int
31
-     */
32
-    protected $statusCode;
33
-
34
-    /**
35
-     * Atributo usado como key para substituir por um texto.
36
-     *
37
-     * @var array|string
38
-     */
39
-    protected $attributes = 'model';
40
-
41
-    /**
42
-     * Diz se o alias será no singular ou no plural.
43
-     *
44
-     * @var string
45
-     */
46
-    protected $aliastype = 'singular';
47
-
48
-    /**
49
-     * Valor passado para o atributo
50
-     *
51
-     * @var array|string|null
52
-     */
53
-    protected $values = null;
54
-
55
-    /**
56
-     * Indica se a model será printada com lower case.
57
-     *
58
-     * @var boolean
59
-     */
60
-    protected $lowercase = false;
61
-
62
-    /**
63
-     * Construtor da exceção
64
-     *
65
-     * @param mixed $model
66
-     */
67
-    public function __construct($model = 'foo')
68
-    {
69
-        $this->model = $model;
70
-    }
71
-
72
-    /**
73
-     * Render the exception as an HTTP response.
74
-     *
75
-     * @return \Illuminate\Http\JsonResponse
76
-     */
77
-    public function render()
78
-    {
79
-        return response()->
80
-            /** @scrutinizer ignore-call */
81
-            json([
82
-            'messages' => trans('scheduler::exceptions.'. $this->trans, $this->parseValues())
83
-        ], $this->statusCode);
84
-    }
85
-
86
-    /**
87
-     * Dá parse nos valores para a string de tradução.
88
-     *
89
-     * @return array
90
-     */
91
-    protected function parseValues()
92
-    {
93
-        if(is_array($this->attributes) && is_array($this->values))
94
-            return collect($this->attributes)->combine($this->values)->all();
95
-
96
-        return [ $this->attributes => $this->values ?? $this->isLower() ];
97
-    }
98
-
99
-    /**
100
-     * Verifica se é lowercase e retorna de acordo.
101
-     *
102
-     * @return string
103
-     */
104
-    protected function isLower()
105
-    {
106
-        return $this->lowercase ? strtolower($this->getAlias()) : $this->getAlias();
107
-    }
108
-
109
-    /**
110
-     * Retorna o alias da model.
111
-     *
112
-     * @return string
113
-     */
114
-    protected function getAlias()
115
-    {
116
-        if(is_object($this->model))
117
-            $this->model = get_class($this->model);
118
-
119
-        return collect(trans('scheduler::exceptions.aliases.'. $this->aliastype))->search($this->model) ?: 'Recurso';
120
-    }
121
-
122
-    /**
123
-     * Seta os valores.
124
-     *
125
-     * @param mixed $values
126
-     */
127
-    public function setValues($values)
128
-    {
129
-        $this->values = $values;
130
-
131
-        return $this;
132
-    }
13
+	/**
14
+	 * Model que não pertence ao usuário
15
+	 *
16
+	 * @var mixed
17
+	 */
18
+	protected $model;
19
+
20
+	/**
21
+	 * Key para o arquivo de tradução de exceções.
22
+	 *
23
+	 * @var string
24
+	 */
25
+	protected $trans;
26
+
27
+	/**
28
+	 * HTTP Status Code
29
+	 *
30
+	 * @var int
31
+	 */
32
+	protected $statusCode;
33
+
34
+	/**
35
+	 * Atributo usado como key para substituir por um texto.
36
+	 *
37
+	 * @var array|string
38
+	 */
39
+	protected $attributes = 'model';
40
+
41
+	/**
42
+	 * Diz se o alias será no singular ou no plural.
43
+	 *
44
+	 * @var string
45
+	 */
46
+	protected $aliastype = 'singular';
47
+
48
+	/**
49
+	 * Valor passado para o atributo
50
+	 *
51
+	 * @var array|string|null
52
+	 */
53
+	protected $values = null;
54
+
55
+	/**
56
+	 * Indica se a model será printada com lower case.
57
+	 *
58
+	 * @var boolean
59
+	 */
60
+	protected $lowercase = false;
61
+
62
+	/**
63
+	 * Construtor da exceção
64
+	 *
65
+	 * @param mixed $model
66
+	 */
67
+	public function __construct($model = 'foo')
68
+	{
69
+		$this->model = $model;
70
+	}
71
+
72
+	/**
73
+	 * Render the exception as an HTTP response.
74
+	 *
75
+	 * @return \Illuminate\Http\JsonResponse
76
+	 */
77
+	public function render()
78
+	{
79
+		return response()->
80
+			/** @scrutinizer ignore-call */
81
+			json([
82
+			'messages' => trans('scheduler::exceptions.'. $this->trans, $this->parseValues())
83
+		], $this->statusCode);
84
+	}
85
+
86
+	/**
87
+	 * Dá parse nos valores para a string de tradução.
88
+	 *
89
+	 * @return array
90
+	 */
91
+	protected function parseValues()
92
+	{
93
+		if(is_array($this->attributes) && is_array($this->values))
94
+			return collect($this->attributes)->combine($this->values)->all();
95
+
96
+		return [ $this->attributes => $this->values ?? $this->isLower() ];
97
+	}
98
+
99
+	/**
100
+	 * Verifica se é lowercase e retorna de acordo.
101
+	 *
102
+	 * @return string
103
+	 */
104
+	protected function isLower()
105
+	{
106
+		return $this->lowercase ? strtolower($this->getAlias()) : $this->getAlias();
107
+	}
108
+
109
+	/**
110
+	 * Retorna o alias da model.
111
+	 *
112
+	 * @return string
113
+	 */
114
+	protected function getAlias()
115
+	{
116
+		if(is_object($this->model))
117
+			$this->model = get_class($this->model);
118
+
119
+		return collect(trans('scheduler::exceptions.aliases.'. $this->aliastype))->search($this->model) ?: 'Recurso';
120
+	}
121
+
122
+	/**
123
+	 * Seta os valores.
124
+	 *
125
+	 * @param mixed $values
126
+	 */
127
+	public function setValues($values)
128
+	{
129
+		$this->values = $values;
130
+
131
+		return $this;
132
+	}
133 133
 }
Please login to merge, or discard this patch.
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
      *
65 65
      * @param mixed $model
66 66
      */
67
-    public function __construct($model = 'foo')
67
+    public function __construct ($model = 'foo')
68 68
     {
69 69
         $this->model = $model;
70 70
     }
@@ -74,12 +74,12 @@  discard block
 block discarded – undo
74 74
      *
75 75
      * @return \Illuminate\Http\JsonResponse
76 76
      */
77
-    public function render()
77
+    public function render ()
78 78
     {
79 79
         return response()->
80 80
             /** @scrutinizer ignore-call */
81 81
             json([
82
-            'messages' => trans('scheduler::exceptions.'. $this->trans, $this->parseValues())
82
+            'messages' => trans('scheduler::exceptions.' . $this->trans, $this->parseValues())
83 83
         ], $this->statusCode);
84 84
     }
85 85
 
@@ -88,9 +88,9 @@  discard block
 block discarded – undo
88 88
      *
89 89
      * @return array
90 90
      */
91
-    protected function parseValues()
91
+    protected function parseValues ()
92 92
     {
93
-        if(is_array($this->attributes) && is_array($this->values))
93
+        if (is_array($this->attributes) && is_array($this->values))
94 94
             return collect($this->attributes)->combine($this->values)->all();
95 95
 
96 96
         return [ $this->attributes => $this->values ?? $this->isLower() ];
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
      *
102 102
      * @return string
103 103
      */
104
-    protected function isLower()
104
+    protected function isLower ()
105 105
     {
106 106
         return $this->lowercase ? strtolower($this->getAlias()) : $this->getAlias();
107 107
     }
@@ -111,12 +111,12 @@  discard block
 block discarded – undo
111 111
      *
112 112
      * @return string
113 113
      */
114
-    protected function getAlias()
114
+    protected function getAlias ()
115 115
     {
116
-        if(is_object($this->model))
116
+        if (is_object($this->model))
117 117
             $this->model = get_class($this->model);
118 118
 
119
-        return collect(trans('scheduler::exceptions.aliases.'. $this->aliastype))->search($this->model) ?: 'Recurso';
119
+        return collect(trans('scheduler::exceptions.aliases.' . $this->aliastype))->search($this->model) ?: 'Recurso';
120 120
     }
121 121
 
122 122
     /**
@@ -124,7 +124,7 @@  discard block
 block discarded – undo
124 124
      *
125 125
      * @param mixed $values
126 126
      */
127
-    public function setValues($values)
127
+    public function setValues ($values)
128 128
     {
129 129
         $this->values = $values;
130 130
 
Please login to merge, or discard this patch.
src/Scheduler/SchedulerServiceProvider.php 2 patches
Indentation   +46 added lines, -46 removed lines patch added patch discarded remove patch
@@ -12,50 +12,50 @@
 block discarded – undo
12 12
 
13 13
 class SchedulerServiceProvider extends ServiceProvider
14 14
 {
15
-    /**
16
-     * Perform post-registration booting of services.
17
-     *
18
-     * @return void
19
-     */
20
-    public function boot()
21
-    {
22
-        $this->publishes([
23
-            __DIR__.'/../config/config.php' => config_path('scheduler.php'),
24
-        ]);
25
-
26
-        $this->loadMigrationsFrom(__DIR__.'/Migrations');
27
-        $this->loadTranslationsFrom(__DIR__.'/Translations', 'scheduler');
28
-
29
-        $this->publishes([
30
-            __DIR__.'/Translations' => resource_path('lang/vendor/scheduler'),
31
-        ]);
32
-    }
33
-
34
-    /**
35
-     * Register the application services.
36
-     *
37
-     * @return void
38
-     */
39
-    public function register()
40
-    {
41
-        $this->app->singleton(Scheduler::class, function ($app) {
42
-            return new Scheduler($app);
43
-        });
44
-
45
-        $this->app->alias(Scheduler::class, 'scheduler');
46
-
47
-        $this->mergeConfig();
48
-    }
49
-
50
-    /**
51
-     * Mescla configurações do usuário com as configurações do Scheduler.
52
-     *
53
-     * @return void
54
-     */
55
-    private function mergeConfig()
56
-    {
57
-        $this->mergeConfigFrom(
58
-            __DIR__.'/../config/config.php', 'scheduler'
59
-        );
60
-    }
15
+	/**
16
+	 * Perform post-registration booting of services.
17
+	 *
18
+	 * @return void
19
+	 */
20
+	public function boot()
21
+	{
22
+		$this->publishes([
23
+			__DIR__.'/../config/config.php' => config_path('scheduler.php'),
24
+		]);
25
+
26
+		$this->loadMigrationsFrom(__DIR__.'/Migrations');
27
+		$this->loadTranslationsFrom(__DIR__.'/Translations', 'scheduler');
28
+
29
+		$this->publishes([
30
+			__DIR__.'/Translations' => resource_path('lang/vendor/scheduler'),
31
+		]);
32
+	}
33
+
34
+	/**
35
+	 * Register the application services.
36
+	 *
37
+	 * @return void
38
+	 */
39
+	public function register()
40
+	{
41
+		$this->app->singleton(Scheduler::class, function ($app) {
42
+			return new Scheduler($app);
43
+		});
44
+
45
+		$this->app->alias(Scheduler::class, 'scheduler');
46
+
47
+		$this->mergeConfig();
48
+	}
49
+
50
+	/**
51
+	 * Mescla configurações do usuário com as configurações do Scheduler.
52
+	 *
53
+	 * @return void
54
+	 */
55
+	private function mergeConfig()
56
+	{
57
+		$this->mergeConfigFrom(
58
+			__DIR__.'/../config/config.php', 'scheduler'
59
+		);
60
+	}
61 61
 }
62 62
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -17,17 +17,17 @@  discard block
 block discarded – undo
17 17
      *
18 18
      * @return void
19 19
      */
20
-    public function boot()
20
+    public function boot ()
21 21
     {
22 22
         $this->publishes([
23
-            __DIR__.'/../config/config.php' => config_path('scheduler.php'),
23
+            __DIR__ . '/../config/config.php' => config_path('scheduler.php'),
24 24
         ]);
25 25
 
26
-        $this->loadMigrationsFrom(__DIR__.'/Migrations');
27
-        $this->loadTranslationsFrom(__DIR__.'/Translations', 'scheduler');
26
+        $this->loadMigrationsFrom(__DIR__ . '/Migrations');
27
+        $this->loadTranslationsFrom(__DIR__ . '/Translations', 'scheduler');
28 28
 
29 29
         $this->publishes([
30
-            __DIR__.'/Translations' => resource_path('lang/vendor/scheduler'),
30
+            __DIR__ . '/Translations' => resource_path('lang/vendor/scheduler'),
31 31
         ]);
32 32
     }
33 33
 
@@ -36,9 +36,9 @@  discard block
 block discarded – undo
36 36
      *
37 37
      * @return void
38 38
      */
39
-    public function register()
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
 
@@ -52,10 +52,10 @@  discard block
 block discarded – undo
52 52
      *
53 53
      * @return void
54 54
      */
55
-    private function mergeConfig()
55
+    private function mergeConfig ()
56 56
     {
57 57
         $this->mergeConfigFrom(
58
-            __DIR__.'/../config/config.php', 'scheduler'
58
+            __DIR__ . '/../config/config.php', 'scheduler'
59 59
         );
60 60
     }
61 61
 }
62 62
\ No newline at end of file
Please login to merge, or discard this patch.
src/Scheduler/Models/ScheduleStatus.php 2 patches
Indentation   +24 added lines, -24 removed lines patch added patch discarded remove patch
@@ -14,33 +14,33 @@
 block discarded – undo
14 14
 
15 15
 class ScheduleStatus extends Model
16 16
 {
17
-    use SoftDeletes;
17
+	use SoftDeletes;
18 18
 
19 19
 	/**
20
-     * Os atributos que podem ser atribuíveis em massa.
21
-     *
22
-     * @var array
23
-     */
24
-    protected $fillable = [
25
-    	'name', 'description'
26
-    ];
20
+	 * Os atributos que podem ser atribuíveis em massa.
21
+	 *
22
+	 * @var array
23
+	 */
24
+	protected $fillable = [
25
+		'name', 'description'
26
+	];
27 27
 
28
-    /**
29
-     * Os atributos que devem ser transformados para data.
30
-     *
31
-     * @var array
32
-     */
33
-    protected $dates = [
34
-    	'deleted_at'
35
-    ];
28
+	/**
29
+	 * Os atributos que devem ser transformados para data.
30
+	 *
31
+	 * @var array
32
+	 */
33
+	protected $dates = [
34
+		'deleted_at'
35
+	];
36 36
 
37
-    /**
38
-     * Construtor para inicilizar a váriavel table.
39
-     */
40
-    public function __construct(array $attributes = [])
41
-    {
42
-        parent::__construct($attributes);
37
+	/**
38
+	 * Construtor para inicilizar a váriavel table.
39
+	 */
40
+	public function __construct(array $attributes = [])
41
+	{
42
+		parent::__construct($attributes);
43 43
 
44
-        $this->table = Config::get('scheduler.schedule_status_table');
45
-    }
44
+		$this->table = Config::get('scheduler.schedule_status_table');
45
+	}
46 46
 }
47 47
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -37,7 +37,7 @@
 block discarded – undo
37 37
     /**
38 38
      * Construtor para inicilizar a váriavel table.
39 39
      */
40
-    public function __construct(array $attributes = [])
40
+    public function __construct (array $attributes = [ ])
41 41
     {
42 42
         parent::__construct($attributes);
43 43
 
Please login to merge, or discard this patch.
src/Scheduler/Facades/Scheduler.php 2 patches
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -19,13 +19,13 @@
 block discarded – undo
19 19
  */
20 20
 class Scheduler extends Facade
21 21
 {
22
-    /**
23
-     * Get the registered name of the component.
24
-     *
25
-     * @return string
26
-     */
27
-    protected static function getFacadeAccessor()
28
-    {
29
-        return 'scheduler';
30
-    }
22
+	/**
23
+	 * Get the registered name of the component.
24
+	 *
25
+	 * @return string
26
+	 */
27
+	protected static function getFacadeAccessor()
28
+	{
29
+		return 'scheduler';
30
+	}
31 31
 }
32 32
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -24,7 +24,7 @@
 block discarded – undo
24 24
      *
25 25
      * @return string
26 26
      */
27
-    protected static function getFacadeAccessor()
27
+    protected static function getFacadeAccessor ()
28 28
     {
29 29
         return 'scheduler';
30 30
     }
Please login to merge, or discard this patch.
src/Scheduler/Models/Schedule.php 3 patches
Indentation   +54 added lines, -54 removed lines patch added patch discarded remove patch
@@ -19,67 +19,67 @@
 block discarded – undo
19 19
  */
20 20
 class Schedule extends Model
21 21
 {
22
-    use SoftDeletes;
22
+	use SoftDeletes;
23 23
 
24 24
 	/**
25
-     * Os atributos que podem ser atribuíveis em massa.
26
-     *
27
-     * @var array
28
-     */
29
-    protected $fillable = [
30
-    	'model_type', 'model_id', 'start_at', 'end_at', 'status'
31
-    ];
25
+	 * Os atributos que podem ser atribuíveis em massa.
26
+	 *
27
+	 * @var array
28
+	 */
29
+	protected $fillable = [
30
+		'model_type', 'model_id', 'start_at', 'end_at', 'status'
31
+	];
32 32
 
33
-    /**
34
-     * Os atributos que devem ser transformados para data.
35
-     *
36
-     * @var array
37
-     */
38
-    protected $dates = [
39
-    	'start_at', 'end_at', 'deleted_at'
40
-    ];
33
+	/**
34
+	 * Os atributos que devem ser transformados para data.
35
+	 *
36
+	 * @var array
37
+	 */
38
+	protected $dates = [
39
+		'start_at', 'end_at', 'deleted_at'
40
+	];
41 41
 
42
-    /**
43
-     * Seta um status para o horário agendado.
44
-     *
45
-     * @param int|string $status Pode ser passado o ID do status ou seu nome para seta-lo no horário.
46
-     */
47
-    public function setStatus($name)
48
-    {
49
-    	$this->fill($this->parseStatusKey($name))->save();
50
-    }
42
+	/**
43
+	 * Seta um status para o horário agendado.
44
+	 *
45
+	 * @param int|string $status Pode ser passado o ID do status ou seu nome para seta-lo no horário.
46
+	 */
47
+	public function setStatus($name)
48
+	{
49
+		$this->fill($this->parseStatusKey($name))->save();
50
+	}
51 51
 
52
-    /**
53
-     * Retorna o ID do status caso passem o nome do status.
54
-     *
55
-     * @param  int|string $status ID ou o nome do status.
56
-     * @return array
57
-     *
58
-     * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
59
-     */
60
-    public function parseStatusKey($status)
61
-    {
62
-    	if(is_int($status))
63
-    		$status =  ScheduleStatus::find($status);
52
+	/**
53
+	 * Retorna o ID do status caso passem o nome do status.
54
+	 *
55
+	 * @param  int|string $status ID ou o nome do status.
56
+	 * @return array
57
+	 *
58
+	 * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
59
+	 */
60
+	public function parseStatusKey($status)
61
+	{
62
+		if(is_int($status))
63
+			$status =  ScheduleStatus::find($status);
64 64
 
65
-        if(is_string($status))
66
-        	$status = ScheduleStatus::where('name', $status)->first();
65
+		if(is_string($status))
66
+			$status = ScheduleStatus::where('name', $status)->first();
67 67
 
68
-    	if(is_null($status))
69
-    		throw (new ModelNotFound)->setValues(ScheduleStatus::class);
68
+		if(is_null($status))
69
+			throw (new ModelNotFound)->setValues(ScheduleStatus::class);
70 70
 
71
-    	return ['status' => $status->id];
72
-    }
71
+		return ['status' => $status->id];
72
+	}
73 73
 
74
-    /**
75
-     * Escopo de uma consulta que busca horarios pela data de início.
76
-     *
77
-     * @param \Illuminate\Database\Eloquent\Builder $query
78
-     * @param \Carbon\Carbon|string $start_at
79
-     * @return \Illuminate\Database\Eloquent\Builder
80
-     */
81
-    public function scopeByStartAt($query, $start_at)
82
-    {
83
-        return $query->where('start_at', $start_at);
84
-    }
74
+	/**
75
+	 * Escopo de uma consulta que busca horarios pela data de início.
76
+	 *
77
+	 * @param \Illuminate\Database\Eloquent\Builder $query
78
+	 * @param \Carbon\Carbon|string $start_at
79
+	 * @return \Illuminate\Database\Eloquent\Builder
80
+	 */
81
+	public function scopeByStartAt($query, $start_at)
82
+	{
83
+		return $query->where('start_at', $start_at);
84
+	}
85 85
 }
86 86
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -44,7 +44,7 @@  discard block
 block discarded – undo
44 44
      *
45 45
      * @param int|string $status Pode ser passado o ID do status ou seu nome para seta-lo no horário.
46 46
      */
47
-    public function setStatus($name)
47
+    public function setStatus ($name)
48 48
     {
49 49
     	$this->fill($this->parseStatusKey($name))->save();
50 50
     }
@@ -57,18 +57,18 @@  discard block
 block discarded – undo
57 57
      *
58 58
      * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
59 59
      */
60
-    public function parseStatusKey($status)
60
+    public function parseStatusKey ($status)
61 61
     {
62
-    	if(is_int($status))
63
-    		$status =  ScheduleStatus::find($status);
62
+    	if (is_int($status))
63
+    		$status = ScheduleStatus::find($status);
64 64
 
65
-        if(is_string($status))
65
+        if (is_string($status))
66 66
         	$status = ScheduleStatus::where('name', $status)->first();
67 67
 
68
-    	if(is_null($status))
68
+    	if (is_null($status))
69 69
     		throw (new ModelNotFound)->setValues(ScheduleStatus::class);
70 70
 
71
-    	return ['status' => $status->id];
71
+    	return [ 'status' => $status->id ];
72 72
     }
73 73
 
74 74
     /**
@@ -78,7 +78,7 @@  discard block
 block discarded – undo
78 78
      * @param \Carbon\Carbon|string $start_at
79 79
      * @return \Illuminate\Database\Eloquent\Builder
80 80
      */
81
-    public function scopeByStartAt($query, $start_at)
81
+    public function scopeByStartAt ($query, $start_at)
82 82
     {
83 83
         return $query->where('start_at', $start_at);
84 84
     }
Please login to merge, or discard this patch.
Braces   +9 added lines, -6 removed lines patch added patch discarded remove patch
@@ -59,14 +59,17 @@
 block discarded – undo
59 59
      */
60 60
     public function parseStatusKey($status)
61 61
     {
62
-    	if(is_int($status))
63
-    		$status =  ScheduleStatus::find($status);
62
+    	if(is_int($status)) {
63
+    	    		$status =  ScheduleStatus::find($status);
64
+    	}
64 65
 
65
-        if(is_string($status))
66
-        	$status = ScheduleStatus::where('name', $status)->first();
66
+        if(is_string($status)) {
67
+                	$status = ScheduleStatus::where('name', $status)->first();
68
+        }
67 69
 
68
-    	if(is_null($status))
69
-    		throw (new ModelNotFound)->setValues(ScheduleStatus::class);
70
+    	if(is_null($status)) {
71
+    	    		throw (new ModelNotFound)->setValues(ScheduleStatus::class);
72
+    	}
70 73
 
71 74
     	return ['status' => $status->id];
72 75
     }
Please login to merge, or discard this patch.
src/Scheduler/Migrations/2018_08_18_225944_create_schedules_table.php 2 patches
Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -15,32 +15,32 @@
 block discarded – undo
15 15
 
16 16
 class CreateSchedulesTable extends Migration
17 17
 {
18
-    /**
19
-     * Run the migrations.
20
-     *
21
-     * @return void
22
-     */
23
-    public function up()
24
-    {
25
-        Schema::create(Config::get('scheduler.schedules_table'), function (Blueprint $table) {
26
-            $table->increments('id');
27
-            $table->string('model_type');
28
-            $table->integer('model_id');
29
-            $table->timestamp('start_at');
30
-            $table->timestamp('end_at')->nullable();
31
-            $table->integer('status')->nullable();
32
-            $table->timestamps();
33
-            $table->softDeletes();
34
-        });
35
-    }
18
+	/**
19
+	 * Run the migrations.
20
+	 *
21
+	 * @return void
22
+	 */
23
+	public function up()
24
+	{
25
+		Schema::create(Config::get('scheduler.schedules_table'), function (Blueprint $table) {
26
+			$table->increments('id');
27
+			$table->string('model_type');
28
+			$table->integer('model_id');
29
+			$table->timestamp('start_at');
30
+			$table->timestamp('end_at')->nullable();
31
+			$table->integer('status')->nullable();
32
+			$table->timestamps();
33
+			$table->softDeletes();
34
+		});
35
+	}
36 36
 
37
-    /**
38
-     * Reverse the migrations.
39
-     *
40
-     * @return void
41
-     */
42
-    public function down()
43
-    {
44
-        Schema::drop(Config::get('scheduler.schedules_table'));
45
-    }
37
+	/**
38
+	 * Reverse the migrations.
39
+	 *
40
+	 * @return void
41
+	 */
42
+	public function down()
43
+	{
44
+		Schema::drop(Config::get('scheduler.schedules_table'));
45
+	}
46 46
 }
47 47
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -20,9 +20,9 @@  discard block
 block discarded – undo
20 20
      *
21 21
      * @return void
22 22
      */
23
-    public function up()
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');
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
      *
40 40
      * @return void
41 41
      */
42
-    public function down()
42
+    public function down ()
43 43
     {
44 44
         Schema::drop(Config::get('scheduler.schedules_table'));
45 45
     }
Please login to merge, or discard this patch.
src/Scheduler/Migrations/2018_08_18_225643_create_schedule_status_table.php 2 patches
Indentation   +24 added lines, -24 removed lines patch added patch discarded remove patch
@@ -15,29 +15,29 @@
 block discarded – undo
15 15
 
16 16
 class CreateScheduleStatusTable extends Migration
17 17
 {
18
-    /**
19
-     * Run the migrations.
20
-     *
21
-     * @return void
22
-     */
23
-    public function up()
24
-    {
25
-        Schema::create(Config::get('scheduler.schedule_status_table'), function (Blueprint $table) {
26
-            $table->increments('id');
27
-            $table->string('name')->unique();
28
-            $table->text('description')->nullable();
29
-            $table->timestamps();
30
-            $table->softDeletes();
31
-        });
32
-    }
18
+	/**
19
+	 * Run the migrations.
20
+	 *
21
+	 * @return void
22
+	 */
23
+	public function up()
24
+	{
25
+		Schema::create(Config::get('scheduler.schedule_status_table'), function (Blueprint $table) {
26
+			$table->increments('id');
27
+			$table->string('name')->unique();
28
+			$table->text('description')->nullable();
29
+			$table->timestamps();
30
+			$table->softDeletes();
31
+		});
32
+	}
33 33
 
34
-    /**
35
-     * Reverse the migrations.
36
-     *
37
-     * @return void
38
-     */
39
-    public function down()
40
-    {
41
-        Schema::drop(Config::get('scheduler.schedule_status_table'));
42
-    }
34
+	/**
35
+	 * Reverse the migrations.
36
+	 *
37
+	 * @return void
38
+	 */
39
+	public function down()
40
+	{
41
+		Schema::drop(Config::get('scheduler.schedule_status_table'));
42
+	}
43 43
 }
44 44
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -20,9 +20,9 @@  discard block
 block discarded – undo
20 20
      *
21 21
      * @return void
22 22
      */
23
-    public function up()
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();
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
      *
37 37
      * @return void
38 38
      */
39
-    public function down()
39
+    public function down ()
40 40
     {
41 41
         Schema::drop(Config::get('scheduler.schedule_status_table'));
42 42
     }
Please login to merge, or discard this patch.
src/Scheduler/Scheduler.php 3 patches
Indentation   +192 added lines, -192 removed lines patch added patch discarded remove patch
@@ -18,196 +18,196 @@
 block discarded – undo
18 18
 
19 19
 class Scheduler
20 20
 {
21
-    /**
22
-     * Laravel application
23
-     *
24
-     * @var \Illuminate\Foundation\Application
25
-     */
26
-    public $app;
27
-
28
-    /**
29
-     * Create a new confide instance.
30
-     *
31
-     * @param \Illuminate\Foundation\Application $app
32
-     *
33
-     * @return void
34
-     */
35
-    public function __construct($app)
36
-    {
37
-        $this->app = $app;
38
-    }
39
-
40
-    /**
41
-     * Escopo de uma consulta que busca horarios pela data de início.
42
-     *
43
-     * @param string $model_type
44
-     * @param string|\Carbon\Carbon $start_at
45
-     * @param string|\Carbon\Carbon $end_at
46
-     * @return bool
47
-     */
48
-    public function hasScheduleBetween($model_type, $start_at, $end_at)
49
-    {
50
-        if(!Config::get('scheduler.enable_schedule_conflict'))
51
-            return false;
52
-
53
-        return !is_null(
54
-            Schedule::latest()
55
-                ->where('model_type', $model_type)
56
-                ->where('start_at', '>=', $start_at)
57
-                ->where('end_at', '<=', $end_at)
58
-                ->first()
59
-        );
60
-    }
61
-
62
-    /**
63
-     * Retorna os horários disponiveis hoje para uma determinada model.
64
-     * .
65
-     * @param  string  $model_type Tipo da model
66
-     * @param  int    $duration Serve para facilitar na hora de buscar horários livres
67
-     *                          que precisem ter uma certa duração.
68
-     * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
69
-     *                                         Se for nulo, ele busca a referencia da config.
70
-     * @return array
71
-     */
72
-    public function availableToday($model_type, $duration, $openingTime = null)
73
-    {
74
-        return $this->availableOn($model_type, Carbon::now(), $duration, $openingTime);
75
-    }
76
-
77
-    /**
78
-     * Retorna os horários disponiveis em um determinado dia para uma certa model.
79
-     *
80
-     * @param  string  $model_type Tipo da model
81
-     * @param  \Carbon\Carbon $today Data para o qual ele irá fazer a busca.
82
-     * @param  int    $durationMinutes Serve para facilitar na hora de buscar horários livres
83
-     *                          que precisem ter uma certa duração.
84
-     * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
85
-     *                                         Se for nulo, ele busca a referencia da config.
86
-     * @return array
87
-     */
88
-    public function availableOn($model_type, $today, $durationMinutes, $openingTime = null)
89
-    {
90
-        $openingTime = $openingTime ?? Carbon::parse(Config::get('scheduler.opening_time'))->setDateFrom($today);
91
-        $closingTime = Carbon::parse(Config::get('scheduler.closing_time'))->setDateFrom($today);
92
-
93
-        $livres = [];
94
-        $today = Carbon::parse($today->toDateString());
95
-        while($openingTime <= $closingTime)
96
-        {
97
-            $add = true;
98
-
99
-            $opening = Carbon::parse($openingTime->toDateTimeString());
100
-            $closing = Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes);
101
-
102
-            foreach (Schedule::where('model_type', $model_type)->orderBy('start_at', 'DESC')->cursor() as $schedule) {
103
-                $start = Carbon::parse($schedule->start_at);
104
-                $begin = Carbon::parse($start->toDateString());
105
-
106
-                if($begin->greaterThan($today))
107
-                    break;
108
-
109
-                if($begin->notEqualTo($today))
110
-                    continue;
111
-
112
-                $end = Carbon::parse($schedule->end_at);
113
-
114
-                if($this->isShouldntAdd($opening, $closing, $start, $end))
115
-                    $add = false;
116
-            }
117
-
118
-            if($add && $closing->lessThanOrEqualTo($closingTime))
119
-                $livres[] = [
120
-                    'start_at' => $opening,
121
-                    'end_at' => $closing
122
-                ];
123
-
124
-            $openingTime->addMinutes($durationMinutes);
125
-        }
126
-
127
-        return $livres;
128
-    }
129
-
130
-    /**
131
-     * Verifica se ele não deve ser adicionado ao array de horários livres.
132
-     *
133
-     * @param  \Carbon\Carbon  $opening
134
-     * @param  \Carbon\Carbon  $closing
135
-     * @param  \Carbon\Carbon  $start
136
-     * @param  \Carbon\Carbon  $end
137
-     * @return boolean
138
-     */
139
-    private function isShouldntAdd($opening, $closing, $start, $end)
140
-    {
141
-        return $start <= $opening && $end >= $closing;
142
-    }
143
-
144
-    /**
145
-     * Valida e retorna os dados formatados de forma correta em um [array].
146
-     *
147
-     * @param  \Carbon\Carbon|string $start_at  Data em que será agendado, pode ser em string ou em numa classe Carbon.
148
-     * @param  \Carbon\Carbon|string|int|null $end_at   Data em que acabada esse agendamento, pode ser em string, ou numa classe Carbon
149
-     *                                                  ou em int(sendo considerado os minutos de duração).
150
-     * @param  int|null $status Status desse horário ao ser agendado.
151
-     * @return array
152
-     *
153
-     * @throws \H4ad\Scheduler\Exceptions\CantAddWithoutEnd
154
-     * @throws \H4ad\Scheduler\Exceptions\EndCantBeforeStart
155
-     * @throws \H4ad\Scheduler\Exceptions\CantAddWithSameStartAt
156
-     */
157
-    public function validateSchedule($model_type, $start_at, $end_at = null, $status = null)
158
-    {
159
-        if(!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at))
160
-            throw new CantAddWithoutEnd;
161
-
162
-        $start_at  = $this->parseToCarbon($start_at);
163
-
164
-        if(!is_null($end_at)) {
165
-            $end_at = $this->parseToCarbon($end_at, $start_at);
166
-
167
-            if($start_at->greaterThan($end_at))
168
-                throw new EndCantBeforeStart;
169
-        }
170
-
171
-        if($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at))
172
-            throw new CantAddWithSameStartAt;
173
-
174
-        return compact('model_type', 'start_at', 'end_at', 'status');
175
-    }
176
-
177
-    /**
178
-     * Faz um parse na data e retorna uma instância em Carbon.
179
-     *
180
-     * @param  \Carbon\Carbon|string|int $date Data final que será transformada numa instancia Carbon.
181
-     * @param  \Carbon\Carbon $reference Data de referencia quando o [date] é inteiro.
182
-     * @return \Carbon\Carbon
183
-     *
184
-     * @throws \H4ad\Scheduler\Exceptions\IntInvalidArgument
185
-     */
186
-    public function parseToCarbon($date, $reference = null)
187
-    {
188
-        if($date instanceof Carbon)
189
-            return $date;
190
-
191
-        if(is_string($date))
192
-            return Carbon::parse($date);
193
-
194
-        if(is_int($date) && !is_null($reference))
195
-            return Carbon::parse($reference->toDateTimeString())->addMinutes($date);
196
-
197
-        throw new IntInvalidArgument;
198
-    }
199
-
200
-    /**
201
-     * Faz um parse e retorna um Schedule.
202
-     *
203
-     * @param  \Carbon\Carbon|string|int $value Valor que representará a data ou o id a ser buscado.
204
-     * @return \H4ad\Scheduler\Models\Schedule|null
205
-     */
206
-    public function parseToSchedule($value)
207
-    {
208
-        if(is_int($value))
209
-            return Schedule::find($value);
210
-
211
-        return Schedule::byStartAt($value)->first();
212
-    }
21
+	/**
22
+	 * Laravel application
23
+	 *
24
+	 * @var \Illuminate\Foundation\Application
25
+	 */
26
+	public $app;
27
+
28
+	/**
29
+	 * Create a new confide instance.
30
+	 *
31
+	 * @param \Illuminate\Foundation\Application $app
32
+	 *
33
+	 * @return void
34
+	 */
35
+	public function __construct($app)
36
+	{
37
+		$this->app = $app;
38
+	}
39
+
40
+	/**
41
+	 * Escopo de uma consulta que busca horarios pela data de início.
42
+	 *
43
+	 * @param string $model_type
44
+	 * @param string|\Carbon\Carbon $start_at
45
+	 * @param string|\Carbon\Carbon $end_at
46
+	 * @return bool
47
+	 */
48
+	public function hasScheduleBetween($model_type, $start_at, $end_at)
49
+	{
50
+		if(!Config::get('scheduler.enable_schedule_conflict'))
51
+			return false;
52
+
53
+		return !is_null(
54
+			Schedule::latest()
55
+				->where('model_type', $model_type)
56
+				->where('start_at', '>=', $start_at)
57
+				->where('end_at', '<=', $end_at)
58
+				->first()
59
+		);
60
+	}
61
+
62
+	/**
63
+	 * Retorna os horários disponiveis hoje para uma determinada model.
64
+	 * .
65
+	 * @param  string  $model_type Tipo da model
66
+	 * @param  int    $duration Serve para facilitar na hora de buscar horários livres
67
+	 *                          que precisem ter uma certa duração.
68
+	 * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
69
+	 *                                         Se for nulo, ele busca a referencia da config.
70
+	 * @return array
71
+	 */
72
+	public function availableToday($model_type, $duration, $openingTime = null)
73
+	{
74
+		return $this->availableOn($model_type, Carbon::now(), $duration, $openingTime);
75
+	}
76
+
77
+	/**
78
+	 * Retorna os horários disponiveis em um determinado dia para uma certa model.
79
+	 *
80
+	 * @param  string  $model_type Tipo da model
81
+	 * @param  \Carbon\Carbon $today Data para o qual ele irá fazer a busca.
82
+	 * @param  int    $durationMinutes Serve para facilitar na hora de buscar horários livres
83
+	 *                          que precisem ter uma certa duração.
84
+	 * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
85
+	 *                                         Se for nulo, ele busca a referencia da config.
86
+	 * @return array
87
+	 */
88
+	public function availableOn($model_type, $today, $durationMinutes, $openingTime = null)
89
+	{
90
+		$openingTime = $openingTime ?? Carbon::parse(Config::get('scheduler.opening_time'))->setDateFrom($today);
91
+		$closingTime = Carbon::parse(Config::get('scheduler.closing_time'))->setDateFrom($today);
92
+
93
+		$livres = [];
94
+		$today = Carbon::parse($today->toDateString());
95
+		while($openingTime <= $closingTime)
96
+		{
97
+			$add = true;
98
+
99
+			$opening = Carbon::parse($openingTime->toDateTimeString());
100
+			$closing = Carbon::parse($openingTime->toDateTimeString())->addMinutes($durationMinutes);
101
+
102
+			foreach (Schedule::where('model_type', $model_type)->orderBy('start_at', 'DESC')->cursor() as $schedule) {
103
+				$start = Carbon::parse($schedule->start_at);
104
+				$begin = Carbon::parse($start->toDateString());
105
+
106
+				if($begin->greaterThan($today))
107
+					break;
108
+
109
+				if($begin->notEqualTo($today))
110
+					continue;
111
+
112
+				$end = Carbon::parse($schedule->end_at);
113
+
114
+				if($this->isShouldntAdd($opening, $closing, $start, $end))
115
+					$add = false;
116
+			}
117
+
118
+			if($add && $closing->lessThanOrEqualTo($closingTime))
119
+				$livres[] = [
120
+					'start_at' => $opening,
121
+					'end_at' => $closing
122
+				];
123
+
124
+			$openingTime->addMinutes($durationMinutes);
125
+		}
126
+
127
+		return $livres;
128
+	}
129
+
130
+	/**
131
+	 * Verifica se ele não deve ser adicionado ao array de horários livres.
132
+	 *
133
+	 * @param  \Carbon\Carbon  $opening
134
+	 * @param  \Carbon\Carbon  $closing
135
+	 * @param  \Carbon\Carbon  $start
136
+	 * @param  \Carbon\Carbon  $end
137
+	 * @return boolean
138
+	 */
139
+	private function isShouldntAdd($opening, $closing, $start, $end)
140
+	{
141
+		return $start <= $opening && $end >= $closing;
142
+	}
143
+
144
+	/**
145
+	 * Valida e retorna os dados formatados de forma correta em um [array].
146
+	 *
147
+	 * @param  \Carbon\Carbon|string $start_at  Data em que será agendado, pode ser em string ou em numa classe Carbon.
148
+	 * @param  \Carbon\Carbon|string|int|null $end_at   Data em que acabada esse agendamento, pode ser em string, ou numa classe Carbon
149
+	 *                                                  ou em int(sendo considerado os minutos de duração).
150
+	 * @param  int|null $status Status desse horário ao ser agendado.
151
+	 * @return array
152
+	 *
153
+	 * @throws \H4ad\Scheduler\Exceptions\CantAddWithoutEnd
154
+	 * @throws \H4ad\Scheduler\Exceptions\EndCantBeforeStart
155
+	 * @throws \H4ad\Scheduler\Exceptions\CantAddWithSameStartAt
156
+	 */
157
+	public function validateSchedule($model_type, $start_at, $end_at = null, $status = null)
158
+	{
159
+		if(!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at))
160
+			throw new CantAddWithoutEnd;
161
+
162
+		$start_at  = $this->parseToCarbon($start_at);
163
+
164
+		if(!is_null($end_at)) {
165
+			$end_at = $this->parseToCarbon($end_at, $start_at);
166
+
167
+			if($start_at->greaterThan($end_at))
168
+				throw new EndCantBeforeStart;
169
+		}
170
+
171
+		if($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at))
172
+			throw new CantAddWithSameStartAt;
173
+
174
+		return compact('model_type', 'start_at', 'end_at', 'status');
175
+	}
176
+
177
+	/**
178
+	 * Faz um parse na data e retorna uma instância em Carbon.
179
+	 *
180
+	 * @param  \Carbon\Carbon|string|int $date Data final que será transformada numa instancia Carbon.
181
+	 * @param  \Carbon\Carbon $reference Data de referencia quando o [date] é inteiro.
182
+	 * @return \Carbon\Carbon
183
+	 *
184
+	 * @throws \H4ad\Scheduler\Exceptions\IntInvalidArgument
185
+	 */
186
+	public function parseToCarbon($date, $reference = null)
187
+	{
188
+		if($date instanceof Carbon)
189
+			return $date;
190
+
191
+		if(is_string($date))
192
+			return Carbon::parse($date);
193
+
194
+		if(is_int($date) && !is_null($reference))
195
+			return Carbon::parse($reference->toDateTimeString())->addMinutes($date);
196
+
197
+		throw new IntInvalidArgument;
198
+	}
199
+
200
+	/**
201
+	 * Faz um parse e retorna um Schedule.
202
+	 *
203
+	 * @param  \Carbon\Carbon|string|int $value Valor que representará a data ou o id a ser buscado.
204
+	 * @return \H4ad\Scheduler\Models\Schedule|null
205
+	 */
206
+	public function parseToSchedule($value)
207
+	{
208
+		if(is_int($value))
209
+			return Schedule::find($value);
210
+
211
+		return Schedule::byStartAt($value)->first();
212
+	}
213 213
 }
214 214
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +25 added lines, -25 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
      *
33 33
      * @return void
34 34
      */
35
-    public function __construct($app)
35
+    public function __construct ($app)
36 36
     {
37 37
         $this->app = $app;
38 38
     }
@@ -45,9 +45,9 @@  discard block
 block discarded – undo
45 45
      * @param string|\Carbon\Carbon $end_at
46 46
      * @return bool
47 47
      */
48
-    public function hasScheduleBetween($model_type, $start_at, $end_at)
48
+    public function hasScheduleBetween ($model_type, $start_at, $end_at)
49 49
     {
50
-        if(!Config::get('scheduler.enable_schedule_conflict'))
50
+        if (!Config::get('scheduler.enable_schedule_conflict'))
51 51
             return false;
52 52
 
53 53
         return !is_null(
@@ -69,7 +69,7 @@  discard block
 block discarded – undo
69 69
      *                                         Se for nulo, ele busca a referencia da config.
70 70
      * @return array
71 71
      */
72
-    public function availableToday($model_type, $duration, $openingTime = null)
72
+    public function availableToday ($model_type, $duration, $openingTime = null)
73 73
     {
74 74
         return $this->availableOn($model_type, Carbon::now(), $duration, $openingTime);
75 75
     }
@@ -85,14 +85,14 @@  discard block
 block discarded – undo
85 85
      *                                         Se for nulo, ele busca a referencia da config.
86 86
      * @return array
87 87
      */
88
-    public function availableOn($model_type, $today, $durationMinutes, $openingTime = null)
88
+    public function availableOn ($model_type, $today, $durationMinutes, $openingTime = null)
89 89
     {
90 90
         $openingTime = $openingTime ?? Carbon::parse(Config::get('scheduler.opening_time'))->setDateFrom($today);
91 91
         $closingTime = Carbon::parse(Config::get('scheduler.closing_time'))->setDateFrom($today);
92 92
 
93
-        $livres = [];
93
+        $livres = [ ];
94 94
         $today = Carbon::parse($today->toDateString());
95
-        while($openingTime <= $closingTime)
95
+        while ($openingTime <= $closingTime)
96 96
         {
97 97
             $add = true;
98 98
 
@@ -103,20 +103,20 @@  discard block
 block discarded – undo
103 103
                 $start = Carbon::parse($schedule->start_at);
104 104
                 $begin = Carbon::parse($start->toDateString());
105 105
 
106
-                if($begin->greaterThan($today))
106
+                if ($begin->greaterThan($today))
107 107
                     break;
108 108
 
109
-                if($begin->notEqualTo($today))
109
+                if ($begin->notEqualTo($today))
110 110
                     continue;
111 111
 
112 112
                 $end = Carbon::parse($schedule->end_at);
113 113
 
114
-                if($this->isShouldntAdd($opening, $closing, $start, $end))
114
+                if ($this->isShouldntAdd($opening, $closing, $start, $end))
115 115
                     $add = false;
116 116
             }
117 117
 
118
-            if($add && $closing->lessThanOrEqualTo($closingTime))
119
-                $livres[] = [
118
+            if ($add && $closing->lessThanOrEqualTo($closingTime))
119
+                $livres[ ] = [
120 120
                     'start_at' => $opening,
121 121
                     'end_at' => $closing
122 122
                 ];
@@ -136,7 +136,7 @@  discard block
 block discarded – undo
136 136
      * @param  \Carbon\Carbon  $end
137 137
      * @return boolean
138 138
      */
139
-    private function isShouldntAdd($opening, $closing, $start, $end)
139
+    private function isShouldntAdd ($opening, $closing, $start, $end)
140 140
     {
141 141
         return $start <= $opening && $end >= $closing;
142 142
     }
@@ -154,21 +154,21 @@  discard block
 block discarded – undo
154 154
      * @throws \H4ad\Scheduler\Exceptions\EndCantBeforeStart
155 155
      * @throws \H4ad\Scheduler\Exceptions\CantAddWithSameStartAt
156 156
      */
157
-    public function validateSchedule($model_type, $start_at, $end_at = null, $status = null)
157
+    public function validateSchedule ($model_type, $start_at, $end_at = null, $status = null)
158 158
     {
159
-        if(!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at))
159
+        if (!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at))
160 160
             throw new CantAddWithoutEnd;
161 161
 
162
-        $start_at  = $this->parseToCarbon($start_at);
162
+        $start_at = $this->parseToCarbon($start_at);
163 163
 
164
-        if(!is_null($end_at)) {
164
+        if (!is_null($end_at)) {
165 165
             $end_at = $this->parseToCarbon($end_at, $start_at);
166 166
 
167
-            if($start_at->greaterThan($end_at))
167
+            if ($start_at->greaterThan($end_at))
168 168
                 throw new EndCantBeforeStart;
169 169
         }
170 170
 
171
-        if($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at))
171
+        if ($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at))
172 172
             throw new CantAddWithSameStartAt;
173 173
 
174 174
         return compact('model_type', 'start_at', 'end_at', 'status');
@@ -183,15 +183,15 @@  discard block
 block discarded – undo
183 183
      *
184 184
      * @throws \H4ad\Scheduler\Exceptions\IntInvalidArgument
185 185
      */
186
-    public function parseToCarbon($date, $reference = null)
186
+    public function parseToCarbon ($date, $reference = null)
187 187
     {
188
-        if($date instanceof Carbon)
188
+        if ($date instanceof Carbon)
189 189
             return $date;
190 190
 
191
-        if(is_string($date))
191
+        if (is_string($date))
192 192
             return Carbon::parse($date);
193 193
 
194
-        if(is_int($date) && !is_null($reference))
194
+        if (is_int($date) && !is_null($reference))
195 195
             return Carbon::parse($reference->toDateTimeString())->addMinutes($date);
196 196
 
197 197
         throw new IntInvalidArgument;
@@ -203,9 +203,9 @@  discard block
 block discarded – undo
203 203
      * @param  \Carbon\Carbon|string|int $value Valor que representará a data ou o id a ser buscado.
204 204
      * @return \H4ad\Scheduler\Models\Schedule|null
205 205
      */
206
-    public function parseToSchedule($value)
206
+    public function parseToSchedule ($value)
207 207
     {
208
-        if(is_int($value))
208
+        if (is_int($value))
209 209
             return Schedule::find($value);
210 210
 
211 211
         return Schedule::byStartAt($value)->first();
Please login to merge, or discard this patch.
Braces   +36 added lines, -24 removed lines patch added patch discarded remove patch
@@ -47,8 +47,9 @@  discard block
 block discarded – undo
47 47
      */
48 48
     public function hasScheduleBetween($model_type, $start_at, $end_at)
49 49
     {
50
-        if(!Config::get('scheduler.enable_schedule_conflict'))
51
-            return false;
50
+        if(!Config::get('scheduler.enable_schedule_conflict')) {
51
+                    return false;
52
+        }
52 53
 
53 54
         return !is_null(
54 55
             Schedule::latest()
@@ -103,23 +104,27 @@  discard block
 block discarded – undo
103 104
                 $start = Carbon::parse($schedule->start_at);
104 105
                 $begin = Carbon::parse($start->toDateString());
105 106
 
106
-                if($begin->greaterThan($today))
107
-                    break;
107
+                if($begin->greaterThan($today)) {
108
+                                    break;
109
+                }
108 110
 
109
-                if($begin->notEqualTo($today))
110
-                    continue;
111
+                if($begin->notEqualTo($today)) {
112
+                                    continue;
113
+                }
111 114
 
112 115
                 $end = Carbon::parse($schedule->end_at);
113 116
 
114
-                if($this->isShouldntAdd($opening, $closing, $start, $end))
115
-                    $add = false;
117
+                if($this->isShouldntAdd($opening, $closing, $start, $end)) {
118
+                                    $add = false;
119
+                }
116 120
             }
117 121
 
118
-            if($add && $closing->lessThanOrEqualTo($closingTime))
119
-                $livres[] = [
122
+            if($add && $closing->lessThanOrEqualTo($closingTime)) {
123
+                            $livres[] = [
120 124
                     'start_at' => $opening,
121 125
                     'end_at' => $closing
122 126
                 ];
127
+            }
123 128
 
124 129
             $openingTime->addMinutes($durationMinutes);
125 130
         }
@@ -156,20 +161,23 @@  discard block
 block discarded – undo
156 161
      */
157 162
     public function validateSchedule($model_type, $start_at, $end_at = null, $status = null)
158 163
     {
159
-        if(!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at))
160
-            throw new CantAddWithoutEnd;
164
+        if(!Config::get('scheduler.enable_schedule_without_end') && is_null($end_at)) {
165
+                    throw new CantAddWithoutEnd;
166
+        }
161 167
 
162 168
         $start_at  = $this->parseToCarbon($start_at);
163 169
 
164 170
         if(!is_null($end_at)) {
165 171
             $end_at = $this->parseToCarbon($end_at, $start_at);
166 172
 
167
-            if($start_at->greaterThan($end_at))
168
-                throw new EndCantBeforeStart;
173
+            if($start_at->greaterThan($end_at)) {
174
+                            throw new EndCantBeforeStart;
175
+            }
169 176
         }
170 177
 
171
-        if($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at))
172
-            throw new CantAddWithSameStartAt;
178
+        if($this->hasScheduleBetween($model_type, $start_at, $end_at ?? $start_at)) {
179
+                    throw new CantAddWithSameStartAt;
180
+        }
173 181
 
174 182
         return compact('model_type', 'start_at', 'end_at', 'status');
175 183
     }
@@ -185,14 +193,17 @@  discard block
 block discarded – undo
185 193
      */
186 194
     public function parseToCarbon($date, $reference = null)
187 195
     {
188
-        if($date instanceof Carbon)
189
-            return $date;
196
+        if($date instanceof Carbon) {
197
+                    return $date;
198
+        }
190 199
 
191
-        if(is_string($date))
192
-            return Carbon::parse($date);
200
+        if(is_string($date)) {
201
+                    return Carbon::parse($date);
202
+        }
193 203
 
194
-        if(is_int($date) && !is_null($reference))
195
-            return Carbon::parse($reference->toDateTimeString())->addMinutes($date);
204
+        if(is_int($date) && !is_null($reference)) {
205
+                    return Carbon::parse($reference->toDateTimeString())->addMinutes($date);
206
+        }
196 207
 
197 208
         throw new IntInvalidArgument;
198 209
     }
@@ -205,8 +216,9 @@  discard block
 block discarded – undo
205 216
      */
206 217
     public function parseToSchedule($value)
207 218
     {
208
-        if(is_int($value))
209
-            return Schedule::find($value);
219
+        if(is_int($value)) {
220
+                    return Schedule::find($value);
221
+        }
210 222
 
211 223
         return Schedule::byStartAt($value)->first();
212 224
     }
Please login to merge, or discard this patch.
src/Scheduler/Traits/SchedulerModelTrait.php 3 patches
Indentation   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -24,27 +24,27 @@  discard block
 block discarded – undo
24 24
 trait SchedulerModelTrait
25 25
 {
26 26
 	/**
27
-     * Define a one-to-one relationship.
28
-     *
29
-     * @param  string  $related
30
-     * @param  string  $foreignKey
31
-     * @param  string  $localKey
32
-     * @return \Illuminate\Database\Eloquent\Relations\HasOne
33
-     */
34
-    abstract public function hasOne($related, $foreignKey = null, $localKey = null);
27
+	 * Define a one-to-one relationship.
28
+	 *
29
+	 * @param  string  $related
30
+	 * @param  string  $foreignKey
31
+	 * @param  string  $localKey
32
+	 * @return \Illuminate\Database\Eloquent\Relations\HasOne
33
+	 */
34
+	abstract public function hasOne($related, $foreignKey = null, $localKey = null);
35 35
 
36 36
 	/**
37
-     * Get the value of the model's primary key.
38
-     *
39
-     * @return mixed
40
-     */
37
+	 * Get the value of the model's primary key.
38
+	 *
39
+	 * @return mixed
40
+	 */
41 41
 	abstract public function getKey();
42 42
 
43 43
 	/**
44
-     * Retorna apenas o horário que possui o mesmo [model_id] do [parent] dessa [trait].
45
-     *
46
-     * @return \Illuminate\Database\Eloquent\Relations\HasOne
47
-     */
44
+	 * Retorna apenas o horário que possui o mesmo [model_id] do [parent] dessa [trait].
45
+	 *
46
+	 * @return \Illuminate\Database\Eloquent\Relations\HasOne
47
+	 */
48 48
 	public function schedules()
49 49
 	{
50 50
 		return $this->hasOne(Config::get('scheduler.schedules_table'), 'model_id');
@@ -72,8 +72,8 @@  discard block
 block discarded – undo
72 72
 	 *
73 73
 	 * @param  int    $duration Serve para facilitar na hora de buscar horários livres
74 74
 	 *                          que precisem ter uma certa duração.
75
-     * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
76
-     *                                         Se for nulo, ele busca a referencia da config.
75
+	 * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
76
+	 *                                         Se for nulo, ele busca a referencia da config.
77 77
 	 * @return array
78 78
 	 */
79 79
 	public function availableToday($duration = 0, $openingTime = null)
@@ -87,8 +87,8 @@  discard block
 block discarded – undo
87 87
 	 * @param  string|\Carbon\Carbon $date Data para o qual ele irá fazer a busca.
88 88
 	 * @param  int    $duration Serve para facilitar na hora de buscar horários livres
89 89
 	 *                          que precisem ter uma certa duração.
90
-     * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
91
-     *                                         Se for nulo, ele busca a referencia da config.
90
+	 * @param \Carbon\Carbon|null $openingTime Serve como referencia para buscar horários livres.
91
+	 *                                         Se for nulo, ele busca a referencia da config.
92 92
 	 * @return array
93 93
 	 */
94 94
 	public function availableOn($date, $duration = 0, $openingTime = null)
Please login to merge, or discard this patch.
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -31,21 +31,21 @@  discard block
 block discarded – undo
31 31
      * @param  string  $localKey
32 32
      * @return \Illuminate\Database\Eloquent\Relations\HasOne
33 33
      */
34
-    abstract public function hasOne($related, $foreignKey = null, $localKey = null);
34
+    abstract public function hasOne ($related, $foreignKey = null, $localKey = null);
35 35
 
36 36
 	/**
37 37
      * Get the value of the model's primary key.
38 38
      *
39 39
      * @return mixed
40 40
      */
41
-	abstract public function getKey();
41
+	abstract public function getKey ();
42 42
 
43 43
 	/**
44 44
      * Retorna apenas o horário que possui o mesmo [model_id] do [parent] dessa [trait].
45 45
      *
46 46
      * @return \Illuminate\Database\Eloquent\Relations\HasOne
47 47
      */
48
-	public function schedules()
48
+	public function schedules ()
49 49
 	{
50 50
 		return $this->hasOne(Config::get('scheduler.schedules_table'), 'model_id');
51 51
 	}
@@ -59,10 +59,10 @@  discard block
 block discarded – undo
59 59
 	 * @param  int|null $status	Status desse horário ao ser agendado.
60 60
 	 * @return \H4ad\Scheduler\Models\Schedule
61 61
 	 */
62
-	public function addSchedule($start_at, $end_at = null, $status = null)
62
+	public function addSchedule ($start_at, $end_at = null, $status = null)
63 63
 	{
64 64
 		$data = Scheduler::validateSchedule(self::class, $start_at, $end_at, $status);
65
-		$data['model_id'] = $this->getKey();
65
+		$data[ 'model_id' ] = $this->getKey();
66 66
 
67 67
 		return Schedule::create($data);
68 68
 	}
@@ -76,7 +76,7 @@  discard block
 block discarded – undo
76 76
      *                                         Se for nulo, ele busca a referencia da config.
77 77
 	 * @return array
78 78
 	 */
79
-	public function availableToday($duration = 0, $openingTime = null)
79
+	public function availableToday ($duration = 0, $openingTime = null)
80 80
 	{
81 81
 		return Scheduler::availableToday(self::class, $duration, $openingTime);
82 82
 	}
@@ -91,7 +91,7 @@  discard block
 block discarded – undo
91 91
      *                                         Se for nulo, ele busca a referencia da config.
92 92
 	 * @return array
93 93
 	 */
94
-	public function availableOn($date, $duration = 0, $openingTime = null)
94
+	public function availableOn ($date, $duration = 0, $openingTime = null)
95 95
 	{
96 96
 		return Scheduler::availableOn(self::class, $date, $duration, $openingTime);
97 97
 	}
@@ -108,17 +108,17 @@  discard block
 block discarded – undo
108 108
 	 * @throws \H4ad\Scheduler\Exceptions\CantRemoveByDate
109 109
 	 * @throws \H4ad\Scheduler\Exceptions\ModelNotFound
110 110
 	 */
111
-	public function removeSchedule($schedule)
111
+	public function removeSchedule ($schedule)
112 112
 	{
113
-		if(!Config::get('scheduler.enable_schedule_conflict') && !is_int($schedule))
113
+		if (!Config::get('scheduler.enable_schedule_conflict') && !is_int($schedule))
114 114
 			throw new CantRemoveByDate;
115 115
 
116 116
 		$schedule = Scheduler::parseToSchedule($schedule);
117 117
 
118
-		if(!($schedule instanceof Model))
118
+		if (!($schedule instanceof Model))
119 119
 			throw (new ModelNotFound)->setValues(Schedule::class);
120 120
 
121
-		if($schedule->model_type != self::class || $schedule->model_id != $this->getKey())
121
+		if ($schedule->model_type != self::class || $schedule->model_id != $this->getKey())
122 122
 			throw new DoesNotBelong;
123 123
 
124 124
 		return $schedule->delete();
Please login to merge, or discard this patch.
Braces   +9 added lines, -6 removed lines patch added patch discarded remove patch
@@ -110,16 +110,19 @@
 block discarded – undo
110 110
 	 */
111 111
 	public function removeSchedule($schedule)
112 112
 	{
113
-		if(!Config::get('scheduler.enable_schedule_conflict') && !is_int($schedule))
114
-			throw new CantRemoveByDate;
113
+		if(!Config::get('scheduler.enable_schedule_conflict') && !is_int($schedule)) {
114
+					throw new CantRemoveByDate;
115
+		}
115 116
 
116 117
 		$schedule = Scheduler::parseToSchedule($schedule);
117 118
 
118
-		if(!($schedule instanceof Model))
119
-			throw (new ModelNotFound)->setValues(Schedule::class);
119
+		if(!($schedule instanceof Model)) {
120
+					throw (new ModelNotFound)->setValues(Schedule::class);
121
+		}
120 122
 
121
-		if($schedule->model_type != self::class || $schedule->model_id != $this->getKey())
122
-			throw new DoesNotBelong;
123
+		if($schedule->model_type != self::class || $schedule->model_id != $this->getKey()) {
124
+					throw new DoesNotBelong;
125
+		}
123 126
 
124 127
 		return $schedule->delete();
125 128
 	}
Please login to merge, or discard this patch.