Your IP : 18.118.166.157


Current Path : /var/lib/dpkg/info/
Upload File :
Current File : /var/lib/dpkg/info/ispmanager-pkg-myadmin.postinst

#!/bin/bash
# postinst script for coremanager
#
# see: dh_installdeb(1)

#set -e

# summary of how this script can be called:
#        * <postinst> `configure' <most-recently-configured-version>
#        * <old-postinst> `abort-upgrade' <new version>
#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
#          <new-version>
#        * <postinst> `abort-remove'
#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
#          <failed-install-package> <version> `removing'
#          <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package

COREDIR=/usr/local/mgr5
CONFNAME=myadmin.conf
. ${COREDIR}/lib/pkgsh/core_pkg_funcs.sh
. ${COREDIR}/lib/pkgsh/ispmgr_pkg_funcs.sh

CONFDIR=/etc/phpmyadmin

case "$1" in
    configure)

	APACHECONF=/etc/apache2/conf.d/phpmyadmin-apache.conf
	APACHE_TEMPLATEPATH=${COREDIR}/etc/templates/phpmyadmin-apache.template
	APACHE_CONFDIR=/etc/apache2/conf.d
	NGINXCONF=/etc/nginx/vhosts-includes/phpmyadmin-nginx.conf
	NGINX_TEMPLATEPATH=${COREDIR}/etc/templates/phpmyadmin-nginx.template
	NGINX_CONFDIR=/etc/nginx/vhosts-includes
	OPENLITESPEEDCONF=/usr/local/lsws/conf/vhosts-includes/phpmyadmin-openlitespeed.conf
	OPENLITESPEED_TEMPLATEPATH=${COREDIR}/etc/templates/phpmyadmin-openlitespeed.template
	OPENLITESPEED_CONFDIR=/usr/local/lsws/conf/vhosts-includes
	EXTACTION_PATH_CONF=/usr/local/mgr5/etc/conf.d/myadmin.conf
	RANDOM_PATH=/phpmyadmin
	if [ -z ${2} ] && [ ! -f ${NGINXCONF} ] && [ ! -f ${APACHECONF} ] && [ ! -f ${OPENLITESPEEDCONF} ]; then
		RANDOM_PATH=/$(pwgen -s 16 1)/phpmyadmin
		sed -i "s|http://\$site/phpmyadmin/|http://\$site${RANDOM_PATH}/|g" ${EXTACTION_PATH_CONF}
	fi
	if [ ! -f ${NGINXCONF} ]; then
		mkdir -p ${NGINX_CONFDIR}
		cp ${NGINX_TEMPLATEPATH} ${NGINXCONF}
		if ! grep -qE "location\s+\^\~\s+__PHP_MYADMIN_PATH__/setup" ${NGINXCONF}; then
			cat >> ${NGINXCONF} << EOF
location ^~ __PHP_MYADMIN_PATH__/setup {
	deny all;
}
EOF
			RELOAD_WEB=yes
		fi
		sed -i "s|__PHP_MYADMIN_PATH__|${RANDOM_PATH}|g" ${NGINXCONF}
	fi
	if [ ! -f ${APACHECONF} ]; then
		mkdir -p ${APACHE_CONFDIR}
		cp ${APACHE_TEMPLATEPATH} ${APACHECONF}
		sed -i "s|__PHP_MYADMIN_PATH__|${RANDOM_PATH}|g" ${APACHECONF}
	fi
	if [ ! -f ${OPENLITESPEEDCONF} ]; then
		mkdir -p ${OPENLITESPEED_CONFDIR}
		cp ${OPENLITESPEED_TEMPLATEPATH} ${OPENLITESPEEDCONF}
		sed -i "s|__PHP_MYADMIN_PATH__|${RANDOM_PATH}|g" ${OPENLITESPEEDCONF}
	fi
	if ! grep -qE "Directory\s+/usr/share/phpmyadmin/setup" ${APACHECONF}; then
		cat >> ${APACHECONF} << EOF
