Ferengi-Masters Terminverwaltung V2

Hallo Martin,

klingt gut - immer her damit, vieleicht eignen sich die Scripte um sie nativ in eine der nächsten Updates der Terminverwaltung einzubinden. Damit ist dann, über einen kleinen Umweg, auch ein Import von Outlookdaten möglich.

Also dann,

erst mal nur der Export ( da macht man noch nichts kaputt :wink: ) :


function export_sunbird()
{
/*=============================================
export_sunbird - Martin Heinzel - 18.03.2010
Version: 1.0

Beschreibung:
In diesem Skript werden die Termine von der Ferengi-Master Terminverwaltung
in eine Sunbird Import-Datei konvertiert.

Änderungen
----------

tt.mm.yyyy von Version x.x -> x.x

Berschreibung:

================================================*/

// Variablen Deklaration --------------------------------------
// ID's

// Variablen
//Ablageort für termine.txt Ferengi Master
$file_ferengi = IPS_GetKernelDir()."media\	ermine.txt";
//Ablageort für kalender.ics Sunbird
$file_sunbird = IPS_GetKernelDir()."media\\kalender.ics";

//String für kompletten Sunbird Datensatz
$Sunbird_DS_komplett = "BEGIN:VCALENDAR"."
"."
";
//-------------------------------------------------------------

//--------------------------- Main ----------------------------
//Daten holen
//Termine in Variable einlesen
$termfile = file_get_contents($file_ferengi);
//nach Zeilenumbruch trennen und in array
$term_arr_komplett = explode("
", $termfile);

//alle Termine durchlaufen
foreach($term_arr_komplett as $key => $value)
{
	//Der erste Datensatz ist "2"
   if($key > 1)
	{

		//einzelnen Datensatz in Daten zerlegen
	   $term_arr = explode(",", $value);

		//Daten den Variablen zuweisen
	   $term_zeitstempel    = $term_arr[0];
		$term_einmalig   		= $term_arr[1];
		$term_jaerlich   		= $term_arr[2];
	   $term_mo         		= $term_arr[3];
   	$term_di         		= $term_arr[4];
   	$term_mi         		= $term_arr[5];
   	$term_do         		= $term_arr[6];
   	$term_fr         		= $term_arr[7];
   	$term_sa         		= $term_arr[8];
   	$term_so         		= $term_arr[9];
   	$term_aktiv      		= $term_arr[10];
   	$term_stunde     		= $term_arr[11];
   	$term_minute     		= $term_arr[12];
   	$term_tag        		= $term_arr[13];
   	$term_monat      		= $term_arr[14];
   	$term_inhalt     		= $term_arr[15];
   	$term_loe	     		= $term_arr[16];
   	$term_trigger    		= $term_arr[17];
   	$term_trigger_para 	= $term_arr[18];

		//Daten für Sunbird zusammenstellen
		
		//In der Kalenderdatei dürfen keine Umlaute existieren
   	$term_inhalt     		= str_replace("Ä", "Ae", $term_inhalt);
   	$term_inhalt     		= str_replace("ä", "ae", $term_inhalt);
   	$term_inhalt     		= str_replace("Ü", "Ue", $term_inhalt);
   	$term_inhalt     		= str_replace("ü", "ue", $term_inhalt);
   	$term_inhalt     		= str_replace("Ö", "Oe", $term_inhalt);
   	$term_inhalt     		= str_replace("ö", "oe", $term_inhalt);

		//Einmalige Termine
		if($term_einmalig and $term_aktiv)
		{
		   //Berechnung des Endtermins
		   $term_minute_ende = $term_minute + 1;
		   If($term_minute_ende < 10)
		   {
		   	$term_minute_ende = "0".$term_minute_ende;
			}

		   //Anlegen des Events
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."BEGIN:VEVENT"."
";
		   //Titel
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."SUMMARY:".$term_inhalt."
";
		   //Kategorie
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."CATEGORIES:Verschiedenes"."
";
		   //Startzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTSTART;TZID=Europe/Berlin:".date("Y").$term_monat.$term_tag."T".$term_stunde.$term_minute."00"."
";
		   //Endzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTEND;TZID=Europe/Berlin:".date("Y").$term_monat.$term_tag."T".$term_stunde.$term_minute_ende."00"."
";
		   //Ort
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."LOCATION:Bocholt"."
";
		   //Beschreibung
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DESCRIPTION:".$term_trigger.",".$term_trigger_para."
";
		   //Event-ENDE
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."END:VEVENT"."
"."
";
		}

		//Wöchentliche Termine
		if(($term_mo or $term_di or $term_mi or $term_do or
			$term_fr or $term_sa or $term_so) and $term_aktiv)
		{

			//Erzeugen des Wochentages von 0-6
			if($term_so)
			{
				$term_weekday = 0;
			}

			if($term_mo)
			{
				$term_weekday = 1;
			}

			if($term_di)
			{
				$term_weekday = 2;
			}

			if($term_mi)
			{
				$term_weekday = 3;
			}

			if($term_do)
			{
				$term_weekday = 4;
			}

			if($term_fr)
			{
				$term_weekday = 5;
			}

			if($term_sa)
			{
				$term_weekday = 6;
			}

			//aktueller Wochentag von 0-6
			$tag = (date("w"));

			//Wann war der Wochentag im Verhältnis zu heute?
			$diff = $term_weekday - $tag;
			$diff_str = $diff.' day';
			$term_date = strtotime ( $diff_str );

   		$term_tag    = date("d",$term_date);
	   	$term_monat  = date("m",$term_date);

		   //Berechnung des Endtermins
		   $term_minute_ende = $term_minute + 1;
		   If($term_minute_ende < 10)
		   {
		   	$term_minute_ende = "0".$term_minute_ende;
			}

		   //Anlegen des Events
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."BEGIN:VEVENT"."
";
		   //Titel
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."SUMMARY:".$term_inhalt."
";
		   //Wöchentliche Termin
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."RRULE:FREQ=WEEKLY"."
";
		   //Kategorie
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."CATEGORIES:Verschiedenes"."
";
		   //Startzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTSTART;TZID=Europe/Berlin:".date("Y").$term_monat.$term_tag."T".$term_stunde.$term_minute."00"."
";
		   //Endzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTEND;TZID=Europe/Berlin:".date("Y").$term_monat.$term_tag."T".$term_stunde.$term_minute_ende."00"."
";
		   //Ort
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."LOCATION:Bocholt"."
";
		   //Beschreibung
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DESCRIPTION:".$term_trigger.",".$term_trigger_para."
";
		   //Event-ENDE
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."END:VEVENT"."
"."
";
		}

		//Jährliche Termine
		if($term_jaerlich and $term_aktiv)
		{
		   //Berechnung des Endtermins
		   $term_tag_ende = $term_tag + 1;
		   If($term_tag_ende < 10)
		   {
		   	$term_tag_ende = "0".$term_tag_ende;
			}

		   //Das erste Wort des Inhalts ist die Kategorie
			//Den Inhalt in einzelne Worte zerlegen
		   $categorie_arr = explode(" ", $term_inhalt);

		   //Anlegen des Events
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."BEGIN:VEVENT"."
";
		   //Titel
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."SUMMARY:".$term_inhalt."
";
		   //Jährlicher Termin
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."RRULE:FREQ=YEARLY"."
";
		   //Kategorie
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."CATEGORIES:".$categorie_arr[0]."
";
		   //Startzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTSTART;VALUE=DATE:".date("Y").$term_monat.$term_tag."
";
		   //Endzeit
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DTEND;VALUE=DATE:".date("Y").$term_monat.$term_tag_ende."
";
		   //Ort
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."LOCATION:Bocholt"."
";
		   //Beschreibung
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."DESCRIPTION:".$term_trigger.",".$term_trigger_para."
";
		   //Event-ENDE
         $Sunbird_DS_komplett = $Sunbird_DS_komplett."END:VEVENT"."
"."
";
		}

   }

}

$Sunbird_DS_komplett = $Sunbird_DS_komplett."END:VCALENDAR"."
";

//Ausgeben in die Importdatei von Sunbird
$handle=fopen($file_sunbird, "w");
fwrite($handle,$Sunbird_DS_komplett);
fclose($handle);

//---------------------- Main Ende ----------------------------
}


Bis dann

Martin

und nun der Import,

Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte, Bitte,

!!! vorher die termine.txt sichern !!!

Ich kann keine Morddrohungen gebrauchen!!!


function import_sunbird()
{
/*=============================================
import_sunbird - Martin Heinzel - 21.03.2010
Version: 1.0

Beschreibung:
In diesem Skript werden die Termine von der Sunbird Terminverwaltung
in die Ferengi-Master termine.txt konvertiert.

Änderungen
----------

tt.mm.yyyy von Version x.x -> x.x

Berschreibung:

================================================*/

// Variablen Deklaration --------------------------------------
// ID's

// Variablen
//Ablageort für termine.txt Ferengi Master
$file_ferengi = IPS_GetKernelDir()."media\	ermine.txt";
//Ablageort für kalender.ics Sunbird
$file_sunbird = IPS_GetKernelDir()."media\\kalender.ics";

//String für kompletten Sunbird Datensatz
$Sunbird_DS_komplett = "";
//String array für Ferengi Terminverwaltung
$term_arr_komplett = array();
$term_arr_komplett[] = "";
$term_arr_komplett[] = ",,,,,,,,,,,,,,,,,,";

//-------------------------------------------------------------

//--------------------------- Main ----------------------------

//Daten holen
//Termine in Variable einlesen
$Sunbird_DS_komplett = file_get_contents($file_sunbird);
//Den kompletten Datensatz zerlegen
$Sunbird_DS_arr_komplett = explode("BEGIN:", $Sunbird_DS_komplett);

//alle Datensätze durchlaufen
foreach($Sunbird_DS_arr_komplett as $key_1 => $value_1)
{

	//Ferengi Daten im Datensatz
	$term_mo       		= "";
	$term_di       		= "";
	$term_mi       		= "";
	$term_do       		= "";
	$term_fr       		= "";
	$term_sa       		= "";
	$term_so       		= "";
	$term_aktiv    		= "";
	$term_stunde   		= "";
	$term_minute   		= "";
	$term_tag     			= "";
	$term_monat    		= "";
	$term_inhalt   		= "";
	$term_loe      		= "";
	$term_trigger      	= "";
	$term_trigger_para  	= "";
	$term_einmalig 		= "";
	$term_jaerlich 		= "";
	$term_woche = "";

	//Der erste Datensatz ist "2"
   if($key_1 > 1)
	{
		//einzelnen Datensatz in Daten zerlegen
	   $Sunbird_arr = explode("
", $value_1);

		//Nur Datensätze vom Typ "VEVENT" und "VTODO" durchlaufen
		if($Sunbird_arr[0] == "VEVENT" or $Sunbird_arr[0] == "VTODO")
		{
			//Daten von Sunbird sind immer aktiv
      	$term_aktiv	= 1;

			//alle Daten durchlaufen
			foreach($Sunbird_arr as $key_2 => $value_2)
			{
				//Daten zerlegen in Parameter und Wert
            $Data_arr = explode(":", $value_2);

				//Kontrolle der Parameter
				Switch($Data_arr[0])
				{

					case "SUMMARY":
			      	$term_inhalt 	= $Data_arr[1];
						break;

					//Wiederholender Termin
					case "RRULE":

					   $freq  	= substr($Data_arr[1], 5, 6);

						if($freq == "YEARLY")
						{
					      $term_jaerlich = 1;
						}

						if($freq == "WEEKLY")
						{
					      $term_woche = 1;
						}
						break;

					//Zeitstempel Datum
					case "DTSTART;VALUE=DATE":
					   $term_jahr  	= substr($Data_arr[1], 0, 4);
					   $term_monat 	= substr($Data_arr[1], 4, 2);
					   $term_tag		= substr($Data_arr[1], 6, 2);
  					   $term_stunde	= "00";
					   $term_minute	= "00";
					   $term_sekunde	= "00";
						break;

					//Zeitstempel Datum und Zeit
					case "DTSTART;TZID=Europe/Berlin":
					   $term_jahr		= substr($Data_arr[1], 0, 4);
					   $term_monat 	= substr($Data_arr[1], 4, 2);
					   $term_tag		= substr($Data_arr[1], 6, 2);
					   $term_stunde	= substr($Data_arr[1], 9, 2);
					   $term_minute	= substr($Data_arr[1],11, 2);
					   $term_sekunde	= substr($Data_arr[1],13, 2);
						break;

					//Beschreibung
					case "DESCRIPTION":

						//Wert zerlegen in Trigger und Parameter
      		      $trigger_arr			= explode(",", $Data_arr[1]);
					   $term_trigger  		= substr($trigger_arr[0], 0, strlen($trigger_arr[0])-1);
   			   	$term_trigger_para 	= $trigger_arr[1];

				}
			}

			//Restliche Daten generieren
			//Time stamp
			$term_timestamp   = mktime((int)$term_stunde, (int)$term_minute, 0, (int)$term_monat, (int)$term_tag, 2000);

			//Termin einmalig
			if($term_jaerlich == "" and $term_woche == "")
			{
				$term_einmalig = 1;
	      	$term_loe  		= 1;
			}

			//Termin wöchentlich
			if($term_woche)
			{

				//wenn Wochenwert gesetzt, Datum auf 0 setzen
				$term_jahr  	= 0;
				$term_monat 	= 0;
				$term_tag		= 0;

				$timestamp   = mktime(0, 0, 0, (int)$term_monat, (int)$term_tag, (int)$term_jahr);
	        	$tag          = date("w", $timestamp);

				//Kontrolle des Wochentages
				Switch($tag)
				{

					case 0:
			      	$term_so         		= 1;
						break;
					case 1:
			      	$term_mo         		= 1;
						break;
					case 2:
			      	$term_di         		= 1;
						break;
					case 3:
			      	$term_mi         		= 1;
						break;
					case 4:
			      	$term_do         		= 1;
						break;
					case 5:
			      	$term_fr         		= 1;
						break;
					case 6:
			      	$term_sa         		= 1;

				}
			}

		   //wenn jährlich gesetzt, Zeit auf 0 setzen
	   	if($term_jaerlich)
	   	{
				$term_stunde	= 0;
				$term_minute	= 0;
				$term_sekunde	= 0;
	   	}

			//Termin array zusammenstellen
			$term_arr[0]  = $term_timestamp;
			$term_arr[1]  = $term_einmalig;
   		$term_arr[2]  = $term_jaerlich;
  		 	$term_arr[3]  = $term_mo;
   		$term_arr[4]  = $term_di;
   		$term_arr[5]  = $term_mi;
   		$term_arr[6]  = $term_do;
   		$term_arr[7]  = $term_fr;
   		$term_arr[8]  = $term_sa;
   		$term_arr[9]  = $term_so;
   		$term_arr[10] = $term_aktiv;
   		$term_arr[11] = $term_stunde;
   		$term_arr[12] = $term_minute;
   		$term_arr[13] = $term_tag;
   		$term_arr[14] = $term_monat;
   		$term_arr[15] = $term_inhalt;
   		$term_arr[16] = $term_loe;
   		$term_arr[17] = $term_trigger;
   		$term_arr[18] = $term_trigger_para;

			//Termin in einen String
			$termin 		  = implode(",", $term_arr);
         $term_arr_komplett[] = $termin;
		}
	}
}


sort($term_arr_komplett); // nach Zeit sortieren
$term_neu_komplett = implode("
", $term_arr_komplett); // in String zurück

//echo $term_neu_komplett;
$handle=fopen($file_ferengi, "w");
fwrite($handle,$term_neu_komplett);
fclose($handle);

//---------------------- Main Ende ----------------------------

}

Limitierung:

In Sunbird können nur Termine vom Typ:

„Wiederholt sich nicht“
„Wöchentlich“
„Jährlich“

angelegt werden. In einer Ausbaustufe kann man das aber ausrollen.

@Ferengi-Master

Du hast ja sowieso im Kopf Monatliche und 14-Tägige Termine zu realisieren.

Beide Skripte laufen bei mir mit der Ferengi-Master V2.3. Da ist der erste Datensatz leer!!!

Bis dann

Martin

PS.: Und was sollt Ihr machen???

Richtig: !!! vorher die termine.txt sichern !!!

So wird eine ausgelagerte Kalenderdatei in Sunbird angelegt.

Bis dann

Martin

Sunbird_1.jpg

Sunbird_2.jpg

Ok, sieht ja ganz gut aus, da es in nicht allzuweiter Ferne eine Update geben wird in dem eine Menge neuer Variablen kommen und eine Konvertierung der alten termine.txt notwendig ist werde ich für meinen Teil mit der Einbindung bis dahin warten. Wir könnnen uns dann ja abstimmen.:wink:

Man könnte die termine.txt komplett als iCalender anlegen. Dann hat sich alles erledigt. Ich stehe da gerne zur Verfügung.

Bis dann und schöne Ostertage

Martin


V2.4b

[ul]
[li] Umstellung des Datensatzes und einiger Variablen!
[/li][li] Bugfix Ansage wöchentliche Termine
[/li][li] Bugfix Feiertag
[/li][li] neu: Monatliche Termine
[/li][li] neu: 14-Tägige Termine
[/li][li] neu: Erinnerungsfunktion
[/li][li] neu: Termine können Gruppen zugeordnet werden
[/li][li] neu: Termine können über eine Liste angezeigt werden
[/li][li] neu: Anzeige Datum und Kalenderwoche
[/li][li] neu: Terminanzeige für einzelne Termine kann an/aus geschalten werden
[/li][/ul]

Ich möchte heute die aktuelle Version der Terminverwaltung ins Forum stellen, diese läuft bei mir seit einigen Wochen ordentlich.
Leider fehlt mir abolut die Zeit eine gute Doku zu machen wie ich es bisher getan habe, weil so viele Neuerungen dazu gekommen sind und ich das Projekt alleine betreibe. Sorry dafür. Ich stehe aber gerne für Fragen bereit.

Download im ersten Beitrag!


Die Version ist Beta und ich bitte eine ordentliche Datensicherung vorher zu machen!

Trotzdem wollte ich Sie allen zur Verfügung stellen, weil ich in nächster Zeit nicht dazu kommen werde etwas daran zu machen.

Hallo,
versuche verzweifelt die Terminverwaltung zu installieren… um die txt mit sunbird zu syncen welchen mit funambol gesynct wird.
leider bekomme ich immer wieder folgenden fehler:

„Notice: Undefined variable: IPS_VARIABLE in [.Terminverwaltung est] on line 1300“

Wenn ich die oben gezeigte funktion zum syncen verwenden will kommt folgende fehlermeldung:

„Notice: Undefined offset: 1 in C:\IP-Symcon\scripts\49121.ips.php on line 140“

Es wird aber folgender inhalt in die datei termine.txt geschrieben:

,
943916400,1,1,2. QM Zirkel,1,
943916400,1,1,3. QM Zirkel,1,
943916400,1,1,Ab ffw blkh,1,
943916400,1,1,Ab pflegedienst,1,
943916400,1,1,Ab veritas,1,
943916400,1,1,Ab veritas,1,
943916400,1,1,Ab veritas,1,
943916400,1,1,Att,1,
943916400,1,1,Att,1,
943916400,1,1,Ausbildung mhlhause,1,
943916400,1,1,Besprechung,1,
943916400,1,1,Danny - Ktw,1,
943916400,1,1,Danny - Rtw,1,
943916400,1,1,Danny -K1,1,
943916400,1,1,Danny -K2,1,
943916400,1,1,Danny -K2,1,
943916400,1,1,Danny -Ktw,1,
943916400,1,1,Danny -Nef,1,
943916400,1,1,Danny -Rtw,1,
943916400,1,1,Danny -Rtw,1,
943916400,1,1,Danny -Wb,1,
943916400,1,1,Danny -Wb,1,
943916400,1,1,Danny -Wb,1,
943916400,1,1,Dirk rechner,1,
943916400,1,1,Futter Heuschrecken,1,
943916400,1,1,Gesprch katschutz,1,
943916400,1,1,Getrnke holen,1,
943916400,1,1,Heilpraktiker,1,
943916400,1,1,K1,1,
943916400,1,1,K2,1,
943916400,1,1,K2,1,
943916400,1,1,K2,1,
943916400,1,1,K2,1,
943916400,1,1,K2,1,
943916400,1,1,Krauti helfen,1,
943916400,1,1,Ks,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Ktw,1,
943916400,1,1,Marli ausbildung,1,
943916400,1,1,Marli ausbildung,1,
943916400,1,1,Mitarbeiterversammlung,1,
943916400,1,1,NEF,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Nef,1,
943916400,1,1,Painten!,1,
943916400,1,1,Perso koch,1,
943916400,1,1,Reifenwechsel,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,Rtw,1,
943916400,1,1,SANH Beinrode,1,
943916400,1,1,Sanh,1,
943916400,1,1,Schlupf EI 1,1,
943916400,1,1,Tiere holen,1,
943916400,1,1,Treffen fischer,1,
943916400,1,1,Treffen hr koch,1,
943916400,1,1,Veritas,1,
943916400,1,1,Veritas,1,
943916400,1,1,Veritas,1,
943916400,1,1,Wachenversammlung,1,
943916400,1,1,Wahl mav,1,
943916400,1,1,nef,1,
943916400,1,1,bung katschutz,1,
948150000,1,1,00,00,18,01,Rtw,1,
949964400,1,1,00,00,08,02,Urlaub,1,
950050800,1,1,00,00,09,02,Tagung Ausbildungsleiter,1,
956181600,1,1,00,00,20,04,Geburtstag von Tim drk,1,
956700000,1,1,00,00,26,04,Urlaub,1,
957045600,1,1,00,00,30,04,Geburtstag von Martchen,1,
958100400,1,1,05,00,12,05,Danny - K1,1,
958284000,1,1,08,00,14,05,Danny- K2,1,
958773600,1,1,00,00,20,05,Danny -Rtw,1,
958860000,1,1,00,00,21,05,Geburtstag von Sund,1,
959464800,1,1,00,00,28,05,Danny -Rtw,1,
962748000,1,1,00,00,05,07,Geburtstag von Stephan Weilan,1,
962834400,1,1,00,00,06,07,Geburtstag von OMA,1,
963352800,1,1,00,00,12,07,Urlaub,1,
967932000,1,1,00,00,03,09,Urlaub,1,
970005600,1,1,00,00,27,09,Geburtstag von Dana,1,
970524000,1,1,00,00,03,10,RTW,1,
970696800,1,1,00,00,05,10,RTW,1,
970696800,1,1,00,00,05,10,Tagung Ausbildungsleiter,1,
970696800,1,1,00,00,05,10,Urlaub,1,
974070000,1,1,00,00,13,11,Geburtstag von Mutter,1,
976143600,1,1,00,00,07,12,Geburtstag von Christian Keitel,1,
976921200,1,1,00,00,16,12,Geburtstag Papa,1,

Vielleicht kann mir jemand von euch beiden helfen?

Grüße
Danny

  1. Welche Version der Terminverwaltung hast Du benutzt?
  2. Hast Du schon Termine über das Dashboard eingegeben, d.h. besteht schon des entsprechende Sheet?

Hallo Danny,

welche Version der Terminverwaltung nutzt Du?
Was ist das für ein Script -> „49121.ips.php“? Import oder Export?

Grundsätzlich:

Ich würde erst die nackte Terminverwaltung in Betrieb nehmen.
Wenn Du dann die ersten Termine in der TV hast, würde ich mit dem Export der Termine anfangen.

Beide Skripte laufen bei mir mit der Ferengi-Master V2.3.

Ich werde am Wochenende die Terminverwaltung auf 2.40b ziehen.
Wenn sie stabil läuft und ich das Script verstanden habe (was bei meinem geistigen Gepäck etwas dauern kann) werde ich die Scripte auf die neue Version anpassen.

Bis dann

Martin

Da die Doku diesmal etwas dürftig ausgefallen ist habe ich eine Beispielconfigs in diesem Thread angehängt: Beispiele
Sonst einfach fragen. Hab diesmal auch nicht soviel Zeit gehabt die hochgeladenen Scripte auf Fehler zu prüfen.

Hallo ihr beiden,

welche Version der Terminverwaltung nutzt Du?

die 2.40beta—> das wird wohl mein problem sein grins

Was ist das für ein Script -> „49121.ips.php“? Import oder Export?

der import von sunbird zu termine.txt denn den export brauch ich ja nicht, will ja nur termine anzeigen

Hast Du schon Termine über das Dashboard eingegeben, d.h. besteht schon des entsprechende Sheet?

nein das sheet besteht noch nicht. da ich ja nur die termine anzeigen lassen will die via sunbird und dem script von schablone in die termine geschrieben werden.

also die daten kommen vom handy, palm, netbook, laptop etc. gehen von jedem der geräte gesynct auf den funamblo server. hier holt sich sunbird alle 5min die daten (das sunbird aufm ips server). soweit steht das system und läuft super. nun sollen die daten nur von ips in termine.txt kopiert werden und diese im dashboard anzeigbar sein.

Im grunde bringt der funamblo server ja alles für eine terminverwaltung via http mit. leider wurde in der community version auf ein vernünftiges frontend verzichtet. man kann nur die termine anklicken und dann bearbeiten. wenn ein ordentliches kalender frontend da wäre dann könnte man es ohne probleme und sehr bequem ins dashboard integrieren. Egal auf welche weise finde ich dieses System absolut genial weil automatisch verschiedenste Systeme miteinander syncronisiert werden können. wer kauft schon outlook nur weil man ein n97 hat?!

viele Grüße

Beschäftige Dich dann ersteinmal die Terminverwaltung inkl. Dashboard Visu ans laufen zu bekommen, die Import/Exportfunktion ist der zweite Schritt.

genau!

Import/Export für Version 2.40b reiche ich nach.

Ich hoffe das ist OK für Dich.

Bis dann

Martin

Hallo zusammen,

habe deine Terminverwaltung versucht zu installieren, ich denke das ich das alles richtig gemacht habe.

Aber ich bekomme immer den Fehler "Undefined offset: 1 in … on line 267 "
das geht dann bis ""Undefined offset: 27 in … on line 290 " also 27 Fehler.

Ich hatte die Terminverwaltung noch nie installiert, habe ich was vergessen ?:confused:
Ich habe die V2.40b versucht zu installieren.

Wenn ich das Script manuell starte bekomme ich folgenden Fehler:

„Notice: Undefined variable: IPS_VARIABLE in .Terminverwaltung erminverwaltung] on line 1300“

Hoffe mir kann einer Helfen.

Gruß Michael

Hallo Michael,

in Zeile 1300 müßte die Variable $id_term_art_liste auftauchen, existiert die Ineger Variable term_art_liste bei Dir im Objektbaum?

btw. Bitte der Terminverwaltung das Ereignis „bei Variablenaktualisierung“ der Variable $term_art_liste das Script terminverwaltung starten hinzufügen

Werde das in der nächsten Version automatisch anlegen lassen.

P.S. Im übrigen sind das alles keine Fehler bei Dir, sondern nur Hinweise, hat er eine termin.txt im von Dir eingestellten Verzeichnis erstellt?

Hallo Ferengi-Master,

die Integer Var ist bei mir vorhanden, Ereignis habe ich hinzugefügt und ich hatte auch im Dashbord alle SYMID nicht angegeben.

Jetz scheint es zu funktionieren, werde mal ein bischen damit rumspielen und probieren.

Danke für die Hilfe! :slight_smile:

Gruß Michael

schade, habe mich zu früh gefreut.

Scheint zwar zu funktionieren aber die Fehlermeldungen sind immer noch da.

Werde das alles nochmal kontrollieren, habe sicher was übersehen.

Gruß Michael

Konntest Du schon einen Termin eingeben? Ist automatisch eine termin.txt angelegt worden?

ups, ist schon spät, habe dein PS übersehen, ok kann also so bleiben ?

Im Script Zeile 8 steht „//Variable für den Pageindex des Dashboards“ was muss da rein ? Die FormularID ?

Gruß Michael