|  | @@ -114,15 +114,12 @@
 | 
	
		
			
				|  |  |                                      <a-list-item>
 | 
	
		
			
				|  |  |                                          <a-row style="padding: 20px">
 | 
	
		
			
				|  |  |                                              <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | -                                                <a-list-item-meta 
 | 
	
		
			
				|  |  | -                                                    title='{{ i18n "pages.xray.FreedomStrategy" }}'
 | 
	
		
			
				|  |  | -                                                    description='{{ i18n "pages.xray.FreedomStrategyDesc" }}'/>
 | 
	
		
			
				|  |  | +                                                <a-list-item-meta title='{{ i18n "pages.xray.FreedomStrategy" }}'
 | 
	
		
			
				|  |  | +                                                    description='{{ i18n "pages.xray.FreedomStrategyDesc" }}' />
 | 
	
		
			
				|  |  |                                              </a-col>
 | 
	
		
			
				|  |  |                                              <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  |                                                  <template>
 | 
	
		
			
				|  |  | -                                                    <a-select
 | 
	
		
			
				|  |  | -                                                        v-model="freedomStrategy"
 | 
	
		
			
				|  |  | -                                                        :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  | +                                                    <a-select v-model="freedomStrategy" :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  |                                                          style="width: 100%">
 | 
	
		
			
				|  |  |                                                          <a-select-option v-for="s in OutboundDomainStrategies" :value="s">[[ s ]]</a-select-option>
 | 
	
		
			
				|  |  |                                                      </a-select>
 | 
	
	
		
			
				|  | @@ -132,33 +129,37 @@
 | 
	
		
			
				|  |  |                                      </a-list-item>
 | 
	
		
			
				|  |  |                                      <a-row style="padding: 20px">
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | -                                            <a-list-item-meta 
 | 
	
		
			
				|  |  | -                                                title='{{ i18n "pages.xray.RoutingStrategy" }}'
 | 
	
		
			
				|  |  | -                                                description='{{ i18n "pages.xray.RoutingStrategyDesc" }}'/>
 | 
	
		
			
				|  |  | +                                            <a-list-item-meta title='{{ i18n "pages.xray.RoutingStrategy" }}'
 | 
	
		
			
				|  |  | +                                                description='{{ i18n "pages.xray.RoutingStrategyDesc" }}' />
 | 
	
		
			
				|  |  |                                          </a-col>
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  |                                              <template>
 | 
	
		
			
				|  |  | -                                                <a-select
 | 
	
		
			
				|  |  | -                                                    v-model="routingStrategy"
 | 
	
		
			
				|  |  | -                                                    :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  | +                                                <a-select v-model="routingStrategy" :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  |                                                      style="width: 100%">
 | 
	
		
			
				|  |  |                                                      <a-select-option v-for="s in routingDomainStrategies" :value="s">[[ s ]]</a-select-option>
 | 
	
		
			
				|  |  |                                                  </a-select>
 | 
	
		
			
				|  |  |                                              </template>
 | 
	
		
			
				|  |  |                                          </a-col>
 | 
	
		
			
				|  |  |                                      </a-row>
 | 
	
		
			
				|  |  | +                                    </a-list-item>
 | 
	
		
			
				|  |  | +                                </a-collapse-panel>
 | 
	
		
			
				|  |  | +                                <a-collapse-panel header='{{ i18n "pages.xray.logConfigs" }}'>
 | 
	
		
			
				|  |  | +                                    <a-row :xs="24" :sm="24" :lg="12">
 | 
	
		
			
				|  |  | +                                        <a-alert type="warning" style="text-align: center;">
 | 
	
		
			
				|  |  | +                                            <template slot="message">
 | 
	
		
			
				|  |  | +                                                <a-icon type="exclamation-circle" theme="filled" style="color: #FFA031"></a-icon>
 | 
	
		
			
				|  |  | +                                                {{ i18n "pages.xray.logConfigsDesc" }}
 | 
	
		
			
				|  |  | +                                            </template>
 | 
	
		
			
				|  |  | +                                        </a-alert>
 | 
	
		
			
				|  |  | +                                    </a-row>
 | 
	
		
			
				|  |  |                                      <a-row style="padding: 20px">
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | -                                            <a-list-item-meta 
 | 
	
		
			
				|  |  | -                                                title='{{ i18n "pages.xray.logLevel" }}'
 | 
	
		
			
				|  |  | -                                                description='{{ i18n "pages.xray.logLevelDesc" }}'/>
 | 
	
		
			
				|  |  | +                                            <a-list-item-meta title='{{ i18n "pages.xray.logLevel" }}'
 | 
	
		
			
				|  |  | +                                                description='{{ i18n "pages.xray.logLevelDesc" }}' />
 | 
	
		
			
				|  |  |                                          </a-col>
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  |                                              <template>
 | 
	
		
			
				|  |  | -                                                <a-select
 | 
	
		
			
				|  |  | -                                                    v-model="setLogLevel"
 | 
	
		
			
				|  |  | -                                                    :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  | -                                                    style="width: 100%">
 | 
	
		
			
				|  |  | +                                                <a-select v-model="setLogLevel" :dropdown-class-name="themeSwitcher.currentTheme" style="width: 100%">
 | 
	
		
			
				|  |  |                                                      <a-select-option v-for="s in logLevel" :value="s">[[ s ]]</a-select-option>
 | 
	
		
			
				|  |  |                                                  </a-select>
 | 
	
		
			
				|  |  |                                              </template>
 | 
	
	
		
			
				|  | @@ -166,22 +167,31 @@
 | 
	
		
			
				|  |  |                                      </a-row>
 | 
	
		
			
				|  |  |                                      <a-row style="padding: 20px">
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | -                                            <a-list-item-meta 
 | 
	
		
			
				|  |  | -                                                title='{{ i18n "pages.xray.accessLog" }}'
 | 
	
		
			
				|  |  | -                                                description='{{ i18n "pages.xray.accessLogDesc" }}'/>
 | 
	
		
			
				|  |  | +                                            <a-list-item-meta title='{{ i18n "pages.xray.accessLog" }}'
 | 
	
		
			
				|  |  | +                                                description='{{ i18n "pages.xray.accessLogDesc" }}' />
 | 
	
		
			
				|  |  |                                          </a-col>
 | 
	
		
			
				|  |  |                                          <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  |                                              <template>
 | 
	
		
			
				|  |  | -                                                <a-select
 | 
	
		
			
				|  |  | -                                                    v-model="setAccessLog"
 | 
	
		
			
				|  |  | -                                                    :dropdown-class-name="themeSwitcher.currentTheme"
 | 
	
		
			
				|  |  | -                                                    style="width: 100%">
 | 
	
		
			
				|  |  | +                                                <a-select v-model="accessLog" :dropdown-class-name="themeSwitcher.currentTheme" style="width: 100%">
 | 
	
		
			
				|  |  |                                                      <a-select-option v-for="s in access" :value="s">[[ s ]]</a-select-option>
 | 
	
		
			
				|  |  |                                                  </a-select>
 | 
	
		
			
				|  |  |                                              </template>
 | 
	
		
			
				|  |  |                                          </a-col>
 | 
	
		
			
				|  |  |                                      </a-row>
 | 
	
		
			
				|  |  | -                                </a-list-item>
 | 
	
		
			
				|  |  | +                                    <a-row style="padding: 20px">
 | 
	
		
			
				|  |  | +                                        <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | +                                            <a-list-item-meta title='{{ i18n "pages.xray.errorLog" }}'
 | 
	
		
			
				|  |  | +                                                description='{{ i18n "pages.xray.errorLogDesc" }}' />
 | 
	
		
			
				|  |  | +                                        </a-col>
 | 
	
		
			
				|  |  | +                                        <a-col :lg="24" :xl="12">
 | 
	
		
			
				|  |  | +                                            <template>
 | 
	
		
			
				|  |  | +                                                <a-select v-model="errorLog" :dropdown-class-name="themeSwitcher.currentTheme" style="width: 100%">
 | 
	
		
			
				|  |  | +                                                    <a-select-option v-for="s in error" :value="s">[[ s ]]</a-select-option>
 | 
	
		
			
				|  |  | +                                                </a-select>
 | 
	
		
			
				|  |  | +                                            </template>
 | 
	
		
			
				|  |  | +                                        </a-col>
 | 
	
		
			
				|  |  | +                                    </a-row>
 | 
	
		
			
				|  |  | +                                    </a-list-item>
 | 
	
		
			
				|  |  |                                  </a-collapse-panel>
 | 
	
		
			
				|  |  |                                  <a-collapse-panel header='{{ i18n "pages.xray.blockConfigs"}}'>
 | 
	
		
			
				|  |  |                                      <a-row :xs="24" :sm="24" :lg="12">
 | 
	
	
		
			
				|  | @@ -633,6 +643,7 @@
 | 
	
		
			
				|  |  |              routingDomainStrategies: ["AsIs", "IPIfNonMatch", "IPOnDemand"],
 | 
	
		
			
				|  |  |              logLevel: ["none" , "debug" , "info" , "warning", "error"],
 | 
	
		
			
				|  |  |              access: ["none" , "./access.log" ],
 | 
	
		
			
				|  |  | +            error: ["none" , "./error.log" ],
 | 
	
		
			
				|  |  |              settingsData: {
 | 
	
		
			
				|  |  |                  protocols: {
 | 
	
		
			
				|  |  |                      bittorrent: ["bittorrent"],
 | 
	
	
		
			
				|  | @@ -1344,9 +1355,9 @@
 | 
	
		
			
				|  |  |                      this.templateSettings = newTemplateSettings;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | -            setAccessLog: {
 | 
	
		
			
				|  |  | +            accessLog: {
 | 
	
		
			
				|  |  |                  get: function () {
 | 
	
		
			
				|  |  | -                    if (!this.templateSettings || !this.templateSettings.log || !this.templateSettings.log.access) return "none";
 | 
	
		
			
				|  |  | +                    if (!this.templateSettings || !this.templateSettings.log || !this.templateSettings.log.access) return "";
 | 
	
		
			
				|  |  |                      return this.templateSettings.log.access;
 | 
	
		
			
				|  |  |                  },
 | 
	
		
			
				|  |  |                  set: function (newValue) {
 | 
	
	
		
			
				|  | @@ -1355,6 +1366,17 @@
 | 
	
		
			
				|  |  |                      this.templateSettings = newTemplateSettings;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              },
 | 
	
		
			
				|  |  | +            errorLog: {
 | 
	
		
			
				|  |  | +                get: function () {
 | 
	
		
			
				|  |  | +                    if (!this.templateSettings || !this.templateSettings.log || !this.templateSettings.log.error) return "";
 | 
	
		
			
				|  |  | +                    return this.templateSettings.log.error;
 | 
	
		
			
				|  |  | +                },
 | 
	
		
			
				|  |  | +                set: function (newValue) {
 | 
	
		
			
				|  |  | +                    newTemplateSettings = this.templateSettings;
 | 
	
		
			
				|  |  | +                    newTemplateSettings.log.error = newValue;
 | 
	
		
			
				|  |  | +                    this.templateSettings = newTemplateSettings;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            },
 | 
	
		
			
				|  |  |              blockedIPs: {
 | 
	
		
			
				|  |  |                  get: function () {
 | 
	
		
			
				|  |  |                      return this.templateRuleGetter({ outboundTag: "blocked", property: "ip" });
 |