1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <div class="standardContainer">
- <div class="ui basic segment">
- <h2>Virtual Directory</h2>
- <p>A virtual directory is a consolidated view of multiple directories that provides a unified entry point for users to access disparate sources.</p>
- </div>
- <div style="width: 100%; overflow-x: auto; margin-bottom: 1em;">
- <table class="ui celled sortable unstackable compact table">
- <thead>
- <tr>
- <th>Virtual Directory</th>
- <th>Proxy To</th>
- <th>TLS/SSL Verification</th>
- <th>Basic Auth</th>
- <th class="no-sort" style="min-width: 7.2em;">Actions</th>
- </tr>
- </thead>
- <tbody id="vdirList">
- <tr>
- <td data-label=""><button class="ui circular mini red basic button"><i class="remove icon"></i> Remove Proxy</button></td>
- </tr>
- </tbody>
- </table>
- </div>
- <button class="ui icon right floated basic button" onclick="listVdirs();"><i class="green refresh icon"></i> Refresh</button>
- <br><br>
- </div>
- <script>
- //Virtual directories functions
- function listVdirs(){
- $.get("/api/proxy/list?type=vdir", function(data){
- $("#vdirList").html(``);
- if (data.error !== undefined){
- $("#vdirList").append(`<tr>
- <td data-label="" colspan="3"><i class="remove icon"></i> ${data.error}</td>
- </tr>`);
- }else if (data.length == 0){
- $("#vdirList").append(`<tr>
- <td data-label="" colspan="3"><i class="checkmark icon"></i> No Virtual Directory Record</td>
- </tr>`);
- }else{
- data.forEach(vdir => {
- let tlsIcon = "";
- let vdirData = encodeURIComponent(JSON.stringify(vdir));
- if (vdir.RequireTLS){
- tlsIcon = `<i class="green lock icon" title="TLS Mode"></i>`;
- }
- let tlsVerificationField = "";
- if (vdir.RequireTLS){
- tlsVerificationField = !vdir.SkipCertValidations?`<i class="ui green check icon"></i>`:`<i class="ui yellow exclamation circle icon" title="TLS/SSL Verification will be skipped on this host"></i>`
- }else{
- tlsVerificationField = "N/A"
- }
- $("#vdirList").append(`<tr eptuuid="${vdir.RootOrMatchingDomain}" payload="${vdirData}" class="vdirEntry">
- <td data-label="" editable="false">${vdir.RootOrMatchingDomain}</td>
- <td data-label="" editable="true" datatype="domain">${vdir.Domain} ${tlsIcon}</td>
- <td data-label="" editable="true" datatype="skipver">${tlsVerificationField}</td>
- <td data-label="" editable="true" datatype="basicauth">${vdir.RequireBasicAuth?`<i class="ui green check icon"></i>`:`<i class="ui grey remove icon"></i>`}</td>
- <td class="center aligned" editable="true" datatype="action" data-label="">
- <button class="ui circular mini basic icon button editBtn" onclick='editEndpoint("vdir","${vdir.RootOrMatchingDomain}")'><i class="edit icon"></i></button>
- <button class="ui circular mini red basic icon button" onclick='deleteEndpoint("vdir","${vdir.RootOrMatchingDomain}")'><i class="trash icon"></i></button>
- </td>
- </tr>`);
- });
- }
- });
- }
- //Bind on tab switch events
- tabSwitchEventBind["vdir"] = function(){
- listVdirs();
- }
- </script>
|