Mục lục

Hướng dẫn notification cho module

Một module có notification khi vào phần quản trị, bên góc phải phía trên sẽ hiện các thông báo, nhấp vào mỗi thông báo để xem chi tiết. Hình 1: Thông báo của module

Một module hỗ trợ notification cần tồn tại file modules/module-name/notification.php - File này là file xử lý lại tiêu đề và liên kết khi ấn vào thông báo.

Để hỗ trợ hệ thống notification, NukeViet cung cấp sẵn trong nhân hệ thống ba hàm xử lý:

Tạo một notification mới

Để tạo một notification mới, từ vị trí thích hợp trong module, sử dụng hàm nv_insert_notification.

Ví dụ: tạo một notification từ module contact (thông báo có liên hệ mới)

nv_insert_notification($module_name, 'contact_new', array('title' => $ftitle), $row_id, 0, $sender_id, 1);

Code xử lý ở notification.php

Các biến hỗ trợ có thể sử dụng:

Các phần tử của $data bao gồm:

Nhiệm vụ của file này là xuất ra hai phần tử còn thiếu của $datatitlelink. Dựa trên các phần tử đã có.

Ví dụ:

notification.php
<?php
 
/**
 * @Project NUKEVIET 4.x
 * @Author VINADES (contact@vinades.vn)
 * @Copyright (C) 2014 VINADES. All rights reserved
 * @License GNU/GPL version 2 or any later version
 * @Createdate Apr 20, 2010 10:47:41 AM
 */
 
if (! defined('NV_IS_FILE_SITEINFO')) {
    die('Stop!!!');
}
 
$lang_siteinfo = nv_get_lang_module($mod);
 
$data['title'] = sprintf($lang_siteinfo['notification_contact_new'], $data['send_from'], $data['content']['title']);
$data['link'] = NV_BASE_ADMINURL . 'index.php?' . NV_LANG_VARIABLE . '=' . NV_LANG_DATA . '&amp;' . NV_NAME_VARIABLE . '=' . $data['module'] . '&amp;' . NV_OP_VARIABLE . '=view&amp;id=' . $data['obid'];
Chú ý: Có thể sử dụng
$lang_siteinfo = nv_get_lang_module($mod)

để lấy ngôn ngữ admin của module.

Cập nhật trạng thái

Sử dụng hàm nv_status_notification

Ví dụ:

nv_status_notification(NV_LANG_DATA, $module_name, 'contact_new', $id, 0);

Xóa notification

Sử dụng hàm nv_delete_notification

Ví dụ:

nv_delete_notification(NV_LANG_DATA, $module_name, 'contact_new', $id);