Test Setup Failed
Push — master ( f19443...d25d51 )
by Patrick
06:34
created
library/Trapdirector/Icinga2Api.php 1 patch
Indentation   +246 added lines, -246 removed lines patch added patch discarded remove patch
@@ -10,281 +10,281 @@
 block discarded – undo
10 10
 class Icinga2API extends IcingaApiBase
11 11
 {
12 12
     
13
-    /**
14
-     * Creates Icinga2API object
15
-     * 
16
-     * @param string $host host name or IP
17
-     * @param number $port API port
18
-     */
19
-    public function __construct($host, $port = 5665)
20
-    {
21
-        parent::__construct($host,$port);
22
-    }
23
-    /**
13
+	/**
14
+	 * Creates Icinga2API object
15
+	 * 
16
+	 * @param string $host host name or IP
17
+	 * @param number $port API port
18
+	 */
19
+	public function __construct($host, $port = 5665)
20
+	{
21
+		parent::__construct($host,$port);
22
+	}
23
+	/**
24 24
 
25 25
 /************ Host query ************/  
26 26
 
27
-    /**
28
-     * return array of host by filter
29
-     * @param string $hostfilter
30
-     * @throws Exception
31
-     * @return array objects : array('__name','name','display_name','id' (=__name), 'address', 'ip4' (=address), 'address6', 'ip6' (=address6)
32
-     */
33
-    public function getHostByFilter(string $hostfilter)
34
-    {
35
-        $hosts = $this->standardQuery(
36
-            'host',
37
-            $hostfilter,
38
-            //'match("*' . $ip . '*",host.address) || match("*' . $ip . '*",host.address6) || match("*' . $ip . '*",host.name) || match("*' . $ip . '*",host.display_name)',
39
-            array('__name','name','display_name','address','address6')
40
-            );
41
-        foreach ( array_keys($hosts) as $key )
42
-        {
43
-            $hosts[$key]->id = $hosts[$key]->__name;
44
-            $hosts[$key]->ip4 = $hosts[$key]->address;
45
-            $hosts[$key]->ip6 = $hosts[$key]->address6;
46
-        }
47
-        return $hosts;
48
-    }
27
+	/**
28
+	 * return array of host by filter
29
+	 * @param string $hostfilter
30
+	 * @throws Exception
31
+	 * @return array objects : array('__name','name','display_name','id' (=__name), 'address', 'ip4' (=address), 'address6', 'ip6' (=address6)
32
+	 */
33
+	public function getHostByFilter(string $hostfilter)
34
+	{
35
+		$hosts = $this->standardQuery(
36
+			'host',
37
+			$hostfilter,
38
+			//'match("*' . $ip . '*",host.address) || match("*' . $ip . '*",host.address6) || match("*' . $ip . '*",host.name) || match("*' . $ip . '*",host.display_name)',
39
+			array('__name','name','display_name','address','address6')
40
+			);
41
+		foreach ( array_keys($hosts) as $key )
42
+		{
43
+			$hosts[$key]->id = $hosts[$key]->__name;
44
+			$hosts[$key]->ip4 = $hosts[$key]->address;
45
+			$hosts[$key]->ip6 = $hosts[$key]->address6;
46
+		}
47
+		return $hosts;
48
+	}
49 49
     
50
-    /**
51
-     * return array of host by IP (4 or 6)
52
-     * @param string $ip
53
-     * @throws Exception
54
-     * @return array objects : array('__name','name','display_name')
55
-     */
56
-    public function getHostByIP(string $ip) 
57
-    {
58
-        return $this->getHostByFilter('match("*' . $ip . '*",host.address) || match("*' . $ip . '*",host.address6)');
59
-    }
50
+	/**
51
+	 * return array of host by IP (4 or 6)
52
+	 * @param string $ip
53
+	 * @throws Exception
54
+	 * @return array objects : array('__name','name','display_name')
55
+	 */
56
+	public function getHostByIP(string $ip) 
57
+	{
58
+		return $this->getHostByFilter('match("*' . $ip . '*",host.address) || match("*' . $ip . '*",host.address6)');
59
+	}
60 60
 
61 61
     
62
-    /**
63
-     * Get host(s) by name in API
64
-     * @param string $name
65
-     * @return array|NULL[] : see getHostByIP
66
-     */
67
-    public function getHostByName(string $name)
68
-    {
69
-        return $this->getHostByFilter('match("*' . $name . '*",host.name) || match("*' . $name . '*",host.display_name)');
70
-    }
62
+	/**
63
+	 * Get host(s) by name in API
64
+	 * @param string $name
65
+	 * @return array|NULL[] : see getHostByIP
66
+	 */
67
+	public function getHostByName(string $name)
68
+	{
69
+		return $this->getHostByFilter('match("*' . $name . '*",host.name) || match("*' . $name . '*",host.display_name)');
70
+	}
71 71
 
72
-    /**
73
-     * Get host(s) by name in API
74
-     * @param string $name
75
-     * @return array|NULL[] : see getHostByIP
76
-     */
77
-    public function getHostByNameOrIP(string $name)
78
-    {
79
-        return $this->getHostByFilter( 
80
-            'match("*' . $name . '*",host.name) || match("*' . $name . '*",host.display_name) || match("*' . $name . '*",host.address) || match("*' . $name . '*",host.address6)');
81
-    }
72
+	/**
73
+	 * Get host(s) by name in API
74
+	 * @param string $name
75
+	 * @return array|NULL[] : see getHostByIP
76
+	 */
77
+	public function getHostByNameOrIP(string $name)
78
+	{
79
+		return $this->getHostByFilter( 
80
+			'match("*' . $name . '*",host.name) || match("*' . $name . '*",host.display_name) || match("*' . $name . '*",host.address) || match("*' . $name . '*",host.address6)');
81
+	}
82 82
     
83
-    public function getHostInfoByID(string $name)
84
-    {
85
-        $host = $this->getHostByFilter(
86
-            'host.__name=="'. $name .'"');
87
-        if (isset($host[0]))
88
-            return $host[0];
89
-        else
90
-            return NULL;
91
-    }
83
+	public function getHostInfoByID(string $name)
84
+	{
85
+		$host = $this->getHostByFilter(
86
+			'host.__name=="'. $name .'"');
87
+		if (isset($host[0]))
88
+			return $host[0];
89
+		else
90
+			return NULL;
91
+	}
92 92
  
93
-    /**
94
-     * Get all host and IP from hostgroup
95
-     * @param string $hostGroup
96
-     * @throws Exception
97
-     * @return array : attributes : address, address6, name
98
-     */
99
-    public function getHostsIPByHostGroup($hostGroup)
100
-    {        
101
-        return $this->standardQuery(
102
-            'host', 
103
-            '"' . $hostGroup . '" in host.groups',
104
-            array('address','address6','name')
93
+	/**
94
+	 * Get all host and IP from hostgroup
95
+	 * @param string $hostGroup
96
+	 * @throws Exception
97
+	 * @return array : attributes : address, address6, name
98
+	 */
99
+	public function getHostsIPByHostGroup($hostGroup)
100
+	{        
101
+		return $this->standardQuery(
102
+			'host', 
103
+			'"' . $hostGroup . '" in host.groups',
104
+			array('address','address6','name')
105 105
                 
106
-        );
107
-    }
106
+		);
107
+	}
108 108
 
109 109
 
110
-    /** Get services from host in API
111
-     *	
112
-     *  @throws Exception
113
-     *	@param $id string host name
114
-     *  @param bool $active
115
-     *  @param bool $passive_svc
116
-     *	@return array display_name (of service), service_object_id
117
-     */
118
-    public function getServicesByHostid(string $id, bool $active = TRUE, bool $passive_svc = TRUE)
119
-    {
120
-        $filter = 'match("' . $id . '!*", service.__name)';
121
-        if ($active === TRUE)
122
-        {
123
-            $filter .= ' && service.active==true';
124
-        }
125
-        if ($passive_svc === TRUE)
126
-        {
127
-            $filter .= ' && service.enable_passive_checks==true';
128
-        }
129
-        $services =  $this->standardQuery(
130
-            'service',
131
-            $filter,
132
-            array('__name','name','display_name','active')
133
-            );
110
+	/** Get services from host in API
111
+	 *	
112
+	 *  @throws Exception
113
+	 *	@param $id string host name
114
+	 *  @param bool $active
115
+	 *  @param bool $passive_svc
116
+	 *	@return array display_name (of service), service_object_id
117
+	 */
118
+	public function getServicesByHostid(string $id, bool $active = TRUE, bool $passive_svc = TRUE)
119
+	{
120
+		$filter = 'match("' . $id . '!*", service.__name)';
121
+		if ($active === TRUE)
122
+		{
123
+			$filter .= ' && service.active==true';
124
+		}
125
+		if ($passive_svc === TRUE)
126
+		{
127
+			$filter .= ' && service.enable_passive_checks==true';
128
+		}
129
+		$services =  $this->standardQuery(
130
+			'service',
131
+			$filter,
132
+			array('__name','name','display_name','active')
133
+			);
134 134
         
135
-        foreach ( array_keys($services) as $key )
136
-        {
137
-            $services[$key]->id = $services[$key]->__name;
138
-        }
135
+		foreach ( array_keys($services) as $key )
136
+		{
137
+			$services[$key]->id = $services[$key]->__name;
138
+		}
139 139
         
140
-        return $services;
140
+		return $services;
141 141
         
142
-    }
142
+	}
143 143
 
144 144
 /************  Host group query ************/    
145
-    /**
146
-     * return array of host by IP (4 or 6) or name
147
-     * @param string $group Host group name
148
-     * @throws Exception
149
-     * @return array objects : array('name','display_name')
150
-     */
151
-    public function getHostsByGroup(string $group)
152
-    {
153
-         return $this->standardQuery(
154
-            'host',
155
-            '"' . $group . '" in host.groups',
156
-            array('name','display_name')
157
-            );
158
-    }
145
+	/**
146
+	 * return array of host by IP (4 or 6) or name
147
+	 * @param string $group Host group name
148
+	 * @throws Exception
149
+	 * @return array objects : array('name','display_name')
150
+	 */
151
+	public function getHostsByGroup(string $group)
152
+	{
153
+		 return $this->standardQuery(
154
+			'host',
155
+			'"' . $group . '" in host.groups',
156
+			array('name','display_name')
157
+			);
158
+	}
159 159
     
160
-    public function getServicesByHostGroupid(string $group)
161
-    {
162
-        $hostList = $this->getHostsByGroup($group);
163
-        //return $hostList;
164
-        $hostNum = count($hostList);
165
-        $serviceList=array();
166
-        foreach ($hostList as $curHost)
167
-        {
168
-            $services = $this->getServicesByHostid($curHost->name);
169
-            foreach ($services as $service)
170
-            {
171
-                //return $service;
172
-                if (! isset($serviceList[$service->name]))
173
-                {
174
-                    $serviceList[$service->name]=
175
-                        array('num'=> 1 ,'__name' => $service->__name,'display_name' => $service->display_name);
176
-                }
177
-                else
178
-                {
179
-                    $serviceList[$service->name]['num']++;
180
-                }
181
-            }
182
-        }
183
-        $commonServices=array();
184
-        foreach ($serviceList as $key => $values)
185
-        {
186
-            if ($values['num'] >= $hostNum)
187
-            {
188
-                array_push($commonServices,array($key,$values['display_name']));
189
-            }
190
-        }
191
-        return $commonServices;
192
-    }
160
+	public function getServicesByHostGroupid(string $group)
161
+	{
162
+		$hostList = $this->getHostsByGroup($group);
163
+		//return $hostList;
164
+		$hostNum = count($hostList);
165
+		$serviceList=array();
166
+		foreach ($hostList as $curHost)
167
+		{
168
+			$services = $this->getServicesByHostid($curHost->name);
169
+			foreach ($services as $service)
170
+			{
171
+				//return $service;
172
+				if (! isset($serviceList[$service->name]))
173
+				{
174
+					$serviceList[$service->name]=
175
+						array('num'=> 1 ,'__name' => $service->__name,'display_name' => $service->display_name);
176
+				}
177
+				else
178
+				{
179
+					$serviceList[$service->name]['num']++;
180
+				}
181
+			}
182
+		}
183
+		$commonServices=array();
184
+		foreach ($serviceList as $key => $values)
185
+		{
186
+			if ($values['num'] >= $hostNum)
187
+			{
188
+				array_push($commonServices,array($key,$values['display_name']));
189
+			}
190
+		}
191
+		return $commonServices;
192
+	}
193 193
  
194
-    /**
195
-     * Get all host and IP from hostgroup
196
-     * @param string $hostGroup
197
-     * @throws Exception
198
-     * @return array : attributes : address, address6, name
199
-     */
200
-    public function getHostGroupByName($name)
201
-    {
202
-        $hosts = $this->standardQuery(
203
-            'hostgroup',
204
-            'match("*' . $name . '*",hostgroup.name)',
205
-            array('__name','name','display_name')
194
+	/**
195
+	 * Get all host and IP from hostgroup
196
+	 * @param string $hostGroup
197
+	 * @throws Exception
198
+	 * @return array : attributes : address, address6, name
199
+	 */
200
+	public function getHostGroupByName($name)
201
+	{
202
+		$hosts = $this->standardQuery(
203
+			'hostgroup',
204
+			'match("*' . $name . '*",hostgroup.name)',
205
+			array('__name','name','display_name')
206 206
             
207
-            );
208
-        foreach ( array_keys($hosts) as $key )
209
-        {
210
-            $hosts[$key]->id = $hosts[$key]->__name;
211
-        }
212
-        return $hosts;
213
-    }
207
+			);
208
+		foreach ( array_keys($hosts) as $key )
209
+		{
210
+			$hosts[$key]->id = $hosts[$key]->__name;
211
+		}
212
+		return $hosts;
213
+	}
214 214
     
215
-    /**
216
-     * Get hostgroup by id (__name)
217
-     * @param string $hostGroup
218
-     * @throws Exception
219
-     * @return array : __name, name, display_name
220
-     */
221
-    public function getHostGroupById($name)
222
-    {
223
-        $hosts = $this->standardQuery(
224
-            'hostgroup',
225
-            'hostgroup.__name=="'. $name .'"',
226
-            array('__name','name','display_name')
215
+	/**
216
+	 * Get hostgroup by id (__name)
217
+	 * @param string $hostGroup
218
+	 * @throws Exception
219
+	 * @return array : __name, name, display_name
220
+	 */
221
+	public function getHostGroupById($name)
222
+	{
223
+		$hosts = $this->standardQuery(
224
+			'hostgroup',
225
+			'hostgroup.__name=="'. $name .'"',
226
+			array('__name','name','display_name')
227 227
             
228
-            );
229
-        $hosts[0]->id = $hosts[0]->__name;
230
-        return $hosts[0];
231
-    }
228
+			);
229
+		$hosts[0]->id = $hosts[0]->__name;
230
+		return $hosts[0];
231
+	}
232 232
     
233 233
 /****************   Service queries ************/
234
-    /** Get services object id by host name / service name
235
-     *	does not catch exceptions
236
-     *	@param $hostname string host name
237
-     *	@param $name string service name
238
-     *  @param bool $active : if true, return only active service
239
-     *  @param bool $passive_svc : if true, return only service accepting passive checks
240
-     *	@return array  service id
241
-     */
242
-    public function getServiceIDByName($hostname,$name,bool $active = TRUE, bool $passive_svc = TRUE)
243
-    {
244
-        $filter = 'service.__name=="' . $hostname . '!'. $name .'"';
245
-        if ($active === TRUE)
246
-        {
247
-            $filter .= ' && service.active==true';
248
-        }
249
-        if ($passive_svc === TRUE)
250
-        {
251
-            $filter .= ' && service.enable_passive_checks==true';
252
-        }
253
-        $services =  $this->standardQuery(
254
-            'service',
255
-            $filter,
256
-            array('__name','name','display_name','active','enable_passive_checks')
257
-            );
234
+	/** Get services object id by host name / service name
235
+	 *	does not catch exceptions
236
+	 *	@param $hostname string host name
237
+	 *	@param $name string service name
238
+	 *  @param bool $active : if true, return only active service
239
+	 *  @param bool $passive_svc : if true, return only service accepting passive checks
240
+	 *	@return array  service id
241
+	 */
242
+	public function getServiceIDByName($hostname,$name,bool $active = TRUE, bool $passive_svc = TRUE)
243
+	{
244
+		$filter = 'service.__name=="' . $hostname . '!'. $name .'"';
245
+		if ($active === TRUE)
246
+		{
247
+			$filter .= ' && service.active==true';
248
+		}
249
+		if ($passive_svc === TRUE)
250
+		{
251
+			$filter .= ' && service.enable_passive_checks==true';
252
+		}
253
+		$services =  $this->standardQuery(
254
+			'service',
255
+			$filter,
256
+			array('__name','name','display_name','active','enable_passive_checks')
257
+			);
258 258
         
259
-        foreach ( array_keys($services) as $key )
260
-        {
261
-            $services[$key]->id = $services[$key]->__name;
262
-        }
259
+		foreach ( array_keys($services) as $key )
260
+		{
261
+			$services[$key]->id = $services[$key]->__name;
262
+		}
263 263
         
264
-        return $services;
265
-    }
264
+		return $services;
265
+	}
266 266
  
267
-    /** Get services object by id (host!name)
268
-     *	does not catch exceptions
269
-     *	@param $name string service __name (host!name)
270
-     *	@return array  service id
271
-     */
272
-    public function getServiceById($name)
273
-    {
274
-        $filter = 'service.__name=="' .  $name .'"';
275
-        $services =  $this->standardQuery(
276
-            'service',
277
-            $filter,
278
-            array('__name','name','display_name','active','enable_passive_checks')
279
-            );
267
+	/** Get services object by id (host!name)
268
+	 *	does not catch exceptions
269
+	 *	@param $name string service __name (host!name)
270
+	 *	@return array  service id
271
+	 */
272
+	public function getServiceById($name)
273
+	{
274
+		$filter = 'service.__name=="' .  $name .'"';
275
+		$services =  $this->standardQuery(
276
+			'service',
277
+			$filter,
278
+			array('__name','name','display_name','active','enable_passive_checks')
279
+			);
280 280
         
281
-        foreach ( array_keys($services) as $key )
282
-        {
283
-            $services[$key]->id = $services[$key]->__name;
284
-        }
281
+		foreach ( array_keys($services) as $key )
282
+		{
283
+			$services[$key]->id = $services[$key]->__name;
284
+		}
285 285
         
286
-        return $services;
287
-    }
286
+		return $services;
287
+	}
288 288
     
289 289
     
290 290
 }
