diff --git a/cis/private/outgoing/akteupload.php b/cis/private/outgoing/akteupload.php new file mode 100755 index 000000000..63211d15b --- /dev/null +++ b/cis/private/outgoing/akteupload.php @@ -0,0 +1,171 @@ +, + * Andreas Oesterreicher , + * Rudolf Hangl , + * Karl Burkhart . + */ + +// Oberflaeche zur Aenderung von Beispielen und Upload von Bildern + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/person.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); +require_once('../../../include/akte.class.php'); +require_once('../../../include/dokument.class.php'); +require_once('../../../include/mail.class.php'); +require_once('../../../include/phrasen.class.php'); + +header("Content-Type: text/html; charset=utf-8"); + +if(isset($_GET['lang'])) + setSprache($_GET['lang']); + +$dokumenttyp = (isset($_GET['dokumenttyp']))? $_GET['dokumenttyp'] : 'LearnAgr'; +$sprache = getSprache(); +$p=new phrasen($sprache); + +$PHP_SELF = $_SERVER['PHP_SELF']; +echo " + File-Upload + "; + +//Bei Upload des Bildes +if(isset($_POST['submitbild'])) +{ + if(isset($_FILES['bild']['tmp_name']) && $_FILES['bild']['tmp_name'] != '') + { + //Extension herausfiltern + $ext = explode('.',$_FILES['bild']['name']); + $ext = mb_strtolower($ext[count($ext)-1]); + + $filename = $_FILES['bild']['tmp_name']; + + $fp = fopen($filename,'r'); + //auslesen + $content = fread($fp, filesize($filename)); + fclose($fp); + + $akte = new akte(); + + if($akte->getAkten($_GET['person_id'], 'Lichtbil')) + { + if(count($akte->result)>0) + { + $akte = $akte->result[0]; + $akte->new = false; + } + else + $akte->new = true; + } + else + { + $akte->new = true; + } + + $dokument = new dokument(); + $dokument->loadDokumenttyp($_REQUEST['dokumenttyp']); + + $extension = end(explode(".",strtolower($_FILES['bild']['name']))); + $titel = ''; + + // da nur 32 zeichen gespeichert werden dürfen, muss anhand vom typ gekürzt werden + if($_REQUEST['dokumenttyp']=='Lebenslf') + $titel = $p->t('incoming/lebenslauf').".".$extension; + if($_REQUEST['dokumenttyp']=='LearnAgr') + $titel = $p->t('incoming/learningAgreement').".".$extension; + if($_REQUEST['dokumenttyp']=='Motivat') + $titel = $p->t('incoming/motivationsschreiben').".".$extension; + if($_REQUEST['dokumenttyp']=='Zeugnis') + $titel = $p->t('incoming/zeugnis').".".$extension; + if($_REQUEST['dokumenttyp']=='Lichtbil') + $titel = $p->t('incoming/lichtbild').".".$extension; + + + $akte->dokument_kurzbz = $_REQUEST['dokumenttyp']; + $akte->person_id = $_GET['person_id']; + $akte->inhalt = base64_encode($content); + $akte->mimetype = $_FILES['bild']['type']; + $akte->erstelltam = date('Y-m-d H:i:s'); + $akte->gedruckt = false; + $akte->titel = $titel; + //$akte->bezeichnung = $dokument->bezeichnung; + $akte->updateamum = date('Y-m-d H:i:s'); + // $akte->updatevon = $user; + $akte->insertamum = date('Y-m-d H:i:s'); + // $akte->insertvon = $user; + $akte->uid = ''; + $akte->new = true; + + if(!$akte->save()) + { + echo "Fehler: $akte->errormsg"; + } + else + echo "".$p->t('global/erfolgreichgespeichert').""; + echo ""; + + } +} + +if(isset($_GET['person_id'])) +{ + $dokument = new dokument(); + $dokument->getAllDokumente(); + echo "
+ + + + + + + + + + + + + + +
".$p->t('incoming/dokument').": + +
".$p->t('incoming/dokumenttyp').": + +
 
