more account infrastructure

This commit is contained in:
friendica 2012-07-22 00:46:20 -07:00
parent 6d74c2c594
commit 236ba8badc
7 changed files with 135 additions and 331 deletions

View File

@ -353,6 +353,7 @@ if(! class_exists('App')) {
class App { class App {
public $account; public $account;
public $language;
public $module_loaded = false; public $module_loaded = false;
public $query_string; public $query_string;
public $config; public $config;

View File

@ -1,52 +1,33 @@
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */; /*!40101 SET NAMES utf8 */;
-- --------------------------------------------------------
--
-- Table structure for table `account`
--
CREATE TABLE IF NOT EXISTS `account` ( CREATE TABLE IF NOT EXISTS `account` (
`account_id` int(11) NOT NULL AUTO_INCREMENT, `account_id` int(11) NOT NULL AUTO_INCREMENT,
`account_name` char(255) NOT NULL, `account_parent` int(10) unsigned NOT NULL,
`account_password` char(255) NOT NULL, `account_password` char(255) NOT NULL,
`account_email` char(255) NOT NULL, `account_email` char(255) NOT NULL,
`account_openid` char(255) NOT NULL,
`account_language` char(16) NOT NULL DEFAULT 'en', `account_language` char(16) NOT NULL DEFAULT 'en',
`account_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `account_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`account_verified` tinyint(1) unsigned NOT NULL DEFAULT '0', `account_flags` int(10) unsigned NOT NULL,
`account_blocked` tinyint(1) unsigned NOT NULL DEFAULT '0', `account_roles` int(10) unsigned NOT NULL,
`account_reset` char(255) NOT NULL, `account_reset` char(255) NOT NULL,
`account_removed` tinyint(1) NOT NULL DEFAULT '0',
`account_expired` tinyint(1) NOT NULL DEFAULT '0',
`account_expires` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `account_expires` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`account_expire_notified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `account_expire_notified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`account_service_class` char(32) NOT NULL, `account_service_class` char(32) NOT NULL,
PRIMARY KEY (`account_id`), PRIMARY KEY (`account_id`),
KEY `account_name` (`account_name`),
KEY `account_password` (`account_password`), KEY `account_password` (`account_password`),
KEY `account_email` (`account_email`), KEY `account_email` (`account_email`),
KEY `account_openid` (`account_openid`), KEY `account_service_class` (`account_service_class`),
KEY `account_verified` (`account_verified`), KEY `account_parent` (`account_parent`),
KEY `account_blocked` (`account_blocked`), KEY `account_flags` (`account_flags`),
KEY `account_removed` (`account_removed`), KEY `account_roles` (`account_roles`)
KEY `account_expired` (`account_expired`),
KEY `account_service_class` (`account_service_class`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `addon`
--
CREATE TABLE IF NOT EXISTS `addon` ( CREATE TABLE IF NOT EXISTS `addon` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(255) NOT NULL, `name` char(255) NOT NULL,
@ -61,12 +42,6 @@ CREATE TABLE IF NOT EXISTS `addon` (
KEY `installed` (`installed`) KEY `installed` (`installed`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `attach`
--
CREATE TABLE IF NOT EXISTS `attach` ( CREATE TABLE IF NOT EXISTS `attach` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -84,12 +59,6 @@ CREATE TABLE IF NOT EXISTS `attach` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `auth_codes`
--
CREATE TABLE IF NOT EXISTS `auth_codes` ( CREATE TABLE IF NOT EXISTS `auth_codes` (
`id` varchar(40) NOT NULL, `id` varchar(40) NOT NULL,
`client_id` varchar(20) NOT NULL, `client_id` varchar(20) NOT NULL,
@ -99,12 +68,6 @@ CREATE TABLE IF NOT EXISTS `auth_codes` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `cache`
--
CREATE TABLE IF NOT EXISTS `cache` ( CREATE TABLE IF NOT EXISTS `cache` (
`k` char(255) NOT NULL, `k` char(255) NOT NULL,
`v` text NOT NULL, `v` text NOT NULL,
@ -112,12 +75,6 @@ CREATE TABLE IF NOT EXISTS `cache` (
PRIMARY KEY (`k`) PRIMARY KEY (`k`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `challenge`
--
CREATE TABLE IF NOT EXISTS `challenge` ( CREATE TABLE IF NOT EXISTS `challenge` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`challenge` char(255) NOT NULL, `challenge` char(255) NOT NULL,
@ -128,12 +85,6 @@ CREATE TABLE IF NOT EXISTS `challenge` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `clients`
--
CREATE TABLE IF NOT EXISTS `clients` ( CREATE TABLE IF NOT EXISTS `clients` (
`client_id` varchar(20) NOT NULL, `client_id` varchar(20) NOT NULL,
`pw` varchar(20) NOT NULL, `pw` varchar(20) NOT NULL,
@ -144,12 +95,6 @@ CREATE TABLE IF NOT EXISTS `clients` (
PRIMARY KEY (`client_id`) PRIMARY KEY (`client_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `config`
--
CREATE TABLE IF NOT EXISTS `config` ( CREATE TABLE IF NOT EXISTS `config` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cat` char(255) CHARACTER SET ascii NOT NULL, `cat` char(255) CHARACTER SET ascii NOT NULL,
@ -159,12 +104,6 @@ CREATE TABLE IF NOT EXISTS `config` (
UNIQUE KEY `access` (`cat`,`k`) UNIQUE KEY `access` (`cat`,`k`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `contact`
--
CREATE TABLE IF NOT EXISTS `contact` ( CREATE TABLE IF NOT EXISTS `contact` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL COMMENT 'owner uid', `uid` int(11) NOT NULL COMMENT 'owner uid',
@ -243,12 +182,6 @@ CREATE TABLE IF NOT EXISTS `contact` (
KEY `forum` (`forum`) KEY `forum` (`forum`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `conv`
--
CREATE TABLE IF NOT EXISTS `conv` ( CREATE TABLE IF NOT EXISTS `conv` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`guid` char(64) NOT NULL, `guid` char(64) NOT NULL,
@ -263,12 +196,6 @@ CREATE TABLE IF NOT EXISTS `conv` (
KEY `updated` (`updated`) KEY `updated` (`updated`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `deliverq`
--
CREATE TABLE IF NOT EXISTS `deliverq` ( CREATE TABLE IF NOT EXISTS `deliverq` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cmd` char(32) NOT NULL, `cmd` char(32) NOT NULL,
@ -277,13 +204,7 @@ CREATE TABLE IF NOT EXISTS `deliverq` (
PRIMARY KEY (`id`), PRIMARY KEY (`id`),
KEY `item` (`item`), KEY `item` (`item`),
KEY `contact` (`contact`) KEY `contact` (`contact`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `event`
--
CREATE TABLE IF NOT EXISTS `event` ( CREATE TABLE IF NOT EXISTS `event` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
@ -315,12 +236,6 @@ CREATE TABLE IF NOT EXISTS `event` (
KEY `nofinish` (`nofinish`) KEY `nofinish` (`nofinish`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `fcontact`
--
CREATE TABLE IF NOT EXISTS `fcontact` ( CREATE TABLE IF NOT EXISTS `fcontact` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`url` char(255) NOT NULL, `url` char(255) NOT NULL,
@ -343,12 +258,6 @@ CREATE TABLE IF NOT EXISTS `fcontact` (
KEY `network` (`network`) KEY `network` (`network`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `ffinder`
--
CREATE TABLE IF NOT EXISTS `ffinder` ( CREATE TABLE IF NOT EXISTS `ffinder` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -360,12 +269,6 @@ CREATE TABLE IF NOT EXISTS `ffinder` (
KEY `fid` (`fid`) KEY `fid` (`fid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `fserver`
--
CREATE TABLE IF NOT EXISTS `fserver` ( CREATE TABLE IF NOT EXISTS `fserver` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`server` char(255) NOT NULL, `server` char(255) NOT NULL,
@ -377,12 +280,6 @@ CREATE TABLE IF NOT EXISTS `fserver` (
KEY `posturl` (`posturl`) KEY `posturl` (`posturl`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `fsuggest`
--
CREATE TABLE IF NOT EXISTS `fsuggest` ( CREATE TABLE IF NOT EXISTS `fsuggest` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -396,12 +293,6 @@ CREATE TABLE IF NOT EXISTS `fsuggest` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `gcign`
--
CREATE TABLE IF NOT EXISTS `gcign` ( CREATE TABLE IF NOT EXISTS `gcign` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -411,12 +302,6 @@ CREATE TABLE IF NOT EXISTS `gcign` (
KEY `gcid` (`gcid`) KEY `gcid` (`gcid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `gcontact`
--
CREATE TABLE IF NOT EXISTS `gcontact` ( CREATE TABLE IF NOT EXISTS `gcontact` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`name` char(255) NOT NULL, `name` char(255) NOT NULL,
@ -430,12 +315,6 @@ CREATE TABLE IF NOT EXISTS `gcontact` (
KEY `url` (`url`) KEY `url` (`url`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `glink`
--
CREATE TABLE IF NOT EXISTS `glink` ( CREATE TABLE IF NOT EXISTS `glink` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`cid` int(11) NOT NULL, `cid` int(11) NOT NULL,
@ -451,12 +330,6 @@ CREATE TABLE IF NOT EXISTS `glink` (
KEY `updated` (`updated`) KEY `updated` (`updated`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `group`
--
CREATE TABLE IF NOT EXISTS `group` ( CREATE TABLE IF NOT EXISTS `group` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -469,12 +342,6 @@ CREATE TABLE IF NOT EXISTS `group` (
KEY `deleted` (`deleted`) KEY `deleted` (`deleted`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `group_member`
--
CREATE TABLE IF NOT EXISTS `group_member` ( CREATE TABLE IF NOT EXISTS `group_member` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -486,12 +353,6 @@ CREATE TABLE IF NOT EXISTS `group_member` (
KEY `contact-id` (`contact-id`) KEY `contact-id` (`contact-id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `guid`
--
CREATE TABLE IF NOT EXISTS `guid` ( CREATE TABLE IF NOT EXISTS `guid` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`guid` char(64) NOT NULL, `guid` char(64) NOT NULL,
@ -499,12 +360,6 @@ CREATE TABLE IF NOT EXISTS `guid` (
KEY `guid` (`guid`) KEY `guid` (`guid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `hook`
--
CREATE TABLE IF NOT EXISTS `hook` ( CREATE TABLE IF NOT EXISTS `hook` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`hook` char(255) NOT NULL, `hook` char(255) NOT NULL,
@ -514,12 +369,6 @@ CREATE TABLE IF NOT EXISTS `hook` (
KEY `hook` (`hook`) KEY `hook` (`hook`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `intro`
--
CREATE TABLE IF NOT EXISTS `intro` ( CREATE TABLE IF NOT EXISTS `intro` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -542,15 +391,8 @@ CREATE TABLE IF NOT EXISTS `intro` (
KEY `contact-id` (`contact-id`) KEY `contact-id` (`contact-id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `item`
--
CREATE TABLE IF NOT EXISTS `item` ( CREATE TABLE IF NOT EXISTS `item` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`guid` char(64) NOT NULL,
`uri` char(255) CHARACTER SET ascii NOT NULL, `uri` char(255) CHARACTER SET ascii NOT NULL,
`uid` int(10) unsigned NOT NULL DEFAULT '0', `uid` int(10) unsigned NOT NULL DEFAULT '0',
`contact-id` int(10) unsigned NOT NULL DEFAULT '0', `contact-id` int(10) unsigned NOT NULL DEFAULT '0',
@ -559,7 +401,6 @@ CREATE TABLE IF NOT EXISTS `item` (
`gravity` tinyint(1) NOT NULL DEFAULT '0', `gravity` tinyint(1) NOT NULL DEFAULT '0',
`parent` int(10) unsigned NOT NULL DEFAULT '0', `parent` int(10) unsigned NOT NULL DEFAULT '0',
`parent-uri` char(255) CHARACTER SET ascii NOT NULL, `parent-uri` char(255) CHARACTER SET ascii NOT NULL,
`extid` char(255) NOT NULL,
`thr-parent` char(255) NOT NULL, `thr-parent` char(255) NOT NULL,
`created` datetime NOT NULL, `created` datetime NOT NULL,
`edited` datetime NOT NULL, `edited` datetime NOT NULL,
@ -585,10 +426,8 @@ CREATE TABLE IF NOT EXISTS `item` (
`plink` char(255) NOT NULL, `plink` char(255) NOT NULL,
`resource-id` char(255) NOT NULL, `resource-id` char(255) NOT NULL,
`event-id` int(11) NOT NULL, `event-id` int(11) NOT NULL,
`tag` mediumtext NOT NULL,
`attach` mediumtext NOT NULL, `attach` mediumtext NOT NULL,
`inform` mediumtext NOT NULL, `inform` mediumtext NOT NULL,
`file` mediumtext NOT NULL,
`location` char(255) NOT NULL, `location` char(255) NOT NULL,
`coord` char(255) NOT NULL, `coord` char(255) NOT NULL,
`allow_cid` mediumtext NOT NULL, `allow_cid` mediumtext NOT NULL,
@ -606,7 +445,6 @@ CREATE TABLE IF NOT EXISTS `item` (
`deleted` tinyint(1) NOT NULL DEFAULT '0', `deleted` tinyint(1) NOT NULL DEFAULT '0',
`origin` tinyint(1) NOT NULL DEFAULT '0', `origin` tinyint(1) NOT NULL DEFAULT '0',
`forum_mode` tinyint(1) NOT NULL DEFAULT '0', `forum_mode` tinyint(1) NOT NULL DEFAULT '0',
`last-child` tinyint(1) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`), PRIMARY KEY (`id`),
KEY `uri` (`uri`), KEY `uri` (`uri`),
KEY `uid` (`uid`), KEY `uid` (`uid`),
@ -618,12 +456,9 @@ CREATE TABLE IF NOT EXISTS `item` (
KEY `edited` (`edited`), KEY `edited` (`edited`),
KEY `visible` (`visible`), KEY `visible` (`visible`),
KEY `deleted` (`deleted`), KEY `deleted` (`deleted`),
KEY `last-child` (`last-child`),
KEY `unseen` (`unseen`), KEY `unseen` (`unseen`),
KEY `extid` (`extid`),
KEY `received` (`received`), KEY `received` (`received`),
KEY `starred` (`starred`), KEY `starred` (`starred`),
KEY `guid` (`guid`),
KEY `origin` (`origin`), KEY `origin` (`origin`),
KEY `wall` (`wall`), KEY `wall` (`wall`),
KEY `forum_mode` (`forum_mode`), KEY `forum_mode` (`forum_mode`),
@ -637,17 +472,9 @@ CREATE TABLE IF NOT EXISTS `item` (
FULLTEXT KEY `allow_cid` (`allow_cid`), FULLTEXT KEY `allow_cid` (`allow_cid`),
FULLTEXT KEY `allow_gid` (`allow_gid`), FULLTEXT KEY `allow_gid` (`allow_gid`),
FULLTEXT KEY `deny_cid` (`deny_cid`), 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; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `item_id`
--
CREATE TABLE IF NOT EXISTS `item_id` ( CREATE TABLE IF NOT EXISTS `item_id` (
`iid` int(11) NOT NULL, `iid` int(11) NOT NULL,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -659,12 +486,6 @@ CREATE TABLE IF NOT EXISTS `item_id` (
KEY `service` (`service`) KEY `service` (`service`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `locks`
--
CREATE TABLE IF NOT EXISTS `locks` ( CREATE TABLE IF NOT EXISTS `locks` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(128) NOT NULL, `name` char(128) NOT NULL,
@ -672,12 +493,6 @@ CREATE TABLE IF NOT EXISTS `locks` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `mail`
--
CREATE TABLE IF NOT EXISTS `mail` ( CREATE TABLE IF NOT EXISTS `mail` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -709,12 +524,6 @@ CREATE TABLE IF NOT EXISTS `mail` (
KEY `contact-id` (`contact-id`) KEY `contact-id` (`contact-id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `mailacct`
--
CREATE TABLE IF NOT EXISTS `mailacct` ( CREATE TABLE IF NOT EXISTS `mailacct` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -733,12 +542,6 @@ CREATE TABLE IF NOT EXISTS `mailacct` (
KEY `uid` (`uid`) KEY `uid` (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `manage`
--
CREATE TABLE IF NOT EXISTS `manage` ( CREATE TABLE IF NOT EXISTS `manage` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -748,12 +551,6 @@ CREATE TABLE IF NOT EXISTS `manage` (
KEY `mid` (`mid`) KEY `mid` (`mid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `notify`
--
CREATE TABLE IF NOT EXISTS `notify` ( CREATE TABLE IF NOT EXISTS `notify` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`hash` char(64) NOT NULL, `hash` char(64) NOT NULL,
@ -780,12 +577,6 @@ CREATE TABLE IF NOT EXISTS `notify` (
KEY `otype` (`otype`) KEY `otype` (`otype`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `notify-threads`
--
CREATE TABLE IF NOT EXISTS `notify-threads` ( CREATE TABLE IF NOT EXISTS `notify-threads` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`notify-id` int(11) NOT NULL, `notify-id` int(11) NOT NULL,
@ -797,12 +588,6 @@ CREATE TABLE IF NOT EXISTS `notify-threads` (
KEY `receiver-uid` (`receiver-uid`) KEY `receiver-uid` (`receiver-uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `pconfig`
--
CREATE TABLE IF NOT EXISTS `pconfig` ( CREATE TABLE IF NOT EXISTS `pconfig` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL DEFAULT '0', `uid` int(11) NOT NULL DEFAULT '0',
@ -813,12 +598,6 @@ CREATE TABLE IF NOT EXISTS `pconfig` (
UNIQUE KEY `access` (`uid`,`cat`,`k`) UNIQUE KEY `access` (`uid`,`cat`,`k`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `photo`
--
CREATE TABLE IF NOT EXISTS `photo` ( CREATE TABLE IF NOT EXISTS `photo` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -851,12 +630,6 @@ CREATE TABLE IF NOT EXISTS `photo` (
KEY `contact-id` (`contact-id`) KEY `contact-id` (`contact-id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `poll`
--
CREATE TABLE IF NOT EXISTS `poll` ( CREATE TABLE IF NOT EXISTS `poll` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -874,12 +647,6 @@ CREATE TABLE IF NOT EXISTS `poll` (
KEY `uid` (`uid`) KEY `uid` (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `poll_result`
--
CREATE TABLE IF NOT EXISTS `poll_result` ( CREATE TABLE IF NOT EXISTS `poll_result` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`poll_id` int(11) NOT NULL, `poll_id` int(11) NOT NULL,
@ -889,12 +656,6 @@ CREATE TABLE IF NOT EXISTS `poll_result` (
KEY `choice` (`choice`) KEY `choice` (`choice`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `profile`
--
CREATE TABLE IF NOT EXISTS `profile` ( CREATE TABLE IF NOT EXISTS `profile` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -938,16 +699,21 @@ CREATE TABLE IF NOT EXISTS `profile` (
`publish` tinyint(1) NOT NULL DEFAULT '0', `publish` tinyint(1) NOT NULL DEFAULT '0',
`net-publish` tinyint(1) NOT NULL DEFAULT '0', `net-publish` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`), PRIMARY KEY (`id`),
KEY `uid` (`uid`),
KEY `is-default` (`is-default`),
KEY `locality` (`locality`),
KEY `postal-code` (`postal-code`),
KEY `country-name` (`country-name`),
KEY `hometown` (`hometown`),
KEY `gender` (`gender`),
KEY `marital` (`marital`),
KEY `sexual` (`sexual`),
KEY `publish` (`publish`),
KEY `net-publish` (`net-publish`),
FULLTEXT KEY `pub_keywords` (`pub_keywords`), FULLTEXT KEY `pub_keywords` (`pub_keywords`),
FULLTEXT KEY `prv_keywords` (`prv_keywords`) FULLTEXT KEY `prv_keywords` (`prv_keywords`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `profile_check`
--
CREATE TABLE IF NOT EXISTS `profile_check` ( CREATE TABLE IF NOT EXISTS `profile_check` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -961,13 +727,7 @@ CREATE TABLE IF NOT EXISTS `profile_check` (
KEY `dfrn_id` (`dfrn_id`), KEY `dfrn_id` (`dfrn_id`),
KEY `sec` (`sec`), KEY `sec` (`sec`),
KEY `expire` (`expire`) KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `queue`
--
CREATE TABLE IF NOT EXISTS `queue` ( CREATE TABLE IF NOT EXISTS `queue` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
@ -985,12 +745,6 @@ CREATE TABLE IF NOT EXISTS `queue` (
KEY `batch` (`batch`) KEY `batch` (`batch`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `register`
--
CREATE TABLE IF NOT EXISTS `register` ( CREATE TABLE IF NOT EXISTS `register` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`hash` char(255) NOT NULL, `hash` char(255) NOT NULL,
@ -1004,12 +758,6 @@ CREATE TABLE IF NOT EXISTS `register` (
KEY `uid` (`uid`) KEY `uid` (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `session`
--
CREATE TABLE IF NOT EXISTS `session` ( CREATE TABLE IF NOT EXISTS `session` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`sid` char(255) NOT NULL, `sid` char(255) NOT NULL,
@ -1020,12 +768,6 @@ CREATE TABLE IF NOT EXISTS `session` (
KEY `expire` (`expire`) KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `sign`
--
CREATE TABLE IF NOT EXISTS `sign` ( CREATE TABLE IF NOT EXISTS `sign` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`iid` int(10) unsigned NOT NULL DEFAULT '0', `iid` int(10) unsigned NOT NULL DEFAULT '0',
@ -1039,12 +781,6 @@ CREATE TABLE IF NOT EXISTS `sign` (
KEY `signer` (`signer`) KEY `signer` (`signer`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `spam`
--
CREATE TABLE IF NOT EXISTS `spam` ( CREATE TABLE IF NOT EXISTS `spam` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`uid` int(11) NOT NULL, `uid` int(11) NOT NULL,
@ -1059,12 +795,6 @@ CREATE TABLE IF NOT EXISTS `spam` (
KEY `term` (`term`) KEY `term` (`term`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `term`
--
CREATE TABLE IF NOT EXISTS `term` ( CREATE TABLE IF NOT EXISTS `term` (
`tid` int(10) unsigned NOT NULL AUTO_INCREMENT, `tid` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(10) unsigned NOT NULL, `uid` int(10) unsigned NOT NULL,
@ -1081,12 +811,6 @@ CREATE TABLE IF NOT EXISTS `term` (
KEY `uid` (`uid`) KEY `uid` (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `tokens`
--
CREATE TABLE IF NOT EXISTS `tokens` ( CREATE TABLE IF NOT EXISTS `tokens` (
`id` varchar(40) NOT NULL, `id` varchar(40) NOT NULL,
`secret` text NOT NULL, `secret` text NOT NULL,
@ -1100,12 +824,6 @@ CREATE TABLE IF NOT EXISTS `tokens` (
KEY `uid` (`uid`) KEY `uid` (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `user`
--
CREATE TABLE IF NOT EXISTS `user` ( CREATE TABLE IF NOT EXISTS `user` (
`uid` int(11) NOT NULL AUTO_INCREMENT, `uid` int(11) NOT NULL AUTO_INCREMENT,
`account_id` int(10) unsigned NOT NULL, `account_id` int(10) unsigned NOT NULL,
@ -1165,12 +883,6 @@ CREATE TABLE IF NOT EXISTS `user` (
KEY `account_id` (`account_id`) KEY `account_id` (`account_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- Table structure for table `userd`
--
CREATE TABLE IF NOT EXISTS `userd` ( CREATE TABLE IF NOT EXISTS `userd` (
`id` int(11) NOT NULL AUTO_INCREMENT, `id` int(11) NOT NULL AUTO_INCREMENT,
`username` char(255) NOT NULL, `username` char(255) NOT NULL,

View File

@ -35,7 +35,7 @@ $a->config['sitename'] = "Friendica Social Network";
// In order to perform system administration via the admin panel, admin_email // In order to perform system administration via the admin panel, admin_email
// must precisely match the email address of the person logged in. // must precisely match the email address of the person logged in.
$a->config['register_policy'] = REGISTER_OPEN; $a->config['system']['register_policy'] = REGISTER_OPEN;
$a->config['register_text'] = ''; $a->config['register_text'] = '';
$a->config['admin_email'] = ''; $a->config['admin_email'] = '';

99
include/account.php Normal file
View File

@ -0,0 +1,99 @@
<?php
require_once('include/config.php');
require_once('include/network.php');
require_once('include/plugin.php');
require_once('include/text.php');
require_once('include/language.php');
require_once('include/datetime.php');
function create_account($arr) {
// Required: { email, password, password2, tos }
$a = get_app();
$result = array('success' => false, 'user' => null, 'password' => '', 'message' => '');
$using_invites = get_config('system','invitation_only');
$num_invites = get_config('system','number_invites');
$invite_id = ((x($arr,'invite_id')) ? notags(trim($arr['invite_id'])) : '');
$email = ((x($arr,'email')) ? notags(trim($arr['email'])) : '');
$password = ((x($arr,'password')) ? trim($arr['password']) : '');
$password2 = ((x($arr,'password2')) ? trim($arr['password2']) : '');
$parent = ((x($arr,'parent')) ? intval($arr['parent']) : 0 );
$blocked = ((x($arr,'blocked')) ? intval($arr['blocked']) : 0);
$verified = ((x($arr,'verified')) ? intval($arr['verified']) : 0);
if($using_invites) {
if(! $invite_id) {
$result['message'] .= t('An invitation is required.') . EOL;
return $result;
}
$r = q("select * from register where `hash` = '%s' limit 1", dbesc($invite_id));
if(! results($r)) {
$result['message'] .= t('Invitation could not be verified.') . EOL;
return $result;
}
}
if((! x($email)) || (! x($password))) {
notice( t('Please enter the required information.') . EOL );
return;
}
if(! allowed_email($email))
$result['message'] .= t('Your email domain is not among those allowed on this site.') . EOL;
if((! valid_email($email)) || (! validate_email($email)))
$result['message'] .= t('Not a valid email address.') . EOL;
if(strlen($result['message'])) {
return $result;
}
$password_encoded = hash('whirlpool',$password);
$result['password'] = $new_password;
require_once('include/crypto.php');
$keys = new_keypair(4096);
if($keys === false) {
$result['message'] .= t('SERIOUS ERROR: Generation of security keys failed.') . EOL;
return $result;
}
$default_service_class = get_config('system','default_service_class');
if(! $default_service_class)
$default_service_class = '';
$prvkey = $keys['prvkey'];
$pubkey = $keys['pubkey'];
$r = q("INSERT INTO account
( account_parent, account_password, account_email, account_language,
account_created, account_flags, account_roles, account_expires, account_service_class )
VALUES ( %d, '%s', '%s', '%s', '%s', %d, %d, '%s', '%s' )",
intval($parent),
dbesc($password_encoded),
dbesc($email),
dbesc($a->language),
dbesc(datetime_convert()),
dbesc($flags),
dbesc(0),
dbesc($expires),
dbesc($default_service_class)
);
$result['success'] = true;
return $result;
}

View File

@ -80,7 +80,8 @@ function push_lang($language) {
} }
$a->strings = array(); $a->strings = array();
load_translation_table($language); load_translation_table($language);
$lang = $language; $a->language = $lang = $language;
} }
function pop_lang() { function pop_lang() {
@ -94,7 +95,7 @@ function pop_lang() {
else else
$a->strings = array(); $a->strings = array();
$lang = $a->langsave; $a->language = $lang = $a->langsave;
} }

View File

@ -27,7 +27,7 @@ $install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false
@include(".htconfig.php"); @include(".htconfig.php");
$lang = get_best_language(); $a->language = $lang = get_best_language();
load_translation_table($lang); load_translation_table($lang);

View File

@ -8,13 +8,11 @@ function zregister_init(&$a) {
function zregister_post(&$a) { function zregister_post(&$a) {
global $lang;
$verified = 0; $verified = 0;
$blocked = 1; $blocked = 1;
$arr = array('post' => $_POST); $arr = array('post' => $_POST);
call_hooks('register_post', $arr); call_hooks('zregister_post', $arr);
$max_dailies = intval(get_config('system','max_daily_registrations')); $max_dailies = intval(get_config('system','max_daily_registrations'));
if($max_dailies) { if($max_dailies) {
@ -24,21 +22,21 @@ function zregister_post(&$a) {
} }
} }
switch($a->config['register_policy']) { switch(get_config('system','register_policy')) {
case REGISTER_OPEN: case REGISTER_OPEN:
$blocked = 0; $blocked = 0;
$verified = 1; $verified = 0;
break; break;
case REGISTER_APPROVE: case REGISTER_APPROVE:
$blocked = 1; $blocked = 0;
$verified = 0; $verified = 0;
break; break;
default: default:
case REGISTER_CLOSED: case REGISTER_CLOSED:
// TODO check against service class and fix this line
if((! x($_SESSION,'authenticated') && (! x($_SESSION,'administrator')))) { if((! x($_SESSION,'authenticated') && (! x($_SESSION,'administrator')))) {
notice( t('Permission denied.') . EOL ); notice( t('Permission denied.') . EOL );
return; return;
@ -48,14 +46,14 @@ function zregister_post(&$a) {
break; break;
} }
require_once('include/user.php'); require_once('include/account.php');
$arr = $_POST; $arr = $_POST;
$arr['blocked'] = $blocked; $arr['blocked'] = $blocked;
$arr['verified'] = $verified; $arr['verified'] = $verified;
$result = create_user($arr); $result = create_account($arr);
if(! $result['success']) { if(! $result['success']) {
notice($result['message']); notice($result['message']);
@ -64,11 +62,6 @@ function zregister_post(&$a) {
$user = $result['user']; $user = $result['user'];
if($netpublish && $a->config['register_policy'] != REGISTER_APPROVE) {
$url = $a->get_baseurl() . '/profile/' . $user['nickname'];
proc_run('php',"include/directory.php","$url");
}
$using_invites = get_config('system','invitation_only'); $using_invites = get_config('system','invitation_only');
$num_invites = get_config('system','number_invites'); $num_invites = get_config('system','number_invites');
$invite_id = ((x($_POST,'invite_id')) ? notags(trim($_POST['invite_id'])) : ''); $invite_id = ((x($_POST,'invite_id')) ? notags(trim($_POST['invite_id'])) : '');
@ -101,11 +94,9 @@ function zregister_post(&$a) {
info( t('Registration successful. Please check your email for further instructions.') . EOL ) ; info( t('Registration successful. Please check your email for further instructions.') . EOL ) ;
goaway(z_root()); goaway(z_root());
} }
else {
notice( t('Failed to send email message. Here is the message that failed.') . $email_tpl . EOL );
}
} }
elseif($a->config['register_policy'] == REGISTER_APPROVE) { elseif($a->config['register_policy'] == REGISTER_APPROVE) {
if(! strlen($a->config['admin_email'])) { if(! strlen($a->config['admin_email'])) {
notice( t('Your registration can not be processed.') . EOL); notice( t('Your registration can not be processed.') . EOL);
goaway(z_root()); goaway(z_root());
@ -117,7 +108,7 @@ function zregister_post(&$a) {
dbesc(datetime_convert()), dbesc(datetime_convert()),
intval($user['uid']), intval($user['uid']),
dbesc($result['password']), dbesc($result['password']),
dbesc($lang) dbesc($a->language)
); );
$r = q("SELECT `language` FROM `user` WHERE `email` = '%s' LIMIT 1", $r = q("SELECT `language` FROM `user` WHERE `email` = '%s' LIMIT 1",