Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify Pro sync for Tylium #1244

Merged
merged 5 commits into from
Mar 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions app/models/project.rb
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,10 @@ def tags
Tag.all
end

def team
nil
end

def testers_for_mentions
User.all
end
Expand Down
2 changes: 1 addition & 1 deletion app/views/boards/modals/_new_board_form.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
Log in as admin: Templates > Methodologies
</p>
<% end %>
<a href="http://dradis.org/academy/industry/compliance/"
<a href="https://dradis.com/academy/industry/compliance/"
target="_blank">
Download more templates
</a>
Expand Down
35 changes: 16 additions & 19 deletions app/views/issues/_send_to_menu.html.erb
Original file line number Diff line number Diff line change
@@ -1,25 +1,22 @@
<span class="dropdown-item dots-dropdown-header" tabindex="-1">Send to...</span>
<% sync_plugins = Dradis::Plugins::with_feature(:issue_sync) %>

<% cache ['send-to', sync_plugins.map(&:plugin_name)] do %>
<% if sync_plugins.any? %>
<% sync_plugins.each do |plugin| %>
<%=
plugin_path = ActiveSupport::Inflector.underscore(ActiveSupport::Inflector.deconstantize(plugin.name))
render partial: "#{plugin_path}/issues/send_to_menu"
%>
<% end %>
<% end %>
<% unless defined?(Dradis::Pro) && defined?(Dradis::Pro::Plugins::Issuelib) %>
<% if sync_plugins.any? %>
<div class="divider"></div>
<% end %>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="issuelib" data-url="https://dradis.com/pro/pages/issuelib.html"><i class="fa-solid fa-book fa-fw"></i> Built-in IssueLibrary</a>
<% if sync_plugins.any? %>
<% sync_plugins.each do |plugin| %>
<%=
plugin_path = ActiveSupport::Inflector.underscore(ActiveSupport::Inflector.deconstantize(plugin.name))
render partial: "#{plugin_path}/issues/send_to_menu"
%>
<% end %>
<% unless defined?(Dradis::Pro) && defined?(Dradis::Pro::Plugins::Remediationtracker) %>
<% if sync_plugins.any? %>
<div class="divider"></div>
<% end %>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="remediation" data-url="https://dradis.com/tools/remediation.html"><i class="fa-solid fa-tasks fa-fw"></i> Built-in Remediation Tracker</a>
<% end %>

<% unless defined?(Dradis::Pro) %>
<% if sync_plugins.any? %>
<div class="divider"></div>
<% end %>


<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="issuelib" data-url="https://dradis.com/pro/pages/issuelib.html"><i class="fa-solid fa-book fa-fw"></i> Built-in IssueLibrary</a>

<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="remediation" data-url="https://dradis.com/tools/remediation.html"><i class="fa-solid fa-tasks fa-fw"></i> Built-in Remediation Tracker</a>
<% end %>
6 changes: 2 additions & 4 deletions app/views/issues/merge/new.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,8 @@
</nav>
<% end %>

<div class="content-container">
<div id="issues_editor">
<div class="note-text-inner">
<div class="content-container" id="issues_editor">
<div class="note-text-inner">
<h4 class="header-underline">You're merging <%= @issues.count %> Issues into a target Issue</h4>

<%= form_tag project_merge_index_path(current_project) do %>
Expand Down Expand Up @@ -91,5 +90,4 @@
</div>
<% end %>
</div>
</div>
</div>
19 changes: 11 additions & 8 deletions app/views/layouts/mailer.html.erb
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<% css_color = defined?(Dradis::Pro) ? '#298DCC' : '#378137' %>

