114 lines
No EOL
5.8 KiB
HTML
114 lines
No EOL
5.8 KiB
HTML
{{define "content"}}
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3 class="card-title">Channel #{{.Channel.ID}}</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<form method="post" action="/admin/channels/{{.Channel.ID}}">
|
|
<div class="mb-3">
|
|
<label class="form-label">Platform</label>
|
|
<input type="text" class="form-control" value="{{.Channel.Platform}}" readonly>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label">Channel ID</label>
|
|
<input type="text" class="form-control" value="{{.Channel.PlatformChannelID}}" readonly>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label">Channel Name</label>
|
|
<input type="text" class="form-control" value="{{.Channel.ChannelName}}" readonly>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-check form-switch">
|
|
<input class="form-check-input" type="checkbox" name="enabled" value="true" {{if .Channel.Enabled}}checked{{end}}>
|
|
<span class="form-check-label">Channel Enabled</span>
|
|
</label>
|
|
<!-- Add a hidden field to ensure a value is sent even when checkbox is unchecked -->
|
|
<input type="hidden" name="form_submitted" value="true">
|
|
</div>
|
|
<div class="form-footer">
|
|
<button type="submit" class="btn btn-primary">Save</button>
|
|
<a href="/admin/channels" class="btn btn-link">Back to Channels</a>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6">
|
|
<div class="card">
|
|
<div class="card-header">
|
|
<h3 class="card-title">Channel Plugins</h3>
|
|
</div>
|
|
<div class="card-body">
|
|
<div class="table-responsive">
|
|
<table class="table table-vcenter card-table">
|
|
<thead>
|
|
<tr>
|
|
<th>Plugin</th>
|
|
<th>Enabled</th>
|
|
<th>Actions</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{{range $pluginID, $channelPlugin := .Channel.Plugins}}
|
|
<tr>
|
|
<td>{{$pluginID}}</td>
|
|
<td>
|
|
{{if $channelPlugin.Enabled}}
|
|
<span class="badge bg-success">Enabled</span>
|
|
{{else}}
|
|
<span class="badge bg-danger">Disabled</span>
|
|
{{end}}
|
|
</td>
|
|
<td>
|
|
<form method="post" action="/admin/channelplugins/{{$channelPlugin.ID}}" class="d-inline">
|
|
<input type="hidden" name="enabled" value="{{if $channelPlugin.Enabled}}false{{else}}true{{end}}">
|
|
<button type="submit" class="btn btn-sm {{if $channelPlugin.Enabled}}btn-danger{{else}}btn-success{{end}}">
|
|
{{if $channelPlugin.Enabled}}Disable{{else}}Enable{{end}}
|
|
</button>
|
|
</form>
|
|
<form method="post" action="/admin/channelplugins/{{$channelPlugin.ID}}/delete" class="d-inline">
|
|
<button type="submit" class="btn btn-danger btn-sm"
|
|
onclick="return confirm('Are you sure you want to remove this plugin?')">Remove</button>
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
{{else}}
|
|
<tr>
|
|
<td colspan="3" class="text-center">No plugins for this channel</td>
|
|
</tr>
|
|
{{end}}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<h4>Add Plugin</h4>
|
|
<form method="post" action="/admin/channelplugins">
|
|
<input type="hidden" name="channel_id" value="{{.Channel.ID}}">
|
|
<div class="mb-3">
|
|
<label class="form-label">Plugin</label>
|
|
<select name="plugin_id" class="form-select" required>
|
|
<option value="">Select a plugin</option>
|
|
{{range $id, $plugin := .Plugins}}
|
|
<option value="{{$id}}">{{$plugin.GetName}} ({{$id}})</option>
|
|
{{end}}
|
|
</select>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-check form-switch">
|
|
<input class="form-check-input" type="checkbox" name="enabled" value="y">
|
|
<span class="form-check-label">Enable plugin</span>
|
|
</label>
|
|
</div>
|
|
<div class="form-footer">
|
|
<button type="submit" class="btn btn-primary">Add Plugin</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{end}} |