Das ungrlückliche Script ./js/highlight_input.js entfernt und dafür input.focus einge...
[kivitendo-erp.git] / DEBIAN / DEBIAN / postinst
index cfcaa85..54b53e5 100755 (executable)
@@ -7,7 +7,7 @@
 set -e
 # x = xtrace
 #set -x
-echo "! Postinst $1 !"
+echo " ! "`date`" Postinst $1 !" >> /tmp/lxo-erp.log
 
 source /usr/share/debconf/confmodule
 
@@ -26,12 +26,9 @@ source /usr/share/debconf/confmodule
 
 config_postgresql_factory_script() {
 
-       echo "Starting factory postgresql config script: scripts/inst_postgres.sh.."
-
+       echo "Starting factory postgresql config script: scripts/inst_postgres_deb.sh.."
        cd /usr/lib/lx-office-erp/
-
        ./scripts/inst_postgres_deb.sh
-
        echo "Factory postgresql config script done."
 }
 
@@ -84,14 +81,16 @@ set_lx_office_erp_web_admin_password() {
        db_get lx-office-erp/admin-password
        ADMINPASSWORD="$RET"
 
-       cat /usr/lib/lx-office-erp/config/authentication.pl.default | \
+       #cat /usr/lib/lx-office-erp/config/authentication.pl.default | \
+       cat /etc/lx-office-erp/authentication.pl.default | \
        sed --expression "s/\$self->{admin_password} = 'admin';/\$self->{admin_password} = '$ADMINPASSWORD';/g" \
        > /tmp/1.txt
 
-       mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
 
-       chmod 0600 /usr/lib/lx-office-erp/config/authentication.pl
-       chown www-data:www-data /usr/lib/lx-office-erp/config/authentication.pl
+       #chmod 0600 /usr/lib/lx-office-erp/config/authentication.pl
+       #chown www-data:www-data /usr/lib/lx-office-erp/config/authentication.pl
 
 }
 
@@ -100,24 +99,37 @@ set_lx_office_erp_authentication_db_password() {
        db_get lx-office-erp/lx-office-erp-user-postgresql-password
        PASSWORD="$RET"
 
-       cat /usr/lib/lx-office-erp/config/authentication.pl | \
+       #cat /usr/lib/lx-office-erp/config/authentication.pl | \
+       cat /etc/lx-office-erp/authentication.pl | \
        sed --expression "s/'password' => '',/'password' => '$PASSWORD',/g" \
        > /tmp/1.txt
 
-       mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
 
 }
 
 set_lx_office_erp_authentication_db_user() {
        USER="lxoffice"
 
-       cat /usr/lib/lx-office-erp/config/authentication.pl | \
+       #cat /usr/lib/lx-office-erp/config/authentication.pl | \
+       cat /etc/lx-office-erp/authentication.pl | \
        sed --expression "s/'user'     => 'postgres',/'user'     => '$USER',/g" \
        > /tmp/1.txt
 
-       mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
+       mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
 }
 
