PostNuke v0.7.2.x
Đây là 1 chương trình mã nguồn mở viết bằng Php, chuyên dùng để tạo và quản lý website nhiều chức năng, chương trình này được phát triển từ PhpNuke http://www.phpnuke.org ; http://www.postnuke.com .nên cách sử dụng và giao diện cũng tương tự nhưng gọn nhẹ và phong phú chức năng hơn PhpNuke, các chức năng chính bao gồm:
- Người dùng có thể gởi bài viết, sửa chữa, bổ sung và tạo các đề mục bình chọn/thăm dò.
- Gởi file hay phần mềm cần phổ biến.
- Gởi bình luận/nhận xét khi xem thông tin, đánh giá bài viết/file trong website.
- Cho phép thay đổi kiểu dáng/giao diện/ngôn ngữ website theo sở thích cá nhân.
- Ban quản trị wesite có thể kiểm duyệt tất cả các thông tin/file do người dùng gởi lên trước khi đăng tải.
- Có thể thêm/bớt các chức năng dành cho người dùng.
Chương trình đòi hỏi server hỗ trợ Php, MySQL.

Các bạn có thể tải bộ PostNuke v0.7.2 tại địa chỉ http://www.postnuke.com , giải nén và chép toàn bộ file cũng như thư mục con trong thư mục HTML vào thư mục gốc (hay thư mục bất kỳ) của localhost hay upload lên server mạng.
Sau đây chúng tôi sẽ hướng dẫn các cài đặt trên localhost – quá trình cài trên mạng cũng tương tự như vậy.
Chạy trình duyệt và gõ địa chỉ để chạy file install.php, thí dụ: http://localhost/install.php
Chương trình cài đặt sẽ đưa bạn qua từng bước như sau
1/ Chọn ngôn ngữ cho giao diện cài đặt: Bạn bấm nút Set Language để tiếp tục.

2/ Chương trình sẽ kiểm tra xem có được quyền thay đổi 2 file config.php và config-old.php hay không. Chú ý: Nếu cài trên mạng bạn cần phải xác lập thuộc tính cho 2 file này là 666 bằng lịnh CHMOD trước khi cài đặt.
Chương trình sẽ sửa chữa nội dung 2 file này và mã hoá nội dung file config.php để bảo mật thông tin về người Quản trị.

3/ Khai báo các thông tin để tạo Cơ sở dữ liệu cho chương trình:

- Database Host: Khai báo tên server MySQL. Chú ý: Nếu bạn cài trên localhost hay cài trên mạng mà MySQL và PostNuke cùng chung 1 server thì ghi là localhost, nếu MySQL và PostNuke cài khác server, bạn phải khai báo đầy đủ địa chỉ theo hướng dẫn của quản trị mạng.
- Database Username/Password: Khai báo Tên và Mật khẩu của người quản trị CSDL. Chú ý: đừng lầm lẫn Tên và Mật khẩu này với tên/mật khẩu truy cập mạng, ftp hay PostNuke.
- Database Name: Tên của CSDL sẽ tạo riêng cho PostNuke.
- Table Prefix: Các ký tự đầu của mỗi bảng trong CSDL.
- Database Type: Kiểu CSDL.
- Site is for intranet or other local (non-internet) use: Chọn mục này nếu bạn chạy PostNuke trong mạng nội bộ.
4/ Kiểm tra lại các khai báo:

- Change info: Quay lại để sửa đổi các thông tin khai báo.
- New Install: Cài mới.
- Upgrade: Nâng cấp hay chuyển đổi từ PHP-Nuke, MyPHPNuke…
5/ Cài mới: Bấm nút Start để tiến hành cài đặt.

Chú ý: Bạn có thể đánh dấu chọn mục Create the Database nếu bạn chưa tạo CSDL trong MySQL trước khi cài đặt. Có nhiều trường hợp chương trình không thể tạo CSDL để cài đặt, khi đó bạn phải tự tạo CSDL bằng cách sử dụng PhpMyAdmin (nếu cài trên mạng) hay đơn giản là tạo thư mục post trong thư mục mysql/data/ rồi sau đó mới tiến hành cài đặt PostNuke.
6/ Sau khi đã tạo xong các bảng (table) các bạn sẽ được yêu cầu khai báo thông tin cho người quản trị Website PostNuke.