Please login to merge, or discard this patch.
library/Trapdirector/TrapsController.php 1 patch
Indentation   +105 added lines, -105 removed lines patch added patch discarded remove patch
@@ -49,8 +49,8 @@  discard block
 block discarded – undo
49 49
 	
50 50
 	
51 51
 	/** Get instance of TrapModuleConfig class
52
-	*	@return TrapModuleConfig
53
-	*/
52
+	 *	@return TrapModuleConfig
53
+	 */
54 54
 	public function getModuleConfig() 
55 55
 	{
56 56
 		if ($this->moduleConfig == Null) 
@@ -82,12 +82,12 @@  discard block
 block discarded – undo
82 82
 	 */
83 83
 	public function getTrapHostListTable()
84 84
 	{
85
-	    if ($this->trapTableHostList == Null) 
85
+		if ($this->trapTableHostList == Null) 
86 86
 		{
87
-	        $this->trapTableHostList = new TrapTableHostList();
88
-	        $this->trapTableHostList->setConfig($this->getModuleConfig());
89
-	    }
90
-	    return $this->trapTableHostList;
87
+			$this->trapTableHostList = new TrapTableHostList();
88
+			$this->trapTableHostList->setConfig($this->getModuleConfig());
89
+		}
90
+		return $this->trapTableHostList;
91 91
 	}
92 92
 	
93 93
 	/**
@@ -108,12 +108,12 @@  discard block
 block discarded – undo
108 108
 	 */
109 109
 	public function getUIDatabase()
110 110
 	{
111
-	    if ($this->UIDatabase == Null)
112
-	    {
113
-	        $this->UIDatabase = new UIDatabase($this);
111
+		if ($this->UIDatabase == Null)
112
+		{
113
+			$this->UIDatabase = new UIDatabase($this);
114 114
 	       
115
-	    }
116
-	    return $this->UIDatabase;
115
+		}
116
+		return $this->UIDatabase;
117 117
 	}
118 118
 
119 119
 	/**
@@ -122,36 +122,36 @@  discard block
 block discarded – undo
122 122
 	 */
123 123
 	public function getIdoConn()
124 124
 	{
125
-	    if ($this->icingaAPI === NULL)
126
-	    {
127
-    	    $host = $this->Config()->get('config', 'icingaAPI_host');
128
-    	    $port = $this->Config()->get('config', 'icingaAPI_port');
129
-    	    $user = $this->Config()->get('config', 'icingaAPI_user');
130
-    	    $pass = $this->Config()->get('config', 'icingaAPI_password');
131
-    	    $this->icingaAPI = new Icinga2API($host,$port);
132
-    	    $this->icingaAPI->setCredentials($user, $pass);
133
-    	    list($ret,$message) = $this->icingaAPI->test($this->getModuleConfig()->getapiUserPermissions());
134
-    	    if ($ret === TRUE) // On error, switch to ido DB
135
-    	    {
136
-    	        $this->apiMode = FALSE;
137
-    	        return $this->getUIDatabase();
138
-    	    }
139
-    	    $this->apiMode = TRUE;
125
+		if ($this->icingaAPI === NULL)
126
+		{
127
+			$host = $this->Config()->get('config', 'icingaAPI_host');
128
+			$port = $this->Config()->get('config', 'icingaAPI_port');
129
+			$user = $this->Config()->get('config', 'icingaAPI_user');
130
+			$pass = $this->Config()->get('config', 'icingaAPI_password');
131
+			$this->icingaAPI = new Icinga2API($host,$port);
132
+			$this->icingaAPI->setCredentials($user, $pass);
133
+			list($ret,$message) = $this->icingaAPI->test($this->getModuleConfig()->getapiUserPermissions());
134
+			if ($ret === TRUE) // On error, switch to ido DB
135
+			{
136
+				$this->apiMode = FALSE;
137
+				return $this->getUIDatabase();
138
+			}
139
+			$this->apiMode = TRUE;
140 140
     	    
141
-	    }
142
-	    return $this->icingaAPI;
141
+		}
142
+		return $this->icingaAPI;
143 143
 	    
144 144
 	}
145 145
 	
146
-    protected function applyPaginationLimits(Paginatable $paginatable, $limit = 25, $offset = null)
147
-    {
148
-        $limit = $this->params->get('limit', $limit);
149
-        $page = $this->params->get('page', $offset);
146
+	protected function applyPaginationLimits(Paginatable $paginatable, $limit = 25, $offset = null)
147
+	{
148
+		$limit = $this->params->get('limit', $limit);
149
+		$page = $this->params->get('page', $offset);
150 150
 
151
-        $paginatable->limit($limit, $page > 0 ? ($page - 1) * $limit : 0);
151
+		$paginatable->limit($limit, $page > 0 ? ($page - 1) * $limit : 0);
152 152
 
153
-        return $paginatable;
154
-    }	
153
+		return $paginatable;
154
+	}	
155 155
 	
156 156
 	public function displayExitError($source,$message)
