# responsive-menu/3.1.12/app/Validation/Validators/Colour.php

Responsive Menu – Create Mobile-Friendly Menu, version 3.1.12. 24 lines.

- Page: https://pluginprobe.com/plugins/responsive-menu/3.1.12/code/app/Validation/Validators/Colour.php
- Raw: https://pluginprobe.com/plugins/responsive-menu/3.1.12/raw/app/Validation/Validators/Colour.php
- Modified: 2018-01-17T18:00:36+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/responsive-menu/3.1.12/code/app/Validation/Validators/Colour.php#L10-L20`.

```php
<?php

namespace ResponsiveMenu\Validation\Validators;

class Colour extends BaseValidator {

    public function validate() {
        $valid_colour = false;

        // First check valid Hex
        if(preg_match('/^#(?:[0-9a-f]{3}){1,2}$/i', $this->data))
            $valid_colour = true;

        // Next check valid rgba()
        if(preg_match('/rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*(\d*(?:\.\d+)?)\)/i', $this->data))
            $valid_colour = true;

        if(!$valid_colour)
            $this->error = 'Invalid colour value';

        return $valid_colour;
    }

}
```
