Advertisement
Guest User

Untitled

a guest
Jan 16th, 2019
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.87 KB | None | 0 0
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Mateusz
  5. * Date: 2017-06-29
  6. * Time: 12:05
  7. */
  8.  
  9. namespace Models;
  10.  
  11. use Illuminate\Database\Eloquent\Model;
  12. use Models\AuthModel as Auth;
  13.  
  14. class UserModel extends Model
  15. {
  16. protected $table = 'account.account';
  17. protected $fillable = [
  18. 'login', 'password', 'email', 'social_id', 'pin'
  19. ];
  20.  
  21. static protected $user;
  22.  
  23. public $timestamps = false;
  24.  
  25. public static function getUserData()
  26. {
  27. $user = self::where('id', $_SESSION['user']['id'] ?? null)
  28. ->first();
  29.  
  30. if (!$user) {
  31. throw new \Exception('User not found');
  32. }
  33.  
  34. $_SESSION['user'] = clone $user;
  35. $_SESSION['user']['characters'] = $characters = PlayerModel::getUserCharacters($user->id)->toArray();
  36.  
  37. $_SESSION['user']['playtime'] = $playtime = array_sum(array_map(function ($character) {
  38. return $character['playtime'];
  39. }, $characters));
  40.  
  41. return $user;
  42. }
  43.  
  44. public static function grantCoins(int $user_id, int $amountCoins)
  45. {
  46. $user = self::find($user_id);
  47.  
  48.  
  49. if($user)
  50. {
  51. $user->cash = $user->cash + $amountCoins;
  52.  
  53. $user->save();
  54. }
  55. }
  56.  
  57. public static function refreshUserData(UserModel $user)
  58. {
  59. $_SESSION['user'] = $user;
  60. }
  61.  
  62. public static function changePassword($newPassword)
  63. {
  64. $user = self::getUserData();
  65. $user->password = Auth::hashPassword($newPassword);
  66. $user->save();
  67. }
  68.  
  69. public static function changeMail($newMail)
  70. {
  71. $user = self::getUserData();
  72. $user->email = $newMail;
  73. $user->save();
  74. }
  75.  
  76. public static function changeCode($code)
  77. {
  78. $user = self::getUserData();
  79. $user->social_id = $code;
  80. $user->save();
  81. }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement