###############################################################################
#                                                                             #
# IPFire.org - A linux based firewall                                         #
# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
#                                                                             #
# This program is free software: you can redistribute it and/or modify        #
# it under the terms of the GNU General Public License as published by        #
# the Free Software Foundation, either version 3 of the License, or           #
# (at your option) any later version.                                         #
#                                                                             #
# This program is distributed in the hope that it will be useful,             #
# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
# GNU General Public License for more details.                                #
#                                                                             #
# You should have received a copy of the GNU General Public License           #
# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
#                                                                             #
###############################################################################


###############################################################################
# Definitions
###############################################################################

include Config

VER        = ipfire

THISAPP    = web-user-interface-$(VER)
DIR_APP    = $(DIR_SRC)/$(THISAPP)
TARGET     = $(DIR_INFO)/$(THISAPP)

###############################################################################
# Top-level Rules
###############################################################################

install: $(TARGET)

check:

download:

b2 :

###############################################################################
# Installation Details
###############################################################################

$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
	@$(PREBUILD)

	# Copy all html/cgi-bin files
	mkdir -p /srv/web/ipfire/{cgi-bin,html}
	mkdir -p /var/updatecache/{download,metadata}
	cp -aR $(DIR_SRC)/html/* /srv/web/ipfire

	# Add base64 encoded background image to Squid content access page
	basedata="$$( base64 $(DIR_SRC)/html/html/images/background.gif | tr -d '\n' )"; \
		sed -i "s|IMAGEDATAPLACEHOLDER|$${basedata}|g" \
		/srv/web/ipfire/html/redirect-templates/legacy/template.html

	# Change CONFIG_ROOT in cgi-scripts
	for i in /srv/web/ipfire/cgi-bin/{*,logs.cgi/*,vpn.cgi/*}; do \
	    if [ -f $$i ]; then \
	        sed -i "s+CONFIG_ROOT+$(CONFIG_ROOT)+g" $$i; \
	    fi; \
	done
	chown -R root:root /srv/web/ipfire
	chmod -R 755 /srv/web/ipfire/cgi-bin
	chmod -R 644 /srv/web/ipfire/html
	chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi,images,include,themes,themes/*,themes/*/*}

	# Reset permissions of redirect templates and theme directories
	find /srv/web/ipfire/html/{captive,redirect-templates,themes} -type d | xargs chmod -v 755

	# Captive Portal CSS
	ln -svf --relative /usr/share/bootstrap/css/bootstrap-grid.min.css \
		/srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css
	ln -svf --relative /usr/share/bootstrap/css/bootstrap-grid.min.css.map \
		/srv/web/ipfire/html/captive/assets/bootstrap-grid.min.css.map
	ln -svf --relative /usr/share/bootstrap/css/bootstrap-reboot.min.css \
		/srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css
	ln -svf --relative /usr/share/bootstrap/css/bootstrap-reboot.min.css.map \
		/srv/web/ipfire/html/captive/assets/bootstrap-reboot.min.css.map

	# Captive Portal Fonts
	ln -svf --relative /usr/share/fonts/Ubuntu-L.ttf \
		/srv/web/ipfire/html/captive/assets/Ubuntu-L.ttf
	ln -svf --relative /usr/share/fonts/Ubuntu-M.ttf \
		/srv/web/ipfire/html/captive/assets/Ubuntu-M.ttf
	ln -svf --relative /usr/share/fonts/Ubuntu-R.ttf \
		/srv/web/ipfire/html/captive/assets/Ubuntu-R.ttf

	@$(POSTBUILD)
