diff --git a/DB/Sprache.sql b/DB/Sprache.sql
index 955482af..333cd8c5 100755
--- a/DB/Sprache.sql
+++ b/DB/Sprache.sql
@@ -528,6 +528,8 @@ INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/schichtpl
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/schichtplan_add.php', 'EN', ' ');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/myschichtplan.php', 'DE', 'Mein Schichtplan');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/myschichtplan.php', 'EN', 'My Shifts');
+INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/myschichtplan_ical.php', 'DE', ' ');
+INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/myschichtplan_ical.php', 'EN', ' ');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/einstellungen.php', 'DE', 'Einstellungen');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/einstellungen.php', 'EN', 'Options');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('nonpublic/wecken.php', 'DE', 'Wecken');
@@ -600,3 +602,5 @@ INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('admin/sprache.php',
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('admin/sprache.php', 'EN', 'Language');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('admin/faq.php', 'DE', 'FAQ');
INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('admin/faq.php', 'EN', 'FAQ');
+INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('pub_myschichtplan_ical', 'DE', 'export my Shifts as iCal file');
+INSERT INTO `Sprache` (`TextID`, `Sprache`, `Text`) VALUES ('pub_myschichtplan_ical', 'EN', 'iCal File exportieren');
diff --git a/DB/UserCVS.sql b/DB/UserCVS.sql
index 971567cc..bddaac10 100644
--- a/DB/UserCVS.sql
+++ b/DB/UserCVS.sql
@@ -28,6 +28,8 @@ CREATE TABLE `UserCVS` (
`nonpublic/newsAddMeting` char(1) NOT NULL default 'N',
`nonpublic/news_comments.php` char(1) NOT NULL default 'Y',
`nonpublic/myschichtplan.php` char(1) NOT NULL default 'Y',
+ `nonpublic/myschichtplan_ical.php` char(1) NOT NULL default 'Y',
+ `nonpublic/schichtplan_beamer.php` char(1) NOT NULL default 'Y',
`nonpublic/engelbesprechung.php` char(1) NOT NULL default 'Y',
`nonpublic/schichtplan.php` char(1) NOT NULL default 'Y',
`nonpublic/schichtplan_add.php` char(1) NOT NULL default 'Y',
@@ -67,9 +69,9 @@ CREATE TABLE `UserCVS` (
-- Daten für Tabelle `UserCVS`
--
-INSERT INTO `UserCVS` (`UID`, `index.php`, `logout.php`, `faq.php`, `lageplan.php`, `makeuser.php`, `nonpublic/index.php`, `nonpublic/news.php`, `nonpublic/newsAddMeting`, `nonpublic/news_comments.php`, `nonpublic/myschichtplan.php`, `nonpublic/engelbesprechung.php`, `nonpublic/schichtplan.php`, `nonpublic/schichtplan_add.php`, `nonpublic/wecken.php`, `nonpublic/waeckliste.php`, `nonpublic/messages.php`, `nonpublic/faq.php`, `nonpublic/einstellungen.php`, `admin/index.php`, `admin/room.php`, `admin/EngelType.php`, `admin/schichtplan.php`, `admin/shiftadd.php`, `admin/schichtplan_druck.php`, `admin/user.php`, `admin/user2.php`, `admin/userDefaultSetting.php`, `admin/UserPicture.php`, `admin/aktiv.php`, `admin/tshirt.php`, `admin/news.php`, `admin/faq.php`, `admin/free.php`, `admin/sprache.php`, `admin/dect.php`, `admin/dect_call.php`, `admin/dbUpdateFromXLS.php`, `admin/Recentchanges.php`, `admin/debug.php`, `Herald`, `Info`, `Conference`) VALUES
+INSERT INTO `UserCVS` (`UID`, `index.php`, `logout.php`, `faq.php`, `lageplan.php`, `makeuser.php`, `nonpublic/index.php`, `nonpublic/news.php`, `nonpublic/newsAddMeting`, `nonpublic/news_comments.php`, `nonpublic/myschichtplan.php`, `nonpublic/myschichtplan_ical.php`, `nonpublic/engelbesprechung.php`, `nonpublic/schichtplan.php`, `nonpublic/schichtplan_add.php`, `nonpublic/wecken.php`, `nonpublic/waeckliste.php`, `nonpublic/messages.php`, `nonpublic/faq.php`, `nonpublic/einstellungen.php`, `admin/index.php`, `admin/room.php`, `admin/EngelType.php`, `admin/schichtplan.php`, `admin/shiftadd.php`, `admin/schichtplan_druck.php`, `admin/user.php`, `admin/user2.php`, `admin/userDefaultSetting.php`, `admin/UserPicture.php`, `admin/aktiv.php`, `admin/tshirt.php`, `admin/news.php`, `admin/faq.php`, `admin/free.php`, `admin/sprache.php`, `admin/dect.php`, `admin/dect_call.php`, `admin/dbUpdateFromXLS.php`, `admin/Recentchanges.php`, `admin/debug.php`, `Herald`, `Info`, `Conference`) VALUES
-(-1, 'Y', 'N', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N'),
+(-1, 'Y', 'N', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N ', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N'),
-- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
-(1, 'N', 'Y', 'N', 'N', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N');
+(1, 'N', 'Y', 'N', 'N', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N');
diff --git a/DEV/HOWTO_create_new_file b/DEV/HOWTO_create_new_file
new file mode 100644
index 00000000..bb6eb02b
--- /dev/null
+++ b/DEV/HOWTO_create_new_file
@@ -0,0 +1,7 @@
+1. Create file
+2. Create DB entry in table UserCVS (admin/userDefaultSetting.php9
+3. update file DB/UserCVS.sql
+4. Create DB entry in table Sprache (admin/sprache.php)
+ When you down't wont a menupount set the Text to ' '
+5. update file DB/Sprache.sql
+
diff --git a/includes/header.php b/includes/header.php
index 54880705..62eaf47a 100755
--- a/includes/header.php
+++ b/includes/header.php
@@ -1,39 +1,5 @@
$_SERVER['REMOTE_ADDR']))
-{
- session_destroy ();
- header("Location: $url". substr($ENGEL_ROOT,1) );
-}
-
-include ("UserCVS.php");
-
-
-//UPdate LASTlogin
-if( isset($_SESSION['UID']))
-{
- $SQLlastLogIn = "UPDATE `User` SET ".
- "`lastLogIn` = '". gmdate("Y-m-j H:i:s", time()). "'".
- " WHERE `UID` = '". $_SESSION['UID']. "' LIMIT 1;";
- mysql_query ($SQLlastLogIn, $con);
-}
-
+include ("header_start.php");
echo "\n";
?>
diff --git a/includes/header_start.php b/includes/header_start.php
new file mode 100755
index 00000000..218a30ec
--- /dev/null
+++ b/includes/header_start.php
@@ -0,0 +1,37 @@
+ $_SERVER['REMOTE_ADDR']))
+{
+ session_destroy ();
+ header("Location: $url". substr($ENGEL_ROOT,1) );
+}
+
+include ("UserCVS.php");
+
+
+//UPdate LASTlogin
+if( isset($_SESSION['UID']))
+{
+ $SQLlastLogIn = "UPDATE `User` SET ".
+ "`lastLogIn` = '". gmdate("Y-m-j H:i:s", time()). "'".
+ " WHERE `UID` = '". $_SESSION['UID']. "' LIMIT 1;";
+ mysql_query ($SQLlastLogIn, $con);
+}
+
+?>
diff --git a/www-ssl/nonpublic/myschichtplan.php b/www-ssl/nonpublic/myschichtplan.php
index 89791343..5c7b304e 100755
--- a/www-ssl/nonpublic/myschichtplan.php
+++ b/www-ssl/nonpublic/myschichtplan.php
@@ -110,6 +110,11 @@ If( !IsSet($_GET["action"]) )
}
echo "\n\n";
+if( $_SESSION['CVS'][ "nonpublic/myschichtplan_ical.php" ] == "Y" )
+{
+ echo "
". Get_Text("pub_myschichtplan_ical"). "\n";
+}
+
}
else
{
diff --git a/www-ssl/nonpublic/myschichtplan_ical.php b/www-ssl/nonpublic/myschichtplan_ical.php
new file mode 100755
index 00000000..dfe06f07
--- /dev/null
+++ b/www-ssl/nonpublic/myschichtplan_ical.php
@@ -0,0 +1,52 @@
+
+
diff --git a/www-ssl/nonpublic/schichtplan_beamer.php b/www-ssl/nonpublic/schichtplan_beamer.php
index 66795a82..25979db2 100755
--- a/www-ssl/nonpublic/schichtplan_beamer.php
+++ b/www-ssl/nonpublic/schichtplan_beamer.php
@@ -1,9 +1,6 @@