select("contact_id")->where('created_date', '>=', date("Y-m-d H:i:s", strtotime("-15 min")) )->get(); $conts = []; foreach($contacts as $c) { $conts[] = $c->contact_id; } $contacts = array_unique($conts); if(sizeof($contacts) > 0) { $courses = LambdaRequest::getrequest('lms', 'courses/get_all', ['status' => 'active'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); foreach($courses->data->items as $course) { unset($course->subscribed_users); $lessons = LambdaRequest::getrequest('lms', 'lessons/list', ['id'=>$course->id, 'partition' => 'rapport-crestroad'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); $articles = []; $quizs = []; foreach($lessons->data->lessons as $lesson){ foreach($lesson->articles as $article){ if($article->type == 'article') { $articles[] = $article->entity_id; } if($article->type == 'quiz') { $quizs[] = $article->entity_id; } } } $course->articles = $articles; $course->quizs = $quizs; $allcourses[$course->id] = $course; } foreach($contacts as $contact) { $arts = DB::table('lms_courses_completion')->select("course_id", "article_id")->where('contact_id', $contact)->get(); $articles = []; foreach($arts as $art) { $articles[] = $art->article_id; } if(count($articles) > 0 ) { foreach($allcourses as $course) { $completed_articles = array_intersect($course->articles, $articles); $counts[$course->id]['articles'] = count($completed_articles); $completed_articles = array_intersect($course->quizs, $articles); $counts[$course->id]['quiz'] = count($completed_articles); } $data = ['english_article_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles'] : 0, 'english_quiz_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz'] : 0, 'hindi_article_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles'] : 0, 'hindi_quiz_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz'] : 0 ]; DB::table("lms_users")->where('contact_id', $contact)->update($data); //print_r($counts); } } } } }