Exemplo n.º 1
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $insert = $request->all();
     $safeName = false;
     //upload image
     if ($file = Input::file('image')) {
         $fileName = $file->getClientOriginalName();
         $extension = $file->getClientOriginalExtension() ?: 'png';
         $folderName = '/uploads/';
         $destinationPath = Config::get('app.path') . $folderName;
         $safeName = time() . "_" . str_random(10) . '.' . $extension;
         $file->move($destinationPath, $safeName);
         $insert['image'] = $safeName ? $folderName . $safeName : '';
     } else {
         $insert['image'] = "";
     }
     foreach (Exercise::$boolean as $field) {
         if (isset($insert[$field]) && $insert[$field] == "on") {
             $insert[$field] = 1;
         }
     }
     exercise::create($insert);
     return redirect('admin/exercises')->with('success', Lang::get('message.success.create'));
 }
Exemplo n.º 2
0
     }
 }
 if ($page > $total_pages) {
     $page = $total_pages;
 }
 $start = $limit * $page - $limit;
 if ($start < 0) {
     $start = 0;
 }
 $sql = "SELECT  exe_id,\n                        exe_user_id,\n                        firstname,\n                        lastname,\n                        aa.status,\n                        start_date,\n                        exe_result,\n                        exe_weighting,\n                        exe_result/exe_weighting as score,\n                        exe_duration,\n                        questions_to_check,\n                        orig_lp_id\n                FROM {$user_table} u\n                INNER JOIN (\n                    SELECT  t.exe_id, t.exe_user_id, status,\n                    start_date, exe_result, exe_weighting, exe_result/exe_weighting as score, exe_duration, questions_to_check, orig_lp_id\n                    FROM  {$track_exercise}  t LEFT JOIN {$track_attempt} a ON (a.exe_id = t.exe_id AND  t.exe_user_id = a.user_id )\n                    WHERE t.status = 'incomplete' AND\n                          {$where_condition}\n                    GROUP BY exe_user_id\n                ) as aa\n                ON aa.exe_user_id = user_id\n                ORDER BY {$sidx} {$sord} LIMIT {$start}, {$limit}";
 $result = Database::query($sql);
 $results = array();
 while ($row = Database::fetch_array($result, 'ASSOC')) {
     $results[] = $row;
 }
 $oExe = new exercise();
 $oExe->read($exercise_id);
 $response = new stdClass();
 $response->page = $page;
 $response->total = $total_pages;
 $response->records = $count;
 $i = 0;
 if (!empty($results)) {
     foreach ($results as $row) {
         $sql = "SELECT SUM(count_question_id) as count_question_id FROM (\n                            SELECT 1 as count_question_id FROM  {$track_attempt} a\n                            WHERE user_id = {$row['exe_user_id']} and exe_id = {$row['exe_id']}\n                            GROUP by question_id\n                        ) as count_table";
         $result_count = Database::query($sql);
         $count_questions = Database::fetch_array($result_count, 'ASSOC');
         $count_questions = $count_questions['count_question_id'];
         $row['count_questions'] = $count_questions;
         $response->rows[$i]['id'] = $row['exe_id'];
         $remaining = strtotime($row['start_date']) + $oExe->expired_time * 60 - strtotime(api_get_utc_datetime(time()));