//-------------------------------------------------------------------------//
//  Module blog  v1.1                                                      //
//  For nuked-klan                                                         //
//  http://www.nuked-klan.org                                              //
//  By Makia                                                               //
//  http://www.genese-graph.com                                            //
//-------------------------------------------------------------------------//
//  This program is free software. you can redistribute it and/or modify   //
//  it under the terms of the GNU General Public License as published by   //
//  the Free Software Foundation; either version 2 of the License.         //
//-------------------------------------------------------------------------//

function reset_blog(id,msg)
{
  if(confirm(msg))
	{
  	document.getElementById(id).value = '';
  	document.getElementById(id).focus();
  	return(document.getElementById(id).value);
  }
}

function align_text(textarea, entertext, tapetext, balise)
{
	if (document.selection && document.selection.createRange().text != '')
	{
		document.getElementById(textarea).focus();
		VarTxt = document.selection.createRange().text;
		document.selection.createRange().text = '[align='+balise+']'+VarTxt+'[/align]';
	}
	else if (document.getElementById(textarea).selectionEnd && (document.getElementById(textarea).selectionEnd - document.getElementById(textarea).selectionStart > 0))
	{
		valeurDeb = document.getElementById(textarea).value.substring( 0 , document.getElementById(textarea).selectionStart );
		valeurFin = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionEnd , document.getElementById(textarea).textLength );
		objectSelected = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionStart , document.getElementById(textarea).selectionEnd );
		document.getElementById(textarea).value = valeurDeb+'[align='+balise+']'+objectSelected+'[/align]'+valeurFin;
	}
	else
	{
		VarTxt = window.prompt(entertext,tapetext);
		if ((VarTxt != null) && (VarTxt != '')) insertAtCaret(textarea, '[align='+balise+']'+VarTxt+'[/align]');
	}
}	

function type_list(textarea, entertext, tapetext,typeList,balise)
{
	type = window.prompt(entertext,typeList);

	if (document.selection && document.selection.createRange().text != '')
	{
		document.getElementById(textarea).focus();
		VarTxt = document.selection.createRange().text;
		document.selection.createRange().text = '[ol='+type+'][olli]'+VarTxt+'[/olli][/ol]';
	}
	else if (document.getElementById(textarea).selectionEnd && (document.getElementById(textarea).selectionEnd - document.getElementById(textarea).selectionStart > 0))
	{
		valeurDeb = document.getElementById(textarea).value.substring( 0 , document.getElementById(textarea).selectionStart );
		valeurFin = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionEnd , document.getElementById(textarea).textLength );
		objectSelected = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionStart , document.getElementById(textarea).selectionEnd );
		document.getElementById(textarea).value = valeurDeb+'[ol='+type+'][olli]'+objectSelected+'[/olli][/ol]'+valeurFin;
	}
	else
	{
		var texteBlog = new Array();
		if((type != '') && (type != null))
		{
			VarTxt = window.prompt(entertext,tapetext);
			texteBlog.push(VarTxt);
		}
		
		while( (VarTxt != '') && (VarTxt != null))
		{
			VarTxt = window.prompt(entertext,tapetext);
			texteBlog.push(VarTxt);
		}

		var count = texteBlog.length ;

		for(i = 0; i < (count - 1) ; i++)
		{
			if(i == 0)
			{
				deb_bal = '[ol='+type+'][olli]';
				fin_bal = '[/olli]';
			}
			else
			{
				deb_bal = '[olli]';
				fin_bal = '[/olli]';
			}
		
			if(i == (count - 2))fin_bal = '[/olli][/ol]';
			if ((texteBlog[i] != null) && (texteBlog[i] != '')) insertAtCaret(textarea, deb_bal + texteBlog[i] + fin_bal);
		}
	}
}

