Closed GoogleCodeExporter closed 9 years ago
Trạng thái ẩn hiện panel đã được save trong cookie từ lâu, từ
bản 0.6 đầu tiên thì
phải. Mà hiện tượng hiện panel mỗi lần mở 1 trang này chỉ
gặp ở vcsj.net . Các trang
khác như trang test chính thức tại http://anhn.net/test/mudim hoặc
svol.ru thì việc
ẩn hiện panel này hoàn toàn bình thường. Có thể trong code tuỳ
biến của vcsj.net có
đoạn nào đó làm thay đổi giá trị Mudim.showPanel hoặc cookie
chăng?
Dù sao cũng sẽ có thêm 1 cải tiến nhỏ là tạo panel với thuộc
tính ẩn, tránh hiện
tượng lúc load trang panel hiện ra rồi mới mất đi.
Original comment by mud...@gmail.com
on 19 May 2008 at 10:55
[deleted comment]
[deleted comment]
Q: Có thể trong code tuỳ biến của vcsj.net có đoạn nào đó làm
thay đổi giá trị
Mudim.showPanel hoặc cookie chăng?
A: Không.
Nếu vì lí do nào đó (ví dụ phiên bản của Mudim thay đổi
nhưng cookie của người dùng
không được reset) cookie đã có sẵn giá trị sau:
"|mudim-settings=57; x=5;
_session_id=xyzblahblah92b7d2a6a213c3d00ddeadd; |mudim-settings=58"
Thì hàm Mudim.SetPreference khi lưu trạng thái sẽ chỉ làm thay
đổi giái trị của cụm
|mudim-settings phía sau.
(Mới thử trên Firefox, chưa thử trên các trình duyệt khác)
Nếu trên tất cả trình duyệt, khi ghi cookie lúc nào giá trị
mới cũng nằm ra phía sau,
thì hàm đọc cookie nên sửa để lúc nào cũng đọc giá trị
phía sau cùng thay vì giá trị
đầu tiên như hiện tại.
Original comment by ngocdaot...@gmail.com
on 19 May 2008 at 12:12
Không có giá trị trước và sau được vì cookie name giống nhau
mà. Lý do của vcsj.net
là phần tự đọc lại cookie, hiện nay không cần nữa vì vấn
đề với cookie đã giải quyết
(issue #23). Trong đó có dòng gọi hàm SetMethod(Mudim.method), hàm này
làm 2 việc là
gán giá trị cho Mudim.method và đặt lại cookie, tham số lại là
Mudim.method thì nó
chỉ còn mỗi tác dụng đặt lại cookie. Tại thời điểm đó
showPanel mang giá trị mặc định
true. Vì vậy cứ mỗi lần load 1 trang là cookie lại bị thay đổi
với giá trị tương ứng
với showPanel là true.
Original comment by mud...@gmail.com
on 19 May 2008 at 3:29
Bỏ qua trang vcsj.net, hãy thử nghiệm trên trang cntt.tv đã bỏ
phần tự đọc cookie sẽ
tái hiện được lỗi:
1. Dùng Firebug để nhập:
document.cookie = "|mudim-settings=57; x=5;
_session_id=xyzblahblah92b7d2a6a213c3d00ddeadd; |mudim-settings=58"
2. Refresh trang web
3. Dùng bảng điều khiển để thay đổi settings của Mudim
4. Refresh trang web
, sẽ thấy settings vẫn là settings cũ không được cập nhật
Original comment by ngocdaot...@gmail.com
on 19 May 2008 at 11:33
Em đã làm theo từng bước, mỗi bước có theo dõi cookie cẩn
thận. Ban đầu để kiểu viqr.
1. document.cookie = "|mudim-settings=57; x=5;
_session_id=xyzblahblah92b7d2a6a213c3d00ddeadd; |mudim-settings=58"
Sau bước này nhìn lại cookie chỉ chứa 1 giá trị mudim-settings
là 57 tương ứng với
kiểu vni nhưng trên panel vẫn là kiểu viqr
2. Refresh, nó hiện lại đúng kiểu vni, cookie vẫn là 57
3. Thay đổi settings thành kiểu telex, cookie thành 58
4. Lại refresh, nó vẫn hiện ra kiểu telex bình thường, cookie
vẫn 58
Tóm lại là em vẫn chưa thấy gì bất thường cả. Thử đổi
bước 3 lên trước bước 2 vãn
vẫn không thấy gì bất thường. Bác cho thêm chỉ dẫn.
Ở bước 1 em gõ thẳng lên address bar
(javascript:alert(document.cookie="..."))chứ
không dùng firebug (vì không biết nó đặt cookie ở đâu :D )
Original comment by mud...@gmail.com
on 20 May 2008 at 11:13
Hôm nay không tái hiện được lỗi nữa. Có vẻ phiên bản Mudim
mới không còn vấn đề này.
Hiện trang vcsj.net đã theo bước cntt.tv link thẳng đến phiên
bản mới nhất trong
repository.
Original comment by ngocdaot...@gmail.com
on 21 May 2008 at 3:13
Original comment by mud...@gmail.com
on 21 May 2008 at 4:12
Original issue reported on code.google.com by
ngocdaot...@gmail.com
on 19 May 2008 at 6:25