diff options
Diffstat (limited to 'www-apps/open-xchange/files')
22 files changed, 2052 insertions, 0 deletions
diff --git a/www-apps/open-xchange/files/88_mod_jk.ox.conf b/www-apps/open-xchange/files/88_mod_jk.ox.conf new file mode 100644 index 0000000..d6a092f --- /dev/null +++ b/www-apps/open-xchange/files/88_mod_jk.ox.conf @@ -0,0 +1,46 @@ +<IfDefine JK> +jkMount /manager ajp13 +jkMount /manager/* ajp13 + +jkMount /servlet ajp13 +jkMount /servlet/* ajp13 + +jkMount /umin ajp13 +jkMount /umin/* ajp13 + +jkMount /servlet/webdav.contacts ajp13 +jkMount /servlet/webdav.contacts/* ajp13 + +jkMount /servlet/webdav.calendar ajp13 +jkMount /servlet/webdav.calendar/* ajp13 + +jkMount /servlet/webdav.ical ajp13 +jkMount /servlet/webdav.ical/* ajp13 + +jkMount /servlet/webdav.documents ajp13 +jkMount /servlet/webdav.documents/* ajp13 + +jkMount /servlet/webdav.tasks ajp13 +jkMount /servlet/webdav.tasks/* ajp13 + +jkMount /servlet/webdav.folders ajp13 +jkMount /servlet/webdav.folders/* ajp13 + +jkMount /servlet/webdav.projects ajp13 +jkMount /servlet/webdav.projects/* ajp13 + +jkMount /servlet/webdav.groupuser ajp13 +jkMount /servlet/webdav.groupuser/* ajp13 + +jkMount /servlet/webdav.attachments ajp13 +jkMount /servlet/webdav.attachments/* ajp13 + +jkMount /servlet/webdav.freebusy ajp13 +jkMount /servlet/webdav.freebusy/* ajp13 + +jkMount /servlet/webdav.vcard ajp13 +jkMount /servlet/webdav.vcard/* ajp13 + +jkMount /servlet/webdav.bookmarks ajp13 +jkMount /servlet/webdav.bookmarks/* ajp13 +</IfDefine> diff --git a/www-apps/open-xchange/files/Makefile.am b/www-apps/open-xchange/files/Makefile.am new file mode 100644 index 0000000..c6cab9a --- /dev/null +++ b/www-apps/open-xchange/files/Makefile.am @@ -0,0 +1,122 @@ +SUBDIRS = javabuild src +clean: @sslsubdir@ + @ANT@ clean + +misc: + rm src/misc/ssl/com_openchange_ssl_SSLServerSocket.h + rm src/misc/ssl/com_openexchange_ssl_SSLCtx.h + rm src/misc/ssl/com_openexchange_ssl_SSLInputStream.h + rm src/misc/ssl/com_openexchange_ssl_SSLOutputStream.h + rm src/misc/ssl/com_openexchange_ssl_SSLSession.h + rm src/misc/ssl/com_openexchange_ssl_SSLSocket.h + +install: + $(mkinstalldirs) ${D}/@bindir@ + $(mkinstalldirs) ${D}/@sbindir@ + $(mkinstalldirs) ${D}/@datadir@ + $(mkinstalldirs) ${D}/@datadir@/images + $(mkinstalldirs) ${D}/@datadir@/sound + $(mkinstalldirs) ${D}/@datadir@/misc + $(mkinstalldirs) ${D}/@datadir@/servlets + $(mkinstalldirs) ${D}/@datadir@/perl + $(mkinstalldirs) ${D}/@oxgroupwarehtmldir@ + $(mkinstalldirs) ${D}/@oxwebmailhtmldir@ + $(mkinstalldirs) ${D}/@sysconfdir@ + $(mkinstalldirs) ${D}/@sysconfdir@/groupware + $(mkinstalldirs) ${D}/@sysconfdir@/webmail + $(mkinstalldirs) ${D}/@sysconfdir@/init.d + $(mkinstalldirs) ${D}/@sysconfdir@/groupware/CERT + $(mkinstalldirs) ${D}/@localstatedir@ + $(mkinstalldirs) ${D}/@localstatedir@/log + $(mkinstalldirs) ${D}/@localstatedir@/settings/intranet + $(mkinstalldirs) ${D}/@localstatedir@/settings/webmail + $(mkinstalldirs) ${D}/@localstatedir@/filespool + $(mkinstalldirs) ${D}/@localstatedir@/drafts + $(mkinstalldirs) ${D}/@localstatedir@/webmailupload + $(mkinstalldirs) ${D}/@localstatedir@/dictionary + $(mkinstalldirs) ${D}/@libdir@ + $(mkinstalldirs) ${D}/@includedir@ + $(mkinstalldirs) ${D}/@infodir@ + $(mkinstalldirs) ${D}/@mandir@ + chmod 755 bin/groupware/openexchange-groupware + chmod 755 bin/groupware/openexchange-sessiond + chmod 755 bin/webmail/openexchange-webmail + chmod 755 sbin/addgroup_ox + chmod 755 sbin/addresource_ox + chmod 755 sbin/addresourcegroup_ox + chmod 755 sbin/addresourcetogroup_ox + chmod 755 sbin/adduser_ox + chmod 755 sbin/addusersql_ox + chmod 755 sbin/addusertogroup_ox + chmod 755 sbin/changecyruspass_ox + chmod 755 sbin/changeuserattr_ox + chmod 755 sbin/delgroup_ox + chmod 755 sbin/delresource_ox + chmod 755 sbin/delresourcefromgroup_ox + chmod 755 sbin/delresourcegroup_ox + chmod 755 sbin/deluser_ox + chmod 755 sbin/deluserfromgroup_ox + chmod 755 sbin/correctfilespool + chmod 755 system/etc/init.d/groupware + chmod 755 system/etc/init.d/webmail + chmod 755 system/etc/init.d/sessiond + chmod 755 system/etc/init.d/openexchange + cp bin/groupware/openexchange-groupware ${D}/@bindir@/. + cp bin/groupware/openexchange-sessiond ${D}/@bindir@/. + cp bin/webmail/openexchange-webmail ${D}/@bindir@/. + cp sbin/addgroup_ox ${D}/@sbindir@/. + cp sbin/addresource_ox ${D}/@sbindir@/. + cp sbin/addresourcegroup_ox ${D}/@sbindir@/. + cp sbin/addresourcetogroup_ox ${D}/@sbindir@/. + cp sbin/adduser_ox ${D}/@sbindir@/. + cp sbin/addusersql_ox ${D}/@sbindir@/. + cp sbin/addusertogroup_ox ${D}/@sbindir@/. + cp sbin/changeuserattr_ox ${D}/@sbindir@/. + cp sbin/delgroup_ox ${D}/@sbindir@/. + cp sbin/delresource_ox ${D}/@sbindir@/. + cp sbin/delresourcefromgroup_ox ${D}/@sbindir@/. + cp sbin/delresourcegroup_ox ${D}/@sbindir@/. + cp sbin/deluser_ox ${D}/@sbindir@/. + cp sbin/deluserfromgroup_ox ${D}/@sbindir@/. + cp sbin/correctfilespool ${D}/@sbindir@/. + cp -r system/setup/* ${D}/@datadir@/. + cp -r system/etc/cron.d/ ${D}/@sysconfdir@/. + cp system/etc/init.d/groupware ${D}/@sysconfdir@/init.d/. + cp system/etc/init.d/sessiond ${D}/@sysconfdir@/init.d/. + cp system/etc/init.d/webmail ${D}/@sysconfdir@/init.d/. + cp system/etc/init.d/openexchange ${D}/@sysconfdir@/init.d/. + cp conf/admintools.conf ${D}/@sysconfdir@/. + cp conf/initscript.conf ${D}/@sysconfdir@/. + cp conf/groupware/nasi.conf ${D}/@sysconfdir@/groupware/. + cp conf/groupware/calendar ${D}/@sysconfdir@/groupware/. + cp conf/groupware/currencyformat ${D}/@sysconfdir@/groupware/. + cp conf/groupware/dateformat ${D}/@sysconfdir@/groupware/. + cp conf/groupware/external.conf ${D}/@sysconfdir@/groupware/. + cp conf/groupware/forum ${D}/@sysconfdir@/groupware/. + cp conf/groupware/intranet.conf ${D}/@sysconfdir@/groupware/. + cp conf/groupware/ldap.properties ${D}/@sysconfdir@/groupware/. + cp conf/groupware/server.conf ${D}/@sysconfdir@/groupware/. + cp conf/groupware/system.properties ${D}/@sysconfdir@/groupware/. + cp conf/groupware/tasks ${D}/@sysconfdir@/groupware/. + cp -r conf/groupware/locales ${D}/@sysconfdir@/groupware/. + cp -r conf/groupware/METADB ${D}/@sysconfdir@/groupware/. + cp conf/webmail/flags.cfg ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/system.properties ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/nasi.conf ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/server.conf ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/spellcheck.cfg ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/system.cfg ${D}/@oxwebmailsysconfdir@/. + cp conf/webmail/system.properties ${D}/@oxwebmailsysconfdir@/. + cp -r conf/webmail/locales ${D}/@oxwebmailsysconfdir@/. + cp -r groupware/* ${D}/@oxgroupwarehtmldir@/. + cp -r webmail/* ${D}/@oxwebmailhtmldir@/. + cp -r system/www/groupware/* ${D}/@datadir@/groupware/data/. + cp -r system/www/webmail/* ${D}/@datadir@/webmail/data/. + cp lib/* ${D}/@libdir@/ + if test -f src/misc/ssl/.libs/liboxssl.so ; then cp src/misc/ssl/.libs/liboxssl.so ${D}/@libdir@/. ; fi + chmod 755 src/misc/login/login.pl + cp src/misc/login/login.pl ${D}/@datadir@/perl/. + cp src/misc/login/login.pm ${D}/@datadir@/perl/. + cp build/intranet.class ${D}/@datadir@/servlets/. + cp build/webmail.class ${D}/@datadir@/servlets/. + diff --git a/www-apps/open-xchange/files/digest-open-xchange-0.8.2-r1 b/www-apps/open-xchange/files/digest-open-xchange-0.8.2-r1 new file mode 100644 index 0000000..56d1e32 --- /dev/null +++ b/www-apps/open-xchange/files/digest-open-xchange-0.8.2-r1 @@ -0,0 +1,12 @@ +MD5 0c390658072367c892ce5ff423a02def Crystal_OX_Theme.tgz 53788 +RMD160 24d8b0501783f23b16f1a0b20800fcb59da7a464 Crystal_OX_Theme.tgz 53788 +SHA256 b864155899cf3526364dead79ffcd64f939c4f5a97bd36e2403a6d0e55342125 Crystal_OX_Theme.tgz 53788 +MD5 5bd67c0e350491fc8264429ee9e2b908 Crystal_OX_Theme_Webmail.tar.bz2 9442 +RMD160 2dd6c3b90d56219dfcab5ae48dcce635ed9e7311 Crystal_OX_Theme_Webmail.tar.bz2 9442 +SHA256 06b4d834bbd2a352468997671077f3630f60ff901651a865419e0156ac0d7e77 Crystal_OX_Theme_Webmail.tar.bz2 9442 +MD5 bb685bc3a95d31d437f42870892c45de open-xchange-0.8.2.tar.bz2 1970970 +RMD160 bea788b8264a8b882229612d6b284586c7250659 open-xchange-0.8.2.tar.bz2 1970970 +SHA256 576ac912d5fdfc98a84fe69abc7aa2b9f7d1ca24e7b40ff8e71b6642b131ef3d open-xchange-0.8.2.tar.bz2 1970970 +MD5 cad67d789cfb750e335b1bbdbbbf28d4 smartsieve-ox-1.03.tar.gz 102899 +RMD160 aaf58bc7549db4cad719f120635269fdf3585317 smartsieve-ox-1.03.tar.gz 102899 +SHA256 77a55ebe3c4e5f27e564d75f5cd80742c3bdb2e6e920d833de26eadec0fe6494 smartsieve-ox-1.03.tar.gz 102899 diff --git a/www-apps/open-xchange/files/digest-open-xchange-0.8.2_p1 b/www-apps/open-xchange/files/digest-open-xchange-0.8.2_p1 new file mode 100644 index 0000000..6552306 --- /dev/null +++ b/www-apps/open-xchange/files/digest-open-xchange-0.8.2_p1 @@ -0,0 +1,12 @@ +MD5 0c390658072367c892ce5ff423a02def Crystal_OX_Theme.tgz 53788 +RMD160 24d8b0501783f23b16f1a0b20800fcb59da7a464 Crystal_OX_Theme.tgz 53788 +SHA256 b864155899cf3526364dead79ffcd64f939c4f5a97bd36e2403a6d0e55342125 Crystal_OX_Theme.tgz 53788 +MD5 5bd67c0e350491fc8264429ee9e2b908 Crystal_OX_Theme_Webmail.tar.bz2 9442 +RMD160 2dd6c3b90d56219dfcab5ae48dcce635ed9e7311 Crystal_OX_Theme_Webmail.tar.bz2 9442 +SHA256 06b4d834bbd2a352468997671077f3630f60ff901651a865419e0156ac0d7e77 Crystal_OX_Theme_Webmail.tar.bz2 9442 +MD5 18f1b67eb4bfdb29b26795dfdc3cb98d open-xchange-0.8.2-1.tar.bz2 1969458 +RMD160 73fe0db243b78e8b62b2a8dbd1e4a7f0a4c433eb open-xchange-0.8.2-1.tar.bz2 1969458 +SHA256 e7fbd29b8a3a293af8b04fb46da22bcc98997051efdf041834b8e88820983785 open-xchange-0.8.2-1.tar.bz2 1969458 +MD5 cad67d789cfb750e335b1bbdbbbf28d4 smartsieve-ox-1.03.tar.gz 102899 +RMD160 aaf58bc7549db4cad719f120635269fdf3585317 smartsieve-ox-1.03.tar.gz 102899 +SHA256 77a55ebe3c4e5f27e564d75f5cd80742c3bdb2e6e920d833de26eadec0fe6494 smartsieve-ox-1.03.tar.gz 102899 diff --git a/www-apps/open-xchange/files/init.d.open-xchange b/www-apps/open-xchange/files/init.d.open-xchange new file mode 100644 index 0000000..8d3d9c4 --- /dev/null +++ b/www-apps/open-xchange/files/init.d.open-xchange @@ -0,0 +1,84 @@ +#!/sbin/runscript + +groupware="/etc/open-xchange/init.d/groupware" +webmail="/etc/open-xchange/init.d/webmail" +sessiond="/etc/open-xchange/init.d/sessiond" + +depend() { + need net slapd apache2 tomcat-5 + use postgresql mysql cyrus courier-imapd courier-imapd-ssl postfix + after postgresql mysql +} + +checkconfig() { + if [[ ! -x ${groupware} ]] ; then + eerror "${groupware} doesn't exist or nor executable" + return 1 + fi + if [[ ! -x ${webmail} ]] ; then + eerror "${webmail} doesn't exist or nor executable" + return 1 + fi + if [[ ! -x ${sessiond} ]] ; then + eerror "${sessiond} doesn't exist or nor executable" + return 1 + fi +} + + +start() { + checkconfig || return 1 + + local retval + + ebegin "Starting Open-Xchange sessiond" + start-stop-daemon --start --exec ${sessiond} -- start &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 + + ebegin "Starting Open-Xchange groupware" + start-stop-daemon --start --exec ${groupware} -- start &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 + + ebegin "Starting Open-Xchange webmail" + start-stop-daemon --start --exec ${webmail} -- start &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 +} + +stop() { + local retval + + ebegin "Stopping Open-Xchange sessiond" + start-stop-daemon --start --exec ${sessiond} -- stop &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 + + ebegin "Stopping Open-Xchange groupware" + start-stop-daemon --start --exec ${groupware} -- stop &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 + + ebegin "Stopping Open-Xchange webmail" + start-stop-daemon --start --exec ${webmail} -- stop &> /dev/null + retval=$? + eend $retval + [[ ${retval} -eq 0 ]] || return 1 +} + +opts="${opts} extendstatus" + +extendstatus() { + status="$sessiond status" + $status + status="$groupware status" + $status + stop="$webmail status" + $status +} diff --git a/www-apps/open-xchange/files/init_db.sql b/www-apps/open-xchange/files/init_db.sql new file mode 100644 index 0000000..1c2b9fd --- /dev/null +++ b/www-apps/open-xchange/files/init_db.sql @@ -0,0 +1,5 @@ +INSERT INTO sys_gen_rights_template values +('now','admin','now','','default_template','y','y','y','y', +'y','y','y','y','y','y','y','y','y','y','y','y','y','y','y', +'y','y','y','y','y','y','y','y','y','y','y','y','y','y','y', +'y','y','y','y','y','y','y','y','y','y','y','y','y'); diff --git a/www-apps/open-xchange/files/ldap_ox.include b/www-apps/open-xchange/files/ldap_ox.include new file mode 100644 index 0000000..24b031d --- /dev/null +++ b/www-apps/open-xchange/files/ldap_ox.include @@ -0,0 +1,11 @@ +# include /etc/openldap/schema/core.schema +include /etc/openldap/schema/cosine.schema +include /etc/openldap/schema/nis.schema +include /etc/openldap/schema/inetorgperson.schema +include /opt/open-xchange/share/openxchange.schema +database bdb +suffix "dc=example,dc=org" +rootdn "uid=admin,dc=example,dc=org" +rootpw secret +directory /var/lib/openldap-ox +index uid,mailEnabled,cn,sn,givenname,lnetMailAccess,alias,loginDestination eq,sub diff --git a/www-apps/open-xchange/files/open-xchange b/www-apps/open-xchange/files/open-xchange new file mode 100644 index 0000000..eb555fc --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange @@ -0,0 +1,62 @@ +#!/sbin/runscript + +PROG_NAME="OX" + +groupware="/etc/open-xchange/init.d/groupware" +webmail="/etc/open-xchange/init.d/webmail" +sessiond="/etc/open-xchange/init.d/sessiond" + +depend() { + need net slapd postfix cyrus apache2 tomcat5 + use postgresql mysql + after postgresql mysql +} + +checkconfig() { + if [ ! -x "$groupware" ] ; then + eerror "$groupware doesn't exist or nor executable" + return 1 + fi + if [ ! -x "$webmail" ] ; then + eerror "$webmail doesn't exist or nor executable" + return 1 + fi + if [ ! -x "$sessiond" ] ; then + eerror "$sessiond doesn't exist or nor executable" + return 1 + fi +} + + +start() { + checkconfig || return 1 + ebegin "Starting Open-Xchange" + start="$sessiond start" + $start + start="$groupware start" + $start + start="$webmail start" + $start +# eend $? +} + +stop() { + echo "Stoping Open-Xchange" + stop="$sessiond stop" + $stop + stop="$groupware stop" + $stop + stop="$webmail stop" + $stop +} + +opts="${opts} extendstatus" + +extendstatus() { + status="$sessiond status" + $status + status="$groupware status" + $status + stop="$webmail status" + $status +} diff --git a/www-apps/open-xchange/files/open-xchange-0.8.1.2-login.patch b/www-apps/open-xchange/files/open-xchange-0.8.1.2-login.patch new file mode 100644 index 0000000..dd032e4 --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.1.2-login.patch @@ -0,0 +1,14 @@ +--- src/misc/login/login.pm.in.orig 2005-08-26 17:08:58.000000000 +0200 ++++ src/misc/login/login.pm.in 2005-09-25 00:34:39.000000000 +0200 +@@ -28,9 +28,9 @@ + # SSL + my $ssl_key_file = '@oxgroupwaresysconfdir@/sslcerts/oxCERTS/groupwarekey.pem'; + my $ssl_cert_file = '@oxgroupwaresysconfdir@/sslcerts/oxCERTS/groupwarecert.pem'; +-my $ssl_ca_file = '@oxgroupwaresysconfdir@/sslcerts/oxCA/cacert.pem '; ++my $ssl_ca_file = '@oxgroupwaresysconfdir@/sslcerts/oxCA/cacert.pem'; + my $ssl_use_cert = 1; +-my $ssl_verify_mode = '0x01'; ++my $ssl_verify_mode = 0x01; + # LDAP + #my $scope = 'one'; + #my $ldap_conf = '@oxgroupwaresysconfdir@/ldap.conf'; diff --git a/www-apps/open-xchange/files/open-xchange-0.8.1.5-oxFolder.patch b/www-apps/open-xchange/files/open-xchange-0.8.1.5-oxFolder.patch new file mode 100644 index 0000000..5243354 --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.1.5-oxFolder.patch @@ -0,0 +1,14 @@ +--- system/www/groupware/javascript/oxFolder.js.old 2005-11-28 22:31:25.000000000 +0100 ++++ system/www/groupware/javascript/oxFolder.js 2005-11-28 22:05:18.000000000 +0100 +@@ -24,9 +24,9 @@ + menuSelection=ediv[2]; + selectedFolderID=ediv[3]; + selectedFolder=selectedElement; +- if (selectedElement.id.indexOf("|txt") != -1) ++ if (selectedElement.id.indexOf("|txt") == -1) + selectedFolder=document.getElementById(selectedElement.id+"|txt"); +- selectedFolderName=selectedFolder.firstChild.nodeValue; ++ selectedFolderName=(selectedFolder ? selectedFolder.firstChild.nodeValue : "unkown"); + } + if (window.Event && !document.all) { + x=e.pageX; diff --git a/www-apps/open-xchange/files/open-xchange-0.8.2-mysql-2.patch b/www-apps/open-xchange/files/open-xchange-0.8.2-mysql-2.patch new file mode 100644 index 0000000..7d82818 --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.2-mysql-2.patch @@ -0,0 +1,11 @@ +--- open-xchange-0.8.2/system/setup/init_mysql_database.sql 2006-05-30 17:05:15.000000000 +0200 ++++ open-xchange-0.8.2.az/system/setup/init_mysql_database.sql 2006-05-30 17:05:30.000000000 +0200 +@@ -1640,7 +1640,7 @@ + ); + + CREATE TABLE usr_settings ( +- username text, ++ username varchar(255), + mailoption1 text, + mailoption2 text, + mailoption3 text, diff --git a/www-apps/open-xchange/files/open-xchange-0.8.2-mysql.patch b/www-apps/open-xchange/files/open-xchange-0.8.2-mysql.patch new file mode 100644 index 0000000..d4a5682 --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.2-mysql.patch @@ -0,0 +1,501 @@ +diff -rNBwU 2 ../open-xchange-0.8.2-origin/conf/admintools.conf.in ./conf/admintools.conf.in
+--- ../open-xchange-0.8.2-origin/conf/admintools.conf.in 2006-04-25 10:57:34.000000000 +0200
++++ ./conf/admintools.conf.in 2006-05-04 23:01:37.628100648 +0200
+@@ -69,5 +69,5 @@
+ DEFAULT_SQL_PASS="@dbpass@"
+ ### if u want to use mysql change to mysql
+-SQL_DB_TYPE="pgsql"
++SQL_DB_TYPE="mysql"
+
+
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/conf/groupware/intranet.conf ./conf/groupware/intranet.conf
+--- ../open-xchange-0.8.2-origin/conf/groupware/intranet.conf 2006-04-25 10:57:34.000000000 +0200
++++ ./conf/groupware/intranet.conf 2006-05-04 23:01:37.629100496 +0200
+@@ -130,16 +130,24 @@
+
+ # DATABASE identifiert for SYSDATE
+-SYSDATE='now'
++SYSDATE=now()
+
+ # DATABASE identifier for CURRENT_DATE
+-# SQL_TODAY='today'
++SQL_TODAY=curdate()
+
+ # Sequence SQL-String for DATABASE
+ # Example for POSTGRES
+-seq-fid=SELECT nextval ('fid')
+-seq-import_id=SELECT nextval ('import_id')
+-seq-insert_id=SELECT nextval ('insert_id')
+-seq-profile_id=SELECT nextval ('profile_id')
+-seq-serial_id=SELECT nextval ('serial_id')
++#seq-fid=SELECT nextval ('fid')
++#seq-import_id=SELECT nextval ('import_id')
++#seq-insert_id=SELECT nextval ('insert_id')
++#seq-profile_id=SELECT nextval ('profile_id')
++#seq-serial_id=SELECT nextval ('serial_id')
++
++# Example for mySQL
++seq-fid=SELECT select_fid()
++seq-import_id=SELECT select_import_id()
++seq-insert_id=SELECT select_insert_id()
++seq-profile_id=SELECT select_profile_id()
++seq-serial_id=SELECT select_serial_id()
++
+ # Example for ORACLE
+ #seq-fid="SELECT fid.nextval"
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/conf/webmail/system.cfg ./conf/webmail/system.cfg
+--- ../open-xchange-0.8.2-origin/conf/webmail/system.cfg 2006-04-25 10:57:34.000000000 +0200
++++ ./conf/webmail/system.cfg 2006-05-04 23:01:37.631100192 +0200
+@@ -167,5 +167,5 @@
+
+ # SQL Query to request a new sequence number
+-seq-serial_id="SELECT nextval ('serial_id')"
++seq-serial_id="SELECT select_serial_id()"
+
+ # SQL Query field mapping name(s). May needed when having problems with field
+@@ -175,3 +175,3 @@
+ # ^^^^^^^^^^^^^^^^^^^^^
+ # usrdata delete
+-sql-fieldmapname-usrdata_delete="delete"
+\ Kein Zeilenumbruch am Dateiende.
++sql-fieldmapname-usrdata_delete="delete_it"
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/configure.in ./configure.in
+--- ../open-xchange-0.8.2-origin/configure.in 2006-04-25 10:57:34.000000000 +0200
++++ ./configure.in 2006-05-04 23:01:37.633099888 +0200
+@@ -792,4 +792,5 @@
+ conf/admintools.conf
+ system/setup/init_ldap.ldif
++system/setup/create_mysql_database.sql
+ src/com/openexchange/server/Version.java )
+
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/src/com/openexchange/groupware/InsertHandler.java ./src/com/openexchange/groupware/InsertHandler.java
+--- ../open-xchange-0.8.2-origin/src/com/openexchange/groupware/InsertHandler.java 2006-04-25 10:57:34.000000000 +0200
++++ ./src/com/openexchange/groupware/InsertHandler.java 2006-05-05 11:17:26.185499760 +0200
+@@ -245,4 +245,6 @@
+ setBinaryStreamFromFile(pst, value, a+1);
+ }
++ } else if (type.indexOf("TIMESTAMP") != -1 && (value != null && value.equals(GlobalConfig.getParameter("SYSDATE")))) {
++ pst.setTimestamp(a+1,new java.sql.Timestamp(System.currentTimeMillis()));
+ } else if (type.indexOf("TIMESTAMP") != -1 && (value == null || !value.equals(GlobalConfig.getParameter("SYSDATE")))) {
+ if (value == null) {
+@@ -253,5 +255,7 @@
+ try {
+ tsf.setCalendar(value, GlobalConfig.getDateTimePattern("DATABASE"));
+- } catch(Exception e) { e.printStackTrace(); }
++ } catch(Exception e) {
++ e.printStackTrace();
++ }
+ pst.setTimestamp(a+1,new java.sql.Timestamp(tsf.getDate().getTime()));
+ }
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/src/com/openexchange/groupware/UpdateHandler.java ./src/com/openexchange/groupware/UpdateHandler.java
+--- ../open-xchange-0.8.2-origin/src/com/openexchange/groupware/UpdateHandler.java 2006-04-25 10:57:34.000000000 +0200
++++ ./src/com/openexchange/groupware/UpdateHandler.java 2006-05-05 11:18:36.848757312 +0200
+@@ -251,4 +251,6 @@
+ setBinaryStreamFromFile(pst, value, a+1);
+ }
++ } else if (type.indexOf("TIMESTAMP") != -1 && (value != null && value.equals(GlobalConfig.getParameter("SYSDATE")))) {
++ pst.setTimestamp(a+1,new java.sql.Timestamp(System.currentTimeMillis()));
+ } else if (type.indexOf("TIMESTAMP") != -1 && (value == null || !value.equals(GlobalConfig.getParameter("SYSDATE")))) {
+ if (value == null) {
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/system/setup/create_mysql_database.sql.in ./system/setup/create_mysql_database.sql.in
+--- ../open-xchange-0.8.2-origin/system/setup/create_mysql_database.sql.in 1970-01-01 01:00:00.000000000 +0100
++++ ./system/setup/create_mysql_database.sql.in 2006-05-04 23:01:37.636099432 +0200
+@@ -0,0 +1,117 @@
++DROP DATABASE IF EXISTS @dbname@;
++
++CREATE DATABASE @dbname@ DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
++
++GRANT ALL PRIVILEGES ON @dbname@.* TO '@dbuser@'@'localhost' IDENTIFIED BY '@dbpass@' WITH GRANT OPTION;
++GRANT ALL PRIVILEGES ON @dbname@.* TO '@dbuser@'@'%' IDENTIFIED BY '@dbpass@';
++
++USE @dbname@;
++
++DROP TABLE IF EXISTS table_fid;
++
++CREATE TABLE table_fid (
++ id INT NOT NULL AUTO_INCREMENT,
++ primary key (id)
++);
++
++DROP FUNCTION IF EXISTS select_fid;
++
++DELIMITER //
++
++CREATE FUNCTION select_fid () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
++BEGIN
++ DECLARE xid INT;
++ INSERT into table_fid VALUES();
++ SELECT last_insert_id() into xid;
++ RETURN xid;
++END //
++
++DELIMITER ;
++
++DROP TABLE IF EXISTS table_serial_id;
++
++CREATE TABLE table_serial_id (
++ id INT NOT NULL AUTO_INCREMENT,
++ primary key (id)
++) AUTO_INCREMENT = 10;
++
++DROP FUNCTION IF EXISTS select_serial_id;
++
++DELIMITER //
++
++CREATE FUNCTION select_serial_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
++BEGIN
++ DECLARE xid INT;
++ INSERT into table_serial_id VALUES();
++ SELECT last_insert_id() into xid;
++ RETURN xid;
++END //
++
++DELIMITER ;
++
++
++DROP TABLE IF EXISTS table_import_id;
++
++CREATE TABLE table_import_id (
++ id INT NOT NULL AUTO_INCREMENT,
++ primary key (id)
++);
++
++DROP FUNCTION IF EXISTS select_import_id;
++
++DELIMITER //
++
++CREATE FUNCTION select_import_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
++BEGIN
++ DECLARE xid INT;
++ INSERT into table_import_id VALUES();
++ SELECT last_insert_id() into xid;
++ RETURN xid;
++END //
++
++DELIMITER ;
++
++
++DROP TABLE IF EXISTS table_insert_id;
++
++CREATE TABLE table_insert_id (
++ id INT NOT NULL AUTO_INCREMENT,
++ primary key (id)
++) AUTO_INCREMENT = 101;
++
++DROP FUNCTION IF EXISTS select_insert_id;
++
++DELIMITER //
++
++CREATE FUNCTION select_insert_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
++BEGIN
++ DECLARE xid INT;
++ INSERT into table_insert_id VALUES();
++ SELECT last_insert_id() into xid;
++ RETURN xid;
++END //
++
++DELIMITER ;
++
++DROP TABLE IF EXISTS table_profile_id;
++
++CREATE TABLE table_profile_id (
++ id INT NOT NULL AUTO_INCREMENT,
++ primary key (id)
++);
++
++DROP FUNCTION IF EXISTS select_profile_id;
++
++DELIMITER //
++
++CREATE FUNCTION select_profile_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
++BEGIN
++ DECLARE xid INT;
++ INSERT into table_profile_id VALUES();
++ SELECT last_insert_id() into xid;
++ RETURN xid;
++END //
++
++
++DELIMITER ;
++
+diff -rNBwU 2 ../open-xchange-0.8.2-origin/system/setup/init_mysql_database.sql ./system/setup/init_mysql_database.sql
+--- ../open-xchange-0.8.2-origin/system/setup/init_mysql_database.sql 2006-04-25 10:57:34.000000000 +0200
++++ ./system/setup/init_mysql_database.sql 2006-05-04 23:01:37.640098824 +0200
+@@ -1,110 +1,12 @@
+
+-DROP TABLE IF EXISTS table_fid;
+
+-CREATE TABLE table_fid (
+- id INT NOT NULL AUTO_INCREMENT,
+- primary key (id)
+-);
+-
+-DROP FUNCTION IF EXISTS select_fid;
+-
+-DELIMITER //
+-
+-CREATE FUNCTION select_fid () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
+-BEGIN
+- DECLARE xid INT;
+- INSERT into table_fid VALUES();
+- SELECT last_insert_id() into xid;
+- RETURN xid;
+-END //
+-
+-DELIMITER ;
+-
+-DROP TABLE IF EXISTS table_serial_id;
+-
+-CREATE TABLE table_serial_id (
+- id INT NOT NULL AUTO_INCREMENT,
+- primary key (id)
+-) AUTO_INCREMENT = 9;
+-
+-DROP FUNCTION IF EXISTS select_serial_id;
+-
+-DELIMITER //
+-
+-CREATE FUNCTION select_serial_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
+-BEGIN
+- DECLARE xid INT;
+- INSERT into table_serial_id VALUES();
+- SELECT last_insert_id() into xid;
+- RETURN xid;
+-END //
+-
+-DELIMITER ;
+-
+-
+-DROP TABLE IF EXISTS table_import_id;
+-
+-CREATE TABLE table_import_id (
+- id INT NOT NULL AUTO_INCREMENT,
+- primary key (id)
+-);
+
+-DROP FUNCTION IF EXISTS select_import_id;
+
+-DELIMITER //
+
+-CREATE FUNCTION select_import_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
+-BEGIN
+- DECLARE xid INT;
+- INSERT into table_import_id VALUES();
+- SELECT last_insert_id() into xid;
+- RETURN xid;
+-END //
+
+-DELIMITER ;
+
+
+-DROP TABLE IF EXISTS table_insert_id;
+
+-CREATE TABLE table_insert_id (
+- id INT NOT NULL AUTO_INCREMENT,
+- primary key (id)
+-) AUTO_INCREMENT = 101;
+
+-DROP FUNCTION IF EXISTS select_insert_id;
+-
+-DELIMITER //
+-
+-CREATE FUNCTION select_insert_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
+-BEGIN
+- DECLARE xid INT;
+- INSERT into table_insert_id VALUES();
+- SELECT last_insert_id() into xid;
+- RETURN xid;
+-END //
+-
+-DELIMITER ;
+-
+-DROP TABLE IF EXISTS table_profile_id;
+-
+-CREATE TABLE table_profile_id (
+- id INT NOT NULL AUTO_INCREMENT,
+- primary key (id)
+-);
+-
+-DROP FUNCTION IF EXISTS select_profile_id;
+-
+-DELIMITER //
+-
+-CREATE FUNCTION select_profile_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA
+-BEGIN
+- DECLARE xid INT;
+- INSERT into table_profile_id VALUES();
+- SELECT last_insert_id() into xid;
+- RETURN xid;
+-END //
+-
+-
+-DELIMITER ;
+
+ CREATE TABLE prg_dlist (
+@@ -309,5 +211,5 @@
+ changing_date timestamp ,
+ changed_from text,
+- login text PRIMARY KEY,
++ login varchar(255) PRIMARY KEY,
+ addr_u text,
+ addr_r text,
+@@ -446,5 +348,5 @@
+ timestampfield01 timestamp ,
+ timestampfield02 timestamp ,
+- intfield01 int NOT NULL,
++ intfield01 int PRIMARY KEY,
+ intfield02 int,
+ intfield03 int,
+@@ -1328,5 +1230,35 @@
+ timestampfield01 timestamp ,
+ timestampfield02 timestamp ,
+- intfield01 int NOT NULL,
++ intfield01 int PRIMARY KEY,
++ intfield02 int,
++ intfield03 int,
++ intfield04 int,
++ intfield05 int,
++ intfield06 int,
++ field01 text NOT NULL,
++ field02 text,
++ field03 text,
++ field04 text,
++ field05 text,
++ field06 text,
++ field07 text,
++ field08 text,
++ field09 text,
++ field10 text
++);
++
++CREATE TABLE del_docufolders (
++ creating_date timestamp NOT NULL,
++ created_from text NOT NULL,
++ changing_date timestamp,
++ changed_from text,
++ user_right text NOT NULL,
++ group_right text NOT NULL,
++ sid text NOT NULL,
++ tid text,
++ order_crit text,
++ timestampfield01 timestamp,
++ timestampfield02 timestamp,
++ intfield01 int PRIMARY KEY,
+ intfield02 int,
+ intfield03 int,
+@@ -1358,5 +1290,35 @@
+ timestampfield01 timestamp ,
+ timestampfield02 timestamp ,
+- intfield01 int NOT NULL,
++ intfield01 int PRIMARY KEY,
++ intfield02 int NOT NULL,
++ intfield03 int,
++ intfield04 int,
++ intfield05 int,
++ intfield06 int,
++ field01 text NOT NULL,
++ field02 text,
++ field03 text,
++ field04 text,
++ field05 text,
++ field06 text,
++ field07 text,
++ field08 text,
++ field09 text,
++ field10 text
++);
++
++CREATE TABLE del_documents (
++ creating_date timestamp NOT NULL,
++ created_from text NOT NULL,
++ changing_date timestamp,
++ changed_from text,
++ user_right text NOT NULL,
++ group_right text NOT NULL,
++ sid text NOT NULL,
++ tid text,
++ order_crit text,
++ timestampfield01 timestamp,
++ timestampfield02 timestamp,
++ intfield01 int PRIMARY KEY,
+ intfield02 int NOT NULL,
+ intfield03 int,
+@@ -1388,5 +1350,35 @@
+ timestampfield01 timestamp ,
+ timestampfield02 timestamp ,
+- intfield01 int NOT NULL,
++ intfield01 int PRIMARY KEY,
++ intfield02 int NOT NULL,
++ intfield03 int NOT NULL,
++ intfield04 int,
++ intfield05 int,
++ intfield06 int,
++ field01 text NOT NULL,
++ field02 text,
++ field03 text NOT NULL,
++ field04 text NOT NULL,
++ field05 text,
++ field06 text,
++ field07 text,
++ field08 text,
++ field09 text,
++ field10 text
++);
++
++CREATE TABLE del_documents_files (
++ creating_date timestamp NOT NULL,
++ created_from text,
++ changing_date timestamp,
++ changed_from text,
++ user_right text,
++ group_right text,
++ sid text NOT NULL,
++ tid text,
++ order_crit text,
++ timestampfield01 timestamp,
++ timestampfield02 timestamp,
++ intfield01 int PRIMARY KEY,
+ intfield02 int NOT NULL,
+ intfield03 int NOT NULL,
+@@ -1972,5 +1964,5 @@
+ CREATE TABLE sys_linkage (
+ changing_date timestamp NOT NULL,
+- luid int NOT NULL,
++ luid int PRIMARY KEY,
+ source_id int NOT NULL,
+ src_table text NOT NULL,
+@@ -1992,5 +1984,5 @@
+ CREATE TABLE del_linkage (
+ changing_date timestamp NOT NULL,
+- luid int NOT NULL,
++ luid int PRIMARY KEY,
+ source_id int NOT NULL,
+ src_table text NOT NULL,
+@@ -2046,4 +2038,10 @@
+ );
+
++CREATE TABLE oxfolder_userfolders_standardfolders (
++ owner text,
++ module text,
++ fuid int
++);
++
+ CREATE TABLE del_oxfolder_tree (
+ fuid int,
+@@ -2110,4 +2108,10 @@
+ );
+
++CREATE TABLE del_system_objects (
++ object_type int,
++ object_id text,
++ deleting_date timestamp
++);
++
+ INSERT INTO oxfolder_tree VALUES (1, 0, 'private', 'system', 'system','system', 'system', now(), 'System', null, null);
+ INSERT INTO oxfolder_tree VALUES (2, 0, 'public', 'system', 'system','system', 'system', now(), 'System', null, null);
+@@ -2127,4 +2131,5 @@
+ INSERT INTO oxfolder_permissions VALUES (select_serial_id(), 7, 512, 'all_ox_users_and_ox_groups', 0, 2, 0, 0, 0);
+ INSERT INTO oxfolder_permissions VALUES (select_serial_id(), 8, 512, 'all_ox_users_and_ox_groups', 0, 8, 4, 2, 2);
++INSERT INTO oxfolder_permissions VALUES (select_serial_id(), 9, 32768, 'mailadmin', 0, 128, 128, 128, 128);
+
+ INSERT INTO oxfolder_specialfolders VALUES ('private', 1);
diff --git a/www-apps/open-xchange/files/open-xchange-0.8.2-sieve.patch b/www-apps/open-xchange/files/open-xchange-0.8.2-sieve.patch new file mode 100644 index 0000000..009663c --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.2-sieve.patch @@ -0,0 +1,63 @@ +--- open-xchange-0.8.2/webmail/EN/options_navi.htm 2006-05-29 15:19:40.000000000 +0200 ++++ open-xchange-0.8.2.az/webmail/EN/options_navi.htm 2006-05-29 15:21:42.000000000 +0200 +@@ -49,13 +49,17 @@ + <td><a href="**webmail**?NAS_ID=**NAS_ID**&sessionID=**NAS_ID**&SITE=signature&vkn=0&nlf=**NAS_LF**" target="options_main" onClick="selectNaviItem(2);" id="nav2">Signatures</a></td> + </tr> + <tr> ++ <td width="5"><img src="**imageLink**/arrow.png"></td> ++ <td><a href="/open-xchange/smartsieve/login.php?sessionID=**NAS_ID**" target="options_main" onClick="selectNaviItem(3);" id="nav3">Mail filter rules</a></td> ++ </tr> ++ <tr> + <td width="5"><img src="**imageLink**/corner.png"></td> + <td><a href="javascript:parent.window.close();">Close</a></td> + </tr> + </table> + <script language="javascript"> + function selectNaviItem(actItem) { +- for (var a = 0; a < 3; a++) { ++ for (var a = 0; a < 4; a++) { + var object = document.getElementById("nav" + a); + if (actItem == a) { + object.style.fontWeight = "bold"; +--- open-xchange-0.8.2/webmail/DE/options_navi.htm 2006-05-29 15:19:34.000000000 +0200 ++++ open-xchange-0.8.2.az/webmail/DE/options_navi.htm 2006-05-29 15:21:28.000000000 +0200 +@@ -49,13 +49,17 @@ + <td><a href="**webmail**?NAS_ID=**NAS_ID**&sessionID=**NAS_ID**&SITE=signature&vkn=0&nlf=**NAS_LF**" target="options_main" onClick="selectNaviItem(2);" id="nav2">Signaturen</a></td> + </tr> + <tr> ++ <td width="5"><img src="**imageLink**/arrow.png"></td> ++ <td><a href="/open-xchange/smartsieve/login.php?sessionID=**NAS_ID**" target="options_main" onClick="selectNaviItem(3);" id="nav3">Mail filter rules</a></td> ++ </tr> ++ <tr> + <td width="5"><img src="**imageLink**/corner.png"></td> + <td><a href="javascript:parent.window.close();">Schließen</a></td> + </tr> + </table> + <script language="javascript"> + function selectNaviItem(actItem) { +- for (var a = 0; a < 3; a++) { ++ for (var a = 0; a < 4; a++) { + var object = document.getElementById("nav" + a); + if (actItem == a) { + object.style.fontWeight = "bold"; +--- open-xchange-0.8.2/templates/webmail/html/options_navi.htm 2006-05-29 15:19:47.000000000 +0200 ++++ open-xchange-0.8.2.az/templates/webmail/html/options_navi.htm 2006-05-29 15:21:11.000000000 +0200 +@@ -42,13 +42,17 @@ + <td><a href="**webmail**?NAS_ID=**NAS_ID**&sessionID=**NAS_ID**&SITE=signature&vkn=0&nlf=**NAS_LF**" target="options_main" onClick="selectNaviItem(2);" id="nav2">[signatures]</a></td> + </tr> + <tr> ++ <td width="5"><img src="**imageLink**/arrow.png"></td> ++ <td><a href="/open-xchange/smartsieve/login.php?sessionID=**NAS_ID**" target="options_main" onClick="selectNaviItem(3);" id="nav3">Mail filter rules</a></td> ++ </tr> ++ <tr> + <td width="5"><img src="**imageLink**/corner.png"></td> + <td><a href="javascript:parent.window.close();">[close]</a></td> + </tr> + </table> + <script language="javascript"> + function selectNaviItem(actItem) { +- for (var a = 0; a < 3; a++) { ++ for (var a = 0; a < 4; a++) { + var object = document.getElementById("nav" + a); + if (actItem == a) { + object.style.fontWeight = "bold"; diff --git a/www-apps/open-xchange/files/open-xchange-0.8.2_rc3-mysql.patch b/www-apps/open-xchange/files/open-xchange-0.8.2_rc3-mysql.patch new file mode 100644 index 0000000..bbbbeeb --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-0.8.2_rc3-mysql.patch @@ -0,0 +1,521 @@ +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/conf/admintools.conf.in open-xchange-0.8.2-RC3/conf/admintools.conf.in +--- open-xchange-0.8.2-RC3-origin/conf/admintools.conf.in 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/conf/admintools.conf.in 2006-02-15 14:42:12.000000000 +0100 +@@ -69,5 +69,5 @@ + DEFAULT_SQL_PASS="@dbpass@" + ### if u want to use mysql change to mysql +-SQL_DB_TYPE="pgsql" ++SQL_DB_TYPE="mysql" + + +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/conf/groupware/intranet.conf open-xchange-0.8.2-RC3/conf/groupware/intranet.conf +--- open-xchange-0.8.2-RC3-origin/conf/groupware/intranet.conf 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/conf/groupware/intranet.conf 2006-02-15 15:29:07.000000000 +0100 +@@ -130,16 +130,24 @@ + + # DATABASE identifiert for SYSDATE +-SYSDATE='now' ++SYSDATE=now() + + # DATABASE identifier for CURRENT_DATE +-# SQL_TODAY='today' ++SQL_TODAY=curdate() + + # Sequence SQL-String for DATABASE + # Example for POSTGRES +-seq-fid=SELECT nextval ('fid') +-seq-import_id=SELECT nextval ('import_id') +-seq-insert_id=SELECT nextval ('insert_id') +-seq-profile_id=SELECT nextval ('profile_id') +-seq-serial_id=SELECT nextval ('serial_id') ++#seq-fid=SELECT nextval ('fid') ++#seq-import_id=SELECT nextval ('import_id') ++#seq-insert_id=SELECT nextval ('insert_id') ++#seq-profile_id=SELECT nextval ('profile_id') ++#seq-serial_id=SELECT nextval ('serial_id') ++ ++# Example for mySQL ++seq-fid=SELECT select_fid() ++seq-import_id=SELECT select_import_id() ++seq-insert_id=SELECT select_insert_id() ++seq-profile_id=SELECT select_profile_id() ++seq-serial_id=SELECT select_serial_id() ++ + # Example for ORACLE + #seq-fid="SELECT fid.nextval" +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/configure.in open-xchange-0.8.2-RC3/configure.in +--- open-xchange-0.8.2-RC3-origin/configure.in 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/configure.in 2006-02-15 14:59:10.000000000 +0100 +@@ -792,4 +792,5 @@ + conf/admintools.conf + system/setup/init_ldap.ldif ++system/setup/create_mysql_database.sql + src/com/openexchange/server/Version.java ) + +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/sbin/deluser_ox.in open-xchange-0.8.2-RC3/sbin/deluser_ox.in +--- open-xchange-0.8.2-RC3-origin/sbin/deluser_ox.in 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/sbin/deluser_ox.in 2006-02-15 15:45:07.000000000 +0100 +@@ -115,9 +115,9 @@ + then + +- SQL_INSERT=`$MYSQL_BIN -h $DEFAULT_SQL_HOST -u $DEFAULT_SQL_USER --password=$DEFAULT_SQL_PASS $DEFAULT_SQL_DB -e "DELETE FROM $RIGHTS_TABLE WHERE login LIKE '$USERNAME'" ` ++ SQL_INSERT=`$SQL_BIN -h $DEFAULT_SQL_HOST -U $DEFAULT_SQL_USER -d $DEFAULT_SQL_DB -X -c "DELETE FROM $RIGHTS_TABLE WHERE login LIKE '$USERNAME'" | $AWK_BIN {'print $1'}` + + else + +- SQL_INSERT=`$SQL_BIN -h $DEFAULT_SQL_HOST -U $DEFAULT_SQL_USER -d $DEFAULT_SQL_DB -X -c "DELETE FROM $RIGHTS_TABLE WHERE login LIKE '$USERNAME'" | $AWK_BIN {'print $1'}` ++ SQL_INSERT=`$MYSQL_BIN -h $DEFAULT_SQL_HOST -u $DEFAULT_SQL_USER --password=$DEFAULT_SQL_PASS $DEFAULT_SQL_DB -e "DELETE FROM $RIGHTS_TABLE WHERE login LIKE '$USERNAME'" ` + if [ $? -eq 0 ]; then + SQL_INSERT="DELETE" +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/src/com/openexchange/tools/HTMLConfirmation.java open-xchange-0.8.2-RC3/src/com/openexchange/tools/HTMLConfirmation.java +--- open-xchange-0.8.2-RC3-origin/src/com/openexchange/tools/HTMLConfirmation.java 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/src/com/openexchange/tools/HTMLConfirmation.java 2006-02-16 16:08:58.000000000 +0100 +@@ -190,5 +190,5 @@ + + writeCon = DBPool.pickupWriteable(); +- stmt = writeCon.prepareStatement("UPDATE \"" + table + "\" SET confirm=?, reason=? WHERE (object_id=? AND member_uid LIKE ?)"); ++ stmt = writeCon.prepareStatement("UPDATE " + table + " SET confirm=?, reason=? WHERE (object_id=? AND member_uid LIKE ?)"); + stmt.setString(1, no.user.get("HTMLConfirmReason").toString()); + stmt.setString(2, comment); +@@ -209,5 +209,5 @@ + try { + String orig_table = table.startsWith("prg_date") ? "prg_dates" : "prg_tasks"; +- stmt = writeCon.prepareStatement("UPDATE \"" + orig_table + "\" SET changed_from = '" + no.getUser() + "', changing_date = 'NOW' WHERE (intfield01=?)"); ++ stmt = writeCon.prepareStatement("UPDATE " + orig_table + " SET changed_from = '" + no.getUser() + "', changing_date = 'NOW' WHERE (intfield01=?)"); + try { + stmt.setLong(1, Long.parseLong(objectID)); +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/system/setup/create_mysql_database.sql.in open-xchange-0.8.2-RC3/system/setup/create_mysql_database.sql.in +--- open-xchange-0.8.2-RC3-origin/system/setup/create_mysql_database.sql.in 1970-01-01 01:00:00.000000000 +0100 ++++ open-xchange-0.8.2-RC3/system/setup/create_mysql_database.sql.in 2006-02-15 14:58:28.000000000 +0100 +@@ -0,0 +1,117 @@ ++DROP DATABASE IF EXISTS @dbname@; ++ ++CREATE DATABASE @dbname@ DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; ++ ++GRANT ALL PRIVILEGES ON @dbname@.* TO '@dbuser@'@'localhost' IDENTIFIED BY '@dbpass@' WITH GRANT OPTION; ++GRANT ALL PRIVILEGES ON @dbname@.* TO '@dbuser@'@'%' IDENTIFIED BY '@dbpass@'; ++ ++USE @dbname@; ++ ++DROP TABLE IF EXISTS table_fid; ++ ++CREATE TABLE table_fid ( ++ id INT NOT NULL AUTO_INCREMENT, ++ primary key (id) ++); ++ ++DROP FUNCTION IF EXISTS select_fid; ++ ++DELIMITER // ++ ++CREATE FUNCTION select_fid () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA ++BEGIN ++ DECLARE xid INT; ++ INSERT into table_fid VALUES(); ++ SELECT last_insert_id() into xid; ++ RETURN xid; ++END // ++ ++DELIMITER ; ++ ++DROP TABLE IF EXISTS table_serial_id; ++ ++CREATE TABLE table_serial_id ( ++ id INT NOT NULL AUTO_INCREMENT, ++ primary key (id) ++) AUTO_INCREMENT = 9; ++ ++DROP FUNCTION IF EXISTS select_serial_id; ++ ++DELIMITER // ++ ++CREATE FUNCTION select_serial_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA ++BEGIN ++ DECLARE xid INT; ++ INSERT into table_serial_id VALUES(); ++ SELECT last_insert_id() into xid; ++ RETURN xid; ++END // ++ ++DELIMITER ; ++ ++ ++DROP TABLE IF EXISTS table_import_id; ++ ++CREATE TABLE table_import_id ( ++ id INT NOT NULL AUTO_INCREMENT, ++ primary key (id) ++); ++ ++DROP FUNCTION IF EXISTS select_import_id; ++ ++DELIMITER // ++ ++CREATE FUNCTION select_import_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA ++BEGIN ++ DECLARE xid INT; ++ INSERT into table_import_id VALUES(); ++ SELECT last_insert_id() into xid; ++ RETURN xid; ++END // ++ ++DELIMITER ; ++ ++ ++DROP TABLE IF EXISTS table_insert_id; ++ ++CREATE TABLE table_insert_id ( ++ id INT NOT NULL AUTO_INCREMENT, ++ primary key (id) ++) AUTO_INCREMENT = 101; ++ ++DROP FUNCTION IF EXISTS select_insert_id; ++ ++DELIMITER // ++ ++CREATE FUNCTION select_insert_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA ++BEGIN ++ DECLARE xid INT; ++ INSERT into table_insert_id VALUES(); ++ SELECT last_insert_id() into xid; ++ RETURN xid; ++END // ++ ++DELIMITER ; ++ ++DROP TABLE IF EXISTS table_profile_id; ++ ++CREATE TABLE table_profile_id ( ++ id INT NOT NULL AUTO_INCREMENT, ++ primary key (id) ++); ++ ++DROP FUNCTION IF EXISTS select_profile_id; ++ ++DELIMITER // ++ ++CREATE FUNCTION select_profile_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA ++BEGIN ++ DECLARE xid INT; ++ INSERT into table_profile_id VALUES(); ++ SELECT last_insert_id() into xid; ++ RETURN xid; ++END // ++ ++ ++DELIMITER ; ++ +diff -rNBwU 2 open-xchange-0.8.2-RC3-origin/system/setup/init_mysql_database.sql open-xchange-0.8.2-RC3/system/setup/init_mysql_database.sql +--- open-xchange-0.8.2-RC3-origin/system/setup/init_mysql_database.sql 2006-02-14 14:33:43.000000000 +0100 ++++ open-xchange-0.8.2-RC3/system/setup/init_mysql_database.sql 2006-02-15 15:22:55.000000000 +0100 +@@ -1,111 +1,2 @@ +- +-DROP TABLE IF EXISTS table_fid; +- +-CREATE TABLE table_fid ( +- id INT NOT NULL AUTO_INCREMENT, +- primary key (id) +-); +- +-DROP FUNCTION IF EXISTS select_fid; +- +-DELIMITER // +- +-CREATE FUNCTION select_fid () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA +-BEGIN +- DECLARE xid INT; +- INSERT into table_fid VALUES(); +- SELECT last_insert_id() into xid; +- RETURN xid; +-END // +- +-DELIMITER ; +- +-DROP TABLE IF EXISTS table_serial_id; +- +-CREATE TABLE table_serial_id ( +- id INT NOT NULL AUTO_INCREMENT, +- primary key (id) +-) AUTO_INCREMENT = 9; +- +-DROP FUNCTION IF EXISTS select_serial_id; +- +-DELIMITER // +- +-CREATE FUNCTION select_serial_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA +-BEGIN +- DECLARE xid INT; +- INSERT into table_serial_id VALUES(); +- SELECT last_insert_id() into xid; +- RETURN xid; +-END // +- +-DELIMITER ; +- +- +-DROP TABLE IF EXISTS table_import_id; +- +-CREATE TABLE table_import_id ( +- id INT NOT NULL AUTO_INCREMENT, +- primary key (id) +-); +- +-DROP FUNCTION IF EXISTS select_import_id; +- +-DELIMITER // +- +-CREATE FUNCTION select_import_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA +-BEGIN +- DECLARE xid INT; +- INSERT into table_import_id VALUES(); +- SELECT last_insert_id() into xid; +- RETURN xid; +-END // +- +-DELIMITER ; +- +- +-DROP TABLE IF EXISTS table_insert_id; +- +-CREATE TABLE table_insert_id ( +- id INT NOT NULL AUTO_INCREMENT, +- primary key (id) +-) AUTO_INCREMENT = 101; +- +-DROP FUNCTION IF EXISTS select_insert_id; +- +-DELIMITER // +- +-CREATE FUNCTION select_insert_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA +-BEGIN +- DECLARE xid INT; +- INSERT into table_insert_id VALUES(); +- SELECT last_insert_id() into xid; +- RETURN xid; +-END // +- +-DELIMITER ; +- +-DROP TABLE IF EXISTS table_profile_id; +- +-CREATE TABLE table_profile_id ( +- id INT NOT NULL AUTO_INCREMENT, +- primary key (id) +-); +- +-DROP FUNCTION IF EXISTS select_profile_id; +- +-DELIMITER // +- +-CREATE FUNCTION select_profile_id () RETURNS INTEGER DETERMINISTIC MODIFIES SQL DATA +-BEGIN +- DECLARE xid INT; +- INSERT into table_profile_id VALUES(); +- SELECT last_insert_id() into xid; +- RETURN xid; +-END // +- +- +-DELIMITER ; +- + CREATE TABLE prg_dlist ( + intfield01 integer, +@@ -446,5 +337,5 @@ + timestampfield01 timestamp , + timestampfield02 timestamp , +- intfield01 int NOT NULL, ++ intfield01 int PRIMARY KEY, + intfield02 int, + intfield03 int, +@@ -1127,5 +1018,5 @@ + CREATE TABLE projects_notes ( + intfield01 integer, +- note_id VARCHAR (255), ++ note_id VARCHAR(166), + member_id text, + primary key (intfield01, note_id), +@@ -1135,5 +1026,5 @@ + CREATE TABLE backup_projects_notes ( + intfield01 integer, +- note_id VARCHAR (255), ++ note_id VARCHAR(166), + member_id text, + primary key (intfield01, note_id), +@@ -1178,5 +1069,5 @@ + intfield01 integer, + id integer, +- antecessor VARCHAR (255), ++ antecessor VARCHAR(166), + object_type integer, + primary key (intfield01, id, antecessor), +@@ -1187,5 +1078,5 @@ + intfield01 integer, + id integer, +- antecessor VARCHAR (255), ++ antecessor VARCHAR(166), + object_type integer, + primary key (intfield01, id, antecessor), +@@ -1328,5 +1219,35 @@ + timestampfield01 timestamp , + timestampfield02 timestamp , +- intfield01 int NOT NULL, ++ intfield01 int PRIMARY KEY, ++ intfield02 int, ++ intfield03 int, ++ intfield04 int, ++ intfield05 int, ++ intfield06 int, ++ field01 text NOT NULL, ++ field02 text, ++ field03 text, ++ field04 text, ++ field05 text, ++ field06 text, ++ field07 text, ++ field08 text, ++ field09 text, ++ field10 text ++); ++ ++CREATE TABLE del_docufolders ( ++ creating_date timestamp NOT NULL, ++ created_from text NOT NULL, ++ changing_date timestamp, ++ changed_from text, ++ user_right text NOT NULL, ++ group_right text NOT NULL, ++ sid text NOT NULL, ++ tid text, ++ order_crit text, ++ timestampfield01 timestamp, ++ timestampfield02 timestamp, ++ intfield01 int PRIMARY KEY, + intfield02 int, + intfield03 int, +@@ -1358,5 +1279,35 @@ + timestampfield01 timestamp , + timestampfield02 timestamp , +- intfield01 int NOT NULL, ++ intfield01 int PRIMARY KEY, ++ intfield02 int NOT NULL, ++ intfield03 int, ++ intfield04 int, ++ intfield05 int, ++ intfield06 int, ++ field01 text NOT NULL, ++ field02 text, ++ field03 text, ++ field04 text, ++ field05 text, ++ field06 text, ++ field07 text, ++ field08 text, ++ field09 text, ++ field10 text ++); ++ ++CREATE TABLE del_documents ( ++ creating_date timestamp NOT NULL, ++ created_from text NOT NULL, ++ changing_date timestamp, ++ changed_from text, ++ user_right text NOT NULL, ++ group_right text NOT NULL, ++ sid text NOT NULL, ++ tid text, ++ order_crit text, ++ timestampfield01 timestamp, ++ timestampfield02 timestamp, ++ intfield01 int PRIMARY KEY, + intfield02 int NOT NULL, + intfield03 int, +@@ -1388,5 +1339,35 @@ + timestampfield01 timestamp , + timestampfield02 timestamp , +- intfield01 int NOT NULL, ++ intfield01 int PRIMARY KEY, ++ intfield02 int NOT NULL, ++ intfield03 int NOT NULL, ++ intfield04 int, ++ intfield05 int, ++ intfield06 int, ++ field01 text NOT NULL, ++ field02 text, ++ field03 text NOT NULL, ++ field04 text NOT NULL, ++ field05 text, ++ field06 text, ++ field07 text, ++ field08 text, ++ field09 text, ++ field10 text ++); ++ ++CREATE TABLE del_documents_files ( ++ creating_date timestamp NOT NULL, ++ created_from text, ++ changing_date timestamp, ++ changed_from text, ++ user_right text, ++ group_right text, ++ sid text NOT NULL, ++ tid text, ++ order_crit text, ++ timestampfield01 timestamp, ++ timestampfield02 timestamp, ++ intfield01 int PRIMARY KEY, + intfield02 int NOT NULL, + intfield03 int NOT NULL, +@@ -1971,5 +1952,5 @@ + CREATE TABLE sys_linkage ( + changing_date timestamp NOT NULL, +- luid int NOT NULL, ++ luid int PRIMARY KEY, + source_id int NOT NULL, + src_table text NOT NULL, +@@ -1991,5 +1972,5 @@ + CREATE TABLE del_linkage ( + changing_date timestamp NOT NULL, +- luid int NOT NULL, ++ luid int PRIMARY KEY, + source_id int NOT NULL, + src_table text NOT NULL, +@@ -2045,4 +2026,10 @@ + ); + ++CREATE TABLE oxfolder_userfolders_standardfolders ( ++ owner text, ++ module text, ++ fuid int ++); ++ + CREATE TABLE del_oxfolder_tree ( + fuid int, +@@ -2109,12 +2096,18 @@ + ); + +-INSERT INTO oxfolder_tree VALUES (1, 0, 'private', 'system', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (2, 0, 'public', 'system', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (3, 0, 'shared', 'system', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (4, 0, 'system', 'system', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (5, 4, 'system_global', 'contact', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (6, 4, 'system_ldap', 'contact', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (7, 0, 'user', 'system', 'system','system', 'system', now(), 'System', null, null); +-INSERT INTO oxfolder_tree VALUES (8, 7, 'projects', 'projects', 'system','system', 'system', now(), 'System', null, null); ++CREATE TABLE del_system_objects ( ++ object_type int, ++ object_id text, ++ deleting_date timestamp ++); ++ ++INSERT INTO oxfolder_tree VALUES (1, 0, 'private', 'system', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (2, 0, 'public', 'system', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (3, 0, 'shared', 'system', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (4, 0, 'system', 'system', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (5, 4, 'system_global', 'contact', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (6, 4, 'system_ldap', 'contact', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (7, 0, 'user', 'system', 'system','system', 'system', 'now', 'System', null, null); ++INSERT INTO oxfolder_tree VALUES (8, 7, 'projects', 'projects', 'system','system', 'system', 'now', 'System', null, null); + + INSERT INTO oxfolder_permissions VALUES (select_serial_id(), 1, 512,'all_ox_users_and_ox_groups', 0, 8, 0, 0, 0); + diff --git a/www-apps/open-xchange/files/open-xchange-htaccess b/www-apps/open-xchange/files/open-xchange-htaccess new file mode 100644 index 0000000..83c7cf0 --- /dev/null +++ b/www-apps/open-xchange/files/open-xchange-htaccess @@ -0,0 +1,7 @@ +<IfModule mod_rewrite.c> + RewriteEngine on + + RewriteRule ^$ /cgi-bin/login.pl + RewriteRule ^/$ /cgi-bin/login.pl + RewriteRule ^/open-xchange/(.*)$ $1 [L,QSA] +</IfModule> diff --git a/www-apps/open-xchange/files/openexchange b/www-apps/open-xchange/files/openexchange new file mode 100644 index 0000000..1f91da2 --- /dev/null +++ b/www-apps/open-xchange/files/openexchange @@ -0,0 +1,59 @@ +#! /bin/sh + +PROG_NAME="OX" + +groupware="/etc/open-xchange/init.d/groupware" +webmail="/etc/open-xchange/init.d/webmail" +sessiond="/etc/open-xchange/init.d/sessiond" + +case "$1" in + start) + echo "Starting all" + start="$sessiond start" + $start + + start="$groupware start" + $start + + start="$webmail start" + $start + ;; + stop) + echo "Stoping all" + stop="$sessiond stop" + $stop + + stop="$groupware stop" + $stop + + stop="$webmail stop" + $stop + ;; + restart) + echo "Restarting all" + restart="$sessiond restart" + $restart + + restart="$groupware restart" + $restart + + restart="$webmail restart" + $restart + ;; + status) + echo "Checking all" + + status="$sessiond status" + $status + + status="$groupware status" + $status + + status="$webmail status" + $status + ;; + *) + echo "Usage: $0 {start|stop|status|restart}" + exit 1 + ;; +esac diff --git a/www-apps/open-xchange/files/ox_project.sql b/www-apps/open-xchange/files/ox_project.sql new file mode 100644 index 0000000..d9dc0f1 --- /dev/null +++ b/www-apps/open-xchange/files/ox_project.sql @@ -0,0 +1,238 @@ +CREATE SEQUENCE "serial_id" start 9 increment 1 maxvalue 2147483647 minvalue 1 cache 1 cycle; +CREATE TABLE projects ( + "intfield01" integer, + "fuid" integer, + "creation_date" timestamp with time zone, + "created_from" text, + "changing_date" timestamp with time zone, + "changed_from" text, + "user_right" text, + "sid" text, + "tid" text, + "project_startdate" timestamp with time zone, + "project_enddate" timestamp with time zone, + "project_deadline" timestamp with time zone, + "project_reminder" timestamp with time zone, + "project_budget" text, + "project_effort" text, + "project_effort_unit" text, + "project_currency" text, + "project_type" text, + "project_kickoff" timestamp with time zone, + "project_description" text, + "project_goal" text, + "project_customer" text, + "project_name" text, + "project_status" text, + "project_phase" text, + "project_number_of_attachments" integer, + "project_task_folder_id" integer, + "project_manage_permissions" integer, + primary key (intfield01) +); + +CREATE TABLE backup_projects ( + "intfield01" integer, + "fuid" integer, + "creation_date" timestamp with time zone, + "created_from" text, + "changing_date" timestamp with time zone, + "changed_from" text, + "user_right" text, + "sid" text, + "tid" text, + "project_startdate" timestamp with time zone, + "project_enddate" timestamp with time zone, + "project_deadline" timestamp with time zone, + "project_reminder" timestamp with time zone, + "project_budget" text, + "project_effort" text, + "project_effort_unit" text, + "project_currency" text, + "project_type" text, + "project_kickoff" timestamp with time zone, + "project_description" text, + "project_goal" text, + "project_customer" text, + "project_name" text, + "project_status" text, + "project_phase" text, + "project_number_of_attachments" integer, + "project_task_folder_id" integer, + "project_manage_permissions" integer, + primary key (intfield01) +); + +CREATE TABLE projects_participants ( + "intfield01" integer, + "id" text, + "name" text, + "role" integer, + "ptype" integer, + "group_id" text, + "merged_permission" integer, + primary key (intfield01, id, group_id), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_participants ( + "intfield01" integer, + "id" text, + "name" text, + "role" integer, + "ptype" integer, + "group_id" text, + "merged_permission" integer, + primary key (intfield01, id, group_id), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE TABLE projects_milestones ( + "intfield01" integer, + "id" integer, + "name" text, + "description" text, + "mdate" timestamp with time zone, + primary key (intfield01, id), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_milestones ( + "intfield01" integer, + "id" integer, + "name" text, + "description" text, + "mdate" timestamp with time zone, + primary key (intfield01, id), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE TABLE projects_notes ( + "intfield01" integer, + "note_id" text, + "member_id" text, + primary key (intfield01, note_id), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_notes ( + "intfield01" integer, + "note_id" text, + "member_id" text, + primary key (intfield01, note_id), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE TABLE projects_tasks ( + "intfield01" integer, + "task_id" integer, + primary key (intfield01, task_id), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_tasks ( + "intfield01" integer, + "task_id" integer, + primary key (intfield01, task_id), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE TABLE projects_dependencies ( + "intfield01" integer, + "id" integer, + "successor" text, + "dependency_type" integer, + "object_type" integer, + primary key (intfield01, id), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_dependencies ( + "intfield01" integer, + "id" integer, + "successor" text, + "dependency_type" integer, + "object_type" integer, + primary key (intfield01, id), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE TABLE projects_antecessors ( + "intfield01" integer, + "id" integer, + "antecessor" text, + "object_type" integer, + primary key (intfield01, id, antecessor), + foreign key (intfield01, id) references projects_dependencies on delete cascade on update cascade +); + +CREATE TABLE backup_projects_antecessors ( + "intfield01" integer, + "id" integer, + "antecessor" text, + "object_type" integer, + primary key (intfield01, id, antecessor), + foreign key (intfield01, id) references backup_projects_dependencies on delete cascade on update cascade +); + +CREATE TABLE projects_puids ( + "intfield01" integer, + "puid" integer, + "entity" text, + "fuid" integer, + primary key (intfield01, puid), + foreign key (intfield01) references projects on delete cascade on update cascade +); + +CREATE TABLE backup_projects_puids ( + "intfield01" integer, + "puid" integer, + "entity" text, + "fuid" integer, + primary key (intfield01, puid), + foreign key (intfield01) references backup_projects on delete cascade on update cascade +); + +CREATE table "oxfolder_userfolders" ( + "module_name" text, + "linksite" text, + "target" text, + "img" text +); + + +CREATE TABLE "ical_principal" ( + "object_id" int, + "principal" text, + "calendarfolder" int, + "taskfolder" int +); + +CREATE TABLE "ical_ids" ( + "object_id" int, + "principal_id" int, + "client_id" text, + "target_object_id" int, + "module" int +); + +CREATE TABLE "vcard_principal" ( + "object_id" int, + "principal" text, + "contactfolder" int +); + +CREATE TABLE "vcard_ids" ( + "object_id" int, + "principal_id" int, + "client_id" text, + "target_object_id" int +); + +INSERT INTO oxfolder_tree VALUES (7, 0, 'user', 'system', 'system','system', 'system', 'now', 'System', null, null); +INSERT INTO oxfolder_tree VALUES (8, 7, 'projects', 'projects', 'system','system', 'system', 'now', 'System', null, null); +INSERT INTO oxfolder_permissions VALUES ((select nextval('serial_id')), 7, 512, 'all_ox_users_and_ox_groups', 0, 2, 0, 0, 0); +INSERT INTO oxfolder_permissions VALUES ((select nextval('serial_id')), 8, 512, 'all_ox_users_and_ox_groups', 0, 8, 4, 2, 2); +INSERT INTO oxfolder_specialfolders VALUES ('user', 7); + +INSERT INTO oxfolder_userfolders VALUES ('projects', 'projects/projects_list_all', null, 'folder/item_projects.png'); diff --git a/www-apps/open-xchange/files/ox_reminder.sql b/www-apps/open-xchange/files/ox_reminder.sql new file mode 100644 index 0000000..84e6c1e --- /dev/null +++ b/www-apps/open-xchange/files/ox_reminder.sql @@ -0,0 +1,10 @@ +CREATE TABLE "reminder" ( + "object_id" int, + "target_id" text, + "module" int, + "username" text, + "alarm" timestamp with time zone, + "description" text, + "folder" text +); + diff --git a/www-apps/open-xchange/files/postinstall-en.txt b/www-apps/open-xchange/files/postinstall-en.txt new file mode 100644 index 0000000..5638ea0 --- /dev/null +++ b/www-apps/open-xchange/files/postinstall-en.txt @@ -0,0 +1,31 @@ +=========================================================== + + You have successfully installed Open-Xchange + +=========================================================== + + o FILE LOCATIONS + + 1. Open-Xchange home directory: /opt/open-xchange + 2. Configuration: /opt/open-xchange/etc + 3. Scripts to add user, ...: /opt/open-xchange/sbin + + o STARTING and STOPPING the Open-Xchange + + /etc/init.d/openexchange start + /etc/init.d/openexchange stop + /etc/init.d/openexchange restart + + o IMPORTANT: + + 1. Please be sure that your postgresql enables TCP/IP connections. + + /etc/conf.d/postgresql + + PGOPTS="-i" + + o HOW TO TEST + + Point your browser on the Open-Xchange site: + + http://localhost/cgi-bin/login-pl diff --git a/www-apps/open-xchange/files/reconfig b/www-apps/open-xchange/files/reconfig new file mode 100644 index 0000000..2c629c1 --- /dev/null +++ b/www-apps/open-xchange/files/reconfig @@ -0,0 +1,142 @@ +#!/bin/bash + +function die { + echo $1 + exit 1 +} + +# +# INSTALL +# +if [ $1 = "start" -o $1 = "install" ]; then + echo "" + echo "" + echo "" + # + # + # Preparing TOMCAT + # + # + echo "- Prepare Tomcat servlet directory for the Open-Xchange" + + mkdir -p /opt/tomcat5/webapps/servlet/WEB-INF/classes + cp /opt/open-xchange/share/servlets/* /opt/tomcat5/webapps/servlet/WEB-INF/classes/ + mkdir -p /opt/tomcat5/webapps/servlet/WEB-INF/lib + cp /opt/open-xchange/lib/* /opt/tomcat5/webapps/servlet/WEB-INF/lib/ + cp ${FILESDIR}/web.xml /opt/tomcat5/webapps/servlet/WEB-INF/web.xml + chown -R tomcat:tomcat /opt/tomcat5/webapps/servlet/ + chmod -R 755 /opt/tomcat5/webapps/servlet/ + + echo "- Restarting tomcat" + /etc/init.d/tomcat5 restart || die "tomcat needs to be running" + + # + # + # Preparing the DB + # + # + echo "- Starting postgresql" + /etc/init.d/postgresql restart || die "postgresql needs to be running" + echo "- Create openexchange user" + sudo -u postgres createuser -A -d openexchange >/dev/null 2>&1 + echo "- Create openexchange database" + sudo -u postgres createdb -O openexchange -E UNICODE openexchange >/dev/null 2>&1 + echo "- Init openexchange database" + psql -U openexchange openexchange < /opt/open-xchange/share/init_database.sql >/dev/null 2>&1 + psql -U openexchange openexchange < ${FILESDIR}/init_db.sql >/dev/null 2>&1 + + # + # + # Preparing SLAPD + # + # + cp ${FILESDIR}/ldap_ox.include /opt/open-xchange/etc/. + chmod 640 /opt/open-xchange/etc/ldap_ox.include + chown root:ldap /opt/open-xchange/etc/ldap_ox.include + + #egrep -e "ldap_ox.include" /etc/openldap/slapd.conf + #if [ $? -eq 1 ] ; then + # echo "include /opt/open-xchange/etc/ldap_ox.include" >> /etc/openldap/slapd.conf + # chown ldap:ldap /etc/openldap/slapd.conf + #fi + + # make state directories + #mkdir /var/lib/openldap-ox + #chown ldap:ldap /var/lib/openldap-ox + #chmod 0700 /var/lib/openldap-ox + + #echo "- Starting ldap" + #/etc/init.d/slapd restart || die "slapd needs to be running" + + #PASS=`perl -e 'print crypt(admin,pack("C2",(int(rand 26)+65),(int(rand 26)+65)));'` + sed -i "s|newmailadminpass|$PASS|g" /opt/open-xchange/share/init_ldap.ldif + #slapadd -b "dc=example,dc=org" -l /opt/open-xchange/share/init_ldap.ldif + + #egrep -e "dc=example,dc=org" /etc/openldap/ldap.conf + #if [ $? -eq 1 ] ; then + # echo "BASE dc=example,dc=org" >> /etc/openldap/ldap.conf + # echo "HOST localhost" >> /etc/openldap/ldap.conf + # chown ldap:ldap /etc/openldap/slapd.conf + #fi + + ln -s /etc/openldap/ldap.conf /opt/open-xchange/etc/groupware/ldap.conf + ln -s /etc/openldap/ldap.conf /opt/open-xchange/etc/webmail/ldap.conf + + # + # + # Creating test user + # + # + #/opt/open-xchange/sbin/./adduser_ox \ + # --username="test" \ + # --passwd="test" \ + # --name="user" \ + # --sname="test" \ + # --maildomain="example.org" \ + # --ox_timezone="Europe/Paris" + + #/opt/open-xchange/sbin/./addgroup_ox --group=developers + + # + # + # Filespool + # + # + echo "- Creating filespool" + /opt/open-xchange/sbin/./correctfilespool + + # + # + # Admintools + # + # + echo "- Changing admintools" + sed -i "s|cn=Manager|uid=admin|g" /opt/open-xchange/etc/admintools.conf + + # + # + # Restarting apache2 + # + # + #echo "- Restarting apache2" + #/etc/init.d/apache2 restart || die "apache2 needs to be running" + + # + # + # Restarting open-xchange + # + # + #echo "- Restarting open-xchange" + #/etc/init.d/openexchange start || die "openxchange needs to be running" + +# +# CLEAN +# +else + echo "- Delete Tomcat servlet directory" + rm -r /opt/tomcat5/webapps/servlet/ >/dev/null 2>&1 + rm -r /opt/open-xchange/etc/ + rm -r /opt/open-xchange/share/ + rm -r /opt/open-xchange/var/ +fi + diff --git a/www-apps/open-xchange/files/slapd.ox.inc b/www-apps/open-xchange/files/slapd.ox.inc new file mode 100644 index 0000000..b09c7d4 --- /dev/null +++ b/www-apps/open-xchange/files/slapd.ox.inc @@ -0,0 +1,49 @@ +access to dn.base="" + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by * read + +access to dn.base="cn=Subschema" + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by * read + +# protect the userPassword attribute +access to attrs=userPassword,shadowLastChange + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by anonymous auth + by self write + by * none + +# global address book +access to dn.subtree="o=AddressBook,ou=OxObjects,@basedn@" + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by group.exact="cn=AddressAdmins,o=AddressBook,ou=OxObjects,@basedn@" write + by users read + +# personal address book +access to dn.regex="^ou=addr,(uid=([^,]+),ou=Users,ou=OxObjects,@basedn@)$" attrs=children + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by dn.exact,expand="$1" write +access to dn.regex="^uid=([^,]+),ou=addr,(uid=([^,]+),ou=Users,ou=OxObjects,@basedn@)$" attrs=entry + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by dn.exact,expand="$2" write + +# default rule allowing users full access to their own entries + +# In order to let users modify their attributes through OX, you must grant +# users access to modify uid because of upstream bug #736: +# http://www.open-xchange.org/cgi-bin/bugzilla/show_bug.cgi?id=736 +# +# This is not secure and thus hasn't been set here. To enable it, add +# uid to the following list +access to attrs=birthDay,cn,description,facsimileTelephoneNumber,gecos,givenName,homePhone,initials,l,labeledURI,mobile,o,ou,OXAppointmentDays,OXDayViewInterval,OXDayViewEndTime,OXDayViewStartTime,OXTaskDays,OXTimeZone,pager,postalCode,preferredLanguage,sn,st,street,telephoneNumber,title,userCountry + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by self write + by * read + +access to * + by dn="uid=root,ou=Users,ou=OxObjects,@basedn@" write + by * read + +# This is supposed to give a performance boose, but it just breaks things for +# me -- eradicator +#index uid,mailEnabled,cn,sn,givenname,lnetMailAccess,alias,loginDestination eq,sub diff --git a/www-apps/open-xchange/files/web.xml b/www-apps/open-xchange/files/web.xml new file mode 100644 index 0000000..163d52c --- /dev/null +++ b/www-apps/open-xchange/files/web.xml @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> + +<!DOCTYPE web-app +PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" +"http://java.sun.com/dtd/web-app_2_3.dtd"> + +<web-app> +<display-name>Servlet OpenXchange</display-name> +<description> +Servlet OpenXchange 0.7.0 +</description> + + +<servlet> +<servlet-name>intranet</servlet-name> +<servlet-class>intranet</servlet-class> +<display-name>OX Groupware</display-name> +<description>OX</description> +</servlet> + +<servlet> +<servlet-name>webmail</servlet-name> +<servlet-class>webmail</servlet-class> +<display-name>OX Webmail</display-name> +<description>OX</description> +</servlet> + +<servlet-mapping> +<servlet-name>intranet</servlet-name> +<url-pattern>/intranet</url-pattern> +</servlet-mapping> + +<servlet-mapping> +<servlet-name>webmail</servlet-name> +<url-pattern>/webmail</url-pattern> +</servlet-mapping> + +</web-app> |