PageRenderTime 50ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/app/Http/Controllers/Backend/DashboardController.php

https://gitlab.com/Ankit77/motiv8
PHP | 249 lines | 212 code | 28 blank | 9 comment | 10 complexity | a296f3b66b6bb8c330e27811aef60f06 MD5 | raw file
  1. <?php
  2. namespace App\Http\Controllers\Backend;
  3. use App\Http\Controllers\Controller;
  4. use DB, Request;
  5. /**
  6. * Class DashboardController
  7. * @package App\Http\Controllers\Backend
  8. */
  9. class DashboardController extends Controller
  10. {
  11. /**
  12. * @return \Illuminate\View\View
  13. */
  14. public function index()
  15. {
  16. return view('backend.dashboard');
  17. }
  18. public function themes()
  19. {
  20. $themes=DB::table("themes")->get();
  21. return view('backend.pages.themes', compact('themes'));
  22. }
  23. public function addtheme()
  24. {
  25. return view('backend.pages.addtheme');
  26. }
  27. public function savetheme()
  28. { $request= Request::all();
  29. if($_REQUEST['theme_attribute']=="background")
  30. { $image="";
  31. if(isset($request['theme_pic']))
  32. {
  33. $file = $request['theme_pic'];
  34. $image = date_default_timezone_set('UTC').time().$file->getClientOriginalName();
  35. $imgtitle=$file->getClientOriginalName();
  36. $newFileName = substr($imgtitle, 0 , (strrpos($imgtitle, ".")));
  37. //echo $newFileName; die;
  38. $fmove = $file->move(public_path() . '/images/background/', $image);
  39. }
  40. $data = array(
  41. 'title' =>$_REQUEST['title'],
  42. 'status' => 1,
  43. 'theme_attribute' =>$_REQUEST['theme_attribute'],
  44. "theme_color" =>$image
  45. );
  46. DB::table('themes')->insert($data);
  47. return redirect()->back()->withFlashSuccess('New theme created');
  48. }
  49. else
  50. {
  51. $data = array(
  52. 'title' =>$_REQUEST['title'],
  53. 'status' => 1,
  54. 'theme_attribute' =>$_REQUEST['theme_attribute'],
  55. "theme_color" =>"#".$_REQUEST['theme_color']
  56. );
  57. DB::table('themes')->insert($data);
  58. return redirect()->back()->withFlashSuccess('New theme created');
  59. }
  60. }
  61. public function deletetheme($id=NULL)
  62. {
  63. if(isset($id)){
  64. DB::table('themes')->where('id',$id)->delete();
  65. return redirect()->back()->withFlashSuccess('Theme successfully deleted');
  66. }else{
  67. return redirect()->back();}
  68. }
  69. public function deactivetheme($id=NULL)
  70. {
  71. if(isset($id)){
  72. DB::table('themes')->where('id',$id)->update(['status'=>0]);
  73. return redirect()->back()->withFlashSuccess('Theme successfully deactivated');
  74. }else{
  75. return redirect()->back();
  76. }
  77. }
  78. public function activetheme($id=NULL)
  79. {
  80. if(isset($id)){
  81. DB::table('themes')->where('id',$id)->update(['status'=>1]);
  82. return redirect()->back()->withFlashSuccess('Theme successfully activated');
  83. }else{return redirect()->back();}
  84. }
  85. public function viewuser($id=NULL)
  86. {
  87. $userdetail=DB::table('users')->where('id', $id)->get();
  88. return view('backend.pages.viewuser', compact('userdetail'));
  89. }
  90. public function edittheme($id=NULL)
  91. {
  92. $themes=DB::table('themes')->where('id',$id)->get();
  93. return view('backend.pages.edittheme', compact('themes'));
  94. }
  95. public function editthemesave()
  96. {
  97. $request= Request::all();
  98. if($_REQUEST['theme_attribute']=="background")
  99. { $image="";
  100. if(isset($request['theme_pic']))
  101. {
  102. $file = $request['theme_pic'];
  103. $image = date_default_timezone_set('UTC').time().$file->getClientOriginalName();
  104. $imgtitle=$file->getClientOriginalName();
  105. $newFileName = substr($imgtitle, 0 , (strrpos($imgtitle, ".")));
  106. //echo $newFileName; die;
  107. $fmove = $file->move(public_path() . '/images/background/', $image);
  108. }
  109. $data = array(
  110. 'title' =>$_REQUEST['title'],
  111. 'status' => 1,
  112. 'theme_attribute' =>$_REQUEST['theme_attribute'],
  113. "theme_color" =>$image
  114. );
  115. DB::table('themes')->where(['id'=>$_REQUEST['id']])->update($data);
  116. return redirect()->back()->withFlashSuccess('Theme updated');
  117. }
  118. else
  119. {
  120. $data = array(
  121. 'title' =>$_REQUEST['title'],
  122. 'status' => 1,
  123. 'theme_attribute' =>$_REQUEST['theme_attribute'],
  124. "theme_color" =>'#'.$_REQUEST['theme_color']
  125. );
  126. DB::table('themes')->where(['id'=>$_REQUEST['id']])->update($data);
  127. return redirect()->back()->withFlashSuccess('Theme updated');
  128. }
  129. return redirect()->back();
  130. }
  131. public function viewtheme($id=NULL)
  132. {
  133. $themes=DB::table('themes')->where('id',$id)->get();
  134. return view('backend.pages.viewtheme', compact('themes'));
  135. }
  136. public function challenges()
  137. {
  138. $challenges=DB::table('challenges')->join('user_challenges', 'challenges.id','=', 'user_challenges.challenge_id')->select('challenges.*', 'user_challenges.challenge_timeline', 'user_challenges.post_frequency', 'user_challenges.completion_reward', 'user_challenges.invite_friend')->get();
  139. return view('backend.pages.challenges', compact('challenges') );
  140. }
  141. public function addchallenges()
  142. {
  143. return view('backend.pages.addchallenges');
  144. }
  145. public function savechallenges()
  146. {
  147. $challenge=array(
  148. 'name' =>$_REQUEST['name'],
  149. 'description' =>$_REQUEST['description'],
  150. 'status' =>1 );
  151. $challenge_id=DB::table('challenges')->insertGetId($challenge);
  152. $data=array(
  153. 'challenge_id' =>$challenge_id,
  154. 'challenge_name' =>$_REQUEST['name'],
  155. 'challenge_timeline' =>$_REQUEST['challenge_timeline'],
  156. 'post_frequency' =>$_REQUEST['post_frequency'],
  157. 'completion_reward' =>$_REQUEST['completion_reward'],
  158. 'invite_friend' =>$_REQUEST['invite_friend'],
  159. 'status' =>1
  160. );
  161. DB::table('user_challenges')->insert($data);
  162. return redirect()->back()->withFlashSuccess('Challenge successfully added') ;
  163. }
  164. public function editchallenge($id=NULL)
  165. {
  166. $challenges=DB::table('challenges')->join('user_challenges', 'challenges.id','=', 'user_challenges.challenge_id')->where('challenges.id',$id)->select('challenges.*', 'user_challenges.challenge_timeline', 'user_challenges.post_frequency', 'user_challenges.completion_reward', 'user_challenges.invite_friend') ->get();
  167. return view('backend.pages.editchallenge',compact('challenges') );
  168. }
  169. public function editchallengesave()
  170. {
  171. $challenge=array(
  172. 'name' =>$_REQUEST['name'],
  173. 'description' =>$_REQUEST['description'],
  174. 'status' =>1 );
  175. $challenge_id=DB::table('challenges')->where(['id'=> $_REQUEST['id']])->update($challenge);
  176. $data=array(
  177. 'challenge_name' =>$_REQUEST['name'],
  178. 'challenge_timeline' =>$_REQUEST['challenge_timeline'],
  179. 'post_frequency' =>$_REQUEST['post_frequency'],
  180. 'completion_reward' =>$_REQUEST['completion_reward'],
  181. 'invite_friend' =>$_REQUEST['invite_friend'],
  182. 'status' =>1
  183. );
  184. DB::table('user_challenges')->where(['challenge_id'=> $_REQUEST['id']])->update($data);
  185. return redirect()->back()->withFlashSuccess('Challenge successfully updated') ;
  186. }
  187. public function deactivechallenge($id=NULL)
  188. {
  189. if(isset($id)){
  190. DB::table('challenges')->where('id',$id)->update(['status'=>0]);
  191. DB::table('user_challenges')->where('challenge_id',$id)->update(['status'=>0]);
  192. return redirect()->back()->withFlashSuccess('Challenge successfully deactivated');
  193. }else{
  194. return redirect()->back();
  195. }
  196. }
  197. public function activechallenge($id=NULL)
  198. {
  199. if(isset($id)){
  200. DB::table('challenges')->where('id',$id)->update(['status'=>1]);
  201. DB::table('user_challenges')->where('challenge_id',$id)->update(['status'=>1]);
  202. return redirect()->back()->withFlashSuccess('Challenge successfully activated');
  203. }else{return redirect()->back();}
  204. }
  205. public function deletechallenge($id=NULL)
  206. {
  207. if(isset($id))
  208. {
  209. DB::table('challenges')->where('id',$id)->get();
  210. DB::table('user_challenges')->where('challenge_id',$id)->get();
  211. return redirect()->back()->withFlashSuccess('Challenge successfully deleted');
  212. }else{
  213. return redirect()->back();
  214. }
  215. }
  216. public function viewchallenge($id=NULL)
  217. {
  218. $challenges=DB::table('challenges')->join('user_challenges', 'challenges.id','=', 'user_challenges.challenge_id')->where('challenges.id',$id)->select('challenges.*', 'user_challenges.challenge_timeline', 'user_challenges.post_frequency', 'user_challenges.completion_reward', 'user_challenges.invite_friend') ->get();
  219. return view('backend.pages.viewchallenge',compact('challenges') );
  220. }
  221. }