- Admin Login: Tên truy cập của người quản trị website.
- Admin Name: Tên thực
- Admin Password: Mật khẩu
- Admin Password (verify): Mật khẩu gõ lại để kiểm chứng.
- Admin Email: Địa chỉ email của người quản trị.
- Admin URL: Trang Web riêng của người quản trị hay địa chỉ của website này.
7/ Trong màn hình cuối bạn bấm vào dòng chữ Go to your PostNuke site để bắt đầu chạy chương trình PostNuke.
![]()
Sau khi cài đặt bạn phải xoá file install.php và thư mục install để bảo vệ an toàn cho website.
Để Việt hoá PostNuke bạn cần dùng chương trình UltraEdit v9.1 trở lên để sửa các file nguồn. Chú ý: Trong UltraEdit nhớ mở Configuration/General đánh dấu chọn mục Auto detect UTF-8 files. Khi mở file để Việt hoá bạn phải chọn File/Conversions/UNICODE/UTF-8 to UTF-8 (Unicode Editing). Dưới đây là các việc cần làm
1/ Mở file includes/pnAPI.php, tìm đoạn
case 'rus':
if (!empty($headers)) $headers .= "\n";
$headers .= "Content-Type: text/plain; charset=koi8-r";
$subject = convert_cyr_string($subject,"w","k");
$message = convert_cyr_string($message,"w","k");
$headers = convert_cyr_string($headers,"w","k");
break;
Thêm vào bên dưới
case 'vn':
$headers .= "Content-Type: text/html; charset=utf-8";
$message = preg_replace('|\n|', '<br>', $message);
break;
2/ Trong thư mục includes/language/blocks/ bạn sao chép thư mục eng thành thư mục vn rồi Việt hoá các file *.php trong thư mục vn.
3/ Trong thư mục language bạn sao chép thư mục eng thành thư mục vn rồi Việt hoá các file *.php trong thư mục vn.
Chú ý: Khi Việt hoá file global.php các bạn có thể quy định lại cách định dạng thời gian cho phù hợp với VN, thí dụ:
- Tìm đoạn từ
define('_DATEBRIEF','%b %d, %Y');
---------------------------- cho đến
define('_LINKSDATESTRING','%d-%b-%Y');
Sửa thành
define('_DATEBRIEF','%d/%b/%Y');
define('_DATELONG','%A, %d/%b/%Y');
define('_DATESTRING','%A, %d/%b/%Y @ %H:%M:%S');
define('_DATESTRING2','%A, %d/%b/%Y');
define('_DATETIMEBRIEF','%d/%b/%Y - %I:%M %p');
define('_DATETIMELONG','%A, %d/%b/%Y - %I:%M %p');
define('_LINKSDATESTRING','%d/%b/%Y');
- Tìm đoạn từ
define('_DAY_OF_WEEK_LONG','Sunday Monday Tuesday Wednesday Thursday Friday Saturday');
---------------------------- cho đến
define('_MONTH_SHORT','Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec');
Sửa thành
define('_DAY_OF_WEEK_LONG','CN Thứ-Hai Thứ-Ba Thứ-Tư Thứ-Năm Thứ-Sáu Thứ-Bảy');
define('_DAY_OF_WEEK_SHORT','CN Hai Ba Tư Năm Sáu Bảy');
define('_MONTH_LONG','Tháng-1 Tháng-2 Tháng-3 Tháng-4 Tháng-5 Tháng-6 Tháng-7 Tháng-8 Tháng-9 Tháng-10 Tháng-11 Tháng-12');
define('_MONTH_SHORT','1 2 3 4 5 6 7 8 9 10 11 12');
- Tìm đoạn từ
define('_LANGUAGE_ARA', 'Arabic');
----------------------------------- cho đến
define('_LANGUAGE_X_KLINGON', 'Klingon');
Sửa thành
define('_LANGUAGE_ENG', 'English');
define('_LANGUAGE_VN', 'Vietnamese');
4/ Mở thư mục modules, mỗi thành phần chức năng của PostNuke sẽ là một thư mục con trong thư mục này và đều có thư mục lang/eng hay pnlang/eng, bạn hãy sao chép các thư mục eng thành thư mục vn rồi tiến hành Việt hoá các file trong thư mục vn.
Chú ý: - Mở file modules/NS-Languages/api.php tìm dòng
$lang['eng'] = _LANGUAGE_ENG; // English
Thêm vào bên dưới
$lang['vn'] = _LANGUAGE_VN; // VietNamese UTF-8
- Tìm dòng
$rsslang['en'] = 'English';
Thêm vào bên dưới
$rsslang['vn'] = 'Vietnamese';
5/ Có một số trường hợp các đoạn Text không nằm trong file ngôn ngữ mà lại nằm trong các file khác, khi đó bạn cần phải dùng chức năng tìm kiếm nội dung để tìm file có chứa dòng text đó và tiến hành Việt hoá giống như với file ngôn ngữ. Tuy nhiên các bạn cần phân biệt giửa dòng Text và mã lịnh để không làm hư chương trình.
Sau khi sửa file nguồn, bạn cần phải vào PostNuke với tư cách Admin và chọn mục Ngôn ngữ mặc định cho chương trình là Vietnamese.