function PopupinsertAtCaret_blog (textarea, code, type, entertext, tapetext)
{ 
	if (type == 'size' || type == 'font' || type == 'color')
 	{
  	deb_bal = '['+type+'='+code+']';
  	fin_bal = '[/'+type+']';
 	}
 	else
 	{
  	varTxt = 'sc';
  	deb_bal = '[sc]';
  	fin_bal = '[/sc]';
 	}

 	if (opener.document.selection && opener.document.selection.createRange().text != '')
 	{
  	opener.document.getElementById(textarea).focus();
  	varTxt = opener.document.selection.createRange().text;
  
		if (type == 'size' || type == 'font' || type == 'color') opener.document.selection.createRange().text = deb_bal+varTxt+fin_bal;
		else opener.document.selection.createRange().text = deb_bal+code+fin_bal;
 	}
	else if (opener.document.getElementById(textarea).createTextRange && opener.document.getElementById(textarea).caretPos) 
 	{ 
  	if (type == 'size' || type == 'font' || type == 'color')
  	{
   		varTxt = window.prompt(entertext,tapetext);
  	}
  
  	var caretPos = opener.document.getElementById(textarea).caretPos; 
  	selectedtext = caretPos.text;
  
  	if (type == 'size' || type == 'font' || type == 'color')
  	{ 
    	if (varTxt != null && varTxt != '' && code != '')
    	{
     		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? deb_bal +varTxt+ fin_bal+ '' : deb_bal +varTxt+ fin_bal;
    	}
  	}
  	else
  	{
   		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? deb_bal +code+ fin_bal+ '' : deb_bal +code+ fin_bal;
  	}
  	
		caretPos.text = caretPos.text + selectedtext;
 	}
 	else if (opener.document.getElementById(textarea).textLength > 0 && (opener.document.getElementById(textarea).selectionEnd - opener.document.getElementById(textarea).selectionStart <= 0))
 	{
  	if (type == 'size' || type == 'font' || type == 'color')
  	{
   		varTxt = window.prompt(entertext,tapetext);
  	}
  	
		valeurDeb = opener.document.getElementById(textarea).value.substring( 0 , opener.document.getElementById(textarea).selectionStart );
  	valeurFin = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionEnd , opener.document.getElementById(textarea).textLength );
  	
		if (type == 'size' || type == 'font' || type == 'color')
  	{
   		if (varTxt != null && varTxt != '') opener.document.getElementById(textarea).value = valeurDeb+deb_bal+varTxt+fin_bal+valeurFin;
  	}
  	else
  	{
   		if (varTxt != null && varTxt != '') opener.document.getElementById(textarea).value = valeurDeb+deb_bal+code+fin_bal+valeurFin;
  	}
 	}
	else if (opener.document.getElementById(textarea).selectionEnd && (opener.document.getElementById(textarea).selectionEnd - opener.document.getElementById(textarea).selectionStart > 0))
 	{
  	valeurDeb = opener.document.getElementById(textarea).value.substring( 0 , opener.document.getElementById(textarea).selectionStart );
  	valeurFin = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionEnd , opener.document.getElementById(textarea).textLength );
  	objectSelected = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionStart , opener.document.getElementById(textarea).selectionEnd );
  
		if (type == 'size' || type == 'font' || type == 'color') opener.document.getElementById(textarea).value = valeurDeb+deb_bal+objectSelected+fin_bal+valeurFin;
  	else opener.document.getElementById(textarea).value = valeurDeb+deb_bal+code+fin_bal+valeurFin;
  }
	else
 	{
  	if (type == 'size' || type == 'font' || type == 'color')
  	{
   		varTxt = window.prompt(entertext,tapetext);
   		
			 if (varTxt != null && varTxt != '') opener.document.getElementById(textarea).value = opener.document.getElementById(textarea).value +deb_bal+varTxt+fin_bal;
  	}
		else
  	{
   		opener.document.getElementById(textarea).value = opener.document.getElementById(textarea).value +deb_bal+code+fin_bal;
  	}
 	}
}

