0.0
No commit activity in last 3 years
No release in over 3 years
Allows your Authlogic-based User model to authenticate using an IP.Board 3.x database.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

InvisionBridge

Allows your Authlogic-based user model to authenticate using an IP.Board 3.x database.

Usage

Database configuration

You'll need to manually alter the ibf_members table in your IP.Board database to add the following fields for use by Authlogic:

persistence_token             varchar(255)          NOT NULL
last_request_at               datetime              NULL
current_login_at              datetime              NULL
last_login_at                 datetime              NULL
current_login_ip              varchar(255)          NULL
last_login_ip                 varchar(255)          NULL
single_access_token           varchar(255)          NULL

Modify your config/database.yml file to include your IP.Board database information:

invision_bridge_development:
  adapter: mysql
  database: my_forums_development
  host: localhost
  user: username
  password: password
  prefix: ibf_

invision_bridge_production:
  adapter: mysql
  database: my_forums
  host: localhost
  user: username
  password: password
  prefix: ibf_

Model creation

Modify or create your User model to include InvisionBridge

class User < ActiveRecord::Base
  include InvisionBridge
end

That's it. You can further customize your model as needed. For example, you may have a group of administrators on your forum that you want to be administrators in your Rails application.

class User < ActiveRecord::Base
  include InvisionBridge

  ADMIN_GROUP = 1

  def is_admin?
    self.member_group_id == ADMIN_GROUP
  end
end

ORM Adapters

Currently InvisionBridge only works with ActiveRecord models. I'd love to add a DataMapper adapter if/when I need one.

Known Issues

While using this in my own production application, I'd occasionally get "MySQL server has gone away" exceptions popping up. I still don't know the root cause, but I was able to make the error stop appearing by adding reconnect: true to the invision_bridge_production database definition.

Credits

Copyright (c) 2010 Robert Speicher, released under the MIT license