Nội quy chuyên mục: - Chuyên mục này chỉ sử dụng cho việc chia sẻ các tài liệu và hướng dẫn, vui lòng không đặt câu hỏi tại đây. Các thảo luận có liên quan vui lòng gửi đúng topic.
- Các tài liệu chính thức được cung cấp tại http//wiki.nukeviet.vn/technical_manual
#63213 gửi bởi anhtu
Ngày 26 Tháng 08 2010 , 14:52
Có một chút thay đổi trong theme, liên quan đến bảo mật cũng như để tương thích với module search mới chuẩn bị được công bố.
Các bạn tiến hành sửa như sau:
(Ví dụ đối với theme defaul):
1/themes/default/theme.php
Dòng 14 (ngay dưới function nv_site_theme):
Mã: Chọn hết
global $lang_global, $language_array, $global_config, $site_mods, $module_name, $module_info, $op, $db, $mod_title, $my_head, $nv_array_block_contents;


Thay bằng:
Mã: Chọn hết
global $lang_global, $language_array, $global_config, $site_mods, $module_name, $module_info, $op, $db, $mod_title, $my_head, $nv_array_block_contents, $client_info;


Dòng 49 (cũng ở trong function nv_site_theme):
Mã: Chọn hết
$xtpl->assign( 'THEME_SEARCH_SUBMIT_ONCLICK', "nv_search_submit('topmenu_search_query', 'topmenu_search_submit', " . NV_MIN_SEARCH_LENGTH . ", " . NV_MAX_SEARCH_LENGTH . ");" );


Thay bằng:
Mã: Chọn hết
$xtpl->assign( 'THEME_SEARCH_SUBMIT_ONCLICK', "nv_search_submit('topmenu_search_query', 'topmenu_search_checkss', 'topmenu_search_submit', " . NV_MIN_SEARCH_LENGTH . ", " . NV_MAX_SEARCH_LENGTH . ");" );
$xtpl->assign( 'CHECKSS', md5( $client_info['session_id'] . $global_config['sitekey'] ) );


2/themes/default/layout/header.tpl

Dòng 81 (khu vực form tìm kiếm):
Mã: Chọn hết
<form action="" method="get" class="search fr" onsubmit="return {THEME_SEARCH_SUBMIT_ONCLICK}">


Sửa thành:
Mã: Chọn hết
<form action="/" method="get" class="search fr" onsubmit="return {THEME_SEARCH_SUBMIT_ONCLICK}">
<input type="hidden" id="topmenu_search_checkss" value="{CHECKSS}" />


3/js/global.js

Dòng 154-157:
Mã: Chọn hết
function nv_iChars_Remove(str)
{
return str.replace(nv_specialchars, "");
}


Thêm xuống dưới:
Mã: Chọn hết
// -----------------------

function formatStringAsUriComponent( s )
{

// replace html with whitespace
s = s.replace( /<\/?[^>]*>/gm, " " );

// remove entities
s = s.replace( /&[\w]+;/g, "" );

// remove 'punctuation'
s = s.replace ( /[\.\,\"\'\?\!\;\:\#\$\%\&\(\)\*\+\-\/\<\>\=\@\[\]\\^\_\{\}\|\~]/g, "");

// replace multiple whitespace with single whitespace
s = s.replace( /\s{2,}/g, " " );

// trim whitespace at start and end of title
s = s.replace( /^\s+|\s+$/g, "" );

return s;
}

Block "Thêm tôi vào Google+" cho NukeViet:
http://www.nguyenanhtu.net/2011/07/bloc ... eviet.html

My Google+:
https://plus.google.com/100133071209528072246/posts
#63214 gửi bởi anhtu
Ngày 26 Tháng 08 2010 , 15:01
Quên mất, còn 1 chỗ nữa:

js/global.js:

Thay toàn bộ function nv_search_submit bằng:
Mã: Chọn hết
function nv_search_submit(search_query, topmenu_search_checkss, search_button, minlength, maxlength)
{
var query = document.getElementById(search_query);
var format_query = formatStringAsUriComponent(query.value);
var allowed = ( format_query != '' && format_query.length >= minlength && format_query.length <= maxlength) ? true : false;
if( ! allowed)
{
query.value = format_query;
}
else
{
var sbutton = document.getElementById(search_button);
sbutton.disabled = true;
var search_checkss = document.getElementById(topmenu_search_checkss).value;
window.location.href = nv_siteroot + 'index.php?' + nv_lang_variable+'='+nv_sitelang+'&'+nv_name_variable + '=search&q=' + rawurlencode(format_query) + '&search_checkss=' + search_checkss;
}
return false;
}

Block "Thêm tôi vào Google+" cho NukeViet:
http://www.nguyenanhtu.net/2011/07/bloc ... eviet.html

My Google+:
https://plus.google.com/100133071209528072246/posts
#63331 gửi bởi anhtu
Ngày 27 Tháng 08 2010 , 10:33
Các bạn hãy tải về bản mới nhất tại:
http://code.google.com/p/nuke-viet/source/list

(Cách tải về thế nào đã được hướng dẫn rồi).

Block "Thêm tôi vào Google+" cho NukeViet:
http://www.nguyenanhtu.net/2011/07/bloc ... eviet.html

My Google+:
https://plus.google.com/100133071209528072246/posts