summaryrefslogtreecommitdiff
path: root/app/models
AgeCommit message (Collapse)Author
2016-11-17bugfix: only send login errors onceAzul
If a login was invalid as a username but also for the identity we used to have duplicate error messages. Let's avoid that. Also added a test to make sure invite_code errors are properly displayed no matter what other fields are set or missing. Pixelated will rely on this to test invite codes
2016-08-26[load] require login_format_validation in sessionAzul
We moved it into the lib folder so it's not in an autoload path anymore. So now it needs to be required before being used. This fixes a load order issue that would cause non-deterministic failures in CI
2016-08-12[db] def database on users instead of use_databaseAzul
use_database affects all uses of prepare_database - so also the one in tmp_database. In order to avoid that we do not use_database but just overwrite the database method itself.
2016-08-12move temporary_user into lib - fix load issueAzul
We already did the same for other concerns. The way we load models for couchrest migrations does not work well with concerns in the model directory as they will be loaded twice.
2016-07-14[feature] restrict is_admin in the user api, to only allow queryingNavaL
for him/herself So that it we do not expose the is_admin property to anyone else including other admins.
2016-07-14Merge branch 'develop' of https://github.com/leapcode/leap_web into ↵NavaL
feature/expose_admin_in_api
2016-07-12bugfix: require local email in user modelAzul
2016-07-05Fix db:migrate and similar tasksAzul
We saw errors from duplicate loading of LocalEmail and LoginFormatValidation. The latter resulted in a crash. In an attempt to ensure all subclasses of Couchrest::Model::Base are loaded Couchrest::Model::Utils::Migrate requires all files in app/models. We have an extension that does the same for the engines. During this process LoginFormatValidation and LocalEmail were autoloaded when 'identity' was required. Afterwards they were required again. It looks like rails' autoload mechanism does not play nicely with require. So to make sure they are not autoloaded first move the concerns and helper classes into the lib directory and require them explicitly.
2016-06-22[feature] expose is_admin in the user apiNavaL
So that whoever consumes the API can use this attribute to determine if admin functionalities should be made available to the current user.
2016-05-23rename destroy_identity to release_handlesAzul
This expresses the intent rather than the implementation. Also replace temp with query refactoring.
2016-05-03fix failing unit and functional testsAzul
2016-05-02upgrade: remove references to RestClientAzul
CouchRest > 1.2 does not use RestClient anymore. So we should not try to catch its errors.
2016-04-11allow monitor auth to create users even if invites are normally required.elijah
2016-03-28api: added get(:show) to identities and users, allow monitors to ↵elijah
create/delete test & tmp users.
2016-03-28api: added allow ability to limit what IPs can access api using a static ↵elijah
configured auth token.
2016-03-28api tokens - clarify terms: "monitors" are admins that authenticated via api ↵elijah
token, "tmp" users are users that exist only in tmp db, "test" users are either tmp users or users named "test_user_x"
2016-03-28api tokens: allow for special api tokens that work like session tokens but ↵elijah
are configured in the static config, to be used for infrastructure monitoring.
2016-03-19Handle conflict on token cleanup - fixes #7670Azul
the only race condition I can think of here is this... somebody tries to authenticate with a token that is almost expired. auth checks and notices it is not expired yet so starts to prolonge it. Before the polonged token is written to the db the cleanup script discovers that it has just expired. prolonged token is written to the db cleanup script fails to delete it from the db as it has been updated. So what we want in this case is to keep the token alive as it was renewed in the last minute.
2016-02-10allow user accounts to be re-enabled, and for associated identities to also ↵elijah
get re-enabled.
2016-01-31remove cert fingerprints for disabled users, so that they cannot send email ↵elijah
anymore. closes #7690
2016-01-14added UI for invite codeselijah
2016-01-10Merge branch 'remove_couponcode' of ↵elijah
https://github.com/Alster-Hamburgers/leap_web into remove_couponcode # Conflicts: # lib/tasks/invite_code.rake
2015-10-19Merge pull request #198 from claucece/developazul
Braintree_implementation
2015-10-13Remove Coupon Code gem and make invite code = idankonym
Id is set = invite code to make it easier to delete the invite codes that get created during the leap platform tests (because this avoids having to look up ttheir id each time).
2015-10-13Replace Coupon Code gem for invite code creationankonym
Replacing the Coupon Code gem with base64/securerandom as suggested by Elijah.
2015-10-13Remove Coupon Code gem and make invite code = idankonym
Id is set = invite code to make it easier to delete the invite codes that get created during the leap platform tests (because this avoids having to look up ttheir id each time).
2015-10-13Replace Coupon Code gem for invite code creationankonym
Replacing the Coupon Code gem with base64/securerandom as suggested by Elijah.
2015-10-13Fix the InviteCode initialize method so leap_web tests stay greenankonym
2015-10-13Adjust the rake task to make id = invite codeankonym
This will simplify invite code deletion after running tests.
2015-10-06Integrated feedback on multi-invite codesankonym
Removing some superfluous code, mostly, and structuring tests better.
2015-10-05add subscriptionsclaucece
2015-10-05added customers, recurring payment and payment_infoclaucece
2015-10-05correctly set up commentsclaucece
2015-10-05added payment_info, _customer_form, sucess instancesclaucece
2015-10-02Update rake task to allow generation of multi-use invitesankonym
The rake task now takes a second (optional) argument that sets the number of uses per invite code. If this is omitted, the default number of uses is 1. (This commit also contains some minor code cleanup that removes some stuff that I'd commented out but not removed.)
2015-10-02Allow multi-use invite codesankonym
Introduce a invite_max_uses property to invite codes to allow admins to set a maximum number of uses for invite codes.
2015-09-28Make invite code configurableankonym
Through the config param 'invite_required', providers can decide whether users need to provide an invite code upon signup. The default setting is false.
2015-09-28Cleaned up code in invite_code_validator.rbankonym
2015-09-28Fixed the signup bug that wrongly consumes the invite code.Aya Jaff
2015-09-28Fixes for the invite code validatorankonym
Validation should only happen for new records User invite code was nil for invalid invite codes Adding missing tests
2015-09-28Make sure codes can only be used once, fix validationsankonym
We introduced a count on invite codes to make sure that (at the moment) codes can only be used once. (The code will also allow multi-use codes in the future.) Also, some of our validations weren't validating against the correct data, which is now fixed.
2015-09-28assign random invite code when creating new invite codesankonym
2015-09-28Changed invite code query to look for invite_code string instead of idankonym
2015-09-28Add validation of invite code in user object based on codes in couch dbankonym
2015-09-28Add invite code modelankonym
2015-09-28Adding invite code field to signup with validation for hardcoded invite codeankonym
2015-08-07do not include random cruft in the common name of smtp client certificateselijah
2015-04-30added support for email notifications of ticket changeselijah
2015-03-17add support for rotating tokens and sessions databases, and for a special ↵elijah
tmp db for test users.
2015-01-28client certificates: allow for time units to be specified in ↵elijah
client_cert_lifespan config option.