- Fixed #16160: Call to undefined function ezi18n()
[tinyz:tinyz.git] / kernel / setup / steps / ezstep_site_templates.php
1 <?php
2 //
3 // Definition of eZStepSiteTemplates class
4 //
5 // Created on: <12-Aug-2003 15:14:42 kk>
6 //
7 // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
8 // SOFTWARE NAME: eZ Publish
9 // SOFTWARE RELEASE: 4.1.x
10 // COPYRIGHT NOTICE: Copyright (C) 1999-2010 eZ Systems AS
11 // SOFTWARE LICENSE: GNU General Public License v2.0
12 // NOTICE: >
13 //   This program is free software; you can redistribute it and/or
14 //   modify it under the terms of version 2.0  of the GNU General
15 //   Public License as published by the Free Software Foundation.
16 //
17 //   This program is distributed in the hope that it will be useful,
18 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
19 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 //   GNU General Public License for more details.
21 //
22 //   You should have received a copy of version 2.0 of the GNU General
23 //   Public License along with this program; if not, write to the Free
24 //   Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
25 //   MA 02110-1301, USA.
26 //
27 //
28 // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
29 //
30
31 /*! \file
32 */
33
34
35 /*!
36   \class eZStepSiteTemplates ezstep_site_templates.php
37   \brief The class eZStepSiteTemplates does
38
39 */
40
41 class eZStepSiteTemplates extends eZStepInstaller
42 {
43     /*!
44      Constructor
45     */
46     function eZStepSiteTemplates( $tpl, $http, $ini, &$persistenceList )
47     {
48         $this->eZStepInstaller( $tpl, $http, $ini, $persistenceList,
49                                 'site_templates', 'Site templates' );
50     }
51
52     function processPostData()
53     {
54         // set template and template thumbnail
55         $config = eZINI::instance( 'setup.ini' );
56         $thumbnailBase = $config->variable( 'SiteTemplates', 'ThumbnailBase' );
57         $thumbnailExtension = $config->variable( 'SiteTemplates', 'ThumbnailExtension' );
58
59         if ( $this->Http->hasPostVariable( 'eZSetup_site_templates' ) )
60         {
61             $siteTemplates = $this->Http->postVariable( 'eZSetup_site_templates' );
62             $this->PersistenceList['site_templates']['count'] = count( $siteTemplates );
63
64             $siteTemplatesCount = 0;
65             foreach ( $siteTemplates as $key => $template )
66             {
67                 if ( !isset( $template['checked'] ) or
68                      $template['checked'] != $template['identifier'] )
69                     continue;
70                 $this->PersistenceList['site_templates_' . $siteTemplatesCount]['identifier'] = $template['identifier'];
71                 $this->PersistenceList['site_templates_' . $siteTemplatesCount]['name'] = $template['name'];
72                 $this->PersistenceList['site_templates_' . $siteTemplatesCount]['image_file_name'] = $template['image'];
73                 ++$siteTemplatesCount;
74             }
75             if ( $siteTemplatesCount == 0)
76             {
77                 $this->ErrorMsg = ezpI18n::translate( 'design/standard/setup/init',
78                                           'No templates chosen.' );
79                 return false;
80             }
81             $this->PersistenceList['site_templates']['count'] = $siteTemplatesCount;
82         }
83         else
84         {
85             $this->ErrorMsg = ezpI18n::translate( 'design/standard/setup/init',
86                                       'No templates chosen.' );
87             return false;
88         }
89         return true;
90     }
91
92     function init()
93     {
94         return false; // Always show site template selection
95     }
96
97     function display()
98     {
99         // Get site templates from setup.ini
100         $config = eZINI::instance( 'setup.ini' );
101         $thumbnailBase = $config->variable( 'SiteTemplates', 'ThumbnailBase' );
102         $thumbnailExtension = $config->variable( 'SiteTemplates', 'ThumbnailExtension' );
103
104         $site_templates = array();
105
106         $packages = eZPackage::fetchPackages( array( 'path' => 'kernel/setup/packages' ) );
107         foreach( $packages as $key => $packages )
108         {
109             $site_templates[$key]['name'] = $package->attribute( 'summary' );
110             $site_templates[$key]['identifier'] = $package->attribute( 'name' );
111             $thumbnails = $package->thumbnailList( 'default' );
112             if ( count( $thumbnails ) > 0 )
113                 $site_templates[$key]['image_file_name'] = $package->fileItemPath( $thumbnails[0], 'default', 'kernel/setup/packages' );
114             else
115                 $site_templates[$key]['image_file_name'] = false;
116         }
117
118         $this->Tpl->setVariable( 'site_templates', $site_templates );
119         $this->Tpl->setVariable( 'error', $this->Error );
120
121         // Return template and data to be shown
122         $result = array();
123         // Display template
124         $result['content'] = $this->Tpl->fetch( 'design:setup/init/site_templates.tpl' );
125         $result['path'] = array( array( 'text' => ezpI18n::translate( 'design/standard/setup/init',
126                                                           'Site template selection' ),
127                                         'url' => false ) );
128         return $result;
129
130     }
131
132     public $Error = 0;
133 }
134
135 ?>