Bob Mottram
11c57e7aee
Remove Google References
...
This removes most references to Google, with some
remaining since they may point to things which are still
relevant. References to Google Code, Google Buzz and
Google Maps have been removed
2016-03-20 13:06:58 +00:00
Mikael Nordfeldth
723b49a22a
throw exception instead of clientError
2016-03-09 14:17:55 +01:00
Mikael Nordfeldth
265fa12917
Relatively experimental change to store thumbnails in 'file/thumb/' (by default)
2016-03-07 22:33:34 +01:00
Mikael Nordfeldth
6ec72b2978
Move mail_confirm_address out of mail.php
2016-03-06 17:27:40 +01:00
Mikael Nordfeldth
bf34f730dd
Use $this->scoped in AvatarsettingsAction
2016-03-05 01:03:48 +01:00
Mikael Nordfeldth
175b7e8541
Refactor some ConfirmaddressAction stuff
2016-03-02 15:31:48 +01:00
Mikael Nordfeldth
63c087a255
Consistent behaviour for ScopingNoticeStream $scoped
...
We don't guess the current profile anymore if the value of the profile === -1
Also sets $this->scoped for all ScopingNoticeStream inheritors, which just
like in an Action can be null if we're not scoped in any way (logged in).
2016-03-01 14:51:47 +01:00
Mikael Nordfeldth
da34491c59
Woops, undefined $type there.
2016-02-28 20:50:45 +01:00
mmn
d1b294e1ac
Merge branch 'delete_group_logo' into 'nightly'
...
Now we can delete a group logo.
I added a function of deleting a group logo.
I'm not sure we should delete group's avatar through Avatar::deleteFromProfile like on line 426:
```php
Avatar::deleteFromProfile($this->group->getProfile());
```
See merge request !84
2016-02-28 18:45:31 +00:00
Mikael Nordfeldth
2696e13b19
Refactoring ApiStatusesDestroyAction
2016-02-28 19:35:03 +01:00
Mikael Nordfeldth
446c930823
Change to more recent code style in ApiStatusesDestroyAction
2016-02-28 19:23:13 +01:00
hannes
6a0007c410
moderators can delete others' notices using the api
2016-02-27 01:03:24 +00:00
Mikael Nordfeldth
1d0a448e07
Publish rel="me" in Link HTTP headers
2016-02-24 16:43:09 +01:00
Mikael Nordfeldth
afbdcf8938
Don't publish mbox_sha1sum in FOAF by default.
...
We say the email is private data, so reasonably we shouldn't reveal it
indirectly through a hash sum: http://xmlns.com/foaf/spec/#term_mbox_sha1sum
2016-02-19 00:10:05 +01:00
Mikael Nordfeldth
73dbc5ca1b
Use ToSelector choice again.
2016-02-17 23:44:15 +01:00
Mikael Nordfeldth
d9b649642d
Show notice feed URLs (and author)
2016-02-17 23:32:56 +01:00
Mikael Nordfeldth
5fbb01130a
By default, disallow users to set private_stream
2016-02-17 22:58:31 +01:00
Mikael Nordfeldth
47dc15c9f6
Describe that we don't allow empty fullnames.
2016-02-17 22:48:32 +01:00
Mikael Nordfeldth
d6bf90cfb7
If profile fullname is 0 chars use nickname
2016-02-17 22:43:45 +01:00
Mikael Nordfeldth
c7c34ec05a
Only administrators can delete other privileged users.
2016-02-12 15:00:18 +01:00
Mikael Nordfeldth
e5ad98e601
Silence action can only be used on non-priviliged users
2016-02-12 14:22:25 +01:00
Mikael Nordfeldth
ec257d940a
Either use or don't use HTTPS
...
The risk of injection attacks using HTTP is too great to allow a
site that allows both HTTP and HTTPS...
2016-02-10 00:57:39 +01:00
Mikael Nordfeldth
7c90d7022b
Require the license with HTML5
2016-02-08 17:56:35 +01:00
Mikael Nordfeldth
cd71188d3a
SimpleCaptcha plugin to stop basic bots
2016-02-08 17:47:09 +01:00
Mikael Nordfeldth
a30d34be7f
Returnto the previous page when deleting a notice.
2016-02-08 15:30:28 +01:00
Mikael Nordfeldth
25c15119bc
Backupaccount is always readonly
2016-02-03 01:15:35 +01:00
Mikael Nordfeldth
19b743a9f5
Set time limit to increase time backupaccount can take
...
Wills till run out of memory probably, we should fix that.
2016-02-03 01:04:14 +01:00
Mikael Nordfeldth
a6898b033d
Fullname and location are now text, not varchar, and can be >191|255
2016-01-28 19:12:30 +01:00
Mikael Nordfeldth
7e6783bb8f
Replace htmLawed with HTMLPurifier
2016-01-28 19:01:13 +01:00
Mikael Nordfeldth
d73c264e25
Haha, forgot that the $content content must also be there!
2016-01-27 23:04:19 +01:00
Mikael Nordfeldth
a47563cf3d
Don't add space if there's no string in new notice content
2016-01-27 22:41:53 +01:00
Mikael Nordfeldth
03d2b680f8
Allow empty new-notice content via web if there's an upload
2016-01-27 22:39:43 +01:00
Akio Nishimura
d13454fb84
Now we can delete a group logo.
2016-01-21 08:10:35 +09:00
Mikael Nordfeldth
a1530b0e68
Removing superflous debug stuff
2016-01-14 22:12:36 +01:00
Mikael Nordfeldth
8df38df5cb
Get uploaded media_ids via File::getByID()
...
Filters out failed ones...
2016-01-14 22:05:03 +01:00
Mikael Nordfeldth
e5019c3858
Accept media_ids parameter from Twitter API v1.1 clients
...
They upload the media first and then provide media IDs in a comma
separated parameter (but we just split it to all whole integers).
2016-01-14 20:24:01 +01:00
Mikael Nordfeldth
b570f0d3cb
Media files are accepted and uploaded via Twitter API now
2016-01-14 19:15:02 +01:00
Mikael Nordfeldth
0caf0612d0
Make Twitter Media upload API v1.1 reach us
...
Now we just have to accept the 'media' or 'media_data' (base64 encoded)
POST arguments instead of $_FILES uploads.
2016-01-14 18:29:21 +01:00
Mikael Nordfeldth
1e5770bbcf
$this->notice is never unset after prepare
2016-01-13 21:34:15 +01:00
Mikael Nordfeldth
adba38ce20
Deleted_notice is pluginified, don't call directly from core
2016-01-13 21:29:23 +01:00
mmn
e4a1dff98d
Merge branch 'apiaccountregister_event_branch' into 'nightly'
...
APIStartRegistrationTry event
See merge request !77
2016-01-11 21:08:09 +00:00
hannes
543a7e421e
APIStartRegistrationTry event
2016-01-11 20:04:31 +00:00
Mikael Nordfeldth
33194b3cff
Attention goes to the parent notice author too
2016-01-08 02:58:31 +01:00
Mikael Nordfeldth
c48871cf1b
Notice from web now saves context->attention too! ;)
2016-01-07 23:24:15 +01:00
Mikael Nordfeldth
1f02dc639e
shortenLinks _after_ media upload to be consistent with api
2016-01-07 18:14:45 +01:00
Mikael Nordfeldth
6505504411
shortenLinks with a capital L
2016-01-07 18:12:29 +01:00
Mikael Nordfeldth
6924bb1d29
Gah and a 302 in the non-exception-handling redirect too
2016-01-06 20:09:59 +01:00
Mikael Nordfeldth
a9b5519293
Attachment thumbnail redirect is a 302 redirect
...
It SHOULD be cached but it might no longer be valid if we empty cache or something.
2016-01-06 20:07:40 +01:00
Mikael Nordfeldth
4d179c6b0c
Our URLs are permanent redirects, mind you!
2016-01-06 20:06:14 +01:00
Mikael Nordfeldth
b596391fcd
Avoid having to check for notices without rendered copies in upgrade.php
...
Always call the Notice->getRendered() function to get a rendered copy.
We could perhaps put some sanitation there too in the future
2016-01-06 15:32:27 +01:00
Mikael Nordfeldth
0fd2ad649e
Conversation IDs (again) no longer based on Notice ID
2016-01-06 13:58:46 +01:00
Mikael Nordfeldth
4b22b0c42a
More listitems and lists into separate files + stronger typing
2016-01-06 01:36:46 +01:00
Mikael Nordfeldth
6d9f390ba8
Separating classes into files and stronger typing
2016-01-06 01:30:12 +01:00
Mikael Nordfeldth
792b62874e
Require Profile for Profile->getLists
2016-01-06 00:18:10 +01:00
Mikael Nordfeldth
3d66d960a1
Require Profile for Profile->getOtherTags
2016-01-06 00:07:15 +01:00
Mikael Nordfeldth
8ad6b8809a
Don't abort on too long notices in Notice::saveActivity
2016-01-05 17:31:09 +01:00
Mikael Nordfeldth
c19964094b
Pending subscription requests now work as they should
...
A slight layout issue with the buttons still persists
2016-01-03 20:27:53 +01:00
Mikael Nordfeldth
0dfafe2567
NewnoticeAction now uses Notice::saveActivity(...)
2016-01-01 20:18:54 +01:00
Mikael Nordfeldth
54325e266f
upgrade script makes sure all notices have rendered copies
2016-01-01 18:30:38 +01:00
Mikael Nordfeldth
b0bf620c61
RecoverpasswordAction uses User->setPassword()
2015-12-30 17:53:43 +01:00
Mikael Nordfeldth
29847f172f
setPassword now runs validate too
2015-12-30 17:51:57 +01:00
Chimo
c95f74018d
Add AtomPub, Twitter-compat. API documentation to doc-src/
2015-11-24 13:00:32 -05:00
mmn
3255e2e1b8
Merge branch 'page_title_showstream' into 'nightly'
...
Show page title in user's profile page
Enable page title on user's profile page to make it consistent with all other pages and better orient users.
![Screenshot_-_250715_-_14_50_00](https://git.gnu.io/aroque/gnu-social/uploads/06e92b233e88fdb66047fbc0571f9831/Screenshot_-_250715_-_14_50_00.png )
See merge request !22
2015-10-10 20:36:59 +00:00
mmn
89d3d9b2ce
Merge branch 'usergroups_page' into 'nightly'
...
Improve display of user's groups page.
* Show page notice as for subscriptions
* Show instructions when user has no groups
* Add explanation of remote groups and link to skilledtest wiki
Here is how it looks when a logged in user is not following groups yet
![login_nogroups](https://git.gnu.io/aroque/gnu-social/uploads/34b1bdcdb9e7277ec3deff4594061c59/login_nogroups.png )
After following a group, you still see the instruction notice. This way you have links to searching groups and creating a new one.
![login_groups](https://git.gnu.io/aroque/gnu-social/uploads/cb50689bcdfca7adc5cdcbe620487aa4/login_groups.png )
Finally when logged out:
![nologin_groups](https://git.gnu.io/aroque/gnu-social/uploads/40d81ab909321f8729c2696dd3938d46/nologin_groups.png )
The current version on nightly has basically no text at all.
See merge request !25
2015-10-10 20:35:36 +00:00
Mikael Nordfeldth
a793d211d2
Match parent class definition of clientError
2015-10-10 20:51:53 +02:00
Mikael Nordfeldth
b4c51b2d39
Use an atom:link to ApiMediaUpload response instead of mediahref
...
'cause why not?
2015-10-10 20:41:14 +02:00
Mikael Nordfeldth
9728270acd
Add mediahref in our incredibly arbitrary response
2015-10-10 17:15:29 +02:00
Mikael Nordfeldth
5d91c9a820
Don't send multiple error responses in ApiMediaUpload :)
2015-10-10 17:12:44 +02:00
Mikael Nordfeldth
dd149a76f3
AtomPub should work now, at least for post/note
2015-10-09 16:19:26 +02:00
Mikael Nordfeldth
216a04df86
Switching variable access in ApiTimelineUser to GNUsocial improvements
2015-10-09 11:23:20 +02:00
Mikael Nordfeldth
dac617d95a
I think all the notice deletion calls are event-compatible now
...
This means we can handle DeleteNoticeAsProfile in plugins, such as
the ActivityModeration plugin.
2015-10-03 12:26:09 +02:00
Mikael Nordfeldth
ad3b62cf2f
ShowprofiletagAction now extends ShowstreamAction
2015-09-27 23:46:30 +02:00
Mikael Nordfeldth
0e24709989
Profile/Peopletag file splitting for autoload
2015-09-27 22:51:50 +02:00
Mikael Nordfeldth
0bd0c65b87
Bring back title to DocAction
2015-09-15 14:26:33 +02:00
Mikael Nordfeldth
b209dcf8a7
DocAction now extends ManagedAction
2015-09-15 12:07:35 +02:00
Mikael Nordfeldth
e06553b15b
Suggested edits by hannes2peer
2015-09-03 18:04:13 +02:00
aroquen
a04b1cda45
Drop dead variable
2015-07-26 11:10:57 +02:00
aroquen
b0abce9bc8
Page notice message as instructions class
2015-07-26 11:10:30 +02:00
aroquen
c6f58d432c
Improve display of user's groups page.
...
* Show page notice as for subscriptions
* Show instructions when user has no groups
* Add explanation of remote groups and link to skilledtest wiki
2015-07-25 21:38:38 +02:00
aroquen
ad49158fb5
Show page title in user's profile page
2015-07-25 14:45:45 +02:00
Mikael Nordfeldth
266b032b17
UsergroupbyidAction now extends ManagedAction
2015-07-21 02:32:17 +02:00
Mikael Nordfeldth
992fe6896f
Urlsettings now adapted to FormAction
2015-07-17 15:16:45 +02:00
Mikael Nordfeldth
2dd979d3f8
SMS Settings now better adapted to FormAction
2015-07-17 14:29:07 +02:00
Mikael Nordfeldth
9f82da07f1
ProfilesettingsAction and related stuff modernised
2015-07-17 12:20:11 +02:00
Mikael Nordfeldth
53e820b466
Maximum character limit with utf8mb4 is 191 in varchar
2015-07-17 11:22:25 +02:00
Mikael Nordfeldth
cfaaf3c13c
PasswordsettingsAction aligned with FormAction
...
Also made some changes in the password "munging" function call
common_munge_password to accept a profile instead of user ID (which
was only there because stoneage StatusNet used the ID to generate a
not-very-random salt, but nowadays we primarily use AuthCrypt plugin).
2015-07-17 01:47:43 +02:00
Mikael Nordfeldth
47ef917f62
oldschool settings adapted to FormAction
...
TODO: Rename this "Layout", "Display" or something, since it might
actually be interesting to have non-threaded views for some users.
2015-07-17 01:18:28 +02:00
Mikael Nordfeldth
a6e299a2fc
OAuth stuff adapted for FormAction
...
TODO: Break OAuth out into a plugin.
2015-07-17 01:07:19 +02:00
Mikael Nordfeldth
f1d9d8a6ed
ImSettings adapted to FormAction inheritance
...
TODO: Get separate Form classes and move User_im_prefs to Profile_prefs
2015-07-16 21:18:50 +02:00
Mikael Nordfeldth
647171e089
EmailSettingsAction adapted to FormAction
...
TODO: EmailSettingsForm as a separate class would be good!
2015-07-16 21:17:22 +02:00
Mikael Nordfeldth
fd2efbc6f8
AvatarSettings more aligned to FormAction
...
TODO: Make classes called AvatarCropForm and AvatarUploadForm
2015-07-16 19:21:12 +02:00
Mikael Nordfeldth
673bef2fda
OAuth widgets separated into their own files
2015-07-16 18:52:43 +02:00
Mikael Nordfeldth
01a4ab30dc
Removing MicroID as well as simplifying profileaction
...
sorry, forgot to commit in between
2015-07-14 16:52:20 +02:00
Mikael Nordfeldth
e868ac41cd
userrss action didn't call parent preparation method
2015-07-11 19:48:18 +02:00
Mikael Nordfeldth
ac98600640
More RESTish URL (/notice/:notice/delete) for notice delete
...
Also returns to 'top' now after notice deletion.
2015-07-11 11:26:48 +02:00
Mikael Nordfeldth
7d524307d2
DeletenoticeForm is its own class now
2015-07-11 11:26:44 +02:00
Mikael Nordfeldth
2a1be57470
Merge branch 'nightly' into deletenotice_form_fix
2015-07-11 10:49:41 +02:00
Mikael Nordfeldth
ad453785f0
FoafAction now a ManagedAction
2015-07-10 23:10:24 +02:00
Mikael Nordfeldth
3900a739b9
Forgotten migrations of ->profile and ->user to ->getTarget()
...
GalleryAction extends ProfileAction which no longer uses ->profile and ->user
2015-07-10 23:05:02 +02:00
Mikael Nordfeldth
6c4985476e
Merge branch 'nightly' into deletenotice_form_fix
2015-07-10 13:54:06 +02:00
Mikael Nordfeldth
50c297bcbe
ShowstreamAction fixes so it's not as horrible
2015-07-10 12:34:06 +02:00
Mikael Nordfeldth
e567406c9f
RedirecturlAction now extends ManagedAction
2015-07-10 12:08:33 +02:00
Mikael Nordfeldth
76432b958b
delete notice form fix
2015-07-10 00:52:22 +02:00
Mikael Nordfeldth
e46b2803a7
Introducing TargetedRss10Action for simplifying RSS 1.0
2015-07-10 00:28:36 +02:00
Mikael Nordfeldth
06f60b57c1
StartpageAction essentially duplicated TopAction
2015-07-09 23:01:50 +02:00
Mikael Nordfeldth
d63bca9d3c
Rss10Action now in an autodetected file.
2015-07-09 14:22:22 +02:00
Mikael Nordfeldth
43cec8eaac
API actions are not ManagedAction yet
2015-07-09 13:46:03 +02:00
Mikael Nordfeldth
6919dda958
RobotstxtAction migrated to ManagedAction
2015-07-07 19:45:01 +02:00
Mikael Nordfeldth
acdcb2ad8d
prepare and handle function to match parents
2015-07-07 19:34:42 +02:00
Mikael Nordfeldth
3b6a424c9f
Mismatching function declarations.
2015-07-04 19:51:36 +02:00
Mikael Nordfeldth
9054bb69e9
I had some inheritance the wrong way around.
2015-07-04 19:48:35 +02:00
Mikael Nordfeldth
d5a24da167
only variables can be sent by reference (strict standards)
2015-06-25 20:13:27 +02:00
Mikael Nordfeldth
fde3b99e8e
Less redundant code, please
2015-06-21 01:37:29 +02:00
chimo
39462c3a2e
Documentation about plugins
...
* Content in plugins/doc/Plugin_development.md from:
https://web.archive.org/web/20140821102047/http://status.net/wiki/HOWTO_Make_a_Plugin
* Point link on Plugins Admin Panel page to plugins/README.md
2015-06-14 11:59:46 -04:00
Mikael Nordfeldth
4fc62a8bf5
Another function not matching parent declaration
2015-06-07 09:26:12 +02:00
Mikael Nordfeldth
d76d37340a
Function declarations not matching their parents
2015-06-06 22:14:56 +02:00
mmn
a39f51c044
Merge branch 'tagprofile-ajax-fix' into 'nightly'
...
Only serve tagprofile HTML if we aren't POSTing via ajax
This fixes an issue where POSTing the selftag form in the
profile_block sidebar via AJAX would generate an XML response
containing both the content from doPost() and showPage(),
resulting in invalid XML.
These changes make it so that if we're POSTing via AJAX,
we serve content from doPost(), otherwise we serve showPage()
but never both.
See merge request !8
2015-06-06 10:26:43 +00:00
Chimo
47c83f4c49
Only serve tagprofile HTML if we aren't POSTing via ajax
...
This fixes an issue where POSTing the selftag form in the
profile_block sidebar via AJAX would generate an XML response
containing both the content from doPost() and showPage(),
resulting in invalid XML.
These changes make it so that if we're POSTing via AJAX,
we serve content from doPost(), otherwise we serve showPage()
but never both.
2015-06-06 00:22:14 -04:00
Mikael Nordfeldth
c26e08d6a6
some more extensions of ShowstreamAction broke in last commit
2015-06-05 21:49:34 +02:00
Mikael Nordfeldth
8ad81a6aa3
Allow showing profiles with UserbyidAction (/user/:id)
2015-06-05 21:24:41 +02:00
Mikael Nordfeldth
a4739b0107
Move some last OpenID stuff into the OpenID plugin (XRDS)
2015-06-04 01:08:03 +02:00
Mikael Nordfeldth
bdd15cfe63
don't double the output for some PublicAction->extraHead
2015-06-04 00:56:46 +02:00
Mikael Nordfeldth
551c69ed56
Extend Networkpublic and Public actions from SitestreamAction
2015-06-04 00:51:07 +02:00
Mikael Nordfeldth
2cebbead75
Accidentally presented Atom feed as ActivityStreams JSON
2015-06-02 12:58:30 +02:00
Mikael Nordfeldth
82f9b6908c
Fake recovery by email address, to hide registrants on the site
2015-05-30 23:29:58 +02:00
Mikael Nordfeldth
731d283159
Password recovery logic cleaned up
2015-05-30 23:18:17 +02:00
Mikael Nordfeldth
2b58d6b774
Merge branch 'quitagram' into nightly
...
Fixes that make quitagram work better amongst other things.
2015-04-22 22:17:50 +02:00
Mikael Nordfeldth
51ecd6be15
Fix some ProfileAction stuff, add function profileActionPreparation
...
Split up files with multiple classes to multiple files for autoload, sorry
for baking this into this commit.
2015-04-22 21:22:38 +02:00
Mikael Nordfeldth
f6432fdf48
File_thumbnail->getUrl now gives Attachment_thumbnail action URL
...
That in turn redirects to the statically stored file.
2015-04-03 21:21:39 +02:00
Mikael Nordfeldth
642f7f850d
repeat actions to Share plugin
2015-03-12 21:46:10 +01:00
Mikael Nordfeldth
1adf5f2863
Merge branch 'nightly' into repeat_as_shareplugin
2015-03-12 20:54:06 +01:00
Mikael Nordfeldth
3ee673ac91
ImageFile->resize now totally replaced with resizeTo
2015-03-12 20:47:07 +01:00
Mikael Nordfeldth
dcfcceb6f2
Share plugin now handles showing form in NoticeOptionItems
2015-03-12 16:33:34 +01:00
Mikael Nordfeldth
c85e78ac3c
Remove unnecessary require lines and definitions
...
ProfileNoticeList and ProfileNoticeListItem are in their own files now too
2015-03-12 15:53:59 +01:00
Mikael Nordfeldth
2a32af084f
ImageFile $id argument is only for File objects
...
Remember to eliminate the Avatar/group logo call to ImageFile->resize!
2015-03-11 00:20:48 +01:00
Mikael Nordfeldth
0a2c51510c
FormAction wants getInstructions to be protected
...
only showInstructions is public
2015-03-10 21:46:33 +01:00
Mikael Nordfeldth
7aa1e02d06
Don't use a placeholder value on the nickname field
...
(because the placeholder would be 'Nickname', and it might confuse
someone who thinks they can use capital letters...)
2015-03-08 23:29:38 +01:00
Mikael Nordfeldth
1ea876296d
A bunch of FormAction and ManagedAction synchronization
2015-03-08 20:41:42 +01:00
Mikael Nordfeldth
55894f02c7
TagProfileAction and OStatusPlugin now use less redundant code
2015-03-08 20:14:46 +01:00
Mikael Nordfeldth
32dacb9369
ROLLBACK queries in the proper order
2015-03-08 19:44:23 +01:00
Mikael Nordfeldth
d6423bbbc8
Sensitive-test _is_ done in index.php
2015-03-08 19:17:01 +01:00
Mikael Nordfeldth
1a1b992858
RepliesAction migrated to extend ManagedAction
2015-03-08 12:38:15 +01:00
Mikael Nordfeldth
196df7d8a4
Change the title of NewnoticeAction if replying
2015-03-07 20:34:46 +01:00
Mikael Nordfeldth
38f977d2f3
Make sure we save 0 as '0' because of DB_DataObject bug
2015-03-06 23:21:57 +01:00
Mikael Nordfeldth
62596d462b
Get the values from the correct object.
2015-03-06 00:47:18 +01:00
Mikael Nordfeldth
f35ea45e09
Values of 0 would not be updated because of DB_DataObject
...
Upstream bug causing (int)0 to be interpreted as a "null string":
https://pear.php.net/bugs/bug.php?id=20291
2015-03-06 00:44:00 +01:00
Mikael Nordfeldth
ec4e432d55
Subscription::ensureStart skips AlreadyFulfilledException
...
Sometimes we just want to accept the user's wrong, but when it comes
to remote APIs etc. we probably want to let the client know it has
done something already (in this case multiple identical subscription
requests - which might indicate to it that it should refresh the sub
lists or something).
2015-03-04 11:38:04 +01:00
Mikael Nordfeldth
19bf975e56
Aahhh, gotta run php -l before pushing stuff!!!
2015-03-01 12:47:48 +01:00
Mikael Nordfeldth
1227d2d710
Forgot to make syntax edits on last commit.
2015-03-01 12:45:58 +01:00
Mikael Nordfeldth
bece816ec7
User class throws exception on register failure
2015-03-01 12:36:19 +01:00