gitlab-org--gitlab-foss/app/models
Yorick Peterse d470f3d195
Support for rendering/redacting multiple documents
This commit changes the way certain documents are rendered (currently
only Notes) and how documents are redacted. Previously both rendering
and redacting would run on a per document basis. The result of this was
that for every document we'd have to run countless queries just to
figure out if we could display a set of links or not.

This commit changes things around so that redacting Markdown documents
is no longer tied into the html-pipeline Gem. This in turn allows it to
redact multiple documents in a single pass, thus reducing the number of
queries needed.

In turn rendering issue/merge request notes has been adjusted to take
advantage of this new setup. Instead of rendering Markdown somewhere
deep down in a view the Markdown is rendered and redacted in the
controller (taking the current user and all that into account). This has
been done in such a way that the "markdown()" helper method can still be
used on its own.

This particular commit also paves the way for caching rendered HTML on
object level. Right now there's an accessor method Note#note_html which
is used for setting/getting the rendered HTML. Once we cache HTML on row
level we can simply change this field to be a column and call a "save"
whenever needed and we're pretty much done.
2016-06-24 11:46:39 +02:00
..
ci fixed pipeline notes issue 2016-06-23 12:29:11 +02:00
concerns Preload notes/discussions associations (award_emoji: :user) 2016-06-23 21:04:37 +02:00
hooks Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
members New Members::DestroyService 2016-06-18 05:46:45 +02:00
network Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
project_services Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
.gitkeep
ability.rb Fix 404 for pipelines 2016-06-23 16:47:03 +02:00
abuse_report.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
appearance.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
application_setting.rb a few changes based on MR feedback 2016-06-17 15:47:00 +02:00
audit_event.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
award_emoji.rb Fix latests concerns 2016-05-18 08:47:15 -05:00
blob.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
broadcast_message.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
commit.rb Optimize Banzai::Filter::RelativeLinkFilter 2016-06-21 10:53:16 -04:00
commit_range.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
commit_status.rb Rename commit_data in Pipeline to commit 2016-06-21 14:43:37 +02:00
deploy_key.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
deploy_keys_project.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
deployment.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
email.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
environment.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
event.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
external_issue.rb Merge branch 'master' into number_sign_for_external_issue_ref 2016-04-17 18:17:27 +02:00
forked_project_link.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
generic_commit_status.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
global_label.rb
global_milestone.rb Ruby fixes 2016-03-29 12:19:09 +01:00
group.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
identity.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
issue.rb Fix RangeError exceptions when referring to issues or merge requests outside of max database values 2016-06-18 13:07:38 -07:00
key.rb Remove Duplicated keys add UNIQUE index to fingerprint 2016-06-20 13:29:04 +02:00
label.rb Fix label order by priority on labels page 2016-06-07 14:01:30 +01:00
label_link.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
legacy_diff_note.rb Restore old behavior around diff notes to outdated discussions 2016-06-22 22:09:11 -04:00
lfs_object.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
lfs_objects_project.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
member.rb New Members::DestroyService 2016-06-18 05:46:45 +02:00
merge_request.rb Preload notes/discussions associations (award_emoji: :user) 2016-06-23 21:04:37 +02:00
merge_request_diff.rb Merge branches 'feature/project-export' and 'feature/project-import' of gitlab.com:gitlab-org/gitlab-ce into feature/project-import 2016-06-13 12:43:25 +02:00
milestone.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
namespace.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
note.rb Support for rendering/redacting multiple documents 2016-06-24 11:46:39 +02:00
notification_setting.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
oauth_access_token.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
personal_access_token.rb Address @DouweM's feedback on !3749. 2016-04-28 22:28:36 +05:30
personal_snippet.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
project.rb Merge branch 'feature/project-export' into 'master' 2016-06-17 15:35:27 +00:00
project_group_link.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
project_import_data.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
project_snippet.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
project_team.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
project_wiki.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
protected_branch.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
release.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
repository.rb Improve performance of searching tags by name by using a memorized tag array 2016-06-23 12:15:58 -04:00
security_event.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
sent_notification.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
service.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
snippet.rb Remove `projects` inclusion in `notes_with_associations` to skip some unnecessary queries 2016-06-08 10:26:05 -04:00
spam_log.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
spam_report.rb
subscription.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
todo.rb Revert "squashed merge and fixed conflicts" 2016-06-16 12:59:07 +02:00
tree.rb
u2f_registration.rb Add a `U2fRegistrations` table/model. 2016-06-06 12:50:31 +05:30
user.rb Fix user creation with stronger minimum password requirements:q 2016-06-23 11:52:05 -04:00
users_star_project.rb Revert "Fix merge conflicts - squashed commit" 2016-06-03 11:10:17 +02:00
wiki_page.rb add slack notifications for wiki pages 2016-04-20 08:25:40 +08:00