diff --git a/config/global.config-default.inc.php b/config/global.config-default.inc.php
index 602276eb3..841d5c519 100644
--- a/config/global.config-default.inc.php
+++ b/config/global.config-default.inc.php
@@ -15,6 +15,13 @@ define('LVPLAN_ANMERKUNG_ANZEIGEN',true);
//Gruppieren zeitgleicher Lehreinheiten im LV-Plan
define('LVPLAN_LEHREINHEITEN_GRUPPIEREN',true);
+// Ende-Datum des LVPlan Syncs Format: 2014-02-01
+// Wenn leer wird jeweils bis Semesterende gesynct
+define('LVPLAN_SYNC_ENDE','');
+
+// Soll nach dem LVPlan Sync automatisch das Horde Sync angestoßen werden
+define('LVPLAN_HORDE_SYNC',false);
+
/*
* VORRUECKUNG_LEHRVERBAND_MAX_SEMESTER
* leer: Studentlehrverband Semester wird bei der Vorrueckung normal weitergezaehlt bis zum max_semester des Studienganges
diff --git a/system/sync/sync_stpldev_stpl.php b/system/sync/sync_stpldev_stpl.php
index b8eb6ea4d..cbe09ee4a 100644
--- a/system/sync/sync_stpldev_stpl.php
+++ b/system/sync/sync_stpldev_stpl.php
@@ -72,7 +72,9 @@ $ss->getNearestTillNext();
$datum_begin=$ss->start;
$datum_ende=$ss->ende;
//$datum_begin='2012-08-03';
-$datum_ende='2013-02-02'; // $ss->ende
+//$datum_ende='2013-02-02'; // $ss->ende
+if(defined('LVPLAN_SYNC_ENDE') && LVPLAN_SYNC_ENDE!='')
+ $datum_ende=LVPLAN_SYNC_ENDE;
$stgwhere = '';
$stgwheredev = '';
@@ -243,6 +245,9 @@ else
{
if (!isset($message[$row->uid]->isneu))
{
+ if(!isset($message[$row->uid]))
+ $message[$row->uid] = new stdClass();
+
$message[$row->uid]->isneu=true;
$message[$row->uid]->mailadress=$row->uid.'@'.DOMAIN;
$message[$row->uid]->message_begin=$message_begin.'
';
@@ -265,6 +270,9 @@ else
{
if (!isset($message[$student]->isneu))
{
+ if(!isset($message[$student]))
+ $message[$student] = new stdClass();
+
$message[$student]->isneu=true;
$message[$student]->mailadress=$student.'@'.DOMAIN;
$message[$student]->message_begin=$message_begin.'
';
@@ -328,6 +336,9 @@ else
{
if (!isset($message[$row->uid]->isalt))
{
+ if(!isset($message[$row->uid]))
+ $message[$row->uid] = new stdClass();
+
$message[$row->uid]->isalt=true;
$message[$row->uid]->mailadress=$row->uid.'@'.DOMAIN;
$message[$row->uid]->message_begin=$message_begin.'
';
@@ -350,6 +361,9 @@ else
{
if (!isset($message[$student]->isalt))
{
+ if(!isset($message[$student]))
+ $message[$student] = new stdClass();
+
$message[$student]->isalt=true;
$message[$student]->mailadress=$student.'@'.DOMAIN;
$message[$student]->message_begin=$message_begin.'
';
@@ -477,6 +491,8 @@ else
{
if (!isset($message[$row->uid]->isset))
{
+ if(!isset($message[$row->uid]))
+ $message[$row->uid] = new stdClass();
$message[$row->uid]->isset=true;
$message[$row->uid]->mailadress=$row->uid.'@'.DOMAIN;
$message[$row->uid]->message_begin=$message_begin.'
';
@@ -519,6 +535,9 @@ else
{
if (!isset($message[$row->old_uid]->isset))
{
+ if(!isset($message[$row->old_uid]))
+ $message[$row->old_uid] = new stdClass();
+
$message[$row->old_uid]->isset=true;
$message[$row->old_uid]->mailadress=$row->old_uid.'@'.DOMAIN;
$message[$row->old_uid]->message_begin=$message_begin.'
';
@@ -560,6 +579,9 @@ else
{
if (!isset($message[$student]->isset))
{
+ if(!isset($message[$student]))
+ $message[$student] = new stdClass();
+
$message[$student]->isset=true;
$message[$student]->mailadress=$student.'@'.DOMAIN;
$message[$student]->message_begin=$message_begin.'
';
@@ -621,52 +643,56 @@ if ($sendmail)
}
}
}
-// Alle User bei denen sich der LVPlan veraendert hat
-// werden in ein File gesichert. Bei diesen Personen wird der LVPlan im Horde aktualisiert
-$users=array();
-foreach ($message as $uid=>$msg)
+
+if(defined('LVPLAN_HORDE_SYNC') && LVPLAN_HORDE_SYNC===true)
{
- $users[]=$uid;
-}
-
-$uidfile = DOC_ROOT.'../system/hordelvplansync/lvplanupdate.txt';
-
-// Letzte Durchlaufzeit des Scripts holen
-// anhand der Aenderungszeit des Textfiles mit den UIDs
-if(!$lastmod = filemtime($uidfile))
- $lastmod=time()-86400; // Wenn die Zeit nicht ermittelt werden kann, werden die letzten 24 Std genommen
-
-// Zusaetzlich jene holen, bei denen sich die Reservierungen geaendert haben
-$qry = "SELECT * FROM campus.tbl_reservierung WHERE insertamum>'".date('Y-m-d H:i:s',$lastmod)."'";
-
-if($result = $db->db_query($qry))
-{
- while($row = $db->db_fetch_object($result))
+ // Alle User bei denen sich der LVPlan veraendert hat
+ // werden in ein File gesichert. Bei diesen Personen wird der LVPlan im Horde aktualisiert
+ $users=array();
+ foreach ($message as $uid=>$msg)
{
- $users[] = $row->uid;
- //Wenn fuer eine Gruppe reserviert wurde, dann die Personen aus der Gruppe holen
- if($row->semester!='' || $row->verband!='' || $row->gruppe!='' || $row->gruppe_kurzbz!='')
+ $users[]=$uid;
+ }
+
+ $uidfile = DOC_ROOT.'../system/hordelvplansync/lvplanupdate.txt';
+
+ // Letzte Durchlaufzeit des Scripts holen
+ // anhand der Aenderungszeit des Textfiles mit den UIDs
+ if(!$lastmod = filemtime($uidfile))
+ $lastmod=time()-86400; // Wenn die Zeit nicht ermittelt werden kann, werden die letzten 24 Std genommen
+
+ // Zusaetzlich jene holen, bei denen sich die Reservierungen geaendert haben
+ $qry = "SELECT * FROM campus.tbl_reservierung WHERE insertamum>'".date('Y-m-d H:i:s',$lastmod)."'";
+
+ if($result = $db->db_query($qry))
+ {
+ while($row = $db->db_fetch_object($result))
{
- $studenten = getStudentsFromGroup($row->studiengang_kz, $row->semester, $row->verband, $row->gruppe, $row->gruppe_kurzbz, $ss->studiensemester_kurzbz);
- $users = array_merge($users, $studenten);
+ $users[] = $row->uid;
+ //Wenn fuer eine Gruppe reserviert wurde, dann die Personen aus der Gruppe holen
+ if($row->semester!='' || $row->verband!='' || $row->gruppe!='' || $row->gruppe_kurzbz!='')
+ {
+ $studenten = getStudentsFromGroup($row->studiengang_kz, $row->semester, $row->verband, $row->gruppe, $row->gruppe_kurzbz, $ss->studiensemester_kurzbz);
+ $users = array_merge($users, $studenten);
+ }
}
}
-}
-// geaenderte User in Textfile schreiben
-$users = array_unique($users);
-if(count($users)>0)
-{
- if($fp = fopen($uidfile, 'w'))
+ // geaenderte User in Textfile schreiben
+ $users = array_unique($users);
+ if(count($users)>0)
{
- foreach($users as $uid)
+ if($fp = fopen($uidfile, 'w'))
{
- fwrite($fp, $uid."\n");
- }
- fclose($fp);
+ foreach($users as $uid)
+ {
+ fwrite($fp, $uid."\n");
+ }
+ fclose($fp);
- //Horde Syncro starten
- chdir(DOC_ROOT.'../system/hordelvplansync/');
- exec('php5 synchordelvplan.php lvplanupdate.txt >>/var/log/sync/synchordelvplan.log 2>&1');
+ //Horde Syncro starten
+ chdir(DOC_ROOT.'../system/hordelvplansync/');
+ exec('php5 synchordelvplan.php lvplanupdate.txt >>/var/log/sync/synchordelvplan.log 2>&1');
+ }
}
}
// Mail an Admin