
; -------------------------------Minds-------------------------------
PostToTumblr:
CurrentSite := "Tumblr"
Message = Navigating to Post Creationg Page
SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging")

URLAttempt := NavigateFromBaseURLTo("https://www.tumblr.com/")
if(URLAttempt = "Failed")
Return

Status := CheckCurrentTabForCurrentSite()
if(Status){
	Return
}

; Check Login Status
; ------------------------------------------------
Message = Checking Login Status
SaveOrPostProgress(Message,PostType:="Tooltip")

Xpath = (//button[normalize-space()='Photo'])[1]
try ElementInnerText := driver.findelementbyxpath(Xpath).Attribute("innerText") ;XPATH Inner Text
if(ElementInnerText != "Photo"){
	Message = Site is Logged out. Please log back in.
	SaveOrPostProgress(Message:=Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	Return
}

; Start Text Post
; ------------------------------------------------
Message = Creating New Post
SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging")

Xpath = (//button[normalize-space()='Text'])[1]
Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000)
if(status){
	Message = Failed to Start Post. Check Login Status
	SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	Return
}


Xpath = (//span[@data-rich-text-placeholder='Title'])[1]
Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=PostTitle, ClearElement:=0)
if(status){
	Message = Failed to Input Post Title
	SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	Return
}


Xpath = (//span[@data-rich-text-placeholder='Go ahead, put anything.'])[1]
; newline is needed so the "attach image" to post option appears in the next line down
PostBodyWithNewLine = %PostBody%`n
Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=1,SleepLength:=1000,StringTextContent:=PostBodyWithNewLine, ClearElement:=0)
if(status){
	Message = Failed To Input Post Body
	SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	Return
}


if(ImageAttachmentFilepath){
	; Click into space below the preview image so the "add photo" button shows up
	Xpath = (//div[@class='block-list-appender wp-block'])[1]
	try, driver.FindElementByXPath(Xpath).click()

	; Xpath = (//button[@title='Add photo'])[1]
	; Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000)


	; Click the Photo Icon on the next line down to attach an image
	Xpath = (//button[@title='Add photo'])[1]
	Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000)
	if(status){
		Message = Failed to Click Attach Image Button
		SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
		Return
	}

	; send image filepath to element to attach picture
	Xpath = (//input[@role='button'])[1]
	Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=ImageAttachmentFilepath, ClearElement:=0)
	if(status){
		Message = Failed to Attach Image to Post
		SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
		Return
	}

}

; Input Tags
Xpath = (//textarea[@placeholder='#add tags to help people find your post'])[1]

try, driver.FindElementByXPath(Xpath).SendKeys(PostTags)
try, driver.SendKeys(driver.Keys.Enter)




sleep, 1000


if (ConfirmBeforeSubmit && ConfirmBeforeSubmitMsgboxFunc() != true) {
	Message = User Selected STOP button when asked for confirmation. Cancelling Rest of Site Upload.
	SaveOrPostProgress(Message:=Message, PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	return
}



Xpath = (//span[normalize-space()='Post now'])[1]
Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000)
if(status){
	Message = Failed to Click Post Now Button
	SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	Return
}





/*; start photo post button
Xpath = (//button[normalize-space()='Photo'])[1]
Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000)
if(status){
	Message = Failed to Start Post
	SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
}

if(ImageAttachmentFilepath){
	; Attach Image
	Xpath = (//input[@role='button'])[1]
	Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=ImageAttachmentFilepath, ClearElement:=0)
	if(status){
		Message = Failed to Attach Image
		SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging")
	}
}

; input Text Post
Xpath = (//span[@data-rich-text-placeholder='Go ahead, put anything.'])[1]
Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=)

*/






IniWrite, Successful, %StatusFileFilePath%, Status, %CurrentSite%
AddToTotalPostsPostedCount()

PauseBetweenPosts()
DevModeMsgBox("done!")

Message = Post Publish Successful
SaveOrPostProgress(Message:=Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging")


Return
; -------------------------------/Minds-------------------------------