<!DOCTYPE html>
<html>
<head>
Expand All @@ -11,7 +13,7 @@
background-color: #fafafa;
}
a {
color: #378137; /* #298DCC in pro */
color: <%= css_color %>;
text-decoration: none;
}
a:hover {
Expand Down Expand Up @@ -53,23 +55,24 @@

<table cellspacing="0" cellpadding="0" style="max-width: 640px; margin: 20px auto; font-size: 80%; color: #555;">
<% if defined?(Dradis::Pro) %>
<tr align="center">
<td>
<%= link_to 'Manage your Dradis email preferences', edit_user_preferences_notifications_url, style: 'color: #298DCC;' %>
</td>
</tr>
<tr align="center">
<td>
<%= link_to 'Manage your Dradis email preferences', edit_user_preferences_notifications_url, style: "color: #{css_color};" %>
</td>
</tr>
<% end %>

<tr align="center">
<td>
<a href="https://dradis.com/privacy.html" style="color: #378137; /* color: #298DCC in pro */">Privacy</a> | <%= link_to 'Login to Dradis', login_url, style: 'color: #378137;' %> <%# color: #298DCC in pro %>
<a href="https://dradis.com/privacy.html" style="color: #{css_color};">Privacy</a> | <%= link_to 'Login to Dradis', login_url, style: "color: #{css_color};" %>
</td>
</tr>
<tr>
<td height="20px"></td>
</tr>
<tr align="center">
<td>
<span>© 2012-<%= Time.now.year %> Dradis Framework — Security Roots Ltd</span><br>
<span>© 2010-<%= Time.now.year %> Dradis Framework — Security Roots Ltd</span><br>
<span>10 Portfleet Place, De Beauvoir Road</span><br>
<span>London, N1 5SZ</span>
</td>
Expand Down
90 changes: 52 additions & 38 deletions app/views/layouts/tylium/_navbar.html.erb
Original file line number Diff line number Diff line change
@@ -1,69 +1,83 @@
<nav class="navbar navbar-expand-lg fixed-top navbar-light" data-behavior="navbar">
<div class="container-fluid">
<div class="d-flex justify-content-between w-100">
<div class="navbar-brand" data-behavior="navbar-brand">
<%= link_to current_project.name, main_app.project_path(current_project), class: 'project-title' %>
<%= link_to 'javascript:void(0)', class: 'js-try-pro change-project-link', data: { term: 'projects', url: 'https://dradis.com/pro/pages/projects.html'}, title: 'Change Project' do %>
<i class="fa-solid fa-random fa-fw"></i> Change Project
<% end %>
</div>

<%= render partial: 'layouts/tylium/navbar/change_project' %>

<div class="d-inline-flex">
<button class="navbar-toggler collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbarToggler" aria-expanded="false" aria-label="Toggle navigation" data-behavior="navbar-toggler">
<span class="navbar-toggler-icon"><i class="fa-solid fa-bars"></i></span>
</button>
<div class="collapse navbar-collapse" id="navbar">
<ul class="navbar-nav ms-auto mt-lg-0">

<li class="nav-item search">
<%= render "layouts/tylium/search" %>
<%= render "layouts/tylium/navbar/search" %>
</li>

<li class="nav-item">
<%= link_to main_app.project_upload_manager_path(current_project), class: 'nav-link', title: 'Upload' do %><i class="fa-solid fa-cloud-upload fa-lg"></i> Upload<% end %>
<%= link_to main_app.project_upload_manager_path(current_project), class: 'nav-link', title: 'Upload' do %>
<i class="fa-solid fa-cloud-upload fa-lg"></i> Upload
<% end %>
</li>

<li class="nav-item">
<%= link_to main_app.project_export_manager_path(current_project), class: 'nav-link', title: 'Export' do %><i class="fa-regular fa-file-text fa-lg"></i> Export<% end %>
<%= link_to main_app.project_export_manager_path(current_project), class: 'nav-link', title: 'Export' do %>
<i class="fa-regular fa-file-text fa-lg"></i> Export
<% end %>
</li>

<li class="nav-item">
<%= link_to main_app.project_qa_issues_path(current_project), class: 'nav-link', title: 'QA' do %>
<i class="fa-regular fa-handshake fa-lg"></i> QA
<% end %>
</li>
<li class="nav-item">
<%= link_to main_app.project_configurations_path(current_project), class: 'nav-link', title: 'Configuration' do %><i class="fa-solid fa-cog fa-lg"></i> Configuration<% end %>

<li class="nav-item dropdown">
<a href="javascript:void(0)" class="nav-link dropdown-toggle" data-bs-toggle="dropdown" data-behavior="close-collapse" title="Configuration">
<i class="fa-solid fa-cog fa-lg"></i> Configuration
</a>

<div class="dropdown-menu dropdown-menu-end">
<% if defined?(Dradis::Pro) %>
<%= link_to 'Project properties', main_app.edit_project_path(current_project), data: { turbolinks: false }, class: 'dropdown-item' %>
<div class="divider"></div>
<% end %>

<%= link_to 'Configure plugins', main_app.project_configurations_path(current_project), class: 'dropdown-item' %>
</div>
</li>

<li class="nav-item notifications dropdown">
<%= link_to main_app.project_notifications_path(current_project), class: 'nav-link dropdown-toggle', data: { bs_toggle: 'dropdown', behavior: 'notifications-dropdown close-collapse', project_id: current_project.id }, role: 'button', title: 'Notifications' do %>
<i class="notifications-bell fa-solid fa-bell fa-lg"><i class="notifications-dot d-none" data-behavior="notifications-dot"></i></i> Notifications
<%=
link_to main_app.project_notifications_path(current_project),
class: 'nav-link dropdown-toggle',
data: {
bs_toggle: 'dropdown',
behavior: 'notifications-dropdown close-collapse',
project_id: current_project.id
},
role: 'button',
title: 'Notifications' do %>

<i class="notifications-bell fa-solid fa-bell fa-lg"><i class="notifications-dot d-none" data-behavior="notifications-dot"></i></i> Notifications
<% end %>

<div class="dropdown-menu dropdown-menu-end" data-url="<%= main_app.notifications_path %>"></div>
</li>
<li class="nav-item dropdown">
<%= link_to '#', class: 'nav-link dropdown-toggle', data: { bs_toggle: 'dropdown', behavior: 'close-collapse' }, role: 'button', title: 'Help' do %>
<i class="fa-solid fa-question fa-lg"></i> Help
<% end %>

<%= render partial: 'layouts/tylium/navbar/help' %>

<li class="nav-item dropdown user-menu ms-lg-1 ms-0">
<a href="javascript:void(0)" class="nav-link dropdown-toggle py-1 p-1 d-flex justify-content-lg-between align-items-center" data-bs-toggle="dropdown" data-behavior="close-collapse" title="User">
<%= avatar_image(current_user, size: 32) %>
<span class="user-menu-name"><%= current_user.name %></span>
</a>
<div class="dropdown-menu dropdown-menu-end">
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="training-course" data-url="https://dradis.com/academy/dradis-course/?utm_source=ce&utm_medium=app&utm_campaign=try-pro&utm_term=training-course">Free training course</a>
<a href="https://dradis.com/support/guides/projects/?utm_source=ce&utm_medium=app" target="_blank" class="dropdown-item">Projects 101</a>
<a href="https://dradis.com/support/guides/troubleshooting/?utm_source=ce&utm_medium=app" target="_blank" class="dropdown-item">Troubleshooting</a>
<div class="divider"></div>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="contact-support" data-url="https://dradis.com/pro/pages/support.html">Contact support</a>
<a href="https://evening-hamlet-4416.herokuapp.com/" target="_blank" class="dropdown-item">Chat on Slack</a>
<a href="https://github.com/dradis/dradis-ce/issues" class="js-hs-beacon dropdown-item">Report an issue</a>
<a href="http://dradis.com/support/" target="_blank" class="dropdown-item">Support website</a>
<a href="https://discuss.dradisframework.org" target="_blank" class="dropdown-item">Community forums</a>
<div class="divider"></div>
<a href="https://dradis.com/careers/" target="_blank" class="dropdown-item">We're hiring</a>
<%# FIXME: re-enable Tour %>
<!--
<div class="divider"></div>
<a href="javascript:void(0)" class="js-tour-start dropdown-item">Show Tour</a>
-->
<div class="divider"></div>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="try-pro" data-url="https://dradis.com/pro/pages/upgrade.html">Try Dradis Pro</a>
<%= link_to 'Profile', main_app.profile_path, class:'dropdown-item', data: { turbolinks: false } if defined?(Dradis::Pro) %>
<%= link_to 'Log out', main_app.logout_path, class:'dropdown-item', data: { turbolinks: false } %>
</div>
</li>
<li class="nav-item">
<%= link_to main_app.logout_path, class: 'nav-link', title: 'Logout', data: { turbolinks: false } do %><i class="fa-solid fa-sign-out fa-lg"></i> Logout<% end %>
</li>
</ul>
</div>
</div>
Expand Down
18 changes: 18 additions & 0 deletions app/views/layouts/tylium/navbar/_change_project.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<div class="navbar-brand" data-behavior="navbar-brand">
<% if current_project.team %>
<%= link_to current_project.team.name, main_app.team_path(current_project.team), data: { turbolinks: false }, class: 'project-title' %>
<i class="fa-solid fa-angle-right"></i>
<% end %>

<%= link_to current_project.name, main_app.project_path(current_project), class: 'project-title' %>

<% if defined?(Dradis::Pro) %>
<%= link_to main_app.projects_path, class: 'change-project-link', data: { turbolinks: false }, title: 'Change Project' do %>
<i class="fa-solid fa-random fa-fw"></i> Change Project
<% end %>
<% else %>
<%= link_to 'javascript:void(0)', class: 'js-try-pro change-project-link', data: { term: 'projects', url: 'https://dradis.com/pro/pages/projects.html'}, title: 'Change Project' do %>
<i class="fa-solid fa-random fa-fw"></i> Change Project
<% end %>
<% end %>
</div>
31 changes: 31 additions & 0 deletions app/views/layouts/tylium/navbar/_help.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<li class="nav-item dropdown">
<a href="javascript:void(0)" class="nav-link dropdown-toggle" data-bs-toggle="dropdown" data-behavior="close-collapse" title="Help">
<i class="fa-solid fa-question fa-lg"></i> Help
</a>

<div class="dropdown-menu dropdown-menu-end">
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="training-course" data-url="https://dradis.com/academy/dradis-course/?utm_source=ce&utm_medium=app&utm_campaign=try-pro&utm_term=training-course">Free training course</a>
<a href="https://dradis.com/support/guides/projects/?utm_source=ce&utm_medium=app" target="_blank" class="dropdown-item">Projects 101</a>
<a href="https://dradis.com/support/guides/troubleshooting/?utm_source=ce&utm_medium=app" target="_blank" class="dropdown-item">Troubleshooting</a>
<div class="divider"></div>

<% if defined?(Dradis::Pro) %>
<a href="javascript:void(0)" class="dropdown-item" data-behavior="js-hs-beacon">Contact support</a>
<a href="https://dradispro.slack.com/" target="_blank" class="dropdown-item">Chat on Slack</a>
<% else %>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="contact-support" data-url="https://dradis.com/pro/pages/support.html">Contact support</a>
<a href="https://dradis.slack.com/" target="_blank" class="dropdown-item">Chat on Slack</a>
<% end %>

<a href="https://github.com/dradis/dradis-ce/issues" target="_blank" class="dropdown-item">Report an issue</a>
<a href="http://dradis.com/support/" target="_blank" class="dropdown-item">Support website</a>
<a href="https://discuss.dradisframework.org" target="_blank" class="dropdown-item">Community forums</a>
<div class="divider"></div>
<a href="https://dradis.com/careers/" target="_blank" class="dropdown-item">We're hiring</a>

<% unless defined?(Dradis::Pro) %>
<div class="divider"></div>
<a href="javascript:void(0)" class="js-try-pro dropdown-item" data-term="try-pro" data-url="https://dradis.com/pro/pages/upgrade.html">Try Dradis Pro</a>
<% end %>
</div>
</li>
4 changes: 4 additions & 0 deletions app/views/nodes/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,11 @@
<a href="#notes-tab" data-bs-toggle="tab" class="nav-link"><i class="fa-regular fa-file-text"></i> Notes</a>
</li>
<li class="nav-item">
<% if defined?(Dradis::Pro) %>
<a href="#methodology-tab" data-bs-toggle="tab" class="nav-link"><i class="fa-brands fa-trello"></i> Methodology</a>
<% else %>
<a class="js-try-pro nav-link" href="javascript:void(0)" data-term="node-boards" data-url="https://dradis.com/pro/pages/consistency.html"><i class="fa-brands fa-trello"></i> Methodology</a>
<% end %>
</li>
<li class="nav-item">
<a href="#properties-tab" data-bs-toggle="tab" class="nav-link active">
Expand Down
Loading