element * * @access public * @param string The relative URL to use for the href attribute * @param string The target attribute to use * @param array An associative array of attributes to add * @since 1.5 */ function link($url, $text, $attribs = null) { if (is_array( $attribs )) { $attribs = JArrayHelper::toString( $attribs ); } return ''.$text.''; } /** * Write a element * * @access public * @param string The relative or absoluete URL to use for the src attribute * @param string The target attribute to use * @param array An associative array of attributes to add * @since 1.5 */ function image($url, $alt, $attribs = null) { if (is_array($attribs)) { $attribs = JArrayHelper::toString( $attribs ); } if(strpos($url, 'http') !== 0) { $url = JURI::root(true).'/'.$url; }; return ''.$alt.''; } /** * Write a element * * @access public * @param string The relative URL to use for the src attribute * @param string The target attribute to use * @param array An associative array of attributes to add * @param string The message to display if the iframe tag is not supported * @since 1.5 */ function iframe( $url, $name, $attribs = null, $noFrames = '' ) { if (is_array( $attribs )) { $attribs = JArrayHelper::toString( $attribs ); } return ''; } /** * Write a element * * @access public * @param string The name of the script file * * @param string The relative or absolute path of the script file * @param boolean If true, the mootools library will be loaded * @since 1.5 */ function script($filename, $path = 'media/system/js/', $mootools = true) { // Include mootools framework if($mootools) { JHTML::_('behavior.mootools'); } if(strpos($path, 'http') !== 0) { $path = JURI::root(true).'/'.$path; }; $document = &JFactory::getDocument(); $document->addScript( $path.$filename ); return; } /** * Write a element * * @access public * @param string The relative URL to use for the href attribute * @since 1.5 */ function stylesheet($filename, $path = 'media/system/css/', $attribs = array()) { if(strpos($path, 'http') !== 0) { $path = JURI::root(true).'/'.$path; }; $document = &JFactory::getDocument(); $document->addStylesheet( $path.$filename, 'text/css', null, $attribs ); return; } /** * Returns formated date according to current local and adds time offset * * @access public * @param string date in an US English date format * @param string format optional format for strftime * @returns string formated date * @see strftime * @since 1.5 */ function date($date, $format = null, $offset = NULL) { if ( ! $format ) { $format = JText::_('DATE_FORMAT_LC1'); } if(is_null($offset)) { $config =& JFactory::getConfig(); $offset = $config->getValue('config.offset'); } $instance =& JFactory::getDate($date); $instance->setOffset($offset); return $instance->toFormat($format); } /** * Creates a tooltip with an image as button * * @access public * @param string $tooltip The tip string * @param string $title The title of the tooltip * @param string $image The image for the tip, if no text is provided * @param string $text The text for the tip * @param string $href An URL that will be used to create the link * @param boolean depreciated * @return string * @since 1.5 */ function tooltip($tooltip, $title='', $image='tooltip.png', $text='', $href='', $link=1) { $tooltip = addslashes(htmlspecialchars($tooltip)); $title = addslashes(htmlspecialchars($title)); if ( !$text ) { $image = JURI::root(true).'/includes/js/ThemeOffice/'. $image; $text = ''. JText::_( 'Tooltip' ) .''; } else { $text = JText::_( $text, true ); } if($title) { $title = $title.'::'; } $style = 'style="text-decoration: none; color: #333;"'; if ( $href ) { $href = JRoute::_( $href ); $style = ''; $tip = ''. $text .''; } else { $tip = ''. $text .''; } return $tip; } /** * Displays a calendar control field * * @param string The date value * @param string The name of the text field * @param string The id of the text field * @param string The date format * @param array Additional html attributes */ function calendar($value, $name, $id, $format = '%Y-%m-%d', $attribs = null) { JHTML::_('behavior.calendar'); //load the calendar behavior if (is_array($attribs)) { $attribs = JArrayHelper::toString( $attribs ); } $document =& JFactory::getDocument(); $document->addScriptDeclaration('window.addEvent(\'domready\', function() {Calendar.setup({ inputField : "'.$id.'", // id of the input field ifFormat : "'.$format.'", // format of the input field button : "'.$id.'_img", // trigger for the calendar (button ID) align : "Tl", // alignment (defaults to "Bl") singleClick : true });});'); return ''. 'calendar'; } /** * Add a directory where JHTML should search for helpers. You may * either pass a string or an array of directories. * * @access public * @param string A path to search. * @return array An array with directory elements * @since 1.5 */ function addIncludePath( $path='' ) { static $paths; if (!isset($paths)) { $paths = array( JPATH_LIBRARIES.DS.'joomla'.DS.'html'.DS.'html' ); } // force path to array settype($path, 'array'); // loop through the path directories foreach ($path as $dir) { if (!empty($dir) && !in_array($dir, $paths)) { array_unshift($paths, JPath::clean( $dir )); } } return $paths; } }