BreakingNewsController.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\BreakingNews;
  4. use Illuminate\Http\Request;
  5. use File;
  6. class BreakingNewsController extends Controller
  7. {
  8. protected $rules = [
  9. 'title' => ['required']
  10. ];
  11. public function index()
  12. {
  13. $breaking_news = BreakingNews::orderBy('date', 'DESC')->get(); //->paginate(50);
  14. return view('breaking_news.index',compact('breaking_news'))
  15. ->with('i', (request()->input('breaking_news', 1) - 1) * 5);
  16. }
  17. /**
  18. * Show the form for creating a new resource.
  19. *
  20. * @return \Illuminate\Http\Response
  21. */
  22. public function create()
  23. {
  24. return view('breaking_news.create');
  25. }
  26. /**
  27. * Store a newly created resource in storage.
  28. *
  29. * @param \Illuminate\Http\Request $request
  30. * @return \Illuminate\Http\Response
  31. */
  32. public function store(Request $request)
  33. {
  34. $request->validate($this->rules);
  35. $input = $request->all();
  36. $input["online"] = true; //isset($input["online"]) ? ($input["online"] == 'on' ? true : false) : false;
  37. $final_date = null;
  38. if ($input["date"] != '')
  39. {
  40. list($dt, $time) = explode(" ", $input["date"]);
  41. list($day, $month, $year) = explode("/", $dt);
  42. $final_date = $year . "-" . $month . "-" . $day . " " . $time;
  43. }
  44. $input["date"] = $final_date;
  45. BreakingNews::create($input);
  46. return redirect()->route('breaking_news.index')
  47. ->with('success','BreakingNews created successfully.');
  48. }
  49. /**
  50. * Display the specified resource.
  51. *
  52. * @param \App\BreakingNews $breakingnews
  53. * @return \Illuminate\Http\Response
  54. */
  55. public function show(BreakingNews $breaking_news)
  56. {
  57. return view('breaking_news.show',compact('breaking_news'));
  58. }
  59. /**
  60. * Show the form for editing the specified resource.
  61. *
  62. * @param \App\BreakingNews $breakingnews
  63. * @return \Illuminate\Http\Response
  64. */
  65. public function edit(BreakingNews $breaking_news)
  66. {
  67. $final_date = null;
  68. if ($breaking_news->date != null)
  69. {
  70. list($dt, $time) = explode(" ", $breaking_news->date);
  71. list($year, $month, $day) = explode("-", $dt);
  72. $final_date = $day . "/" . $month . "/" . $year . " " . $time;
  73. }
  74. $breaking_news->date = $final_date;
  75. return view('breaking_news.edit',compact('breaking_news'));
  76. }
  77. /**
  78. * Update the specified resource in storage.
  79. *
  80. * @param \Illuminate\Http\Request $request
  81. * @param \App\BreakingNews $breakingnews
  82. * @return \Illuminate\Http\Response
  83. */
  84. public function update(Request $request, BreakingNews $breaking_news)
  85. {
  86. $request->validate($this->rules);
  87. $input = $request->all();
  88. $input["online"] = isset($input["online"]) ? ($input["online"] == 'on' ? true : false) : false;
  89. $final_date = null;
  90. if ($input["date"] != '')
  91. {
  92. list($dt, $time) = explode(" ", $input["date"]);
  93. list($day, $month, $year) = explode("/", $dt);
  94. $final_date = $year . "-" . $month . "-" . $day . " " . $time;
  95. }
  96. $input["date"] = $final_date;
  97. $breaking_news->update($input);
  98. return redirect()->route('breaking_news.index')
  99. ->with('success','BreakingNews updated successfully');
  100. }
  101. /**
  102. * Remove the specified resource from storage.
  103. *
  104. * @param \App\BreakingNews $breakingnews
  105. * @return \Illuminate\Http\Response
  106. */
  107. public function destroy(BreakingNews $breaking_news)
  108. {
  109. $breaking_news->delete();
  110. return redirect()->route('breaking_news.index')
  111. ->with('success','BreakingNews deleted successfully');
  112. }
  113. }