157 157
 	{	// TODO : check better ways to transmit data (with POST ?)
@@ -160,33 +160,33 @@  discard block
 block discarded – undo
160 160
 	
161 161
 	protected function checkReadPermission()
162 162
 	{
163
-        if (! $this->Auth()->hasPermission('trapdirector/view')) {
164
-            $this->displayExitError('Permissions','No permission fo view content');
165
-        }		
163
+		if (! $this->Auth()->hasPermission('trapdirector/view')) {
164
+			$this->displayExitError('Permissions','No permission fo view content');
165
+		}		
166 166
 	}
167 167
 
168 168
 	protected function checkConfigPermission()
169 169
 	{
170
-        if (! $this->Auth()->hasPermission('trapdirector/config')) {
171
-            $this->displayExitError('Permissions','No permission fo configure');
172
-        }		
170
+		if (! $this->Auth()->hasPermission('trapdirector/config')) {
171
+			$this->displayExitError('Permissions','No permission fo configure');
172
+		}		
173 173
 	}
174 174
 	
175
-    /**
176
-     * Check if user has write permission
177
-     * @param number $check optional : if set to 1, return true (user has permission) or false instead of displaying error page
178
-     * @return boolean : user has permission
179
-     */
175
+	/**
176
+	 * Check if user has write permission
177
+	 * @param number $check optional : if set to 1, return true (user has permission) or false instead of displaying error page
178
+	 * @return boolean : user has permission
179
+	 */
180 180
 	protected function checkModuleConfigPermission($check=0)
181 181
 	{
182
-        if (! $this->Auth()->hasPermission('trapdirector/module_config')) {
183
-            if ($check == 0)
184
-            {
185
-                $this->displayExitError('Permissions','No permission fo configure module');
186
-            }
187
-            return false;
188
-        }
189
-        return true;
182
+		if (! $this->Auth()->hasPermission('trapdirector/module_config')) {
183
+			if ($check == 0)
184
+			{
185
+				$this->displayExitError('Permissions','No permission fo configure module');
186
+			}
187
+			return false;
188
+		}
189
+		return true;
190 190
 	}
191 191
 
192 192
 	/*************************  Trap class get **********************/
@@ -206,18 +206,18 @@  discard block
 block discarded – undo
206 206
 	/************************** MIB related **************************/
207 207
 	
208 208
 	/** Get MIBLoader class
209
-	*	@return MIBLoader class
210
-	*/
209
+	 *	@return MIBLoader class
210
+	 */
211 211
 	protected function getMIB()
212 212
 	{
213 213
 		if ($this->MIBData == null)
214 214
 		{
215
-		    $dbConn = $this->getUIDatabase()->getDbConn();
216
-		    if ($dbConn === null) throw new \ErrorException('uncatched db error');
215
+			$dbConn = $this->getUIDatabase()->getDbConn();
216
+			if ($dbConn === null) throw new \ErrorException('uncatched db error');
217 217
 			$this->MIBData=new MIBLoader(
218 218
 				$this->Config()->get('config', 'snmptranslate'),
219 219
 				$this->Config()->get('config', 'snmptranslate_dirs'),
220
-			    $dbConn,
220
+				$dbConn,
221 221
 				$this->getModuleConfig()
222 222
 			);
223 223
 		}
@@ -227,13 +227,13 @@  discard block
 block discarded – undo
227 227
 	/**************************  Database queries *******************/		
228 228
 	
229 229
 	/** Check if director is installed
230
-	*	@return bool true/false
231
-	*/
230
+	 *	@return bool true/false
231
+	 */
232 232
 	protected function isDirectorInstalled()
233 233
 	{
234
-	    $output=array();
235
-	    exec('icingacli module list',$output);
236
-	    foreach ($output as $line)
234
+		$output=array();
235
+		exec('icingacli module list',$output);
236
+		foreach ($output as $line)
237 237
 		{
238 238
 			if (preg_match('/^director .*enabled/',$line))
239 239
 			{
@@ -246,72 +246,72 @@  discard block
 block discarded – undo
246 246
 
247 247
 	/************************ UI elements **************************/
248 248
 	
249
-    /**
250
-     * get max rows to display before paging.
251
-     * @return number
252
-     */
249
+	/**
250
+	 * get max rows to display before paging.
251
+	 * @return number
252
+	 */
253 253
 	public function itemListDisplay()
254 254
 	{
255
-	    return $this->getUIDatabase()->getDBConfigValue('max_rows_in_list');
255
+		return $this->getUIDatabase()->getDBConfigValue('max_rows_in_list');
256 256
 	}
257 257
 
258 258
 	public function setitemListDisplay(int $maxRows)
259 259
 	{
260
-	    return $this->getUIDatabase()->setDBConfigValue('max_rows_in_list',$maxRows);
260
+		return $this->getUIDatabase()->setDBConfigValue('max_rows_in_list',$maxRows);
261 261
 	}
262 262
 	
263
-    /**
264
-     * get Handlers categories list (index => textvalue).
265
-     * @return array
266
-     */	
263
+	/**
264
+	 * get Handlers categories list (index => textvalue).
265
+	 * @return array
266
+	 */	
267 267
 	public function getHandlersCategory()
268 268
 	{
269
-	    //<index>:<name>!<index>:<name>
270
-	    $catList = $this->getUIDatabase()->getDBConfigValue('handler_categories');
271
-	    $catListArray=explode('!',$catList);
272
-	    $retArray=array();
273
-	    foreach ($catListArray as $category)
274
-	    {
275
-	        $catArray=explode(':',$category);
276
-	        $retArray[$catArray[0]] = $catArray[1];
277
-	    }
278
-	    return $retArray; 
269
+		//<index>:<name>!<index>:<name>
270
+		$catList = $this->getUIDatabase()->getDBConfigValue('handler_categories');
271
+		$catListArray=explode('!',$catList);
272
+		$retArray=array();
273
+		foreach ($catListArray as $category)
274
+		{
275
+			$catArray=explode(':',$category);
276
+			$retArray[$catArray[0]] = $catArray[1];
277
+		}
278
+		return $retArray; 
279 279
 	}
280 280
 
281 281
 	public function setHandlerCategory(array $catArray)
282 282
 	{
283
-	    $catString='';
284
-	    foreach ($catArray as $index => $value)
285
-	    {
286
-	        if ($catString != '' ) $catString .= '!';
287
-	        $catString .= $index . ':' . $value;
288
-	    }
289
-	    $this->getUIDatabase()->setDBConfigValue('handler_categories', $catString);
283
+		$catString='';
284
+		foreach ($catArray as $index => $value)
285
+		{
286
+			if ($catString != '' ) $catString .= '!';
287
+			$catString .= $index . ':' . $value;
288
+		}
289
+		$this->getUIDatabase()->setDBConfigValue('handler_categories', $catString);
290 290
 	}
291 291
 	
292 292
 	public function addHandlersCategory(string $catName)
293 293
 	{
294
-	    $catArray = $this->getHandlersCategory();
295
-	    $i=1;
296
-	    while (isset($catArray[$i]) && $i < 100) $i++;
297
-	    if ($i == 100) throw new ProgrammingError('Category array error');
298
-	    $catArray[$i] = $catName;
299
-	    $this->setHandlerCategory($catArray);
294
+		$catArray = $this->getHandlersCategory();
295
+		$i=1;
296
+		while (isset($catArray[$i]) && $i < 100) $i++;
297
+		if ($i == 100) throw new ProgrammingError('Category array error');
298
+		$catArray[$i] = $catName;
299
+		$this->setHandlerCategory($catArray);
300 300
 	}
301 301
 	
302 302
 	public function delHandlersCategory(int $catIndex)
303 303
 	{
304
-	    $catArray = $this->getHandlersCategory();
305
-	    unset($catArray[$catIndex]);
306
-	    $this->setHandlerCategory($catArray);
307
-	    $this->getUIDatabase()->updateHandlersOnCategoryDelete($catIndex);
304
+		$catArray = $this->getHandlersCategory();
305
+		unset($catArray[$catIndex]);
306
+		$this->setHandlerCategory($catArray);
307
+		$this->getUIDatabase()->updateHandlersOnCategoryDelete($catIndex);
308 308
 	}
309 309
 	
310 310
 	public function renameHandlersCategory(int $catIndex, string $catName)
311 311
 	{
312
-	    $catArray = $this->getHandlersCategory();
313
-	    $catArray[$catIndex] = $catName;
314
-	    $this->setHandlerCategory($catArray);
312
+		$catArray = $this->getHandlersCategory();
313
+		$catArray[$catIndex] = $catName;
314
+		$this->setHandlerCategory($catArray);
315 315
 	}
316 316
 	
317 317
 }
Please login to merge, or discard this patch.
library/Trapdirector/IcingaApi/IcingaApiBase.php 1 patch
Indentation   +313 added lines, -313 removed lines patch added patch discarded remove patch
@@ -8,347 +8,347 @@
 block discarded – undo
8 8
 
9 9
 class IcingaApiBase
10 10
 {
11
-    protected $version = 'v1';      //< icinga2 api version
11
+	protected $version = 'v1';      //< icinga2 api version
12 12
     
13
-    protected $host;                //< icinga2 host name or IP
14
-    protected $port;                //< icinga2 api port
13
+	protected $host;                //< icinga2 host name or IP
14
+	protected $port;                //< icinga2 api port
15 15
     
16
-    protected $user;                //< user name
17
-    protected $pass;                //< user password
18
-    protected $usercert;            //< user key for certificate auth (NOT IMPLEMENTED)
19
-    protected $authmethod='pass';   //< Authentication : 'pass' or 'cert'
16
+	protected $user;                //< user name
17
+	protected $pass;                //< user password
18
+	protected $usercert;            //< user key for certificate auth (NOT IMPLEMENTED)
19
+	protected $authmethod='pass';   //< Authentication : 'pass' or 'cert'
20 20
 
21
-    protected $queryURL=array(
22
-        'host'  => 'objects/hosts',
23
-        'hostgroup' => 'objects/hostgroups',
24
-        'service' => 'objects/services'
25
-    );
21
+	protected $queryURL=array(
22
+		'host'  => 'objects/hosts',
23
+		'hostgroup' => 'objects/hostgroups',
24
+		'service' => 'objects/services'
25
+	);
26 26
     
27
-    protected $curl;
28
-    // http://php.net/manual/de/function.json-last-error.php#119985
29
-    protected $errorReference = [
30
-        JSON_ERROR_NONE => 'No error has occurred.',
31
-        JSON_ERROR_DEPTH => 'The maximum stack depth has been exceeded.',
32
-        JSON_ERROR_STATE_MISMATCH => 'Invalid or malformed JSON.',
33
-        JSON_ERROR_CTRL_CHAR => 'Control character error, possibly incorrectly encoded.',
34
-        JSON_ERROR_SYNTAX => 'Syntax error.',
35
-        JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded.',
36
-        JSON_ERROR_RECURSION => 'One or more recursive references in the value to be encoded.',
37
-        JSON_ERROR_INF_OR_NAN => 'One or more NAN or INF values in the value to be encoded.',
38
-        JSON_ERROR_UNSUPPORTED_TYPE => 'A value of a type that cannot be encoded was given.',
39
-    ];
40
-    const JSON_UNKNOWN_ERROR = 'Unknown error.';
27
+	protected $curl;
28
+	// http://php.net/manual/de/function.json-last-error.php#119985
29
+	protected $errorReference = [
30
+		JSON_ERROR_NONE => 'No error has occurred.',
31
+		JSON_ERROR_DEPTH => 'The maximum stack depth has been exceeded.',
32
+		JSON_ERROR_STATE_MISMATCH => 'Invalid or malformed JSON.',
33
+		JSON_ERROR_CTRL_CHAR => 'Control character error, possibly incorrectly encoded.',
34
+		JSON_ERROR_SYNTAX => 'Syntax error.',
35
+		JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded.',
36
+		JSON_ERROR_RECURSION => 'One or more recursive references in the value to be encoded.',
37
+		JSON_ERROR_INF_OR_NAN => 'One or more NAN or INF values in the value to be encoded.',
38
+		JSON_ERROR_UNSUPPORTED_TYPE => 'A value of a type that cannot be encoded was given.',
39
+	];
40
+	const JSON_UNKNOWN_ERROR = 'Unknown error.';
41 41
     
42
-    /**
43
-     * Creates Icinga2API object
44
-     * 
45
-     * @param string $host host name or IP
46
-     * @param number $port API port
47
-     */
48
-    public function __construct($host, $port = 5665)
49
-    {
50
-        $this->host=$host;
51
-        $this->port=$port;
52
-    }
53
-    /**
54
-     * Set user & pass
55
-     * @param string $user
56
-     * @param string $pass
57
-     */
58
-    public function setCredentials($user,$pass)
59
-    {
60
-        $this->user=$user;
61
-        $this->pass=$pass;
62
-        $this->authmethod='pass';
63
-    }
42
+	/**
43
+	 * Creates Icinga2API object
44
+	 * 
45
+	 * @param string $host host name or IP
46
+	 * @param number $port API port
47
+	 */
48
+	public function __construct($host, $port = 5665)
49
+	{
50
+		$this->host=$host;
51
+		$this->port=$port;
52
+	}
53
+	/**
54
+	 * Set user & pass
55
+	 * @param string $user
56
+	 * @param string $pass
57
+	 */
58
+	public function setCredentials($user,$pass)
59
+	{
60
+		$this->user=$user;
61
+		$this->pass=$pass;
62
+		$this->authmethod='pass';
63
+	}
64 64
     
65
-    /**
66
-     * Set user & certificate (NOT IMPLEMENTED @throws RuntimeException)
67
-     * @param string $user
68
-     * @param string $usercert
69
-     */
70
-    public function setCredentialskey($user,$usercert)
71
-    {
72
-        $this->user=$user;
73
-        $this->usercert=$usercert;
74
-        $this->authmethod='cert';
75
-        throw new RuntimeException('Certificate auth not implemented');
76
-    }
65
+	/**
66
+	 * Set user & certificate (NOT IMPLEMENTED @throws RuntimeException)
67
+	 * @param string $user
68
+	 * @param string $usercert
69
+	 */
70
+	public function setCredentialskey($user,$usercert)
71
+	{
72
+		$this->user=$user;
73
+		$this->usercert=$usercert;
74
+		$this->authmethod='cert';
75
+		throw new RuntimeException('Certificate auth not implemented');
76
+	}
77 77
 
78
-    /**
79
-     * Test API connection
80
-     * @param array $permissions : check permissions if not null or empty
81
-     * @return array (bool,string) : bool = false is all OK, else true with message
82
-     * */
83
-    public function test(array $permissions)
84
-    {
85
-       try
86
-        {
87
-            $result=$this->request('GET', "", NULL, NULL);
88
-        } 
89
-        catch (Exception $e)
90
-        {
91
-            return array(true, 'Error with API : '.$e->getMessage());
92
-        }
93
-        //var_dump($result);
94
-        $permOk=1;
95
-        $permMissing='';
96
-        if ($permissions === NULL || count($permissions) == 0) // If no permission check return OK after connexion
97
-        {
98
-            return array(false,'OK');
99
-        }
100
-        if (property_exists($result, 'results') && property_exists($result->results[0], 'permissions'))
101
-        {
78
+	/**
79
+	 * Test API connection
80
+	 * @param array $permissions : check permissions if not null or empty
81
+	 * @return array (bool,string) : bool = false is all OK, else true with message
82
+	 * */
83
+	public function test(array $permissions)
84
+	{
85
+	   try
86
+		{
87
+			$result=$this->request('GET', "", NULL, NULL);
88
+		} 
89
+		catch (Exception $e)
90
+		{
91
+			return array(true, 'Error with API : '.$e->getMessage());
92
+		}
93
+		//var_dump($result);
94
+		$permOk=1;
95
+		$permMissing='';
96
+		if ($permissions === NULL || count($permissions) == 0) // If no permission check return OK after connexion
97
+		{
98
+			return array(false,'OK');
99
+		}
100
+		if (property_exists($result, 'results') && property_exists($result->results[0], 'permissions'))
101
+		{
102 102
             
103
-            foreach ( $permissions as $mustPermission)
104
-            {
105
-                $curPermOK=0;
106
-                foreach ( $result->results[0]->permissions as $curPermission)
107
-                {
108
-                    $curPermission=preg_replace('/\*/','.*',$curPermission); // put * as .* to created a regexp
109
-                    if (preg_match('#'.$curPermission.'#',$mustPermission))
110
-                    {
111
-                        $curPermOK=1;
112
-                        break;
113
-                    }
114
-                }
115
-                if ($curPermOK == 0)
116
-                {
117
-                    $permOk=0;
118
-                    $permMissing=$mustPermission;
119
-                    break;
120
-                }
121
-            }
122
-            if ($permOk == 0)
123
-            {
124
-                return array(true,'API connection OK, but missing permission : '.$permMissing);
125
-            }
126
-            return array(false,'API connection OK');
103
+			foreach ( $permissions as $mustPermission)
104
+			{
105
+				$curPermOK=0;
106
+				foreach ( $result->results[0]->permissions as $curPermission)
107
+				{
108
+					$curPermission=preg_replace('/\*/','.*',$curPermission); // put * as .* to created a regexp
109
+					if (preg_match('#'.$curPermission.'#',$mustPermission))
110
+					{
111
+						$curPermOK=1;
112
+						break;
113
+					}
114
+				}
115
+				if ($curPermOK == 0)
116
+				{
117
+					$permOk=0;
118
+					$permMissing=$mustPermission;
119
+					break;
120
+				}
121
+			}
122
+			if ($permOk == 0)
123
+			{
124
+				return array(true,'API connection OK, but missing permission : '.$permMissing);
125
+			}
126
+			return array(false,'API connection OK');
127 127
             
128
-        }
129
-        return array(true,'API connection OK, but cannot get permissions');
130
-    }
128
+		}
129
+		return array(true,'API connection OK, but cannot get permissions');
130
+	}
131 131
     
132 132
     
133
-    protected function url($url) {
134
-        return sprintf('https://%s:%d/%s/%s', $this->host, $this->port, $this->version, $url);
135
-    }
133
+	protected function url($url) {
134
+		return sprintf('https://%s:%d/%s/%s', $this->host, $this->port, $this->version, $url);
135
+	}
136 136
     
137
-    /**
138
-     * Create or return curl ressource
139
-     * @throws Exception
140
-     * @return resource
141
-     */
142
-    protected function curl() {
143
-        if ($this->curl === null) {
144
-            $this->curl = curl_init(sprintf('https://%s:%d', $this->host, $this->port));
145
-            if ($this->curl === false) {
146
-                throw new Exception('CURL INIT ERROR');
147
-            }
148
-        }
149
-        return $this->curl;
150
-    }
137
+	/**
138
+	 * Create or return curl ressource
139
+	 * @throws Exception
140
+	 * @return resource
141
+	 */
142
+	protected function curl() {
143
+		if ($this->curl === null) {
144
+			$this->curl = curl_init(sprintf('https://%s:%d', $this->host, $this->port));
145
+			if ($this->curl === false) {
146
+				throw new Exception('CURL INIT ERROR');
147
+			}
148
+		}
149
+		return $this->curl;
150
+	}
151 151
 
152
-    /**
153
-     * Send a passive service check
154
-     * @param string $host : host name 
155
-     * @param string $service : service name
156
-     * @param int $state : state of service
157
-     * @param string $display : service passive check output
158
-     * @param string $perfdata : performance data as string
159
-     * @return array (status = true (oK) or false (nok), string message)
160
-     */
161
-    public function serviceCheckResult($host,$service,$state,$display,$perfdata='')
162
-    {
163
-        //Send a POST request to the URL endpoint /v1/actions/process-check-result
164
-        //actions/process-check-result?service=example.localdomain!passive-ping6
165
-        $url='actions/process-check-result';
166
-        $body=array(
167
-            "filter"        => 'service.name=="'.$service.'" && service.host_name=="'.$host.'"',
168
-            'type'          => 'Service',
169
-            "exit_status"   => $state,
170
-            "plugin_output" => $display,
171
-            "performance_data" => $perfdata
172
-        );
173
-        try 
174
-        {
175
-            $result=$this->request('POST', $url, null, $body);
176
-        } catch (Exception $e) 
177
-        {
178
-            return array(false, $e->getMessage());
179
-        }
180
-        if (property_exists($result,'error') )
181
-        {
182
-            if (property_exists($result,'status'))
183
-            {
184
-                $message=$result->status;
185
-            }
186
-            else 
187
-            {
188
-                $message="Unkown status";
189
-            }
190
-            return array(false , 'Ret code ' .$result->error.' : '.$message);
191
-        }
192
-        if (property_exists($result, 'results'))
193
-        {
194
-            if (isset($result->results[0]))
195
-            {
196
-                return array(true,'code '.$result->results[0]->code.' : '.$result->results[0]->status);
197
-            }
198
-            else
199
-            {
200
-                return array(false,'Service not found');
201
-            }
152
+	/**
153
+	 * Send a passive service check
154
+	 * @param string $host : host name 
155
+	 * @param string $service : service name
156
+	 * @param int $state : state of service
157
+	 * @param string $display : service passive check output
158
+	 * @param string $perfdata : performance data as string
159
+	 * @return array (status = true (oK) or false (nok), string message)
160
+	 */
161
+	public function serviceCheckResult($host,$service,$state,$display,$perfdata='')
162
+	{
163
+		//Send a POST request to the URL endpoint /v1/actions/process-check-result
164
+		//actions/process-check-result?service=example.localdomain!passive-ping6
165
+		$url='actions/process-check-result';
166
+		$body=array(
167
+			"filter"        => 'service.name=="'.$service.'" && service.host_name=="'.$host.'"',
168
+			'type'          => 'Service',
169
+			"exit_status"   => $state,
170
+			"plugin_output" => $display,
171
+			"performance_data" => $perfdata
172
+		);
173
+		try 
174
+		{
175
+			$result=$this->request('POST', $url, null, $body);
176
+		} catch (Exception $e) 
177
+		{
178
+			return array(false, $e->getMessage());
179
+		}
180
+		if (property_exists($result,'error') )
181
+		{
182
+			if (property_exists($result,'status'))
183
+			{
184
+				$message=$result->status;
185
+			}
186
+			else 
187
+			{
188
+				$message="Unkown status";
189
+			}
190
+			return array(false , 'Ret code ' .$result->error.' : '.$message);
191
+		}
192
+		if (property_exists($result, 'results'))
193
+		{
194
+			if (isset($result->results[0]))
195
+			{
196
+				return array(true,'code '.$result->results[0]->code.' : '.$result->results[0]->status);
197
+			}
198
+			else
199
+			{
200
+				return array(false,'Service not found');
201
+			}
202 202
             
203
-        }
204
-        return array(false,'Unkown result, open issue with this : '.print_r($result,true));
205
-    }
203
+		}
204
+		return array(false,'Unkown result, open issue with this : '.print_r($result,true));
205
+	}
206 206
   
207
-    /**
208
-     * Check 'result' exists and check for errors/status
209
-     * @param \stdClass $result
210
-     * @throws Exception 
211
-     */
212
-    public function checkResultStatus(\stdClass $result) 
213
-    {
214
-        if (property_exists($result,'error') )
215
-        {
216
-            if (property_exists($result,'status'))
217
-            {
218
-                throw new Exception('Ret code ' .$result->error.' : ' . $result->status);
219
-            }
220
-            else
221
-            {
222
-                throw new Exception('Ret code ' .$result->error.' : Unkown status');
223
-            }
224
-        }
225
-        if ( ! property_exists($result, 'results'))
226
-        {
227
-            throw new Exception('Unkown result');
228
-        }
229
-    }
207
+	/**
208
+	 * Check 'result' exists and check for errors/status
209
+	 * @param \stdClass $result
210
+	 * @throws Exception 
211
+	 */
212
+	public function checkResultStatus(\stdClass $result) 
213
+	{
214
+		if (property_exists($result,'error') )
215
+		{
216
+			if (property_exists($result,'status'))
217
+			{
218
+				throw new Exception('Ret code ' .$result->error.' : ' . $result->status);
219
+			}
220
+			else
221
+			{
222
+				throw new Exception('Ret code ' .$result->error.' : Unkown status');
223
+			}
224
+		}
225
+		if ( ! property_exists($result, 'results'))
226
+		{
227
+			throw new Exception('Unkown result');
228
+		}
229
+	}
230 230
     
231
-    /**
232
-     * Send request to API
233
-     * @param string $method get/post/...
234
-     * @param string $url (after /v1/ )
235
-     * @param array $headers
236
-     * @param array $body 
237
-     * @throws Exception
238
-     * @return array
239
-     */
240
-    public function request($method, $url, $headers, $body) {
241
-        $auth = sprintf('%s:%s', $this->user, $this->pass);
242
-        $curlHeaders = array("Accept: application/json");
243
-        if ($body !== null) {
244
-            $body = json_encode($body);
245
-            array_push($curlHeaders, 'Content-Type: application/json');
246
-            //array_push($curlHeaders, 'X-HTTP-Method-Override: GET');
247
-        }
248
-        //var_dump($body);
249
-        //var_dump($this->url($url));
250
-        if ($headers !== null) {
251
-            $curlFinalHeaders = array_merge($curlHeaders, $headers);
252
-        } else 
253
-        {
254
-            $curlFinalHeaders=$curlHeaders;
255
-        }
256
-        $curl = $this->curl();
257
-        $opts = array(
258
-            CURLOPT_URL		=> $this->url($url),
259
-            CURLOPT_HTTPHEADER 	=> $curlFinalHeaders,
260
-            CURLOPT_USERPWD		=> $auth,
261
-            CURLOPT_CUSTOMREQUEST	=> strtoupper($method),
262
-            CURLOPT_RETURNTRANSFER 	=> true,
263
-            CURLOPT_CONNECTTIMEOUT 	=> 10,
264
-            CURLOPT_SSL_VERIFYHOST 	=> false,
265
-            CURLOPT_SSL_VERIFYPEER 	=> false,
266
-        );
267
-        if ($body !== null) {
268
-            $opts[CURLOPT_POSTFIELDS] = $body;
269
-        }
270
-        curl_setopt_array($curl, $opts);
271
-        $res = curl_exec($curl);
272
-        if ($res === false) {
273
-            throw new Exception('CURL ERROR: ' . curl_error($curl));
274
-        }
275
-        $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
276
-        if ($statusCode === 401) {
277
-            throw new Exception('Unable to authenticate, please check your API credentials');
278
-        }
279
-        return $this->fromJsonResult($res);
280
-    }
231
+	/**
232
+	 * Send request to API
233
+	 * @param string $method get/post/...
234
+	 * @param string $url (after /v1/ )
235
+	 * @param array $headers
236
+	 * @param array $body 
237
+	 * @throws Exception
238
+	 * @return array
239
+	 */
240
+	public function request($method, $url, $headers, $body) {
241
+		$auth = sprintf('%s:%s', $this->user, $this->pass);
242
+		$curlHeaders = array("Accept: application/json");
243
+		if ($body !== null) {
244
+			$body = json_encode($body);
245
+			array_push($curlHeaders, 'Content-Type: application/json');
246
+			//array_push($curlHeaders, 'X-HTTP-Method-Override: GET');
247
+		}
248
+		//var_dump($body);
249
+		//var_dump($this->url($url));
250
+		if ($headers !== null) {
251
+			$curlFinalHeaders = array_merge($curlHeaders, $headers);
252
+		} else 
253
+		{
254
+			$curlFinalHeaders=$curlHeaders;
255
+		}
256
+		$curl = $this->curl();
257
+		$opts = array(
258
+			CURLOPT_URL		=> $this->url($url),
259
+			CURLOPT_HTTPHEADER 	=> $curlFinalHeaders,
260
+			CURLOPT_USERPWD		=> $auth,
261
+			CURLOPT_CUSTOMREQUEST	=> strtoupper($method),
262
+			CURLOPT_RETURNTRANSFER 	=> true,
263
+			CURLOPT_CONNECTTIMEOUT 	=> 10,
264
+			CURLOPT_SSL_VERIFYHOST 	=> false,
265
+			CURLOPT_SSL_VERIFYPEER 	=> false,
266
+		);
267
+		if ($body !== null) {
268
+			$opts[CURLOPT_POSTFIELDS] = $body;
269
+		}
270
+		curl_setopt_array($curl, $opts);
271
+		$res = curl_exec($curl);
272
+		if ($res === false) {
273
+			throw new Exception('CURL ERROR: ' . curl_error($curl));
274
+		}
275
+		$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
276
+		if ($statusCode === 401) {
277
+			throw new Exception('Unable to authenticate, please check your API credentials');
278
+		}
279
+		return $this->fromJsonResult($res);
280
+	}
281 281
     
282
-    /**
283
-     * 
284
-     * @param string $json json encoded 
285
-     * @throws Exception
286
-     * @return array json decoded
287
-     */
288
-    protected function fromJsonResult($json) {
289
-        $result = @json_decode($json);
290
-        //var_dump($json);
291
-        if ($result === null) {
292
-            throw new Exception('Parsing JSON failed: '.$this->getLastJsonErrorMessage(json_last_error()));
293
-        }
294
-        return $result;
295
-    }
282
+	/**
283
+	 * 
284
+	 * @param string $json json encoded 
285
+	 * @throws Exception
286
+	 * @return array json decoded
287
+	 */
288
+	protected function fromJsonResult($json) {
289
+		$result = @json_decode($json);
290
+		//var_dump($json);
291
+		if ($result === null) {
292
+			throw new Exception('Parsing JSON failed: '.$this->getLastJsonErrorMessage(json_last_error()));
293
+		}
294
+		return $result;
295
+	}
296 296
     
297
-    /**
298
-     * Return text error no json error
299
-     * @param string $errorCode
300
-     * @return string
301
-     */
302
-    protected function getLastJsonErrorMessage($errorCode) {
303
-        if (!array_key_exists($errorCode, $this->errorReference)) {
304
-            return self::JSON_UNKNOWN_ERROR;
305
-        }
306
-        return $this->errorReference[$errorCode];
307
-    }
297
+	/**
298
+	 * Return text error no json error
299
+	 * @param string $errorCode
300
+	 * @return string
301
+	 */
302
+	protected function getLastJsonErrorMessage($errorCode) {
303
+		if (!array_key_exists($errorCode, $this->errorReference)) {
304
+			return self::JSON_UNKNOWN_ERROR;
305
+		}
306
+		return $this->errorReference[$errorCode];
307
+	}
308 308
 
309
-    public function standardQuery(string $urlType , string $filter, array $attributes)
310
-    {
311
-        /*
309
+	public function standardQuery(string $urlType , string $filter, array $attributes)
310
+	{
311
+		/*
312 312
          *  curl -k -s -u  trapdirector:trapdirector -H 'X-HTTP-Method-Override: GET' -X POST 'https://localhost:5665/v1/objects/hosts' 
313 313
          *  -d '{"filter":"\"test_trap\" in host.groups","attrs": ["address" ,"address6"],"pretty": true}'
314 314
          
315 315
          {"results":[{"attrs":{"__name":"Icinga host","address":"127.0.0.1","display_name":"Icinga host","name":"Icinga host"},"joins":{},"meta":{},"name":"Icinga host","type":"Host"}]}
316 316
          */
317 317
         
318
-        if (! isset($this->queryURL[$urlType] ))
319
-        {
320
-            throw new Exception("Unkown object type");
321
-        }
322
-        $url=$this->queryURL[$urlType];
323
-        $body=array();
324
-        if ($filter !== NULL)
325
-        {
326
-            $body['filter'] = $filter;
327
-        }
328
-        if (count($attributes) != 0)
329
-        {
330
-            $body['attrs'] = $attributes;
331
-        }
318
+		if (! isset($this->queryURL[$urlType] ))
319
+		{
320
+			throw new Exception("Unkown object type");
321
+		}
322
+		$url=$this->queryURL[$urlType];
323
+		$body=array();
324
+		if ($filter !== NULL)
325
+		{
326
+			$body['filter'] = $filter;
327
+		}
328
+		if (count($attributes) != 0)
329
+		{
330
+			$body['attrs'] = $attributes;
331
+		}
332 332
 
333
-        try
334
-        {
335
-            $result=$this->request('POST', $url, array('X-HTTP-Method-Override: GET'), $body);
336
-        } catch (Exception $e)
337
-        {
338
-            throw new Exception($e->getMessage());
339
-        }
333
+		try
334
+		{
335
+			$result=$this->request('POST', $url, array('X-HTTP-Method-Override: GET'), $body);
336
+		} catch (Exception $e)
337
+		{
338
+			throw new Exception($e->getMessage());
339
+		}
340 340
         
341
-        $this->checkResultStatus($result);
341
+		$this->checkResultStatus($result);
342 342
         
343
-        $numHost=0;
344
-        $hostArray=array();
345
-        while (isset($result->results[$numHost]) && property_exists ($result->results[$numHost],'attrs'))
346
-        {
347
-            $hostArray[$numHost] = $result->results[$numHost]->attrs;
348
-            $numHost++;
349
-        }
350
-        return $hostArray;
351
-    }
343
+		$numHost=0;
344
+		$hostArray=array();
345
+		while (isset($result->results[$numHost]) && property_exists ($result->results[$numHost],'attrs'))
346
+		{
347
+			$hostArray[$numHost] = $result->results[$numHost]->attrs;
348
+			$numHost++;
349
+		}
350
+		return $hostArray;
351
+	}
352 352
     
353 353
 }
354 354
 
Please login to merge, or discard this patch.
application/controllers/HandlerController.php 1 patch
Indentation   +295 added lines, -296 removed lines patch added patch discarded remove patch
@@ -12,13 +12,12 @@  discard block
 block discarded – undo
12 12
 
13 13
 //use Icinga\Web\Form as Form;
14 14
 /** Rules management
15
-
16
-*/
15
+ */
17 16
 class HandlerController extends TrapsController
18 17
 {
19 18
 
20 19
 	/** index : list existing rules 
21
-	*/
20
+	 */
22 21
 	public function indexAction()
23 22
 	{	
24 23
 		$this->checkReadPermission();
@@ -28,13 +27,13 @@  discard block
 block discarded – undo
28 27
 		if ($dbConn === null) throw new \ErrorException('uncatched db error');
29 28
 		
30 29
 		$handlerTable = new HandlerTable(
31
-		      $this->moduleConfig->getTrapRuleName(),
32
-		      $this->moduleConfig->getHandlerListTitles(),
33
-		      $this->moduleConfig->getHandlerListDisplayColumns(),
34
-		      $this->moduleConfig->getHandlerColumns(),
35
-		      $dbConn->getConnection(),
36
-		      $this->view,
37
-		      $this->moduleConfig->urlPath());
30
+			  $this->moduleConfig->getTrapRuleName(),
31
+			  $this->moduleConfig->getHandlerListTitles(),
32
+			  $this->moduleConfig->getHandlerListDisplayColumns(),
33
+			  $this->moduleConfig->getHandlerColumns(),
34
+			  $dbConn->getConnection(),
35
+			  $this->view,
36
+			  $this->moduleConfig->urlPath());
38 37
 		
39 38
 		$handlerTable->setMaxPerPage($this->itemListDisplay());
40 39
 		
@@ -56,7 +55,7 @@  discard block
 block discarded – undo
56 55
 		
57 56
 		// TODO : Obsolete remove after new table validation.
58 57
 		
59
-	    /**
58
+		/**
60 59
 		$this->getHandlerListTable()->setConnection($dbConn);
61 60
 		$this->getHandlerListTable()->setMibloader($this->getMIB());
62 61
 		// Apply pagination limits 
@@ -73,22 +72,22 @@  discard block
 block discarded – undo
73 72
 	 */
74 73
 	public function testruleAction()
75 74
 	{
76
-	    $this->checkReadPermission();
77
-	    $this->getTabs()->add('get',array(
78
-	        'active'	=> true,
79
-	        'label'		=> $this->translate('Test Rule'),
80
-	        'url'		=> Url::fromRequest()
81
-	    ));
75
+		$this->checkReadPermission();
76
+		$this->getTabs()->add('get',array(
77
+			'active'	=> true,
78
+			'label'		=> $this->translate('Test Rule'),
79
+			'url'		=> Url::fromRequest()
80
+		));
82 81
 	    
83 82
 
84
-	    if ($this->params->get('rule') !== null) 
85
-	    {
86
-	        $this->view->rule= $this->params->get('rule');
87
-	    }
88
-	    else
89
-	    {
90
-	        $this->view->rule='';
91
-	    }
83
+		if ($this->params->get('rule') !== null) 
84
+		{
85
+			$this->view->rule= $this->params->get('rule');
86
+		}
87
+		else
88
+		{
89
+			$this->view->rule='';
90
+		}
92 91
 	}
93 92
 	
94 93
 	/**
@@ -96,31 +95,31 @@  discard block
 block discarded – undo
96 95
 	 */
97 96
 	private function add_setup_vars()
98 97
 	{
99
-	    // variables to send to view
100
-	    $this->view->hostlist=array(); // host list to input datalist
101
-	    $this->view->hostname=''; // Host name in input text
102
-	    $this->view->serviceGet=false; // Set to true to get list of service if only one host set
103
-	    $this->view->serviceSet=null; // Select service in services select (must have serviceGet=true).
104
-	    $this->view->mainoid=''; // Trap OID
105
-	    $this->view->mib=''; // Trap mib
106
-	    $this->view->name=''; // Trap name
107
-	    $this->view->trapListForMIB=array(); // Trap list if mib exists for trap
108
-	    $this->view->objectList=array(); // objects sent with trap
109
-	    $this->view->display=''; // Initial display
110
-	    $this->view->rule=''; // rule display
111
-	    $this->view->revertOK=''; // revert OK in seconds
112
-	    $this->view->hostid=-1; // normally set by javascript serviceGet()
113
-	    $this->view->ruleid=-1; // Rule id in DB for update & delete
114
-	    $this->view->setToUpdate=false; // set form as update form
115
-	    $this->view->setRuleMatch=-1; // set action on rule match (default nothing)
116
-	    $this->view->setRuleNoMatch=-1; // set action on rule no match (default nothing)
98
+		// variables to send to view
99
+		$this->view->hostlist=array(); // host list to input datalist
100
+		$this->view->hostname=''; // Host name in input text
101
+		$this->view->serviceGet=false; // Set to true to get list of service if only one host set
102
+		$this->view->serviceSet=null; // Select service in services select (must have serviceGet=true).
103
+		$this->view->mainoid=''; // Trap OID
104
+		$this->view->mib=''; // Trap mib
105
+		$this->view->name=''; // Trap name
106
+		$this->view->trapListForMIB=array(); // Trap list if mib exists for trap
107
+		$this->view->objectList=array(); // objects sent with trap
108
+		$this->view->display=''; // Initial display
109
+		$this->view->rule=''; // rule display
110
+		$this->view->revertOK=''; // revert OK in seconds
111
+		$this->view->hostid=-1; // normally set by javascript serviceGet()
112
+		$this->view->ruleid=-1; // Rule id in DB for update & delete
113
+		$this->view->setToUpdate=false; // set form as update form
114
+		$this->view->setRuleMatch=-1; // set action on rule match (default nothing)
115
+		$this->view->setRuleNoMatch=-1; // set action on rule no match (default nothing)
117 116
 	    
118
-	    $this->view->selectGroup=false; // Select by group if true
119
-	    $this->view->hostgroupid=-1; // host group id
120
-	    $this->view->serviceGroupGet=false; // Get list of service for group (set serviceSet to select one)
117
+		$this->view->selectGroup=false; // Select by group if true
118
+		$this->view->hostgroupid=-1; // host group id
119
+		$this->view->serviceGroupGet=false; // Get list of service for group (set serviceSet to select one)
121 120
 	    
122
-	    $this->view->modifier=null;
123
-	    $this->view->modified=null;
121
+		$this->view->modifier=null;
122
+		$this->view->modified=null;
124 123
 	}
125 124
 	
126 125
 	/**
@@ -129,102 +128,102 @@  discard block
 block discarded – undo
129 128
 	 */
130 129
 	private function add_from_existing($trapid)
131 130
 	{
132
-	    /********** Setup from existing trap ***************/
133
-	    // Get the full trap info
134
-	    $trapDetail=$this->getTrapDetail($trapid);
131
+		/********** Setup from existing trap ***************/
132
+		// Get the full trap info
133
+		$trapDetail=$this->getTrapDetail($trapid);
135 134
 	    
136
-	    $hostfilter=$trapDetail->source_ip;
135
+		$hostfilter=$trapDetail->source_ip;
137 136
 	    
138
-	    // Get host
139
-	    try
140
-	    {
141
-	        $hosts=$this->getIdoConn()->getHostByIP($hostfilter);
142
-	    }
143
-	    catch (Exception $e)
144
-	    {
145
-	        $this->displayExitError('Add handler : get host by IP/Name ',$e->getMessage());
146
-	    }
137
+		// Get host
138
+		try
139
+		{
140
+			$hosts=$this->getIdoConn()->getHostByIP($hostfilter);
141
+		}
142
+		catch (Exception $e)
143
+		{
144
+			$this->displayExitError('Add handler : get host by IP/Name ',$e->getMessage());
145
+		}
147 146
 	    
148 147
 	    
149
-	    // if one unique host found -> put id text input
150
-	    if (count($hosts)==1) {
151
-	        $this->view->hostname=$hosts[0]->name;
152
-	        //$hostid=$hosts[0]->id;
153
-	        // Tell JS to get services when page is loaded
154
-	        $this->view->serviceGet=true;
148
+		// if one unique host found -> put id text input
149
+		if (count($hosts)==1) {
150
+			$this->view->hostname=$hosts[0]->name;
151
+			//$hostid=$hosts[0]->id;
152
+			// Tell JS to get services when page is loaded
153
+			$this->view->serviceGet=true;
155 154
 	        
156
-	    }
157
-	    else
158
-	    {
159
-	        foreach($hosts as $key=>$val)
160
-	        {
161
-	            array_push($this->view->hostlist,$hosts[$key]->name);
162
-	        }
163
-	    }
155
+		}
156
+		else
157
+		{
158
+			foreach($hosts as $key=>$val)
159
+			{
160
+				array_push($this->view->hostlist,$hosts[$key]->name);
161
+			}
162
+		}
164 163
 	    
165
-	    // set up trap oid and objects received by the trap
164
+		// set up trap oid and objects received by the trap
166 165
 	    
167
-	    $this->view->mainoid=$trapDetail->trap_oid;
168
-	    if ($trapDetail->trap_name_mib != null)
169
-	    {
170
-	        $this->view->mib=$trapDetail->trap_name_mib;
171
-	        $this->view->name=$trapDetail->trap_name;
172
-	        $this->view->trapListForMIB=$this->getMIB()
173
-	        ->getTrapList($trapDetail->trap_name_mib);
174
-	    }
166
+		$this->view->mainoid=$trapDetail->trap_oid;
167
+		if ($trapDetail->trap_name_mib != null)
168
+		{
169
+			$this->view->mib=$trapDetail->trap_name_mib;
170
+			$this->view->name=$trapDetail->trap_name;
171
+			$this->view->trapListForMIB=$this->getMIB()
172
+			->getTrapList($trapDetail->trap_name_mib);
173
+		}
175 174
 	    
176
-	    // Get all objects that can be in trap from MIB
177
-	    $allObjects=$this->getMIB()->getObjectList($trapDetail->trap_oid);
178
-	    // Get all objects in current Trap
179
-	    $currentTrapObjects=$this->getTrapobjects($trapid);
180
-	    $oid_index=1;
181
-	    foreach ($currentTrapObjects as $key => $val)
182
-	    {
183
-	        $currentObjectType='Unknown';
184
-	        $currentObjectTypeEnum='Unknown';
185
-	        if (isset($allObjects[$val->oid]['type']))
186
-	        {
187
-	            $currentObjectType=$allObjects[$val->oid]['type'];
188
-	            $currentObjectTypeEnum=$allObjects[$val->oid]['type_enum'];
189
-	        }
190
-	        $currentObject=array(
191
-	            $oid_index,
192
-	            $val->oid,
193
-	            $val->oid_name_mib,
194
-	            $val->oid_name,
195
-	            $val->value,
196
-	            $currentObjectType,
197
-	            $currentObjectTypeEnum
198
-	        );
199
-	        $oid_index++;
200
-	        array_push($this->view->objectList,$currentObject);
201
-	        // set currrent object to null in allObjects
202
-	        if (isset($allObjects[$val->oid]))
203
-	        {
204
-	            $allObjects[$val->oid]=null;
205
-	        }
206
-	    }
207
-	    if ($allObjects!=null) // in case trap doesn't have objects or is not resolved
208
-	    {
209
-	        foreach ($allObjects as $key => $val)
210
-	        {
211
-	            if ($val==null) { continue; }
212
-	            array_push($this->view->objectList, array(
213
-	                $oid_index,
214
-	                $key,
215
-	                $allObjects[$key]['mib'],
216
-	                $allObjects[$key]['name'],
217
-	                '',
218
-	                $allObjects[$key]['type'],
219
-	                $allObjects[$key]['type_enum']
220
-	            ));
221
-	            $oid_index++;
222
-	        }
223
-	    }
175
+		// Get all objects that can be in trap from MIB
176
+		$allObjects=$this->getMIB()->getObjectList($trapDetail->trap_oid);
177
+		// Get all objects in current Trap
178
+		$currentTrapObjects=$this->getTrapobjects($trapid);
179
+		$oid_index=1;
180
+		foreach ($currentTrapObjects as $key => $val)
181
+		{
182
+			$currentObjectType='Unknown';
183
+			$currentObjectTypeEnum='Unknown';
184
+			if (isset($allObjects[$val->oid]['type']))
185
+			{
186
+				$currentObjectType=$allObjects[$val->oid]['type'];
187
+				$currentObjectTypeEnum=$allObjects[$val->oid]['type_enum'];
188
+			}
189
+			$currentObject=array(
190
+				$oid_index,
191
+				$val->oid,
192
+				$val->oid_name_mib,
193
+				$val->oid_name,
194
+				$val->value,
195
+				$currentObjectType,
196
+				$currentObjectTypeEnum
197
+			);
198
+			$oid_index++;
199
+			array_push($this->view->objectList,$currentObject);
200
+			// set currrent object to null in allObjects
201
+			if (isset($allObjects[$val->oid]))
202
+			{
203
+				$allObjects[$val->oid]=null;
204
+			}
205
+		}
206
+		if ($allObjects!=null) // in case trap doesn't have objects or is not resolved
207
+		{
208
+			foreach ($allObjects as $key => $val)
209
+			{
210
+				if ($val==null) { continue; }
211
+				array_push($this->view->objectList, array(
212
+					$oid_index,
213
+					$key,
214
+					$allObjects[$key]['mib'],
215
+					$allObjects[$key]['name'],
216
+					'',
217
+					$allObjects[$key]['type'],
218
+					$allObjects[$key]['type_enum']
219
+				));
220
+				$oid_index++;
221
+			}
222
+		}
224 223
 	    
225
-	    // Add a simple display
226
-	    $this->view->display='Trap '.$trapDetail->trap_name.' received';
227
-	    $this->view->create_basic_rule=true;
224
+		// Add a simple display
225
+		$this->view->display='Trap '.$trapDetail->trap_name.' received';
226
+		$this->view->create_basic_rule=true;
228 227
 	}
229 228
 
230 229
 	/**
@@ -233,29 +232,29 @@  discard block
 block discarded – undo
233 232
 	 */
234 233
 	private function add_check_host_exists($ruleDetail)
235 234
 	{
236
-	    // Check if hostname still exists
237
-	    $host_get=$this->getIdoConn()->getHostByName($this->view->hostname);
235
+		// Check if hostname still exists
236
+		$host_get=$this->getIdoConn()->getHostByName($this->view->hostname);
238 237
 	    
239
-	    if (count($host_get)==0)
240
-	    {
241
-	        $this->view->warning_message='Host '.$this->view->hostname. ' doesn\'t exists anymore';
242
-	        $this->view->serviceGet=false;
243
-	    }
244
-	    else
245
-	    {
246
-	        // Tell JS to get services when page is loaded
247
-	        $this->view->serviceGet=true;
248
-	        // get service id for form to set :
249
-	        $serviceID=$this->getIdoConn()->getServiceIDByName($this->view->hostname,$ruleDetail->service_name);
250
-	        if (count($serviceID) ==0)
251
-	        {
252
-	            $this->view->warning_message=' Service '.$ruleDetail->service_name. ' doesn\'t exists anymore';
253
-	        }
254
-	        else
255
-	        {
256
-	            $this->view->serviceSet=$serviceID[0]->id;
257
-	        }
258
-	    }
238
+		if (count($host_get)==0)
239
+		{
240
+			$this->view->warning_message='Host '.$this->view->hostname. ' doesn\'t exists anymore';
241
+			$this->view->serviceGet=false;
242
+		}
243
+		else
244
+		{
245
+			// Tell JS to get services when page is loaded
246
+			$this->view->serviceGet=true;
247
+			// get service id for form to set :
248
+			$serviceID=$this->getIdoConn()->getServiceIDByName($this->view->hostname,$ruleDetail->service_name);
249
+			if (count($serviceID) ==0)
250
+			{
251
+				$this->view->warning_message=' Service '.$ruleDetail->service_name. ' doesn\'t exists anymore';
252
+			}
253
+			else
254
+			{
255
+				$this->view->serviceSet=$serviceID[0]->id;
256
+			}
257
+		}
259 258
 	}
260 259
 
261 260
 	/**
@@ -264,33 +263,33 @@  discard block
 block discarded – undo
264 263
 	 */
265 264
 	private function add_check_hostgroup_exists($ruleDetail)
266 265
 	{
267
-	    // Check if groupe exists
268
-	    $group_get=$this->getIdoConn()->getHostGroupByName($this->view->hostgroupname);
269
-	    if (count($group_get)==0)
270
-	    {
271
-	        $this->view->warning_message='HostGroup '.$this->view->hostgroupname. ' doesn\'t exists anymore';
272
-	        $this->view->serviceGroupGet=false;
273
-	    }
274
-	    else
275
-	    {
276
-	        $grpServices=$this->getIdoConn()->getServicesByHostGroupid($group_get[0]->id);
277
-	        $foundGrpService=0;
278
-	        foreach ($grpServices as $grpService)
279
-	        {
280
-	            if ($grpService[0] == $ruleDetail->service_name)
281
-	            {
282
-	                $foundGrpService=1;
283
-	                $this->view->serviceSet=$ruleDetail->service_name;
284
-	            }
285
-	        }
266
+		// Check if groupe exists
267
+		$group_get=$this->getIdoConn()->getHostGroupByName($this->view->hostgroupname);
268
+		if (count($group_get)==0)
269
+		{
270
+			$this->view->warning_message='HostGroup '.$this->view->hostgroupname. ' doesn\'t exists anymore';
271
+			$this->view->serviceGroupGet=false;
272
+		}
273
+		else
274
+		{
275
+			$grpServices=$this->getIdoConn()->getServicesByHostGroupid($group_get[0]->id);
276
+			$foundGrpService=0;
277
+			foreach ($grpServices as $grpService)
278
+			{
279
+				if ($grpService[0] == $ruleDetail->service_name)
280
+				{
281
+					$foundGrpService=1;
282
+					$this->view->serviceSet=$ruleDetail->service_name;
283
+				}
284
+			}
286 285
 	        
287
-	        // Tell JS to get services when page is loaded
288
-	        $this->view->serviceGroupGet=true;
289
-	        if ($foundGrpService==0)
290
-	        {
291
-	            $this->view->warning_message.=' Service '.$ruleDetail->service_name. ' doesn\'t exists anymore';
292
-	        }
293
-	    }
286
+			// Tell JS to get services when page is loaded
287
+			$this->view->serviceGroupGet=true;
288
+			if ($foundGrpService==0)
289
+			{
290
+				$this->view->warning_message.=' Service '.$ruleDetail->service_name. ' doesn\'t exists anymore';
291
+			}
292
+		}
294 293
 	}
295 294
 	
296 295
 	/**
@@ -302,52 +301,52 @@  discard block
 block discarded – undo
302 301
 	 */
303 302
 	private function add_create_trap_object_list(&$display, &$rule)
304 303
 	{
305
-	    $curObjectList=array();
306
-	    $index=1;
307
-	    // check in display & rule for : OID(<oid>)
308
-	    $matches=array();
309
-	    while ( preg_match('/_OID\(([\.0-9\*]+)\)/',$display,$matches) ||
310
-	        preg_match('/_OID\(([\.0-9\*]+)\)/',$rule,$matches))
311
-	    {
312
-	        $curOid=$matches[1];
304
+		$curObjectList=array();
305
+		$index=1;
306
+		// check in display & rule for : OID(<oid>)
307
+		$matches=array();
308
+		while ( preg_match('/_OID\(([\.0-9\*]+)\)/',$display,$matches) ||
309
+			preg_match('/_OID\(([\.0-9\*]+)\)/',$rule,$matches))
310
+		{
311
+			$curOid=$matches[1];
313 312
 	        
314
-	        if ( (preg_match('/\*/',$curOid) == 0 ) 
315
-	            && ($object=$this->getMIB()->translateOID($curOid)) != null)
316
-	        {
317
-	            array_push($curObjectList, array(
318
-	                $index,
319
-	                $curOid,
320
-	                $object['mib'],
321
-	                $object['name'],
322
-	                '',
323
-	                $object['type'],
324
-	                $object['type_enum']
325
-	            ));
326
-	        }
327
-	        else
328
-	        {
329
-	            array_push($curObjectList, array(
330
-	                $index,
331
-	                $curOid,
332
-	                'not found',
333
-	                'not found',
334
-	                '',
335
-	                'not found',
336
-	                'not found'
337
-	            ));
338
-	        }
339
-	        $curOid = preg_replace('/\*/','\*',$curOid);
340
-	        $display=preg_replace('/_OID\('.$curOid.'\)/','\$'.$index.'\$',$display);
341
-	        $rule=preg_replace('/_OID\('.$curOid.'\)/','\$'.$index.'\$',$rule);
342
-	        $index++;
343
-	    }
344
-	    return $curObjectList;
313
+			if ( (preg_match('/\*/',$curOid) == 0 ) 
314
+				&& ($object=$this->getMIB()->translateOID($curOid)) != null)
315
+			{
316
+				array_push($curObjectList, array(
317
+					$index,
318
+					$curOid,
319
+					$object['mib'],
320
+					$object['name'],
321
+					'',
322
+					$object['type'],
323
+					$object['type_enum']
324
+				));
325
+			}
326
+			else
327
+			{
328
+				array_push($curObjectList, array(
329
+					$index,
330
+					$curOid,
331
+					'not found',
332
+					'not found',
333
+					'',
334
+					'not found',
335
+					'not found'
336
+				));
337
+			}
338
+			$curOid = preg_replace('/\*/','\*',$curOid);
339
+			$display=preg_replace('/_OID\('.$curOid.'\)/','\$'.$index.'\$',$display);
340
+			$rule=preg_replace('/_OID\('.$curOid.'\)/','\$'.$index.'\$',$rule);
341
+			$index++;
342
+		}
343
+		return $curObjectList;
345 344
 	}
346 345
 	
347 346
 	/** Add a handler  
348
-	*	Get params fromid : setup from existing trap (id of trap table)
349
-	*	Get param ruleid : edit from existing handler (id of rule table)
350
-	*/
347
+	 *	Get params fromid : setup from existing trap (id of trap table)
348
+	 *	Get param ruleid : edit from existing handler (id of rule table)
349
+	 */
351 350
 	public function addAction()
352 351
 	{
353 352
 		$this->checkConfigPermission();
@@ -370,8 +369,8 @@  discard block
 block discarded – undo
370 369
 		//$this->view->trapvalues=false; // Set to true to display 'value' colum in objects
371 370
 		
372 371
 		if (($trapid = $this->params->get('fromid')) !== null) {
373
-		    /********** Setup from existing trap ***************/
374
-            $this->add_from_existing($trapid);
372
+			/********** Setup from existing trap ***************/
373
+			$this->add_from_existing($trapid);
375 374
 			return;
376 375
 		}
377 376
 		
@@ -399,14 +398,14 @@  discard block
 block discarded – undo
399 398
 			$this->view->warning_message='';
400 399
 			if ($this->view->hostname != null)
401 400
 			{
402
-			    $this->view->selectGroup=false;
403
-			    // Check if hostname still exists
404
-			    $this->add_check_host_exists($ruleDetail);
401
+				$this->view->selectGroup=false;
402
+				// Check if hostname still exists
403
+				$this->add_check_host_exists($ruleDetail);
405 404
 			}
406 405
 			else
407 406
 			{
408
-			    $this->view->selectGroup=true;
409
-			    $this->add_check_hostgroup_exists($ruleDetail); //  Check if groupe exists				
407
+				$this->view->selectGroup=true;
408
+				$this->add_check_hostgroup_exists($ruleDetail); //  Check if groupe exists				
410 409
 			}
411 410
 			
412 411
 			$this->view->mainoid=$ruleDetail->trap_oid;
@@ -434,9 +433,9 @@  discard block
 block discarded – undo
434 433
 	}
435 434
 	
436 435
 	/** Validate form and output message to user  
437
-	*	@param in postdata 
438
-	* 	@return string status : OK / <Message>
439
-	**/
436
+	 *	@param in postdata 
437
+	 * 	@return string status : OK / <Message>
438
+	 **/
440 439
 	protected function handlerformAction()
441 440
 	{
442 441
 		$postData=$this->getRequest()->getPost();
@@ -451,8 +450,8 @@  discard block
 block discarded – undo
451 450
 			'host_group_name'=>	array('post' => null,            'val' => null,  'db'=>true),
452 451
 			'serviceid'		=>	array('post' => 'serviceid',                     'db'=>false),
453 452
 			'service_name'	=>	array('post' => 'serviceName',                    'db'=>true),
454
-		    'comment'       =>  array('post' => 'comment',       'val' => '',    'db'=>true),
455
-		    'rule_type'     =>  array('post' => 'category',       'val' => 0,    'db'=>true),
453
+			'comment'       =>  array('post' => 'comment',       'val' => '',    'db'=>true),
454
+			'rule_type'     =>  array('post' => 'category',       'val' => 0,    'db'=>true),
456 455
 			'trap_oid'		=>	array('post' => 'oid',                            'db'=>true),
457 456
 			'revert_ok'		=>	array('post' => 'revertOK',      'val' => 0,      'db'=>true),
458 457
 			'display'		=>	array('post' => 'display',        'val' => '',     'db'=>true),
@@ -461,7 +460,7 @@  discard block
 block discarded – undo
461 460
 			'action_nomatch'=>	array('post' => 'ruleNoMatch',    'val' => -1,    'db'=>true),					
462 461
 			'ip4'			=>	array('post' => null,             'val' => null,  'db'=>true),
463 462
 			'ip6'			=>	array('post' => null,             'val' => null,  'db'=>true),
464
-		    'action_form'	=>	array('post' => 'action_form',    'val' => null, 'db'=>false)
463
+			'action_form'	=>	array('post' => 'action_form',    'val' => null, 'db'=>false)
465 464
 		);
466 465
 		
467 466
 		if (isset($postData[$params['action_form']['post']]) 
@@ -469,7 +468,7 @@  discard block
 block discarded – undo
469 468
 		{
470 469
 			try
471 470
 			{
472
-			    $this->getUIDatabase()->deleteRule($postData[$params['db_rule']['post']]);
471
+				$this->getUIDatabase()->deleteRule($postData[$params['db_rule']['post']]);
473 472
 			}
474 473
 			catch (Exception $e)
475 474
 			{
@@ -479,7 +478,7 @@  discard block
 block discarded – undo
479 478
 			//$this->Module()->
480 479
 			$this->_helper->json(array(
481 480
 				'status'=>'OK',
482
-			    'redirect'=>'trapdirector/handler'
481
+				'redirect'=>'trapdirector/handler'
483 482
 			      
484 483
 			));
485 484
 		}		
@@ -506,8 +505,8 @@  discard block
 block discarded – undo
506 505
 			$isHostGroup=($params['hostgroup']['val'] == 1)?true:false;
507 506
 			if (! $isHostGroup ) 
508 507
 			{  // checks if selection by host 
509
-			    $hostAddr=$this->getIdoConn()->getHostInfoByID($params['hostid']['val']);
510
-			    if ($hostAddr === NULL) throw new \Exception("No object found");
508
+				$hostAddr=$this->getIdoConn()->getHostInfoByID($params['hostid']['val']);
509
+				if ($hostAddr === NULL) throw new \Exception("No object found");
511 510
 				$params['ip4']['val']=$hostAddr->ip4;
512 511
 				$params['ip6']['val']=$hostAddr->ip6;
513 512
 				$checkHostName=$hostAddr->name;
@@ -518,49 +517,49 @@  discard block
 block discarded – undo
518 517
 				}
519 518
 				if ($this->apiMode == TRUE)
520 519
 				{
521
-				    $serviceName=$this->getIdoConn()->getServiceById($params['serviceid']['val']);
522
-				    if (count($serviceName) == 0 )
523
-				    {
524
-				        $this->_helper->json(array('status'=>"Invalid service id : Please re enter service",'sent'=>$params['serviceid']['val'],'found'=>$serviceName[0]->__name));
525
-				        return;
526
-				    }
520
+					$serviceName=$this->getIdoConn()->getServiceById($params['serviceid']['val']);
521
+					if (count($serviceName) == 0 )
522
+					{
523
+						$this->_helper->json(array('status'=>"Invalid service id : Please re enter service",'sent'=>$params['serviceid']['val'],'found'=>$serviceName[0]->__name));
524
+						return;
525
+					}
527 526
 				}
528 527
 				else
529 528
 				{
530
-    				if (!is_numeric($params['serviceid']['val']))
531
-    				{
532
-    				    $this->_helper->json(array('status'=>"Invalid service id ". $params['serviceid']['val']));
533
-    				    return;
534
-    				}
529
+					if (!is_numeric($params['serviceid']['val']))
530
+					{
531
+						$this->_helper->json(array('status'=>"Invalid service id ". $params['serviceid']['val']));
532
+						return;
533
+					}
535 534
     				
536
-    				$serviceName=$this->getUIDatabase()->getObjectNameByid($params['serviceid']['val']);
537
-    				if ($params['service_name']['val'] != $serviceName->name2)
538
-    				{
539
-    					$this->_helper->json(array('status'=>"Invalid service id : Please re enter service"));
540
-    					return;
541
-    				}
535
+					$serviceName=$this->getUIDatabase()->getObjectNameByid($params['serviceid']['val']);
536
+					if ($params['service_name']['val'] != $serviceName->name2)
537
+					{
538
+						$this->_helper->json(array('status'=>"Invalid service id : Please re enter service"));
539
+						return;
540
+					}
542 541
 				}
543 542
 			}
544 543
 			else
545 544
 			{
546
-			    if ($this->apiMode == TRUE)
547
-			    {
548
-			        $object=$this->getIdoConn()->getHostGroupById($params['hostid']['val']);
549
-			        if (count($object) == 0 || $params['host_name']['val'] != $object->__name)
550
-			        {
551
-			            $this->_helper->json(array('status'=>"Invalid object group id : Please re enter service"));
552
-			            return;
553
-			        }
554
-			    }
555
-			    else 
556
-			    {
557
-    			    $object=$this->getUIDatabase()->getObjectNameByid($params['hostid']['val']);
558
-    				if ($params['host_name']['val'] != $object->name1)
559
-    				{
560
-    					$this->_helper->json(array('status'=>"Invalid object group id : Please re enter service"));
561
-    					return;					
562
-    				}
563
-			    }
545
+				if ($this->apiMode == TRUE)
546
+				{
547
+					$object=$this->getIdoConn()->getHostGroupById($params['hostid']['val']);
548
+					if (count($object) == 0 || $params['host_name']['val'] != $object->__name)
549
+					{
550
+						$this->_helper->json(array('status'=>"Invalid object group id : Please re enter service"));
551
+						return;
552
+					}
553
+				}
554
+				else 
555
+				{
556
+					$object=$this->getUIDatabase()->getObjectNameByid($params['hostid']['val']);
557
+					if ($params['host_name']['val'] != $object->name1)
558
+					{
559
+						$this->_helper->json(array('status'=>"Invalid object group id : Please re enter service"));
560
+						return;					
561
+					}
562
+				}
564 563
 				// Put param in correct column (group_name)
565 564
 				$params['host_group_name']['val'] = $params['host_name']['val'];
566 565
 				$params['host_name']['val']=null;
@@ -577,17 +576,17 @@  discard block
 block discarded – undo
577 576
 			
578 577
 			if ($params['db_rule']['val'] == -1 || $params['action_form']['val'] == 'clone') 
579 578
 			{  // If no rule number or action is clone, add the handler
580
-			    $ruleID=$this->getUIDatabase()->addHandlerRule($dbparams);
579
+				$ruleID=$this->getUIDatabase()->addHandlerRule($dbparams);
581 580
 			}
582 581
 			else
583 582
 			{
584
-			    $this->getUIDatabase()->updateHandlerRule($dbparams,$params['db_rule']['val']);
583
+				$this->getUIDatabase()->updateHandlerRule($dbparams,$params['db_rule']['val']);
585 584
 				$ruleID=$params['db_rule']['val'];
586 585
 			}
587 586
 		}
588 587
 		catch (Exception $e)
589 588
 		{
590
-		    $this->_helper->json(array('status'=>$e->getMessage(),'location'=>'Add/update Rule','line'=>$e->getLine(),'file'=>$e->getFile()));
589
+			$this->_helper->json(array('status'=>$e->getMessage(),'location'=>'Add/update Rule','line'=>$e->getLine(),'file'=>$e->getFile()));
591 590
 			return;
592 591
 		}
593 592
 		$this->_helper->json(array('status'=>'OK', 'id' => $ruleID));
@@ -595,9 +594,9 @@  discard block
 block discarded – undo
595 594
 	}
596 595
 
597 596
 	/** Get trap detail by trapid. 
598
-	*	@param integer $trapid : id of trap in received table
599
-	*	@return array (objects)
600
-	*/
597
+	 *	@param integer $trapid : id of trap in received table
598
+	 *	@return array (objects)
599
+	 */
601 600
 	protected function getTrapDetail($trapid) 
602 601
 	{
603 602
 		if (!preg_match('/^[0-9]+$/',$trapid)) { throw new Exception('Invalid id');  }
@@ -613,14 +612,14 @@  discard block
 block discarded – undo
613 612
 		}
614 613
 		try
615 614
 		{		
616
-		    $query = $dbConn->select()
615
+			$query = $dbConn->select()
617 616
 				->from($this->getModuleConfig()->getTrapTableName(),$elmts)
618 617
 				->where('id=?',$trapid);
619 618
 				$trapDetail=$dbConn->fetchRow($query);
620 619
 			if ( $trapDetail == null ) 
621 620
 			{
622
-			    $trapDetail = 'NULL';
623
-			    throw new Exception('No traps was found with id = '.$trapid);
621
+				$trapDetail = 'NULL';
622
+				throw new Exception('No traps was found with id = '.$trapid);
624 623
 			}
625 624
 		}
626 625
 		catch (Exception $e)
@@ -634,9 +633,9 @@  discard block
 block discarded – undo
634 633
 	}
635 634
 
636 635
 	/** Get trap objects
637
-	*	@param integer $trapid : trap id
638
-	* 	@return array : full column in db of trap id
639
-	*/
636
+	 *	@param integer $trapid : trap id
637
+	 * 	@return array : full column in db of trap id
638
+	 */
640 639
 	protected function getTrapobjects($trapid)
641 640
 	{	
642 641
 		if (!preg_match('/^[0-9]+$/',$trapid)) { throw new Exception('Invalid id');  }
@@ -652,7 +651,7 @@  discard block
 block discarded – undo
652 651
 		}
653 652
 		try
654 653
 		{		
655
-		    $query = $dbConn->select()
654
+			$query = $dbConn->select()
656 655
 				->from($this->moduleConfig->getTrapDataTableName(),$data_elmts)
657 656
 				->where('trap_id=?',$trapid);
658 657
 				$trapDetail=$dbConn->fetchAll($query);
@@ -668,10 +667,10 @@  discard block
 block discarded – undo
668 667
 	}
669 668
 
670 669
 	/** Get rule detail by ruleid.
671
-	*	@param integer $ruleid int id of rule in rule table
672
-	*	@return object|array : column objects in db 
673
-	*
674
-	*/
670
+	 *	@param integer $ruleid int id of rule in rule table
671
+	 *	@return object|array : column objects in db 
672
+	 *
673
+	 */
675 674
 	protected function getRuleDetail($ruleid) 
676 675
 	{
677 676
 		if (!preg_match('/^[0-9]+$/',$ruleid)) { throw new Exception('Invalid id');  }
@@ -682,7 +681,7 @@  discard block
 block discarded – undo
682 681
 		// ***************  Get main data
683 682
 		try
684 683
 		{		
685
-		    $query = $dbConn->select()
684
+			$query = $dbConn->select()
686 685
 				->from($this->getModuleConfig()->getTrapRuleName(),$queryArray)
687 686
 				->where('id=?',$ruleid);
688 687
 			$ruleDetail=$dbConn->fetchRow($query);
@@ -699,7 +698,7 @@  discard block
 block discarded – undo
699 698
 	}
700 699
 
701 700
 	/** Setup tabs for rules 
702
-	*/
701
+	 */
703 702
 	protected function prepareTabs()
704 703
 	{
705 704
 		return $this->getTabs()->add('status', array(
Please login to merge, or discard this patch.
application/controllers/HelperController.php 1 patch
Indentation   +151 added lines, -151 removed lines patch added patch discarded remove patch
@@ -12,8 +12,8 @@  discard block
 block discarded – undo
12 12
 {
13 13
 	
14 14
 	/** Get host list with filter (IP or name) : host=<filter>
15
-	*	returns in JSON : status=>OK/NOK  hosts=>array of hosts
16
-	*/
15
+	 *	returns in JSON : status=>OK/NOK  hosts=>array of hosts
16
+	 */
17 17
 	public function gethostsAction()
18 18
 	{
19 19
 		$postData=$this->getRequest()->getPost();
@@ -22,15 +22,15 @@  discard block
 block discarded – undo
22 22
 		
23 23
 		$retHosts=array('status'=>'OK','hosts' => array());
24 24
 		$this->getIdoConn(); // set apiMode to correct val
25
-        if ($this->apiMode === TRUE)
26
-        {
27
-          $hosts=$this->getIdoConn()->getHostByNameOrIP($hostFilter);
28
-          $retHosts['test']=count($hosts);
29
-        }
30
-        else 
31
-        {
25
+		if ($this->apiMode === TRUE)
26
+		{
27
+		  $hosts=$this->getIdoConn()->getHostByNameOrIP($hostFilter);
28
+		  $retHosts['test']=count($hosts);
29
+		}
30
+		else 
31
+		{
32 32
 		  $hosts=$this->getIdoConn()->getHostByIP($hostFilter);
33
-        }
33
+		}
34 34
 		foreach ($hosts as $val)
35 35
 		{
36 36
 			array_push($retHosts['hosts'],$val->name);
@@ -40,8 +40,8 @@  discard block
 block discarded – undo
40 40
 	}
41 41
 	
42 42
 	/** Get hostgroup list with filter (name) : hostgroup=<hostFilter>
43
-	*	returns in JSON : status=>OK/NOK  hosts=>array of hosts
44
-	*/
43
+	 *	returns in JSON : status=>OK/NOK  hosts=>array of hosts
44
+	 */
45 45
 	public function gethostgroupsAction()
46 46
 	{
47 47
 		$postData=$this->getRequest()->getPost();
@@ -60,11 +60,11 @@  discard block
 block discarded – undo
60 60
 	}
61 61
 	
62 62
 	/** Get service list by host name ( host=<host> )
63
-	*	returns in JSON : 
64
-	*		status=>OK/No services found/More than one host matches
65
-	*		services=>array of services (name)
66
-	*		hostid = host object id or -1 if not found.
67
-	*/
63
+	 *	returns in JSON : 
64
+	 *		status=>OK/No services found/More than one host matches
65
+	 *		services=>array of services (name)
66
+	 *		hostid = host object id or -1 if not found.
67
+	 */
68 68
 	public function getservicesAction()
69 69
 	{
70 70
 		$postData=$this->getRequest()->getPost();
@@ -106,11 +106,11 @@  discard block
 block discarded – undo
106 106
 	}
107 107
 	
108 108
 	/** Get service list by host group ( name=<host> )
109
-	*	returns in JSON : 
110
-	*		status=>OK/No services found/More than one host matches
111
-	*		services=>array of services (name)
112
-	*		groupid = group object id or -1 if not found.
113
-	*/
109
+	 *	returns in JSON : 
110
+	 *		status=>OK/No services found/More than one host matches
111
+	 *		services=>array of services (name)
112
+	 *		groupid = group object id or -1 if not found.
113
+	 */
114 114
 	public function gethostgroupservicesAction()
115 115
 	{
116 116
 		$postData=$this->getRequest()->getPost();
@@ -140,10 +140,10 @@  discard block
 block discarded – undo
140 140
 	}
141 141
 
142 142
 	/** Get traps from mib  : entry : mib=<mib>
143
-	*	returns in JSON : 
144
-	*		status=>OK/No mib/Error getting mibs
145
-	*		traps=>array of array( oid -> name)
146
-	*/
143
+	 *	returns in JSON : 
144
+	 *		status=>OK/No mib/Error getting mibs
145
+	 *		traps=>array of array( oid -> name)
146
+	 */
147 147
 	public function gettrapsAction()
148 148
 	{
149 149
 		$postData=$this->getRequest()->getPost();
@@ -163,10 +163,10 @@  discard block
 block discarded – undo
163 163
 	}	
164 164
 
165 165
 	/** Get trap objects from mib  : entry : trap=<oid>
166
-	*	returns in JSON : 
167
-	*		status=>OK/no trap/not found
168
-	*		objects=>array of array( oid -> name, oid->mib)
169
-	*/
166
+	 *	returns in JSON : 
167
+	 *		status=>OK/no trap/not found
168
+	 *		objects=>array of array( oid -> name, oid->mib)
169
+	 */
170 170
 	public function gettrapobjectsAction()
171 171
 	{
172 172
 		$postData=$this->getRequest()->getPost();
@@ -186,8 +186,8 @@  discard block
 block discarded – undo
186 186
 	}	
187 187
 	
188 188
 	/** Get list of all loaded mibs : entry : none
189
-	*	return : array of strings.
190
-	*/
189
+	 *	return : array of strings.
190
+	 */
191 191
 	public function getmiblistAction()
192 192
 	{
193 193
 		try
@@ -202,10 +202,10 @@  discard block
 block discarded – undo
202 202
 	}
203 203
 	
204 204
 	/** Get MIB::Name from OID : entry : oid
205
-	*		status=>OK/No oid/not found
206
-	*		mib=>string
207
-	*		name=>string
208
-	*/	
205
+	 *		status=>OK/No oid/not found
206
+	 *		mib=>string
207
+	 *		name=>string
208
+	 */	
209 209
 	public function translateoidAction()
210 210
 	{
211 211
 		$postData=$this->getRequest()->getPost();
@@ -226,7 +226,7 @@  discard block
 block discarded – undo
226 226
 					'name' => $object['name'],
227 227
 					'type' => $object['type'],
228 228
 					'type_enum' => $object['type_enum'],
229
-				    'description' => $object['description']
229
+					'description' => $object['description']
230 230
 				)
231 231
 			);
232 232
 		}
@@ -234,10 +234,10 @@  discard block
 block discarded – undo
234 234
 	}
235 235
 	
236 236
 	/** Save or execute database purge of <n> days
237
-	*	days=>int 
238
-	*	action=>save/execute
239
-	*	return : status=>OK/Message error
240
-	*/
237
+	 *	days=>int 
238
+	 *	action=>save/execute
239
+	 *	return : status=>OK/Message error
240
+	 */
241 241
 	public function dbmaintenanceAction()
242 242
 	{
243 243
 		
@@ -252,7 +252,7 @@  discard block
 block discarded – undo
252 252
 		{
253 253
 			try
254 254
 			{
255
-			    $this->getUIDatabase()->setDBConfigValue('db_remove_days',$days);
255
+				$this->getUIDatabase()->setDBConfigValue('db_remove_days',$days);
256 256
 			}
257 257
 			catch (Exception $e)
258 258
 			{
@@ -290,33 +290,33 @@  discard block
 block discarded – undo
290 290
 	 */
291 291
 	public function snmpconfigAction()
292 292
 	{
293
-	    $postData=$this->getRequest()->getPost();
293
+		$postData=$this->getRequest()->getPost();
294 294
 	    
295
-	    $snmpUse = $this->checkPostVar($postData, 'useTrapAddr', '0|1');
295
+		$snmpUse = $this->checkPostVar($postData, 'useTrapAddr', '0|1');
296 296
 	    
297
-	    $snmpOID = $this->checkPostVar($postData, 'trapAddrOID', '^[\.0-9]+$');
297
+		$snmpOID = $this->checkPostVar($postData, 'trapAddrOID', '^[\.0-9]+$');
298 298
 	    	    
299
-	    try
300
-	    {
301
-	        $this->getUIDatabase()->setDBConfigValue('use_SnmpTrapAddess',$snmpUse);
302
-	        $this->getUIDatabase()->setDBConfigValue('SnmpTrapAddess_oid',$snmpOID);
303
-	    }
304
-	    catch (Exception $e)
305
-	    {
306
-	        $this->_helper->json(array('status'=>'Save error : '.$e->getMessage() ));
307
-	        return;
308
-	    }
309
-	    $this->_helper->json(array('status'=>'OK'));
310
-	    return;
299
+		try
300
+		{
301
+			$this->getUIDatabase()->setDBConfigValue('use_SnmpTrapAddess',$snmpUse);
302
+			$this->getUIDatabase()->setDBConfigValue('SnmpTrapAddess_oid',$snmpOID);
303
+		}
304
+		catch (Exception $e)
305
+		{
306
+			$this->_helper->json(array('status'=>'Save error : '.$e->getMessage() ));
307
+			return;
308
+		}
309
+		$this->_helper->json(array('status'=>'OK'));
310
+		return;
311 311
 	    
312 312
 	}
313 313
 	
314 314
 	/** Save log output to db
315
-	*	destination=>log destination 
316
-	*	file=>file name
317
-	*	level => int 
318
-	*	return : status=>OK/Message error
319
-	*/
315
+	 *	destination=>log destination 
316
+	 *	file=>file name
317
+	 *	level => int 
318
+	 *	return : status=>OK/Message error
319
+	 */
320 320
 	public function logdestinationAction()
321 321
 	{
322 322
 		$postData=$this->getRequest()->getPost();
@@ -335,8 +335,8 @@  discard block
 block discarded – undo
335 335
 			$fileHandler=@fopen($file,'w');
336 336
 			if ($fileHandler == false)
337 337
 			{   // File os note writabe / cannot create
338
-			    $this->_helper->json(array('status'=>'File not writable :  '.$file));
339
-			    return;
338
+				$this->_helper->json(array('status'=>'File not writable :  '.$file));
339
+				return;
340 340
 			}
341 341
 		}
342 342
 		else
@@ -356,9 +356,9 @@  discard block
 block discarded – undo
356 356
 				
357 357
 		try
358 358
 		{
359
-		    $this->getUIDatabase()->setDBConfigValue('log_destination',$destination);
360
-		    $this->getUIDatabase()->setDBConfigValue('log_file',$file);
361
-		    $this->getUIDatabase()->setDBConfigValue('log_level',$level);
359
+			$this->getUIDatabase()->setDBConfigValue('log_destination',$destination);
360
+			$this->getUIDatabase()->setDBConfigValue('log_file',$file);
361
+			$this->getUIDatabase()->setDBConfigValue('log_level',$level);
362 362
 		}
363 363
 		catch (Exception $e)
364 364
 		{
@@ -378,33 +378,33 @@  discard block
 block discarded – undo
378 378
 	public function testruleAction()
379 379
 	{
380 380
 	    
381
-	    $postData=$this->getRequest()->getPost();
381
+		$postData=$this->getRequest()->getPost();
382 382
 	   
383
-	    $rule = $this->checkPostVar($postData, 'rule', '.*');
383
+		$rule = $this->checkPostVar($postData, 'rule', '.*');
384 384
 
385
-	    $action = $this->checkPostVar($postData, 'action', 'evaluate');
385
+		$action = $this->checkPostVar($postData, 'action', 'evaluate');
386 386
 
387
-	    if ($action == 'evaluate')
388
-	    {
389
-	        try
390
-	        {
391
-	            require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
392
-	            $icingaweb2_etc=$this->Config()->get('config', 'icingaweb2_etc');
393
-	            $trap = new Trap($icingaweb2_etc);
394
-	            // Cleanup spaces before eval
395
-	            $rule=$trap->ruleClass->eval_cleanup($rule);
396
-	            // Eval
397
-	            $item=0;
398
-	            $rule=$trap->ruleClass->evaluation($rule,$item);
399
-	        }
400
-	        catch (Exception $e)
401
-	        {
402
-	            $this->_helper->json(array('status'=>'Evaluation error : '.$e->getMessage() ));
403
-	            return;
404
-	        }
405
-	        $return=($rule==true)?'true':'false';
406
-	        $this->_helper->json(array('status'=>'OK', 'message' => $return));
407
-	    }
387
+		if ($action == 'evaluate')
388
+		{
389
+			try
390
+			{
391
+				require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
392
+				$icingaweb2_etc=$this->Config()->get('config', 'icingaweb2_etc');
393
+				$trap = new Trap($icingaweb2_etc);
394
+				// Cleanup spaces before eval
395
+				$rule=$trap->ruleClass->eval_cleanup($rule);
396
+				// Eval
397
+				$item=0;
398
+				$rule=$trap->ruleClass->evaluation($rule,$item);
399
+			}
400
+			catch (Exception $e)
401
+			{
402
+				$this->_helper->json(array('status'=>'Evaluation error : '.$e->getMessage() ));
403
+				return;
404
+			}
405
+			$return=($rule==true)?'true':'false';
406
+			$this->_helper->json(array('status'=>'OK', 'message' => $return));
407
+		}
408 408
 	    
409 409
 	}	
410 410
 
@@ -415,35 +415,35 @@  discard block
 block discarded – undo
415 415
 	 */
416 416
 	public function pluginAction()
417 417
 	{
418
-	    $postData=$this->getRequest()->getPost();
418
+		$postData=$this->getRequest()->getPost();
419 419
 	    
420
-	    $pluginName = $this->checkPostVar($postData, 'name', '.*');
420
+		$pluginName = $this->checkPostVar($postData, 'name', '.*');
421 421
 	    
422
-	    $action = $this->checkPostVar($postData, 'action', 'enable|disable');
422
+		$action = $this->checkPostVar($postData, 'action', 'enable|disable');
423 423
 	    
424
-        try
425
-        {
426
-            require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
427
-            $icingaweb2_etc=$this->Config()->get('config', 'icingaweb2_etc');
428
-            $trap = new Trap($icingaweb2_etc);
429
-            // Enable plugin.
430
-            $action=($action == 'enable') ? true : false;
431
-            $retVal=$trap->pluginClass->enablePlugin($pluginName, $action);
424
+		try
425
+		{
426
+			require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
427
+			$icingaweb2_etc=$this->Config()->get('config', 'icingaweb2_etc');
428
+			$trap = new Trap($icingaweb2_etc);
429
+			// Enable plugin.
430
+			$action=($action == 'enable') ? true : false;
431
+			$retVal=$trap->pluginClass->enablePlugin($pluginName, $action);
432 432
             
433
-        }
434
-        catch (Exception $e)
435
-        {
436
-            $this->_helper->json(array('status'=>'Action error : '.$e->getMessage() ));
437
-            return;
438
-        }
439
-        if ($retVal === true)
440
-        {
441
-            $this->_helper->json(array('status'=>'OK'));
442
-        }
443
-        else
444
-        {
445
-            $this->_helper->json(array('status'=>'Error, see logs'));
446
-        }
433
+		}
434
+		catch (Exception $e)
435
+		{
436
+			$this->_helper->json(array('status'=>'Action error : '.$e->getMessage() ));
437
+			return;
438
+		}
439
+		if ($retVal === true)
440
+		{
441
+			$this->_helper->json(array('status'=>'OK'));
442
+		}
443
+		else
444
+		{
445
+			$this->_helper->json(array('status'=>'Error, see logs'));
446
+		}
447 447
 	}
448 448
 	
449 449
 	/** Function evaluation
@@ -453,49 +453,49 @@  discard block
 block discarded – undo
453 453
 	 */
454 454
 	public function functionAction()
455 455
 	{
456
-	    $postData=$this->getRequest()->getPost();
456
+		$postData=$this->getRequest()->getPost();
457 457
 	    
458
-	    $functionString = $this->checkPostVar($postData, 'function', '.*');
458
+		$functionString = $this->checkPostVar($postData, 'function', '.*');
459 459
 	    
460
-	    $this->checkPostVar($postData, 'action', 'evaluate');
460
+		$this->checkPostVar($postData, 'action', 'evaluate');
461 461
 	    
462
-	    // Only one action possible for now, no tests on action.
463
-	    try
464
-	    {
465
-	        require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
466
-	        $icingaweb2Etc=$this->Config()->get('config', 'icingaweb2_etc');
467
-	        $trap = new Trap($icingaweb2Etc);
468
-	        // load all plugins in case tested function is not enabled.
469
-	        $trap->pluginClass->registerAllPlugins(false);
470
-	        // Clean all spaces
471
-	        $functionString = $trap->ruleClass->eval_cleanup($functionString);
472
-	        // Eval functions
473
-	        $result = $trap->pluginClass->evaluateFunctionString($functionString);	        
474
-	    }
475
-	    catch (Exception $e)
476
-	    {
477
-	        $this->_helper->json(array('status'=>'Action error : '.$e->getMessage() ));
478
-	        return;
479
-	    }
462
+		// Only one action possible for now, no tests on action.
463
+		try
464
+		{
465
+			require_once($this->Module()->getBaseDir() .'/bin/trap_class.php');
466
+			$icingaweb2Etc=$this->Config()->get('config', 'icingaweb2_etc');
467
+			$trap = new Trap($icingaweb2Etc);
468
+			// load all plugins in case tested function is not enabled.
469
+			$trap->pluginClass->registerAllPlugins(false);
470
+			// Clean all spaces
471
+			$functionString = $trap->ruleClass->eval_cleanup($functionString);
472
+			// Eval functions
473
+			$result = $trap->pluginClass->evaluateFunctionString($functionString);	        
474
+		}
475
+		catch (Exception $e)
476
+		{
477
+			$this->_helper->json(array('status'=>'Action error : '.$e->getMessage() ));
478
+			return;
479
+		}
480 480
 	    
481
-        $result = ($result === true)?'True':'False';
482
-        $this->_helper->json(array('status'=>'OK','message' => $result));
481
+		$result = ($result === true)?'True':'False';
482
+		$this->_helper->json(array('status'=>'OK','message' => $result));
483 483
 	}
484 484
 
485
-    /**************   Utilities **********************/
485
+	/**************   Utilities **********************/
486 486
 
487 487
 	private function checkPostVar(array $postData,string $postVar, string $validRegexp) : string
488 488
 	{
489
-	    if (!isset ($postData[$postVar]))
490
-	    {
491
-	        $this->_helper->json(array('status'=>'No ' . $postVar));
492
-	        return '';
493
-	    }
494
-	    if (preg_match('/'.$validRegexp.'/', $postData[$postVar]) != 1)
495
-	    {
496
-	        $this->_helper->json(array('status'=>'Unknown ' . $postVar . ' value '.$postData[$postVar]));
497
-	        return '';
498
-	    }
499
-	    return $postData[$postVar];
489
+		if (!isset ($postData[$postVar]))
490
+		{
491
+			$this->_helper->json(array('status'=>'No ' . $postVar));
492
+			return '';
493
+		}
494
+		if (preg_match('/'.$validRegexp.'/', $postData[$postVar]) != 1)
495
+		{
496
+			$this->_helper->json(array('status'=>'Unknown ' . $postVar . ' value '.$postData[$postVar]));
497
+			return '';
498
+		}
499
+		return $postData[$postVar];
500 500
 	}
501 501
 }
Please login to merge, or discard this patch.