﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;

public class PopupLocationDialog : MonoBehaviour
{
    public Action<int> action;

    public GameObject panel;

    public InputField locationInputField;

    public static void Show(Action<int> action)
    {
        Present(action);
    }

    public static void Present(Action<int> action)
    {
        GameObject popupLocationDialogPanel = GameObject.Find("PopupLocationDialogPanel");

        Image image = popupLocationDialogPanel.GetComponent<Image>();
        image.enabled = true;

        PopupLocationDialog popupLocationDialog = popupLocationDialogPanel.GetComponent<PopupLocationDialog>();
        popupLocationDialog.panel.SetActive(true);
        popupLocationDialog.action = action;
    }

    public static void Dismiss()
    {
        GameObject popupLocationDialogPanel = GameObject.Find("PopupLocationDialogPanel");

        Image image = popupLocationDialogPanel.GetComponent<Image>();
        image.enabled = false;

        PopupLocationDialog popupLocationDialog = popupLocationDialogPanel.GetComponent<PopupLocationDialog>();
        popupLocationDialog.panel.SetActive(false);
    }

    public void OnClick(int tag)
    {
        if (tag == 0)
        {
            action.Invoke(Convert.ToInt32(locationInputField.text));
        }
        else
        {
            action.Invoke(-1);
        }
        
        Dismiss();
    }
}
