Commit Graph

54 Commits

Author SHA1 Message Date
Ahmad Farhat 620416f18a
Fixed issue causing account verify to throw 404 (#1987) 2020-08-04 14:04:47 -04:00
Ahmad Farhat cf794db595
Added ability to map attributes for LDAP (#1779) 2020-06-11 11:28:55 -04:00
Ahmad Farhat 13fb9faa4c
Fixed issue with LDAP role not being respected (#1728) 2020-06-02 16:50:52 -04:00
Ahmad Farhat 51824ad84b
Merge v2.6-alpha (#1672)
* GRN2-xx: Switch the relation between users and roles to make queries cleaner and faster (#1299)

* First steps

* Fixes in account creation flow

* Fixed most testcases

* more test fixes

* Fixed more test cases

* Passing tests and rubocop

* Added rake task to remove rooms

* Adding translation (#1510)

* Update _account.html.erb

* Update en.yml

* Fix "for" attribute for label elements (#1488)

Co-authored-by: Ahmad Farhat <ahmad.af.farhat@gmail.com>

* Fix some issues reported by LGTM (#1478)

* Declare local JavaScript variables (reported by LGTM)

Signed-off-by: Stefan Weil <sw@weilnetz.de>

* Remove unused local JavaScript variable (reported by LGTM)

Signed-off-by: Stefan Weil <sw@weilnetz.de>

* Puma Worker Configuration (#1332)

We noticed that the current default settings perform very poorly under
load. We managed to literally take down Greenlight during a larger event
when people where accessing the landing page for rooms and when doing
some tests, I was more or less able to DoS Greenlight on my own.

This patch adds a default worker configuration which significantly
improves the situation. The small, 4 core machine I was testing on could
handle about thrice the amount of requests.

While the new default configuration should be reasonably well suited for
most deployments, this patch further allows users to easily configure
the worker pool on their own in the environment file.

* Made name and email readonly for no greenlight accounts (#1534)

* Fixed hardcoded string (#1532)

* fixed spelling error that was bugging me :) - sep a rat e (#1535)

Co-authored-by: Dave Lane <dave@oerfoundation.org>

* Improve Server Rooms View (#1524)

* Order rooms by status

* Cleaned up order function

* Now displays Started/Created/Ended

* Added participant count to rooms list

* Fix rake task user:create so that users can be created when terms are present (#1565)

* Changed user create task to always accept terms

* clean up

* More secure room ID (#1451)

* Legal and privpolicy link (#1421)

* add customizable Links to Imprint and Privacy Policy

* fix copy&paste error in spec

* replace "imprint" with "legal" since that is the correct term

* remove german translation of new strings, transifex will take care of them later

* GRN2-295:Refactored update profile and update password (#1591)

* Refactored update profile and update password

* Relowered rubocop settings

* Fixed email sending when not supposed to (#1592)

* Design changes for small screens  (#1580)

* now rap for pagination

* Update _subtitle.html.erb

* Update _rooms.html.erb

* Update _recordings.html.erb

* Update _rooms.html.erb

* Update _users.html.erb

* Update cant_create_rooms.html.erb

* Update room.js

* Update edit.html.erb

* Update new.html.erb

* Update cant_create_rooms.html.erb

* Update _sessions.html.erb

* Update _account.html.erb

* Make Greenlight work with Ruby 2.7 (#1560)

Greenlight's failure to start up with Ruby 2.7 seems to be caused by [an
issue in bootsnap](https://github.com/Shopify/bootsnap/issues/258).
Updating that library makes Greenlight work again.

However, there are still a lot of deprecation warnings. But that's
something to deal with separately.

This fixes #1558

* use email input for sign in (#1199)

* use email input for sign in

* use email input for registration

* use email input for invitation

* use email input for account settings

Co-authored-by: Ahmad Farhat <ahmad.af.farhat@gmail.com>

* Fix Gemfile (#1593)

* Fixed invalid token for password reset (#1632)

* HELP_URL env variable now works as expected (#1636)

* #1372 Fix for long Text in Table + Remove invalid HTML Tag (#1403)

* removed invalid HTML Tag

* removed invalid HTML Tag

* Update _public_recording_row.html.erb

* Update _recording_row.html.erb

* Update _server_recording_row.html.erb

form-inline replaced by own css

* Update _server_room_row.html.erb

* Update _public_recording_row.html.erb

* Update _recording_row.html.erb

* Update _public_recording_row.html.erb

* Update _recordings.html.erb

* Update _rooms.html.erb

* Update main.scss

fix for long text

* Update main.scss

* Update _public_recording_row.html.erb

* Added more validation on profile image (#1644)

* Users who can't create rooms but have shared rooms now have a different view (#1649)

* Revert "Puma Worker Configuration (#1332)" (#1667)

This reverts commit 78ed8d74601b613af3fd96ccf75a6bada24deddd.

* Removed html safe from all flash messages (#1668)

* Remove hardcoded guest=true if require mod approval is set (#1669)

* Change random generation for room uid (#1670)

* GRN2-290: Update gems and update to Rails 5.2.4.3 (#1671)

* Update gems and update to Rails 5.2.4.3

* remove gemfile error

Co-authored-by: MrKeksi <mrkeksi@users.noreply.github.com>
Co-authored-by: Florian Weber <fnwbr@users.noreply.github.com>
Co-authored-by: Stefan Weil <sw@weilnetz.de>
Co-authored-by: Lars Kiesow <lkiesow@uos.de>
Co-authored-by: Dave Lane <dave@lane.net.nz>
Co-authored-by: Dave Lane <dave@oerfoundation.org>
Co-authored-by: Henning <hng@users.noreply.github.com>
Co-authored-by: Marcel Waldvogel <marcel@waldvogel.family>
Co-authored-by: Christian Marg <marg@rz.tu-clausthal.de>
Co-authored-by: Klaus <klaus@jsxc.org>
2020-05-26 17:37:23 -04:00
Ahmad Farhat 28302107bd
GRN2-xx: Restructured email verification and password reset (#1444)
* Restructured email verification and password reset

* Fixed issue with password reset

Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-04-29 17:56:46 -04:00
François Ménabé 8049ddbd01
Allow to set a filter for LDAP authentication (#1306) 2020-04-20 15:25:25 -04:00
Ahmad Farhat 5aa1868f63
Local account email is now downcased to match the downcased value stored in db (#1319)
Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-04-16 15:21:27 -04:00
Lars Kiesow 10ef20363a
Additional LDAP Authentication Methods (#1287)
This patch allows anonymous and user based authentication to LDAP
servers. This change is based on a patch against bn-ldap-authentication:

-  https://github.com/blindsidenetworks/bn-ldap-authentication/pull/2

The patch introduces a new environment variable `LDAP_AUTH` which
controls the authentication method used against the LDAP server:

- `anonymous` enables an anonymous bind to the LDAP with no password
  being used.

- `user` uses the user's own credentials to search for his data,
  enabling authenticated login to LDAP without the need for a user with
  global read privileges.

The default still remains at using a bind user, allowing for a seamless
upgrade path from the previous version.

This fixes #1082

Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-04-16 14:10:14 -04:00
Ahmad Farhat 7738499978
Add check to make sure ldap username isn't blank (#1252)
Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-04-16 12:42:27 -04:00
Ahmad Farhat c72d77dbcb
Prevented LDAP sign in without password (#1092)
Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-04-01 10:45:45 -04:00
etiennevvv 03266730e8
GRN2-233: Made account activation & password reset links based on tokens only (#959)
* GRN2-233: Hiding email in verification link and password reset link

* updating tests

* removing uid from email verificaiton link

* GRN2-233: modifying test cases

* GRN2-233: Removing uid from password reset link

* GRN2-233: Removed email_params and fixed "authenticated?" method

* GRN2-233: Fixed error when trying to sign in unverified

* GRN2-233: Changed how activation tokens are generated
2020-02-24 13:05:09 -05:00
Ahmad Farhat 005ec84c73 GRN2-252: Change to how sign ins are processed (#869)
* Social to local

* Social/Local to Social

* Rubocop fixes

* Added test cases

* Added the ability to clear social uids

* Update admins_controller.rb

* Update admins_controller.rb
2020-02-12 17:49:35 -05:00
Ahmad Farhat 984e5cc085 Fixed 500 caused by 1 provider (#937) 2020-01-28 11:34:46 -05:00
Ahmad Farhat 079d64795b Redirect authenticated users to main room when accessing ldap signin (#856)
Co-authored-by: Jesus Federico <jesus@123it.ca>
2020-01-22 16:32:26 -05:00
Ahmad Farhat d35a554199 Fixed small issue with sign in to prevent error pages from appearing (#868) 2019-11-15 10:49:52 -05:00
farhatahmad 2b9ab05e1e Fixed signin bug 2019-11-14 11:59:37 -05:00
Ahmad Farhat 49def8f405 GRN2-247: Added Active Pending Banned Deleted tabs to manage users (#816)
* Added Active Pending Banned Deleted tabs to manage users

* Removed hard coded strings

* Fixed issues with sign in flow

* Fixed issues with rooms not deleting
2019-10-10 16:10:23 -04:00
farhatahmad d3b669d552 GRN2-xx: Users, Room and Recordings are now no longer permanently deleted (#773)
* Bug fixes for 2.4

* Removed accidental code add

* Switched from deleting to tombstoning

* Fixed bug with login
2019-09-19 10:03:44 -04:00
farhatahmad 01b8dbbd0e GRN2-196: Fixed issues that scrutinizer is complaining about (#765)
* Refactored code to improve scrutinizer score

* Bug fixes
2019-09-19 10:03:44 -04:00
farhatahmad fd6077696d GRN2-180: First stages of refactoring code for v2.4 (#748)
* Email rescues and authenticator concern

* Application controller and helper clean up

* Moved controller code out of helpers

* More helper and email clean up

* Cleaned up remaining helpers and create omniauth_options

* Controller code clean up

* restructured views structure

* Restructured role code

* Restructured profile and code clean up

* Master merge

* Added bbb server concern to deal with bbb calls

* Bug fixes and changes after changes

* rspec

* More rubocop fixes
2019-09-19 10:03:44 -04:00
shawn-higgins1 de81223413 Display launcher errors in Greenlight (#742) 2019-08-15 10:17:32 -04:00
farhatahmad 89f36c1766 GRN2-224: Added event logs and production caching (#739)
* Added event logs and production caching

* Added Support: before logs for easy identification

* Added more Support for log errors

* Reverted change to assets precompile check

* Added vendor assets to precompile list

* Travis fix
2019-08-14 14:25:52 -04:00
farhatahmad 98405c7d86 GRN2-xx: General bug fixes and performance upgrades (#734)
* General bug fixes and performance upgrades

* Removed unused lines
2019-08-14 09:59:34 -04:00
shawn-higgins1 79188a6cae Add support for roles (#656)
* Add support for ldap roles

* Remove debugger

* Remove bundled with

* Update omniauth-bn-launcher version
2019-07-24 13:40:09 -04:00
shawn-higgins1 523d9a38f2 GRN2-30: Add custom ldap sign in page (#619)
* Add custom ldap signin page

* Remove old omniauth-ldap gem

* Use new bn gems
2019-07-10 11:26:43 -04:00
shawn-higgins1 40b05b1626 GRN2-155: Begin preparing for removal of Twitter accounts (#615)
* Add twitter deprecation message

* Fix rspec test

* Extract room switch to its own method

* update method name
2019-07-09 13:06:07 -04:00
shawn-higgins1 f88d67f6fb GRN2-6: Notify admins when a approve/invite user signs up (#538)
* Notify admins when a approve/invite user signs up

* Fix formating

* Uses admins_url variable
2019-05-22 13:38:00 -04:00
shawn-higgins1 0360c78219 Revert "Notify admins when a approval/invite user signs up"
This reverts commit 251d85d88a.
2019-05-21 14:37:27 -04:00
shawn-higgins1 251d85d88a Notify admins when a approval/invite user signs up 2019-05-21 14:25:28 -04:00
farhatahmad 720dac6012 GRN2-6: Added the ability for admins to specify registration method (#520)
* Added the ability to invite users

* Small bug fix

* Added the ability to approve/decline users

* Small bug fixes

* More bug fixes

* More minor changes

* Final changes
2019-05-17 16:26:49 -04:00
Jesus Federico 9f74b0e2c0
Admin panel (#496)
* Added the administrator role and functionality that comes with it  (#403)

* GRN-20: Added roles to the user model

* GRN-75: Added a view for admins to see their users

* GRN-77: Added Edit/Delete/Promote ability for admins

* GRN-71: Added admin account by default

* Changed the way locales are shown

* Updated the rest of the locales

* Changed the way available_locales are defined

* Updated locales in Russian

* Updated locaales for German

* Update user.rb

* Update admins.js

* GRN-15: Added the ability to change color and image from admin interface (#425)

* GRN-20: Added roles to the user model

* GRN-75: Added a view for admins to see their users

* GRN-77: Added Edit/Delete/Promote ability for admins

* GRN-71: Added admin account by default

* Changed the way locales are shown

* Updated the rest of the locales

* Changed the way available_locales are defined

* Updated locales in Russian

* Updated locaales for German

* GRN-15: Added the ability for admins to customize color and image

* Update user.rb

* Update user.rb

* Update routes.rb

* Update admins_controller.rb

* GRN-87:Added a super admin role and made changes to how to the design works (#430)

* GRN-20: Added roles to the user model

* GRN-75: Added a view for admins to see their users

* GRN-77: Added Edit/Delete/Promote ability for admins

* GRN-71: Added admin account by default

* Changed the way locales are shown

* Updated the rest of the locales

* Changed the way available_locales are defined

* Updated locales in Russian

* Updated locaales for German

* GRN-15: Added the ability for admins to customize color and image

* Added the super admin and completed the design tab

* Update user.rb

* Update themes_controller_spec.rb

* Update routes.rb

* Update admins_controller.rb

* Removed duplicated code that broke the build after last merge

* GRN-78: Restructured some of the views to make the UI more consistent and responsive (#435)

* GRN-20: Added roles to the user model

* GRN-75: Added a view for admins to see their users

* GRN-77: Added Edit/Delete/Promote ability for admins

* GRN-71: Added admin account by default

* GRN-15: Added the ability for admins to customize color and image

* Added the super admin and completed the design tab

* GRN-78: Cleaned up buttons and moved signin to its own page

* GRN-78: Moved the Rooms and Recordings link to nav bar

* Merge fix

* Views restructure fix (#458)

* Added cache to gitlab-ci.yml

* Restructured seed

* GRN2-99 -> GRN2-106: UI cleanup and refactoring (#478)

* GRN2-98: Change Fullname to Full name

* GRN2-105: Changed View Users to Manage Users

* GRN2-101/103: Updated email to match branding

* GRN2-100: Updated Email Sent flash to be more descriptive

* GRN2-104: Redirect user to sign in page w/ flash after clicking activation link

* GRN2-102: Changed the wording in the verification email

* GRN2-99: Added email form validation

* GRN2-106: Cleaned up Users list front end

* Fixes to rake and admin password validator for passing rubocop

* GRN2-113: Fixed issues with admin panel (#479)

* GRN2-116: Code clean up after restructure of views (#482)

* Removed unused references

* Rubocop

* Added pagination to admin view (#483)

* GRN2-114: Added the ability for admins to ban/unban users (#487)

* Added the ability for admins to ban and unban users

* Update sessions_helper.rb

*  Merge branch 'master' into admin-panel  (#492)

* Updated rubocop gem

* Updated rubocop and fixed issues (#490)

* Rubocop fixes

* GRN2-122: Updated sign in flow for admins and switch design tab to site settings (#489)

* Switched design tab to site settings

* Update _header with spaces instead of tabs

* Added more test cases to increase coverage (#494)
2019-05-03 13:05:12 -04:00
Jesus Federico b15868fb3c
GRN-80: Allow local accounts on multitenant (#428)
* Changed the way the omniauth providers are declared

* Allow local authentication for multitenant mode based on customer settings

* Cleanead up code mandated by rubocop

* Completed implementation for signin and added the one for signup

* Fixed issue with rubocop

* Renamed customer_name to lb_user

* Renamed lb_user -> user_domain, fixed issue with signup controller, email verification WAS NOT implemented

* Completed implementation of email_verification

* Fixed rubocop issue

* Final update

* Fix for test with loadbalancer

* Make sure loadbalancer mockup is only used when env defined

* Fix for test on rooms_controller

* Fixed most of the test failing on multitenant env

* Fixed issue detected by rubocop

* Fixed issue with activation tockens not working on resend

* Fixed new issue found by rubocop

* Updated travis script

* Harcoded credentials for mockup

* Updated expectation on start_session

* Fixed issue with duplication of home room

* Updated script for rubocop

* Restored Gemfile
2019-04-05 14:54:36 -04:00
Jesus Federico 37af17fae1
Revert "Redirecting the user to the referrer on login success/fail (#374)" (#389)
This reverts commit 404134aa8d.
2019-03-05 14:45:42 -05:00
farhatahmad 404134aa8d Redirecting the user to the referrer on login success/fail (#374) 2019-03-04 15:51:53 -05:00
farhatahmad c60e25f71c GRN-56: Correctly implemented the account verification flow (#367)
* Correctly implemented the account verification flow

* Fixed issues with redirect locations
2019-02-22 16:47:02 -05:00
farhatahmad 2e8670a8ab GRN-11: Ability to configure room specific settings (#348)
* Added the ability to set room settings on create or update

* Added room settings alerts and made fixes to other alerts

* Small bug fixes related to rubocop and the create room modal

* Update test case and fixed issue with small edge case

* Update room.js
2019-02-06 11:08:18 -05:00
John Ma f0f0638be3 500 internal server error (fixes #277) (#279)
* <Fixed bug>

* <Fixed some errors>

* <fixed rspec tests>

* <Made requested changes>

* Delete search.js
2018-10-02 17:48:01 -04:00
Joshua Arts 162c7a3085 add LGPL 3.0 headers 2018-08-01 09:45:12 -04:00
Joshua Arts 00a3deec29 explicitly call #omniauth_fail 2018-07-23 12:07:26 -04:00
Joshua Arts 40cb48a10a remove unneeded redirect 2018-07-20 17:09:03 -04:00
Joshua Arts 775285bba9 add ldap authentication 2018-07-20 14:20:14 -04:00
Joshua Arts c5cfc621ca localize controllers 2018-07-19 16:04:08 -04:00
Joshua Arts efbf42f698 remove unused launch route 2018-06-29 16:18:00 -04:00
Joshua Arts 63cdbdc874 Merge branch master into tests 2018-06-28 11:29:30 -04:00
Joshua Arts c802e4806a fix waiting to join retry logic 2018-06-28 10:39:39 -04:00
Joshua Arts d9c5d37810 correctly handle failed login 2018-06-28 09:35:36 -04:00
Joshua Arts a6b313f38e test sessions controller and fix style 2018-06-27 17:00:37 -04:00
Josh ad5f218f23 adhere to rubocop guidelines 2018-06-26 10:29:46 -04:00
Josh ce6ec0acfb fix logout route to not conflict with BBB 2018-06-15 16:21:00 -04:00
Josh d9a95ffc18 work on user settings 2018-06-04 15:58:59 -04:00