Completed
Push — master ( 86ce89...cd8f65 )
by Sherif
03:43
created
src/Modules/V1/Acl/Repositories/UserRepository.php 1 patch
Indentation   +242 added lines, -242 removed lines patch added patch discarded remove patch
@@ -4,278 +4,278 @@
 block discarded – undo
4 4
 
5 5
 class UserRepository extends AbstractRepository
6 6
 {
7
-    /**
8
-     * Return the model full namespace.
9
-     * 
10
-     * @return string
11
-     */
12
-    protected function getModel()
13
-    {
14
-        return 'App\Modules\V1\Acl\AclUser';
15
-    }
7
+	/**
8
+	 * Return the model full namespace.
9
+	 * 
10
+	 * @return string
11
+	 */
12
+	protected function getModel()
13
+	{
14
+		return 'App\Modules\V1\Acl\AclUser';
15
+	}
16 16
 
17
-    /**
18
-     * Check if the logged in user or the given user 
19
-     * has the given permissions on the given model.
20
-     * 
21
-     * @param  string  $nameOfPermission
22
-     * @param  string  $model            
23
-     * @param  boolean $user
24
-     * @return boolean
25
-     */
26
-    public function can($nameOfPermission, $model, $user = false )
27
-    {      
28
-        $user        = $user ?: \JWTAuth::parseToken()->authenticate();
29
-        $permissions = [];
17
+	/**
18
+	 * Check if the logged in user or the given user 
19
+	 * has the given permissions on the given model.
20
+	 * 
21
+	 * @param  string  $nameOfPermission
22
+	 * @param  string  $model            
23
+	 * @param  boolean $user
24
+	 * @return boolean
25
+	 */
26
+	public function can($nameOfPermission, $model, $user = false )
27
+	{      
28
+		$user        = $user ?: \JWTAuth::parseToken()->authenticate();
29
+		$permissions = [];
30 30
 
31
-        if ( ! $user = $this->find($user->id, ['groups.permissions'])) 
32
-        {
33
-            \ErrorHandler::tokenExpired();
34
-        }
31
+		if ( ! $user = $this->find($user->id, ['groups.permissions'])) 
32
+		{
33
+			\ErrorHandler::tokenExpired();
34
+		}
35 35
 
36
-        $user->groups->lists('permissions')->each(function ($permission) use (&$permissions, $model){
37
-            $permissions = array_merge($permissions, $permission->where('model', $model)->lists('name')->toArray()); 
38
-        });
36
+		$user->groups->lists('permissions')->each(function ($permission) use (&$permissions, $model){
37
+			$permissions = array_merge($permissions, $permission->where('model', $model)->lists('name')->toArray()); 
38
+		});
39 39
         
40
-        return in_array($nameOfPermission, $permissions);
41
-    }
40
+		return in_array($nameOfPermission, $permissions);
41
+	}
42 42
 
43
-    /**
44
-     * Check if the logged in user has the given group.
45
-     * 
46
-     * @param  string  $groupName
47
-     * @return boolean
48
-     */
49
-    public function hasGroup($groupName)
50
-    {
51
-        $groups = $this->find(\JWTAuth::parseToken()->authenticate()->id)->groups;
52
-        return $groups->lists('name')->search($groupName, true) === false ? false : true;
53
-    }
43
+	/**
44
+	 * Check if the logged in user has the given group.
45
+	 * 
46
+	 * @param  string  $groupName
47
+	 * @return boolean
48
+	 */
49
+	public function hasGroup($groupName)
50
+	{
51
+		$groups = $this->find(\JWTAuth::parseToken()->authenticate()->id)->groups;
52
+		return $groups->lists('name')->search($groupName, true) === false ? false : true;
53
+	}
54 54
 
55
-    /**
56
-     * Assign the given group ids to the given user.
57
-     * 
58
-     * @param  integer $user_id    
59
-     * @param  array   $group_ids
60
-     * @return object
61
-     */
62
-    public function assignGroups($user_id, $group_ids)
63
-    {
64
-        \DB::transaction(function () use ($user_id, $group_ids) {
65
-            $user = $this->find($user_id);
66
-            $user->groups()->detach();
67
-            $user->groups()->attach($group_ids);
68
-        });
55
+	/**
56
+	 * Assign the given group ids to the given user.
57
+	 * 
58
+	 * @param  integer $user_id    
59
+	 * @param  array   $group_ids
60
+	 * @return object
61
+	 */
62
+	public function assignGroups($user_id, $group_ids)
63
+	{
64
+		\DB::transaction(function () use ($user_id, $group_ids) {
65
+			$user = $this->find($user_id);
66
+			$user->groups()->detach();
67
+			$user->groups()->attach($group_ids);
68
+		});
69 69
 
70
-        return $this->find($user_id);
71
-    }
70
+		return $this->find($user_id);
71
+	}
72 72
 
73
-    /**
74
-     * Handle a login request to the application.
75
-     * 
76
-     * @param  array   $credentials    
77
-     * @param  boolean $adminLogin
78
-     * @return string
79
-     */
80
-    public function login($credentials, $adminLogin = false)
81
-    {
82
-        if ( ! $user = $this->first(['email' => $credentials['email']])) 
83
-        {
84
-            \ErrorHandler::loginFailed();
85
-        }
86
-        else if ($adminLogin && $user->groups->lists('name')->search('Admin', true) === false) 
87
-        {
88
-            \ErrorHandler::loginFailed();
89
-        }
90
-        else if ( ! $adminLogin && $user->groups->lists('name')->search('Admin', true) !== false) 
91
-        {
92
-            \ErrorHandler::loginFailed();
93
-        }
94
-        else if ($user->blocked)
95
-        {
96
-            \ErrorHandler::userIsBlocked();
97
-        }
98
-        else if ($token = \JWTAuth::attempt($credentials))
99
-        {
100
-            return ['token' => $token];
101
-        }
102
-        else
103
-        {
104
-            \ErrorHandler::loginFailed();
105
-        }
106
-    }
73
+	/**
74
+	 * Handle a login request to the application.
75
+	 * 
76
+	 * @param  array   $credentials    
77
+	 * @param  boolean $adminLogin
78
+	 * @return string
79
+	 */
80
+	public function login($credentials, $adminLogin = false)
81
+	{
82
+		if ( ! $user = $this->first(['email' => $credentials['email']])) 
83
+		{
84
+			\ErrorHandler::loginFailed();
85
+		}
86
+		else if ($adminLogin && $user->groups->lists('name')->search('Admin', true) === false) 
87
+		{
88
+			\ErrorHandler::loginFailed();
89
+		}
90
+		else if ( ! $adminLogin && $user->groups->lists('name')->search('Admin', true) !== false) 
91
+		{
92
+			\ErrorHandler::loginFailed();
93
+		}
94
+		else if ($user->blocked)
95
+		{
96
+			\ErrorHandler::userIsBlocked();
97
+		}
98
+		else if ($token = \JWTAuth::attempt($credentials))
99
+		{
100
+			return ['token' => $token];
101
+		}
102
+		else
103
+		{
104
+			\ErrorHandler::loginFailed();
105
+		}
106
+	}
107 107
 
108
-    /**
109
-     * Handle a social login request of the none admin to the application.
110
-     * 
111
-     * @param  array   $credentials
112
-     * @return string
113
-     */
114
-    public function loginSocial($credentials)
115
-    {
116
-        $access_token = $credentials['auth_code'] ? \Socialite::driver($credentials['type'])->getAccessToken($credentials['auth_code']) : $credentials['access_token'];   
117
-        $user         = \Socialite::driver($credentials['type'])->userFromToken($access_token);
108
+	/**
109
+	 * Handle a social login request of the none admin to the application.
110
+	 * 
111
+	 * @param  array   $credentials
112
+	 * @return string
113
+	 */
114
+	public function loginSocial($credentials)
115
+	{
116
+		$access_token = $credentials['auth_code'] ? \Socialite::driver($credentials['type'])->getAccessToken($credentials['auth_code']) : $credentials['access_token'];   
117
+		$user         = \Socialite::driver($credentials['type'])->userFromToken($access_token);
118 118
 
119
-        if ( ! $user->email)
120
-        {
121
-            \ErrorHandler::noSocialEmail();
122
-        }
119
+		if ( ! $user->email)
120
+		{
121
+			\ErrorHandler::noSocialEmail();
122
+		}
123 123
 
124
-        if ( ! $registeredUser = $this->model->where('email', $user->email)->first()) 
125
-        {
126
-            $data = ['email' => $user->email, 'password' => ''];
127
-            return $this->register($data);
128
-        }
129
-        else
130
-        {
131
-            if ( ! \Auth::attempt(['email' => $registeredUser->email, 'password' => '']))
132
-            {
133
-                \ErrorHandler::userAlreadyRegistered();
134
-            }
135
-            return $this->login(['email' => $registeredUser->email, 'password' => ''], false);
136
-        }
137
-    }
124
+		if ( ! $registeredUser = $this->model->where('email', $user->email)->first()) 
125
+		{
126
+			$data = ['email' => $user->email, 'password' => ''];
127
+			return $this->register($data);
128
+		}
129
+		else
130
+		{
131
+			if ( ! \Auth::attempt(['email' => $registeredUser->email, 'password' => '']))
132
+			{
133
+				\ErrorHandler::userAlreadyRegistered();
134
+			}
135
+			return $this->login(['email' => $registeredUser->email, 'password' => ''], false);
136
+		}
137
+	}
138 138
     
139
-    /**
140
-     * Handle a registration request.
141
-     * 
142
-     * @param  array $credentials
143
-     * @return string
144
-     */
145
-    public function register($credentials)
146
-    {
147
-        return ['token' => \JWTAuth::fromUser($this->model->create($credentials))];
148
-    }
139
+	/**
140
+	 * Handle a registration request.
141
+	 * 
142
+	 * @param  array $credentials
143
+	 * @return string
144
+	 */
145
+	public function register($credentials)
146
+	{
147
+		return ['token' => \JWTAuth::fromUser($this->model->create($credentials))];
148
+	}
149 149
 
150
-    /**
151
-     * Logout the user.
152
-     * 
153
-     * @return boolean
154
-     */
155
-    public function logout()
156
-    {
157
-        return \JWTAuth::invalidate(\JWTAuth::getToken());
158
-    }
150
+	/**
151
+	 * Logout the user.
152
+	 * 
153
+	 * @return boolean
154
+	 */
155
+	public function logout()
156
+	{
157
+		return \JWTAuth::invalidate(\JWTAuth::getToken());
158
+	}
159 159
 
160
-    /**
161
-     * Block the user.
162
-     *
163
-     * @param  integer $user_id
164
-     * @return object
165
-     */
166
-    public function block($user_id)
167
-    {
168
-        if ( ! $user = $this->find($user_id)) 
169
-        {
170
-            \ErrorHandler::notFound('user');
171
-        }
172
-        if ( ! $this->hasGroup('Admin'))
173
-        {
174
-            \ErrorHandler::noPermissions();
175
-        }
176
-        else if (\JWTAuth::parseToken()->authenticate()->id == $user_id)
177
-        {
178
-            \ErrorHandler::noPermissions();
179
-        }
180
-        else if ($user->groups->lists('name')->search('Admin', true) !== false) 
181
-        {
182
-            \ErrorHandler::noPermissions();
183
-        }
160
+	/**
161
+	 * Block the user.
162
+	 *
163
+	 * @param  integer $user_id
164
+	 * @return object
165
+	 */
166
+	public function block($user_id)
167
+	{
168
+		if ( ! $user = $this->find($user_id)) 
169
+		{
170
+			\ErrorHandler::notFound('user');
171
+		}
172
+		if ( ! $this->hasGroup('Admin'))
173
+		{
174
+			\ErrorHandler::noPermissions();
175
+		}
176
+		else if (\JWTAuth::parseToken()->authenticate()->id == $user_id)
177
+		{
178
+			\ErrorHandler::noPermissions();
179
+		}
180
+		else if ($user->groups->lists('name')->search('Admin', true) !== false) 
181
+		{
182
+			\ErrorHandler::noPermissions();
183
+		}
184 184
 
185
-        $user->blocked = 1;
186
-        $user->save();
185
+		$user->blocked = 1;
186
+		$user->save();
187 187
         
188
-        return $user;
189
-    }
188
+		return $user;
189
+	}
190 190
 
191
-    /**
192
-     * Unblock the user.
193
-     *
194
-     * @param  integer $user_id
195
-     * @return object
196
-     */
197
-    public function unblock($user_id)
198
-    {
199
-        if ( ! $this->hasGroup('Admin'))
200
-        {
201
-            \ErrorHandler::noPermissions();
202
-        }
191
+	/**
192
+	 * Unblock the user.
193
+	 *
194
+	 * @param  integer $user_id
195
+	 * @return object
196
+	 */
197
+	public function unblock($user_id)
198
+	{
199
+		if ( ! $this->hasGroup('Admin'))
200
+		{
201
+			\ErrorHandler::noPermissions();
202
+		}
203 203
 
204
-        $user          = $this->find($user_id);
205
-        $user->blocked = 0;
206
-        $user->save();
204
+		$user          = $this->find($user_id);
205
+		$user->blocked = 0;
206
+		$user->save();
207 207
 
208
-        return $user;
209
-    }
208
+		return $user;
209
+	}
210 210
 
211
-    /**
212
-     * Send a reset link to the given user.
213
-     *
214
-     * @param  string  $url
215
-     * @param  string  $email
216
-     * @return void
217
-     */
218
-    public function sendReset($email, $url)
219
-    {
220
-        view()->composer('auth.emails.password', function($view) use ($url) {
221
-            $view->with(['url' => $url]);
222
-        });
211
+	/**
212
+	 * Send a reset link to the given user.
213
+	 *
214
+	 * @param  string  $url
215
+	 * @param  string  $email
216
+	 * @return void
217
+	 */
218
+	public function sendReset($email, $url)
219
+	{
220
+		view()->composer('auth.emails.password', function($view) use ($url) {
221
+			$view->with(['url' => $url]);
222
+		});
223 223
 
224
-        $response = \Password::sendResetLink($email, function (\Illuminate\Mail\Message $message) {
225
-            $message->subject('Your Password Reset Link');
226
-        });
224
+		$response = \Password::sendResetLink($email, function (\Illuminate\Mail\Message $message) {
225
+			$message->subject('Your Password Reset Link');
226
+		});
227 227
 
228
-        switch ($response) 
229
-        {
230
-            case \Password::INVALID_USER:
231
-                \ErrorHandler::notFound('email');
232
-        }
233
-    }
228
+		switch ($response) 
229
+		{
230
+			case \Password::INVALID_USER:
231
+				\ErrorHandler::notFound('email');
232
+		}
233
+	}
234 234
 
235
-    /**
236
-     * Reset the given user's password.
237
-     *
238
-     * @param  array  $credentials
239
-     * @return integer
240
-     */
241
-    public function resetPassword($credentials)
242
-    {
243
-        $token    = false;
244
-        $response = \Password::reset($credentials, function ($user, $password) use (&$token) {
245
-            $user->password = bcrypt($password);
246
-            $user->save();
235
+	/**
236
+	 * Reset the given user's password.
237
+	 *
238
+	 * @param  array  $credentials
239
+	 * @return integer
240
+	 */
241
+	public function resetPassword($credentials)
242
+	{
243
+		$token    = false;
244
+		$response = \Password::reset($credentials, function ($user, $password) use (&$token) {
245
+			$user->password = bcrypt($password);
246
+			$user->save();
247 247
 
248
-            $token = \JWTAuth::fromUser($user);
249
-        });
248
+			$token = \JWTAuth::fromUser($user);
249
+		});
250 250
 
251 251
 
252
-        switch ($response) {
253
-            case \Password::PASSWORD_RESET:
254
-                return $token;
252
+		switch ($response) {
253
+			case \Password::PASSWORD_RESET:
254
+				return $token;
255 255
                 
256
-            case \Password::INVALID_TOKEN:
257
-                \ErrorHandler::invalidResetToken();
256
+			case \Password::INVALID_TOKEN:
257
+				\ErrorHandler::invalidResetToken();
258 258
 
259
-            case \Password::INVALID_PASSWORD:
260
-                \ErrorHandler::invalidResetPassword();
259
+			case \Password::INVALID_PASSWORD:
260
+				\ErrorHandler::invalidResetPassword();
261 261
 
262
-            case \Password::INVALID_USER:
263
-                \ErrorHandler::notFound('user');
262
+			case \Password::INVALID_USER:
263
+				\ErrorHandler::notFound('user');
264 264
 
265
-            default:
266
-                \ErrorHandler::generalError();
267
-        }
268
-    }
265
+			default:
266
+				\ErrorHandler::generalError();
267
+		}
268
+	}
269 269
 
270
-    /**
271
-     * Refresh the expired login token.
272
-     *
273
-     * @return string
274
-     */
275
-    public function refreshtoken()
276
-    {
277
-        $token = \JWTAuth::parseToken()->refresh();
270
+	/**
271
+	 * Refresh the expired login token.
272
+	 *
273
+	 * @return string
274
+	 */
275
+	public function refreshtoken()
276
+	{
277
+		$token = \JWTAuth::parseToken()->refresh();
278 278
 
279
-        return ['token' => $token];
280
-    }
279
+		return ['token' => $token];
280
+	}
281 281
 }
