From c0b832d19fc478d67752a6692bf71f178346e14a Mon Sep 17 00:00:00 2001
From: Zach Copley <zach@status.net>
Date: Tue, 10 Nov 2009 17:10:56 -0800
Subject: Add new OAuth application tables and DataObjects. Also add a new
 column for consumer secret to consumer table.

---
 db/statusnet.sql | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

(limited to 'db/statusnet.sql')

diff --git a/db/statusnet.sql b/db/statusnet.sql
index a9ed66cb4..be0d14092 100644
--- a/db/statusnet.sql
+++ b/db/statusnet.sql
@@ -176,6 +176,7 @@ create table fave (
 
 create table consumer (
     consumer_key varchar(255) primary key comment 'unique identifier, root URL',
+    consumer_secret varchar(255) not null comment 'secret value',
     seed char(32) not null comment 'seed for new tokens by this consumer',
 
     created datetime not null comment 'date this record was created',
@@ -207,6 +208,31 @@ create table nonce (
     constraint primary key (consumer_key, ts, nonce)
 ) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
 
+create table oauth_application (
+    id integer auto_increment primary key comment 'unique identifier',
+    consumer_key varchar(255) not null comment 'application consumer key' references consumer (consumer_key),
+    name varchar(255) not null comment 'name of the application',
+    description varchar(255) comment 'description of the application',
+    icon varchar(255) not null comment 'application icon',
+    source_url varchar(255) comment 'application homepage - used for source link',
+    organization varchar(255) comment 'name of the organization running the application',
+    homepage varchar(255) comment 'homepage for the organization',
+    callback_url varchar(255) not null comment 'url to redirect to after authentication',
+    type tinyint default 0 comment 'type of app, 0 = browser, 1 = desktop',
+    access_type tinyint default 0 comment 'default access type, 0 = read-write, 1 = read-only',
+    created datetime not null comment 'date this record was created',
+    modified timestamp comment 'date this record was modified'
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
+
+create table oauth_application_user (
+    user_id integer not null comment 'id of the application user' references user (id),
+    application_id integer not null comment 'id of the application' references oauth_application (id),
+    access_type tinyint default 0 comment 'access type, 0 = read-write, 1 = read-only',
+    created datetime not null comment 'date this record was created',
+
+    constraint primary key (user_id, application_id)
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;
+
 /* These are used by JanRain OpenID library */
 
 create table oid_associations (
-- 
cgit v1.2.3-54-g00ecf