+set_user_rights() {
+       chown -R www-data:www-data /usr/lib/lx-office-erp/users
+       chown -R www-data:www-data /usr/lib/lx-office-erp/templates
+    chown www-data:www-data /etc/lx-office-erp/lx-erp.conf
+    chown www-data:www-data /usr/lib/lx-office-erp/menu.ini
+    chown www-data:www-data /etc/lx-office-erp/authentication.pl
+    chmod 0600 /etc/lx-office-erp/lx-erp.conf
+    chmod 0600 /etc/lx-office-erp/authentication.pl
+}
 
 disable_ipv6_on_lo_interface() {
        # 2009-04-25
@@ -131,35 +143,90 @@ disable_ipv6_on_lo_interface() {
        echo "ifconfig lo inet6 del ::1/128" >> $RCLOCAL
 
 }
-
-
-
-
+mk_new_menu() {
+    if [ -e /usr/lib/lx-office-crm ] ; then 
+        #crm vorhanden, dann die menu.ini mit der höchsten VersNr nehmen
+        for i in `ls -1 /usr/lib/lx-office-crm/update/menu*ini` ; do 
+            cat $i > /usr/lib/lx-office-erp/menu.ini
+        done;
+        cat /usr/lib/lx-office-erp/menu.default >> /usr/lib/lx-office-erp/menu.ini
+    else
+        cp /usr/lib/lx-office-erp/menu.default /usr/lib/lx-office-erp/menu.ini
+    fi
+}  
+
+mk_new_config() {
+    if ! [ -f /etc/lx-office-erp/lx-erp.conf ] ; then
+        cp /etc/lx-office-erp/lx-erp.conf.default /etc/lx-office-erp/lx-erp.conf
+    fi
+}  
+
+mk_links() {
+    if ! [ -f /usr/lib/lx-office-erp/config/authentication.pl ] ; then
+        ln -s /etc/lx-office-erp/authentication.pl /usr/lib/lx-office-erp/config/authentication.pl
+    fi;
+    if ! [ -f /usr/lib/lx-office-erp/config/lx-erp.conf ] ; then
+        ln -s /etc/lx-office-erp/lx-erp.conf /usr/lib/lx-office-erp/config/lx-erp.conf
+    fi;
+    if [ -e /etc/apache2 ] ; then 
+        if ! [ -f /etc/apache2/conf.d/lx-office-erp.apache2.conf ] ; then
+            ln -s /etc/lx-office-erp/lx-office-erp.apache2.conf /etc/apache2/conf.d/lx-office-erp.apache2.conf
+        fi;
+    fi;
+    if [ -e /etc/cherokee/sites-available ] ; then 
+        if ! [ -f /etc/cherokee/sites-available/lx-office-erp.cherokee ] ; then
+            cat /etc/lx-office-erp/lx-office-erp.cherokee.handler >> /etc/cherokee/sites-available/default
+            ln -s /etc/lx-office-erp/lx-office-erp.cherokee /etc/cherokee/sites-available/lx-office-erp.cherokee
+        fi;
+    fi;
+}
+reload_web_server() {
+    if [ -f /etc/init.d/apache* ] ; then 
+            /etc/init.d/apache* reload
+    fi
+    if [ -f /etc/init.d/cherokee ] ; then 
+            /etc/init.d/cherokee reload
+    fi
+}
 case "$1" in
-    install) 
-        echo "Install"
 
     upgrade)
-        echo "Upgrade"
-
-    configure)
-
-#      config_postgresql_sql_routines
-#      config_postgresql_roles
-#      config_postgresql_accounts_sec
-
-    config_postgresql_factory_script
-
-       chown -R www-data:www-data /usr/lib/lx-office-erp/users
-       chown -R www-data:www-data /usr/lib/lx-office-erp/templates
-
-       set_lx_office_erp_web_admin_password
-       set_lx_office_erp_authentication_db_user
-       set_lx_office_erp_authentication_db_password
-       
-       disable_ipv6_on_lo_interface
+        echo " ! "`date`" $1 !" >> /tmp/lxo-erp.log
+
+        VER=`cat /var/www/lx-office-erp/VERSION | cut -d '.' -f2`
+        if [ $VER = '6' ]; then
+            echo " ! 2.6 !" >> /tmp/lxo-erp.log
+            echo "Version 2.6"
+            mk_new_menu
+        else
+            mk_new_menu
+            mk_new_config
+            config_postgresql_factory_script
+            set_lx_office_erp_web_admin_password
+            set_lx_office_erp_authentication_db_user
+            set_lx_office_erp_authentication_db_password
+               disable_ipv6_on_lo_interface
+            mk_links
+        fi;
+
+        set_user_rights
+        reload_web_server
+    ;;
 
-       /etc/init.d/apache* reload
+    install|configure)
+        echo " ! "`date`" $1 !" >> /tmp/lxo-erp.log
+        
+        mk_new_menu
+        mk_new_config
+        config_postgresql_factory_script
+        set_lx_office_erp_web_admin_password
+        set_lx_office_erp_authentication_db_user
+        set_lx_office_erp_authentication_db_password
+        disable_ipv6_on_lo_interface
+        mk_links
+
+        set_user_rights
+        reload_web_server
 
     ;;
 
@@ -176,7 +243,6 @@ esac
 # generated by other debhelper scripts.
 
 
-
 echo "done!!"
 
 exit 0