
// ------------ Script für dynamischen Aufbau der "neues.html" ------------------------

/*
Erklärung:

Datum setzen bei Marke Datum. "letzte Aktualisierung..."

Überschrift setzen ins var header Array
-> dort header["nächste Nummer"] = '"Monat":'; eintragen.

inhalt setzen ins var content Array
-> dort content["nächste Nummer"] = '"Inhalt"' eintragen
*/

// ------------ Aktualisieringsfunktion ------------------------

  function displayDate() {

  var Datumtext = document.createTextNode("Letzte Aktualisierung: 29.07.2009 ");  // DATUM setzen

   document.getElementById('aktualisierung').appendChild(Datumtext);
 }


// ------------ CONTENT ------------------------

  var header = new Array();
  header[0] = 'April 2008:';
  header[1] = 'Mai 2008:';
  header[2] = 'Juni 2008:';
  header[3] = 'Juli 2008:';
  header[4] = 'Oktober 2008:';
  header[5] = 'Januar 2009:';
  header[6] = 'Februar 2009:';
  header[7] = 'Juli 2009:';
  header[8] = 'August 2009:';
  header[9] = 'September 2009:';
  header[10] = 'Oktober 2009:';
  header[11] = 'November 2009:';
  header[12] = 'November 2009:';
  header[13] = 'KEEP IT SIMPLE ist endlich Clean'


  var content = new Array();
  content[0] = 'Wir begrüßen unseren neuen Mitarbeiter, Herrn Georges, in unserem Team.';
  content[1] = 'Das Professional Developer College lädt wieder zum beliebten Rhetoriktraining für Softwareprofis ein.';
  content[2] = 'Das erste Release unseres Aktivitätenmanagementtools TaCoS wird veröffentlicht.';
  content[3] = 'Wir ziehen um!';
  content[4] = 'Wir rücken näher ins Stadtzentrum und sind ab sofort in Eimsbüttel beheimatet (Eduardstr. 46 – 48).';
  content[5] = 'Wir suchen ab sofort: eine/n .NET EntwicklerIn und eine/n IT AdministratorIn (+ mehr) http://de.gigajob.com/direktliste-6e475cf935b190d0/index.html';
  content[6] = 'Das Professional Developer College führt ab dem 16.02.09 das erste Clean Code Developer Camp (http://www.clean-code-developer.de) durch, das einzigartige .NET Grundlagenseminar.';
  content[7] = 'Wir feiern das 125. Projekt!'
  content[8] = 'Geplanter Releasetermin für Version 1.1 unseres einzigartigen Projektsteuerungstools TaCoS'
  content[9] = 'Clean Code Developer Camp - Single Developer (Block I) (http://www.prodevcollege.de/produkte-ccdcsingle.html) findet statt.'
  content[10] = 'Clean Code Developer Camp - Single Developer (Block II) findet statt.'
  content[11] = 'School of .NET (http://www.prodevcollege.de/produkte-sonsyncdev.html) findet statt.'
  content[12] = 'Clean Code Developer Camp - Team Developer (http://www.prodevcollege.de/produkte-ccdcteam.html) findet statt.'
  content[13] = 'Dank professioneller Hilfe haben wir unsere Programmiersucht in den Griff bekommen. Ob auch Sie gefährdet sind und was man dagegen tun kann erfahren Sie unter http://www.endlich-clean.net'
