Factor authorize_push! and authorize_code_access!

with existing method_missing. Pattern already used extensively,
so let's be consistent and use it everywhere.
Replace match with end_with: more readable, faster
DRY mentioned in magic note constant
Remove param[:project_id] at admin controller

The route never passes that parameter to the helpers.
Use @project on controllers, don't call method

Also memoize the method to ensure that other methods in
ApplicationController that rely on it can call it efficiently.
Prevent 500 error when filter projects with push in admin area

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Merge branch 'fix-500-admin-projects' into 'master'

Fix 500 error when filtering projects in admin interface

Fixes #1693

See merge request !1200
Export all coffee classes with @
Factor group tips
Factor choose group avatar button
Factor group forms
Merge pull request #8112 from cirosantilli/factor-group-tips

Factor group tips
Merge pull request #8111 from cirosantilli/dry-group-avatar-button

Factor choose group avatar button
Merge pull request #8110 from cirosantilli/coffee-uniform-export

Export all coffee classes with @
State on CONTRIBUTING fix line style
Merge pull request #8109 from cirosantilli/contributing-style-vs-min

State on CONTRIBUTING that people should fix line style of touched lines
Merge pull request #8097 from cirosantilli/dry-mentioned-in

DRY mentioned in magic note constant
Merge pull request #8113 from cirosantilli/factor-group-forms

Factor group forms
Merge pull request #8101 from cirosantilli/rm-project-id-admin-project-controller

Remove param[:project_id] at admin controller
Merge pull request #8102 from cirosantilli/use-memoized-project

Use @project on controllers, don't call method