Hi Stefan,

thanks for the bug report.

The bug (and other ones related to newer postgres versions) are fixed in
the current release 1.4. The old version 1.2 is no longer supported by
the egroupware project.

Committing the fix is of cause easy, thought there would be no new 1.2
release, as 1.2 also has other security, php5 and postgres related problems.

I can only recommend to update eGroupWare version 1.4, which is still in
testing in debian afaik.

Ralf

Stefan Bellon schrieb:
> Package: egroupware-infolog
> Version: 1.2.107-2.dfsg-2
> Severity: serious
> Tags: patch
> 
> --- Please enter the report below this line. ---
> 
> After upgrading to egroupware version 1.2.107, the day view in the
> calendar does not work for single users anymore, only for groups. Week
> and month views still work for single users. The error message one gets
> when visiting a person's day view is the following:
> 
> 
> Database error: Invalid SQL: SELECT main.info_id FROM egw_infolog main
> WHERE ( ((info_owner=6 AND info_responsible=0 OR
> ','||info_responsible||',' LIKE '%,6,%') AND (info_owner=6 OR
> (','||info_responsible||',' LIKE '%,6,%' AND info_access='public') OR
> info_owner IN (6) OR (info_access='public' AND info_owner
> IN(-11,6,12,7,9,-1,8,-10))) ) AND NOT (info_status IN
> ('done','billed','cancelled')) AND info_startdate < '1204326000' )
> pgsql Error: -1 (ERROR: operator does not exist: character varying =
> integer LINE 1: ... main WHERE ( ((info_owner=6 AND info_responsible=0
> OR ','|... ^ HINT: No operator matches the given name and argument
> type(s). You might need to add explicit type casts.)
> 
> File: /usr/share/egroupware/infolog/inc/class.soinfolog.inc.php
> Line: 590
> Function: soinfolog::search / boinfolog::search /
> boinfolog::cal_to_include /
> ExecMethod(infolog.boinfolog.cal_to_include) / hooks::single /
> hooks::process / uiviews::get_todos / uiviews::day /
> ExecMethod(calendar.uiviews.day)
> 
> Session halted.
> 
> 
> Having looked at the database schema of egw_infolog I verified that
> postgresql is correct here as the info_responsible column is of type
> character varying but gets compared to integer. Having looked
> inside /usr/share/egroupware/infolog/inc/class.soinfolog.inc.php I
> indeed spotted the problem in line 167 where info_responsible=0 is
> missing the quotation marks to make the 0 a string literal. After
> replacing it with info_responsible='0', the day view works again.
> 
> 
> 
> --- System information. ---
> Architecture: i386
> Kernel:       Linux 2.6.16
> 
> Debian Release: lenny/sid
>   500 unstable        www.debian-multimedia.org 
>   500 unstable        ftp.debian.org 
> 
> --- Package information. ---
> Depends                             (Version) | Installed
> =============================================-+-=====================
> egroupware-core          (= 1.2.107-2.dfsg-2) | 1.2.107-2.dfsg-2
> egroupware-etemplate     (= 1.2.107-2.dfsg-2) | 1.2.107-2.dfsg-2
> 
> 

-- 
Ralf Becker
eGroupWare Training & Support ==> http://www.egroupware-support.de
Outdoor Unlimited Training GmbH [www.outdoor-training.de]
Handelsregister HRB Kaiserslautern 3587
Geschäftsführer Birgit und Ralf Becker
Leibnizstr. 17, 67663 Kaiserslautern, Germany
Telefon +49 (0)631 31657-0


Reply via email to