Files
EdgeAdmin/web/public/js/components/server/http-charsets-box.js

67 lines
2.4 KiB
JavaScript
Raw Normal View History

2020-09-20 11:56:49 +08:00
Vue.component("http-charsets-box", {
props: ["v-usual-charsets", "v-all-charsets", "v-charset-config", "v-is-location", "v-is-group"],
2020-09-16 20:29:13 +08:00
data: function () {
2020-09-23 18:43:38 +08:00
let charsetConfig = this.vCharsetConfig
if (charsetConfig == null) {
charsetConfig = {
isPrior: false,
isOn: false,
2020-09-26 11:52:21 +08:00
charset: "",
isUpper: false
2020-09-23 18:43:38 +08:00
}
2020-09-16 20:29:13 +08:00
}
return {
2020-09-26 11:52:21 +08:00
charsetConfig: charsetConfig,
advancedVisible: false
}
},
methods: {
changeAdvancedVisible: function (v) {
this.advancedVisible = v
2020-09-16 20:29:13 +08:00
}
},
template: `<div>
2020-09-23 18:43:38 +08:00
<input type="hidden" name="charsetJSON" :value="JSON.stringify(charsetConfig)"/>
2020-09-16 20:29:13 +08:00
<table class="ui table definition selectable">
<prior-checkbox :v-config="charsetConfig" v-if="vIsLocation || vIsGroup"></prior-checkbox>
<tbody v-show="(!vIsLocation && !vIsGroup) || charsetConfig.isPrior">
2020-09-23 18:43:38 +08:00
<tr>
<td class="title">是否启用</td>
<td>
<div class="ui checkbox">
<input type="checkbox" v-model="charsetConfig.isOn"/>
<label></label>
</div>
</td>
</tr>
</tbody>
<tbody v-show="((!vIsLocation && !vIsGroup) || charsetConfig.isPrior) && charsetConfig.isOn">
2020-09-23 18:43:38 +08:00
<tr>
<td class="title">选择字符编码</td>
<td><select class="ui dropdown" style="width:20em" name="charset" v-model="charsetConfig.charset">
<option value="">[未选择]</option>
<optgroup label="常用字符编码"></optgroup>
<option v-for="charset in vUsualCharsets" :value="charset.charset">{{charset.charset}}{{charset.name}}</option>
<optgroup label="全部字符编码"></optgroup>
<option v-for="charset in vAllCharsets" :value="charset.charset">{{charset.charset}}{{charset.name}}</option>
</select>
</td>
</tr>
</tbody>
<more-options-tbody @change="changeAdvancedVisible" v-if="((!vIsLocation && !vIsGroup) || charsetConfig.isPrior) && charsetConfig.isOn"></more-options-tbody>
<tbody v-show="((!vIsLocation && !vIsGroup) || charsetConfig.isPrior) && charsetConfig.isOn && advancedVisible">
2020-09-26 11:52:21 +08:00
<tr>
<td>字符编码是否大写</td>
<td>
<div class="ui checkbox">
<input type="checkbox" v-model="charsetConfig.isUpper"/>
<label></label>
</div>
<p class="comment">选中后将指定的字符编码转换为大写比如默认为<span class="ui label tiny">utf-8</span><span class="ui label tiny">UTF-8</span></p>
</td>
</tr>
</tbody>
2020-09-16 20:29:13 +08:00
</table>
<div class="margin"></div>
</div>`
})