Please login to merge, or discard this patch.
src/Modules/V1/Acl/Http/Controllers/AclBaseController.php 1 patch
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -8,8 +8,8 @@
 block discarded – undo
8 8
 
9 9
 class AclBaseController extends BaseApiController
10 10
 {
11
-    public function __construct()
12
-    {
13
-        parent::__construct();
14
-    }
11
+	public function __construct()
12
+	{
13
+		parent::__construct();
14
+	}
15 15
 }
Please login to merge, or discard this patch.
src/ApiSkeletonServiceProvider.php 1 patch
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -6,27 +6,27 @@
 block discarded – undo
6 6
 
7 7
 class ApiSkeletonServiceProvider extends ServiceProvider
8 8
 {
9
-    /**
10
-     * Perform post-registration booting of services.
11
-     *
12
-     * @return void
13
-     */
14
-    public function boot()
15
-    {
16
-        $this->publishes([
17
-            __DIR__.'/Modules'               => app_path('Modules'),
18
-            __DIR__.'/Modules/V1/Acl/emails' => base_path('resources/views/auth/emails'),
19
-            __DIR__.'/lang'                  => base_path('resources/lang'),
20
-            ]);
21
-    }
9
+	/**
10
+	 * Perform post-registration booting of services.
11
+	 *
12
+	 * @return void
13
+	 */
14
+	public function boot()
15
+	{
16
+		$this->publishes([
17
+			__DIR__.'/Modules'               => app_path('Modules'),
18
+			__DIR__.'/Modules/V1/Acl/emails' => base_path('resources/views/auth/emails'),
19
+			__DIR__.'/lang'                  => base_path('resources/lang'),
20
+			]);
21
+	}
22 22
 
23
-    /**
24
-     * Register any package services.
25
-     *
26
-     * @return void
27
-     */
28
-    public function register()
29
-    {
30
-        //
31
-    }
23
+	/**
24
+	 * Register any package services.
25
+	 *
26
+	 * @return void
27
+	 */
28
+	public function register()
29
+	{
30
+		//
31
+	}
32 32
 }
