// ***********************
// ШАГ 1: вывод iframe и получение доступа к нему
// ***********************

// ***********************
// ШАГ 4: Простейшие элементы редактирования: жирность, курсив, подчеркивание
// ***********************

// Выведем HTML-код этих элементов
var fnt=5;
var fnts=1;
document.writeln("<b id='"+CNTRID_P+"' class='msg_cnt'></b><div class='btns'><input type='button' value='&nbsp;' onclick='setSmall_P(fnts)' class='small' />");
//document.writeln("<input type='button' value='&nbsp;' onclick='setBig_P(fnt)' class='big' />");
document.writeln("<input type='button' value='&nbsp;' onclick='setBold_P()' class='bold' />");
document.writeln("<input type='button' value='&nbsp;' onclick='setItal_P()' class='ital' />");
//document.writeln("<input type='button' value='&nbsp;' onclick='setUnder_P()' class='under' />");
document.writeln("<input type='button' value='&nbsp;' onclick='setStrike_P()' class='strike' />");
document.writeln("<input type='button' value='&nbsp;' onclick='setLink_P()' class='link' /></div>");
//document.writeln("&nbsp;&nbsp;&nbsp;&nbsp;<input type='button' value='Очистить формат' onclick='clearFormat()' class='sim' />");


// Выводим в HTML-поток iframe
document.writeln("<div><iframe scrolling='auto' frameborder='no' src='#' id='"+FRAMEID_P+"' name='"+FRAMEID_P+"'></iframe></div>");
// Определим Gecko-браузеры, т.к. они отличаются в своей работе от Оперы и IE
var isGecko = navigator.userAgent.toLowerCase().indexOf("gecko") != -1;
// Получаем доступ к объектам window & document для ифрейма
var iframe_P = (isGecko) ? document.getElementById(FRAMEID_P) : frames[FRAMEID_P];
var iWin_P = (isGecko) ? iframe_P.contentWindow : iframe_P.window;
var iDoc_P = (isGecko) ? iframe_P.contentDocument : iframe_P.document;

// ***********************
// ШАГ 2: Добавим на пустую страницу ифрейма произвольный HTML-код
// ***********************

// Формируем HTML-код
iHTML_P = "<html><head>\n";
iHTML_P += "<style>\n";
iHTML_P += "body, div, p, td { font-size:17px; font-family:Arial; margin:0px; padding:0px; background-color:#fff; }";
iHTML_P += "body { margin:5px; } html { cursor:text; }";
iHTML_P += "</style>\n";
iHTML_P += "<body></body>";
iHTML_P += "</html>";
// Добавляем его с помощью методов объекта document
iDoc_P.open();
iDoc_P.write(iHTML_P);
iDoc_P.close();

// ***********************
// ШАГ 3: Инициализация свойства designMode объекта document
// ***********************

if (!iDoc_P.designMode) alert("Визуальный режим редактирования не поддерживается Вашим браузером");
else iDoc_P.designMode = (isGecko) ? "on" : "On";

// Запишем код функции, для выставления форматирования
// Используется метод execCommand объекта document
function setBold_P() {
	iWin_P.focus();
	iWin_P.document.execCommand("bold", null, "");
}
function setItal_P() {
	iWin_P.focus();
	iWin_P.document.execCommand("italic", null, "");
}
function setUnder_P() {
	iWin_P.focus();
	iWin_P.document.execCommand("underline", null, "");
}
function setBig_P(sz) {
	iWin_P.focus();
	iWin_P.document.execCommand("fontsize", null, sz);
	if(sz==3) { fnt_P=5; } else { fnt_P=3; }
}
function setSmall_P(sz) {
	iWin_P.focus();
	iWin_P.document.execCommand("fontsize", null, sz);
	if(sz==1) { fnts_P=3; } else { fnts_P=1; }
}
function setStrike_P() {
	iWin_P.focus();
	iWin_P.document.execCommand("StrikeThrough", null, "");
}
function setLink_P() {
	iWin_P.focus();
	var txt_P='';
	if (iWin_P.document.getSelection) {
    txt_P = iWin_P.document.getSelection();
    } else {
	txt_P = iDoc_P.selection.createRange().text;
	}

	if(txt_P=='') {
	alert('Выделите текст ссылки!');
	} else {
	
    var url_P = prompt('Введите URL:', 'http://');
	if(url_P!='' && url_P!='http://') {
    iWin_P.document.execCommand('createlink', false, url_P);
	} else {
	iWin_P.document.execCommand('UnLink', false, "");
	}
	
	iDoc_P.body.innerHTML=iDoc_P.body.innerHTML+'<span>&nbsp;</span>';
	
	}
}
function clearFormat_P() {
	iWin_P.focus();
	iWin_P.document.execCommand("SelectAll", null, "");
	iWin_P.document.execCommand("RemoveFormat", null, "");
	iWin_P.document.execCommand("Unselect", null, "");
}



function count_conF_P(id, cdid, sym) {
var e = iDoc_P.body.innerHTML;
if(!cdid) {
	cdid='msg_cnt';
}
if(!sym) {
	sym=280;
}
document.getElementById(cdid).style.color="#FFFFFF";

var reg=/<[^>]+>/g;
var result=e.replace(reg, '');

var reg2=/&nbsp;/g;
result=result.replace(reg2, '');

var reg3=/\s{2,}/g;
result=result.replace(reg3, ' ');

var symbols=sym-result.length;

if(symbols<=0) {
  document.getElementById(cdid).style.color="#FF0000";
}
return symbols;
}
function count_message_P(id, cdid, sym) {
	if(!cdid) {
	cdid='msg_cnt';
}
if(!sym) {
	sym=280;
}
document.getElementById(cdid).innerHTML=count_conF_P(id, cdid, sym)+' ';
}

function reset_f_P() {
	iDoc_P.body.innerHTML='';
}

