import gspread
from google.oauth2 import service_account

S = ['https://www.googleapis.com/auth/spreadsheets', 'https://www.googleapis.com/auth/drive']
c = service_account.Credentials.from_service_account_file('/workspace/.secrets/gsa_safronov.json', scopes=S)
gc = gspread.authorize(c)
sh = gc.open_by_key('1WhRdain7yiMVrI9yACjkpOMaJ5LPRQjbB6IYfV6INhQ')

# --- Вкладка 1: Посты (A=Дата, B=Тема, C=Формат, D=Ссылка/статус). E,F — чекбоксы, не трогаем.
posts = [
    ["05.08", "Кейс Italica: отдел продаж терял половину заявок, поставили ИИ-агента", "Кейс", "опубликован"],
    ["07.08", "Закрываю набор проектов: 9 месяцев медийки и что она дала", "Личное / итоги", "в отложке на 10:00"],
    ["09.08", "Лёгкое: мем или короткая мысль недели", "Лёгкое", ""],
    ["10.08", "Перебил собственника на середине: почему так приходит каждый первый", "Практика", "готов, у Тани на проверке"],
    ["12.08", "Новость недели с разбором", "Новость", "тему ловим в день выхода"],
    ["14.08", "LinkedIn дал кнопку «похоже на ИИ-слоп», hh помечает письма кандидатов", "Новость / разбор", "черновик готов, у Тани"],
    ["16.08", "Дневник агента, выпуск 1: месяц автономной работы, цифры и провалы", "Дневник агента", ""],
    ["18.08", "Практика: где ниша теряет заявки между рекламой и деньгами", "Практика", "материал есть, 10 разборов"],
    ["20.08", "Новость недели с разбором", "Новость", ""],
    ["22.08", "Личное: как устроена работа с командой ИИ-агентов", "Личное", "формат-рекордсмен по реакциям"],
    ["24.08", "Лёгкое", "Лёгкое", ""],
    ["25.08", "Кейс 3 — проект уточняется", "Кейс", "нужна фактура"],
    ["27.08", "Новость недели с разбором", "Новость", ""],
    ["29.08", "Практика с консультации", "Практика", ""],
    ["31.08", "Дневник агента, выпуск 2 + итоги августа", "Дневник агента", ""],
]
ws = sh.worksheet("Посты")
ws.update(values=posts, range_name="A2:D%d" % (1 + len(posts)), value_input_option="USER_ENTERED")

# --- Вкладка 2: Статьи на VC (A=Тема, B=Формат, C=Ссылка/статус). D — чекбокс «Опубликовано», не трогаем.
vc = [
    ["Реклама для студии дизайна интерьера: 5 причин, почему заявки есть, а договоров нет", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама ремонта квартир: 5 мест, где сливается бюджет между заявкой и замером", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама кухонь на заказ: 5 ошибок, из-за которых заявки не доходят до замера", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама строительства домов: 5 мест, где 558 заявок превращаются в 10 договоров", "Кейс на реальных цифрах", "готово, ждёт аккаунт"],
    ["Реклама стоматологии: 5 мест, где заявка не доходит до кресла", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама юридических услуг: 5 ошибок, из-за которых приходят не те клиенты", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама автосервиса: 5 мест, где заявка не доезжает до подъёмника", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама ландшафтного дизайна: 5 причин, почему заявки идут зимой, а деньги нужны летом", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама загородной недвижимости: 5 мест, где клиент теряется между показом и сделкой", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама языковой школы: 5 мест, где ученик теряется между пробным уроком и оплатой", "Обзор ниши", "готово, ждёт аккаунт"],
    ["Реклама детского центра: 5 причин, почему родитель записался и не пришёл", "Обзор ниши", "тема, не написана"],
    ["Реклама клининга: 5 мест, где разовый заказ не превращается в постоянного клиента", "Обзор ниши", "тема, не написана"],
    ["Реклама окон и остекления: 5 ошибок, из-за которых замер стоит дороже договора", "Обзор ниши", "тема, не написана"],
    ["Реклама грузоперевозок: 5 мест, где заявка уходит к тому, кто ответил первым", "Обзор ниши", "тема, не написана"],
    ["Реклама фитнес-клуба: 5 причин, почему абонемент покупают один раз", "Обзор ниши", "тема, не написана"],
    ["Реклама медицинской клиники: 5 мест, где реклама упирается в закон, а не в бюджет", "Обзор ниши", "тема, не написана"],
    ["Отдел продаж не продаёт, а консультирует: как это выглядит в цифрах", "Практика", "сквозная тема"],
    ["Почему дешёвая заявка — плохая новость: что считать вместо стоимости лида", "Практика", "сквозная тема"],
    ["ИИ-агент вместо второго менеджера: где он работает, а где ломается", "Практика + кейс", "сквозная тема"],
    ["Что делать, когда маркетинг перестал быть рентабельным: разбор на живой консультации", "Практика", "сквозная тема"],
]
ws = sh.worksheet("Статьи на VC")
ws.update(values=vc, range_name="A2:C%d" % (1 + len(vc)), value_input_option="USER_ENTERED")

# --- Вкладка 3: Темы рилсов (A=Дата, B=Тема). C — чекбокс «Опубликовано», не трогаем.
reels = [
    "«Отдел продаж не продаёт, он консультирует» — разница в одной фразе",
    "Три вопроса, по которым за минуту видно, сливает ли ваш маркетолог бюджет",
    "Почему дешёвая заявка — это плохо: показать на цифрах одного проекта",
    "Что я спрашиваю на первой консультации и почему собственники смеются",
    "«Инструментов больше нет» — разбор самого частого заблуждения 2026 года",
    "ИИ-агент написал 100 человек за 2 суток: что вышло на самом деле",
    "Как выглядит реклама, которая приносит заявки и не приносит денег",
    "Один экран сайта, из-за которого теряется половина клиентов",
    "Почему красивый сайт и продающий сайт — разные профессии",
    "Сколько на самом деле стоит «бесплатный» пробный урок или замер",
    "Что я делаю в первые 15 минут работы с новым проектом",
    "Три метрики, которые важнее стоимости лида",
    "Как понять, что подрядчик показывает красивый отчёт вместо результата",
    "Почему я закрыл набор клиентов и что это говорит о рынке",
    "Разбор чужой рекламы: что бы я поменял за 5 минут",
    "Мой рабочий день с командой ИИ-агентов: кто что делает",
    "ROAS в кабинете не равен прибыли: проверка за две минуты",
    "Автотаргет в Директе не отключается. Что с этим делать",
    "Медийка не приводит клиентов — она приводит тех, кто вас рекомендует",
    "Как отличить настоящего ИИ-агента от «агента», который на самом деле промпт",
    "Выключи брендовый поиск — узнаешь, платил ли за тех, кто и так купил бы",
    "Сезонность: выключили рекламу в низкий сезон и удивились марту",
]
ws = sh.worksheet("Темы рилсов инста")
ws.update(values=[["", t] for t in reels], range_name="A2:B%d" % (1 + len(reels)), value_input_option="USER_ENTERED")

print("OK posts=%d vc=%d reels=%d" % (len(posts), len(vc), len(reels)))
