API16

API16:JBrowser/isViewable

From Joomla! Documentation

Revision as of 22:46, 22 March 2010 by Doxiki (talk | contribs) (New page: ===Description=== Determines if a browser can display a given MIME type. <span class="editsection" style="font-size:76%;"> <nowiki>[</nowiki>[[Description:JBrowser/isViewable|Edit Des...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Description

Determines if a browser can display a given MIME type.

[Edit Descripton]

Template:Description:JBrowser/isViewable

Syntax

isViewable($mimetype)
Parameter Name Default Value Description
$mimetype $mimetype The MIME type to check.

Returns

boolean True if the browser can display the MIME type.

Defined in

libraries/joomla/environment/browser.php

Importing

jimport( 'joomla.environment.browser' );

Source Body

public function isViewable($mimetype)
{
        $mimetype = strtolower($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));
}

[Edit See Also] Template:SeeAlso:JBrowser/isViewable

Examples

<CodeExamplesForm />