summaryrefslogtreecommitdiff
path: root/app/models
AgeCommit message (Collapse)Author
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.
2014-12-23bugfix: ensure both user and identity documents are destroyed if there is a ↵elijah
problem creating the account.
2014-12-15bugfix: allow deletion of user's identities via api when user is deleted. ↵elijah
closes #6550
2014-07-17some cleanup of the messages api and cuke featureAzul
2014-07-12fix tests and simplify time calculationsAzul
2014-07-12Identity view cert_fingerprints_by_expiryAzul
Also move complex identity views into js designs. Includes test. Here's how you would query it from outside rails: ``` $ curl 'localhost:5984/identities/_design/Identity/_view/cert_fingerprints_by_expiry?startkey="2014-07-05"' {"total_rows":4,"offset":1,"rows":[ {"id":"6c9091d4f13eaeaa6062c9d0528fd34d","key":"2014-07-05","value":"fingerprint"}, {"id":"6f3aa93828b4f6978d551f2623b9d103","key":"2014-07-05","value":"fingerprint"}, {"id":"b6cafacfa65042679691cd5065fb19e3","key":"2014-07-07","value":"fp"} ]} ``` Note that the expiry will be used as the key. So you should use the current data (or yesterday) as the startkey to get all fingerprints that have not expired yet. The fingerprint itself is in the value. No need to include docs.
2014-07-12store expiry with cert fingerprintsAzul
We used to store the creation date but this way it's easier to query for non expired certs
2014-07-09Merge pull request #173 from azul/feature/unblock-handlesazul
Allow admins to unblock handles
2014-07-09list identities based on search onlyAzul
2014-07-08create client certificates with generous not_before (fixes #5884)elijah
2014-07-05Enable unblocking handles in identities tabAzul
There's an identities tab now for admins that will allow unblocking blocked handles. It should be easy to expand for aliases and forwards and other types of actions such as editing.
2014-06-23Account.create - do a User.new instead of User.create, so that we can report ↵elijah
the errors on the object if not saved.
2014-06-17if identity fails to be created, destroy the user. also, pass through ↵elijah
identity errors to user and add identity class hook.
2014-05-29clearify identity validationsAzul
Identity.new.valid? should not crash. So validate presence where needed and skip the other validations if the value is absent.
2014-05-29ensure User#reload returns selfAzul
2014-05-29hand on errors from Email to Identity to UserAzul
errors.each iterates through all errors for all attrbibutes nicely.
2014-05-29catch corner cases of account creationAzul
Users now always check if their identity is valid. We need to make sure this works if the user is a new record and once it has been persisted. While the user is a new record the identity will have no user_id. Old identities that are left to block the login of a user who canceled their account also have a blank user_id. They still should render the new identity invalid so the user can't be saved with a login that has been reserved. Once the user has been persisted we set the user_id on the identity and save it too when creating an Account. This allows us to create a plain user and save it and it will still have an in memory identity only. But the default is to create the user by means of creating an account so an identity will be created as well.
2014-05-28allow changing the user_id on an identityAzul
we set it to nil when we disable it