HomeController.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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. $CREDITS_DISPLAY_NAME = Configuration::getValueByKey('CREDITS_DISPLAY_NAME');
  28. foreach (Auth::user()->servers as $server){
  29. $usage += $server->product->price;
  30. }
  31. if(Auth::user()->Credits() > 0.01 and $usage > 0){
  32. $Days = number_format((Auth::user()->Credits()*30)/$usage,2,'.','');
  33. $Hours = number_format(Auth::user()->Credits()/($usage/30/24),2,'.','');
  34. echo '
  35. <div class="col-12 col-sm-6 col-md-3">
  36. <div class="info-box mb-3">';
  37. if($Days >= 15){
  38. echo '<span class="info-box-icon bg-success elevation-1">';
  39. }
  40. elseif ($Days >= 8 && $Days <= 14){
  41. echo '<span class="info-box-icon bg-warning elevation-1">';
  42. }
  43. elseif ($Days <= 7){
  44. echo '<span class="info-box-icon bg-danger elevation-1">';
  45. }
  46. echo '<i class="fas fa-hourglass-half"></i></span>
  47. <div class="info-box-content">
  48. <span class="info-box-text">Out of '.$CREDITS_DISPLAY_NAME.' in </span>';
  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. }