Horde_Browser::isViewable PHP Method

isViewable() public method

Determines if a browser can display a given MIME type.
public isViewable ( string $mimetype ) : boolean
$mimetype string The MIME type to check.
return boolean True if the browser can display the MIME type.
    public function isViewable($mimetype)
    {
        $mimetype = Horde_String::lower($mimetype);
        list($type, $subtype) = explode('/', $mimetype);
        if (!empty($this->_accept)) {
            $wildcard_match = false;
            if (strpos($this->_accept, $mimetype) !== false) {
                return true;
            }
            if (strpos($this->_accept, '*/*') !== false) {
                $wildcard_match = true;
                if ($type != 'image') {
                    return true;
                }
            }
            /* image/jpeg and image/pjpeg *appear* to be the same entity, but
             * Mozilla doesn't seem to want to accept the latter.  For our
             * purposes, we will treat them the same. */
            if ($this->isBrowser('mozilla') && $mimetype == 'image/pjpeg' && strpos($this->_accept, 'image/jpeg') !== false) {
                return true;
            }
            if (!$wildcard_match) {
                return false;
            }
        }
        if (!$this->hasFeature('images') || $type != 'image') {
            return false;
        }
        return in_array($subtype, $this->_images);
    }