<!DOCTYPE html>
<html>
<head>
	<title></title>
	<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
	<div align="center">
		<div class="readme">Скрипт форматирует текст для баттхерт-треда.
			<ul>
				<li>Можно не ставить "@", достаточно просто перевести строку, программа сама их расставит.</li>
				<li>Допускается вместо "@" использовать русскую или аглийскую букву "А" любого регистра.</li>
				<li>Любые буквы из строчных станут прописными.</li>
			</ul>
	</div>
		<form id="formText">
		<div class="checkbox">
			<label><input type="checkbox" id="checkLink" value="linkTrue" 
			>Вставить ссылку на программу</label>
		</div>
			<br>
			<textarea id="textButthurt" name="text"></textarea>
			<br>
			<input type="button" id="buttonText" value="Форматировать"><span id="annotation">или Ctrl+Enter / Ctrl+V</span>
		</form>
	</div>
	<script src="script.js"></script>
</body>
</html>
textarea {
	width: 400px;
	height: 400px;
}
.readme {
	width: 400px;
	padding: 0px 0px;
	text-align: left;
}
#buttonText {
	position: relative;
}
#annotation {
	font-style: italic;
	position: absolute;
	padding: 0px 5px;
}
#checkLink {

}
.checkbox {
	width: 400px;
	text-align: left;
}
	var button = document.getElementById('buttonText');
	var textArea = document.getElementById("textButthurt");
	var checkLink = document.getElementById("checkLink");
	
	function parseText() {
		if(!textArea.value) return false;
		var text = textArea.value;
		var arrText = text.split("\n");
		var dog = false;
		for (var i = 0; i < arrText.length; i++) {

			if (arrText[i] == "") continue;

			function nextString() {
				var b = i + 1; 
				if (arrText[b] == "A" || arrText[b] == "a" || arrText[b] == "а" || arrText[b] == "А" || 
					arrText[b] == "@" || arrText[b] == "" || arrText[b] == "**") {
					dog = true;
				} else {
					dog = false;
				}
			}

			nextString();

			if (arrText[i] == "A" || arrText[i] == "a" || arrText[i] == "а" || arrText[i] == "А" || 
					arrText[i] == "@") {

				arrText[i] = "@";
			}  else if (i < (arrText.length - 1) && !dog) {

				arrText[i] = arrText[i].concat("\n@");
			}
			
		}

		text = arrText.join("\n");
		text = text.toUpperCase();


		if (text.indexOf("**") != 0) {
			var newString = "**";
			var newString = newString.concat(text);

			text = newString;
		}


		if (text.lastIndexOf("**") != (text.length - 2) && text.lastIndexOf("**") != (text.length - 1)) {
			var newString = "**";
			var newString = text.concat(newString);

			text = newString;
		}

		var checkingLink = text.indexOf(String(window.location).toUpperCase());

		if (checkLink.checked && checkingLink < 0) text = text.concat("\n\n*" + window.location + "*");

		textArea.value = text;
		textArea.select();
	}

	function ctrlEnter(e) {
		if (textArea.value) {
			button.click();
		}
	}

	function ctrlV(e) {
		if (textArea.value) {
			button.click();
		}
	}

	button.onclick = function (e) {
		parseText();
	}

	window.onkeydown = function(e) {
		if (e.ctrlKey && e.keyCode == 13) ctrlEnter(e);
		
	}
	window.onkeyup = function(e) {
		if (e.ctrlKey && e.keyCode == 86) ctrlV(e);
	}