#!/usr/bin/env python3
# Финальная очистка: удалить «Фото домов» (внутри только копии «По объектам») + проверка исходных папок
import json, urllib.request, urllib.parse

tok = None
for line in open("/root/site/yandex/.env_hram", encoding="utf-8"):
    if line.startswith("YANDEX2_ACCESS_TOKEN="):
        tok = line.split("=", 1)[1].strip()
H = {"Authorization": f"OAuth {tok}"}

def ls(path):
    url = "https://cloud-api.yandex.net/v1/disk/resources?path=" + urllib.parse.quote(path) + "&limit=200"
    try:
        return json.loads(urllib.request.urlopen(urllib.request.Request(url, headers=H), timeout=60).read())
    except urllib.error.HTTPError as e:
        return {"err": f"HTTP {e.code}"}

def delete(path):
    url = "https://cloud-api.yandex.net/v1/disk/resources?path=" + urllib.parse.quote(path)
    req = urllib.request.Request(url, method="DELETE", headers=H)
    try:
        with urllib.request.urlopen(req, timeout=120) as r:
            return r.status
    except urllib.error.HTTPError as e:
        return e.code

# 1. Смотрим, что внутри «Фото домов/По объектам» (только копии?)
r = ls("/Фото домов/По объектам")
if "err" in r:
    print("«По объектам»:", r["err"])
else:
    items = r.get("_embedded", {}).get("items", [])
    print("В «По объектам»:", len(items), "элементов (это копии)")

# 2. Удаляем «Фото домов» целиком (копии)
st = delete("/Фото домов")
print("Удаление «Фото домов»:", st)

# 3. Проверка: «Фото домов» не существует
r2 = ls("/Фото домов")
print("«Фото домов» существует?", "нет" if "err" in r2 else "ДА, ОШИБКА!")

# 4. Сверка: ключевые исходные папки содержат файлы
for p in ["/Фото/Фотокамера", "/Добротный дом", "/Компьютеры/Компьютер BLAGOVESTROY"]:
    r3 = ls(p)
    if "err" in r3:
        print(p, "->", r3["err"])
    else:
        items = r3.get("_embedded", {}).get("items", [])
        dirs = [i for i in items if i["type"] == "dir"]
        files = [i for i in items if i["type"] == "file"]
        print(f"{p}: папок {len(dirs)}, файлов {len(files)}")
