GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.

Issues (3647)

symphony/lib/toolkit/class.event.php (9 issues)

1
<?php
2
/**
3
 * @package toolkit
4
 */
5
6
/**
7
 * The abstract Event classes defines some base methods that all Events inherit.
8
 * It has one abstract method, `__trigger()`, which Events must implement. Event
9
 * execution is determined based on an action (which maps to a form action
10
 * from the Frontend). A load function determines whether this Event matches
11
 * the action and if so, call the Event's `__trigger()` to run the logic. On every page
12
 * load, all Event's that are attached to the page will have their load function's executed.
13
 * Events are called in order of their priority and if there is more than one event
14
 * with the same priority, in alphabetical order. An event class is saved through the
15
 * Symphony backend, which uses an event template defined in `TEMPLATE . /event.tpl`
16
 * Events implement the iEvent interface, which defines the load and about functions.
17
 */
18
abstract class Event
19
{
20
    /**
21
     * Represents High Priority, that this event should run first
22
     * @var integer
23
     */
24
    const kHIGH = 3;
0 ignored issues
show
This class constant is not uppercase (expected KHIGH).
Loading history...
25
26
    /**
27
     * Represents Normal Priority, that this event should run normally.
28
     * This is the default Event Priority
29
     * @var integer
30
     */
31
    const kNORMAL = 2;
0 ignored issues
show
This class constant is not uppercase (expected KNORMAL).
Loading history...
32
33
    /**
34
     * Represents High Priority, that this event should run last
35
     * @var integer
36
     */
37
    const kLOW = 1;
0 ignored issues
show
This class constant is not uppercase (expected KLOW).
Loading history...
38
39
    /**
40
     * Holds all the environment variables which include parameters set
41
     * by other Datasources or Events.
42
     * @var array
43
     */
44
    protected $_env = array();
45
46
    /**
47
     * The constructor for an Event sets `$this->_env` from the given parameters
48
     *
49
     * @param array $env
50
     *  The environment variables from the Frontend class which includes
51
     *  any params set by Symphony or Datasources or by other Events
52
     */
53
    public function __construct(array $env = null)
0 ignored issues
show
Incorrect spacing between argument "$env" and equals sign; expected 0 but found 1
Loading history...
Incorrect spacing between default value and equals sign for argument "$env"; expected 0 but found 1
Loading history...
54
    {
55
        $this->_env = $env;
56
    }
57
58
    /**
59
     * This function is required in order to edit it in the event editor page.
60
     * Do not overload this function if you are creating a custom event. It is only
61
     * used by the event editor.
62
     *
63
     * @return boolean
64
     *   true if event can be edited, false otherwise. Defaults to false
65
     */
66
    public static function allowEditorToParse()
67
    {
68
        return false;
69
    }
70
71
    /**
72
     * This function is required in order to identify what section this event is for. It
73
     * is used in the event editor. It must remain intact. Do not overload this function in
74
     * custom events.
75
     *
76
     * @return integer
77
     */
78
    public static function getSource()
79
    {
80
        return null;
81
    }
82
83
    /**
84
     * Returns a string of HTML or an XMLElement of documentation for the current event.
85
     * By default this will be an example of a HTML form that can populate the chosen section and
86
     * any filter information. Documentation is shown in the Symphony backend when a user tries to
87
     * edit an event but it's `allowEditorToParse()` returns `false`. If this is not implemented by
88
     * the event, a default Symphony message will appear.
89
     *
90
     * @return string|XMLElement
91
     */
92
    public static function documentation()
93
    {
94
        return __('This event has been customised and cannot be viewed from Symphony.');
95
    }
96
97
    /**
98
     * Returns the path to the email-notification-template by looking at the
99
     * `WORKSPACE/template/` directory, then at the `TEMPLATES`
100
     * directory for the convention `notification.*.tpl`. If the template
101
     * is not found, false is returned
102
     *
103
     * @param string $language
104
     *  Language used in system
105
     * @return mixed
106
     *  String, which is the path to the template if the template is found,
107
     *  false otherwise
108
     */
109
    public static function getNotificationTemplate($language)
110
    {
111
        $langformat = '%s/email.entrycreated.%s.tpl';
112
        $defaultformat = '%s/email.entrycreated.tpl';
113
114
        if (file_exists($template = sprintf($langformat, WORKSPACE . '/template', $language))) {
0 ignored issues
show
The constant WORKSPACE was not found. Maybe you did not declare it correctly or list all dependencies?
Loading history...
115
            return $template;
116
        } elseif (file_exists($template = sprintf($defaultformat, WORKSPACE . '/template'))) {
117
            return $template;
118
        } elseif (file_exists($template = sprintf($langformat, TEMPLATE, $language))) {
0 ignored issues
show
The constant TEMPLATE was not found. Maybe you did not declare it correctly or list all dependencies?
Loading history...
119
            return $template;
120
        } elseif (file_exists($template = sprintf($defaultformat, TEMPLATE))) {
121
            return $template;
122
        } else {
123
            return false;
124
        }
125
    }
126
127
128
    /**
129
     * Priority determines Event importance and when it should be executed.
130
     * The default priority for an event is `Event::kNORMAL`, with `Event::kHIGH` and
131
     * `Event::kLOW` being the other available options. Events execution is `Event::kHIGH`
132
     * to `Event::kNORMAL` to `Event::kLOW`. If there are more than one event at the
133
     * same priority level, they are sorted alphabetically by event handle and executed
134
     * in that order for that priority.
135
     *
136
     * @see toolkit.FrontendPage#__findEventOrder()
137
     * @return integer
138
     *  The available constants are `Event::kLOW`, `Event::kNORMAL` and `Event::kHIGH`.
139
     *  Defaults to `Event::kNORMAL`
140
     */
141
    public function priority()
142
    {
143
        return self::kNORMAL;
0 ignored issues
show
The constant Event::kNORMAL was not found. Maybe you did not declare it correctly or list all dependencies?
Loading history...
144
    }
145
146
    /**
147
     * This function must be included in an event. The purpose of this function
148
     * is to define the logic of this particular event. It assumes that this event
149
     * has already been triggered from the load function
150
     *
151
     * @since Symphony 2.3
152
     * @return XMLElement
153
     *  Returns an `XMLElement` with the event information (success or failure included)
154
     */
155
    protected function __trigger()
156
    {
157
        return $this->execute();
0 ignored issues
show
The method execute() does not exist on Event. Are you sure you never get this type here, but always one of the subclasses? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

157
        return $this->/** @scrutinizer ignore-call */ execute();
Loading history...
158
    }
159
}
160