58 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package Acme
 | 
						|
 | 
						|
import (
 | 
						|
	"SafeLine-Acme/internal/app/logger"
 | 
						|
	"reflect"
 | 
						|
)
 | 
						|
 | 
						|
func (acme *Object) CheckFile() bool {
 | 
						|
	var flag = true
 | 
						|
	if acme.Email == "" {
 | 
						|
		logger.Warning.Printf("未设置 %s证书申请邮箱%s: 请检查配置文件中的 %sAcme.Email%s 参数", logger.Cyan, logger.Reset, logger.Yellow, logger.Reset)
 | 
						|
		flag = false
 | 
						|
	}
 | 
						|
 | 
						|
	v := reflect.ValueOf(acme.DNSProvider)
 | 
						|
	var dns = true
 | 
						|
	for i := 0; i < v.NumField(); i++ {
 | 
						|
		field := v.Field(i)
 | 
						|
		if field.Kind() == reflect.Struct {
 | 
						|
			for ii := 0; ii < field.NumField(); ii++ {
 | 
						|
				if field.Field(ii).String() != "" {
 | 
						|
					dns = false
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
	if dns {
 | 
						|
		logger.Warning.Printf("未设置 %sDNS服务提供商%s: 请检查配置文件中的 %sAcme.DNSProvider%s 参数", logger.Cyan, logger.Reset, logger.Yellow, logger.Reset)
 | 
						|
	}
 | 
						|
	return flag
 | 
						|
}
 | 
						|
 | 
						|
func (acme *Object) CheckCommand() bool {
 | 
						|
	var flag = true
 | 
						|
	if acme.Email == "" {
 | 
						|
		logger.Warning.Printf("未设置 %s证书申请邮箱%s: 请检查命令中的 %s-e%s 参数", logger.Cyan, logger.Reset, logger.Yellow, logger.Reset)
 | 
						|
		flag = false
 | 
						|
	}
 | 
						|
 | 
						|
	v := reflect.ValueOf(acme.DNSProvider).Elem()
 | 
						|
 | 
						|
	var dns = true
 | 
						|
	for i := 0; i < v.NumField(); i++ {
 | 
						|
		field := v.Field(i)
 | 
						|
		if field.Kind() == reflect.Struct {
 | 
						|
			for ii := 0; ii < field.NumField(); ii++ {
 | 
						|
				if field.Field(ii).String() != "" {
 | 
						|
					dns = false
 | 
						|
				}
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
	if dns {
 | 
						|
		logger.Warning.Printf("未设置 %sDNS服务提供商%s: 请检查命令中的 %s-k%s 参数", logger.Cyan, logger.Reset, logger.Yellow, logger.Reset)
 | 
						|
	}
 | 
						|
	return flag
 | 
						|
}
 |