/*
	perhaps:
		quinoa 
			--stage venue
			--status pocket_pair
			--result trio

		qinoa
			--stage venue
			--status pocket_pair
			--result trio_or_quads

*/

use cliclack::{ intro, outro };
use cliclack::select;

pub fn suggestions () -> Result<(
	&'static str,
	&'static str, 
	&'static str, 
	&'static str
), Box<dyn std::error::Error>> {
	intro ("create-my-app")?;
	

	let mut stage = "";
	let mut status = "";
	let mut play = "";
	let mut use_previous_result = "Affirmative";

	
	stage = select ("Stage")
		.item ("Desktop", "Desktop (Blank Note)", "")
		.item ("Venue", "Venue", "")
		.item ("Flop", "Flop", "")
		.item ("Turn", "Turn", "")
		.item ("River", "River", "")
		.interact()?;
	
	

	
	/*
		Perhaps:
			Venue -> Pockets
				Flop	Turn	River
				
		https://crates.io/crates/tabled
		https://crates.io/crates/cliclack
	*/
	if (stage == "Notepad") {}
	else {
		if (stage == "Venue") {
			status = select ("Status")
				.item ("2 Leagued", "EQ Tier x2 [Every 17.00]", "")
				.item ("2 Teamed", "EQ Team x2 [Every 4.25]", "")
				.item ("2 Different Leagues", "2 Different Leagues", "")
				.item (
					"Connected Mids", 
					"Connected Mids", ""
				)
				.interact()?;
			
			if (status == "2 Leagued") {
				play = select ("Play")
					.item (
						"2 Leagued Full Results", 
						"2 Leagued Full Results", ""
					)
					.item (
						"Venue :: 2 Leagued :: to 3 or 4", 
						"to 3 or 4", ""
					)
					.item (
						"Venue :: 2 Leagued :: to exactly 3", 
						"to exactly 3", ""
					)
					.item (
						"Venue :: 2 Leagued :: to exactly 4", 
						"to exactly 4", ""
					)
					.interact()?;
			}
			else if (status == "2 Teamed") {
				play = select ("Play")
					.item (
						"Venue :: 2 Teamed :: to exactly 5 Team", 
						"2 Teamed :: to exactly 5 Team", ""
					)
					.item (
						"Venue :: 2 Teamed :: to exactly 4 Team", 
						"2 Teamed :: to exactly 4 Team", ""
					)
					.interact()?;
			}
			else if (status == "2 Different Leagues") {
				play = select ("Play")
					.item (
						"Both Pair", 
						"Both Pair", ""
					)
					.interact()?;
			}
			else if (status == "Connected Mids") {
				
			}
		}
		else if (stage == "Flop") {
			play = select ("Play")
				.item (
					"Flop :: 4 Teamed :: to exactly 5 Team", 
					"Flop :: 4 Teamed :: to exactly 5 Team", 
					""
				)
				.item (
					"Flop :: 4 Sequential :: to Straight", 
					"Flop :: 4 Sequential :: to Straight", 
					""
				)
				.interact()?;
		}
		
		use_previous_result = select ("Use Previous Results")
			.item ("Affirmative", "Affirmative", "")
			.item ("Negative", "Negative", "")
			.interact()?;
	}
	
	
	
	outro ("")?;
	
	println!("You picked: {}", play);

    Ok ((stage, play, status, use_previous_result))
}