93 lines
		
	
	
		
			No EOL
		
	
	
		
			4.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			No EOL
		
	
	
		
			4.8 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
{{define "content"}}
 | 
						|
<div class="row">
 | 
						|
    <div class="col-md-12">
 | 
						|
        <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>ID</th>
 | 
						|
                                <th>Channel</th>
 | 
						|
                                <th>Plugin</th>
 | 
						|
                                <th>Enabled</th>
 | 
						|
                                <th>Actions</th>
 | 
						|
                            </tr>
 | 
						|
                        </thead>
 | 
						|
                        <tbody>
 | 
						|
                            {{range .Channels}}
 | 
						|
                                {{range $pluginID, $channelPlugin := .Plugins}}
 | 
						|
                                <tr>
 | 
						|
                                    <td>{{$channelPlugin.ID}}</td>
 | 
						|
                                    <td><a href="/admin/channels/{{.ID}}">{{.ChannelName}}</a></td>
 | 
						|
                                    <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>
 | 
						|
                                {{end}}
 | 
						|
                            {{else}}
 | 
						|
                            <tr>
 | 
						|
                                <td colspan="5" class="text-center">No channel plugins found</td>
 | 
						|
                            </tr>
 | 
						|
                            {{end}}
 | 
						|
                        </tbody>
 | 
						|
                    </table>
 | 
						|
                </div>
 | 
						|
 | 
						|
                <hr>
 | 
						|
 | 
						|
                <h4>Add Plugin to Channel</h4>
 | 
						|
                <form method="post" action="/admin/channelplugins">
 | 
						|
                    <div class="mb-3">
 | 
						|
                        <label class="form-label">Channel</label>
 | 
						|
                        <select name="channel_id" class="form-select" required>
 | 
						|
                            <option value="">Select a channel</option>
 | 
						|
                            {{range .Channels}}
 | 
						|
                            <option value="{{.ID}}">{{.ChannelName}} ({{.Platform}}:{{.PlatformChannelID}})</option>
 | 
						|
                            {{end}}
 | 
						|
                        </select>
 | 
						|
                    </div>
 | 
						|
                    <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}} |