# double-opt-in/2.15/core/Messages.class.php

Double Opt-In for Contact Form 7 – Secure, GDPR-Compliant Email Verification, version 2.15. 92 lines.

- Page: https://pluginprobe.com/plugins/double-opt-in/2.15/code/core/Messages.class.php
- Raw: https://pluginprobe.com/plugins/double-opt-in/2.15/raw/core/Messages.class.php
- Modified: 2022-12-16T11:04:54+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/double-opt-in/2.15/code/core/Messages.class.php#L10-L20`.

```php
<?php

namespace forge12\contactform7\CF7DoubleOptIn {
    if(!defined('ABSPATH')){
        exit;
    }
    /**
     * Class Messages
     * @package forge12\contactform7\CF7DoubleOptIn
     */
    class Messages
    {
        /**
         * @var Messages|null
         */
        private static $instance;

        /**
         * @var array
         */
        private $messages = [];

        /**
         * @return Messages|null
         */
        public static function getInstance()
        {
            if (null === self::$instance) {
                self::$instance = new Messages();
            }

            return self::$instance;
        }

        private function __clone()
        {

        }

        public function __wakeup()
        {

        }

        private function __construct()
        {
        }

        /**
         * getAll function.
         *
         * @access public
         * @return string
         */
        public function getAll()
        {
            return implode("\n", $this->messages);
        }

        /**
         * add function.
         *
         * @access public
         * @param mixed $message
         * @param mixed $type
         * @return void
         */
        public function add($message, $type)
        {
            if ($type === 'error') {
                $type = 'alert-danger';

            } elseif ($type === 'success') {
                $type = 'alert-success';

            } elseif ($type === 'info') {
                $type = 'alert-info';

            } elseif ($type === 'warning') {
                $type = 'alert-warning';

            } elseif ($type === 'offer') {
                $type = 'alert-offer';

            } elseif ($type === 'critical') {
                $type = 'alert-critical';
            }

            $this->messages[] = '<div class="box ' . \esc_attr($type) . '" role="alert">' . esc_html($message) . '</div>';
        }
    }
}
```