// ------------ CONTENT ENDE ------------------------

  function displayText() {

  header.reverse();          //dreht array um, damit man neue Daten anfügen kann
  content.reverse();

  for (i=0; i<header.length; i++) {

    var verlaufscounter =  header.length - 1;

    var div_Element = document.createElement("div");     // div initiert

    var h4_Element = document.createElement("p");        // h4 initiert
     h4_Element.style.fontWeight = "bold";                // wird geboldet
    var h4_Text = document.createTextNode(header[i]);    // Text für h4 initieren

    // Elemente mit Text verbinden
    h4_Element.appendChild(h4_Text);                     // h4 und Text verbinden

    // Schreibe Text
    var p_Element = document.createElement("p");         // P initiert
    var p_Text = document.createTextNode(content[i]); 	// Text für P initiert

     // Suche nach http:....
    var position = /(http:\/\/\S*\b)/g;
    var Suche = p_Text.nodeValue.search(position);    // Position ermitteln
    var Ergebnis = p_Text.nodeValue.match(position);   // Text ermitteln


    // Wenn Link enthalten ist -  - ordne neu
    if(Suche != -1){

     for (var j = 0; j < Ergebnis.length; ++j)       // Länge der a´s

    // substring ermitteln - ersetzen
      var cutter = p_Text.substringData(Suche, Ergebnis[j].length);

      var ende = Suche + cutter.length;

      var end =  p_Text.splitText(ende);
      var middle = p_Text.splitText(Suche);

    // A Element - Der Link wird gesetzt
     var a_Element = document.createElement("a");           // link initiert
     var href_Attribut = document.createAttribute("href");  // href initiert
     href_Attribut.nodeValue = middle.data;                  // Inhalt zuweisen
     var Linktext = document.createTextNode(middle.data);     // Linktext initiert
     a_Element.setAttributeNode(href_Attribut);           // a mit href verbinden
     a_Element.appendChild(Linktext);                     // a mit Text verbinden

     a_Element.onclick = function(evt){                   // in neuem Tab öffnen
       this.target="_blank";
      }

     // Suche nach Klammer
      var firststelle = p_Text.nodeValue.search(/\($/);     // Suchen für Klammer

     if(firststelle != - 1){

       var laststelle = end.nodeValue.search(/\)/);           // Suchen für Klammer

       var endung = end.splitText(laststelle + 1);             //  Splittereien
       var lastcut = end.splitText(laststelle);
       var linktext = a_Element.removeChild(Linktext);
       var firstcut = p_Text.splitText(firststelle);
       var erst_Text = p_Text.splitText(0, p_Text.data.length);

      var span_Element = document.createElement("span");           // span für
      var span_att =  document.createAttribute("class");           // Anfangs
      span_att.nodeValue = "linkcolor";                           // und End-
      span_Element.setAttributeNode(span_att);                    // -Klammer und Link

     // neuer Link gesetzt
      var link_Element = document.createElement("a");           // link initiert
      var href_Attribut = document.createAttribute("href");    // href initiert
      href_Attribut.nodeValue = linktext.data;                  // Inhalt zuweisen
      var Linktext = document.createTextNode(linktext.data);     // Linktext initiert
      link_Element.setAttributeNode(href_Attribut);            // a mit href verbinden
      link_Element.appendChild(Linktext);                      // a mit Text verbinden

      link_Element.onclick = function(evt){                   // in neuem Tab öffnen
       this.target="_blank";
      }

     span_Element.appendChild(firstcut);                      // span zusammengesetzt
     span_Element.appendChild(link_Element);
     span_Element.appendChild(lastcut);

     p_Element.appendChild(erst_Text);
     p_Element.appendChild(span_Element);
     p_Element.appendChild(endung);
    }

    p_Element.appendChild(p_Text);                       // P mit Text füllen
    p_Element.appendChild(a_Element);                    // p mit A füllen
    p_Element.appendChild(end);                          // p mit EndText füllen
  }else {
    p_Element.appendChild(p_Text);
   }


    // Trennlinien-Container
    var line = document.createElement("p");              // Trennverlauf initiert
    var trennlinie = document.createAttribute("class");  // KlassenAttribut initiert
    trennlinie.nodeValue = "trennverlauf";               // Klasse zuweisen
    line.setAttributeNode(trennlinie);                   // p und Klasse verbinden


    // div-Container mit Überschrift und p und Trennlinie verbinden
    div_Element.appendChild(h4_Element);               	// div mit h4 füllen
    div_Element.appendChild(p_Element);               	// div mit p füllen


    // beim letzten div-Container Trennlinie größeren Abstand geben
    if(i != verlaufscounter )
    {
     div_Element.appendChild(line);             	// div mit line füllen
    }
    div_Element.style.marginBottom = "20px";    	   	// Abstände setzen

    // div("textbereich") mit allen Elementen füllen
    document.getElementById("textbereich").appendChild(div_Element);  // div"textbereich" füllen

   }
}

//  Initierung für die Seite
function init() {

   displayDate();
   displayText();

}