<?php
/*
Addon Name: AI Integration
Unique Name: ai_reply
Modules:
{
"340":{
"bulk_limit_enabled":"0",
"limit_enabled":"0",
"extra_text":"",
"module_name":"AI Reply"
}
}
Project ID: 67
Addon URI: https://xerochat.com
Author: Xerone IT
Author URI: https://xeroneit.net
Version: 1.1
Description:
*/
require_once("application/controllers/Home.php"); // loading home controller
class Ai_reply extends Home
{
public $addon_data=array();
public function __construct()
{
parent::__construct();
// getting addon information in array and storing to public variable
// addon_name,unique_name,module_id,addon_uri,author,author_uri,version,description,controller_name,installed
//------------------------------------------------------------------------------------------
$addon_path=APPPATH."modules/".strtolower($this->router->fetch_class())."/controllers/".ucfirst($this->router->fetch_class()).".php"; // path of addon controller
$this->addon_data=$this->get_addon_data($addon_path);
$this->member_validity();
$this->user_id=$this->session->userdata('user_id'); // user_id of logged in user, we may need it
}
public function index()
{
$this->activate();
}
public function activate()
{
$this->ajax_check();
$addon_controller_name=ucfirst($this->router->fetch_class()); // here addon_controller_name name is Comment [origianl file is Comment.php, put except .php]
$purchase_code=$this->input->post('purchase_code');
$this->addon_credential_check($purchase_code,strtolower($addon_controller_name)); // retuns json status,message if error
//this addon system support 2-level sidebar entry, to make sidebar entry you must provide 2D array like below
$sidebar=array();
// mysql raw query needed to run, it's an array, put each query in a seperate index, create table query must should IF NOT EXISTS
$sql=array();
//send blank array if you does not need sidebar entry,send a blank array if your addon does not need any sql to run
$this->register_addon($addon_controller_name,$sidebar,$sql,$purchase_code);
}
public function deactivate()
{
$this->ajax_check();
$addon_controller_name=ucfirst($this->router->fetch_class()); // here addon_controller_name name is Comment [origianl file is Comment.php, put except .php]
// only deletes add_ons,modules and menu, menu_child1 table entires and put install.txt back, it does not delete any files or custom sql
$this->unregister_addon($addon_controller_name);
}
public function delete()
{
$this->ajax_check();
$addon_controller_name=ucfirst($this->router->fetch_class()); // here addon_controller_name name is Comment [origianl file is Comment.php, put except .php]
// mysql raw query needed to run, it's an array, put each query in a seperate index, drop table/column query should have IF EXISTS
$sql = array();
// deletes add_ons,modules and menu, menu_child1 table ,custom sql as well as module folder, no need to send sql or send blank array if you does not need any sql to run on delete
$this->delete_addon($addon_controller_name,$sql);
}
}