+
"; +} +else +{ + echo "Es wurde keine Person_id angegeben"; +} + +?> + + diff --git a/cis/private/outgoing/outgoing.php b/cis/private/outgoing/outgoing.php new file mode 100755 index 000000000..df534effb --- /dev/null +++ b/cis/private/outgoing/outgoing.php @@ -0,0 +1,625 @@ + + * + */ + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/phrasen.class.php'); +require_once('../../../include/person.class.php'); +require_once('../../../include/benutzer.class.php'); +require_once('../../../include/preoutgoing.class.php'); +require_once('../../../include/firma.class.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/mobilitaetsprogramm.class.php'); +require_once('../../../include/datum.class.php'); +require_once('../../../include/mail.class.php'); +require_once('../../../include/akte.class.php'); + +$method = (isset($_GET['method'])?$_GET['method']:''); +$message = ''; +$uid=get_uid(); +$sprache = getSprache(); +$p=new phrasen($sprache); +$outgoing = new preoutgoing(); +$outgoing->loadUid($uid); + +// speichert outgoing +if(isset($_REQUEST['submitOutgoing'])) +{ + $ansprechpersonUid = (isset($_REQUEST['ansprechperson_uid']))?$_REQUEST['ansprechperson_uid']:''; + $datum=new datum(); + $zeitraum_von = $datum->formatDatum($_REQUEST['zeitraum_von'], 'Y-m-d'); + $zeitraum_bis = $datum->formatDatum($_REQUEST['zeitraum_bis'], 'Y-m-d'); + + $preoutgoing = new preoutgoing(); + $preoutgoing->loadUid($outgoing->uid); + + $preoutgoing->new = false; + $preoutgoing->ansprechperson = $ansprechpersonUid; + $preoutgoing->dauer_von = $zeitraum_von; + $preoutgoing->dauer_bis = $zeitraum_bis; + $preoutgoing->updatevon = $uid; + + if($preoutgoing->save()) + { + // Email an Auslandsabteilung schicken + sendMailInternational(); + $message=''.$p->t('global/erfolgreichgespeichert').''; + } + else + $message=''.$p->t('global/fehlerBeimSpeichernDerDaten').''; +} + +// Updated die Daten des Preoutgoing +if(isset($_REQUEST['zDaten'])) +{ + $preoutgoingZDaten = new preoutgoing(); + $preoutgoingZDaten->load($outgoing->preoutgoing_id); + // ERASMUS Daten + if(isset($_REQUEST['sprachkurs'])) + { + $datum=new datum(); + $preoutgoingZDaten->sprachkurs_von = $datum->formatDatum($_REQUEST['sprachkurs_von'], 'Y-m-d'); + $preoutgoingZDaten->sprachkurs_bis = $datum->formatDatum($_REQUEST['sprachkurs_bis'], 'Y-m-d'); + $preoutgoingZDaten->praktikum_von = $datum->formatDatum($_REQUEST['praktikum_von'], 'Y-m-d'); + $preoutgoingZDaten->praktikum_bis = $datum->formatDatum($_REQUEST['praktikum_bis'], 'Y-m-d'); + $preoutgoingZDaten->praktikum = isset($_REQUEST['praktikum'])?true:false; + + if($_REQUEST['sprachkurs'] == 'vorbereitend') + { + $preoutgoingZDaten->sprachkurs = true; + $preoutgoingZDaten->intensivsprachkurs = false; + } + else if($_REQUEST['sprachkurs']=='intensiv') + { + $preoutgoingZDaten->sprachkurs = false; + $preoutgoingZDaten->intensivsprachkurs = true; + } + else + { + $preoutgoingZDaten->sprachkurs = false; + $preoutgoingZDaten->intensivsprachkurs = false; + } + + } + $preoutgoingZDaten->bachelorarbeit = isset($_REQUEST['bachelorarbeit'])?true:false; + $preoutgoingZDaten->masterarbeit = isset($_REQUEST['masterarbeit'])?true:false; + $preoutgoingZDaten->behinderungszuschuss = isset($_REQUEST['behinderungszuschuss'])?true:false; + $preoutgoingZDaten->studienbeihilfe = isset($_REQUEST['studienbeihilfe'])?true:false; + $preoutgoingZDaten->betreuer = $_REQUEST['betreuer_uid']; + $preoutgoingZDaten->new = false; + if(!$preoutgoingZDaten->save()) + $message=''.$p->t('global/fehlerBeimSpeichernDerDaten').''; + else + $message=''.$p->t('global/erfolgreichgespeichert').''; +} + +// neuen Datensatz anlegen +if($method=='new') +{ + $preoutgoing = new preoutgoing(); + $preoutgoing->uid = $uid; + $preoutgoing->new = true; + $preoutgoing->bachelorarbeit = false; + $preoutgoing->masterarbeit = false; + $preoutgoing->sprachkurs = false; + $preoutgoing->intensivsprachkurs = false; + $preoutgoing->praktikum = false; + $preoutgoing->behinderungszuschuss = false; + $preoutgoing->studienbeihilfe = false; + $preoutgoing->insertvon = $uid; + if($preoutgoing->save()) + $message=''.$p->t('global/erfolgreichAngelegt').''; + else + die($preoutgoing->errormsg); +} + +// speichert die eingegebene Lehrveranstaltung +if($method == 'saveLv') +{ + $bezeichnung = $_GET['bezeichnung']; + $ects = $_GET['ects']; + + $preoutgoingLv = new preoutgoing(); + $preoutgoingLv->preoutgoing_id = $outgoing->preoutgoing_id; + $preoutgoingLv->bezeichnung = $bezeichnung; + $preoutgoingLv->ects = $ects; + $preoutgoingLv->new = true; + $preoutgoingLv->insertvon = $uid; + if(!$preoutgoingLv->saveLv()) + $message=''.$p->t('global/fehlerBeimSpeichernDerDaten').''; + else + $message=''.$p->t('global/erfolgreichgespeichert').''; +} + +// löscht die übergebene Lehrveranstaltung +if($method== 'deleteLv') +{ + $lv_id = $_GET['lv_id']; + $preoutgoingLv = new preoutgoing(); + + // Wenn die Lv zum preoutgoing gehört wird sie gelöscht + + if($preoutgoingLv->checkLv($lv_id, $outgoing->preoutgoing_id)) + { + if(!$preoutgoingLv->deleteLv($lv_id)) + $message =''.$p->t('incoming/fehlerBeimLoeschenDerLv').''; + else + $message =''.$p->t('global/erfolgreichgelöscht').''; + } +} + +// speichert die ausgewählte Firma +if($method=='saveFirma') +{ + $firmaOutgoing = new preoutgoing(); + + // Check ob schon 3 Firmen Eingetragen sind + if(($firmaOutgoing->getAnzahlFirma($outgoing->preoutgoing_id)) < 3) + { + if(!isset($_GET['firma_id'])) + { + // Freemover wird ausgewählt + $firma_id = ''; + $name = $_GET['name']; + $firmaOutgoing->mobilitaetsprogramm_code = 202; + } + else + { + // Programm ausgewählt + $firma_id = $_GET['firma_id']; + $name = ''; + $firmaOutgoing->mobilitaetsprogramm_code = $_GET['programm']; + } + + $firmaOutgoing->preoutgoing_id = $outgoing->preoutgoing_id; + $firmaOutgoing->firma_id = $firma_id; + $firmaOutgoing->name = $name; + $firmaOutgoing->auswahl = false; + $firmaOutgoing->new = true; + if(!$firmaOutgoing->saveFirma()) + { + die($firmaOutgoing->errormsg); + } + $message=''.$p->t('global/erfolgreichgespeichert').''; + } + else + $message = ''.$p->t('incoming/nichtMehrAlsDreiUniversitaeten').''; +} + +// Löscht die Akte mit übergebener Id +if($method == 'files') +{ + $akte = new akte(); + + if(isset($_GET['id'])) + { + if($_GET['mode']=="delete") + { + if($akte->delete($_GET['id'])) + $message =''.$p->t('global/erfolgreichgelöscht').''; + else + $message =''.$p->t('global/fehleraufgetreten').''; + } + } +} + +// löscht die ausgewählte Firma +if($method =="deleteFirma") +{ + if(isset($_GET['outgoingFirma_id'])) + { + $outgoingFirma_id = $_GET['outgoingFirma_id']; + $firmaOutgoing = new preoutgoing(); + if(!$firmaOutgoing->deleteFirma($outgoingFirma_id)) + $message = ''.$p->t('global/fehlerBeimLoeschenDesEintrags').''; + $message =''.$p->t('global/erfolgreichgelöscht').''; + } + else + $message = ''.$p->t('incoming/ungueltigeIdUebergeben').''; +} + +?> + + + + <?php echo $p->t('outgoing/outgoingRegistration'); ?> + + + + + + + + + +load($uid); +$outgoing = new preoutgoing(); +$outgoing->loadUid($uid); +$datum = new datum(); +$zeitraum_von = $datum->formatDatum($outgoing->dauer_von, 'd.m.Y'); +$zeitraum_bis = $datum->formatDatum($outgoing->dauer_bis, 'd.m.Y'); +$ansprechperson = new benutzer(); +$ansprechperson->load($outgoing->ansprechperson); + +$name = ''; +if($benutzer->titelpre !='') + $name.=$benutzer->titelpre.' '; +$name.= $benutzer->vorname.' '.$benutzer->nachname.' '.$benutzer->titelpost; +// +if(isset($_GET['ansicht']) == 'auswahl') +{ + +?> + + + + + + +