function up_img_blog(textarea,textimgturl,urlImg,type)
{
	if (type == 'url')
	{
 		varImg = window.prompt(textimgturl,'http://');
 		
		 if (varImg.indexOf('http://') == -1) varImg = 'http://'+varImg;
 		 if(varImg != null && varImg != 'http://')
		 {
  		 debBal = '[img]' + varImg ;
  		 finBal = '[/img]';
 		 }
	}
	else
	{
 		debBal = '[img]' + urlImg ;
 		finBal = '[/img]';
	}

 	if (opener.document.getElementById(textarea).createTextRange && opener.document.getElementById(textarea).caretPos) 
 	{ 
  	var caretPos = opener.document.getElementById(textarea).caretPos; 
  	selectedtext = caretPos.text;
  	caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == '' ? debBal+finBal + '' : debBal+finBal;
  	caretPos.text = caretPos.text + selectedtext;
 	}
	else if (opener.document.getElementById(textarea).textLength > 0 && (opener.document.getElementById(textarea).selectionEnd - opener.document.getElementById(textarea).selectionStart <= 0))
 	{
  	valeurDeb = opener.document.getElementById(textarea).value.substring( 0 , opener.document.getElementById(textarea).selectionStart );
  	valeurFin = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionEnd , opener.document.getElementById(textarea).textLength );
  	opener.document.getElementById(textarea).value = valeurDeb+debBal+finBal+valeurFin;
  }
	else if (opener.document.getElementById(textarea).selectionEnd && (opener.document.getElementById(textarea).selectionEnd - opener.document.getElementById(textarea).selectionStart > 0))
 	{
  	valeurDeb = opener.document.getElementById(textarea).value.substring( 0 , opener.document.getElementById(textarea).selectionStart );
  	valeurFin = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionEnd , opener.document.getElementById(textarea).textLength );
  	objectSelected = opener.document.getElementById(textarea).value.substring( opener.document.getElementById(textarea).selectionStart , opener.document.getElementById(textarea).selectionEnd );
  	opener.document.getElementById(textarea).value = valeurDeb+debBal+finBal+valeurFin;
  }
	else
 	{
  	opener.document.getElementById(textarea).value = opener.document.getElementById(textarea).value + debBal+finBal;
 	}
}

//  convertion decimal ver hexa
function Hexa(Dec)
{
  var nb = Dec.toString(16)
  if (nb.length < 2) {nb = "0" + nb}
  return(nb)
}

function GradientPart(dr, dg, db, fr, fg, fb, Step)
{      
  cr=dr;cg=dg;cb=db
  //  Calcul du pas par couleur
  sr=((fr-dr)/Step)  // rouge
  sg=((fg-dg)/Step)  // vert
  sb=((fb-db)/Step)  // bleu
  var Result = ''

  for (var x = 0; x <= Step; x++)
	{
    var cmd = ' onmouseover="document.getElementById(\'ColorCode\').innerHTML=this.bgColor;document.getElementById(\'inputCode\').value=this.bgColor;document.getElementById(\'ColorShow\').style.backgroundColor=this.bgColor;" onclick="javascript:eff();window.close();"';
    Result += '<td class="ColorCell" bgcolor="#' + Hexa(Math.floor(cr)) + Hexa(Math.floor(cg)) + Hexa(Math.floor(cb))+'"' + cmd + '></td>';
    cr += sr; cg += sg; cb += sb;
  }
  return(Result)
}

function WriteRow(a,i)
{
  document.write("<tr>")
  document.write(GradientPart(a,i,i, a,a,i, StepH))
  document.write(GradientPart(a,a,i, i,a,i, StepH))
  document.write(GradientPart(i,a,i, i,a,a, StepH))
  document.write(GradientPart(i,a,a, i,i,a, StepH))
  document.write(GradientPart(i,i,a, a,i,a, StepH))
  document.write(GradientPart(a,i,a, a,i,i, StepH))
  document.write("</tr>")
}

