Commit graph

69 commits

Author SHA1 Message Date
zotlabs
6962bc5147 create account_store_lowlevel() 2017-05-29 21:46:38 -07:00
zotlabs
4fcfcc8117 start deprecation of server_role 2017-05-29 13:50:02 -07:00
zotlabs
1de1b58a08 consolidate email validation checks 2017-05-11 19:01:04 -07:00
zotlabs
2bdf135cbc remove more backquotes 2016-10-09 16:13:49 -07:00
redmatrix
fa94644bcf Unify the various mail sending instance to enotify::send() and z_mail(). Both take the same arguments. z_mail() is text only, enotify::send() provides html and text. Both are pluggable using the enotfy_send hook. 2016-10-01 03:06:01 -07:00
redmatrix
fb9544badd null_date conversion; phase 1 2016-09-25 17:06:13 -07:00
redmatrix
f17eb946f6 pro: add system techlevel to new accounts 2016-09-02 16:14:33 -07:00
redmatrix
ea0be8ea1a provide techlevels in the pro server role. Should have no visible effect on other roles. 2016-08-31 17:49:22 -07:00
redmatrix
5243dd153b use config system.server_role and deprecate 'UNO' 2016-08-07 17:29:35 -07:00
redmatrix
3affb2e817 sort out some of the authentication mess - with luck this may fix the DAV auth issue which I simply could not duplicate or find a reason for. 2016-07-20 17:55:40 -07:00
redmatrix
b155e93ab1 add letsencrypt x3 intermediate cert and new cert file, improve UX of new registrations 2016-06-27 19:04:00 -07:00
redmatrix
dfb6255f59 more removal of reserved words from DB schemas 2016-05-31 17:50:47 -07:00
redmatrix
80f2ba640e code cleanup 2016-05-24 20:49:23 -07:00
redmatrix
de006771c7 renamed include files identity.php (channel.php) and Contact.php (connections.php) 2016-05-22 16:54:30 -07:00
redmatrix
bb96f44861 allow engineering units (e.g. 400M, 1G) as service class limits 2016-04-28 21:02:27 -07:00
redmatrix
9abd95fad3 static App 2016-03-31 16:06:03 -07:00
redmatrix
8882ffc0de ensure auto_channel_create() is executed for all workflows when UNO is set. 2016-02-19 19:21:57 -08:00
redmatrix
baedd25309 'auto channel creation' - if the corresponding config variable is set, create a channel when an account is created.
Plugins can provide the necessary channel details (probably from an extended registration form). If no details are provided, a social (mostly public) channel will be created using the LHS of the email address and you will be directed to your channel page (unless email verification is required, in which case this step will be delayed until successful validation and login). If the reddress is already assigned a random name(1000-9999) reddress will be assigned.
2016-01-12 15:43:08 -08:00
jeroenpraat
2e73e6bfb6 Fix #109. 2015-12-09 14:37:14 +01:00
redmatrix
ebe374d572 notification changes to support testdrive 2015-10-01 19:49:06 -07:00
Klaus Weidenbach
d0361582b0 Correcting reported Doxygen syntax warnings.
Fixed wrong Doxygen syntax and add some of the available FIXME to
Doxygen documentation.
Updated Doxygen configuration to add also all capital letter tags.
Adding some more Doxygen documentation.
2015-03-29 22:23:00 +02:00
Klaus Weidenbach
864116805b Documentation and remove duplicate code.
Add a bit Doxygen documentation and remove some duplicate code from
account.php.
2015-03-16 00:20:14 +01:00
Klaus Weidenbach
80816a7195 Some documentation, fix chatroom service class lookup.
Add some Doxygen documentation and fixing a service class lookup for
chatroom_create().
2015-03-14 00:10:06 +01:00
friendica
a496036066 local_user => local_channel 2015-01-28 20:56:04 -08:00
Christian Vogeley
43f143a211 Fix for issue #763 Error creating new channel within the limits of the
subscription plan
2015-01-11 16:12:36 +01:00
Habeas Codice
1a5a5c7edb PostgreSQL support initial commit
There were 11 main types of changes:
- UPDATE's and DELETE's sometimes had LIMIT 1 at the end of them. This is not only non-compliant but
it would certainly not do what whoever wrote it thought it would. It is likely this mistake was just
copied from Friendica. All of these instances, the LIMIT 1 was simply removed.
- Bitwise operations (and even some non-zero int checks) erroneously rely on MySQL implicit
integer-boolean conversion in the WHERE clauses. This is non-compliant (and bad programming practice
to boot). Proper explicit boolean conversions were added. New queries should use proper conventions.
- MySQL has a different operator for bitwise XOR than postgres. Rather than add yet another dba_
func, I converted them to "& ~" ("AND NOT") when turning off, and "|" ("OR") when turning on. There
were no true toggles (XOR). New queries should refrain from using XOR when not necessary.
- There are several fields which the schema has marked as NOT NULL, but the inserts don't specify
them. The reason this works is because mysql totally ignores the constraint and adds an empty text
default automatically. Again, non-compliant, obviously. In these cases a default of empty text was
added.
- Several statements rely on a non-standard MySQL feature
(http://dev.mysql.com/doc/refman/5.5/en/group-by-handling.html). These queries can all be rewritten
to be standards compliant. Interestingly enough, the newly rewritten standards compliant queries run
a zillion times faster, even on MySQL.
- A couple of function/operator name translations were needed (RAND/RANDOM, GROUP_CONCAT/STRING_AGG,
UTC_NOW, REGEXP/~, ^/#) -- assist functions added in the dba_
- INTERVALs: postgres requires quotes around the value, mysql requires that there are not quotes
around the value -- assist functions added in the dba_
- NULL_DATE's -- Postgres does not allow the invalid date '0000-00-00 00:00:00' (there is no such
thing as year 0 or month 0 or day 0). We use '0001-01-01 00:00:00' for postgres. Conversions are
handled in Zot/item packets automagically by quoting all dates with dbescdate().
- char(##) specifications in the schema creates fields with blank spaces that aren't trimmed in the
code. MySQL apparently treats char(##) as varchar(##), again, non-compliant. Since postgres works
better with text fields anyway, this ball of bugs was simply side-stepped by using 'text' datatype
for all text fields in the postgres schema. varchar was used in a couple of places where it actually
seemed appropriate (size constraint), but without rigorously vetting that all of the PHP code
actually validates data, new bugs might come out from under the rug.
- postgres doesn't store nul bytes and a few other non-printables in text fields, even when quoted.
bytea fields were used when storing binary data (photo.data, attach.data). A new dbescbin() function
was added to handle this transparently.
- postgres does not support LIMIT #,# syntax. All databases support LIMIT # OFFSET # syntax.
Statements were updated to be standard.

These changes require corresponding changes in the coding standards. Please review those before
adding any code going forward.

Still on my TODO list:
- remove quotes from non-reserved identifiers and make reserved identifiers use dba func for quoting
- Rewrite search queries for better results (both MySQL and Postgres)
2014-11-13 12:21:58 -08:00
friendica
bbc9e4427e honour service class restrictions for total_identities, total_channels ("friends") and total_feeds both when importing channels and subsequently when syncing clones. Limits are based on the local system - additional entries are silently dropped. 2014-09-15 17:17:00 -07:00
friendica
18f8f08367 argument order reversed in downgrade_accounts 2014-09-09 17:25:31 -07:00
friendica
c6d07feff5 This is long overdue - use a symblic constant NULL_DATE instead of the easily mis-typed sequence '0000-00-00 00:00:00' 2014-09-08 20:35:15 -07:00
friendica
844087bc71 implement service class for feed polling frequenecy, fixed a service class bug, moved service class stuff from plugin to account.php where it belongs and load that by default instead of on demand 2014-09-03 19:07:14 -07:00
friendica
84ff380302 more diaspora heavy lifting 2014-08-25 20:57:10 -07:00
friendica
fa706c8e86 finish implementing email verification. Currently it only applies if REGISTER_OPEN is in effect. 2014-07-09 21:10:56 -07:00
friendica
5ed9444bee some initial work towards email address verification 2014-07-03 18:29:32 -07:00
friendica
5747e20e50 some more snakebite and fix up include/account - forgot about that inline array stuff 2014-02-18 16:59:31 -08:00
friendica
7d4916ec71 service class downgrade to the default service class on account expiration if using a non-default service class and account has expired. 2014-02-18 15:17:18 -08:00
friendica
60416d6f33 fix the admin interface to pending registrations 2014-01-21 14:56:42 -08:00
friendica
4011837805 more work on dav - deletion and a bit more progress on OS storage 2014-01-07 18:47:33 -08:00
Thomas Willingham
c1a633ddee Missing include for new_keypair 2013-08-10 16:28:05 +01:00
friendica
c02a930121 move sitekey creation to the account creation function instead of during channel creation. Channel import bypassed sitekey creation completely. We should do it during install, but it's possible somebody might have to install manually and the sitekey would never get created. This is the best compromise I can come up with. Looks like the doc tree was also updated in this checkin 2013-08-09 01:20:34 -07:00
friendica
dfd13a0d8a fix registration email (sitename) 2013-07-18 21:42:10 -07:00
friendica
20d5985c0a fix setting account_roles for admin account 2013-05-15 22:59:05 -07:00
friendica
524f205caa photo driver issue when updating contact photos - old class structure used instead of photo_factory() 2013-05-05 22:49:46 -07:00
friendica
175f30d7cc fix admin assign 2013-05-05 21:27:21 -07:00
friendica
6f04a7e070 minor fixes related to postgres development 2013-05-05 19:34:56 -07:00
friendica
ea3940c4b0 start formatting for Doxygen 2013-02-25 17:09:40 -08:00
friendica
3ee75a795a Whinging whining stupid fucks. 2013-02-12 02:02:35 -08:00
friendica
698a372ba1 Sort out registrations requiring approval 2013-02-11 16:43:27 -08:00
friendica
e0cbbbf918 smarty support in intltext, fix old pending accounts query in ping, log failed email register notify 2013-02-09 13:20:10 -08:00
friendica
62afdf3820 more register_approve stuff - like the admin page. Hopefully this won't conflict with Thomas's admin page "list users" changes 2013-02-08 03:51:31 -08:00
friendica
dbc024cdaf perhaps REGISTER_VERIFY will work now. I'll test it and make certain it works some day. But not today. 2013-02-08 03:11:40 -08:00