User.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. /* * ********************************************************************
  3. * ProxmoxVPS product developed. (Mar 14, 2018)
  4. * *
  5. *
  6. * CREATED BY MODULESGARDEN -> http://modulesgarden.com
  7. * CONTACT -> contact@modulesgarden.com
  8. *
  9. *
  10. * This software is furnished under a license and may be used and copied
  11. * only in accordance with the terms of such license and with the
  12. * inclusion of the above copyright notice. This software or any other
  13. * copies thereof may not be provided or otherwise made available to any
  14. * other person. No title to and ownership of the software is hereby
  15. * transferred.
  16. *
  17. *
  18. * ******************************************************************** */
  19. namespace ModulesGarden\ProxmoxAddon\App\Models;
  20. use ModulesGarden\ProxmoxAddon\Core\Models\ExtendedEloquentModel;
  21. /**
  22. * Description of User
  23. *
  24. * @author Pawel Kopec <pawelk@modulesgardne.com>
  25. * @property int $id
  26. * @property int $user_id
  27. * @property int $hosting_id
  28. * @property string $username
  29. * @property string $realm
  30. * @method static $this ofHostingId($hostingId)
  31. * @method $this ofUserId($userId)
  32. */
  33. class User extends ExtendedEloquentModel
  34. {
  35. protected $table = 'User';
  36. protected $guarded = ['id'];
  37. /**
  38. *
  39. * @var array
  40. */
  41. protected $fillable = ['user_id', 'hosting_id', 'username', 'password', 'realm'];
  42. protected $softDelete = false;
  43. public $timestamps = false;
  44. public function setPassword($password)
  45. {
  46. $this->password = encrypt($password);
  47. return $this;
  48. }
  49. public function getPassword()
  50. {
  51. return decrypt($this->password);
  52. }
  53. public function scopeOfHostingId($query, $hostingId)
  54. {
  55. return $query->where("hosting_id", $hostingId);
  56. }
  57. public function scopeOfUserId($query, $userId)
  58. {
  59. return $query->where("user_id", $userId);
  60. }
  61. }