6.0.0-beta1
7/4/25

[#12410] After upgrading to 3.1.1 from 3.0.x Ingo fails to display Sieve Rules
Summary After upgrading to 3.1.1 from 3.0.x Ingo fails to display Sieve Rules
Queue Ingo
Queue Version 3.1.1
Type Bug
State Not A Bug
Priority 1. Low
Owners
Requester krah.tm (at) gmail (dot) com
Created 06/27/2013 (4390 days ago)
Due
Updated 11/29/2013 (4235 days ago)
Assigned
Resolved 07/02/2013 (4385 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
11/29/2013 10:31:00 AM m (dot) roth (at) roth-digital (dot) de Comment #6 Reply to this comment
Hello,

you must insert a semicolon at the end of the line. So you must insert 
"print_r($scripts);"

I have the same error und found out, that the $scripts variable is set 
to a string "sieve"

I used the backend configuration from the backends.ph and copied it 
into my backend.local.php:

$backends['sieve'] = array(
     'disabled' => false,
     'transport' => array(
         Ingo::RULE_ALL => array(
             'driver' => 'timsieved',
             'params' => array(
                 'hostspec' => 'localhost',
                 'logintype' => 'PLAIN',
                 'usetls' => false,
                 'port' => 4190,
                 'scriptname' => 'ingo',
                 'debug' => true,
             ),
         ),
     ),
     'script' => array(
         Ingo::RULE_ALL => array(
             'driver' => 'sieve',
             'params' => array(
                 'utf8' => false,
              ),
         ),
     ),
     'shares' => false
);

Can you help me to locate the error.

Best wishes,
Michael Roth

[Show Quoted Text - 33 lines]
10/14/2013 12:38:40 PM Jan Schneider Comment #5 Reply to this comment

[Show Quoted Text - 33 lines]
Please use the mailing list to ask for support.

http://www.horde.org/mail/ contains a list of all available mailing lists.
10/11/2013 08:33:24 AM christoph (dot) haas (at) ukbw (dot) de Comment #4 Reply to this comment
I've restarted my Apache2 severeal times, but the error did not go away!

If I insert "print_r($scripts)"  before line 116 in 
"/var/www/horde/ingo/lib/Factory/Script.php" as suggested, so it reads
--- snip ---
public function createAll()
     {
         $scripts = $GLOBALS['session']
             ->get('ingo', 'backend/script', Horde_Session::TYPE_ARRAY);
         $instances = array();
         /* 2013-10-11, 10:04:36, haasc: fuer debugging */
         print_r($scripts)
         foreach (array_keys($scripts) as $rule) {
             $instances[$rule] = $this->create($rule);
         }
         return $instances;
     }
--- snap ---

and reload the page, the whole Horde-WebUI (not only Ingo!) wents just white.
No error in "var/log/syslog", no error in "/var/log/apache2/error.log" ...

After removing or commenting the "print_r($scripts)"-line, everything 
is again OK besides that no sieve-filters are displayed in Ingo.

Where can I look further?

System Debian, Horde 5.1.2. Ingo 3.1.2.
The Mailserver resides on different machine.
I have several sieve-scripts, which I can manage on the mailserver via 
sievshell, so that it is verfied that timsieved is working.

07/02/2013 10:11:09 AM Jan Schneider State ⇒ Not A Bug
 
06/28/2013 07:49:18 AM krah (dot) tm (at) gmail (dot) com Comment #3 Reply to this comment
Hm thats interesting - i did reload and restart the webserver via 
reload and restart commands of init script after installation + 
reconfiguring. Did not help yesterday.

Looking at the server today to provide the needed infos its working 
and filters are there, so actually i don't know why something was 
cached and why its gone now - sorry for the noise.
06/27/2013 03:06:14 PM Michael Slusarz Comment #2
Priority ⇒ 1. Low
Reply to this comment
Have you tried restarting your web/PHP server?  That is the correct 
line, so if it is not working something might be cached.

Otherwise, you will need to debug to determine what *is* the value on 
line 116 (i.e. adding print_r($scripts) debug statement right before 
line 116).
06/27/2013 02:48:06 PM krah (dot) tm (at) gmail (dot) com Comment #1
Priority ⇒ 2. Medium
Type ⇒ Bug
Summary ⇒ After upgrading to 3.1.1 from 3.0.x Ingo fails to display Sieve Rules
Due ⇒ 06/27/2013
Queue ⇒ Ingo
Milestone ⇒
Patch ⇒ No
State ⇒ Unconfirmed
Reply to this comment
Did upgrade Ingo and Horde to 3.1.1 and 5.1.1. I did upgrade the 
backends.local.php to read:

<?php
$backends['imap']['disabled'] = true;
$backends['sieve']['disabled'] = false;
$backends['sieve']['script'][Ingo::RULE_ALL]['params']['utf8'] = true;
?>

but the horde error log still does complain:

Jun 27 16:28:30 mail HORDE: [ingo] PHP ERROR: Invalid argument 
supplied for foreach() [pid 24197 on line 116 of 
"/var/www/horde/ingo/lib/Factory/Script.php"]
Jun 27 16:28:30 mail HORDE: [ingo] PHP ERROR: array_keys() expects 
parameter 1 to be array, string given [pid 24197 on line 116 of 
"/var/www/horde/ingo/lib/Factory/Script.php"]

The rules itself are stored and configured in the standard sql backend 
configured since initial installation of this instance.

Did a "grep \'script\'" in the ingo config folder but all 'script' 
matches are arrays.

backends.local.php:$backends['sieve']['script'][Ingo::RULE_ALL]['params']['utf8'] = 
true;
backends.php: * 
$backends['sieve']['script'][Ingo::RULE_ALL]['params']['utf8'] = true;
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
backends.php:    'script' => array(
prefs.php:$prefGroups['script'] = array(

Whats wrong here? Something i can do to get Ingo working again?

PHP version used is: 5.3.2-1ubuntu4.19 from Ubuntu LTS 10.04 Server variant.

Saved Queries