33 33
\ No newline at end of file
Please login to merge, or discard this patch.
src/lang/ar/pagination.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@  discard block
 block discarded – undo
2 2
 
3 3
 return [
4 4
 
5
-    /*
5
+	/*
6 6
     |--------------------------------------------------------------------------
7 7
     | Pagination Language Lines
8 8
     |--------------------------------------------------------------------------
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
     |
14 14
     */
15 15
 
16
-    'previous' => '« السابق',
17
-    'next'     => 'التالي »',
16
+	'previous' => '« السابق',
17
+	'next'     => 'التالي »',
18 18
 
19 19
 ];
Please login to merge, or discard this patch.
src/lang/ar/auth.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@  discard block
 block discarded – undo
2 2
 
3 3
 return [
4 4
 
5
-    /*
5
+	/*
6 6
     |--------------------------------------------------------------------------
7 7
     | Authentication Language Lines
8 8
     |--------------------------------------------------------------------------
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
     |
14 14
     */
15 15
 
16
-    'failed'   => 'بيانات الاعتماد هذه غير متطابقة مع البيانات المسجلة لدينا.',
17
-    'throttle' => 'عدد كبير جدا من محاولات الدخول. يرجى المحاولة مرة أخرى بعد :seconds ثانية.',
16
+	'failed'   => 'بيانات الاعتماد هذه غير متطابقة مع البيانات المسجلة لدينا.',
17
+	'throttle' => 'عدد كبير جدا من محاولات الدخول. يرجى المحاولة مرة أخرى بعد :seconds ثانية.',
18 18
 
19 19
 ];
