Completed
Push — 1.10.x ( c135db...ea3352 )
by Julito
26:21
created
plugin/pens/lib/pens/pens_request_alert.php 2 patches
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@
 block discarded – undo
40 40
 
41 41
 class PENSRequestAlert extends PENSRequest {
42 42
 	
43
-	public function __construct($arguments) {
44
-		parent::__construct($arguments);
45
-		$this->setCommand("alert");
46
-	}
43
+    public function __construct($arguments) {
44
+        parent::__construct($arguments);
45
+        $this->setCommand("alert");
46
+    }
47 47
 
48 48
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@
 block discarded – undo
26 26
  * @licence http://www.gnu.org/licenses/gpl.txt
27 27
  */
28 28
 
29
-require_once __DIR__ . '/pens_request.php';
29
+require_once __DIR__.'/pens_request.php';
30 30
 
31 31
 /**
32 32
  * PENSRequestReceipt
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_controller.php 1 patch
Indentation   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -16,15 +16,15 @@  discard block
 block discarded – undo
16 16
  * along with php-pens.  If not, see <http://www.gnu.org/licenses/>.
17 17
  */
18 18
  
19
- /**
20
- * PENSController
21
- * 
22
- * Provides the PENSController class
23
- * 
24
- * @package PENS
25
- * @author Guillaume Viguier-Just <[email protected]>
26
- * @licence http://www.gnu.org/licenses/gpl.txt
27
- */
19
+    /**
20
+     * PENSController
21
+     * 
22
+     * Provides the PENSController class
23
+     * 
24
+     * @package PENS
25
+     * @author Guillaume Viguier-Just <[email protected]>
26
+     * @licence http://www.gnu.org/licenses/gpl.txt
27
+     */
28 28
 
29 29
 require_once(dirname(__FILE__)."/pens_request_factory.php");
30 30
 
@@ -39,24 +39,24 @@  discard block
 block discarded – undo
39 39
  */
40 40
 abstract class PENSController {
41 41
 	
42
-	/**
43
-	 * Parses a request based on the values present in $_REQUEST
44
-	 * 
45
-	 * @return PENSRequest Request generated
46
-	 * @throws PENSException if the request could not be parsed
47
-	 */
48
-	protected function parseRequest() {
49
-		$request = PENSRequestFactory::createPENSRequest($_REQUEST);
50
-		return $request;
51
-	}
42
+    /**
43
+     * Parses a request based on the values present in $_REQUEST
44
+     * 
45
+     * @return PENSRequest Request generated
46
+     * @throws PENSException if the request could not be parsed
47
+     */
48
+    protected function parseRequest() {
49
+        $request = PENSRequestFactory::createPENSRequest($_REQUEST);
50
+        return $request;
51
+    }
52 52
 	
53
-	/**
54
-	 * Sends the HTTP Response to the client
55
-	 * 
56
-	 * @param PENSResponse Response to be sent
57
-	 */
58
-	protected function sendResponse($response) {
59
-		$response->send();
60
-	}
53
+    /**
54
+     * Sends the HTTP Response to the client
55
+     * 
56
+     * @param PENSResponse Response to be sent
57
+     */
58
+    protected function sendResponse($response) {
59
+        $response->send();
60
+    }
61 61
 	
62 62
 }
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_client.php 2 patches
Indentation   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -16,15 +16,15 @@  discard block
 block discarded – undo
16 16
  * along with php-pens.  If not, see <http://www.gnu.org/licenses/>.
17 17
  */
18 18
  
19
- /**
20
- * PENSClient
21
- * 
22
- * Provides the PENSClient class
23
- * 
24
- * @package PENS
25
- * @author Guillaume Viguier-Just <[email protected]>
26
- * @licence http://www.gnu.org/licenses/gpl.txt
27
- */
19
+    /**
20
+     * PENSClient
21
+     * 
22
+     * Provides the PENSClient class
23
+     * 
24
+     * @package PENS
25
+     * @author Guillaume Viguier-Just <[email protected]>
26
+     * @licence http://www.gnu.org/licenses/gpl.txt
27
+     */
28 28
  
29 29
 require_once(dirname(__FILE__)."/pens_controller.php");
30 30
 require_once(dirname(__FILE__)."/pens_request_handler.php");
@@ -39,75 +39,75 @@  discard block
 block discarded – undo
39 39
  * @licence http://www.gnu.org/licenses/gpl.txt
40 40
  */
41 41
 class PENSClient extends PENSController {
42
-	/**
43
-	 * Instance of the PENSClient
44
-	 * @var PENSServer
45
-	 */
46
-	private static $_instance;
42
+    /**
43
+     * Instance of the PENSClient
44
+     * @var PENSServer
45
+     */
46
+    private static $_instance;
47 47
 	
48
-	/**
49
-	 * Request handler
50
-	 * @var PENSRequestHandler
51
-	 */
52
-	protected $_request_handler = null;
48
+    /**
49
+     * Request handler
50
+     * @var PENSRequestHandler
51
+     */
52
+    protected $_request_handler = null;
53 53
 	
54
-	/**
55
-	 * Private constructor
56
-	 */
57
-	private function __construct() {
58
-	}
54
+    /**
55
+     * Private constructor
56
+     */
57
+    private function __construct() {
58
+    }
59 59
 	
60
-	/**
61
-	 * Singleton method
62
-	 */
63
-	public static function singleton() {
64
-		if(!isset(self::$_instance)) {
65
-			$c = __CLASS__;
66
-			self::$_instance = new $c;
67
-		}
68
-		return self::$_instance;
69
-	}
60
+    /**
61
+     * Singleton method
62
+     */
63
+    public static function singleton() {
64
+        if(!isset(self::$_instance)) {
65
+            $c = __CLASS__;
66
+            self::$_instance = new $c;
67
+        }
68
+        return self::$_instance;
69
+    }
70 70
 	
71
-	/**
72
-	 * Prevent users to clone the instance
73
-	 */
74
-	public function __clone() {
75
-		trigger_error('Clone is not allowed', E_USER_ERROR);
76
-	}
71
+    /**
72
+     * Prevent users to clone the instance
73
+     */
74
+    public function __clone() {
75
+        trigger_error('Clone is not allowed', E_USER_ERROR);
76
+    }
77 77
 	
78
-	public function getRequestHandler() {
79
-		return $this->_request_handler;
80
-	}
78
+    public function getRequestHandler() {
79
+        return $this->_request_handler;
80
+    }
81 81
 	
82
-	/**
83
-	 * Sets the request handler. Does nothing if the argument is not an instance of PENSRequestHandler
84
-	 * 
85
-	 * @param PENSRequestHandler Request handler
86
-	 */
87
-	public function setRequestHandler($request_handler) {
88
-		if($request_handler instanceof PENSRequestHandler) {
89
-			$this->_request_handler = $request_handler;
90
-		}
91
-	}
82
+    /**
83
+     * Sets the request handler. Does nothing if the argument is not an instance of PENSRequestHandler
84
+     * 
85
+     * @param PENSRequestHandler Request handler
86
+     */
87
+    public function setRequestHandler($request_handler) {
88
+        if($request_handler instanceof PENSRequestHandler) {
89
+            $this->_request_handler = $request_handler;
90
+        }
91
+    }
92 92
 	
93
-	/**
94
-	 * Receives a request, calls the handler and displays the response
95
-	 */
96
-	public function receiveRequest() {
97
-		$request = null;
98
-		try {
99
-			$request = $this->parseRequest();
100
-			$command = $request->getCommand();
101
-			if($command == "alert" || $command == "receipt") {
102
-				if(!is_null($this->_request_handler)) {
103
-					// Call the handler
104
-					$this->_request_handler->processRequest($request, new PENSResponse($_REQUEST));
105
-				}
106
-				$this->sendResponse(new PENSResponse(0, $command." received and understood"));
107
-			}
108
-		} catch(PENSException $e) {
109
-			// If we could not parse the request, send the error
110
-			$this->sendResponse(new PENSResponse($e));
111
-		}
112
-	}
93
+    /**
94
+     * Receives a request, calls the handler and displays the response
95
+     */
96
+    public function receiveRequest() {
97
+        $request = null;
98
+        try {
99
+            $request = $this->parseRequest();
100
+            $command = $request->getCommand();
101
+            if($command == "alert" || $command == "receipt") {
102
+                if(!is_null($this->_request_handler)) {
103
+                    // Call the handler
104
+                    $this->_request_handler->processRequest($request, new PENSResponse($_REQUEST));
105
+                }
106
+                $this->sendResponse(new PENSResponse(0, $command." received and understood"));
107
+            }
108
+        } catch(PENSException $e) {
109
+            // If we could not parse the request, send the error
110
+            $this->sendResponse(new PENSResponse($e));
111
+        }
112
+    }
113 113
 }
Please login to merge, or discard this patch.
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -61,7 +61,7 @@  discard block
 block discarded – undo
61 61
 	 * Singleton method
62 62
 	 */
63 63
 	public static function singleton() {
64
-		if(!isset(self::$_instance)) {
64
+		if (!isset(self::$_instance)) {
65 65
 			$c = __CLASS__;
66 66
 			self::$_instance = new $c;
67 67
 		}
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
 	 * @param PENSRequestHandler Request handler
86 86
 	 */
87 87
 	public function setRequestHandler($request_handler) {
88
-		if($request_handler instanceof PENSRequestHandler) {
88
+		if ($request_handler instanceof PENSRequestHandler) {
89 89
 			$this->_request_handler = $request_handler;
90 90
 		}
91 91
 	}
@@ -98,14 +98,14 @@  discard block
 block discarded – undo
98 98
 		try {
99 99
 			$request = $this->parseRequest();
100 100
 			$command = $request->getCommand();
101
-			if($command == "alert" || $command == "receipt") {
102
-				if(!is_null($this->_request_handler)) {
101
+			if ($command == "alert" || $command == "receipt") {
102
+				if (!is_null($this->_request_handler)) {
103 103
 					// Call the handler
104 104
 					$this->_request_handler->processRequest($request, new PENSResponse($_REQUEST));
105 105
 				}
106 106
 				$this->sendResponse(new PENSResponse(0, $command." received and understood"));
107 107
 			}
108
-		} catch(PENSException $e) {
108
+		} catch (PENSException $e) {
109 109
 			// If we could not parse the request, send the error
110 110
 			$this->sendResponse(new PENSResponse($e));
111 111
 		}
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_request_collect.php 2 patches
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@
 block discarded – undo
40 40
 
41 41
 class PENSRequestCollect extends PENSRequest {
42 42
 	
43
-	public function __construct($arguments) {
44
-		parent::__construct($arguments);
45
-		$this->setCommand("collect");
46
-	}
43
+    public function __construct($arguments) {
44
+        parent::__construct($arguments);
45
+        $this->setCommand("collect");
46
+    }
47 47
 
48 48
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@
 block discarded – undo
26 26
  * @licence http://www.gnu.org/licenses/gpl.txt
27 27
  */
28 28
 
29
-require_once __DIR__ . '/pens_request.php';
29
+require_once __DIR__.'/pens_request.php';
30 30
 
31 31
 /**
32 32
  * PENSRequestReceipt
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_package_handler.php 2 patches
Indentation   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -16,15 +16,15 @@  discard block
 block discarded – undo
16 16
  * along with php-pens.  If not, see <http://www.gnu.org/licenses/>.
17 17
  */
18 18
  
19
- /**
20
- * PENSPackageHandler
21
- * 
22
- * Provides the PENSPackageHandler abstract class
23
- * 
24
- * @package PENS
25
- * @author Guillaume Viguier-Just <[email protected]>
26
- * @licence http://www.gnu.org/licenses/gpl.txt
27
- */
19
+    /**
20
+     * PENSPackageHandler
21
+     * 
22
+     * Provides the PENSPackageHandler abstract class
23
+     * 
24
+     * @package PENS
25
+     * @author Guillaume Viguier-Just <[email protected]>
26
+     * @licence http://www.gnu.org/licenses/gpl.txt
27
+     */
28 28
 
29 29
 require_once(dirname(__FILE__)."/pens_config.php");
30 30
 
@@ -39,76 +39,76 @@  discard block
 block discarded – undo
39 39
  * @licence http://www.gnu.org/licenses/gpl.txt
40 40
  */
41 41
 abstract class PENSPackageHandler {
42
-	/**
43
-	 * Array of supported package types for this handler. Set by default to PENSConfig::$allowed_package_types
44
-	 * @var array
45
-	 */
46
-	protected $_supported_package_types = null;
42
+    /**
43
+     * Array of supported package types for this handler. Set by default to PENSConfig::$allowed_package_types
44
+     * @var array
45
+     */
46
+    protected $_supported_package_types = null;
47 47
 	
48
-	/**
49
-	 * Array of supported package formats for this handler. Set by default to PENSConfig::$allowed_package_formats
50
-	 * @var array
51
-	 */
52
-	protected $_supported_package_formats = null;
48
+    /**
49
+     * Array of supported package formats for this handler. Set by default to PENSConfig::$allowed_package_formats
50
+     * @var array
51
+     */
52
+    protected $_supported_package_formats = null;
53 53
 	
54
-	/**
55
-	 * Constructor. Sets the default values of supported_package_types and supported_package_formats
56
-	 */
57
-	public function __construct() {
58
-		$this->_supported_package_types = PENSConfig::$allowed_package_types;
59
-		$this->_supported_package_formats = PENSConfig::$allowed_package_formats;
60
-	}
54
+    /**
55
+     * Constructor. Sets the default values of supported_package_types and supported_package_formats
56
+     */
57
+    public function __construct() {
58
+        $this->_supported_package_types = PENSConfig::$allowed_package_types;
59
+        $this->_supported_package_formats = PENSConfig::$allowed_package_formats;
60
+    }
61 61
 	
62
-	public function getSupportedPackageTypes() {
63
-		return $this->_supported_package_types;
64
-	}
62
+    public function getSupportedPackageTypes() {
63
+        return $this->_supported_package_types;
64
+    }
65 65
 	
66
-	/**
67
-	 * Sets the supported package types. All package types in the array provided as an argument
68
-	 * not present in PENSConfig::$allowed_package_types will be ignored. The supported_package_types
69
-	 * will be set to null if the argument given is not an array
70
-	 * 
71
-	 * @param array Supported package types
72
-	 */
73
-	public function setSupportedPackageTypes($supported_package_types) {
74
-		$this->_supported_package_types = null;
75
-		if(is_array($supported_package_types)) {
76
-			foreach($supported_package_types as $package_type) {
77
-				if(in_array($package_type, PENSConfig::$allowed_package_types)) {
78
-					$this->_supported_package_types[] = $package_type;
79
-				}
80
-			}
81
-		}
82
-	}
66
+    /**
67
+     * Sets the supported package types. All package types in the array provided as an argument
68
+     * not present in PENSConfig::$allowed_package_types will be ignored. The supported_package_types
69
+     * will be set to null if the argument given is not an array
70
+     * 
71
+     * @param array Supported package types
72
+     */
73
+    public function setSupportedPackageTypes($supported_package_types) {
74
+        $this->_supported_package_types = null;
75
+        if(is_array($supported_package_types)) {
76
+            foreach($supported_package_types as $package_type) {
77
+                if(in_array($package_type, PENSConfig::$allowed_package_types)) {
78
+                    $this->_supported_package_types[] = $package_type;
79
+                }
80
+            }
81
+        }
82
+    }
83 83
 	
84
-	public function getSupportedPackageFormats() {
85
-		return $this->_supported_package_formats;
86
-	}
84
+    public function getSupportedPackageFormats() {
85
+        return $this->_supported_package_formats;
86
+    }
87 87
 	
88
-	/**
89
-	 * Sets the supported package formats. All package types in the array provided as an argument
90
-	 * not present in PENSConfig::$allowed_package_formats will be ignored. The supported_package_formats
91
-	 * will be set to null if the argument given is not an array.
92
-	 * 
93
-	 * @param array Supported package formats
94
-	 */
95
-	public function setSupportedPackageFormats($supported_package_formats) {
96
-		$this->_supported_package_formats = null;
97
-		if(is_array($supported_package_formats)) {
98
-			foreach($supported_package_formats as $package_format) {
99
-				if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
100
-					$this->_supported_package_formats[] = $package_format;
101
-				}
102
-			}
103
-		}
104
-	}
88
+    /**
89
+     * Sets the supported package formats. All package types in the array provided as an argument
90
+     * not present in PENSConfig::$allowed_package_formats will be ignored. The supported_package_formats
91
+     * will be set to null if the argument given is not an array.
92
+     * 
93
+     * @param array Supported package formats
94
+     */
95
+    public function setSupportedPackageFormats($supported_package_formats) {
96
+        $this->_supported_package_formats = null;
97
+        if(is_array($supported_package_formats)) {
98
+            foreach($supported_package_formats as $package_format) {
99
+                if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
100
+                    $this->_supported_package_formats[] = $package_format;
101
+                }
102
+            }
103
+        }
104
+    }
105 105
 	
106
-	/**
107
-	 * Processes the package. Must be implemented by subclasses
108
-	 * 
109
-	 * @param PENSRequestCollect Collect request sent by the client
110
-	 * @param string Path to the collected package on the hard drive
111
-	 */
112
-	abstract public function processPackage($request, $path_to_package);
106
+    /**
107
+     * Processes the package. Must be implemented by subclasses
108
+     * 
109
+     * @param PENSRequestCollect Collect request sent by the client
110
+     * @param string Path to the collected package on the hard drive
111
+     */
112
+    abstract public function processPackage($request, $path_to_package);
113 113
 	
114 114
 }
Please login to merge, or discard this patch.
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -72,9 +72,9 @@  discard block
 block discarded – undo
72 72
 	 */
73 73
 	public function setSupportedPackageTypes($supported_package_types) {
74 74
 		$this->_supported_package_types = null;
75
-		if(is_array($supported_package_types)) {
76
-			foreach($supported_package_types as $package_type) {
77
-				if(in_array($package_type, PENSConfig::$allowed_package_types)) {
75
+		if (is_array($supported_package_types)) {
76
+			foreach ($supported_package_types as $package_type) {
77
+				if (in_array($package_type, PENSConfig::$allowed_package_types)) {
78 78
 					$this->_supported_package_types[] = $package_type;
79 79
 				}
80 80
 			}
@@ -94,9 +94,9 @@  discard block
 block discarded – undo
94 94
 	 */
95 95
 	public function setSupportedPackageFormats($supported_package_formats) {
96 96
 		$this->_supported_package_formats = null;
97
-		if(is_array($supported_package_formats)) {
98
-			foreach($supported_package_formats as $package_format) {
99
-				if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
97
+		if (is_array($supported_package_formats)) {
98
+			foreach ($supported_package_formats as $package_format) {
99
+				if (in_array($package_format, PENSConfig::$allowed_package_formats)) {
100 100
 					$this->_supported_package_formats[] = $package_format;
101 101
 				}
102 102
 			}
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_request_handler.php 1 patch
Indentation   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -16,15 +16,15 @@  discard block
 block discarded – undo
16 16
  * along with php-pens.  If not, see <http://www.gnu.org/licenses/>.
17 17
  */
18 18
  
19
- /**
20
- * PENSRequestHandler
21
- * 
22
- * Provides the PENSRequestHandler abstract class
23
- * 
24
- * @package PENS
25
- * @author Guillaume Viguier-Just <[email protected]>
26
- * @licence http://www.gnu.org/licenses/gpl.txt
27
- */
19
+    /**
20
+     * PENSRequestHandler
21
+     * 
22
+     * Provides the PENSRequestHandler abstract class
23
+     * 
24
+     * @package PENS
25
+     * @author Guillaume Viguier-Just <[email protected]>
26
+     * @licence http://www.gnu.org/licenses/gpl.txt
27
+     */
28 28
 
29 29
 /**
30 30
  * PENSRequestHandler
@@ -37,12 +37,12 @@  discard block
 block discarded – undo
37 37
  * @licence http://www.gnu.org/licenses/gpl.txt
38 38
  */
39 39
 abstract class PENSRequestHandler {
40
-	/**
41
-	 * Processes the request. Must be implemented by subclasses
42
-	 * 
43
-	 * @param PENSRequest Alert or Receipt request sent by the server
44
-	 * @param PENSResponse Response sent by the server (error, error-text etc...)
45
-	 */
46
-	abstract public function processRequest($request, $response);
40
+    /**
41
+     * Processes the request. Must be implemented by subclasses
42
+     * 
43
+     * @param PENSRequest Alert or Receipt request sent by the server
44
+     * @param PENSResponse Response sent by the server (error, error-text etc...)
45
+     */
46
+    abstract public function processRequest($request, $response);
47 47
 }
48 48
 
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_request_receipt.php 2 patches
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@
 block discarded – undo
40 40
 
41 41
 class PENSRequestReceipt extends PENSRequest {
42 42
 	
43
-	public function __construct($arguments) {
44
-		parent::__construct($arguments);
45
-		$this->setCommand("receipt");
46
-	}
43
+    public function __construct($arguments) {
44
+        parent::__construct($arguments);
45
+        $this->setCommand("receipt");
46
+    }
47 47
 
48 48
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@
 block discarded – undo
26 26
  * @licence http://www.gnu.org/licenses/gpl.txt
27 27
  */
28 28
 
29
-require_once __DIR__ . '/pens_request.php';
29
+require_once __DIR__.'/pens_request.php';
30 30
 
31 31
 /**
32 32
  * PENSRequestReceipt
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_request_factory.php 2 patches
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -43,26 +43,26 @@
 block discarded – undo
43 43
  */
44 44
 class PENSRequestFactory {
45 45
 
46
-	/**
47
-	 * Factory method
48
-	 * 
49
-	 * Creates the right PENSRequest object, based on the command inside the arguments
50
-	 * 
51
-	 * @param array Associative array of arguments
52
-	 * @return mixed PENSRequestAlert or PENSRequestCollect or PENSRequestReceipt
53
-	 * 
54
-	 * @throws PENSException with code 2002 if command is invalid
55
-	 */
56
-	public static function createPENSRequest($arguments) {
57
-		$command = $arguments["command"];
58
-		if($command == "alert") {
59
-			return new PENSRequestAlert($arguments);
60
-		} else if($command == "collect") {
61
-			return new PENSRequestCollect($arguments);
62
-		} else if($command == "receipt") {
63
-			return new PENSRequestReceipt($arguments);
64
-		} else {
65
-			throw new PENSException(2002);
66
-		}
67
-	}
46
+    /**
47
+     * Factory method
48
+     * 
49
+     * Creates the right PENSRequest object, based on the command inside the arguments
50
+     * 
51
+     * @param array Associative array of arguments
52
+     * @return mixed PENSRequestAlert or PENSRequestCollect or PENSRequestReceipt
53
+     * 
54
+     * @throws PENSException with code 2002 if command is invalid
55
+     */
56
+    public static function createPENSRequest($arguments) {
57
+        $command = $arguments["command"];
58
+        if($command == "alert") {
59
+            return new PENSRequestAlert($arguments);
60
+        } else if($command == "collect") {
61
+            return new PENSRequestCollect($arguments);
62
+        } else if($command == "receipt") {
63
+            return new PENSRequestReceipt($arguments);
64
+        } else {
65
+            throw new PENSException(2002);
66
+        }
67
+    }
68 68
 }
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -27,10 +27,10 @@  discard block
 block discarded – undo
27 27
  * @licence http://www.gnu.org/licenses/gpl.txt
28 28
  */
29 29
 
30
-require_once __DIR__ . '/pens_exception.php';
31
-require_once __DIR__ . '/pens_request_receipt.php';
32
-require_once __DIR__ . '/pens_request_collect.php';
33
-require_once __DIR__ . '/pens_request_alert.php';
30
+require_once __DIR__.'/pens_exception.php';
31
+require_once __DIR__.'/pens_request_receipt.php';
32
+require_once __DIR__.'/pens_request_collect.php';
33
+require_once __DIR__.'/pens_request_alert.php';
34 34
 
35 35
 /**
36 36
  * PENSRequestFactory
@@ -55,11 +55,11 @@  discard block
 block discarded – undo
55 55
 	 */
56 56
 	public static function createPENSRequest($arguments) {
57 57
 		$command = $arguments["command"];
58
-		if($command == "alert") {
58
+		if ($command == "alert") {
59 59
 			return new PENSRequestAlert($arguments);
60
-		} else if($command == "collect") {
60
+		} else if ($command == "collect") {
61 61
 			return new PENSRequestCollect($arguments);
62
-		} else if($command == "receipt") {
62
+		} else if ($command == "receipt") {
63 63
 			return new PENSRequestReceipt($arguments);
64 64
 		} else {
65 65
 			throw new PENSException(2002);
Please login to merge, or discard this patch.
plugin/pens/lib/pens/pens_request.php 2 patches
Spacing   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -186,7 +186,7 @@  discard block
 block discarded – undo
186 186
 	 * @throws PENSException with code 2001 if invalid
187 187
 	 */
188 188
 	public function setPensVersion($pens_version) {
189
-		if($pens_version == PENSConfig::$version) {
189
+		if ($pens_version == PENSConfig::$version) {
190 190
 			$this->_pens_version = $pens_version;
191 191
 		} else {
192 192
 			throw new PENSException(2001);
@@ -205,7 +205,7 @@  discard block
 block discarded – undo
205 205
 	 * @throws PENSException with code 2002 if invalid
206 206
 	 */
207 207
 	protected function setCommand($command) {
208
-		if(in_array($command, PENSConfig::$allowed_commands)) {
208
+		if (in_array($command, PENSConfig::$allowed_commands)) {
209 209
 			$this->_command = $command;
210 210
 		} else {
211 211
 			throw new PENSException(2002);
@@ -224,7 +224,7 @@  discard block
 block discarded – undo
224 224
 	 * @throws PENSException with code 2003 if invalid
225 225
 	 */
226 226
 	public function setPackageType($package_type) {
227
-		if(in_array($package_type, PENSConfig::$allowed_package_types)) {
227
+		if (in_array($package_type, PENSConfig::$allowed_package_types)) {
228 228
 			$this->_package_type = $package_type;
229 229
 		} else {
230 230
 			throw new PENSException(2003);
@@ -243,7 +243,7 @@  discard block
 block discarded – undo
243 243
 	 * @throws PENSException with code 2004 if invalid
244 244
 	 */
245 245
 	public function setPackageTypeVersion($package_type_version) {
246
-		if(empty($package_type_version)) {
246
+		if (empty($package_type_version)) {
247 247
 			throw new PENSException(2004);
248 248
 		} else {
249 249
 			$this->_package_type_version = $package_type_version;
@@ -262,7 +262,7 @@  discard block
 block discarded – undo
262 262
 	 * @throws PENSException with code 2005 if invalid
263 263
 	 */
264 264
 	public function setPackageFormat($package_format) {
265
-		if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
265
+		if (in_array($package_format, PENSConfig::$allowed_package_formats)) {
266 266
 			$this->_package_format = $package_format;
267 267
 		} else {
268 268
 			throw new PENSException(2005);
@@ -316,7 +316,7 @@  discard block
 block discarded – undo
316 316
 	}
317 317
 	
318 318
 	public function setPackageUrlUserId($package_url_user_id) {
319
-		if(!empty($package_url_user_id)) {
319
+		if (!empty($package_url_user_id)) {
320 320
 			$this->_package_url_user_id = $package_url_user_id;
321 321
 		}
322 322
 	}
@@ -326,7 +326,7 @@  discard block
 block discarded – undo
326 326
 	}
327 327
 	
328 328
 	public function setPackageUrlAccount($package_url_account) {
329
-		if(!empty($package_url_account)) {
329
+		if (!empty($package_url_account)) {
330 330
 			$this->_package_url_account = $package_url_account;
331 331
 		}
332 332
 	}
@@ -336,7 +336,7 @@  discard block
 block discarded – undo
336 336
 	}
337 337
 	
338 338
 	public function setPackageUrlPassword($package_url_password) {
339
-		if(!empty($package_url_password)) {
339
+		if (!empty($package_url_password)) {
340 340
 			$this->_package_url_password = $package_url_password;
341 341
 		}
342 342
 	}
@@ -354,13 +354,13 @@  discard block
 block discarded – undo
354 354
 	 * @todo Perform a better validation of the date
355 355
 	 */
356 356
 	public function setPackageUrlExpiry($package_url_expiry) {
357
-		if(empty($package_url_expiry)) {
357
+		if (empty($package_url_expiry)) {
358 358
 			throw new PENSException(2009);
359 359
 		} else {
360 360
 			try {
361 361
 				$expiry = new DateTime($package_url_expiry, new DateTimeZone('UTC'));
362 362
 				$this->_package_url_expiry = $expiry;
363
-			} catch(Exception $e) {
363
+			} catch (Exception $e) {
364 364
 				throw new PENSException(2009);
365 365
 			}
366 366
 		}
@@ -378,7 +378,7 @@  discard block
 block discarded – undo
378 378
 	 * @throws PENSException with code 2010 if invalid
379 379
 	 */
380 380
 	public function setClient($client) {
381
-		if(!empty($client)) {
381
+		if (!empty($client)) {
382 382
 			$this->_client = $client;
383 383
 		} else {
384 384
 			throw new PENSException(2010);
@@ -390,7 +390,7 @@  discard block
 block discarded – undo
390 390
 	}
391 391
 	
392 392
 	public function setSystemUserId($system_user_id) {
393
-		if(!empty($system_user_id)) {
393
+		if (!empty($system_user_id)) {
394 394
 			$this->_system_user_id = $system_user_id;
395 395
 		}
396 396
 	}
@@ -400,7 +400,7 @@  discard block
 block discarded – undo
400 400
 	}
401 401
 	
402 402
 	public function setSystemPassword($system_password) {
403
-		if(!empty($system_password)) {
403
+		if (!empty($system_password)) {
404 404
 			$this->_system_password = $system_password;
405 405
 		}
406 406
 	}
@@ -417,7 +417,7 @@  discard block
 block discarded – undo
417 417
 	 * @throws PENSException with code 2011 if invalid
418 418
 	 */
419 419
 	public function setReceipt($receipt) {
420
-		if($this instanceof PENSRequestCollect) {
420
+		if ($this instanceof PENSRequestCollect) {
421 421
 			if (preg_match('/'.ABSOLUTEURI_2396.'/', $receipt)) {
422 422
 				$this->_receipt = $receipt;
423 423
 			} else {
@@ -431,8 +431,8 @@  discard block
 block discarded – undo
431 431
 	}
432 432
 	
433 433
 	public function setAlerts($alerts) {
434
-		if(!empty($alerts)) {
435
-			if(preg_match('/'.ABSOLUTEURI_2396.'/', $alerts)) {
434
+		if (!empty($alerts)) {
435
+			if (preg_match('/'.ABSOLUTEURI_2396.'/', $alerts)) {
436 436
 				$this->_alerts = $alerts;
437 437
 			} else {
438 438
 				throw new PENSException(1201);
@@ -445,7 +445,7 @@  discard block
 block discarded – undo
445 445
 	}
446 446
 	
447 447
 	public function setVendorData($vendor_data) {
448
-		if(!empty($vendor_data)) {
448
+		if (!empty($vendor_data)) {
449 449
 			$this->_vendor_data = $vendor_data;
450 450
 		}
451 451
 	}
Please login to merge, or discard this patch.
Indentation   +447 added lines, -447 removed lines patch added patch discarded remove patch
@@ -43,453 +43,453 @@
 block discarded – undo
43 43
 
44 44
 abstract class PENSRequest extends PENSMessage {
45 45
 
46
-	/**
47
-	 * PENS Version to be used. Currently, the only valid value is 1.0.0. Required.
48
-	 * @var string
49
-	 */
50
-	protected $_pens_version = null;
51
-	
52
-	/**
53
-	 * Command being used. The only valid values are collect, alert and receipt.Required
54
-	 * @var string
55
-	 */
56
-	protected $_command = null;
57
-	
58
-	/**
59
-	 * Package type being used. The only valid values are aicc-pkg, scorm-pif, ims-qti. Required
60
-	 * @var string
61
-	 */
62
-	protected $_package_type = null;
63
-	
64
-	/**
65
-	 * Package type version. Required
66
-	 * @var string
67
-	 */
68
-	protected $_package_type_version = null;
69
-	
70
-	/**
71
-	 * Package format. The only valid values are zip, url, jar, war and xml. Required
72
-	 * @var string
73
-	 */
74
-	protected $_package_format = null;
75
-	
76
-	/**
77
-	 * Package id. Requires a valid URI according to RFC 2396. Required
78
-	 * @var string
79
-	 */
80
-	protected $_package_id = null;
81
-	
82
-	/**
83
-	 * Package url. Requires a valid, fully qualified URL including transport protocol and filename extension. Required
84
-	 * @var string
85
-	 */
86
-	protected $_package_url = null;
87
-	
88
-	/**
89
-	 * User id required for system to retrieve package from URL. Optional.
90
-	 * @var string
91
-	 */
92
-	protected $_package_url_user_id = null;
93
-	
94
-	/**
95
-	 * Account required for system to retrieve package from URL. Optional.
96
-	 * @var string
97
-	 */
98
-	protected $_package_url_account = null;
99
-	
100
-	/**
101
-	 * Password required for system to retrieve package from URL. Optional.
102
-	 * @var string
103
-	 */
104
-	protected $_package_url_password = null;
105
-	
106
-	/**
107
-	 * Expiry date for package URL. ISO 8601 format expressed as UTC. Will be transformed into a PHP DateTime object during construction. Required
108
-	 * @var DateTime
109
-	 */
110
-	protected $_package_url_expiry = null;
111
-	
112
-	/**
113
-	 * Name or ID for client submitting the content package to the target system. Required.
114
-	 * @var string
115
-	 */
116
-	protected $_client = null;
117
-	
118
-	/**
119
-	 * User-id or sign-on for target system. Optional
120
-	 * @var string
121
-	 */
122
-	protected $_system_user_id = null;
123
-	
124
-	/**
125
-	 * Either a URL-encoded password token or the null string. If the 
126
-	 * target system requires a password and the null string value is 
127
-	 * passed, then the target system is responsible for prompting for a 
128
-	 * password for target system. Optional
129
-	 * @var string
130
-	 */
131
-	protected $_system_password = null;
132
-	
133
-	/**
134
-	 * URL to send acknowledgement receipt after collecting a package. Any URL, including mailto (as per RFC 2368 and RFC 2822). Required.
135
-	 * @var string
136
-	 */
137
-	protected $_receipt = null;
138
-	
139
-	/**
140
-	 * URL to send alerts to while processing the package. Any URL, including mailto (as per RFC 2368 and RFC 2822). Optional.
141
-	 * @var string
142
-	 */
143
-	protected $_alerts = null;
144
-	
145
-	/**
146
-	 * Unstructured character string that may be used to transfer vendor-specific data such as processing hints or deployment information. Optional.
147
-	 * @var string
148
-	 */
149
-	protected $_vendor_data = null;
150
-	
151
-	/**
152
-	 * Constructor
153
-	 * 
154
-	 * Constructs a PENSRequest based class using the arguments given
155
-	 * 
156
-	 * @param array Arguments
157
-	 */
158
-	public function __construct($arguments) {
159
-		$this->setPensVersion($arguments["pens-version"]);
160
-		$this->setPackageType($arguments["package-type"]);
161
-		$this->setPackageTypeVersion($arguments["package-type-version"]);
162
-		$this->setPackageFormat($arguments["package-format"]);
163
-		$this->setPackageId($arguments["package-id"]);
164
-		$this->setPackageUrl($arguments["package-url"]);
165
-		$this->setPackageUrlUserId($arguments["package-url-user-id"]);
166
-		$this->setPackageUrlAccount($arguments["package-url-account"]);
167
-		$this->setPackageUrlPassword($arguments["package-url-password"]);
168
-		$this->setPackageUrlExpiry($arguments["package-url-expiry"]);
169
-		$this->setClient($arguments["client"]);
170
-		$this->setSystemUserId($arguments["system-user-id"]);
171
-		$this->setSystemPassword($arguments["system-password"]);
172
-		$this->setReceipt($arguments["receipt"]);
173
-		$this->setAlerts($arguments["alerts"]);
174
-		$this->setVendorData($arguments["vendor-data"]);
175
-	}
176
-	
177
-	public function getPensVersion() {
178
-		return $this->_pens_version;
179
-	}
180
-	
181
-	/**
182
-	 * Sets the PENS version
183
-	 * 
184
-	 * @param string PENS version
185
-	 * 
186
-	 * @throws PENSException with code 2001 if invalid
187
-	 */
188
-	public function setPensVersion($pens_version) {
189
-		if($pens_version == PENSConfig::$version) {
190
-			$this->_pens_version = $pens_version;
191
-		} else {
192
-			throw new PENSException(2001);
193
-		}
194
-	}
195
-	
196
-	public function getCommand() {
197
-		return $this->_command;
198
-	}
199
-	
200
-	/**
201
-	 * Sets the command
202
-	 * 
203
-	 * @param string command
204
-	 * 
205
-	 * @throws PENSException with code 2002 if invalid
206
-	 */
207
-	protected function setCommand($command) {
208
-		if(in_array($command, PENSConfig::$allowed_commands)) {
209
-			$this->_command = $command;
210
-		} else {
211
-			throw new PENSException(2002);
212
-		}
213
-	}
214
-	
215
-	public function getPackageType() {
216
-		return $this->_package_type;
217
-	}
218
-	
219
-	/**
220
-	 * Sets the package type
221
-	 * 
222
-	 * @param string package type
223
-	 * 
224
-	 * @throws PENSException with code 2003 if invalid
225
-	 */
226
-	public function setPackageType($package_type) {
227
-		if(in_array($package_type, PENSConfig::$allowed_package_types)) {
228
-			$this->_package_type = $package_type;
229
-		} else {
230
-			throw new PENSException(2003);
231
-		}
232
-	}
233
-	
234
-	public function getPackageTypeVersion() {
235
-		return $this->_package_type_version;
236
-	}
237
-	
238
-	/**
239
-	 * Sets the package type version
240
-	 * 
241
-	 * @param string package type version
242
-	 * 
243
-	 * @throws PENSException with code 2004 if invalid
244
-	 */
245
-	public function setPackageTypeVersion($package_type_version) {
246
-		if(empty($package_type_version)) {
247
-			throw new PENSException(2004);
248
-		} else {
249
-			$this->_package_type_version = $package_type_version;
250
-		}
251
-	}
252
-	
253
-	public function getPackageFormat() {
254
-		return $this->_package_format;
255
-	}
256
-	
257
-	/**
258
-	 * Sets the package format
259
-	 * 
260
-	 * @param string package format
261
-	 * 
262
-	 * @throws PENSException with code 2005 if invalid
263
-	 */
264
-	public function setPackageFormat($package_format) {
265
-		if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
266
-			$this->_package_format = $package_format;
267
-		} else {
268
-			throw new PENSException(2005);
269
-		}
270
-	}
271
-	
272
-	public function getPackageId() {
273
-		return $this->_package_id;
274
-	}
275
-	
276
-	/**
277
-	 * Sets the package Id
278
-	 * 
279
-	 * @param string package Id
280
-	 * 
281
-	 * @throws PENSException with code 2007 if invalid
282
-	 */
283
-	public function setPackageId($package_id) {
284
-		if (preg_match('/'.ABSOLUTEURI_2396.'/', $package_id)) {
285
-			$this->_package_id = $package_id;
286
-		} else {
287
-			throw new PENSException(2007);
288
-		}
289
-	}
290
-	
291
-	public function getPackageUrl() {
292
-		return $this->_package_url;
293
-	}
294
-	
295
-	/**
296
-	 * Sets the package url
297
-	 * 
298
-	 * @param string package url
299
-	 * 
300
-	 * @throws PENSException with code 2008 if invalid
301
-	 */
302
-	public function setPackageUrl($package_url) {
303
-		if (preg_match('/'.ABSOLUTEURI_2396.'/', $package_url) && substr($package_url, -4) == ".".$this->_package_format) {
304
-			$this->_package_url = $package_url;
305
-		} else {
306
-			throw new PENSException(2008);
307
-		}
308
-	}
309
-	
310
-	public function getFilename() {
311
-		return substr(strrchr($this->_package_url, "/"), 1);
312
-	}
313
-	
314
-	public function getPackageUrlUserId() {
315
-		return $this->_package_url_user_id;
316
-	}
317
-	
318
-	public function setPackageUrlUserId($package_url_user_id) {
319
-		if(!empty($package_url_user_id)) {
320
-			$this->_package_url_user_id = $package_url_user_id;
321
-		}
322
-	}
323
-	
324
-	public function getPackageUrlAccount() {
325
-		return $this->_package_url_account;
326
-	}
327
-	
328
-	public function setPackageUrlAccount($package_url_account) {
329
-		if(!empty($package_url_account)) {
330
-			$this->_package_url_account = $package_url_account;
331
-		}
332
-	}
333
-	
334
-	public function getPackageUrlPassword() {
335
-		return $this->_package_url_password;
336
-	}
337
-	
338
-	public function setPackageUrlPassword($package_url_password) {
339
-		if(!empty($package_url_password)) {
340
-			$this->_package_url_password = $package_url_password;
341
-		}
342
-	}
343
-	
344
-	public function getPackageUrlExpiry() {
345
-		return $this->_package_url_expiry;
346
-	}
347
-	
348
-	/**
349
-	 * Sets the package url expiry and transforms it into a php DateTime object
350
-	 * 
351
-	 * @param string package url expiry
352
-	 * 
353
-	 * @throws PENSException with code 2009 if invalid
354
-	 * @todo Perform a better validation of the date
355
-	 */
356
-	public function setPackageUrlExpiry($package_url_expiry) {
357
-		if(empty($package_url_expiry)) {
358
-			throw new PENSException(2009);
359
-		} else {
360
-			try {
361
-				$expiry = new DateTime($package_url_expiry, new DateTimeZone('UTC'));
362
-				$this->_package_url_expiry = $expiry;
363
-			} catch(Exception $e) {
364
-				throw new PENSException(2009);
365
-			}
366
-		}
367
-	}
368
-	
369
-	public function getClient() {
370
-		return $this->_client;
371
-	}
372
-	
373
-	/**
374
-	 * Sets the client
375
-	 * 
376
-	 * @param string client
377
-	 * 
378
-	 * @throws PENSException with code 2010 if invalid
379
-	 */
380
-	public function setClient($client) {
381
-		if(!empty($client)) {
382
-			$this->_client = $client;
383
-		} else {
384
-			throw new PENSException(2010);
385
-		}
386
-	}
387
-	
388
-	public function getSystemUserId() {
389
-		return $this->_system_user_id;
390
-	}
391
-	
392
-	public function setSystemUserId($system_user_id) {
393
-		if(!empty($system_user_id)) {
394
-			$this->_system_user_id = $system_user_id;
395
-		}
396
-	}
397
-	
398
-	public function getSystemPassword() {
399
-		return $this->_system_password;
400
-	}
401
-	
402
-	public function setSystemPassword($system_password) {
403
-		if(!empty($system_password)) {
404
-			$this->_system_password = $system_password;
405
-		}
406
-	}
407
-	
408
-	public function getReceipt() {
409
-		return $this->_receipt;
410
-	}
411
-	
412
-	/**
413
-	 * Sets the receipt url
414
-	 * 
415
-	 * @param string receipt url
416
-	 * 
417
-	 * @throws PENSException with code 2011 if invalid
418
-	 */
419
-	public function setReceipt($receipt) {
420
-		if($this instanceof PENSRequestCollect) {
421
-			if (preg_match('/'.ABSOLUTEURI_2396.'/', $receipt)) {
422
-				$this->_receipt = $receipt;
423
-			} else {
424
-				throw new PENSException(2011);
425
-			}
426
-		}
427
-	}
428
-	
429
-	public function getAlerts() {
430
-		return $this->_alerts;
431
-	}
432
-	
433
-	public function setAlerts($alerts) {
434
-		if(!empty($alerts)) {
435
-			if(preg_match('/'.ABSOLUTEURI_2396.'/', $alerts)) {
436
-				$this->_alerts = $alerts;
437
-			} else {
438
-				throw new PENSException(1201);
439
-			}
440
-		}
441
-	}
442
-	
443
-	public function getVendorData() {
444
-		return $this->_vendor_data;
445
-	}
446
-	
447
-	public function setVendorData($vendor_data) {
448
-		if(!empty($vendor_data)) {
449
-			$this->_vendor_data = $vendor_data;
450
-		}
451
-	}
452
-	
453
-	/**
454
-	 * Returns an associative that contains all the fields needed to send a
455
-	 * receipt or an alert to the client
456
-	 * 
457
-	 * @return array Associative array
458
-	 */
459
-	protected function getSendReceiptAlertArray() {
460
-		return array("pens-version" => $this->getPensVersion(),
461
-			"package-type" => $this->getPackageType(),
462
-			"package-type-version" => $this->getPackageTypeVersion(),
463
-			"package-format" => $this->getPackageFormat(),
464
-			"package-id" => $this->getPackageId(),
465
-			"package-url" => $this->getPackageUrl(),
466
-			"package-url-expiry" => $this->getPackageUrlExpiry()->format(DateTime::ISO8601),
467
-			"client" => $this->getClient());
468
-	}
469
-	
470
-	/**
471
-	 * Returns an associative that contains all the fields needed to send a
472
-	 * receipt to the client
473
-	 * 
474
-	 * @return array Associative array
475
-	 */
476
-	public function getSendReceiptArray() {
477
-		$receipt = $this->getSendReceiptAlertArray();
478
-		$receipt["command"] = "receipt";
479
-		return $receipt;
480
-	}
481
-	
482
-	/**
483
-	 * Returns an associative that contains all the fields needed to send an
484
-	 * alert to the client
485
-	 * 
486
-	 * @return array Associative array
487
-	 */
488
-	public function getSendAlertArray() {
489
-		$alert = $this->getSendReceiptAlertArray();
490
-		$alert["command"] = "alert";
491
-		return $alert;
492
-	}
46
+    /**
47
+     * PENS Version to be used. Currently, the only valid value is 1.0.0. Required.
48
+     * @var string
49
+     */
50
+    protected $_pens_version = null;
51
+	
52
+    /**
53
+     * Command being used. The only valid values are collect, alert and receipt.Required
54
+     * @var string
55
+     */
56
+    protected $_command = null;
57
+	
58
+    /**
59
+     * Package type being used. The only valid values are aicc-pkg, scorm-pif, ims-qti. Required
60
+     * @var string
61
+     */
62
+    protected $_package_type = null;
63
+	
64
+    /**
65
+     * Package type version. Required
66
+     * @var string
67
+     */
68
+    protected $_package_type_version = null;
69
+	
70
+    /**
71
+     * Package format. The only valid values are zip, url, jar, war and xml. Required
72
+     * @var string
73
+     */
74
+    protected $_package_format = null;
75
+	
76
+    /**
77
+     * Package id. Requires a valid URI according to RFC 2396. Required
78
+     * @var string
79
+     */
80
+    protected $_package_id = null;
81
+	
82
+    /**
83
+     * Package url. Requires a valid, fully qualified URL including transport protocol and filename extension. Required
84
+     * @var string
85
+     */
86
+    protected $_package_url = null;
87
+	
88
+    /**
89
+     * User id required for system to retrieve package from URL. Optional.
90
+     * @var string
91
+     */
92
+    protected $_package_url_user_id = null;
93
+	
94
+    /**
95
+     * Account required for system to retrieve package from URL. Optional.
96
+     * @var string
97
+     */
98
+    protected $_package_url_account = null;
99
+	
100
+    /**
101
+     * Password required for system to retrieve package from URL. Optional.
102
+     * @var string
103
+     */
104
+    protected $_package_url_password = null;
105
+	
106
+    /**
107
+     * Expiry date for package URL. ISO 8601 format expressed as UTC. Will be transformed into a PHP DateTime object during construction. Required
108
+     * @var DateTime
109
+     */
110
+    protected $_package_url_expiry = null;
111
+	
112
+    /**
113
+     * Name or ID for client submitting the content package to the target system. Required.
114
+     * @var string
115
+     */
116
+    protected $_client = null;
117
+	
118
+    /**
119
+     * User-id or sign-on for target system. Optional
120
+     * @var string
121
+     */
122
+    protected $_system_user_id = null;
123
+	
124
+    /**
125
+     * Either a URL-encoded password token or the null string. If the 
126
+     * target system requires a password and the null string value is 
127
+     * passed, then the target system is responsible for prompting for a 
128
+     * password for target system. Optional
129
+     * @var string
130
+     */
131
+    protected $_system_password = null;
132
+	
133
+    /**
134
+     * URL to send acknowledgement receipt after collecting a package. Any URL, including mailto (as per RFC 2368 and RFC 2822). Required.
135
+     * @var string
136
+     */
137
+    protected $_receipt = null;
138
+	
139
+    /**
140
+     * URL to send alerts to while processing the package. Any URL, including mailto (as per RFC 2368 and RFC 2822). Optional.
141
+     * @var string
142
+     */
143
+    protected $_alerts = null;
144
+	
145
+    /**
146
+     * Unstructured character string that may be used to transfer vendor-specific data such as processing hints or deployment information. Optional.
147
+     * @var string
148
+     */
149
+    protected $_vendor_data = null;
150
+	
151
+    /**
152
+     * Constructor
153
+     * 
154
+     * Constructs a PENSRequest based class using the arguments given
155
+     * 
156
+     * @param array Arguments
157
+     */
158
+    public function __construct($arguments) {
159
+        $this->setPensVersion($arguments["pens-version"]);
160
+        $this->setPackageType($arguments["package-type"]);
161
+        $this->setPackageTypeVersion($arguments["package-type-version"]);
162
+        $this->setPackageFormat($arguments["package-format"]);
163
+        $this->setPackageId($arguments["package-id"]);
164
+        $this->setPackageUrl($arguments["package-url"]);
165
+        $this->setPackageUrlUserId($arguments["package-url-user-id"]);
166
+        $this->setPackageUrlAccount($arguments["package-url-account"]);
167
+        $this->setPackageUrlPassword($arguments["package-url-password"]);
168
+        $this->setPackageUrlExpiry($arguments["package-url-expiry"]);
169
+        $this->setClient($arguments["client"]);
170
+        $this->setSystemUserId($arguments["system-user-id"]);
171
+        $this->setSystemPassword($arguments["system-password"]);
172
+        $this->setReceipt($arguments["receipt"]);
173
+        $this->setAlerts($arguments["alerts"]);
174
+        $this->setVendorData($arguments["vendor-data"]);
175
+    }
176
+	
177
+    public function getPensVersion() {
178
+        return $this->_pens_version;
179
+    }
180
+	
181
+    /**
182
+     * Sets the PENS version
183
+     * 
184
+     * @param string PENS version
185
+     * 
186
+     * @throws PENSException with code 2001 if invalid
187
+     */
188
+    public function setPensVersion($pens_version) {
189
+        if($pens_version == PENSConfig::$version) {
190
+            $this->_pens_version = $pens_version;
191
+        } else {
192
+            throw new PENSException(2001);
193
+        }
194
+    }
195
+	
196
+    public function getCommand() {
197
+        return $this->_command;
198
+    }
199
+	
200
+    /**
201
+     * Sets the command
202
+     * 
203
+     * @param string command
204
+     * 
205
+     * @throws PENSException with code 2002 if invalid
206
+     */
207
+    protected function setCommand($command) {
208
+        if(in_array($command, PENSConfig::$allowed_commands)) {
209
+            $this->_command = $command;
210
+        } else {
211
+            throw new PENSException(2002);
212
+        }
213
+    }
214
+	
215
+    public function getPackageType() {
216
+        return $this->_package_type;
217
+    }
218
+	
219
+    /**
220
+     * Sets the package type
221
+     * 
222
+     * @param string package type
223
+     * 
224
+     * @throws PENSException with code 2003 if invalid
225
+     */
226
+    public function setPackageType($package_type) {
227
+        if(in_array($package_type, PENSConfig::$allowed_package_types)) {
228
+            $this->_package_type = $package_type;
229
+        } else {
230
+            throw new PENSException(2003);
231
+        }
232
+    }
233
+	
234
+    public function getPackageTypeVersion() {
235
+        return $this->_package_type_version;
236
+    }
237
+	
238
+    /**
239
+     * Sets the package type version
240
+     * 
241
+     * @param string package type version
242
+     * 
243
+     * @throws PENSException with code 2004 if invalid
244
+     */
245
+    public function setPackageTypeVersion($package_type_version) {
246
+        if(empty($package_type_version)) {
247
+            throw new PENSException(2004);
248
+        } else {
249
+            $this->_package_type_version = $package_type_version;
250
+        }
251
+    }
252
+	
253
+    public function getPackageFormat() {
254
+        return $this->_package_format;
255
+    }
256
+	
257
+    /**
258
+     * Sets the package format
259
+     * 
260
+     * @param string package format
261
+     * 
262
+     * @throws PENSException with code 2005 if invalid
263
+     */
264
+    public function setPackageFormat($package_format) {
265
+        if(in_array($package_format, PENSConfig::$allowed_package_formats)) {
266
+            $this->_package_format = $package_format;
267
+        } else {
268
+            throw new PENSException(2005);
269
+        }
270
+    }
271
+	
272
+    public function getPackageId() {
273
+        return $this->_package_id;
274
+    }
275
+	
276
+    /**
277
+     * Sets the package Id
278
+     * 
279
+     * @param string package Id
280
+     * 
281
+     * @throws PENSException with code 2007 if invalid
282
+     */
283
+    public function setPackageId($package_id) {
284
+        if (preg_match('/'.ABSOLUTEURI_2396.'/', $package_id)) {
285
+            $this->_package_id = $package_id;
286
+        } else {
287
+            throw new PENSException(2007);
288
+        }
289
+    }
290
+	
291
+    public function getPackageUrl() {
292
+        return $this->_package_url;
293
+    }
294
+	
295
+    /**
296
+     * Sets the package url
297
+     * 
298
+     * @param string package url
299
+     * 
300
+     * @throws PENSException with code 2008 if invalid
301
+     */
302
+    public function setPackageUrl($package_url) {
303
+        if (preg_match('/'.ABSOLUTEURI_2396.'/', $package_url) && substr($package_url, -4) == ".".$this->_package_format) {
304
+            $this->_package_url = $package_url;
305
+        } else {
306
+            throw new PENSException(2008);
307
+        }
308
+    }
309
+	
310
+    public function getFilename() {
311
+        return substr(strrchr($this->_package_url, "/"), 1);
312
+    }
313
+	
314
+    public function getPackageUrlUserId() {
315
+        return $this->_package_url_user_id;
316
+    }
317
+	
318
+    public function setPackageUrlUserId($package_url_user_id) {
319
+        if(!empty($package_url_user_id)) {
320
+            $this->_package_url_user_id = $package_url_user_id;
321
+        }
322
+    }
323
+	
324
+    public function getPackageUrlAccount() {
325
+        return $this->_package_url_account;
326
+    }
327
+	
328
+    public function setPackageUrlAccount($package_url_account) {
329
+        if(!empty($package_url_account)) {
330
+            $this->_package_url_account = $package_url_account;
331
+        }
332
+    }
333
+	
334
+    public function getPackageUrlPassword() {
335
+        return $this->_package_url_password;
336
+    }
337
+	
338
+    public function setPackageUrlPassword($package_url_password) {
339
+        if(!empty($package_url_password)) {
340
+            $this->_package_url_password = $package_url_password;
341
+        }
342
+    }
343
+	
344
+    public function getPackageUrlExpiry() {
345
+        return $this->_package_url_expiry;
346
+    }
347
+	
348
+    /**
349
+     * Sets the package url expiry and transforms it into a php DateTime object
350
+     * 
351
+     * @param string package url expiry
352
+     * 
353
+     * @throws PENSException with code 2009 if invalid
354
+     * @todo Perform a better validation of the date
355
+     */
356
+    public function setPackageUrlExpiry($package_url_expiry) {
357
+        if(empty($package_url_expiry)) {
358
+            throw new PENSException(2009);
359
+        } else {
360
+            try {
361
+                $expiry = new DateTime($package_url_expiry, new DateTimeZone('UTC'));
362
+                $this->_package_url_expiry = $expiry;
363
+            } catch(Exception $e) {
364
+                throw new PENSException(2009);
365
+            }
366
+        }
367
+    }
368
+	
369
+    public function getClient() {
370
+        return $this->_client;
371
+    }
372
+	
373
+    /**
374
+     * Sets the client
375
+     * 
376
+     * @param string client
377
+     * 
378
+     * @throws PENSException with code 2010 if invalid
379
+     */
380
+    public function setClient($client) {
381
+        if(!empty($client)) {
382
+            $this->_client = $client;
383
+        } else {
384
+            throw new PENSException(2010);
385
+        }
386
+    }
387
+	
388
+    public function getSystemUserId() {
389
+        return $this->_system_user_id;
390
+    }
391
+	
392
+    public function setSystemUserId($system_user_id) {
393
+        if(!empty($system_user_id)) {
394
+            $this->_system_user_id = $system_user_id;
395
+        }
396
+    }
397
+	
398
+    public function getSystemPassword() {
399
+        return $this->_system_password;
400
+    }
401
+	
402
+    public function setSystemPassword($system_password) {
403
+        if(!empty($system_password)) {
404
+            $this->_system_password = $system_password;
405
+        }
406
+    }
407
+	
408
+    public function getReceipt() {
409
+        return $this->_receipt;
410
+    }
411
+	
412
+    /**
413
+     * Sets the receipt url
414
+     * 
415
+     * @param string receipt url
416
+     * 
417
+     * @throws PENSException with code 2011 if invalid
418
+     */
419
+    public function setReceipt($receipt) {
420
+        if($this instanceof PENSRequestCollect) {
421
+            if (preg_match('/'.ABSOLUTEURI_2396.'/', $receipt)) {
422
+                $this->_receipt = $receipt;
423
+            } else {
424
+                throw new PENSException(2011);
425
+            }
426
+        }
427
+    }
428
+	
429
+    public function getAlerts() {
430
+        return $this->_alerts;
431
+    }
432
+	
433
+    public function setAlerts($alerts) {
434
+        if(!empty($alerts)) {
435
+            if(preg_match('/'.ABSOLUTEURI_2396.'/', $alerts)) {
436
+                $this->_alerts = $alerts;
437
+            } else {
438
+                throw new PENSException(1201);
439
+            }
440
+        }
441
+    }
442
+	
443
+    public function getVendorData() {
444
+        return $this->_vendor_data;
445
+    }
446
+	
447
+    public function setVendorData($vendor_data) {
448
+        if(!empty($vendor_data)) {
449
+            $this->_vendor_data = $vendor_data;
450
+        }
451
+    }
452
+	
453
+    /**
454
+     * Returns an associative that contains all the fields needed to send a
455
+     * receipt or an alert to the client
456
+     * 
457
+     * @return array Associative array
458
+     */
459
+    protected function getSendReceiptAlertArray() {
460
+        return array("pens-version" => $this->getPensVersion(),
461
+            "package-type" => $this->getPackageType(),
462
+            "package-type-version" => $this->getPackageTypeVersion(),
463
+            "package-format" => $this->getPackageFormat(),
464
+            "package-id" => $this->getPackageId(),
465
+            "package-url" => $this->getPackageUrl(),
466
+            "package-url-expiry" => $this->getPackageUrlExpiry()->format(DateTime::ISO8601),
467
+            "client" => $this->getClient());
468
+    }
469
+	
470
+    /**
471
+     * Returns an associative that contains all the fields needed to send a
472
+     * receipt to the client
473
+     * 
474
+     * @return array Associative array
475
+     */
476
+    public function getSendReceiptArray() {
477
+        $receipt = $this->getSendReceiptAlertArray();
478
+        $receipt["command"] = "receipt";
479
+        return $receipt;
480
+    }
481
+	
482
+    /**
483
+     * Returns an associative that contains all the fields needed to send an
484
+     * alert to the client
485
+     * 
486
+     * @return array Associative array
487
+     */
488
+    public function getSendAlertArray() {
489
+        $alert = $this->getSendReceiptAlertArray();
490
+        $alert["command"] = "alert";
491
+        return $alert;
492
+    }
493 493
 	
494 494
 	
495 495
 }
Please login to merge, or discard this patch.