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/html/parameter/element/filelist.php

Documentation is available at filelist.php

  1. <?php
  2. /**
  3. * @version        $Id: filelist.php 6754 2007-03-02 19:51:45Z tcp $
  4. * @package        Joomla.Framework
  5. * @subpackage    Parameter
  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. // Check to ensure this file is within the rest of the framework
  16. defined('JPATH_BASE') or die();
  17.  
  18. /**
  19.  * Renders a filelist element
  20.  *
  21.  * @author         Johan Janssens <[email protected]>
  22.  * @package     Joomla.Framework
  23.  * @subpackage        Parameter
  24.  * @since        1.5
  25.  */
  26.  
  27. class JElementFilelist extends JElement
  28. {
  29.    /**
  30.     * Element name
  31.     *
  32.     * @access    protected
  33.     * @var        string 
  34.     */
  35.     var    $_name = 'Filelist';
  36.  
  37.     function fetchElement($name, $value, &$node, $control_name)
  38.     {
  39.         jimport( 'joomla.filesystem.folder' );
  40.         jimport( 'joomla.filesystem.file' );
  41.  
  42.         // path to images directory
  43.         $path        = JPATH_ROOT.DS.$node->attributes('directory');
  44.         $filter        = $node->attributes('filter');
  45.         $exclude    = $node->attributes('exclude');
  46.         $stripExt    = $node->attributes('stripext');
  47.         $files        = JFolder::files($path, $filter);
  48.  
  49.         $options = array ();
  50.  
  51.         if (!$node->attributes('hide_none'))
  52.         {
  53.             $options[] = JHTMLSelect::option('-1', '- '.JText::_('Do not use').' -');
  54.         }
  55.  
  56.         if (!$node->attributes('hide_default'))
  57.         {
  58.             $options[] = JHTMLSelect::option('', '- '.JText::_('Use default').' -');
  59.         }
  60.  
  61.         if ( is_array($files) )
  62.         {
  63.             foreach ($files as $file)
  64.             {
  65.                 if ($exclude)
  66.                 {
  67.                     if (preg_match( chr( 1 ) . $exclude . chr( 1 ), $file ))
  68.                     {
  69.                         continue;
  70.                     }
  71.                 }
  72.                 if ($stripExt)
  73.                 {
  74.                     $file = JFile::stripExt( $file );
  75.                 }
  76.                 $options[] = JHTMLSelect::option($file, $file);
  77.             }
  78.         }
  79.  
  80.         return JHTMLSelect::genericList($options, ''.$control_name.'['.$name.']', 'class="inputbox"', 'value', 'text', $value, "param$name");
  81.     }
  82. }
  83. ?>

Documentation generated on Mon, 05 Mar 2007 20:58:54 +0000 by phpDocumentor 1.3.1