protected function addProjectIniReport()
    {
        $h3     = $this->html->h3();
        $issues = false;
        if (! $this->project->offsetExists('headers')) {
            $this->html->pInfo('No headers section found.');
            $issues = true;
        }
        if (!$this->project->offsetExists('meta')) {
            $this->html->pInfo('No meta headers section found.');
            $issues = true;
        } else {
            if (isset($this->project['meta']['Content-Security-Policy'])) {
                $this->html->pInfo('meta.Content-Security-Policy should be moved to headers section');
                $issues = true;
            }
            if (isset($this->project['meta']['Strict-Transport-Security'])) {
                $this->html->pInfo('meta.Strict-Transport-Security should be moved to headers section');
                $issues = true;
            }
        }

        if (isset($this->project['headers']['Content-Security-Policy']) &&
                preg_match('/img-src\s.*?data:.*?;/', $this->project['headers']['Content-Security-Policy']) !== 1) {
            $this->html->pInfo('The headers.Content-Security-Policy setting img-src should have data: for Two Factor Authentication.');
            $issues = true;
        }
        if ($this->project->offsetExists('jquerycss')) {
            $this->html->pInfo('Separate JQuery CSS no longer in use. Remove jquerycss setting.');
            $issues = true;
        }

        if (! isset($this->project['security'], $this->project['security']['methods'])) {
            $this->html->pInfo('No OpenSSL cipher methods defined in security.methods.');
            $issues = true;
        }

        if ($issues) {
            $h3->append('Project.ini issues found');
            $this->html->pInfo()->strong('See project.example.ini for examples of fixes.');
        } else {
            $h3->append('Project.ini report');
            $this->html->pInfo('No compatibility issues found in project.ini.');
        }
    }
protected function addProjectIniReport()
    {
        $h3     = $this->html->h3();
        $issues = false;
        if (! $this->project->offsetExists('headers')) {
            $this->html->pInfo('No headers section found.');
            $issues = true;
        }
        if (!$this->project->offsetExists('meta')) {
            $this->html->pInfo('No meta headers section found.');
            $issues = true;
        } else {
            if (isset($this->project['meta']['Content-Security-Policy'])) {
                $this->html->pInfo('meta.Content-Security-Policy should be moved to headers section');
                $issues = true;
            }
            if (isset($this->project['meta']['Strict-Transport-Security'])) {
                $this->html->pInfo('meta.Strict-Transport-Security should be moved to headers section');
                $issues = true;
            }
        }

        if (isset($this->project['headers']['Content-Security-Policy']) &&
                preg_match('/img-src\s.*?data:.*?;/', $this->project['headers']['Content-Security-Policy']) !== 1) {
            $this->html->pInfo('The headers.Content-Security-Policy setting img-src should have data: for Two Factor Authentication.');
            $issues = true;
        }
        if ($this->project->offsetExists('jquerycss')) {
            $this->html->pInfo('Separate JQuery CSS no longer in use. Remove jquerycss setting.');
            $issues = true;
        }

        if (! isset($this->project['security'], $this->project['security']['methods'])) {
            $this->html->pInfo('No OpenSSL cipher methods defined in security.methods.');
            $issues = true;
        }

        if ($issues) {
            $h3->append('Project.ini issues found');
            $this->html->pInfo()->strong('See project.example.ini for examples of fixes.');
        } else {
            $h3->append('Project.ini report');
            $this->html->pInfo('No compatibility issues found in project.ini.');
        }
    }
protected function addProjectIniReport ( ) { $ h3 = $ this -> html -> h3 ( ) ; $ issues = false ; if ( ! $ this -> project -> offsetExists ( 'headers' ) ) { $ this -> html -> pInfo ( 'No headers section found.' ) ; $ issues = true ; } if ( ! $ this -> project -> offsetExists ( 'meta' ) ) { $ this -> html -> pInfo ( 'No meta headers section found.' ) ; $ issues = true ; } else { if ( isset ( $ this -> project [ 'meta' ] [ 'Content-Security-Policy' ] ) ) { $ this -> html -> pInfo ( 'meta.Content-Security-Policy should be moved to headers section' ) ; $ issues = true ; } if ( isset ( $ this -> project [ 'meta' ] [ 'Strict-Transport-Security' ] ) ) { $ this -> html -> pInfo ( 'meta.Strict-Transport-Security should be moved to headers section' ) ; $ issues = true ; } } if ( isset ( $ this -> project [ 'headers' ] [ 'Content-Security-Policy' ] ) && preg_match ( '/img-src\s.*?data:.*?;/' , $ this -> project [ 'headers' ] [ 'Content-Security-Policy' ] ) !== 1 ) { $ this -> html -> pInfo ( 'The headers.Content-Security-Policy setting img-src should have data: for Two Factor Authentication.' ) ; $ issues = true ; } if ( $ this -> project -> offsetExists ( 'jquerycss' ) ) { $ this -> html -> pInfo ( 'Separate JQuery CSS no longer in use. Remove jquerycss setting.' ) ; $ issues = true ; } if ( ! isset ( $ this -> project [ 'security' ] , $ this -> project [ 'security' ] [ 'methods' ] ) ) { $ this -> html -> pInfo ( 'No OpenSSL cipher methods defined in security.methods.' ) ; $ issues = true ; } if ( $ issues ) { $ h3 -> append ( 'Project.ini issues found' ) ; $ this -> html -> pInfo ( ) -> strong ( 'See project.example.ini for examples of fixes.' ) ; } else { $ h3 -> append ( 'Project.ini report' ) ; $ this -> html -> pInfo ( 'No compatibility issues found in project.ini.' ) ; } }
A reports on the project ini
A reports on the project ini