Người dùng bấm nút Báo cáo trong chat thì đơn rơi vào đây. Mỗi lần bấm "Xem hội thoại" đều được ghi vào nhật ký quản trị, đúng như Chính sách bảo mật đã công bố.
Tạm Khóa Nhắn Tin (dập lửa)
Đang khóa gửi tin
Đang mở, nhắn tin chạy bình thường
Khóa thì không ai gửi được tin hay tệp mới, kể cả gia sư. Mọi người vẫn đọc được hội thoại cũ, và chặn nằm ở máy chủ chứ không phải chỉ ẩn nút.
Để TRỐNG ô này thì nhắn tin chạy bình thường. Điền chữ vào là khóa, và đúng câu chữ vừa gõ sẽ hiện ra cho người dùng đọc.
{{ khoaChat.trim().length }}/300 ký tự. Dài quá, máy chủ sẽ từ chối lưu.
Chưa lưu
Tạm Khóa Lớp Học Video (dập lửa)
Đang khóa vào lớp
Đang mở, lớp học chạy bình thường
Khóa thì không ai vào phòng học mới được. Buổi đang diễn ra KHÔNG bị cắt ngang — người đang học cứ học tiếp tới khi phòng tự đóng. Chưa cấu hình máy chủ trung chuyển (TURN) thì lớp học video đã tắt sẵn, không cần đụng ô này.
Để TRỐNG ô này thì lớp học chạy bình thường. Điền chữ vào là khóa, và đúng câu chữ vừa gõ sẽ hiện ra cho người dùng đọc.
{{ khoaVideo.trim().length }}/300 ký tự. Dài quá, máy chủ sẽ từ chối lưu.
Báo cáo trỏ vào một tin nhắn cụ thể — bấm Xem hội thoại để đọc.
Ghi chú xử lý: {{ b.adminGhiChu }}
Tin Nhắn Gắn Cờ
Bộ lọc tự động cho tin đi qua nhưng đánh dấu để người thật xem lại. Phán "Bình thường" là gỡ cờ; phán "Chặn" là giấu tin khỏi người nhận, người gửi vẫn thấy tin của mình.
Bốn ô chữ gia sư gõ cho học sinh đọc (tên bài, lời dặn, nhận xét chấm, nhận xét từng câu) hiện nguyên văn ở đây.
Mỗi lượt mở được ghi vết trong nhật ký quản trị, đúng như bản Chính Sách Bảo Mật đã công bố.
Xem lại mọi cuộc trò chuyện giữa gia sư và học sinh để bảo đảm chất lượng và ngăn giao dịch đưa ra ngoài nền tảng. Mỗi lần mở một hội thoại đều được ghi vào nhật ký quản trị nội bộ; người dùng không nhận thông báo.
Đang tải...
Chưa có cuộc trò chuyện nào khớp.
{{ c.tenGiaSu }} ↔ {{ c.tenHocSinh }}
Đã đóng
{{ c.soTin }} tin · hoạt động gần nhất {{ formatNgayGio(c.tinCuoi) }}
Trang {{ ktTrang }}
Hội thoại #{{ htXem.hoiThoai.id }}
Gia sư {{ htXem.hoiThoai.tenGiaSu }} và học sinh {{ htXem.hoiThoai.tenHocSinh }} · lần xem này đã ghi vào nhật ký quản trị
Thông báo hiện ở quả chuông trên header của mọi người dùng đã đăng nhập, kèm chấm đỏ cho tới khi họ mở chuông. Không gửi email, không đẩy về điện thoại.
{{ tbTieuDe.trim().length }}/120 ký tự, một dòng.
{{ tbNoiDung.trim().length }}/1000 ký tự.
Đã Phát ({{ tbList.length }})
Chưa phát thông báo nào.
{{ tb.tieuDe }}
{{ tb.noiDung }}
{{ formatNgayGio(tb.luc) }} · {{ tb.nguoiPhat }}
Tổng Quan
Số liệu tính thẳng từ sổ ví, ghi danh, lịch học, luyện tập — không có bảng thống kê riêng nên không lệch với thực tế.
Cần bạn xử lý
Không có hồ sơ ứng tuyển, yêu cầu nạp ví hay báo cáo nào đang chờ.
Doanh thu ròng · {{ thongKe.khoangNgay }} ngày
{{ formatMoney(thongKe.doanhThu.rong) }}
Khóa học {{ formatMoney(thongKe.doanhThu.khoaHoc) }} · Gia sư {{ formatMoney(thongKe.doanhThu.giaSu) }} · Hoàn {{ formatMoney(thongKe.doanhThu.hoanTien) }}
Nạp ví đã duyệt
{{ formatMoney(thongKe.doanhThu.napViDaDuyet) }}
Tiền vào ví, chưa tiêu — đối chiếu sao kê
Người dùng mới
{{ formatSo(thongKe.nguoiDung.moi) }}
Tổng {{ formatSo(thongKe.nguoiDung.tong) }} · {{ formatSo(thongKe.nguoiDung.daXacMinhEmail) }} đã xác minh email
Ghi danh mới
{{ formatSo(thongKe.ghiDanh.moi) }}
Tổng {{ formatSo(thongKe.ghiDanh.tong) }} lượt ghi danh
Buổi gia sư mới
{{ formatSo(thongKe.datLich.moi) }}
{{ formatSo(thongKe.datLich.daHuy) }} đã hủy · {{ formatSo(thongKe.datLich.sapToi) }} sắp diễn ra
Phiên luyện tập
{{ formatSo(thongKe.luyenTap.phien) }}
{{ formatSo(thongKe.luyenTap.cauDaLam) }} câu đã làm
Bài cộng đồng mới
{{ formatSo(thongKe.congDong.baiMoi) }}
{{ formatSo(thongKe.congDong.binhLuanMoi) }} bình luận mới · {{ formatSo(thongKe.congDong.dangAn) }} đang ẩn
Tải video lên từ máy. Chưa có video thì trang chủ tự ẩn cả khối, không hiện chữ "sắp ra mắt". Nhận MP4, MOV hoặc WEBM, không giới hạn dung lượng (file càng nặng thì tải càng lâu, cứ để cửa sổ mở tới khi thanh tiến độ đủ 100%). Nên dùng MP4 (H.264): video .mov quay bằng iPhone ở chế độ High Efficiency là HEVC, một số trình duyệt không phát được và khung sẽ đen.
Video đang dùng
Chưa có video, khối này đang ẩn trên trang chủ
Đang tải lên {{ tienDoVideo }}%. Đừng đóng tab.
Ảnh bìa (hiện trước khi bấm phát)
Chưa có ảnh bìa, trình duyệt tự lấy khung đầu video
Video Đã Tải Lên ({{ khoVideo.length }})
Chưa có video nào trong kho.
{{ v.ten }}{{ (v.dungLuong / 1048576).toFixed(1) }}MBĐang dùng
Đơn Xin Tư Vấn
Khách để lại số ở form cuối trang chủ. Gọi xong thì đánh dấu để khỏi gọi trùng nhau.
Đang tải...
Chưa có đơn nào{{ tuVanLoc ? ' ở trạng thái này' : '' }}.
Ai cũng xem miễn phí trọn một chủ đề mỗi môn (chủ đề đầu của paper đầu). Mua gói, còn ngày dùng thử hoặc được tặng ngày thì mở toàn bộ kho. Gia sư, worker và admin luôn được mở sẵn.
Số Ngày Dùng Thử Người Mới
0 = tắt dùng thử. Chỉ tặng tài khoản MỚI, và chỉ phát khi họ XÁC MINH EMAIL xong — đăng ký suông chưa có gì.
Bảng Gói ({{ goiDs.length }})
Giá trên thẻ giá của trang chủ KHÔNG tự đổi theo bảng này — đổi giá xong nhớ sửa khối giá trong Soạn nội dung trang chủ.
Chưa có gói nào. Bấm Thêm Gói để tạo gói đầu tiên.
Tên
Giá
Giá gạch
Số ngày
Nhãn
Thứ tự
Trạng thái
Lượt mua
Thao tác
{{ g.name }}
{{ formatMoney(g.price) }}
{{ formatMoney(g.originalPrice) }}—
{{ formatSo(g.durationDays) }}
{{ g.badge }}—
{{ g.orderIndex }}
Đang bánNgừng bán
{{ formatSo(g.soLuotMua) }}
Gói Của Học Sinh
Tìm một học sinh để xem hạn hiện tại và lịch sử, tặng thêm ngày hoặc thu hồi quyền truy cập.
{{ hsChon.name }}
{{ hsChon.email }} · ID {{ hsChon.id }}
Hạn hiện tại
Mở toàn bộ kho tới {{ formatDateTime(hsGoi.hetHan) }}
Không có gói nào còn hạn — chỉ xem được chủ đề miễn phí của từng môn.
Lịch Sử ({{ hsGoi.lichSu.length }})
Chưa có lượt mua, dùng thử hay được tặng nào.
Nguồn
Gói
Đã trả
Bắt đầu
Hết hạn
Ghi chú
{{ nhanNguonGoi(s.source) }}
bởi {{ s.grantedByEmail }}
{{ s.planName || '—' }}
{{ formatMoney(s.pricePaid) }}
{{ formatDateTime(s.startsAt) }}
{{ formatDateTime(s.expiresAt) }}
{{ s.note || '' }}
Tặng Ngày
Còn hạn thì số ngày tặng cộng nối vào sau hạn cũ, không nuốt hạn đang có.
Thu Hồi Quyền
Cắt mọi quyền còn hạn về ngay bây giờ. Lịch sử giữ nguyên; tiền đã trả không tự hoàn về ví.
Quản Lý Gia Sư
Hồ sơ hiện ở trang Gia Sư công khai. Không xóa được hồ sơ (lịch học và đánh giá trỏ vào) — muốn gỡ khỏi trang thì tắt nhận học.
Lệnh Rút Tiền Gia Sư
Luật đã chốt 30/08/2026: thu nhập tháng N rút được từ ngày 15 tháng N+1; server đã kiểm số dư trước khi cho gia sư gửi lệnh. Chuyển khoản xong mới bấm Đã Chuyển — nút đó là sổ sách, không phải lệnh chuyển tiền.
Duyệt là tạo hồ sơ gia sư và cấp quyền tutor cho tài khoản đó. Quyền tutor mở luôn toàn bộ kho Luyện Theo Chủ Đề miễn phí, nên mỗi lần duyệt có một cái giá thật.
Đang tải...
Không có hồ sơ nào ở trạng thái này.
{{ d.displayName }}
{{ d.nguoiGui.name }} · {{ d.nguoiGui.email }} · {{ d.phone }}
Tài khoản đang bị khóa
{{ d.cv ? d.cv.ten : 'Hồ sơ này KHÔNG có CV' }}{{ tenLoaiCv(d.cv.loai) }} · {{ coChuDungLuong(d.cv.bytes) }}Đơn nộp trước ngày CV thành bắt buộc. Hỏi thêm qua số điện thoại trước khi duyệt.
Ghi chú của admin: {{ d.adminNote }}
Công Tắc Đặt Lịch Cũ (đã bỏ)
Có chữ (không còn tác dụng)
Đang trống
Từ 03/09/2026 học sinh không còn tự đặt buổi trên web:
VPath trao đổi với gia đình, gán gia sư rồi xếp lịch. Đường tự đặt đã đóng hẳn ở máy chủ
(trả 410), nên công tắc này không còn tác dụng gì.
Giữ lại để câu thông báo cũ không biến mất khỏi lịch sử; bật hay tắt đều không đổi gì.
Muốn tạm dừng cả khu Gia sư thì dùng khoá gia_su_bao_tri ở khối Bảo Trì.
Để TRỐNG ô này thì đặt lịch chạy bình thường. Điền chữ vào là khóa đặt lịch, và đúng câu chữ vừa gõ sẽ hiện ra cho học sinh đọc. Thông báo hiện thành một đoạn liền: chỗ xuống dòng sẽ được gộp lại thành dấu cách khi lưu.
{{ khoaDatLich.trim().length }}/300 ký tự. Dài quá, máy chủ sẽ từ chối lưu.
Chưa lưu
Nút "Điền câu mặc định" chỉ ghi sẵn chữ vào ô, chưa có hiệu lực gì. Sửa lại câu chữ cho vừa ý rồi bấm Lưu.
Tạm Khoá Bảo Trì Cả Khu
Khoá một khu là người dùng thường (kể cả khách) mở trang nào của khu đó cũng chỉ thấy màn "đang bảo trì" kèm câu bên dưới, và mọi API của khu trả lỗi 503. Tài khoản admin và worker vẫn vào bình thường để kiểm tra. Để TRỐNG rồi Lưu là mở lại.
{{ o.ten }}
Đang khoá bảo trì Đang mở
{{ o.dang.trim().length }}/300 ký tự
Chưa lưu
Chương Đầu Chỉ Mở Cho Người Được Mời
Đang bật, chỉ người được mời xem được
Đang tắt, chương đầu mở cho tất cả mọi người
Bật lên thì chương đầu của mỗi khóa chỉ mở cho học sinh đã mua khóa đó hoặc được mời xem demo (mời từng địa chỉ email trong trang Quản trị khóa học). Tắt đi thì chương đầu của MỌI khóa mở cho tất cả mọi người, kể cả khách chưa đăng nhập, đúng như quy ước ngày 06/09. Ô này không liên quan tới khối bảo trì bên trên: khu đang bảo trì thì người ngoài vẫn bị chặn ở cửa trước.
Học Thử Không Giới Hạn Cho Tài Khoản Admin
Đang bật, chỉ nên giữ trong lúc test
Đang tắt, admin theo luật một lần như học sinh
Bật lên thì riêng tài khoản admin đặt buổi học thử 30 phút bao nhiêu lần cũng được và không tiêu lượt, để test đặt lịch trên dữ liệu thật mà không phí quyền học thử. Học sinh thường không bị ảnh hưởng. Buổi test đặt ra vẫn là buổi thật trong Lịch Dạy: test xong nhớ hủy chúng đi.
{{ gsForm.id ? 'Sửa Hồ Sơ Gia Sư #' + gsForm.id : 'Thêm Gia Sư Mới' }}
Ảnh vuông, tối đa 5MB, PNG/JPEG/WEBP. Ảnh tải lên là ảnh CÔNG KHAI (hiện ở trang Gia Sư cho khách chưa đăng nhập).
Tài khoản đăng nhập gắn với hồ sơ
{{ gsForm.user.name }}{{ gsForm.user.email }}
Không bắt buộc. Chỉ gắn được tài khoản học sinh (admin/worker bị từ chối); gắn xong vai trò của họ thành Gia sư.
Hồ Sơ Gia Sư ({{ tutors.length }})
{{ chuCaiDau(t.displayName) }}
{{ t.displayName }}
#{{ t.id }}Đã xác minhTắt nhận học
{{ t.headline }}
{{ t.subjects.join(', ') }} · {{ t.levels.join(', ') }} · {{ formatMoney(t.pricePerHour) }}/giờ · {{ t.bookingCount }} buổi đã đặt
Gán một gia sư cho một học sinh theo môn. Gán xong thì gia sư mới giao bài được cho em đó, và em mới hiện trong danh sách học sinh của gia sư. Kết thúc phân công sẽ tự huỷ các buổi chưa diễn ra.
{{ pcCanhBao.length }} cặp đang học mà không có buổi nào trong 14 ngày tới
Gia sư là người xếp buổi. Cặp nằm đây nghĩa là học sinh đang chờ mà chưa ai xếp lịch.
{{ p.hocSinh.ten }} với {{ p.giaSu.ten }} · {{ p.mon }}
chưa có buổi nào
{{ gtChoDuyet.length }} buổi dạy thiếu giờ đang chờ xử lý
Tiền của những buổi này chưa vào phần rút được của gia sư. Duyệt là tiền vào ngay; trả lại thì gia sư sửa báo cáo rồi gửi tiếp. Không có khoản phạt nào.
Bắt đầu {{ formatNgayGio(g.batDauThucTe) }} · Kết thúc {{ formatNgayGio(g.ketThucThucTe) }}
{{ formatMoney(g.tutorEarning) }}
Lý do: {{ g.giaiTrinh.lyDo }}
Giải pháp: {{ g.giaiTrinh.giaiPhap }}
Gia sư chưa gửi báo cáo.
Chưa có phân công nào.
Học sinh
Gia sư
Môn
Buổi
Trạng thái
Việc
{{ p.hocSinh.ten }}{{ p.hocSinh.email }}
{{ p.giaSu.ten }}
hồ sơ chưa gắn tài khoản
{{ p.mon }} · {{ p.cap }}
{{ p.soBuoiDaXep }} buổi · {{ nhanThoiLuong(p.thoiLuongPhut) }}
{{ formatMoney(p.giaMoiBuoi) }} một buổikhông tính tiềnkế tiếp {{ formatDate(p.buoiKeTiep) }}chưa xếp buổi tới{{ nhanKhuon(p.lichCoDinh) }}chưa có lịch cố địnhđã xếp tới {{ formatDate(p.xepDenNgay) }}, dừng {{ formatDate(p.ketThucNgay) }}{{ p.soBuoiKhongAiVao }} buổi không ai vào phòng
chưa có thư mục Drive
{{ nhanTrangThaiPhanCong(p.trangThai) }}
Đã chọn: {{ pcForm.hocSinhTen }}
Học sinh: {{ pcForm.hocSinhTen }}
Em này chưa khai ngày sinh. Bắt buộc điền trước khi gán: luật gửi kèm phụ huynh cho người dưới 18 tuổi dựa vào đúng ô này, không biết tuổi thì hệ thống không được phép đoán.
Chỉ hiện hồ sơ đã gắn tài khoản đăng nhập. Hồ sơ chưa gắn thì gán vào cũng không ai dạy được.
Phụ huynh thanh toán ngoài web. Giá một buổi ở đây là tiền công của gia sư: mỗi buổi xếp lên lịch sẽ tính đúng số này. Đổi giá chỉ ăn vào những buổi tạo sau, buổi đã xếp giữ nguyên số tiền đã chốt. Để trống thì buổi ghi 0 đồng, không tính vào thu nhập gia sư hay doanh thu (lớp admin tự dạy).
Chuyển sang Tạm dừng hoặc Kết thúc sẽ huỷ mọi buổi chưa diễn ra của cặp này.
Chỉ admin đọc. Không hiện ra cho gia sư hay học sinh.
{{ pcLoi }}
{{ lichForm.hocSinhTen }} học với
{{ lichForm.giaSuTen }},
mỗi buổi {{ nhanThoiLuong(lichForm.thoiLuongPhut) }}.
Khung giờ mỗi tuần
Chưa có khung nào. Thêm một khung rồi bấm Lưu.
Lịch này tự lặp lại hằng tuần. Máy chủ giữ cho lớp luôn có buổi sẵn khoảng tám tuần tới, và tự xếp thêm mỗi tuần. Không phải vào đây bấm lại.
Đã xếp buổi tới {{ formatDate(lichForm.xepDenNgay) }}.
Buổi lẻ, chỉ một ngày
Không lặp lại. Dùng khi lớp chỉ học đúng buổi này, hoặc thêm một buổi ngoài khung giờ cố định. Buổi đang diễn ra vẫn xếp được.
Dừng lịch lặp lại
Để trống là học không hạn. Điền ngày thì lịch chỉ xếp tới hết ngày đó rồi tự dừng, buổi đã xếp trước đó giữ nguyên.
Muốn dừng ngay và huỷ mọi buổi chưa diễn ra thì bấm Kết thúc ở bảng ngoài.
Đã xếp {{ lichKetQua.daTao.length }} buổi.
Đã huỷ {{ lichKetQua.daHuy.length }} buổi tương lai của khung vừa bỏ
{{ h.nhan }}
Chỉ xếp tới {{ formatDate(lichKetQua.denNgay) }} vì lớp có ngày kết thúc.
{{ b.nhan }}
Bỏ qua {{ lichKetQua.boQua.length }} buổi
{{ o.nhan }} — {{ o.lyDo }}
{{ lichLoi }}
Yêu Cầu Nạp Ví
Đối chiếu mã tham chiếu và số tiền với sao kê ngân hàng trước khi duyệt. Bấm duyệt là tiền vào ví ngay và không tự hoàn lại được.
Không có yêu cầu nào trong mục này.
{{ rq.userName }}
{{ rq.userEmail }}
Số dư hiện tại: {{ formatMoney(rq.userWalletBalance) }}
{{ formatMoney(rq.amount) }}
{{ topUpStatusLabel(rq.status) }}
Mã tham chiếu — tìm chuỗi này trong nội dung chuyển khoản
{{ rq.referenceCode }}
Tạo lúc {{ formatDateTime(rq.createdAt) }}
Xử lý lúc {{ formatDateTime(rq.reviewedAt) }} bởi {{ rq.reviewerEmail }}
Ghi chú: {{ rq.note }}
Quản Lý Đánh Giá Khóa Học
Bật/tắt hiển thị từng đánh giá — đánh giá bị ẩn sẽ không hiện với học viên trên trang Khóa Học.
{{ chuCaiDau(rv.author) }}
{{ rv.author }}{{ formatDate(rv.createdAt) }}
{{ rv.courseTitle }}
{{ rv.comment || '(Không có nhận xét)' }}
Không có đánh giá nào trong mục này.
Quản Lý Kho Past Papers
Tải lên file đề thi (PDF) và mark scheme để học sinh tra cứu ở trang Ôn Luyện.
Quản Lý Danh MụcThêm / đổi tên / ẩn cấp học, môn học, component và chủ đề — worker và admin đều sửa được.
Xoá vĩnh viễn tài khoản này cùng toàn bộ dữ liệu học tập: khóa học đã mở, lịch sử ví,
buổi luyện tập, bài đăng, đánh giá, lịch học gia sư. Không thể hoàn tác.
Đề và câu hỏi người này từng tải lên sẽ được giữ lại.
Yêu Cầu Xóa Tài Khoản
Học sinh tự gửi từ trang Tài Khoản. Kiểm tra số dư ví và khóa học đã mua trước khi xóa —
xóa là mất luôn tiền trong ví của họ, không hoàn lại được.
Đang tải...
Không có yêu cầu nào
Chưa có học sinh nào xin xóa tài khoản ở trạng thái này.
Ví còn tiền. Xử lý hoàn/rút tiền cho học sinh TRƯỚC khi xóa tài khoản.
{{ anState.moTa }}
3–500 ký tự. Tác giả vẫn thấy bài của mình kèm lý do này; người khác không thấy nữa. Hiện lại được bất cứ lúc nào.
Đổi giá hay số ngày chỉ áp cho lượt mua MỚI — người đã mua giữ nguyên hạn cũ. Giá gạch là giá cũ hiện gạch ngang cạnh giá thật, bỏ trống nếu không giảm giá.