#!/bin/bash # ############################################################################################## # # Project : Beabloo Hotspot # # Script : cgi to display player's information previously retrieved from CMS # # Author : Fabien Bouquelet # Date : 2014-12-05 # Change Log : 2014-12-05 - First Version # : 2014-12-15 - Change font size # : 2014-12-16 - Add network status & auto-refresh # # Copyright (C) 2008 - 2014 Beabloo. All rights reserved. # ############################################################################################## # # # -------------------------------------------------------------------------------------------- # Variables # -------------------------------------------------------------------------------------------- RED_HTML="" GREEN_HTML="" BLUE_HTML="" YELLOW_HTML="" ORANGE_HTML="" NOCOLOR_HTML="" HTML_STYLE=" " TIME=`date '+%d/%b/%Y %H:%M:%S'` SCRIPTS_DIR=/opt/beabloo/scripts # DETERMINE HOSTNAME . ${SCRIPTS_DIR}/getHostname.sh PROPERTIES=/opt/beabloo/data/conf/Global.properties NETWORK_PROPERTIES=/opt/beabloo/data/conf/network.properties # -------------------------------------------------------------------------------------------- # Functions # -------------------------------------------------------------------------------------------- initContentType(){ echo "Content-type: text/html" echo "" echo "" } getFileData(){ GLOBAL_FILE="${1}" NETWORK_FILE="${2}" local VALUE local VAR if [ -s ${GLOBAL_FILE} ] ; then for VAR in screen_inventory_number player_inventory_number address.city address.region address.street address.streetNumber address.zipCode organizationName organizationSlogan; do VALUE=`grep -i "^${VAR}=" ${GLOBAL_FILE} | cut -d "=" -f 2` eval "GLOBAL_${VAR/./_}=\"${VALUE}\"" done fi if [ -s ${NETWORK_FILE} ] ; then for VAR in NAME IP MASK GATEWAY DNS1 DNS2 MAC ; do VALUE=`grep -i "^${VAR}=" ${NETWORK_FILE} | cut -d "=" -f 2` eval "NETWORK_${VAR}=\"${VALUE}\"" done fi } printOutputHeader(){ echo "" echo "" echo ${HTML_STYLE} echo ":: Beabloo Player Information ::" echo "" echo "" echo "" #echo "

" echo "" echo "" echo "" echo "" } printOutputFooter(){ echo "
" echo "
" echo "Copyright © 2008 - `date +%Y` Beabloo. All rights reserved." echo "" } printInfo(){ echo "" echo "

[ Beabloo Player Information ]


" echo "" echo "" echo "" echo "
" echo "
" echo "Generic Information:
" echo "Beabloo Player ID      : ${HOSTNAME}
" echo "Organization Name      : ${GLOBAL_organizationName}
" echo "
" echo "Address Information:
" echo "Office Code            : ${GLOBAL_organizationSlogan}
" echo "Address                : ${GLOBAL_address_street},${GLOBAL_address_streetNumber}
" echo "Postal Code            : ${GLOBAL_address_zipCode}
" echo "City                   : ${GLOBAL_address_city}
" echo "Region                 : ${GLOBAL_address_region}
" echo "
" echo "Inventory Information:
" echo "Player Inventory Code  : ${GLOBAL_player_inventory_number}
" echo "Screen Inventory Code  : ${GLOBAL_screen_inventory_number}
" echo "
" echo "Network Configuration:
" echo "IP Address             : ${NETWORK_IP}
" echo "Netmask                : ${NETWORK_MASK}
" echo "Gateway                : ${NETWORK_GATEWAY}
" echo "DNS1                   : ${NETWORK_DNS1}
" echo "DNS2                   : ${NETWORK_DNS2}
" echo "MAC Address            : ${NETWORK_MAC}
" ls -1 /etc/NetworkManager/system-connections | grep -q "${NETWORK_NAME}" && NET_CONFIGURED="${GREEN_HTML}[ OK ]${NOCOLOR_HTML}" || NET_CONFIGURED="${RED_HTML}[ KO ]${NOCOLOR_HTML}" 2>/dev/null echo "Status                 : ${NET_CONFIGURED}
" echo "
" echo "

" echo "
" echo "

" } # -------------------------------------------------------------------------------------------- # Main # -------------------------------------------------------------------------------------------- # INIT HTML CONTENT TYPE initContentType # PRINT OUTPUT HEADER printOutputHeader # GET DATA FROM FILE getFileData ${PROPERTIES} ${NETWORK_PROPERTIES} # PRINT FORM printInfo # PRINT HTML FOOTER printOutputFooter