"""
Promo Tool — standalone Streamlit app for CMs.

Three pages:
1. Promo Planner — pick SKUs, set period & discount, see P&L impact, save.
2. Promo Forecaster — given a SKU + outcome, recommend discount/duration.
3. Past Promotions — browse historical campaigns from ERP promo calendar.

Reads data from ../data/ (the main project's data folder).
Run with:  python -m streamlit run app.py
"""
# Guard against module-name collisions with promocalendar/promo_data.py:
# pin PromoTool's own dir to the top of sys.path and drop any cached
# `promo_data` entry that a prior Streamlit run may have pointed at the
# sibling Calendar's module.
import sys as _sys
from pathlib import Path as _Path
_HERE = str(_Path(__file__).parent)
_sys.path[:] = [_HERE] + [p for p in _sys.path if p != _HERE]
_sys.modules.pop("promo_data", None)

import streamlit as st

st.set_page_config(
    page_title="Promo Tool",
    page_icon="🎯",
    layout="wide",
    initial_sidebar_state="expanded",
)

import page_planner
import page_forecaster
import page_history
import page_my_proposals
import page_performance
import page_marketing_history


# ---- Sidebar nav ----
with st.sidebar:
    st.markdown("# 🎯 Promo Tool")
    mode = st.radio(
        "Mode",
        ["🛒 Nabava (CM)", "📣 Marketing (Web)"],
        key="promo_mode",
        label_visibility="collapsed",
    )
    st.divider()

    if mode.startswith("🛒"):
        st.caption("CM Action · Planning · Forecasting · History")
        page = st.radio(
            "Page",
            ["🛒 Promo Planner", "📋 Moji prijedlozi", "🔮 Promo Forecaster",
             "📜 Past Promotions", "📊 Promo Performance"],
            key="promo_page_cm",
            label_visibility="collapsed",
        )
    else:
        st.caption("Web kuponi · Magento order log")
        page = st.radio(
            "Page",
            ["📣 Past Web Promotions"],
            key="promo_page_mkt",
            label_visibility="collapsed",
        )
    st.divider()


# ---- Route ----
if mode.startswith("📣"):
    page_marketing_history.render()
elif page.startswith("🛒"):
    page_planner.render()
elif page.startswith("📋"):
    page_my_proposals.render()
elif page.startswith("🔮"):
    page_forecaster.render()
elif page.startswith("📊"):
    page_performance.render()
else:
    page_history.render()
