hubtel_sms/hubtel_sms.php
2025-01-13 19:14:18 +00:00

72 lines
2.1 KiB
PHP

<?php
defined('BASEPATH') or exit('No direct script access allowed');
/*
Module Name: Hubtel SMS API
Description: SMS Integration with Hubtel
Version: 1.0.0
Requires at least: 2.3.*
Author: Emmanuel K. Sackey
*/
define('HUBTEL_SMS_MODULE_NAME', 'hubtel_sms');
// Add routes for the module
$route['admin/hubtel_sms'] = 'hubtel_sms/index';
$route['admin/hubtel_sms/settings'] = 'hubtel_sms/settings';
$route['admin/hubtel_sms/template/(:num)'] = 'hubtel_sms/template/$1';
$route['admin/hubtel_sms/template'] = 'hubtel_sms/template';
$route['admin/hubtel_sms/send_sms'] = 'hubtel_sms/send_sms';
$route['admin/hubtel_sms/delete_template/(:num)'] = 'hubtel_sms/delete_template/$1';
// Register hooks (removed duplicates)
hooks()->add_action('admin_init', 'hubtel_sms_module_init_menu_items');
hooks()->add_action('admin_init', 'hubtel_sms_permissions');
hooks()->add_action('admin_navbar_start', 'hubtel_sms_load_helper');
function hubtel_sms_module_init_menu_items()
{
$CI = &get_instance();
if (has_permission('hubtel_sms', '', 'view')) {
$CI->app_menu->add_sidebar_menu_item('hubtel-sms', [
'name' => _l('hubtel_sms'),
'href' => admin_url('hubtel_sms'),
'icon' => 'fa fa-envelope',
'position' => 30,
]);
}
}
function hubtel_sms_permissions()
{
$capabilities = [];
$capabilities['capabilities'] = [
'view' => _l('permission_hubtel_sms_view'),
'create' => _l('permission_hubtel_sms_create'),
'edit' => _l('permission_hubtel_sms_edit'),
'delete' => _l('permission_hubtel_sms_delete')
];
register_staff_capabilities('hubtel_sms', $capabilities, _l('hubtel_sms'));
}
/**
* Register language files, must be registered if the module is using languages
*/
register_language_files(HUBTEL_SMS_MODULE_NAME, [HUBTEL_SMS_MODULE_NAME]);
function hubtel_sms_activation_hook()
{
require_once(__DIR__ . '/install.php');
}
// Load helper using hook instead of direct loading
function hubtel_sms_load_helper()
{
$CI = &get_instance();
$CI->load->helper('hubtel_sms/hubtel_sms');
}