]> git.llucax.com Git - software/bife/bife-all.git/blob - src/BIFE/Album.php
07fb437c64509fd5b6f2ac7dd3ca1382d8bf8974
[software/bife/bife-all.git] / src / BIFE / Album.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +--------------------------------------------------------------------+
4 // |                       BIFE - Buil It FastEr                        |
5 // +--------------------------------------------------------------------+
6 // | This file is part of BIFE.                                         |
7 // |                                                                    |
8 // | BIFE is free software; you can redistribute it and/or modify it    |
9 // | under the terms of the GNU General Public License as published by  |
10 // | the Free Software Foundation; either version 2 of the License, or  |
11 // | (at your option) any later version.                                |
12 // |                                                                    |
13 // | BIFE is distributed in the hope that it will be useful, but        |
14 // | WITHOUT ANY WARRANTY; without even the implied warranty of         |
15 // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   |
16 // | General Public License for more details.                           |
17 // |                                                                    |
18 // | You should have received a copy of the GNU General Public License  |
19 // | along with Hooks; if not, write to the Free Software Foundation,   |
20 // | Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA      |
21 // +--------------------------------------------------------------------+
22 // | Created: Wed May 17 18:16:54 ART 2003                              |
23 // | Authors: Leandro Lucarella <luca@lugmen.org.ar>                    |
24 // +--------------------------------------------------------------------+
25 //
26 // $Id$
27 //
28
29 // +X2C includes
30 require_once 'BIFE/Widget.php';
31 // ~X2C
32 require_once 'Album.php';
33
34 // +X2C Class 20 :Album
35 /**
36  * Photo album widget.
37 [TODO: Make a better explanation]
38  *
39  * @access public
40  */
41 class BIFE_Album extends BIFE_Widget {
42     /**
43      * Attributes.
44      *
45      * @var    array $attrs
46      * @access public
47      */
48     var $attrs;
49
50     // ~X2C
51
52     // +X2C Operation 22
53     /**
54      * Constructor.
55      *
56      * @param  array $attrs Attributes.
57      *
58      * @return void
59      * @access public
60      */
61     function BIFE_Album($attrs) // ~X2C
62     {
63         $this->__construct($attrs);
64     }
65     // -X2C
66
67     // +X2C Operation 57
68     /**
69      * Constructor.
70      *
71      * @param  array $attrs Attributes.
72      *
73      * @return void
74      * @access public
75      */
76     function __construct($attrs) // ~X2C
77     {
78         $defaults = array(
79             'DIR'           => '.',
80             'RECURSIVE'     => true,
81             'THUMBSFORMAT'  => 'jpeg',
82             'THUMBSDIR'     => '.thumbs',
83             'EXTENSIONS'    => 'png,jpg,jpeg,gif',
84             'SELECTED'      => '',
85             'MAXROWS'       => 0,
86             'COLUMNS'       => 4,
87         );
88         $this->attrs = array_merge($defaults, $attrs);
89     }
90     // -X2C
91
92     // +X2C Operation 23
93     /**
94      * Renders the widget.
95      *
96      * @param  HTML_Template_Sigma &$template Template to use to render the widget.
97      *
98      * @return string
99      * @access public
100      */
101     function render(&$template) // ~X2C
102     {
103         extract($this->attrs, EXTR_SKIP);
104         $album =& new Hook_Album($DIR, $RECURSIVE, $THUMBSFORMAT, $THUMBSDIR, $EXTENSIONS);
105         return $album->album($template, $SELECTED, $MAXROWS, $COLUMNS);
106     }
107     // -X2C
108
109 } // -X2C Class :Album
110
111 ?>