-- phpMyAdmin SQL Dump
--- version 2.11.9.4
+-- version 3.3.10.4
-- http://www.phpmyadmin.net
--
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `addon`
+--
+
+CREATE TABLE IF NOT EXISTS `addon` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `name` char(255) NOT NULL,
+ `version` char(255) NOT NULL,
+ `installed` tinyint(1) NOT NULL DEFAULT '0',
+ `timestamp` bigint(20) NOT NULL DEFAULT '0',
+ `plugin_admin` tinyint(1) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `attach`
+--
+
+CREATE TABLE IF NOT EXISTS `attach` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `hash` char(64) NOT NULL,
+ `filename` char(255) NOT NULL,
+ `filetype` char(64) NOT NULL,
+ `filesize` int(11) NOT NULL,
+ `data` longblob NOT NULL,
+ `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `allow_cid` mediumtext NOT NULL,
+ `allow_gid` mediumtext NOT NULL,
+ `deny_cid` mediumtext NOT NULL,
+ `deny_gid` mediumtext NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `auth_codes`
+--
+
+CREATE TABLE IF NOT EXISTS `auth_codes` (
+ `id` varchar(40) NOT NULL,
+ `client_id` varchar(20) NOT NULL,
+ `redirect_uri` varchar(200) NOT NULL,
+ `expires` int(11) NOT NULL,
+ `scope` varchar(250) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
-/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
-/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
-/*!40101 SET NAMES utf8 */;
+-- --------------------------------------------------------
--
+-- Table structure for table `cache`
--
+CREATE TABLE IF NOT EXISTS `cache` (
+ `k` char(255) NOT NULL,
+ `v` text NOT NULL,
+ `updated` datetime NOT NULL,
+ PRIMARY KEY (`k`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
-- --------------------------------------------------------
--
-- --------------------------------------------------------
-CREATE TABLE IF NOT EXISTS `config` (
- `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `cat` char(255) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
- `k` char(255) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
- `v` text NOT NULL,
- PRIMARY KEY (`id`),
- UNIQUE KEY `access`(`cat`,`k`)
+--
+-- Table structure for table `clients`
+--
+
+CREATE TABLE IF NOT EXISTS `clients` (
+ `client_id` varchar(20) NOT NULL,
+ `pw` varchar(20) NOT NULL,
+ `redirect_uri` varchar(200) NOT NULL,
+ `name` text,
+ `icon` text,
+ `uid` int(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`client_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `config`
+--
+CREATE TABLE IF NOT EXISTS `config` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `cat` char(255) CHARACTER SET ascii NOT NULL,
+ `k` char(255) CHARACTER SET ascii NOT NULL,
+ `v` text NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `access` (`cat`,`k`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+-- --------------------------------------------------------
--
-- Table structure for table `contact`
`id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT 'owner uid',
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
- `self` tinyint(1) NOT NULL DEFAULT '0',
+ `self` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'boolean 1 == info for local UID, primarily name and photo to use in item displays.',
`remote_self` tinyint(1) NOT NULL DEFAULT '0',
`rel` tinyint(1) NOT NULL DEFAULT '0',
`duplex` tinyint(1) NOT NULL DEFAULT '0',
`name` char(255) NOT NULL,
`nick` char(255) NOT NULL,
`attag` char(255) NOT NULL,
- `photo` text NOT NULL,
+ `photo` text NOT NULL COMMENT 'remote photo URL initially until approved',
`thumb` text NOT NULL,
`micro` text NOT NULL,
`site-pubkey` text NOT NULL,
`forum` tinyint(1) NOT NULL DEFAULT '0',
`hidden` tinyint(1) NOT NULL DEFAULT '0',
`pending` tinyint(1) NOT NULL DEFAULT '1',
- `rating` tinyint(1) NOT NULL DEFAULT '0',
- `reason` text NOT NULL,
+ `rating` tinyint(1) NOT NULL DEFAULT '0' COMMENT '0-5 reputation, 0 unknown, 1 call police, 5 inscrutable',
+ `reason` text NOT NULL COMMENT 'why a rating was given - will help friends decide to make friends or not',
`closeness` tinyint(2) NOT NULL DEFAULT '99',
`info` mediumtext NOT NULL,
- `profile-id` int(11) NOT NULL DEFAULT '0',
- `bdyear` CHAR( 4 ) NOT NULL COMMENT 'birthday notify flag',
+ `profile-id` int(11) NOT NULL DEFAULT '0' COMMENT 'which profile to display - 0 is public default',
+ `bdyear` char(4) NOT NULL COMMENT 'birthday notify flag',
`bd` date NOT NULL,
PRIMARY KEY (`id`),
KEY `uid` (`uid`),
KEY `self` (`self`),
+ KEY `issued-id` (`issued-id`),
+ KEY `dfrn-id` (`dfrn-id`),
+ KEY `blocked` (`blocked`),
+ KEY `readonly` (`readonly`),
KEY `network` (`network`),
KEY `name` (`name`),
KEY `nick` (`nick`),
KEY `attag` (`attag`),
- KEY `url` (`url`),
- KEY `nurl` (`nurl`),
KEY `addr` (`addr`),
+ KEY `url` (`url`),
KEY `batch` (`batch`),
- KEY `issued-id` (`issued-id`),
- KEY `dfrn-id` (`dfrn-id`),
- KEY `blocked` (`blocked`),
- KEY `readonly` (`readonly`),
- KEY `forum` (`forum`),
- KEY `hidden` (`hidden`),
+ KEY `nurl` (`nurl`),
KEY `pending` (`pending`),
- KEY `closeness` (`closeness`)
+ KEY `hidden` (`hidden`),
+ KEY `forum` (`forum`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `conv`
+--
+
+CREATE TABLE IF NOT EXISTS `conv` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `guid` char(64) NOT NULL,
+ `recips` mediumtext NOT NULL,
+ `uid` int(11) NOT NULL,
+ `creator` char(255) NOT NULL,
+ `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `subject` mediumtext NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `created` (`created`),
+ KEY `updated` (`updated`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `deliverq`
+--
+
+CREATE TABLE IF NOT EXISTS `deliverq` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `cmd` char(32) NOT NULL,
+ `item` int(11) NOT NULL,
+ `contact` int(11) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `event`
+--
+
+CREATE TABLE IF NOT EXISTS `event` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `cid` int(11) NOT NULL,
+ `uri` char(255) NOT NULL,
+ `created` datetime NOT NULL,
+ `edited` datetime NOT NULL,
+ `start` datetime NOT NULL,
+ `finish` datetime NOT NULL,
+ `desc` text NOT NULL,
+ `location` text NOT NULL,
+ `type` char(255) NOT NULL,
+ `nofinish` tinyint(1) NOT NULL DEFAULT '0',
+ `adjust` tinyint(1) NOT NULL DEFAULT '1',
+ `allow_cid` mediumtext NOT NULL,
+ `allow_gid` mediumtext NOT NULL,
+ `deny_cid` mediumtext NOT NULL,
+ `deny_gid` mediumtext NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `fcontact`
+--
+
+CREATE TABLE IF NOT EXISTS `fcontact` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `url` char(255) NOT NULL,
+ `name` char(255) NOT NULL,
+ `photo` char(255) NOT NULL,
+ `request` char(255) NOT NULL,
+ `nick` char(255) NOT NULL,
+ `addr` char(255) NOT NULL,
+ `batch` char(255) NOT NULL,
+ `notify` char(255) NOT NULL,
+ `poll` char(255) NOT NULL,
+ `confirm` char(255) NOT NULL,
+ `priority` tinyint(1) NOT NULL,
+ `network` char(32) NOT NULL,
+ `alias` char(255) NOT NULL,
+ `pubkey` text NOT NULL,
+ `updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ PRIMARY KEY (`id`),
+ KEY `addr` (`addr`),
+ KEY `network` (`network`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `ffinder`
+--
+
+CREATE TABLE IF NOT EXISTS `ffinder` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `uid` int(10) unsigned NOT NULL,
+ `cid` int(10) unsigned NOT NULL,
+ `fid` int(10) unsigned NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `fserver`
+--
+
+CREATE TABLE IF NOT EXISTS `fserver` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `server` char(255) NOT NULL,
+ `posturl` char(255) NOT NULL,
+ `key` text NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `server` (`server`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `fsuggest`
+--
+
+CREATE TABLE IF NOT EXISTS `fsuggest` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `cid` int(11) NOT NULL,
+ `name` char(255) NOT NULL,
+ `url` char(255) NOT NULL,
+ `request` char(255) NOT NULL,
+ `photo` char(255) NOT NULL,
+ `note` text NOT NULL,
+ `created` datetime NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `gcign`
+--
+
+CREATE TABLE IF NOT EXISTS `gcign` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `gcid` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `uid` (`uid`),
+ KEY `gcid` (`gcid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `gcontact`
+--
+
+CREATE TABLE IF NOT EXISTS `gcontact` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `name` char(255) NOT NULL,
+ `url` char(255) NOT NULL,
+ `nurl` char(255) NOT NULL,
+ `photo` char(255) NOT NULL,
+ `connect` char(255) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `nurl` (`nurl`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `glink`
+--
+
+CREATE TABLE IF NOT EXISTS `glink` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `cid` int(11) NOT NULL,
+ `uid` int(11) NOT NULL,
+ `gcid` int(11) NOT NULL,
+ `updated` datetime NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `cid` (`cid`),
+ KEY `uid` (`uid`),
+ KEY `gcid` (`gcid`),
+ KEY `updated` (`updated`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
-- --------------------------------------------------------
+--
+-- Table structure for table `guid`
+--
+
+CREATE TABLE IF NOT EXISTS `guid` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `guid` char(64) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `guid` (`guid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `hook`
+--
+
+CREATE TABLE IF NOT EXISTS `hook` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `hook` char(255) NOT NULL,
+ `file` char(255) NOT NULL,
+ `function` char(255) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
--
-- Table structure for table `intro`
--
CREATE TABLE IF NOT EXISTS `item` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`guid` char(64) NOT NULL,
- `uri` char(255) NOT NULL,
+ `uri` char(255) CHARACTER SET ascii NOT NULL,
`uid` int(10) unsigned NOT NULL DEFAULT '0',
`contact-id` int(10) unsigned NOT NULL DEFAULT '0',
`type` char(255) NOT NULL,
`wall` tinyint(1) NOT NULL DEFAULT '0',
`gravity` tinyint(1) NOT NULL DEFAULT '0',
`parent` int(10) unsigned NOT NULL DEFAULT '0',
- `parent-uri` char(255) NOT NULL,
+ `parent-uri` char(255) CHARACTER SET ascii NOT NULL,
`extid` char(255) NOT NULL,
`thr-parent` char(255) NOT NULL,
- `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
- `edited` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ `created` datetime NOT NULL,
+ `edited` datetime NOT NULL,
`commented` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`received` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`changed` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`target-type` char(255) NOT NULL,
`target` text NOT NULL,
`postopts` text NOT NULL,
- `plink` char(255) NOT NULL,
+ `plink` char(255) NOT NULL,
`resource-id` char(255) NOT NULL,
- `event-id` int(10) unsigned NOT NULL,
+ `event-id` int(11) NOT NULL,
`tag` mediumtext NOT NULL,
`attach` mediumtext NOT NULL,
`inform` mediumtext NOT NULL,
`forum_mode` tinyint(1) NOT NULL DEFAULT '0',
`last-child` tinyint(1) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
- KEY `guid` (`guid`),
KEY `uri` (`uri`),
KEY `uid` (`uid`),
KEY `contact-id` (`contact-id`),
KEY `type` (`type`),
KEY `parent` (`parent`),
KEY `parent-uri` (`parent-uri`),
- KEY `extid` (`extid`),
KEY `created` (`created`),
KEY `edited` (`edited`),
- KEY `received` (`received`),
- KEY `moderated` (`moderated`),
KEY `visible` (`visible`),
- KEY `spam` (`spam`),
- KEY `starred` (`starred`),
- KEY `bookmark` (`bookmark`),
KEY `deleted` (`deleted`),
- KEY `origin` (`origin`),
- KEY `forum_mode` (`forum_mode`),
KEY `last-child` (`last-child`),
KEY `unseen` (`unseen`),
+ KEY `extid` (`extid`),
+ KEY `received` (`received`),
+ KEY `starred` (`starred`),
+ KEY `guid` (`guid`),
+ KEY `origin` (`origin`),
KEY `wall` (`wall`),
- KEY `author-name` (`author-name`),
+ KEY `forum_mode` (`forum_mode`),
KEY `author-link` (`author-link`),
- FULLTEXT KEY `title` (`title`),
- FULLTEXT KEY `body` (`body`),
- FULLTEXT KEY `tag` (`tag`),
- FULLTEXT KEY `file` (`file`),
+ KEY `bookmark` (`bookmark`),
+ KEY `moderated` (`moderated`),
+ KEY `spam` (`spam`),
+ KEY `author-name` (`author-name`),
+ FULLTEXT KEY `title` (`title`),
+ FULLTEXT KEY `body` (`body`),
FULLTEXT KEY `allow_cid` (`allow_cid`),
FULLTEXT KEY `allow_gid` (`allow_gid`),
FULLTEXT KEY `deny_cid` (`deny_cid`),
- FULLTEXT KEY `deny_gid` (`deny_gid`)
+ FULLTEXT KEY `deny_gid` (`deny_gid`),
+ FULLTEXT KEY `tag` (`tag`),
+ FULLTEXT KEY `file` (`file`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
+--
+-- Table structure for table `item_id`
+--
+
+CREATE TABLE IF NOT EXISTS `item_id` (
+ `iid` int(11) NOT NULL,
+ `uid` int(11) NOT NULL,
+ `sid` char(255) NOT NULL,
+ `service` char(255) NOT NULL,
+ PRIMARY KEY (`iid`),
+ KEY `uid` (`uid`),
+ KEY `sid` (`sid`),
+ KEY `service` (`service`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
--
-- Table structure for table `mail`
--
`from-photo` char(255) NOT NULL,
`from-url` char(255) NOT NULL,
`contact-id` char(255) NOT NULL,
- `convid` int(10) unsigned NOT NULL,
+ `convid` int(11) NOT NULL,
`title` char(255) NOT NULL,
`body` mediumtext NOT NULL,
- `seen` tinyint(1) NOT NULL DEFAULT '0',
+ `seen` tinyint(1) NOT NULL,
`reply` tinyint(1) NOT NULL DEFAULT '0',
- `replied` tinyint(1) NOT NULL DEFAULT '0',
+ `replied` tinyint(1) NOT NULL,
`unknown` tinyint(1) NOT NULL DEFAULT '0',
`uri` char(255) NOT NULL,
`parent-uri` char(255) NOT NULL,
`created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY (`id`),
+ KEY `reply` (`reply`),
KEY `uid` (`uid`),
KEY `guid` (`guid`),
- KEY `convid` (`convid`),
- KEY `reply` (`reply`),
- KEY `unknown` (`unknown`),
+ KEY `seen` (`seen`),
KEY `uri` (`uri`),
KEY `parent-uri` (`parent-uri`),
- KEY `created` (`created`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+ KEY `created` (`created`),
+ KEY `convid` (`convid`),
+ KEY `unknown` (`unknown`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `mailacct`
+--
+
+CREATE TABLE IF NOT EXISTS `mailacct` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `server` char(255) NOT NULL,
+ `port` int(11) NOT NULL,
+ `ssltype` char(16) NOT NULL,
+ `mailbox` char(255) NOT NULL,
+ `user` char(255) NOT NULL,
+ `pass` text NOT NULL,
+ `action` int(11) NOT NULL,
+ `movetofolder` char(255) NOT NULL,
+ `reply_to` char(255) NOT NULL,
+ `pubmail` tinyint(1) NOT NULL DEFAULT '0',
+ `last_check` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `manage`
+--
+
+CREATE TABLE IF NOT EXISTS `manage` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `mid` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `uid` (`uid`),
+ KEY `mid` (`mid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `notify`
+--
+
+CREATE TABLE IF NOT EXISTS `notify` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `hash` char(64) NOT NULL,
+ `name` char(255) NOT NULL,
+ `url` char(255) NOT NULL,
+ `photo` char(255) NOT NULL,
+ `date` datetime NOT NULL,
+ `msg` mediumtext NOT NULL,
+ `uid` int(11) NOT NULL,
+ `link` char(255) NOT NULL,
+ `parent` int(11) NOT NULL,
+ `seen` tinyint(1) NOT NULL DEFAULT '0',
+ `type` int(11) NOT NULL,
+ `verb` char(255) NOT NULL,
+ `otype` char(16) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `type` (`type`),
+ KEY `seen` (`seen`),
+ KEY `uid` (`uid`),
+ KEY `date` (`date`),
+ KEY `hash` (`hash`),
+ KEY `parent` (`parent`),
+ KEY `link` (`link`),
+ KEY `otype` (`otype`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `notify-threads`
+--
+
+CREATE TABLE IF NOT EXISTS `notify-threads` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `notify-id` int(11) NOT NULL,
+ `master-parent-item` int(10) unsigned NOT NULL DEFAULT '0',
+ `parent-item` int(10) unsigned NOT NULL DEFAULT '0',
+ `receiver-uid` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `master-parent-item` (`master-parent-item`),
+ KEY `receiver-uid` (`receiver-uid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `pconfig`
+--
+
+CREATE TABLE IF NOT EXISTS `pconfig` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL DEFAULT '0',
+ `cat` char(255) CHARACTER SET ascii NOT NULL,
+ `k` char(255) CHARACTER SET ascii NOT NULL,
+ `v` mediumtext NOT NULL,
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `access` (`uid`,`cat`,`k`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
CREATE TABLE IF NOT EXISTS `photo` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL,
- `contact-id` int(10) unsigned NOT NULL,
- `guid` char(64) NOT NULL,
+ `contact-id` int(10) unsigned NOT NULL DEFAULT '0',
+ `guid` char(64) NOT NULL,
`resource-id` char(255) NOT NULL,
`created` datetime NOT NULL,
`edited` datetime NOT NULL,
KEY `resource-id` (`resource-id`),
KEY `album` (`album`),
KEY `scale` (`scale`),
- KEY `profile` (`profile`),
- KEY `guid` (`guid`)
+ KEY `profile` (`profile`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
+--
+-- Table structure for table `poll`
+--
+
+CREATE TABLE IF NOT EXISTS `poll` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `q0` mediumtext NOT NULL,
+ `q1` mediumtext NOT NULL,
+ `q2` mediumtext NOT NULL,
+ `q3` mediumtext NOT NULL,
+ `q4` mediumtext NOT NULL,
+ `q5` mediumtext NOT NULL,
+ `q6` mediumtext NOT NULL,
+ `q7` mediumtext NOT NULL,
+ `q8` mediumtext NOT NULL,
+ `q9` mediumtext NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `uid` (`uid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `poll_result`
+--
+
+CREATE TABLE IF NOT EXISTS `poll_result` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `poll_id` int(11) NOT NULL,
+ `choice` int(11) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `poll_id` (`poll_id`),
+ KEY `choice` (`choice`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
--
-- Table structure for table `profile`
--
`country-name` char(255) NOT NULL,
`gender` char(32) NOT NULL,
`marital` char(255) NOT NULL,
- `showwith` tinyint(1) NOT NULL DEFAULT '0',
`with` text NOT NULL,
`sexual` char(255) NOT NULL,
`politic` char(255) NOT NULL,
CREATE TABLE IF NOT EXISTS `profile_check` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL,
- `cid` int(10) unsigned NOT NULL,
+ `cid` int(10) unsigned NOT NULL DEFAULT '0',
`dfrn_id` char(255) NOT NULL,
`sec` char(255) NOT NULL,
`expire` int(11) NOT NULL,
-- --------------------------------------------------------
+--
+-- Table structure for table `queue`
+--
+
+CREATE TABLE IF NOT EXISTS `queue` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `cid` int(11) NOT NULL,
+ `network` char(32) NOT NULL,
+ `created` datetime NOT NULL,
+ `last` datetime NOT NULL,
+ `content` mediumtext NOT NULL,
+ `batch` tinyint(1) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`id`),
+ KEY `cid` (`cid`),
+ KEY `network` (`network`),
+ KEY `created` (`created`),
+ KEY `last` (`last`),
+ KEY `batch` (`batch`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `register`
+--
+
+CREATE TABLE IF NOT EXISTS `register` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `hash` char(255) NOT NULL,
+ `created` datetime NOT NULL,
+ `uid` int(10) unsigned NOT NULL,
+ `password` char(255) NOT NULL,
+ `language` char(16) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `search`
+--
+
+CREATE TABLE IF NOT EXISTS `search` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `term` char(255) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `uid` (`uid`),
+ KEY `term` (`term`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
--
-- Table structure for table `session`
--
-- --------------------------------------------------------
+--
+-- Table structure for table `sign`
+--
+
+CREATE TABLE IF NOT EXISTS `sign` (
+ `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
+ `iid` int(10) unsigned NOT NULL,
+ `signed_text` mediumtext NOT NULL,
+ `signature` text NOT NULL,
+ `signer` char(255) NOT NULL,
+ PRIMARY KEY (`id`),
+ KEY `iid` (`iid`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `spam`
+--
+
+CREATE TABLE IF NOT EXISTS `spam` (
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `uid` int(11) NOT NULL,
+ `spam` int(11) NOT NULL DEFAULT '0',
+ `ham` int(11) NOT NULL DEFAULT '0',
+ `term` char(255) NOT NULL,
+ `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+ PRIMARY KEY (`id`),
+ KEY `uid` (`uid`),
+ KEY `spam` (`spam`),
+ KEY `ham` (`ham`),
+ KEY `term` (`term`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
+--
+-- Table structure for table `tokens`
+--
+
+CREATE TABLE IF NOT EXISTS `tokens` (
+ `id` varchar(40) NOT NULL,
+ `secret` text NOT NULL,
+ `client_id` varchar(20) NOT NULL,
+ `expires` int(11) NOT NULL,
+ `scope` varchar(200) NOT NULL,
+ `uid` int(11) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+
+-- --------------------------------------------------------
+
--
-- Table structure for table `user`
--
`email` char(255) NOT NULL,
`openid` char(255) NOT NULL,
`timezone` char(128) NOT NULL,
- `language` char(32) NOT NULL DEFAULT 'en',
+ `language` char(16) NOT NULL DEFAULT 'en',
`register_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`login_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`default-location` char(255) NOT NULL,
`prvkey` text NOT NULL,
`spubkey` text NOT NULL,
`sprvkey` text NOT NULL,
- `verified` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `blocked` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `blockwall` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `hidewall` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `blocktags` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `unkmail` tinyint(1) unsigned NOT NULL DEFAULT '0',
- `cntunkmail` int(11) unsigned NOT NULL DEFAULT '10',
- `notify-flags` int(11) unsigned NOT NULL DEFAULT '65535',
- `page-flags` int(11) unsigned NOT NULL DEFAULT '0',
+ `verified` tinyint(1) unsigned NOT NULL DEFAULT '0',
+ `blocked` tinyint(1) unsigned NOT NULL DEFAULT '0',
+ `blockwall` tinyint(1) NOT NULL DEFAULT '0',
+ `hidewall` tinyint(1) NOT NULL DEFAULT '0',
+ `blocktags` tinyint(1) NOT NULL DEFAULT '0',
+ `unkmail` tinyint(1) NOT NULL DEFAULT '0',
+ `cntunkmail` int(11) NOT NULL DEFAULT '10',
+ `notify-flags` int(11) unsigned NOT NULL DEFAULT '65535',
+ `page-flags` int(11) NOT NULL DEFAULT '0',
`prvnets` tinyint(1) NOT NULL DEFAULT '0',
`pwdreset` char(255) NOT NULL,
`maxreq` int(11) NOT NULL DEFAULT '10',
- `expire` int(11) unsigned NOT NULL DEFAULT '0',
- `account_expired` tinyint( 1 ) NOT NULL DEFAULT '0',
+ `expire` int(10) unsigned NOT NULL DEFAULT '0',
+ `account_expired` tinyint(1) NOT NULL DEFAULT '0',
`account_expires_on` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`expire_notification_sent` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
- `allow_cid` mediumtext NOT NULL,
+ `allow_cid` mediumtext NOT NULL,
`allow_gid` mediumtext NOT NULL,
- `deny_cid` mediumtext NOT NULL,
+ `deny_cid` mediumtext NOT NULL,
`deny_gid` mediumtext NOT NULL,
`openidserver` text NOT NULL,
- PRIMARY KEY (`uid`),
+ PRIMARY KEY (`uid`),
KEY `nickname` (`nickname`),
+ KEY `login_date` (`login_date`),
KEY `account_expired` (`account_expired`),
KEY `hidewall` (`hidewall`),
KEY `blockwall` (`blockwall`),
- KEY `unkmail` (`unkmail`),
- KEY `cntunkmail` (`cntunkmail`),
KEY `blocked` (`blocked`),
KEY `verified` (`verified`),
- KEY `login_date` (`login_date`)
-) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `register` (
- `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `hash` CHAR( 255 ) NOT NULL ,
- `created` DATETIME NOT NULL ,
- `uid` INT(11) UNSIGNED NOT NULL,
- `password` CHAR(255) NOT NULL,
- `language` CHAR(16) NOT NULL,
- PRIMARY KEY (`id`)
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `clients` (
-`client_id` VARCHAR( 20 ) NOT NULL ,
-`pw` VARCHAR( 20 ) NOT NULL ,
-`redirect_uri` VARCHAR( 200 ) NOT NULL ,
-`name` VARCHAR( 128 ) NULL DEFAULT NULL,
-`icon` VARCHAR( 255 ) NULL DEFAULT NULL,
-`uid` INT NOT NULL DEFAULT 0,
-PRIMARY KEY ( `client_id` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `tokens` (
-`id` VARCHAR( 40 ) NOT NULL ,
-`secret` VARCHAR( 40 ) NOT NULL ,
-`client_id` VARCHAR( 20 ) NOT NULL ,
-`expires` INT NOT NULL ,
-`scope` VARCHAR( 200 ) NOT NULL ,
-`uid` INT NOT NULL ,
-PRIMARY KEY ( `id` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `auth_codes` (
-`id` VARCHAR( 40 ) NOT NULL ,
-`client_id` VARCHAR( 20 ) NOT NULL ,
-`redirect_uri` VARCHAR( 200 ) NOT NULL ,
-`expires` INT NOT NULL ,
-`scope` VARCHAR( 250 ) NOT NULL ,
-PRIMARY KEY ( `id` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `queue` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`cid` INT NOT NULL ,
-`network` CHAR( 32 ) NOT NULL,
-`created` DATETIME NOT NULL ,
-`last` DATETIME NOT NULL ,
-`content` MEDIUMTEXT NOT NULL,
-`batch` TINYINT( 1 ) NOT NULL DEFAULT '0',
-INDEX ( `cid` ),
-INDEX ( `created` ),
-INDEX ( `last` ),
-INDEX ( `network` ),
-INDEX ( `batch` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `pconfig` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL DEFAULT '0',
-`cat` CHAR( 255 ) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL ,
-`k` CHAR( 255 ) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL ,
-`v` MEDIUMTEXT NOT NULL,
-UNIQUE KEY `access`(`cat`, `k`)
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `hook` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`hook` CHAR( 255 ) NOT NULL ,
-`file` CHAR( 255 ) NOT NULL ,
-`function` CHAR( 255 ) NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `addon` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`name` CHAR( 255 ) NOT NULL ,
-`version` CHAR( 255 ) NOT NULL ,
-`installed` TINYINT( 1 ) NOT NULL DEFAULT '0' ,
-`timestamp` BIGINT NOT NULL DEFAULT '0' ,
-`plugin_admin` TINYINT( 1 ) NOT NULL DEFAULT '0'
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `event` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`cid` INT NOT NULL ,
-`uri` CHAR( 255 ) NOT NULL,
-`created` DATETIME NOT NULL ,
-`edited` DATETIME NOT NULL ,
-`start` DATETIME NOT NULL ,
-`finish` DATETIME NOT NULL ,
-`desc` TEXT NOT NULL ,
-`location` TEXT NOT NULL ,
-`type` CHAR( 255 ) NOT NULL ,
-`nofinish` TINYINT( 1 ) NOT NULL DEFAULT '0',
-`adjust` TINYINT( 1 ) NOT NULL DEFAULT '1',
-`allow_cid` MEDIUMTEXT NOT NULL ,
-`allow_gid` MEDIUMTEXT NOT NULL ,
-`deny_cid` MEDIUMTEXT NOT NULL ,
-`deny_gid` MEDIUMTEXT NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `cache` (
- `k` CHAR( 255 ) NOT NULL PRIMARY KEY ,
- `v` TEXT NOT NULL,
- `updated` DATETIME NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `fcontact` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`url` CHAR( 255 ) NOT NULL ,
-`name` CHAR( 255 ) NOT NULL ,
-`photo` CHAR( 255 ) NOT NULL ,
-`request` CHAR( 255 ) NOT NULL,
-`nick` CHAR( 255 ) NOT NULL ,
-`addr` CHAR( 255 ) NOT NULL ,
-`batch` CHAR( 255) NOT NULL,
-`notify` CHAR( 255 ) NOT NULL ,
-`poll` CHAR( 255 ) NOT NULL ,
-`confirm` CHAR( 255 ) NOT NULL ,
-`priority` TINYINT( 1 ) NOT NULL ,
-`network` CHAR( 32 ) NOT NULL ,
-`alias` CHAR( 255 ) NOT NULL ,
-`pubkey` TEXT NOT NULL ,
-`updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
-INDEX ( `addr` ),
-INDEX ( `network` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `ffinder` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT UNSIGNED NOT NULL ,
-`cid` INT UNSIGNED NOT NULL ,
-`fid` INT UNSIGNED NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `fsuggest` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`cid` INT NOT NULL ,
-`name` CHAR( 255 ) NOT NULL ,
-`url` CHAR( 255 ) NOT NULL ,
-`request` CHAR( 255 ) NOT NULL,
-`photo` CHAR( 255 ) NOT NULL ,
-`note` TEXT NOT NULL ,
-`created` DATETIME NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `mailacct` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL,
-`server` CHAR( 255 ) NOT NULL ,
-`port` INT NOT NULL,
-`ssltype` CHAR( 16 ) NOT NULL,
-`mailbox` CHAR( 255 ) NOT NULL,
-`user` CHAR( 255 ) NOT NULL ,
-`pass` TEXT NOT NULL ,
-`reply_to` CHAR( 255 ) NOT NULL ,
-`action` INT NOT NULL ,
-`movetofolder` CHAR(255) NOT NULL ,
-`pubmail` TINYINT(1) NOT NULL DEFAULT '0',
-`last_check` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `attach` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`hash` CHAR(64) NOT NULL,
-`filename` CHAR(255) NOT NULL,
-`filetype` CHAR( 64 ) NOT NULL ,
-`filesize` INT NOT NULL ,
-`data` LONGBLOB NOT NULL ,
-`created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
-`edited` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
-`allow_cid` MEDIUMTEXT NOT NULL ,
-`allow_gid` MEDIUMTEXT NOT NULL ,
-`deny_cid` MEDIUMTEXT NOT NULL ,
-`deny_gid` MEDIUMTEXT NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `guid` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`guid` CHAR( 64 ) NOT NULL ,
-INDEX ( `guid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `sign` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`iid` INT UNSIGNED NOT NULL ,
-`signed_text` MEDIUMTEXT NOT NULL ,
-`signature` TEXT NOT NULL ,
-`signer` CHAR( 255 ) NOT NULL ,
-INDEX ( `iid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `deliverq` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`cmd` CHAR( 32 ) NOT NULL ,
-`item` INT NOT NULL ,
-`contact` INT NOT NULL
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `search` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`term` CHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
-INDEX ( `uid` ),
-INDEX ( `term` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `fserver` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`server` CHAR( 255 ) NOT NULL ,
-`posturl` CHAR( 255 ) NOT NULL ,
-`key` TEXT NOT NULL,
-INDEX ( `server` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `gcontact` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`name` CHAR( 255 ) NOT NULL ,
-`url` CHAR( 255 ) NOT NULL ,
-`nurl` CHAR( 255 ) NOT NULL ,
-`photo` CHAR( 255 ) NOT NULL,
-`connect` CHAR( 255 ) NOT NULL,
-INDEX ( `nurl` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `glink` (
-`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`cid` INT NOT NULL ,
-`uid` INT NOT NULL ,
-`gcid` INT NOT NULL,
-`updated` DATETIME NOT NULL,
-INDEX ( `cid` ),
-INDEX ( `uid` ),
-INDEX ( `gcid` ),
-INDEX ( `updated` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `gcign` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`gcid` INT NOT NULL,
-INDEX ( `uid` ),
-INDEX ( `gcid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `conv` (
- `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
- `guid` CHAR( 64 ) NOT NULL ,
- `recips` MEDIUMTEXT NOT NULL ,
- `uid` INT NOT NULL,
- `creator` CHAR( 255 ) NOT NULL ,
- `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
- `subject` MEDIUMTEXT NOT NULL,
- INDEX ( `created` ),
- INDEX ( `updated` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `notify` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`hash` CHAR( 64 ) NOT NULL,
-`type` INT( 11 ) NOT NULL ,
-`name` CHAR( 255 ) NOT NULL ,
-`url` CHAR( 255 ) NOT NULL ,
-`photo` CHAR( 255 ) NOT NULL ,
-`date` DATETIME NOT NULL ,
-`msg` MEDIUMTEXT NOT NULL ,
-`uid` INT NOT NULL ,
-`link` CHAR( 255 ) NOT NULL ,
-`parent` INT( 11 ) NOT NULL,
-`seen` TINYINT( 1 ) NOT NULL DEFAULT '0',
-`verb` CHAR( 255 ) NOT NULL,
-`otype` CHAR( 16 ) NOT NULL,
-INDEX ( `hash` ),
-INDEX ( `type` ),
-INDEX ( `uid` ),
-INDEX ( `link` ),
-INDEX ( `parent` ),
-INDEX ( `seen` ),
-INDEX ( `date` ),
-INDEX ( `otype` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `item_id` (
-`iid` INT NOT NULL ,
-`uid` INT NOT NULL ,
-`sid` CHAR ( 255 ) NOT NULL,
-`service` char ( 255 ) NOT NULL,
-PRIMARY KEY ( `iid` ),
-INDEX ( `uid` ),
-INDEX ( `sid` ),
-INDEX ( `service` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `manage` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`mid` INT NOT NULL,
-INDEX ( `uid` ),
-INDEX ( `mid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `poll_result` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`poll_id` INT NOT NULL ,
-`choice` INT NOT NULL ,
-INDEX ( `poll_id` ),
-INDEX ( `choice` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-
-CREATE TABLE IF NOT EXISTS `poll` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL ,
-`q0` MEDIUMTEXT NOT NULL ,
-`q1` MEDIUMTEXT NOT NULL ,
-`q2` MEDIUMTEXT NOT NULL ,
-`q3` MEDIUMTEXT NOT NULL ,
-`q4` MEDIUMTEXT NOT NULL ,
-`q5` MEDIUMTEXT NOT NULL ,
-`q6` MEDIUMTEXT NOT NULL ,
-`q7` MEDIUMTEXT NOT NULL ,
-`q8` MEDIUMTEXT NOT NULL ,
-`q9` MEDIUMTEXT NOT NULL ,
-INDEX ( `uid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
+ KEY `unkmail` (`unkmail`),
+ KEY `cntunkmail` (`cntunkmail`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
+-- --------------------------------------------------------
--
--- Table structure for table `notify-threads`
+-- Table structure for table `userd`
--
--- notify-id: notify.id of the first notification of this thread
--- master-parent-item: item.id of the parent item
--- parent-item: item.id of the imediate parent (only for multi-thread)
--- not used yet.
--- receiver-uid: user.uid of the receiver of this notification.
---
--- If we query for a master-parent-item and receiver-uid...
--- * Returns 1 item: this is not the parent notification,
--- so just "follow" the thread (references to this notification)
--- * Returns no item: this is the first notification related to
--- this parent item. So, create the record and use the message-id
--- header.
-
-
-CREATE TABLE IF NOT EXISTS `notify-threads` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`notify-id` INT NOT NULL,
-`master-parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
-`parent-item` INT( 10 ) unsigned NOT NULL DEFAULT '0',
-`receiver-uid` INT NOT NULL,
-INDEX ( `master-parent-item` ),
-INDEX ( `receiver-uid` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
-CREATE TABLE IF NOT EXISTS `spam` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`uid` INT NOT NULL,
-`spam` INT NOT NULL DEFAULT '0',
-`ham` INT NOT NULL DEFAULT '0',
-`term` CHAR(255) NOT NULL,
-`date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
-INDEX ( `uid` ),
-INDEX ( `spam` ),
-INDEX ( `ham` ),
-INDEX ( `term` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
CREATE TABLE IF NOT EXISTS `userd` (
-`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
-`username` CHAR( 255 ) NOT NULL,
-INDEX ( `username` )
-) ENGINE = MyISAM DEFAULT CHARSET=utf8;
-
+ `id` int(11) NOT NULL AUTO_INCREMENT,
+ `username` char(255) NOT NULL,
+ PRIMARY KEY (`id`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
*
* For debugging, insert 'dbg(1);' anywhere in the program flow.
* dbg(0); will turn it off. Logging is performed at LOGGER_DATA level.
- * When logging, all binary info is converted to
- * text and html entities are escaped so that
- * the debugging stream is safe to view
- * within both terminals and web pages.
+ * When logging, all binary info is converted to text and html entities are escaped so that
+ * the debugging stream is safe to view within both terminals and web pages.
*
*/
-
-if(! class_exists('dba')) {
-
- class dba {
-
- private $debug = 0;
- private $db;
- private $exceptions;
+
+if(! class_exists('dba')) {
+class dba {
+
+ private $debug = 0;
+ private $db;
+ public $mysqli = true;
+ public $connected = false;
+ public $error = false;
+
+ function __construct($server,$user,$pass,$db,$install = false) {
+
+ $server = trim($server);
+ $user = trim($user);
+ $pass = trim($pass);
+ $db = trim($db);
+
+ if (!(strlen($server) && strlen($user))){
+ $this->connected = false;
+ $this->db = null;
+ return;
+ }
- public $mysqli = true;
- public $connected = false;
- public $error = false;
-
- function __construct($server,$user,$pass,$db,$install = false) {
-
- $server = trim($server);
- $user = trim($user);
- $pass = trim($pass);
- $db = trim($db);
-
- //we need both, server and username, so fail if one is missing
- if (!(strlen($server) && strlen($user))){
- $this->connected = false;
- $this->db = null;
- throw new InvalidArgumentException(t("Server name of user name are missing. "));
- }
-
- //when we are installing
- if($install) {
- if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) {
- if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) {
- $this->connected = false;
- $this->db = null;
- throw new InvalidArgumentException( t('Cannot locate DNS info for database server \'%s\''), $server);
- }
+ if($install) {
+ if(strlen($server) && ($server !== 'localhost') && ($server !== '127.0.0.1')) {
+ if(! dns_get_record($server, DNS_A + DNS_CNAME + DNS_PTR)) {
+ $this->error = sprintf( t('Cannot locate DNS info for database server \'%s\''), $server);
+ $this->connected = false;
+ $this->db = null;
+ return;
}
}
+ }
- if(class_exists('mysqli')) {
- $this->db = new mysqli($server,$user,$pass,$db);
- if(NULL === $this->db->connect_error) {
- $this->connected = true;
- } else {
- throw new RuntimeException($this->db->connect_error);
- }
- } else {
- $this->mysqli = false;
- $this->db = mysql_connect($server,$user,$pass);
- if($this->db && mysql_select_db($db,$this->db)) {
- $this->connected = true;
- } else {
- throw new RuntimeException(mysql_error());
- }
+ if(class_exists('mysqli')) {
+ $this->db = @new mysqli($server,$user,$pass,$db);
+ if(! mysqli_connect_errno()) {
+ $this->connected = true;
}
}
-
- public function excep($excep) {
- $this->exceptions=$excep;
+ else {
+ $this->mysqli = false;
+ $this->db = mysql_connect($server,$user,$pass);
+ if($this->db && mysql_select_db($db,$this->db)) {
+ $this->connected = true;
+ }
}
-
- public function getdb() {
- return $this->db;
+ if(! $this->connected) {
+ $this->db = null;
+ if(! $install)
+ system_unavailable();
}
+ }
- public function q($sql) {
-
- if((! $this->db) || (! $this->connected)) {
- $this->throwOrLog(new RuntimeException(t("There is no db connection. ")));
- return;
- }
-
- if($this->mysqli) {
- $result = $this->db->query($sql);
- } else {
- $result = mysql_query($sql,$this->db);
- }
+ public function getdb() {
+ return $this->db;
+ }
- //on debug mode or fail, the query is written to the log.
- //this won't work if logger can not read it's logging level
- //from the db.
- if($this->debug || FALSE === $result) {
-
- $mesg = '';
-
- if($result === false) {
- $mesg = 'false '.$this->error();
- } elseif($result === true) {
- $mesg = 'true';
- } else {
- if($this->mysqli) {
- $mesg = $result->num_rows . t(' results') . EOL;
- } else {
- $mesg = mysql_num_rows($result) . t(' results') . EOL;
- }
- }
+ public function q($sql) {
+
+ if((! $this->db) || (! $this->connected))
+ return false;
+
+ if($this->mysqli)
+ $result = @$this->db->query($sql);
+ else
+ $result = @mysql_query($sql,$this->db);
- $str = 'SQL = ' . printable($sql) . EOL . t('SQL returned ') . $mesg . EOL;
+ if($this->debug) {
+ $mesg = '';
- // If dbfail.out exists, we will write any failed calls directly to it,
- // regardless of any logging that may or may nor be in effect.
- // These usually indicate SQL syntax errors that need to be resolved.
- if(file_exists('dbfail.out')) {\r
- file_put_contents('dbfail.out', datetime_convert() . "\n" . $str . "\n", FILE_APPEND);
- }
- logger('dba: ' . $str );
- if(FALSE===$result) {
- $this->throwOrLog(new RuntimeException('dba: ' . $str));
- return;
- }
+ if($this->mysqli) {
+ if($this->db->errno)
+ logger('dba: ' . $this->db->error);
}
-
-
- if($result === true) {
- return $result;
+ elseif(mysql_errno($this->db))
+ logger('dba: ' . mysql_error($this->db));
+
+ if($result === false)
+ $mesg = 'false';
+ elseif($result === true)
+ $mesg = 'true';
+ else {
+ if($this->mysqli)
+ $mesg = $result->num_rows . ' results' . EOL;
+ else
+ $mesg = mysql_num_rows($result) . ' results' . EOL;
}
+
+ $str = 'SQL = ' . printable($sql) . EOL . 'SQL returned ' . $mesg . EOL;
- $r = array();
- if($this->mysqli) {
- if($result->num_rows) {
- while($x = $result->fetch_array(MYSQLI_ASSOC)) {
- $r[] = $x;
- }
- $result->free_result();
- }
- } else {
- if(mysql_num_rows($result)) {
- while($x = mysql_fetch_array($result, MYSQL_ASSOC)) {
- $r[] = $x;
- }
- mysql_free_result($result);
- }
- }
+ logger('dba: ' . $str );
+ }
+ /**
+ * If dbfail.out exists, we will write any failed calls directly to it,
+ * regardless of any logging that may or may nor be in effect.
+ * These usually indicate SQL syntax errors that need to be resolved.
+ */
- if($this->debug) {
- logger('dba: ' . printable(print_r($r, true)));
- }
- return($r);
+ if($result === false) {
+ logger('dba: ' . printable($sql) . ' returned false.');
+ if(file_exists('dbfail.out'))
+ file_put_contents('dbfail.out', datetime_convert() . "\n" . printable($sql) . ' returned false' . "\n", FILE_APPEND);
}
- private function error() {
- if($this->mysqli) {
- return $this->db->error;
- } else {
- return mysql_error($this->db);
- }
- }
-
- private function throwOrLog(Exception $ex) {
- if($this->exceptions) {
- throw $ex;
- } else {
- logger('dba: '.$ex->getMessage());
+ if(($result === true) || ($result === false))
+ return $result;
+
+ $r = array();
+ if($this->mysqli) {
+ if($result->num_rows) {
+ while($x = $result->fetch_array(MYSQLI_ASSOC))
+ $r[] = $x;
+ $result->free_result();
}
}
-
- /**
- * starts a transaction. Transactions need to be finished with
- * commit() or rollback(). Please mind that the db table engine may
- * not support this.
- */
- public function beginTransaction() {\r
- if($this->mysqli) {\r
- return $this->db->autocommit(false);\r
- } else {\r
- //no transaction support in mysql module...
- mysql_query('SET AUTOCOMMIT = 0;', $db); \r
- }\r
- }
-
- /**
- * rollback a transaction. So, rollback anything that was done since the last call
- * to beginTransaction().
- */
- public function rollback() {\r
- if($this->mysqli) {\r
- return $this->db->rollback();\r
- } else {\r
- //no transaction support in mysql module...
- mysql_query('ROLLBACK;', $db);\r
+ else {
+ if(mysql_num_rows($result)) {
+ while($x = mysql_fetch_array($result, MYSQL_ASSOC))
+ $r[] = $x;
+ mysql_free_result($result);
}
- $this->stopTransaction(); \r
}
- /**
- * commit a transaction. So, write any query to the database.
- */
- public function commit() {\r
- if($this->mysqli) {\r
- return $this->db->commit();\r
- } else {\r
- //no transaction support in mysql module...\r
- mysql_query('COMMIT;', $db);\r
- }\r
- $this->stopTransaction();\r
- }
-
- private function stopTransaction() {\r
- if($this->mysqli) {\r
- return $this->db->autocommit(true);\r
- } else {\r
- //no transaction support in mysql module...\r
- mysql_query('SET AUTOCOMMIT = 1;', $db);\r
- }\r
- }
-
- public function dbg($dbg) {
- $this->debug = $dbg;
- }
+
+ if($this->debug)
+ logger('dba: ' . printable(print_r($r, true)));
+ return($r);
+ }
- public function escape($str) {
- if($this->db && $this->connected) {
- if($this->mysqli) {
- return $this->db->real_escape_string($str);
- } else {
- return mysql_real_escape_string($str,$this->db);
- }
- }
+ public function dbg($dbg) {
+ $this->debug = $dbg;
+ }
+
+ public function escape($str) {
+ if($this->db && $this->connected) {
+ if($this->mysqli)
+ return @$this->db->real_escape_string($str);
+ else
+ return @mysql_real_escape_string($str,$this->db);
}
+ }
- function __destruct() {
- if ($this->db) {
- if($this->mysqli) {
- $this->db->close();
- }
- } else {
+ function __destruct() {
+ if ($this->db)
+ if($this->mysqli)
+ $this->db->close();
+ else
mysql_close($this->db);
- }
- }
}
-}
+}}
if(! function_exists('printable')) {
- function printable($s) {
- $s = preg_replace("~([\x01-\x08\x0E-\x0F\x10-\x1F\x7F-\xFF])~",".", $s);
- $s = str_replace("\x00",'.',$s);
- if(x($_SERVER,'SERVER_NAME'))
- $s = escape_tags($s);
- return $s;
- }
-}
+function printable($s) {
+ $s = preg_replace("~([\x01-\x08\x0E-\x0F\x10-\x1F\x7F-\xFF])~",".", $s);
+ $s = str_replace("\x00",'.',$s);
+ if(x($_SERVER,'SERVER_NAME'))
+ $s = escape_tags($s);
+ return $s;
+}}
// Procedural functions
-if(! function_exists('dbg')) {
- function dbg($state) {
- global $db;
- if($db)
- $db->dbg($state);
- }
-}
+if(! function_exists('dbg')) {
+function dbg($state) {
+ global $db;
+ if($db)
+ $db->dbg($state);
+}}
-if(! function_exists('dbesc')) {
- function dbesc($str) {
- global $db;
- if($db && $db->connected)
- return($db->escape($str));
- else
- return(str_replace("'","\\'",$str));
- }
-}
+if(! function_exists('dbesc')) {
+function dbesc($str) {
+ global $db;
+ if($db && $db->connected)
+ return($db->escape($str));
+ else
+ return(str_replace("'","\\'",$str));
+}}
// Example: $r = q("SELECT * FROM `%s` WHERE `uid` = %d",
// 'user', 1);
-if(! function_exists('q')) {
- function q($sql) {
+if(! function_exists('q')) {
+function q($sql) {
- global $db;
- $args = func_get_args();
- unset($args[0]);
+ global $db;
+ $args = func_get_args();
+ unset($args[0]);
- if($db && $db->connected) {
- $stmt = vsprintf($sql,$args);
- if($stmt === false)
- logger('dba: vsprintf error: ' . print_r(debug_backtrace(),true));
- return $db->q($stmt);
- }
+ if($db && $db->connected) {
+ $stmt = vsprintf($sql,$args);
+ if($stmt === false)
+ logger('dba: vsprintf error: ' . print_r(debug_backtrace(),true));
+ return $db->q($stmt);
+ }
- /**
- *
- * This will happen occasionally trying to store the
- * session data after abnormal program termination
- *
- */
- logger('dba: no database: ' . print_r($args,true));
- return false;
+ /**
+ *
+ * This will happen occasionally trying to store the
+ * session data after abnormal program termination
+ *
+ */
+ logger('dba: no database: ' . print_r($args,true));
+ return false;
- }
-}
+}}
/**
*
*
*/
-if(! function_exists('dbq')) {
- function dbq($sql) {
+if(! function_exists('dbq')) {
+function dbq($sql) {
- global $db;
- if($db && $db->connected)
- $ret = $db->q($sql);
- else
- $ret = false;
- return $ret;
- }
-}
+ global $db;
+ if($db && $db->connected)
+ $ret = $db->q($sql);
+ else
+ $ret = false;
+ return $ret;
+}}
-// Caller is responsible for ensuring that any integer arguments to
+// Caller is responsible for ensuring that any integer arguments to
// dbesc_array are actually integers and not malformed strings containing
-// SQL injection vectors. All integer array elements should be specifically
-// cast to int to avoid trouble.
+// SQL injection vectors. All integer array elements should be specifically
+// cast to int to avoid trouble.
if(! function_exists('dbesc_array_cb')) {
- function dbesc_array_cb(&$item, $key) {
- if(is_string($item))
- $item = dbesc($item);
- }
-}
+function dbesc_array_cb(&$item, $key) {
+ if(is_string($item))
+ $item = dbesc($item);
+}}
if(! function_exists('dbesc_array')) {
- function dbesc_array(&$arr) {
- if(is_array($arr) && count($arr)) {
- array_walk($arr,'dbesc_array_cb');
- }
+function dbesc_array(&$arr) {
+ if(is_array($arr) && count($arr)) {
+ array_walk($arr,'dbesc_array_cb');
}
-}
+}}