'.$title.''; } /** * Creates an HTML anchor to a file. Note that the title is not escaped, * to allow HTML elements within links (images, etc). * * echo HTML::file_anchor('media/doc/user_guide.pdf', 'User Guide'); * * @param string $file name of file to link to * @param string $title link text * @param array $attributes HTML anchor attributes * @param mixed $protocol protocol to pass to URL::base() * @param boolean $index include the index page * @return string * @uses URL::base * @uses HTML::attributes */ public static function file_anchor($file, $title = NULL, array $attributes = NULL, $protocol = NULL, $index = FALSE) { if ($title === NULL) { // Use the file name as the title $title = basename($file); } // Add the file link to the attributes $attributes['href'] = URL::site($file, $protocol, $index); return ''.$title.''; } /** * Creates an email (mailto:) anchor. Note that the title is not escaped, * to allow HTML elements within links (images, etc). * * echo HTML::mailto($address); * * @param string $email email address to send to * @param string $title link text * @param array $attributes HTML anchor attributes * @return string * @uses HTML::attributes */ public static function mailto($email, $title = NULL, array $attributes = NULL) { if ($title === NULL) { // Use the email address as the title $title = $email; } return ''.$title.''; } /** * Creates a style sheet link element. * * echo HTML::style('media/css/screen.css'); * * @param string $file file name * @param array $attributes default attributes * @param mixed $protocol protocol to pass to URL::base() * @param boolean $index include the index page * @return string * @uses URL::base * @uses HTML::attributes */ public static function style($file, array $attributes = NULL, $protocol = NULL, $index = FALSE) { if (strpos($file, '://') === FALSE AND strncmp($file, '//', 2)) { // Add the base URL $file = URL::site($file, $protocol, $index); } // Set the stylesheet link $attributes['href'] = $file; // Set the stylesheet rel $attributes['rel'] = empty($attributes['rel']) ? 'stylesheet' : $attributes['rel']; // Set the stylesheet type $attributes['type'] = 'text/css'; return ''; } /** * Creates a script link. * * echo HTML::script('media/js/jquery.min.js'); * * @param string $file file name * @param array $attributes default attributes * @param mixed $protocol protocol to pass to URL::base() * @param boolean $index include the index page * @return string * @uses URL::base * @uses HTML::attributes */ public static function script($file, array $attributes = NULL, $protocol = NULL, $index = FALSE) { if (strpos($file, '://') === FALSE AND strncmp($file, '//', 2)) { // Add the base URL $file = URL::site($file, $protocol, $index); } // Set the script link $attributes['src'] = $file; // Set the script type $attributes['type'] = 'text/javascript'; return ''; } /** * Creates a image link. * * echo HTML::image('media/img/logo.png', array('alt' => 'My Company')); * * @param string $file file name * @param array $attributes default attributes * @param mixed $protocol protocol to pass to URL::base() * @param boolean $index include the index page * @return string * @uses URL::base * @uses HTML::attributes */ public static function image($file, array $attributes = NULL, $protocol = NULL, $index = FALSE) { if (strpos($file, '://') === FALSE AND strncmp($file, '//', 2) AND strncmp($file, 'data:', 5)) { // Add the base URL $file = URL::site($file, $protocol, $index); } // Add the image link $attributes['src'] = $file; return ''; } /** * Compiles an array of HTML attributes into an attribute string. * Attributes will be sorted using HTML::$attribute_order for consistency. * * echo '