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

public class TextFieldTwoDialog : MonoBehaviour
{
    public Action<string, string> action;

    public GameObject panel;

    public InputField inputField1;
    public InputField inputField2;

    public static void Show(string placeHolder1, string placeHolder2, Action<string, string> action)
    {
        Present(placeHolder1, placeHolder2, action);
    }

    public static void Present(string placeHolder1, string placeHolder2, Action<string, string> action)
    {
        GameObject textFieldTwoDialogPanel = GameObject.Find("TextFieldTwoDialogPanel");

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

        TextFieldTwoDialog textFieldTwoDialog = textFieldTwoDialogPanel.GetComponent<TextFieldTwoDialog>();
        textFieldTwoDialog.panel.SetActive(true);
        textFieldTwoDialog.action = action;

        textFieldTwoDialog.inputField1.text = "";
        textFieldTwoDialog.inputField2.text = "";

        textFieldTwoDialog.inputField1.placeholder.GetComponent<Text>().text = placeHolder1;
        textFieldTwoDialog.inputField2.placeholder.GetComponent<Text>().text = placeHolder2;
    }

    public static void Dismiss()
    {
        GameObject textFieldTwoDialogPanel = GameObject.Find("TextFieldTwoDialogPanel");

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

        TextFieldTwoDialog textFieldTwoDialog = textFieldTwoDialogPanel.GetComponent<TextFieldTwoDialog>();
        textFieldTwoDialog.panel.SetActive(false);
    }

    public void OnClick(int tag)
    {
        if (tag == 0)
        {
            action.Invoke(inputField1.text, inputField2.text);
        }
        else
        {
            action.Invoke(null, null);
        }

        Dismiss();
    }
}
