III. Các hàm đc xâ yd n gs n, các class, các tài nguyên khác:
b) V it module đn gi n:
vi t m t module đ n gi n vi c đ u tiên là t o th m c trong th m c modules/ sau đó ti p t c t o các file và th m c bên trong nh sau:
admin.functions.php version.php funcs funcs/main.php admin admin/main.php functions.php File version.php: <?php /** * @Project NUKEVIET-MUSIC
MÔ T K THU T - MÃ NGU N M NUKEVIET v3.x http://nukeviet.vn * @copyright 2011
* @createdate 05/12/2010 09:47 */
if ( ! defined( 'NV_ADMIN' ) or ! defined( 'NV_MAINFILE' )) die( 'Stop!!!' );
$module_version = array(
"name" => "QuanLyHocSinh", // Tieu de module "modfuncs" => "main" ,
"is_sysmod" => 0, "virtual" => 1,
"version" => "3.0.01",
"date" => "Wed, 26 Jan 2011 12:47:15 GMT",
"author" => "PHAN TAN DUNG (email: phantandung1912@gmail.com)", "note"=>"", "uploads_dir" => array( $module_name ) ); ?> Trong đó:
Name: Tiêu đ c a module.
Modfuncs: Các funcs đ c s d ng
is_sysmod: Có ph i module h th ng hay không.
Virtual: Cho phép o hóa hay không. Version: Phiên b n c a module.
Date: Ngày xu t b n module.
Author: Tác gi module.
uploads_dir: Các th m c t i lên c a module.
File admin.functions.php:
<?php
/**
* @Project NUKEVIET 3.0
MÔ T K THU T - MÃ NGU N M NUKEVIET v3.x http://nukeviet.vn * @Createdate Dec 3, 2010 11:11:28 AM
*/
if ( ! defined( 'NV_ADMIN' ) or ! defined( 'NV_MAINFILE' ) or ! defined( 'NV_IS_MODADMIN' ) ) die( 'Stop!!!' );
$submenu['addques'] = $lang_module['addques']; $submenu['test'] = $lang_module['test']; $submenu['addtest'] = $lang_module['addtest']; $submenu['compulsory'] = $lang_module['compulsory']; $submenu['addcompulsory'] = $lang_module['addcompulsory']; $allow_func = array(
'main', 'addques', 'test', 'addtest', 'compulsory', 'addcompulsory', 'delques', 'delallques', 'delalltest', 'delallcompulsory', 'deltest', 'delcompulsory'
);
define( 'NV_IS_ONBAI_ADMIN', true );
?>
Trong đó c n chú ý đ n :
$submenu là bi n l u thông tin menu trái trong ph n qu n tr site.
$allow_func: Danh sách các func cho phép ho t đ ng trong admin.
File functions.php:
<?php
/**
* @Project NUKEVIET 3.0
* @Author VINADES., JSC (contact@vinades.vn)
* @Copyright (C) 2010 VINADES ., JSC. All rights reserved * @Createdate Dec 3, 2010 11:11:28 AM
*/
if (!defined('NV_SYSTEM')) die('Stop!!!');
define('NV_IS_MOD_ONBAI', true);
MÔ T K THU T - MÃ NGU N M NUKEVIET v3.x http://nukeviet.vn File này th ng ch a các hàm s d ng bên ngoài site, n u module không có dùng các hàm, có th đ tr ng file này (nh trên), tuy nhiên không đ c xóa nó.
File action.php:
<?php /**
* @Project NUKEVIET 3.0
* @Author VINADES., JSC (contact@vinades.vn)
* @Copyright (C) 2010 VINADES ., JSC. All rights reserved * @Createdate Dec 3, 2010 11:10:39 AM
*/
if(!defined('NV_IS_FILE_MODULES')) die('Stop!!!');
$sql_drop_module = array();
$sql_drop_module[] = "DROP TABLE IF EXISTS `" . $db_config['prefix'] . "_" . $lang . "_" . $module_data . "_quessions`";
$sql_create_module = $sql_drop_module;
$sql_create_module[] = "CREATE TABLE `" . $db_config['prefix'] . "_" . $lang . "_" . $module_data . "_quessions` (
`id` MEDIUMINT( 8 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`title` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`quession` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`anwser` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL )ENGINE=MyISAM DEFAULT CHARSET=utf8";
?>
C n chú ý đ n bi n $sql_drop_module và $sql_create_module. Bi n
$sql_drop_module s đ c dùng khi xóa m t module và bi n $sql_create_module s đ c dùng khi cài l i module và thi t l p module m i.
Th m c language ch a các file ngôn ng . Các file ngôn ng trong admin có d ng
admin_ ngon-ngu.php, các file ngôn ng ngoài site có d ng ngon-ngu.php.
C u trúc c b n c a file ngôn ng : <?php
MÔ T K THU T - MÃ NGU N M NUKEVIET v3.x http://nukeviet.vn * @Project NUKEVIET 3.0
* @Author VINADES., JSC (contact@vinades.vn)
* @Copyright (C) 2010 VINADES ., JSC. All rights reserved * @Language Vietnamese * @Createdate Dec 3, 2010 11:30:02 AM */ if ( ! defined( 'NV_MAINFILE' ) ) { die( 'Stop!!!' ); }
$lang_translator['author'] = "VINADES.,JSC (contact@vinades.vn)"; $lang_translator['createdate'] = "04/03/2010, 15:22";
$lang_translator['copyright'] = "@Copyright (C) 2010 VINADES.,JSC. All rights reserved";
$lang_translator['info'] = "";
$lang_translator['langtype'] = "lang_module";
$lang_module['main'] = "Câu h i ôn bài"; $lang_module['ans'] = " áp án";
?>
Bi n $lang_module là bi n l u ngôn ng c a module.
Th m c js g m hai file user.js và admin.js. File user.js ch a các câu l nh
javascript (n u có) ngoài site, admin.js ch a javascript (n u có) trong admin. L u ý: xu t n i dung c a module và k t thúc ta th c hi n thao tác:
i v i admin:
include ( NV_ROOTDIR . "/includes/header.php" ); echo nv_admin_theme( $contents );
include ( NV_ROOTDIR . "/includes/footer.php" ); bi n $contents là toàn b n i dung hi n th c a module.
i v i khu v c site:
include ( NV_ROOTDIR . "/includes/header.php" ); echo nv_site_theme( $contents );
include ( NV_ROOTDIR . "/includes/footer.php" ); bi n $contents làtoàn b n i dung hi n th c a module.