/*>====O--------------------O==== :: Archilles Scriptworld :: >\
| ID-TAG  : Talkboard Forum 2                                  |
| VERSION : 2.0.6 Build 22.05.2006, Mon                        |
| RELEASE : Final Release 1 (Hyperion)                         |
| FILENAME: default.js                                         |
| COMMENT : JavaScript-Routinen für das Forum                  |
|==============================================================|
| Copyright (c) by Archilles, 2003-2006                        |
| HOME: http://www.kh-webcenter.de/                            |
| SUPP: http://forum.kh-webcenter.de/                          |
| MAIL: scripting AT kh-webcenter DOT de                       |
|                                                              |
| Dieses Programm ist freie Software. Sie können es unter den  |
| Bedingungen der GNU General Public License 2, wie von der    |
| Free Software Foundation herausgegeben, weitergeben und/oder |
| modifizieren. Eine Kopie liegt dem Software-Archiv bei.      |
\<====O-------------------------------------------------O====<*/

// In einem Loginfeld kann die Eingabe mit einem MD5-Hash ersetzt werden...
function TBF_Challenge_Response() {
document.loginform.form_pass_digest.value = MD5(document.loginform.form_pass.value);
document.loginform.form_pass.value = "";
}

// Ein Block kann sichtbar geschaltet werden oder nicht...
function TBF_Fold_Controller(strBlockID,intOption){
  if ( intOption == 1 )
  document.getElementById(strBlockID).style.display = "block";
  else if ( intOption == 0 )
  document.getElementById(strBlockID).style.display = "none";
}

// Input-Checkboxen können in einem Rutsch aktiviert oder deaktiviert werden...
function TBF_Quick_Select(strFormName){
var i = 0;
  for ( i = 0 ; i < document.getElementById(strFormName).elements.length ; i++ ){
    if ( document.getElementById(strFormName).elements[i].type == "checkbox" )
    document.getElementById(strFormName).elements[i].checked = !(document.getElementById(strFormName).elements[i].checked);
  }
}

// Einen Parameter mit Trenner in einem Textfeld hinzufügen...
function TBF_Add_Parameter(strFieldID,strValue,strDelimiter){
var strNew = "";
var strRestore = eval(strFieldID).value;

  if ( strRestore.length == 0 )
  strNew = strValue;
  else{
  strLastChar = strRestore.substr(-1,1);
    if ( strLastChar != strDelimiter )
    strNew = strRestore+strDelimiter+strValue;
    else
    strNew = strRestore+strValue;
  }

eval(strFieldID).value = strNew;
}

// Einen Fortschrittsbalken anzeigen
function TBF_Progress_Bar_Init(intWidth,strTitle){
document.write("<div class=\"prbar_clock\" style=\"width: "+intWidth+"px;\" id=\"TBF_ProgressBar\">");
document.write(strTitle+"<br />");
document.write("<div style=\"width: 0px; text-align: center;\" id=\"TBF_ProgressBar_Block\"><input type=\"text\" class=\"prbar_text\" size=\"3\" id=\"TBF_ProgressBar_Text\" value=\"0%\" /></div>");
document.write("</div>");
TBF_Fold_Controller('TBF_ProgressBar',1);
}

function TBF_Progress_Bar_Set(intPercent,intFactor){
var intRatio_UP = Math.round((intPercent/100)*255);
var intRatio_DN = 255-intRatio_UP;
var strColor_RGB = "rgb("+intRatio_DN+","+intRatio_UP+",0)";
document.getElementById('TBF_ProgressBar_Block').style.width = (intPercent*intFactor)+"px";
document.getElementById('TBF_ProgressBar_Block').style.backgroundColor = strColor_RGB;
document.getElementById('TBF_ProgressBar_Text').value = intPercent+"%";
}

function TBF_Progress_Bar_End(){
TBF_Fold_Controller('TBF_ProgressBar',0);
}

function TBF_Do_Topic_Page_Jump(intTID,intPagenum){
intStartv = (Number(intPagenum)-1)*TBF_POSTINGS_PER_PAGE;
strUrl = TBF_TOPIC_URL;
strUrl = strUrl.replace(/&amp;/,"&");
strUrl = strUrl.replace(/&amp;/,"&");
strUrl = strUrl.replace(/R1/,intTID);
strUrl = strUrl.replace(/R2/,intStartv);
location.href = strUrl;
}

function TBF_Get_Page(intTID,intMaxpage){
intPagenum = prompt(TBF_STR_SELECT_PAGE_TO_SHOW,'1');
  if ( intPagenum > 0 )
  TBF_Check_Page(intTID,intPagenum,intMaxpage);
exit;
}

function TBF_Check_Page(intTID,intPagenum,intMaxpage){
  if ( isNaN(intPagenum) || intPagenum > intMaxpage )
  TBF_Get_Page(intTID,intMaxpage);
  else
  TBF_Do_Topic_Page_Jump(intTID,intPagenum);
}


