# api.v1.settings ### api.v1.settings.clear_all_data(translations: Translations = Depends(translations_dependency)) Очищает данные узлов подсети и точек доступа Wi-Fi в обоих файлах. Удаляет все записи из devices.json и wifi.json. * **Parameters:** **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешной очистке. * **Return type:** dict * **Raises:** **HTTPException** – Если произошла ошибка очистки (status_code=500). ### api.v1.settings.clear_subnet(subnet: str | None = None, translations: Translations = Depends(translations_dependency)) Очищает данные узлов подсети, сохранённые в devices.json. Удаляет все записи об узлах подсети, оставляя файл пустым. * **Parameters:** * **subnet** (*Optional* *[**str* *]*) – Подсеть в формате CIDR (например, “10.1.1.0/24”). Если None, очищает все подсети. * **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешной очистке. * **Return type:** dict * **Raises:** **HTTPException** – Если произошла ошибка очистки (status_code=500). ### api.v1.settings.clear_wifi(translations: Translations = Depends(translations_dependency)) Очищает данные точек доступа Wi-Fi, сохранённые в wifi.json. Удаляет все записи о точках доступа, оставляя файл пустым. * **Parameters:** **translations** – Объект переводов для текущего языка. * **Returns:** Словарь с сообщением об успешной очистке. * **Return type:** dict * **Raises:** **HTTPException** – Если произошла ошибка очистки (status_code=500). ### *async* api.v1.settings.export_devices(request: SubnetScanRequest = Body(PydanticUndefined), translations: Translations = Depends(translations_dependency)) Экспортирует файл с данными устройств в формате JSON для указанной подсети. * **Parameters:** * **request** (*SubnetScanRequest*) – Объект с полем subnet в формате CIDR. * **translations** – Объект переводов для текущего языка. * **Returns:** Файл .json для скачивания. * **Return type:** FileResponse * **Raises:** **HTTPException** – Если файл не найден (status_code=404). ### *async* api.v1.settings.export_wifi(translations: Translations = Depends(translations_dependency)) Экспортирует файл с данными устройств в формате JSON. * **Parameters:** **translations** – Объект переводов для текущего языка. * **Returns:** Файл wifi.json для скачивания. * **Return type:** FileResponse * **Raises:** **HTTPException** – Если файл не найден (status_code=404). ### *async* api.v1.settings.get_system_language(request: Request, translations: Translations = Depends(translations_dependency)) Выводит текущий язык, установленный в системе на основе locale. Выполняет команду ‘locale’ в системе и извлекает параметры LANG * **Parameters:** * **request** (*Request*) – Объект запроса для доступа к параметрам. * **translations** – Объект переводов текущего языка. * **Returns:** Словарь с текущим языком системы. * **Return type:** dict * **Raises:** **HTTPException** – Если не удалось извлечь системный язык (status_code=500). ### api.v1.settings.set_language(locale: str, response: Response, translations: Translations = Depends(translations_dependency)) Устанавливает куку locale для смены языка пользователя. * **Parameters:** * **locale** (*str*) – Используемый язык. * **response** (*Response*) – Запрос. * **translations** – Объект переводов текущего языка. * **Returns:** Сообщение об успешной установке языка. * **Return type:** dict