Correct views for first iteration agreement
This commit is contained in:
parent
6d14a6640f
commit
53aeb33f46
|
@ -153,7 +153,7 @@ module ProjectsHelper
|
||||||
return nil unless team['display_name'] && team['id']
|
return nil unless team['display_name'] && team['id']
|
||||||
[team['display_name'], team['id']]
|
[team['display_name'], team['id']]
|
||||||
end.compact
|
end.compact
|
||||||
teams_options.unshift(['Select a team...', '0']) unless teams_options.count === 1
|
teams_options.unshift(['Select a team...', '0']) unless teams_options.one?
|
||||||
teams_options
|
teams_options
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,8 @@
|
||||||
- twoTeams = [{"id"=>"w59qt5a817f69jkxdz6xe7y4ir", "create_at"=>1481835484179, "update_at"=>1481835484179, "delete_at"=>0, "display_name"=>"new_team", "name"=>"new-team", "email"=>"", "type"=>"O", "company_name"=>"", "allowed_domains"=>"", "invite_id"=>"mfgsqnmpiby18eepo6jd6pq3oh", "allow_open_invite"=>false}, {"id"=>"my9oujxf5jy1zqdgu9rihd66do", "create_at"=>1481826062406, "update_at"=>1481826062406, "delete_at"=>0, "display_name"=>"chatops", "name"=>"chatops", "email"=>"", "type"=>"O", "company_name"=>"", "allowed_domains"=>"", "invite_id"=>"s7c1phenmi8udkybcyytc3pxuh", "allow_open_invite"=>false}]
|
|
||||||
- oneTeams = [{"id"=>"w59qt5a817f69jkxdz6xe7y4ir", "create_at"=>1481835484179, "update_at"=>1481835484179, "delete_at"=>0, "display_name"=>"new_team", "name"=>"new-team", "email"=>"", "type"=>"O", "company_name"=>"", "allowed_domains"=>"", "invite_id"=>"mfgsqnmpiby18eepo6jd6pq3oh", "allow_open_invite"=>false}]
|
|
||||||
- noTeams = []
|
|
||||||
- teams = twoTeams
|
|
||||||
|
|
||||||
.service-installation
|
.service-installation
|
||||||
.inline.pull-right
|
.inline.pull-right
|
||||||
= custom_icon('mattermost_logo', size: 48)
|
= custom_icon('mattermost_logo', size: 48)
|
||||||
%h3 Install Mattermost Command
|
%h3 Install Mattermost Command
|
||||||
- if teams.count === 0
|
- if @teams.empty?
|
||||||
%p
|
%p
|
||||||
To install this service, you must be administrator of a team in the Mattermost instance at
|
To install this service, you must be administrator of a team in the Mattermost instance at
|
||||||
%strong some_path.url
|
%strong some_path.url
|
||||||
|
@ -23,7 +18,7 @@
|
||||||
= form_for(:create, method: :post, url: configure_namespace_project_mattermost_index_path(@project.namespace, @project, )) do |f|
|
= form_for(:create, method: :post, url: configure_namespace_project_mattermost_index_path(@project.namespace, @project, )) do |f|
|
||||||
%h4 Team
|
%h4 Team
|
||||||
%p Select or create the team where the slash commands will be used in
|
%p Select or create the team where the slash commands will be used in
|
||||||
- options = mattermost_teams_options(teams)
|
- options = mattermost_teams_options(@teams)
|
||||||
- isOneTeam = options.count === 1
|
- isOneTeam = options.count === 1
|
||||||
= f.select(:team_id, options, {}, {class: 'form-control', selected: "#{options.first[1] if isOneTeam}", disabled: isOneTeam})
|
= f.select(:team_id, options, {}, {class: 'form-control', selected: "#{options.first[1] if isOneTeam}", disabled: isOneTeam})
|
||||||
- if isOneTeam
|
- if isOneTeam
|
||||||
|
|
|
@ -8,14 +8,13 @@
|
||||||
.col-lg-9
|
.col-lg-9
|
||||||
= form_for(@service, as: :service, url: namespace_project_service_path(@project.namespace, @project, @service.to_param), method: :put, html: { class: 'form-horizontal' }) do |form|
|
= form_for(@service, as: :service, url: namespace_project_service_path(@project.namespace, @project, @service.to_param), method: :put, html: { class: 'form-horizontal' }) do |form|
|
||||||
= render 'shared/service_settings', form: form, subject: @service
|
= render 'shared/service_settings', form: form, subject: @service
|
||||||
- if @service.to_param != 'mattermost_slash_commands'
|
.footer-block.row-content-block
|
||||||
.footer-block.row-content-block
|
= form.submit 'Save changes', class: 'btn btn-save'
|
||||||
= form.submit 'Save changes', class: 'btn btn-save'
|
|
||||||
|
- if @service.valid? && @service.activated?
|
||||||
- if @service.valid? && @service.activated?
|
- unless @service.can_test?
|
||||||
- unless @service.can_test?
|
- disabled_class = 'disabled'
|
||||||
- disabled_class = 'disabled'
|
- disabled_title = @service.disabled_title
|
||||||
- disabled_title = @service.disabled_title
|
|
||||||
|
|
||||||
= link_to 'Test settings', test_namespace_project_service_path(@project.namespace, @project, @service), class: "btn #{disabled_class}", title: disabled_title
|
= link_to 'Test settings', test_namespace_project_service_path(@project.namespace, @project, @service), class: "btn #{disabled_class}", title: disabled_title
|
||||||
= link_to "Cancel", namespace_project_services_path(@project.namespace, @project), class: "btn btn-cancel"
|
= link_to "Cancel", namespace_project_services_path(@project.namespace, @project), class: "btn btn-cancel"
|
||||||
|
|
|
@ -0,0 +1,91 @@
|
||||||
|
- run_actions_text = "Perform common operations on this project: #{@project.name_with_namespace}"
|
||||||
|
|
||||||
|
To setup this service:
|
||||||
|
%ul.list-unstyled
|
||||||
|
%li
|
||||||
|
1.
|
||||||
|
= link_to 'Enable custom slash commands', 'https://docs.mattermost.com/developer/slash-commands.html#enabling-custom-commands'
|
||||||
|
on your Mattermost installation
|
||||||
|
%li
|
||||||
|
2.
|
||||||
|
= link_to 'Add a slash command', 'https://docs.mattermost.com/developer/slash-commands.html#set-up-a-custom-command'
|
||||||
|
in Mattermost with these options:
|
||||||
|
|
||||||
|
%hr
|
||||||
|
|
||||||
|
.help-form
|
||||||
|
.form-group
|
||||||
|
= label_tag :display_name, 'Display name', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :display_name, "GitLab / #{@project.name_with_namespace}", class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#display_name')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :description, 'Description', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :description, run_actions_text, class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#description')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag nil, 'Command trigger word', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.text-block
|
||||||
|
%p Fill in the word that works best for your team.
|
||||||
|
%p
|
||||||
|
Suggestions:
|
||||||
|
%code= 'gitlab'
|
||||||
|
%code= @project.path # Path contains no spaces, but dashes
|
||||||
|
%code= @project.path_with_namespace
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :request_url, 'Request URL', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :request_url, service_trigger_url(subject), class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#request_url')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag nil, 'Request method', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.text-block POST
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :response_username, 'Response username', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :response_username, 'GitLab', class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#response_username')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :response_icon, 'Response icon', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :response_icon, asset_url('gitlab_logo.png'), class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#response_icon')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag nil, 'Autocomplete', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.text-block Yes
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :autocomplete_hint, 'Autocomplete hint', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :autocomplete_hint, '[help]', class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#autocomplete_hint')
|
||||||
|
|
||||||
|
.form-group
|
||||||
|
= label_tag :autocomplete_description, 'Autocomplete description', class: 'col-sm-2 col-xs-12 control-label'
|
||||||
|
.col-sm-10.col-xs-12.input-group
|
||||||
|
= text_field_tag :autocomplete_description, run_actions_text, class: 'form-control input-sm', readonly: 'readonly'
|
||||||
|
.input-group-btn
|
||||||
|
= clipboard_button(clipboard_target: '#autocomplete_description')
|
||||||
|
|
||||||
|
%hr
|
||||||
|
|
||||||
|
%ul.list-unstyled
|
||||||
|
%li
|
||||||
|
3. After adding the slash command, paste the
|
||||||
|
|
||||||
|
%strong token
|
||||||
|
into the field below
|
|
@ -1,3 +1,5 @@
|
||||||
|
- enabled = Gitlab.config.mattermost.enabled
|
||||||
|
|
||||||
.well
|
.well
|
||||||
This service allows GitLab users to perform common operations on this
|
This service allows GitLab users to perform common operations on this
|
||||||
project by entering slash commands in Mattermost.
|
project by entering slash commands in Mattermost.
|
||||||
|
@ -5,5 +7,6 @@
|
||||||
See list of available commands in Mattermost after setting up this service,
|
See list of available commands in Mattermost after setting up this service,
|
||||||
by entering
|
by entering
|
||||||
%code /<command_trigger_word> help
|
%code /<command_trigger_word> help
|
||||||
|
= render 'projects/services/mattermost_slash_commands/detailed_help', subject: @service unless enabled
|
||||||
|
|
||||||
= render 'projects/services/mattermost_slash_commands/installation_info'
|
= render 'projects/services/mattermost_slash_commands/installation_info' if enabled
|
||||||
|
|
|
@ -7,45 +7,44 @@
|
||||||
= preserve do
|
= preserve do
|
||||||
= markdown @service.help
|
= markdown @service.help
|
||||||
|
|
||||||
- if @service.to_param != 'mattermost_slash_commands'
|
.service-settings
|
||||||
.service-settings
|
.form-group
|
||||||
|
= form.label :active, "Active", class: "control-label"
|
||||||
|
.col-sm-10
|
||||||
|
= form.check_box :active
|
||||||
|
|
||||||
|
- if @service.supported_events.present?
|
||||||
.form-group
|
.form-group
|
||||||
= form.label :active, "Active", class: "control-label"
|
= form.label :url, "Trigger", class: 'control-label'
|
||||||
|
|
||||||
.col-sm-10
|
.col-sm-10
|
||||||
= form.check_box :active
|
- @service.supported_events.each do |event|
|
||||||
|
%div
|
||||||
|
= form.check_box service_event_field_name(event), class: 'pull-left'
|
||||||
|
.prepend-left-20
|
||||||
|
= form.label service_event_field_name(event), class: 'list-label' do
|
||||||
|
%strong
|
||||||
|
= event.humanize
|
||||||
|
|
||||||
- if @service.supported_events.present?
|
- field = @service.event_field(event)
|
||||||
.form-group
|
|
||||||
= form.label :url, "Trigger", class: 'control-label'
|
|
||||||
|
|
||||||
.col-sm-10
|
- if field
|
||||||
- @service.supported_events.each do |event|
|
%p
|
||||||
%div
|
= form.text_field field[:name], class: "form-control", placeholder: field[:placeholder]
|
||||||
= form.check_box service_event_field_name(event), class: 'pull-left'
|
|
||||||
.prepend-left-20
|
|
||||||
= form.label service_event_field_name(event), class: 'list-label' do
|
|
||||||
%strong
|
|
||||||
= event.humanize
|
|
||||||
|
|
||||||
- field = @service.event_field(event)
|
%p.light
|
||||||
|
= service_event_description(event)
|
||||||
|
|
||||||
- if field
|
- @service.global_fields.each do |field|
|
||||||
%p
|
- type = field[:type]
|
||||||
= form.text_field field[:name], class: "form-control", placeholder: field[:placeholder]
|
|
||||||
|
|
||||||
%p.light
|
- if type == 'fieldset'
|
||||||
= service_event_description(event)
|
- fields = field[:fields]
|
||||||
|
- legend = field[:legend]
|
||||||
|
|
||||||
- @service.global_fields.each do |field|
|
%fieldset
|
||||||
- type = field[:type]
|
%legend= legend
|
||||||
|
- fields.each do |subfield|
|
||||||
- if type == 'fieldset'
|
= render 'shared/field', form: form, field: subfield
|
||||||
- fields = field[:fields]
|
- else
|
||||||
- legend = field[:legend]
|
= render 'shared/field', form: form, field: field
|
||||||
|
|
||||||
%fieldset
|
|
||||||
%legend= legend
|
|
||||||
- fields.each do |subfield|
|
|
||||||
= render 'shared/field', form: form, field: subfield
|
|
||||||
- else
|
|
||||||
= render 'shared/field', form: form, field: field
|
|
||||||
|
|
Loading…
Reference in New Issue