Xin chào mọi người.
Dựa trên các ý kiến thảo luận trong bài "Nhúng bộ gõ tiếng Việt vào Moodle", tôi đã thử tìm cách kết hợp Moodle - tinyMCE - Viettyping và đã đạt được một số thành công ban đầu tuy nhiên đây chỉ là giải pháp tạm thời cho các phiên bản Moodle 1.5+ hiện tại.
Ý tưởng thực hiện như sau:
Vì HTML Area được gắn quá sâu vào trong moodle (liên quan đến cả PHP và CSDL) nên tôi nghĩ nếu thay HTML Area thì phải lập trình lại rất nhiều do đó tôi chọn biện pháp tình thế là bật chế độ soạn thảo Plain Text. Khi đó Moodle sẽ dùng textarea cho phần soạn thảo nội dung. Việc sau đó là cài một đoạn script để tinyMCE "tìm" textarea này để xử lý thành một web editor với đầy đủ tính năng. Việc gắn Viettyping cũng khá đơn giản.
Sau đây là các bước:
1. Trước tiên bạn hãy download web editor tinyMCE tại địa chỉ: http://tinymce.moxiecode.com/download.php và Viettyping tại địa chỉ: http://vietdev.sourceforge.net/jscript/viettyping/viettyping_r10.051101.zip
2. Sau khi giải nén, upload hai thư mục viettyping và tinymce của 2 chương trình vào thư mục lib của moodle (đây chỉ là đề nghị của tôi, bạn có thể tùy ý chọn thư mục khác cũng như tinh giảm các file không cần thiết nếu bạn có hiểu biết về java script)
3. Tìm đến thư mục quản lý giao diện website của bạn (ví dụ nếu tôi chọn theme Wood thì tôi sẽ vào thư mục theme/wood). Dùng trình soạn thảo HTML như Notepad để mở 2 file: header.html và footer.html
4. Trong file header.html bạn thêm vào đoạn mã sau ở giữa tag </head> và <body<?php...: (giả sử bạn đặt Moodle trong thư mục moodle/ bên dưới thư mục gốc)
<!-- script for tiny_mce editor -->
<script language="javascript" type="text/javascript" src="/moodle/lib/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "advanced",
plugins : "table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,zoom,flash,searchreplace,print,contextmenu",
theme_advanced_buttons1_add_before : "save,separator",
theme_advanced_buttons1_add : "fontselect,fontsizeselect",
theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,zoom,separator,forecolor,backcolor",
theme_advanced_buttons2_add_before: "cut,copy,paste,separator,search,replace,separator",
theme_advanced_buttons3_add_before : "tablecontrols,separator",
theme_advanced_buttons3_add : "emotions,iespell,flash,advhr,separator,print",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_path_location : "bottom",
plugin_insertdate_dateFormat : "%Y-%m-%d",
plugin_insertdate_timeFormat : "%H:%M:%S",
extended_valid_elements : "a[name|href|target|title|onclick],img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name],hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",
relative_urls : false
});
</script>
<!-- end script -->
Chú thích:
- "/moodle/lib/tinymce/jscripts/tiny_mce/tiny_mce.js" là đường dẫn tương đối đến file script của tinyMCE, bạn phải khai báo thật chính xác.
- Đây là cài đặt đầy đủ của tinyMCE. Bạn có thể bớt các nút của editor bằng cách xóa bớt tên các nút trong các khai báo theme_advanced_buttons...
5. Trong file footer.html bạn đặt đoạn mã sau ngay sau tag </html> (dòng cuối cùng):
<!-- script for viettyping -->
<script src="/moodle/lib/viettyping/viettypingplus.js"></script>
6. Việc cài đặt đã hoàn tất, bây giờ bạn chỉ việc tắt trình soạn thảo HTML Area của Moodle để chuyển sang dùng tinyMCE. Với Viettyping, bạn có thể gõ tiếng Việt trong tất cả các text box và trong tinyMCE mà không cần dùng thêm phần mềm nào khác.
Như vậy chỉ với một vài thao tác đơn giản, Moodle đã được trang bị một editor "cực mạnh" và một bộ gõ TV tuyệt vời. Tuy nhiên do chưa được thử nghiệm nhiều nên không biết có trục trặc gì không. Rất mong ý kiến đóng góp của mọi người. Chúc các bạn cài đặt thành công.