nukeviet / nukeviet

NukeViet CMS is multi Content Management System. NukeViet CMS is the 1st open source content management system in Vietnam. NukeViet was awarded the Vietnam Talent 2011, the Ministry of Education and Training Vietnam officially encouraged to use.
http://nukeviet.vn
GNU General Public License v2.0
150 stars 294 forks source link

Lỗi bình luận trong News #1383

Open anhtunguyen opened 9 years ago

anhtunguyen commented 9 years ago

Khi một bài viết yêu cầu đăng nhập để thảo luận. Đăng nhập xong ngoảnh lại không thấy form thảo luận đâu. Cảm giác bị lừa:)

vuthao commented 9 years ago

Lỗi này xẩy ra do sau khi thành viên đăng nhập xong cũng không có quyển.

Cái này em sẽ nghĩ thêm các trường hợp cần thiết mới yêu cầu đăng nhập.

mynukeviet commented 9 years ago

Nếu quyền bình luận được thiết lập là “Thành viên” thì hiển thị ra là “Bạn cần đăng nhập......” khi quay về sẽ thấy form. Còn nếu là “Điều hành module” trở lên thì hiển thị “Bạn không được phép gửi bình luận” (hoặc ẩn form đi).

Việc này khiến những người là điều hành viên nếu không đăng nhập thì nhận thông báo “Không được phép gửi bình luận” nhưng nếu họ đăng nhập vẫn bình luận dc.

Em chỉ nghĩ ra mỗi phương án này, mọi người xem góp ý em với.

anhtunguyen commented 9 years ago

Có rất nhiều lựa chọn quyền xem hoặc bình luận (căn cứ vào nhóm ), nhưng chỉ có 2 form đăng nhập là admin và user. Form đăng nhập của admin vì lý do bảo mật không thể cho hiển thị, như vậy chỉ có trường hợp như sau:

mynukeviet commented 9 years ago

ok a. Em hiểu rồi. Em đang fix cái này.

mynukeviet commented 9 years ago

Fixed: https://github.com/hongoctrien/nukeviet/commit/4cd78e935642612d4581ff6f1398d263d93830f8

anhtunguyen commented 9 years ago

Vẫn chưa được :) Nếu 1 bài viết chỉ chấp nhận thành viên của một nhóm ví dụ NukeViet-Fans được bình luận.

anhtunguyen commented 9 years ago

modules/comment/comment.php, dòng 149: if( !empty( array_intersect( $allowed_tmp, array( 1, 2, 3 ) ) ) ) Sai ngữ pháp

anhtunguyen commented 9 years ago

Em cần căn cứ vào cấp bậc của người muốn bình luận bài viết chỉ cho phép thành viên thuộc một nhóm công cộng tham gia:

Trường hợp nhóm là nhóm kín:

mynukeviet commented 9 years ago

Nếu người ta chưa đăng nhập thì làm sao mình xác định được họ là ai, đã tham gia nhóm nào chưa,.... anh?

anhtunguyen commented 9 years ago

Nếu là guest thì em cấu tạo link như thế này: $url_groups = nv_url_rewrite( NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&' . NV_NAME_VARIABLE . '=users&' . NV_OP_VARIABLE . '=editinfo/group', true );

if( ! defined( 'NV_IS_USER' ) ) { $url_groups = NV_BASE_SITEURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&' . NV_NAME_VARIABLE . '=users&' . NV_OP_VARIABLE . '=login&nv_redirect=' . nv_redirect_encrypt( $url_groups ); }

mynukeviet commented 9 years ago

Vâng anh, em đang xem lại.

mynukeviet commented 9 years ago

Cái này hôm trc anh Thảo xử lý giúp em không biết hướng sao rồi. Vấn đề này không phải của riêng phần bình luận này, mà còn nhiều chổ khác. => Phải xây dựng hàm dùng chung cho việc hiển thị thông báo.

vuthao commented 9 years ago

Hiện tại mình vẫn chưa kiêm tra lỗi này được.

vuthao commented 6 years ago

@hoaquynhtim99 kiểm tra lại dùm lỗi này còn có không nhé.

hoaquynhtim99 commented 6 years ago

Em đã sửa phần này tại đây https://github.com/hoaquynhtim99/nukeviet/commit/682c5456fa2e1b683681781f83f6511cb81b68ac

vuthao commented 6 years ago

@hoaquynhtim99 hiện tại còn vấn đề sau: Nếu bài viết chi tiết có nội dung dài, giả sử 3 trang màn hình. Khi có yêu cầu

Bạn cần đăng nhập với tư cách là Thành viên chính thức để có thể bình luận

Lúc click vào đăng nhập xong thì nó ở về đầu trang, ngưòi dùng sẽ phải tìm lại chỗ mới kích hoạt.

Trường hợp thứ 2: Nếu ngưòi dùng chưa có tài khoản, sau khi đăng ký tài khoản xong nó về trang tài khoản mà không chuyền về trang vừa xem bài viết.

Trường hợp thứ 3: cần kiểm tra thêm với việc đăng nhập qua các ứng dụng facebok, google hoặc đăng ký mới tài khoản như facebook, google.

hoaquynhtim99 commented 6 years ago

@vuthao nếu làm những phần đó phải sửa nhiều ở giao diện