- Fixed #16160: Call to undefined function ezi18n()
[tinyz:tinyz.git] / kernel / shop / orderlist.php
1 <?php
2 //
3 // Created on: <01-Aug-2002 10:40:10 bf>
4 //
5 // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
6 // SOFTWARE NAME: eZ Publish
7 // SOFTWARE RELEASE: 4.1.x
8 // COPYRIGHT NOTICE: Copyright (C) 1999-2010 eZ Systems AS
9 // SOFTWARE LICENSE: GNU General Public License v2.0
10 // NOTICE: >
11 //   This program is free software; you can redistribute it and/or
12 //   modify it under the terms of version 2.0  of the GNU General
13 //   Public License as published by the Free Software Foundation.
14 //
15 //   This program is distributed in the hope that it will be useful,
16 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
17 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 //   GNU General Public License for more details.
19 //
20 //   You should have received a copy of version 2.0 of the GNU General
21 //   Public License along with this program; if not, write to the Free
22 //   Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
23 //   MA 02110-1301, USA.
24 //
25 //
26 // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
27 //
28
29 require_once( 'kernel/common/template.php' );
30 $module = $Params['Module'];
31
32 $tpl = templateInit();
33
34 $offset = $Params['Offset'];
35 $limit = 15;
36
37
38 if( eZPreferences::value( 'admin_orderlist_sortfield' ) )
39 {
40     $sortField = eZPreferences::value( 'admin_orderlist_sortfield' );
41 }
42
43 if ( !isset( $sortField ) || ( ( $sortField != 'created' ) && ( $sortField!= 'user_name' ) ) )
44 {
45     $sortField = 'created';
46 }
47
48 if( eZPreferences::value( 'admin_orderlist_sortorder' ) )
49 {
50     $sortOrder = eZPreferences::value( 'admin_orderlist_sortorder' );
51 }
52
53 if ( !isset( $sortOrder ) || ( ( $sortOrder != 'asc' ) && ( $sortOrder!= 'desc' ) ) )
54 {
55     $sortOrder = 'asc';
56 }
57
58 $http = eZHTTPTool::instance();
59
60 // The RemoveButton is not present in the orderlist, but is here for backwards
61 // compatibility. Simply replace the ArchiveButton for the RemoveButton will
62 // do the trick.
63 //
64 // Note that removing order can cause wrong order numbers (order_nr are
65 // reused).  See eZOrder::activate.
66 if ( $http->hasPostVariable( 'RemoveButton' ) )
67 {
68     if ( $http->hasPostVariable( 'OrderIDArray' ) )
69     {
70         $orderIDArray = $http->postVariable( 'OrderIDArray' );
71         if ( $orderIDArray !== null )
72         {
73             $http->setSessionVariable( 'DeleteOrderIDArray', $orderIDArray );
74             $Module->redirectTo( $Module->functionURI( 'removeorder' ) . '/' );
75         }
76     }
77 }
78
79 // Archive options.
80 if ( $http->hasPostVariable( 'ArchiveButton' ) )
81 {
82     if ( $http->hasPostVariable( 'OrderIDArray' ) )
83     {
84         $orderIDArray = $http->postVariable( 'OrderIDArray' );
85         if ( $orderIDArray !== null )
86         {
87             $http->setSessionVariable( 'OrderIDArray', $orderIDArray );
88             $Module->redirectTo( $Module->functionURI( 'archiveorder' ) . '/' );
89         }
90     }
91 }
92
93 if ( $http->hasPostVariable( 'SaveOrderStatusButton' ) )
94 {
95     if ( $http->hasPostVariable( 'StatusList' ) )
96     {
97         foreach ( $http->postVariable( 'StatusList' ) as $orderID => $statusID )
98         {
99             $order = eZOrder::fetch( $orderID );
100             $access = $order->canModifyStatus( $statusID );
101             if ( $access and $order->attribute( 'status_id' ) != $statusID )
102             {
103                 $order->modifyStatus( $statusID );
104             }
105         }
106     }
107 }
108
109 $orderArray = eZOrder::active( true, $offset, $limit, $sortField, $sortOrder );
110 $orderCount = eZOrder::activeCount();
111
112 $tpl->setVariable( 'order_list', $orderArray );
113 $tpl->setVariable( 'order_list_count', $orderCount );
114 $tpl->setVariable( 'limit', $limit );
115
116 $viewParameters = array( 'offset' => $offset );
117 $tpl->setVariable( 'view_parameters', $viewParameters );
118 $tpl->setVariable( 'sort_field', $sortField );
119 $tpl->setVariable( 'sort_order', $sortOrder );
120
121 $Result = array();
122 $Result['path'] = array( array( 'text' => ezpI18n::translate( 'kernel/shop', 'Order list' ),
123                                 'url' => false ) );
124
125 $Result['content'] = $tpl->fetch( 'design:shop/orderlist.tpl' );
126 ?>