Completed
Push — master ( 5db14f...017cb5 )
by Jean-Christophe
03:16
created

AjaxCall::_evenPreparing()   A

Complexity

Conditions 3
Paths 4

Size

Total Lines 10
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 10
rs 9.4285
c 0
b 0
f 0
cc 3
eloc 7
nc 4
nop 2
1
<?php
2
3
namespace Ajax\service;
4
5
6
use Ajax\JsUtils;
7
class AjaxCall {
8
	private $method;
9
	private $parameters;
10
11
	public function __construct($method, $parameters) {
12
		$this->method=$method;
13
		$this->parameters=$parameters;
14
	}
15
16
	public function compile(JsUtils $js=null) {
17
		if ($js==null)
18
			return;
19
		$params="{}";
20
		$jsCallback=NULL;
21
		$attr="id";
22
		$validation=false;
23
		$stopPropagation=true;
24
		$preventDefault=true;
25
		$jqueryDone="html";
26
		$ajaxTransition=null;
27
		$hasLoader=true;
28
		$method="get";
29
		extract($this->parameters);
30
		$result=$this->_evenPreparing($preventDefault, $stopPropagation);
31
		switch($this->method) {
32
			case "get":
33
				$result.=$js->getDeferred($url, $responseElement, $params, $jsCallback, $attr,$jqueryDone,$ajaxTransition);
34
				break;
35
			case "post":
36
				$result.=$js->postDeferred($url, $responseElement, $params, $jsCallback, $attr,$hasLoader,$jqueryDone,$ajaxTransition);
37
				break;
38
			case "postForm":
39
				$result.=$js->postFormDeferred($url, $form, $responseElement, $validation, $jsCallback, $attr,$hasLoader,$jqueryDone,$ajaxTransition);
40
				break;
41
			case "json":
42
				$result.=$js->jsonDeferred($url,$method,$params,$jsCallback);
43
				break;
44
			case "jsonArray":
45
				$result.=$js->jsonArrayDeferred($modelSelector, $url,$method,$params,$jsCallback);
46
				break;
47
		}
48
		return $result;
49
	}
50
51
	protected function _evenPreparing($preventDefault,$stopPropagation){
52
		$result="";
53
		if ($preventDefault===true) {
54
			$result.=Javascript::$preventDefault;
55
		}
56
		if ($stopPropagation===true) {
57
			$result.=Javascript::$stopPropagation;
58
		}
59
		return $result;
60
	}
61
62
	public function getMethod() {
63
		return $this->method;
64
	}
65
66
	public function setMethod($method) {
67
		$this->method=$method;
68
		return $this;
69
	}
70
71
	public function getParameters() {
72
		return $this->parameters;
73
	}
74
75
	public function setParameters($parameters) {
76
		$this->parameters=$parameters;
77
		return $this;
78
	}
79
}