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;
				}
			}

			// Deal with Mozilla pjpeg/jpeg issue
			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));
	}
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;
				}
			}

			// Deal with Mozilla pjpeg/jpeg issue
			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));
	}
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 ; } } // Deal with Mozilla pjpeg/jpeg issue 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 ) ) ; }
Determines if a browser can display a given MIME type.

Note that  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.

@param   string  $mimetype  The MIME type to check.
@return  boolean  True if the browser can display the MIME type.
Determines if a browser can display a given MIME type .