roundcubemail/plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php
protected function init_script()
    {
        if (!$this->sieve->script) {
            return;
        }

        $this->script = $this->sieve->script->as_array();

        $headers    = array();
        $exceptions = array('date', 'currentdate', 'size', 'body');

        // find common headers used in script, will be added to the list
        // of available (predefined) headers (#1489271)
        foreach ($this->script as $rule) {
            foreach ((array) $rule['tests'] as $test) {
                if ($test['test'] == 'header') {
                    foreach ((array) $test['arg1'] as $header) {
                        $lc_header = strtolower($header);

                        // skip special names to not confuse UI
                        if (in_array($lc_header, $exceptions)) {
                            continue;
                        }

                        if (!isset($this->headers[$lc_header]) && !isset($headers[$lc_header])) {
                            $headers[$lc_header] = $header;
                        }
                    }
                }
            }
        }

        ksort($headers);

        $this->headers += $headers;
    }
protected function init_script()
    {
        if (!$this->sieve->script) {
            return;
        }

        $this->script = $this->sieve->script->as_array();

        $headers    = array();
        $exceptions = array('date', 'currentdate', 'size', 'body');

        // find common headers used in script, will be added to the list
        // of available (predefined) headers (#1489271)
        foreach ($this->script as $rule) {
            foreach ((array) $rule['tests'] as $test) {
                if ($test['test'] == 'header') {
                    foreach ((array) $test['arg1'] as $header) {
                        $lc_header = strtolower($header);

                        // skip special names to not confuse UI
                        if (in_array($lc_header, $exceptions)) {
                            continue;
                        }

                        if (!isset($this->headers[$lc_header]) && !isset($headers[$lc_header])) {
                            $headers[$lc_header] = $header;
                        }
                    }
                }
            }
        }

        ksort($headers);

        $this->headers += $headers;
    }
protected function init_script ( ) { if ( ! $ this -> sieve -> script ) { return ; } $ this -> script = $ this -> sieve -> script -> as_array ( ) ; $ headers = array ( ) ; $ exceptions = array ( 'date' , 'currentdate' , 'size' , 'body' ) ; // find common headers used in script, will be added to the list // of available (predefined) headers (#1489271) foreach ( $ this -> script as $ rule ) { foreach ( ( array ) $ rule [ 'tests' ] as $ test ) { if ( $ test [ 'test' ] == 'header' ) { foreach ( ( array ) $ test [ 'arg1' ] as $ header ) { $ lc_header = strtolower ( $ header ) ; // skip special names to not confuse UI if ( in_array ( $ lc_header , $ exceptions ) ) { continue ; } if ( ! isset ( $ this -> headers [ $ lc_header ] ) && ! isset ( $ headers [ $ lc_header ] ) ) { $ headers [ $ lc_header ] = $ header ; } } } } } ksort ( $ headers ) ; $ this -> headers += $ headers ; }
Initializes internal script data
Initializes internal script data