Chú ý: chương trình sẽ tự động tìm thư mục con vn trong thư mục language và lang hay pnlang trong các thư mục module để nạp file ngôn ngữ khi cần thiết.
Các bạn tải bộ cài đặt PhpBB201 cho PostNuke tại địa chỉ: http://phpbb2pnmod.sourceforge.net/, http://sourceforge.net/projects/phpbb2pnmod
1/ Sau khi tải về, giải nén và chép thư mục phpBB2 vào thư mục modules của PostNuke. Chú ý: Bạn không được thay đổi tên thư mục phpBB2, nếu thay đổi bạn phải sửa địa chỉ hàng loạt file nguồn cho phù hợp.
2/ Mở thư mục pn-changeinfo/ giải nén và chép nội dung trong file pn71x.zip hay pn72x.zip vào thư mục PostNuke tuỳ theo phiên bản của PostNuke.
3/ Mở file phpBB2/config.php thay đổi các xác lập cho phù hợp với thực tế - bạn có thể xác lập theo các thông tin trong file config.php của PostNuke.
$dbhost = ""; $dbname = ""; $dbuser = ""; $dbpasswd = "";
Chú ý: Bạn không được thay đổi dòng $table_prefix = "phpbb_"; //Do not change this!! - nếu thay đổi chương trình sẽ không chạy.
4/ Dùng PhpMyAdmin để nhập nội dung file Sql/phpbb201.sql vào CSDL của PostNuke. Chú ý: Các Table của PhpBB2 phải nằm chung với các Table của Postnuke.
1/ Đăng nhập vào PostNuke với tư cách admin, truy cập bảng Quản trị/Block/, chọn Sửa Danh mục chính (Main Menu).
Trong bảng sửa Danh mục chính, bạn tạo thêm 1 dòng trống mới trên/dưới dòng AvantGo hay dòng nào đó tuỳ thích. Gõ Tiêu đề cho forum, gõ tên thư mục của forum rồi tới mô tả. Bấm nút chấp nhận để lưu thay đổi.

2/ Bấm chuột vào mục Diễn đàn trong trang chính để chạy Diễn đàn. Truy cập Bảng điều khiển dành cho người quản trị (Admin Control Panel) để xác lập các thông số hoạt động cho diễn đàn.