t('outgoing/outgoingRegistration'); ?>
t('profil/student').': '.$name; ?>

t('incoming/programmAuswahl');?>:

+ + + + + + + + + + +
+ + + + + + + + +
ERASMUS
+ + + + + + + +
CEEPUS
+ + + + + + + +
Sonstige
+ + + + + + + + +
Freemover
+
+
+ + + + + loadAuswahlFirmen($outgoing->preoutgoing_id); + $disabledSpeichern = ($outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe'))?'disabled':''; + + $i = 1; + + foreach($outgoingFirma->firmen as $fi) + { + $firmaAuswahl = new firma(); + $firmaAuswahl->load($fi->firma_id); + $style = ''; + $link = ''; + + if($fi->auswahl == true) + $style = 'style="color:red"'; + + $mobilitätsprogramm = new mobilitaetsprogramm(); + $mobilitätsprogramm->load($fi->mobilitaetsprogramm_code); + if($fi->name == '') + { + if(!$outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe')) + $link = "preoutgoing_firma_id."&ansicht=auswahl'>delete"; + + echo " "; + } + else + { + if(!$outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe')) + $link = "preoutgoing_firma_id."&ansicht=auswahl'>delete"; + echo " "; + } + $i++; + } + ?> + +
t('incoming/auswahlUniversitaeten'); ?>:
".$i.": ".$firmaAuswahl->name." [".$mobilitätsprogramm->kurzbz."] $link
".$i.": ".$fi->name." [Freemover] $link
+
" method ="POST"> + + + + +
t('incoming/zeitraumVon');?>:
t('incoming/zeitraumBis');?>:
t('incoming/ansprechpersonHeimatuniversitaet');?>:
+ + + + checkStatus($outgoing->preoutgoing_id, 'freigabe')) + { + echo ''; + } + ?> + +
>
+ +
+
checkStatus($outgoing->preoutgoing_id, 'freigabe')) + echo ''.$p->t('incoming/warteAufFreigabe').''; + + ?> +
+
+ dann zusätzliche Felder anzeigen + if($outgoing->checkStatus($outgoing->preoutgoing_id, 'freigabe')) + { + $outgoing_id = $outgoing->preoutgoing_id; + + $outgoingAuswahlFirma = new preoutgoing(); + $outgoingAuswahlFirma->loadAuswahl($outgoing_id); + $bscChecked = $outgoing->bachelorarbeit?'checked':''; + $mscChecked = $outgoing->masterarbeit?'checked':''; + $praktikumChecked = $outgoing->praktikum?'checked':''; + $behindChecked = $outgoing->behinderungszuschuss?'checked':''; + $beihilfeChecked = $outgoing->studienbeihilfe?'checked':''; + $sprachkursSelect = $outgoing->sprachkurs?'selected':''; + $intensivSprachkursSelect = $outgoing->intensivsprachkurs?'selected':''; + $betreuer = new benutzer(); + $betreuer->load($outgoing->betreuer); + + ?> + + + + + +

t('outgoing/outgoingRegistration'); ?>

t('incoming/zusaetzlicheDaten');?>:

'; + echo ''; + echo '
'; + // zusätzliche Felder bei Erasmus + // if($outgoingAuswahlFirma->mobilitaetsprogramm_code == '7') + // { + echo ''; + echo ''; + echo ''; + echo ''; + // } + + echo ''; + echo ''; + echo ''; + echo '
'.$p->t('incoming/sprachkurs').': '.$p->t('incoming/praktikum').':
'.$p->t('incoming/sprachkursVon').': '.$p->t('incoming/praktikumVon').':
'.$p->t('incoming/sprachkursBis').': '.$p->t('incoming/praktikumBis').'
 
'.$p->t('incoming/bachelorthesis').': '.$p->t('incoming/masterthesis').':
'.$p->t('incoming/betreuerMasterBachelor').':
'.$p->t('incoming/aufgrundEinerBehinderung').': '; + echo '
'.$p->t('incoming/währendDesAuslandsaufenthaltes').': '; + echo '
'; + echo '
'; + echo ''; + echo ''; + echo '
'; + echo ''; + echo '
'; + echo '

'.$p->t('incoming/auswahlDerLv').'

'; + echo ''; + echo ''; + echo '
'.$p->t('global/bezeichnung').': ECTS:
'; + + $preoutgoingLv = new preoutgoing(); + $preoutgoingLv->loadLvs($outgoing_id); + echo '

'.$p->t('incoming/uebersichtLv').'

'; + echo' + + + + + + + + '; + foreach($preoutgoingLv->lehrveranstaltungen as $lv) + { + echo ''; + + } + echo '
'.$p->t('global/bezeichnung').''.$p->t('incoming/ects').'
'.$lv->bezeichnung.''.$lv->ects.''.$p->t('incoming/loeschen').'
'; + echo '
'; + echo '

'.$p->t('incoming/verwaltungVonDateien').'

'; + echo ' + '; + $akte = new akte(); + $akte->getAktenOutgoing($benutzer->person_id); + + + if(count($akte->result)>0) + { + echo'
',$p->t('incoming/fileupload'),'
+ + + + + + + '; + foreach ($akte->result as $ak) + { + echo ' + + + '; + } + echo '
'.$p->t('incoming/dateiname').'
'.$ak->titel.''.$p->t('incoming/loeschen').'
'; + } + } +} + + // Lehrveranstaltungen eingragen + + + ?> + + + + + +
"; + $emailtext.= "Es hat sich ein neuer Outgoing am System registriert."; + $mail = new mail(MAIL_INTERNATIONAL, 'no-reply', 'New Outgoing', 'Bitte sehen Sie sich die Nachricht in HTML Sicht an, um den Link vollständig darzustellen.'); + $mail->setHTMLContent($emailtext); + $mail->send(); +} +?> \ No newline at end of file diff --git a/cis/private/outgoing/outgoing_autocomplete.php b/cis/private/outgoing/outgoing_autocomplete.php new file mode 100644 index 000000000..f9a12cc42 --- /dev/null +++ b/cis/private/outgoing/outgoing_autocomplete.php @@ -0,0 +1,57 @@ + + * + */ + + header( 'Expires: -1' ); + header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' ); + header( 'Cache-Control: no-store, no-cache, must-revalidate' ); + header( 'Pragma: no-cache' ); + header('Content-Type: text/html;charset=UTF-8'); + + require_once('../../../config/cis.config.inc.php'); + require_once('../../../include/functions.inc.php'); + require_once('../../../include/mitarbeiter.class.php'); + +// ------------------------------------------------------------------------------------------ +// Parameter Aufruf uebernehmen +// ------------------------------------------------------------------------------------------ + + $work=trim(isset($_REQUEST['work'])?$_REQUEST['work']:(isset($_REQUEST['ajax'])?$_REQUEST['ajax']:false)); + $work=strtolower($work); + +// ------------------------------------------------------------------------------------------ +// Datenlesen +// ------------------------------------------------------------------------------------------ + switch ($work) + { + // Suche nach anprechperson -> mitarbeiter + case 'outgoing_ansprechperson_search': + $search=trim((isset($_REQUEST['q']) ? $_REQUEST['q']:'')); + if (is_null($search) ||$search=='') + exit(); + $ma = new mitarbeiter(); + $ma->search($search); + + foreach($ma->result as $row) + echo html_entity_decode($row->vorname).' '.html_entity_decode($row->nachname).'|'.html_entity_decode($row->uid)."\n"; + break; + } + exit(); +?> diff --git a/cis/private/outgoing/registration.php b/cis/private/outgoing/registration.php new file mode 100755 index 000000000..813dae6e2 --- /dev/null +++ b/cis/private/outgoing/registration.php @@ -0,0 +1,62 @@ + + * + */ + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/preoutgoing.class.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/phrasen.class.php'); + +$uid = get_uid(); + +$sprache = getSprache(); +$p=new phrasen($sprache); + +$outgoing = new preoutgoing(); +if($outgoing->loadUid($uid)) + header("Location: outgoing.php?ansicht=auswahl"); + + +?> + + + + <?php echo $p->t('outgoing/outgoingRegistration'); ?> + + + + +

t('outgoing/outgoingRegistration'); ?>

+

+ + + + + + + +

t('incoming/willkommenBeiOutgoingAnmeldung');?>

+ +
+
+ + + +