public function main2($parent, $pageId)
 {
     $importSession = tx_he_personen_util::sessionFetch('import_daten');
     $importIndex = tx_he_personen_util::sessionFetch('import_index');
     $importDb = tx_he_personen_util::sessionFetch('import_db');
     if ($importIndex < $importSession[anzDaten]) {
         $erg .= tx_he_personen_util::executeBatchSkriptNeu($importSession, $importIndex, $this, $importDb);
     } else {
         $ergebnisDaten = tx_he_personen_util::sessionFetch('ergebnis_daten');
         if (count($ergebnisDaten) > 0) {
             $erg .= tx_he_personen_util::printErgebnisDaten();
             $erg .= '<div style="width:80%;background: #004666;"></div>';
             tx_he_personen_util::sessionClear('ergebnis_daten');
         }
         tx_he_personen_util::sessionClear('import_daten');
         $this->post = t3lib_div::_POST();
         $erg .= '<div class="portalFunktionen">';
         $erg .= '<h1>Portal Funktionen</h1>';
         $erg .= '<form name="alias" method="post" action="">';
         $gadgetsAktivieren = $this->post['gadgetsAktivieren'];
         $gadgetAuswahl = $this->post['gadgetAuswahl'];
         if (!empty($gadgetsAktivieren) || !empty($gadgetAuswahl)) {
             $erg .= $this->gadgetsAktivieren($gadgetAuswahl);
         }
         $erg .= '<input type="submit" name="gadgetsAktivieren" value="Gadgets für alle aktivieren"/>';
         $erg .= '</form>';
         $erg .= '</div>';
     }
     return $erg;
 }
    public function personenSucheDaten($eingabe, $bereich = '', $rolle = '')
    {
        $out = '';
        $where = '(deleted=0 AND disable=0 AND 
							NOT (FIND_IN_SET(71,usergroup)>0) AND pid=22881)';
        if (!empty($eingabe)) {
            /*
            			$where .= ' AND
            							(last_name LIKE "' . trim($eingabe) . '%" OR
            							 username LIKE "%' . trim($eingabe) . '%")
            							';
            */
            $where .= ' AND
							(last_name LIKE "%' . trim($eingabe) . '%")
							';
        }
        if (!empty($bereich) && $bereich != 0) {
            $bereichsGruppen = array();
            $findListe = array();
            tx_he_personen_util::gibBenutzergruppenRekusiv($bereich, $bereichsGruppen, 1);
            foreach ($bereichsGruppen as $group) {
                $findListe[] = 'FIND_IN_SET(' . $group . ',usergroup)>0';
            }
            $where .= ' AND (' . implode(' OR ', $findListe) . ')';
        }
        $zweiEbenen = array(133, 169);
        if (!empty($rolle) && $rolle != 0) {
            $funktionsGruppen = array();
            $findListe = array();
            if (in_array($rolle, $zweiEbenen)) {
                $ebenen = 2;
            } else {
                $ebenen = 1;
            }
            tx_he_personen_util::gibBenutzergruppenRekusiv($rolle, $funktionsGruppen, $ebenen);
            foreach ($funktionsGruppen as $group) {
                $findListe[] = 'FIND_IN_SET(' . $group . ',usergroup)>0';
            }
            $where .= ' AND (' . implode(' OR ', $findListe) . ')';
        }
        // return $where;
        $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('DISTINCT first_name,last_name,email,tx_hepersonen_raumnummer,tx_hepersonen_profilseite,telephone', 'fe_users', $where, '', 'last_name,first_name', '0,100');
        $bg = 'hg_hellblau';
        $tabContent = '';
        while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result)) {
            if (empty($eingabe) || strpos(mb_strtolower($row['last_name'], 'UTF-8'), mb_strtolower(trim($eingabe), 'UTF-8')) !== FALSE) {
                $tel = $this->gibTelefonNummern($row['telephone']);
                if (empty($tel)) {
                    $tel = '-';
                }
                $raum = $this->gibRaumNummern($row['tx_hepersonen_raumnummer']);
                if (empty($raum)) {
                    $raum = '-';
                }
                if ($bg == '') {
                    $bg == 'hg_hellblau';
                } else {
                    $bg == '';
                }
                $tabContent .= '<tr class="' . $bg . '">
								 	<td class="name">
								 		<a target="_blank" href="http://www.hs-esslingen.de/index.php?id=' . $row['tx_hepersonen_profilseite'] . '">' . $row['last_name'] . ', ' . $row['first_name'] . '
										</a>
										</td>
								 	<td class="tel">' . $tel . '</td>
								 	<td class="raum">' . $raum . '</td>
								 	<td class="mail">
								 		<a title="E-Mail an ' . $row['first_name'] . ' ' . $row['last_name'] . ' senden" href="mailto:' . $row['email'] . '">' . '<img src="/fileadmin/images/css/mail.gif" />' . '</a>
										</td>
								 	</tr>';
            }
        }
        if (empty($tabContent)) {
            $out = '<h3>Es wurde keine Person für Ihre Sucheingabe gefunden !</h3>';
        } else {
            $out = '<table class="tab100"><tr class="ueberschrift">
							 <th>Name</th>
							 <th>Telefon</th>
							 <th>Raum</th>
							 <th>E-Mail</th>
							 </tr>' . $tabContent . '</table>';
        }
        return $out;
    }
