|
@@ -236,6 +236,113 @@ function reconfigure_gnusocial {
|
236
|
236
|
echo -n ''
|
237
|
237
|
}
|
238
|
238
|
|
|
239
|
+function gnusocial_set_background_image_from_url {
|
|
240
|
+ GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT=
|
|
241
|
+ if [ $GNUSOCIAL_BACKGROUND_IMAGE_URL ]; then
|
|
242
|
+ if [[ $GNUSOCIAL_BACKGROUND_IMAGE_URL == *".jpeg" || $GNUSOCIAL_BACKGROUND_IMAGE_URL == *".jpg" ]]; then
|
|
243
|
+ GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="jpg"
|
|
244
|
+ fi
|
|
245
|
+ if [[ $GNUSOCIAL_BACKGROUND_IMAGE_URL == *".png" ]]; then
|
|
246
|
+ GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="png"
|
|
247
|
+ fi
|
|
248
|
+ if [[ $$GNUSOCIAL_BACKGROUND_IMAGE_URL == *".gif" ]]; then
|
|
249
|
+ GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="gif"
|
|
250
|
+ fi
|
|
251
|
+ fi
|
|
252
|
+
|
|
253
|
+ if [ $GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT ]; then
|
|
254
|
+ read_config_param GNUSOCIAL_DOMAIN_NAME
|
|
255
|
+ gnusocial_config_file=/var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/config.php
|
|
256
|
+
|
|
257
|
+ cd /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/local/plugins/Qvitter
|
|
258
|
+
|
|
259
|
+ wget $GNUSOCIAL_BACKGROUND_IMAGE_URL -O img/custom.${GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT}
|
|
260
|
+ if [ ! -f img/custom.${GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT} ]; then
|
|
261
|
+ echo "$GNUSOCIAL_BACKGROUND_IMAGE_URL"
|
|
262
|
+ echo $'Custom background image for gnusocial could not be downloaded'
|
|
263
|
+ echo "1"
|
|
264
|
+ return
|
|
265
|
+ fi
|
|
266
|
+
|
|
267
|
+ if ! grep -q "'img/custom" $gnusocial_config_file; then
|
|
268
|
+ sed -i "s|'img/custom.*|'img/custom.${GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT}';|g" $gnusocial_config_file
|
|
269
|
+ fi
|
|
270
|
+ fi
|
|
271
|
+ echo "0"
|
|
272
|
+}
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+function gnusocial_set_background_image {
|
|
276
|
+ data=$(tempfile 2>/dev/null)
|
|
277
|
+ trap "rm -f $data" 0 1 2 5 15
|
|
278
|
+ dialog --title $"GNU Social" \
|
|
279
|
+ --backtitle $"Freedombone Control Panel" \
|
|
280
|
+ --inputbox $'Set a login screen background image URL' 10 60 2>$data
|
|
281
|
+ sel=$?
|
|
282
|
+ case $sel in
|
|
283
|
+ 0)
|
|
284
|
+ temp_background=$(<$data)
|
|
285
|
+ if [ ${#temp_background} -gt 0 ]; then
|
|
286
|
+ GNUSOCIAL_BACKGROUND_IMAGE_URL="$temp_background"
|
|
287
|
+ write_config_param "GNUSOCIAL_BACKGROUND_IMAGE_URL" "$GNUSOCIAL_BACKGROUND_IMAGE_URL"
|
|
288
|
+ if [[ $(gnusocial_set_background_image_from_url) == "0" ]]; then
|
|
289
|
+ dialog --title $"Set GNU Social login background" \
|
|
290
|
+ --msgbox $"The background image has been set" 6 60
|
|
291
|
+ fi
|
|
292
|
+ fi
|
|
293
|
+ ;;
|
|
294
|
+ esac
|
|
295
|
+}
|
|
296
|
+
|
|
297
|
+function gnusocial_set_welcome_message {
|
|
298
|
+ data=$(tempfile 2>/dev/null)
|
|
299
|
+ trap "rm -f $data" 0 1 2 5 15
|
|
300
|
+ dialog --title $"GNU Social" \
|
|
301
|
+ --backtitle $"Freedombone Control Panel" \
|
|
302
|
+ --inputbox $'Set a welcome message, which can include html formatting' 10 60 2>$data
|
|
303
|
+ sel=$?
|
|
304
|
+ case $sel in
|
|
305
|
+ 0)
|
|
306
|
+ temp_welcome=$(<$data)
|
|
307
|
+ if [ ${#temp_welcome} -gt 0 ]; then
|
|
308
|
+ GNUSOCIAL_WELCOME_MESSAGE="$temp_welcome"
|
|
309
|
+ gnusocial_config_file=/var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/config.php
|
|
310
|
+ if grep -q "customwelcometext" $gnusocial_config_file; then
|
|
311
|
+ write_config_param "GNUSOCIAL_WELCOME_MESSAGE" "$GNUSOCIAL_WELCOME_MESSAGE"
|
|
312
|
+ sed -i "s|customwelcometext.*|customwelcometext']['en'] = '${GNUSOCIAL_WELCOME_MESSAGE}';|g" $gnusocial_config_file
|
|
313
|
+
|
|
314
|
+ dialog --title $"Set GNU Social welcome message" \
|
|
315
|
+ --msgbox $"Welcome message has been set" 6 60
|
|
316
|
+ fi
|
|
317
|
+ fi
|
|
318
|
+ ;;
|
|
319
|
+ esac
|
|
320
|
+}
|
|
321
|
+
|
|
322
|
+function configure_interactive_gnusocial {
|
|
323
|
+ while true
|
|
324
|
+ do
|
|
325
|
+ data=$(tempfile 2>/dev/null)
|
|
326
|
+ trap "rm -f $data" 0 1 2 5 15
|
|
327
|
+ dialog --backtitle $"Freedombone Control Panel" \
|
|
328
|
+ --title $"GNU Social" \
|
|
329
|
+ --radiolist $"Choose an operation:" 12 70 3 \
|
|
330
|
+ 1 $"Set a login screen background image" off \
|
|
331
|
+ 2 $"Set a welcome message" off \
|
|
332
|
+ 3 $"Exit" on 2> $data
|
|
333
|
+ sel=$?
|
|
334
|
+ case $sel in
|
|
335
|
+ 1) return;;
|
|
336
|
+ 255) return;;
|
|
337
|
+ esac
|
|
338
|
+ case $(cat $data) in
|
|
339
|
+ 1) gnusocial_set_background_image;;
|
|
340
|
+ 2) gnusocial_set_welcome_message;;
|
|
341
|
+ 3) break;;
|
|
342
|
+ esac
|
|
343
|
+ done
|
|
344
|
+}
|
|
345
|
+
|
239
|
346
|
function upgrade_gnusocial {
|
240
|
347
|
if grep -q "gnusocial domain" $COMPLETION_FILE; then
|
241
|
348
|
GNUSOCIAL_DOMAIN_NAME=$(get_completion_param "gnusocial domain")
|
|
@@ -842,25 +949,8 @@ function install_gnusocial_theme {
|
842
|
949
|
git checkout $GNUSOCIAL_THEME_COMMIT -b $GNUSOCIAL_THEME_COMMIT
|
843
|
950
|
|
844
|
951
|
# download a custom background image
|
845
|
|
- GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT=
|
846
|
|
- if [ $GNUSOCIAL_BACKGROUND_IMAGE_URL ]; then
|
847
|
|
- if [[ $$GNUSOCIAL_BACKGROUND_IMAGE_URL == *".jpeg" || $$GNUSOCIAL_BACKGROUND_IMAGE_URL == *".jpg" ]]; then
|
848
|
|
- GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="jpg"
|
849
|
|
- fi
|
850
|
|
- if [[ $$GNUSOCIAL_BACKGROUND_IMAGE_URL == *".png" ]]; then
|
851
|
|
- GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="png"
|
852
|
|
- fi
|
853
|
|
- if [[ $$GNUSOCIAL_BACKGROUND_IMAGE_URL == *".gif" ]]; then
|
854
|
|
- GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT="gif"
|
855
|
|
- fi
|
856
|
|
- if [ $GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT ]; then
|
857
|
|
- wget $GNUSOCIAL_BACKGROUND_IMAGE_URL -O img/custom.${GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT}
|
858
|
|
- if [ ! -f img/custom.${GNUSOCIAL_BACKGROUND_IMAGE_URL_EXT} ]; then
|
859
|
|
- echo "$GNUSOCIAL_BACKGROUND_IMAGE_URL"
|
860
|
|
- echo $'Custom background image for gnusocial could not be downloaded'
|
861
|
|
- exit 87524
|
862
|
|
- fi
|
863
|
|
- fi
|
|
952
|
+ if [[ $(gnusocial_set_background_image_from_url) != "0" ]]; then
|
|
953
|
+ exit 356723
|
864
|
954
|
fi
|
865
|
955
|
|
866
|
956
|
gnusocial_config_file=/var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/config.php
|