Commit Graph

134 Commits

Author SHA1 Message Date
Marcin Kurczewski
731eb6561b Added creation time to tags 2014-10-18 18:48:36 +02:00
Marcin Kurczewski
9379b4945a Moved tag synchronization to TagService 2014-10-18 18:48:36 +02:00
Marcin Kurczewski
185f820e21 Added support for legacy passwords 2014-10-18 18:48:36 +02:00
Marcin Kurczewski
640b66a324 Added list of SQL statement to debug output 2014-10-18 18:48:34 +02:00
Marcin Kurczewski
28e87dca93 Removed unused lazy loaders 2014-10-18 18:48:34 +02:00
Marcin Kurczewski
edb9055299 Changed favorite and score DAO to be more flexible 2014-10-18 18:48:34 +02:00
Marcin Kurczewski
cc22f3c0ba Added comment DAO 2014-10-18 18:48:33 +02:00
Marcin Kurczewski
332ca8e4b7 Added query count statistics to responses 2014-10-18 18:48:33 +02:00
Marcin Kurczewski
0049d59354 Fixed managing default search order 2014-10-18 18:48:33 +02:00
Marcin Kurczewski
216d9b3001 Moved autoloader to composer config 2014-10-18 18:48:32 +02:00
Marcin Kurczewski
52d44284fb Changed search order parsing to be more strict 2014-10-18 18:48:32 +02:00
Marcin Kurczewski
61e95ac708 Added order: support to searching 2014-10-18 18:48:31 +02:00
Marcin Kurczewski
17d898bc0c Fixed default user search order 2014-10-18 18:48:31 +02:00
Marcin Kurczewski
57dc7c5fad Added order:id support to post searching 2014-10-18 18:48:31 +02:00
Marcin Kurczewski
3268618f26 Fixed logging in from multiple computers 2014-10-18 18:48:30 +02:00
Marcin Kurczewski
060ddf46ad Added automatic tag JSON export
I plan to use it in autocomplete inputs.
2014-10-18 18:48:30 +02:00
Marcin Kurczewski
c0bc4d4f19 Improved compatibility with MySQL 2014-10-18 18:48:29 +02:00
Marcin Kurczewski
6d7566ee2f Added post scoring 2014-10-18 18:48:29 +02:00
Marcin Kurczewski
8a9bf259e4 Added order:fav_date and order:fav_count support 2014-10-18 18:48:29 +02:00
Marcin Kurczewski
6e22efdd6e Added post favoriting 2014-10-18 18:48:29 +02:00
Marcin Kurczewski
9edc74f9a5 Added post history 2014-10-18 18:48:28 +02:00
Marcin Kurczewski
df939e0343 Simplified injecting db connection for upgrades 2014-10-18 18:48:28 +02:00
Marcin Kurczewski
2fc6a23e46 Refactored search filters 2014-10-18 18:48:28 +02:00
Marcin Kurczewski
5dc85b7dee Added post relations 2014-10-18 18:48:28 +02:00
Marcin Kurczewski
d3015627b3 Added post globals 2014-10-18 18:48:28 +02:00
Marcin Kurczewski
97ca08cf44 Added post featuring 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
2387dd4074 Refactored entity filtering 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
7b0d907acc Fixed login remembering 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
1d72cec84b Added user lazy loading 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
39d854cb8e Added usage count tracking to tags and posts 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
af3908a23c Added id column to tags 2014-10-18 18:48:27 +02:00
Marcin Kurczewski
a47be4b78f Fixed tests on Windows using bad path separators 2014-10-18 18:48:26 +02:00
Marcin Kurczewski
2f0d0f5fb7 Fixed image manipulator tests without extensions 2014-10-18 18:48:26 +02:00
Marcin Kurczewski
42001d3edf Refactored thumbnail system 2014-10-18 18:48:26 +02:00
Marcin Kurczewski
fbdb4e5128 Changed mime detection to be case insensitive 2014-10-18 18:48:26 +02:00
Marcin Kurczewski
a3f9382671 Changed file mgmt to use entities' lazy getters 2014-10-18 18:48:26 +02:00
Marcin Kurczewski
3b505a9c60 Fixed transaction manager tests using real DB 2014-10-18 18:48:24 +02:00
Marcin Kurczewski
a16a2d3235 Added posts listing (closed #7) 2014-10-18 18:48:24 +02:00
Marcin Kurczewski
15eb2342b9 Moved public data to public_html/
This is going to improve caching.
2014-10-18 18:48:24 +02:00
Marcin Kurczewski
ef451d93ac Added protection against too big uploads 2014-10-18 18:48:23 +02:00
Marcin Kurczewski
ac312ccb49 Added test for anonymous uploads 2014-10-18 18:48:23 +02:00
Marcin Kurczewski
bc8e1b05a6 Implemented post uploads (closed #11) 2014-10-18 18:48:22 +02:00
Marcin Kurczewski
6e196637eb Moved type conversion to EntityConverters 2014-10-18 18:48:22 +02:00
Marcin Kurczewski
6035cf89b7 Added transaction manager 2014-10-18 18:48:22 +02:00
Marcin Kurczewski
20b3dfc76d Added additional type safety 2014-10-18 18:48:22 +02:00
Marcin Kurczewski
3e1aaebf89 Fixed account activation for first user
Until now, AuthService used to check for empty e-mail in order to tell
whether an account is activated. This was wrong for following scenario:

1. User doesn't enter any e-mail.
2. Because he is about to become the first user to register, he will
   become an administrator.
3. Administrators don't need to confirm their e-mail address. Activation
   e-mail is not sent, code for e-mail activation is run instead.
4. The user succeeds to create an e-mail-less administrator account.
5. The user fails to login due to unconfirmed e-mail.
6. The code that activates an e-mail just moves unconfirmed e-mail to
   primary e-mail. That was the bug, there's no e-mail to confirm.

Things got (hopefully) simpler now, since I added separate column for
indicating whether account is activated.
2014-10-18 18:48:22 +02:00
Marcin Kurczewski
4526345e5b Switched to sqlite (closed #38) 2014-10-18 18:48:21 +02:00
Marcin Kurczewski
0548890d97 Introduced entity property getters/setters 2014-10-18 18:48:21 +02:00
Marcin Kurczewski
6ce7beffd2 Fixed frontend behavior after edited user name 2014-10-18 18:48:20 +02:00
Marcin Kurczewski
cb08f68469 Fixed losing entity IDs upon updates 2014-10-18 18:48:20 +02:00
Marcin Kurczewski
29b173de65 Simplified UserService 2014-10-18 18:48:20 +02:00
Marcin Kurczewski
d44e9c9ac9 Fixed tests not calling parent::setUp() 2014-10-18 18:48:20 +02:00
Marcin Kurczewski
fdfb4acbf9 Refactored config 2014-10-18 18:48:20 +02:00
Marcin Kurczewski
c117367974 Added IValidatable; moved validation to FormData
I still struggle to find out how to deal with arguments like
$userNameOrEmail. Should I trim() them in controllers, or in service?
If I do it in service, shouldn't all of such validation belong in there?
2014-10-18 18:48:19 +02:00
Marcin Kurczewski
65da8e9948 Added missing thumbnail generators 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
109aa1c39e Refactored thumbs; fixed setting custom avatars 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
45e18a9ba3 Improved PHP style 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
85a026c37b Added e-mail confirmation and password reset 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
121c2f80dc Refactored AuthService and UserService 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
9a7082c269 Added token purpose check to authentication 2014-10-18 18:48:19 +02:00
Marcin Kurczewski
ee2ca7fbaf Added account settings management and avatars 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
73214396ce Added test for basic controller validity 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
7c4eddd810 Removed PRIVILEGE_ prefix from constants 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
8e8e983f28 Refactored privilege system 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
8edf81e75e Added config mock 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
7a8badd2ed Fixed logging in users that no longer exist 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
de31770c87 Added basic privilege system 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
2ecb79a2fa Added passive authorization 2014-10-18 18:48:18 +02:00
Marcin Kurczewski
ee9fde5402 Added proof of concept for pagination and search 2014-10-18 18:48:17 +02:00
Marcin Kurczewski
e13db65f68 Paid off technical debt regarding validation 2014-10-18 18:48:17 +02:00
Marcin Kurczewski
ae93b187ac Fixed bugs in registration 2014-10-18 18:48:17 +02:00
Marcin Kurczewski
57fd080e52 Changed tests structure 2014-10-18 18:48:17 +02:00
Marcin Kurczewski
03b65c196c Worked on user registration 2014-10-18 18:48:16 +02:00
Marcin Kurczewski
538b88952e Added EmailService 2014-10-18 18:48:16 +02:00
Marcin Kurczewski
7be8061aa8 Fixed serializing classes in Dispatcher 2014-10-18 18:48:16 +02:00
Marcin Kurczewski
db949dd361 Added proof of concept for authorization system 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
ff310f56c5 Changed config.ini hierarchy 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
f3096ffc5d Changed object initialization
DI FTW
2014-10-18 18:48:15 +02:00
Marcin Kurczewski
78f57e5fc4 Config can now parse .ini files 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
10e6c9f11f Fixed routing to class methods 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
e81391a29a Added ability for routes to return output 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
011d803bd0 Added Config; concealed MongoDB dependency 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
1e3e3f94d8 Added router 2014-10-18 18:48:15 +02:00
Marcin Kurczewski
b7de8ae0bf Added proof of concept for Dao system
Fixup first commit
2014-10-18 18:48:15 +02:00