diff --git a/cis/private/profile/zeitsperre_days.php b/cis/private/profile/zeitsperre_days.php index c2c2177f8..8d9eead97 100644 --- a/cis/private/profile/zeitsperre_days.php +++ b/cis/private/profile/zeitsperre_days.php @@ -35,6 +35,7 @@ require_once('../../../include/zeitsperre.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/phrasen.class.php'); require_once('../../../include/sprache.class.php'); +require_once('../../../include/Excel/excel.php'); $datum_obj = new datum(); $sprache = getSprache(); @@ -53,6 +54,17 @@ if(isset($_REQUEST['lektor'])) $lektor=$_REQUEST['lektor']; else $lektor=null; + +// Link fuer den Export +$export_link='zeitsperre_days.php?format=xls&'; +$export_param=''; + +if(!is_null($days)) + $export_param.=($export_param!=''?'&':'')."days=$days"; +if(!is_null($lektor)) + $export_param.=($export_param!=''?'&':'')."lektor=$lektor"; + +$export_link.=$export_param; $datum_beginn=date('Y-m-d'); $ts_beginn=$datum_obj->mktime_fromdate($datum_beginn); @@ -63,44 +75,186 @@ $datum_ende=date('Y-m-d',$ts_ende); $ma=new mitarbeiter(); $mitarbeiter=$ma->getMitarbeiterZeitsperre($datum_beginn,$datum_ende,$lektor); -echo ' - -
-| '.$p->t('zeitsperre/monat').' '.$p->t('zeitsperre/tag').' | ';
-for ($ts=$ts_beginn;$ts<=$ts_ende; $ts+=$datum_obj->ts_day)
+if(isset($_REQUEST['format']) && $_REQUEST['format']=='xls')
{
- $tag=date('d',$ts);
- $wt=date('N',$ts);
- $monat=date('M',$ts);
+ // Creating a workbook
+ $workbook = new Spreadsheet_Excel_Writer();
+
+ // sending HTTP headers
+ $workbook->send($p->t('zeitsperre/zeitsperren').".xls");
+ $workbook->setVersion(8);
+ // Creating a worksheet
+ $worksheet =& $workbook->addWorksheet($p->t('zeitsperre/zeitsperren'));
+ $worksheet->setInputEncoding('utf-8');
+ $worksheet->setZoom (85);
+ $worksheet->freezePanes(array(1, 0, 1, 0));
+ //Formate Definieren
+ $format_header =& $workbook->addFormat();
+ $format_header->setBold();
+ $format_header->setAlign("center");
+ $format_header->setVAlign('vcenter');
+ $format_header->setTextWrap();
- if ($wt==6 || $wt==7)
- $class='feiertag';
- else
- $class='';
-
- echo "".$tagbez[$sprache_index][$wt]." $monat $tag | ";
-}
+ $format_header_feiertag =& $workbook->addFormat();
+ $format_header_feiertag->setBold();
+ $format_header_feiertag->setAlign("center");
+ $format_header_feiertag->setVAlign('vcenter');
+ $format_header_feiertag->setFgColor('yellow');
+ $format_header_feiertag->setTextWrap();
+
+ $format_namen =& $workbook->addFormat();
+ $format_namen->setVAlign('top');
+
+ $format_legende =& $workbook->addFormat();
+ $format_legende->setBold();
+ $format_legende->setAlign("left");
+ $format_legende->setVAlign('vcenter');
+
+ $format_mehrzeilig = &$workbook->addFormat(array('Align' => 'left'));
+ $format_mehrzeilig->setVAlign('top');
+ $format_mehrzeilig->setTextWrap();
-echo '
|---|
| '.$p->t('zeitsperre/monat').' '.$p->t('zeitsperre/tag').' | ';
+ for ($ts=$ts_beginn;$ts<=$ts_ende; $ts+=$datum_obj->ts_day)
+ {
+ $tag=date('d',$ts);
+ $wt=date('N',$ts);
+ $monat=date('M',$ts);
+
+ if ($wt==6 || $wt==7)
+ $class='feiertag';
+ else
+ $class='';
+
+ echo "".$tagbez[$sprache_index][$wt]." $monat $tag | ";
+ }
+
+ echo '|
|---|---|---|
| $ma->nachname $ma->vorname | "; + for ($ts=$ts_beginn;$ts<=$ts_ende; $ts+=$datum_obj->ts_day) + { + $tag=date('d',$ts); + $monat=date('M',$ts); + $wt=date('N',$ts); + if ($wt==6 || $wt==7) + $class='feiertag'; + else + $class=''; + $grund=$zs->getTyp($ts); + $erbk=$zs->getErreichbarkeit($ts); + $vertretung=$zs->getVertretung($ts); + echo ''.($grund!=''?''.substr($p->t('zeitsperre/grund'),0,1).': ':'').$grund;
+ echo ' '.($erbk!=''?''.substr($p->t('urlaubstool/erreichbarkeit'),0,1).': ':'').$erbk; + echo ' '.($erbk!=''?''.substr($p->t('urlaubstool/vertretung'),0,1).': ':''); + foreach ($vertretung as $vt) + { + if ($vt!='') + { + $ma_kurzbz = new mitarbeiter(); + $ma_kurzbz->load($vt); + echo ''.$ma_kurzbz->kurzbz.' '; + } + } + } + echo ' | |
| $ma->nachname $ma->vorname | "; for ($ts=$ts_beginn;$ts<=$ts_ende; $ts+=$datum_obj->ts_day) @@ -112,45 +266,13 @@ if (!empty ($mitarbeiter)) $class='feiertag'; else $class=''; - $grund=$zs->getTyp($ts); - $erbk=$zs->getErreichbarkeit($ts); - $vertretung=$zs->getVertretung($ts); - echo ''.($grund!=''?''.substr($p->t('zeitsperre/grund'),0,1).': ':'').$grund;
- echo ' '.($erbk!=''?''.substr($p->t('urlaubstool/erreichbarkeit'),0,1).': ':'').$erbk; - echo ' '.($erbk!=''?''.substr($p->t('urlaubstool/vertretung'),0,1).': ':''); - foreach ($vertretung as $vt) - { - if ($vt!='') - { - $ma_kurzbz = new mitarbeiter(); - $ma_kurzbz->load($vt); - echo ''.$ma_kurzbz->kurzbz.' '; - } - } + echo " | "; } echo ' |