summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Prodromou <evan@prodromou.name>2008-08-26 23:24:23 -0400
committerEvan Prodromou <evan@prodromou.name>2008-08-26 23:24:23 -0400
commitead192fa415b170dc96dd23873c18aec586341ea (patch)
tree5dfd81ea452a937100ec6e6edb5f400e45907f24
parent9bff7c9a765779c9f5b46d08946d6844f6339ab0 (diff)
add a foreign_link table with prefs for the link
darcs-hash:20080827032423-84dde-90a4d5931c2292c9ec5febd0c90ed18f6ab93e90.gz
-rw-r--r--classes/Foreign_link.php28
-rw-r--r--classes/Foreign_user.php2
-rw-r--r--classes/stoica.ini18
-rw-r--r--db/laconica.sql16
4 files changed, 58 insertions, 6 deletions
diff --git a/classes/Foreign_link.php b/classes/Foreign_link.php
new file mode 100644
index 000000000..a93f30f2c
--- /dev/null
+++ b/classes/Foreign_link.php
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Table Definition for foreign_link
+ */
+require_once 'DB/DataObject.php';
+
+class Foreign_link extends DB_DataObject
+{
+ ###START_AUTOCODE
+ /* the code below is auto generated do not remove the above tag */
+
+ public $__table = 'foreign_link'; // table name
+ public $user_id; // int(4) primary_key not_null
+ public $foreign_id; // int(4) primary_key not_null
+ public $service; // int(4) primary_key not_null
+ public $credentials; // varchar(255)
+ public $noticesync; // tinyint(1) not_null default_1
+ public $friendsync; // tinyint(1) not_null default_2
+ public $profilesync; // tinyint(1) not_null default_1
+ public $created; // datetime() not_null
+ public $modified; // timestamp() not_null default_CURRENT_TIMESTAMP
+
+ /* Static get */
+ function staticGet($k,$v=NULL) { return DB_DataObject::staticGet('Foreign_link',$k,$v); }
+
+ /* the code above is auto generated do not remove the tag below */
+ ###END_AUTOCODE
+}
diff --git a/classes/Foreign_user.php b/classes/Foreign_user.php
index 98034df49..d19370aa0 100644
--- a/classes/Foreign_user.php
+++ b/classes/Foreign_user.php
@@ -14,8 +14,6 @@ class Foreign_user extends DB_DataObject
public $service; // int(4) primary_key not_null
public $uri; // varchar(255) unique_key not_null
public $nickname; // varchar(255)
- public $user_id; // int(4)
- public $credentials; // varchar(255)
public $created; // datetime() not_null
public $modified; // timestamp() not_null default_CURRENT_TIMESTAMP
diff --git a/classes/stoica.ini b/classes/stoica.ini
index f702178d9..329c5b1e7 100644
--- a/classes/stoica.ini
+++ b/classes/stoica.ini
@@ -47,6 +47,22 @@ modified = 384
notice_id = K
user_id = K
+[foreign_link]
+user_id = 129
+foreign_id = 129
+service = 129
+credentials = 2
+noticesync = 145
+friendsync = 145
+profilesync = 145
+created = 142
+modified = 384
+
+[foreign_link__keys]
+user_id = K
+foreign_id = K
+service = K
+
[foreign_service]
id = 129
name = 130
@@ -74,8 +90,6 @@ id = 129
service = 129
uri = 130
nickname = 2
-user_id = 1
-credentials = 2
created = 142
modified = 384
diff --git a/db/laconica.sql b/db/laconica.sql
index 3f07b15f6..b358e54b8 100644
--- a/db/laconica.sql
+++ b/db/laconica.sql
@@ -268,12 +268,24 @@ create table foreign_user (
service int not null comment 'foreign key to service' references foreign_service(id),
uri varchar(255) not null unique key comment 'identifying URI',
nickname varchar(255) comment 'nickname on foreign service',
+ created datetime not null comment 'date this record was created',
+ modified timestamp comment 'date this record was modified',
+
+ constraint primary key (id, service)
+) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;
+
+create table foreign_link (
user_id int comment 'link to user on this system, if exists' references user (id),
+ foreign_id int comment 'link ' references foreign_user(id),
+ service int not null comment 'foreign key to service' references foreign_service(id),
credentials varchar(255) comment 'authc credentials, typically a password',
+ noticesync tinyint not null default 1 comment 'notice synchronization, bit 1 = sync outgoing, bit 2 = sync incoming',
+ friendsync tinyint not null default 2 comment 'friend synchronization, bit 1 = sync outgoing, bit 2 = sync incoming',
+ profilesync tinyint not null default 1 comment 'profile synchronization, bit 1 = sync outgoing, bit 2 = sync incoming',
created datetime not null comment 'date this record was created',
modified timestamp comment 'date this record was modified',
-
- constraint primary key (id, service),
+
+ constraint primary key (user_id, foreign_id, service),
index foreign_user_user_id_idx (user_id)
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin;