package merchantapp_uipages;

import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;

import merchantapp_locator.MerchantSecondFormLocator;

public class MerchantSecondForm extends MerchantSecondFormLocator{
public void applicationFormtwo() throws InterruptedException
{
	Actions actions = new Actions(driver);
	Boolean datenotfound = true;
	Thread.sleep(5000);
	genderClick().click();
	List<WebElement> genderlist = genderList();
	genderlist.get(1).click();
	panCard().sendKeys("EGQPB6251D");
	Thread.sleep(2000);
	selectCalenar().click();
	Thread.sleep(5000);
	WebElement moveonmenu = driver.findElement(By.xpath(
			".//div[contains(@class,'rc-calendar-picker rc-calendar-picker-placement-topLeft')]/descendant::div[contains(@class,'rc-calendar')]/descendant::div[contains(@class,'rc-calendar-panel')]"
			+ "/descendant::div[contains(@class,'rc-calendar-date-panel')]"
			+ "/descendant::div[contains(@class,'rc-calendar-header')]/descendant::div/descendant::a[contains(@class,'rc-calendar-prev-year-btn')]"));

	actions.moveToElement(moveonmenu).moveToElement(driver.findElement(By.xpath(
			".//div[contains(@class,'rc-calendar-picker rc-calendar-picker-placement-topLeft')]/descendant::div[contains(@class,'rc-calendar')]/descendant::div[contains(@class,'rc-calendar-panel')]"
			+ "/descendant::div[contains(@class,'rc-calendar-date-panel')]"
			+ "/descendant::div[contains(@class,'rc-calendar-header')]/descendant::div/descendant::a[contains(@class,'rc-calendar-prev-year-btn')]")))
			.click().perform();
	Thread.sleep(1000);
//	actions.moveToElement(moveMenu()).moveToElement(moveMenu()).click().perform();
	Thread.sleep(1000);

	while (datenotfound) {
	
		
		List<WebElement> enabledate=driver.findElements(By.xpath(".//div[contains(@class,'rc-calendar-picker  rc-calendar-picker-placement-topLeft')]"
				+ "/descendant::div[contains(@class,'rc-calendar')]"
				+ "/descendant::div[contains(@class,'rc-calendar-panel')]"
				+ "/descendant::div[contains(@class,'rc-calendar-date-panel')]"
				+ "/descendant::div[contains(@class,'rc-calendar-tbody')]"
				+ "/descendant::tr/descendant::div[contains(@class,'rc-calendar-table')]"
				+ "/descendant::td[contains(@class,'rc-calendar-cell')]"
				+ "/descendant::div[contains(@class,'rc-calendar-date')]"));

		
//		List<WebElement> enabledate = enableDate();
		
		System.out.println(enabledate);
		Thread.sleep(5000);
		
		System.out.println(driver.findElement(By.xpath(".//div[contains(@class,'rc-calendar-picker rc-calendar-picker-placement-topLeft')]/descendant::div[contains(@class,'rc-calendar')]/descendant::div[contains(@class,'rc-calendar-panel')]/descendant::div[contains(@class,'rc-calendar-date-panel')]/descendant::div[contains(@class,'rc-calendar-header')]/descendant::span[contains(@class,'rc-calendar-my-select')]/descendant::a[contains(@class,'rc-calendar-month-select')]")).getText());
		
		
		
//		System.out.println(monthSelection());
		String months = driver.findElement(By.xpath(
				".//div[contains(@class,'rc-calendar-picker rc-calendar-picker-placement-topLeft')]/descendant::div[contains(@class,'rc-calendar')]/descendant::div[contains(@class,'rc-calendar-panel')]/descendant::div[contains(@class,'rc-calendar-date-panel')]/descendant::div[contains(@class,'rc-calendar-header')]/descendant::span[contains(@class,'rc-calendar-my-select')]/descendant::a[contains(@class,'rc-calendar-month-select')]"))
				.getText();
//		String months = monthSelection().getText();
//		Thread.sleep(5000);
		String years = driver.findElement(By.xpath(
				".//div[contains(@class,'rc-calendar-picker rc-calendar-picker-placement-topLeft')]/descendant::div[contains(@class,'rc-calendar')]/descendant::div[contains(@class,'rc-calendar-panel')]/descendant::div[contains(@class,'rc-calendar-date-panel')]/descendant::div[contains(@class,'rc-calendar-header')]/descendant::span[contains(@class,'rc-calendar-my-select')]/descendant::a[contains(@class,'rc-calendar-year-select')]"))
				.getText();
//		String years = yearSelection().getText();

		// If date match with input then goes to this loop.
		if (months.equals("Feb") && years.equals("2004"))

		{

			for (WebElement birthdate : enabledate) {

				String birthdate_select = birthdate.getText();
				if (birthdate_select.equals("11")) {
					birthdate.click();
					break;
				}

			}
			datenotfound = false;
		}
		// If date not match with input then goes to this loop.
		else {
			previousMonth().click();

		}

	}

}
}
