summaryrefslogtreecommitdiff
path: root/lib/leap_web
AgeCommit message (Collapse)Author
2017-04-03Version 0.9.0 - twitter, rails 4 and deprecations0.9.0Azul
This release features a great contribution from the Rails Girls Summer of Code: The landing page of the webapp can now include a twitter feed to display news from the provider. Other than that this is a maintainance and transition release. * Twitter feed on main page (thanks theaamanda and lilaluca). * upgrade to rails 4.2 * upgrade to bootstrap 3 Upgrading: * We now use rails 4's `secret_key_base`. Please make sure to supply it in config/config.yml for production environments. If you are using the leap platform that will already take care of it. Deprecations: * We have not seen any active use of the **billing** functionality. So we deprecate it and will probably drop it in one of the next releases. * We will replace the user facing **help desk** functionality with a single sign on mechanism to integrate with other help desk systems. We will maintain the endpoint to submit tickets and the ticket management in the admin interface. That way it should also be easy to create your own ticket submission form. * We deprecate the ability to **signup and login** directly through the webapp. We will remove it in the future for security reasons. Signup and Login should only happen through bitmask to prevent password phishing and js injections.
2016-08-16Version 0.8.1Azul
* upgrade to rails 3.2.22.4 * fix ticket url issue
2016-05-01Version 0.8.00.8.0Azul
This version ships with improvements implemented during rails girls summer of code 2015 (in no particular order): * Providers now can require invite codes * Admins can disable and enable users * Payments and subscriptions are possible Thanks heaps to @ankonym, Aya, @claucece and @EvyW. Also thanks a lot to rails girls summer of code and thoughtworks for the organization and coaching. We also include a bunch of smaller bugfixes. For details see the list below: Bugfixes to prepare for 0.8.0 release: * upgrade: couchrest_session_store to 0.3.1 * remove outdated couchrest hack * allow monitor auth to create users even if invites are normally required. * disable per-user message tests (since this feature currently disabled) * api: added super simple motd, closes #7866 Add api support for admin authentication tokens: * api: return proper 404 for GET /1/identities/:id.json * api: added json error pages, allow "." in the :id param of all api routes * api: added get(:show) to identities and users, allow monitors to create/delete test & tmp users. * api: added allow ability to limit what IPs can access api using a static configured auth token. * api tokens - clarify terms: "monitors" are admins that authenticated via api token, "tmp" users are users that exist only in tmp db, "test" users are either tmp users or users named "test_user_x" * api tokens: allow for special api tokens that work like session tokens but are configured in the static config, to be used for infrastructure monitoring. Upgrade to latest rails 3.2: * upgrade: downgrade rake to 10.x * upgrade: use latest rails 3.2 version Smaller fixes: * Handle conflict on token cleanup - fixes #7670 * updated changes file * added travis build status to readme * allow user accounts to be re-enabled, and for associated identities to also get re-enabled. * use RUBY_VERSION instead of :platform for Gemfile (since jessie has a really old bundler) * disable failing cucumber test (leap_web is doing the right thing, the test is just weird). * internet says that bundler on travis might be what is causing test fail, so force install the lastest one. * remove cert fingerprints for disabled users, so that they cannot send email anymore. closes #7690 * vendor certificate_authority, because travis does not like pulling it from github. * travis ci does not support :platform => :ruby_22, so remove for now. * enable byebug for tests * change the default of config.assets.debug for development env. * fix ticket display bug * retain locale in URL when logging in and signing up, and ajax actions in general. Admin UI overhaul: * added UI for invite codes * added caution tape img. * highlight admin areas with caution tape (wip) * fix user list Generate Invite Codes without code_coupon gem: * Cleaned up last traces of the Great Git Mess * Remove Coupon Code gem and make invite code = id * Replace Coupon Code gem for invite code creation * Remove Coupon Code gem and make invite code = id * Remove Coupon Code gem from Gemfile * Replace Coupon Code gem for invite code creation * Fix the InviteCode initialize method so leap_web tests stay green * Adjust the rake task to make id = invite code * set rbenv pin to 2.1.5 Pull request #204 from pixelated/fix_payment_check * [bug] Only show donation if payment present Payment and Subscriptions (Pull request #198 from claucece/develop): * Reverting submodule update * updated version of fakebraintree * changed capybara time * fixed gem file * add test to payments and subscriptions * deleted comment * questions added * readme * updated readme * add a comment regarding home * update to haml, created translations, deleted files * add subscriptions * add subs_index and start show * changed routes and links * subscriptions, translation * subscriptions, haml and translations * added customers, recurring payment and payment_info * just played a little * correctly set up comments * added payment_info, _customer_form, sucess instances * Donation button * add donate button, bitcoin, payment_method * implemented the form and the generate Enable/Disable users as admin (Pull request #196 from EvyW/develop): * identing 2 * Identing first line * with out identing * Translation changes * changes style sheets * index changes * commit user haml * Update leap.scss * test users_controller_test * fixing translations * spanish translations for user actions * adding ability to disable/enable users by admin Allow invites for multiple people: (Pull request #201 from Alster-Hamburgers/multi-invite) * Adjusted the rake task with comments by @azul * Small code cleanup in the rake task * Cleaned up invite code output for platform tests * Adjust rake task with renamed max_uses * Integrated feedback on multi-invite codes * Update rake task to allow generation of multi-use invites * Allow multi-use invite codes Pull request #200 from Alster-Hamburgers/localization * Add the localization keys for invite_code and password confirmation Require invite codes for signup based on config setting: (Pull request #194 from Alster-Hamburgers/feature/invite_code) * Add localization labels to signup form and user.en.yml * Make invite code configurable * Cleaned up code in invite_code_validator.rb * Removed the view_by__id from invite code test * Fixed the signup bug that wrongly consumes the invite code. * Fix cucumber tests by passing valid invite code * Fix the remaining failures/errors in our tests * Fix three unit tests by passing Factory Girl a valid invite code * Fix several test failures by stubbing invite code validation * Separate user and invite code validator tests * Fixes for the invite code validator * Make sure codes can only be used once, fix validations * Add rake task for invite code batch generation * assign random invite code when creating new invite codes * Remove change password browser test * Fix test based on actual invite code validation * Changed invite code query to look for invite_code string instead of id * Add validation of invite code in user object based on codes in couch db * Add invite code model * Added an 'invite code' to all the tests for the sign-up form so we have a valid user for the tests again * Update submodule srp to 9e1a41733 * Move account form info from srp_js into leap_web * Adding invite code field to signup with validation for hardcoded invite code * Disable CSRF token verification on ticket creation. Fix issues found during start of rails girls summer of code: * couchrest_model 2.0.1 fixes find_by_sth(nil) * Update README with docs from website & instructions on local DB * Bump therubyracer to 0.12.2 * improved README.md * do not include random cruft in the common name of smtp client certificates
2014-07-21Version 0.6.00.6.0Azul
We now allow admins to unblock handles of users who deleted their accounts. The admin interface also received some bugfixes. On the API side of things we support validation of SMTP certs and added an endpoint that requires authentication for retrieving the configuration files. Here's the list of changes: Pull request #181 from azul/feature/allow_anonymous_config_access * Allow fetching configs if anonymous EIP access is allowed Pull request #180 from azul/feature/messages-api * fix messages feature to match latest response format * add translation and fix tests * some cleanup of the messages api and cuke feature Pull request #176 from azul/feature/api-authenticated-configs * cuke: drop jsonpath, use simple keys instead * make sure i18n key can be found (cascade) * clean up error assertions in tests * fix controller refactor and features * move fetch_user into module so it can be mixed in * send config files from ConfigsController * ApiController with API style auth * clean up and simplify error responses and test code * move unauthenticated api endpoints into separate feature * send static list of configs for now * use cucumber; initial ConfigsController * render valid json error if provider file not found * SessionsController#unauthenticated for 401s * separate login_required from access denied response * rename warden extension to patch the original Pull request #179 from fbernitt/issue_5217_addendum * Moved check for allow_registration into filter. Pull request #175 from azul/feature/view-for-valid-certs * allow querying for the expiry of a particular fingerprint * fix tests and simplify time calculations * Identity view cert_fingerprints_by_expiry * store expiry with cert fingerprints Pull request #178 from fbernitt/issue_5217_allow_registration * Added allow_registration toggle. Pull request #174 from azul/bugfix/admin-navigates-all-tickets * adopt ticket list test to new behaviour * only use user ticket(s) path for real users * stay on all tickets view when sorting (#5879) Pull request #173 from azul/feature/unblock-handles * list identities based on search only * make link_to_navigation more generic and reuse it * Enable unblocking handles in identities tab * backport bootstraps 3.2s list-inline * move braintree initilializer into core * remove dummy app * create client certificates with generous not_before (fixes #5884)
2014-07-01Version 0.5.30.5.3Azul
This release enables using custom gems in the leap platform customization. It also fixes cornercases during the account creation and documents debugging in production. * android app now supports signup, so change text that said otherwise. * added debugging note to DEVELOP.md * Account.create - do a User.new instead of User.create, so that we can report the errors on the object if not saved. Pull request #172 from elijh/feature/customgem * Gemfile: fix problem when config is missing environments * support for optional gems in Gemfile (engines/ and * config/customization/gems/) Pull request #171 from elijh/feature/identityfail * if identity fails to be created, destroy the user. also, pass through identity errors to user and add identity class hook.
2014-06-09Version 0.5.20.5.2Azul
Hotfix since 0.5.2 release candiate: * tickets: fix bug that allow index of other users Pull request #167 from azul/feature/i18n-for-ticket-system: * fix flash for creating anonymous tickets * adopt tests to new translations * destroy_btn helper method * move users key into layouts scope so it does not conflict with users scope * add btn helper for link_to with .btn * remove icon_color variable - yagni * sorting translation keys some * navigation works with empty locale selected * tickets: structure i18n * flash_for with_errors option displays error messages * remove unused bold helper and instead sanitize flash * Controller#flash_for instead of FlashResponder * split up and refactor TicketController#update * separate tests for the ticket list from main controller test * splitting up long functional test case * move comment related tests out of TicketControllerTest * use i18n.missing_translations Pull request #168 from azul/bugfix/fix-login-validations: * clearify identity validations * ensure User#reload returns self * hand on errors from Email to Identity to User * catch corner cases of account creation * adopt tests to new error messages for identities * allow changing the user_id on an identity * ensure identity is cleared on user.reload - fixes test * use Identity for testing login availability Pull request #163 from azul/feature/3398-save-hashed-token * hash token with sha512 against timing attacs #3398 Pull request #165 from azul/feature/cert-fingerprints * change from GET to POST for certs * store fingerprints with timestamp * store cert fingerprint with main user identity * SmtpCertsController, routes and tests * fix Email so User.new.valid? does not crash * basic integration test for cert API * calculate cert fingerprints to store for leap_mx Pull request #166 from elijh/feature/footer * better detection if price link should be shown in the footer Pull request #162 from azul/feature/3295-custom-error-pages * little bit of documentation * i18n for error pages * custom error pages for 404 and 500 errors
2014-05-16Version 0.5.10.5.1Azul
Changes since 0.5.0 * Message API * Payment reminder messages * Messages to Warn after expiring trial period * cleanup and refactoring of messages code * require token authentication for API * rename security related functions to be clear * nagios test for webapp login * nagios test for soledad sync * prevent crash when destroying tokens (#5382) * redirect home when logged in visits /signup (#5446) * large refactoring of engine and directory layout * move users engine into main * move certs engine into main * update documentation for new engine layout * move remaining engines into engines directory * rename help engine to support * refactor nagios tests with support classes * nagios test for registering new users * enable nagios tests to work with older versions of requests lib * API endpoint for requesting the current service_level * null pattern refactoring for current_user as UnauthenticatedUser * rename UnauthenticatedUser to AnonymousUser * change service level configuration strategy * bringing back empty cert prefixes * adopt service_level config to platform settings * add signup and login info on the forms * cleanup homepage * unify wording for destroying accounts * recover from invalid tickets (#5552) * remove cert link in development * display notice that client signup is prefered (#5549) * capitalize Loading... indicator (#5542) * use simple_form for all forms * ensure buttons are properly loading and reset * open close toggle in ticket header * translate signup and login buttons * basic password validation (#5557) * reduce client_side_validations dependency (to be removed) * simplify download button * remove OS specific download buttons * adopt pricing view to current service_level format * upgrade debugger to work with latest ruby 1.9.3 patch release * hide srp forms when js is disabled (#5548) * allow for usernames with dots * fix ticket form submission and validation (#5657) * stop email autofil for ticket forms (#5664) * User#email returns email addresses only if service provided * move User Control Panel heading out of masthead (#5658) * open/close toggle and fields in different forms (#5659) * upgrade rails to 3.2.18 for security fixes
2014-02-08Version 0.5.00.5.0Azul
Changes since 0.5.0-rc: * locale prefix support * download client from user page * hotfix to make webapp work with rack again * ensure permissions are preserved when copying customization files. (#4623) * Return 'provider.json' via a controller, to better be able to control the response headers * document new way we deploy couch design docs * remove outdated views that cause errors * only emit pgp keys if they are actually set * ensure auto_update_design_docs is false * switch to using dl.bitmask.net * remove manual 'gem minitest' * default pricing, privacy policy and tos pages * default footer with links to privacy policy, tos, pricing, about us, contact * upgraded bootstrap to latest in 2.x series * move #masthead out of main templates * customizable 'bye' page for when a user leaves * fix js platform detection * applied mcnair's changes to privacy policy * untracked files in deploy are in gitignore - #4953 * gitkeep empty folders for config/provider and config/customizations * integration test with en-EN language * ensure record removal after tests * log failing integration tests with screenshot and serverlog * stop taking screenshots inside tests
2013-12-20Version 0.5.0.rc0.5.0.rcAzul
Release candidate for the first syncronised leap release 0.5.0. * do not allow to clear pgp key * simple format validation for pgp keys * respond to /keys/:login with text * service levels introduced to the configuration * more robust session store * render landing page and basic forms without connection to couch * configurable set of actions for users and admins * refactoring: remove overview controller - use Users#show instead * prevent /login from crashing when logged in already * remove actions from ui that currently break the client * format ticket comments properly * enable billing engine by default * consolidate APP_CONFIG[:billing] * fix a regression where overview link was not active anymore
2013-12-06Version 0.2.80.2.8Azul
* Return public key on /key/:login * rake tasks clean up expired tokens and sessions (#4568) * rake task to dump design docs to files * add dump_design_docs to CouchRest::Model::Utils:Migrate * rename ticket title to subject
2013-12-02Version 0.2.8 - release candidate0.2.8.rcAzul
* Return public key on /key/:login * rake tasks clean up expired tokens and sessions (#4568) * rake task to dump design docs to files * add dump_design_docs to CouchRest::Model::Utils:Migrate * rename ticket title to subject
2013-11-15Version 0.2.70.2.7Azul
* ensure that we only copy files for customization when restarting the app (#1300) not every time a rake task is run (especially since some rake tasks get run as root!) * improvements to the download button (proper localization, better image, better hooks for customization) * added support for easier customizations via "config/customization" directory (#1300) * log json request errors and their backtraces * show Ticket with the appropriate error messages. (*4453) * update readme to require ruby 1.9.3 instead of 1.8 * Token.destroy_all_expired to cleanup expired tokens (#4411) * use the account lifecycle from UsersController#destroy (#4216) * destroy all tickets created by a user when account is destroyed (#4216) * integration test for blocking handles after account destroyed (#4216) * disable identities to block handles after a user was deleted (#4216) * notify user their account was successfully deleted (#4216) * Fix button to enable account (#4246)
2013-11-04Version 0.2.60.2.6Azul
* reset button state from 'loading...' after failed login attempt (#4231) * use https sources in Gemfiles and documentation(#4109) * include Gemfile.lock to prevent unintended updates (#4174) * fixed download urls to get latest versions for mac, android and windows * test api login with umlauts in password
2013-10-18Version 0.2.50.2.5Azul
* detect os in browser and show proper download link (#4173) * billing: admin can see past due subscriptions * passwords with umlauts work when logging in after signing up with the * client (#4002) * blacklisting common system email addresses listed in RFC 2142 (#3602) * blacklisting all usernames on the server (#3602) * configurable blocking of logins in the configuration (#3602) * require aliases to be all lower-case * Only allow braintree one-off payments when unauthenticated, & call them 'donations'. (#3796)
2013-10-10Version 0.2.40.2.4Azul
2013-09-11Version 0.2.20.2.2Azul
2013-02-08bumped version to 0.1.20.1.2Azul
2012-12-07bumping version to 0.1.10.1.1Azul
This version has basic user and help tickets management
2012-10-11get rid of already defined VERSION warningsAzul
2012-10-08enabling rake gem in engines, using LeapWeb::Version all over the placeAzul
2012-09-11initial commit - loading dependenciesAzul