Issues (2407)

application/controller/account/logout.php (3 issues)

1
<?php
2
3
/* 	Divine CMS - Open source CMS for widespread use.
4
    Copyright (c) 2019 Mykola Burakov ([email protected])
5
6
    See SOURCE.txt for other and additional information.
7
8
    This file is part of Divine CMS.
9
10
    This program is free software: you can redistribute it and/or modify
11
    it under the terms of the GNU General Public License as published by
12
    the Free Software Foundation, either version 3 of the License, or
13
    (at your option) any later version.
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 the GNU General Public License
21
    along with this program. If not, see <http://www.gnu.org/licenses/>. */
22
23
class ControllerAccountLogout extends \Divine\Engine\Core\Controller
0 ignored issues
show
Coding Style Compatibility introduced by
PSR1 recommends that each class must be in a namespace of at least one level to avoid collisions.

You can fix this by adding a namespace to your class:

namespace YourVendor;

class YourClass { }

When choosing a vendor namespace, try to pick something that is not too generic to avoid conflicts with other libraries.

Loading history...
24
{
25
    public function index()
0 ignored issues
show
Expected 2 blank lines before function; 0 found
Loading history...
26
    {
27
        if ($this->customer->isLogged()) {
28
            $this->customer->logout();
29
30
            unset($this->session->data['shipping_address']);
31
            unset($this->session->data['shipping_method']);
32
            unset($this->session->data['shipping_methods']);
33
            unset($this->session->data['payment_address']);
34
            unset($this->session->data['payment_method']);
35
            unset($this->session->data['payment_methods']);
36
            unset($this->session->data['comment']);
37
            unset($this->session->data['order_id']);
38
            unset($this->session->data['reward']);
39
40
            $this->response->redirect($this->url->link('account/logout', '', true));
41
        }
42
43
        $this->load->language('account/logout');
44
45
        $this->document->setTitle($this->language->get('heading_title'));
46
47
        $data['breadcrumbs'] = array();
0 ignored issues
show
Comprehensibility Best Practice introduced by
$data was never initialized. Although not strictly required by PHP, it is generally a good practice to add $data = array(); before regardless.
Loading history...
48
49
        $data['breadcrumbs'][] = array(
50
            'text' => $this->language->get('text_home'),
51
            'href' => $this->url->link('common/home')
52
        );
53
54
        $data['breadcrumbs'][] = array(
55
            'text' => $this->language->get('text_account'),
56
            'href' => $this->url->link('account/account', '', true)
57
        );
58
59
        $data['breadcrumbs'][] = array(
60
            'text' => $this->language->get('text_logout'),
61
            'href' => $this->url->link('account/logout', '', true)
62
        );
63
64
        $data['heading_title'] = $this->language->get('heading_title');
65
66
        $data['text_message'] = $this->language->get('text_message');
67
68
        $data['button_continue'] = $this->language->get('button_continue');
69
70
        $data['continue'] = $this->url->link('common/home');
71
72
        $data['column'] = $this->load->controller('common/column');
73
        
74
        $data['content_top'] = $this->load->controller('common/content_top');
75
        $data['content_bottom'] = $this->load->controller('common/content_bottom');
76
        $data['footer'] = $this->load->controller('common/footer');
77
        $data['header'] = $this->load->controller('common/header');
78
79
        $this->response->setOutput($this->load->view('common/success', $data));
80
    }
81
}
82