Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php namespace App\Http\Controllers\Api; use App\ApiUtil; use App\Common; use App\Mod..
Decoded Output download
<?php
namespace App\Http\Controllers\Api;
use App\ApiUtil;
use App\Common;
use App\Models\ClassRoom;
use App\Models\DocumentEmbed;
use App\Models\GroupLearning;
use App\Models\GroupLearningLog;
use App\Models\LibraryFile;
use App\Models\SchedulePlanHistory;
use App\Models\ScheduleTeacherPlan;
use App\Models\SystemConfig;
use App\Models\Teacher;
use App\Models\TempGroupLearningTeacherLog;
use App\PermissionManager;
use App\ReportManager;
use App\TeacherUtil;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\File;
class TeacherController extends BaseController
{
public function organizationInfo()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$teacher = Teacher::where("Email", $email)
->where(
"MessageTokenApp",
$token
)
->first();
if (isset($teacher)) {
$teacherId = $teacher->Id;
$data = [];
$data["isAdmin"] =
$teacher->IsAdmin == 1 ||
PermissionManager::IsOrganizationAdmin($teacherId);
$data[
"isOrgSchool"
] = Common::IsOrgSchool($teacherId);
return response()->json([
"data" => $data,
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
}
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherDashboard()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$teacher = Teacher::where("Email", $email)
->where(
"MessageTokenApp",
$token
)
->first();
if (isset($teacher)) {
$teacherId = $teacher->Id;
$data = [];
$data[
"passedCourses"
] = count(ReportManager::passedCourses($teacherId));
$data[
"activeCourses"
] = count(ReportManager::activeCourses($teacherId));
$data["incomingVCL"] = count(
ReportManager::incomingVCL($teacherId)
);
$data["passedVCL"] = count(
ReportManager::passedVCL($teacherId)
);
$data["todayVCL"] = count(
GroupLearning::GetTodayLive($teacherId)
);
$data[
"unreadPublicDiscuss"
] = count(
ReportManager::unreadPublicDiscussOfTeacher($teacherId)
);
$data[
"unreadPrivateDiscuss"
] = count(
ReportManager::unreadPrivateDiscussOfTeacher($teacherId)
);
$data[
"unreviewExercise"
] = count(ReportManager::unreadExerciseLearner($teacherId));
$data["isQC"] = PermissionManager::IsTeacherQC(
$teacherId
);
return response()->json([
"data" => $data,
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
}
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherVCL()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$year = request()->get("year");
$teacher = Teacher::where("Email", $email)
->where(
"MessageTokenApp",
$token
)
->first();
if (isset($teacher)) {
$data = [];
if (isset($year)) {
$data[
"groupLearnings"
] = GroupLearning::GetAllLive($teacher->Id, $year);
} else {
$data[
"groupLearnings"
] = GroupLearning::GetAllLive(
$teacher->Id,
Carbon::now()->year
);
}
return response()->json([
"data" => $data,
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
}
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function listVCL()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$check = ApiUtil::CheckUser($email, $token);
if (!$check["status"]) {
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
}
$search_key = request()->get(
"search_key"
);
$page = request()->get("page");
if (!isset($page) || $page < 1) {
$page = 1;
}
$currentView = request()->get(
"currentView"
);
if (!isset($currentView)) {
$currentView = ClassRoom::LIST_LIVE_VIEW_COMING;
}
if (!isset($search_key)) {
$search_key = "";
}
if (
request()->has("classRoomId")
) {
$class_id = request()->get(
"classRoomId"
);
} else {
$class_id = 0;
}
$response = TeacherUtil::GetTeacherVCL(
$check["teacher"],
$currentView,
$search_key,
$page,
$class_id
);
$data = [
"virtual_classes" =>
$response[0],
"total" => $response[1],
"item_per_page" =>
$response[2],
];
return response()->json([
"data" => $data,
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherVCLOnline()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$teacher = Teacher::where("Email", $email)
->where(
"MessageTokenApp",
$token
)
->first();
if (isset($teacher)) {
if (!PermissionManager::IsTeacherQC($teacher->Id)) {
return response()->json([
"message" =>
"Unauthorized",
"status" =>
Response::HTTP_UNAUTHORIZED,
]);
}
if ($teacher->IsAdmin == true) {
$data = ReportManager::onlineVCL(0);
} else {
$data = ReportManager::onlineVCL(
$teacher->Organization()->OrganizationId
);
}
return response()->json([
"data" => $data,
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
}
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function savePlanScheduleTeacher(Request $request)
{
try {
$token = $request->get("token");
$email = $request->get("email");
$check = ApiUtil::CheckUser($email, $token);
if (!$check["status"]) {
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
}
$jsonSchedules = $request->get(
"schedules"
);
$schedules = $jsonSchedules;
$startTime = $request->get("startTime");
$endTime = $request->get("endTime");
$today = Carbon::now()->timestamp;
$history = SchedulePlanHistory::where(
"TeacherId",
$check["teacher"]->Id
)
->where("StartTime", "<", $today)
->where("EndTime", ">", $today)
->first();
if (isset($history)) {
$history->CommitDate = Carbon::now();
$history->StartTime = Carbon::now()->timestamp;
$history->EndTime = end($schedules)[
"EndTime"
];
$history->save();
ScheduleTeacherPlan::deleteOldSchedules($history->Id);
}
if (!isset($history)) {
$history = SchedulePlanHistory::create([
"TeacherId" =>
$check["teacher"]->Id,
"Title" =>
$check["teacher"]->FullName,
"CommitDate" => Carbon::now(),
"StartTime" => Carbon::now()
->timestamp,
"EndTime" => $endTime,
]);
}
ScheduleTeacherPlan::addSchedules(
$schedules,
$check["teacher"]->Id,
$history->Id
);
return response()->json([
"message" =>
"success",
"status" => Response::HTTP_OK,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public static function checkSchedulePlan()
{
try {
$token = request()->get("token");
$email = request()->get("email");
$teacher = Teacher::select(["Id"])
->where("Email", $email)
->where(
"MessageTokenApp",
$token
)
->first();
if (isset($teacher)) {
$today = Carbon::now()->timestamp;
$scheduleHistory = SchedulePlanHistory::where(
"TeacherId",
$teacher->Id
)
->where(
"StartTime",
"<",
$today
)
->where("EndTime", ">", $today)
->first();
if (!isset($scheduleHistory)) {
return response()->json([
"result" =>
SchedulePlanHistory::NO_SCHEDULE,
"message" =>
"No Schedule",
"status" => Response::HTTP_OK,
]);
}
$schedules = ScheduleTeacherPlan::GetPlanSchedules(
$teacher->Id,
$scheduleHistory->Id
);
return response()->json([
"schedules" => $schedules,
"scheduleHistory" => $scheduleHistory,
"result" =>
SchedulePlanHistory::SCHEDULED,
"message" =>
"Scheduled",
"status" => Response::HTTP_OK,
]);
}
return response()->json([
"message" =>
"Unauthorized",
"status" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"message" =>
"Internal server error",
"status" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function uploadTime(Request $request)
{
$file = $request->get("file_upload");
if (isset($file)) {
return
esponse()->json(
[
"message" =>
"Upload success",
],
200
);
}
return
esponse()->json(
[
"data" => null,
"message" =>
"Upload fail",
],
404
);
}
public function saveLogGroupLearning()
{
$auto_min = SystemConfig::getConfigByKey(
"auto_update_min"
);
if (!isset($auto_min)) {
SystemConfig::setConfigByKey(
"auto_update_min",
120
);
$auto_min = SystemConfig::getConfigByKey(
"auto_update_min"
);
}
$endTime = Carbon::now();
$startTime = Carbon::now()->subMinutes(intval($auto_min));
$groupLearningLogs = GroupLearningLog::select([
"GroupLearningId",
])
->where("EndTime", "<", $endTime)
->where("EndTime", ">", $startTime)
->groupBy(
"GroupLearningId"
)
->get();
$ids = [];
foreach ($groupLearningLogs as $groupLearningLog) {
TempGroupLearningTeacherLog::SyncTempTeacherLog(
$groupLearningLog->GroupLearningId
);
array_push($ids, $groupLearningLog->GroupLearningId);
}
return
esponse()->json([
"data" => $ids,
"result" => "ok",
]);
}
public function uploadVideo(Request $request)
{
try {
$file_name = $request->get("file_name");
$file_content = $request->get(
"file_content"
);
$file_tmp = explode(".", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["status" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"status" => false,
"message" =>
"File type not support",
]);
}
$uuid = uniqid() . Common::generateRandomString(7);
$file_name = "{$uuid}.{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"env.upload_destination"
) .
"/" .
$file_name,
$file_content
);
$result = [
"status" => true,
"file_name" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"status" => false,
"message" =>
"Internal server error",
]);
}
}
public function uploadAudio(Request $request)
{
try {
$file_name = $request->get("file_name");
$file_content = $request->get(
"file_content"
);
$file_tmp = explode(".", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["status" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"status" => false,
"message" =>
"File type not support",
]);
}
$uuid = uniqid() . Common::generateRandomString(7);
$file_name = "{$uuid}.{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"env.upload_destination"
) .
"/" .
$file_name,
$file_content
);
$result = [
"status" => true,
"file_name" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"status" => false,
"message" =>
"Internal server error",
]);
}
}
public function convertRequest(Request $request)
{
try {
$file_name = $request->get("file_name");
$file_content = $request->get(
"file_content"
);
$file_tmp = explode(".", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["status" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"status" => false,
"message" =>
"File type not support",
]);
}
$time = uniqid() . Common::generateRandomString(7);
$prefix =
config(
"env.image_prefix"
) . "_";
$file_name_tmp = "/Pdf/{$prefix}{$time}.{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"env.image_destination"
) . $file_name_tmp,
$file_content
);
$result = [
"status" => true,
"file_name" => $file_name_tmp,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"status" => false,
"message" =>
"Internal server error",
]);
}
}
public function convertedUpload(Request $request)
{
try {
$file_content = $request->get(
"file_content"
);
$file_etc = $request->get("file_etc");
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"status" => false,
"message" =>
"File type not support",
]);
}
$time = uniqid() . Common::generateRandomString(7);
$prefix =
config(
"env.image_prefix"
) . "_";
$file_name = "/Pdf/{$prefix}{$time}.{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"env.image_destination"
) . $file_name,
$file_content
);
$result = [
"status" => true,
"file_name" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"status" => false,
"message" =>
"Internal server error",
]);
}
}
}
?>
Did this file decode correctly?
Original Code
<?php
namespace App\Http\Controllers\Api;
use App\ApiUtil;
use App\Common;
use App\Models\ClassRoom;
use App\Models\DocumentEmbed;
use App\Models\GroupLearning;
use App\Models\GroupLearningLog;
use App\Models\LibraryFile;
use App\Models\SchedulePlanHistory;
use App\Models\ScheduleTeacherPlan;
use App\Models\SystemConfig;
use App\Models\Teacher;
use App\Models\TempGroupLearningTeacherLog;
use App\PermissionManager;
use App\ReportManager;
use App\TeacherUtil;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\File;
class TeacherController extends BaseController
{
public function organizationInfo()
{
try {
$token = request()->get("\164\157\x6b\145\x6e");
$email = request()->get("\x65\155\x61\x69\x6c");
$teacher = Teacher::where("\x45\x6d\x61\151\154", $email)
->where(
"\x4d\x65\x73\163\x61\x67\x65\x54\x6f\153\145\156\101\160\x70",
$token
)
->first();
if (isset($teacher)) {
$teacherId = $teacher->Id;
$data = [];
$data["\151\x73\101\144\155\151\156"] =
$teacher->IsAdmin == 1 ||
PermissionManager::IsOrganizationAdmin($teacherId);
$data[
"\x69\x73\x4f\x72\x67\x53\x63\150\x6f\157\x6c"
] = Common::IsOrgSchool($teacherId);
return response()->json([
"\x64\141\164\x61" => $data,
"\x6d\145\163\x73\x61\x67\x65" =>
"\x73\x75\143\x63\145\163\163",
"\x73\164\141\164\165\163" => Response::HTTP_OK,
]);
}
return response()->json([
"\155\x65\x73\x73\x61\x67\145" =>
"\x55\156\141\x75\x74\x68\x6f\162\151\x7a\x65\x64",
"\163\x74\x61\x74\x75\x73" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"\155\x65\x73\163\x61\147\x65" =>
"\111\x6e\164\145\x72\x6e\141\x6c\x20\x73\x65\x72\166\x65\162\x20\145\162\x72\x6f\x72",
"\163\164\141\164\165\163" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherDashboard()
{
try {
$token = request()->get("\x74\157\153\x65\x6e");
$email = request()->get("\145\x6d\x61\151\x6c");
$teacher = Teacher::where("\x45\x6d\141\x69\x6c", $email)
->where(
"\x4d\x65\163\163\x61\x67\x65\x54\x6f\x6b\x65\x6e\101\160\x70",
$token
)
->first();
if (isset($teacher)) {
$teacherId = $teacher->Id;
$data = [];
$data[
"\160\x61\163\x73\145\144\x43\x6f\165\x72\163\x65\163"
] = count(ReportManager::passedCourses($teacherId));
$data[
"\141\143\x74\151\x76\x65\103\x6f\x75\162\x73\145\163"
] = count(ReportManager::activeCourses($teacherId));
$data["\151\156\143\157\155\x69\x6e\147\126\103\x4c"] = count(
ReportManager::incomingVCL($teacherId)
);
$data["\x70\x61\163\163\x65\144\x56\103\114"] = count(
ReportManager::passedVCL($teacherId)
);
$data["\x74\x6f\x64\141\171\x56\x43\114"] = count(
GroupLearning::GetTodayLive($teacherId)
);
$data[
"\x75\x6e\162\145\x61\x64\x50\x75\142\x6c\x69\143\x44\151\163\x63\165\x73\163"
] = count(
ReportManager::unreadPublicDiscussOfTeacher($teacherId)
);
$data[
"\165\156\x72\145\x61\144\120\x72\151\166\x61\x74\145\104\x69\163\143\x75\x73\163"
] = count(
ReportManager::unreadPrivateDiscussOfTeacher($teacherId)
);
$data[
"\x75\x6e\162\145\x76\x69\145\x77\105\170\x65\162\143\151\163\x65"
] = count(ReportManager::unreadExerciseLearner($teacherId));
$data["\151\163\121\x43"] = PermissionManager::IsTeacherQC(
$teacherId
);
return response()->json([
"\144\x61\x74\141" => $data,
"\x6d\x65\x73\x73\141\x67\145" =>
"\163\x75\x63\143\x65\163\x73",
"\x73\164\141\x74\x75\x73" => Response::HTTP_OK,
]);
}
return response()->json([
"\x6d\x65\163\163\x61\147\x65" =>
"\x55\x6e\141\x75\164\150\x6f\162\151\x7a\x65\x64",
"\163\164\141\x74\x75\x73" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"\155\x65\163\x73\x61\x67\x65" =>
"\111\156\164\x65\x72\x6e\141\154\x20\x73\145\x72\x76\x65\x72\40\x65\x72\162\157\x72",
"\163\164\x61\x74\x75\163" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherVCL()
{
try {
$token = request()->get("\x74\x6f\153\x65\156");
$email = request()->get("\145\x6d\x61\151\154");
$year = request()->get("\171\145\x61\x72");
$teacher = Teacher::where("\x45\155\141\x69\x6c", $email)
->where(
"\x4d\x65\x73\163\141\x67\145\x54\157\x6b\x65\x6e\101\x70\x70",
$token
)
->first();
if (isset($teacher)) {
$data = [];
if (isset($year)) {
$data[
"\147\x72\x6f\165\x70\x4c\145\141\x72\156\151\156\x67\163"
] = GroupLearning::GetAllLive($teacher->Id, $year);
} else {
$data[
"\147\162\157\x75\160\114\145\x61\x72\x6e\x69\x6e\147\163"
] = GroupLearning::GetAllLive(
$teacher->Id,
Carbon::now()->year
);
}
return response()->json([
"\144\x61\x74\141" => $data,
"\x6d\x65\x73\163\141\x67\x65" =>
"\163\165\143\x63\x65\163\163",
"\163\164\x61\164\165\163" => Response::HTTP_OK,
]);
}
return response()->json([
"\155\145\x73\x73\x61\x67\x65" =>
"\125\x6e\x61\165\164\150\157\162\x69\172\145\144",
"\163\x74\x61\x74\x75\163" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"\x6d\x65\163\x73\141\x67\x65" =>
"\x49\x6e\164\145\x72\x6e\141\154\x20\x73\x65\x72\166\145\162\x20\x65\162\162\157\x72",
"\163\164\141\x74\165\x73" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function listVCL()
{
try {
$token = request()->get("\164\157\x6b\145\x6e");
$email = request()->get("\x65\155\141\x69\x6c");
$check = ApiUtil::CheckUser($email, $token);
if (!$check["\x73\164\x61\164\x75\163"]) {
return response()->json([
"\x6d\x65\x73\x73\x61\147\145" =>
"\x55\156\141\x75\164\150\x6f\162\x69\x7a\x65\144",
"\x73\x74\x61\x74\165\163" => Response::HTTP_UNAUTHORIZED,
]);
}
$search_key = request()->get(
"\163\x65\x61\x72\x63\x68\x5f\x6b\x65\x79"
);
$page = request()->get("\160\141\147\x65");
if (!isset($page) || $page < 1) {
$page = 1;
}
$currentView = request()->get(
"\143\x75\x72\x72\x65\156\164\126\x69\x65\167"
);
if (!isset($currentView)) {
$currentView = ClassRoom::LIST_LIVE_VIEW_COMING;
}
if (!isset($search_key)) {
$search_key = "";
}
if (
request()->has("\x63\154\141\x73\163\122\x6f\x6f\155\x49\x64")
) {
$class_id = request()->get(
"\x63\154\141\163\x73\x52\x6f\x6f\155\x49\144"
);
} else {
$class_id = 0;
}
$response = TeacherUtil::GetTeacherVCL(
$check["\164\145\141\x63\150\x65\x72"],
$currentView,
$search_key,
$page,
$class_id
);
$data = [
"\166\151\162\x74\x75\x61\x6c\137\x63\x6c\x61\163\x73\x65\x73" =>
$response[0],
"\x74\157\164\141\x6c" => $response[1],
"\151\x74\145\155\x5f\x70\x65\x72\137\160\141\x67\145" =>
$response[2],
];
return response()->json([
"\144\141\x74\x61" => $data,
"\x6d\x65\163\163\141\147\x65" =>
"\163\x75\143\x63\x65\x73\163",
"\x73\164\x61\x74\165\163" => Response::HTTP_OK,
]);
} catch (\Exception $exception) {
return response()->json([
"\x6d\145\x73\163\x61\x67\145" =>
"\x49\x6e\164\x65\x72\x6e\x61\x6c\40\163\145\162\x76\145\x72\40\145\162\162\x6f\162",
"\x73\164\141\x74\165\163" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function teacherVCLOnline()
{
try {
$token = request()->get("\164\157\153\x65\x6e");
$email = request()->get("\145\x6d\x61\x69\154");
$teacher = Teacher::where("\105\155\141\151\x6c", $email)
->where(
"\115\145\x73\163\x61\x67\x65\124\x6f\x6b\x65\x6e\101\160\x70",
$token
)
->first();
if (isset($teacher)) {
if (!PermissionManager::IsTeacherQC($teacher->Id)) {
return response()->json([
"\155\x65\x73\x73\141\147\145" =>
"\x55\156\x61\x75\164\x68\157\162\151\172\145\144",
"\163\x74\x61\x74\x75\x73" =>
Response::HTTP_UNAUTHORIZED,
]);
}
if ($teacher->IsAdmin == true) {
$data = ReportManager::onlineVCL(0);
} else {
$data = ReportManager::onlineVCL(
$teacher->Organization()->OrganizationId
);
}
return response()->json([
"\144\x61\164\141" => $data,
"\x6d\x65\x73\163\141\147\145" =>
"\x73\x75\x63\143\x65\163\163",
"\163\x74\141\164\x75\x73" => Response::HTTP_OK,
]);
}
return response()->json([
"\x6d\145\x73\x73\141\147\145" =>
"\125\156\x61\x75\164\150\x6f\x72\151\x7a\145\x64",
"\x73\x74\141\x74\x75\x73" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"\x6d\x65\x73\x73\141\x67\145" =>
"\111\x6e\164\x65\162\x6e\x61\154\x20\163\145\162\x76\x65\162\x20\x65\x72\x72\x6f\x72",
"\x73\x74\x61\x74\165\x73" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function savePlanScheduleTeacher(Request $request)
{
try {
$token = $request->get("\x74\x6f\x6b\145\156");
$email = $request->get("\x65\x6d\x61\151\x6c");
$check = ApiUtil::CheckUser($email, $token);
if (!$check["\163\x74\141\x74\x75\163"]) {
return response()->json([
"\x6d\x65\163\x73\x61\x67\x65" =>
"\125\156\x61\165\x74\x68\x6f\x72\151\x7a\x65\144",
"\163\164\141\x74\165\x73" => Response::HTTP_UNAUTHORIZED,
]);
}
$jsonSchedules = $request->get(
"\163\x63\150\145\x64\165\154\x65\x73"
);
$schedules = $jsonSchedules;
$startTime = $request->get("\163\164\x61\162\x74\x54\x69\155\145");
$endTime = $request->get("\145\156\x64\x54\151\155\145");
$today = Carbon::now()->timestamp;
$history = SchedulePlanHistory::where(
"\124\145\141\143\150\145\x72\111\144",
$check["\x74\x65\x61\x63\150\x65\162"]->Id
)
->where("\x53\x74\141\x72\164\x54\x69\x6d\145", "\74", $today)
->where("\105\156\x64\124\151\155\x65", "\x3e", $today)
->first();
if (isset($history)) {
$history->CommitDate = Carbon::now();
$history->StartTime = Carbon::now()->timestamp;
$history->EndTime = end($schedules)[
"\x45\156\144\x54\151\x6d\x65"
];
$history->save();
ScheduleTeacherPlan::deleteOldSchedules($history->Id);
}
if (!isset($history)) {
$history = SchedulePlanHistory::create([
"\124\x65\141\143\150\x65\x72\x49\x64" =>
$check["\x74\x65\141\143\150\x65\162"]->Id,
"\124\151\x74\154\145" =>
$check["\164\145\x61\143\150\x65\x72"]->FullName,
"\103\x6f\x6d\x6d\151\x74\104\x61\164\145" => Carbon::now(),
"\123\164\x61\162\x74\124\x69\155\145" => Carbon::now()
->timestamp,
"\105\156\x64\124\151\155\x65" => $endTime,
]);
}
ScheduleTeacherPlan::addSchedules(
$schedules,
$check["\164\x65\x61\143\x68\x65\162"]->Id,
$history->Id
);
return response()->json([
"\155\145\163\163\x61\147\x65" =>
"\x73\x75\x63\x63\145\x73\163",
"\x73\x74\141\164\x75\x73" => Response::HTTP_OK,
]);
} catch (\Exception $exception) {
return response()->json([
"\155\145\163\163\x61\x67\x65" =>
"\111\156\x74\145\x72\156\141\x6c\40\x73\145\x72\x76\x65\x72\x20\145\x72\x72\x6f\162",
"\163\164\x61\x74\165\163" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public static function checkSchedulePlan()
{
try {
$token = request()->get("\164\157\153\145\156");
$email = request()->get("\145\x6d\x61\151\154");
$teacher = Teacher::select(["\x49\x64"])
->where("\x45\155\141\x69\154", $email)
->where(
"\x4d\145\x73\163\x61\x67\145\124\x6f\153\145\x6e\101\x70\160",
$token
)
->first();
if (isset($teacher)) {
$today = Carbon::now()->timestamp;
$scheduleHistory = SchedulePlanHistory::where(
"\x54\x65\x61\143\150\145\162\x49\144",
$teacher->Id
)
->where(
"\123\164\x61\162\x74\124\x69\155\x65",
"\x3c",
$today
)
->where("\105\x6e\144\124\151\155\145", "\76", $today)
->first();
if (!isset($scheduleHistory)) {
return response()->json([
"\162\145\x73\x75\154\164" =>
SchedulePlanHistory::NO_SCHEDULE,
"\x6d\x65\163\163\141\147\x65" =>
"\116\157\x20\x53\x63\x68\x65\x64\x75\154\145",
"\x73\164\141\164\x75\x73" => Response::HTTP_OK,
]);
}
$schedules = ScheduleTeacherPlan::GetPlanSchedules(
$teacher->Id,
$scheduleHistory->Id
);
return response()->json([
"\163\143\150\145\144\165\154\x65\163" => $schedules,
"\x73\x63\150\145\144\x75\154\145\x48\151\163\164\x6f\x72\x79" => $scheduleHistory,
"\162\x65\163\165\x6c\164" =>
SchedulePlanHistory::SCHEDULED,
"\155\x65\163\x73\x61\147\145" =>
"\x53\143\x68\x65\x64\x75\154\145\144",
"\x73\x74\141\164\165\x73" => Response::HTTP_OK,
]);
}
return response()->json([
"\x6d\145\163\163\141\x67\145" =>
"\x55\156\141\165\164\x68\x6f\162\151\172\x65\x64",
"\x73\x74\141\x74\x75\x73" => Response::HTTP_UNAUTHORIZED,
]);
} catch (\Exception $exception) {
return response()->json([
"\155\145\x73\x73\141\147\x65" =>
"\111\156\x74\145\x72\156\141\154\x20\x73\145\162\x76\x65\x72\40\145\162\x72\157\162",
"\x73\164\x61\x74\x75\x73" =>
Response::HTTP_INTERNAL_SERVER_ERROR,
]);
}
}
public function uploadTime(Request $request)
{
$file = $request->get("\x66\x69\154\x65\137\x75\160\154\x6f\141\144");
if (isset($file)) {
return \response()->json(
[
"\x6d\145\x73\163\x61\147\145" =>
"\x55\x70\154\x6f\141\144\x20\163\x75\143\143\145\x73\x73",
],
200
);
}
return \response()->json(
[
"\x64\141\x74\141" => null,
"\x6d\x65\x73\x73\141\147\x65" =>
"\125\160\x6c\x6f\141\x64\x20\x66\141\x69\x6c",
],
404
);
}
public function saveLogGroupLearning()
{
$auto_min = SystemConfig::getConfigByKey(
"\141\x75\164\157\x5f\165\x70\144\x61\x74\x65\x5f\x6d\151\156"
);
if (!isset($auto_min)) {
SystemConfig::setConfigByKey(
"\x61\165\x74\157\137\165\x70\x64\x61\164\x65\137\x6d\151\x6e",
120
);
$auto_min = SystemConfig::getConfigByKey(
"\x61\x75\164\157\137\x75\160\144\141\164\x65\137\x6d\x69\156"
);
}
$endTime = Carbon::now();
$startTime = Carbon::now()->subMinutes(intval($auto_min));
$groupLearningLogs = GroupLearningLog::select([
"\x47\162\157\x75\160\x4c\x65\141\162\x6e\x69\156\147\x49\x64",
])
->where("\105\156\x64\x54\x69\155\x65", "\74", $endTime)
->where("\105\156\x64\124\x69\155\x65", "\76", $startTime)
->groupBy(
"\x47\x72\x6f\x75\x70\x4c\145\141\162\x6e\x69\156\x67\x49\x64"
)
->get();
$ids = [];
foreach ($groupLearningLogs as $groupLearningLog) {
TempGroupLearningTeacherLog::SyncTempTeacherLog(
$groupLearningLog->GroupLearningId
);
array_push($ids, $groupLearningLog->GroupLearningId);
}
return \response()->json([
"\144\x61\164\x61" => $ids,
"\162\x65\x73\x75\154\x74" => "\x6f\153",
]);
}
public function uploadVideo(Request $request)
{
try {
$file_name = $request->get("\x66\x69\x6c\x65\137\x6e\x61\155\145");
$file_content = $request->get(
"\146\x69\154\x65\x5f\143\x6f\x6e\164\x65\156\164"
);
$file_tmp = explode("\56", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["\163\x74\x61\164\x75\163" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"\x73\x74\141\164\x75\163" => false,
"\155\x65\x73\x73\x61\147\x65" =>
"\106\x69\154\145\40\164\171\x70\145\40\156\x6f\164\x20\x73\x75\160\160\157\162\164",
]);
}
$uuid = uniqid() . Common::generateRandomString(7);
$file_name = "{$uuid}\x2e{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"\145\156\x76\x2e\165\160\x6c\x6f\x61\x64\x5f\x64\x65\163\164\x69\x6e\141\164\151\157\156"
) .
"\x2f" .
$file_name,
$file_content
);
$result = [
"\x73\x74\x61\x74\165\163" => true,
"\146\151\x6c\145\x5f\156\141\x6d\145" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"\163\x74\141\164\165\x73" => false,
"\155\145\163\x73\x61\x67\145" =>
"\x49\x6e\x74\145\162\x6e\141\x6c\40\163\x65\x72\166\145\x72\x20\145\x72\x72\x6f\x72",
]);
}
}
public function uploadAudio(Request $request)
{
try {
$file_name = $request->get("\146\151\x6c\145\x5f\156\141\155\145");
$file_content = $request->get(
"\x66\x69\x6c\x65\x5f\143\157\156\164\x65\x6e\164"
);
$file_tmp = explode("\56", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["\163\164\141\164\165\x73" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"\163\164\x61\164\165\x73" => false,
"\155\145\x73\x73\141\x67\145" =>
"\106\x69\154\x65\x20\x74\171\x70\x65\40\x6e\x6f\164\x20\163\165\160\x70\x6f\x72\164",
]);
}
$uuid = uniqid() . Common::generateRandomString(7);
$file_name = "{$uuid}\56{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"\145\156\166\56\x75\160\154\157\141\x64\137\144\x65\163\x74\151\156\141\x74\151\157\156"
) .
"\x2f" .
$file_name,
$file_content
);
$result = [
"\163\x74\141\164\x75\x73" => true,
"\146\x69\x6c\145\137\x6e\x61\155\x65" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"\163\x74\141\x74\165\x73" => false,
"\155\x65\163\x73\141\x67\x65" =>
"\111\156\x74\x65\162\x6e\x61\154\40\163\145\x72\x76\145\x72\x20\145\x72\x72\157\162",
]);
}
}
public function convertRequest(Request $request)
{
try {
$file_name = $request->get("\146\151\154\145\137\x6e\141\x6d\145");
$file_content = $request->get(
"\146\151\154\145\x5f\x63\x6f\x6e\x74\145\x6e\164"
);
$file_tmp = explode("\x2e", $file_name);
if (count($file_tmp) < 2) {
return response()->json(["\163\x74\x61\x74\165\x73" => false]);
}
$file_etc = $file_tmp[count($file_tmp) - 1];
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"\163\x74\x61\x74\x75\x73" => false,
"\155\145\x73\x73\141\147\x65" =>
"\x46\x69\x6c\145\x20\164\x79\160\145\40\156\x6f\x74\x20\x73\x75\160\x70\157\x72\164",
]);
}
$time = uniqid() . Common::generateRandomString(7);
$prefix =
config(
"\145\156\x76\56\151\x6d\141\x67\145\137\160\162\145\146\151\170"
) . "\x5f";
$file_name_tmp = "\57\120\x64\146\x2f{$prefix}{$time}\56{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"\145\x6e\x76\x2e\151\155\x61\147\145\x5f\x64\x65\163\x74\x69\156\141\x74\151\157\x6e"
) . $file_name_tmp,
$file_content
);
$result = [
"\163\x74\141\x74\165\x73" => true,
"\x66\151\154\145\x5f\156\141\155\145" => $file_name_tmp,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"\163\x74\141\x74\x75\163" => false,
"\x6d\x65\163\163\x61\147\145" =>
"\111\x6e\164\145\x72\x6e\141\x6c\x20\x73\145\162\166\x65\162\x20\145\x72\x72\157\162",
]);
}
}
public function convertedUpload(Request $request)
{
try {
$file_content = $request->get(
"\146\x69\154\145\137\143\157\156\x74\x65\x6e\164"
);
$file_etc = $request->get("\x66\151\x6c\x65\x5f\145\164\143");
$fileType = Common::DetectFileType($file_etc);
if ($fileType == DocumentEmbed::TYPE_IGNORE) {
return response()->json([
"\163\164\141\x74\x75\163" => false,
"\x6d\145\x73\163\x61\x67\145" =>
"\106\151\x6c\x65\40\164\171\160\x65\x20\x6e\x6f\164\40\163\165\160\160\157\x72\164",
]);
}
$time = uniqid() . Common::generateRandomString(7);
$prefix =
config(
"\x65\156\x76\x2e\x69\155\x61\147\x65\137\x70\162\145\146\151\170"
) . "\x5f";
$file_name = "\x2f\x50\x64\x66\x2f{$prefix}{$time}\x2e{$file_etc}";
$file_content = base64_decode($file_content);
File::put(
config(
"\x65\156\166\56\x69\155\x61\147\145\x5f\144\145\163\164\x69\x6e\x61\164\x69\157\x6e"
) . $file_name,
$file_content
);
$result = [
"\163\164\141\x74\165\x73" => true,
"\x66\x69\154\145\x5f\156\141\155\x65" => $file_name,
];
return response()->json($result);
} catch (\Exception $e) {
return response()->json([
"\163\x74\141\x74\x75\x73" => false,
"\155\x65\163\x73\x61\x67\145" =>
"\x49\x6e\164\145\162\x6e\x61\x6c\40\x73\x65\162\166\145\162\40\x65\x72\x72\x6f\162",
]);
}
}
}
Function Calls
None |
Stats
MD5 | d07f63e792307606ca060f4211503457 |
Eval Count | 0 |
Decode Time | 69 ms |