_form.html.haml 12.1 KB
Newer Older
1 2 3 4 5 6 7
= form_for @application_setting, url: admin_application_settings_path, html: { class: 'form-horizontal fieldset-form' } do |f|
  - if @application_setting.errors.any?
    #error_explanation
      .alert.alert-danger
        - @application_setting.errors.full_messages.each do |msg|
          %p= msg

8
  %fieldset
9
    %legend Visibility and Access Controls
10
    .form-group
11 12 13 14 15 16
      = f.label :default_branch_protection, class: 'control-label col-sm-2'
      .col-sm-10
        = f.select :default_branch_protection, options_for_select(Gitlab::Access.protection_options, @application_setting.default_branch_protection), {}, class: 'form-control'
    .form-group.project-visibility-level-holder
      = f.label :default_project_visibility, class: 'control-label col-sm-2'
      .col-sm-10
17
        = render('shared/visibility_radios', model_method: :default_project_visibility, form: f, selected_level: @application_setting.default_project_visibility, form_model: Project)
18 19 20
    .form-group.project-visibility-level-holder
      = f.label :default_snippet_visibility, class: 'control-label col-sm-2'
      .col-sm-10
21
        = render('shared/visibility_radios', model_method: :default_snippet_visibility, form: f, selected_level: @application_setting.default_snippet_visibility, form_model: PersonalSnippet)
22 23 24 25 26 27 28 29
    .form-group
      = f.label :restricted_visibility_levels, class: 'control-label col-sm-2'
      .col-sm-10
        - data_attrs = { toggle: 'buttons' }
        .btn-group{ data: data_attrs }
          - restricted_level_checkboxes('restricted-visibility-help').each do |level|
            = level
        %span.help-block#restricted-visibility-help Selected levels cannot be used by non-admin users for projects or snippets
30 31 32 33 34 35 36 37 38 39 40 41 42 43
    .form-group
      = f.label :import_sources, class: 'control-label col-sm-2'
      .col-sm-10
        - data_attrs = { toggle: 'buttons' }
        .btn-group{ data: data_attrs }
          - import_sources_checkboxes('import-sources-help').each do |source|
            = source
        %span.help-block#import-sources-help
          Enabled sources for code import during project creation. OmniAuth must be configured for GitHub
          = link_to "(?)", help_page_path("integration", "github")
          , Bitbucket
          = link_to "(?)", help_page_path("integration", "bitbucket")
          and GitLab.com
          = link_to "(?)", help_page_path("integration", "gitlab")
44
    .form-group
45 46
      .col-sm-offset-2.col-sm-10
        .checkbox
47 48 49
          = f.label :version_check_enabled do
            = f.check_box :version_check_enabled
            Version check enabled
50 51 52 53
    .form-group
      = f.label :admin_notification_email, class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :admin_notification_email, class: 'form-control'
54 55
        .help-block
          Abuse reports will be sent to this address if it is set. Abuse reports are always available in the admin area.
56 57 58

  %fieldset
    %legend Account and Limit Settings
59
    .form-group
60 61 62 63 64
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :gravatar_enabled do
            = f.check_box :gravatar_enabled
            Gravatar enabled
65
    .form-group
66 67 68 69
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :twitter_sharing_enabled do
            = f.check_box :twitter_sharing_enabled, :'aria-describedby' => 'twitter_help_block'
70
            Twitter enabled
71
          %span.help-block#twitter_help_block Show users a button to share their newly created public or internal projects on twitter
72
    .form-group
73
      = f.label :default_projects_limit, class: 'control-label col-sm-2'
74 75
      .col-sm-10
        = f.number_field :default_projects_limit, class: 'form-control'
76
    .form-group
77
      = f.label :max_attachment_size, 'Maximum attachment size (MB)', class: 'control-label col-sm-2'
Vinnie Okada's avatar
Vinnie Okada committed
78
      .col-sm-10
79 80 81
        = f.number_field :max_attachment_size, class: 'form-control'
    .form-group
      = f.label :session_expire_delay, 'Session duration (minutes)', class: 'control-label col-sm-2'
Vinnie Okada's avatar
Vinnie Okada committed
82
      .col-sm-10
83 84
        = f.number_field :session_expire_delay, class: 'form-control'
        %span.help-block#session_expire_delay_help_block GitLab restart is required to apply changes
85
    .form-group
86
      = f.label :user_oauth_applications, 'User OAuth applications', class: 'control-label col-sm-2'
87
      .col-sm-10
88 89 90 91 92 93 94 95 96 97
        .checkbox
          = f.label :user_oauth_applications do
            = f.check_box :user_oauth_applications
            Allow users to register any application to use GitLab as an OAuth provider

  %fieldset
    %legend Sign-in Restrictions
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
98 99 100
          = f.label :signup_enabled do
            = f.check_box :signup_enabled
            Sign-up enabled
101 102 103 104 105 106
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :signin_enabled do
            = f.check_box :signin_enabled
            Sign-in enabled
107 108 109 110 111 112 113 114 115 116 117 118
    .form-group
      = f.label :two_factor_authentication, 'Two-Factor authentication', class: 'control-label col-sm-2'
      .col-sm-10
        .checkbox
          = f.label :require_two_factor_authentication do
            = f.check_box :require_two_factor_authentication
            Require all users to setup Two-Factor authentication
    .form-group
      = f.label :two_factor_authentication, 'Two-Factor grace period (hours)', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :two_factor_grace_period, min: 0, class: 'form-control', placeholder: '0'
        .help-block Amount of time (in hours) that users are allowed to skip forced configuration of two-factor authentication