Example #3
0
 function setzeFeUserLinks()
 {
     require_once PATH_tslib . 'class.tslib_fe.php';
     require_once PATH_t3lib . 'class.t3lib_cs.php';
     require_once PATH_tslib . 'class.tslib_content.php';
     require_once PATH_t3lib . 'class.t3lib_tstemplate.php';
     require_once PATH_t3lib . 'class.t3lib_page.php';
     $TSFEclassName = t3lib_div::makeInstanceClassName('tslib_fe');
     if (!is_object($GLOBALS['TT'])) {
         $GLOBALS['TT'] = new t3lib_timeTrack();
         $GLOBALS['TT']->start();
     }
     $GLOBALS['TSFE'] = new $TSFEclassName($GLOBALS['TYPO3_CONF_VARS'], $this->pid, '0', 1, '', '', '', '');
     $GLOBALS['TSFE']->connectToMySQL();
     $GLOBALS['TSFE']->initFEuser();
     $GLOBALS['TSFE']->fetch_the_id();
     $GLOBALS['TSFE']->getPageAndRootline();
     $GLOBALS['TSFE']->initTemplate();
     $GLOBALS['TSFE']->tmpl->getFileName_backPath = PATH_site;
     $GLOBALS['TSFE']->forceTemplateParsing = 1;
     $GLOBALS['TSFE']->getConfigArray();
     $cObj = t3lib_div::makeInstance('tslib_cObj');
     $cObj->start(array(), '');
     $urlParameters = array('L' => 0);
     $profilfelder = 'tx_hepersonen_akad_grad,username,first_name,last_name,tx_hepersonen_profilseite,tx_hepersonen_profildaten';
     $profiltabelle = 'fe_users';
     $benutzerGruppen = array('PROFESSOR', 'LB', 'MITARBEITER', 'PROJEKT-MA', 'HAUSMEISTER', 'SEKRETARIAT', 'LEITUNG', 'AUSZUBILDENDE');
     $bedingungBenutzerGruppen = ' AND (' . tx_he_personen_util::gibBedingungBenutzergruppen($benutzerGruppen) . ') ';
     $profilbedingung = 'deleted=0 AND disable=0' . $bedingungBenutzerGruppen;
     $profilabfrage = $GLOBALS['TYPO3_DB']->exec_SELECTquery($profilfelder, $profiltabelle, $profilbedingung);
     while ($daten = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($profilabfrage)) {
         $linkUrl = $cObj->getTypoLink_URL($daten['tx_hepersonen_profilseite'], $urlParameters);
         $linkUrl = str_replace('.de/typo3/de', '.de/de', $linkUrl);
         $profil_array = unserialize($daten['tx_hepersonen_profildaten']);
         if (!is_array($profil_array)) {
             $profil_array = array();
             $akadGrad = '';
         } else {
             $akadGrad = $profil_array[prof_titel_liste];
             if (empty($akadGrad)) {
                 $akadGrad = $profil_array[akad_grad] . ' ';
             } else {
                 $akadGrad .= ' ';
             }
         }
         $person = $akadGrad . $daten['first_name'] . ' ' . $daten['last_name'];
         $this->feUserLinks[$daten['username']] = '<a href="' . $linkUrl . '">' . $person . '</a>';
     }
 }
 function create_breadcrumb()
 {
     $get = t3lib_div::_GET();
     $pageId = $get['id'];
     if (empty($pageId)) {
         $pageId = $GLOBALS['TSFE']->id;
     }
     if (tx_he_personen_util::istPersonenSeite()) {
         return tx_he_personen_util::erzeugePersonenRootline($this, $pageId);
     } else {
         return tx_he_tools_util::erzeugeRootline($this, $pageId);
     }
 }
    public static function htaccessErzeugen()
    {
        $fehler = FALSE;
        $out = '';
        $titel = 'Bitte geben Sie die zugangsdaten ein';
        $users = '';
        $passwords = '';
        if (isset($GLOBALS['TSFE']->fe_user->user["username"])) {
            $username = $GLOBALS['TSFE']->fe_user->user["username"];
            $bereich = strtolower(tx_he_personen_util::gibProfilWert($username, 'hb_sva'));
        } else {
            $username = '';
            $bereich = '';
        }
        if (isset($_POST['bereich'])) {
            $bereich = $_POST['bereich'];
        }
        if (isset($_POST['htaccess-anfordern'])) {
            $out .= 'AuthName "' . $_POST['AuthName'] . '"' . "\n";
            $out .= 'AuthUserFile ' . $_POST['AuthUserFile'] . "\n";
            $out .= 'AuthType ' . $_POST['AuthType'] . "\n";
            $out .= 'require ' . $_POST['require'];
            $dateiname = '.htaccess';
            header("Content-type: application/text");
            header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
            header('Content-Disposition: attachment; filename="' . $dateiname . '"');
            header('Pragma: no-cache');
            print $out;
            exit;
        } else {
            if (isset($_POST['htpasswd-anfordern'])) {
                $out = $_POST['postDaten'];
                $dateiname = '.htpasswd';
                header("Content-type: application/text");
                header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT');
                header('Content-Disposition: attachment; filename="' . $dateiname . '"');
                header('Pragma: no-cache');
                print $out;
                exit;
            } else {
                if ($_POST['dateien-erzeugen']) {
                    if (!empty($_POST['username']) && !empty($_POST['users']) && !empty($_POST['passwords']) && !empty($_POST['titel']) && !empty($_POST['bereich'])) {
                        $users = $_POST['users'];
                        $passwords = $_POST['passwords'];
                        $username = $_POST['username'];
                        $titel = $_POST['titel'];
                        $u = explode("\n", $users);
                        $pw = explode("\n", $passwords);
                        $AuthName = $titel;
                        $AuthUserFile = '/home/rsns01/staff/' . $bereich . '/' . $username . '/unix/.htpasswd';
                        $AuthType = 'Basic';
                        $require = 'valid-user';
                        $downloadHtaccess = '<form name="getHtaccess" method="post" action="">
				  <input type="hidden" name="AuthName" value="' . $AuthName . '" />
				  <input type="hidden" name="AuthUserFile" value="' . $AuthUserFile . '" />
				  <input type="hidden" name="AuthType" value="' . $AuthType . '" />
				  <input type="hidden" name="require" value="' . $require . '" />
			    <input type="submit" name="htaccess-anfordern" value=".htaccess-Datei anfordern">
			    </form>
			      ';
                        $out .= 'Die folgenden Zeilen bitte in die Datei .htaccess kopieren 
			        oder auf den folgenden Button klicken, um die erzeugte Datei herunterzuladen.' . $downloadHtaccess . '<br>';
                        $out .= 'AuthName ' . $AuthName . '<br>';
                        $out .= 'AuthUserFile ' . $AuthUserFile . '<br>';
                        $out .= 'AuthType ' . $AuthType . '<br>';
                        $out .= 'require ' . $require . '<br>';
                        $out .= '<br><hr><br>';
                        $postDaten = '';
                        $ausgabe = '';
                        for ($i = 0; $i < count($u); $i++) {
                            if (isset($u[$i]) && isset($pw[$i])) {
                                $password = crypt(trim($pw[$i]), base64_encode(CRYPT_STD_DES));
                                $zeile = trim($u[$i]) . ':' . $password;
                                $postDaten .= $zeile . "\n";
                                $ausgabe .= $zeile . '<br>';
                            }
                        }
                        $downloadHtpasswd = '<form name="getHtpasswd" method="post" action="">
				  <input type="hidden" name="postDaten" value="' . $postDaten . '" />
			    <input type="submit" name="htpasswd-anfordern" value=".htpasswd-Datei anfordern">
			    </form>
			      ';
                        $out .= 'Diese Daten bitte in die Datei .httpasswd kopieren
			        	oder auf den folgenden Button klicken, um die erzeugte Datei herunterzuladen.<br>
			        	Bitte speichern Sie diese Datei bitte direkt in Ihrem Home-Verzeichnis (Laufwerk S).' . $downloadHtpasswd . '<br>' . $ausgabe . '<br><hr><br>';
                    } else {
                        $out .= '<h3 class="rot">Bitte füllen Sie alle Felder aus!</h3>';
                        $fehler = TRUE;
                    }
                }
            }
        }
        $out .= '
		<form name="form1" method="post" action="">';
        if ($fehler && empty($titel)) {
            $out .= '<label class="rot" for=titel">Titel des Loginfensters:</label>';
        } else {
            $out .= '<label for=titel">Titel des Loginfensters:</label>';
        }
        $out .= '<br/><input id="titel" name="titel" size="40"  value="' . $titel . '"/>
						<br/>';
        if ($fehler && empty($username)) {
            $out .= '<label class="rot" for=username">Ihr Benutzername an der Hochschule Esslingen:</label>';
        } else {
            $out .= '<label for=username">Ihr Benutzername an der Hochschule Esslingen:</label>';
        }
        $out .= '<br/><input id="username" name="username" size="20"  value="' . $username . '"/>
						 <br/>';
        if ($fehler && empty($bereich)) {
            $out .= '<label class="rot" for=bereich">Fakultätskürzel:</label>';
        } else {
            $out .= '<label for=bereich">Fakultätskürzel:</label>';
        }
        $out .= '<br/><input id="bereich" name="bereich" size="8" value="' . $bereich . '" />
						 <br/><br/>
						 <span class="rot">Achtung! Bitte Benutzernamen und Passwörter wählen, die NICHT an der Hochschule verwendet werden
						  und notfalls geknackt werden können (z.B. welche, die auch sonst im Internet für weniger wichtige Dinge verwendet werden).</span>
						 <br/>';
        if ($fehler && empty($users)) {
            $out .= '<label class="rot" for=users">Bitte geben Sie einen Benutzernamen pro Zeile an:</label>';
        } else {
            $out .= '<label for=users">Bitte geben Sie einen Benutzernamen pro Zeile an:</label>';
        }
        $out .= '<br/><textarea id="users" name="users" rows="8" cols="60">' . $users . '</textarea>
						 <br/>';
        if ($fehler && empty($passwords)) {
            $out .= '<label class="rot" for=passwords">Bitte geben Sie für jeden Benutzernamen ein Passwort pro Zeile an:</label>';
        } else {
            $out .= '<label for=passwords">
			Bitte geben Sie für jeden Benutzernamen ein Passwort pro Zeile an<br/>
			</label>';
        }
        $out .= '<br/><textarea id="passwords" name="passwords" rows="8" cols="60">' . $passwords . '</textarea>
							<br/>
							<input type="submit" name="dateien-erzeugen" value=".htpasswd und .htaccess erzeugen">
							</form>
							';
        return $out;
    }