Please login to merge, or discard this patch.
src/lang/ar/passwords.php 1 patch
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@  discard block
 block discarded – undo
2 2
 
3 3
 return [
4 4
 
5
-    /*
5
+	/*
6 6
     |--------------------------------------------------------------------------
7 7
     | Password Reminder Language Lines
8 8
     |--------------------------------------------------------------------------
@@ -13,10 +13,10 @@  discard block
 block discarded – undo
13 13
     |
14 14
     */
15 15
 
16
-    'password' => 'يجب أن لا يقل طول كلمة السر عن ستة أحرف، كما يجب أن تتطابق مع حقل التأكيد',
17
-    'reset'    => 'تمت إعادة تعيين كلمة السر',
18
-    'sent'     => 'تم إرسال تفاصيل استعادة كلمة السر الخاصة بك إلى بريدك الإلكتروني',
19
-    'token'    => '.رمز استعادة كلمة السر الذي أدخلته غير صحيح',
20
-    'user'     => 'لم يتم العثور على أيّ حسابٍ بهذا العنوان الإلكتروني',
16
+	'password' => 'يجب أن لا يقل طول كلمة السر عن ستة أحرف، كما يجب أن تتطابق مع حقل التأكيد',
17
+	'reset'    => 'تمت إعادة تعيين كلمة السر',
18
+	'sent'     => 'تم إرسال تفاصيل استعادة كلمة السر الخاصة بك إلى بريدك الإلكتروني',
19
+	'token'    => '.رمز استعادة كلمة السر الذي أدخلته غير صحيح',
20
+	'user'     => 'لم يتم العثور على أيّ حسابٍ بهذا العنوان الإلكتروني',
21 21
 
22 22
 ];
