mirror of
				https://github.com/TeaOSLab/EdgeAdmin.git
				synced 2025-11-04 13:10:26 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			105 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
Vue.component("http-cache-refs-config-box", {
 | 
						|
	props: ["v-cache-refs"],
 | 
						|
	data: function () {
 | 
						|
		let refs = this.vCacheRefs
 | 
						|
		if (refs == null) {
 | 
						|
			refs = []
 | 
						|
		}
 | 
						|
		return {
 | 
						|
			refs: refs
 | 
						|
		}
 | 
						|
	},
 | 
						|
	methods: {
 | 
						|
		addRef: function () {
 | 
						|
			window.UPDATING_CACHE_REF = null
 | 
						|
 | 
						|
			let width = window.innerWidth
 | 
						|
			if (width > 1024) {
 | 
						|
				width = 1024
 | 
						|
			}
 | 
						|
			let height = window.innerHeight
 | 
						|
			if (height > 500) {
 | 
						|
				height = 500
 | 
						|
			}
 | 
						|
			let that = this
 | 
						|
			teaweb.popup("/servers/server/settings/cache/createPopup", {
 | 
						|
				width: width + "px",
 | 
						|
				height: height + "px",
 | 
						|
				callback: function (resp) {
 | 
						|
					that.refs.push(resp.data.cacheRef)
 | 
						|
				}
 | 
						|
			})
 | 
						|
		},
 | 
						|
		updateRef: function (index, cacheRef) {
 | 
						|
			window.UPDATING_CACHE_REF = cacheRef
 | 
						|
 | 
						|
			let width = window.innerWidth
 | 
						|
			if (width > 1024) {
 | 
						|
				width = 1024
 | 
						|
			}
 | 
						|
			let height = window.innerHeight
 | 
						|
			if (height > 500) {
 | 
						|
				height = 500
 | 
						|
			}
 | 
						|
			let that = this
 | 
						|
			teaweb.popup("/servers/server/settings/cache/createPopup", {
 | 
						|
				width: width + "px",
 | 
						|
				height: height + "px",
 | 
						|
				callback: function (resp) {
 | 
						|
					Vue.set(that.refs, index, resp.data.cacheRef)
 | 
						|
				}
 | 
						|
			})
 | 
						|
		},
 | 
						|
		removeRef: function (index) {
 | 
						|
			let that = this
 | 
						|
			teaweb.confirm("确定要删除此缓存设置吗?", function () {
 | 
						|
				that.refs.$remove(index)
 | 
						|
			})
 | 
						|
		},
 | 
						|
		timeUnitName: function (unit) {
 | 
						|
			switch (unit) {
 | 
						|
				case "ms":
 | 
						|
					return "毫秒"
 | 
						|
				case "second":
 | 
						|
					return "秒"
 | 
						|
				case "minute":
 | 
						|
					return "分钟"
 | 
						|
				case "hour":
 | 
						|
					return "小时"
 | 
						|
				case "day":
 | 
						|
					return "天"
 | 
						|
				case "week":
 | 
						|
					return "周 "
 | 
						|
			}
 | 
						|
			return unit
 | 
						|
		}
 | 
						|
	},
 | 
						|
	template: `<div>
 | 
						|
	<input type="hidden" name="refsJSON" :value="JSON.stringify(refs)"/>
 | 
						|
	
 | 
						|
	<div>
 | 
						|
		<table class="ui table selectable celled" v-show="refs.length > 0">
 | 
						|
			<thead>
 | 
						|
				<tr>
 | 
						|
					<th>缓存条件</th>
 | 
						|
					<th class="width10">缓存时间</th>
 | 
						|
					<th class="two op">操作</th>
 | 
						|
				</tr>
 | 
						|
				<tr v-for="(cacheRef, index) in refs">
 | 
						|
					<td>
 | 
						|
						<http-request-conds-view :v-conds="cacheRef.conds"></http-request-conds-view>
 | 
						|
					</td>
 | 
						|
					<td>{{cacheRef.life.count}} {{timeUnitName(cacheRef.life.unit)}}</td>
 | 
						|
					<td>
 | 
						|
						<a href="" @click.prevent="updateRef(index, cacheRef)">修改</a>  
 | 
						|
						<a href="" @click.prevent="removeRef(index)">删除</a>
 | 
						|
					</td>
 | 
						|
				</tr>
 | 
						|
			</thead>
 | 
						|
		</table>
 | 
						|
		
 | 
						|
		<button class="ui button tiny" @click.prevent="addRef">+添加缓存设置</button>
 | 
						|
	</div>
 | 
						|
	<div class="margin"></div>
 | 
						|
</div>`
 | 
						|
}) |