119 120 121 122 123
    .form-group
      = f.label :restricted_signup_domains, 'Restricted domains for sign-ups', class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_area :restricted_signup_domains_raw, placeholder: 'domain.com', class: 'form-control'
        .help-block Only users with e-mail addresses that match these domain(s) will be able to sign-up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com
124
    .form-group
125
      = f.label :home_page_url, 'Home page URL', class: 'control-label col-sm-2'
126
      .col-sm-10
127 128
        = f.text_field :home_page_url, class: 'form-control', placeholder: 'http://company.example.com', :'aria-describedby' => 'home_help_block'
        %span.help-block#home_help_block We will redirect non-logged in users to this page
129 130 131 132 133
    .form-group
      = f.label :after_sign_out_path, class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :after_sign_out_path, class: 'form-control', placeholder: 'http://company.example.com', :'aria-describedby' => 'after_sign_out_path_help_block'
        %span.help-block#after_sign_out_path_help_block We will redirect users to this page after they sign out
134
    .form-group
135
      = f.label :sign_in_text, class: 'control-label col-sm-2'
136
      .col-sm-10
137 138
        = f.text_area :sign_in_text, class: 'form-control', rows: 4
        .help-block Markdown enabled
139 140 141 142 143
    .form-group
      = f.label :help_page_text, class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_area :help_page_text, class: 'form-control', rows: 4
        .help-block Markdown enabled
144

145 146 147 148 149 150 151
  %fieldset
    %legend Continuous Integration
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :shared_runners_enabled do
            = f.check_box :shared_runners_enabled
152
            Enable shared runners for new projects
153

154 155 156 157 158
    .form-group
      = f.label :max_artifacts_size, 'Maximum artifacts size (MB)', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :max_artifacts_size, class: 'form-control'

159 160 161 162 163 164 165 166 167 168 169 170 171 172 173
  %fieldset
    %legend Metrics
    %p
      These settings require a restart to take effect.
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :metrics_enabled do
            = f.check_box :metrics_enabled
            Enable InfluxDB Metrics
    .form-group
      = f.label :metrics_host, 'InfluxDB host', class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :metrics_host, class: 'form-control', placeholder: 'influxdb.example.com'
    .form-group
174
      = f.label :metrics_port, 'InfluxDB port', class: 'control-label col-sm-2'
175
      .col-sm-10
176
        = f.text_field :metrics_port, class: 'form-control', placeholder: '8089'
177
        .help-block
178 179 180 181
          The UDP port to use for connecting to InfluxDB. InfluxDB requires that
          your server configuration specifies a database to store data in when
          sending messages to this port, without it metrics data will not be
          saved.
182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
    .form-group
      = f.label :metrics_pool_size, 'Connection pool size', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :metrics_pool_size, class: 'form-control'
        .help-block
          The amount of InfluxDB connections to open. Connections are opened
          lazily. Users using multi-threaded application servers should ensure
          enough connections are available (at minimum the amount of application
          server threads).
    .form-group
      = f.label :metrics_timeout, 'Connection timeout', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :metrics_timeout, class: 'form-control'
        .help-block
          The amount of seconds after which an InfluxDB connection will time
          out.
    .form-group
      = f.label :metrics_method_call_threshold, 'Method Call Threshold (ms)', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :metrics_method_call_threshold, class: 'form-control'
        .help-block
          A method call is only tracked when it takes longer to complete than
          the given amount of milliseconds.
205 206 207 208 209 210 211
    .form-group
      = f.label :metrics_sample_interval, 'Sampler Interval (sec)', class: 'control-label col-sm-2'
      .col-sm-10
        = f.number_field :metrics_sample_interval, class: 'form-control'
        .help-block
          The sampling interval in seconds. Sampled data includes memory usage,
          retained Ruby objects, file descriptors and so on.
212

213 214
  %fieldset
    %legend Spam and Anti-bot Protection
215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :ip_blocking_enabled do
            = f.check_box :ip_blocking_enabled
            Enable IP check against blacklist at sign-up
          .help-block Helps preventing accounts creation from 'known spam sources'

    .form-group
      = f.label :dnsbl_servers_list, class: 'control-label col-sm-2' do
        DNSBL servers list
      .col-sm-10
        = f.text_field :dnsbl_servers_list, class: 'form-control'
        .help-block
          Please enter DNSBL servers separated with comma

231 232 233 234 235 236 237 238 239 240 241 242 243 244
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :recaptcha_enabled do
            = f.check_box :recaptcha_enabled
            Enable reCAPTCHA
          %span.help-block#recaptcha_help_block Helps preventing bots from creating accounts

    .form-group
      = f.label :recaptcha_site_key, 'reCAPTCHA Site Key', class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :recaptcha_site_key, class: 'form-control'
        .help-block
          Generate site and private keys here:
245
          %a{ href: 'http://www.google.com/recaptcha', target: '_blank'} http://www.google.com/recaptcha
246 247 248 249 250
    .form-group
      = f.label :recaptcha_private_key, 'reCAPTCHA Private Key', class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :recaptcha_private_key, class: 'form-control'

251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269
  %fieldset
    %legend Error Reporting and Logging
    %p
      These settings require a restart to take effect.
    .form-group
      .col-sm-offset-2.col-sm-10
        .checkbox
          = f.label :sentry_enabled do
            = f.check_box :sentry_enabled
            Enable Sentry
          .help-block
            Sentry is an error reporting and logging tool which is currently not shipped with GitLab, get it here:
            %a{ href: 'https://getsentry.com', target: '_blank' } https://getsentry.com

    .form-group
      = f.label :sentry_dsn, 'Sentry DSN', class: 'control-label col-sm-2'
      .col-sm-10
        = f.text_field :sentry_dsn, class: 'form-control'

270 271
  .form-actions
    = f.submit 'Save', class: 'btn btn-primary'