Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A small library to help jump start your internal messaging system, for the CodeIgniter framework
branch: master

Merge pull request #4 from tonydew/master

I love the idea of the code, but there is so much duplication!
latest commit b5581ee786
Jeff Madsen authored
Failed to load latest commit information.
application Code clean up and doc blocks
README added credits
composer.json composer.json
mahana.sql main messaging library


* Name:  Mahana Messaging Library for CodeIgniter
* Author: Jeff Madsen
* Location: -
* Description:  CI library for linking to application's existing user table and creating basis of an internal messaging system
*           No views or controllers included - DO CHECK the README.txt for setup instructions and notes

Welcome to the Mahana Messaging Library for CodeIgniter

This library is intended as a starting off point for building an internal messaging system for your CodeIgniter application. It does NOT include any controllers or views. To use this library:

1) download from github at the above url

2) there are 5 files (not including this README):

	- mahana.sql  -- run this sql script in your database. Note that these tables are all InnoDB - Mahana uses transactions
	- config/mahana.php -- you will need to set up your existing users table information here, following the sample data style

	- language/english/mahana_lang.php -- all error and success messages can be changed here, or multilingual support can be added
	-- models/mahana_model.php -- the database model

	-- libraries/Mahana_messaging -- the main library file

3) from your controller, load the library as either:

	$msg = $this->mahana_messaging->get_message($msg_id, $sender_id);


        $mahana = new Mahana_messaging();
	$msg = $mahana->get_message($msg_id, $sender_id);

4) All functions return the array:

	$status['err']		1= error, 0 = no error
	$status['code']		a specific code for that return value, found in config/mahana.php
	$status['msg']		a configurable message, found in language/english/mahana_lang.php
	$status['retval']	(optional) returned array of data

5) Features

	Mahana Messaging has a couple of small features you should be aware of:

	1) using the config/mahana.php constants USER_TABLE_TABLENAME, USER_TABLE_ID, USER_TABLE_USERNAME you may quickly and easily integrate the messaging library with your exisiting user table

	2) all return messages are configurable and can be made multi-lingual

	3) return array $status makes for easy conversion to json format for ajax-based systems

	4) get_full_thread() and get_all_threads() have a unique parameter - $full_thread. If set to true, a newly added participant to a thread can see all messages dating BEFORE he was added, allowing him to "catch up" on the conversation. Ideal for adding a manager or a new salesperson to a conversation.

Thank you for using Mahana Messaging! Please be sure to leave the author's credits in the library file.
Something went wrong with that request. Please try again.