73 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * Passowrd Policy Api of AlternC, used by alternc-api package
 | |
|  */
 | |
| class Alternc_Api_Object_Policy extends Alternc_Api_Legacyobject {
 | |
| 
 | |
|     /** API Method from legacy class method admin->editPolicy($policy,$minsize,$maxsize,$classcount,$allowlogin)
 | |
|      * @param $options a hash with parameters transmitted to legacy call
 | |
|      * mandatory parameters: policy minsize maxsize classcount allowlogin
 | |
|      * @return Alternc_Api_Response TRUE if the password policy has been updated
 | |
|      */
 | |
|     function update($options) {
 | |
|         $mandatory = array("policy", "minsize", "maxsize", "classcount", "allowlogin");
 | |
|         $missing = "";
 | |
|         foreach ($mandatory as $key) {
 | |
|             if (!isset($options[$key])) {
 | |
|                 $missing.=$key . " ";
 | |
|             }
 | |
|         }
 | |
|         if ($missing) {
 | |
|             return new Alternc_Api_Response(array("code" => self::ERR_INVALID_ARGUMENT, "message" => "Missing or invalid argument: " . $missing));
 | |
|         }
 | |
|         $result = $this->admin->editPolicy($options["policy"], $options["minsize"], $options["maxsize"], $options["classcount"], $options["allowlogin"]);
 | |
|         if (!$result) {
 | |
|             return $this->alterncLegacyErrorManager();
 | |
|         } else {
 | |
|             return new Alternc_Api_Response(array("content" => true));
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /** API Method from legacy class method admin->listPasswordPolicies()
 | |
|      * @param $options a hash with parameters transmitted to legacy call
 | |
|      * no options is used.
 | |
|      * @return Alternc_Api_Response An array with all password policies
 | |
|      */
 | |
|     function find($options) {
 | |
|         $result = $this->admin->listPasswordPolicies();
 | |
| 
 | |
|         if (!$result) {
 | |
|             return $this->alterncLegacyErrorManager();
 | |
|         } else {
 | |
|             return new Alternc_Api_Response(array("content" => $result));
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     /** API Method from legacy class method admin->checkPolicy($policy,$login,$password)
 | |
|      * @param $options a hash with parameters transmitted to legacy call
 | |
|      * mandatory parameters: policy login password
 | |
|      * @return Alternc_Api_Response TRUE if the password match the policy
 | |
|      */
 | |
|     function check($options) {
 | |
|         $mandatory = array("policy", "login", "password");
 | |
|         $missing = "";
 | |
|         foreach ($mandatory as $key) {
 | |
|             if (!isset($options[$key])) {
 | |
|                 $missing.=$key . " ";
 | |
|             }
 | |
|         }
 | |
|         if ($missing) {
 | |
|             return new Alternc_Api_Response(array("code" => self::ERR_INVALID_ARGUMENT, "message" => "Missing or invalid argument: " . $missing));
 | |
|         }
 | |
|         $result = $this->admin->checkPolicy($options["policy"], $options["login"], $options["password"]);
 | |
|         if (!$result) {
 | |
|             return $this->alterncLegacyErrorManager();
 | |
|         } else {
 | |
|             return new Alternc_Api_Response(array("content" => true));
 | |
|         }
 | |
|     }
 | |
| 
 | |
| }
 | |
| 
 | |
| // class Alternc_Api_Object_Account
 |