0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-11-24 10:20:28 +01:00
discourse-custom-wizard/assets/javascripts/discourse/templates/admin-wizards-api-show.hbs

357 Zeilen
9,6 KiB
Handlebars

<div class="wizard-api-header page">
2021-04-12 16:19:53 +02:00
<div class="buttons">
{{#if updating}}
{{loading-spinner size="small"}}
{{else}}
{{#if responseIcon}}
{{d-icon responseIcon}}
{{/if}}
{{/if}}
2023-07-10 08:55:54 +02:00
{{d-button
label="admin.wizard.api.save"
action=(action "save")
class="btn-primary"
disabled=saveDisabled
}}
{{#if showRemove}}
{{d-button action=(action "remove") label="admin.wizard.api.remove"}}
{{/if}}
{{#if error}}
<div class="error">
{{error}}
</div>
{{/if}}
</div>
2022-06-02 16:45:20 +02:00
<div class="wizard-header large">
{{#if api.isNew}}
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.new"}}
{{else}}
2022-06-02 16:45:20 +02:00
<span>{{api.title}}</span>
{{/if}}
</div>
<div class="metadata">
<div class="title">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.title"}}</label>
2023-04-03 04:28:06 +02:00
<Input
@value={{this.api.title}}
placeholder={{i18n "admin.wizard.api.title_placeholder"}}
/>
</div>
2022-06-02 16:45:20 +02:00
<div class="name {{nameClass}}">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.name"}}</label>
{{#if api.isNew}}
2023-04-03 04:28:06 +02:00
<Input
@value={{this.api.name}}
placeholder={{i18n "admin.wizard.api.name_placeholder"}}
/>
{{else}}
2022-06-02 16:45:20 +02:00
<span>{{api.name}}</span>
{{/if}}
</div>
2019-05-31 09:54:11 +02:00
</div>
</div>
<div class="wizard-api-header">
<div class="buttons">
2019-06-03 01:40:54 +02:00
{{#if isOauth}}
{{#if authorizing}}
{{loading-spinner size="small"}}
{{else}}
{{#if authErrorMessage}}
<span>{{authErrorMessage}}</span>
{{/if}}
{{/if}}
2023-07-10 08:55:54 +02:00
{{d-button
label="admin.wizard.api.auth.btn"
action=(action "authorize")
disabled=authDisabled
class="btn-primary"
}}
2019-06-03 01:40:54 +02:00
{{/if}}
</div>
2022-06-02 16:45:20 +02:00
<div class="wizard-header medium">
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.auth.label"}}
</div>
2019-05-31 09:54:11 +02:00
</div>
<div class="wizard-api-authentication">
<div class="settings">
2022-06-02 16:45:20 +02:00
<div class="wizard-header small">
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.auth.settings"}}
2019-05-31 09:54:11 +02:00
</div>
{{#if showRedirectUri}}
<div class="control-group redirect-uri">
<div class="control-label">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.redirect_uri"}}</label>
<div class="controls">
{{api.redirectUri}}
</div>
</div>
</div>
{{/if}}
<div class="control-group auth-type">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.type"}}</label>
<div class="controls">
2020-02-02 11:42:05 +01:00
{{combo-box
2021-04-12 16:19:53 +02:00
value=api.authType
2020-02-02 11:42:05 +01:00
content=authorizationTypes
2020-04-22 15:03:18 +02:00
onChange=(action (mut api.authType))
2023-07-10 08:55:54 +02:00
options=(hash none="admin.wizard.api.auth.type_none")
}}
</div>
</div>
{{#if isOauth}}
{{#if threeLeggedOauth}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.url"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.authUrl}} />
</div>
</div>
{{/if}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.token_url"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.tokenUrl}} />
</div>
</div>
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.client_id"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.clientId}} />
</div>
</div>
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.client_secret"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.clientSecret}} />
</div>
</div>
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.params.label"}}</label>
<div class="controls">
{{#each api.authParams as |param|}}
<div class="param">
2023-04-03 04:28:06 +02:00
<Input
@value={{this.param.key}}
placeholder={{i18n "admin.wizard.key"}}
/>
<Input
@value={{this.param.value}}
placeholder={{i18n "admin.wizard.value"}}
/>
2023-07-10 08:55:54 +02:00
{{d-button
action=(action "removeParam")
actionParam=param
icon="times"
}}
</div>
{{/each}}
2023-07-10 08:55:54 +02:00
{{d-button
label="admin.wizard.api.auth.params.new"
icon="plus"
action=(action "addParam")
}}
</div>
</div>
2019-06-03 01:40:54 +02:00
{{/if}}
{{#if isBasicAuth}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.username"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.username}} />
</div>
</div>
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.auth.password"}}</label>
<div class="controls">
2023-07-10 08:55:54 +02:00
<Input @value={{this.api.password}} />
</div>
</div>
{{/if}}
</div>
{{#if isOauth}}
<div class="status">
<div class="authorization">
{{#if api.authorized}}
<span class="authorization-indicator authorized"></span>
<span>{{i18n "admin.wizard.api.status.authorized"}}</span>
{{else}}
<span class="authorization-indicator not-authorized"></span>
<span>{{i18n "admin.wizard.api.status.not_authorized"}}</span>
{{/if}}
</div>
2022-06-02 16:45:20 +02:00
<div class="wizard-header small">
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.status.label"}}
</div>
{{#if threeLeggedOauth}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.status.code"}}</label>
<div class="controls">
{{api.code}}
</div>
</div>
{{/if}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.status.access_token"}}</label>
<div class="controls">
{{api.accessToken}}
</div>
</div>
{{#if threeLeggedOauth}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.status.refresh_token"}}</label>
<div class="controls">
{{api.refreshToken}}
</div>
</div>
{{/if}}
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.status.expires_at"}}</label>
<div class="controls">
{{api.tokenExpiresAt}}
</div>
</div>
<div class="control-group">
2021-04-12 16:19:53 +02:00
<label>{{i18n "admin.wizard.api.status.refresh_at"}}</label>
<div class="controls">
{{api.tokenRefreshAt}}
</div>
</div>
</div>
{{/if}}
</div>
2019-05-31 09:54:11 +02:00
2022-06-02 16:45:20 +02:00
<div class="wizard-header medium">
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.endpoint.label"}}
2019-05-31 09:54:11 +02:00
</div>
<div class="wizard-api-endpoints">
2023-07-10 08:55:54 +02:00
{{d-button
action=(action "addEndpoint")
label="admin.wizard.api.endpoint.add"
icon="plus"
}}
2019-05-31 09:54:11 +02:00
{{#if api.endpoints}}
<div class="endpoint-list">
<ul>
{{#each api.endpoints as |endpoint|}}
<li>
<div class="endpoint">
<div class="endpoint-">
<div class="top">
2023-04-03 04:28:06 +02:00
<Input
@value={{endpoint.name}}
2023-04-03 04:28:06 +02:00
placeholder={{i18n "admin.wizard.api.endpoint.name"}}
/>
<Input
@value={{endpoint.url}}
2023-04-03 04:28:06 +02:00
placeholder={{i18n "admin.wizard.api.endpoint.url"}}
class="endpoint-url"
/>
2023-07-10 08:55:54 +02:00
{{d-button
action=(action "removeEndpoint")
actionParam=endpoint
icon="times"
class="remove-endpoint"
}}
</div>
<div class="bottom">
2020-02-02 11:42:05 +01:00
{{combo-box
content=endpointMethods
value=endpoint.method
2020-03-29 09:49:33 +02:00
onChange=(action (mut endpoint.method))
2023-07-10 08:55:54 +02:00
options=(hash none="admin.wizard.api.endpoint.method")
}}
2020-02-02 11:42:05 +01:00
{{combo-box
content=contentTypes
value=endpoint.content_type
2020-03-29 09:49:33 +02:00
onChange=(action (mut endpoint.content_type))
2023-07-10 08:55:54 +02:00
options=(hash none="admin.wizard.api.endpoint.content_type")
}}
2020-02-02 11:42:05 +01:00
{{multi-select
2020-04-22 15:03:18 +02:00
value=endpoint.success_codes
2020-02-02 11:42:05 +01:00
content=successCodes
2020-03-29 09:49:33 +02:00
onChange=(action (mut endpoint.success_codes))
2020-03-22 07:47:56 +01:00
options=(hash
none="admin.wizard.api.endpoint.success_codes"
2023-07-10 08:55:54 +02:00
)
}}
</div>
</div>
</div>
</li>
{{/each}}
</ul>
</div>
{{/if}}
2019-05-31 09:54:11 +02:00
</div>
2019-06-06 18:10:13 +02:00
2022-06-02 16:45:20 +02:00
<div class="wizard-header medium">
2021-04-12 16:19:53 +02:00
{{i18n "admin.wizard.api.log.label"}}
2022-06-02 16:45:20 +02:00
<div class="controls">
{{d-button
action=(action "clearLogs")
class="clear-logs"
2023-07-10 08:55:54 +02:00
label="admin.wizard.api.log.clear"
}}
2022-06-02 16:45:20 +02:00
</div>
2019-06-06 18:10:13 +02:00
</div>
<div class="wizard-api-log">
2020-04-22 15:03:18 +02:00
<div class="log-list">
<table class="wizard-api-log-table">
2021-04-12 16:19:53 +02:00
<thead>
<th>Datetime</th>
<th>User</th>
<th>Status</th>
<th>URL</th>
<th>Error</th>
</thead>
<tbody>
{{#each api.log as |logentry|}}
<tr>
<td>{{logentry.time}}</td>
<td class="user-image">
<div class="user-image-inner">
2023-07-10 08:55:54 +02:00
<a
href={{logentry.userpath}}
data-user-card={{logentry.username}}
>{{avatar logentry imageSize="medium"}}</a>
2021-04-12 16:19:53 +02:00
</div>
</td>
<td>{{logentry.status}}</td>
<td>{{logentry.url}}</td>
<td>{{logentry.error}}</td>
</tr>
{{/each}}
</tbody>
2020-04-22 15:03:18 +02:00
</table>
</div>
2023-07-10 08:55:54 +02:00
</div>