CakePHP Plugin - Add an Ajax chat to your app
PHP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
controllers
models
vendors
views
README
chat_app_controller.php
chat_app_model.php
chats.sql

README

/*
 * CakePHP Ajax Chat Plugin (using jQuery);
 * Copyright (c) 2008 Matt Curry
 * www.PseudoCoder.com
 * http://github.com/mcurry/cakephp/tree/master/plugins/chat
 * http://sandbox2.pseudocoder.com/demo/chat
 *
 * @author      Matt Curry <matt@pseudocoder.com>
 * @license     MIT
 *
 */

/* Description */
A basic Ajax chat plugin for CakePHP using jQuery

/* Instructions */
   1. You'll need a working version of CakePHP installed. This is running on 1.2.0.7692 RC3.
   2. Download jQuery and put it in /app/webroot/js/
   3. Put chat plugin into app/plugins/chat. The plugin is called "chat", so make sure there is no conflict with any other controllers or plugins
   4. Run this sql to create the chats table.
      CREATE TABLE  `chats` (
        `id` int(10) unsigned NOT NULL auto_increment,
        `key` varchar(45) NOT NULL default '',
        `name` varchar(20) NOT NULL default '',
        `message` text NOT NULL,
        `ip_address` varchar(15) NOT NULL default '',
        `created` datetime default NULL,
        PRIMARY KEY  (`id`),
        KEY `KEY_IDX` (`key`)
      );

   5. Include the plugin helper in your controller:
      var $helpers = array('chat.ajaxChat');

      Or just in a particular action:
      $this->helpers[] = 'chat.ajaxChat';

   6. Include jQuery in your view if you don't already include it in your layout.
      echo $javascript->link('jquery', false);

   7. Include the chat js and css in your view.
      $javascript->link(array('jquery/jquery', '/chat/js/chat.js'), false);
      $html->css('/chat/css/chat.css', null, null, false);
            

   8. Then just add the chat to your view. You can have multiple chats on your site by changing the chat key - "chat1" in this example.
      echo $ajaxChat->generate('chat1');