generated from mirzaev/pot
	большая разработка аутентификации
This commit is contained in:
		
							
								
								
									
										74
									
								
								mirzaev/site/account/system/\
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								mirzaev/site/account/system/\
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,74 @@ | ||||
| <?php | ||||
|  | ||||
| declare(strict_types=1); | ||||
|  | ||||
| namespace mirzaev\site\account\controllers; | ||||
|  | ||||
| // Файлы проекта | ||||
| use mirzaev\site\account\controllers\core, | ||||
|   mirzaev\site\account\models\generators\password, | ||||
|   mirzaev\site\account\models\invite; | ||||
|  | ||||
| /** | ||||
|  * Контроллер API | ||||
|  * | ||||
|  * @package mirzaev\site\account\controllers | ||||
|  * @author Arsen Mirzaev Tatyano-Muradovich <arsen@mirzaev.sexy> | ||||
|  */ | ||||
| final class api extends core | ||||
| { | ||||
|   /** | ||||
|    * Проверить существование | ||||
|    * | ||||
|    * @param array $parameters Параметры запроса | ||||
|    *  | ||||
|    * @return string JSON с параметром exist | ||||
|    */ | ||||
|   public function invite_verify(array $parameters = []): string | ||||
|   { | ||||
|     // Инициализация буфера ответа | ||||
|     $return = ['errors' => &$this->errors]; | ||||
|  | ||||
|     // Запрос проверки на существование приглашения | ||||
|     $invite = invite::read($parameters['key'], $this->errors['account']); | ||||
|  | ||||
|     $return['exist'] = isset($invite); | ||||
|  | ||||
|     if ($parameters['from'] == 1) $return['from'] = ['login' => 'mirzaev'] ?? $invite->from(); | ||||
|  | ||||
|     // Запись заголовка ответа | ||||
|     header('Content-Type: application/json'); | ||||
|  | ||||
|     return json_encode($return); | ||||
|   } | ||||
|  | ||||
|   /** | ||||
|    * Сгенерировать классический пароль | ||||
|    * | ||||
|    * @param array $parameters Параметры запроса | ||||
|    *  | ||||
|    * @return string JSON с параметром password | ||||
|    */ | ||||
|   public function password_classic(array $parameters = []): string | ||||
|   { | ||||
|     // Запись заголовка ответа | ||||
|     header('Content-Type: application/json'); | ||||
|  | ||||
|     return json_encode(['password' => password::classic((int) $parameters['length'], $this->errors), 'errors' => $this->errors]); | ||||
|   } | ||||
|  | ||||
|   /** | ||||
|    * Сгенерировать мнемонический пароль | ||||
|    * | ||||
|    * @param array $parameters Параметры запроса | ||||
|    *  | ||||
|    * @return string JSON с параметром password | ||||
|    */ | ||||
|   public function password_mnemonic(array $parameters = []): string | ||||
|   { | ||||
|     // Запись заголовка ответа | ||||
|     header('Content-Type: application/json'); | ||||
|  | ||||
|     return json_encode(['password' => password::mnemonic((int) $parameters['length'], $this->errors), 'errors' => $this->errors]); | ||||
|   } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user