3/ Thay các file ngôn ngữ của PhpBB bằng các file Việt hoá giống như với bản PhpBB độc lập.
Nếu bạn đã có 1 diễn đàn phpBB trước đây và bây giờ muốn nhúng các CSDL (thành viên, bài viết…) vào PostNuke hay bạn đã cài PostNuke trước sau đó mới cài phpBB và muốn đồng bộ danh sách thành viên của PostNuk với phpBB. Bạn có thể sử dụng PhpMyAdmin và làm theo các hướng dẫn dưới đây
1/ Do đa số các Table của bản phpBB cho PostNuke và PhpBB độc lập giống nhau nên các bạn có thể sao chép nội dung của chúng qua lại lẫn nhau không có gì trở ngại. Dưới đây là danh sách các Table tương đương của 2 bản phpBB
phpbb_auth_access; phpbb_banlist; phpbb_categories; phpbb_disallow; phpbb_forum_prune; phpbb_forums; phpbb_groups; phpbb_posts; phpbb_posts_text; phpbb_privmsgs; phpbb_privmsgs_text; phpbb_ranks; phpbb_search_results; phpbb_search_wordlist; phpbb_search_wordmatch; phpbb_sessions; phpbb_smilies; phpbb_topics; phpbb_topics_watch; phpbb_user_group; phpbb_vote_desc; phpbb_vote_results; phpbb_vote_voters.
2/ Danh sách các Table không tương đương, cần thay đổi trước khi đồng bộ.
phpbb_config; phpbb_themes; phpbb_themes_name; phpbb_groups; phpbb_users.
Theo kinh nghiệm của người viết bài, bạn không nên thay đổi các Table phpbb_config; phpbb_themes; phpbb_themes_name của bản phpBB trong PostNuke vì chúng đã được xác lập để kết hợp tốt với PostNuke.
* Table phpbb_users: Bạn phải đồng bộ với PostNuke như sau
- Dùng PhpMyAdmin nhập Table phpbb_users vào PostNuke nhưng đổi tên thành phpbb1_users.
- Xoá 2 mục UserID -1 và 2 (vì 2 mục này không phù hợp với phpBB trong Nuke) trong Table phpbb1_users.
- Chèn các thông tin trong Table phpbb1_users vào Table phpbb_users để tạo lập thành viên cho phpBB trong PostNuke bằng dòng lịnh
INSERT into phpbb_users (user_id,user_active,username,user_password, user_session_time,user_session_page,user_lastvisit,user_regdate,user_level,user_posts,user_timezone,user_style,user_lang,user_dateformat,user_new_privmsg,user_unread_privmsg,user_last_privmsg,user_emailtime,user_viewemail,user_attachsig,user_allowhtml,user_allowbbcode,user_allowsmile,user_allowavatar,user_allow_pm,user_allow_viewonline,user_notify,user_notify_pm,user_popup_pm,user_rank,user_avatar,user_avatar_type,user_email,user_icq,user_website,user_from,user_sig,user_sig_bbcode_uid,user_aim,user_yim,user_msnm,user_occ,user_interests,user_actkey,user_newpasswd) SELECT user_id,user_active,username,user_password, user_session_time,user_session_page,user_lastvisit,user_regdate,user_level,user_posts,user_timezone,user_style,user_lang,user_dateformat,user_new_privmsg,user_unread_privmsg,user_last_privmsg,user_emailtime,user_viewemail,user_attachsig,user_allowhtml,user_allowbbcode,user_allowsmile,user_allowavatar,user_allow_pm,user_allow_viewonline,user_notify,user_notify_pm,user_popup_pm,user_rank,user_avatar,user_avatar_type,user_email,user_icq,user_website,user_from,user_sig,user_sig_bbcode_uid,user_aim,user_yim,user_msnm,user_occ,user_interests,user_actkey,user_newpasswd FROM phpbb1_users;
- Chèn các thông tin trong Table phpbb1_users vào Table nuke_users để đồng bộ danh sách thành viên giửa phpBB và PostNuke bằng dòng lịnh
INSERT into nuke_users (pn_uid, pn_uname, pn_email, pn_url, pn_user_icq, pn_user_from, pn_user_intrest, pn_pass, pn_user_regdate) SELECT user_id, username, user_email, user_website, user_icq, user_from, user_interests, user_password, user_regdate from phpbb_users;
* Table phpbb_groups:
- Nhập thông tin từ Table phpbb_groups của bản PhpBB độc lập vào PhpBB trong PostNuke
- Chèn các thông tin trong Table phpbb_groups vào Table nuke_group_membership để đồng bộ danh sách thành viên giửa phpBB và PostNuke bằng dòng lịnh
INSERT into nuke_group_membership (pn_uid) SELECT group_id FROM phpbb_groups WHERE pn_uid > '2';
- Thay đổi thông tin của mục pn_gid (vì xác lập trong PostNuke và phpBB khác nhau) bằng dòng lịnh
UPDATE nuke_group_membership SET pn_gid='1' WHERE pn_uid > '2';
Để nhập dữ liệu thành viên trong PostNuke vàp phpBB trong PostNuke các bạn chỉ cần dòng lịnh
INSERT into phpbb_users (user_id, username, user_email, user_website, user_icq, user_from, user_interests, user_password) SELECT pn_uid, pn_uname, pn_email, pn_ url, pn_user_icq, pn_user_from, pn_user_intrest, pn_pass FROM nuke_users;
- Chép file vietuni.js vào thư mục gốc của PostNuke
- Mở file themes/XP-Style-Silver/theme.php hay bất kỳ file theme.php nào trong thư mục kiểu dáng mà bạn sử dụng cho Site của mình.
Tìm dòng
echo "<table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" border=\"0\" bgcolor=\"#F5F5F5\">\n"
Thêm vào bên trên
echo "<script language=\"JavaScript1.2\" src=\"vietuni.js\" type=\"text/javascript\"></script>\n";
Tìm dòng
."<form action=\"modules.php\" method=\"post\">\n"
Thêm vào bên trên
."<b>Bộ gõ VietUni</b> (phím tắt: Alt + ký tự)<br><input type=radio name=\"switcher\" accesskey=\"t\" value=\"OFF\" checked onfocus=\"setTypingMode(0);\">Tắt(t)<input type=radio name=\"switcher\" accesskey=\"x\" value=\"TELEX\" onfocus=\"setTypingMode(1);\">Telex(x)<input type=radio name=\"switcher\" accesskey=\"i\" value=\"VNI\" onfocus=\"setTypingMode(2);\">VNI(i)<input type=radio name=\"switcher\" accesskey=\"r\" value=\"VIQR\" onfocus=\"setTypingMode(3);\">VIQR(r)<br><br>"
Sau khi cài bộ gõ này luôn luôn xuất hiện trên đầu trang và có thể điều khiển bằng phím tắt, bạn muốn gõ được tiếng Việt trong bất cứ ô nhập liệu nào chỉ cần thêm dòng mã onkeyup=”initTyper(this);” vào đoạn mã lịnh của ô nhập liệu đó.
Chú ý: Dùng bộ gõ VietUni tuy có phiền phức trong việc phải chèn 1 đoạn mã vào các ô nhập liệu nhưng có ưu điểm hơn các bộ gõ khác ở chổ bạn có thể chỉ định cho ô nào được gõ tiếng Việt, ô nào không được gõ trong trường hợp trang web có nhiều ô nhập liệu. Thí dụ: mục khai báo tên thật có thể cho gõ tiếng Việt nhưng mục Mật khẩu thì không được gõ tiếng Việt.
Để gõ tiếng Việt trong các chức năng của PostNuke, bạn cũng sửa file nguồn của chức năng tương tự đã hướng dẫn đối với PhpNuke.
Tìm dòng
echo "<input type=text name=query>\n";
Sửa thành
echo "<input type=text name=query onkeyup='initTyper(this);'>\n";
Mở file modules/Your_Account/index.php
Tìm đoạn
."<tr><td>"._LOCATION.":</td><td><input type=\"text\" name=\"user_from\" size=\"25\" maxlength=\"60\"></td></tr>\n"
."<tr><td>"._OCCUPATION.":</td><td><input type=\"text\" name=\"user_occ\" size=\"25\" maxlength=\"60\"></td></tr>\n"
."<tr><td>"._INTERESTS.":</td><td><input type=\"text\" name=\"user_intrest\" size=\"25\" maxlength=\"255\"></td></tr>\n"
."<tr><td>"._OPTION.":</td><td><INPUT TYPE=\"CHECKBOX\" NAME=\"user_viewemail\" VALUE=\"1\"> "._ALLOWEMAILVIEW."</td></tr>\n"
."<tr><td>"._SIGNATURE.":</td><td><TEXTAREA NAME=\"user_sig\" ROWS=\"6\" COLS=\"45\"></TEXTAREA></td></tr>\n"
Sửa thành
."<tr><td>"._LOCATION.": (có thể gõ tiếng Việt)</td><td><input type=\"text\" name=\"user_from\" size=\"25\" maxlength=\"60\" onkeyup='initTyper(this);'></td></tr>\n"
."<tr><td>"._OCCUPATION.": (có thể gõ tiếng Việt)</td><td><input type=\"text\" name=\"user_occ\" size=\"25\" maxlength=\"60\" onkeyup='initTyper(this);'></td></tr>\n"
."<tr><td>"._INTERESTS.": (có thể gõ tiếng Việt)</td><td><input type=\"text\" name=\"user_intrest\" size=\"25\" maxlength=\"255\" onkeyup='initTyper(this);'></td></tr>\n"
."<tr><td>"._OPTION.":</td><td><INPUT TYPE=\"CHECKBOX\" NAME=\"user_viewemail\" VALUE=\"1\"> "._ALLOWEMAILVIEW."</td></tr>\n"
."<tr><td>"._SIGNATURE.": (có thể gõ tiếng Việt)</td><td><TEXTAREA NAME=\"user_sig\" ROWS=\"6\" COLS=\"45\" onkeyup='initTyper(this);'></TEXTAREA></td></tr>\n"
Mở file modules/Your_Account/index.php
Tìm đoạn
."<input type=\"text\" size=\"60\" maxlength=\"255\" name=\"the_message\"'> <input type=\"submit\" value=\""._SEND."\">"
Sửa thành
."(có thể gõ tiếng Việt)<br><input type=\"text\" size=\"60\" maxlength=\"255\" name=\"the_message\" onkeyup='initTyper(this);'> <input type=\"submit\" value=\""._SEND."\">"
Mở file modules/Your_Account/index.php
Tìm đoạn
."<b>"._YLOCATION."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_from\" value=\"$userinfo[user_from]\" size=\"30\" maxlength=\"100\"><br><br>"
."<b>"._YOCCUPATION."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_occ\" value=\"$userinfo[user_occ]\" size=\"30\" maxlength=\"100\"><br><br>"
."<b>"._YINTERESTS."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_intrest\" value=\"$userinfo[user_intrest]\" size=\"30\" maxlength=\"100\"><br><br>"
."<b>"._SIGNATURE."</b> "._OPTIONAL."<br>"
.""._255CHARMAX."<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"5\" name=\"user_sig\">$userinfo[user_sig]</textarea><br>"
."<br><br>"
."<b>"._EXTRAINFO."</b> "._OPTIONAL."<br>"
.""._CANKNOWABOUT."<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"5\" name=\"bio\">$userinfo[bio]</textarea>"
Sửa thành
."<b>"._YLOCATION."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_from\" value=\"$userinfo[user_from]\" size=\"30\" maxlength=\"100\" onkeyup='initTyper(this);'> (có thể gõ tiếng Việt)<br><br>"
."<b>"._YOCCUPATION."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_occ\" value=\"$userinfo[user_occ]\" size=\"30\" maxlength=\"100\" onkeyup='initTyper(this);'> (có thể gõ tiếng Việt)<br><br>"
."<b>"._YINTERESTS."</b> "._OPTIONAL."<br>"
."<input type=\"text\" name=\"user_intrest\" value=\"$userinfo[user_intrest]\" size=\"30\" maxlength=\"100\" onkeyup='initTyper(this);'> (có thể gõ tiếng Việt)<br><br>"
."<b>"._SIGNATURE."</b> "._OPTIONAL." (có thể gõ tiếng Việt)<br>"
.""._255CHARMAX."<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"5\" name=\"user_sig\" onkeyup='initTyper(this);'>$userinfo[user_sig]</textarea><br>"
."<br><br>"
."<b>"._EXTRAINFO."</b> "._OPTIONAL." (có thể gõ tiếng Việt)<br>"
.""._CANKNOWABOUT."<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"5\" name=\"bio\" onkeyup='initTyper(this);'>$userinfo[bio]</textarea>"
Mở file modules/Your_Account/index.php
Tìm đoạn
."<br>"._YOUCANUSEHTML."<br>"
."<textarea cols=\"55\" rows=\"5\" name=\"ublock\">$userinfo[ublock]</textarea>"
Sửa thành
."<br>"._YOUCANUSEHTML." (có thể gõ tiếng Việt)<br>"
."<textarea cols=\"55\" rows=\"5\" name=\"ublock\" onkeyup='initTyper(this);'>$userinfo[ublock]</textarea>"
Mở file modules/Private_Messages/reply.php
* Tìm dòng
."<TD BGCOLOR=\"$bgcolor3\" width=\"25%\"><b>"._SUBJECT.":<b></TD>";
Sửa thành
."<TD BGCOLOR=\"$bgcolor3\" width=\"25%\"><b>"._SUBJECT.": (có thể gõ tiếng Việt)<b></TD>";
* Tìm dòng
echo "<TD BGCOLOR=\"$bgcolor1\"><INPUT TYPE=\"TEXT\" NAME=\"subject\" SIZE=\"50\" MAXLENGTH=\"100\"></TD>";
Sửa thành
echo "<TD BGCOLOR=\"$bgcolor1\"><INPUT TYPE=\"TEXT\" NAME=\"subject\" SIZE=\"50\" MAXLENGTH=\"100\" onkeyup='initTyper(this);'></TD>";
* Tìm dòng
."<TD BGCOLOR=\"$bgcolor3\" width=\"25%\"><b>"._MESSAGE.":</b>";
Sửa thành
."<TD BGCOLOR=\"$bgcolor3\" width=\"25%\"><b>"._MESSAGE.": (có thể gõ tiếng Việt)</b>";
* Tìm dòng
."<TD BGCOLOR=\"$bgcolor1\"><TEXTAREA NAME=\"message\" ROWS=\"10\" COLS=\"45\" WRAP=\"VIRTUAL\">";
Sửa thành
."<TD BGCOLOR=\"$bgcolor1\"><TEXTAREA NAME=\"message\" ROWS=\"10\" COLS=\"45\" WRAP=\"VIRTUAL\" onkeyup='initTyper(this);'>";
Mở file modules/Feedback/index.php
Tìm đoạn
<P><strong>"._MESSAGE.":</strong><br>
<TEXTAREA NAME=\"message\" COLS=30 ROWS=5 WRAP=virtual>$message</TEXTAREA></p>
Sửa thành
<P><strong>"._MESSAGE.":</strong><br>(Có thể gõ tiếng Việt)<br>
<TEXTAREA NAME=\"message\" COLS=30 ROWS=5 WRAP=virtual onkeyup=\"initTyper(this);\">$message</TEXTAREA></p>
Mở file modules/Downloads/index.php
* Tìm dòng
.""._DOWNLOADNAME.": <input type=\"text\" name=\"title\" size=\"40\" maxlength=\"100\"><br>"
Sửa thành
.""._DOWNLOADNAME.": <input type=\"text\" name=\"title\" size=\"40\" maxlength=\"100\" onkeyup=\"initTyper(this);\"> (có thể gõ tiếng Việt)<br>"
* Tìm dòng
.""._LDESCRIPTION."<br><textarea name=\"description\" cols=\"60\" rows=\"8\"></textarea><br><br>"
Sửa thành
.""._LDESCRIPTION." (có thể gõ tiếng Việt)<br><textarea name=\"description\" cols=\"60\" rows=\"8\" onkeyup=\"initTyper(this);\"></textarea><br><br>"
* Tìm dòng
.""._DOWNLOADNAME.":<br><input type=\"text\" name=\"title\" value=\"$title\" size=\"50\" maxlength=\"100\"><br><br>"
Sửa thành
.""._DOWNLOADNAME.": (có thể gõ tiếng Việt)<br><input type=\"text\" name=\"title\" value=\"$title\" size=\"50\" maxlength=\"100\" onkeyup=\"initTyper(this);\"><br><br>"
* Tìm dòng
.""._DESCRIPTION.":<br><textarea name=\"description\" cols=\"60\" rows=\"10\">$description</textarea><br><br>";
Sửa thành
.""._DESCRIPTION.": (có thể gõ tiếng Việt)<br><textarea name=\"description\" cols=\"60\" rows=\"10\" onkeyup=\"initTyper(this);\">$description</textarea><br><br>";
* Tìm dòng
.""._AUTHORNAME.":<br><input type=\"text\" name=\"auth_name\" value=\"$auth_name\" size=\"30\" maxlength=\"80\"><br><br>"
Sửa thành
.""._AUTHORNAME.": (có thể gõ tiếng Việt)<br><input type=\"text\" name=\"auth_name\" value=\"$auth_name\" size=\"30\" maxlength=\"80\" onkeyup=\"initTyper(this);\"><br><br>"
Mở file modules/Search/index.php
* Tìm dòng
."<input size=\"25\" type=\"text\" name=\"query\" value=\"$query\"> "
Sửa thành
."(có thể gõ tiếng Việt)<br><input size=\"25\" type=\"text\" name=\"query\" value=\"$query\" onkeyup=\"initTyper(this);\"> "
Mở file modules/Submit_News/index.php
* Tìm dòng
."("._BEDESCRIPTIVE."<br>"
."<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"80\"><br><font class=\"content\">("._BADTITLES.")</font>"
Sửa thành
."("._BEDESCRIPTIVE." - có thể gõ tiếng Việt)<br>"
."<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"80\" onkeyup=\"initTyper(this);\"><br><font class=\"content\">("._BADTITLES.")</font>"
* Tìm 2 đoạn có nội dung giống nhau
."<b>"._STORYTEXT.":</b><br>- "._HTMLISFINE."<br><br>"
."<textarea cols=\"50\" rows=\"12\" name=\"story\"></textarea><br>"
."<br><br><b>"._EXTENDEDTEXT.":</b><br>"
."<textarea cols=\"50\" rows=\"12\" name=\"storyext\"></textarea><br>"
Sửa thành
."<b>"._STORYTEXT.":</b><br>- "._HTMLISFINE."<br>- Có thể gõ tiếng Việt.<br>"
."<textarea cols=\"50\" rows=\"12\" name=\"story\" onkeyup=\"initTyper(this);\"></textarea><br>"
."<br><br><b>"._EXTENDEDTEXT.":</b> (Có thể gõ tiếng Việt)<br>"
."<textarea cols=\"50\" rows=\"12\" name=\"storyext\" onkeyup=\"initTyper(this);\"></textarea><br>"
Mở file modules/News/comments.php
* Tìm đoạn
echo "<font class=\"option\"><b>"._SUBJECT.":</b></font><br>"
."<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"85\" value=\"$subject\"><br><br>"
."<font class=\"option\"><b>"._UCOMMENT.":</b></font><br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"10\" name=\"comment\">$comment</textarea><br>"
Sửa thành
echo "<font class=\"option\"><b>"._SUBJECT.":</b></font> (có thể gõ tiếng Việt)<br>"
."<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"85\" value=\"$subject\" onkeyup=\"initTyper(this);\"><br><br>"
."<font class=\"option\"><b>"._UCOMMENT.":</b></font> (có thể gõ tiếng Việt)<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"10\" name=\"comment\" onkeyup=\"initTyper(this);\">$comment</textarea><br>"
* Tìm đoạn
echo "<font class=\"option\"><b>"._SUBJECT.":</b></font><br>";
if (!eregi("Re:",$subject)) $subject = "Re: ".substr($subject,0,81)."";
echo "<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"85\" value=\"$subject\"><br><br>";
echo "<font class=\"option\"><b>"._UCOMMENT.":</b></font><br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"10\" name=\"comment\"></textarea><br>"
Sửa thành
echo "<font class=\"option\"><b>"._SUBJECT.":</b></font> (có thể gõ tiếng Việt)<br>";
if (!eregi("Re:",$subject)) $subject = "Re: ".substr($subject,0,81)."";
echo "<input type=\"text\" name=\"subject\" size=\"50\" maxlength=\"85\" value=\"$subject\" onkeyup=\"initTyper(this);\"><br><br>";
echo "<font class=\"option\"><b>"._UCOMMENT.":</b></font> (có thể gõ tiếng Việt)<br>"
."<textarea wrap=\"virtual\" cols=\"50\" rows=\"10\" name=\"comment\" onkeyup=\"initTyper(this);\"></textarea><br>"
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com