@@ -48,28 +48,118 @@ is_dns_template_valid() {
4848is_domain_new () {
4949 type=" $1 "
5050 dom=${2-$domain }
51- web=" $( grep -w $dom $VESTA /data/users/* /web.conf) "
52- dns=" $( grep DOMAIN=' $dom' $VESTA /data/users/* /dns.conf) "
53- mail=" $( grep DOMAIN=' $dom' $VESTA /data/users/* /mail.conf) "
54-
55- if [ -n " $web " ] || [ -n " $dns " ] || [ -n " $mail " ]; then
56- if [ ! -z " $( grep -w $dom $USER_DATA /* .conf) " ]; then
57- c1=$( grep " '$dom '" $USER_DATA /$type .conf)
58- c2=$( grep " '$dom ," $USER_DATA /$type .conf)
59- c3=$( grep " ,$dom ," $USER_DATA /$type .conf)
60- c4=$( grep " ,$dom '" $USER_DATA /$type .conf)
61-
62- if [ -n " $c1 " ] || [ -n " $c2 " ] || [ -n " $c3 " ] || [ -n " $c4 " ]
63- then
51+
52+ web=$( grep " DOMAIN='$dom '" $VESTA /data/users/* /web.conf)
53+ dns=$( grep " DOMAIN='$dom '" $VESTA /data/users/* /dns.conf)
54+ mail=$( grep " DOMAIN='$dom '" $VESTA /data/users/* /mail.conf)
55+
56+ # Check web domain
57+ if [ ! -z " $web " ] && [ " $type " == ' web' ]; then
58+ echo " Error: domain $dom exist"
59+ log_event " $E_EXISTS " " $EVENT "
60+ exit $E_EXISTS
61+ fi
62+ if [ ! -z " $web " ]; then
63+ web_user=$( echo " $web " | cut -f 7 -d /)
64+ if [ " $web_user " != " $user " ]; then
65+ echo " Error: domain $dom exist"
66+ log_event " $E_EXISTS " " $EVENT "
67+ exit $E_EXISTS
68+ fi
69+ fi
70+
71+ # Check dns domain
72+ if [ ! -z " $dns " ] && [ " $type " == ' dns' ]; then
73+ echo " Error: domain $dom exist"
74+ log_event " $E_EXISTS " " $EVENT "
75+ exit $E_EXISTS
76+ fi
77+ if [ ! -z " $dns " ]; then
78+ dns_user=$( echo " $dns " | cut -f 7 -d /)
79+ if [ " $dns_user " != " $user " ]; then
80+ echo " Error: domain $dom exist"
81+ log_event " $E_EXISTS " " $EVENT "
82+ exit $E_EXISTS
83+ fi
84+ fi
85+
86+ # Check mail domain
87+ if [ ! -z " $mail " ] && [ " $type " == ' mail' ]; then
88+ echo " Error: domain $dom exist"
89+ log_event " $E_EXISTS " " $EVENT "
90+ exit $E_EXISTS
91+ fi
92+ if [ ! -z " $mail " ]; then
93+ mail_user=$( echo " $mail " | cut -f 7 -d /)
94+ if [ " $mail_user " != " $user " ]; then
95+ echo " Error: domain $dom exist"
96+ log_event " $E_EXISTS " " $EVENT "
97+ exit $E_EXISTS
98+ fi
99+ fi
100+
101+ # Check web aliases
102+ web_alias=$( grep -w $dom $VESTA /data/users/* /web.conf)
103+ if [ ! -z " $web_alias " ]; then
104+ c1=$( grep " '$dom '" $VESTA /data/users/* /web.conf | cut -f 7 -d /)
105+ c2=$( grep " '$dom ," $VESTA /data/users/* /web.conf | cut -f 7 -d /)
106+ c3=$( grep " ,$dom ," $VESTA /data/users/* /web.conf | cut -f 7 -d /)
107+ c4=$( grep " ,$dom '" $VESTA /data/users/* /web.conf | cut -f 7 -d /)
108+ if [ ! -z " $c1 " ] && [ " $type " != " web" ]; then
109+ echo " Error: domain $dom exist"
110+ log_event " $E_EXISTS " " $EVENT "
111+ exit $E_EXISTS
112+ fi
113+ if [ ! -z " $c1 " ]; then
114+ c1_user=$( echo " $c1 " | cut -f 7 -d /)
115+ if [ " $c1_user " != " $user " ]; then
64116 echo " Error: domain $dom exist"
65117 log_event " $E_EXISTS " " $EVENT "
66118 exit $E_EXISTS
67119 fi
68- else
120+ fi
121+
122+ if [ ! -z " $c2 " ] && [ " $type " != " web" ]; then
69123 echo " Error: domain $dom exist"
70124 log_event " $E_EXISTS " " $EVENT "
71125 exit $E_EXISTS
72126 fi
127+ if [ ! -z " $c2 " ]; then
128+ c2_user=$( echo " $c2 " | cut -f 7 -d /)
129+ if [ " $c2_user " != " $user " ]; then
130+ echo " Error: domain $dom exist"
131+ log_event " $E_EXISTS " " $EVENT "
132+ exit $E_EXISTS
133+ fi
134+ fi
135+
136+ if [ ! -z " $c3 " ] && [ " $type " != " web" ]; then
137+ echo " Error: domain $dom exist"
138+ log_event " $E_EXISTS " " $EVENT "
139+ exit $E_EXISTS
140+ fi
141+ if [ ! -z " $c3 " ]; then
142+ c3_user=$( echo " $c3 " | cut -f 7 -d /)
143+ if [ " $c3_user " != " $user " ]; then
144+ echo " Error: domain $dom exist"
145+ log_event " $E_EXISTS " " $EVENT "
146+ exit $E_EXISTS
147+ fi
148+ fi
149+
150+ if [ ! -z " $c4 " ] && [ " $type " != " web" ]; then
151+ echo " Error: domain $dom exist"
152+ log_event " $E_EXISTS " " $EVENT "
153+ exit $E_EXISTS
154+ fi
155+ if [ ! -z " $c4 " ]; then
156+ c1_user=$( echo " $c4 " | cut -f 7 -d /)
157+ if [ " $c4_user " != " $user " ]; then
158+ echo " Error: domain $dom exist"
159+ log_event " $E_EXISTS " " $EVENT "
160+ exit $E_EXISTS
161+ fi
162+ fi
73163 fi
74164}
75165
0 commit comments