//--------------------------------------------------
// Script zur Erzeugung einer DienstleistungsAuswahlAPP zur TD WebSeite
// M.Scheider TD, 2015.06.10
// vr. 1.0
//--------------------------------------------------
//Lege Ausgangsdaten fest
//Liste der Dienstleistungen
//Eigenschaften der DivObjekte EinAusSchalter, nr, satzid seite, satzid categorie projekte bezeichnung usw
var ListeDienste = new Array(
"01|2199|44|Termin|Leistungen der Terminsteuerung|knopf2.png|knopf.png",
"02|2211|35|Start|Leistungen zum Projektstart|knopf2.png|knopf.png",
"03|2212|34|Organisation|Leistungen zur Projektorganisation|knopf2.png|knopf.png",
"04|2214|30|Kosten|Kostenmanagement|knopf2.png|knopf.png",
"05|2217|37|Qualität|Qualitätsmanagement|knopf2.png|knopf.png",
"06|2219|29|Konflikt|Konfliktmanagement|knopf2.png|knopf.png",
"07|2220|48|Vertrag|Vertragsmanagement|knopf2.png|knopf.png",
"08|2221|25|Finanzierung|Finanzierungsmanagement|knopf2.png|knopf.png",
"09|2469|66|Innovation|Innovationen bei TD|knopf2.png|knopf.png",
"10|2222|23|Einwendung|Einwendungsmanagment|knopf2.png|knopf.png",
"11|2477|67|Kommunikation|Kommunikation, EDV|knopf2.png|knopf.png",
"12|2478|68|Inbetriebnahme|Inbetriebnahmeprozesse begleiten|knopf2.png|knopf.png",
"13|2479|69|Tools|Diese Tools setzen wir ein|knopf2.png|knopf.png",
"14|2480|70|Prozesse|Manchmal werden Prozesse generiert oder verändert|knopf2.png|knopf.png"
);
//weitere wichtige Infos fest!
var FirmFarbe1="#aa3335"; //ertes Farbe aus dem firmenCI
var FirmFarbe2="#d3d741"; //zweite Frabe aus dem Firmen CI
var SchriftFarbe="#666666"; //für nicht ausgewählte schrift
var SchriftFarbeA=FirmFarbe2; //für ausgewähltes
var InstPfad="";
var abwurfY=250; //von oben
var abwurfX=400; //Abwurfpunkt von links
var abwurfgasseX=332; //Beite der Abwurfgasse links vom Abwurfpunkt
var AbwurfAb=abwurfX-abwurfgasseX; //Abwurfauslösender Punkt
//wir bekommen hier heraus ob wir ein touchclient sind und starten!
var isTouchSupported = 'ontouchstart' in window;
var startEvent = isTouchSupported ? 'Etouch' : 'Emouse';
if (startEvent != "Etouch"){
document.onmousedown=packmich;
document.onmouseup=beenden;
}
else
{
document.ontouchstart=packmich;
document.ontouchend=beenden;
}
//bereitet das Fenster vor und räumt auf
function init()
{
MachSchalter();
beenden();
}
//Zeige Inhalt in neuem Fenster
function ZeigNeuimFenster (Adresse)
{
var zielurl=Adresse;
//alert(zielurl);
var Das1Fenster=window.open(zielurl, "_blank");
Das1Fenster.focus();
}
//Zeige Inhalt in selbem Fenster
function ZeigInhaltimFenster (elemP)
{
MeinFensterI = window.open(elemP, "Drittfenster");
MeinFensterI.document.write(LinkListe);
MeinFensterI.focus();
}
//Das Ding wird angefasst
function packmich(e)
{
//das div objekt wird nach dem mouseklick darauf erkannt und identifiziert und aufgenommen
if(!document.all)
{
objekt=e.target.id;
}
else
{
objekt=event.srcElement.id;
}
if(objekt)
{
var thisElem = document.getElementById(objekt);
var linkP=objekt.substr(0,1);
if (linkP == "K") { //Wenn das ein Linkbutton ist dann zeig das im Fenster an:
var zeigwas = thisElem.alt;
var elemP = thisElem.parentNode;
var zw = confirm("Zeige TD: "+zeigwas+"\n");
if (zw == true) {
//windows.opener.thisElem.click();
ZeigNeuimFenster(elemP);
//window.location.assign(elemP);
}
}
if(!document.all)
{event=e;}
if (startEvent != "Etouch"){
startX=event.clientX;
startY=event.clientY;
}
else
{
startX=event.targetTouches[0].clientX;
startY=event.targetTouches[0].clientY;
}
XpositionAlt=document.getElementById(objekt).style.left;
YpositionAlt=document.getElementById(objekt).style.top;
if (startEvent != "Etouch"){
document.onmousemove=bewegen;
}
else
{
document.ontouchmove=bewegen;
}
return false;
}
}
//Das Ding wird bewegt
function bewegen(e)
{
//es wird das gepackte div. Objekt mit der Maus verschoben und beim Erreichen des Abwurfkorridors abgelegt
if(objekt)
{
contobj_jn=document.getElementById(objekt).id.substr(0,1);
contobj_test=document.getElementById(objekt).id.substr(0,15);
if (contobj_jn != "_") //keine formularobjektef
{
if (contobj_test == "Dienstleistung_") //ein Schalter
{
if(!document.all)
{event=e;}
if (startEvent != "Etouch"){
Xwert=event.clientX-startX;
Ywert=event.clientY-startY;
}
else
{
Xwert=event.targetTouches[0].clientX-startX;
Ywert=event.targetTouches[0].clientY-startY;
}
var startPos=parseInt(XpositionAlt);
var aktpos1=startPos+Xwert;
if(aktpos1 > AbwurfAb)
{
if (aktpos1 < startPos)
{
document.getElementById(objekt).style.left=parseInt(XpositionAlt)+Xwert;
}
else
{
document.getElementById(objekt).style.left=abwurfX;
}
}
else
{
document.getElementById(objekt).style.left=parseInt(XpositionAlt)+Xwert;
}
oidx='_'+document.getElementById(objekt).id+'x';
oidy='_'+document.getElementById(objekt).id+'y';
oidxs=document.getElementById(objekt).style.left.split("px");
oidys=document.getElementById(objekt).style.top.split("px");
document.getElementById(oidx).value = oidxs[0];
document.getElementById(oidy).value = oidys[0];
}
}
}
return false;
}
//Die Schalter werden gebastelt
function MachSchalter()
{
//es muss div box mit id "AblBeschr" und "AblProben" geben
var Liste=ListeDienste;
//Leistungszeile in Bestandteile zerlegen
for (var k in Liste) {
var ListTeil = Liste[k].split("|");
var NrS =ListTeil[0]; //lfd Nr der Leistung
var LKlasse="MSServiceB"; //css klasse des Links
var IKlasse="knopf"; //css klasse des bildes
var SKlasseP="MSServiceS"; //css klasse der SchalterPfanne
var SKlasseS="MSService"; //css klasse des Schalters
var B_ID=InstPfad+"/?post_type=services&p="+ListTeil[1]; //Link zur Beschreibung der Leistg
var P_Cat=InstPfad+"/?page_id=102#category_id_"+ListTeil[2]; //Link zu den Projekten der Leistg
var DBez=ListTeil[3]; //Bezeichnung der Leistung
var DBeschr=ListTeil[4]; //Beschreibung der Leistung
var LogoP=ListTeil[5]; //Leistungslogo f Projekte
var LogoB=ListTeil[6]; //Leistungslogo f Beschreibung
var BAID="BLink"+NrS; //ID des Beschreibungslinks
var PAID="PLink"+NrS; //ID des Projektlinks
var SPID="DienstleistungS_"+NrS; //ID der Schalterpfanne
var SSID="Dienstleistung_"+NrS; //ID des Schalters
var DID="DBeschrieb_"+NrS; //ID des Beschreibungs divs
var PID="DProjekte_"+NrS; //ID des Projekt divs
var KBS="KBeschrieb_"+NrS; //ID des beschr Images
var KPR="KProjekte_"+NrS; //ID des projekt Images
var DZindexA=200+parseInt(NrS); //Zindex des ausgewählten Divs
var DZindexP=parseInt(NrS); //Zindex des ausgewählten Divs Schalterpfanne
var DZindexS=100+parseInt(NrS); //Zindex des ausgewählten Divs Schalters
var FuellerL="
";
//Schalterpfanne
var schalter0 = document.createElement ("div");
schalter0.setAttribute('id', SPID);
schalter0.setAttribute('class', SKlasseP);
schalter0.style.zIndex =DZindexP;
var Br0 = document.createElement("br");
var Text0 = document.createTextNode(DBez);
document.getElementById("BSchalter").appendChild(schalter0);
schalter0.appendChild(Br0);
schalter0.appendChild(Text0);
var vorspann=FuellerL+DBez;
document.getElementById(SPID).innerHTML=vorspann;
//Schalter
var schalter0a = document.createElement ("div");
schalter0a.setAttribute('id', SSID);
schalter0a.setAttribute('class', SKlasseS);
schalter0a.style.zIndex =DZindexS;
document.getElementById("BSchalter").appendChild(schalter0a);
//Beschreibungen
var schalter1 = document.createElement ("div");
schalter1.setAttribute('id', DID);
schalter1.setAttribute('class', LKlasse);
schalter1.style.zIndex =DZindexA;
var link1 = document.createElement ("a");
link1.setAttribute('id', BAID);
link1.href = B_ID;
var img1 = document.createElement("img");
img1.setAttribute('id', KBS);
img1.setAttribute('class', IKlasse);
img1.setAttribute('src', LogoB);
img1.setAttribute('title', DBeschr);
img1.setAttribute('alt', DBeschr);
document.getElementById("AblBeschr").appendChild(schalter1);
schalter1.appendChild(link1);
link1.appendChild(img1);
//Projekte
var schalter2 = document.createElement ("div");
schalter2.setAttribute('id', PID);
schalter2.setAttribute('class', LKlasse);
schalter2.style.zIndex =DZindexA;
var link2 = document.createElement ("a");
link2.setAttribute('id', PAID);
link2.href = P_Cat;
var img2 = document.createElement("img");
img2.setAttribute('id', KPR);
img2.setAttribute('class', IKlasse);
img2.setAttribute('src', LogoP);
img2.setAttribute('title', DBeschr);
img2.setAttribute('alt', DBeschr);
document.getElementById("AblProben").appendChild(schalter2);
schalter2.appendChild(link2);
link2.appendChild(img2);
}
return false;
}
//Es wird nach dem anfassen und bewegen also nach loslassen aufgeräumt und geordnet
function beenden()
{
objekt=false;
//alle divs durchlaufen und STAPEL erzeugen
var Farbeoffen=""; //Farbe kasten Schalter OFF - leer - muss durchsichtig sein
var FarbeSoffen=""; //Farbe kasten SchalterPfanne OFF
var SchalterOff="url(schalter1.png)"; //Grafik Kasten Schalter OFF
var SchalterUOff="url(schalter0.png)"; //Grafik Kasten SchalterPfanne OFF
var SchalterOn="url(schalter2.png)"; //Grafik Kasten Schalter ON
var SchalterUOn="url(schalter0a.png)"; //Grafik Kasten SchalterPfanne ON
var Farbeauswahl=""; //Firmenfarbe für ausgewählten Dienst Schalter - leer - muss durchsichtig sein
var FarbeSauswahl=FirmFarbe1; //Firmenfarbe für ausgewählten Dienst Schalterpfanne
var FarbeauswahlProjekt=FirmFarbe1; //Firmenfarbe für ausgewählten Dienst ProjektLink
var FarbeauswahlBeschr=FirmFarbe1; //Firmenfarbe für ausgewählten Dienst Beschreibunglink
var LinkListe ="