Commit graph

11 commits

Author SHA1 Message Date
umherirrender
a35cce4be0 Fixed spacing in api folder
Added spaces before if, foreach
Added some braces for one line statements

Change-Id: Id7779dca4d1185245cf5764102b8de8b232c34b6
2013-04-20 07:47:36 +00:00
jenkins-bot
b7ea8a0664 Merge "Set lang in api createaccount regardless of $wgLoginLanguageSelector" 2013-04-04 19:19:30 +00:00
Siebrand Mazeland
a72cc6afbc Remove unused local variables
Change-Id: I8eb774c2857dcc87404fd8a7e5fb66c5a4c9643e
2013-04-01 17:42:01 +00:00
Brian Wolff
6e8be422da Set lang in api createaccount regardless of $wgLoginLanguageSelector
$wgLoginLanguageSelector is related to how the interface of
special:userlogin works. It doesn't make sense to listen to it
in the api module

Also throw error if invalid lang code is specified (for sanity)

Change-Id: Ibf72fd5a318cadc450b3b579757ee8145864a27a
2013-03-27 08:41:20 -03:00
Brian Wolff
c1378f5645 Handle certain errors in action=createaccount api module
Certain errors (user blocked, user doesn't have permission)
were causing uncaught exceptions to be thrown in this api module.
Try to check for those cases first. Also added some errors
to the possible error list.

Change-Id: Id86984ade23a818317b942de3e9cf0ccdb43fba7
2013-03-12 18:24:00 -03:00
Brian Wolff
8e02f6abe9 createaccount api action didn't handle no token and no cookie
If you made a request to action=createaccount and this was
the first time (so no account creation token had yet been
generated for you) a "nocookiesfornew" error was returned.

This is incorrect, what is supposed to happen in that
case is the api returns what token to use. This is
how users are supposed to request tokens, so the
issue is very confusing.

No release notes since this module was introduced in
this version.

Also removed sessionfailure from possible errors,
as it isn't one (that status triggers the needtoken
result).

Change-Id: Ibfc3879fa89b1e11303aef65feb45a91afc215e6
2013-03-09 04:38:02 -04:00
Alex Monk
b672653acc Use 'email' instead of 'e-mail' in API texts.
Bug: 45633
Change-Id: Ieddc066be4051a20f0500b52e6b021e877d6c97d
2013-03-02 18:34:59 +00:00
Tyler Anthony Romeo
2cee7ebc04 (bug 44943) Cleanup of API:Account creation documentation.
Improved documentation for the parameters for action=createaccount
and fixed the help link so it is valid.

Change-Id: I8123aed59077d2cb7446df43fefbb6632dc608d7
2013-02-17 04:55:02 -05:00
Alexandre Emsenhuber
a9775ae572 (bug 44202) Account creation through API no longer leaks IP address of account creator
This happens when an anonymous user wants to create an account for himself through
the API. This is due to the fact that User::addNewUserLogEntry() was always using
$wgUser as performer, but the API does not replace $wgUser by the newly created user
object when the peformer is an anonymous user.

Changed User::addNewUserLogEntry() to directly take the log action as first parameter,
rather than a boolean value saying whether the password was sent by e-mail or not,
and force the performer to be the user itself in the log action is "create". This
avoids such problems in that case, no matter the value of $wgUser, and it makes this
parameter much more readable that the old one. Backward compatibility is maintained.

Creating an user and sending its password by e-mail will still log the performer's
IP address in the log if this is made by an anonymous user.

Finally the second parameter of the AddNewAccount is now correct when creating an
account from the API, it was always false previously.

Change-Id: I188ecf420b85e9d1dab6fb933ed50d5f58532109
2013-01-21 22:00:25 +01:00
Yuri Astrakhan
503cd2f4ae (bug 35885) remove api version string and parameter
API was using SVN's version keyword which GIT does not support.
All related methods were either removed, or for those that
could have been used from extensions, emptied out.
api.php?version now shows unrecognized param warning.

Change-Id: I910ca1448ed2ed697ac19b17c486d130aa1d7e03
2013-01-18 12:41:18 -05:00
Tyler Romeo
88d87b00cd Added account creation API.
Created new API action "createaccount" that
allows access to account creation. Takes
username, password, email, realname, token,
and optionally mailpassword and reason.

Errors are given in an errors array. Note
there is no way to natively handle CAPTCHAs
as there is no uniform implementation of
presenting CAPTCHA links to user. Right now
the best an extension can do is return an
error in AbortNewAccount, which will then
be displayed as an error in the Api result.

Change-Id: Ibdb1e50d434fb857683e1e4ff5a4a5a91c6b7c3a
2013-01-11 01:00:49 +01:00