Support Joomla!

Joomla! 1.5 Documentation

Packages

Package: Joomla-Framework

Developer Network License

The Joomla! Developer Network content is © copyright 2006 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution- NonCommercial- ShareAlike 2.5
Source code for file /joomla/i18n/help.php

Documentation is available at help.php

  1. <?php
  2. /**
  3. @version        $Id: help.php 6634 2007-02-15 18:27:18Z Jinx $
  4. @package        Joomla.Framework
  5. @subpackage    I18N
  6. @copyright    Copyright (C) 2005 - 2007 Open Source Matters. All rights reserved.
  7. @license        GNU/GPL, see LICENSE.php
  8. *  Joomla! is free software. This version may have been modified pursuant
  9. *  to the GNU General Public License, and as distributed it includes or
  10. *  is derivative of works licensed under the GNU General Public License or
  11. *  other free or open source software licenses.
  12. *  See COPYRIGHT.php for copyright notices and details.
  13. */
  14.  
  15. /**
  16.  * Help system class
  17.  *
  18.  * @package         Joomla.Framework
  19.  * @subpackage    I18N
  20.  * @since        1.5
  21.  */
  22. class JHelp
  23. {
  24.  
  25.     /**
  26.     * Create an URL for a giving help file reference
  27.     *
  28.     * @param string The name of the popup file (excluding the file extension for an xml file)
  29.     * @param boolean Use the help file in the component directory
  30.     */
  31.     function createURL($ref$useComponent false)
  32.     {
  33.         global $mainframe$option;
  34.  
  35.         $user            =JFactory::getUser();
  36.         $userHelpUrl    $user->getParam'helpsite' );
  37.         $globalHelpUrl     $mainframe->getCfg('helpurl');
  38.         $lang            =JFactory::getLanguage();
  39.  
  40.         if ($useComponent)
  41.         {
  42.             if (!eregi'\.html$'$ref )) {
  43.                 $ref $ref '.html';
  44.             }
  45.  
  46.             $url 'components/' $option'/help';
  47.             $tag =  $lang->getTag();
  48.  
  49.             // Check if the file exists within a different language!
  50.             if$lang->getTag(!= 'en-GB' {
  51.                 $localeURL JPATH_BASE.$url.DS.$tag.DS.$ref;
  52.                 jimport'joomla.filesystem.file' );
  53.                 if!JFile::exists$localeURL ) ) {
  54.                     $tag 'en-GB';
  55.                 }
  56.             }
  57.             return $url.'/'.$tag.'/'.$ref;
  58.         }
  59.  
  60.  
  61.         if $userHelpUrl )
  62.         {
  63.             // Online help site as defined in GC
  64.             $version new JVersion();
  65.             $ref .= $version->getHelpVersion();
  66.             $url $userHelpUrl '/index2.php?option=com_content&amp;task=findkey&amp;pop=1&amp;keyref=' urlencode$ref );
  67.         }
  68.         else if $globalHelpUrl )
  69.         {
  70.             // Online help site as defined in GC
  71.             $version new JVersion();
  72.             $ref .= $version->getHelpVersion();
  73.             $url $globalHelpUrl '/index2.php?option=com_content&amp;task=findkey&amp;pop=1&amp;keyref=' urlencode$ref );
  74.         }
  75.         else
  76.         {
  77.             // Included html help files
  78.             $helpURL 'help/' .$lang->getTag(.'/';
  79.  
  80.             if (!eregi'\.html$'$ref )) {
  81.                 $ref $ref '.html';
  82.             }
  83.  
  84.             // Check if the file exists within a different language!
  85.             if$lang->getTag(!= 'en-GB' {
  86.                 $localeURL JPATH_BASE $helpURL .$ref;
  87.                 jimport'joomla.filesystem.file' );
  88.                 if!JFile::exists$localeURL ) ) {
  89.                     $helpURL 'help/en-GB/';
  90.                 }
  91.             }
  92.             $url $helpURL $ref;
  93.         }
  94.  
  95.         return $url;
  96.     }
  97.  
  98.     /**
  99.      * Builds a list of the help sites which can be used in a select option
  100.      *
  101.      * @param string    Path to an xml file
  102.      * @param string    Language tag to select (if exists)
  103.      * @param array    An array of arrays ( text, value, selected )
  104.      */
  105.     function createSiteList($pathToXml$selected null)
  106.     {
  107.         $list    array ();
  108.         $xml    =JFactory::getXMLParser('Simple');
  109.         $data    null;
  110.         if!empty$pathToXml ) ) {
  111.             $data file_get_contents($pathToXml);
  112.         }
  113.  
  114.         if(empty($data))
  115.         {
  116.             $option['text''English (GB) help.joomla.org';
  117.             $option['value''http://help.joomla.org';
  118.             $list[$option;
  119.         }
  120.         else
  121.         {
  122.             if($xml->loadString($data))
  123.             {
  124.                 // Are there any languages??
  125.                 $elmSites $xml->document->sites[0];
  126.  
  127.                 if (is_object($elmSites)) {
  128.  
  129.                     $option array ();
  130.                     $sites $elmSites->children();
  131.                     foreach ($sites as $site)
  132.                     {
  133.                         $text                $site->data();
  134.                         $url                $site->attributes('url');
  135.                         $option['text']        $text;
  136.                         $option['value']    $url;
  137.                         $list[]                $option;
  138.                     }
  139.                 }
  140.             }
  141.         }
  142.  
  143.         return $list;
  144.     }
  145. }
  146. ?>

Documentation generated on Mon, 05 Mar 2007 21:05:30 +0000 by phpDocumentor 1.3.1