function aff_couleur()
{
	//  ecriture du tableau de dégradé
	document.write('<table cellpadding="0" cellspacing="0" style="border: 1px solid black">')
	StepH = 10
	var StepV = 20
	var i=0
	var a=0
	//  niveau foncé
	for (a=0;a<=255; a+=StepV)
	{
  	WriteRow(a,i)
	}
	
	a=255
	//  niveau clair
	for (i=0; i<=255; i+=StepV)
	{
  	WriteRow(a,i)
	}
	document.write('</table>')
}

function ajout_div(textarea, entertext, tapetext, color, bgcouleur)
{
	if (document.selection && document.selection.createRange().text != '')
	{
		colorDiv = window.prompt (bgcouleur,color);
		document.getElementById(textarea).focus();
		if(colorDiv == null) colorDiv = '';
		VarTxt = document.selection.createRange().text;
		document.selection.createRange().text = '[div='+colorDiv+']'+VarTxt+'[/div]';
	}
	else if (document.getElementById(textarea).selectionEnd && (document.getElementById(textarea).selectionEnd - document.getElementById(textarea).selectionStart > 0))
	{
		colorDiv = window.prompt (bgcouleur,color);
		if(colorDiv == null) colorDiv = '';
		valeurDeb = document.getElementById(textarea).value.substring( 0 , document.getElementById(textarea).selectionStart );
		valeurFin = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionEnd , document.getElementById(textarea).textLength );
		objectSelected = document.getElementById(textarea).value.substring( document.getElementById(textarea).selectionStart , document.getElementById(textarea).selectionEnd );
		document.getElementById(textarea).value = valeurDeb+'[div='+colorDiv+']'+objectSelected+'[/div]'+valeurFin;
	}
	else
	{
		colorDiv = window.prompt (bgcouleur,color);
		if(colorDiv != null) VarTxt = window.prompt(entertext,tapetext);
		if(colorDiv == null) colorDiv = '';
		if (VarTxt != null && VarTxt != '') insertAtCaret(textarea, '[div='+colorDiv+']'+VarTxt+'[/div]');
	}
}

function GradientPartp(dr, dg, db, fr, fg, fb, Step,textarea) 
{      
  cr=dr;cg=dg;cb=db
  //  Calcul du pas par couleur
  sr=((fr-dr)/Step)  // rouge
  sg=((fg-dg)/Step)  // vert
  sb=((fb-db)/Step)  // bleu
  var Result = ''

  for (var x = 0; x <= Step; x++) 
	{
    var cmd = ' onmouseover="document.getElementById(\''+ textarea +'_ct\').value=this.bgColor;document.getElementById(\''+ textarea +'_cl\').style.backgroundColor=this.bgColor;" onclick="'+ textarea +'Color(\''+ textarea +'\');"';
    Result += '<td class="ColorCell" bgcolor="#' + Hexa(Math.floor(cr)) + Hexa(Math.floor(cg)) + Hexa(Math.floor(cb))+'" ' + cmd + '></td>';
    cr += sr; cg += sg; cb += sb;
  }
  return(Result)
}

function WriteRowp(a,i,textarea)
{
  document.write('<tr>')
  document.write(GradientPartp(a,i,i, a,a,i, StepH,textarea))
  document.write(GradientPartp(a,a,i, i,a,i, StepH,textarea))
  document.write(GradientPartp(i,a,i, i,a,a, StepH,textarea))
  document.write(GradientPartp(i,a,a, i,i,a, StepH,textarea))
  document.write(GradientPartp(i,i,a, a,i,a, StepH,textarea))
  document.write(GradientPartp(a,i,a, a,i,i, StepH,textarea))
  document.write('</tr>')
}
function pref_couleur(textarea)
{
	//  ecriture du tableau de dégradé
	document.write('<table cellpadding="0" cellspacing="0" class="color">')
	StepH = 10
	var StepV = 86
	var i=0
	var a=0
	//  niveau foncé
	for (a=0;a<=255; a+=StepV)
	{
  	WriteRowp(a,i,textarea)
	}
	a=255
	//  niveau clair
	for (i=0; i<=255; i+=StepV)
	{
  	WriteRowp(a,i,textarea)
	}
	document.write('</table>')
}
