HomeController.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\UsefulLink;
  4. use App\Models\Configuration;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Facades\Auth;
  7. class HomeController extends Controller
  8. {
  9. public function __construct()
  10. {
  11. $this->middleware('auth');
  12. }
  13. /** Show the application dashboard. */
  14. public function index(Request $request)
  15. {
  16. $usage = 0;
  17. foreach (Auth::user()->servers as $server){
  18. $usage += $server->product->price;
  19. }
  20. return view('home')->with([
  21. 'useage' => $usage,
  22. 'useful_links' => UsefulLink::all()->sortBy('id')
  23. ]);
  24. }
  25. public static function CreditsLeftBox(){
  26. $usage = 0;
  27. foreach (Auth::user()->servers as $server){
  28. $usage += $server->product->price;
  29. }
  30. if(Auth::user()->Credits() > 0.01 and $usage > 0){
  31. $days = number_format((Auth::user()->Credits()*30)/$usage,2,'.','');
  32. $hours = number_format(Auth::user()->Credits()/($usage/30/24),2,'.','');
  33. echo '
  34. <div class="col-12 col-sm-6 col-md-3">
  35. <div class="info-box mb-3">';
  36. if($days >= 15){
  37. echo '<span class="info-box-icon bg-success elevation-1">';
  38. }
  39. elseif ($days >= 8 && $days <= 14){
  40. echo '<span class="info-box-icon bg-warning elevation-1">';
  41. }
  42. elseif ($days <= 7){
  43. echo '<span class="info-box-icon bg-danger elevation-1">';
  44. }
  45. echo '<i class="fas fa-hourglass-half"></i></span>
  46. <div class="info-box-content">
  47. <span class="info-box-text">Out of '. Configuration::getValueByKey('CREDITS_DISPLAY_NAME').' in </span>';
  48. //IF TIME IS LESS THAN 1 DAY CHANGE TO "hours"
  49. if($days < "1"){
  50. if($hours < "1"){
  51. echo '<span class="info-box-number">You ran out of Credits </span>';
  52. }
  53. else{
  54. echo '<span class="info-box-number"> '.$hours.' <sup> hours</sup></span>';
  55. }
  56. }else{
  57. echo '<span class="info-box-number">'.number_format($days,0).' <sup> days</sup></span>';
  58. }
  59. }
  60. echo'
  61. </div>
  62. </div>';
  63. }
  64. }