|
@@ -111,8 +111,8 @@ function interactive_site_details {
|
111
|
111
|
site_name_upper=${site_name^^}
|
112
|
112
|
|
113
|
113
|
SITE_BACKTITLE=$"Freedombone Configuration"
|
114
|
|
- SITE_CONFIG_TITLE=$"${site_name} Configuration"
|
115
|
|
- SITE_FORM_TEXT=$"\nPlease enter your ${site_name} details.\n\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:"
|
|
114
|
+ SITE_CONFIG_TITLE=$"${site_name^} Configuration"
|
|
115
|
+ SITE_FORM_TEXT=$"\nPlease enter your ${site_name^} details.\n\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:"
|
116
|
116
|
SITE_DOMAIN_NAME=
|
117
|
117
|
SITE_CODE=
|
118
|
118
|
SITE_DETAILS_COMPLETE=
|
|
@@ -168,4 +168,72 @@ function interactive_site_details {
|
168
|
168
|
fi
|
169
|
169
|
}
|
170
|
170
|
|
|
171
|
+function interactive_site_details_with_title {
|
|
172
|
+ site_name="${1}"
|
|
173
|
+
|
|
174
|
+ SITE_BACKTITLE=$"Freedombone Configuration"
|
|
175
|
+ SITE_CONFIG_TITLE=$"${site_name^} Configuration"
|
|
176
|
+ SITE_FORM_TEXT=$"\nPlease enter your ${site_name^} details.\n\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:"
|
|
177
|
+ SITE_TITLE=$2
|
|
178
|
+ SITE_DOMAIN_NAME=$3
|
|
179
|
+ SITE_CODE=$4
|
|
180
|
+ SITE_DETAILS_COMPLETE=
|
|
181
|
+ while [ ! $SITE_DETAILS_COMPLETE ]
|
|
182
|
+ do
|
|
183
|
+ data=$(tempfile 2>/dev/null)
|
|
184
|
+ trap "rm -f $data" 0 1 2 5 15
|
|
185
|
+ if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
|
186
|
+ dialog --backtitle $"Freedombone Configuration" \
|
|
187
|
+ --title "$SITE_BACKTITLE" \
|
|
188
|
+ --form "$SITE_FORM_TEXT" 14 55 4 \
|
|
189
|
+ $"Title:" 1 1 "$(grep '$SITE_TITLE' temp.cfg | awk -F '=' '{print $2}')" 1 16 33 40 \
|
|
190
|
+ $"Domain:" 2 1 "$(grep '$SITE_DOMAIN_NAME' temp.cfg | awk -F '=' '{print $2}')" 2 16 33 40 \
|
|
191
|
+ $"Code:" 3 1 "$(grep '$SITE_CODE' temp.cfg | awk -F '=' '{print $2}')" 3 16 33 255 \
|
|
192
|
+ 2> $data
|
|
193
|
+ else
|
|
194
|
+ dialog --backtitle "$SITE_BACKTITLE" \
|
|
195
|
+ --title "$SITE_CONFIG_TITLE" \
|
|
196
|
+ --form "$SITE_FORM_TEXT" 11 55 3 \
|
|
197
|
+ $"Title:" 1 1 "$(grep '$SITE_TITLE' temp.cfg | awk -F '=' '{print $2}')" 1 16 33 40 \
|
|
198
|
+ $"Domain:" 2 1 "$(grep '$SITE_DOMAIN_NAME' temp.cfg | awk -F '=' '{print $2}')" 2 16 33 40 \
|
|
199
|
+ 2> $data
|
|
200
|
+ fi
|
|
201
|
+ sel=$?
|
|
202
|
+ case $sel in
|
|
203
|
+ 1) exit 1;;
|
|
204
|
+ 255) exit 1;;
|
|
205
|
+ esac
|
|
206
|
+ ${!SITE_TITLE}=$(cat $data | sed -n 1p)
|
|
207
|
+ ${!SITE_DOMAIN_NAME}=$(cat $data | sed -n 2p)
|
|
208
|
+ if [ ${!SITE_DOMAIN_NAME} ]; then
|
|
209
|
+ TEST_DOMAIN_NAME=${!SITE_DOMAIN_NAME}
|
|
210
|
+ validate_domain_name
|
|
211
|
+ if [[ $TEST_DOMAIN_NAME != ${!SITE_DOMAIN_NAME} ]]; then
|
|
212
|
+ ${!SITE_DOMAIN_NAME}=
|
|
213
|
+ dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
|
214
|
+ else
|
|
215
|
+ if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
|
216
|
+ ${!SITE_CODE}=$(cat $data | sed -n 3p)
|
|
217
|
+ validate_freedns_code "${!SITE_CODE}"
|
|
218
|
+ if [ ! $VALID_CODE ]; then
|
|
219
|
+ ${!SITE_DOMAIN_NAME}=
|
|
220
|
+ fi
|
|
221
|
+ fi
|
|
222
|
+ fi
|
|
223
|
+ fi
|
|
224
|
+ if [ ${!SITE_TITLE} ]; then
|
|
225
|
+ if [ ${!SITE_DOMAIN_NAME} ]; then
|
|
226
|
+ SITE_DETAILS_COMPLETE="yes"
|
|
227
|
+ fi
|
|
228
|
+ fi
|
|
229
|
+ done
|
|
230
|
+
|
|
231
|
+ # save the results in the config file
|
|
232
|
+ write_config_param "$SITE_TITLE" "${!SITE_TITLE}"
|
|
233
|
+ write_config_param "$SITE_DOMAIN_NAME" "${!SITE_DOMAIN_NAME}"
|
|
234
|
+ if [ ${!SITE_CODE} ]; then
|
|
235
|
+ write_config_param "$SITE_CODE" "${!SITE_CODE}"
|
|
236
|
+ fi
|
|
237
|
+}
|
|
238
|
+
|
171
|
239
|
# NOTE: deliberately no exit 0
|