//
//  ViewController.swift
//  Sojourn
//
//  Created by Donald Dugger on 4/15/26.
//

import UIKit

class WherePop: PopupLayout {

var delegate: PopupVC?

var itinerary: Itinerary?

var where_inp: PopupInput!
var fmt_inp: PopupInput!

var old_fmt: C.DATE_FMT?

init?()
{

//Log.d("WherePop()")
}

func show(_ sender: PopupVC, data: Any?)
{

//Log.d("WherePop:show()")
    sender.TitleLbl.text = "Trip name"
    itinerary = C.itinerary
    guard let w = itinerary?.get_where() else {
        C.alert("Trip name error", msg: "No itinerary", vc: sender)
        return
    }

    let sv = C.popup_sv(sender)
    where_inp = PopupInput(sv, l_str: "Where to", def: w, key_del: sender)
    old_fmt = C.date_fmt
    fmt_inp = PopupInput(sv, l_str: "Date format", drops: C.fmts, def: old_fmt?.rawValue ?? 0) { t in }
}

func update(_ handler: PopupDelegate?)
{

    itinerary?.set_where(where_inp.get_string())
    C.date_fmt = C.DATE_FMT(rawValue: fmt_inp.get_int()) ?? .MDYYYY
    if C.date_fmt != old_fmt {
        let max = itinerary?.get_day_max() ?? 0
        for i in 0 ..< max {
            let day = itinerary?.get_day(i)
            let str = C.epoch2str(day?.date ?? 0, fmt: old_fmt)
            day?.date = C.str2epoch(str)
        }
    }
    C.put_trip(Json.json2str(itinerary?.marshall() as Any)!)
    C.app_restart()
}

}