<Directory /usr/share/phpmyadmin/setup>
	<IfModule mod_authz_core.c>
		# Apache 2.4
		<RequireAny>
		Require all denied
		</RequireAny>
	</IfModule>
	<IfModule !mod_authz_core.c>
		# Apache 2.2
		Order Deny,Allow
		Deny from All
	</IfModule>
</Directory>
EOF
		RELOAD_WEB=yes
	fi
	if [ -z ${2} ]; then
		if [ "#${ISPCONVERT}" = "#yes" ]; then
			PATHLIST="phpmyadmin-servers"
			PathConvert ${COREDIR}/etc/conf.d/myadmin.conf
			test -f /etc/nginx/vhosts-includes/phpMyAdmin.conf && rm -f /etc/nginx/vhosts-includes/phpMyAdmin.conf
			test -f /etc/apache2/conf.d/phpmyadmin.conf && echo "# Disabled by ispmanager" > /etc/apache2/conf.d/phpmyadmin.conf
			test -f /etc/apache2/conf.d/phpMyAdmin.conf && rm -f /etc/apache2/conf.d/phpMyAdmin.conf
		else
			touch ${CONFDIR}/servers.ini.php
			grep -q "${CONFDIR}/servers.ini.php" ${CONFDIR}/config.inc.php || sed -i -r "/\?>/ iinclude('${CONFDIR}/servers.ini.php');" ${CONFDIR}/config.inc.php
			grep -q "${CONFDIR}/servers.ini.php" ${CONFDIR}/config.inc.php || echo "include('${CONFDIR}/servers.ini.php');" >> ${CONFDIR}/config.inc.php
			grep -q "PmaNoRelation_DisableWarning" ${CONFDIR}/config.inc.php || echo "\$cfg['PmaNoRelation_DisableWarning'] = TRUE;" >> ${CONFDIR}/config.inc.php

			test -f /etc/apache2/conf.d/phpmyadmin.conf && echo "# Disabled by ispmanager" > /etc/apache2/conf.d/phpmyadmin.conf
			sed -i -r "s|\\\$cfg\['blowfish_secret'\] =.*|\$cfg\['blowfish_secret'\] = '$(pwgen -s 32 1)';|" ${CONFDIR}/config.inc.php

			MYADMIN_VERSION=$(dpkg -s phpmyadmin | awk '$1 == "Version:" {print $2}')
			 if [ "$(lsb_release -s -c)" = "jammy" ]; then
				if dpkg --compare-versions ${MYADMIN_VERSION} ge 4:5.1.0+dfsg1-5ubuntu1 ; then
					if ! grep -q "\\$cfg['CookieSameSite']" ${CONFDIR}/config.inc.php ; then
						echo "\$cfg['CookieSameSite'] = 'Lax';" >> ${CONFDIR}/config.inc.php
					fi
				fi
			fi

			test -f ${COREDIR}/etc/${ISPMGR}.conf.d/${CONFNAME} || ln -sf ../conf.d/myadmin.conf ${COREDIR}/etc/${ISPMGR}.conf.d/${CONFNAME}
			DBLIST=$(${MGRCTL} -R -m ${ISPMGR} db.server | grep type=mysql | tr ' ' '\n' | awk -F= '$1 == "name" {print $2}')
			for DB in ${DBLIST}; do
				${MGRCTL} -m ${ISPMGR} db.server.edit elid=${DB} sok=ok >/dev/null 2>&1 &
			done
			ReloadWeb

			MakeConfigLink myadmin
			# Afterinstall
			AfterinstallModule ${ISPMGR} myadmin
		fi
	fi
	if ! grep -qE "Option\s+phpMyAdmin" ${COREDIR}/etc/conf.d/myadmin.conf ; then
		echo "Option phpMyAdmin" >> ${COREDIR}/etc/conf.d/myadmin.conf
		RELOAD_WEB=yes
	fi
	if [ "${RELOAD_WEB}" = "yes" ]; then
		ReloadWeb
	fi
	${MGRCTL} -m ${ISPMGR} feature.check elid=ispmanager-pkg-myadmin result=0>/dev/null 2>&1 &
	ReloadMgr ${ISPMGR}

    ;;

    abort-upgrade|abort-remove|abort-deconfigure)
    ;;

    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.



exit 0