@@ -15,41 +15,100 @@ <h2>
1515 < mat-option value ="https "> https</ mat-option >
1616 </ mat-select >
1717 </ mat-form-field >
18+
19+ < mat-expansion-panel [expanded] ="true " class ="detail_panel ">
20+ < mat-expansion-panel-header >
21+ < mat-panel-title >
22+ < h3 i18n ="@@routing_configuration "> Routing Configuration</ h3 >
23+ </ mat-panel-title >
24+ </ mat-expansion-panel-header >
25+
26+ < div class ="description_block ">
27+ < div i18n ="@@reference_configuration "> Reference configuration</ div >
28+ < mat-list-item >
29+ < span i18n ="@@request_location "> Request Location</ span > :
30+ < span i18n ="@@default "> default</ span > < span class ="highlighted "> /</ span > ,
31+ < span i18n ="@@matching_priority "> include 3 patterns, matching priority</ span > :
32+ < span class ="highlighted "> /abc/</ span > > < span class ="highlighted "> .php</ span > > < span class ="highlighted "> /</ span > ,
33+ < span i18n ="@@more_info_of_request_location "> subdirectory /abc/def/ is not supported.</ span >
34+ </ mat-list-item >
35+ < mat-list-item >
36+ < span i18n ="@@routing_type "> Routing Type</ span > :
37+ < span i18n ="@@default "> default</ span > < span class ="highlighted "> Reverse_Proxy</ span > ,
38+ < span i18n ="@@more_info_of_routing_type "> Local_FastCGI used for PHP, Python etc., Static_Website used for local static resources without backend servers. </ span >
39+ </ mat-list-item >
40+ < mat-list-item >
41+ < span i18n ="@@destination "> Destination</ span > :
42+ < span i18n ="@@default "> default</ span > < span class ="highlighted "> IP:Port</ span > ,
43+ < span i18n ="@@more_info_of_destination "> or default file (such as index.html) if the routing type is Static_Website. </ span >
44+ </ mat-list-item >
45+ < mat-list-item >
46+ < span i18n ="@@backend_routing "> Backend Routing</ span > :
47+ < span i18n ="@@default "> default</ span > < span class ="highlighted "> /</ span > ,
48+ < span i18n ="@@more_info_of_backend_routing "> using /xyz/ if the backend is using different URL Path, or absolute path (/path/to/site_dir/) if the routing type is Static_Website or Local_FastCGI. </ span >
49+ </ mat-list-item >
50+ </ div >
1851
19- < mat-form-field *ngFor ="let dest of application.destinations;let i=index; trackBy:trackByFn ">
20- < input matInput i18n-placeholder ="@@app_destination " [(ngModel)] ="application.destinations[i].destination " [readonly] ="readOnlyValue " placeholder ="Destination( IPv4 Example: 10.10.10.10:80 , IPv6 Example: [::1%lo]:8080 ) " required />
21- < mat-icon matSuffix i18n-matTooltip ="@@add_destination " matTooltip ="Add new destination " matTooltipPosition ="left " (click) ="addDestination() "> add_circle_outline</ mat-icon >
22- < mat-icon *ngIf ="application.destinations.length>1 " matSuffix (click) ="delDestination(i) "> remove_circle_outline</ mat-icon >
23- </ mat-form-field >
24-
25- < div class ="inner-container " *ngFor ="let domain of application.domains; let i=index; trackBy:trackByFn ">
26- < mat-form-field >
52+ < div class ="inline-form " *ngFor ="let dest of application.destinations;let i=index; trackBy:trackByFn ">
53+ < mat-form-field class ="inline-form-field-20 ">
54+ < mat-label i18n ="@@request_location "> Request Location</ mat-label >
55+ < input matInput [(ngModel)] ="application.destinations[i].request_route " [readonly] ="readOnlyValue " required />
56+ </ mat-form-field >
57+ < mat-form-field class ="inline-form-field-20 ">
58+ < mat-label i18n ="@@routing_type "> Routing Type</ mat-label >
59+ < mat-select [(ngModel)] ="application.destinations[i].route_type " [disabled] ="readOnlyValue " required >
60+ < mat-option *ngFor ="let route_type of enum_route_types; " [value] ="route_type.value ">
61+ {{ route_type.name }}
62+ </ mat-option >
63+ </ mat-select >
64+ </ mat-form-field >
65+ < mat-form-field class ="inline-form-field-25 ">
66+ < mat-label i18n ="@@destination "> Destination</ mat-label >
67+ < input matInput [(ngModel)] ="application.destinations[i].destination " [readonly] ="readOnlyValue " required />
68+ </ mat-form-field >
69+ < mat-form-field class ="inline-form-field-25 ">
70+ < mat-label i18n ="@@backend_routing "> Backend Routing</ mat-label >
71+ < input matInput [(ngModel)] ="application.destinations[i].backend_route " [readonly] ="readOnlyValue " required />
72+ < mat-icon matSuffix i18n-matTooltip ="@@add_new_routing " class ="clickable_btn " matTooltip ="Add new routing " matTooltipPosition ="left " (click) ="addDestination() "> add_circle_outline</ mat-icon >
73+ < mat-icon *ngIf ="application.destinations.length>1 " matSuffix class ="clickable_btn " (click) ="delDestination(i) "> remove_circle_outline</ mat-icon >
74+ </ mat-form-field >
75+
76+ </ div >
77+ </ mat-expansion-panel >
78+
79+ < mat-expansion-panel [expanded] ="true " class ="detail_panel ">
80+ < mat-expansion-panel-header >
81+ < mat-panel-title i18n ="@@domain_configuration "> Domain Configuration</ mat-panel-title >
82+ </ mat-expansion-panel-header >
83+ < div class ="inline-form " *ngFor ="let domain of application.domains; let i=index; trackBy:trackByFn ">
84+ < mat-form-field class ="inline-form-field-20 ">
2785 < mat-icon matPrefix > language</ mat-icon >
2886 < input matInput i18n-placeholder ="@@domain_name " placeholder ="Domain name (editable) " [(ngModel)] ="application.domains[i].name " [disabled] ="readOnlyValue " list ="domains " required >
2987 < datalist id ="domains ">
3088 < option *ngFor ="let domain of applicationService.domains; "> {{domain.name}}</ option >
3189 </ datalist >
3290 </ mat-form-field >
3391
34- < mat-form-field >
92+ < mat-form-field class =" inline-form-field-20 " >
3593 < mat-icon matPrefix > lock_outline</ mat-icon >
3694 < mat-select i18n-placeholder ="@@certificate " placeholder ="Certificate " [(ngModel)] ="application.domains[i].cert_id " [disabled] ="readOnlyValue " required >
3795 < mat-option *ngFor ="let certificate of optionCertificates; " [value] ="certificate.id ">
3896 {{certificate.common_name}}
3997 </ mat-option >
4098 </ mat-select >
4199 </ mat-form-field >
42- < mat-form-field >
100+ < mat-form-field class =" inline-form-field-50 " >
43101 < mat-checkbox matPrefix i18n ="@@redirect " [(ngModel)] ="application.domains[i].redirect " [disabled] ="readOnlyValue ">
44102 Redirect to (301):
45103 </ mat-checkbox >
46104 < input matInput placeholder ="https://www.your-domain.com/ " [(ngModel)] ="application.domains[i].location " [disabled] ="readOnlyValue ">
105+ < mat-icon matSuffix i18n-matTooltip ="@@add_domain " matTooltip ="Add new domain " matTooltipPosition ="right " (click) ="addDomain() "> add_circle_outline</ mat-icon >
106+ < mat-icon matSuffix *ngIf ="application.domains.length>1 " (click) ="delDomain(i) "> remove_circle_outline</ mat-icon >
47107 </ mat-form-field >
48- < div >
49- < mat-icon i18n-matTooltip ="@@add_domain " matTooltip ="Add new domain " matTooltipPosition ="right " (click) ="addDomain() "> add_circle_outline</ mat-icon >
50- < mat-icon *ngIf ="application.domains.length>1 " (click) ="delDomain(i) "> remove_circle_outline</ mat-icon >
51- </ div >
52108 </ div >
109+ </ mat-expansion-panel >
110+
111+
53112
54113 < mat-form-field >
55114 < mat-select [(ngModel)] ="application.ip_method " i18n-placeholder ="@@ip_for_waf "
80139
81140 < section >
82141 < mat-checkbox i18n ="@@oauth_required " [(ngModel)] ="application.oauth_required " [disabled] ="readOnlyValue ">
83- Enable OAuth2 (Only for Internal Employees and Internal Applications. {{ oauth.display_name }})
142+ Enable LDAP or OAuth2 (Depend on configuration file and only for Internal Employees and Internal Applications. {{ oauth.display_name }})
84143 </ mat-checkbox >
85144 </ section >
86145
0 commit comments