Age | Commit message (Collapse) | Author |
|
https://github.com/azul/leap_web into develop
|
|
There are some places where we only want to require login unless you can use EIP anonymously. So far we had an anonymous_certs_allowed? method in all these controllers. Now it's replaced with ApiController#anonymous_access_allowed?. The naming better reflects that there might be other services that allow anonymous use at some point.
This also fixed a typo name -> @filename that broke the ConfigsController.
|
|
includes test
|
|
|
|
|
|
We're not testing the redirects anymore. But the error messages should be pretty clear already. We can start testing redirects again once we redirect to different places for different actions.
|
|
meant to move id -> @id, also turned identity in the test titles into
@identity.
|
|
we compare the cert that expires last to the one we just saved. So we need to make sure the one we saved is the one that expires last.
|
|
|
|
|
|
|
|
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.
|
|
- default is true
- See issue #5217
- See companion change in leap_platform.
|
|
|
|
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.
|
|
We're not supporting including leap_web as a gem right now.
|
|
Feature/i18n for ticket system
|
|
Identity.new.valid? should not crash. So validate presence where needed and
skip the other validations if the value is absent.
|
|
errors.each iterates through all errors for all attrbibutes nicely.
|
|
|
|
|
|
We create an identity alongside each user. Make sure the identity
is valid when creating the user. This also ensures that the login
picked is available because otherwise the identities address would
not be available anymore.
|
|
|
|
This will print missing translation keys at the end of the tests
|
|
hash token with sha512 against timing attacs #3398
|
|
|
|
|
|
We create them. let's reflect that in the verb.
|
|
Only storing the date as that should suffice for normal expiry and is less useful for identifying users by timestamps
|
|
|
|
|
|
|
|
Email.new(nil) now returns an invalid email rather than crashing.
|
|
|
|
Ticket.is_creator_vlidated? now actually fetches the user from the db and returns false if it does not exist.
|
|
use the former if you want a working email account or nil, the
latter if you want the email address associated with a given
user no matter if the user actually has an email account or not.
|
|
|
|
We should respect the users choice. We can still get their email from the user id if we really need to.
|
|
preparing for #5664 with some test improvements i ran into this issue
This commit includes a fix and the test improvements. In particular it
adds BrowserIntegrationTest#login - so there is no need to go through the signup procedure everytime you want a user to be logged in.
|
|
Hiding them using two mechanisms in case one fails:
.hidden class - bootstrap hides them then
style='display:none' - so they are hidden even if css load fails
|
|
|
|
The client_side_validations gem is not maintained anymore and the validations
were not working lately. So instead of trying to fix it I started working on
independent validations for the password as it can't be validated on the
server due to SRP.
So far these validations are very primitive. They require 8 characters length
and a matching confirmation.
|
|
input or button can be used
|
|
Feature/api quota support + current_user null pattern
|
|
cost -> rate
quota -> storage
|
|
The changes to the configuration required some non minor changes to the platform and also added some flexibility we don't require yet - and thus some new possibilities for errors.
So instead we still use the allow_..._certs and ..._cert_prefix options.
They basically provide the framework in which service levels can operate.
The service level configuration will not include the cert prefix anymore.
It only states if the service level is rate limited or not.
This avoids conflicts between the two configuration options.
I also removed the anonymous service level entirely.
It was also turning a boolean decision (do we provide anonymous eip or not) into something way more complex. Instead I added the AnonymousServiceLevel class to handle the corner cases for people who are not logged in.
Furthermore i renamed the UnauthenticatedUser to AnonymousUser so it matches the Anonymous Service Level nicely. It's also shorter and more intuitive.
|
|
|
|
Null Pattern for current_user - use it to get rid of some conditionals
|
|
:api/service will return a hash of the current users service level
This is failiing if the user is not logged in. Instead it should return the service description for an anonymous user.
|
|
they have response.json as a dict instead of response.json()
|