Please login to merge, or discard this patch.
src/lang/ar/validation.php 1 patch
Indentation   +107 added lines, -107 removed lines patch added patch discarded remove patch
@@ -2,7 +2,7 @@  discard block
 block discarded – undo
2 2
 
3 3
 return [
4 4
 
5
-    /*
5
+	/*
6 6
     |--------------------------------------------------------------------------
7 7
     | Validation Language Lines
8 8
     |--------------------------------------------------------------------------
@@ -13,76 +13,76 @@  discard block
 block discarded – undo
13 13
     |
14 14
     */
15 15
 
16
-    'accepted'             => 'يجب قبول الحقل :attribute',
17
-    'active_url'           => 'الحقل :attribute لا يُمثّل رابطًا صحيحًا',
18
-    'after'                => 'يجب على الحقل :attribute أن يكون تاريخًا لاحقًا للتاريخ :date.',
19
-    'alpha'                => 'يجب أن لا يحتوي الحقل :attribute سوى على حروف',
20
-    'alpha_dash'           => 'يجب أن لا يحتوي الحقل :attribute على حروف، أرقام ومطّات.',
21
-    'alpha_num'            => 'يجب أن يحتوي :attribute على حروفٍ وأرقامٍ فقط',
22
-    'array'                => 'يجب أن يكون الحقل :attribute ًمصفوفة',
23
-    'before'               => 'يجب على الحقل :attribute أن يكون تاريخًا سابقًا للتاريخ :date.',
24
-    'between'              => [
25
-        'numeric' => 'يجب أن تكون قيمة :attribute محصورة ما بين :min و :max.',
26
-        'file'    => 'يجب أن يكون حجم الملف :attribute محصورًا ما بين :min و :max كيلوبايت.',
27
-        'string'  => 'يجب أن يكون عدد حروف النّص :attribute محصورًا ما بين :min و :max',
28
-        'array'   => 'يجب أن يحتوي :attribute على عدد من العناصر محصورًا ما بين :min و :max',
29
-    ],
30
-    'boolean'              => 'يجب أن تكون قيمة الحقل :attribute إما true أو false ',
31
-    'confirmed'            => 'حقل التأكيد غير مُطابق للحقل :attribute',
32
-    'date'                 => 'الحقل :attribute ليس تاريخًا صحيحًا',
33
-    'date_format'          => 'لا يتوافق الحقل :attribute مع الشكل :format.',
34
-    'different'            => 'يجب أن يكون الحقلان :attribute و :other مُختلفان',
35
-    'digits'               => 'يجب أن يحتوي الحقل :attribute على :digits رقمًا/أرقام',
36
-    'digits_between'       => 'يجب أن يحتوي الحقل :attribute ما بين :min و :max رقمًا/أرقام ',
37
-    'dimensions'           => 'The :attribute has invalid image dimensions.',
38
-    'distinct'             => 'للحقل :attribute قيمة مُكرّرة.',
39
-    'email'                => 'يجب أن يكون :attribute عنوان بريد إلكتروني صحيح البُنية',
40
-    'exists'               => 'الحقل :attribute لاغٍ',
41
-    'file'                 => 'The :attribute must be a file.',
42
-    'filled'               => 'الحقل :attribute إجباري',
43
-    'image'                => 'يجب أن يكون الحقل :attribute صورةً',
44
-    'in'                   => 'الحقل :attribute لاغٍ',
45
-    'in_array'             => 'الحقل :attribute غير موجود في :other.',
46
-    'integer'              => 'يجب أن يكون الحقل :attribute عددًا صحيحًا',
47
-    'ip'                   => 'يجب أن يكون الحقل :attribute عنوان IP ذي بُنية صحيحة',
48
-    'json'                 => 'يجب أن يكون الحقل :attribute نصآ من نوع JSON.',
49
-    'max'                  => [
50
-        'numeric' => 'يجب أن تكون قيمة الحقل :attribute أصغر من :max.',
51
-        'file'    => 'يجب أن يكون حجم الملف :attribute أصغر من :max كيلوبايت',
52
-        'string'  => 'يجب أن لا يتجاوز طول النّص :attribute :max حروفٍ/حرفًا',
53
-        'array'   => 'يجب أن لا يحتوي الحقل :attribute على أكثر من :max عناصر/عنصر.',
54
-    ],
55
-    'mimes'                => 'يجب أن يكون الحقل ملفًا من نوع : :values.',
56
-    'min'                  => [
57
-        'numeric' => 'يجب أن تكون قيمة الحقل :attribute أكبر من :min.',
58
-        'file'    => 'يجب أن يكون حجم الملف :attribute أكبر من :min كيلوبايت',
59
-        'string'  => 'يجب أن يكون طول النص :attribute أكبر من :min حروفٍ/حرفًا',
60
-        'array'   => 'يجب أن يحتوي الحقل :attribute على الأقل على :min عُنصرًا/عناصر',
61
-    ],
62
-    'not_in'               => 'الحقل :attribute لاغٍ',
63
-    'numeric'              => 'يجب على الحقل :attribute أن يكون رقمًا',
64
-    'present'              => 'The :attribute field must be present.',
65
-    'regex'                => 'صيغة الحقل :attribute .غير صحيحة',
66
-    'required'             => 'الحقل :attribute مطلوب.',
67
-    'required_if'          => 'الحقل :attribute مطلوب في حال ما إذا كان :other يساوي :value.',
68
-    'required_unless'      => 'الحقل :attribute مطلوب في حال ما لم يكن :other يساوي :values.',
69
-    'required_with'        => 'الحقل :attribute إذا توفّر :values.',
70
-    'required_with_all'    => 'الحقل :attribute إذا توفّر :values.',
71
-    'required_without'     => 'الحقل :attribute إذا لم يتوفّر :values.',
72
-    'required_without_all' => 'الحقل :attribute إذا لم يتوفّر :values.',
73
-    'same'                 => 'يجب أن يتطابق الحقل :attribute مع :other',
74
-    'size'                 => [
75
-        'numeric' => 'يجب أن تكون قيمة :attribute أكبر من :size.',
76
-        'file'    => 'يجب أن يكون حجم الملف :attribute أكبر من :size كيلو بايت.',
77
-        'string'  => 'يجب أن يحتوي النص :attribute عن ما لا يقل عن  :size حرفٍ/أحرف.',
78
-        'array'   => 'يجب أن يحتوي الحقل :attribute عن ما لا يقل عن:min عنصرٍ/عناصر',
79
-    ],
80
-    'string'               => 'يجب أن يكون الحقل :attribute نصآ.',
81
-    'timezone'             => 'يجب أن يكون :attribute نطاقًا زمنيًا صحيحًا',
82
-    'unique'               => 'قيمة الحقل :attribute مُستخدمة من قبل',
83
-    'url'                  => 'صيغة الرابط :attribute غير صحيحة',
16
+	'accepted'             => 'يجب قبول الحقل :attribute',
17
+	'active_url'           => 'الحقل :attribute لا يُمثّل رابطًا صحيحًا',
18
+	'after'                => 'يجب على الحقل :attribute أن يكون تاريخًا لاحقًا للتاريخ :date.',
19
+	'alpha'                => 'يجب أن لا يحتوي الحقل :attribute سوى على حروف',
20
+	'alpha_dash'           => 'يجب أن لا يحتوي الحقل :attribute على حروف، أرقام ومطّات.',
21
+	'alpha_num'            => 'يجب أن يحتوي :attribute على حروفٍ وأرقامٍ فقط',
22
+	'array'                => 'يجب أن يكون الحقل :attribute ًمصفوفة',
23
+	'before'               => 'يجب على الحقل :attribute أن يكون تاريخًا سابقًا للتاريخ :date.',
24
+	'between'              => [
25
+		'numeric' => 'يجب أن تكون قيمة :attribute محصورة ما بين :min و :max.',
26
+		'file'    => 'يجب أن يكون حجم الملف :attribute محصورًا ما بين :min و :max كيلوبايت.',
27
+		'string'  => 'يجب أن يكون عدد حروف النّص :attribute محصورًا ما بين :min و :max',
28
+		'array'   => 'يجب أن يحتوي :attribute على عدد من العناصر محصورًا ما بين :min و :max',
29
+	],
30
+	'boolean'              => 'يجب أن تكون قيمة الحقل :attribute إما true أو false ',
31
+	'confirmed'            => 'حقل التأكيد غير مُطابق للحقل :attribute',
32
+	'date'                 => 'الحقل :attribute ليس تاريخًا صحيحًا',
33
+	'date_format'          => 'لا يتوافق الحقل :attribute مع الشكل :format.',
34
+	'different'            => 'يجب أن يكون الحقلان :attribute و :other مُختلفان',
35
+	'digits'               => 'يجب أن يحتوي الحقل :attribute على :digits رقمًا/أرقام',
36
+	'digits_between'       => 'يجب أن يحتوي الحقل :attribute ما بين :min و :max رقمًا/أرقام ',
37
+	'dimensions'           => 'The :attribute has invalid image dimensions.',
38
+	'distinct'             => 'للحقل :attribute قيمة مُكرّرة.',
39
+	'email'                => 'يجب أن يكون :attribute عنوان بريد إلكتروني صحيح البُنية',
40
+	'exists'               => 'الحقل :attribute لاغٍ',
41
+	'file'                 => 'The :attribute must be a file.',
42
+	'filled'               => 'الحقل :attribute إجباري',
43
+	'image'                => 'يجب أن يكون الحقل :attribute صورةً',
44
+	'in'                   => 'الحقل :attribute لاغٍ',
45
+	'in_array'             => 'الحقل :attribute غير موجود في :other.',
46
+	'integer'              => 'يجب أن يكون الحقل :attribute عددًا صحيحًا',
47
+	'ip'                   => 'يجب أن يكون الحقل :attribute عنوان IP ذي بُنية صحيحة',
48
+	'json'                 => 'يجب أن يكون الحقل :attribute نصآ من نوع JSON.',
49
+	'max'                  => [
50
+		'numeric' => 'يجب أن تكون قيمة الحقل :attribute أصغر من :max.',
51
+		'file'    => 'يجب أن يكون حجم الملف :attribute أصغر من :max كيلوبايت',
52
+		'string'  => 'يجب أن لا يتجاوز طول النّص :attribute :max حروفٍ/حرفًا',
53
+		'array'   => 'يجب أن لا يحتوي الحقل :attribute على أكثر من :max عناصر/عنصر.',
54
+	],
55
+	'mimes'                => 'يجب أن يكون الحقل ملفًا من نوع : :values.',
56
+	'min'                  => [
57
+		'numeric' => 'يجب أن تكون قيمة الحقل :attribute أكبر من :min.',
58
+		'file'    => 'يجب أن يكون حجم الملف :attribute أكبر من :min كيلوبايت',
59
+		'string'  => 'يجب أن يكون طول النص :attribute أكبر من :min حروفٍ/حرفًا',
60
+		'array'   => 'يجب أن يحتوي الحقل :attribute على الأقل على :min عُنصرًا/عناصر',
61
+	],
62
+	'not_in'               => 'الحقل :attribute لاغٍ',
63
+	'numeric'              => 'يجب على الحقل :attribute أن يكون رقمًا',
64
+	'present'              => 'The :attribute field must be present.',
65
+	'regex'                => 'صيغة الحقل :attribute .غير صحيحة',
66
+	'required'             => 'الحقل :attribute مطلوب.',
67
+	'required_if'          => 'الحقل :attribute مطلوب في حال ما إذا كان :other يساوي :value.',
68
+	'required_unless'      => 'الحقل :attribute مطلوب في حال ما لم يكن :other يساوي :values.',
69
+	'required_with'        => 'الحقل :attribute إذا توفّر :values.',
70
+	'required_with_all'    => 'الحقل :attribute إذا توفّر :values.',
71
+	'required_without'     => 'الحقل :attribute إذا لم يتوفّر :values.',
72
+	'required_without_all' => 'الحقل :attribute إذا لم يتوفّر :values.',
73
+	'same'                 => 'يجب أن يتطابق الحقل :attribute مع :other',
74
+	'size'                 => [
75
+		'numeric' => 'يجب أن تكون قيمة :attribute أكبر من :size.',
76
+		'file'    => 'يجب أن يكون حجم الملف :attribute أكبر من :size كيلو بايت.',
77
+		'string'  => 'يجب أن يحتوي النص :attribute عن ما لا يقل عن  :size حرفٍ/أحرف.',
78
+		'array'   => 'يجب أن يحتوي الحقل :attribute عن ما لا يقل عن:min عنصرٍ/عناصر',
79
+	],
80
+	'string'               => 'يجب أن يكون الحقل :attribute نصآ.',
81
+	'timezone'             => 'يجب أن يكون :attribute نطاقًا زمنيًا صحيحًا',
82
+	'unique'               => 'قيمة الحقل :attribute مُستخدمة من قبل',
83
+	'url'                  => 'صيغة الرابط :attribute غير صحيحة',
84 84
 
85
-    /*
85
+	/*
86 86
     |--------------------------------------------------------------------------
87 87
     | Custom Validation Language Lines
88 88
     |--------------------------------------------------------------------------
@@ -93,13 +93,13 @@  discard block
 block discarded – undo
93 93
     |
94 94
     */
95 95
 
96
-    'custom'               => [
97
-        'attribute-name' => [
98
-            'rule-name' => 'custom-message',
99
-        ],
100
-    ],
96
+	'custom'               => [
97
+		'attribute-name' => [
98
+			'rule-name' => 'custom-message',
99
+		],
100
+	],
101 101
 
102
-    /*
102
+	/*
103 103
     |--------------------------------------------------------------------------
104 104
     | Custom Validation Attributes
105 105
     |--------------------------------------------------------------------------
@@ -110,36 +110,36 @@  discard block
 block discarded – undo
110 110
     |
111 111
     */
112 112
 
113
-    'attributes'           => [
114
-        'name'                  => 'الاسم',
115
-        'username'              => 'اسم المُستخدم',
116
-        'email'                 => 'البريد الالكتروني',
117
-        'first_name'            => 'الاسم',
118
-        'last_name'             => 'اسم العائلة',
119
-        'password'              => 'كلمة السر',
120
-        'password_confirmation' => 'تأكيد كلمة السر',
121
-        'city'                  => 'المدينة',
122
-        'country'               => 'الدولة',
123
-        'address'               => 'العنوان',
124
-        'phone'                 => 'الهاتف',
125
-        'mobile'                => 'الجوال',
126
-        'age'                   => 'العمر',
127
-        'sex'                   => 'الجنس',
128
-        'gender'                => 'النوع',
129
-        'day'                   => 'اليوم',
130
-        'month'                 => 'الشهر',
131
-        'year'                  => 'السنة',
132
-        'hour'                  => 'ساعة',
133
-        'minute'                => 'دقيقة',
134
-        'second'                => 'ثانية',
135
-        'title'                 => 'اللقب',
136
-        'content'               => 'المُحتوى',
137
-        'description'           => 'الوصف',
138
-        'excerpt'               => 'المُلخص',
139
-        'date'                  => 'التاريخ',
140
-        'time'                  => 'الوقت',
141
-        'available'             => 'مُتاح',
142
-        'size'                  => 'الحجم',
143
-    ],
113
+	'attributes'           => [
114
+		'name'                  => 'الاسم',
115
+		'username'              => 'اسم المُستخدم',
116
+		'email'                 => 'البريد الالكتروني',
117
+		'first_name'            => 'الاسم',
118
+		'last_name'             => 'اسم العائلة',
119
+		'password'              => 'كلمة السر',
120
+		'password_confirmation' => 'تأكيد كلمة السر',
121
+		'city'                  => 'المدينة',
122
+		'country'               => 'الدولة',
123
+		'address'               => 'العنوان',
124
+		'phone'                 => 'الهاتف',
125
+		'mobile'                => 'الجوال',
126
+		'age'                   => 'العمر',
127
+		'sex'                   => 'الجنس',
128
+		'gender'                => 'النوع',
129
+		'day'                   => 'اليوم',
130
+		'month'                 => 'الشهر',
131
+		'year'                  => 'السنة',
132
+		'hour'                  => 'ساعة',
133
+		'minute'                => 'دقيقة',
134
+		'second'                => 'ثانية',
135
+		'title'                 => 'اللقب',
136
+		'content'               => 'المُحتوى',
137
+		'description'           => 'الوصف',
138
+		'excerpt'               => 'المُلخص',
139
+		'date'                  => 'التاريخ',
140
+		'time'                  => 'الوقت',
141
+		'available'             => 'مُتاح',
142
+		'size'                  => 'الحجم',
143
+	],
144 144
 
145 145
 ];
Please login to merge, or discard this patch.